功能点采集
指令下发及响应(平台编码)
(1)01-04功能点
1、针对01—04功能点,用户在平台上点击指令下发,选择平台编码:01~04,根据要求依次在空格内以16进制形式填写从机地址、起始地址、数据长度。平台会根据用户填写的数据自动计算出CRC结果,下发至主机设备。
2、主机将从机实际返回结果上报至平台。平台收到结果后,首先计算CRC结果的正确性,然后将实际上报的结果解析为int类型字符串,经统一格式后推送至消息队列。
示例:
对于01~02功能点,平台展示为从起始地址开始的,int类型字符串,如:
[{"resultCode": “SUCCESSFUL”}, {"resultDetail": {“196”: “172, 219, 53”}}]
对于03~04功能点,平台展示为各个寄存器的结果,如:
[{"resultCode": “SUCCESSFUL”}, {"resultDetail": {“104”: "22", "105": "0", "106": "99"}}]
表1 Modbus协议01—04功能点指令下发(平台编码)
从机地址 | 功能点 | 起始地址 (高字节) | 起始地址 (低字节) | 数据长度 (高字节) | 数据长度 (低字节) | CRC校验码 (低字节) | CRC校验码 (高字节) |
8bit | 8bit | 8bit | 8bit | 8bit | 8bit | 8bit | 8bit |
0x01-0xF7 | 0x01-0x04 | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF |
表2 Modbus协议01—04功能点指令下发响应
从机地址 | 功能点 | 字节长度 | 数据内容 | CRC校验码 (低字节) | CRC校验码 (高字节) |
8bit | 8bit | 8bit | 8*Nbit | 8bit | 8bit |
0x01-0xF7 | 0x01-0x04 | 0x00-0xFA(N) | 高+低 | 0x00-0xFF | 0x00-0xFF |
(2)05-06功能点
1、针对05—06功能点,用户可在平台上点击指令下发,选择平台编码:05~06,根据要求依次在空格内以16进制形式填写从机地址、强制地址、强制数据。平台会根据用户填写的数据自动计算出CRC结果,下发至主机设备。
2、主机将从机实际返回结果上报至平台。平台收到结果后,首先计算CRC结果的正确性,并根据实际上报结果分析,经统一格式后推送至消息队列:
[{"resultCode": “SUCCESSFUL”}, {"resultDetail": "Set up successfully"}]
表3 Modbus协议05—06功能点指令下发(平台编码)
从机地址 | 功能点 | 起始地址 (高字节) | 起始地址 (低字节) | 数据长度 (高字节) | 数据长度 (低字节) | CRC校验码 (低字节) | CRC校验码 (高字节) |
8bit | 8bit | 8bit | 8bit | 8bit | 8bit | 8bit | 8bit |
0x01-0xF7 | 0x01-0x04 | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF | 0x00-0xFF |
表4 Modbus协议05—06功能点指令下发响应
从机地址 | 功能点 | 字节长度 | 数据内容 | CRC校验码 (低字节) | CRC校验码 (高字节) |
8bit | 8bit | 8bit | 8*Nbit | 8bit | 8bit |
0x01-0xF7 | 0x01-0x04 | 0x00-0xFA(N) | 高+低 | 0x00-0xFF | 0x00-0xFF |
*注:05功能点强制数据仅支持0xFF00及0x0000
指令下发及响应(自编码)
平台目前仅支持01~06功能点平台编码解析,其他功能点暂时仅支持自编码。
1、用户在平台上做指令下发时,选择自编码,并在空格里填入完整的指令内容(从机地址~CRC校验码)。平台收到后,经检验CRC正确后下发至主机设备。
2、主机将指令推送至从机后,将从机结果返回至平台。响应结果到达平台后,平台仅校验响应的CRC计算正确,将响应整体进行base64编码后推送至消息队列。
3、不正常响应
平台支持对所有功能点不正常响应的解析,并将解析结果推送至消息队列:
[{"resultCode": “FAILURE”}, {"resultDetail": "%错误代码%"}]
指令下发成功3分钟后若未收到设备回复的响应,则认为指令执行超时,并推送结果至消息队列:
[{"resultCode", “FAILURE”}, {"resultDetail", “awaiting response timeout”}]
设备与平台对接
设备登录
操作步骤
1、主机设备携带平台提供的设备ID、特征串等信息,通过平台报文格式要求,经TCP承载向平台发起登录请求。
设备注册示例:
设备在平台上注册后,平台生成deviceId为100132311,password为FVBH4W4tE6BIAfPqDRPn6zuYXbNZjueFKJ7XmbDf344。
准备项为:
deviceId:100132311
password:FVBH4W4tE6BIAfPqDRPn6zuYXbNZjueFKJ7XmbDf344
type:584
登录报文格式为(16进制):
• 登录标识符:0xFFFF01
• deviceId_length:0x0009
• deviceId:31 30 30 31 33 32 33 31 31
• password_length:0x002B
• password: 46 56 42 48 34 57 34 74 45 36 42 49 41 66 50 71 44 52 50 6E 36 7A 75 59 58 62 4E 5A 6A 75 65 46 4B 4A 37 58 6D 62 44 66 33 34 34
• type_length:0x0003
• type:0x353834
则设备应首先发送登录报文格式为(16进制):
FF FF 01 00 09 31 30 30 31 33 32 33 31 31 00 2B 46 56 42 48 34 57 34 74 45 36 42 49 41 66 50 71 44 52 50 6E 36 7A 75 59 58 62 4E 5A 6A 75 65 46 4B 4A 37 58 6D 62 44 66 33 34 34 00 03 35 38 34
平台收到登录报文后,认证设备的合法性,并回复认证结果为(16进制):
FF FF 02 00 00
2、在设备管理-产品列表下的“设备管理”页面,查看设备状态。设备列表中的圆点会由灰色变为绿色,表示设备“在线”,同时门户会显示设备最后一次的上线时间,此状态下表示设备已经成功的接入到平台,之后就可以完成业务上的操作。