
在PLC的的實際使用中,很多場合中大家都比較關心我的重要的數據如何能永久的保存住,萬一電池沒電了,我的重要數據是不能丟失的,這樣就會涉及到一個品牌系列的PLC的它是如何保存數據的問題。本文就以Schneider Twido PLC為例來說明Twido PLC是如何保存數據的。
要保存數據我首先要了解下Twido PLC的數據存儲區。
TWIDO PLC內置的存儲區分為兩類:RAM存儲區和EEPROM存儲區。RAM存儲區需要為其提供電源方能保持其中的數據不丟失。RAM存儲區能存放動態字、存儲字、程序和動態數據;EEPROM不需要另外的供電就能永久保存數據,EEPORM存儲區能存放程序和配置數據。
存儲區的結構示意圖:
對于Twido PLC來說,它支持5種數據保持的方法:
(1) 所有CPU都內置鋰電池,在鋰電池充滿電后,通過內部鋰電池備份數據大約可持續30天(在25oC(77oF)時)。電池從0%到90%的充電時間為15小時。在充電9小時使用15小時的情況下,電池壽命大約為10年。此鋰電池不可更換。
(2) TWDLCA(A/E) 40DRF一體型控制器,除內置的鋰電池外,還可通過外加可更換的鋰電池來保持數據,大約可持續備份數據3年(在25oC(77oF)時)。
(3) 使用%KW常量數據區來保持不需要被更改的常量數據(%KW被存放在EEPROM中,與電池無關,可長期保持)。
(4) 把常量數據編寫在用戶程序中,也能實現數據保持,此常量數據在程序中,被存放在EEPROM,與電池無關,可長期保持。
(5) 可有選擇性地用特殊指令把存放在%MW中的動態數據(最大512個)保持到EEPROM中,此時%MW中的動態數據被寫入EEPROM中,與電池無關,可長期保持。
由此可見,雖然Twido PLC是小型自動化產品,但是其對數據的保存考慮還是非常周到的。在上述的5種數據保存前四種比較簡單,同時也具有局限性,第5種方法保存數據比較靈活,可以把內部字寄存器%MW中值保存到EEPROM中去,能保存最多可達512個的%MW字,要把動態數據%MW存入EEPROM,需要做一些編程。在下次CPU上電時,也需要做一些編程來把上次保持在EEPROM中數據再復制到RAM中。在這里我們主要了解下第5種方法的的使用。
操作說明
(1) 備份步驟:把要備份的數據放在%MW0開始的一系列字元件中,并確保RAM中有一個有效程序(%SW96:X6=1),且相同的有效程序已備份到EEPROM,程序也已配置存儲字。將%SW97置為將要保存的存儲字的長度。注意: 長度不能超過存儲字的配置長度,且必須大于0,不超過512,最后將%SW96:X0置為1,命令CPU進行備份操作。
下列是以保存五個數據來說明:
將要保存的數據依次保存在以%MW0開頭的內部字里,系統字%SW97存放的是要保存的數據長度,%SW97=5意味著要寫入到EEPROM中數據是%MW0~%MW4共5個數據。%SW96:X0=1,表明要執行備份。如果數據保存成功,%S97 就會置1。
在程序編制調試完成后,可將程序備份到EEPROM里,在“控制器”菜單中點擊“BACKUP”按鈕。在執行“BACKUP”操作時,要求停止PLC程序,屏幕左下角顯示“備份控制器程序”,完成后顯示“備份完成”
考慮到EEPROM的壽命問題,只有當用戶程序最終調試完畢、不再要修改了, 我們才需要執行一次把RAM中的程序備份到EEPROM的操作。
(2) 恢復步驟:恢復是指把以前備份在EEPROM中數據恢復到%MW0開始的一系列字元件中, 只要置系統位%S95為1即恢復%MW。操作前確保以下條件為真:EEPROM存在有效備份程序;RAM中程序與EEPROM備份程序相同;備份的存儲字有效。
Twido PLC根據客戶自己的需求,可以不同形式的保存客戶的數據,以避免電池耗光帶來的損失,最大程度的滿足客戶的需求。