CN111901210A - 基于设备网络的语音设备唤醒方法、装置、介质及设备 - Google Patents
基于设备网络的语音设备唤醒方法、装置、介质及设备 Download PDFInfo
- Publication number
- CN111901210A CN111901210A CN202010668425.5A CN202010668425A CN111901210A CN 111901210 A CN111901210 A CN 111901210A CN 202010668425 A CN202010668425 A CN 202010668425A CN 111901210 A CN111901210 A CN 111901210A
- Authority
- CN
- China
- Prior art keywords
- node
- master
- voice
- voice equipment
- equipment
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000011664 signaling Effects 0.000 claims description 123
- 230000006855 networking Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 abstract description 8
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000002618 waking effect Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/282—Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L12/2816—Controlling appliance services of a home automation network by calling their functionalities
- H04L12/2821—Avoiding conflicts related to the use of home appliances
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
- H04L2012/284—Home automation networks characterised by the type of medium used
- H04L2012/2841—Wireless
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种基于设备网络的语音设备唤醒方法、装置、介质及设备,所述设备网络中包括一个作为master节点的语音设备和两个以上作为slave节点的语音设备;在所属语音设备为slave节点的情况下,当接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备;在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求,并根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。本发明提供的方案能够避免一呼百应的情况。
Description
技术领域
本发明涉及控制领域,尤其涉及一种基于设备网络的语音设备唤醒方法、装置、介质及设备。
背景技术
在智能家居的实际场景中,存在同一空间内多台设备共享同一唤醒词的情况。在用户说出唤醒词后,这些设备被同时唤醒,产生“一呼百应”的现象。
发明内容
本发明的主要目的在于克服上述现有技术的缺陷,提供一种基于无线局域网的语音设备唤醒方法、装置、介质及设备,以解决现有技术中在智能家居的语音控制场景中存在“一呼百应”的现象的问题。
本发明一方面提供了一种基于设备网络的语音设备唤醒方法,所述设备网络中包括一个作为master节点的语音设备和两个以上作为slave节点的语音设备;所述方法,包括:在所属语音设备为slave节点的情况下,当接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备;在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求,并根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
可选地,通过如下方式创建所述设备网络;节点启动后,若所属语音设备在第一预设时间内未收到节点启动master信令,则所属语音设备成为master节点,并广播相应的组网信令;若在第一预设时间内接收到节点启动master信令,则所属语音设备成为slave节点,记录master节点信息,并广播相应的组网信令。
可选地,还包括:在所属语音设备成为master节点或slave节点后,若接收到新加入的节点的组网信令,则将所述新加入的节点的节点信息加入所属语音设备的节点列表中;和/或,对于所属语音设备的节点列表中的每个节点,判断最后一次接收到所述节点的信令的时间距当前时间的间隔时间是否超过第二预设时间;若判断所述间隔时间超过所述第二预设时间,则将所述节点从所属语音设备的节点列表中删除。
可选地,还包括:若从所属语音设备的节点列表中删除了master节点,且在第三预设时间内未接收到master信令,则所属语音设备成为master节点;和/或,若所属语音设备为slave节点,且所属语音设备的节点列表中已经标记第一节点为master节点,若接收到第二节点发送的master信令,则判断所述第一节点发送心跳信息的间隔时间是否超过第四预设时间;若判断所述间隔时间超过所述第四预设时间,则在所属语音设备的节点列表中标记所述第二节点为master节点;和/或,当所属语音设备为master节点时,若接收到来自其他节点的master信令,则比较所属语音设备的MAC地址和所述master信令中的MAC地址的大小关系;若所属语音设备的MAC地址大于所述master信令中的MAC地址,则所属语音设备变更为slave节点。
本发明另一方面提供了一种基于设备网络的语音设备唤醒装置,所述设备网络中包括一个作为master节点的语音设备和两个以上作为slave节点的语音设备;所述装置,包括:第一接收单元,用于在所属语音设备为slave节点的情况下,接收唤醒命令;发送单元,用于当所述第一接收单元接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备;和/或,第二接收单元,用于在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求;仲裁单元,用于根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
可选地,还包括:创建单元,用于通过如下方式创建所述设备网络;节点启动后,若所属语音设备在第一预设时间内未收到节点启动master信令,则所属语音设备成为master节点,并广播相应的组网信令;若在第一预设时间内接收到节点启动master信令,则所属语音设备成为slave节点,记录master节点信息,并广播相应的组网信令。
可选地,所述创建单元,还用于:在所属语音设备成为master节点或slave节点后,若接收到新加入的节点的组网信令,则将所述新加入的节点的节点信息加入所属语音设备的节点列表中;和/或,对于所属语音设备的节点列表中的每个节点,判断最后一次接收到所述节点的信令的时间距当前时间的间隔时间是否超过第二预设时间;若判断所述间隔时间超过所述第二预设时间,则将所述节点从所属语音设备的节点列表中删除。
可选地,所述创建单元,还用于:若从所属语音设备的节点列表中删除了master节点,且在第三预设时间内未接收到master信令,则所属语音设备成为master节点;和/或,若所属语音设备为slave节点,且所属语音设备的节点列表中已经标记第一节点为master节点,若接收到第二节点发送的master信令,则判断所述第一节点发送心跳信息的间隔时间是否超过第四预设时间;若判断所述间隔时间超过所述第四预设时间,则在所属语音设备的节点列表中标记所述第二节点为master节点;和/或,当所属语音设备为master节点时,若接收到来自其他节点的master信令,则比较所属语音设备的MAC地址和所述master信令中的MAC地址的大小关系;若所属语音设备的MAC地址大于所述master信令中的MAC地址,则所属语音设备变更为slave节点。
本发明又一方面提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。
本发明再一方面提供了一种语音设备,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任一所述方法的步骤。
本发明再一方面提供了一种语音设备,包括前述任一所述的语音设备唤醒装置。
根据本发明的技术方案,基于无线通信方式创建设备网络,网络中选举出唯一的master节点,其他的节点为slave节点;在用户尝试唤醒时,识别到唤醒命令的设备相互沟通,决定哪台设备来响应用户,避免一呼百应的情况;用户只需要开启相应功能,不需要用户指定主节点,网络中能够随机选举出唯一的master节点,在接收到唤醒命令所有节点通过向master节点发送仲裁请求,由master节点执行仲裁算法,选出响应唤醒命令的唯一节点。其他节点检测到master节点心跳超时,主动成为新的master节点,不会影响唤醒命令的正常响应执行。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明提供的基于设备网络的语音设备唤醒方法的一实施例的方法示意图;
图2是根据本发明一个具体实施例的节点角色的变更过程示意图;
图3是本发明提供的基于设备网络的语音设备唤醒装置的一实施例的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明提供一种基于设备网络的语音设备唤醒方法。
具体地,基于无线通信方式创建设备网络,所述无线通信方式例如包括WiFi局域网、ZigBee网络、蓝牙mesh网络。所述设备网络中包括一个作为master节点(主节点)的语音设备和两个以上作为slave节点(从节点)的语音设备。master节点只有一个,每个节点都会维护网络中所有节点的信息,并标记出哪一个是master节点。例如每个节点维护有一个节点列表,设备网络中所有节点的信息保存在所述节点列表中,并标记出master节点。本发明方法可以在所述设备网络中的每个语音设备中实施。
图1是本发明提供的基于无线局域网的语音设备唤醒方法的一实施例的方法示意图。
如图1所示,根据本发明的一个实施例,所述语音设备唤醒方法至少包括步骤S110和步骤S120。
步骤S110,在所属语音设备为slave节点的情况下,当接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
具体地,所述仲裁请求中可以包含所属语音设备与所述唤醒命令的声源的距离信息和/或所属语音设备接收到的唤醒命令的声音能量信息。所属语音设备作为slave节点时,当接收到唤醒指令时,获取接收到的唤醒命令(唤醒语音)的声音能量大小,向作为master节点的语音设备发送包含声音能量信息的仲裁请求;或者根据所述声音能量大小计算所属语音设备与所述唤醒命令的声源的距离,向作为master节点的语音设备发送包含所述距离的仲裁请求。作为master节点的语音设备,根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的声音能量信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较声音能量的大小,确定接收到的唤醒命令的声音能量较大的slave节点设备响应所述唤醒命令;或者,作为master节点的语音设备,根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的距离信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较距离的远近,确定距离所述唤醒命令的声源最近的slave节点设备响应所述唤醒命令。在所属语音设备为slave节点的情况下,在接收到唤醒命令向作为master节点的语音设备发送仲裁请求后,接收所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备的仲裁结果,所述仲裁结果包括响应所述唤醒命令的设备的设备标识,例如MAC地址,若所属语音设备为响应所述唤醒命令的设备,则响应所述唤醒命令,即所属语音设备被唤醒。
步骤S120,在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求,并根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
所属设备作为master节点时,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求,所述仲裁请求中可以包含所属语音设备与所述唤醒命令的声源的距离信息和/或所属语音设备接收到的唤醒命令的声音能量信息。所属语音设备作为master节点根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的声音能量信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较声音能量的大小,确定接收到的唤醒命令的声音能量较大的slave节点设备响应所述唤醒命令;或者,作为master节点的语音设备,根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的距离信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较距离的远近,确定距离所述唤醒命令的声源最近的slave节点设备响应所述唤醒命令。在所属语音设备为master节点的情况下,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备后,向所述两个以上作为slave节点的语音设备发送仲裁结果,由确定的响应所述唤醒命令的设备响应唤醒命令,其他设备保持待唤醒状态,所述仲裁结果包括响应所述唤醒命令的设备的设备标识,例如MAC地址,作为slave节点的语音设备根据所述设备标识确定自身是否为响应所述唤醒命令的设备,若是,则响应所述唤醒命令,即被唤醒。
在一种具体实施方式中,通过如下方式创建所述设备网络;
节点启动后,若所属语音设备在第一预设时间内未收到master信令,则所属语音设备成为master节点,并广播master信令;若在第一预设时间内接收到节点启动master信令,则所属语音设备成为slave节点,记录master节点信息,并广播相应的组网信令。
具体地,所述无线通信方式例如包括WiFi局域网、ZigBee网络、蓝牙mesh网络。例如,所有待组网的语音设备均接入同一无线局域网。其中,可以通过所述设备网络中的任一语音设备启动所述设备网络中的各个节点(语音设备),即开启本发明所实现的功能。例如用户通过向任一语音设备下达节点启动命令(例如包括语音命令或按键命令)启动网络中的各个节点,接收到所述启动命令的语音设备,通过局域网广播发送节点启动信令,所述设备网络中的各个语音设备(包括该发送节点启动master信令的语音设备)接收所述节点启动信令。
当任一语音设备接收到所述节点启动信令,则作为节点启动,节点启动时,网络中的所有节点都作为slave节点启动,任一节点启动后,接收master信令,所述master信令即已经成为master节点的设备发送的组网信令,表明自己已经成为master节点;若在第一预设时间内没有接收到master信令,说明还没有master节点,则主动成为master节点,并开始广播master信令,表明自己已经成为master节点,所述master信令中包括master节点的设备标识(例如MAC地址),此时网络创建成功。任一语音设备,若在第一预设时间内接收到master信令,表明已经产生master节点,则继续作为slave节点,记录master节点的信息,并广播组网信令,作为slave节点广播的所述组网信令中包括slave节点的设备标识(例如MAC地址)。
在所属语音设备成为master节点或slave节点后,若接收到新加入的节点的组网信令,则将所述新加入的节点的节点信息加入所属语音设备的节点列表中。例如,任一语音设备,若在第一预设时间内接收到所述节点启动master信令,则继续作为slave节点,记录master节点的信息,并广播组网信令。网络中的其他节点设备接收到该节点的组网信令,将该节点作为新节点加入到自己的节点列表中,例如将该节点的设备标识加入到自己的节点列表中。
进一步地,对于所属语音设备的节点列表中的每个节点,判断最后一次接收到所述节点的心跳信息的时间距当前时间的间隔时间是否超过第二预设时间;若判断所述间隔时间超过所述第二预设时间,则将所述节点从所属语音设备的节点列表中删除。
具体地,网络中的每个节点,遍历自己的节点列表中的每个节点,判断最后一次接收到此节点的心跳信息的时间距当前时间的间隔时长,如果超过预设的规定时间(即所述第二预设时间),则认为该节点心跳过期,可能出现故障的情况,则将此节点从节点列表中移除。
进一步地,存在以下几种master节点变更情况;
(1)若从所属语音设备的节点列表中删除了master节点,且在第三预设时间内未接收到master信令,则所属语音设备成为master节点。
例如,slave节点在遍历过程中移除了master节点,并在移除了master节点后的一定时间内没有接收到新的MASTER信令,即还没有节点成为master节点,则主动变更为master节点,并发送master信令,通知其他节点该节点已成为新的master节点。若在第三预设时间内接收到master信令,即,其他节点已经成为master节点,则在所属语音设备的节点列表中标记发送所述master信令的节点为master节点。其他节点检测到主节点心跳超时,主动成为新的主节点,不会影响唤醒命令的正常响应执行。
(2)若所属语音设备为slave节点,且所属语音设备的节点列表中已经标记第一节点为master节点,若接收到第二节点发送的master信令,则判断所述第一节点发送心跳信息的间隔时间是否超过第四预设时间;若判断所述间隔时间超过所述第四预设时间,则在所属语音设备的节点列表中标记所述第二节点为master节点。
例如,slave节点在已标记了节点A为master节点的情况下,接收到来自节点B的MASTER信令,此时slave节点会检查节点A是否心跳过期,如果是,则更新标记节点B为master,节点B例如可以为前述(1)的情况下主动变更为master的节点,其在主动变更为master节点后,广播master信令通知其他节点。
(3)当所属语音设备为master节点时,若接收到来自其他节点的master信令,则比较所属语音设备的MAC地址和所述master信令中的MAC地址的大小关系;若所属语音设备的MAC地址大于所述master信令中的MAC地址,则所属语音设备变更为slave节点。
例如,节点启动后,可能存在两个以上在第一预设时间内未收到master信令的节点,两个以上在第一预设时间内未收到master信令的节点同时成为master节点,产生master节点冲突。若master节点接到来自其他设备的MASTER信令(即,master节点冲突),则比较自身的MAC地址和MASTER信令中的MAC地址(字符串比较),若MASTER信令中的MAC地址更小,则主动变更为slave节点,正在执行仲裁任务的master节点,遇到master冲突不切换,在任务完成后再切换。
图2是根据本发明一个具体实施例的节点角色的变更过程示意图。如图2所示,节点启动后,3个心跳内没接收到MASTER信令,则成为MASTER节点,若3个心跳内接收到MASTER信令,表明另一设备已经成为master节点,则成为slave节点,在成为master节点之后,若接收到MAC地址更小的节点的MASTER信令,则主动成为slave节点,该MAC地址更小的节点成为MASTER节点。成为slave节点后,若master节点心跳超时,则移除master节点,若3个心跳没接收到MASTER信令,则成为master节点。
本发明提供一种基于设备网络的语音设备唤醒装置。
具体地,基于无线通信方式创建设备网络,所述无线通信方式例如包括WiFi局域网、ZigBee网络、蓝牙mesh网络。所述设备网络中包括一个作为master节点(主节点)的语音设备和两个以上作为slave节点(从节点)的语音设备。master节点只有一个,每个节点都会维护网络中所有节点的信息,并标记出哪一个是master节点。例如每个节点维护有一个节点列表,设备网络中所有节点的信息保存在所述节点列表中,并标记出master节点。本发明装置可以在所述设备网络中的每个语音设备中实施。
图3是本发明提供的基于无线局域网的语音设备唤醒装置的一实施例的结构框图。如图3所示,所述装置100包括第一接收单元110、发送单元120、第二接收单元130和仲裁单元140。
第一接收单元110用于在所属语音设备为slave节点的情况下,接收唤醒命令;发送单元120用于当所述第一接收单元接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
具体地,所述仲裁请求中可以包含所属语音设备与所述唤醒命令的声源的距离信息和/或所属语音设备接收到的唤醒命令的声音能量信息。所属语音设备作为slave节点时,当第一接收单元110接收到唤醒指令时,获取接收到的唤醒命令(唤醒语音)的声音能量大小,发送单元120向作为master节点的语音设备发送包含声音能量信息的仲裁请求;或者根据所述声音能量大小计算所属语音设备与所述唤醒命令的声源的距离,向作为master节点的语音设备发送包含所述距离的仲裁请求。作为master节点的语音设备,根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的声音能量信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较声音能量的大小,确定接收到的唤醒命令的声音能量较大的slave节点设备响应所述唤醒命令;或者,作为master节点的语音设备,根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的距离信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较距离的远近,确定距离所述唤醒命令的声源最近的slave节点设备响应所述唤醒命令。可选地,所述第一接收单元110还用于:在所属语音设备为slave节点的情况下,在接收到唤醒命令向作为master节点的语音设备发送仲裁请求后,接收所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备的仲裁结果,所述仲裁结果包括响应所述唤醒命令的设备的设备标识,例如MAC地址,若所属语音设备为响应所述唤醒命令的设备,则响应所述唤醒命令,即所属语音设备被唤醒。
第二接收单元130用于在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求;仲裁单元140用于根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
所属设备作为master节点时,第二接收单元130接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求,所述仲裁请求中可以包含所属语音设备与所述唤醒命令的声源的距离信息和/或所属语音设备接收到的唤醒命令的声音能量信息。所属语音设备作为master节点,仲裁单元140根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的声音能量信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较声音能量的大小,确定接收到的唤醒命令的声音能量较大的slave节点设备响应所述唤醒命令;或者,作为master节点的语音设备,根据所述两个以上作为slave节点的语音设备发送的仲裁请求中的距离信息,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备,例如可以比较距离的远近,确定距离所述唤醒命令的声源最近的slave节点设备响应所述唤醒命令。可选地,在所属语音设备为master节点的情况下,所述仲裁单元140还用于:确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备后,向所述两个以上作为slave节点的语音设备发送仲裁结果,由确定的响应所述唤醒命令的设备响应唤醒命令,其他设备保持待唤醒状态,所述仲裁结果包括响应所述唤醒命令的设备的设备标识,例如MAC地址,作为slave节点的语音设备根据所述设备标识确定自身是否为响应所述唤醒命令的设备,若是,则响应所述唤醒命令,即被唤醒。
可选地,所述装置还包括:创建单元,用于通过如下方式创建所述设备网络:
节点启动后,若所属语音设备在第一预设时间内未收到节点启动master信令,则所属语音设备成为master节点,并广播相应的组网信令;若在第一预设时间内接收到节点启动master信令,则所属语音设备成为slave节点,记录master节点信息,并广播相应的组网信令。
具体地,所述无线通信方式例如包括WiFi局域网、ZigBee网络、蓝牙mesh网络。例如,所有待组网的语音设备均接入所述无线局域网。其中,可以通过所述设备网络中的任一语音设备启动所述设备网络中的各个节点(语音设备),即开启本发明所实现的功能。例如用户通过向任一语音设备下达节点启动命令(例如包括语音命令或按键命令)启动网络中的各个节点,接收到所述启动命令的语音设备,通过局域网广播发送节点启动信令,所述设备网络中的各个语音设备(包括该发送节点启动master信令的语音设备)接收所述节点启动信令。
当任一语音设备接收到所述节点启动信令,则作为节点启动,节点启动时,网络中的所有节点都作为slave节点启动,任一节点启动后,接收master信令,所述master信令即已经成为master节点的设备发送的组网信令,表明自己已经成为master节点;若在第一预设时间内没有接收到master信令,说明还没有master节点,则主动成为master节点,并开始广播master信令,表明自己已经成为master节点,所述master信令中包括master节点的设备标识(例如MAC地址),此时网络创建成功。任一语音设备,若在第一预设时间内接收到master信令,表明已经产生master节点,则继续作为slave节点,记录master节点的信息,并广播组网信令,作为slave节点广播的所述组网信令中包括slave节点的设备标识(例如MAC地址)。
在所属语音设备成为master节点或slave节点后,若接收到新加入的节点的组网信令,则将所述新加入的节点的节点信息加入所属语音设备的节点列表中。例如,任一语音设备,若在第一预设时间内接收到所述节点启动master信令,则继续作为slave节点,记录master节点的信息,并广播组网信令。网络中的其他节点设备接收到该节点的组网信令,将该节点作为新节点加入到自己的节点列表中,例如将该节点的设备标识加入到自己的节点列表中。
进一步地,对于所属语音设备的节点列表中的每个节点,判断最后一次接收到所述节点的心跳信息的时间距当前时间的间隔时间是否超过第二预设时间;若判断所述间隔时间超过所述第二预设时间,则将所述节点从所属语音设备的节点列表中删除。
具体地,网络中的每个节点,遍历自己的节点列表中的每个节点,判断最后一次接收到此节点的心跳信息的时间距当前时间的间隔时长,如果超过预设的规定时间(即所述第二预设时间),则认为该节点心跳过期,则将此节点从节点列表中移除。
进一步地,存在以下几种master节点变更情况;
(1)若从所属语音设备的节点列表中删除了master节点,且在第三预设时间内未接收到master信令,则所属语音设备成为master节点。
例如,slave节点在遍历过程中移除了master节点,并在移除了master节点后的一定时间内没有接收到新的MASTER信令,即还没有节点成为master节点,则主动变更为master节点,并发送master信令,通知其他节点该节点已成为新的master节点。若在第三预设时间内接收到master信令,即,其他节点已经成为master节点,则在所属语音设备的节点列表中标记发送所述master信令的节点为master节点。
(2)若所属语音设备为slave节点,且所属语音设备的节点列表中已经标记第一节点为master节点,若接收到第二节点发送的master信令,则判断所述第一节点发送心跳信息的间隔时间是否超过第四预设时间;若判断所述间隔时间超过所述第四预设时间,则在所属语音设备的节点列表中标记所述第二节点为master节点。
例如,slave节点在已标记了节点A为master节点的情况下,接收到来自节点B的MASTER信令,此时slave节点会检查节点A是否心跳过期,如果是,则更新标记节点B为master,节点B例如可以为前述(1)的情况下主动变更为master的节点,其在主动变更为master节点后,广播master信令通知其他节点。
(3)当所属语音设备为master节点时,若接收到来自其他节点的master信令,则比较所属语音设备的MAC地址和所述master信令中的MAC地址的大小关系;若所属语音设备的MAC地址大于所述master信令中的MAC地址,则所属语音设备变更为slave节点。
例如,节点启动后,可能存在两个以上在第一预设时间内未收到master信令的节点,两个以上在第一预设时间内未收到master信令的节点同时成为master节点,产生master节点冲突。若master节点接到来自其他设备的MASTER信令(即,master节点冲突),则比较自身的MAC地址和MASTER信令中的MAC地址(字符串比较),若MASTER信令中的MAC地址更小,则主动变更为slave节点,正在执行仲裁任务的master节点,遇到master冲突不切换,在任务完成后再切换。
本发明还提供对应于所述语音设备唤醒方法的一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现前述任一所述方法的步骤。
本发明还提供对应于所述语音设备唤醒方法的一种语音设备,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述任一所述方法的步骤。
本发明还提供对应于所述语音设备唤醒装置的一种语音设备,包括前述任一所述的语音设备唤醒装置。
据此,本发明提供的方案,基于无线通信方式创建设备网络,网络中选举出唯一的master节点,其他的节点为slave节点;在用户尝试唤醒时,识别到唤醒命令的设备相互沟通,决定哪台设备来响应用户,避免一呼百应的情况;用户只需要开启相应功能,不需要用户指定主节点,网络中能够随机选举出唯一的master节点,在接收到唤醒命令所有节点通过向master节点发送仲裁请求,由master节点执行仲裁算法,选出响应唤醒命令的唯一节点。其他节点检测到master节点心跳超时,主动成为新的master节点,不会影响唤醒命令的正常响应执行。
本文中所描述的功能可在硬件、由处理器执行的软件、固件或其任何组合中实施。如果在由处理器执行的软件中实施,那么可将功能作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体予以传输。其它实例及实施方案在本发明及所附权利要求书的范围及精神内。举例来说,归因于软件的性质,上文所描述的功能可使用由处理器、硬件、固件、硬连线或这些中的任何者的组合执行的软件实施。此外,各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为控制装置的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (10)
1.一种基于设备网络的语音设备唤醒方法,其特征在于,所述设备网络中包括一个作为master节点的语音设备和两个以上作为slave节点的语音设备;所述方法,包括:
在所属语音设备为slave节点的情况下,当接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备;
在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求,并根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
2.根据权利要求1所述的方法,其特征在于,通过如下方式创建所述设备网络;
节点启动后,若所属语音设备在第一预设时间内未收到节点启动master信令,则所属语音设备成为master节点,并广播相应的组网信令;
若在第一预设时间内接收到节点启动master信令,则所属语音设备成为slave节点,记录master节点信息,并广播相应的组网信令。
3.根据权利要求2所述的方法,其特征在于,还包括:
在所属语音设备成为master节点或slave节点后,若接收到新加入的节点的组网信令,则将所述新加入的节点的节点信息加入所属语音设备的节点列表中;
和/或,
对于所属语音设备的节点列表中的每个节点,判断最后一次接收到所述节点的信令的时间距当前时间的间隔时间是否超过第二预设时间;
若判断所述间隔时间超过所述第二预设时间,则将所述节点从所属语音设备的节点列表中删除。
4.根据权利要求2或3所述的方法,其特征在于,还包括:
若从所属语音设备的节点列表中删除了master节点,且在第三预设时间内未接收到master信令,则所属语音设备成为master节点;
和/或,
若所属语音设备为slave节点,且所属语音设备的节点列表中已经标记第一节点为master节点,若接收到第二节点发送的master信令,则判断所述第一节点发送心跳信息的间隔时间是否超过第四预设时间;
若判断所述间隔时间超过所述第四预设时间,则在所属语音设备的节点列表中标记所述第二节点为master节点;
和/或,
当所属语音设备为master节点时,若接收到来自其他节点的master信令,则比较所属语音设备的MAC地址和所述master信令中的MAC地址的大小关系;
若所属语音设备的MAC地址大于所述master信令中的MAC地址,则所属语音设备变更为slave节点。
5.一种基于设备网络的语音设备唤醒装置,其特征在于,所述设备网络中包括一个作为master节点的语音设备和两个以上作为slave节点的语音设备;所述装置,包括:
第一接收单元,用于在所属语音设备为slave节点的情况下,接收唤醒命令;
发送单元,用于当所述第一接收单元接收到唤醒命令时,向作为master节点的语音设备发送仲裁请求,由所述作为master节点的语音设备根据所述仲裁请求确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备;
第二接收单元,用于在所属语音设备为master节点的情况下,接收所述设备网络中所述两个以上作为slave节点的语音设备发送的仲裁请求;
仲裁单元,用于根据所述仲裁请求,确定所述两个以上作为slave节点的语音设备中响应所述唤醒命令的设备。
6.根据权利要求5所述的装置,其特征在于,还包括:创建单元,用于通过如下方式创建所述设备网络;
节点启动后,若所属语音设备在第一预设时间内未收到节点启动master信令,则所属语音设备成为master节点,并广播相应的组网信令;
若在第一预设时间内接收到节点启动master信令,则所属语音设备成为slave节点,记录master节点信息,并广播相应的组网信令。
7.根据权利要求6所述的装置,其特征在于,所述创建单元,还用于:
在所属语音设备成为master节点或slave节点后,若接收到新加入的节点的组网信令,则将所述新加入的节点的节点信息加入所属语音设备的节点列表中;
和/或,
对于所属语音设备的节点列表中的每个节点,判断最后一次接收到所述节点的信令的时间距当前时间的间隔时间是否超过第二预设时间;
若判断所述间隔时间超过所述第二预设时间,则将所述节点从所属语音设备的节点列表中删除。
8.根据权利要求6或7所述的装置,其特征在于,所述创建单元,还用于:
若从所属语音设备的节点列表中删除了master节点,且在第三预设时间内未接收到master信令,则所属语音设备成为master节点;
和/或,
若所属语音设备为slave节点,且所属语音设备的节点列表中已经标记第一节点为master节点,若接收到第二节点发送的master信令,则判断所述第一节点发送心跳信息的间隔时间是否超过第四预设时间;
若判断所述间隔时间超过所述第四预设时间,则在所属语音设备的节点列表中标记所述第二节点为master节点;
和/或,
当所属语音设备为master节点时,若接收到来自其他节点的master信令,则比较所属语音设备的MAC地址和所述master信令中的MAC地址的大小关系;
若所属语音设备的MAC地址大于所述master信令中的MAC地址,则所属语音设备变更为slave节点。
9.一种存储介质,其特征在于,其上存储有计算机程序,所述程序被处理器执行时实现权利要求1-4任一所述方法的步骤。
10.一种语音设备,其特征在于,包括处理器、存储器以及存储在存储器上可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-4任一所述方法的步骤,或者包括如权利要求5-8任一所述的基于设备网络的语音设备唤醒装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010668425.5A CN111901210A (zh) | 2020-07-13 | 2020-07-13 | 基于设备网络的语音设备唤醒方法、装置、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010668425.5A CN111901210A (zh) | 2020-07-13 | 2020-07-13 | 基于设备网络的语音设备唤醒方法、装置、介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111901210A true CN111901210A (zh) | 2020-11-06 |
Family
ID=73192480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010668425.5A Pending CN111901210A (zh) | 2020-07-13 | 2020-07-13 | 基于设备网络的语音设备唤醒方法、装置、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111901210A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230054011A1 (en) * | 2021-08-20 | 2023-02-23 | Beijing Xiaomi Mobile Software Co., Ltd. | Voice collaborative awakening method and apparatus, electronic device and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101977222A (zh) * | 2010-10-28 | 2011-02-16 | 北京九华互联科技有限公司 | 一种多媒体终端进行同步的方法 |
CN105429767A (zh) * | 2015-10-20 | 2016-03-23 | 北京小鸟听听科技有限公司 | 音频组的建组方法、建组***及设备 |
CN109391528A (zh) * | 2018-08-31 | 2019-02-26 | 百度在线网络技术(北京)有限公司 | 语音智能设备的唤醒方法、装置、设备及存储介质 |
US20190295548A1 (en) * | 2018-03-20 | 2019-09-26 | Gojo Industries, Inc. | Restroom maintenance systems having a voice activated virtual assistant |
-
2020
- 2020-07-13 CN CN202010668425.5A patent/CN111901210A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101977222A (zh) * | 2010-10-28 | 2011-02-16 | 北京九华互联科技有限公司 | 一种多媒体终端进行同步的方法 |
CN105429767A (zh) * | 2015-10-20 | 2016-03-23 | 北京小鸟听听科技有限公司 | 音频组的建组方法、建组***及设备 |
US20190295548A1 (en) * | 2018-03-20 | 2019-09-26 | Gojo Industries, Inc. | Restroom maintenance systems having a voice activated virtual assistant |
CN109391528A (zh) * | 2018-08-31 | 2019-02-26 | 百度在线网络技术(北京)有限公司 | 语音智能设备的唤醒方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230054011A1 (en) * | 2021-08-20 | 2023-02-23 | Beijing Xiaomi Mobile Software Co., Ltd. | Voice collaborative awakening method and apparatus, electronic device and storage medium |
US12008993B2 (en) * | 2021-08-20 | 2024-06-11 | Beijing Xiaomi Mobile Software Co., Ltd. | Voice collaborative awakening method and apparatus, electronic device and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6830984B2 (ja) | 音声スマート機器のウェイクアップ方法、音声スマート機器のウェイクアップ装置、スマート機器及びコンピュータ読み取り可能な記憶媒体 | |
TWI531253B (zh) | 通信方法和系統 | |
CN102098354B (zh) | 动态主机配置协议地址分配方法及服务器 | |
WO2022142623A1 (zh) | 智能设备控制方法、装置、电子设备和计算机可读介质 | |
CN111538763A (zh) | 一种确定集群中主节点的方法、电子设备和存储介质 | |
US8873429B2 (en) | Method and system to dynamically detect and form a master slave network | |
CN109040184B (zh) | 一种主节点的选举方法及服务器 | |
CN110808886A (zh) | 一种语音设备的控制方法、装置、存储介质及语音设备 | |
CN113395198B (zh) | 设备的组网方法及装置、数据传输*** | |
US20230121623A1 (en) | Method for notifying a message of a smart home based on a smart screen Apparatus and Smart screen | |
KR100825735B1 (ko) | 지그비 네트워크 상의 통신 불가 노드에 대한 주소 공간관리 방법 | |
WO2013152649A1 (zh) | 一种资源碰撞的判定方法和装置 | |
CN115085767B (zh) | 基于hplc通信的恢复组网方法、装置及设备 | |
CN111901210A (zh) | 基于设备网络的语音设备唤醒方法、装置、介质及设备 | |
CN113905050A (zh) | 一种互联网访问信息的探测方法、装置和*** | |
CN114866365A (zh) | 仲裁机选举方法、装置、智能设备及计算机可读存储介质 | |
CN112003943A (zh) | 语音数据同步方法和装置 | |
CN108445788A (zh) | 一种酒店场景控制方法及相关装置 | |
CN110213359B (zh) | 一种基于d2d的车联网组网数据推送***和方法 | |
US9596131B2 (en) | Method for transiting operation mode of routing processor | |
CN111698342A (zh) | 温控器通信地址分配方法及*** | |
US10764268B2 (en) | Security controller (SC) restoration method and apparatus | |
CN109932972A (zh) | 一种整车电子控制器控制方法及装置 | |
CN114301777A (zh) | 配置数据更新方法、装置、***及非易失性存储介质 | |
WO2002019632A1 (fr) | Appareil et procede d'adaptation d'un terminal de communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201106 |