一种数据传输方法、转发器及网关与流程

文档序号:12380236阅读:503来源:国知局
一种数据传输方法、转发器及网关与流程

本发明涉及数据传输技术,尤其涉及跨网络间的一种数据传输方法、转发器及网关。



背景技术:

紫蜂(ZigBee)是一种短距离无线通信技术,ZigBee网络中有三种类型的ZigBee设备,分别为:ZigBee协调器、ZigBee路由器和ZigBee终端。通过ZigBee协调器建立ZigBee网络,ZigBee路由器负责维护并扩展ZigBee网络,而ZigBee终端能够以自组网的方式加入ZigBee网络。整个ZigBee网络具有很好的稳定性和自愈性。

参照图1,ZigBee网络通过网关与因特网(Internet)网络进行联通,具体地,在网关上集成有ZigBee协调器,因而网关能够将ZigBee网络和Internet网络两个异构的网络进行联通。在联通的过程中,网关通过Internet网络接收控制端的控制指令,解析控制指令并执行相应的动作,例如控制ZigBee网络里的某一个ZigBee设备执行相应的动作;网关也会将ZigBee网络中的ZigBee设备上报的信息通过Internet网络发送到控制端。

上述方案中,当Internet网络故障时,网关则不能访问Internet网络,这样网关就不能接收到控制端的控制指令,整个ZigBee网络中的ZigBee设备也将陷入不可被访问的状态。



技术实现要素:

为解决上述技术问题,本发明实施例提供了一种数据传输方法、转发器及网关。

本发明实施例提供的数据传输方法,包括:

当网关与第一设备之间的第一通信网络处于无法通信状态时,转发器接收所述第一设备发送的第一数据,将所述第一数据发送给所述网关,以通过所述网关将所述第一数据发送至位于第二通信网络中的第二设备;

转发器接收所述网关发送的第二数据,将所述第二数据发送给所述第一设备。

本发明实施例中,转发器将所述第一数据发送给所述网关,包括:

转发器通过所述第二通信网络将所述第一数据发送给所述网关;

相应地,所述转发器接收所述网关发送的第二数据,包括:

转发器通过所述第二通信网络接收所述网关发送的第二数据。

本发明实施例中,所述转发器接收所述第一设备发送的第一数据,包括:

转发器通过与所述第一设备之间的物理接口接收所述第一设备发送的第一数据;

相应地,所述转发器将所述第二数据发送给所述第一设备,包括:

转发器通过与所述第一设备之间的物理接口将所述第二数据发送给所述第一设备。

本发明另一实施例提供的数据传输方法,包括:

当网关与第一设备之间的第一通信网络处于无法通信状态时,网关经转发器接收所述第一设备发送的第一数据,将所述第一数据发送至位于第二通信网络中的第二设备;

网关利用所述第二通信网络接收所述第二设备发送的第二数据,将所述第二数据经所述转发器发送给所述第一设备。

本发明实施例中,所述方法还包括:

当网关与第一设备之间的第一通信网络处于通信状态时,网关利用所述第一通信网络接收所述第一设备发送的第一数据,将所述第一数据发送至位于第二通信网络中的第二设备;

网关利用所述第二通信网络接收所述第二设备发送的第二数据,利用所述第一通信网络将所述第二数据发送给所述第一设备。

本发明实施例提供的转发器,包括:

第一接收单元,用于当网关与第一设备之间的第一通信网络处于无法通信状态时,接收所述第一设备发送的第一数据;

第一发送单元,用于将所述第一数据发送给所述网关,以通过所述网关将所述第一数据发送至位于第二通信网络中的第二设备;

第二接收单元,用于接收所述网关发送的第二数据;

第二发送单元,用于将所述第二数据发送给所述第一设备。

本发明实施例中,所述第一发送单元,还用于通过所述第二通信网络将所述第一数据发送给所述网关;

相应地,所述第二接收单元,还用于通过所述第二通信网络接收所述网关发送的第二数据。

本发明实施例中,所述第一接收单元,还用于通过与所述第一设备之间的物理接口接收所述第一设备发送的第一数据;

所述第二发送单元,还用于通过与所述第一设备之间的物理接口将所述第二数据发送给所述第一设备。

本发明实施例提供的网关,包括:

第一接收单元,用于当网关与第一设备之间的第一通信网络处于无法通信状态时,经转发器接收所述第一设备发送的第一数据;

第一发送单元,用于将所述第一数据发送至位于第二通信网络中的第二设备;

