智能电梯控制器的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子技术课程设计报告
智能电梯控制器的设计
班级自动化1306
学号
姓名
日期2016-6-20
目录:
一.课程设计题目 (3)
二.问题分析 (4)
1.方向优先的电梯调度 (4)
2.电梯的状态 (4)
3.状态编码方案 (4)
三.状态机 (5)
四.系统输入与输出 (6)
五.系统框图与系统设计 (7)
1.系统框图 (7)
2.系统设计 (8)
六.波形仿真 (9)
1.请求处理 (9)
2.状态转换 (10)
3.楼层推进 (11)
4.电梯运行的优先级 (12)
5.复位信号reset (13)
6.锁定禁止运行按键forbid (13)
七.程序源代码及注释 (14)
八.引脚分配 (26)
六.心得与体会 (27)
一.课程设计题目
设计内容与要求:
①楼层的高度大于等于6,根据降低运行成本的原则,设计并实现
一个以方向优先电梯调度算法。
②要求能够使用按键模拟对电梯的控制,为了便于观察,将电梯所在
的楼层(1~6)用数码管显示出来,将电梯的上下楼状态(上,下,开
门,关门,静止)用发光管或数码管显示出来,并且能够实现对电
梯实现锁定禁止运行。
③画出电梯控制器的状态机,写出状态编码方案。
④用Verilog语言对设计进行描述,并下载到实验板上调试成功,适
当增加比较符合现实的控制限制。
⑤写出设计性实验报告,并打印各层次的源文件和仿真波形,然后
作简要说明。并谈谈此次实验的收获、感想及建议
二.问题分析
1.方向优先的电梯调度
电梯有三种运行状态,分别是上升、下降和静止等待。
出于降低成本的考虑,电梯在某一方向运行时,要完成该方向上所有的请求后,才能变换运动方向去响应反方向的请求。
电梯上升时,优先响应电梯现在楼层以上楼层的上升、下降和楼层选择信号;电梯下降时,优先响应电梯现处楼层以下楼层的上升、下降和楼
层选择信号;电梯处于等待状态时,响应收到的第一个请求信号。
因此,电梯运行方向的判断要综合考虑三种请求信号、电梯当前所处楼层和电梯当前的状态等多种因素。
2.电梯的状态
电梯运动过程中,有五种基本状态:上升,下降,开门,关门,静止。
考虑到电梯停止在某一楼层等待请求信号的状态为静止状态;另外,电梯运动过程中暂时停靠在某一楼层,开门后需要等待一段时间,这段时
间电梯也没有动作,这时电梯也是“静止”状态。若只用一个状态表示两
种不同的静止情况,需要增加一个电梯的“开/关门标志”来区分两个“静
止”状态。
因此,为了简化逻辑,在5个基本状态的状态编码中增加一个状态,用一个新状态(OPENWAIT)来表示开门情况下的静止状态。
最终,电梯的状态机中共有6个状态。
3.状态编码方案
从数字电路设计的理论课中,我们学到,在进行状态编码时,若系统中存在多个状态,为了增强系统的稳定性。可用二进制位数与状态数相同
的变量来表征系统状态。
因此,电梯的状态用一个6位的二进制数currentstate[5:0]来表示。
6个状态分别编码为:
STATIC=6'b000001,
UP=6'b000010,
DOWN=6'b000100,
OPEN=6'b001000,
CLOSE=6'b010000,
OPENWAIT=6'b100000;
这样,每次状态发生变化时,只用检测状态变量中的的某一位二进制数即可知道电梯处于哪一状态。如要检测电梯是否处于OPEN开门状态,
只需检测currentstate[3]是否等于1即可。
三.状态机
电梯的状态机如上图所示,由于电梯状态转换时的判断条件过于复杂,在此不予列出。
四.系统输入与输出
五.系统框图与系统设计
1.系统框图
2.系统设计
六.波形仿真
1.请求处理
(1)楼层请求处理
此时floorsel=6,request_button有一个脉冲信号,表示电梯有人要去6楼,因此request_out[5]保持置位,电梯到达5楼时,请求完成,request_out[5]被清零。
(2)上升请求处理
此时floorsel=5,up_button有一个脉冲信号,表示5楼有人要上去,因此up_out[4]保持置位,电梯到达5楼时,请求完成,up_out[4]被清零。
(3)下降请求处理
此时floorsel=6,down_button有一个脉冲信号,表示6楼有人要下去,因此down_out[5]保持置位,电梯到达6楼时,请求完成,down_out[5]被清零。
2.状态转换
(1) 上升过程
图中floorsel=3时,up_button有脉冲信号,表示3楼有上升请求。电梯开始时静止在1楼,接收请求信号后,状态由1(静止)变为2(上升),到达目标层的3楼,状态变成4(开门),开门后状态变成6(开门静止),经过3个时钟周期,状态变为5(关门),因为没有新的请求,电梯状态保持为1(静止)。
(2)下降过程
图中电梯在6楼的时候,接收到1楼的上升请求信号,电梯执行下降动作。
电梯开始时在6楼,接收请求信号后,状态由5(关门)变为3(下降),到达目标层的1楼时,状态变成4(开门),开门后状态变成6(开门静止),经过3个时钟周期,状态变为5(关门),因为没有新的请求,电梯状态保持为1(静止)。
3.楼层推进
电梯首先接收到2楼的上升请求信号,然后电梯上升到2楼,停止在2楼的过程中又接收到6楼的下降请求,因此电梯又上升到6楼。停止在6楼的过程中又接收到4楼的上升请求,电梯又接着下降到4楼。