This website requires JavaScript.
发布

DroneCAN 模块

崑kun
发布于2025-02-22 17:25:42
CC BY-NC-SA协议 分类: 侵权投诉
销量: 0
0
0
0
简介:

这是一款基于 ArudPilot AP_Periph 固件的适配器节点。 借助这块电路板,利用 ArduPilot 驱动程序库,将 ArduPilot 支持的 GNSS(全球导航卫星系统)、磁力计、以及基于 GPIO的外设转换为 DroneCAN 总线外设。

应用场景:

无人机的导航与定位、无人机的飞行控制与数据传输、无人机的传感器扩展

一、产品简介


  • 这是一款基于 ArudPilot AP_Periph 固件的适配器节点。
  • 借助这块电路板,你可以轻松利用 ArduPilot 驱动程序库,将 ArduPilot 支持的 GNSS(全球导航卫星系统)、磁力计、以及基于 GPIO(通用输入输出)的(PWM 、蜂鸣器 、LED )外设转换为 DroneCAN 总线外设。


  • CAN-L431 is an Adapter Node based on ArudPilot AP_Periph firmware.
  • With this board, you can easily utilize the ArduPilot driver library to convert ArduPilot supported GNSS, Compass, Barometer, and GPIO based (PWM, Buzzer/LED notify) peripherals to DroneCAN bus peripherals.


二、应用场景


  • 无人机的导航与定位
  • 无人机的飞行控制与数据传输
  • 无人机的传感器扩展


三、产品概述


  • 导航与定位 :可以将 GPS 模块连接到 DroneCAN 适配器的串行端口上,并通过设置相应的参数,使其与飞行控制器协同工作,为无人机提供精确的定位信息,实现自主导航和精准飞行。
  • 飞行控制与执行 :通过将 PWM 或 DShot 输出节点连接到适配器,可以实现对无人机电机和伺服的精确控制。可用作 PWM 和 DShot 输出节点,为无人机提供额外的伺服输出,甚至允许电调和伺服使用 CAN 总线进行远程通信,远离飞行控制器。
  • 传感器扩展 :可以连接多种传感器,如:磁力计、气压计、空速计等为无人机提供更多的飞行数据,增强其飞行性能和安全性。
  • 可靠性高 :采用差分信号传输,具有较强的抗干扰能力,能在电磁干扰较强的环境中稳定工作,确保数据传输的准确性。具有错误检测和处理机制,如帧格式错误、位错误、CRC 错误等,能够及时发现并处理错误,保证通信的可靠性。
  • 实时性好 :通信速率较高,最高可达 1Mbps,在实时性要求较高的飞行控制系统中表现出色。


四、产品参数


物理特性

  • 电路板尺寸 :36mm×18.5mm×6mm,重量 3.7g。
  • CAN 接口连接器 :1个 GH1.25-4P 连接器,用于 CAN 的接口。
  • UART3+I2C 接口连接器 :1 个SH1.0 - 6P 连接器,用于 UART3 和 I2C2 的接口。
  • SPI 接口连接器 :1 个 SH1.0 - 6P 连接器,用于 SPI1 的接口。
  • USART 接口连接器 :2 个 SH1.0 - 4P 连接器,用于 USART1、USART2 的接口。
  • PWM输出接口连接器 :1 个 SH1.0 - 4P 连接器,用于 PWM 输出的接口。
  • 蜂鸣器\灯带接口连接器 :1 个 SH1.0 - 4P 连接器,用于 连接蜂鸣器、灯带的接口。
  • SWD接口连接器 :1 个 SH1.0 - 4P 连接器,用于连接 ST-LINK 烧录固件的接口。


