西门子PLC维修专家:EEPROM的写入分为如下几种情况: 1、MB0—MB13的设置,只需要在系统块—断电数据保持中设置即可。 默认情况下,系统块设置如下图蓝框中所示,即MB14—MB31,这些区域没有对应的EEPROM区域,无须考虑EEPROM写入次数限制。
图2
MB0—MB13如果在系统块中设置成掉电保持区域,如图2红框中所示,并将系统块下载到CPU之后,则这14个字节的数据在掉电的瞬间会将数值写入EEPROM中,如果掉电时间超过超级电容和电池的保持时间之后,再上电时,CPU会将EEPROM中存储的数据数值写回到RAM中对应的存储区,实现长久保持数据的目的。 注意:实现该功能一定要将修改过的系统块下载到CPU中。
2、数据块中定义的数据,如图3所示,当下载数据块的时候,同时会将定义的数据下载到EEPROM中,这样,当掉电时间超过超级电容和电池的保持时间之后,再上电时,CPU会将EEPROM中存储的数据块中定义的数据数值写回到RAM中对应的存储区,实现长久保持数据的目的。也就是恢复成数据的初始设置值。 注意:实现该功能一定要将定义好数据的数据块下载到CPU中。
图3
3、使用SMB31和SMW32控制字来实现将V区的数据存到EEPROM中 特殊存储器字节31 (SMB31)命令S7-200将V存储区中的某个值复制到长久存储器的V存储区,置位SM31.7提供了初始化存储操作的命令。特殊存储器字32 (SMW32)中存储所要复制数据的地址。如图4为S7-200系统手册内关于SMB31和SMW32的使用说明。
图4
采用下列步骤来保存或者写入V存储区中的一个特定数值: 1. 将要保存的V存储器的地址装载到SMW32中。 2. 将数据长度装载入SM31.0和SM31.1。具体含义如图4所示。 3. 将SM31.7置为1。
图5
注意:如果在数据块中定义了某地址的数据,而又使用这种办法存储同样地址的数据,则当CPU内超级电容或电池没电时,CPU再上电时将采用SMB31和SMW32存储的数据。