电梯运行模拟状态——微机原理课程设计
微机综合课程设计,模拟电梯控制系统

data segmentioport equ 0ec00h-0280hio8253a equ ioport+280h;0计数端口计数为10000,方式3io8253b equ ioport+281h;1计数端口计数为200,方式0io8253c equ ioport+283h;8253控制端io8255a equ ioport+288h;8255控制端以及a,b,c端口地址io8255b equ ioport+289hio8255c equ ioport+28ahio8255 equ ioport+28bhproth equ ioport+290h;点阵灯显示,行阵protlr equ ioport+298h;点阵灯显示,列阵number db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh;七段码min db 00h,01h,02h,03h,04h,05h,06h,07h;点阵的行buff1 db 10h,30h,7fh,0ffh,0ffh,7fh,30h,10h;向上箭头buff2 db 08h,0ch,0feh,0ffh,0ffh,0feh,0ch,08h;向下箭头menu db '************************************************',0DH,0AH db '* elevator procedures *',0DH,0AH db '* 8253cs~280h 8255cs~288h *',0Dh,0Ah db '* lightrow~290h lightred~298h *',0Dh,0Ah db '* 数码管s0---0 s1-----5V *',0Dh,0Ah db '* pa0~pa6-----a~g pb0-pb7-----led0~led7 *',0Dh,0Ahdb '* out1--------pc0 gate0&&gate1--5V *',0Dh,0Ah db '* clk0---1MHZ clk1---out0 *',0Dh,0Ah db '* *',0Dh,0Ahdb '* 08008XXX by XXXXXXXX *',0Dh,0Ahdb '************************************************',0Dh,0Ahdb '1~8------1 ~ 8floor!',0DH,0AHdb 'esc----------exit!',0DH,0AHdb 'enter--------run!',0DH,0AHdb 'a------------go directly!',0Dh,0Ahdb 'b------------emergentstop!',0Dh,0Ahdb 'c------------elctricityfix!',0Dh,0Ah,'$'data endsstacks segment stackdb 100 dup (?)stacks endscode segmentassume cs:code,ds:data,ss:stacksstart:mov ax,data;初始化mov ds,axmov dx,offset menu;打印菜单,说明硬件电路的连接等mov ah,09int 21hmov dx,io8255;8255初始化,a、b输出,c口输入mov al,89hout dx,almov bl,31h;bl代表当前电梯所在楼层,初始值设为1main: mov al,0call shownumber;显示当前楼层mov cl,0;cl为第一次输入的要去的楼层mov ch,0;ch为在中途中再次输入的要去的楼层call showledmov ah,01;通过键盘输入第一次要去得楼层clint 21hcmp al,1bh;是esc则退出je exitcmp al,31h;键入的数字是否在1-8之间,如不是重新输入jl maincmp al,38hjg mainmov cl,alcall showled;8个led灯显示cl对应的楼层cmp cl,bl;cl与bl比较je main;相等则返回重新输入jg up;大于则向上运行jl todown;小于则向下运行exit: mov ah,4chint 21h;---------------------------------------------------------------------------------电梯上行up: call panduan;电梯上行的情况up1: add bl,1call updelay;调用向上运行延时子程序,出现向上的箭头call shownumber;调用显示子程序,通过数码管显示当前楼层blcmp bl,cl;bl,cl不等则继续je main;相等则返回jmp up1upgetch:mov ah,1;在上升过程中如果有其他的键按下时int 21hcmp al,62h;判断是否为急停键bje jitcmp al,63h;判断是否为断电待修键cje noelccmp al,31h;数字是否在1-8之间如不是继续上行jl gotoupcmp al,38hjg gotoupmov ch,alcall showledcall delayupcall shownumbercall clequbl;判断当前楼层与第一次要去的楼层是否相同cmp ch,bl;比较ch与bl的区别je stopupcl;相等则在该层停,等待运行信号输入jl upcldownch;ch小于bl则先上行至cl在下行至chcmp ch,cl;ch大于bl则在判断ch与cl的大小关系je jmpupcl;相等则一直上行至cljl upchupcl;ch大于bl小于cl则先上行到ch在上行到cljg toupclupch;ch大于cl则先上行到cl在上行到chgotoup: call delayupjmp up1noelc: mov al,0;上升时遇到了断电的情况,则等待键入,除非再次键入的为c才继续运行mov ah,7int 21hcmp al,63hjne noelccall delayupcall shownumberjmp up1jit: call delayup;上升时遇到了急停的情况,则停在下一层,然后回到main call shownumberjmp maintodown: jmp downupdelay proc near;向上运行的延时子程序call delayfirst;用于初始化8253push dxcall dianqing ;调用使其能够清零updelay1:call dianshang;循环调用向上的箭头显示mov ah,1;键盘是否有输入int 16hjne upgetch;如有则跳转到输入处理mov dx,io8255c;8255c口输入,看2s延时是否结束in al,dxand al,01;是否计时结束jz updelay1pop dxretupdelay endptomain: jmp maintoupclupch:jmp upclupch;---------------------------------------------------------------------------------上行中遇到的各种情况列举stopupcl:call shownumber;第二次要去得楼层与当前楼层相同,直接停在该层mov ch,0call showledcall stop2call upcljmp mainupcldownch:call showled;先上行到cl再下行到chcall upclmov cl,0call showledcall stop2call downchjmp mainjmpupcl:mov ch,0;第二次要去的楼层与第一次要去的相同,直接上行到第一次要取得楼层call showledcall upcljmp mainupchupcl:call showled;同方向的楼层,先上行到ch再上行到clcall upchmov ch,0call showledcall stop2call upcljmp mainupclupch:call showled;同方向的楼层,先上行到cl再上行到chcall upclmov bl,0call showledcall stop2call upchjmp mainjittt: jmp jit;----------------------------------------------------------电梯下行,与电梯上行的情况基本类似,稍作修改即可down: call panduandown1: sub bl,1call downdelaycall shownumbercmp bl,clje tomainjmp down1downgetch:mov ah,1cmp al,62hje jit1cmp al,63hje noelc1cmp al,31hjl gotodowncmp al,38hjg gotodownmov ch,alcall showledcall delaydowncall shownumbercall clequblcmp ch,blje stopdowncljg downclupch;ch大于bl则先下行至cl在上行至chcmp ch,cl;ch小于bl则在判断ch与cl的大小关系je jmpdowncl;相等则一直下行至cljl downcldownch;ch小于bl小于cl则先下行到cl在下行到chjg todownchdowncl;ch大于cl则先下行到ch在下行到clgotodown:call delaydownjmp down1noelc1: mov al,0;下降遇到了断电的情况,则等待键入,除非再次键入的为c才继续运行mov ah,7int 21hcmp al,63hjne noelc1call delaydowncall shownumberjmp down1jit1: call delaydown;下降时遇到了急停的情况,则停在下一层,然后回到main call shownumberjmp maindowndelay proc near;向下运行延时子程序,与向上运行延时子程序大体相同call delayfirstpush dxcall dianqing;调用使其能够清零ddy: call dianxia;循环调用向下的箭头显示mov ah,1int 16hjne downgetchmov dx,io8255cin al,dxjz ddypop dxretdowndelay endptodownchdowncl:jmp downchdowncl;---------------------------------------------------------------------------------下行中遇到的各种情况列举stopdowncl:call showledmov ch,0call showledcall stop2call downcljmp maindownclupch:call showledcall downclmov cl,0call showledcall stop2call upchjmp mainjmpdowncl:mov ch,0call showledcall downcljmp maindowncldownch:call showledcall downclmov cl,0call showledcall stop2call downchjmp maindownchdowncl:call showledcall downchmov ch,0call showledcall stop2call downcljmp main;--------------------------------------------------------------------电梯上、下行中遇到的各种情况处理方法jitt: jmp jitttclequbl proc near ;判断当前楼层与第一次要去的楼层的关系cmp cl,bljne backje clequchmov cl,0call shownumbercall showledcall stop2cmp ch,bljg upchherejl downchhere upchhere:call upchjmp main downchhere:call downchjmp mainclequch:mov ch,0call showledcall onlydelay;jmp mainback: retclequbl endpupcl proc near;上行到cl的子程序upcl1: add bl,1call dirdelay1call shownumbercmp bl,cljl upcl1retupcl endpjitt1: jmp jit1upch proc near;上行到ch的子程序upch1: add bl,1call dirdelay1call shownumbercmp bl,chjl upch1retupch endpdowncl proc near;下行到cl的子程序downcl1:sub bl,1call dirdelay2call shownumbercmp bl,cljg downcl1retdowncl endpdownch proc near;下行到ch的子程序downch1:sub bl,1call dirdelay2call shownumbercmp bl,chjg downch1retdownch endp;----------------------------------------------------------------------直接上下行时对按键情况的处理stop2 proc near;没有直达键的暂停子程序gostop2:mov al,0mov ah,1int 21hcmp al,13jne gostop2mov al,0retstop2 endpdirgetch1:mov ah,1;直接上行对按键的处理int 21hcmp al,63hje dirnoelc1cmp al,62hje jit21jmp dirback1dirgetch2:mov ah,1;直接下行对按键的处理int 21hcmp al,63hje dirnoelc2cmp al,62hje jit22jmp dirback2jit21: call delayup;call shownumberjmp mainjit22: call delaydown;call shownumberjmp maindirnoelc1:mov al,0;直接上行时遇到了断电待修的情况mov ah,1int 21hcmp al,63hjne dirnoelc1call delayup;call shownumberjmp dirback1dirnoelc2:mov al,0;直接下行时遇到了断电待修的情况mov ah,1int 21hcmp al,63hjne dirnoelc2call delaydown;call shownumberjmp dirback2tojit: jmp jittdirdelay1 proc near;直接上行的延时子程序call delayfirstpush dxcall dianqingdirback1:call dianshang;mov ah,1int 16hjne dirgetch1mov dx,io8255cin al,dxand al,01jz dirback1pop dxretdirdelay1 endptojit1: jmp jitt1dirdelay2 proc near;直接下行的延时子程序call delayfirstpush dxcall dianqingdirback2:call dianxia;mov ah,1int 16hjne dirgetch2mov dx,io8255cin al,dxand al,01jz dirback2pop dxretdirdelay2 endp;----------------------------------------------------------------------直达情况的处理panduan proc near;判断是否为直达键,如果是就直接到达,如果为enter正常执行next1: mov al,0mov ah,1int 21hcmp al,61h;是否为直达键je zhidacmp al,13jne next1mov al,0retpanduan endpzhida: cmp cl,bljl zhidadownjg zhidaupjmp mainzhidadown:call delaydownsub bl,1call zhidadelay2call shownumberjmp zhidazhidaup:call delayupadd bl,1call zhidadelay1call shownumberjmp zhidazhidabutton1:mov ah,1;直达对按键情况的处理,在上升时跳到此处int 21hcmp al,63hje zhidanoelc1cmp al,62hje tojitjmp zhidazhidabutton2:mov ah,1;直达对按键情况的处理,在下降时跳到此处int 21hcmp al,63hje zhidanoelc2cmp al,62hje tojit1jmp zhidazhidanoelc1:mov al,0;上升时遇到断电待修时mov ah,1int 21hcmp al,63hjne zhidanoelc1call delayup;call shownumberjmp zhidazhidanoelc2:mov al,0;下降时遇到断电待修时mov ah,1int 21hcmp al,63hjne zhidanoelc2call delaydown;call shownumberjmp zhidazhidadelay1 proc near;直达延时程序call delayfirstpush dxcall dianqingnext21: call dianshang;mov ah,1int 16hjne zhidabutton1mov dx,io8255cin al,dxand al,01jz next21pop dxretzhidadelay1 endpzhidadelay2 proc near;直达延时程序call delayfirstpush dxcall dianqingnext22: call dianxia;mov ah,1int 16hjne zhidabutton2mov dx,io8255cin al,dxand al,01jz next22pop dxretzhidadelay2 endp;------------------------------------------------------------------------------判断延时是否结束以及8253初始化delayfirst proc near;初始化8253的子程序,两计数器连级,接入1MHZ的脉冲,2s每次第二个out接pc0push dxmov dx,io8253c;8253的计数器0置方式3mov al,36hout dx,almov dx,io8253a;计数器0初始值为10000mov ax,10000out dx,almov al,ahout dx,almov dx,io8253c;8253的计数器1置方式0mov al,70hout dx,almov dx,io8253b;计数器1初始值为200mov ax,200out dx,almov al,ahout dx,alpop dxretdelayfirst endponlydelay proc near;判断延时时是否结束的子程序,注意由于点阵灯的显示要写进循环中,所以分类,该延时仅用于延时push dxdelayx: mov dx,io8255cin al,dx ;查询8255的Pc0是否为高电平and al,01jz delayxpop dxretonlydelay endpdelayup proc near;判断上升延时是否结束的子程序,包括了显示向上箭头的部分push dxcall dianqingdelayy: call dianshangmov dx,io8255cin al,dx ;查询8255的Pc0是否为高电平and al,01jz delayypop dxretdelayup endpdelaydown proc near;判断下降延时是否结束的子程序,包括了显示向下箭头的部分push dxcall dianqingdelayz: call dianxiamov dx,io8255cin al,dx ;查询8255的Pc0是否为高电平and al,01jz delayzpop dxretdelaydown endp;----------------------------------------------------------------------------------------------显示的子程序dianqing proc near;用于对点阵显示的清零,在第一次要循环前使用push dxpush axmov al,00mov dx,protlrout dx,alpop axpop dxdianqing endpdianshang proc near;点阵箭头的显示,向上箭头的显示子程序push cxpush axpush bxmov cx,0008hmov si,offset minmov ah,01movex: mov al,[si]mov bx,offset buff1xlat ;得到第一行码mov dx,prothout dx,almov al,ahmov dx,protlrout dx,al ;显示第一行红shl ah,01inc sipush cxmov cx,0ffffhdelayp: loop delayp ;延时pop cxloop movexpop bxpop axpop cxretdianshang endpdianxia proc near;点阵箭头的显示,向下箭头的显示子程序push cxpush axpush bxmov cx,0008hmov si,offset minmov ah,01movey: mov al,[si]mov bx,offset buff2xlat ;得到第一行码mov dx,prothout dx,almov al,ahmov dx,protlrout dx,al ;显示第一行红shl ah,01inc sipush cxmov cx,0ffffhdelayq: loop delayq ;延时pop cxloop moveypop bxpop axpop cxretdianxia endpshownumber proc near;用七段码显示当前楼层的子程序(a口输出)mov dl,blmov ah,2int 21h;用于在屏幕上显示mov dl,0dhmov ah,2;回车符int 21hmov dl,0ahmov ah,2;换行符int 21hsub bl,30h;七段码显示mov al,blpush bxpush dxmov bx,offset numberxlatmov dx,io8255aout dx,alpop dxpop bxadd bl,30hmov al,0retshownumber endpshowled proc near;8led显示,显示cl与ch对应的楼层,从8255b口输出push axcmp cl,0hje l0cmp cl,31hje l1cmp cl,32hje l2cmp cl,33hje l3cmp cl,34hje l4cmp cl,35hje l5cmp cl,36hje l6cmp cl,37hje l7cmp cl,38hje l8l0: mov al,0bjmp addledl1: mov al,1bjmp addledl2: mov al,10bjmp addledl3: mov al,100bjmp addledl4: mov al,1000bjmp addledl5: mov al,10000bjmp addledl6: mov al,100000bjmp addledl7: mov al,1000000bjmp addledl8: mov al,10000000bjmp addledaddled: cmp ch,0je h0cmp ch,31hje h1cmp ch,32hje h2cmp ch,33hje h3cmp ch,34hje h4cmp ch,35hje h5cmp ch,36hje h6cmp ch,37hje h7cmp ch,38hje h8h0: add al,0bjmp showh1: add al,1bjmp showh2: add al,10bjmp showh3: add al,100bjmp showh4: add al,1000bjmp showh5: add al,10000bjmp showh6: add al,100000bjmp showh7: add al,1000000bjmp showh8: add al,10000000bjmp showshow: push dxmov dx,io8255b ;8255b口输出out dx,alpop dxpop axmov al,0ret showled endp code ends end start。
电梯模拟课程设计方案模板

