温室大棚温度控制综述.docx
- 文档编号:10524775
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:24
- 大小:510.33KB
温室大棚温度控制综述.docx
《温室大棚温度控制综述.docx》由会员分享,可在线阅读,更多相关《温室大棚温度控制综述.docx(24页珍藏版)》请在冰点文库上搜索。
温室大棚温度控制综述
烟台南山学院
单片机课程设计
题目温室大棚温度控制
姓名:
所在学院:
烟台南山学院
所学专业:
自动化
班级:
09自动化02班
学号:
指导教师:
完成时间:
2012-9-10
摘要
在人类的生活环境中,温度扮演着极其重要的角色。
无论你生活在哪里,从事什么工作,无时无刻不在与温度和湿度打着交道。
自18世纪工业革命以来,工业发展与是否能掌握温湿度有着密切的联系。
在冶金、钢铁、石化、水泥、玻璃、医药等行业,可以说几乎80%的工业部门都不得不考虑着温湿度的因素。
温湿度不但对于工业如此重要,在农业生产中温度的监测与控制也有着十分重要的意义。
我国人多地少,人均占有耕地面积更少。
因此,要改变这种局面,只靠增加耕地面积是不可能实现的,因此我们要另辟蹊径,想办法来提高单位亩产量。
温室大棚技术就是其中一个好的方法。
温室大棚就是建立一个模拟适合生物生长的气候条件,创造一个人工气象环境,来消除温度对生物生长的约束。
而且,温室大棚能克服环境对生物生长的限制,能使不同的农作物在不适合生长的季节产出,使季节对农作物的生长不再产生过度影响,部分或完全摆脱了农作物对自然条件的依赖。
由于温室大棚能带来可观的经济效益,所以温室大棚技术越来越普及,并且已成为农民增收的主要手段。
随着大棚技术的普及,温室大棚数量不断增多,温室大棚的温湿度控制便成为一个十分重要的课题。
传统的温湿度控制是在温室大棚内部悬挂温度计和湿度计,通过读取温度值和湿度值了解实际温湿度,然后根据现有温湿度与额定温湿度进行比较,看温湿度是否过高或过低,然后进行相应的通风或者洒水。
这些操作都是在人工情况下进行的,耗费了大量的人力物力。
现在,随着国家经济的快速发展,农业产业规模的不断提高,农产品在大棚中培育的品种越来越多,对于数量较多的大棚,传统的温度控制措施就显现出很大的局限性。
温室大棚的建设对温湿度检测与控制技术也提出了越来越高的要求。
今天,我们的生活环境和工作环境有越来越多称之为单片机的小电脑在为我们服务。
单片机在工业控制、尖端武器、通信设备、信息处理、家用电器等各测控领域的应用中独占鳌头。
时下,家用电器和办公设备的智能化、遥控化、模糊控制化已成为世界潮流,而这些高性能无一不是靠单片机来实现的。
采用单片机来对温湿度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温湿度的技术指标,从而能够大大提高产品的质量和数量。
单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,成为自动化和各个测控领域中必不可少且广泛应用的器件,尤其在日常生活中也发挥越来越大的作用。
因此,单片机对温湿度的控制问题是一个工农业生产中经常会遇到的问题。
因此,本课题围绕基于单片机的温室大棚控制系统展开了应用研究工作。
1绪论
随着生活条件的不断改善,人们更关注自身的健康,绿色蔬菜尤其受到重视。
大棚种植充分满足了人们的需求,但对于和农作物生长密切相关的大棚温度的控制。
对于大棚种植而言,良好的物种、本地适合种植的物种及土地酸碱度都是可以通过农民长期的种植经验获得的。
但是温度是农民不能轻易解决的问题,而且温度的变化幅度大,不易人工控制,对于农民来说时刻关注作物的生长温度是个庞大的工作量。
“白天太阳很好,阳光充足,外面的温度零下5度如果大棚的薄膜没有破,里面照样产生有25度以上的温度,从而地温也可以得到提升至15度左右。
漆黑大风的夜晚棚内的温度会大幅度降低,能降低到零下5度以下,停止刮风可以恢复到较地温少低点为止。
”这些专业知识对于常年种植的农民也未必了解。
应用于大棚种植的温度控制系统解决了长期以来困扰农民的问题,它的制作成本低廉,应用广泛,对农民自身的素质要求不高,便于农民操作。
更重要的是,它不仅帮助农民节约了大量,还在无形之中提高了作物的产量,增加了农民的收入,满足了人们对大棚蔬菜的需求。
基于单片机的大棚温度控制系统是个小型的软硬件结合的产品,它针对个体农民的需要设计,适于中小面积的大棚种植。
大棚蔬菜满足了人民能一年四季吃到新鲜蔬菜的愿望,为提供更多量、更有营养价值的蔬菜,智能的大棚温度控制系统已成为农民的迫切需要。
以AT89C2051单片机为主的温度控制系统可对大棚内部的温度进行模拟和蔬菜所需的正常温度进行比较,以人性化的方式向大棚管理人员提供温度调节的信息,帮助农民提高农作物的产量,减少农民的工作量。
温度控制系统采用AT89C2051单片机为核心。
大棚温度采用AD590集成温度传感器检测。
该系统成本低,操作方便,设计人性化,具有良好的推广价值。
2总体方案设计
在温室大棚的方案设计中,我们采用温度传感器,A/D转换器等措施,并加入报警电路,大大提高了温度控制的准确性。
图1系统组成结构图
3系统硬件的设计
3.1单片机AT89C2051
图2AT89C2051引脚图
AT89C2051(以下简称2051)是一种低功耗、高性能的8位CMOS微控制器芯片,片内带2KB的快闪可编程及可擦除只读存储器(FPEROM)。
它于MCS-51指令系统兼容,片内FPEROM允许对程序存储器在线重新编程,也可以用常规的EPROM编程器编程。
ATMEL的2051将具有多种功能的8位CPU与FPEROM结合在同一芯片上,为很多嵌入式控制应用提供了高度灵活且价格适宜的方案。
2051还增加了在零频下工作的静态逻辑方式及两种软件可选的省电模式。
在其中,在闲置模式下,CPU停止工作,但RAM、定时器、计数器、串行口和终端系统仍在工作。
在掉电模式下,只保存RAM的内容,振荡器停振,关闭芯片的所有其它功能,直到下一次硬件复位为止。
89C2051主要性能如下:
1.与MCS-51产品兼容。
2.2KB的在线可重复编程快闪存储器,寿命可达1000次写/擦除周期。
3.宽工作电压范围为2.7V~6V。
4.全静态工作方式:
0Hz~24Hz。
5.两级程序存储加密。
6.128*8位SRAM。
7.15条可编程I/O线。
8.2个16位定时器/计数器。
9.5个中断电源。
10.可编程串行通道。
11.可直接驱动LED。
12.有片内精密模拟比较器。
13.低功耗的闲置与掉电模式。
14.软件设置睡眠和唤醒功能。
15.可编程UARL通道。
16.两个16位可编程定时/计数器。
P3口还用于实现AT89C2051的各种第二功能,如下表所列:
P3口管脚
备选功能
P3.0
RXD串行输入端口
P3.1
TXD串行输出端口
P3.2
INT0 外中断0
P3.3
INT1 外中断1
P3.4
T0定时器0外部输入
P3.5
T1定时器1外部输入
表1P3口管脚备选功能
3.2AD590集成温度传感器
图3AD590集成温度传感器引脚图
AD590是美国ANALOGDEVICES公司的单片集成两端感温电流源,其输出电流与绝对温度成比例。
在4V至30V电源电压范围内,该器件可充当一个高阻抗、恒流调节器,调节系数为1µA/K。
片内薄膜电阻经过激光调整,可用于校准器件,使该器件在298.2K(25°C)时输出298.2µA电流;AD590适用于150°C以下、目前采用传统电气温度传感器的任何温度检测应用。
低成本的单芯片集成电路及无需支持电路的特点,使它成为许多温度测量应用的一种很有吸引力的备选方案。
应用AD590时,无需线性化电路、精密电压放大器、电阻测量电路和冷结补偿;除温度测量外,还可用于分立器件的温度补偿或校正、与绝对温度成比例的偏置、流速测量、液位检测以及风速测定等。
AD590可以裸片形式提供,适合受保护环境下的混合电路和快速温度测量;AD590特别适合远程检测应用。
它提供高阻抗;电流输出,对长线路上的压降不敏感。
任何绝缘良好的双绞线都适用,与接收电路的距离可达到数百英尺。
这种输出特性还便于AD590实现多路复用:
输出电流可以通过一个CMOS多路复用器切换,或者电源电压可以通过一个逻辑门输出切换。
主要指标:
1.测温范围:
-55~+150V。
2.输出电流IT与绝对温度T成正比:
I=αT(uA),其中α=1uA/K,+25℃(298.2k)时IT=298.2MA。
3.线性误差±0.3℃。
4.电源电压:
4-30V。
5.输出电阻为710mΩ
3.3系统报警电路
报警电路是超过设定的范围,单片机输出信号驱动蜂鸣器发声警报,如图所示,当BDLL端为低电平时,有电流通过蜂鸣器,蜂鸣器报警,反之不报警。
图4报警电路
3.4A/D转换器的设计
利用比较器、定时器测量电容的充电时间。
Up=R2E/(R1+R2)、Cduc/dt=IT、Uc=Tt/C,当Up=Uc时Up=IT/C*tT,
tT=Cup/αT。
3.5系统的电源电路设计
在温室大棚系统中,单片机需要+5V电源供电,所以必须要有一种稳压电路,在此设计由7805组成的5V输出的电源电路。
IC采用集成稳压器7805,C1、C2分别为输入端和输出端滤波电容,RL为负载电阻。
二极管VD1、VD2起保护作用。
图5+5V稳压电源电路
3.6相关硬件电路设计
1、显示:
8位字形口,4位位置口。
2、键盘:
+、-、set(设置键)、esc(取消键)。
3、测温电路:
3条I/O脚(P1.0、P1.1、P3.6)。
4、热丝驱动:
1I/O脚。
5、串行I/O扩展:
2I/O脚
3.6.1温度检测电路
图6温度检测电路图
图7温度检测电路图
4系统软件的设计
4.1主流程图设计
图8主程序流程图
4.2中断服务流程图设计
图9中断服务流程图
4.3键盘处理流程图
图10键盘处理流程图
4.4键盘扫描及流程图
图11键盘扫描流程图
5总结体会
这次课程设计是我们专业课程知识综合应用的实践训练,这是我们迈向社会,从事职业工作前一个必不少的过程。
”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义。
说起课程设计,我认为最重要的就是做好设计的预习,选一个自己有兴趣的题目;其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。
最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
我在两周内认真的进行本次课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.通过这次恒温控制设计,本人在多方面都有所提高,综合运用本专业所学课程的理论和生产实际知识进行一次实际训练从而培养和提高学生独立工作能力,独立思考的能力也有了提高。
在这次设计过程中,体现出自己单独设计的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。
在此感谢我们的鞠晓君老师和一组的同学们,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪。
和同学们一起探讨研究合作,也让我学到了很多,感受颇深,受益匪浅。
6参考文献
1.张毅刚等主编.单片机应用技术.哈尔滨工业大学出版社
2.王兆安黄俊主编.电力电子技术.机械工业出版社
3.孙传友等主编.测控电路及装置.北京航空航天大学出版社
4.陈治明主编.电力电子器件基础.机械工业出版社
5.朱一轮主编.智能仪器基础.电子工业出版社
6.何希才主编.传感器及其应用电路.电子工业出版社
7.于春勇主编.温室大棚自动控制系统.中国农业出版社
8.杨彬主编.温室温、湿度智能控制系统的研究.甘肃农业大学
附录一:
系统硬件电路原理图
附录二:
恒温控制程序
/*单片机恒温控制程序
(1)单片机型号89C2051,时钟频率12MHz
(2)P3口作为字型口
P3.0~P3.7(除P3.6)对应七段LED字段a~g,低电平亮;
2051内部模拟比较器输出经P3.6脚输入。
(3)P1口的使用:
P1.0~P1.1为内部模拟比较器输入脚;
P1.2为键盘输入脚;
P1.3为加热控制输出脚;
P1.4~P1.7为显示/键盘扫描输出线,对应#0~#3位置,低电平有效;
(4)利用T0作为A/D转换定时器(单位1us)。
(5)利用T1作为5ms键盘/显示扫描定时器。
*/
#include
#include
#defineucharunsignedchar
#defineuintunsignedint
#defineTC1(-5000)/*T15ms时间常数*/
#defineSTFH100/*闪烁周期500ms,单位5ms*/
#defineSTC200/*采样1s定时常数,单位5ms*/
#defineKTC113/*重发键延时,单位20ms*/
#defineKTC28/*重发键周期,单位20ms*/
#defineKSET1/*SET键值*/
#defineKINC2/*+键值*/
#defineKDEC3/*-键值*/
#defineKESC4/*ESC键值*/
#defineFSPC0xff/*空字型*/
#defineFNGS0xbf/*负号字型*/
#defineTUP1300/*设定温上限,单位0.1℃*/
#defineTLOW-300/*设定温下限,单位0.1℃*/
#defineTDA3/*温度控制死区,单位0.1℃*/
constfloatCVp=2e+6;/*计算常数*/
sbitAI0=P1^0;/*比较器+输入脚*/
sbitAI1=P1^1;/*比较器-输入脚*/
sbitKI=P1^2;/*键盘输入脚*/
sbitHT=P1^3;/*加热输出脚*/
sbitCMP=P3^6;/*比较器输出脚*/
uchardbuf[4];/*显示缓冲区*/
ucharkey;/*键值*/
bitDTC,STF;/*当前温度显示、采样时间到标志*/
voidfresh(int,uchar,uchar*);/*显示刷新函数*/
voidthermost(int,int);/*恒温控制函数*/
intkbfun(uchar,int*);/*键盘处理函数*/
/*主函数*/
main()
{uinttp;/*电容C2充电时间*/
inttem,stem;/*当前温度、设定温度*/
TMOD=0x11;/*定时器1工作在定时方式、16位计数、内启动*/
TH1=TC1>>8;/*装入定时器1时常*/
TL1=TC1;
AI1=0;/*关闭C2充电*/
key=0;/*清键值*/
DTC=1;/*置当前温度显示态*/
STF=1;/*置采样时间到标志*/
stem=250;/*设定温初值25℃(单位0.1℃)*/
fresh(0,4,dbuf);/*显示0.0*/
IE=0x88;/*开中断,允许定时器1请求中断*/
TR1=1;/*启动定时器1*/
while
(1)/*工作循环*/
{if(_testbit_(STF))/*若采样时间到*/
{TH0=0;/*清T0计数器*/
TL0=0;
AI1=1;/*开始C2充电*/
TR0=1;/*开始T0计时*/
while(CMP);/*等待AI1≥AI0*/
TR0=0;/*停止T0计时*/
AI1=0;/*关闭C2充电*/
tp=TH0*256+TL0;/*读取T0计数值*/
/*计算当前温度值*/
tem=(CVp/tp-273.2)*10;
if(DTC)/*显示当前温度*/
fresh(tem,4,dbuf);
thermost(stem,tem);/*恒温控制*/
}
if(key)/*若按键有效*/
{if(kbfun(key,&stem))/*键盘处理*/
fresh(tem,4,dbuf);
key=0;
}
}//while
}//main
/*恒温控制函数*/
voidthermost(intx,inty)
{
if(x-y>TDA)HT=0;/*开加热*/
if(x-y<-TDA)HT=1;/*关加热*/
}
/*显示刷新函数*/
voidfresh(intx,ucharnum,uchar*y)
{/*0~9字型表*/
staticucharfont[10]={0xc0,0xf9,0x64,0x70,0x59,
0x52,0x42,0xf8,0x40,0x50};
uintux;
uchari;
ux=(x>=0?
x:
-x);
i=0;
do/*将ux转换成十进制数字字型送到y[]中*/
{y[i]=font[ux%10];
ux=ux/10;
i++;}
while(i if(i while(i } /*键盘处理函数*/ intkbfun(uchark,int*pt) {staticinttmp; if(DTC)/*在当前温度显示态下*/ if(k==KSET)/*SET键处理*/ {tmp=*pt;/*读取设定温度到tmp*/ DTC=0;}/*切换到设定温度显示态*/ elsereturn(0);/*其他键处理*/ else/*设定温度显示态下*/ switch(k) {caseKSET: /*按SET键处理*/ *pt=tmp;/*修改设定温度*/ caseKESC: /*按ESC键处理*/ DTC=1;/*切换到当前温度显示态*/ return (1); caseKINC: /*按+键处理*/ if(tmp==TUP)tmp=TLOW; elsetmp+=5;/*+0.5℃*/ break; caseKDEC: /*按-键处理*/ if(tmp==TLOW)tmp=TUP; elsetmp-=5;/*-0.5℃*/ } fresh(tmp,4,dbuf);/*刷新设定温显示*/ return(0); } /*键盘、显示扫描和定时中断服务,一次/5ms*/ time1()interrupt3 {/*扫描位置表*/ staticucharpot[4]={0xef,0xdf,0xbf,0x7f}; staticucharsi=0;/*扫描位置*/ staticucharkst=1;/*键盘扫描状态*/ staticucharkstr;/*键盘扫描定时器*/ staticucharsit;/*扫描位置暂存*/ staticucharfltr=0;/*闪烁计时器*/ staticucharsamtr=STC;/*采样定时器*/ bitkc;/*键入值暂存*/ TH1=TC1>>8;/*重装定时器1时常*/ TL1=TC1; /*显示扫描*/ P1=(P1|0xf5)&pot[si];/*当前位置送P1口*/ if(! DTC&&fltr>STFH/2)/*若显示设定温且在消隐期*/ P3=FSPC;/*空字型送P3口*/ else P3=dbuf[si];/*当前字型送P3口*/ /*计时*/ if(++fltr==STFH)fltr=0;/*闪烁计时*/ if(! (--samtr))/*采样定时*/ {samtr=STC; STF=1;} /*键盘扫描*/ kc=! KI;/*输入键值*/ if(kst==1)/*检测态*/ {if(kc) {sit=si;/*有按键暂存扫描位置*/ kst=2;}} else if(si==sit)/*若完成一周扫描(延迟20ms)*/ switch(kst) {case2: /*按键确认态*/ if(kc) {key=sit+1;/*按键有效,生成键值*/ kstr=KTC1;/*开始持续键延时*/ kst=3;} elsekst=1;/*按键无效,回到检测态*/ break; case3: /*持续键延时态*/ if(kc) {if(! (--kstr)) {key=sit+1;/*开始发第一个持续键值*/ kstr=KTC2;/*开始持续键重发定时*/ kst=4;} } elsekst=5;/*按键无效,回到键释放态*/ break; case4: /*持续键重发态*/ if(kc) {if(! (--kstr)) {key=sit+1;/*重发持续键值*/ kstr=KTC2;} } elsekst=5;/*按键无效,回到键释放态*/ break; case5: /*键释放态*/ if(kc)kst=2; elsekst=1;/*键释放,回到检测态*/ }//swicth if(++si==4)si=0;/*调整扫描位置*/ }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 温室 大棚 温度 控制 综述