目錄
1 案例說明
2 VFBOX網(wǎng)關工作原理
3 準備工作
4 設置網(wǎng)關采集MODBUS從站數(shù)據(jù)
5 網(wǎng)關寫數(shù)據(jù)到MYSQL數(shù)據(jù)庫
6 安裝MYSQL數(shù)據(jù)庫
7 案例總結(jié)
1 案例說明
- 設置網(wǎng)關采集Modbus設備數(shù)據(jù)
- 把采集的數(shù)據(jù)寫到MySQL數(shù)據(jù)庫。
2 VFBOX網(wǎng)關工作原理
VFBOX網(wǎng)關是協(xié)議轉(zhuǎn)換網(wǎng)關,是把一種協(xié)議轉(zhuǎn)換成另外一種協(xié)議。網(wǎng)關可以采集西門子,歐姆龍,三菱,AB PLC,DLT645,DLT698電表,modbus rtu tcp,環(huán)保的HJ212協(xié)議,opc ua和opc da,電力的IEC103 IEC104, IEC61850等,以及EthernetIP,Profinet IO,CCLink,EtherCAT現(xiàn)場總線協(xié)議,bacnet,MQTT,mysql,sqlserver數(shù)據(jù)庫。不同型號的網(wǎng)關支持不同的協(xié)議,具體支持的協(xié)議參考網(wǎng)關側(cè)面標簽上的型號。依托500多種型號的網(wǎng)關產(chǎn)品,可以實現(xiàn)多種不同協(xié)議之間的互聯(lián)互通。
網(wǎng)關連接在不同協(xié)議的設備之間,就像一個“翻譯”,把一種設備支持的協(xié)議,轉(zhuǎn)換成另一種設備支持的協(xié)議,從而實現(xiàn)兩個不同協(xié)議的設備之間的數(shù)據(jù)交換。工作架構如下:
3 準備工作
- VFBOX網(wǎng)關。支持采集modbus設備數(shù)據(jù),保存到MySQL數(shù)據(jù)庫。
- 電腦。IP設置成192.168.1.198,和網(wǎng)關在同一個網(wǎng)段。
- 網(wǎng)線、12V電源。
- Modbus從站設備。本文用一個溫濕度傳感器進行測試。
4 設置網(wǎng)關采集modbus從站數(shù)據(jù)
- 硬件連接。首先確認設備的接口是RS232還是RS485接口。并按如下的方式進行連接。
接口類型 設備 網(wǎng)關
RS232接口 RX COM1-TX
TX COM1-RX
GND COM1-GND
RS485接口 A COM1-A
B COM1-B - 在電腦上打開VFBOX Studio配置軟件。新建工程,選擇對應的設備類型。設備類型查看設備背面的標簽。可選的型號有:VB301-1100,VB301-1200,VB301-1400,VB302-2400,VB303-2400.

- 點擊 新建設備,選擇modbus RTU驅(qū)動。

- 輸入設備名稱,自己定義設備名稱。

- 輸入和設備相同的串口參數(shù)。比如,設備的波特率是9600,則下面的對話框也選擇9600.

- 增加要采集的數(shù)據(jù)。輸入數(shù)據(jù)的數(shù)據(jù)類型和寄存器地址。

