单相电源MODBUS通讯协议

单相电源MODBUS通讯协议

首页动作格斗代号伍肆零更新时间:2024-06-03

单相电源 MODBUS 通讯协议

本协议采用 Modbus 规约RTU 模式,可以方便地与多种形式的组态软件连接。

一、接口定义

接口定义:标准 RS232/485 口定义 (如图所示)

波特率:9600bps (默认)

注:SG 为公共地。

字节格式:一位起始位,八位数据位,一位停止位

设备地址:1- 127 可设 (更改设备地址详细操作见说明书) ,本协议以地址 100 为例。

二、帧格式

2. 1 读取设备寄存器内容 (功能码 0x03)

2. 1. 1 上位机发送的帧格式

顺序

代码

示例

说明

1

设备地址

0x64

0x64 即设备地址 100

2

0x03

0x03

读寄存器功能码

3

起始寄存器地址高字节

0x00

寄存器起始地址

4

起始寄存器地址低字节

0x00

5

寄存器个数高字节

0x00

寄存器个数

6

寄存器个数低字节

0x01

7

CRC16 校验低字节

0x8D

CRC 校验数据

8

CRC16 校验高字节

0xFF

2. 1.2 设备回送的帧格式

顺序

代码

说明

1

设备地址

设备地址 100 即 0x64

2

0x03

功能码

3

回送数据域字节数 (M)

4

第一个寄存器数据

… …

......

第 N 个寄存器数据

M 4

CRC16 校验低字节

CRC 校验数据

M 5

CRC16 校验高字节

2. 1.3 如果起始寄存器地址错误或者寄存器数量错误,仪表回送:

顺序

代码

示例

说明

1

设备地址

0x64

0x64 即设备地址 100

2

0x83

0x83

功能码 最高位置 1

3

0x02

0x02

错误代码

4

CRC16 校验低字节

0xD0

CRC 校验数据

5

CRC16 校验高字节

0xEE

2.2 设置设备寄存器内容 (功能码 0x06)

2. 1. 1 将数据写入单个设备寄存器中,上位机发送的帧格式:

顺序

代码

示例

说明

1

设备地址

0x64

0x64 即设备地址 100

2

0x06

0x06

写寄存器功能码

3

寄存器地址高字节

0x00

寄存器起始地址

4

寄存器地址低字节

0x0D

5

写入数据高字节

0x04

数据

6

写入数据低字节

0x4C

7

CRC16 校验低字节

0x12

CRC 校验数据

8

CRC16 校验高字节

0xC9

2. 1.2 设备回送 (写入成功):

如果写入正确,则设备回送相同的数据即原命令返回,设备接受执行.

2. 1.3 设备回送 (地址错误):

顺序

代码

示例

说明

1

设备地址

0x64

0x64 即设备地址 100

2

0x86

0x86

功能码 最高位置 1

3

0x02

0x02

错误代码

4

CRC16 校验低字节

0xD3

CRC 校验数据

5

CRC16 校验高字节

0xBE

2. 1.4 设备回送 (写入的数据超出设备执行范围):

顺序

代码

示例

说明

1

设备地址

0x64

0x64 即设备地址 100

2

0x86

0x86

功能码 最高位置 1

3

0x03

0x03

错误代码

4

CRC16 校验低字节

0x12

CRC 校验数据

5

CRC16 校验高字节

0x7E

三、 设备数据寄存器地址

3. 1 数据寄存器地址

序 号

参数名称

数据

类型

单位

访 问 规则

寄 存 器 地址

说明

1

电源工作状态

UINT

R

0x0000

电源工作状态查询

2

输出频率 Hz

UINT

0. 1Hz

R

0x0001

电源输出参数查询

3

输出电压

UINT

0. 1V

R

0x0002

4

输出电流

UINT

R

0x0003

5

输出有功功率

UINT

R

0x0004

6

输出功率因数

UINT

R

0x0005

7

高低档状态

UINT

R

0x0006

8

设置频率

UINT

0. 1Hz

R/W

0x0007

电源设置参数

9

设置电压

UINT

0. 1V

R/W

0x0008

10

控制命令

UINT

W

0x0009

电源控制命令

说明: 所有参数均为无符号双字节组成的字,数据放置为:高位高字节,低位低字节

访问规则中R:表示只可读取、W:表示只可写入、R/W:表示可读可写。

3.2 参数说明

3.2. 1 电源工作状态数据说明:

状态数据

状态说明

状态数据

状态说明

0x0000

待机态

0x0004

过热报警

0x0001

启动态

0x0005

过载报警

0x0002

设置态

其他保留

0x0003

短路报警

3.2.2 输出频率

读取的参数值表示当前设备输出的频率值,单位为 0. 1Hz

例如:读取的数据为 0x0258 即十进制 600 ,表示当前输出频率为 60.0Hz

3.2.3 输出电压

读取的参数值表示当前设备输出的电压值,单位为 0. 1V

例如:读取的数据为 0x044C 即十进制 1100 ,表示当前输出电压为 110.0V 3.2.4 输出电流

读取的参数值表示当前设备输出的电流值。单位为 0.01A,

例如:读取的数据为 0x00D0 即十进制 208 ,表示当前输出电流为 2.08A; 3.2.5 输出有功功率

读取的参数值表示当前设备输出的有功功率值,单位为 1W

例如:读取的数据为 0x00E4 即十进制 228 ,表示当前输出有功功率为 228W 3.2.6 高低档状态

当前设备输出档位状态:0x00 为低档 0x01 为高档

3.2.7 设置频率

设置频率单位为 0. 1Hz ,设置频率参数为可读可写类型,即可以更改设置频率 也可以读出当前设备的设置频率

例如:欲设置频率 62Hz ,在寄存器地址 0x0C 中写入 0x026c 即可。

3.2.8 设置电压

设置电压单位为 0. 1V ,设置电压参数为可读可写类型,即可以更改设置电压也 可以读出当前设备的设置电压

例如:欲设置电压 120V ,在寄存器地址 0x0D 中写入 0x04B0 即可。

3.2.9 控制命令

控制命令数据

控制命令说明

0x0000

控制设备停止输出

0x0001

控制设备启动输出

0x0002

保留

0x0003

设备切换至低档 (此条无效)

0x0004

设备切换至高档 (此条无效)

其他

保留

说明:设备在任何状况下都可执行 0x0000 命令即设备停止输出命令

设备只有在待机状态下才可以执行 0x0001 命令即设备启动输出命令

注:设备启动状态时均不可跨档设置电压

举例说明: 电源通讯地址设置为 1 ,波特率固定 9600 ,指令如下:

1 、设置 110V ,01 06 00 08 04 4C 0B 3D

2 、设置 220V ,01 06 00 08 08 98 0E 62

3 、启动,01 06 00 09 00 01 98 08

4 、停止,01 06 00 09 00 00 59 C8

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved