网站首页 > 文章精选 正文
一、概念
- FB 块
- FB 块是从另一个 OB、FB 或 FC 代码块进行调用时执行的子例程。
- 以 1200PLC 为例,可以使用 OB 块,FC 块和 FB 块代码块进行编程。
- 调用 FB 块时会生成相匹配的后台背景数据块,在背景数据块中可以存储定义的接口参数及静态变量。
- FC 块
- FC 是没有存储区的代码块,用于对一组输入值做特定的操作。
- 使用FC执行标准操作和可重用操作(数学计算)或者执行过程功能(例如,使用位逻辑操作来执行独立控制)
- 在程序中的不同位置多次调用,简化了重复任务的编程,适用于简单的逻辑判断程序。
二、特点
- FB 块
- 1. 易于移植性,对于相同控制逻辑不同参数的被控对象,只要使用不同的背景DB,使用相同的FB块就可以方便.
- 2. 多重背景,减少重复工作量,提高编程效率
- 3. 多次调用时,参数修改方便
- 4. 有独立的存储区
- FC块
- 1.小巧灵活,对于不经常调用的程序更易理解
- 2.不占用额外的存储资源
三、区别
- 存储区
- FB 块:使用背景数据块作为存储区,可以保存状态信息或中间结果。
- FC 块:没有独立的存储区,使用全局 DB 或 M 区,不保存状态信息,如果需要锁存数据,可以将输出值复制给全局变量,例如M和DB。
- 变量类型
- FB 块:具有 STAT(静态)和 TEMP(临时)变量。
- FC 块:不具有STAT变量,TEMP变量无法设置初始值。
- 传递参数方式
- FB 块:通过背景 DB 传递参数。
- FC 块:通过 L 堆栈区域传递参数。
因此 FC、FB 有不同的特性:
①FC 自身不能存储流程状态。
②FB 可以通过静态变量存储中间流程状态。
③FB 可以多次调用其他的 FB 及其背景 DB,称为多重背景调用。
四、案例
如果想控制5台伺服电机,是选用 FB 块还是 FC 块?
如果需要控制5个伺服电机,通常推荐使用FB(功能块)
- FB 块相当于高级语言,例如 C#的类
- FB块使用背景数据块作为存储区,能够保存状态信息或中间结果。在控制伺服电机时,每个电机可能需要记录和跟踪诸如当前位置、速度、加速度、运行状态(如是否在运行、是否出现故障等)等多种参数。使用FB块,这些参数可以存储在对应的背景数据块中,方便在程序的不同调用之间保持数据的连续性和一致性。
- 例如,当程序需要暂停并随后恢复伺服电机的运行,FB块可以通过其背景数据块中的状态信息,准确地恢复到之前的状态继续运行。
- FC 块相当于一个函数,例如数值转换
- FC 块编完之后嵌入到 FB 块中;也可以作为一个子程序的调用或对象的预处理或后期处理;使用 FB 块实例化的对象在 HMI 上都会有显示和控制的需求,例如每一路的 PID 控制,在 HMI 上都有相应的控制面板,通过这个控制面板,也可以修改 PID 的参数、修改设定值以及得到反馈值。
- 上一篇: 如何优化PLC程序的执行效率?
- 下一篇: 从0到1:新人如何设计第一款B端产品?
猜你喜欢
- 2025-05-23 从0到1:新人如何设计第一款B端产品?
- 2025-05-23 苹果发布iPadOS 17.7.8,适用于2017款iPad Pro及2018款iPad
- 2025-05-23 如何优化PLC程序的执行效率?
- 2025-05-23 一篇文章掌握整个JVM,JVM超详细解析!!!
- 2025-05-23 MySQL源码学习系列(一)-- 环境准备及常用命令
- 2025-05-23 从入门到放弃,芯片的详细制造流程!
- 2025-05-23 C++ 第一个程序、注释、常量
- 2025-05-23 我国境内捕获银狐木马病毒变种
- 2025-05-23 C 语言—基础命令
- 2025-05-23 C如何使用位域执行位操作
- 05-24一文了解工业以太网交换机的作用和工作原理
- 05-24集线器,交换机,路由器工作层次的区别
- 05-24POE交换机供电原理及工作过程介绍
- 05-24如何检查交换机电源的工作状态和健康状况?
- 05-24新手必学!1分钟Get交换机工作原理
- 05-24什么是交换机?交换机工作原理
- 05-24交换机工作原理的直观解释
- 05-24一图搞懂交换机的工作原理
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)