平台与网关 交互流程图
<p>[TOC]</p>
<h1>数据通信流程</h1>
<h2>1 数据采集</h2>
<h3>1.1 数据采集流程说明</h3>
<p>1、网关上电后,轮询每个设备的全部信息(产品信息、实时数据、日志等)
2、轮询结束后,将所有设备的全量信息主动上报;
3、轮询子设备的实时信息,含:设备电流、电压、功率 以及运行状态字(标识是否有事件发生)
4、子设备无新事件,网关定期将全部子设备信息进行上报服务器;(定时上报周期可设)
5、判断运行状态字,如果某个子设备有新的事件发生,上报状态(只通知事件,无详细日志);然后查询该设备对应事件日志,上报服务器;</p>
<h3>1.2 数据采集流程图</h3>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=1da7cada662be9869c6916f6ef205497&amp;file=file.png" alt="" /></p>
<h2>2 设置流程</h2>
<h3>2.1 数据设置流程</h3>
<p>1、平台设置参数(发布WriteData主题)、
2、网关收到主题数据,下发 断路器设备;
3、断路器设备应答
4、网关通过DataChagne主题发布 对应CmdId,应答平台操作结果 Code:5000
5、平台检测到应答码,显示设置成功;</p>
<h3>2.2 设置流程图</h3>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=66200aefe2c0d654b4e450b7f167237b&amp;file=file.png" alt="" /></p>
<h2>3 远程控制</h2>
<h3>3.1 数据控制流程</h3>
<p>1、服务器通过WriteData + CmdId主题下发分合闸控制;
2、网关收到主题通知后,下发modbus命令,控制断路器设备动作;并等待网关主动上报 变位状态字 和 闸位变化事件;
3、网关收到断路器应答后,DataChange+CmdId 应答 5000,下发成功;</p>
<p><strong>设置正常子流程:</strong>
4、如果断路器正常动作,网关会查询到运行状态字变化(标识有开关变位);
5、网关主动上报运行状态字;
6、网关同步向 断路器发起变位日志查询;
7、网关收到断路器应答的日志后,上报平台;
8、显示分合闸成功,结束流程;</p>
<p><strong>应答设置失败、重试:</strong>
4、应答指令操作失败,没有超过重试次数,则重试;
6、应答指令操作失败,超过重试次数,则显示设置失败,结束流程;</p>
<p><strong>设置后无闸位变化上报 平台主动读取、重试 </strong>
4、平台侧 主动发起分合闸状态读取;
5、平台侧 根据网关应答的分合闸状态,判断控制是否成功;
6、如果分合闸失败,且未超过重试次数,则重发起对应设备的控制消息;并等待网关主动上报 变位状态字 和 闸位变化事件;
7、如果控制成功,或者超过重试次数,结束流程;</p>
<h3>3.2 数据控制流程图</h3>
<p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=e3ffa0c4968c179aaf3460a7a96fc9ac&amp;file=file.png" alt="" />
红色线(异常处理)
虚线(通过MQTT服务器中转)</p>