APP下载

两轮直立光电导航智能车的研究与实现

2016-05-09王冠凌安徽工程大学电气工程学院安徽芜湖241000

安徽工程大学学报 2016年1期
关键词:车模陀螺仪控制算法

武 峰,王冠凌(安徽工程大学电气工程学院,安徽芜湖 241000)



两轮直立光电导航智能车的研究与实现

武 峰,王冠凌*
(安徽工程大学电气工程学院,安徽芜湖 241000)

摘要:针对智能车系统运行稳定性较差、速度较慢的问题,设计了一种基于线性CCD摄像头传感器的两轮直立光电导航智能车系统.首先,自主设计了各个智能车模块的电源稳压电路和电机H桥驱动电路,以保障硬件系统的稳定与可靠;在此基础上,采用互补滤波和清华滤波的方式来处理姿态检测传感器检测到的信号,实现智能车的直立平衡;最后,利用实例来验证该设计的有效性与可行性.

关 键 词:智能车;直立;光电导航

智能车控制系统的研究是当前最为活跃的研究领域之一,它包含了自动控制、人工智能、传感器、信息融合、图像处理及计算机科学等多门学科的内容.与此同时,智能车系统的研究对提高学生的科研能力和社会效益也具有着非常重要的意义.两轮直立光电导航智能车系统所研究的导航技术是可移动智能设备完成很多复杂功能的基础,在工业生产、生活、国防等领域都起着非常重要的作用.美国从20世纪中叶就一直致力于推动智能车稳定运行技术的进一步发展,2010年早期由谷歌公司主持研制的智能车可根据谷歌地图自主运行千公里,21世纪初至2010年,日本也决定在道路上有所突破,拟在全国范围内推行无人操纵的智能车道路设计计划.

课题以第10届全国大学生飞思卡尔大赛直立光电组为基础,所涉及到的两轮直立光电导航智能车系统在硬件方面改进了现有的电源稳压电路,同时自主设计了一种电机的H驱动电路,使得硬件电路信号更加稳定高效.在此基础上,用清华大学提出的滤波方案对智能车的直立平衡控制信号进行软件处理,使得智能车在运行过程中的自平衡能力更强,为智能车系统在可移动智能设备方面的应用提供了一种非常好的解决方案.

1 两轮直立光电导航智能车总体设计

系统结构图如图1所示.由图1可知,该系统采用FreeScale的Kinetis K60作为主控芯片,其中,控制算法主要包括车体直立、车体运行、方向控制以及它们的归一化融合处理和后期参数的调试与设置.微控制器中的高速ADC模块能够对车体的姿态进行信息采集并转换作为车体直立控制的输入量,运用正交解码的方式对光电编码器采集到的车轮速度进行速度闭环控制,同时,利用大津算法对线性CCD摄像头传感器采集到的信息进行处理,提取中线信息作为微控制器道路识别和决策的依据[1].通过姿态融合算法和归一化算法驱动电机,实现智能车的姿态保持和转向以保证智能车平稳前行.

2 系统硬件设计

2.1 电源模块

两轮光电导航直立智能车系统所有模块包括Kinetis K60最小系统、陀螺仪和加速度模块、电动机驱动模块、编码器及测速模块及线性CCD模块,其电源都来自于7.2V镍镉电池,但各个模块的工作电压各不相同,在硬件设计中有很多需要考虑的因素,如强弱电的分离、模拟数字信号的隔离等[2-3],因此,要保证各个部件运行稳定就要对电池电压进行稳压和滤波,分别供给各个模块使用.智能车系统采用MPU9150数字陀螺仪和陀螺ENC 03MB+加速度MMA7361CL二合一模块中的加速度计作为车体的姿态检测传感器.加速度计和陀螺仪的电源工作电路如图2所示.使用TI公司的线性低压差稳压器TPS7333把7.2V电池电压稳压至3.3V,同时,使其输出电流最大可达500mA,以满足姿态模块的电源需求.通过实践检验证明其很好地解决了电源供电的问题.

图1 系统总框图

CCD摄像头是由蓝宙电子生产的高光谱灵敏度图像传感器,其最大分辨率为480*752,同时还具有能够在高速运动的过程中充分保持信号在传输时不失真的全局快门(总像素同时曝光系统).考虑到CCD检测方式的原因,为了获得较大的视野,需要将摄像头进行架高安装,因此,智能车控制系统的整体重心将会上移,这对于车模高速平稳行驶是很不利的,而CCD摄像头的质量和体积也比其他摄像头要轻且小得多.另一方面线性CCD摄像头对电源电压的噪声比较敏感,它的输入电压是3.3V,因此,需要对摄像头的供电电源进行特殊处理.由图2可知,在输入输出端加入滤波电容,并且使用低压差稳压芯片TPS7333对电池电压进行两级稳压,从而保证摄像头的图像不会因电池电压的波动受到影响.

