(13)DroneCAN 适配器节点(二)

发布于:2024-07-02 ⋅ 阅读:(15) ⋅ 点赞:(0)

文章目录

前言

2 固件

2.1 基于F103

2.2 基于F303

2.3 基于F431

3 ArduPilot固件DroneCAN设置

3.1 f303-通用设置示例

4 DroneCAN适配器节点


前言

这些节点允许现有的 ArduPilot 支持的外围设备作为 DroneCANMSP 设备适应 CAN 总线。这也允许扩展自动驾驶仪硬件的功能。如允许 I2C 设备(如罗盘或空速)距离自动驾驶仪 1m 以上,并实现多达 32 个伺服输出通道。


2 固件

AP_Periph 文件夹中提供了支持 DroneCAN 设备的固件(Firmware),以及将一些自动驾驶仪转换为 DroneCAN 适配器使用。目前,以下固件是预制的,但代码允许轻松定制。当设备连接到自动驾驶仪上的DroneCAN端口且自动驾驶仪启用该端口时,可以使用DroneCAN GUIMissionPlanner SLCAN安装固件。请参阅 DroneCAN 设置(DroneCAN Setup)。由于所有ArduPilot 驱动库的大小将超过较小的处理器,因此提供了几个变体,支持不同的外围设备。

2.1 基于F103

  • f103-GPS:串行 GPSI2C 指南针,I2C RGB LED
  • f103-ADSB:串行 ADS_BI2C 罗盘,I2C 空速计;
  • f103-Rangefinder:串行测距仪,I2C 空速计。

2.2 基于F303

  • f303-GPS:串行 GPS,SPI RM3100 指南针,I2C 指南针,I2C RGB LED
  • f303-M10025:串行 GPSSPI RM3100 指南针,SPI DPS310 BaroI2C RGB LEDI2C 空速计,安全开关;
  • f303-Universal:串行 GPS /测距仪/ ADS-BI2C 指南针,I2C BaroI2C RGB LEDI2C 空速计。

2.3 基于F431

  • MatekL431-Periph:串行 GPSI2C QMC5883L 指南针,I2C SPL06 BaroI2C RGB LEDI2C 空速计(MS4525 默认),无源蜂鸣器,电池监控器,MSP5PWM 输出(建议在此应用中使用 MatekL431-DShot);
  • MatekL431-AirspeedI2C 空速计,DLVR 10" 默认类型;
  • MatekL431-DShot5 个双向 DShot(默认)/ PWM 输出,默认从 SERVO5 开始,ESC 遥测在 UART1 RX 上(见这里的设置说明)(setup instructions here);
  • MatekL431-测距仪:串行测距仪。

3 ArduPilot固件DroneCAN设置

Note

请确保启用自动驾驶仪CAN 端口,并将其设置为 DroneCAN 协议。参见:DroneCAN 设置(DroneCAN Setup)。

DroneCAN 适配器可以支持各种设备和配置。通常情况下,它的配置参数需要被改变。为了实现这一目的,可以使用 DroneCAN GUI 或 MissionPlanner SLCAN 来改变设备的参数。

例如,当使用 MatekL431-Airspeed 时,你可能需要改变设备中的 ARSPD_TYPE 参数,以匹配你使用的实际 I2C 空速传感器。

3.1 f303-通用设置示例

f303-Universal 固件有能力用于多个串行设备,但只能启用一个设备来使用单个 UART。一旦固件被上传,连接到 UART 端口的默认设备被设置为 GPS,要使用另一个设备如测距仪,必须关闭GPS,启用测距仪或其他设备。

串行设备的选项是:

  • GPS_TYPE = 0
  • RNGFND1_TYPE = 0
  • ADSB_BAUDRATE = 0

上述适配器 DroneCAN 的参数设置会禁用所有的设备,那么你应该只启用你想要的那个,要知道你不可能有两个串行设备,因为只有一个 UART

该固件也可用于 I2C 外围设备。

  • COMPASS;
  • BARO;
  • AIRSPEED SENSOR;
  • NCP5623 LED。

4 DroneCAN适配器节点

有几个设备是专门为作为通用适配器节点使用而制造的: