智能客车超载监控系统的设计 - 图文

更新时间:2024-07-10 00:41:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于单片机的客车超载监控系统的设计

2010年6月

摘 要

本文设计了一个客车超载监控系统,以MCS-51单片机为核心,利用反射式红外传感器、方向识别电路、报警电路、锁定电路设计,能够通过键盘手动设置乘客人数的上限值,并用LED显示器显示车内的实时乘客人数。当客车内人数超载时,系统发出声光报警,并通过继电器切断客车的电子启动装置,从而将汽车锁定,使之无法行驶。当超载解除后,声光报警也相应的解除,客车锁定解除,可以正常运行。

本设计共分两部分,硬件系统设计和软件系统设计。硬件部分利用红外传感器和方向识别电路将乘客的上、下车情况进行检测和判断并输入单片机系统。经过单片机系统将处理的数据送LED显示,声光报警电路由蜂鸣器和发光二极管组成,用继电器实现对客车启动装置的锁定。软件部分用汇编语言进行编程,采用模块化设计思想。该系统通过调试后,能够较好的完成客车超载的预警提示,并对超载情况进行相关控制。

关键词:客车;超载;监控;单片机

I

Abstract

This paper illustrates the design of a carriage overload monitoring systerm.MCS-51 MCU as core is used to design hardware circuit and software.In this subject we use infrared sensors,identify circuit and alarmcircuit latch circuit to design a carriage overload monitoring systerm that enables the keyboard to manually set limits on the number of passengers and can use LED at the same time to display the number of passengers inside.If the passenger overloading,the sound and light alarm systerm cuts off the bus through the electronic launch devices.By doing this,the overload monitoring systerm can lock the car,so that the car can’t be started.When the overload is canceled,the sound and light warning is canceled. The bus is also unlocked and can be operated normally.

The design is divided into two parts,hardware systerm design and software systerm design.The hardware systerms part uses infrated sensors and identify circuit to detect and judge the situation whether the passengers are getting on or off the bus.This systerm can display the number of passengers on LED. The sound and light alarm circuit is composed of buzzer and LEDs,the lock function of the bus’s launch devices achieves by using the relay unit.Assemble language is used in the software system and modularization design idea is adopted.The monitor system can complete an alarm beforehand for overload, meanwhile the mut uality cont rol will be adopted.

Key words: carriage;overloading;monitoring; SCM(single chip micro computer)

II

目 录

第1章 绪论 ......................................................................................................................... 1 1.1立题的意义 ................................................................................................................. 1 1.2课题研究任务及目标 ................................................................................................. 3 1.3课题主要内容 ............................................................................................................. 3 第2章 客车超载监控系统的方案论证 ............................................................................. 5 2.1系统的原理 ................................................................................................................. 5 2.2系统的组成 ................................................................................................................. 5 第3章 客车超载监控系统的硬件设计 ............................................................................. 8 3.1客车超载监控系统的检测电路 ................................................................................. 8 3.1.1传感器的选择 ....................................................................................................... 8 3.1.2反射式红外传感器检测原理 ............................................................................... 9 3.1.3方向识别电路的设计 ......................................................................................... 10 3.2单片机最小系统的设计 ........................................................................................... 13 3.2.1单片机的选择 ..................................................................................................... 13 3.2.2单片机外围电路的设计 ..................................................................................... 15 3.3显示电路的设计 ....................................................................................................... 17 3.4键盘电路的设计 ....................................................................................................... 19 3.5报警电路的设计 ....................................................................................................... 21 3.6客车锁定电路的设计 ............................................................................................... 21 第4章 客车超载监控系统的软件设计 ........................................................................... 23

III

4.1客车超载监控系统的软件设计方案 ....................................................................... 23 4.2 T0、T1中断计数程序的设计 ................................................................................. 25 4.3按键子程序的设计 ................................................................................................... 26 4.4报警与锁定子程序的设计 ....................................................................................... 27 4.5显示子程序的设计 ................................................................................................... 28 第5章 系统调试与分析 ................................................................................................... 30 5.1系统的硬件调试 ....................................................................................................... 30 5.2系统的软件调试 ....................................................................................................... 31 5.3调试故障及原因分析 ............................................................................................... 31 结论 ..................................................................................................................................... 34 社会经济效益分析 ............................................................................................................. 35 致 谢 ................................................................................................................................. 36 参考文献 ............................................................................................................................. 37 附录I 客车超载监控系统硬件系统原理图 .................................................................... 38 附录Ⅱ 客车超载监控系统程序清单 ............................................................................... 39 附录III 客车超载监控系统硬件实物图 .......................................................................... 45 附录IV 客车超载监控系统元器件清单 ......................................................................... 46

IV

第1章 绪论

1.1立题的意义

随着生活水平的不断提高,人们外出打工、探亲、旅游的人数越来越多,尤其是节假日,而与此相关的公路客运(长途客车,旅游客车等)的运力却没有相应增加,致使超员现象频频出现。目前,它已成为一个严重影响交通运输环境和社会经济可持续发展的社会问题。客车超载对国家的公路设施和客运市场造成了不良的影响,也影响车辆本身和车辆的驾驶、控制,容易引发事故,我们都知道车辆超载运输并且长期处于超负荷状态,就会导致车辆的制动装置和操作系统等安全性能迅速下降,表现为轮胎变形爆胎,刹车失灵,转向器轻飘抖动,钢板弹簧折断,半轴断裂等等。而客车一旦发生事故,给国家和百姓带来重大的经济损失和感情伤害。

目前,国家虽然出台了一系列的政策法规来制止客车超载,各地政府也制定了相关的制度来对客车超载进行管理,在一定程度上减少了客车超载现象,但在节假日等客流高峰期,超载现象还是屡禁不止。在采取行政监督管理的同时,通过科学技术的手段来消除客车超载的现象也有着极其重要的意义和实用性。

单片机作为微型计算机的一个很重要的分支,是将CPU、存储器、总线、I/O接线口电路集成在一片超大规模集成电路芯片上。自问世以来,以其极高的性价比,受到人们的重视和关注,应用很广,发展也很快。因此它广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:

(1)在智能仪器仪表上的应用

单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。

1

(2)在工业控制中的应用

单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。

(3)在家用电器中的应用

现在的家用电器基本上都采用了单片机控制,从电饭褒、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。

(4)在计算机网络和通信领域中的应用

现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机、电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话、集群移动通信、无线电对讲机等。

(5)单片机在医用设备领域中的应用

单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等。

因此单片机的出现应用于监测系统后,智能化的监测系统的模型也就基本具备了。单片机以其兼容性强,软件、硬件应用设计资源资料丰富,以及极高的性能价格比受到人们的重视和关注。单片机以及外围芯片的不断发展促进了超载、超量监测系统的发展。以单片机为核心的智能监控系统以其体积小,抗干扰能力强,对环境的要求不高,价格低廉,可靠性高,开发较为容易,并可获得较高的经济效益等特点,很快占有了监控器领域的市场,所以其应用很广,发展很快。

因此本课题正是基于此点,采用单片机为核心的智能监控系统可以对客车内乘客人数的统计,并通过LED显示器实时显示。当客车出现超载时,系统进行声光报警。同时通过继电器关闭客车的启动装置来阻止超载客车的运行。反之,当超载解除后,声光报警被解除,系统也相应解除对客车的锁定,客车可正常运

2

行,从而达到了智能监控客车超载的要求,大大减少因超载而发生交通事故,使乘客的生命财产安全得到有效的保障。

1.2课题研究任务及目标

本课题主要任务是以MCS-51单片机为控制核心,能够自动检测车内乘客的人数并用LED即时显示,通过键盘设置超载人数的上限值,一旦客车超载时能进行声光报警,同时锁定客车的启动装置。它的硬件电路部分主要包括检测电路(红外传感器和方向识别电路)、键盘电路、显示电路、控制电路和报警电路五大部分。其中,主要研究内容为:红外检测技术、运动方向识别电路、LED数码管的显示、单片机控制系统等。

该设计技术指标如下:

(1)能够完成车厢内人数的显示,并用LED即时显示 (2)超载人数的上限值可以通过键盘设置(默认人数为30) (3)客车一旦超载时将发出声光报警信号,并关闭汽车的启动装置。

(4)光报警信号要实现1S闪烁功能,声音报警电路要产生1kHz音频信号驱动蜂鸣器完成。

1.3课题主要内容

本文主要介绍了客车超载监控系统的软硬件设计思想、各功能的实现方法、相应的电路原理、以及各元器件性能型号的选择,内容主要分为三部分:

第一部分是硬件和软件的设计,包括硬件电路方案的设计、元器件的选择等,具体的硬件电路包括检测电路(传感器和方向识别电路),AT89C51单片机的最小系统电路、键盘输入电路、LED显示电路、声光报警电路、锁定电路等。软件设计采用模块化的思想,逐步完善设计功能,初步绘制出电路图和程序的流程图。

第二部分是软、硬件仿真,程序采用汇编语言编写,通过Keil软件进行编译调试,硬件电路用protues软件绘制。程序调好后,利用Keil软件生成单片机能识别的后缀为“.hex”的机器码文件,然后把程序下载到protues电路图中的单片机芯

片,运行程序和protues电路(即protues和Keil的联调)来实现设计要求的各功能。

3

第三部分是在实验板上焊接硬件电路的各个模块,每一部分单独调试,在各个部分调试成功后,联调整个硬件电路,全部调通后用烧录器把程序烧到AT89C51单片机里,上电后一切运行正常,系统实现预期的目标。

4

第2章 客车超载监控系统的方案论证

2.1系统的原理

本课题所设计的客车超载监控系统主要是避免因人数超载而引发的交通事故,所以本系统应该具备对乘客上、下车动作的智能检测,通过单片机来处理传感器获取的信息,即自动统计客车内的具体人数,能用LED进行实时显示。当客车内的实际人数超过设置值的上限值时,系统将自动进行声光报警,同时客车的启动装置也被锁定,这样可以有效地阻止超载情况的发生。

本系统中智能监控的方法显得尤为重要。其中,智能监控包括两部分:第一是检测模块部分。通过E3F-DS30C4反射式红外传感器和双D触发器对乘客的上、下车动作进行检测和判断。第二是数据统计部分。由单片机对接收的脉冲信号进行相应的加减计数,即完成统计乘客人数的功能。只有对车内人数准确的监控,才能判断出是否超载,来避免交通事故的发生,从而达到防患于未然的现实意义。

