Skip to content

拥有 ROS2GO 后,你可以做什么

作为开发者,我能想到至少可以使用 ROS2GO 做以下几件事:

  • 学习,使用 ROS,进行机器人系统设计
  • 学习,研究机器人感知,SLAM
  • 学习,研究机器人控制,集群控制
  • 在 Gazebo 中进行仿真,验证算法 idea

开箱即用

  • 一键切换的 ROS1,ROS2 环境
  • 各种预置好的 ROS 1,2 驱动功能包,具体支持如下表
硬件设备ROS1ROS2
激光雷达--------------------
Livox mid360由于 mid360 的 json 配置 IP 需要用到唯一 S/N 码,所以没有直接集成
Velodyne已支持已支持
Osight已支持已支持
RPLIDAR已支持-----
YDLIDAR已支持-----
HOKUYO已支持-----
相机--------------------
摄像头已支持已支持
Astra已支持已支持
Intel Realsense已支持已支持
ZED2iSDK 需要安转 CUDA,所以没有直接集成

方便的开发环境依赖

  • Google 三件套:Glog,GFlags,Gtest
  • 强大的非线性优化库 Ceres Solver
  • 强大的线性代数运算库 Eigen
  • 强大的图像处理库 OpenCV
  • 强大的三维重建库 PCL
  • 此外你可以根据需要,安装其他你喜欢的软件依赖,比如 G2O,Pangolin,Sophus,Gtsam,DBow3 等等,熟悉优秀的开源算法库,足以让你在实现机器人算法时如鱼得水,事半功倍

各种常用软件

  • VScode
  • GIMP 类似 PS 的强大图像处理软件
  • LinuxQQ
  • Timeshift 增量式备份神器
  • Ctrl + Space,Shift 一键中英文切换的搜狗输入法
  • Ctrl + Alt + A 一键开启火焰截图
  • 此外你可以根据需要,安装其他你喜欢的软件,比如 OBS Studio,Blender,Rustdesk 等等

丰富的学习资源

  • 首先是 GAZEBO 仿真,为了便于集中整理和分类,我们通过运动方式和底盘类型来划分不同的仿真实例。你可以看到不限于差速,阿克曼,全向轮式机器人,机械臂,足式机器人,无人机,机器人集群的相应仿真,如何将他们快速地运行起来,可以参考机器人的仿真模拟部分来进行

  • 其次是 ROS1,ROS2 优秀 Tutorial,代码 Example,可以在 study_wsros2_study_ws 中找到,你可以对照 B 站古月居视频学习,具体位置在ROS2GO 资料使用说明中查看

安装深度学习环境

注意

此部分操作比较危险,操作前请使用 Timeshift 备份好数据,未备份或误操作导致文件系统损坏,个人数据丢失,天之博特不承担任何责任。

提示

在安装好深度学习环境之后,请先使用 Timeshift 进行备份,由于 Nvidia 驱动更新频繁,所以请务必在安装好驱动进行备份,否则某次不经意的系统更新就会导致 Nvidia 驱动崩溃(内核版本不匹配),所以在安装 N 卡驱动后不要轻易进行 Software Updater,这会导致已安装的 N 卡驱动和 DL 环境无法正常使用。

以强化学习为例,Gym 的 python 运行环境对依赖库的版本要求极严格,所以各种库版本冲突则是太正常不过了。

  • NVIDIA 独显驱动:自v20240921起,ROS2GO 已内置该驱动,无须折腾。
  • Python 虚拟环境:你需要一个干净的 Python 环境管理工具,Miniconda 是个不错的选择,准备一套 Pytorch + ONNX + TensorRT 环境,能先把代码跑起来就是最关键的。尽量避免一行代码还没有跑起来,就出现各种奇奇怪怪的依赖库报错。