【8210A-TX2】Ubuntu18.04 + ROS_ Melodic + TM-16多线激光 雷达评测

简介:介绍 TM-16多线激光雷达 在8210A载板,TX2核心模块环境(Ubuntu18.04)下测试ROS驱动,打开使用RVIZ 查看点云数据,本文的前提条件是你的TX2里已经安装了ROS版本:Melodic。

        大家好,我是虎哥,最近有感于国内激光雷达真是越做越好,所以尝试导入天眸的TM-16雷达,这是一款机械式16线激光雷达,国内速腾、万集、镭神都有做,但是天眸这一款依然有很好的性价比,所以拿到货第一时间亲自做做接入适配测试,总结一下自己的简单测试经验,分享给大家。

        TM16线机械式激光雷达,内部16组激光收发对可进行360°旋转,形成3D点云图。大探测距离是150米,垂直可视范围是30°,水平可视范围为360°,垂直角度分辨率为2°。是全球首款能在酷寒地区工作的16线激光雷达,-40C°可瞬间启动,无需辅助加热。由于性能优异和超高性价比,广泛应用于无人配送机器人,无人巡检机器人,清扫机器人,无人小巴等多种低速无人车等领域。

        EdgeBox-8120AI-TX2控制器是基于nvidia Jeston TX2核心模块,最大功耗不超过10W,具备最多6个CPU核心,单核主频最高可以2.0Ghz。具有丰富的功能接口,可满足不同行业的产品定制需求。

        提供4路独立的千兆网口,设计接口:RS232/RS485/RS422多功能串口, USB3.0X2,HDMI OUT、WIFI、CAN 接口。整体尺寸153mmX102mm,为小体积集成提供便利。

目录

一、WLR-720机械式16 线激光雷达介绍

1.1 主要特点

1.2 线束分布数据

1.3安装尺寸

1.4 电源适配盒

二、WIN端VanJeeView测试配置

2.1 配置电脑IP信息

2.2 打开软件

2.3 链接雷达

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

2.5修改后WIN端IP测试验证

三、ROS下接入测试

3.1 将板子IP修改到和雷达要求的目的IP

3.1 建立工作空间

3.2 拷贝代码

3.3 编译源码包

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

3.6 启动驱动

四、总结


一、WLR-720机械式16 线激光雷达介绍

 

1.1 主要特点

  • 波长:905nm

  • 线数:16线(相同外形尺寸,4线 、8线可定制)

  • 测距方式:脉冲式

  • 激光器等级:Class 1人眼安全

  • 玻璃探测能力:可探测透明玻璃(可选配)

  • 回波模式:单回波和双回波(模式可选)

  • 点频:320,000(单回波)和640,000(双回波)

  • 小探测距离:0.2m

  • 大探测距离:150m (at 30% reflectivity)

  • 旋转频率:5Hz/10Hz/20Hz

  • 水平可视范围:360°

  • 垂直可视范围:30°( -15° ~+15° )

  • 水平角度分辨率:0.09°( 5Hz) 、0.18°( 10Hz) 、0.36°( 20Hz)

  • 垂直角度分辨率:2°

  • 测距精度:±2cm(大于0.5m); ±5cm (0.2m~0.5m)

  • 数据传输方式:UDP/IP Ethernet(100Mbps)

  • 工作电压:+12V~+36V

  • 功耗:典型值8W

  • 工作温度:-40°C~+85°C

  • 保护等级:IP67

  • 尺寸(HD):≤( 84mmΦ102mm)

  • 重量:重量≤860g(机载机型≤650g)

1.2 线束分布数据

        TM-16的垂直方位角为-15°~+15°,1 到 16 发光通道在垂直方向间隔 2°从上到下均匀分布,16 路发光通道与垂直角度映射关系如图 1.1 所示。

1.3安装尺寸

        在φ96 的分度圆上打 4 个通孔装 M4 的螺钉, 为确保雷达的零位, 可配合使用φ4 的限位孔和限位槽。或使用中心位置的 1/4-20 的英制螺纹孔(使用螺钉 1/4-20 的英制螺钉) , 配合使用φ4 的限位孔和限位槽。

