基于52单片机的自动浇灌系统设计Word格式文档下载.docx
- 文档编号:16115338
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:44
- 大小:330.31KB
基于52单片机的自动浇灌系统设计Word格式文档下载.docx
《基于52单片机的自动浇灌系统设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于52单片机的自动浇灌系统设计Word格式文档下载.docx(44页珍藏版)》请在冰豆网上搜索。
低温:
**.*℃,或常温:
**.*℃,或高温:
**.*℃。
注:
假设24℃以下为低温,25~35℃为常温,35℃以上为高温。
电磁阀状态:
开,或关。
3.第三行显示:
时间:
**时**分**秒。
4.第四行显示:
浇灌次数。
a.可以显示设置的界面
b.可以查看低、常、高温的值和浇灌时间及间隔时间
c.可以设置的低、常、高温的值和浇灌时间及间隔时间
目的是为了实现浇灌
c.性能
使得浇灌器在低温时,电磁阀始终关,浇灌时间为0分0秒;
在常温时,浇灌时间为30分钟,浇灌次数间隔为8小时;
在高温时,浇灌时间为50分钟,浇灌次数间隔为4小时。
从低温进入常温,浇灌时间为30分钟,浇灌次数间隔为8小时;
蜂鸣器响从常温进入高温时,浇灌时间为50分钟,浇灌次数间隔为4小时。
蜂鸣器响
从高温进入常温,浇灌时间为30分钟,浇灌次数间隔为8小时;
蜂鸣器响从常温进入低温时,浇灌时间为0分0秒,阀关闭。
d.接口(软件、硬件)
2.方案(思路)
a)总的思考
利用DALAS一线式温度传感器DS18B20实现对周围温度环境的采集,单片机再根据采集的温度值来控制电磁阀的开关及发出声音,实现在不同的温度对周围浇灌对象实施间隔性的灌溉,浇灌持续的时间与不同的温度范围有关,同时相关的状态信息在点阵汉字液晶屏上实时的显示
b.CPU选择
80C52;
c.硬件选择;
水阀开关蜂鸣器继电器液晶显示器(TG12864B)电源电线;
d.开发和测试环境
Keil2;
Proteus;
e.系统框架图和系统功能说明
功能说明:
蜂鸣器响兰花草从常温进入高温时,浇灌时间为50分钟,浇灌次数间隔为4小时。
蜂鸣器响兰花草
蜂鸣器响兰花草从常温进入低温时,浇灌时间为0分0秒,阀关闭。
f.接口概述
g.开发计划
序号
任务
内容
负责人
计划开始时间
计划结束时间
实际开始时间
实际结束时间
1.
任务和要求
概述,功能,性能,接口
刘路
2013.9.09
2013.9.10.
2013.9.10
2.
方案
总的思考软硬件选择开发和测试环境系统框架图和系统功能说明接口概述开发计划
2013-9-12
3.
系统设计
列出所需要的硬件软件电路及功能状态图
2013.9.12
2013.9.17
4.
详细设计
将主体程序分解成各个功能模块列出各模块的功能所需
2013.9.23
5.
编码
依照详细设计所考虑的思路进行编码
2013.10.12
2013.10.8
6.
系统测试
利用Proteus进行仿真通过控制DS18B20的值测试程序在各个温度下显示浇灌时间功能是否完整有无错误
2013.10.17
3.系统设计
a)硬件设计
i.框图
ii.功能描述
硬件设计主要包括:
DS18B20温度采集模块:
用于温度采集;
汉字液晶屏显示状态信息模块:
用于将相关信息显示出来;
将数字温度传感器DS18B20并接在一起,数据线与单片机的P1.0相连,液晶显示器与单片机的连接采用模拟接口方式。
蜂鸣器:
利用外部中断触发定时器t0控制音调高低T1控制节拍长短
(1)传感器DS18B20
DS18B20是美国DALLAS公司推出的数字温度传感器,将温度传感器、数字转换电路集成到了一起,外形如同一只三极管。
微型化、低功耗、高性能、抗干扰能力强;
它采用独特的单线接口方式,与单片机连接时,仅需一根口线;
这样可以非常方便地构成多路温度测量系统。
DS18B20的测温范围为-55度~125度,可完全满足要求。
其引脚图如图1-4所示。
DQ:
数据输入/输出。
在数据总线供电方式可给传感器提供电源。
VDD:
可选的电源电压DS18B20有两种供电方式:
数据总线供电方式和外部供电方式。
若采用数据总路线供电方式,VDD应接地,这样可省一根线,但测浊的时间较长。
GND:
电源地。
温度与数字量的对应关系表如右表
所示。
(2)单片机80C52
单片机内部有P0、P1、P2、P34个8位双向I/O口,其引脚如图1-8所示,外设与这些端口可以直接连接,无需另外的接芯片。
P0~P3既可以按字节输入或输出,也可以按位进行输入或输出,共32条口线,其控制十分灵活方便。
各个端口的结构功能有所不同。
在自动浇灌系统的设计中主要用到了P0、P1、P3这3个口。
1)P0口
P0口每一位内部结构如图1-9所示,其基本功能是数据的输入与输出,此外在扩展程序存储器、外部数据存储器或I/O口时,作为数据总线和低8位地址总线。
需要说明的是P0口作为输出口使用时,“控制”引脚为低,使场效应管VT1截止,P0口实际上为漏极开路输出电路,因此需加上拉电阻,如图1-10所示;
P0作为输入口使用时,必须首先写端口输出“1”,使VT2截止,否则如果VT2导通,在输入引脚数据时,引起的的高电平会被强制拉成低电平。
2)P1口
在自动浇灌系统设计中,P1.1与传感器DS18B20的DQ连接,将温度传感器上的值传送到单片机80C51在液晶屏上显示出来。
3)P3口
P3口险了双向I/O口功能外,还具有第二功能。
在自动浇灌系统中P3.7、P3.6、P3.5不再是P3口的第二功能,RD、WR、T1是作为I/O口分别控制液晶模块的RS、R/W、E引脚,产生相应的时序信号。
(3)TG12864B液晶屏
TG12864B是128*64点阵的液晶显示模块,能够显示各种字符(128个8*8点阵字符,或32个16*16点阵的汉字)或图形,具有8位标准数据总线及相应的控制信号,可与单片机接口直接相连。
其外观及引脚排列如图1-11所示:
其引脚功TG12864B液晶模块实际上是由左右两块独立的64*64点阵液晶屏拼接而成,每半屏有一个8*64*8bitDDRAM,左右半屏驱动电路及存储器分别由片选信号CS1和CS2选择。
它可显示4行16*16点阵的汉字,每行显示8列,如果列号小于4,则显示在左半屏,否则显示在右半屏。
。
TG12864B液晶模块内部没有字库,因此必须将ASCII的点阵信息放在程序存储器中,显示时根据ASCII值找到该字符的点阵码送到液晶显示模块DDRAM中。
(4)蜂鸣器
三极管主要是做驱动用的。
因为单片机的IO口驱动能力不够让蜂鸣器发出声音,所以我们通过三极管放大驱动电流,从而可以让蜂鸣器发出声音,你要是输出高电平,三极管导通,集电极电流通过蜂鸣器让蜂鸣器发出声音,当输出低电平时,三极管截止,没有电流流过蜂鸣器,所以就不会发出声音。
b)软件设计
i.运行环境
keil2;
在低温时,电磁阀始终关,浇灌时间为0分0秒;
;
从常温进入高温时,浇灌时间为50分钟,浇灌次数间隔为4小时。
响起音乐兰花草从常温进入低温时,浇灌时间为0分0秒,阀关闭。
1.主程序模块
功能:
主要是要调用的函数的声明;
变量的定义;
根据温度,在该屏上逐行显示:
温度、水龙头开关状态、浇灌时间等信息。
2.DS18B20温度采集模块
温度采集,通过温度传感器获取当前的温度值,再将温度值传到主程序中,然后在液晶屏显示相应的温度值。
3.汉字液晶屏显示状态信息模块
对液晶屏进行初始化、复位、打开显示、设置起始行、清屏。
4.定时器模块
实现记录不同温度段的浇灌时间及浇灌间隔时间等信息
5.控制电磁阀开/关模块
根据温度信息控制继电器吸合及断开,从而控制电磁阀的开关,实现浇灌与否。
6.响乐模块
单片机可以依据不同频率的脉冲信号让蜂鸣器产生与音符相应的声音可以利用单片机p3.2或者.p3.3引脚外部中断来控制控制蜂鸣器相关。
iii.状态图
NO
状态
条件
事件
动作
目标状态
1
低温不浇灌
常温
开阀门/蜂鸣器响显示
常温浇灌
2
低温
关阀门/显示
3
常温不浇灌
4
30分钟
时间到
5
8小时
开阀门/显示
6
高温
蜂鸣器响显示
高温浇灌
7
显示
8
50分钟
高温不浇灌
9
4小时
10
开阀门/显示蜂鸣器响
11
iii.
iv.主要流程图
浇灌
v.程序总体结构图
vi.接口设计
4.详细设计
c)硬件详细设计
i.
Proteus图
d)软件详细结构图
Ds18b20
InitTimer0(定时器T0中断)
InitTimer0(定时器T1中断)
定时器——
液晶显示模块
e.软件详细设计
i.函数描述
名称:
voidwrbyte(uchard)
功能:
向DS18B20写入一个字节
入口参数:
d(uchar型写入字节)
出口参数:
无
返回值:
无
ucharrdbyte(void)
从DS18B20读取一个字节
intreadt(void)
读取DS18B20暂存器中的温度值
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 52 单片机 自动 浇灌 系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)