基于STM32的语音识别智能家居控制系统设计详解

## **基于 STM32 的语音识别智能家居控制系统的设计(LD3320语音识别芯片+ESP8266 WIFI模块(阿里云 或ONENET或局域网)+DHT11温湿度采集+MQ系列 烟雾及可燃气体+蜂鸣器+步进电机模拟窗帘+OLED液晶显示+手机APP)**

本文采用LD3320语音识别芯片+ESP8266 WIFI模块+DHT11温湿度采集+MQ系列 烟雾及可燃气体+蜂鸣器+步进电机模拟窗帘+OLED液晶显示+手机APP制作的基于 STM32 提出一种语音识别智能家居控制系统,实现对家居的控制。该设计不需要借助互联网、移动设备,即可在无负担的情况下通过语音操控家中的各种常用家居,不仅能够为家庭安全提供全面保障,还能为残障人士提供方便。

## **引言**
  随着生活水平的不断提高,人们对家庭的家居需求提出了更高的要求,一个安全舒适的居住环境已经成为很多人的追求。近年来,智能家居控制系统的研究较为热门,多数是基于物联网技术实现的,对网络的要求较高,再加上家居控制系统的成本较大,导致智能家居并未广泛普及。而语音识别系统是将声学、语音学和语言学完美结合起来,使得目前基于语音智能识别的技术逐渐发展成为人工智能的关键技术。特别是语音识别,让智能家居控制系统的应用范围得到拓展,且能够很好地应用于普通家庭的智能家居控制系统设计中,使智能家居真正服务于人类成为可能。
**1.1 LD3320 芯片**
LD3320 芯片是一个专用于语音识别的芯片,该芯片在设计时注重高效与节能,不需要外接任何辅助芯片,直接继承了语音识别处理模块和外部电路,如麦克风接口、语音输出接口、AD/DA 转换器等,使其可以实现语音识别、声音控制及人机对话等功能。该芯片的主要特征如下。第一,能完成非特定人的语音识别命令,不需要录音,用户只需要使用相同的语言就可以识别,且识别效率相比之前大大提高,高达 95%。第二,识别语句是动态可编辑的,在设计时可以根据具体情况考虑多种可能,如设置 50 条识别语句作为语音命令的候选语音,以提高系统的整体水平。但设置时要注意识别语句的长度,如果是汉字,则不能超过 10 个,设置拼音则不能超过 79 个。第三,支持串行和并行接口,也可设置为休眠状态,方便激活 [1]。其实物如下

349b51a9804f47158238eb636fd945cf.png#pic_center**1.2 1.2 OLED显示电路**
OLED 屏幕作为一种新型的显示技术,其自身可以发光,亮度,对比度高,功耗低,在当下备受追捧。而在我们正常的显示调整参数过程中,我们越来越多的使用这种屏幕。我们使用的一般是分辨率为 128×64 ,屏幕尺寸为 0.96 寸。由于其较小的尺寸和比较高的分辨率,让它有着很好的显示效果和便携性。目前我们经常使用的 OLED 屏幕一般有两种接口,IIC 或者 SPI ,两者使用的通信协议稍有不同,这里以 SPI 协议的 OLED 屏幕为例,带来它的使用方法。1e87b2fbd0a0427dbf7aec3987d80c57.png#pic_center

 956e21e328984d528d161dd8703e22b7.png#pic_center

**1.3 DHT11温湿度采集电路**

DHT11 是一款湿温度一体化的数字传感器。该传感器包括一个电阻式测湿元件和一个 NTC测温元件,并与一个高性能 8 位单片机相连接。通过单片机等微处理器简单的电路连接就能够实时的采集本地湿度和温度。DHT11 与单片机之间能采用简单的单总线进行通信,仅仅需要一个 I/O 口。传感器内部湿度和温度数据 40Bit 的数据一次性传给单片机,数据采用校验和方式进行校验,有效的保证数据传输的准确性。DHT11 功耗很低,5V 电源电压下,工作平均最大电流 0.5mA。
DHT11 的技术参数如下:
⚫ 工作电压范围:3.3V-5.5V
⚫ 工作电流 :平均 0.5mA
⚫ 输出:单总线数字信号
⚫ 测量范围:湿度 20~90%RH,温度 0~50℃
⚫ 精度 :湿度±5%,温度±2℃
⚫ 分辨率 :湿度 1%,温度 1℃
b167c237ec0d4994a1bc047f9bfbfb24.png

