(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"(声纳范围)。

相关推荐
冬奇Lab6 小时前
一天一个开源项目(第98篇):UI-TARS-Desktop - 字节跳动开源的多模态 GUI 代理栈
人工智能·开源·资讯
一直会游泳的小猫7 小时前
DocuSeal - 开源电子签名平台
开源·电子签·免费开源·自托管
扬帆破浪7 小时前
开源免费的WPS AI 软件 察元AI文档助手:链路 053:AIAssistantDialog 选区翻译的 streamChatCompletion
开源·wps
salipopl7 小时前
基于STM32平台的多旋翼无人机系统设计与实现
stm32·嵌入式硬件·无人机
沐曦股份MetaX11 小时前
沐曦股份 × 魔搭社区|开源实战挑战赛第一期正式开启
开源
码途漫谈15 小时前
Easy-Vibe高级开发篇阅读笔记(二十)——多平台开发之个人网页与博客开发
人工智能·笔记·ai·开源·ai编程
码途漫谈15 小时前
Easy-Vibe高级开发篇阅读笔记(二十一)——AI能力强化之RAG 与企业级智能客服
人工智能·笔记·ai·开源·ai编程
Hommy8816 小时前
【开源剪映小助手】媒体信息生成接口
开源·智能路由器·github·媒体·剪映小助手
sbjdhjd16 小时前
企业级 Docker 镜像仓库建设与运维规范
linux·运维·docker·云原生·容器·eureka·开源
文慧的科技江湖17 小时前
微电网核心平台 PRD 需求文档 - 慧知开源充电桩平台
开源·微电网·慧知开源虚拟电厂平台