- 填寫說明。在添加“地址”的時候需要對modbus的通信指令有一些了解,這里面有一些默認的規(guī)則??上炔榭丛O備的說明書,找到要讀取的地址。然后通過對比下表進行設置。
數(shù)據(jù)區(qū) 功能說明
0X Digital Coils 數(shù)據(jù)類型:Boolean
讀寫:可讀寫
寄存器地址:00001-09999(10進制), 協(xié)議地址:0000H-270FH(16進制)
對應的功能碼:01H 05H 0FH
1X digital Inputs 數(shù)據(jù)類型:Boolean
讀寫:只讀
寄存器地址:10001-19999(10進制), 協(xié)議地址:0000H-270FH(16進制)
對應的功能碼:02H
3X Analog Inputs
數(shù)據(jù)類型:
1 Register: short word
2 Register: Long Dword float
4 Register: LLong Qword Double
讀寫:只讀
寄存器地址:30001-39999(10進制), 協(xié)議地址:0000H-270FH(16進制)
對應的功能碼:04H
4X Holding Registers 數(shù)據(jù)類型:
1 Register: short word
2 Register: Long Dword float
4 Register: LLong Qword Double
讀寫:可讀寫
地址范圍:40001-49999(10進制),0000H-270FH(16進制)
對應的功能碼:03H 06H 10H
其他說明: - 地址可填寫5位或者6位的地址長度。
- 如果設備的地址是從0開始,則設置網(wǎng)關時地址加1。
- 地址是10進制。
舉例1:假設要讀取的地址是40015,數(shù)據(jù)類型是float,地址從0開始,則查看上表,40015對應的數(shù)據(jù)區(qū)是“4X Holding Registers”,且數(shù)據(jù)類型是float,則數(shù)據(jù)區(qū)選擇“4X Holding Registers(2 Registers)”,設備地址從0開始,則在網(wǎng)關里配置為40016,配置如下:
舉例2:假設讀取數(shù)據(jù)的功能碼是03,地址是0x39,地址從1開始,數(shù)據(jù)類型是double。查看上表可知,03功能碼對應的數(shù)據(jù)區(qū)是“4X Holding Registers”,數(shù)據(jù)類型是double,則數(shù)據(jù)區(qū)選擇“4X Holding Registers(4 Registers)”,地址是0x39,轉(zhuǎn)換成10進制是57,則設置如下:
- 設置完成后,點擊菜單“下載”,把工程下載到網(wǎng)關里。
- 點擊菜單“查看數(shù)據(jù)”,查看網(wǎng)關采集到的數(shù)據(jù)。

- 如果顯示的數(shù)據(jù)和實際不匹配,可能是字節(jié)順序要調(diào)整。在下面的窗口中可以修改波特率,掃描間隔,通訊超時,字節(jié)順序等參數(shù)。

- 數(shù)據(jù)類型
網(wǎng)關支持多種數(shù)據(jù)類型,用戶在添加的時候可以根據(jù)采集到數(shù)據(jù)選擇對應的數(shù)據(jù)類型。不同的設備可能有不同的數(shù)據(jù)類型名稱,可對應選擇。
Boolean 位,布爾變量。變量存儲為 8 位(1 個字節(jié))的數(shù)值形式,但只能是True 或是 False。
Char 有符號數(shù),有負數(shù)。占用一個字節(jié),8位。
Byte 無符號數(shù),占用一個字節(jié),8位。
Short 有符號短整型。有負數(shù)。長度2個字節(jié),16位。
Word 無符號的短整型,長度2個字節(jié),16位。
Long 有符號長整型,有負數(shù)。長度4個字節(jié),取值范圍為:-2^31 ~ (2^31 -1)。
DWord 無符號的長整型,且占4個字節(jié),32位。
Float 單精度浮點型數(shù)據(jù),長度 4 個字節(jié),包括一個符號位、一個 8 位 二進制指數(shù)和一個 23 位尾數(shù)。浮點型轉(zhuǎn)換成10進制數(shù)據(jù)的時候請注意字節(jié)順序問題。在不同的設備中字節(jié)順序不同,有4種不同的字節(jié)順序:1234、4321、3412、2143。網(wǎng)關在轉(zhuǎn)發(fā)浮點型數(shù)據(jù)的時候,不對字節(jié)順序進行調(diào)整,所以在轉(zhuǎn)換的時候請參考被采集設備的浮點數(shù)順序。
LLong LLong是長度為8個字節(jié)的有符號整數(shù)。有負數(shù)。
Qword Qword是長度為8個字節(jié)的無符號整數(shù)。
Double 雙精度浮點(double)型,占8 個字節(jié)(64位)內(nèi)存空間。
5 網(wǎng)關寫數(shù)據(jù)到mysql數(shù)據(jù)庫
- 在電腦上安裝mysql數(shù)據(jù)庫。完成安裝后,關閉電腦上的防火墻和殺毒軟件。
- 登錄數(shù)據(jù)庫后,選擇Schemas,右鍵選擇Create Schemas,輸入名稱

