ROS机器人Diego 1#制作(十)摄像头tf数据的发布

来源:互联网 发布:电脑连不上网络打印机 编辑:程序博客网 时间:2024/05/19 09:14

ROS中所有的零件都可以设定他的tf坐标数据,机器人在移动的时候会把这些点作为判断的数据,也是后面配置导航所必须的数据,具体的tf的概念,请学习官方文档http://wiki.ros.org/tf/Tutorials#Learning_tf,这里介绍diego中的代码

#include <ros/ros.h>#include <tf/transform_broadcaster.h>int main(int argc, char** argv){  ros::init(argc, argv, "robot_camera_tf_publisher");  ros::NodeHandle n;  ros::Rate r(10);  tf::TransformBroadcaster broadcaster;  while(n.ok()){    broadcaster.sendTransform(      tf::StampedTransform(        tf::Transform(tf::Quaternion(0, 0, 0, 1), tf::Vector3(0.12, 0.0, 0.1)),        ros::Time::now(),"base_link", "camera_link"));    r.sleep();  }}

代码很简单,主要的代码是设置Vector3(0.12, 0.0, 0.1))中的x,y,z参数,x代表传感器距离base_link的x轴距离,y代表传感器距离base_link的y轴距离,z代表传感器距离base_link的z轴距离,单位是m,可以按照自己机器人的实际情况来设置,其他的代码都是基本的ROS发布topic的代码,可以直接参考官方文档。

0 0