APP下载

基于MC9S12XS128的激光传感器循迹智能车控制系统设计

2014-07-10余红英杨杰

关键词:发射管黑线循迹

余红英,杨杰

(芜湖职业技术学院电气工程学院,安徽芜湖241003)

基于MC9S12XS128的激光传感器循迹智能车控制系统设计

余红英,杨杰

(芜湖职业技术学院电气工程学院,安徽芜湖241003)

以飞思卡尔MC9S12XS128单片机为控制芯片,设计能够自主循迹行驶的智能车。利用双排激光传感器采集路径信息,获取车中心线与路径中心线位置偏差信息;采用分段比例法控制追踪舵机转动使上排激光传感器追踪路径中央黑线、PD算法控制转向舵机转向使车沿黑线行驶;根据细化的路径信息及速度编码器所测智能车的当前速度,对控制车速的直流电机采用增量式PID算法闭环调节控制。实验结果表明,智能车能在不同弯道下对舵机及行驶速度实现准确控制,稳定快速地循迹行驶。

智能车;单片机;激光传感器;循迹

随着汽车行业智能化的发展,智能车的研究已成为智能交通领域的热点[1]。为实现智能车对路径自主识别和快速稳定循迹行驶,智能车控制系统需能准确识别路径,并能有效地对小车的转向和速度进行实时控制。路径识别常用的检测器件有光电传感器、CCD图像传感器、电磁传感器等。光电传感器具有检测速度快、数据量小等优点而得到广泛运用[2],但光电传感器易受外界光线影响与干扰,前瞻性不够,同时常规的单排传感器在坡道上易丢失路径信息,极大地限制了智能车的快速稳定运行。基于此,笔者设计1种基于MC9S12XS128的激光传感器循迹智能车系统,采用双排激光传感器,以一定的频率调制发射激光,且采用分段比例法控制追踪舵机、PD算法控制转向舵机、增量式PID算法控制直流电机,以实现智能车稳定快速地循迹运行。

1 系统的硬件设计

智能车硬件系统主要包括单片机最小系统、激光传感器、追踪舵机、转向舵机、电机驱动与测速、档位控制和电源管理、车模等单元[3],系统总体设计方案如图1。

1.1单片机最小系统单元

图1 系统总体设计方案Fig.1 Smart car system design program

最小系统由MC9S12XS128单片机、时钟晶振电路、复位电路、锁相环滤波电容、BDM接口电路及接插件等构成,具有59个通用I/O端口,设有周期中断定时器与TIM模块,具有8个独立的PWM通道,其频率和占空比可编程控制。MC9S12XS128的时钟频率为16MHz,为提高数据处理速度,将其超频到80MHz。用BDM调试器通过BDM接口电路向最小系统的内部128 kB FLASH中下载程序,可通过BDM进行实时在线调试[4]。单片机端口资源分配如表1。

表1 单片机端口资源的分配Tab.1 SCM port resource allocation

1.2 电源管理单元

采用7.2V/2 000mAh的镍镉充电电池供电,为避免电机和舵机在重复启动时大电流对其他系统产生干扰,主要功能模块采用单独供电。由LM 2940组成4组5 V稳压模块,1路给单片机最小系统单元、测速单元及电机隔离芯片;其他3路分别给激光传感器单元、追踪舵机单元、转向舵机单元;电机则由7.2 V电池直接供电。

1.3 激光传感器单元

激光传感器具有高定向性、高亮度、强单色性、抗外界干扰强、前瞻远等优点[5]。本系统路径信息采集选用2排激光传感器,上排传感器固定在一舵机上(简称追踪舵机),调成较远的前瞻,用于追踪路径中央黑线;下排传感器,调成较近的前瞻,用于上坡时上排传感器信息丢失时路径信息采集,两方面结合使智能车路径识别准确、快速。

激光传感器单元由激光发射电路与路径反射激光接收电路构成,为减少接收管的个数,激光发射管与接收管上排采取二对一的形式,下排采用二对一与三对一混合形式。上排传感器的前瞻达到45 cm,下排传感器的前瞻为15 cm,为避免其他光线对路径信息的干扰,电路中加入调制管,并以74LS04反相器驱动激光发射管以180 kHz频率发射激光照射到实验路径上,由相匹配的接收管接收反射光[2]。为避免发射管之间相互干扰,由单片机最小系统的PB0~PB7端口通过2个74LS138分时控制上排16个激光发射管的通断,由PM 0~PM 3端口通过1个74 LS 138分时控制下排8个激光发射管的通断。激光调制发射及分时控制单元电路如图2。

图2 激光调制发射及分时控制单元电路Fig.2 Unit circuitof lasermodulation em ission and time-sharing control

