CN113160814B - 一种基于fpga的无线组网传输系统 - Google Patents
一种基于fpga的无线组网传输系统 Download PDFInfo
- Publication number
- CN113160814B CN113160814B CN202110387819.8A CN202110387819A CN113160814B CN 113160814 B CN113160814 B CN 113160814B CN 202110387819 A CN202110387819 A CN 202110387819A CN 113160814 B CN113160814 B CN 113160814B
- Authority
- CN
- China
- Prior art keywords
- equipment
- execution
- voice signal
- new
- signal
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 33
- 230000006855 networking Effects 0.000 title claims abstract description 33
- 238000004891 communication Methods 0.000 claims abstract description 17
- 235000005770 birds nest Nutrition 0.000 claims description 73
- 235000005765 wild carrot Nutrition 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 37
- 238000005295 random walk Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 21
- 241000544061 Cuculus canorus Species 0.000 claims description 20
- 238000012790 confirmation Methods 0.000 claims description 10
- 244000000626 Daucus carota Species 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 241000272177 Cuculiformes Species 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004378 air conditioning Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- PMGQWSIVQFOFOQ-YKVZVUFRSA-N clemastine fumarate Chemical compound OC(=O)\C=C\C(O)=O.CN1CCC[C@@H]1CCO[C@@](C)(C=1C=CC(Cl)=CC=1)C1=CC=CC=C1 PMGQWSIVQFOFOQ-YKVZVUFRSA-N 0.000 description 1
- 238000010411 cooking Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002789 length control Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Automation & Control Theory (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明提供一种基于FPGA的无线组网传输系统,所述系统包括控制设备和多个执行设备;每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块;当执行设备采集到用户的语音信号后,将采集的语音信号和执行设备的设备标识发送给所述控制设备;当控制设备接收到一个执行设备发送的语音信号时,根据当前语音信号的接收时间和上一条语音信号的接收时间,以及根据发送上一条语音信号的执行设备的临近设备表,对冗余的语音信号进行剔除;控制设备从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种基于FPGA的无线组网传输系统和方法。
背景技术
随着无线通信技术的发展,无线通讯技术被越来越多地应用至日常生活场景中,具体包括无线通讯技术在智能家居场景中的应用、在智慧停车场景中的应用、在智慧农业场景中的应用、在海上无线通讯场景中的应用等。其中,以智能家居为例,智能家居场景中通常存在一个控制设备和多个执行设备。其中,控制设备通常为一个智能音箱,执行设备包括电视、冰箱、空调、厨房电器、空气净化器等。当用户需要控制执行设备时,需要通过语音呼唤控制设备,进而通过控制设备转而控制相应的执行设备。然而,当用户与控制设备的距离较远时,用户通过正常音量难以唤醒控制设备,导致用户体验偏低。
发明内容
本发明实施例的目的在于提供一种基于FPGA的无线组网传输系统和方法,旨在对现有无线组网传输系统进行改进,以提升用户体验,具体技术方案如下:
在本发明实施例的第一方面,提供一种基于FPGA的无线组网传输系统,所述系统包括控制设备和多个执行设备;每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块,其中,所述只读存储器中存储有语音采集程序和通信程序;所述控制设备中存储有多个执行设备各自的临近设备表,每个执行设备的临近设备表中记录有若干其他执行设备,所述若干其他执行设备是与该执行设备临近的执行设备;
当执行设备通电后,执行设备的只读存储器中存储的语音采集程序和通信程序自动烧写至执行设备的FPGA芯片中;
当执行设备通过执行FPGA芯片中烧写的语音采集程序,采集到用户的语音信号后,执行设备通过执行FPGA芯片中烧写的通信程序,将采集的语音信号和执行设备的设备标识发送给所述控制设备;
当控制设备接收到一个执行设备发送的语音信号时,控制设备确定其接收到该当前语音信号的第一接收时间,控制设备还确定其接收到上一条语音信号的第二接收时间;控制设备计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值;
如果所述时间差超过所述时间差阈值,则控制设备将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;如果所述时间差未超过所述时间差阈值,则控制设备根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识;
如果临近设备表中记录有当前语音信号携带的设备标识,则控制设备丢弃当前语音信号;如果临近设备表中没有记录当前语音信号携带的设备标识,则控制设备将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;
控制设备从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
在本发明实施例的第二方面,提供一种基于FPGA的无线组网传输方法,所述方法应用于无线组网传输系统中的控制设备;所述无线组网传输系统还包括多个执行设备,每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块,其中,所述只读存储器中存储有语音采集程序和通信程序;当执行设备通电后,执行设备的只读存储器中存储的语音采集程序和通信程序自动烧写至执行设备的FPGA芯片中;当执行设备通过执行FPGA芯片中烧写的语音采集程序,采集到用户的语音信号后,执行设备通过执行FPGA芯片中烧写的通信程序,将采集的语音信号和执行设备的设备标识发送给所述控制设备;所述控制设备中存储有多个执行设备各自的临近设备表,每个执行设备的临近设备表中记录有若干其他执行设备,所述若干其他执行设备是与该执行设备临近的执行设备;
所述方法包括:
接收到一个执行设备发送的语音信号时,确定接收到该当前语音信号的第一接收时间,确定接收到上一条语音信号的第二接收时间,计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值;
如果该时间差超过所述时间差阈值,则将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;如果该时间差未超过所述时间差阈值,则根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识;
如果临近设备表中记录有当前语音信号携带的设备标识,则丢弃当前语音信号;如果临近设备表中没有记录当前语音信号携带的设备标识,则将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;
从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
本发明中,每个执行设备具有语音信号采集的能力,当用于远离控制设备时,用户的语音信号可以被用户周围的执行设备采集到,执行设备将采集到的语音信号发送给控制设备进行处理,从而能有效提升用户体验。
此外,由于用户的语音信号可能同时被用户周围的多个执行设备采集到,多个执行设备几乎在同一时间将各自采集的语音信号发送给控制设备。为此,控制设备控制设备接收到一个执行设备发送的语音信号时,控制设备确定其接收到该当前语音信号的第一接收时间,控制设备还确定其接收到上一条语音信号的第二接收时间,控制设备计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值。如果该时间差超过时间差阈值,这说明当前语音信号和上一条语音信号通常为两条不同的语音信号,则控制设备将当前语音信号作为待处理语音,存入待处理队列。
如果该时间差未超过时间差阈值,这说明当前语音信号和上一条语音信号可能是同一条语音信号。为此,控制设备进一步根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识。若是,则说明当前语音信号和上一条语音信号通常为同一条语音信号,该语音信号由相邻的两个执行设备几乎同时发送给控制设备,因此控制设备丢弃当前语音信号。若否,则说明当前语音信号和上一条语音信号通常为两条不同的语音信号,这两条不同的语音信号由位于不同位置的两个用户几乎同时发出,并分别由不同的执行设备发送给控制设备,因此控制设备将当前语音信号作为待处理语音,存入待处理队列。
通过上述方式,控制设备有效对冗余的语音信号进行了剔除,避免对执行设备的重复控制,从而进一步提升了用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1是本发明一实施例提出的基于FPGA的无线组网传输系统的示意图;
图2是本发明一实施例提出的基于FPGA的无线组网传输方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
随着无线通信技术的发展,无线通讯技术被越来越多地应用至日常生活场景中,具体包括无线通讯技术在智能家居场景中的应用、在智慧停车场景中的应用、在智慧农业场景中的应用、在海上无线通讯场景中的应用等。其中,以智能家居为例,智能家居场景中通常存在一个控制设备和多个执行设备。其中,控制设备通常为一个智能音箱,执行设备包括电视、冰箱、空调、厨房电器、空气净化器等。当用户需要控制执行设备时,需要通过语音呼唤控制设备,进而通过控制设备转而控制相应的执行设备。然而,当用户与控制设备的距离较远时,用户通过正常音量难以唤醒控制设备,导致用户体验偏低。
有鉴于此,本发明通过以下实施例提出基于FPGA的无线组网传输系统和方法,旨在对现有无线组网传输系统进行改进,以提升用户体验。
参考图1,图1是本发明一实施例提出的基于FPGA的无线组网传输系统的示意图。如图1所示,该系统包括控制设备和多个执行设备,如图1中的A、B、C、D、E、F、G等7个执行设备。每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块,其中,所述只读存储器中存储有语音采集程序和通信程序;所述控制设备中存储有多个执行设备各自的临近设备表,每个执行设备的临近设备表中记录有若干其他执行设备,所述若干其他执行设备是与该执行设备临近的执行设备。
为便于理解,示例地,执行设备A的临近设备表中包括:执行设备B的设备标识和执行设备C的设备标识。执行设备B的临近设备表中包括:执行设备A的设备标识、执行设备D的设备标识、以及执行设备E的设备标识。
图1中,当执行设备通电后,执行设备的只读存储器中存储的语音采集程序和通信程序自动烧写至执行设备的FPGA芯片中。执行设备后续通过执行FPGA芯片中烧写的语音采集程序,从而实现对语音信号的采集。执行设备后续通过执行FPGA芯片中烧写的通信程序,从而实现与控制设备的通信交互。
图1中,当执行设备通过执行FPGA芯片中烧写的语音采集程序,采集到用户的语音信号后,执行设备通过执行FPGA芯片中烧写的通信程序,将采集的语音信号和执行设备的设备标识发送给所述控制设备。
可选地,在一些具体实施方式中,当执行设备检测到语音信号后,执行设备判断该语音信号的强度是否达到预设强度;若否,则执行设备不响应该语音信号;若是,则执行设备识别该语音信号是否携带预设关键词;在语音信号携带预设关键词的情况下,执行设备才将采集的语音信号和执行设备的设备标识发送给所述控制设备。
具体实现时,执行设备的语音采集模块保持为开启状态,执行设备通过运行FPGA芯片中烧写的语音采集程序,从而持续采集语音信号,并对采集的语音信号做如下处理:(1)当执行设备采集到一段语音信号后,判断该段语音信号的强度(例如平均强度)是否达到预设强度;(2)如果未达到预设强度,则说明该语音信号的信号源不在该执行设备附近,因此该执行设备不响应该语音信号;(3)如果达到预设强度,则说明语音信号的信号源在该执行设备附近,如此,该检测该段语音信号是否以预设关键词作为开始,例如预设关键词可以是“智能管家”;(4)如果该段语音信号不是以预设关键词作为开始,则说明该段语音信号的意图不是用于呼唤控制设备,因此执行设备不响应该语音信号;(5)如果该段语音信号是以预设关键词作为开始,则说明该段语音信号的意图是用于呼唤控制设备,因此执行设备将该段语音信号和执行设备自身的设备标识发送给控制设备。
图1中,当控制设备接收到一个执行设备发送的语音信号时,控制设备确定其接收到该当前语音信号的第一接收时间,控制设备还确定其接收到上一条语音信号的第二接收时间;控制设备计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值。
为便于理解,示例地,假设预设的时间差阈值为2秒,又假设控制设备在18点20分24秒410毫秒接收到执行设备B发送的语音信号,该语音信号携带执行设备B的设备标识。控制设备接收到该语音信号后,立即查询上一条语音信号的接收时间,假设上一条语音信号在18点20分23秒720毫秒接收到,上一条语音信号携带执行设备A的语音标识(上一条语音信号是由执行设备A发来的)。则第一接收时间18点20分24秒410毫秒与第二接收时间18点20分23秒720毫秒的时间差等于0.69秒,未超过时间差阈值2秒。
图1中,如果所述时间差超过所述时间差阈值,则控制设备将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;如果所述时间差未超过所述时间差阈值,则控制设备根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识。
本发明中,如果时间差超过时间差阈值,这说明当前语音信号和上一条语音信号通常为两条不同的语音信号。因为用户通常不可能在时间差阈值(例如2秒)内连续发出两条用于呼唤控制设备的语音。则控制设备将当前语音信号作为待处理语音,存入待处理队列。
本发明中,如果时间差未超过时间差阈值,这说明当前语音信号和上一条语音信号可能是同一条语音信号。如此,控制设备根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识。为便于理解,沿用上述示例,由于计算出的时间差等于0.69秒,未超过时间差阈值2秒,且上一条语音信号携带执行设备A的语音标识。因此节点设备调用执行设备A的临近设备表,并查询该临近设备表中是否记录有执行设备B的设备标识(也即当前语音信号携带的设备而标识)。
图1中,如果临近设备表中记录有当前语音信号携带的设备标识,则控制设备丢弃当前语音信号;如果临近设备表中没有记录当前语音信号携带的设备标识,则控制设备将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识。
本发明中,如果临近设备表中记录有当前语音信号携带的设备标识,则说明当前语音信号和上一条语音信号通常为同一条语音信号,该语音信号由相邻的两个执行设备几乎同时采集到,并几乎同时发送给控制设备,因此控制设备丢弃当前语音信号。沿用上述示例,由于执行设备A的临近设备表中记录有执行设备B的设备标识,则说明当前语音信号和上一条语音信号通常为同一条语音信号,该语音信号由相邻的执行设备A和执行设备B几乎同时采集到,并几乎同时发送给控制设备,因此控制设备丢弃当前语音信号(也即执行设备B发来的语音信号),仅保存预先接收到的执行设备A发来的语音信号。
本发明中,如果临近设备表中没有记录当前语音信号携带的设备标识,则说明当前语音信号和上一条语音信号通常为两条不同的语音信号,这两条不同的语音信号由位于不同位置的两个用户几乎同时发出,并分别由不同的执行设备发送给控制设备,因此控制设备将当前语音信号作为待处理语音,存入待处理队列。
本发明中,通过上述判断和相应步骤,对冗余的语音信号进行了剔除。
图1中,控制设备从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
具体实现时,控制设备可采用现有的语音识别算法,从待处理语音中确定出控制指令,本申请对于控制设备如何确定出控制指令不做限定,这也不属于本发明的发明重点。
本发明中,每个执行设备具有语音信号采集的能力,当用于远离控制设备时,用户的语音信号可以被用户周围的执行设备采集到,执行设备将采集到的语音信号发送给控制设备进行处理,从而能有效提升用户体验。
此外,由于用户的语音信号可能同时被用户周围的多个执行设备采集到,多个执行设备几乎在同一时间将各自采集的语音信号发送给控制设备。为此,控制设备控制设备接收到一个执行设备发送的语音信号时,控制设备确定其接收到该当前语音信号的第一接收时间,控制设备还确定其接收到上一条语音信号的第二接收时间,控制设备计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值。如果该时间差超过时间差阈值,这说明当前语音信号和上一条语音信号通常为两条不同的语音信号,则控制设备将当前语音信号作为待处理语音,存入待处理队列。
如果该时间差未超过时间差阈值,这说明当前语音信号和上一条语音信号可能是同一条语音信号。为此,控制设备进一步根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识。若是,则说明当前语音信号和上一条语音信号通常为同一条语音信号,该语音信号由相邻的两个执行设备几乎同时发送给控制设备,因此控制设备丢弃当前语音信号。若否,则说明当前语音信号和上一条语音信号通常为两条不同的语音信号,这两条不同的语音信号由位于不同位置的两个用户几乎同时发出,并分别由不同的执行设备发送给控制设备,因此控制设备将当前语音信号作为待处理语音,存入待处理队列。
通过上述方式,控制设备有效对冗余的语音信号进行了剔除,避免对执行设备的重复控制,从而进一步提升了用户体验。
可选地,在一些具体实施方式中,新执行设备首次通电后,新执行设备的只读存储器中存储的启动程序自动烧写至新执行设备的FPGA芯片中;新执行设备通过运行FPGA芯片中烧写的启动程序,向周围发出入网信号,该入网信号携带新执行设备的设备标识。
例如,新执行设备被用户购买并运回家后,用户给新执行设备通次通电后,新执行设备的只读存储器中存储的启动程序会自动烧写至FPGA芯片中,新执行设备通过执行FPGA芯片中烧写的启动程序,从而向周围发出入网信号,以寻求加入网络。
控制设备检测到入网信号后,显示该入网信号,并向用户发出入网确认;控制设备响应于用户的入网确认操作,将该入网信号携带的设备标识存储至控制设备内;此后,控制设备向新执行设备发送入网许可信号,该入网许可信号携带控制设备地址、语音采集程序、以及通信程序;新执行设备接收到入网许可信号后,将入网许可信号携带的控制设备地址、语音采集程序、以及通信程序写入其只读存储器。
例如,控制设备检测到该入网信号后,控制设备通过其显示器,显示该入网信号携带的设备标识(也即新执行设备的设备标识)。用户查看到屏幕上显示的设备标识后,可以与新执行设备铭牌上记录的设备标识进行比对,如果两者一致,则用户向控制设备输入入网确认操作。控制设备响应于用户的入网确认操作,将入网信号携带的设备标识存储至本地。此后,控制设备还向新执行设备发送入网许可信号,该入网许可信号携带控制设备地址、语音采集程序、以及通信程序。新执行设备接收到入网许可信号后,将入网许可信号携带的控制设备地址、语音采集程序、以及通信程序写入其只读存储器。如此,使得控制设备地址、语音采集程序、以及通信程序被稳定保存在只读存储器中,当新执行设备断电后,只读存储器中的数据也不会丢失。
此外,控制设备还接收用户的位置设置操作,该位置设置操作用于设置新执行设备的位置;控制设备根据该位置设置操作确定新执行设备的位置后,将与新执行设备小于预设距离的执行设备确定为该新执行设备的临近设备,从而为新执行设备建立临近设备表;控制设备针对临近设备表中包含的每个执行设备,在该执行设备的临近设备表中添加该新执行设备。
为便于理解,示例地,假设新执行设备H入网后,控制设备向用户展示各执行设备的分布位置图,用户根据新执行设备H的实际位置,在该分布位置图中添加新执行设备H,从而将新执行设备H的虚拟图像添加至分布位置图中。控制设备根据执行设备H的虚拟图像在分布位置图中的位置,确定新执行设备H的虚拟图像与其他每个执行设备的虚拟图像的距离。如果某一执行设备的虚拟图像与新执行设备H的虚拟图像的距离小于预设距离,则将该执行设备确定为新执行设备H的临近设备,从而在新执行设备H的临近设备表中添加该执行设备的设备标识。
假设通过上述方式,将执行设备E和执行设备G确定为新执行设备H的临近设备,则在新执行设备H的临近设备表中,添加执行设备E的设备标识和执行设备G的设备标识。此外,还会更新执行设备E的临近设备表,从而在执行设备E的临近设备表中添加新执行设备H的设备标识。并且也会更新执行设备G的临近设备表,从而在执行设备G的临近设备表中添加新执行设备H的设备标识。
可选地,在一些具体实施方式中,每个执行设备的只读存储器中还存储有该执行设备的固有工作程序。其中,工作程序是与执行设备的基本功能相关的嵌入式程序。例如,空调作为一种执行设备,其工作程序是用于控制空调模式、风速等功能的程序。电饭煲作为一种执行设备,其工作程序是用于控制定时煮饭、保温等功能的程序。
控制设备还接收用户的配置操作,该配置操作用于为指定执行设备配置新工作程序。控制设备响应于用户的配置操作,从本地或服务器获取新工作程序,并将获取的新工作程序发送给指定执行设备,使得指定执行设备将新工作程序烧写至FPGA芯片,从而覆盖FPGA芯片在通电时烧写的固有工作程序。
具体实现时,例如当用户希望对某一执行设备的工作程序进行升级时,用户可以向控制设备输入配置操作,从而将升级版本的工作程序配置给指定执行设备。控制设备可以从本地或者服务器获得升级版本的工作程序,并将升级版本的工作程序发送给指定设备。
可选地,在一些具体实施方式中,所述控制设备还记录有每个执行设备被配置的新工作程序;当执行设备通电后,向控制设备发送工作程序加载信号,该工作程序加载信号中携带设备标识;控制设备接收到工作程序加载信号后,根据该工作程序加载信号中携带的设备标识,确定相应执行设备是否被配置有新工作程序;若是,则将新工作程序发送给该执行设备,从而使得该执行设备将该新工作烧写至其FPGA芯片;若否,则向该执行设备发送提示信号,以表征该执行设备没有被配置新工作程序;执行设备接收到提示信号后,将只读存储器中存储的固有工作程序烧写至FPGA芯片中。
为便于理解,示例地,假设执行设备A通电后,向控制设备发送工作程序加载信号,工作程序加载信号中携带了执行设备A的设备标识。控制设备接收到工作程序加载信号后,根据其携带的执行设备A的设备标识,确定执行设备A是否被配置有新工作程序。若是,则将执行设备A配置的新工作程序发送给该执行设备A,从而使得该执行设备A将该新工作烧写至其FPGA芯片。若否,则向该执行设备A发送提示信号。执行设备A接收到提示信号后,将只读存储器中存储的固有工作程序烧写至FPGA芯片中。
可选地,在一些具体实施方式中,每个执行设备均具有中继功能;所述控制设备还用于针对每个执行设备,生成该执行设备通向所述控制设备的路由路径,并将该路由路径发送给该执行设备;其中,每条路由路径中包括零个、一个或多个作为中继站的执行设备。
作为优选,控制设备可以依次针对每个执行设备,执行以下步骤:调用预设的Dijkstra算法(最短路径算法),并以多个执行设备的位置信息为输入参数,为该执行设备生成路由路径;然后根据该路由路径,将该路由路径信息发送给该路由路径中的上一个执行设备,使得该路由路径根据该路由路径,继续将该路由路径信息发送给该路由路径中的上一个执行设备,直至路由路劲中的第一个执行设备接收到该路由路径信息。为便于理解,示例地,假设控制设备为执行设备A生成的路由路径a为:执行设备A→执行设备C→执行设备F→控制设备,则控制设备将该路由路径信息a发送给执行设备F,执行设备F接着将该路由路径信息a发送给执行设备C,执行设备C再将该路由路径信息a发送给执行设备A,执行设备A接收并存储该路由路径信息a。
作为另一优选,路由路径采用下列方式确定:
设ci表示系统中的第i个中继站,ci,g表示目标中继站(所述目标中继站根据目标站标识确定),则采用下列方式确定从中继站ci到目标中继站ci,g的子路由路径,设L(ci,ci,g)表示从中继站ci到目标中继站ci,g的一条子路由路径,且L(ci,ci,g)={l(ci,ci,2),l(ci,2,ci,3),…,l(ci,n,ci,g)},其中,ci,2表示子路由路径L(ci,ci,g)中的第2个中继站,ci,3表示子路由路径L(ci,ci,g)中的第3个中继站,ci,n表示子路由路径L(ci,ci,g)中的第n个中继站,l(ci,ci,2)表示中继站ci和中继站ci,2之间的单跳链路,l(ci,2,ci,3)表示中继站ci,2和中继站ci,3之间的单跳链路,l(ci,n,ci,g)表示中继站ci,n和目标中继站ci,g之间的单跳链路,采用布谷鸟算法确定从中继站ci到目标中继站ci,g的子路由路径,定义布谷鸟算法的适应度函数为:
式中,d(ci,ci,2)表示单跳链路l(ci,ci,2)的长度,ci,j表示子路由路径L(ci,ci,g)中的第j个中继站,ci,j+1表示子路由路径L(ci,ci,g)中的第(j+1)个中继站,l(ci,j,ci,j+1)表示中继站ci,j和中继站ci,j+1之间的单跳链路,d(ci,j,ci,j+1)表示单跳链路l(ci,j,ci,j+1)的长度,d(ci,n,ci,g)表示单跳链路l(ci,n,ci,g)的长度。
本发明通过布谷鸟算法确定从所述起始中继站到目标中继站之间的最短路由路径,设置布谷鸟算法的适应度函数为中继站之间的路径长度,种群中鸟巢位置的适应度函数值越小,该鸟巢位置代表的解越优,使得选取的最优路由路径具有路径最短的优势,从而提高了信息传输的效率。
此外,所述布谷鸟算法通过莱维飞行模式进行更新,更新的公式为:
xi(t)=Xi(t-1)+αi(t-1)·levy(λ)·(Xi(t-1)-Xbest(t-1))
其中,xi(t)表示种群中第i个鸟巢通过莱维飞行模式进行第t代更新后的鸟巢位置,Xi(t-1)表示种群中第i个鸟巢在第(t-1)代更新后的鸟巢位置,αi(t-1)表示通过莱维飞行模式对鸟巢位置Xi(t-1)进行更新时对应的步长因子,且αi(t-1)∈[αmin,αmax],其中,αmin和αmax分别表示给定的最小和最大步长因子,αmin的值可以取0.1,αmax的值可以取1,levy(λ)为一个服从莱维分布的随机数,Xbest(t-1)表示第(t-1)代更新后种群中的最优鸟巢位置。
对通过莱维飞行模式进行更新后的种群中的鸟巢位置进行随机游走更新,给定发现概率pa,设ri(t)表示鸟巢位置xi(t)对应的0到1之间的随机数,当ri(t)≤pa时,则不对鸟巢位置xi(t)进行随机游走更新,当ri(t)>pa时,则对鸟巢位置xi(t)进行随机游走更新,具体为:
(1)设fi(t)表示鸟巢位置xi(t)的适应度函数值,Fi(t-1)表示鸟巢位置Xi(t-1)的适应度函数值,当鸟巢位置xi(t)满足:fi(t)<Fi(t-1)时,则采用下列方式对鸟巢位置xi(t)进行随机游走更新:
式中,x'i(t)表示对鸟巢位置xi(t)进行随机游走更新后产生的新的鸟巢位置,r为一个0到1之间的随机数,设Lx(t)表示通过莱维飞行模式对种群进行第t代更新后的鸟巢位置组成的集合,则和分别为从集合Lx(t)中随机选取的两个鸟巢位置,且
(2)当鸟巢位置xi(t)满足:fi(t)≥Fi(t-1)时,则采用下列方式对鸟巢位置xi(t)进行随机游走更新:
设l(t-1)表示种群在第(t-1)代时的区域检测阈值,LX(t-1)表示种群在第(t-1)代更新后的鸟巢位置组成的集合,Xi,e(t-1)表示集合LX(t-1)中距离鸟巢位置Xi(t-1)第e近的鸟巢位置,则l(t-1)的值可以取:其中,M表示种群中的鸟巢数,N为给定的正整数,N的值可以取10;设Ci(t)表示鸟巢位置xi(t)在进行随机游走更新时的待学习鸟巢位置组成的集合,xj(t)表示种群中第j个鸟巢通过莱维飞行模式进行第t代更新后的鸟巢位置,当鸟巢位置xj(t)满足:|Xj(t-1)-Xi(t-1)|≤l(t-1)且fj(t)<Fj(t-1)时,则将鸟巢位置xj(t)加入到集合Ci(t)中,其中,fj(t)表示鸟巢位置xj(t)的适应度函数值,Xj(t-1)表示种群中第j个鸟巢在第(t-1)代更新后的鸟巢位置,Fj(t-1)表示鸟巢位置Xj(t-1)的适应度函数值;设xk(t)表示种群中的第k个鸟巢通过莱维飞行模式进行第t代更新后的鸟巢位置,且xk(t)∈Ci(t),Xk(t-1)表示种群中第k个鸟巢在第(t-1)代更新后的鸟巢位置,αk(t-1)表示通过莱维飞行模式对鸟巢位置Xk(t-1)进行更新时对应的步长因子,则βi(t)的值为:
其中,mi(t)表示集合Ci(t)中的待学习鸟巢数;
设Xi(t)表示种群中第i个鸟巢在第t代更新后的鸟巢位置,当未对鸟巢位置xi(t)进行随机游走更新时,则Xi(t)的取值方式为:
当对鸟巢位置xi(t)进行了随机游走更新时,则Xi(t)的取值方式为:
其中,f'i(t)表示鸟巢位置x'i(t)的适应度函数值。
本发明在通过莱维飞行模式对种群中鸟巢位置进行更新后,通过采用不同的方式对种群中的鸟巢位置进行随机游走更新,在保证布谷鸟算法在随机游走更新过程中增加多样性的同时,加强布谷鸟算法在随机游走更新过程中的局部搜索精度,从而提高了布谷鸟算法的收敛速度和收敛精度。在布谷鸟算法中,布谷鸟每一代都按莱维飞行模式进行更新,这种短距离的搜索和偶尔的长跳跃搜索相间的更新方式,让布谷鸟的寻巢路径从一个区域跳跃到另一个区域,这样有利于布谷鸟算法的全局搜索,因而布谷鸟算法的全局搜索能力很强,但由于布谷鸟算法在采用莱维飞行模式进行更新时表现出的很强的随机跳跃性,使得在每个鸟巢附近的局部区域搜索不够强,使得布谷鸟算法在优化后期收敛速度慢、收敛精度不够高。针对上述缺陷,本优选实施例在布谷鸟算法的随机游走更新过程中引入两种不同的更新方式,当通过莱维飞行模式对鸟巢位置进行更新后,该鸟巢位置代表的解得到了优化,此时采用第一种方式对该鸟巢位置进行随机游走更新,从而用于保证种群的多样性,避免算法陷入局部最优,当通过莱维飞行模式对鸟巢位置进行更新后,该鸟巢位置代表的解未得到优化,此时,采用第二种方式对该鸟巢位置进行随机游走更新,在第二种随机游走更新公式中引入了步长控制因子,所述步长控制因子用于控制布谷鸟在随机游走更新过程中搜索区域的大小,针对传统布谷鸟算法在采用莱维飞行模式和随机游走更新过程中表现出的较强的随机性造成的不利于局部搜索的缺陷,所述步长控制因子通过统计该鸟巢位置所处局部区域中利用莱维飞行模式进化成功的鸟巢的步长因子对所述鸟巢位置的随机游走更新进行指导,从而提高了鸟巢位置在随机游走更新过程中进行局部搜索的精度,进一步的提高了布谷鸟算法的收敛速度和收敛精度。
可选地,在一些具体实施方式中,执行设备通过以下方式将采集的语音信号和执行设备的设备标识发送给所述控制设备:通过执行FPGA芯片中烧写的通信程序,从而调用该执行设备的路由路径,将采集的语音信号、该执行设备的设备标识、以及该路由路径发送给该路由路径中的下一个执行设备;所述下一个执行设备接收到语音信息、设备标识以及路由路径后,根据该路由路径,将接收到的语音信息、设备标识以及路由路径发送给该路由路径中的下一个执行设备,直至所述控制设备接收到语音信号和执行设备。为便于理解,示例地,假设执行设备A需要将其采集的语音信息、执行设备A的设备标识A以及路由路径a发送给执行设备C,执行设备C将语音信息、设备标识A以及路由路径a发送给执行设备F,执行设备F将语音信息、设备标识A以及路由路径a发送给控制设备。
以上,本发明通过一些实施例介绍了基于FPGA的无线组网传输系统。以下,本发明通过另一些实施例介绍基于FPGA的无线组网传输方法。需要说明的是,下述方法可与上述步骤相互参照,为避免重复,以下对方法实施例进行简单介绍。
参考图2,图2是本发明一实施例提出的基于FPGA的无线组网传输方法的流程图。该方法应用于无线组网传输系统中的控制设备;所述无线组网传输系统还包括多个执行设备,每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块,其中,所述只读存储器中存储有语音采集程序和通信程序;当执行设备通电后,执行设备的只读存储器中存储的语音采集程序和通信程序自动烧写至执行设备的FPGA芯片中;当执行设备通过FPGA芯片中烧写的语音采集程序,采集到用户的语音信号后,执行设备通过FPGA芯片中烧写的通信程序,将采集的语音信号和执行设备的设备标识发送给所述控制设备;所述控制设备中存储有多个执行设备各自的临近设备表,每个执行设备的临近设备表中记录有若干其他执行设备,所述若干其他执行设备是与该执行设备临近的执行设备。
如图2所示,该方法包括以下步骤:
步骤S21:接收到一个执行设备发送的语音信号时,确定接收到该当前语音信号的第一接收时间,确定接收到上一条语音信号的第二接收时间,计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值。
步骤S22:如果该时间差超过所述时间差阈值,则将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;如果该时间差未超过所述时间差阈值,则根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识。
步骤S23:如果临近设备表中记录有当前语音信号携带的设备标识,则丢弃当前语音信号;如果临近设备表中没有记录当前语音信号携带的设备标识,则将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识。
步骤S24:从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
可选地,在一些具体实施方式中,控制设备还执行以下步骤:检测到该入网信号后,显示该入网信号,并向用户发出入网确认;其中,所述入网信号是新执行设备通过以下方式发出的:新执行设备首次通电后,新执行设备的只读存储器中存储的启动程序自动烧写至新执行设备的FPGA芯片中,新执行设备通过运行FPGA芯片中烧写的启动程序,向周围发出入网信号,该入网信号携带新执行设备的设备标识;响应于用户的入网确认操作,将该入网信号携带的设备标识进行存储,并向新执行设备发送入网许可信号,该入网许可信号携带控制设备地址、语音采集程序、以及通信程序,使得新执行设备将入网许可信号携带的控制设备地址、语音采集程序、以及通信程序写入其只读存储器;接收用户的位置设置操作,该位置设置操作用于设置新执行设备的位置;在根据该位置设置操作确定新执行设备的位置后,将与新执行设备小于预设距离的执行设备确定为新执行设备的临近设备,从而为新执行设备建立临近设备表;针对临近设备表中包含的每个执行设备,在该执行设备的临近设备表中添加该新执行设备。
可选地,在一些具体实施方式中,每个执行设备的只读存储器中还存储有该执行设备的固有工作程序;控制设备还执行以下步骤:接收用户的配置操作,该配置操作用于为指定执行设备配置新工作程序;响应于用户的配置操作,从本地或服务器获取新工作程序,并将获取的新工作程序发送给指定执行设备,使得指定执行设备将新工作程序烧写至FPGA芯片,从而覆盖FPGA芯片在通电时烧写的固有工作程序。
可选地,在一些具体实施方式中,所述控制设备还记录有每个执行设备被配置的新工作程序;控制设备还执行以下步骤:接收执行设备发送的工作程序加载信号,所述工作程序加载信号是执行设备通过以下方式发送的:当执行设备通电后,向控制设备发送工作程序加载信号,该工作程序加载信号中携带设备标识;根据该工作程序加载信号中携带的设备标识,确定相应执行设备是否被配置有新工作程序;若是,则将新工作程序发送给该执行设备,从而使得该执行设备将该新工作烧写至其FPGA芯片;若否,则向该执行设备发送提示信号,以表征该执行设备没有被配置新工作程序,使得该执行设备在接收到提示信号后,将只读存储器中存储的固有工作程序烧写至FPGA芯片中。
可选地,在一些具体实施方式中,控制设备接收的语音信号是执行设备通过以下方式发送的:执行设备检测到语音信号后,判断该语音信号的强度是否达到预设强度;若否,则执行设备不响应该语音信号;若是,则执行设备识别该语音信号是否携带预设关键词;在语音信号携带预设关键词的情况下,执行设备才将采集的语音信号和执行设备的设备标识发送给所述控制设备。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (11)
1.一种基于FPGA的无线组网传输系统,其特征在于,所述系统包括控制设备和多个执行设备;每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块,其中,所述只读存储器中存储有语音采集程序和通信程序;所述控制设备中存储有多个执行设备各自的临近设备表,每个执行设备的临近设备表中记录有若干其他执行设备,所述若干其他执行设备是与该执行设备临近的执行设备;
当执行设备通电后,执行设备的只读存储器中存储的语音采集程序和通信程序自动烧写至执行设备的FPGA芯片中;
当执行设备通过执行FPGA芯片中烧写的语音采集程序,采集到用户的语音信号后,执行设备通过执行FPGA芯片中烧写的通信程序,将采集的语音信号和执行设备的设备标识发送给所述控制设备;
当控制设备接收到一个执行设备发送的语音信号时,控制设备确定其接收到该当前语音信号的第一接收时间,控制设备还确定其接收到上一条语音信号的第二接收时间;控制设备计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值;
如果所述时间差超过所述时间差阈值,则控制设备将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;如果所述时间差未超过所述时间差阈值,则控制设备根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识;
如果临近设备表中记录有当前语音信号携带的设备标识,则控制设备丢弃当前语音信号;如果临近设备表中没有记录当前语音信号携带的设备标识,则控制设备将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;
控制设备从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
2.根据权利要求1所述的基于FPGA的无线组网传输系统,其特征在于,新执行设备首次通电后,新执行设备的只读存储器中存储的启动程序自动烧写至新执行设备的FPGA芯片中;新执行设备通过运行FPGA芯片中烧写的启动程序,向周围发出入网信号,该入网信号携带新执行设备的设备标识;
控制设备检测到该入网信号后,显示该入网信号,并向用户发出入网确认;控制设备响应于用户的入网确认操作,将该入网信号携带的设备标识存储至控制设备内;此后,控制设备向新执行设备发送入网许可信号,该入网许可信号携带控制设备地址、语音采集程序、以及通信程序;新执行设备接收到入网许可信号后,将入网许可信号携带的控制设备地址、语音采集程序、以及通信程序写入其只读存储器;
控制设备接收用户的位置设置操作,该位置设置操作用于设置新执行设备的位置;控制设备根据该位置设置操作确定新执行设备的位置后,将与新执行设备小于预设距离的执行设备确定为该新执行设备的临近设备,从而为新执行设备建立临近设备表;控制设备针对临近设备表中包含的每个执行设备,在该执行设备的临近设备表中添加该新执行设备。
3.根据权利要求1所述的基于FPGA的无线组网传输系统,其特征在于,每个执行设备的只读存储器中还存储有该执行设备的固有工作程序;
控制设备还接收用户的配置操作,该配置操作用于为指定执行设备配置新工作程序;控制设备响应于用户的配置操作,从本地或服务器获取新工作程序,并将获取的新工作程序发送给指定执行设备,使得指定执行设备将新工作程序烧写至FPGA芯片,从而覆盖FPGA芯片在通电时烧写的固有工作程序。
4.根据权利要求3所述的基于FPGA的无线组网传输系统,其特征在于,所述控制设备还记录有每个执行设备被配置的新工作程序;当执行设备通电后,向控制设备发送工作程序加载信号,该工作程序加载信号中携带设备标识;控制设备接收到工作程序加载信号后,根据该工作程序加载信号中携带的设备标识,确定相应执行设备是否被配置有新工作程序;若是,则将新工作程序发送给该执行设备,从而使得该执行设备将该新工作烧写至其FPGA芯片;若否,则向该执行设备发送提示信号,以表征该执行设备没有被配置新工作程序;执行设备接收到提示信号后,将只读存储器中存储的固有工作程序烧写至FPGA芯片中。
5.根据权利要求1所述的基于FPGA的无线组网传输系统,其特征在于,每个执行设备检测到语音信号后,判断该语音信号的强度是否达到预设强度;若否,则执行设备不响应该语音信号;若是,则执行设备识别该语音信号是否携带预设关键词;在语音信号携带预设关键词的情况下,执行设备才将采集的语音信号和执行设备的设备标识发送给所述控制设备。
6.根据权利要求1所述的基于FPGA的无线组网传输系统,其特征在于,每个执行设备均具有中继功能;所述控制设备还用于针对每个执行设备,生成该执行设备通向所述控制设备的路由路径,并将该路由路径发送给该执行设备;其中,每条路由路径中包括零个、一个或多个作为中继站的执行设备;
执行设备通过以下方式将采集的语音信号和执行设备的设备标识发送给所述控制设备:通过执行FPGA芯片中烧写的通信程序,从而调用该执行设备的路由路径,将采集的语音信号、该执行设备的设备标识、以及该路由路径发送给该路由路径中的下一个执行设备;所述下一个执行设备接收到语音信息、设备标识以及路由路径后,根据该路由路径,将接收到的语音信息、设备标识以及路由路径发送给该路由路径中的下一个执行设备,直至所述控制设备接收到语音信号和执行设备。
7.根据权利要求6所述的基于FPGA的无线组网传输系统,其特征在于,所述路由路径采用下列方式进行确定:
设ci表示系统中的第i个中继站,ci,g表示目标中继站,则采用下列方式确定从中继站ci到目标中继站ci,g相应的子路由路径,设L(ci,ci,g)表示从中继站ci到目标中继站ci,g的一条子路由路径,且L(ci,ci,g)={l(ci,ci,2),l(ci,2,ci,3),…,l(ci,n,ci,g)},其中,ci,2表示子路由路径L(ci,ci,g)中的第2个中继站,ci,3表示子路由路径L(ci,ci,g)中的第3个中继站,ci,n表示子路由路径L(ci,ci,g)中的第n个中继站,l(ci,ci,2)表示中继站ci和中继站ci,2之间的单跳链路,l(ci,2,ci,3)表示中继站ci,2和中继站ci,3之间的单跳链路,l(ci,n,ci,g)表示中继站ci,n和目标中继站ci,g之间的单跳链路,采用布谷鸟算法确定从中继站ci到目标中继站ci,g的子路由路径,定义布谷鸟算法的适应度函数为:
式中,d(ci,ci,2)表示单跳链路l(ci,ci,2)的长度,ci,j表示子路由路径L(ci,ci,g)中的第j个中继站,ci,j+1表示子路由路径L(ci,ci,g)中的第(j+1)个中继站,l(ci,j,ci,j+1)表示中继站ci,j和中继站ci,j+1之间的单跳链路,d(ci,j,ci,j+1)表示单跳链路l(ci,j,ci,j+1)的长度,d(ci,n,ci,g)表示单跳链路l(ci,n,ci,g)的长度;
所述布谷鸟算法通过莱维飞行模式进行更新,更新的公式为:
xi(t)=Xi(t-1)+αi(t-1)·levy(λ)·(Xi(t-1)-Xbest(t-1))
其中,xi(t)表示种群中第i个鸟巢通过莱维飞行模式进行第t代更新后的鸟巢位置,Xi(t-1)表示种群中第i个鸟巢在第(t-1)代更新后的鸟巢位置,αi(t-1)表示通过莱维飞行模式对鸟巢位置Xi(t-1)进行更新时对应的步长因子,且αi(t-1)∈[αmin,αmax],其中,αmin和αmax分别表示给定的最小和最大步长因子,levy(λ)为一个服从莱维分布的随机数,Xbest(t-1)表示第(t-1)代更新后种群中的最优鸟巢位置;
对通过莱维飞行模式进行更新后的种群中的鸟巢位置进行随机游走更新,给定发现概率pa,设ri(t)表示鸟巢位置xi(t)对应的0到1之间的随机数,当ri(t)≤pa时,则不对鸟巢位置xi(t)进行随机游走更新,当ri(t)>pa时,则对鸟巢位置xi(t)进行随机游走更新,具体为:
(1)设fi(t)表示鸟巢位置xi(t)的适应度函数值,Fi(t-1)表示鸟巢位置Xi(t-1)的适应度函数值,当鸟巢位置xi(t)满足:fi(t)<Fi(t-1)时,则采用下列方式对鸟巢位置xi(t)进行随机游走更新:
式中,x′i(t)表示对鸟巢位置xi(t)进行随机游走更新后产生的新的鸟巢位置,r为一个0到1之间的随机数,设Lx(t)表示通过莱维飞行模式对种群进行第t代更新后的鸟巢位置组成的集合,则和分别为从集合Lx(t)中随机选取的两个鸟巢位置,且
(2)当鸟巢位置xi(t)满足:fi(t)≥Fi(t-1)时,则采用下列方式对鸟巢位置xi(t)进行随机游走更新:
设l(t-1)表示种群在第(t-1)代时的区域检测阈值,LX(t-1)表示种群在第(t-1)代更新后的鸟巢位置组成的集合,Xi,e(t-1)为集合LX(t-1)中距离鸟巢位置Xi(t-1)第e近的鸟巢位置,则l(t-1)的值可以取:其中,M表示种群中的鸟巢数,N为给定的正整数;设Ci(t)表示鸟巢位置xi(t)在进行随机游走更新时的待学习鸟巢位置组成的集合,xj(t)表示种群中第j个鸟巢通过莱维飞行模式进行第t代更新后的鸟巢位置,当鸟巢位置xj(t)满足:|Xj(t-1)-Xi(t-1)|≤l(t-1)且fj(t)<Fj(t-1)时,则将鸟巢位置xj(t)加入到集合Ci(t)中,其中,fj(t)表示鸟巢位置xj(t)的适应度函数值,Xj(t-1)表示种群中第j个鸟巢在第(t-1)代更新后的鸟巢位置,Fj(t-1)表示鸟巢位置Xj(t-1)的适应度函数值;设xk(t)表示种群中的第k个鸟巢通过莱维飞行模式进行第t代更新后的鸟巢位置,且xk(t)∈Ci(t),Xk(t-1)表示种群中第k个鸟巢在第(t-1)代更新后的鸟巢位置,αk(t-1)表示通过莱维飞行模式对鸟巢位置Xk(t-1)进行更新时对应的步长因子,则βi(t)的值为:
其中,mi(t)表示集合Ci(t)中的待学习鸟巢数;
设Xi(t)表示种群中第i个鸟巢在第t代更新后的鸟巢位置,当未对鸟巢位置xi(t)进行随机游走更新时,则Xi(t)的取值方式为:
当对鸟巢位置xi(t)进行了随机游走更新时,则Xi(t)的取值方式为:
其中,f'i(t)表示鸟巢位置x'i(t)的适应度函数值。
8.一种基于FPGA的无线组网传输方法,其特征在于,所述方法应用于无线组网传输系统中的控制设备;所述无线组网传输系统还包括多个执行设备,每个执行设备中至少设置有FPGA芯片、只读存储器、语音采集模块、以及通信模块,其中,所述只读存储器中存储有语音采集程序和通信程序;当执行设备通电后,执行设备的只读存储器中存储的语音采集程序和通信程序自动烧写至执行设备的FPGA芯片中;当执行设备通过FPGA芯片中烧写的语音采集程序,采集到用户的语音信号后,执行设备通过FPGA芯片中烧写的通信程序,将采集的语音信号和执行设备的设备标识发送给所述控制设备;所述控制设备中存储有多个执行设备各自的临近设备表,每个执行设备的临近设备表中记录有若干其他执行设备,所述若干其他执行设备是与该执行设备临近的执行设备;
所述方法包括:
接收到一个执行设备发送的语音信号时,确定接收到该当前语音信号的第一接收时间,确定接收到上一条语音信号的第二接收时间,计算第一接收时间与第二接收时间的时间差,并判断该时间差是否超过预设的时间差阈值;
如果该时间差超过所述时间差阈值,则将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;如果该时间差未超过所述时间差阈值,则根据上一条语音信号携带的设备标识,调用该设备标识对应的临近设备表,并查询该临近设备表中是否记录有当前语音信号携带的设备标识;
如果临近设备表中记录有当前语音信号携带的设备标识,则丢弃当前语音信号;如果临近设备表中没有记录当前语音信号携带的设备标识,则将当前语音信号作为待处理语音,存入待处理队列,并记录当前语音信号的接收时间和当前语音信号携带的设备标识;
从待处理队列中读取待处理语音,根据语音识别算法,从待处理语音中确定出控制指令,并向目标执行设备发送给控制指令,使得目标执行设备响应该控制指令。
9.根据权利要求8所述的基于FPGA的无线组网传输方法,其特征在于,所述方法还包括:
检测到入网信号后,显示该入网信号,并向用户发出入网确认;其中,所述入网信号是新执行设备通过以下方式发出的:新执行设备首次通电后,新执行设备的只读存储器中存储的启动程序自动烧写至新执行设备的FPGA芯片中,新执行设备通过运行FPGA芯片中烧写的启动程序,向周围发出入网信号,该入网信号携带新执行设备的设备标识;
响应于用户的入网确认操作,将该入网信号携带的设备标识进行存储,并向新执行设备发送入网许可信号,该入网许可信号携带控制设备地址、语音采集程序、以及通信程序,使得新执行设备将入网许可信号携带的控制设备地址、语音采集程序、以及通信程序写入其只读存储器;
接收用户的位置设置操作,该位置设置操作用于设置新执行设备的位置;
在根据该位置设置操作确定新执行设备的位置后,将与新执行设备小于预设距离的执行设备确定为新执行设备的临近设备,从而为新执行设备建立临近设备表;
针对临近设备表中包含的每个执行设备,在该执行设备的临近设备表中添加该新执行设备。
10.根据权利要求8所述的基于FPGA的无线组网传输方法,其特征在于,每个执行设备的只读存储器中还存储有该执行设备的固有工作程序;所述方法还包括:
接收用户的配置操作,该配置操作用于为指定执行设备配置新工作程序;
响应于用户的配置操作,从本地或服务器获取新工作程序,并将获取的新工作程序发送给指定执行设备,使得指定执行设备将新工作程序烧写至FPGA芯片,从而覆盖FPGA芯片在通电时烧写的固有工作程序。
11.根据权利要求10所述的基于FPGA的无线组网传输方法,其特征在于,所述控制设备还记录有每个执行设备被配置的新工作程序;所述方法还包括:
接收执行设备发送的工作程序加载信号,所述工作程序加载信号是执行设备通过以下方式发送的:当执行设备通电后,向控制设备发送工作程序加载信号,该工作程序加载信号中携带设备标识;
根据该工作程序加载信号中携带的设备标识,确定相应执行设备是否被配置有新工作程序;
若是,则将新工作程序发送给该执行设备,从而使得该执行设备将该新工作烧写至其FPGA芯片;
若否,则向该执行设备发送提示信号,以表征该执行设备没有被配置新工作程序,使得该执行设备在接收到提示信号后,将只读存储器中存储的固有工作程序烧写至FPGA芯片中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110387819.8A CN113160814B (zh) | 2021-04-09 | 2021-04-09 | 一种基于fpga的无线组网传输系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110387819.8A CN113160814B (zh) | 2021-04-09 | 2021-04-09 | 一种基于fpga的无线组网传输系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113160814A CN113160814A (zh) | 2021-07-23 |
CN113160814B true CN113160814B (zh) | 2022-09-09 |
Family
ID=76889860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110387819.8A Active CN113160814B (zh) | 2021-04-09 | 2021-04-09 | 一种基于fpga的无线组网传输系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113160814B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114374893B (zh) * | 2022-01-14 | 2023-03-24 | 重庆大学 | 面向电力抄表的高可靠无线自组网路由通信方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9431021B1 (en) * | 2014-03-27 | 2016-08-30 | Amazon Technologies, Inc. | Device grouping for audio based interactivity |
CN109903762A (zh) * | 2019-01-07 | 2019-06-18 | 珠海格力电器股份有限公司 | 一种语音控制方法、装置、存储介质及语音设备 |
CN110265018A (zh) * | 2019-07-01 | 2019-09-20 | 成都启英泰伦科技有限公司 | 一种连续发出的重复命令词识别方法 |
CN110501918A (zh) * | 2019-09-10 | 2019-11-26 | 百度在线网络技术(北京)有限公司 | 智能家电控制方法、装置、电子设备和存储介质 |
CN111757289A (zh) * | 2019-03-26 | 2020-10-09 | 华为技术有限公司 | 一种信息处理方法及相关设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110660390B (zh) * | 2019-09-17 | 2022-05-03 | 百度在线网络技术(北京)有限公司 | 智能设备唤醒方法、智能设备及计算机可读存储介质 |
-
2021
- 2021-04-09 CN CN202110387819.8A patent/CN113160814B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9431021B1 (en) * | 2014-03-27 | 2016-08-30 | Amazon Technologies, Inc. | Device grouping for audio based interactivity |
CN109903762A (zh) * | 2019-01-07 | 2019-06-18 | 珠海格力电器股份有限公司 | 一种语音控制方法、装置、存储介质及语音设备 |
CN111757289A (zh) * | 2019-03-26 | 2020-10-09 | 华为技术有限公司 | 一种信息处理方法及相关设备 |
CN110265018A (zh) * | 2019-07-01 | 2019-09-20 | 成都启英泰伦科技有限公司 | 一种连续发出的重复命令词识别方法 |
CN110501918A (zh) * | 2019-09-10 | 2019-11-26 | 百度在线网络技术(北京)有限公司 | 智能家电控制方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113160814A (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5649289A (en) | Flexible mobility management in a two-way messaging system and method therefor | |
US11259176B2 (en) | Method of and a system and node device for locating information available at a node device in a network of communicatively interconnected node devices | |
EP2569982B1 (en) | Management of the connections of relay nodes to form an ad hoc network | |
CN113160814B (zh) | 一种基于fpga的无线组网传输系统 | |
JP2006238381A (ja) | 無線タグシステム、無線タグ識別方法及びその識別プログラム | |
CN111161522B (zh) | 处理遥控数据的方法、存储介质、计算机设备及遥控系统 | |
CN101611650A (zh) | 用于在多小区无线通信系统中的目标寻呼的方法和装置 | |
US20200374149A1 (en) | Systems and methods for the implementation of an ai/iot hub in the control of electrical devices, electronics and appliances | |
CN106369752B (zh) | 空调器的控制方法、控制装置、室外机及空调器 | |
CN113330424A (zh) | 指令处理方法、装置、电子设备以及存储介质 | |
CN105630456A (zh) | 指令处理方法及装置 | |
CN104541314A (zh) | 具有触控连接选项的网络发现 | |
CN111083676B (zh) | 无线联动监控方法、装置及系统 | |
JP2018074483A (ja) | 電力制御プログラム、電力制御方法および電力制御装置 | |
CN109100998A (zh) | 家电设备运行的控制方法、系统、存储介质及电子装置 | |
WO2019110417A1 (en) | A method of and a system and node device for locating information available at a node device in a network of communicatively interconnected node devices | |
JP3428793B2 (ja) | 無線通信システムおよび無線通信装置 | |
CN112782997A (zh) | 设备控制方法及装置、存储介质、电子装置 | |
US6070087A (en) | Selective call receiver with priority based network selection | |
CN112880137A (zh) | 用于空调器的控制方法及系统、装置 | |
CN113347682B (zh) | 一种具有自适应通讯避障能力的配电终端方法及设备 | |
RU2751083C1 (ru) | Устройство сетевого переключения и способ работы устройства сетевого переключения | |
CN111756606A (zh) | 基于云计算的家居设备控制系统 | |
CN113485335A (zh) | 语音指令的执行方法及装置、存储介质及电子装置 | |
CN109767772A (zh) | 分布式语音交互方法和系统 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |