APP下载

基于STM32芯片的Wi-Fi语音识别风扇控制系统的设计与实现

2022-04-13

洛阳师范学院学报 2022年2期
关键词:挡位电路图按键

林 蔚

(漳州职业技术学院 电子工程系, 福建 漳州 363000)

电风扇在中国依然有庞大的需求市场[1]. 目前, 智能风扇已经开始投入市场, 并且在不断追求更加人性化的功能. 《2019年中国风扇行业市场发展现状及趋势分析》显示[2]:目前国内市面上的智能化风扇产品的销售份额超过40%, 其中智能控制、 变频及红外遥控为主要的需求点. 但市面上的传统风扇存在几个缺点[3-5]:(1)需要手动调节风速以及定时时间, 功能单一, 使用较为不便; (2)市场上的智能风扇也不断出现, 其通过红外遥控器或语音实现风速调节, 但仍需人为操作, 且价格很高; (3)室温每天中会不断变化, 但在使用者不方便移动或者睡着的情况下, 风速不能随着环境温度的变化而自行调节. 针对以上问题, 笔者设计并实现了一种智能风扇多功能自动调速系统, 其具有以下特点:(1)可以根据周围环境的温度变化自动调节风速的大小; (2)可以通过语音识别进行智能控制风速, 即人机交互; (3)可以通过智能手机APP和无线Wi-Fi技术, 远程控制风速.

1 系统总体结构

本文提出的智能风扇系统是基于USB接口的电风扇进行设计的, 此系统工作模式可以分为智能调节模式和固定挡位模式[6-7]. 在智能调节模式下, 系统可以根据温度传感器检测的温度变化来改变风扇的挡位, 在温度区间内分为4个挡位(0、 1、 2、 3), 挡位0风扇不转, 挡位1、 2、 3, 风速递增; 在固定挡位模式下, 用户可以自由设置风扇的4个挡位. 固定挡位模式使用板载按键(固定的键盘控制)、 红外遥控或语音输入控制风扇的不同挡位. 同时风扇的转速可以通过发光二极管提示, 风扇转速越快, 灯越亮. 每次按键按下或者遥控器按键按下, 蜂鸣器会发出“滴”声进行提示. 系统框架图如图1所示, 其主要由单片机最小系统、 按键模块、红外接收模块、 语音识别模块、 温度OLED显示模块、 Wi-Fi无线模块、 风扇速度控制模块以及蜂鸣器提示模块构成. 单片机采用TI公司的STM32作为主控芯片[8], 用于处理各模块传送来的信息数据, 温度检测电路用于检测用户的环境实时温度, 语音识别模块用于检测用户的语音输入, Wi-Fi模块、 红外接收模块和红外遥控器用于接收手机APP的指令, OLED显示电路用于界面显示, 风扇驱动电路用于控制风扇的转速, 蜂鸣器用于对用户按键进行声音提示.

图1 系统框架图

2 系统硬件设计

2.1 按键模块

按键控制电路主要实现对风扇模式的转换、 温度区间的设置和风扇挡位的调节. 当按键按下之后, 如果单片机检测到引脚为低电平, 则表示用户按下此按键; 相反当按键没有按下的时候, 单片机则检测到的是高电平. 智能温控风扇系统一共使用了4个输入按键, 分别接到单片机的P22引脚、 P23引脚、 P24引脚、 P25引脚, 每一个按键都有对应的功能, 按键电路图如图2所示.

图2 按键电路图

2.2 红外接收模块

该模块使用HS0038红外集成接收信息, 当接收到38kHz红外信号后, HS0038红外集成接收头将对信号进行解调, 数据输出引脚OUT将解调后的数据输出到单片机引脚P20, 红外接收电路图如图3所示. 本文红外遥控器红外数据解析采用NEC协议[9]. 红外遥控可实现对风扇模式的转换、 温度区间的设置和风扇挡位的调节.

图3 红外接收电路图

2.3 语音识别模块

该模块将LD3320语音识别芯片[10]模块的串口接到主控单片机的串口P11和P12, 其电路图如图4所示. 语音识别模块识别到预设话语后(包括“打开风扇”、 “设为挡位1”“设为挡位2”“设为挡位3”和“关闭风扇”这几个命令), 通过串口发送识别信息给主控单片机, 随后主控单片机根据信息实现相应功能.

图4 语音识别模块电路图

2.4 温度检测模块

该模块使用DS18B20数字温度传感器[11]检测环境实时温度, 并将检测到的温度值送入单片机P21引脚, 其电路图如图5所示. 经过单片机处理后显示此时温度值, 并与设定温度值做比较, 之后输出相应占空比的PWM脉冲信号.

图5 温度传感器电路图

2.5 Wi-Fi无线模块

该模块使用MT7681嵌入式串口WI-FI模块[12]接收连接的手机发送来的指令, 电路图如图6所示. 其中, 引脚3为串口发送端, 引脚2为串口接收端. 通过配置软件配置Wi-Fi模块为无线AP, 并开启TCP服务器功能, 之后负责将串口发来的数据经过Wi-Fi模块, 并转换为TCP包, 发送给连接的手机, 其通信方式为Socket, 其参数配置图如图7所示.

图6 Wi-Fi模块电路图

图7 Wi-Fi模块参数配置图

2.6 风扇驱动模块

