回覆列表
-
1 # 狼159910324
-
2 # 工控人
如何搞清楚plc為什麼要中斷處理,哪些地方用到了中斷,想要搞明白中斷的功能首先要理解plc運算週期的意義,任何plc的cpu都有運算速度,速度越快效能越好,運算週期或者掃描週期是指程式從第一行到最後的EDN指令所用的時間,這個時間大致分為三個階段,1是輸入取樣、2程式執行、3輸出重新整理,也就是說輸出結果不是立馬就有的,必須等到END指令完成採輸出、對於輸入來說每個週期只採樣一次。
那如果的輸出、輸入頻率很快,你CPU的運算太慢是不是就會影響我的工作,比如控制伺服電機的脈衝都是高速輸出,還比如採集編碼器的高速計數器。因此需要實時立即輸出,不能受你plc掃描週期的影響,這就是中斷的功能。我們在plc中一般使用的元件都是普通的,凡是超過plc運算速度的都必須採用中斷來處理,而實際當中對於高速輸入、輸出的plc都是已經做好中斷處理,我們直接使用就可以了,如高速計數器的計數功能、用於定位的運動控制的脈衝輸出,而且都有相對應的中斷指令。
還有就是在程式中間也可以有中斷子程式,如輸入中斷、定時器中斷、高速計數器中斷、脈衝捕捉等,將以上中斷作為觸發訊號立即執行。下面我們舉例說明:
這是一個定時器中斷,每隔10ms對資料進行加法運算,並與設定值比較的程式舉例。我們知道普通的加法運算時一個週期執行一次,如果想要在指定時間執行就要用到中斷功能了,I610為中斷指標,6表示中斷指標的編號,10代表時間單位是ms。就是說每隔10ms觸發一次中斷子程式對D0進行加1。
PLC程式是根據它所控制的機械裝置工作特點而編寫,它滿足該裝置正常工作時各種狀態對電氣的要求。在非正常狀態就使用到中斷,每種裝置在行業中使用的工藝要求的引數不同而程式不同,對是否要求有中斷,那根據裝置工作的流水線工藝技術要求而決定,沒有統一的設定,僅有一些設定的原則。