多路选择器 (MUX)
此信息适用于
CompactLogix
5370、ControlLogix
5570、Compact GuardLogix
5370、GuardLogix
5570、Compact GuardLogix
5380、CompactLogix
5380、ControlLogix
5580、GuardLogix
5580 和 ControlLogix 5590 控制器。多路选择器 (MUX) 指令根据选择器输入选择八路输入其中之一。
可用语言
梯形图
此指令不可用于梯形图中。
功能块

结构化文本
此指令不可用于梯形图中。
操作数
功能块
操作数 | 类型 | 格式 | 说明 |
Block tag | MULTIPLEXER | 结构 | MUX 结构 |
MUX 结构
输入参数 | 数据类型 | 说明 |
EnableIn | BOOL | 启用输入。如果此参数清零,指令不会执行,也不会更新输出。 默认置位。 |
In1 | REAL | 指令的第一个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In2 | REAL | 指令的第二个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In3 | REAL | 指令的第三个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In4 | REAL | 指令的第四个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In5 | REAL | 指令的第五个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In6 | REAL | 指令的第六个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In7 | REAL | 指令的第七个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
In8 | REAL | 指令的第八个模拟信号输入。 有效值 = 任意浮点值 默认值 = 0.0 |
Selector | DINT | 指令的选择器输入。此输入用于确定将哪一输入 (1-8) 移入 Out。如果该值无效(其中包括 0),指令会将 Status 中的相应位置位,并使 Out 保持其当前值。 有效值 = 1 至 8 默认值 = 0 |
输出参数 | 数据类型 | 说明 |
EnableOut | BOOL | 指示指令是否处于启用状态。溢出时清零。 |
Out | REAL | 已选择的算法输出。将该输出的数学状态标志置位。 |
状态 | DINT | 功能块的状态。 |
InstructFault (Status.0) | BOOL | 该指令检测到以下执行错误之一。这不是轻微或严重的控制器错误。检查其他状态位以确定发生的情况。 |
SelectorInv (Status.1) | BOOL | Selector 值无效。 |
说明
根据 Selector 值,MUX 指令会将 Out 设为八路输入之一。
影响数学状态标志
否
严重/轻微故障
如果启用该功能并检测到溢出,将发生轻微故障(故障类型:4,故障代码:4)。
执行
功能块
条件 | Action |
预扫描 | EnableIn 和 EnableOut 位设置为假。 |
Tag.EnableIn 为假 | EnableIn 和 EnableOut 位设置为假。 |
Tag.EnableIn 为真 | EnableIn 和 EnableOut 位设置为真。 指令执行。 |
指令首次运行 | 不适用 |
指令首次扫描 | 将 Out 的内部值设置为零。 |
后扫描 | EnableIn 和 EnableOut 位设置为假。 |
示例
功能块

此 MUX 指令会根据 Selector 的值选择 In1、In2、In3、In4、In5、In6、In7 或 In8。指令会设置 Out = In
n
,此输出将成为 function_block_C 的输入参数。例如,如果 select_value = 2,指令会设置 Out = analog_input2。提供反馈