- 打開VS網(wǎng)關配置軟件,在導航欄選擇MySQL,啟用設置成Yes,輸入MySQL的IP地址、端口、用戶名、密碼以及表名。表名不能為空。

- 到Tags中,添加要寫入數(shù)據(jù)庫的標簽,然后下載到網(wǎng)關

- 下載完后打開MySQL,右鍵vbdata,選擇Refresh All,然后再右鍵vbhistory,選擇Select Rows,就可以看到數(shù)據(jù)

6 安裝mysql數(shù)據(jù)庫
- 在服務器或者電腦上安裝mysql數(shù)據(jù)庫。到MySQL官網(wǎng)下載安裝文件,以下載MySQL Community (GPL) Downloads為例說明。下載下圖中箭頭所指的版本。https://dev.mysql.com/downloads/

- 安裝時使用完整安裝。

- Config Type如下:

- 密碼驗證選擇和5.x的兼容。

- 運行MYSQL Workbench軟件。點擊Schemsa(1),在左邊的空白處點擊右鍵,然后點擊“Create Schema”(2),建立一個數(shù)據(jù)表,名稱為:vbdata(3)。

- 如果是V5.X以上的版本,安裝完成后執(zhí)行以下信息。root 123456改成數(shù)據(jù)庫的用戶名和密碼。
use mysql;
CREATE USER 'root'@'%' IDENTIFIED BY '123456';
grant all privileges on . to 'root'@'%';
FLUSH PRIVILEGES;
選中vbdata數(shù)據(jù)庫,按如下順序執(zhí)行:
- 關閉電腦上的防火墻和殺毒軟件。
7 案例總結(jié)
使用協(xié)議轉(zhuǎn)換網(wǎng)關可以很方便的實現(xiàn)不同協(xié)議的設備之間的數(shù)據(jù)轉(zhuǎn)換。大量節(jié)省了項目實施過程的時間成本,人力成本。VFBOX網(wǎng)關產(chǎn)品都是工業(yè)級品質(zhì),符合工業(yè)應用的場景。只需要簡單的參數(shù)配置,可以很快完成設備和系統(tǒng)之間的連接。方案優(yōu)點:
- 不需要修改設備里的程序。
- 不影響設備原有的工作方式和功能。
- 只需要簡單的配置就可以實現(xiàn)功能需求。
- 設備長期穩(wěn)定工作。
- 網(wǎng)關運行架構如下

審核編輯 黃宇
-
MODBUS
+關注
關注
28文章
2457瀏覽量
83219 -
網(wǎng)關
+關注
關注
9文章
6782瀏覽量
56269 -
數(shù)據(jù)庫
+關注
關注
7文章
4020瀏覽量
68353 -
MySQL
+關注
關注
1文章
906瀏覽量
29534
發(fā)布評論請先 登錄
恒訊科技解析:如何安裝MySQL并創(chuàng)建數(shù)據(jù)庫
SNMP設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
PLC數(shù)據(jù)保存到MySQL數(shù)據(jù)庫解決方案
opc ua設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
bacnet mstp設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
mysql數(shù)據(jù)恢復—mysql數(shù)據(jù)庫表被truncate的數(shù)據(jù)恢復案例
Ethercat設備數(shù)據(jù)保存到MySQL數(shù)據(jù)庫項目案例
電力IEC104設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
EthernetIP IO從站設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
AB plc設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
網(wǎng)口環(huán)保212設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
串口環(huán)保212設備數(shù)據(jù) 保存到MySQL數(shù)據(jù)庫項目案例
modbus設備數(shù)據(jù) 保存到mysql數(shù)據(jù)庫項目案例
評論