鸿鹄SCADA系统设备主动上送协议
修改记录
2012-6-5
1、寄存器单位由字节改为字(即两个字节),与MODBUS协议一致;
2、数据区增加寄存器已偏移量(2HEX)和寄存器数量。
一、应用范围
本协议应用于使用由力控开发的SCADA系统,数据采集设备在不连续在线的工作模式下进行数据采集的环境中。
二、要求
力控系统在接收到数据时,必须将其当作历史数据处理并存储至............................
数据库中,而不是作为实时数据处理。
即数据的采集时间由协议数据..............................
头中的数据采集时间确定,而不是以当前时间确定。
.......................
系统有本地
.......;其中
...、.统远程公商用户
......站控系统、
.....PLC
.....远程
..站控系
远程用户
........网络同时上传
......;.上级系
..GSM/CDMA
......-.800
....近.500
...个.并且
..采用
统提供...O .PC ..和Webservice 接口。
...
三、 协议格式
1、 功能码
ERR :错误标识,只在应答时根据情况填写。
ERR=1有错误;ERR=0无错误
当ERR=1,数据区中应为1字节HEX 码,表示错误类型
2、数据采集时间
表示数据区内数据的采集时间,格式为yyyyMMddHHmmss。
例如2012年4月20日14点58分34秒,则表示为20120420145834。
3、数据区
1、寄存器偏移量
表示数据区中的第一个寄存器的数据在设备寄存器中已经偏移的寄存器数量。
2、数据区
数据区内容可以自由定义,类似MUDBUS协议。
在力控平台中设备和数据点关联配置界面中,可以采用偏移量+数据类型(或字节数)的配置方式,如下图所示:
注意:在本协议中,寄存器最小单位为一个字(即两个字节),因此在配置中偏置是以字为单位的,和MODBUS协议一致。
同时在接收到数据包进行处理时,要考虑寄存器已经偏移的字数量。
1)、主动上送时:
发送:68 21 1234567890 0000 01 20120605102035 00040004 306B0000 0A3D41F7 66B3 16 在以上数据中:设备编号1234567890 ,功能码01,数据采集时间2012年6月5日10点20分35秒,数据区内寄存器已经偏移4寄存器(8字节),Tag3=12395 ,Tag4=30.88 。
数据正确时应答:68 18 1234567890 0000 01 00794D 16
数据错误时应答:68 18 1234567890 0000 81 04EC19 16
发送:68 21 1234567890 0000 01 20120605102035 0000 0004 306B0000 0A3D41F77383 16 在以上数据中:设备编号1234567890 ,功能码01,数据采集时间2012年6月5日10点20分35秒,数据区内寄存器已经偏移0寄存器(0字节),Tag1=12395 ,Tag2=30.88 。
2)、下置数据时:
下置数据时数据区格式如下:
数据下置时忽略数据采集时间。
发送:68 21 1234567890 0000 02 00000000000000 0004 0004306B0000 0A3D41F760D116
以上数据将Tag3=12395 ,Tag4=30.88写入设备对应寄存器
4、校验
校验采用CRC16,计算方式同MODBUS协议。
计算区域为数据头到数据区所有字节。
计算结果低位在前。
5、应答
每一帧数据都应该进行应答。
应答时数据区中为1字节HEX码,表示错误类型。