自动浇花控制系统的设计简版.docx
《自动浇花控制系统的设计简版.docx》由会员分享,可在线阅读,更多相关《自动浇花控制系统的设计简版.docx(14页珍藏版)》请在冰豆网上搜索。
自动浇花控制系统的设计简版
学位论文独创性声明
本人郑重声明:
1、坚持以“求实、创新”的科学精神从事研究工作。
2、本论文是我个人在导师指导下进行的研究工作和取得的研究成果。
3、本论文中除引文外,所有实验、数据和有关材料均是真实的。
4、本论文中除引文和致谢的内容外,不包含其他人或其它机构已经发表或撰写过的研究成果。
5、其他同志对本研究所做的贡献均已在论文中作了声明并表示了谢意。
作者签名:
日期:
2014-05
摘 要
本设计是基于MSP430G2553单片机设计的小型自动浇花控制系统。
它的工作原理是通过土壤湿度传感器检测到土壤的相对湿度,传输到单片机进行信息处理,将所测湿度值与设定湿度值对比,当大于设定湿度时,单片机输出控制信号,控制继电器开关吸合,继而启动水泵,实现自动浇花,当低于设定的湿度值,则停止浇花。
本系统浇灌方式智能,合理,能够在无人照看的情况下科学的对植物进行浇灌,避免植物因无人照料而枯死。
关键字:
MSP430G2553单片机;土壤湿度传感器;自动浇花
Abstract
Thisdesignisasmallautomatic wateringcontrolsystem,which isbasedonMSP430G2553 microcintroller. The operatingprincipleofthissystemisto detect the relative humidityofthr soilbysoilmoisturesensor,andthen senttothemicrocontrollerfor information processing,then comparingmoisturemeasurement valuewiththegivenhumidity,themicrocontrolleroutputsa controlsignalforcontrollingtherelay switch,whenmeasurementvalueisgreaterthan the set value,then startthepump towatertheflowerautomatically.Whenthe humidityisbelowthesetvalue,thenstopwatering.Thewayofthiswateringsystemisintelligentand reasonable.Itcanwatering plants scientifically in caseofpossibleunattended to avoid plantsdue tounattendeddead.
Keywords:
MSP430G2553 microcontroller; soilmoisture sensor;Automaticwatering
绪 论1
1系统设计1
1.1系统分析ﻩ1
1.2系统框图ﻩ1
2硬件电路设计2
2.1系统硬件原理图设计ﻩ2
2.2主要模块3
2.2.1MSP430G2553单片机ﻩ3
2.2.2MSP430G2553的时钟设置和模数(A/D)转换模块3
2.2.2电源模块电路设计ﻩ4
2.2.3土壤湿度检测电路设计ﻩ5
2.2.4 液晶显示电路设计5
2.2.5水泵控制电路设计6
3软件设计7
3.1软件设计思路7
3.2.2LCD1602显示程序ﻩ9
3.2.3AD采样程序ﻩ13
3.2.4继电器控制程序15
3.2.5 延时程序ﻩ15
4设计总结ﻩ16
参考 文 献ﻩ17
致谢18
绪 论
目前,国内外均有自动浇花系统的应用,而大多数自动浇花系统是利用虹吸原理,即利用渗透的方式浇花,这种方式浇花过程是连续的、不间断的,采用这种方式只能保证花不会干旱而死,不是花需要浇水时才进行浇灌。
还有一些自动浇水系统,可以设定何时进行浇灌及浇灌时间,与上一种方式相同,不是花需要浇水时才进行浇灌。
另外还有一些自动浇水系统,是采用单片机控制,利用湿度传感器采集湿度信息,需要浇水时自动浇灌,但是需要用在外部有水龙头的情况下,而家庭花草种植一般都放在阳台上,阳台上一般均没有水龙头,使用起来非常不方便。
而基于单片机的智能浇花系统则可以在阳台上使用,能够按需自动浇花。
1系统设计
1.1系统分析
本系统设计以MSP430单片机为中心,由电源、继电器、土壤传感器、液晶显示五个模块组成。
用FC_28土壤湿度传感器检测盆景土壤湿度,将“湿度值”传送到单片机中,由液晶屏显示;另外,单片机根据湿度值控制系统判断“湿度过高”或“湿度过低”,当土壤湿度值大于阈值,“湿度过低”,需要浇水,则单片机控制输出信号,使继电器线圈通电,常开触点闭合,驱动水泵,实现土壤湿度自动控制浇水。
当设定浇水时间到,检测到的土壤湿度未低于阈值值,则继续浇水;当达到阈值时,由单片机发出信号,使继电器线圈断电,对应常开触点断开,水泵不工作,停止浇水。
在自动控制浇花系统工作时,由1602液晶屏上显示已设定土壤湿度阈值和当前土壤湿度值。
1.2系统框图
本系统以MSP430G2553单片机为中心,由电源、继电器、土壤传感器、液晶显示五个模块组成。
自动浇花控制系统结构框图如图1-2所示,
图1-2自动控制浇花系统结构图
2硬件电路设计
2.1 系统硬件原理图设计
本系统硬件电路由单片机、土壤湿度传感器、继电器、液晶屏、二极管、三极管、水泵、电源等组成。
自动控制浇花系统原理图如图2-1所示:
图2-1自动控制浇花系统原理图
2.2主要模块
本系统采用的是MSP430G2553单片机;土壤湿度采集用的是FC-28土壤湿度传感器,能够较准确的测出半径为3cm圆内土壤湿度值;显示部分是LCD1602显示器,能够显示多种数据和符号;控制部分采用继电器电路,控制水泵的浇水工作。
2.2.1MSP430G2553单片机
本设计采用MSP430G2553单片机作为核心部件。
MSP430G2553的特点:
*低电压(1.8V-3.6V)
*超低功耗
--运行模式:
230uA(1MHz频率,2.2V电压)
--待机模式:
0.5uA
--关闭模式(RAM保持):
0.1uA
*0.5k-16kB系统内可编程(ISP)Flash
*使用中断请求将CPU从低功耗模式下唤醒时间:
6us
*快速的指令执行时间。
MSP430G2553为16位精简指令集(RISC)架构,指令周期为62.5ns。
* 具有灵活的时钟设计。
具有四种校准频率并高达16MHz的内部频率。
内部超低功耗低频(LF) 振荡器。
32kHz晶振。
外部数字时钟源。
*两个16位Timer_A,分别具有三个捕获/比较寄存器
*多达24个支持触摸感测的I/O引脚
*通用串行通信接口(USCI)。
UART,IrDA编码器和解码器,同步SPI,I2C。
*用于模拟信号比较功能或者斜率模数转换的片载比较器。
*片内有10位200-ksps模数(A/D)转换器,带有内部基准。
其A/D转换器具有采样保持和自动扫描的特点。
*串行板上编程,无需外部编程电压,利用安全熔丝实现可编程代码保护。
*具有两线制接口的片上仿真逻辑电路。
方便的调试功能。
2.2.2MSP430G2553的时钟设置和模数(A/D)转换模块
1.时钟设置
MSP430G2553单片机中有四种校准频率并高达16MHz的内部频率,分别是内部超低功耗低频(LF) 振荡器,32kHz晶振,外部数字时钟源。
本系统选择数字控制振荡器(DCO),设置DOC为8MHz,即BCSCTL1=CALBC1_8MHZ; DCOCTL= CALDCO_8MHZ;
2.模数(A/D)转换模块
MSP430G5553中AD有10位转换精度。
其特点包括有多种时钟源可供选择,内带时钟发生器。
它配有6个外部通道和2个内部通道,内置参考电源,并且参考电压Vref有8种组合。
采样速度快,最快200Ks/s,具有中断能力。
它有四种工作模式:
单通道单次转换模式、单通道多次转换模式、序列通道单次转换模式、序列通道多次转换模式。
A/D转换工作原理
ADC10采样和转换所需要的各种时钟信号有ADC10CLK转换时钟、SAMPCON采样及转换信号、SHT控制的采样周期、SHS控制的采样触发来源选择、ADC12SSEL选择的内核时钟源及ADC12DIV选择的分频系数等。
只有在这些时序控制电路的指挥下,ADC10各部件才能协调工作!
ADC10是一个10位的模数转换器,具有采样和保持功能的的10位转换器内核,在这个内核中有两个可编程的参考电压(VR+和VR-)定义转换的最大值和最小值。
当输入模拟电压等于或高于VR+时,ADC10输出满量程值03FFH,当输入电压等于或小于VR-时,ADC10输出0 。
输入模拟电压的最终结果满足公式①:
①
ﻩ在经过合理设置后,ADC10硬件会自动将转换结果存放到相应的ADC10MEM存储寄存器中。
2.2.2电源模块电路设计
在本设计系统中,土壤湿度传感器、单片机、继电器、液晶屏都需要电源供电。
因而选用电源电压必须稳定而且减少消耗。
因此,本系统采用的是独立供电的方式。
系统中使用LM2596电源管理芯片提供稳定直流电源。
LM2596的稳压电路图如图2-2-2所示。
其中土壤湿度传感器、单片机的工作电压为+3.3V,继电器、液晶屏的工作电压为+5V,水泵的工作电压为+6V。
图2-2-2LM2596稳压电路图
2.2.3土壤湿度检测电路设计
本系统选用的土壤湿度传感器为FC-28土壤湿度传感器,其工作原理是:
将FC-28探头插入土壤中充当电阻,与电路中的电阻分压,将采集到的湿度模拟量通过“一线式总线”串行传输到单片机中,由AD转换模块将所测外部模拟特性参数量化成数字特性参数,经过一定算法处理,将所得土壤
湿度值显示在1602液晶屏上。
其土壤湿度检测电路如图2-2-3所示。
图2-2-3土壤湿度检测电路
2.2.4 液晶显示电路设计
本设计采用LCD1602液晶显示模块,该液晶显示器画质高且不会闪烁。
1602液晶显示器都是数字式的,能够显示多种数据和符号;它和单片机系统的接口更加简单可靠,操作方便[1]。
开机显示设置:
“HelloWorld!
”,之后显示土壤湿度阈值和当前土壤湿度值。
LCD1602显示电路如图2-2-4所示。
图2-2-4
(1)为开机界面,图2-2-4(2)为工作界面。
图2-2-4LCD1602液晶显示电路
图2-2-4
(1)开机界面 图2-2-4(2)系统工作界面
2.2.5水泵控制电路设计
水泵控制电路如图2-2-5所示,三极管Q1的基极B连接到单片机的P1.2引脚,三极管的发射极E接到继电器线圈的一端,线圈的另一端接到电源+5V上;继电器线圈两端并联一个二极管IN4148,用于吸收释放继电器线圈断电时产生的反向电动势,防止反向电势击穿三极管及干扰其他电路; R1与红色发光二极管组成继电器状态指示电路,便于直观的看到继电器的工作状态,即当继电器常开触点吸合时,LED点亮[2]。
图2-2-5水泵控制电路
当MSP430G2553单片机的P1.2引脚输出高电平时,三极管饱和导通,+5V电压加到继电器线圈两端,继电器常开触点闭合,也就相当于水泵开关闭合,水泵开始工作。
反之,当P1.2引脚输出低电平时,三极管截止,继电器线圈两端没有电势差,继电器常开触点断开,即水泵开关断开,水泵停止工作。
本系统水泵采用6V供电小水泵,浇花装置采用小水管,在盆栽周围挖出一道围绕植物的小水沟,将小水管放置水沟中,实现均匀浇灌,以防止局部土壤湿度过高,测量不准确。
3软件设计
3.1 软件设计思路
本系统软件设计是基于IAR软件平台,以MSP430G2553单片机软件编程为主,整个软件部分主要由系统初始化模块、时钟模块、A/D数据采集模块、控制信号输出模块以及1602液晶屏显示模块五部分组成。
其中编程文件模板如图3-1所示。
图3-1 编程文件模板
当系统上电后单片机内各模块及外围模块进行初始化设置,在程序运行下,土壤湿度传感器开始工作,检测该区域土壤湿度,所测模拟量传输到单片机进行AD处理,判断土壤湿度值是否在所设阈值范围内,如果超出阈值范围,则单片机发出信号,继电器常开触点闭合,启动水泵浇花,否则继电器断电,水泵不工作,停止浇花。
3.2主要模块流程图
ﻩ
3.2.1初始化程序
初始化程序主要是对系统时钟和各寄存器的初始化设置工作,包括I\O口初始化,AD转换及单片机工作模式系统中断模式设置及LCD初始化内容显示等等。
其初始化程序具体代码如下:
3.2.2LCD1602显示程序
将系统时钟设置为8MHz,设置P1.4、P1.5、P1.6和P1.7为输出端口,然后调用系统初始化和显示程序。
LCD1602程序则参照相应数据手册,根据时序要求,写相应指令。
具体的LCD子程序如下:
调试时,应将液晶屏显示程序独立出来调试,关闭其他功能程序,先定义一个一维数组,系统时钟和LCD初始化后,调用LCD程序将数组显示在指定位置。
其中应注意显示位置与数组长度的问题,当数组不占满显示区域时,空余部分有可能出现乱码。
在此系统中,LCD主要功能就是显示设定的土壤湿度阈值以及实时监测到的土壤湿度值。
3.2.3AD采样程序
土壤湿度传感器采集的是土壤湿度模拟信号量,需经A/D转换成数字量,才能由MCU处理。
采样是单片机进入低功耗休眠状态,并在AD中断中唤醒中央处理器。
本系统AD转换程序如下:
//AD初始化程序:
void ADC_init(void)
{
ADC10CTL0&=~ENC;
ADC10CTL0=ADC10ON+REF2_5V+ADC10SHT_0+ADC10IE;//内部参考电压2.5V
ADC10CTL1 =ADC10SSEL1+INCH_0+SREF_0;//ADC10内部时钟源,P1.0采样通道
ADC10CTL0|= ENC;
}
//启动AD函数:
voidADC_Start(void)
{
ADC10CTL0|=ENC;
ADC10CTL0|=ADC10SC;}
控制程序
继电器仅需单片机中P1.2引脚控制,P1.2为高电平时,三极管导通,继电器线圈两端形成电势差,继电器常开触点闭合;当P1.2引脚输出低电平时,三极管截止,继电器线圈两端没有电势差,继电器常开触点断开。
3.2.5 延时程序
主程序中延时是为了等待设备准备就绪,防止数据传输紊乱。
4设计总结
参 考文 献
[1]周正,卜丽,陈明.基于单片机的LCD1602设计(J).信息与电脑,2011年,5期:
4
[2]赵丽,张春林.基于单片机的智能浇花系统设计与实现(J).长春大学学报,2012年,22卷:
5
[3]许春冬,张涛,唐辉.基于无线传感器网络的无线测控系统的研究设计(J).福建电脑,2009
[4]席本强,梁冰.生态护坡技术的智能补灌控制系统研究(J).水资源与水工程学报,2010
[5]曹雪祥,李毓新,秦怡,袁小平.基于Atmega16L单片机的智能小车的设计与制作(J).电子元器件应用,2010
[6]高文庆,吕英英.基于AT89C51单片机的数字秒表设计(J).电脑知识与技术,2012年,22期
[7]张豪.基于单片机的模糊控制在节水灌溉控制系统中的实现(J).江南大学,2007
[8]罗新曼.基于AT89C51单片机的水塔水位控制的设计与实现(J).吕梁学院学报,2013年,02期
[9]陈长生.基于单片机的图书馆灯光自动控制系统(J).科技信息,2010,01期
[10]魏子贺.无线家居环境监测系统设计(J).产业与科技论坛,2011年,14期
[11]刘琼发,熊爱民.单片机自动控制恒压变频供水系统(J).电子技术应用,1997年,07期
--