Categories: 西门子

S7-1200如何实现内部数据的掉电保持?

S7-1200需要被断电保持的数据必须被保持到保持性寄存器中。保持性寄存器中不需要超级电容供电维持,其中的数据可以永久保持。总共可以有10240个字节的数据具有保持特性。CPU暖启动或者断电再上电后,保持性存储区中的数据会保持为暖启动或者断电之前的数值,保持性存储区之外的数据会丢失,即恢复初始值。

S7-1200 CPU的M存储区、FB的背景数据块和全局数据块中的数据可以使用保持性存储区存储。

1、M存储区

用户可以在“PLC 变量” 标签页中,点击“保持”按钮来设定M存储区的保持范围,从MB0开始的连续字节数,例如设置10,则保持范围为MB0-MB9共10个字节,无法设置多个保持区,如下图所示:

2、FB块的背景数据块

FB块可以是优化的块或者非优化的块,新建的FB默认优化FB,可以在FB右键属性中修改,如图所示。

而系统FB,例如PID、运动控制、通讯等通常都是优化FB,无法修改优化属性。

优化FB的背景数据块是优化DB,非优化FB的背景数据块是非优化DB。

a. 对于优化FB

背景数据块中的每个变量都可以单独指定断电保持特性。打开FB,在上方的接口区,用户可以在“保持”列中修改每个变量的保持特性,如下图所示:

可以将每个变量单独设置保持或者不保持。

如果选择在IDB中设置,则该变量的保持性可以在背景数据块中设置,也就是说同一个变量可能在不同的背景数据块中设置不同的保持性。

b. 对于非优化FB

只能整体地指定其背景数据块的保持特性,不能每个变量单独指定。打开FB的一个背景数据块,用户可以在“保持”列中修改每个变量的保持特性,如下图所示:

如果多次调用经过上述设置的FB, 每次调用分配不同的背景数据块,用户可以分别指定每个背景数据块的保持特性。

3、全局数据块

与FB的背景数据块相同,全局数据块的也分为优化和非优化两种。使用优化DB块能够最优化地利用CPU内部的数据存储区。全局数据块的断电保持特性也与FB的背景数据块相同:

使用优化的全局数据块可以分别指定其内部每个变量的保存特性;使用非优化的全局数据块,只能对其整体指定一种保持特性。新建的DB默认优化DB,可以在DB右键属性中修改,如下图所示:

与FB的背景数据块特性设置相同,用户可以打开DB,通过勾选“保持”一列设定变量的保持特性,如下图所示:

注意:FB、DB中的UDT、STRUCT内部的变量无法设置独立的保持性,也就是说UDT、STRUCT内部的变量的保持性是一致的。

xuezdh