Page 190 - 可编程控制器设计原理
P. 190
Principles of Programmable Logic Controller Design
可编程控制器设计原理
(六)移位寄存器指令的参数配置示例(以 PLC 编程为例)
1. 西门子 S7 - 200 PLC
在西门子 S7 - 200 PLC 中,移位寄存器指令分为左移(SHL)和右移(SHR)。
指令格式为 “SHL 寄存器地址,移位长度” 或 “SHR 寄存器地址,移位长度”。
例如,“SHL VW100, 2” 表示将 VW100 这个 16 位寄存器中的数据左移 2 位;“SHR
VW200, 3” 表示将 VW200 中的数据右移 3 位。编程实现步骤:首先,需要在程
序中定义要操作的寄存器地址和移位长度。然后,在合适的时机调用移位寄存器
指令。例如,在一个定时控制程序中,每隔一段时间对某个寄存器进行一次移位
操作。以下是一个简单的 S7 - 200 PLC 梯形图程序示例:
// 主程序
Network 1
LD SM0.1 // 首次扫描标志位
MOVW 16#0001, VW100 // 初始化 VW100 寄存器的值为 0001H
Network 2
LD T37 // 定时器 T37 定时时间到
SHL VW100, 1 // 对 VW100 寄存器中的数据左移 1 位
2. 三菱 FX 系列 PLC
三菱 FX 系列 PLC 中的移位寄存器指令有左移(SFTL)和右移(SFTR)。
指令格式为 “SFTL 源元件,目标元件,移位位数” 或 “SFTR 源元件,目标元
件,移位位数”。例如,“SFTL M10, M20, 5” 表示将以 M10 为起始地址的源
元件中的数据左移 5 位到以 M20 为起始地址的目标元件中;“SFTR D10, D20, 3”
表示将 D10 中的数据右移 3 位到 D20 中。编程实现步骤:同样,先在程序中确
定源元件、目标元件和移位位数。然后,根据控制逻辑调用移位寄存器指令。以
下是一个三菱 FX 系列 PLC 的梯形图程序示例:
// 主程序
LD X0 // 输入信号 X0 接通
SFTL M10, M20, 3 // 将 M10 开始的 3 个位元件数据左移到 M20 开始的位置
通过以上详细介绍,可以看出移位寄存器指令在数据处理和控制领域具有广
泛的应用和重要的作用,不同的 PLC 品牌和型号在指令格式和使用方法上可能
182

