【EHub_tx1_tx2_A200】Ubuntu18.04 + ROS_ Melodic + 锐驰LakiBeam 1L单线激光 雷达评测

news2024/9/22 21:36:46

        大家好,我是虎哥,最近这段时间,又手欠入手了锐驰LakiBeam 1L激光雷达,实在是性价比太优秀,话说,最近激光雷达圈确实有点卷。锐驰官网的资料已经很丰富,我这里总结一下自己的简单测试经验,分享给大家。

         LakiBeam1L是锐驰智光面向中低速场景研发的单线激光雷达产品,拥有比 LakiBeam1更远的探测距离、更高的数据采样率和更高的角分辨率。工业设计精巧紧凑,使得产品体积小、重量轻、性能高,支持超高频采样和角分辨率可选择,探测距离内实现零盲区。

目录

​编辑

一、LakiBeam1L单线激光介绍

1.1 核心参数

1.2 主机接口

1.3 LakiBeam单线系列产品参数对比

二、WIN端测试配置

2.1 安装RBView过程

2.2 链接雷达

2.3 根据需要修改配置,一般改最多的就是IP信息

三、ROS下查看点云

3.1 建立工作空间

3.2 拷贝代码

3.3 编译源码包

3.4 将板子IP修改到和雷达同一个网段

3.5 修改ROS 驱动启动脚本中对应的信息

3.6 启动驱动

4.6 启动RVIZ查看点云

查看点云方法1:

查看点云方法2:


一、LakiBeam1L单线激光介绍

官网入口:LakiBeam 1L-锐驰智光 | RichBeam | 集成式激光雷达服务商

         LakiBeam1L可用于工业自动化、港口自动化等自动化领域,广泛应用于AGV避障可作为室内机器人的主激光和室外机器人的斜激光使用,用于建图和避障。

        LakiBeam系列产品是一款典型的基于脉冲飞行时间(pToF,pulsed Time of Flight)原理设计的激光雷达,产品内部由激光器,光电探测器,光学系统,计时器等组成。其测距的核心原理是通过激光器发射出一束脉冲激光并启动计时器,当激光照射到目标表面时会发生漫反射并返回到光电探测器,光电探测器接收到信号后将计时器停止,此时我们得到了激光接收到发射时刻的时间差,该时间就是光的飞行时间。用光速乘以光的飞行时间得到的就是光的飞行距离,从而计算出设备到测量目标的距离。

1.1 核心参数

  • 扫描原理 :机械旋转

  • 测距原理:脉冲TOF

  • 探测距离:≥40m@70%反射率;≥20m@10%反射率

  • 水平视场角:270°

  • 数据采样率:43.2kHz

  • 水平角分辨率及对应旋转频率:10Hz/0.1°; 25Hz/0.25°;20Hz/0.25°;30Hz/0.25°

  • 数据传输方式 :UDP/IP(百兆以太网)

  • 数据输出 :距离、角度、回波强度、时间

  • 波长 :940nm

  • 防护等级 :IP65

  • 工作电压 :9~36V

  • 工作温度 :(-25°~60°)

1.2 主机接口

LakiBeam系列产品电缆接口的具体连接定义如下:

1.3 LakiBeam单线系列产品参数对比

二、WIN端测试配置

在WIN端测试激光雷达和配置激光雷达,需要安装官方提供的RBView软件。其资源获取位置为:下载中心-锐驰智光 | RichBeam | 集成式激光雷达服务商

  

2.1 安装RBView过程

2.2 链接雷达

        LakiBeam1(L)在上电后就开始进行工作,开始数据的采集与传输。雷达出厂默认的网络设置为静态模式,其中雷达 IP 地址为 192.168.198.2,子网掩码 255.255.255.0。电脑(或其他连接雷达的设备)的 IP 地址为 192.168.198.1,端口号为 2368。

修改自己电脑,链接雷达网口的固定IP:

 然后打开软件:

 配置雷达信息

 然后打开数据传输:

链接网络后就可以看到点云了

表格形式查看数据:

2.3 根据需要修改配置,一般改最多的就是IP信息

        LakiBeam 雷达修改配置信息,是采用WEB网页的形式,雷达内置了一个关了配置网页。浏览器地址栏输入对应的雷达IP地址即可。

 我们最常用的就是修改IP:

 找到网络管理:

 尝试修改IP:我们尝试将IP修改为192.168.9.2,记得不要用8网段,因为8网段是给USB接口的雷达预留的。

 需要注意的是更改网络配置后必须对设备进行重启操作,新的网络配置信息将在下一次启动时自动应用。所以我们给雷达重新上电

意也罢我们电脑链接雷达的网卡IP修改到9网段。

 我们可以再打开网页看看:

 接下来,我们就需要在ROS1内,对接雷达驱动了。

三、ROS下查看点云

上面WIN端,我们修改了IP信息,这里将雷达网口和测试主板链接到一起。ROS下的驱动官网既可以下载到。

3.1 建立工作空间

mkdir -p ~/LakiBeam_ws/src
cd ~/LakiBeam_ws/
catkin_make
source devel/setup.bash

3.2 拷贝代码

cd ~/LakiBeam_ws/src
#将官网地址的代码包放置到这个目录解压
unzip Lakibeam1-ROS1-master.zip 
#移动修改一下文件包
mv Lakibeam1-ROS1-master/lakibeam1_ros_v1_0_0 ./

3.3 编译源码包

cd ~/LakiBeam_ws
catkin_make --pkg lakibeam1

 编译完成。

3.4 将板子IP修改到和雷达同一个网段

我是将雷达直接连到板子网口的,所以对应网口IP我需要设置一个固定IP。雷达IP,见2.3.

板子IP:

 可以ping通雷达。

 雷达和板子已经在同一个网段了。

3.5 修改ROS 驱动启动脚本中对应的信息

刚才我们根据需要已经修改了IP,接下来我们测试,需要使用脚本启动,需要修改脚本的对应IP信息。

cd ~/LakiBeam_ws/src/lakibeam1_ros_v1_0_0/launch

 lakibeam1_scan.launch 脚本原始内容是:

<?xml version="1.0"?>
  
<launch>
    <node name="richbeam_lidar" pkg="lakibeam1" type="lakibeam1_scan_node" output="screen">
    <remap from="/richbeam_lidar/scan" to="/scan" />
        <param name="frame_id" type="string" value="laser"/><!--frame_id设置-->
        <param name="output_topic" type="string" value="scan" /><!--topic设置-->
        <param name="inverted" type="bool" value="false"/><!--配置是否倒装,true倒装-->
        <param name="hostip" type="string" value="0.0.0.0"/><!--配置本机监听地址,0.0.0.0表示监听全部-->
        <param name="sensorip" type="string" value="192.168.198.2"/><!--配置sensor地址-->
        <param name="port" type="string" value="2368"/><!--配置本机监听端口-->
        <param name="angle_offset" type="int" value="0"/><!--配置点云旋转角度,可以是负数-->
​
        <param name="scanfreq" type="string" value="30" /><!--配置扫描频率,范围:10、20、25、30-->
        <param name="filter" type="string" value="3" /><!--配置滤波选项,范围:3、2、1、0 -->
        <param name="laser_enable" type="string" value="true" /><!--雷达扫描使能,范围:true、false-->
        <param name="scan_range_start" type="string" value="45" /><!--雷达扫描起始角度,范围:45~315-->
        <param name="scan_range_stop" type="string" value="315" /><!--雷达扫描结束角度,范围:45~315,结束角度必须大于起始角度-->
    </node>
</launch>
修改其中的IP至,雷达实际IP。其它可以先不动。

 保存退出后我们就可以开始测试了。

3.6 启动驱动

cd ~/LakiBeam_ws
source devel/setup.bash
#启动驱动
roslaunch lakibeam1 lakibeam1_scan.launch

 新启动一个终端,我们可以初步看看驱动的一些节点信息:

rosnode list
/richbeam_lidar
/rosout
​
rosnode info /richbeam_lidar
--------------------------------------------------------------------------------
Node [/richbeam_lidar]
Publications: 
 * /rosout [rosgraph_msgs/Log]
 * /scan [sensor_msgs/LaserScan]
​
Subscriptions: None
​
Services: 
 * /richbeam_lidar/get_loggers
 * /richbeam_lidar/set_logger_level
​
​
contacting node http://nvidia-desktop:34381/ ...
Pid: 23720
Connections:
 * topic: /rosout
    * to: /rosout
    * direction: outbound (56409 - 127.0.0.1:38770) [9]
    * transport: TCPROS
​
        
rostopic echo /scan
--------------------------------------------------------------------------------
    header: 
      seq: 2722
      stamp: 
        secs: 1683724227
        nsecs: 406509496
      frame_id: "laser"
    angle_min: -3.14159274101
    angle_max: 3.14159274101
    angle_increment: 0.00436332309619
    time_increment: 2.35379829974e-05
    scan_time: 0.0338946953416
    range_min: 0.0
    range_max: 100.0
    ranges: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0】

4.6 启动RVIZ查看点云

查看点云方法1:

保持驱动是启动的情况下。我们使用nomachine链接到桌面,然后使用官方设置好的配置文件查看点云。

cd ~/LakiBeam_ws
source devel/setup.bash
#修改一下配置文件lakibeam1_scan_view.launch中的IP
#启动驱动 记得关闭之前打开的节点 这个节点会再打开一遍节点
roslaunch lakibeam1 lakibeam1_scan_view.launch

修改后:

<?xml version="1.0"?>
  
<launch>
    <node name="richbeam_lidar" pkg="lakibeam1" type="lakibeam1_scan_node" output="screen">
    <remap from="/richbeam_lidar/scan" to="/scan" />
        <param name="frame_id" type="string" value="laser"/><!--frame_id设置-->
        <param name="output_topic" type="string" value="scan" /><!--topic设置-->
        <param name="inverted" type="bool" value="false"/><!--配置是否倒装,true倒装-->
        <param name="hostip" type="string" value="0.0.0.0"/><!--配置本机监听地址,0.0.0.0表示监听全部-->
        <param name="sensorip" type="string" value="192.168.9.2"/><!--配置sensor地址-->
        <param name="port" type="string" value="2368"/><!--配置本机监听端口-->
        <param name="angle_offset" type="int" value="0"/><!--配置点云旋转角度,可以是负数-->
​
        <param name="scanfreq" type="string" value="30" /><!--配置扫描频率,范围:10、20、25、30-->
        <param name="filter" type="string" value="3" /><!--配置滤波选项,范围:3、2、1、0 -->
        <param name="laser_enable" type="string" value="true" /><!--雷达扫描使能,范围:true、false-->
        <param name="scan_range_start" type="string" value="45" /><!--雷达扫描起始角度,范围:45~315-->
        <param name="scan_range_stop" type="string" value="315" /><!--雷达扫描结束角度,范围:45~315,结束角度必须大于起始角度-->
    </node>
    <node name="rviz" pkg="rviz" type="rviz" args="-d $(find lakibeam1)/rviz/lakibeam1_scan.rviz" />
</launch>

查看点云方法2:

打开一个终端,打开扫描节点,:

cd ~/LakiBeam_ws
source devel/setup.bash
#启动驱动
roslaunch lakibeam1 lakibeam1_scan.launch

 我们再使用nomachine链接到桌面,然后打开终端,启动RVIZ。

rosrun rviz rviz

 此时是一个空白的rviz,需要做一下话题配置。

 增加激光扫描插件。

 修改话题。

 这两个地方对应改了,确定后这样就可以看到激光数据了。

纠错,疑问,交流: 911946883@qq.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/511020.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

挑战14天学完Python---

抛弃了数学思维,引入了计算思维,计算思维是抽象和自动化相结合的结果 抽象:抽象问题的形式化逻辑 自动化:将抽象的结果通过程序自动实现 0.1在计算机内部转二进制 0.1转二进制 二进制的0.1与二进制0.2计算 结果再转十进制 在众多编程语言中 ,只有Python语言提供了复数类型.空间…

