河南农业职业学院毕业设计报告课题:鱼缸自动换水系统设计系部:电子信息工程系专业:电气自动化班级:07-1姓名:xxx指导老师:xxx2010年6月26日目录:第一章总体方案设计 (3)第二章硬件设计 (4)2.1 控制核心AT89S52单片机 (4)2.2 八段四位共阳极数码管 (7)2.3稳压电路设计 (9)2.4电磁阀的结构原理 (10)2.5热继电器 (10)2.6微型水泵 (11)2.7水位器的选择 (11)第三章软件设计 (12)3.1换水时间及换水量选择 (12)3.2控制过程 (12)3.3程序设置 (14)3.4编程程序 (16)第四章系统安装与调试 (26)4.1软件调试 (26)4.2系统调试 (26)结束语 (27)辞谢 (27)参考文献 (28)附录1 (29)附录2 (30)摘要:养鱼的朋友都知道,水质对鱼儿影响是最严重的,好的水质可以使你的鱼儿健康生长,怎样才能保证水质呢?只有经常换水,对现在上班族来说换水是很麻烦的,占用很长的时间,对鱼缸的市场前景考虑,分析自动换水鱼缸实现的必要性和可行性,选用合适的单片机芯片和多种外围器件,完成硬件和软件的整体设计,最终实现了一个每天按时定量换水控制系统关键词:自动换水系统;定时控制;实时显示第一章总体方案设计鱼缸自动换水系统的原理图如图1-1所示:图1-1 鱼缸自动换水系统原理图原理图中的电磁阀(2)和水位器主要控制水位起到双保险,用单片机控制更精确。
有效防止水流出缸外。
电磁阀(1)和抽水马达是把想要换的沉水抽出,换水的多少由单片机设定,流量的大小是用微量调控运行的情况。
工作过程为:用单片机控制电磁阀.电源接通电磁阀就开起,水管就通了。
反之电磁阀电源关闭水管断流。
进水管直接接在自来水管子上。
进水的多少要看想要换多少水(抽掉的水)这也是用单片机控制电磁阀和抽水马达。
排水管接在抽水马达喷水口只要接通电源水就会往外排,如果每天按排水一小时30升水来计算的话,一个星期能换掉210升水(定时器控制排水电磁阀开起电源一小时)。
方法是用定时器设定时间比如下午1-2点排水 2-3点进水,这个过程就是自动循环的换水。
定时器设定时间长短和调节电磁阀上的微调是控制换水的多少和水的流量。
水位器是控制水位的高度,进水管接在水位器上起到双重保护,以防水溢出鱼缸。
第二章硬件设计本章中,我主要介绍组成自动换水鱼缸的硬件,以及它们之间的联系,在这个系统中起到的作用。
2. 1 控制核心AT89S52单片机2.1.1功能特性概述AT89S52是一种低功耗、高性能CMOS8位微控制器,在系统可编程Flash中拥有8k容量的存储器。
它是使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
而且Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52具有以下标准功能: 8k字节可编程Flash存储器,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工UART串行通道,片内晶振及时钟电路。
另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
2.1.2 单片机的特点主要有一下几点:与MCS-51单片机产品兼容;1000次擦写周期;全静态操作:0Hz~33Hz;三级加密程序存储器;八个中断源;低功耗空闲和掉电模式;掉电后中断可唤醒;掉电标识符;2.1.3 AT89S52的芯片管脚图如图2-1图2-1 AT89S52芯片管脚图各引脚的功能说明:VCC:电源GND:接地点P0 口:P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL 逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱;为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),含义如下:P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。
对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(I IL)。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2 口送出高八位地址。
在这种应用中,P2 口使用很强的内部上拉发送1。
在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个TTL 逻辑电平。
对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(I IL)。
P3口亦作为AT89S52特殊功能(第二功能)使用;在flash编程和校验时,P3口也接收一些控制信号。
引脚的功能如表2-1所示:表2-1 P3口的特殊功能RST: 复位输入。
晶振工作时,RST脚持续2 个机器周期时,高电平将使单片机复位。
当看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。
另外,在地址8EH 上的特殊寄存器AUXR上的DISRTO位可以使此功能无效,当DISRTO处于默认状态下,复位高电平有效。
ALE/PROG:地址锁存控制信号ALE是访问外部程序存储器时,锁存低8 位地址的输出脉冲。
在flash编程时,此引脚(PROG)也用作编程输入脉冲。
在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。
然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。
如果需要,通过将地址为8EH的SFR的第0位置设置为“1”时,ALE操作将无效。
这一位置为“0”时,ALE 仅在执行MOVX 或MOVC指令时有效。
否则,ALE 将被微弱拉高。
这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
PSEN:表示外部程序存储器选通信号。
当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期中被激活两次,而在访问外部数据存储器时,PSEN不被激活。
EA/VPP:访问外部程序存储器控制信号。
为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。
为了执行内部程序指令,EA应该接VCC。
在flash编程期间,EA也接收12伏VPP电压。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出端。
2.1.4单片机硬件资源的分配P0.0-P0.7连接四位共阳极数码管;P2.0连接按键K1;P2.1 连接按键K2;P2.2 连接按键K3;P2.3连接按键K4;2.2 七段四位共阳极数码管2.2.1数码管介绍七段数码管是由7个发光二极管单构成。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
结构图如图2-2所示:图2-2 数码管结构示意2.2.2数码管的驱动方式数码管与单片机的连接电路如图2-3所示,数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,每个数码管显示出字形取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就会显示出字形,没有选通的数码管就不会亮。
通过分时轮流控制各个数码管的的COM端,就会使各个数码管轮流受控显示,这就是动态驱动。
在轮流显示过程中,每位数码管的点亮时间为1~2ms,能够节省大量的I/O端口,而且功耗更低。
图2-3 数码管与单片机连接电路2.3稳压电路设计稳压电路中含有元器件H7805,它的外形图如图2-4所示,它是3 端正稳压电路,TO-220 封装,能提供多种固定的输出电压,应用范围比较广。
内含过流、过热和过载保护电路,带散热片时,输出电流可达 1A。
虽然是固定稳压电路,但使用外接元件,可获得不同的电压和电流。
它的各个脚的含义为:1―输入,INPUT ;2―地,GND ;3―输出,OUTPUT TO-220。
图2-4 元器件H7805的外形图它的主要特点:输出电流可达 1A;输出电压有5V ;内含有过热保护、短路保护、输出晶体管 SOA 保护;以及一些极限值:(Ta=25℃) VI——输入电压(VO=5~18V)⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 35V ;RθJC——热阻⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 5℃/W;RθJA——热阻⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 65℃/W;TOPR——工作结温范围⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯ 0~125℃;H7805在硬件电路中的使用,起到固定输出电压作用,使按键更好的使用,如图所示2-5所示:图2-5 H7805在电路中的连接2.4电磁阀的结构原理直动式电磁阀有常闭型和常开型二种。
在我的鱼缸自动换水的系统中主要采用常闭型,它在断电时呈关闭状态,当线圈通电时产生电磁力,使动铁芯克服弹簧力同静铁芯吸合直接开启阀,介质呈通路;当线圈断电时电磁力消失,动铁芯在弹簧力的作用下复位,直接关闭阀口,介质不通。