More Related Content
PDF
第1回ROS勉強会発表資料 ROS+Gazeboではじめるロボットシミュレーション PDF
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜 PPTX
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜 PPTX
グラフ構造のデータモデルをPower BIで可視化してみた PDF
FPGAをロボット(ROS)で「やわらかく」使うには PDF
PDF
PPTX
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021) What's hot
PDF
PDF
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ PDF
形式手法と AWS のおいしい関係。- モデル検査器 Alloy によるインフラ設計技法 #jawsfesta PDF
Ansible 2.8 アップデート情報 -機能追加と注意点- PDF
新入社員のための大規模ゲーム開発入門 サーバサイド編 PPTX
PDF
Word Tour: One-dimensional Word Embeddings via the Traveling Salesman Problem... PDF
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ PDF
データで散らかった製造業界における最高の翻訳機 Node-RED PDF
PDF
PDF
PDF
ChatGPT 人間のフィードバックから強化学習した対話AI PPTX
物体検出の歴史(R-CNNからSSD・YOLOまで) PDF
長期運用タイトルの GCP 移行実例とグレンジのこれから | Google Cloud INSIDE Games & Apps PPTX
S3 整合性モデルと Hadoop/Spark の話 PPTX
TechCon2021 TAXI車載システムの IoT化で 解決した課題と新たに提供した価値 PDF
Azure上の データベース 機能の選び方。KVSからDWHまで PDF
明日から使えるPostgre sql運用管理テクニック(監視編) PPTX
[DL輪読会]Clebsch–Gordan Nets: a Fully Fourier Space Spherical Convolutional Neu... Similar to mros2 on Mbed
PDF
「使える!mbed」ワークショップ at ファブラボ北加賀屋 説明資料 PDF
20160924 mbed elementary Workshop PPTX
PPTX
PPTX
Modern Operating System 1_1 PDF
PPTX
ET2016 Smart Japan Alliance Llilum 161118 PPTX
PPTX
KEY
mros2 on Mbed
- 1.
- 2.
Mbedとは
• Arm社が提供するマイコン向け開発プラットフォーム
• SingleBoard Computer(SBC)御三家の一つ
• 核となるのはCortex M※1を搭載したMbed Enabled なボードで、※1 M以外稀にAもある
ソフトウェアスタックとツールチェイン、
クラウド環境などのインフラ全体を指す。
Mbed
Interface chip
Mbed Enabled ボード
USB接続
Cortex M
mbed Device connector
Peripherals
Peripherals
mbed Compiler
Peripherals
Mbedの開発環境 SBC御三家(個人の感想)
人気
出来ること
展示準備風景
- 3.
Mbed Enabled Boards
•ARMの互換性認証をパスしたサードパーティが
提供している
• Armマイコンのチップベンダが各社強みを活かせる形のSBCを提供
• 最新のMbed OS6に対応しているものだけ
でも102枚あった。(2021/06/24時点)
• スイッチサイエンスさんからも出ています。
• Ethernetが初めから載っているボードも
多い。
→母屋乗取り系のEthernet Shieldは
必要なし
Mbed Eanbled Boardsの一覧
https://os.mbed.com/platforms/
明日おもしろいもの発表
するから見に来いよ!
お、、、おうっ。
思わぬところでLTのネタを拾う。
- 4.
- 5.
- 6.
- 7.
仕事で使うには良いところ/悪かったところ
[良いところ]
• ボードの種類が豊富で入手性が良い。
→ 展示会でタダでもらえることがよくあった。
•各ボードベンダからデバイスドライバが提供されている。
→ いちいちUARTドライバとかを書かなくてもよい。
• C++によるインタフェースがボードの差異を隠蔽している。
→ 一度作ったプログラムが他のボードでも殆ど変更なしに動く。
[悪かったところ]
• コンパイラがオンラインでしか使えない。
→ Cmake等を多用するようなプロジェクトをインポートするのは骨が折れる。
• デバッグ環境がなかった。
→ デバッグは基本printfと気合と根性
さっと開発用の治具とかは作れちゃうけど、、、
デバッガ無しでターゲットボードとして開発ができるか?
コードをクラウドに置けない事情がある場合もある。
CIに使えないじゃん。
感染対策は大事
- 8.
Mbed CLI/CLI2 とPyOCD
[Mbed CLI/CLI2]
• オフライン環境にインストールできるToolchain
• CLI(1)は比較的前からあったが独自色が強く、問題があったとき調査が難しかった。
• 去年CLI2がリリース、CMakeベースに移行して見通しが良くなった。
[PyOCD]
• CMSIS-DAP経由でJTAGデバッグができるOpen On-Chip DebuggerのPython版
• これ単体でGDB Serverとして動作する。
• CMSIS-DAPはMbedチップのファームに搭載されているの
で、これを使えばJTAG相当のデバッグができる。
CMSIS-DAPインターフェース
https://os.mbed.com/users/MACRUM/notebook/cmsis-dap-interface-firmware/
展示説明はマスクで対応
- 9.
仕事でも使えそうな開発環境
• 開発環境はなるべくDocker Containerの中に収め
たい。
•エディタやラインレベルのデバッガとしては
VS Codeを使う。
• USBをDockerに見せようとすると碌なことが
無いのでPyOCDはホストで動作
• VS Codeから普通に開発・デバッグができる
環境が用意できた。
→ で、これを使って何するか?
Mbed
Interface chip
Mbed Enabled ボード
USB
Cortex M
Peripherals
Peripherals
Peripherals
Linux PC
PyOCD
/dev/ttyACM0
Docker Container
VS
Code
Mbed
CLI2
TCP/IP
Port 3333
Sharing
Workspace
仕事で使える?Mbed CLI開発環境
簡単な動作確認結果
登壇者もマスク着用
- 10.
- 11.
そうだmros2がある!
• ROSCon JP2021(9月16日)で発表された
”agent無用のROS 2軽実行環境”
• 通信ミドルウェアにembeddedRTPS
+ lwIPを使っている。
• 現状TOPPERS上で動作しているが
他のプラフォームへの移植も検討
しているらしい。
• lwIPはMbedではバックエンドで
動作しているので簡単に移植
できるのでは?
ROSCON JP 2021でのmROS2の発表資料
https://www.slideshare.net/takasehideki/ros-2-client-library-for-e2-250206371
ドリンク・スナックもあります。
- 12.
- 13.
次はどうする?
• Mbedにはセンサやモータを使ったロボットの作例がたくさんある。
→ Mbedで動いているデバイスでロボットをROSで制御したい。
• mros2の応答性が必要なのがいい。
→ 倒立振子(PID制御)にチャレンジ
• Mbed単体で制御できることを確認
→ mros2化&PIDをPCに移動
• 本質的にはAgentlessなのでPCは
Mbedで置き換え可能なはず。
参考にしたページ
倒立振子をサクッと作る | Natural Days (hirotakaster.com)
mros2の特性を生かした?デモ案
IMU
Motor
PID
PC
Mbedなロボット
こっちはMbed単体
でも無理でしたOrz
- 14.
mros2 on Mbedが立ちました!
【結果】
•フラフラしているもののなんとか立ちました。
→ PIDスキルの問題
• 油断していると不意にコケます。
→ PCにRT patchを当ててないから?
• Pub/SubがString型なのは内緒
【まとめ】
• Mbedで普通に開発できるように
なってきました。
• mros2を使えばMbedアプリは
AgentlessにROS2化可能です。
• Mbedなデバイスを使った
ROS2ノードが増えるといいですね。 なんとか立ったmros2 on Mbed
こっちはMbed単体
でも無理でした。
ベタなお土産