基于USB单片机的模拟电梯设计与实现
摘要:为了更好地认识电梯、验证个人编制的电梯调度算法及控制程序,开发一套基于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 DEVICES公司的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传输异常的处理及数据重发机制的实现等。
用户自定义命令解析模块的主要功能是解析来自于上位机
模拟电梯 CY7C680013A 调度算法 故障诊断 在线调试 相关文章:
- 基于人工免疫算法的变压器故障诊断方法(11-11)
- 基于人工智能和现代信息信号处理的模拟电路故障诊断(02-28)
- 容差模拟电路软故障诊断的小波与量子神经网络方法(04-17)
- 仪器仪表电路十大故障诊断方法(03-22)
- GEP在变压器故障诊断中的应用(03-17)
- SignalTapII ELA的FPGA在线调试技术(05-28)