您的位置:首页 > 编程语言 > Go语言

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

2016-12-05 11:15 549 查看
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的代码,可以直接参考官方文档。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息