基于惯性导航的卸料小车定位装置设计※
2015-07-02郝成尚名羽
郝成,尚名羽
(华北理工大学 电气工程学院,唐山063009)
引 言
在大型矿厂中,堆料设备一般露天生产,扬尘大、泥水多等恶劣条件无法避免,加上设备本身的震动等干扰等,就要求卸料小车的定位装置工作可靠、检测准确、经久耐用等,实践证明激光、旋转编码器、行程开关无法满足长期生产应用的要求。鉴于近年来全球卫星定位导航系统的迅猛发展,曾考虑将全球卫星定位导航系统技术应用于卸料小车的定位,因为信号遮挡会出现定位精度下降甚至无法进行方位解算的情况,所以研发一套能够独立完成定位、可靠性高的、稳定性良好的系统是市场亟需的。
惯性航位推算算法是一种独立算法,该推算过程的单片机体积只需晶片大小,就能够使卸料小车完全不受外界干扰,同时具有很高的集成度,于是设计出一套实用性强的卸料小车惯性导航推算装置。它使用加速度计传感器采集卸料小车运动信息,采用具有ARM Cortex-M3内核的STM32F103VET6单片机作为数据处理单元,同时采用卡尔曼滤波对航位信息进行处理,最终将卸料小车航位推算信息通过载波通信技术传送给总控室或显示于TFTLCD显示屏上。考虑到航位推算技术自身的延时误差,计划在航位推算技术的基础上结合接近开关来矫正误差。
惯性导航定位设备数据更新速度快、短期精度高、稳定性好,抗污染能力强,且防水、油、灰尘等。现在市场已经有了比较成熟的惯性导航定位装置,这些装置体积小、投资少、便于安装、维护简便。
1 系统组成与工作原理
该卸料小车航位推算装置具体的组成框图如图1所示,包括传感器模块、接近开关模块、数据转换模块、数据处理模块以及电力线载波通信模块。
图1 系统组成框图
由于矿厂恶劣的环境,在给小车定位的过程中,接触式的机械装置不稳定,所以需要非接触式的机械装置。惯性导航定位系统就是一种非接触式的机械装置,但所有的导航推算本身都有延时误差,采用安装接触开关的方式来对小车的位置进行矫正。小车需要停留时,让其停留在接触开关的感应处,从而避免惯性导航运算的延时出错。关于通信,如果采用无线通信,一定会产生信号遮挡;如果使用有线通信,电缆本身不结实,长时间往复,电缆很容易破损。考虑到小车上部固有一根电源线用于给小车提供电源,所以采用有线载波通信是最佳选择。
传感器模块上有加速度计MMA7455以及用于数据处理的单片机STM32F103VET6。加速度传感器模块很小,可以很容易地安装于小车上,用于采集小车前后方向上的加速度,采集来的原始数据通过STM323F103VET6进行航位推算初步处理。
数据处理模块核心在与传感器模块串口通信的同时,将航位推算所需的数据通过文件系统存储于SD卡中,通信采用载波电流与数据处理模块进行通信。显示模块采用的是TFTLCDILI9320,当工作人员需要查看小车当前的航位信息,负责从SD卡中调出原始数据,推算出小车的航位信息,并最终显示在TFTLCDILI9320上。
2 硬件设计
主从单片机都采用ST公司生产的具有ARM Cortex-M3内核的工业级控制芯片STM323F103VET6的传感器模块设计。加速度计采用MMA7455,其可在2.16~3.6 V低电压下正常工作,量程为8g。
接近开关模块采用狮威(LIONPOWER)的接近开关TL-Q5MC1。在小车定位过程中,接近开关的位置需要区分开来,以确定小车的不同位置,要完成一次给接近开关的感应区编码,需要特别说明的是,本系统接近开关感应区编码采用格雷码。
虽然二进制码可以直接经过D/A转换成为模拟信号,但是在某些情况下,例如十进制的3转变为4时,二进制码的每一位都需要改变,而在实际电路中,四位的变化不可能绝对同时发生,因为在某些情况下会导致电路状态产生错误,而格雷码可以避免这种错误。
负责航位推算的主单片机与加速度传感器模块上的从单片机通过串口进行通信,它们被设置为相同的波特率。显示模块采用Ilitek公司生产的TFTLCDILI9320。
3 软件设计
航位推算系统是一种完全可以不受外界干扰的定位系统。它的优点是可以通过自身集成的惯性传感器计算出汽车的速度和位置信息,短时间内测量的数据是可靠的,因此可以应用于卸料小车的定位。
惯性导航推算(DR,又称航位推算)系统是由测量距离和测量航向角的传感器构成。惯性导航推算是一种独立的定位方法,其基本原理如图2所示。
图2 航位推算原理图
如图2所示,在二维平面中研究运动中的车辆,当给出车辆的起始点位置(x0,y0),就可以运用加速度计获得的数据计算出车辆行驶距离的变化量,从而可以推算出任何时刻车辆的具体位置。本研究中的车辆一直变化,所以在计算过程中,要分别对车辆的速度和距离进行分解。具体解算过程如下:
(1)分解距离
依次推算,可得:
(2)分解速度
卸料小车在行进的过程中一般只做前后运动,x轴有速度,y轴没有速度,依次推算,可得:
4 实例仿真
该实验设定一秒内读取加速度计100次,之后取平均值,然后调用惯性导航算法计算实际运行的路程。显示结果如图3所示。
图3 ILI932显示读取的加速度值
惯性导航算法运用的环境是在GPS无法接收到信号时(包括料堆、隧道有遮挡的情景),这种场合下惯性推算导航运行的成本不会太高。所以,在有限的时间内,要尽可能地使数据处理的更准确。根据以上测试要求,本文设计了如下的测试方案。
实验设备:笔记本电脑一部,简易四轮车一辆,惯性导航定位系统一套。
实验过程:跑道测试场为从联大实验楼到科技楼一段直线马路,用粉笔做一个420 m长的直线轨道,在测试起点,启动惯性导航定位系统,并连接到笔记本上采集数据。
用计算机把加速度计的输出信息变换到平面坐标系,然后计算出载体的速度信息,并在Visual Studio 2008程序的客户端区设备进行转换显示。
由于卸料小车在轨道上运动,通常都是直线,因此客户端向左为设备运动的初始方向X,建立设备的坐标系,进行绘图。
采用按像素点比例的方法解决客户区范围不足的问题,在软件平台建立惯性导航推算模型。通过软件编程实现STM32F103VET6开发板把加速度计输出信息变换到平面坐标系,然后计算载体的速度,并通过串口在Visual Studio 2008客户端进行显示。实地跑车的界面图略——编者注。
从起点到终点的实际距离是420 m,而实际所测距离为423 m,误差是3 m,误差概率是0.71%,实际结果测试图略——编者注。由此可见,惯性导航推算存在误差,而且这些误差是不可忽视的。如果要更精确地实现小车定位,就需要在研究惯性导航推算的同时结合滤波算法,这也正是今后努力的方向。
结 语
本文介绍了基于惯性导航的卸料小车定位装置的航位算法,采用单片机与微惯性器件搭建的系统,集成度高、实用性强、成本低、易于维护。投入运行后,能提高自动化程度和装备水平,能够在一定程度上避免人工操作的失误,减轻工人的劳动强度,提高工作利用率和工作质量,减少检修、维护工作,为未来相似载体位置检测技术提供了技术依据。
编者注:本文为期刊缩略版,全文见本刊网站www.mesnet.com.cn。
[1]刘朋.基于单片机的有轨自动供料小车的定位控制[J].陕西科技大学学报,2009,27(4):85-87.
[2]刘超.基于STM32的GPS/DR组合导航系统的设计[D].北京:北京交通大学,2012.
[3]罗胤,路鸿洲,赵宇,等.基于STM32的步行者航位推算装置设计[J].单片机与嵌入式系统应用,2014(3):50-56.
[4]李鹏程.组合导航及其滤波算法研究[D].西安:西安电子科技大学,2010.
[5]Peng S,Fengyu Z,Lei C.Embedded Speech Recognition Module Based on STM32[J].Microcontrollers&Embedded Systems,2011(2):14.
[6]Lee J Y,Kim H S,Choi K H,et al.Design of Adaptive Filtering Algorithm for Relative Navigation[C]//Proceedings of the World Congress on Engineering and Computer Science,2013.
[7]吴宝琳,黄晓瑞,崔平远.信息融合技术及其在组合导航系统中的应用[J].战术导弹技术,2002(1):39-44.
[8]吕鹏,陆明朶,冯振明.车载惯导组合导航算法优化及稍度分析[J].计算机仿真,2013,30(8):155-158.
[9]黄丽.卡尔曼滤波在车载组合导航系统中的应用[D].上海:上海交通大学,2009.