S7-1200 CPU 與 S7-200 SMART S7通信(S7-1200 作為服務器)
S7-200 SMART CPU 固件版本 V2.0 及其以上,本體集成的 PROFINET 通信接口支持 S7 通信,可以通過向導或使用 GET/PUT 指令兩種方式實現,最多可以建立 16 個 S7 連接,其中包括:8 個客戶端,8 個服務器。
S7-1200 CPU 本體集成的 PROFINET 通信接口可以做 S7 通信的服務器。S7-1200 僅支持 S7 單邊通信,做客戶端僅需單邊組態連接和編程,而做服務器端則只需準備好通信的數據即可。S7-1200 作為S7服務器,可以使用 6 個動態連接資源。
本文以 S7-200 SMART 作客戶端通過向導的方式與 S7-1200 進行 S7 通信為例,加以說明。
硬件和軟件需求及所完成的通信任務
硬件:
① S7-200 SMART 標準 CPU 固件版本 V2.5 (文檔中S7-ST40 DC/DC/DC 訂貨號:6ES7288-1ST40-0AA0)
② S7-1200 CPU 固件版本 V4.4(文檔中S7-1215 DC/DC/DC 訂貨號:6ES7215-1AG40-0XB0)
③ PC (帶以太網卡),TP電纜(以太網電纜)
軟件:
① STEP7-MicroWIN SMART V2.5
② TIA STEP7 V16
所完成的通信任務:
① S7-200 SMART 將 VB0 開始的連續 20 個字節中的數據發送到 S7-1200 通信數據區 DB8 中的 20 個字節中。
② S7-200 SMART 讀取 S7-1200 DB9 中的 20 個字節數據并存儲在 VB100 開始的連續 20 個字節中。
S7-1200側組態和編程
1. 新建項目
在項目中,添加 S7-1215 DC/DC/DC,并為其添加子網和分配 IP 地址,如圖 1 所示。
圖1 S7-1215 DC/DC/DC
2. 創建 DB
依據要求,創建 DB 數據區,并建立相應數組,分別命名為 Write、Read,如圖 2 所示。
圖2 創建 DB
3. 創建DB1
S7-200 SMART 作為 S7 客戶端只能訪問服務器的V區,而S7-1200沒有V區, V 區對應 S7-1200 中 DB1,且只能對應 DB1 ,所以需要把 DB9 中數據傳送到 DB1,而將DB1的數據傳送到DB8,進而間接實現 S7-200 SMART 對 S7-1200 DB8、 DB9 寫和讀的操作;創建 DB1 并建立相關變量,如圖 3 所示。
圖3 創建 DB1
4. 優化的塊訪問
數據塊的屬性中,需要選擇非優化的塊訪問(把默認的勾取消掉),DB1 需要此操作,DB8、DB9 無需此操作,如圖 4 所示。注意:需要編譯后,才可看到偏移量。
圖4 優化的塊訪問
5. 關聯變量
將 DB8、DB9 中需要寫和讀的變量與 DB1 中的數據進行關聯,如圖 5 所示。
圖5 關聯變量
6. 連接機制
S7-1200 作為服務器進行 S7 通信,對于 CPU V4.0以后的固件版本,需要勾選“允許來自遠程對象的PUT/GET通信訪問”,否者,無法建立通信,如圖 6 所示。
圖6 連接機制
注意:
S7-200 SMART 中 V 區對應于 S7-1200 中 DB1,且只能對應 DB1。
S7-200 SMART側組態和編程
1. 系統塊
雙擊“系統塊”,設置 S7-200 SMART CPU 的 IP 地址,如圖 7 所示。
圖7 系統塊
2. 向導
使用向導功能進行 GET/PUT 通信編程,并添加兩個操作,分別命名為 Read 、Write,完成后點擊“下一個”,如圖 8 所示。
圖8 向導
3. 配置Read數據
通過選擇操作類型 GET、設置遠程 CPU 的 IP 地址、設置本地 CPU 數據區、設置遠程 CPU 數據區配置 Read 數據,操作完成后,點擊“下一個”,其含義為:S7-200 SMART 讀取 S7-1200 DB1 中以 DB1.DBB0 為起始地址的連續20 個字節數據并存儲在以 VB100 開始的連續 20 個字節中,如圖 9 所示。
圖9 配置 Read 數據
4. 配置Write數據
通過選擇操作類型 PUT、設置遠程 CPU 的 IP 地址、設置本地 CPU 數據區、設置遠程 CPU 數據區配置 Wrtie 數據,操作完成后,點擊“下一個”,其含義為:S7-200 SMART 將 VB0 開始的連續 20 個字節中的數據發送到 S7-1200 通信數據區 DB1 中以 DB1.DBB20 開始的連續 20 個字節中,如圖 10 所示。
圖10 配置 Write 數據
5. 存儲區分配
在這里指定 V 存儲區中放置組態的起始地址,建議使用較大數值,以免和其他數據沖突,操作完成后,點擊“下一個”,如圖 11 所示。
圖11 存儲區分配
6. 組件
在這里可以看到組態后自動生成的組件,點擊“生成”,完成GET/PUT向導配置,如圖 12 所示。
圖12 組件
7. 編程
在 Main 函數中調用 NET_EXE 子程序,并分配相關引腳參數,如圖 13 所示。
圖13 編程
至此,S7-200 SMART 作客戶端與 S7-1200 進行 S7 通信的組態和編程就完成了。
通信測試
連接狀態
S7 連接成功的建立是調用 PUT/GET 指令的基礎,S7 連接成功建立后,方能正確執行 PUT/GET 指令。在 TIA 軟件的網絡視圖中,轉至在線,可以監控 S7 連接狀態,如圖 14 所示。
圖14 S7 連接狀態
數據交互
通過在線監控查看兩者之間的數據交互是否正確,如圖 15 、圖 16 所示,
圖15 DB8 數據
圖16 DB9 數據
審核編輯:劉清
評論
查看更多