PLC 编程中关于 置位 / 复位指令、中间继电器、特殊辅助继电器 和 计数器指令 的说明:
一、置位指令(SET)和复位指令(RST)
1. 功能说明
-
置位指令(SET)
将指定的位(如输出线圈、中间继电器)强制置为 ON,并保持状态直到被复位。
示例代码(西门子 S7-200):SET Q0.0 // 当条件满足时,Q0.0 输出保持 ON
-
复位指令(RST)
将指定的位强制置为 OFF,或清除计数器 / 寄存器的当前值。
示例代码(三菱 FX 系列):RST C10 // 复位计数器 C10,清空计数值
2. 典型应用
- 电机启停控制:
| I0.0 | SET Q0.0 // 启动按钮按下,电机运行 | I0.1 | RST Q0.0 // 停止按钮按下,电机关闭
- 互锁逻辑:避免同时置位和复位同一线圈(可能导致逻辑冲突)。
3. 注意事项
- 不同品牌 PLC 的符号可能不同(如西门子用
S
/R
,三菱用SET
/RST
)。 - 复位指令可作用于 计数器(C)、定时器(T) 和数据寄存器(D)。
二、中间继电器(M 寄存器)
1. 功能说明
- 中间继电器(M)是 PLC 内部的虚拟触点,用于逻辑信号中转或状态暂存。
- 地址范围:不同 PLC 型号差异较大(如三菱 FX 系列为 M0~M499,西门子为 M0.0~M255.7)。
2. 典型用法
- 信号中转:
| I0.0 | M0.0 // 输入信号通过 M0.0 中转 | M0.0 | Q0.0 // 输出 Q0.0 由 M0.0 控制
- 逻辑隔离:在多条件控制中简化逻辑结构。
示例(多传感器触发报警):| I0.0 | M0.0 // 传感器1触发 | I0.1 | M0.0 // 传感器2触发 | M0.0 | Q0.1 // 任意传感器触发则报警
3. 注意事项
- 中间继电器无实际物理输出,仅用于程序内部逻辑。
- 部分 PLC 的 M 寄存器具有掉电保持功能(需查阅手册)。
三、特殊辅助继电器(SM/F 标志)
1. 功能说明
- 特殊辅助继电器由 PLC 系统预定义,用于监控状态或提供系统信号。
常见用途: M8000
(三菱):PLC 运行时始终为 ON。M8002
(三菱):PLC 上电时仅 ON 一个扫描周期(初始化用)。SM0.1
(西门子):首次扫描周期为 ON。
2. 典型应用
- 初始化程序:
| M8002 | MOV K0 D0 // 上电时将 D0 寄存器清零
- 扫描周期脉冲:
| M8013 | C0 K10 // 利用 1s 脉冲计数器(三菱)
- 错误标志:
SM5.0
(西门子):系统故障时 ON。
3. 注意事项
- 特殊继电器地址需参考具体 PLC 手册(不同品牌差异大)。
- 不可手动修改其状态(由系统自动控制)。
四、计数器指令(C)
1. 计数器类型
- 加计数器(CTU):输入信号上升沿触发计数。
- 减计数器(CTD):达到预设值后递减。subtraction
- 双向计数器(CTUD):可增减计数。
2. 指令格式(以西门子为例)
| I0.0 | CTU C0 PV10 // 输入 I0.0 触发 C0 计数,预设值 10
| I0.1 | RST C0 // I0.1 复位计数器
3. 典型应用
- 生产线产量统计:
| X0 | CTU C0 K100 // 每检测一个产品(X0),C0 计数,满 100 时触发包装 | C0 | Y0 // 满 100 后 Y0 输出(启动包装机)
- 设备维护周期:通过计数器记录运行次数。
4. 注意事项
- 计数器需设置 预设值(PV) 和 当前值(CV)。
- 复位信号需保持足够时间(部分 PLC 要求至少一个扫描周期)。
五、综合应用示例
场景:用计数器控制电机启停(运行 5 次后自动停止)
| I0.0 | SET M0.0 // 启动按钮
| M0.0 | CTU C0 K5 // 每次启动计数
| C0 | RST M0.0 // 计数满 5 次后复位
| M0.0 | Q0.0 // 控制电机输出
| I0.1 | RST C0 // 手动复位