ROS tf工具与消息查看命令

TF工具坐标系统是一个基础理论,但是涉及到多个空间的变换,不容易进行想象所以TF工具给开发者调试提供很多方便

1 tf_monitor :将当前的坐标系转换关系打印到终端控制台

rosrun tf tf_monitor

 若只需要知道任意两个坐标系之间的TF变换如base_link -> odom,则可以用以下命令

 rosrun tf tf_monitor base_link odom

 2 tf_echo <source_frame> <target_frame> :把特定的坐标系之间的平移旋转关系,打印到终端控制台

如base_link -> odom之间的平移旋转关系

rosrun tf tf_echo base_link odom

 3 static_transform_publisher工具的功能是发布两个坐标系之间的静态坐标变换,这两个坐标系的位置

是不发生相对变化,其右两种命令格式如下所示:

static_transform_publisher x y z yaw pitch roll frame_id child_frame_id period_in_ms

static_transform_publisher x y z qx qy qz qw frame_id child_frame_id  period_in_ms

需要设置坐标的偏移参数和旋转参数:偏移参数使用相对于X Y Z三轴的坐标位移,而旋转参数的第一种命令格式使用以弧度

为单位的yaw pitch roll 角度(yaw是围绕Z轴旋转的偏航角,pitch是围绕Y轴旋转的俯仰角,roll是围绕X轴旋转的翻滚角)第二

种命令格式使用四元素表达旋转角度,发布频率以ms为单位。

该命令不仅可以在终端中使用,还可以在launch文件中使用。

<launch>
<!-- 对于虚拟定位,需要设置一个/odom与/map之间的静态坐标变换 -->
    <node pkg="tf" type="static_transform_publisher" name="map_odom_broadcaster" args="0 0 0 0 0 0 /map /odom 100" />

</launch>

发布一个父坐标系到子坐标系的静态tf转换,偏移x/y/z (单位是m),旋转是欧拉角(或者四元数) ,这里的周期period_in_ms,是这个tf的发布周期,设置为100ms(也就是10hz)


4 view_frames : 可以输出当前的tf关系到pdf中

 view_frames 是一个图形化的调试工具,并且可以输出当前的tf关系到pdf中

rosrun tf view_frames

5 roswtf: 帮助你找到tf中的错误

6 rqt_tf_tree用于可视化ROS TF框架树

rosrun rqt_tf_tree rqt_tf_tree

7  rqt_graph能够创建一个显示当前系统运行情况的动态图形

rosrun rqt_graph rqt_graph

8 rqt_plot工具的使用

roscore
rosrun rqt_plot rqt_plot

 查看动态数据(position/x:y:z)曲线例如:

在终端中输入

rqt_plot /odom/pose/pose/position/x:y:z

9 rosrun rqt_console rqt_console   #属于ROS日志框架(logging framework)的一部分,用来显示节点的输出信息,这个命令常常是我们需要快速查询日志使用,我们可以清晰的看出日志的定位,方便调试

10 rosrun rqt_logger_level rqt_logger_level  #允许我们修改节点运行时输出信息的日志等级(logger levels),这个命令常常用于调节节点运行时输出信息的日志等级(包括 DEBUG、WARN、INFO和ERROR),方便对日志进行管理。

11 rosrun plotjuggler plotjuggler    #打开可视化界面创空,用于数据分析,这个命令是一个rqt_plot的进阶版。是一个基于Qt的应用程序,允许用户加载,搜索和绘图数据。许多ROS用户将使用MATLAB或rqt_plot实现,当要分析的数据相当大时,效果就不是很好了。PlotJuggler,提供了更加友好的用户界面,如下图所示。

 

12  rosrun rqt_topic rqt_topic     #topic发布频率,这个命令是一个ros用于查看topic发布频率的指令。显示主题调试信息, 包括发布者、 接收者、 发布速率和发布的消息。 可以查看消息字段并选择你想要订阅的主题以分析带宽和速率(Hz),以及查看最新发布的消息。 注意, 锁定的主题通常不会持续发布, 所以不会看到任何关于它们的信息。

13 rosrun rqt_reconfigure rqt_reconfigure    #手动调节ros的topic参数,这个命令可以选择任何左侧节点以对其进行重新配置,便于手动调节参数,在对ROS进行调试时可以通过这个命令实时对参数服务器的参数进行实时调节大大的提高了效率。

14 ROS—查看topic和message消息

 rostopic -h 帮助

rostopic list 列出所有的topic,rostopic list -v 命令可以分开发布话题和订阅话题,并将每个话题的消息类型一起显示

rostopic echo topic名称 显示topic上发布的message

rostopic type topic名称 查看topic的message类型

rosmsg show message名称 查看message数据结构

rostopic bw  /topic  显示主题所使用的带宽

rostopic  hz  /topic   显示主题的发布率  

rostopic  info  /topic   输出活动主题、发布主题、主题订阅者和服务的信息

rostopic  pub  /topic   type   args  将数据发布到主题 它允许我们直接从命令行中对任意主题创建和发布数据

消息查看命令:

rosmsg  show 显示一条消息的字段

rosmsg  list  列出所有消息

rosmsg  package   列出功能包的所有消息

rosmsg  packages 列出所有具有该消息的功能包

rosmsg  users  搜索使用该消息类型的代码文件

rosmsg md5  显示一条消息的MD5求和结果

rosparam  list   列出服务器的所有参数

rosparam  get parameter   获取参数值

rosparam  set  parameter  value  设置参数值

rospack和rosstack 获取有关功能包、功能集、路径和依懒性等信息

rosls  此命令用于查看内容

查看节点相关信息:

rosnode  list  列出当前活动节点

rosnode  info  输出当前节点信息

rosnode  ping  测试节点间的连通性

rosnode  machine  列出某一个计算机上运行的节点或列出主机名称

rosnode  kill  结束当前运行节点或发送特定信号  rosnode  kill  -a 或 rosnode  kill --all 结束所有节点

根据关键字结束节点os.system("rosnode kill $(rosnode list) | grep 关键字")

rosnode cleanup  将无法访问节点的信息清除

功能包相关命令

catkin_create_pkg  创建功能包

rospack  获取功能包的信息,rospack depends mrobot_description此命名获取mrobot_description功能包的所有依赖

catkin_make  编译工作空间中的功能包

rosdep  自动安装功能包依赖的其他包

roscd  功能包目录跳转

roscp  拷贝功能包中的文件

rosed  编辑功能包中的文件

rosrun  运行功能包中的可执行文件

roslaunch  运行启动文件

将xacro文件转化为urdf命令

rosrun xacro xacro --inorder tf_robot.xacro > robot.urdf

  • 29
    点赞
  • 194
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值