基于AT89C51单片机的蔬菜大棚温度控制系统的设计(29页).doc
《基于AT89C51单片机的蔬菜大棚温度控制系统的设计(29页).doc》由会员分享,可在线阅读,更多相关《基于AT89C51单片机的蔬菜大棚温度控制系统的设计(29页).doc(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于AT89C51单片机的蔬菜大棚温度控制系统的设计-第 25 页目 录摘 要1ABSTRACT2第1章 绪论31.1 课题研究的背景31.2 课题的研究现状31.3 本文研究的主要内容和思路3第2章 系统方案选择和论证42.1 任务42.2 任务要求42.3 系统基本方案4 2.3.1 各模块电路的方案选择及论证4 2.3.2 系统各模块的最终方案6第3章 系统硬件设计73.1 单片机型号选择73.2 单片机最小系统电路设计113.3 温度采集部分设计123.4 按键电路设计133.5 数码管显示电路设计133.6 温度控制电路设计143.7 报警电路设计15第4章 系统软件设计164.1
2、 主程序流程图164.2 键盘扫描子程序174.3 读取DS18B20温度模块子程序184.4 数据处理子程序18第5章 控制系统的仿真205.1 编程软件简介205.2 仿真软件Proteus介绍205.3 软件结合调试21第6章 结论24参考文献25附录:程序清单27致 谢39摘 要随着大棚技术的发展,温室大棚数量越来越多。对于温室,最重要的因素是大棚内部温度的管理控制。当温度低于适合蔬菜生长的温度时,蔬菜会停止生长甚至出现冻死的情况,因此要将温度控制在适合蔬菜生长的范围之内。以前的温室大棚温度控制是通过人工来控制的,工人依据温度计上测得的温度值来调整温室内的温度。如果仅依靠工人去人工控制
3、,错误就会经常出现而且生产效率也会大大低下。现在,随着农业现代化的普及,温室大棚数量质量的日益提高,以前的温度控制方法在操作中出现了很大的局限性。由于这种局限性的存在,在现在的蔬菜温室大棚中通常都需要有能够自己调节温度高低的设备,以控制温室大棚内部的温度,满足生产所需的温度条件。本设计是以AT89C51单片机为核心进行温度控制系统的设计,设计的主要内容包括对温度检测电路,温度显示电路,温度控制电路等方面的设计。通过Proteus仿真结果的显示,该系统能够模拟出大棚内部的实时温度,并且根据显示温度数据的高低来调整大棚内部温度达到适合蔬菜生长的温度要求。关键词:AT89C51单片机;温室大棚;温度
4、控制ABSTRACT With the development of greenhouse technology, an increasing number of greenhouse, the greenhouse, the most important factor is management and control of the temperature inside the greenhouse.When the temperature is lower than the temperature for the growth of vegetables, vegetables will
5、stop growing or even to freeze to death, so to control the temperature within the range for the growth of vegetables.Before the greenhouse temperature control is controlled by manual, the workers according to the temperature of the thermometer measured value to adjust the temperature in the greenhou
6、se.Ifonlyrely on the workerstocontrolthe artificialerror willoften appear,and the productionefficiency will be greatlylowered.Now, with the popularization of agricultural modernization, increasing the quantity and quality of greenhouse, the previous temperature control method in operating the great
7、limitations.Because of the limitations, in now the vegetable greenhouses usually need to adjust the high and low temperature equipment, to control greenhouse inside temperature and meet the conditions needed for the production of temperature. The design is based on AT89C51 microcontroller as the cor
8、e temperature control system design, the design of the main contents include the temperature detection circuit, temperature display circuit, temperature control circuit design.Through the Proteus simulation results show that the system can simulate the real-time temperature inside the greenhouse, an
9、d according to the level of temperature data to adjust the temperature inside the greenhouse temperature for the growth of vegetables to meet the requirements. Key words: AT89C51 microcontrolle; Greenhouse;Temperature control第1章 绪论1.1 课题的研究背景我国北方,冬季寒冷漫长。蔬菜大棚技术的普及能够更好地满足人民对于生活水平日益提高的需要。冬季蔬菜大棚管理中最重要的一
10、个因素是温度控制。温度控制一般分四个时段进行。上午要促进蔬菜的光合作用增加同化量,温度要控制在25到30度。下午光合作用慢慢下降,要将温度降低5度左右。日落后要将温度下降到15度左右,这样有利于促进蔬菜体内同化物的运转。后半夜需要抑制呼吸消耗,增加蔬菜体内有机物的积累,需将温度下降到10至15度左右1。在蔬菜大棚温度控制系统中应用单片机技术可以对温度起到很好的控制作用,可完成对温室大棚内部温度控制相应方面的需求。1.2 课题的研究现状在现代化农业生产中,以蔬菜大棚为代表的现代农业设施在现代化农业生产中发挥着巨大的作用。在国外,温室控制技术己经趋于完善。而且形成了一定的水准,但是费用相对较贵。控
11、制系统软件也与我国的气候特点不太符合。我国的温室大棚温度控制大都采用人工控制,这种控制方式会有许多弊端。比如温度的测量不准、工作量大以及监控不及时等,这样容易对农业生产带来许多损失,这种温度控制方式测控精度低,人力物力耗费巨大,而且很难达到预期效果。为了实现温度控制准确性,推动我国温室大棚技术的发展,必须大力发展我国农业现代化建设。面对当今这种现状,设计出一种经济实用效率高的蔬菜大棚温度控制系统势在必行。1.3 本文研究的主要内容和思路该系统通过温度传感器测量温度信号,并将该信号传至单片机进行相应的处理。当温度传感器接受的温度信号高于设定的适合蔬菜生长的温度上限值时,单片机通过电机的运转带动排
12、风扇排气,促进大棚内部空气的流动降低大棚内的温度;当温度传感器接受的温度信号低于设定的适合蔬菜生长的温度下限值时,单片机通过控制电热炉加热来达到升高大棚内温度的目的。第2章 系统方案选择和论证2.1 任务设计出一个蔬菜大棚温度控制系统。该系统的温度上下限报警值可以通过人工设定,并能够在外界温度高于设置温度上限时实现排风扇自动运转通风降温,在外界温度低于设置温度下限时实现电热炉自动加热升温,以保持大棚内部的温度始终处于适合蔬菜生长的温度范围内。2.2 任务要求 设计基于AT89C51单片机的蔬菜大棚温度控制系统,用于自动调节大棚内部的温度。大棚内部温度始终控制在10-30之间。2.3 系统基本方
13、案根据任务要求,该系统模块可以划分为以下几个部分:键盘模块,温度测量模块,显示电路模块,报警模块。根据各个模块不同的功能特点,分别做了几种不同的设计方案并且进行了相关方面的论证。2.3.1 各模块电路的方案选择及论证(一)键盘模块方案一:采用4*4矩阵型按键 键盘中当按键的数量较多时。I/O口将被大量占用。为减少I/O口被大量占用,可将按键排列为矩阵样式。矩阵式按键一般在按键数量大于六个时使用。方案二:采用独立式按键 独立式按键接线非常容易,而且易于去理解。没有特定的键盘扫描程序,占用的空间也比较少。由于本设计中只用到了4个按键,属于按键较少的类型,因此本设计中的键盘模块选用独立式按键。(二)
14、温度测量模块方案一: 利用热电阻传感器作为感温元件。热电阻随温度变化而变化,用仪表测量出热电阻的阻值变化,从而得到与电阻值相应的温度值。最常用的是铂电阻传感器,铂电阻在氧化介质中,甚至在高温的条件下其物理,化学性质不变。由铂电阻阻值的变化经小信号变送器XTR101将铂电阻随温度变化的转换为420mA线形变化电路,再将电流信号转化为电压信号,送到A/D转换器,即将模拟信号转换为数字信号。电路结构复杂,误差较大。方案二: 采用数字温度传感器DS18B20。DS18B20为数字式温度传感器,无需其他外加电路,直接输出数字量。可直接与单片机通信,读取测温数据,电路简单。DS18B20 的测温范围-55
15、至125,分辨率最大可达0.0625 。DS18B20 是Dallas 半导体公司的数字化温度传感器,它是一种支持 “一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。一线总线将独特的电源和信号复合在一起,并仅使用一条线,每个芯片都有唯一的编码,支持联网寻址,简单的网络化的温度感知,零功耗等待等特点2。 DS18B20温度传感器与传统的热敏电阻相比较,它能够直接读取测量温度,并且可以通过简单的编程实现9至12位的数字值读数方式。而且从DS18B20读出的信息或写入DS18B20的信息仅需要一根单线读写,因而使用DS18B20可使
16、系统结构更加简单,可靠性更高。DS18B20在分辨率、测温精度、传输距离、转换时间等方面有着很好的表现效果。 所以本设计中选用了DS18B20温度传感器,节省了A/D转换器,同时也节省了I/O输出口,误差小,测量准确。(三)显示电路模块方案一: 使用静态显示,此方法不用另加外界驱动直接与单片机输出口相连,不需要单独的程序来完成显示。但是占用I/O接口多。方案二: 使用动态显示,节省了I/O输出口,但是此方法需加外部驱动以此增加输出电流来更好的驱动数码管显示,电路简单,成本稍高,需要特定的编程来完成动态刷新。 本设计中使用的是动态显示,因为没有太多的输出口来完成静态显示,故选动态显示。(四)报警
17、模块 按照设计要求,当温度低于下限或高于上限时,应具有报警功能。这样就可以用一只蜂鸣器作为三极管 VT1 的集电极负载,当 VT1 导通时,蜂鸣器发出鸣叫声;VT1 截止时,蜂鸣器不发声3。2.3.2 系统各模块的最终方案 根据以上分析,结合器件和设备等因素,确定如下方案: 1.采用AT89C51单片机作为控制器,分别对温度采集、数码管显示、温度设定、升温降温控制。2.温度测量模块采用数字温度传感器DS18B20。此器件经软件设置可以实现高分辨率测量。 3.显示用数码管显示实时温度值。4.通过排风扇和电热炉控制升降温。 系统的基本框图如图1所示。图1 系统原理图CPU(AT89C51)首先写入
18、命令给DS18B20,然后DS18B20开始转换数据,转换后通过AT89C51来处理数据。数据处理后的结果就显示到数码管上。另外由键盘设定温度值送到单片机,单片机通过数据处理发出温度控制信息到继电器。第3章 系统硬件设计 本系统主要由4个大的模块构成,分别是主控模块、传感器模块、数码管显示模块及报警模块,其中主控模块是此次毕业设计的核心模块,主要是指AT89C51芯片,它控制整个系统的运行,利用其各个口分别控制其他模块,使其他模块能够成为一个整体,实现功能的需要;传感器模块用于实验室实时温度的检测,由于DHT11的数字一体性,集成了模数转换等模块。直接接单片机即可;传感器模块用于实验室实时温度
19、的检测,由于DHT11的数字一体性,集成了模数转换等模块。直接接单片机即可;报警模块主要指将蜂鸣器接入单片机电路,通过对时温度的检测,并给定所需要的温度区间,即给定上下限值,实现越限报警。3.1 单片机型号选择 单片机型号的选择是根据设计的内容而定的,并不是什么单片机都可以用。一方面要考虑选用的单片机能否在不需要外扩的情况下就可以满足要实现的功能。比如:单片机的存储器空间的大小、单片机的 I/O 口数等。另一方面还要考虑单片机的性价比,是否容易买到等一些外部因素。 由于实现该系统功能的程序不会超过 4K,而 AT89C51单片机内部有4K的 FlASH 程序存储器和 2K 的数据存储器,因而不
20、需要外扩程序存储器和数据存储器。并且该型号单片机程序下载方便、价格便宜的优点,因而被广泛的应用。AT89C51单片机引脚排列及功能见图 2所示。图2 AT89C51单片机引脚图 由图可知该单片机共有40个引脚,按其功能类别将他们分为三类:1.电源和时钟引脚。如VCC、GND、XTAL1、XTAL2。 2.编程控制引脚。如 RST、PSEN、ALE、 EA/VPP。3.I/O 口引脚。如 P0、P1、P2、P3,4 组 8 位 I/O 口。 管脚说明:VCC:电源接入引脚。GND:接地引脚。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写入1时,将
21、会被定义为高阻输入。P0可以用为外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程中,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高4。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且
22、作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一
23、些特殊功能口,如下所示:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位信号如如引脚。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AT89C51 单片机 蔬菜 大棚 温度 控制系统 设计 29
限制150内