2.2系统的组成

系统结构框图如图2.1所示。主要包括:检测电路(红外传感器和方向识别电路)、键盘电路、单片机系统、LED显示电路、继电器控制电路、报警电路六部分。

红外传感器(1) 双D 触发 器组 单 片 数码管显 示电路 红外传感器(2) 成的 互锁 电路 继电器控 制电路 键盘输入 机 声光报警 电路 5

图2.1 系统的总体设计框图

系统各部分的基本功能简介如下: (1)反射式红外传感器

该传感器是一种集发射器和接收器于一体的传感器,当探测器前方有障碍物时,物体将光电开关发射器发射的足够量的光线反射到接收器,于是光电开关就产生了开关信号。当探测器前方没有障碍物时,探测器输出端输出高电平,当检测到障碍物时,探测器输出端输出低电平。因此,当有乘客经过车门完成一个上车或者下车的动作时就会产生脉冲信号,这样就完成了对乘客上、下车动作的检测,实现了将动作信号转换成电信号的功能。

(2)方向识别电路

方向识别电路是由双D触发器组成的双稳态电路,它可以通过自身的逻辑电路,来实现辨向的功能。方向识别电路与单片机的T0 、T1口相连,当乘客上车时会产生一个相应的负脉冲信号,把其接入T0端作为乘客上车动作信号的输入端,从而实现辨别乘客运动方向的功能。同理,当乘客下车时也会产生一个相应的负脉冲信号,把其接入T1端,即T1端作为乘客下车动作信号的输入端。

(3)单片机系统

单片机是本系统的核心元件,它实现了对传感器所采集的信号的判断和处理,控制硬件部分的键盘电路、显示电路、报警电路从而完成客车超载的智能监控。

(4)键盘

键盘采用4个独立式的按键来手动设置客车乘客人数的上限值。 (5)LED显示电路

该电路用两位共阴极LED数码管来即时显示,其系统开始时显示预置上限人数,当系统进入监控阶段则显示客车内乘客的实际人数。

(6)继电器

在该系统中用继电器来模拟客车的启动装置。若继电器断开,则代表客车已被锁定无法开启;若继电器闭合则代表客车恢复正常的启动,可以运行。

6

(7)报警电路

报警电路由蜂鸣器和发光二极管组成,当接收到单片机的命令时进行相应的声光报警和解除报警。

7

第3章 客车超载监控系统的硬件设计

系统的硬件设计是该系统设计成功与否的基础。按照系统设计的总体方案,本设计采用模块化的设计思想。硬件设计主要完成:检测电路、单片机最小系统电路、LED显示电路、继电器控制电路、声光报警电路、键盘输入电路。

3.1客车超载监控系统的检测电路

3.1.1传感器的选择

在本系统中传感器的主要作用是完成上、下车乘客动作信号的检测,因而在对传感器选择时应尽量考虑实际需求。其中包括适当的检测范围、灵敏度、调理电路简单、高性价比等。

常用的传感器有反射式红外传感器、超声波式传感器、视觉传感器、激光雷达和MMW雷达等。几种传感器的优缺点进行比较如表3.1所示。

表3.1 传感器性能比较

传感器类型 超声波 红外线 视觉 激光雷达 MMW雷达 优 点 价格合理,夜间不受影响 能直接测量,价格便宜 易于多目标测量和分类,分辨率好 价格相合理,夜间不受影响 不受灯光、天气影响 缺 点 测量范围小,对天气变化敏感 探测距离较近 算法复杂,处理速度慢 对水、灰尘、灯光敏感 价格贵 其中超声波传感器的基本原理是超声波的直线传输特性。传感器有一个超声波发射端,上电后发射超声波,另有一个超声波接收端,如果前方有障碍物,超声波反射回来被接收端接收,并在输出端输出一个相应的电平信号。该方法被广泛应用于移动机器人的研究上。其优点是价格合理,易于使用,且在10m以内能给出精确的测量。但是超声波传感器的工作原理基于声,即使可以使之测达100m远,但可能在传输中受到其它信号的干扰,所以不能用于本系统。视觉传感器在

8

CW系统中使用得非常广泛。其优点是尺寸小,价格合理,在一定的宽度和视觉域内可以测量定多个目标,并且可以利用测量的图像根据外形和大小对目标进行分类。但是算法复杂,处理速度慢。雷达传感器在军事和航空领域已经使用了几十年。主要优点是可以鲁棒地探测到障碍而不受天气或灯光条件限制。近十年来随着尺寸及价格的降低,在汽车行业开始被使用,但是仍存在性价比的问题。

本设计采用的是一种集发射与接收于一体的光电传感器。检测距离可以根据要求进行调节。该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点,可以广泛应用于机器人避障、流水线计件等众多场合。如图3.1所示。

图3.1 红外传感器

该漫反射型光电开关检可以检测前方3-80cm(可以调节);工作电压为5V直流电压。工作电流小于10mA;输出驱动电流为100mA; 使用温度范围为-40~70?C;这是一种应用最为广泛的光电开关,它的直径为17mm,固定时只要在设备外壳上打一个17mm的园孔就能轻松固定,长度约45mm,引线长度为45mm。

3.1.2反射式红外传感器检测原理

