基于51单片机的倒车雷达系统设计
2017-05-13晁松杰尤喜
晁松杰++尤喜
摘要:倒车雷达是汽车泊车安全辅助装置,可以帮助驾驶员扫除视野死角和视线模糊的缺陷,提高驾驶的安全性。本设计以STC89C51RC单片机为核心,利用超声波测算倒车距离,超声波信号经单片机综合分析处理,实现超声波测距仪的各种功能。该系统设计抗干扰能力较好,实时性良好,可以有效地解决汽车倒车问题。
关键词:倒车雷达;单片机;超声波测距
随着科学技术的不断发展,人们生活水平的日益提高,城市功能不断丰富健全,城市交通系统也有了较大发展,其状况也不断改善。但是随着汽车普及率的增加,交通事故的数量也在逐年增长,其中以倒车引起的事故数量居多。驾驶员在拥挤和狭窄的街道上倒车,稍不小心就会发生追尾事故。因此,增加汽车的后视能力,研制无接触式测量汽车后部障碍物距离的倒车雷达系统成为研究热点。设计出好的倒车雷达系统,对于减少城市的车辆拥堵和交通事故将有一个很好的控制作用。当然这要求倒车雷达系统应该具有精度高,抗干扰强,价格低廉,适宜推广等特点,这样基于超声波的测距系统,完全可以胜任此任务。
一、系统硬件设计
该系统由STC89C51RC单片机、超声波发射电路、超声波接收电路、环境温度采集电路、显示电路、报警电路等组成。其系统第一层是超声波发射电路,其次是超声波接收电路,第三层是环境温度采集部分,最后是数字显示和声音报警电路。驾驶员将手柄转到倒车档后,系统自动启动,超声波模块(发射模式)向后发射40kHz的超声波信号,经车后面障碍物反射,由超声波模块(接收模式)收集,进行放大和比较,单片机STC89C51RC将此信号送入显示模块,同时触发报警电路,发出报警声音提示,并根据与障碍物距离的不同,发出不同的报警声,提醒驾驶员注意车距。
(一)超声波收发模块
本系统采用超声波专用集成电路LM1812作为超声波发射和接收电路的主控芯片。LM1812是一种通用型超声波收发器,主要用在各种各样的测距、定向和通信中。芯片包括一个脉冲调制C类发射器,一个高增益接收器,一个脉冲调制检测器及噪音抑制电路。LM1812第1脚外接L1,C1决定了电路发送或接收的工作频率,其工作频率为:
改变电感L1,电容C1的值可以改变振荡频率(本系统中f0为40 kHz),最高可达325 kHz。当LM1812的8脚为高电平时,LM1812处于发射模式;当8脚为低电平时,LM1812处于接收模式。值得注意的是,单片机到LM1812的连接要进行5~12 V的电平转换。当LM1812处于发射模式时,L1,C1振荡槽路被切换为振荡模式,振荡信号经驱动放大后,由13脚及6脚输出。6,13脚之间所接变压器线圈的匝数比是根据TCF40-25TR1型收发一体式超声波传感器的阻抗来确定的。实验证明,变压器线圈的匝数比大约为4:1时可实现与超声波发送器阻抗相匹配。超声波接收器接收到的超声波信号经电容耦合由4脚输入,再经内部两级放大后同由1脚的谐振回路取出的信号一起送到检测器。当检测到超声波回波信号时,LM1812的14脚(与单片机的INT0端相连)变为低电平,使单片机的T0计数器停止计数。
(二)测温模块
测温电路采用了美国DALLAS半导体公司的DS18B20单总线型数字温度传感器。DS18B20集温度测量、A/D转换于一体,具有体积小、动态范围宽、测量精度高等优点。DS18B20采用单总线方式和STC89C51RC单片机相连,即DS18B20的1脚接地,3脚接地,2脚接至STC89C51RC的P11引脚,同时将P11引脚采用一只4.7kΩ的电阻上拉至VCC。测得的温度值以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1,2字节,单片机通过单总线接口读到该数据后,即可通過计算得到实时环境温度值。
(三)显示模块
设计一个按键实现显示功能切换,可以实现距离和温度显示的数字切换。通过单片机的21、22、23、24四个管脚的信号控制四个三极管的B极,利用三极管的开关特性,实现数码管的点亮,从而实现动态显示。采用LED动态显示,数据经过芯片的计算后传到LED上,由单片机P0.0—P0.6接LED的a~g七个笔段,单片机的P0.7口接LED的dp段,P2.0~P2.3接四个8550三极管的公共端,通过软件以动态扫描方式显示。段码用74LS04驱动,位码用PNP三极管8550驱动。
(四)报警模块
当距离达到我们设置的报警条件时,可以使用蜂鸣器进行报警。报警功放电路由频率发生电路和功放组成,频率发生电路类似超声波发射电路的振荡电路,调节频率在800Hz左右即可,功放电路选用常用的LM386即可。P2.4接CD4011的一个输入口,根据距离远近对应控制鸣叫间歇的开始与停止,用声音提示驾驶员距离。
二、软件系统设计
超声波测距的软件程序设计主要由主程序、超声波发射控制程序、超声波接收控制程序及显示子程序、报警子程序组成。超声波测距的程序既有较复杂的计算(计算距离时),又要求精细计算程序运行时间(超声波测距时),所以控制程序可采用C语言编程。
主程序首先是对系统环境初始化,设定时器0为计数,设定时器1定时。置位总中断允许位EA。进行程序主程序后,进行定时测距判断,当测距标志位ec=1时,测量一次,程序设计中,超声波测距频度是4-5次/秒。测距间隔中,整个程序主要进行循环显示测量结果。当调用超声波测距子程序后,首先置单片机P1.0脚为低电平,使LM1812的8脚为高电平,处于发射模式,立即启动内部计时器T0进行计时,为了避免超声波从发射头直接传送到接收头引起的直射波触发,这时,单片机需要延时约1.5-2ms时间(这也就是超声波测距仪会有一个最小可测距离的原因,称之为盲区值)后,才启动对单片机P3.2脚的电平判断程序。当检测到LM1812的14脚(P3.2脚)的电平由高转为低电平时,立即停止T0计时。由于采用单片机采用的是12MHz的晶振,计时器每计一个数就是1μs,当超声波测距子程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)计算,即可得被测物体与测距仪之间的距离。
为增强抗干扰能力,系统连续发射超声波测量四次,从中剔除最大最小值,求两次平均值计算出精确的距离。这样每秒可测约四个数据,仍然可以满足实时性要求。
三、总结及改进
本文设计的倒车雷达超声波发射和接收电路选用专用集成芯片,简化了系统设计,方便了电路调试,也使得使系统抗干扰能力增强,该设计在实验室条件进行了测试,经过简单调试就正常稳定工作,实现了设计目标。另外,电路元件要选用低噪声器件,采取合理的电路布局,良好的印刷板走线,并注意进行屏蔽。
参考文献:
[1]冯炳晓. 倒车雷达工作原理分析及常见故障诊断[J]. 汽车维修技师,2017,(01):44-46.
[2]刘晓雪,赵宝平. 浅析汽车倒车雷达改装[J]. 汽车维修,2017,(02):6-8.
[3]徐锋,史文艳. 自动泊车系统专利布局与发展趋势[J]. 中国发明与专利,2017,(01):61-68.
作者简介:晁松杰(1986.4- ),男,河南漯河人,助教,研究方向:电学,电子信息。