集成语音感知与云平台的多任务智能楼宇控制系统
摘要
十八大之后,我国智慧城市建设在科技发展推动下进步快速,智能楼宇系统作为其中核心部分整合了自动控制、物联网、大数据、人工智能等技术,能实现对建筑设施全方位智能管理进而提升安全、舒适与能效,在公共、商业及民生等领域得到广泛应用,这些技术发展不仅促进节能减排与可持续发展还驱动信息技术革新,未来研究依托技术迭代与实践深化能为智慧城市提供更高效安全智能的解决方案。本文以STM32F103C8T6微控制器为核心构建起一套智能楼宇控制系统,目的是基于多模块协同工作方式实现环境参数实时监测、设备自动控制与远程管理等功能。系统集成温湿度传感器(DHT11)、烟雾传感器(MQ-2)、光敏电阻等环境传感器模块,结合OLED显示、ESP8266-01 WiFi通信及SU-03T离线语音模块,形成数据采集、阈值报警、交互控制与云端互联的综合解决方案。设计选用STM32F103C8T6为主控芯片,基于FreeRTOS实时操作系统实现多任务调度,采用PWM算法动态调节照明灯亮度与风扇转速,在通过Proteus仿真验证功能可行性后完成双层PCB布局优化与硬件集成。实际测试中OLED界面能实时显示环境参数,支持华为云平台远程监控与语音指令交互,响应时间短且控制精度高可满足智能楼宇自动化需求。
关键词:智能楼宇;STM32单片机;实时操作系统;物联网;脉冲宽度调制控制算法
1 系统可行性分析
1.1作品难点与创新
1.1.1作品难点
近年来,智慧城市技术逐渐受到广泛关注。作为智慧城市的重要组成部分,智能楼宇融合了先进的自动化、物联网、大数据与人工智能等技术,旨在提升建筑在能源管理、环境监控、安防管理等方面的效率。因此,本文设计了一种集成语音感知与云平台的多任务智能楼宇控制系统。在设计过程中,面临了一些具有挑战性的技术难题,主要体现在以下几个方面:
1.智能楼宇控制系统需集成多种环境传感器,传感器输出数据类型各异,大多数为电压信号。而核心问题在于如何设计高精度算法,将采集到的电压数据有效转换为对应的实际环境参数,以确保系统能够正确反映楼宇环境。
2.系统基于FreeRTOS实现多任务并行处理,涉及设备驱动、数据采集、阈值报警等任务。设计难点在于如何合理分配资源、确保关键任务实时响应。通过高效调度与管理保证任务按优先级运行,提升系统稳定性与实时监控能力。
3.系统通过PWM调光和阈值联动控制自动调节楼宇设备的运行状态。挑战在于如何快速响应环境数据波动,实时调整设备参数,以优化能源使用和提升舒适度。例如系统需迅速响应烟雾浓度变化,触发报警并调整设备,避免安全风险。
4.人机交互界面的设计与开发。该界面需实时采集楼宇环境参数,并通过OLED显示和语音指令控制提升用户体验。设计难点在于如何清晰展示环境数据、报警信息和控制选项,同时确保语音交互的高效性。
5.通信稳定性与系统扩展性。系统通过ESP8266实时上传数据到云平台,要求保持通信稳定性、数据安全与低延迟响应,同时具备良好的扩展性,支持新增传感器与设备,并兼容不同楼宇的硬件需求。
1.1.2 作品创新
本文研究的是一款基于STM32F103作为主控,搭载华为云平台及语音交互模块的多任务智能楼宇控制系统。系统集成温湿度、烟雾、光照等环境传感器模块,采用FreeRTOS实现多任务调度,结合OLED显示、WiFi通信及SU-03T语音模块,形成数据采集、阈值报警、交互控制及云端互联的综合解决方案。
对于系统的控制方式,本文基于楼宇实际环境,选择主核心模块控制方式,可以更加便捷的对楼宇环境进行实时捕捉,不需要人为的活动就可以实现对楼宇所有情况进行实时监测并且方便各住户获取信息。对于紧急情况有一定的报警功能,增加了系统的可靠性。
对于传感器所采集的信息以及楼宇的各设施情况都可以通过WiFi实时同步到华为云平台进行监控并且系统支持语音交互,响应时间短精度高,方便相关负责人进行查看,不必时刻需要特定进行跟踪,节约人力成本。
1.2 方案论证与设计
在整个系统的设计中,多传感器任务协同运行实时采集楼宇环境数据的控制系统尤为重要,它是整个系统稳定运行的核心。因此,楼宇系统利用FreeRTOS实时操作系统实现多任务调度,保证系统各模块间协同运行的高效性与稳定性。
根据对整个楼宇环境监测系统的功能需求,智能楼宇控制系统主要包括:电源模块、微控制器模块、烟雾模块、WiFi模块、电机驱动模块、语音模块等。系统的总体框架如图1‑1所示。在具体的设计过程中,结合FreeRTOS操作系统,各个模块硬件以及软件部分任务相互独立,为后续的功能扩展和系统升级创造条件。
智能楼宇控制系统的各个模块功能如下:电源模块负责整个控制系统的供电,包括主控制器、各个传感器所需的5V、3.3V;SU-03T语音模块提供与用户的语音交互功能,支持语音识别与指令执行,通过语音控制实现楼宇设备的开关控制;MQ-2烟雾模块用于监测楼宇内的烟雾浓度,当浓度超过设定的阈值时,系统语音模块会发出报警信号,提示楼宇管理人员进行处理;DHT11温湿度模块实时监控环境的温度和湿度,当环境参数异常时,系统会自动调节或报警;光照模块用于感知楼宇内部的光照强度,系统根据光照数据自动调节照明灯模块的亮度,确保楼宇内的照明系统能够根据实际需要进行调节;OLED模块用于显示楼宇当前的环境数据,包括温湿度、烟雾浓度等信息,提供直观的界面供用户查看;WiFi模块支持与华为云平台的连接,实现远程控制与数据上传,方便楼宇管理人员随时获取楼宇环境数据,并进行远程操作;电机驱动模块则控制风扇等设备的启动与停止,依据温湿度和空气质量数据,自动调节空气流通;风扇模块通过电机驱动,为楼宇提供良好的通风效果,保持室内空气清新。
图1‑1智能楼宇控制系统框图
2 原理分析与硬件电路图
2.1 智能楼宇控制系统设计
根据系统功能需求,智能楼宇控制系统主要包括电源模块、微控制器模块、烟雾检测模块、WiFi通信模块和语音模块等,系统结构以及原理图分别如图2‑1、图2‑2所示。在FreeRTOS的管理下,各功能模块以独立任务形式运行,实现了高度模块化,显著提升了系统的可维护性和可扩展性。
本系统以STM32微控制器为核心,通过温湿度、光照及烟雾传感器实时采集楼宇环境参数。数据处理后,系统能自动响应:当检测值超过阈值时,会联动电机驱动模块启动风扇调节空气、自动调整灯光强度实现节能舒适,并通过蜂鸣器、预警灯和语音模块进行声光报警。语音模块采用SU-03T离线识别模组,支持用户语音控制设备和查询状态,提升交互智能性。OLED显示模块提供直观界面,实时展示环境数据并支持按键进行阈值调整和设备手动控制。通信方面,WiFi模块负责连接华为云平台,实现数据远程监控和设备远程管理。电源模块则为系统提供稳定的5V/3.3V电压保障。
图2‑1智能楼宇控制系统设计框图
图2‑2智能楼宇控制系统设计原理图
2.2 主控单元
本系统的主控芯片选用ST公司所生产的STM32F103C8T6单片机(见图2‑3)。该芯片是基于ARM Cortex-M3内核的32位高性能微控制器,它的主频最高达到72MHz,拥有64KB Flash和20KB SRAM,性能远超传统的8位单片机。其具备丰富的外设接口资源,例如多个GPIO口、USART、I2C等,能灵活接入各类传感器与执行设备,显著提升系统扩展性与响应速度。同时,芯片具备适中功耗与良好低功耗模式,有效兼顾了性能与能效。
2.3 温湿度模块
综合考虑性能、成本与工程适配性,本系统选用DHT11温湿度传感器作为温湿度监测模块的核心器件。其温度范围和湿度覆盖完全满足室内环境监测需求,虽然精度低于SHT10和AM2320,但凭借电阻式湿度敏感元件和NTC热敏电阻的复合传感结构,结合集成ASIC芯片实现数字化处理,具有结构简单、功耗低、成本低廉的优势。其采用单总线协议,显著降低开发难度与成本实现性能、经济性与可实现性的最优适配。
其工作流程遵循着严格的时序逻辑,主控发送初始化脉冲信号后,传感器从低功耗待机模式转变为高速模式,通过总线电平跳变实现主从同步,随后传输40位测量数据帧。其中数据帧依次包含8位湿度整数、8位湿度小数、8位温度整数、8位温度小数以及8位校验和。校验和通过前32位数据累加值和末8位校验字节比对,确保数据传输的完整性。在硬件连接方面如图2‑4所示,传感器通过VCC引脚接3.3V电源,GND引脚接地,DATA引脚与主控PB12端口构成通信链路,实现环境参数实时采集与数字化传输。
图2‑4 DHT11温湿度传感器原理图及实物图
2.4 烟雾模块设计
烟雾监测模块选用MQ-2型半导体气敏传感器,该传感器基于金属氧化物半导体气敏原理,以二氧化锡(SnO₂)为敏感材料,通过气体吸附引发的氧化还原反应改变材料载流子浓度,使体电阻值显著变化,据此反演气体浓度。具备广谱检测能力,可监测烟雾颗粒及甲烷等可燃气体。
微控制器接收MQ-2烟雾传感器采集的ADC原始值MQ2_Value,进而得到电压:
其中5.0为烟雾传感器的工作电压,4096为ADC原始值的上限。
在得到电压值后计算传感器电阻RS:
其中VCC为电源电压,RL为负载电阻,在本系统中为0.5kΩ。
最终,烟雾浓度PPM的计算公式为
其中R0是基准电阻,在这个系统当中设定成6.64kΩ,11.5428和0.6549是针对烟雾所做的设定,在不同的环境之下需要进行修改。
MQ-2传感器采用四线制连接(如图2‑5):VCC接5V电源,GND接地,AO模拟输出经过RC滤波后接入主控PA1的ADC通道,实现烟雾浓度连续监测。DO引脚未启用,但保留作为报警功能的扩展接口,确保后续升级兼容性。
图2‑5 MQ-2烟雾传感器原理图及实物图
2.5 光照模块设计
光照强度检测模块选用基于硫化镉半导体材料构建的GL5516型光敏电阻传感器,其电阻值和光照强度呈负相关,即光照增强阻值降低,反之升高。通过分压电路将电阻变化转换为电压信号,实现对环境光照强度的连续监测。
传感器接口如图2‑6所示,采用四线制:VCC接3.3V,GND接地。AO输出经过低通滤波后接入主控PA6的12位ADC通道,所传输的数据经过一定处理获得当前环境的近似光照强度,光照强度分段及描述如表2‑1所示,能为照明设备的PWM调光控制提供闭环反馈输入。
表2‑1 光照强度分段及显示描述
光照强度范围(Lux) | 显示描述 | 说明 |
<5 | 黑暗 | 极低光照条件 |
5≤lux<50 | 昏暗 | 低光照环境 |
50≤lux<200 | 正常 | 适宜光照 |
200≤lux<500 | 灯光 | 人造光源环境 |
500≤lux<10000 | 阳光弱 | 自然光照充足 |
≥10000 | 阳光强 | 强光照环境 |
图2‑6 光敏电阻传感器原理图
2.6 通信模块
无线通信模块的核心组件选用ESP8266-01型WiFi通信模组,其内置完整的TCP/IP协议栈,支持与华为云IoT平台进行MQTT加密数据通信。系统采用AT指令集构建分层通信架构,底层硬件驱动层通过USART串口实现数据透传,中间协议解析层处理AT指令的封装与响应,上层应用服务层负责云端数据包的组帧与解析。
硬件接口如图2‑7所示,ESP8266-01采用四线制串行通信,VCC接3.3V,GND接地,模组TX引脚通过电平转换电路连接主控USART_RX(PA10),RX引脚则和USART_TX(PA9)构成双向数据传输通道。通信波特率设为115200bps并启用奇偶校验机制以保障数据传输可靠性。工作模式设置成STA(Station)+AP(Access Point)混合模式,既支持连接无线路由器进行广域物联网连接,又可作为独立热点供本地接入以形成冗余链路。
图2‑7 ESP8266-01 WIFI通信模块原理图
2.7 显示模块
显示模块采用1.3英寸OLED单元,基于主动矩阵驱动技术进行构建,具备128×64像素分辨率。其内部集成SSD1306显示驱动芯片,支持I²C总线通信协议,可构建高分辨率图形化交互界面。
硬件接口如图2‑8所示,采用四线制设计方案,VCC接3.3V,GND接地,SCL(Serial Clock)时钟经4.7kΩ上拉电阻与主控PB8端口相连,负责同步时序,SDA(Serial Data)双向数据线连接至PB9端口,在SCL时钟上升/下降沿触发逐位数据传输。驱动芯片支持硬件地址识别,可通过START起始条件、7位设备地址帧、ACK应答、数据帧及STOP停止条件构成的标准I²C序列实现多设备总线挂载。
图2‑8 1.3寸OLED显示屏原理图及实物图
2.8 语音模块
语音模块核心采用SU-03T离线语音识别芯片,具备成本低、功耗低且体积较小特性,最高可支持150条离线语音指令。用户需通过唤醒词将其唤醒,并发出对应指令使其工作。
在芯片配置上,将芯片7号引脚设为UART1_RX,负责接收主控发送的信息,8号引脚设为UART1_TX,负责向主控发送信息,波特率设置为115200。当用户说对唤醒词,语音模块将随机从设定的唤醒回复词中选择一条进行回复。微控制器平均每1000ms向语音模块更新一次当前环境数据,包括温湿度、烟雾浓度、光照强度等信息。当用户发出指令时,语音模块就会根据当前所存储的信息向用户进行回答。
SU-03T语音模块共有4个接口与微控制器相连,如图2‑9所示。其中VCC接5V电源,GND接地,引脚TXD连接主控的USART_RX接口PA3;引脚RXD连接微控制器的USART_TX接口PA2。此外,SU-03T模块通过SPK+/SPK-差分接口驱动喇叭实现语音播报,经MIC+/MIC-连接咪头采集用户指令。
3 软件设计与流程
3.1 软件系统总体架构
3.1.1 软件设计总流程图
为实现多模块协同与高效运行,系统采用基于FreeRTOS的多任务调度架构,具备良好的实时性与可扩展性。主控芯片STM32F103C8T6统一管理各类传感器与执行器,实现温湿度、烟雾、光照等环境参数的实时监测与灯光、风扇等设备的智能控制。
本系统的软件编写总流程如图3‑1所示,首先在上电启动阶段进行系统初始化,包括对主控芯片的时钟、GPIO、中断、串口、I2C等基础外设进行配置,同时初始化DHT11温湿度传感器、MQ-2烟雾传感器、光敏电阻模块、OLED显示屏、ESP8266通信模块及SU-03T语音识别模块等功能组件,随后创建FreeRTOS下的各个任务并启动调度器,进入多任务并发运行阶段。运行期间,系统通过定时任务持续采集各类环境数据,并将处理结果分别用于OLED显示更新、本地设备控制、语音指令响应以及与华为云平台的数据同步与远程控制交互。各任务之间通过队列或信号量等机制实现协调调度与数据共享,确保系统具备良好的实时性与响应速度,从而构建起一个稳定、高效且具备人机交互能力的智能楼宇控制系统。
图3‑1 系统总体流程图
3.1.2 软件开发软件介绍
系统软件开发主要基于STM32CubeMX和KeilUVision5两款工具完成。STM32CubeMX作为ST官方的图形化配置工具,简化了STM32F103C8T6的时钟、GPIO、USART、I2C等外设初始化,并自动生成基于HAL库的代码。KeilUVision5则用于主代码编写、编译、调试和下载,开发者在其环境中导入STM32CubeMX生成的工程,添加传感器读取、OLED控制、WiFi通信、语音识别及FreeRTOS多任务调度等功能。
3.2 任务划分与调度机制
3.2.1 常用实时操作系统
实时操作系统用于管理嵌入式系统的多任务并发和资源分配。FreeRTOS以开源、轻量和高度可移植著称,广泛应用于STM32等Cortex-M单片机,具备低资源占用、丰富文档和活跃社区优势。其任务调度、时间管理、中断处理、消息队列等功能提升了系统响应和维护效率。本项目选用FreeRTOS,实现多模块并发,提高实时性,并为后续扩展提供稳定基础。
3.2.1 程序执行流程
系统初始化时,STM32F103C8T6配置时钟、GPIO和中断,DHT11、MQ-2、GL5516传感器通过单总线或ADC完成通信与校准,风扇、灯光和蜂鸣器的PWM初始关闭。ESP8266-01通过AT指令连接Wi-Fi并配置MQTT,软件启动FreeRTOS调度器。
系统创建多个任务:报警任务实时监测环境参数并联动设备;数据采集任务周期读取传感器数据并传递;控制任务执行光照和温湿调节;通信任务定时上传数据至华为云并接收指令;用户交互任务处理按键和语音,管理OLED界面。FreeRTOS以抢占调度和事件标志组实现任务同步,空闲时进入低功耗模式。整体流程涵盖硬件自检、任务调度、异常处理和功能联动,保障系统实时、稳定和高效,支持智能楼宇自动化控制。
图3‑2 程序执行流程
3.3 各功能模块软件设计
3.3.1 环境传感器数据采集模块
本系统环境感知依托多传感器协作,包括DHT11温湿度传感器、MQ-2烟雾传感器和GL5516光敏电阻,数据采集流程如图3‑3所示。DHT11通过单总线定时采集温湿度数据,MQ-2和GL5516通过ADC通道采集烟雾浓度和光照强度。采集任务在FreeRTOS独立线程中周期执行,进行滤波和异常剔除,确保数据稳定准确。采集结果封装为结构体或JSON,通过消息队列传递给控制、显示和云端通信等模块,实现功能联动。
3.3.2 阈值判断与执行模块
本系统阈值判断模块通过设定温湿度、烟雾浓度和光照强度阈值,实现自动控制与告警。vDht11Task监测温湿度,默认阈值为温度28℃、湿度50%RH,超阈值时启动蜂鸣器、警示灯,语音播报,电机以20%速度运行,OLED显示“警报”;正常时关闭设备,显示“正常”。支持按键调节阈值并实时显示。vMq2Task定期读取烟雾浓度,超过200ppm触发语音警报,否则关闭报警设备。vLightTask将光照分为六级,低光强对应高PWM占空比,强光则关闭照明。OLED显示光照状态并智能调节灯光。整体结合阈值判断与输出控制,实现多传感器环境感知下的动态响应,提升系统智能与实用性。
3.4.3 语音识别与指令响应模块
本模块主要实现了用户通过语音指令触发系统响应的功能,语音识别结果由外部模块解码后,通过串口以指令码的形式传入系统中。系统中设置了消息帧解析和命令响应机制,用于接收语音控制指令并执行相应任务,如查询温湿度、气体浓度或环境光强等信息。
在程序设计中,任务函数vUpdataTask负责定期采集环境参数,并通过Send_Message函数以特定协议格式通过串口发送。其格式采用固定帧头(0xAA,0x55)和帧尾(0x55,0xAA),中间包含消息编号与数据主体。根据数据复杂度不同,支持多种数据类型发送模式。例如,主控实时将温度数据更新到语音芯片消息编号为0x01的数据中,当用户说出关键词“温度”时,语音识别模块将编号为0x01的数据提取并播报当前温度值。其他指令响应逻辑与此类似,均在vUpdataTask中以固定周期运行并等待指令调用。
3.4.4 MQTT协议与WiFi模块
本系统采用ESP8266WiFi模块作为无线通信接口,利用MQTT协议实现设备与华为云物联网平台之间的数据上传与交互。MQTT是一种轻量级、基于发布/订阅模式的消息传输协议,特别适用于资源受限的嵌入式设备。
WiFi模块通信由vWiFiTask任务实现,其核心流程包括WiFi连接、MQTT配置与认证、传感器数据采集及周期性上报。首先要初始化与连接网络,系统通过AT指令对ESP8266进行初始化,包括模块复位、关闭回显、设置双模工作以及连接指定WiFi网络,模块进入联网状态。其次,对MQTT进行三元组鉴权信息配置完成与华为云平台连接。其中鉴权信息根据用户ID与密码自动生成,如图3‑4。随后通过AT指令建立于华为云平台的TCP连接,端口为1883,协议为MQTT3.1.1。主控系统每隔一定时间通过传感器读取环境参数,获取数据后,系统通过发送JSON格式数据通过指定主题上报至华为云。
图3‑4三元组鉴权信息
4 系统测试与分析
4.1 OLED模块效果演示
系统上电后,依次执行硬件初始化、软件资源初始化及通信接口初始化,确保模块间可靠通信。随后,OLED加载图形化操作界面,提供基础功能交互。各功能模块自检通过后,系统进入正常运行状态,如图4‑1所示。
图4‑1 系统正常运行图
交互模块配置四个按键,从左至右依次为左/上、右/下、确认与返回,用户通过组合操作可实现界面切换、参数设置与设备控制功能。OLED模块共有6个子页面,如图4‑2所示,每个页面分别对应不同的功能。用户可以通过组合操作薄膜按键来浏览页面并进行相关操作。
4.1.1 温湿度界面
在温湿度界面中,用户可以实时查看当前环境的湿度和温度值。若当前环境的湿度和温度均未超过用户预先设定的阈值时,界面状态显示“正常”,并显示绿色指示灯,如图4‑3所示。方便用户快速、直观地了解当前环境的运行状态,并及时发现潜在的问题。
图4‑3 温湿度状态正常
当室内温度或湿度超过阈值时,系统进入警报状态,界面状态显示“警报”,系统警报灯亮,激活蜂鸣器,语音播报通知住户,如图4‑4所示。同时,风扇自动启动,帮助调节环境温湿度,直至恢复正常。如测试涵盖了不同程度的超标情况,以验证警报机制的有效性和及时性。测试结果表明,系统能够准确地响应阈值超标,并通过多重警报方式有效地提醒用户并采取措施,确保系统功能的可靠性。
图4‑4 温湿度异常报警
此外,系统设计了一个阈值设定子页面,如图4‑5所示。住户可以手动调整温湿度阈值,以适应不同环境和季节的需求,提高了系统的灵活性。阈值设定后,系统将自动保存并应用新的阈值,无需重启系统。
图4‑5 阈值设置界面
通过上述测试和分析,本系统在温湿度监测和自动调节方面表现出良好的性能和可靠性,能够有效地应对室内环境变化,为用户提供舒适的居住环境。
4.1.2 烟雾浓度界面
MQ2界面实时显示当前环境的烟雾浓度及系统状态。当烟雾浓度正常时,界面状态显示“正常”。若浓度超过预设阈值,界面立即切换至“警报”状态,系统警告灯亮,风扇开启辅助清除或稀释烟雾,蜂鸣器响,同时语音播报给楼宇住户。此时提醒物业报警并且引导其采取相应措施,避免安全事故发生。烟雾模块的两种状态如图4‑6所示:
图4‑6 烟雾模块的两种状态
4.1.3 光照强度界面
Light界面用于实时监测环境光照强度,并根据强度大小将环境状态划分为六个等级,为用户提供直观的环境光照信息。Light界面以清晰易懂的图表和文字显示当前光照强度数值,并实时更新环境状态。
系统根据光照强度值判断当前环境状态,并以数值和文字的方式进行显示。光照强度小于5时显示为黑暗;光照强度在5~50为昏暗;光照强度在50~200为正常;光照强度在200~500为灯光;光照强度在500~10000为阳光弱;光照强度大于等于10000时显示为阳光强,如图4‑7所示。
图4‑7 几种不同光照强度下的状态
4.1.4 灯光控制界面
灯光控制界面清晰地显示当前照明灯的亮度,方便用户了解当前照明状态。图4‑8展示了不同亮度等级下的LED界面显示以及对应的状态。其功能分为两种,其一是自动调节功能,系统根据传感器采集的环境光照强度自动调节照明亮度,有效地避免过暗的情况,为用户提供舒适的室内环境。另一个为手动调节功能,用户可以根据自身需求提供按钮手动调整。自动调节与手动调节的结合,为用户提供更便捷、更个性化的照明控制方式,使得系统能够适应不同用户的需求。
图4‑8 不同亮度下的照明灯
4.1.5 风扇控制界面
系统采用自动/手动双模式控制风扇电机,在温湿度、烟雾等报警情况下自动启动电机功能,同时通过motor界面提供用户手动控制权限。用户在界面设置ON时,系统立即向电机驱动发送信号,驱动模块使得风扇运转实现降温等功能;设置OFF时则切断信号传输,风扇停止运转。图4‑9展示了界面中风扇状态的控制及运行状态。通过界面反馈,确保用户可及时掌握运行信息并进行有效干预。
图4‑9 风扇的打开与关闭
4.2 WiFi模块效果显示
系统在通电并进入OLED显示的WiFi界面后,将自动启动WiFi连接流程。连接成功后,系统应在OLED屏幕上显示相应的连接状态提示。图4‑10展示了连接成功后的屏幕显示效果。
图4‑10 WIFI连接成功提示
连接成功后,系统与华为云平台建立连接,并开始环境数据的上传,华为云平台上的设备状态将实时更新为在线,如图4‑11所示。
图4‑11 WIFI华为云平台设备状态
设备在线后,系统将实时采集到的环境数据上传至华为云平台,实现实时数据监控。用户可以通过华为云平台的网页端或移动端应用,远程实时查看当前温度、湿度、光照强度等参数,如图4‑12所示。
图4‑12 后台查看到的各类环境参数
用户可以打开云平台的消息追踪查看数据上传情况,如图4‑13所示。为了验证数据上传功能的可靠性和实时性,利用消息追踪功能进行半小时的监控,期间微控制器每间隔几秒向云平台传输一次环境数据,未出现任何数据上传失败的情况。
图4‑13 消息追踪
4.3 语音模块效果演示
用户可通过唤醒词“你好,小度”触发语音模块。唤醒成功后,语音模块将从预设的唤醒回复“主人,我在,你有什么吩咐”和“小度很高兴为你服务”中随机选择一条进行回应。
在语音模块被唤醒后,用户可通过“播报温度”等语音指令要求其读取并播报当前环境数据。测试过程中,当用户发出“播报温度”指令后,语音模块能够读取当前存储的温度数值,并以“当前温度为XX点XX摄氏度”的格式进行语音播报。播报湿度、烟雾、光照等环境数据时也遵循相同的流程。
5 总结
本项目旨在构建一个集环境监测、自动控制与远程管理于一体的智能化系统,以提升智能楼宇的管理效率、节能减排和用户体验。项目立足智慧城市建设,分析了智能楼宇的价值,并明确了系统的设计目标。通过对比分析传统控制方案和现代嵌入式技术的优劣,最终选择了以STM32为核心的多模块协同架构,涵盖数据采集、阈值报警、OLED交互、通信及语音控制五大功能模块。本系统的主要工作包括在以下几个方面:
1.项目选用了STM32F103C8T6主控芯片,DHT11温湿度传感器、MQ-2烟雾传感器、光敏电阻传感器,ESP8266-01 WIFI模块,1.3寸OLED显示屏和SU-03T智能语音模块,并完成了各模块的电路设计和接口适配。采用Proteus仿真有效验证了数据采集和报警功能,降低了实物迭代成本,并通过双层PCB布局优化了硬件集成,为未来功能扩展预留了接口。
2.系统基于FreeRTOS实时操作系统实现多任务优先级调度,并结合PWM控制算法控制风扇电机,动态调节照明灯亮度,构建了阈值触发报警和设备联动的控制逻辑。
3.实物测试中,系统功能完整且稳定。OLED界面可实时显示环境参数并与用户交互。通信模块稳定连接华为云平台,实现远程监控和数据上报。语音模块能够准确识别唤醒命令并支持离线指令控制和状态播报。