ROS基础知识
Contents
关于ROS需要知道的事情
ROS1基础
Robot Operating System,是一个软件框架,用以创建和管理机器人应用程序的,并不完全是潜意识里的控制机器人行为的代理
The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications
在ROS中,不同的软件组件叫做节点Node,相当于一个进程,可以通过主题topics和服务services两种不同的方式进行通信,模块化编程
它采用自己的构建工具:ROS1catkin
ROS2colcon
本质上也属于OS,因此很多概念带入操作系统的思维去理解比较好
ROS1发行版
主要就是这三个:ROS Kinetic、ROS Melodic和ROS Noetic
基本概念
ROS采用点对点网络,称之为计算图
基本概念包括:nodes, Master, Parameter Server, messages, services, topics, and bags
这些数据结构在ros_comm
库里面实现
- 节点Nodes: 执行计算处理的基本执行单元,可以理解为一个进程
- 主机Master:信息中心,充当服务器,管理节点通信
- 参数服务器:存储和共享节点的参数、配置信息
- 消息:节点传递数据的标准格式(可以理解为报文吧)
- 服务:节点之间请求-响应的通信方式
- 话题:节点之间发布-订阅,实现异步通信的方式
- 数据包:存档?
RVIZ
rviz
是ROS的一个三维可视化工具
launch文件
定义启动配置的xml
文件,按照这上面的说明进行启动,只是描述语言并不是脚本