施耐德電氣Twido係列PLC數據掉電保存的應用

2026-04-07 04:31:18

前言

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

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

  圖1

  具體描述

  使用Twido的內置Flash來實現數據的掉電保存功能需要注意:被保存的數據是從%MW0開始的一個長度不超過512的區間,假定需要對300個數據進行掉電保存功能,那麼要在程序中做合理的規劃,將要做掉電保存數據寄存器集中在%MW0~%MW299區間內。

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

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

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

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

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

  相應的接線及設置見圖4、圖5及圖6。

  圖2

  圖3

  圖5

  圖6

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

  下麵是為實現使用DC24V電源的TWDLMDA*****/TWDLCDA**DRF的供電掉電捕捉的Twido的測試程序,程序中使用I0.0、I0.1來改變MW288的數據,通過Q0.1的輸出來判斷數據是否被寫入到Flash。使(shi)用(yong)這(zhe)三(san)個(ge)輔(fu)助(zhu)點(dian)是(shi)為(wei)了(le)不(bu)斷(duan)地(di)重(zhong)複(fu)掉(diao)電(dian)前(qian)數(shu)據(ju)的(de)變(bian)化(hua)及(ji)上(shang)電(dian)後(hou)觀(guan)察(cha)數(shu)據(ju)是(shi)否(fou)實(shi)現(xian)掉(diao)電(dian)保(bao)持(chi)功(gong)能(neng),實(shi)際(ji)使(shi)用(yong)時(shi)可(ke)去(qu)掉(diao)這(zhe)些(xie)測(ce)試(shi)部(bu)分(fen)內(nei)容(rong)。測(ce)試(shi)程(cheng)序(xu)中(zhong)保(bao)存(cun)MW0到MW299間的300個數據寄存器,因數據寫入Flash的操作在中斷程序中完成,所以與程序的大小無關,也就是完成保存數據的功能與PLC的掃描時間關係不大。

程序清單:

  (* 初始化 *)

  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中恢複數據 *)

  BLK %TM127

  LDN %M0

  IN

  OUT_BLK

  LD Q

  ST %M101

  END_BLK

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

  BLK %TM126

  LDN %I0.0.2

  IN

  END_BLK

  (* 恢複FLASH中的數據,M101為恢複條件,開機後1.5秒自動恢複數據 *)

  (* *)

  LDR %M101

  [ %SW97 := 300 ]

  ST %S95

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

  (* 如檢測數據保存有效,接通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

  (* 主程序結束 *)

  END

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

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

  SR0:

  LDN %TM126.Q

  [ %SW97 := 300 ]

  ANDN %SW96:X10

  AND %SW96:X6

  ST %SW96:X0

  (* 子程序返回 *)

  RET

施耐德電氣技術文摘:
施耐德電氣變頻器常見問題解析
TWIDO一種簡潔的實現點動開關自鎖方式
Twido PLC上電時數據初始化方法彙總
壓力傳感器如何選型
ATV61變頻器高級多泵卡的PID參數的整定方法
Twido PLC的數據保持
Twido PLC實現隊列控製的一個方法
wido plc 在某些有特殊控製規律設備中的使用技巧
施耐德電氣LMC058運動控製器的三大功能介紹
TWDLC*A10DRF單字乘除擴展功能
IT 與 OT 的融合如何推動智能電網發展
施耐德電氣綠色城市綜合體
Twido程序不能正常打開的處理
施耐德電氣PLC通過CANopen的SDO報文控製SD388B
施耐德斷路器進水怎麼維修
利用Twido的周期事件打造超級定時器
Twdio PLC無法自動運行解決方法
為什麼變頻器不能用作變頻電源?
更多施耐德電氣技術文摘...

通過中華工控網在線聯係施耐德電氣有限公司:

免費注冊為中華工控網會員