博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(五)ROS节点
阅读量:5009 次
发布时间:2019-06-12

本文共 1065 字,大约阅读时间需要 3 分钟。

一. 理解ROS 节点:

ROS的节点: 可以说是一个可运行的程序。当然这个程序可不简单。因为它可以接受来自ROS网络上其他可运行程序的输出信息,也可以发送信息给ROS网络,被其他 ROS 可运行程序 接收。所以虽然你看ROS它是在执行好多个程序,但是它们可是相互关联的,是一个网络。所以 Willow Garage 公司管这种可运行的程序叫做: 节点

二. 运行ros节点的大前提:

启动roscore (它是运行所有ROS程序前 首先要运行的命令) 。新开一个终端(Ctrl+Alt+T):新开一个终端(Ctrl+Alt+T):

这里写图片描述

roscore 命令执行完之后,它也会产生一个节点,这个节点是主节点,叫:/rosout

三. 查看当前运行的 ROS 节点

当前有什么节点在运行:重新开一个终端,执行 rosnode list命令 就可以罗列出当前运行的所有ROS节点:

这里写图片描述

如果我们想看一下某个节点/rosout里面的具体的信息,执行 rosnode info /rosout命令:

这里写图片描述

四. 例子,运行一个节点:

下面来具体运行一个 ros节点 程序,使用什么命令运行它 呢? 答案: rosrun 命令。

 rosrun 命令的使用格式:# rosrun [package_name] [node_name]

其中:package_name是程序包名;node_name是ros节点的可执行程序的名字。

比如: 运行一个 ROS 里的例子程序: (这个例子是开一个窗口,窗口里面有一只小海龟。只是想举一个例子来让大家直观的看看ROS节点是个什么东西。)

$ rosrun turtlesim turtlesim_node

输出

这里写图片描述

我们重新开个终端(Ctrl+Alt+T),执行 rosnode list 命令,再来看现在有哪些节点在运行:

/rosout/turtlesim

这里写图片描述

 

六. ping一个ROS节点

你看ROS它是在执行好多个程序,但是它们可是相互关联的,是一个网络。所以我们可以ping任何一个节点。

$ rosnode ping /my_turtle

这里写图片描述

总结:
ROS中的每个节点都可以将一些数据发布到ROS网络上(这个过程叫做:发布话题)。
并且ROS的每个节点都可以在这个网络总线上接收自己想要的数据(这个过程叫订阅话题, 就像是你订阅一刊杂志一样)。
所以下一讲,就讲: ROS 发布话题 和 订阅话题。

转载于:https://www.cnblogs.com/Jessica-jie/p/8519481.html

你可能感兴趣的文章
BZOJ 1083: [SCOI2005]繁忙的都市
查看>>
Maven 编译
查看>>
《学习之道》第十章学习方法29还记得散步的好处嘛
查看>>
Git常用命令总结
查看>>
iOS获取设备IP地址
查看>>
JavaSE| String常用方法
查看>>
NRF51822配对绑定要点
查看>>
C语言博客作业—数据类型
查看>>
Python封装与隐藏
查看>>
[leetcode]Count and Say
查看>>
cookie、session和token的概念入门
查看>>
保护网站页面内容+版权
查看>>
Golang模拟客户端POST表单功能文件上传
查看>>
重启进程
查看>>
js 进度条效果
查看>>
RelativeLayout
查看>>
2014 10 07 ················男人感悟100(转自MOP)
查看>>
安卓开发之生成cache目录和files目录
查看>>
LeetCode232:Implement Queue using Stacks
查看>>
安装eclipse maven插件m2eclipse No repository found containing
查看>>