前言:西門子S7-1200PLC是一款優秀的可編程控制器,廣泛應于工業控制領域,是一款性能高,運行穩定的控制器。此次我們要把S7-1200PLC通過modbus驅動連接到EMCP物聯網云平臺(簡稱EMCP),實現電腦Web網頁、手機APP和微信對S7-1200PLC(MW1000、MW1002、I0.0)寄存器的遠程監控和MW1004和Q0.0的遠程讀寫。
1) 西門子S7-1200 PLC一臺,及通訊用RJ45網線。
2) 西門子CB 1241 RS485模塊。
3) 河北藍蜂科技的EG20網關一臺,天線和電源適配器(以下用EG20作為實例)。
4) SIM卡一張,有流量,大卡(移動、聯通或電信卡)。
5) 聯網電腦一臺(WinXP/Win7/Win8/Win10操作系統)。
6) 電工工具,通訊線材等。
網關相關技術參數與使用說明,可參考《EG20用戶使用手冊》。
1、 保證網關可以正常聯網,可通過4G卡(移動/聯通/電信流量卡,大卡)聯網(需接上隨網關附帶的天線)或通過網線聯網(需將路由器出來的網線接到網關的WAN口);
2、 網關接12V或24V直流電源,上電。(注意,電源正負極不要接反)。
全部設備不接電源,取下S7-1200面板上下兩個活動護板,將CB1241插入CB槽內。將網線插入PLC的PROFINET網口,另一端插入電腦網口。CB1241與EG20連接按下圖連接,CB1241的T/RA和TA短接,一起接EG20的RS485B;CB1241的T/RB和TB短接,一起接EG20的RS485A。PLC上電(220VAC),EG20上電(12VDC或24VDC)。
第一步,使用西門子的《TIA Portal》(以下簡稱博途)軟件,本文使用的軟件版本是V14。將S7-1200和CB1241進行設備組態,如下圖:
在設備組態中選擇S7-1200,在屬性中的“系統和時鐘存儲器”,設置啟用系統存儲器字節,后面會用到,如下圖:
第二步,在程序塊中的Main[OB1],添加Modbus通訊使能指令塊“MB_COMM_LOAD_DB”和從站功能指令塊“MB_SLAVE_DB”。在創建過程中會提示生成相應指令塊的背景數據塊,點確認進行生成。
注意:請使用指令中的“MODBUS”文件夾下的指令,不要使用“MODBUS(RTU)”中的指令。
上面兩張圖中的指令設置的參數是:通過RS485通訊,波特率9600,無奇偶校驗,數據位數8,停止位1;PLC從站號為2,保持寄存器區域起始地址為MW1000,長度為10個字,即為MW1000到MW1018。
注1:MB_COMM_LOAD_DB指令塊和MB_SLAVE_DB指令塊詳細使用說明請參考博圖幫助文檔,如下圖,信息系統的路徑是:“對PLC進行編程”→ “指令”→ “通訊(S7-1200,S7-1500)” → “通訊處理器(S7-1200,S7-1500)” → “MODBUS(RTU)(S7-1200)”
注2:如果想要試用MODBUS訪問全局數據塊(DB),需要滿足以下兩個條件:
首先:數據塊DB的屬性中的優化訪問必須取消;
然后:在MB_SLAVE_DB的寄存器指向中,使用指針指向該DB地址,如下圖:
上圖設置的MODBUS從站參數是:通過RS485通訊,波特率9600,無奇偶校驗,數據位數8,停止位1;PLC從站號為2,保持寄存器區域起始地址為DB3.DBW0,長度為10個字,即為DB3.DBW0到DB3.DBW9。
第三步,將修改好的程序下載到PLC中,此處需要注意,一定要使用“在線(O)”選項中的“下載并復位PLC程序”,如圖:
用管理員賬號登錄EMCP平臺(建議使用360瀏覽器極速模式、瀏覽器(Chrome)或者支持Chromium內核的瀏覽器),對EMCP云平臺進行設置。具體操作參照《EMCP物聯網云平臺用戶手冊》。登錄EMCP后首先進入設備列表顯示頁面,因為我們未創建任何設備,所以是一個空頁面,我們需要按照以下步驟進行操作。
步驟:點擊【后臺管理】(只有管理賬號才有此權限)→【設備中心】→【EG設備管理】→【+新增】→ 填寫設備信息→點擊【保存】。其中,【設備名稱】必填,其余選項均可選填。
EG設備管理網關配置中最主要兩個地方需要配置,一是配置串口通訊參數,二是創建modbus驅動,下面分步驟對此功能進行講解。注:網關只有在線后才可以進行遠程配置。
步驟:點擊【步驟②:網關、儀表管理】→【綁定網關】→填寫【SN編號】和【驗證碼】→【確定】。
SN和驗證碼在網關的機殼標簽上,SN為12位純阿拉伯數字,驗證碼為6位英文字母,【備注】可以根據需求填寫,編輯完成后點擊【確定】。
(帶*必填項)
此時在“網關基本信息中”可以看到綁定的網關是否連接到平臺(成功登錄平臺可以看到“在線”綠色字樣,如果不成功則顯示“離線”灰色字樣,此時請檢查網絡或網絡信號)。
使用串口RS485通訊,需設置RS485通訊參數。
在網關上連接的每一個設備,都需要建立對應的設備驅動。就像電腦上插了一個鼠標,只有電腦系統里安裝了這個鼠標的驅動,電腦才能識別到這個鼠標。設備跟網關通過哪個通訊口連接,就在哪個通訊口下添加驅動。如圖所示,點擊【RS485】后面的【添加驅動】出現右側基本配置表進行配置。
注:配置完成后,點擊保存。
基本配置介紹:
【驅動名稱】:必填項,自定義即可,當有多個驅動時進行區分。
【品牌】:必填項,選擇“通用modbus設備”。
【型號】:必填項,選擇“Modbus RTU”。
【設備地址】:必填項,設備地址根據1200PLC設置的從站號進行填寫,本案例PLC從站號為“2”,所以此處填“2”。
【最小采集周期】:是網關采集設備數據的時間間隔,單位:ms。如設置1000ms,即網關1s采集一次設備數據。
【通訊等待時間】:網關接收通訊數據等待時間。可根據需要進行調整,默認1000ms。
【16位整型】、【32位整型】、【32位浮點型】:是指對應數據類型的解碼順序。默認設置即可
【分塊采集方式】:0— 按最大長度分塊:采集分塊按最大塊長處理, 對地址不連續但地址相近的多個分塊,分為一塊一次性讀取,以優化采集效率;1— 按連續地址分塊:采集分塊按地址連續性處理,對地址不連續的多個分塊, 每次只采集連續地址,不做優化處理。直接選擇默認即可。
【4區16位寫功能碼】:寫4區單字時功能碼的選擇。直接選擇默認即可。
步驟:點擊【步驟③:變量管理】→【+添加變量】→填寫變量信息→【保存】。
變量介紹:
【儀表、PLC】:必填,選擇剛才創建的驅動即可。根據實際情況選擇。
【變量名稱】:必填,自定義即可。注意不能有重復的名稱。
【單位】:非必填,自定義即可。在列表展示時,變量會帶上單位展示。
【寄存器類型】:必填,在西門子PLC中,Q點對應【線圈(0x)】,I點對應【離散量輸入(1x)】,M區或DB塊對應【保持寄存器(4x)】,AI區對應【輸入寄存器(3x)】。
【寄存器地址】:必填,地址填寫時不帶寄存區標志符,具體對應設置見下方圖片。
【數據類型】:必填,根據實際需要選擇即可。
【小數位數】:非必填,根據需求填寫。
【死區設置】:非必填,默認即可。根據需要填寫即可。更詳細的說明請參考后面“?”幫助。
【狀態列表】:非必填。可將數值直接與文本映射。如值為“10”,映射字段為“設備故障”,則當采集到變量的值為“10”時,會直接在設備監控和歷史報表中顯示“設備故障”。
【數值運算】:非必填。可將采集到的數據根據填寫的公式進行計算,更詳細的說明請參考后面的“?”幫助。
【讀寫方式】:可根據需求自行修改該寄存器的讀寫方式,默認為只讀。
PLC各寄存區變量在平臺添加填寫示例如下圖所示:
添加完成后,【變量管理】如下圖所示,此時可以點擊【數據測試】按鈕檢查變量值能否采集到,或者值是否正確。
打開博圖軟件,將PLC轉至在線,并且從監控表中監控當前PLC的數據,如下圖:
用戶登錄EMCP平臺,點擊”S7-1200“設備的圖片或設備名稱進入設備即可查看、修改相關數據。
我們有著豐富的系統集成解決經驗,能為用戶提供嵌入式硬件、服務器軟件平臺和手機APP軟件等的物聯網產品。涉及領域包括工業設備遠程在線管理、成套系統在線管理、環境檢測在線管理、農業智慧大棚監控系統和農產品溯源系統等遠程SCADA系統。
西門子1200PLC遠程智能工業網關,西門子1200PLC遠程智能工業網關
我們更在意的是每一個平臺用戶的體驗,感謝您的信任!
有更多技術資料請搜索藍蜂物聯網!還可以免費申請樣機哦!