接收路径反射激光信号处理单元如图3。激光发射管发射激光照射到实验路径上,接收管接收路径上反射光的光强,为了提高灵敏度,在接收管外加装1个聚光透镜,增大接收管的灵敏度与检测距离。1个接受管能接受固定2个或3个发射管照射到路径上反射光的光强,并输出电压信号,由于同样路径环境下的细小区别,电压信号会有所波动,不利于单片机处理。因而把图3中接收管脚2得到的电压信号送到LM 339比较器的一输入端,针对不同的行驶环境,设定相应的比较电压,最后从LM339得到二值化的数据信息。1个LM 339可处理4个接收管接受路径反射激光的信号,电路采用3个LM 339,处理11个接收管获得的信号。上排传感器的接收信号送入单片机的PA0~PA7端口,下排传感器的接收信号送入PS0~PS2端口,单片机对获得的信号进行处理,得到小车与中心引导线的偏差,进而控制追踪舵机、转向舵机的转动,使智能车循迹行驶。

1.4 电机驱动与测速单元

直流电机采用2块BTS7960并联组成全桥驱动,7.2 V供电。电机属于感性负载,运转时电流不断发生变化,影响单片机正常工作,所以驱动单元增加74LS244作为电机驱动隔离模块,5 V供电,同时增强了单元的驱动能力。电机驱动电路如图4。为使智能车稳定运行,在车后传动轮上安装速度编码器,能实时采集车的运行速度,并通过PWM控制调节车速。

2 系统控制策略

路径识别是实现方向控制和速度控制的前提[6]。本系统中,单片机利用激光传感器采集路径信息,得到智能车中心线与检测到的路径中央黑线位置的位置偏差,采用分段比例法、PD算法、增量式PID算法分别获取控制追踪舵机、转向舵机、驱动电机的PWM信号占空比,进而实现对舵机和电机的最优控制,使智能车沿特定路径快速稳定地行驶。

2.1 路径信息采集及循迹

行驶路径中央有一2.5 cm的黑色引导线,智能车的2排传感器呈一字型,与车的中心线垂直。激光传感器发射管采用0.5ms中断分时发光控制,循环往复,上排传感器发射管1,9同时发光,接下来2,10同时发光,按此规律中断分时扫描完毕;下排传感器开启时从左至右1,5,2,6,3,7,4,8依次中断分时发光。单片机根据接收路径反射激光信号处理单元得到的二值化信息,判断哪几个激光发射管发射的光照射到路径中央黑线上。给发射管赋予不同的权值qz[16]=[-15,-13,-11,-9,-7,-5,-3,-1,1,3,5,7,9,11,13,15],通过式(1)计算当前发射光照射到路径中央黑线上的激光发射管权值之和ld,其反应当前激光传感器中央两发射管发射光照射到路径上的两光斑之间中心点与发射管发射光照射到路径中央黑线上的光斑之间的位置偏差。舵机属于位置伺服电机,正常工作状态下其输出转角与给定的PWM脉宽成线性关系[7]。智能车追踪舵机的转动以分步累加的形式得到,为使转向更平滑,预设分段比例系数数组kp[|ld|],用式(2)计算控制追踪舵机的PWM信号占空比值的累积量。在实验路径上控制追踪舵机转动的PWM信号占空比值A1由式(3)决定,运用PWM信号占空比值变化控制追踪舵机的转动,使上排激光传感器中央发射管发射光照射到路径上的光斑快速追踪路径中央黑线。

图3 接收路径反射激光信号处理单元电路Fig.3 Receiving path reflected laser signalprocessing circuitunit

图4 电机驱动电路Fig.4 M otor drive circuit

其中:i为发射光照射在黑线上的激光发射管的号;n为发射光落在黑线上的激光发射管的个数;B1为上一次控制追踪舵机转动的PWM信号占空比值的累积量;B'1为当前控制追踪舵机转动的PWM信号占空比值累积量;A01为激光传感器中央两发射管发射光照射到路径上的两光斑之间中心点落在车中心线延长线上时,控制追踪舵机PWM信号的占空比值,是一常量。

智能车转向舵机的控制信号占空比值由2个变化量决定,分别为当前控制追踪舵机转动的PWM信号占空比值累积量和控制追踪舵机转动的PWM信号占空比值的变化率,综合二者可快速平滑地控制转向舵机,使智能车循迹行驶。首先计算出控制追踪舵机转动的PWM信号占空比值的变化率,根据变化率分段预设微分系数kd[|Δrd|],将控制追踪舵机转动的PWM信号占空比值的变化率Δrd乘以分段微分系数kd[|Δrd|],得到的值作为转向舵机占空比值的一个变量。再根据当前控制追踪舵机转动的PWM信号占空比值累积量乘以比例系数kp1作为控制转向舵机占空比值的第二个变量,设A02为在直线路径上行驶时控制转向舵机的PWM信号占空比值,使智能车沿路径中央黑线行驶,控制转向舵机转动的PWM信号占空比值A2由式(4)决定。

