智能农业大棚

目 录

摘要

1.绪论

2.系统概述及单片机介绍

2.1整体方案设计思想

2.2系统组成

2.2.1主控芯片的选择

2.2.2传感器模块选择

2.2.3电机驱动模块

2.3 单片机介绍

2.3.1 AT89C51单片机的基本组成

2.3.2 AT89C51主要特性

2.3.3管脚说明

2.3.4 AT89C51单片机的存储器

2.3.4.1 程序存储器

2.3.4.2 数据存储器

2.3.5 振荡电路和时钟

2.3.6 AT89C51的中断系统

2.3.6.1 中断系统结构和中断控制

2.3.6.2 中断响应过程

2.3.7 定时器/计数器

2.3.7.1定时器/计数器01简介

3.1.1 中央处理单元

3.1.2 LCD显示部分

3.1.3 电磁阀部分

3.1.4按键部分

3.1.5 ADC0809这个芯片

3.2 总电路设计图

3.3 AT89C51单片机电路

3.4 晶振电路

3.5 复位电路

3.6 按键电路

3.9 LCD显示电路

3.10 蓝牙BT-06

4.软件设计

4.1 系统软件设计思路

4.2系统软件设计整体框图

4.3用户界面设计与APP开发

4.4远程通信协议设计

5.结论

致谢

参考文献

AT89C51基于单片机智能浇花系统设计

  摘要

本设本文是使用AT89C51运用编程与LCD液晶显示屏实现,利用温度、湿度传感器及相应的显示、驱动执行机构、报警装置等实现温室作物生长环境控制器的设计。包括硬件电路的设计、传感器的选型及相关软件控制程序的编写和调试。该控制器能够满足目前对温室大棚内温度、湿度和土壤湿度的实际监测与控制要求。

  关键词单片机,控制,显示

1.绪论

最近几年,人们的生活水平有了很大提高,如何真正提高生活质量,如何使生活有了质的飞跃就成了问题大多数人认为。花卉种植是中国人几千年来保持同样的喜好,所以大多数人都选择种植植物,以陶冶情操,还能用它作为一个业余的消遣,但由于生活节奏快,人们经常出差及其他原因无法按时浇水的植物和花卉成为主要的死亡原因。

为了解决这个问题的时候浇花,人们会通过手机,并保存备忘录或者各种其他备忘的方法,但这些方法总是有很多瑕疵,智能灌溉系统的特点在市场上众多的仪器,但价格过于昂贵,对于一般家庭,过于复杂的应用程序和多功能性是不必要的。

智能浇水系统能够解决这个问题,该系统主要是一个电磁阀致动器在一端连接管,连接到外部水管作为浇水主要由微控制器控制的另一端。设备主要通过控制浇水间隔浇水的持续时间,以控制浇水量。方便操作,这样就实现了现代家庭生活,同时也保证植物的正常生长。

近年来,电子技术作为新技术的代表,以推动电子行业的快速增长,也极大地推动智能家电和智能家居设备的快速发展。智能家电海外市场似乎已经做大做强,鉴于中国在全球制造链和设计链的重要作用,这使它成为世界上主要的设备制造商在生产智能家居的大决战的竞争,而且还导致中国国内情报国内研发及检测设备和仪器技术应用的快速发展。智能灌溉控制系统自然也包括在内,在最近几年,出现了很多国内外各类智能灌溉控制系统,它的功能和控制的原则有许多不同,但两者的根本目的方便了人们的日常生活,保证正常生长和鲜花。

众所周知,在二十世纪,人类跨越了三个“电”的时代,即电气时代、电子时代和电脑时代。但这种电脑,通常指个人计算机,也就是我们平时所说的PC机。它由主机、显示器、键盘等组成。除此之外还有一类计算机,大多数人很不熟悉。这种计算机就是把智能赋予给各种机械的单片机(微控制器)。这种计算机最小的系统只用一片集成电路,就能进行简单运算和控制。因为其体积小,通常都被放在被控机械的“肚子”里。在整个装置中,他的作用有如人类头脑,若它出了毛病,整个装置也就瘫痪了。现如今,这种单片机的使用领域已发展的十分广泛,如智能仪表、导航系统、实时工控、通讯设备、家用电器等。各种家用产品用上了单片机以后,便能起到令产品换代升级的功效,通常都会在产品名称前加上形容词——“智能型”,例如智能型洗衣机等等。   而花卉养殖作为大多数人生活中的一部分,却常常因为人们工作等原因被忽略,智能浇花控制系统可为人们解决这一问题,与此同时,智能浇花控制系统若能走进家庭,也是人们生活进入智能化的标志之一。

大家都知道,在二十世纪,人类跨越时代的三个“电”,即电气时代,电子时代和计算机时代。不过,这里的计算机,通常是指个人电脑,这就是我们通常说的PC。它由主机,显示器,键盘和其它组分。此外,还有一类计算机,大多数人非常熟悉。给各种机械赋予智能的单片机(MCU)。这样的计算机系统只使用一个最小的IC可以进行简单的算术和控制。由于其体积小,经常被指责被放置在机械的“肚子”里。整个单元,他的作用就像人的大脑,如果它出了毛病,那么瘫痪的是整个系统。现在,该领域已被开发广泛使用,如智能仪表,导航系统,实时工业控制,通讯设备,家用电器等。用各种家居产品的微控制器后,就能起到使产品升级换代的功效,一般的产品名称与形容词前 - “智能”,如智能洗衣机等。

2.系统概述及单片机介绍

2.1整体方案设计思想

根据题目要求的要求,确定了以下方案:自己买材料制作,连接到微控制器,使土壤水分控制,并在此基础上,最小系统板安装湿度传感器。然后,湿度测距数据检测模块返回到微控制器,微控制器发送相应的命令来实现对泵的开关控制,实现自动检测和自动浇水湿度的功能。

2.2系统组成

                                        

                       图2.1 系统组成

2.2.1主控芯片的选择

   现在市场上种类繁多,最能够满足比单片机AT89C51,AVR单片机主体的要求,以及ARM,凌阳,当然他们有自己的优势和劣势在控制芯片,但这个设计过程中,我们选择了AT89C51。相比于其他类型的控制芯片,AT89C51系列更适合我们这个型号,如:AT89C51单片机完全能够完成这一精心设计的所有功能; AT89C51外围电路非常简单,易于控制;在我们的课程对许多AT89C51的演讲;事情TA89C51价格相对于其他的控制芯片,便宜很多,最重要的可能是一个很好的成本控制能力。

考虑到所有这些点的时候我是在最后的设计选用AT89C51单片机来完成这一设计。

2.2.2传感器模块选择

   随着科学技术的不断发展,传感器领域相应得到了很大的发展。它是在各个领域具有很广泛的应用。在选择这种传感器的设计中,我们考虑了湿度传感器,温度和湿度传感器两种。温度和湿度传感器体积小,性能稳定,精度高,可以检测土壤中的温度和湿度,但价格昂贵被检测;湿度传感器,精度和长期稳定性,湿度敏感的,并且可以用来检测土壤湿度,而且价格低廉。经过学生和教师探索,考虑到传感器的选择关键在于适合于单芯片的处理。最后,我们选择了一个比较实用的湿度传感器

