ROS2轻松学造
ROS2轻松学/ROS2轻松造
- ROS2轻松学和ROS2轻松造是新推出基于仿真或真机演示的视频专栏
- ROS2轻松学是以仿真方式学习ROS2, 涉及ROS2的环境搭建,工具,场景仿真应用和算法验证的视频演示
- ROS2轻松造是以真机方式学习ROS2, 涉及ROS2的环境搭建,配置,工具,场景实际应用和算法验证的视频演示
- 镜像账号是ubuntu,密码是:ubuntu
1.ubuntu22.04 ROS2专用镜像
基于ubuntu 22.04 ISO镜像制作(2023-12-26发布,推荐):
- 适用PC/NUC等AMD架构硬件平台
- ROS-EASY-OS22.04系统镜像(整合ROS2 humble及便利工具), 下载镜像, 镜像整合说明, 镜像安装说明
- 安装ROS-EASY-OS22.04系统镜像后,根据ROS2轻松学第1季系统篇4-6完成配置
基于ubuntu 22.04 虚拟机镜像制作(2023-12-04发布,推荐):
- 适用于VMware虚拟机,制作是基于ubuntu下wmware 15.5版本
- ROS-EASY-OS22.04虚拟机镜像(整合ROS2 humble及便利工具), 下载镜像ROS-EASY-OS22.04-VMWare.7z
- 安装ROS-EASY-OS22.04系统镜像后,根据ROS2轻松学第1季系统篇4-6完成配置
基于ubuntu mate 22.04 ARM镜像制作(2023-01-09发布):
2.ubuntu20.04 ROS2专用镜像
基于ubuntu 20.04 ISO镜像制作(2023-12-26发布):
- 适用PC/NUC等AMD架构硬件平台
- ROS-EASY-OS20.04系统镜像(整合ROS1 noetic/ROS2 galactic及便利工具), 下载镜像, 镜像整合说明, 镜像安装说明
- 安装ROS-EASY-OS20.04系统镜像后,根据ROS2轻松学第1季系统篇4-6完成配置
基于ubuntu 20.04 VMware虚拟机镜像(2023-12-04发布):
- 适用于VMware虚拟机
- ROS-EASY-OS20.04VMware虚拟机镜像(整合ROS1 noetic/ROS2 galactic及便利工具), 下载镜像ROS-EASY-OS20.04-VMWare.7z
- 安装ROS-EASY-OS20.04系统镜像后,根据ROS2轻松学第1季系统篇4-6完成配置
基于Jetpack5.0.2 20.04 ARM镜像制作(2023-01-09发布):
3.ROS2轻松学系列
- ROS2轻松学第1季-系统篇(含视频)
- ROS2轻松学第2季-工具篇(含视频)
- ROS2轻松学第3季-Turtlebot3仿真篇(含视频)
- ROS2轻松学第4季-Walking仿真篇(含视频)
- ROS2轻松学第5季-Turtlebot4仿真篇
- ROS2轻松学第6季-Turbot4-ARM仿真篇
4.ROS2轻松造系列
ROS2比较与总结
- 从ros2发布第一个长期版本foxy,就开始参与公司ros产品相关的迭代和迁移开发工作,对于ros2也有一定使用方面的总结。
- 在这里提供一个相关资源,可以帮助到都是学习ros2的朋友们。大家可以更快的学习ros2
1. ros1还是ros2
- 首先学习ros2,不一定需要学习ros1,如果是初接触ros操作系统,直接学习ros2也没有问题。
- 毕竟两个版本的差异还不小。如果已经学习过ros1的,学ros2那就更快,毕竟两个概念还是继承的相通的。
- 可以看看我们整理的 ros1与ros2的比较: ros2入门教程-比较ros1和ros2的异同 - 创客智造
- 官方资料:ROS官网 | 官方文档教程 | 官方论坛 | 官方问答 | ROS设计 | 官方github
- Awesome ROS2各种资源汇总:https://fkromer.github.io/awesome-ros2/
- Awesome ROS2各种资源汇总github:https://github.com/fkromer/awesome-ros2
2. ros2环境搭建
ros2的环境搭建,跟ros1的搭建是类似。经过官方的一系列完善,步骤已经是一样的。都比较简单。
可以看看我们整理的资料: ROS2入门教程 | ROS2探索总结 | ROS2与launch入门教程
目前我使用最顺畅的ros2版本是 galactic ,建议从这个版本开始。
从foxy版本开始也没问题。这个也是长期支持的版本, 未来还会有更强大的的版本。可以慢慢升级。
3. ros2软件包
核心的外围功能包,基本都是有迁移的ros2版本,比如建图,导航,控制等。
一些外围算法应用的迁移不一定都有相应的ros2版本,不过自己有编程能力,这个迁移都可以自己完成。比如一些硬件的驱动。
传感器的专栏: ROS2与传感器教程 - 创客智造
激光slam算法专栏: ROS2与SLAM入门教程 - 创客智造
导航算法专栏: ROS2与Navigation2入门教程 - 创客智造
视觉slam算法专栏: ROS2与VSLAM入门教程 - 创客智造
4. 编程语言
核心的开发语言还是C、C++和Python,这个是没疑问的。
一般硬件相关软件包,还是多为C++的,算法相关的软件包,还是Python比较多,界面相关的Python qt为多。
手机相关的就是rcljava, 网页相关就是rclnodejs 等。
根据自己的需要,在官网wiki和github库多学习就可以使用。
对于C++编程熟悉,可以学习:ROS2与C++入门教程 - 创客智造
对于Python语言熟悉的,可以学习:ROS2与Python入门教程 - 创客智造
对于Matlab语言熟悉的,可以学习: 学习ROS2与Matlab入门教程
5. ros2仿真
搭建好ros2环境,那就做做仿真,进一步看看如果使用激光,相机,建图,导航等功能
首推turtlebot3的仿真 ROS2与Turtlebot3仿真 - 创客智造
其次walking的仿真 ROS2与walking机器人仿真教程 - 创客智造
gazebo仿真相关知识: ROS2与Gazebo11入门教程 - 创客智造
Ignition仿真相关知识:Ignition入门教程 - 创客智造
webots仿真相关知识:ROS2与webots入门教程 - 创客智造
6. ros2真机
可以通过仿真来开发功能,但是功能始终要在真机做验证的。毕竟仿真和真机还是有不少差异。
仿真的数据都是比较理想的,可能功能开发出来,在仿真运行得好好,到了真机都出现各种意想不到的问题。
所以有一个真机做验证还是必要的。
walking机器人真机: ROS2与walking机器人入门教程 - 创客智造
turtlebot3机器人真机: foxy版Turtlebot3-burger入门教程 - 创客智造
turtlebot4机器人真机: 学习Turtlebot4入门教程
7. ROS1/2 Windows
- 新版ROS2加大了对windows的支持.
- 对于想在windows下玩ROS2的同学是福音. 目前的便利性还比不上linux的.
- 使用windows下使用可以参考: 学习ROS2与windows入门教程
- windows官方教程: ROSOnWindows
8. 总结
Turtlebot3,Turtlebot4和walking机器人是我们用于开发ros2和验证算法的移动平台。
基于上述移动平台,我们学习和整理了上面的相关专栏。
目前我们也在继续整合和整理更多相关专栏。比如界面相关,web相关,更多算法的,更多支持硬件。
一句话,掌握扎实的编程能力,什么都好说。要不只停留在做调包,进步肯定会比较慢。
学编程也不是短时间能做好的事情,多参考别人现成的包,多练习,多做不同项目。坚持下来,总有收获。