PLC_博图系列☞FBD

头图

PLC_博图系列☞FBD

文章目录

  • PLC_博图系列☞FBD
    • 背景介绍
    • FBD
      • 优势
      • 局限性
    • FBD 元素

关键字: PLC西门子博图Siemens FBD

背景介绍

这是一篇关于PLC编程的文章,特别是关于西门子的博图软件。我并不是专业的PLC编程人员,也不懂电路,所以如果你希望从这里学习PLC编程技术,可能会有些失望。然而,因为工作需要,我开始了解PLC编程,特别是西门子的博图软件,并记录了这些经验。随着我国工业4.0的推进,相信会有更多的人从事类似的工作。如果这篇文章能对你有所帮助,欢迎点赞关注我❥(^_-)。

FBD

功能区块图(Function Block Diagram,简称FBD)是可用于可编程逻辑控制器(Programmable Logic Controller,简称PLC)设计的图形语言。它可以用函数的输入及输出来描述函数。函数是由许多基本模组集合而成,在图上会以一区块表示,各函数的输入及输出是由区块之间的连接线来连接。

FBD将各种功能块进行连接,实现所需的控制功能,它是一种图形化的高级编程语言,程序组织的本体表示为功能块之间的链接。FBD采用过程元素(功能块)和连线代表数据的信号流,类似电子线路图,图形化符号(box)代表函数或功能块,通过图形化的 I/O 连接线段来给它分配输入输出信号的布尔变量值。

FBD的编程类似于现代面向对象编程的结构化特点,符合代码反复使用的要求,可以广泛的使用在以PLC为基础的各种控制系统之中。由于FBD语言是一种受限制的图形化面向机器语言表示形式,这就表示一些IL编程语言可以由 FBD 来表示。

总的来说,FBD是一种非常直观且逻辑清晰的编程语言,被广泛应用在电气控制的闭环系统中。在PLC编程中,如果你想将程序和数据打包在一起使用,那就可以选择使用FBD。

优势

在PLC控制系统中,功能块图(Function Block Diagram,简称FBD)具有以下优势:

  • 直观性:FBD是一种图形化的编程语言,通过连接各种功能块来实现所需的控制功能。这种方式使得程序的结构和数据流非常直观,便于理解和调试。
  • 易学性:FBD的学习和使用相对简单,因为它的设计理念是将复杂的控制逻辑分解为一系列简单的功能块。
  • 可重用性:在FBD中,一旦定义了一个功能块,就可以在多个地方重复使用,这大大提高了代码的可重用性。这也使得代码的维护和修改变得更加容易。
  • 模块化:FBD支持模块化编程,可以将复杂的控制逻辑分解为一系列独立的功能块。这种方式不仅使得程序结构更清晰,也有利于团队协作。
  • 标准化:FBD是IEC 61131-3标准中定义的五种PLC编程语言之一。这意味着使用FBD编写的程序具有良好的可移植性,可以在符合IEC 61131-3标准的各种PLC系统中运行。
  • 适应性:FBD非常适合描述复杂的控制逻辑,特别是那些涉及到大量并行和顺序控制的系统。此外,FBD也非常适合实现批处理控制概念。

总的来说,FBD在PLC控制系统中的优势主要体现在其直观性、易学性、可重用性、模块化、标准化和适应性等方面。

局限性

  • 存储空间:每种功能块都需要占用程序存储空间。这可能会在资源有限的系统中成为问题,特别是当使用大量功能块时。
  • 程序执行周期:每个功能块的执行都会增加程序的执行周期。这可能会影响到系统的实时性能,特别是在需要快速响应的应用中。
  • 复杂性:虽然FBD可以使复杂的控制逻辑更易于理解和管理,但是在非常复杂的系统中,FBD可能会变得难以管理和理解。
  • 学习曲线:虽然FBD相对直观,但是对于没有电气或控制背景的人来说,学习和理解FBD可能需要一些时间。
  • 依赖性:FBD通常依赖于特定的PLC系统和编程环境。这可能会限制代码的可移植性,特别是在需要在不同的PLC系统之间共享代码的情况下。

FBD 元素

FBD 程序由通过二进制信号流链接的各个元素组成。 必须给多数程序元素提供变量。

从左到右对 FBD 程序段进行编程。

例如,下图所示为一个 FBD 程序段的元素:

