公交超载报警系统.docx
《公交超载报警系统.docx》由会员分享,可在线阅读,更多相关《公交超载报警系统.docx(18页珍藏版)》请在冰豆网上搜索。
公交超载报警系统
毕业学期顶岗实习工作报告
客车超载控制系统设计
论文作者:
徐董芳
指导教师:
曲昀卿
专业:
应用电子技术
系(院):
电子与电气工程系
答辩日期:
2014年06月06日
摘要
本文设计了一个客车超载监控系统,以AT89C51单片机为核心,利用反射式红外传感器、方向识别电路、报警电路、锁定电路设计,能够通过键盘手动设置乘客人数的上限值,并用LED显示器显示车内的实时乘客人数。
当客车内人数超载时,系统发出声光报警,并通过继电器切断客车的电子启动装置,从而将汽车锁定,使之无法行驶。
当超载解除后,声光报警也相应的解除,客车锁定解除,可以正常运行。
本设计共分两部分,硬件系统设计和软件系统设计。
硬件部分利用红外传感器和方向识别电路将乘客的上、下车情况进行检测和判断并输入单片机系统。
经过单片机系统将处理的数据送LED显示,声光报警电路由蜂鸣器和发光二极管组成,用继电器实现对客车启动装置的锁定。
软件部分用汇编语言进行编程,采用模块化设计思想。
该系统通过调试后,能够较好的完成客车超载的预警提示,并对超载情况进行相关控制。
关键词:
客车超载控制系统;红外线传感器;单片机
第1章绪论
1.1选题的意义
随着生活水平的不断提高,人们外出打工、探亲、旅游的人数越来越多,尤其是节假日,而与此相关的公路客运(长途客车,旅游客车等)的运力却没有相应增加,致使超员现象频频出现。
目前,它已成为一个严重影响交通运输环境和社会经济可持续发展的社会问题。
客车超载对国家的公路设施和客运市场造成了不良的影响,也影响车辆本身和车辆的驾驶、控制,容易引发事故,我们都知道车辆超载运输并且长期处于超负荷状态,就会导致车辆的制动装置和操作系统等安全性能迅速下降,表现为轮胎变形爆胎,刹车失灵,转向器轻飘抖动,钢板弹簧折断,半轴断裂等等。
而客车一旦发生事故,给国家和百姓带来重大的经济损失和感情伤害。
目前,国家虽然出台了一系列的政策法规来制止客车超载,各地政府也制定了相关的制度来对客车超载进行管理,在一定程度上减少了客车超载现象,但在节假日等客流高峰期,超载现象还是屡禁不止。
在采取行政监督管理的同时,通过科学技术的手段来消除客车超载的现象也有着极其重要的意义和实用性。
单片机作为微型计算机的一个很重要的分支,是将CPU、存储器、总线、I/O接线口电路集成在一片超大规模集成电路芯片上。
自问世以来,以其极高的性价比,受到人们的重视和关注,应用很广,发展也很快。
因此它广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:
(1)在智能仪器仪表上的应用
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
(2)在工业控制中的应用
单片机可以构成形式多样的控制系统、数据采集系统。
例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。
(3)在家用电器中的应用
现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、
空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。
(4)在计算机网络和通信领域中的应用
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话、集群移动通信、无线电对讲机等。
(5)单片机在医用设备领域中的应用
单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等。
因此单片机的出现应用于监测系统后,智能化的监测系统的模型也就基本具备了。
单片机以其兼容性强,软件、硬件应用设计资源资料丰富,以及极高的性能价格比受到人们的重视和关注。
单片机以及外围芯片的不断发展促进了超载、超量监测系统的发展。
以单片机为核心的智能监控系统以其体积小,抗干扰能力强,对环境的要求不高,价格低廉,可靠性高,开发较为容易,并可获得较高的经济效益等特点,很快占有了监控器领域的市场,所以其应用很广,发展很快。
因此本课题正是基于此点,采用单片机为核心的智能监控系统可以对客车内乘客人数的统计,并通过LED显示器实时显示。
当客车出现超载时,系统进行声光报警。
同时通过继电器关闭客车的启动装置来阻止超载客车的运行。
反之,当超载解除后,声光报警被解除,系统也相应解除对客车的锁定,客车可正常运行,从而达到了智能监控客车超载的要求,大大减少因超载而发生交通事故,使乘客的生命财产安全得到有效的保障。
1.2论文研究任务及目标
本课题主要任务是以AT89C51单片机为控制核心,能够自动检测车内乘客的人数并用LED即时显示,通过键盘设置超载人数的上限值,一旦客车超载时能进行声光报警,同时锁定客车的启动装置。
它的硬件电路部分主要包括检测电路(红外传感器和方向识别电路)、键盘电路、显示电路、控制电路和报警电路五大部分。
其中,主要研究内容为:
红外检测技术、运动方向识别电路、LED数码管的显示、单片机控制系统等。
该设计技术指标如下:
(1)能够完成车厢内人数的显示,并用LED即时显示
(2)超载人数的上限值可以通过键盘设置
(3)客车一旦超载时将发出声光报警信号,并关闭汽车的启动装置。
(4)光报警信号要实现1S闪烁功能,声音报警电路要产生1kHz音频信号驱动蜂鸣器完成。
1.3论文研究的主要内容
本文主要介绍了客车超载监控系统的软硬件设计思想、各功能的实现方法、相应的电路原理、以及各元器件性能型号的选择,内容主要分为三部分:
第一部分是硬件和软件的设计,包括硬件电路方案的设计、元器件的选择等,具体的硬件电路包括检测电路(传感器和方向识别电路),AT89C51单片机的最小系统电路、键盘输入电路、LED显示电路、声光报警电路、锁定电路等。
软件设计采用模块化的思想,逐步完善设计功能,初步绘制出电路图和程序的流程图。
第二部分是软、硬件仿真,程序采用汇编语言编写,通过Keil软件进行编译调试,硬件电路用protues软件绘制。
程序调好后,利用Keil软件生成单片机能识别的后缀为“.hex”的机器码文件,然后把程序下载到protues电路图中的单片机芯片,运行程序和protues电路(即protues和Keil的联调)来实现设计要求的各功能。
第三部分是在实验板上焊接硬件电路的各个模块,每一部分单独调试,在各个部分调试成功后,联调整个硬件电路,全部调通后用烧录器把程序烧到AT89C51单片机里,上电后一切运行正常,系统实现预期的目标。
第2章系统的整体结构
2.1系统的组成
本系统简单的来说由三个部分组成,前端的检测模块,单片机模块,控制模块。
系统的总体设计框架可见图2-1所示。
检测模块的主要功能是通过两组红外线发射接收对管来判断旅客上车的人数和下车的人数。
从而对客车上的人数进行统计。
而单片机系统主要是对乘客的人数分析处理,同时把分析的结果输出给控制模块以实现对它的控制。
LED显示模块用于对当前的车内乘客人数进行显示,当超载时通过扬声器报警,并通过继电器对客车执行锁定。
图2-1系统设计框图
2.2系统的原理
系统由两组红外线发射接收对管来实现对上车人员的检测。
两组红外线发射接收对管把收集到的信息传递给单片机系统,也就是本系统的中央处理单元,单片机系统实现对人数的加计数和减计数,并把这些信息转化为BCD码通过LED数码管显示出来。
同时单片机系统还通过比较指令和预先设定单元的内容比较,判断当前车内人数是否达到预定人数,如果当前车内人数小于预定人数,则继续对车内人数进行判断,如果当前车内人数大于预定人数,则启动扬声器报警电路,实现对人们的警告,如果在数分钟后人数还是大于预定人数则由继电器控制电路对汽车发电机进行锁定,如果人数减少到小于预定人数的数值时,则解除对汽车发动机的锁定,使汽车继续运行。
第3章系统硬件的设计
3.1系统硬件总体的组成
硬件电路的设计是整个系统设计的核心内容。
由系统的功能模块决定了本系统主要包括三个部分的设计:
检测模块的设计,单片机模块的设计,以及控制模块电路的设计。
3.2检测模块电路
该部分的设计采用两组红外线发射接收对管,安装在客车的车门处的适当位置,根据乘客经过车门时遮挡两个红外线发射接收对管发出的红外线的不同时序,通过单片机判断乘客是上车还是下车。
该部分的硬件电路设计总体电路图如图3-1所示。
图3-1检测电路模块
在图3-1的电路中,F1A~F4A是用CMOS集成的六反相放大器CD4069组成的放大滤波部分电路;ICA是CD4013构成的CMOS双D触发器,Y1A、Y2A是CD4081四个2输入端与门,这两部分与4069输出的两路传感器检测信号进行逻辑运算,最后在Y1A和Y2A的输出端输出合适的电平信号,分别送至AT89C51单片机的T0脚和T1脚(即计数器0和计数器1的时钟输入端)。
两个传感器的安装位置之间要有一定的距离(30cm~50cm之间),当无人经过传感器时(以下用E1和E2表示传感器),红外线二极管发出的红外线照射不到光电三极管上,送给单片机的信号一直是不变的低电平,系统不会计数。
当有人上车时,先遮挡住E1,则E1的红外线二级管发出的光照射在人身上,反射到受光三极管上,电路中的A1点产生一个高电平信号,经过放大滤波,逻辑运算最后在A3端输出一个低电平信号。
随后人体全部遮挡E1和E2,然后是离开E1遮挡住E2,最后离开。
由此类推在整个上车的过程中A3点的电平是高低变化的,即一个上车脉冲信号,送至单片机的STATUS寄存器进行加计数,而此时B3点的输出状态是不变的。
具体的检测方法和脉冲产生的时序如图3-2、图3-3所示。
图3-2人的走动方向
图3-3各点时序波图
同时人上车时各点逻辑关系如表3-1所示。
表3-1人上车时各点逻辑关系
传感器工作状态
A1
B1
A2
B2
A3
B3
1无人上车
0
0
0
0
0
0
2遮挡E1
1
0
1
0
0
0
3遮挡E1,E2
1
1
1
1
1
0
4遮挡E2
0
1
0
1
0
0
5人离去
0
0
0
0
0
0
当人下车的时候则是把这个遮挡的顺序反过来,B3点产生的脉冲时序是相反的,信号送至单片机的STATUS寄存器进行减计数,单片机即可通过程序模拟把车厢内的实际人数计算出来并寄存在寄存器中。
红外线传感器指能够发射红外线和接收红外线的器件。
红外线传感器根据其机理不同可以分为被动型红外线传感器和主动型传感器。
其中主动型红外线传感器,包括红外发射管和红外接收传感器,这两种传感器配套使用可组成一个完整的红外线检测、遥控系统,这类传感器也称光探测型感器本系统使用了其中的红外发射二极管和红外接收三极管来检测判断客车载客人数。
CD4013是CMOS双D触发器,内部集成了两个性能相同,引脚独立(电源共用)的D触发器,采用14引脚双列直插塑料封装,是目前设计开发电子电路的一种常用器件,它的使用相当灵活方便且易掌握,受到许多电子爱好者的喜爱。
CD4013的管脚排列如图3-4所示,内部有两个完全相同的D触发器FF1和FF2。
图中,D为数据输入端,CP为时钟脉冲输入端,Q和为Q一对互补的输出端,S为置位端,R为复位端,VDD和VCC分别为电源正负端。
图3-4CD4013管脚
CD4013的功能如表3-2所示,由表可见,当R=S=0时,在CP上升沿作用下,Q端状态与D端相同,即Qn+1=D,也就是将D端数据置入触发器。
当R=0、S=1时,Q=1;当R=1、S=0时,Q=o,称为直接置1和置0,无需CP和D的配合。
一般情况下不允许同时在R、S两端加上高电平,因为此时触发器的两个输出端为高电平,是不正常的工作状态。
表3-2CD4013的功能表
CP
D
R
S
Qn+1
↑
0
0
0
0
↓
1
0
0
1
↓
x
0
0
Qn
X
x
1
0
0
X
x
0
1
1
CD4013有四种基本方式,即数据锁存器,单稳态工作方式,无稳态工作方式和双稳态工作方式。
3.3单片机模块电路
单片机模块主要用来实现对上、下车人数的加、减计数。
单片机模块的设计中,考虑到系统中的程序量和数据量较少,需要的I/O资源也相对较少,AT2MEL公司的AT89C51芯片的资源就能很好的满足系统的需求,所以在系统设计中采用了MCS-51系列单片机AT89C51芯片的最小系统来实现。
我们选用ATMEL公司89系列的标准型单片机AT89C51,AT89C51是一种低功耗、高性能的8位单片机,片内带有一个4K字节的FLASH可编程可擦除只读存储器(EPROM),它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器(NURAM)技术,而且其输出引脚和指令系统都与MCS-51兼容。
另外,AT89C51还具有MCS-51系列单片机的所有优点。
128X8位内部RAM,32位双向输入输出线,两个十六位定时/计时器,5个中断源,两级中断优先级,一个全双工异步串行口及时钟发生器等。
片内的FLASH存储器允许在系统内改编程序或用常规的非易失性存储器来编程。
因此AT89C51是一种功能强、灵活性高且价格合理的单片机,它可方便地应用在各种控制领域。
AT89C51的主要性能有:
◇与MCS-51微控制器产品兼容;
◇4KB可改编程序FLASH存储器;
(可经受1,000次的写入/擦除周期)
◇全静态工作:
0Hz-24MHz;
◇三级存储器保密;
◇128x8字节内部RAM;
◇32条可编程I/O线;
◇2个16位定时器/计数器;
◇6个中断源;
◇可编程串行通道;
◇片内时钟振荡器;
◇空闲状态维持低功耗和掉电状态保存片内RAM中的内容。
AT89C51单片机为40引脚芯片如图3-5所示。
图3-5AT89C51引脚
1、I/0口线:
P0,P1,P2,P3共四个八位口
P0口是三态双向口,通称数据总线口.因为只有该口能直接用于对外部存储器的读/写操作。
P0口也用以输出外部存储器的低8位地址。
由于是分时输出.故应在外部加锁存器将此地址数据锁存,地址锁存信号用ALE。
P1口是专门供用户使用的I/O口.是准双向口。
P2口是从系统扩展时作高8位地址线用。
不扩展外部存储器时,P口也可以作为用户I/O口线使用,P2口也是准双向口。
P3口是双功能口,该口的每一位均可独立地定义为第一I/O功能或第二I/O功能。
作为第一功能使用时操作同P1口。
P3口的第二功能如表3-3。
表3-3P3口的第二功能
第一功能标记第二功能
P3.0BXD串行输入口
P3.1TXD串行输出口
P3.2INTO外部中断0输入
P3.3INT1外部中断1输入
P3.4T0定时/计数器0外部输入
P3.5T1定时/计数器1外部输入
P3.6WD外部数据存储器写选通
P3.7RD外部数据存储器读选通
2、控制口线:
PSFN(片外取控制)、ALE(地址锁存控制)、EA(片外储器选择)、RF-SFT(复位控制)。
3、电源及时钟:
Ccc、Vss;XTAL1,XTAL2
本文选用如此高性能的单片机方便了以后的功能扩展,基本电路如图3-6所示。
图3-6单片机基本电路
3.4控制模块电路
3.4.1数码管显示电路设计
在数码管显示电路设计中,将待显示数据转换为BCD码输出,经过共阴极数码管译码驱动器74LS48将BCD码转换成七段码送给数码管显示。
显示电路如图3-7所示。
74LS48为3~8线的译码器,译码器输入端A,B,C分别接AT89C51的P1.0,P1.1,P1.2,译码器输出端Y0~Y7接8个数码管从低位到高位的共阴极端。
图3-7显示电路
电路中要显示的数字通过串行口P1送到74LS48,经过他的翻译,把单片机是送过来的BCD码,转换成高低电平,通过Y0~Y7送给LED显示器,不同的电平会有顺序的控制七个数码管的灭与亮,进而显示出不同的数字,当检测电路检测到有5个人上车时,单片机会给第一个74LS48送去一个显示0的数据,同时给第二74LS48送去一个显示5的数据,这样总体显示为“05”的字样,当检测到有16个人上车时,单片机给第一个74LS48送去显示1的数据,同时给第二送去显示6的数据,这样总体显示”16”的字样.
所有的LED显示器都是将多个发光二极管组合而成。
段式LED显示器应用最广泛,它是一种低成本,高可靠性,高稳定性的显示器,而且亮度也比较高,使用寿命长;点阵LED显示器作为户外文字广告和信息牌被广泛使用。
LED显示器的缺点是消耗功率大,容易发热,体积相对较大。
LED显示器都是由若干LED组合而成的,当某一个LED导通时,该LED表示的点或段被点亮,单片机控制多个不同的点或段的亮或灭,可以显示出不同的数码或字符。
常用段式LED显示器包括“七段”结构LED显示器和“米字”机构LED显示器。
它们都有共阴极和共阳极两种结构,其中共阴极
LED显示器内部所有发光二极管的阴极连在一起,而所有发光二极管的阳极各自独立,共阳极LED显示器内部发光二极管的阳极连接在一起,而所有发光二极管的阴极各自独立。
段式LED显示器的控制方式分为静态显示控制和动态显示控制两种。
所谓“静态显示控制”,就是当一个LED显示器显示某字符时,控制码控制相应的LED段处于恒定的导通状态,静态显示控制在电路上需要将控制码锁存在LED显示器的各段输入引脚,如果有多位LED显示器,每个位必需一个8位的锁存器,AT89c51单片机仅在需要更改显示器的显示内容时,才重新将新的控制码锁存在8位锁存器中。
静态显示控制的LED显示器的亮度与各段的导通电流大小有关,静态控制的显示时非常稳定的。
所谓“动态显示控制”,就是多位显示器逐个扫描,任意时刻仅有某个显示器是亮的,而其他各位都不亮,一个位亮一定时间后转向另一个位。
这种动态逐个扫描多位LED显示器的方式会造成显示位的“闪烁”,但是,适当地调整扫描速度,利用人的视觉暂留,使人的眼睛看起来“不闪烁”。
动态扫描LED显示器方式比静态显示控制方式的电路更简单,将多位LED显示器的段引脚对应连接成“段”总线,仅需要一个8位锁存器和多个位选通控制线就可以达到控制多位LED显示器的目的。
动态扫描LED显示器的亮度与各段的导通电流有关,另外,亮度还与扫描频率有关。
3.4.2报警电路设计
在报警电路中,由单片机传送过来的报警信号通过一个功率放大器来驱动扬声器,其总体设计框架如图3-8所示。
图3-8报警电路框图
当单片机系统判断出车上的人员数量超出规定时,将通过p1.0口输出1KHz的音频信号驱动扬声器,作报警信号,本电路中使用了音频放大集成芯片LM386。
电路如图3-9所示。
图3-9报警电路
LM386是专为低损耗电源所设计的功率放大器。
它的内建增益为20,透过pin1和pin8脚位间电容的搭配,增益最高可达200。
LM386可使用电池为供应电源,输入电压范围可由4V~12V,无动作时仅消耗4mA电流,且失真低。
LM386的接脚图及内部方块图如图3-10、图3-11所示。
图3-10接脚图
图3-11内部方块图
3.4.3继电器控制电路设计
对汽车的锁定部分通过在点火线路中加一继电器控制开关来实现。
当打开启动开关(即点火开关)时,由于P1.5口处于低电平,所以继电器不动作,对汽车正常工作没有影响。
当单片机判断出车上人员数量超出规定时,将通过P1.5口输出一高电平,继电器工作,从而使点火线路断开,无法启动。
当车内人数恢复到预定人数以下时,单片机系统再次送低电平到P1.5,继电器又恢复到原来的状态,汽车又可以正常的启动,从而有效地限制了客车的超载行为。
继电器电路中一般都要在继电器的线圈两头加一个二极管以吸收继电器线圈断电时产生的反电势,防止干扰。
第4章系统软件的设计
4.1系统软件的整体设计
按照整体方案的设计思想,系统程序框图如图4-1所示。
首先初始化系统,包括设置堆栈指针、设置定时器计数初值、设置定时器工作方式、设置中断允许控制。
将通用寄存器清零,用来存放车内当前的乘客人数,其中一个单元存放预定客车能乘载的最大乘客数,然后将寄存器中存放的当前车内乘客数放入累加器中,通过比较指令和单元的内容比较,判断当前车内人数是否达到预定人数,如果当前车内人数小于预定人数,则继续对车内人数进行判断,如果当前车内人数大于预定人数,则跳转到报警指令,使扬声器报警,同时使继电器动作,断开汽车电子点火器。
图4-1程序框图
程序还实现了对车内人数的实时显示。
对当前车内人数进行循环判断,当车内人数小于预定人数时,要随时清除报警程序,使继电器的常闭触头闭合,以便汽车能再次正常启动。
在显示子程序中,主要实现的是将外部中断所产生的计数值,,由十六进制转换为8位BCD码,然后进行显示。
4.2计数功能程序设计
该部分程序的主要功能是将传感器检测到的两路上下车信号送到AT98C51单片机的STATUS寄存器以进行加减计数,将实时的数据和预置在W寄存器的上限人数(40人)循环不间断地进行查询比较,一旦等于40则产生报警信号进行报警,大于40则执行发动机锁定电路程序。
4.3LED显示电路的程序设计
该部分程序的主要功能是对单片机的显示控制位进行查询并查表,使数码管的高位和低位能不断的刷新,达到实时显示客车上人数的目的。
4.4报警电路程序设计
该部分的主要功能是不断的查询单片机的报警控制位,一旦有高电平输出,通过LM386驱动扬声器对客车司机进行报警提示,以便及时限制超载。
第5章调试故障及原因分析
本节对在智能客车超载监测系统的设计中,所遇到的故障和调试方面出现的问题作一概要的叙述。
1、焊接错误
在实际焊接硬件电路的过程中,由于线路较多,出现了交叉混接现象,导致部分电路短路;还有漏焊现象,如焊完蜂鸣器报警电路时发现三极管的发射极没有接地,导致报警时没有声音。
2、器件选择不当
P0口的上拉电阻选择过大,致使LED数码管的亮度不够,重新更换电阻后LED亮度增强。
报警电路中,蜂鸣器的控制端没加反相器,驱动能力不够,直接用单片机的端口控制三极管的导通和截止,效果不好致使报警声音微弱。
加上反相器,重新更正程序后,蜂鸣器正常报警
3、调试方法及软件修改
整体调试时显示器不工作,全部显示88,而且闪烁现象严重,经检查原因有几处:
(1)由于继电器的选择型号不对,导致继电器的触头不动作,不能完成锁定汽车电子打火装置。
经改正后,继电器可以正常工作。
(2)在软件调试时发现,LED显示不稳定,原因是在显示程序中的延时子程序时间不合适,在对延时程序进行相应的修该后,数码显示清晰稳定,满足观察的要求。
结论
论文设计的优点是采用了红外线发射接收器这一经济实惠的检测器件,并用双D触发器组成的互锁电路来有效的防治外界的干扰,同时系统以AT89C51单片机为微控制器为核心,由检测电路,显示电路,报警电路,控制电路和系统软件构成,本文主要完成的工作有:
(1)用红外线检测上下车的人数。
(2)信号的检测进行了最优的设计使