APP下载

基于单片机的智能浇花控制系统设计

2018-08-10王政

科学与财富 2018年16期
关键词:温度控制单片机

王政

摘 要: 智能浇花系统是一套基于微处理器的智能控制装置。根据不同盆栽植物对土壤环境的不同需求,通过智能检测土壤温度及湿度,实时调整控制盆栽植物的环境参数,满足植物生长的最佳环境,达到无人值守的盆栽花卉植物的智能养殖目的。

关键词: 单片机;智能花卉养殖;温度控制;湿度控制

1 前言

随着现代社会时代的发展,人们对绿色植物的喜爱和种植越来越多,越来越多的人选择在家里或者办公室里种植一些花卉植物。但是在生活中人们总是会有无暇顾及的时候,这时候种植的盆栽就会因各种原因而枯萎。因此,我想通过设计一种集盆花土壤湿度检测,自动浇水以及蓄水箱自动供水于一体的盆花自动浇水系统。让盆花在人们无暇照顾时也能得到及时的浇灌。

智能花卉养殖控制系统以不同花卉实际栽培经验的专家数据库为基准,结合不同花卉的栽培要求和气候需求。通过对花卉生长的主要环境参数——温度、湿度、土壤湿度等的综合调控,为花卉生长发育提供最佳的生态环境条件。

微控制器对环境因子的各个传感器输出信号进行采集,并与基准数据作比较和分析。然后,结合闭环反馈控制原理控制外围环境参数调节设备来调整外界环境参数,最终使得外界环境处于设定的范围内。本系统结合专家数据库系统,通过修改专家库系统中的相应数据,保证本系统可以适合不同花卉品种的栽培要求。

系统工作中,经过温度、湿度及传感器把被测对象的温度、湿度转换成电压信号后送入单片机中,与给定的所要控制的温度、湿度值进行比较,根据单片机 AT89S52中设置的参数,输出相应温度、湿度值对应的被控对象电机和电磁阀的值,带动动力系统作相应的运动,不断减少与单片机中设置值的差值,温度过高时,单片机控制直流电机驱动电风扇,进行自然散热。当土壤湿度过低时,单片机通过控制电磁阀使其打开进行浇水,浇水后湿度适中时关闭电磁阀。

为了对不同植物的生长条件进行设定所以本系统采用了按键的方式来对参数值进行设定,共4个按键,两个数值加按键,两个数值减按键。分别对应的是温度数值的设定和土壤湿度值的设定。

2 控制系统硬件设计

2.1温度检测模块

温度检测采用通用的DS18B20温度传感器,可通过简单的编程实现9~12位的数字量读数方式。可以分别在93.75ms和750m内完成9位和12的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向DS18B20供电,而无需额外电源。因而使用DS18B20可使系统结构更趋简单,可靠性更高。

2.2湿度检测模块

土壤湿度是采用市面上运用广泛的Arduino土壤湿度传感器。当湿度传感器悬空没有插入土壤时,通过LCD显示器,显示0ff状态,当传感器正常工作时,对土壤湿度检测,将湿度值传入单片机,如果湿度值小于设定值,那么启动水泵对植物进行浇水,当湿度值等于设定值的时候停止浇水。

2.3显示模块

显示模块主要采用LCD显示。LCD显示需要设定的温度、湿度和土壤湿度传感器的工作状态,让使用人员更加直观的看到植物的生长条件。

3 系统软件设计

3.1 主程序设计

当单片机上电后,系统首先对LCD显示模块,温度传感器和湿度传感器进行初始化设置。然后对用来设置标准值的按键进行扫描检测,如果检测到有按键按下,那么就将按键相应对应的标准值进行加减操作。操作完成后执行下一步对植物温度及土壤湿度的检测。当检测到空气中的温度大于了设定值值上限或者小于设定值下限,那么就执行相应的操作。如果植物的土壤湿度小于了设定值下限或者大于了设定值上限那么就执行相应的控制操作,然后再返回对键盘进行扫描。系统主程序流程如图1所示。

3.2温度检测程序设计

植物生长环境温度经过温度传感器后,将采集到的数据传送给单片机,单片机读取了温度数据后与事先设定的温度值的上下限进行比较,如果是温度值大于了设定的上限值时,打开风扇对植物进行降温操作;如果是温度值小于设定的下限值时,起动围绕在花盆周围的加热电阻丝进行加热,从而提高植物生长的环境温度。部分程序代码如下:

uint16 R_Temp()

{ uint16 tem;

uint8 tl,th;

Start_18B20();

W_18B20(0xCC); //跳过读序号列号的操作

W_18B20(0x44); //启动温度转换

delay(20);

Start_18B20();

W_18B20(0xCC);

W_18B20(0xBE); //读取温度寄存器

tl=R_18B20(); //读取低位

th=R_18B20(); //读取高位

tem=th <<8;

tem= tem+tl;

return(tem);

3.3湿度检测程序设计

植物生长环境湿度经过湿度传感器后,将采集到的数据传送给单片机,单片机读取了温度数据后与事先设定的湿度范围进行比较,如果是土壤湿度值大于了设定的上限值时,打开风扇对植物进行降温操作;如果是湿度值小于设定的下限值时,启用喷淋系统增加土壤湿度,从而改善植物的生长环境。

部分程序代码如下:

DAT1 = (dat*5.0)/1024 ;

dat2 = DAT1*10;

if(dat2>48) //没擦下土显示错误

{ LcdShowStr(3,1,buf);

shuibeng = 0; }

else

{ dat2 = (dat2-6)*3;

dat2 = 120 - dat2; //电压 越小湿度高

if(dat2<=shidu) //湿度控制

shuibeng = 1; }

else

{ shuibeng = 0;

AD_3_buf[0] = dat2/100%10+'0';

AD_3_buf[1] = dat2/10%10+'0';

AD_3_buf[2] = dat2%10+'0';

LcdAreaClear(3,1,6);

LcdShowStr(3,1,AD_3_buf);

}

}

4 结论

本系统在浇水前都会对植物的土壤湿度进行检测,只有到达了植物不适的生长土壤湿度才会对植物进行浇水。为了使该系统满足于不同的植物不同的植物。该系统采用了四个外部按键可以对不同植物的不同生长条件进行修改。该系统为了能够清晰的看到用户的设定值,以防止设定不准确而导致植物枯萎。显示装置主要用来显示设定值和当前的传感器的测量值。

参考文献

[1]张海龙. 基于DS18B20的单片机测温系统[J].电子制作,2016(21).

[2]冯媛硕. 基于单片機的温湿度检测控制系统设计[J]. 山东理工大学学报(自然科学版),2014(1).

[3]刘川. 智能自动浇花系统的控制设计研究 [J]. 科技视界,2015(18).

[4] 杨杜鹃.基于单片机的自动浇花系统设计[J].科技致富向导. 2014(12).

猜你喜欢

温度控制单片机
船舶主机温度控制方法优化
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
基于模糊PID参数自整定的细胞培养箱温度控制算法
锻造温度控制
基于单片机的平衡控制系统设计
基于模糊控制的PLC在温度控制中的应用
Microchip推出两个全新PIC单片机系列