1、软件使用单片机C语言,利用中断方式来检测用户请求的按键信息提供给单片机信号来确定要到楼层数,之后送到数码管进行显示。硬件设计简单可靠,结合软件,基本实现了四层电梯运行的模拟。芯片一旦检测到某楼层的按键被按下,就会在对应端口驱动电机来到该楼层,并延迟几秒,等人进入电梯后,关门,去到要去的楼层。第一章 电梯系统的方案设计1.1 系统设计阐述图1-1 模拟电梯系统组成框图本次设计采用STC89C52单片机为核心,晶振电路跟复位电路是单片机最小系统的组成,晶振电路用外部时钟电路和单片机内部振荡电路位单片机提供时钟脉冲;复位电路采用手动复位电路为单片机提供复位动作。判断按键电路引起电平的改变发送到单片机
2、,通过单片机输出信号控制电机控制电路,报警电路,显示电路和灯光模拟电路。此次灯光模拟是模拟电梯的上下行和开关门状态。电源模块是分别给单片机和H桥驱动电机供电。1.2系统设计任务此次设计的任务是用单片机模拟电梯的运行状态,用电机模拟现实中电梯运行时带动电梯的上升与下降,用发光二极管来模拟电梯中的开关门和上下行,用数码管显示并模拟电梯所在位置。电源模块中的9v电压与5v电压分别模拟驱动大功率电机和小功率芯片。1.3系统功能设计此次设计的功能就是实现人在现实中使用电梯时的部分功能。当我们需要乘坐电梯时,会在,门外召唤电梯,当电梯到达人所在楼层后,电梯开门,人进入电梯,然后选择要到达的楼层,之后电梯开
3、始关门,然后运行到所需楼层。所以,这次设计用按键代替门内召唤和门外召唤按钮,数码管显示并模拟电梯的运行状态。1.4系统方案论证此次设计驱动电机部分有以下两种方案。方案一驱动电机可以用L298n驱动芯片驱动,该芯片采用15脚封装。主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;额定功率25W。内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检
4、测电阻,将变化量反馈给控制电路。使用L298N芯片驱动电机,该芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。特点:1具有信号指示。2转速可调3抗干扰能力强4具有过电压和过电流保护5可单独控制两台直流电机6可单独控制一台步进电机7PWM脉宽平滑调速8可实现正反转输入信号端IN1接高电平输入端IN2接低电平,电机M1正转。如果信号端IN1接低电平, IN2接高电平,电机M1反转6。方案二用H桥驱动电路驱动电机,通过H桥三极管的通断来控制电机的正转反转。由于考虑到使用芯片驱动电机,自己的动手能力大大减少,自己也想趁此机会了解一下H桥电路,所以就采用了方案二。第二章 电梯系统控制
5、电路设计2.1单片机STC89C52的介绍2.1.1单片机STC89C52的特点STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。主要特性如下:(1)增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051.(2)工作电压:5.5V3.3V(5V单片机)/3.8V2.0V(3V单片机)(3)工作频率范围:040MHz,相当于普通8051的080MHz,实际工作频率可达48MHz(4)用户应用程序空间为8K字节(5)片上集成512字节R
6、AM(6)通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。(7)ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片(8)具有EEPROM功能(9)具有看门狗功能(10)共3个16位定时器/计数器。即定时器T0、T1、T2(11)外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由外部中断低电平触发中断方式唤醒(12)通用异步串行口(UART),还可用定
7、时器软件实现多个UART(13)工作温度范围:-40+85(工业级)/075(商业级)STC89C52RC单片机的工作模式(1)掉电模式:典型功耗0.1A,可由外部中断唤醒,中断返回后,继续执行原程序(2)空闲模式:典型功耗2mA(3)正常工作模式:典型功耗4mA7mA(4)掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备STC89C52RC引脚功能说明VCC(40引脚):电源电压VSS(20引脚):接地P0端口(P0.0P0.7,3932引脚):P0口是一个漏极开路的8位双向I/O口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入“1”时,可以作为高阻抗输入。在
8、访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线。此时,P0口内部上拉电阻有效。在Flash ROM编程时,P0端口接收指令字节;而在校验程序时,则输出指令字节。验证时,要求外接上拉电阻。P1端口(P1.0P1.7,18引脚):P1口是一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动(吸收或者输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这是可用作输入口。P1口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。此外,P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器
9、/计数器2的触发输入(P1.1/T2EX)P2端口(P2.0P2.7,2128引脚):P2口是一个带内部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电平,这时可用作输入口。P2作为输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。在访问外部程序存储器和16位地址的外部数据存储器(如执行“MOVX DPTR”指令)时,P2送出高8位地址。在访问8位地址的外部数据存储器(如执行“MOVX R1”指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个
10、访问期间不会改变。在对Flash ROM编程和程序校验期间,P2也接收高位地址和一些控制信号。P3端口(P3.0P3.7,1017引脚):P3是一个带内部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写入1时,通过内部的上拉电阻把端口拉到高电位,这时可用作输入口。P3做输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流。在对Flash ROM编程或程序校验时,P3还接收一些控制信号。P3口除作为一般I/O口外,还有其他一些复用功能,如下表所示:表1-1 P3口引脚复用功能引脚号复用功能P3.0RXD(串行输入口)P3.1
11、TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0的外部输入)P3.5T1(定时器1的外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通)RST(9引脚):复位输入。当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。看门狗计时完成后,RST引脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/(30引脚):地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在Flash编程时,此引脚也用作编
12、程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址位8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOV指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址位8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。(29引脚):外部程序存储器选通信号是外部程序存储器选通信号。当AT89C51RC从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而访问外部数据存储器时,将不被激活。/VPP(31
13、引脚):访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。注意加密方式1时,将内部锁定位RESET。为了执行内部程序指令,应该接VCC。在Flash编程期间,也接收12伏VPP电压。XTAL1(19引脚):振荡器反相放大器和内部时钟发生电路的输入端。XTAL2(18引脚):振荡器反相放大器的输入端1。2.1.2单片机I/O口的配置表1-2 单片机各个引脚的配置p0共阳数码管p2.4关门发光二极管p1.0门内1楼召唤按钮p2.5开门发光二极管p1.1门内2楼召唤按钮p2.6电梯上下行发光二极管p1.2门内3楼召唤按钮p2.7电梯运行发光二极管p1.
14、3门内4楼召唤按钮p3.0门外1楼上召唤按钮p1.4开门按钮p3.1门外2楼上召唤按钮p1.5关门按钮p3.2门外2楼下召唤按钮p1.6蜂鸣器p3.3门外3楼上召唤按钮p2.0H桥驱动电路p3.4门外3楼下召唤按钮p2.1p3.5门外4楼下召唤按钮2.2按键电路的设计因为电梯在正常生活中的运行很少需要复位,所以在这里复位电路上的按键就不做介绍了,着重介绍剩余的12个按键。图2-2 按键模块的电路左边六个按键分别对应门内四层楼的召唤和开关门,右边六个按键分别对应门外1楼到楼的召唤,这些按键一边接地,一边接单片机的I/O口,这样就可以用低低电平去判断,然后执行对应键的操作函数。这些按键并联一个1K
15、的上拉电阻,将VCC通过1K电阻并联到按键上,目的是为了防止干扰,增强稳定性。将输出口保持在高电平状态。该上拉电阻的选择是因为单片机电源是5V,P口输入电流不超过额定输入电流即可,单片机I/O口都是开漏输出,除了P0口都内置弱上拉电阻,所以选择1K也行,电流才5mA。但不能太小,防止灌电流过大。2.3数码管显示电路的设计此次采用的是共阳数码管,阳极接公共段,阴极接单片机,所以,单片机需用低电平来控制。当然,数码管用了103排阻,用作上拉电阻,(103=10*103=10000=10k欧姆)并且也加了360的电阻用来限流。数码管静态时,推荐使用10-15mA;动态时,16/1动态扫描时,平均电流
16、为4-5mA,峰值电流为50-60mA。一般工作电流为5 mA -10 mA,所以(5-2.7)/R=I,所以R=(230-460),所以限流电阻选择了360的。图2-3 数码管显示模块的电路2.4电梯模拟指示灯的设计图2-4 模拟指示灯的电路本次设计的指示灯共有6个,其中一个是电源模块的指示灯(后面会有提到),还有一个是单片机电源指示灯,再一个是电梯正常运行的指示灯。这三盏灯的功能就是为了提示,不做任何模拟,还有三盏灯分别接在p2.4,p2.5,p2.6口上。接在p2.6上的是表示电梯上下行的,当电梯上升时,该指示灯亮,当电梯下降时,该指示灯呈熄灭状态。接在P2.4和p2.5上的指示灯模拟了
17、四个状态。在电梯运行后,两盏灯同时熄灭代表电梯正在关门,同时亮代表正在开门,单独p2.4上的灯亮代表电梯处于关门状态,单独p2.5上的灯亮代表电梯处于开门状态。因为发光二极管接的是5V电源,所以限流电阻分到3v左右的压降,发光二极管的工作电流通常是2 mA-5mA,所以选择了1k的电阻,根据电阻公式是R=(UUf)I,可以算出R=(5-2)/(0.0020.005)=(6001500) ,所以电阻就选择了1K的,这样的电流是3mA,发光二极管可以正常工作。2.5蜂鸣器电路的设计图2-5 蜂鸣器电路本次设计用9012三极管驱动蜂鸣器,当电梯到达所需楼层时,单片机给三极管基极输入一个低电平,此时基
18、极的电压小于发射级的电压,三极管导通,可以使蜂鸣器作响。三极管在蜂鸣器上的作用是放大声音信号。三极管是一种控制元件,主要用来控制电流的大小,当基极电压UB有一个微小的变化时,基极电流IB也会随之有一小的变化,受基极电流IB的控制,集电极电流IC会有一个很大的变化,基极电流IB越大,集电极电流IC也越大,反之,基极电流越小,集电极电流也越小,即基极电流控制集电极电流的变化。但是集电极电流的变化比基极电流的变化大得多,这就是三极管的放大作用,该三极管的放大倍数在150-200之间。在I/O口和三极管B级之间串接个1K左右的电阻的作用是限制I/O口电流,防止I/O口过流烧坏。因为蜂鸣器正极接VCC,
19、串联的电阻选择1k,根据公式可以算出I/O的电流为5mA,再加上蜂鸣器的内阻,电流小于5mA,可以保证I/O口不被烧坏。2.6电源电路的设计2.6.1稳压电路的介绍本次设计采用的电源电路是经典的稳压电路。用一个电源适配器直接将220v的交流电转换成9v,然后接入板子上,一开始的设计是用两个电源,将单片机跟电机的电源分开,但考虑到了经济性和实用性,用了这个模块,只需一个电源输入即可。9v的电可以直接供给H桥驱动,串联一个二极管可以有效防止反接,然后电压经过输入端滤波,由稳压芯片7805输出,再由输出端滤波输出5v直流电给单片机供电。这里的电阻选择1K跟上面讲到的发光二极管的电阻选择一样,都是限流
20、的。图2-6电源电路2.6.2稳压芯片的介绍此次采用的是7805三端稳压集成电路,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7805表示输出电压为正5V,7905表示输出电压为负5V。在实物制作中,在7805上安装了散热器,为了防止温度过高时,稳压性能变差。图2-7稳压芯片78052.7 H桥驱动电路的设计2.7.1光耦的介绍图2-8光耦
21、内部图光耦。它是以光为媒介来传输电信号的器件,通常把发光器(红外线发光二极管LED)与受光器(光敏半导体管)封装在同一管壳内。当输入端加电信号时发光器发出光线,受光器接受光线之后就产生光电流,从输出端流出,从而实现了“电光电”转换。以光为媒介把输入端信号耦合到输出端的光电耦合器。这次设计时本来采用要用驱动芯片L298N来驱动电机的,但考虑到自己动手接触过H桥电路之后会有更深的了解,后又改用H桥。但是刚好有同学也是用H桥驱动电机的,所以就加了光耦。跟原先的H桥相比,稳定性又有所提升。光耦的主要作用就是强弱电的隔离,因为单片机是小功率的芯片,而电机是大功率的,所以光耦可以有效的起到隔离作用。光耦合
22、器的主要优点是:信号单向传输,输入端与输出端完全实现了电气隔离,输出信号对输入端无影响,抗干扰能力强,工作稳定,无触点,使用寿命长,传输效率高。光耦合器是70年代发展起来产新型器件,现已广泛用于电气绝缘、电平转换、级间耦合、驱动电路开关电路、斩波器、多谐振荡器、信号隔离、级间隔离 、脉冲放大电路、数字仪表、远距离信号传输、脉冲放大、固态继电器(SSR)、仪器仪表、通信设备及微机接口中。在单片开关电源中,利用线性光耦合器可构成光耦反馈电路,通过调节控制端电流来改变占空比,达到精密稳压目的2。如上图,二极管负极接VCC,二极管正极接单片机I/O口,发射极接地,集电极接入H桥电路。当电梯需要上升或者
23、下降时,给二极管正极输入一个高电平或者低电平,控制二极管的通断。假如芯片给二极管正极的是低电平,此时二极管导通,然后三极管也导通,因为发射极是接地的,所以集电极端也是低电平。将此信号传输给H桥。光耦在电路中一左一右两个,给左边的光耦输入低电平了,那右边的就是要输入高电平,这样才能维持电机的运转,这个在下面的H桥电路设计中会解释。2.7.2 H桥驱动电路的介绍图2-9 H桥驱动电路图如上为本次设计的H桥驱动电路。电路得名于“H桥驱动电路”是因为它的形状酷似字母H。4个三极管组成H的4条垂直腿,而电机就是H中的横杠。在桥路左边加了一个NPN三极管Q12和PNP三极管Q8,右边也同样加了Q7和Q11
24、,可以更有效的控制和保护电路。要使电机运转,必须是一条对角线上的三极管导通。下面,我们用一个例子来解释下H桥电路的工作原理。假设左边是低电平,那相对应的右边为高电平。所以左边的光耦C脚输入低电平,右边的光耦内的三极管不导通。因为PNP是低电平导通,所以左边第一个三极管Q8导通,因为下面串联一个电阻,所以呈高电平状态,所以左边第二个三极管Q12导通,所以,H桥中右下角的三极管Q14也导通,左上角的三极管Q9的基极B经过了三个电阻,而他的发射极只经过一个电阻,所以基极的电压相对的低于发射极,所以左上角的三极管Q9也导通。所以电机可以运转。接下来要验证右上角的三极管Q10和左下角的三极管Q13不导通
25、,因为光耦不导通,所以右边第一个三极管Q7没有构成回路,所以不导通,右边第二个三极管Q11和H桥右上角的三极管Q10同理也不导通,左下角的三极管Q13 B级没电压,所以也不导通,所以,当左边输入低电平,右边输入高电平时,左上角和右下角的三极管Q9,Q14导通,电机正转。反之,电机反转。四个并联在H桥三极管两端的二极管起到续流保护的作用。第三章 电梯系统的控制程序设计3.7程序流程图3.7.1 主程序流程图当电梯上电了之后,程序开始执行,数码管显示为1楼,同时开始扫描键盘,判断是否有按键按下,当有按键按下后,根据按键修改变量,然后电梯运行,同时数码管显示相应楼层,当抵达所需楼层楼层后,开始开门,同时蜂鸣器发出声音,提示已到达。然后循环以上过程。3.7.2 中断程序流程图当
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1