机器人操作系统(ROS)教程9:ROS的节点-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6417|回复: 0

机器人操作系统(ROS)教程9:ROS的节点

[复制链接]
发表于 2015-2-13 13:12 | 显示全部楼层 |阅读模式
我们在介绍ROS的框架的时候,提到过ROS的节点。“节点(NODE):一个节点就是一个可执行程序,它使用ROS可以和其他节点进行通信。”并且,ROS的客户端库允许允许用不同的编程语言编写的节点之间相互通信。在操作节点之前,为了直观效果,先安装一个轻量级的模拟器。打开终端,在里面输入:
sudo apt-get install ros-<distro>-ros-tutorials  
命令中的"<distro>"需要替换为你自己的ros版本,若按照前面的教程的话,替换为indigo。
这次的操作是在ROS框架中进行的,所以需要先运行roscore,在终端中输入:
roscore
可以用rosnode命令来查看正在运行的ros的节点的信息。如下命令列出了活跃的ros节点,新打开一个终端输入
rosnode list
将会看到:

/rosout
说明了当前只有一个节点rosout在运行。
可以用下面这个命令返回活跃的节点的信息:
rosnode info /rosout
你会看到:
图像 2.png

rosrun允许你直接运行一个包里面的节点。使用方法如下:
rosrun [package_name] [node_name]  
在终端中输入:
rosrun turtlesim turtlesim_node  
将会看到在屏幕上出现了一只乌龟。这个命令的作用是运行turtlesim包下面的turtlesim_node节点。
这个时候,新打开一个终端,输入:
rosnode list  
可以看到我们刚刚运行的节点,出现在了列表中。节点的名字只是节点的一个属性。我们可以在启动节点时,用命令直接给节点指定名字,将刚刚打开的乌龟关闭,输入:
rosrun turtlesim turtlesim_node __name:=my_turtle  
再用一下rosnode list 就可以看到我们所修改的名字。







您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 10:33 , Processed in 0.282737 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表