前述:
QQ:3177227373
V X:F9986858
主要内容
本设计将要实现一个以单片机为核心的智能感应式抽油烟机控制电路系统的设计。当智能感应系统检测到人体出现且周围烟雾浓度达到一定范围时,系统便会自动判断是否开始工作。根据烟雾浓度的大小,系统可切换抽油烟机的档位;当感应不到人体且无烟雾产生时,系统自动会停止工作。当烟雾等有害气体的浓度过高,或长时间无人且害气体的浓度高时,系统均会发出警报。该电路系统还配有显示屏,可实时显示系统运行情况。
系统硬件结构设计
智能感应式抽油烟机系统硬件系统框图如下图1所示,其主要包括烟雾浓度
检测模块、人体感应模块、单片机模块、按键控制模块、显示模块和报警模块等六部分。单片机模块是整个电路的控制核心,其负责各模块之间的连接并可操控各模块。人体感应模块和烟雾浓度检测模块主要完成系统数据的采集,其中人体感应模块负责感应人体存在与否。而烟雾浓度检测模块负责对周围烟雾等有害气体的浓度的检测。按键模块可实现抽油烟机手动开关、档位切换、功能选择等。显示模块可以清晰展示系统运行情况。报警模块可根据单片机模块发出的控制信号,对危险和紧急情况提出预警,以提醒使用者,避免不必要的危害。
系统软件结构设计
智能感应式抽油烟机系统的软件部分采用单片机系统软件和应用软件来实
现系统程序代码编译。软件程序主要完成对采集数据的收集、处理,根据需要作出判断,并向执行功能模块发出对应的控制指令,协调各功能模块之间的协同工作。系统软件框图如图2所示,首先通过软件控制烟雾浓度感应模块和人体感应模块完成信息采集,将采集的数据送往控制核心单片机;其次通过软件对采集来的数据分析、运算、处理及比较;最后,通过软件将判断结果和执行指令送往执行机构显示模块和报警模块完成整个系统的工作。
实物照片
仿真
PCB
部分代码
定时器产生PWM
void Timer0_Init()
{
TMOD = 0x01;
TH0 = (65536-100)/256;//定时100us 100us*10=1ms 1s=1000ms 频率1KHz
TL0 = (65536-100)%256;
ET0 = 1;
TR0 = 1;
EA = 1;
}
void Service_Timer0() interrupt 1
{
static u8 count;
TH0 = (65536-100)/256;
TL0 = (65536-100)%256;
count++;
if(count<PWM_Duty)
{PWMA=1;}//电机工作
else
{PWMA=0;}//电机不工作
if(count==10)
{count=0;}
}
数据处理
void Date_dispose()
{
if((Date>7)&&(People_Flag==1))
{PWM_Duty=Date/3;System_state(1);}//计算占空比 显示ON
else
{PWM_Duty=0;System_state(0);} //关闭电机 显示OFF
if(Date>Alarm)
{BEEP=0;LED=0;}//高浓度打开蜂鸣器和LED
else
{BEEP=1;LED=1;}//低浓度关闭蜂鸣器和LED
// if(K6==0)//红外人体感应按键
// {
// delay_ms(10);
// if(K6==0)
// {People_Flag=~People_Flag;}//人体感应标志位取反,代替人靠近或是远离
// while(K6==0);
// }
if(People==1)//红外人体感应 感应到人体输出高电平
{
delay_ms(10);
if(People==1)
{People_Flag=1;}//人体感应标志位置1
else
{People_Flag=0;}
}
else
{People_Flag=0;}
}