图2 CCD加速度计和陀螺仪供电电路

2.2 电机驱动模块

电机H桥驱动电路原理如图3所示.由图3可知,首先,通过74HC02 4组二输入端或非门逻辑芯片,在3A、3B和4A、4B端分别将智能车电机转动方向信号和电机占空比信号输入进来,然后,通过1Y和2Y端输出到逻辑驱动芯片IR2184(s),其中,逻辑驱动芯片通过H桥驱动电机电路,一是保证始终都是对角侧桥臂同时导通来控制电机的正反转,二是确定同侧桥臂不会同时导通来使电机短路.H桥的4个功率MOS管均采用频率响应较好、导通电流较大的N沟道型的MOS管,经过这一系列的放大控制与驱动逻辑之后使得本H桥电路能够控制输出高达20A的直流电流,也可以接受最高可达400KHZ的两路PWM信号来控制电机的速度与转向,同时还具有过温保护、欠电压保护等功能.

2.3 测速模块

在智能汽车设计中,速度反馈是一个重要的环节,良好的速度反馈值可以让PID速度调节算法更加迅速地调节智能车的加速与减速,让其既能够在直线道路上加速行驶,在进入弯道前又能够提前降低速度,保证稳定过弯[3].本设计采用的是欧姆龙公司EA62-CW3C型10位精度、500线的绝对式编码器,该编码器的供电电压为5~12V,完全兼容智能车的电平,同时其还具有双向测速功能,可直接输出方波,通过两路方波的相位差来识别转动方向.在智能车实际运行过程中,微控制器利用SCI通讯协议来读取编码器当前的计数值,并且将其与上一次的计数值相减,这样方可得到智能车的实时运行速度.

图3 电机H桥驱动电路原理图

3 系统软件设计与算法实现

3.1 系统软件流程及程序分配与中断处理

系统软件流程图如图4所示[4].程序中车模的运行流程以及车模的信息显示不需要精确的时间周期,可以放在主函数中完成,而各传感器信号的采集处理,电机PWM输出,车模运行的直立、速度、方向控制,都需要精确时间周期执行,因此,在软件设计中,利用Kinetis K60的NVIC中断管理模块,进行中断分组和中断优先级分配,其中智能车直立控制和速度控制放在中断优先级较高的中断里执行,而在中断优先级相对低的中断里进行CCD信息采集转向控制.首先,采用所设置的优先级最高的PIT可编程定时器中断模块,产生1ms的定时器中断,角度计算、直立控制放在1ms中断里1ms计算一次,速度控制也放在这个模块里,将速度控制平均分配到20步5ms的控制周期中,每100ms进行一次计算.在另外一个优先级相对较低的中断模块里进行CCD图像的获取、道路两端黑线的采集、中线的判断.根据算法计算出的中线信息将方向控制的输出变化量平均分配到2步5ms的控制周期中,每10ms调用一次.

图4 系统软件流程图

3.2 增量式PID

在计算机控制系统中,数字PID控制算法通常又分为位置式PID和增量式PID,增量型算法与位置型算法相比,具有以下优点:易于实现手动到自动的无冲击切换;增量的确定仅与最近几次偏差采样值有关;增量型算法不需要累加;计算精度对控制量的计算影响较小等[4-5].在实际智能车编程控制时,采用了基于PWM脉宽调制的PID闭环控制,主要实现对智能车直流电动机速度的闭环控制.控制编程依据:

式中,u(n)为第n次输出控制量;u(n-1)为第n-1次输出控制量;e(n)为第n次偏差;e(n-1)为第n-1次偏差;e(n-2)为第n-2次偏差;kp为比例增益系数;ki为比例增益系数;kd为微分增益系数.

3.3 摄像头图像处理与转向控制

