当前位置: 首页 > article >正文

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消息数据的格式。

http://www.kler.cn/a/386209.html

相关文章:

  • 一文说清libc、glibc、glib的发展和关系
  • Redis知识点整理 - 脑图
  • 使用Python实现对接Hadoop集群(通过Hive)并提供API接口
  • Docker compose部署portainer
  • (六)Spark大数据开发实战:豆瓣电影数据处理与分析(scala版)
  • 响应式网页设计--html
  • 排序(用java实现)
  • GIT GUI和 GIT bash区别
  • 交换排序与快速排序
  • PCIE RTT 简单介绍
  • flink 内存配置(四):内存调优和问题处理
  • STM32ZET6-USART使用
  • Linux基础4-进程3(进程优先级,竞争,独立,并行,并发,进程切换)
  • CopyOnWriteArrayList 的应用场景:并发环境中的强大工具
  • 【插件】安装插件 postcss-pxtorem 转换样式单位 px 为 rem
  • [linux驱动开发--API框架]--platform、gpio、pinctrl
  • go语言中的结构体含义和用法详解
  • 打印沙漏的4种解法(直接法编程、艺术化编程)
  • 如何使用SSH密钥和公钥加密技术保护您的cPanel服务器
  • 【Linux】一篇文章轻松搞懂基本指令
  • Dinky控制台:利用SSE技术实现实时日志监控与操作
  • QT中QML学习笔记2
  • HarmonyOS 总结
  • VMware+Ubuntu+finalshell连接
  • 【C++】【算法基础】快速排序
  • cocos creator 3.8.3物理组件分组的坑