基于AT89S52的家庭智能浇花器的设计

发布者:和谐共融最新更新时间:2012-11-17 来源: 电子设计工程 作者:关键字:AT89S52  智能浇花器  温度检测  DS1302 手机看文章 扫描二维码
随时随地手机看文章
    随着人们生活水平的提高,花卉逐渐收到人们的青睐,陶冶情操,净化空气。利用单片机设计了一款家庭智能浇花器实现自动浇花,节省人力,方便人们出差的时候,不至于影响花卉的生长,如果在家也可以关断浇花器,手动浇花。浇花器设置为两种方式,一种是定时定量浇花,一种是根据湿度浇花。采用哪种方式是通过按键控制或者红外遥控的,在采用定时定量浇花时,数码管显示时间和流水时间,在选用根据湿度浇花时,数码管显示是目前的湿度。

1 总体设计
    利用AT89S52单片机设计了自动浇花器,针对不同的花卉,此智能浇花器设置为两种方式:一是定时定量浇花,二是利用湿度传感器检测花卉(也可以用于蔬菜等)的湿度,采集的湿度传送到单片机芯片,单片机根据湿度控制是否浇水,如果需要浇水,单片机的一个引脚p2.0置高电平,使继电器线圈通电,敞开触点闭合,打开电磁阀,实现定时定量的自动浇水,设定时间到,电磁阀自动闭合,并且水流时间可调,上面安装了数码管,并有一个按钮根据不同花卉所需水量不同,设置浇花时间长短,在数码管上可以显示浇水时间的长短;如果检测湿度足够,p2.0仍保持为低电平,不打开电磁阀。采用哪种方式是通过按键控制或者红外遥控的,在采用定时定量浇花时,数码管显示时间和流水时间,在选用根据湿度浇花时,数码管显示是目前的湿度。
    该技术所采用的技术方案是:利用单片机实现自动控制,首先检测采用何种方式浇花,如果定时定量浇花,就在规定的时间开始浇花,按照设置浇花时间的长短进行浇花;如果是根据湿度控制是否浇水就设置单片机1个引脚为低电平,湿度传感器检测湿度,传送给单片机芯片,当检测到湿度不够时,单片机这个引脚就变为高电平,把继电器吸合,常开触点闭合,使得电磁阀线圈得电,此时电磁阀门有闭合变成断开,水流经过,给花卉浇水。其结构如图1所示。

a.JPG

[page]

2 硬件设计
    硬件电路由单片机、湿度传感器、继电器、电磁阀、数码管、1302芯片、按键、红外遥控接收等组成。注意,电磁阀如果安放离单片机太近,将会造成无法正常工作,解决方法是:1)电磁阀远离单片机;2)加入电阻电容。这里采用的是加入电阻电容的方法,这样方便把元器件集中,所做控制器也比较小。智能浇花器的原理图如图2所示。

b.JPG


2.1 定时定量浇花方式
    定时定量浇花是每天规定的时间开始浇花,设置浇花时长,比如1分钟,1分钟后停止浇花。具体硬件:安装了2个三位共阳数码管和1个两位共阳数码管,用以显示时间和浇花时间的长短。按键控制时间调整和时间设置调整,并有一个按钮根据不同花卉所需水量的不同,设置浇花时间长短,在数码管上显示出来,1302芯片实现时间保持,断电时不影响时间。
    这里可假设每天早上7点20分自动给花卉浇水,浇花时间为1分钟,到了早上的7点20分,单片机控制智能浇花器开始浇花,单片机p2.0引脚接继电器,继电器接电磁阀,电磁阀控制水流,到了7点20分,给单片机一个指令,setb 02.0,三级管导通,这样继电器线圈有电流经过,对应的常开触点闭合,使得电磁阀线圈得电,此时电磁阀门由闭合变成断开,水流经过,给花卉浇水,1分钟时间到,给单片机一个指令clr p2.0,这样单片机p2.0引脚输出低电平,三极管截止,继电器线圈没有电流经过,常开触点恢复为断开,电磁阀线圈失电,此时电磁阀门闭合,水流停止。这里的时间是显示在数码管上,通过按键控制,时间可调整,同时浇花的时间也可以通过按键设置,另外浇花时间的长短也可以通过按键调整。同时加入1302芯片,为了断电时不影响时间正常,防止每次断电后都要重新调整是时间。图3为定时定量浇花结构图。

c.JPG

[page]

