简介:
这是一款基于 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说明
接口说明
五、使用说明
- 上电前将此模块的 SWD 接口(SH1.0-4P 连接器)与 ST-LINK 相连,烧入编译好的测试固件后,重新上电即可开始测试。
- 将此模块的 CAN 接口(GH1.25-4P 连接器)与飞控的 CAN 接口相连,确保飞控连接 MP 地面站后,在 MP 地面站能够正常识别到此 DroneCAN 设备。
- 将 GPS 模块、磁力计、接收机、电调、蜂鸣器、灯带等设备接到相应的接口。
- 打开 MP 地面站,并进行如下参数设置。
- CAN_D1_PROTOCOL = 1
- CAN_P1_DRIVER = 1
- GPS_TYPE = 9 DroneCAN
- COMPASS_TYPEMASK DroneCAN (Unchecked)
- ARSPD_TYPE = 8 (DroneCAN)
- NTF_LED_TYPE -> DroneCAN (Checked)
5. 设置完参数之后,点击“写入参数”,之后上电重启飞控,将飞控与 DroneCAN 设备连接,并在 “必要硬件” -- “HW ID” 中读取到了 DroneCAN 设备 I2C2 端口上连接的磁力计 QMC5883L 。
6. 将 GPS 模块连接到 DroneCAN 设备的串行端口 USART3 上,GPS 定位成功。
六、备注
制作需要注意的几个地方:
- 复刻此项目难度适中,最小处采用0402封装,焊接有一定难度,需要非常好的耐心,以及较好的学习能力,能够通过不同的方式解决遇到的困难,包括但不限于焊接,刷写固件,合理使用固件。所以仅推荐可以熟练焊接贴片元器件且对PCB及元器件有一定了解的模友进行复刻,请充分考虑动手和解决问题能力之后再选择是否复刻。
- 供电电压的选择:该设备理论最高5.5V输入。
- 元器件的选型:需要根据输入电压进行滤波电容的选择(建议电容在立创商城购买,TB虚标现象泛滥)。
- 项目参考成本:25 RMB (不含PCB)。
- 开源协议:CC-BY-NC-SA 3.0,知识共享许可协议-署名-非商业使用-相同方式共享
- 本设计按原样提供,不提供任何形式的工作保障/售后保修,不对任何因产品设计、操作不当以及违反当地法律法规所造成的制作人、第三方人身财产资源损坏/损害的后果及连带责任负责。
七、测试视频
视频展示了如下功能:
1、MP地面站识别到此 DroneCAN 设备正常工作,与飞控正常通信。
2、将 GPS 模块连接到 DroneCAN 设备的串行端口 USART3 上,定位成功。
3、将磁力计 QMC5883L 连接到 DroneCAN 设备的 I2C2 端口上,识别成功。
点赞
描述
PCB
元件清单
原理图
附件
讨论