鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    [FishBot教程] 9.0.6. 雷达驱动及建图测试

    已定时 已固定 已锁定 已移动
    FishBot二驱机器人
    fishbot 建图
    51
    202
    55.4k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 小鱼小
      小鱼 技术大佬 @591259845
      最后由 编辑

      @591259845 https://cn.bing.com/search?q=site%3Afishros.org.cn or 0.0.0.0%3A8889 failed%3A port is already allocated

      新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

      1 条回复 最后回复 回复 引用 0
      • W
        wangkang1551
        最后由 编辑

        ubuntu 22.04 雷达驱动话题没显示,但是测试建图会有图,建图没法保存,上面的issue也看到了类似问题。需要怎么解决

        1 条回复 最后回复 回复 引用 0
        • 2
          2177527864 @mixllred
          最后由 编辑

          @mixllred 我也是这个情况,transform不稳定一直跳动

          1 条回复 最后回复 回复 引用 0
          • J
            jowee
            最后由 编辑

            系统 24.04,非虚拟机
            ROS2版本:jazzy
            控制板版本:1.7.2.alpha
            雷达驱动板版本:1.3.0.alpha

            1. 首先进行WIFI转串口测试,结果正常
            2. 再进行驱动雷达测试时,可以看到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
            

            大佬们帮忙看看是什么问题

            小鱼小 1 条回复 最后回复 回复 引用 0
            • 小鱼小
              小鱼 技术大佬 @jowee
              最后由 编辑

              @jowee 在 [FishBot教程] 9.0.6. 雷达驱动及建图测试 中说:

              /startup.sh: line 5: 166 Killed ros2 launch /workspace/launch/laser_driver.launch.py

              这一步是自动发生的吗

              新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

              J 1 条回复 最后回复 回复 引用 0
              • J
                jowee @小鱼
                最后由 jowee 编辑

                @小鱼 重新测试了一下,有下面几个现象,麻烦帮忙分析一下

                1. 进入 2)驱动雷达 测试,不做其他操作是OK的,放个几分钟也没问题。

                2. 进入 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
                #? 
                
                1. 进入 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
                #? 
                
                1. 在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
                #? 
                
                1. 在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
                #? 
                
                J 1 条回复 最后回复 回复 引用 0
                • J
                  jowee @jowee
                  最后由 编辑

                  @jowee 有时候是core dump,有时候被kill掉

                  小鱼小 1 条回复 最后回复 回复 引用 0
                  • 小鱼小
                    小鱼 技术大佬 @jowee
                    最后由 小鱼 编辑

                    @jowee 你的系统内外版本是什么,包括ROS2版本

                    新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                    J 1 条回复 最后回复 回复 引用 0
                    • J
                      jowee @小鱼
                      最后由 编辑

                      @小鱼 系统 Ubuntu 24.04,非虚拟机
                      ROS2版本:jazzy
                      控制板版本:1.7.2.alpha
                      雷达驱动板版本:1.3.0.alpha

                      小鱼小 1 条回复 最后回复 回复 引用 0
                      • 小鱼小
                        小鱼 技术大佬 @jowee
                        最后由 编辑

                        @jowee 请用ubuntu22.04

                        新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                        1 条回复 最后回复 回复 引用 0
                        • 第一个帖子
                          最后一个帖子
                        皖ICP备16016415号-7
                        Powered by NodeBB | 鱼香ROS