REP103 单位和坐标

原地址:REP 103 – Standard Units of Measure and Coordinate Conventions (ROS.org)

摘要

本报告为ROS中使用的单位和坐标惯例提供参考。

理论依据

单位和惯例的不一致是开发人员整合问题的一个常见来源,也可能导致软件的错误。它还可能由于数据转换而产生不必要的计算。本报告记录了ROS的标准约定,以减少这些问题。

例外情况

潜在的机器人软件的范围太广,不能要求所有的ROS软件都遵循本REP的准则。然而,选择不同的惯例应该有充分的理由,并有充分的文件证明。

例如,有些领域的默认约定是不合适的。星际长度不适合用米来衡量,面向空间的库可能希望选择不同的惯例。还有其他的例外情况,不同的领域可能希望解决。

单位

我们选择以SI单位为标准。这些单位是最一致的国际标准。SI单位由Bureau International des Poids et Mesures维护。 维基百科上有关于国际单位制的良好文档 。

基本单位

这些是常用的基本单位

数量单位
长度
质量千克
时间
电流安培

派生单位

SI定义了七个基本单位和许多衍生单位。如果你不使用SI的基本单位,你应该使用SI的派生单位。

在维基百科上可以找到关于SI派生单位的良好文档[3] 。

ROS中常用的SI派生单位有。

数量单位
角度弧度
频率赫兹
牛顿
功率瓦特
电压伏特
温度摄氏度
磁性特斯拉

坐标框架公约

所有坐标框架都应遵循这些约定。

手性

所有系统都是右手的。这意味着它们符合右手规则[4]。

轴的方向

相对于一个身体来说,标准是。

  • x向前

  • y 向左

  • z向上
    对于地理位置的短距离直角坐标表示,使用**东北上(ENU)**惯例。

  • X东

  • Y北

  • Z向上
    为了避免大浮点32值的精度问题,建议选择一个附近的原点,比如你的系统的起始位置。

后缀框架

在相机的情况下,通常会有一个定义为"_optical "后缀的第二帧。这使用了一个稍微不同的惯例。

  • z向前
  • x 向右
  • y向下

对于户外系统,如果希望在**东北下(NED)**的惯例下工作,可以用"_ned "后缀定义一个适当的转换的第二帧。

  • X北
  • Y 东
  • Z向下

旋转表示法

有许多方法来表示旋转。首选的顺序列在下面,并附有理由。

  1. 四元数

    • 紧凑的表示法
    • 没有奇异性
  2. 旋转矩阵

    • 没有奇异性
  3. 分别围绕X、Y、Z轴的固定轴滚动、俯仰、偏航

    • 顺序上没有歧义
    • 用于角速度
  4. 欧拉角 分别围绕Z、Y、X轴的偏航、俯仰和滚动

    • 由于有24个 "有效 "约定,不同领域默认使用不同的约定,所以一般不鼓励使用欧拉角。

根据右手规则,方向的偏航随着子框架的逆时针旋转而增加,对于地理姿势,当指向东方时偏航为零。

这需要特别提及,因为它与传统的罗盘方位不同,罗盘方位在指向北方时为零,并顺时针递增。硬件驱动应该在发布标准ROS消息之前进行适当的转换。

协方差表示法

线性

float64[9] linear_acceleration_covariance # 3x3行主要矩阵,按x、y、z顺序排列

角度性

float64[9] angular_velocity_covariance # 3x3行主要矩阵,关于x、y、z顺序的固定坐标轴

六维

# 6x6协方差矩阵的行主表示法
# 方向参数使用固定轴表示。
# 按照顺序,这些参数是
# (x, y, z, 关于X轴的旋转, 关于Y轴的旋转, 关于Z轴的旋转)
float64[36] 协方差

参考文献

[1] 国际计量局(http://www.bipm.org/en/home/)
[2] http://en.wikipedia.org/wiki/International_System_of_Units
[3] http://en.wikipedia.org/wiki/SI_derived_units
[4] http://en.wikipedia.org/wiki/Right-hand_rule
[5] http://en.wikipedia.org/wiki/Geodetic_datum#Local_east.2C_north.2C_up_.28ENU.29_coordinates
[6] http://en.wikipedia.org/wiki/North_east_down

版权声明

本文件已被置于公共领域。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值