在设备支持的情况下,您可以将功能块映射到输入或输出通道。这让您能够,例如,计数信号变化频率,或者出于维护目的调整通道值。
以下代码示例将设备输出通道映射到功能块。功能块调整通道输出值。
必须满足以下前提条件:
项目中有具有 INT 型模拟量输出且支持功能块映射的设备可用。
有具有以下实现的 Scale_Output_Int 功能块可用。
请注意功能块自身的属性以及位于用于处理通道输出的输出参数之前的属性。
{attribute 'io_function_block'}
FUNCTION_BLOCK Scale_Output_Int
VAR_INPUT
iInput : INT;
iNumerator : INT;
iDenominator : INT :=1;
iOffset : INT := 0;
END_VAR
VAR_OUTPUT
{attribute 'io_function_block_mapping'}
iOutput : INT;
END_VAR
VAR
END_VAR
IF iDenominator <> 0 THEN
iOutput := TO_INT(TO_DINT(iInput) * TO_DINT(iNumerator) / TO_DINT(iDenominator)) + iOffset;