西門子代理商-華中一級代理-PLC伺服電機驅動變頻器代理
| 更新時間 2024-12-02 08:00:00 價格 請來電詢價 西門子變頻器 西門子觸摸屏 西門子伺服電機 西門子PLC 西門子直流調速器 西門子電纜 聯系電話 13922889745 聯系手機 18475208684 聯系人 向小姐 立即詢價 |
下面是各組織塊類型的介紹和使用方法
1
程序循環組織塊
操作系統每個周期調用“程序循環”組織塊一次,從而啟動用戶程序的執行。在SI-MATIC S7-1500 CPU中,可以使用多個“程序循環”組織塊(OB編號大于等于123),并且按照序號由小到大的順序依次執行。所有的"程序循環”組織塊執行完成后,操作系統再次重新調用“程序循環”組織塊。在各個“程序循環”組織塊中調用FB、FC等用戶程 序使之循環執行。“程序循環”組織塊的優先級為1且不能修改,這意味著它的優先級是Zui低的,可以被其他OB塊中斷。“程序循環”組織塊的執行如圖所示。
2
時間中斷組織塊
時間中斷組織塊用于在時間可控的應用中定期運行一部分用戶程序,可以實現在某個預設時間到達時只運行一次,或者在設定的觸發日期到達時,按每分、每小時、每周、每月、每月底等周期運行。當CPU的日期值大于設定的日期值時觸發相應的OB,按設定的模式執行。在用戶程序中也可以通過調用SET_TINT指令設定時間中斷組織塊的參數,調用ACT_ TINT指令激活時間,中斷組織塊投入運行。與在OB塊屬性中的設置相比,通過用戶程序 在CPU運行時修改設定的參數更加靈活。兩種方式可以任意選擇,也可以同時對一個OB塊 進行參數設置。
3
時間延遲中斷組織塊
時間延遲中斷OB在經過一段可組態的延遲時間后啟動。操作系統會在調用指令SRT_ DINT后開始計算延遲時間,延遲時間到達后觸發執行響應的OB。OB塊號及延遲時間在SRT_DINT參數中設定,延遲時間為1 ~60000ms,延遲精度為lms,這也是不使用定時器作為延時條件的原因。可以使用“CAN_DINT"指令取消已經啟動的延遲中斷。
4
循環中斷組織塊
循環中斷組織塊按設定的時間間隔循環執行,循環中斷的間隔時間通過時間基數和相位偏移量來指定。在OB塊屬性中,每一個OB塊的時間間隔可以由用戶設置。如果使用了多個循環中斷OB,則當這些循環中斷OB的時間基數有公倍數時,可以使用相位偏移量來防止同時啟動。不同類型的SIMATIC S7-1500 CPU所支持的Zui短時間間隔不同,例如CPU 1516支持Zui短250μs的時間間隔,而CPU1518支持Zui短lOOμs的時間間隔。在循環中斷組織塊中的用戶程序將按照固定的間隔時間執行一次,OB塊中的用戶程序執行時間必須小于設定的時間間隔。如果間隔時間較短,則會造成循環中斷OB塊沒有完成程序掃描而再次被調用,從而造成CPU故障,觸發OB80報錯。如果程序中沒有創建OB80,則CPU進入停機模式。通過調用DIS_IRT、DIS_AIRT、EN_IRT指令可以禁用、延遲、使能循環中斷的調用。循環中斷組織塊通常處理需要固定掃描周期的用戶程序,例如PID函數塊通常需要在循環中斷中調用,以保證采樣時間恒定。
5
硬件中斷組織塊
硬件中斷也稱為過程中斷,用來響應由具有硬件中斷能力的設備(如通信處理器CP及 數字量輸入、輸出模塊等)產生的硬件中斷事件。例如,可使用具有硬件中斷的數字量輸 入模塊觸發中斷響應,然后為每一個中斷響應分配相應的中斷OB塊,多個中斷響應可以觸發一個相同的硬件中斷OB。SIMATIC S7-1500 CPU支持多達50個硬件中斷組織塊,可以為Zui多50個不同的中斷事件分配獨立的硬件中斷組織塊,方便用戶對每個中斷事件獨立編程。
如果配置的中斷事件出現,則中斷當前主程序,執行中斷OB塊中的用戶程序一次,然后跳回中斷處繼續運行主程序。中斷程序的執行不受主程序掃描和過程映像區更新時間的影響,適合需要快速響應的應用。
如果輸入模塊中的一個通道觸發硬件中斷,則操作系統將識別該模塊的槽號和通道號,并觸發相應的OB塊,執行中斷OB塊之后發送與通道相關的確認。在識別和確認過程中, 如果該通道存在再次的中斷事件,則操作系統將不予響應;如果該模塊的其他通道存在中斷事件,則在當前正在執行的中斷確認之后響應這個新的中斷事件;如果是由不同的模塊觸發的中斷,則中斷請求首先被記錄,中斷OB塊在空閑(沒有其他模塊的中斷請求)時被觸發。通過調用DIS_IRT、DIS_AIRT、EN_IRT指令可以禁用、延遲、使能硬件中斷的調用。
6
PROFIBUS- DP/PROFINET IO中斷組織塊
CPU響應PROFIBUS- DP從站/PROFINET IO設備觸發的中斷信息。
7
等時同步中斷組織塊
用于處理PROFIBUS- DP或PROFINET IO的等時同步用戶程序。在等時模式下,從各個從站/設備采集輸入信號到輸出邏輯結果需要以下過程:從站/設備輸入信號采樣循環(信號轉換)、從站/設備背板總線循環(轉換的信號從模塊傳遞到接口模塊)、總線循環(信號 從分布式I/O傳遞到CPU)、程序執行循環(信號的程序處理,即等時同步中斷組織塊)、 總線循環(信號從PLC傳遞到分布式I/O)、從站/設備背板總線循環(信號從站接口模塊 傳遞到輸出模塊)及模塊輸出循環(信號轉換)等7個循環。同步時鐘將同步以上7個循 環,優化數據的傳遞,并保證各個分布式I/O數據處理的同步
8
時間錯誤組織塊
用于處理時間故障。當在一個循環內程序執行第一次超出設置的Zui大循環時間時,CPU 將自動調用OB80。如果程序中沒有創建OB80,則CPU將進入停止模式,如果程序中已經創建了OB80,但是在同一次循環內程序執行超出設置的Zui大循環時間兩倍,則CPU也將進 入停機模式。
9
診斷中斷組織塊
SIMATIC S7-1500 PLC操作系統在下列情況下調用診斷中斷組織塊:
激活診斷功能的模塊檢測到其診斷狀態發生變化(事件到來或事件離開);
發生電源錯誤觸發事件;
操作系統檢測到存儲錯誤以及硬件中斷丟失等事件。
10
拔出/插入中斷組織塊
當移除或者插入已組態的分布式I/O模塊或子模塊時,SIMATIC S7-1500 CPU操作系統將調用拔出/插入中斷組織塊。
注意:目前SIMATIC S7-1500 PLC機架不支持熱插拔,所以拔出或插入中央機架模塊將導致CPU進入STOP模式。
11
機架錯誤組織塊
SIMATIC S7-1500 CPU操作系統在下列情況下調用機架錯誤OB:
檢測到PROFIBUS- DP系統或PROFINET IO系統發生站點故障等事件(事件到達或離去);
檢測到PROFINET智能設備的部分子模塊發生故障。
12
編程錯誤組織塊
當SIMATIC S7-1500 CPU在處理用戶程序指令時發生編程錯誤,有兩種方式進行處理:
全局處理:調用編程錯誤組織塊;
本地處理:直接在用戶程序塊中調用指令“GET_ERROR”或者“GET_ERR_ID"進行處理。
如果沒有采取以上任何一種錯誤處理方式,則CPU會停機。
例如圖7-12所示的一段程序,將數據123寫入變量"A". B[ "1"]中。
如果索引"I"超出范圍,則SIMATIC S7-1500 CPU操作系統將調用編程錯誤OB121,并將編程錯誤診斷信息寫入診斷緩沖區,這就是全局處理。
如果在程序塊發生編程錯誤的語旬后調用函數“GET_ERR_ID"或“GET_ERR",則CPU不會再調用OB121(這種悄況下即使CPU中沒有OB121也不會停機),也不會將錯誤寫入診斷緩沖區。用戶可以在程序塊的輸出參數”ID"中獲取錯誤信息,如圖7-13 所示。
查看“GET_ERR_ID"的在線幫助可知故障ID "16#2523"對應的錯誤信息為“寫入錯誤:操作數超出有效范圍"。使用本地處理程序錯誤的好處是能夠快速定位用戶程序中出現的編程錯誤,也可以使程序塊獨立于其他故障處理程序塊,存放于全局庫中。如果想要得到更詳細的錯誤信息,比如出錯程序塊的類型、程序塊編號等,則可通過調用函數”GET_ ERR"實現。
13
I/O訪問錯誤組織塊
如果在執行用戶程序指令期間直接訪問1/0數據出錯,則也可以進行全局處理或者本地處理。
全局處理:調用I/O訪問錯誤組織塊(OB122);
本地處理:在用戶程序塊中調用指令“GET_ERROR"或者“GET_ERR_ID"進行處 理。比如在程序中訪問了并不存在的外設“IW100: P",便可以進行本地處理,如圖7-14 所示。
查看“GET_ERR_ID"的在線幫助可知故障ID "16#2942"對應的錯誤信息是“讀取錯誤:Input"。如果不作全局錯誤處理和本地錯誤處理,則CPU將故障信息寫入到診斷緩沖區中。
14
啟動組織塊
操作系統從“停止"切換到“運行“模式時,將調用啟動OB。如果有多個啟動OB,則按照OB編號依次調用,從Zui小編號的OB開始執行,用戶可以在啟動OB中編 寫初始化程序。程序中也可以不創建任何啟動OB。SIMATIC S7-1500 CPU只支持暖啟動。
15
MC運動控制組織塊
在添加相關的“SIMATIC S7-1500運動控制”工藝對象之后,系統自動將OB91/0B92 分配到MC伺服中斷和MC插補器中斷。MC- PreServo和MC- PostServo用于液壓軸控制的修正。
聯系方式
- 電 話:13922889745
- 經理:向小姐
- 手 機:18475208684
- 微 信:18475208684