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

    9.0.6.2雷达驱动与建图测试(无线udp)

    已定时 已固定 已锁定 已移动
    FishBot二驱机器人
    fishbot 雷达
    1
    1
    50
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • L
      luqixuan 年度VIP
      最后由 luqixuan 编辑

      一、打开配置助手,修改net_mode

      跳帽在flash模式下,扫描配置,修改net_mode为udp,针对建图卡顿网络问题优化,udp对网络差的环境有更好的兼容性
      82d83fa2-6063-4ba9-b445-aac19b873472-图片.png

      二、手动切换模式

      配置完成后,将跳线帽调整到WIFI模式

      cdfb78a8-adeb-45d1-9949-c11d9d45b756-图片.png

      三、启动服务

      重新拉取docker镜像并运行:

      xhost + && sudo docker run -it --rm -p 8889:8889 -p 8889:8889/udp -v /dev:/dev -v /tmp/.X11-unix:/tmp/.X11-unix --device /dev/snd -e DISPLAY=unix$DISPLAY registry.cn-hangzhou.aliyuncs.com/fishros/fishbot_laser
      

      启动完成后,可以看到如下页面

      cc346c82-58de-441c-b770-9936d52d3b10-图片.png

      四、驱动测试

      保证雷达板在通电状态
      选择1驱动雷达,回车
      选择2无线udp,回车,我们尝试驱动雷达

      0bb1f40f-b525-455e-aa19-62b992e68ebb-图片.png

      等待激光雷达udp连接
      如果未连接成功,请检查是否符合下述现象和问题:

      1. 蓝色LED灯长亮,表示此时在配置模式,请将跳线帽调整至运行模式,LED闪烁表示在运行模式
      2. 出现timout count提示,表示雷达板没有数据发送到的电脑,此时应该检查跳线帽是否在WIFI模式,并确定连接了雷达。
        驱动成功后,我们可以打开一个新的终端,输入ros2 topic list,查看是否有/scan话题。
      ros2 topic list
      

      此时在终端中打开rviz2,修改fixed frame为laser_frame,左下角点击add---by topic,添加LaserScan,

      c6ea58a3-0aab-4a9e-8a0f-bb00e894bea8-图片.png

      接着修改Qos为Best Effort,接着就能看到雷达的点云数据了
      移动雷达,观察点云的变化

      f0e48929-c362-43bc-9909-5df28d01c4d2-图片.png

      五、手动建图测试

      使用Crtl+C,打断驱动的运行,回车,
      选择4返回上级
      选择2建图测试
      选择2无线udp

      ae1b462f-0fe0-441e-91f1-86ba5a29567f-图片.png

      等待片刻,你应该可以直接看到一张地图出现

      a5cdca2e-f532-4a26-a6be-19c964720650-图片.png

      你可以将FishBot放到地上,或者用手拿着fishbot,慢慢走一圈,观察地图的变化,也可以直接用键盘控制节点(需要根据上节教程个启动Agent)控制fishbot走一圈,看看能否得到完整的地图。

      22bde3c5-5fee-4397-b669-1be9897ce4d3-图片.png

      六、保存地图

      我们需要使用一个叫做nav2_map_server的工具。
      安装nav2_map_server

      sudo apt install ros-$ROS_DISTRO-nav2-map-server
      

      保存地图

      ros2 run nav2_map_server map_saver_cli --help
      

      可以看到有下面的用法

      Usage:
        map_saver_cli [arguments] [--ros-args ROS remapping args]
       
      Arguments:
        -h/--help
        -t <map_topic>
        -f <mapname>
        --occ <threshold_occupied>
        --free <threshold_free>
        --fmt <image_format>
        --mode trinary(default)/scale/raw
       
      NOTE: --ros-args should be passed at the end of command line
      

      我们的地图话题为map,文件名字我们用fishbot_map,所以有下面这个这样写的命令行。
      ros2 run nav2_map_server map_saver_cli -t map -f fishbot_map
      接着我们就可以得到下面的两个文件

      .
      ├── fishbot_map.pgm
      └── fishbot_map.yaml
       
      0 directories, 2 files
      

      这两个文件就是对当前地图保存下来的文件,其中.pgm是地图的数据文件,.yaml后缀的是地图的描述文件。

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