基于单片机的粮仓测控系统_第1页
基于单片机的粮仓测控系统_第2页
基于单片机的粮仓测控系统_第3页
基于单片机的粮仓测控系统_第4页
基于单片机的粮仓测控系统_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

亠 、八—0前言粮食是一个国家生存的根本,为了防备战争、灾荒及其它突发性事件,粮食的安全储藏具有重要意义。根据国家粮食保护法规,必须定期抽样检查粮仓各点的粮食温度与湿度,以便及时采取相应的措施,防止粮食的变质。但大部分粮仓目前还是采取人工测温的方法,这不仅使粮仓工作人员工作量增大,且工作效率低,尤其是大型粮仓的温度检测任务如不能及时彻底完成,则有可能会造成粮食大面积变质。据有关资料统计,目前,我国各个地方及垦区的各种大型粮仓都还存在着程度不同的粮食储存变质问题。我国每年因粮食变质而损失的粮食达数亿斤,直接造成的经济损失是惊人的[1]。对粮仓粮食安全储藏的主要参数是粮仓的温度和湿度,这两者之间又是互相关联的。粮食在正常储藏过程中,含水量一般在12%以下是安全状态,不会产生温度突变,一旦粮仓进水、结露等使粮食的含水量达到20%以上时,由于粮食受潮,胚芽萌发,新陈代谢加快而产生呼吸热,使局部粮食温度突然升高,必然引起粮食“发烧”和“霉变”,并可能形成连锁反应,从而造成不可挽回的损失[2]。此次设计的是粮仓温湿度实时检测控制系统,是对一个粮仓的温湿度进行控制,以保证粮仓储粮的安全。粮仓温湿度控制系统是以AT89S52单片机为核心构成控制系统。本课题完成了整个系统的硬件设计,提出了一种可以应用于中小型粮仓的温湿度控制系统。单片机粮仓的发展概况研究的背景与意义农业是国民经济的基础,粮食是基础的基础。近年来,随着农业科学技术的不断进步,农业生产持续而稳定地增产。农户生产粮食数量也日益增多,绝大部分农民不仅解决了温饱问题,而且有了更多的粮食。我国粮食年产量和常年储存量均居世界首位。中央粮食储备有较为完善的仓储设施和技术保障,在保证国家粮食安全方面发挥着重要作用。但是,我国还有一半以上的粮食储存在农民手中,这些粮食的储藏安全是国家粮食安全的重要组成部分。长期以来由于种种原因,忽视了农户粮食储藏技术的研究与推广,农户粮食的储藏技术非常落后,给国家和人民造成了巨大的损失。与此同时粮食产量增长所依赖的资源正在告急,如耕地面积进一步减少,水土流失日益严重,生态平衡遭到破坏,人口仍在增长的状况。而提高粮食总产量的空间已很小,还有我国到2040年人口将达到16.6亿。根据我国现有的光、热、水、土和气候资源,中国科学院在《我国土地的人口承载能力研究》中指出:我国粮食最大可能生产能力为 8.3亿1文档收集于互联网,如有不妥请联系删除.吨,按联合国确定的最低标准人均500kg计算,16.6亿人口是我国国土人口承载能力的极限。这就迫使我们必须将粮食产后的损失降低到最低限度,减少粮食的储藏损失无疑是利国利民的好事,是保证国家粮食安全的大事。在这样一种大形势下,国家投资兴建了大型现代化粮库,最大粮库方圆几公里,仓库房数为数十个。由于大型粮库中粮仓的容量和粮库的规模都是前所未有的,这些因素对原有小粮库的正常运行带来了一些新问题。主要存在问题有如何随时掌握每个仓内粮食的质量变化情况,保证入库的粮食在较长时间的保存期内不变质。21世纪,人类社会发展有三个不可能逆转的趋势:第一是人口的增长,现今世界人口已突破60亿,2050年可能达到100亿;第二是耕地逐年减少,人均占有耕地将会更少;第三是人类对社会物质生活的需求越来越高。这三个趋势必然导致粮食危机,必然会提出怎么养活100亿人口的问题。据联合国世界粮农组织统计,每年粮食因储存不善造成霉烂损失占世界粮食总产量20亿吨的1.5%,可达3000万吨。按人均每年250kg口粮计算,相当于1.2亿人一年的口粮(世界目前有8亿人处于饥饿或半饥饿状态);我国粮食总产量5亿吨,按这个百分比计算,霉烂粮食为750万吨,如果不霉烂,可解决3000万人一年的口粮。因此,人类必须千方百计地杜绝粮食的任何损失浪费,决不允许粮食在储存期间出现像现在这样的每年霉烂3000万吨的严重损失。做好粮食储备工作,对促进经济稳定发展和社会安定具有重要的意义。粮仓测控系统包括:粮食检测、分析与通风控制。“粮食检测”在粮食储藏过程中所起的作用就像“人工”保管时期保管人员的“眼睛”和“鼻子”,对粮食储藏过程中各种粮情进行实时观察,并密切关注着粮情的实时变化;“粮食情况分析”就像保管人员的“大脑”,对通过“眼睛”和“鼻子”观察到各种粮情及变化情况,并根据粮食储藏技术的特点和粮食储藏的各种环境条件进行综合分析与判断,给出相应的结论及处理建议;“通风控制”就像保管人员的“手”和“足”,根据“大脑”的结论和处理建议来采取相应的处理措施,以确保粮食处在适宜的储藏状态,保证粮食储藏的安全。粮食检测是对粮食储藏过程中粮堆温度、仓内温、湿度、大气温、湿度等基本检测参数变化的记录。粮情检测系统是通过电源电缆、通讯电缆将计算机、检测主机、检测分机、分线器和测温电缆等连结起来构成的系统。粮食检测过程是把埋在粮堆内的温度传感器所感应到粮堆内的温度变化情况,通过分线器、检测分机、检测主机而反映到主控机房的计算机上,使库房保管人员可以随时观察粮堆内的温度变化情况,并采取相应的处理措施,以确保粮食储藏过程的安全。建立粮食监测产品技术应用新体系,应本着一切从国情出发,从实际需要出发,从目前国内的技术水平出发,面向遍布全国各产区和销区粮库的不同仓房类型和功能的粮情检测成套系列化产品,经济实用地满足粮食储藏的不同需求。国内外粮仓技术现状粮仓测控技术的研究始于20世纪70年代,它是科学保粮的重要技术之一。随着国家农业产业政策的不断完善,以及现代科学技术在农业生产中的应用和推广,国家粮食总产量不断突破历史新高。但国家的粮食储备状况自建国以来却没有得到明显改善,全国80%左右的粮食仍采用原始的存储方式。初期,以铜电阻,热敏电阻作为传感器件,通过检测电阻的变化来反映粮食温度的变化,为粮食保管提供参考依据。但此工作靠人工一点一点测量,效率低,准确性差。在粮食部门各级领导的关怀和粮食行业科技主管部门的人力支持下,在粮食行业内、外广大科技工作者近30年的共同努力下,粮食检测技术不断完善、提高、并日趋成熟,逐步形成了样式繁多的粮情检测系统,为安全、科学储粮起到了积极的作用。法国储粮专家Je.Lasseran,D.Berhant采用温度调节器来控制温度。实验在一个500吨、高16米的中型仓中进行。研究表明,在低温气候下,从夏季到秋季经 2〜3次通风每次要持续几个晚上,每天4〜10小时,可将温度从300C降到SC(在英国气候条件下),在冬天粮温可保持不变,并在春天有所上升,经过一年的实践表明:不仅卫生状况良好,而且粮食的品质没有变化。澳大利亚Gib等专家最近研究了一种以PC机为基础的可遥控和监侧通风系统的通风控制器,该控制器包括一台PC机和相关的软件、气象预报台和粮堆中的灵敏元件。它能灵活地、有效地控制通风系统,减少通风费用,并可以实行联网,从而不必依靠仓库管理人员收集的情况。就能得到通风系统的有关数据和系统的运行情况。目前,他们正进一步完善该通风控制系统并建立通风过程中热量和物质水分转换的数学模型。1987年我国吴子丹等报道了储粮机械通风的计算机控制系统。 根据在仓房内通风试验得到的数据,建立一个数学模型表示粮食平衡水分的关系。用该模型编制电算程序,观察粮食的通风效果,并根据物理参数的变化,确定控制通风的有效方式;2004年汤庆设计了粮库温度监控系统,该系统从温度传感器、数据传输方式、上位机监控软件三个方面入手对粮库系统加以改进;2005年施伟祥研究了基于CAN总线的粮食监控系统,该系统完成了对各仓房的温湿度的实时巡检,并对采集数据进行处理分析来掌握粮食的储存情况。粮仓测控系统的发展趋势对比国内外温室环境控制研究及应用情况我们可以看出,温室环境控制系统正向着分布式、网络化、智能化方向发展。分布式目前工业控制的发展我们可以分为五个阶段:人工控制阶段、以模拟表为主的控制阶段、计算机参与的控制阶段、分散控制DCS(DistributedControlSystem)阶段、现场总线控制FCS(FieldBusControlSystem)阶段。网络化网络通讯技术是目前最有活力,发展最快的高科技领域。网络技术的应用使得信息的交换速度、范围、信息量得到了极大的提高。随着网络在生产中的应用,使得在线远程服务成为可能。我们可以利用远在千里之外的专家,来解决现场问题,它改变了传统的信息传播方式,对人类的生活方式造成了重大影响。智能化利用计算机强大的数据运算能力,巨大的存储空间,从而能够将种植者的经验通过管理软件固化起来。指导非专业人员或技术不熟练人员代替专家进行工作。目前神经网络、遗传算法、模糊推理等人工智能技术在设施农业中得到重视并逐步发展。系统总体方案设计储粮的主要物理参数是粮食的温度以及粮库内、外的温度、湿度,这些参数的快速、准确、自动监测对于减少粮食损耗具有重要意义。粮情检测系统是能够对粮食进行自动测温、测湿,实现粮情的自动监测,完成粮食状态的分析与评估的智能系统。该系统利用计算机构成整个粮食仓储区管理系统,系统设计成主从工作作方式,主机应具备通讯、数据显示、数据存储、数据分析等主要管理功能。下位机系统应该具备通讯、控制及参数输入等基本功能。系统总体结构及方案系统结构该系统充分利用多点分布式控制系统的优点,是一个多变量的输入输出测控系统,PC机和转换模块放在微机房内,测控分机和传感器安装在粮仓内部。粮情测控系统主机结构图见图2-1。图2-1系统主机结构图Fig.2-1Mainframechart上位机选用PC机作为主机,与多台下位机通过转换模块实现主从通讯,对多个粮仓

