一种多路控制的zigbee设备数据处理方法与流程

文档序号:11254058阅读:1293来源:国知局
一种多路控制的zigbee设备数据处理方法与流程

本发明涉及无线通讯技术领域,尤其涉及一种多路控制的zigbee设备数据处理方法。



背景技术:

zigbee是基于ieee802.15.4标准的低功耗局域网协议。根据国际标准规定,zigbee技术是一种短距离、低功耗的无线通信技术。其工作基本流程为,设备终端的数据→协调器或路由器(网关)→mcu。ieeemac地址:全球唯一的地址,在设备的整个生命周期内都将保持不同,它由国际ieee组织分配,在芯片出厂时已经写入芯片中,并且不能修改。短地址:在设备加入一个zigbee网络时分配的,它只在这个网络中唯一,用于网络内数据收发时的地址识别。

目前随着物联网技术的快速发展,终端设备的种类也越来越多。由于有些终端设备需要进行多路控制(比如多路灯光的zigbee开关控制器),同时对多路负载进行远程控制。在使用多路zigbee设备的时候,会遇到这些问题:在设备入网的时候,它会依序发出每一路的入网报告(单路数据只有一份),但mcu端如何鉴别这个只有一个设备。另外mcu端如何实现对每一条通路独立控制,以及每一路负载数据如何区分上报。



技术实现要素:

针对现有技术存在的不足之处,本发明的目的在于提供一种多路控制的zigbee设备数据处理方法,能够解决多路控制的zigbee设备入网以及数据处理的问题。

本发明的目的通过下述技术方案实现:

一种多路控制的zigbee设备数据处理方法,包括协调器、微控制单元mcu和若干个终端设备,所述微控制单元mcu、协调器、所有终端设备共同构成一个zigbee局域网络,所述终端设备包括有若干路控制通道,同一终端设备中的每路控制通道被对应赋予一个通道值,所述终端设备内部存储有mac地址、设备名称、设备类型和通道值;所有终端设备通过协调器连接进入zigbee局域网络,所述协调器给每个终端设备分配一个入网短地址;所述微控制单元mcu内部具有设备列表数据库,所述设备列表数据库包括若干个设备节点,每个设备节点存储有对应终端设备的mac地址、设备名称、设备类型、通道值和入网短地址,其方法包括如下:

a、所述微控制单元mcu通过协调器连接进入zigbee局域网络中,各个终端设备分别通过协调器连接进入zigbee局域网络中,所述微控制单元mcu内部具有设备列表数据库;所述协调器给每个终端设备分配一个入网短地址;

当一个终端设备连接进入zigbee局域网络中,微控制单元mcu中的设备列表数据库就设置该终端设备所对应的设备节点,所述设备节点存储有对应终端设备的mac地址、设备名称、设备类型、通道值和入网短地址;这样以此完成所有终端设备连接进入zigbee局域网络中,并且微控制单元mcu中的设备列表数据库存储有所有终端设备所对应的设备节点;

b、某个终端设备从zigbee局域网络中断开,然后此终端设备再连接进入zigbee局域网络中,所述协调器给该终端设备分配一个入网短地址并将该终端设备的mac地址和入网短地址上报至微控制单元mcu,所述微控制单元mcu将该终端设备的mac地址在设备列表数据库中进行匹配,找到该终端设备所对应的设备节点,然后更新设备节点中所对应该终端设备的入网短地址;

c、所述微控制单元mcu向zigbee局域网络中终端设备的某个路控制通道发出控制命令或查询命令,所述微控制单元mcu会通过设备列表数据库识别出该终端设备所对应的设备节点,然后微控制单元mcu通过设备节点找寻通道值,终端设备中相应控制通道收到控制命令或查询命令后响应控制操作,终端设备通过zigbee局域网络向微控制单元mcu反馈控制结果和查询所得到的负载情况。

本发明较现有技术相比,具有以下优点及有益效果:

本发明微控制单元mcu能够实现对每一条通路的终端设备的通道进行独立控制,以及可以实现每一路负载数据的区分上报,本发明能够解决多路控制的zigbee设备入网以及数据处理的问题。

附图说明

图1为本发明实施例二步骤a的流程示意图;

图2为本发明实施例二步骤b的流程示意图。

具体实施方式

下面结合实施例对本发明作进一步地详细说明:

实施例一

一种多路控制的zigbee设备数据处理方法,包括协调器、微控制单元mcu和若干个终端设备,所述微控制单元mcu、协调器、所有终端设备共同构成一个zigbee局域网络,所述终端设备包括有若干路控制通道,同一终端设备中的每路控制通道被对应赋予一个通道值,所述终端设备内部存储有mac地址、设备名称、设备类型和通道值;所有终端设备通过协调器连接进入zigbee局域网络,所述协调器给每个终端设备分配一个入网短地址;所述微控制单元mcu内部具有设备列表数据库,所述设备列表数据库包括若干个设备节点,每个设备节点存储有对应终端设备的mac地址、设备名称、设备类型、通道值和入网短地址,其方法包括如下:

