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 をクリック:

接続されたモジュール(例:気圧計の pogo.canbaro)が Mode = OPERATIONAL、Health = OK で表示されるはずです。
詳細プロトコルデータの確認¶
Inspector ボタンをクリックすると、モジュールが送信する全 DroneCAN メッセージが見えます:

サンプル出力:
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_DRIVER と CAN_D1_PROTOCOL の両方が設定されているか
4. フライトコントローラーが再起動済みか
Q: Inspector でメッセージは見えるが Status に press_abs2 が表示されない?
A: ArduPilot ファームウェアバージョンが DroneCAN 経由のセカンダリ気圧計をサポートしているか確認してください。BARO2_DEVID を DroneCAN ID に設定する必要がある場合があります。