三层楼电梯PLC控制系统设计与调试

三层楼电梯PLC控制系统设计与调试,第1张

我想,可以分成:信号系统,提升系统信号系统要解决:"车箱"运行策略问题;提升体统要解决"车箱"运行状态,安全保护问题最后加上车箱门的开关控制举例说:车停在2楼,3楼有人先要车向下,之后1楼有人要车向上,这时信号系统根据设定优先级判断车向什么方向运行,假设此例中应该给3楼先要车的人那么信号系统向提升系统发出提升信号,提升系统接受到信号后,控制传动系统按照设定速度向目标位前进,距目标层一定距离时减速,(位置的检测可用编码器,并在适当位置安装开关)还有保护系统也是必须的吧等等,3层还是很简单的呵呵

printf("上下选择:1-上楼,2-下楼); scanf("%d",&input_direction); fflush(stdin);printf("输入该层的乘客想到达的楼层,以-1结束\n")。

C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。1972 年,为了移植与开发 UNIX *** 作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。C语言是一种广泛使用的计算机语言,它与 Java 编程语言一样普及,二者在现代软件程序员之间都得到广泛使用。

单片机是一个复杂的科目,不是说 编程复杂 也不是说电路复杂 更不是说外围元件复杂

总的说:关键你想做什么 大概帮你解答一下

单片机:有PIC STC AT 等等 想实现同样的效果 但其编程 指令 地址都不一样

所以你要选择一类开始 推荐:STC系列的

编程手段:汇编 C汇编 宏汇编

如果是业余,自己会什么优先,专业从事:汇编吧 其实也不难 虽然好不容易熟练了 换个类别的

单片机又要换学一次新的汇编语言

周边扩展功能很多,与不同的传感器连接可得到很多数据,当然有些传感器可不是编编程就OK

没点硬功夫可是不行的,专业从事单片机的后来好多都卡在了硬件上

关于你的电梯:编程有一门学问叫循环,还有一门学问叫中断,白痴学问法指针

循环就是根据选择然后跳转到对应位置,等待选择,然后再跳

中断就是你什么都不做,只等中断,要么硬中断,要么软中断

指针就是预先把所有的流程都考虑完善,然后就让指针蹦去吧

重点:思路是跟你的知识配套的,新的知识点就会让你产生新的思路

做半天电梯就有灵感了。

基于AT89C52单片机设计一个四层电梯单片机控制系统。该系统应满足的功能要求为:4层电梯运行控制,轿内外呼叫,运行状态显示。独立键盘、LED显示楼层、指示灯。

本设计采用AT89C52单片机作为核心,配以适当接口作为输入输出通道。采用三行按键矩阵开关电路作为外呼内选呼叫控制。实际电梯控制系统每层装有一个传感器,从而判断车厢所在位置,本模型由10个独立按键作为楼层到达信号传输给单片机,而后通过内部电路从串口驱动数码管显示楼层数。

当电梯到达所选层,电梯开门延时等待进人并选层,然后延时关门执行请求,若无请求则停在本层等待请求。软件部分使用C语言,利用查询方式来检测用户请求的按键信息。

本系统硬件主要由复位模块、显示系统、扩展部分、矩阵控制模块几部分组成。各模块的主要功能如下:

1) 复位的功能其一用于程序初始化,其二也用于摆脱互锁和跑飞;

2) 显示系统的功能分为显示led灯显示触发楼层数和数码管显示当前楼层数的两个部分,用于显示电梯系统此时正在运行的状态;

3) 扩展部分:因为单片机芯片的接口有限,故使用8155扩展串行口用以连接更多功能;

4) 矩阵控制模块:即内呼外叫控制程序,用于控制电梯内外电路。

最佳答案代码如下:

public class ElevatorModel implenent ElevatorModelListener{

ElevatorShaft elevatorShaft;//电梯车箱

Floor firstFloor;

Floor secondFloor;

public void addPerson(Person person);

//实现ElevatorModelListener接口的所有方法

}

public abstract class Location{

String locationName;//可能占据的三个位置firstFloor; secondFloor;elevator中的其中一个位置。

public Button getButton();

public Door getDoor();

}

public class Floor extends Location{

public Floor(String firstFloor,String secondFloor);

public Button getButton();//具体实现

public Door getDoor();//具体实现

public ElevatorShaft getElevatorShaft();

}

public class Door implenent ElevatorMoveListener{

boolean open;//门是开的关的

public void openDoor();//开门

public viod clossDoor();//关门

}

public class Button implenent ElevatorMoveListener{

boolean pressed;

public void pressButton();//按下按钮

public void resetButton();//释放按钮

public void elevatorArrived();//电梯到来

}

public class ElevatorShaft{//电梯乘箱

Elevator elevator;//电梯

Button firstFloorButton,secondFloorButton;//出发层的按钮和到达层的按钮 Door firstFloorDoor,secondFloorDoor;//出发的门和到达的门

Light firstFloorLight,secondFloorLight;//灯

//监听器

DoorListener doorListener;

ButtonListener buttonListener;

LightListener ligthListener;

BellListener bellListener;

ElevatorMoveListener elevatorMoveListener;

Set set;

}

public class Light implenent ElevatorMoveListener{

boolean lightOn;//代表灯的状态,亮或灭

public void turnOnLight();

public void turnOffLight();

public void elevatorDeparted();//具体实现

public void elevatorArrived();//具体实现

}

public class Bell implenent ElevatorMoveListener{

public void ringBell();

public void elevatorDeparted();//具体实现

public void elevatorArrived();//具体实现

}

public class Elevator extends Location implenets

ButtonListener,DoorListener,BellListener,Runable

{//电梯乘箱

boolean moving;

boolean summoned;//描述Elevator是在移动还是已经补召唤

Floor currentFloor;//当前正在提供服务的Floor

Floor destinationFloor ; //代表将要到达的Floor

Button elevatorButton;

Door elevatorDoor;

Bell bell;

public void run();// 实现

public void requestElevator();//请求Elevator并产生排队请求。 }

public class Person extends Thread{

Location类对象(或是位于Floor上,或是出处在Elevator中); int ID;

boolean moving;

public void run();//具体实现

public void enterAndRideElevator();

}

以上就是关于三层楼电梯PLC控制系统设计与调试全部的内容,包括:三层楼电梯PLC控制系统设计与调试、用C语言如何描述电梯的运行机制、怎样学好单片机 还有 plc 六层电梯程序 设计思路,,等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9453841.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存