漫反射式光电开关是一种集发射器和接收器于一体的传感器,当有被检测物体经过时,物体将光电开关发射器发射的足够量的光线反射到接收器,于是光电开关就产生了开关信号。当被检测物体的表面光亮或其反光率极高时,漫反射式的光电开关是首选的检测模式。漫反射式光电开关工作示意图如图3.2所示。

9

发射 E3F-DS30C4 返回 漫反射光电开关 被检测物体

图3.2 漫反射式光电开关工作示意图

测量电路也是传感器组成的一部分。由于传感器由敏感元件和转化元件组成,但转化元件输出的电量常常难以直接进行显示、记录、处理和控制。这时就需要将其进一步变化成可直接利用的电信号,而传感器中完成这一功能的部分称为测量电路。随着集成电路技术的发展,传感器的测量电路也逐渐开始集成芯片化。一般需要辅助电源供电。测量电路的选择视转化元件的类型而定,常采用的有电桥电路、脉宽调制电路、振荡电路、高输入阻抗电路。

红外传感器采用E3F-DS30C4型光电开关,该传感器为漫反射式光电开关,漫反射式光电开关发出的光线需要经检测物表面才能反射回漫反射开关的接受器,所以检测距离和被检测物体的表面反射率将决定接受器接收到光线的强度。粗糙的表面反射回的光线强度必将小于光滑表面反射回的强度,而且被检测物体的表面必须垂直于光电开关的发射光线。当无检测物体时,常开型的光电开关所接通的负载由于光电开关内部的输出晶体管的截止而不工作,当检测到物体时晶体管导通,负载得电工作。该传感器探测距离为3-80cm,根据实际需要把车门两个传感器的探测距离调整为40cm。

3.1.3方向识别电路的设计

在该系统的设计中,传感器单元的功能是检测乘客经过车门的动作信号,但是对乘客的具体上、下车的动作不能作出判断,因而采用方向识别电路对传感器的输出信号进行区分、判断就成为了一个必要的环节。在本课题的设计中,反射式红外传感器安装在客车车门附近,其具体安置方法如图3.3所示。

10

下车方向 车厢内 传感器2 车 门 传感器1 上车方向 车厢外 图3.3 检测传感器安放图

本系统对方向识别电路的设计采用了双D触发器,实现了对乘客方向的识别。方向识别电路如图3.4所示。 74F04 +5V 74F04 R1 /Q1 CLK1 Q1 D1 S1 INT1 传感器1 74F04 传感器2 Q2 CLK2 D2 S2 INT0 74F04 /Q2 R2 图3.4 辨别方向电路图 如图3.4所示,将双D触发器的复位端分别与74F04相连。由于双D触发器

的置位端为低电平有效,将置位端接+5V电压,从而对置位信号进行屏蔽。将D触

11

发器的Q端与Q端连接起来,这样D触发器的特征方程为Qn?D。当时钟信号CLK=0时,D触发器的Q端和Q端保持逻辑状态不变;当CLK=1时,即D触发器时钟信号的上升沿到达时,Q端和Q端的状态要进行翻转,转变成相反的逻辑状态。其特性表如表3.2所示。

表3.2 边沿触发器特性表

C × × ↓ ↑ ↑ R 0 1 0 1 1 S 1 0 1 1 1 D × × × 0 1 Qn?1 0 1 Qn 0 1

当没有乘客经过车门时,传感器1、2均输出为高电平,经74F04 反相处理后,输出为低电平。触发器的复位端和置位端为低电平有效,在本设计中对触发器的置位端接入+5V进行屏蔽。在没有乘客上车时,两个D触发器的时钟信号CLK1、CLK2均等于0, Q1=0,Q2=0,D1=0,D2=0。如图3.3所示,当有乘客上车时,乘客先经过1号传感器,此时传感器1输出信号为低电平,经第一个74F04后变为高电平,CLK1=0,CLK2=1;D1=0,D2=1;Q1=0,Q2=1,即Q2的状态发生翻转。当乘客离开1号传感器时,由于此时CLK1=0, D1=0,R1=1,D1触发器的Q1和Q1端状态将会保持不变,CLK2=0, R2=1,Q2=1也保持为高电平状态。当乘客进入2号传感器的检测范围时,传感器2输出信号为低电平,这样CLK1=1,CLK2=0;D1=1,D2=1;R1=1,R2=0;Q2和Q2逻辑状态要进行翻转Q2=0,Q1的状态仍保持不变。

在上车这一过程中,只有Q2和Q2状态发生了变化,从低电平变为高电平再变为低电平。这样就产生了一个可由单片机T0端识别的脉冲信号。根据本电路的设计,T0端为乘客上车动作信号的输入端,从而实现了辨别乘客运动方向的功能。同理,当乘客下车时也会产生一个相应的脉冲信号接入T1端,在本设计中T1端是乘客下车动作信号的输入端。

12

3.2单片机最小系统的设计

3.2.1单片机的选择

