毕业设计(论文)-基于单片机的温室多路温湿度检测系统设计.doc_第1页
毕业设计(论文)-基于单片机的温室多路温湿度检测系统设计.doc_第2页
毕业设计(论文)-基于单片机的温室多路温湿度检测系统设计.doc_第3页
毕业设计(论文)-基于单片机的温室多路温湿度检测系统设计.doc_第4页
毕业设计(论文)-基于单片机的温室多路温湿度检测系统设计.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的温室多路温湿度检测系统设计摘要目前,大部分的温室温湿度检测系统都是对单点进行温湿度检测,或很多的温湿度检测还采用的是由模拟传感器,多路模拟开关及A/D转换器组成的传输系统,信号传输容易受到干扰,测量误差大,不利于用户做出及时决策。因此,开发出一种测量精度高,响应迅速,且能够对多点温湿度信息同时进行监测的系统十分必要。本系统设计硬件部分分为上下位机两个部分。上位机部分利用微型计算机构成整个系统的监测中心,与下位机通过总线RS-485进行连接,实现对温室内监测到的温湿度数据进行简单的分析和处理。下位机主要部分为单片机AT89S51和传感器SHT11,通过它们完成对温室内多点温湿度数据的采集、显示、预处理、超限报警等任务,并进行与上位机之间的数据传输和信息通讯。本系统的软件亦由两部分构成。其中上位机部分主要完成数据分析、数据走向折线图绘制及报表打印等功能。下位机软件设计主要包括数据采集、显示、报警等程序。 本系统硬件电路简单,使用方便,并实现了同时对温室温湿度的监测。同时本系统还可以扩展如去湿机、空调等装置。因此,本系统应用前景广阔。关键词温室;单片机AT89S51;温湿度传感器SHT111 前言目录摘要Abstract1 前言11.1 选题背景11.2 国内外研究现状11.3 系统设计的意义21.4 系统设计主要内容22 系统整体设计42.1 系统功能设计42.2 系统设计原则42.3 监测系统总体构成42.3.1 系统总体模式42.3.2 监测终端结构设计52.3.3 RS-485串行通讯62.3.4 传感器的选择62.3.5 系统开发语言62.4 本章小结63 系统硬件电路设计73.1 单片机选择73.1.1 单片机概述73.1.2 AT89S51 芯片主要性能73.1.3 AT89S51引脚介绍73.2 系统时钟电路设计93.3 系统复位电路设计93.4 键盘接口电路103.4.1 行列式键结构103.4.2 按键的识别方法103.5 LCD与单片机连接113.5.1 LCD1602液晶模块113.5.2 LCD1602 管脚功能113.5.3 LCD与单片机连接123.6 电源电路123.7 声光报警电路133.8 RS-485 通信设计133.8.1 数据通信133.8.2 AT89S51 的串行口的结构143.8.3 串行通信接口标准选择143.9 温湿度传感器选择143.9.1 SHT11传感器153.9.2 SHT11与AT89S51的连接电路163.9.3 传感器工作时序163.10 多点温湿度采集系统设计173.11 本章小结171 前言4 系统软件设计184.1 监测端软件设计184.1.1 键盘子程序184.1.2 温湿度超限报警194.1.3 温湿度测量程序194.1.4 从机的通信程序204.2 上位机监控软件设计224.3 本章小结22结论23参考文献24附录A 系统设计原理图26附录B 系统部分程序27致谢291 前言1 前言1.1 选题背景进入新世纪以来,尤其是近几年来,我国的科技水平不断提高,经济实力显著强,推动社会不断向前发展,我国人民的物质生活水平有了极大的提高,人们也在追求越来越高的生活质量,尤其是对身体健康有了更多的认识,对营养的摄取有了更高的要求,人们希望在不同的季节都能够吃到含有不同营养的不同蔬菜。于是,在我过的北方地区,东北华北等地出现了大量的农业温室大棚,来为人们提供许多的反季节作物。温室大棚设施农业等当代农业的发展对农业科学技术的需要也越来越多,要求也越来越高。农业温室其实就是人工建立一个在低温季节可以使喜温蔬菜、花卉、林木等植物生长的气候条件和气象环境,从而消除温度对植物生长的约束,减少植物对生长季节的依赖,使得植物的开花、发芽、成熟、结果等摆脱自然条件的约束。最近几年,我国农业温室大棚产业发展速度相当快,在我国北方地区,其被广泛使用,利用农业温室大棚不仅提供了大量的反季节作物,同时也给温室大棚的经营者带来了相当可观的收入。但是我国在农业温室大棚上农业科学技术的应用还不是特别成熟,尤其是自动控制技术的运用还远远跟不上农业温室大棚数量及技术的要求,温室大棚的管理还需要大量的人力,且无法对温室环境进行精确的监测与控制,浪费大量资源的同时,还影响了作物的产量,使人们的收入也无法提高。因此,在农业温室大棚中的对各种因子如温度、阳光等的自动控制技术我们还需进行很大的提高。农业温室大棚的自动控制技术,就是在农业温室大棚中通过使用各种因子测量所需要的传感器、PC 机、单片机以及应用通信技术等根据植物生长所需要的气候条件,自行对室内的环境因子如温度、湿度、CO2浓度、光照等进行调控。在应用了良好的自动控制技术的条件下,就可以对温室内的各种环境因素进行相对比较精确的监测与控制,从而使农作物得到较好的生长,产量和质量得到大范围提高。而在所有需要控制的环境因素中,温度和湿度是两个极其重要的因素。1.2 国内外研究现状我国真正意义上的温室自动控制技术始于20世纪80年代初。当时,我国农业科技工作研究者借鉴西方国家比较发达的技术,对温室内对植物生长比较重要的几种因素的控制技术进行了研究1。初步实现了对温室的自动控制,如重庆柑橘所的人工气候室开发的基于单片机的控制系统等,此后随着进一步对计算机温室控制系统的研究,如90年代吉林工业大学研制出了可以很好应用到温室中的温室智能喷水控制器,其可以根据温室内的温度,湿度以及光照度等来自动调节喷水量。总之,近年来我国在温室环境的自动控制技术上取得了一定的成果,但国内的温室在管理和控制上自动化程度还相对较低,国内所进行的许多温室自动控制的研究尚且还是基于对单因素的检测和控制,很少进行全面系统的研究。国外设施农业起源较早,发展速度也相对较快,国外在20世纪70年代左右就开始了温室环境自动控制技术的研究,目前在欧洲约有3 万hm2的现代化大型玻璃温室,在荷兰、日本、以色列、美国等国家约有35 万hm2普通塑料温室。这些国家现代设施农业非常发达与普及,设备自动化、标准化程度相当高、各项环境因素调控技术水平居于世界领先地位。许多国家已经实现根据农作物生长的需求,对温室大棚内多个因素如温度、湿度、水分等同时进行控制。英国近年研究出一种新型水培系统,可以自动调节营养液浓度,日本的温室生产几乎已经达到无人化。1.3 系统设计的意义随着科学技术的日益进步,在工农业生产、科研学习、军事等各个领域计算机现在都起着必不可少作用,各国工业发展水平与计算机技术的水平息息相关。在微型计算机大家族中,单片微型计算机异军突起,发展迅速。从第一块单片机F8,1974年诞生之后,随着技术的不断发展与进步,迄今为止在单片机中,已经出现了超大规模集成电路单片机,且其字长已经达到32位。在现在的控制系统设计中,单片机的使用已相当广泛。其具有高度集成化、强大功能、抗噪声、具有丰富指令集等优点。现如今随着世界范围内设施农业的迅速发展,单片微型计算机在农业生产自动控制中被广泛使用。本系统设计的温湿度监测系统具有布线简单,控制方便,使用灵活,测量精度高等优点,对农作物产量和质量的提高具有重要作用,被广泛使用。本文所要设计的多路温湿度检测系统,将单片机AT89S51作为监测端,SHT11数字传感器直接与单片机相连,利用总线RS-485实现分机与主机的通信,上位机通过智能监控软件,主要用于设定温湿度上下限值,对采集到的数据进行数据处理及实现报表打印等功能。本系统设计与传统基于单片机的温湿度检测系统相比,本系统直接采用数字温湿度传感器,不需要在传感器之后连接信号放大器以及模数转换电路,同时只需要一种传感器即实现了温度和湿度的检测而不需要传统的温度和湿度两种传感器,简化了硬件电路,节省了大量测量电缆,设备安装和拆卸简单,降低了设备制造成本和技术难度,数据传输稳定,抗干扰能力强,测量精度大大提高,测量误差大幅度减小。监测系统结构图如下: 温湿度显示电路智能监控点1 上位机智能监控点2AT89S51 . .智能监控点n .控制电路 图1-1 温室多路温湿度检测系统1.4 系统设计主要内容通过对温室控制现状及温室生产特点的分析,设计出测量精度高、测量稳定、数据可靠、反映速度快、性价比高系统。系统设计主要需进行的工作如下:系统硬件部分主要由SHT11传感器(该传感器器为数字式且可同时进行温湿度的测量)、AT89S51单片机及PC机组成,单片机与PC机通过总线RS-485相连,以实现远距离多节点的通信,进而完成对温室内多点温湿度数据的监测。上位机管理系统软件编程及界面设计利用VB语言开发,实现数据分析处理及报表打印等功能。下位机以AT89S51单片机为核心,单片机软件编程采用C51编写,完成各个测量点数据的测量、显示、超范围报警等工作。该系统设计与其他系统设计相比节省了大量硬件设备,测量精度高,稳定性好,且可推广到粮仓、图书馆等其他环境。 253 系统硬件电路设计2 系统整体设计2.1 系统功能设计本系统设计所要实现的功能为温室多路温湿度监测,即在温室内合理设置多个采集点,通过多个温湿度混合传感器对温室内如温室棚口等一些关键点或者敏感点,进行温湿度的测量,然后测量得到的数据被送到单片机进行显示及数据处理,并将数据传送到上位机。当测量得到的温湿度值不在植物生长适合的范围内时,报警命令被单片机及时发出,报警提示被报警模块发出,实现声光报警。温湿度检测设备应具有高可靠性、测量灵敏、高稳定性、数据可以存储并进行远距离传输。系统通信通过RS-485总线进行串行通信,保证与上位机通信的实时性以及远距离传输的需要。系统要实现对检测到的数据进行存储记录的功能。上位机管理软件要实现处理数据的显示以及打印功能。温湿度测量结果的范围与精度要求为:温度测量范围:-3040,温度测量精度:2,湿度测量范围:10%95%RH,湿度测量精度:4.0%RH。2.2 系统设计原则 所设计的单片机系统应具有较高的可靠性,较高的性能价格比,以及方便使用等特点。 (1)易于使用由于本系统所使用的人群知识水平各不相同,为适应不同知识水平操作人员的使用,便于操作者对设备进行操作和维护,便于系统的推广使用,因此在设计本系统时,应该设计出较为简单且易于操作的人机界面,同时应具有设备故障检测和诊断功能,使当系统发生故障时,能够对故障进行定位,便于维护。(2)性价比单片机将CPU、存储器、可编程定时器/计数器、输入输出接口等均集成在一块芯片上,集成度高,功能强,结构合理,抗干扰能力强,体积小,功耗不高,价格便宜,这种较高的性价比使得单片机系统被广泛应用,同时在系统设计时应尽量简化硬件电路,尽可能的利用软件编程来实现相应的功能。(3)高可靠性可靠性是所有系统设计必不可少的一个重要的准则,若系统没有较高的可靠性,测量精度就会受到影响,系统设计就会毫无意义。因此为了设计出可靠性高的系统,在设计系统时要选择稳定性好的元器件,电路布线要合理,对输入输出通道及供电电源要采用适当的抗干扰措施。2.3 监测系统总体构成2.3.1 系统总体模式本系统设计的多路温湿度检测系统总体模式图如下。上位计算机 打印机终端1终端2终端n. .图2-1 系统总体模式图 本论文所设计的系统,上位计算机按照特定的时间间隔向每一个智能监控点发送的控制命令信息通过RS-485串行接口传送,并通过总线RS-485接受各个监控点监测到的数据,并对采集到的温湿度数据进行处理和显示。2.3.2 监测终端结构设计利用单片机AT89S51作为中心的监测终端是一个具有温湿度的采集、显示及数据处理功能的自动控制系统。利用数字传感器SHT11进行温湿度数据的采集,当采集结果超出事先设定好的范围时,就通过蜂鸣器产生报警提示,并使闪烁灯闪烁,以提醒操作者进行相应处理。测量得到的温湿度数值通过液晶显示器显示,并通过总线RS-485串传给上位机。智能监控点同时可以接收从上位机传来的各种控制命令。智能监控点原理图如下温湿度显示SHT11AT89S51单片机声光控制时钟温湿度控制复位 RS-485通讯接口图2-2智能监控点原理图2.3.3 RS-485串行通讯RS-485的主要特点为:(1)RS-485具有差分信号负逻辑的电气特性,接口电平相对RS-232比较低且与TTL电平相同2。(2)利用平衡驱动器和差分接收器的组合构成RS-485接口。(3)RS-485的数据传输速率最高可达到10Mbps。(4)RS-485最大的通信距离约为1219m,传输距离远。上位机与下位机的通讯利用RS-485串行通讯实现,下位机接收上位机发送来的设置、输出控制、数据采集指令等各种控制命令,并执行相应程序。上位机接收下位机通过RS-485传送的数据值,并进行相应的数据处理。采用RS-485通讯,具有较好的性能价格比,数据通信传输距离远,传送稳定同时便于扩展和维护。2.3.4 传感器的选择 目前传感器的研发与应用已经有了很大的进展,在很多的应用场合中温湿度传感器已经不断的由模拟化发展向数字化。本系统采用温湿度混合数字传感器SHT11。首先,由于SHT11具有校准功能,因此其测量得到的数据比较可靠,十分方便人们使用;其次,由于其传输的是数字信号,且可以完成温湿度两种参数的测量,使得电路设计相对简单。SHT11传感器对湿度的测量是利用其中的感湿元件的电阻值随湿度的不同而不同来设计的,测量比较灵敏;其温度测量原理是利用具有负温度系数的温度敏感元件做的测温探头而形成的测温元件。SHT11内部集成了一个高性能的单片机,可以确保设备总是运行在良好的状态下。同时其与单片机连接简单,且其内部集成度比较高,体积小,功耗低,精度高,信号传输质量高。基于上述特点,使得利用此传感器的电路设计相对容易,非常适合向实际的应用系统推广。2.3.5 系统开发语言本系统设计中,通过汇编语言与C51语言混合编程对下位机部分程序进行编写,采用VB语言对上位机系统软件部分进行编写。 2.4 本章小结 本章首先对系统的总体设计进行了阐述,简要介绍了系统设计所要完成的功能,接着分别介绍了本系统设计的原则,系统的总体模式和智能监控点的模式,RS-485串行通讯,数字传感器SHT11的选用及上下位机开发语言的选择。3 系统硬件电路设计论文所述系统要完成的主要功能为对温湿度数值的采集,并对其进行简单的处理,以及将采集值发送给上位机,并使上位机可以发送各种控制命令,通过RS-485实现异步通讯;4*4 键盘输入,时间可以校正,设定报警阈值,自动/手动运行控制操作,采集到的温湿度数据值通过LCD液晶显示。 3.1 单片机选择3.1.1 单片机概述单片微型控制器即单片机,其实际就是在一块芯片上集成了CPU、ROM、RAM、I/O接口、可编程定时/计数器等模块。其功能相当于一台微机,有的单片机还将A/D、D/A转换电路集成在内。由于单片机具有体积不大、功耗低、抗干扰能力强、高性价比等的优点。单片机目前已经被广泛应用在各种控制场合,随着其性能的不断提高,单片机已经成为工业控制、仪器仪表、军事科学与技术及日常生活中最广泛使用的计算机,在工业、农业、国防、科研及日常生活各个领域均发挥着极其重要的作用。3.1.2 AT89S51 芯片主要性能 8位的AT89S51单片机功耗低,性能高,采用CMOS工艺制造。片内含有的可编程只读程序存储器,容量为4k Bytes, 反复擦写次数可达1000次,其器件制造利用高密度、非易失性存储技术,AT89S51单片机的指令系统与引脚结构与MCS-51系列单片机完全相同,在许多自动控制系统中AT89S51单片机得到了大范围应用3。完整的I/O口、控制口、及程序存储器等包含在AT89S51单片机内,具有很好的性能。其原理与微型计算机相似,利用传感器采集到的数据可以通过外接的A/D、D/A转换电路及运放芯片等传送到上位机中,且通过LCD液晶可以实现采集数据的显示以及通过外接键盘使工作人员依据显示到的数据采取相应控制操作,同时可以将步进电机等外围执行机构连接到单片机内部的大量I/O接口上以实现对外界各种参数的精准控制,工控能力不容小觑。AT89S51单片机的主要性能特点为:4kB ROM;128 bytes的RAM;32个外部双向I/O口;全静态工作:0Hz-33MHz;两级中断、两层中断嵌套;与MCS-51完全兼容;中断源个数为5;可编程定时/计数器有两个,均为16位;一对全双工串行通信口;WDT电路;振荡器和时钟电路置于单片机内部;程序存储器保密锁定,且为3级;掉电和低功耗空闲模式。3.1.3 AT89S51引脚介绍 AT89S51各个管脚功能如下:VCC:接电源+5V.GND:电源接地端。P0口:P0口为一个8位漏级开路双向I/O口。PO口可作通用I/O口使用,但在端口进行输入操作前,应先向端口的输入输出锁存器写“1”。当CPU从访问外部存储器时,PO口被用作地址/数据分时复用总线,分时向外部存储器提供低8位地址和传送8位双向数据信号4。在EPROM编程和验证程序时,PO口分别用于输入和输出指令字节,且当通过该口输出指令字节时应外接上拉电阻。PO口能以吸收电流的方式驱动8个LS型TTL负载。 P1口:P1口是一个内部带上拉电阻的8位准双向I/O口。当P1输出高电平时,能向外部提供拉电流负载,因此,不需再外接上拉电阻5。当AT89S51的引脚图如下所示图3-1 AT89S51管脚图端口用作输人时,也应先向端口的输出锁存器写人“1,然后再读取端口数据。在EPROM编程和验证程序时,它用来输人低8位地址。P1口能驱动4个LS型TTL负载。P2口:P2口也为一个内部带上拉电阻的8位双向I/O口。当外部存储器被CPU访问时,高8位地址被通过P2口输出,外部存储器16位地址总线即由通过该口输出的高8位地址与PO口输出的低8位地址构成。此时,P2口不再作为通用I/O口使用。P2口可驱动4个LS型TTL型负载。P2口还可用作通过其输入高8位地址信息,此时,其功能为对EPROM编程和进行程序验证。P3口:P3口是一个内部带上拉电阻的8位多功能双向I/O端口。P3口除了作通用1/0端口外,其主要功能是它的各位还具有第二功能。P3口的第二功能如下表所示。表3-1 P3口第二功能引脚第二功能P3.0RXD(串行输入)P3.1TXD(串行输出)P3.2/INT0(外部中断 0)P3.3/INT1(外部中断 1)8P3.4T0(T0 定时器的外部计数输入)P3.5T1(T1 定时器的外部计数输入)P3.6/WR(外部随机存储器的写选通)P3.7/RD(外部随机存储器的读选通) P3口还可应用于闪烁编程和编程校验,此时,P3口用于接收某些控制信号。作为输入口时,I/O口可工作在读端口与读引脚两种方式下。读端口时,数据并未被从外部读入,其实际是从端口锁存器被读入内部总线,数据在被处理之后又被写回到端口锁存器6。读端口时读入到内部总线的数据才真正是来自外部。在进行数据输入时AT89S51单片机的P0、P1、P2、P3口都为准双向口。且只有P1口不具有其他功能。RST:复位引脚。复位功能:单片机上电后,在该引脚上出现两个机器周期以上的高电平,就会使单片机复位0。PSEN:PSEN为读选通信号,即外部程序存储器控制信号,可以驱动8个LS型TTL负载8。ALE:低8位地址锁存使能输出。地址锁存使能输出ALE:当外部存储器被单片机访问时,PO口和P2口分别输出16位地址信号的低8位和高8位,ALE信号用于低8位地址锁存9。EA/VPP:编程电源输入/外部程序存储器访问允许。EA:当EA=l时,CPU从片内程序存储器开始读取指令。当EA程序计数器PC的值超过OFFFH时(8051片内程序存储器为4kB),将自动转向执行片外程序存储器的指令。当EA=0时,CPU仅访问片外程序存储器。8031单片机内部没有程序存储器,EA必须接地。VPP:在对8751内部EPROM编程时,此引脚接21V编程电源10。XTAL1:时钟电路引脚,内部振荡电路反相放大器的输入端11。XTAL2:时钟电路引脚,内部振荡电路反相放大器的输出端。此外其还为内部时钟发生器的输入端。当使用外部信号源为8051提供时钟信号时,XTAL1接地,XTAL2接外部信号源12。3.2 系统时钟电路设计计算机执行指令时各种微操作在在时间上的顺序关系叫做时序。计算机执行指令的过程分为取指令、分析指令以及执行指令,执行指令的每一步中都包括许多微操作,这些微操作要正确的执行必须在一个统一的时钟脉冲控制下13。时钟脉冲由时钟振荡器产生,AT89S51的时钟振荡器是由单片机内部的反相放大器和外接晶振及微调电容组成的一个三点式振荡器,将晶振和微调电容接到AT89S51单片机的XTAL1和XTAL2端即可产生自激振荡。通常振荡器输出的时钟频率为612MHz。调节微调电容可以微调振荡频率。时钟电路图如下所示。图3-2时钟电路3.3 系统复位电路设计单片机在启动运行时或者死机时需要复位,即对单片机进行初始化,使程序从起始地址重新开始执行,即使CPU重新开始工作。复位信号需要使用复位电路来产生,复位电路有多种形式。通过复位电路将产生的复位信号由RST引脚送入到内部的复位电路对单片机进行复位14。且复位信号要持续两个机器周期以上,才能使单片机可靠复位15。本系统设计采用上电兼手动复位电路,通过在RST和VCC间加入一个人工按键,当按下按键后,VCC的+5V电压即两个机器周期以上高电平被加到RST端,实现单片机的复位。上电兼手动复位电路图如下所示图3-3 复位电路3.4 键盘接口电路3.4.1 行列式键结构在以单片机为核心的控制系统中键盘是必不可少的一部分,控制命令、各种数据、程序等都是通过键盘输入到计算机中的,是人机交互的关键设备之一。键盘实质是一组按键开关的集合,通过其还可控制程序执行的方向,应用极为广泛。通常,在实际单片机应用系统中有独立式和行列式两种键盘形式,本系统设计采用行列式键盘16。由于本系统设计的键盘结构需要16个按键,按键数目较多,而独立式键盘中一个按键即需要一条I/O线,若本系统设计采用独立式键盘,则需要的I/O线数就比较多,使系统设计变得复杂,因此本系统设计采用行列式键盘。这样,一个端口就可以组成 4 * 4 的键盘,如图 3-3 所示。采用此种键盘形式,按键比直接在端口线连接翻了一翻,且差别随着行列线的增多而逐渐变大。但是行列式结构的键盘读取和按键的识别与直接连接法相比,没有后者简单。行列式键盘中,按键开关的两端分别接有行线和列线,。当没有键被按下时,行线通过上拉电阻接到+5V上,处于输入状态,列线为输出状态。是否有按键被按下可以使CPU读取行线的状态来了解,当按键没有被按下时,行列线之间值没有导通的,所有行线输入均为高电平,当某按键被按下闭合时,该键所对应的行线和列线短路,行线输出为列线输入。由于键盘中的每条行、列线会连接多个按键,行列线的电平会受到与其相连的所有按键被按下与否的影响。因此,要想确定按键的位置,必须利用行线、列线信号搭配处理。3.4.2 按键的识别方法一般可以采用扫描法、线反转法等按键识别方法来识别被按下的按键是哪一个。行(列)扫描法其实就是对键盘行或列逐次扫描。扫描法首先识别是否有键按下,若有键被按下,则接着将识具体哪个按键被按下。在识别是否有键按下时,列线均被置为低电平,然后通过对行线电平状态进行查询,若行线电平有变化,则可知有键被按下,反之,没有按键按下。行列式键盘电路如下所示图3-4行列式键盘接口电路当识别出有按键按下后,将其余各列依次置为低电平,而使其余列均为高电平状态,然后,依次检测行线电平是否由高变低,由电平变化行与此时扫描所在列即可确定被按下按键的位置,即按键位于该行线与列线的交点处。识别出按键之后,单片机便转去执行相应的程序。实际编程时存在按键抖动的现象,为消除这种影响,还应采用软件延时法消。3.5 LCD与单片机连接3.5.1 LCD1602液晶模块 LCD,即液晶显示器。本系统设计所使用的液晶型号是LCD1602,为一种工业字符型液晶。同时,1602液晶是一种点阵型液晶模块,亦称1602字符型液晶,其可由若干个5*7或5*11点阵字符位组成,每一个字符占用一个点阵字符位,各位之间有一个点位的间隔17。1602含义是指显示的内容为16X2,即可以显示两行符号、字母及数字,每行16个18。即能够同时显16X2即32个字符。液晶显示器比数码管显示器更加美观与专业。LCD具有许多优点,比如体积不大、功耗低、使用方便、显示信息量大、易于彩色化、无电磁辐射、寿命长等。因此,在很多应用系统中LCD的使用已经相当普及,由于LCD的使用,使得电子设备的人机界面变得愈发生动和形象。3.5.2 LCD1602 管脚功能 LCD1602采用标准的16脚接口,各引脚功能如下表所示:表3-2 LCD1602 管脚功能管脚功能GND电源地VCC+5V电源正级VL液晶显示器对比度调整RS寄存器选择RW读写信号线E(或EN)使能端D0D78位双向数据端BLA背光正级BLK背光负极3.5.3 LCD与单片机连接对于在实际应用中经常需要显示的160个数字、字母、符号等都已经以点阵字符图形的形式存储在了液晶模块内的CGROM中,且字符与代码都是一一对应的关系,如代码42H代表大写字母“B”。由于CGROM与PC中保存的字符代码一样,因此可以直接用P1=B这样的方法向DDRAM写C51字符代码程序19。这样PC在编译时就把B先转换为42H代码了。显示时我们所看到的字母“B”就通过地址42H中的点阵字符图形显示出来了。 1602液晶显示模块与单片机直接接口电路如下图所示图3-5 LCD与单片机接口电路3.6 电源电路 单片机AT89S51正常工作时,需工作在4.05.5V电压下,本系统设计的电源电路如下图所示,其中变压器用于将220V交流电降压,四个二极管组成一个桥式整流电路用于对变压后得到的交流电进行整流,两个0.1F的电容用于滤波,1000F电容用于防止自激,同时电路中还有一个稳压器7805。该电源输出电压5V、输出电流 1.5A。滤波稳压电路图如下所示图3-6滤波稳压电路3.7 声光报警电路 声光报警电路设计原则为:正常情况下P2.5、P2.6输出均为高电平。如果某一时刻温度值不在预先设定的系统规定范围内,则使红灯闪烁,红灯闪烁通过使P2.5输出低电平实现。如果温度恢复到预先设定的上下限范围时,P2.5 恢复高电平。同理若室内湿度低于系统预置的湿度上下限范围时,黄灯将闪烁,且其闪烁通过使P2.6输出低电平实现,当湿度值回到温室所需值时,P2.6恢复输出高电平。此外,当温湿度超过之前设定的温湿度范围时,通过三极管驱动扬声器报警。声光报警电路图如下图3-7 声光报警电路3.8 RS-485 通信设计3.8.1 数据通信在工程实际中,单片机要与其他外部设备、计算机等进行数据通讯。一般,通信方式有串并行两种。并行通信:数据的各位同时被传输,即为每一位数据传送分配一条数据线。特点:数据各位同时传输,效率高,但在要求实时性、远距离通信的情况下,不适合使用此种传输方式20。此方式下,传输距离通常小于30米。串行通信:在一条数据线上数据按位依次传输21。特点:数据线少,成本低,传输慢,适合远距离传输22。由于在不同设备之间数据传送方向既可以是单向的也可以是双向的,因此,在串行通讯中,又有单工、半双工和全双工三种数据传输线路。单工制式:数据单向传输的,此连接方式只需一条数据线;半双工制式:数据双向传送,但是同一时间内数据只能单向传送,此种连接方式可以使用一条或者两条数据线;全双工制式:数据双向传送,该制式需两条数据线,系统中每一个设备都有一个发送器一个接收器。串行通讯又有异步和同步两种方式,其中,异步通讯为单片机通讯所经常使用的方式。3.8.2 AT89S51 的串行口的结构AT89S51通过P3.0和P3.1 两个引脚,提供了一个输入输出口,该接口可实现可编程全双工异步串行通讯。在系统数据传输过程中,数据的传送可以通过使该电路工作在不同方式下实现。单片机串行口结构图如下: 图3-8 AT89S51串行口3.8.3 串行通信接口标准选择 该基于单片机的应用系统设计基本采用的通讯方式是异步串行通讯。RS-232、RS-485是目前使用比较广泛的通信接口标准。RS-232 使用虽广泛,但其有接口信号电平较高,接口电路芯片已损坏、传输慢、抗干扰能力差、传输距离有限等许多缺陷23。与终端匹配时,RS-485支持总线型拓扑结构,且其需采用半双工或者全双工的通讯制式24。RS-485接口组成的半双工网络,一般是两线制,且多采用屏蔽双绞线传输,同一总线上最多可以挂接32个结点25。在数据传送过程中,在RS-485上数据传输的速度可达到10Mbps。此外,由于RS-485结构设计的合理性,其可以抵抗一定的共模干扰。 由于PC机默认的只带有RS-232接口,因此在本系统设计中,需采用RS-232/RS-485 转换器以实现RS-232信号到RS-485信号的转换26。AT89S51 串口电平转换电路如下图3-9 AT89S51 串口电平转换电路3.9 温湿度传感器选择对于温室中温湿度的测量系统,首先要求植物生长适合的温湿度范围应在所选用的传感器的测量范围内;其次,为了达到对温室环境的精确监测和实时控制,所选用的传感器应具有测量精度高的特点;另外,由于需对温室内温湿度进行长时间监测,因此选用的传感器应具有很好的稳定性,寿命要长。由于在温室内温湿度不会突然发生很大的变化,因此本系统设计传感器选择不必对灵敏度有过多要求。针对以上分析,本系统选用SHT11数字式温湿度混合传感器,选用该传感器不仅满足了上述该系统设计中传感器应具有的特点之外,SHT11还能够同时进行温湿度的测量且可以直接把采集到的数据转换成数字信号送至单片机,简化了硬件电路的连接,具有很高的性价比。3.9.1 SHT11传感器数字式温湿度复合传感器SHT11,其制造采用的是COMSenm技术,该传感器在一块微小的芯片上集成了温湿度测量装置(温度测量主要利用的是湿敏元件和温敏元件)、信号放大电路、A/D转换电路、串行口等。 在进行温湿度测量时,首先相对湿度、温度的信号分别通过温、湿度测量装置产生;接着模拟量到数字量的转换、校对等通过A/D转换器完成;得到的数字信号经2线串行数字口被传送到微控制器;最后非线性补偿通过微控制器完成,即得到最终测量值。SHT11的内部结构图如下所示图3-10 SHT11内部结构SHT11引脚图如下图 3-11 SHT11 温湿度传感器引脚对于SHT11传感器,其与单片机的数据传送是通过DATA 和 SCK 引脚实现的。因为SHT11的SCK线和DATA线与I2C总线不相同,所以,在温湿度测量时对SHT11的控制,微控器通过5 个 5 位命令码来实现。五个命令代码00011、00101、00111、00110、11110的作用分别为:温度测量、湿度测量、读寄存器、写寄存器及软重启命令。SHT11各引脚的功能如下表所示:表3-3 SHT11 引脚的功能引脚功能引脚1信号引脚2串行数据接口,DATA为数据线引脚3串行数据接口,SCK为时钟线引脚4电源,工作电压范围2.45.5V引脚58未连接3.9.2 SHT11与AT89S51的连接电路在单片机与SHT11的连接中,利用引脚SCK实现AT89S51与 SHT11的同步通讯,而测量得到的数据的传送是经过引脚DATA实现的。数字式温湿度传感器与单片机电路连接图如下:图3-12 传感器与AT89S51连接电路3.9.3 传感器工作时序对于数据检测的过程,开始时要先启动传输,接着测试命令被发送,然后进行温湿度值的检测,待测量完成后对测量结果进行读取。数据传送的开始需要一组启动时序来表示。SHT11的启动时序图如下,当DATA变为低电平时,SCK为高电平;接着 SCK变为低电平,随后当DATA又变为高电平时,SCK也为高电平。图3-13 SHT11启动时序在启动命令被发出后,包含3个地址位5个命令位的命令码被单片机发出,接着DATA线即处于等待SHT11响应的输入状态,8位命令码被SHT11接收后,在第8个时钟周期的下降沿DATA被下拉为低电平作为SHT11的ACK,在第9个时钟下降沿之后,DATA被恢复为高电平;DATA恢复为高电平之后,SHT11开始进行温湿度的测量,完成后,DATA又被置为低电平,单片机从而可知测量完成,给出SCK信号;高字节数据在第8个时钟周期下降沿首先被SHT11输出,在第9个时钟下降沿,DATA总线被拉低作为ACK信号,然后使DATA恢复高电平Error! Reference source not found.;接着低字节数据在随后的8个SCK下降沿被SHT11发送;然后DATA又被置为低电平在SCK的下降沿,用作ACK信号来接收数据;最后8个SCK下降沿,CRC信号被SHT11发出,用于对数据进行校对,当单片机不应答时表示测量结束。 SHT11的测量时序图如下:图3-14 测量时序图3.10 多点温湿度采集系统设计SHT11在进行数据传送时采用的是双线制,本系统设计,SHT11与单片机的连接方式为:每一个传感器的SCK引脚都与单片机的同一个输入输出引脚相连,单片机的其他引脚则分别与每一个传感器的DATA引脚相连。系统采用这种连接方式,首先可以使每一个AT89S51连接尽可能多的SHT11传感器,从而使一个监控器可以测量的地点数目增多;其次,由于每一个传感器的SCK引脚都与单片机的同一个输入输出引脚相连,即挂接在单片机上的传感器公用一个时钟信号线,这样可以使所有SHT11同时接收到单片机发来的测量命令,使系统具有比较快速的响应速度,测量得到的数据更加精确可靠,更利于用户分析决策。 AT89S51与多个SHT11连接的仿真图如下所示:图3-15 多个SHT11与AT889S51的连接3.11 本章小结本章对系统设计的硬件部分进行了详细的阐述,介绍了硬件设计中各个部分的作用、原理等,如单片机的选用、液晶显示的选用、传感器的选择。同时,本章对各个硬件部分的连接方式,多路温湿度检测系统的实现进行了简述,并给出了部分电路图与实物图。4 系统软件设计4 系统软件设计 本系统设计的软件设计主要包括下位机的软件设计及上位机的数据接收及处理、报表打印等的软件编程。4.1 监测端软件设计在本系统设计中,监测终端软件设计采用的方式是模块化方法。其中主要包括下述几个模块:键盘识别、数据测量、LCD显示、声光报警及串行通信。系统整体设计图如下开始 初始化端口各点温湿度是否有温度差异?键盘处理模块 报警模块 Y N N是否有温度差异? YN图4-1 系统整体设计4.1.1 键盘子程序对于该系统设计在实际应用当中,各项参数及工作方式等的设定都是通过本系统设计中所采用的4*4行列式键盘来进行的,其中该键盘的16个按键中,数字键的个数为10,而其余剩下的按键则为功能键。在按键被按下或断开的瞬时,通常会有510ms的抖动现象出现,这种现象可能会使CPU工作出错。这种现象出现的原因主要是按键的机械弹性作用。基于此,在键盘设计中应去除抖动,使按键能够稳定的闭合与断开。 键盘扫描流程图如下开始有按键? N N Y 延时 有按键? N Y识别键值调用处理子程序结束图4-2 键盘扫描程序流程图4.1.2 温湿度超限报警利用超限报警模块,SHT11测量得到的温湿度数据值被转换成十进制数,并通过数码管将温湿度值进行显示,且当温湿度超出设定的温湿度范围时进行声光报警。4.1.3 温湿度测量程序通过温湿度测量程序,首先要进行对串口的开启,设置波特率、奇偶校验位及起始位等初始化工作,然后对温湿度数据进行循环采集,SHT11采集到的温湿度数据值被存入RAM,接着通过总线RS-485,进行了数据处理后的温湿度采集值被传送至了PC机,最后通过调用显示模块子程序,实现数据的显示。温湿度测量程序流程图如下所示开始串口开? NY串口初始化初始化成功?NY读温度读湿度上传数据采集结束?结束Y图4-3 温湿度测量程序流程图4.1.4 从机的通信程序(1) 传输方式:由于RS-485总线只是对接口的电气特性进行了定义,对于通信协议并未进行定义,所以在本系统设计中,需要自己定义符合RS-485协议标准的通信协议Error! Reference source not found.。所以上下位机之间需实行上位机为主,下位机为从的主从结构的通信方式。(2) 波特率:数据传输的波特率为9600bps。(3) 通信方式:下位机采用中断的方式接收上位机传来的命令,下位机发送数据给PC机时命令为00Error! Reference source not found.;下位机接收PC机发来的数据时命令为01。(4) 地址设定与校验:系统设计为单主站对应多机,不同的地址号被分配给各从机,数据设定的帧格式为1位起始位、8位数据位,1位停止位、不设奇偶校验位Error! Reference source not found.。 下位机发送接收程序流程图如下所示开始接收数据求累积和接收完? N接收校验和Y正确? N发送YY发送N返回开始图4-4下位机接收程序流程图发送数据计算累积和发完数据? N发送检验和 Y接收应答信号是否是Y N返回 Y 图4-5下位机发送程序流程图4.2 上位机监控软件设计对于温室内温湿度数据的实时值及其变化情况都是通过上位机反映给用户的,操作者则凭借上位机设置初始参数及根据显示的数据情况采取相应的控制操作等。上位机监控软件设计部分主要利用VB语言编写,上位机软件设计主要需要进行的操作主要包括通信模块设计、用户界面设计及数据库设计三个方面。其主要实现的功能如下:参数设置:通过上位机实现温湿度数据正常范围的设置,用户登录名及密码设置,两次测量的时间间隔设置等功能。串行通信:通过通信配置,实现上下位机之间的数据传送。数据保存:对于下位机传送的数据,上位机应具有对数据的存储功能。即对于SHT11采集到的数据的历史值,数据的处理结果,均值,最高

温馨提示

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

评论

0/150

提交评论