問:調(diào)試時想強(qiáng)制PQW輸出,在強(qiáng)制變量表里輸入提示地址無效,輸入MW,DB都一樣。想問下,強(qiáng)制變量表里能強(qiáng)制哪些數(shù)據(jù),程序里有覆蓋的話,是否強(qiáng)制后下一次的掃描里又被覆蓋。
答:首先并不是所有西門子S7-300PLC都支持強(qiáng)制功能(Force),檢查PLC面板上是否有“Force”(強(qiáng)制)指示燈;其次,強(qiáng)制功能一般用于I/0保持指定的值,與修改變量不同,一旦你強(qiáng)制了I/O的值,這些I/O將不受程序的影響,始終保持你設(shè)定的值,直至你取消了強(qiáng)制。所以在強(qiáng)制變量表里強(qiáng)制設(shè)定的數(shù)據(jù),程序里有覆蓋的話,是不會強(qiáng)制后在下一次的掃描里又被覆蓋,一種保持該值,即使你關(guān)閉強(qiáng)制窗口,也不能取消強(qiáng)制功能,必須通過單擊右鍵,在快捷菜單中單擊“Stop Forcing”(停止強(qiáng)制)選項(xiàng)來取消強(qiáng)制。
一般你不能直接強(qiáng)制PQW(它屬于外部輸出寄存器),不經(jīng)過過程映像輸出直接訪問本地的和分布式的輸出模塊,所以在強(qiáng)制變量表里輸入提示地址無效;而MW是位于PLC中系統(tǒng)存儲區(qū)、DB位于工作存儲區(qū),它們是PCL內(nèi)部的存儲區(qū),在執(zhí)行程序過程中,位存儲區(qū)用來保存控制邏輯的中間操作狀態(tài)或其他控制信息,而數(shù)據(jù)塊DB可以被其他程序調(diào)用修改其內(nèi)部數(shù)據(jù),所以在程序執(zhí)行過程中是會被覆蓋的,所以也不能執(zhí)行強(qiáng)制。










