Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GR-ROSE でroombaをコントロールする
Search
lutecia16v
November 10, 2018
Technology
420
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GR-ROSE でroombaをコントロールする
GR-ROSE プロデューサーミーティング (作品発表会)での発表資料です。
http://gadget.renesas.com/ja/event/2018/pm_rose2.html
lutecia16v
November 10, 2018
More Decks by lutecia16v
See All by lutecia16v
EDF-IDF Programming Guidを読む - JTAG Debugging 編 -
lutecia16v
1
400
GR-ROSEとROSを使ってコマンドサーボの現在位置をWebブラウザで表示してみる
lutecia16v
0
1.7k
GR-ROSEでROS/ROS2
lutecia16v
1
1.9k
Jetson NanoとGR-ROSEで始めるROS2
lutecia16v
0
2.3k
がじぇねるねでもROSしたい!
lutecia16v
1
160
Other Decks in Technology
See All in Technology
DatabricksにおけるMCPソリューション
taka_aki
1
270
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
1
200
CDKで書くECSのベストプラクティス、 改めて考え直す2026 #cdkconf2026
makies
3
760
ソニー銀行におけるビジネスアジリティ向上のためのクラウドシフト戦略
srenext
0
720
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
14
2.1k
“それは自分の仕事じゃない"を越えて行け
yuukiyo
1
470
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
4
4k
「守りたい体験」を渡すだけで E2E を生成させられるようになった話
hinac0
0
170
AI、CDK と協働する Full TypeScript アプリケーション開発 / Full TypeScript Application with AI and CDK
geekplus_tech
2
360
Network Firewallやっていき!
news_it_enj
0
170
Claude Code公式skillで 自分の仕事を少しずつ手放そう!(Claude Code開発ノウハウ大公開スペシャル by クラスメソッド)
kaym
1
480
AICoEでAIネイティブ組織への進化
yukiogawa
0
190
Featured
See All Featured
Unsuck your backbone
ammeep
672
58k
Building Applications with DynamoDB
mza
96
7.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
From π to Pie charts
rasagy
0
240
Un-Boring Meetings
codingconduct
0
350
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
250
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Mind Mapping
helmedeiros
PRO
1
280
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Utilizing Notion as your number one productivity tool
mfonobong
4
420
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
180
Transcript
GR-ROSE でroombaを コントロールする - 2018 X’mas version - 2018.11.10 GR-ROSE作品発表会
るぅて(@lutecia16v)
Why GR-ROSE GR-ROSE arduino ESP32 Raspberry pi Motor control ◎
〇 〇 △ Network ◎ Ethernet / WiFi ✖ 〇 WiFi ◎ Ethernet / WiFi multitask 〇 ✖ 〇 ◎ ROS 〇 (DDS-XRCE) ✖ △ (ROS Serial) ◎ Low Power 〇 ◎ 〇 ✖
Why ROS - 期待するもの 強力なフレームワークとツール群が利用可能に! For Navigation For Robot For
simulation Navigation Stack Others rqt rosconsole roslaunch Robot Web Tools
予定と結果(理想と現実) 【最初】KONDO ICSサーボ × 6の 垂直多関節をROS(MoveIt!)で制御したい! 【結果】Roombaを制御 ROS環境の構築 未完了
予定と結果(理想と現実) 【最初】KONDO ICSサーボ × 6の 垂直多関節をROS(MoveIt!)で制御したい! Arduinoで作ってみた際の課題 ・1軸/2軸のトルク(電流値?)不足 ⇒RS485の高トルクサーボ導入 ・Joint制御
⇒IK, Joint Trajectory Action対応 = ROS対応 ・サーボモータ制御 ⇒各パラメータの調査と調整 ・各軸への同時制御メッセージ送信 ⇒制御線をわける or フタバサーボへ変更
ROSの活用 J1 J2 J3 J4 J5 J6 P(x, y, z,
Δz, Δy, Δz)※ P’(x’, y’, z’, Δz’, Δy’, Δz’) P(J1, J2, J3, J4, J5, J6) ①先端の位置情報をジョイント座標に変換 ⇒IK(Inverse kinematics) ②移動先への経路(PATH)を生成 ⇒Planning path ③経路情報を通知 ⇒Joint Trajectory Action ④経路情報を元にモータを制御 ⇒GR-ROSEのお仕事 ※注)ROSは標準でクオータニオンを使用 ROS (MoveIt!) ROS (MoveIt!) ROS (MoveIt!) ⇒ P’(J1’, J2’, J3’, J4’, J5’, J6’) 実際の制御にはこれに速度 /加速度情報が必要
ROSの活用(自動運転の場合) 移動計画 ナビゲーション 自己位置推定 地図管理 ハード制御 地図生成 ↑ GR-ROSEのお仕事 ROSを活用
さて本題
Roombaとサーボモータを、 GR-ROSEを使ってPCから制御します ESP8266 TCPServer
RoombaとGR-ROSEとの接続 ミニDIN 8pin : RXD, TXD, GND x 2, Vpwr,
BRC(未使用)を引き出し ⇒ Serial1と電源に接続
Roombaの制御 “iRobot Roomba 600 Open Interface Spec”を使用してシリアル通信で制御 https://www.irobotweb.com/~/media/MainSite/PDFs/About/STEM/Create/iRobot_Roomba_600_Open_Interface_Spec.pdf 機能 opcode
説明 Start 128 Roombaの制御開始 Safe 131 Roombaの制御モード設定 Full 132 Roombaの制御モード設定 Reset 7 Roomba制御のリセット Stop 173 Roomba制御の終了 機能 opcode 説明 Drive 137 Velocity 500~500(mm/s) Radius -2000~2000(mm) Drive direct 145 右輪/左輪ごとに-500~500(mm/s) Drive PWM 146 右輪/左輪ごとに-255~255の値 LEDs 139 各LEDの制御 Song 140 音の再生 ※各センサーの通知機能は未実装
ハードウェア構成 デバイス 型番 I/F 補足 サーボモータ MG996R A1 2つ繋いでみたが電流不足 Roomba
ルンバ622 Serial1 電源もルンバから取得 OLED aitendo M096P4BL Wire(I2C) ESP8266と同時で動作せず →解決してくださいました
disconnect TCPサーバの実装 ESP8266 TCPServer $ python client.py >> d, 100,
0 d,100,0 >> m,100 m,100 >> s s >> c 【コマンド】 d: roombaのDirectコマンドを実行 m: サーボモータの動作実行 s: roombaの停止 c: 通信切断(終了) connect d,100,0 ・ ・ ・ ✖
ちなみにROSなら ESP8266 ROS topic : geometry_msg/Twist 課題:LiDARへの対応
あじけないので、100均グッズで装飾