30.8.1.2 注册功能块

如需将现有逻辑程序的一部分注册为功能块(FB),请执行以下操作:

  1. 在逻辑画面中,选择拟注册为功能块的行,右击,从弹出菜单中选择[注册为功能块]。

    • 如需选择多行,请先选择第一行,然后按住Shift键点击最后一行。

    • 每个功能块最多可注册40行(包括分支在内)。

  2. 功能块被注册到画面列表窗口,编辑画面打开。

    • 选定行中的所有地址、符号和变量均被转换为本地变量。从地址转换而来的本地变量,其名称变为“I + 编号”。(例如:I0)从符号和变量转换而来的本地变量,其名称保持原名不变。

  3. 在变量列表中,将本地变量分配给[输入变量]和[输出变量]。

设置步骤

下面介绍如何创建一个输出闪烁信号的功能块。

将一段程序注册为功能块,其功能是当指定位(X100)为ON时,将Y100置OFF一秒种,再置ON两秒钟,如此反复。创建的功能块接受开始位(X100)和闪烁信号的ON和OFF持续时间(单位为秒)等输入信号,输出闪烁信号(Y100)。

  1. 打开逻辑画面,选择拟注册为功能块的程序。

  2. 右击,从弹出的菜单中点击[注册为功能块]。

  3. 功能块被添加到[画面列表]中。双击刚添加的功能块,打开编辑画面。

    • 逻辑程序中使用的所有地址和变量均被注册为本地变量。

  4. 打开变量列表的[本地变量]选项卡。选择接收数值的变量作为输入操作数,右击,从弹出菜单中点击[改为输入变量]。(例如:将I0改为输入变量)

  5. 在[本地变量]选项卡中,选择输出数值的变量作为输出操作数,右击,从弹出菜单中点击[改为输出变量]。(例如:将I1改为输出变量)

  6. 创建两个本地变量。(例如:创建位变量“Bit1”和“Bit2”。)

  7. 打开变量列表的[输入变量]选项卡,创建两个变量,用于接收ON和OFF持续时间。(例如:创建两个整型变量“OffTime”和“OnTime”。)

    • 输入和输出变量不可指定数组元素(X[0])和结构元素(Timer.PT)。

    • 点击[向上移动]和[向下移动]按钮,可更改输入变量的顺序。通过更改输入变量的顺序,可改变它们作为操作数显示的顺序。(例如:如果将I0的顺序下移一位,S1操作数的值将从位型值“I0”变为整型值“OffTime”。)

  8. 如下所示修改功能块的逻辑程序:

    用Bit1替代Timer1.Q
    用Bit2替代Timer2.Q
    在第2行和第3行添加MOV指令
    在第2行和第3行添加OUT指令
    将TON指令的设定值改为0(由于在MOV指令中设定了PT的值,即使保留常量值1或2作为设定值,也不会影响运行结果)

  9. 功能块创建完毕。现在即可将功能块插入逻辑程序,并为操作数设置地址/变量/常量。

    S1:闪烁开始位

    S2:OFF持续时间(秒)

    S3:ON持续时间(秒)

    D1:输出位