Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DynamixelサーボのためのROS 2 Control実装とOpenMANIPULATOR-Xへの参照実装

Yutaka Kondo
February 19, 2021

DynamixelサーボのためのROS 2 Control実装とOpenMANIPULATOR-Xへの参照実装

ROS Japan UG #42 LT大会
https://rosjp.connpass.com/event/209136/
ROS Japan UG #41 ROS/ROS2 Control勉強会
https://rosjp.connpass.com/event/200588/
で発表した資料です。

- https://github.com/youtalk/dynamixel_control

Yutaka Kondo

February 19, 2021
Tweet

More Decks by Yutaka Kondo

Other Decks in Technology

Transcript

  1. 自己紹介 [email protected] 2 本名 国籍 ホームページ • ~2013/03: 奈良先端大学院大学 博士(工学)

    • ~2018/04: カワダロボティクス 開発部主任 • 2018/05~: Preferred Networks エンジニア • 2019/08/13: ROS2ではじめよう 次世代ロボットプログラミング 出版 ◦ もうすぐ発売の増刷版は ROS2 Foxyに対応(予定) • ~2021/03: ROS Japan UG主宰
  2. TODO • 起動時の初期姿勢問題の解決 ✅ • ギア比対応 💪 ◦ ROS 2

    Control版transmission_interfaceが未完成... • 速度制御への対応 ✅ • 電流制御への対応 💪 • forward_command_controller以外のros2_controllerへの対応 ◦ 位置、速度制御への対応 ✅ ◦ トルク制御への対応 💪 ◦ 複数ros2_controllerの読み込み ✅ ◦ ソフトウェアリミット制御 💪 ▪ ROS 2 Control版joint_limits_interfaceが未完成... • MoveIt2連携 💪 4
  3. 5

  4. 自己紹介 [email protected] 10 本名 国籍 ホームページ • ~2013/03: 奈良先端大学院大学 博士(工学)

    • ~2018/04: カワダロボティクス 開発部主任 • 2018/05~: Preferred Networks エンジニア • 2019/08/13: ROS2ではじめよう 次世代ロボットプログラミング 出版 ◦ オンラインリソースは ROS 2 Foxyに対応済み
  5. dynamixel_hardware ROBOTIS Dynamixelサーボを使ったロボットのためのSystemInterface実装 • 任意のDynamixelサーボの組み合わせに対応 ◦ 固有のロボット専用の RobotHWを実装しなくて良い! • forward_command_controller以外は未テスト

    ◦ 軌道が補間されない( Dynamixelの位置制御に依存) • ros2 controlサブコマンドでros2_controllerの読み込み、実行などを制御 12 $ ros2 control load_start_controller joint_state_controller $ ros2 control load_configure_controller forward_command_controller_position $ ros2 control switch_controllers --start-controllers forward_command_controller_position $ ros2 control list_controllers $ ros2 control list_hardware_interfaces $ ros2 topic pub /forward_command_controller_position/commands std_msgs/msg/Float64MultiArray "data: [0.1, 0.1, 0.1, 0.1, 0.01]"
  6. open_manipulator_x_robot ROBOTIS OpenManipulator-Xのための dynamixel_hardwareを使う参照実装 • open_manipulator_x.ros2_control.xacro ◦ usb_port: USBポート ◦

    baud_rate: ボーレート ◦ joint_ids: DynamixelサーボのIDリスト       (コンマ区切り) ◦ dummy: 実機を使わない場合のフラグ • controllers.yaml ◦ ros2_controllerの読み込み設定 13
  7. TODO • 起動時の初期姿勢問題の解決 • ギア比対応 ◦ グリッパだけはSystemInterfaceではなくActuatorInterfaceを使う? • 速度、電流制御への対応 •

    forward_command_controller以外のros2_controllerへの対応 ◦ 位置、速度、トルク制御への対応 ◦ 複数ros2_controllerの読み込み ◦ ソフトウェアリミット制御 • MoveIt2連携 15
  8. ros2_control, ros2_controllersへの貢献 • Use dashing for Travis CI • Fix

    typo • Call template methods instead of copy and paste • Sleep accurate duration on ros2_control_node • Add on_activate to JointStateController 16
  9. 今後のyouXプロジェクト(仮) 17 youtalk youfork youp*** youw*** ? ? 2020年末 2021年以降

    中断 https://speakerdeck.com/youtalk/youfork-fully-ros-2-homemade-mobile-manipulator