西門子6ES7214-1AD23-0XB8現貨供應
西門子6ES7214-1AD23-0XB8
S7-200掉電保持是存在RAM中用電容保持嗎?
答:是,也可加電池卡延長保持時間。
問:我今天看一本書寫著PLC在掉電的時候利用電容的電將V區的掉電保持的變量馬上存到EEPROM中使它可以保持,是這樣嗎?
答:不是,還是存在RAM中,RAM內的數據需要用電維持。而EEPROM中的數據無需用電維持。你原來的認識是正確的。
電容與電池維持時,各有自己的維持時間,超過時間,參數會丟失的。電容大約是50-80小時左右,你可讓PLC不通電超過這個時間試一下。
PLC的程序塊、數據塊、系統塊都存在EEPROM中,所以永遠也不會丟失。
若不想用電容或電池來實現斷電保持,可將參數寫到EEPROM中。西門子工程師編寫了相應的庫函數供用戶下載使用。
修正:如果設置MB0 - MB13為斷電保持,數據在斷電前被自動寫入相應的EEPROM數據區中。
經過測試,系統塊設置的V區斷電保持是通過超級電容或電池保證的。
數據塊的內容是保持在EPPROM中的,若清除V區,CPU上電后會從EPPROM中復制值到RAM。若編輯相應V區,則是編輯RAM中的V,而不是EPPROM中的V。
通俗的說:
PLC開機時會判斷電池或電容是否有效,如果有效就對系統塊里斷電保持的設置的區域保持不動,然后從數據塊里恢復,數據塊里再沒有賦值的就全部歸0。
比如:你在數據塊里設置vw0=100,系統塊里也設置了掉電保持,掉電時VW0=500,CPU再得電時,如果電池有效那么VW0=500,
掉電時間太長了,電池無效了,那么VW0=100。
數據塊是存到EEPROM里的(就像硬盤一樣),系統塊的V區數據保持依靠的是電池,因為數據是在RAM(就像內存一樣)里的。
CPU開機時,先把系統塊和程序塊從“硬盤"裝載到“內存",然后再根據系統塊和電池再從“硬盤"恢復數據到“內存"
當PLC的用戶程序要保留在RAM中時,就會用到電池,電池通常是3V或3.6V的不可充電的鋰電池,電池的使用壽命通常是五年左右,電池用久了,電壓就會下降,當其下降到不足以保證RAM中數據時,RAM中的程序就會丟失。如果用戶沒有備份程序,就會相當麻煩。
一般PLC內部設有電池電壓檢測電路,當電壓下降到一定程度時,PLC就會報警,提醒更換電池。PLC的使用說明書都有提供更換電池的方法。一般來 說,PLC在斷電后,因為PLC上RAM電源端接有充電電容,即使把電池去掉,電容上充電電量也足夠RAM內的數據保持一段時間,所以如果取掉電池后在短 時間內(通常5分鐘)再將新電池換上去,數據是不會丟失的。
但用戶實際使用PLC的環境情況不盡相同,例如電容的容量下降,RAM電源回路有 灰塵、油泥等形成放電回路等,這會加快PLC斷電后電容的放電速度,從而使時間不好把握。如果在帶電的情況下更換電池就可保程序。因為電源始終會 有電壓加在RAM芯片的電源腳。當然更換時亦要小心應對,注意電池的極性以及避免短路情況發生。
最好是把PLC通電15分鐘(給內部電容充電),斷電,在5分鐘內換好新的電池,再上電試一下;
西門子PLC有帶卡的,有不帶電池的;也有帶卡的,帶電池的。程序存在MMC卡中,如果沒有存儲卡,需要電池保存程序的,更換電池時候務必注意,帶電的情況下,將舊電池取出來,然后將新電池換上即可。S7-200系列PLC編程器的使用示例
Siemens編程器S7-200系列用在中小型設備上的自動系統的控制單元,適用于各行各業,各種場合中的檢測,監測及控制。
1.步進,伺服脈沖定位控制。
在設備的控制系統中,有關運動控制是很重要的,下面我們來看一看西門子S7-200系列PLC怎樣來實現這 個功能。
首先,確定使用哪個端口來發脈沖,如采用Q0.0發脈沖,則它的控制字為SMB67,脈沖同期為SMW68,脈 沖個數存放在SMD72中,
下面是控制字節的說明:
Q0.0 Q0.1 控制字節說明
SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脈沖寬度值 0=不更新,1=脈沖寬度值
SM67.2 SM77.2 PTO更新脈沖數 0=不更新,1=更新脈沖數
SM67.3 SM77.3 PTO/PWM時間基準選擇 0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法 0=異步更新,1=同步更新
SM67.5 SM77.5 PTO操作 0=單段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式選擇 0=選擇PTO,1=選擇PWM
SM67.7 SM77.7 PTO/PWM允許 0=禁止PTO/PWM,1=允許
這樣根據以上表格,我們得出Q0.0控制字:SMB67為:10000101
采用PTO輸出,微妙級周期,發脈沖的周期(也就是頻率)與脈沖個數都要重新輸入。10000101轉化為 16進制 為85,有了控制字以后,我們來寫這一段程序:
根據上面這段程序,我們知道了控制字的使用,同時也知道步進電機的脈沖周期與沖個數的存放位置(對 Q0.0來說是SMW68與SMD72)。當然,VW100與VD102內的數據不同的話,步進電機的轉速和轉動圈數就不一樣。
還有一點需要說明得是:M0.0導通---PLC捕捉到上升沿發動脈沖輸出后,想停止的話,只須改變端口脈沖的 控制字,再啟動PLS即可,程序如下:
2.高速計數功能。
西門子S7-200系列PLC具有高速計數的功能;舉一例子來談談高速計數的用途,我們采用普通電機來帶動絲桿轉動,我們想控制轉動距離,怎么來解決這個問題?那么我們可在電機另一頭與一編碼器聯接,電機轉一圈,編碼器也隨之轉一圈,同時根據規格發出不同的脈沖數。當然,這些脈沖數的頻率比較高,PLC不能用普通的上升沿計數來取得這些脈沖,只能通過高速計數功能了。
啟動高速計數功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 復位有效電平控制位 0=高電平有效, 1=低電平有效
SM37.1 SM47.1 啟動有效電平控制位于 0=高電平有效, 1=低電平有效
SM37.2 SM47.2 正交計數器速率選擇 0=4X計數率, 1=1X計數率
SM37.3 SM47.3 計數方向控制位 0=減計數, 1=正計數
SM37.4 SM47.4 向HSC中寫入計數方向 0=不更新, 1=更新計數方向
SM37.5 SM47.5 向HSC中寫入預置值 0=不更新, 1=更新預置值
SM37.6 SM47.6 向HSC中寫入當前值 0=不更新, 1=更新當前值
SM37.7 SM47.7 HSC允許 0=禁止HSC, 1=允許HSC