搜档网
当前位置:搜档网 › 电梯控制系统(Java课程设计)内容

电梯控制系统(Java课程设计)内容

电梯控制系统(Java课程设计)内容
电梯控制系统(Java课程设计)内容

A1 系统描述

1.功能描述

本电梯系统用来控制一台运行于一个具有N层的大楼电梯,它具有上升、下降、开门、关门、载客的基本功能。

大楼的每一层都有:

(1)两个指示灯这两个指示灯分别用于指示当前所在的层数和电梯的当前状态(上行、下行或停止);

(2)电梯锁用于将本层的电梯门锁住,并使本楼层的电梯按钮失效,电梯里相应的按钮也失效,使得电梯不能也不可能停在本层;

(3)按钮除了第一层和顶层,每一层都有两个按钮(上行、下行),乘客可以呼叫上楼或下楼,顶楼只有一个下楼按钮,而第一层只有一个上楼按钮。

电梯里面具有:

(1)标示从“1”到“N”的N个按钮,用于让乘客选择所要的层数;

(2)关门按钮当乘客按下此按钮时,电梯门如果开着将关上,否则不执行任何操作;(3)开门按钮当乘客按下此按钮时,电梯如果停在某一层,电梯门将打开,否则不执行任何操作;

(4)超重测试和警报装置电梯的地面有超重感应装置,当电梯载重达到某一个值时,电梯“超重警报铃”发出超重警报,并且不执行关门命令。

2.关键实现方法描述

用“最大距离循环”来说明电梯的运行方式。也说是说,电梯处于上行状态时就一直上行直到不再有上行任务,电梯处于下行状态时就一直下行直到不再有下行任务。

用两个队列来实现电梯的调度,电梯根据这两个队列发送来的楼层号作为目的地进行运行。在上行队列中保存了所有的上行请求的楼层号(包括楼层的呼叫和电梯里的楼层按钮请求),即保存电梯上行时需要停的楼层号。队列排列规则是:高于或等于电梯当前所地楼层的上行请求的楼层号从小到大排在队列的前部分,低于电梯当前所地楼层的上行请求的楼层号从小到大排在队列后部分。如果新请求的楼层号被插在队列头时同时将这个楼层号发送给电梯作为它的目的地。在下行队列中保存了所有的下行请求的楼层号(包括楼层的呼叫和电梯里楼层按钮请求),即保存电梯下行时需要停的楼层号。队列排列规则是:低于或是等于电梯当前所在楼层的下行请求的楼层从大到小排在队列前部分,高于电梯当前所在楼层的下行请求的楼层号从大到小排在队列后部分。

当电梯正在上行时,如果上行队列的队列头改变时,系统将同时将这个新的队列头发送给电梯作为它的新目的地。有两种原因引起队列头的改变。

(1)新的请求插入到上行队列头。

(2)电梯到达某个楼层将这个楼层的请求从上行队列的队列头删除,后继的更高楼层号成为对列头。

当电梯正在下行时,如果下行队列的队列头改变时,系统将同时将这个新的队列头发送给电梯作为它的新目的地。有两种原因引起下行队列头的改变。

(1)新的请求插入到下行队列头。

(2)电梯到达某个楼层将这个楼层的请求从下行队列的队列头删除,后继的更高楼层号成为对列头。

在电梯上行过程中,当上行队列中没有比电梯当前所在的楼层更高的楼层号时,发送电梯目的地的开始从下行队列中取得。同样,在电梯下行过程中,当下行队列中没有比电梯当前所在的楼层更低的楼层号时,发送电梯目的地的开始从上行队列中取得。如此反复,当两个队

列中都没有数据时,电梯暂停。

当电梯到达某层时,此层的所有请求按钮全部复位(包括楼层和电梯里的按钮),电梯门自动开启,在一段时间内如果乘客没有按下开门或关门的按钮,电梯将自动关门。

为了保证电梯系统的安全,在任何不安全的情况下,紧急制动就会被促发,电梯被强制停止。A2 用例模型

1.角色识别

根据前面系统的描述,可以确定与该系统交互的两个角色:电梯管理员(elevator

manager)和乘客(passenger),其中乘客是电梯的主要使用者,电梯管理员的责任

是对电梯进行维护(见图A1)。

2.用例识别

在角色的基础上,可以确定系统的用例,做法是针对每一个角色考查它要求系统

提供的功能,它使用系统的哪些功能,经过分析,可得到如下的用例。

乘客相关的用例:

●按下某楼层的上行按钮(go up stair)。

●按下某楼层的下行按钮(go down stair)。

●按下某电梯内的某一层楼按钮(go to floor request)。

●按下关门按钮(close door)。

●按下开门按钮(open door)。

●超重测试(overweight test)。

电梯管理员的用例:

●锁住某层电梯锁(lock floor)。

●打开某层电梯锁(open floor)。

用例的描述如下:

用例1 按下某楼层的上行按钮(go up stair)

(1)乘客按下第M层的上行按钮。

(2)M被插入到上行队列的合适位置。

(3)如果M被插到上行队列头。

●如果电梯正处于上行状态。将M发送给电梯作为目的地。

●如果电梯处于停止状态。将M发送给电梯作为目的地。

(4)电梯到达此楼层。

(5)电梯自动打开门(用例9)。

(6)乘客进入电梯。

(7)超重测试(用例6)。

用例2 按下某楼层的下行按钮(go down stair)。

(1)乘客按下第M层的下行按钮。

(2)M被插入到下行队列的合适位置。

(3)如果M被插到下行队列头。

●如果电梯正处于下行状态。将M发送给电梯作为目的地。

●如果电梯处于停止状态将M发送给电梯作为目的地。

(4)电梯到达此楼层。

(5)电梯自动打开门(用例9)。

(6)乘客进入电梯。

(7)超重测试(用例9)。

用例3 按下电梯内的某一楼层按钮(go to floor request)

(1)乘客按下电梯内L层的按钮。

(2)如果被按下的楼层号L比电梯当前所在的楼层号高。

●将此楼层号插入到上行队列的合适位置。

●如果L被插入到上行队列头。

如果电梯正处于上行状态。

将L发送给电梯作为电梯的目的地。

(3)如果被按下的层号L比电梯当前所在的楼层低。

●将此楼层号L插入到下行队列的合适位置。

●如果L被插入到下行队列头。

如果电梯正处于下行状态。

将L发送给电梯作为目的地。

(4)电梯到达目的楼层。

(5)电梯自动开门(用例9)。

用例4按下关门按钮(request close door)

(1)如果电梯门关着。

保持电梯门关闭状态。

(2)如果电梯门开着。

关闭电梯门。

用例5 按下开门按钮(request open door)

如果电梯停在某一层。

●如果电梯门关着。打开电梯门。

●如果电梯门开着。保持电梯门开状态。

用例6 超重测试(overweight test)

(1)乘客进入电梯。

(2)如果电梯超重感应装置检测到超重。

●电梯发出超重警报,并拒绝关闭电梯门。

●乘客走出电梯。

●电梯解除超重警报,并允许关闭电梯门。

用例7 锁住某层电梯锁(lock floor)

此层的楼层请求按钮和电梯内的楼层按钮失效。

用例8 打开某层电梯锁(open floor)

此层的楼层请求按钮和电梯内的楼层按钮恢复正常。

用例9 自动打开电梯门(auto open door)

(1)电梯到达某楼层。

(2)电梯自动开门。

用例10 自动关闭电梯门(auto close door)

(1)电梯门打开的状态达到设置的时限。

(2)关闭电梯门。

A3 类模型

根据分析,我们可以得到下面这些类。

乘客类(Passenger)、管理员类(Manager)、电梯类(Elevator)、电梯门类(ElevatorDoor)、楼层的上行请求按钮类(Go Up Request)、楼层的下请求按钮类(Go Down Request)、电梯里的楼层按钮类(Go To Floor Request)、楼层锁类(lock)、指示灯类(Indicate Light)、队列类(Queue)、定时器类(Timer)、异常处理类(Expection)。

1.乘客类(Passenger)

2

3

属性State表示电梯的状态(停止、上行、下行),Position表示电梯所在的楼层(1-N),IsOverWeight标识电梯是否超重,IsNormal用于标识电梯是否正常。

方法StartUp(Floor)表示启动电梯上行到Floor层,StartDown(Floor)表示启动电梯下行到Floor层,Stop表示电梯停下来,Warn()启动电梯超重警报,CancelWarn 取消电梯超重警报。

4

属性State表示电梯门的状态(开或关),方法Open()表示打开电梯门,Close()表示关闭电梯门。

5)、楼层的下行请求按钮类(Go Down Request)、电梯里的楼层按钮类(Go To Floor Request)