赛道由白色的KT板和贴在KT板两边的黑色边沿组成,研究采用的是PAL制式的线性CCD摄像头,这种灰度摄像头的特性是图像越白、电压越高;图像越黑、电压越低[5].大津算法采集到的图像灰度信息图如图5所示.由图5可知,两边的黑线为采集到的赛道KT板两边的黑色边沿,通过AD采集来得到亮度信号,当采集到黑色边沿时,图像变暗,电压就会变低,a线就会跳变,通过这种方式得到赛道两边的黑色边沿进而计算出赛道中心位置.本次研究采用大津算法采集图像信息,大津算法即最大类间方差法,首先采用遍历的方法得到使类间方差最大的阈值T,然后将图像中的灰度值0~255与T进行比较,按照大于T的像素点设定为纯白色、小于T的像素点设定为黑色的方法,提取两边黑线信息,最后根据黑线信息计算出中线信息,作为智能车循迹转向的标志.转向控制实际计算如式(2)所示,其采用PID控制算法的P算法.

式中,Left_Side为左边黑线;Right_Side为右边黑线;dirc_p为增量式PID的比例参数.

图5 大津算法采集到的图像灰度信息图

3.4 两轮平衡控制

通过负反馈来实现车模的直立,车模用两个车轮来保持平衡,因此,车体只会在车轮滚动的方向上发生倾斜.直立的车模可以看成放置在可以左右移动平台上的倒立着的单摆,而单摆能够稳定在垂直位置的条件有两个:一是要受到与位移相反的回复力;二是要受到与运动速度相反的阻尼力[6].这样倒立摆能够在垂直位置稳定下来所受到的力为:

式中,θ为车模倾角;θ′为车模倾角加速度;k1、k2均为比例系数.

两者的和作为车轮加速度的控制量:

只要保证k1>0、k2>0的条件下可以维持车模直立状态即可.其中,k1决定了车模能够维持在直立状态的恢复力,它必须大于重力加速度;k2决定了车模回到垂直位置的阻尼系数,选择合适的阻尼系数可以保证车模尽快稳定在垂直位置.因此,控制车模稳定需要下列两个条件:一是能够精确测量倾角θ的大小和角速度θ′的大小;二是控制车轮的加速度.为了克服车模本身运动对加速度计测量的倾角的干扰以及经过积分计算对于陀螺仪测量的角速度信号形成的累积误差,采用卓晴提出的滤波方案通过调节陀螺仪比例参数来得到角度融合的效果,运用PID控制中的PD控制来处理得到的角度值与角速度值,计算公式如下:

式中,CAR_ANGLE_SET为车模直立时的倾斜角度;g_fCarAngle为车模运行时加速度计测量出的车模的倾斜角度;CAR_ANGLE_SPEED_SET为车模直立时的初始设定角加速度;g_fGyroscopeAngleSpeed为车模运行时通过陀螺仪测量出的角加速度;ANGLE_CONTROL_P和ANGLE_CONTROL_D分别为PID控制中的比例和微分参数.

图6 清华滤波方案效果图

适当调节陀螺仪比例参数可以使得通过陀螺仪计算出的倾斜角度能够较好地跟踪通过加速度计测量得到的角度,以得到更好的融合效果,从而使系统获得更好的稳定性.清华滤波方案效果图如图6所示.由图6可知,平滑度不高的曲线表示加速度计测量出的车模倾斜角度,较为平滑的曲线为通过陀螺仪测量计算出的车模倾斜角度,其中,纵坐标为角度在调试过程中保持主板上点之后,通过人为任意改变车模的倾斜角度来观察加速度计测量角度与算法测量角度的融合性.从图6中还可以看出,其角度融合度较高,能够为智能车提供更强的自平衡能力.

3.5 速度控制

智能车系统通过控制车轮速度来实现车模的运行速度,车模通过两个后轮电动机经由减速齿轮箱来驱动车轮,因此,车轮的运动控制可以通过控制车轮电动机的转速来实现.电动机旋转速度可以通过安装在电动机输出轴上的光电编码盘获得,利用Kinetis K60的脉冲累加器模块测量在100ms时间间隔内速度脉冲信号的个数即可得到电动机的转速.电动机速度控制采用PI控制,其控制公式如下:

式中,CAR_SPEED_SET为给定速度;g_fCarSpeed为车模运行速度;SPEED_P和SPEED_I分别为速度控制的比例和积分参数.

其中,为了保证车模的稳定性,速度控制输出量的变化被均匀分配在20个角度控制函数周期内,这样可以减少速度控制对于车模直立控制的影响.

3.6 车模直立行走控制算法融合

