選自-成都縱橫智控-https://www.iotrouter.com
需求概述
本章主要實現(xiàn)一個流程:EG8200采集西門子S7-200smart的數據,并將數據存儲在Modbus寄存器中,等待外部主機通過Modbus TCP協(xié)議來讀取。
| PLC | S7-200smart | ||
| IP | 192.168.0.34/102 | ||
| 地址 | 數據類型 | 屬性 | 名稱 |
| I0.0 | Boolean | 只讀 | bitSignal1 |
| I0.1 | Boolean | 只讀 | itSignal2 |
| I0.2 | Boolean | 只讀 | itSignal3 |
| I0.3 | Boolean | 只讀 | itSignal4 |
| I0.4 | Boolean | 只讀 | itSignal5 |
| I0.5 | Boolean | 只讀 | itSignal6 |
| I0.6 | Boolean | 只讀 | itSignal7 |
| I0.7 | Boolean | 只讀 | itSignal8 |
| VD20 | Float | 只讀 | floatSignal1 |
| VD24 | Float | 只讀 | floatSignal2 |
| VD28 | Float | 只讀 | floatSignal3 |
| VD32 | Float | 只讀 | floatSignal4 |
| VW36 | Usint16 | 只讀 | uintSignal1 |
| VW38 | Usint16 | 只讀 | uintSignal2 |
| VW40 | Usint16 | 只讀 | uintSignal3 |
| VW42 | Usint16 | 只讀 | uintSignal4 |
需求分析
在制作流程時,基礎的邏輯是根據功能實現(xiàn)來制作流程。該需求經過分析可以得出,主要分為PLC數據讀取與存儲、Modbus TCP通信兩個部分。
1.通過西門子S7協(xié)議讀取PLC的數據,得到的數據存儲在內存中(西門子節(jié)點)
2.將數據進行格式化(函數節(jié)點)
3.將格式化后的數據存儲到寄存器中(Modbus Server節(jié)點)
4.外部主機連接主動讀取

需求實現(xiàn)
1.采集PLC數據
從節(jié)點庫拖入一個S7讀數據節(jié)點,以及一個調試節(jié)點,調試節(jié)點用于查看讀取到的PLC的數據,方便定位問題:

雙擊西門子節(jié)點,根據需求概述的內容填寫對應的設置參數,如下圖所示:

如果設置正確,調試窗口會有日志打印,顯示的是讀取到的數據內容:

有的時候PLC數據點比較多,手動依次錄入比較繁瑣。節(jié)點支持數據點的導入導出或者參數傳遞的方式來讀?。?/p>

本例程用到的傳參代碼如下:

數據進行格式化
使用函數節(jié)點將PLC數據處理成對應格式:

數據格式化參考代碼如下:

3.存儲到Modbus寄存器
使用Modbus服務節(jié)點,將格式化的數據傳入,并配置存儲方式:

使用TCP IN節(jié)點和TCP OUT節(jié)點搭配實現(xiàn)TCP 服務端:

使用上位機(Modbus Poll軟件)通過Modbus TCP來讀取映射的數據:

審核編輯 黃宇
-
plc
+關注
關注
5051文章
14610瀏覽量
487109 -
西門子
+關注
關注
98文章
3318瀏覽量
120427 -
MODBUS
+關注
關注
28文章
2459瀏覽量
83292
發(fā)布評論請先 登錄
Modbus協(xié)議轉Profinet協(xié)議網關與氣體監(jiān)測系統(tǒng)配置案例
Modbus協(xié)議轉Profibus協(xié)議網關接溫控表與PLC通訊
Modbus協(xié)議轉HTTP協(xié)議,實現(xiàn)JSON格式對接MES等系統(tǒng)平臺
labview 與s7-200 串口通信 modbus協(xié)議
modbus協(xié)議筆記
Modbus協(xié)議是什么?Modbus協(xié)議主要有哪些應用?
Modbus是什么?Modbus協(xié)議有哪些優(yōu)點
S7通信協(xié)議介紹 s7協(xié)議和profinet協(xié)議區(qū)別
Modbus協(xié)議網關是什么?Modbus協(xié)議網關的功能
Profibus協(xié)議轉Modbus協(xié)議網關模塊在船舶中的應用
巴圖制自動化Profinet協(xié)議轉Modbus協(xié)議模塊連接PLC和電表通信
S7協(xié)議轉Modbus協(xié)議
評論