天天看点

单相智能电表(Modbus协议)

在我们日常生活中绝大数用到的电表都是单相的,三相电表主要用于工业用途。今天我们将介绍单相智能电表(Modbus协议)的链接案例

一、使用产品

海创Box智能采集网关

串口服务器 (上海卓岚 4口 ZLAN5443A)

modbus智能电表 (XT 微型RS485单相导轨电表220V DDS5188)

单相智能电表(Modbus协议)

二、产品连接方式

单相智能电表(Modbus协议)

三、产品配置

海创Box智能采集网关

串口服务器(上海卓岚 4口 ZLAN5443A) 请参考设备厂家提供的说明书以及测试工具

极简版测试用使用手册

modbus智能电表(XT 微型RS485单相导轨电表220V DDS5188) 请参考设备厂家提供的说明书

1P485单相多功能(MODBUS-RTU多功能)

四、设备寄存器地址

单相智能电表(Modbus协议)

详情请见设备说明书1P485单相多功能(MODBUS-RTU多功能).docx

五、项目部署调试

在桌面打开海创Box智能采集网关可视化开发平台进入可视化编辑器。本次教程需要用到如下节点,在左侧节点栏中拖拽出使用

inject周期性触发输入时间戳或者相应的字符

单相智能电表(Modbus协议)

Modbus用于读取Modbus通信协议设备的数据

单相智能电表(Modbus协议)

debug用于调试节点输出

单相智能电表(Modbus协议)

配置相应节点后配置界面如下:

单相智能电表(Modbus协议)

节点配置:

inject设置成周期性触发,主要当触发流程使用,具体配置如下图

单相智能电表(Modbus协议)

Modbus需要设置串口服务器对应设备设置的相应端口以及ip,协议选择Modbus-TCP,通讯模式选择Telnet(透传模式),该设备值为寄存器,使用功能码FC4读取数据,配置相应的寄存器地址和标签以及数据处理规则即可,配置详情如下图

单相智能电表(Modbus协议)
单相智能电表(Modbus协议)

debug在右侧调试窗口输出调试结果,无需配置

部署调试:

按照以上教程配置好流程后,点击部署,部署成功后程序开始运行,就会在调试窗口输出相应的结果,调试结果如下

单相智能电表(Modbus协议)

五、示例

以上教程可以通过拷贝下面代码实现快速复用,在新建的流程中点击界面右侧菜单栏-导入-剪贴板,在文本框中粘贴下面代码后点击确定,即可快速复用

[

{

“id”: “f13c5ed7.d04f1”,

“type”: “debug”,

“z”: “7ab58a83.afdcb4”,

“name”: “”,

“active”: true,

“tosidebar”: true,

“console”: false,

“tostatus”: false,

“complete”: “false”,

“x”: 720,

“y”: 340,

“wires”: []

},

{

“id”: “518a69cb.f1d9e8”,

“type”: “iot-modbus”,

“z”: “7ab58a83.afdcb4”,

“name”: “”,

“server”: “688cd686.999e98”,

“fc”: “InputRegister”,

“columns”: [

{

“Key”: “dy”,

“Label”: “电压”,

“Address”: “0”,

“Quantity”: “2”,

“Arithmetic”: “%s.toFixed(2)”,

“ValueType”: “FloatBE”

},

{

“Key”: “dl”,

“Label”: “电流”,

“Address”: “8”,

“Quantity”: “2”,

“Arithmetic”: “%s.toFixed(2)”,

“ValueType”: “FloatBE”

},

{

“Key”: “gl”,

“Label”: “有功功率”,

“Address”: “18”,

“Quantity”: “2”,

“Arithmetic”: “%s.toFixed(2)”,

“ValueType”: “FloatBE”

},

{

“Key”: “ys”,

“Label”: “功率因素”,

“Address”: “42”,

“Quantity”: “2”,

“Arithmetic”: “%s.toFixed(2)”,

“ValueType”: “FloatBE”

},

{

“Key”: “pl”,

“Label”: “频率”,

“Address”: “54”,

“Quantity”: “2”,

“Arithmetic”: “%s.toFixed(2)”,

“ValueType”: “FloatBE”

},

{

“Key”: “zdl”,

“Label”: “总有功电量”,

“Address”: “256”,

“Quantity”: “2”,

“Arithmetic”: “%s.toFixed(2)”,

“ValueType”: “FloatBE”

}

],

“x”: 540,

“y”: 340,

“wires”: [

[

“f13c5ed7.d04f1”

]

]

},

{

“id”: “93e73185.c6074”,

“type”: “inject”,

“z”: “7ab58a83.afdcb4”,

“name”: “”,

“topic”: “”,

“payload”: “”,

“payloadType”: “date”,

“repeat”: “30”,

“crontab”: “”,

“once”: false,

“onceDelay”: 0.1,

“x”: 390,

“y”: 340,

“wires”: [

[

“518a69cb.f1d9e8”

]

]

},

{

“id”: “688cd686.999e98”,

“type”: “iot-modbus-client”,

“z”: “”,

“name”: “”,

“clienttype”: “Modbus-TCP”,

“host”: “192.168.7.191”,

“post”: “4196”,

“tcptype”: “Telnet”,

“serialport”: “COM1”,

“serialtype”: “RTU-Buffered”,

“baudrate”: “9600”,

“databits”: “8”,

“stopbits”: “1”,

“parity”: “None”,

“unitid”: “3”,

“timeout”: “2000”,

“connectiondelay”: “100”

}

]

继续阅读