西門子PLC中央處理器CPU319-3PN/DP
在上述通信方式下,由于只用兩根線進行數(shù)據(jù)傳送,所以不能夠利用硬件握手信號作為檢測手段。因而在PC機與PLC通信中發(fā)生誤碼時,將不能通過硬件判斷是否發(fā)生誤碼,或者當PC與 PLC工作速率不一樣時,就會發(fā)生沖突。這些通信錯誤將導致PLC控制程序不能正常工作,所以必須使用軟件進行握手,以保證通信的可靠性。
由于通信是在PC機以及PLC之間協(xié)調進行的,所以PC機以及PLC中的通信程序也必須相互協(xié)調,即當一方發(fā)送數(shù)據(jù)時另一方必須處于接收數(shù)據(jù)的狀態(tài)。所示分別是PC、PLC的通信程序流程。
通信程序的工作過程:PC每發(fā)送一個字節(jié)前首先發(fā)送握手信號,PLC收到握手信號后將其傳送回PC,PC只有收到PLC傳送回來的握手信號后才開始發(fā)送一個字節(jié)數(shù)據(jù)。PLC收到這個字節(jié)數(shù)據(jù)以后也將其回傳給PC,PC將原數(shù)據(jù)與PLC傳送回來的數(shù)據(jù)進行比較,若兩者不同,則說明通信中發(fā)生了誤碼,PC機重新發(fā)送該字節(jié)數(shù)據(jù);若兩者相同,則說明PLC收到的數(shù)據(jù)是正確的,PC機發(fā)送下一個握手信號,PLC收到這個握手信號后將前一次收到的數(shù)據(jù)存入的存儲區(qū)。這個工作過程重復一直持續(xù)到所有的數(shù)據(jù)傳送完成。
每一個狀態(tài)或者步用一個狀態(tài)元件表示,S0為初始步,也稱為準備步,表示初始準備是否到位。其它為工作步。
狀態(tài)元件是構成狀態(tài)轉移圖的基本元素,是可編程控制器的軟元件之一。 FX2N 共有 1000個狀態(tài)元件,其分類、編號、數(shù)量及用途如表1所示。
表1 FX2N的狀態(tài)元件
注:①狀態(tài)的編號必須在范圍內選擇。
②各狀態(tài)元件的觸點,在PLC內部可自由使用,次數(shù)不限。
③在不用步進順控指令時,狀態(tài)元件可作為輔助繼電器在程序中使用。
④通過參數(shù)設置,可改變一般狀態(tài)元件和掉電保持狀態(tài)元件的地址分配。
3.狀態(tài)轉移圖(SFC)的畫法
狀態(tài)轉移圖(SFC)也稱功能表圖。用于描述控制系統(tǒng)的控制過程。
狀態(tài)轉移圖的三要素:驅動動作、轉移目標和轉移條件。其中轉移目標和轉移條件*,而驅動動作則視具體情況而定,也可能沒有實際的動作。
步與步之間的有向連線表示流程的方向,其中向下和向右的箭頭可以省略。圖中流程方向始終向下,因而省略了箭頭。
@
哪些措施可以提高PLC系統(tǒng)的搞干擾性能
采用軟件握手以后,不管PC與PLC的速度相差多遠,發(fā)送方永遠也不會超前于接收方。軟件握手的缺點是大大降低了通信速度,因為傳送每一個字節(jié),在傳送線上都要來回傳送兩次,并且還要傳送握手信號。但是考慮到控制的可靠性以及控制的時間要求,犧牲一點速度是值得的,也是可行的。
PLC方的通信程序只是PLC整個控制程序中的一小部分,可將通信程序編制成PLC的中斷程序,當PLC接收到PC發(fā)送的數(shù)據(jù)以后,在中斷程序中對接收的數(shù)據(jù)進行處理。PC方的通信程序可以采用VB、VC等語言,也可直接采用西門子組態(tài)軟件,如STEP7、WinCC。
西門子PLC中央處理器CPU319-3PN/DP