属性State表示按钮是否已经被按下,Enabled表示按钮是否能用(如果被管理员锁住就不能用),OnFloor表示按钮对应的楼层号,方法Press()表示按下按钮,Reset()表示复位按钮,

6.指示灯类(Indicate Light)

指示灯分为楼层指示灯和电梯状态指示灯,其中State属性表示指示灯的状态(亮或灭)。楼层指示灯有Show(Floor)方法用于显示电梯所在楼层数,电梯状态指示灯有Show(UporDown)方法用于显示电梯上行或下行。

7.楼层锁类(lock)

属性State表示楼层锁的状态(关或开),OnFloor表示锁所在的楼层数,方法On()

8

队列类用于创建上行和下行队列,IsEmpty属性表示队列是否为空,方法Insert(Elevator)用于插入元素,DeleteHead()方法用于删除队列头元素,

9

Time属性用于设置定时的时间长,StartTimer()方法用于启动计时,当计时结束时执行Doing()

10

Type属性用语标识发生的异常类型,Source记录异常源,Doing()方法用于当发生异常时做出的处理。

11.类关系图。

实训内容

实训内容一绘制电梯图形

实训目的

(1)学会使用Java.awt包中的Graphics类控制和显示用户自定义界面成分,如字体、颜色和图形。

(2)掌握简单的图形动画效果。

实训要求

创建Applet程序,实现土5-1(a)所示简单的电梯二维图形,并当单击“开门“、“关门”按钮时实现图形上的关门、开门动作。如图5-1(b)就是单击开门后正在开门的过程中。

实训指导

java.awt包提供了控制字体的Font类、控制颜色的Color类。通过这两个类的属性的设置可以实现对界面上的字体和颜色的控制。

如closeDoor.setFont(new Font(“TimesRoman”,Font.BOLD,12));

这个语句将closeDoor上显示的文字颜色设置成红色。

Java.awt包还提供了用户绘图操作的类Graphics,其中包括了许多绘制文字和图形的相关方法。使用Graphics类可以绘制线、圆和椭圆、矩形和多边形、显示图像、动画和各种字体。

draeLine(int x1,int y1,int x2,int y2),在坐标(x1,y1)、(x2,y2)之间画一条直线。

drawRect(int x,int y,int width,int height)方法和fillRect(int x,int y,int width,int height)方法分别用当前颜色在指定位置绘制一个矩形框和一个填充的矩形,其中参数x,y分别是矩形的左上角坐标;width,height分别用语指定矩形的宽和高。

DrawOval(int x,int y,int width,int height)方法和fillOval(int x,int y,int width,int height)方法可以在指定的矩形区域内绘制椭圆,其中的参数x、y、width、height分别表示矩形的左上角x、y坐标、宽和高。

要实现以上自定义成分,还要借助于Applet类的paint()方法,由该方法画出实际的图形。当Applet运行时,将自动创建一个Graphics类的对象g,并把这个对象参数传递给paint()方法。在paint()方法中,就可以调用Graphics类提供的绘制图形和文字的方法了。

下面是程序的实现部分。

import java.awt.*;

import java.applet.*;

public class Applet1 extends java.applet.Applet {

Button closeDoor=new Button("关门");

Button openDoor=new Button("开门");

int[] yPos={60,50,50,60,60};

int[] xPos={30,40,90,100,30};

int flag=2;

public void init() {

closeDoor.setFont(new Font("TimesRoman",Font.BOLD,12));

closeDoor.setForeground(new Color(255,0,0));

add(closeDoor);

openDoor.setFont(new Font("TimesRoman",Font.BOLD,12));

openDoor.setForeground(new Color(0,255,0));

add(openDoor);

}

public boolean action(Event e,Object o){

if(e.target==closeDoor){

flag=0;

}

else if(e.target==openDoor){

flag=1;

}

repaint();

return true;

}

public void paint(Graphics g){

g.setColor(new Color(150,150,50));

g.fillRect(30,60,70,90);

g.setColor(new Color(20,20,150));

g.fillPolygon(xPos,yPos,4);

g.setColor(new Color(190,150,150));

g.drawRect(30,60,70,2);

g.setColor(new Color(0,0,0));

g.drawOval(105,72,18,18);

g.setColor(new Color(0,0,255));

g.fillArc(101,75,27,27,60,60);

g.setColor(new Color(0,0,0));

g.drawOval(105,100,18,18);

g.setColor(new Color(0,0,255));

g.fillArc(102,88,27,27,-120,60);

if(flag==0){

g.setColor(new Color(150,40,40));

for(int i=0;i<=33;i++){

g.draw3DRect(30,63,1+i,86,true);

g.draw3DRect(99-i,63,1+i,86,true);

}

}

else if(flag==1){

g.setColor(new Color(150,40,50));

g.draw3DRect(30,63,34,86,true);

g.setColor(new Color(150,40,50));

g.draw3DRect(66,63,34,86,true);

g.setColor(new Color(150,150,40));

for(int i=0;i<=33;i++){

g.fillRect(64-i,63,2*i+1,86);

try{

Thread.sleep(100);

}

catch(InterruptedException e){

showStatus(e.toString());

}

}

}

else{

g.setColor(new Color(150,40,50));

g.draw3DRect(30,63,34,86,true);

g.setColor(new Color(150,40,50));

g.draw3DRect(66,63,34,86,true);

}

flag=2;

}

}

实训内容二实现电梯上下运行

实训目的

(1)掌握图像的装卸、显示的方法。

(2)掌握简单动画效果的实现。

实训要求

(1)如图5-2所示,装入一幅图像并显示出来。

(2)当单击“上行“按钮时,图像向上移动,直到上面的横线处停下。

(3)当单击“下行“按钮时图像向下移动,直到下面的横线处停下。

实训指导

要装入并显示一幅图像,需要有以下几个步骤。

①需要定义Image类的对象,如

Image Elevator_Image;

语句就是定义Image类的对象Elevator_Image。

②装载图像,如

Elevator_Image=getImage(getDocumentBase(),”Img01.gif”);

语句就是将图像Img01.gif装入到对象Elevator_Image中,其中getImage方法的第一个参数表示图像所在的目录,getDocumentBase()方法的功能是获取HTML文档所在的URL;第二个参数表示图像的文件名。

③显示图像,如

g.drawImage(Elevator_Image,50,ElePositonPix,this);

语句就是将装在对象Elevator_Image中的图像显示出来,第二个参数和第三个参数分别指示图像显示的左上角横坐标和纵坐标;最后一个参数是图像观察器,即显示该图像的容器对象。

另外,实现图像移动的鲜果是通过循环改变图像显示位置的纵坐标来实现的。

相应的程序如下所示

import java.awt.*;

import java.applet.*;

public class Applet2 extends java.applet.Applet {

Button upB=new Button("▲");

Button dnB=new Button("▼");

int flag=2;

Image Elevator_Image;

int ElePositionPix=80;

public void init() {

add(upB);

add(dnB);

Elevator_Image=getImage(getDocumentBase(),"Img01.gif");

}

public boolean action(Event e ,Object o){

if(e.target==upB)

{

flag=0;

}

else if(e.target==dnB)

{

flag=1;

}

repaint();

return true;

}

public void paint(Graphics g){

g.drawLine(10,40,140,40);

g.drawLine(10,250,140,250);

g.drawImage(Elevator_Image,50,ElePositionPix,this);

if(flag==0)

{

for(;ElePositionPix>=50;ElePositionPix--)

{

g.drawImage(Elevator_Image,50,ElePositionPix,this);

try{

Thread.sleep(100);

}

catch(InterruptedException e){

showStatus(e.toString());

}

}

}

else if(flag==1)

{

for(;ElePositionPix<=200;ElePositionPix++){

g.drawImage(Elevator_Image,50,ElePositionPix,this);

try{

Thread.sleep(100);

}

catch(InterruptedException e){

showStatus(e.toString());

}

}

}

}

}

实训内容三实现电梯控制仿真界面设计

实训目的

(1)学会使用各种容器组建,重点掌握Applet和Panel容器的使用。

(2)学会流式布局、网格布局、边框布局和网格袋布局这4种布局方式的界面设计。实训要求

为了实现电梯控制的防真,需要设计出与实际电梯运行相似的界面,这个范例就是为实现电梯控制防真而设计一个界面。如图6-2所示。

将这个界面分成3部分来看,左边部分代表一座楼,颜色深浅分别代表不同的楼层,F1~F6分别表示一楼到六楼,每个楼层都有标识着向上和向下箭头的按钮,分别表示上行和下行按钮;中间部分是电梯通道,绿色的方形图片表示电梯;界面的右边部分包含着“启动电梯”按钮、“关闭电梯”按钮、电梯位置指示、电梯内的楼层按钮板。

实训指导

