コンテンツにスキップ

サーボ (ショット機構)

ディスク発射機構の チルト(上下)トリガー(発射) はシリアルサーボで制御します。 motor_control_appshot_component ノードが担当します。

接続

項目
ポート /dev/servo
ボーレート 115200 bps
チルトサーボ ID 11
トリガーサーボ ID 10

/dev/servo について

/dev/servo は udev ルールで固定化されたシリアルデバイスのエイリアスです。 実体(/dev/ttyUSB* 等)は環境によって変わるため、エイリアスで参照します。 詳細は 配線・デバイスマッピング を参照してください。

主なパラメータ

shot_component の既定パラメータ(shot_config.yaml)は次のとおりです。

パラメータ 既定値 説明
joy_topic /joy 入力する Joy トピック
port /dev/servo サーボのシリアルポート
baudrate 115200 ボーレート
tilt_servo_id 11 チルトサーボの ID
trigger_servo_id 10 トリガーサーボの ID
fire_button 5 発射ボタン(Switch2 R / DualShock R1 = 5)
fire_duration_ms 300 発射動作の持続時間 (ms)
tilt_axis 7 チルト入力に使う軸(D-pad 縦 = 7)。負値ならボタンモード
tilt_up_button_index 4 チルト上ボタン(Switch2 L = 4)
tilt_down_button_index 6 チルト下ボタン(Switch2 ZL = 6)
fire_angle 145.0° 発射角度
home_angle 245.0° ホーム角度
tilt_max_angle 120.0° チルト最大角度

チルト入力モード

tilt_axis の値で、チルトの入力方法を切り替えます。

  • tilt_axis >= 0 … 指定したアナログ軸を使用(例:D-pad 縦 = 7)。
  • tilt_axis < 0tilt_up_button_index / tilt_down_button_index のボタンを使用。

コントローラ種別による調整

ボタン / 軸のインデックスはコントローラ種別(UART / DualShock)で異なります。 shot_config.uart.yaml / shot_config.dualshock.yaml に種別ごとの設定があります。 詳細は コントローラ入力 を参照してください。