进行网络化的检测、管理、和控制。由于 PC机的串口是RS-232标准,传输距离短,容易受外界干扰,所以采用RS-485总线与测控分机连接。构成上位主机和若干分机的串行通信。它支持多点通信,传输距离长,可根据情况随时进行系统的调整和扩展。为避免通讯中可能出现的信息冲突与竞争,首先是对各从机进行编址,通讯时,主机先发送地址帧,各从机收到地址帧后,与自身地址相比较,如果相同则发送数据,不同则继续等待主机访问,主机收到数据后。发确认信号给从机,从机收到确认信号后一次通讯即告结束;若主机未收到数据,则从机重复发送,直到接收到主机的确认信号为止。图2-2系统分机结构图Fig.2-2Systemextensionschart下位机采用单片机最小系统设计,作为从机,不用外扩其他硬件电路,成本低,体积小。为避免通讯中可能出现的信息冲突与竞争,每个从机都有一个固定的地址,通讯时主机先发送地址帧,各从机收到地址帧后,与自身地址相比较,如果相同则发送数据,否则等待。主要功能是完成巡回检测和传送。从机定时采集数据,并保存在内部的 RAM中,通过本身带有的RS-485接口实现与主机的远距离通讯。控制系统的设计,上位机经过一定程序运行后向单片机发出启动信号,启动单片机及被控机构。同时,准备接收下位机即单片机送来的信号和数据。被启动的下位机,一方面启动传感器来测量粮仓环境,并将采集到的信号送入单片机进行预处理,另一方面把采集到的数据存储并向中心上位机发送。同时,上位机发出控制信号,去控制执行机构以达到粮食所需的环境。总体设计方案根据设计功能要求,系统可分如下部分:温度监控:对粮仓温度进行测量,并通过升温或降温达到储粮最佳温度。湿度监控:对粮仓湿度进行测量,并通过喷雾或去湿达到储粮最佳湿度。控制处理:当温度、湿度越限时报警,并根据报警信号提示采取一定手段控制。显示:LED就地显示输入值和相应的温湿度。实施措施实际环境温度与给定界限比较,执行加热/制冷措施。实际环境湿度与给定界限比较,执行加湿/去湿措施。越限报警:当温度越限时声音报警。键盘与显示:负责用户的输入及相关数据的显示。系统方案论证与选择当将单片机用作测控系统时,系统总要有被测信号通过输入通道,由单片机拾取必要的输入信息对于测量系统而言[3],如何准确获得被测信号是其核心任务,而对测控系统来讲除对被控对象状态的信号测试外,还要将测试数据与控制条件对比并实施控制相应执行设备。传感器是实现测量与控制的首要环节,是测控系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量和控制都将无法实现。工业生产过程的自动化测量和控制,主要依靠各种传感器来检测和控制生产过程中的各种参数,使设备和系统正常运行在最佳状态,从而保证生产的高效率和高质量。温度传感器的选择方案一:采用热电阻温度传感器。热电阻是利用导体的电阻随温度变化的特性制成的温度元件。现应用较多的有铂、铜、镍等热电阻。其主要特点为精度高、测量范围大、便于远距离测量。铂的物理、化学性能极稳定,耐氧化能力强,易提纯,复制性好,工业性好,电阻率较高,因此,铂电阻用于工业检测中高精密测温的温度标准。缺点是价格高,温度系数小,受到磁场影响大,在原介质中易被沾污变脆。按 IEC标准测温范围-200~650C,每百度电阻比WC(100)=1.3850时R0为100Q和10Q⑷其允许的测量误差A级为±(0.15C+0.002ItI),B级为±(0.30C+0.005ItI)o铜电阻的温度系数比铂电阻大,价格低也易于提纯和加工,但其电阻率小,在腐蚀性介质中使用稳定性差,在工业中用于-50~+180测温。方案二:采用模拟集成温度传感器AD590,它的测温范围在-55C~+155°C之间,而且精度高。M档在测温范围内非线性误差为±).3C[5]。AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会损坏,使用可靠。它只需直流电源就能工作,而且,无需进行线性校正,所以使用也非常方便,接口也很简单。作为电流输出型传感器和电压输出型相比,他有很强的抗外界干扰能力。AD590的测量信号可远传百余米。方案三:采用数字化温度传感器DS18B20⑹。DS18B20是Dallas半导体公司研制的一款数字化温度传感器,支持“一线总线”接口,即只通过一根信号线完成数据、地址和控制信息的传输。该器件只有3个引脚(即电源VDD、地线GND、数据线DQ),且不需要外部元件,内部有64位光刻ROM,64位器件序列号出厂前就被刻于ROM中,作为器件地址序列码,便于实现多点测量。全部传感元件及转换电路集成在形如一只三极管的集成电路内,现场温度直接以“一线总线”的数字传输方式,不仅大大提高了系统的抗干扰性,而且适合恶劣环境的现场温度测量。如:环境控制、设备过程控制、一些测温类电子产品。该电路的温度检测范围是-55C~125C,精度是±).5C(-10C~85C),可以分别在93.75ms和750ms完成9位和12位的数字温度值读入[7]。根据设计要求:使用挂接在单总线上的多个数字温度传感器元件,考虑到性价比等一些问题,本文选用的是方案三。湿度传感器的选择测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接的获得该物质的吸水量和周围空气湿度。电容式、电阻式和湿涨式湿敏元件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化而完成的湿度测量[8]。方案一:采用HOS-201湿敏传感器。HOS-201湿敏传感器为高湿度开关传感器,它的工作电压为交流1V以下,频率为50HZ~1KHZ,测量的湿度范围是0RH~100%RH,工作的温度范围是0C~50C[9],阻抗在75%RH(25C)为1MQ。这种传感器是用于开关的传感器,不能在宽频带范围内检测湿度,因此主要用于判断规定值以上或以下的湿度电平。然而,这种传感器只限于一定范围内使用时具有良好的线性,可以有效地利用其线性。方案二:采用HS1100/HS1101湿度传感器。HS1100/HS1101电容式传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,由顶端接触(HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路,适用于制造流水线上的自动插件和自动装配过程等。相对湿度在1%~100%RH范围内;电容量由16pF变到200pF,其误差不大于i2%RH;响应时间小于5S;温度系数为0.04pF/C,可见精度是较高的。方案三:采用数字湿度传感器(如SHT11等)。数字湿度传感器将传感器、信号放大调理、A/D转换、I2C总线接口全部集成于一个芯片中。应用该方案不需外接 A/D转换芯片,可以大大简化硬件电路,并能提高电路的可靠性[10]。综合比较三个方案,方案一,虽然满足精度及测量湿度范围的要求,但其只限于一定范围内使用时才具有良好的线性,而且还不具备在本设计系统中对温度-40C~+60C的要求;方案二,虽然不是数字式传感器,与单片机的接口需要外接A/D转换器件,但其性能较优,使用简单,只要合理选择转换电路也可以有较高的性价比。本系统中,我们选择方案二来作为本设计的湿度传感器。主要技术参数系统平台:1)硬件平台:PC机,单片机;2)软件操作平台:Windows7;3)应用软件平台:C程序设计语言。检测范围:1) 温度范围:-55C~+125C;2) 湿度范围:1%RH~100%RH;3) 工作温度:-40C~+60C。检测数据处理1) 数据分析:通过对传感器测量的数据进行分析,判断粮仓是否处于安全状态;2) 数据打印:对温度、湿度数据打印;3) 数据管理:对数据进行计算、统计、汇总及打印。检测方式1) 实时检测:不间断对粮食进行检测;2) 定时检测:在指定的时间或日期对粮食进行检测。报警系统对采集到的温度、湿度数据进行分析,达到报警点的具体位置时系统报警。系统硬件设计与实现本粮仓测控系统采用的就是主从分布式,分布式控制具有很多优点:(1)减少了系统接线的复杂程度和接线费用,同时也降低了信号的干扰;(2)使系统具有很高的可靠性;(3)使系统配置灵活,易于扩充和修改。AT89S52的介绍本系统中,我们采用美国ATMEL(爱特梅尔)公司生产的AT89S52单片机作为主控芯片。AT89S52是一种低功耗、高性能CM0S8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧8位CPU和在系统可编程Flash[11],使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52主要性能1) 与MCS-51单片机产品兼容;2) 256字节RAM;3) 8K字节在系统可编程Flash存储器;4) 1000次擦写周期;5) 全静态操作0Hz-33MHz;6) 三级加密程序存储器;7) 32个可编程I/0口线;8) 3个16位定时器/计数器;9) 8个中断源;10) 全双工UART串行通道;11) 低功耗空闲和掉电模式;12) 掉电后中断可唤醒;13) 看门狗定时器;14) 双数据指针;16)掉电标识符。另外,AT89S52可降至OHz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。图3-1所示为AT89S52单片机最小系统原理图。AT89S52硬件结构图3-1AT89S52最小系统Fig.3-1AT89S52minimumsystem温度检测电路设计温度检测是粮情监控系统的重要组成部分,它直接关系到整个监控系统的质量。本系统采用的数字式温度传感器是美国DALLAS公司生产的数字式温度传感器DSl8B2O是世界上第一片支持“一线总线接口的温度传感器[11]。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性,适合于恶劣环境的现场温度检测,如环境控制、设备或过程控制、测温类消费电子产品等。支持 3-5.5V的电压范围。DSl8B2O功能特性1)独特的1-Wire接口,不需要外部元件,只要一个接口引脚即可完成通信;2) 每个DSl8B2O都有一个独特的64位单一代码储存在ROM中;3) 多点分布式温度传感能力使检测应用得以简化;4) 电压范围3V〜5.5V;5) 温度测量范围-55C〜+125C,在-10C〜+85C时测量精度为±).5°C;6) 实现9〜12位的数字值读数方式,在750ms内可将温度转化为12位数字量;7) 用户可以自己设定非易失性温度报警(TH和TL);8) 应用在恒温控制、工业系统、消费产品、温度计或任何热敏感系统。图3-2DS18B20封装外部结构图Fig.3-2DS18B20externalpackagingstructurediagramDS18B20引脚功能描述如下:1) DQ:数据输入/输出引脚。开漏单总线引脚。当被用在寄生电源下,可向器件供电;2) VDD:电源引脚,可选择使用。当工作于寄生电源时,此引脚必须接地;3) GND:地信号;4) NC:空引脚。322 DS18B20结构特性DS18B20内部结构主要由六部分组成:电源电路、64位光刻ROM及1-wire接口、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器和CRC校验码产生器。其内部结构如图3-3所示。图3-3DSI8B20的方框图Fig.3-3TheblockdiagramDSl882064位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的[14]。DS18B20高速存储器包含了9个连续字节,前两个字节是测得的温度信息,第一个字

