西门子PLC常用底层逻辑块分享_调节阀


前言

本文分享一个自己编写的调节阀控制逻辑块。


一、功能概述

  1. 手动状态、自动状态、检修状态自由切换;
  2. 手动状态下,手动输入阀门开度值;
  3. 自动状态下,根据程序联锁要求自动计算阀门开度值;
  4. 检修状态下,自动关阀。

二、调节阀程序编写

1.创建自定义数据类型

在这里插入图片描述

2.创建FC块“调节阀”

建立如下引脚变量:
在这里插入图片描述

3.编写程序

代码如下:
1.赋值

#HMI.Fault := #Fault;
#HMI.Ready_DI := #Ready_DI;
#HMI.Open_DI := #Open_DI;
#HMI.Close_DI := #Close_DI;
#HMI.Man_Value := #Man_Value;
#HMI.Auto_Value := #Auto_Value;

2.手动状态显示

IF #HMI.HMI_Manual AND NOT #HMI.HMI_Auto AND NOT #HMI.HMI_Pause THEN
    #HMI.Manual_DO := 1;
    #HMI.Auto_DO := 0;
END_IF;
//默认手动状态
IF NOT #HMI.Auto_DO AND NOT #HMI.Pause_DO THEN
    #HMI.Manual_DO := 1;
    #HMI.Auto_DO := 0;
    #HMI.Pause_DO := 0;
END_IF;

3.自动状态显示

IF #HMI.HMI_Auto AND NOT #HMI.HMI_Manual AND NOT #HMI.HMI_Pause THEN
    #HMI.Manual_DO := 0;
    #HMI.Auto_DO := 1;
END_IF;

4.休止状态显示

IF #HMI.HMI_Pause AND NOT #HMI.HMI_Manual AND NOT #HMI.HMI_Auto THEN
    #HMI.Pause_DO := 1;
    #HMI.Auto_DO := 0;
    #HMI.Manual_DO := 0;
END_IF;
IF #HMI.HMI_Pause = 0 THEN
    #HMI.Pause_DO := 0;
END_IF;

5.手动状态赋值

IF #HMI.Manual_DO AND NOT #HMI.Fault THEN
    #OUT := #HMI.Man_Value;
END_IF;

6.自动状态赋值

IF #HMI.Auto_DO AND NOT #HMI.Fault THEN
    #OUT := #HMI.Auto_Value;
END_IF;

7.休止状态赋值

IF #HMI.Pause_DO AND NOT #HMI.Fault THEN
    #OUT := 0.0;
END_IF;

8.按钮自复位

IF NOT "AlwaysFALSE" THEN
    #HMI.HMI_Manual := 0;
    #HMI.HMI_Auto := 0;
END_IF;

相关推荐

  1. 解析Nginx配置文件conf中的

    2024-03-17 12:48:01       33 阅读
  2. Git命令分享

    2024-03-17 12:48:01       35 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-17 12:48:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-17 12:48:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-17 12:48:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-17 12:48:01       20 阅读

热门阅读

  1. HTTP 状态码

    2024-03-17 12:48:01       19 阅读
  2. 设计模式详解(十二)——外观模式

    2024-03-17 12:48:01       18 阅读
  3. c++ 设计模式模版方法

    2024-03-17 12:48:01       19 阅读
  4. c++ 设计模式 策略模式

    2024-03-17 12:48:01       22 阅读
  5. 大数据平台测试-我是怎么面试高级测试的

    2024-03-17 12:48:01       22 阅读
  6. ASP.NET-框架分类与详解

    2024-03-17 12:48:01       21 阅读
  7. 爬虫基本原理介绍、实现以及问题解决

    2024-03-17 12:48:01       20 阅读
  8. 鸿蒙获取组件的位置信息

    2024-03-17 12:48:01       24 阅读
  9. 【Python】 Flask相关疑问

    2024-03-17 12:48:01       17 阅读
  10. Spring同时集成JPA与Mybatis

    2024-03-17 12:48:01       18 阅读