文章目录
[1 特点](#1 特点)
[2 固件](#2 固件)
[3 ArduPilot固件DroneCAN设置](#3 ArduPilot固件DroneCAN设置)
[4 DroneCAN适配器节点](#4 DroneCAN适配器节点)
前言
这些节点允许现有的 ArduPilot 支持的外围设备作为 DroneCAN 或 MSP 设备适应 CAN 总线。这也允许扩展自动驾驶仪硬件的功能。如允许 I2C 设备(如罗盘或空速)距离自动驾驶仪 1m 以上,并实现多达 32 个伺服输出通道。
他们利用 AP_Periph 库,在支持的硬件板上使用现有的 ArduPilot 驱动程序。将 ArduPilot 支持的基于 UART、SPI、I2C 或 GPIO 的外围设备转换为 CAN 总线或 MSP 上的 DroneCAN 设备。
例如,一个与 DroneCAN 相适应的串行 GPS:
这为开发集成的 DroneCAN 外围设备提供了一种简单的方法,可以与 ArduPilot 或其他支持DroneCAN 的系统一起使用。
第一个适配器由 mRobotics 制造,如下图所示,它为一个 UART+I2C 和另一个 I2C 连接提供插座式输出,并为第二个 UART、SPI 总线、GPIO 和 ADC 输入提供焊接焊盘。
第一代产品基于 f103 处理器,而目前这一代产品使用 f303,以获得更多的内存,使固件中可以同时容纳更多的外围选项。现在支持 L431 处理器,以及任何兼容 ArduPilot 的自动驾驶仪都可以作为 DroneCAN 适配器节点使用。
开发人员可能会发现开发文档中的 AP_Periph 部分(AP_Periph section)对创建 AP_Periph 节点的更多细节很有用。
1 特点
AP_Periph DroneCAN 固件可以被配置为启用各种 DroneCAN 传感器类型。包括对以下内容的支持:
- GPS 模块(包括 RTK GPS);
- 磁强计(SPI 或 I2C);
- 气压计 (SPI 或 I2C);
- 空速传感器 (I2C);
- 测距仪 (UART 或 I2C);
- ADSB (UART 上的 Ping ADSB 接收器);
- LED (GPIO, I2C, 或 WS2812 串行);
- 安全 LED 和安全开关;
- 蜂鸣器(音调警报或简单的 GPIO);
- PWM 和 DShot 输出。
设置自动驾驶仪和通用适配器节点以启用这些功能(假设该节点支持这些功能),详见 DroneCAN适配器设置(DroneCAN Adapter Setup)。
! Note
在某些情况下,必须将不同的固件加载到适配节点上,以使所需的外围设备子集得到支持。参见下面的"固件"。
AP_Periph DroneCAN 固件支持这些 DroneCAN 功能:
- 动态或静态的 CAN 节点分配;
- 固件上传;
- 自动生成的引导程序;
- 参数存储在闪存中;
- 轻松更新引导程序;
- 使用看门狗、CRC 和电路板检查的高弹性功能;
- 通过 MissionPlanner 或 DroneCAN-gui-tool 进行固件更新。
2 固件
3 ArduPilot固件DroneCAN设置
4 DroneCAN适配器节点
篇幅过多,另起一篇介绍: