APP下载

基于GNSS/INS组合定位的自动公交报站系统设计

2021-09-26张建军高志刚刘风磊

机电工程技术 2021年8期
关键词:全球卫星卡尔曼滤波惯性

张建军,高志刚,刘风磊

(广州通达汽车电气股份有限公司, 广州 510700)

0 引言

随着中国经济快速发展和城镇化建设程度越来越高,公共交通成为市民出行的主要方式。经过几十年的城镇化建设,公交车系统成为各大城市最主要的公共交通运输系统。快速完善公交车系统,提升公交设备的智能化水平,对加快城镇化建设具有非常重要的意义。

随着计算机技术的快速发展,城市公共交通工具的智能化程度也逐步提高,目前国内主要城市的公交系统已经开始应用各种功能的公交自动报站系统,为市民提供人性化服务。目前使用的公交自动报站系统大多采用全球卫星定位系统来获取车辆的实时位置,能够全天候提供高精度的定位数据,但因卫星射频信号较弱,导致全球卫星定位系统对环境非常敏感,在高楼、林荫、城市立交桥和高架桥等遮挡环境下,提供的位置数据不准确、不稳定,全球卫星定位系统无法满足自动报站系统的精准需求[1]。

相较而言,惯性定位系统不受环境的影响,能稳定提供位置、速度、航向和姿态角数据,但其定位数据经过积分计算得出,定位误差会随时间累积,长期精度差[2]。如果将卫星定位和惯性定位结合运用于定位系统中,这种组合定位系统能够弥补相互的缺陷。卫星定位能够有效地控制惯性定位的误差累积漂移,惯性定位能够填补两次卫星定位位置之间的动态信息,且在卫星定位不可用时,仍然能够短时间内提供高精度定位数据[3]。

因此,设计一种基于卫星定位和惯性定位相结合的自动公交报站系统,结合卫星定位和惯性定位的优点,可以解决卫星定位在复杂环境下定位不稳定、不准确的缺陷,提高公交报站系统的稳定性和准确性。

1 GNSS/INS组合定位算法

GNSS/INS组合定位具有良好的性能优势,可以充分地发挥子系统的优点,实现高度互补,其定位精度、抗干扰能力、可靠性等定位能力远远优于独立GNSS子系统或INS子系统。组合定位按照工作原理、组合结构、组合深度的不同,有不同的组合方式,如松耦合方式、紧耦合方式、深耦合方式[4],本文采用松耦合的组合方式。GNSS/INS组合定位算法结构如图1 所示[5-6]。GNSS 子系统和INS 子系统独立工作,分别解析INS子系统和GNSS子系统的速度、位置、姿态信息,解析出位置、速度、姿态信息送到扩展卡尔曼滤波器进行处理,利用扩展卡尔曼滤波结果修正INS 子系统的积分累计误差,提高INS子系统的精度。

图1 GNSS/INS组合定位算法结构

1.1 捷联惯性定位系统工作原理

捷联惯性定位系统由惯性测量单元和惯性参数解算单元组成。惯性测量单元包括三轴陀螺仪和三轴加速度计,提供三维空间运动的角速度和加速度;惯性参数解算单元负责实现惯性定位方程的解算,算法原理如图2所示[7]。核心原理为坐标系转换和积分运算,三轴陀螺仪和三轴加速度计测量出运动物体在惯性坐标系的角速度和加速度,通过捷联矩阵进行坐标转换,转换成地理坐标系的角速度和加速度,经过积分运算得出运动物体在地理坐标系的速度、位置和姿态。

图2 捷联惯性定位系统算法原理

1.2 滤波算法

GNSS 和INS 组合定位的关键点是如何将两个子系统的数据信息进行融合,卡尔曼滤波是最常用的数据融合算法之一,通过融合不同种类的观测值,从而获得更准确的状态估计。大多数定位系统模型都是非线性的,为了降低非线性化带来的误差,本文采用扩展卡尔曼滤波算法,扩展卡尔曼滤波基本方程如下式所示[8-9]:

2 系统硬件设计

本系统的硬件框图如图3所示,由系统电源电路、CPU最小系统、4G通信模块、音频模块和串口模块等组成。

图3 系统的硬件

2.1 系统电源电路

系统电源电路采用二级电源转换电路,第一级采用MP9457 将24 V 电源转换5 V,第二级电源电路采用MP2235、TPS51100、MP65151 等多个电源芯片,转换成系统需要的3.8 V、3.3 V、1.5 V、1.2 V、1.0 V 等。系统电源电路还增加共模电感滤波电路、车载TVS 保护电路,使得该系统可以通过车载EMC标准。

2.2 CPU最小系统

CPU 最小系统由复位监控电路、时钟单元电路、CPU 芯片、DDR2 芯片、FLASH 芯片等组成。CPU 芯片采用ATMEL公司的SAMA5D31,是一款性价比高、功耗低、高度集成的COTEX-A5架构处理器[10],处理器运行工作频率533 MHz。复位监控电路采用TPS3823,该芯片具有电压复位和硬件看门狗复位,保证CPU 正常上电复位和异常挂机的看门狗复位。DDR2芯片采用2 Gbit的MT47H64M16,为CPU程序高速运行提供外部内存。FLASH 采用1 Gbit 的MX30LF1GE8AB,提供系统程序和应用数据的存储空间。

2.3 组合定位模块

组合定位模块包括卫星定位子系统和惯性定位子系统。卫星定位子系统采用支持GPS 和北斗双模定位的ATGM332D-5N 模块,具有高灵敏度、低功耗、低成本等优势,定位精度最高达到2.5 m,可配置为1 Hz、5 Hz、10 Hz的数据输出频率。惯性定位子系统采用BOSCH 的BMI160 芯片,是一个高度集成的低功耗惯性测量单元(IMU),提供精确的加速度和角速率(陀螺)测量[11]。

2.4 音频模块

音频模块由音频解码电路和功率放大电路组成。音频解码电路采用TI 的TLV320AIC31,负责对CPU 送来的数字音频信号进行解码和数模转换,转换成模拟音频信号。功率放大电路采用MPS 的MP7748 芯片,D 类功放芯片,减少电路面积,提供2路30 W的音频功率放大能力,直接驱动喇叭。

2.5 人机交换模块

人机交换模块由TFT 液晶显示屏、按键电路和射频刷卡模块组成。TFT 液晶显示屏采用天马TM101JDHP01,10.1 寸真彩色显示屏,屏幕分辨率1280×800,带电容触摸。按键采用矩阵式键盘,行列扫描式排布,18个按键。

2.6 4G通信模块

无线通信模块采用美格SLM790,通过USB2.0接口与CPU系统进行数据交换,保证4G通信的高速率。通信模块电源可以单独控制,在通信异常情况时,软件可以对模块重新上电,提高无线通信的可靠性。

3 系统软件设计

智能报站系统将Linux3.10 操作系统移植到SAMA5D31 处理器,应用程序由组合定位解算程序、自动报站处理程序、4G通信程序、人机交互程序、设备运维程序等组成。由于组合定位解算程序、自动报站处理程序是智能报站系统的核心模块,下面主要介绍它们的原理。

3.1 GNSS/INS组合定位解算程序

GNSS/INS组合定位解算程序按照图1 的GNSS/INS组合定位算法、图2 的捷联惯性定位系统算法和式(1)的扩展卡尔曼滤波基本方程为核心算法原理。GNSS/INS 组合定位程序流程如图4 所示,分为全球卫星定位程序处理模块、惯性定位程序处理模块、全球卫星定位和惯性定位融合处理程序模块。

图4 GNSS/INS组合定位程序流程

全球卫星定位程序处理模块,首先对全球卫星定位模块ATGM332D-5N 初始化,设定其串口输出频率为10 Hz,提高数据输出频率。读取完成一包数据,按照NMEA0183 的协议格式解析得到位置、速度、方向角、信号质量等数据,经过中值滤波算法去掉卫星定位异常的数据后给扩展卡尔曼滤波算法处理模块。

惯性定位程序处理模块,对BMI160 惯性测量芯片初始化,设定捷联矩阵的计算初值。按照100 ms 周期,从惯性测量芯片读取运载体的三轴加速度和三轴角速度,进行滑动平均滤波算法处理,得到运载体在惯性坐标系的x、y、z方向加速度和角速度。根据哈密顿提出的四元数法对捷联矩阵更新,运载体在惯性坐标系的x、y、z方向加速度和角速度经过更新的捷联矩阵进行坐标系变换,得到地理坐标系的x、y、z方向加速度和角速度,经过系列积分运算得到地理坐标系的位置、速度,送给扩展卡尔曼滤波算法处理模块。

扩展卡尔曼滤波算法处理模块按照式(1)计算,得到全球卫星定位和惯性定位数据融合后的位置、速度和姿态,给自动报站处理程序使用;同时根据融合后的位置、速度计算出运载体相对惯性坐标系在导航坐标系上的分量,此计算得到的值再经过方向余弦逆矩阵对捷联矩阵更新进行修正。

3.2 自动报站处理程序

自动报站处理程序的流程如图5 所示,首先确定车辆行驶方向,然后计算车辆当前位置的经纬度坐标与后续站点的距离和方向角,当距离小于进站半径且方向角满足要求时,进行进站语音和文字播报。满足进站条件的基础上,判断车辆当前位置与当前站点距离,当距离大于线路文件设定的出站半径时,进行出站的语音和文字播报。

图5 自动报站处理程序流程

自动报站处理程序的核心逻辑是判定车辆的行驶方向,报站方向判定流程如图6所示,报站方向判定程序循环判断车辆行驶方向[12]。假设公交车启动时是不知道方向的,及时判定出行驶方向是至关重要的。当车辆处于首站或末站时,可通过当前位置与首站或末站的距离直接确定方向。而当公交车突然转弯或设备中间重启时,只采用在站点半径范围内进行判定容易引起误判或漏判,因为在不知道车辆运行方向的情况下,当前获取经纬度坐标和站点经纬度坐标的距离满足进站范围内的站点可能不止一个,其中一个是真正的坐标点,可能还会是对面的站点或者是漂移点。循环判断车辆方向的算法是,根据当前经纬度坐标和站点坐标之间距离作为判断依据,当同一方向有超过2个站点符合要求,即可确定车辆行驶方向。

图6 报站方向判定流程

4 结束语

本文设计一种GNSS/INS 组合定位的自动公交报站系统,硬件平台采用COTREX-A5 架构的高性能处理、GPS/BD 卫星定位模块和6 轴MEMS 惯性传感器,软件平台采用Linux3.10操作系统。利用惯性定位解算方程对6轴MEMS传感器获取的角速度和加速度进行计算,获得车辆惯性定位系统的速度、位置和姿态;同时获取GPS/BD卫星定位模块的全球卫星定位系统的速度、位置和方向角;最后用扩展卡尔曼滤波算法对惯性定位系统的速度、位置和姿态,全球卫星定位系统的速度、位置和方向角进行融合计算得到组合定位的速度、位置和姿态。该自动公交报站系统已经批量应用于南宁公交、茂名公交、珠海公交等多家公交公司,实际应用中很好地解决了高楼、林荫、城市立交桥和高架桥等遮挡环境下公交报站不准的问题,具有很好的市场应用前景。

猜你喜欢

全球卫星卡尔曼滤波惯性
冲破『惯性』 看惯性
全球卫星互联网应用服务及我国的发展策略
呼叫北斗
中国北斗集结完毕!
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
无处不在的惯性
基于模糊卡尔曼滤波算法的动力电池SOC估计
基于扩展卡尔曼滤波的PMSM无位置传感器控制
无处不在的惯性
无处不在的惯性