首页 > 代码库 > Robotics System Toolbox笔记(1)

Robotics System Toolbox笔记(1)

1、ROS基本概念

ROS全称为Robot Operating System,是一种采用分布式架构的元操作系统,它本身并不是通常意义上的操作系统,可以简单的将它理解为是在多个物理计算机中运行的众多ROS节点形成的一个ROS网络。

 

ROS的基本概念

ROS网络

由机器人系统的不同部分组成,网络可以在数个机器上分布。

ROS主节点

定位ROS网络中的不同部分,由主节点URI(Uniform Resource Identifier,统一资源定位符)定位,该URI指定主节点运行的机器主机名或IP地址。

ROS节点

包含相关联的ROS功能的实体,一个ROS网络可以包含许多ROS节点。

发布者

发送消息到指定的主题

订阅者

接收订阅的主题对应的消息

 

 

2、Robotics System Toolbox基本命令

(1). rosinit

rosinit

初始化ROS,默认在Matlab中创建ROS主节点并启动全局节点与主节点相连。

 

(2). rosnode

rosnode

rosnode list

nodelist = rosnode(‘list‘)

列出在ROS网络注册的所有节点

rosnode info nodename

nodeinfo = rosnode(‘info‘,nodename)

返回一个结构体,该结构体包含指定节点nodename的名称、URI、发布者、订阅者、服务。

rosnode(‘ping‘,nodename)

与指定节点nodename进行通信测试并显示响应时间

 

(3). rostopic

rostopic

rostopic list

topiclist = rostopic(‘list‘)

从ROS主机返回ROS主题列表

rostopic echo topicname

msg = rostopic(‘echo‘,topicname)

从ROS主机返回有关指定主题 topicname的消息

rostopic info topicname

topicinfo = rostopic(‘info‘,topicname)

返回指点主题topicname的消息类型、发布者、订阅者

rostopic type topicname

msgtype = rostopic(‘type‘,topicname)

返回指定主题的消息类型

 

(4). rosservice

rosservice

rosservice list

svclist = rosservice(‘list‘)

返回ROS网络中的活动服务器的服务名称列表

rosservice info svcname

svcinfo = rosservice(‘info‘,svcname)

返回指定服务svcname的信息

rosservice type svcname

svctype = rosservice(‘type‘,svcname)

返回服务类型

rosservice uri svcname

svcuri = rosservice(‘uri‘,svcname)

返回服务的URI

 

Robotics System Toolbox笔记(1)