西门子PLC字逻辑指令用法

2019年1月12日20:28:54 发表评论 155 阅读

AND、OR 和 XOR 逻辑运算指令

表格 8- 165 AND、OR 和 XOR 逻辑运算指令

1 对于 LAD 和 FBD: 单击“???”并从下拉菜单中选择数据类型。

要添加输入,请单击“创建”(Create) 图标,或在其中一个现有 IN参数的输入短线处单击右键,并选择“插入输入”(Insert input) 命令。要删除输入,请在其中一个现有IN参数(多于两个原始输入时)的输入短线处单击右键,并选择“删除”(Delete) 命令。

表格 8- 166 参数的数据类型

参数 数据类型 说明
IN1, IN2 Byte, Word, DWord 逻辑输入
OUT Byte, Word, DWord 逻辑输出

1、所选数据类型将 IN1、IN2 和 OUT 设置为相同的数据类型。IN1 和 IN2 的相应位值相互组合,在参数 OUT 中生成二进制逻辑结果。 执行这些指令之后,ENO 总是为 TRUE。

INV(求反码)指令

表格 8- 167 INV 指令

 INV 指令

INV 指令

1 对于 LAD 和 FBD: 单击“???”并从下拉菜单中选择数据类型。

表格 8- 168 参数的数据类型

参数 数据类型 说明
IN SInt, Int, DInt, USInt, UInt, UDInt, Byte, Word, DWord 要取反的数据元素
OUT SInt, Int, DInt, USInt, UInt, UDInt, Byte, Word, DWord 取反后的输出

DECO(解码)和 ENCO(编码)指令

表格 8- 169 ENCO 和 DECO 指令

ENCO 和 DECO 指令

对于 LAD 和 FBD: 单击“???”并从下拉菜单中选择数据类型。

表格 8- 170 参数的数据类型

参数 数据类型 说明
IN ENCO: Byte, Word, DWord DECO: UInt ENCO: 要编码的位序列

DECO: 要解码的值

OUT ENCO: Int

DECO: Byte, Word, DWord

ENCO: 编码后的值

DECO: 解码后的位序列

表格 8- 171 ENO 状态

ENO 条件 结果 (OUT)
1 无错误 有效位号
0 IN 为零 OUT 设置为零

DECO 参数 OUT 的数据类型选项(Byte、Word 或 DWord)限制参数 IN 的可用范围。 如果参数 IN 的值超出可用范围,将执行求模运算,如下所示提取最低有效位。

DECO 参数 IN 的范围:

  • 3位(值0-7)IN 用于设置 Byte OUT 中 1 的位位置
  • 4位(值0-15)IN 用于设置 Word OUT 中 1 的位位置
  • 5位(值0-31)IN 用于设置 DWord OUT 中 1 的位位置

表格 8- 172 示例

SEL(选择)、MUX(多路复用)和 DEMUX(多路分用)指令

表格 8- 173 SEL(选择)指令

对于 LAD 和 FBD: 单击“???”并从下拉菜单中选择数据类型。

表格 8- 174 SEL 指令的数据类型

参数 数据类型1 说明
G Bool · 0 选择 IN0

· 1 选择 IN1

IN0, IN1 SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord, Time, Date, TOD, Char, WChar 输入
OUT SInt, Int, DInt, USInt, UInt, UDInt, Real, LReal, Byte, Word, DWord, Time, Date, TOD, Char, WChar 输出

1 输入变量和输出变量必须为相同的数据类型。

条件代码: 执行 SEL 指令之后,ENO 始终为 TRUE。

表格 8- 175 MUX(多路复用)指令

添加输入,请单击“创建”(Create) 图标,或在其中一个现有 IN参数的输入短线处单击右键,并选择“插入输入”(Insert input) 命令。

要删除输入,请在其中一个现有 IN参数(多于两个原始输入时)的输入短线处单击右键,并选择“删除”(Delete) 命令。

表格 8- 176 MUX 指令的数据类型

参数 数据类型 说明
K UInt · 0 选择 IN1

· 1 选择 IN2

· n 选择 INn

IN0, IN1, ..

INn