CAN模块接口配置

概要

飞控需要设置CAN接口参数,打开对应CAN接口,以识别外部CAN模块设备。

有些CAN模块存在一些内部参数,这些参数可以配置CAN模块的功能。

Ardupilot飞控

使用Mission Planner地面站软件进行参数设置

设置飞控参数

连接飞控,打开地面站页面(配置/调试->全部参数表),搜索并设置以下参数,并在提示成功写入参数后重新启动飞控。

一般飞控有两路CAN总线,CAN1 or CAN2。按照飞控对应CAN接口标识连接CAN模块设备,并设置对应参数,即可与外设CAN设备正常通信。

//CAN1接口
CAN_P1_DRIVER = 1
CAN_D1_PROTOCOL = 1
//CAN2接口
CAN_P2_DRIVER = 1
CAN_D2_PROTOCOL = 1

设置完飞控参数后,重启飞控;

设置CAN模块参数

如果不需要修改CAN模块内部参数或者不需要查看CAN模块的数据,就不需要执行下面操作。

连接CAN模块

连接方法一,Mission planner地面站1.3.8以上版本,可以使用MAVlink方式查看DroneCAN的外设列表,无需设置飞控参数。

通过USB或数传方式连接地面站,打开页面(初始设置->可选硬件->DroneCAN/UAVCAN)。

选择MAVlink-CAN1或MAVlink-CAN2,即可查看到对应CAN总线上挂载的模块设备。

飞控会自动扫描对应CAN总线上的模块设备,扫描结果会呈现一张设备列表,点击对应的设备Menu按钮,可以进行数据查看、参数查看、参数修改、固件升级等操作。

连接方法二,使用SLCAN功能连接CAN模块;

通过USB方式连接地面站,设置以下参数,打开SLCAN功能,即可将CAN1/CAN2接口映射成USB端口。

//映射CAN1接口
CAN_SLCAN_CPORT = 1
SERIAL7_PROTOCOL = 22
//映射CAN2接口
CAN_SLCAN_CPORT = 2
SERIAL7_PROTOCOL = 22

飞控断电重启,重新连接地面站时,需要选择含SLCAN字符的串口,此时不用点击连接。

打开地面站页面(初始设置->可选硬件->DroneCAN/UAVCAN),点击SLCan Direct按钮。

飞控会自动扫描对应CAN总线上的模块设备,扫描结果会呈现一张设备列表,点击对应的设备Menu按钮,可以进行数据查看、参数查看、参数修改、固件升级等操作。

参数设置

在设备列表中找到对应的CAN模块设备,点击Menu->Parameters。

打开参数设置窗口后,可以在此进行CAN模块的内部参数设置,修改完参数后,应点击写入参数以保存参数。

查看数据

点击页面内的Inspector按钮,找到对应的CAN模块设备,即可查看CAN总线上各个设备的实时数据。

PX4飞控

使用QGoundControl地面站软件进行参数设置

设置飞控参数

飞控参数配置,设置完下面参数后重新上电。

UAVCAN_ENABLE = Sensors Automatic Config

设置CAN模块参数

进到Vehicle Setup -> Parameters选项,参数拉到最后,可以看到CAN设备。

例如样例中是Component 125(分配125节点),点击展开可以看到设备参数,点击即可进行参数修改。

注意:目前PX4固件对于所有CAN外设,只有CAN1口才能修改设备本身参数,接入到CAN2口的无法设置。