ROS学习笔记------ROS基础-----认识ros day 2 2019/1/21 帅某

** ROS学习笔记----->ROS基础------->认识ros
day 2 2019/1/21 帅某 南京工程学院**
本笔记根据胡春旭老师教程记下,胡老师辛苦了,讲的特别棒,收获很大。谢谢胡老师
在这里插入图片描述
一。ros-------->计算图
(1)节点(node):软件模块
(2)节点管理器(ros master):控制中心,提供参数管理
(3)话题(topic):异步通讯机制,传输消息
---------------------------------------------------------------单向通讯
在这里插入图片描述
基本通讯模型一话题通讯模型
(4)服务(service):同步通讯机制,传输消息,应答数据
------------------------------------------------------------------------------双向通讯
在这里插入图片描述
基本通讯模型二服务通讯模型
二。ros-------->话题通讯模型
在这里插入图片描述
步骤一:talker注册。
通过端口,把相应信息注册到ros master端口。
步骤二:listener注册。
通过端口,把相应信息注册到rosmaster端口,同时订阅talker的相关信息。
步骤三:ros master 信息匹配。
ros master通过talker和listener注册的信息,匹配他们信息。如果listener订阅的是talker信息,建立两者之间联系。
如果listener没有相应的匹配信息,继续等待,知道信息匹配成功。此时,listener接受talker的全部信息,包括ip地 址等信息。
步骤四:listener发送链接请求。
步骤五:talker确认链接请求。
步骤六:建立网络连接。
步骤七:talker向listener发送数据。

注:前五个步骤使用RPC通讯协议,链接确认后,使用tcp通讯协议。

三。服务通讯机制
在这里插入图片描述
步骤一:talker注册。
通过端口,把相应信息注册到ros master端口。
步骤二:listener注册。
通过端口,把相应信息注册到rosmaster端口,同时订阅talker的相关信息。
步骤三:ros master 信息匹配。
ros master通过talker和listener注册的信息,匹配他们信息。如果listener订阅的是talker信息,建立两者之间联系。
如果listener没有相应的匹配信息,继续等待,知道信息匹配成功。此时,listener接受talker的全部信息,包括ip地 址等信息。
步骤四:建立网络连接。
步骤五:talker向listener发送数据。

注:前三个RPC通讯协议,后两个TCP协议

四。参数通讯机制(类似于定义全局变量,改变变量值,访问变量值
在这里插入图片描述
步骤一:talker设置变量
步骤二:listener查询参数值
步骤三:roa master向listener发送参数值

注:全部为RPC协议。

五。话题通讯和服务通讯区别
在这里插入图片描述六。系统文件(所有功能包结构)
在这里插入图片描述
元功能包:组织多个用于同意目的的功能包
功能包清单(package manifest):记录基本信息,作者信息,许可证,依赖选项,编译标志等
消息类型(message):ROS节点之间订阅和发布通讯信息。消息类型有:ros系统,.msg文件定义的消息类型
服务类型(service):rosros与客户通讯数据类型。消息类型有:ros系统,.srv文件电一的消息类型
代码:功能包接电源代码文件
七。安装好ros(请参考我的第一个博文,我安装时间大约需要2个小时https://blog.csdn.net/weixin_43262513/article/details/86562243)。
默认路径:computer—>opt—>ros—>kinect
bin文件夹:可执行的具体的程序,ros或者功能包提供的命令。即在终端中执行的命令。
etc文件夹:ros相关配置文件
include文件夹:俺主管的所有代码,功能包的头文件
lib文件夹:所有按包装的可执行程序,即安装的节点。运行节点就可以启动相应功能包的功能。
share文件夹:配置文件,msg文件,srv文件,接口具体的信息,协议等。
八。ros初次启动(快捷键启动终端 ctrl+alt+t)输入命令:
步骤一:roscore
功能:启动rosmaster节点
在这里插入图片描述
步骤二:Ctrl+c退出
出现上述图片信息,说明安装成功。恭喜,走进ros大门。哈哈
九。常用命令
在这里插入图片描述
小技巧:终端输入ros ,按下table建,就可以参看相关命令信息。其他也是如此。

猜你喜欢

转载自blog.csdn.net/weixin_43262513/article/details/86572895