第二接收单元,用于利用所述第二通信网络接收所述第二设备发送的第二数据;

第二发送单元,用于将所述第二数据经所述转发器发送给所述第一设备。

本发明实施例中,所述网关还包括:

第三接收单元,用于当网关与第一设备之间的第一通信网络处于通信状态时,利用所述第一通信网络接收所述第一设备发送的第一数据;

第三发送单元,用于当网关与第一设备之间的第一通信网络处于通信状态时,利用所述第一通信网络将所述第二数据发送给所述第一设备。

本发明实施例的技术方案中,当网关与第一设备之间的第一通信网络处于无法通信状态时,转发器接收所述第一设备发送的第一数据,将所述第一数据发送给所述网关,以通过所述网关将所述第一数据发送至位于第二通信网络中的第二设备;转发器接收所述网关发送的第二数据,将所述第二数据发送给所述第一设备。可见,在网关与第一设备之间引入了转发器之后,当网关与第一设备之间的第一通信网络处于无法通信状态时,利用转发器依然能够维持网关与第一设备之间的通信,从而可以使第一设备正常控制位于第二通信网络中的第二设备,提高了系统的可用性和稳定性。

此外,当网关与第一设备之间的第一通信网络处于通信状态时,网关利用所述第一通信网络接收所述第一设备发送的第一数据,将所述第一数据发送至位于第二通信网络中的第二设备;网关利用所述第二通信网络接收所述第二设备发送的第二数据,利用所述第一通信网络将所述第二数据发送给所述第一设备。可见,本发明实施例的网关支持两种渠道与第一设备进行互通,一个渠道来自第一通信网络,另一个渠道来自转发器,进一步保障了系统的可用性和稳定性。

附图说明

图1为控制端与ZigBee设备的通信结构示意图;

图2为本发明实施例中进行信息交互的各方硬件实体的示意图;

图3为本发明实施例的数据传输方法的流程示意图一;

图4为本发明实施例的数据传输方法的流程示意图二;

图5为本发明实施例的转发器的结构组成示意图;

图6为本发明实施例的网关的结构组成示意图;

图7为本发明实施例的应用场景一的示意图;

图8为本发明实施例的应用场景二的示意图。

具体实施方式

为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。

图2为本发明实施例中进行信息交互的各方硬件实体的示意图,图2中包括:第一设备21、网关22、第二设备23,转发器24。其中,第一设备21与网关22之间通过有线网络或者无线网络进行信息交互,第一设备21与网关22之间的网络称为第一通信网络,例如Internet网络。网关22中集成有ZigBee协调器,可见,网关22为ZigBee网关,网关22与第二设备23之间通过无线网络进行信息交互,网关22与第二设备23之间的网络称为第二通信网络,例如ZigBee网络。一个示例中,第一设备21为控制端,第二设备22为ZigBee设备,第二设备22可以是ZigBee路由器,也可以是ZigBee终端。转发器24也为ZigBee设备,转发器24是ZigBee网络中不同于ZigBee路由器和ZigBee终端的另一种ZigBee设备。转发器24在接入ZigBee网络中时,与ZigBee路由器和ZigBee终端一样,需要将自身的设备类型以及相关参数上报给网关中的ZigBee协调器。转发器24与第一设备21之间通过物理接口相连,转发器24与网关22之间通过第二通信网络,也即ZigBee网络互通。本发明实施例中,第一设备21对第二设备23的控制以及第二设备23向第一设备21上报的数据可以通过以下两种渠道进行:1)第一设备21通过第一通信网络向网关22发送控制指令,网关22通过第二通信网络将控制指令发送给第二设备22,反向同理。2)第一设备22通过转发器24向网关22发送控制指令,网关22通过第二通信网络将控制指令发送给第二设备22,反向同理。可见,当第一通信网络发生故障导致第一设备21与网关22之间无法正常通信时,可以通过转发器24来实现数据的转发,从而保障了在无网的情况下,处于ZigBee网络中的ZigBee设备依然能够被访问以及控制。

上述图2的例子只是实现本发明实施例的一个系统架构实例,本发明实施例并不限于上述图2所述的系统结构,基于该系统架构,提出本发明各个实施例。

图3为本发明实施例的数据传输方法的流程示意图一,本示例中的数据传输方法应用于转发器侧,如图3所示,所述数据传输方法包括以下步骤:

步骤301:当网关与第一设备之间的第一通信网络处于无法通信状态时,转发器接收所述第一设备发送的第一数据,将所述第一数据发送给所述网关,以通过所述网关将所述第一数据发送至位于第二通信网络中的第二设备。

本发明实施例中,网关中集成有ZigBee协调器,ZigBee协调器是整个ZigBee网络的主要控制者,ZigBee协调器的主要功能有:负责建立一个新的ZigBee网络;发送网络信标;管理ZigBee网络中的ZigBee设备;存储ZigBee网络中的ZigBee设备的信息;寻找ZigBee设备间的路由信息;不断的接收ZigBee路由器和ZigBee终端发送的数据,每个ZigBee网络有且只能有一个ZigBee协调器。

上述方案中,ZigBee路由器是一种支持关联的ZigBee设备,它允许其它设备通过其加入其所在的ZigBee网络,并且能够实现ZigBee设备与ZigBee设备之间的消息转发功能。一个ZigBee网络中可以存在多个ZigBee路由器。

上述方案中,ZigBee终端用来实现具体的功能,它利用ZigBee网络与其他ZigBee设备进行通信。ZigBee终端没有特定的维持网络结构的责任,可以睡眠或者被唤醒,因此ZigBee终端可以是一个电池供电的设备。

本发明实施例中,第二通信网络是指ZigBee网络,相应地,第二设备是指ZigBee设备,具体地,第二设备可以是ZigBee路由器或是ZigBee终端。

本发明实施例中,第一通信网络是指Internet网络,第一设备为控制端,控制端可以为多种形式:1)云后台;2)通过智能终端的应用(APP)接入云后台;3)笔记本(PC)上的客户端;4)通过浏览器接入云后台。

本发明实施例中,当第一通信网络故障时,网关与第一设备之间处于无法通信状态,这种情况下,网关无法利用第一通信网络接收到第一设备对应的云后台的业务指令,此时,处于第二通信网络中的所有第二设备,如ZigBee设备也将陷入不可被访问的状态。

为了解决第一通信网络失效时,网关无法与第一设备通信而导致第二通信网络中的第二设备不可以被访问的问题,本发明实施例引入了一个ZigBee设备:转发器,它的作用是从第一设备接收第一数据并发送给ZigBee网络中的ZigBee协调器,也即本发明实施例中的网关。具体地,转发器通过与所述第一设备之间的物理接口接收所述第一设备发送的第一数据;转发器通过所述第二通信网络将所述第一数据发送给所述网关。

步骤302:当网关与第一设备之间的第一通信网络处于无法通信状态时,转发器接收所述网关发送的第二数据,将所述第二数据发送给所述第一设备。

与此同时,转发器还接收网关发送给第一设备的第二数据,通过和第一设备之间的物理接口将第二数据转发给第一设备。

具体地,转发器通过所述第二通信网络接收所述网关发送的第二数据。转发器通过与所述第一设备之间的物理接口将所述第二数据发送给所述第一设备。

本发明实施例中,在网关与第一设备之间引入了转发器,当网关与第一设备之间的第一通信网络处于无法通信状态时,利用转发器依然能够维持网关与第一设备之间的通信,从而可以使第一设备正常控制位于第二通信网络中的第二设备,提高了系统的可用性和稳定性。此外,本发明实施例的网关支持两种渠道与第一设备进行互通,一个渠道来自第一通信网络,另一个渠道来自转发器,进一步保障了系统的可用性和稳定性。

本发明实施例的上述方案中,步骤301和步骤302之间没有执行的先后顺序,可以是先执行步骤301后执行步骤302,也可以是先执行步骤302后执行步骤303,还可以是同时执行步骤301和步骤302。

图4为本发明实施例的数据传输方法的流程示意图二,本示例中的数据传输方法应用于网关侧,如图4所示,所述数据传输方法包括以下步骤:

步骤401:当网关与第一设备之间的第一通信网络处于无法通信状态时,网关经转发器接收所述第一设备发送的第一数据,将所述第一数据发送至位于第二通信网络中的第二设备。

本发明实施例以如下具体应用场景为例进行解释说明:第一通信网络为Internet网络,第二通信网络为ZigBee网络,第一设备为计算机,第二设备为ZigBee终端,网关中集成有ZigBee协调器。

首先,网关上的ZigBee协调器进行ZigBee网络的建立,ZigBee路由器和ZigBee终端接入ZigBee网络,ZigBee路由器负责数据的转发功能,ZigBee终端负责执行业务指令,并及时反馈执行结果以及定时上报状态信息到网关。同时,网关也通过有线网络或者无线网络接入到Internet网络,并通过Internet网络登录到云后台,将需要上报的数据上传到云后台。数据的渠道为:云后台<->Internet网络<->网关<->ZigBee网络<->ZigBee终端,整个通信链路建立完成。

在一实施方式中,商家的计算机上安装有业务管理系统(PMS,Property Management System)软件,PMS软件也通过Internet网络接入云后台。PMS软件通过接入云后台,可以实时的对ZigBee网络下的ZigBee终端进行各种业务指令的操作,同时PMS软件也从云后台获取执行的结果以及各个ZigBee终端的运行状态等数据。这样,数据的渠道为:PMS软件<->云后台<->Internet网络<->网关<->ZigBee网络<->ZigBee终端,一条完整的通信链路建立完成。

本发明实施例中,计算机上通过通用串行总线(USB,Universal Serial Bus)接口或者串口连接至转发器,由于转发器是ZigBee网络中的一个特殊的ZigBee设备,设备类型有别于ZigBee路由器和ZigBee终端。网关不仅仅接收来自Internet网络的业务指令,也会定时轮询来自设备类型为转发器的数据,并解析其中的业务指令。

本发明实施例中,所述网关利用所述第一通信网络对所述第一设备进行心跳检测;根据心跳检测结果,判定所述网关与第一设备之间的第一通信网络是否处于通信状态。

具体地,对于Internet网络连接失效的情况,PMS软件和网关都可以通过心跳检测的方式来获得Internet网络连接失败的事件,当检测到Internet网络连接失效时,PMS软件将通信链路由Internet网络切换为ZigBee网络,通过转发器继续向网关发送业务指令,网关通过转发器接收到业务指令,继续下发相应的业务指令到ZigBee终端上执行并接收执行结果。所以在Internet网络失效时,控制端仍可以通过转发器继续和网关通信,业务办理不受影响。

步骤402:当网关与第一设备之间的第一通信网络处于无法通信状态时,网关利用所述第二通信网络接收所述第二设备发送的第二数据,将所述第二数据经所述转发器发送给所述第一设备。

本发明实施例中,当网关与第一设备之间的第一通信网络处于通信状态时,网关利用所述第一通信网络接收所述第一设备发送的第一数据,将所述第一数据发送至位于第二通信网络中的第二设备;网关利用所述第二通信网络接收所述第二设备发送的第二数据,利用所述第一通信网络将所述第二数据发送给所述第一设备。

本发明实施例的方案中,ZigBee网络使用的是TI CC2530ZigBee模块和TI Z-Stack ZigBee协议栈。

基于此,ZigBee网络的建立过程可以通过以下过程来实现:

ZDApp_Init→ZDOInitDevice→ZDApp_NetworkInit→ZDO_StartDevice→N LME_NetworkFormationRequest→ZDO_NetworkFormationConfirmCB。

如果ZDO_NetworkFormationConfirmCB返回失败,再增加信道能量阈值,返回DEV_INIT重新建网。

上述过程中,NLME_NetworkFormationRequest发送建网请求中,包含参数ScanChannels,即信道列表,初始值为DEFAULT_CHANLIST。

上述建网过程中基于能量阈值及信道列表扫描结果,选择信道占用最小(能量最小)的信道来建网。如果建网不成功,再提高能量阈值,重新扫描选择信道。

此外,ZigBee终端和ZigBee路由器加入ZigBee网络可以通过以下过程来实现:

ZDApp_Init→ZDOInitDevice→ZDApp_NetworkInit→ZDO_StartDevice→N LME_NetworkDiscoveryRequest

(DEV_NWK_DISC)

ZDO_beaconNotifyIndCB→保存网络列表

ZDO_NetworkDiscoveryConfirmCB→ZDApp_ProcessOSALMsg→ZDApp_NwkDescListProcessing→NLME_JoinRequest

(DEV_NWK_JOINING)

ZDO_JoinConfirmCB→ZDApp_ProcessNetworkJoin→ZDApp_AnnounceNe wAddress

(DEV_END_DEVICE)

如果入网失败,返回ZDApp_NetworkInit重新入网。

本发明实施例的上述方案中,步骤401和步骤402之间没有执行的先后顺序,可以是先执行步骤401后执行步骤402,也可以是先执行步骤402后执行步骤403,还可以是同时执行步骤401和步骤402。

图5为本发明实施例的转发器的结构组成示意图,如图5所示,所述转发器包括:

第一接收单元51,用于当网关与第一设备之间的第一通信网络处于无法通信状态时,接收所述第一设备发送的第一数据;

第一发送单元52,用于将所述第一数据发送给所述网关,以通过所述网关将所述第一数据发送至位于第二通信网络中的第二设备;

第二接收单元53,用于接收所述网关发送的第二数据;

第二发送单元54,用于将所述第二数据发送给所述第一设备。

本发明实施例中,所述第一发送单元52,还用于通过所述第二通信网络将所述第一数据发送给所述网关;

相应地,所述第二接收单元53,还用于通过所述第二通信网络接收所述网关发送的第二数据。

本发明实施例中,所述第一接收单元51,还用于通过与所述第一设备之间的物理接口接收所述第一设备发送的第一数据;

所述第二发送单元54,还用于通过与所述第一设备之间的物理接口将所述第二数据发送给所述第一设备。

本发明实施例中,转发器具有如下特点:

1)转发器通过串口或者USB接口和第一设备(也即控制端)进行物理上的连接,第一设备需要给转发器供电,转发器是长供电的,不需要休眠。

2)转发器是一个ZigBee设备,可以加入ZigBee网络,加入ZigBee网络后,转发器会发送自己的设备类型到ZigBee协调器,也即本发明实施例中的网关。

网关根据转发器上报的数据可以识别出转发器的设备类型,从而可以区分ZigBee路由器、ZigBee终端和转发器。

第一设备通过串口或者USB接口把第一数据(例如控制命令)发送给转发器,转发器会把从网关收到第二数据通过物理接口发给第一设备,转发器的功能相当于一个数据收发的桥梁,连接网关和第一设备。

上述方案中,转发器是ZigBee网络中的一个ZigBee设备,也会加入到ZigBee网络,通过ZigBee网络接入到网关。同时,转发器通过USB接口或者串口接入到第一设备,和第一设备上的APP进行通信。转发器不需要进行休眠,是一个长期供电的设备(Full Function Device)。转发器可以在应用层将APP的数据转发到网关,同时也接收网关返回的信息,将这些信息转发到APP。

本领域技术人员应当理解,图5所示的转发器中的各单元的实现功能可参照前述数据传输方法方法的相关描述而理解。图5所示的转发器中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。

图6为本发明实施例的网关的结构组成示意图,如图6所示,所述网关包括:

第一接收单元61,用于当网关与第一设备之间的第一通信网络处于无法通信状态时,经转发器接收所述第一设备发送的第一数据;

第一发送单元62,用于将所述第一数据发送至位于第二通信网络中的第二设备;

第二接收单元63,用于利用所述第二通信网络接收所述第二设备发送的第二数据;

第二发送单元64,用于将所述第二数据经所述转发器发送给所述第一设备。

本发明实施例中,所述网关还包括:

第三接收单元65,用于当网关与第一设备之间的第一通信网络处于通信状态时,利用所述第一通信网络接收所述第一设备发送的第一数据;

第三发送单元66,用于当网关与第一设备之间的第一通信网络处于通信状态时,利用所述第一通信网络将所述第二数据发送给所述第一设备。

本发明实施例中,网关利用所述第一通信网络对所述第一设备进行心跳检测;根据心跳检测结果,判定所述网关与第一设备之间的第一通信网络是否处于通信状态。

通常情况下,网关接入Internet网络,与云后台进行通信,同时通过ZigBee网络与ZigBee终端进行通信,如图7所示,转发器不发挥作用。

Internet网络异常情况下,PMS软件通过转发器接入网关,再通过网关下发业务指令到ZigBee终端,如图8所示。

本发明实施例中,商家的计算机接入Internet网络出现问题时,依然可以保证PMS软件配合ZigBee网络进行离线操作,正常执行业务指令,提高了系统的可用性和稳定性。很好的处理了依赖于互联网的业务系统在互联网连接失效时的情景。此外,传统的网关一般都是采用一种方式来接受业务指令,本发明实施例的网关可以支持两种不同渠道的业务指令,一种是来自Internet网络,另一种是来自本地的ZigBee网络,也即转发器。

本领域技术人员应当理解,图6所示的网关中的各单元的实现功能可参照前述数据传输方法方法的相关描述而理解。图6所示的网关中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。

本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。

在本发明所提供的几个实施例中,应该理解到,所揭露的方法和智能设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。

上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。

另外,在本发明各实施例中的各功能单元可以全部集成在一个第二处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

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