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
GR-ROSE でroombaをコントロールする
Search
lutecia16v
November 10, 2018
Technology
430
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
420
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
freeeにおける AI を用いた ブラウザ動作確認の自動化の取り組み
freee
PRO
0
160
小規模OSSモデルは サイバーセキュリティ業務に どこまで使えるか
bbrbbq
0
200
From Developer Experience to Agentic Experience: The Next Evolution of APIs
benjagm
0
110
AWSセキュリティで活用するAI機能
cmusudakeisuke
1
240
AI時代のGraphQL
joere
3
360
LLM-as-a-Judgeは本当に信頼できるのか――評価器を評価する話
taka_aki
3
1.1k
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
3
270
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
260
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
390
顧客価値を追いかけたら、プライシングにたどり着いた
sansantech
PRO
2
600
AWS Continuum for Penetration Testing に Deep Dive してみる
asanoharuki
0
190
Teaching Python with three kinds of AI
reuven
0
100
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
310
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
Being A Developer After 40
akosma
PRO
92
590k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.8k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
67k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
A better future with KSS
kneath
240
18k
Ethics towards AI in product and experience design
skipperchong
2
440
Fireside Chat
paigeccino
43
4.1k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
540
RailsConf 2023
tenderlove
30
1.6k
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均グッズで装飾