image-20240215205102641

  1. 二进制函数
  2. 标准函数框
  3. 复杂函数框

二进制函数

可以使用二进制函数查询二进制操作数和组合这些操作数的信号状态。 下列运算是二进制函数的示例: “AND”(与运算)、“OR”(或运算)和“EXCLUSIVE OR”(异或运算)。

标准函数框:

可以在程序中使用标准函数框控制二进制操作数,执行 RLO 沿检测或执行跳转函数。 标准函数框通常只有一个输入。

复杂函数框

复杂函数框代表具有复杂函数的程序元素。 但空函数框除外。 可以使用空函数框作为占位符,在其中可以选择所需的指令。

在 FBD 程序中可以使用以下类型的函数框:

  • 无 EN/ENO 机制的复杂函数框:
    函数框的执行与函数框输入的信号状态无关。无法查询处理过程中的错误状态。
  • 具有 EN/ENO 机制的复杂函数框:
    只有使能输入“EN”的信号状态为“1”时才执行函数框。如果正确处理了该函数框,则“ENO”使能输出的信号状态为“1”。如果处理期间出错,则复位“ENO”输出。
    如果未互连 EN 使能输入,则始终执行函数框。

代码块的调用在程序段中也显示为具有 EN/ENO 机制的复杂函数框。


博客签名2021

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/685717.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CTFshow web(文件上传158-161)

web158 知识点: auto_append_file 是 PHP 配置选项之一,在 PHP 脚本执行结束后自动追加执行指定的文件。 当 auto_append_file 配置被设置为一个文件路径时,PHP 将在执行完脚本文件的所有代码后,自动加载并执行指定的文件。 这…

可视化锻炼日记ExerciseDiary

什么是 ExerciseDiary ? ExerciseDiary 是带有 GitHub 风格的年度可视化的锻炼日记。 安装 在群晖上以 Docker 方式安装。 在注册表中搜索 exercisediary ,选择第一个 aceberg/exercisediary,版本选择 latest。 本文写作时, lat…

云计算基础-大页内存

大页内存功能概述 什么是大页内存 简单来说,就是通过增大操作系统页的大小来减小页表,从而避免快表缺失 主要应用场景 主要运用于内存密集型业务的虚拟机,比如对于运行数据库系统的虚拟机,采用HugePages(大页)后,可…

ubuntu22.04@laptop OpenCV Get Started: 011_edge_detection

ubuntu22.04laptop OpenCV Get Started: 011_edge_detection 1. 源由2. edge_detection应用Demo2.1 C应用Demo2.2 Python应用Demo 3. 重点逐步分析3.1 GaussianBlur去噪3.2 Sobel边缘检测3.2.1 SobelX方向边缘检测3.2.2 SobelY方向边缘检测3.2.3 SobelXY方向边缘检测 3.3 Canny…

PyTorch 快速安装 - 基于 JupyterHub 并运行 K8s

PyTorch 快速安装 - 基于 JupyterHub 并运行 K8s 运行 PyTorch 可以直接逻辑运行、容器中运行、KubeFlow 中运行以及基于 JupyterHub(独立运行或运行在 K8s 之上)等多种模式。这里介绍运行在 K8s 上基于 JupyterHub 的 PyTorch 方法,这也是运…

基于边缘计算的智能家居能源管理系统

一、项目背景 随着智能家居设备的普及,能源消耗问题日益凸显。为了更有效地管理家庭能源使用,减少浪费,并可能实现能源自给自足,我们提出了基于边缘计算的智能家居能源管理系统 该系统能够实时监控和分析家庭能源消耗数据&#xf…

MySQL的日志

一:概述 (1)介绍 在任何一种数据库中,都会有各种各样的日志,记录着数据库工作的方方面面,以帮助数据库管理员追踪数据库曾经发生过的各种事件,MySQL也不例外。 (2)分类…

【精品】关于枚举的高级用法