(1)设置HTML文件中的Applet的显示尺寸width和height为合适的值,如290和400。方法如下:选择HTML文件,用鼠标右击打开弹出菜单,单击Open菜单选项,在代码编辑窗口中打开HTML文件。然后选择Source选项卡,此时将看到一块灰色的区域,即Applet 的显示区域,在该区域上用鼠标右击打开弹出菜单,选择Always V iew AsText菜单项,以文本方式显示该区域的代码,修改width和height参数即可。

(2)回到Java Applet程序,向Applet容器设置成网格袋布局方式,添加3个Panel将界面从左到右分成3部分,并且使得右边和左边的Panel纵横都向外扩充,而中间部分的Panel不扩充。

(3)将左部分的面板设置成网格布局方式,并在这个面板中添加6个子面板,将这6个面板反别设置成不同的颜色,代表6个楼层。

(4)将这6个子面板设置成流式布局方式,并分别向这6个面板添加楼层标示和上行和下行按钮。

(5)将右部分的面板设置成网格布局方式,添加两个子面板将其分成上下两部分并分别设置背景和颜色;将上部分的子面板设置成网格布局方式,向其中添加如

图6-2所示的启动、关闭和状态显示信息;将下部分面板设置成边框布局方式,并向其中添加相应的控制按钮。

(6)装入电梯模拟图片,在Applet的合适位置显示该图片。

实现此布局的完整程序代码如下:

import java.awt.*;

import java.applet.*;

public class Applet3 extends java.applet.Applet {

Panel Floor_Panel=new Panel();

Panel Elevator_Panel=new Panel();

Panel Indication_Panel=new Panel();

Panel Floor1_Panel=new Panel();

Panel Floor2_Panel=new Panel();

Panel Floor3_Panel=new Panel();

Panel Floor4_Panel=new Panel();

Panel Floor5_Panel=new Panel();

Panel Floor6_Panel=new Panel();

Label FloorLabel1=new Label("F1");

Label FloorLabel2=new Label("F2");

Label FloorLabel3=new Label("F3");

Label FloorLabel4=new Label("F4");

Label FloorLabel5=new Label("F5");

Label FloorLabel6=new Label("F6");

FloorButton UpButton1=new FloorButton(1,true,"∧");

FloorButton DnButton1=new FloorButton(1,false,"∨");

FloorButton UpButton2=new FloorButton(2,true,"∧");

FloorButton DnButton2=new FloorButton(2,false,"∨");

FloorButton UpButton3=new FloorButton(3,true,"∧");

FloorButton DnButton3=new FloorButton(3,false,"∨");

FloorButton UpButton4=new FloorButton(4,true,"∧");

FloorButton DnButton4=new FloorButton(4,false,"∨");

FloorButton UpButton5=new FloorButton(5,true,"∧");

FloorButton DnButton5=new FloorButton(5,false,"∨");

FloorButton UpButton6=new FloorButton(6,true,"∧");

FloorButton DnButton6=new FloorButton(6,false,"∨");

Panel SubInd_Panel1=new Panel();

Panel SubInd_Panel2=new Panel();

Panel SubInd_Panel3=new Panel();

Button Start_Button=new Button("启动电梯");

Button Stop_Button=new Button("关闭电梯");

Label Indication_Prompt=new Label("电梯所在层"); Label State_Prompt=new Label("电梯状态");

Label Indication_Light=new Label("1层");

Label State_Light=new Label("停止");

Label ETitleLabel=new Label("电梯内楼层按钮板"); Label EastLabel=new Label();

Label WestLabel=new Label();

Label SouthLabel=new Label();

DesFlButton DesFl_Button1=new DesFlButton(1,"1"); DesFlButton DesFl_Button2=new DesFlButton(2,"2"); DesFlButton DesFl_Button3=new DesFlButton(3,"3"); DesFlButton DesFl_Button4=new DesFlButton(4,"4"); DesFlButton DesFl_Button5=new DesFlButton(5,"5"); DesFlButton DesFl_Button6=new DesFlButton(6,"6"); Image eImage;

public void init() {

GridBagLayout gbl=new GridBagLayout();

GridBagConstraints gbc=new GridBagConstraints();

setLayout(gbl);

gbc.gridx=0;gbc.gridy=0;

gbc.gridwidth=1;

gbc.gridheight=1;

gbc.fill=GridBagConstraints.BOTH;

gbc.anchor=GridBagConstraints.WEST;

gbc.weightx=1;gbc.weighty=1;

gbc.insets=new Insets(0,0,0,0);

gbl.setConstraints(Floor_Panel,gbc);

add(Floor_Panel);

gbc.gridx=1;gbc.gridy=0;

gbc.gridwidth=1;

gbc.gridheight=1;

gbc.fill=GridBagConstraints.HORIZONTAL;

gbc.anchor=GridBagConstraints.NORTHWEST;

gbc.weightx=1;gbc.weighty=1;

gbc.insets=new Insets(0,0,0,0);

gbl.setConstraints(Elevator_Panel,gbc);

add(Elevator_Panel);

gbc.gridx=2;gbc.gridy=0;

gbc.gridwidth=1;

gbc.gridheight=1;

gbc.fill=GridBagConstraints.BOTH;

gbc.anchor=GridBagConstraints.EAST;

gbc.weightx=1;gbc.weighty=1;

gbc.insets=new Insets(0,0,0,0);

gbl.setConstraints(Indication_Panel,gbc);

add(Indication_Panel);

Floor_Panel.setLayout(new GridLayout(6,1));

Floor6_Panel.setBackground(new Color(50,220,220));

Floor5_Panel.setBackground(new Color(50,190,190));

Floor4_Panel.setBackground(new Color(50,160,160));

Floor3_Panel.setBackground(new Color(50,130,130));

Floor2_Panel.setBackground(new Color(50,100,100));

Floor1_Panel.setBackground(new Color(50,70,70));

Floor_Panel.add(Floor6_Panel);

Floor_Panel.add(Floor5_Panel);

Floor_Panel.add(Floor4_Panel);

Floor_Panel.add(Floor3_Panel);

Floor_Panel.add(Floor2_Panel);

Floor_Panel.add(Floor1_Panel);

Floor1_Panel.setLayout(new FlowLayout(FlowLayout.RIGHT)); FloorLabel1.setForeground(new Color(255,0,0));

FloorLabel1.setFont(new Font("TimesRoman",Font.BOLD,18)); UpButton1.setCursor(new Cursor(Cursor.HAND_CURSOR)); UpButton1.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton1.setCursor(new Cursor(Cursor.HAND_CURSOR)); DnButton1.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton1.setEnabled(false);

Floor1_Panel.add(FloorLabel1);

Floor1_Panel.add(UpButton1);

Floor1_Panel.add(DnButton1);

Floor2_Panel.setLayout(new FlowLayout(FlowLayout.RIGHT)); FloorLabel2.setForeground(new Color(255,0,0));

FloorLabel2.setFont(new Font("TimesRoman",Font.BOLD,18)); UpButton2.setCursor(new Cursor(Cursor.HAND_CURSOR)); UpButton2.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton2.setCursor(new Cursor(Cursor.HAND_CURSOR)); DnButton2.setFont(new Font("TimesRoman",Font.BOLD,10)); Floor2_Panel.add(FloorLabel2);

Floor2_Panel.add(UpButton2);

Floor2_Panel.add(DnButton2);

Floor3_Panel.setLayout(new FlowLayout(FlowLayout.RIGHT)); FloorLabel3.setForeground(new Color(255,0,0));

FloorLabel3.setFont(new Font("TimesRoman",Font.BOLD,18)); UpButton3.setCursor(new Cursor(Cursor.HAND_CURSOR)); UpButton3.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton3.setCursor(new Cursor(Cursor.HAND_CURSOR));

DnButton3.setFont(new Font("TimesRoman",Font.BOLD,10)); Floor3_Panel.add(FloorLabel3);

Floor3_Panel.add(UpButton3);

Floor3_Panel.add(DnButton3);

Floor4_Panel.setLayout(new FlowLayout(FlowLayout.RIGHT)); FloorLabel4.setForeground(new Color(255,0,0));

FloorLabel4.setFont(new Font("TimesRoman",Font.BOLD,18)); UpButton4.setCursor(new Cursor(Cursor.HAND_CURSOR)); UpButton4.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton4.setCursor(new Cursor(Cursor.HAND_CURSOR)); DnButton4.setFont(new Font("TimesRoman",Font.BOLD,10)); Floor4_Panel.add(FloorLabel4);

Floor4_Panel.add(UpButton4);

Floor4_Panel.add(DnButton4);

Floor5_Panel.setLayout(new FlowLayout(FlowLayout.RIGHT)); FloorLabel5.setForeground(new Color(255,0,0));

FloorLabel5.setFont(new Font("TimesRoman",Font.BOLD,18)); UpButton5.setCursor(new Cursor(Cursor.HAND_CURSOR)); UpButton5.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton5.setCursor(new Cursor(Cursor.HAND_CURSOR)); DnButton5.setFont(new Font("TimesRoman",Font.BOLD,10)); Floor5_Panel.add(FloorLabel5);

Floor5_Panel.add(UpButton5);

Floor5_Panel.add(DnButton5);

Floor6_Panel.setLayout(new FlowLayout(FlowLayout.RIGHT)); FloorLabel6.setForeground(new Color(255,0,0));

FloorLabel6.setFont(new Font("TimesRoman",Font.BOLD,18)); UpButton6.setCursor(new Cursor(Cursor.HAND_CURSOR)); UpButton6.setFont(new Font("TimesRoman",Font.BOLD,10)); DnButton6.setCursor(new Cursor(Cursor.HAND_CURSOR)); DnButton6.setFont(new Font("TimesRoman",Font.BOLD,10)); Floor6_Panel.add(FloorLabel6);

Floor6_Panel.add(UpButton6);

Floor6_Panel.add(DnButton6);

Indication_Panel.setLayout(new GridLayout(2,1));

SubInd_Panel1.setBackground(new Color(150,170,170));

SubInd_Panel2.setBackground(new Color(180,200,200)); Indication_Panel.add(SubInd_Panel1);

Indication_Panel.add(SubInd_Panel2);

SubInd_Panel1.setLayout(new GridLayout(6,1,5,5));

Indication_Prompt.setAlignment(1);

Indication_Light.setAlignment(1);

Indication_Light.setForeground(new Color(255,0,0));

Indication_Light.setFont(new Font("TimesRoman",Font.BOLD,18));

State_Prompt.setAlignment(1);

State_Light.setAlignment(1);

State_Light.setForeground(new Color(255,0,0));

State_Light.setFont(new Font("TimesRoman",Font.BOLD,18));

SubInd_Panel1.add(Start_Button);

SubInd_Panel1.add(Stop_Button);

SubInd_Panel1.add(Indication_Prompt);

SubInd_Panel1.add(Indication_Light);

SubInd_Panel1.add(State_Prompt);

SubInd_Panel1.add(State_Light);

SubInd_Panel2.setLayout(new BorderLayout(5,10));

ETitleLabel.setAlignment(1);

SubInd_Panel2.add("North",ETitleLabel);

SubInd_Panel2.add("Center",SubInd_Panel3);

SubInd_Panel2.add("East",EastLabel);

SubInd_Panel2.add("West",WestLabel);

SubInd_Panel2.add("South",SouthLabel);

SubInd_Panel3.setLayout(new GridLayout(2,3,5,10));

SubInd_Panel3.add(DesFl_Button1);

SubInd_Panel3.add(DesFl_Button2);

SubInd_Panel3.add(DesFl_Button3);

SubInd_Panel3.add(DesFl_Button4);

SubInd_Panel3.add(DesFl_Button5);

SubInd_Panel3.add(DesFl_Button6);

eImage=getImage(getDocumentBase(),"Img02.gif");

}

public void paint(Graphics g){

g.drawImage(eImage,300,366,this);

}

}

