mooc ROS笔记2 ROS通信架构

master

: 每个node 启动时都要向master注册 管理node之间的通信
在这里插入图片描述

启动master

roscore 同时还会启动 rosout(日志输出 error warning…) 和 parameter server(参数服务器)

node

就是ros的进程

pkg里可执行文件运行的实例 例如一些可执行文件被加载到了内存中 就变成了node 一个node干一件事就可以了,所以一般以功能划
分。

rosrun

启动一个node 
rosrun[pkg_name][node_name]

rosnode

rosnode list   
列出当前运行的node信息

显示某个node的详细信息
rosnode info [node_name]

结束某个node
rosnode kill [node_name]

roslaunch

启动master和多个node
roslaunch [pkg_name] [file_name.laaunch]

launch 文件 格式,和package。xml 格式一样
在这里插入图片描述
一般机器人启动的那个文件起名为 bring_up.launch

gazebo太慢
解决:把模型下到本地
$ cd ~/.gazebo/
$ mkdir -p models
$ cd ~/.gazebo/models/
$ wget http://file.ncnynl.com/ros/gazebo_models.txt
$ wget -i gazebo_models.txt
$ ls model.tar.g* | xargs -n1 tar xzvf

我们来启动下
roslaunch robot_sim_demo robot_spawn.launch
gazebo瞬间打开场景

运行
rosrun robot_sim_demo robot_keyboard_teleop.py
能够通过键盘控制gazebo里面的小车
在这里插入图片描述
是因为键盘发布的指令通过topic 发送给 gazebo
再看看rosnode list
多出来一个/robot_teleop 节点

运行
rosrun image_view image_view image:=/camera/rgb/image_raw

猜你喜欢

转载自blog.csdn.net/weixin_43513123/article/details/94597501