转向舵机控制采用PD算法,经多次赛道测试,选择恰当的kp1与kd[|Δrd|],可以提高转向舵机的灵敏度,提升智能车在入弯时的转向速度,适合多弯道路径。

针对坡道,采用低前瞻的下排传感器和角度传感器MMA7660来控制智能车循迹。当MMA7660测得信号反映智能车上坡时,开启下排传感器,用上述处理方法,控制追踪舵机与转向舵机的偏转;当检测智能车下到坡底进入平道时,关闭下排传感器,进入平道行驶状态。

2.2 速度控制

首先确定智能车当前运动状态信息,综合考虑两舵机转向情况、实时速度、出弯入弯状态,根据舵机当前转向值的大小及前段时间内转向值变化率的大小,判断出直道、小弯道还是大弯道,由程序设置的运行标志及时判断小车的入弯出弯状态,进而进行速度控制。

系统中设定不同路径需要达到的速度期望值。通过编码器测得当前速度,计算当前速度与设定速度的差值,如果为正值,则减速,否则加速,由两速度差值大小决定加速或减速的加速度,保证智能车稳定运行。车速控制采用增量式PID算法,速度偏差作为控制直流电机PWM信号占空比增值的输入量[8],实际运行中控制电机PWM信号占空比增值由式(5)决定。

式中:A3为第n次控制直流电机PWM信号占空比调速增量;Δvn,Δvn-1,Δvn-2分别为第n,n-1,n-2次速度偏差。在具体控制中,通过实验路径,反复调整kp,ki,kd的值,使小车的速度控制稳定,同时在速度相差很大时加入Bang-Bang控制[9],以提高小车快速运行的灵敏性与稳定性。

3 软件设计

系统软件总体程序流程如图5。程序在freescale CodeWarrior环境中用C语言编写。开机后,对系统进行初始化,完成之后0.5ms定时中断,AD采集角度传感器的值,判断智能车当前行驶路径是否在坡道,如在坡道则启动下排传感器,否则关闭下排传感器。分时点亮激光发射管发射激光照射到行驶路径,从接收管接收路径反射激光信息,预处理信息;确定激光传感器分时点亮完毕,进行路径识别,判断是否是第二次遇到起跑线,如果是,则延时刹车,停止行驶,关闭中断,程序结束。否则单片机根据采集的路径信息,用分段比例法调整追踪舵机的PWM占空比,使上排激光传感器追踪路径中央黑线,用PD算法调整控制转向舵机的PWM占空比,控制小车的转向循迹。随后,根据当前路径信息,结合当前速度与设定速度期望值的偏差,运用增量式PID算法确定控制电机的PWM占空比,控制小车是加速还是减速,或是使电机反转,刹车制动。如果进入循环,激光传感器分时点亮没有完毕,各控制量保持上一次的值控制智能车行驶,直到中断分时点亮所有的激光发射管,开始执行循环体如图5,从而实现智能车在环形闭合路径上快速稳定地循迹行驶。

4 结果与讨论

智能激光传感器循迹智能车实物如图6,智能车行驶实验路径如图7。路径中央有2.5 cm宽黑线,路径包括各种不同曲率半径的弯道,智能车在实验路径上进行自主循迹实验,调整控制追踪舵机PWN占空比的分段比例系数数组kp[|ld|],如表2,前5个数据变化较小,减小智能车循迹行驶的直线晃动;行驶过程中,通过实验路径信息采集,根据式(1)~(3)计算,改变控制追踪舵机的PWM信号占空比值,上排激光传感器快速追踪路径引导黑线。对转向舵机,式(4)中kp1=1/2,为使车转向更加平滑,控制转向舵机PWM占空比的微分系数分段设置,如表3。随|Δrd|渐变,依据式(4)改变控制转向舵机的PWM信号占空比值,控制车沿设定路径行驶,为防止超调,当|Δrd|>15时,令|Δrd|=15;对于车速控制,设置好不同路径的期望速度,根据式(5),设定一个kp,使ki=0,kd=0,从而使智能车在路径实验行驶,找到1个kp,行驶较为稳定,然后组合调节ki,kd值,反复调节,逐渐提速得到一组最佳kp=0.6,kd=0.3,ki=0.15,计算出控制电机的PWM占空比增量,调节车速。kp比例控制可以迅速反应误差,减小稳态误差;ki积分控制的主要作用是消除稳态误差;kd控制主要是为了控制超调,提高系统的稳定性。实验结果显示,智能车抗光线干扰能力强,追踪舵机转动使上排激光传感器追踪中央引导黑线及时,转向舵机转向灵活平滑,过坡平稳,循迹行驶快速稳定。

