启动 master,开启终端,输入 roscore,运行 turtle 节点,rosrun turtlesim turtlesim_node,新开启一个终端,输入
rosparam list
看到如下结果:
发现其中有三个参数是修改背景颜色的。
在终端中输入:
rosparam set background_r 150
然后继续输入:
rosservice call clear
变为
获取背景绿色通道的值
rosparam get background_g
利用
rosparam get /
获取所有参数的值
将所有的参数写入 params.yaml 文件
在终端输入:
rosparam dump params.yaml
将yaml文件重载入新的命名空间,比如说copy空间:
rosparam load params.yaml copy
rosparam get copy/
运行结果:
先运行:
sudo apt-get install ros--rqt ros--rqt-common-plugins ros--turtlesim
确保已经安装了所需要的包。
rqt_console 属于ROS日志框架(logging framework)的一部分,用来显示节点的输出信息。rqt_logger_level 允许修改节点运行时输出信息的日志等级(logger levels)(包括 DEBUG、WARN、INFO和ERROR)。
继续运行小乌龟节点,输入:
rosrun rqt_console rqt_console
得到:
新开一个终端:输入:
rosrun rqt_console rqt_console
得到:
再次启动:
rosrun turtlesim turtlesim_node
然后 refresh 一下 rqt_logger_level 窗口 并将日志等级修改为 warn
再开启一个终端,运行:
rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, 0.0]'
可见:
Fatal是最高优先级,Debug 是最低优先级。通过设置日志等级可以获取该等级及其以上优先等级的所有日志消息。比如,将日志等级设为Warn时,会得到 Warn、Error和 Fatal 这三个等级的所有日志消息
关闭 turtlesim 节点。
进入
cd ~/catkin_ws/src/beginner_tutorials/
mkdir launch
cd launch/
vim turtlemimic.launch
将以下代码写入:
运行:
roslaunch beginner_tutorials
下面对 launch 文件进行介绍:
以launch标签开头以表明这是一个launch文件
创建了两个节点分组并以'命名空间(namespace)'标签来区分,其中一个名为turtulesim1,另一个名为turtlesim2,两个组里面都使用相同的turtlesim节点并命名为'sim'。这样可以同时启动两个turtlesim模拟器而不会产生命名冲突
在这里启动模仿节点,并将所有话题的输入和输出分别重命名为turtlesim1和turtlesim2,这样就会使turtlesim2模仿turtlesim1
结束标签
在一个新终端中输入:
rostopic pub /turtlesim1/turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0]' '[0.0, 0.0, -1.8]'
虽然发布命令只是给turtlesim1发送了速度设定消息,会看到两个turtlesims会同时开始移动