用于智能用电网络的通信系统和通信方法_3

文档序号:8942409阅读:来源:国知局
控制器和网关,控制器接收网关发布的网关信息后,根据网关信息中的第一网络地址向网关发送包含第二网络地址和设备信息的反馈信息,网关根据第二网络地址和设备信息向控制器发送指令信息,由于控制器向网关发送的反馈信息中包含控制器的设备信息,因此能够使得网关根据该设备信息识别控制器,并向控制器发送指令信息,从而提高了上述用于智能用电网络的通信系统的适用性。
[0070]基于同一发明构思,本发明实施例提供一种用于智能用电网络的通信方法,由于此方法解决问题的原理与前述一种用于智能用电网络的通信系统相似,因此,重复之处不再赘述。
[0071]参见图2,一个实施例中,以MQTT-SN通信协议和ZigBee通信网络为例,对本发明用于智能用电网络的通信方法进行详细说明,本发明用于智能用电网络的通信方法包括以下步骤:
[0072]S100,通过控制器接收网关发布的网关信息,根据网关信息中的第一网络地址部通过控制器向网关发送反馈信息。
[0073]其中,网关信息包括第一网络地址,且第一网络地址为网关在ZigBee通讯网络中的唯一标示。网关以外的通信设备可根据第一网络地址向网关发送信息。
[0074]—个具体的实施例中,通过控制器接收到的网关信息可以包括如下数据=ZigBeeHead、ZigBee Length、ZigBee PANID、Passthrough Flag、ZigBee Msgld、MQTT-SN Length、MQTT-SN Msgtype和Gwld。其中,ZigBee Head表示ZigBee数据的帧头,设定为OxFE ;ZigBeeLength为网关信息的长度,由于网关信息内容固定,因此设定为0x09 ;ZigBee PANID为网关在ZigBee通信网络中的第一网络地址,是网关在ZigBee通信网络中的唯一标识;ZigBeeMsgId为网关信息序号,由ZigBee内部程序设置;Passthrough Flag为透传标识,设定为0x01 ;MQTT-SN Length 为 MQTT-SN 的信息长度,设定为 0x03 ;MQTT_SN MsgType 为 MQTT-SN的信息类型,设定为0x02。
[0075]控制器接收到该网关信息后,获取并存储该网关信息中的第一网络地址ZigBeePANID,并根据第一网络地址ZigBee PANID向网关发送反馈信息。反馈信息可以包括第二网络地址和控制器的设备信息。
[0076]一个实施例中,反馈信息具体可以包括如下数据:ZigBee Head、ZigBee Length、Gateway Address、Passthrough Flag、ZigBee Msgld、Device Info、MsgType 和 ReturnCode。其中,ZigBee Length在反馈信息中设置为OxOA !Gateway Address为通过控制器获取的网关在ZigBee通信网络中的第一网络地址device Info为控制器的设备信息,共有两个字节,第一个字节表示控制器的厂家信息,第二个字节表示控制器的设备类型;MsgType为通过控制器发送的信息的信息类型,可以表示控制器对接收到的网关信息的反馈,设定为0x01,在后续工作中MsgType还可以表示控制器对接收到的网关发送的指令信息的反馈,可以设定为0x02 !Return Code为指令信息接收结果,且0x00表示接收成功,0x01?OxFF表示接收失败,具体接收失败的原因可自行定义,例如0x01?OxFF各表示不同的接收失败的原因。
[0077]可以理解的,在其他实施例中,Device Info还可以为一个字节,只表示控制器的厂家信息或设备类型。具体情况可以根据需要进行设定。
[0078]S200,通过网关接收反馈信息,根据第二网络地址和设备信息并通过网关向控制器发送指令信息。
[0079]—个实施例中,通过网关接收到的控制器发送来的反馈信息可以包括如下数据:ZigBee Head、 ZigBee Length、 IR Address、 Passthrough Flag、 ZigBee Msgld、 DeviceInfo、MsgType和Return Code。其中,IR Address为控制器在ZigBee通信网络中的第二网络地址,且为控制器在ZigBee通信网络中的唯一标示,网关根据第二网络地址IR Address向控制器发送指令;其他数据与前述对应的数据所表示的含义相同,故在此不再赘述。
[0080]一个实施例中,根据所述第二网络地址和设备信息并通过网关向控制器发送指令信息可以通过以下步骤实现:
[0081]S210,以ZigBee每次所能稳定传送数据的最大信息长度为标准将所述指令信息分批。
[0082]由于网关发送的指令信息一般较长,而ZigBee通信网络每次所能稳定传送数据的最大信息长度为64字节,因此需要通过网关对指令信息进行分批传输。具体的,网关以ZigBee通信网络每次所能稳定传送数据的最大信息长度为标准将指令信息分批,分为多个子指令信息。
[0083]每个子指令信息包括如下数据:ZigBeeHead、ZigBee Length、IR Address、Passthrough Flag、ZigBee Msgld、Device Info 和 Data。其中,数据域 Data 包括两个字节,在一条指令信息的第一批次被发送的子指令信息中,数据域Data的第一个字节为指令发射标识,设定为0xE3,第二个字节为指令长度,而在其他子指令信息中,数据域Data的第一个字节不需要设置为0xE3,第二个字节页不需要设置为指令长度。对于指令信息中的其他数据与前述对应的数据所表示的含义相同,故在此不再赘述。
[0084]S220,通过控制器接收网关根据第二网络地址和设备信息发送的分批后的所述指令信息。
[0085]网关根据第二网络地址和设备信息发送被分批的指令信息,优选的,网关按照预设时间间隔向控制器分批发送分批后的指令信息。即网关在发送完指令信息的第一条子指令信息后,隔开预设时间间隔后,再发送第二条子指令信息;同样,再隔开预设时间间隔后,再发送第三条子指令信息,直至指令信息被发送完毕。该预设时间间隔大于等于50ms,例如可以为100ms。
[0086]进一步地,本发明用于智能用电网络的通信方法还可以包括:
[0087]S300,通过控制器判断指令信息是否完整有效,若是,则信息指令发送完成;否则,返回根据第二网络地址和设备信息并通过网关向控制器发送指令信息的步骤。
[0088]可以理解的,控制器接收到网关分批发送的分批后的指令信息后,需要将指令信息的各个子指令信息拼接起来,并检验该指令信息是否完整有效。
[0089]—个实施例中,判断接收到的指令信息是否完整有效的方法为:
[0090]判断所接收到的指令信息是否包含指令发射标识,并判断所接收到的指令信息的长度是否与指令长度相符合,以及判断所接收到的指令信息是否能够被识别;
[0091]若所接收到的指令信息包含指令发射标识,且所接收到的指令信息的长度与指令长度相符合,以及所接收到的指令信息能够被识别,则该指令信息完整有效,否则,该指令信息非完整有效。
[0092]具体的,可以通过控制器判断所接收到的指令信息是否完整有效,并将判断结果发送给网关。一个实施例中,控制器根据判断结果向网关发送指令接收反馈信息,指令接收反馈信息具体可以包括如下数据:ZigBee Head、ZigBee Length、Gateway Address、Passthrough Flag、ZigBee MsgIcUDevice Info、MsgType和Return Code。其中,MsgType为控制器发送的信息类型,表示对接收到的网关发送的指令信息的反馈,设定为0x02 ;ReturnCode为指令信息接收结果,且0x00表示接收成功,0x01?OxFF表示接收失败,具体接收失败的原因可自行定义,例如0x01?OxFF各表示不同的接收失败的原因。可以理解的,上述的判断结果由指令接收反馈信息中的Return Code表示。
[0093]可以理解的,网关接收到控制器发送来的指令接收反馈信息后,获取指令接收反馈信息中的MsgType和Return Code,根据MsgType判断接收到的控制器发送的信息的类型,并根据Return Code判断控制器接收到的指令信息是否完整有效,及控制器是否成功接收指令信息。若网关根据Return Code判断出控制器接收到的指令信息完整有效,则该指令信息发送完成;否则,该指令信息发送失败,并重新向控制器发送该指令信息。
[0094]判断接收到的指令信息是否完整有效,并根据判断结果进行下一步处理,能够保证控制器接收到的网关发送的指令信息是完整有效的,从而提高了上述用于智能用电网络的通信方法的工作效率。
[0095]一个具体的实施例中,控制器为智能红外发射器,通信网络为ZigBee。通过网关将要发送的指令信息为:0x78 23 75 8C EC E2 5C 32 52 BI 5E CA FD 06 4E 51 44 BI 5EA2 OA 06 4E 04 40 23 12 89 AE 7C 06 OB FD 2B IA 91 B6 84 OE 13 05 33 22 99 BE8C 16 IB OD 3B 2A Al C6 94 IE 23 15 43 32 A9 CE 9C 26 2B ID
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1