课程设计智能风扇设计报告.docx

上传人:b****2 文档编号:11803406 上传时间:2023-06-02 格式:DOCX 页数:21 大小:68.35KB
下载 相关 举报
课程设计智能风扇设计报告.docx_第1页
第1页 / 共21页
课程设计智能风扇设计报告.docx_第2页
第2页 / 共21页
课程设计智能风扇设计报告.docx_第3页
第3页 / 共21页
课程设计智能风扇设计报告.docx_第4页
第4页 / 共21页
课程设计智能风扇设计报告.docx_第5页
第5页 / 共21页
课程设计智能风扇设计报告.docx_第6页
第6页 / 共21页
课程设计智能风扇设计报告.docx_第7页
第7页 / 共21页
课程设计智能风扇设计报告.docx_第8页
第8页 / 共21页
课程设计智能风扇设计报告.docx_第9页
第9页 / 共21页
课程设计智能风扇设计报告.docx_第10页
第10页 / 共21页
课程设计智能风扇设计报告.docx_第11页
第11页 / 共21页
课程设计智能风扇设计报告.docx_第12页
第12页 / 共21页
课程设计智能风扇设计报告.docx_第13页
第13页 / 共21页
课程设计智能风扇设计报告.docx_第14页
第14页 / 共21页
课程设计智能风扇设计报告.docx_第15页
第15页 / 共21页
课程设计智能风扇设计报告.docx_第16页
第16页 / 共21页
课程设计智能风扇设计报告.docx_第17页
第17页 / 共21页
课程设计智能风扇设计报告.docx_第18页
第18页 / 共21页
课程设计智能风扇设计报告.docx_第19页
第19页 / 共21页
课程设计智能风扇设计报告.docx_第20页
第20页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

课程设计智能风扇设计报告.docx

《课程设计智能风扇设计报告.docx》由会员分享,可在线阅读,更多相关《课程设计智能风扇设计报告.docx(21页珍藏版)》请在冰点文库上搜索。

课程设计智能风扇设计报告.docx

课程设计智能风扇设计报告

智能风扇设计报告

 

学院:

信息工程学院

专业:

自动化

班级:

09级3班

姓名:

鱼亮、贾延昭

学号:

09423030、9423041

日期:

2012年6月14日

 

基于单片机的智能电风扇控制系统

第1节引言

电风扇曾一度被认为是空调产品冲击下的淘汰品,其实并非如此,市场人士称,家用电风扇并没有随着空调的普及而淡出市场,近两年反而出现了市场销售复苏的态势。

其主要原因:

一是风扇和空调的降温效果不同——空调有强大的制冷功能,可以快速有效地降低环境温度,但电风扇的风更温和,更加适合老人儿童和体质较弱的人使用;二是电风扇有价格优势,价格低廉而且相对省电,安装和使用都非常简单。

尽管电风扇有其市场优势,但传统电风扇还是有许多地方应当进行改良的,最突出的缺点是它不能根据温度的变化适时调节风力大小,对于夜间温差大的地区,人们在夏夜使用电风扇时可能遇到这样的问题:

当凌晨降温的时候电风扇依然在工作,可是人们因为熟睡而无法察觉,既浪费电资源又容易引起感冒,传统的机械定时器虽然能够控制电风扇在工作一定后关闭,但定时范围有限,且无法对温度变化灵活处理。

鉴于以上方面的考虑,我们需要设计一种智能电风扇控制系统来解决这些问题。

1.1智能电风扇控制系统概述

传统电风扇是220V交流电供电,电机转速分为几个档位,通过人为调整电机转速达到改变风力大小的目的,亦即,每次风力改变,必然有人参与操作,这样势必带来诸多不便。

本设计中的智能电风扇控制系统,是指将电风扇的电机转速作为被控制量,由单片机分析采集到的数字温度信号,再通过可控硅对风扇电机进行调速。

从而达到无须人为控制便可自动调整风力大小的效果。

1.2设计任务和主要内容

本设计以MCS51单片机为核心,通过温度传感器对环境温度进行数据采集,从而建立一个控制系统,使电风扇随温度的变化而自动变换档位,实现“温度高,风力大,温度低,风力弱”的性能。

另外,通过键盘控制面板,用户可以在一定范围内设置电风扇的最低工作温度,当温度低于所设置温度时,电风扇将自动关闭,当高于此温度时电风扇又将重新启动。

本设计主要内容如下:

①风速设为从高到低6个档位,可由用户通过键盘手动设定。

②当温度每降低3℃则电风扇风速自动下降一个档位。

③当温度每升高3℃则电风扇风速自动上升一个档位。

410℃最低工作温度,当低于该温度时,电风扇自动停转。

5自动与手动的切换

第2节系统主要硬件电路设计

2.1总体硬件设计

系统总体设计框图如图2-1所示

 