枚举父接口 public interface BaseEnum {Integer getCode();String getLabel();/*** 根据值获取枚举** param code* param clazz* return*/static <E extends Enum<E> & BaseEnum> E getEnumByCode(Integer code, Class<E> clazz) {Objects.requireNonN…

CSS篇--transform

CSS篇–transform 使用transform属性实现元素的位移、旋转、缩放等效果 位移 // 语法 transform:translate(水平移动距离&#xff0c;垂直移动距离) translate() 如果只给一个值&#xff0c;表示x轴方法移动距离 单独设置某个方向的移动距离&#xff1a;translateX() transla…

林浩然与杨凌芸的Java时光魔法:格式化历险记

林浩然与杨凌芸的Java时光魔法&#xff1a;格式化历险记 The Java Time Odyssey of Lin Haoran and Yang Lingyun: A Formatting Adventure 在编程世界的一隅&#xff0c;有一个名叫林浩然的程序员。他是个Java大侠&#xff0c;对代码世界的法则了如指掌&#xff0c;尤其擅长驾…

用HTML和CSS打造跨年烟花秀视觉盛宴

目录 一、程序代码 二、代码原理 三、运行效果 一、程序代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>跨年烟花秀</title><meta name"viewport" content"widthdevi…

HCIA-HarmonyOS设备开发认证V2.0-轻量系统内核基础-信号量semaphore

目录 一、信号量基本概念二、信号量运行机制三、信号量开发流程四、信号量接口五、代码分析&#xff08;待续...&#xff09;坚持就有收获 一、信号量基本概念 信号量&#xff08;Semaphore&#xff09;是一种实现任务间通信的机制&#xff0c;可以实现任务间同步或共享资源的…

[02] Vue指令(1)

目录 Vue中的常用指令内容渲染指令条件渲染指令事件绑定指令内联语句事件处理函数调用传参 Vue中的常用指令 概念&#xff1a;指令&#xff08;Directives&#xff09;是Vue提供的带有v- 前缀的特殊标签属性。 vue 中的指令按照不同的用途可以分为如下 6 大类&#xff1a; 内容…

Ubuntu学习笔记-Ubuntu搭建禅道开源版及基本使用

文章目录 概述一、Ubuntu中安装1.1 复制下载安装包路径1.2 将安装包解压到ubuntu中1.3 启动服务1.4 设置开机自启动 二、禅道服务基本操作2.1 启动&#xff0c;停止&#xff0c;重启&#xff0c;查看服务状态2.2 开放端口2.3 访问和登录禅道 卜相机关 卜三命、相万生&#xff0…

算法学习——LeetCode力扣二叉树篇7

算法学习——LeetCode力扣二叉树篇7 236. 二叉树的最近公共祖先 236. 二叉树的最近公共祖先 - 力扣&#xff08;LeetCode&#xff09; 描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点…

揭开Markdown的秘籍:引用|代码块|超链接

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;Markdown指南、网络奇遇记 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 &#x1f4cb;前言一. ⛳️Markdown 引用1.1 &#x1f514;引用1.2 &#x1f514;嵌套引用1.3 &…

中科院一区论文复现,改进蜣螂算法,Fuch映射+反向学习+自适应步长+随机差分变异,MATLAB代码...

本期文章复现一篇发表于2024年来自中科院一区TOP顶刊《Energy》的改进蜣螂算法。 论文引用如下&#xff1a; Li Y, Sun K, Yao Q, et al. A dual-optimization wind speed forecasting model based on deep learning and improved dung beetle optimization algorithm[J]. Ener…

php基础学习之可变函数(web渗透测试关键字绕过rce和回调函数)

可变函数 看可变函数的知识点之前&#xff0c;蒟蒻博主建议你先去看看php的可变变量&#xff0c;会更加方便理解&#xff0c;在本篇博客中的第五块知识点->php基础学习之变量-CSDN博客 描述 当一个变量所保存的值刚好是一个函数的名字&#xff08;由函数命名规则可知该值必…

anomalib1.0学习纪实-续1:增加新算法

0、基本信息 现在我要增加一个新算法&#xff1a;DDAD 他的代码&#xff0c;可以在github中找到&#xff1a;GitHub - arimousa/DDAD 一、基础操作&#xff1a; 1、修改anomalib\src\anomalib\models\__init__.py 我增加的第33行和61行&#xff0c; 2、 增加ddad文件夹和文…

Sora和Pika,RunwayMl,Stable Video对比!网友:Sora真王者,其他都是弟

大家好&#xff0c;我是木易&#xff0c;一个持续关注AI领域的互联网技术产品经理&#xff0c;国内Top2本科&#xff0c;美国Top10 CS研究生&#xff0c;MBA。我坚信AI是普通人变强的“外挂”&#xff0c;所以创建了“AI信息Gap”这个公众号&#xff0c;专注于分享AI全维度知识…