西門子PLC時(shí)間標(biāo)記沖突與一致性檢查
發(fā)布于2022-11-21 12:43
39
2
標(biāo)簽:西門子PLC
每個(gè)塊包含一個(gè)代碼時(shí)間標(biāo)記和一個(gè)接口時(shí)間標(biāo)記,可以在塊的屬性對(duì)話框中查看它們。下列情況將會(huì)產(chǎn)生時(shí)間標(biāo)記沖突:
1)被調(diào)用的塊比調(diào)用它的塊的時(shí)間標(biāo)記更新。
2)用戶定義數(shù)據(jù)類型(UDT)比使用它的塊或使用它的用戶數(shù)據(jù)的時(shí)間標(biāo)記更新。3)功能塊比它的背景數(shù)據(jù)塊的時(shí)間標(biāo)記更新。
4)FB2在FB1中被定義為多重背景,F(xiàn)B2的時(shí)間標(biāo)記比FB1的更新。
即使塊與塊之間的時(shí)間標(biāo)記的關(guān)系是正確的,如果塊的接口的定義與它被使用的區(qū)域中的定義不匹配(有接口沖突),也會(huì)出現(xiàn)不一致性。
以隨書光盤中的例程“發(fā)動(dòng)機(jī)控制”為例,如果在FB1的變量聲明表中修改或增減輸人/輸出參數(shù),在保存塊時(shí),將會(huì)出現(xiàn)“塊接口已改變……”的警告信息。保存后打開調(diào)用它的OB1,出現(xiàn)“至少一個(gè)塊調(diào)用有時(shí)間標(biāo)志沖突”的對(duì)話框。在0B1中可以看到,調(diào)用FB1的指令變成紅色。帶有時(shí)間標(biāo)記沖突的程序下載到CPU后將導(dǎo)致停機(jī)。如果用手工來消除塊的不一致性,是很麻煩的??梢杂孟旅娴姆椒ㄗ詣?dòng)修正一致性錯(cuò)誤。
1)關(guān)閉與沖突有關(guān)的所有的塊。

2)選中SIMATIC管理器左邊窗口的“塊”,執(zhí)行菜單命令“編輯”→“檢查塊的一致性”。在出現(xiàn)的“檢查塊的一致性”對(duì)話框中(見圖4-33),有時(shí)間標(biāo)記沖突的塊用紅色的指示燈標(biāo)出。執(zhí)行菜單命令“程序”→“編譯”,STEP7將打開相應(yīng)的編輯器,時(shí)間標(biāo)記沖突和塊的不一致性被自動(dòng)地盡可能地消除,同時(shí)對(duì)塊進(jìn)行編譯。經(jīng)過編譯后,圖4-33中的時(shí)間沖突被消除,對(duì)應(yīng)的紅色指示燈消失(見圖4-34)。
3)如果上述編譯操作不能自動(dòng)清除所有塊的不一致性,在輸出窗口中給出有錯(cuò)誤的塊的信息。用鼠標(biāo)右鍵點(diǎn)擊某一錯(cuò)誤,調(diào)用彈出的菜單中的錯(cuò)誤顯示,對(duì)應(yīng)的錯(cuò)誤被打開,程序?qū)⑻奖恍薷牡奈恢?。清除塊中的不一致性后,保存并關(guān)閉塊。對(duì)于所有標(biāo)記為有錯(cuò)誤的塊,重復(fù)這一過程。
4)重新執(zhí)行步驟1和2,直至信息窗口不再顯示錯(cuò)誤信息。
如果不能用上述的操作自動(dòng)清除所有塊的不一致性,只有刪除被調(diào)用的有沖突的塊,然
后重新調(diào)用它們。