用单片机实现公交车的自动考核与报站

发布者:创意旋律最新更新时间:2012-02-02 来源: 微计算机信息 关键字:GPS  单片机  微处理器  89C51 手机看文章 扫描二维码
随时随地手机看文章

1 引言

现今社会中,许多中小城市对公交车辆进行考核,大都采用人工考核的方式,该方式存在诸多缺点,例如,对车辆到达每一站的时间以及行驶途中存在的压客、超速、超载等问题,无法进行有效的监督,更重要的是它浪费了大量的人力资源,因此,急需一种系统对公交车辆进行有效的管理。

通过市场调查,现在对公交车辆进行管理,主要有两种方式:一是GPS自动考核系统,另一种是在站牌上设一信号发射装置,供车辆到站时判别。前一种方式虽然比较先进,但其价格昂贵,对中小城市的公交公司来说,只会增加其负担。而且更为重要的是,它需要对原有的站牌进行改造,程序烦琐。虽然属于同步考核方式,但对车辆塞车等情况仍无能为力。候车乘客通过站牌虽可知道车辆与本站的距离,但到达的确切时间仍无法确定,考核效果也不理想;后一种方式利用车辆收到信号和失去信号的时间间隔判别车辆停靠本站的时间,但此系统在实际应用中,可以说是效果很差,站牌上电力的供应、发射装置的稳定性、车辆上接收器灵敏度的不一性及路对面站的干扰等情况都严重影响了考核。

近年来,单片机技术迅猛发展,广泛应用于诸多领域,由于单片机具有可编程性及很好的存储扩展性等许多优点,因此萌生了用单片机来实现公交车辆的自动考核与报站。

2 系统的功能

(1)自动报站功能:当车辆到达某一停车站点时,系统自动报站,无需手动按键。
(2)自动考核功能:自动记录车辆中途停车的时间和行驶的里程数,自动记录超速、低速行驶的时间和里程数。
(3)显示时间功能。

3 系统设计原理

公交车较一般车辆有个明显的特点,就是它行驶的路线固定,从起点到终点中途经过的站、路口也是固定的。因此,从起点到任一站、任一路口的距离是相对不变的,任意两站之间、路口之间以及站与路口之间的距离也是不变的。我们利用这一特点,首先把从始发站出发的公交车到达每一站、每一路口行驶的里程数(确切地说是一个范围,即经过反复试验,得到的到达某站或路口的数据范围)记录在系统中,公交车在实际运行中,如果行驶的里程达到某某范围(范围的最低值),则自动报站(包括提示是路口等等),此即实现了自动报站功能。对于自动考核中的超速、低速的判断,只需在系统中设置一计数器(计算车轮转过的圈数),用单位时间内车轮转过的圈数来判断车速超、低速情况,同时将超、低速时的时间和行驶的里程数记录在系统中。这样,在车辆回到总站后,只要读取系统内部的数据,就可以知道车辆在运行途中的停靠站及超、低速行驶情况。对于车辆停车时间的记录,实现的方法是在车辆停止转动时就开始计时,在车轮开始转动时停止计时,并将计时时间保存在系统中。由于车辆停车时间的长短和停车时的时间都被记录下来,就可以杜绝一些公交车在站点延时拉客以及未到达站点就中途停车拉客的现象。这里要说明的是:所谓里程数=车轮转数*车轮周长。


图1 语音录放电路(电击看大图)


4 系统硬件设计

该系统硬件设计按功能模块划分,可分为四部分:最小系统、显示部分电路、计数部分电路和语音电路。下面结合每一个功能模块,来介绍一下如何用单片机来实现公交车辆的自动考核与报站。

(一)最小系统

最小系统由89C51、RAM、锁存器、时钟电路、复位电路五部分组成。这是该系统的核心,所有的指令都是由89C51发出的。

