在西门子 PLC(可编程逻辑控制器)中,梯形图(Ladder Diagram,简称 LAD)是一种常用的编程语言。系统存储位(System Memory Bits)是 PLC 内部预定义的一些特殊存储位,它们用于表示 PLC 的状态、操作模式以及特定功能的状态信息。这些存储位通常可以直接在程序中使用,而无需额外配置。
以下是西门子 PLC 中常见的系统存储位及其详细说明:
1. First_Scan_On(首次扫描标志)
含义
-
功能:PLC从STOP模式切换到RUN模式时,该标志位仅在第一个扫描周期输出
TRUE
(ON),之后变为FALSE
(OFF)。 -
核心用途:初始化程序逻辑(如复位变量、加载初始值、启动自检等)。
-
命名差异:
-
S7-200系列:使用
SM0.1
(默认首次扫描标志)。 -
S7-1200/1500系列:使用
"FirstScan"
系统位(需在程序中直接调用)。 -
其他编程环境:可能标记为
First_Cycle
或First_Scan
。
-
用法
-
初始化逻辑:在程序启动时执行一次的操作。
-
示例场景:
-
复位计数器或定时器的当前值。
-
初始化数据块(DB)中的默认参数。
-
清除故障标志位。
-
-
梯形图示例:
| SM0.1 MOV |----| |-------[MOV 0, MW10]--- // 首次扫描时将MW10清零
注意事项
-
仅生效一次:确保初始化逻辑不会被后续扫描周期重复执行。
-
硬件配置:某些PLC需在硬件组态中启用首次扫描标志功能。
2. Always_On(始终接通标志)
含义
-
功能:该标志位在PLC运行时始终为
TRUE
(ON),不受程序逻辑影响。 -
核心用途:驱动需要持续运行的逻辑或作为无条件执行的条件。
-
命名差异:
-
S7-200系列:使用
SM0.0
(始终为ON的标志)。 -
S7-1200/1500系列:通过常量
TRUE
或系统位"AlwaysOn"
表示。 -
其他编程环境:可能直接使用
TRUE
或1
。
-
用法
-
持续逻辑驱动:强制某段逻辑在每个扫描周期执行。
-
示例场景:
-
保持某个输出始终激活(如系统运行指示灯)。
-
配合定时器/计数器实现周期性任务。
-
作为复杂逻辑的默认条件。
-
-
梯形图示例:
| SM0.0 MOV |----| |-------[MOV 100, MW20]--- // 每个扫描周期都将MW20赋值为100 | SM0.0 Q0.0 |----| |---------( )------------- // Q0.0始终输出ON
注意事项
-
资源占用:避免滥用
Always_On
导致不必要的程序负载。 -
逻辑冲突:确保无条件执行的逻辑不会与其他条件冲突。
3.其他
3. RUN 模式标志位
- 地址 :
SM0.5
- 功能 :
- 当 PLC 处于 RUN 模式时,该位为
1
;当 PLC 处于 STOP 模式时,该位为0
。
- 当 PLC 处于 RUN 模式时,该位为
- 用途 :
- 用于判断 PLC 是否正在运行。
- 示例:根据 PLC 的运行状态启用或禁用某些功能。
4. 秒脉冲标志位
- 地址 :
SM0.4
- 功能 :
- 该位每秒钟产生一个周期为 1 秒的方波信号(占空比为 50%)。
- 即:
1
和0
各持续 0.5 秒。
- 用途 :
- 用于定时操作或闪烁指示灯。
- 示例:控制 LED 灯以 1Hz 的频率闪烁。
5. 分钟脉冲标志位
- 地址 :
SM0.6
- 功能 :
- 该位每分钟产生一个周期为 1 分钟的方波信号(占空比为 50%)。
- 即:
1
和0
各持续 30 秒。
- 用途 :
- 用于长时间间隔的定时操作。
- 示例:每分钟触发一次数据记录。
6. 小时脉冲标志位
- 地址 :
SM0.7
- 功能 :
- 该位每小时产生一个周期为 1 小时的方波信号(占空比为 50%)。
- 即:
1
和0
各持续 30 分钟。
- 用途 :
- 用于更长时间间隔的定时操作。
- 示例:每小时触发一次设备自检。
7. 错误标志位
- 地址 :
SM1.0
、SM1.1
、SM1.2
- 功能 :
SM1.0
: 零标志位(Zero Flag)。当上一条指令的结果为零时,该位为1
。SM1.1
: 溢出标志位(Overflow Flag)。当上一条指令导致溢出时,该位为1
。SM1.2
: 负数标志位(Negative Flag)。当上一条指令的结果为负数时,该位为1
。
- 用途 :
- 用于检测数学运算或逻辑操作的结果。
- 示例:判断计算结果是否超出范围。
8. 电池低电压标志位
- 地址 :
SM0.3
- 功能 :
- 当 PLC 的后备电池电压低于某个阈值时,该位为
1
。
- 当 PLC 的后备电池电压低于某个阈值时,该位为
- 用途 :
- 用于提醒用户更换电池,防止断电后数据丢失。
9. 强制标志位
- 地址 :
SM0.2
- 功能 :
- 当 PLC 中有强制输入/输出时,该位为
1
。
- 当 PLC 中有强制输入/输出时,该位为
- 用途 :
- 用于检测是否有强制操作,便于调试和维护。