西門子代理6FC5210-0DF33-2AA0
| 更新時間 2024-10-30 08:50:00 價格 請來電詢價 西門子 一級代理商 PLC觸摸屏變頻器 核心供應商 德國 總代理 聯系電話 17838383235 聯系手機 17838383235 聯系人 徐嘉泉 立即詢價 |
.中斷與中斷程序
有很多PLC內部或外部的事件是隨機發生的,例如外部開關量輸入信號的上升沿或下降沿、通信事件、高速計數器的當前值等于設定值和定時中斷等,事先并不知道這些事件何時發生,但是它們出現時需要盡快地處理它們,PLC用中斷來快速處理上述事件。
例如電力系統出現故障時,可能引發多個斷路器相繼跳閘。為了分析故障的起因,需要及時準確記錄事故發生的時間??梢杂糜布袛鄟硗瓿蛇@一任務。
由于PLC的掃描工作方式,普通定時器的定時誤差很大,定時時間到了也不能馬上去處理要作的事情??梢杂枚〞r中斷來實現高精度定時,在定時時間到時CPU自動調用定時中斷程序。
在出現一個中斷事件時,當前正在執行的程序在當前指令執行完后被停止執行(被中斷),操作系統將會調用一個用戶編寫的分配給該事件的中斷程序(S7-300/400稱為組織塊)。中斷程序被執行完后,被暫停執行的程序將從被中斷的地方開始繼續執行。這一過程不受PLC掃描工作方式的影響,因此使PLC能迅速響應中斷事件。換句話說,中斷程序不是在每次掃描循環中處理,而是在需要時才被及時地處理。
2.編寫中斷程序應注意的問題
因為不能預知系統何時調用中斷程序,為了避免在中斷程序中改寫其他程序使用的存儲器,在中斷程序中應盡量使用局部變量。
應優化中斷程序,使中斷程序盡量短小,以減少中斷程序的執行時間,減少對其他處理的延遲,否則可能引起主程序控制的設備操作異常。設計中斷程序時應遵循“越短越好”的格言。為了減少中斷程序的執行時間,可以在中斷程序設置一個軟件標志,在主程序中根據標志處理對于快速性要求不是很高、執行時間很長的任務。
3.中斷程序為什么沒有輸入、輸出變量?
中斷程序不像子程序那樣,被用戶程序調用,而是在中斷事件發生時,由操作系統調用,因此S7系列PLC的中斷程序不需要輸入參數和輸出參數,它的局部變量表中只有臨時變量。S7-300/400的中斷程序稱為組織塊,它有自動生成的20字節的臨時局部變量,包含了與觸發組織塊的事件有關的信息,它們由操作系統提供。
4.中斷的優先級
中斷事件有不同的優先級,高優先級的中斷程序可以中斷低優先級的中斷程序。如果在執行中斷程序時,又檢測到一個中斷請求,CPU將比較兩個中斷源的中斷優先級。如果優先級相同,按照產生中斷請求的先后次序進行處理。如果后者的優先級比正在執行的中斷源的優先級高,將中止當前正在處理的中斷程序,改為調用較高優先級的中斷源的中斷程序,這種處理方式稱為中斷程序的嵌套調用。
5.中斷的控制
不是所有的用戶都需要PLC的中斷功能,用戶一般也不需要處理所有的中斷事件,因此允許用戶用指令來控制是否需要中斷和需要哪些中斷。
S7-200的中斷允許指令EI允許處理中斷事件。至于需要處理哪些中斷事件,需要單獨設置。禁止中斷指令DI禁止處理所有的中斷事件。
S7-200進入RUN模式時自動禁止中斷,在RUN模式執行中斷允許指令后,各中斷事件發生時是否會執行中斷程序,取決于是否執行了該中斷事件的中斷連接指令ATCH。
中斷分離指令DTCH用來斷開某個中斷事件與中斷程序之間的聯系,從而禁止單個中斷事件。
聯系方式
- 電 話:17838383235
- 經理:徐嘉泉
- 手 機:17838383235
- 微 信:17838383235