2.2 湿度控制浇花方式
    先通过按键设定湿度,这里选用的湿度传感器是LTM8901湿度传感器,LTM8901是一款专门为用户设计自身产品而提供的数字化温湿度探头,其湿度测量量程为1%~99%RH,分辨率为0.5%RH,测量精度为±3.0%RH(典型值);温度测量范围为-25~+60℃,分辨率为0.062 5℃,测量精度为±0.5℃;响应时间典型值为5 s;工作电压范围为4.5~5.5 V。LTM8901将测量结果直接输出为数字信号,通过“一线式总线”串行传送给单片机,不需要进行模数转换,减少了元件,简单方便。利用LTM8901湿度传感器检测到湿度,传送到单片机进行处理,湿度显示在数码管上,当湿度低于设定值时,给单片机一个指令,seth p2.0,继电器线圈有电流经过,对应的常开触点闭合,使电磁阀线圈得电,此时电磁阀门由闭合变成断开,进行浇花,当等于或高于设定值时,clr p2.0,继电器线圈失电,对应常开触点断开,电磁阀线圈失电,阀门闭合,水无法流过,停止浇花。湿度控制浇花结构如图4所示。

d.JPG


2.3 方式设定
    可以通过手按按键设定,按奇数次设定浇花方式为定时定量浇花,按偶数次,设定浇花方式为根据湿度浇花。也可通过红外遥控设定浇花方式,发射用电视遥控器,接收电路用三位一体接收器接收信号,三位一体接收器的1脚接地,2脚接电源,3脚(信号脚)与单片机一个I/O引脚相连,信号来时进行解码,做出不同处理,一次接收到信号按定时定量浇花,再次接收到信号根据湿度浇花,根据按的次数,奇数次采用定时定量浇花方式,偶数次采用湿度控制浇花方式,这主要是针对不同的花卉。接收到信号,发光二极管闪烁30 s。蜂鸣器响10 s,用以提示。智能浇花器外部构造如图5所示。

g.JPG

[page]

