siemens x
PLC

施耐德電氣Twido系列PLC數(shù)據(jù)掉電保存的應(yīng)用

2025China.cn   2016年01月21日

  前言

  很多設(shè)備在實際使用中需要將設(shè)備運行中的部分?jǐn)?shù)據(jù)保存,以便下一次運行時使用。被 保存的數(shù)據(jù)要求在設(shè)備斷電的情況下不丟失,也就是在某些PLC中所稱的“數(shù)據(jù)的掉電保存”,這一功能在Twido PLC可以很方便的實現(xiàn)。

  Twido PLC全系列CPU本體中都內(nèi)置有一個可充電的電池,在保證該電池完全充電(PLC連續(xù)通電時間大于15小時)時,并且在PLC的程序中未對%S0做輸出的情況下,PLC內(nèi)部的%MW等中間數(shù)據(jù)全部具有掉電保存功能,保存時間約30天(見圖1);對于TWDLCA*40DRF的CPU本體,通過加裝外部電池TSXPLP01,可將掉電保存時間加長到3年以上;如果設(shè)備掉電的時間很長,或用戶希望掉電后數(shù)據(jù)的保存不依賴于內(nèi)部電池或外部電池,那么可以利用Twido的內(nèi)置Flash來實現(xiàn)數(shù)據(jù)的掉電保存功能。

  圖1

 

  具體描述

  使用Twido的內(nèi)置Flash來實現(xiàn)數(shù)據(jù)的掉電保存功能需要注意:被保存的數(shù)據(jù)是從%MW0開始的一個長度不超過512的區(qū)間,假定需要對300個數(shù)據(jù)進(jìn)行掉電保存功能,那么要在程序中做合理的規(guī)劃,將要做掉電保存數(shù)據(jù)寄存器集中在%MW0~%MW299區(qū)間內(nèi)。

  另外,值得注意的地方是對Flash的寫的操作不太頻繁,如果程序設(shè)計的不合理,可能會對Flash造成永久性損壞。所以,找到合適的將數(shù)據(jù)寫入Flash的條件是非常重要的。

  常見的寫數(shù)據(jù)到Flash的條件有很多種,例如當(dāng)數(shù)據(jù)發(fā)生變化時(數(shù)據(jù)變化不頻繁時),或通過人機操作界面的某一個按鍵,或者當(dāng)設(shè)備突然掉電時。在這里,主要介紹一下,當(dāng)設(shè)備突然掉電時將數(shù)據(jù)寫入Flash的方法。

  圖2 是一種比較可行的捕捉突然掉電的方法,同樣,對于使用AC220V電源的TWDLCA***DRF的產(chǎn)品也可以使用同樣的方法。

  在某些特定的應(yīng)用場合,PLC的電源供給是使用直流24V的蓄電池,如果作為電源供給的蓄電池回路突然中斷,而在這種條件下運行的設(shè)備很可能需要通過蓄電池突然中斷供電的測試,此時圖2中的捕捉電源掉電的方法就無法可靠使用。這時,要實現(xiàn)捕捉電源掉電,需要利用TWIDO的一些內(nèi)部特性,首先來看一下使用DC24V電源的TWDLMDA*****/TWDLCDA**DRF的對供電電源的要求,見圖3。

  使用DC24V電源的TWDLMDA*****/TWDLCDA**DRF的允許供電的直流24V電源發(fā)生10ms的中斷,而不會對PLC的運行造成影響,也就是說,在24V電源供給斷開的10ms內(nèi)PLC還可以正常運行,再結(jié)合Twido的外部中斷(I0.2~I0.4,可在1ms內(nèi)檢測到輸入的變化,微型繼電器從線圈斷電到觸點斷開需要4ms,剩余的5ms足夠完成數(shù)據(jù)寫入Flash的程序所需的時間)功能,可以完成電源突然中斷后將數(shù)據(jù)保存的要求。

  相應(yīng)的接線及設(shè)置見圖4、圖5及圖6。

  圖2

  圖3

  圖4

  圖5

  圖6

 

  注意,圖6中要將I0.2的濾波時間設(shè)置為“不使用”,這樣可以使用PLC更快地檢測到微型繼電器的觸點的斷開。

  下面是為實現(xiàn)使用DC24V電源的TWDLMDA*****/TWDLCDA**DRF的供電掉電捕捉的Twido的測試程序,程序中使用I0.0、I0.1來改變MW288的數(shù)據(jù),通過Q0.1的輸出來判斷數(shù)據(jù)是否被寫入到Flash。使用這三個輔助點是為了不斷地重復(fù)掉電前數(shù)據(jù)的變化及上電后觀察數(shù)據(jù)是否實現(xiàn)掉電保持功能,實際使用時可去掉這些測試部分內(nèi)容。測試程序中保存MW0到MW299間的300個數(shù)據(jù)寄存器,因數(shù)據(jù)寫入Flash的操作在中斷程序中完成,所以與程序的大小無關(guān),也就是完成保存數(shù)據(jù)的功能與PLC的掃描時間關(guān)系不大。

  程序清單:

  (* 初始化 *)

  LD 1

  MPS

  AND( %S0

  OR %S1

  OR %S13

  )

  ST %S0

  ST %M0

  MPP

  AND %S7

  ST %M7

  (* 開辟存儲空間 *)

  LD 1

  [ %MW1000 := 88 ]

  STN %M255

  (* 初始化后1.5秒,從FLASH中恢復(fù)數(shù)據(jù) *)

  BLK %TM127

  LDN %M0

  IN

  OUT_BLK

  LD Q

  ST %M101

  END_BLK

  (* 防止頻繁對FLASH寫操作時間限制,時間限制在50MS內(nèi) *)

  BLK %TM126

  LDN %I0.0.2

  IN

  END_BLK

  (* 恢復(fù)FLASH中的數(shù)據(jù),M101為恢復(fù)條件,開機后1.5秒自動恢復(fù)數(shù)據(jù) *)

  (* *)

  LDR %M101

  [ %SW97 := 300 ]

  ST %S95

  (* Q0.1為測試指示,I0.1接通%MW288賦值88,Q0.1輸出,斷電后再通電,1.5秒后%Q0.0.1有輸出,說明%MW288保存有效 *)

  (* 如檢測數(shù)據(jù)保存有效,接通I0.1,%MW288賦值0,Q0.1無輸出,斷電后再通電,1.5秒后%Q0.0.1無輸出,說明%MW288保存有效 *)

  LD 1

  MPS

  AND %I0.0.0

  [ %MW288 := 0 ]

  MRD

  AND %I0.0.1

  [ %MW288 := 88 ]

  MPP

  AND [ %MW288 = 88 ]

  AND %S12

  ST %Q0.0.1

  (* 主程序結(jié)束 *)

  END

  (* 數(shù)據(jù)保存子程序,SW97需保存的數(shù)據(jù)區(qū)長度(示范為300,允許范圍1~511) %I0.0.2為保存條件,此處取其下降沿 *)

  (* 要保證寫入閃存的條件在正常運行時不能頻繁滿足,否則可能損壞閃存 *)

  SR0:

  LDN %TM126.Q

  [ %SW97 := 300 ]

  ANDN %SW96:X10

  AND %SW96:X6

  ST %SW96:X0

  (* 子程序返回 *)

  RET

(轉(zhuǎn)載)

標(biāo)簽:施耐德電氣 Twido系列PLC 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道