[FishBot教程] 9.0.6. 雷达驱动及建图测试
-
@小鱼 无线的,连的实验室的WIFI
-
@3315708838 电脑这边走有线,这样应该就行了
-
@小鱼
ok,我也上闲鱼淘一个试试 -
架构不兼容怎么办
-
请问一下小鱼我能成功完成1)WIFI转串口测试和 2) 驱动雷达,但是打开新终端输入ros2 topic list没有任何话题显示是为什么?输入ros2 topic hz /scan显示下面这些:
sszb-wan@sszb-2:/mnt/c/WINDOWS/system32$ ros2 topic hz /scan
WARNING: topic [/scan] does not appear to be published yet
average rate: 6.638
min: 0.146s max: 0.156s std dev: 0.00280s window: 8
average rate: 6.629
min: 0.146s max: 0.156s std dev: 0.00281s window: 15
average rate: 6.637
min: 0.146s max: 0.156s std dev: 0.00253s window: 22
average rate: 6.633
min: 0.146s max: 0.156s std dev: 0.00239s window: 29 -
@591259845 这表示正常的意思
-
@小鱼 但是我ros2 topic list后什么话题都没有,scan话题也没有,后续可以建图但是建好的地图不能保存。
sszb-wan@sszb-2:/mnt/c/Users/qianr$ ros2 topic list
^Csszb-wan@sszb-2:/mnt/c/Users/qianr$
sszb-wan@sszb-2:/mnt/c/Users/qianr$ ros2 topic list -
@591259845 什么系统平台软件
-
@小鱼 JI就是正常的win11+wsl2+Ubuntu22.04+ROS2 humble,但是我WSL2用的是新版本推荐的镜像网络不是桥接网络,我有时间试下还是用桥接网络行不行。
-
@591259845 在 [FishBot教程] 9.0.6. 雷达驱动及建图测试 中说:
@小鱼 JI就是正常的win11+wsl2+Ubuntu22.04+ROS2 humble,但是我WSL2用的是新版本推荐的镜像网络不是桥接网络,我有时间试下还是用桥接网络行不行。
用回桥接网络就好了。。。。
-
请问下小鱼,为什么启动雷达驱动的时候经常会报这种错?是不是docker挂了?
sszb@sszb-2:/mnt/c/Users/qianr$ xhost + && sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged -v /tmp/.X11-unix:/tmp/.X11-unix --device /dev/snd -e DISPLAY=unix$DISPLAY -p 8889:8888 registry.cn-hangzhou.aliyuncs.com/fishros/fishbot_laser
access control disabled, clients can connect from any host
[sudo] password for sszb:
docker: Error response from daemon: failed to set up container networking: driver failed programming external connectivity on endpoint bold_tu (af0f4c653e527e9407e785a9649362e8553ab0d0245a2b885bafaa9af2efb849): Bind for 0.0.0.0:8889 failed: port is already allocatedRun 'docker run --help' for more information
-
-
ubuntu 22.04 雷达驱动话题没显示,但是测试建图会有图,建图没法保存,上面的issue也看到了类似问题。需要怎么解决
-
@mixllred 我也是这个情况,transform不稳定一直跳动
-
系统 24.04,非虚拟机
ROS2版本:jazzy
控制板版本:1.7.2.alpha
雷达驱动板版本:1.3.0.alpha- 首先进行WIFI转串口测试,结果正常
- 再进行驱动雷达测试时,可以看到
Now lidar is scanning
打印,但等待大约30s后,会有如下错误打印:
[INFO] [launch]: All log files can be found below /root/.ros/log/2025-04-10-10-46-19-476772-dab2dd4bbcec-166 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [tcp_server-1]: process started with pid [167] [tcp_server-1] [INFO] [1744281979.611517270] [tcp_socket_server_node]: TCP端口:8888,已映射到串口设备:/tmp/tty_laser [tcp_server-1] [INFO] [1744281979.611779826] [tcp_socket_server_node]: 等待接受连接.. [tcp_server-1] [INFO] [1744281980.013731005] [tcp_socket_server_node]: 来自('192.168.5.20', 54650)的连接已建立 [INFO] [ydlidar_node-2]: process started with pid [190] [ydlidar_node-2] [INFO] [1744281982.581994205] [ydlidar_node]: [YDLIDAR INFO] Current ROS Driver Version: 1.0.1 [ydlidar_node-2] [ydlidar_node-2] [2025-04-10 10:46:22][info] SDK initializing [ydlidar_node-2] [2025-04-10 10:46:22][info] SDK has been initialized [ydlidar_node-2] [2025-04-10 10:46:22][info] SDK Version: 1.2.9 [ydlidar_node-2] [2025-04-10 10:46:22][info] Connect elapsed time 0 ms [ydlidar_node-2] [2025-04-10 10:46:22][info] Lidar successfully connected [/tmp/tty_laser:115200] [ydlidar_node-2] [2025-04-10 10:46:22][info] Lidar running correctly! The health status good [ydlidar_node-2] [2025-04-10 10:46:22][info] Current Lidar Model Code 12 [ydlidar_node-2] [2025-04-10 10:46:22][info] Check status, Elapsed time 0 ms [ydlidar_node-2] [2025-04-10 10:46:22][info] Lidar init success, Elapsed time [0]ms [ydlidar_node-2] [2025-04-10 10:46:23][info] Start to getting intensity flag [ydlidar_node-2] [2025-04-10 10:46:23][info] Auto set intensity 1 [ydlidar_node-2] [2025-04-10 10:46:23][info] [YDLIDAR] End to getting intensity flag [ydlidar_node-2] [2025-04-10 10:46:23][info] [YDLIDAR] Create thread 0x77F78640 [ydlidar_node-2] [2025-04-10 10:46:24][info] Successed to start scan mode, Elapsed time 1694 ms [ydlidar_node-2] [2025-04-10 10:46:24][info] Module device info [ydlidar_node-2] Firmware version: 3.8 [ydlidar_node-2] Hardware version: 2 [ydlidar_node-2] Models: F2 [ydlidar_node-2] Serial: 2023021300030017 [ydlidar_node-2] [2025-04-10 10:46:24][info] Scan Frequency: 5.00Hz [ydlidar_node-2] [2025-04-10 10:46:24][info] Fixed Size: 720 [ydlidar_node-2] [2025-04-10 10:46:24][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-10 10:46:24][info] Scan Frequency: 5.00Hz [ydlidar_node-2] [2025-04-10 10:46:24][info] Fixed Size: 720 [ydlidar_node-2] [2025-04-10 10:46:24][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-10 10:46:24][info] Scan Frequency: 5.00Hz [ydlidar_node-2] [2025-04-10 10:46:24][info] Fixed Size: 720 [ydlidar_node-2] [2025-04-10 10:46:24][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-10 10:46:24][info] Scan Frequency: 5.00Hz [ydlidar_node-2] [2025-04-10 10:46:24][info] Fixed Size: 720 [ydlidar_node-2] [2025-04-10 10:46:24][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-10 10:46:24][info] Scan Frequency: 5.00Hz [ydlidar_node-2] [2025-04-10 10:46:24][info] Fixed Size: 720 [ydlidar_node-2] [2025-04-10 10:46:24][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-10 10:46:24][info] Single Fixed Size: 490 [ydlidar_node-2] [2025-04-10 10:46:24][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-10 10:46:24][info] Successed to check the lidar, Elapsed time 658 ms [ydlidar_node-2] [2025-04-10 10:46:24][info] Now lidar is scanning... [ydlidar_node-2] [2025-04-10 10:46:55][error] Check Sum 0xA6FC != 0x6812 [ydlidar_node-2] [2025-04-10 10:46:56][error] Check Sum 0x9AF6 != 0x5BCC [ydlidar_node-2] [2025-04-10 10:46:59][error] Check Sum 0x38F6 != 0x6BB1 /startup.sh: line 5: 166 Killed ros2 launch /workspace/launch/laser_driver.launch.py #?
再重新进行WIFI转串口测试和驱动雷达会变成这个样子:
#? 2 [INFO] [launch]: All log files can be found below /root/.ros/log/2025-04-10-10-49-24-734249-dab2dd4bbcec-218 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [tcp_server-1]: process started with pid [219] [tcp_server-1] terminate called after throwing an instance of 'std::bad_alloc' [tcp_server-1] what(): std::bad_alloc [ERROR] [tcp_server-1]: process has died [pid 219, exit code -6, cmd '/workspace/install/ros_serail2wifi/lib/ros_serail2wifi/tcp_server --ros-args --params-file /tmp/launch_params_tzo92wua --params-file /tmp/launch_params_zqa0rwef']. terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc /startup.sh: line 5: 218 Aborted (core dumped) ros2 launch /workspace/launch/laser_driver.launch.py
大佬们帮忙看看是什么问题
-
@jowee 在 [FishBot教程] 9.0.6. 雷达驱动及建图测试 中说:
/startup.sh: line 5: 166 Killed ros2 launch /workspace/launch/laser_driver.launch.py
这一步是自动发生的吗
-
@小鱼 重新测试了一下,有下面几个现象,麻烦帮忙分析一下
-
进入 2)驱动雷达 测试,不做其他操作是OK的,放个几分钟也没问题。
-
进入 2)驱动雷达 测试后,在另一个终端输入
ros2 topic hz /scan
,会导致docker终端自动出现下面的打印:
[ydlidar_node-2] [2025-04-11 09:41:32][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-11 09:41:32][info] Successed to check the lidar, Elapsed time 641 ms [ydlidar_node-2] [2025-04-11 09:41:32][info] Now lidar is scanning... terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc /startup.sh: line 5: 86 Aborted (core dumped) ros2 launch /workspace/launch/laser_driver.launch.py #?
- 进入 2)驱动雷达 测试后,在另一个终端输入
ros2 topic echo /scan --once
,可以正常看到数据:
zw@zw-UM790:~$ ros2 topic echo /scan --once header: stamp: sec: 1744364933 nanosec: 633379000 frame_id: laser_frame angle_min: -3.1415927410125732 angle_max: 3.1415927410125732 angle_increment: 0.012770702131092548 time_increment: 0.00033116465783677995 scan_time: 0.16293300688266754 range_min: 0.05000000074505806 range_max: 64.0 ranges: - 0.0 - 0.3619999885559082 中间数据省略 - 2.7100000381469727 - '...' intensities: - 0.0 - 255.0 - 116.0 中间数据省略 - 6.0 - '...' ---
但docker终端过个几秒会自动出现下面的打印:
[ydlidar_node-2] [2025-04-11 09:48:00][info] Single Fixed Size: 490 [ydlidar_node-2] [2025-04-11 09:48:00][info] Sample Rate: 3.00K [ydlidar_node-2] [2025-04-11 09:48:00][info] Successed to check the lidar, Elapsed time 639 ms [ydlidar_node-2] [2025-04-11 09:48:00][info] Now lidar is scanning... /startup.sh: line 5: 86 Killed ros2 launch /workspace/launch/laser_driver.launch.py #?
- 在3的基础上继续进行 2)驱动雷达 测试,在另一个终端输入
ros2 topic echo /scan --once
,可以正常看到数据,docker终端有时候会自动出现下面的打印:
[ydlidar_node-2] [2025-04-11 09:51:58][info] Now lidar is scanning... [ERROR] [ydlidar_node-2]: process has died [pid 134, exit code -9, cmd '/workspace/install/ydlidar/lib/ydlidar/ydlidar_node --ros-args -r __node:=ydlidar_node -r __ns:=/ --params-file /workspace/install/ydlidar/share/ydlidar/params/ydlidar.yaml']. [ERROR] [tcp_server-1]: process has died [pid 111, exit code -9, cmd '/workspace/install/ros_serail2wifi/lib/ros_serail2wifi/tcp_server --ros-args --params-file /tmp/launch_params_u30s3nr7 --params-file /tmp/launch_params_2wv5u3xe']. /startup.sh: line 5: 110 Killed ros2 launch /workspace/launch/laser_driver.launch.py #?
- 在4的基础上继续进行 2)驱动雷达 测试,在另一个终端输入
ros2 topic hz /scan
,docker终端有时候会自动出现下面的打印:
[ydlidar_node-2] [2025-04-11 09:53:03][info] Now lidar is scanning... terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc /startup.sh: line 5: 162 Aborted (core dumped) ros2 launch /workspace/launch/laser_driver.launch.py #?
-
-
@jowee 有时候是core dump,有时候被kill掉
-
@jowee 你的系统内外版本是什么,包括ROS2版本