节点管理命令
,通过此命令可以查看、操作以及监测已经运行的ros节点:rosnode 命令 作用
rosnode list 列出当前运行的node信息
rosnode info /话题名 显示出node的详细信息
rosnode kill /话题名 结束某个node
rosnode ping 测试连接节点
rosnode machine 列出在特定机器或列表机器上运行的节点
rosnode cleanup 清除不可到达节点的注册信息
ROS 主题的调试信息
,包括发布者,订阅者,发布频率和ROS消息rostopic list 列出当前所有的topic
rostopic info /话题名 显示某个topic的属性信息
rostopic echo /话题名 显示某个topic的内容
rostopic pub /话题名 ... 向某个topic发布内容
rostopic bw /话题名 查看某个topic的带宽
rostopic hz /话题名 查看某个topic的频率
rostopic find topic_type 查找某个类型的topic
rostopic type topic_name 查看某个topic的类型(msg)
rostopic delay 显示带有 header 的主题延迟
package管理的工具
,命令的用法如下:rospack
命令 作用
rospack help 显示rospack的用法
rospack list 列出本机所有package
rospack depends [package] 显示package的依赖包
rospack find [package] 定位某个package
rospack profile 刷新所有package的位置记录
管理ROS package依赖项
的命令行工具rosdep check [package] 检查package的依赖是否满足
rosdep install [package] 安装package的依赖
rosdep db 生成和显示依赖数据库
rosdep init 初始化/etc/ros/rosdep中的源
rosdep keys 检查package的依赖是否满足
rosdep update 更新本地的rosdep数据库
显示有关 ROS消息类型的信息
的命令行工具。rosmsg list 列出系统上所有的消息
rosmsg show msg_name 显示某个消息的描述
rosmsg info msg_name 显示某个消息的信息
rosmsg md5 显示 md5 加密后的消息
rosmsg package 显示某个功能包下的所有消息
rosmsg packages 列出包含消息的功能包
rosservice list 显示服务列表
rosservice info 打印服务信息
rosservice type 打印服务类型
rosservice uri 打印服务ROSRPC uri
rosservice find 按服务类型查找服务
rosservice call 使用所提供的args调用服务
rosservice args
rossrv show 显示服务消息详情
rossrv info 显示服务消息相关信息
rossrv list 列出所有服务信息
rossrv md5 显示 md5 加密后的服务消息
rossrv package 列出某个包下所有服务消息
rossrv packages 列出包含服务消息的所有包
rosparam set param_key param_value 设置参数
rosparam get param_key 显示参数
rosparam load file_name 从外部文件加载参数
rosparam dump filename 保存参数到外部文件
rosparam delete 删除参数
rosparam list 列出所有参数名称
roscore #启动ros master
rosrun turtlesim turtlesim_node #启动小龟仿真器
rosrun turtlesim turtle_teleop_key #启动小龟控制节点
rosbag record -a -O cmd_record #话题记录
rosbag play cmd_record.bag #话题复现
rqt_graph
~$ rosnode info /turtlesim //查看海龟仿真话题接口数据内容
--------------------------------------------------------------------------------
Node [/turtlesim]
Publications: //turtlesim 这个节点发布那些数据
* /rosout [rosgraph_msgs/Log] //日志
* /turtle1/color_sensor [turtlesim/Color] //颜色信息
* /turtle1/pose [turtlesim/Pose] //位置
Subscriptions: //订阅那些数据
* /turtle1/cmd_vel [geometry_msgs/Twist] //这个是键盘节点发布的指令,订阅这个指令让海龟动起来
Services: //服务
* /clear
* /kill
* /reset
* /spawn //这个服务可以产生新的海龟
* /turtle1/set_pen
* /turtle1/teleport_absolute
* /turtle1/teleport_relative
* /turtlesim/get_loggers
* /turtlesim/set_logger_level
contacting node http://xinghai:41471/ ... //内部通信的机制
Pid: 15318
Connections:
* topic: /rosout
* to: /rosout
* direction: outbound (37887 - 127.0.0.1:46600) [26]
* transport: TCPROS
* topic: /turtle1/cmd_vel
* to: /teleop_turtle (http://xinghai:38343/)
* direction: inbound (54384 - xinghai:38191) [28]
* transport: TCPROS
rostopic :话题
rostopic echo // 打印话题里面的内容的
rostopic list:话题列表# 给小龟话题的是/turtle1/cmd_vel
rostopic echo /turtle1/pose
x: 5.544444561004639
y: 5.544444561004639
theta: 0.0
linear_velocity: 0.0 //线速度
angular_velocity: 0.0 //角速度
---
x: 5.544444561004639
y: 5.544444561004639
theta: 0.0
linear_velocity: 0.0
angular_velocity: 0.0
---
rostopic pub //去发布某一话题
rostopic list //查看话题
rostopic pub /turtle1/cmd_vel geometry_msgs/Twist //发布话题海龟的速度
"linear: //linear:线速度
x: 0.0
y: 0.0
z: 0.0
angular: //angular:角速度
x: 0.0
y: 0.0
z: 0.0"
//加上: -r 10 :以一秒中发布10次发布指令
rostopic pub -r 10 /turtle1/cmd_vel geometry_msgs/Twist //发布话题海龟的速度
rosservice call //发布请求
rosservice list : //请求的节点列出来
// 请求/spawn服务
rosservice call /spawn //用Tab来把后面的补全:创建一个新海龟,海龟名字要写
"x: 0.0 //在什么位置产生,名字
y: 0.0
theta: 0.0
name: ''
rosbag record -a -O cmd_record
rosbag play cmd_record.bag
小龟能将保存下来的路程保存下来自己做行走
获取小龟页面的节点值
rosparam list #查询节点
rosparam get 节点名称 #获取节点信息
rosservice call /clear "{}"
#修改rgb值
rosparam get /background_r 255
rosparam get /background_g 255
rosparam get /background_b 255
rosservice call /clear "{}" #刷新rgb值
rosparam dump param.yaml #保存现在的参数值
in RPY (radian) :弧度
in RPY (degree) :角度
roslaunch turtle_tf turtle_tf_demo.launch #小龟跟踪
rosrun tf view_frames #查看链接
rosrun tf tf_echo turtle1 turtle2 #位置角度
rosrun rviz rviz -d 'rospack find turtle_tf' /rviz/turtle_rviz.rviz #打开RVIz软件
source ~/tutorial_ws/devel/setup.bash
Command ‘roscore’ not found, but can be installed with:
sudo apt install python3-roslaunch
amcl gmapping map_server move_base