ROS学习(二)ROS入门简介
2015-07-17 17:11
190 查看
(在ubuntu下编辑可能效果不太好)
构建一个包必须包含两个文件:
package.xml
CMakeLists.txt
步骤:
使用catkin_create_pkg脚本来创建新的包(beginner_tutorials)
在工作空间build:
将工作空间添加到ROS环境中
安装示例包(后面的示例程序将会用到)
正式运行示例之前必须了解ROS的术语:
---------------------------------------------------------------------------------------------------------
Nodes: 使用ROS与其他节点进行通信
Messages:订阅和发布时的一种数据类型
Topics:节点可以发布消息到一个话题也可以订阅一个话题来接收消息
Master:ROS名称服务
rosout:ROS输出相当于stdout/stderr
roscore:ROS的服务集合(Master+rosout+parameter server):使用ROS必须先运行
----------------------------------------------------------------------------------------------------------
下面介绍示例程序运行:
首先在终端运行roscore,并可以通过rosnode list 来查看活跃的节点
接下来运行之前下载安装到系统中的例子:
在新的终端运行
此时屏幕出现一只小乌龟,再打开一个终端输入:
将会看到新增加一个/turtlesim节点
上述例子中,可以使用__name属性将节点重命名例如:
此时使用rosnode list将看到重命名后的节点名称。
通过示例程序进一步了解ROS 话题(topic)的概念:
打开新的终端执行:
此时通过键盘的方向键可以来驱动小乌龟的移动和方向。
整个过程本质来说如下:
两个节点通过ROS话题进行通信,turtle_teleop_key节点发布(Publish)一系列的方向键操作(Message)到一个话题(Topic)中
而对于turtlesim节点来说也刚好订阅(Subscribe)了相同的话题来接收上述操作
对于整个操作流程可以通过使用
来查看节点通过话题通信的交互图。
另外:rostopic 命令也可以获取话题的一些信息可以通过rostopic -h或者查阅官方wiki来获取更多操作。
构建一个包必须包含两个文件:
package.xml
CMakeLists.txt
步骤:
cd ~/catkin_ws/src
使用catkin_create_pkg脚本来创建新的包(beginner_tutorials)
catkin_create_pkg beginner_tutorials std_msgs rospy roscpp
在工作空间build:
cd ~/catkin_ws catkin_make
将工作空间添加到ROS环境中
. ~/catkin_ws/devel/setup.bash
安装示例包(后面的示例程序将会用到)
sudo apt-get install ros-indigo-ros-tutorials
正式运行示例之前必须了解ROS的术语:
---------------------------------------------------------------------------------------------------------
Nodes: 使用ROS与其他节点进行通信
Messages:订阅和发布时的一种数据类型
Topics:节点可以发布消息到一个话题也可以订阅一个话题来接收消息
Master:ROS名称服务
rosout:ROS输出相当于stdout/stderr
roscore:ROS的服务集合(Master+rosout+parameter server):使用ROS必须先运行
----------------------------------------------------------------------------------------------------------
下面介绍示例程序运行:
首先在终端运行roscore,并可以通过rosnode list 来查看活跃的节点
接下来运行之前下载安装到系统中的例子:
在新的终端运行
rosrun turtlesim turtlesim_node
此时屏幕出现一只小乌龟,再打开一个终端输入:
rosnode list
将会看到新增加一个/turtlesim节点
上述例子中,可以使用__name属性将节点重命名例如:
rosrun turtlesim turtlesim_node __name:my_turtle
此时使用rosnode list将看到重命名后的节点名称。
通过示例程序进一步了解ROS 话题(topic)的概念:
打开新的终端执行:
rosrun turtlesim turtle_teleop_key
此时通过键盘的方向键可以来驱动小乌龟的移动和方向。
整个过程本质来说如下:
两个节点通过ROS话题进行通信,turtle_teleop_key节点发布(Publish)一系列的方向键操作(Message)到一个话题(Topic)中
而对于turtlesim节点来说也刚好订阅(Subscribe)了相同的话题来接收上述操作
对于整个操作流程可以通过使用
sudo apt-get install ros-indigo-rqt sudo apt-get install ros-indigo-rqt-common-plugins rosrun rqt_gragh rqt_graph
来查看节点通过话题通信的交互图。
另外:rostopic 命令也可以获取话题的一些信息可以通过rostopic -h或者查阅官方wiki来获取更多操作。
相关文章推荐
- RecyclerView
- 资源管理器
- hdu A Bug's Life
- 逻辑数据库设计 - 单纯的树(递归关系数据)
- 从0开始到N有多少个1
- PX2分享Android预设桌面定制与电量图标修改以及版本更改
- java学习笔记,1,java语言基础知识
- 给 vlc sdk 添加录像接口
- perl 监控单个ip调用接口的次数
- Java多线程
- MYSQL的索引类型:PRIMARY, INDEX,UNIQUE,FULLTEXT,SPAIAL 有什么区别?各适用于什么场合?
- 逻辑数据库设计 - 无视约束(谈外键)
- Redis事务
- java之最小的k个数
- C++关键字static
- 银行系统
- oracle 创建link 报 ora-01017错误
- 弹出菜单PopupMenu的使用
- ARC有效时,id和void*的显式转换
- 2015 HUAS Provincial Select Contest #3~A