class FloorButton extends Button

{

int Floor;

boolean IsUp;

FloorButton(int VFloor,boolean VIsUp,String VLabel){

super(VLabel);

Floor=VFloor;

IsUp=VIsUp;

}

public int getFloor(){

return Floor;

}

}

class DesFlButton extends Button{

int Floor;

DesFlButton(int VFloor,String VLabel)

{

super(VLabel);

Floor=VFloor;

}

public int getFloor(){

return Floor;

}

}

实训内容四电梯控制模拟系统的异常定义和处理

实训目的

(1)理解异常的工作方式。

(2)学会创建异常类、对异常的捕获和处理。

实训要求

(1)创建电梯超重的异常类、电梯在楼层间(层与层之间)停止运行的异常类和非停止状态下开门的异常类。

(2)在程序中实现上述异常的捕获和处理。

实训指导

在电梯控制系统中,异常处理极其重要,因为这关系到人身安全的问题。大体上电梯的异常电梯超重、电梯在楼层之间(层与层之间)停止运行和非停止状态下开门有3种;当电梯出现以上这些异常时,需要进行异常处理,如报警。

为了简化程序,这里把电梯运行控制的程序省略了。我们创建3个按钮,单击这3个按纽时分别产生以上3类异常(模仿电梯产生这3类异常),并对产生的异常进行处理。

首先需要定义异常类,异常类的定义形式如下:

class 自定义异常类名extends Exception

{

自定义异常的构造方法

其他方法

}

自定义异常类必须作为Exception类的子类被定义。

当系统处于某种情况即说明系统发生了异常,这时需要使用如下方法抛出异常。

If(某种条件成立)

{

throw(new z自定义异常构造方法);

}

系统抛出异常后,还需要对异常进行捕获,并对异常作出处理,如下是异常的捕获和处理方法。

try

{

可能抛出异常的语句组;

}

catch(异常类名异常对象名参数)

{

异常处理语句组;

}

下面给出了电梯超重的异常定义及异常处理捕获的程序,关于电梯的停止和开门的异常定义及捕获与此相类似。

import java.awt.*;

import java.applet.*;

public class Applet4 extends java.applet.Applet {

Button OverW_B=new Button("运行");

TextField Weight_T=new TextField(8);

Button ExcepStop_B=new Button("停止");

Button ExcepOpen_B=new Button("开门");

TextField Prompt_T=new TextField(50);

public void init() {

add(OverW_B);

add(Weight_T);

add(ExcepStop_B);

add(ExcepOpen_B);

Prompt_T.setEditable(false);

add(Prompt_T);

}

public boolean action(Event e,Object o){

if(e.target==OverW_B)

{

try{

start_El();

}

catch(OverWeightExpception Obl){

Prompt_T.setText(Obl.toString());

}

}

return true;

}

public void start_El() throws OverWeightExpception

{

if(Integer.parseInt(Weight_T.getText())>3000)

{

throw(new

OverWeightExpception(Integer.parseInt(Weight_T.getText())));

}

else

{

Prompt_T.setText("电梯正常启动");

}

}

}

class OverWeightExpception extends Exception

{

private int Weight=0;

OverWeightExpception()

{

super("电梯超重,不能正常运行!");

}

OverWeightExpception(int TmpWeight)

{

Weight=TmpWeight;

}

public String toString()

{

String TmpStr;

if(Weight>0)

TmpStr="电梯当前的承重为"+Integer.toString(Weight)+"Kg,超过了电梯的最大载重3000Kg";

else

TmpStr="电梯超重!";

return TmpStr;

}

}

实训内容五完成电梯的控制运行功能

实训目的

(1)掌握多线程编程思维。

(2)学会控制多线程的运行,并进一步加强较复杂程序的编写。

实训要求

无机房电梯控制柜总体设计要求

无机房电梯控制柜总体设计要求 上世纪90年代以前,液压电梯曾因结构紧凑、机房位置灵活而倍受发达国家用户青睐。无机房电梯在液压电梯优点的基础上,采用曳引驱动系统取代液压传动系统,因此在结构、性能、节能等方面均优于液压电梯;无机房电梯与有机房(普通)电梯相比,节省了建筑空间,降低了建筑成本,避免了建筑结构复杂化,使建筑物整体造型美观。因此,自上世纪90年代后期无机房电梯在国内外迅速发展。 ??? 为了满足安装、检修、救援操作、动态测试等方面的需要,无机房电梯的控制系统与有机房的相比,存在诸多不同之处。本文只是从无机房电梯总体设计和降低风险的角度,谈谈无机房电梯控制系统总体要求和特点。 ??? 1 控制柜结构 ??? 1.1 外形尺寸 ??? 控制柜的外形尺寸除受所采用的元器件尺寸约束外,主要取决于其设置位置。如果控制柜设置在层门旁边则其外形尺寸应宽度窄、厚度薄,以便其在层门旁边布置并不影响层门运动;如果控制柜设置在井道内驱动主机周围,则其厚度尺寸应比较小,以保证其与井道内运动部件有一定的距离。 ??? 1.2 柜门 ??? 如果控制柜设置在井道外,则控制柜的门应满足下列要求:①控制柜的门不应装设手柄,以防无关人员拉拽该手柄损坏控制柜;②③控制柜的门与柜体之间采用防水结构,以防清洗楼道时,液体意外流入控制柜内,造成电气故障。 ??? 2 控制柜设置部位 ??? 2.1 位置 ??? 无机房电梯取消机房后,其控制系统不得不设置在井道外或井道内适当位置处,其具体位置受驱动主机在井道内位置影响较大。 ??? 如果控制柜设置在层门旁边,其底面与所在楼层地面之间应留有一定的垂直距离(建议至少0.3m),以防止清洗楼面或意外发生跑水时,水浸入控制柜;控制柜前面与装修后的墙面最好组成平面,以防止意外损坏控制柜和引起无关人员的好奇。 ??? 2.2 散热与防尘 ??? 为了保证控制柜内各部件正常工作,除满足抗干扰等电气要求外,还应考虑控制柜结构应有利于电气元件的散热,并且在考虑散热的同时还应注意防尘。如果控制柜设置在层门旁边且嵌入井道前壁,此时柜的后面作为主要散热面,则其后面板应与井道直接相通。如果控制柜设置在井道壁上,则其下面、侧面、正面可作为散热面,且电梯运行过程中在井道中形成空气对流,有利于满足散热要求,但维修时应注意对控制柜除尘。 ??? 2.3 便于检修操作 ??? 控制柜的设置位置应便于工作人员接近,以进行安装调试、检修、救援、试验等操作。 ??? 3 维修工作区域 ??? 3.1 工作区域 ??? 无论控制柜设置在井道内还是在井道外,其前面至少应有宽度为柜宽与0.5m两者之间较大值、深度为0.7m的水平净面积,该净面积区域工作净高度应至少为1.8m。 ??? 3.2 工作区域专用 ??? 当控制柜设置在井道外,且无关人员能够接近上述面积时,工作人员对控制柜进行操作过程中,应采用安全保护围封将该面积隔离,该围封应采用黄颜色,且在明显处有类似于"危险!请勿靠近"的警示标语,以保护工作人员的安全和防止引发其他危险。 ??? 3.3 维修平台 ??? 当从轿厢内或轿顶上对机器设备进行维护或检查时,如果由于维护或检查造成轿厢任何种类的失控或

