基于at89s52单片机的温湿度检测系统设计_第1页
基于at89s52单片机的温湿度检测系统设计_第2页
基于at89s52单片机的温湿度检测系统设计_第3页
基于at89s52单片机的温湿度检测系统设计_第4页
基于at89s52单片机的温湿度检测系统设计_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

基于AT89S52单片机的温湿度检测系统设计摘要随着人们的生活及其生产水平的不断提高,对生活环境和生产环境的要求就显的尤为重要,温湿度的控制就是一个典型的例子,因此温湿度检测系统就是现代生产生活中应运而生的一种智能、快捷、方便可靠的检测系统,特别是在工业生产中如果检测得不准确就会发生许多的生产事故。如化工生产中对温度的检测不当就会导致生产效率的降低和产品质量的下降。而现在所使用的温湿度检测系统通常都是精度为1或01的水银、煤油或酒精温度计进行的温度检测和用传统的物理模拟量的方法进行的湿度检测。这些温湿度检测计的刻度间隔通常都很密,不容易准确分辨,读数困难,而且他们的热容量还比较大,达到热平衡所需的时间较长,因此很难读准,并且使用非常不方便。要为现代人工作、科研、生活提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。本设计是以单片机(AT89C51)为核心,配合温度传感器(AD590)和湿度传感器HIH3610,以及相关的外围电路组成的检测系统,可以接收所测环境的温度和湿度信号,检测人员可以通过数码管显示的数据,实时监控环境的温度和湿度情况。所有的测量操作都可以通过主机控制软件来实现,温度和湿度传感器得到的测量信号,经电路转换为电信号,然后通过一定的放大经过芯片TLC549A/D转换送到单片机进行数据处理,经软件分析处理后送显示装置。本系统包括系统硬件和软件设计,可靠性高,结构简单,实现了对温湿度的自动调节。系统还应用RS232与上位机相连接,可以设置自动记录温度、湿度的相关的参数,也可以设置每隔一定的时间自动记录,可用在气象的观察方面。关键词AT89S52单片机,温度传感器,湿度传感器,A/D转换,LED显示目录第1章概述311课题的研究背景312温湿度检测的发展状况以及存在的问题313本课程设计的主要内容4第2章系统总体方案设计621温度传感器6211温度传感器主要特性6212AD590的工作原理6213电路设计722湿度传感器8221湿度传感器主要特性823A/D转换器10231A/D转换器主要特性10232TLC549工作原理1124单片机AT89S5212241AT89S52主要特性12第3章系统的硬件设计和连接1531主控模块1532现实模块1533A/D转换模块1634温度和湿度模块16341温度信号采集的设计16342湿度信号采集的设计1735继电器控制电路1736TLC549与AT89S52的接口电路设计1837键盘设计1938输出驱动的设计1939与上位机相连电路的设计20310电源电路的设计21311报警电路设计21第4章系统软件方案的设计2241程序流程图22411温湿度主程序流程图23412报警器流程图23413A/D转换子程序流程图23414键盘中断流程图2442程度清单24421温度采集初始化程序24422湿度采集初始化程序25423显示电路程序25424制交流蜂鸣器发声程序2643上位机软件设计27431系统进入界面程序27432实时显示界面28433历史数据界面29第5章总结与展望31参考文献32第1章概述11课题的研究背景工业生产中有些场合需要使用精密的机台设备,这些设备的精密度高、价格高,因此为了保证产品的质量及机台的使用寿命,对其环境的要求也很高,尤其的是对温度、湿度的控制。例如在我工作的生产发光二极管LED的工业现场,前面的两道工序固晶片和焊线要求的精度非常高,晶片必须固到碗杯的中心点,偏差不可超过1/5晶片的宽度,且对胶量的控制也有严格的要求,只有这道工序做好了,下一个工序焊线才会顺利,否则焊线将会出现很多异常,不仅会降低产量也会造成质量问题,因此要求每三个小时记录一次室内的温湿度,且要保证其温度在1823之间,湿度不可超过60。随着信息产业的发展及工业化的进步,温度和湿度不仅仅表现在以上几个方面直接或间接影响着人类基本生活条件,还表现在对工生物制品、医药卫生、科学研究、国防建设等方面的影响。针对以上情况,研制可靠且实用的温湿度控制器显得非常重要。常用温湿度传感器的非线性输出及一致性较差,使温湿度的测量方法和手段相对较复杂,且给电路的调试带来很大的困难。传统的温湿度测量多采用模拟小信号传感器,不仅信号调理电路复杂,且温湿度值的标定过程也极其复杂,并需要使用昂贵的标定仪器设备。因此对于温湿度控制器的设计有着很大的现实生产意义。本文设计的是基于单片机AT89S52的温湿度检测和控制系统,主要以广泛应用的AD590和HIH3610作为温度和湿度的检测,该仪器具有测量精度高、硬件电路简单、并能很好的进行显示,可测试不同环境温湿度的特点。另外和控制电路相连,可以进行加湿电路和除湿电路的控制,使温度和湿度参数在预先设定的范围内,不需要人的直接参与。本系统还通过RS232和上位机相连,可以设置每隔一定的时间进行温度和湿度的采集,上传到上位机,以供查询。12温湿度检测的发展状况以及存在的问题传统的温度和湿度检测系统主要有以下几种(1)水汽压(E)是水汽在大气总压力中的分压力。它表示了空气中水汽的绝对含量的大小,以毫巴为单位。(2)相对湿度(RH)湿空气中实际水汽压E与同温度下饱和水汽压E的百分比,相对湿度的大小能直接表示空气距离饱和的相对程度。空气完全干燥时,相对湿度为零。相对湿度越小,表示当时空气越干燥。当相对湿度接近于100时,表示空气很潮湿,越接近于饱和。(3)露点(或霜点)温度指空气在水汽含量和气压都不改变的条件下,冷却到饱和时的温度。(4)干湿球温度表用一对并列装置的、形状完全相同的温度表,一支测气温,称干球温度表,另一支包有保持浸透蒸馏水的脱脂纱布,称湿球温度表。(5)发湿度表(计)利用脱脂人发(或牛的肠衣)具有空气潮湿时伸长,干燥时缩短的特性,制成毛发湿度表或湿度自记仪器,它的测湿精度较差,毛发湿度表通常在气温低于10时使用。(6)电阻式湿度片利用吸湿膜片随湿度变化改变其电阻值的原理,常用的有碳膜湿敏电阻和氯化锂湿度片两种。前者用高分子聚合物和导电材料碳黑,加上粘合剂配成一定比例的胶状液体,涂覆到基片上组成的电阻片;后者是在基片上涂上一层氯化锂酒精溶液,当空气湿度变化时,氯化锂溶液浓度随之改变从而也改变了测湿膜片的电阻。(7)薄膜湿敏电容是以高分子聚合物为介质的电容器,因吸收(或释放)水汽而改变电容值。它制作精巧,性能优良,常用在探空仪和遥测中。随着智能检测系统的飞速发展,基于单片机的温湿度检测系统将多传感器系统结合在一起。如何把多传感器集中于一个检测控制系统,综合利用来自多传感器的信息,获得对被测对象的可靠了解和解释,以利于系统做出正确的响应、决策和控制,是智能检测控制系统中需要解决的首要问题。在温湿度要求严格的场合,利用多传感技术可以提高系统的可靠性和精度,亦可以提高系统的时间空间的覆盖范围。13本课程设计的主要内容单片机是系统的控制核心,所以单片机的性能关系到整个系统的好坏。因此单片机的选择,对所设计系统的实现以及功能的扩展有着很大的影响。单片机种类很多,在众多51系列单片机中,较为常用的是ATMEL公司的AT89C51和AT89S52单片机,AT89C51片内4KROM是FLASH工艺的,使用专用的编程器自己就可以随时对单片机进行电擦除和改写,片内有128字节的RAM。而AT89S52含有在系统可编程的FLASH存储器,片内有8K闪存,RAM的容量也较AT89C51大,为256字节。显然这种单片机优点更多,开发时间也大为缩短。因此,在本次设计中选用了ATMEL公司的AT89S52单片机。温湿度信号的采集为模拟信号,而单片机接收的为数字信号,因此需要进行A/D转换,在需要进行多路A/D转换时,目前常采用多通道A/D转换器,如ADC0809、AD574等。这些转换器多为8通道,电路较为复杂。如果只需完成单个通道8位转换,且速度要求不高时,采用TLC549是一种较好的选择,TLC549是单通道的A/D转换芯片,8位开关电容型逐次逼近模数转换器,它具有三个控制输入端,采用简单的3线串行接口可方便地与微处理器进行连接,且价格适中,是作为A/D转换的最佳选择器件之一。键盘接口电路较为简单,而显示部分有两种方案供选择一种为LCD,一种为LED。LCD液晶显示的像素单元是整合在同一块液晶版当中分隔出来的小方格。通过数码控制这些极小的方格进行显像。显示非常细腻但是造价很高。而LED数码显示中每一个像素单元就是一个发光二极管,如果是单色,一般是红色发光二极管。如果是彩色,一般是三个三原色小二极管组成的一个大二极管。这些二极管组成的矩阵由数码控制实时显示文字或图象,造价相对低廉,显示效果也较好。由于单片机工作现场存在着各种干扰,为保证系统的可靠工作,本设计选择了常用的看门狗芯片X5045,以实现对单片机的复位,监控等功能。软件程序的设计也考虑了抗干扰措施。本设计中,最终选用的集成温度传感器AD590是美国模拟器件公司生产的集成两端感温电流源,通过对电流的测量可得到所需要的温度值。湿度传感器是采用了HIH3610相对湿度传感器它是一种热固聚脂电容式传感器。采集到的湿度信号再配以进行适当的放大,经过A/D转换送至单片机,实现湿度的显示与控制。系统主要由以上元器件组成,通过硬件电路和软件程序的设计,实现系统的基本功能。第2章系统总体方案设计本设计是基于单片机对数字信号的高敏感和可控性、温湿度传感器可以产生模拟信号,和A/D模拟数字转换芯片的性能,此设计以AT89S52基本系统为核心的一套检测系统,其中包括A/D转换、单片机、复位电路、温度检测、湿度检测、键盘及显示、报警电路、系统软件等部分的设计。系统总体方框图如图21。图21系统总体框图本设计由信号采集、信号分析和信号处理三个部分组成的1信号采集由AD590、HIH3610及多路开关CD4051组成;2信号分析由A/D转换器TLC549芯片、单片机AT89S52基本系统组成;3信号显示由串行口LED显示器和报警电路组成。21温度传感器集成温度传感器AD590是美国模拟器件公司生产的集成两端感温电流源。AD590是电流型温度传感器,通过对电流的测量可得到所需要的温度值。211温度传感器主要特性流过器件的电流A等于器件所处环境的热力学温度开尔文度数IR/T1,式中,IR流过器件AD590的电流,单位为A;T热力学温度,单位为K;AD590的测温范围为55150;AD590的电源电压范围为AD590温度检测HIH3610湿度检测及信号放大单片机AT89S52串行口LED显示报警电路芯片TLC549A/D转换芯片TLC549A/D转换430V,可以承受44V正向电压和20V反向电压,因而器件即使反接也不会被损坏;输出电阻为710M;精度高,AD590在55150范围内,非线性误差仅为03。212AD590的工作原理AD590温度感测器是一种已经IC化的温度感测器,它会将温度转换为电流。其规格如下温度每增加1,它会增加1A输出电流。可量测范围55至150。供应电压范围4V至30V。AD590的接脚图及零件符号如图22所示图22AD590的接脚图及零件符号AD590的输出电流是以绝对温度零度273为基准,每增加1,它会增加1A输出电流,因此在室温25时,其输出电流IO27325298A。VO的值为IO乘上10K,以室温25而言,输出值为298V10K298A。量测VO时,不可分出任何电流,否则量测值会不准。213电路设计AD590的输出电流I273TAT为摄氏温度,因此量测的电压V为273TA10K273T/100V。为了将电压量测出来又需使输出电流I不分流出来,我们使用电压追随器其输出电压V2等于输入电压V。由于一般电源供应较多零件之后,电源是带噪声的,因此我们使用齐纳二极管作为稳压零件,再利用可变电阻分压,其输出电压V1需调整至273V。接下来我们使用差动放大器其输出VO为(100K/10K)(V2V1)T/10,如果现100K20K10K20K10K100K12V12V5V12V5V12VV1V212V5VV0OP1OP2OP3在为摄氏28,输出电压为28V,输出电压接A/D转换器,那么A/D转换输出的数字量就和摄氏温度成线形比例关系。AD590温度传感器使用原理如图23。图23AD590温度传感器使用原理图22湿度传感器本设计中采用相对湿度传感器HIH3610。HIH3610是美国HONEYWELL公司生产的相对湿度传感器,该传感器采用热固聚酯电容式传感头,同时在内部集成了信号处理功能电路,因此该传感器可完成将相对湿度值变换成电容值,再将电容值转换成线性电压输出的任务,同时该传感器还具有精度高、响应快、高稳定性、低温漂、抗化学腐蚀性能强及互换性好等优点。图24湿度传感器HIH3610外观图221主要特性(1)热固性聚合物电容传感器,带集成信号处理电路;(2)3针可焊塑封;(3)宽量程0100RH非凝结,宽工作温度范围4085;(4)高精度2RH,极好的线形输出;(5)5VDC恒压供电,0839VDC放大线形电压输出;(6)低功耗设计200A驱动电流;(7)激光修正互换性;(8)快速响应5秒慢流动的空气中;(9)稳定性好,低温飘,抗化学腐蚀性能。图25HIH3610电压与湿度特性曲线测量范围/RH测量精度/RH电源电压/V电源电流A输出范围或输出形式工作温度范围/主要特点01002/245820008V39V4085线性电压输出线,性能最好,抗污染能力最强表1HIH3610主要技术指标由输出电压与相对湿度关系曲线可得出如下结论(1)HIH3610在供电电压为5V时,其消耗电流仅为200A,故HIH3610湿度传感器对电源没有功率方面的要求,为低功耗产品的设计提供更好的解决方案。(2)HIH3610输出电压为VOVI00062RH0016(公式1)即输出电压VO不仅正比于温度测量值,且与电源电压值VI有关,若VI固定为5V,则其值仅由相对温度值决定。(3)HIH3610测量的湿度值还与环境温度有关,故应进行温度补偿,补偿公式为RHRH0/10546000216T(公式2)式中T为环境摄氏温度值。利用HIH3610的线性电压输出可直接输入到控制器或其他装置。一般仅需取出200A电流,HIH3610系列测湿传感器就能理想地用于低引出、电池供电系统。HIH3610系列测湿传感器作为一个低成本、可软焊的单个直插式组建(SIP)提供仪表测量质量的相对湿度(RH)传感性能。RH传感器可用在二引线间有间距的配量中,它是一个热固塑料型电容传感元件,其芯片内具有信号处理功能。传感元件的多层结构对应用环境的不利因素,诸如潮湿、灰尘、污垢、油类和环境中常见的化学品具有最佳的抗力。23A/D转换器本电路设计A/D转换部分主要核心部分采用高性价比的A/D转换芯片TLC549,以下进行详细介绍231主要特性TLC549是德州仪器公司生产的8位串行A/D转换器芯片,可与通用微处理器、控制器通过I/OCLOCK、DATA三条口线进行串行接口。具有4MHZ片CS内系统时钟和软、硬件控制电路,转换时间最长17S,TLC548允许的最高转换速率为45500次/S,TLC549为40000次/S。总失调误差最大为05LSB,典型功耗值为6MW。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,VREF接地,VREFVREF1V,可用于较小信号的采样。TLC549引脚图如下图所示TLC549的极限参数如下图27TLC549的引脚图电源电压65V;输入电压范围03VVCC03V;输出电压范围03VVCC03V;峰值输入电流任一输入端10MA;总峰值输入电流所有输入端30MA;工作温度070TLC549I4085TLC549M55125232TLC549工作原理TLC549有片内系统时钟,该时钟与I/OCLOCK是独立工作的,无须特殊的速度或相位匹配。当CS为高时,数据输出DATAOUT端处于高阻状态,此时I/OCLOCK不起作用。这种CS控制作用允许在同时使用多片TLC549时,共用I/OCLOCK,以减少多路片A/D并用时的I/O控制端口。一组通常的控制时序为1将置低。内部电路在测得下降沿后,再等待两个内部时钟上升CSCS沿和一个下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位D7位输出到DATAOUT端上。2前四个I/OCLOCK周期的下降沿依次移出第2、3、4和第5个位D6、D5、D4、D3,片上采样保持电路在第4个I/OCLOCK下降沿开始采样模拟输入。3接下来的3个I/OCLOCK周期的下降沿移出第6、7、8D2、D1、D0个换位。4最后,片上采样保持电路在第8个I/OCLOCK周期的下降沿将移出第6、7、8D2、D1、D0个转换位。保持功能将持续4个内部时钟周期,然后开始进行32个内部时钟周期的A/D转换。第8个I/OCLOCK后,必须为高,或CSI/OCLOCK保持低电平,这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。如果为低时I/OCLOCK上出现一个有效干扰脉冲,则微CS处理器/控制器将与器件的I/O时序失去同步;若为高时出现一次有效低电S平,则将使引脚重新初始化,从而脱离原转换过程。在36个内部系统时钟周期结束之前,实施步骤14,可重新启动一次新的A/D转换,与此同时,正在进行的转换终止,此时的输出是前一次的转换结果而不是正在进行的转换结果。若要在特定的时刻采样模拟信号,应使第8个I/OCLOCK时钟的下降沿与该时刻对应,因为芯片虽在第4个I/OCLOCK时钟下降沿开始采样,却在第8个I/OCLOCK的下降沿开始保存。24单片机AT89S52AT89S52是一种低功耗、高性能CMOS八位微控制器,具有8K在系统可编程FLASH存储器,使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上FLASH允许ROM在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使其为众多嵌入式控制应用系统提供灵活的解决方案。241主要特性1与MCS51单片机产品兼容;28K字节在系统可编程FLASH存储器;31000次擦写周期;4全静态操作0HZ33HZ;5三级加密程序存储器;632个可编程I/O口线;7三个16位定时器/计数器;8八个中断源;9全双工UART串行通道;10低功耗空闲和掉电模式;11掉电后中断可唤醒;图28AT89S52芯片的引脚图12看门狗定时器;13双数据指针;14掉电标识符。如图28所示AT89S52芯片的引脚图VCC电源VSS地P0口8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在FLASH编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P10和P12分别作定时器/计数器2的外部计数输入(P10/T2)和定时器/计数器2的触发输入(P11/T2EX),具体如表31所示。在FLASH编程和校验时,P1口接收低8位地址字节。P2口具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个引脚号第二功能P10T2(定时器/计数器T2的外部计数输入),时钟输出P11T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P15MOSI(在系统编程用)P16MISO(在系统编程用)P17SCK(在系统编程用)表2P1口引脚的功能TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在方位外部程序存储器或用16位地址读取外部数据存储器时,P2口送出高八位地址。在FLASH编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动四个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如表3所示。RST复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。DISRTO默认状态下,复位高电平有效。ALE/控制信号(ALE)是访问外部程序存储器时,锁存低8位地址PROG的输出脉冲。在FLASH编程时,此引脚()也用作编程输入脉冲。PROG在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。引脚号第二功能P30RXD(串行输入)P31TXD(串行输出)P32(外部中断0)0INTP33(外部中断1)1P34T0(定时器0外部输入)P35T1(定时器1外部输入)P36(外部数据存储器写选通)WRP37(外部数据存储器读选通)D表3P3口引脚的第二功能外部程序存储器选通信号()是外部程序存储器选通信号。PSENPSEN当89S52从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而在访问外部数据存储器时,将不被激活。/VPP访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部A程序存储器读取指令,必须接地。EA为执行内部程序指令,应该接VCC。在FLASH编程期间,也接收12伏VPP电压。XTAL1振荡器反相放大器和内部时钟发生电路的输入端。XTAL2振荡器反相放大器的输出端。第3章系统的硬件设计和连接31主控模块采用AT89S52单片机作为系统的控制器。PL口控制数码管显示温度和湿度值。P2口与TLC549连接实现湿度模拟电压量转换为数字量便于单片机处理。键盘控制采用PO口其中POO是温度的设置,PO1是湿度的设置,PO2PO3是分别对温度与湿度的上下限值进行设置。原理如下图图31AT89S52单片机各引脚功能32显示模块系统采用动态显示方式驱动6个数码管工作,其中4个数码管用来显示温度值,2个用来显示检测到的湿度值。用74LSL38的输入端来选择位码单片机的P1口控制数码管的断码。如检测到的温度与湿度发生变化时,数码管即会发生相应的变化,起到实时显示功能,电路如图32。图32现实模块连接电路33AD转换模块采用TLC549转换芯片,用于实现模拟量向数字量的转换,由于模拟转换电路的种类很多,选择AD转换器从速度,精度和价格方面考虑其内部是8路模拟选通开关。以及相应的通道抵制锁存译码电路,转换时间最长17S左右,单电源供电。34温度和湿度采集模块341AD590温度传感器使用原理21AD590348KGNVC67BPAD590的输出电流I273TAT为摄氏温度,因此量测的电压V为273TA10K273T/100V。为了将电压量测出来又需使输出电流I不分流出来,我们使用电压追随器其输出电压V2等于输入电压V。图33AD590的电路原理图342湿度信号采集的设计湿度的检测方法,一般采用湿敏元件检测,分为湿敏电阻和湿敏电容两种情况。基于本次设计,采用了HIH3610相对湿度传感器它是一种热固聚脂电容式传感器。采集到的湿度信号再配以进行适当的放大,经过A/D转换送至单片机。实现湿度的显示与控制。电路连接图如图38所示。其湿度传感器用一个电解电容代替。图34湿度检测模块与单片机的连接图35继电器控制电路电磁式继电器具有结构简单、工作可靠、坚固耐用、价格便宜等优点应用极其广泛,它是最为典型和常用的继电器。本电路采用常闭继电器由单片机控制,当温度或湿度异常时,继电器开始工作且开关切断电源,小灯熄灭,从而起到保护系统的作用。其电路如图4。图35继电器控制电路36TLC549与AT89S52的接口电路设计本设计采用TLC549与单片机AT89S52相连实现电信号的转换与采集,TLC549具有转换误差小,与单片机接口简单的特点,连接图如下图36所示。图36TLC549与AT89S52的连接图37键盘设计用了几个简单的按键将它们拼成了一个简易的键盘。为提高CPU的效率,键盘采用中断方式。按键对单片机的接口电路图如图37所示。这里的键盘我并没有用专业的键盘。因为如果利用通讯接口连接带有专业键盘的上位机,就显得华而不实。图37按键对单片机的接口电路图38输出驱动的设计将继电器接到单片机AT89S52的P15、P16口,开关输出控制加湿或者除湿装置电路,单片机将采集到的温湿度数字量与预设的基准上下限进行运算比较处理后,从P15、P16口输出驱动电磁继电器,对温湿度装置进行调节,以及电源通断等控制。驱动电路与单片机的连接电路如图38所示。当检测的湿度值高于设定的湿度值范围时,单片机AT89C52将使P16输出低电平,停止加湿器加湿同时使P15输出高电平,使除湿器进行除湿;当检测的湿度值低于设定的湿度值范围时,单片机AT89S52将使P15输出低电平,停止除湿器除湿同时使P16输出高电平,使加湿器进行加湿。图38驱动电路与单片机的连接39与上位机相连电路的设计通过和MAX232和上位机相连接,如图39所示。在大气气候的检测中需要做记录时,可以通过设置单片机的参数,每隔一定的时间进行自动的做记录,省去人工的记录麻烦。MAX232的T1IN和单片机的P32相连,R1OUT和单片机的P31相连。图39单片机系统与上位机的连接310电源电路的设计采用全桥整流电路将交流电压转化为直流电压,系统硬件电路要求电源额定电压为5V,单片机系统要求电源电压的纹波系数尽可能小,基于以上要求,选用固定输出线形稳压集成器LM78H05。该稳压器的输入电压VIN在7V35V的范围变化,输出电压可保证为5V输出和A/D转换芯片TLC549的电源电压。该稳压器还具有过热保护和过压保护功能,线性稳压结构可使电源纹波系数降低。图310电源电路的设计311报警电路设计本设计采用峰鸣音报警电路。峰鸣音报警接口电路的设计只需购买市售的压电式蜂鸣器,然后通过MCS51的1根口线经驱动器驱动蜂鸣音发声。压电式蜂鸣器约需10MA的驱动电流,可以使用TTL系列集成电路7406或7407低电平驱动,也可以用一个晶体三极管驱动。在图中,P32接晶体管基极输入端。当P32输出高电平“1”时,晶体管导通,压电蜂鸣器两端获得约5V电压而鸣叫;当P32输出低电平“0”时,三极管截止,蜂鸣器停止发声。图311三极管驱动的峰鸣音报警电路NPN56K33K5VP32AT89S52PB2130UP002A第4章系统软件方案的设计温度控制主程序的设计应考虑以下问题(1)温湿度采样,数字滤波;(2)越限报警和处理;(3)温度标度转换;(4)温湿度显示。通常,符合上述功能的温度控制程序由主程序和T0中断服务程序两部分组成。在该软件系统中,定时器T0为工作方式1,定时周期为125MS,8次定时器中断为1S,由于实际环境温度和湿度变化是连续和平缓的,故这里采用分段定值平缓滤波算法处理每次测得的温度和湿度值,有效防止了突发干扰使测得值波动很大,导致反馈系统关启工作,影响系统的稳定,提高了系统的抗干扰性。41程序流程图恢复现场是否越限显示重装时间常数报警程序保护现场设定1S时间计数是否到1S返回NNYY标度变换温湿度数据采样T0中断411温湿度主程序流程图412报警器流程图413A/D转换子程序流程图返回报警置位报警标志启动报警报警持续计数器置初值清标志设堆栈清显示清暂存T0初始化CPU开中断温湿度采样显示串行口初始化扫描键盘开始开始CS置高,CLK置低,移位计数器R0为0CS置低选中TLC54914US后CLK置高读DOUT、CLK置低CS置高转换值存入缓冲区子程序返回R0加1,8位读完吗YN414键盘中断流程图42程序清单421温度采集初始化程序ORG0300HADCONMOVDPTR,0F0FFHMOVA,00HMOVXDPTR,AHEREJNBP21REMOVXA,DPTRMOV20H,ARET;422湿度采集初始化程序ORG0301HADCONMOVDPTR,0F0FFHMOVA,00HMOVXDPTR,AHEREJNBP22EMOVXA,DPTRMOV20H,ARET;423显示电路程序程序ORG0700HDISMOVR5,04MOVR0,30HMOVDPTR,TABLOOPMOVA,R0MOVCA,ADPTRMOVSBUF,AWAITJNBT1,WAITCLRT1INCR0DJNZR5,LOOPRETTABDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;424A/D转换程序MAINMOVR0,0A0HMOVR2,08HSETBIT1SETBIT2MOVDPTR,7FF8HMOVXDPTR,AHERESJMPHERE425制交流蜂鸣器发声程序程序MAINSM;控制交流蜂鸣器发出固定频率的声音;定义I/OBUZZERBITP12;复位入口ORG0000HLJMPMAIN;定义中断T0中断入口ORG000BHLJMPT0INTSVC函数T0INSVCVOIDT0INTSVCINTERRUPT1T0INTSVCCLRTR0MOVTH0,0FDHMOVTL0,0C0HSETBTR0CPLBUZZERRETI主程序MAINMAINANLTOMD,0F0HORLTOMD,01HMOVTH0,0FDHMOVTL0,0C0HSETBET0SETBEASETBTR0SJMPSEND43上位机软件设计431系统进入界面程序在此系统软件中共有3个界面,首先进入的是系统进入界面。在这个界面当中用到了PICTUREBOX、TEXTBOX、TIMER等几个控件。首先,将这些控件一一拖入窗体当中,摆放好其位置。接着在图片控件中加载一个背景图片,选中图片控件,其属性当中有个“PICTURE”,选择图片的目录,再点击打开,图片被成功加载。日期的显示是利用TIMER和LABEL控件实现的,TIMER的特点是每隔一定的时间间隔产生一次TIMER事件,将其INVERNAL属性设置为1000,即1秒。再写入如下程序PRIVATESUBFORM_LOADTIMER1ENABLEDTRUEENDSUBPRIVATESUBTIMER1_TIMERLABEL4CAPTIONDATEENDSUB这样即可完成日期显示。在进入系统按扭对应程序段中写入以下语句即可,PRIVATESUBCOMMAND1_CLICKIFTEXT1TEXT“0405060129“THENFORM2SHOWUNLOADFORM1ELSEMSGBOX“您的学号有误,请重新输入。“,VBEXCLAMATION,“警告“ENDIFENDSUB这样即可实现在输入正确学号后才可进入系统,如果学号错误则会弹出提示对话框。432实时显示界面实时显示界面是在上位机对下位机的实时监测对下位机上传的数据进行曲线的绘制。界面上的六个按钮分别为参数设置的确定键、下位机初始化、采集、停止、历史数据及退出键。点击采集键,上位机会发送命令字,使下位机开始开始采集数据并送至上位机,与此同时上位机绘出温度变化曲线,第一路为红色曲线,第二路为黄色,第三路为蓝色,第四路为绿色。采集及绘制曲线的语句如下(以第一路为例)PRIVATESUBTIMER1_TIMER第一路采集DIMBUFASSTRINGIFMSCOMM1COMMEVENT2THENMSCOMM1INPUTLEN1BUFFERMSCOMM1INPUTIFBUFFER“Q“THENAVALTEXT1TEXTTEXT1TEXT“TIMER1ENABLEDFALSEMSCOMM1OUTPUT“6“TIMER2ENABLEDTRUEACINTA100/255PICTURE1LINEB,DC,A,VBREDDABCCB5ELSETEXT1TEXTTEXT1TEXTBUFFERENDIFENDIFENDSUB在参数设置框内,可以对下位机初始化、对采样频率进行设置、设置警报值。为了能与下位机实现通信,此界面需添加MSCOMM控件。还需要添加DATA控件与数据库进行绑定,再利用TEXTBOX控件与DATA控件进行绑定,这样将温度数据送给TEXTBOX后,温度数据就会被存入数据库中。相应的语句为DATA1RECORDSETEDITTEXT1TEXTATEXT2TEXTETEXT3TEXTITEXT4TEXTMLABEL1CAPTIONTIMELABEL2CAPTIONDATEDATA1RECORDSETMOVENEXTDATA1UPDATERECORD433历史数据界面该界面主要是用于查询历史数据,所以在此之前需创建一个ACCESS数据库,表名称为四路温度采集,添加字段日期、时间、第一路、第二路、第三路、第四路。在窗体中添加DATA控件与之绑定,同样利用TEXTBOX控件将数值取出,进而绘制出温度曲线、方框图等。如图,在日期的文本框中,输入要查询的日期,则在历史数据显示中会出现对应日期的温度数据。在路数框中输入通道号,则会绘制出对应通道温度变化曲线和方框图。该程序为(绘制曲线以第一路为例)PRIVATESUBCOMMAND1_CLICKDIMAASSTRINGDIMBASSTRINGBTEXT1TEXTA“SELECTFROM温度监测1WHERE日期“B“DATA1RECORDSOURCEADATA1REFRESHENDSUBPRIVATESUBCOMMAND2_CLICKPICTURE1SCALE0,100500,0PICTURE2SCALE0,100500,0DIMC,DASINTEGERDIMXASSTRINGC0D2IFTEXT2TEXT“1“THEN;第1路FORI0TOUBOUNDXYCINTVALTEX3TEXTDATA1RECORDSETMOVENEXTZCINTVALTEXT3TEXTPICTURE1DRAWWIDTH3PICTURE1LINEC,YD,Z,VBREDPICTURE2FILLSTYLE0PICTURE2FILLCOLORVBBLUEPICTURE2LINEC,YD,0,VBBLUE,BCC2DD2ZYNEXTENDIF第5章总结与展望本次专业课程设计基于AT89S52单片机的温湿度检测系统的设计,已经基本完成。通过这次毕业设计,我掌握了一些实践性质的设计的基本步骤首先,明确设计任务,并且要对市场上温湿度控制器要有初步了解,还要知道前人做了哪些工作,本设计方案的可利用程度等等。其次,要对整个设计系统做深入的方案论证、计算并且结合现有实际条件,确立自己的设计方案,进而,就是对自己确立的方案进行硬件实现,包括所用原器件选型,以及控制部分整个单片机系统的硬件选型与设计,并用PROTEL绘制出整个系统总体电路图。接着我们就进入到软件编程设计了,要画出各部分的大体流程图,弄清楚各个部分实现的功能,最后对整个系统进行软件编程实现。到此为止,这个系统的设计基本上已经完成了,最后就是要经过生产实践的检验,确定我们的设计是否符合实际要求,具有可利用价值。在总结前人的基础上,利用当前最新的传感器技术和数字传感器件。基于单片机的温湿度检测系统实现了自动采集数字传感器将外界环境温度和湿度的数据直接送给单片机无需经过A/D转换和专门的数据采集部分。实时监测在24小时内是实时地检测出外界环境的温度和湿度

温馨提示

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

评论

0/150

提交评论