Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
M5Stack x ROS2
Search
anoken
March 13, 2019
Technology
2.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
M5Stack x ROS2
anoken
March 13, 2019
More Decks by anoken
See All by anoken
ModuleLLM、最前線!
anoken
1
410
Pulsar2 を雰囲気で使ってみよう
anoken
0
790
Maix/M5StickVで見守る技術
anoken
0
650
M5StickVで見守る技術
anoken
0
1.2k
家庭の平和とM5Cameraと技術書典6
anoken
1
670
M5Stack+rosserial (ROS Japan UG #24 )
anoken
1
2k
Other Decks in Technology
See All in Technology
空間オーディオで過去の 自分(ゴースト)と競うランニング 〜HealthKitのルートを足音に変える実装〜
nao_randd
0
230
SREへの勘違いに気づいた後の話
tomodakengo
0
110
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
2.1k
ADKで始める業務改善 - AIエージェント開発時の考えと設計
harappa80
2
220
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
0
160
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
750
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
430
CLIライブラリ開発を支える技術
htnabe
0
130
AI に書かせたその API、 “信頼” できますか?
nagix
0
130
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
420
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
4
670
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
240
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
520
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
430
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
300
The untapped power of vector embeddings
frankvandijk
2
1.9k
Practical Orchestrator
shlominoach
192
12k
Exploring anti-patterns in Rails
aemeredith
4
510
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
540
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
440
Optimizing for Happiness
mojombo
378
71k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Transcript
M5Stack x ROS2
M5Stack x ROS2 の前に
None
5 5 5cm 5cm M5Stackは、 EspressifのESP32に、 ディスプレイ、スピーカー、をつけて、 電源を樹脂のケースに入れたもの。
Q: M5Stack 小さいディスプレイとスピーカ があります。 何に使いますか? 何に使いますか?
None
None
プリン・ア・ラートの歴史 2017年10月ごろ 2018年4月ごろ
None
None
None
None
None
ROS2 library for Arduino ROS2 library for Arduino ROBOTISのKyung-Wan Ki
(@OpusK )氏 が開発中のライブラリ https://github.com/ROBOTIS-GIT/ros2arduino/
Micro-XRCE-DDSを介して、 M5Stack(ESP32)とROS2が繋がる
$ git clone https://github.com/eProsima/Micro-XRCE-DDS-Agent.git $ cd Micro-XRCE-DDS-Agent $ mkdir build
&& cd build $ cmake -DTHIRDPARTY=ON -DCONFIG_UDP_TRANSPORT_MTU=4096 - $ mkdir -p ~/ros2_ws/src $ cd ~/ros2_ws $ wget https://raw.githubusercontent.com/ros2/ros2/release-latest/ros2.repos $ vcs import src < ros2.repos $ sudo rosdep init $ rosdep update $ rosdep install --from-paths src --ignore-src --rosdistro crystal -y --skip-keys "console_b $ cd ~/ros2_ws/ $ colcon build --symlink-install --packages-ignore qt_gui_cpp rqt_gui_cpp $ cmake -DTHIRDPARTY=ON -DCONFIG_UDP_TRANSPORT_MTU=4096 - DCONFIG_SERIAL_TRANSPORT_MTU=4096 .. $ sudo make install $ sudo ldconfig /usr/local/lib/
None
$ MicroXRCEAgent udp 2018 Agentの起動 ArduinoIDEでの書き込み void publishString_x(std_msgs::Int16* msg, void*
arg) { (void)(arg); msg->data = IMU.ax *1000; } class StringPub : public ros2::Node { public: StringPub(): Node() { ros2::Publisher<std_msgs::Int16>* publisher_x = ros2::Publisher<std_msgs::Int16>* publisher_x = this->createPublisher<std_msgs::Int16>("acc"); this->createWallFreq(PUBLISH_FREQUENCY, (ros2::CallbackFunc)publishString_x, NULL, publisher_x); }}; void setup() { ros2::init(&udp, AGENT_IP, AGENT_PORT); } void loop() { ros2::spin(&StringNode); }
M5Stack->wifi->ros2へpublish->rqt2 rqt_plot https://youtu.be/rx6fg5okXl4
動画の見た目一緒だけど、裏では ・通信がとても速い・動作軽量化 (vs ROS1 rosserial) ・ ESP(Arduino)複数つなげられる(vs ROS1 rosserial=1台) ・
roscore不要(但し、ros2はDDSのAgentServer起動にUbuntuは必要)
None
None
twitter :@anoken2017