节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是 TH、TL的易失性拷贝,第五个字节是配置寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余校验字节。其中,配置寄存器的内容如下:TMR1R011111”低5位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如表3-1所示:(DS18B20出厂时被设置为12位)表3-1分辨率设置表Tab.3-1resolutionsettingtableR1R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375ms1112位750msDS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625C/LSB[16]形式表达,其中S为符号位。如下表3-2所示。表3-2 12位的温度转化形式表Tab.3-212temperatureconversiontableformbi!5LSByte 23 2 2 20 F乞 2-3bit15bit14bit13bit12bit11bit10bit9bit8MSByteS S S S S 26 25 24这是12位转化后得到的12位数据,存储在DS18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16〜60微秒左右,后发出60〜240微秒的存在低脉冲,主CPU收到此信号表示复位成功。该DSI8B20的通信经过一个单线接口,在单线接口情况下,在 ROM操作未建立之前不能使用存贮器和控制操作。主机必须首先提供五种 ROM操作命令之一:1) ReadROM(读ROM);2) MatchROM(符合ROM);3) SearchROM(搜索);4) SkipROM(跳过ROM);5) AlarmSearch(告警搜索)。这些命令对每一器件的64位激光ROM部分进行操作。如果在单线上有许多器件,那么可以挑选出一个特定的器件,并给总线上的主机指示存在多少器件及其类型。在成功地执行了ROM操作序列之后可使用存贮器和控制操作然后主机可以提供六种存贮器和控制操作命令之一。一个操作命令指示DS18B20完成温度测量。该测量结果将放入DS18B20高速缓存存储器,通过发出读缓存存储器内容的存储器操作指令可以读出此结果。每一温度报警触发器TH和TL构成一个字节的EEPROM。如果不对DS18B20施加报警搜索命令,这些存储器可用作通用用户存储器,使用存储器操作命令可以写TH和TL。对这些寄存器的读访问通过存储器,所有数据均以最低有效位在前的方式被读写。3.2.3寄生电源图3-4所示为寄生电源电路。当I/O或VDD弓I脚为高电平时,这个电路便取得电源只要符合指定的定时和电压要求,I/O将提供足够的功率。寄生电源的优点是双重的:(1)利用此引脚,远程温度检测无需本地电源;(2)缺少正常电源条件下也可以读ROM。为了使DSl8820能完成准确的温度变换,当温度变换发生时I/O线上必须提供足够的功率。因为DSl8B20的工作电流高达lmA,5K的上拉电阻将使I/O线没有足够的驱动能力。如果几个DSl8B20在同一条I/O线上而且企图同时变换。那么这一问题将变得特别尖锐。向DSl8B20供电的另一种方法是通过使用连接到VDD引脚的外部电源。这种方法的优点是在I/O线上不要求强的上拉。总线上主机不需向上连接便在温度变换期间使线保持高电平。这就允许在变换时间内其它数据在单线上传送。此外,在单线总线上可以放置任何数目的DSI8B20,而且如果它们都使用外部电源,那么通过发出跳过(Skip)ROM命令和接着发出变换(Conver)T命令,可以同时完成温度变换。注意只要外部电源处于工作状态,GND(地)引脚不可悬空。图3-4使用VDD提供温度变换所需电流Fig.3-4VDDfortheuseofcurrenttemperatureisneeded

