蔬菜大棚温度控制系统设计学年论文_第1页
蔬菜大棚温度控制系统设计学年论文_第2页
蔬菜大棚温度控制系统设计学年论文_第3页
蔬菜大棚温度控制系统设计学年论文_第4页
蔬菜大棚温度控制系统设计学年论文_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、湖南财政经济学院信息管理系学年论文本科学年论文(设计)系别信息管理系专 业电子信息工程届 别2012班 级电子信息工程学生姓名指导教师刘超群职 称副教授蔬菜大棚温度控制系统设计二O一五年 五 月摘  要蔬菜大棚温度自动控制系统由主控制器AT89C51单片机、温度传感器DS1820和LED显示器等构成,实现对蔬菜大棚温度的检测与控制,从而有效提高蔬菜的产量。文中提出了具体设计方案,讨论了蔬菜大棚温度检测与控制的基本原理,进行了可行性论证。由于利用了单片机及数字控制系统的优点,系统的各方面性能得到了显著的提高。用户可通过键盘设置需要报警的上下限值。文中从硬件和软件两方面介绍了温

2、度控制系统,对硬件原理图和程序流程图进行了系统的描述。并用Keil作为软件调试界面,PROTEUS作为硬件仿真界面,实现了系统的总体调试,结果表明该系统能实现温度的自动测量和自动控制功能,可将棚内的温度始终控制在适合蔬菜生长的温度范围内。关键词:温度传感器;单片机;LED显示器 I1. 绪论由于现代农业发展得非常快速,受控农业的研究受到很多的重视,特别是温室工程,已经变成工厂化高效农业的一个重要组成部分。研究温室环境信息进行模拟、分析、预测,研究开发基于作物成长栽培环境的温室环境多因子智能化综合测控系统,研究高效生产的温室环境综合测控模式与配套设施等将是今后主要研究内容。 

3、 本文设计的是一种基于单片机的温度测量控制系统,数字温度传感器通过单总线与单片机连接,系统结构简单,抗干扰能力强,很适合用于蔬菜温室大棚温度控制。2.蔬菜大棚的系统设计 2.1控制系统整体结构      温度传感器的作用是采集大棚内的温度,并进行判断和显示。由于智能温度传感器DS18B20既能对温度进行测量,又能设定所需要控制的温度,并对温度值能够把二进制转换成十进制,所以本设计系统中选用智能温度传感器DS18B20。多个DS 18B20可以并联到3或2根线上,CPU只需一根端口线就能与诸多DS18B20进行通信,而它们只需

4、简单的通信协议就能加以识别,这样就节省了大量的引线和逻辑电路。     本系统中的单片机选用AT89S51做控制器。主要功能是:实现对数字量的采集,并把采集来的数据在LCD液晶显示器上进行显示;可以通过键盘设置参数,可以进行声光报警;可以通过按键来完成手动/自动控制方式的切换;可以通过串行接口把采集到的数据和控制信息传送至上位机,可以接收上位机命令实现参数设置;可以进行输出控制。2.2系统的工作原理 该温度测控系统的工作原理就是进行计算机编程和单片机编程,使智能温度传感器DS18B20正常工作,去检测大棚内实际的温度,并由数字显示电路显示出当时

5、的温度值。如果采集的温度值高于上限报警温度,系统将发出报警,并同时起动制冷设备,把温度降下来,当温度降到一定的程度,即低于上限复位值时,立即关闭制冷设备,使制冷设备停止工作。当采集的温度值低于下限报警温度值时,系统又发出报警,并同时起动制热设备,使大棚内的温度上升,当温度上升到一定的程度,即高于下限复位值时,立即关闭制热设备,使制热设备停止工作,从而使温室大棚的温度值维持在一定的范围内。本温度系统分为两个部分,主机和温度检测与控制部分。原理框图如下图所示。图1原理框图 3.系统各模块的硬件设计 3.1 单片机模块简介  单片机应用电路模块由核心

6、芯片,时钟电路和复位电路组成。该模块的功能是让单片机正常工作。AT89C51单片机通常采用上电自动复位和开关手动复位两种方式。 本设计采用上电复位电路,所谓上电复位,是指单片机只要一上电,便自动地进入复位状态。在通电瞬间,电容C通过电阻R充电,RST端出现正脉冲,用以复位。3.1.1温度采集模块温度控制在计算机与自动化测控领域有很多应用,而传统的测量温度控制通常是热电偶进行测量,为了进行准确的温度测量,必须给热电偶提供一个良好的恒流源,由于热电偶输出的信号是模拟信号,所以信号在输给CPU之前应该先进行A/D转换。首先选用DS18B20智能温度传感器,与传统的测温电阻相比,它能直接读出

