摘要:为了更好地知道电梯、验证个人编制的电梯调度算法及操控程序,开发一套根据USB单片机(CY7C680013A)的模仿电梯渠道,合作下位机软件及上位机软件,完成电梯的部分功用如:轿厢内呼梯、轿厢外呼梯、电梯毛病报警、电梯情况信息显现、电梯在线调试等。
电梯是近代物质文明开展的产品,是科技进步的结晶。作为一种笔直运输工具,电梯现已融入到了人们日常日子傍边。截止到2010年末我国在运转电梯近170万台,从事与电梯有关工作人员近百万。电梯是一套杂乱的机电一体化产品,其涉及到机械工程技能、电力电子技能、嵌入式技能、网络技能、软件技能以及土建工程等多个学科领域。如此杂乱的体系关于一个初学者来说具有很大的困难,因而有必要开宣布一套简易仿真体系来激起学生的爱好,发挥其主观能动性,进一步深化其关于电梯的知道。本文经过建立模仿电梯硬件渠道,开发下位机软件及上位机使用程序来完成电梯的各种功用。
1 硬件电路规划
本体系选用CYPRESS公司的USB操控器CY7C680013A作为主操控器,该芯片是一款低功耗、高集成度契合USB 2.0标准的集成51核的微处理器芯片。经过步进电机的正转、回转和中止来代表电梯的上升、下降和暂停;用液晶显现屏来显现体系情况信息,如当时电梯楼层、体系时刻、确诊信息、调试信息等;使用蜂鸣器来模仿电梯开关门的提示声。体系结构图如图1所示。
1.1 CY7C680013A的介绍
CYPRESS的EZ-USB FX2LP (CY7C680013A/14/15/16A)是一款低功耗,高集成度契合USB2.0标准的单片机。
FX2LP具有能够自界说功用的通用可编程接口(GPIF),其首要特色包括高集成度:集成USB 2.0收发器,增强型8051微处理器以及16KB的片上程序/数据存储器;接口丰厚:具有I2C/USART/GPIF等,其功用结构图如图2所示。
1.2 供电及复位电路
为了满意体系低功耗的要求,该51单片机选用3.3 V的供电电压。因为体系无外接电源,故需对来自USB总线的5 V电压进行转化。体系选用ANALOG DEV%&&&&&%ES公司的ADP3309线性电压转化芯片进行电压改换,其接口电路如图3所示。
本体系经过RC网络直接衔接到CY7C680013A的RESET引脚上进行复位操作,如图4所示。须确保复位时刻常数>5 ms。根据RC滤波电路时刻常数计算公式t=R*C,可得t=R*C=10 E3*1.0E-6=10.0E-3=10 ms>5 ms,满意体系复位操作要求。
1.3 LCD接口电路
本体系LCD显现选用了3.3 V供电的液晶模块。串行接口使得对处理器的端口要求大大下降,献身的仅仅是少数的体系占用时刻,但对要求不是很高的场合这种占用能够疏忽不计。液晶的接口引脚包括了供电、I2C接口以及背光接口。如图5示为液晶接口电路。
图5中的符号CS、SCL、SDA、LED别离表明片选信号、时钟信号、数据和背光开关。从图中能够看出,液晶占用了很少的IO资源,缓解了单片机资源严重的情况。一切的操控时序均由软件模仿发生。
1.4 步进电机电路
步进电机是一种能够将电脉冲信号转化成角位移或线位移的开环操控组件。在非超载的情况下,电机的转速和中止的方位只取决于脉冲信号的频率和脉冲个数,而不受负载改变的影响,十分适合于微机的操控。当步进电机接收到一个脉冲信号,它就旋转一个固定的视点,此视点被称为“步距角”,其旋转方向与绕组的通电方向有关。操控脉冲个数来决议电机的角位移量,以到达准确定位的意图;一起操控脉冲频率来决议电机的速度,以到达调速的意图。操控器与步进电机的接口使用了专用的电机驱动器,因而衔接简略,编程调试便利。
2 下位机软件规划
体系下位机软件的开发环境为Keil C51,为简化程序开发,进步程序的易读性和可移植性,选用C言语为开发言语,并选用结构化编程进行模块化规划。本体系将整个软件划分为六个模块,其间包括:体系初始化模块、硬件驱动模块、USB数据传输模块、用户自界说指令解析模块、体系监控模块以及电梯调度算法模块。
体系初始化模块的作用是初始化体系的内部资源和外部资源,内部资源包括时钟频率的设定、I2C总线的设定、GPIF功用界说等,外部资源首要包括LCD模块的装备、步进电机驱动器的装备等。经过体系初始化模块的功用界说,确保体系运转在设定情况。
硬件驱动模块归于驱动程序的领域,本固件根据芯片厂商供给典范编写,在大大简化了编程难度的一起进步了程序的可读性和移植性。
USB数据传输模块归于程序的通讯领域,除了关于USB模块的功用装备外,该模块还包括USB数据帧传输的界说、USB指令的解析及完成、USB传输反常的处理及数据重发机制的完成等。
用户自界说指令解析模块的首要功用是解析来自于上位机的指令,如“电梯上升到某层”、“电梯下降到某层”、“电梯中止运转”等。该模块轮询上位机用户指令,而且查询设备情况及用户指令优先级,在满意该指令履行的条件后履行该指令,并将运转情况及成果反应给上位机,或许将错误信息反应给上位机。
体系监控模块归于体系资源管理模块的领域,包括看门狗的复位,定时器的复位,模仿电梯体系运转情况的更新等。
电梯调度算法是本体系的中心。因为中心意图是完成电梯的调度,该算法只考虑电梯主体功用,疏忽超重检测、防夹检测、用户权限辨认等功用,但是在固件中预留该功用的调用,以便日后完善。调度算法统筹公平性和电梯的运转功率,要求电梯遵从时刻优先、顺向优先和最远反向截梯操控准则。
3 上位机使用软件规划
上位机选用VS2010为开发工具,C++为开发言语,选用了面向对象的编程方法进行编程。为了进一步简化编程和进步编程功率,没有选用直接调用Windows API的方式进行代码调用而是选用了MFC(Microsoft Foundation Classes)库进行编程。MFC是一个微软公司供给的类库,以C++类的方式封装了Windows API,而且包括一个使用程序结构,以削减使用程序开发人员的工作量。其间包括的类包括许多Windows句柄封装类和许多Windows的内建控件和组件的封装类。MFC的首要长处是能够用面向对象的方法来调用Windows API,以及使用程序开发的快捷。
上位机模块的首要功用是模仿实在电梯轿厢内、外的按键,用户点击相应楼层按钮后,下位机解析用户指令并经过电梯的正、回转滚动及液晶显现屏等来显现用户指令履行情况,一起将情况及成果等反应到上位机中。上位机的软件运转界面如图6所示。
4 定论
本文规划了一种有用的电梯模仿体系,该体系选用CY7C680013A作为主操控器,外扩液晶显现模块、步进电机和蜂鸣器,能够模仿电梯的各种情况,下位机软件完成了电梯硬件资源的操控及调度。上位机选用VC2010开发,显现电梯楼层按键、电梯运转情况、体系确诊信息等。本体系能够完成大部分电梯的功用,便于初学者把握电梯的相关常识,经过学生的着手实践,进步其软件编制才能和毛病确诊才能,为其将来的开展打坚实基础。