CAN Compass – CAN接口RM3100电子罗盘模块

产品概述

YJUAV CAN Compass,支持DroneCAN or UAVCAN协议的电子罗盘系统。CAN总线通信方式,传输速率高达1Mbit/s。工业级电子罗盘传感器RM3100,优秀的抗干扰特性,确保精准的磁航向数据。

行业首例运行硬实时操作系统ThreadX,高效安全。完全适配开源飞控Ardupilot/PX4,接口定义符合Pixhawk硬件标准。金属CNC外壳材质。

产品特性

  • CAN通信,DroneCAN/UAVCAN通信协议,实时性强,80Hz输出频率;
  • 工业级地磁传感器RM3100,优秀的抗干扰特性;
  • 硬实时操作系统ThreadX,高效安全;
  • Pixhawk标准硬件接口定义;
  • 完全适配开源飞控Ardupilot/PX4;
  • 参数配置开关设备终端电阻,适应CAN总线设备挂载方式;

采购链接

YJUAV CAN Compass

规格参数

规格项参数值
处理器STM32F3 主频72Mhz
传感器工业级RM3100
实时系统ThreadX
数据速率80Hz
通信协议DroneCAN/UAVCAN
飞控类型Ardupilot/PX4
接口类型GHR-04V-S
工作电压5V
工作温度-40 to 85℃
尺寸23.2*19.2*12.5mm
重量8.2g

接口说明

根据接口线序接入到飞控硬件CAN通信接口即可。产品CAN通信接口符合Pixhawk硬件定义标准。

指示灯状态

  • 常亮状态 – 一直处于这个状态,表示系统存在异常,无法正常使用;
  • 慢速闪烁 – 没有与飞控CAN通信,需要配置;
  • 快速闪烁 – 设备正常稳定地输出数据;

使用说明

本模块可以在支持CAN接口和DroneCAN协议的飞控上使用,开源飞控支持Ardupilot固件和PX4固件;

将模块连接到飞控的CAN接口上,经过以下设置步骤即可正常使用;

模块安装

模块可使用双面胶粘贴的方式固定在无人机上,注意固定位置要远离电机、电调、电池等大功率用电设备,减少对模块的磁干扰;

注意:CAN Compass方向在外壳有标识。外置罗盘安装时,与飞控的机头方向选择可以是:0°,45°,90°,135°,180°,225°,270°,315°。

Ardupilot飞控

设置飞控参数

使用前,需要设置飞控打开了CAN总线功能,然后重启飞控;

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

查看飞控是否正常识别出CAN磁罗盘,查看步骤:初始设置 -> 必要硬件 -> 指南针。

磁罗盘列表中会多出一个UAVCAN类型的设备类型,即表示成功识别。如下图:

查看磁罗盘数据

在上位机的首页,打开“状态”选项卡,可以看到磁罗盘的数据,如果没有数据则代表设备工作不正常;

根据上面的磁罗盘列表里设备序号,找到对应磁罗盘的数据,如compass1对应的数据是mx、my、mz,即磁罗盘1的x、y、z三轴数据;

磁罗盘校准

校准前请注意磁罗盘模块要固定安装好,再点击“start”进行磁罗盘校准;

PX4飞控

设置飞控参数

使用前,需要设置飞控打开CAN总线功能,然后重启飞控;

UAVCAN_ENABLE = Sensors Automatic Config
UAVCAN_SUB_MAG = Enabled

注意:PX4固件运行需要确保SD卡已插入飞控里。

航向查看,按照校准方向,固定好外置罗盘、飞控位置。旋转飞机方向,航向按照正确方向运动即可。

注意:如果只单独旋转外置罗盘,而飞控不是一致的旋转,航向旋转正确,说明外置罗盘正常。航向数据看得会变得缓慢,这是因为PX4检测到当前外置罗盘与内置方向存在偏差大的情况导致的现象,不是异常情况。

查看罗盘数据

步骤1:进到Analyze Tools -> MAVLink Console。输入uavcan status命令,找到sensor mag部分文字内容。

文本表明在CAN1(channel 0)上检测到节点ID为125的罗盘,然后数据发布在SCALED_IMU2(instance 1)里。

步骤2:进到Analyze Tools -> MAVLink Inspector。默认只有一个外置罗盘的情况下,查看SCALED_IM2选项中的,xmag、ymag、zmag数值。

磁罗盘校准

校准前请注意磁罗盘模块要固定安装好,再点击“OK”进行磁罗盘校准;

模块内部参数

CAN罗盘模块内部的参数有以下三个:

参数名默认值参数值范围参数说明
CAN_HW_BAUD1000000100000、125000、250000、500000、800000、 1000000模块CAN接口通信波特率,默认为1Mbps(1000000);
CAN_HW_RES-1-1(自适应)、0(关闭)、1(打开)模块内部终端电阻开关与否,-1代表根据总线情况自适应终端电阻开关;
CAN_ID00~127设定模块ID,0代表由Dronecan协议自动分配ID;

CAN模块内部参数设置方法,请参考文章“DroneCAN模块查看及设置内部参数”;

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

电子罗盘高级设置

电子罗盘校准、电子罗盘优先级设置等等,请参考文章“电子罗盘校准及优先级设置“;