learn ROS
相关资料来源于实验楼 wiki等教程以及《ROS机器人程序设计(原书第二版)》
ROS相关概念
- 节点(node):可执行文件 用于与其他节点通信
- 消息(message):数据类型 订阅或发布到一个话题
- 话题(topic):节点发布消息到话题 也可以订阅话题接收消息可以使用TCP/IP和UDP传输 ROS默认TCPROS UDPROS低延迟高效率 但可能产生数据丢失 适合于像远程操控的任务
- 节点管理器(master):ROS名称服务(比如帮助节点找到彼此) 通常使用roscore命令运行
- 服务(service):节点之间通讯的另一种方式 服务允许节点发送请求(request)并获得一个相应(response)
- rqt_console:属于ROS日志框架(logging framework)的一部分 用来显示节点的输出信息
nodelet:另一种类型的节点 这类特殊节点可以在单个进程中运行多个节点 每个nodelet为一个线程(轻量级线程) 可以在不使用ROS网络的情况下与其他节点通信 节点通信效率更高 nodelet对摄像头和3D传感器这类数据传输量非常大的设备特别有用
消息(msg):msg文件是一个描述ROS中所使用消息类型的简单文本 每行声明一个数据类型和变量名
- 服务(srv):一个srv文件描述一项服务 包含请求和响应两个部分 由—分隔
- 消息记录包(bag):保存和回放ROS消息数据的文件格式
- 功能包(package):软件组织的基本形式 具有用于创建ROS程序的最小结构和最小内容 包含节点、配置文件等
- 功能包清单(package manifect):由package.xml的文件管理<