ROS HEXAPOD仿真

tf坐标系统

https://blog.csdn.net/Kalenee/article/details/84332247

(1)采用tf_monitor,查看当前TF树中所有坐标系的发布状态。

rosrun tf tf_monitor

(2)采用rqt_tf_tree,查看当前所有坐标之间的变换关系,可通过刷新更新当前树的内容。

rosrun rqt_tf_tree rqt_tf_tree

(3)采用tf_echo,获取reference_frame和target_frame之间的坐标变换关系。

rosrun tf tf_echo [reference_frame] [target_frame]

(4)rviz is a visualization tool that is useful for examining tf frames. Let's look at our turtle frames using rviz. Let's start rvizwith the turtle_tf configuration file using the -d option for rviz:

rosrun rviz rviz -d `rospack find turtle_tf`/rviz/turtle_rviz.rviz

tf的程序呢监听:(注意需要在cmakelist 和package.xml文件中将tf相关信息加入)

#include <ros/ros.h>
#include <tf/transform_listener.h>
#include <geometry_msgs/Twist.h>

int main(int argc, char** argv){
  ros::init(argc, argv, "my_tf_listener");
 
  ros::NodeHandle node;
 
  tf::TransformListener listener;
 
  ros::Rate rate(10.0);
  while (node.ok()){
    tf::StampedTransform transform;
    try{
      listener.lookupTransform("/base_link", "/foot_1",
                               ros::Time(0), transform);

    ROS_INFO(
        "x,y,z:%.2f, %.2f. %.2f",
        transform.getOrigin().x(),transform.getOrigin().y(),transform.getOrigin().z());
    }
    catch (tf::TransformException &ex) {
      ROS_ERROR("%s",ex.what());
      ros::Duration(1.0).sleep();
      continue;
    }

    rate.sleep();
  }
  return 0;
};

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值