温室大棚温度监测系统设计.docx
《温室大棚温度监测系统设计.docx》由会员分享,可在线阅读,更多相关《温室大棚温度监测系统设计.docx(23页珍藏版)》请在冰豆网上搜索。
温室大棚温度监测系统设计
摘要I
ABSTRACTII
1前言1
1.1系统概述1
1.2单片机控制系统1
2温室大棚环境监测系统方案3
2.1传感器设计方案3
2.2主控制方案4
2.3方案选择5
3温室温度检测设计方案5
3.1温度采集部分的设计6
3.1.1温度传感器DS18B2Q6
3.1.2DS18B20温度传感器与单片机的接口电路12
3.2单片机接口电路的设计13
3.3显示电路的设计15
4系统软件的设计15
4.1显示子程序的设计15
4.2DS18B20数据采集子程序的设计16
5结束语17
参考文献18
致谢19
附录A单片机系统原理图20
温室大棚温度监测系统设计
摘要
随着大棚技术的普及,温室大棚数量不断增多,温室大棚的温度控制成为一
个难题。
目前应用于温室大棚的温度检测系统大多采用由模拟温度传感器、多路
模拟开关、A/D转换器及单片机等组成的传输系统。
这种温度采集系统需要在温室大棚内布置大量的测温电缆,才能把现场传感器的信号送到采集卡上,安装和拆卸繁杂,成本也高。
同时线路上传送的是模拟信号,易受干扰和损耗,测量误差也比较大,不利于控制者根据温度变化及时做出决定。
在这样的形式下。
开发一种实时性高、精度高,能够综合处理多点温度信息的测控系统就很有必要。
本课题提出一种基于单片机并采用数字化单总线技术的温度测控系统应用于温室大棚的的设计方案,该方案是利用温度传感器将温室大棚内温度的变化,变换成电流的变化,再转换为电压变化输入模数转换器,其值由单片机处理,最后由单片机去控制数字显示器,显示温室大棚内的实际温度。
关键字
单片机;温度监测;数字温度传感器
GreenhouseEnvironmentMonitoringSystem
Abstract
Withthepopularizationofgreenhousetechnology,theamountofgreenhouseislargerandlarger.However,thetemperaturecontrolofgreenhouseisbecomingadifficultproblem.Currently,thetemperaturecontrolsystemofgreenhouseismostlyusingatransferssystemwhichconsistsofanalogtemperaturesensorsmultiplexinganalogswitches,A/DconversionunitsandSCM.ThiskindoftemperaturecollectionsystemneedsalotofcableswhichislaidtomakethesignalofthesensorbesenttothecollectioncardinthegreenhouseThustheworkoffixingandtakedownismiscellaneousandthecostishighWhat'smo,whatistransferredinthesystemisanalogsignalswhichareeasilyinterferedandhavemoreullage.ItishardforthecontrollertomakeadecisionintimeaccordingtothechangeoftemperaturebecausethemeasureendrisbiggerSounderthiscircumstanee.itisnecessarytoempolderarealtimeandprecisetemperaturecontrolsystemwhichisinapositiontodealwithtemperatureinformationofmanynods
ThispapergivesagreenhousetemperaturecontrolprojectwhichisbasedupontheSCManddigitalmonobustechnologyInthisproject,thechangeoftemperatureinthegreenhouseistransformedintothechangeofelectriccurrentandthenintothechangeofvoltagebyusingthetemperaturesensorsThechangeofvoltageisinputintotheAFDconversionunitsandtheresultisdealtwithbySCM.AtlasttherealtimetemperatureinthegreenhouseisdisplayedonthemonitorunderthecontrolofSCM.
Keywords
SCM;temperaturemonitoring;digitaltemperaturesensor
1前言
1.1系统概述
温室是设施农业的重要组成部分,国内外温室种植业的实践经验表明,提高温室的自动控制和管理水平可充分发挥温室农业的高效性。
随着传感技术,计算机技术及通讯技术的迅猛发展,现代化温室信息自动采集及智能控制系统的开发已成为目前设施农业的一个研究热点。
温室是以透光材料为全部或部分围护结构材料,可供冬季或其他不适宜露地植物生长的季节栽培植物的建筑的统称。
它通过人工干预
的方式来对指定区域内的温度、湿度、光照强度、二氧化碳浓度、土壤水分、养分等诸多影响作物生长的因素进行调控,使之适合所培育
作物的生长需要。
由于它摆脱了地点、季节、气候变化等的影响和限制,能有效的改善农业生态和生产条件,促进农业资源的科学开发和合理利用,提高了土地出产率、劳动生产率、社会效益和经济效益,有利于可持续发展。
因此在世界范围内得到了广泛的运用。
温室控制系统从大的角度来讲主要可以分为两个组成部分,即软
件系统和硬件装置,软件系统的核心就是控制思想也就是控制算法,硬件装置一般是指温室环境测控设备的有机组成。
本文主要研究中国
温室目前的测控装置类型,这一问题是科学合理地控制温室环境的基础之一。
1.2单片机控制系统
目前,温室控制器的结构主要是以单片机为主控板的控制系统。
一般以MCS51系列为基础,采用8位CPU,从数据采样到算法控制都是由单片机完成的。
其拓扑结构为集中式控制方式。
该类控制方式
的优点是能够全局管理,操作简单,价格低廉,如图1.1所示
图1.1单片机控制系统结构框图
本设计运用主从分布式思想,由一台上位机(PC微型计算机)和一台下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统。
温度值既可以送回主控PC进行数据处理,由显示器显示,也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制。
下位机采用的是单片机基于数字温度传感器DS18B20的系统。
DS18B20利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网络,系统的抗干扰性好、设计灵活、方便,而且适合于在恶劣的环境下进行现场温度测量。
温度检测系统有则共同的特点:
测量点多、环境复杂、布线分散、现场离监控室远等。
若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。
这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降。
所以多点温度检测系统的设计的关键在于两部分:
温度传感器的选择和主控单元的设计。
温度传感器应用范围广泛、使用数量庞大,也高居各类传感器之首。
2温室大棚环境监测系统方案
2.1传感器设计方案
方案一:
采用热敏电阻,可满足40C至90C测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1C的信号是不适用的。
而且在温度测量系统中,采用单片温度传感器,比如AD590,LM35等•但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使得测温装置的结构较复杂。
另外,这种测温装置的一根线上只能挂一个传感器,不能进行多点测量.即使能实现,也要用到复杂的算法,一定程度上也增加了软件实现的难度。
方案二:
在多点测温系统中,传统的测温方法是将模拟信号远距离采样进行AD转换,而为了获得较高的测温精度,就必须采用措施解决由长线传输,多点测量切换及放大电路零点漂移等造成的误差补偿问题。
采用数字温度芯片DS18B20测量温度,输出信号全数字化。
便于单片机处理及控制,省去传统的测温方法的很多外围电路。
且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。
在0—100摄氏度时,最大线形偏差小于1摄氏度。
DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。
这样,测温系统的结构就比较简单,体积也不大,且由于AT89C51可以带多个DSB1820,因此可以非常容易实现多点测量.轻松的组建传感器网络。
温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势。
部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。
而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。
所以集成芯片的使用将成为电路发展的一种趋势。
因此本设
计采用时DS18B20这一温度芯片,同时也是顺应这一趋势。
2.2主控制方案
方案一:
此方案采用PC机实现。
它可在线编程,可在线仿真的功能,这让调试变得方便。
且人机交互友好。
但是PC机输出信号不能直接与DS18B20通信。
需要通过RS232电平转换兼容,硬件的合成在线调试,较为繁琐,很不简便。
而且在一些环境比较恶劣的场合,PC机
的体积大,携带安装不方便,性能不稳定,给工程带来很多麻烦。
方案二:
此方案采用AT89C51八位单片机实现。
单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制。
而且体积小,
硬件实现简单,安装方便。
既可以单独对多DS18B20控制工作,还
可以与PC机通信。
运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统,实现远程控制。
另外AT89C51在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。
2.3方案选择
系统采用针对传统温度测温系统测温点少,系统兼容性及扩展性较差的特点,运用分布式通讯的思想。
设计一种可以用于大规模多点温度测量的巡回检测系统。
该系统采用的是RS-232串行通讯的标准,通过下位机(单片机)进行现场的温度采集,温度数据既可以由下位机模块实时显示,也可以送回上位机进行数据处理,具有巡检速度快,扩展性好,成本低的特点。
实际采用电路方案如图2.1所示。
图2.1采用电路方案
3温室温度检测设计方案
在普通的室内温度检测中,可用一般的温度传感器,通过AD转
换之后,由数码管直接显示该室内的温度⑴。
但是普通型传感器芯片不仅体积大,而且输出的信号都是模拟信号,必须经过A/D转换后
才能被处理器识别,而且不能实现多点温度的测量,最大的缺点就是它的精度不是很高。
而在要求精度很高的温度控制中,显然普通的温度采集和显示系统已不能满足设计的需要。
因此,针对此现状,本文设计了一种由单片机控制的智能温度采集与显示系统。
它以AT89C51
单片机为核心,实现对温度信号的显示。
与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式,可在-55—+125C的范围内测量温度。
从中央处理器到DS18B20仅需连接一条信号线和地线,其指令信息和数据信息都经过单总线接口与DS18B20进行数据交换,且每个DS18B20有唯一的系列号。
因此同一条单总线上可以挂接多个DS18B20,构成主从结构的多点测温传感器网络。
而在显示方面采用数码管显示。
它利用89C51单片机的强大功能和可扩充性为后盾,可实现对某一路温度和温度的上下限进行有效的控制与输出。
硬件系
统总的原理图见附录A。
3.1温度采集部分的设计
3.1.1温度传感器DS18B20
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能
直接读出被测温度,并且可根据实际要求通过简编程实现9-12位的
数字值读数方式。
DS18B20的外部形状及管脚图如图3.1所示
I/O
CJTD
1IC
1
8
2
3
DS1BB20
-1
S
SOSI封越
■Vcc
-HC■UC
.me
图3.1DS18B20外部形状及管脚图
TO-92封装的DS18B20的引脚排列如图3.2所示,其引脚功能
描述见表3.1所示
图3.2DS18B20底视图
表3.1DS18B20详细引脚功能描述
序号
名称
引脚功能描述
1
GND
地信号
2
DQ
数据输入/输出引脚。
开漏单总线接口引脚。
当被用着在寄生电源下,也可以向器件提供电源。
3
VDD
可选择的VDD引脚。
当工作于寄生电源时,此引脚必须接地。
DS18B20的性能特点如下:
1)独特的单线接口仅需要一个端口引脚进行通信;
2)多个DS18B20可以并联在惟一的三线上⑸,实现多点组网功能;
3)无须外部器件;
4)可通过数据线供电,电压范围为3.0-5.5V;
5)零待机功耗;
DS18B20采用3脚PR—35封装或8脚SOIC封装,其内部结构框图如图3.3所示。
图3.3DS18B20内部结构图
64位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。
温度报警触发器TH和TL,可通过软件写入户报警上下限。
DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。
高速暂存RAM的结构为8字
节的存储器。
头2个字节包含测得的温度信息,第3和第4字节TH
和TL的拷贝,是易失的,每次上电复位时被刷新。
第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。
DS18B20
工作时寄存器中的分辨率转换为相应精度的温度数值。
该字节各位的
定义如图3.3所示。
低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。
TM
R1
R0
1
1
1
1
1
图3.3DS18B20字节定义
DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。
因此,在实际应用中要将分辨率和转换时间权衡考虑。
高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。
第9字节读出前面所有8字节的CRC码,可用来检验数据,
从而保证通信数据的正确性。
当DS18B20接收到温度转换命令后,开始启动转换。
转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。
单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625C/LSB形式表示[3]。
当符号位S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S=1时,表示测得的温度值为负值,要先
将补码变成原码,再计算十进制数值。
一部分温度值对应的二进制温度数据如表3.2所示
表3.2DS18B20温度转换时间表
R1
R0
分辨率/位
温度最大转向时间/ms
0
0
9
93.75
0
1
10
187.5
1
0
11
375
1
1
12
750
DS18B20完成温度转换后,就把测得的温度值与RAM中的TH、TL字节内容作比较。
若T>TH或TVTL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令作出响应。
因此,可用多只DS18B20同时测量温度并进行报警搜索。
在64位ROM的最高有效字节中存储有循环冗余检验码(CRC)。
主机ROM的前56位来计算CRC值,并和存入DS18B20的CRC值作比较,以判断主机收到的ROM数据是否正确。
DS18B20的测温原理是这这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信
号作为减法计数器2的脉冲输入。
器件中计数门打开时,DS18B20
就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。
计数门的开启时间由咼温度系数振荡器来决定,每次测量前,首先将
-55C所对应的一个基数分别置入减法计数器1、温度寄存器中,计
数器1和温度寄存器被预置在-55C所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时,温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。
一部分温度对应值表如表3.3所示。
其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大致为被测温度值。
DS18B20测温原理如图3.4所示。
图3.4DS18B20测温原理
另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。
系统对DS18B20的各种操作按协议进行。
操作协议为:
初使化DS18B20(发复位脉冲)-发ROM功能命令-发存储器操作命令-处理数据。
表3.3一部分温度对应值表
温度/C
—进制表示
十八进制表示
+125
00000111
11010000
07D0H
+85
00000101
01010000
0550H
+25.0625
00000001
10010000
0191H
+10.125
00000000
10100001
00A2H
+0.5
00000000
00000010
0008H
0
00000000
00001000
0000H
-0.5
11111111
11110000
FFF8H
-10.125
11111111
01011110
FF5EH
-25.0625
11111110
01101111
FE6FH
-55
11111100
10010000
FC90H
3.1.2DS18B20温度传感器与单片机的接口电路
DS18B20可以采用两种方式供电⑷,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。
另一种是寄生电源供电方式,为保证在有效的DS18B20时钟周期内提供足够
的电流,可用一个MOSFET管来完成对总线的上拉。
当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉。
采用寄生电源供电方式时VDD端接地。
由于单线
制只有一根线,因此发送接口必须是三态的。
由于DS18B20是在一
根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。
DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。
该协议定义了几种信号的时序:
初始化时序、读时序、写时序。
所有时序都是将主机作为主设备,单总线器件作为从设备。
而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件
回送数据,在进行写命令后,主机需启动读时序完成数据接收。
数据和命令的传输都是低位在先。
89S52是ATmel公司的产品,与MCS-51兼容⑵。
芯片内部带有8K快速擦写程序存储器(可擦写次数可达1000次);运算速度快频率可达33兆赫兹;32位110口总线:
三个16位的定时1计数器。
AT89S52单片机有如下标准特性:
兼容MCS-51微控制器;8K字节FLASH存贮器支持在系统编程ISP1000次擦写周期;256字节的数据存储器(RAM);工作电压4.0V到5.5V;全静态时钟OHz到33MHz;三级程序加密;32个可编程I/O口;3个16位定时/计数器;8个中断源;全双工UART;完全的双工UART串行口;低功耗支持Idle和Power-down模式;Power-down模式支持中断唤醒;看门狗定时器:
双数据指针;上电复为标志。
同时该芯片还具有PDIP,TQFP
和PLCC等三种封装形式,以适应不同产品的需求。
3.2单片机接口电路的设计
温度信号由DS18B20检测由P2.7口输入到单片机中进行处理,
显示部分通过单片机的P1.0口、P1.1口、P1.2口通过MAX7219驱
动LED数码管完成。
单片机的时钟电路利用芯片内部振荡电路,在
XTALI,XTAL2的引脚上外接定时元件内部振荡器便能产生自激振荡,定时元件可以采用石英晶体和电容组成的并联谐振电路。
晶振可
以在1.2MHz-12MHz之间任选,本电路选11.0692MHz。
电容通常在
20pF-6OpF之间选择,通常为30pF左右,本电路选30pF,电容器
2345
C1和C2的大小对振荡频率有微小影响,可起频率微调作用。
在设计印刷电路板时,晶体和电容应尽可能与单片机芯片靠近,以减少寄生电容,保证振荡器的可靠工作,一般采用瓷片电容。
接口电路如图
3.5所示。
J?
AT89S52
CON
Q?
PNP
bellOC
1
2
3
4
5
厂
7
—8
IVCC
12
913
14
R?
RES215
29
10
11
20
9
9
P1.0
8
P1.1
7
P1.2
6
P1.3
3
P1.6
2
P1.7
1
P3.2
P3.3
P3.4