Ubuntu18.04-ROS melodic -VLP_16激光雷达使用

2024-02-18 19:50

本文主要是介绍Ubuntu18.04-ROS melodic -VLP_16激光雷达使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

OS and Version: Ubuntu 18.04
ROS Version: Melodic
lidar: Velodyne_16

前期准备

1.激光雷达上电
2.将激光雷达连接到工控机的网口
3.禁用无线连接

一、配置工控机网口

1.设置有线网口中的IP4
2.设置ENP网络中的IP4设置为手动
3.设置为IP地址192.168.1.77,子网掩码255.255.255.0,网关192.168.1.1。
4.点击保存,然后关闭网口,再重新打开网口。
5.打开浏览器,输入192.168.1.201
在这里插入图片描述
在这里插入图片描述

二、安装ROS依赖

sudo apt-get install ros-melodic-velodyne

有的博主提到还需要安装下方的依赖,我没装也可以正常运行。

sudo apt-get install libpcap-dev

三、安装VLP驱动

mkdir -p ~/catkin_velodyne/src && cd ~/catkin_velodyne/src
git clone https://github.com/ros-drivers/velodyne.git
cd ..
rosdep install --from-paths src --ignore-src --rosdistro melodic -y
catkin_make
source devel/setup.bash

到这里结束就可以,后面就可以正常显示。
其实还有一步是激光雷达的校准,没有这一步,也没问题。
找到U盘中VLP-16.xml文件是激光雷达附赠U盘中提供的,找不到可以下载。转换后生成VLP-16.yaml
下载地址xml

rosrun velodyne_pointcloud gen_calibration.py ~/VLP-16.xml
roslaunch velodyne_pointcloud VLP16_points.launch calibration:=~/VLP-16.yaml

~为自己的路径

四、运行查看数据

roscore
roslaunch velodyne_pointcloud VLP16_points.launch

打开rviz
在这里插入图片描述
OK就可以显示啦~

五、遇到的问题

5.1

[ WARN] [1606659546.548501176]: Velodyne poll() timeout
[ERROR] [1606659546.548607516]: DriverNodelet::devicePoll - Failed to poll device.

报这个错误是因为ROS读取不到激光雷达的数据,一般是因为VLP16_points.launch文件中设置的端口与激光雷达的数据端口不一致。解决方式到192.168.1.201查看数据端口,如下图查看到端口号为3201。
在这里插入图片描述

在这里插入图片描述
修改 ~/catkin_velodyne/src/velodyne/velodyne_pointcloud/launch/VLP16_points.launch 文件,使端口号与激光雷达的实际数据端口保持一致。
在这里插入图片描述

5.2 [ WARN] [1623376960.208009401]: No Azimuth Cache configured for model VLP16

setting /run_id to 858acbc0-ca56-11eb-81ca-000c29b03b78
process[rosout-1]: started with pid [4656]
started core service [/rosout]
process[velodyne_nodelet_manager-2]: started with pid [4659]
process[velodyne_nodelet_manager_driver-3]: started with pid [4674]
process[velodyne_nodelet_manager_transform-4]: started with pid [4675]
process[velodyne_nodelet_manager_laserscan-5]: started with pid [4676]
[ INFO] [1623375853.079427338]: Initializing nodelet with 8 worker threads.
0.000 2.304 4.608 6.912 9.216 11.520 13.824 16.128 18.432 20.736 23.040 25.344 27.648 29.952 32.256 34.560 55.296 57.600 59.904 62.208 64.512 66.816 69.120 71.424 73.728 76.032 78.336 80.640 82.944 85.248 87.552 89.856
110.592 112.896 115.200 117.504 119.808 122.112 124.416 126.720 129.024 131.328 133.632 135.936 138.240 140.544 142.848 145.152 165.888 168.192 170.496 172.800 175.104 177.408 179.712 182.016 184.320 186.624 188.928 191.232 193.536 195.840 198.144 200.448
221.184 223.488 225.792 228.096 230.400 232.704 235.008 237.312 239.616 241.920 244.224 246.528 248.832 251.136 253.440 255.744 276.480 278.784 281.088 283.392 285.696 288.000 290.304 292.608 294.912 297.216 299.520 301.824 304.128 306.432 308.736 311.040
331.776 334.080 336.384 338.688 340.992 343.296 345.600 347.904 350.208 352.512 354.816 357.120 359.424 361.728 364.032 366.336 387.072 389.376 391.680 393.984 396.288 398.592 400.896 403.200 405.504 407.808 410.112 412.416 414.720 417.024 419.328 421.632
442.368 444.672 446.976 449.280 451.584 453.888 456.192 458.496 460.800 463.104 465.408 467.712 470.016 472.320 474.624 476.928 497.664 499.968 502.272 504.576 506.880 509.184 511.488 513.792 516.096 518.400 520.704 523.008 525.312 527.616 529.920 532.224
552.960 555.264 557.568 559.872 562.176 564.480 566.784 569.088 571.392 573.696 576.000 578.304 580.608 582.912 585.216 587.520 608.256 610.560 612.864 615.168 617.472 619.776 622.080 624.384 626.688 628.992 631.296 633.600 635.904 638.208 640.512 642.816
663.552 665.856 668.160 670.464 672.768 675.072 677.376 679.680 681.984 684.288 686.592 688.896 691.200 693.504 695.808 698.112 718.848 721.152 723.456 725.760 728.064 730.368 732.672 734.976 737.280 739.584 741.888 744.192 746.496 748.800 751.104 753.408
774.144 776.448 778.752 781.056 783.360 785.664 787.968 790.272 792.576 794.880 797.184 799.488 801.792 804.096 806.400 808.704 829.440 831.744 834.048 836.352 838.656 840.960 843.264 845.568 847.872 850.176 852.480 854.784 857.088 859.392 861.696 864.000
884.736 887.040 889.344 891.648 893.952 896.256 898.560 900.864 903.168 905.472 907.776 910.080 912.384 914.688 916.992 919.296 940.032 942.336 944.640 946.944 949.248 951.552 953.856 956.160 958.464 960.768 963.072 965.376 967.680 969.984 972.288 974.592
995.328 997.632 999.936 1002.240 1004.544 1006.848 1009.152 1011.456 1013.760 1016.064 1018.368 1020.672 1022.976 1025.280 1027.584 1029.888 1050.624 1052.928 1055.232 1057.536 1059.840 1062.144 1064.448 1066.752 1069.056 1071.360 1073.664 1075.968 1078.272 1080.576 1082.880 1085.184
1105.920 1108.224 1110.528 1112.832 1115.136 1117.440 1119.744 1122.048 1124.352 1126.656 1128.960 1131.264 1133.568 1135.872 1138.176 1140.480 1161.216 1163.520 1165.824 1168.128 1170.432 1172.736 1175.040 1177.344 1179.648 1181.952 1184.256 1186.560 1188.864 1191.168 1193.472 1195.776
1216.512 1218.816 1221.120 1223.424 1225.728 1228.032 1230.336 1232.640 1234.944 1237.248 1239.552 1241.856 1244.160 1246.464 1248.768 1251.072 1271.808 1274.112 1276.416 1278.720 1281.024 1283.328 1285.632 1287.936 1290.240 1292.544 1294.848 1297.152 1299.456 1301.760 1304.064 1306.368
[ INFO] [1623375853.109880834]: correction angles: /home/bs/VLP_ws/src/velodyne/velodyne_pointcloud/params/VLP16db.yaml
[ INFO] [1623375853.112482524]: laser_ring[ 0] = 0, angle = -0.261799
[ INFO] [1623375853.112524564]: laser_ring[ 2] = 1, angle = -0.226893
[ INFO] [1623375853.112533182]: laser_ring[ 4] = 2, angle = -0.191986
[ INFO] [1623375853.112538392]: laser_ring[ 6] = 3, angle = -0.157080
[ INFO] [1623375853.112543037]: laser_ring[ 8] = 4, angle = -0.122173
[ INFO] [1623375853.112547833]: laser_ring[10] = 5, angle = -0.087266
[ INFO] [1623375853.112552380]: laser_ring[12] = 6, angle = -0.052360
[ INFO] [1623375853.112557186]: laser_ring[14] = 7, angle = -0.017453
[ INFO] [1623375853.112561731]: laser_ring[ 1] = 8, angle = +0.017453
[ INFO] [1623375853.112567446]: laser_ring[ 3] = 9, angle = +0.052360
[ INFO] [1623375853.112571876]: laser_ring[ 5] = 10, angle = +0.087266
[ INFO] [1623375853.112592943]: laser_ring[ 7] = 11, angle = +0.122173
[ INFO] [1623375853.112601472]: laser_ring[ 9] = 12, angle = +0.157080
[ INFO] [1623375853.112606635]: laser_ring[11] = 13, angle = +0.191986
[ INFO] [1623375853.112615050]: laser_ring[13] = 14, angle = +0.226893
[ INFO] [1623375853.112646993]: laser_ring[15] = 15, angle = +0.261799
[ INFO] [1623375853.112796386]: Number of lasers: 16.
[ WARN] [1623375853.113515309]: No Azimuth Cache configured for model VLP16
[ INFO] [1623375853.123820550]: Reconfigure request.
[ INFO] [1623375853.123870560]: Target frame ID now:
[ INFO] [1623375853.123899939]: Fixed frame ID now:
[ INFO] [1623375853.123970560]: Initialized container with min_range: 0.4, max_range: 130, target_frame: , fixed_frame: , init_width: 0, init_height: 1, is_dense: 1, scans_per_packet: 384
[ INFO] [1623375853.139084509]: Velodyne VLP-16 rotating at 600 RPM
[ INFO] [1623375853.139677184]: publishing 76 packets per scan
[ INFO] [1623375853.142200854]: Cut at specific angle feature deactivated.
[ INFO] [1623375853.148616528]: Reconfigure Request
[ INFO] [1623375853.149640297]: expected frequency: 9.921 (Hz)
[ INFO] [1623375853.151569872]: Opening UDP socket: port 2368

还未解决。

这篇关于Ubuntu18.04-ROS melodic -VLP_16激光雷达使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/722260

相关文章

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

C#中lock关键字的使用小结

《C#中lock关键字的使用小结》在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时,其他线程无法访问同一实例的该代码块,下面就来介绍一下lock关键字的使用... 目录使用方式工作原理注意事项示例代码为什么不能lock值类型在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时

MySQL 强制使用特定索引的操作

《MySQL强制使用特定索引的操作》MySQL可通过FORCEINDEX、USEINDEX等语法强制查询使用特定索引,但优化器可能不采纳,需结合EXPLAIN分析执行计划,避免性能下降,注意版本差异... 目录1. 使用FORCE INDEX语法2. 使用USE INDEX语法3. 使用IGNORE IND