一、軟硬件描述
二、需要使用的軟件。
- 西門子Portal v15.1 (西門子PLC編程軟件)
- 鋇錸BL102調(diào)試軟件及說明書。
說明書下載鏈接: http://rtu-m2m.com/Download/Manual/中文/BL102_中文說明書_V1.0.zip
調(diào)試軟件下載鏈接: http://rtu-m2m.com/Download/Software/中文/BL10x_中文配置軟件.zip
- Mqtt.fx MQTT服務(wù)器調(diào)試工具
- 騰訊云服務(wù)器(各種云服務(wù)器都可以,不限騰訊云)
三、網(wǎng)絡(luò)構(gòu)架及需實現(xiàn)功能描述

1.BL102網(wǎng)關(guān)將S7-1200 PLC中的數(shù)據(jù)上傳入云服務(wù)器中的mosquitto MQTT服務(wù)器,云上的后臺軟件可以截取相關(guān)數(shù)據(jù)。然后發(fā)送給前端顯示。
后臺軟件如何截取,見B站視頻"Django物聯(lián)網(wǎng)后臺開發(fā)"`https://www.bilibili.com/video/BV1qL4y1b7nU?spm_id_from=333.337.search-card.all.click `
2.前端接受到信息后,將信息傳送給后臺軟件,后臺軟件通過mosquitto服務(wù)器將信息發(fā)送到BL102上,BL102網(wǎng)關(guān)修改PLC中是數(shù)據(jù)。
四、在騰訊云上安裝mosquitto MQTT服務(wù)器以及MQTT mqtt.fx軟件的使用。
具體操作詳見我的博客:
https://www.cnblogs.com/zhangming82/p/16122210.html
五、BL102連接西門子S7-1200 PLC。
1.將24V直流電源接入BL102網(wǎng)關(guān)以及PLC的供電端子。
2.將網(wǎng)線一端插入BL102 WAN網(wǎng)口,一端插入PLC網(wǎng)口。
3.取另外一根網(wǎng)線,一端插入BL102 LAN網(wǎng)口,一端插入電腦網(wǎng)口。并且將電腦IP設(shè)置成192.168.3.**(除192.168.3.1以外的IP)
4.打開BL102調(diào)試軟件,點擊軟件上的"設(shè)備搜索"。開始搜索到設(shè)備。搜索到設(shè)備后進入主界面。
5.鼠標雙擊界面上的“WAN”,在彈出界面中,將WAN口改成與PLC同一個域的IP(例如目前我設(shè)置的PLCIP為192.168.1.250,而BL102 WAN口IP改為了192.168.1.254)。子網(wǎng)掩碼和網(wǎng)關(guān)同樣填寫,DNS不做要求。填寫后,點擊“寫入配置”將信息寫入BL102網(wǎng)關(guān)。
6.拔下BL102 LAN口網(wǎng)線,將網(wǎng)線插到路由器上,使電腦和路由器連接。將電腦和路由器IP改為同一個域。(比如我的電腦IP改為192.168.1.22//路由器IP改為192.168.1.20)。
7.再取第三根網(wǎng)線,一段插在路由器上,一段插在PLC的網(wǎng)口上。
8.打開西門子PORTAL V15.1軟件,在硬件組態(tài)中設(shè)置好PLC的屬性。特別要注意的是因為BL102可以通過S7通訊協(xié)議直接讀取PLC中的數(shù)據(jù),因此必須在PORTAL軟件中“連接機制”里的“允許來自遠程對象的PUT/GET通訊訪問”打開。否則BL102將無法與PLC進行通訊。然后將改好的配置程序下載到PLC中。

9.打開BL102調(diào)試軟件,在界面“WAN”點擊鼠標右鍵后,選擇添加。在彈出的設(shè)備信息上,填寫西門子PLC的IP端口號等。填寫后點擊確定。(端口號為102)

10.點擊確定后,在界面右側(cè)灰色區(qū)域點擊鼠標右鍵,選擇添加。加入需要監(jiān)控的PLC數(shù)據(jù)。然后將修改好的配置下載入BL102網(wǎng)關(guān)中。(注意,可以對PLC的I/Q/M/DB等進行監(jiān)控,但是如果要監(jiān)控DB塊的內(nèi)容。必須在PORTAL軟件中選擇DB塊的屬性,取消“優(yōu)化塊的訪問”)。


11.進入BL102調(diào)試界面,當(dāng)界面上“WAN”紅燈亮起,表示已經(jīng)與PLC連接。

六、BL102網(wǎng)關(guān)連接mosquitto MQTT服務(wù)器。
1.打開BL102網(wǎng)關(guān)調(diào)試界面,雙擊云平臺-->MQTT Client One,進入界面。在界面中設(shè)置好IP,端,用戶名,密碼口等信息,并且數(shù)據(jù)模板選擇“KingPigeon”,以及填寫好訂閱主題和發(fā)布主題,以及上傳周期。(之所以選擇KingPiageon是因為這個模板比較簡單,說明書寫的內(nèi)容也比較多一點)
2.在右側(cè)灰色界面中,點擊鼠標右鍵,選擇添加。加入需要通訊的PLC變量點(PLC變量點如何設(shè)置見上面),選擇完畢后,將數(shù)據(jù)下載到BL102中。

特此強調(diào):訂閱主題,必須在主題內(nèi)容的后面,增加"/+"。

3.進入BL102調(diào)試界面,當(dāng)界面上“MQTT ClientOne上線狀態(tài)”紅燈亮起,表示已經(jīng)與MQTT服務(wù)器連接正常。

4.將修改的配置下載如BL102中后,可以通過MQTT.fx軟件對BL102進行MQTT發(fā)布,訂閱信息的驗證。
七、BL102網(wǎng)關(guān)訂閱、發(fā)布信息格式---KingPigeon模板
1.BL102網(wǎng)關(guān)訂閱格式
{"sensorDatas":[{
//布爾量"flag":"Y0",//讀寫標識"switcher":1//數(shù)據(jù)類型及值},{
//數(shù)值型"flag":"VW0",//讀寫標識"value":8//數(shù)據(jù)類型及值}],}
2.BL102網(wǎng)關(guān)發(fā)布格式
注意1:BL102網(wǎng)關(guān)發(fā)布 必須增加/傳感器ID.如果是自己建立的MQTT服務(wù)器,傳感器ID可以寫隨意的值(例如發(fā)布主題為"topic",傳感器ID為100. 發(fā)布主題必須寫成topic/100)
注意2:“value”以及"switch"值必須加引號。
{"sensorDatas":[{"sensorsId":100,//平臺傳感器ID(必須"value":74.3,//數(shù)據(jù)類型及值"flag":"VW0"//讀寫標識}],"down":"down"//平臺下行報文標識}
發(fā)布評論請先 登錄
工業(yè)智能網(wǎng)關(guān)可以采集西門子PLC嗎
EtherCAT轉(zhuǎn)ProfiNet西門子1200PLC與伺服電機通訊案例全解

Profinet轉(zhuǎn)EtherCAT深度解讀網(wǎng)關(guān)模塊如何協(xié)議轉(zhuǎn)換賦能西門子PLC與伺服驅(qū)動高效協(xié)作案例?

工業(yè)智能網(wǎng)關(guān)采集西門子PLC的智能工廠解決方案

借助 Profibus DP 轉(zhuǎn) ProfiNet 網(wǎng)關(guān),實現(xiàn)稱重儀表與西門子 1200 PLC 通訊的應(yīng)用范例

Profinet 轉(zhuǎn) EtherNet/IP 網(wǎng)關(guān)怎樣化解西門子 S7 - 1500 PLC 與 AB PLC 之間的通訊難題

基于 EtherCAT 轉(zhuǎn) ProfiNet 網(wǎng)關(guān)達成西門子 1200 PLC 與伺服電機通訊連接的應(yīng)用實例

Modbus轉(zhuǎn)Profinet--TS-180 網(wǎng)關(guān)連接西門子 PLC 和工業(yè)稱重儀表

通過鋇錸PLC轉(zhuǎn)MQTT網(wǎng)關(guān)實現(xiàn)PLC數(shù)據(jù)上傳至阿里云平臺

鋇錸PLC網(wǎng)關(guān)快速實現(xiàn)三菱、西門子PLC轉(zhuǎn)MQTT協(xié)議

宏集物聯(lián)網(wǎng)工控屏通過 S7 ETH 協(xié)議采集西門子 1200 PLC 數(shù)據(jù)

評論