基于STC89C52的自动驾驶公交车系统设计

2015-12-16 10:50严顺枝
电子测试 2015年21期
关键词:循迹子程序小车

严顺枝

(衡水职业技术学院,河北衡水,053000)

基于STC89C52的自动驾驶公交车系统设计

严顺枝

(衡水职业技术学院,河北衡水,053000)

介绍了一种以STC89C52单片机为控制核心的无人驾驶公交系统的设计.本设计由电机驱动模块、超声波测距模块、循迹模块、红外和语音模块组成,拟实现一个无人驾驶公交车系统.通过C语言编程实现小车的前进倒退、转向行驶、自动循迹导航、超声波测距并根据检测障碍物距离调整速度、红外遥控定点播报功能,以实现智能控制,达到设计目标.

无人驾驶公交系统;超声波;红外;循迹

自动驾驶汽车,又称为无人驾驶汽车,是一种透过微处理系统实现无人驾驶的智能式的汽车。自动驾驶汽车依靠人工智能、视觉计算、雷达和监控装置协同合作,让微处理器可以在没有任何人类主动的操作下,自动安全地操作机动车辆。现时自动驾驶技术正在研究及测试中,还没有批准作商业营业或私人使用。公交系统运行路线专用,停靠点固定,可优先考虑使用。本文介绍了一种以STC89C52单片机为控制核心的无人驾驶公交系统的设计方案,详细地介绍了系统的硬件电路和软件的设计,该系统电路结构简单、功耗低、性价比高,稳定性高,具有一定实际应用价值。

1 系统总体设计方案

本无人驾驶公交系统使用STC89C52单片机作为主控芯片,利用红外光电传感器对地面的黑色轨迹进行检测从而实现自动循迹,并且小车通过超声波测距来获取小车与障碍物的距离,通过距离的判断与比较以达到避障的目的.在小车与障碍物的距离小于安全距离时,小车会自动减速前行;如果小车与障碍物的距离小于危险距离时,小车会停止行驶进行等待,直至前方障碍物移除后小车才恢复正常行驶状态.当小车行驶到固定的站点时,通过接收站点的红外信号,小车会自动语音播报提示并停车等待几分钟,之后小车继续正常行驶,依此运行方式循环行驶.本智能小车系统由以下几个模块组成:单片机控制模块、超声波测距避障模块、自动循迹模块、电机驱动模块、红外接收以及语音播报模块.系统总体组成框图如图1所示.

图1 系统总体组成框图

2 系统硬件电路设计

2.1 单片机最小系统模块

本设计单片机最小系统模块包括主控制芯片STC89C52,晶振电路和复位电路.晶振电路由一个12.000MHz的晶振和两个30pF的起振电容组成,复位电路由电容和电阻组成,当复位键按下时,复位引脚上电复位.

2.2 光电传感器循迹模块

小车在沿着规定的轨迹行驶时,轨迹可能会有弯曲或小车有偏离轨道现象.为使小车能在轨迹上正常行驶,小车需要在偏离跑道时实时地进行调整,因此系统需要将路面的循迹状态及时的反馈到控制部分,控制部分通过判断执行相应指令,使小车重新回到轨迹上来.

在本设计中采用了两个光电传感器,分别置于小车的两侧.当小车偏离轨迹时,其中一侧的光电传感器的信号将被黑色轨迹吸收而无法返回,此时光电传感器输出高电平信号,信号经过处理后传递给单片机,单片机接收到信号后会调整左右电机的转动,使小车回到轨迹上来,此时传感器回到白色区域输出为低电平,左右电机同时转动,小车直线前进.检测电路如图2所示,当发射管的红外信号经反射被接收管接收后,接收管内部将会导通,在电路上一般以电压的变化形式体现出来,而经过LM324运算放大器电路处理后,输出的高低电平信号传递给单片机.接收管内部导通的强弱取决于接收管所接收的红外信号强度,常表现在反射面的颜色和反射面与接收管的距离两方面.

图2 检测电路

图3 电机驱动电路

图4 超声波发射电路原理图

2.3 电机驱动模块

电机驱动电路分为左轮与右轮两部分,本设计采用电机驱动芯片L298N驱动左右电机,其电路如图3所示.2、3脚驱动左轮,13、14脚驱动右轮.IN1、IN2控制左轮转动方向,IN3、IN4控制左右轮的转动方向,IN1(IN3)为高电平、IN2(IN4)为低电平时,电机正转;IN1(IN3)为低电平、IN2(IN4)为高电平时,电机反转;其余状态时电机停止转动.电路采用PWM调节小车速度,通过单片机输出PWM信号到L298N电路的使能端来控制小车的速度,启停.

2.4 超声波测距模块

