当前位置: 首页 > news >正文

IMU-坐标系-位姿

坐标系

1.判定坐标系:大拇指指向 Z 轴,看四指环绕方向,如果是 X 指向 Y,就是右手系。右手大拇指指向z轴方向,其余四指由x轴握向y轴方向,如果成功,那么判定为右手系。左手大拇指指向z轴方向,其余四指由x轴握向y轴方向,如果成功,那么判定为左手系。左手系无法通过三轴旋转变成右手系,只能通过换轴的方法转换2.旋转正方向的判断欧拉角是一种表示姿态(物体相对于另一个坐标系的方向和方位)的三个角度的集合,而姿态则描述了物体在空间中的方向,可以通过欧拉角、方向余弦矩阵、四元数等多种方式表示,其中欧拉角是其中一种直观但存在奇异点(例如在俯仰角接近90度时)的表示方法

坐标系-Coordinate

时间和空间
1.map坐标系 :绝对坐标表示车体相对于地球或者相对于地图的绝对位置和姿态(位姿)世界坐标系 经纬度,  纬度、 经度和高度横轴墨卡托(The Universal Transverse Mercator, UTM) 坐标 通过投影将坐标位置投影至地面, 通常称之为局部坐标系或者大地坐标系投影后采取地面上一点作为参考点, 即局部坐标系原点。 通常采用东北天(East-North-Up, ENU) 表达坐标系方向, 即 X 轴在当地水平面内分别指向东, Y 轴指向北, Z 轴指向天东北天局部坐标系采用三维直角坐标系来描述地球表面2.车体坐标系  vehicle  car  ego 智能网联汽车主要关注车辆前方, 通常的定义中都是以车辆前方为正方向车辆坐标原点:是以汽车簧载质量上的点为原点 OriginX 轴平行于汽车纵向对称平面且其正方向水平向前,Y 轴垂直于汽车纵向对称平面且其正方向指向汽车左侧,Z轴竖直朝上GB/T 12673-2019 车辆后方为 X 轴, Y 轴向右, Z 轴朝上
3.传感器坐标系车载传感器相对于车体的位姿以及目标物相对车体的位姿WYT@ca1c293 激光雷达-毫米波雷达-相机-超声波IMU及组合导航V2X相机:相机坐标系, 还有图像坐标系, 图像坐标是 2D 的坐标, 而相机坐标是 3D 坐标, 由相机坐标映射到图像坐标的关系通常被称为相机内参V2X: 加速度其中方向定义为“前/右/下” NED(n系北东地 – b系前右下)、ENU(n系东北天 – b系右前上)的姿态角(欧拉角)与姿态旋转矩阵的关	导航方位角(Bearing):从北方向开始,顺时针旋转为正(即北偏东为正)。例如,北为0°,东为90°,南为180°,西为270°。车体坐标系中,yaw角向左横摆为正。注意,这里车体坐标系的yaw角是绕车体Z轴旋转,向左转为正,即逆时针方向

坐标系标准

ISO 8855: 2011
平台惯性制导系统
捷联惯性制导系统 
平台惯性制导系统的精度要高于捷联惯性制导系统     
捷联惯导系统(Strapdown Inertial Navigation System,SINS)是一种自主式导航系统,由惯性测量单元和导航计算机构成   载体系在导航系中的姿态捷联制导将陀螺仪直接连接载体,利用姿态变化测量载体运动,而平台制导通过反向力矩保持稳定捷联式惯导的核心差异在于​取消了实体机电平台​,通过数学算法实现惯性测量单元(IMU)与载体坐标系的实时解耦   
机电式陀螺仪和光电类陀螺仪两大类  MEMS陀螺仪IMU 坐标系(body frame,简称 b 系),
导航坐标系(navigation frame,简称 n 系)
载体坐标系(vechile frame,简称 v 系),ROS 坐标系  Apollo 坐标系系统ENU 表达 East, North, Up, 中文通常表达为东北天。 ENU 表示东向为 x 轴, 北向为 y 轴, 天向为 z 轴
组合导航的重要功能是输出车辆在世界坐标系下的位置和姿态
车体坐标系常见定义
名称 	车辆前方 	车辆左侧 	车辆上方 	参考系统
前左上 	x 轴正方向 	y 轴正方向 	z 轴正方向 	ROS,GB/T 40429-2021
右前上 	y 轴正方向 	x 轴负方向 	z 轴正方向 	Apollo	

华测 HCG-630

  组合导航设备输出数据要求【强制】GPSWeek: 自 1980/1/6 至当前星期数(格林尼治时间);【强制】GPSTime:本周日 0:00:00 至当前的秒数;【强制】Latitude:纬度(-90° 至 90°);【强制】Longitude:经度(-180° 至 180°);【强制】Altitude:高度,单位(米);【强制】Heading(Yaw): 航向角,0 至 359.99,北偏东顺时针为正(如果不是需自行转换)(IMU 原始值和校正值至少输出一个);【强制】Pitch:俯仰角(-90 至 90),车头上扬为正 (IMU 原始值和校正值至少输出一个);【强制】Roll:横滚角(-180 至 180),车身右倾为正(IMU 原始值和校正值至少输出一个);【强制】Gyro X/Y/Z:陀螺仪 X 、Y、Z 轴,单位 °/s;【强制】Acc X/Y/Z:加速度 X、Y、Z 轴 (IMU 原始值和校正值至少输出一个);【强制】Ve、Vn、Vu:东向、北向、天向速度,单位 m/s;【强制】SolutionStatus: 系统状态,参考 Solution Status 定义,至少能区分是否是组合导航;【强制】PositionType:卫星状态,参考 Position or Velocity Type, 至少包含不定向、RTK浮点解、稳定解;
IMU全称inertial measurement unit,即惯性测量单元		
航向角, 角度范围   0° ~360°  
俯仰角, 角度范围   -90° ~90° ;  故在俯仰角较大的场合下不适合采用欧拉角法
横滚角, 角度范围  -180° ~180°华测坐标系定义为 X轴向右、Y轴向前、Z轴向上
Novatel坐标系定义为 X轴向右、Y轴向前、Z轴向上parser 中负责各种厂商 gnss 数据解析,新惯导接入需要新增一个 parser 类型全局位姿变换关系,这也是定位模块localization主要的任务

旋转

 描述坐标系{B}相对于参考坐标系{A}的姿态有两种方式。绕固定坐标系旋转 绕自身坐标轴旋转
一种是 绕固定(参考)坐标轴旋转:假设开始两个坐标系重合,先将{B}绕{A}的X轴旋转γ,然后绕{A}的Y轴旋转β,最后绕{A}的Z轴旋转α,就能旋转到当前姿态。可以称其为X-Y-Z fixed angles 或RPY角(Roll, Pitch, Yaw)	
一种是 绕自身坐标轴旋转假设开始两个坐标系重合,先将{B}绕自身的Z轴旋转α,然后绕Y轴旋转β,最后绕X轴旋转γ,就能旋转到当前姿态。称其为Z-Y-X欧拉角,由于是绕自身坐标轴进行旋转enum RotSeq{zyx, zyz, zxy, zxz, yxz, yxy, yzx, yzy, xyz, xyx, xzy,xzx};如ADAMS软件里就默认 Body 3-1-3次序,即Z-X-Z欧拉角,而VREP中则按照X-Y-Z欧拉角旋转。静态坐标变换是指两坐标系之间的变换关系是固定的一种坐标变换,常用于表示汽车上两位置固定坐标系之间的变换关系,例如各个传感器之间的坐标变换。  

数据

src/novatel_oem7_msgs/msg/INSPVA.msg float64 rollfloat64 pitchfloat64 azimuth  heading yaw •诺瓦泰 Novatel
• 和芯ᱏ通 Unicorecomm
• 天宝 Trimble
• 莱卡 LeicaRTK+IMU RTK 接收机的成本从小几万到了两三百 +  RTK 的服务费RTK-天线 小口径的航空天线IMU 对于震动\温度 敏感
高精度地图			 

代码

tf::Transform transform;//这里transform为一个类  (in radians)
transform.setRPY(roll,pitch,yaw)
z90_deg_rotaion.setRPY(0.0, 0.0, pi/2);//setRPY是类Quaternion的一个成员函数 (in radians)setRPY (const tfScalar &roll, const tfScalar &pitch, const tfScalar &yaw)Set the quaternion using fixed axis RPY.tf::Transform ros_ori = z90_deg_rotaion * transform	ROS 中关于欧拉角旋转的函数:setRPY、setEuler、setEulerZYX(欧拉角可以分为绕定轴和绕动轴的变换方式,当没有指定Euler时,    默认是按定轴转动,矩阵依次左乘。若函数的名字中有Euler,则表示为绕动轴转动的方式,矩阵依次右乘setRPY();这个函数采用固定轴的旋转方式,先绕定轴x旋转(横滚),然后再绕定轴y(俯仰),最后绕定轴z(偏航)R = R(z)R(y)R(x)的顺setEuler这种方式是绕着动轴转动,先绕Y轴,在绕变换后的X轴,再绕变换后的Z轴旋转	这是绕定轴YXZ矩阵依次右乘,即:R = R(y)R(x)R(z) 的顺序setEulerZYX与2相同,此种旋转变换也是绕动轴旋转,只不过次序为ZYX,矩阵也是右乘,即R = R(z) R(y)R(x)

代码二

from scipy.spatial.transform import Rotation as R
Rotation.from_euler()时需特别注意欧拉角的旋转顺序和内旋/外旋的区别:坐标系定义

‌ ENU(东北天)‌:

X轴指向东,Y轴指向北,Z轴指向天
绕X轴旋转为pitch角,绕Y轴为roll角,绕Z轴为yaw角
欧拉角旋转顺序:Z-X-Y ‌

‌ NED(北东地)‌:

X轴指向北,Y轴指向东,Z轴指向地
绕X轴旋转为roll角,绕Y轴为pitch角,绕Z轴为yaw角
欧拉角旋转顺序:Z-Y-X ‌
Rotation.from_euler()参数说明

‌ seq‌:指定旋转轴顺序,取值范围为'X'/'Y'/'Z'(内旋)或'x'/'y'/'z'(外旋)
‌ angles‌:旋转角度,需与旋转顺序匹配(如Z-X-Y对应yaw、pitch、roll)

developer.apollo.auto/Apollo-Homepage-Document/Apollo_Doc_CN_6_0/数据格式/定位模块/apollo_localization_pose

MSF定位模块  多传感器融合 定位模块利用来自 GPS,LiDAR 和 IMU 设备的信息来评估自动驾驶车辆的位置 fusion_status	
RTK 定位ENU坐标系下的x轴姿态值(四元数)euler_angles	ENU坐标系下的姿态(欧拉角)https://developer.apollo.auto/Apollo-Homepage-Document/Apollo_Doc_CN_6_0/%E6%95%B0%E6%8D%AE%E6%A0%BC%E5%BC%8F/%E5%AE%9A%E4%BD%8D%E6%A8%A1%E5%9D%97/apollo_localization_pose/	 将 GPS 和 IMU 数据组合成一个完整的定位消息:整合来自 GPS 和 IMU 的定位信息,构建出一个包含位置信息、方向、线速度、线加速度、角速度和欧拉角的完整定位消息	
https://github.com/ApolloAuto/apollo/blob/master/docs/05_Localization/coordination_cn.md	

参考

https://docs.ros.org/en/melodic/api/novatel_msgs/html/msg/INSPVAX.html
https://github.com/novatel/novatel_oem7_driver/blob/humble/src/novatel_oem7_msgs/msg/INSPVA.msg
http://www.hskmm.com/?act=detail&tid=18185

相关文章:

  • 今天做什么
  • 登录 Linux 自动展示 CPU/内存/磁盘挂载使用情况等信息(针对于银河麒麟调整的)
  • 解码数据结构线性表之链表
  • C++ placement new
  • Spring Boot接入邮箱,完成邮箱验证码
  • HyperWorks许可与网络安全
  • 高通QCS8550开发板 + DeepSeek-R1:打造智能化商场导购实践
  • 研发项目管理系统哪个好?十款热门工具全面测评
  • 《对软件工程的初步理解》
  • 【IEEE出版 | 南工大主办 | 稳定EI检索】第二届自动化、电气控制系统与设备国际学术会议(AECSE 2025)
  • B3863 [GESP202309 一级] 买文具
  • B2009 计算 (a+b)/c 的值
  • 你好 博客园!
  • 2025无人机林业行业场景解决方案
  • 安全帽检测数据集-YOLO格式建筑工地安全图像数据-个人防护装备(PPE)目标检测算法训练-包含安全帽/无安全帽/等多类别标注-深度学习计算机视觉应用-工业安全监控系统开发-实时预警检测模型
  • 常用API biginteger和biddecimal
  • P5704 【深基2.例6】字母转换
  • SI3933低频唤醒接收芯片完整指南:结构框图、PCB布局与选型要点芯片概述与主要特性
  • 在本地服务器创建RAID5磁盘阵列和RAID10磁盘阵列
  • RAGAS大模型评估框架
  • 服务器密码错误被锁定如何解决?
  • 螺纹偏弱
  • 水翼式搅拌机推荐品牌/推荐厂家/优质供应商/哪家强?
  • 100W QPS:亿级用户的社交关系如何设计?
  • 坤驰科技携数据采集解决方案,亮相中国光纤传感大会
  • 新手入门需要掌握多少种大模型才行
  • docker容器怎么查看最后一些行日志
  • MAC idea 环境变量设置失效
  • Docker 配置问题
  • 【东北七大高校联合举办】第十一届机械制造技术与工程材料国际学术会议(ICMTEM 2025)