S7-200長時間掉電的知識
如果S7-200長時間掉電(超過7天),內部數據會丟失。
PLC在再次上電時,發現數據丟失,第一個掃描周期會置位SM0.2,可用來控制一些特殊操作
如果數據頁中定義了數據,會使用數據頁數據。
如果使用了默認的掉電保持設置,會讀取EPROM中的數據到內存,并且覆蓋數據頁定義的數據,V內存若需要長時間掉電保持,需要單獨編寫程序。
如果MB0-MB13,定義了掉電保持,也會讀取EPROM中的數據到內存,這14字節不需要編寫程序即可保存掉電前的數據。
長時間掉電再次上電時,時鐘會停止走動,并且被設置為90年1月1日 0時0分1秒
這里貢獻一個自己編寫的掉電保持子程序,將下面這段文字直接粘貼到記事本中保存為:掉電保持.awl,在編程環境中導入即可。
若將VB100開始的20個字節存入EEPROM中,adr=100 ,num=20, 需要寫入時,將write 做一次0-1的跳變即可。
SUBROUTINE_BLOCK Wrom:SBR9
TITLE=
VAR_INPUT
adr:WORD; // 寫入地址(相對VB0的偏移量)
num:WORD; // 寫入字節數
write:BOOL;
END_VAR
BEGIN
Network 1
LD L4.0
EU
S SM31.6, 1
Network 2
LD SM31.6
LPS
AN SM31.5
MOVW LW0, SMW32
R SM31.0, 4
S SM31.5, 1
LRD
AN SM31.4
S SM31.4, 1
S SM31.7, 1
LPP
A SM31.4
AN SM31.7
LPS
INCW SMW32
MOVW LW0, AC0
+I LW2, AC0
AW< SMW32, AC0
R SM31.4, 1
LPP
AW> SMW32, AC0
R SM31.0, 8
Network 3 // 網絡標題
// 網絡注釋
END_SUBROUTINE_BLOCK
[ 此帖被醉湮邃虞在2013-03-08 15:49重新編輯 ]