电梯自动控制系统设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
上 海 理 工 大 学 计算机科学与工程系 实 验 报 告 实验名称:电梯自动控制系统设计 课程名称:微机与接口课程设计 姓名:张德臻 学号:0722020117 日期:2010-7-6 地点:学院机房 组员:原彧鑫、张德臻 教师:张幸 一、实验要求 设计一个电梯自动控制系统,由电机驱动控制系统,1路A/D输入,12个按键,4个8段的LED显示器,8个LED指示灯,1路声控报警系统组成。4个8段的LED显示器,8个LED指示灯及12个键盘作为控制系统的控制台设计,以提供人机交互, 控制电机的停启。1路模拟输入主要对电梯中人员重量进行控制,若超重,电梯停止运行,并提示报警。 电梯运行按现实电梯运行规则实现。 二、设计方案 实验结构示意图 软件设计流程图 实验使用AEDK-DJ6机电实验平台以实现8段数码管显示、步进电机的控制,通过使用两片8255芯片来分别操作各个设备,电梯按键输入非编码键盘,所以键盘操作的去抖动、防串键、按键识别和键码产生4个基本功能都有软件来完成,键盘程序分2部分,一个是键盘扫描程序,主要完成扫描键盘上是否有键按下,另一个是键处理程序,用于完成对各个按键的处理。重量检测部分使用0809数模转换芯片完成,在本实验中,出于简化硬件设计和便于调试的考虑,采用电位器模拟质量感应设备。 本系统可以划分的任务模块为以下: 初始化子程序:只在程序的最开始运行一次,负责电机归0,8255初始化,变量初始化等操作。 八段管显示子程序:根据当前显示缓存的值,通过查询码表显示对应的字符,同时本程序也兼具延时功能。 LED指示子程序:控制台上有8个LED指示灯,用来指示当前那个楼层有请求的需要,在内存中开辟8个单元,每个单元表示对应的楼层的请求情况,当该单元的值为0,表示该楼层没有请求,当该单元的值为0FFH,表示该楼层有请求,子程序根据楼层的请求而点亮或熄灭对应的LED指示灯 键盘处理子程序:对控制台命令监听,所以是程序主要核心,该程序包含2部分,一个是键盘扫描子程序,主要完成扫描键盘上是否有键按下,另一个是按键处理程序,用于完成对各个按键的处理,键盘分数字键和功能键。键处理程序仅记忆/修改程序的相关状态变量,具体操作的执行则在相关的执行程序里完成。 电机控制子程序:根据相关的楼层请求、运行状态制定出相应的电机运行策略,设置相应的参数交由电机走拍程序 电机走拍子程序:控制电机的实时运转,根据方向按拍表的内容走步,由既定的步数走到相应的楼层,根据请求表,做相关的处理。 重量检测子程序:通过对ADC0809 的模拟量检测,滤波(采集8次求平均值)判断是否超重(模拟量的大于4.5V),如超重,则进行相应的错误处理(该子程序不在主流程中,在关门按键按下时调用一次) 关于方案改进: 实时系统中尽量少软件延时,本系统中键处理中防抖动,步进电机拍与拍之间间隔都用了软件延时,用此方法因为系统实时性并不高,只有控制台键盘输入,但软件延时会影响显示,所以延时的地方用调用显示来完成,这样延时的精度会受影响,改进的方法就是用定时中断,可使用8253,8259来完成,特别是步进电机的走步程序,如按此方案,走步程序就在中断服务程序里完成,同时可根据步进电机的特性,走出升降曲线,使电机控制在更佳状态。 源程序代码 DATA SEGMENT ;数据段 KCROW DB 0 ;键盘扫描 行设置 KEYID DB 0 ;键值 DRSTAT DB 0FFH ;电机开关门状态(0表示开门,0FFH表示关门,1表示走拍) ALARM DB 0 ;电机故障指示 (0无故障,0FFH有故障) FLOOR DW 1 ;电机当前运行的楼层 DIRECT DB 0 ;电机运行方向 (0表示正走,0FFH表示反走) STEP DB 0 ;电机在走拍程序中4拍的位置 STPNUM DW 0 ;电机走拍次数 STPTAB DB 08H,04H,02H,01H ;拍表 FLRQ DB 8 DUP(0);楼层请求 (0无请求,1有请求) DCACHE DB 4 DUP(0FH);显示缓存 (4个字节) ;LED段码表 LCODE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;[0123456789] 000H~009H DB 79H,50H,73H,37H,5CH,00H ;[ErPNo ] 00AH~00FH ;8255(1)端口定义 A键盘输入 B片选输出 C屏幕输出 PA1 EQU 208H PB1 EQU 209H PC1 EQU 20AH P1CTL EQU 20BH ;8255(2)端口定义 A电机输出 B LED输出 PA2 EQU 218H PB2 EQU 219H PC2 EQU

文档评论(0)

14576 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档