CORVON CV0850 是一款紧凑型红外测距模块,基于直接飞行时间(dToF)原理实现近距测距。测量范围 20 mm 至 8 m,视场角窄至 <3°,测量频率 50 Hz,采用人眼安全的 940 nm 光源。最小光斑 20 mm,抗环境光能力强,适用于无人机定高、机器人与 AGV 避障,以及低功耗系统的接近感知。距离通过 UART 或 I²C 输出,可直接适配 PX4、INAV 与 ArduPilot。模块尺寸 20.0 × 16.5 × 6.7 mm,重量约 1.8 g。
| 产品型号 | CV0850 |
|---|---|
| 类型 | 红外测距模块(dToF) |
| 测量范围 | 20–8000 mm |
| 视场角(FOV) | < 3° |
| 测量精度 | ±3 cm @ <1 m · ±3% @ ≥1 m |
| 测量频率 | 50 Hz |
| 光源波长 | 940 nm |
| 最小光斑 | 20 mm |
| 抗环境光 | 8000 mm @ 350 lux · 4000 mm @ 100 klux |
| 工作电压 | 3.5–5.5 V |
| 工作电流 | ≤ 40 mA @ 5 V |
| 通信接口 | UART 115200 · I²C 最高 400 K |
| 工作环境温度 | 0°C – 60°C |
| 存储温度 | −20°C – 70°C |
| 尺寸 | 20.0 × 16.5 × 6.7 mm(±0.1 mm) |
| 重量 | 1.8 g |
| 固件支持 | PX4 · INAV · ArduPilot |
4-pin 连接器,UART / I²C 可选。UART 模式下模块 TX 接飞控 RX、模块 RX 接飞控 TX(115200 bps)。
| 引脚 | UART | I²C | 功能 |
|---|---|---|---|
| 1 | TX | SDA | UART 发送 / I²C 数据 |
| 2 | RX | SCL | UART 接收 / I²C 时钟 |
| 3 | VCC | VCC | 电源 · +5 V |
| 4 | GND | GND | 地 |
UART 输出协议
| 序号 | 名称 | 内容 | 说明 |
|---|---|---|---|
| 1 | 帧头 | 0xDF | |
| 2 | 设备 ID | 0x15 | |
| 3 | 系统 ID | 0x00 | |
| 4 | 消息 ID | 0x55 | |
| 5 | 包序号 | 0x00~0xFF | |
| 6 | 负载长度 | 0x0C | |
| 7 | 负载内容 | TOF 距离低字节 | TOF 距离 (mm) |
| 8 | TOF 距离高字节 | ||
| 9 | TOF 信号强度 | 0~100 | |
| 10 | 保留 | ||
| 11 | flow_x_integral 低字节 | X 像素位移随时间的积分(radians)。除以 10000 后乘以高度(mm),得到实际位移(mm)。 | |
| 12 | flow_x_integral 高字节 | ||
| 13 | flow_y_integral 低字节 | Y 像素位移随时间的积分(radians)。除以 10000 后乘以高度(mm),得到实际位移(mm)。 | |
| 14 | flow_y_integral 高字节 | ||
| 15 | integration_timespan 低字节 | 距上次光流数据的时间间隔(µs) | |
| 16 | integration_timespan 高字节 | ||
| 17 | valid | 状态:0=光流数据无效,245=光流数据有效 | |
| 18 | version | 光流模块版本号 | |
| 19 | 校验和 | 0xXX | 前面所有字节的和 |
输出协议:I2C(该 I2C 输出协议为专有协议,不支持开源使用。)
设备地址:0x31(7-bit)
| 序号 | 寄存器地址 | 内容 | 说明 |
|---|---|---|---|
| 1 | 0x00 | 设备 ID | 0x15 |
| 2 | 0x01 | TOF 距离低字节 | TOF 距离 (mm) |
| 3 | 0x02 | TOF 距离高字节 | |
| 4 | 0x03 | TOF 强度 | 0~100 |
| 5 | 0x04 | 保留 | |
| 6 | 0x05 | flow_x_integral 低字节 | X 像素位移随时间的积分(radians)。除以 10000 后乘以高度(mm),得到实际位移(mm)。 |
| 7 | 0x06 | flow_x_integral 高字节 | |
| 8 | 0x07 | flow_y_integral 低字节 | Y 像素位移随时间的积分(radians)。除以 10000 后乘以高度(mm),得到实际位移(mm)。 |
| 9 | 0x08 | flow_y_integral 高字节 | |
| 10 | 0x09 | integration_timespan 低字节 | 距上次光流数据的时间间隔(µs) |
| 11 | 0x0A | integration_timespan 高字节 | |
| 12 | 0x0B | valid | 状态:0=光流数据无效,245=光流数据有效 |
| 13 | 0x0C | version | 光流模块版本号 |
I. PX4 配置
1. 打开工具,选择 Vehicle Configuration;
2. 将 MAV_1_CONFIG 设置为 TELEM 2 并保存;
3. 点击 “Tools”,再点击 “Reboot Vehicle”;
4. 将 MAV_1_MODE 设置为 Normal 并保存;
5. 将 SER_TEL2_BAUD 设置为 115200 8N1 并保存;
6. 将 EKF2_RNG_CTRL 设置为 Enabled 并保存。
7. 将 EKF2_HGT_REF 设置为 Range sensor 并保存;
8. 配置完成后,重启飞控。进入 QGC 的 MAVLink Inspector 页面,应能看到 DISTANCE_SENSOR 和 OPTICAL_FLOW_RAD 消息;只要数值有变化即可。请注意,QGC 上显示的消息由飞控发送,消息频率并不等同于传感器的数据频率;该频率由飞控设置和数据链路速度决定,主要用于观察,消息频率数值本身并不重要。
II. APM 配置
1. 在 Mission Planner 中,将对应串口波特率 SERIAL4_BAUD 设置为 115(115200),将 SERIAL4_OPTIONS 设置为 0,并将串口协议 SERIAL4_PROTOCOL 设置为 1(Mavlink1)。点击 “Write Params” 保存;
2. 将光流 FLOW_TYPE 数值设置为 5 并保存;
3. 将 RNGFND1_TYPE 数值设置为 10 并保存;
4. 重启飞控,将 RNGFND1_MAX_CM 数值设置为 800,将 RNGFND1_MIN_CM 数值设置为 1,将 RNGFND1_ORIENT 数值设置为 25,并保存。
5. 在 status 页面中,可以看到 rangefinder1、opt_m_x、opt_m_y 和 opt_qua 的数值。
III. INAV 配置
1. 打开 Ports 界面,为对应串口启用 MSP 功能(此处连接的是 UART4),选择 115200 波特率,保存并重启。
2. 在 Configuration 界面中,将 Rangefinder 选项和 Optical flow 选项设置为 MSP,保存并重启。如果配置正确,可以看到主界面的 Sonar 指示灯和 Flow 指示灯点亮。
3. 在 CLI 界面中将 Debug 数据设置为 optical flow data;
set debug_mode = FLOW_RAW
输入 “save” 命令后会保存并重启。
4. 在 Sensors 界面中勾选 Sonar 选项和 Debug 选项;如果配置正确,可以看到波形和 X 数值发生变化。
感谢您选择 CORVON 产品。请仔细阅读本声明:使用本产品即表示您确认并同意以下内容。由于我们无法控制本产品的安装、使用与维护方式,对因使用本产品造成的任何损失或损害不承担任何责任,任何未经授权的改装均由您自行承担风险。
请保持光学窗口清洁无遮挡:灰尘、污渍或覆膜会降低测距精度。940 nm 光源虽对人眼安全,但请勿近距离长时间直视镜头。请将模块牢固安装、镜头正对目标表面,并按连接器正确接线与极性:接反或错接可能永久损坏模块。高反射、透明或强吸光表面会影响读数,正式用于飞行前请在实际环境中验证。