毕业设计论文基于AT89S52单片机的水位控制系统设计.docx
- 文档编号:24229593
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:31
- 大小:440.72KB
毕业设计论文基于AT89S52单片机的水位控制系统设计.docx
《毕业设计论文基于AT89S52单片机的水位控制系统设计.docx》由会员分享,可在线阅读,更多相关《毕业设计论文基于AT89S52单片机的水位控制系统设计.docx(31页珍藏版)》请在冰豆网上搜索。
毕业设计论文基于AT89S52单片机的水位控制系统设计
毕业设计(论文)报告
题目基于单片机的水位控制系统设计
系别
专业电气自动化技术
班级
学生姓名
学号
指导教师
2012年4月
基于单片机的水位系统设计
摘要:
本文提出了一种用单片机水位控制对水位进行精密控制的方法,通过运用AT89S52单片机、模数转换器、水位模拟采集器、数码管显示、12V的三端稳压电路等硬件系统和软件设计方法,采用模拟水位传感器对模拟水箱的容器进行水位测量,实现具有水位检测和控制水位的双重功能,并对所需的水位值进行显示。
在本文中介绍了电路接口原理图,给出相应的软件设计流程图和汇编程序,并运用了Proteus仿真软件来进行仿真。
并在控制水位的过程中运用了自动反馈的系统的控制。
关键词:
单片机;水位检测;仿真;反馈控制
Microcontroller-basedwaterlevelcontrolsystemdesign
Abstract:
ThisarticlepresentsamicrocontrollerwaterlevelcontrolonthewaterlevelofprecisioncontrolmethodbyusingAT89S52MCU,ADC,thewaterlevelanalogcapture,digitaldisplay,12Vthree-terminalvoltageregulatorcircuit,suchashardwareandsoftwaredesignmethodsusingtheanaloglevelsensoronthesimulationoftankcontainersforwaterlevelmeasurement,dualfunctionwaterleveldetectionandcontrolofwaterlevelandwaterlevelvaluesfordisplay.Circuitinterfaceschematicsdescribedinthisarticle,giventheappropriatesoftwaredesignflowandassembler,andusetheProteussimulationsoftwaretosimulate.Useandcontrolthewaterlevelinthecontroloftheautomaticfeedbacksystem.
KeyWords:
Microcontroller;waterleveldetection;simulation;feedbackcontrol
前言
水位控制系统是以水位为被控参数的控制系统,它在工业生产的各个领域都有广泛的应用。
在工业生产过程中,有很多地方需要对容器内的介质进行水位控制,使之高精度地保持在给定的数值,水位控制系统的稳定对机器的使用寿命和产品的质量起着至关重要的作用。
水位控制一般指对某一水位进行控制调节,使其达到所要求的控制精度。
水位的自动控制,是近年来新开发的一项新技术,它是微型计算机软件、硬件、自动控制等几项技术紧密结合的产物,工程作业采用的是微机控制和原有的仪表控制,微机控制有以下明显优势:
1)直观而集中的显示各运行参数,能显示水位状态。
2)在运行中可以随时方便的修改各种各样的运行参数的控制值,并修改系统的控制参数,可以方便的改变水位的上限、下限。
3)具有控制过程的自动化处理以及监控软件良好的人机界面,操作人员在监控计算机上能根据控制效果及时修运行参数,这样能有效地减少工人的疲劳和失误,提高生产过程的实时性、安全性。
综合以上的种种优点可以预见采用计算机控制系统是行业的大势所趋。
单片机是在一块芯片上集成了一片微型计算机所需的CPU、存储器、输入、输出等部件。
单片机自问世以来,性能不断提高和完善,体积小、速度快、功耗低的特点使它的应用领域日益广泛。
一般,工业控制系统的工作环境差,干扰强,利用单片机控制就能克服这些缺点.而采用的AT89S52单片机构成水位控制装置,其具有精度高,易维护,简单操作,实用性好,且与容器的几何尺寸无关的优点,从而能使水箱在生产规定的运行中实现自动化控制,并且能最大可能的避免工伤事故发生的概率,同时也能节省资源并能有效的体改生产的效率。
因此单片机在控制领域得到广泛的应用,使用单片机控制水位是很好的选择。
第一章系统的总体方案概括
使用单片机实现水位控制的优点
使用单片机实现水位控制具有较高的实用价值和稳定性好等特点。
采用单片机内部程序控制的模拟水位传感器测量水位,可有效保证水位的自动控制,能更好地对水位进行自动化控制,避免了工作人员在现场进行检测操控,方便了人员对水位系统的控制,控制方便且系统稳定性能好;单片机不仅有体积小,安装方便,功能较齐全等优点,而且有很高的性价比,应用前景广,同时有助于发现可能存在的故障,通过微机实现给水系统的自动控制与调节,维持稳定系统,保证安全经济运行。
本文就是采用AT89S52单片机为核心芯片的一种水位控制系统,具有较高的实用价值和优越性。
本系统与PLC控制系统相比大大降低了使用成本,提高了控制运行速度。
根据仿真模拟运行的结果表明,该系统能很好的运行,将水位控制在给定的范围内,对过高和过低进行安全报警,稳定性能好,容易操作和控制,保证了生产的正常进行。
研究方案
本设计是采用AT89S52单片机为核心芯片,及其相关硬件来实现的水位控制系统,在用水位传感器测水位的同时,CPU循环检测传感器输出状态,并用四位数码管2481BS显示示水位高度,检测水位数据。
并且在设计中主要有水位检测、上下限位控制、A/D转换、数码管显示部分和反馈系统等几部分组成来实现水位控制。
我们采用单片机内部程序控制的模拟水位传感器测来探测模拟三个水位,即低水位,正常水位,高水位。
当水位低于用户设定的值时送给单片机一个高电平,系统自动打开泵上水,红灯亮;当水位到达设定值时,系统自动关闭水泵或打开排水泵。
其中在本设计中所需要设定的技术参数和设计任务有:
1、利用单片机AT89S52实现对模拟水箱进行水位的控制;
2、把单片机内部程序控制的模拟水位传感器模拟的水位值转化为电信号送给单片机,并通过A/D转换以实现对水位显示系统的控制和加水放水的控制;
3、数模转换及数码管显示系统电路,采用数码管2481BS显示模拟水位值来表示不同的水位情况;
4、水泵加水电路由继电器进行控制;
5、分析工作原理,绘出系统结构原理图及流程图。
1.3本课程设计系统概述
本系统由电源电路、模拟水位探测传感电路、稳压电路、单片机系统、蜂鸣器报警电路、继电器控制水泵加水电路、以及水箱模型组成。
其主原理图如下:
图1水位系统组成的原理图
当水位处于低水位的时候,传感器的低水位探测线没被+12V的电源导通进入稳压电路经过处理在稳压电路的输出端有一个高电平,送入单片机的P1.0口,另一个稳压电路输出的高电平进入单片机的P1.1口单片机经过分析,在P1.2口输出一低电平,驱动红灯亮,P出来一个信号使继电器得电,这样继电器闭合,使水泵加水;当水位处于正常范围内时,水泵加水,在P引脚出来一个低电平,使绿灯亮;当水位在高水位区时,传感器的两根探测线均被导通,均被+12V的电源导通,送入单片机单片机经过分析,在P继电器得电,这样继电器不能闭合,水泵不能加水;当三个灯同时闪烁表示系统出现故障。
本设计研究的水箱控制系统是简单控制系统,是使用的最普遍的、结构最简单的一种过程控制系统。
水箱给水设备系统结构图如图2所示:
图2水箱给水设备系统结构图
其中M1为给水泵机组,本设计中我用了继电器控制小电机的正反转来控制水位。
LG、LDD分别为单片机程序模拟水箱内部水位上限、水位下限,当水位高(大于90%)时,LG闭合,当水位低(低于75%)时,LD闭合,当水位低(小于50%)时,LDD闭合。
水箱的控制器由AT89S52系统构成。
当水位过高或者过低时,有AT89S52单片机的27脚,也就是P26口输出低电平通过三极管8550打开蜂鸣器报警。
蜂鸣器输出通过继电器,控制水泵机组的起停和报警,其电路图如下:
图3水箱控制器蜂鸣器报警电路
小结:
在这个方案中我使用了单片机处理,单片机技术是信息时代用于精密测量的新技术。
此系统使用过程中采用的12V稳压电路能够准确地把输入的电平送给单片机而不会产生误判,AT89S52单片机有四端口,40个引脚能够非常方便地设计显示系统。
通过微机实现给水系统的自动控制与调节,维持稳定系统。
本文采用AT89S52单片机为核心芯片的一种水位控制系统,具有较高的实用价值和优越性。
第二章系统各种控制器简介
AT89S52单片机简介
AT89S52为ATMEL生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统的可编程Flsah存储器。
AT89S52——低功耗高性能CMOS8位单片机,片内8kBytesISP(In-systemprogrammable)的可反复擦写1000次的FLASH只读程序存储器,器件采用ATMEL公司之高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚的类似功能结构,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
单芯片上,拥有8位CPU及在系统可编程FLASH,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效之解决方案。
AT89S52之特点:
40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
AT89S52——低电压高性能CMOS8位单片机,片内8kbytes的可反复擦写的FLASH只读程序存储器及256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器及FLASH存储单元,功能强大之AT89S52单片机可为您提供许多较复杂系统控制之应用场合。
AT89S52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89S52可按照常规方法进行编程,亦可在线编程。
其将通用之微处理器及Flash存储器结合,特别是可反复擦写的FLASH存储器可有效降低开发成本。
AT89C52及AT89S52之别,在于C及S,C表示需用并行编程器下载(接线多且复杂),S表示可支持ISP下载,可在89S52系统板上面预留ISP下载接口,AT89S52引脚如图4所示:
图4AT89S52引脚图
在本系统中AT89S52单片机所运用到的引脚具体控制如下:
1)其中P0口——8位漏极开路之双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
访问外部程序和数据存储器时,P0口亦被作为低8位地址/数据复用。
在这种模式下,P0不具有内部上拉电阻。
在FLASH编程时,P0口亦用来接收指令字节;在程序校验时,输出指令字节。
程序校验时,需外部上拉电阻。
P0.0:
AT89S52单片机控制电机加水提示端口信号。
P0.1:
AT89S52单片机控制电机抽水提示端口信号。
P0.2:
AT89S52单片机控制电机停止提示端口信号。
2)P1口和P3口为输入输出水位检测信号和控制信号。
~P1.7:
P1口8位准双向I/O口,占1~8脚;~P3.7:
P3口8位准双向I/O口,占10~17脚;当水位处于低水位的时候,单片机模拟控制的水位控制端口被+12V的电源导通进入稳压电路经过处理在稳压电路的输出端有一个高电平,送入单片机的口,另一个稳压电路输出的高电平进入单片机的口单片机经过分析,在口输出一低电平,驱动单片机加水信号,出来一个信号使继电器得电导通,这样继电器闭合,使水泵加水;当水位处于正常范围内时,水泵加水,在引脚出来一个低电平驱动单片机稳定水位信号;当水位在高水位区时,单片机模拟传感器的两个端口均被导通,均被+12V的电源导通,送入单片机,单片机经过分析,在引脚出来一个低电平,驱动单片机放水信号,在端出来一个低电平不能使继电器得电导通,这样继电器不能闭合,水泵不能加水。
P1口——有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可作输入口用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可作输入口用。
作输入用时,被外部拉低的引脚因内部电阻,将输出电流(IIL)。
此外,及分别作定时器/计数器2之外部计数输入()及时器/计数器2之触发输入(P)。
在flash编程及校验时,P1口接收低8位地址字节。
P1.0:
T2(定时器/计数器T2的外部计数输入),时钟输出。
在本设计中用于M1正转启动KM1控制输出信号。
P1.1:
T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)。
在本设计中用于M1反转启动KM1控制输出信号。
P1.2:
加水过程中的M1开关状态输入信号。
(开0,关1)
P1.3:
放水过程中的M1开关状态输入信号。
(开0,关1)
3)P3口——有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可用作输入口。
作输入用时,被外部拉低的引脚因内部电阻之原因,将输出电流(IIL)。
P3口亦作为AT89S52特殊功能(第二功能)用,在FLASH编程及校验时,P3口亦接收些控制信号。
此外,P3口亦接收些用于FLASH闪存编程及程序校验的控制信号。
P3.0:
RXD(串行输入口),在本设计中用于水位低时的输入信号。
(低0高1)
P3.5:
T1(定时/计数器1),在本设计中用于水位低时的输入信号。
(低0高1)
P3.2:
INTO(外中断0),在本设计中用于水位高时的输入信号。
(高1,低0)
P3.1:
TXD(串行输出口),在本设计中用于手动稳定水位时的输入信号。
P3.3:
INT1(外中断1),在本设计中用于加水过程中的手动停止输入信号。
P3.4:
TO(定时/计数器0),在本设计中用于放水过程中手动停止输入信号。
4)RST——复位输入。
振荡器工作时,RST引脚有两个机器周期以上高电平将是单片机复位。
:
AT89S52的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S52便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
5)电源及其它的引脚的作用:
VCC(40脚):
AT89S52电源正端输入,电源端+12V。
GND(20脚):
接地端。
VSS:
电源地端。
XTALl、XTAL2(19~18脚):
时钟电路引脚。
当使用内部时钟时,这两个引脚端外接石英晶体和微调电容。
当使用外部时钟时,用于外接外部时钟源。
XTAL1:
单芯片系统时钟的反相放大器输入端。
XTAL2:
系统时钟的反相放大器输出端,一般在设计上只要在XTAL1和XTAL2上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一20PF的小电容,可以使系统更稳定,避免噪声干扰而死机。
6)其中的AT89S52主要功能如下:
1.拥有灵巧的8位CPU和在系统可编程Flash
2.晶片内部具时钟振荡器(传统最高工作频率可至12MHz)
3.内部程序存储器(ROM)为8KB
4.内部数据存储器(RAM)为256字节
5.32个可编程I/O口线
6.8个中断向量源
7.三个16位定时器/计数器
8.三级加密程序存储器
9.全双工UART串行通道路的输入
10.XTAL2:
来自反向振荡器的输出。
2.2ADC0809集成芯片简介
ACDC0809位8路A/D转换集成芯片。
可实现8路模拟信号的分时采集,片内有8路模拟选通开关,以及相应的通道地址锁存用译码电路,其转换时间为100us左右。
ADC0809芯片为28引脚双列直插式封装,其引脚排列见图5。
图5ADC0809引脚排列图
IN0~IN7:
模拟量输入通道信号单极性,电压范围0-5V,若信号过小还需进
行放大。
ADDA、ADDB、ADDC:
地址线A为低位地址,C为高位地址。
ALE:
地址锁存允许信号。
对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。
START:
转换启动信号。
START上跳沿时,所有内部寄存器清“0”;START下跳沿时,开始进行A/D转换;在A/D转换期间,START应保持低电平。
本信号有时简写为ST。
D7~D0:
数据输出线。
OE:
输出允许信号。
用于控制三态输出锁存器向单片机输出转换得到的数据。
OE=0,输出数据线呈高电阻;OE=1,输出转换得到的数据。
CLK:
时钟信号。
ADC0809的内部没有时钟电路,所需时钟信号由外界提供。
通常使用频率为500kHz的时钟信号。
EOC:
转换结束信号。
EOC=0,正在进行转换;EOC=1,转换结束。
使用中该状态信号既可作为查询的状态标志,又可以作为中断请求信号使用。
VCC:
+5V电源。
VREF:
参考电源。
参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。
其典型值为+5V(VREF(+)=+5V,VREF(=0V))。
2.3集成电路74HC245简介
74HC245是一种三态输出的8总线收发驱动器,无锁存功能。
图6是74HC245的引脚图;图7是74HC245的功能表。
它的G端和DIR端是控制端,当它的G端为低电平时,如果DIR为高电平,则74HC245将A端数据传送至B端;如果DIR为低电平,则74HC245将B端数据传送至A端。
在其他情况下不传送数据,并输出高阻态。
图674HC245的引脚图图774HC245的功能表
2.4集成电路LM324简介
LM324是四运放集成电路,它采用14脚双列直插塑料封装,外形如图8所示。
它内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。
11脚接负电源,4脚接正电源。
图8LM324电路符号与管脚图
LM324为四运放集成电路,采用14脚双列直插塑料封装。
,内部有四个运算放大器,有相位补偿电路。
电路功耗很小,LM324工作电压范围宽,可用正电源3~30V,或正负双电源±1.5V~±15V工作。
它的输入电压可低到地电位,而输出电压范围为O~VCC。
它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互单独。
每一组运算放大器可用如图所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。
两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的相位相反;Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。
LM124、LM224和LM324引脚功能及内部电路完全一致。
LM124是军品;LM224为工业品;而LM324为民品。
由于LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等特点.因此他被非常广泛的应用在各种电路中。
每一组运算放大器可用上图所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。
两个信号输入端中,Vi-(-)为反相输入端,表示运放输出端Vo的信号与该输入端的相位相反;Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。
2.5.89S52驱动4位共阳极数码管
用AT89S52驱动4位共阳极数码管(2481BS),数码管的段引脚接P1口,加100欧的限流电阻;数码管的位引脚由P2口的1-4脚通过80接数码管的dp--a,就可以驱动。
P0输出低电平点亮数码管。
2481BS如图所示:
图92481BS数码管
图102481BS数码管共阳极引脚图
2.6关于水位控制过程中的负反馈系统的运用
自动控制理论也被称为负反馈控制理论。
首先检查系统接线,确定系统的反馈为负反馈。
例如电机调速系统,输入信号为正,要求电机正转时,反馈信号也为正(PID算法时,误差=输入-反馈),同时电机转速越高,反馈信号越大。
其余系统同此方法。
在本设计模拟水箱的水位控制部分,采用了一套闭环负反馈控制系统。
闭环控制系统(closed-loopcontrolsystem)的特点是系统被控对象的输出(被控制量)会反送回来影响控制器的输出,形成一个或多个闭环。
闭环控制系统有正反馈和负反馈,若反馈信号与系统给定值信号相反,则称为负反馈(NegativeFeedback),若极性相同,则称为正反馈,一般闭环控制系统均采用负反馈,又称负反馈控制系统。
其控制原理图如下。
图11负反馈系统控制原理图
这是单回路水箱液位控制系统,单回路调节系统一般指在一个调节对象上用一个调节器来保持一个参数的恒定,而调节器只接受一个测量信号,其输出也只控制一个执行机构。
本系统所要保持的恒定参数是液位的给定高度,即控制的任务是控制水箱液位等于给定值所要求的高度。
根据控制框图,这是一个闭环反馈单回路液位控制。
其中控制阀接受控制器输出的控制信号,通过改变阀的开度来达到控制流量的目的,并通过液位变送器将对比于设定的液位值的偏差反馈给给定值。
当设定值小于当前值时,电机正转,模拟电磁阀打开,系统进水;当设定值等于当前值时,系统结束;当设定值大于当前值时,电机反转,模拟电磁阀打开,系统放水。
第三章系统硬件设计
3.1单片机最小系统电路设计
图12AT89S52单片机最小系统
1、要使单片机工作起来,最基本的电路的构成为注意:
EA/VP(31脚)接+5V。
2、电源电路:
向单片机供电。
单片机电源:
AT89S52单片机的工作电压范围:
4.0V—5.5V,所以通常给单片机外接5V直流电源。
连接方式为VCC(40脚):
接电源+5V端VSS(20脚):
接电源地端。
3、RST——复位输入。
振荡器工作时,RST引脚有两个机器周期以上高电平将是单片机复位。
复位电路用来确定单片机工作的起始状态,完成单片机的启动过程。
单片机接通电源时产生复位信号,完成单片机启动,确定单片机起始工作状态。
手动按键产生复位信号,完成单片机启动,确定单片机的初始状态。
通常在单片机工作出现混乱或“死机”时,使用手动复位可实现单片机“重启”。
4、时钟电路:
单片机工作的时间基准,决定单片机工作速度。
时钟电路就是振荡电路,向单片机提供一个正弦波信号作为基准,决定单片机的执行速度。
AT89S52单片机时钟频率范围:
0—33MHz。
传感器是把一种物理量(或化学量、生物量)转换成另一种与之有确定对应关系的物理量(通常是电量)的装置。
它是测量系统中最重要的环节。
在现代科技
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 AT89S52 单片机 水位 控制系统 设计