(1)(1.13) LightWare SF10/SF11激光雷达

文章目录

前言

[1 连接到自动驾驶仪](#1 连接到自动驾驶仪)

[2 测试传感器](#2 测试传感器)


前言

Lightware SF10 和 SF11 系列(Lightware SF10 and SF11)激光测距仪特别轻巧,可提供快速、精确的距离测量。虽然价格略高于其他测距仪,但开发团队成员在使用过程中取得了良好的效果。该系列包括多种型号: SF10/A(25m)、SF10/B(50m)、SF10/C(100m)和 SF11/C(120m)。


1 连接到自动驾驶仪

下图显示了传感器的输出引脚以及用于连接自动驾驶仪的彩色编码电缆(通常随附或参见此处的规格)(see spec here)。可以使用 SerialI2C 和模拟(Analog)连接,但我们建议尽可能使用串行(Serial)连接,尤其是使用 30cm 或更长的电缆时。

Tip

使用较长电缆时,建议使用串行连接。

SF10测距仪:输出引脚

用于SF10测距仪的主电缆

串行连接

对于串行连接,你可以使用任何备用 UART。将 UART 的 RX 线连接到激光雷达的 TX 线,再将 UART 的 TX 线连接到激光雷达的 RX 线。同时连接 GND 和 5V 线路。你不需要流量控制引脚。

下图显示了如何连接 SERIAL4。

Pixhawk 和 SF10测距仪:串行连接 (SERIAL4)

然后,你需要设置串行端口和测距仪参数。如果你使用的是 Pixhawk 上的 SERIAL4/5 端口,则需要为第一个测距仪设置以下参数(在任务规划器配置/调优 | 完整参数列表页面中完成):

  • SERIAL4_PROTOCOL = 9 (Lidar);
  • SERIAL4_BAUD = 115 (115200 baud);
  • RNGFND1_TYPE = 8 (LightWareSerial);
  • RNGFND1_SCALING = 1;
  • RNGFND1_MIN_CM = 5;
  • RNGFND1_MAX_CM = 2500(用于 SF10A)、5000(用于 SF10B)、10000(用于 SF10C)或 12000(用于 SF11C)。这是测距仪能够可靠读取的距离,单位为厘米。该值取决于激光雷达的型号;
  • RNGFND1_GNDCLEAR = 10或更精确,即飞行器着陆时测距仪到地面的距离(厘米)。该值取决于测距仪的安装方式。

如果你使用的是 Pixhawk 上的 Telem2 端口,则应设置 SERIAL2_PROTOCOL = 9 和 SERIAL2_BAUD = 115。

2018 年 5 月之前生产的 Lightware 激光雷达默认波特率为 19200。如果你的设备是在此日期之前生产的,则需要将波特率设置为 19200(参数值 19)。或者,你也可以使用 Lightware 终端应用程序重新配置 Lightware 设备,使用 115200 波特率,并使用上述设置。

I2C 连接

将激光雷达的 SDA 线连接到 Pixhawk I2C 端口的 SDA 线,将激光雷达的 SCL 线连接到 I2C 端口的 SCL 线。同时连接 GND 和 5V 线路。

Pixhawk 和 SF10 测距仪: I2C Connection

然后你需要配置测距仪参数,如下所示(在任务规划器配置/调优 | 完整参数列表页面完成):

  • RNGFND1_TYPE = 7 (LightWareI2C);
  • RNGFND1_ADDR = 102(激光雷达的 I2C 地址,十进制)。请注意,此设置为十进制,而不是激光雷达设置屏幕中显示的十六进制。默认地址为 0x66,十进制为 102;
  • RNGFND1_SCALING = 1;
  • RNGFND1_MIN_CM = 5;
  • RNGFND1_MAX_CM = 2500(用于 SF10A)、5000(用于 SF10B)、10000(用于 SF10C)或 12000(用于 SF11C)。这是测距仪能够可靠读取的距离,单位为厘米。该值取决于激光雷达的型号;
  • RNGFND1_GNDCLEAR = 10或更精确,即飞行器着陆时测距仪到地面的距离(厘米)。该值取决于测距仪的安装方式。

可能需要启用传感器的"I2C兼容模式(Pixhawk)"。具体方法是使用 USB 调试线将激光雷达连接到电脑,然后下载 Lightware Studio,连接并选中下图所示的复选框。

Warning

旧版 LightWare 测距仪的默认 I2C 地址为 85(十六进制 0x55)。为了防止与 ArduPilot 上的其他设备发生冲突,对该地址进行了更改。请检查测距仪系统设置以确定 I2C 地址。

模拟连接

SF10 的模拟输出引脚 (5) 应连接至 Pixhawk 的 3.3V ADC(模数转换器)。Pixhawk 将使用 ADC 连接器的 5V 和 GND 引脚提供传感器所需的稳压 5V 电源。

Pixhawk 和 SF10 测距仪:模拟连接

然后你需要设置 ADC 和测距仪参数,如下所示(在任务规划器配置/调优 | 完整参数列表页面完成):

  • RNGFND1_TYPE = 1 (Analog);
  • NGFND1_PIN = 14(3.3V ADC 连接器的第 2 个引脚);
  • RNGFND1_SCALING = 9.76(SF10A),19.531(SF10B),39.06(SF10C),46.87(SF11C);
  • RNGFND1_MIN_CM = 5;
  • RNGFND1_MAX_CM = 2000(用于 SF10A)、4500(用于 SF10B)、9500(用于 SF10C)或 11500(用于 SF11C)。这是测距仪能够可靠读取的距离,单位为厘米。该值取决于激光雷达的型号。请注意,与使用串行或 I2C 协议相比,该范围小 5m,因此可以可靠地检测到范围外的情况;
  • RNGFND1_GNDCLEAR = 10或更精确,即飞行器着陆时测距仪到地面的距离(厘米)。该值取决于测距仪的安装方式。

RNGFND1_SCALING 值取决于测距仪输出引脚在最大量程时的电压。默认情况下,SF10/B 将在 50m 处输出 2.56V 电压,因此缩放因子为 50m / 2.56v ≈ 19.53(每种测距仪的模拟测距范围可在 SF10 手册中找到)(SF10 Manual)。手册中说明了如何确认和更改最大输出范围/电压。

Tip

我们强烈建议你通过比较已知距离的输出来调整 RNGFND1_SCALING 值。

2 测试传感器

传感器读取的距离可在Mission Planner飞行数据屏幕的状态选项卡中查看。仔细查看"sonarrange"(声纳范围)。

相关推荐
[廾匸]1 小时前
cesium视频投影
javascript·无人机·cesium·cesium.js·视频投影
小白狮ww6 小时前
国产超强开源大语言模型 DeepSeek-R1-70B 一键部署教程
人工智能·深度学习·机器学习·语言模型·自然语言处理·开源·deepseek
时光追逐者7 小时前
推荐几款开源免费的 .NET MAUI 组件库
microsoft·开源·c#·.net·.net core·maui
IT猿手9 小时前
2025最新智能优化算法:鲸鱼迁徙算法(Whale Migration Algorithm,WMA)求解23个经典函数测试集,MATLAB
android·数据库·人工智能·算法·机器学习·matlab·无人机
【云轩】9 小时前
基于STM32与IFX007T的电机驱动全解析(无人机/机器人实战)
stm32·机器人·无人机
kcarly9 小时前
Safari 插件开发流程
开源
蚝油菜花11 小时前
HealthGPT:你的AI医疗助手上线了:支持X光到病理切片,诊断建议+报告生成全自动
人工智能·开源
不一样的信息安全13 小时前
开启开源新时代:DeepSeek引领人工智能技术开放化
人工智能·开源
QQ35967734513 小时前
Github开源AI LLM大语言模型WebUI框架推荐
人工智能·开源·github
说私域14 小时前
利用开源AI智能名片2+1链动模式S2B2C商城小程序构建企业私域流量池的策略与实践
大数据·人工智能·小程序·开源