SlideShare ist ein Scribd-Unternehmen logo
1 von 7
Downloaden Sie, um offline zu lesen
1
自社の汎用シリアルサーボドライバ・
ライブラリをROSに導入してみた
松村 礼央 (karakuri products Inc.)
高槻 紫希 (karakuri products Inc.)
たけいひでゆき (HAPT Lab, LLC)
ROS勉強会 2020.08.28 18:30~
2
発表概要
• シリアルサーボをもっと気軽に ROS で使いたい
• 汎用シリアルサーボドライバ・ライブラリ gs2d を作って、
ROS2のパッケージに組込んでみた
位置制御
速度制御
A社独自
通信規格
位置制御
速度制御
C社独自
通信規格
位置制御
速度制御
電流制御
B社独自
通信規格
機械仕様の差のみで、
制御機能はほぼ同じ。
異なるメーカの製品の導入には、
各社の通信規格にあわせ都度、修正が必要。
開発資産の再利用性が低くなりがち
A社コマンド方式
サーボモータ
C社コマンド方式
サーボモータ
B社コマンド方式
サーボモータ
3
gs2d とは
• gs2d ( Generic Serial-bus Servo Driver ) library
• C++, C#, Python ライブラリを作成
• 同一のメソッドで異なるメーカ/規格のシリアルサーボの制御が可能
• オープンソース ( Apache 2.0 License )
4
gs2d 対応サーボドライバ
• kr-gs2d001 (2020.9 発売開始予定)
• gs2d に完全対応。
• RS485, 1 wire TTL Serial ドライバ搭載
• USBシリアル搭載 (USB2.1 via. USC-type C)
• Arduino シールド互換
• 3.0 ~ 5V レベル対応
メーカ 機種 規格
ロボティズ Dynamixel X シリーズ Protocol 2.0
近藤科学
B3Mシリーズ
KRSシリーズ
B3M Protocol
ICS3.6
ICS3.5
双葉電子工業 コマンド方式サーボ シリーズ コマンド方式 Protocol
対応メーカ/機種/規格 一覧
5
ROS2 に gs2d を組込んでみた
• > ros2 run gs2d_ros2_driver gs2d
で gs2d を組込んだ ROS2ノードを起動。(動画では トルクON, 位置制御 の機能を実装)
• > ros2 topic pub -1 /gs2d_ros2_driver/torque_enable gs2d_ros2_driver_msg/TorqueEnable ‘{servo_id: 1, data: true}
でロボットに id:1 にトルクONのメッセージを送付
• > ros2 topic pub -1 /gs2d_ros2_driver/target_position gs2d_ros2_driver_msg/TargetPosition ‘{servo_id: 1, data: 20}
でロボットに id:1 のサーボに位置指令値 (20.0deg) のメッセージを送付
6
gs2d 乞うご期待ください
• gs2d githubリポジトリ
• karakuri-products/gs2d
• gs2d-cpp (C++版)(後日公開) : karakuri-products/gs2d-cpp
• gs2d-csharp (C#版)(後日公開) : karakuri-products/gs2d-csharp
• gs2d-python (python版) : karakuri-products/gs2d-python
• gs2d-ros2-driver (ROS2実装sample) : karakuri-products/gs2d-ros2-driver
• gs2d-hw (ハードウェアマニュアル) : karakuri-products/gs2d-hardware
7
連絡先
• Twitter : @reomatsumura
github : github.com/karakuri-products
mail : dev@krkrpro.com

Weitere ähnliche Inhalte

Was ist angesagt?

関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開
Hideki Takase
 
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界
Hideki Takase
 
ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道
ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道
ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道
Tamtlebot
 

Was ist angesagt? (12)

TurtleBot3でROSを始めよう
TurtleBot3でROSを始めようTurtleBot3でROSを始めよう
TurtleBot3でROSを始めよう
 
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
 
KotlinでROSノードを書いてみた
KotlinでROSノードを書いてみたKotlinでROSノードを書いてみた
KotlinでROSノードを書いてみた
 
ROSCon2019 Macau 参加報告 Akihiko Tsukuda
ROSCon2019 Macau 参加報告 Akihiko TsukudaROSCon2019 Macau 参加報告 Akihiko Tsukuda
ROSCon2019 Macau 参加報告 Akihiko Tsukuda
 
Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Rclex: ElixirでROS!!
Rclex: ElixirでROS!!
 
ROS 2 Client Library for E^2
ROS 2 Client Library for E^2ROS 2 Client Library for E^2
ROS 2 Client Library for E^2
 
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
ロボットシステムのつくりかた 〜Robot Operating Systemというアプローチ〜
 
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
ロボット・ソフトウェア開発環境ROSとは何か? (in Japanese)
 
短絡的に作るRuby DSL 公開版
短絡的に作るRuby DSL 公開版短絡的に作るRuby DSL 公開版
短絡的に作るRuby DSL 公開版
 
関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開関数型言語ElixirのIoTシステム開発への展開
関数型言語ElixirのIoTシステム開発への展開
 
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界
 
ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道
ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道
ZytleBot: 自律移動ロボットへのFPGA活用のすゝめとROS 2移行への道
 

Ähnlich wie 自社の汎用シリアルサーボドライバ・ライブラリをROSに導入してみた

組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構
組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構
組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構
Ryosuke MATSUMOTO
 
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
YusukeKuramata
 
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DRAmazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
株式会社クライム
 
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
Developers Summit
 
Rds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみようRds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみよう
guest468ec6
 
130522 rt講習会(説明用)
130522 rt講習会(説明用)130522 rt講習会(説明用)
130522 rt講習会(説明用)
openrtm
 
ポータブルコンポーネントマネージャの実装
ポータブルコンポーネントマネージャの実装ポータブルコンポーネントマネージャの実装
ポータブルコンポーネントマネージャの実装
Yosuke Matsusaka
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene index
Koji Sekiguchi
 

Ähnlich wie 自社の汎用シリアルサーボドライバ・ライブラリをROSに導入してみた (20)

組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構
組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構
組み込みスクリプト言語Mrubyを利用したwebサーバの機能拡張支援機構
 
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
今注目のSpark SQL、知っておきたいその性能とは 20151209 OSC Enterprise
 
Redis & Redis HA design with Keepalived
Redis & Redis HA design with KeepalivedRedis & Redis HA design with Keepalived
Redis & Redis HA design with Keepalived
 
Hajimete k3s agenda_201008
Hajimete k3s agenda_201008Hajimete k3s agenda_201008
Hajimete k3s agenda_201008
 
[dbts-2014-tokyo] 目指せExadata!! Oracle DB高速化を目指した構成
[dbts-2014-tokyo] 目指せExadata!! Oracle DB高速化を目指した構成[dbts-2014-tokyo] 目指せExadata!! Oracle DB高速化を目指した構成
[dbts-2014-tokyo] 目指せExadata!! Oracle DB高速化を目指した構成
 
Starc verilog hdl2013d
Starc verilog hdl2013dStarc verilog hdl2013d
Starc verilog hdl2013d
 
ros2_cmd_api : ROS2コマンド機能のAPIを提供するROS2パッケージ.pdf
ros2_cmd_api :  ROS2コマンド機能のAPIを提供するROS2パッケージ.pdfros2_cmd_api :  ROS2コマンド機能のAPIを提供するROS2パッケージ.pdf
ros2_cmd_api : ROS2コマンド機能のAPIを提供するROS2パッケージ.pdf
 
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DRAmazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
 
Mbed祭り 2017@春の新横浜 20170225 竹之下
Mbed祭り 2017@春の新横浜 20170225 竹之下Mbed祭り 2017@春の新横浜 20170225 竹之下
Mbed祭り 2017@春の新横浜 20170225 竹之下
 
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
【17-E-2】Ruby PaaS「MOGOK」 ~ ソフトウェアエンジニアのためのクラウドサービス ~ 藤原秀一氏
 
本番環境で使える実行コード記録機能
本番環境で使える実行コード記録機能本番環境で使える実行コード記録機能
本番環境で使える実行コード記録機能
 
Android Dev Tools Knowledge
Android Dev Tools KnowledgeAndroid Dev Tools Knowledge
Android Dev Tools Knowledge
 
Rds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみようRds 2008 R2 Express Editionで遊んでみよう
Rds 2008 R2 Express Editionで遊んでみよう
 
20170329 container technight-第一回勉強会
20170329 container technight-第一回勉強会20170329 container technight-第一回勉強会
20170329 container technight-第一回勉強会
 
20170329 container technight-第一回勉強会
20170329 container technight-第一回勉強会20170329 container technight-第一回勉強会
20170329 container technight-第一回勉強会
 
130522 rt講習会(説明用)
130522 rt講習会(説明用)130522 rt講習会(説明用)
130522 rt講習会(説明用)
 
Rosserial無線化への招待 〜Invitation to wirelessization by rosserial〜
Rosserial無線化への招待 〜Invitation to wirelessization by rosserial〜Rosserial無線化への招待 〜Invitation to wirelessization by rosserial〜
Rosserial無線化への招待 〜Invitation to wirelessization by rosserial〜
 
ポータブルコンポーネントマネージャの実装
ポータブルコンポーネントマネージャの実装ポータブルコンポーネントマネージャの実装
ポータブルコンポーネントマネージャの実装
 
160705-01 RTミドルウエア講習会・名城大
160705-01 RTミドルウエア講習会・名城大160705-01 RTミドルウエア講習会・名城大
160705-01 RTミドルウエア講習会・名城大
 
Visualize terms network in Lucene index
Visualize terms network in Lucene indexVisualize terms network in Lucene index
Visualize terms network in Lucene index
 

自社の汎用シリアルサーボドライバ・ライブラリをROSに導入してみた

  • 1. 1 自社の汎用シリアルサーボドライバ・ ライブラリをROSに導入してみた 松村 礼央 (karakuri products Inc.) 高槻 紫希 (karakuri products Inc.) たけいひでゆき (HAPT Lab, LLC) ROS勉強会 2020.08.28 18:30~
  • 2. 2 発表概要 • シリアルサーボをもっと気軽に ROS で使いたい • 汎用シリアルサーボドライバ・ライブラリ gs2d を作って、 ROS2のパッケージに組込んでみた 位置制御 速度制御 A社独自 通信規格 位置制御 速度制御 C社独自 通信規格 位置制御 速度制御 電流制御 B社独自 通信規格 機械仕様の差のみで、 制御機能はほぼ同じ。 異なるメーカの製品の導入には、 各社の通信規格にあわせ都度、修正が必要。 開発資産の再利用性が低くなりがち A社コマンド方式 サーボモータ C社コマンド方式 サーボモータ B社コマンド方式 サーボモータ
  • 3. 3 gs2d とは • gs2d ( Generic Serial-bus Servo Driver ) library • C++, C#, Python ライブラリを作成 • 同一のメソッドで異なるメーカ/規格のシリアルサーボの制御が可能 • オープンソース ( Apache 2.0 License )
  • 4. 4 gs2d 対応サーボドライバ • kr-gs2d001 (2020.9 発売開始予定) • gs2d に完全対応。 • RS485, 1 wire TTL Serial ドライバ搭載 • USBシリアル搭載 (USB2.1 via. USC-type C) • Arduino シールド互換 • 3.0 ~ 5V レベル対応 メーカ 機種 規格 ロボティズ Dynamixel X シリーズ Protocol 2.0 近藤科学 B3Mシリーズ KRSシリーズ B3M Protocol ICS3.6 ICS3.5 双葉電子工業 コマンド方式サーボ シリーズ コマンド方式 Protocol 対応メーカ/機種/規格 一覧
  • 5. 5 ROS2 に gs2d を組込んでみた • > ros2 run gs2d_ros2_driver gs2d で gs2d を組込んだ ROS2ノードを起動。(動画では トルクON, 位置制御 の機能を実装) • > ros2 topic pub -1 /gs2d_ros2_driver/torque_enable gs2d_ros2_driver_msg/TorqueEnable ‘{servo_id: 1, data: true} でロボットに id:1 にトルクONのメッセージを送付 • > ros2 topic pub -1 /gs2d_ros2_driver/target_position gs2d_ros2_driver_msg/TargetPosition ‘{servo_id: 1, data: 20} でロボットに id:1 のサーボに位置指令値 (20.0deg) のメッセージを送付
  • 6. 6 gs2d 乞うご期待ください • gs2d githubリポジトリ • karakuri-products/gs2d • gs2d-cpp (C++版)(後日公開) : karakuri-products/gs2d-cpp • gs2d-csharp (C#版)(後日公開) : karakuri-products/gs2d-csharp • gs2d-python (python版) : karakuri-products/gs2d-python • gs2d-ros2-driver (ROS2実装sample) : karakuri-products/gs2d-ros2-driver • gs2d-hw (ハードウェアマニュアル) : karakuri-products/gs2d-hardware
  • 7. 7 連絡先 • Twitter : @reomatsumura github : github.com/karakuri-products mail : dev@krkrpro.com