1. 系统功能概述
本系统是一款基于单片机控制的便携式智能烘干机,集温湿度检测、定时控制、自动断电、风机驱动与加热控制于一体。系统采用高性能单片机作为控制核心,通过温湿度传感器实时监测烘干环境数据,并结合用户设定的目标参数,自动调节风扇与加热装置工作状态,实现高效、安全、智能的烘干过程。用户可通过矩阵键盘设置目标温度、湿度及烘干时间,液晶显示屏实时显示当前状态和剩余时间。系统结构紧凑、便携易用,适用于家庭及户外衣物快速烘干应用。
本系统主要实现以下功能:
- 温湿度实时检测:通过传感器采集烘干袋内的温度与湿度数据。
- 智能加热控制:根据检测结果自动调节电热丝通断,实现恒温烘干。
- 风机循环系统:电机驱动风扇产生气流,加速热空气流动,提高烘干效率。
- 参数设置与定时功能:用户可自定义烘干时间、目标温湿度。
- 安全保护机制:温度或湿度超出安全范围时自动断电保护。
- 液晶信息显示:LCD显示实时温湿度值、剩余时间和工作状态。
- 便携式结构设计:体积小、功耗低,方便携带与户外使用。
2. 系统电路设计
本系统的硬件电路主要由六个部分组成:主控单片机电路、温湿度检测电路、按键输入电路、显示电路、风扇与加热驱动电路以及电源管理模块。各模块协同工作,构成一个完整的智能控制系统。
2.1 主控模块设计(AT89C52单片机)
系统采用AT89C52单片机作为核心控制单元。AT89C52是一款8位CMOS单片机,内置8KB Flash程序存储器、256字节RAM、3个16位定时器、32个I/O口和一个全双工串口,适合嵌入式控制系统应用。
单片机在系统中承担的任务包括:
- 温湿度数据采集与运算;
- 风扇和加热电路控制;
- 键盘扫描与参数存储;
- LCD显示控制;
- 安全保护逻辑判断。
主控电路设计中,单片机P0口用于LCD数据输出,P1口连接温湿度传感器和按键矩阵,P2口用于风机与加热模块控制,P3口部分引脚用作中断及串口调试接口。时钟电路采用12MHz晶振,确保系统运行稳定。
2.2 温湿度检测模块设计(DHT11传感器)
本系统采用DHT11温湿度传感器,具备高可靠性与长期稳定性。DHT11内置单总线通信接口,可通过单片机GPIO口实现数据读取。传感器在每秒采集一次温湿度值,温度精度为±2℃,湿度精度为±5%。
单片机每隔固定时间触发采样,通过读取DHT11的40位数据,提取温度与湿度整数部分,并将其存储在全局变量中供后续控制逻辑使用。当检测到温度超过设定值或湿度低于阈值时,系统自动关闭加热装置,防止过热;若湿度未达到目标,系统保持加热与风机运行,确保干燥效果。
2.3 矩阵键盘输入模块设计
矩阵键盘为4×4结构,共16个按键,包括数字键(0~9)、确认键、功能键(模式/定时/设置)以及上下调整键。通过矩阵扫描方式读取按键输入,减少单片机I/O口占用。单片机按行列方式轮询检测按键状态,结合延时消抖处理,确保按键输入的可靠性。
按键主要功能如下:
- 模式键:切换工作模式(自动/手动);
- 设置键:进入温湿度或时间设定界面;
- 加/减键:调节温度、湿度或时间参数;
- 确认键:保存设定值并返回主界面。
2.4 显示模块设计(LCD1602)
显示部分采用LCD1602液晶显示屏,负责显示实时温湿度数据、烘干时间及工作模式等信息。LCD1602为16×2字符型液晶,可通过4位或8位总线通信方式与单片机连接。为了节省I/O口资源,本系统采用4位数据线方式。
LCD1602显示内容设计如下:
- 第一行显示“Temp:XX.XC Hum:XX%”
- 第二行显示“Time:XXXs Mode:Auto/Manu”
当用户进入设置模式时,LCD自动切换至参数调节界面,实时反馈设定结果。
2.5 风扇与加热驱动模块设计
烘干系统的动力部分由直流电机风扇与电热丝组成。由于单片机I/O输出电流较小,无法直接驱动电机和加热丝,因此采用ULN2003达林顿管阵列作为驱动模块。ULN2003可承受较高负载电流,适合驱动直流电机、继电器等设备。
驱动逻辑如下:
- 当温湿度低于设定阈值时,单片机通过ULN2003开启风扇与加热模块;
- 当温度达到目标值或湿度达到设定值时,关闭加热保持通风;
- 若温度超限或湿度异常,系统立即关闭所有输出并报警提示。
此结构可保证烘干效率,同时避免温度过高导致衣物损坏。
2.6 电源模块设计
电源模块为系统提供+5V稳压电源,采用LM7805稳压芯片。输入电压可为+12V直流电源,输出稳定5V供给单片机、LCD与传感器模块。风扇与加热丝部分单独采用+12V供电,通过ULN2003控制信号隔离,确保系统供电稳定和安全。
为防止干扰,电源部分设计有电解电容和陶瓷电容滤波,输出端增加瞬态抑制二极管以防止电压尖峰对单片机造成损坏。
3. 系统程序设计
系统程序采用C语言编写,利用Keil进行编译,程序结构包括主程序、温湿度采集模块、显示模块、键盘输入模块、风扇与加热控制模块、定时器与安全控制模块等。
3.1 主程序设计
主程序负责系统初始化与各模块任务调度。系统启动后完成LCD初始化、DHT11初始化及定时器启动,进入主循环进行温湿度采集、键盘扫描与逻辑控制。
主程序框架如下:
void main()
{
System_Init();
LCD_Init();
DHT11_Init();
Timer0_Init();
while(1)
{
DHT11_ReadData(&temperature, &humidity);
Display_Update(temperature, humidity, remain_time);
Key_Scan();
Control_Process(temperature, humidity);
Delay_ms(500);
}
}
该结构实现了循环检测与周期性任务执行,确保系统实时响应。
3.2 温湿度采集程序设计
温湿度采集模块采用单总线通信协议。程序通过发送起始信号、等待响应、读取40位数据实现通信。数据解析后分别提取温度与湿度值。
void DHT11_ReadData(unsigned char *temp, unsigned char *humi)
{
unsigned char buf[5];
DHT11_Start();
if(DHT11_Check() == 0)
{
for(int i=0; i<5; i++)
buf[i] = DHT11_ReadByte();
if((buf[0]+buf[1]+buf[2]+buf[3]) == buf[4])
{
*humi = buf[0];
*temp = buf[2];
}
}
}
通过校验和判断确保数据准确,避免因通信干扰导致错误值。
3.3 控制逻辑与驱动程序设计
控制模块根据温湿度值与设定阈值的比较结果,决定风扇与加热模块的启停状态。
void Control_Process(float temp, float humi)
{
if(temp < set_temp && humi > set_humi)
{
Fan_On();
Heater_On();
}
else if(temp >= set_temp)
{
Heater_Off();
Fan_On();
}
else if(humi <= set_humi)
{
Heater_Off();
Fan_Off();
}
// 安全保护
if(temp > 70)
{
Heater_Off();
Fan_Off();
Buzzer_On();
}
}
系统在检测到超温时自动触发蜂鸣器报警并切断电源,确保安全可靠。
3.4 键盘扫描与参数设置程序设计
键盘程序采用行列扫描法,逐个检测键位状态。为了防止按键抖动,加入20ms延时消抖。
void Key_Scan()
{
for(row=0; row<4; row++)
{
Set_Row(row);
for(col=0; col<4; col++)
{
if(Read_Col(col) == 0)
{
Delay_ms(20);
if(Read_Col(col) == 0)
{
Key_Process(key_map[row][col]);
}
}
}
}
}
在Key_Process函数中根据不同按键实现对应功能,如修改设定参数、切换模式等。
3.5 显示程序设计
LCD显示模块实时输出系统运行状态:
void Display_Update(float temp, float humi, int time)
{
LCD_SetCursor(0,0);
LCD_WriteString("Temp:");
LCD_WriteFloat(temp);
LCD_WriteString("C Hum:");
LCD_WriteInt(humi);
LCD_WriteString("%");
LCD_SetCursor(1,0);
LCD_WriteString("Time:");
LCD_WriteInt(time);
LCD_WriteString("s Mode:");
if(mode == AUTO) LCD_WriteString("Auto");
else LCD_WriteString("Manu");
}
该函数每0.5秒刷新一次,确保信息实时更新。
3.6 定时与安全控制程序
系统通过定时器0实现倒计时功能,定时时间到后自动关闭风扇与加热模块。
void Timer0_ISR(void) interrupt 1
{
TH0 = (65536 - 50000) / 256;
TL0 = (65536 - 50000) % 256;
count++;
if(count >= 20)
{
remain_time--;
count = 0;
if(remain_time <= 0)
{
Fan_Off();
Heater_Off();
}
}
}
定时中断精度高、稳定性好,可确保烘干时间控制精确。
4. 系统运行与特性分析
系统上电后进入待机状态,用户可通过按键设定烘干温度、湿度与时间。启动后,温湿度传感器实时检测环境状态,单片机根据检测结果动态控制加热与风扇工作。当温度达到设定值或湿度降至目标以下时,加热器自动关闭,仅保留风机循环空气,防止局部过热。当时间倒计时结束或检测到超温异常时,系统自动断电保护并发出报警提示。
本系统具备以下特点:
- 高智能性:自动调节温湿度,具备自适应控制;
- 安全可靠:多级保护机制防止过热;
- 操作便捷:参数可调、LCD实时显示;
- 结构紧凑:便携式设计适用于多场景应用;
- 低功耗高效能:合理控制加热与风速,实现节能烘干。
该系统在家用电器、智能干燥设备、野外便携式干燥箱等领域均具有良好的应用前景。
点击链接下载资料:https://download.csdn.net/download/m0_51061483/91956674
590