1.4 电源适配盒

        个人一直觉得这个盒子配的有点鸡肋,但是在刚入手测试的时候确实可以方便不少,而且有很多家也都是这么做的,估计大家应该也是有互相兼容的考虑吧。

二、WIN端VanJeeView测试配置

        TMViewer 提供将 TM-16输出数据进行可视化的功能,TMViewer是天眸多线激光雷达WIN端显示软件。 这个软件目前有点硬件要求:本软件目前只能运行在Windows x64 系统操作平台下。 对安装软件的计算机配置要求为: CPU:Intel(R) Core(TM) i5 以上, 显卡:NVDIA GeForce GTX750 以上效果最好, 否则可能影响软件的显示效果。

2.1 配置电脑IP信息

        雷达默认出厂IP信息,用户如需在电脑上接收TM-16传输的数据, 请将电脑IP地址设置为192.168.1.106, 将子网掩码设置为255.255.255.0。用户可以通过武汉天眸光电的点云可视化软件TMViewer来快速查看或录制点云数据 。官方手册让默认需要自己电脑IP配置成上述的要求。

        若不知设备网络配置信息, 请在雷达上电后连接设备使用wireshark 抓取设备ARP 包进行分析,

        从抓包工具上可以分析得到,我手中这台雷达的IP信息是:192.168.1.201,设置的目的IP是:192.168.1.231,所以我们需要将和雷达链接的IP修改为192.168.1.231。

 保持和雷达同一个网段,最好关闭防火墙。记得将雷达的网口,接入你电脑的网口。

2.2 打开软件

安装后会有这个图标,打开这个软件。

2.3 链接雷达

确认后,如果配置信息正取,就可以看到点云了。

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

        我们再WIN端链接雷达,一是为了简单判断和查看雷达的好坏,其次就是为了修改IP信息,让我们的系统可以兼容这个位置,避免每此导入雷达都同步要改很多地方的配置信息。

 

我们按照要求,修改IP,端口我们保持一致即可。

此时,雷达就会重启,使用新的IP,旧的IP就无法再ping通。

2.5修改后WIN端IP测试验证

修改自己的电脑IP为,目的地址IP

雷达不用重新上电,IP就生效了。重新打开软件。

三、ROS下接入测试

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

3.1 将板子IP修改到和雷达要求的目的IP

3.1 建立工作空间

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

3.2 拷贝代码

#将官方提供的驱动代码包放置到这个目录解压
cd ~/SensorWS/TM16_ws/src

tar -zxvf timoo.tar.gz

3.3 编译源码包

cd ~/SensorWS/TM16_ws
catkin_make -DCATKIN_WHITELIST_PACKAGES=""
source devel/setup.bash

我们自己的环境由于经常适配雷达,所以支持包装的比较齐全,一把编译通过。

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

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

cd ~/SensorWS/TM16_ws/src/timoo/timoo_pointcloud/launch/TM16.launch
vim TM16.launch

原始文件内容是:

如果你有端口信息变动,就需要修改,由于我们使用了官方默认的端口号,所以不需要修改,另外就是主机IP和雷达IP,在配置雷达的时候改的和实际一致即可。

3.6 启动驱动

cd ~/SensorWS/TM16_ws
source devel/setup.bash
roslaunch timoo_pointcloud TM16.launch

打开其实什么都不显示,需要RVIZ显示查看,需要再启动一个窗口,需要桌面系统支持最好。

rviz rviz -f timoo

选中“timoo_points”话题,即可查看点云。

确定后就可以看到点云了。

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

