PLC字,字节,双字编程指令
在s7-200与s7-300/400中可以使用的字节、字、双字逻辑操作指令比较参见下表。
编程基本注意点
字节、字、双字逻辑操作指令是以字节、字、双字为单位,逐位进行规定逻辑运算的指令。逻辑运算可以是"与"、"或"、"异或"等,但在指令格式与逻辑运算范围、指令处理过程上,S7-200与S7-300/400有所区别,在编程时应引起注意,具体如下。
a.指令格式与逻辑运算范围。
(a)字节、字、双字逻辑操作指令在S7-200中的使用格式如图3-58所示。S7-200允许的逻辑运算操作如下:
INV:“取反”;
WAND:“与”;
WOR:“或”;
WXOR:“异或”。
S7-200允许的操作数长度如下:
B:字节;
W:字;
D:双字。
(b)在S7-300/400的使用格式如图3-59所示。
S7-300/400允许的逻辑运算操作如下:
WFAND:“与”;
WOR:“或”;
WXOR:“异或”。
S7-300/400允许的操作数长度如下:
W:字;
DW:双字。
b.指令的处理过程。字节、字、双字逻辑操作指令在S7-200与S7-300/400中的梯形图程序基本相同,但实际处理过程与指令表程序却不同。
字节、字、双字逻辑操作指令在S7-200中的处理过程如下(以“字或”为例):
(a)将操作数1(IN1)直接移动到结果存储器中;
(b)将结果存储器与操作数2(IN2)的内容进行规定的逻辑运算;
(c)将逻辑运算的结果保存在结果存储器中。
以上处理所对应的梯形图程序与指令表程序如图3-60所示。
字、双字逻辑操作指令在S7-300/400中的处理过程如下(同样以“字或”为例):
(a)将操作数1(IN1)移动到累加器1中;
(b)将操作数2(IN2)移动到累加器1中,原累加器1中的内容(操作数1)移动到累加器2中;
(c)累加器1与累加器2的内容进行规定的逻辑运算,逻辑运算的结果保存在累加器1中;
(d)将累加器1的内容(逻辑运算的结果)传送到结果存储器中。
以上处理所对应的梯形图程序与指令表程序如图3-61所示。
编程示例
【例3-23】要求在S7-200的变量VB0中生成“恒0”的状态位00000000;在变量VB1中生成“恒1”的状态位111111。
实现以上要求的梯形图程序如图3-62所示。
程序中的SM0.0在S7-200中为恒"1"状态位。程序通过两个标志字节MBO、MB1进行,其中MB1为MB0的“取反”状态。两者相“与”后可以得到每一位恒定为“0”的变量字节MBO;相“或”后可以得到每一位恒定为“1”的变量字节VB1;处理结果与标志字节 MB0 的初始状态无关。
梯形图对应的指令表程序如下:
Networkl Network Title
LD SM0.0
MOVB MB0,MB1
AENO
INVB MB1
AENO
MOVB MB0,VB0
ANDB MB1,VB0
Network2 Network Title
LD SM0.0
MOVB MB0,MB1
AENO
INVB MB1
AENO
MOVB MB0,VB1
ORB MB1,VB1
【例3-24】通过字逻辑运算指令,编制将输入IW0的高、低字节相"与"后,写入到MB0的PLC程序。
程序可以通过将输入字IW0分别与十六进制数00FF及FF00相"与"后获得高、低字节,然后将高、低字节相“与”后送人MB0中。
梯形图程序如图3-63所示。对应的指令表程序如下:
Networkl Network Title
LD SM0.0
MOVW 16#00FF,MW10
ANDW IW0, MW10
Network2 Network Title
LD SM0.0
MOVW 16#00FF,MW12
AENO
ANDW IW0,MW12
AENO
MOVB MB10,MB0
ANDB MB13,MB0
- 西门子代理证 PLC比较指令 2024-01-07
- 西门子代理 PLC装载,传送,移动指令 2024-01-07
- 西门子代理商 S7-200PLC编程 2024-01-07
- 西门子代理商 S7-300/400PLC编程 2024-01-07
- 西门子代理商 PLC移位指令 2024-01-07
- 西门子代理商 S7-200循环左移,循环右移指令 S7-200移位指令 2024-01-07
- 西门子代理商 PLC移位寄存器指令 2024-01-07
- 西门子代理商S7-300/400 PLC移位指令 2024-01-07
- 西门子代理商 PLC代码转换指令 2024-01-07
- 西门子代理商 S7-200数据形式的转换 2024-01-07