基于单片机的大棚温湿度自动检测报警系统_第1页
基于单片机的大棚温湿度自动检测报警系统_第2页
基于单片机的大棚温湿度自动检测报警系统_第3页
基于单片机的大棚温湿度自动检测报警系统_第4页
基于单片机的大棚温湿度自动检测报警系统_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、石家庄经济学院本科生毕业设计- I摘 要随着时代的进步,科学技术发展的步伐越来越快,我们对科学技术的要求也越来越高。目前市场上普遍存在的温湿度检测仪器大都是有温度信息传递不及时、精度不够的缺点。温湿度是衡量温室大棚的重要指标,它直接影响到栽培作物的的生长和产量,为了能给作物提供一个合适的生长环境,首要问题是加强温室内的温湿度的检测。通过单片机AT89S51 对采集到的数据进行处理,用 LED 显示出当前环境的温湿度状况,其中温度可以有操作人员根据不同作物所需的最适宜温度进行调节,当环境温度和设置的最适宜温度之差大于 4时,报警装置即会启动,报警指示有蜂鸣器和发光二极管(红绿各一)构成。本系统的

2、主要任务是完成温湿度检测,并根据不同场合设定不同适宜温度,当环境温湿度与设定值偏差较大时,报警系统的发光二极管和蜂鸣器即启动,具有操作方便、控制灵活、检测准确等优点。关键词:单片机 AT89C5;温度传感器 DS18B20;湿度传感器 HS1101AbstractWith the progress of The Times, the pace of development of science and technology, science and technology requirements for us more and more is also high. On the market

3、at present the temperature and humidity of the testing instrument exists mostly temperature information not timely, precision insufficient faults. Temperature is an important index, greenhouse shed it directly affects the growth of crops and production, in order to provide a proper crop growth envir

4、onment, the first question is to strengthen the temperature and humidity in greenhouse. Through the microcontroller AT89S51 for the collected data processing, LED display the current situation of environmental temperature and humidity, temperature can be an operator according to different crop for o

5、ptimum temperature adjustment, when the environment temperature and set the optimum temperature difference than 4 degrees Celsius, alarm device that will start, alarm indicates buzzer and red and green light emitting diode.The systems main task is complete, and the temperature and humidity test acco

6、rding to different situations in different Settings when appropriate temperature, humidity and environmental value deviation, alarm system of leds and buzzer namely, have convenient operation, flexible, detection accuracy control etc.Key words:Temperature Sensor DS18B20;Microcomputer AT89S52;Humidit

7、y Senso HS1101石家庄经济学院本科生毕业设计- II目目 录录摘 要.IABSTRACT.I目 录.II1绪论.11.1 课题背景.11.2 温湿度采集技术现状.11.3 模块方案选择.11.3.1 温度传感器选择.21.3.2 湿度传感器的选择.21.3.3 显示模块.31.3.4 系统总体设计.32器件介绍.42.1 DS18B20 概述.42.2 湿度传感器 HS1101 介绍.72.3 主控器件单片机 AT89C51.93硬件设计.113.1 总电路图.113.2 温度测量电路.123.3 湿度测量电路.123.4 系统的 PCB 图.134软件设计.134.1 主程序流程

8、图.134.2 按键扫描子程序流程图.144.3 温度程序流程图.144.4 湿度程序流程图.165调试结果与总结.176致谢.19石家庄经济学院本科生毕业设计- III参考文献.20程序清单.21石家庄经济学院本科生毕业设计- 1基于单片机的大棚温湿度自动检测报警系统1 绪论1.11.1 课题背课题背景景在科学技术飞速发展的今天,现代温度测温技术与传统的温度测量技术相比,现代温度测温技术主要优点是测量精度高,速度快,稳定性能好。温湿度是衡量温室大棚的重要指标,它直接影响到栽培作物的的生长和产量,为了能给作物提供一个合适的生长环境,首要问题是加强温室内的温湿度的检测, 但传统的方法是用与湿度表

9、、毛发湿度表、双金属式测量计和湿度试纸等测试器材,通过人工进行检测,对不符合温度和湿度要求的库房进行通风、去湿和降温等工作。这种人工测试方法费时费力、效率低,且测试的温度及湿度误差大,随机性大。因此我们需要一种造价低廉、使用方便且测量准确的温湿度测量仪。该设计即是针对这一问题,设计出了能够实现温湿度自动检测,显示上下限报警等多功能的温湿度监测控制系统。1.21.2 温湿度采集技术现状温湿度采集技术现状由于高新技术的不断发展,仪器仪表的微型化,数字化已得到实现。90 年代高精确度、高性能、多功能仪器仪表都已经采用微处理器件。而作为工业控制和自动化领域的各种新技术、新方法、新产品的发展趋势和显着标

10、志智能化是自动化技术当前和今后发展的动向之一。在传统的温度测量系统设计中,往往采用模拟技术进行设计。传感器一般采用热电阻、热电偶等模拟器件,需要额外加补偿电路,安装复杂,成本较高。而且必须经过 A/D 转换后才可以被微处理器识别和处理。这样就不可避免地遇到诸如引线误差补偿、多点测量中的切换误差和信号调理电路的误差等问题;而其中某一环节处理不当,就可能造成整个系统性能的下降。而 DS1820 新型单总线数字温度传感器,采用 3 脚(或 8 脚)封装,从DS1820 读出或写入数据仅需要一根 IO 口线,而且测量精度达到 12 位,最低精确到小数点后 4 位有效数字1。用这种智能化数字式传感器的优

11、胜显而易见。现代湿度测量方案最主要的有两种:干湿球测湿法,电子式湿度传感器测湿法。干湿球湿度计的准确度只有 57RH。与电子式湿度传感器相比,干湿球测湿法不会产生老化,精度下降等问题。所以干湿球测湿方法更适合于在高温及恶劣环境的场合使用。电子式湿度传感器的准确度可以达到 23RH。电子式湿度传感器的精度水平要结合其长期稳定性去判断,一般说来,电子式湿度传感器的长期稳定性和使用寿命不如干湿球湿度传感器。湿度传感器是采用半导体技术,因此对使用的环境温度有要求,超过其规定的使用温度将对传感器造成损坏。所以电子式湿度传感器测湿方法更适合于在洁净及常温的场合使用。 1.31.3 模块方案选择模块方案选择

12、当将单片机用作测控系统时,系统总要有被测信号懂得输入通道,由计算机拾取必要的输入信息。对于测量系统而言,如何准确获得被测信号是其核心任务;而对测控系石家庄经济学院本科生毕业设计- 2统来讲,对被控对象状态的测试和对控制条件的监察也是不可缺少的环节。传感器是实现测量与控制的首要环节,是测控系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量和控制都将无法实现。工业生产过程的自动化测量和控制,几乎主要依靠各种传感器来检测和控制生产过程中的各种参量,使设备和系统正常运行在最佳状态,从而保证生产的高效率和高质量。1.3.11.3.1 温度传感器选择温度传感器选择方案一:

13、采用热电阻温度传感器。热电阻是利用导体的电阻随温度变化的特性制成的测温元件。现应用较多的有铂、铜、镍等热电阻。其主要的特点为精度高、测量范围大、便于远距离测量。铂的物理、化学性能极稳定,耐氧化能力强,易提纯,复制性好,工业性好,电阻率较高,因此,铂电阻用于工业检测中高精密测温和温度标准。缺点是价格贵,温度系数小,受到磁场影响大,在还原介质中易被玷污变脆。按 IEC 标准测温范围-200650,百度电阻比 W(100)=1.3850 时,R0 为 100 和 10,其允许的测量误差 A 级为(0.15+0.002 |t|) ,B 级为(0.3+0.005 |t|) 。铜电阻的温度系数比铂电阻大,

14、价格低,也易于提纯和加工;但其电阻率小,在腐蚀性介质中使用稳定性差。在工业中用于-50180测温。方案二:采用 AD590。它的测温范围在-55+150之间,而且精度高。M 档在测温范围内非线形误差为0.3。AD590 可以承受 44V 正向电压和 20V 反向电压,因而器件反接也不会损坏。使用可靠。它只需直流电源就能工作,而且,无需进行线性校正,所以使用也非常方便,借口也很简单。作为电流输出型传感器的一个特点是,和电压输出型相比,它有很强的抗外界干扰能力。AD590 的测量信号可远传百余米。方案三:采用 DS18B20 作为温度传感器。DS18B20 是由 Dallas 半导体公司生产的“一

15、线总线”接口的温度传感器。一线总线结构具有简洁且经济的特点,可使用户轻松地组建传感器网络,从而为测量系统的构建引入全新概念,DS18B20 的测温范围为-55+125,在-10+85范围内,精度为0.0625,现场温度可直接通过“一线总线”以数字方式传输,大大提高了系统的抗干扰性。DS18B20 适合于恶劣环境的现场温度测量,如环境控制、设备或过程控制、测温类消费电子产品等。它工作在 3V5.5V 的电压范围,采用多种封装形式,从而使系统设计更灵活、方便,设定分辨率及用户设定的报警温度存储在 EEPROM 中,掉电后依然保存3。综合比较方案一、方案二、方案三、方案三更为适合于本设计系统对于温度

16、传感器的选择。1.3.21.3.2 湿度传感器的选择湿度传感器的选择测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容式、电阻式和湿涨式湿敏原件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化而进行湿度测量的。方案一:采用 HOS-201 湿敏传感器。HOS-201 湿敏传感器为高湿度开关传感器,它的工作电压为交流 1V 以下,频率为50HZ1KHZ,测量湿度范围为 0100%RH,工作温度范围为 050,阻抗在石家庄经济学院本科生毕业设计- 375%RH(25)时为 1M。这种传感器原

17、是用于开关的传感器,不能在宽频带范围内检测湿度,因此,主要用于判断规定值以上或以下的湿度电平。然而,这种传感器只限于一定范围内使用时具有良好的线性,可有效地利用其线性特性。方案二:采用 HS1100/HS1101 湿度传感器。HS1100/HS1101 电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,由顶端接触(HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路,适宜于制造流水线上的自动插件和自动装配过程等。相对湿度在 1%-100%RH

18、 范围内;电容量由 16pF 变到 200pF,其误差不大于2%RH;响应时间小于 5S;温度系数为 0.04 pF/4。可见精度是较高的。综合比较方案一与方案二,方案一虽然满足精度及测量湿度范围的要求,但其只限于一定范围内使用时具有良好的线性,可有效地利用其线性特性。而且还不具备在本设计系统中对温度-3050的要求,因此,我们选择方案二来作为本设计的湿度传感器。1.3.31.3.3 显示模块显示模块方案一:采用 LCD 液晶显示器显示。它可视面积大,画面好,抗干扰能力强,可以节省软件中断资源,其缺点是显示内容需要存储字摸信息,需要一定存储空间。方案二:采用 LED 数码管显示。用发光二极管(

19、简称 LED)组成的字形来显示数字,七个条形发光二极管排列成七段组合字型,便构成了半导体数码管。半导体数码光分共阳极数码管和共阴极数码管,此次设计采用了共阴极数码管显示,即七个发光二极管的阴极连在一起接地。当共阴极数码管的某一阳极接高电平时,相应的二极管发光,根据字形使某几段二极管发光,所以共阴极数码管需要输出高电平有效的译码器来驱动。基于以上所述,本设计采用方案三。1.3.41.3.4 系统总体设计系统总体设计本设计选用 AT89C51 型单片机作为主控制器件,DS18B20 作为测温传感器,HS1101作为湿度传感器 通过 DS18B20 直接读取被测温度值,进行数据转换。该器件的物理化学

20、性能稳定,线性度较好,在 0100最大线性偏差小于 0.1。该器件可直接向单片机传输数字信号,便于单片机处理及控制。对采集到的数据进行处理,用 LED 显示出当前环境的温湿度状况,其中温度可以有操作人员根据不同作物所需的最适宜温度进行调节,当环境温度和设置的最适宜温度之差大于 4时,报警装置即会启动,报警指示有蜂鸣器和发光二极管(红绿各一)构成系统硬件设计的原理框图如图 1-1 所示:石家庄经济学院本科生毕业设计- 4单片机AT89C51温度传感器DS18B20湿度传感器HS1101LED数码显示过限报警键盘设定图 1-1 温度湿度测量系统框图2器件介绍2.12.1 DS18B20DS18B2

21、0 概述概述DS18B20 是美国 DALLAS 半导体公司继 DS1820 之后最新推出的一种改进型智能温度传感器。DALLAS 公司的 DS18B20,是这样一种独特的温度传感器,它只需一个接口引脚即可通信,可用数据线供电,并具备多点测温能力。它不需要复杂的信号调理电路和 A/D 转换电路,DS18B20 集温度测量和 A/D 转换一体 ,直接输出数字量,接口几乎不需要外围组件,仅需占用一个双向 I/O 端口,无需任何外部器件即可方便地构成温度检测系统,硬件电路结构简单,传输距离远,可以很方便的实现多点测量,DS18B20 能直接与单片机完成数据采集和处理,将测得的现场温度直接以“一线总线

22、”的数字方式传输。封装如图 2-1 所示。图 2-1 DS18B20 封装方式石家庄经济学院本科生毕业设计- 5引脚功能描述如表 2-1 所示。表 2-1 DS18B20 详细引脚功能描述序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚,开漏单总线接口引脚。可以用在寄生电源下,也可以向器件提供电源3VDD可选择的 VDD 引脚,当工作于寄生电源时,此引脚必须接地它具有以下 8 种特性:(1)独特的单线接口方式:DS18B20 与微处理器连接时仅需要一条口线即可实现微处理器与 DS18B20 的双向通讯;(2)在使用中不需要任何外围组件;(3)可用数据线供电,电压范围:+3.0V+5.

23、5V;(4)测温范围:-55+125。固有测温分辨率为 0.5;。(5)通过编程可实现 912 位的数字读数方式;(6)用户可自设定非易失性的报警上下限值;(7)支持多点组网功能,多个 DS18B20 可以并联在惟一的三线上,实现多点测温;(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。表 2-2 温度精度配置R1R0分辨率温度最大转换时间/mm009 位93.750110 位187.51011 位275.001112 位750.00由表 2-2 可见,设定的分辨率越高,所需要的温度数据转换时间就越长。因此,在实际应用中要在分辨率和转换时间两者之间进行权衡考虑。高速暂存

24、存储器除了配置寄存器外,还有其它 8 个字节组成,其分配如表 2-5 所示。其中温度信息(第 1,2 字节)、TH 和 TL值第 3,4 字节、第 68 字节未用,表现为全逻辑 1;第 9 字节读出的是前面所有 8 个字节的 CRC 码,可用来保证通信正确。石家庄经济学院本科生毕业设计- 6=0斜率累加器预置高温度系数晶振计数器 1比较预置温度寄存器计数器 2高温度系数晶振=0LSB置位/清除加 1停止表 2-3 温度和数字量的关系温度/二进制表示十六进制表示+12500000111 1101000007D0H+25.062500000001 100100010191H+0.500000000

25、 000010000008H000000000 000000000000H-0.511111111 11111000FFF8H-25.062511111110 01101111FE6FH-5511111100 10010000FC90HDS18B20 测温原理如图 2-2 所示:图 2-2 DS18B20 测温原理框图 石家庄经济学院本科生毕业设计- 7DS18B20 命令集表 2-4 DS18B20 的控制命令指令代码操作说明温度转换44H开始启动 DS18B20 温度转换读 ROM33H读 ROM 命令匹配 ROM55H对指定器件操作跳过 ROMCCH跳过器件识别读暂存器BEH读暂存器内容

26、写暂存器4EH将数据写入暂存器的 TH、TL 字节复制暂存器48H把暂存器的 TH、TL 字节写到 E2RAM重新调用 E2RAMB8HE2RAM 中的 TH、TL 字节写到暂存器的 TH、TL字节搜索 ROMF0H识别总线上各器件的编码报警搜索 ROMECH仅温度超限的器件对此命令做出响应2.22.2 湿度传感器湿度传感器 HS1101HS1101 介绍介绍测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容式、电阻式和湿涨式湿敏原件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化而进行

27、湿度测量的。下面 介绍 HS1101 湿度传感器及其应用。特点是不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,由顶端接触(HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路,适宜于制造流水线上的自动插件和自动装配过程等7。图 2-3 为湿敏电容工作的温、湿度范围。图 2-4 为湿度-电容响应曲线。 1007550250-20020-40406080 100温度 /长期稳定正常工作区区非正常区020406080170160180190200相对湿度 /%RH图 2-3 敏电容工作的温、湿度范围 图 2-4 湿度-电容相

28、应曲线 相对湿度在 1%-100%RH 范围内;电容量由 16pF 变到 200pF,其误差不大于2%RH;响应时间小于 5S;温度系数为 0.04 pF/。可见精度是较高的。HUMIREL 湿度传感器 HS1101/HS1100 基于独特工艺设计的电容组件,这些相对湿石家庄经济学院本科生毕业设计- 8度传感器可以大批量生产。可以应用于办公自动化,车厢内空气质量控制,家电,工业控制系统等。在需要湿度补偿的场合他也可以得到很大的应用。为空气湿度与电压频率的典型值如表 2-4 所示:表 2-5 空气湿度与电压频率的典型值 07351606600107224706468207100806330306

29、9769061684068531006033506728频率湿度频率湿度%RHHz%RHHzHS1100/HS1101 电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。如何将电容的变化量准确地转变为计算机易于接受的信号,常有两种方法:一是将该湿敏电容置于运放与阻容组成的桥式振荡电路中,所产生的正弦波电压信号经整流、直流放大、再 A/D 转换为数字信号;另一种是将该湿敏电容置于 555 振荡电路中,将电容值的变化转为与之成反比的电压频率信号,可直接被计算机所采集8。本系统采用的是将 HS1101 接入 555 定时器组成的震荡电路中,输出一定频率的方波号,这种方

30、法结构简单,使用方便,因此被广泛采用。 集成定时器 NE555 一方面可以形成单稳态电路,另一方面可以形成多谐振荡电路,本系统选用的是 NE556,它内部含有两个 NE555 定时器,其中 R1,R2,C1,C2 和 NE556 构成多谐振荡器,外接电阻 R1,R2 和湿敏电容 C1 构成了对湿敏电容 C1 的充电回路,7 端通过芯片内部的晶体管对地短路又构成了对 C1 的放电回路,并将 2,6 端相连引入到片内比较器, 。该振荡电路的两个暂稳态过程交替如下:首先是电源 Ucc 通过 R1,R2 向 C2 充电,经 T1 充电时后,Uc2 充至内比较器的高触发电平,约 2/3Ucc,此时输入引

31、脚 3 端由高电平突降为低电平,然后通过 R2 放电,经 T2 放电时间后,Uc2 下降到比较器的低触发电平,约 1/3Ucc,此时输入引脚 3 端又由低电平跃升为高电平,如此反复,形成方波输出,其中充放电时间为:T1=C1(R1+R2)ln2T2=C1R2ln2因而输出的方波频率为:f=1/(t1+t2)=1/C1(R1+2R2)ln2=50HZ只要改变定时组件 R1 和 R2 就可以改变脉冲的频率,从多谐振荡器出来的信号又接入到单稳态触发器,单稳态触发器它有两个触发状态,一个稳定状态,一个暂稳定状态,在外来触发脉冲作用下,能够由稳定状态翻转到暂稳定状态,而暂稳定状态维持一段时间后,再自动的

32、返回到稳定状态,且暂稳定状态持续时间长短取决与电路本身参数,图中,R3,C3 和传感器 HS1101 是外接地定时组件,触发脉冲 Ui 由 5 端输出,由 8 端输入,下降沿有效,从 9 端输出一个幅度,宽度都一定的矩形波信号,输出的脉冲宽度 Tp 为:Tp=R3(C2+Cx)ln3虽然从 NE556 输出的是标准的脉冲信号,为了减少外界对信号的干扰,设计中采用石家庄经济学院本科生毕业设计- 9低通滤波器,过滤掉高频信号的干扰,然后直接用单片机的定时计数器 T0 来测量 Tp 的脉宽,通过脉宽值,我们可以得到相应的传感器电容值,知道了传感器的电容值,我们就可以分析电容与湿度的关系,下图为 HS

33、1101 的典型输出曲线,相对湿度在 1%-99%RH之间,电容量由 163pf 变化到 202pf,其误差不大于2%RH,响应时间小于 5S,温度系数为 0.04pf/。 根据传感器的相关资料,我们可以得到电容值与湿度值的近似关系为:RH(Cx-163)/0.39我们可以根据前面测量出的 NE556 输出的脉宽值,求出相应的电容值,再根据上式,我们就可以由相应的电容值求出湿度值。2.32.3 主控器件单片机主控器件单片机 AT89C51AT89C51AT89C51 是美国 ATMEL 公司生产的低电压,高性能 CMOS8 位单片机,片内含 4K bytes 的可反复擦写的 Flash 只读程

34、序存储器和 128 bytes 的随机存取数据存储器(RAM) ,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,片内置通用 8 位中央处理器(CPU)和 Flash 存储单元,功能强大,可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。AT89C51 提供以下标准功能:4K 字节 Flash闪速存储器,128 字节内部 RAM,32 个 I/O 口线,两个 16 位定时/计数器,一个 5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51 可降至0Hz 的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲

35、方式停止 CPU 的工作,但允许 RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存 RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。主要性能参数:与 MCS-51 产品指令系统完全兼容4K 字节可重擦写 Flash 闪速存储器1000 次擦写周期全静态工作:0Hz24Hz三级加密程序存储器1288 字节内部 RAM32 个可编程 I/O 口线2 个 16 位定时、计数器6 个中断源可编程串行 UART 通道低功耗空闲和掉电模式AT89C51 的极限参数:工作温度:-55C125C储藏温度:-65C150C任一引脚对地电压:-1.0V7.0V最高工作电

36、压:6.6V直流输出电流:15.0mA石家庄经济学院本科生毕业设计- 10如图 2-5:图 2-5 AT89C51 引脚分布图引脚功能说明Vcc:电源电压GND:地P0 口:P0 口是一组 8 位漏极开路型双向 I/O 口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口:P1 是一个带内部

37、上拉电阻的 8 位双向 I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL) 。Flash 编程和程序校验期间,P1 接收低 8 位地址。P2 口:P2 是一个带有内部上拉电阻的 8 位双向 I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个

38、电流(IIL) 。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 MOVX DPTR 指令)时,P2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行 MOVX R1 指令)时,P2 口线上的内容(也即特殊功能寄存器(SFR)区中 R2 寄存器的内容) ,在整个访问期间不改变。Flash 编程或校验时,P2 亦接收高地位地址和其它控制信号。石家庄经济学院本科生毕业设计- 11P3 口:P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对 P3 口写入“1”时,它们被内部上拉电阻拉高

39、并可作为输入端口。作输入端时,被外部拉低的 P3 口将用上拉电阻输出电流(IIL)。P3 口除了作为一般的 I/O 口线外,更重要的用途是它的第二功能,如表 2-9 所示:表 2-6 P3 口功能端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外中断 0)P3.3INT1(外中断 1)P3.4T0(定时/计数器 0)P3.5T1(定时/计数器 1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)3硬件设计3.13.1 总电路图总电路图总电路图如图 3-1 所示:图 3-1 总电路原理图石家庄经济学院本科生毕业设计- 123.23

40、.2 温度测量电路温度测量电路温度测量采用 DS18B20,它是单线传输器件,不需校正温宿,接口接的是 P2.0,具体的温度测量电路如图 3-2 所示:图 3-2 温度测量电路3.33.3 湿度测量电路湿度测量电路湿度测量用的是 HS1101 电容式器件,他与 NE556 组成一方波发生电路,湿度改变对应频率的变化,用单片机采集频率值进行转化得出湿度值,具体的湿度测量电路如图 3-3所示:图 3-3 湿度测量电路石家庄经济学院本科生毕业设计- 133.43.4 系统的系统的 PCBPCB 图图系统总的 PCB 图如图 3-4 所示:图 3-4 系统的 PCB 图4软件设计4.14.1 主程序流

41、程图主程序流程图系统主程序流程图如图 4-1 所示:初始化单片机开始初始化 DS18B20初始化 HS1101初始化 LED读取温度数据读取湿度数据显示返回图 4-1 系统主程序流程图石家庄经济学院本科生毕业设计- 144.24.2 按键扫描子程序流程图按键扫描子程序流程图按键扫描子程序流程图如图 4-2 所示:KEY1键按下下KEY2键按下检测到温度在正常范围检测到温度不在正常范围异常指示灯工作蜂鸣器报警设定温度值加 1设定温度值减 1正常工作指示灯工作NNNNYYYY图 4-2 按键扫描子程序流程图4.34.3 温度程序流程图温度程序流程图温度报警程序流程图如图 4-2 所示10:石家庄经

42、济学院本科生毕业设计- 15 Y N N Y 图 4-2 温度报警流程图报警开始总线复位跳过 ROM所有 ds18b20开始温度转换延时 1 秒设置匹配 ROM发送 ROM 编号开始温度转换是否超限制温度? 显示温度所有读取完毕 ?石家庄经济学院本科生毕业设计- 16N温度显示模块程序流程图如图 4-3 所示11:图 4-3 温度显示程序流程图4.44.4 湿度程序流程图湿度程序流程图湿度测量部分程序流程图如图 4-4 所示12:检测 DS18B20存在?开始初始化 DS18B20读 DS18B20 的序列号发送跳过 ROM 指令温度转换I=1,等待DS18B20 复位发送 DS18B20 编

43、码读取温度数据Y石家庄经济学院本科生毕业设计- 17图 4-4 湿度测量部分程序流程图5调试结果与总结 在调试的过程中最让人头疼的就是数码显示温度值,总是显示不对,后来才知道是DS18B20 输出的数值要经过十进制转换,加了转换程序后,可正常显示。还有键盘抖动的处理也是一个难点,难就难在是不是恰当合适符合个人操作习惯。经过反复调试,温湿度能够正常显示当前值,而且最佳适宜温度值可以有操作人员根据不同作物的需求进行设定,在当前温度偏离所设定的适宜温度4时,报警装置发光二极管和蜂鸣器即会启动,该系统基本实现了对温湿度的测量与显示,操作人员可以根据显示指示,来判断当前温湿度是否对该大棚内作物生长有利该

44、系统的不足之处在于没能够实现温湿度的自动调节,由于时间仓促和本人知识有湿度处理函数YN定时器 0、1 初始化定时器设置 50mS 定时,启动定时器中断是否中断 60 次,即 3S?读取定时器计数值对计数值求算法得出湿度值,保存,以便显示调用重新设置定时器,计数从头来过,等待 3S 后下一次结果函数返回石家庄经济学院本科生毕业设计- 18限,在设计原理图时,没考虑清楚显示位数,以至该系统无法显示设定湿度,该系统可以进一步加入温湿度自动调节电路,在当前温湿度超出作物所需的最适宜条件时,启动温湿度调节装置,就可以真正的实现温湿度的自动控制。为了验证本系统的准确性,条件有限以至于湿度测量无法验证其准确

45、性,在调试时只对环境温度做了十次测量,时间间隔为一个小时,并与温度计所测量的温度值做了比较。记录如表 5-1 所示:表 5-1 温度测量比较表测量次数测量值()温度计显示值()相对误差()126.026.20.2227.527.40.1327.827.90.1425.525.80.3528.928.80.1625.225.00.2725.826.20.4826.026.30.3926.526.40.11025.225.00.2引起误差的原因,一方面可能是由于受到其它电路的干扰,另一方面传感器本身及周围环境的变化石家庄经济学院本科生毕业设计- 196致 谢本论文是在我的指导老师李明亮的亲切关怀和

46、悉心指导下完成的。作为一个本科生的毕业论文,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,以及一起工作的同学们的支持,想要完成这个设计不是那么容易的。李老师严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。从课题的选择到题目的最终完成,李老师都始终给予我细心的指导和不懈的支持。在此谨向曹老师致以诚挚的谢意和崇高的敬意。本次设计有许多知识是我不知道的,比如单总线的知识,我从头一点一点的学,掌握了如何编写这样的程序,而且此次程序的设计也比较繁冗,是经过改动几次后才完成的,既要考虑硬件间的问题,又得设计软件方案,尽量减少软件麻烦,最后总算找到了一个最适合

47、的设计思想,实现了设计要求。每个学期末的课程实习极大程度的增强了我的动手能力和思考技巧,谢谢院里为我们安排了这样的实习。我还要感谢帮助过我的各位同学,正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑,直至本文的顺利完成。特别感谢我的舍友崔红娟同学,她对本课题做了不少工作,给予我不少的帮助。我还要感谢曾给予我指导的赵占民老师和实验室的田悦新老师、孙思梅老师,在我做毕业设计定方案时赵老师曾悉心指导我应如何做硬件设计,在我需要用到实验室仪器时田老师和孙老师给予了我帮助,使我最终能完成电路图和程序的调试,在这里请接受我诚挚的谢意!还要感谢在大学学习期间给我上课的老师们,是你们让我懂得了更多的道

48、理和知识,感谢你们的培养,最后我还要感谢培养我的母校和含辛茹苦的父母,谢谢你们! 石家庄经济学院本科生毕业设计- 20参考文献1梁中明. 基于 DS18B20 与虚拟 I(2)C 总线的数字温度测量装置设计J.湖北 电子报, 2006 2 张萍.基于数字温度计 DS18B20 的温度测量仪的开发J.自动化仪表,2007(6):64 - 66.3刘迎春传感器原理设计与应用M,北京:国防科技大学出版社,2005:205-2074余成波,胡新宇,赵勇. 传感器与自动检测技术M .北京:高等教育出版社,20065 赵娜,赵刚,等.基于 51 单片机的温度测量系统J.微计算机信息,2007.6 张景元,

49、王江红,巩秀刚.一种单片机控制系统键盘/显示电路的.设计与实现J.电子工程师,2007,7,1-3.27)7 吴兴慧,王彩君.传感器与信号处理M.北京:电子工业出版社,19988苏家健,曹柏荣,汪志峰. 单片机原理及应用技术M .北京:高等教育出版社,20069 马云峰.单片机与数字传感器 DS18B20 的接口设计J.计算机测量与控制 ,2002(4).10 林伸茂.8051 单片机彻底研究基础篇M. 北京:中国电力出版社 ,2007.11马西秦.自动检测技术M,北京:机械工业出版社,200012马忠梅等单片机的 C 语言应用程序设计M,北京:北京航空航天大学出版社,2003.11石家庄经济

50、学院本科生毕业设计- 21程序清单 /*/#include reg52.h#include intrins.h /_nop_();延时函数用#define Disdata P1 /段码输出口#define uchar unsigned char#define uint unsigned intunsigned int S,G,TH,RS;unsigned char B1,B2,B3;/定义数的各位数,分别为百,十,个位uint number;unsigned char num=0;sbit DQ=P20; /温度输入口sbit DIN=P17; /LED 小数点控制sbit LED1=P25;

51、 sbit LED2=P27; sbit BEEP=P21; sbit key1=P22;sbit key2=P23;sbit S1=P00;sbit S2=P01;sbit S3=P02;sbit S4=P03;sbit S5=P04;sbit S6=P05;sbit S7=P06;sbit S8=P07;uint h,T; uint temp;/*温度小数部分用查表法*/uchar code ditab16=0 x00,0 x01,0 x01,0 x02,0 x03,0 x03,0 x04,0 x04,0 x05,0 x06,0 x06,0 x07,0 x08,0 x08,0 x09,0

52、x09; uchar code dis_7 =0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;/共阳 LED 段码表 0 1 2 3 4 5 6 7 8 9 uchar data temp_data2=0 x00,0 x00; /读出温度暂放uchar data display4=0 x00,0 x00,0 x00,0 x00; /显示单元数据,共 3 个数据和一个运算暂用 石家庄经济学院本科生毕业设计- 22/*11us 延时函数*/void del10ms()uint a,b;for(a=40;a!=0;a-)for(

53、b=248;b!=0;b-);void delay(uint t) for (;t0;t-);/*/void timer0()interrupt 1TH0=0 x3C;TL0=0 xB0;/定时 50msnum+;/记到 20 就直接停止/*/void scankey()if ( key1=0) del10ms();if(key1=0)TH+;if (key2=0)del10ms();if(key2=0)TH-;T=display2*10+display1;if (TH-3)T(TH+3)石家庄经济学院本科生毕业设计- 23 LED1=0; LED2=1; BEEP=1;if(TTH+3) B

54、EEP=0; LED1=1; LED2=0;/*显示扫描函数*/scan() S=TH/10; G=TH%10; S8=1;S7=1;S6=1;S5=0;S4=1;S3=1;S2=1;S1=1; Disdata=dis_7display2; delay(200); Disdata=0 x00; S8=1;S7=1;S6=0;S5=1;S4=1;S3=1;S2=1;S1=1; Disdata=dis_7display1; DIN=1; delay(200); Disdata=0 x00; S8=1;S7=0;S6=1;S5=1;S4=1;S3=1;S2=1;S1=1; Disdata=dis_7

55、display0; delay(200); Disdata=0 x00; S8=0;S7=1;S6=1;S5=1;S4=1;S3=1;S2=1;S1=1; Disdata=dis_7S; delay(200); Disdata=0 x00; S8=1;S7=1;S6=1;S5=1;S4=1;S3=1;S2=1;S1=0; Disdata=dis_7G; delay(200); Disdata=0 x00; S8=1;S7=1;S6=1;S5=1;S4=1;S3=1;S2=0;S1=1; Disdata=dis_7B1; delay(200);石家庄经济学院本科生毕业设计- 24 Disdata=0 x00; S8=1;S7=1;S6=1;S5=1;S4=1;S3=0;S2=1;S1=1; Disdata=dis_7B2; DIN=1; delay(200); Disdata=0 x00; S8=1;S7=1;S6=1;S5=1;S4=0;S3=1;S2=1;S1=1; Disdata=dis_7B3; delay(200); Disdata=0 x00;/*DS18B20 复位函数*/ow_reset(void)char presence=1;while(presence) while(presence)DQ=1

温馨提示

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

最新文档

评论

0/150

提交评论