S7系列PLC之間的少量數據交換——全局數據通訊(一)

【概要】

S7-300 CPU集成了MPI通訊協議,通過MPI網絡可實現全局數據通訊,在PLC之間進行少量數據交換。全局數據通訊不需要額外的硬件和軟件,結構簡單,成本低。當我們僅需要在PLC之間交換少量的數據時,可以考慮選擇全局數據通訊。

一、解釋幾個概念

1、MPI

MPI(MUltiPoint Interface),即多點通訊接口,其符合Profibus RS485接口標準。MPI網絡的通訊速率為19.2kbit/s-12Mbit/s,S7-300通常默認設置為187.5kbit/s。

2、全局數據GD塊

MPI網上兩個或多個CPU共享的數據,分別定義在發送方和接收方的CPU存儲器中,根據用途分為發送GD塊和接收GD塊。全局數據可由位、字節、字、雙字以及相關區(數組)組成。

3、全局數據表(GD表):用於組態全局數據通訊。

4、全局數據包(GD包)

具有相同的Sender/Receiver的全局數據,可以集合成一個全局數據包(GD packer)一起發送。每個數據包用數據包號碼(GD packer number)來標識。一個全局數據包由一個或幾個GD組成,一個數據區佔用的空間為數據區內的字節數加上兩個頭部說明字節,比如:一個單獨的雙字佔(4+2)bytes;一個單獨的字佔(2+2)bytes;一個單獨的位也要佔用3個字節。S7-300一個全局數據包每次最多允許傳輸22字節(不包括頭部說明字節)的數據。

全局數據包最多不能超過24bytes。

5、全局數據環(GD環)

MPI網絡中,參與全局數據包交換的CPU構成全局數據環。每個全局數據環用數據環號碼(GD circle number)來標識。

GD 2.1.3 ===>> 2號全局數據環、1號全局數據包的3號數據。

S7-300的每個CPU最多可以參與4個不同的數據環,在一個MPI網絡上最多可以有15個CPU通過全局數據通訊來交換數據。

全局數據環有以下2種方式:

  • 一對一方式:當GD環中僅有兩個CPU時,可以採用類全雙工點對點方式,不能有其他CPU參與,只有二者獨享;

  • 一對多(最多四個):廣播方式,一個廣播,其他接收。


二、全局數據通訊的通訊機制

發送方CPU按照設定的掃描頻率自動的、週期的將GD塊的數據發送給接收方;接收方CPU則定期的接收數據。發送方在掃描循環週期結束時發送全局數據;接收方在掃描循環週期開始時接收全局數據。這樣,發送全局數據包中的數據,對於接收方來說是“透明的”。也就是說,發送GD包中的信號狀態會自動影響接收端的GD包;接收端對接收GD包的訪問相當於對發送端GD包的訪問。

三、全局數據通訊配置

1、如圖1所示,在新項目中組態4個S7-300站點,並分別定義其MPI地址。(組態過程略)

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖1 MPI網絡組態

2、右鍵點擊MPI_GD網絡總線,選擇“定義全局數據”,如圖2、3所示。

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖2 打開全局數據表

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖3 GD表

3、按圖4所示步驟,配置參與GD通訊的CPU。所有參與GD通訊的CPU配置後,如圖5所示。

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖4 配置參與GD通訊的CPU

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖5 配置參與GD通訊的CPU

4、配置GD通訊

根據需要配置CPU之間的GD通訊,假設我們做如下配置:

  • station1分別和station2、station3直接配置成“一對一”通訊模式,station2、station3分別向station發送兩組數據,同時分別接收一組來自station1的數據。

  • 同時將station1配置成“一對多”的廣播模式,station1廣播,station2、station3、station4均接收數據。

配置如下:

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖6 配置GD通訊

5、定義掃描速率和狀態信息

通過菜單命令“查看”->“掃描速率”

可以顯示並配置GD通訊的掃描速率,通過“查看”->“全局數據狀態”可以將GD通訊的狀態信息保存下來,供PLC查閱、處理。如圖7所示。

S7系列PLC之間的少量數據交換——全局數據通訊(一)

圖7 定義掃描速率和狀態信息

四、小結

配置好GD通訊,且編譯無誤後,就可以實現同一條MPI網絡中PLC之間的GD數據交換了,篇幅所限,具體的數據處理方法留待下一篇文章進行討論。



分享到:


相關文章: