歡迎來到海藍(lán)智能科技有限公司!
三菱PLC中斷問題
外部內(nèi)部都可以中斷,分為兩大類:一個是用戶程序中斷,就如你說的那些,以及外部信號編程金鐘的中斷。一個是系統(tǒng)自身的中斷,像硬件故障、通訊鏈接不暢、程序死循環(huán)等引起的中斷。
情況就像某個程序段不調(diào)用了一樣,沒什么好看的。只是中斷一旦形成,程序就會直接跳轉(zhuǎn)到中斷程序里去執(zhí)行中斷程序里的程序,中斷程序執(zhí)行完了,如果中斷信號還有的話,PLC就繼續(xù)執(zhí)行中斷,直到中斷信號沒有或某些可以被強(qiáng)制取消。在很多中斷程序里可以不寫任何程序,如通訊和非嚴(yán)重性硬件檢測丟失等。這樣就可以減少PLC中斷恢復(fù)時間?;虮苊獠槐匾恼3绦蜷L時間終止。中斷程序開始,就不會執(zhí)行其他用戶程序,根據(jù)用戶程序的情況,如中斷程序不涉及復(fù)位,某些輸出是可能會保持的。中斷有優(yōu)先級的區(qū)分,每種PLC分級方法不同,但大部分是中斷號數(shù)大的優(yōu)先于數(shù)據(jù)號數(shù)小的。
EI是中斷開放指令,DI是中斷禁止指令。這兩條指令比較簡單,PLC執(zhí)行到EI指令就開放中斷,執(zhí)行到DI指令就禁止中斷。這是因為PLC中斷控制電路上有一個“軟開關(guān)”,這個“軟開關(guān)”在PLC上電初始化時是斷開的,EI的作用就是接通這個“軟開關(guān)”,DI的作用則是斷開這個“軟開關(guān)”。
EI、DI控制的“軟開關(guān)”是中斷源的總開關(guān),它的下面還有一些“軟“的分開關(guān),就是~。這些“軟“的分開關(guān)可以在程序中置為ON或OFF,分別控制不同的中斷源,以/2NC為例,其中:
~分別控制輸入中斷源-,輸入中斷用指針編號~;
~分別控制三個定時器中斷源,定時器中斷用指針編號、、;
控制6個高速計數(shù)器中斷源,高速計數(shù)器中斷用指針編號。
這樣,要想一個中斷源觸發(fā)中斷,必須滿足2個條件:1)用EI開放中斷,2)使該中斷源的”軟“分開關(guān)為ON。
中斷源觸發(fā)中斷后,PLC就跳轉(zhuǎn)到其中斷用指針編號指定的子程序執(zhí)行。IRET是中斷返回指令,它是中斷處理程序的結(jié)束指令,其作用是使PLC返回到被中斷時的下一條指令繼續(xù)執(zhí)行。
若沒有中斷處理子程序,雖然觸發(fā)了中斷,但沒有處理任何事情。