电梯模拟系统分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
讨论设计方案
1 电梯模拟系统需求
采用1个电梯共有8层楼层。 中间层每层有上下两个按钮,最下层只有上行按钮,最上层只 有下行按钮。每层都有相应的指示灯,灯亮表示该按钮已经被按下, 如果该层的上行或者下行请求已经被响应,则指示灯灭(取消响应) 电梯内共有8个目标楼层按钮,表示有乘客在该层下电梯。有指 示灯指示按钮是否被按下。乘客按按钮导致按钮指示灯亮,如果电 梯已经在该层停靠则该按钮指示灯灭。 另有一开门关门按钮。当电梯停在某一楼层后,接受到开、关门信 息就继续运行。如果得不到开、关门信息,等待一段时间也自动继 续运行。 电梯内设有方向指示灯表示当前电梯运行方向。 说明:模拟电梯采用MFC界面设计。
3
系统的调度策略
(1) 调度策略一:
按照排队的方案,把所有的电梯乘坐请求按时间排队,这种设计方 案由于效率低下,明显不合理。
(2) 调度策略二:
在运行控制中所规定的安全前提下,一次将一个方向上的所有呼叫 和目标全部完成。然后掉转运行方向完成另外一个方向上的所有呼叫和 目标。 可以采用设定目标楼层的办法来实现这个策略,即电梯向一个目标楼层 运行,但这个楼层可以修改。[详情]
相关代码实例如下:
void CChap11_1Dlg::OnTimer(UINT nIDEvent) //定时器触发函数 { CClientDC dc(this);//获取当前窗体对象相关的设备上下文 ........................................................................ if(point[0].y==point[Floor].y&&m_arrive==TRUE) {
电梯模拟程序设计方案 --战狼团
队长 :陈帅 报汇人:张翰林
电梯模拟程序设计模块
1 电梯系统需求 2 3 4 5
电梯系统需求分析 系统调度策略 电梯系统演示 系统设计人员分工信息
活动展开流程
各小组查阅资料,熟悉 设计需求
汇总各组结果,执行 设计
Stp 1
Step 2
Step 3
Setp 4
分大组为小组,细化分工
二、相关程序具体说明
界面设计与相关楼层信息: 1. 界面设计选用黑白色来进行图形的绘制与填充,没有过多的 颜色加以渲染,程序核心是使用定时器,每个一定时间,触发器响 应厨房定时器函数,从而来控制电梯的移动。 2. 楼层信息是系统自动产生,无需人为输入,电梯运行也是自 动的,限于时间与相关的能力问题,目前只做到单人出入电梯,并 没有实现多人出入电梯的情况。
4
(1) 电 梯 电 路 模 型 设 电路模型说明 :
采用了两部电梯,分别用左右两排黄灯表示,黄灯亮表示当前电 梯位置,中间蓝灯亮表示对应楼层有人等待(蓝色灯为随即点亮)。
2.实际运行效果为:
按照前面规定的调度规则,去响应请求,模型的效果为依次点亮 电梯经过处相应的LED灯,时间间隔为3S,然后到达目标楼层,持 续点亮当前楼层对应的灯,表示电梯停止等待,随即灭掉所在楼层 对应的蓝色LED灯,表示人进入电梯。然后电梯继续运行到目标楼 层,持续点亮当前楼层对应的灯。表示电梯停止,再点亮对应楼层 的蓝色LED,蓝色灯亮2S,然后灭掉,表示人离开电梯。若其他楼 层没有请求,则电梯停在当前位置,表示为该楼层对应的LED所代 表的电梯一直亮,直到再去响应请求。
一.修改目标楼层的策略: A.如果电梯运行方向向上,那么如果新到一个介于当前电梯所处楼层和目标楼层之间,又 可以安全到达的向上呼叫或者目标,将目标楼层修改为这个新的楼层。 B.如果电梯运行方向向下,那么如果新到一个介于当前电梯所处楼层和目标楼层之间,又 可以安全到达的向下呼叫或者目标,将目标楼层修改为这个新的楼层。 二.确定新的目标楼层策略: A.如果电梯向上运行,当它到达某个目标楼层后,则依照以下顺序确定下一个目标楼层: a.如果比当前层高的楼层有向上呼叫或者目标,那么以最低的高于当前楼层的有向上呼叫 或者目标的楼层为目标。 b.如果无法确定目标楼层,那么以最高的向下呼叫或者目标所在楼层为电梯当前目标楼层。 c.如果无法确定目标楼层,那么以最低的向上呼叫所在楼层为电梯当前的目标楼层。 d.如果仍然不能确定目标楼层(此时实际上没有任何呼叫和目标),那么电梯无目标,运 行暂停。 B.如果电梯向下运行,依照以下顺序确定下一目标楼层: a.如果比当前层低的楼层有向下呼叫或者目标,那么以最高的低于当前楼层的有向下呼叫 或者目标的楼层为目标。 b.如果无法确定目标楼层,那么以最低的向上呼叫或者目标所在楼层为电梯当前目标楼层。 c.如果无法确定目标楼层,那么以最高的向下呼叫楼层为目标楼层。 d.如果仍然不能确定目标楼层(此时实际上没有任何呼叫和目标),那么电梯无目标,运 行暂停。
4
(2)
MFC
电梯系统的演示
运行程序
电 梯 模 拟 系 统 界 面 设 计
具体实现的MFC效果图如下 :
运行程序
程序设计基本介绍
程序设计语言:MFC 程序界面模式:基于对话框的程序界面 核心模块:定时器的使用 程序设计思想: 图像的绘制与覆盖(模拟电梯运行效果)
整体设计思路:
1 考虑到实际电梯运行过程不需要人为控制,所以本程 序在电梯运行之后,就不需要人为来控制,当然,为了防止 突发情况,设置了强制电梯停止运行的按钮,不过这个按钮 只有在电梯总控制室才能使用,是由电梯控制人员来控制。 2 因为时间有限,目前程序实现中还没有考虑电梯多人 情况,一次只能上去一个人,到目标楼层后,会有另外的楼层 发出搭乘信息,电梯在运行到该楼层,继续将乘坐人员送到目 标楼层。 3 程序是使用定时器来控制运行,没到先赢的楼层后,会 停顿1.5秒等待人员上下电梯,完毕之后继续下一人员搭乘。
2
电梯模拟系统需求分析
1.电梯的初始状态是电梯位于第一层处,所有按钮都没有按下。
2.乘客可以在任意时刻按任何一个目标钮和呼叫钮。呼叫和目标 对应的楼层可能不是电梯当前运行方向可达的楼层。(每个楼层出现的 乘客数量,以及所要到达的目标楼层的方向是随机产生的) 3.电梯系统依照某种预先定义好的调度策略对随机出现的呼叫和目 标进行分析和响应。 4.乘客数量,电梯加速减速等外界因素(可能导致停靠时间的长短 变化)不予考虑。假设电梯 正常运行一层的时间是3S,停靠目标楼层、 上下乘客和电梯继续运行的时间是3S。