机器人操作系统入门:三(中科大&&重德智能)

目录

一 . TF

          1.1 ROS 中tf  是什么?

1.2 两个frame之间发布的消息格式

1.3 整个TF-tree消息格式

1.4 TF-tree的C++实现

二 . URDF


一 . TF

Transform:坐标变换(位置和姿态),坐标系数数据维护的工具。

1.1 ROS 中tf  是什么?

  1. 是坐标转换的标准(tf-tree)
  2. 是话题(topic)
  3. 是package(调试查看)
  4. 是接口(roscpp/rospy)

扫描二维码关注公众号,回复: 4937569 查看本文章

 机器人部件称为link   ,每一个link都对应一个frame,即坐标系。

 圆圈内是 frame,整个TF-tree应保证通路。

每两个frame之间联通需要很多node向TF  topic上发布消息,Broadcast 是一个publisher。

1.2 两个frame之间发布的消息格式

两个frame之间发布的消息格式如下:

string frame_id 是父ID

string child_frame_id 是子ID

1.3 整个TF-tree消息格式

 整个TF-tree的消息类型有两种:

第一代的TF是 tf/tfMessage.msg,  第二代的TF 是 tf2_msgs/TFMessage.msg,

 具体使用的时候可以用 rostopic info /tf  来查询具体信息。

它们的定义基本一致,内容如下:

1.4 TF-tree的C++实现

c++语言的TF数据类型

值得注意的是  tf:StampTransform  是C++中的一个类,不是消息格式。

TF 的c++语言包中关于收发的类

发送的类

接收的类,参数ros::Time  常用Time(0)表示最新的时间戳

二 . URDF

URDF (Unified Robot Description Format):统一机器人描述格式

urdf 文件定义了机器人的结构,机器人的各个部件定义为各个link,而各个link之间的连接就是 joint。

URDF文件中link的写法如下:

joint 的 写法如下:

猜你喜欢

转载自blog.csdn.net/Bluenapa/article/details/86502931