介绍
本例将使用西门子 TIA Portal GRAPH 语言编写一个停车场道闸控制系统。
当车辆进入道闸时,会自动开出一张停车票,取票时道闸打开,当车辆通过后,道闸关闭,系统恢复到初始状态。信息显示屏用于显示状态消息,动作之间的转换由传感器的输入触发。
![]()
顺序状态说明
1. 当系统等待车辆时,道闸是关闭的。
- 车辆感应器:OFF。
- 车票感应器:OFF。
- 道闸开到位限位开关:OFF。
- 道闸关到位限位开关:ON。
- 信息显示屏上不显示任何内容。
![]()
2. 当车辆进入道闸时,车辆感应器信号触发。
3. 当车辆感应器信号触发后,出票机出票。信息显示屏上显示:“Take the ticket”。
![]()
4. 取票时,车票感应器触发。
5. 当车票感应器触发时,道闸打开。信息显示屏上显示:“Opening gate”。道闸关到位限位开关信号消失。
![]()
6. 当道闸完全打开时,道闸开到位限位开关信号触发。道闸停止开。
7. 信息显示屏上显示:“Go”。
8. 当车辆通过道闸时,车辆感应器信号消失。
![]()
9. 当车辆感应器信号消失时,为了确保安全,延时 3 秒后开始关闭道闸。信息显示屏上显示:“Closing gate”。道闸开到位限位开关信号消失。
![]()
10. 当道闸完全关闭时,道闸关到位限位开关信号触发,道闸停止关。系统返回到等待状态。
![]()
硬件配置
- 添加 PLC 设备:CPU 1511-1 PN。
- 设置 IP 地址:192.168.0.1。
- 设置子网掩码:255.255.255.0。
![]()
添加函数块
添加一个 FB 函数块,命名为:FbGate。编程语言选择 GRAPH,因为需要特定的背景数据块,所以不能选择使用 FC 函数。
![]()
添加数据块
添加一个 DB 全局数据块,命名为:GdbGateData,用作道闸控制系统相关的输入、输出变量。
![]()
编写顺控步
1. 第一步:初始化。复位出票、复位关道闸、复位开道闸、清空显示信息。车辆进入道闸时转移到下一步。
![]()
2. 第二步:出票机出票。置位出票输出。信息显示屏输出:“Take the ticket”。取票后转移到第下一步。
![]()
3. 第三步:打开道闸。复位出票输出、置位开道闸输出。信息显示屏输出:“Opening gate”。道闸打开后转移到下一步。
![]()
4. 第四步:车辆通过。信息显示屏输出:“Go”。车辆通过后转移到下一步。
![]()
5. 第五步:关闭道闸。使用接通延时定时器,延时 3 秒后,置位关道闸输出。道闸关闭后转移到下一步(第一步)。
![]()
调用函数块
在循环组织块 OB1 中调用以上设计的道闸控制系统函数块 FB,并分配背景数据块。
![]()
功能测试
启动仿真下载程序,监视 FB 函数块。
1. 初始状态。
![]()
2. 道闸应处于关闭状态。
![]()
3. 车辆进入道闸,触发车辆感应器,出票。
![]()
4. 车票感应器触发,打开道闸。
![]()
5. 道闸关到位限位开关信号消失,开到位限位开关信号触发,车辆通过。
![]()
6. 车辆传感器信号消失。延时 3 秒关道闸。
![]()
7. 道闸开到位限位开关信号消失,关到位限位开关信号触发,系统恢复到初始状态。
![]()
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.