在总线上主机不知道总线上DSI8B20是寄生电源供电还是外部VDD供电的情况下,

在DS18B20内采取了措施来通知采用的供电方案。总线上主机通过发出跳过(Skip)ROM

的操作约定。然后发出读电源命令,可以决定是否有需要强上拉的 DSI8B20在总线上。在此命令发出后,主机接着发出读时间片,如果是寄生供电, DS18B20将在单线总线上送回“0”,如果由VDD引脚供电,它将送回1。如果主机接收到一个“0”,它知道它必须在温度变换期间在I/O线上提供一个强的上拉。由此可见,采用DSI8B20温度传感器的粮情测控系统的测温电缆与传统的热敏电阻测温电缆不相同,该测温电缆一根导线可以连接多个 DSI8B20温度传感器。最大的特点是可以利用数据线供电,在测温电缆中只放置两根平行的细钢丝绳即可连接多个DSI8B20温度传感器,这样不仅使测温电缆的制造简便,成本下降,而且提高了测温电缆的抗拉强度、便于温度传感器的更换。正是这些特点使得采用DSI8B20温度传感器的粮情检测系统更适用于高大粮仓(诸如浅圆仓、立筒仓)的应用环境,可以解决高大粮仓在不需重新安装测温电缆的情况下更换测温电缆内部的温度传感器以及改变温度传感器相对位置。湿度检测电路设计HS1100/HS1101湿度传感器介绍测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容式、电阻式和湿涨式湿敏原件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化进行湿度测量的。HS1100/HS1101基于独特工艺设计的电容元件,这些相对湿度传感器可以大批量生产。可以应用于办公自动化、车厢内空气质量控制、家电、工业控制系统等。在需要湿度补偿的场合他也可以得到很大的应用。HS1100/HS1101湿度传感器特点:不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结,由顶端接触( HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路,适用于制造流水线上的自动插件和自动装配过程等。HS1100/HS1101湿度传感器特点:1)精度较高;2) 温度系数为0.04pF/C;3) 其相对湿度在1%~100%RH范围内;4) 电容量由16pF变到200pF;5) 其误差不大于±2%RH;6) 响应时间小于5S;7) 可靠性高、稳定、响应速度快;8) 适用于线性电压输出和频率输出两种电路。图3-5HS1101实物图