随着城市化进程的加快,电梯作为一种重要的交通工具,其安全性和智能化程度日益受到重视。
为了让学生更好地了解电梯的工作原理、控制方法及维护保养,本课程设计旨在通过模拟电梯运行,让学生在理论与实践相结合的过程中,掌握电梯相关知识和技能。
二、课程目标1. 理解电梯的基本组成和工作原理;2. 掌握电梯控制系统的编程方法;3. 熟悉电梯的维护保养流程;4. 培养学生的创新思维和团队协作能力。
三、课程内容1. 电梯基本知识(1)电梯的组成及工作原理;(2)电梯的驱动方式及控制系统;(3)电梯的运行参数及安全标准。
2. 电梯控制系统设计(1)PLC编程基础;(2)电梯控制系统的硬件设计;(3)电梯控制系统的软件设计;(4)电梯控制系统的调试与优化。
3. 电梯维护保养(1)电梯的日常维护保养;(2)电梯的故障排除及应急处理;(3)电梯的定期检修与维护。
1. 教学方法(1)理论教学:采用多媒体教学手段,结合实物展示,使学生了解电梯的基本知识;(2)实践教学:通过模拟电梯运行,让学生亲自动手操作,掌握电梯控制系统的编程、调试与优化;(3)项目教学:以实际电梯为例,让学生参与电梯维护保养的全过程,提高学生的实际操作能力。
2. 教学过程(1)课堂讲授:教师讲解电梯基本知识、控制系统设计及维护保养等内容;(2)实验操作:学生在教师指导下,完成电梯控制系统的编程、调试与优化;(3)项目实践:学生分组进行电梯维护保养,完成项目任务。
五、课程评价1. 课堂表现:学生出勤率、课堂纪律及参与度;2. 实验操作:学生完成电梯控制系统的编程、调试与优化情况;3. 项目实践:学生参与电梯维护保养的项目完成情况;4. 期末考核:理论考试、实践操作考核及项目答辩。
六、课程总结通过本课程设计,学生能够全面了解电梯的相关知识,掌握电梯控制系统的编程、调试与优化方法,以及电梯的维护保养流程。
同时,培养学生的创新思维和团队协作能力,为今后从事电梯行业打下坚实基础。
电梯课程设计---电梯模拟控制系统设计

电气控制技术课程设计任务书20 11 -20 12 学年第 2学期第 19 周- 19 周题目电梯模拟控制系统设计内容及要求运行要求:运行程序时,电梯停在一楼。
如按下A3,电梯从一楼到二楼,并等待再按选择楼层按钮,如再按A6按钮则电梯从二楼到四楼,然后再按A1按钮电梯会从四楼到一楼。
其它情形实验者可多做几次,其具体效果与实际电梯相类似。
根据运行要求,画出控制系统线路图、列输入输出分配表、编写梯形图并逐条加注释,且写出程序流程图。
完成课程设计说明书与课程设计报告。
进度安排1、讲授课程设计的要求、任务和方法,布置设计题目(0.5天);2、查阅资料,确定设计方案(1天);3、设计、实验调试并完成课程设计报告(2.5天);4、当场个人答辩及报告评阅(1天)。
学生姓名:蔡系海指导时间 2012 年6月 18日至2012年6月 22日指导地点: F楼 212室任务下达2012 年 6月 15日任务完成2012年6月 22日考核方式 1.评阅□ 2.答辩□ 3.实际操作□ 4.其它□指导教师系(部)主任摘要随着我国经济的高速发展,微电子技术、计算机技术和自动控制技术也得到了迅速发展,电梯也已成为人类现代生活中广泛使用的运输工具。
随着人们对电梯运行的安全性、舒适性等要求的提高,电梯得到了快速发展,其拖动技术已经发展到了调频调压调速,其逻辑控制也由 PLC 代替原来的继电器控制。
可编程控制器(PLC)因为稳定可靠、结构简单、成本低廉、简单易学、功能强大和使用方便已经成为应用最广泛的通用工业控制装置,成为当代工业自动化的主要支柱之一。
电梯控制要求接入设备使用简便,对应系统组态的编程简单,具有人性化的人机界面,配备应用程序库,加快编程和调试速度。
通过 PLC 对程序设计,提高了电梯的控制水平,并改善了电梯的电梯运行的舒适感。
本文争对以上优点,对电梯运行进行了改进,使其达到了比较理想的控制效果。
关键词 PLC 电梯控制系统目录前言.......................................................... .5一. 四层电梯控制上下行主电路 (7)二. 四层电梯控制电路图 (7)三. 四层电梯门电机控制电路原理 (7)四. 程序流程图 (8)五. 输入/输出的分配表 (8)六.四层电梯控制程序梯形图 (9)七. 心得体会 (13)八. 参考文献 (14)前言伴随着工厂自动化程度的提高,PLC可编程控制器在工厂中的应用也越来越广泛,而且几乎涉及到工厂的各个方面,包括供电、生产、物料管理、运输等等。
基础课程设计 模拟电梯的设计与制作

