前言:西門子S7-200 SMART PLC(以下簡稱 200-SMART)是一款優秀的可程式設計控制器,廣泛應于工業控制領域,是一款性能高,運作穩定的控制器。200-SMART具備網口進行程式的上下載下傳和通訊,此次我們要使用MODBUS-TCP協定,通過網口把200-SMART連接配接到EMCP物聯網雲平台(簡稱EMCP),實作電腦Web網頁、手機APP和微信對200-SMART 内的VW1000、VW1002、I0.0寄存器的遠端監控和VW1004和Q0.0的遠端讀寫。
一、準備工作。
1.1在對接前我們需準備如下物品;
- 西門子S7-200 SMART PLC一台,及通訊用網線。
- 河北藍蜂科技的GM20 DTU子產品一台,天線和電源擴充卡(WM20 DTU使用方法相同)。
- 4G SIM卡一張,有流量,大卡,任意營運商均可。
- 聯網電腦一台(WinXP/Win7/Win8作業系統)。
- 電工工具,通訊線材等。

1.2 DTU準備工作
此處參考《GM20-DTU使用者使用手冊》進行操作,我們需要對DTU網關(以下均以GM20-DTU網關來介紹)連接配接天線、插上SIM卡、連接配接12V或24V的電源擴充卡。
1.3 PLC準備工作。
200 SMART連接配接220V交流電,先使用電腦通過網線連接配接PLC的以太網通訊口進行程式的配置,然後使用網線連接配接GM20的LAN口和PLC的以太網口,進行MODBUS-TCP通訊。
二,PLC的MODBUS-TCP通訊建立。
第一步,建立PLC的MODBUS-TCP伺服器;
使用西門子的《STEP 7-MicroWIN SMART V2.2》程式設計軟體, 在PLC程式中添加MB_Server指令庫,MB_Server指令庫包含MBS_Connect和MBS_Slave等2個指令。如下圖:(下圖為一個能夠正常通訊的指令塊設定)
MBS_Connect指令各個參數定義如下:
- EN 使能:必須保證每一掃描周期都被使能。
- Connect:啟動TCP 連接配接建立操作。
- Disconnect: 斷開TCP連接配接操作。
- ConnID: TCP 連接配接辨別。
注意:Modbus TCP 屬于TCP通信,也是開放式使用者通信中的一種,是以ConnID參數不能與其他TCP、ISO-on-TCP、UDP通信相同。
- IPaddr1~IPaddr4: Modbus TCP 用戶端的IP位址,IPaddr1 是 IP 位址的最高有效位元組,IPaddr4 是 IP 位址的最低有效位元組。建議設定為0.0.0.0,這樣任意一個用戶端均可以通路。
- LocPort: 本地裝置上端口号(必須設定為502)
- MaxHold: 用于設定 Modbus 位址 4xxxx 或 4yyyyy 可通路的 V 存儲器中的字保持寄存器數。此數值必須設定大于等于需要讀取的所有資料的長度,例如,需要監控100個字的V區資料,此資料必須設定大于等于100。
- HoldStart: 間接位址指針,指向 CPU 中 V 存儲器中保持寄存器的起始位址。本例中VW1000 即對于 Modbus 位址 40001 。(即VW1000對應40001,VW1002對應40002)。(其他寄存器,如I寄存區可通過功能碼02,Q寄存區可使用功能碼01,AI寄存器可通過功能碼04進行直接通路)。
- ConnectDone:Modbus TCP連接配接已經成功建立。
- Busy: 連接配接操作正在進行時。
- Error: 建立或斷開連接配接時,發生錯誤。
- Status:如果指令置位 “Error” 輸出,Status 輸出會顯示錯誤代碼。
MBS_Slave指令各個參數定義如下:
- EN 使能:必須保證每一掃描周期都被使能。
- Done:當 MB_Server 指令響應 Modbus 請求時,Done 完成位在目前掃描周期被設定為 1 ; 如果未處理任何請求,Done 完成位為 0 。
- Error: 錯誤代碼,隻有在 Done 位為1時錯誤代碼有效。
第二步,配置設定庫位址區
在程式設計軟體右側,在【程式塊】功能點選滑鼠右鍵,調用【庫存儲區】功能,使用【建議位址】,保證庫存儲區與程式中資料存放區沒有重疊即可,點選【确定】,完成整個MODBUS-TCP伺服器配置。如下圖:
第三步,将修改好的程式下載下傳到PLC中,下載下傳時請記錄PLC的IP位址。 本文案例,PLC的IP位址為192.168.2.2。
三,EMCP平台設定。
用管理者賬号登入EMCP平台www.lfemcp.com (建議使用IE9以上浏覽器或谷歌浏覽器),對EMCP雲平台進行設定。具體操作參照《EMCP物聯網雲平台使用者手冊》。登入EMCP後首先進入裝置清單顯示頁面,因為我們未建立任何裝置,是以是一個空頁面。點選右上角的“背景管理”按鈕(隻有管理賬号才有此權限),進入EMCP平台的背景。
3.1遠端配置DTU
打開“背景管理—>子產品管理”頁面,将DTU綁定至此管理者賬号,然後就可以使用“遠端配置”功能來配置DTU的各項通訊參數和功能參數。最主要兩個地方需要配置,一是與PLC通訊口參數,二是設定DTU定時采集PLC資料的MODBUS通道參數,下面分步驟對此功能進行講解。注:子產品隻有線上後才可以進行遠端配置。
3.1.1子產品綁定
子產品初始綁定密碼是111111,直接點選綁定即可。
3.1.2 子產品遠端配置
在【子產品管理】中使用對應DTU的【遠端管理】功能來進行DTU各項通訊參數的設定;子產品的遠端配置最好先【讀取】再【寫入】,隻有寫入成功後才表示該參數成功配置到DTU中,執行寫入後也可以通過讀取操作來檢查之前的操作是否成功。第一步進入狀态資訊頁,檢視DTU狀态,如下圖:
第二步,進行【通訊設定】,将DTU的通訊口設定為LAN網口通訊,因為PLC的IP位址為192.168.2.2,需要設定DTU的通訊IP為同一個子網内的IP,此時設定為192.168.2.254。然後在Modbus-TCP Server 參數設定清單中,添加200 SMART的從站号、IP位址和通訊端口号(MODBUS-TPC标準為502端口号)
資料通訊口:設定為與PLC通訊口類型,可選RS485、RS232或LAN網口,此處使用LAN網口進行MODBUS-TCP通訊;
本機IP:DTU作為MODBUS-TCP通訊的用戶端的IP位址,此IP必須要在通訊區域網路的子網段内,且不與子網内的其他裝置IP重複,直連200 SMART的話,直接設定為與200 SMART同一個子網段即可,本案例設定為192.168.2.254;
Modbus-TCP Server 參數:
從站号:為PLC的從站号,此從站号不與其他參與通訊的PLC重複即可,本案例設定為1;
IP位址:PLC作為MODBUS-TCP伺服器的IP位址,本案例為192.168.2.2;
端口号:PLC通訊端口,MODBUS-TPC協定标準端口為502,本案例也是用502端口;
第三步,進行【Modbus配置】,配置DTU定時讀取PLC的資料發送到平台的各項參數。如下圖:
實時資料定制采集清單中的參數說明:
裝置從站号:DTU連接配接的PLC的從站号,與【通訊設定】中PLC的從站号一緻。本案例為1;
功能碼:為子產品讀取裝置MODBUS寄存區的标志符。“功能碼01”對應“線圈”(0XXXX),“功能碼02”對應“離散量輸入”(1XXXX),“功能碼03”對應“保持寄存器”(4XXXX),“功能碼04”對應“輸入寄存器”(3XXXX)。西門子PLC中,Q點對應01功能碼,I點對應02功能碼,MBS_Connect的HoldSt`指向的區域對應03功能碼(上文PLC程式指向的是VW1000到VW1198),AI區對應04功能碼。
起始位址:為子產品所連裝置的MODBUS寄存器讀取的起始位址(不包含寄存區辨別符)。圖中第一個MODBUS指令位址1代表00001,第二個MODBUS指令位址1代表10001,第三個MODBUS指令位址1代表40001。
資料長度:為DTU讀取裝置資料的連續長度,圖中的長度為8和10,既連續讀取從00001到00008、 10001到10008以及40001到40010。
标準DTU可連接配接多個從站(最多4個),可點選“建立”建立MODBUS指令通道,配置規則按上述說明。
結合上文PLC從站的建立,這裡實時監控的是PLC的Q0.0到Q0.7、I0.0到I0.7和VW1000到VW1018。
注:當DTU出現異常時,如無法連接配接網絡線上,或者無法與PLC正常通訊,此時可以使用配置口(預設RS232)連接配接PC,使用“DTU配置軟體”來檢視狀态及異常報警,詳見《DTU配置軟體使用手冊》。
3.2 建立資料規則
點選網頁左側的【資料規則】進入規則設定頁面,點選右上角的【新增】,在彈出的視窗中設定該資料規則的名稱“S7-200 SMART”和展示樣式【清單展示】,我們可以選擇清單展示或組态展示,
清單展示:我們所添加的資料會以固定的清單樣式展示,清單展示方式簡單友善(資料測試階段可選用清單展示)。
組态展示:我們可以任意繪制裝置資料的展示樣式比如添加圖形、圖檔、儀表盤、柱狀填充和文字等内容(此功能類似傳統的組态軟體可參考《EMCP平台畫面組态使用說明》文檔)。
資料規則建立完後點選【實時資料】新增實時資料解析規則(3.1.2中設定的Modbus配置),點選【讀寫資料】建立平台對裝置手動讀寫操作的資料規則。建立規則展示如下。
注:實時資料:是DTU根據所配置的Modbus采集通道(參考上面的3.1介紹),按設定的采集間隔定時讀取從站資料并上傳到平台所顯示的内容;
讀寫資料:無需在DTU配置Modbus定時采集通道,可直接通過平台對下位裝置進行資料的手動讀寫操作;
EMCP平台所有"寄存器位址"設定均不需要帶寄存器區辨別符,如讀寫“保持寄存器”(03功能碼)中40019的資料,在平台資料規則中的"寄存器位址"填寫19即可(注:如果裝置Modbus位址計數是從0開始的,則需要做加1處理,即填寫20) 。
報警設定,在建立好的實時資料中,點選【報警】選項,進入報警設定頁面。我們可以設定該資料的報警上下限和報警内容以及是否啟用此報警。設定報警後當該資料超出報警上下限後平台會自動記錄報警的時間和報警值,同時平台會向使用者登入的APP或微信推送報警消息。
3.3 建立裝置
在背景管理中,選擇【裝置管理】-> 【新增】建立一個裝置“S7-200 SMART ”。建立裝置是填寫裝置的基本資訊,1選擇裝置比對的圖檔(從本地上傳,也可不選擇,系統會以預設圖檔顯示);
2輸入子產品SN,輸入要綁定的SN的編碼,如果此SN之前未綁定,則會彈出綁定視窗進行綁定;
3選擇上面建立的資料規則;
4點選“地圖”按鈕選擇裝置所在的地理位置。完成後點選【儲存】。
四,實驗效果。
打開PLC程式設計軟體,将PLC轉至線上,并且從監控表中監控目前PLC的資料,如下圖:
使用者登入EMCP平台(www.lfemcp.com),點選“S7-200 SMART ”裝置的圖檔或裝置名稱進入裝置。首先看到的是PLC定時采集資料的顯示(實時資料),通過點選【讀寫資料】對PLC進行讀寫操作,點選【曆史資料】檢視裝置定時存儲資料的曆史資料報表,點選【報警記錄】進入報警資訊記錄報表頁面,顯示如下。
在手機安裝《雲聯物通》手機APP(可通過電腦網頁平台登入頁右上角的二維碼掃描下載下傳,或各大應用商店下載下傳),憑使用者名和密碼登入,進入裝置清單後點選“S7-200 SMART”裝置,直接進入的是實時資料清單頁面或組态畫面(組态展示方式下),點選右上角菜單欄【三杠按鈕】,彈出功能菜單,在菜單中點選【讀寫資料】對讀寫資料進行讀寫操作,點選【曆史報表】檢視裝置的曆史存儲資料報表,點選【曆史曲線】可檢視各資料的曆史趨勢圖,點選 【報警資訊】檢視該裝置的報警記錄。
五,輔助功能介紹
5.1 畫面組态功能。
通過【背景設定】->【資料規則】->【設定】->【組态展示】這幾個步驟來選擇使用組态展示形式來展示對應資料規則。選擇為組态展示後,規則的畫面組态選項變為可用,點選【畫面組态】”項,進入編輯頁面。通過組态編輯頁面我們可以任意繪制圖檔、文字、數顯框、按鈕、訓示燈、管道、裝置等等空間,詳細功能請參考《EMCP平台畫面組态使用說明》http://www.lanfengkeji.com/h-col-135.html。
5.2微信功能。
微信關注“EMCP物聯網雲平台”公衆号,按照提示綁定平台賬号,即可使用微信監控裝置,接收報警資訊。為了便于對裝置的管理建議将“EMCP物聯網雲平台”公衆号“置頂”。
5.3 資料規則中開啟通訊報警和授權普通使用者功能。
通訊報警功能就是當DTU與PLC通訊異常時,在相應裝置中會進行報警,根據通訊異常的原因在報警内容中進行注釋,友善調試。設定及效果如下:
5.4裝置公開功能。
在裝置管理中,可以将裝置的屬性設定為公開,公開後會生成裝置所屬的url連接配接和二維碼,通過該連接配接和二維碼可實作免登陸打開裝置,同樣也可将裝置分享到社交圈。
5.5新增普通賬号及裝置授權。
管理者賬号建立完裝置後,可以通過“普通賬号”選項為使用者建立一個單獨的賬号供其通路所屬的裝置。此功能主要為使用者開通一個專屬的賬号,使用者檢視自己所屬的裝置。
5.6視訊監控功能。
EMCP平台可實作螢石雲攝像頭的接入,進而實作web、APP、微信等終端對現場視訊監控功能。詳情請浏覽《EMCP物聯網雲平台視訊使用說明V3.6》
5.7風格定制/系統定制服務。
對于大中型企業,我們還為使用者提供平台和軟體定制服務,介紹如下;
風格定制服務:風格定制是在原有EMCP平台基礎上實作使用者個性化風格的顯示,整個服務依舊運作在原EMCP平台伺服器上的,布局、功能和架構等基礎内容不做改變。風格定制内容主要展現在電腦網頁、手機網頁、安卓APP、微信公衆平台的登入域名、登入頁、平台名稱、平台圖示等。适合企業品牌建設。
私有雲部署服務:為将EMCP系統部署到使用者的伺服器上,除了顯示風格的定制,還可以更改系統的功能的增加、布局顯示的改變以及資料分析等服務。
如有需求可聯系藍蜂銷售人員。
六,故障分析。
6.1 裝置離線的原因
1.SN碼和密碼綁定錯誤,EMCP平台所建裝置的SN碼必須和所連GM10子產品的SN碼相同(SN位于GM10右側面标簽),密碼必須和DTU配置軟體設定的密碼相同(預設111111)。
2.SIM卡選擇不對,必須選擇移動或聯通的SIM(部分聯通卡不相容,建議選用移動卡)。
3.SIM欠費。
4.網絡信号差,DTU在信号強度低于15或誤碼率高于3時會出現掉線或無法聯網的情況,最好保證信号強度在20以上誤碼率為0(可通過改變天線的安放位置調整信号強度,信号強度可通過DTU配置軟體或平台子產品遠端配置中獲得。)
6.2 如平台無法讀取PLC的資料的原因。
1.PLC的Modbus-TCP伺服器沒有建立成功。此時我們可以通過Modscan32主站軟體對PLC進行通訊測試,如果無法讀取PLC的資料那麼說明PLC的Modbus-TCP伺服器沒有建立成功。
2.接線問題,請确認使用的網線接頭接線定義正确無虛接。
3.資料建立失敗,檢查資料規則中所建立的裝置是否正确。
4,如果顯示“資料未采集”,請檢查子產品的“遠端配置”是否設定了Modbus采集通道,參考3.1.2中的設定。