Fig.3-5HS1101physicalfigureHS1100/HS1101湿度传感器相对湿度在1%~100%RH范围内;电容量由16pF变到200pF,其误差不大于2%RH;响应时间小于5s;温度系统为0.04pF/C。可见其精度是较高的。其湿度-电容响应曲线如图3-6所示。5图3-6HS1101湿度一电容响应曲线Fig.3-6HS1101humidity-Capacitaneeresponsecurve3.3.2湿度测量电路HS1100/HS1101电容传感器,在电路构成中等效于一个电容器件,其容量随着所测空气湿度的增大而增大。如何将电容的变化量准确地转为计算机易于接受的信号,常有两种方法:一是将该湿敏电容置于运放与阻容组成的桥式振荡电路中,产生的正弦波电压信号经整流、直流放大、再A/D转换为数字信号;另一种是将该湿敏电容置于555振荡电路中,将电容值的变化转为与之成反比的电压频率信号,可直接被计算机所采集。频率输出的555测量振荡电路如图3-7所示。集成定时器555芯片外接电阻Rl,R3与湿敏电容C,构成了对C的充电回路。7端通过芯片内部的晶体管对地短路又构成了对C的放电回路,并将引脚2、6端相连引入到片内比较器,便成为一个典型的多谐振荡器,即方波发生器。另外,R21是防止输出短路的保护电阻。图3-7频率输出的555振荡电路Fig.3-7frequencyoutputoftheoscillatorcircuit555该振荡电路两个暂稳态的交替过程如下:首先电源 Vcc通过Rl、R3向HS1100充电,经t1充电时间后,Uc达到芯片内比较器的高触发电平,约0.67Vcc,此时输出引脚3端由高电平突降为低电平,然后通过R3放电,经t2放电时间后,Uc下降到比较器的低触发电平,约0.33VS。此时输出,此时输出引脚3端又由低电平突变为高电平,如此翻来覆去,形成方波输15文档收集于互联网,如有不妥请联系删除出。其中,充放电时间为:TOC\o"1-5"\h\zt充电=C(R1+R3)Ln2 (3-1)t放电=CR3Ln2 (3-2)因而,输出的方波频率为:f=1((t放电+t充电)=1/[C(R1+2R3)Ln2] (3-3)可见,空气湿度通过555测量电路就转变为与之呈反比的频率信号,表 3-3给出了其中的一组典型测试值。表3-3空气湿度与电压频率的典型值Tab.3-3Typicalairhumidityandvoltagefrequency湿度RH%频率HZ%湿度RH%频率HZ%0735160660010722470646820710080633030697690616840685310060335067283.3.3多路检测信号的实现为了能够实现湿度信号的多点测量,本设计采用2片8选1模拟开关CD4051组成矩阵测量网络,可实现64路湿度信号的采集[13]。矩阵测量网络由湿度一频率变换电路及2片CD4051组成,其硬件电路如图3-8所示。图3-8温度矩阵测量网络Fig.3-8Temperaturemeasurementnetworkmatrix从图3-8可以看出,每片CD4051有3条地址码控制线,通过单片机控制每片CD4051可实现8选1功能,2片CD4051组合使用就可实现64路湿度信号的采集。U2的INH端直接接地,U1的INH端通过单片机端口控制,在进行湿度信号采集的时候该端口置为低电平,允许多路开关选通。U1的X端子与单片机P3.4端口相连,实现湿度信号的采集。3.3.4多路开关介绍多路开关,又称“多路模拟转换器”。多路开关通常有n个模拟量输入通道和一个公共的模拟输入端,并通过地址线上不同的地址信号把 n个通道中任一通道输入的模拟信号输出,实现有n线到一线的接通功能。反之,当模拟信号有公共输出端输入时,作为信号分离器,实现了1线到n线的分离功能。在本设计中,选用的是8选1多路开关CD4051,它是一种单片、COMS、8通道开关。该芯片DTL/TTL-COMS电平转换器,带有禁止端的8选1译码器输入,分别加上控制的8个COMS模拟开关TG组成。CD4051A的引脚图和内部原理框图分别如图3-9和3-10所示。INH是允许或禁止输出控制端,它的逻辑电平控制是当INH=0即INH=VSS时,允许输出;当INH=1即INH=VDD时,禁止输出。输入信号Vi的范围是VDD~VEE,所以用户可以根据自己的输入信号范围和数字控制信号的逻辑电平来选择VDD、VEE电压。该芯片允许VDD-VSS和VDD-VEE在-0.5V到+15V范围内。图3-9CD4051引脚图Fig.3-9CD4051pindiagram图中功能如下:通道线IN/OUT(4、2、5、1、12、15、14、13):该组引脚作为输入时,可实现8选1功能。作为输出时,可实现1分8功能。XCOM(3):该引脚作为输出时,则为公共输出端;作为输入时,则为输入端。A、B、C(11、10、9):地址控制引脚。INH(6):禁止输入引脚。若INH为高电平,则为禁止各通道和输出端OUT/IN接至;若INH为低电平,则允许各通道按表3-4关系和输出段OUT/IN接通。VDD(16)和VSS(8):VDD为正电源输入端,极限值为17V;VSS为负电源输入端,极限值为-17V。VGG(7);电平转换器电源,通常接+5V或-5V。图3-10CD4501内部原理框图Fig.3-10CD45010InternalBlockDiagramCD4051作为8选1功能时,若A、B、C均为逻辑“0”(INH=0),则地址码00013经译码后使输出端OUT/IN和通道0接通。其他情况下,输出端OUT/IN输出端和各通道的接通关系如表3-4o表3-4 CD4051通道选择真值表Tab.3-4CD4051ChannelSelectionTruthTable输入状态选中通道INHCBA00000000110010200113010040101501106011171XXX没有RS-485串口电路RS-485串口电路是半双工,在RS-485发送端,驱动器将TTL电平信号转换成差分信号输出,在接收端将差分信号还原成TTL信号,所以RS-485有很强和很高的抗共模干扰能力和接收灵敏度。在传送数据速度达1OOkb/s时,RS-485的通信距离可达1200m[14]。本系统中,P3.0、P3.1、P3.2、P3.3分别与RS-485C串口芯片MAX1487的DI、R0、RE、DE相连,然后通过MAX1487的A、B端实现与远端上位管理端的连接。 RS-485串口电路见图3-11。图3-11RS-485串口电路Fig.3-11RS-485serialinterfacecircuitRS-485的电气特性:采用差分信号负逻辑,逻辑 T以两线间的电压差为+(2~6)V表示;逻辑0”以两线间的电压差为-(2~6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与 TTL电平兼容,可方便与TTL电路连接。RS-485的数据最高传输速率为10Mbps。RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。RS-485最大的通信距离约为1219m,最大传输速率为10Mbps,传输速率与传输距离成反比,在100KpbS的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。3.5键盘及显示电路键盘及显示系统采用8279芯片控制16键的键盘和8位七段数码管,以实现用户的输入与数据输出。16个键分别是“0”到“F”,对应的键值是0到15不需要键值的转换。七段数码管采用共阴极,系统中使用的段码如下表 3-5所示表3-5段码表Tab.3-5SegmentTable显示01234567段码3FH06H5BH4FH66H6DH7DH07H显示89101112131415段码7FH6FH77H7CH39H5EH79H71H8279可编程键盘/显示器接口芯片,8279使Intel公司为8位微处理器设计的通用键盘/显示器接口芯片[15],其功能主要体现在两个方面接收来自键盘的输入数据并做出处理,数据显示的信理和数据显示器的控制。单片机采用 8279管理键盘和显示器,可减少软件程序,减轻负担,且显示稳定,程序简单,如图 3-12所示。图3-128279管脚图Fig.3-128279pinmap8279的引脚功能(采用40线双列直插式封装)。DB0~DB7:双向外部数据总线。用于传送8279与CPU之间的命令、数据和状态;CS:片选信号线,低电平有效;A0:区分信息的特征位。当A0位置1时,CPU写入8279的信息复位命令,CPU从8279读出的信息为8279的状态;当A0为0时,I/O信息都为数据;RD,WR:读和写通信号线,均为低电平有效;IRQ:中断请求输出线,高电平有效;RL7~RL0:键盘回送线,平时为高电平,只有当某一键闭合时,其中一条线才变低;SL7~SL0:扫描输出线,用于对键盘和显示器进行扫捕;OUTB3~OUTB0OUTA3~OUTA0:显示段输出线;BD:显示熄灭控制线,低电平有效;RESET:复位输入线,高电平有效;SHIFT,CNTL/STB:控制输入钱,由内部拉高电阴拉成高电平,也可由外部控制按键拉成低电平;CLK:外部时钟输入线,其信号由外部振荡器提供;Vcc,GND:分别为+5V电源和地。8279初始化时,设定的相关命令字如下:Z8279EQU08701H;8279状态/命令口地址;D8279EQU08700H;8279数据口地址;LEDIODEQU00H;左边输入八位字符显示;外部译码键扫描方式,双键互锁LEDFEQEQU38H;扫描速率;LEDCLSEQU0DIH;清除显示RAM;LEDWROEQU80H;设定的将要写入的显示RAM地址;系统的连接图如图3-13所示。图3-13键盘及显示电路Fig.3-13keyboardanddisplaycircuit3.6控制设备驱动电路粮仓温、湿度的控制是通过空调器与风机实现的。当条件适合时,打开进出口的风机,在粮仓内形成通风气流。如果风机调节达不到控制要求,则使用空调进行降温与排湿。湿度的调整还可配合加湿机进行调节。风机、空调机、加湿机的控制是由单片机和光电耦合器驱动双向晶闸管完成的 [16]。其驱动电路如图3-14所示。在图3-14中,发光二极管是用来指示设备运转情况的。当单片机输出端口为低电平时,LEDI亮,光耦通,双向晶闸管导通,应用晶闸管驱动设备避免了机械触点式继电器驱动的一些缺点。 其中,单片机的P1.2、Pl.3、P1.4端口分别接空调机、风机、加湿机的驱动电路。图3-14风机、空调机、加湿机驱动电路Fig.3-14Fansairconditioners,humidifiersdrivecircuit3.7报警接口电路在微型计算机控制系统中,为了安全生产紧急状态报警系统采集的数据通过计算机与预设值进行比较并报警以便提醒操作人员注意一些重要的参数或系统部位,以便采取紧急措施。其方法就是通过计算机进行数据处理、数字滤波、标度变换之后与该参数上下限给定值进行比较,如果高于上限值(或低于下限值)则进行报警,否则就作为采样的数据正常进行显示和控制。本设计采用峰鸣音报警电路。峰鸣音报警接口电路的设计只需购买市售的压电式蜂鸣器,然后通过单片机的 1根口线经驱动器驱动蜂鸣音发声。压电式蜂鸣器约需lOmA的驱动电流,可以用一个晶体三极管驱动,如图3-15所示。在图3-15中,P2.3接晶体管基极输入端。当P2.3输出高电平“T时,晶体管导通,压电蜂鸣器两端获得约+5V电压而鸣叫;当P2.3输出低电平0”时,晶体管截止,蜂鸣器停止发声。图3-15三极管驱动的蜂鸣音报警电路Fig.3-15transistordrivenbeepalarmcircuit3.8 RS485-RS232电平转换电路上位PC机串行接口采用标准RS232接口,而温、湿度测控电路的通信方式为 RS485串行通信方式(为了提高通信距离和实现多粮仓测控) 。二者不能直接连接,需要进行电平转换方可将测控电路与PC机相连。图3-16所示为RS485-RS232电平转换电路。分别采用一片MAX232与MAX1487来完成。转换电路供电部分由PC机RS232端口的4、7脚通过VI、V2、V3、R4和电容C6来实现的。整个电路可做在RS232接头盒内。图3-16RS485-RS232电平转换电路Fig.3-16RS485-RS232levelconversioncircuit系统软件设计本设计软件主要包括:系统初始化模块、键盘显示模块、采样转换模块和控制模块等。系统初始化模块系统初始化模块的主要功能是完成系统的初始化以及设定系统的工作状态,初始化部分包括以下方面的内容:1)系统启动后,LED显示“0”。2) 等待用户输入温度及湿度值。按“B”键表示开始输入,这时可按温度下限、上限,湿度下限、上限的顺序依次输入,如果输入的顺序错可按B”键可重新进行输入,直到输入正确输入完毕后按“C”键确定。3) 系统进入工作状态。系统整体的工作方式如下框图4-1所示。图4-1系统整体的工作流程图Fig.4-1Theflowchartoftheoverallsystemof初始化程序部分流程图如图4-2所示。图4-2初始化程序部分流程图Fig.4-2Partoftheinitializationprocessflowdiagram键盘显示模块本系统中使用8279芯片完成有关键盘输入和温湿度显示工作。温度湿度是依次输入的并且依次以下限、上限输入,并且将温湿度的中间数值存入单片机中,在将LED清零后显示(分别在0123位),并依次显示实时的温度湿度数值(显示在4567位)。实际上,在系统初始化的过程中,除了初始化键盘和显示器之外,其中还包插着调用8279键盘显示模块,8279键盘显示模块部分的基本流程如下图4-3所示。图4-38279键盘显示模块部分的基本流程图Fig.4-38279keyboarddisplaymodulepartofthebasicflowchar采样模块湿度检测子程序相对湿度的检测采用相对湿度传感器 HS1101,该传感器的测量精度为±°ARH,测量时,将单片机定时到1s,用T0计数器记录“湿度-频率转换电路”中的输出方波数,定时时间到时,停止T0计数,此时TO所计的方波数即为“湿度-频率转换电路”的频率,对照表3-3(空气湿度与电压频率的典型值),判断该频率所属区域,将每个区域等分为100份,即相当于0.1%RH的精度,如在0%RH~10%RH之间均分100份,对应的频率分为100份,即用相对湿度为0%RH时对应频率(7351Hz)减去相对湿度为10%RH时的对应频率(7224Hz),用该差值除以100,公式如下:为了方便计算和保证计算精度,将增量扩大100倍,进行计算。在计算前将每段的增量计算好,存入表中,在实际计算中,分段进行查找,计算只涉及到加减,计算时间短,精度高。湿度检测的流程如图4-4所示。图4-4湿度检测的流程图Fig.4-4Flowchartinandhumiditydetectionfigure温度检测子程序温度检测子程序主要完成的是初始化DS18B20,从DS18B20中读出一个字节的数据,向DS18B20中写入一个字节的数据,配置DS18B20温度转换的精度等,读出SCRACHPAD存储器中的九个字节的数据,读出ROM中的64位CODE值,对读出的SCRACHPAD数据进行CRC校验,然后根据读出的数据得到测量出的十进制温度值。从 DS18B20中读出九个字节数据的流程图如图4-5所示。

