1.使用rqt_console和rqt_logger_level
rosrun rqt_console rqt_console
执行完该命令后有如下界面:

继续执行如下命令:
rosrun rqt_logger_level rqt_logger_level
此时有如下新界面:

接下来继续运行如下命令:
rosrun turtlesim turtlesim_node
上面第一个截图更新为如下:

接下来执行如下命令发布一个Topic:
rostopic pub /turtle1/cmd_velgeometry_msgs/Twist -r 1 -- '{linear: {x: 2.0, y: 0.0, z: 0.0}, angular: {x:0.0, y: 0.0, z: 0.0}}'
第一个截图界面会不停的刷新LOG信息,如下截图:

2.使用roslaunch
roscd beginner_tutorials
执行访命令后有如下提示:
roscd: No such package/stack'beginner_tutorials'
表示环境变量没设置,即在创建Package后的那个步骤,我们可以如下执行:
cd ~/ros/catkin_ws/
source devel/setup.sh
执行完上面两命令后,再执行上面的命令就没错误了,当前路径能切到相应的目录。
进入相应的包目录后(如~/ros/catkin_ws/src/beginner_tutorials),接下来执行如下命令创建相应目录:
mkdir launch
cd launch/
接下来创建turtlemimic.launch,文件内容如下:
<launch>
<group ns="turtlesim1">
<node pkg="turtlesim" name="sim" type="turtlesim_node"/>
</group><group ns="turtlesim2">
<node pkg="turtlesim" name="sim" type="turtlesim_node"/>
</group><node pkg="turtlesim" name="mimic" type="mimic">
<remap from="input" to="turtlesim1/turtle1"/>
<remap from="output" to="turtlesim2/turtle1"/>
</node></launch>
上面这个配置文件的作用是:启动名空间turtlesim1和turtlesim2的名为sim的node,这会创建两人个模拟器,接下来会启动名为mimic的node,并分别将input和output两主题重命名为turtlesim1和turtlesim2。
接下来使用如下命令以roslaunch方式执行这个配置文件去启动node:
roslaunch beginner_tutorialsturtlemimic.launch
该命令在上面执行完工作空间下的source操作后在同一Terminal下的任一目录都可执行,接下来继续执行rostopicpub /turtlesim1/turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, -1.8]'命令,执行后有如下界面(有两个相同界面出现):

此时从rqt_graph里看到的界面如下:

可以很清晰的看出launch文件里的定义中input和output与node之间的关系。
参考网址:http://wiki.ros.org/ROS/Tutorials/UsingRqtconsoleRoslaunch
网友评论