电子课程设计报告设计课题:模拟电梯的设计与制作专业班级:09级电子信息工程2班设计时间: 2011年10月10日—12月31日目录一、结构设计方案选择 (3)方案一:模拟洗衣机电机控制部分 (3)方案二:模拟电梯 (4)方案比较与选择 (7)二、摘要 (6)三、模拟电梯的设计思路与要求 (7)四、单元电路设计、参数计算及元器件选择 (8)4.1 ADC0809 (8)4.2 显示部分 (10)4.3 矩阵键盘模块 (11)4.4 单片机最小系统............................................................................ .... .. (12)4.5 步进电机控制电路 (12)4.6 电梯实体的设计............................................................................ ... ................. . (15)五、总原理图及元器件清单 (16)5.1 电路总原理图 (16)5.2 元件清单 (17)5.3 实验器材与工具 (17)5.4 程序部分 (18)六、焊接电路及调试中遇到的问题 (22)6.1 单片机最小系统的调试 (23)6.2 显示部分的调式 (23)6.3 矩阵键盘的调试 (23)6.4 电梯实体的调试 (23)6.5 整体的调试与电路与实题的耦合............................................................. . (23)七、参考文献 (24)八、心得与体会 (24)一、结构设计方案选择:方案一:模拟洗衣机1、设计任务与要求用一个简单的时序逻辑电路来取代传统洗衣机所用的机械开关,实现对电流的控制,正转一定时间,停止2秒左右,再反转一定时间,再停止2s如此反复。
电梯模拟程序课程设计

电梯模拟程序课程设计一、课程目标知识目标:1. 让学生理解电梯的工作原理,掌握电梯运行的模拟编程知识。
2. 使学生掌握利用流程图描述电梯运行逻辑的方法。
3. 帮助学生理解并运用条件语句和循环语句实现电梯模拟程序。
技能目标:1. 培养学生运用编程语言(如Scratch或Python)编写简单电梯模拟程序的能力。
2. 培养学生通过流程图分析问题、解决问题的能力。
3. 提高学生团队协作、沟通交流的能力。
情感态度价值观目标:1. 培养学生对编程的兴趣,激发学生主动探索新知识的热情。
2. 培养学生严谨、细心的学习态度,增强面对困难的勇气和毅力。
3. 培养学生遵守程序设计规范,养成良好的编程习惯。
课程性质:本课程为信息技术学科的课程,以项目式学习为主,注重实践操作和团队合作。
学生特点:学生为五年级学生,具备一定的信息技术基础,对新事物充满好奇,喜欢动手操作。
教学要求:教师需引导学生通过自主探究、小组合作等方式完成课程内容,注重培养学生的实践能力和创新精神。
同时,关注学生的个体差异,提供有针对性的指导。
通过本课程的学习,使学生能够达到上述课程目标,实现具体的学习成果。
二、教学内容1. 电梯工作原理介绍:包括电梯的基本结构、运行原理、信号控制系统等,让学生对电梯的运行机制有整体认识。
2. 编程语言基础:回顾并巩固Scratch或Python编程语言的基础知识,如变量、列表、条件语句、循环语句等,为编写电梯模拟程序打下基础。
3. 流程图设计:学习如何利用流程图描述电梯运行的逻辑过程,分析电梯运行中的各种情况,并进行流程图设计。
4. 电梯模拟程序编写:根据流程图,运用所学编程知识,分组合作编写电梯模拟程序,实现基本的运行、停止、开门、关门等功能。
5. 程序调试与优化:指导学生如何调试程序,发现并解决程序中的问题,提高程序的稳定性和运行效率。
教学内容安排和进度:第一课时:电梯工作原理介绍,回顾编程语言基础知识。
第二课时:学习流程图设计,分析电梯运行逻辑。
电梯微机原理课程设计