图4-5温度检测的流程图Fig.4-5temperaturedetectionflowchartofFigureF面是关于DS18B20的读写程序,设单片机时钟晶振频率为12MHz1)DS18B20的初始化子程序RESET:CLRP3.5;发送复位脉冲MOVR7,#32;延时500usLCALLDELAY15SETBP3.5MOVR7,#4;等待60usLCALLDELAY15CLRP3.5;P3.5=0JBP3.4,RET1;P3.4=1不存在跳转SETBP3.5;存在DS18B20MOVR7,#28LCALLDELAY15RET1:RET延时子程序(Focs=12MHz)DELAY15:MOVR6,#6DEL151:DJNZR6,DELAY151DJNZR7,DELAY15;延时R7*15usRETDS18B20的读子程序RD1820:CLRCMOVR1,#9MOVR0,#TEMPLSBRD1820:MOVR2,#8RD1820:SETBP3.5NOPNOPCLRP3.5NOPNOPSETBP3.5MOVR7,#1LCALLELAY15MOVC,P3.4RRCADJNZR2,RD18202MOVX@R0,AINCRODJNZR21,RD18201RET3)DS18B20的写子程序WR1820:CLRCMOVR1,#8WR18201:CLRP3.5MOVR7,#1LCALLDELAY15;产生信号;准备输入数据;判断一子节是否读完;保存结果;判九个字节是否读完;产生写信号RRCAMOVP3.5,CMOVR7MOVP3.5,CMOVR7,#1LCALLELAY15SETBP3.5NOPDJNZR1,WR18201SETBP3.5RETDS18B20温度检测仿真如图;发送一位数据给DS18B20;一子节数据是否发送完4-6所示图4-6DS18B20温度采集仿真Fig.4-6DS18B20temperatureacquisitionsimulation4.4控制模块温湿度判断控制模块也是系统的核心模块之一,所谓判断控制模块,就是对用户输入的温度和湿度与当前粮仓内的实际温、湿度进行比较,先进行判断,然后再进行控制,控制模块是决定系统将要进行什么工作的。如温度高于上限时需要降温,低于下限时需要升温,同时还要肩动警报等。温度判断控制部分的程序整体思路如图4-7所示。图4-7温,同时还要肩动警报等。温度判断控制部分的程序整体思路如图4-7所示。图4-7温度控制模块流程图Fig.4-7Temperaturecontrolmoduleflowchart技术经济分析本文题目为基于单片机的粮仓温湿度测控系统,本设计以 AT89S52为系统控制核心,温、湿度测控系统采用典型的DS18B20和HS1101进行温、湿度测量,DS18B20具有测量精度高,价格低,单总线,抗干扰能力强等优点, HS1101具有高可靠性和长时间稳定性,反应时间快,价格低廉等优点,无疑这些都是用户希望得到的优点。相比于老式的人工抄录、控制、调节的管理方式,在控制精度、处理速度、保护性能以及保护的可靠性等方面都取得了长足的进步。随着中国加入WTO和粮食市场的逐渐开放,储存大量的粮食对稳定国民经济的发展起到至关重要的作用。在粮食的储藏的过程中,由于粮库占地面积大,粮仓分散,仓内温度测试点多,因而人工监测工作量大,效率低,检测周期长,容易漏检,而且测量器件损坏率高,测试精度难以保证,由于粮仓温湿度异常而造成粮食变质,带来的经济损失是惊人的。本设计开发以AT89S52单片机为核心构成控制系统,该系统具有可靠的保护系统,而且还有灵活的控制方式,以满足各种不同地域及环境的控制需要。因为元件简单,供应量足,经济适用,便于大批量生产,并且随着粮仓温湿度控制系统市场需求正在逐年增大,这种新型的控制系统一定会深受消费者青睐,批量产品可以通过批发分销等方式在全国范围内推广并出口国外,容易收回成本。此设计比较适合各型粮仓的温湿度控制,可以布点多个使测量和控制更加精确。总结单片机技术在各个领域正得到越来越广泛的应用,尤其MCS-51系列单片机,迅速占领了工业测控和自动化工程应用的主要市场,并取得了令人瞩目的成果,展现出了广阔的应用前景。粮仓温湿度实时检测系统,采用先进的AT89S52系列单片机和温湿度传感器,实现了对粮库内温湿度的自动测量和调节,AT89S52单片机因其指令系统丰富、小巧、低价、灵活易扩展等独特的优点,在所设计的粮库温湿度控制系统中使整个系统的性价比得以大幅度的提高。将AT89S52单片机成功应用于温湿度测控系统,所研发产品可靠性和扩充性较强,能广泛应用于粮库、物流仓储、档案馆、农业大棚等对温湿度要求较高的场所,具有较大的市场推广前景。在高新技术的推动下,作为测控的工具正逐步跨入真正的微型化、数字化、智能化、网络化和多功能化的时代。通过设计使我对单片机有了深刻的了解,以单片机为核心的控制技术将来全面地渗透到我从事的电力行业及我生活的各个领域,它的运用大大促进了各行各业的飞速发展。致谢在本论文的写作过程中,我的导师给予了很大帮助,从选题到开题报告,从写作提纲,到一遍又一遍地指出每稿中的具体问题。严格把关,循循善诱,在此我表示衷心感谢。同时我还要感谢在我学习期间给我极大关心和支持的各位老师以及我的同学和朋友。毕业论文设计是再一次系统学习的过程,毕业论文的完成,同样也意味着新的学习生活的开始。我的导师曹媛老师。她为人随和热情,治学严谨细心。在论文的写作和措辞等方面她也总会以“专业标准”严格要求,从选题、定题开始,一直到最后论文的反复修改、润色,曹老师始终认真负责地给予我深刻而细致地指导,帮助我开拓研究思路,精心点拨、热忱鼓励。正是曹老师的无私帮助与热忱鼓励,我的毕业论文才能够得以顺利完成。还要感谢设计组的老师,是他们在初期和前期答辩的时候指正了我的错误,讲解了设计思路,需要增加或者改进的模块。是他们让我这篇论文更加合格。同时也谢谢同学们的细心讲解。是你们让我在大学的最后时光感受到了大学是多么的美好。为期一个学期的毕业论文设计已经接近尾声了,我的两年大学生涯也即将圈上一个句号。此刻我的心中却有些怅然若失,因为那些熟悉的恩师们和各位可爱的同学们,我们也即将挥手告别了。参考文献周凤英,李凤华,张世民,贾东.浅谈粮食储藏技术处理中的几个误区 [J].黑龙江粮食,2004,(01):39.姬社英,严玉彬,凌予杰.夏粮储存与气象条件的关系 [J].河南气象,2006,(04):64.张聚元.20世纪中国粮食储藏科技的进步 (上)[J].粮食科技与经济,2004,(03):44〜46.张聚元.20世纪中国粮食储藏科技的进步 (下)[J].粮食科技与经济,2004,(04):45〜47.⑸阎石.数字电子技术基础(第四版)[M].北京:高等教育出版社,2004.⑹苏宝平,全力•新型粮仓温湿度智能化测控系统 [J].农机化研究,004.李德振.湿度监测系统设计方案[J].电子制作,2010,(01).王永志,刘媛媛.大型粮库的温湿度监测报警控制系统 [J].农机化研究,2008,(08).林文华粮库的温度湿度自动测试系统 [J].电脑学习,2003,(04).翟春艳,岳修正,肖宏,夏涛•基于单片机的温湿度感测系统的实现 [J].电子设计工程,2011(12).南建辉.MCS-51单片机原理及应用实例•清华大学出版社,2004:126〜141钟晓伟,宋蛰存•基于单片机的实验室温湿度控制系统设计 [J].林业机械与木工设备,2010(01).常健生,等.检测与转换技术[M].北京:机械工业出版社,2009.胡劲松,吴捷•单片机多机通信的新型方式[J]电子技术应用,1997,(08).柴钰.单片机原理及应用(第二版)[M].西安:西安电子科技大学出版社,2009.欧阳文.ATMEL89系列单片机的原理与开发实践 .中国电力出版社,2007,6:203-237.Changjun,liyan.ApplicationofhumiditysensorHS1101inintelligenthomecontrolsystemElectronicTest.224-228.2008.附录A译文AT89S52主要性能?与MCS-51单片机产品兼容?8K字节在系统可编程Flash存储器?1000次擦写周期?全静态操作:0Hz〜33Hz?三级加密程序存储器?32个可编程I/O口线?三个16位定时器/计数器?八个中断源?全双工UART串行通道?低功耗空闲和掉电模式?掉电后中断可唤醒?看门狗定时器?双数据指针?掉电标识符1)功能特征描述AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下, RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。2)引脚功能(1) VCC:电源(2) GND:接地(3)P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1时,弓I脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。(4)P1口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)o此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)(5) P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)o在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。(6)P3口:P3口是一个有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。引脚号第二功能P3.0TXD(串行输出)P3.1TXD(串行输出)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0外部输入)P3.5T1定时器1外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器写选通)(7) RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。(8)ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲, 可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1,ALE操作将无效。这一位置“1,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。(9) PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时, PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。(10) EA/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。(11) XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。(12) XTAL2:振荡器反相放大器的输出端。3) 存储器结构MCS-51器件有单独的程序存储器和数据存储器。外部存储器都可以 64K寻址。(1)程序存储器:如果EA引脚接地,程序读取只从外部存储器开始。对于89S52,如果EA接VCC,程序读写先从内部存储器(地址为0000H〜仆FFH)开始,接着从外部寻址,寻址地址为:2000H~FFFFH。(2) 数据存储器:AT89S52有256字节片内数据存储器。高128字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。当一条指令访问高于7FH的地址时,寻址方式决定CPU访问高128字节RAM还是特殊功能寄存器空间。直接寻址方式访问特殊功能寄存器(SFR)。例如,下面的直接寻址指令访问0A0H(P2口)存储单元:MOV0A0H,#data使用间接寻址方式访问高128字节RAM。例如,下面的间接寻址方式中,R0内容为0A0H,访问的是地址0A0H的寄存器,而不是P2口(它的地址也是0A0H)。MOV@R0,#data堆栈操作也是简介寻址方式。因此,高128字节数据RAM也可用于堆栈空间。4) 看门狗定时器WDT是一种需要软件控制的复位方式。WDT由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成。WDT在默认情况下无法工作;为了激活WDT,户用必须往WDTRST寄存器(地址:0A6H)中依次写入01EH和0E1H。当WDT激活后,晶振工作,WDT在每个机器周期都会增加。WDT计时周期依赖于外部时钟频率。除了复位(硬件复位或WDT溢出复位),没有办法停止WDT工作。当WDT溢出,它将驱动RSR引脚一个高个电平输出。(1) WDT的使用为了激活WDT,用户必须向WDTRST寄存器(地址为0A6H的SFR)依次写入0E1H和0E1H。当WDT激活后,用户必须向WDTRST写入01EH和0E1H喂狗来避免WDT溢出。当计数达到8191(1FFFH)时,13位计数器将会溢出,这将会复位器件。晶振正常工作、WDT激活后,每一个机器周期WDT都会增加。为了复位WDT,用户必须向WDTRST写入01EH和0E1H(WDTRST是只读寄存器)。WDT计数器不能读或写。当WDT计数器溢出时,将给RST引脚产生一个复位脉冲输出,这个复位脉冲持续96个晶振周期(TOSC),其中T0SC=1/F0SC。为了很好地使用WDT,应该在一定时间内周期性写入那部分代码,以避免WDT复位。(2)掉电和空闲方式下的WDT在掉电模式下,晶振停止工作,这意味这WDT也停止了工作。在这种方式下,用户不必喂狗。有两种方式可以离开掉电模式:硬件复位或通过一个激活的外部中断。通过硬件复位退出掉电模式后,用户就应该给WDT喂狗,就如同通常AT89S52复位一样。通过中断退出掉电模式的情形有很大的不同。中断应持续拉低很长一段时间,使得晶振稳定。当中断拉高后,执行中断服务程序。为了防止WDT在

温馨提示

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

评论

0/150

提交评论