规格参数

  • 微控制器单元(MCU) :STM32L431CCT6,256KB 闪存。
  • CAN 收发器数据速率 :最高可达 1Mbit/s。
  • CAN 接口 :1 个 CAN 接口,采用 DroneCAN 协议(1 个 GH1.25 - 4P 连接器)。
  • UART 接口 :3 个 UART 接口。
  • UART1:备用。
  • UART2:默认 MSP(微型系统协议)。
  • UART3:默认连接 GPS。
  • I2C 接口 :1 个 I2C 接口。
  • 用于连接外围 QMC5883L 指南针。
  • 用于连接外围空速传感器。
  • 用于连接外围气压计。
  • SPI 接口 :1 个 SPI 接口,用于连接外围 RM3100 传感器。
  • PWM 输出 :5 个 PWM 输出通道。
  • GPIO(通用输入输出引脚) :1 个 GPIO 引脚,带有 TIM16 定时器,用于连接蜂鸣器。
  • 调试接口 :SWD 调试接口,包括 SWCLK(串行时钟)和 SWDIO(串行数据输入输出)引脚。
  • LED 指示灯
  • 蓝色 LED:快速闪烁,表示设备正在启动;慢速闪烁,表示设备正常工作。
  • 红色 LED:3.3V 电源指示灯。
  • 输入电压范围 :4.5V - 5.5V。
  • 功耗 :40mA。
  • 工作温度范围 :- 20°C - 80°C。


固件相关

  • 固件版本 :ArduPilot AP_Periph ,详见附件“ArudPilot AP_Periph固件”。
  • 固件更新方式 :通过 DroneCAN GUI(图形用户界面)工具进行固件更新。


PCB说明

DroneCAN 模块硬件项目图1


DroneCAN 模块硬件项目图2


接口说明

DroneCAN 模块硬件项目图3


五、使用说明


  1. 上电前将此模块的 SWD 接口(SH1.0-4P 连接器)与 ST-LINK 相连,烧入编译好的测试固件后,重新上电即可开始测试。
  2. 将此模块的 CAN 接口(GH1.25-4P 连接器)与飞控的 CAN 接口相连,确保飞控连接 MP 地面站后,在 MP 地面站能够正常识别到此 DroneCAN 设备。
  3. 将 GPS 模块、磁力计、接收机、电调、蜂鸣器、灯带等设备接到相应的接口。
  4. 打开 MP 地面站,并进行如下参数设置。


  • CAN_D1_PROTOCOL = 1

DroneCAN 模块硬件项目图4


  • CAN_P1_DRIVER = 1

DroneCAN 模块硬件项目图5


  • GPS_TYPE = 9 DroneCAN

DroneCAN 模块硬件项目图6


  • COMPASS_TYPEMASK DroneCAN (Unchecked)
  • ARSPD_TYPE = 8 (DroneCAN)
  • NTF_LED_TYPE -> DroneCAN (Checked)



5. 设置完参数之后,点击“写入参数”,之后上电重启飞控,将飞控与 DroneCAN 设备连接,并在 “必要硬件” -- “HW ID” 中读取到了 DroneCAN 设备 I2C2 端口上连接的磁力计 QMC5883L 。

DroneCAN 模块硬件项目图7


6. 将 GPS 模块连接到 DroneCAN 设备的串行端口 USART3 上,GPS 定位成功。

DroneCAN 模块硬件项目图8


六、备注


 制作需要注意的几个地方:

  1. 复刻此项目难度适中,最小处采用0402封装,焊接有一定难度,需要非常好的耐心,以及较好的学习能力,能够通过不同的方式解决遇到的困难,包括但不限于焊接,刷写固件,合理使用固件。所以仅推荐可以熟练焊接贴片元器件且对PCB及元器件有一定了解的模友进行复刻,请充分考虑动手和解决问题能力之后再选择是否复刻。
  2. 供电电压的选择:该设备理论最高5.5V输入。
  3. 元器件的选型:需要根据输入电压进行滤波电容的选择(建议电容在立创商城购买,TB虚标现象泛滥)。
  4. 项目参考成本:25 RMB (不含PCB)。
  5. 开源协议:CC-BY-NC-SA 3.0,知识共享许可协议-署名-非商业使用-相同方式共享
  6. 本设计按原样提供,不提供任何形式的工作保障/售后保修,不对任何因产品设计、操作不当以及违反当地法律法规所造成的制作人、第三方人身财产资源损坏/损害的后果及连带责任负责。 


七、测试视频

视频展示了如下功能:

1、MP地面站识别到此 DroneCAN 设备正常工作,与飞控正常通信。

2、将 GPS 模块连接到 DroneCAN 设备的串行端口 USART3 上,定位成功。

3、将磁力计 QMC5883L 连接到 DroneCAN 设备的 I2C2 端口上,识别成功。



无人机 AP_Periph CAN Node DroneCAN
最近更新时间 2025-02-22 17:25:42
描述
PCB
元件清单
原理图
附件
讨论