毕业设计(论文)-基于AT89C52单片机的自动浇花系统.doc_第1页
毕业设计(论文)-基于AT89C52单片机的自动浇花系统.doc_第2页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

自动浇花系统课题: 自动浇花系统 - 1 -摘要 本系统以方便人们花卉的浇水,实现智能浇花,让人们从繁琐的浇花工作中解放出来,自动浇花系统的设计和应用应运而生。 本系统采用at89c52单片机,配以相应的外围电路完成土壤含水量的检测和自动浇花的控制过程。 由土壤湿度传感器采集土壤信息,再经过信息处理模块处理后由adc0832 a/d转换芯片转换成数字信号,at89c52单片机作为控制中心。 配以ds1302 时钟芯片、lcd1602液晶显示模块等组成数据处理控制模块,实现智能浇花,显示时钟功能。 通过一系列的设计实现,简单的电路及低价的成本实现自动浇花系统是可行的,进一步可以推广到蔬菜大棚,园林,草地等的自动浇灌管理。对于实现科技服务生活具有重要意义。关键词:浇花,at89c52单片机,adc0832,ds1302,土壤湿度传感器,时钟abstractthis system for people convenience and intelligent water flowers and plants, let people work from trival watering the flowers liberate, automatic watering the flowers system design and application arises at the historic moment. the system uses the at89c52 single chip computer, match with corresponding buffer circuit for the soil moisture content detection and finish the control process of automatic watering the flowers. from the soil humidity sensors to collect soil information, and then after the information processing module processing by adc0832 after a/d conversion chip converted into digital signals, at89c52 single chip computer as the control center. match with ds1302 clock chip, lcd1602 lcd module data processing control module, realize intelligent water flowers, display clock function. through a series of design and implementation, simple circuit and low cost to implement the automatic watering the flowers system is feasible, further can be extended to vegetable shed, garden, the automatic watering system. for technology service life is important significance.keywords: water flowers, at89c52, adc0832, ds1302, soil moisture sensor, clock 目录1 前言11.1论文设计的意义11.2湿度测量方法及湿度测量方案11.3论文的主要内容32 自动浇花系统的基本理论42.1土壤湿度传感器42.2土壤湿度信号转换42.3土壤湿度信号调理53 系统硬件设计63.1系统技术指标63.2系统框图63.3芯片选择63.4系统传感电路设计83.4.1 土壤湿度传感器的设计83.4.2 土壤湿度信号调理电路93.4.3 a/d转换处理模块123.5系统显示电路设计133.5.1 显示模块的选择133.5.2 显示电路143.6系统控制电路设计153.6.1 按键电路153.6.2 电磁阀控制电路163.7电路原理图164 系统软件设计184.1总设计框图184.2传感转换流程图184.3控制模块流程图195 系统调试215.1 系统硬件测试215.2 系统的软件测试215.3系统整体调试215.4系统测量与误差分析226 总结23附录24附录a 原理图24附录b pcb图25附录c 程 序26参考文献41致谢43431 前言1.1论文设计的意义在电子技术日新月异的今天,生活中到处都可以看到嵌入式单片机的应用实例。电子产品的设计是服务于人类为出发的,在现代人们离不开电子产品,应用电子产品,让生活生产更加便捷,为人们节省时间,精力,让人们的生活娱乐更加美好。嵌入式单片机已经成为机电产品的核心部件,控制机电产品的工作于操作。依据嵌入式单片机体积小,功耗小,成本低,可靠性高,软件代码少,自动化程度高和响应速度快等特点,适用于要求实时性和多任务的应用领域。本设计中的自动浇花系统就是以以上为出发点而设计的1。随着人们生活水平的提高,人们追求高品位的生活,为了美化环境,净化空气,人们都喜欢在家中种植一些花草,植物都离不开谁,需要常常浇灌,这无疑是件繁琐的工作,尤其是当你出差,工作,或者忙碌而忘却的时候,植物的供水就好中断,影响植物的正常生长,甚至枯萎而死2。根据以上为出发,自动浇花系统自然将会是我们的生活小帮手,因此,学以致用,把电子科技服务于生活。本设计利用土壤湿度传感器,进行实时土壤湿度测量与显示,能对花草的生长情况进行观察统计,准确掌握花草最佳生长模式下的湿度要求以及控制3。再配合时钟行走功能,即可实现给花草定时浇灌。这样就可以减轻对花草的护理工作,让人们从照顾花草的繁琐中解脱出来。本产品适合城市居民使用,尤其对长假外出更是一个好帮手4。此外,运用此装置,进一步也可以为蔬菜大棚,园林,草地进行自动浇灌管理5。1.2湿度测量方法及湿度测量方案在工农业生产、气象、环保、国防、科研、航天等部门,经常需要对环境湿度进行测量及控制6。对环境温、湿度的控制以及对工业材料水份值的监测与分析都已成为比较普遍的技术条件之一, 但在常规的环境参数中,湿度是最难准确测量的一个参数。这是因为测量湿度要比测量温度复杂得多,温度是个独立的被测量,而湿度却受其他因素( 大气压强、温度) 的影响。此外,湿度的校准也是一个难题7。国外生产的湿度标定设备价格十分昂贵。 1.2.1湿度定义在计量法中规定, 湿度定义为 物象状态的量 。日常生活中所指的湿度为相对湿度,用rh% 表示。总言之,即气体中( 通常为空气中) 所含水蒸气量( 水蒸气压) 与其空气相同情况下饱和水蒸气量( 饱和水蒸气压) 的百分比。湿度很久以前就与生活存在着密切的关系, 但用数量来进行表示较为困难。对湿度的表示方法有绝对湿度、相对湿度、露点、湿气与干气的比值(重量或体积)等等8。1.2.2湿度测量方法湿度测量从原理上划分有二、三十种之多。但湿度测量始终是世界计量领域中著名的难题之一。一个看似简单的量值,深究起来,涉及相当复杂的物理- 化学理论分析和计算,初涉者可能会忽略在湿度测量中必需注意的许多因素,因而影响传感器的合理使用。常见的湿度测量方法有9:动态法(双压法、双温法、分流法),静态法(饱和盐法、硫酸法),露点法,干湿球法和电子式传感器法。 双压法、双温法是基于热力学p 、v 、t 平衡原理,平衡时间较长,分流法是基于绝对湿气和绝对干空气的精确混合。由于采用了现代测控手段,这些设备可以做得相当精密,却因设备复杂,昂贵,运作费时费工,主要作为标准计量之用,其测量精度可达2%rh 以上。 静态法中的饱和盐法,是湿度测量中最常见的方法,简单易行。但饱和盐法对液、气两相的平衡要求很严,对环境温度的稳定要求较高。用起来要求等很长时间去平衡,低湿点要求更长。特别在室内湿度和瓶内湿度差值较大时,每次开启都需要平衡68 小时。 露点法是测量湿空气达到饱和时的温度,是热力学的直接结果,准确度高,测量范围宽。计量用的精密露点仪准确度可达0.2 甚至更高。但用现代光- 电原理的冷镜式露点仪价格昂贵,常和标准湿度发生器配套使用。 干湿球法,这是18 世纪就发明的测湿方法。历史悠久,使用最普遍。干湿球法是一种间接方法,它用干湿球方程换算出湿度值,而此方程是有条件的:即在湿球附近的风速必需达到2.5m/s 以上。普通用的干湿球温度计将此条件简化了,所以其准确度只有57%rh, 干湿球也不属于静态法,不要简单地认为只要提高两支温度计的测量精度就等于提高了湿度计的测量精度。 电子式湿度传感器法,电子式湿度传感器产品及湿度测量属于90 年代兴起的行业, 近年来,国内外在湿度传感器研发领域取得了长足进步。湿敏传感器正从简单的湿敏元件向集成化、智能化、多参数检测的方向迅速发展,为开发新一代湿度测控系统创造了有利条件,也将湿度测量技术提高到新的水平。1.2.3湿度测量方案的选择现代湿度测量方案最主要的有两种:干湿球测湿法,电子式湿度传感器测湿法。下面对这两种方案进行比较,以便客户选择适合自己的湿度测量方法10。干湿球测湿法的维护相当简单,在实际使用中,只需定期给湿球加水及更换湿球纱布即可。与电子式湿度传感器相比,干湿球测湿法不会产生老化,精度下降等问题。所以干湿球测湿方法更适合于在高温及恶劣环境的场合使用。干湿球测湿法采用间接测量方法,通过测量干球、湿球的温度经过计算得到湿度值,因此对使用温度没有严格限制,在高温环境下测湿不会对传感器造成损坏。干湿球湿度计的特点:早在18 世纪人类就发明了干湿球湿度计,干湿球湿度计的准确度还取决于干球、湿球两支温度计本身的精度;湿度计必须处于通风状态:只有纱布水套、水质、风速都满足一定要求时,才能达到规定的准确度。干湿球湿度计的准确度只有5 7 rh 。电子式湿度传感器的特点11:电子式湿度传感器是近几十年,特别是近20 年才迅速发展起来的。湿度传感器生产厂在产品出厂前都要采用标准湿度发生器来逐支标定,电子式湿度传感器的准确度可以达到2 3 rh 。在实际使用中,由于尘土、油污及有害气体的影响,使用时间一长,会产生老化,精度下降,湿度传感器年漂移量一般都在2% 左右,甚至更高。一般情况下,生产厂商会标明1 次标定的有效使用时间为1 年或2 年,到期需重新标定。电子式湿度传感器的精度水平要结合其长期稳定性去判断,一般说来,电子式湿度传感器的长期稳定性和使用寿命不如干湿球湿度传感器。湿度传感器是采用半导体技术,因此对使用的环境温度有要求,超过其规定的使用温度将对传感器造成损坏。所以电子式湿度传感器测湿方法更适合于在洁净及常温的场合使用。1.3论文的主要内容本次设计的工作包括: 设计方案的设计和功能实现; 芯片和传感器的选择; 设计电路以及制作电路板; 程序的设计; 模块和程序的调试; 总程序的调试; 系统的测试与校正。2 自动浇花系统的基本理论2.1土壤湿度传感器在灌溉系统中,土壤湿度传感器的使用是该系统能否达到适量灌溉的关键,所以土壤湿度传感器的选择就成为灌溉系统的首要问题。目前市场上主要测量土壤湿度的方法有中子衰减、张力计测湿、介点法速测法12。中子衰减法虽然快速准确,但此种方法如果屏蔽不好,容易造成射线泄漏,以致污染环境,危害健康,故不能被采纳。张力计式土壤水分传感器是一种广泛成功地用于某些土壤水分测量的传感器。这种仪表有个多孔瓷头,它通过水的管子与真空表连接。优点是:结构及原理简单,可以在线实时测量,而且可以确定水在土壤内的流动方向和渗透度,缺点也很突出,就是:它的测量范围很大程度上受土质的影响。误差较大,存在滞后和回环,影响测量速度。利用土壤的介电特性来测量土壤含水量是一种行之有效的、快速的、简单的、可靠方法。对一定几何结构的电容式水分传感器,其电容量与两极间被测物料的介电常数有正比关系。水的介电常数比一般物料的介电常数要大得多,电容式水分传感器的特点是精确度高、量程宽、可测的物料品种多,而且响应速度邺较快,可应用于在线监测实现自动化。2.2土壤湿度信号转换本系统采用adc0832进行转换,下面是单片机对adc0832 的控制原理:正常情况下adc0832 与单片机的接口应为4条数据线,分别是cs、clk、do、di。但由于do端与di端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将do和di 并联在一根数据线上使用。当adc0832未工作时其cs输入端应为高电平,此时芯片禁用,clk 和do/di 的电平可任意。当要进行a/d转换时,须先将cs使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端clk 输入时钟脉冲,do/di端则使用di端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前di端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前di端应输入2 位数据用于选择通道功能。 当此2 位数据为“1”、“0”时,只对ch0 进行单通道转换。当2位数据为“1”、“1”时,只对ch1进行单通道转换。当2 位数据为“0”、“0”时,将ch0作为正输入端in+,ch1作为负输入端in-进行输入。当2 位数据为“0”、“1”时,将ch0作为负输入端in-,ch1 作为正输入端in+进行输入。 到第3 个脉冲的下沉之后di端的输入电平就失去输入作用,此后do/di端则开始利用数据输出do进行转换数据的读取。从第4个脉冲下沉开始由do端输出转换数据最高位data7,随后每一个脉冲下沉do端输出下一位数据。直到第11个脉冲时发出最低位数据data0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出data0。随后输出8位数据,到第19 个脉冲时数据输出完成,也标志着一次a/d转换的结束。最后将cs置高电平禁用芯片,直接将转换后的数据进行处理就可以了。 作为单通道模拟信号输入时adc0832的输入电压是05v且8位分辨率时的电压精度为19.53mv。如果作为由in+与in-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行in+与in-的输入时,如果in-的电压大于in+的电压则转换后的数据结果始终为00h。2.3土壤湿度信号调理土壤湿度传感器的输出电压在02v左右,需要将此电压信号经过信号处理模块,进行电压信号放大。以便获得更高的转换精度。信号调理电路信号处理电路,把模拟信号变换为用于数据采集、控制过程、执行计算显示读出或其他目的的数字信号。模拟传感器可测量很多物理量,如温度、压力、光强等.但由于传感器信号不能直接转换为数字数据,这是因为传感器输出是相当小的电压、电流或电阻变化,因此,在变换为数字信号之前必须进行调理。调理就是放大,缓冲或定标模拟信号等,使其适合于模/数转换器(adc)的输入。然后,adc对模拟信号进行数字化,并把数字信号送到mcu或其他数字器件,以便用于系统的数据处理。 信号调理简单的说就是将待测信号通过放大、滤波等操作转换成采集设备能够识别的标准信号。是指利用内部的电路(如滤波器、转换器、放大器等)来改变输入的讯号类型并输出之。 3 系统硬件设计3.1系统技术指标测量湿度范围:080 vol% (m3/m3)供电电压:512vdc精度:非饱和范围内为3显示方式: led显示。3.2系统框图土壤湿度传感器a/d转换模块adc0832at89c52单片机显 示 模 块lcd1602键 盘执 行 机 构时钟模块ds1302 图 3-1 系统框图3.3芯片选择主控芯片选择:方案一:使用stc系列的单片机,驱动能力强,运行相对稳定,抗干扰能力强,内置a/d转换。与at系列的相比,性价比更高。方案二:使用最普遍的at89s52,熟悉其原理,相关的资料丰富,相对比较便宜,容易购买,使用的过程中有疑问容易在网上找到相关资料或者查阅书刊,但是定时器、中断、rom等较少,抗干扰能力不强,无内置a/d转换,等其他功能13。综合考虑选用方案二,使用at89s51单片机作为主控芯片。芯片如图3-2图3-2 at89c52a/d转换芯片选择:adc0832 为8位分辨率a/d转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在05v之间。芯片转换时间仅为32s,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过di 数据输入端,可以轻易的实现通道功能的选择。 芯片如图3-3使用adc0832完全可以满足系统要求,与adc0809相比,可以减少引脚连线,简化控制。图3-3 adc0832时钟芯片:ds1302是涓流充电时钟芯片,内含有一个实时时钟/日历和 31字节静态ram,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒-分-时-日-日期-月-年的信息,每月的天,数和闰年的天数可自动调整。时钟操作可通过am/pm 指示决定采用 24 或 12 小时格式。ds1302 与单片机之 间能简单地采用同步串行的方式进行通信,仅需用到三个口线1 、re(复位)2、i/ o(数据线)3 、(sclk 串行时钟)时钟/ram 的读/写数据以一个字节或多达 31 个字节的字符组方式通信。ds1302 工作时功耗很低 保持数据和时钟信息时功率小于 1mw。3.4系统传感电路设计系统传感电路的设计包括三个方面:一、土壤湿度传感器的选择与参数分析;二、土壤湿度信号的调理电路的设计,由于传感器的输出信号一般较小,不足以获得高的a/d转换精度,此部分由运算放大电路构成,是系统的重要部分;三、a/d转换的处理。3.4.1 土壤湿度传感器的设计土壤湿度传感器在原理与结构上千差万别,根据具体的测量目的、测量对象以及测量环境合理地选用土壤湿度传感器,是在进行某个量的测量时首先要解决的问题14。当传感器确定之后,与之相配套的测量方法和测量设备也就可以确定了。土壤湿度测量结果的成败,在很大程度上取决于土壤湿度传感器的设计和选用是否合理。本设计之初,原本打算选用fds-100土壤水分传感器,其可测量土壤相对含水率,与土壤本身的机理无关,是目前国际上最流行的土壤水分测量方法。fds-100土壤水分传感器是一款高精度、高灵敏度的测量土壤水分的传感器。可深埋土中,长期测量且性能稳定。但由于fds-100的价格偏贵,动辄接近一千,这是不符合我们的设计理念的。而市场上土壤湿度的型号和资料也较少,价格也不尽如人意,难以找到一款合适的土壤湿度传感器,所以根据土壤湿度的测量原理,就地取材,从土壤在不同湿度的情况下的电阻不同的特性。设计了一个简单的湿度传感。配以相应的外围电路,变形成了一个简易土壤湿度传感器了。从某个侧面看出,对土壤湿度的测量在技术及成本上还有待突破,不像空气湿度测量成熟。在仿真中我们采用一个低压电源和一个可调电阻进行模拟,不同的电阻值对应输出不同的电压信号,这点等同于电阻测土壤湿度,在不同湿度情况下的不同电阻,产生对应于湿度信息的电压湿度信号。如图是系统在protues中的仿真模拟。图 3-4 土壤湿度传感器模拟3.4.2 土壤湿度信号调理电路 信号处理电路,把土壤湿度模拟信号变换为用于数据采集、控制过程、执行计算显示读出或其他目的的数字信号。我们所使用的土壤湿度传感器是模拟传感器可测量土壤湿度信息,但由于湿度传感器信号不能直接转换为数字数据,这是因为传感器输出是相当小的电压、电流或电阻变化,因此,在变换为数字信号之前必须进行调理。调理就是放大,缓冲或定标模拟信号等,使其适合于模/数转换器(adc)的输入。然后,adc对模拟信号进行数字化,并把数字信号送到mcu或其他数字器件,以便用于系统的数据处理。 信号调理将您的数据采集设备转换成一套完整的数据采集系统,这是通过帮助您直接连接到广泛的传感器和信号类型(从热电偶到高电压信号)来实现的。关键的信号调理技术可以将数据采集系统的总体性能和精度提高10倍。在本设计中,考虑到晶体管的放大电路的繁琐以及不稳定,故而采用基本运放电路的形式进行信号放大。因为没有外在干扰,所以最基本的运算电路就可满足系统的要求。我们将采用比例运算放大电路。比例运算电路的输出电压与输入电压之间存在比例关系,即电路可实现比例运算。比例电路是最基本的运算电路,是其他各种运算电路的基础,本章随后将要介绍的求和电路、积分和微分电路、对数和指数电路等等,都是在比例电路的基础上,加以扩展或演变以后得到的。根据输入信号接法的不同,比例电路有三种基本形式:反相输入、同相输入以及差分输入比例电路。使用单个集成运放构成运算电路时存在两个缺点,一是电阻的选取和调整不方便,二是对于每个信号源的输入电阻均较小。因此,必要时可采用两级电路。我们使用图3-5所示电路实现差分比例运算放大。第一级为同相比例运算电路;第二级为差分比例运算电路。图3-5 高输入电阻的差分比例运放电路第一级有利用叠加原理,第二级电路的输出若,则从电路的组成可以看出,无论对于,还是对于,均可以认为输入电阻为无穷大。在第一级中:对同相比例运算电路有:相比例运算放大电路是一个深度的电压串联负反馈电路。因为= =,所以不存在“虚地”现象,在选用集成运放时要考虑到其输入端可能具有较高的共模输入电压。电压放大倍数,即输出电压与输入电压的幅值成正比,且相位相同。也就是说,电路实现了同相比例运算。也只取决于电阻和之比,而与集成运放的内部参数无关,所以比例运算的精度和稳定性主要取决于电阻和的精确度和稳定度。一般情况下,值恒大于1。当=0或=时, ,这种电路称为电压跟随器。由于引入深度电压串联负反馈,因此电路的输入电阻很高,输出电阻很低。图3-6 同相比例运算电路在第二级中:输入电压和分别加在集成运放的反相输入端和同相输入端,从输出端通过反馈电阴接回到反相输入端。为了保证运放两个输入端对地的电阻平衡,同时为了避免降低共模抑制比,差分比例运算电路的电压放大倍数为可知,电路的输出电压与两个输入电压之差成正比,实现了差分比例运算。其比值旧同样决定于电阻和之比,而与集成运放内部参数无关。由以上分析还可以知道,差分比例运算电路中集成运放的反相输入端和同相输入端可能加有较高的共模输入电压,电路中不存在虚地现象。差分比例运算电路除了可以进行减法运算以外,还经常被用作测量放大器。差分比例运算电路的缺点是对元件的对称性要求比较高,如果元件失配,不仅在计算中带来附加误差,而且将产生共模电压输出。电路的另一个缺点是输入电阻不够高。图3-7 差分比例运算电路我们将采用lm358设计此电路。lm358 内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益模块和其他所有可用单电源供电的使用运算放大器的场合。lm358该型号,市场上比较常见,在各大网站上,搜索比较频繁,价格一直相对平稳。有些分析人士,还把该型号归类为电源电路,因为它使用范围比较宽。lm358最近一段时间市场销量比较稳定,主流品牌是ti、ns、国产品牌,国外品牌的价格一直相对偏高,最新报价有小幅度下滑,在0.4-0.7元/pcs区间波动。国产品牌价格就非常低,相比月初,价格同样也有了小幅度下滑,网络报价一般在在0.13-0.15元之间波动。特性(features): 内部频率补偿 直流电压增益高(约100db) 单位增益频带宽(约1mhz) 电源电压范围宽:单电源(330v); 双电源(1.5 一15v)图3-8 lm3583.4.3 a/d转换处理模块我们选用前面介绍过的adc08328位分辨率a/d转换芯片,经过处理之后的信号进入ch0通道,在a/d模块中模拟电压信号转化成离散数字信号,供单片机使用。其中串行数据控制使a/d模块工作的关键。故在此介绍读取程序。 adc_cs=0; adc_di=1; /启动位转换 adc_clk=1; adc_clk=0; adc_di=1; /配置位1 adc_clk=1; adc_clk=0; adc_di=0; /配置位2 adc_clk=1; adc_clk=0; /空闲位 adc_clk=1; adc_di=1;for(i=0;i8;i+)adc_clk=0;delaynus(5);if(adc_do=1)temp|=0x01; temp=1;delaynus(5);adc_clk=1;adc_cs=1;return temp;其程序思想沿用一般的串行数据传输规则。通过对时钟信号的控制,分别进行地址传输,之后数据传输。图 3-9 a/d转换处理3.5系统显示电路设计3.5.1 显示模块的选择在显示模块选择时有两种,一种是用液晶显示屏,一种则是选用数码管。液晶显示屏具有轻薄短小,低耗电量,无辐射危险,平面直角显示以及影象稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强等特点15,可以显示汉字等各种符号。但一般需要利用控制芯片创建字符库,编程工作量大。而数码管具有低能耗、低损耗、低压、寿命长、耐老化、对外界环境要求低,易于维护的特点,同时精度比较高,称量快,精确可靠,编程容易,操作简单。缺点是不能实现汉字显示,多数据多行显示。本设计中采用第一种方案,液晶显示屏能够直观的显示出各种模式下的内容,包括显示实时土壤湿度,浇花启动土壤湿度,当前时间,浇花启动时间,浇花时长。硬件电路的设计也相对简单16。3.5.2 显示电路1602lcd主要技术参数:显示容量:162个字符芯片工作电压:4.55.5v工作电流:2.0ma(5.0v)模块最佳工作电压:5.0v字符尺寸:2.954.35(wh)mm寄存器选择控制表:表3-1 lcd1602控制表rsr/w操作说明00写入指令寄存器(清除屏等)01读busy flag(db7),以及读取位址计数器(db0db6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据我们通过对lcd1602寄存器的控制进行读写操作。其程序为:void writeinstruction (unsigned char dictate) rs=0; rw=0; e=0; _nop_(); p1=dictate; _nop_(); e=1; _nop_(); e=0; 图3-10为显示电路。 图3-10 液晶显示电路其中液晶显示模块是lcd1602,数据接口与p1口连接;rs,rw,e,端分别于p20p22连接;vss,vee,接地;vdd接+5v电源。3.6系统控制电路设计3.6.1 按键电路本设计通过3个按键实现对系统的控制及设置。分别为模式键,设置键,加值键。其中模式键可使液晶显示模块进入不同显示模式以显示不同的内容。设置键可以对需要设置的值进入设置,如浇花湿度,设置时间,时长。进入设置模式之后,通过加值键改变设置值。如图3-5。 图 3-11 按键电路浇花控制由单片机控制继电器来启动/关闭水电磁阀17。 当系统满足湿度,时间要求是,系统通过继电器启动水电磁阀,浇花开始,而当时间超过所设定的浇花时长后,系统关闭电磁阀。3.6.2 电磁阀控制电路 本设计中电磁阀的控制相对简单,通过继电器控制大电压对电磁阀的开断进行控制其中继电器和电磁阀的规格型号应对应系统就行选取18。图 3-12 电磁阀仿真3.7电路原理图该系统电路设计的比较简单,单片机采用at89s52或其兼容系列。采用12mhz高精度的晶振,以获得较稳定的时钟频率,减小测量误差。单片机连接液晶显示屏lcd1602,adc0832,ds1302,按键电路,配以相应的外围电路,通过定时定量控制电磁阀变可实现自动浇花功能。其中最小系统有复位电路,晶振电路。其图分别如下:图 3-13 晶振电路图 3-14 复位电路以上所有电路模块构成了整个系统。主电路图如下:图3-15 自动浇花系统主电路图4 系统软件设计4.1总设计框图主程序首先进行对lcd,时钟芯片的初始化,之后定时采集土壤湿度值,按键管理lcd显示,系统参数设置,当满足浇花条件时,执行浇花动作。其中对浇花条件的设置,考虑花卉的植物特性,需要进行湿度下限设置,浇花时间长度,以及浇花时间的程序设定。如图4-1。开始结束执行浇花采集土壤湿度值显示模式初始化ny系统参数设置满足浇花条件?按键设置 图 4-14.2传感转换流程图土壤湿度传感器是自动浇花系统的核心,能否准确的测量土壤湿度,是实现系统的保证。传感器的数值经过信号处理模块再a/d转换后,单片机对其进行读取,用于浇花的自动控制,并在lcd中显示。i8?传递数据tempi=0;di=1;di=0;选择通ch0clk输入时钟脉冲开始转换cs=00return数据tempi+;ny关闭转换cs=1图 4-24.3控制模块流程图 此流程主要实现键盘管理,模式键控制单片机进行显示不同的系统内容,不同模式下需要设置的参数。其中有,当前湿度显示,当前湿度设置下限,当前时间显示及设置,当前设置浇花执行时间,以及浇花的时间长度。并对浇花进行条件判断,电磁阀的通断等。下一模式按键mode扫描当前模式按键rest扫描ny参数设置被按下?被按下?yn按键add扫描被按下?ny设置参数+1;rest模式退出返回读取湿度读取系统参数等待浇花完毕启动浇花?yn关闭电磁阀返回开启电磁阀图 4-35 系统调试5.1 系统硬件测试电路板焊接完毕后,使用万用表测量电路是否有短路、短路,元器件时候有+、-级焊接反向。若检查无误后,将单片机安装上,接通电源,此时应注意以下几点: 指示灯是否点亮; 单片机是否有电; 晶振是否工作; 土壤湿度传感器是否工作。测试方法: 使用万用表查看电源是否有电,查看整流电路是否将二极管焊接反向; 使用万用表测量单片机的电源和地的引脚,看是否有电压; 使用示波器看晶振是否有波形; 使用示波器看是否有波形。在调试的过程中由于存在虚焊现象,导致电路板不能正常的工作。重新将元器件焊接后,电路板完全正常。由于没有对全部管脚进行逐一测试,导致没有及时的查出问题所在。5.2 系统的软件测试软件调试过程采用模块化方案: 测试lcd显示是否正常; 测试土壤湿度是否正常读取; 测试时钟芯片读写及工作是否正常。5.3系统整体调试 首先测试土壤湿度的实时读取是否正常,把土壤湿度传感器分别插入不同湿度的土壤中,检测湿度读取是否正确。此外还需粗略测试土壤湿度传感器的灵敏度,以及反应时间。然后在土壤湿度到达下限时,能否执行浇水动作。开始浇花之后,能否在设置的浇花时长停止浇花动作。因考虑花卉的浇水时间各不相同,所以,需要进一步检测系统能否在设定的时间内执行浇花功能,在其他时间,是否会有错误动作。5.4系统测量与误差分析表 5-1 信号调理放大电路测试 单位:v信号值00.10.20.30.40.50.60.70.80.91计算值00.511.522.533.544.53.5实测值00.490.981.491.982.49.2.983.473.963.974通过测试我们得出数据的有效放大范围为0 0.8v ,即对应系统的测湿度范围。测量湿度范围:080 vol% (m3/m3)。虽然系统有待完善,但已经不影响系统功能的实现。通过误差计算,我们可以得出误差精度。表 5-2 系统误差计算信号值00.10.20.30.40.50.60.70.8绝对误差00.010.020.010.020.010.020.030.04测湿误差主要来源于以下几个方面:一、土壤湿度传感器与土壤的插入深度与探针将直接影响测量的精确值。二、信号调理电路的设计,以及放大误差的计算不完善。三、由于工具简陋,实际测量湿度也有误差。影响测量误差的因素很多,还包括现场环境干扰等。四、系统循环检测时间上的偏差。五、湿度检测的滞后。七、显示位数的精度的误差。八、在电路板与元件焊接做工不精细,有些元件焊接不好,所以造成某些地方接触不好,产生误差。 6 总结本设计自动浇花系统以单片机为核心,自动化程度高,测量速度快,精度高,实现了对土壤湿度的测量。充分考虑了各种花草的浇水时间有所差异,一般在早晚时间浇水,中午温度较高,不适合浇花。所以内置了时钟芯片,用于控制浇花时间,并有时钟日历显示。本系统硬件电路相对简单,熟悉单片机中基本理论,芯片控制,显示技术,传感器的原理及应用,a/d转换中的数字化,及弱电控制强电等知识都有所运用。此外程序的编写是电子产品设计的重中之重,是决定功能能否实现,自动化,智能化程度的高低,以及是否符合人性化的关键。此次设计,发挥了独立思考,独立解决问题,虚心学习。不断的调试,修改,完善是必要过程。过程虽然辛苦,但幸不辱命完成了自动浇花系统的要求,实现了设计目的。通过对本课题的研究学习,也有了以下体会。一、熟悉了单片机工作基本规律和必要的基本概念。二、了解土壤湿度检测与其他学科的关系与应用,扩大了知识面。三、培养了思维能力,分析问题和解决问题的能力。四、掌握与人共同交流探讨的方法技巧,不断完善,发展自我。附录附录a 原理图附录b pcb图 附录c 程 序#include #include unsigned char code tab1=the voltage is ;unsigned char code tab2=set voltage is ;unsigned char code tab0= ;unsigned char code tab02= ;unsigned char code tab01=:;unsigned char cnt,adtemp;unsigned char code dis1= 20 - - ;unsigned char code dis2= : : ;unsigned char code tab3=the water time ;unsigned char code tab4=the last time ;unsigned char code digit10=0123456789; unsigned char mode=0,k02;unsigned char shidu=0,hour0,minute0,second1,minute1,hour3,minute3,second3;/*定义接口*/sbit adc_cs=p34;sbit adc_clk=p35;sbit adc_di=p36;sbit adc_do=p37;sbit shui=p27;sbit k1=p00;sbit k2=p01;sbit k3=p02;sbit rs=p20; sbit rw=p21; sbit e=p22; sbit bf=p07; sbit data=p25; sbit rst=p23; sbit sclk=p24; /*函数功能:延时若干微秒*/ void delaynus(unsigned char n) unsigned char i; for(i=0;in;i+) ;/*函数功能:向1302写一个字节数据*/ void write1302(unsigned char dat) unsigned char i; sclk=0; delaynus(2); for(i=0;i=1; /*函数功能:根据命令字,向1302写一个字节数据*/ void writeset1302(unsigned char cmd,unsigned char dat) rst=0; sclk=0; rst=1; delaynus(2); write1302(cmd); write1302(dat); sclk=1; rst=0; /*函数功能:从1302读一个字节数据*/ unsigned char read1302(void) unsigned char i,dat;delaynus(2); for(i=0;i=1; if(data=1) dat|=0x80; sclk=1; delaynus(2); sclk=0; delaynus(2); return dat; /*函

温馨提示

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

评论

0/150

提交评论