电动机最终输出电压控制量是将车模3种控制(直立、速度、方向)的控制量线性叠加在一起,速度和方向控制的输出量直接叠加在电动机控制电压上,假定直立控制会始终保持车模不跌倒[7].在算法中直立控制是基础,它的调整速度非常快,速度和方向控制相对调整速度慢,直立控制会自动调节车模的倾角以适应车模加速、减速和转弯的需要.其控制框图如图7所示.左右电机最终输出公式如下:

式中,fLeft和fRight分别为左右电机输出总量.其中,智能车的直立控制量、速度控制量和方向控制量线性叠加起来,当左右电机输出量不同时,即可在直立运行的基础上实现方向控制的融合.

在此控制算法中,速度与方向控制将成为直立控制的外部干扰,直立控制用来维持车模保持直立状态.为了确保车模能够平稳高速运行,外部的速度和方向控制算法调整速度不能过快、过于剧烈.

图7 直立行走控制算法图

4 结论

在全国大学生飞思卡尔杯智能汽车竞赛的背景下,分析并设计了两轮自平衡光电导航智能车.从原理、硬件、软件3个方面阐述了光电自平衡智能车的制作过程.吴苗苗[7]提出了位置式PID的控制算法和卡尔曼滤波的控制算法,提高了智能车的动态性能,但其稳定性方面未达到最佳效果,有时智能车会产生极环震荡的现象.两轮直立光电导航智能车系统在制作的过程中采用模块化的思想,把车模运动控制的任务分解成3个基本控制任务:直立控制、速度控制、方向控制.在研究实现各个稳定硬件电源模块的基础上,通过陀螺仪和加速度计利用清华滤波控制算法进行智能车的直立姿态融合控制,通过编码器利用速度闭环的方式实现车模的速度控制,最后再通过线性CCD采集到的路况信息进行转型控制.经过调试和测试,不仅可以实现智能车的稳定高速运行,速度可达2.8m/s,同时还能适应多种赛道类型的识别和循迹.

参考文献:

[1] 隋金雪,杨莉,张岩.“飞思卡尔”杯智能汽车设计与实例教程[M].北京:北京航空航天大学出版社,2014.

[2] 费探,杨会成,杨惠.基于图像传感器的智能车硬件系统没计[J].工业控制计算机,2012,25(5):107-108.

[3] 候代坡.两轮直立电磁导航智能车的研究与实现[D].兰州:兰州理工大学,2013.

[4] 滕彦飞.基于K60系统版的智能小车控制系统设计[D].青岛:青岛理工大学,2014.

[5] 于彦华.基于视觉导航的两轮自平衡智能模型车的设计与实现[D].西安:长安大学,2014.

[6] 赵韶华,黄金明,刘鹏,等.倒立摆理论在直立自平衡智能车系统中的应用[J].电子技术,2014(2):38-41.

[7] 吴苗苗,沈世斌,王亮,等.基于CMOS摄像头的直立循迹智能车系统设计[J].工业控制与应用,2014(7):59-61.

Research and implementation of intelligent vehicle with two wheel upright photoelectric navigation

WU Feng,WANG Guan-ling*
(College of Electrical Engineering,Anhui Polytechnic University,Wuhu 241000,China)

Abstract:A two-wheel linear CCD camera upright photoelectric sensor smart car navigation system is designed to improve the smart car system's poor operation stability and slow speed.Firstly,the power regulator circuit for each module of the smart car and the motor H-bridge driver circuit are designed independently to guarantee the stability and reliability of the hardware system.Based on this,complementary filtering and tsinghua filtering is used to deal with the signal detected by the pose detection sensor to achieve the upright balance of the smart car.Finally,the example is presented to verify the effectiveness and feasibility of the design.

Key words:intelligent vehicle;up rightness;photoelectric navigation

通讯作者:王冠凌(1971-),男,安徽庐江人,副教授,硕导.

作者简介:武 峰(1991-),男,安徽亳州人,硕士研究生.

收稿日期:2016-01-10

文章编号:1672-2477(2016)01-0053-06

中图分类号:TP249

文献标识码:A

猜你喜欢

车模陀螺仪控制算法
基于EMD的MEMS陀螺仪随机漂移分析方法
潮玩车模精准吸引“Z世代”
纺织机械手专利瞄准控制算法
基于ARM+FPGA的模块化同步控制算法研究
我国著名陀螺仪专家——林士谔
车展,没有车模看什么
微机械陀螺仪概述和发展
MEMS三轴陀螺仪中不匹配干扰抑制方法
基于航迹差和航向差的航迹自动控制算法
一种非圆旋转工件支撑装置控制算法