AutolaborOS 2.2.1版本更新说明

系统部分

  1. Ubuntu 18.04系统内核升级至 5.4.0-77-generic
  2. 系统内安装软件升级至最新版本

软件部分

  1. 预装vscode,用于调试代码
  2. 预装nomachine,用于远程连入系统

ROS开源代码

  1. cartographer 更新至 b8228ee 版本,cartographer_ros 更新至 c06879b 版本,相较于AutolaborOS 2.2.1 之前的安装版本,该版本更新内容如下:

    • 配置参数有变化
    • Cartographer Node 提供通过ROS service的方式指定机器人初始位姿,用于解决快速定位问题
    • Occupancy grid Node 提供参数设置输出地图的数据内容,用于解决在纯定位模式中,新生成的地图干扰定位
  2. teb_local_planer 更新至 073e4c5 版本,用于支持新版本参数以及提高稳定性

  3. navigation 更新至 6c67230 版本,用于提高稳定性

  4. 更新所有安装包CMAKE文件的最低版本要求,避免编译出现警告

Autolabor 基于ROS开发的代码

  1. autolabor_navigation_launch 内所有的launch文件全部重构

    • launch文件由原有平铺结构改为包含结构,使得整体launch文件结构比较清晰,复用性高,更易于添加新功能

    • 实车现在支持

      • 单雷达版本cartographer建图,定位导航功能
      • 双雷达版本cartographer建图,定位导航功能
      • 双雷达版本基于marvelmind标签 + 里程计融合定位循迹功能
      • 双雷达版本基于cartographer + teb_local_planer 多点导航功能
    • 将原有的autolabor_simulation_launch 节点转移至autolabor_navigation_launch 节点中,并提供上述所有功能的模拟器版本

    • 模拟器现在支持

      • 单雷达版本cartographer建图,定位导航功能
      • 双雷达版本cartographer建图,定位导航功能
      • 双雷达版本基于marvelmind标签循迹功能
      • 双雷达版本基于cartographer + teb_local_planer 多点导航功能
      • 双雷达版本多车协同功能(测试中,成熟后会增加至实车)
    • 模拟器版本与实车版本共用算法参数,方便在模拟器中调试好算法直接应用于实车

    • 更新所有功能rviz界面设置

  2. autolabor_description 模块内 autolabor_pro_1 模型更新

    • 简化模型内部结构,降低渲染时对计算机性能的需求
    • 将原有一体化模型,拆分为车身与车轮结构,提升mesh复用性,提升性能
    • 将原有的stl文件更新为dea文件,支持模型上色,提高美观性
    • 将原有的urdf文件升级至xacro文件,支持外部对frame_id前缀修改,提供车辆惯性系数,同时支持导入gazebo对车辆进行仿真

     

  3. autolabor_simulation 更新,主要用于适配多车协同

    • autolabor_simulation_stage 新增通过 service 获取场景地图功能,支持返回排除指定障碍物的地图。该功能主要应用于在2D模拟场景中,如果激光雷达在于车身障碍物内,支持排除自身这个障碍物获取场景雷达数据 (下图中三角形为可见动态障碍物,方形为不可见动态障碍物)

    • autolabor_simulation_base 修改tf树结构,用于适配多车场景
    • autolabor_simulation_lidar 添加通过service获取场景功能,支持排除指定障碍物生成雷达数据
    • autolabor_simulation_object 模块中新增 simulation_object_bind_node 节点,用于绑定坐标系生成动态障碍物,该功能主要用于给机器人添加动态障碍物信息,用于模拟多车环境中,机器人之间能通过激光雷到相互感知到对方。
    • 新增每个单独模拟节点的测试 launch
  4. 新增 multi_car_goal 模块,用于多车协同跟随

  5. autolabor_pro1_driver 更新,新增车辆模型动态参数,用于方便标定车模型参数

  6. 新增rviz插件 rviz_autolabor_calibration,用于在rviz中通过UI对车模型进行标定

  7. 新增机器人标定脚本

  8. 新增 cartographer_initialpose 模块,用于使用 cartographer 进行定位时,通过rviz中 2D Pose Estimate 对机器人进行初始位姿设定

  9. 新增rviz插件 rviz_keyboard_twist ,用于在rviz中通过键盘控制机器人运动,支持通过 nomachine 远程遥控机器人

  10. 新增rviz插件 rviz_navigation_tools ,用于在rviz中多车导航时,方便切换控制机器人

  11. 更新rviz插件 navi_multi_goals_pub_rviz_plugin

    • 修复偶尔会跳目标点的问题
    • 新增对多点目标的保存和读取
    • 新增添加当前位置为目标点功能