电梯的电气控制系统设计与实现

编订:__________________ 审核:__________________ 单位:__________________ 电梯的电气控制系统设计 与实现 Deploy The Objectives, Requirements And Methods To Make The Personnel In The Organization Operate According To The Established Standards And Reach The Expected Level. Word格式 / 完整 / 可编辑

文件编号:KG-AO-7382-100 电梯的电气控制系统设计与实现 使用备注:本文档可用在日常工作场景,通过对目的、要求、方式、方法、进度等进行具体的部署,从而使得组织内人员按照既定标准、规范的要求进行操作,使日常工作或活动达到预期的水平。下载后就可自由编辑。 电梯是当前高层建筑不可缺少的垂直方向的交通运输工具,随着计算机及微电子技术的快速发展,电梯控制技术发生了巨大变化,其中PLC控制系统代替传统的继电器控制以及电梯采用了对电动机实现线性调速的调压调频技术,能达到电梯安全平稳运行。 随着人们生活水平的提高及高层建筑的普及,电梯是当前高层建筑不可缺少的垂直方向的交通工具,电梯是集机电一体的复杂系统,涉及机械传动、电气控制和土建等工程领域多种领域专业与一体的综合技术。随着社会的发展及对安全的重视,在设计电梯的时候,应具有高度的安全性。这样就对建筑内的电梯的调速精度、调速范围等静态和动态特性提出了更高的要求。当前由可编程序控制器(PLC)和微机组成的电梯运行逻辑控制系统具有可靠性高、维护方便、开发

电梯的电气控制系统设计与实现(通用版)

Safety is the goal, prevention is the means, and achieving or realizing the goal of safety is the basic connotation of safety prevention. (安全管理) 单位:___________________ 姓名:___________________ 日期:___________________ 电梯的电气控制系统设计与实现 (通用版)

电梯的电气控制系统设计与实现(通用版)导语:做好准备和保护,以应付攻击或者避免受害,从而使被保护对象处于没有危险、不受侵害、不出现事故的安全状态。显而易见,安全是目的,防范是手段,通过防范的手段达到或实现安全的目的,就是安全防范的基本内涵。 电梯是当前高层建筑不可缺少的垂直方向的交通运输工具,随着计算机及微电子技术的快速发展,电梯控制技术发生了巨大变化,其中PLC控制系统代替传统的继电器控制以及电梯采用了对电动机实现线性调速的调压调频技术,能达到电梯安全平稳运行。 随着人们生活水平的提高及高层建筑的普及,电梯是当前高层建筑不可缺少的垂直方向的交通工具,电梯是集机电一体的复杂系统,涉及机械传动、电气控制和土建等工程领域多种领域专业与一体的综合技术。随着社会的发展及对安全的重视,在设计电梯的时候,应具有高度的安全性。这样就对建筑内的电梯的调速精度、调速范围等静态和动态特性提出了更高的要求。当前由可编程序控制器(PLC)和微机组成的电梯运行逻辑控制系统具有可靠性高、维护方便、开发周期短,对机械零部件和电器元件都采取了很大的安全系数和保险系数。电梯的控制是相对比较复杂的,PLC可编程控制器把机械与电气部件有机地结合在一个设备内,把仪表、电子和计算机的功能综合在一起,使得

基于单片机的电梯控制系统毕业论文完整

. .. . 分类号 XX大学 毕业设计(论文) 题目基于单片机的电梯控制系统 并列英文题目Elevator control system based on single chip 系部:电子信息系专业:应用电子技术 姓名:XXX 班级:电子0801 指导教师:XXX 职称:教师 论文报告提交日期:2011年5月25日

XX大学

模拟电梯控制系统设计 摘要单片机即单片微型计算机(Single-Chip Microcomputer ),是集CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。其中51单片机是各种单片机中最为典型和最有代表性的一种,广泛应用于各个领域.电梯是集机械原理应用、电气控制技术、微处理器技术、系统工程学等多学科和技术分支于一体的机电设备,它是建筑中的永久垂直交通工具。本论文选择AT89S51为核心控制元件,设计了一个八层电梯系统,使用单片机汇编语言进行编程,实现运送乘客到任意楼层,并且显示电梯的楼层和上下行。利用单片机控制电梯有成本低,通用性强,灵活性大及易于实现复杂控制等优点。 关键词单片机电梯系统控制

Simulated elevator control system design Abstract Microcontroller that microcomputer (Single-Chip Microcomputer) gathering CPU, RAM, ROM, the timing, number and variety of interface integrated microcontrollers. 51 various SCM SCM is the most typical and most representative of a widely used in various fields. Elevator is the application of the principle set machinery, electrical control technology, microprocessor technology, systems engineering and other technical disciplines and branches of the integration of mechanical and electrical equipment, which is building a permanent vertical transport. This paper choice AT89S51 control of the core components, designed a new 8 storey lift systems, using single-chip assembly language programming, transporting passengers arrived a floor, it also shows the elevator floor and downlink. SCM control elevators low cost, versatility, flexibility and ease of large complex control advantages Keyboards Single-Chip Microcomputer Elevator system control

电梯控制智能化系统设计方案

精选范文、公文、论文、和其他应用文档,希望能帮助到你们! 电梯控制智能化系统设计方案 目录 第一章概述 (2) 第二章系统需求分析 (4) 第三章系统设计目标及原则 (5) 3.1系统设计目标 (5) 3.2系统设计原则 (6) 第四章系统解决方案及技术描述 (6) 4.1系统概述 (6) 4.2系统基本功能及特点 (7) 4.3系统结构 (8) 第五章设备介绍 (10) 第六章工作原理 (12) 第七章系统设备清单及价格 (14) 第八章工程实施 (15) 第九章售后服务 (17)

第十章质量保证 (19) 第一章概述 1.概述: 物业管理公司或管理人员为了能对楼宇内各种人员的进出 进行更有效、更安全的管理,有效的控制闲杂人员的进入,可以

通过采用对电梯的合理控制实现这种功能需求。VD-TK800是专门用于楼宇的电梯控制和集成的电梯专用控制器。通过采用VD-TK800对电梯按键面板进行改造后,所有使用电梯的持卡人,都必须先经过系统管理员授权。使用电梯时,不同的人有不同的权限分配,每个进入电梯的人经过授权可以进入指定的区域或楼层,并且可以根据时间表进行授权管理。未经授权,无法进入管理区域的楼层,并对重要楼层进行时间段控制。控制器不管是脱机运行还是联机控制,都可记录大量的交易数据,使得电梯的所有人员进出记录都有据可寻。 VD-TK800基于控制软件平台使用的一个控制模块,它与ACS2002门禁控制系统相互兼容,组成一个强大的保安系统网络,也可以独立使用来控制电梯。VD-TK800可在线运行,可以单机独立运行,即使关闭PC机,VD-TK800也可以正常使用,确保其稳定可靠的控制功能,从而提高楼宇管理层次。 VD-TK800/E智能电梯控制器

四层电梯控制系统设计

电气与电子信息学院 课程设计说明书 课程名称:电气控制技术与PLC课程设计题目:四层电梯控制系统设计 专业:电气工程及其自动化