图2-1系统原理框图

对于单片机中央处理系统的方案设计,根据要求,我们可以选用具有4KB片内E2PROM的AT89C51单片机作为中央处理器。

作为整个控制系统的核心,AT89C51内部已包含了定时器、程序存储器、数据存储器等硬件,其硬件能符合整个控制系统的要求,不需要外接其他存储器芯片和定时器件,方便地构成一个最小系统。

整个系统结构紧凑,抗干扰能力强,性价比高。

是比较合适的方案

2.2温度传感器模块设计

温度传感器可以选用LM324A的运算放大器,将其设计成比例控制调节器,输出电压与热敏电阻的阻值成正比,但这种方案需要多次检测后方可使采样精确,过于烦琐。

所以我采用更为优秀的DS18B20数字温度传感器,它可以直接将模拟温度信号转化为数字信号,降低了电路的复杂程度,提高了电路的运行质量。

温度传感器模块组成

本模块以DS18B20作为温度传感器,AT89C51作为处理器,配以温度显示作为温度控制输出单元。

整个系统力求结构简单,功能完善。

电路图如图2-2所示。

系统工作原理如下:

DS18B20进行现场温度测量,将测量数据送入AT89C51的P3.7口,经过单片机处理后显示温度值,并与设定温度值的上下限值比较,若高于设定上限值或低于设定下限值则控制电机转速进行调整。

电路图见附录。

2.3电机调速与控制模块设计

电机调速是整个控制系统中的一个重要的方面。

通过4905,使输出端电压发生改变,从而使施加在电风扇的输入电压发生改变,以调节风扇的转速,实现各档位风速的无级调速。

电机调速原理

可控硅的导通条件如下:

1)阳-阴极间加正向电压;

2)控制极-阴极间加正向触发电压;

3)阳极电流IA大于可控硅的最小维持电流IH。

电风扇的风速设为从高到低6、5、4、3、2、1档,各档风速都有一个限定值。

在额定电压、额定功率下,以最高转速运转时,

电机控制模块硬件设计

电路图见附录。

2.4温度显示与控制模块设计

温度的显示通过LED灯来显示其变化,在表盘上,共有8个LED指示灯。

分别为自动或手动,1级风苏、2级风速等。

LED会随着温度以及操作的不同会进行相应的显示。

2.5键盘控制系统模块设计

矩阵键盘是3*3的,接在P2口进行相应的控制,主要的操作是进行手动自动切换、风速手动调节等,同时,在相应的键盘操作下,在LED显示部分,进行相应的操作显示。

这样做的目地可以简化操作,并且很简单的便可以达到控制目的。

电路图见附录。

2.6稳压电路模块的设计

为了保证单片机在正常电压下正常工作,我们采用7805来进行5V的稳压工作。

电路原理图如下:

电路图见附录。

第三节系统软件设计

在程序设计上,我们主要设计了四个模块,主程序模块、温度扫描模块、电机控制模块和键盘扫描模块。

主程序主要涉及到对温度采集及键盘采集回来的数据进行综合性的处理。

温度扫描模块,则结合温度传感器的原理,写出了采集温度用的函数。

电机控制,通过延时实现了模拟的PWM波,对速度进行了分档。

键盘扫描,则采用定时中断的方法,隔100ms时间进行一次扫描。

具体思想见附录1.

结束语

首先,通过这次应用系统设计,在很大程度上提高了自己的独立思考能力和单片机的专业知识,也深刻了解写一篇应用系统的步骤和格式,有过这样的一次训练,相信在接下来的日子我们都会了,而且会做得更好。

我所写的系统主要根据目前节智能化电风扇技术的发展趋势和国内实际的应用特点和要求,采用了自动化的结构形式,实现对电风扇转速的自动控制。

系统以单片机AT89C51为核心部件,单片机系统完成对环境温度信号的采集、处理、显示等功能;用Protel软件绘制电路原理图和PCB电路印刷板图,由Protues软件进行访真测试,利用MCS51汇编语言编制,运行程序该系统的主要特点是:

1)适用性强,用户只需对界面参数进行设置并启动系统正常运行便可满足不同用户对最适合温度的要求,实现对最适温度的实时监控。

2)系统成本低廉,操作非常简单,随时可以根据软件编写新的功能加入产品。

操作界面可扩展性强,只要稍加改变,即可增加其他按键的使用功能。

本系统在当今提倡人性化设计和健康产品的环境下具有非常好的市场前景。

本设计在模拟检测中运行较好,但采样据不太稳定。

功能上的缺憾是对于两个档之间的临界温度处理不好,并且档位太少。

还有待改进。

 

附录1:

主程序:

#include

#defineucharunsignedchar

#defineuintunsignedint

#include"wendu.h"

#include"dianji.h"

#include"jianpan.h"

//externuintspeed;