a、所述微控制单元mcu通过协调器连接进入zigbee局域网络中,各个终端设备分别通过协调器连接进入zigbee局域网络中,所述微控制单元mcu内部具有设备列表数据库;所述协调器给每个终端设备分配一个入网短地址;

当一个终端设备连接进入zigbee局域网络中,微控制单元mcu中的设备列表数据库就设置该终端设备所对应的设备节点,所述设备节点存储有对应终端设备的mac地址、设备名称、设备类型、通道值和入网短地址;这样以此完成所有终端设备连接进入zigbee局域网络中,并且微控制单元mcu中的设备列表数据库存储有所有终端设备所对应的设备节点;

b、某个终端设备从zigbee局域网络中断开,然后此终端设备再连接进入zigbee局域网络中,所述协调器给该终端设备分配一个入网短地址并将该终端设备的mac地址和入网短地址上报至微控制单元mcu,所述微控制单元mcu将该终端设备的mac地址在设备列表数据库中进行匹配,找到该终端设备所对应的设备节点,然后更新设备节点中所对应该终端设备的入网短地址;

c、所述微控制单元mcu向zigbee局域网络中终端设备的某个路控制通道发出控制命令或查询命令,所述微控制单元mcu会通过设备列表数据库识别出该终端设备所对应的设备节点,然后微控制单元mcu通过设备节点找寻通道值,终端设备中相应控制通道收到控制命令或查询命令后响应控制操作,终端设备通过zigbee局域网络向微控制单元mcu反馈控制结果和查询所得到的负载情况。

实施例二

如图1、图2所示,一种多路控制的zigbee设备数据处理方法,包括协调器、微控制单元mcu和若干个终端设备,所述微控制单元mcu、协调器、所有终端设备共同构成一个zigbee局域网络,所述终端设备包括有若干路控制通道,同一终端设备中的每路控制通道被对应赋予一个通道值,所述终端设备内部存储有mac地址、设备名称、设备类型和通道值;所有终端设备通过协调器连接进入zigbee局域网络,所述协调器给每个终端设备分配一个入网短地址;所述微控制单元mcu内部具有设备列表数据库,所述设备列表数据库包括若干个设备节点,每个设备节点存储有对应终端设备的mac地址、设备名称、设备类型、通道值和入网短地址,其方法包括如下:

a、协调器收到多路终端设备依序发送的多路通道的入网短地址和控制的通道路数等数据后,通过串口向mcu发送数据。每接收到一条入网报告mcu首先会轮询现有的终端设备列表,将收到的上报数据中设备短地址与设备列表中的数据进行比较,如果出现匹配值,再将接收到的设备的point值(通道值)与设备列表中的point值进行比较,如果大于现有的point值,则把较大值更新到设备列表中;将收到的上报数据中设备短地址与设备列表中的数据进行比较,如果未出现匹配值,则新建设备节点数据结构并添加到设备列表中。

b、mcu接收到多路终端的短地址和mac地址上报,mcu轮询现有的终端设备列表,将收到的上报数据中设备短地址与设备列表中的数据进行比较,找到相应的节点nd_shortaddress,然后再根据mac地址轮询设备列表,如果能找到匹配的节点nd_mac,则把现有的短地址值更新到节点nd_mac的短地址中,从设备列表中删除节点nd_shortaddress的数据;如果根据mac地址找不到节点,则把mac的值更新到节点nd_shortaddress的mac值,然后报新设备上线。

c、控制或者查询指定通道的负载时,向多路终端发送包含point值的控制命令或者查询,终端在收到正确的指令后返回相应point值通道的负载的状态。

本实施例举例终端设备为3路灯zigbee控制器,3路灯zigbee控制器入网时依次上报3条短地址和控制路数,mac地址等等数据,网关(mcu端)轮询与网关组网的所有传感器的设备数据列表,将接收到的数据中的短地址和设备列表的所有节点的值进行比较,如果出现匹配的值,则进入下一步骤;否则,分配新的内存,建立一个新的设备节点的结构体数据,把接收到的数据复制到这个节点的结构体;比较接收到设备point值,如果这个值大于设备数据列表的值,则把较大的point值进行更新,最终point值应为3;3路灯短地址和mac地址上报,网关(mcu端)将接收到短地址数据和设备数据列表中的数据进行比较,找到相匹配的节点nd_shortaddress;下一步将接收到mac数据和设备数据列表中的mac数据进行比较,如果能找到匹配的值,找到相对应的节点nd_mac,则将接收到的短地址数据更新到该节点的短地址数据中,从设备列表中删除nd_shortaddress,;如果没有找到匹配的节点,则接收到的mac数据更新到节点nd_shortaddress中的mac值中,上报新设备上线;向3路灯控制器的第2路发送开灯指令或者查询命令,则网关(mcu端)需把point值为2的控制命令发出,设备收到正确的指令后做出开灯动作或者返回2路灯的状态。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1