第1章 ROS2功能点
ROS是一个标准的软件平台, 这个平台为开发者提供了构建机器人应用程序所需的各个功能模块,并且开发者能够以“可插拔”的方式组织各个功能模块。
如今,在ROS的生态系统中已经包含了丰富的软硬件实现,毕竟在机器人行业内,让产品适配ROS已经是一众商家的共识了。以较为常用的激光雷达为例,毫不夸张的说市面上的绝大多数激光雷达,都提供了ROS驱动,都可以无缝的接入ROS系统。也正是得益于ROS生态上的丰富性与使用上的灵活性,才使得我们可以很方便快捷的集成各种软硬件以搭建符合自身需求的机器人。
本章将主要介绍在ROS2中不同硬件模块的集成与基本应用,通过该章你可以学习到如何搭建远程开发环境、如何操作机器人底盘以及如何驱动各种传感器等内容,其目的是为后续完成复杂的系统性功能奠定基础。
本章概览
章节 | 学习内容 | 学习收获 |
---|---|---|
1.1 机器人组成 | 机器人的组成部分。 | 能够建立对机器人组成的宏观认知。 |
1.2 控制系统之远程开发环境 | 为什么需要搭建远程开发环境以及如何搭建。 | 能够独立使用SSH和NoMachine搭建友好的远程开发环境。 |
1.3 控制系统之外接USB设备 | 控制系统在外接一些USB设备时,可能会存在的问题以及解决方案。 | 能够独立编写脚本文件以绑定不同的USB设备。 |
1.4 硬件平台 | 机器人底盘驱动的安装与使用、相关消息接口以及实操案例。 | 能够独立驱动机器人底盘,能够理解里程计消息接口,并能通过里程计记录机器人的运行轨迹。 |
1.5 传感器之激光雷达 | 单线与多线激光雷达介绍、驱动的安装与使用、相关消息接口以及实操案例。 | 能够独立驱动激光雷达,能够理解雷达相关消息接口,并实现雷达仿真案例。 |
1.6 传感器之相机 | 相机介绍、驱动的安装与使用、相关消息接口以及实操案例。 | 能够独立驱动相机,能够理解相机相关消息接口,并实现相机仿真案例。 |
1.7 传感器之IMU | IMU介绍、驱动的安装与使用、相关消息接口以及实操案例。 | 能够独立驱动IMU,能够理解IMU相关消息接口,并实现机器人姿态信息的发布。 |
1.8 传感器之GNSS | GNSS介绍、驱动的安装与使用、相关消息接口以及实操案例。 | 能够独立驱动GNSS,能够理解GNSS相关消息接口,并能通过GNSS记录机器人的运行轨迹。 |
1.9 本章小结 | 知识点汇总。 | 知识点回顾。 |
案例演示
案例1:编写程序,订阅机器人的里程计消息,然后生成并发布机器人的运动轨迹信息。
案例2:编写程序实现单线激光雷达仿真。
案例3:编写程序实现多线激光雷达仿真。
案例4:编写程序实现相机仿真。
案例5:通过订阅解析imu消息获取机器人的运动姿态。
案例6:订阅机器人的GNSS数据并生成其运行轨迹。