单片机模块主要用来实现对上、下车人数的加、减计数。单片机模块在设计中,考虑到系统中的程序量和数据量较少,需要I/O口资源也相对较少,AT2MEL公司的AT89C51芯片的资源就能很好的满足系统的需求,所以在系统设计中采用了MCS-51系列单片机AT89C51芯片的最小系统来实现。我们选用ATMEL公司89系类的标准型单片机AT89C51,AT89C51是一种低功耗、高性能的8位单片机,片内带有一个4K字节的FLASH可编程可擦除只读存储器(EPROM),它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器(NURAM)技术,而且其输出引脚和指令系统都与MCS-51兼容。另外,AT89C51还具有MCS-51系类单片机的所有优点。128*8位内部RAM,32位双向输入输出线,两个十六位定时/计时器,5个中断源,两级中断优先级,一个全双工异步串行口及时钟发生器等。片内的FLASH存储器允许在系统内改编程序或用常规的非易失性存储器来编程。因此AT89C51是一种功能强、灵活性高且价格合理的单片机,它可方便地应用在各个领域。89C51引脚图如图3.5所示。

图3.5 89C51芯片引脚图

13

AT89C51

下面介绍89C51的主要引脚功能如下: (1)VCC(40):电源+5V; (2)VSS(20):接地;

(3)P0口(32-39):双向I/O口,既可作低8位地址和8位数据总线使用,也可作普通I/O口;

(4)P3口(10-17):多用途端口,既可作普通I/O口,也可按每位定义的第二功能操作;

(5)P2口(21-28):既可作高8位地址总线,也可作普通I/O口; (6)P1口(1-8): 准双向通用I/O口; (7)PSEN:内外程序存储器选择线;

(8)XTAL1(19)和XTAL2(18):外接石英晶体振荡器; (9)RST(9):复位信号输入端,高电平有效; (10)ALE/PROG(30):地址锁存允许信号; (11)EA(31):内、外程序存储器控制端;

由于本系统需要用到单片机内部的计数器,所以在这里有必要介绍定时/计数器的工作原理,定时/计数器的结构图如图3.6所示。

图3.6 定时/计数器的结构原理图

从定时/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位

14

专用寄存器组成,即:T0由TH0和TL0构成;T1由TH1和TL1构成。其访问地址依次为8AH-8DH。每个寄存器均可单独访问。这些寄存器是用于存放定时或计数初值的。此外,其内部还有一个8位的定时器方式寄存器TMOD和一个8位的定时控制寄存器TCON。这些寄存器之间是通过内部总线和控制逻辑电路连接起来的。TMOD主要是用于选定定时器的工作方式;TCON主要是用于控制定时器的启动停止,此外TCON还可以保存T0、T1的溢出和中断标志。

当定时/计数器用作计数器时,计数脉冲来自相应的外部输入引脚T0或T1。当输入信号产生由1到0的负跳变时,计数器的值加1。每个机器周期的S5P2期间,对外部输入引脚进行采样。如在第一个机器周期中采得的值为1,而在下一个周期中采得的值为0,则在紧跟着的再下一个周期S3P1的期间,计数器加1。由于确认一次负跳变要花两个机器周期,即24个振荡周期,因此外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。本课题选用11.0592MHz频率的晶体,允许输入的脉冲频率为500MHz。由于本课题所利用的是计数器T0、T1,并且是工作在工作方式2。所以以下重点介绍工作方式2的特点。

工作方式2是自动恢复初值的8位计数器,可以将计数器的计数初值设为0FFFFH,当计数器加1产生溢出中断后执行中断子程序,TLX作为常数缓冲器,当TLX计数溢出时,在置“ 1”溢出标志TFX的同时,还自动地将THX中的初值送至TLX,以便TLX从初值重新开始计数。这种工作方式可以省去用户软件中重装初值的程序,所以,工作方式2是一种不需重装初值的计数器,这就给软件系统中T0、T1中断子程序中反复利用计数溢出产生中断带来了方便。

3.2.2单片机外围电路的设计

由单片机硬件设计原理可知:第一,尽可能采用功能强的芯片,以简化电路;第二,留有余地。在设计硬件电路时,要考虑到将来修改、扩展的方便。

(1)晶振电路

89C51单片机的时钟可以两种方式产生,一种是内部方式,利用芯片内部的振荡电路;另一种方式为外部方式。本系统采用内部时钟电路。

单片机内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶

15

体或陶瓷谐振器一起构成一个自激振荡器。图3.7是89C51片内振荡器电路。89C51虽然有内部振荡电路,但要形成时钟,必须外接元件,图3.8是内部时钟方式的电路。外接晶体(在频率稳定性不高,而尽可能要求廉价时,可选用陶瓷谐振器)以及电容CX1和CX2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响振荡频率的高低,外接陶瓷谐振器时,CX1和CX2的典型值约为47pF。晶体可在1.2MHz~12MHz之间任选,电容CX1和CX2的典型值在20pF~100pF之间选择,在本课题中CX1和CX2选择值为30pF。晶体的振荡频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。为了提高温度稳定性,应采用温度稳定性能好的NPO高频电容。在本课题中晶振采用11.0592MHz。

图3.7 89C51片内振荡器电路图 图3.8 内部时钟方式电路图

(2)复位电路

89C51的复位输入引脚RST(即RESET)为89C51提供了初始化的手段。有了它可以使程序从指定处开始执行,即从程序存储器中的0000H地址单元开始执行程序。在89C51的时钟电路工作后,只要在RST引脚上出现两个机器周期以上的高电平时,单片机内部则初始复位。只要RST保持高电平,则89C51循环复位。只有当RST由高电平变成低电平以后,89C51才从0000H地址开始执行程序。复位电路如图3.9所示。

16

C

VCC

RST

89C51

R1

R2

图3.9 单片机复位电路图

当89C51的RST引脚为高电平时,单片机复位。本系统采用的复位电路如图3.9所示,其复位可分为两种方式,即上电复位和手动按键复位。

在接通电源时,系统的复位为上电复位方式,复位电路是电容C和电阻R2组成的微分电路,此时电容C相当于被瞬间短路,RST端输入为高电平,持续时间取决于电容的充电时间,而微分电路的时间常数τ=R2C,选择R2=1K?,C=22μF可以满足RST引脚持续出现两个机器周期的正脉冲的需要。

当按键按下时,复位电路工作在按键复位方式,RST端电压VRST为: VRST?VCC?R2 (3.1)

R1?R2GND

由于手动按键复位的按键时间,其电平一般都能使脉冲宽度维持10ms以上,所以对单片机的RST端能持续提供高电平以确保单片机可靠的复位。本课题中为单片机提供的复位高电平约为+4.5V,经设计R1=200?,R2=1K?,C=22μF。单片机复位后,P0到P3并行I/O口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。

3.3显示电路的设计

显示电路主要由7407集电极开路六正相高压驱动器和两位共阴极LED构成,其中7407主要增加驱动LED的能力,两位LED采用ARK—SR420561K型连体共阴极数码管。本设计以P0作为码段输出口,P2口的前两位作为位选口,以动态方

17

式实时显示数据。

LED即发光二极管,它是由某些特殊的半导体材料制作成的PN结,由于参杂浓度很高,当正向偏置时,会产生大量的电子—空穴,把多余的能释放变为光能。LED显示器具有工作电压低、体积小、寿命长(约十万小时)、响应速度快,颜色丰富等特点,是智能仪器最常用的显示器。LED的正向工作压降一般在1.2V-2.6V,发光工作电流在5mA -20mA,发光强度基本上与正向电流成正比,故电路须串联适当的限流电阻。

LED显示器的发光管分别为a、b、c、d、e、f、g、dp,通过八个发光段的不同组合,可以显示0—9和A—F等16个字母数字,从而可以实现十六进制整数和小数的显示。控制不同组合的二极管导通,就能显示出各种字符。LED显示器有共阳极和共阴极两种。LED显示器有单个、七段、八段和点阵式等几种类型,本次设计采用八段式共阴极LED,它的结构和外型图如图3.10所示。

图3.10 结构外形图

共阴极LED显示器的发光二极管的阴极连接在一起,通常叫做共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。通常将控制发光二极管发光的8位字节数据编码称为LED显示的段选码,要构成多位LED显示时,除需要段选线外,还需要位选线,以确定段选码对应的显示位,位选线控制第几个LED显示,段选线则控制显示字符。 本课题所设计的显示部分电路图如图3.11所示。

18

5V P1.0 VCC P1.1 P0.0 P1.2 P.0.1 P1.3 P0.2 P1.4 P0.3 P1.5 P0.4 P1.6 P0.5 P1.7 P0.6 P0.7 RST /EA ALE P3.0 /PSEN P3.1 P2.7 P3.2 P2.6 P3.3 P2.5 P3.4 P2.4 P3.5 P2.3 P3.6 P2.2 P3.7 P2.1 XTAL2 P2.0 XTAL1 VSS a b c d e f g dp P2.1 P2.0 在多位LED显示时,为了简化电路,节省I/O口,降低成本,动态显示方案具备一定的实用性,也是目前单片机数码管显示较为常用的一种显示方法。本设计采用一个两位LED动态显示,在位选线和段选线的共同作用下,可以使各个显示器显示各自的字符,当然这些字符不是同时显示的,但由于人眼存在视觉暂留,加上发光二极管的余辉效应,由于扫描的速度足够快,每位显示的间隔时间足够短,就可以给人同时显示的感觉,而不会有闪烁感,犹如同时显示一样。通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个LED,逐步完成两个LED的显示。

3.4键盘电路的设计

键盘也是微型机算机系统中最常用的人机对话输入设备。在单片机应用系统中,为了控制系统的工作状态,以及向系统输入数据,应用系统应设有按键或键盘。

常用的键盘接口分为独立式按键接口和矩阵式键盘接口。矩阵式键盘适用按键比较多的场合,它由行线和列线组成,按键位于行、列的交叉点上,它的特点

19

AT89C51 7407 7407

图3.11 LED显示部分电路图

是比较节省I/O端口;独立式按键就是各按键相互独立,每个按键各接一根输入线,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。因此,通过检测输入线上的电平状态可以很容易判断哪个键被按下了。键盘也有工作方式之分:分别为程序扫描方式、定时扫描方式和中断扫描方式。本设计键盘电路如3.12所示:

5V 10K 10K AT89C51 10K S1 S2 人数加 P1.3 P1.4 S3 人数减 P1.5 确定人数

图3.12 键盘电路原理图

在本系统程序设计时,从按键被识别按下之后,通过延时避开干扰信号,由于系统要求按键每按下一次,命令被执行一次,直到下一次再按下的时候,再执行一次命令,从而按键被识别出来之后,我们就可以执行这次的命令,所以要有一个等待按键释放的过程,而这个释放的过程,就是使其恢复为高电平的状态。对于按键识别的指令,本设计选择指令JB来检测按键是否为高电平,若为高电平,则按键抬起,否则继续执行程序。采用指令JNB来检测按键是否为低电平,若为低电平,则执行相应程序。

考虑到客车的实际要求,客车的实际装载乘客的人数默认值设置为30人。所以本设计采用比较简单的独立式按键接口电路,用两个按键设置上限值,一个为人数加设置,一个为人数减设置,按键线路如图所示。无键按下时,P1.3为高电平,有键按下时变为低电平,设置值加1,同理P1.4口作为减操作,P1.5为高电平,有键按下时变为低电平,确定设置人数。

20

序中都调用了显示子程序和报警子程序,这样就实现了实时显示和实时监控。进入中断子程序后,硬件会自动把断点地址(16位程序计数器PC的值)压入堆栈,保护有关工作寄存器、累加器、标志位等信息,在完成中断服务程序后,恢复有关的工作寄存器、累加器、标志位内容,最后执行中断返回指令,从堆栈中自动弹出断点地址到PC,继续执行被中断的程序。

4.3按键子程序的设计

按键电路在本设计采用独立式接口电路,由于所用按键不多,不会占用大量I/O口线,所以采用设计和结构简单的独立式按键。考虑到客车的实际要求,客车的实际装载乘客的人数应小于100,所以只用键盘设置上限值。为了确保CPU对一次按

开 始

N 有键闭合吗? Y 延时10ms N 有键闭合吗? Y 按键ADD_SET=0? Y N 按键DEC_SET=0? 超载人数加1 Y 超载人数减1 N 返 回

图4.3 按键子程序流程图

26

键动作只确认一次按键,必须消除抖动的影响,本设计采用软件延时的方法来消除按键的抖动。按键子程序流程图见图4.3所示。

4.4报警与锁定子程序的设计

报警与锁定子程序流程图如图4.4。该模块的主要功能是实现客车是否超载的判断,若检测值大于设置的上限值时,则进行报警,通过软件程序控制继电器动作,切断客车的电子启动装置。报警时的现象为:红色发光二极管进行闪烁,蜂鸣器发出蜂鸣声,由继电器控制的红色指示灯亮起。若检测值等于或低于所设阈值则解除报警,现象为:声光报警消失,由继电器控制的红色指示灯熄灭。其中P2.6为继电器控制端口,P1.0为红色二极管报警控制端口,P1.1为蜂鸣器报警控制端口。

调用延时子程序 P1.0=0,P1.1=0,P2.6=0 Y 车内人数值大于超载人数? 开 始 N P1.0=1,P1.1=1 P2.6=1

返 回 图4.4 报警与锁定子程序流程图

报警与锁定子程序是一个实时比较程序,实现对超值报警与锁定的控制。将数据处理后的实时检测值与预置上限值进行比较,报警子程序用SUBB语句进行判

27

断,即预置值减测量值,若后者大于前者则进行报警,否则消除报警。 在主程序的执行过程中,每次显示乘客人数值时都对报警子程序进行了调用,从而完成了实时监控的要求。

4.5显示子程序的设计

显示子程序流程图如图4.5所示。

开 始 BCD转换 个位、十位分离存入30H 01H送P2口 取个位段码送P0口 延时 02H送P2口 取十位段码送P0口 延时 返 回

图4.5 显示子程序流程图

数据处理完后,显示子程序开始工作,由于LED显示为段码的显示,所以处理后的十进制数要首先将个位十位分离再将数据存入显缓单元30H,然后位选数据

28

送P2口,取个位段码送P0口,调用延时子程序。再将位选数据送P2口,取十位段码送P0口,再调用延时子程序。在发生中断和等待中断时,都对显示子程序进行了调用,完成了实时显示的要求。两位位选码由P2.0-P2.1控制。

29

第5章 系统调试与分析

调试与分析的过程一般包括所有硬件电路的调试、程序的调试及它们的联合调试过程。一旦系统的工作总框图确定之后,电路原理图和程序的设计工作就可以迅速展开了。系统的硬件、软件的单独调试和软、硬联调是系统最后的步骤是系统特别重要的环节,因为设计和开发出的系统是否成功,功能是否完善只有在这里才能体现出来。所以为了保证设计系统能够正常工作,必须对软件和硬件部分的每一个部分进行调试和分析。本章详细的介绍了基于单片机的客车超载监控系统的硬件调试、软件调试和软、硬联调的过程,并对调试结果进行了介绍和分析。

5.1系统的硬件调试

本课题的硬件电路是系统的核心部分。它包括单片机的外围电路、传感器电路、方向识别电路、显示电路、报警电路和继电器锁定电路等,下面主要介绍单片机最小系统电路、方向识别电路在本次设计调试的方法与过程。

(1)单片机小系统的调试:按照设计好的电路图焊接好单片机的小系统,主要包括晶振电路、复位电路。上电后用万用表测量各个端口的电压情况,查看18、19晶振引脚的电压是否在2.0V左右,用示波器检测ALE口是否有固定的方波信号输出。当复位键按下时,查看RST 9引脚是否能达到3.5V以上的高电平,一切都正常后,编制一段延时亮灭的小程序,然后烧到单片机中,再重新验证一下最小系统是否全部正常工作。

