CN106653027A - 一种基于NodeJS的智能家居语音控制系统 - Google Patents
一种基于NodeJS的智能家居语音控制系统 Download PDFInfo
- Publication number
- CN106653027A CN106653027A CN201710085386.4A CN201710085386A CN106653027A CN 106653027 A CN106653027 A CN 106653027A CN 201710085386 A CN201710085386 A CN 201710085386A CN 106653027 A CN106653027 A CN 106653027A
- Authority
- CN
- China
- Prior art keywords
- nodejs
- module
- control system
- submodule
- voice control
- 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 claims description 14
- 230000008569 process Effects 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 230000007613 environmental effect Effects 0.000 claims description 3
- 230000008901 benefit Effects 0.000 abstract description 3
- 230000000903 blocking effect Effects 0.000 abstract description 3
- UHXUZOCRWCRNSJ-QPJJXVBHSA-N methomyl Chemical compound CNC(=O)O\N=C(/C)SC UHXUZOCRWCRNSJ-QPJJXVBHSA-N 0.000 abstract 1
- 239000000047 product Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
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
-
- 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/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (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)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于NodeJS的智能家居语音控制系统,实现了基于NodeJS的智能家居语音控制系统服务器端总体结构、技术手段和主要功能模块;服务器端主要实现实时语音识别,通过把接收的语音数据发送给讯飞语音云端识别,把识别结果返回给客户端;此外,NodeJS采用事件驱动、异步编程,其突出的优点使得程序能够实现高并发处理,NodeJS非阻塞模式的J0处理给NodeJS带来在相对低系统资源耗用下的高性能与出众的负载能力使得本发明具有极高的实用性能。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种基于NodeJS的智能家居语音控制系统。
背景技术
智能家居在实现高效便捷的基础上,被赋予语音控制的功能,这无疑会使得智能家居有一个更大的发展空间和更广阔的平台。
随着NodeJS的不断发展,NodeJS渐渐演变成一种构建网络应用的基础框架,并发展为一个不共享任何资源的单线程、单进程系统。NodeJS包含了很适合网络的库,这样NodeJS就为构建大型分布式应用提供了基础设施。它的目标都是为了构建快速、可伸缩的网络应用平台。它自身非常简单、采用通信协议来组织许多的Node,非常容易通过拓展来达成构建大型网络应用的目的。NodeJS是谷歌V8引擎、libuv平台抽象层以及主体使用Javscript编写的核心库三者集合的一个包装外壳。对性能的苛求是Node的一个关键因素。Javascript是一个事件驱动语言,Node利用了这个优点,编写出可扩展性高的服务器。NodeJS采用事件驱动、异步编程,为网络服务而设计。NodeJS非阻塞模式的IO处理给NodeJS带来在相对低系统资源耗用下的高性能与出众的负载能力。
NodeJS具有以下几个特点:
1)它是一个Javascript运行环境。NodeJS是服务器端的JavaScript运行环境,NodeJS是一套用来编写高性能网络服务器的JavaScript工具包。
2)依赖于v8引擎进行代码解释。v8对JS的解析不是基于反复loop源代码进行解释而是直接将JS代码编译成机器码运行。
3)事件驱动机制。事件由事件处理器或事件回调来处理,事件回调是当某个特定事件发生时被调用的函数。
4)非阻塞l/O。l/O操作不会阻塞程序的执行,也就是在l/O操作的同时,继续执行其他代码。
5)轻量、可伸缩,适于实时数据交互应用。NodeJS在实时的Web应用上采用了基于WebSocket的推送技术。
6)单进程,单线程。不管有多么的强大硬件,只能利用到单个CPU进行计算。NodeJS代码,是在单线程的环境中执行,但NodeJS本身不是单线程的。
发明内容
本发明的目的是提供一种基于NodeJS的智能家居语音控制系统。
本发明的目的可以通过以下技术方案实现:
一种基于NodeJS的智能家居语音控制系统,包括数据模块、云端识别模块、项目产品化模块;
所述的数据模块,用于实现语音数据的接收、保存和删除;
所述的云端识别模块,用于对讯飞语音的参数配置提供识别权限,进行讯飞语音云端识别权限、语音识别相关参数的设置,以及NodeJS的http请求实现;
所述的项目产品化模块,用于崩溃日志和系统运行日志的记录,对系统运行出错时进行系统崩溃处理和系统的内存控制。
进一步地,所述的项目产品化模块包括工作日志和内存监控子模块,进程守护子模块和异常捕获子模块;
所述的工作日志和内存监控子模块,采用一个常用的第三方包Log4js,引入Log4js模块,最后在需要记录重要信息的时候,使用Log4js模块把工作日志记录到本地文件夹;
所述的进程守护子模块,采用NodeJS的服务器管理模块forever,能够启动、停止、重启App应用;
所述的异常捕获子模块,采用模块domain,捕捉异步回调中出现的异常,把处理多个不同的JO的操作作为一个组,注册事件和回调到domain,当发生一个错误事件或抛出一个错误时,domain对象会被通知,不会丢失上下文环境,也不导致程序错误立即推出。
本发明的有益效果:
本发明所提供的一种基于NodeJS的智能家居语音控制系统,实现了基于NodeJS的智能家居语音控制系统服务器端总体结构、技术手段和主要功能模块。服务器端主要实现实时语音识别,通过把接收的语音数据发送给讯飞语音云端识别,把识别结果返回给客户端。此外,NodeJS采用事件驱动、异步编程,其突出的优点使得程序能够实现高并发处理。NodeJS非阻塞模式的J0处理给NodeJS带来在相对低系统资源耗用下的高性能与出众的负载能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明的系统示意图;
具体实施方式
本发明的核心是提供一种基于NodeJS的智能家居语音控制系统。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明提供了一种基于NodeJS的智能家居语音控制系统,包括数据模块、云端识别模块和项目产品化模块。
所述的数据模块,用于语音数据的接收、保存和删除。
所述的云端识别模块,用于对讯飞语音的参数配置提供识别权限,主要用于配置讯飞语音云端识别权限、语音识别相关参数的设置,以及NodeJS的http请求实现;Http协议是一个通用的应用层协议,NodeJS作为一个宿主运行环境,以JavaScript为宿主语言,它也有自己实现的一套标准;NodeJS通过require引入http模块,并调用相关接IZl函数。NodeJS请求的是事先写好的用于设置语音识别参数和提供语音识别权限的php文件,该php采用utf一8无BOM编码;使用讯飞语音识别时,需要提供产品的apiKey和secretKey,云端审核通过后,返回结果。只有在审核通过后,语音文件才可以得到识别;此外,需要提交语音数据的编码;由于单片机客户端的数据处理能力有限,语音数据经过压缩并编码为Speex格式后,才上传到讯飞语音云端,讯飞语音要求需要识别的语音数据为8000采样率、单声道、16比特。
所述的项目产品化模块,用于崩溃日志和系统运行日志的记录,对系统运行出错时进行系统崩溃处理和系统的内存控制,其包括工作日志和内存监控子模块,进程守护子模块和异常捕获子模块。
所述的工作日志和内存监控子模块,采用一个常用的第三方包Log4js,引入Log4js模块,最后在需要记录重要信息的时候,使用Log4js模块把工作日志记录到本地文件夹;
所述的进程守护子模块,采用NodeJS的服务器管理模块forever,能够启动、停止、重启App应用;
所述的异常捕获子模块,采用模块domain,捕捉异步回调中出现的异常,把处理多个不同的JO的操作作为一个组,注册事件和回调到domain,当发生一个错误事件或抛出一个错误时,domain对象会被通知,不会丢失上下文环境,也不导致程序错误立即推出。
为了描述的方便,描述以上装置时以功能分为各种单元、模块分别描述。当然,在实施本申请时可以把各单元、模块的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上内容仅仅是对本发明结构所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
Claims (2)
1.一种基于NodeJS的智能家居语音控制系统,其特征在于,包括数据模块、云端识别模块、项目产品化模块;
所述的数据模块,用于实现语音数据的接收、保存和删除;
所述的云端识别模块,用于对讯飞语音的参数配置提供识别权限,进行讯飞语音云端识别权限、语音识别相关参数的设置,以及NodeJS的http请求实现;
所述的项目产品化模块,用于崩溃日志和系统运行日志的记录,对系统运行出错时进行系统崩溃处理和系统的内存控制。
2.根据权利要求1所述的一种基于NodeJS的智能家居语音控制系统,其特征在于,所述的项目产品化模块包括工作日志和内存监控子模块,进程守护子模块和异常捕获子模块;
所述的工作日志和内存监控子模块,采用一个常用的第三方包Log4js,引入Log4js模块,最后在需要记录重要信息的时候,使用Log4js模块把工作日志记录到本地文件夹;
所述的进程守护子模块,采用NodeJS的服务器管理模块forever,能够启动、停止、重启App应用;
所述的异常捕获子模块,采用模块domain,捕捉异步回调中出现的异常,把处理多个不同的JO的操作作为一个组,注册事件和回调到domain,当发生一个错误事件或抛出一个错误时,domain对象会被通知,不会丢失上下文环境,也不导致程序错误立即推出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710085386.4A CN106653027A (zh) | 2017-02-17 | 2017-02-17 | 一种基于NodeJS的智能家居语音控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710085386.4A CN106653027A (zh) | 2017-02-17 | 2017-02-17 | 一种基于NodeJS的智能家居语音控制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106653027A true CN106653027A (zh) | 2017-05-10 |
Family
ID=58845418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710085386.4A Pending CN106653027A (zh) | 2017-02-17 | 2017-02-17 | 一种基于NodeJS的智能家居语音控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106653027A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110060685A (zh) * | 2019-04-15 | 2019-07-26 | 百度在线网络技术(北京)有限公司 | 语音唤醒方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140188620A1 (en) * | 2007-01-10 | 2014-07-03 | Tvg, Llc | System and method for delivery of voicemails to handheld devices |
CN105409197A (zh) * | 2013-03-15 | 2016-03-16 | 趣普科技公司 | 用于提供持久伙伴装置的设备和方法 |
-
2017
- 2017-02-17 CN CN201710085386.4A patent/CN106653027A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140188620A1 (en) * | 2007-01-10 | 2014-07-03 | Tvg, Llc | System and method for delivery of voicemails to handheld devices |
CN105409197A (zh) * | 2013-03-15 | 2016-03-16 | 趣普科技公司 | 用于提供持久伙伴装置的设备和方法 |
Non-Patent Citations (1)
Title |
---|
单振华等: "《基于NodeJS的智能家居语音控制系统服务器端设计与实现》", 《工业控制计算机》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110060685A (zh) * | 2019-04-15 | 2019-07-26 | 百度在线网络技术(北京)有限公司 | 语音唤醒方法和装置 |
CN110060685B (zh) * | 2019-04-15 | 2021-05-28 | 百度在线网络技术(北京)有限公司 | 语音唤醒方法和装置 |
US11502859B2 (en) | 2019-04-15 | 2022-11-15 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and apparatus for waking up via speech |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200329091A1 (en) | Methods and systems that use feedback to distribute and manage alerts | |
CN110413346B (zh) | 一种参数更新方法及装置 | |
KR102674648B1 (ko) | 문서 분석 방법, 장치, 기기 및 저장 매체 | |
CN108681569B (zh) | 一种数据自动分析系统及其方法 | |
US20150372855A1 (en) | Method and system for clustering event messages | |
US20150370799A1 (en) | Method and system for clustering and prioritizing event messages | |
US10120928B2 (en) | Method and system for clustering event messages and managing event-message clusters | |
WO2014180143A1 (en) | Methods and systems for data serialization and deserialization | |
CN111414381B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN103870338A (zh) | 一种基于cpu核管理的分布式并行计算平台及方法 | |
CN104077420A (zh) | 一种数据导入HBase数据库的方法和装置 | |
CN113254445B (zh) | 实时数据存储方法、装置、计算机设备及存储介质 | |
US20170085653A1 (en) | Method, device and system for message distribution | |
CN109376015A (zh) | 用于任务调度系统的日志阻塞解决方法及系统 | |
US10592169B2 (en) | Methods and systems that efficiently store metric data to enable period and peak detection | |
CN113703997A (zh) | 集成多种消息代理的双向异步通信中间件系统及实现方法 | |
CN116382773A (zh) | 一种部署PyFlink任务的方法 | |
CN111813758A (zh) | 数据库文件分布式分析方法、装置、服务器及存储介质 | |
US10536328B2 (en) | Methods and systems that implement an application-level tunnel through which long syslog messages are transmitted | |
CN106653027A (zh) | 一种基于NodeJS的智能家居语音控制系统 | |
CN105704253A (zh) | 一种采集主机资源的方法、装置和系统 | |
CN113010542A (zh) | 业务数据处理方法、装置、计算机设备及存储介质 | |
US8280950B2 (en) | Automatic client-server code generator | |
EP4102361A2 (en) | Method and apparatus for managing functions of a query engine | |
CN112231409B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170510 |
|
RJ01 | Rejection of invention patent application after publication |