DroneCAN 気圧計設定

SparkNavi Blue は 2× CAN FD ポート(CAN1 / CAN2)を内蔵し、DroneCAN(旧 UAVCAN)プロトコルの気圧計、GPS、ESC などの周辺機器を完全サポートします。本ガイドでは DroneCAN 気圧計モジュールを例に説明します。


ハードウェア配線

DroneCAN 気圧計モジュールを SparkNavi Blue の CAN1 または CAN2 コネクタに接続します。

CAN コネクタピン配置:

Pin 信号 説明
1 +5V 周辺機器電源
2 CAN_H CAN ハイ線
3 CAN_L CAN ロー線
4 GND グランド

ArduPilot 側で CAN を有効化

Mission Planner Config → Full Parameter List で:

パラメータ 説明
CAN_P1_DRIVER 1 CAN1 ドライバ有効化
CAN_D1_PROTOCOL 1 (DroneCAN) プロトコルを DroneCAN に設定
CAN_P2_DRIVER 1 CAN2 ドライバ有効化
CAN_D2_PROTOCOL 1 (DroneCAN) プロトコルを DroneCAN に設定

設定完了後、フライトコントローラーを 再起動 します。


モジュールがオンラインか確認

Mission Planner Setup → Optional Hardware → DroneCAN/UAVCAN で MAVlink-CAN1 をクリック:

DroneCAN/UAVCAN 画面

接続されたモジュール(例:気圧計の pogo.canbaro)が Mode = OPERATIONAL、Health = OK で表示されるはずです。


詳細プロトコルデータの確認

Inspector ボタンをクリックすると、モジュールが送信する全 DroneCAN メッセージが見えます:

UAVCAN Inspector

サンプル出力:

ID 10 - pogo.canbaro ~1116Bps
  ardupilot_indication_NotifyState (20.0 Hz)
  ardupilot_indication_SafetyState (2.0 Hz)
  uavcan_equipment_air_data_StaticPressure (80.5 Hz)  ← 気圧計リアルタイムデータ
    static_pressure         101078.9 Pa
  uavcan_equipment_air_data_StaticTemperature (80.4 Hz)
    static_temperature      308.25 K
  uavcan_equipment_safety_ArmingStatus (2.0 Hz)
  uavcan_protocol_NodeStatus (2.0 Hz)

データがフライトコントローラーに届いているか確認

Mission Planner Status ページで以下が表示されるはずです:

  • press_abs2:第二気圧計の絶対圧力(DroneCAN モジュール由来)
  • press_temp2:第二気圧計の温度

値が継続的に更新されていれば、CAN 通信は正常に動作しています。


FAQ

Q: MAVlink-CAN1 をクリックしてもノードが現れない?

A: 確認事項: 1. 配線(CAN_H / CAN_L が逆になっていないか) 2. CAN 終端抵抗(120 Ω、通常モジュール内蔵) 3. CAN_P1_DRIVERCAN_D1_PROTOCOL の両方が設定されているか 4. フライトコントローラーが再起動済みか

Q: Inspector でメッセージは見えるが Status に press_abs2 が表示されない?

A: ArduPilot ファームウェアバージョンが DroneCAN 経由のセカンダリ気圧計をサポートしているか確認してください。BARO2_DEVID を DroneCAN ID に設定する必要がある場合があります。


詳細リファレンス