图5 智能车软件流程图Fig.5 Smart car software design flow chart

图6 激光传感器循迹智能车实物图Fig.6 Laser sensor smart car physicalmap

图7 智能车行驶实验路径图Fig.7 Smart car driving experim ent path graph

表2 调整追踪舵机PWN占空比的分段比例系数数组Tab.2 Section proportion coefficientarray valuesofad justing the tracking servo PWN duty ratio

表3 调整转向舵机PWN占空比的微分系数数组Tab.3 Differentialcoefficientarray valuesof ad justingthe steering engine PWN duty ratio

5 结论

采用飞思卡尔16位单片机MC9S12XS128为控制芯片,设计激光传感器循迹智能车系统,采用各模块单独供电模式,可避免各模块共用统一供电模块时的相互干扰;利用双排激光传感器阵列采集路径信息,通过分段比例系数法调整控制追踪舵机的PWM信号占空比,使上排激光传感器快速跟踪路径中央黑线;根据控制追踪舵机的PWM占空比值累积量与控制追踪舵机的PWM信号占空比值的变化率,采用PD算法控制智能车转向舵机的PWM占空比值;根据不同路段设定期望速度,由编码器实时采集当前速度与期望速度的偏差,运用增量式PID控制算法实时控制直流电机的PWM值进行调速,实现了在闭合的任意环形路径上智能车沿设定的黑线快速稳定地自主行驶。

[1]何兆祥,张翔,张请,等.新型智能化防追尾车载装置的研究[J].安徽工业大学学报:自然科学版,2012,29(4):365-370.

[2]罗强,徐文城,刘尧.基于激光传感器的智能车路径识别系统设计[J].电气自动化,2012,34(5):88-90.

[3]韩毅,杨天.基于红外传感器的智能寻迹赛车的设计与实现[J].计算机工程与设计,2009,30(11):2687-2690.

[4]王宜怀,曹金华.嵌入式系统设计实战[M].北京:北京航空航天大学,2011:257-265.

[5]祁志生,李启光,王潇.基于MC9S12DG128的寻线智能车系统设计[J].北京信息科技大学学报,2010,25(1):78-80.

[6]孙辉,张参参,史久根.竞赛用智能车的设计[J].安徽工业大学学报:自然科学版,2009,26(3):291-295.

[7]韩毅,杨天.基于红外传感器的智能寻迹赛车的设计与实现[J].计算机工程与设计,2009,30(11):2687-2690.

[8]吕建波.基于激光传感器的自主寻径智能车设计[J].现代电子技术,2012,35(13):146-148.

[9]翁卓,熊承义,李丹婷.基于光电传感器的智能车控制系统设计[J].计算机测量与控制,2010,18(8):1789-1791.

责任编辑:何莉

Design of Laser Sensor Tracking SmartCar System Based on MC9S12XS128 M icrocomputer

YU Hongying,YANG Jie
(Schoolof ElectricalEngineering,Wuhu Instituteof Technology,Wuhu 241003,China)

Tracking smartcar system is designed based on the control chip of system of Freescale MC9S12XS128 SCM.The single chipmicrocomputer(SCM)isused to collect the path information by two-row of laser sensor,gets position deviation information from the smartcar’s center line and the center lineof the path,controls tracking servo rotation tomake theupper lasersensors tracking path black guide-lineby using segmental ratio algorithm,and controls steering servo turning tomake the smartcar run along black guide-lineby using PD controlalgorithm.According to theanalysisof the path information and speed information from theencoder,the SCM realizesclosed-loop controlof theDC electricmotorspeed by using IncrementalPID algorithm.Theexperimental resultsshow that thesmartcar can realizeaccurate controlof servo and the smartcar’sspeed,track theblack guide-lineautomatically andmove forward follow ing the line quickly and smoothly to differentcurve path.

smartcar;single chipm icrocomputer;laser sensor;line-tracking

TP273

A

10.3969/j.issn.1671-7872.2014.02.016

1671-7872(2014)02-0177-06

2013-10-23

安徽省高等学校质量工程项目(2012sjjd048);安徽省高职高专电气自动化技术专业带头人(2009GZDTR93)

余红英(1965-),女,浙江淳安人,副教授,主要研究方向为检测技术。

猜你喜欢

发射管黑线循迹
基于DFT算法的电力巡检无人机循迹检测系统设计
黑线
航空火箭发射器平行度测试方法研究
车间滤棒发射管道在线清洗模式研究及应用
浅谈基于机器视觉和姿态检测的循迹智能车
火箭炮方形发射管流场仿真分析
虾背黑线真的特别“脏”吗
智能差分循迹小车设计
这也算海鲜
七巧数独