3 程序设计
3.1 程序设计思路
    1)方式设定  通过检测按键按下次数来确定工作方式,设按下次数为n,第一次按下n=1,每次按下n加一,加到一定次数1 000,n从0开始,if(n=10000)(n=0);刚开始连接按键的引脚为高电平,一旦按下就变为低电平,通过检测高电平变为低电平的次数来检测是否按下;按下奇数次,采用定时定量浇花,偶数次采用通过检测湿度浇花,if(n%2=0)来判断,如果余数为O,说明偶数次,否则奇数次。
    2)定时定量浇花  先写出时间显示程序,再判断是否到了设定的浇花时间以及浇花时间长短。
   e.JPG
    程序里,c表示时,b表示分,a表示秒,w表示设置的时间长短。首先时间没到的情况下,p2.0引脚为0(P2_0=0),不浇水,当时间到了设定的时间(if(c==7&b==20&0    3)湿度检测浇水  首先启动转换,读取LTM8901检测到的湿度,进行比较判断,最后执行。
3.2 流程图
    智能浇花器程序流程图如图6所示。

f.JPG


4 结论
    本文介绍了家庭智能浇花器的设计,进行了硬件设计与程序分析,已经做成实物,并且使用效果好。家庭智能浇花器用处较广,改变程序还可作为可定时开关、宿舍灯光系统、温控塑料大棚等使用,此家庭智能浇花器,也可以用在智能浇灌草坪、蔬菜等,把水箱去掉,直接接水龙头即可。系统设计的创新之处在于实现不同方式的自动浇花以及水管的可伸缩有助于改变花盆离水源的距离;在设计过程需要注意的问题是防止电磁阀吸合时使单片机复位,加入电阻和电容加以缓冲,在此系统中选用的电容为耐压400 V的。

关键字:AT89S52  智能浇花器  温度检测  DS1302 引用地址:基于AT89S52的家庭智能浇花器的设计

上一篇:基于AT89S52和ISD1760的水闸语音报警系统设计
下一篇:分享基于89C51的摄像镜头控制电路设计

推荐阅读最新更新时间:2024-03-16 13:13

基于51单片机用DS1302和LCD1602设计可调式电子日历与时钟
具体功能实现: 开机后可以在LCD1602上显示当前的年、月、日、星期、时、分、秒等信息,按下K1键,可以显示实时时钟;按下K2键,选择对年、月、日、时、分、秒的设置;按下K3键,进行加设置;按下K4键,进行减设置; 使用器件: 仿真原理图: 仿真 知识介绍 : DS1302实时时钟芯片 DS1302是由美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟芯片。它可以对年、月、日、周、时、分、秒进行计时,并且具有闰年补偿等多种功能。工作电压为2.0V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的R
[单片机]
液晶显示AT89C52单片机DS1302实时时钟程序
#include'reg52.h' //包含单片机寄存器的头文件 #include'intrins.h' //包含_nop_()的头文件 sbit RS=P2^0; //LCD读写选择位 sbit RW=P2^1; //LCD读写选择位 sbit E=P2^2; //LCD使能端 sbit BF=P0^7; //忙信号 sbit SCLK=P1^0; //1302时钟输出端 sbit DATA=P1^1; //1302数据端 sbit RST=P1^2; //1302复位端 unsigned char code digit = 0123456789 ; void
[单片机]
STM32与DS1302设计时钟芯片,超详细
DS1302 是DALLAS 公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31 字节静态RAM ,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、周、月、年的信息,每月的天数和闰年的天数可自动调整。时钟操作可通过AM/PM 指示决定采用24 或12 小时格式。DS1302 与单片机之间能简单地采用同步串行的方式进行通信,仅需用到三个口线:(1)RES 复位(2)I/O 数据线(3)SCLK串行时钟。时钟/RAM 的读/写数据以一个字节或多达31 个字节的字符组方式通信。DS1302 工作时功耗很低保持数据和时钟信息时功率小于1mW DS1302 是由DS1202 改进而来增加了以下的特性:双电源
[单片机]
STM32与<font color='red'>DS1302</font>设计时钟芯片,超详细
固态继电器在PIC单片机控制的多回路温度检测系统的应用
1.引言 对于塑料制瓶工艺, 塑料加热处于溶融状态, 经高压注射成为管胚, 短时间冷却以后, 经过高压空气的吹胀, 在制瓶模具中成型。其工艺特点之一是: 溶融状态下的塑料定时流动; 成为管胚之后, 将与外部空气接触 2 秒钟时间左右, 产品质量不可避免地受到环境温度的影响。 制瓶工艺要求在不同的制瓶过程中, 恒定在不同的温度下, 其温度控制是制瓶的关键技术之一。目前这种设备的温度控制装置通常采用单回路的通用温度控制仪表, 温度控制无法与工艺过程直接产生联系, 使得温度控制达不到最优状态, 而且受到环境温度的影响, 必须随环境温度的变化调整温度控制参数, 否则产品质量受到影响。另一方面, 单回路的通用温度控制仪表价格也比较高, 且
[单片机]
固态继电器在PIC单片机控制的多回路<font color='red'>温度检测</font>系统的应用
一线总线在智能建筑温度检测中的应用
1 引言 智能建筑是建筑技术与通信、计算机、控制等技术相结合的产物,楼宇自动化系统(BAS)是智能建筑的重要组成部分,它综合传感、计算机、控制和信息等技术,对建筑物的空调、电力、电梯、给排水、防火、防盗和视频监控等设备实行综合自动管理,具有安全保护、实时监控等功能。温度测试系统是楼宁自动化中设备监控系统的主要子系统,主要用于测试智能建筑中不同区域的温度,为智能建筑的空调系统和给排水系统的控制和调节提供数据。 2 一线总线器件及系统硬件设计 智能建筑温度测试系统要求的测温范围为-40℃~120℃,误差为±1.5℃。其中智能建筑内外部环境的测温范围为-40℃~45℃;通风道测温范围为-30℃~120℃;水管内水温测温范围为O
[测试测量]
一线总线在<font color='red'>智能</font>建筑<font color='red'>温度检测</font>中的应用
AT89S52键盘程序
//返回键值 /********************************************************************/ //键盘扫描子程序 获取键值函数 /****************************************************************************/ uchar keyscan(void) { uchar temp; P0=0xfe; //第一行置低 temp=P0; temp&=0xf0; if(temp!=0xf0) { delay_nms(10); if(temp!=0xf0) {
[单片机]
基于AT89S52的单片机的LED点阵显示屏的设计
第一章 概述 LED点阵显示屏是通过PC机将要显示的汉字字模提取出来,并发送给单片机,然后显示在点阵屏上,主要适用于室内外汉字显示。 第二章 硬件设计 2.1 主要器件介绍 LED 点阵显示屏是由20 个8*8 的LED 点阵块组成,形成16*80 矩形点阵,以Atmel 公司的AT89S52单片机为控制核心。显示屏的其他主要硬件有:①带锁存输出的8位移位寄存器74HC595,作为LED的列线驱动输入;②三八译码器74LS138,作为LED行线的译码选择;③三极管C9012,连接两个三八译码器的十六个输出端,作为开关使用,驱动LED 的行线 2.2 主要器件详细连接说明 Atmel的AT89S52芯片相关器件连接的接脚如下:
[单片机]
基于<font color='red'>AT89S52</font>的单片机的LED点阵显示屏的设计
Atmega16与DS1302数码管显示程序
/*本程序为八位共阴极数码管且有两个573控制的动态扫描,本程序只用数码管显示到秒钟, 其他的要显示请自己编写,能用1602显示更好*/ #include iom16v.h #include macros.h //这里面有BIT(),所以要包含 #define uchar unsigned char #define uint unsigned int //#pragma data:code //注code的功能是把后面的数据存在程序存贮器中,不用code就放到了随机存贮器中. const table ={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x3
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved