Skip to content

Conversation

YusukeKato
Copy link
Collaborator

@YusukeKato YusukeKato commented May 21, 2025

What does this implement/fix?

目標とする手先の位置をlink4からグリッパの中心に変更するために新しくTCPリンクを追加します。
また、TCPリンクをデフォルトとしてサンプルも変更します。

Does this close any currently open issues?

#80

How has this been tested?

実機、Gazebo、mock_componentですべてのサンプルが動くことを確認しました。

Any other comments?

私の環境だけかもしれませんが、実機動作中、controller_managerがあらかじめ設定している100Hzの周期に達していないという警告が出ました。
80Hzに設定するとこの警告が出ないことも確認できました。
使用しているPCに依存する可能性が高そうであるため修正は行っていません。

[ros2_control_node-5] [WARN] [1748243047.531917709] [controller_manager]: Overrun detected! The controller manager missed its desired rate of 100 Hz. The loop took 10.451418 ms (missed cycles : 2).

Checklists

@YusukeKato YusukeKato self-assigned this May 21, 2025
@YusukeKato YusukeKato added the Type: Feature New Feature label May 21, 2025
@YusukeKato YusukeKato marked this pull request as ready for review May 26, 2025 07:59
@YusukeKato YusukeKato requested a review from Kuwamai May 26, 2025 07:59
Copy link
Contributor

@Kuwamai Kuwamai left a comment

Choose a reason for hiding this comment

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

table_with_aruco_cube.sdfとtable_with_red_cube.sdfのcubeの位置を下記に変更し、グリッパ角度等の調整はなしでお願いします。

<pose>0.2 0 1.05 0 0 0</pose>

@YusukeKato
Copy link
Collaborator Author

Cubeの位置を下記を参考に調整してGazebo上で把持できることを確認しました。
#91 (review)

@YusukeKato
Copy link
Collaborator Author

@Kuwamai
レビューありがとうございます。
一通り修正完了して、実機でも動作確認できました。
pick_and_place_tf.cppにおいてプレース時にパス生成がタイムアウトすることが多かったので、その前に横を向く中継姿勢を追加しています。

Copy link
Contributor

@Kuwamai Kuwamai left a comment

Choose a reason for hiding this comment

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

把持位置について過去の名残がある部分は新しくきりのいい数値に設定したほうがよさそうです。
それ以外は大丈夫です!
来週実機で確認します 🙇

ちなみにですが、シミュレータ上だとしっかり持てる把持位置の調整がシビアでしたが、実機ではもう少し良さげだったでしょうか?

target_pose.position.z = 0.17;
q.setRPY(to_radians(0), to_radians(90), to_radians(-90));
target_pose.orientation = tf2::toMsg(q);
move_group_arm.setPoseTarget(target_pose);
move_group_arm.move();

target_pose.position.y = -0.09;
Copy link
Contributor

Choose a reason for hiding this comment

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

ここはboxの位置でいいかと思います。

Suggested change
target_pose.position.y = -0.09;
target_pose.position.y = -0.1;

move_group_arm.setPoseTarget(target_pose);
move_group_arm.move();

// ----- Placing Preparation -----
move_group_arm.setNamedTarget("home");
move_group_arm.move();

target_pose.position.x = 0.15;
target_pose.position.x = 0.27;
Copy link
Contributor

Choose a reason for hiding this comment

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

ここは適当にきりのいい位置でいいかと思います。

Suggested change
target_pose.position.x = 0.27;
target_pose.position.x = 0.25;


// 下ろす
control_arm(0.0, -0.15, 0.05, 0, 90, -90);
control_arm(0.0, -0.27, 0.05, 0, 90, -90);
Copy link
Contributor

Choose a reason for hiding this comment

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

ここもきりのいい位置に置くとよさそうです。

Suggested change
control_arm(0.0, -0.27, 0.05, 0, 90, -90);
control_arm(0.0, -0.25, 0.05, 0, 90, -90);


// ハンドを開く
control_gripper(GRIPPER_OPEN);

// 少しだけハンドを持ち上げる
control_arm(0.0, -0.15, 0.10, 0, 90, -90);
control_arm(0.0, -0.27, 0.10, 0, 90, -90);
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
control_arm(0.0, -0.27, 0.10, 0, 90, -90);
control_arm(0.0, -0.25, 0.10, 0, 90, -90);

@YusukeKato
Copy link
Collaborator Author

レビューありがとうございます。
変更の提案、すべて取り込みました。

@YusukeKato
Copy link
Collaborator Author

実機でも動作確認できました。
しっかり比較できていませんが、実機のほうが把持においてboxの向きの影響が少ない気がします(とはいえboxの向きによって把持できない場合もありました)。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Feature New Feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants