毕业设计之基于单片机的温室大棚自动控制系统

更新时间:2024-05-28 22:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

郑州航空工业管理学院

毕 业 论 文(设 计)

2012 届 电气工程及其自动化 专业 1006972 班级

题 目 基于单片机的大棚温湿度亮度自动控制系统设计 姓 名 李明杰 学号 100697216 指导教师 苏艳苹 职称 讲师

二О一 二 年 五 月 二十 日

内 容 摘 要

温室是现代农业生产所必需的基本设备,用它有效地控制温度、光照、湿度、二氧化碳浓度等是改变植物生长环境、为植物生长创造最佳条件、避免外界四季变化和恶劣气候对其影响的前提。

本设计以STC89C52单片机为核心完成了对空气温度、土壤湿度、光照度进行数据的采集、处理、显示等系统的基本框图、工作原理和继电器控制的设计的工作。主要内容有:(1)通过数字温度传感器DS18B20采集实时温度。(2)通过湿度传感器HS1101采集实时湿度。(3)通过光敏电阻采集实时光照度。(4)判断采集到的参数值与设置值是否一致,并进行继电器控制。

通过以上设计可以对植物生长过程中的土壤湿度、环境温度、光照度进行了实时地、连续地检测、直观地显示并进行自动地控制。克服了传统的人工测量方法不能进行连续测量的弊端,节省了工作量,并避免了人为的疏漏或错误造成的不必要的损失。

关键词

单片机;湿敏传感器;数字温度传感器;光敏电阻;继电器控制

·1·

Design of SCM-based Temperature and Humidity and Light Illumination Automatic Control System for Greenhouse

100697216 Li Mingjie Teacher: Su Yanping

Abstract

Greenhouse is the basic equipment necessary for the production of modern agriculture, Use it can effectively control the temperature, humidity and illumination of the greenhouse, and it is the premise of changed for plant growth to create the best conditions, avoid changing seasons and severe weather outside of its impact.

The thesis mainly focus on: the base block diagram, working principle and the design of relay control which use the SCM STC89C52 as the core of the system to collect, handle, display the data of the air temperature, soil humidity and light illuminance . The main contents: (1) collected real-time temperature by digital temperature sensor DS18B20. (2) collected real-time humidity by humidity sensor HS1101. (3) collected real-time light illumination by photoresistor. (4) judge the collected parameter values and the setting values whether same or not, and control the relay.

The system use Real-time and continuous detection, display intuitively and control automatically on soil moisture, ambient temperature, light illuminance in the process of plant growth. The system can overcome the defects from the traditional manual methods of measurement which can not measure continuously,

·2·

and save the amount of work, avoid omissions or unnecessary losses that caused by errors.

【Key words】 SCM;humidity sensors;digital temperature sensors;light dependent resistor; relay control

·3·

目 录

第一章 概述 ................................................................................................... 1 1.1 选题背景................................................................................................. 1 1.2 国内外的发展现状.................................................................................. 2 1.3 课题内容、目的及思路 .......................................................................... 2 1.4 设计过程及工艺要求 .............................................................................. 2 第二章 系统的总体设计................................................................................. 3 2.1系统设计目标 .......................................................................................... 3 2.2 系统的组成和工作原理 .......................................................................... 3 2.3 环境参数检测方案的比较和选择 ......................................................... 8 2.3.1 湿度传感器的选择 ............................................................................ 8 2.3.2 温度传感器的选择 .......................................................................... 10 2.3.3 光亮度传感器的选择 ...................................................................... 11 2.3.4 方案选择总结 ................................................................................. 12 第三章 硬件的设计 ...................................................................................... 12 3.1 MCU选型 ............................................................................................. 12 3.2 湿度测量电路 ....................................................................................... 13 3.3 温度测量电路 ....................................................................................... 15 3.4 光照度测量电路 ................................................................................... 18

·1·

3.5 数据显示电路 ....................................................................................... 20 3.6 复位电路............................................................................................... 23 3.7 键盘电路............................................................................................... 24 3.8 继电器控制电路 ................................................................................... 25 3.9 电源电路............................................................................................... 26 第四章 软件设计 .......................................................................................... 26 4.1 主程序流程图 ....................................................................................... 26 4.2 参数测量子程序流程图 ........................................................................ 28 4.3 键盘扫描子程序流程 ............................................................................ 28 总结致谢......................................................................................................... 30 参考文献......................................................................................................... 31 附录1 系统总体电路图 ............................................................................... 32 附录2 系统源代码 ....................................................................................... 33

·2·

基于单片机的大棚温湿度亮度自动控制系统设计

学号:100697216 姓名:李明杰

指导老师:苏艳苹 职称:讲师

第一章 概述

1.1 选题背景

现代化农业生产中的重要一环就是对农业生产环境的一些重要参数进行检测和控制。例如:空气的温度、湿度、光照强度、二氧化碳含量、土壤的含水量等。温室环境与生物的生长、发育、能量交换密切相关,进行环境测控是实现温室生产管理自动化、科学化的基本保证,通过对监测数据的分析,结合作物生长发育规律,控制环境条件,使作物达到优质、高产、高效的栽培目的。以蔬菜大棚为代表的现代农业设施在现代化农业生产中发挥着巨大的作用,所以对大棚内的温度、湿度与光照强度等参数的控制就显的非常重要了。

传统的方法是用毛发湿度表、酒精温度计等进行人工测量,再对不符合的温度、湿度、光照度通过在温室大棚进行灌溉、降温、遮光等控制操来调节,这种人工测控的方法费时费力、效率低、且无法保证测量的连续性,测量的误差大、随机性大,随意性强。为了克服以上几点不足,我们需要一种造价低廉,使用方便且测量准确的自动测控系统。

·1·

1.2 国内外的发展现状

国外的温室设施己经发展到比较完备的程度,并形成了一定的标准,但是价格非常昂贵,缺乏与我国气候特点相适应的测控软件,不利于在我国广泛地推广,而当今在我国大多数地方对大棚温度、湿度、二氧化碳含量,光照强度的检测与控制都采用人工管理,存在着测控精度低、劳动强度大及由于测控不及时等弊端,容易造成不可弥补的损失,结果不但大大增加了成本,浪费了人力资源,而且很难达到预期的效果。本系统主要针对温室大棚内温度、湿度,光照强度研制了单片机控制的温室大棚自动控制系统,综合考虑系统的精度、效率以及经济性要求三个方面因素之后,最终确定以单片机为控制核心,选用性价比比较高的传感器,实现对温湿度的精确测量与准确控制,同时又具有价格低等优点,便于在我国推广。

1.3 课题内容、目的及思路

本系统主要采用单片机作为系统的控制核心,由温室内的空气温度传感器、土壤湿度传感器、光照度传感器采集数据,经过模数转换后送入单片机,由单片机根据采集的数据做出相应的控制,例如控制继电器的开合,使换气风扇、滴灌设备、遮阳幕等设备的启动或停止,达到控制温室各项参数的目的。同时在外接的LCD液晶上显示实时参数 ,便于观察。外接的键盘可以设定系统控制的温度值,以满足不同条件下对温度的不同要求。

1.4 设计过程及工艺要求

在本系统中为了保证对温度、湿度和光照度的检测的实时性和准确性,

采用了数字温度传感器来检测温度。采用湿度传感器来检测土壤湿度。采用

·2·

光敏电阻检测光照度。最后通过单片机处理后显示在LCD液晶显示屏上,并通过控制继电器的开合控制相应的调节部件对植物的生长环境的各项参数进行调节,以达到适合植物生长的环境条件。

本系统的基本功能有:检测空气温度、土壤湿度、环境光照度。显示以上各项参数并自动调节。

第二章 系统的总体设计

2.1系统设计目标

本设计的要求是以单片机为控制核心,以湿度传感器、温度传感器、光敏电阻完成对温室大棚内的各项参数进行测量,并将数据输入到单片机中,有单片机根据所编写的程序,通过继电器控制电路控制相应的设备达到自动调控温室大棚内各项参数的目的,同时将通过各种传感器测的数据实时地显示在液晶屏上。系统可通过按键人为地设定合适的参数,便于根据不同的植被的环境中使用。

2.2 系统的组成和工作原理

硬件系统主要有信号采集、信号分析、信号处理三个部分组成。 (1)信号采集 由湿度传感器、温度传感器、光敏电阻组成。 (2)信号分析 由单片机基本系统组成。

(3)信号处理 由并行口LCD液晶显示屏和继电器控制电路组成。

·3·

硬件系统的原理方框图如图2-1:

温室大棚 温度传感器 LCD显 湿度传感器 光照度传感器 A/D转换器 滴灌设备 排气扇及喷 执行部件 控制电路 单片机 遮阳幕 图2-1 硬件系统的原理图

键盘

单片机通过湿度传感器检测土壤的湿度,若土壤的湿度过低,单片机就打开滴灌设备的电磁阀一分钟,对作物进行滴灌作业,增加土壤湿度,经过一段时间,单片机再次检测土壤湿度,如果湿度过高,就关闭滴灌设备的电磁阀,停止滴灌作业。如果开始检测的土壤湿度在适宜的范围,单片机则维持现有状态不变。

·4·

土壤湿度控制部分流程如图2-2:

开始 湿度是否在设定的Y N Y 湿度是否高于设定N 滴灌设备继电湿度是否低于设定Y 滴灌设备继电N 滴灌设备停止滴灌设备开始结束 图2-2 土壤湿度控制流程图

单片机通过温度传感器检测温室的空气温度,当空气温度过高时,就通过控制电路,打开排气扇配合设置在温室大棚顶部的喷雾设备的进行一段时间的温室大棚的降温作业,而当温室温度过低时,则通过单片机自动关闭降温设备的工作,使温度值达到适宜的范围。 若一开始检测的光照度在适宜范围,单片机将维持现有状态。

·5·

空气温度控制流程如下图2-3:

开始 温度是否在设定的Y N Y 温度是否高于设定N 排风扇及喷雾设温度是否低于设定Y 排风扇及喷雾设N 排风扇及喷雾设排风扇及喷雾设结束 图2-3 空气温度控制流程图

光照度的控制主要靠遮阳幕的开关,光照度过高时,系统通过关闭大棚顶部的遮阳幕,避免阳光直射作物,减小光照度,及减少强光对作物生长的影响。当光照度过低时,就打开遮阳幕,增加光照度。如果检测的光照度在适宜范围,单片机将维持现状。

·6·

光照度控制部分流程如下图2-4:

开始 光照度是否在设定的适宜范围内? N Y Y 光照度是否高于设定的适宜范围上N Y 遮阳幕继电器断光照度是否低于设定遮阳幕继电器吸合 N 遮阳幕关闭 遮阳幕打开 结束 图2-4 光照度控制流程图

·7·

2.3 环境参数检测方案的比较和选择

2.3.1 湿度传感器的选择

单片机作为控制核心,要有被检测信号输入,由单片机处理。如何准确的确定外围环境的各项参数就显的非常重要。

传感器是实现测量与控制的首要环节,是测控系统的关键部件,如果没有传感器对原始信号进行准确可靠的捕捉和转换,系统就无法实现要求的各项功能。工业生产过程中的自动化的测量和控制,大部分主要依靠各种传感器来检测和控制生产过程中的各项参量,使系统工作在最佳的状态下。

测量土壤湿度的方法有很多种,其原理是根据某种物质从其周围的土壤中吸收水分后引起的物理或化学的性质的变化,间接的获得土壤的湿度。电容式、电阻式和湿涨式湿敏元件分别是根据其高分子材料吸水后的介电常数、电阻率和体积发生的变化进行湿度的测量。

方案一:采用HOS-201湿敏传感器。HOS-201湿敏传感器为高湿度开关传感器,它的工作电压为交流1V以下,频率为50HZ~1KHZ,测量范围为0%~100%RH,工作温度为0~50℃,阻抗在75%RH(25℃)时为1MΩ。这种传感器主要用于开关的传感器,不能在宽频域内检测湿度。这种传感器只限于一定范围内使用时具有良好的线性度。

方案二:采用HS1100/ HS1101[3]湿度传感器。HS1100/ HS1101湿度传感器,在电路结构上等效于一个电容器,其电容量随着土壤湿度的增大而增大,不需要校准的完全互换性,高可靠性和长期稳定性,快速响应,专利设计的固态聚合物结构由顶端接触(HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路。

·8·

综合比较方案一和方案二,方案一虽然满足精度和测量温度的要求,但是只是限定于一定的范围内使用时具有良好的线性度。因此,我们选择方案二作为本设计的湿度传感器。

湿度传感器HS1101的特点:相对湿度在1%~100%RH范围内:电容量有16pf变到200pf,其误差不大于0.04pf/。

由此可以看出HS1101具有测量精度高,反应速度高的优点,其湿度-电容响应曲线如图2-5:

RH,响应时间小于5S,温度系数为

HS1101的一些常用参数如表2-1:

表2-1 HS1101常用参数 参数 工作温度 储存温度 供电电压 湿度范围 焊接时间@=260℃ 符号 Ta Tstg Vs RH t 参数值 -40~100 -40~125 10 0~100 10

图2-5 HS1101湿度-电容响应曲线

单位 ℃ ℃ Vac %RH S ·9·

2.3.2 温度传感器的选择

方案一:采用AD590温度传感器。AD590温度传感器是美国模拟器件公司生产的单片集成两端感温电流源。AD590性能描述:测量范围在-50℃-- +150℃,满刻度范围误差为±0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±0.01℃ 。AD590为电流型传感器温度每变化1℃其电流变化1uA在35℃和95℃时输出电流分别为308.2uA 和368.2uA 。

方案二:采用DS18B20温度传感器。美国DALLAS公司的产品可编程单总线数字式温度传感器DS18B20可实现室内温度信号的采集,有很多优点:如直接输出数字信号,故省去了后继的信号放大及模数转换部分,外围电路简单,成本低;单总线接口,只有一根信号线作为单总线与CPU连接,且每一只都有自己唯一的64位系列号存储在其内部的ROM存储器中,故在一根信号线上可以挂接多个DS18B20,便于多点测量且易于扩展。

综合比较方案一和方案二,两方案都可以满足设计所要求的精度温度要求,但方案一的后续电路复杂,需要经过放大,数模转换等步骤,增加了设计的复杂度和成本,并需要占用单片机较多的I/O口。方案二的后续电路简单,占用的I/O口数量少,为整体设计留出了足够的I/O口资源。故我们采用方案二作为本系统的温度传感器。

DS18B20的温度值格式如表2-2:

表2-2 DS18B20的温度值格式 低字节 高字节 位7 23 位15 S 位6 22 位14 S 位5 21 位13 S 位4 20 位12 S ·10·

位3 2-1 位11 S 位2 2-2 位10 26 位1 2-3 位9 25 位0 2-4 位8 24

DS18B20中的温度传感器完成对温度的测量,用16位二进制形式提供,形式表达,其中S为符号位。例如+125℃的数字输出为07D0H (正温度直接把16进制数转成10进制即得到温度值 );

-55℃的数字输出为 FC90H。(负温度 把得到的16进制数 取反后1再转成10进制数)。

数字输出格式如表2-3:

表2-3 DS18B20的数字输出格式表 温度 +125 +85 +25.0625 +10.125 +0.5 0 -0.5 -10.125 -25.0625 -55 数字输出(二进制) 0000 0111 1101 0000 0000 0101 0101 0000 0000 0001 1001 0001 0000 0000 1010 0010 0000 0000 0000 1000 0000 0000 0000 0000 1111 1111 1111 1000 1111 1111 0101 1110 1111 1110 0110 1111 1111 1100 1001 0000 数字输出(十六进制) 07D0h 0550h 0191h 00A2h 0008h 0000h FFF8h FF5Eh FE6Fh FC90h 2.3.3 光亮度传感器的选择

方案一:采用光照度传感器M124749,该光照度传感器采用先进的电路模块技术开发变送器,用于实现对环境光照度的测量,输出标准的电压及电流信号,体积小,安装方便,线性度好,传输距离长,抗干扰能力强,量程

·11·

可调。但价格昂贵,性价比不高,且不易购买。

方案二:采用光敏电阻。光敏电阻的工作原理是当有光线照射时,电阻内原本处于稳定状态的电子受到激发,成为自由电子,所以光线越强,产生的自由电子也就越多,电阻就会越小。光敏电阻的优点有内部的光电效应和电极无关(光电二极管才有关),即可以使用直流电源。灵敏度和半导体材料、以及入射光的波长有关,价格低廉,性价比高。

比较以上两个方案,方案一虽然具有更好的设计精度和线性度,但性价比不如光敏电阻好。方案二具有较高的性价比且同时也能满足系统的设计要求,故采用光敏电阻作为光照度传感器。 2.3.4 方案选择总结

(1) 湿度传感器采用HS1101。 (2) 温度传感器采用DS18B20。 (3) 光亮度传感器采用光敏电阻。

第三章 硬件的设计

3.1 MCU选型

STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,

·12·

3.2 湿度测量电路

STC89C52单片机管脚如图3-1:

用可编程(ISP,IAP),不占用户资源。

兼容,DIP40封装系列与8051兼容均为Pin-to-Pin,使用时容易掌握;

图3-1 STC89C52单片机管脚定义图

器/计数器,全双工串行口,最高运作频率35MHZ。 它是MCS-51系列单片

看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位 定时

机的派生产品,在指令系统、硬件结构和片内资源上与标准8052单片机完全

高速、低功耗、价格低、稳定可靠、应用广泛、通用性强,在系统/在应

HS1101湿度传感器,在电路中等效于 一个电容器件,其电容量随着所

测的土壤湿度增大而增大,如何将电容的变化量准确的转换成单片机易于接

·13·

受的信号,常有两种方法:一是将该湿敏传感器置于运放与阻容组成的桥式振荡电路中,所产生的正弦波电压信号经整流、直流放大、再经过A/D转换成为数字信号;另一种是将该湿敏传感器置于555振荡电路中,将电容值的变化转化为与之成反比的电压频率信号,可直接被单片机所采集。

本系统采用的是测量555输出的振荡的方法,电路如图3-2所示:

图3-2 湿度测量电路图

此电路为典型的555双稳态电路。HS1101/HS1100作为电容变量接在555的TRIG与THRES两引脚上,引脚7用作电阻R9的短路。

等量电容HS1101/HS1100通过R8与R9充电到门限电压(约0.67Vcc),通过R8放电到触发电平(约0.33Vcc),然后R9通过引脚7短路到地。传感器由不同的电阻R8与R9充放电。

·14·

D GND:数字电压的接地端。

DB7 ~ DB0:转换后之数字数据输出端。 Vcc:驱动电压输入端。

3.5 数据显示电路

系统采用了LCD1602[8]液晶显示屏,LCD1602液晶是一款很常用,也很

易用的字符液晶。可以显示2行每行16个字符,对比度可调、黄绿色背光。与单片机的链接电路如图3-7:

图3-7 LCD1602与单片机的连接电路图

1602[8]液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个

点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形。 LCD1602的管脚定义图如图3-8所示:

·20·

图3-8 LCD1602管脚定义图

VSS:为电源地 VDD:接5V电源正极

V0:为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。

RS:为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。

RW:为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 E:(或EN)端为使能(enable)端。 D0~D7:为8位双向数据端。

BLA~BLK:空脚或背灯电源。15脚背光正极,16脚背光负极。

·21·

1602液晶模块内部的控制器共有11条控制指令,如表3-4所示:

表3-4 控制命令表

序号 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 1 清显示 0 0 0 0 0 0 0 0 0 1 2 光标返回 0 0 0 0 0 0 0 0 1 * 3 置输入模式 0 0 0 0 0 0 0 1 I/D S 4 显示开/关控制 0 0 0 0 0 0 1 D C B 5 光标或字符移位 0 0 0 0 0 1 S/C R/L * * 6 置功能 0 0 0 0 1 DL N F * * 7 置字符发生存贮器地址 0 0 0 1 字符发生存贮器地址 8 置数据存贮器地址 0 0 1 显示数据存贮器地址 9 读忙标志或地址 0 1 BF 计数器地址 10 写数到CGRAM或DDRAM) 1 0 要写的数据内容 11 从CGRAM或DDRAM读数 1 1 读出的数据内容 1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)

指令1:清显示,指令码01H,光标复位到地址00H位置。 指令2:光标复位,光标返回到地址00H。

·22·

指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。 指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 ;C:控制光标的开与关,高电平表示有光标,低电平表示无光标; B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。

指令5:光标或显示移位 S/C高电平时移动显示的文字,低电平时移动光标。 指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。 指令7:字符发生器RAM地址设置。 指令8:DDRAM地址设置。

指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。 指令10:写数据。 指令11:读数据。

3.6 复位电路

为了确保系统中的电路温度可靠工作,复位电路是必不可少的部分 ,其

第一功能就是高电平复位,高电平复位是在通电瞬间通过充电来实现的。手动复位是指通过接通一按键开关,使单片机进入复位状态。系统上电运行后,

·23·

如果需要复位,只需通过手动复位就可以实现。本系统使用的复位电路如图3-9所示:

图3-9 复位电路图

3.7 键盘电路

本设计采用的键盘扫面电路采用简单的低电平扫描方式,即采用开关的一端与单片机I/O口相连,另一端接地的方式,用单片机检测I/O口是否是低电平来判断键盘是否被按下。这样的方式可以方便键盘扫描部分的的编程。键盘电路如图3-10:

图3-10 键盘电路图

·24·

3.8 继电器控制电路

单片机是一个弱电器件,一般情况下它们大都工作在5V甚至更低。驱动电流在mA级以下。而要把它用于一些大功率场合,比如控制电动机,显然是不行的.所以,就要有一个环节来衔接,这个环节就是所谓的\功率驱动\。继电器驱动就是一个典型的、简单的功率驱动环节。在这里,继电器驱动含有两个意思:一是对继电器进行驱动,因为继电器本身对于单片机来说就是一个功率器件;还有就是继电器去驱动其他负载,比如继电器可以驱动中间继电器,可以直接驱动接触器,所以,继电器驱动就是单片机与其他大功率负载接口。

本设计采用的继电器控制电路如图3-11:

图3-11 继电器控制电路图

图中的三极管起开关的作用,当单片机输出高电平时,三极管导通,继电器吸合。单片机输出低电平时,继电器断开。二极管起保护作用,防止继电器产生的感应电动势烧坏三极管或继电器。

·25·

3.9 电源电路

由于STC89C51的工作电压为+5V,所以电源需要输出+5V稳定电压可以使单片机可以稳定正常的工作,稳压芯片选用7805,电源电路如图3-12

所示:

图3-12 电源电路图

第四章 软件设计

系统的程序设计包括以下几个方面:(1)键盘扫描。(2)各项参数的采集。(3)各项参数在液晶上的显示。(4)各项参数的继电器控制。

4.1 主程序流程图

·26·

主程序的流程如图4-1:

图4-1 主程序流程图

当单片机上电后,主程序开始运行,程序以开始初始化各参数的设置和

端口定义后,清各标志位和LCD1602的显示,然后进行键盘扫描,再利用各传感器进行数据的采集,将采集的数据和设置好的参数进行对比,如果对比结果显示需要调节,启动相应的继电器控制电路对温室中需要调节的参数进

开始 初始化和位定清标志 清显示 扫描键盘 各参数采集 各参数与设置比较,是否Y 启动继电器控制电N 各参数显示 结束 ·27·

行调节并显示在LCD1602上,如果比较结果显示不需要调节,则不启动继电器控制电路,直接显示参数,然后对键盘进行循环扫描。

4.2 参数测量子程序流程图

参数测量子程序流程如图4-2:

图4-2 参数测量子程序流程图

子程序开始先声明变量和调用的函数后,调用显示函数,启动模数转换器ADC0804进行模数转换,转化如果未完成,单片机进行等待。当转换完成后,单片机读取转换后的数据,然后循环调用显示函数和进行模数转换。

开始 声明变量与函数 调用显示函数 完成转换? Y 读取转换值 N 结束 4.3 键盘扫描子程序流程

·28·

键盘扫描子程序流程如图4-3:

开始 扫描键盘 判断是否有键按下? Y 稍作延迟 N 是否真有按键按下? Y N S1是否按下? Y 进入设置模式 一次 二次 设置湿度 当前设置的Y 参数加一 判断S1按下的次数 三次 设置光照度 N S4是否按下? Y 进入切换显示模式 N 设置温度 一次 判断S4按下显示温度 的次数 三次 二次 显示光照度 显示湿度 S2是否按下? N S3是否按下? N Y 当前设置的参数减一 当前设置参数不变 结束 图4-3 键盘扫描流程图

键盘扫描子程序一开始先扫描按键,判断是否有按键被按下,确定有按

·29·

键被按下时判断被按下的是哪个按键,如果是按键S1,系统将进入设置模式,这时按键S2和S3被启用,进入那个参数的设置取决于按键S1被按下的次数,S1被按下一次,进行温度值设置,S1被按下两次,进行湿度值设置,S1被按下三次,进行光照度设置,当按下第四次,返回正常显示,按键S2和S3被禁用。按键S2和S3作用是调节参数值,每次按下S2,当前设置的参数值就加一。每次按下S3,当前设置的参数值就减一。S4是切换显示按键,当S4被按下,判断S4被按下的次数,一次是显示温度值,两次是显示湿度值,三次是显示光度值。

总结致谢

通过对本系统的研究和设计,使我对单片机的使用有了更深一层次的理

解和掌握,同时也很好的锻炼了自己Protel DXP 2004和仿真软件Proteus的使用技巧。

整个系统设计过程用到的主要硬件有STC89C52,温度传感器DS18B20,湿度传感器HS1101,光照度传感器光敏电阻,数模转换器ADC0804,555定时器。通过对这些硬件的学习和了解,不仅扩展了自己的知识面,也是自己对单片机的外围电路有了进一步的学习。设计过程中也锻炼了自己独立思考问题的能力,并增强了自己的动手操作能力,对自己将来的工作有很大的帮助。

在此要感谢我得指导老师苏艳苹老师在设计过程中给予我得帮助,使我能更好的完成毕业设计。

·30·

参考文献

[1] 梅晓榕,柏桂珍,张卯瑞.自动控制元件及线路[M].北京:科学出版社,2007

[2] 张义和,王敏男,许宏昌,余长春.例说51单片机(C语言版)[M].北京:人民邮电出版社,2010,6 [3] 湿度传感器HS1101的原理与应用[EB/OL].中国电子科技信息网. [4] 胡汉才.单片机原理与接口技术[M].清华大学出版社,1996.

[5] 黄贤斌,郑筱霞.传感器原理与应用[M].北京:高等教育出版社. 成都:电子科技大学出版社,2004,3(2009.1重印)

[6] 何立民.单片机应用系统设计[M].北京:北京航天航空出版社.1990,50-490 [7] 刘笃仁,韩保君.传感器原理及应用技术[M].机械工业出版社.2003,8 [8] 1985赵亮.液晶显示模块LCD1602应用[J].电子制作,2007(3) [9] 王勇等.凌阳单片机原理及其毕业设计精选[M].科学出版社 [10] 童诗白.模拟电路基础[M],北京:高等教育出版社,2001 [11] 马忠梅,籍顺心,张凯等.单片机的C语言应用程序设计[M]. 社,2003

[12] <美>M考夫曼,AH塞得.电子计算手册[M].国防科技出版社. [13] 王毅.单片机器件应用手册[M].北京:人民邮电出版社,1994

北京航天航空大学出版

·31·

附录1 系统总体电路图

·32·

附录2 系统源代码

#include

#include

#include

#include

#define uchar unsigned char

#define uint unsigned int

#define T_cont 0.0625;

#define DataPort P0 //LCD接口

#define ReadPort P2 //AD读取

uchar code temp[]={\

uchar code tempset[]={\

uchar code hun[]={\

uchar code hunset[]={\

uchar code inte[]={\

uchar code inteset[]={\

uchar code set[]={\

uchar tempset1,s1num,s4num,hunset1,hun1,hun2,inteset1,inte1;

·33·

bit T_sign;

float temp1=0;

uchar t_bai,t_shi,t_ge,t_feng,t_miao,sshi,sge,

h_bai,h_shi,h_ge,hshi,hge,

i_bai,i_shi,i_ge,ishi,ige;

sbit s1=P1^0;

sbit s2=P1^1;

sbit s3=P1^2;

sbit s4=P1^3;

sbit relay1=P1^5;

sbit relay2=P1^6;

sbit relay3=P1^7;

sbit cs1=P3^0;

sbit lcdrs=P3^1;

sbit DS=P3^2;

sbit lcdrw=P3^3;

sbit lcden=P3^4;

sbit cs2=P3^5;

sbit wr=P3^6;

34··

本文来源:https://www.bwwdw.com/article/m737.html

Top