RTK、IMU、RT3000

GPS/RTK

全球卫星定位系统(GPS)的全面建成和发展,导致了导航和测绘行业的一场重大深刻的技术革命。常规的静态GPS测量方法越来越多地应用于高精度控制网的建立,但利用该方法无法在野外对观测数据进行实时检核,从而造成观测结果不合格而需要返工的情况,而利用实时动态载波相位差分技术(Real—time kinematic,RTK)可以改变上述状况。RTK技术采用载波相位动态实时差分方法,可以实时监测待测点的数据观测质量和基线解算结果,能够在野外实时得到厘米级定位精度的测量结果,从而提高工作效率。

RTK原理:RTK系统由1个基准站、若干个流动站及无线电通讯系统组成基准站包括GPS接收机、GPS天线、无线电通讯发射系统、供GPS接收机和无线电台使用的电源及基准站控制器等部分。流动站包括GPS接收机、GPS天线、对中杆、无线电通讯接收系统、供GPS接收机和无线电使用的电源及流动站控制器等部分。在RTK作业模式下,在已知高等级点上(基准站)安置1台接收机为参考站,对GPS卫星进行连续观测,并将观测数据和测站信息通过无线电传输设备实时地发送给流动站流动站GPS接收机在接收GPS卫星信号和采集卫星数据的同时,通过无线接收设备接收来自基准站的数据链,并在系统内对采集和接收的2组数据进行载波相位差分处理,实时解算出流动站的三维坐标及其精度(即基准站和流动站坐标差△X、△y、△H,加上基准坐标得到的每个点的wGS一84坐标,通过坐标转换参数得出流动站每个点的平面坐标X、y和海拔高H。因此,使用RTK技术的关键在于根据GPS的载波相位观测量,并利用基准站和流动站之间观测误差的空间相关性,通过差分的方式除去流动站观测数据中的大部分误差,从而实现高精度(分米甚至厘米级)定位[1]。

IMU

IMU(英文Inertial measurement unit,简称 IMU),是测量物体三轴姿态角及加速度的装置。一般IMU包括三轴陀螺仪及三轴加速度计,某些9轴IMU还包括三轴磁力计。加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺仪检测载体相对于导航坐标系的角速度信号,测量物体在三维空间中的角速度和加速度,并以此解算出物体的姿态。[2][3]

INS

INS全称Inertial Navigation System,即惯性导航系统,有时也简称为惯性系统或惯性导航。惯性导航系统的工作机理是建立在牛顿经典力学的基础上的。牛顿定律告诉人们:一个物体如果没有外力作用,将保持静止或匀速直线运动;而且,物体的加速度正比于作用在物体上的外力。如果能够测量得到加速度,那么通过加速度对时间的连续数学积分就可计算得到物体的速度和位置的变化。
陀螺仪、IMU、INS区别与联系
陀螺仪可以测量三轴(roll,pitch,yaw)角运动(角度、角加速度);

3个单轴陀螺仪+3个单轴加速度计=IMU,称为惯性测量单元;

3个单轴陀螺仪+3个单轴加速度计=INS,称为惯性导航系统;因此可以认为IMU≈INS[2]

定位(GPS)就是告诉你,你现在在哪。导航就是告诉你,如何到你想要到的位置。惯性导航你可以简单的理解成依靠惯性器件(陀螺、加速度计等)的原始数据加上固定的算法(很深奥的东西..)来输出你先要的信息,如位置,载体姿态,实时运动速度等。IMU就是惯性测量单元,它主要由惯性器件组成(陀螺、加速度计等),输出最原始的数据,如加速度、角速度等等,但是无法给出位置、姿态等信息。所以INS实际上可以简单的理解成由算法和IMU共同构成的。[4]

RT3000

为了获得移动载体的实时位置和姿态信息,已经提出和采用了多种导航方式。其中,以惯性导航系统(Inertial Navigation System,INS)和全球卫星导航系统( 以Global Positioning System,GPS为典型代表)应用最为广泛。INS 不仅能
够提供载体位置速度参数,还能提供载体的三维姿态参数,是完全自主的导航方式, 在航空、航天、航海和陆地等几乎所有领域中都得到了广泛应用。

随着惯性技术与卫星导航定位技术的发展,由GPS/INS 不同程度组合而成的定位定姿传感器已成为移动测图系统中确定载体轨迹和平台姿态的重要工具,其中GPS 多用于定位而INS 则用于测姿

RT3000 由oxts研发,目的是实时地对车辆,飞机和船只等的运动做高精度的测量。为了获得高精度的测量,RT 使用了为战斗机导航系统开发的数学算法。一个由三个加速度计和三个陀螺仪(角速度传感器)组成的惯性传感器组块用来计算所有的输出。

和常规的惯性导航系统不同,RT3000 用GPS 校正所有的测量值。GPS测量位置,速度和(双天线)航向,但是,通过这些测量,RT3000 可以使其它量,如俯仰,侧倾非常精确。当GPS 起作用时RT3000 进行测量时就没有漂移。标准的RT3000 系统可以实时处理数据[4]。

参考文献

[1] 姬旭东. 实时动态载波相位差分技术浅析[J]. 长江大学学报(自科版), 2012, 09(9):68-69.

[2] Adas常用实验仪器和设备:RT3000/RTrange/IMU/INS/RTK等

[3] IMU简介

[4] IMU、INS、DGPS和POS

[5] 刘斌.RT3000惯性GPS组合导航系统实现车辆运动高精度测量[J].中国新技术新产品,2014(01):1-3.

### ROS中IMURTK的集成和使用 在机器人操作系统(ROS)环境中,惯性测量单元(IMU)和实时动态(RTK)全球定位系统的数据融合对于提高机器人的姿态估计精度至关重要。通常情况下,IMU提供角速度、加速度以及有时磁力计读数来帮助确定方向;而RTK GPS则能给出高精度的位置信息。 为了实现这两者之间的有效集成,在ROS中有多种方法可以采用: #### 使用`robot_localization`包进行状态估计 `robot_localization`是一个广泛使用的ROS软件包,它能够接收来自不同传感器的数据输入并输出优化后的位姿估计。此包支持IMU消息类型(`sensor_msgs/Imu`)及NavSatFix类型的GPS位置更新[^1]。通过配置文件设置,可指定哪些话题作为源,并调整相应的协方差矩阵参数以反映每种传感模态的信任度差异。 ```yaml # Example configuration snippet for robot_localization frequency: 30 two_d_mode: false odom_frame: odom base_link_frame: base_footprint world_frame: odom imu0: /imu/data imu0_config: [false, false, false, true, true, true, false, false, false, true, true, true, true, true, true] gps: /fix gps_config: [true, true, false, false, false, false, false, false, false, false, false, false, false, false, false] ``` 上述YAML片段展示了如何将IMU主题(`/imu/data`)与GPS修正值关联起来用于更精确的状态估算过程。注意这里假设存在一个发布标准NavSatFix格式坐标的节点负责处理原始GNSS信号并应用RTK校正算法得到厘米级准确定位结果。 #### 发布转换过的坐标系变换(TF) 除了直接利用这些传感器数据外,还需要考虑它们各自所处的空间框架间的关系。例如,当安装于移动平台上的IMU相对于地面固定参照物发生偏移时,则必须计算出两者间的相对旋转和平移向量以便后续模块正确解析接收到的信息流。这可以通过编写自定义C++或Python脚本完成,也可以借助像`tf2_broadcaster`这样的工具简化操作流程。 ```cpp // C++ code example to broadcast TF transformation from IMU frame to map frame using RTK data. void publishTransform(const sensor_msgs::NavSatFixConstPtr& gps_msg){ static tf2_ros::TransformBroadcaster br; geometry_msgs::TransformStamped transformStamped; transformStamped.header.stamp = ros::Time::now(); transformStamped.header.frame_id = "map"; transformStamped.child_frame_id = "imu_link"; // Convert latitude, longitude into UTM coordinates... transformStamped.transform.translation.x = utm_x; transformStamped.transform.translation.y = utm_y; transformStamped.transform.translation.z = altitude; // Assuming orientation is provided by the IMU directly or computed otherwise... transformStamped.transform.rotation = imu_orientation_quaternion; br.sendTransform(transformStamped); } ``` 这段代码示例说明了怎样基于RTK增强型GPS反馈创建从全局地图到局部IMU链接之间的时间戳同步好的刚体运动描述符序列,从而允许其他订阅者轻松获取所需空间映射关系。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值