超声波传感器测距原理:首先利用单片机输出一个长约6mm,频率为40kHz的触发信号,触发信号经过驱动电路CD4069进行调理,如图4所示,以使超声波传感器产生谐振,然后由超声波测距模块的发射器向某一方向发射超声波.在发射超声波的同时单片机通过软件开始计时,超声波沿发射方向在空气中传播,当途中碰到障碍物时返回,超声波测距模块的接收器收到反射波后,便通过CX20106进行前置放大、限幅放大、带通滤波、峰值检波和比较、积分及施密特触发比较得到解调处理后的信号,通过输出反馈给单片机,此时单片机立即停止计时.由于超声波在空气中的传播速度v=340m/s,根据计时器记录的时间t,就可以计算出发射点与障碍物的距离,即:s=v*t /2,通过单片机来算出距离以达到避障的目的.

2.5 红外信号模块设计

红外信号模块是对各个公交站点的识别,每个站点与每个站点之间发送不同的红外信号,单片机通过对接收的红外信号进行识别解码后,执行相应的指令.

(1)红外发射模块设计

PT2262工作原理:PT2262最多可有12位(A0~A11)三态地址端管脚(悬空、接高电平、接低电平)任意组合可提供531441种地址码.最多可以有6位(D0~D5)数据位,设定的地址码和数据码与同步码组成数据帧以串行数据方式输出,通过无线传送后,在解码芯片的数据端取出.

发射电路由PT2262编码器和红外发射元件IRED组成.触发电路采用555振荡电路,连续间断性触发传送红外信号.当电路触发PT2262上电时,设定的地址码和数据码与固定的同步码组成一组编码从17脚串行输出,经过红外发射元件IRED将信号发出.振荡电阻Rosc用来调节编码发射频率,适当调高电路工作电源VCC可以增大发射距离.其中12位编码可设置为高电平、低电平、悬空三种状态,因此可以发送531 441种编码组合,可以满足各种智能控制和低速、少数据量、短距离数据通信.

图5 红外接收电路原理图

(2)红外接收模块设计

红外信号接收装置采用集红外线接收、放大、整形于一体的红外接收器1838,无需任何外接元件,就能完成从红外线接收到输出与TTL 电平信号兼容的所有工作,故适用于各种红外线遥控和红外线数据传输.接收信号被送至I/O 端口P3.2后,通过外部中断方式进行软件解码.红外接收电路原理图如图5所示.

3 系统软件设计

本系统软件设计在Keil 4软件环境下对单片机进行编程与调试,以实现各项检测与控制功能.主程序起到一个导向和决策功能,决定小车如何行驶.小车各种功能的实现主要通过调用具体子程序来实现的.

本系统软件设计采用模块化结构,由主程序、各模块及中断初始化程序、延时子程序、电机驱动子程序、中断子程序、循迹检测子程序、调速子程序、超声波测距子程序、红外解码子程序、语音播报子程序构成。

其中:超声波测距模块子程序完成对前方障碍物与小车之间的距离的检测,将数值反馈给主程序,然后程序对距离进行判断比较以实现避障的目的;循迹检测模块子程序完成对地面轨迹的检测任务,以实现小车的自动循迹功能;遥控中断服务子程序完成对遥控信号产生的外部中断进行处理,对不同的遥控信号产生相应的控制信号;语音播报子程序完成对语音储存、调用与录放工作.

4 结论

本无人驾驶公交系统系统选择比较常见廉价的STC89C52单片机为控制核心,采用C语言在Keil环境下进行编程及仿真工作.本系统经过详细设计,代码编译仿真等,模拟实现了一个集自动循迹、避障、报站等功能于一体的简单无人驾驶公交车报站系统.该系统电路结构简单、功耗低、稳定性高,具有一定实际应用价值.

[1] 谭锦荣,余耀堂.一种远程维护自动公交报站器的设计[J].客车技术与研究,2013,(2):34 - 36.

[2] 李鸿胜,孙国玺.一种公交车自动报站器设计方案[J].微处理机,2013,(2):88 - 91.

[3] 陈静.STC12C5A08S2单片机智能小车控制系统设计[J].阴山学刊,2011,25(4):40-43.

Design according to the automatic driver bus system of STC89 C52

Yan Shunzhi
(Hengshui College of Vocational Technology,Hebei Hengshui,053000)

Introduce a kind of with STC89 C52 list slice machine for control core of unmanned driver male hand over the design of system.this design is driven mold piece,super voice wave by the electrical engineering to measure to be apart from a mold piece and follow the vestige mold piece,red outside and speech mold piece to constitute and draw up to carry out an unmanned driver bus system.pass the headway backset that the C language plait distance carries out a small car,change direction to drive, automatically follow a vestige to navigate,the super voice wave measure and be apart from combine according to examination stumbling block distance adjust speed,red outside control from a distance the fixed-point report function with carry out an intelligence control,attain a design target.

Unmanned driver Mr.hands over system;Super voice wave;Red outside;Follow a vestige

严顺枝(1967-),男,河北武强人,衡水职业技术学院机电工程系副教授,研究方向:应用电子技术。

猜你喜欢
循迹子程序小车
基于DFT算法的电力巡检无人机循迹检测系统设计
大车拉小车
自制小车来比赛
浅谈基于机器视觉和姿态检测的循迹智能车
刘老师想开小车
两轮自平衡小车的设计与实现
智能差分循迹小车设计
浅谈子程序在数控车编程中的应用
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序