RAM:由于车辆在行驶过程中需要记录大量的数据,比如车辆中途停车的时间、慢速行驶的时间、超速的时间等等,而89C51内部只有256B的数据存储器RAM,其中128B用户可以使用,数据容量根本无法满足系统的需要,故须外接RAM。

锁存器:89C51虽然有P0、P1、P2、P3四个八位的I/O口,但是只有P0口能够直接用于对外部存储器的读/写操作,而P0口还要输出外部存储器的低8位地址(高8位地址直接由89C51的P2口输出)。为了避免数据和地址的信号冲突,这时候就需要在89C51和RAM之间加上一锁存器(实验中采用 74LS373),从而使数据与地址分时输出。

时钟电路:系统要稳定的工作必须有可靠的时钟。本系统采用内部时钟方式,外接6MHZ的晶振,晶振和电容(15P)组成并联谐振荡回路,从而使89C51内部的电路产生自振荡。

复位电路:即在89C51的RESET端出现一保持10ms的高电平时,单片机复位。系统将手动复位和上电复位结合在一起。 [page]

(二)显示部分电路

显示部分主要是显示时间的。在该系统设计中,由于89C51本身自带的并行口有限,故在系统中采用8155对并行口进行扩展。我们用8155PB口输出段码(即待显示的数据),利用8155PA口的低四位(PA0、PA1、PA2、PA3),经过一个74LS154(四—十六译码器)译码后产生16个位选信号,某一位选信号有效,与之相对应的LED灯即被点亮。我们在此采用的是动态显示方式,该方式较静态显示方式的明显优点即其占用的I/O口资源少,从而不必再对89C51进行I/O口扩展。

(三)计数部分电路

车辆在运行过程中,我们如何计算车辆行驶的里程,如何判断车辆超速、低速,这些都是通过计数部分电路来实现的。我们只要记录下车轮的转数,然后用它乘以车轮周长就可以得到车辆行驶的里程数。而对于车速,设定系统以某一固定时间间隔(比如5秒)来采集计数值(即车辆转数),用这一数值乘以车轮周长得出车辆行驶的里程,再除以时间从而得到车速,这样我们就可以判断车辆的超速、低速情况了。其实计数电路非常简单,它仅仅利用到89C51的外部中断INT0,每当此引脚有下跳沿信号,计数器即加1(系统中采用16位计数器,最大计数值可达到65535)。在进行实验的过程中,我们发现,模拟车轮产生的脉冲干扰很大,采用软件延时,效果不甚理想,而且影响到显示(用以显示的LED灯产生明显的抖动),故想到在INT0端采用硬件延时。而RS触发器在此方面有良好的特性,因此在INT0引脚与产生脉冲的车轮之间加上一RS触发器。

(四)语音部分电路

自动考核与报站系统的报站功能主要是由语音部分电路来实现的。实验中我们使用的语音芯片为ISD4002-120P,该芯片的存储时间仅为120秒,只可用于实验室阶段,实际应用中可以更换存储时间长的芯片。由于车辆在运行途中,只需报站,而无需录音,故我们采用图1所示电路对语音芯片进行录音。

开关在“REC”端是录音状态,按住“AN”键不放,指示灯亮即可对着话筒讲话录音,松键录音停止并形成一段。再按则录下一段。按“STOP”键复位,再录音时又从第一段开始。开关在“PLAY”一侧是放音状态,按一下“AN”即播放一段录音,一段结束后自动停止放音,再按“AN”键则播放下一段。 

把录好的芯片放到系统中,当车辆行驶的里程数达到某一段范围时,我们利用语音芯片的快进功能,跳到相应的语音段开始放音从而实现自动报站。

5 系统软件设计

系统软件采用模块化结构,主要由主程序、计数中断子程序、时间中断子程序等级成。下面列出了主程序流程图(如图2)和计数中断子程序流程图(如图3):

   

                                                                       
                    
6 结束语

