基于MSP430单片机的自动灌溉演示装置

2012-02-01 03:34孙敬姝李志有付成伟
物理实验 2012年1期
关键词:湿度灌溉单片机

孙敬姝,李 蕊,李志有,梁 浩,付成伟

(吉林大学物理学院,吉林长春130012)

1 引 言

单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,结合不同类型的传感器,通过不同设计程序可以实现对各种物理量的测量及智能化控制.理科学生对单片机的智能化系统了解的甚少,为了培养学生创新能力和综合素质,针对节水灌溉的现状,本文设计并实现了基于MSP430F149单片机控制的自动微灌演示系统.该系统利用MSP430单片机及其外围电路完成对TSL230单总线数字光强传感器和SHT-10温湿度传感器的控制和数据转换,实现实时对环境相对湿度、温度、光强采集与处理,并根据植物需要进行自动灌溉.

2 系统结构

系统总体结构框图如图1所示,其流程是:通过温、湿度传感器、光强传感器采集环境数据,将数据进行校正,利用LED显示当前环境的光强、湿度和温度,当测得的值达到预先设定的值时,由单片机控制开启灌溉开关演示系统进行自动灌溉演示.

图1 系统总体结构框图

3 系统软硬件设计

3.1 单片机主机

选用TI公司的16位MSP430F149单片机作为自动控制电路的核心.该单片机硬件集成度高,为单片机与传感器、固态继电器、显示屏连接提供了充足的I/O端口,方便数据采集与信号传输.MSP430提供多种晶振方案,可为不同模块选择不同时钟源.超低功耗是MSP430突出特性,具有可实现长时间检测而不会消耗大量的电量的功能.

3.2 温度湿度测量

如图2所示,采用SENSIRION公司生产的SHT10温湿度传感器芯片,提供全标定的两线数字输出,即采用IIC传输模式与单片机进行数据传输,具有响应时间短、低功耗可完全浸没等特点.湿度测量范围为0~100%RH,测量精度为±4.5%,温度测量范围为-40~+123.8℃,测量精度在25℃时为±0.5%.图中A3,A4,A5分别与I/O口相连,A3为数据通信,A4为时钟通信,A5控制传感器开启.默认的测量分辨率分别为14bit(温度)、12bit(湿度).此部分采用I2C通信模式.

由于湿度传感器的非线性,传感器传输的数据与实际数据存在一定误差,为了获取准确数据,用修正公式计算得温度湿度.T=d1+d2T,Vdd=3V时d1=-39.60,14bit时d2=0.01.RH=c1+c2RH+c3RH2,12bit时c1=-4,c2=0.040 5,c3=-2.8×10-6.由于实际温度与测量参考温度25℃的显著不同,应考虑湿度传感器的温度修正系数:RHture=(T-25)×(t1+t2×RH)+RHlinear,12bit时,t1=0.01,t2=0.000 08.RHtrue为计算得到的相对湿度,T为温度.

图2 传感器电路

3.3 光强测量

如图2所示,使用的光强传感器TSL230在单片电路中集成了1个可配置的硅光电二极管和1个电流/频率转换器,可直接输出正比于入射光强度的频率信号,该器件能直接单片机接口.TSL230还具备灵敏度和满度输出频率可编程调整的特点.传感器的灵敏度有3种级别:1×、10×和100×,靠2个逻辑输入端S0和S1来控制,传感器有4个可选的分频系数,具体的分频系数靠2个逻辑输入端S2和S3来控制,根据系统需要设计的连接,S0和L S1:H灵敏度选1×;S3:H和S2:L输出频率分频系数10×.

设计程序用于测量脉冲信号周期:如图2所示通过TA1管脚输入,即接单片机的P1.2/TA1端口,使用第二功能,工作方式是捕获信号下降沿来触发定时器中断.捕获时单片机会通过硬件自动将计数器中的值保存在捕获模块的寄存器中,当捕获信号发生下降沿时,就会触发捕获中断,因为传感器输出的为周期信号,读取多次捕获的定时器计数器的平均值f即可算出脉冲信号周期.使用单片机32.768kHz的内部晶振,因分频系数为10,用fture=32 768/f×10计算信号频率.在入射光波长为670nm,温度为25℃时,根据已知光强与频率的确切线性关系可标定出光强.

3.4 显示电路

本系统使用的显示屏是由Sitronix电子公司生产的中文图形LCM控制器,最多可驱动256×32个液晶点.ST7920具有低功率电源消耗(2.7~5.5V),可以满足本系统的省电需求,如图3所示.单片机的P2.0~P2.7端口与ST7920的输入相连接,控制数据总线,控制代码.P3.0~P3.2端口与显示屏的命令控制位相连,通过改变E,RW,RS各位的电平高低,实现选择寄存器和对命令读写的操作.

图3 显示电路

显示程序:显示模块的主要功能是通过调用显示程序将每次测量出的光强、温度、湿度等数值通过调用写数据函数显示到屏上相应位置.ST7920的指令集包括基本指令和扩充指令,每条指令的长度都是8位.16×16点阵中文字符的代码为16位,分2次传送.编写写数据函数.通过对ST7920说明书上中文字型码表的查询,可得到各种字符的地址编码,编写相应程序.

3.5 灌溉开关控制电路

灌溉开关控制电路如图4所示,单片机为I/O口P6.6,输出25W,12V.由于电压高于单片机输出电压,且电流过大,电路使用固态继电器JGX-2FA将信号放大,同时保证电流为2A.当测得数据达到适当条件时,P6.6输出高电平,继电器输出12V左右电压,系统开始工作.

图4 灌溉开关控制电路

3.6 程序流程

程序流程图如图5所示,初始化后,调用温度、湿度、光强测量程序,通过调用显示程序,把温度、湿度、光强显示到屏上相应位置.

判断温度是否低于10℃,如果低,不开启灌溉开关,否则再继续判断湿度,湿度大于70%,不开启灌溉开关,否则再次判断温度是否高于阈值35℃,如果低于阈值则开启灌溉开关,否则判断光强是否高于阈值15 000lx,高于阈值关闭灌溉开关,低于阈值开灌溉开关.到此,单片机完成1次数据测量与判断.

如果灌溉开关没有打开,则返回初始化,进行新一轮的数据测量,直到开启灌溉开关.灌溉开始后,进入低功耗状态,定时为3s.3s后触发中断,返回初始化,进行新一轮测量判断.

图5 程序流程图

4 结束语

实验证明,基于MSP430单片机的自动灌溉演示装置具有结构简单,操作方便,成本低廉,能实时进行自动监控等特点,用于演示教学,有利于提高学生的综合素质.

[1] 张鑫,华臻.单片机原理及应用[M].北京:电子工业出版社,2005.8:10-100.

[2] 李蕊,孙敬姝,李志有,等.太阳能自动微灌演示系统[J].物理实验,2010,30(4):15-17.

猜你喜欢
湿度灌溉单片机
路基上CRTSⅡ型板式无砟轨道湿度场分析
苍松温室 苍松灌溉
苍松温室 苍松灌溉
苍松温室 苍松灌溉
苍松温室 苍松灌溉
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
跟踪导练(二)(2)