OpenCL编程指南-1.2OpenCL基本概念

OpenCL概念基础 面向异构平台的应用都必须完成以下步骤&#xff1a; 1&#xff09;发现构成异构系统的组件。 2&#xff09;探查这些组件的特征&#xff0c;使软件能够适应不同硬件单元的特定特性。 3&#xff09;创建将在平台上运行的指令块&#xff08;内核)。 4&#xff09…

紧跟 AI 步伐, Gitee 已支持 AI 模型托管

AI 时代已经来了&#xff01; 现在&#xff0c;越来越多的企业和个人开始使用 AI 技术来解决各种问题。想要了解 AI&#xff0c;那么就一定要了解 AI 模型&#xff0c;作为 AI 的核心技术之一&#xff0c;AI 模型为各种进阶的人工智能应用奠定了基础&#xff0c;从 ChatGPT 、…

Mysql 存储过程+触发器+存储函数+游标

视图&#xff08;view&#xff09; 虚拟存在的表&#xff0c;不保存查询结构&#xff0c;只保存查询的sql逻辑 语法 存储过程 实现定义并存储在数据库的一段sql语句的集合&#xff0c;可减少网络交互&#xff0c;提高性能&#xff0c;代码复用,内容包括&#xff1a;变量&am…

并发编程进阶

并发编程进阶 文章目录 并发编程进阶一、JMM1. JMM的定义&#xff1a;2. 内存屏障&#xff1a; 三. volatile四. as-if-serial五. happens-before六. 缓存一致性&#xff08;Cache coherence&#xff09;7. Synchronized1. synchronized 的使用2. synchronized底层原理 8. Conc…

Web3.0介绍与产业赛道(去中心化,金融与数字资产,应用与存储,区块链技术)

文章目录 1、web3.0时代——区块链技术2、产业赛道&#xff1a;去中心化金融与数字资产3、产业赛道&#xff1a;去中心化应用与存储4、区块链&#xff1a;基础设施与区块链安全和隐私 1、web3.0时代——区块链技术 Web3.0是什么 Web3.0是指下一代互联网技术&#xff0c;它将在…

最优化理论-线性规划的标准形

目录 一、引言 二、线性规划的标准形 1. 线性规划的定义 2. 线性规划的标准形 3. 线性规划的约束条件 三、线性规划的求解方法 1. 单纯形法 2. 内点法 3. 割平面法 四、线性规划的应用 1. 生产计划 2. 运输问题 3. 投资组合问题 五、总结 一、引言 最优化理论是…

数据链路层及其重要协议——以太网

文章目录 数据链路层前言1. 以太网协议2. MTU&#xff08;传输的限制&#xff09;3. ARP协议 数据链路层 前言 以太网&#xff1a; 不是一种具体的网络&#xff0c;而是一种技术标准。既包含了数据链路层的内容&#xff0c;也包含了一些物理层的内容&#xff0c;例如&#xf…

网络层——IP协议详细解读

文章目录 IP协议1. IP协议的报文格式2. IP协议的地址管理3. IP地址的组成4. IP协议的路由选择 IP协议 之前介绍了传输层的重点协议&#xff0c;TCP和UDP协议&#xff0c;以下将介绍网络层的重点协议IP协议。 1. IP协议的报文格式 IP地址 本质上是一个32位整数&#xff0c;在…

华为OD机试真题 Java 实现【不爱施肥的小布】【2023Q2】

一、题目描述 某农村主管理了一大片果园&#xff0c;fields[i]表示不同国林的面积&#xff0c;单位m2&#xff0c;现在要为所有的果林施肥且必须在n天之内完成&#xff0c;否则影响收成。小布是国林的工作人员&#xff0c;他每次选择一片果林进行施肥&#xff0c;且一片国林施…

【Linux初阶】环境变量 | 如何设置、获取环境变量?

