Skip to content

muriqui用のコードを移植する - #38

Open
hideyoshi-k wants to merge 8 commits into
ros2from
feature/no_coordinate_trance
Open

muriqui用のコードを移植する#38
hideyoshi-k wants to merge 8 commits into
ros2from
feature/no_coordinate_trance

Conversation

@hideyoshi-k

@hideyoshi-khideyoshi-k commented Jul 13, 2026

Copy link
Copy Markdown

What does this implement/fix?

muriquiで使用していたコードを移植します

座標変換を切り替える処理の他、Dynamixelモデル(xc330, ph54)の追加や、処理の追加・変更があります

Does this close any currently open issues?

How has this been tested?

humble、jazzy環境でビルドが通ることを確認しました
lyrical環境(Docker)ではビルドが通りませんでした

humble環境でcrane-x7の重力補償が動作することを確認しました

Any other comments?

Checklists

@hideyoshi-khideyoshi-k self-assigned this Jul 13, 2026
@hideyoshi-k
hideyoshi-k marked this pull request as ready for review July 13, 2026 05:42
@hideyoshi-k
hideyoshi-k requested a review from KuwamaiJuly 13, 2026 05:43
@Kuwamai
Kuwamai requested a review from CopilotJuly 15, 2026 04:58

CopilotAI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

muriqui で利用していた実装を rt_manipulators_lib 側へ移植し、Dynamixel モデル追加(XC330/PH54)や座標変換の切替、外部ポート(アナログ入力)読み取り等を拡張するPRです。

Changes:

  • 関節グループの sync_read 対象として external_port1-4 を追加し、読み取り・保持・取得APIを追加
  • XC330 の indirect 非対応を考慮した direct アドレス経路(sync_read/sync_write)の導入
  • PH54 / XC330 のモデル追加と、それに伴うテスト・FakeIt モック導入

Reviewed changes

Copilot reviewed 27 out of 27 changed files in this pull request and generated 12 comments.

Show a summary per file
FileDescription
rt_manipulators_lib/test/test_hardware.cppHardware の read/write_data 等のユニットテスト追加(FakeIt モック使用)
rt_manipulators_lib/test/test_dynamixel_ph54.cppPH54 の変換系テスト追加
rt_manipulators_lib/test/test_dynamixel_p.cppP 系の external port 間接アドレス設定テスト追加
rt_manipulators_lib/test/test_config_file_parser.cppexternal port 読み取り設定のパース検証テスト追加
rt_manipulators_lib/test/config/ok_read_external_port.yamlexternal_port1-4 を含む設定追加
rt_manipulators_lib/test/CMakeLists.txtFakeIt FetchContent とテスト追加
rt_manipulators_lib/src/kinematics_utils.cppモデルにより座標変換を切り替える分岐追加
rt_manipulators_lib/src/joint.cppXC330/PH54 の生成追加、external port 電圧保持を追加
rt_manipulators_lib/src/hardware.cppdirect/indirect 切替、external port 読み取り、注入用コンストラクタ等を追加
rt_manipulators_lib/src/hardware_joints.cppexternal port 電圧取得APIを追加
rt_manipulators_lib/src/hardware_communicator.cppPacketHandler 取得方法変更、呼び出し箇所更新
rt_manipulators_lib/src/dynamixel_xc330.cppXC330 モデル実装追加
rt_manipulators_lib/src/dynamixel_x.cppexternal port / direct read-write 用の定義・抽出・書き込み追加
rt_manipulators_lib/src/dynamixel_ph54.cppPH54 モデル実装追加
rt_manipulators_lib/src/dynamixel_p.cppexternal port(間接アドレス・モード設定・抽出)追加、間接アドレス設定の冪等化
rt_manipulators_lib/src/config_file_parser.cppparse() 前に parsed_joints をリセット
rt_manipulators_lib/src/CMakeLists.txtPH54 ビルド対象追加
rt_manipulators_lib/include/joint.hppexternal port API / name() 追加
rt_manipulators_lib/include/hardware.hpp注入用コンストラクタ、external port API、read/write_data テンプレ追加
rt_manipulators_lib/include/hardware_joints.hppexternal port 電圧取得API追加
rt_manipulators_lib/include/hardware_communicator.hppCommunicator をモック可能にするため virtual 化
rt_manipulators_lib/include/dynamixel_xc330.hppXC330 ヘッダ追加
rt_manipulators_lib/include/dynamixel_x.hppexternal port / direct read-write API・状態追加
rt_manipulators_lib/include/dynamixel_ph54.hppPH54 ヘッダ追加
rt_manipulators_lib/include/dynamixel_p.hppexternal port API 追加
rt_manipulators_lib/include/dynamixel_base.hppexternal port / direct read-write 用の仮想API追加
rt_manipulators_lib/CMakeLists.txtXC330/PH54 ソース追加

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment threadrt_manipulators_lib/include/hardware.hpp
Comment threadrt_manipulators_lib/include/hardware.hpp Outdated
Comment threadrt_manipulators_lib/src/hardware.cpp
Comment threadrt_manipulators_lib/src/hardware.cpp
Comment threadrt_manipulators_lib/src/hardware.cpp
Comment threadrt_manipulators_lib/src/dynamixel_x.cpp
Comment threadrt_manipulators_lib/src/dynamixel_x.cpp
Comment threadrt_manipulators_lib/test/test_hardware.cpp
Comment threadrt_manipulators_lib/src/kinematics_utils.cpp
Comment threadrt_manipulators_lib/include/joint.hpp Outdated
hideyoshi-kand others added 7 commits August 7, 2026 17:28
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@hideyoshi-k
hideyoshi-k requested review from Kuwamai and removed request for KuwamaiAugust 21, 2026 09:42
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@hideyoshi-k