rosnode list
---------------------------------------------------------------
/rosout
/rviz_1732267836043275773
/timoo_nodelet_manager
/timoo_nodelet_manager_cloud
/timoo_nodelet_manager_driver
/timoo_nodelet_manager_laserscan
​
rostopic list
---------------------------------------------------------------
/clicked_point
/diagnostics
/initialpose
/move_base_simple/goal
/rosout
/rosout_agg
/scan
/tf
/tf_static
/timoo_imu
/timoo_nodelet_manager/bond
/timoo_nodelet_manager_cloud/parameter_descriptions
/timoo_nodelet_manager_cloud/parameter_updates
/timoo_nodelet_manager_driver/parameter_descriptions
/timoo_nodelet_manager_driver/parameter_updates
/timoo_nodelet_manager_laserscan/parameter_descriptions
/timoo_nodelet_manager_laserscan/parameter_updates
/timoo_packets
/timoo_points
/timoo_status

四、总结

整体我自己跑测试过程还算比较顺利,编译和最后官方的点云查看,基本都是一遍通过,文档支持比较完善,也比较简单明白,没有那么多繁琐的配置。顺道说说TM-16的特点吧:

  1. 点云清晰稳定,连着跑了8个小时,整体驱动和文档支持很完善,适配过程技术支持比较到位。

  2. 是不是所有16线激机械式的激光雷达的发热都这么大!!!,但是TM16增加了的顶部散热器,这一点在工艺上助于整体控制温度,但是实际使用中,估计还是要再底部增加辅助散热通道。

  3. 最重要的,价格确实比起同性能的有优势,性价比之王没的说了。整体质感,工艺,是很对得起这个价格的。

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

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

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

相关文章

安装QT6.8(MSVC MinGW)+QT webengine+QT5.15.2

本篇主要针对只使用过QT5的qmake,没有用过MSVC,VS的老同学。 建议一部分一部分安装,全部勾选安装遇到问题会中断,前功尽弃。 我自己需要的是QT5,编出的软件用在公司设备上。 QT6:建议也安装学习&#xf…

【我在CSDN成长】我的五周年创作纪念日

感叹 五年的时光匆匆而过, 像一阵风,拂过岁月的湖面, 泛起层层涟漪,又悄然离去。 曾经的欢笑与泪水, 那些奋斗的日夜, 如同电影般在脑海中放映, 却已成为遥远的回忆。 五年,说长不长…

使用 Docker Compose 来编排部署LMTNR项目

使用 Docker Compose 来部署一个包含 Linux、MySQL、Tomcat、Nginx 和 Redis 的完整项目的例子。假设我们要部署一个简单的 Java Web 应用,并且使用 Nginx 作为反向代理服务器。 项目目录结构 首先需要确保 Docker 和docker-compose已经安装并正在运行。docker --v…

如何搭建一个小程序:从零开始的详细指南

在当今数字化时代,小程序以其轻便、无需下载安装即可使用的特点,成为了连接用户与服务的重要桥梁。无论是零售、餐饮、教育还是娱乐行业,小程序都展现了巨大的潜力。如果你正考虑搭建一个小程序,本文将为你提供一个从零开始的详细…

Spring Boot教程之十: 使用 Spring Boot 实现从数据库动态下拉列表

使用 Spring Boot 实现从数据库动态下拉列表 动态下拉列表(或依赖下拉列表)的概念令人兴奋,但编写起来却颇具挑战性。动态下拉列表意味着一个下拉列表中的值依赖于前一个下拉列表中选择的值。一个简单的例子是三个下拉框,分别显示…

数据结构 【双向哨兵位循环链表】

链表的结构分为8中,其实搞懂了单链表和双向哨兵位循环链表,这部分的知识也就掌握的差不多了。双向哨兵位循环链表的结构如下: 下面我从0构建一个双向哨兵位循环链表。 1、准备工作 构建节点结构体,双向循环链表的每一个…

RabbitMQ的交换机总结

1.direct交换机 2.fanout交换机

MVC、EL、JSTL

1.MVC设计模式 三层: MVC: M(Model)模型:负责业务逻辑处理,数据库访问。 V(View)视图:负责与用户交互。 C(Controller)控制器:负责流程…

《Python基础》之函数的用法

一、简介 在 Python 中,函数是一段可重用的代码块,用于执行特定的任务。函数可以帮助你将代码模块化,提高代码的可读性和可维护性。 函数的用途 代码重用:通过函数,你可以将常用的代码块封装起来,避免重复…

