西門子CPU1211C中央處理器西門子中國總代理 西門子授權代理商西門子CPU1211C中央處理器西門子中國總代理 西門子授權代理商西門子CPU1211C中央處理器西門子中國總代理 西門子授權代理商西門子PLC同步錯誤組織塊?1.同步錯誤??同步錯誤是與執行用戶程序有關的錯誤,程序中如果有不正確的地址區、錯誤的編號或錯誤的地址,都會出現同步錯誤,操作系統將調用同步錯誤OB。
OB121用于對程序錯誤的處理,OB122用于處理模塊訪問錯誤。
??同步錯誤OB的優先級與檢測到出錯的塊的優先級一致。
OB121和OB122可以訪問中斷發生時累加器和其他寄存器的內容。
用戶程序可以用它們來處理錯誤,例如出現對某個模擬量輸入模塊的訪問錯誤時,可以在OB122中用SFC44定義一個替代值。
??可以用SFC36“MASK_FLT”來屏蔽同步錯誤,使某些同步錯誤不觸發對應的OB的調用,CPU在錯誤寄存器中記錄發生的被屏蔽的錯誤。
SFC 37“DMSK_FLT”在當前優先級被執行完后,將解除被屏蔽的錯誤,并且清除當前優先級的事件狀態寄存器相應的位。
??可以用SFC38“READ_ERR”讀出已經發生的被屏蔽的錯誤。
??對于S7-300(CPU318除外),不管錯誤是否被屏蔽,錯誤都會被送入診斷緩沖區,并且CPU的“SF”LED會被點亮。
??2. 編程錯誤組織塊(OB121)??出現編程錯誤時,CPU的操作系統將調用OB121。
編程錯誤的診斷將在7.3.2節介紹。
??3. I/O訪問錯誤組織塊(OB122)??CPU用PI、PQ地址區訪問有故障的模塊時,如果出現直接訪問I/O錯誤(模塊損壞或找不到),或者訪問了一個CPU不能識別的I/O地址,此時CPU的操作系統將會調用0B122。
0B122將在7.1.1節介紹。
??其他組織塊??1. DPV1中斷組織塊 OB55~OB57??如果PROFIBUS-DP V1(簡稱 DPV1)從站的模塊或機架改變了操作模式,例如由RUN切換為STOP,CPU的操作系統可能調用狀態中斷組織塊OB55。
??如果用戶通過本地或遠程訪問更改了DPV1從站插槽的參數,CPU的操作系統可能調用更新中斷組織塊0B56。
OB57是DPV1從站的插槽觸發的制造商特定的中斷的組織塊。
??2.多處理器中斷組織塊OB60??S7-400的一個機架可以插入最多4個CPU,協同完成同一個復雜任務。
OB60用來確保在多CPU過程中CPU的反應與事件同步。
??3.同步循環中斷組織塊OB61~OB64??DP從站從采集輸入信號到輸出邏輯運算結果需要經過7個不同的循環,同步循環中斷用于實現各DP從站數據處理的同步。
??4.技術功能同步中斷組織塊OB65??技術(Technology)功能同步中斷組織塊0B65用于技術功能CPU的程序啟動和技術功能塊更新的同步。
??5.背景組織塊OB90??S7-400的CPU可以設置最小掃描循環時間,如果它比實際的掃描循環時間長,在循環程序結束后CPU處于空閑的時間內可以執行背景組織塊(OB90)。
如果沒有對OB90編程,CPU要等到定義的最小掃描循環時間到達為止,再開始下一次循環的操作。
用戶可以將對運行時間要求不高的操作放在OB90中去執行,以避免出現等待時間。
??OB90的優先級為29(最低),不能通過參數設置進行修改。
實際編程極少使用OB90。
西門子PLC順序功能圖舉例某專用鉆床用來加工圓盤狀零件上均分布的6個孔(見圖S一13),上面是視圖,面是工件的俯視圖。
??在進入自動運行之前,兩個錯頭應在最上面,上限位開關10.3和10.5為1狀態,系統處于初始步,減計數器00的設定值3被送入計數器字。
在圖S-14中用存儲器位來代表各步,順序功能圖中包含了選擇序列和并行序列。
操作人員放好工件后,按下起動按鈕10.0??轉換條件I0.0*10.3*10.5滿足,由初始步轉換到步M0.1,Q4.0變為1狀態,工件被夾緊。
夾緊后壓力繼電器I0.1為1狀態,由步M0.1轉換到步M0.2和M0.5,Q4.1和Q4.3 使兩只鉆頭開始向下鉆孔。
大鉆頭鉆到由限位開關10.2設定的深度時,進入步M0.3,Q4.2使大鉆頭上升,升到由限位開關10.3設定的起始位置時停止上升,進入等待步M0.4。
小鉆頭鉆到由限位開關10.4 設定的深度時,進入步M0.6,Q4.4使小鉆頭上升,升到由限位開關I0.5設定的起始位置時停止上升,進入等待步M0.7。
在步M0.5,設定值為3的計數器C0的當前值減1。
減1后當前值為2(非0),C0的常開觸點閉合,轉換條件C0滿足。
兩個鉆頭都上升到位后,將轉換到步M1.0。
Q4.5使工件旋轉120°,旋轉到位時10.6變為1狀態,又返回步M0.2和M0.5,開始鉆第二對孔。
3對孔都鉆完后,計數器的當前值變為0,其常閉觸點閉合,轉換條件C0滿足,進入步M1.1,Q4.6使工件松開。
松開到位時,限位開關I0.7為1狀態,系統返回初始步M0.0。
??步M1.0上面的轉換條件如果改為10.6,因為在工件開始旋轉之前限位開關I0.6就處于1狀態,轉換條件滿足,導致工件不能旋轉。
轉換條件“↑I0.6”則不存在這個問題,工件旋轉120°后,I0.6由0狀態變為1狀態,轉換條件“↑I0.6”才滿足,轉換到步M0.2和步M0.5后,工件停止旋轉。
??因為要求兩個鉆頭向下鉆孔和鉆頭提升的過程進行,采用并行序列來描述上述的過程。
由M0.2~M0.4和M0.5~M0.7組成的兩個單序列分別用來描述大鉆頭和小鉆頭的工作過程。
在步M0.1之后,有一個并行序列的分支。
當M0.1為活動步,且轉換條件I0.1得到滿足(I0.1為1狀態),并行序列的兩個單序列中的第1步(步M0.2和M0.5)變為活動步。
此后兩個單序列內部各步的活動狀態的轉換是相互獨立的,例如大孔或小孔鉆完時的轉換一般不是同步的。
??兩個單序列的最后一步(步M0.4和M0.7)應變為不活動步。
兩個鉆頭一般不會上升到位,不可能結束運動,設置了等待步M0.4和M0.7,它們用來結束兩個并行序列。
當兩個鉆頭均上升到位,限位開關I0.3和I0.5分別為1狀態,大、小鉆頭兩個子系統分別進入兩個等待步,并行序列將會立即結束。
??在步M0.4和M0.7之后,有一個選擇序列的分支。
沒有鉆完3對孔時C0的常開觸點閉合,轉換條件C0滿足,如果兩個鉆頭都上升到位,將從步M0.4和M0.7轉換到步M1.0。
如果已經鉆完了3對孔,C0的常閉觸點閉合,轉換條件C0滿足,將從步M0.4和M0.7轉換到步M1.1。
在步M0.1之后,有一個選擇序列的合并。
當步M0.1為活動步,并且轉換條件I0.1得到滿足(I0.1為1狀態),將轉換到步M0.2和M0.5。
當步M1.0為活動步,并且轉換條件10.6得到滿足,也會轉換到步M0.2和M0.5。