足疗仪通讯文档-系统接口
目录
描述
规约
本文档所述的协议是用以东骏科技有限公司物联网服务平台和足疗仪控制设备的数据交互。
客服(技术)联系方式
杭州东骏科技有限公司
电话:0571-87017551
手机:13082852087
兼容性
仅适用于授权设备。
词汇表
端口:充电时使用的接口,设备可以单独控制的电力输出结构。
端口编号:端口的程序代码,和设备编号共用用以表示端口在系统中的唯一值。端口编号必须以数字顺序编码,每台机器端口编号不得跳跃,不得重用。
响应类型:上报服务端的数据响应类型。分为即时响应上报和设备主动上报。
会话ID: 由服务端生成,用以区分不同的命令数据链。
网络通讯协议
本章节内容定义通讯模块和服务器之间的通讯协议。
通讯方式
- 数据上报:string字符串
- 指令数据:定长报文
- 通讯网络协议:TCP
关于粘包
由于服务器操作系统在处理TCP通讯时,将数据包转换成流传输给应用层,在数据频率高或者并发高的情况下很容易出现粘包,单片机受内存限制将不处理粘包,所以服务器在发送数据的时候需要注意的是尽量不要以特别高的频率向单片机发送数据,单片机如果接收到数据有粘包则只能处理前面一包的数据,后面的数据将会被丢弃,服务器可以通过重发机制避免粘包对业务产生影响,同时在很偶尔的情况下服务器发送数据可能出现分包(虽然现在大部分服务器发送慢充这样的数据不会出现分包),如果大量出现分包,请调整服务器网络参数设置,如果同一条数据被分包发送间隔大于2s将被单片机将在接收到后面的数据之前就认为前面的数据是非法的。同时因为服务器内存资源充足,建议服务器尽量对接收数据进行粘包处理。
业务协议
查询设备端口状态
关联设备命令:Q01=**@
动作 | 数据格式 | 发送者 | 接收者 |
端口查询 | Q01=00@ | 通讯模块:Q01=00@ | 主板 |
端口响应 | Q01=00@ | 主板:Q01=*@ | 通讯模块 |
状态说应 :1-端口空闲,2-端口正在使用,3-端口禁用,4-端口故障
示例:
下行: 模块->主板 Q01=00@ 上行: 主板->设备 Q01=1@
设备启动
关联设备命令:Q02=**@
动作 | 数据格式 | 发送者 | 接收者 |
启动指令 | Q02=**@ | 通讯模块:Q02=xx@ | 主板 |
启动响应 | Q02=**@ | 主板:Q01=*@ | 通讯模块 |
状态说应 :0-启动成功,1-启动失败
示例:
下行: 模块->主板 Q02=00@ 上行: 主板->设备 Q02=x@ 0-启动成功,1-启动失败
运行完成通知
关联设备命令:Q03=**@
动作 | 数据格式 | 发送者 | 接收者 |
完成上报 | Q03=**@ | 主板:Q03=xx@ | 通讯模块 |
状态说应 :00: 完毕 10:电源故障 11:电机故障
示例:
上行: 主板->设备 Q02=xx@ 00: 完毕 10:电源故障 11:电机故障