自动立体停车库控制系统设计方案.doc_第1页
自动立体停车库控制系统设计方案.doc_第2页
自动立体停车库控制系统设计方案.doc_第3页
自动立体停车库控制系统设计方案.doc_第4页
自动立体停车库控制系统设计方案.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自动立体停车库控制系统设计方案1 引 言近几年来,随着我国国民经济和汽车制造业的迅速发展,汽车保有量快速增长。北京、上海等大城市以每年15万辆的速度增加,而道路建设及停车位的建设远低于此。停车难所导致的占道停车、占用绿地停车,不仅使交通堵塞问题更加严重,而且涉及到投资环境和城市环境,日益引来各方人士的关注。如果停车难问题和交通拥挤问题得不道妥善解决,将同时影响了轿车进入家庭的步子,影响汽车制造业的迅速发展,影响国民经济的稳步持续发展。1997年,深圳注册车辆40万辆,异地注册在深圳行驶车辆12万辆,停车位仅4万多个,北京机动车保有量近140万辆,加上每天几十万辆进京车辆,而公共停车位仅8万多个。广州市机动车辆保有量为90万辆,外地进市车辆10万辆,共100万辆,仅有停车位9万个。专家指出只有公共停车位置达到机动车辆总数的1525%左右,才能缓解停车难问题。进入21世纪以来,随着我国社会与经济的发展,轿车特别是私家轿车的生产量和社会保有量迅速增加。近几年来,我国私人购车占售车总量的比例大幅递增,到1999年己经达到了50%,中国汽车需求量和保有量出现了加速增长的趋势。2000到2002年实际汽车保有量分别为1608.91万、1802.04万和2053.17万辆,年平均增长率分别达到了10.73%、12%、13.94%。2003年汽车保有量达到2353万辆,比2002年增长14.6%。以上事实说明,2004-2010年我国汽车保有量以及由此带动的汽车需求量将继续呈加速增长的趋势。随着汽车数量日益剧增,解决停车问题日益严重,尤其是居民小区、大型公共消费场所等,寸土如金,停车场向空间发展,己势在必行。根据有关市场调查,目前在大中型城市对立体车库的年需求量至少为10万个车位,但该类产品供应量很少,国内只有30家左右企业的少量产品供应市场。外国的相关公司看好这一巨大的市场,目前有产品向中国出口,但是其价格高,使用成本与收费高,使国内市场难以接受,限制了其推广使用。在我国,除北京、上海等特大城市外,沿海工业发达、人口密集的城市和地区也已经陆续开始安装和使用立体停车库,表现出强劲的市场需求。立体车库的国内外发展现状:立体车库在国外,尤其在日本已有近30至40年的历史,无论在技术上还是在经验上均己获得了成功。美、德、日、韩等国家的产品代表了国际的领先水平,国内立体车库多为进口德国和韩国的产品。在西欧、东南亚、韩国和日本得到了广泛的应用,形成了一个包括制造、安装、使用和维修的行业体系。我国于90年代初开始研究开发立体车库,距今己有20几年的历史。由于很多新建小区内住户与车位的配比为1:1,为了解决停车位占地面积与住户商用面积的矛盾,立体车库以其平均单车占地面积小的特性,己被广大用户接受。立体车库与传统的自然地下车库相比,在许多方面都显示出优越性:首先,立体车库具有突出的节地优势。以往的地下车库由于要留出足够的行车通道,平均一辆车就要占据40平方米的面积,如果采用双层立体车库,可以使地面的使用率提高80%-90%。例如采用地上多层立体车库,50平方米的地面积上便可存放10辆车,这可以大大地节省有限的土地资源,少量节省建设开发成本。其次,立体车库与地下车库相比可更加有效地保证人身和车辆的安全,人在车库内或车不停准位置,由电子控制的整个设备便不会运转。应该说,立体车库从管理上可以做到彻底的人车分流。在立体车库中采用机械存车,还可以免除采暖通风设施,因此,运行中的耗电量比工人管理的地下车库低得多。立体车库一般不做成套系统,而是以单台集装而成。这样可以充分发挥其用地少、可化整为零的优势,在住宅区的每个组团中或每栋楼下都可以随机设立立体车库。这为目前车库短缺的小区解决停车难的问题提供了有效途径。所以从技术、市场、政策等诸多因素分析,自动立体车库项目已经具备了良好的开发条件,具有重要的现实意义。立体车库的种类比较多,目前国内外比较流行的型式有:1.升降横移式该类的主要特点在于:a.节省占地,配置灵活,建设周期短。b.价格低,消防、外装修、建设、地基等投资少。c.可采用自动控制,构造简单,安全可靠。d.存取车迅速,等候时间短。e.运行平稳,工作噪声低。f.适用于商业、机关、住宅小区配套停车场的使用。韩国和德国公司的这类产品比较多,二层升降横移式立体车库特别适应于原有地库自走式停车场的改造工程。多层升降横移式主要适应于高度不受限制的平面自走式停车场的改造,结构简单且都已模块化。2.巷道堆垛式或垂直式巷道堆垛式立体车库采用堆垛机作为存取车辆的工具,所有车辆均由堆垛机进行存取,因此对堆垛机的技术要求较高,单台堆垛机成本较高,所以巷道堆垛式立体车库适用于车位数需求较多的客户使用。3.垂直提升式垂直提升式立体车库类似于电梯的工作原理,在提升机的两侧布置车位,一般地面需一个汽车旋转台,可省去司机调头。垂直提升式立体车库一般高度较高(几十米),对设备的安全性,加工安装精度等要求都很高,因此造价较高,但占地却最小。4.垂直循环式此类型的车库具有如下特点: a.占地少,两个泊位面积可停6至10辆车。b.外装修可只加顶棚,消防可利用消防栓。c.价格低,外装修、消防等投资少,建设周期短。d.可采用自动控制,运行安全可靠。停车业在国外已有近三十年的发展史,在我国大部分技术是引进的,不仅起步晚,也不很成熟,但市场潜力很大,有待于我们去拓展。本论文是针对目前国内停车行业的发展状况而设计的车位控制系统。车位控制系统对要存入车辆完成车号输入、车号显示、存储、选择最优车位及将确定的车位信号传输等功能;对取出车需完成车号输入、车号查找、显示确定车位及车位信号的传输等功能。车位控制系统的控制功能分三部分:第一部分为共享功能:车号输入功能,车号显示功能。第二部分是存车信号处理功能。车号的存储功能,存入车辆的最优存入车位的选择功能,最优存入车位的显示功能,最优车位的信号处理和传输功能,第三部分为取车信号处理功能:需取出车辆车号的查找功能,需取出车辆的车位号显示功能,需取出车辆的车位号的信号传输功能。2 系统总体方案设计2.1 控制原理车位控制系统主要实现了对各种数据的处理,对车牌号的存储及定位处理,选取最优车位时对寻优轨迹的数据处理以及车牌号查找时的数据查找等的处理。微处理器需处理不同数据,有时也较繁杂。各种数据不能随意乱存放,必须根据具体数据的特点按一定的规则来组织和存放。本文根据各数据元素之间的相互关系,对数据进行了有效的组织,解决了数据存储方式,并设计出对应的数据处理算法。各数据元素之间的相互关系有两层含意:一种指各数据元素之间的抽象关系,即逻辑关系,如先后关系、层次关系等;另一种指在计算机中存放地址之间的关系,即存储结构。逻辑关系只考虑数据元素之间逻辑上的先后次序,不分上下层次,称为线性结构。如数据元素之间在逻辑上还有上下层关系或元素之间互相联系的情况不规则,不能简单地用线性关系来表达时,属于非线性结构。逻辑结构最终必须以某种具体的形式实现,这种具体的形式就是“存储结构”,可用四种基本方法来实现。第一种为“顺序存储”,即将各数据元素按逻辑上的顺序存入在一段连续的空间内,并使逻辑上相邻的元素在想象空间上相邻;第二种为“链式存储”,各数据元素存放地址不受约束,可以连成一片,也可以分散在不连续的若干个地址上,通过链接指针表示各元素相邻的关系;第三种为“索引存储”,在这种存储方式中保存有一个索引表,索引表的每一项由两部分组成,其中一项表示数据元素的关键字,另一项中保存有对应数据元素的实际存放地址;第四种为“散列存储”,即直接利用数据元素的关键字来计算该数据元素的实际存放地址。车位控制系统处理的数据之间在逻辑上只有先后次序,不分上下层次,都属于线性结构,存储结构上则各有不同。数据元素的逻辑设计和存储设计完成之后要确定算法。数据处理都有一定目的,实现这个目的的处理方法称为算法。 2.2 控制功能本文所研究的车位控制系统的控制功能分三部分:第一部分为共享功能;第二部分是存车信号处理功能;第三部分为取车信号处理功能。12.2.1 共享控制功能共享功能是指无论存车或取车都需应用的功能。主要有:1.车号输入功能,即将要存入或取出的车辆的车牌号从键盘上输入;2.车号显示功能,即将从键盘上键入的车牌号码在显示器上显示出来,以便确认是否输入正确。2.2.2 存车信号处理功能存车信号处理功能是指车位控制系统在有车辆需存入车库时所应完成的功能,主要包括以下几项:1.车号的存储功能,即将键盘上输入的车牌号码存入单片机的存储器中;2.存入车辆的最优存入车位的选择功能,即根据现有的车辆存入情况选择最优存入车位的功能;3.最优存入车位的显示功能,即将已选定的最优车位在显示器上显示出来的功能;4.最优车位的信号处理和传输功能,即将选定的最优车位转换成信号并将信号传输给存取车控制系统的功能。2.2.3 取车信号处理功能取车信号处理功能是指停车库中已存入车辆需取出时所需功能,主要有以下几项:1.需取出车辆车号的查找功能,即根据输入的车牌号码,在已存入车辆中查找需取出车辆的位置;2.需取出车辆的车位号显示功能,即将需取出车辆的存放车位号在显示器上显示出来;3.需取出车辆的车位号的信号传输功能,即将需取出车辆的车位号处理后传输给存取车控制系统的功能。 2.3 方案设计车位控制指对要存入车辆完成车号输入、车号显示、存储、选择最优车位及将确定的车位信号传输等功能;对取出车需完成车号输入、车号查找、显示确定车位及车位信号的传输等功能。图2-1 硬件结构框图控制面板是车位控制部分的组成部分之一,面板上有输入键和显示器,输入键包括数字键、字母键及存取车控制键。显示器是8 位的,六位用来显示车牌号,两位显示车位号。为了实现车位控制系统和各项控制功能,本文设计了一个微处理器专用控制系统,主要由单片机、储存器、显示器、键盘和接口芯片组成。图2-1是控制系统的硬件结构框图。系统的硬件总图如图2-2所示:图2-2系统总硬件图3 系统硬件设计3.1 单片机的发展趋势现在可以说是单片机百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供广阔的天地。2 纵观单片机的发展过程,可以预示单片机的发展趋势,大致有:1.低功耗CMOS化MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越高,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。89C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。CMOS虽然功耗较低,但由于其物理特征决定其工作速度不够高,而CHMOS则具备了高速和低功耗的特点,这些特征,更适合于在要求低功耗蓄电池供电的应用场合。所以这种工艺将是今后一段时期单片机发展的主要途径。2.微型单片机现在常规的单片机普遍都是将中央处理器(CPU)、片内数据存储器(RAM)、只读程序存储器(ROM)、并行和串行通信接口、中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PWM (脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。甚至单片机厂商还可以根据用户的要求量身定做,制造出具有自己特色的单片机芯片。此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。3现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。3.主流与多品种共存现在虽然单片机的品种繁多,各具特色,但仍以C51为核心的单片机占主流,兼容其结构和指令系统的有PHILIPS公司的产品,ATMEL公司的产品和中国台湾的Winbond系列单片机,以C51为核心的单片机占据了半壁江山。而Microchip公司的PIC精简指令集(RISC)也有着强劲的发展势头,中国台湾的HOLTEK公司近年的单片机产量与日俱增,由于其低价质优的优势,也占据一定的市场份额。此外还有MOTOROLA公司的产品,日本几大公司的专用单片机。在一定的时期内,这种情形将得以延续,将不存在某个单片机一统天下的垄断局面,走的是依存互补、相辅相成、共同发展的道路。3.2 单片机的选择美国Intel公司1980年推出了MCS-51系列高档8位单片机。提高了芯片的集成度,性能上大为提高,增加了多种片内硬件功能,并扩展了功能单元的种类和数量。4MCS-51单片机硬件结构及其一些主要特点:1.内部程序存储器和内部数据存储器2.输入/输出口MCS-51单片机内的I/O口的数量和种类较多且齐全,尤其是它有一个全双工的串行口。3.外部程序存储器和外部数据存储器寻址空间MCS-51可对64KB的外部数据存储器寻址且不受该系列中各种芯片型号的影响,而对程序存储器是内外总空间为64KB.4.中断与堆栈MCS-51有5个中断源,分为2个优先级,每个中断源的优先级是可编程的,它的堆栈位置也是可编程的,堆栈深度可达128字节。MCS-51子系列有2个16位的定时/计数器,通过编程可以实现四种工作模式。MCS-52子系列有3个16位的定时/计数器。MCS-51在内部RAM中开设了四个通用工作寄存器区,共32个通用寄存器,以适应多种中断或子程序嵌套的要求。5.指令系统MCS-51有一个功能很强的指令系统,主要表现在MCS-51的指令系统中增添了减法、乘法、除法、比较、堆栈操作和多种位操作指令。5当振荡器频率最高时(12MHZ),大部分指令执行时间为1s,少部分为2s,乘除指令的执行时间也只有4s。6.布尔处理器特别值得一提的是MCS-51的布尔处理器。它实际上是一个完整的一位微计算机,这个一位的微机有自己的CPU、位寄存器、I/O口和指令集。把八位微机和一位微机结合在一起,是微机技术上的一个突破。一位机在开关决策、逻辑电路仿真和实时测控方面非常有效,而八位机在运算处理、智能仪表常用的数据采集方面有明显的长处。在MCS-51系列单片机中八位机和一位机(布尔处理器)的硬件资源是复合在一起的,二者相辅相成,这是MCS-51在设计上的精美之处,也是一般微机所不具备的。 3.3 89C51的引脚介绍掌握MCS-51单片机,应首先了解MCS-51的引脚,熟悉并牢记各引脚的功能。MCS-51系列中各种芯片的移植是互相兼容的。6制造工艺为HMOS的MCS-51的单片机都采用40只引脚的双列直插封装(DIP方式,目前大多数为此类封装方式。制造工艺为CHMOS的8031/89C51/87C51除采用DIP封装方式以外,还采用方行封装方式,为44只引脚(其中4只是无用的)如图3-1所示740只引脚按其功能来分,可分为如下3类:1. 电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2。2. 控制引脚:、ALE、RESET。3. I/O口引脚;P0、P1、P2、P3为4个8位I/O口的外部引脚。下面结合图3-1来介绍各引脚的功能。3.3.1 电源及时钟引脚1电源引脚与时钟引脚电源引脚接入单片机的工作电源(1)Vcc(40引脚):接+5V电源。(2)Vss(20引脚):接地。图3-1 89C51引脚图2个时钟引脚XTAL1,XTAL2外接晶体与片内的反相放大器构成了1个振荡器,它为单片机提供了时钟信号。2个时钟引脚也可以外接独立的晶体振荡器。XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。8晶振的频率可以在1MHz-24MHz内选择。电容取30pF左右。型号同样为AT89C51的芯片,在其后面还有频率编号,有12,16,20,24MHz可选。大家在购买和选用时要注意了。如AT89C51 24PC就是最高振荡频率为24MHz,DIP封装的普通商用芯片。综上分析,此次设计中的最小系统的设计采用89C51芯片作为最小系统芯片是最佳选择。(1)XTAL1(19引脚):接外部晶体振荡器的1个引脚。该引脚内部是1个反相放大器的输入端。这个反相放大器构成了片内振荡器。如果采用外接晶体振荡器时,此引脚应接地。(2)XTAL2(18引脚):接外部晶体振荡器的另一端,在该引脚内部接至内部反相放大器的输出端。若采用外接晶体振荡器时,该引脚接收晶体振荡器的信号,即把此信号直接接到内部时钟发生器的输入端。3.3.2 控制引脚此类引脚提供控制信号,有的引脚还具有复用功能。(1)RST/Vpd(9引脚): RST(RESET)是复位信号输入断,高电平有效。当单片机运行时,在此引脚加上持续时间大于2个机器周期的高电平时候,就可以完成复位操作。在单片机正常工作时,此引脚应0.5V,为低电平。Vpd为本引脚的第二功能,即备用电源的输入端。当主电源Vcc发生故障,降低到某一规定值的低电平时,将+5V电源自动接入RST端,为内部RAM提供备用电源,以保证片内RAM中的信息不丢失,从而使单片机在复位后能继续正常运行。(2)ALE引脚输出地址锁存允许信号,当单片机上电正常工作后,ALE引脚不断输出正脉冲信号。当单片机访问外部存储器时,ALE输出信号的下降沿用于单片机发出的低8位地址经外部锁存器锁存的锁存控制信号。即使不访问外部锁存器,ALE端仍有正脉冲号输出,此频率为时钟振荡频率的1/6。如果有脉冲信号输出,则单片机基本上是完好的。应该注意的是,每当MCS-51访问外部数据存储器时,在2个机器周期中ALE只出现1次,即丢失1个ALE脉冲。因此,严格来说,用户不宜用ALE做精确的时钟源或定时信号。ALE端可以驱动8个LS型TTL负载。 为本引脚的第二功能。在对片内EPROM型单片机编程写入时,此引脚作为编程脉冲输入端。(3):程序存储器允许输出控制端。在单片机访问外部程序存储器时,此引脚输出脉冲下降沿作为读外部程序存储器的选通信号。此引脚接外部程序存储器的端。端可以驱动8个LS型TTL负载。如果检查一个MCS-51单片机应用系统上电后,CPU能否正常到外部程序存储器读取指令码,可用示波器检查端有无脉冲输出。(4) / Vpp(Enable Address/Voltage Pulse of Programing):功能为内外程序存储器选择控制端。当引脚为高电平时,单片机访问片内程序存储器,但在PC(程序计数器)值超过0FFFH时,即超出片内程序存储器的4KB地址范围,将自动转向执行外部程序存储器内的程序。当引脚为低电平时,单片机则只访问外部程序存储器,不论是否有内部程序存储器。对于8031来说,因其无内部程序存储器,所以该引脚必须接地,这样只能选择外部程序存储器。Vpp为本引脚的第二功能。在对EPROM型单片机8751内EPROM固化编程时,用于施加较高的编程电压。10对于89C51,则加在Vpp引脚的编程电压为+12V。3.3.3 I/O口引脚(1)P0口:双向8位三态I/O口,此口可作为地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载。(2)P1口:8位准双向I/O口,可驱动4个LS型TTL负载。(3)P2口:8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型TTL负载。(4)P3口:8位准双向I/O口,双功能复用口,可驱动4个LS型TTL负载。这里要特别注意准双向与双向三态口的差别。P1口,P2口,P3口是3个8位准双向的I/O口,各口线在片内均有固定的上拉电阻。当这3个准双向I/O口作输入口使用时,要向该口先写1,另外准双向I/O口无高阻的“浮空”状态,故称为准双向三态I/O口。3.4单片机最小应用系统设计 此次设计选用89C51的最小系统,89C51内部有4KB程序存储器,芯片本身就是一个最小系统。11在能满足系统的性能要求情况下,可优先考虑采用此种方案。用这种芯片构成的最小系统简单且可靠。用89C51单片机构成的最小应用系统时,只要将单片机接上时钟电路和复位电路即可,该系统与其他最小系统相比,省去了外扩程序存储器的工作,该最小应用系统只能用作一些小型的数字量的测控单元。单片机最小系统电路如图32所示:图3-2 89C51最小系统MCS-51的PC受到干扰而失控,引起程序跑飞,可能会使程序陷入死循环。指令和软件技术不能使失控的程序摆脱死循环的困境,这时系统将完全瘫痪。如果操作人员不在场,可按下人工复位按钮,强制系统复位。但操作人员不可能一直监视着系统,即使监视着系统,也往往是在引起不良后果之后才进行人工复位。能不能不要人来监视,就能使系统摆脱死循环,重新执行正常的程序呢?这可采用“看门狗”技术来解决这一问题。12“看门狗”技术就是使用一个计数器来不断计数,监视程序循环运行。若发现时间超过已知的循环设定时间,则认为系统陷入了死循环,这时计数器溢出,然后强迫系统复位,在复位入口0000H处安排一段出错处理程序,使系统运行进入正轨。另外,在单片机系统运行时,有可能会发生电源掉电的意外情况,一些重要的数据可能丢失。这时需要系统应首先检测到电源的变化,然后通过切换电路把备用电池接入系统,以保护RAM中的数据不丢失。目前看门狗电路和掉电保护电路,都已经集成在一片微处理器监控芯片中。因此MCS-51只需要扩展一片微处理器监控芯片即可。这类芯片集成化程度高,功能齐全,具有广阔的应用前景。在单片机应用系统中使用微处理器监控芯片,可以大大提高单片机应用系统的抗干扰能力和可靠性。1)复位电路微处理器在上电、掉电及低压供电时,监控器产生脉冲信号这可以保证微处理器实现上电自动复位;当供电电压过低时,防止CPU失控。电源电压Vcc升到1V时RESET引脚变为低电平,随着Vcc的继续升高,RESET一直保持低电平。13当Vcc高于复位门限电平时,RESET并不马上变为高电平,而是要滞后一个复位脉冲宽度(约200ms)后再变为高电平。当Vcc低于复位门限电平,RESET引脚马上变成低电平,即使以后Vcc恢复且高于复位门限电平,RESET也不马上变成高电平,而是要延迟一个复位脉冲宽度。掉电时,Vcc只要低于复位门限电平,RESET立即变为低电平。2)监视电路此次设计选用MAX690微处理器作为监控器芯片。14看门狗电路计数器定时电路,在WDI端输入一个脉冲(TTL电平,宽度可小至50ms),定时器开始计数。若WDI引脚悬空或接至高阻态输出的缓冲器上定时器则停止计数,并且清零。当定时器启动后,若在1.6s内没有向WDI输入脉冲,监控器将输出一个复位信号,引脚RESET变低电平,同时定时器清零,只要RESET为低电平,定时器将一直停止工作。MCS-51与MAX690自动监控的接线如下,+5V电压跌落到某电压值,输出低电平,这就需要合理选择电阻R3、R4的值,所以R3=2.6K欧姆,R4=1K欧姆。电路图如下:图 3-3 监视电路原理图3.5显示、键盘电路的设计常用的LED显示器为8段(或7段,8段比7段多了1个小数点“dp”段)。每一个段对应1个发光2极管。这种显示器有共阳极和共阴极两种,共阴极LED显示器的发光二极管的阴极连接在一起,通常此公共阴极接地。当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。同样,共阳极LED显示器的发光二极管的阳极连接在一起,通常此公共阳极接正电压,当某个发光二极管的阴极接低电平时,发光二极管被点亮,相应的段被显示。为了使LED显示器显示不同的符号或数字,就要把不同段的发光二极管点亮,这样就要为LED显示器提供代码,这些代码可使LED相应的段发光,从而显示不同字型,因此称该代码为段码(或字型码)。3.5.1 显示器电路设计由N个LED显示块可拼连接成N位的LED显示器,N个LED显示块有N根位选线和8N根段码线。段码线控制显示字符的字型,而位选线为各个LED显示块中各段的公共端,它控制该LED显示位的亮或暗。点亮显示器有静态和动态两种方法:所谓的静态显示,就是当显示器显示某一个字符时,相应的发光二极管恒定的导通或截止,例如7段显示器a、b、c、d、e、f导通,g截止,显示0。这种显示方式每一位都需要有一个8位输出口控制。静态显示时,较小的电流能得到较高的亮度且字符不闪烁,所以可由8255的输出口直接驱动。在单片机串行口方式0应用中,也是采用静态显示方法。当显示器位数较少时,采用静态显示的方法是合适的。当位数较多时,用静态显示所需要的I/O太多,一般采用动态显示方法。1)静态显示方式:各位的共阴极或共阳极连接在一起并接地;每位的段码线分别与一个8位的锁存器输出相连。之所以称为静态显示,是因为各个LED的显示字符一经确定,相应锁存器所存的段码输出将维持不变,直到送入另一个字符的段码为止。正因如此,静态显示器的亮度都较高。这种显示方式接口编程容易,付出的代价是占用的口线较多。如果显示器的位数增多,则需要增加锁存器。因此在显示位数较多的情况下,一般都采用动态显示方式。2)动态显示方式:在多位LED显示时,为简化硬件电路,通常将所有位的段码线相应段并联在一起,由一个8位I/O口控制,形成段码线的多路复用,而各位的共阳极或共阴极分别由相应的I/O线控制,形成各位的分时选通。若要各位LED能够同时显示出与本位相应的显示字符,就必须采用动态显示方式,即在某一时刻,只让某一位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段码线上输出相应位要显示的字符的段码。这样,在同一时刻,位LED中的只有选通的那一位显示出字符,而其他位则是熄灭的,同样在下一时刻,只让下一位的位选线处于选通状态,而其他各位的位选线处于关闭状态, 在段码线上输入将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而其他各位则是熄灭的,如此循环下去,就可以使各位显示出相应的字符,虽然这些字符是在不同时刻出现的,而在同一时刻,只有一位显示,其他各位熄灭,但由于LED 显示器的余辉和人眼的视觉暂留作用,只要每位显示间隔足够短,则可以造成多位同时亮的假象,达到同时显示的效果。LED不同位显示的时间间隔应根据实际情况而定。发光二极管从导通到发光有一定的延时,导通时间太短,则发光太弱,人眼无法看清,但也不能太长,因为要受限于临界闪烁频率,而且此时间越长,占用CPU时间也越长。另外,显示位数增多,也将占用大量的CPU时间。因此动态显示实质是以牺牲CPU时间来换取器件的减少的。综上所述,此次设计选动态显示是最合适的方法。显示原理图如图3-4所示。图3-4 显示电路3.5.2 键盘电路的设计行列式(也称矩阵式)键盘用于按键数目较多的场合,它由行线和列线组成,按键位于行、列的交叉点上。1个33的行、列结构可以构成1个具有9个按键的键盘。同理1个44的行、列结构可以构成1个16个按键的键盘等等。如图所示。很明显,在按键数目较多的场合,行列式键盘与独立式键盘相比,要节省很多的I/O口线。 图3-5 44键盘(1)行列式键盘工作原理:按键设置在行、列线交点上,行、列分别连接到按键开关的两端。行线通过上拉电阻接到+5V上。无按键按下时,行线处于高电平状态,而当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。列线的电平如果为低,则行线电平为低;列线的电平如果为高,则行线电平亦为高。这一点是识别行列式键盘是否按下的关键。由于行列式键盘中行、列线为多键共用,各按键均影响该键所在的行和列的电平。因此各按键彼此将相互发生影响,所以必须将行、列线信号配合起来处理,才能确定闭合键的位置。下面以图3-5中3号键被按下为例,来说明此键是如何被识别出来的。当3号键被按下时,与3号键相连的行线电平将由与此键相连的列线电平决定,而行线电平在无按键按下时处于高电平状态。如果让所有的列线处于低电平,很明显,按键所在的行电平将被接成低电平,根据此行电平的变化,便能判定此行一定有按键被按下。但还不能确定是键3被按下,因为如果键3不被按下,而同一行的键2、1或0之一被按下,均会产生同样的效果。所以,行线处于低电平只能得出某行有按键被按下的结论。为进一步判定到底是哪一列的按键被按下,可采用扫描法来识别。即在某一时刻只让1条列线处于低电平,其余所有列线处于高电平。当第一列为低电平,其余各列为高电平时,因为是键3被按下,所以1行仍处于高电平状态;而当第二列为低电平,其余各列为高电平时,同样我们会发现第1行仍处于高电平状态;直到让第4列为低电平,其余各列为高电平时,因为此时3号键被按下,所以第一行的电平将由高电平转换到第4列所处的低电平,据此可以判断第1行第4列的交叉点处的按键,即3号键被按下。根据上面的分析,很容易想到识别键盘有无键盘被按下的方法,此方法分2步进行:第1步,识别键盘有无键被按下;第2步,如有键盘被按下,识别出具体的按键。分别介绍如下:首先把所有的列线均置为低电平,检查各行线是否有变化,如果有变化,则说明有键被按下,如果没有变化,则说明无键被按下。其次先把某一列置低电平,其余各列置为高电平,检查各行线电平的变化,如果某行线为低电平,则可确定此行此列交叉点处的按键被按下。(2)键盘的工作方式单片机应用系统中,键盘扫描只是单片机的工作内容之一。单片机在忙于各项工作任务时,如何兼顾键盘的输入,取决于键盘的工作方式。键盘工作方式的选取应根据实际应用系统中CPU工作的忙、闲情况而定。其原则是既要保证能及时响应按键操作,又不要过多的占用CPU的时间,通常键盘工作方式有三种:编程扫描、定时扫描、中断扫描。111)编程扫描方式这种方式就是只有当单片机空闲时,才调用键盘扫描子程序,反复的扫描键盘,等待用户从键盘上输入命令或数据,来响应键盘的输入请求。图为1个44矩阵键盘通过8255扩展I/O口与89C51的接口电路原理图,键盘采用编程扫描方式工作,8255的PB口低4位输出逐行扫描信号,PA口输入4位列信号,均为低电平有效。8255的A0,A1端分别接于地址线A0、A1上,与P2.7相接,、分别与89C51的和相连。1检查PC口低4位状态,若PC0PC3全为1,则说明键盘无键按下;若不完全为1,则说明键盘有可能有键按下。2用软件延时10ms来消除按键抖动的影响。确实有按键按下时,进行下一步。3在键盘扫描子程序中,首先判断键盘上有无键按下。其方法为PA口位输出全0,判断按下键的行号。根据前面的介绍的方法,逐列置0扫描,读入行线的状态,最后确定按键列号。4等待按键释放后,再进行按键功能的处理操作。2)定时扫描的工作方式单片机对键盘的扫描也可以采用定时扫描方式,即每隔一定的时间对键盘扫描一次。在这种扫描方式中,通常利用单片机内的定时器,产生10ms的定时中断,CPU响应定时器溢出中断请求,对键盘进行扫描,在有键按下时识别出该键,并执行相应键的处理功能程序。3)中断工作方式为了进一步提高单片机扫描键盘的工作效率,可采用中断扫描方式,即只有在键盘有按键按下时,才执行键盘扫描程序并执行该按键功能程序,如果无按键按下,单片机将不理睬键盘。3.6 锁存器 74LS373介绍本次设计选用的锁存器为74LS373,它是一种带有三态门的8D锁存器,其引脚如图3-6所示。其引脚说明如下:D0D7:8位数据输入线。Q0Q7:8位数据输出线。LE:数据输入锁存选通引脚,高电平有效。当该信号为高电平时,外部数据选通到内部锁存器,下降沿到来时,数据锁存到锁存器中。当LE为“1”时,锁存器输出端同输入端;当LE由“1”变“0”时,数据输入锁存器中。:输出允许端。当为“0”时,三态门打开;当为“1”时,三态门关闭,输出呈高阻状态。在MCS-51单片机系统中,常采用74LS373作为地址锁存器使用,其中输入端D0D7接至单片机的P0口,输出端提供的是低8位地址,LE端接至单片机的地址锁存允许信号ALE。输出允许端接地,表示输出三态门一直打开。图3-6 74LS373的引脚图3.7 2732存储器芯片介绍 3.7.1 2732的引脚介绍A0A11:地址线引脚。地址线引脚的数目由芯片的存储容量来定,用来进行单元选择。D0D7:数据线引脚。:片选输入端。图3-7 2732的引脚/ Vpp:输出允许控制端;编程时,编程电压(+25V)输入端。Vcc:芯片的工作电压输入端。GND:接地。3.7.2 2732的工作方式2732为4KB容量,2732有以下几种工作方式:1)读方式此时和均为有效,芯片中的数据从输出缓冲区送往输出引脚。2)输出禁止方式此时有效,而无效。这种工作方式往往是多个2732并联在数据总线上,为使存储系统功耗最小,并防止各存储芯片争夺总线,则可把所有2732的均接地,通过对端输入高电平或低电平来确定是哪个芯片的数据输出到数据总线上去,而其它芯片处于输出禁止方式。 3)待机方式当为无效时,2732处于待机方式。待机时的电流从工作时的125mA降至35mA。这种方式下,输出呈高阻状态,且不受的限制。4)编程方式对2732编程之前,应保持芯片上所有的位均为1。写入信息时,只是把应为0的位由1改为0,而应为1的位则保持不变。5)编程禁止方式此时,端接+21伏电压,当为无效时,则禁止向该芯片写入数据。 3.8 6264数据存储器的介绍6264是8K8位的静态数据存储器(SRAM)芯片,采用CMOS工艺制作,单一+5V电源,额定功耗165mw,典型存取时间为200ns,24线双列直插式封装。在此设计中用于扩展89C51内部数据存储器容量。数据存储器扩展电路与程序存储器扩展电路相似,所用的地址线、数据线完全相同,读、写控制线用WR、RD。但要考虑的问题比程序存储器涉及的问题要多,如I/O口扩展的统一编址问题。6264引脚功能的介绍:A0A14:地址输入线。D0D7:双向三态数据线。:片选信号输入线,低电平有效。对于6264芯片,当引脚20(CS2)为高电平时,且为低电平时才选中该片。:读选通信号输入线,低电平有效。:写允许信号输入线,低电平有效。Vcc:工作电源+5V。GND:地线。NC:无用端。图3-8 6264引脚图静态SRAM存储器有读出、写入、维持三种工作方式, 这些工作方式的操作控制如表31所示: 表3-1 操作控制表 信号方式D0D7读LLH数据输出写LHL数据输入维持HXX高阻态3.9 可编程并行接口8255芯片介绍8255是Intel公司生产的可编程并行I/O接口芯片,它具有3个8位的并行I/O口,3种工作方式,可以通过编程改变其功能,因而使用灵活方便,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。此设计中8255芯片用于扩展接口。8255的引脚如图3-9所示。158255共有40只引脚,采用双列直插式封装,各引脚功能如下:D0D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。:片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许8255与CPU进行通讯。 Vcc:+5V电源。图3-9 8255的引脚图PA0PA7:A口输入/输出线,1个8位数据输出锁存器和缓冲器;1个8位输入锁存器。PB0PB7:B口输入/输出线,1个8位数据输出锁存器和缓冲器;1个8位数据输入缓冲器。PC0PC7:C口输入/输出线,1个8位的输出锁存器;1个8位数据输入缓冲器。A0、A1:地址线,用来选择8255内部的4个端口。RESET:复位输入线,当该输入端外接高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。:读信号线,当这个引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 :写入信号,当这个引脚为低电平时,允许CPU将数据或控制字写入8255。8255的内部结构:8255包括3个并行数据输入/输出端口,组工作方式的控制电路,1个读/写控制逻辑电路和8位数据总线缓冲器。1)8255有3个8位并行口,PA、PB和PC,都可以选择作为输入/输出工作模式,但在功能上略有不同。通常PA口、PB口作为输入/输出口,PC可作为输入/输出口,也可在软件的控制下,分为2个4位的端口,作为端口A、B选通方式操作时的状态控制信号。2)A组和B组控制电路这是2组根据CPU写入的命令控制8255工作方式的控制电路。A组控制PA口和PC口的上半部(PC4PC7);B组控制PB口和PC口的下半部(PC0PC3),可根据命令字对端口的每一位实现按位置或复位。163)读/写控制逻辑电路读/写控制逻辑电路接收CPU发来的控制信号、RESET、地址信号A0、A1等,然后根据控制信号的要求,将端口数据读出,送往CPU或者将CPU传来的数据写入端口。4)数据总线缓冲器数据总线缓冲器是1个三态双向8位缓冲器,作为8255与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。 4 系统的软件设计4.1 控制系统的主程序功能及流程图主程序完成下述主要功能:1. 程序的初始化;2. 存取车状态的读入,及车牌号的读入、显示;3. 存取车子程序的调入;4. 存取车控制系统的单片机信号的传递。主程序流程图如图4-1所示。 图4-1 主程序流程图4.2 最优车位的实现本文研究的自动立体停车库有40 个车位,共20 层,每层两个车位,当有车存入时,微处理器需确定存入哪个车位,就出现了选取最优化车位的问题。最优化条件首先是存车所需时间最短,其次是以消耗最少能源为准。存车的能量消耗主要与提升层数关系密切,层数越低,能量消耗越少。选取最优车位的方法,本论文采用了较简单的方法,即根据车位的层数排列出选取的顺序,根据此顺序建立一个线性表最优车位库。每个车位需两个字节,第一个字节表示是否有车存入,第二个字节表示此位置的车位号。程序在此线性表中进行顺序查找。时间和空间的矛盾是计算机世界许多相同的功能出现很多不同方法的根本原因,不同查找方法的同时存在就印证了这一点,它们各有优劣,各有所用。查找的目的在于从一些数据中寻找一个特定的值,这看似简单的工作之所以产生了形形色色的各种方法,无非都是为了追求更高的效率与更方便的操作。图4-2 选取最优车位程序流程图在范围较小的时候,无论采取什么方法查找,所花费的时间都相差无几,在这种情况下,算法上简单易行,且对存储格式要求较低的线性查找无疑就可以满足我们的要求。当数据量更大,即使用这种方法也要很多次查找才能确定精确的位置时,我们又想到可以用某种公式将一个有某一特征的数据放在一个固定的位置,需要查找时只需直接用公式计算出它的所在位置就可以引用,这就是杂凑查找。这种方法在查找时间上的效率已趋于极限,但是很难找到一个恰到好处的公式使得数据按这种格式存放时不产生空隙,所以这种方法对于空间的要求就多一些。线性查找在思维上简单易行,代码容易实现,是处理少量数据时很好的一种选择。线性查找是最简单的查找方法,也是应用性最广的方法。它是从头开始,依次将表中的各个元素与指定的条件进行比较,直至在线性表中找到符合条件的元素,输出相应的信息,或者查遍整个线性表,查询地址已大于线性表的末地址,仍然未找到则宣告失败,输出失败信息,显示00。17图4-2 是选取最优车位选择程序流程图。4.3 键盘扫描子程序图4-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论