该模块电路图如图8所示. 其中, P1风扇通过MOSFET管与单片机P32引脚相连. P32输出是脉冲宽度调制(PWM)信号, 其利用PWM的占空比控制MOSFET管的导通时间, 通过判断导通时间长短来控制风扇的转速:PWM的占空比越高, 等效于MOSFET管的导通时间越长, P1风扇就会转得越快; 反之, PWM的占空比越低, 就等效于MOSFET管的导通时间越短, P1风扇就会转得越慢. 该程序可以通过控制单片机为脉宽调制设置不同的占空比, 以方便地设置风扇的转速.

图8 风扇驱动电路图

3 系统软件设计

3.1 系统主控端主程序设计

首先初始化系统, 初始化完毕之后, 系统进入待机状态, 在待机过程中循环检测红外遥控器是否按下、 板载按键是否按下、 系统是否进入语音识别模块以及系统是否到达刷新界面显示时间, 并根据不同动作标识进入相应不同的处理子模块, 之后调用风扇速度控制子程序依照当前的设置控制风扇的转速, 处理完毕后重新进入待机检测状态. 本系统的主程序流程图如图9所示. 具体流程操作如下:(1)系统上电后, 系统初始化, 根据温度传感器检测环境温度. (2)OLED显示屏显示出当前环境温度、 风扇挡位、 风扇工作模式. (3)检测红外遥控器和板载按键是否按下、 系统是否到达刷新界面显示时间. 当检测到红外遥控器按键按下时, 调用按键处理子程序进行按键处理; 当检测到板载按键按下时, 调用按键处理子程序进行按键处理; 当检测到系统刷新时间到来时, 调用系统刷新子程序进行系统界面的显示刷新, 并且调用风扇速度控制子程序, 按照设置控制风扇的转速. (4)当用户按下红外遥控器或者板载的按键1时, 系统在智能调节和固定挡位模式下转换. (5)如果在固定模式下, 用户按下红外遥控器或者板载的按键3、 4, 则进行挡位切换. (6)如果处于设置温度区间界面, 按下按键2、 3、 4, 则进行风扇的挡位温度区间设置, 设置完按下2返回主界面. (7)在智能调节模块下, 风扇会依据环境温度的变化而改变风扇挡位. 当环境温度低于25°时风扇关闭; 当环境温度处于25°到28°时, 风扇挡位为一挡; 当环境温度处于28°到30°时, 风扇挡位为二挡; 当环境温度高于30°时, 风扇挡位为三挡. 风扇的转速和指示灯的亮度随着风扇挡位的变化而变化:风扇挡位越高, 风扇转速越快, 指示灯越亮; 风扇挡位越低, 风扇转速越慢, 指示灯越暗. (8)当用户对着系统发出语音控制信号时, 用语音“打开风扇”或“智能调节”设置智能温控风扇为智能调节模式, 用语音“关闭风扇”设置智能温控风扇为固定挡位模式并设置为挡位0, 语音“设为挡位1”“设为挡位2”“设为挡位3”会设置智能温控风扇为固定挡位模式并设置为相应挡位. (9)当用户通过Wi-Fi无线传输手机APP控制信号时, 可以根据APP界面不同的按键进行相应的风速控制及开关等动作. (10)当系统接收到用户的输入(包括板载按键输入、 红外遥控器按键输入和语音指令输入)后, 控制蜂鸣器发出“滴”声以提示用户系统已经接收到用户的输入设置.

图9 系统主程序流程图

3.2 手机端APP设计

手机端设计包括风速控制模块和网络连接模块. 风速控制模块包含智能调节、 挡位风速控制及开关按键等. 网络连接模块连接主控端与手机之间的通信. 安卓系统的APP系统功能结构如图10所示.

图10 手机端APP设计

4 系统联机调试

系统联机调试包括硬件主控部分和手机APP控制部分. 首先, 将单片机的P32引脚接到N沟道MOSFET管(场效应管)IRL540NPBF, C8电容和C9电容为风扇提供稳压供电能力, P1排针接风扇. 当单片机的P32引脚输出为低电平时, MOSFET管不导通, 测试风扇是否不转; 当单片机的P32引脚输出为高电平3.3V时, MOSFET管导通, 测试风扇是否转动.

然后, 测试风扇自动调节功能. 当用户开启风扇后, 测试风扇是否自动开启至智能调节模式, 是否可以根据温度调节风速(即温度低于25°风扇是否呈关闭状态; 温度在25°至28°时, 风扇挡位是否为1挡; 温度在28°至30°时, 风扇是否为2挡; 温度高于30°时, 风扇是否为3挡).

最后, 测试语音指令功能. 在风扇关闭状态下, 用语音指令“打开风扇”, 测试风扇是否打开并进入智能调节模式; 分别使用语音指令“设为挡位1”“设为挡位2”和“设为挡位3”, 测试风扇挡位是否调节为相应挡位; 使用语音指令“关闭风扇”, 测试风扇是否关闭.

经测试, 可以完成上述功能.

5 结语

此系统与传统的电风扇相比较, 结合了基于Wi-Fi手机控制、 语音识别和温控等功能, 实现了远程控制、 语音人机交互、 环境温度智能控制、 红外遥控及板载按键控制等操作, 可以在一定程度上满足人们对于智能化风扇的需求.

猜你喜欢

挡位电路图按键
带你学习实物电路图的连接
“且”的真与假
第7讲 电路图与动态电路专题复习
基于有限状态机的按键检测程序设计
比亚迪E6纯电动汽车系统结构原理(四)
按键消抖在单片机和FPGA实验教学中的应用
现代名图偶尔无挡位显示
一种多方向导光按键结构设计
多挡电热器的挡位变换原理与方法
从挡位发展历程分析自动变速器动力流