ROS文件系统架构:
- Packages:是ROS代码的软件组织单元。每个Package包含库、可执行程序、脚本或其他构件。
- Manifests(package.xml):清单是Package的描述。它用于定义包之间的依赖关系,并捕获关于包的元信息,如版本、维护程序、许可证等。
ROS基本概念:
- Nodes: 节点是使用ROS与其他节点通信的可执行文件。
- Messages: 订阅或发布主题时使用的ROS数据类型。
- Topics: 节点可以向主题发布消息,也可以订阅主题来接收消息。
- Master: ROS的名称服务(如: 帮助节点找到彼此)
- rosout:在 ROS中相当于stdout/stderr
- roscore: Master + rosout + 参数服务器
客户端库:
- rospy: python客户端库
- roscpp: C++客户端库
消息(msg)和服务(srv):
- 消息(msg):msg文件就是一个描述ROS中所使用消息类型的简单文本。它们会被用来生成不同语言的源代码。
- 服务(srv):一个srv文件描述一项服务。它包含两个部分:请求和响应。
msg文件存放在package的msg目录下,srv文件则存放在srv目录下。
msg