年 级: 2014 学 生: 学 号: 指导教师: 完成日期: 2018年 1 月 5 日 四层电梯控制系统设计 摘 要:本设计采用FX2设计了四层电梯的控制系统,详细进行了参数计算,空气开关、接触器等诸多电器的选型,对主电路、控制回路进行了接线与保护。 控制PLC 系统FX2N 由于体积小,重量轻,能耗低,运行可靠性高,抗干扰能 力强,使用维修方便,系统的设计、安装、调试工作量小,容易改造,设计和调试周期较短等优点被我们选择,在控制过程分析基础之上采用或顺序控制法编写了梯形图程序,程序调试通过,实现了控制要求。最终在易控组态的的开发环境上我们模拟成功了四层电梯的控制。

目录 1前言................................................... 错误!未定义书签。2总体方案设计 ........................................... 错误!未定义书签。 2.1 方案1 ............................................... 错误!未定义书签。 2.2 方案2 (2) 2.3 方案选择............................................. 错误!未定义书签。3硬件设计.. (3) 3.1电梯简介 (3) 3.1.1 电梯的发展简史 (3) 3.1.2 电梯系统的基本结构 ...................................................... 错误!未定义书签。 3.1.3电梯控制系统的组成 (5) 3.2硬件选择 (5) 3.3三菱FX2N型PLC (6) 3.3.1 基本介绍 (6) 3.3.2 基本指令系统特点 (7) 3.3.3 FX2N产品的编程原件及其功能 (7) 3.4主电路图与接线图 (10) 3.4.1 主电路图 (10) 3.4.2 电梯控制信号原理 (11) 3.4.3 I/O分配表 (12) 3.4.4 PLC端口接线图 (13) 3.5控制面板设计 (14) 4软件设计 (15)

最新四层电梯的自动控制系统及模拟系统设计

四层电梯的自动控制系统及模拟系统设计

陕西国防工业职业技术学院 SHAANXI INSTITUTE OF TECHNOLOGY 毕业设计说明书 题目四层电梯的自动控制系统及模拟系统

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段

保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

电梯控制系统设计方案

上海四景计算机信息科技有限公司 电 梯 控 制 系 统 方 案

上海四景计算机信息科技有限公司 舒特电梯智能控制系统 ---楼宇自动化的首选 前言: 系统概述: 随着高科技的蓬勃发展,智能化管理已经走进了人们的生活。物业管理公司或管理人员为了能对楼宇内各种人员的进出进行更有效、更安全的管理,有效的控制闲杂人员的进入,可以通过采用对电梯的合理控制实现这种功能需求。所有的电梯楼层,都必须先经过系统管理员授权。使用电梯时,不同的人有不同的权限分配,每个进入电梯的人经过授权可以进入指定的区域或楼层,并且可以根据时间表进行授权管理。未经授权,无法进入管理区域的楼层,并对重要楼层进行时间段控制。控制器不管是脱机运行还是联机控制,都可记录大量的交易数据,使得电梯的所有人员进出记录都有据可寻。针对这些需求我们开发了电梯楼层控制器,并分为手动型和自动型两款,客户可以根据需求选择适合自己的产品。 通过智能卡管理电梯运行,可将闲杂人员阻止在电梯之外;同时,又起到了电梯省电省空耗的环保作用;也减少了出现电梯按键失灵的情况;延长了电梯使用寿命;加强了传统安全管理系统中管理的薄弱的一面;提高了物业的安全等级,电梯系统智能化控制已逐渐成为智能化建筑楼宇中必不可少弱电系统之一 二、选择使用电梯控制系统带来的好处 (一)使用梯控制系统可有效的控制闲杂人员的进入,可以通过采用对电梯的合理控制实现各种功能需求。 (二)使用梯控制系统能够提高楼盘的整体智能化程度,提升楼盘亮点和档次,充分体现智能化楼宇和智能化小区意义,是楼盘更具附加值。 (三)使用梯控制系统能够使公共电梯轻松晋级为私有电梯,能够让业主充分体现私有电梯的尊贵和方便性。 (四)使用梯控制系统能够为用户提供更方便和更公平使用。 (五)协助收取物业费 管理人员可对系统的用户卡设定使用权限,设定失效日期,便于控制管理费用的收取。 如用户使用到达使用的失效时间,则不能开梯,提醒并促使用户到达管理处及时缴费,对于不按时交纳物业费的业主,则不能使用电梯,有效的将管理费用与用户使用权限挂

自动化毕业论文(四层电梯的PLC控制系统设计与实现)概要

摘要 随着科学技术的发展,近年来我国的电梯生产技术得到了迅速发展,一些电梯厂也在不断改进设计、修改工艺。更新换代生产更新型的电梯,电梯主要分为机械系统与控制系统两大部份,随着自动控制理论与微电子技术的发展,电梯的拖动方式与控制手段均发生了很大的变化,交流调速是当前电梯拖动的主要发展方向。目前电梯控制系统主要有三种控制方式:继电路控制系统(早期安装的电梯多位继电器控制系统)、PLC控制系统、微机控制系统。继电器控制系统由于故障率高、可靠性差、控制方式不灵活以及消耗功率大等缺点,目前已逐渐被淘汰。微机控制系统虽在智能控制方面有较强的功能,但也存在抗扰性差,系统设计复杂,一般维修人员难以掌握其维修技术等缺陷。而PLC控制系统由于运行可靠性高,使用维修方便,抗干扰性强,设计和调试周期较短等优点,倍受人们重视等优点,已成为目前在电梯控制系统中使用最多的控制方式,目前也广泛用于传统继电器控制系统的技术改造。 关键词PLC;电梯;控制系统;设计 I

Abstract Along with science's and technology's development, the recent years, our country's elevator production technology obtained the rapidly expand. Some elevator factory unceasingly is also improving the design, the revision craft. The renewal production renewal's elevator, the elevator mainly divides into the mechanical system and the control system two major parts, along with the automatic control theory and microelectronic technology's development, elevator's dragging way and the control method has had the very big change, the exchange velocity modulation is the current elevator dragging main development direction. At present the lift control system mainly has three control modes: Following electric circuit control system (“early installment elevator many black-white control system), PLC control system, microcomputer control system. Because the black-white control system the failure rate is high, the reliability is bad, control mode not nimble as well as consumed power big and so on shortcomings, at present has been eliminated gradually. Key words PLC, elevator, control system, design II

四层电梯控制系统设计-

四层电梯控制系统设计-

————————————————————————————————作者:————————————————————————————————日期:

电气与电子信息学院 课程设计说明书 课程名称:电气控制技术与PLC课程设计题目:四层电梯控制系统设计 专业:电气工程及其自动化

年级:2014 学生: 学号: 指导教师: 完成日期:2018年 1 月 5 日 四层电梯控制系统设计 摘要:本设计采用FX2设计了四层电梯的控制系统,详细进行了参数计算,空气开关、接触器等诸多电器的选型,对主电路、控制回路进行了接线与保护。 控制PLC系统FX2N由于体积小,重量轻,能耗低,运行可靠性高,抗干扰能力强,使用维修方便,系统的设计、安装、调试工作量小,容易改造,设计和调试周期较短等优点被我们选择,在控制过程分析基础之上采用或顺序控制法编写了梯形图程序,程序调试通过,实现了控制要求。最终在易控组态的的开发环境上我们模拟成功了四层电梯的控制。 关键词:PLC ,四层电梯, FX2N

目录 1前言.................................................. 错误!未定义书签。2总体方案设计 .......................................... 错误!未定义书签。 2.1 方案1.............................................. 错误!未定义书签。 2.2 方案2 (2) 2.3 方案选择............................................ 错误!未定义书签。3硬件设计.. (3) 3.1电梯简介 (3) 3.1.1 电梯的发展简史 (3) 3.1.2 电梯系统的基本结构 ....................................... 错误!未定义书签。 3.1.3电梯控制系统的组成 (5) 3.2硬件选择 (5) 3.3三菱FX2N型PLC (6) 3.3.1 基本介绍 (6) 3.3.2 基本指令系统特点 (7) 3.3.3 FX2N产品的编程原件及其功能 (7) 3.4主电路图与接线图 (10) 3.4.1 主电路图 (10) 3.4.2 电梯控制信号原理 (11) 3.4.3 I/O分配表 (12) 3.4.4 PLC端口接线图 (13) 3.5控制面板设计 (14) 4软件设计 (15)

电梯自动控制系统的设计

电梯控制系统模型 本论文主要介绍的是电梯自动控制模型,硬件部分我们使用的是单片机及外围电路组成高度为四层楼的电梯控制系统。单片机采用AT89C51,晶体振荡器选6MHz,C51、C52为30uF瓷片电容与晶体振荡器形成时钟电路。电容C53、电阻R51、R52和按键RESET构成上电复位和手动复位电路。软件部分采用了两种控制方案,简易控制方案只是简单的电梯上升下降,在各楼层短暂停留。而进一步控制方案则考虑各楼层的信号请求,以完成各楼层的升降控制。该系统具有工作稳定,操作简单等优点。 第一章引言 据国外有关资料介绍,公元前2800年在古代埃及,为了建筑当时的金字塔,曾使用过由人力驱动的升降机械。公元1765年瓦特发明了蒸汽机之后,1858年美国研制出以蒸汽为动力,并通过皮带转动和蜗轮减速装置驱动的电梯。1878年英国的阿姆斯特郎发明了水压梯。并随着水压梯的发展,淘汰了蒸汽梯。后来又出现了采用液压泵和控制阀以及直接柱塞式和侧柱塞式结构的液压梯,这种掖压梯至今仍为人们所采用。但是,电梯得以兴盛发展的原因在于采用了电力作为动力来源.。在20世纪初,美国奥梯斯电梯公司首先使用直流电动机作为动力,生产出以槽轮式驱动的直流电梯,从而为今天的高速度,高行程电梯的发展奠定了基础。20世纪30年代美国纽约市的102层摩天大楼建成,美国奥梯斯电梯公司为这座大楼制造和安装了74台速度为6.0M\S的电梯。从此以后,电梯这个产品,一直在日新月异的发展着.目前电梯产品,不但规格品种多,自动化强,而且安全可靠,乘坐舒服.近几年来,随着电子工业的发展,微处理机和电子计算机已成功的应用到电梯的电气控制系统中去,采用无触点元件的电梯电气控制系统已开始批量生产。 第二章设计要求 采用AT89C51单片机及外围电路组成高度为四层楼的电梯控制系统。 电梯内电路由FS1、FS2、FS3和FS4四个发光二极管作为指示灯,电梯模型上电后,电梯的起始位置为一楼,等待控制台Start按键按下,数码管显示“1”。当Start按键按下后,电梯开始向上运动,控制台的上升指示灯UP亮。2s后到达二楼,数码管显示“2”并在二楼停留5s,然后继续上升。每层楼停留5s,直到四楼。在四楼停留5s后开始下降,控制台的指示灯DOWN亮。每层楼停5s,直到一楼。然后重复上述过程。如果在一个上下循环中按下过Stop键,电梯下降到一楼后停止工作。直到再次按下Start键后重新恢复工作

基于单片机的智能电梯控制系统设计

基于单片机的智能电梯控制系统设计

摘要 本文介绍了一种采用单片机STC89C52芯片进行电梯控制系统的设计方法,主要阐述如何使用单片机进行编程来实现四层电梯的智能控制,利用单片机编程简洁而又多变的设计方法,缩短了研发周期,同时使电梯控制系统体积更小功能更强大。本设计实现了电梯控制系统所需的一些基本功能,能通过电梯内按键或者电梯外上升、下降按键选择楼层,数码管显示实时楼层数,LED显示实时电梯运行状态。原理图和PCB部分采用protel99se专业软件来设计,实现将设计产品化。本次设计更注重了把一些新的思路加入到设计中。主要包括采用了STC89C52芯片,使用C语言进行编程,使其具有了更强的移植性,更加利于产品升级。 关键词:STC89C52;电梯控制系统;protel99se;C语言

Abstract This paper introduces a design method of using STC89C52 chip for elevator control system, mainly describes how to use microcontroller programming to achieve the intelligent four storey elevator control, the design method of microcontroller programming simple and variable, shortens the development cycle, at the same time that the elevator control system smaller and more powerful. Some of the basic functions of the design and implementation of elevator control system required by the elevator, elevator buttons or rise, decline the key to select the floor, digital tube display real-time number of floors, LED display real-time operating state of elevator. Schematic and PCB design using Protel99SE software, the design of products. This design pays more attention to some new ideas into the design. Including the use of the STC89C52 chip, the use of C language programming, which has portability stronger, more conducive to the upgrading of products. Keywords: STC89C52; elevator control system; Protel99SE; C language

电梯控制系统设计设计说明

电梯控制系统设计设计说明

第 1 页共 3 页 编号: 毕业设计说明书 题目:电梯控制系统设计 院(系):电子工程与自动化学院 专业:电子信息科学与技术专业 学生姓名: 学号:0900840218 指导教师:李莉 职称:讲师 题目类型:理论研究实验研究工程设计√软件开发 2013年5月20日

第 3 页共 39 页 摘要 本设计主要利用AT89S52单片机,实现电梯控制系统的设计。单片机与电机驱动电路的结合完成了电梯基本的升降、楼层停靠、方向选择、时间控制等基本功能,研究并实现了在上位机的模式下通过LABVIEW的远程监测的方法,完成了系统样机的设计与制作。 本设计参照了通用电梯的设计标准,有良好的操作界面和通用的外部接口,具有人性化设计,实现较好的外设兼容性。同时在系统样机中完成的其它设计研究还包括,利用LED和蜂鸣器组成的简单电路实现电梯意外声光报警、利用数码管实现电梯楼层显示,利用4x4矩阵键盘实现电梯楼层按键选择,利用LED实现目的楼层的指示,利用MAX232串口电路实现串口通信,来监测电梯实时状态。样机使用的主要器件包括低功耗、高性能的AT89S52单片机,低功耗、低成本、低电压的MAX232,双全桥电机专用驱动芯片L298,共阴极八段数码管,4x4矩阵键盘等,通过比较合理的设计使样机系统基本达到了任务要求,并具有很高的性价比,硬件设计简单可靠。软件部分使用keil软件进行C语言程序编写,用proteus 7软件进行仿真调试。本设计中综合使用了数字电路、模拟电路、高频电路、单片机及编程、硬件逻辑描述、LABVIEW及其应用以及计算机辅助设计(CAD)等多方面的知识,软硬件结合,很好地完成了本科毕业设计任务要求并取得了良好的学习效果。 关键词:AT89C52;单片机;电梯控制系统; C语言

智能电梯控制系统设计

湖南文理学院 课程设计报告 课程名称:自动化系统课程设计专业班级:自动化11班学号 学生姓名: 指导教师: 完成时间:2014年11月20日报告成绩:

目录

一、设计题目 智能电梯控制系统设计 二、设计要求 利用PLC与变频器实现电梯的变频调速控制,该电梯控制系统具有同时呼梯控制、各楼层单独呼梯控制、上升、下降运行控制、轿厢位置显示等功能,电梯至少五层以上。 三、电梯控制系统控制系统设计作用与目的 随着我国经济的高速发展,微电子技术、计算机技术和自动控制技术也得到了迅速发展,电梯也已成为人类现代生活中广泛使用的运输工具。随着人们对电梯运行的安全性、舒适性等要求的提高,电梯得到了快速发展,其拖动技术已经发展到了调频调压调速,其逻辑控制也由PLC代替原来的继电器控制。 可编程控制器(PLC)因为稳定可靠、结构简单、成本低廉、简单易学、功能强大和使用方便已经成为应用最广泛的通用工业控制装置,成为当代工业自动化的主要支柱之一。电梯控制要求接入设备使用简便,对应系统组态的编程简单,具有人性化的人机界面,配备应用程序库,加快编程和调试速度。通过PLC对程序设计,提高了电梯的控制水平,并改善了电梯的电梯运行的舒适感。本文争对以上优点,对电梯运行进行了改进,使其达到了比较理想的控制效果。 四、所用设备及软件 本设计除了需要计算机,实验设备THPFSL-1/2还会用到两款软件:作图软件Altim Desinger、编程软件GX-developer。简介如表1所示。 表1 软件简介

系统总体结构原理图 主控制器是整个电梯的核心。不但要保证整个系统的稳定运行,而且要在极短的时间内对系统所有的任务进行响应。 其任务包括:接收、处理电梯的各种状态,并做出相应的动作,控制电梯的总体运行,实施对电梯驱动部分的控制,包括抱闸的松放、门机的开关、变频器低、中、高速的给出等控制。接收轿厢控制器送来的内选信号,执行内选外呼指令,向轿厢控制器、呼梯控制器发送楼层指示信号,实施安全保护等。为了实现电梯状态监控的需要,主控制器还加入了基于LCD显示的电梯参数设置、监控系统。 程序流程图

基于PLC系统电梯控制系统毕业设计论文

本科学生毕业设计(论文) 毕业论文 课题名称:基于PLC的四层电梯控制 班级:07自动化2 学号:08 姓名: 指导教师: 信息工程系

