关于ROS的个人见解
2012-09-30 10:39
393 查看
ROS只是一个程序开发框架而已,它主要有以下东西组成:
1、ROS运行环境,主要负责全局信息、消息传递、名称管理。
2、ROS专用函数库,主要是规定ROS各种规则:通信、管理全局信息。
3、各种能重复利用的package
4、一些方便开发的工具
ROS本身运行在Linux中
用ROS开发框架,开发出来的东西是一个个可重复利用的package(主要是c++或python代码、配置文件和编译用的脚本),每个package编译后生成1个或几个Node(可执行文件)。Node之间可按照ROS制定的规则进行通信。通信方式(应该是基于socket)有两种:
1、 广播消息机制。一个node广播出特定的消息,而监听这种消息的node就能收到相应的消息,这种通信方式是异步的。
2、 请求/应答机制。一个node对另外一个node发出请求,另外一个node则回应。这种通行方式是同步的。
如:
可以将获取摄像头图像的程序做成一个Node,这个Node向外广播出获取的图像数据。
其他node可以监听前者发出的消息,从而获取摄像头图像数据。
使用ROS提供的通信机制,用ROS开发出来的程序能方便相互协作。但这种耦合度是很低的,这能大大提高代码的重复利用率。
1、ROS运行环境,主要负责全局信息、消息传递、名称管理。
2、ROS专用函数库,主要是规定ROS各种规则:通信、管理全局信息。
3、各种能重复利用的package
4、一些方便开发的工具
ROS本身运行在Linux中
用ROS开发框架,开发出来的东西是一个个可重复利用的package(主要是c++或python代码、配置文件和编译用的脚本),每个package编译后生成1个或几个Node(可执行文件)。Node之间可按照ROS制定的规则进行通信。通信方式(应该是基于socket)有两种:
1、 广播消息机制。一个node广播出特定的消息,而监听这种消息的node就能收到相应的消息,这种通信方式是异步的。
2、 请求/应答机制。一个node对另外一个node发出请求,另外一个node则回应。这种通行方式是同步的。
如:
可以将获取摄像头图像的程序做成一个Node,这个Node向外广播出获取的图像数据。
其他node可以监听前者发出的消息,从而获取摄像头图像数据。
使用ROS提供的通信机制,用ROS开发出来的程序能方便相互协作。但这种耦合度是很低的,这能大大提高代码的重复利用率。
相关文章推荐
- 个人关于css中几种取消浮动对于其他元素影响的见解
- 关于javamail 调用 office 365 发邮件的个人见解
- 关于Spring IOC的个人见解(待更新)
- 关于向上转型与向下转型的一点个人见解
- 关于ADO.Net连接池(Connection Pool)的一些个人见解
- 个人关于camera的参数up的一些见解
- 关于指针的个人见解
- 关于大型页游后端管理系统的一点经验和个人见解
- 关于ajax和iframe的个人总结和见解
- 关于研发管理的几点个人见解(-)
- 关于JS正则表达式中g模式下test出现true/false交替的个人见解
- 开发中关于RunLoop和RunTime一些个人见解
- 关于Ajax请求跨域问题之个人见解
- 关于ADO.Net连接池(Connection Pool)的一些个人见解
- 关于测试点和测试要点的一点个人见解
- 关于微机原理的一些个人见解(2)
- 关于mqtt不适合移动聊天消息推送的个人见解
- 关于队列的个人见解
- 关于对象初始化内部顺序的个人见解
- 关于项目管理的一些个人见解