一种基于NodeJS的智能家居语音控制系统技术方案

技术编号:15331937 阅读:906 留言:0更新日期:2017-05-16 15:05
本发明专利技术公开了一种基于NodeJS的智能家居语音控制系统,实现了基于NodeJS的智能家居语音控制系统服务器端总体结构、技术手段和主要功能模块;服务器端主要实现实时语音识别,通过把接收的语音数据发送给讯飞语音云端识别,把识别结果返回给客户端;此外,NodeJS采用事件驱动、异步编程,其突出的优点使得程序能够实现高并发处理,NodeJS非阻塞模式的J0处理给NodeJS带来在相对低系统资源耗用下的高性能与出众的负载能力使得本发明专利技术具有极高的实用性能。

A smart home speech control system based on NodeJS

The invention discloses an intelligent voice control system based on Home Furnishing NodeJS, realizes the intelligent voice control system Home Furnishing NodeJS server architecture, technical means and main function modules based on the server; mainly realizes the real-time speech recognition, the received voice data is sent to the speech cloud recognition, the recognition results are returned to the in addition, NodeJS client; using event driven, asynchronous programming, the advantages of the program can achieve high concurrency, NodeJS non blocking mode J0 NodeJS to bring in a relatively high performance system resource utilization under low and superior load capacity so that the present invention has high practical performance.

【技术实现步骤摘要】
一种基于NodeJS的智能家居语音控制系统
本专利技术涉及计算机
,特别是涉及一种基于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对象会被通知,不会丢失上下文环境,也不导致程序错误立即推出。为了描述的方便,描述以上装置时以功能分为各种单元、模块分别描述。当然,在实施本申请时可以把各单元、模块的功能在同一个或多个软件和/或硬件中实现。通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在本文档来自技高网
...
一种基于NodeJS的智能家居语音控制系统

【技术保护点】
一种基于NodeJS的智能家居语音控制系统,其特征在于,包括数据模块、云端识别模块、项目产品化模块;所述的数据模块,用于实现语音数据的接收、保存和删除;所述的云端识别模块,用于对讯飞语音的参数配置提供识别权限,进行讯飞语音云端识别权限、语音识别相关参数的设置,以及NodeJS的http请求实现;所述的项目产品化模块,用于崩溃日志和系统运行日志的记录,对系统运行出错时进行系统崩溃处理和系统的内存控制。

【技术特征摘要】
1.一种基于NodeJS的智能家居语音控制系统,其特征在于,包括数据模块、云端识别模块、项目产品化模块;所述的数据模块,用于实现语音数据的接收、保存和删除;所述的云端识别模块,用于对讯飞语音的参数配置提供识别权限,进行讯飞语音云端识别权限、语音识别相关参数的设置,以及NodeJS的http请求实现;所述的项目产品化模块,用于崩溃日志和系统运行日志的记录,对系统运行出错时进行系统崩溃处理和系统的内存控制。2.根据权利要求1所述的一种基于NodeJS的智能家居语音控制系统,其特征在于,所述的项目产品化模块包括工作日志和内存监控子模块,进程守...

【专利技术属性】
技术研发人员:吴双竞
申请(专利权)人:安徽金猫数字科技有限公司
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1