CN101247304A - 一种家庭无线控制网络即插即用方法 - Google Patents

一种家庭无线控制网络即插即用方法 Download PDF

Info

Publication number
CN101247304A
CN101247304A CNA2008101023749A CN200810102374A CN101247304A CN 101247304 A CN101247304 A CN 101247304A CN A2008101023749 A CNA2008101023749 A CN A2008101023749A CN 200810102374 A CN200810102374 A CN 200810102374A CN 101247304 A CN101247304 A CN 101247304A
Authority
CN
China
Prior art keywords
address
client
network
network node
server end
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2008101023749A
Other languages
English (en)
Other versions
CN101247304B (zh
Inventor
董炜
叶茂
吉吟东
孙新亚
李嘉扬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Yangtze Delta Region Institute of Tsinghua University Zhejiang
Original Assignee
Tsinghua University
Yangtze Delta Region Institute of Tsinghua University Zhejiang
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University, Yangtze Delta Region Institute of Tsinghua University Zhejiang filed Critical Tsinghua University
Priority to CN2008101023749A priority Critical patent/CN101247304B/zh
Publication of CN101247304A publication Critical patent/CN101247304A/zh
Application granted granted Critical
Publication of CN101247304B publication Critical patent/CN101247304B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

一种家庭无线控制网络用即插即用方法,属于家庭无线控制网络领域,其特征在于,不需要事先为家庭网络中的各个家电设备设定唯一的MAC地址,可以利用各个家电设备上的无线通讯装置中的单片机主控电路的晶振器件的频率误差,或者同时利用上述晶振频率误差和家庭无线网络中的网关的定时功能,来提供用于区分各家电设备身份的信息,从而构成了一个以家庭网关为服务器端,以各家电设备为网络节点的客户端的家庭无线控制网络,其中的各个网络节点均能在地址自动分配的过程中自动产生其唯一的身份标识,以此避免家庭无线控制网络中网关对地址的重复分配,从而实现即插即用。本发明具有可靠性高,适用面广,即插即用,无需MAC地址,且成本低的优点。

Description

一种家庭无线控制网络即插即用方法
技术领域
本发明属于家庭无线控制网络技术领域,涉及其中的即插即用技术。
背景技术
新兴的家庭网络技术逐步改变了传统家电设备作为单独控制设备使用的现状,设备之间的互连互通和信息共享成为一种趋势。家庭网络技术虽然实现了设备之间的互连互通,但早期的家庭网络在建立和变动时需要人工进行配置,其过程异常繁琐,不能自动完成,给用户带来了很大的不便,同时阻碍了家庭网络技术的推广。为了解决这一问题,出现了应用于网络的即插即用技术,它用于实现网络配置及组网过程的自动化。然而,这些技术大多构建于IP协议之上,缺乏对家庭网络内部控制网络及无线网络的支持(而控制网络恰恰又是家庭网络和设备网络的主体,是配置最为繁琐的部分);同时,这些协议在组网的时候依赖于全球唯一的MAC地址,这给即插即用技术的使用带来了较大的限制。
现有的相关技术主要包括UPnP、Jini、SLP、Salutaion、DHCP、IPv6、WLAN、Bluetooth、ZigBee等。
UPnP、Jini、SLP、Salutaion、DHCP等技术主要针对IP网络设计和实现,其即插即用过程必须依赖于MAC地址且难以用于控制网络。Jini通过代理的机制可以实现控制网络的接入,但在控制网络内部无法实现即插即用。
IPv6是较为先进的网络层协议,它在设计时充分考虑了网络自动配置和即插即用机制。IPv6提供两种方式的即插即用:状态自动配置和无状态自动配置。前者采用BOOTP或DHCP协议,而这些协议都是依赖于MAC地址作为网络中各个节点的身份标识;后者采用IEEE EUI-64链路层地址自行生成网络中各节点的IPv6地址,而IEEE EUI-64链路层地址是通过一定的算法由48位MAC地址获得的。可以看到,IPv6的即插即用必须依赖于MAC地址,且无法用于控制网络。
WLAN的地址分配采用的是DHCP协议,它依赖于IP协议和链路层MAC地址。蓝牙(Bluetooth)采用自定义的服务发现协议(Service Discovery Protocol,SDP)实现即插即用,其功能相对简单,且仍然依赖于类似于MAC地址的节点标识,即BD-Address。ZigBee的即插即用过程同样也离不开一个事先分配好的,起MAC地址作用的Unique Identifier。
中国专利号ZL200520054817.3公布了一种基于无线通信的家庭智能监控网络***,用户通过互联网、电话等可以对家庭监控信息进行查询或进行远程家电设备的控制。但这种***的主控机没有自动管理家电设备的功能,***没有实现即插即用。中国专利号ZL200710028499.7公布了一种无线动态组网中设备自动地址分配的装置及其方法,家庭网络中的设备可以通过和主控机之间的注册等操作,实现设备的自动地址分配。但该方法没有能够解决多个设备同时加入时设备地址冲突的问题。
可以看到,现行的所有网络即插即用技术都依赖于一个MAC地址,它用于为网络节点提供独一无二的标识。虽然MAC地址是目前实现网络节点标识的唯一方法,同时也一直在网络配置和组网过程中起着关键的作用,但随着网络技术和应用的发展,基于MAC地址的方案逐渐显现出一些不足:
1)MAC地址需要由一个全球机构(如IEEE)进行管理和分配,这需要投入较大管理成本。
2)任何需要生产能应用做家庭网络中的节点设备或接口设备的硬件的厂商都需要向全球管理机构申请及购买MAC地址,这增高了硬件厂商的生产成本和准入门槛,限制了很多中小型企业的发展。这一点会影响到控制网络和设备网络的发展,因为这些网络不同于计算机网络,中小型企业在其发展中扮演着非常重要的角色。
3)随着网络规模的增长和设备网络的发展,越来越多的网络节点(包括各种嵌入式设备)需要分配MAC地址,这使得MAC地址空间存在被耗尽的危险。
4)目前大多数网络设备或接口(包括家庭网络在内),其硬件中的MAC地址都是可以被改写的(事实上很多小型企业和研发机构确实是这么做的),这极大地增加了网络地址冲突的可能性,使得MAC地址的方案并不能在事实上保证网络节点标识的唯一性。冲突的存在会导致网络节点的失效甚至影响整个网络的功能。
MAC地址存在的唯一作用就是提供独一无二的网络节点的身份标识,以保证网络节点在加入网络时能正确地完成初始化过程,由于以上第3点和第4点原因,这一作用已经无法完全保证,且MAC地址的申请和分配存在较大的管理开销,为产业的发展带来了不便。因而,如果有其它更好的方法产生节点标识,就应该考虑MAC地址的取代方案。事实上,这样的方法是存在的。本发明针对家庭无线控制网络实现了一种完全不需要全球统一分配的MAC地址的网络组网和即插即用方法。
取代MAC地址方案的关键问题是为家庭无线控制网络中的每个节点提供一种唯一不同的信息以进行区别和身份验证,同时不依赖于外在的人为分配。为了区分不同的网络节点,一个自然想到的方法是利用CPU产生随机数作为区分信息。但这一方法存在问题,首先,家庭无线控制网络中的网络节点电路中的处理器是单片机,其计算能力有限,难以实施复杂度较高的随机数生成算法;其次,如果多个网络节点是同时上电的,且软件完全一样的话,其寄存器及内存在相当长的时间内都会是完全一致的,因而难以找到有效的随机种子。
事实上,每个网络节点确实是不同的,但这种不同需要以信息和数据的形式体现出来。如果两个网络节点制造工艺和器件参数完全一样的话,它们最大的不同就是空间位置了,但这种不同点难以利用。剩下可以考虑的不同点包括外在干扰和器件误差,由于外在干扰与环境有关,而器件误差是内在的,所以应该优先考虑器件误差。器件误差中可以考虑的器件主要包括RAM、AD和晶振,从通用性和误差可积累性方面考虑,本发明选择了家庭无线控制网络中网络节点硬件电路中的晶振的频率误差来作为信息源来提供区分信息。
发明内容
本发明的目的是弥补现有网络即插即用技术的不足之处,即针对现行的家庭无线控制网络的网络组网和即插即用方法都依赖于MAC地址这一特点进行改进设计,得到了基本方法;同时提出了一种效率改善及工业化的方法,称之为加速方法。
本发明的特征之一,即基本方法在于:
采用单片机控制电路晶振的器件频率误差作为区分所述家庭无线控制网络内各个网络节点身份的信息源,并利用单片机控制电路进行定时,所述方法依次按如下步骤实现:
步骤(1)初始化
设定服务器端和客户端,其中:
服务器端,是一个家庭网关,内设有一个家电设备无线通讯装置,该装置里由互相连接的所述单片机控制电路和无线射频模块组件构成,该装置设有:发送通道Tx、接收通道Rx和监听通道Lx;
客户端,是各个被控的家电设备所组成的各网络节点,每个网络节点内设有一个所述的家电设备无线通讯装置,其中,各个单片机控制电路中的CPU的晶振的器件频率误差是各不相同的;
步骤(2)设置所述各家电设备无线通讯装置里的网络地址,其步骤如下:
步骤(2.1)服务器端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把接收通道和发送通道的地址均设为“Center_Addr.+0x00”,监听通道的地址设置为“0xFFFFFFFF00”;
步骤(2.2)客户端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把发送通道和接收通道的地址均设置为“0xFFFFFFFFFF”,在通过服务器端的地址注册操作后,同一个所述家电无线控制网络内的各客户端,其发送通道和接收通道的地址均采用“Center_Addr.+Sub_Addr.”形式,其中,“Sub_Addr.”为标识客户端本身的子地址;
步骤(3)服务器端按如下步骤建立地址配置表:
服务器端按各客户端的地址发送查询命令,看各客户端是否发回Ack回复信号判断该地址所对应的客户端是否在线。若在线,则把该地址和对应客户端信息记录到地址配置表中,送入地址池内;
步骤(4)各客户端上电后,均首先运行事先由程序设定的K个指令,然后再向服务器端发送初始化申请;
步骤(5)所述家庭网关在步骤(4)中所述初始化申请后,在设定的时间τ内向各所述网络节点返回一个链路层的确认信号Ack,该时间τ的数量设为100μs;
步骤(6)所述各网络节点接收到步骤(5)中所述的确认Ack信号后,进入等待接收初始化数据的状态;
步骤(7)若所述家庭网关的地址池中分配的地址少于网络节点的个数,则确认网络节点地址存在冲突,该家庭网关收回所有已分配的地址,令K=K×2,返回步骤(4),进行第二轮申请;
步骤(8)所述单片机控制电路中的不同晶振频率误差,使得无线家庭控制网络中的各个网络节点均运行K条指令所耗费的时间不出,因为不同节点发送初试化申请的时间也不同。
本发明的特征之二,即加速方法在于:
采用单片机控制电路晶振的器件频率误差作为区分所述家庭无线控制网络内各个网络节点身份的信息,并利用所述无线家庭控制网络的网关进行定时,所述方法依次依据以下步骤完成:
步骤(1)初始化
设定服务器端和客户端,其中:
服务器端,是一个家庭网关,内设有一个家电设备无线通讯装置,该装置里由互相连接的所述单片机控制电路和无线射频模块组件构成,该装置设有:发送通道Tx、接收通道Rx和监听通道Lx;
客户端,是各个被控的家电设备所组成的各网络节点,每个网络节点内设有一个所述的家电设备无线通讯装置,其中,各个单片机控制电路中的CPU的晶振的器件频率误差是各不相同的;
步骤(2)设置所述各家电设备无线通讯装置里的网络地址,其步骤如下:
步骤(2.1)服务器端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把接收通道和发送通道的地址均设为“Center_Addr.+0x00”,监听通道的地址设置为“0xFFFFFFFF00”;
步骤(2.2)客户端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把发送通道和接收通道的地址均设置为“0xFFFFFFFFFF”,在通过服务器端的地址注册操作后,同一个所述家电无线控制网络内的各客户端,其发送通道和接收通道的地址均采用“Center_Addr.+Sub_Addr.”形式,其中,“Sub_Addr.”为标识客户端本身的子地址;
步骤(3)服务器端按如下步骤建立地址配置表:
服务器端按各客户端的地址发送查询命令,看各客户端是否发回Ack回复信号判断该地址所对应的客户端是否在线。若在线,则把该地址和对应客户端信息记录到地址配置表中,送入地址池内;
步骤(4)所述家庭网关上电后,初始化地址池,然后等待各网络节点的初始化申请;
步骤(5)所有等待加入的所述网络的节点将读取自身EEPROM的固定位置的内容,以确定自身的状态,即是否曾经完成过设置,是否具有分配过的地址;然后根据自身状态发送不同的初始化申请:如果曾经完成过设置,则EEPROM中必包含能进行身份认证的信息和曾经发配过的地址,将之作为此节点的身份标识信息,转步骤(10);若此网络节点没有进行过设置,则通过公共频道(地址设置为“0xFFFFFFFF00”),先向网关发送一个无身份标识的初始化申请,并转入对公共频道(地址设置为“0xFFFFFFFF00”)的接收状态;
步骤(6)网关接收到某个网络节点发来的无身份标识的初始化申请之后,将转入发送状态,通过公共频道(地址设置为“0xFFFFFFFF00”),发送一个包含1BYTE的跳频的目标频道J(0x01~0xFE)的计时开始命令给上述节点;
步骤(7)步骤(6)完成K秒(由程序设定的常数值)后,网关将通过跳频频道(地址设置为“0xFFFFFFFF00+J”)向步骤(6)中所述的网络节点发送计时停止命令;并转入对公共频道(地址设置为“0xFFFFFFFF00”)的接收和监听状态;
步骤(8)网络节点在完成步骤(5)之后,将转入对公共频道(地址设置为“0xFFFFFFFF00”)的监听和接收状态;在接收到网关发来的包含跳频目标频道J的开始计时命令后,初始化变量COUNTER的值为零,启动指令循环“COUNTER++”,同时转入对公共频道(地址设置为“0xFFFFFFFF00+J”)的监听和接收状态,直到接收到网关发来的计时停止命令;
步骤(9)所述网络节点在完成步骤(8)后,对于不同的网络节点,由于晶振频率误差的存在,在相同的时间间隔下,变量COUNTER的计数结果各不相同,此值即可作为身份标识的信息;
步骤(10)所述各网络节点将能作为自身身份的标识的信息,作为初始化申请的内容之一,利用公共频道(地址设置为“0xFFFFFFFF00”),向所述家庭网关进行发送此初始化申请,然后转入对公共频道(地址设置为“0xFFFFFFFF00”)的接收状态;
步骤(11)所述家庭网关在接收到包含身份标识的初始化信息化,即启动地址分配机制;完成分配之后将所分配的地址作为地址分配命令的一部分,通过公共频道(地址设置为“0xFFFFFFFF00”)进行发送;若所述家庭网关地址池中已分配的地址数少于网络节点的个数,则确认各网络节点的地址有冲突,所述家庭网关便回收所有已分配地址,令T=T×2,返回步骤(4),进行第二轮申请。
完成地址分配后,家庭网关通过获取存储在网络节点中的设备配置文件对网络节点进行进一步的操作。
与现有技术相比,本发明所具有的有益效果是:
第一,实现了家庭无线控制网络的动态组网和即插即用,免去了繁琐的控制网络配置过程,提高了家庭无线控制网络***的易用性,实现了家电设备的自动管理。
第二,实现了完全无需MAC地址的自动组网和即插即用功能,免去了申请MAC带来的附加成本和额外负担,并且从根本上避免了MAC地址空间耗尽和潜在地址冲突的危险。
第三,在无需MAC地址的条件下,通过地址分配加速算法有效提高了自动地址分配的效率,达到了与有MAC地址的地址分配相当的效果。
第四,本发明利用了普通晶振的固有器件误差来作为区分网络节点的信息源,任何类型的网络节点均可采用该方法实现节点标识和区分,具有原理简单、实现方便、成本低廉、适用面广的优点。
附图说明
图1:家电设备无线通讯装置硬件结构原理框图。
图2:家电设备无线即插即用技术流程图。
图3:扫描客户端网络地址操作流程图。
图4:监听客户端加入申请操作流程图。
图5:分配网络地址操作流程图。
图6:地址冲突检测及规避操作流程图。
具体实施方式
1.家电设备无线通讯装置的硬件设计
家电设备无线通讯装置包括单片机控制电路和独立的无线射频电路。单片机控制电路的处理器为ATMEGA32L,工作电压为3.3V,晶振频率为4MHz。无线射频电路中的处理器采用nRF24L01,晶振频率为16MHz。单片机控制电路与无线射频电路的管脚连接如下:
单片机的43管脚(CE)与NRF24L01芯片的1管脚(CE)相连接;单片机的44管脚(CSN)与NRF24L01芯片的2管脚(CSN)相连接;单片机的1管脚(MOSI)与NRF24L01芯片的4管脚(MOSI)相连接;单片机的2管脚(MISO)与NRF24L01芯片的5管脚(MISO)相连接;单片机的3管脚(SCK)与NRF24L01芯片的3管脚(SCK)相连接;单片机的11管脚(INTO)与NRF24L01芯片的6管脚(IRQ)相连接。
2.家电设备无线通讯装置的网络地址设置规则
家电设备无线通讯装置分为服务器端和客户端。服务器端主要功能为:负责各加入家庭无线控制网络的客户端(网络节点)的地址分配、地址冲突检测及规避、向客户端发送命令数据等。客户端(网络节点)主要功能为:向服务器端发出加入网络的申请、接收服务器发送的命令并执行相关动作等。
服务器端包括3个通讯通道:发送通道Tx、接收通道Rx和监听通道Lx。其中Tx为负责向外部发送数据;Rx负责接收外部数据;Lx负责监听客户端申请加入请求。除了在接收到有效数据后能自动回复Ack信号之外,Rx和Lx均不能向外部发送数据。
客户端也包括3个通讯通道:发送通道Tx、接收通道Rx和监听通道Lx。其中Tx负责向外部发送数据;Rx负责接收外部数据;Lx主要在地址发生冲突时作为备用接收通道,接收服务器端命令,进行地址冲突规避操作。同服务器端一样,Rx和Lx除了在接收到有效数据后能自动回复Ack信号之外,不能向外部发送数据。
根据nRF24L01的工作特性,无论是服务器端还是客户端,其发送通道Tx和监听通道Lx不能同时处于工作状态,即:
发送通道Tx处于工作状态时,监听通道Lx不能接收任何其他信息;而监听通道Lx工作时,发送通道Tx不能发送任何信息。
接收通道Rx则一直保持工作状态,不过当发送通道Tx处于工作状态时,接收通道Rx只可以接收客户端的Ack回复信号。
无论服务器端还是客户端,其各个通讯通道均可以设置自己单独的地址,其值为5个字节的16进制数。
服务器端开机之后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并将Tx和Rx地址设置为“Center_Addr.+0x00”(“Center_Addr.”为4个字节),将Lx的地址设置为公共频道“0xFFFFFFFF00”。
客户端开机之后,首先启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并将Tx和Rx地址均设置为公共频道“0xFFFFFFFFFF”。在完成向网关发送加入网络的申请,并在完成后续的一系列地址分配及设置操作之后,将其Tx和Rx通道的地址均设置为“Center_Addr.+Sub_Addr.”形式。其中“Center_Addr.”为4个字节,与服务器端Tx和Rx地址中的“Center_Addr.”保持一致,最后一个字节“Sub_Addr.”为标识本身的子地址,所有地址的分配和调整均由服务器端负责完成;不同客户端的“Sub_Addr.”互不相同。客户端Lx的地址则设置为“0xFFFFFF00+自身的Sub_Addr.”形式。
3.家电设备无线即插即用技术实施细节
一个完整的家电设备无线即插即用技术包括下面两个阶段:
阶段1.服务器端扫描阶段
服务器端开机之后首先关闭监听通道Lx,启用发送通道Tx和接收通道Rx,设置两者地址为“Center_Addr.+0x00”。
服务器端通过发送通道Tx向地址“Center_Addr.+Sub_Addr.”(Sub_Addr.依次从0x01到0xFE,共计254个)发送查询命令,并通过接收通道Rx监听该地址是否有客户端Ack回复信号,以此来检测该地址是否对应有客户端在线。如果服务器端收到客户端Ack信号,说明该地址对应客户端在线,服务器端将在地址配置状态总表中标注该地址已被占用并正在工作。
所有扫描操作结束之后,服务器端将得到一个记录当前所有地址占用状态的地址配置状态总表。
阶段2.服务器端监听阶段
服务器端在完成阶段1之后,将关闭发送通道Tx和接收通道Rx,启用监听通道Lx,设置其地址为“0xFFFFFFFF00”,进入监听模式,监听客户端的加入申请。
客户端开机之后,将关闭监听通道Lx,启用发送通道Tx和接收通道Rx,并以“0xFFFFFFFFFF”作为Tx和Rx的初始地址。
客户端通过发送通道Tx,向服务器端监听通道Lx(地址“0xFFFFFFFF00”)发送加入申请信息。如果客户端未曾分配过地址,其申请信息中包含的地址内容将为空;如果客户端曾经分配过地址,其申请信息中包含的地址内容将为以前分配过的地址信息。随后客户端通过接收通道Rx监听服务器端的Ack回复信号。
服务器端监听通道Lx接收到客户端发送的加入申请后,自动给客户端回复Ack信号。客户端在收到服务器端Ack回复信号后,将关闭其发送通道Tx,打开接收通道Rx,并将其地址设置为“0xFFFFFFFFFF”。
服务器端将关闭监听通道Lx,根据加入申请信息中的地址内容是否为空,判断该客户端是否曾经分配过地址,将其分为下列两种情况处理:
情况1.客户端未分配过地址
服务器端启用发送通道Tx和接收通道Rx,并将两者的网络地址设置为“0xFFFFFFFFFF”,通过发送通道Tx发送计时开始命令,其中包含有跳频的目标频率号J(0x01~0xFE),并通过接收通道Rx监听客户端的Ack回复信号。
客户端接收通道Rx接收到计时开始命令(包含跳频的目标频率号J)之后,自动向服务器端回复Ack信号。客户端随后开始循环执行“COUNTER++”直到收到计时停止命令。
在K秒的指令周期渡过后,服务器端向地址“0x0000000000+J”发送计时停止命令,并通过接收通道Rx监听客户端的Ack回复信号。
客户端接收通道Rx接收到计时停止命令之后,自动向服务器端回复Ack信号。客户端随后停止执行“COUNTER++”,启用发送通道Tx和接收通道Rx,并将两者的网络地址设置为“0xFFFFFFFFFF”,开始发送包含变量COUNTER值的加入申请。
服务器端关闭发送通道Tx,打开监听通道Lx(并设置地址为0xFFFFFFFFFF)接收客户端发送的,带有身份标识(即变量COUNTER的值)的加入申请。在收到加入申请后自动回复ACK信号。
服务器端查询地址配置表,产生新地址“Center_Addr.+New_Sub_Addr.”。
服务器端启用发送通道Tx和接收通道Rx,并将两者的网络地址设置为“0xFFFFFFFFFF”,通过发送通道Tx将新地址分配命令向客户端发送。
服务器端通过接收通道Rx监听客户端的Ack回复信号。
客户端接收通道Rx接收到新地址分配命令之后,自动向服务器端回复Ack信号。客户端随后关闭发送通道Tx,启用接收通道Rx和监听通道Lx,并将Tx和Rx的地址设置为新地址“Center_Addr.+New_Sub_Addr.”,将Lx的地址设置为“0xFFFFFF00+New_Sub_Addr.”,以便在今后网络地址发生冲突时作为备用通道进行地址冲突规避操作。
服务器端接收通道Rx在接收到客户端回复的Ack信号之后,在地址配置表中添加该地址记录,并将发送通道Tx和接收通道Rx的地址设置回“Center_Addr.+0x00”。
至此,客户端和服务器端分别完成对该客户端的地址设置和注册工作。
最后服务器端返回到到阶段2,继续监听新客户端的加入申请。
情况2.客户端已配置地址“Center_Addr.+Sub_Addr.”
服务器端首先启用发送通道Tx和接收通道Rx,将两者的地址设置为“0xFFFFFFFF00”。随后服务器端将查询地址配置表,看该地址是否对应有客户端注册在线。
(1)地址“Center_Addr.+Sub_Addr.”在当前家庭控制网络中未被占用
说明该地址未发生冲突,服务器端通过发送通道Tx向客户端发送申请加入确认命令,并通过接收通道Rx监听客户端的Ack回复信号。
客户端接收通道Rx接收到服务器端发送的申请加入确认命令之后,将自动回复Ack信号。随后客户端将发送通道Tx和接收通道Rx的地址均设置为“Center_Addr.+Sub_Addr.”,启用监听通道Lx,并将其地址设置为“0xFFFFFFFF+Sub_Addr.”,以便在今后网络地址发生冲突时作为备用通道进行地址冲突规避操作。
服务器端接收通道Rx在接收到客户端的Ack回复信号之后,在地址配置表中添加该地址记录,并将发送通道Tx和接收通道Rx的地址设置回“Center_Addr.+0x00”。
至此,客户端和服务器端分别完成对该客户端的地址设置和注册工作。
最后服务器端返回到到阶段2,继续监听新客户端的加入申请。
(2)地址“Center_Addr.+Sub_Addr.”已被占用
说明该地址发生冲突,此时需要进行地址冲突规避操作。服务器首先通过查询地址配置表,产生新地址“Center_Addr.+New_Sub_Addr.”。
服务器端通过发送通道Tx将新地址分配命令向已注册客户端的监听通道Lx发送,并通过接收通道Rx监听已注册客户端的Ack回复信号。
此时对于地址发生冲突的客户端而言,只有已注册客户端的监听通道Lx是打开的,因此只有它将收到服务器端发送的新地址分配命令。而尚未注册的客户端无法收到该信息。
已注册客户端的监听通道Lx在收到新地址分配命令之后,将自动向服务器端回复Ack信号。随后已注册客户端将发送通道Tx和接收通道Rx的地址修改为“Center_Addr.+New_Sub_Addr.”,将监听通道Lx的地址设置为“0xFFFFFFFF+New_Sub_Addr.”。
服务器端接收通道Rx在收到已注册客户端回复的Ack信号之后,在地址配置表中添加新地址记录“Center_Addr.+New_Sub_Addr.”。
至此,已注册客户端和服务器分别完成对该客户端的地址修改和注册工作。
随后服务器通过发送通道Tx向未注册客户端发送申请加入确认命令,并通过接收通道Rx监听未注册客户端回复的Ack信号。
未注册客户端接收通道Rx在接收到申请加入确认命令之后,将自动向服务器端回复Ack信号。随后未注册客户端将发送通道Tx和接收通道Rx的地址均设置为“Center_Addr.+Sub_Addr.”,启用监听通道Lx,并将其地址设置为“0xFFFFFFFF+Sub_Addr.”,以便在今后网络地址发生冲突时作为备用通道进行地址冲突规避操作。
服务器端接收通道Rx在接收到未注册客户端的Ack回复信号之后,在地址配置表中添加该地址记录,并将发送通道Tx和接收通道Rx的地址设置回“Center_Addr.+0x00”。
至此,未注册客户端和服务器端分别完成对该客户端的地址设置和注册工作。

Claims (2)

1、一种家庭无线控制网络用即插即用方法,其特征在于:
采用单片机控制电路晶振的器件频率误差作为区分所述家庭无线控制网络内各个网络节点身份的信息源,并利用单片机控制电路本身来进行定时,所述方法依次按如下步骤实现:
步骤(1)初始化
设定服务器端和客户端,其中:
服务器端,是一个家庭网关,内设有一个家电设备无线通讯装置,该装置里由互相连接的所述单片机控制电路和无线射频模块组件构成,该装置设有:发送通道Tx、接收通道Rx和监听通道Lx;
客户端,是各个被控的家电设备所组成的各网络节点,每个网络节点内设有一个所述的家电设备无线通讯装置,其中,各个单片机控制电路中的CPU的晶振的器件频率误差是各不相同的;
步骤(2)设置所述各家电设备无线通讯装置里的网络地址,其步骤如下:
步骤(2.1)服务器端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把接收通道和发送通道的地址均设为“Center_Addr.+0x00”,监听通道的地址设置为“0xFFFFFFFF00”;
步骤(2.2)客户端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把发送通道和接收通道的地址均设置为“0xFFFFFFFFFF”,在通过服务器端的地址注册操作后,同一个所述家电无线控制网络内的各客户端,其发送通道和接收通道的地址均采用“Center_Addr.+Sub_Addr.”形式,其中,“Sub_Addr.”为标识客户端本身的子地址;
步骤(3)服务器端按如下步骤建立地址配置表:
服务器端按各客户端的地址发送查询命令,看各客户端是否发回Ack回复信号判断该地址所对应的客户端是否在线;若在线,则把该地址和对应客户端信息记录到地址配置表中,送入地址池内;
步骤(4)各客户端上电后,均首先运行事先由程序设定的K个指令,然后再向服务器端发送初始化申请;
步骤(5)所述家庭网关在步骤(4)中所述初始化申请后,在设定的时间τ内向各所述网络节点返回一个链路层的确认信号Ack,该时间τ的数量设为100μs;
步骤(6)所述各网络节点接收到步骤(5)中所述的确认Ack信号后,进入等待接收初始化数据的状态;
步骤(7)若所述家庭网关的地址池中分配的地址少于网络节点的个数,则确认网络节点地址存在冲突,该家庭网关收回所有已分配的地址,令K=K×2,返回步骤(4),进行第二轮申请;
步骤(8)所述单片机控制电路中的不同晶振频率误差,使得无线家庭控制网络中的各个网络节点均运行K条指令所耗费的时间不出,因为不同节点发送初试化申请的时间也不同。
2、一种家庭无线控制网络用即插即用方法,其特征在于:
采用单片机控制电路晶振的器件频率误差作为区分所述家庭无线控制网络内各个网络节点身份的信息源,并利用所述家庭无线网络的网关来进行定时,所述方法依次依据以下步骤完成:
步骤(1)初始化
设定服务器端和客户端,其中:
服务器端,是一个家庭网关,内设有一个家电设备无线通讯装置,该装置里由互相连接的所述单片机控制电路和无线射频模块组件构成,该装置设有:发送通道Tx、接收通道Rx和监听通道Lx;
客户端,是各个被控的家电设备所组成的各网络节点,每个网络节点内设有一个所述的家电设备无线通讯装置,其中,各个单片机控制电路中的CPU的晶振的器件频率误差是各不相同的;
步骤(2)设置所述各家电设备无线通讯装置里的网络地址,其步骤如下:
步骤(2.1)服务器端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把接收通道和发送通道的地址均设为“Center_Addr.+0x00”,监听通道的地址设置为“0xFFFFFFFF00”;
步骤(2.2)客户端开机后,启用发送通道Tx和接收通道Rx,关闭监听通道Lx,并把发送通道和接收通道的地址均设置为“0xFFFFFFFFFF”,在通过服务器端的地址注册操作后,同一个所述家电无线控制网络内的各客户端,其发送通道和接收通道的地址均采用“Center_Addr.+Sub_Addr.”形式,其中,“Sub_Addr.”为标识客户端本身的子地址;
步骤(3)服务器端按如下步骤建立地址配置表:
服务器端按各客户端的地址发送查询命令,看各客户端是否发回Ack回复信号判断该地址所对应的客户端是否在线;若在线,则把该地址和对应客户端信息记录到地址配置表中,送入地址池内;
步骤(4)所述家庭网关上电后,初始化地址池,然后等待各网络节点的初始化申请;
步骤(5)所有等待加入的所述网络的节点将读取自身EEPROM的固定位置的内容,以确定自身的状态,即是否曾经完成过设置,是否具有分配过的地址;然后根据自身状态发送不同的初始化申请:如果曾经完成过设置,则EEPROM中必包含能进行身份认证的信息和曾经发配过的地址,将之作为此节点的身份标识信息,转步骤(10);若此网络节点没有进行过设置,则通过公共频道(地址设置为“0xFFFFFFFF00”),先向网关发送一个无身份标识的初始化申请,并转入对公共频道(地址设置为“0xFFFFFFFF00”)的接收状态;
步骤(6)网关接收到某个网络节点发来的无身份标识的初始化申请之后,将转入发送状态,通过公共频道(地址设置为“0xFFFFFFFF00”),发送一个包含1BYTE的跳频的目标频道J(0x01~0xFE)的计时开始命令给上述节点;
步骤(7)步骤(6)完成K秒(由程序设定的常数值)后,网关将通过跳频频道(地址设置为“0xFFFFFFFF00+J”)向步骤(6)中所述的网络节点发送计时停止命令;并转入对公共频道(地址设置为“0xFFFFFFFF00”)的接收和监听状态;
步骤(8)网络节点在完成步骤(5)之后,将转入对公共频道(地址设置为“0xFFFFFFFF00”)的监听和接收状态;在接收到网关发来的包含跳频的目标频道J的开始计时命令后,初始化变量COUNTER的值为零,启动指令循环“COUNTER++”,同时转入对公共频道(地址设置为“0xFFFFFFFF00+J”)的监听和接收状态,直到接收到网关发来的计时停止命令;
步骤(9)所述网络节点在完成步骤(8)后,对于不同的网络节点,由于晶振频率误差的存在,在相同的时间间隔下,变量COUNTER的计数结果各不相同,此值即可作为身份标识的信息;
步骤(10)所述各网络节点将能作为自身身份的标识的信息,作为初始化申请的内容之一,利用公共频道(地址设置为“0xFFFFFFFF00”),向所述家庭网关进行发送此初始化申请,然后转入对公共频道(地址设置为“0xFFFFFFFF00”)的接收状态;
步骤(11)所述家庭网关在接收到包含身份标识的初始化信息化,即启动地址分配机制;完成分配之后将所分配的地址作为地址分配命令的一部分,通过公共频道(地址设置为“0xFFFFFFFF00”)进行发送;若所述家庭网关地址池中已分配的地址数少于网络节点的个数,则确认各网络节点的地址有冲突,所述家庭网关便回收所有已分配地址,令T=T×2,返回步骤(4),进行第二轮申请。
CN2008101023749A 2008-03-21 2008-03-21 一种用于家庭无线控制网络中的即插即用方法 Expired - Fee Related CN101247304B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101023749A CN101247304B (zh) 2008-03-21 2008-03-21 一种用于家庭无线控制网络中的即插即用方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101023749A CN101247304B (zh) 2008-03-21 2008-03-21 一种用于家庭无线控制网络中的即插即用方法

Publications (2)

Publication Number Publication Date
CN101247304A true CN101247304A (zh) 2008-08-20
CN101247304B CN101247304B (zh) 2011-01-26

Family

ID=39947526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101023749A Expired - Fee Related CN101247304B (zh) 2008-03-21 2008-03-21 一种用于家庭无线控制网络中的即插即用方法

Country Status (1)

Country Link
CN (1) CN101247304B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101982842A (zh) * 2010-09-29 2011-03-02 北京时代民芯科技有限公司 一种智能家电的遥控器及组网控制方法
CN104052629A (zh) * 2013-03-13 2014-09-17 联想(北京)有限公司 一种监控方法及电子设备
WO2015010548A1 (zh) * 2013-07-24 2015-01-29 深圳市福云明网络科技有限公司 一种傻瓜式连接Wi-Fi相机到互联网的方法及***
CN110442059A (zh) * 2019-08-02 2019-11-12 珠海格力电器股份有限公司 被控设备拓展方法、装置及控制设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100367741C (zh) * 2005-09-06 2008-02-06 大连海事大学 一种基于单片机短数据包收发的mini tcp/ip协议栈的实现方法
CN101068228A (zh) * 2007-06-11 2007-11-07 美的集团有限公司 无线动态组网中设备自动地址分配的装置及其方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101982842A (zh) * 2010-09-29 2011-03-02 北京时代民芯科技有限公司 一种智能家电的遥控器及组网控制方法
CN101982842B (zh) * 2010-09-29 2013-07-17 北京时代民芯科技有限公司 一种智能家电的遥控器及组网控制方法
CN104052629A (zh) * 2013-03-13 2014-09-17 联想(北京)有限公司 一种监控方法及电子设备
WO2015010548A1 (zh) * 2013-07-24 2015-01-29 深圳市福云明网络科技有限公司 一种傻瓜式连接Wi-Fi相机到互联网的方法及***
CN110442059A (zh) * 2019-08-02 2019-11-12 珠海格力电器股份有限公司 被控设备拓展方法、装置及控制设备

Also Published As

Publication number Publication date
CN101247304B (zh) 2011-01-26

Similar Documents

Publication Publication Date Title
JP4415789B2 (ja) 無線通信システム
US8977738B2 (en) Automated discovery of monitoring devices on a network
CN100521613C (zh) 家庭网络***
CN103999427B (zh) 通过路由器提供虚拟化的可见性
CN101247304B (zh) 一种用于家庭无线控制网络中的即插即用方法
US20030079000A1 (en) Methods and apparatus for configuring multiple logical networks of devices on a single physical network
CN103797774B (zh) 一种网络地址转换设备及方法
US20090024727A1 (en) Network system management method
US7430591B2 (en) Methods and arrangements for configuring functional networks
CN103312573A (zh) 一种家庭网络***设备发现与识别协议
CN106341468B (zh) 一种智能设备的远程唤醒方法、装置及***
WO2007107624A2 (en) Method for the resolution of addresses in a communication system
CN102710809B (zh) 地址分配方法
CN102685273B (zh) 智能设备的地址分配方法
US20090073972A1 (en) Address management method and message transmitting and receiving method in network control system
CN102694881B (zh) 智能设备的地址分配方法
CN108234562A (zh) 一种设备控制方法、控制设备和受控设备
US20090024726A1 (en) Device for network system and method of transmitting profile
CN103636170A (zh) 具有通信单元的家用电器、具有这种家用电器的***和用于实现家用电器与另一设备之间的通信的方法
TWI631842B (zh) A virtual communication method constructed in a physical communication protocol
KR20070117585A (ko) 네트워크 시스템의 네트워크 프로파일 구성 방법
JP2004538689A (ja) 多数のホームネットワーク分離方法
CN102904978A (zh) 泛在网络内泛在设备实现通用即插即用的方法
KR20080069347A (ko) 지그비 망의 재구성 방법
CN102710808B (zh) 智能设备的地址分配方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110126

Termination date: 20200321

CF01 Termination of patent right due to non-payment of annual fee