&#x1f31f;hello&#xff0c;各位读者大大们你们好呀&#x1f31f; &#x1f36d;&#x1f36d;系列专栏&#xff1a;【Linux初阶】 ✒️✒️本篇内容&#xff1a;讨论为什么指令作为一个可执行程序不需要加 ./运行&#xff1b;环境变量为什么会自己恢复&#xff1b;环境变量…

Acwing456. 车站分级

一条单向的铁路线上&#xff0c;依次有编号为 1, 2, …, n的 n 个火车站。 每个火车站都有一个级别&#xff0c;最低为 1 级。 现有若干趟车次在这条线路上行驶&#xff0c;每一趟都满足如下要求&#xff1a;如果这趟车次停靠了火车站 xx&#xff0c;则始发站、终点站之间…

【网络】-- 数据链路层

应用层&#xff08;http、https&#xff09;&#xff1a; 数据的使用。传输层&#xff08;UDP、TCP&#xff09;&#xff1a;网络通讯的细节&#xff0c;将数据可靠的从A主机跨网络送到B主机。网络层&#xff08;IP&#xff09;&#xff1a;提供一种能力&#xff0c;将数据从A主…

Real-ESRGAN:Training Real-World Blind Super-Resolution with Pure Synthetic Data

https://github.com/NightmareAI/Real-ESRGAN/tree/masterhttps://github.com/NightmareAI/Real-ESRGAN/tree/master从SRCNN到EDSR&#xff0c;总结深度学习端到端超分辨率方法发展历程 - 知乎超分辨率技术&#xff08;Super-Resolution, SR&#xff09;是指从观测到的低分辨率…

设计模式MVC、MVP、MVVM

MVC、MVP和MVVM是什么&#xff1f; MVC&#xff1a;Model-View-Controller&#xff0c;是一种分层解偶的框架&#xff0c;Model层提供本地数据和网络请求&#xff0c;View层处理视图&#xff0c;Controller处理逻辑&#xff0c;存在问题是Controller层和View层的划分不明显&am…

SpringBoot+@Validate+全局异常拦截实现自定义规则参数校验(校验get请求参数不能为空且在指定枚举类型中)

场景 SpringBootValidated实现参数验证(非空、类型、范围、格式等)-若依前后端导入Excel数据并校验为例&#xff1a; SpringBootValidated实现参数验证(非空、类型、范围、格式等)-若依前后端导入Excel数据并校验为例_validated 怎么设置boolean类型非空_霸道流氓气质的博客-…

Elasticsearch02

目录 Elasticsearch02DSL查询文档查询所有全文检索查询精确查询地理查询复合查询 搜索结果处理排序分页高亮 DSL总结RestClient查询文档快速入门:match_all查询match查询精确查询布尔查询排序、分页高亮 实战案例HotelControllerIHotelServiceHotelMapperHotelHotelDocPageResu…

Google SEO优化的10大误区

以下是 Google SEO 优化的十大误区&#xff1a; 1、关键词堆砌&#xff1a; 过度使用关键词&#xff0c;使得内容不自然&#xff0c;难以阅读&#xff0c;同时也会被搜索引擎认为是垃圾信息&#xff0c;影响网站排名。 2、内容质量差&#xff1a; 质量差的内容会降低用户的体…

矩池云上配置FusionGan环境

1、租赁环境 2、vscode 连接 矩池云 教程&#xff1a;https://www.matpool.com/supports/doc-vscode-connect-matpool/ 3、进入mnt文件夹 cd ../mnt 4、克隆代码 git clone https://github.com/jiayi-ma/FusionGAN.git 如果克隆不下来&#xff0c;就自己下载&#xff0c;…

ESP32 DW1000 UWB 室内定位系统

相关软件代码下载》》 概述 在这个项目中,我们将制作一个基于 ESP32 DW1000 UWB 的室内定位系统。为此,我们将使用 2 个 UWB 锚点和 1 个 UWB 标签。当标签移动时,UWB 标签的实时位置可以使用Python 程序在PC 上以图形方式显示。 工业环境中的室内跟踪通常需要非常精确的…