《基于单片机的温室自动灌溉系统设计与实现.docx》由会员分享,可在线阅读,更多相关《基于单片机的温室自动灌溉系统设计与实现.docx(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.基于单片机的温室自动灌溉系统设计与实现基于单片机的温室自动灌溉系统设计摘 要我国设施农业节水灌溉已成为农业工程领域中重点关注的问题之一,由于国内外的自动灌溉系统造价高、使用复杂而难以推广,开发满足当前设施农业生产需求的灌溉控制系统具有重要意义。本文设计了一种基于单片机的温室自动灌溉系统,实现了作物根系处土壤湿度的监测与自动控制。该系统以 CC2430 单片机为核心,采用模块化设计思路,主要包含微处理器模块、数据采集模块、控制模块、电源供应模块及人机交互模块。系统将周期采集的土壤湿度数据传送到微处理器模块,由决策算法对数据进行分析后做出是否灌溉的指令,在灌溉过程中由数据采集模块持续监测土壤湿度
2、,并根据监测结果,反馈控制灌溉设备的启停,以此实现土壤湿度维持在预设范围。系统采用人机交互模块实现灌溉阈值的可配置,满足不同设施作物种植的参数定制需求,同时提供实时土壤湿度查看和灌溉设备状态管理功能。初步试验表明,系统把土壤湿度提高 30,所需的时间在 50,60min 之内,控制误差在 3,以内,且运行稳定,操作简单,准确性和快速性指标能满足设施农业灌溉要求。系统成本低、可维护性强,从而具有良好的推广应用前景。关键词:温室自动灌溉;土壤湿度监测;单片机绪论1 绪论1.1 研究背景自古以来,我国就是一个以农业为主的国家,即便到了现代社会,农业仍是我国国民经济的基础。但我国农业生产效率低下,长期
3、以来一直以经验种植为主,农业生产效率仅为发达国家的 1/10。为解决三农问题,国家正大力发展现代农业, 温室是其中一个重要的组成部分,可增加作物年均成熟次数,增大作物产量,提高农业生产效率,因此,1 大力发展温室产业,对我国这样一个人口多耕地少的国家而言具有极大的战略意义。2 目前,我国的温室面积已突破 210 万 hm,总面积达世界第一,但我国温室管理水平落2 后,大多控制系统采用定时控制或者手动控制方式。在灌溉管理方面,通常存在浇水3 不及时、不均、灌水不足或过量灌水等现象。自动灌溉系统通常对作物根系的土壤湿度进行实时监测,获得作物根系的需水量,以此作为自动灌溉的依据。温室自动灌溉可实现土
4、壤湿度和营养成分的有效管理,是保4 证设施作物优质高产的重要措施。随着精准感知技术、定量控制技术的迅速发展,自动5 控制技术在节水灌溉中有了新的发展,通过灌溉控制器适时、适量地灌水,在节省水、人工和提高作物产量方面取得了一定的成效,可显著提高灌溉精准度,提高水的利用率。本文设计一种操作简单、精确灌溉的低成本自动化控制灌溉系统,使之既能保证植物的良好的生长状态,又能做到尽量节水,对温室农业的发展具有重要意义。1.2 研究现状在国外,早在 20 世纪 50 年代,利用电子设备、计算机设备和程序控制的灌排系统就得到很大发展,并在法国、美国、日本等发达国家得到日益广泛的应用。1966 年美国利用虚拟仪
5、器技术开发了一套 AgriMate 自动灌溉系统,系统中的现场处理器由 LabVIEW 的个人计算机控制。现场处理器配置了模拟输入、锁存和继电器板,用户可以监控水箱水位、阀门位置、泵的状态和土壤湿度等,而修改设定点即可改变灌溉计划。水的用法、水箱水位和降水情况等都是存储在灌溉数据库文件里的数据,用户能够读出这些数据以与当前数据进行比较,以图形方式显示给定月份的土壤湿润度和外加的水,其发展程度6 已经非常高。相关研究依靠气象数据,通过对比过去灌区的蒸发量及灌水 量,结合各分灌区的植物种类分布、地形、土壤成分等数据进行自动分析,并自动制定出当前各项5灌溉指标的灌溉系统,存在灌溉依据的间接性,很可能
6、偏离灌溉目标。近 年来相关研究已经深入到将气象因素、蒸腾量和土壤含水率相结合的综合灌溉控制系统。但国外的设备普遍价格昂贵、专业性较强,不适合普通用户使用。7-12国内在这方面的研究起步较晚,但也取得一定成就,比如北京农业工程大学研制了以 INTEL 公司的 8031 系统单片机为核心的自动化灌溉系统,该系统为多通道土壤水分检测、多路控制灌溉的控制系统。张建丰等研发的多功能网络式自动灌溉方法及其- 1 -总结与展望装置,实现了定时、定量,根据土壤湿度,预先制定灌溉计划的灌水功能。但总体上,国内灌溉自动化程度不高,相关设备落后,与国外的先进水平还有很大的差距。9-16国内外专家在这方面已做出了不可
7、否认的成就,但这些自动灌溉系统由于造价高、专业性强而难以推广。本文设计的系统通过实时监测作物根域的土壤湿度信号,从而对作物进行适时适量按需灌溉,不但可以做到精准灌溉,达到节水的目的,而且操作简单,开发成本低,适于推广。1.3 研究目的温室在作物生长过程中,根系会从土壤孔隙中吸取水分,通过对作物根域附近的土壤湿度的实时监测直接反映作物根系的需水量。我国现阶段大多灌溉控制系统采用定时控制或者手动控制方式,浇水不及时、不均、灌水不足或过量灌水现象时zzzzzzzzzzzzzzzz有发生;更为先进的,依靠气象数据和对比过去灌区的蒸发量及灌水量制定出当前各项灌溉指标的灌溉系统,存在灌溉依据的间接性,很可
8、能偏离灌溉目标。本课题将研究解决以上问题,设计了一种基于单片机的信息采集与自动灌溉控制一体化系统,它具有设备成本低、可维护性强、可靠性高等独特的优势,并能给用户提供预警支持,从而减少农民劳作强度,增加产量。1.4 论文结构本论文章节结构按如下安排:第一章介绍温室自动灌溉系统的研究背景、国内外研究现状、研究目的和论文结构。第二章给出系统设计原理框图,选择器件类型以及对设计中用到的元器件的介绍。第三章硬件电路的设计,包括微处理器模块、数据采集模块、控制模块、电源供应模块以及人机交互模块电路设计。第四章主要是软件设计与实现,介绍单片机开发软件 IAR,重点是各个模块软件设计。第五章主要是系统的应用与
9、验证。第六章主要是总结与展望。- 2 -系统结构设计及器件选型2 系统结构设计及器件选型本系统以单片机(CC2430)为核心,采用模块化设计方法,主要由微处理器模块、数据采集模块、控制模块、电源供应模块、人机交互模块及相关软件组成。单片机是整个系统的核心,它控制本系统的各种功能,因此选择性能可靠的单片机就显得尤为重要,考虑到满足功能要求、稳定性、性价比、开发等因素,选用TI 生产的 CC2430。土壤湿度传感器是本系统的测量元件,传感器性能的好坏直接影响到本系统性能的好坏。本设计采用的 FDS-100,其技术参数为:工作电压 5,12V,工作电流15mA,测量精度?3%,探针长度 5.3cm,
10、输出模拟信号。在本系统中,采用 LCD 作为显示单元,LCD 液晶显示器具有功耗低、寿命长、无辐射、不易引起视疲劳等优点,正在广泛应用于仪表、家用电器、计算机、医疗仪器及交通和通信领域。本系统采用 OCM12864-9 液晶显示模块,它是 12864 点阵型液晶模块,可显示各种字符及图形,可与 CPU 直接接口。2.1 系统结构设计所谓的模块化设计,简单的说就是将产品的某些要素组合起来,构成一个具有特定功能的子系统,将这个子系统作为通用性的模块与其他产品要素进行多种组 合,构成新的系统,产生多种不同功能或相同功能、不同性能的系列产品。模块化是在传统设计基础上发展起来一种新的设计思想,现已成为一
11、种新的设计思想被广泛采用,尤其是信息时代电子产品不断推陈出新,模块化设计的产品正在不断涌 现。模块化设计已被广泛用于机床、电子产品、航空、航天等设计领域。模块化设计是绿色设计方法之一,它已经17从理念转变为比较成熟的设计方法。本文设计的温室自动灌溉系统是实现温室作物根系处土壤湿度的自动控制,采用模块化设计方法,系统主要由微处理器模块、数据采集模块、控制模块、电源供应模块以及人机交互模块组成。整个系统以单片机(CC2430)为控制核心,系统运行时,首先将数据采集模块采集到的土壤湿度数据传送到微处理器模块上,并将采集到的土壤湿度数据显示在液晶屏上,由存储在单片机的决策算法对数据进行分析后做出是否灌
12、溉的指令,与此同时数据采集模块对土壤湿度进行实时监测,将土壤湿度参数信息送入微处理器模块发出是否继续灌水的指令,直到土壤湿度维持在我们预先设定的灌溉阈值停止灌水。另外系统针对不同农作物及其不同发育期,可预先通过人机交互模块输入相关参数,使得土壤湿度达到我们预期的标准,达到节水和精确灌溉的目的,灵活适用于多种场合。系统示意图如 2-1 所示:- 3 -总结与展望CC24302.4GHzCC2420 FLASH 计算机 UART人通按键通机用光耦用数交 TLP521 数字字 8051 互 I/OLCD 控 I/OMPU 模制块模驱动模块 A/D 块FDS-100水流数据采集模块灌溉设备电源供应模块
13、开关(电池/市电/太阳能可选) 图 2-1 温室自动灌溉系统示意图2.2 器件选型在系统的硬件设计上,最重要的是低功耗的设计。低功耗的设计可以分为硬件和软件两个方面,在硬件方面体现在芯片的选择上。2.2.1 微处理器选型微处理器是整个系统的核心,直接关系到系统的整体性能、价位、开发难度等。在选择微处理器芯片时需考虑以下因素:A、芯片集成度高低有些芯片内部集成有 FLASH、AD 等外围设备,外围设备越多,硬件电路越简单,系统功耗也会越小,因此应尽量选择集成度高的芯片。B、开发商开发套件完备程度不同的开发商提供的开发系统不尽相同,开发套件完备程度关系到系统开发的难度,选择芯片时应考虑开发商提供的
14、资料是否满足开发需求。C、价格高低下面首先对当前几种主流的微处理器芯片加以介绍。(1)TI 公司的 CC2430A、高性能 8 位 8051 微控制器核,是常规 8051CPU 处理速度的 8 倍。B、128KB 可编程 FLASH 和 8KB 的 RAM。C、接收模式功耗低于 27mA,发射模式低于 25mA。D、休眠模式仅 0.9 A 的功耗,在待机模式时少于 0.6 A 的功耗。E、集成可编程的 8-14 位 8 路输入模数转换 ADC。(2)SN250:- 4 -系统结构设计及器件选型A、16 位 XAP2b 微处理器。B、128KB 的 FLASH 及 5KB 的 RAM。C、两种休
15、眠模式:处理器空闲Processor idle;深度休眠Deep sleep,功耗 1.0uA。D、集成有 12 位 ADC。(3)JN5121:A、16MHz32 位的 RISC 处理器。B、96K RAM,64K ROM。对比以上各芯片的性能参数,TI 公司的 CC2430 具有最低的系统功耗,较高的主频速度,较多的外围设备。低功耗对以电池供电的温室设备而言极为重要,超低工作功耗并具有休眠功能的 CC2430 在此方面有着最为出色的表现;8 路 8-14 位的内部可编程 ADC 应用方便,可以省去外接 ADC 芯片,集成的 128 KB 可编程闪存和8KB 的 RAM,系统设计时不需考虑外
16、接 ADC 和扩展存储器。2.2.2 土壤湿度传感器选型当前土壤水分传感器基本为模拟型号,数字型的非常少见,下面罗列了几种型号:A、FDS-100 土壤水分传感器:测量范围:0,100%;测量精度:?3%;供电:5V,10V;输出信号:0,2.0VDC;工作电流:21mA 。33B、SWR2 土壤水分传感器:测量范围:0,100%;测量精度:0,50%(m/m)范围内为?2%;供电:4.5V,5.5V;输出信号:0,2.5VDC;工作电流:60mA。33C、TR-5A 型土壤水分传感器:测量范围:0,100%;测量精度:0,50%(m/m)范围内为?2%;供电:12V,24V;输出信号:4,2
17、0mA 标准电流环;工作电流:50mA。 比较以上几种传感器,FDS-100 传感器功耗最低,测量精度虽然稍为逊色,但价格最为便宜,并且应用也最多,主要考虑功耗和价格因素,因此本系统采用 FDS-100 型传感器用于测量土壤水分含量。2.2.3 LCD 液晶显示模块选型LCD 液晶屏采用 OCM12864-9,该 LCD 具有 16*8 的英文字母显示能力和 8*4 的汉字显示能力。由于 CC2430 的 I/O 口有限,为了节省有限的系统资源,故采用74HC595 串并转换芯片,显示数据经 CC2430 串行输入 74HC595 后再由其并行输入给 LCD。OCM12864-9 字符点阵液晶
18、显示模块描述:, 主要工艺:COG, 显示内容:128X64 点阵, 显示模式:STN,POSITIVE, 驱动条件:1/64Duty,1/9Bias, 背光:LED,白色, 工作温度:-20?+70?- 5 -总结与展望, 储存温度:-30?+80?2.3 本章小结本章主要是对温室自动灌溉系统的总体设计,以及设备各模块元器件的选用和相关介绍。- 6 -硬件电路设计与实现3 硬件电路设计与实现3.1 应用软件介绍本文使用 Protel DXP 2004 作为绘制底层硬件电路板的工具。Protel DXP 2004 是 Altium 公司在于 2004 年推出的电路设计软件,是一个 32 位的电
19、子设计系统。它是一套构建在板设计与实现特性基础上的 EDA 设计软件,其主要功能包括电路原理图设计、印刷电路板设计、改进型拓扑自动布线、模拟/数字混合信号仿 真、布局前后信号完整性分析、PLD2004 可编程逻辑系统,以及完整的计算机辅助输出和编辑性能等。本文从电路原理图设计开始,最终得到所需的印刷电路板图。下文对系统的各个功能模块进行了讲述,绘制原理图是绘制 PCB 板的前提,只有正确的绘制原理图并形成正确的网络表才能绘制 PCB 板。系统原理图如图 3-1 所示,最终绘制成的 PCB 电路板如图 3-9、图 3-10 和图 3-11 所示,根据该电路板及相关设备选型制作出的实物图如图 3-
20、12 所示。图 3-1 系统原理图- 7 -总结与展望3.2 微处理器模块设计3.2.1 CC2430 概述CC2430 是 TI 公司设计的一款真正的片上系统解决方案,专为 Zigbee 应用量身制作,其内部集成有一个高性能的 CC2420 射频收发器和工业级标准的高性能8051MCU,另外还有一些其它的强大的功能特性,配合业界领先的 Zigbee 协议栈,CC2430 提供了市场上最具竞争力的 Zigbee 解决方案。其关键性能如下: A、高性能低功耗的 8051 微控制器内核。B、符合 802.15.4 标准的 CC2420 射频收发器。C、优良的无线接收灵敏度和强大的抗干扰性。D、32
21、/64/128KB 片内可编程 FLASH,8KB 静态 RAM,其中 4KB 可在掉电状况下保持数据。E、低功耗。接收模式为 27mA,发送模式为 25mA;休眠模式时仅 0.9 A 的流耗,外部的中断或 RTC 能唤醒系统;在待机模式时少于 0.6 A 的流耗,外部的中断能唤醒系统。F、较宽的电压范围(2.0V-3.6V)。G、21 个通用 I/O 口,两个具有 20 mA 的吸收电流能力。H、8 路 8-14 位可编程 ADC。I、2 个强大的支持几组协议的 USART。J、一个 IEEE802.15.4MAC 定时器,一个通用 16 位定时器和 2 个 8 位定时器; 一个看门狗定时器
22、。3.2.2 CC2430 外围电路设计基于 TI 公司推出的 CC2430 实现嵌入式 ZigBee 应用的微处理器模块硬件电路如图 4 所示。微处理器模块主要包括微处理器电路和调试电路。数据发送通过单极天线(ANT)来实现,非平衡变压器及配套元件(L1、L2、L3、C6)优化了天线性能, 使节点间的最远传输距离可达 120 米。晶振 XTAL2 满足了组网需要,晶振 XTAL1 用于终端节点休眠。仿真器通过 JTAG 接口连接 CC2430 内部 JTAG 调试模块。端口P2.1 为调试时钟接口,P2.2 为调试数据接口。通过该两端口可对片上闪存编程, 访问存储器和寄存器,并可以设置断点、
23、单步操作和修改寄存器。P1 口作为数据输出端,与 LCD 液晶显示模块相连,为节省微处理器的 I/O 口,将 CC2430 的 P1.3、P1.5、P2.0 与移位寄存器 74HC595 相连,寄存器的输出口与 LCD 数据口(DB0-DB7)连接作为数据输入,再通过软件模拟 OCM12864-9 的时序,实现实时数据的查询与显示。- 8 -硬件电路设计与实现VCC33C3 CC2430C4C52040AVDD_SOCAVDD14139DVDD2AVDD2738DVDD3AVDD34737C7DVDD4AVDD44236DUOUPLAVDD5L135AVDD6P2.0 LCD_DAT48P2.
24、0L2L3DC/P2.14631P2.1/DCAVDD7DD/P2.24530P2.2/DDAVDD829AVDD9P1.0928C6P1.0AVDD10P1.18P1.1P1.2_LCD_BK627P1.2AVDD11P1.3 LCD_LD525ANTP1.3AVDD12P1.4 LCD_CS4P1.4P1.5 LCD_CK332P1.5RF_PP1.6 LCD_E233P1.6TXRXWC10P1.7 LCD_RS134P1.7RF_PP0.011P0.0P0.1 LCD_RW1243C9P0.1P2.4/3.2K_2P0.21344XTAL1P0.2P2.3/3.2K_1P0.3 电磁阀
25、14P0.3P0.4_KEYCANCEL1521P0.432M_1C8P0.5_KEYOK1619P0.532M_2P0.6_ADC_KEY1722P0.6RBISA1P0.7 水流开关1826C11P0.7RBIAS2VCC3324XTAL2AV1.8VR13RESET_N1023RESET_NRFG_INC12R14VCC33C13R15 C14图 3-2 微处理器模块硬件电路3.2.3 微处理器复位及调试接口电路设计图 3-3 复位与调试接口电路(1) 复位电路CC2430 有 3 种复位模式:强制复位引脚 RESET_N 为低电平、上电复位、看门狗定时器复位。如图 3-4 所示为外部复
26、位电路,引脚 10 为复位引脚,当按键 S1 按下时引脚 10 输入一低电平脉冲,使系统复位。(2) 调试接口电路- 9 -总结与展望JTAG(Joint Test Action Group,联合测试行动小组)是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试。JTAG 技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路 TAP(Test Access Port,测试访问口),通过专用的 JTAG 测试工具对内部节点进行测试。CC2430 可通过两线接口对芯片进行调试。端口 P2.1 为调试时钟接口,P2.2 为调试数据接口。通过该两端口可对片上闪存进行编程,可以访问存
27、储器和寄存器,并可进行设置断点、单步操作和修改寄存器。当芯片处于非调试模式时,端口P1.1 和端口 P2.2 可用作普通 I/O 口。在 RESET_N 输入引脚为低电平时,在 P2.2 端口施加两个高电平则系统进入调试模式。3.3 数据采集模块设计数据采集模块由传感器及其接口电路组成,主要完成作物根系处土壤湿度数据采集,传感器需具备较高的精度及较低的功耗,完成土壤湿度的准确测量。按传感器工作特性设计外围接口电路,通过数据线采集数据、电源线驱动传感器。本系统所采用的土壤水分传感器型号为 FDS-100,其技术参数为:工作电压 5,12V,工作电流 15mA,测量精度?3%,探针长度 5.3cm
28、,输出模拟信号。由于 CC2430 内部集成了8 通道的 814 位 ADC,所以无需外置 A/D 转换器,通过 P0.0 口即可实现信号的传输。另外,本系统采用水流开关来监测灌溉阀门的状态、管路中液体是否流动和流动的量是否达到要求,以此来监测系统运行的可靠性。跳线帽25VP10111LS122123SPEAKER3R20Q2P1.02P115BVCC331V2ECVR201P0.0 GND21R193R8I2C SDAP34I2C SCLP0.751P1.0VCC332Header 5R28 水流开关 D8GND图 3-4 传感器通用接口电路3.4 电源供应模块设计电源供电部分采用 24V
29、直流输入的电源适配器供电,电源输入后,经过桥整、电容滤波后,分为两路,经过 LM2596 和 TPS79533 后分别为板子提供 5V 和3.3V(VCC33)两种电平输入。本系统用到的电压有 24V、12V、5V、3.3V。TI 公司的电源管理芯片 TPS79533 解决了 5V 到 3.3V 的转换。系统的电源电路如图 3-5 所示,其中,VCC33 跟电池输出的作用一样,都是为板上的元器件和芯片提供合适的工作电源;而 VCC5 则是用来给控制板上的元器件和芯片供电;另外,它也可以为以5V 为工作电压的传感器供电(监测节点上留有土- 10 -硬件电路设计与实现壤湿度传感器的接口,可用于扩展
30、)。D1J15V1U4TPS795332C133D Schottky 3AVCC33D2R14R13EIGOPASSJ2NS8NNU13DT2212345U4LM25963R1614C15F- backPOWER_SW124V1L3+Vin2VCC12V/5VO-PUTBATT1C19C9R18D10N/FGC8C16C17C18R1753图 3-5 系统的电源电路3.5 控制模块硬件设计控制模块主要由执行机构及其驱动电路组成。本系统的执行机构采用了中间继电器,它按照微处理器的命令执行相应的操作。而驱动电路是连接微处理器与执行机构的桥梁,在本电路中连接了 CC2430 和中间继电器。功率驱动部
31、分主要由光电耦合器 TPL521 和三极管 2N3904 开关电路构成。光电耦合器 TPL521 由 VCC33 供电,主要起隔离作用,把微处理器的控制信号和执行机构的功率信号隔离开来,提高系统抗干扰性,保护温室自动灌溉系统。TPL521 的输入为来自微处理器 CC2430 的小功率信号,经过隔离后把该信号输出至三极管 2N3904。三极管 2N3904 的作用是放大从处理器 CC2430 输出的控制信号,把其变成可以驱动执行机构的信号。控制模块硬件电路如图 3-6 所示,P0.3 口为低电平时,光耦导通,进而使三极管导 通把 LED 点亮,表示该路控制的强电设备正常工作。图 3-6 控制模块
32、硬件电路图为了提高精度,本系统在温室中多点采集作物根系的土壤湿度,微处理器接收多点采集的同一时刻的同一环境参数,根据相应的算法进行均值估算,最后根据需要向相应的执行机构下达任务,执行灌溉命令。- 11 -总结与展望3.6 人机交互模块设计加装显示设备,可以更好的实现人机交互,使系统更人性化,本课题采用两种显示方式:LED 显示方式和 LCD 显示方式。本设计采用 OCM12864-9 液晶显示模块, 它是64 点阵型液晶模块,可显示各种字符及图形,可与 CPU 直接接口,OCM12864-9 液 128晶显示模块对外提供了以下几种信号线:8 位标准数据总线(DB0-DB7),读写控制线(R/W
33、),片选信号线(CS),数据/指令选择线(A/O),允许信号线(E),还有复位信号线(/RST)。 3.6.1 显示模块原理图设计根据信号线的逻辑电平,选择合适的微处理器 CC2430 的 I/O 引脚与之相连接。为节省微处理器的 I/O 口,将 CC2430 的 P1.3、P1.5、P2.0 与移位寄存器 74HC595 相连,寄存器的输出口与液晶屏数据口(DB0-DB7)连接作为数据输入,再通过软件模拟 OCM12864-9 的时序,实现实时数据的查询与显示。另外,通过调节 LCD 的LED+引脚的偏置电压,对 LCD 背光进行点亮、熄灭控制,即使在环境光亮程度较低的情况下,可以清晰的观察
34、 LCD 液晶屏上显示的界面和数据。液晶显示模块硬件接口电路图如图 3-7 所示。图 3-7 液晶显示模块硬件接口电路图3.6.2 按键电路设计用户通过键盘与系统交互,可对系统程序的运行做出某些配置,系统的键盘电路如图 3-8 所示。- 12 -硬件电路设计与实现图 3-8 系统的键盘电路图中按键 S1、S2、S5 和 S6 实现原理为由 P0.6 端口采集按键电压,然后经CC2430 片内 AD 转换器识别电压值来判断按键值,S3 和 S4 直接经由端口 P0.5 和P0.6 产生系统中断来判断按键值。端口 P1.0 和 P1.1 具有 20 mA 的吸收电流能力,因此可用于驱动 LED,以
35、做显示之用。3.7 PCB 电路板制作3.7.1 绘制 PCB 板本文将整个系统设计为三个 PCB 板:主板、控制板和 CC2430 小模块板。主板只包括用户常用的电源模块、人机交互模块;控制板包括控制模块、数据采集模块和 电源模块;CC2430 小模块主要包括微处理器模块,单独画一块微处理器模块板子主要考虑 CC2430 可以复用,系统调试过程中如果 CC2430 被烧坏,主板和控制板仍可以继续使用,减少了系统开发的费用。在绘制 PCB 板之前,需要给各个元器件添加自己的封装,有些封装在 Protel 软件中的标准元件库中可以直接找到,但是有些元器件的封装需要自己绘制,如OCM128649、
36、74HC595、LM2596 以及单片机 CC2430 等等都需要自己绘制封装,这就要求查明芯片手册,弄清楚引脚以及元器件各部分尺寸,制作好这些封装后添加到库里就可以直接使用。, 规划电路板在给原理图添加好封装后就可以绘制 PCB 板。电路板采用双层,电路板的大小形状尺寸都要考虑进去,考虑到所选盒子的包装,所以版面尺寸设计的比较大。在规划电路板时还要考虑电路板与外界的接口部分,操作是否方便,是否便于测量等等,如适配器- 13 -总结与展望插头、电源开关以及温湿度传感器都要要放到板的边缘。同时还要注意单片机的时钟电路尽量靠近单片机。, 手动布线自动布线遵循的原则是路线最短,但是如果采用自动布线,
37、PCB 板的美观性就显得很差,而且对于高频电路,自动布线容易造成高频对信号线的干扰,还有就是如果顶层和底层信号线平行的话,容易产生电容耦合,从而造成信号干扰。所以此次设计采用手动布线,对于简单的电路部分可以部分自动布线。, 覆铜和补泪滴在完成所有布线并检查无误后就可以进行覆铜,增强板子的抗干扰能力,考虑到大多数厂子制版条件,本设计采用网格法覆铜。补泪滴可以保护焊盘,避免多次焊接时焊盘的脱落,还可以减少阻抗的急剧跳变。覆铜后,板如下图所示:.图 3-9 微处理器模块 TOP 层- 14 -硬件电路设计与实现图 3-10 主板 TOP 层zzzzzzzzzzzzzzzz.图 3-11 控制板 TO
38、P 层- 15 -总结与展望3.8 系统实物制作当 PCB 板画完之后,将印制板文件送到制板厂家进行电路板的制作,在实验室完成元器件的插装、焊接并装入包装盒后。考虑到温室环境具有湿度大、酸性大、基础设施少、作物众多且动态变化等特点,系统包装盒在设计上需要考虑密封,防止温室中的水蒸气进入设备,使系统的电子器件短路。另外在考虑到美观等因素, 系统采用航空接头作为接插件。3.9 本章小结本章重点介绍了各个功能模块的硬件电路设计,借助 Protel DXP 2004 电路设计软件完成原理图以及 PCB 版的制作,为以后的软件设计打下基础。- 16 -系统软件设计zzzzzzzzzzzzzzzz4 系统
39、软件设计4.1 应用软件介绍IAR Embedded Workbench(简称 EW)的 C/C+交叉编译器和调试器是今天世界最完整的和最容易使用专业嵌入式应用开发工具。EW 对不同的微处理器提供一样直观用户界面。EW 今天已经支持 35 种以上的 8 位、16 位、32 位 ARM 的微处理器结构。IAR 界面如图 4-1 所示图 4-1 IAR 主界面操作步骤:, 使用 IAR 开发环境首先应建立一个新的工作区。用户打开 IAR Embedded Workbench 时,已经建好了一个工作区,可选择打开最近使用的工作区或向当前工作区添加新的工程。, 单击 Project 菜单,选择 Cre
40、ate New Project,弹出建立新工程对话框,确认 Tool chain 已经选择 8051,在 Project templates 选择 Empty project 单击下方 OK 按钮。, 根据需要选择工程保存的位置,更改工程名,如 ledtest 单击 Save 来保 存。这样便建立了一个空的工程。系统产生两个创建配置:调试和发布。在这里我们只使用 Debug 即调试。项目名称后的星号(*)指示修改还没有保存。选择菜单FileSaveWorkspace,保存工作区文件,并指明存放路径,这里把它放到新建的工程目录下。, 选择 ProjectMake 或按 F7 键编译和连接工程,如
41、图 4-2 所示。- 17 -总结与展望图 4-2 IAR 编译连接界面成功编译工程,并且没有错误信息提示后,按照下图连接硬件系统。图 4-3 IAR 连接图选择 IAR 集成开发环境中菜单 ProjectDebug 或按快捷键 CTRL+D 进入调试状态,也可按工具栏上按钮进入程序下载,程序下载完成后,IAR 将自动跳转至仿真状态。, 安装完成仿真器驱动后,通过 USB 接口把 ZigBee 开发系统与计算机连接后,进入 IAR 编译环境进行仿真调试。选择菜单 ProjectDebug 或按快捷键CTRL+D 进入调试状态,也可按工具栏上按钮进入调试。4.2 系统需求分析温室环境具有湿度大、
42、基础设施少、作物众多且动态变化等特点。温室设施农业中的灌溉如果能够自动控制,则可以减少不必要的劳动,因此信息化的应用在农业方面是比较重要的。比如管理一个连栋温室,面积很大,在灌溉中需要人跑好远去打开开关,然后才能灌溉,等灌溉完毕还需要再去关闭开关。当然也可以通过在每个灌水开关(电气开关)布线,将所有线路连接到一个配电室。其基本思路如下图4-4 所示,当然这可以实现,有专门的人员去管理每个灌溉线路,确保指定时间后按时关闭电线开关。这个- 18 -系统软件设计时候,管理员必须要非常的尽职尽责。可是,人都会有犯错误、疏忽的时候, 如果一次的失误如忘记拉开关,可能会导致温室灌水太多,从而造成经济上的损
43、 失。图 4-4 非自动控制条件下的作物灌溉系统示意图农业技术的进一步发展使得对各种作物的种植都具有了一定的科学数据,如果能把各种信息采集设备所获取的数据应用到作为栽培之中,那么势必会大大的提高生产力。本文主要探讨作物需水自动化控制系统在作物灌溉中的应用。主要解决以下一些问题:(1)科学的灌溉模型;(2)通过对作物根域的土壤湿度信号进行实时监 测,直接反映作物根系的需水量;(3)针对不同作物及其不同发育期,通过人机交互系统输入相关参数,使得土壤湿度达到预期的标准,达到节水和精确灌溉的目的, 并能灵活适用于多种场合;(4)实时监测灌溉阀门的状态,并且做到自动控制和手动控制皆可使用。这些问题的解决
44、,对于作物灌溉系统的智能化以及自动化具有重要的现实意义。 4.3 系统程序设计4.3.1 系统主程序设计软件启动后首先进行初始化设置,如单片机串口初始化等。串口的初始化包括 : 确定编程寄存器的工作方式、确定串行口控制及需要进行的中断设置等。接收数据 进入寄存器,并由软件读入数据,检查数据读入的位数,当数据完整时程序返回数 据,由湿度转化函数转化为十进制数,传递给数据分析、决策控制模块,然后判定 是否打开阀门。阀门开启后实时监控土壤湿度值,在土壤湿度值满足阈值后,关闭 阀门。如果未达到阈值则开启阀门重新灌溉,如果达到阈值则存储出水量、阀门打 开时间、参考阈值及系统时间等,然后关闭数据接收。软件
45、流程图如图 4-5 所示。- 19 -总结与展望开始初始化系统N 参数设置Y控制方式、灌溉阈值设置AD 采样处理土壤湿度数据显示YN水泵关闭NN 大于灌溉阈值小于灌溉阈值YY发出灌溉指令开启水泵关闭水泵图 4-5 系统主程序设计图针对不同的控制对象,本系统可根据需要设计不同的控制策略。结合农民已有的经验,根据不同地区土壤条件、气候条件、作物种类及生长阶段、按照灌溉的要求特性及作物的生长状况,制定出合理的、便于实施的灌溉制度,包括不同作物、不同生育期的灌水起始点,灌水上限,预警阈值等方面。合理灌溉技术的关键是控制灌水的均匀度,以适量的水进行适时灌溉,既能满足作物对水的需要,又不至于造成土壤含水量过多和空气湿度过大,引起作物发生各种霉病。- 20 -系统软件设计4.3.2 传感器采集程序设计本系统选用的土壤水分传感器 FDS-100,模拟传感器输出模拟信号,在用CC2430 处理相应的数据之前需先将模拟信号转换为数字信号,然后再交由 CC2430 处理。将模拟信号转换为数字信号的设备是 ADC(模数转换器),CC2430 内部带有一个 8-14 位的 ADC,并且具有 8 路可配置的通道以及一个参考电压发生器。在使用CC2430 内部的 AD 之前需先根据实际需求对其做出相应的配置,以使其工作在合适的状态下。1. ADC 主要特性(1) 参考电压参考电压为 A
限制150内