- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE / NUMPAGES
模拟电梯的设计与实现
一、实验目的
1.了解电梯调度算法。
2.利用微机实验系统来模拟电梯。
3.进一步掌握微机接口的设计方法。
二、实验内容与要求
1.设计基本要求
用键盘、按钮、发光二极管和 LED显示单元来模拟电梯工作过程。楼层设为 5 层,用键盘键入希望停的楼层, 5 个 发光二极管显示希望停的楼层,LED指示电梯当前所在楼层,按钮用来启、停电梯。电梯正常运行时以每 2 秒1层的速度上升或下降。
2.提高要求
设计几个按钮,模拟更多的电梯运行功能,如:
?? 直达按钮。若按此按钮,电梯按直达方式运行,即对运行期间新键入的停靠楼层即使是同方向未到楼层)亦不停,直达终点楼层;
?? 急停按钮。电梯运行中,若按此按钮,则电梯立即停在下一到达的楼层;
?? 断电待修按钮。按下该钮电梯不能工作,再按一下才能重新工作;
?? 其它功能按钮由设计者自由发挥)。
三、实验报告要求
1.设计目的和内容
2.总体设计
3.硬件设计:原理图接线图)及简要说明
4.软件设计框图及程序清单
5.设计结果和体会包括遇到的问题及解决的方法)
四、电梯的工作方式
电梯工作按以下方式运行:
1.假设当前电梯停在某层LED显示相应楼层, 5个发光二极管全灭)。键入数字键,如键入的数字与当前电梯停靠层相同,则什么也不做,若不同则相应楼层的发光二极管亮;电梯自动判别上升或下降在运行过程中用八段码来显示楼层变化)一直到达希望停的楼层八段码显示该楼层,相应 LED 灭)。
2.假设当前电梯正在上升或下降运行此时八段码显示楼层变化, LED 指示希望抵达的楼层),若键入新的希望停靠的楼层数字相应的 LED 亮),则对同方向上升或下降)未到的楼层能停靠,对其它情况则先停靠原先希望停的楼层,然后继续运行)。
如下几例:
设电梯当前在 2层,向上运行,LED指示希望在4层停,此时若键入3,则电梯将在3楼停,然后继续运行至4层停;
同上情况,若键入的不是 3而是5,则电梯将先停在4层,然后运行至5层停;
同上情况,若键入的不是 3或5),而是1,则电梯先停在4层,然后运行至1层停。
五、总体设计思路
本设计主要是利用微机应用实验平台来模拟电梯的运行,用到了平台上的一个非编码键盘、LED显示器、八段数码管等模块。
有5个楼层,需要用5个按键模拟电梯中的请求按钮,用5个按键模拟5个楼层每层向上请求的按钮,再用5个模拟5个楼层每层向下请求的按钮。非编码键盘有16个键,可以用1-5号键模拟电梯内的按钮,用6-0号键模拟每层向上请求的按纽,A-E模拟每层向下请求的按纽。
当电梯静止状态时,无论外部哪一层有请求,电梯都由静止状态转入向上或向下运行的状态,直到到达请求的楼层;当电梯处于向上运行的状态时,此时高于该楼层向上的请求和内部请求级别最高,其次是所有楼层向下的请求,再次是低于该楼层向上的请求;当电梯处于向下运行的状态时则情况相反。
由于中断级别在随着电梯所处楼层的不同而变化,而且中断源比较多。所以用每一个中断源直接和中断控制器相连,需要用到多个8259A级联,很不方便。为解决这个问题,首先定义三个单字节变量REQ_U、REQ_D和REQ_IN分别存储电梯每一层向上、向下和内部的请求,每一个变量用低5位,每一位代表一层。例如,REQ_U为,这代表在2层和3层有向上的请求。8253定时器每隔20ms产生一次中断,中断程序便去执行扫描键盘,当扫描到有电梯内部或者外部按键时,将请求存储到变量中。每到一个状态时再检查请求变量REQ_U、REQ_D和REQ_IN的值,根据电梯的运行方向和变量中的请求,来决定电梯下一步的运行。
设电梯的当前楼层为floorfloor=1~5),运行方向为dirdir=0,向上;dir=1,向下),在电梯运行的工程中,用数码管输出floor值显示当前的楼层。LED输出REQ_IN的值显示电梯内已经请求的楼层。
六、系统硬件电路设计
由于采用了PC机资源和微机实验平台,不需要其他的硬件电路。利用了微机平台上的8253定时/计数器、8255并行接口单元、LED单元、非编码键盘、数码管显示单元等等。
系统结构框图,如图1所示。
Q6
Q6
IRQ2
5V
clk0
GATE0
OUT0
A口
8255
B口
C口
LED显示
模块
CS0
CS1
CS2
CS3
5个发光二极管
非编码键盘
片选
图1 系统结构框图
主要的模块如下:
1.可编程定时/计数器8253
定时/计数器8253主要是用于定时20ms,触发中断进行键盘扫描。电路连线是CLOCK0接Q6,分频后频率为46875Hz,OUT0接中断IRQ2,
原创力文档


文档评论(0)