总的看来,本系统采用了一种比较新颖的思路,用单片机来实现公交车辆的自动考核和报站。能够对公交车辆进行有效的管理,投入市场的前景较好。在实际运用的时候,可以在系统中扩展键盘,以防止公交车行驶路线发生变化以及出现一些异常情况时,改用键盘控制报站。

参考文献

[1]何立民.MCS-51系列单片机应用系统设计:系统配置与接口技术.北京:北京航空航天大学出版社,1990年。
[2]刘乐善,叶济忠.微型计算机接口技术原理及应用.湖北:华中理工大学出版社,1996年。

关键字:GPS  单片机  微处理器  89C51 引用地址:用单片机实现公交车的自动考核与报站

上一篇:DS1318与8051微控制器的接口
下一篇:单片机与PC机电话远程通信系统

推荐阅读最新更新时间:2024-03-16 12:52

AVR系列单片机的主要特性及选型
AVR单片机是ATMEL公司研制开发的一种新型单片机,它与51单片机、PIC单片机相比具有一系列的优点: 在相同的系统时钟下AVR运行速度最快; 芯片内部的Flsah、EEPROM、SRAM容量较大; 所有型号的Flash、EEPROM都可以反复烧写、全部支持在线编程烧写(ISP); 多种频率的内部RC振荡器、上电自动复位、看门狗、启动延时等功能,零外围电路也可以工作; 每个IO口都可以以推换驱动的方式输出高、低电平,驱动能力强; 内部资源丰富,一般都集成AD、DA模数器;PWM;SPI、USART、TWI、I2C通信口;丰富的中断源等。 目前支持AVR单片机编译器的语言主要有汇编语言、C语言、BASI
[单片机]
AVR系列<font color='red'>单片机</font>的主要特性及选型
STM8单片机ADC连续采样模式
STM8S003单片机内部ADC为12位,A/D转换的各个通道可以执行单次和连续的转换模式。 单次转换模式的意思就是,ADC每次转换一次数据后,就会停止转换,如果还需要继续转换的话,就需要手动开启第二次转换功能。 连续转换模式的意思就是每次转换结束后,系统会自动开启第二次转换,不需要手动设置第二次转换的开启,也就是说连续转换模式只需要开启一次。 ADC框图如下: ADC连续模式转换时序图如下: 通过时序图可以看出,在第2次转换完成后,第一次采样的结果才会输出,也就是结果输出比采样滞后了一个周期。 下面用代码来实现ADC的连续转换模式: #include adc.h #include main.h
[单片机]
STM8<font color='red'>单片机</font>ADC连续采样模式
HOLTEK新推出HT66FxxA Enhanced Flash MCU系列
继现有的Enhanced Flash MCU A/D型的HT66Fxx系列,Holtek再推出HT66F60A/70A、HT66FB60A/70A及HT66FU60A/70A系列MCU。除承袭原有之USB及UART系列外,并将程序空间推展到32K Words。适用于各种小家电、量测仪表、工业控制、医疗健康器材等产品。 全系列六个MCU涵盖完整并多样化的功能,包含有16K/32K Word Flash程序内存、1024/2048Byte数据存储器、128Byte Data EEPROM及16 Level Stack等核心规格;同时兼具实用的外围电路,例如12位的高速模拟/数字转换器,用以撷取外界环境的讯号如温度湿
[单片机]
HOLTEK新推出HT66FxxA Enhanced Flash <font color='red'>MCU</font>系列
MAX517与单片机的I2C总线数据通信
摘要:介绍了I2C总线的特点及数据通信的基本协议,并以AT89C51单片机与美国MAXIM公司的8位电压输出DAC数模转换器MAX517之间的通信为例,详细介绍了通过I2C总线进行数据通信的具体硬件电路连接和其通信子程序的编程方法。 关键词:I2C总线;AT89C51;MAX517;数据通信 1 I2C总线的特点及基本通信协议 I2C总线是Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线串行数据线和串行时钟线即可使连接于总线上的器件之间实现信息传送,同时可通过对器件进行软件寻址,而不是对硬件进行片选寻址的方式来节约通信线数目,从而减少了硬件所占空间。因为总线已集成在片内,所以大大缩短了设计时间,
[单片机]
51单片机及DS18B20温度传感器的数字温度计设计
老规矩,废话不多说,先上效果图 proteus仿真效果图 元器件清单及使用说明 DC18B20显示部分参考源代码: ds18b20.C文件: /******************************************************************** 程序名; 基于DS18B20的测温系统 功 能: 实时测量温度,超过上下限报警,报警温度可手动调整。K1是用来 进入上下限调节模式的,当按一下K1进入上限调节模式,再按一下进入下限 调节模式。在正常模式下,按一下K2进入查看上限温度模式,显示1s左右自动 退出;按一下K3进入查看下限温度模式,显示1s左右自动退出;按一
[单片机]
51<font color='red'>单片机</font>及DS18B20温度传感器的数字温度计设计
用PIC单片机实现LCD在休眠模式下的工作状态
  如果具有一个需严格控制功率的应用,并且它必须持续显示数据,则可以将LCD PlC单片机置于休眠模式,而LCD驱动器模块继续驱动显示器。   要使LCD在休眠模式下继续工作,只需两个步骤。首先,必须选择除主振荡器之外的时钟源作为LCD时钟源,因为在休眠期间,主振荡器会暂停。   下表显示了各种LCD PlC MCU的选项。   其次、休眠使能位(SLPEN)必须清零。这样,在器件处于休眠模式时,LCD将继续显示数据。就这么简单!何时应选择内部RC振荡器(或LFINTOSC),而不是Timerl振荡器?这取决于您的应用是否需要严格控制时间,对于时间敏感度足够高的应用,通常需要Timerl振荡器连接高精度晶振。如果要设计一个计时应用
[单片机]
用PIC<font color='red'>单片机</font>实现LCD在休眠模式下的工作状态
基于51单片机的环境噪声测量仪的设计
  环境噪声监测,是人类提高生活质量,加强环境保护的一个重要环节,在各大城市的繁华街区和居民区,已有大型环境噪声显示器竖立街头。但目前国内的便携式噪声测试仪,多为价格昂贵的进口专用设备,除卫生、计量等环保专业部门拥有外,无法作为民用品推广普及。本文介绍一种以89C51单片机为核心,采用V/F转换技术构成的低成本、便携式数字显示环境噪声测量仪。该仪器工作稳定、性能良好,经校验定标后能满足一般民用需要,可广泛应用于工矿企业、机关学校等需要对环境噪声进行测量和控制的场合。   1 声压级的测量机理   人耳的听阈一般是20m Pa (微帕),痛阈一般是200Pa(帕),其间相差107倍,这样宽广的声压范围很不易测量,而且人耳对声压的
[单片机]
基于51<font color='red'>单片机</font>的环境噪声测量仪的设计
STC11F32单片机的射频读卡器设计
  引 言   无线射频识别技术(RFID)以其高度安全保密性、通信高速性、使用方便性、成本低等特点而得到快速的普及和推广,现已广泛地应用于各类门禁控制系统、公共交通支付系统、医疗保险系统、停车场管理系统、仓储管理、车辆防盗等方面,并带动了读写器和各类应用产品的开发和推广。本文在分析射频识别系统组成和原理的基础上,提出了基于STC11F32高速单片机和MFRC500芯片的射频读写器设计方案;同时,在该读卡器上扩展了点阵图形液晶LCD和串行存储器W25X80,以及USB芯片CH340T等外围设备。LCD可以显示各种图形和汉字;串行存储器用来存储点阵字库、图形库等;USB芯片使得该读卡器省去了串口和电源供电端口,可以通过USB接口和
[单片机]
STC11F32<font color='red'>单片机</font>的射频读卡器设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved