AMC系列通讯协议.docx

上传人:b****1 文档编号:15152178 上传时间:2023-07-01 格式:DOCX 页数:10 大小:19.57KB
下载 相关 举报
AMC系列通讯协议.docx_第1页
第1页 / 共10页
AMC系列通讯协议.docx_第2页
第2页 / 共10页
AMC系列通讯协议.docx_第3页
第3页 / 共10页
AMC系列通讯协议.docx_第4页
第4页 / 共10页
AMC系列通讯协议.docx_第5页
第5页 / 共10页
AMC系列通讯协议.docx_第6页
第6页 / 共10页
AMC系列通讯协议.docx_第7页
第7页 / 共10页
AMC系列通讯协议.docx_第8页
第8页 / 共10页
AMC系列通讯协议.docx_第9页
第9页 / 共10页
AMC系列通讯协议.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

AMC系列通讯协议.docx

《AMC系列通讯协议.docx》由会员分享,可在线阅读,更多相关《AMC系列通讯协议.docx(10页珍藏版)》请在冰点文库上搜索。

AMC系列通讯协议.docx

AMC系列通讯协议

AMC16-E3/E4通讯协议

本协议规定了AMC16-E3/E4与数据终端设备进行数据交换的物理连接和通讯协议,其协议方式类同Modbus_RTU通信规约。

1协议简述

AMC16-E3/E4所使用的通讯协议详细定义了地址码、功能码、校验码的数据序列定义,这些都是特定数据交换的必要内容。

该协议在一根通讯线上使用主从应答式连接(半双工),这意味着在一根单独的通讯线上信号沿着相反的两个方向传输。

首先,主计算机的信号寻址到一台唯一的终端设备(从机),然后,终端设备发出的应答信号以相反的方向传输给主机。

本协议只允许在主机(PC,PLC等)和终端设备之间通讯,而不允许独立的终端设备之间的数据交换,这样各终端设备不会在它们初始化时占据通讯线路,而仅限于响应到达本机的查询信号。

2传输方式

信息传输为异步方式,并以字节为单位,在主机和从机之间传递的通讯信息是11位字格式,包含1个起始位、8个数据位(最小的有效位先发送)、奇偶效验位(无校验)、2个停止位。

2.1数据帧格式

地址码

功能码

数据区

CRC效验码

1字节

1字节

n字节

2字节

2.2地址域

地址域在帧的开始部分,由一个字节(8位二进制码)组成,十进制为0~255,在我们的系统中只使用1~247,其它地址保留。

这些位标明了用户指定的终端设备的地址,该设备将接收来自与之相连的主机数据。

每个终端设备的地址必须是唯一的,仅仅被寻址到的终端会响应包含了该地址的查询。

当终端发送回一个响应,响应中的从机地址数据便告诉了主机哪台终端正与之进行通信。

2.3功能域

功能域代码告诉了被寻址到的终端执行何种功能。

下表列出了该系列装置用到的功能码,以及它们的意义和功能。

:

代码

意义

行为

03

读数据寄存器

获得一个或多个寄存器的当前二进制值

16

预置多寄存器

设定二进制值到一系列多寄存器中

2.4数据域

数据域包含了终端执行特定功能所需要的数据或者终端响应查询时采集到的数据。

这些数据的内容可能是数值、参考地址或者设置值。

例如:

功能域码告诉终端读取一个寄存器,数据域则需要指明从哪个寄存器开始及读取多少个数据,内嵌的地址和数据依照类型和从机之间的不同内容而有所不同。

2.5错误校验域

该域允许主机和终端检查传输过程中的错误。

有时,由于电噪声和其它干扰,一组数据在从一个设备传输到另一个设备时在线路上可能会发生一些改变,出错校验能够保证主机或者终端不去响应那些传输过程中发生了改变的数据,这就提高了系统的安全性和效率,错误校验使用了16位循环冗余的方法(CRC16)。

2.6错误检测的方法

错误校验域占用两个字节,包含了一个16位的二进制值。

CRC值由传输设备计算出来,然后附加到数据帧上,接收设备在接收数据时重新计算CRC值,然后与接收到的CRC域中的值进行比较,如果这两个值不相等,就发生了错误。

CRC运算时,首先将一个16位的寄存器预置为全1,然后连续把数据帧中的每个字节中的8位与该寄存器的当前值进行运算,仅仅每个字节的8个数据位参与生成CRC,起始位和终止位以及可能使用的奇偶位都不影响CRC。

在生成CRC时,每个字节的8位与寄存器中的内容进行异或,然后将结果向低位移位,高位则用“0”补充,最低位(LSB)移出并检测,如果是1,该寄存器就与一个预设的固定值(0A001H)进行一次异或运算,如果最低位为0,不作任何处理。

上述处理重复进行,直到执行完了8次移位操作,当最后一位(第8位)移完以后,下一个8位字节与寄存器的当前值进行异或运算,同样进行上述的另一个8次移位异或操作,当数据帧中的所有字节都作了处理,生成的最终值就是CRC值。

生成一个CRC的流程为:

1预置一个16位寄存器为0FFFFH(全1),称之为CRC寄存器。

.

把数据帧中的第一个字节的8位与CRC寄存器中的低字节进行异或运算,结果存回CRC寄存器。

将CRC寄存器向右移一位,最高位填以0,最低位移出并检测。

如果最低位为0:

重复第三步(下一次移位);如果最低位为1:

将CRC寄存器与一个预设的固定值(0A001H)进行异或运算。

重复第三步和第四步直到8次移位。

这样处理完了一个完整的八位。

2重复第2步到第5步来处理下一个八位,直到所有的字节处理结束。

最终CRC寄存器的值就是CRC的值。

此外还有一种利用预设的表格计算CRC的方法,它的主要特点是计算速度快,但是表格需要较大的存储空间,该方法此处不再赘述,请参阅相关资料。

3功能码简介

3.1功能码03H:

读寄存器

此功能允许用户获得设备采集与记录的数据及系统参数。

主机一次请求的数据个数没有限制,但不能超出定义的地址范围。

下面的例子是从01号从机读3个采集到的基本数据(数据帧中每个地址占用2个字节)UA、UB、UC,其中UA的地址为0011H,UB的地址为0012H,UC的地址为0013H。

主机发送

发送信息

 

从机返回

返回信息

地址码

01H

 

地址码

01H

功能码

03H

 

功能码

03H

起始地址

高字节

00H

 

字节数

06H

低字节

11H

 

寄存器数据

高字节

00H 

寄存器数量

高字节

00H

 

低字节

00H 

低字节

03H

 

寄存器数据

高字节

00H 

CRC效验码

低字节

55H

 

低字节

00H 

高字节

CEH

 

寄存器数据

高字节

00H 

 

低字节

00H 

 

CRC效验码

低字节

21H 

 

高字节

75H 

3.2功能码10H:

写寄存器

功能码10H允许用户改变多个寄存器的内容,该仪表中系统参数、开关量输出状态等可用此功能号写入。

主机一次最多可以写入16个(32字节)数据。

下面的例子是预置地址为01的仪表同时输出开关量DO。

开关量输出状态指示寄存器地址为006FH,第12位对应DO。

主机发送

发送信息

从机返回

返回信息

地址码

01H

地址码

01H

功能码

10H

功能码

10H

起始地址

高字节

00H

起始地址

高字节

00H

低字节

6FH

低字节

6FH

寄存器数量

高字节

00H

寄存器数量

高字节

00H 

低字节

01H

低字节

01H 

字节数

02H

CRC效验码

低字节

31H 

006FH待写入数据

高字节

10H 

高字节

D4H 

低字节

00H 

CRC效验码

低字节

A2H 

高字节

CFH 

地址

参数

数值

属性

00H

密码

0~9999

R/W

01H

地址

1~247

R/W

02H

波特率

3840-38400

1920-19200

9600-9600

4800-4800

R/W

03H

5A输入CT变比/

10mA输入为一次电流

1~9999/

1-200A

R/W

04H

接线方式

3-三相三线

4-三相四线

R/W

05H

Pt变比

1~9999

R/W

06H

额定电压

100V、220V

