基于PSTN的智能家居远程语音控制系统设计
扫描二维码
随时随地手机看文章
摘要:结合语音识别技术、嵌入式技术设计了智能家居语音控制系统,根据智能家居控制的特点以及人机自然交互的理念,设计了一种利用S3C2410设计的智能家居语音控制器,给出了整体设计框图、硬件电路的各部分具体构成以及相应的软件设计思想。该方案设计并研制出的语音控制器具有成本低,且既能进行本地控制又能通过PSTN实现远程控制的特点。实验表明,该语音控制系统的语音识别效率高,可靠性强。
关键词:远程控制;语音识别;PSTN;MFCC;HMM
0 引言
随着科技的发展,越来越多的智能家居产品进入人们的家庭,如何对它们进行简单、有效的控制是摆在人们面前的一个难题。另一方面,人们渴望用电话在需要时远程控制各种家电以方便生活之需。目前,针对智能家居的远程控制往往采用类似于计算机网络的分层体系结构,成本较高。由于家电控制网络传送的信息量是很少的,不必像计算机网络那样进行分层设计,故结合语音识别技术、PSTN(公共交换电话网)等实现了智能家居的本地及远程控制。
1 整体方案设计
目前,常用的语音识别方法有DTW(动态时间规整)、HMM(隐马尔科夫模型)、VQ(矢量量化)和人工神经网络,考虑到数据量、实时性、识别率及控制人为多数的问题,采用了VQ和HMM相结合的方式。
语音控制系统主要有预处理、特征提取、语音识别及控制程序组成,其原理框图如图1所示,图1中码书是输入矢量的近似矢量的集合。
当前控制技术正从传统控制向现场总线控制以及网络控制跨越,RS 485是现场总线中使用较广泛的一种,本文结合语音识别技术、嵌入式技术和现场总线技术,采用ARM(三星公司生产的S3C2410)作为语音控制器的处理器,设计了智能家居语音控制系统,其系统框图如图2所示。
2 硬件设计
硬件部分包括预处理模块设计、振铃检测电路、总线接口设计以及电器控制电路设计。其中,预处理模块包括功率放大电路、自增益控制电路(AGC)、低通滤波器和A/D变换电路。
预处理包括自增益控制电路、低通滤波器及A/D变换电路。自增益控制电路是为了把输入的语音信号控制在一定的幅度内,低通滤波器是为了滤除高频(大于滤波器截止频率)噪声。自增益控制电路采用M51304L芯片实现;低通滤波器采用4节巴特沃思型低通滤波器,其截止频率为4.8 kHz;预加重电路采用集成运算放大器来实现。A/D变换电路采用UDA1341芯片,采样频率设置为8 kHz,通过S3C2410的IIS接口与处理器相连。
2.1 振铃检测电路设计
如图3所示,电铃检测信号通过C8,D1,R3~R5和C9共同构成的整形电路整形后输入光电耦合器TLP521,在光耦的后端转化为TTL电平,然后送到ARM的UART1的RXD端进行检测。
2.2 自动摘机电路设计
如图4所示,摘机信号由ARM中UART1的TXD脚发出,当TXD发送高电平时,驱动晶体管VT2导通,这又使VT1导通,相当于在电话线路上并人了一个330Ω的电阻,同时加上并在其上的发光二极管的消耗,一方面使模拟摘机电流达到30 mA,另一方面用于指示摘机。因为VT1的电流大于30mA时,控制电路向交换机发出模拟摘机信号,交换机响应摘机信号,完成电话线路的接通。
2.3 总线接口设计
RS 485接口常用的通信方式有半双工通信和全双工通信2种。在大多数情况下,RS 485的端口连接都采用半双工通信方式。结合家庭控制网络的特点,本系统也采用半双工通信方式。图5为RS 485端口半双工连接的电路图。其中,RS 485差动总线收发器采用SN75176,图中有一个UART是ARM的,其余为单片机的。
2.4 电器控制电路的设计
该控制电路主要由单片机、晶闸管组成,如图6所示。
当单片机接收到相应的控制命令时,向P1.0发送相应的占空比脉冲信号,可实现连续控制或开关量的控制。
例如,当从本地或从电话发出打开热水器时,经过语音控制器识别后,语音控制器通过URAT0的TXD端口向总线上发送打开热水器命令,连接在总线上的单片机通过RXD端口识别该命令,然后向P1.0发送占空比为∞的信号,既是高电平,则热水器被打开。
3 软件设计
软件部分的设计包括特征提取模块、矢量量化模块、HMM模块。
特征提取采用MFCC。首先做预加重处理,然后进行加窗,窗函数的宽度采用120点。将加窗处理过的时域信号x(n)后补若干0,形成长为256点的序列,然后经过256点FFT(快速傅里叶变换)后得到线性频谱X(k),然后将X(k)通过26维的MEL带通滤波器组并通过对数能量的处理得到对数频谱S(m),将S(m)进行离散余弦变换(DCT)就得到26维的MFCC。取MFCC的前12维作为语音特征矢量。
矢量量化采用LBG算法。码字搜索则采用最近邻搜索算法。该算法的思想把待识别的矢量与码字逐一比较,计算其失真,然后把该矢量归类为失真最小的码字所属的类(胞腔)。
HMM采用离散从左到右无跳转的HMM,HMM训练采用Baum-Welch算法,识别过程采用前向一后向算法。
4 结语
本文结合语音识别技术、嵌入式技术以及现场总线技术设计了智能家居语音控制系统的方案,获得了较高的识别率。结合振铃检测及自动摘机电路实现了智能家居语音控制系统的远程控制,由于采用嵌入式技术,大大降低了系统成本。