//externunitanjian[9];

main()

{

uinttmp;

EA=0;

P0=0xff;

dianji_kou=1;//dianjichushiweigao

anjian_clear1();

anjian[0]=1;

anjian_dingshi_init();

EA=1;//EAshineng

while

(1)

{

anjian_saomiao_1();

if(anjian[0]==1){

tmp=DS18B20_Tmp_Read();

if(tmp<=0x00a0){

P0=0x00;//<10c

speed_0();

}

elseif(tmp>0x00a0&&tmp<=0x0140){

P0=0x7f;//10--20c

speed_2();

}

elseif(tmp>0x0140&&tmp<=0x0170){

P0=0xbd;//20--23c

speed_3();

}

elseif(tmp>0x0170&&tmp<=0x0190){

P0=0xdd;//23--26c

speed_4();

}

elseif(tmp>0x0190&&tmp<=0x01d0){

P0=0xed;//26--29c

speed_5();

}

elseif(tmp>0x01d0&&tmp<=0x0200){

P0=0xf5;//29--32c

speed_6();

}

else{

P0=0xf9;//>35c

speed_7();

}

}

if(anjian[1]==1){

P0=0xfe;

anjian_saomiao_1();

if(anjian[3]==1){

P0=0x7e;//<10c

speed_1();

}

elseif(anjian[4]==1){

P0=0xbe;//10--20c

speed_2();;

}

elseif(anjian[5]==1){

P0=0xde;//20--25c

speed_3();

}

elseif(anjian[6]==1){

P0=0xee;//25--30c

speed_4();

}

elseif(anjian[7]==1){

P0=0xf6;//30--35c

speed_5();

}

elseif(anjian[8]==1){

P0=0xfa;//>35c

speed_6();

}

elsespeed_0();

}

else{P0=0xff;speed_0();}

}

}

温度采集程序:

///sbitTMDAT=P3^7;

/////////////////////////dianji/////////////////////////////////////

sbitTMDAT=P3^7;

voidDelay(intuseconds)

{

ints;

for(s=0;s

}

ucharReset_Bus(void)

{

ucharpresence;

TMDAT=0;

Delay(29);

TMDAT=1;

Delay(3);

presence=TMDAT;

Delay(25);

return(presence);

}

voidWrite_Bit(charbitval)

{

TMDAT=0;

if(bitval==1)TMDAT=1;

Delay(5);

TMDAT=1;

}

voidWrite_Byte(charval)

{

uchari;

uchartemp;

for(i=0;i<8;i++)

{

temp=val>>i;

temp&=0x01;

Write_Bit(temp);

}

Delay(5);

}

ucharRead_Bit(void)

{

uchari;

TMDAT=0;

TMDAT=1;

for(i=0;i<3;i++);

return(TMDAT);

}

ucharRead_Byte(void)

{

uchari;

ucharvalue=0;

for(i=0;i<8;i++)

{

if(Read_Bit())value|=0x01<

Delay(6);

}

return(value);

}

uintDS18B20_Tmp_Read(void)

{

uintTEMP;

ucharTEMP_LSB,TEMP_MSB;

Reset_Bus();

Write_Byte(0xCC);

Write_Byte(0x44);

Delay(5);

Reset_Bus();

Write_Byte(0xCC);

Write_Byte(0xBE);

TEMP_LSB=Read_Byte();

TEMP_MSB=Read_Byte();

TEMP=TEMP_MSB;

TEMP=TEMP<<8;

TEMP=TEMP|TEMP_LSB;

return(TEMP);

}

电机调速程序:

sbitdianji_kou=P3^6;//P3^6控制电机

voidsudu(uintx){

uinti;

dianji_kou=0;

for(i=0;i<5001;i++){

if(i==x){dianji_kou=~dianji_kou;}

}

}

voidspeed_0(void){

sudu(0);

}

voidspeed_1(void){

sudu(500);

}

voidspeed_2(void){

sudu(700);

}

voidspeed_3(void){

sudu(800);

}

voidspeed_4(void){

sudu(1000);

}

voidspeed_5(void){

sudu(1200);

}

voidspeed_6(void){

sudu(1500);

}

voidspeed_7(void){

sudu(1800);

}

sbitdianji_kou=P3^6;//P3^6控制电机

voidsudu(uintx){

uinti;

dianji_kou=0;

for(i=0;i<5001;i++){

if(i==x){dianji_kou=~dianji_kou;}

}

}

voidspeed_0(void){

sudu(0);

}

voidspeed_1(void){

sudu(500);

}

voidspeed_2(void){

sudu(700);

}

voidspeed_3(void){

sudu(800);

}

voidspeed_4(void){

sudu(1000);

}

voidspeed_5(void){

sudu(1200);

}

voidspeed_6(void){

sudu(1500);

}

voidspeed_7(void){

sudu(1800);

}

键盘采集程序:

/*

p2^0p2^1p2^2

p2^3

p2^4

p2^5

*/

 

sbitKeyIn1=P2^3;

sbitKeyIn2=P2^4;

sbitKeyIn3=P2^5;

sbitKeyOut1=P2^0;

sbitKeyOut2=P2^1;

sbitKeyOut3=P2^2;

uintanjian[9];

voidanjian_dingshi_init(){

TMOD=0x11;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;//100MS

//EA=1;//KAIZONGZHONGDUAN

TR0=1;//T0YUNXU

}

voidanjian_clear1(void){

chari;

for(i=0;i<9;i++){

anjian[i]=0;

}

}

voidanjian_clear2(void){

chari;

for(i=3;i<9;i++){

anjian[i]=0;

}

}

 

voidanjian_saomiao_1(void){

KeyOut1=0;

KeyOut2=1;

KeyOut3=1;

if(KeyIn1==0){anjian_clear1();anjian[0]=1;}

if(KeyIn2==0){anjian_clear1();anjian[1]=1;}

if(KeyIn3==0){anjian_clear1();}

while(KeyIn1==0||KeyIn2==0||KeyIn3==0);

KeyOut1=1;

KeyOut2=0;

KeyOut3=1;

if(KeyIn1==0){anjian_clear2();anjian[3]=1;}

if(KeyIn2==0){anjian_clear2();anjian[4]=1;}

if(KeyIn3==0){anjian_clear2();anjian[5]=1;}

while(KeyIn1==0||KeyIn2==0||KeyIn3==0);

KeyOut1=1;

KeyOut2=1;

KeyOut3=0;

if(KeyIn1==0){anjian_clear2();anjian[6]=1;}

if(KeyIn2==0){anjian_clear2();anjian[7]=1;}

if(KeyIn3==0){anjian_clear2();anjian[8]=1;}

while(KeyIn1==0||KeyIn2==0||KeyIn3==0);

}

 

voidtimer0()interrupt1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

anjian_saomiao_1();

}

 

附录2:

电源模块:

温度传感器模块:

键盘模块:

 

电机模块:

第十三章:

干燥

通过本章的学习,应熟练掌握表示湿空气性质的参数,正确应用空气的H–I图确定空气的状态点及其性质参数;熟练应用物料衡算及热量衡算解决干燥过程中的计算问题;了解干燥过程的平衡关系和速率特征及干燥时间的计算;了解干燥器的类型及强化干燥操作的基本方法。

二、本章思考题

1、工业上常用的去湿方法有哪几种?

态参数?

11、当湿空气的总压变化时,湿空气H–I图上的各线将如何变化?

在t、H相同的条件下,提高压力对干燥操作是否有利?

为什么?

12、作为干燥介质的湿空气为什么要先经预热后再送入干燥器?

13、采用一定湿度的热空气干燥湿物料,被除去的水分是结合水还是非结合水?

为什么?

14、干燥过程分哪几种阶段?

它们有什么特征?

15、什么叫临界含水量和平衡含水量?

16、干燥时间包括几个部分?

怎样计算?

17、干燥哪一类物料用部分废气循环?

废气的作用是什么?

18、影响干燥操作的主要因素是什么?

调节、控制时应注意哪些问题?

三、例题

2,相对湿度为50%,干球温度为20oC。

试用I-H图求解:

(a)水蒸汽分压p;

(b)湿度H;

(c)热焓I;

(d)露点td;

(e)湿球温度tw;

(f)如将含500kg/h干空气的湿空气预热至117oC,求所需热量Q。

解:

由已知条件:

P=2,Ψ0=50%,t0=20oC在I-H图上定出湿空气的状态点A点。

(a)水蒸汽分压p

过预热器气所获得的热量为

每小时含500kg干空气的湿空气通过预热所获得的热量为

例题13-2:

在一连续干燥器中干燥盐类结晶,每小时处理湿物料为1000kg,经干燥后物料的含水量由40%减至5%(均为湿基),以热空气为干燥介质,初始湿度H1•kg-1绝干气,离开干燥器时湿度H2•kg-1绝干气,假定干燥过程中无物料损失,试求:

(1)水分蒸发是qm,W(kg水•h-1);

(2)空气消耗qm,L(kg绝干气•h-1);

原湿空气消耗量qm,L’(kg原空气•h-1);

(3)干燥产品量qm,G2(kg•h-1)。

解:

qmG1=1000kg/h,w1=40℃,w2=5%

H1=0.009,H2

qmGC=qmG1(1-w1)=1000(1-0.4)=600kg/h

x1=0.4/0.6=0.67,x2

qmw=qmGC(x1-x2

qmL(H2-H1)=qmw

qmL’=qmL(1+H109)=12kg/h

qmGC=qmG2(1-w2)

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2