前言本文将手把手保姆级教你如何在 RDK X5 (Ubuntu 22.04 ROS2 Humble) 上从零编译安装镭神雷达驱动、解决常见报错与虚拟机通讯问题、在 RViz2 中调出扫描红线。️ 第一步补全依赖与编译驱动将镭神雷达官方提供的 ROS2 驱动源码包LSLIDAR_X_ROS2-20240228放入你的 ROS2 工作空间例如~/wheeltec_ros2/src下。1. 补全系统依赖 (消除 pcap 警告)在编译时很多人会遇到这个警告** WARNING ** io features related to pcap will be disabled。这其实是因为缺少了录制离线 pcap 文件的依赖虽然不影响实时跑车但为了完美我们先把它装上sudo apt update sudo apt install libpcap-dev sudo apt install python3-colcon-common-extensions sudo apt install ros-humble-diagnostic-updater2. 编译雷达驱动回到工作空间根目录执行编译cd ~/wheeltec_ros2 colcon build --packages-select lslidar_msgs lslidar_driver看到Summary: 2 packages finished就说明编译大功告成了 第二步修改雷达串口与权限配置 (极其关键)插上雷达的 USB 线后直接运行启动文件大概率会遇到报错open_port /dev/wheeltec_laser ERROR !。这是因为代码默认寻找的串口名不对且没有读取权限。1. 查找真实的物理串口终端输入以下命令查看设备ls /dev/ttyUSB* /dev/ttyACM*假设你看到的雷达端口是/dev/ttyACM1。2. 赋予最高权限必须赋予该端口权限否则节点无法读取数据sudo chmod 777 /dev/ttyACM13. 修改 YAML 参数文件进入刚才编译的驱动目录找到 N10 串口雷达的参数文件nano ~/wheeltec_ros2/src/LSLIDAR_X_ROS2/lslidar_driver/params/lidar_uart_ros2/lsn10.yaml找到serial_port:这一行将其修改为你的实际端口serial_port: /dev/ttyACM1(保存并退出)⚠️ 注意修改了params下的文件后必须重新编译一次工作空间colcon build并source install/setup.bash才能生效 第三步启动雷达节点万事俱备运行以下命令启动 N10 雷达source ~/wheeltec_ros2/install/setup.bash ros2 launch lslidar_driver lsn10_launch.py当终端打印出open_port /dev/ttyACM1 OK !和Initialised lslidar without error恭喜你雷达已经在飞速旋转并发布数据了 第四步打通虚拟机网络与 RViz2 完美可视化这一步是无数新手容易卡住的深坑为什么雷达启动成功了但在同一局域网电脑的 RViz2 里By topic列表中就是找不到/scan话题坑点揭秘虚拟机的 NAT 模式如果你是在电脑端的 VMware 或 VirtualBox 虚拟机中运行 Ubuntu默认的网络模式是“NAT 模式”。这种模式下虚拟机处于独立的内网无法接收到地瓜 RDK X5 发出的 ROS2 多播广播。解决方案将虚拟机的网络适配器设置为“桥接模式 (Bridged)”。重启虚拟机后ping一下地瓜的 IP只要能 ping 通ros2 topic list里就会赫然出现/scan话题RViz2 拯救雷达显示效果在虚拟机终端运行rviz2。将左侧的Fixed Frame修改为laser。点击左下角Add-By topic- 找到/scan并添加LaserScan。此时你可能会发现雷达点云非常稀疏像撒了胡椒粉。别急做以下调整展开左侧的LaserScan菜单。将Size (m)从0.01改为0.05让点变大。将Color Transformer从Intensity改为FlatColor。将下方新出现的Color设置为纯红色 (255, 0, 0)。将Style改为Squares。瞬间一条极度清晰、醒目的连续扫描红线就会呈现在你眼前 第五步如何用 Python 订阅雷达数据雷达驱动启动后会向整个 ROS2 网络发布话题名为/scan、消息类型为sensor_msgs/msg/LaserScan的数据。在代码里面只需要再增加一个针对/scan话题的订阅者即可。希望这篇博客能帮到正在折腾 ROS2 安装雷达驱动的你欢迎在评论区交流。
【保姆级教程】地平线 RDK X5 部署 N10 激光雷达 (ROS2 Humble) + RViz2 可视化
前言本文将手把手保姆级教你如何在 RDK X5 (Ubuntu 22.04 ROS2 Humble) 上从零编译安装镭神雷达驱动、解决常见报错与虚拟机通讯问题、在 RViz2 中调出扫描红线。️ 第一步补全依赖与编译驱动将镭神雷达官方提供的 ROS2 驱动源码包LSLIDAR_X_ROS2-20240228放入你的 ROS2 工作空间例如~/wheeltec_ros2/src下。1. 补全系统依赖 (消除 pcap 警告)在编译时很多人会遇到这个警告** WARNING ** io features related to pcap will be disabled。这其实是因为缺少了录制离线 pcap 文件的依赖虽然不影响实时跑车但为了完美我们先把它装上sudo apt update sudo apt install libpcap-dev sudo apt install python3-colcon-common-extensions sudo apt install ros-humble-diagnostic-updater2. 编译雷达驱动回到工作空间根目录执行编译cd ~/wheeltec_ros2 colcon build --packages-select lslidar_msgs lslidar_driver看到Summary: 2 packages finished就说明编译大功告成了 第二步修改雷达串口与权限配置 (极其关键)插上雷达的 USB 线后直接运行启动文件大概率会遇到报错open_port /dev/wheeltec_laser ERROR !。这是因为代码默认寻找的串口名不对且没有读取权限。1. 查找真实的物理串口终端输入以下命令查看设备ls /dev/ttyUSB* /dev/ttyACM*假设你看到的雷达端口是/dev/ttyACM1。2. 赋予最高权限必须赋予该端口权限否则节点无法读取数据sudo chmod 777 /dev/ttyACM13. 修改 YAML 参数文件进入刚才编译的驱动目录找到 N10 串口雷达的参数文件nano ~/wheeltec_ros2/src/LSLIDAR_X_ROS2/lslidar_driver/params/lidar_uart_ros2/lsn10.yaml找到serial_port:这一行将其修改为你的实际端口serial_port: /dev/ttyACM1(保存并退出)⚠️ 注意修改了params下的文件后必须重新编译一次工作空间colcon build并source install/setup.bash才能生效 第三步启动雷达节点万事俱备运行以下命令启动 N10 雷达source ~/wheeltec_ros2/install/setup.bash ros2 launch lslidar_driver lsn10_launch.py当终端打印出open_port /dev/ttyACM1 OK !和Initialised lslidar without error恭喜你雷达已经在飞速旋转并发布数据了 第四步打通虚拟机网络与 RViz2 完美可视化这一步是无数新手容易卡住的深坑为什么雷达启动成功了但在同一局域网电脑的 RViz2 里By topic列表中就是找不到/scan话题坑点揭秘虚拟机的 NAT 模式如果你是在电脑端的 VMware 或 VirtualBox 虚拟机中运行 Ubuntu默认的网络模式是“NAT 模式”。这种模式下虚拟机处于独立的内网无法接收到地瓜 RDK X5 发出的 ROS2 多播广播。解决方案将虚拟机的网络适配器设置为“桥接模式 (Bridged)”。重启虚拟机后ping一下地瓜的 IP只要能 ping 通ros2 topic list里就会赫然出现/scan话题RViz2 拯救雷达显示效果在虚拟机终端运行rviz2。将左侧的Fixed Frame修改为laser。点击左下角Add-By topic- 找到/scan并添加LaserScan。此时你可能会发现雷达点云非常稀疏像撒了胡椒粉。别急做以下调整展开左侧的LaserScan菜单。将Size (m)从0.01改为0.05让点变大。将Color Transformer从Intensity改为FlatColor。将下方新出现的Color设置为纯红色 (255, 0, 0)。将Style改为Squares。瞬间一条极度清晰、醒目的连续扫描红线就会呈现在你眼前 第五步如何用 Python 订阅雷达数据雷达驱动启动后会向整个 ROS2 网络发布话题名为/scan、消息类型为sensor_msgs/msg/LaserScan的数据。在代码里面只需要再增加一个针对/scan话题的订阅者即可。希望这篇博客能帮到正在折腾 ROS2 安装雷达驱动的你欢迎在评论区交流。