
应用PROTEUS的电扶梯单片机控制仿真设计.pdf
12页自动扶梯单片机控制系统的仿真设计与实现 陈洁 (苏州竹园电科技有限公司 苏州 215211;) 摘 要: 介绍 PROTEUS 软件的基础上,以电扶梯单片机控制系统为实例来介绍如何采用PROTEUS 软件进行 8051 单片机应用系统仿真设计 关键词: 8051 单片机 应用系统 PROTEUS 软件 keil c 软件 绑定 仿真 自动扶梯或自动人行道控制系统中,其控制核心常见的有可编程序控制器( PLC)和单片机( MCU)两种通常可编程序控制器的选用者大多是具有一定的电气控制技术,而对计算机技术方面部太了解的技术人员单片机的选用者大多是已掌握单片机应用技术,而对电气控制电路不太了解的技术人员 1. PROTEUS 软件简介 PROTEUS 从 1989 年问世至今,经过了近 20 年的使用、完善,功能越来越强、性能越来越好运行 PROTEUS 软件,计算机系统需具有: 200MHz 或更高的奔腾处理器,Win98/Me/2000/XP 或更高版本的操作系统, 64MB 或以上的可用硬盘空间, 64MB 或以上的RAM 空间,用 PROTEUS VSM 仿真时,则要求 300MHz 以上的奔腾处理器,如果专门使用PROTEUS VSM 作实时仿真较大或较复杂的电路系统,则建议采用更高配置的计算机系统,以便获得更好的仿真效果[1]。
已经安装了 Proteus ISIS7 软件的桌面上就会有图标 双击该图标,出现工作界面如图 1 所示界面中包括:标题栏、下拉主菜单、快捷按钮栏、标准工具栏、绘图工具箱、状态栏、选择元器件按钮、预览对象方位控制按钮、仿真操作按钮、预览窗口、电路原理图编辑窗口等 图 1 proteus ISIS7 工作界面 2. 控制系统组成及原理 电扶梯又称自动扶梯,其常见控制方法有继电器控制和可编程程序控制器( PLC)控制两种下面介绍一种采用 ATMEL 公司 AT89S52 单片机组成的自动扶梯微机控制器[2],并用Proteus 软件进行仿真测试 本控制器设有 8 个输入点和 6 个继电器输出点 每路输入通道均由光电耦合器和斯密特触发器组成光电耦合器用作内外隔离,以提高抗干扰能力;二级斯密特触发器用来消除开关抖动还设有 LED(发光二极管) ,用来指示输入点的状态当外接输入开关闭合时 LED亮,断开时则灭 8 个输入信号分别来自:曳引机抱闸状态开关( sabo) ;上端急停按钮( SBSTP-U)和下端急停按钮( SBSTP-D) ;运行、检修状态开关( sa2) ;上端按钮(钥匙开关, sast) ;下端按钮(钥匙开关, sbst) ;扶手带监视投入开关( sa1) ;扶手带信号( 2 个输入点) 。
6 个输出继电器分别用于控制:上行接触器( kmu) ;下行接触器( kmd) ;星形启动接触器( kms) ;三角形运行转换器( kmt) ;抱闸接触器( kmb) ;梯级照明接触器( kal) 具体电气控制线路见图 2 所示 图 2 电扶梯控制原理图 图 2 电路上电后,如安全回路全部正常,则安全回路继电器( kc)吸合 sa2 打在运行位置时,转动 sbst,使扶梯上行或下行, kmb 吸合;随后, kal、 kmu 或 kmd 和 kms 吸合约 5s 后, kms 释放, kmt 吸合,完成星形 /三角形转换,扶梯进入正常运行状态在运行状态下,计算机随时都在对抱闸状态和扶手带状态( sa1 闭合时)进行监视一旦有异常,便马上使扶梯停止 图 2 中各输入、 输出点与单片机的引脚对应为: sahg1----P1.0, sahg2----P1.1, sa1----P1.2,up----P1.3, down----P1.4, serv----P1.5, kc----P1.6, sab0----P1.7; kal----P3.0, kmb----P3.1,kmt----P3.2, kms----P3.3, kmd----P3.4, kmu----P3.5。
3. 程序编制和汇编 我们在进行应用程序设计中,充分利用了 51 系列单片机所特有的布尔处理器的功能,使有关逻辑运算都在微处理机上圆满实现这样,简化了程序设计,加快了运算速度其中着重对扶梯的运行状态、抱闸状态和扶手带速度等信息进行随时监视当扶梯启动时,抱闸只有处在释放状态方能进行,否则不会启动而在正常运行过程中,抱闸一旦意外释放,扶梯便会立即停止当扶手带带速监视投入时,只有带速超出允许范围,扶梯就会停止运行同样安全回路有异常,扶梯也会停止 依照上述要求,编制的源程序如下: ;电扶梯单片机控制程序 sahg1 bit p1.0 sahg2 bit p1.1 sa2 bit p1.2 ;扶手带监视 up bit p1.3 down bit p1.4 serv bit p1.5 kc bit p1.6 brak bit p1.7 kal bit p3.0 kmb bit p3.1 kmt bit p3.2 kms bit p3.3 kmd bit p3.4 kmu bit p3.5 auto bit p3.6 s_t bit p3.7 statu bit 2dh.0 mid bit 2dh.7 org 0000h ljmp start org 0040h start: setb kal setb kmt setb kms setb kmd setb kmu setb kmb clr statu clr mid main: mov c,kc ;kc状态检测 lcall delay orl c,kc jc start mov c,statu ;抱闸状态检测 anl c,/brak mov mid,c mov c,brak anl c,/statu orl c,mid orl c,/serv jnc start mov c,sahg1 ;扶手带状态检测 anl c,sahg2 orl c,sa2 jnc start jb statu,main jnb serv,serv1 jnb up,oper1 jnb down,oper2 jnb auto,tt ljmp main serv1: jnb up,d1 jnb down,d2 jb sa2,d3 setb kmu setb kmd setb kms setb kmt setb kmb ljmp main d1: clr kmb ;上行 jb brak,d1 clr kmu clr kms ljmp main d2: clr kmb ;下行 jb brak,d2 clr kmd clr kms ljmp main d3: clr kal setb kmu setb kmd setb kms setb kmt setb kmb ljmp main oper1: lcall delay5ms nop clr kmb jb brak,oper1 clr kmu nop lcall st setb statu ljmp main oper2: lcall delay5ms nop clr kmb jb brak,oper2 clr kmd nop lcall st setb statu ljmp main tt: lcall delay lcall delay lcall delay clr kmb jb brak,tt clr kmu lcall st setb statu ljmp main delay5ms: nop nop nop ret org 0800h st: clr kms clr kal lcall delay lcall delay lcall delay setb kms clr kmt ret org 0a00h delay: mov r2,#28h leo: nop nop nop nop djnz r2,leo ret end 源程序的汇编在 Keil C 中进行。
打开 Keil C 软件,新建“电扶梯”项目;再新建“电扶梯源程序”文件,将上面的程序录入;把该文件添加到“ Source Group 1”中;在“ Project”菜单下“ Options for Target ‘ Target 1’ ”中的“ Output”和“ Debug”两个标签页上进行设置,如图 3 所示;点编译按钮建立目标文件,得到“电扶梯 .hex”文件[3] (a) Outup 标签页 (b) Debug 标签页 图 3 Keil C 中设置 4. 仿真电路绘制和绑定 为了观察清晰,绘制电路仿真时我们省去了输入通道的光电耦合器和斯密特触发器,并把控制电路分成三个部分绘制第 1 部分是控制操作和控制输出界面,如图 4( a)所示;第 2 部分为单片机基本系统,如图 4( b)所示;第 3 部分是继电器接口部分,如图 4( c)所示 图 4( a)控制操作和控制输出 图 4( b)单片机基本系统 图 4( c)继电器接口 仿真电路绘制完成后, 用鼠标左键双击 U1“ AT89S52” 添加目标程序 点 “ Program Film:”右侧文本框内的文件夹图标,找到“电扶梯 .hex”文件后点“打开”按钮加载目标程序,如图 5 所示。
图 5 加载目标程序 5. 仿真操作 在图 6 所示仿真工作界面上,将控制操作开关打在如图 4( a)所示位置,再用鼠标左键单击下面仿真控制开关 “运行” 按钮进入仿真状态 将开关 “ SBST” 或 “ SAST” 打到 “ P13” 位置,扶梯上行起动;打在“ P14”位置,扶梯下行起动当发光二极管发光时说明抱闸释放,此时用鼠标左键单击“ SAB0”开关,使其闭合表示抱闸已释放电路进入 Y→Δ转换,转换完成后进入正常运行状态, 如图 7 所示; 图中非黑色发光二极管表示该继电器吸合状态,黑色发光二极管表示该继电器在释放状态把“ SBST”或“ SAST”开关恢复到原位 图 6 仿真工作界面 图 7(a) 扶梯上行状态 图 7(b) 扶梯下行状态 要停止扶梯运行时,直接点击开关“ KC”或“ SAB0”即可要投用扶手带监视时,只要点“ SAHG1” 、 “ SAHG2” 、 “ SA2”使其闭合,此时“ SAHG1”或“ SAHG2”中有一个断开,扶梯便停止运行 6. 结束语 英国 Labcenter electronics 公司研发的 EDA 工具软件 PROTEUS,确实是开发单片机应用系统进行代码调试与仿真、系统测试的良好平台。
Proteus 为我们建立了完备的电子设计开发环境!尤其重要的是 Proteus Lite 可以完全免费,也可以花微不足道的费用注册达到更好的效果这对提高产品开发效率,降低开发成本等有着非常重要的作用这里有一点需强调:在编制供仿真的应用程序中如用到延时程序,则延时量不能与实际相同,只需用几个NOP 指令即可 参考文献 [1]陈玉红 ,陈洁 . 8051 系列单片机仿真工具简介及应用 [J]. 电子世界 ,2008,12:P24~ P26. [2]陈洁 ,沈洪 . 用 AT89C2051 单片机控制自动扶梯 [J]. 电子工程师 ,1999,4: P35~ P36. [3]陈洁 . 一款适合课堂教学的简易单片机实验开发器 [J]. 电子世界。
