基于STM32的智能衣柜系统设计与实现

摘要

随着生活水平的提升和智能家居技术的快速发展,传统衣柜仅具备衣物收纳功能的局限性日益凸显,难以满足人们对衣物护理、环境调控、便捷操作的高品质需求。传统衣柜普遍存在温湿度失衡导致衣物发霉、异味滋生,消毒不及时引发细菌滋生,操作繁琐且无法远程控制等问题。本文设计并实现了一套基于STM32F103C8T6单片机的智能衣柜系统,整合多种传感器和执行设备,实现衣物收纳与智能护理一体化,解决传统衣柜的使用痛点。

该系统以STM32F103C8T6为核心控制单元,搭载DHT11温湿度传感器、RTC实时时钟模块、光电红外传感器、光敏传感器、MQ-135空气质量传感器等检测模块,搭配OLED显示模块、按键模块、蜂鸣器报警模块、继电器模块、风扇模块、加热片模块、UV消毒灯模块、步进电机、大功率LED灯模块及BT04A蓝牙模块,实现九大核心功能。本文详细阐述了系统的总体设计方案、硬件电路设计、软件程序开发、蓝牙APP开发及系统调试过程,确保系统运行稳定、功能完善、操作便捷。

系统调试结果表明,该系统能够精准采集衣柜内温湿度、空气质量、光强等环境数据,实时显示在OLED屏幕上;可根据预设阈值自动实现加热、通风调控,根据RTC时间定时进行UV消毒,结合柜门状态和光强实现消毒和照明的智能切换;支持手动与自动模式灵活切换,手动模式下可精准控制各执行设备运行;通过蓝牙APP可远程查看环境数据、远程控制设备,空气质量超标时蜂鸣器及时报警。该系统成本适中、结构紧凑、实用性强,能够有效提升衣物护理质量,为用户提供便捷、智能的使用体验,具有一定的实际应用价值和推广前景。

关键词:STM32;智能衣柜;环境监测;自动控制;蓝牙通信;远程控制

第一章 绪论

1.1 研究背景与意义

在智能家居快速普及的当下,人们对居住环境的智能化、便捷化、健康化需求不断提升,衣柜作为家庭生活中不可或缺的收纳家具,其功能需求已从单纯的衣物存放向智能护理、环境调控、便捷操作方向升级。传统衣柜结构简单,仅能实现衣物的收纳功能,在日常使用中存在诸多弊端,难以适应现代家庭的高品质生活需求。

传统衣柜内部环境封闭,温湿度难以控制,潮湿天气易导致衣物发霉、受潮、产生异味,影响衣物使用寿命和穿着体验;衣柜内衣物长期存放易滋生细菌、螨虫,缺乏有效的消毒手段,可能危害人体健康;衣柜照明依赖外部光源,取放衣物时视线不佳,操作不便;同时,传统衣柜无法实现远程控制和智能调控,用户需手动操作各项功能,使用体验较差。

随着嵌入式技术、传感器技术、蓝牙通信技术和智能控制技术的飞速发展,智能家居产品不断迭代升级,智能衣柜作为智能家居的重要组成部分,逐渐进入人们的生活。基于微控制器的智能衣柜系统,能够实现衣柜内环境参数的实时监测、智能调控、自动消毒、远程控制等功能,有效解决传统衣柜的痛点,提升衣物护理质量和用户使用便捷性。

STM32系列单片机具有高性能、低功耗、性价比高、外设丰富等优势,广泛应用于智能家居、嵌入式智能设备开发领域。本文基于STM32F103C8T6单片机设计智能衣柜系统,整合多种检测模块和执行模块,实现温湿度调控、定时消毒、智能照明、空气质量监测、蓝牙远程控制等功能,对于提升衣柜的智能化水平、改善用户生活体验、推动智能家居产业的发展具有重要的理论意义和实际应用价值。

1.2 国内外研究现状

国外智能家居产业发展起步较早,智能衣柜相关技术已相对成熟。欧美、日本等发达国家推出了多种智能衣柜产品,如日本某品牌智能衣柜,集成温湿度调控、紫外线消毒、衣物烘干、远程控制等功能,通过手机APP可实现参数设置和设备控制,注重用户体验和产品实用性;欧美国家的智能衣柜则更注重环保和节能,采用低功耗传感器和执行设备,结合AI算法实现环境参数的精准调控,同时具备衣物分类、智能收纳等附加功能。这些产品功能完善、体验优良,但价格较高,难以在普通家庭中普及。

国内近年来也逐步重视智能家居领域的发展,智能衣柜的研究和产品开发取得了一定进展。国内科研机构和企业相继推出了基于单片机、STM32等微控制器的智能衣柜方案,多数系统实现了温湿度监测、消毒、照明等基本功能。但目前国内产品仍存在一些不足:部分系统功能单一,仅能实现简单的温湿度调控和消毒,缺乏手动/自动模式切换、蓝牙远程控制等功能;部分系统虽支持远程控制,但存在数据传输不稳定、响应速度慢等问题;此外,部分产品的阈值调节不够灵活,消毒定时不够精准,难以满足不同用户的个性化需求。

综上,现有智能衣柜系统仍有较大的改进空间,本文设计的基于STM32的智能衣柜系统,整合九大核心功能,兼顾实用性、经济性和稳定性,支持蓝牙远程控制和手动/自动模式切换,能够有效弥补现有产品的不足,满足普通家庭的智能衣物护理需求。

1.3 研究内容与目标

1.3.1 研究内容

本文主要围绕基于STM32的智能衣柜系统的设计与实现展开研究,具体研究内容如下:

1. 系统总体方案设计:明确系统的核心功能需求,结合给定的元器件清单,确定系统的总体架构,划分硬件模块和软件模块,制定系统的设计原则和技术路线。

2. 硬件电路设计:以STM32F103C8T6为核心,设计主控模块电路;选型并设计DHT11温湿度传感器、RTC实时时钟模块、光电红外传感器、光敏传感器、MQ-135空气质量传感器等检测模块电路;设计OLED显示模块、按键模块、蜂鸣器报警模块、继电器模块及各执行模块(风扇、加热片、UV消毒灯、LED灯、步进电机)、BT04A蓝牙模块电路,完成硬件焊接与组装。

3. 软件程序开发:基于Keil MDK开发环境,采用C语言编写系统软件,实现传感器数据采集与处理、OLED显示驱动、按键交互、报警控制、执行设备驱动、手动/自动模式切换、RTC时间获取与定时消毒、蓝牙通信等功能;开发配套蓝牙APP,实现远程数据查看与设备控制。

4. 系统调试与性能测试:对硬件电路进行调试,确保各模块正常工作;对软件程序进行调试,解决程序中的逻辑错误;对系统的各项功能和性能进行测试,验证系统的稳定性、可靠性和响应速度;测试蓝牙通信的稳定性,确保远程控制功能正常实现。

1.3.2 研究目标

本文的研究目标是设计并实现一套基于STM32的智能衣柜系统,具体目标如下:

1. 实现核心功能:完成温湿度检测与调控、RTC定时UV消毒、柜门状态检测与消毒/照明联动、光强检测与智能照明、空气质量监测与报警、阈值与定时调节、手动/自动模式切换、手动设备控制、蓝牙远程控制九大功能,满足智能衣柜的实际使用需求。

2. 保证系统性能:传感器数据采集精度高,温湿度、空气质量、光强数据误差控制在合理范围;自动控制响应时间短,设备动作准确;RTC时间精准,定时消毒误差小;蓝牙通信稳定,数据传输延迟低,远程控制响应及时;系统运行稳定,无明显故障。

3. 提升实用性:系统操作简便,按键可灵活调节时间、阈值和定时信息,模式切换便捷;OLED屏幕显示清晰,便于用户现场查看环境数据和系统状态;蓝牙APP界面简洁,易于操作;硬件成本适中,结构紧凑,便于安装和推广应用,能够适应不同家庭的使用场景。

1.4 论文结构安排

本文共分为6章,具体结构安排如下:

第一章为绪论,阐述本文的研究背景与意义、国内外研究现状、研究内容与目标及论文结构安排。

第二章为系统相关技术基础,介绍STM32单片机、传感器技术、蓝牙通信技术、OLED显示技术、RTC实时时钟技术及继电器驱动技术,为系统设计提供理论支撑。

第三章为系统总体设计,明确系统功能需求,设计系统总体架构,划分硬件模块和软件模块,制定系统设计方案和模式切换逻辑。

第四章为系统硬件设计,详细阐述各硬件模块的选型、电路设计及硬件组装过程。

第五章为系统软件设计,详细阐述软件总体架构、各模块程序设计、蓝牙通信程序及手机APP开发过程。

第六章为系统调试与性能测试,介绍系统调试过程,对系统各项功能和性能进行测试,分析测试结果,总结系统存在的不足及改进方向。

最后为结论与展望,总结本文的研究成果,对系统的未来发展进行展望。

第二章 系统相关技术基础

2.1 STM32单片机相关技术

2.1.1 STM32F103C8T6简介

本文选用STM32F103C8T6作为系统的核心控制单元,该芯片属于ST公司推出的STM32F1系列单片机,基于ARM Cortex-M3内核,主频最高可达72MHz,具有高性能、低功耗、外设丰富、性价比高的优势,非常适合智能衣柜系统的开发。

STM32F103C8T6拥有64KB的Flash存储器和20KB的SRAM,可满足系统程序存储和数据处理的需求;配备了多个通用I/O口、UART串口、SPI接口、I2C接口、ADC接口、RTC接口等外设,便于与传感器、显示模块、执行模块、蓝牙模块等外设进行连接;支持多种低功耗模式,可有效降低系统功耗,延长设备使用寿命,适应衣柜长期运行的需求。

2.1.2 STM32开发环境

系统软件开发采用Keil MDK5开发环境,该环境是ARM公司推出的嵌入式开发工具,支持STM32系列单片机的开发,具有强大的代码编辑、编译、调试功能。Keil MDK5集成了ARM Compiler 5编译器,能够对C语言程序进行高效编译,生成可执行文件;配备了调试器,支持在线调试,可实时查看程序运行状态,快速定位并解决程序中的错误。

此外,还需要安装STM32F103C8T6的芯片包,确保开发环境能够识别该芯片,正常进行程序的编译和下载;同时,需安装相关的库函数,简化程序开发流程,提高开发效率,实现各外设的快速驱动和功能开发。

2.2 传感器技术

2.2.1 温湿度传感器(DHT11)

本文选用DHT11温湿度传感器作为衣柜内温湿度检测的核心元件,该传感器是一种数字式温湿度传感器,具有精度高、响应速度快、接线简单、成本低等优势,无需复杂的ADC转换电路,可直接输出数字信号,便于与STM32单片机连接。

DHT11传感器的温度检测范围为0-50℃,误差为±2℃;湿度检测范围为20%-90%RH,误差为±5%RH,工作电压为3.3V-5V,通过单总线与STM32单片机进行通信,可快速采集衣柜内的温湿度数据,为温湿度调控提供数据依据。

2.2.2 空气质量传感器(MQ-135)

选用MQ-135空气质量传感器作为衣柜内空气质量检测元件,该传感器属于半导体式传感器,具有灵敏度高、响应速度快、成本低、检测范围广等优势,适用于衣柜内空气质量的实时监测,可检测甲醛、苯、氨气、烟雾等有害气体浓度。

MQ-135传感器的工作电压为5V,检测范围为10-10000ppm,输出信号为模拟信号。传感器内部的半导体敏感元件在接触到有害气体时,电阻值会发生变化,通过ADC转换将模拟信号转换为数字信号,即可得到空气质量数据,当数据超出预设阈值时,触发蜂鸣器报警。

2.2.3 光敏传感器

选用光敏电阻作为衣柜内光强检测元件,该传感器是一种模拟式传感器,具有灵敏度高、体积小、成本低、接线简单等优势,能够实时检测衣柜内的光照强度,为智能照明控制提供依据。

光敏电阻的工作电压为3.3V-5V,当光照强度发生变化时,其电阻值随之变化,光照越强,电阻值越小,输出的模拟电压越低;光照越弱,电阻值越大,输出的模拟电压越高。通过STM32的ADC接口将模拟信号转换为数字信号,即可得到光照强度数据,判断是否需要开启LED照明。

2.2.4 光电红外传感器

选用光电红外传感器作为衣柜门状态检测元件,该传感器分为发射端和接收端,具有检测精度高、响应速度快、抗干扰能力强等优势,能够准确检测柜门的开关状态,为消毒功能和照明功能的联动控制提供依据。

光电红外传感器的工作电压为3.3V-5V,当柜门关闭时,发射端发出的红外光被接收端接收,传感器输出低电平;当柜门打开时,红外光被遮挡,接收端无法接收,传感器输出高电平。STM32单片机通过检测传感器的输出电平,判断柜门的开关状态。

2.3 蓝牙通信技术

本文选用BT04A蓝牙模块实现系统与手机APP的远程通信,BT04A是一款基于蓝牙4.0协议的低功耗蓝牙模块,具有体积小、功耗低、通信稳定、成本低等优势,支持UART串口通信,可实现数据的双向传输。

BT04A模块通过UART串口与STM32单片机连接,实现数据的双向传输:STM32单片机将采集到的温湿度、空气质量、光强、柜门状态、实时时间等数据发送给BT04A模块,BT04A模块通过蓝牙将数据传输到手机APP;手机APP将远程控制指令、阈值设置指令、定时设置指令传输到BT04A模块,再由BT04A模块发送给STM32单片机,实现远程控制和参数调节。

2.4 OLED显示技术

本文选用0.96英寸OLED显示屏作为系统的数据显示设备,该显示屏具有分辨率高、对比度高、响应速度快、功耗低、视角广、自发光等优势,能够清晰、直观地显示衣柜内的环境数据、实时时间、系统工作模式、设备运行状态及各项阈值。

0.96英寸OLED显示屏采用I2C通信协议,与STM32单片机的I2C接口连接,接线简单,占用I/O口少。显示屏的分辨率为128×64,可显示字符、数字、图形等信息,通过编写显示驱动程序,可实现数据的实时显示和界面的切换,方便用户现场查看系统状态。

2.5 RTC实时时钟技术

RTC(Real Time Clock)实时时钟模块用于获取实时时间,并实现定时UV消毒功能。本文选用DS1302 RTC模块,该模块具有体积小、功耗低、时间精准、接口简单等优势,支持年月日、时分秒的精准计时,可通过I2C接口与STM32单片机连接。

DS1302 RTC模块内置锂电池,当系统断电时,仍能保持时间的正常运行,确保定时消毒功能不受断电影响。STM32单片机通过I2C协议与DS1302模块通信,读取实时时间,并根据用户设置的定时时间,控制UV消毒灯的开启和关闭,实现定时消毒功能。

2.6 继电器驱动技术

系统中的风扇、加热片、UV消毒灯、LED灯等执行设备,需要通过继电器模块进行驱动控制。继电器是一种电子控制器件,具有隔离作用,可通过小电流控制大电流,保护STM32单片机不受高电压、大电流的损坏。

本文选用4路继电器模块,工作电压为5V,通过GPIO口与STM32单片机连接。当STM32单片机输出高电平时,继电器导通,控制相应的执行设备启动;输出低电平时,继电器截止,设备停止工作。通过继电器模块,实现STM32单片机对各执行设备的精准控制。

2.7 本章小结

本章主要介绍了系统设计过程中涉及的相关技术,包括STM32单片机技术、传感器技术、蓝牙通信技术、OLED显示技术、RTC实时时钟技术及继电器驱动技术。STM32F103C8T6单片机为系统提供核心控制能力;DHT11温湿度传感器、MQ-135空气质量传感器、光敏传感器、光电红外传感器实现衣柜内环境参数和柜门状态的采集;BT04A蓝牙模块实现系统与手机APP的远程通信;OLED显示屏实现数据的直观显示;DS1302 RTC模块实现实时时间获取和定时消毒;继电器模块实现执行设备的驱动控制。这些技术的应用,为系统的设计与实现提供了坚实的理论支撑和技术保障。

第三章 系统总体设计

3.1 系统功能需求分析

根据智能衣柜的实际使用需求,结合给定的元器件清单,本文设计的基于STM32的智能衣柜系统需实现九大核心功能,具体功能需求如下:

1. 温湿度检测与调控功能:通过DHT11传感器实时检测衣柜内温湿度数据,根据用户预设的阈值,自动开启加热片(温度过低时)或风扇(湿度过高时),实现衣柜内温湿度的智能调控,防止衣物发霉、受潮。

2. RTC定时UV消毒功能:通过RTC模块获取实时时间,用户可设置消毒时间和时长,当到达预设消毒时间且柜门关闭时,自动开启UV消毒灯进行消毒,消毒完成后自动关闭,避免UV光线对人体造成伤害。

3. 柜门状态检测与联动功能:通过光电红外传感器检测柜门状态,关门且在消毒时间范围内时,开启UV消毒灯;开门时,根据光敏传感器检测的光强,自动开启LED灯,方便用户取放衣物。

4. 光强检测与智能照明功能:通过光敏传感器采集衣柜内光强数据,实时显示在OLED屏幕上,当光强低于预设阈值且柜门打开时,自动开启LED灯;柜门关闭或光强达标时,自动关闭LED灯,节约能源。

5. 空气质量监测与报警功能:通过MQ-135传感器检测衣柜内空气质量,当有害气体浓度超出预设阈值时,蜂鸣器立即发出警报声,提醒用户及时通风,同时可自动开启风扇进行通风换气。

6. 参数调节功能:通过按键可调节实时时间、温湿度阈值、空气质量阈值、消毒定时时间、消毒时长等所有参数信息,满足用户的个性化需求。

7. 模式切换功能:通过按键可切换手动模式和自动模式,自动模式下系统根据预设参数实现智能调控;手动模式下,用户可手动控制各设备运行,灵活应对特殊场景。

8. 手动控制功能:手动模式下,用户可通过按键或手机APP,手动控制加热片、UV消毒灯、风扇、LED灯的开关,以及步进电机(挂衣架)的升降,实现便捷操作。

9. 蓝牙远程控制功能:通过蓝牙APP可实时接收衣柜内的温湿度、空气质量、光强、柜门状态、实时时间等数据,同时可远程控制加热、通风、照明、消毒等功能,以及挂衣架的升降。

3.2 系统总体架构设计

基于系统功能需求,本文设计的智能衣柜系统采用模块化架构,以STM32F103C8T6单片机为核心,分为硬件层、软件层和APP层三部分,系统总体架构如图3-1所示(此处可插入架构图,论文中补充)。

1. 硬件层:主要包括主控模块、检测模块、显示模块、按键模块、报警模块、执行模块及蓝牙通信模块。主控模块负责系统的整体控制和数据处理;检测模块负责采集衣柜内的环境参数和柜门状态;显示模块负责数据和系统状态的显示;按键模块负责参数调节和模式切换操作;报警模块负责触发空气质量超标报警;执行模块负责执行温湿度调控、消毒、照明、挂衣架升降等动作;蓝牙通信模块负责实现系统与手机APP的远程通信。

2. 软件层:主要包括主控程序、传感器数据采集与处理程序、OLED显示驱动程序、按键处理程序、报警控制程序、执行设备驱动程序、模式切换程序、RTC时间处理与定时消毒程序、蓝牙通信程序。主控程序负责协调各模块程序的运行;传感器数据采集与处理程序负责采集传感器数据并进行滤波、校准处理;显示驱动程序负责控制OLED显示屏显示数据;按键处理程序负责处理按键输入,实现参数调节和模式切换;报警控制程序负责判断是否触发报警,控制蜂鸣器工作;执行设备驱动程序负责控制各执行设备的启停;模式切换程序负责实现手动模式与自动模式的切换;RTC时间处理程序负责读取实时时间和实现定时消毒;蓝牙通信程序负责实现系统与手机APP的数据传输。

3. APP层:主要为蓝牙手机APP,负责接收系统发送的环境数据和系统状态,显示实时信息,同时向系统发送远程控制指令和参数设置指令,实现远程控制和参数调节。

3.3 系统设计原则

为确保系统的实用性、稳定性和可靠性,本文在系统设计过程中遵循以下原则:

1. 实用性原则:系统功能贴合智能衣柜的实际使用需求,操作简便,参数调节灵活,手机APP界面简洁,易于用户操作和使用;硬件选型兼顾性能和成本,结构紧凑,便于安装在衣柜内部,适合普通家庭推广应用。

2. 稳定性原则:选用性能稳定、质量可靠的元器件,硬件电路设计合理,软件程序逻辑严谨,确保系统长期稳定运行,减少故障发生,适应衣柜长期无人值守的需求;RTC模块配备备用电源,确保断电后时间正常运行。

3. 可靠性原则:传感器数据采集精度高,报警响应及时,执行设备动作准确,蓝牙通信稳定,数据传输延迟低,确保系统能够有效发挥环境调控、消毒、照明等功能,保障衣物护理质量。

4. 经济性原则:在满足系统功能和性能的前提下,选用性价比高的元器件,降低系统硬件成本,简化电路设计,降低开发和维护成本,便于大规模推广应用。

5. 安全性原则:设计UV消毒灯与柜门状态的联动控制,开门时自动关闭消毒灯,避免UV光线对人体造成伤害;继电器模块具有隔离作用,保护主控芯片和用户安全;蜂鸣器报警及时,提醒用户处理空气质量超标等异常情况。

3.4 系统技术路线

本文按照“需求分析—总体设计—硬件设计—软件设计—蓝牙APP开发—系统调试—性能测试”的技术路线,完成基于STM32的智能衣柜系统的设计与实现,具体技术路线如下:

1. 需求分析:明确系统的核心功能需求,梳理用户对系统的性能要求,结合给定的元器件清单,确定系统的设计目标和技术指标。

2. 总体设计:设计系统的总体架构,划分硬件模块、软件模块和APP层,制定系统的设计方案、模式切换逻辑和参数设置规则。

3. 硬件设计:完成各硬件模块的元器件选型、电路设计,绘制电路原理图,制作PCB板,进行硬件焊接与组装。

4. 软件设计:基于Keil MDK开发环境,编写系统各模块的软件程序,实现传感器数据采集、显示、控制、报警、模式切换、RTC定时、蓝牙通信等功能。

5. 蓝牙APP开发:开发配套的手机蓝牙APP,实现数据接收、实时显示、远程控制和参数设置功能。

6. 系统调试:对硬件电路进行调试,检查各模块是否正常工作;对软件程序进行调试,解决程序中的逻辑错误,确保系统正常运行;调试蓝牙通信,确保手机APP与系统的通信稳定。

7. 性能测试:对系统的各项功能和性能进行测试,验证系统的稳定性、可靠性和响应速度,分析测试结果,优化系统性能。

3.5 系统模式切换逻辑

系统支持手动模式和自动模式两种工作模式,用户可通过按键或手机APP进行模式切换,切换逻辑如下:

1. 系统上电后,默认进入自动模式,系统根据预设的温湿度阈值、空气质量阈值、消毒定时时间,自动实现温湿度调控、空气质量监测、定时消毒、智能照明等功能,无需人工干预。

2. 当用户需要手动控制时,可通过按键或手机APP切换到手动模式,此时自动控制功能失效,用户可通过按键或手机APP,手动控制加热片、UV消毒灯、风扇、LED灯的开关,以及步进电机(挂衣架)的升降。

3. 手动模式下,用户可随时切换回自动模式,切换后系统恢复自动控制功能,按照预设参数进行智能调控;无论处于哪种模式,空气质量超标报警功能始终有效,蜂鸣器及时报警。

4. 手动模式下,UV消毒灯的开启仍受柜门状态限制,开门时无法开启消毒灯,避免UV光线对人体造成伤害;自动模式下,消毒灯仅在柜门关闭且到达定时时间时开启。

3.6 本章小结

本章主要完成了系统的总体设计,包括系统功能需求分析、总体架构设计、设计原则、技术路线及模式切换逻辑。通过功能需求分析,明确了系统的九大核心功能;采用模块化架构,将系统分为硬件层、软件层和APP层,确保系统结构清晰、易于开发和维护;遵循实用性、稳定性、可靠性等设计原则,制定合理的技术路线和模式切换逻辑,为后续系统的硬件设计和软件设计奠定了基础。

第四章 系统硬件设计

4.1 硬件总体设计

系统硬件采用模块化设计,以STM32F103C8T6单片机为核心,整合检测模块、显示模块、按键模块、报警模块、执行模块及蓝牙通信模块,各模块通过相应的接口与主控模块连接,实现数据传输和指令交互。硬件总体框图如图4-1所示(此处可插入硬件框图,论文中补充)。

各硬件模块的功能如下:

1. 主控模块:STM32F103C8T6单片机,负责接收各传感器的检测数据,进行数据处理和分析,控制各模块的工作状态,实现系统的整体控制和模式切换。

2. 检测模块:包括DHT11温湿度传感器、MQ-135空气质量传感器、光敏传感器、光电红外传感器、DS1302 RTC模块,负责采集衣柜内的温湿度、空气质量、光强、柜门状态及实时时间,为系统控制提供数据依据。

3. 显示模块:0.96英寸OLED显示屏,负责显示各类传感器数据、实时时间、系统工作模式、设备运行状态及各项阈值。

4. 按键模块:4个独立按键,分别用于模式切换、参数调节(时间、阈值、定时)、设备手动控制,实现人机交互。

5. 报警模块:有源蜂鸣器,当MQ-135传感器检测到空气质量超标时,发出警报声,提醒用户及时处理。

6. 执行模块:包括4路继电器模块、风扇模块、加热片模块、UV消毒灯模块、大功率LED灯模块、步进电机(挂衣架),其中继电器模块用于控制风扇、加热片、UV消毒灯、LED灯的启停,步进电机用于控制挂衣架的升降,负责执行系统的各项调控动作。

7. 蓝牙通信模块:BT04A蓝牙模块,负责实现系统与手机APP的远程通信,传输数据和控制指令。

4.2 主控模块设计

4.2.1 主控芯片选型

结合系统功能需求、元器件清单和经济性原则,本文选用STM32F103C8T6作为系统的主控芯片,该芯片具有以下优势:

1. 性能强劲:基于ARM Cortex-M3内核,主频最高可达72MHz,能够快速处理传感器数据和控制指令,满足系统实时性要求,确保自动控制的响应速度。

2. 外设丰富:拥有多个通用I/O口、UART串口、I2C接口、SPI接口、ADC接口、RTC接口等,便于与各模块连接,无需额外扩展芯片,简化电路设计。

3. 低功耗:支持多种低功耗模式,可根据系统工作状态切换功耗模式,降低系统功耗,延长设备使用寿命,适应衣柜长期运行的需求。

4. 性价比高:价格适中,适合批量生产和推广应用,满足普通家庭的成本需求;同时,技术成熟,资料丰富,便于程序开发和调试。

4.2.2 主控模块电路设计

主控模块电路主要包括电源电路、复位电路、晶振电路三部分,确保STM32F103C8T6芯片正常工作。

1. 电源电路:系统采用5V直流电源供电,通过AMS1117-3.3V稳压芯片将5V电压转换为3.3V,为STM32F103C8T6芯片及其他需要3.3V供电的模块(如OLED显示屏、光敏传感器、光电红外传感器、BT04A蓝牙模块)供电。电源电路中加入电容滤波,减少电源噪声,确保供电稳定,避免电压波动影响系统运行。

2. 复位电路:采用手动复位和上电复位相结合的方式,复位电路由电阻、电容和复位按键组成,当系统出现故障时,按下复位按键可实现系统复位;上电时,通过电容充电实现上电复位,确保系统正常启动。

3. 晶振电路:采用外部晶振电路,晶振频率为8MHz,通过分频电路为STM32F103C8T6芯片提供时钟信号,确保芯片正常工作。晶振电路中加入电容,稳定晶振频率,减少干扰,提高系统的稳定性。

4.3 检测模块设计

4.3.1 温湿度传感器模块设计

温湿度传感器模块选用DHT11传感器,该传感器为数字式传感器,工作电压为3.3V-5V,通过单总线与STM32单片机连接。

DHT11传感器的VCC引脚接3.3V电源,GND引脚接地,DATA引脚(数据引脚)接STM32F103C8T6的PB0引脚。为了确保数据传输的稳定性,在DATA引脚与VCC引脚之间串联一个10KΩ的上拉电阻,防止信号失真,确保传感器数据采集的准确性。

STM32单片机通过单总线协议与DHT11传感器通信,发送启动信号后,传感器返回温湿度数据,经过数据解析后,得到当前衣柜内的温度和湿度数据,为温湿度调控提供依据。

4.3.2 空气质量传感器模块设计

空气质量传感器模块选用MQ-135传感器,该传感器为模拟式传感器,工作电压为5V,输出信号为模拟信号,需要通过STM32的ADC接口将模拟信号转换为数字信号。

MQ-135传感器的VCC引脚接5V电源,GND引脚接地,AO引脚(模拟输出)接STM32F103C8T6的ADC1通道(PA0引脚)。为了提高数据采集的稳定性,在传感器的AO引脚与GND之间并联一个100nF的电容,用于滤波,减少信号干扰,确保空气质量数据的准确性。

当衣柜内有害气体浓度发生变化时,MQ-135传感器的电阻值随之变化,AO引脚输出的模拟电压随之变化,STM32通过ADC转换将模拟电压转换为数字信号,经过数据处理后,得到空气质量数据,当数据超出预设阈值时,触发蜂鸣器报警。

4.3.3 光敏传感器模块设计

光敏传感器模块选用光敏电阻,该传感器为模拟式传感器,工作电压为3.3V,输出信号为模拟信号,需要通过STM32的ADC接口将模拟信号转换为数字信号。

光敏电阻的一端接3.3V电源,另一端接STM32F103C8T6的ADC2通道(PA1引脚),同时通过一个10KΩ的电阻接地。当衣柜内光照强度发生变化时,光敏电阻的电阻值随之变化,输出的模拟电压随之变化,STM32通过ADC转换将模拟电压转换为数字信号,经过数据处理后,得到光照强度数据,为智能照明控制提供依据。

4.3.4 光电红外传感器模块设计

光电红外传感器模块选用对射式光电传感器,分为发射端和接收端,工作电压为3.3V,输出信号为数字信号,可直接与STM32单片机的GPIO口连接。

发射端的VCC引脚接3.3V电源,GND引脚接地;接收端的VCC引脚接3.3V电源,GND引脚接地,OUT引脚(输出端)接STM32F103C8T6的PB1引脚。当柜门关闭时,发射端发出的红外光被接收端接收,接收端输出低电平;当柜门打开时,红外光被遮挡,接收端输出高电平,STM32单片机通过检测接收端的输出电平,判断柜门的开关状态。

4.3.5 RTC实时时钟模块设计

RTC实时时钟模块选用DS1302模块,该模块采用I2C通信协议,工作电压为3.3V,内置锂电池,可实现断电后时间继续运行,与STM32单片机的I2C接口连接。

DS1302模块的VCC引脚接3.3V电源,GND引脚接地,SDA引脚(数据线)接STM32F103C8T6的PB7引脚(I2C1_SDA),SCL引脚(时钟线)接STM32F103C8T6的PB6引脚(I2C1_SCL)。STM32单片机通过I2C协议与DS1302模块通信,读取实时时间,并根据用户设置的定时消毒时间,控制UV消毒灯的开启和关闭,实现定时消毒功能。

4.4 显示模块设计

显示模块选用0.96英寸OLED显示屏,采用I2C通信协议,与STM32F103C8T6的I2C接口连接,接线简单,占用I/O口少。

OLED显示屏的VCC引脚接3.3V电源,GND引脚接地,SDA引脚(数据线)接STM32F103C8T6的PB7引脚(I2C1_SDA),SCL引脚(时钟线)接STM32F103C8T6的PB6引脚(I2C1_SCL)。

STM32单片机通过I2C协议与OLED显示屏通信,发送显示指令和数据,控制显示屏显示各类信息。显示屏分为多个显示区域,具体显示内容如下:第一行显示系统名称“智能衣柜系统”;第二行显示实时时间,格式为“时间:2026-XX-XX XX:XX:XX”;第三行显示温湿度数据,格式为“温湿度:XX℃ XX%RH”;第四行显示空气质量和光强,格式为“空气质量:XXX ppm 光强:XXX LUX”;第五行显示系统工作模式和柜门状态,格式为“模式:自动/手动  柜门:开/关”;第六行显示各项阈值,格式为“阈值:温XX 湿XX 空气质量XX”。

4.5 按键模块设计

按键模块选用4个独立按键,分别用于模式切换、参数调节、设备手动控制,实现人机交互。按键采用独立按键设计,结构简单,易于实现,抗干扰能力强。

4个按键的一端分别接STM32F103C8T6的PB2、PB3、PB4、PB5引脚,另一端共同接地。为了防止按键抖动,在每个按键的引脚与VCC引脚之间串联一个10KΩ的上拉电阻,同时在按键两端并联一个100nF的电容,用于消抖,确保按键操作的准确性。

按键功能分配如下:PB2引脚对应模式切换(自动/手动);PB3引脚对应参数调节(切换时间、阈值、定时等参数);PB4引脚对应参数增加(调节参数时,增加数值);PB5引脚对应参数减少(调节参数时,减少数值);手动模式下,长按按键可实现各设备的手动控制(如长按PB3控制加热片开关,长按PB4控制风扇开关)。

4.6 报警模块设计

报警模块选用有源蜂鸣器,工作电压为5V,具有体积小、声音大、功耗低等优势,可快速提醒用户空气质量超标。

蜂鸣器的VCC引脚接5V电源,GND引脚通过NPN三极管(PNP8050)接地,三极管的基极接STM32F103C8T6的PA2引脚。当MQ-135传感器检测到空气质量超出预设阈值时,STM32单片机输出高电平,控制三极管导通,蜂鸣器通电发出警报声;当空气质量恢复到阈值范围内后,STM32输出低电平,三极管截止,蜂鸣器停止报警。

为了保护蜂鸣器,在蜂鸣器两端并联一个二极管,防止电流反向冲击损坏蜂鸣器,延长蜂鸣器的使用寿命。

4.7 执行模块设计

执行模块主要包括4路继电器模块、风扇模块、加热片模块、UV消毒灯模块、大功率LED灯模块、步进电机(挂衣架),负责执行系统的各项调控动作,由STM32单片机统一控制。

1. 继电器模块:选用4路继电器模块,工作电压为5V,通过继电器控制风扇、加热片、UV消毒灯、LED灯的启停。继电器模块的VCC引脚接5V电源,GND引脚接地,IN1引脚接STM32F103C8T6的PA3引脚(控制风扇),IN2引脚接PA4引脚(控制加热片),IN3引脚接PA5引脚(控制UV消毒灯),IN4引脚接PA6引脚(控制LED灯)。当STM32输出高电平时,继电器导通,控制相应的设备启动;输出低电平时,继电器截止,设备停止工作。

2. 风扇模块:选用小型直流风扇,由继电器控制启停,当衣柜内湿度高于预设阈值时,风扇启动,进行通风换气,降低湿度;当空气质量超标时,风扇启动,排出有害气体,改善衣柜内空气质量。

3. 加热片模块:选用小型加热片,由继电器控制启停,当衣柜内温度低于预设阈值时,加热片启动,升高衣柜内温度,防止衣物受潮、发霉。

4. UV消毒灯模块:选用小型UV消毒灯,由继电器控制启停,仅在柜门关闭且到达预设消毒时间时启动,消毒完成后自动关闭,避免UV光线对人体造成伤害,用于杀灭衣柜内的细菌、螨虫。

5. 大功率LED灯模块:选用大功率LED灯,由继电器控制启停,当柜门打开且光强低于预设阈值时,LED灯启动,为用户取放衣物提供照明;柜门关闭或光强达标时,LED灯自动关闭,节约能源。

6. 步进电机模块:选用28BYJ-48步进电机,用于驱动挂衣架的升降,通过ULN2003驱动模块与STM32连接,驱动模块的VCC引脚接5V电源,GND引脚接地,IN1-IN4引脚分别接STM32F103C8T6的PA7-PA10引脚。STM32通过发送控制指令,控制步进电机的转动方向和角度,实现挂衣架的升降,方便用户取放高处衣物。

4.8 蓝牙通信模块设计

蓝牙通信模块选用BT04A蓝牙模块,通过UART串口与STM32单片机连接,实现系统与手机APP的远程通信。

BT04A模块的VCC引脚接3.3V电源,GND引脚接地,TXD引脚(发送端)接STM32F103C8T6的PA11引脚(USART1_RX),RXD引脚(接收端)接STM32F103C8T6的PA12引脚(USART1_TX)。为了确保数据传输的稳定性,在模块的VCC引脚与GND引脚之间并联一个100nF的电容,用于滤波,减少信号干扰。

BT04A模块通过蓝牙与手机APP建立连接,STM32单片机将采集到的温湿度、空气质量、光强、柜门状态、实时时间等数据通过UART串口发送给BT04A模块,BT04A模块将数据传输到手机APP;手机APP将远程控制指令(如加热、通风、消毒、照明控制)、参数设置指令(如阈值、定时时间调节)传输到BT04A模块,再由BT04A模块通过UART串口发送给STM32单片机,实现远程控制和参数调节。

4.9 硬件组装与调试

4.9.1 硬件组装

根据硬件电路原理图,制作PCB板,将各元器件按照设计要求焊接到PCB板上,注意焊接质量,避免虚焊、漏焊。焊接完成后,将各模块与主控模块连接,确保接线正确,无短路、接反等问题。具体组装步骤如下:

1. 焊接主控模块:将STM32F103C8T6芯片、AMS1117-3.3V稳压芯片、电阻、电容等元器件焊接到PCB板上,完成主控模块的组装。

2. 焊接检测模块:将DHT11温湿度传感器、MQ-135空气质量传感器、光敏电阻、光电红外传感器、DS1302 RTC模块分别焊接到对应的接口位置,确保引脚连接正确;将光电传感器的发射端和接收端分别安装在衣柜门的两侧,确保柜门关闭时能正常接收红外光。

3. 焊接其他模块:依次焊接显示模块、按键模块、报警模块、执行模块及蓝牙通信模块,将风扇、加热片、UV消毒灯、LED灯与继电器模块连接,将步进电机与ULN2003驱动模块连接,完成整个硬件系统的组装;将组装好的硬件系统安装在衣柜内部,固定各模块位置,确保设备运行稳定。

4.9.2 硬件调试

硬件组装完成后,对各模块进行调试,确保各模块正常工作,具体调试内容如下:

1. 主控模块调试:给系统供电,观察STM32芯片的电源指示灯是否亮起,通过示波器检测晶振电路的输出信号,确保主控模块正常工作。

2. 检测模块调试:分别测试各传感器的输出信号,观察传感器是否能够正常采集数据,数据是否准确;改变衣柜内环境参数(如喷水增加湿度、放入有害气体、改变光照强度、开关柜门),观察传感器数据是否随之变化,验证传感器的灵敏度和准确性;测试DS1302 RTC模块,观察时间是否精准,断电后是否能正常保持时间。

3. 显示模块调试:给显示模块供电,通过STM32发送显示指令,观察OLED显示屏是否能够正常显示字符和数据,显示是否清晰、准确,界面切换是否流畅。

4. 按键模块调试:按下各按键,通过万用表检测对应的I/O口电平变化,判断按键是否能够正常工作,是否存在抖动现象,验证模式切换、参数调节和手动控制功能是否正常。

5. 报警模块调试:模拟空气质量超标场景(放入有害气体),观察蜂鸣器是否能够正常发出警报声,声音是否清晰、响亮,报警触发是否及时;当空气质量恢复正常后,观察蜂鸣器是否停止报警。

6. 执行模块调试:控制继电器导通,观察风扇、加热片、UV消毒灯、LED灯是否能够正常启动和停止;控制步进电机,观察电机是否能够正常转动,挂衣架升降是否顺畅、准确;测试UV消毒灯与柜门状态的联动,开门时是否无法开启消毒灯。

7. 蓝牙通信模块调试:将BT04A模块与手机APP建立连接,测试模块与手机APP的通信是否稳定,数据传输是否正常;通过手机APP查看数据和发送控制指令,验证远程通信和远程控制功能是否正常。

经过调试,各硬件模块均能正常工作,数据采集准确,通信稳定,设备动作准确,满足系统设计要求。

4.10 本章小结

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