论文摘要 本文介绍一种电梯PLC控制系统。电梯是垂直方向的运输设备,是高层建筑中不可缺少的交通运输设备。它靠电力,拖动一个可以载人或物的轿厢,在建筑的井道内导轨上做垂直升降运动,在人们生活中起着举足轻重的作用。而控制电梯运行的PLC系统也要求越来越高,要求达到电梯运行的“稳、准、快”的运行目的。该系统主要由PLC、逻辑控制电路组成。其中包括交流异步电动机、继电器、接触器、行程开关、按钮、发光指示器和变频器组成为一体的控制系统。本机控制单元采用以三菱公司的可编程控制器PLC对机器进行全过程控制。 整个系统通过PLC、逻辑控制电路对电梯的升降;加、减速;平层;起动、制动控制。其结构简单、运行效率高、平层精度高、易于理解与掌握。

目录 论文摘要 (1) 第四章电梯的电气控制系统 (5) 4.1概述 (5) 4.2电梯电气控制系统中的主要电器部件 (5) 4.3电梯自动控制系统中的各主要控制环节及结构原理 (6) 4.3.1 各类电梯安全可靠运行的充分与必要条件 (6) 4.3.2 电梯自动开关门的控制环节 (6) 4.3.3 电梯的方向控制环节 (7) 4.3.4 发生制动减速信号的控制环节 (9) 4.3.5 主驱动控制环节 (10) 4.3.6 电梯的安全保护环节 (10) 4.4电梯的内外召唤指令的登记与消除 (12) 4.4.1 召唤指令信号登记记忆线路的原理说明 (13) 4.4.2 轿内信号的登记、记忆与消除 (14) 4.4.3 层外召唤信号的登记记忆与消除 (15) 4.5电梯的信号指示系统 (16) 4.5.1 数码显示的层楼指示灯 (16) 4.5.2 运行方向灯、轿内指令及厅外召唤信号灯 (16) 4.5.3 超载信号指示灯及音响 (17) 4.6电梯的消防控制系统 (18) 4.6.1 电梯控制系统中适应消防控制的几个基本要求 (18) 4.6.2 消防控制系统的类型及工作原理 (19) 4.7交流信号控制电梯线路原理说明 (20) 4.7.1 概况 (20) 4.7.2 电梯投入使用和撤出使用 (20) 4.7.3 自动开关门 (20) 4.7.4 电梯的启动,加速和满速运行,制动减速,停车和开门 (21) 4.7.5 指令信号登记,记忆和消除 (22) 4.7.6 电梯的安全保护 (22) 第五章结论 (23) 参考文献 (55) 附录一I/O分配表 (56) 附录二交流双速电梯线路图元件代号说明 (57)

液压施工升降机电气控制系统设计

摘要 施工升降机是建筑施工中不可缺少的运输机械,本论文主要讲述的是液压式施工升降机的电气控制系统设计。本次设计主要结合了PLC与触摸屏的技术,使其自动化控制水平较低,速度单一、启制动冲击大、乘员感觉不适等缺点得到进一步改善。 本论文在内容安排上首先介绍了题目的概述与它的软硬件设计;电气控制系统方案的确定、组成、设计思想与理论依据等;随后对系统进行了详细设计,包括:控制电路的硬件设计、安装;软件设计并编制梯形图;系统通信及调试等。 主控系统采用FX2N-48MR为控制核心,结合模拟量输出模块FX2N-2DA,并设计了施工升降的理想速度曲线,实现了对液压施工升降机的控制系统的逻辑信号及速度控制。 显示监控系统选用的是三菱F940GOT触摸屏,采用GT Designer2触摸屏编程软件,设计友好的选层参数的输入和运行状态监控界面,实现了施工升降机运行过程的良好人性化。 最后,论文对全文进行总结,并提出了进一步研究的展望。 关键词:PLC,控制系统,自动化

液压施工升降机电气控制系统设计 唐婉丽164A07104 0 引言 施工升降机是建筑施工中不可缺少的机械,因在高层和超高层等建筑中使用井字架、龙门架来完成作业十分困难,所以液压施工升降机是建筑施工在中高层建筑中不可缺少的垂直运输工具,主要担负着运送施工人员、工具、设备及物料的任务。由于其独特的箱体结构使其乘坐起来既舒适又安全,施工升降机在工地上通常是配合塔吊使用,一般载重量在1-3吨,运行速度为1-60M/min。施工升降机的种类很多,按起运行方式有无对重和有对重两种,按其控制方式分为手动控制式和自动控制式。按需要还可以添加变频装置和PLC控制模块,另外还可以添加楼层呼叫装置和平层装置。施工升降机的构造原理、特点:升降机为适应桥梁、烟囱等倾斜建筑施工的需要,它根据建筑物外形,将导轨架倾斜安装,而吊笼保持水平,沿倾斜导轨架上下运行。 本论文根据液压施工升降机的工艺流程和控制要求,设计一台简单的多层液压施工升降机的电气控制系统。是一种升降稳定性好,适用范围广的货物举升设备主要用于生产流水线高度差之间货物运送;物料上线、下线;大型设备装配时部件举升;可配置附属装置,进行任意组合,利用PLC对其工作过程进行全程控制。并根据施工升降机的控制要求,对施工升降机的硬件进行了设计。用PLC编程软件GX Developer设计了PLC控制程序。 本液压施工升降机控制系统的核心组件是三菱PLC FX2N-48MR,具有

PLC电梯控制系统的设计

河南工业职业技术学院 毕业设计 题目 PLC电梯控制系统的设计系院电气工程系 专业 班级 学生姓名 学号 指导教师

前言 随着电子技术的发展,当前数字电器系统的设计正朝着速度快、容量大、体积小、重量轻的方向发展。推动该潮流发展的引擎就是日趋进步和完善的PLC设计技术。目前数字系统的设计可以直接面向用户需求,根据系统的行为和功能的要求,自上而下的完成相应的描述、综合、优化、仿真与验证,直接生成器件。上述设计过程除了系统行为和功能描述以外,其余所有的设计几乎都可以用计算机来自动完成,也就说做到了电器设计自动化这样做可以大大的缩短系统的设计周期,以适应当今品种多、批量小的电子市场的需求。 电器设计自动化的关键技术之一是要求用形式化的方法来描述数字系统的硬件电路,即要用所谓的硬件语言来描述硬件电路。所谓硬件描述语言及相关的仿真、综合等技术的研究是当今电器设计自动化领域的一个重要课题。 PLC的设计和开发,已经有多种类型和款式。传统的PLC各有特点,它们适合在现场做手工测量,要完成远程测量并要对测量数据做进一步分析处理,传统PLC是无法完成的。然而基于PC 通信的PLC,既可以完成测量数据的传递,又可借助PC,做测量数据的处理。所以这种类型的PLC无论在功能和实际应用上,都具有传统PLC无法比拟的特点,这使得它的开发和应用具有良好的前景。

目录 1.前言 2.电梯控制基本概念 3.电梯控制的组成 4.电梯控制的移动 5.电梯PLC系统的模拟组态 6.货运电梯重量超载的控制 7.总结 8.参考文献

2. PLC电梯控制的基本概念 电梯控制系统可分为电力拖动系统和电气控制系统两个主要部分。电力拖动系统主要包括电梯垂直方向主拖动电路和轿箱开关电路。二者均采用易于控制的直流电动机作为拖动动力源。主拖动电路采用PWM调试方式,达到了无级调速的目的。而开关门电路上电机仅需一种速度进行运动。电气控制系统则由众多呼叫按钮、传感器、控制用继电器、指示灯、LED七段数码管和控制部分的核心器件(PLD)等组成。PLC集信号采集、信号输出及逻辑控制于一体,与电梯电力拖动系统一起实现了电梯控制的所有功能。 电梯控制系统原理框图如图1所示,主要由轿箱内指令电路、门厅呼叫电路、主拖动电机电路、开关门电路、档层显示电路、按钮记忆灯电路、楼层检测与平层检测传感器及PLC电路等组成的。 电梯控制系统的硬件结构如图2所示。包括按钮编码输入电路、楼层传感器检测电路、发光二极管记忆灯电路、PWM控制直流电机无线调速电路、轿箱开关电路、楼层显示电路及一些其他辅助电路等。为减少PLC输入输出点数,采用编码的方式将31个呼叫及指层按钮编码五位二进制码输入PLC PLC系统的其它设备 1 编程设备:编程器是PLC开发应用、监测运行、检查维护不可缺少的器件,用于编程、对系统作一些设定、监控PLC及PLC 所控制的系统的工作状况,但它不直接参与现场控制运行。小编程器PLC一般有手持型编程器,目前一般由计算机(运行编程软件)充当编程器。 2 人机界面:最简单的人机界面是指示灯和按钮,目前液晶屏(或触摸屏)式的一体式操作员终端应用越来越广泛,由计算机(运行组态软件)充当人机界面非常普及。 3 输入输出设备:用于永久性地存储用户数据,如EPROM、EEPROM写入器、条码阅读器,输入模拟量的电位器,打印机等。

相关主题