自学内容网 自学内容网

ROS学习笔记

下载

使用鱼香ROS,一键下载十分好评~

学习地址

官网网站:ros.wiki

调试

  1. 打开终端,输入roscore,发现最后输出start core service,说明安装成功
  2. 尝试小海龟,打开另一个终端,输入rosrun turtlesim turtlesim_node,出现小海龟的窗口,说明成功
  3. 其他小海龟玩法:小海龟画圆

关于文件结构

  1. 最高层是 home 中自己建的 workspace,在里面应该有三大部分:build devel src,其中 src 是我们 写代码的地方,build是存放运行过程中产生的文件的地方,devel是存放可执行文件的地方。

  2. 要想成功运行,src 中应包含CMakeLists.txt。这是告诉计算机编译规则的文件,依赖于 cmake,不过正常安装ros时会同时配置 cmake。

  3. 在 src 中是一些 package,package 里面有新的 CMakeLists.txt,还有必要的 package.xml,其余有 src子文件夹,里面就是依赖于 roscpp 与 rospy 的代码,还有 include 文件夹,里面是头文件。

关于 ros 结构

参考 ros wiki 里面的教程,这里完全是 ros1 的内容

  1. node,节点,是存放信息的地方,与输入输出端口一一对应,比如一个 node 节点可以对应一个激光测距仪。
  2. master,为计算图的其余部分提供名称注册和查找。没有Master,节点将无法找到彼此、交换消息或调用服务。
  3. Parameter Server,参数服务器,允许数据按密钥存储在中心位置,目前是master的一部分。
  4. massage,节点通过传递消息相互通信。消息只是一个数据结构,由键入的字段组成。支持标准基元类型(整数、浮点、布尔等)以及基元类型的数组。消息可以包含任意嵌套的结构和数组(很像C结构)。
  5. topic,节点通过将消息发布到给定的主题来发送消息。主题是用于标识消息内容的名称。单个主题可能有多个并发发布者和订阅者,单个节点可以发布和/或订阅多个主题。可以将主题视为强类型的消息总线。每条总线都有一个名称,只要消息类型正确,任何人都可以连接到总线发送或接收消息。
  6. services,发布/订阅模型是一种非常灵活的通信范式,但它的多对多单向传输不适合分布式系统中经常需要的请求/回复交互。请求/回复是通过服务完成的,服务由一对消息结构定义:一个用于请求,一个用于回复。提供节点以名称提供服务,客户端通过发送请求消息并等待回复来使用该服务。ROS客户端库通常将这种交互呈现给程序员,就像它是一个远程过程调用一样。
  7. bag,包是一种用于保存和播放ROS消息数据的格式。

原文地址:https://blog.csdn.net/m0_60137414/article/details/143416030

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!