电梯微机原理课程设计一、课程目标知识目标:1. 学生能够理解电梯微机原理的基本概念,掌握电梯控制系统的组成及其功能。
2. 学生能够描述电梯运行的常见信号流程,了解电梯故障诊断的基本方法。
3. 学生掌握电梯速度、加速度及制动力等关键参数的计算与应用。
技能目标:1. 学生能够运用所学知识,分析电梯运行过程中可能出现的故障,并提出合理的解决方案。
2. 学生能够设计简单的电梯控制系统,运用编程实现电梯的基本功能。
3. 学生通过实际操作,掌握电梯维护保养的基本技能,提高实践操作能力。
情感态度价值观目标:1. 学生对电梯微机原理产生兴趣,培养主动学习和探究的精神。
2. 学生认识到电梯安全运行的重要性,增强安全意识,养成遵守规范的良好习惯。
3. 学生通过小组合作,培养团队协作精神,提高沟通与交流能力。
课程性质:本课程为电气工程及其自动化专业选修课,旨在帮助学生掌握电梯微机原理及控制技术。
学生特点:学生具备一定的电气基础知识,对电梯控制技术有一定了解,但实践经验不足。
教学要求:结合理论与实践,注重培养学生的动手能力和创新能力,提高学生分析问题、解决问题的能力。
通过本课程的学习,使学生能够将理论知识应用于实际工作中,为未来从事电梯行业及相关领域工作奠定基础。
二、教学内容1. 电梯概述:电梯的发展历程、分类及主要技术参数。
教材章节:第一章 电梯概述2. 电梯控制系统:电梯控制系统的组成、工作原理及功能。
教材章节:第二章 电梯控制系统3. 电梯微机原理:微机在电梯控制中的应用,微机控制系统硬件、软件设计。
教材章节:第三章 电梯微机原理4. 电梯运行控制算法:电梯速度、加速度、制动力等参数的计算与应用。
教材章节:第四章 电梯运行控制算法5. 电梯故障诊断与维修:电梯故障分类、诊断方法及维修措施。
教材章节:第五章 电梯故障诊断与维修6. 电梯安全与防护:电梯安全系统设计,防护措施及安全规范。
教材章节:第六章 电梯安全与防护7. 电梯控制系统设计:电梯控制系统的设计方法、步骤及实例。
微机原理课程设计(电梯)
微机原理课程设计(电梯)计算机原理课程设计实验报告学院:专业:班级:姓名:学号:成绩:目录1.实验题目------------------------------------------3 ------------------------------------------3分析------------------------------------------3------------------------------------------4----------------------------------------5------------------------------------------5------------------------------------------7------------------------------------------13一、实验题目垂直电梯运行曲线控制(一)模拟题:在实际中,电梯是我们的交通工具,电梯从静止开始,慢慢加速,当到达某个值时,转入匀速运动,根据电梯运行的速度,电梯快要到达停止层时,开始减速,直到平层停止,打开轿厢门,客人安全走下电梯,无人上下电梯,电梯关门,向另一个目的层运动,火灾时,电梯自动归位到首层。
二、题目分析从题目要求来看,需要实现的功能有:3.电梯所在楼层的显示三、原理分析本课程设计以步进电机为驱动电机,通过8086处理器、8259A中断控制器、8255可编程接口为核心芯片,并辅以开关、LED,构成一个控制系统,用以模拟电梯正常运行过程。
其中的实验器材原理分别为:步进电机:作为被控制的电机,电机每走一步转过度,转一圈需要48步才能转一圈。
电梯的控制方法为:A-AB-B-BC-C-CD-D-DA-A,一个周期内有八步,按照这个规律不断循环就能实现电机的连续运转。
8086:作为CPU,控制步进电机、8259A可编程中断控制器、8255可编程接口以及LED,使用汇编语言编程。
电梯模拟c语言课程设计
电梯模拟c语言课程设计一、课程目标知识目标:1. 让学生掌握C语言的基本语法,包括变量定义、数据类型、运算符和表达式。
2. 使学生了解电梯运行原理,运用C语言实现电梯的模拟控制。
3. 帮助学生掌握程序流程控制,包括顺序结构、分支结构和循环结构。
技能目标:1. 培养学生运用C语言编写程序的能力,实现电梯的楼层显示、上下行控制等功能。
2. 提高学生分析问题、解决问题的能力,通过编程解决电梯运行中的实际问题。
3. 培养学生团队合作精神,共同完成课程设计任务。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,提高学习积极性。
2. 培养学生严谨、细致的学习态度,养成良好的编程习惯。
3. 增强学生对电梯等现代交通工具的原理认识,提高科技创新意识。
本课程针对高中年级学生,结合C语言课程内容,以电梯模拟为载体,使学生将所学知识应用于实际场景。
课程注重培养学生的编程能力和实际问题解决能力,同时注重团队合作和情感态度的培养,使学生在知识、技能和情感态度价值观方面取得全面发展。
通过本课程的学习,学生将能够独立完成电梯模拟程序的设计与实现,为后续学习打下坚实基础。
二、教学内容1. C语言基础回顾:变量定义、数据类型、运算符和表达式。
2. 程序流程控制:顺序结构、分支结构(if语句、switch语句)、循环结构(for循环、while循环)。
3. 电梯运行原理:电梯的基本结构、运行模式、楼层显示、上下行控制。
4. 函数与模块化编程:函数定义、调用、参数传递;模块化编程思想。
5. 数组与字符串:一维数组、二维数组;字符串的基本操作。
6. 指针与动态内存分配:指针的概念、使用方法;动态内存分配函数。
7. 结构体与文件操作:结构体的定义、使用;文件读写操作。
教学内容安排和进度:1. 第一周:C语言基础回顾,程序流程控制。
2. 第二周:电梯运行原理,函数与模块化编程。
3. 第三周:数组与字符串,指针与动态内存分配。
4. 第四周:结构体与文件操作,综合实践。
电梯模拟课程设计
课程设计实验报告课程名称__数据结构__题目名称电梯模拟专业班级学号学生姓名指导教师_2011 年1 月日一、需求分析及实现提示[需求分析](1)、模拟某校五层教学楼的电梯系统。
该楼有一个自动电梯,能在每层停留。
五个楼层由下至上依次称为地下层、第一层、第二层、第三层和第四层,其中第一层是大楼的进出层,即是电梯的“本垒层”,电梯“空闲”时,将来该层候命。
(2)、乘客可随机地进出于任何层。
对每个人来说,他有一个能容忍的最长等待时间,一旦等候电梯时间过长,他将放弃。
(3)、模拟时钟从0开始,时间单位为0.1秒。
人和电梯的各种动作均要耗费一定的时间单位(简记为t):有人进出时,电梯每隔40t测试一次,若无人进出,则关门关门和开门各需要20t每个人进出电梯均需要25t如果电梯在某层静止时间超过300t,则驶回1层候命。
(4)、按时序显示系统状态的变化过程:发生的全部人和电梯的动作序列。
[实现提示](1)楼层由下至上依次编号为0,1,2,3,4。
每目有要求Up(上)和Down(下)的两个按钮,对应l0个变量CallUp[0..4]和CallDown[0..4]。
电梯内5个目标层按钮对应变量CallCar[0..4]。
有人按下某个按钮时,相应的变量就置为1,一旦要求满足后,电梯就把该变量清为0。
(2)电梯处于三种状态之一:GoingUp(上行)、GoingDown(下行)和IdIe(停候)。
如果电梯处于IdIe状态且不在1层,则关门并驶回1层。
在1层停候时,电梯是闭门候命。
一旦收到往另一层的命令,就转入GoingUp或GoingDown状态,执行相应的操作。
(3)用变量Time表示模拟时钟,初值为0,时间单位(t)为0.1秒。
其他重要的变量有:Floor——电梯的当前位置(楼层);D1——值为0,除非人们正在进入和离开电梯;D2——值为0,如果电梯已经在某层停候300t以上;D3——值为0,除非电梯门正开着又无人进出电梯;State——电梯的当前状态(GoingUp,GoingDown,IdIe)。
plc电梯运行课程设计
plc电梯运行课程设计一、课程目标知识目标:1. 学生能理解PLC(可编程逻辑控制器)的基本原理,掌握其在电梯运行中的应用。
2. 学生能够描述电梯运行的三大系统(曳引系统、导向系统、控制系统)的工作原理及其相互关系。
3. 学生能够解释电梯运行的常见故障及其与PLC编程的关联。
技能目标:1. 学生能够运用PLC编程软件,设计简单的电梯运行控制程序。
2. 学生通过小组合作,解决模拟电梯运行中的故障问题,提升实际操作能力。
3. 学生能够对电梯运行的安全性进行分析,并提出改进措施。
情感态度价值观目标:1. 学生通过本课程的学习,培养对工程技术专业的兴趣和认识,增强未来职业规划的意识。
2. 学生在小组合作中,学会尊重他人意见,培养团队合作精神和解决问题的能力。
3. 学生能够认识到电梯运行安全的重要性,树立安全意识和社会责任感。
课程性质:本课程为实践性较强的学科课程,结合理论教学与动手操作,注重培养学生的实践能力和创新精神。
学生特点:学生为高中二年级学生,具有一定的物理基础和逻辑思维能力,对工程技术感兴趣,但实际操作经验不足。
教学要求:课程要求学生在理解理论知识的基础上,注重实践操作,通过项目式学习,使学生在实践中掌握知识,提高技能。
同时,注重培养学生的安全意识和团队协作能力。
教学过程中,教师应引导学生主动探究,鼓励创新思维,实现课程目标的具体落实。
二、教学内容1. 理论知识:- 电梯运行原理及结构组成:电梯的曳引系统、导向系统、轿厢系统、控制系统等。
- PLC工作原理及编程基础:PLC的硬件组成、工作过程、编程语言及逻辑指令。
- 电梯运行中的常见故障及其原因:如电梯卡层、冲顶、蹲底、开门走车等。
2. 实践操作:- PLC编程软件的使用:引导学生熟悉软件界面,掌握基本操作方法。
- 电梯运行控制程序设计:分组进行程序设计,实现电梯的基本运行功能。
- 故障排查与处理:设置模拟故障,指导学生进行排查、分析原因并处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
;用于在模拟楼房方框左边显示楼层号码FNUM MACROLOCAL ML1PUSH CXPUSH AXPUSH DXPUSH SIMOV CH,13HMOV CL,31HMOV SI,9ML1: MOV AH,02H ;2号功能调用,设置光标位置MOV DH,CHMOV DL,1FHINT 10HMOV AH,02HMOV DL,CLINT 21HDEC CHINC CLDEC SIJNZ ML1POP SIPOP DXPOP AXPOP CXENDM;用于显示未上电梯时的模拟状态图形SITUA TION MACRO NOWFLOCAL L1,L2,L3,L4,L5,L6,L7,L8,PASS1MOV AH,03HINT 10HFNUMMOV AH,02HINT 10HMOV SI,101HL0: MOV AH,0CHMOV DX,LASTFMOV CX,SIMOV AL,0INT 10HINC SICMP SI,120HMOV BH,1HMOV SI,100H L1: MOV AH,0CHMOV DX,20HMOV CX,SIMOV AL,BHINT 10HADD SI,1HINC BHCMP SI,120HJNE L1MOV SI,20HMOV BH,1H L2: MOV AH,0CHMOV DX,SIMOV CX,100HMOV AL,BHINT 10HADD SI,1HINC BHCMP SI,9BHJNE L2MOV SI,100HMOV BH,1H L3: MOV AH,0CHMOV DX,9BHMOV CX,SIMOV AL,BHINT 10HINC BHINC SICMP SI,120HJNE L3MOV SI,20HMOV BH,1H L4: MOV AH,0CHMOV DX,SIMOV CX,120HMOV AL,BHINT 10HADD SI,1HINC BHCMP SI,9BHMOV FLAG1,1MOV DI,NOWF ;NOWFLOORMOV SI,101HL5: MOV AH,0CHMOV DX,DIMOV CX,SIMOV AL,1INT 10HINC SICMP SI,120HJNE L5ENDM;用于显示电梯运动MOVEF MACRO NOWF,LASTF LOCAL L1,L2,L3,L4,L5,L6,L7,L8,PASS1 MOV BH,1HMOV SI,100HL1: MOV AH,0CHMOV DX,20HMOV CX,SIMOV AL,BHINT 10HADD SI,1HINC BHCMP SI,120HJNE L1MOV SI,20HMOV BH,1HL2: MOV AH,0CHMOV DX,SIMOV CX,100HMOV AL,BHINT 10HADD SI,1HINC BHCMP SI,9BHJNE L2MOV SI,100HMOV BH,1HL3: MOV AH,0CHMOV DX,9BHMOV CX,SIMOV AL,BHINT 10HINC BHINC SICMP SI,120HJNE L3MOV SI,20HMOV BH,1HL4: MOV AH,0CHMOV DX,SIMOV CX,120HMOV AL,BHINT 10HADD SI,1HINC BHCMP SI,9BHJNE L4MOV FLAG1,1MOV DI,NOWF ;NOWFLOOR L6: MOV SI,101HL5: MOV AH,0CHMOV DX,DIMOV CX,SIMOV AL,1INT 10HINC SICMP SI,120HJNE L5MOV AX,FLAG1CMP AX,1JNE PASS1XOR AX,AXMOV FLAG1,AXMOV AH,09HMOV DX,OFFSET MSGENINT 21HMOV DX,OFFSET MSG3INT 21HMOV AH,01HINT 21HPASS1:MOV BX,06FFH ;可修改速度MOV CX,0FFFFHTIME: LOOP TIME ;延时DEC BXCMP BX,0JNE TIMEMOV SI,101HL7: MOV AH,0CHMOV DX,DIMOV CX,SIMOV AL,0INT 10HINC SICMP SI,120HJNE L7MOV AX,NOWFCMP AX,LASTFJA PASS2INC DIJMP PASS3PASS2: CMP AX,LASTFJNE PASS4JMP PASS3PASS4: DEC DIPASS3:CMP DI,LASTF ;LASTFLOORJNE L6MOV SI,101HL8: MOV AH,0CHMOV DX,DIMOV CX,SIMOV AL,1INT 10HINC SICMP SI,120HJNE L8ENDM;定义程序中要用到的数据段DA TA SEGMENTMSG1 DB 'FLOOR YOU SIT NOW(JUST 1-9F):$'MSG2 DB 'FLOOR YOU W ANT GO(JUST 1-9F):$' MSG3 DB 'INPUT ANY KEY TO START...$' MSG4 DB 'WANT EXPERIENCE AGAIN (Y/N)..$' MSGEN DB 0AH,0DH,'$'NOWF DW ? ;NOWF变量表示原在楼层号码LASTF DW ? ;LASTF表示目的楼层号码FLAG1 DW 1 ;起一定小作用的变量DA TA ENDS;定义程序中用到的堆栈段STACK SEGMENTBUFS DB 100 DUP(?)TOPS LABEL WORDSTACK ENDS;主代码段CODE1用于程序的执行或结束CODE1 SEGMENTASSUME CS:CODE1, DS:DA TA, SS:STACK MAIN PROCSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV SP,TOPSMOV AH,0HMOV AL,04HINT 10HREPEAT1:CALL FAR PTR ELEV ATORMOV AH,09HMOV DX,OFFSET MSGENINT 21HMOV DX,OFFSET MSG4INT 21HMOV AH,01HINT 21HCMP AL,'Y'JE REPEAT1CMP AL,'y'JE REPEAT1MOV AH,4CHINT 21HRETMAIN ENDPCODE1 ENDS;子段码CODE2用于控制楼层状态和运动CODE2 SEGMENTELEVATOR PROC FARASSUME CS:CODE2, DS:DA TA, SS:STACK MOV AX,DATAMOV DS,AXMOV AX,SSMOV SS,AXREPUT1:MOV AH,09HMOV DX,OFFSET MSGENINT 21HMOV DX,OFFSET MSG1INT 21HMOV AH,01HINT 21HCMP AL,'1'JB REPUT1CMP AL,'9'JA REPUT1SUB AL,30HXOR AH,AHDEC AXMOV DX,08HMUL DXMOV DX,AXMOV AX,9BHSUB AX,DXMOV NOWF,AXSITUA TION NOWFREPUT2: MOV AH,09HMOV DX,OFFSET MSGENINT 21HMOV DX,OFFSET MSG2INT 21HMOV AH,01HINT 21HXOR AH,AHCMP AL,'1'JB REPUT2CMP AL,'9'JG REPUT2SUB AL,30HXOR AH,AHDEC AXXOR DX,DXMOV DX,AXMOV AX,08HSUB AX,DXMOV DX,AXMOV AX,08HMUL DXADD AX,5BHMOV LASTF,AXCMP AX,NOWFJE REPUT2 MOVEF NOWF,LASTF RETF ELEVATOR ENDP CODE2 ENDSEND STARTBIOS中断表10设置显示方式AL=00 40×25黑白方式AL=01 40×25彩色方式AL=02 80×25黑白方式AL=03 80×25彩色方式AL=04 320×200彩色图形方式AL=05 320×200黑白图形方式AL=06 320×200黑白图形方式AL=07 80×25单色文本方式AL=08 160×200 16色图形(PCjr) AL=09 320×200 16色图形(PCjr) AL=0A 640×200 16色图形(PCjr) AL=0B 保留(EGA)AL=0C 保留(EGA)AL=0D 320×200 彩色图形(EGA) AL=0E 640×200 彩色图形(EGA) AL=0F 640×350 黑白图形(EGA) AL=10 640×350 彩色图形(EGA) AL=11 640×480 单色图形(EGA) AL=12 640×480 16色图形(EGA) AL=13 320×200 256色图形(EGA) AL=40 80×30 彩色文本(CGE400) AL=41 80×50 彩色文本(CGE400) AL=42 640×400 彩色图形(CGE400)101置光标类型(CH)0-3=光标起始行(CL)0-3=光标结束行102置光标位置BH=页号DH,DL=行,列103读光标位置BH=页号CH=光标起始行DH,DL=行,列104读光笔位置AH=0 光笔未触发=1 光笔触发CH=象素行BX=象素列DH=字符行DL=字符列105置显示页AL=页号106屏幕初始化或上卷AL=上卷行数AL=0 整个窗口空白BH=卷入行属性CH=左上角行号CL=左上角列号DH=右下角行号DL=右下角列号107屏幕初始化或下卷AL=下卷行数AL=0 整个窗口空白BH=卷入行属性CH=左上角行号CL=左上角列号DH=右下角行号DL=右下角列号108读光标位置的字符和属性BH=显示页AH=属性AL=字符109在光标位置显示字符及属性BH=显示页AL=字符BL=属性CX=字符重复次数10A在光标位置显示字符BH=显示页AL=字符CX=字符重复次数10B置彩色调板(320×200图形) BH=彩色调板IDBL=和ID配套使用的颜色10C写象素DX=行(0-199)CX=列(0-639)AL=象素值10D读象素DX=行(0-199) CX=列(0-639) AL=象素值10E显示字符(光标前移)AL=字符BL=前景色10F取当前显示方式AH=字符列数AL=显示方式。