基于单片机的自动灌溉控制器的毕业设计.doc_第1页
基于单片机的自动灌溉控制器的毕业设计.doc_第2页
基于单片机的自动灌溉控制器的毕业设计.doc_第3页
基于单片机的自动灌溉控制器的毕业设计.doc_第4页
基于单片机的自动灌溉控制器的毕业设计.doc_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计(论文) 课 题 名 称 自动灌溉控制器的设计 学 生 姓 名 学 号 系、年级专业 指 导 教 师 职 称 2010 年 5 月 30 日 摘 要 近几年来,随着水资源的日趋紧张,世界各国都在积极探索行之有效的节水途 径和措施。自动灌溉技术是为了解决水资源不足,提高灌溉效率而发展起来的现代 灌溉技术之一。 本文设计了一个自动灌溉控制器,该系统以 AT89C51 单片机为控制核心,采用 模块化的设计方案,由湿度采集模块、步进电机控制模块、键盘接口模块和显示模 块组成。湿度采集模块以探针式电容湿度传感器为核心,步进电机控制电路模块采 用了达林顿驱动芯片 ULN2803,显示电路模块主要由 LCD12864 构成。在闭环(自 动)模式下,该系统能自动对土壤的湿度进行检测,当实际湿度低于警戒值时单片 机自动启动步进电机进行灌溉。在时间(手动)模式下,可通过键盘设置灌溉的时 间,超过该时间,则停止灌溉。 关键词:AT89C51;探针式电容湿度传感器;ULN2803 达林顿驱动;LCD12864 ABSTRACT In recent years, along with the freshwater getting less, all countries in the world actively explore effective ways and measures to save water. Automatic irrigation technology is one of the modern irrigation technologies to deal with the water shortage, improving irrigation efficiency. This paper designs an automatic irrigation controller. The system use AT89C51 as control core, with modular design scheme. There are four modules: humidity acquisition module, the stepper motor control module, keyboard interface module and display module. Humidity acquisition module mainly uses probes type capacitor humidity sensors as the core; stepping motor control circuit module uses the ULN2803 drive chip linton; display circuit module mainly composed by LCD12864. In the loop (automatically) mode, this system can detect soil moisture. When actual humidity is lowwer than vigilance value, microcontroller automatic startup stepper motor to irrigat. In time (manual) mode, users can set the time through the keyboard.when the irrigation time is out, then stop the irrigation. Keywords: AT89C51;Probe type capacitor humidity sensors;ULN2803 da linton driver;LCD12864 目 录 摘 要I ABSTRACT .II 第 1 章 绪论.1 1.1 引言1 1.2 课题来源1 1.3 国内外现状2 第 2 章 方案设计与论证.4 2.1 总体方案论证4 2.2 键盘方案选取5 2.3 土壤湿度传感器的选取6 第 3 章 系统硬件电路设计.9 3.1 AT89C51 单片机硬件电路9 3.2 湿度采集电路12 3.3 矩阵键盘电路设计14 3.4 LCD 液晶显示电路15 3.5 步进电机驱动电路19 第 4 章 系统软件设计.21 4.1 程序设计21 4.2 主程序设计22 4.3 12864 LCD 显示子程序设计.24 4.4 键盘子程序设计.28 第 5 章 系统仿真.35 5.1 PROTUES 仿真软件介绍 35 5.2 仿真电路设计35 5.3 系统总体电路仿真.36 第 6 章 结束语.41 参考文献.42 致谢.43 附录源程序代码.44 附录 系统整体电路图.54 0 第 1 章 绪论 1.1 引言 随着中国农业现代化进程的加快、农业结构的调整以及我国加入WTO等因素,农 业灌溉自动化技术的要求越来越高,灌溉控制器在我国有着巨大的市场。节水灌溉 控制器近期在中国应朝着价格低、性能可靠、操作简便的方向发展。但从长远利益 考虑,新的智能化技术、传感技术和农业科技的引入、应用和普及,将会有智能化 程度更高、功能更强、性能更稳定可靠的灌溉控制器出现。本设计以AT89C51单片 机为主要硬件模块,通过软件编程实现对土壤湿度进行多点检测,当所测的实际湿 度低于警戒值时,将触发灌溉控制器装置。系统还可以实现时间控制方式,随时灌 溉,从而也体现了多用途、人性化的现代智能化系统设计要求。 根据本设计的功能要求,可确定此方案:以 AT89C51 单片机为控制电路的核心, 采用模块化的设计方案。在闭环控制方式下,利用湿度采集模块将多处不同地点检 测到的湿度模拟量进行模数转化后传送给单片机,单片机将采集到的数据与警戒值 比较;若采集数据低于警戒值,则启动步进电机驱动模块进行灌溉;若采集数据高 于警戒值,则不启动驱动模块进行灌溉。显示模块将采集数据和灌溉信息显示在显 示屏上。灌溉时间一到,驱动电路则停止驱动步进电机,灌溉停止。在时间控制方 式下,用户通过键盘输入进行灌溉的时间,时间一到,灌溉停止。 1.2 课题来源 经过多年的发展,国外灌溉控制器已逐步趋于成熟、系列化,但价格昂贵,国 内虽引进一些,但多数是农业示范区、科研单位、高校,虽然国外生产的灌溉控制 器性能优越,但没有考虑我国特殊的自然、气候、土地资源、农民经济状况等因素, 因而国外引进的灌溉控制器在国内应用并不普及。国内虽然有多家研制灌溉控制器, 但多数是小规模、实验和理论的探讨,应用不够普及,究其原因一则是开发性能完 善的灌溉控制系统需要大量的人力、物力的投入,需要多部门、多学科的融合,这 在一定程度上限制了性能完善、适应性强的控制器的开发。其次是现在开发出来的 灌溉控制器价格昂贵,农民尽管知道能节省人力、灌溉用水、提高产量,但由于一 次性投资太大,多数农民承受不起,这也在一定程度上限制了灌溉控制器的普及1。 随着中国农业现代化进程的加快、农业结构的调整、以及我国加人 WTO 等因 1 素,可以预计对农业灌溉自动化技术的要求会越来越高,灌溉控制器在我国将有巨 大的市场。节水灌溉控制器近期在中国应朝着价格低、性能可靠、操作简便的方向 发展。但从长远利益考虑,新的智能化技术、传感技术和农业科技的引入、应用和 普及,将会有智能化程度更高、功能更强、性能更稳定可靠的灌溉控制器出现。综 上所述,西方发达国家在节水灌溉控制器的开发上已越来越成熟,且发展趋势是研 制大型分布式控制系统和小面积单片机控制系统,并带有通信功能,能与上位机进 行通信,并可由微机对其编程操作。同时随着人工智能技术的发展,模糊控制、神 经网络等新技术为节水灌溉控制器的研制开辟了广阔的应用前景。而国内在灌溉控 制器的研制方面还没有形成规模大、应用范围广的成套灌溉控制产品。国内的一些 高尔夫球场等大面积场地灌溉控制,一般引用国外现成的成套灌溉控制产品。而广 大农村可根据我国国情和各 地经济和技术发展的实际情况,采取简单可行的节水灌溉控制措施及相应的排灌机 械和设备,大力发展可靠、实用、成本低、操作简便的节水灌溉控制器,这样做不 仅具有广阔的市场,而且具有巨大的社会和经济效益。 1.3 国内外现状 国内在开发灌溉自动控制系统方面处于研制、试用阶段,能实际投入应用,且 应用较广的灌溉控制器还不多见。在开发的产品中有代表性的如中国农业机械化研 究院联合多家单位研制的 2000 型温室自动灌溉施肥系统。该系统是国家“九五”科 技攻关项目中自主研发的科技产品,该系统结合我国温室的环境和实际使用特点, 以积木分布式系统结构原理,解决了计算机适时闭环控制、动态监测、控制显示中 文、施肥泵混合比可调、电磁阀开度可调等关键技术问题。该系统具有手动控制、 程序控制和自动控制等多种灌溉系统模式,可按需要灵活应用,在大连、北京等地 已经投入了应用,从系统运行情况来看,该系统有很好控制效果,取的了一定的经 济效益和社会效益2。 天津市水利科学研究所研制的温室滴灌施肥智能化控制系统主要用于现代温室, 日光温室作物的灌溉营养液施肥,环境监测的智能控制,采用世界先进的可编程序 控制器和触摸屏控制技术,性能可靠、功能齐全、人机界面友好、操作简单、价格 低廉,此控制系统的控制流量为 15,控制规模为 12时,能控制 24 路阀 3 /mh 2 hm 门,系统具有人工干预灌溉施肥功能,定时、定量灌溉施肥功能,条件控制灌溉施 肥功能。北京澳作生态仪器有限公司的澳作智能节水灌溉控制系统可与各种滴、喷 灌系统连接,实时监测土壤墒情,根据要 求自动灌溉。控制方式灵活,手动、半 2 自动、全自动任选且可随意在计算机上更改,可同时控制多个设备,受控区位置及 形状,环境参数及设备状态可同时显示在中心计算机上。北京奥特思达科技有限公 司研制的 WT-02 型微喷灌定时自动控制器,是一种供农业、草坪、果园、温室一般 场合给水的电子灌溉自动控制系统。 国外一些先进国家,如美国、以色列和加拿大等,运用先进的电子技术、计算 机和控制技术,在节水灌溉技术方面起步较早,并日趋成熟。这些国家从最早的水 力控制、机械控制,到后来的机械电子混合协调式控制,到当前应用广泛的计算机 控制、模糊控制和神经网络控制等,控制精度和智能化程度越来越高,可靠性越来 越好,操 作也越来越简便。 近年来随着农业对自动化程度要求的提高,以色列出现灌溉用的可编程逻辑控 制器(PLC),这种控制器通过把不同的网络连接到主机上进行数据采集和处理。随着 控制技术、传感器技术的发展,以色列开发出了现代诊断式控制器,这种控制器把 以前不可能采集到的信息通过不同的传感器来获得,通过因特网、远程控制、GSM 等来实现数据传输,然后通过计算机中的一些模型来处理信息,作出灌溉计划。加 拿大、澳大利亚和韩国等国家和地区也都有开发成功并形成系列的灌溉控制器产品, 其中,比较有代表性的如澳大利亚的 HARDIE IRRGATION 公司的灌溉控制器,已 形成了 MICRO-MASTER、RAINJET 等多个系列,几十种型号的产品。其中 HR6100 系列成本较低,是一种小型自动灌溉控制器,主要是面对家庭庭院和小面 积的商业绿化场地的灌溉,而 MICRO-MASTER,系列产品是 HARDIE 公司为进行 大面积灌溉而开发的控制器。该系统采用分布式布置,可与上位机双向通信,用微 机对其进行编程操作和对其子控制器进行控制,并能用微机随时监控灌溉系统的工 作状况。 0 第 2 章 方案设计与论证 2.1 总体方案论证 所谓的模块化设计,简单地说就是将产品的某些要素组合在一起,构成一个具 有特定功能的子系统,将这个子系统作为通用性的模块与其他产品要素进行多种组 合,构成新的系统,产生多种不同功能或相同功能、不同性能的系列产品。模块化 是在传统设计基础上发展起来的一种新的设计思想,现已成为一种新技术被广泛应 用,尤其是信息时代电子产品不断推陈出新,模块化设计的产品正在不断涌现。模 块化设计已被广泛应用于机床、电子产品、航天、航空等设计领域。模块化设计是 绿色设计方法之一,它已经从理念转变为较成熟的设计方法3。 本设计方案以 AT89C51 单片机为控制核心,采用模块化的设计方法,总分为四 大模块:湿度采集电路模块、步进电机控制电路模块、键盘接口电路模块和显示电 路模块。其中以探针式电容湿度传感器为核心构成湿度采集电路,以达林顿驱动芯 片 ULN2803 为核心构成步进电机控制电路,以液晶显示器 12864 为核心构成显示电 路,再配合键盘电路实现对土壤湿度进行多点检测。 在本系统中,分两种控制方式:闭环控制方式和时间控制方式,用户可在两种 方式之间自由选择。在闭环控制方式下,利用湿度采集模块将多处不同地点检测到 的湿度模拟量轮流进行模数转换,转化后对各数据进行综合处理,再传送给单片机。 单片机将接收到的数据和单片机内存的数据进行比较,若收到的数据低于设定的数 值,则步进电机控制电路模块启动步进电机进行灌溉。若收到的数据不低于设定的 数值,则不启动步进电机进行灌溉。同时单片机将采集到的数据和系统的灌溉状况 在现实模块的显示屏上显示出来。灌溉进行一定的时间后自动停止,该时间由用户 加载在单片机内部数据决定。用户可通过灌溉方式切换键切换到时间控制方式。在 时间控制方式下,用户通过键盘输入灌溉的时间和灌溉的周期,对应的数据将在显 示屏上显示出来。这种灌溉方式主要应用于特殊情况4。 综上所述,本系统不但具有非常友好的人机交互界面,而且具有良好的实时控 制功能,能及时响应用户请求。系统支持的灌溉方式灵活多样,用户可根据实际情 况进行模式选择。系统结构简洁,各类功能易于实现,大大提高了系统的可靠性和 实用性。系统的基本模块原理图如图 2.1 所示。 1 图 2.1 自动灌溉控制器系统基本模块原理框图 2.2 键盘方案选取 方案一:独立式按键。 独立式按键是指直接用一根 I/O 口线构成的单个按键电路。每个独立式按键单 独占有一根 I/O 口线,每根 I/O 口线上的按键的工作状态不会影响其他 I/O 口线的工 作状态。 独立式按键接口电路配置灵活,软件结构简单,但每个按键必须占用一根 I/O 口线,在按键数量较多时,I/O 口线浪费较大。故在按键数量不多时,常采用这种按 键结构。独立式按键电路如图 2.2 所示。上拉电阻保证了按键断开时,I/O 口线上有 确定的高电平。 图 2.2 独立式按键键盘框图 AT98C51 湿度采集 模块 接盘接口 模块 显示 模块 步进电机 控制模块 2 方案二: 矩阵式键盘5 在键盘中按键数量较多时,为了减少 I/O 口的占用,通常将按键排列成矩阵形 式,如图 2.3 所示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通, 而是通过一个按键加以连接。这样,一个端口(如 P1 口)就可以构成 4*4=16 个按键, 比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加 一条线就可以构成 20 键的键盘,而直接用端口线则只能多出一键(9 键)。由此可见, 在需要的键数比较多时,采用矩阵法来做键盘是合理的。行列式键盘的缺点是程序 设计较复杂些。 因为本设计需要的按键数目较多,为了节省 I/O 口线资源,选用矩阵式键盘, 故采取方案二。 图 2.3 矩阵式键盘框图 2.3 土壤湿度传感器的选取 目前市场上测量土壤湿度方法有中子衰减法、张力计测湿法、介电法速测法6。 2.3.1 中子衰减法测量土壤含水量 高速运动的快中子与物质作用能改变方向和产生能量损失,变成慢中子,形成衰减,由 于被测物中含水量不同产生的衰减亦不同,主要原因是水中含有氢原子,而中子对氢原 子作用的损失远大于对其他原子作用的损失,这样可以通过测定慢中子来测定土壤含 3 水量,也就是通过衰减程度的大小来确定被测物质中含水量的多少,中子土壤水分测试 仪就是根据这一原理设计而成。 这个方法的优点在于快速准确,但重要的是这种方法如果屏蔽不好,易造成射线泄 漏,以致污染环境,危害人体健康,特别难以测量浅层土壤含水量,而浅层土壤含水量与 作物生长关系密切,明显随灌溉、降雨、蒸发等的变化而变化,是土壤水分中最为活跃 的部分,需要实时监测,这就极大地限制了中子法的进一步推广应用,这种方法在发达 国家已被禁止使用。 2.3.2 张力计式土壤水分传感器 张力计式土壤水分传感器是一种广泛成功地用于某些土壤水分测量的传感器。 这种仪表有个多孔瓷头,它通过充水的管子与真空表连接,该装置插入土壤的钻孔中, 多孔瓷头与土壤紧密帖合,真空表设在地面之上。用张力计来测量土壤含水量有很大 的发展,它的优点是:结构及原理都比较简单,可以在线实时测量,而且可以确定水在土 壤内的流动方向和渗透深度,但它的缺点也很突出。它的测量范围很大程度上受土质 的影响。该方法所测量的是土壤水的吸力,需要依据土壤水分特征曲线来换算成土壤 含水量,由于土壤水分能量关系非常复杂,呈非线性,且容易受到许多土壤理化特性的 影响,即使对同一块田,这一关系也十分复杂,使得用张力推求土壤含水量时极为困难, 不方便,带来较大误差。该方法存在滞后和回环,影响其测量速度。由于以上缺陷的存 在极大地限制了该方法的推广应用。 2.3.3 探针式电容湿度传感器 利用土壤的介电特性来测量土壤含水量是一种行之有效的、快速的、简便的、 可靠方法。对一定几何结构的电容式水分传感器,其电容量与两极间被测物料的介电 常数有正比关系。由于水的介电常数比一般物料的介电常数要大得多,所以当土壤中 的水分增加时,其介电常数相应增大,测量时水分传感器给出的电容值也随之上升,根 据 4 图 2.4 探针式土壤湿度传感器 传感器的电容量与土壤水分之间的对应关系可测出土壤的水分。利用该方法测量湿 度的应用很多,多为探针式。探针式电容传感器是介电常数传感器中的一种,它可以敏 感不同深度土壤的含水量。探针用来感测土壤的水分,其长度和距离根据被测对象的 灵敏度优化确定。图 2.4 为 3 针电容土壤传感器的基本结构图,中央探针作为驱动电 极,2 根周部敏感电极连接到一起作为电容的另一极。电容式水分传感器的特点是 精度高、量程宽、可测的物料品种多,而且响应速度也较快,可应用于在线监测实现自 动化。 0 第 3 章 系统硬件电路设计 3.1 AT89C51 单片机硬件电路 单片机的全称为微型计算机(Single Chip Microcomputer)。从应用领域来看, 单片机主要用于控制,所以又称微控制器(MicroControllerUnit)或嵌入式控制器 (Embedded Controller)。单片机是将计算机的基本部件微型化并集成在一块芯片 上的微型计算机,其基本组成和工作原理与通用微型计算机是一致的。主要由微处 理器(CPU)、存储器、I/O 接口三大功能部分通过总线有机连接而成,在外部通过 I/O 接口配置各种外部设备就构成微机的硬件系统7。单片机体积小,成本低,运用 灵活,易于产品化;面向控制,能针对性地解决从简单到复杂的各类控制任务;抗 干扰能力强,适用范围广。 本系统采用AT89C51单片机作为中央处理器,其主要任务是读取自动灌溉控制 器的模式,并在相应模式下进行相应的控制。如用户选择时间控制模式,从键盘输 入灌溉的时间显示在显示屏上,启动步进电机,电机正转一圈把自动灌溉的阀门打 开,灌溉的时间一到,步进电机反转一圈把阀门关闭。在自动模式下,单片机检测 外部有无灌溉信号。若有,则打开阀门,若没有则循环等待。 在本系统中,AT89C51单片机的P0口用于单片机与LCD之间的数据传送,P1.0 P1.3用于步进电机的驱动接口,P1.4用于LCD显示的位驱,P1.5用于控制对LCD的读 写控制信号,P1.6用于控制对LCD的指令是属于写数据还是写指令。P2口用作键盘 电路,一共设置16个按键。P3.2口用于键盘中断信号,若有键按下,则P3.2有中断 信号送入单片机。P3.3用于外部灌溉信号的输入通道。 AT89C51 是一种低功耗/低电压、高性能的八位 CMOS 单片机,片内有一个 4KB 的 FLASH 可编程可擦除只读存储器(FPEROMFlash ProgrammAble and Erasable Read Only Memory),它采用了 CMOS 工艺和 ATMEL 公司的高密度非易 失性存储器技术,而且其输出引脚和指令系统都与 MSC51 兼容。片内置通用 8 位中央处理器(CPU)和 FLASH 存储单元,片内的存储器允许在系统内改编程序 或用常规的非易失性存储器编程。因此,AT89C51 是一种功能强、灵活性高且价格 合理的单片机,可方便的应用于各种控制领域8。 3.1.1 主要特性 (1)与 MCS-51 产品指令系统兼容; 1 (2)4K 字节可编程闪烁存储器; (3)寿命:1000 写/擦循环; (4)数据保留时间:10 年; (5)全静态工作:0Hz-24MHz; (6)三级程序存储器锁定; (7)128*8 位内部 RAM; (8)32 条可编程 I/O 线; (9)两个 16 位定时器/计数器; (10)6 个中断源; (11)可编程串行通道; (12)低功耗的闲置和掉电模式; (13)片内振荡器和时钟电路。 另外,AT89C51 是用静态逻辑来设计的,其工作频率可下降到零并提供两种软 件的省电方式-空闲方式和掉电方式。在空闲方式中,CPU 停止工作。在掉电方式 中,片内振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,只保存片内 RAM 中的内容,直到下次硬件复位为止。 3.1.2 管脚说明 VCC(40):供电电压,其工作电压为 5V。 GND(20):接地。 P0 端口(P0.0-P0.7):P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8 个 TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外 部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口 作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高9。 P1 端口(P1.0-P1.7):P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4 个 TTL 门电流。P1 口管脚写入 1 后,被内部上拉为高电平, 可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 在 FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 端口(P2.0-P2.7):P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓 冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉 高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是 2 由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进 行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当 对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3 端口(P3.0-P3.7):P3 口管脚是一个带有内部上拉电阻的 8 位的双向 I/O 端 口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平, 并用作输入。作为输入端时,由于外部下拉为低电平,P3 口将输出电流(ILL) 。 P3 口也可作为 AT89C51 的一些特殊功能口,如表 3.1 所示。P3 口同时为闪烁 编 程和编程校验接收一些控制信号。 表 3.1 P3 端口引脚兼用功能表表 端口引脚第二功能 P3.0RXD(串行输入口) P3.1TXD(串行输出口) P3.2INT0(外中断 0) P3.3INT1(外中断 1) P3.4T0(定时/计数 0) P3.5T1(定时/计数 1) P3.6WR(外部数据存储器写选通) P3.7RD(外部数据存储器读选通) AT89C51 引脚图如图 3.1 所示。 3 图 3.1 AT89C51 引脚图 3.1.4 AT89C51最小系统 XTAL1 和 XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为 片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号 的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 AT89C51 最小系统接线如图 3.2 所示,在 XTAL1、XTAL2 端接上晶振及两个 谐振电容,在 RESET 端接上相应的电阻、电容,如需要按键复位,加上按键即可组 成一个最小系统,按要求通电后,系统就可以工作了。 4 图 3.2 AT89C51 最小系统图 3.2 湿度采集电路 3.2.1 湿度传感器的原理 利用土壤含水量的介电特性来测量土壤含水量是一种行之有效、简便、快速的 方法。对一定几何结构的电容式水分传感器,其电容量与两极间被测物料的介电常数 有正比关系10。由于水的介电常数比一般物料的介电常数要大得多,所以当土壤中 的水分增加时,其介电常数相应增大,测量时水分传感器测出的电容值也随之上升,根 据传感器的电容量与土壤水分的对应关系可测出土壤的水分。交流信号源产生某一 频率的交变信号,此信号通过一定的传输线到达探针,传感器探针可以看作电极,等效 为一个电容和一个电导的并联。假设电极的电容为 C,加在电极之间的交变电压 将产生一个交变电量,从而引起一个交变电流,则交变电压可以( )u t( )q t( ) c it( )u t 写为 (3.1) ( )u t 1 ( ) c i t dt c 探针导纳为 (3.2) YGjwC 5 其中,G 为等效导纳的电导;C 为等效导纳的电容,则。 2 2 YGwC 根据高频电子线路理论可知。其中, 表示土壤的介电常数; 表示 0 Ck 0 真空中的介电常数,等于; k 取决于探针的几何结构。当在探针上加一 12 8.85 10/F m 个电流 i 时,在电容两端产生一个幅值为,相角为的电压,则探针导纳u j uu e 可表示为。 j i Y u e 土壤介电测量通用模型等效电路,如图 3.3 所示。 图 3.3 土壤介电测量模型的等效电路 根据矢量电压表测得的电压和相角以及信号源电流值,可以计算出导纳,进而求得 等效电容 C 和等效电导 G。当探针结构一定时,被测物质的介电常数决定着探针的阻 抗,而土壤的介电常数又主要取决于土壤含水量,这样最终通过探针阻抗的测量得出土 壤含水量的数值。 3.2.2 SHT10 数字温湿度传感器 由瑞士 Sensirion 推出的 SHTxx 系列数字温湿度传感器,基于领先世界的 CMOSens 数字传感技术,具有极高的可靠性和卓越的长期稳定性。全量程标定, 两线数字接口,可与单片机直接相连,大大缩短研发时间、简化外围电路并降低费 用。此外,体积微小、响应迅速、低能耗、可浸没、抗干扰能力强、温湿一体,兼 有露点测量,性价比高,使该产品能够适于多种场合的应用。 (1)产品特点: SHT10 系列为贴片型温湿度传感器芯片 全量程标定,两线数字输出; 湿度测量范围:0100%RH; 温度测量范围:-40+123.8; 6 湿度测量精度:4.5%RH 温度测量精度:0.5 响应时间:8s(tau63%); 低功耗 80W(12 位测量,1 次/s); 可完全浸没。 (2)应用领域: 数据采集器、变送器、自动化过程控制、汽车行业、楼宇控制 盛放第一个数的字形参数 U1 EQU 27H ; 第二个数的字形参数 2 U2 EQU 28H ; 第三个数的字型参数 U3 EQU 29H ; 模式标志,0 为手动,1 为自动 ORG 0000H LJMP MAIN ORG 0003H LJMP KEYBOARD ; 键盘采取中断检测方式 ORG 0030H MAIN: MOV SP,#60H MOV R1,#00H ;按键次数计数器 MOV P0,#0FFH MOV P2,#0F0H MOV P1,#00H CLR A CLR EA ;关中断 SETB IT1 SETB EX0 START: LCALL SHOW0 ;初级显示 LCALL DELAY1 LCALL SHOW1 SETB EA ;开外部中断 LOOP: LCALL DELAY LCALL DELAY MOV A,U3 JNZ TYPE1 SJMP LOOP TYPE1: LCALL DELAY MOV A,U3 CJNE A,#2,TYPE1 RECYCLE0: LCALL DELAY1 3 MOV C,P3.3 JC TESTNEXT LCALL STARTMOVE RECYCLE: LCALL DELAY1 MOV C,P3.3 JNC RECYCLE LCALL STOPMOVE TESTNEXT: SJMP RECYCLE0 4.3 12864 LCD 显示子程序设计 12864LCD 显示屏有着自己的指令集,基本指令集有 11 条指令。它的指令是通 过选择 RS 的高低电平来区别所从 DB0DB7 输入的是数据还是指令, RW 的高低 电平来选择对现实屏是读操作还是写操作。CS1、CS2 不同组合代表选择左半屏或 者右半屏。数据或者指令的代码从 DB0DB7 输入。对 12864LCD 写程序的步骤如 下: (1)开启两个半屏 (2)清左半屏和右半屏 (3)选择左半屏 (4)设置页和起始行 (5)写左半屏 显示屏显示子程序流程图如图所示。 4 开始 显示屏初始化 清屏 选择左或右半屏 设置起始行、起始列 半屏写完? 是 写字 否 结束 图 4.2 显示屏显示子程序流程图 显示屏显示子程序: ;=显示分钟数子程序= DISPLAY0: LCALL LEFT ;对左半屏操作 MOV YM,#4 ;页设置 MOV LM,#48 ;列 第一位数 MOV CODES,U0 ;字形参数 MOV DPTR,#TAB2 LCALL CHINE ;显示程序 RET DISPLAY1: LCALL RIGHT MOV YM,#4 5 MOV LM,#0 ;第二位数 MOV CODES,U1 MOV DPTR,#TAB2 LCALL CHINE RET DISPLAY2: LCALL RIGHT MOV YM,#4 MOV LM,#16 ;第三位数 MOV CODES,U2 MOV DPTR,#TAB2 LCALL CHINE RET ;= ;显示屏初始化子程序 INT: LCALL LEFT ;左半屏控制 MOV COM,#3FH ;左半屏开显示设置 LCALL PRM ;写指令子程序 LCALL RIGHT ;右半屏控制 MOV COM,#3FH ;右半屏开显示设置 LCALL PRM ;写指令子程序 ;=写数据子程序= PRD: LCALL BUSY ;调用判忙子程序 SETB RS ;RS 置 1 CLR RW ;RW 清 0 SETB E MOV DATAES,DAT ;所送数据 CLR E ;E 下降沿液晶模块从数据总线上读入指令 RET 6 ;=设置显示初始页= PAGEFIRST: MOV A,COM ;COM 中为实际的页码 ORL A,#0B8h ;将实际的页数和 B8 的或所得的结果即是要送的指令代码 MOV COM,A LCALL PRM ;调用写入指令子程序 RET ;=设置显示初始列= LIEFIRST: MOV A,COM ;COM 中为实际的列码 ORL A,#40H ;将实际的页数和 40 的或所得的结果即是要送的指令代码 MOV COM,A ;设置显示起始列为第 0 列 LCALL PRM ;调用写入指令子程序 RET ;=显示程序= CHINE: MOV A,CODES MOV B,#32 MUL AB ADD A,DPL MOV DPL,A MOV A,B ADDC A,DPH MOV DPH,A ;=设置显示起始页= MOV COM,YM LCALL PAGEFIRST ;=设置显示起始列= MOV COM,LM LCALL LIEFIRST ;=在指定位置显示 16*16 汉字上半部分= 7 MOV R0,#00H RETURN0: MOV A,R0 MOVC A,A+DPTR MOV DAT,A LCALL PRD INC R0 CJNE R0,#16,RETURN0 ;=设置显示起始页= MOV A,YM INC A MOV COM,A ;设置显示起始页为第 4 页 LCALL PAGEFIRST ;=设置显示起始列= MOV COM,LM LCALL LIEFIRST ;=在指定位置显示 16*16 汉字下半部分= RETURN1: MOV A,R0 MOVC A,A+DPTR MOV DAT,A LCALL PRD INC R0 CJNE R0,#32,RETURN1 RET 4.4 键盘子程序设计 本设计的键盘方案采取矩阵式键盘,和独立式键盘相比,矩阵式键盘按键数目 较多,扩展性强,可在需要按键较多的情况下使用。本键盘的思路如下:键盘采用 中断扫描方式,P2.4-P2.7 作为行线,P2.0-P2.3 作为列线,将行线用一个与门连起来。 与门输出端与单片机的外部中断 IN1 连接。先将所有的列线置低电平,行线置高电 平。与门输出端输出高电平。若有键按下,行线中的某一条将会被置低电平,与门 8 输出低电平,单片机将响应外部中断。单片机响应外部中断后,先延时 10ms,用以 消除抖动。延时后若 IN1 还为低,则进入扫描程序。扫描完成后,将键值存入累加 器 A。键盘子程序流程图如下: 开始 有键闭合 建立无效标志 建立有效标志 键盘扫描 计算键值 闭合键释放 找到闭合键 返回 是 否 是 否 是 否 图 4.3 键盘子程序流程图 LCD 数码管显示子程序: ;=键盘程序= KEYBOARD: K1: LCALL DELAY ;消抖 LCALL DELAY LCALL KS ;判别是否有键按下 JNZ K2 ;确实有键按下,转 K2 LJMP RETURN ;没键按下结束 9 ;=判别是否真的有键按下= KS: MOV A,P2 CPL A ANL A,#0F0H RET K2: L0 : MOV R4,#00 ;第 0 列 CLR P2.0 SETB P2.1 SETB P2.2 SETB P2.3 MOV A,#00 ;第 0 行首键号 JNB P2.4 ,JH ;有键按下转求键号 MOV A,#04 ;第 1 行首键号 JNB P2.5,JH ;有键按下转求键号 MOV A,#08 ;第 2 行首键号 JNB P2.6 ,JH ;有键按下转求键号 MOV A,#12 ;第 3 行首键号 JNB P2.7 ,JH ;有键按下转求键号 L1: MOV R4,#01H ;第 1 列 CLR P2.1 SETB P2.0 SETB P2.2 SETB P2.3 MOV A,#00 JNB P2.4,JH MOV A,#04 JNB P2.5,JH MOV A,#08 ;第 2 行首键号 JNB P2.6 ,JH ;有键按下转求键号 10 MOV A,#12 ;第 3 行首键号 JNB P2.7 ,JH ;有键按下转求键号 L2: MOV R4,#02H ;第 2 列 CLR P2.2 SETB P2.0 SETB P2.1 SETB P2.3 MOV A,#00 JNB P2.4,JH MOV A,#04 JNB P2.5,JH MOV A,#08 ;第 2 行首键号 JNB P2.6 ,JH ;有键按下转求键号 MOV A,#12 ;第 3 行首键号 JNB P2.7 ,JH ;有键按下转求键号 L3: MOV R4,#03H ;第 3 列 CLR P2.3 SETB P2.0 SETB P2.1 SETB P2.2 MOV A,#00 JNB P2.4,JH MOV A,#04 JNB P2.5,JH MOV A,#08 ;第 2 行首键号 JNB P2.6 ,JH ;有键按下转求键号 MOV A,#12 ;第 3 行首键号 JNB P2.7 ,JH ;有键按下转求键号 JH: ADD A,R4 ;形成键号送入 A PUSH ACC ;键号入栈保护 K3: LCALL DELAY 11 LCALL KS ;等待键释放 JNZ K3 ;未释放,等待 POP ACC ;键释放,键号出栈送 ACC MOV B,A ADD A,B ADD A,B MOV P2,#0F0H ;恢复 P2 口电平 MOV DPTR, #TAB4 ;实现按键功能 JMP A+DPTR TAB4: LJMP OPRE0 LJMP OPRE1 LJMP OPRE2 LJMP OPRE3 LJMP OPRE4 LJMP OPRE5 LJMP OPRE6 LJMP OPRE7 LJMP OPRE8 LJMP OPRE9 LJMP OPRE10 LJMP OPRE11 LJMP OPRE12 LJMP OPRE13 0 第 5 章 系统仿真 5.1 Proteus 仿真软件介绍 Proteus 是英国 Labcenter 公司开发的电路分析与仿真软件。运行于 Windows 操 作系统上,可以仿真、分析(SPICE)数字电路、模拟电路、数模混合电路,是目前唯 一能实现对 51、PIC、AVR、HC11、ARM 等处理器的仿真软件。该软件的特点是 17: (1)集原理图设计、仿真和 PCB 设计于一体,真正实现从概念到产品的完整开 发工具。 (2)具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿 真,是独一无二的支持处理器与外围电路的协同仿真电路设计软件。 (3)具有全速、单步、设置断点等多种形式的调试功能。 (4)具有各种信号源和电路分析所需的虚拟仪表、是电类教学实验与创新的最 侍平台。 (5)支持 Keil C51 uVision2、MTLAB 等第三方的软件编译和调试环境。 (6)具有强大的原理图到 PCB 板设计功能,可输出多种格式的电路设计报表。 5.2 仿真电路设计 本系统硬件由湿度采集电路模块、步进电机控制电路模块、键盘接口电路模块 和显示电路模块组成。在闭环模式下,湿度采集电路采集土壤湿度,并把模拟信号 转化为数字信号。在仿真电路里用一个开关替代,该开关设在 P3.3 口。若开关按下, 则代表需要灌溉;若开关处于断开的状态,则不灌溉。在时间模式下,用户可通过 键盘设置灌溉的时间(分钟) ,系统支持的最长时间是 999 分钟,每灌溉一分钟,显 示屏的的时间数字就会减 1,时间减为 0 时,灌溉停止。步进电机控制电路模块的 功能相当一个阀门,若执行灌溉,则步进电机正转一圈,将阀门打开;若停止灌溉, 则步进电机反转一圈,将阀门关上。 按照以上描述,将自动灌溉控制系统电气原理图进行 PROTEUS 设计。打开 PROTEUS 的 ISIS 编辑环境,从 PROTEUS 中选取该电路所需要的元器件,放置元 器件、放置电源和地,再点菜单栏工具下拉的电气规则检查,当规则检查出现: “NETLIST GENERATED OK NO ERC ERRORD FOUND”,表示通过检查,电路设 计完成。 1 系统的 PROTEUS 仿真总体电路图如下所示: L3 L2 L1 L0 H0 H1 H2 H3 L0 L1 L2 L3 AC BDA B C D E RW RS CS2 CS1 E RW RS H3 H2 H1 H0 A3 A0 A1 A2 A4 A5 A6 A7 A7 A6 A5 A4 A3 A2 A1 A0 A7 A6 A5 A4 A3 A2 A1 A0 CS1 CS2 1B 1 2B 2 3B 3 4B 4 5B 5 6B 6 7B 7 8B 8 1C 18 2C 17 3C 16 4C 15 5C 14 6C 13 7C 12 8C 11 COM 10 U1 ULN2803 12M CRYSTAL C1 30pF C2 30pF C3 22uF +5V R1 8.2k +88.8 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.

温馨提示

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

评论

0/150

提交评论