系统简介
在传统的大棚植物培育技术里面,由于自然灾害等不可避免的因素,要想有一个良好的植物环境就显得非常的
重要。在大棚种植初期,因为种种技术的不发达,所以能够采集到的温度和湿度及光照强度的数据就会不够准确,
且耗时耗能耗人力。时间长了将会影响到植物的生产量,从而对经济造成重大的损失。
为了改善技术,本设计采用STC89C52单片机作为整个系统的核心,用新型DHT11数字式的温湿度传感器能够更精
确的收集与环境相关的数值,能够将测得的数据在1602液晶显示器上面显示出来,便于能够方便且快速的确定当前
的环境的情况变化等。使用者能够根据植株生长的环境要求来设定温湿度范围,且测出的数据不在设置的范围内的
话,那么系统的报警系统将会启动,进而提示使用者,通过4路继电器连接加热片,除湿风扇,降温风扇,加湿器进
行调节。此外,用光敏电阻来对当前的光照强度进行检测,光照也是植物生长的必要因素,提供光敏电阻进行AD模
数转换获取当前光照强度,根据光照强度控制LED进行补光。待所有的环境数据都能满足的要求时,这些继电器将会
停止工作。此设计完全替代了传统的植物培育方法,既节省了人力,能源,降低了成本。且操作方便简单适用于各
类人员使用,可以在大棚种植方向广泛运用。
关键词:STC89C52单片机;光敏电阻;智能大棚;恒温系统;
第1章 概述
1.1行业背景
中国从古至今都是一个注重农业生产的大国,如今的生活中,每家每户的餐桌上都会有着蔬菜的身影。然而蔬
菜的种植也是一项技术工程。从播种到蔬菜的生长,环境是重要的影响因素。只有在合适的环境当中,蔬菜才能茁
壮成长起来。然而由于地理环境的影响,培育蔬菜确实一件难事。一直气象状况错综复杂人们很难控制,最显而易
见的就是在国家的北方,因为处于海口位置,附近湿度较大会抑制植物的吸水能力,影响植物的生长,导致植物烂
根,加重病害。光照强度也是植物生长的必要环境之一,良好的光照能够促进植物生长,进行光和作用,如果处于
长期阴雨天气下缺少光照,同样也会对植物的生长造成不利。然而人力的有限,想要随时随地的控制植物的生长环
境显得尤为困难,此时现代化智能大棚恒温箱控制系统就可以有效的解决这一问题,能够随时监测并控制植物生长
最合适的温度与湿度,再必要的时刻还能够检测光照强度并及时补光。这样一套完整的设施,能够很好的培养植
物,满足人们生产的需求。
1.2课题意义
随着世界科技的不断进步,越来越多的需要人类自行操作控制的设备已经淡出了的生活当中。在许多行业已经
不再需要人为控制了,这样节省了大量的人力资源,能够让人们将注意力更集中再别的方向。互联网时代的发展,
共同富裕的推进,人们有着更高的物质需求,更加注重生活品质。现在国家对于蔬菜恒温系统作为目标的厂家不尽
1.3国内外研究发展成果
1.3.1国外研究发展成果
自20世纪60年代初以来,人们对使用计算机的兴趣开始大大加深。这种趋势一直持续到80年代中期,此时将计
算机技术应用在温室大棚控制的台数在日本已现存1000多台,而荷兰此时已经有了5000多台[1]。他们使用模拟仪
器、现场信息收集和相关模拟仪器的培训、记录和监测相结合。温室中的许多环境因素可以根据作物的要求和特点
来控制。在美国和荷兰,温度控制技术被用来根据生产和季节要求调节花卉、水果和蔬菜的开花和成熟阶段。目前
的研究正朝着完全自动化和无人操作的方向发展。此外,关于自动化温室的最佳环境管理的研究已经在进行中。在
日本,也正在进行开发使用传感器和计算机的远程多因素环境控制设备的工作。
1.3.2 国内研究发展成果
中国从汉代以来开始学会使用温室来种植洋葱,韭菜,大葱等蔬菜。大规模的温室园艺在1970年代末和1980年
代初开始形成。经过近20年的发展,中国温室大棚生产面积已经站在名列前茅,稳居第一。大棚产品的生产、实际
应用和技术研究的推广经过长期的发展,逐步形成了各式各样的优秀大棚产品,良好的产业规模已经慢慢形成。国
内对温室气体控制技术的研究起步较晚。农业计算机在1970年代中期开始使用,在1980年代早期,它们被用于管理
和控制温室。从1980年以后,中国在此方面的技术人员在采用发达国家的先进温室建设技术,这种技术主要是通过
调节温室内温度、湿度和二氧化碳浓度等单一环境因素的方式,展示了调控单一因素的最有限方法,以保证所栽培的
作物最佳环境状况。这几年来,由于农业国产化意识的增强,以及人们对国产化工作科学技术不断获得发展的需要,也
加速了引入国外大规模现代化温室设备和先进集成控制工艺的脚步。把这些现代化温室设备引入我国,无疑地对中国
的温室计算机技术的应用与发展,产生了十分积极的促进意义。这就意味着,我国的温室计算机技术应用总体上,正在
由消化和吸收、发展单一应用技术的初级阶段,向应用性强、大规模应用阶段和转型发展阶段前进。但是,事实总是
差强人意的。从技术上,单一参单芯片单电路控制系统,并没有真正意义上的多参集成控制系统[2],还有很大差距,
仍需深入探索。
1.4 课题研究的内容及能达到的技术目标
本课题涉及对大棚恒温器的智能控制系统的研究,其最重要的功能是自动测量大棚所在的环境。将设备启动并
将其进行初始化调试,调试完成后并由DHT11来进行检测并实时记录好屋内的温度和湿度值数据,并将快速传输至
STC89C52单片机元件中来处理分析。分析完成后,处理器开始运作初步判断一开始设定的数值,在这两个比较当中
来进一步确定此时的数据是否符合要求,然后反馈报警或不报警。然后继续确定发生异常的原因并能够及时处理,
如果进行及时解决,警报就会自动取消。整体试验下能够从LCD1602液晶显示器中看到室内当前的温湿度及光照强度
的数据,在所设定的温湿度和光照强度范围内可以正常工作运行。如果当前的温湿度不在设置要求的范围内的话,
则蜂鸣器将会及时报警提醒,紧接着四个继电器上的LED灯与之组成声光报警电路。具体的状况如下几点。
(1)如果实际温度低于设定温度,继电器加热片启动并加热。
(2)当前温度在设置的温度以上继电器闭合开启风扇并进行降温。
(3)当实际湿度低于下限时。继电器加湿器开启并进行加湿。
(4)湿度高于上限继电器闭合开启风扇进行除湿。
(5)光照强度不满足要求时及时打开LED灯进行补光。
第2章 课题总体方案设计
2.1 课题设计要求
首先要对单片机最小系统搭建完成进行初始化测试后,温湿度传感器能够实时测量空气中的温度,湿度范围,
然后通过液晶显示器来观测。在测量数据中可以通过按键来进行设置植株所需要的环境要求,可以设置最低与最高
的控制范围在0~99之间。选定一个合适的范围。不满足当前的设定时,声光报警系统能够蜂鸣报警,LED灯光将会启
动,继电器控制与之对应的设备来进行改善环境。同样在ADC0832完成初始化后可以采集当前的光照强度,有需要的
条件下可以打开LED灯进行补光。
2.2 课题的元器件选择
在各种微型控制器中,C51系列的成本很低且运行相对比较稳定、容易进行开发,所以使用的最为广泛。但是在
进行编写程序的时候都要拔掉电源线,将其停止运行。这不仅令人厌烦,次数多得话还会对芯片的寿命造成一定的
影响。所以对比S系列的STC89C52单片机而言,上述缺点一般都可将之减少或忽略,且具有可以高速运转,功率消耗较小以及抗干扰能力强等优势,更主要的它比STC89C51的储存器要大上许多,所以可以开发使用更大的程序,以便以
后进行功能拓展提供了便利。在数据采集模块上,为了使整个集成电路结构比较精简,避免了复杂的外围电路,A/D切
换电路,可以采用集成式的数字式温湿度传感器DHT11。因为一样的道理,显示器可以选用LED数码显示管和LCD液晶显
示器来显示温湿度和设定温湿度,虽然LED数码显示管比较简单,但是在观察数据得时候就不是那么轻松了。而1602
液晶屏幕上能够显示双行文字,同样也达到了设计的显示标准。
2.3 课题的总体控制方案
对于本课题的研究设计,使用的单片机是STC89C52型。在这个系统中,单片机作为整个系统是用来进行接收和
传输数据的总体核心控制部分。而对于空气中湿度和温度的检测,则使用一个DHT11数字温度和湿度传感器来获取数
据,再将得到的数据输送给单片机,其中包含LED1602液晶显示器显示当前温湿度及光照强度,并根据得出的数据进
而进行比较来控制运行中的系统,不满足要求时报警电路将会启动报警[3]。三极管放大电流来驱动继电器进行调节
环境的温湿度,在ADC0832进行模数后传输给单片机来获取当前光照强度,也不能不满足要求时则启动LED指示灯进
行照明。总体程序框图如下图2-1所示。
图2-1 总体程序框图
第3章 课题的硬件设计
3.1单片机模块
单芯片化微型电脑,就是单纯地把CPU(计算、控制)、RAM(数据存储-内存)、ROM(程序存储)、输入和输出设备
(串行、并行等)和中断系统结合在一个芯片上的装置[4],而这几个晶片最后都统统装配到同一种的集成电路主板上,
人们就称为PC主板,进而可以加工为人们所熟悉的计算机。所以单片机只不过仅仅把其中全部的元件集成到了一个晶
片上加以操作罢了
3.1.1单片机的种类
对于能够将Intel 8031的指令进行处理分析的单片机在这里都可以统一称之为51单片机。其中8031单片机出现
的最早。
现在采用的单片机主要有STM32型和ACR型以及51单片机型。其中STM32型和ACR型单片机相比较51单片机而言要
高级许多,STM32型单片机在程序方面基本上都是模块化的东西,它的接口比其它类型的单片机都要简单很多,不仅
如此自身携带的功能也要比普通型的51单片机要多,所以在这些优点下同样它需要的外围元件也就多了起来[5],这
就要求对电子设备要熟悉使用[4。不仅如此STM32 的运算速度也要比51单片机高上几十倍。ACR型单片机系列比较全
面,适用于现在的很多场所,像是医疗设备,电子手表,GPS等等。比51单片机也要高级,运行速度同样很快,且性
价比很高。本课题采用51单片机即可,价格便宜,新手使用的话上手比较快,基本用的最多的就是此单片机。但是
外表简陋,不像上述两种有着快速的数据处理能力。
3.1.2 STC89C52 主要功能概述
STC89C52作为本文的核心器件,有着不用较高电压就能运作的特性。可以说它是传统51单片机的升级版,它的
FLash存储器中有着高达8K的程序存储字节,还含有512字节的数据存储。操作方便,使用灵活。可以直接使用串口
进行下载需要的东西。
7
8
3.1.3 STC89C52引脚功能
总共有着40个引脚,各引脚功能都不相同,引脚功能如下表3-1所示。
表3-1 引脚说明
端口引脚 脚的位置 注 释
VCC 40脚 接+5V电源正端
VSS 20脚 接+5V电源地端
XTAL1 19脚 接外部晶振的一个引脚
XTAL2 18脚 接外部晶振的另一个引脚
RESET 9脚 复位信号输入端
ALE 30脚 地址锁存允许/编程脉冲输入
PSEN 29脚 外部程序存储器读选通信号
EA 31脚 访问外部存储器允许
RST 9脚 复位输入
P0.0~P0.7 39~32脚 8位漏极开关型双向I/O端口
P1.0~P1.7 1~8脚 带上拉电阻的8位准双向I/O端口
P2.0~P2.7 21~28脚 带上拉电阻的8位准双向I/O端口
P3.0~P3.7 10~17脚 带上拉电阻的8位多功能双向端口
3.2 单片机最小系统
能够让单片机将其最基础的工作环境进行调节的局部系统称它为单片机的最小工作系统。可以使得程序进行运
转,工作环境进行有保障,是单片机正常运作并执行的必要条件,这些都是不可或缺的组成部分。即电源,单片
机,复位电路,震荡电路这几个部分共同组成了的单片机最小系统。
3.2.1 电源电路
采用供电电压为5V的USB接口,譬如移动电源,手机充电器可以直接供电来让单片机工作。其中当没有按下开关
后,引脚1和引脚5会被导通,在按下开关后引脚1和引脚3将会被导通,这样的话引脚3将会输出一个VCC,而GND则是
输出的接地端。在整个电路图中所有的VCC将会连接到电源电路VCC端,GND则与之对应。图中加上一个1000UF的电解
电容,其实也可以加在VCC接地上面或者是继电器上也可以。其目的是为了在使用继电器的时候,由于是一个需要大
电流的工作器件,当继电器闭合的时候,它会拉低整个电路的供电电流,这样会使液晶显示或单片机出现卡死的情
况。所以加上电解电容目的是为了充能,就相当于是一个蓄水池的作用,当需要大电流供电的时候,它起到一个可
以输出电流的作用。整体部分简介如下表3-2表所示。
表3-2 图示字符含义
字符 含义
Switch 电源开关
Pow 电源输入端
GND 接地
VCC 直流电源5V
C4 1000μF电解电容
电路示意图如下图3-1 所示。
图3-1 单片机电源电路
3.2.2 振荡电路
本文单片机振荡电路是由两个陶瓷电容和一个晶振来共同作用,采用两个陶瓷电容是用来进行滤波的,排除在
运行时候可能产生的干扰信号,一般都没15至35PF之间,从图中可以看出采用的是22PF。而晶振的作用是为了给单
片机提供特殊的时钟周期[6],让单片机可以有序进行工作。晶振无论是11.0592M还是12M,他们的区别并不是很
大,通常都能够选取。如果采用了11.0592M则是为了可以更好的来获取准确的串口频率。具体电路图如下图3-2所
示。
图3-2 单片机振荡电路
3.2.3 复位电路
复位是为了防止程序出现错误后卡死的情况发生,复位方式一般采用的是上电复位或者按键复位两种方式。而
在这里采用上电复位就可以达成的要求,且操作简单(仅仅需要重新上一次电就能完成复位了)。但是只要在高电
平的情况下复位信号才能有所显现[7],一般有效时间统一定义为二十四个振荡周期(即二个机器周期)以上才实现。
一般情况下配置的电容越大越好,较大的电容可以使系统性质更加稳定,常用10-100uF,电阻常用10-47K,并不是
说要不是说要固定使用的。对于为什么是电容典型值是10uF,电阻典型值是10K,对此首先要弄清楚清楚单片机上电至
正常工作时要有一个时间过程,这个时间在单片机电路设计上就会有这样一个要求存在,规定要求需要延时2个机器周
期以上的时间才能让单片机进入工作状态[8],且进入工作前要保证单片机各寄存器为初始运行状态,就书上介绍的复
位状态而言,如何保证上电延时2个机器周期才进入工作状态呢?就是靠复位引脚,电源接上一个个电容和一个电阻组
成,在复位引脚之间,由于电容的两端电压不能发生突变,所以在电容未充满之前电容可以可视它为导线,这样电源就
好比能够直接接入复位引脚RST(高电平起复位作用,单片机不工作)。复位电路图如3-3所示。
图3-3 单片机复位电路
3.3 传感器模块
3.3.1 DHT11温湿度传感器简介
本设计采用的DHT11是以数字信号输出为主且使用较为广泛的温湿度复合传感器。在对于湿度范围能达到20%至
80%之间,温度则在0℃至50℃之间。现有的市面范围内都可以购买的到。相比较传统的DS1802传感器,它所占用的面积很小,且精准度也高,速度较快,尤其抗干扰能力也非常的出众。通常在锅炉检测,家庭温度检测等区域都可
以使用它。如下图3-4所示。
图3-4 DHT11温湿度传感器
从图中可以看出它的引脚为4个并列的单排引脚封装,使用起来比较方便。具体引脚功能如下表3-3所示。
表3-3 DHT11 引脚说明
引脚号 名称 注释
1 VDD 供电电压为3~5.5V,DC
2 DATA 串行数据,单总线
3 NC 空脚,悬浮
4 GND 接地端,电源负极
(3)电气特性如下表3-4所示。
表3-4 DHT11的电气特性
参数 条件 Min typ max 单位
供电 DC 3 5 5.5 V
供电电流
测量 0.5 2.5 mA
平均 0.2 1 mA
待机 100 150 uA
采样周期 秒 1 次
(4)时序描述:
每当使用者开启设备时,用户端则会则会开始发起一次启动信号,紧接着DHT11从低损耗模式开始形成快速通
道,进而可以高速运转,直到主机开始停新后,不发信号。此时DHT11对它作出回应,从而传输40bit的数据信息,并对
信号进行一次采集,而用户可有选择性的来读取一小部分数据。在这个通讯模式下,一般的程序要求是DHT11一旦收到
信号就开始收集数据,如果没有收到初始触发的信号,那么DHT11就不会主动收集环境数据。当所有步骤都完成的时
候,将数据采集完成后系统又会紧接着转换到速模式下。
3.3.2 DHT11传感器模块电路设计
DHT11是一个数字型温湿度传感器,它会将系统内得到的信号传输给单片机,而且仅仅靠一根线就可以完成数据
得读取分析。通常定义一个字节为8位,两个字节那么就为16位。因此一位一位的进行读取,进而分析当前的温度和
湿度的情况。这里还加上了一个10K的上拉电阻(也可以为5K),因为普通单片机上拉能力不够强,当前的线路也比
较长的情况下,那么就会有很大的寄生电容,从而变成RC充放电。当慢到一定程度时得到数据就会不够准确,而上
拉电阻当没有数据的时候,该信号线被拉成高电平。
3.4显示模块
3.4.1 LCD1602液晶显示器概述
1602字符型液晶是一种特殊的点阵液晶型显示模块,它能够显出出字母,符号和数字。因为可以显示出两行十
六个字符,比较容易记住,所以称它为1602,也就是本系统采用的 LCD1602 模块。
液晶显示器它的体积比较小,消耗的功率低,携带使用方便,能够大部分显示需要的数据,在很多领域现在都
有所涉及。
3.4.3 LCD1602引脚说明
LCD1602分为14条引脚或15条引脚两种接口方式,这两种的不同之处在于其中16条引脚多出了两条背光电源线
VCC(15脚)和地线GND(16 脚),从而能够显示背光亮度。各引脚定义如表 3-5 所示。
表3-5 LCD1602 引脚功能定义
引脚号 引脚名称 引脚功能
1 GND 电源接地端
2 VCC 5V电源正极
3 VL 调节显示器对比度
4 RS 寄存器选择端
5 RW 读写信号线
6 E 使能端口
7~14 D0~D7 双向数据端口
15 BL+ 背光正极
16 BL- 背光负极
3.4.2 LCD1602模块电路图
电源开关通路的情况下,加上一个液晶显示器来显示当前的温湿度信息,所以在这里采用的就是所谓的LCD1602
了,其中LCD称它为液晶,而16代表一行里面一共可以显示出16个字符,02则代表可以显示两行的数据和参数。然而
需要注意的是1602的D0接口到D7是连接上单片机的,并进行数据传输。V0端口是用来调节液晶显示器的背光亮度
的,在不同的光照情况下,显示的亮度也是不一样的,所以在旁边装设了一个10K的滑动变阻器,有了滑动变阻器之
后,当发现亮度不满足要求时,这时就可以调节滑动变阻器的数值大小,从而改变电压的大小,就能够起到校准当
前亮度范围的作用,使得可以清楚的观看到显示器上面显示的数据了。
3.5 报警电路
因为连接单片机的端口所释放出来的电流非常的小。所以在蜂鸣器报警电路中需要加上一个放大电流器才可以
驱动的蜂鸣器报警。采用的是PNP8550型号,就是所谓的三极管放大电流,比如说可以将几十毫安的电流让它放大为
0.5A左右,这样就可以完全驱动蜂鸣器,并在温湿度不在范围内时可以让它进行报警提示。而电路中加上1K的电阻
则是来用来限流的。不加电阻的话,这个三极管就很容易被直接导通,只有将低电平信号传给蜂鸣器才能让它正常
工作起来。
3.6 按键电路
最基本的问题就是如何对数据进行设置了,本课题我么需要三个设置按键。第一个设置为设置按键,来调整需
要调整的数据,第二个第三个分别是用来调整加或减数据的按键,来调整数据的大小。那么单片机是如何知道它对
应的设置按键呢。可以打个比方。比如说当按下K1的按键时候单片机的P1.0端口会接收到一个低电平信号,了解到
按键只会输出两种电平特性,一种是高电平,那么另外一种则是高电平了。即松开为高,按下为低。一直等到单片
机的P1.0端口接收到低电平的时候,就能得出按键已经被按下的结论。通常按键是一个弹性元器件,所以无论是在
按下按键还是松开按键的的时候由于它本身的特性会有一个抖动期,这里解决方法是在程序中加上了一个延时函数
来解决这一问题称为延时去抖。一系列步骤完成好后那么随后系统就可以开始执行写好的程序,进一步实现它对应
的功能。
3.7 继电器电路
在环境的温度和湿度及光照强度不在设定的范围内时能够做出对应的补救方法,本文采用四个继电器外加一个LED灯补光设施。其中蜂鸣器的作用在于提醒监护人员环境出现异常,观察四个LED灯的打开或者关闭情况,能够一
眼看出对应的问题出现在哪里。
无论是风扇,加热片还是加湿器,要想使它们正常工作的话,同样需要采用PNP8550三极管来进行放大电流作
用。继电器大家就理解为一个开光控制通断,当需要继电器正常运行工作的时候单片机会给PNP8550三极管输出一个
低电平信号,那么对于风扇上面的三极管则被导通,从而PNP8550三极管显示低电平继电器就会进行闭合,当U11变
成一个外接设备的时候,它就会自动关闭。在图中,为了便于观察继电器的关闭,还增加了二极管的指示灯。在继
电器关闭时,LED灯会发光,如图所示,为什么要加二极管,因为在关断的一刹那,继电器会有逆流,再加上二极
管,避免三极管被反电流击穿。在LED指示灯上还设置了一个1K的电阻,这是为了防止LED灯在通过大电流情况下长
时间工作而被烧坏。
3.8 光敏采集电路
光敏采集通过ADC803来实现并进行模数转换功能,模数转换功能通俗来说就是把模拟量进行转换成数字量,可
以用肉眼看见的数据称它为数字量,而模拟量,比如说电压所发出的信号不能观察的到,所以就称它为模拟量。而
这里光敏采集电路中,光敏电阻根据当前的光照强度不一样从而测出的输出电阻也就不一样,进而CH0端口会把根据
当前的电阻值不同从而会改变电压值[9]。则采集的电压值一会不一样。而电压值不一样,根据不同的电压变比变化
就可以知道当前的光照采集的强度。在这里举个例子:假设当前测出的电压值为5V,那么对应的光照强度就是50%。
因为ADC0832的特性是2的8次方份,把0至5V分为对应的256份,而这就是采集的精度标准。从而进行换算,并以此类
推。其中10K的滑动电阻器是可以用来进行校准调节的。所以这里使用ADC0832作为光敏采集的模数转换器件。
一般ADC0832有2个通道,功耗较低,且有着8位分辨率,最高可达到256级[10]。所以在计算得到的值是多少,然
后就在LCD1602上来显示就可以了。这个芯片具有体积小、兼容性非常高、价格比较便宜一般为20元左右、使用年限
也比较久远。一般情况下芯片于单片机的接口,在写程序的时候可以根据此芯片的时序图来进行代码的编写。如果是
100%说明此次ADC0832引脚输出的电压是5V。
ADC0832接口说明如下表3-6所示。
表3-6 接口说明
芯片接口 说明
14
CS 片选使能,低电平芯片使能
CHO 模拟输入通道0
CH1 模拟输入通道1
GND 芯片参考接地0电位
DI 数据信号输入
DO 数据信号输出
CLK 芯片时钟输入
VCC 电源输入
3.9 完整硬件电路图
各个硬件部分接口端与单片机对应的引脚将要相连接起来,整个系统的完整硬件电路图如下图3-11所示。
图3-11 完整硬件电路图
第4章 系统软件设计
4.1 课题主程序设计
现在一般都使用Keil软件来进行程序的编写,使用方便简单。且能够使用简单的C语言来对单片机进行开发。
在进行编写程序之前,还要对电路方面还需要有着良好的基础知识,这会对在编写程序的时候能够按照规范来
进行。不仅如此,还需要对硬件各方面的特性要有所了解,之后在根据它独有的运行方式来画出对应的流程图。
在本文当中,首先要对各硬件和程序进行初始化,只有在进行初始化之后才能确定它们是否能够正常的运转。之后LCD1602显示子程序,DHT11温湿度采集子程序,光照采集子程序和单片机来共同组成对重要数据得检测与分
析。首先由温室度采集和光照采集程序来进行对当前环境的检测,随后再将其传输到的单片机上面,待对数据分析
完成后,将得到的数据显示在液晶屏幕上,便于观察。并根据需要来进行下一步的操作。如果一切都在正常范围内
的话,那么就不会出现蜂鸣器开始报警提醒了。如果环境异常,那么就需要系统中的自动控制模块来进行[11]。首
先按键电路来设置需要植物生长的环境相对应的温湿度和光照强度,当检测得到的数据范围不在设置的范围内的
话,声光报警系统将会启动,同时则驱动继电器进行工作调节环境,直到检测数据在的要求范围内了,那么继电器
将会自动关闭。光照低的话将会自动进行补光。主程序流程图如下4-1所示。
图4-1 主程序流程图
4.2 LCD1602 显示子程序
因为在这里只需要得出温度和湿度的数据,只要能够显示一行或者两行即可。所以采用1602来显示数据。在前
文已经介绍过1602一个有16个引脚,其中RS、RW的值控制单片机对它的读写,如下表4-1所示。
表4-1 LCD工作状态介绍
RS RW 操作命令
16
0 0 将指令寄存器进行写入
0 1 读取指令状态
1 0 将数据寄存器进行写入命令
1 1 在数据寄存器中读取数据
要使LCD能够正常运行,先要对它进行初始化,然后每次完成一个字符,光标就会向右移动。液晶显示器一个接
一个地显示数据,但定位只在开始时进行一次,每显示一个字符,光标就自动移动到下一个位置。1602流程图如下
面4-2所示。
图4-2 LCD1602程序流程图
4.3 DHT11 温湿度采集子程序
温湿度采集程序首先要DHT11温湿度传感器进行初始化,应答脉冲,扫描,数据转换,读操作等步骤,并且它
不会对数据进行自动收集分析,只有在当有信号输出到它时,它才能够开始进行采集。并将信息传送到单片机上,
随后并在显示器上面显示数据得数值。具体流程图如下图4-3所示。
图4-3 温湿度传感器程序流程图
4.4 光照采集子程序
当光敏采集到当前数据时,将模拟量传送至ADC0832进行处理,ADC0832在进行初始化之后,由于ADC0832具有两
个信道,因此需要进行选择。在这一次的设计中,选取了0的数据信道,之后并进行了读出,通常每字节为8位,需
要进行一位一位的读取,将当前读出的信息转化为数字,并将其转化为目前的电压量。
4.5 蜂鸣器报警子程序
一系列调试完成后,现实环境数据超出了我们设定范围则满足报警条件,单片机将会输出低电平给蜂鸣器开始
报警。
4.6 按键电路子程序
按键电路输入设置程序的目的就是可以通过对K1,K2,K3按键按下的不同次数进而来实现对要求的光照强度以
及温湿度上限值和下限值的确定。从开始并确定是否需要按下按键,在确定好设置的数值,当不满足设定要求值得
时候,那么蜂鸣器将会报警并且继电器开始动作。
第5章 系统测试
5.1 软件测试
本文中的大部分程序都是采用Keil软件来进行编程的,在进行软件调试之前需要用到Proteus仿真来绘画出的仿
真电路图(在5.3小节作出概述)。
根据课题的的要求在Keil 软件里上编写出相应完整的程序,在确定程序的语法和格式都正确的情况下才能够继
续对源程序进行编译。在这个过程当中由于对于C语言并不是特别的熟悉,需要查阅资料来和请教同学老师来学习。
单对于语法上面的错误就犯了很多次,以至于程序出现错误不能够正常的运行起来。下图5-1是部分Keil 程序界面
的截图。
图5-1 Keil源程序界面
5.2 硬件测试
在硬件测试中,目的是为了能够让软件和硬件直接能够相互配合起来,以至于能够完整的运行。在电路图连接
方面难免会有地方出现错误,比如短路,虚焊开路的情况时有发生,这个时候可以利用万用表来进行测试电压的信
号,待测试完成且没有问题后才可以接上电源进行下一步工作,否则将会烧坏元件。图3-11为硬件电路图。
5.3 仿真测试
用Keil 编写的C源程序被编译成机器语言,并被发送到Proteus完成系统模拟[12]。启动Proteus软件,打开电
路图,将从Keil C51软件中编译的程序文件导入微控制器中。仿真结果显示,原始设计要求可以得到满足,温度和
湿度指标都在要求范围内。仿真结果显示如下图5-3。
图5-3 电路仿真图
第6章 实物测试
在一系列测试当中,简易的51单片机恒温控制系统的基本功能都能够实现。将51单片机连接上电源后如图6-1所
示。
图6-1 单片机整体实物图
从图中的显示器显示数据当中,可以看到当前的温度Tem为22摄氏度,空气中的湿度Hum为44%,光照强度Light
为35%。为了验证实物的是否能正常运作,下面将对实物进行相应的操作。
(1)按下按键设置温度的范围在15~20℃,此时的室内的最高温度超过设置的温度上限,蜂鸣器开始报警,指
示灯亮起,与此同时继电器操作风扇开始降温。
(2)按下按键设置温度的范围在25~30℃,此时室内的温度低于设置温度的最低下限,与前面一样,蜂鸣器响
起,指示灯亮起,加热片启动,此时能明显感觉加热片的温度。示。
(3)按下按键设置湿度范围在45~50%之间,此时室内的湿度达不到要求时,加湿器将会启动,如图6-4所示。
图6-4加湿器启动
(4)当湿度高于设置的范围内,除湿风扇启动,达到除湿的效果,如下图6-5所示。
图6-5 除湿风扇启动
(5)设置按键使得光照强度在40%范围中,如图6-6所示。
图6-6 设置光照强度
由前文可知当前的光照强度满足不了设置的要求,所以LED灯打开开始补光,如图6-9所示。
图6-9 LED灯开启
第7章 总结与展望
7.1 总结
写到这里论文已经基本完成了,从一开始确定题目到后面查阅资料,在老师的指导下一步一个脚印的完成相应
的任务工作。从初始的知识了解学习,还有查阅资料再到后面的实物器件焊接都花费了大量的时间。特别是在电路
仿真调试阶段,一开始对于电路图不是并能够熟悉的使用一些软件来进行绘制电路图和编辑程序。在这几个月的学
习当中,加深了我对单片机的系统性掌握。在这一系列的学习下,才能够完成课题的实物制造。本文介绍的是基于
单片机的恒温控制系统,可以及时测出校准环境的状况。在开始确定这个课题的时候,不知道从什么地方开始做
起,也不了解设计所需要的元器件有哪些,如果靠自己的能力难以完成。为了锻炼自己的动手能力与学习能力,只
能开始大量的查阅相关的文献,来了解实现的基本元器件是什么。单片机的类型有很多,选择什么样类型的单片机
也是需要在考虑范围之内我。从各种因素考虑,选择了C52单片机。再确定了单片机的选型后,就要接着考虑需要实
现什么功能。本设计需要测量温度和湿度及光照强度,所以需要选择合适的传感器了来进行测量,它不仅可以测量
温度还可以测量湿度。液晶的选用也是通过了几个方案来确定的,最终选用了LCD1602,因为它可以显示本文需要的
两行数据并且比较便宜,看起来比较直观,再确定好元件之后。就要进行学习电路了,对此需要了解元器件各个引
脚的功能,再将这些引脚与单片机上的端口一一对应起来,并把它们用线在原理图上相连,做好基本任务,为接下
来的需要做的步骤打好基础。总之在本次的毕业论文,我学会了很多,把大学四年的知识总结并运用在毕设上,这
是我大学生活完美的句号,也是多年以后比较开心和骄傲的回忆吧。
7.2 展望
农业经济完善的基础是农业机械化和现代农业技术的提高。农业机械化是现代农业建设的重要科技支撑。现代
化大棚温室环境智能化的发展是一项不能止步的研究,对此希望可以广泛的运用在实际生产当中,为此应大力开展
现代化大棚温室环境系统的智能化控制系统的硬件配置优化,从而可以进一步提高此方面的高性能价格比,满足低
损耗高产量的要求,为确保食物安全和食物产量作出了巨大贡献。这个世纪初以来是中国农业机械智能化快速发展
的黄金时期,从而大大促进了中国农业水平。在国家“十五”计划时期,“温室环境管理关键技术研究与开发”的
研究成果基础上,深入研究收集温室环境信息所需的技术,以便为智能管理系统提供准确的环境信息。现在所熟知
的智能化是复杂多样的,简单的运算控制法则很难满足的需求,对此要深入讨论研究,学会试着将多种智能控制算
法结合起来,以此能够快速稳步提升设施的的性能,高效地能够满足植物生长环境的需求[13]。设计将会继续发展
和改进智能控制系统的知识库,以提供关于温室环境的准确信息。
**
附录一 PCB图
**