R/W

07H

额定电流

1A、5A、100A

R/W

07H~0CH备用

1~9999

0DH

三相回路

总功率因数

-1.000~1.000

R

0EH、0FH、10H备用

0~999.9V

11H

A相电压

R

12H

B相电压

13H

C相电压

14H

A相电流

5A输入仪表为二次侧0~9.999A

乘以CT变比得一次侧电流

/10mA输入仪表为一次侧值0~200.00A

R

15H

B相电流

16H

C相电流

17H~1BH备用

1DH

U12线电压

0~999.9V

R

1EH

U23线电压

1FH

U31线电压

20H

频率

0~99.99Hz

R

21H

三相回路

总有功功率

有符号

5A输入仪表为二次侧0~9.999kW

乘以CT变比得一次侧有功功率;

10mA输入仪表为一次侧值0~44.00kW

R

22H、23H备用

24H

三相回路

总无功功率

25H、26H备用

27H

A相正(市电)有功电能高字节

一次侧电能

高字节

0~0xFFFF

低字节

0~0xFFFF

28H

A相正(市电)有功电能低字节

29H

B相正(市电)有功电能高字节

2AH

B相正(市电)有功电能低字节

2BH

C相正(市电)有功电能高字节

2CH

C相正(市电)有功电能低字节

2DH~38H备用

39H

A相有功功率

有符号

5A输入仪表为二次侧0~9.999kW

乘以CT变比得一

次侧有功功率/10mA输入仪表为一次侧值0~44.00kW

R

3AH

B相有功功率

3BH

C相有功功率

3CH~41H备用

42H

A相无功功率

有符号

5A输入仪表为二次侧0~9.999kVar

乘以CT变比得一

次侧有功功率/10mA输入仪表为一次侧值0~44.00kVar

R

43H

B相无功功率

44H

C相无功功率

45H

A相视在功率

有符号

5A输入仪表为二次侧0~9.999kVA

乘以CT变比得一

次侧有功功率/10mA输入仪表为一次侧值0~44.00kVA

R

46H

B相视在功率

47H

C相视在功率

48H

三相总视在功率

49H、4AH备用

4BH

A相功率因数

-1.000~1.000

R

4CH

B相功率因数

4DH

C相功率因数

4EH~53H备用

54H

A相正(市电)无功电能高字节

一次侧电能

高字节

0~0xFFFF

低字节

0~0xFFFF

R

55H

A相正(市电)无功电能低字节

56H

B相正(市电)无功电能高字节

57H

B相正(市电)无功电能低字节

58H

C相正(市电)无功电能高字节

59H

C相正(市电)无功电能低字节

5AH~6EH备用

6FH

开关量状态

BIT0-3:

1-4路DI状态

BIT12-13:

1-2路DO状态

R/W

70H

三相回路正(市电)总

有功电能高字节

一次侧电能

高字节

0~0xFFFF

低字节

0~0xFFFF

R

71H

三相回路正(市电)总

有功电能低字节

72H-75H备用

76H

三相回路正(市电)总

无功电能高字节

77H

三相回路正(市电)总

无功电能低字节

1、电能显示值为1次侧电能。

2、AMC16-E3/E4电能通讯数据为1次侧数据,单位0.01kWh。

例:

读取0x27H地址值为0x1234H,读取0x28H地址值为0x5678H,则实际L1相一次侧电能值为0x12345678H(3054198.96kWh)。

3、每个单相回路的电能走字最多为9999999.99kWh,超过此值则自动归零,并从零开始重新计。

4、以上地址表寄存器地址采用16进制数值表示;

5、用户在读取某个寄存器参数时,要注意该参数所占地址的字节数及高低位,并注意该数值的表示方式(有些数值读取时需用二进制表示,有些数值需用十进制表示,有些数据为有符号数)。

6、5A输入型仪表和10mA输入型仪表的通讯数据是有区别的,要特别注意。

7、10mA信号输入型仪表一次侧最大电流为200A,超出200A即无法准确测量。

一次电流值默认为50A,超出200A则自动变为50A。

所配互感器必须为xxxA/10mA。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 家庭教育

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2