**1.4 步进电机控制电路**

1cca8cb941894758ac1d3bb62ba90ebe.png#pic_center

d1bc13a8abbb443fa05b8fc60b18c376.png#pic_center

**1.5 ESP8266联网电路**
其连接 阿里云界面获知也可以连接局域网操作,或者连接远程服务器操作。
764deb8b2af14e47807f6283899449b6.png6167180e3fe24e70be7f99ae1ee5600e.png

501f853b92ed4002998715b56991f9be.png

具体步骤省略,最终界面效果如下图所示。
c46bb699cc8348b1b7b7bdfcf25fe4ce.png其ESP8266芯片采用如下所示。
676e1b1905b6434d8cd1d88513dffea6.png

**其操作步骤如下图所示。**

fa23b30228674ad4a040d28c11b9fc9f.png

## 2 硬件电路设计
本文将 STM32F103RCT6 作为整个控制系统的核心主控芯片,结合 LD3320 构建语音识别的家居控制电路。该电路包含风扇控制、智能灯控制、智能窗帘控制 3 个部分。首先,风扇控制采用 直流电机来实现,通过语音控制来实现风扇调档;其次,智能灯采用 PCB板 上的LED灯来模拟实现,并通过单片机 PA8 的 GPIO 定时器复用功能产生PWM,通过设置高电平的占空比来完成灯泡明暗程度的调节;最后,智能窗帘采用高精度步进电机来实现,相比于传统的直流电机能够有效克服窗帘在关闭时的阻力。并将温湿度烟雾灯数据上发到***阿里云或者onenet*** 服务器上,最终下位机将数据上发到手机APP上,同时手机APP可以远程操作下位机,达到控制风扇,灯、以及窗帘的效果。其结构框图如下所示。其硬件电路图如下所示,包含PCB电路图

7abf8d4572ec4ed6bcf167d747189bf6.png1b8722f6103f492596de3e669aa001f9.png

cec06023d4204d3680e0f78f180ece8c.png

## 3 软件设计

软件设计是语音智能家居系统的核心部分,包含智能语音识别设计、ESP8266联网设计、OLED 屏幕驱动设计、PWM 输出控制设计、温湿度驱动设计和智能窗帘驱动设计、报警电路设计 7 部分。通过这些设计,使得软硬相结合,完成系统采集和输出的整体控制。这里的智能语音识别设计程序包含语音识别和判断,是整个设计的核心部分。在语音识别时,将识别语句导入芯片中,每个识别语句都会对应一个特定的字节编号,不同的语句可以是相同编号,但是不需要连续,每条语句都是采用标准汉语拼音以小写字母形式编程,以空格形式分开每个汉语拼音。在语音识别判断时,通过两级口令的设计模式来实现,由LD3320 进行处理判断,同时使用一级口令(唤醒口令)与二级口令(操作口令)提高识别的效率和准确率,大大降低了错误的语音识别,提高了对家庭设备的控制,有效降低了误触发的概率。

**

## 4 实物展示
下图为***控制系统下位机操作端(STM32操作端)**,包含如下功能。
f5e536e1b57241d1a7094397300a6c65.png#pic_center下图为手机APP上位机端,手机APP软代码全部包含,如有需要,请联系我。a6189ea3454849da8d266963c4316c93.png#pic_center

## 5,具体操作视频详细见下面视频

[智能家居语音控制系统视频连接](https://live.csdn.net/v/252262)
https://live.csdn.net/v/2522622

**6 代码及仿真**
**

##

**

物联沃分享整理
物联沃-IOTWORD物联网 » 基于STM32的语音识别智能家居控制系统设计详解

发表评论