PLC課件:中斷及高速處理指令_第1頁
PLC課件:中斷及高速處理指令_第2頁
PLC課件:中斷及高速處理指令_第3頁
PLC課件:中斷及高速處理指令_第4頁
PLC課件:中斷及高速處理指令_第5頁
已閱讀5頁,還剩13頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第7講中斷及高速處理指令7.1中斷程序與中斷指令

所謂中斷,是當控制系統執行正常程序時,系統中出現了某些急需處理的異常情況或特殊請求,這時系統暫時中斷現行程序,轉去對隨機發生的更緊迫事件進行處理(執行中斷服務程序),當該事件處理完畢后,系統自動回到原來被中斷的程序繼續執行。7.1.1中斷程序中斷程序必須由三部分構成:中斷程序標號(即中斷事件的編號)、中斷程序指令和無條件返回指令。在中斷程序中不能使用DISI、ENI、HDEF、LSCR和END指令。在主程序和中斷程序之間正確共享數據的編程技巧有以下3條:(1)STL程序共享單個變量(2)LAD程序共享單個變量(3)STL或LAD程序共享多個變量7.1.2中斷指令各種中斷指令的LAD指令格式如圖7-1所示。LAD指令名稱及STL指令格式如表7-1所示,指令的有效操作數見表7-2。表7-1中斷指令的LAD名稱及STL指令格式LADSTL描述RETICRETI從中斷程序有條件返回ENIENI允許中斷DISIDISI禁止中斷ATCHATCHINT,EVNT連接中斷事件和中斷程序DTCHDTCHEVNT斷開中斷事件和中斷程序的連接CLR_EVNTCEVNTEVNT消除中斷事件表7-2中斷指令的有效操作數輸入/輸出數據類型操作數范圍INBYTE常數(0~27)EVNTBYTE常數CPU221和CPU222:0~12,19~23和27~33CPU224:0~23和27~33CPU224XP和CPU226:0~331.全局性的中斷允許指令與中斷禁止指令中斷允許指令(ENI,EnableInterrupt)全局性地允許所有被連接的中斷事件。禁止中斷指令(DISI,DisableInterrupt)全局性地禁止處理所有中斷事件,允許中斷排隊等候,但是不允許執行中斷程序,直到用全局中斷允許指令ENI重新允許中斷。進入RUN模式時自動禁止中斷。中斷程序有條件返回指令(CRETI,conditionalReturnfromInterrupt)在控制它的邏輯條件滿足時從中斷程序返回。2.中斷連接指令與中斷分離指令中斷連接指令(ATCH,AttachInterrupt)用來建立中斷事件EVNT(由中斷事件號指定)和處理此事件的中斷程序INT(由中斷程序號指定)之間的聯系,并使能該中斷事件。中斷分離指令(DTCH,DetachInterrupt)用來斷開中斷事件(EVNT)與中斷程序(INT)之間的聯系,并禁止該中斷事件。消除中斷事件指令(CEVNT,ClearEvent)從中斷隊列中清除所有EVNT類型的中斷事件。7.1.3中斷源1.中斷源及種類中斷源是中斷事件向PLC發出中斷請求的來源。S7-200CPU最多可以有34個中斷源,這些中斷源大致分為三大類:通信口中斷、輸入/輸出(I/O)中斷和時基中斷。(1)通信口中斷(2)I/O中斷I/O中斷包括上升沿中斷或下降沿中斷、高速計數器(HSC)中斷和脈沖串輸出(PTO)中斷。CPU可用輸入點I0.0~I0.3的上升沿或下降沿產生中斷。【例7-1】在I0.0的上升沿通過中斷使Q0.0立即置位。在I0.1的下降沿通過中斷使Q0.0立即復位。程序設計如圖7-2所示。(3)時基中斷

時基中斷(TimedInterrupt)包括定時中斷和定時器T32/T96中斷。可用定時中斷來執行一個周期性的操作,以1ms為增量單位,周期的時間可取lms~255ms。對定時中斷0,必須把周期時間寫入SMB34;對定時中斷1,必須把周期時間寫入SMB35。定時中斷一旦被允許,中斷就會周期性地不斷產生,每當定時時間到時,就會執行被連接的中斷程序。如果退出RUN狀態或定時中斷被分離,定時中斷被禁止。如果執行了全局中斷禁止指令,定時中斷事件仍會連續出現,每個定時中斷事件都會進入中斷隊列,直到中斷隊列滿。【例7-2】定時中斷的定時時間最長為255ms,用定時中斷1實現周期為2s的高精度定時。為了實現周期為2s的高精度周期性操作的定時,將定時中斷的定時時間間隔設為250ms,在定時中斷1的中斷程序中,將VB0加1,然后用比較觸點指令“LD=”判斷VB0是否等于8。若相等(中斷了8次,對應的時間間隔為2s),在中斷程序中執行每2s一次的操作,例如采集模擬量輸入的數值和使QB0加1,程序設計如圖7-3所示。對于定時間隔不同的任務,可以計算出它們的定時時間的最大公約數,以此作為定時中斷的預置時間。在中斷程序中對中斷事件進行計數,根據計數值來處理不同的任務。2.中斷優先級給中斷源指定處理的次序就是給中斷源確定中斷優先級。中斷按以下固定的優先級順序執行:通信(最高優先級)、I/O中斷和定時中斷(最低優先級)。在上述3個優先級范圍內,CPU按照先來先服務的原則處理中斷,任何時刻只能執行一個用戶中斷程序。3個中斷隊列及其能保存的最大中斷個數如表7-4所示。如果發生中斷過于頻繁,使中斷產生的速率比可處理的速率快,或中斷被DISI指令禁止,中斷隊列溢出狀態位被置1,如表7-5所示。只應在中斷程序中使用這些位,因為當隊列變空或返回主程序時,這些位會被復位。隊列CPU221、CPU222、CPU224CPU224XP、CPU226通信中斷隊列4I/O中斷隊列16定時中斷隊列8表7-4各中斷隊列的最大中斷個數描述(0=不溢出,1=溢出)SM位通信中斷隊列溢出SM4.0I/O中斷隊列溢出SM4.1定

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論