A. 单片机毕业设计,基于51单片机的电梯控制系统的设计
基于51单片机的电梯控制系统的设计
引 言
随着现代高科技的发展,住房和办公用楼都已经逐渐向高层发展。电梯是高层宾馆、商店、住宅、多层仓库等高层建筑不可缺少的垂直方向的交通运输工具。1889年美国奥梯斯升降机公司推出的世界上第一部以电动机为动力的升降机,同年在纽约市马累特大厦安装成功。随着建筑物规模越来越大,楼层也越来越高,对电梯的调速精度、调速范围等静态和动态特性都提出了更高的要求。由于传统的电梯运行逻辑控制系统采用的是继电器逻辑控制线路。采用这种控制线路,存在易出故障、维护不便、运行寿命较短、占用空间大等缺点。从技术发展来看,这种系统将逐渐被淘汰。
目前,由可编程控制器(PLC)或微型计算机组成的电梯运行逻辑控制系统,正以很快的速度发展着。可编程控制器,是微机技术与继电器常规控制技术相结合的产物,是在顺序控制器和微机控制器的基础上发展起来的新型控制器,是一种以微处理器为核心用作数字控制的专用计算机,它有良好的抗干扰性能,适应很多工业控制现场的恶劣环境,所以现在的电梯控制系统主要还是由可编程控制器控制。但是由于PLC的针对性较强,每一台PLC都是根据一个设备而设计的,所以价格较昂贵。而单片机价格相当便宜,如果在抗干扰功能上有所提高的话完全可以代替PLC实现对工控设备的控制。当然单片机并不象PLC那么有针对性,所以由单片机设计的控制系统可以随着设备的更新而不断修改完善,更完美的实现设备的升级。
电梯控制系统是比较复杂的一个大型系统,在计算机诞生的几十年里,继电器控制系统为电梯控制的发展做了巨大的贡献,但在性能上和PLC还是有本质上的差距。在科技的不断发展下,我想单片机控制系统很快可以解决抗扰性,成为方便有效的电梯控制系统。
由于时间和能力有限,在设计过程中难免有很多疏漏和不足之处,恳请老师批评指正,我将努力改正,争取做出完美的毕业设计。
目录
目录 1
引 言 2
第1章 绪 论 3
1.1 电梯的发展 3
1.2电梯的分类 4
第2章 方案的比较和确定 6
2.1 方案的选择 6
2.1.1 电梯继电器控制系统的优缺点 6
2.1.2 PLC控制系统的特点 6
2.1.3 电梯变频调速控制的特点 7
2.2 单片机控制方案的选择 7
2.3 变频器的选型 8
第3章 硬件系统的设计 10
3.1 硬件结构图 10
3.2 系统硬件原理图 10
3.3 89C51单片机的原理及其外围电路的设计 10
3.3.1 89C51单片机的原理与结构 10
3.3.2 单片机外围电路的设计 14
3.4 输入模块的设计 18
3.4.1 锁存器74LS373及其扩展功能简介 20
3.4.2 光电传感器 20
3.4.3 KC778B红外传感器基本应用电路 21
3.4.4 输入信号的采集 22
3.5 输出模块设计 24
3.5.1 DAC0832的功能简介 25
3.5.2 变频器功能简介 26
3.5.3 LED驱动器功能简介 29
3.5.4 控制信号的输出 32
第4章 系统软件的设计 34
4.1 主程序流程图 34
4.2 读入信息并显示子程序的流程图 37
4.3 延时去抖动子程序 37
4.4 设置目标层子程序流程图 38
4.5 电机拖动子程序流程图 39
4.6 电梯载客子程序流程图 40
4.7 中断服务流程图 41
小结与展望 42
致谢 43
参考文献 44
附录部分: 45
附录A 电气原理图 45
附录B 外文文献及其译文 46
附录C 主要参考文献及其摘要 50
B. 求设计一个模拟电梯的PLC或者单片机原理图
是程序模拟还是实物模拟运行?
这个问题需要落实,因为如果是实物模拟运行就有两个行程开关,分别对应门开和门关的状态。
有没有行程开关,程序是不一样的,你先把这个问题落实,我好写程序。
现在先给你写了一个程序模拟的程序。
采用的是西门子LOGO,一般的型号就可以用了,市面上大概几百块钱,很便宜。
控制采用3个输入点,都是按钮。输出点2个,一个开一个关。
实验时,为了更好观察开关转换,转换时间为5秒。
运行流程:
按钮1触发,开门→延时→关门→延时→开门。
按钮2(停止)触发时,动作停止,计数器不复位,触发按钮1后动作继续,计数器继续计数
按钮3(复位)触发时,计数器所计的书清零。动作不受影响。
计数器一个可以计数999999次,如果用两个,可以计数达到999999X999999,应该足够你用了。
你先看看是不是适合你的项目,如果还有什么问题的话,请提出来,我看我能不能给你解决。我的邮箱是[email protected]
C. 单片机LED点阵模仿电梯楼层数字流动显示c语言程序及电路图
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit d1=P3^2;
sbit wr=P2^5;
uchar code table1[]={
0x01,0x02,0x04,0x08,
0x10,0x20,0x40,0x80
};
uchar code table2[]={
0xc3,0xdf,0xc3,0xfb,0xc3
};
uchar code table3[]={
0xef,0xef,0xef,
0xef,0xef,0xef
};
void delay(uint z);
uchar tt,num,numm;
void main()
{
tt=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1; while(1)
{
for(num=1,numm=0;num<6;num++,numm++)
{
P0=table1[num];
P1=table3[numm];
delay(2);
}
P0=0x00;
delay(500);
for(num=1,numm=0;numm<5;numm++,num++)
{
P0=table1[num];
P1=table2[numm];
delay(2);
}
P0=0x00;
delay(500);
}
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=200;y>0;y--);
}
void time0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
tt++;
}
D. 小弟要做电梯模拟设计,下面代码不懂,求高手帮翻译每一行是代码是什么意思。(我把金币都给你,重谢!)
实现的功能:此单片机模拟电梯用绿色发光二极管组成的箭头来指示电梯当前是处于上升状态还是下降状态,用数码管显示当前是处于哪一层,用红色发光二极管指示电梯走到哪一层会停.电源接通后,若没有人按下停止按键,它就以每层2秒的速度一直上下运行,若有人按下某一层的停止按键,它就会在相应的那一层停止4秒钟,并伴有开门和关门的声音提示。
程序初始化1.
tcount航天4ch
航天4dh曾
0000h丙
ljmp开始
000bh丙
ljmp int0x
0030h丙
;;;;;;;;;;;;初始化;;;;;;;;;;;;;;;;;
启动:mov tmod,# 1小时
mov th0,# 3针
mov tl0,# 0 B0H;50毫秒
mov ie,#小时
setb tr0
mov tcount,4号
CLR F0
mov 20h,# 0
mov r0、# 30小时
mov r1,# 30
清:mov @r0,# 00 H
公司r0
djnz r1、清;把30H到4DH这30个单元清0
并打动,# 6小时
mov p3,# 0 F8H
2主程序调用
小熏:简森-巴顿p1.0,一
lcall ys10ms
简森-巴顿p1.0,一个,判断一层的停止按键是否按下
clr p2.0;若按下则把对应的红色发光二极管点亮
一:简森-巴顿p1.1,两个
lcall ys10ms
简森-巴顿p1.1,两个,判断二层的停止按键是否按下
clr p2.1;若按下则把对应的红色发光二极管点亮
二:简森-巴顿p1.2、射孔
lcall ys10ms
简森-巴顿p1.2、射孔
clr p2.2
各段:简森-巴顿p1.3,精打细算
lcall ys10ms
简森-巴顿p1.3,精打细算,
clr p2.3
台北县:简森-巴顿p1.4,FIV的猫咪
lcall ys10ms
简森-巴顿p1.4,FIV的猫咪
clr p2.4
FIV的猫咪:简森-巴顿p1.5、共六人
lcall ys10ms
简森-巴顿p1.5、六
clr p2.5
六:简森-巴顿p1.6,SEV
lcall ys10ms
简森-巴顿p1.6,SEV
clr p2.6
SEV:简森-巴顿p1.7、训
lcall ys10ms
简森-巴顿p1.7、训
clr p2.7
ljmp鲁迅
中断程序调用3.
INT0X:mov th0,# 3针
mov tl0,# 0 B0H
公司tcount
mov,TCOUNT
cjne,5 #,ZHUAN2;50毫秒= 250 * 5女士
mov tcount,# 00 H
简森-巴顿f0,《左传》
ljmp zhuan1
《左传》:ljmp虾酱
ZHUAN1:mov p3,# 0 F8H;上升的箭头
mov,蹭
cjne,# 00 H、社里
并打动,# 06 h,显示
简森-巴顿p2.0,SS1_1
公司30h
mov,30小时
cjne,# 1、SSX1_1
clr p3.4;一层门开的声音开
SSX1_1:cjne,2号,SSX1_2
setb p3.4;一层门开的声音关
SSX1_2:cjne,# 16,SSX1_3
clr p3.4;一层门关的声音开
SSX1_3:cjne,17号,ZHUAN2;16 * 250毫秒= 4 S(总共次,但实际在这里停止的时间只有次MS)
mov 30h,# 0
setb p3.4;一层门关的声音关
setb p2.0;熄灭对应的红色发光二极管
SS1_1:公司31h
mov,31 H
cjne,# 9,ZHUAN2;8 * 250毫秒= 2秒(总共次,但实际上升一层只用次MS)
mov 31h,# 0
公司曾
社里:mov,蹭
cjne,# 1小时,SS3
并打动,5 # BH,显示
简森-巴顿p2.1,SS2_1
公司32h
mov一个32小时
cjne,# 1、SSX2_1
clr p3.4;二层门开的声音开
SSX2_1:cjne,2号,SSX2_2
setb p3.4;二层门开的声音关
SSX2_2:cjne,# 16,SSX2_3
clr p3.4;二层门关的声音开
SSX2_3:cjne,17号,ZHUAN2;16 * 250毫秒= 4 S(总共次,但实际在这里停止的时间只有次MS)
mov 32h,# 0
setb p3.4;二层门关的声音关
setb p2.1;熄灭对应的红色发光二极管
SS2_1:公司33h
mov,33 H
cjne,# 9,ZHUAN2;8 * 250毫秒= 2秒,但实际上升一层只用次MS(总共次吗?
mov 33h,# 0
ljmp zhuan3
E. 求用STC89C52单片机的电梯控制程序
基于STC89C52单片机电梯设计.doc
文档名称:基于STC89C52单片机电梯设计.doc
格式:doc 大小:0.01MB 总页数:7
展开↓
更多功能
免费预览本文档(全文)
下载敬告:
本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。如果您已付费下载过本站文档,您可以点这里二次下载 收起↑
文档介绍:
基于STC89C52单片机电梯设计 摘 要:随着人们生活水平的不断提高和现代科技的猛速发展,高层建筑已成为一种用于居住、办公的主流建筑设计。为了更好地提高人们生活和工作的效率,电梯成为生活中不可或缺的垂直代步工具。为了让电梯在运行过程中实时、有效地实现方向优先、距离优先选择,本文提出了基于STC89C52单片机的电梯设计。
本文以STC89C52单片机作为背景机通过驱动外围电路实现电梯垂直运行,该系统主要由硬件和?件两大部分组成。其中,硬件部分主要由主控芯片、显示模块、按键模块、铃声提示模块4大部分组成。主控模块由STC89C52作为背景机完成驱动外围电路进行信息处理和控制的功能,显示模块负责实时的显示电梯的升降状态以及电梯所到楼层数,按键电路主要负责完成电梯的外呼内选将楼层到达信号传输给单片机,铃声提示模块一方面报警提示乘客到达了所需的楼层,另一方面完成出现紧急停止时的报警提示。
F. 基于51单片机的四层电梯c语言独立按键的四层电梯模拟
4层电梯,按键和传感器的基本设置:
1、电梯内部至少6个按键,4个楼层加两个门的控制,定义为:4层楼 PB1,PB2,PB3,PB4,门开,门关,PB5,PB6.
2、楼梯外部每层基本2个按键:1层:上PC1,2层上PC2,下PC3,3层上PC4,下PC5.4层,下PC6.对应4和1层最少使用一个就能完成乘坐的基本要求。
3、电梯位置,每层一个,PA1,PB2,PB3,PB4。
4、电梯状态,停止PD1,向上运动PD2,向下运动PD3. 门打开PD4,门闭合PD5.
5、电梯控制输出,向上运动DE1,向下运动DE2,停止运动DE3,开门DE4,关门DE5.
6、另外一些指示灯的输出,最简单的指示每个按键上一个,内外部显示一个LED点阵指示,
做练习就是编写按键扫描和控制输出,LED显示,基本的程序控制,硬件模型就是指示灯和按键。
真的做项目,那是两码事,一般电梯控制用PLC控制可以直接连接跟电机控制器连接,应用单机也就做个项目中的LED显示,为了安全软件和硬件都要加沉余设计。为了好看清晰可以增加更多的显示和指示。
G. 怎么用单片机实现电梯控制系统
随着社会经济建设的发展,人们生活水平的提高,电梯产品需求的数量化、个性化和多样化也提到议事日程上来了。电梯是现代建筑物的组成部分,在现代化的生活和工作当中人们已经离不开电梯了,而且对电梯的需求量也在不断的增长,我国已经成为全球最大的电梯市场。为了掌握好现在电梯的发展方向,了解电梯技术的发展,也为了让所学专业知识得到综合应用,笔者经过多方查阅资料,制定了一套自己的电梯控制模型系统设计方案。
H. 怎么用单片机实现电梯控制系统
:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有两个器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。器件的数据线也就被称为数据总线,器件所有的控制线被称为控制总线。在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址当然也是以电信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为地址总线。
二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的——数字,或者说都是一串‘0’和‘1’组成的序列。换言之,地址、指令也都是数据。指令:由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不可以由单片机的开发者更改。地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定,但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:
1�6�1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2�6�1方式字或控制字(如MOV TMOD,#3),3即是控制字。
3�6�1常数(如MOV TH0,#10H)10H即定时常数。
4�6�1实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗,则执行指令:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实际输出的值。
理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来执行了。
三、P0口、P2口和P3的第二功能用法:初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解,认为第二功能和原功能之间要有一个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。如P3.6、P3.7分别是WR、RD信号,当微片理机外接RAM或有外部I/O口时,它们被用作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有相应的信号从P3.6或P3.7送出,不需要事先用指令说明。事实上‘不能作为通用I/O口使用’也并不是‘不能’而是(使用者)‘不会’将其作为通用I/O口使用。你完全可以在指令中按排一条SETB P3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么去做,因为这通常这会导致系统的崩溃。
四、程序的执行过程: 单片机在通电复位后8051内的程序计数器(PC)中的值为‘0000’,所以程序总是从‘0000’单元开始执行,也就是说:在系统的ROM中一定要存在‘0000’这个单元,并且在‘0000’单元中存放的一定是一条指令。
五、堆栈: 堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部RAM的一部份,特殊的是它存放和取用数据的方式,即所谓的‘先进后出,后进先出’,并且堆栈有特殊的数据传输指令,即‘PUSH’和‘POP’,有一个特殊的专为其服务的单元,即堆栈指针SP,每当执一次PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值的基础上)自动减1。由于SP中的值可以用指令加以改变,所以只要在程序开始阶段更改了SP的值,就可以把堆栈设置在规定的内存单元中,如在程序开始时,用一条MOV SP,#5FH指令,就时把堆栈设置在从内存单元60H开始的单元中。一般程序的开头总有这么一条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆栈从08H单元开始往后,而08H到1FH这个区域正是8031的第二、三、四工作寄存器区,经常要被使用,这会造成数据的浑乱。不同作者编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问题。当设置好堆栈区后,并不意味着该区域成为一种专用内存,它还是可以象普通内存区域一样使用,只是一般情况下编程者不会把它当成普通内存用了。
六、单片机的开发过程: 这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件,下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就被确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编辑器(如EDIT、CCED等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写片(将程序固化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一例说明:
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP,#5FH ;设堆栈
LOOP:
NOP
LJMP LOOP ;循环
END ;结束