S7-200 的斷電數據保持不支持高速計數器的范圍設置,因此高速計數器的當前值在CPU每次斷電后都會(huì )復位為數值0。要使S7-200高速計數器的當前值在CPU斷電重啟后依然保持,可以通過(guò)以下的編程來(lái)實(shí)現。
在此以高速計數器0的模式1為例來(lái)說(shuō)明如何在S7-200 CPU斷電后保持高速計數器的當前值,具體可參考以下三個(gè)部分的編程來(lái)實(shí)現:
首先,在除了第一個(gè)掃描周期之外的其它周期,將高速計數器0的當前值HC0傳送到寄存器VD1000中,如下圖1所示,以保證寄存器VD1000始終存儲的是HC0的當前值。
圖1 傳送當前值到寄存器
其次,在上電的第一周期將寄存器VD1000存儲的數值傳送到高速計數器的當前值,保證高速計數器以VD1000為初始值開(kāi)始計數,并初始化高速計數器0,如下圖2所示:
圖2 初始化HSC0
最后,在系統塊的斷電數據保持處設置寄存器VD1000為斷電保持區域,如下圖3所示。需要注意的是CPU224及其以上的型號最多支持100個(gè)小時(shí)(理論值)的斷電保持時(shí)間,如果斷電時(shí)間超過(guò)100個(gè)小時(shí)的話(huà),可以考慮增加電池卡;或者將當前值保存到MB0-MB13這14個(gè)字節的存儲單元。
圖3 設置斷電數據保持
電話(huà):13818569113 15721373211
郵箱:fushidianji@139.com
網(wǎng)址:http://xiangtai88.cn
地址:上海青浦區北青公路7171號111-112室