Thingsboard modbus協議

一直沒有整理,今天測試整理一下,方便以後配置。

Modbus協議

modbus協議是一種應用層協議,可以通過OSI第四-7層傳輸層協議TCP/IP協議來傳輸,也可以通過OSI第1-2-7層串行鏈路上的RTU和ASCII來傳輸。

一般來說,通訊數據量少而且主要是文本的通訊則採用MODBUS ASCII規約,通訊數據數據量大而且是二進制數值時,多采用MODBUS RTU規約。

modbus-rtu 半雙工

modbus RTU/TCP/UDP

 

準備工作配置Modubus環境;

軟件準備

支持win10

vspdpro虛擬串口模擬

https://www.eltima.com/vspdpro-post-download.html

https://www.eltima.com/

 

modbus工具下載modbus slave、modbus poll、文檔等

https://www.modbustools.com/download.html

在rtu協議中,poll主站仿真軟件;slave是從站仿真軟件

 

環境配置準備

1、安裝工具vspdpro、modbus slave、modbus poll

2、如圖配置了vspdpro模擬串口 com1 > com2

如果成功,會在設備管理器上如圖顯示,如果不成功google,我是因爲vspdpro版本太低配置失敗;

左側配置成功的圖,右側是失敗的圖

 

3、modbus slave配置com2>com1 ;modbus poll配置com1>com2

4、檢查 ;tx增加,此時修改slave和poll的數據,兩邊會同步更新,表示沒有問題了;如此環境準備就緒;

Gateway modbus rtu配置

rtu的測試只能在本機,只有本機模擬了串口;

thingsboard gateway和modbus配置;

然後將poll關閉,com1留個gateway配置

協議配置方面和slave要一致

{
        "type":"MODBUS",
        "configuration":{
            "servers":[
                {
                    "transport":{
                        "type":"rtu",
                        "portName":"COM1",
                        "encoding":"rtu",
                        "timeout":5000,
                        "baudRate":9800,
                        "dataBits":8,
                        "stopBits":1,
                        "parity":"even"
                    },
                    "devices":[
                        {
                            "unitId":1,
                            "deviceName":"testDevice1",
                            "attributesPollPeriod":1000,
                            "timeseriesPollPeriod":1000,
                            "attributes":[

                            ],
                            "timeseries":[
                                {
                                    "tag":"test",
                                    "type":"long",
                                    "pollPeriod":1000,
                                    "functionCode":3,
                                    "address":0,
                                    "registerCount":1,
                                    "bit":0,
                                    "byteOrder":"BIG"
                                }
                            ]
                        }
                    ]
                }
            ],
        }

 其他的thingsboard配置,和gateway啓動就不詳細介紹了,可以見我的其他博客和官網

使用modbus slave模擬modbus TCP/UDP

在connection中選擇,比較簡單就不記錄了

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章