同一項目下的S7-1200之間的S7通信


一、要完成的功能任務

1.S7-1200 CPU Clinet 將通訊數據區 DB1 塊中的 10 個字節的數據發送到 S7-1200 CPU server 的接收數據區 DB1 塊中;

2.S7-1200 CPU Clinet 將S7-1200 CPU server 發送數據區 DB2 塊中的 10 個字節的數據讀到 S7-1200 CPU Clinet 的接收數據區 DB2 塊中。


二、硬件設備

1.CPU 1214C DC/DC/DC

2.CPU 1214C DC/DC/DC


三、軟件

西門子plc編程軟件:TIA 博途


四、實現方法

1.使用博途創建一個新項目,并通過“添加新設備”組態 S7-1200 站 client V4.1,選擇 CPU1214C DC/DC/DC V4.1(client IP:192.168.0.10);接著組態另一個S7-1200站 server v2.0,選擇 CPU1214C DC/DC/DC V2.0(server IP:192.168.0.12),如圖1所示

同一項目下的S7-1200之間的S7通信的圖1

同一項目下的S7-1200之間的S7通信的圖2

圖1


2.在“設備組態”中 ,選擇“網絡視圖”欄進行配置網絡,點中左上角的“連接”圖標,連接框中選擇“S7連接”,然后選中client v4.1 CPU(客戶端),右鍵選擇“添加新的連接”,在創建新連接對話框內,選擇連接對象“server v2.0 CPU”,選擇“主動建立連接”后建立新連接,如圖2所示:

同一項目下的S7-1200之間的S7通信的圖3

同一項目下的S7-1200之間的S7通信的圖4

圖2


3.在中間欄的“連接”條目中,可以看到已經建立的“S7_連接_1”,如圖3所示:

同一項目下的S7-1200之間的S7通信的圖5

圖3


4.點中上面的連接,在“S7_連接_1”的連接屬性中查看各參數,點中上面的連接,在“S7_連接_1”的連接屬性中查看各參數,如圖4所示:

同一項目下的S7-1200之間的S7通信的圖6

圖4


5.在本地ID中:顯示通訊連接的ID 號,這里ID=W#16#100(編程使用),如圖5所示:

同一項目下的S7-1200之間的S7通信的圖7

圖5


6.在特殊連接屬性中:可以選擇是否為主動連接,這里client v4.1是主動建立連接,如圖6所示:

同一項目下的S7-1200之間的S7通信的圖8

圖6


7.在地址詳細信息中:定義通訊雙方的 TSAP 號,這里不需要修改,如圖7所示:

同一項目下的S7-1200之間的S7通信的圖9

圖7


8.配置完網絡連接,雙方都編譯存盤并下載。如果通訊連接正常,連接在線狀態,如圖8所示:

同一項目下的S7-1200之間的S7通信的圖10

圖8


9.接下來進行編程,在 S7-1200 兩側,分別創建發送和接收數據塊 DB1 和 DB2,定義成 10 個字節的數組,如圖9所示:

同一項目下的S7-1200之間的S7通信的圖11

圖9


10.注意:數據塊的屬性中,需要選擇非優化塊訪問(把默認的勾去掉),如圖10所示:

同一項目下的S7-1200之間的S7通信的圖12

圖10


11.在主動建連接側編程(client v4.1 CPU),在OB1中,從“Instruction” >“Communication” >“S7 Communication”下,調用 Get、Put 通信指令,如圖11所示:

同一項目下的S7-1200之間的S7通信的圖13

圖11

12.功能塊參數意義如下表1:

功能塊管腳

賦值

含義

REQ

%M0.0

上升沿觸發

REQ

%M0.0

上升沿觸發

ID

W#16#100

連接號,要與連接配置中一致,創建連接時的本地連接號

DONE

%M0.5

為1時,發送完成

ERROR

%M0.6

為1時,有故障發生

STATUS

%MW10

狀態代碼

ADDR_1

P#DB1.DBX0.0 BYTE 10

發送到通信伙伴數據區的地址

SD_1

P#DB1.DBX0.0 BYTE 10

本地發送數據區

REQ 

%M1.0

上升沿觸發

ID

W#16#100

連接號,要與連接配置中一致,創建連接時的本地連接號

NDR

%M1.5

為1時,接收到新數據

ERROR

%M1.6

為1時,有故障發生

STATUS

%MW12

狀態代碼

ADDR_1

P#DB2.DBX0.0 BYTE 10

從通信伙伴數據區讀取數據的地址

RD_1

P#DB2.DBX0.0 BYTE 10

本地接收數據地址

表1

13.通過在 S7-1200 客戶機側編程進行 S7 通訊,實現兩個 CPU 之間數據交換,監控結果如圖12所示:

同一項目下的S7-1200之間的S7通信的圖14

圖12


五、總結

以上為實現在同一項目下兩臺S7-1200的單邊S7通信的方法,優點是只需要單邊編程,這是西門子PLC之間實現大量數據通信常用的方法,限制條件是兩邊PLC需要支持西門子S7通信協議。


來源:技成培訓網

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

2