コンテンツにスキップ

natto_joint_state

複数のジョイント状態の結合や制御ルールの適用を行うノードを提供します。

joint_state_merger

joint_state_merger ノードは、複数のトピックから受信した JointState メッセージをマージして単一の JointState としてパブリッシュします。

機能

  • 複数の JointState トピックをまとめて1つの JointState に統合
  • 同名ジョイントは上書き、新規ジョイントは追記

パラメーター

パラメーター名 デフォルト値 説明
joint_state_topics string[] [""] 統合対象のJointStateトピック名リスト

パブリッシャー

トピック名 メッセージ型 説明
merged_joint_states sensor_msgs/msg/JointState 統合されたジョイント状態

サブスクライバー

トピック名 メッセージ型 説明
joint_state_topics で指定したトピック sensor_msgs/msg/JointState 各ジョイント状態

joint_state_rule

joint_state_rule ノードは、ジョイントの目標状態に対してルールに基づく位置クランプ処理を行います。

機能

  • 現在のジョイント状態または指令状態が指定範囲に入っているとき、別ジョイントの指令値をクランプ
  • YAML パラメーターでルールを定義可能

パラメーター

パラメーターは動的に宣言されます(allow_undeclared_parameters)。

パラメーター名 説明
rules.RULE.if_COND.joint_name string 条件となるジョイント名
rules.RULE.if_COND.range double[2] 条件範囲 [min, max](ラジアン)
rules.RULE.then.joint_name string クランプ対象のジョイント名
rules.RULE.then.range double[2] クランプ範囲 [min, max](ラジアン)

パブリッシャー

トピック名 メッセージ型 説明
fixed_command_joint_states sensor_msgs/msg/JointState ルール適用後のジョイント指令状態

サブスクライバー

トピック名 メッセージ型 説明
joint_states sensor_msgs/msg/JointState 現在のジョイント状態
command_joint_states sensor_msgs/msg/JointState ジョイント指令状態