基于单片机的液位控制系统设计的毕业设计论文.docx
《基于单片机的液位控制系统设计的毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的液位控制系统设计的毕业设计论文.docx(17页珍藏版)》请在冰豆网上搜索。
![基于单片机的液位控制系统设计的毕业设计论文.docx](https://file1.bdocx.com/fileroot1/2023-5/26/7e4f163f-73da-432a-a286-22da631b9de1/7e4f163f-73da-432a-a286-22da631b9de11.gif)
基于单片机的液位控制系统设计的毕业设计论文
基于单片机的液位控制系统设计的-毕业设计论文
基于单片机的液位控制系统设计的-毕业设计论文摘要本课题是基于单片机的液位控制系统的设计,使用在日常生活和工业应用中广泛应用的水塔作为被控装置,水塔液位和水压作为被控对象;本设计采用液位检测装置和电容式差压变送器对液位高度和压力进行实时检测并传送到单片机进行实时处理,从而使水塔水位自动保持在指定的范围。
其中,液位控制系统的硬件电路主要包括水位和水压检测电路、A/D转换电路、键盘显示电路、报警电路、电机控制电路等五大部分;该系统使用电容式差压变送器对水塔水压进行检测并将检测到的信号送给A/D转换器,A/D转换器将对应的模拟电压信号转换成数字量传给单片机AT89C51进行处理,单片机将处理的结果通过数码管显示出来,并完成对排水、抽水电动机的控制;在单片机进行实时处理的同时,可以通过按键对控制系统进行相应的功能切换。
该系统各个部分的硬件电路采用C51语言编写控制程序,从而实现使用键盘调整被控参数水压的上、下限以及软件复位功能;利用四位一体共阴极数码管显示水压;通过逻辑代码达到对电机控制电路的控制,使电机在一定的条件下进行抽水或者排水操作;最终使被控对象被控制在指定的水位和水压范围内。
在将系统的硬件电路设计和软件程序设计完成后,需要将硬件电路部分和软件程序部分结合起来进行液位控制系统的调试,如果发现问题,就需要找到合适的解决方案,修改错误的部分;并且将这两者结合进行液位控制系统仿真结果的测试,观察实验的结果是否符合课题的设计要求,不然修改不符合课题要求的部分,最终达到液位控制系统的课题目标。
关键词:
AT89C51单片机;A/D转换;液位控制IAbstractThistopicisthedesignofcontrolsystembasedonsingle-chipliquidlevelcontrol,usingthetowerasacontrolleddevicewhichisoftenseenindailylifeandindustrialapplication,theliquidlevelofthewatertowerandwaterpressureastheobject;thisdesignusestheliquidleveldetectiondeviceandcapacitivedifferentialpressuretransmittertomonitortheliquidlevelandpressureandreal-timeprocessing,sothatthewaterlevelautomaticallykeepsinthespecifiedrange.Thehardwarecircuitofcontrolsystemmainlyhasfiveparts,whichincludeswaterpressureandliquidleveldetection,A/Dconverter,keyboarddisplaycircuit,alarmcircuit,motorcontrolandsoon;thesystemusescapacitivedifferentialpressuretransmittertodetectthetowerpressureandthedetectedsignalissendedtotheA/Dconverter;A/DconverterwillconvertthisanalogvoltagesignalsintodigitalsignalswhichsendtotheAT89C51single-chip,andthemicro-controllerprocessestheresults,whichcanusethenixietubestodisplay,andaccomplishthecontrolofdrainageandpumpingmotor;Atthesametimeofreal-timeprocessingintheSCM,thecorrespondingbuttoncanswitchtodifferentfunctionsofthecontrolsystem.EachpartofthehardwarecircuitofthesystemusesC51languagetoprogram,soastorealizetheuseofthekeyboardtoadjustthecontrolledparametersofupperandlowerlimitpressure;usingoneofLEDtodisplaythepressure,throughthelogiccodetocontrolthecontrolcircuitofthemotor,themotorwillpumpordrainunderacertaincondition;ultimatelythewaterpressureandwaterpressurewillbecontrolledinaspecifiedrange.Afterthedesignofhardwarecircuitandsoftwareprogram,debuggingliquidlevelcontrolsystemcombininghardwarewithsoftwarepartisneeded;iferrorsarefound,findtherightsolution,modifythewrongpart;alsothiscombinationofliquidlevelcontrolsystemsimulationresultsneedtest,andobservetheexperimentalresultswhetherornottheseresultsareinconformitywiththerequirementsoftheprojectdesign;Otherwise,modifyingthepartthatdoesnotmeettherequirementsoftheproject,andultimatelytheaimofliquidlevelcontrolsystemwillbeachieved.Keywords:
AT89C51singlechipmicro-controller;A/Dconversion;liquidlevelcontrolII目录摘要IAbstractII第1章绪论11.1课题的意义11.2国内外的研究动态21.3课题的目的和预期目标3第2章系统整体方案设计4第3章硬件电路设计63.1AT89C51单片机63.1.1单片机的功能和特点63.1.2时钟和复位电路83.2水位检测电路和水压检测电路93.2.1水压检测电路以及控制仪表93.2.2水位检测电路103.3A/D转换设计113.3.1A/D转换器介绍113.3.2A/D转换电路133.4数码管显示和键盘电路143.4.1键盘电路143.4.2数码管显示电路153.5报警电路173.6电机控制18第4章软件设计194.1软件语言的选择194.2系统主程序和初始化函数194.3A/D转换和水压的数据处理204.4延时处理214.5键盘部分的软件设计244.5.1按键去抖动244.5.2按键功能实现264.6显示部分的软件设计264.7水位监测和报警电路的软件设计274.8驱动电路的软件设计28第5章系统调试与仿真结果295.1系统调试295.2仿真结果305.2.1水压仿真测试305.2.2水位仿真测试31第6章结论32参考文献33致谢34附录35IV沈阳工业大学本科生毕业设计第1章绪论1.1课题的意义随着很多行业对液位控制的需求日益增加,液位和液压控制技术正在不断发展。
为了增加控制功能、提高生产效率,采用AT89C51单片机进行液位和液压的控制技术得到了广泛的应用。
不论是在工业生产过程中,还是在农业和其他行业生产过程中,水塔都是生产生活中不可或缺的控制装置设备,所以水塔的液位控制就是我们面临的严峻问题之一。
在我国液位技术需求迅猛上升之前,液位的控制需要人来进行看管,这不但降低了劳动生产率,而且还不能高效和精确地将水位和水压控制在一个指定的范围内。
正因为这些各种方面的原因,所以采用单片机控制水塔的水位和水压的控制方案就达到了这一基本要求,并且解决了这一重要问题。
液位控制作为过程控制研究领域重要的课题之一,它不仅在生产生活中占有相当大的比例,而且人们对液位控制的需要和要求越来越多,多功能的液位控制系统就为了满足这一情况而进行设计的。
多功能的液位控制相比较传统的机械液位控制系统有无可比拟的优势;首先,多功能的液位控制系统在功能上比机械液位控制系统要多了不少,不仅是传统意义上的液位控制而已,还增加了水压的显示显示功能和键盘对液压的控制切换功能;其次,多功能的液位控制系统在控制速度上比机械液位控制系统要快了不少,机械液位控制系统依靠传统的机械杠杆进行移动产生位移会有一定的机械延迟,从而增加了滞后时间,然而采用单片机进行液位控制的系统使用了A/D转换器,采样频率相较于机械液位控制系统较高,可以对液位控制系统进行快速控制;再次,机械液位控制系统需要进行零点值和满度值进行反复的调整[1],而多功能的液位控制系统不用对其进行反复的调整,只要进行过零点调整,就无需进行反复设置;最后,多功能的液位控制系统无需人为手动的调整液位,直接通过控制电机达到控制液位的效果,相较于机械液位控制系统节省了劳动力成本,同时提高了生成过程中控制的效率。
多功能的液位控制系统将使用AT89C51单片机作为核心处理器,方便对整个液位控制系统的调度和操作,它具有一定的可靠性、稳定性和准确性。
使用单片机实现多功能的液位控制系统不仅可以减少简单液位控制的控制成本,而且可以提高用户的可操作性,方便用户对液位控制系统的控制。
因此本课题采用AT89C51单片机控制水塔的液位相比于以前的控制方式将会有更大的性能和控制操作的提升。
目前,虽然市场上的液位控制系统种类繁多,但是掌握液位控制系统关键核心技术对我们有很多好处,有助于我们更有效率和安全地进行生产生活,而且,对液位变化进行分析并采集大量数据,找出数据经常变化的位置,这些数据将会帮助我们实现更加快速和稳定的控制系统。
1.2国内外的研究动态很多欧美的发达国家在液位控制系统的设计中,特别是液位控制系统,已经积累了很多的经验,具有坚实的基础,所以欧美的发达国家的液位控制系统迅速占领了国际市场。
我国在液位控制系统的研究和制造上,与其他发达国家相比还存在一定差距;但是,我们国家的研究人员在液位控制系统研究的道路上克服了许多未知困难,在探索中不断前进,希望在相关封锁的技术领域有所突破,甚至超过发达国家的控制技术水平使我国的液位控制技术领先于全世界。
然而,在液位控制系统中,液位测量是液位控制技术非常重要的一项步骤,依据测量的工作原理,液位测量分为直读式液位测量、浮力式液位测量、电气式液位测量等。
直读式液位测量是利用连通器的原理测量液位,浮力式液位测量利用浮力原理测量液位,分为恒浮力和变浮力两种[2]。
电气式测量法测量液位是将液位的变化转换为某些电量的变化,从而实现液位检测;一般,把敏感元件做成的杆状电极置于被测物质中,则电极的电气参数,随着液位的变化而变化;电气式测量液位又分为电极式、电容式、电感式等[3]。
除了液位测量以外,液压的测量也是液位控制技术不可缺少的部分,测量压力一般使用差压变送器,可以将4—20mA的电流远传到控制室,方便对控制装置的统一管理。
国外发达国家的控制方式已经由集散控制系统发展到了现场总线技术,现场总线技术的发展使得自动化控制技术发生了变革。
信息技术现在正融入到生产现场,新型的现场总线技术克服了系统封闭带来的缺陷,提高了信号测量准确度和传输精度,同时可以进行多种复杂的控制运算,提高系统的可靠性。
不仅如此,现场总线技术还便于操作管理人员更好、更深入地了解生产现场和自动控制装置的运行状态。
1.3课题的目的和预期目标本课题是通过单片机作为系统核心达到控制液位的目的。
本设计采用液位检测装置和电容式差压变送器对液位高度和压力进行实时监控并进行实时处理,从而使水塔水位自动保持在指定的范围。
其中,液位控制系统的硬件电路主要包括水位和水压检测电路、A/D转换电路、键盘显示电路、报警电路、电机控制电路等五大部分;该系统使用电容式差压变送器对水塔水压进行检测并将检测到的信号送给A/D转换器,A/D转换器将对应的模拟电压信号转换成数字量传给单片机AT89C51进行处理,单片机将处理的结果通过数码管显示出来,并完成对排水、抽水电动机的控制;在单片机进行实时处理的同时,可以通过按键对控制系统进行相应的功能切换。
本设计的模型是基于水塔控制装置,以1m的水塔的液位和液压作为被控对象,液位范围是(0-100cm),液压范围是(0-9980Pa),实现液位和液压被控制在指定的范围内。
本系统的软件部分采用C51语言编写控制程序,从而实现使用键盘调整被控参数水压的上、下限以及软件复位功能;利用四位一体共阴极数码管显示水压;通过逻辑代码达到对电机控制电路的控制,使电机在一定的条件下进行抽水和排水操作;最终使被控对象被控制在指定的水位和水压范围内。
本课题的水位控制技术采用液位传感器和压力传感器对液位高度和压力进行实时监控;预期目标是:
当水位和压力超出规定范围时,系统能够自动调整水位和水压,使其落在规定的范围内;当水位和水压低于规定范围时,就控制水泵工作抽水,使水塔内的水位和水压上升,到达规定高度。
而达到不用人工专门去控制即可使水位保持在一定范围内的目的。
第2章系统整体方案设计在生产生活中有很多种方式可以对液位和液压进行控制,但是使用比较常见的有两种控制方式,一个是基于机械的简单控制方法,另一个是基于控制器的复杂控制方法。
现在介绍这两种控制方式的区别和原理。
(1)基于机械的简单控制方法。
可以使用的实现方式有浮标式、电极式等,基于机械的简单控制方式的优点是结构简单、成本低。
但是缺点也很明显,就是精度低、不能进行数据实时显示;另外,这种控制方式很容易引起误操作,且只能单独控制,不能与其他的计算机进行数据交换,难以实现数据的采集和数据的分析以及对数据处理后的控制[4]。
图2-1单片机液位控制系统框图
(2)基于控制器的复杂控制方法。
基于控制器的复杂控制方法是通过安装在水塔下方安装差压变送器,把水塔底部的压力首先转换成变极距位移值的变化,然后再转换成电阻、电容等电量值的变化,再经过一些电路的处理,将这些电量值的变化转换成标准电压信号或者是电流信号,再经过多路切换、A/D转换器将模拟信号变换成数字信号送到单片机,然后单片机对数据进行运算和处理[5],通过相应的逻辑实现单片机端口信号的变化,实现改变外围装置状态的变化,最终达到控制水塔液位和液压在指定范围内的目的。
针对以上描述的两种控制方法,以及综合考虑本设计需要达到目的和要求。
本设计选择第二种基于控制器的复杂控制方法进行液位和液压的控制,并且对其加以改进。
最终构成的控制方案如图2-1所示,本液位控制系统由单片机AT89C51、数码管显示器、报警器、键盘、变送器和其它基本外围装置组成。
使用单片机作为液位控制系统的核心,设计出了一个对供水塔液位和液压进行实时监测的系统。
实时检测水塔的液位高度和液压的变化,将来自传感器测量液压和液位的信号经过AD转换或者测量电路的处理后送到单片机再进行控制处理,由单片机控制外围装置,实现排水电机、抽水电机以及报警器等外围装置进行实时动作,达到对水塔的液位高度和液压的调整,最终达到水塔的液位高度和液压保持在要求的指定范围内。
除此之外,本设计实时显示测量的液压值,从而实现对水塔水位的实时监测。
同时可以利用键盘输入需要控制液压的上、下限和实现其他的控制功能。
第3章硬件电路设计液位控制系统的硬件主要由AT89C51单片机,水位检测电路,水压检测传感器(使用变送器),报警电路,数码管显示电路,键盘输入电路,电动机控制电路,AD0809转换器等组成。
下面对各部分硬件电路进行详细介绍。
3.1AT89C51单片机3.1.1单片机的功能和特点单片机采用由ATMEL公司生产的双列40脚AT89C51芯片,芯片引脚如下图3-1所示。
其中,P0口用于A/D转换;P1口作为数码管的段选信号;P2口的低四位给数码管提供位选信号,高四位用于连接键盘;P3口用于控制水泵的动作,并且用于控制A/D转换的启动和停止,控制报警器以及用于读取液位等。
下面具体介绍各个接口的功能和特点。
图3-1AT89C51单片机引脚图P0口:
单片机P0口有两种使用方式,第一种是作为通用的I/O口使用,用于传送单片机的输入输出数据,此时的输出可以得到缓存,输入的数据可以得到缓冲,保证了数据输入输出的可靠性[6]。
第二种是连接外部的存储器,通过和单片机的P2口结合起来使用,单片机就可以访问外部存储设备的数据,可以对其进行读写操作[7]。
P1口:
单片机的P1口第一种使用方式和P0口一样;P1口的第二种使用方式是作为8751编程/校验用于ROM的低8位地址。
P2口:
单片机的P2口第一种使用方式和P1口一样;P2口的第二种使用方式是和P0口结合起来使用,作为访问片外存储器的高8位地址中的数据。
表3-1AT89C51端口引脚的第二功能端口号第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INTO(外中断0)P3.3INT1(外中断1)P3.4TO(定时/计数器0)P3.5T1(定时/计数器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)P3口:
单片机P3口的第一种使用方式和P1口一样;第二种使用方式是作为第二功能使用,每一个引脚都有各自的功能,可以作为控制液位控制系统的外围装置使用,如表3-1所示。
RST:
复位引脚。
当振荡器工作时,RST引脚出现两个机器周期以上高电平,这些加到RST引脚的高电平会使AT89C51单片机复位。
ALE/PROG:
地址锁存引脚。
ALE引脚配合单片机的P0口的第二种使用方式工作。
在访问外部存储器时,单片机除了在P0口输出存储器的地址,还在ALE引脚上输出一个高电平;在没有访问外部存储器的情况下,单片机在ALE引脚输出1/6时钟频率的脉冲。
PSEN:
外部程序存储器的读选通引脚。
EA/VPP:
外部访问允许引脚。
EA=1,访问片内存储器;EA=0,访问外部存储器。
3.1.2时钟和复位电路1.时钟电路如图3-2所示,左边的电路图是单片机的片内振荡电路输入线。
XTAL1和XTAL2连接石英晶体和微调电容,同时连接单片机的片内振荡器的定时反馈回路。
石英晶振起振后,在XTAL2线上输出一个3V左右的正弦波,以使单片机的片内OSC电路按晶振同频率自激振荡。
电容C1和C2帮助起振,调节这两个电容的电容值以达到微调时钟频率的目的[8]。
图3-2复位电路及时钟电路
(2)复位电路复位电路可以分为上电复位和手动按键复位两种。
单片机上电复位的原理是,在系统上电的一瞬间,利用电容两端的电压不能发生突变,在一上电的瞬间电容如同短路,加在RST引脚的电平是高电平,虽然时间很短,但足以让单片机复位[9]。
手动按键复位的原理是,在系统正常工作的过程中可以手动触动按键使单片机复位。
按下按键,5V的电压经过一个200欧姆的电阻分压后加到系统的RST上,手动按键按下到抬起的过程足以使系统复位[10]。
图3-2中网络标号RST连接单片机RST引脚,同时具有上述的两种功能。
3.2水位检测电路和水压检测电路3.2.1水压检测电路以及控制仪表1.电容式差压变送器简介该变送器采用差动电容作为检测元件,完全没有机械传动机构和机械调整装置,抗震性好、准确度高,静压误差小,其可靠性、稳定性都较高,仪表准确度为0.25-0.5级[11]。
由于变送器采用集成放大器和现代电子工艺,参数调整通过电路完成,简单方便,且零点调整和量程调整互不影响。
图3-3电容式差压变送器实物图电容式差压变送器使用变极距的方法测量压力差,实物图如图3-3所示。
它是将被测压力差引起的弹性元件的变形转变成电容量的变化,通过测量电容量的变化,便可知道被测压力差大小。
隔离膜片集成运放测量电路活动电极输入差压输出电流位移电压电容变化图3-4电容式差压变送器原理图变送器原理如图3-4所示,从输入电压到电容变化是检测部分,从电容变化到输出电流是转换部分。
由检测部分的差动电容膜盒把被测压力差转换成电容量的变化,经转换部分把电容量的变化转换为电压,再由运算放大器将电压转换成4-20mA标准信号输出。
3.2.2水位检测电路水位检测电路结合了电路和机械两个部分,其中电路部分如图3-5所示,主要是通过一个开关来检测水位的位置,当开关闭合时,说明水位到达指定的水位,对应单片机的P3.6或P3.7引脚检测的电压是低电平;如果开关断开,表明水位没有到达指定的位置,对应单片机的P3.6或P3.7引脚检测的电压是高电平。
图3-5水位检测电路机械部分是根据水的浮力使浮球漂浮,从而使浮球产生位移,达到触碰开关,实现电路部分开关的开、闭两种状态;通过在液位控制装置上设置浮球的位置,可以得到想要液位范围,使水位保持指定的范围内。
3.3A/D转换设计3.3.1A/D转换器介绍1.ADC0809转换器概述A/D转换器是液位控制系统中最为重要的一个电子元件,它可以将模拟信号转换成数字信号,变成单片机可以处理的数字信息。
本设计考虑到液位控制系统进行A/D转换的各种要求,决定采用ADC0809进行A/D转换电路部分的设计,使用这种逐次逼近式A/D转换器转换速度比较图3-6ADC0809引脚图快,造价成本比较低,可以满足测量水压的要求;ADC0809使用起来也比较简单,可以进行多路的模拟信号的转换,通过改变模拟信号输入地址就可以实现这一功能;单片机只需要提供一个数据接收端口和少量的控制端口就可以对该芯片进行控制和接收信号。
ADC0809的引脚图如图3-6所示。
单片机可以通过对与其连接的ADC0809转换器的端口进行读取操作,通过ADC0809将输入的模拟数据,处理成数字信号输出,