《Shader入门精要》透明效果

代码以及实例图可以看github :zaizai77/Shader-Learn: 实现一些书里讲到的shader 在实时渲染中要实现透明效果,通常会在渲染模型时控制它的透明通道(Alpha Channel)​。当开启透明混合后,当一个物体被渲染到屏幕上时&…

PICO 获取设备号 SN码

Unity版本 2020.3.42f1c1PICO SDK版本PICO Unity Integration SDK-3.0.5-20241105Pico设备pico 4ultra 注意 此api暂时只测试企业版本 pico 4ultra 代码 using Unity.XR.PICO.TOBSupport;private void Awake() {bool result PXR_Enterprise.InitEnterpriseService();Debug.L…

D 型 GaN HEMT 在功率转换方面的优势

氮化镓 (GaN) 是一种 III-V 族宽带隙半导体,由于在用作横向高电子迁移率晶体管 (HEMT) 时具有卓越的材料和器件性能,因此在功率转换应用中得到越来越多的采用。 HEMT 中产生的高击穿电场 (3.3 MV/cm) 和高二维电子气 (2DEG) 载流子迁移率 (2,000 cm 2 /…

政安晨【零基础玩转各类开源AI项目】探索Cursor-AI Coder的应用实例

目录 Cusor的主要特点 Cusor实操 政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! Cursor 是 Visual Studio Code 的一个分支。这使我们能够…

AI-agent矩阵营销:让品牌传播无处不在

矩阵营销是一种通过多平台联动构建品牌影响力的策略,而 AI-agent 技术让这一策略变得更加智能化。AI社媒引流王凭借其矩阵管理功能,帮助品牌在多个平台上实现深度覆盖与精准传播。 1. 矩阵营销的优势 品牌触达更广:多平台联动可以覆盖不同用…

1- 9 C 语言面向对象

面向对象的基本特性:封装,继承,多态 1.0 面向过程概念 当我们在编写程序时,通常采用以下步骤: 1. 将问题的解法分解成若干步骤 2. 使用函数分别实现这些步骤 3. 依次调用这些函数 这种编程风格的被称作 面向过程…

中国科学院大学研究生学术英语读写教程 Unit7 Materials Science TextA 原文和翻译

中国科学院大学研究生学术英语读写教程 Unit7 Materials Science TextA 原文和翻译 Why Is the Story of Materials Really the Story of Civilisation? 为什么材料的故事实际上就是文明的故事? Mark Miodownik 1 Everything is made of something. Take away co…

从零开始-VitePress 构建个人博客上传GitHub自动构建访问

从零开始-VitePress 构建个人博客上传GitHub自动构建访问 序言 VitePress 官网:VitePress 中文版 1. 什么是 VitePress VitePress 是一个静态站点生成器 (SSG),专为构建快速、以内容为中心的站点而设计。简而言之,VitePress 获取用 Markdown…

TCP IP协议和网络安全

传输层的两个协议: 可靠传输 TCP 分段传输 建立对话(消耗系统资源) 丢失重传netstat -n 不可靠传输 UDP 一个数据包就能表达完整的意思或屏幕广播 应用层协议(默认端口): httpTCP80 网页 ftpTCP21验证用户身…

mcu上一种利用伪随机数防止mac地址冲突的方法

一 前言 前段时间开发的一个带tcp功能的项目,出现了mac地址冲突的问题,领导让随机生成一个mac地址,因此研究了下随机数。 二 预研 1.硬随机数 硬随机数又叫真随机数,英文名称”true random number generator“,即通过硬件随机数…

英伟达发布 Edify 3D 生成模型,可以在两分钟内生成详细的、可用于生产的 3D 资源、生成有组织的 UV 贴图、4K 纹理和 PBR 材质。

英伟达发布 Edify 3D 生成模型,可以利用 Agents 自动判断提示词场景中需要的模型,生成后将他们组合为一个场景。 Edify 3D 可以在两分钟内生成详细的、可用于生产的 3D 资源、生成有组织的 UV 贴图、4K 纹理和 PBR 材质。 相关链接 论文:htt…