单片机的自动灌溉系统设计与制作
【】随着电子技术的发展,社会的进步,各行各业都实现了不同程度的自动化管理,解放了人类的双手。其中灌溉行业也不例外,本文就设计了一款自动灌溉系统,通过湿度传感器检测环境湿度,当检测到湿度低于设定的阈值时,控制灌溉设备自动启动,直到湿度达到设定的高阈值为止。如果是储水式灌溉,可以对储水水位进行检测,当水位低于或者高于设定的储水水位阈值时,启动报警器。该系统使用的核心控制器件为AT89S52单片机,通过DHT11传感器进行湿度信息的监测,为了增强系统的实用性,采用了液晶屏进行数据的显示。
目录
一、引言 1
二、总体设计 1
三、硬件设计 2
(一)单片机控制模块 2
(二)温湿度检测模块 5
(三)液晶屏数据显示 6
(四)键盘电路 8
(五)报警电路模块 9
(六)灌溉设备控制模块 9
(七)电源模块 10
四、软件设计 10
(一)总体设计思想 10
(二)各部分的子程序介绍 10
五、系统调试 12
总结 14
附录 15
附录一 电路原理图 15
附录二 PCB图 16
附录三 实物图 17
附录四 源程序 18
致谢 35
一、引言
单片机技术的应用越来越广泛,已经走进了各行各业,实现各行各业系统的自动化控制,大大的解放了人类的双手,实现了真正系统的无人值守,改变了传统的完全人工操作的控制方式。本文所设计的基于单片机的自动灌溉系统,实现了园林、花圃等的灌溉自动化。现在大多数的园林、花圃还是完全靠人工查看的方式来查看是否需要进行灌溉,尤其是对于大型的草坪、花圃,这样就需要大量的人员来进行灌溉方面的管理。而本系统则大大的减少了操作工人的使用数量,完全实现系统的自动化灌溉。
系统使用的是现在应用非常广泛的51单片机技术,核心控制器件为AT89S52,使用了湿度传感器进行湿度的实时监测,为了适应不同环境,并满足不同的需求,可以手动设置湿度信息的阈值,阈值信息分为两个,它们分别是最高湿度值和最低湿度值,当湿度传感器检测到当前的
*好棒文|www.hbsrm.com +Q: 3 5 1 9 1 6 0 7 2
湿度值低于设定的最低湿度值时,表明当前的湿度已经达到了湿度下限,这时候启动灌溉设备的控制电源开始进行灌溉,同时设置了一个高湿度阈值,灌溉设备启动后,随着检测到湿度值的不断增加,当湿度值到达设定的高湿度阈值时,切断灌溉设备的控制电源,停止灌溉。对于一些储水式的灌溉方式,同时需要检测储水容器中的水位情况,当检测到水位低于或者高于设置的安全水位时,能够启动报警器进行报警。因为系统的最终使用者为操作人员,所以系统的操作性和可视性是较为重要的,为此设置了LCD液晶屏来进行数据的显示,通过液晶屏可以直观的看到当前环境的湿度值、储水容器的水位值,以及人工设定的湿度报警阈值。
二、总体设计
本系统的核心控制器件为AT89S52型单片机,所以核心模块自然是单片机的最小系统,其次就是传感器部分,灌溉系统需要的最关键的参数就是湿度,系统中使用DTH11传感器实时采集湿度值。然后就是灌溉设备的控制,系统中使用了一只继电器用于对灌溉设备电源的控制,继电器吸和则启动灌溉设备的电源。系统中需要对湿度信息的报警低阈值以及停止灌溉的高阈值进行手动设置,所以设计了键盘电路。系统设置了低水位以及低湿度报警功能,所以配置了报警模块。然后是水位信息的采集模块,最后便是数据的液晶屏显示模块,显示实时湿度值以及设置的湿度阈值,总体设计图如图21所示。
图21 硬件总体框图
三、硬件设计
(一)单片机控制模块
1.AT89S52单片机组成
如图31所示
图31 AT89S52单片机组成结构图
AT89S52单片机是一种高性能,高集成芯片,兼容性很高的单片机。这个单片机有4个数据通讯端口,能够满足一般产品的设计要求。单片机内部的存储空间为8K,对于一般的程序和初学者这个容量是足够的。为了避免程序盗用,对其存储器采取了加密处理,增加了三级加密措施。为了适应低功耗的工作场合,单片机做了低功耗处理,在系统空闲时,降低其功耗。为了避免程序运行过程中出现死机现象,使用了单片机内部看门狗。这些性能使其有非常广泛的应用范围。
2.控制引脚
AT89S52单片机的管脚分布如图32所示。
图32 AT89S52单片机管脚分布
RST(9引脚):复位信号的输入端,用于实现单片机系统的开机复位和手动复位。当给该引脚加载时长大于两个机器周期的高电平时,复位操作有效。
ALE/PROG(30引脚):该引脚有两个功能,当连接外部程序存储器时,用来对低8位的地址进行锁存,同时也可作为外部编程器的时钟信号输入。
PSEN(29引脚):当单片机连接外部程序存储器时,该信号作为外部程序存储器选通信号的控制端口,当单片机执行外部存储器内的程序时,该引脚则在每个机器周期内发出两次激活信号。
EA/VPP(31引脚):用于对外部存储器进行访问控制,当需要访问外部存储器时,该引脚必须接地,当执行单片机内部存储器指令时,该引脚必须接高电平。
XTAL1(19引脚):时钟信号的输入端。
XTAL2(18引脚):时钟信号的输入端。
3.AT89S52单片机的最小系统
图33 单片机最小系统连接图
单片机系统运行必不可少的几部分包括:时钟电路提供程序运行的时序,复位电路保证设备的上电运行和程序运行过程中的复位操作,还有最重要的一点就是单片机的控制部分,本次设计中所使用的单片机型号是AT89S52。在本次设计中,我选择的是外部时钟提供程序运行时序的方式,选择晶体频率为12MHz,同时为了保证时序运行正确,去除杂波干扰,此处在晶体振荡器的每个引脚处分别并联了一只3.0pF的瓷片电容,起到滤波的作用。系统设计中,要求系统能够实现上电自动复位,单片机的RST引脚处如果持续出现大于10us的高电平,单片机就会自动复位,依据单片机的这一特性,我在此处设计了两种复位方式,分别为系统上电自动复位和手动复位,具体的电路如图33所示。在上电初始,电解电容C1处于快速充电状态,此时单片机的RST引脚处呈现高电平,为了保证该高电平的保持时长,经过试验,此处C1选择的是10uF的电解电容,当该电容充电完毕后,单片机RST引脚恢复到低电平,这样就实现了上电自动复位的功能。在程序运行的过程当中,如果出现程序运行错误,或者需要系统复位的情况,也可以通过手动复位的方式使系统运行回复到初始状态,此功能的实现方法是在单片机的RST引脚与VCC间串联一个微动按键,当按下此按键时,单片机的RST引脚处呈现高电平,当按键按下时长大于10us时,实现系统复位。
(二)温湿度检测模块
1. 温湿度传感器介绍
DHT11温湿度传感器是是集温度采集和湿度测量为一体的高集成传感器,该传感器的硬件连接非常简单,能够直接输出单片机可以识别并已经经过校准的数字信号,连接单片机I/O口即可。该传感器的引脚分布和引脚功能表如31所示。它的器件图如34所示。
目录
一、引言 1
二、总体设计 1
三、硬件设计 2
(一)单片机控制模块 2
(二)温湿度检测模块 5
(三)液晶屏数据显示 6
(四)键盘电路 8
(五)报警电路模块 9
(六)灌溉设备控制模块 9
(七)电源模块 10
四、软件设计 10
(一)总体设计思想 10
(二)各部分的子程序介绍 10
五、系统调试 12
总结 14
附录 15
附录一 电路原理图 15
附录二 PCB图 16
附录三 实物图 17
附录四 源程序 18
致谢 35
一、引言
单片机技术的应用越来越广泛,已经走进了各行各业,实现各行各业系统的自动化控制,大大的解放了人类的双手,实现了真正系统的无人值守,改变了传统的完全人工操作的控制方式。本文所设计的基于单片机的自动灌溉系统,实现了园林、花圃等的灌溉自动化。现在大多数的园林、花圃还是完全靠人工查看的方式来查看是否需要进行灌溉,尤其是对于大型的草坪、花圃,这样就需要大量的人员来进行灌溉方面的管理。而本系统则大大的减少了操作工人的使用数量,完全实现系统的自动化灌溉。
系统使用的是现在应用非常广泛的51单片机技术,核心控制器件为AT89S52,使用了湿度传感器进行湿度的实时监测,为了适应不同环境,并满足不同的需求,可以手动设置湿度信息的阈值,阈值信息分为两个,它们分别是最高湿度值和最低湿度值,当湿度传感器检测到当前的
*好棒文|www.hbsrm.com +Q: 3 5 1 9 1 6 0 7 2
湿度值低于设定的最低湿度值时,表明当前的湿度已经达到了湿度下限,这时候启动灌溉设备的控制电源开始进行灌溉,同时设置了一个高湿度阈值,灌溉设备启动后,随着检测到湿度值的不断增加,当湿度值到达设定的高湿度阈值时,切断灌溉设备的控制电源,停止灌溉。对于一些储水式的灌溉方式,同时需要检测储水容器中的水位情况,当检测到水位低于或者高于设置的安全水位时,能够启动报警器进行报警。因为系统的最终使用者为操作人员,所以系统的操作性和可视性是较为重要的,为此设置了LCD液晶屏来进行数据的显示,通过液晶屏可以直观的看到当前环境的湿度值、储水容器的水位值,以及人工设定的湿度报警阈值。
二、总体设计
本系统的核心控制器件为AT89S52型单片机,所以核心模块自然是单片机的最小系统,其次就是传感器部分,灌溉系统需要的最关键的参数就是湿度,系统中使用DTH11传感器实时采集湿度值。然后就是灌溉设备的控制,系统中使用了一只继电器用于对灌溉设备电源的控制,继电器吸和则启动灌溉设备的电源。系统中需要对湿度信息的报警低阈值以及停止灌溉的高阈值进行手动设置,所以设计了键盘电路。系统设置了低水位以及低湿度报警功能,所以配置了报警模块。然后是水位信息的采集模块,最后便是数据的液晶屏显示模块,显示实时湿度值以及设置的湿度阈值,总体设计图如图21所示。
图21 硬件总体框图
三、硬件设计
(一)单片机控制模块
1.AT89S52单片机组成
如图31所示
图31 AT89S52单片机组成结构图
AT89S52单片机是一种高性能,高集成芯片,兼容性很高的单片机。这个单片机有4个数据通讯端口,能够满足一般产品的设计要求。单片机内部的存储空间为8K,对于一般的程序和初学者这个容量是足够的。为了避免程序盗用,对其存储器采取了加密处理,增加了三级加密措施。为了适应低功耗的工作场合,单片机做了低功耗处理,在系统空闲时,降低其功耗。为了避免程序运行过程中出现死机现象,使用了单片机内部看门狗。这些性能使其有非常广泛的应用范围。
2.控制引脚
AT89S52单片机的管脚分布如图32所示。
图32 AT89S52单片机管脚分布
RST(9引脚):复位信号的输入端,用于实现单片机系统的开机复位和手动复位。当给该引脚加载时长大于两个机器周期的高电平时,复位操作有效。
ALE/PROG(30引脚):该引脚有两个功能,当连接外部程序存储器时,用来对低8位的地址进行锁存,同时也可作为外部编程器的时钟信号输入。
PSEN(29引脚):当单片机连接外部程序存储器时,该信号作为外部程序存储器选通信号的控制端口,当单片机执行外部存储器内的程序时,该引脚则在每个机器周期内发出两次激活信号。
EA/VPP(31引脚):用于对外部存储器进行访问控制,当需要访问外部存储器时,该引脚必须接地,当执行单片机内部存储器指令时,该引脚必须接高电平。
XTAL1(19引脚):时钟信号的输入端。
XTAL2(18引脚):时钟信号的输入端。
3.AT89S52单片机的最小系统
图33 单片机最小系统连接图
单片机系统运行必不可少的几部分包括:时钟电路提供程序运行的时序,复位电路保证设备的上电运行和程序运行过程中的复位操作,还有最重要的一点就是单片机的控制部分,本次设计中所使用的单片机型号是AT89S52。在本次设计中,我选择的是外部时钟提供程序运行时序的方式,选择晶体频率为12MHz,同时为了保证时序运行正确,去除杂波干扰,此处在晶体振荡器的每个引脚处分别并联了一只3.0pF的瓷片电容,起到滤波的作用。系统设计中,要求系统能够实现上电自动复位,单片机的RST引脚处如果持续出现大于10us的高电平,单片机就会自动复位,依据单片机的这一特性,我在此处设计了两种复位方式,分别为系统上电自动复位和手动复位,具体的电路如图33所示。在上电初始,电解电容C1处于快速充电状态,此时单片机的RST引脚处呈现高电平,为了保证该高电平的保持时长,经过试验,此处C1选择的是10uF的电解电容,当该电容充电完毕后,单片机RST引脚恢复到低电平,这样就实现了上电自动复位的功能。在程序运行的过程当中,如果出现程序运行错误,或者需要系统复位的情况,也可以通过手动复位的方式使系统运行回复到初始状态,此功能的实现方法是在单片机的RST引脚与VCC间串联一个微动按键,当按下此按键时,单片机的RST引脚处呈现高电平,当按键按下时长大于10us时,实现系统复位。
(二)温湿度检测模块
1. 温湿度传感器介绍
DHT11温湿度传感器是是集温度采集和湿度测量为一体的高集成传感器,该传感器的硬件连接非常简单,能够直接输出单片机可以识别并已经经过校准的数字信号,连接单片机I/O口即可。该传感器的引脚分布和引脚功能表如31所示。它的器件图如34所示。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/wlw/614.html