7、被测温度,同时可以通过简单的编程实现数字输出,它的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰能力更强。它的工作周期可以分为两个部分,及温度检测和数据处理。3.1.2电路原理图下图是所用51单片机的电路原理图图2电路原理图3.1.3温度传感器电路介绍下图可知温度传感器与单片机如何连接图3单片机与传感器连接图3.2 LED驱动电路      LED显示器是由发光二极管显示字段的显示器件,也可称为数码管。其外形结构如图2-7所示,由图可见它由8个发光二极管(以下简称字段)构成,通过不同的组合来显示出09、A、B、C、D、E、F以

8、及小数点“.”等字符。图4 LED驱动电路图3.3A/D转换接口 A/D转换器的种类繁多、特性各异。在设计数据采集系统、测控系统和智能仪器仪表时,应选择性能合适、性能价格比高的A/D转换器芯片。 本设计选择的A/D转换器芯片为ADC0809。ADC0809是8路8位逐次逼近型A/D转换CMOS器件,在过程控制和机床控制等应用中,能对多路模拟信号进行分时采集和A/D转换,输出数字信号通过三态缓冲器,可直接与微处理器的数据总线相连接。3.3.1 ADC0809芯片ADC0809是采样分辨率为8位的、以逐次逼近原理进行的A/D转换器件。内有一个8通道多路开关以及微处理机兼容的控制

9、逻辑的CMOS组件。它由比较器、逐次逼近器、D/A转换器及控制和定时5部分组成,输出具有TTL三态锁存缓冲器,可以直接连到单片机数据总线上。(1)ADC0809的内部逻辑结构 由图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8 路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。图5 ADC0809的内部结构ADC0809对输入模拟量要求:信号单极性,电压范围是05V,若信号太小,必须进行放大;输入的模拟量在转

10、换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。3.3.2 ADC0809与单片机的接口方式有上面的简述,可以看出,用单片机控制ADC时,可采用查询和中断控制两种方式。查询方式是在单片机把启动信号送到ADC之后,执行别的程序,同时对0809的EOC引脚的状况经行查询,以检查ADC转换是否已经结束,如查询到变换已经结束,则读入转换完毕的数据。中断控制方式是在启动信号送到ADC之后,单片机执行别的程序。0809转换结束并向单片机发出中断请求信号时,单片机响应此中断请求,进入中断服务程序,读入转换数据。中断控制方式效率高所以特别适合于转换时间较长的ADC。ADC0809与单片

11、机的连接电路如下图所示。图6 ADC0809与单片机的连接电路3.3.3 A/D转换电路的工作原理由图可知,ADC0809的A/D转换结果输出端out8-out1与单片机的P0口相连,EOC与P3.3口相连,EOC端是A/D转换完成信号,当转换结束时,EOC发出一个脉冲向单片机提出中断申请,单片机响应中断请求。单片机的WR接ADC0809的START,来操作ADC0809的转换开始,当转换结束后EOC变低电位。在此次的设计中由于有8路信号输入,所以在通道选择有A、B、C三引脚来选择。其多路开关的作用主要是用于信号切换, 如在某一时刻接通某一路检测信号, 而此刻其他路断开, 从而达到信号转换的目

12、的。3.4电源电路在实际的应用中,单片机的电压5V和运放的12V电压都需要从外部的220V交流电源来提供。这就需要把220V的交流电转换成5V和12V的直流电。在这个设计中,采用了简单的实用的变压器,根据理想变压器原副边匝数比公式,则可通过计算来调节参数达到转换为低电压所谓目的。低压的交流信号在通过整流稳压等操作实现了交流向直流转换的要求了。其电路图如图所示。图7电源电路4.软件设计4.1程序流程图及分析4.1.1主程序本系统的工作流程是,操作人员可以从键盘上输入要设定的温度值。当此温度值与当前温度不同时,单片机控制系统采取调节的动作。当设定温度大于测定温度时,则使加热器工作;当设定温度小于测

13、定温度时,则开启降温风扇。此程序流程包括4个部分。第一部分是主程序,它描述的是程序的总体结构;第二部分是定时器T0的描述,它的功能是将实际温度和设定的温度比较,再作出相应的动作;第三部分是键盘扫描部分;第四部分是显示部分,用于显示温度值。图8主程序流程图关键代码如下void sw_detect() interrupt 0unsigned char temp,i;IE0 = 0;sw = 0;P2 &= 0x8f;for(i = 0;i < 5;i+);P2 |= 0x70;sw = 1;if(sw = 0)temp = (P2 & 0x70);while(P3 &

14、 0x04 = 0)LED_display();if(temp)sw_temp0 = temp >> 4;switch(sw_temp0) case 6:sw_temp0 = max;break; case 5:sw_temp0 = min;break; case 3:sw_temp0 = mode;break; default:sw_temp0 = sw_temp0; if(sw_temp0 != 0)sw_flag = 1;/有新的按键中断发生,置标志位 LED_display();4.1.2A/D转换的程序首先用指令选择0809的一个模拟输入通道,当执行开启A/D转换指令时,

15、单片机的/WR信号有效,从而产生一个启动信号,给0809的START引脚送入脉冲,开始对选通信号进行转换。当转换结束后,0809发出转换结束EOC(高电平)信号,该信号可作为向单片机发出中断请求信号,当执行A/D转换指令时,单片机发出读控制/RD信号,OE端有高电平,且把经过0809转换完毕的数字量读到A累加器中。中断服务程序流程图如图所示。图9 A/D转换的程序流程图关键代码如下void main()initdac0809();startadc();while(1)while(EOC=0)/*ADC0809正常转换*/OE=1;/*转换完毕,打开输出*/ ad_data-i=P0/*从P0读

16、取结果*/startadc();/*开始第二次AD转换*/OE=0;/*禁止输出*/5.仿真与分析运行Proteus的ISIS,进入仿真软件的主界面。通过左侧的工具栏区的P(从库中选择元件)命令,在Pick devices窗口中选择系统所需元器件,还可以选择元件的类别,生产厂家等。本设计所需主要元器件有:AT89C51芯片,ADC0808芯片,一个八位七段数码显示器,可变电阻,电阻,电容,按键,7447芯片,74HC138芯片,发光二极管,74HC164芯片等。选择元器件后连接的电路图如图所示。图10 仿真图15.1PROTEUS仿真结果单击仿真运行结束按钮,仿真结束。仿真电路中有三个按键,一

17、个MODE键,一个加一键,一个减一键。无论是设置温度范围,还是查看哪一路的温度,都要先按下MODE键。按一下MODE键,进入设置高报警温度点模式,在按下MODE键,进入设置低报警温度点模式,按第三下时,进入通道选择模式。假如设定最低温度为5,最高温度为30,通过调节可调电阻的阻值,当ADC0808芯片的引脚的电压在0.25V,1.5V范围内,电路工作在正常范围内,只有数码管工作,蜂鸣器不响,74HC164控制的发光二极管不亮,报警点的二极管也不亮,其仿真电路如图10所示;当超出这个电压范围,监控电路就会启动,串口控制的二极管,蜂鸣器都会工作,其仿真电路如图11所示;当设置的最高温度时,高报警点

18、的二极管会发光,即可以按加一或减一键来设置,其仿真电路如图12所示;当要设置最低温度时,低报警点的二极管会亮,其仿真电路如图13所示。(a)图10正常工作状态仿真图(b)图11 越限报警仿真电路图(c) 图12 设置高报警点(d) 图13 设置低报警点6.结 论 早在选题之前,我就利用平时的时间看DS18B20芯片资料,当初认为DS18B20延时要很精确,所以我必须写出精确的延时程序。但是C语言延时是不好精确地,为了写出那种很精确的延时程序,在网上找了很多资料,也学会了利用反汇编来计算延时,还有可以利用keil这个软件进行一些调试,也可测出延时时间。延时解决后,以为一切都会很顺利,但往往看起来容易的事情总有想不到的问题。因为没有经验,很多细节上处理的不是很好。所以自己只有不断地去学习别人怎么处理,然后结合自身来处理细节上的问题。利用了几天的时间,终于是在PROTEUS上仿真成功了。但我的设计还是存在一些问题,比如反映时间不是很快,这些问题是值得去注意的。再者,在Proteus上仿真通过,而没有做出实物,那也永远只是理论水平。通过这次课程设计,让我对于单片机的项目有了一个认知。我更近一步看清了前方的路。很多东西是接下来必须去做的。总之,要学的还很多,只有不断地学习,才能轻松的处理事情。有句话说的很对“只有很努力,才能看起来毫不费力”。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论