- {{item.name}}
S7-200 SMART V3.0 FB 功能介绍
- 0
- 436
功能块(FB)概述
S7-200 SMART V3.0开始支持功能块(FB),支持128(0-127)个功能块(FB)。功能块(FB)是使用背景数据块保存其参数和静态数据的代码块。FB 实例提供与 FB 的关联的一块存储区并在 FB 完成后存储数据。可将不同的 FB 实例与 FB 的不同调用进行关联。通过 FB 实例可使用一个通用 FB 控制多个设备。通过使一个代码块对 FB 和 FB 实例进行调用,来构建程序。然后,CPU 执行该 FB 中的程序代码,并将块参数和静态局部数据存储在 FB 实例中。FB 执行完成后,CPU 会返回到调用该 FB 的代码块中。FB 实例保留该 FB 实例的值。随后在同一扫描周期或其他扫描周期中调用该功能块时可使用这些值。
在主程序中,可以嵌套功能块(在功能块中调用功能块),最大嵌套深度为八。
在中断例程中,可嵌套的功能块深度为四。
插入功能块(FB)
方法一:
点击菜单栏编辑-对象-功能块命令

方法二:
项目树-程序块,右键-插入-功能块

功能块(FB)调用参数
功能块的变量参数类型如下图所示:

调用参数允许的数据类型:
• BOOL:此数据类型用于单个位输入和输出。
• BYTE、WORD、DWORD:这些数据类型分别标识 1、2 或 4 字节的无符号输入或输出参数。
• INT、DINT:这些数据类型分别标识 2 或 4 字节有符号输入或输出参数。
• REAL:此数据类型标识单精度(4 字节)IEEE 浮点值。
• STRING:此数据类型用作指向字符串的四字节指针。
• ARRAY 或 UDT:功能块的输入或输出可以是 UDT 或 ARRAY 类型元素。
每个功能块(FB)可以使用 0 到 62 个 调用参数,支持1024字节的临时存储器。
在同一周期内多次调用功能块时,不应使用上升沿、下降沿、定时器、 ALT、ALTP 和计数器指令。
使用带多个FB实例的单个FB
下图显示了三次调用同一个 FB 的主程序,每次调用使用一个不同的 FB 实例。该结构使一个通用 FB 可控制多个相同的设备(如电机),方法是在每次调用时为各设备分配不同的 FB 实例。每个 FB 实例存储单个设备的数据(如速度、启动时间和总运行时间)。

在此实例中,FB_0 控制三个独立的设备,其中 FB_0_instance_0 用于存储第一个设备的运行数据,FB_0_instance_1 用于存储第二个设备的运行数据,FB_0_instance_2 用于存储第三个设备的运行数据。
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错


西门子官方商城


{{item.nickName}}