(2)方向识别电路的调试:按照设计好的方向识别电路图,把74LS04反相器和74LS74双D触发器安插在面包上,用两个按键一端接地,另外两端代替传感器产生对应的脉冲信号,连接在方向识别电路的输入端。然后用万用表测试触发器Q1、Q2端的电平情况,调整相应的电路设计,直到实现辨向功能。

此外,在硬件的焊接过程中,需要十分的仔细和认真,尽量避免虚焊、漏焊现象,并且在焊接管脚时,应把芯片取下来,再进行焊接,防止因芯片过热而烧

30

坏。每焊接完一根导线,都使用万用表进行检查,查看是否构成通路。对焊点较近的点位也用万用表进行检测,查看焊点是否焊接在一起,以免出现混连的现象。这样逐一检查,容易发现问题排查故障,很有针对性。更重要的一点就是硬件系统必须要一部分一部分的焊接,即调通一部分再焊下一个小系统。若在硬件全部焊接完毕再进行检测的话,因为导线、焊点较多,对具体的线路很不容易分辨,排查故障也会很困难。

5.2系统的软件调试

软件的调试采用Keil μVision2编译与Proteus软件联调。其中Keil μVision2是Keil公司(ARM子公司)开发的一款用于MCS-51单片机开发的应用十分广泛的编译和调试软件。该软件可以编辑、编译汇编语言、C51语言,连接定位目标文件和库文件,创建HEX文件,调试目标程序等。而Proteus软件是Labcenter Electronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。

Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED等。所以通过Proteus和Keil软件的仿真使我比较方便、快捷的调通程序,确定好电路。

在Keil工作窗口下观察存储单元数据的变化,查找并解决程序的语法和逻辑错误,具体的调试步骤如下:

(1)把系统的各个模块在仿真软件中逐个调试,如报警模块、显示模块等。 (2)对各个需要赋值模块调试时,赋入初值,单步调试,观察仿真器窗口,看输出结果是否为设计时想要的结果。

(3)把各个模块组合起来,全速运行,看程序是否运行流畅的,是否能实现系统的所有功能。

5.3调试故障及原因分析

本节对在智能客车超载监测系统的设计中,所遇到的故障和调试方面出现的

31

问题作一概要的叙述。

(1)焊接错误

在实际焊接硬件电路的过程中,由于线路较多,出现了交叉混接现象,导致部分电路短路;还有漏焊现象,如焊完蜂鸣器报警电路时发现三极管的发射极没有接地,导致报警时没有声音。

(2)器件选择不当

P0口的上拉电阻选择过大,致使LED数码管的亮度不够,重新更换电阻后LED亮度增强。报警电路中,蜂鸣器的控制端没加反相器,驱动能力不够,直接用单片机的端口控制三极管的导通和截止,效果不好致使报警声音微弱。加上反相器,重新更正程序后,蜂鸣器正常报警

(3)调试方法及软件修改

整体调试时显示器不工作,全部显示88,而且闪烁现象严重,经检查原因有几处:①由于继电器的选择型号不对,导致继电器的触头不动作,不能完成锁定汽车电子打火装置。经改正后,继电器可以正常工作。②在软件调试时发现,LED显示不稳定,原因是在显示程序中的延时子程序时间不合适,在对延时程序进行相应的修该后,数码显示清晰稳定,满足观察的要求。

32

33

结论

该课题的主要任务是开发一个以MCS-51单片机为核心以红外传感器作为检测元件的客车超载监控系统。通过调试,实验验证了系统的可行性,能满足设计要求,达到设计指标。实现了自动对客车内乘客人数的统计,并用LED数码显示器实时显示。若客车发生超载,则进行相应的声光报警,并且切断客车的电子启动装置,锁定客车。当客车超载现象消除后,声光报警也相应的解除,系统对客车的锁定也解除,客车可正常运行,实现了对客车的智能监控功能。这个开发过程主要包括了硬件电路设计和软件程序的编写两个部分。从确定毕设题目,到查阅资料、确定总体方案设计,总体方案论证,硬件电路的设计,硬件电路的优化,软件的设计,软件的优化,焊制硬件电路板,调试硬件电路,调试软件程序,到最后的软硬件联调,其中每一个过程都是精心设计、认真仔细完成的。但是该设计还是不尽完善的方面,比如传感器的检测还存在一定死角,两个人要并行一起上车,将无法正确统计人数,因此,在传感器方面应该进行更完善的设计。

34

社会经济效益分析

随着城市改革开放的进一步深化,人们生活的需要,客运业的迅速发展,越来越多的人会选择汽车作为旅行的交通工具。在节假日等客流高峰期,客车的超载现象十分的严重。超载的车辆容易发生事故,所以迫切需要智能化的对这一现象进行自动化的监控,以减少交通事故给国家、群众带来了重大的损失和伤害。由于本课题所设计的检测系统使用的是单片机作为核心的控制元件,以及灵敏的红外热释电型器件,所以本系统抗干扰能力强,对环境的要求不高,电路简单、成本低、价格低廉、可靠性高、开发较为容易、并可获得较高的经济效益等特点,最重要的是具有很强的实用意义,而且如果能够随着电子技术的发展而对超载监测系统进行不断地改进和完善,相信该设计将会在客车安全控制领域的市场中占有一席之地。

35

本文来源:https://www.bwwdw.com/article/4iv.html

Top