2.2.3电机驱动模块

   继电器(英文名称:relay)是一种电控制器件,是当输入量(激励量)的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器[2]。它具有控制系统(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用继电器,充当水泵开关,控制水泵出水。正是因为其功能,符合我们此次的设计,我们选择其作为自动浇花系统的电机驱动模块。

2.3 单片机介绍

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

2.3.1 AT89C51单片机的基本组成

AT89C51由一个8位的微处理器,128KB片内数据存储器RAM,21个特殊功能寄存器SFR,4KB片内程序存储器Flash ROM,64KB可寻址片内外统一编址的ROM,64KB可寻址片外的RAM, 4个8位并行I/O接口(P0—P3),一个全双工通用异步串行接口UART,两个16位的定时器/计数器,具有位操作功能的布尔处理机及位寻址功能的五个中断源、两个优先级的中断控制系统以及片内振荡器和时钟产生电路。其基本组成框图如图2-1所示。

图2-1 AT89C51的基本组成

2.3.2 AT89C51主要特性

AT89C51主要特性有:

·与MCS-51 兼容

·4K字节可编程闪烁存储器
·寿命:1000写/擦循环
·数据保留时间:10年
·全静态工作:0Hz-24Hz
·三级程序存储器锁定
·128*8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路

2.3.3管脚说明  

AT89C51的引脚图如图2-2所示。各引脚的具体说明如下:

VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口

的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
    P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

    P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4

个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此

作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口

当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八

位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写

时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址

信号和控制信号。

图2-2 AT89C51引脚图

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电

流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入口。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如表2-1所示。同时,P3口为闪烁编程和编程校验接收一些控制信号。

表2-1 P3口的特殊功能

引脚

名称

功能说明

引脚

名称

功能说明

P3.0

RXD

串行输入口

P3.4

T0

记时器0外部输入

P3.1

TXD

串行输出口

P3.5

T1

记时器1外部输入

P3.2

外部中断0

P3.6

外部数据存储器写选通

P3.3

外部中断1

P3.7

外部数据存储器读选通

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。    ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位

字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
  

/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,

将内部锁定为RESET;当

端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

2.3.4 AT89C51单片机的存储器

在单片机中,存储器分为程序存储器ROM和数据存储器RAM,并且两个存储器是独立编址的。

AT89C51单片机芯片内配置有8KB(0000H~1FFFH)的Flash程序存储器和256字节(00H~FFH)的数据存储器RAM,根据需要可外扩到最大64KB的程序存储器和64KB的数据存储器,因此AT89C51的存储器结构可分为4部分:片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器。如果以最小系统使用单片机,即不扩展,则AT89C51的存储器结构就较简单:只有单片机自身提供的8KB Flash程序存储器和256字节数据存储器RAM。

图2-3给出了AT89C51单片机的存储器分布空间。左侧线框中为单片机自身提供的8KB Flash程序存储器和256字节数据存储器RAM。右侧为可扩展的64KB的程序存储器ROM和64KB的数据存储器RAM。

2.3.4.1 程序存储器

AT89C51单片机出厂时片内已带有8KB的Flash程序存储器,使用时,引脚

要按高电平(5V),这时,复位后CPU从片内ROM区的0000H单元开始读取指令代码,一直运行到1FFFH单元,如果外部扩展有程序存储器ROM,则CPU会自动转移到片外ROM空间2000H~FFFFH读取指令代码。

图2-3 存储器空间分布图

2.3.4.2 数据存储器

AT89C51单片机出厂时片内已带有256字节的数据存储器RAM,如果不够用,可以在片外扩展,最多可扩展64KB RAM。

图2-4 片内数据存储器的结构

单片机自带的数据存储器RAM结构如图2-4所示,此256字节单元(00H~FFH)的低128字节(00H~7FH)单元为用户使用区,高128字节(80H~FFH)单元为特殊功能寄存器SFR区。

片内数据存储器的00H~7FH单元又划分为3块:00H~1FH块是工作寄存器所用;20H~2FH块是位寻址功能的单元区;30H~3FH是普通RAM区。工作寄存器又分为4组,在当前的运行程序中只有一组是被激活的,谁被激活有程序状态寄存器PSW的RS1,RS0两位决定。

2.3.5 振荡电路和时钟

    在AT89C51芯片内部,有一个振荡电路和时钟发生器,引脚XTAL1和XTAL2之间接入晶体振荡器和电容后构成内部时钟方式。也可以使用外部振荡器,由外部振荡器产生的信号直接加载到振荡器的输入端,作为CPU的时钟源,称为外部时钟方式。采用外部时钟方式时,外部振荡器的输出信号接至XTAL1,XTAL2悬空。两种方式的电路连接如图2-5所示。大多数的单片机采用内部时钟方式,本次设计亦然。

        

(a)使用片内振荡器接法                           (b)使用片外振荡器接法

图2-5 AT89C51振荡器的连接方式

在AT89C51单片机内部,引脚XTAL2和引脚XTAL1连接着一个高增益反相放大器,XTAL1引脚是反相放大器的输入端,XTAL2引脚是反相放大器的输出端。

芯片内部的时钟发生器是一个二分频触发器,振荡器的输出

为其输入,输出为两相的时钟信号(状态时钟信号),频率为振荡器输出信号频率

的1/2。状态时钟经三分频后为低字节地址锁存信号ALE,频率为振荡器输出信号频率

的1/6,经六分频后为机器周期信号,频率为

/12。

一般取20~30pF的陶瓷电容器。

2.3.6 AT89C51的中断系统

为了提高系统的工作效率,AT89C51单片机设置了中断系统,采用中断方式与外设进行数据传送。所谓“中断”,是指单片机在执行某一段程序的过程中,由于某种原因(如异常情况或特殊请求),单片机暂时中止正在执行的程序,而去执行相应的处理程序,待处理结束后,再返回到被打断的程序处,继续执行原程序的过程。

2.3.6.1 中断系统结构和中断控制

AT89C51有六个固定的可屏蔽中断源,分别是三个片内定时器/计数器溢出中断TF0、TF1和TF2,两个外部中断

(P3.2)和

(P3.3),一个片内串行口中断TI或RI。6个中断源有两级中断优先级,可形成中断嵌套。它们在程序存储器中各有固定的中断入口地址,由此进入相应的中断服务程序。

引起6个中断源的符号、名称及产生的条件如下:

:外部中断0,由P3.2端口线引入,低电平或下降沿引起;

:外部中断1,由P3.3端口线引入,低电平或下降沿引起;

T0:定时器/计数器0中断,由T0记满回零引起;

T1:定时器/计数器1中断,由T1记满回零引起;

TI/RI:串行口I/O中断,串行端口完成一帧字符发送/接收后引起中断;

T2:定时器/计数器2中断,由T2记满回零引起。

在本次设计中采用了定时器/计数器0中断,它的中断控制寄存器包括定时器/计数器0、1控制寄存器TCON和中断允许控制寄存器IE。

① 定时器控制寄存器TCON

TCON是定时器/计数器和外部中断两者合用的一个可位寻址的特殊功能寄存器,它的格式如下:

D7

D6

D5

D4

D3

D2

D1

D0

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

各控制位定义如下:

TF1:定时器/计数器1溢出中断请求标志位。当定时器/计数器1计数产生溢出时,由内部硬件置位TF1,向CPU响应中断并转向该中断服务程序执行时,由硬件内部自动TF1清0。

TR1:定时器/计数器1启动/停止位。由软件置位/复位控制定时器/计数器1的启动或停止计数。

TF0:定时器/计数器0溢出中断请求标志位。当定时器/计数器0计数产生溢出时,由内部硬件置位TF0,向CPU响应中断并转向该中断服务程序执行时,由硬件内部自动TF1清0。

TR0:定时器/计数器0启动/停止位。由软件置位/复位控制定时器/计数器0的启动或停止计数。

IE1:外部中断请求标志位。当CPU检测到INT0低电平或下降沿且IT1=1时,由内部硬件置位IE1标志位(IE1=1)向CPU请求中断,当CPU响应中断并转向该中断服务程序执行时,由硬件内部将IE1清0。

IE0:外部中断请求标志位。当CPU检测到INT0低电平或下降沿且IT0=1时,由内部硬件置位IE0标志位(IE0=1)向CPU请求中断,当CPU响应中断并转向该中断服务程序执行时,由硬件内部将IE0清0。

IT1:用软件置位/复位IT1来选择外部中断INT1是下降沿触发还是电平触发中断请求。当IT1置1时,则外部中断INT1为下降沿触发中断请求,即INT1端口由前一个机器周期的高电平跳变为下一个机器周期的低电平,则触发中断请求;当IT1复位清0,则INT1的低电平触发中断请求。

IT0:由软件置位/复位IT0来选择外部中断INT0是下降沿触发还是低电平触发中断请求,其控制原理同IT1。

② 中断允许控制寄存器

中断允许控制寄存器IE的格式如下:

D7

D6

D5

D4

D3

D2

D1

D0

EA

ET2

ES

ET1

EX1

ET0

EX0

各控制位定义如下:

EA:中断总控制为。EA=1,CPU开中断,它是CPU是否响应中断的前提,在此前提下,如果某中断源的中断允许位置1,才能响应该中断源的中断请求。如果EA=0,无论哪个中断源有请求,CPU都不予回应。

ET2:定时器/计数器T2中断控制位,ET2=1,允许T2计数溢出中断;ET2=0,禁止T2中断。

ES:串行口中断控制位,ES=1,允许串行口发送/接收中断;ES=0禁止串行口中断。

ET1:定时器/计数器T1中断控制位,ET1=1,允许T1计数溢出中断;ET1=0,禁止T1中断。

EX1:外部中断1控制位,EX1=1,允许中断;EX1=0,禁止外部中断1中断。

ET0:定时器/计数器T0中断控制位,ET0=1,允许T0计数溢出中断;ET0=0,禁止T0中断。

EX0:外部中断0控制位,EX0=1,允许中断;EX0=0,禁止外部中断0中断[1]。

2.3.6.2 中断响应过程

CPU中断处理从响应中断、控制程序转向对应的中断矢量地址入口处执行中断服务程序,到执行返回(RETI)指令为止。中断响应可分为以下几个步骤:

① 保护断点,即保存下一个将要执行的指令的地址,把这个地址送入堆栈。

② 寻找中断入口,根据6个不同的中断源所产生的中断,中断系统必须能够正确地识别中断源,查找6个不同的入口地址。以上工作是由单片机自动完成的,与编程者无关。在6个入口地址处存放有中断处理程序。

③执行中断处理程序。

④中断返回:执行完中断指令后,从中断处返回到主程序,继续执行[2]。

2.3.7 定时器/计数器

AT89C51单片机内部设有两个16位可编程定时器/计数器,即定时器/计数器0和定时器/计数器1。除此之外还有一个可编程定时器/计数器2。

2.3.7.1定时器/计数器0和1简介

定时器/计数器0和1内部有一个计数寄存器(

),它实际上是一个累加寄存器进行加1计数。定时器和计数器共用这个寄存器,但定时器/计数器同一时刻只能工作在其中一种方式下,不可能既工作在定时器方式,同时又工作在计数器方式。这两个工作方式的根本区别是在于计数脉冲的来源不同。工作在定时器方式时,对振荡源12分频的脉冲计数,即每过一个机器周期(1个机器周期在时间上和12个振荡周期的时间相等),计数寄存器中的值就加1。工作在计数器方式时,计数脉冲不是来自内部的机器周期,而是来自外部输入。对定时器/计数器0、定时器/计数器1,计数脉冲分别来自T0、T1引脚。当这些引脚上输入的信号产生高电平至低电平的负跳变时,计数寄存器的值就加1。单片机每个机器周期都要对对外部输入进行采样,如果在第一个周期采得的外部信号为高电平,在下一个周期采得的信号为低电平,则在再下一个机器周期,即第三个机器周期计数寄存器的值才增加1[1]。

3.硬件设计

3.1中央处理单元

以AT89C51作为整个系统的控制中心

 (1)通过LCD液晶显示屏作为显示模块;

 (2)根据按键输入发送正确的信号并在LCD显示。

  3.2 LCD显示部分

  作为一个显示模块该设备应该是在单片机控制的正确输出显示检测到的物理量。

  3.3 电磁阀部分

 该设备是完成本次工作的重要组成部分。

3.4按键部分

它是整个系统中比较简单的部分,根据功能要求,本系统共需3个按键,3个按键位于按键部分,分别是上调按键,下调按键,工作按键。

它是整个系统是相对简单的部件,根据该系统的功能要求需要总共三个按钮,三个按钮位于按键部件,其被加、减按钮,工作按钮。

3.5 ADC0809数模转换

ADC0809由一个8位分辨率,双通道A / D转换芯片生产。由于其体积小,兼容性,高性价比而深受欢迎的微控制器,目前具有较高的普及率。学习和使用,但让我们明白ADC0809 A / D转换器原理,有利于提高我们的供应链管理技术水平。

ADC0809具有以下特点:

8位分辨率;两路A / D转换器;

输入和输出电平与TTL/ CMOS兼容;

0输入电压〜5V时,5V电源;

工作频率是250千赫,转换时间为32μS;

典型功耗仅为15mW;

8P,14P-DIP(双列直插式),人保财险多种封装形式;

0°C商业级芯片的温度宽-40°C至+70°C,工业级芯片温度宽至+85°C;

ADC0809与单片机的接口电路:

ADC0809 8位分辨率的A / D转换芯片,多达256的最大分辨率可适应普通模拟转换的要求。内部电源的输入和基准电压复用,使得0〜5V之间的芯片的输入模拟电压。只有32μS芯片转换时间,根据一个双数据输出可以用作数据验证,以便减少数据误差,转换速度快且稳定的和强大的性能。单独的芯片使能输入,使更多的设备连接和处理器控制变得更加方便。通过DI数据输入,就可以很容易地选择频道来实现功能。

ADC0809单片机控制原理:

在正常情况下与ADC0809单片机的接口应该是四个数据线,分别CS,CLK,DO,DI。然而,由于以结束与DI DO通信没有结束的同时有效地与微控制器接口是双向的,因此,该电路设计可被并联连接的DO和DI用的数据线。

当其CS输入要高ADC0809不起作用,那么芯片被禁止,CLK和DO / DI水平可以随心所欲。当您要执行的A / D转换,CS功能的客户端必须先放在低并保持低直到转换完全结束。在此芯片开始转换的工作,但由所述处理器芯片时钟输入端子CLK输入的时钟脉冲,DO / DI的最终用途的DI端输入通道特征选择

数据信号。之前的第一个时钟脉冲端DI水槽要高,表明启动信号。在此之前的第二个和第三个脉冲的DI下沉二数据输入端应该被用于选择信道的功能。

3.2 总电路设计图

图4.1  总电路

 根据如图4.1所示的总电路主要由:晶振电路,复位电路,按键设置电路, LED显示电路,电磁阀电路,以及电源电路等几个部分。通过这几个分电路的分工合作,能够使得系统具有显示功能,并且具备键盘调整功能,同时能够对电磁阀进行有效的控制。从而使设备顺利的进行工作。

3.3 AT89C51单片机电路

图4.2  单片机电路

AT89C5单片机的RST引脚连接复位电路,P2.7引脚连接电磁阀电路,P1.0~P1.7引脚连接按键电路,XTAL1和XTAL2引脚连接晶振电路,P2.0和P2.1引脚连接指示灯电路,P2.5~P2.7引脚连接放大电路从而和P0.0~P0.7引脚一起控制LED显示电路。

3.4 晶振电路

图4.3  晶振电路

AT89C51单片机芯片内部设有一个反相放大器所构成的振荡器,XTAL1和XTAL2分别为振荡电路的输入端和输出端。在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就产生自激振荡。定时元件常常是用石英晶体和电容组成的并联谐振回路。系统选择了12MHZ的晶振片,两个30Pf的电容C2和C3。

3.5 复位电路

        

图4.4  AT89C51单片机的复位电路

 本设计采用的复位电路包括两个方面:上电复位电路(图a),按键复位电路(图b)。

a:上电复位电路:它是利用电容充电来实现复位的。在接电瞬间,RST引脚端的电位与Vcc端相同,但是随着充电电流的减少,RST端的电位逐渐下降。只要保证RST端为高电压的时间大于两个机器周期时,系统自动能实现正常复位。

b:按键复位电路:当要系统自动复位时,只需要按住S8按键,此时电源Vcc经过电阻R1,R2分压,并且在RST端产生一个复位的高电平。同样,只要保证RST端保持高电压的时间大于两个机器周期时,系统自动能实现正常复位。

3.6 按键电路

图4.5  按键电路

系统采用非编码键盘,按键电路主要由3个按键组成,分别是K1---工作按键; K2---“+”调节按键;K3---“-”调节按键,本系统采用独立式的按键形式。按照上图的电路连接方法,判断是否有键按下的方法是:查询哪一根接按键的I/O接口线为低电平,如果是低电平则说明这个接口线连接的按键处于按下状态。相反,若为高电平则说明按键处于非按下状态。

3.9 LCD显示电路

图4.8  LCD显示电路

   3.9.1 液晶显示器的简介 

液晶显示器是一种低功能耗液晶显示器件。工作电流小,适合于仪表和低功耗系统。常用的有笔画型液晶显示器、点阵字符型液晶显示器和图形点阵式液晶显示器。LCD液晶显示器的原理是利用液晶的物理特性,通过电压对其显示区域进行控制。有电就显示黑色,这样就显示出图形。液晶显示器适应于大规模电路直接驱动,易于实现全彩色显示的特点。目前被广泛应用于计算机,数字摄像机等众多领域。 

3.9.2液晶显示器的分类 

液晶显示器按显示图案的不同可分为笔段型LCD、字符型LCD和点阵图型LCD三种。 

(1) 笔段型 

笔段型是以长条状作为基本单位显示。该类型主要用于数字显示,也可用于显示西文字或某些字符。这种段型显示通常有6段。7段、8段、9段、14段和16段等,在形状上与数码管类似,总是围绕“8”的结构变化。其中以7段显示器常用,常用于数字仪表、电子仪器中。 

(2) 字符型 

字符型液晶显示器是专门用来显示英文和其他拉丁字母、数字、符号等点阵型液晶显示模块。它一般由若干个5乘8或5乘11点阵组成,每个点阵显示一个字符。这类模块一般应用于数字寻呼机、数字仪表等电子设备中。 

(3) 点阵图型 

点阵图形型是在一平板上排版多行多列的矩阵式的晶格点,点的大小可根据显示精细度来设计,可显示数字、字母、汉字、图像,甚至动画。这液晶显示器广泛应用于手机、笔记本电脑等需要显示大量信息的设备中。 

2.3液晶显示器1602 

1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。

3.10 蓝牙BT-06

3.10.1 蓝牙模块选择与集成

通信模块在系统中起着关键的作用,它实现了与手机APP的通信,允许用户远程控制和监控d大棚的状态。本节将介绍我们选择的通信模块以及其设计。

为了实现远程控制和监控功能,我们选择了蓝牙模块BT06作为通信模块。BT06是一款低成本、高性能的蓝牙模块,具有以下主要特点:

- 高度集成:ESP8266集成了WiFi芯片、CPU和存储器,具备强大的计算和通信能力。

- 低功耗:模块具有低功耗特性,适用于嵌入式系统。

- 可编程性:BT06支持Arduino等开发环境,便于开发人员进行编程和定制。

- 蓝牙连接:模块可以连接与手机APP进行通信。

3.10.2 远程控制与监控设计

通过集成蓝牙模块BT06,我们实现了以下远程控制和监控功能:

- 远程控制:用户可以通过安装在手机上的APP远程控制温湿度上下限的操作。APP可以向系统发送指令。

- 远程监控:用户可以通过手机APP实时监控大棚的状态。这包括当前的温湿度信息、工作模式等。

- 参数设置:用户可以通过APP设置系统的参数,例如湿度阈值,以便系统根据用户的偏好进行自动控制。

通信模块与主控制器之间建立了串口通信连接,通过串口协议实现数据传输。蓝牙模块BT06负责连接,将数据传递给手机APP,并接收来自APP的指令。这使用户能够方便地远程控制和监控晾衣架的状态,提高了系统的便捷性和智能化。

通过通信模块的设计,系统能够实现与用户的无线连接,允许远程控制和监控,提升了系统的智能性和可操作性。

4.软件设计

4.1 系统软件设计思路

自动浇花系统软件设计包括四个部分的程序设计,分别是:AD转换模块程序设计、湿度检测模块设计、阀值调节模块、数码管显示模块设计。

AD转换模块程序设计主要实现以下功能:将湿度传感器产生的模拟信号转换成数字信号。

湿度检测模块设计主要实现以下功能:通过程序设计,对所测湿度值进行处理,当低于所设定阀值继电器打开,实现浇水功能;当高于或等于所设阀值继电器关闭,关闭浇水功能。

阀值调节模块主要实现以下功能:设定两个按键实现对阀值的调节功能,其中一个按键要求是上调键,另一个是下调节,同时设定调节幅度为5。

数码管显示模块主要实现以下功能:需要数码管实现三个值的显示,分别是:采集的电压值、采集的当前土壤湿度值、设定的适合植物生长的土壤湿度阀值。数值顺序显示,通过间歇加以区分显示。

4.2系统软件设计整体框图

              图4.1 软件设计原理

4.3 用户界面设计与APP开发

用户界面设计和手机APP开发是系统的关键部分,它们决定了用户如何与系统进行交互、监控状态并进行远程操作。本节将介绍我们的用户界面设计以及APP开发,包括液晶显示界面和Android手机APP界面。

4.3.1 液晶显示界面

液晶显示界面是系统上的LCD1602液晶显示屏,用于提供实时信息反馈和操作功能。主要显示内容包括:

- 当前温度和湿度:通过DHT11传感器获取的环境温湿度数据,以便用户了解环境条件。

- 当前光照:显示系统当前的光照,以便用户了解环境条件。

液晶显示界面使用简单的文字和图标来展示信息,用户可以通过设置温湿度上下限阈值。这个界面设计友好且易于操作,确保用户能够轻松地监控和控制晾衣架。

4.3.2 手机APP界面开发

为了实现远程控制和监控功能,我们开发了Android手机APP,使用Android Studio进行开发。APP的主要功能包括:

- 远程控制:用户可以通过APP远程启动、停止等操作,以便在不同时间和地点控制系统架。

- 远程监控:用户可以通过APP实时监控状态,包括温湿度信息、光照等。

- 参数设置:用户可以在APP中设置湿度阈值和其他参数,以满足个性化的需求。

APP界面采用直观的图形和用户友好的操作方式,确保用户能够轻松地实现远程控制和监控功能。与通信模块结合,用户可以随时随地远程管理大棚,提高了系统的便捷性和智能化。

通过用户界面设计和APP开发,我们为用户提供了方便的远程操作和监控工具,使智能晾衣架系统更加易用和智能。

4.4 远程通信协议设计

远程通信协议设计是系统的关键部分,它决定了如何实现与手机APP之间的通信,以实现远程控制和监控功能。本节将介绍我们的远程通信协议设计,包括控制指令协议和数据传输协议。

4.4.1 控制指令协议

控制指令协议是用于手机APP向系统发送控制指令的协议。我们设计了简单而有效的指令格式,包括以下字段:

- 操作类型:指定要执行的操作类型式。

- 参数设置:如果操作需要附带参数,可以在此字段中传递,例如设置湿度阈值等。

- 校验和:为了确保指令的完整性和正确性,我们在指令中包含了校验和字段,以检测传输错误。

手机APP将构建控制指令并通过蓝牙模块BT06发送给系统,主控制器接收并解析指令,然后执行相应的操作。这个协议确保了远程控制的可靠性和准确性。

4.4.2 数据传输协议

数据传输协议用于在手机APP和系统之间传输状态信息和环境数据。我们选择了简单的JSON格式作为数据传输协议,因为它易于解析和生成,并且能够容纳各种类型的数据。

数据传输协议包括以下字段:

- 状态信息:包括温湿度信息、光照等。

- 控制指令响应:当手机APP发送控制指令后,晾衣架系统将向APP发送指令执行的响应。

- 数据更新频率:规定了数据更新的频率,以确保数据的实时性。

手机APP和系统通过WiFi模块进行数据传输,实现远程监控和状态更新。数据传输协议的设计确保了数据的可靠传输和正确解析。

通过远程通信协议的设计,我们实现了系统与手机APP之间的高效通信,使用户能够远程控制和监控晾衣架,提高了系统的便捷性和智能化。

5.结论

本次设计的盆花自动浇水系统以电子类的自动浇花器的工作原理为参考,运用现代传感器技术及单片机控制技术构成一个土壤温湿度采集与控制系统。再用数字电路控制自动给水系统及时的给浇水系统供水。整个盆花自动浇水系统包括土壤温湿度的检测和显示、自动浇水和蓄水箱自动上水及水位报警三个部分。土壤温湿度的检测和显示以温湿度传感器SHT-11为感应部件,将检测到的土壤温湿度值送入AT89C51单片机,再由单片机的I/O口输出到LCD液晶显示屏进行显。同时此湿度值也是是否给盆花浇水的参考值。自动浇水部分与土壤温湿度的检测和显示部分共同构成土壤温湿度的检测与控制系统。它设计为智能和手动两个部分:智能浇水部分是通过单片机程序设定浇水的上下限值并与SHT-11送入单片机的土壤湿度值相比较,当传感器检测到的湿度值低于设定的下限值时,单片机输出一个信号控制电磁阀打开,开始浇水,高于设定的上限值时再由单片机输出一个信号控制电磁阀关闭,停止浇水;手动部分是由单片机从时钟芯片DS1302读入月份与每天的实时时刻,通过软件程序设定定时浇水的时间与浇水的量。蓄水箱自动上水及水位报警采用纯硬件电路控制,实现水箱水位实时监测、自动上水以及水位上下限报警的功能。 

通过本次毕业设计,让我进一步了解了微电脑控制的智能系统。也使我真正接触到了检测控制系统的设计,虽然是一个人们日常生活中的小系统,但也让我明白了很多设计上应该注意的问题。比如实用性、经济性以及安装条件等。

致谢   

参考文献

[1] 赵克中.磁力驱动技术与设备,北京:化学工业出版社,2003.

[2] 林伸茂.8051单片机彻底研究,北京:中国电力出版社,2007.

[3] Mackenzie.8051微控制器,北京:清华大学出版社,2005.

[4] 周志敏,纪爱华.LCD背光驱动电路与应用实例,北京:人民邮电出版社,2009.

[5] 孙俊喜.LCD驱动电路、驱动程序与典型应用,北京:人民邮电出版社,2009.

[6] 明赐东.调节阀的应用,北京:化学工业出版社,2006.

[7] 毛兴武.新一代绿色光源LED及其应用技术,北京:人民邮电出版社,2008.

[8] 蔡振江.单片机原理及应用,北京:电子工业出版社,2008.

[9] 周志敏,纪爱华,周纪海.LED驱动电路设计实例,北京:电子工业出版社,2008.

[10] 王慧.计算机控制系统,北京:化学工业出版社,2005.

[11] Steve James. 5x7 LED Matrix Display with Z8 Encore, Zilog.Inc, 2007.

[12] Riheb Wislati, Helmut Haase. Design and Simulation of an Electromagnetic Valve Actuator Using COMSOL Multiphysics, Leibniz University, 2005.

[13] 郭天祥.51单片机C语言教程——入门、提高、开发、拓展全攻略[M].北京:电子工业出版社,2012:67-87. 

[14] 王玉凤,刘湘黔.电子设计从零开始[M].北京:清华大学出版社,2010:123-134. 

[15] 谭浩强.C程序设计教程学习辅导 [M].北京:清华大学出版社,2011:23-26. 

[16] 童诗白.模拟电子技术基础[M].成都:高等教育出版社,2010:45-48. 

[17] 赵克中.磁力驱动技术与设备[M].北京:化学工业出版社,2011:134-156. 

[20] 林伸茂.8051单片机彻底研究[M].北京:中国电力出版社,2011:56-67. 

[21] 吴磊.8051微控制器[M].北京:清华大学出版社,2010:98-111. 

[22] 郭英涛.LCD背光驱动电路与应用实例[M].北京:人民邮电出版社,2012:245-256. 

[23] 张炜.LCD驱动电路、驱动程序与典型应用[M].北京:人民邮电出版社,2011:256-265. 

[24] SD Group.SD Memory Card Specifications[Z].USA:Technical Committee SD Association, 

2013:456-467. 

[25] Teayon . Hardware White Paper [Z].USA:Microsoft Corporation,2011:46-57. 

[26] 张琳.调节阀的应用[M].北京:化学工业出版社,2013:76-89. 

[27] 徐贤.新一代绿色光源LED及其应用技术[M].北京:人民邮电出版社,2011:47-76. 

[28] 崔雪莉.单片机原理及应用[M].北京:电子工业出版社,2010:36-48. 

[29] 唐绪军.报业经济与报业经营[M].北京:新华出版社,2012:117-121.  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值