0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

调用功能块(FB或SFB)

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2022-04-20 15:35 次阅读

调用功能块(FB或SFB)

Calling Function Blocks (FB or SFB)

当调用功能块时,能够使用共享实例数据块和当前活动的实例数据块的本地实例区域。

用本地实例调用一个功能块与用共享实例调用在数据存贮的方法上不同。此时数据不保存地特定的数据块,但在产生调用的功能块的实例数据块里。

语法(Syntax)

b58aba88-bf88-11ec-9e50-dac502259ad0.png

作共享实例调用(Call as a Shared Instance)

通过说明以下内容在一个调用语句中进行调用:

功能块或系统功能块的名称(FB或SFB的标识符),

实例数据块(DB标识符),

提供的参数(FB参数)。

对于共享实例的函数调用能够是绝对方式的或符号方式的。

b5c25cb8-bf88-11ec-9e50-dac502259ad0.png

作本地实例调用Call as a Local Instance

通过说明以下内容在调用语句中进行调用:

本地实例名称(标识符)

提供参数(FB参数)

对于本地实例的调用总是符号方式的。必须在调用块的声明部分声明符号名。

b5f644d8-bf88-11ec-9e50-dac502259ad0.png

在VASS标准中的使用:

b61eb80a-bf88-11ec-9e50-dac502259ad0.png

b64b6c06-bf88-11ec-9e50-dac502259ad0.png

调用FB660程序.

b66e564e-bf88-11ec-9e50-dac502259ad0.png

脉冲控制上升沿.

提供功能块参数

Supplying FB Parameters

调用一个功能块(作为共享的或本地实例)时,必须提供以下参数:

输入参数

输入/输出参数

当调用一个功能块时,输出参数不必说明。

对定义的FB参数赋值的语法(Syntax of a Value Assignment for Defining FB Parameters)

调用共享的或本地实例时,FB参数说明的语法是一样的。

b698a4f8-bf88-11ec-9e50-dac502259ad0.png

提供参数时应用以下规则:

参数能够以任意顺序。

实际参数和形式参数的数据类型必须匹配。

用逗号分开赋值。

在功能块调用时输出赋值是不可能的。声明的输出参数的值存贮在实例数据中。在那它能够被所有功能块存取。要读取输出数据,必须在功能块中定义存取。

记住ANY数据类型和POINTER(指针)数据类型的特殊性能。

执行块之后的结果(Result after Executing the Block)

执行块之后:

传递的实际参数不改变。

传递的和修改的输入/输出参数的值被修订;基本数据类型的输入/输出参数例外。

输出参数能够被调用块从共享实例数据块或本地实例区读取。

例子(Example)

带一个输入和一个输入/输出参数赋值的调如下:

FB31.DB77(I_Par:=3, IO_Par:=LENGTH);

VASS标准程序中的调用,调用功能块使用出发.

If (R_TRIG_SK90_ZutrittAnfo.Q Or R_TRIG_K90_ZutrittAnfo.Q)

And Not xHM_K90_ZutrittAnfo And ST_BA.K90_AnfoSG = WORD#0

OR MASTER_DIAG_STAT_REG_PF Or R_TRIG_Anfo_Off_Halt.Q Then

xHM_K90_ZutrittAnfo := True;

R_TRIG_SK90_ZutrittAnfo.Q:= False;

End_If;

------激活请求停止

------------------------END-------------------

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    7008

    浏览量

    88962
  • 函数
    +关注

    关注

    3

    文章

    4329

    浏览量

    62579

原文标题:Supplying FB Parameters

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    西门子流量累计FB介绍

    西门子流量累计FB(Function Block)是一种专门为处理和计算流量数据而设计的功能块,它通常在博途(TIA Portal)软件中被创建和使用。该功能块的意义在于将复杂的流量
    的头像 发表于 12-19 10:28 105次阅读
    西门子流量累计<b class='flag-5'>FB</b><b class='flag-5'>块</b>介绍

    STEP7-5.5-F程序中FB修改后的变化

    STEP7-5.5-F程序中FB修改后的变化
    发表于 04-07 11:46 637次阅读
    STEP7-5.5-F程序中<b class='flag-5'>FB</b><b class='flag-5'>块</b>修改后的变化

    如何调整S7-1500中S7-GRAPH FB的保持性属性

    FB 属性中“优化的访问”默认勾选并且显示灰色无法操作,如图 2 所示。对于需要从CPU停止时所处步号继续运行的应用场合,必须设置保持性属性为“保持”。
    发表于 04-03 09:17 716次阅读
    如何调整S7-1500中S7-GRAPH <b class='flag-5'>FB</b>的保持性属性

    VASS06博途V7 FB 251 FB_Rob_Schweissen焊接控制器的使用方法

    该数据通常会随自己的背景数据一起被调用
    的头像 发表于 03-18 09:49 731次阅读
    VASS06博途V7 <b class='flag-5'>FB</b> 251 <b class='flag-5'>FB</b>_Rob_Schweissen焊接控制器的使用方法

    FILTER单元无法过滤出重复的故障及受影响的功能块

    电子发烧友网站提供《FILTER单元无法过滤出重复的故障及受影响的功能块.pdf》资料免费下载
    发表于 02-21 10:26 0次下载
    FILTER单元无法过滤出重复的故障及受影响的<b class='flag-5'>功能块</b>

    nfc功能怎么用 NFC的五大实用功能

    许多实用的功能。本文将介绍NFC的五大实用功能。 一、移动支付 NFC威廉希尔官方网站 广泛应用于移动支付,被许多手机厂商和支付机构采用。通过将手机与银行卡支付账户绑定,用户可以通过手机进行快速、安全的支付。用户只需要将手机靠近支持NFC的
    的头像 发表于 01-31 14:25 9718次阅读

    西门子博途:SCL中FB模块的结构

    模块FB是用于控制执行器和单元的功能模块执行某一功能的其他FB。 VASS库中不可用
    发表于 01-18 10:38 1440次阅读
    西门子博途:SCL中<b class='flag-5'>FB</b>模块的结构

    SCL中FB模块的结构

    模块FB是用于控制执行器和单元的功能模块执行某一功能的其他FB
    的头像 发表于 01-17 09:22 721次阅读
    SCL中<b class='flag-5'>FB</b>模块的结构

    西门子博途:属性- 隐藏参数

    在 LAD FBD 中调用时,可隐藏参数。刚开始时,隐藏的参数不可见;但可通过框底部边缘处的小箭头进行显示。
    发表于 01-16 09:30 1997次阅读
    西门子博途:<b class='flag-5'>块</b>属性- 隐藏<b class='flag-5'>块</b>参数

    西门子博途示例:设置优化访问

    默认情况下,为 S7 - 1200/1500 的所有新创建的启用优化访问。可为 OB、FB 和全局DB设置访问。对于背景DB,设置来自各自的
    的头像 发表于 01-15 10:41 5703次阅读
    西门子博途示例:设置优化<b class='flag-5'>块</b>访问

    mip382电源各脚功能电压

    电源拥有多个引脚,每个脚具有不同的功能和提供的电压。下面我们将逐一介绍这些脚的功能和电压: VCC:这个引脚是MIP382电源的供电输入端,一般连接到电源的正极。其电压一般为3.3
    的头像 发表于 12-28 15:28 4080次阅读

    西门子博途:手动更新调用

    选择不一致的调用,然后在上下文菜单(鼠标右键)中选择函数“Update”。 然后会出现一个窗口,其中显示旧的(不正确的)和新的调用(带有已删除的“ActiveNotAck”参数)。
    的头像 发表于 12-25 11:12 3126次阅读
    西门子博途:手动更新<b class='flag-5'>块</b><b class='flag-5'>调用</b>

    西门子博途:创建实例数据

    有三种方法可以创建实例数据: 当第一次调用FB时,用户指定应该使用的FB的实例DB。这将打开一个对话框,在该对话框中可以手动指定符号名称,如果需要,还可以指定实例DB的数量。
    的头像 发表于 12-25 11:10 913次阅读
    西门子博途:创建实例数据<b class='flag-5'>块</b>

    西门子博途:监控呼叫路径

    全局数据FB、FC) 只有调用具有选定全局数据时,才会显示的程序状态。
    的头像 发表于 12-25 11:08 356次阅读
    西门子博途:监控呼叫路径

    西门子博途:调用FB(实例化)

    功能块(FC)相比,功能块FB)具有存储器。这意味着功能块被分配了一个本地数据,即所谓的实例数据
    的头像 发表于 12-25 11:04 3145次阅读
    西门子博途:<b class='flag-5'>调用</b><b class='flag-5'>FB</b>(实例化)