计算机控制课程设计水位自动控制装置的设计.docx

上传人:b****6 文档编号:13766647 上传时间:2023-06-17 格式:DOCX 页数:20 大小:548.66KB
下载 相关 举报
计算机控制课程设计水位自动控制装置的设计.docx_第1页
第1页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第2页
第2页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第3页
第3页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第4页
第4页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第5页
第5页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第6页
第6页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第7页
第7页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第8页
第8页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第9页
第9页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第10页
第10页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第11页
第11页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第12页
第12页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第13页
第13页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第14页
第14页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第15页
第15页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第16页
第16页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第17页
第17页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第18页
第18页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第19页
第19页 / 共20页
计算机控制课程设计水位自动控制装置的设计.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机控制课程设计水位自动控制装置的设计.docx

《计算机控制课程设计水位自动控制装置的设计.docx》由会员分享,可在线阅读,更多相关《计算机控制课程设计水位自动控制装置的设计.docx(20页珍藏版)》请在冰点文库上搜索。

计算机控制课程设计水位自动控制装置的设计.docx

计算机控制课程设计水位自动控制装置的设计

成绩

课程设计说明书

课程设计名称:

计算机控制技术

题目:

水位自动控制装置的设计

学生姓名:

专业:

电气工程与自动化

学号:

指导教师:

郭秀丽

日期:

2013年12月18日

摘要:

随着微电子技术的快速发展,单片机控制的智能型控制器件广泛应用于电子产品中,为了达到对单片机控制器进一步层次学习和掌握,经过综合分析系统选择了由STC89C51单片机为处理单元,完成液位智能控制功能。

液位自动控制是通过控制开关阀的开关来控制液位的高低,当传感器检测得到液位高度设定值,阀门关闭,防止液体溢出;当检测液位低于设定值时,阀门打开,使液位上升,从而达到控制液位的目的。

通过对系统设计的分析、方案论证和选择、系统模块设计到最后系统的完善和调试,系统能按照要求能完成液位高度控制功能,运行情况稳定。

关键词:

单片机,智能控制,开关阀,液位高度

Abstract:

Withtherapiddevelopmentofmicroelectronicstechnologyandsingle-chipmicrocomputercontrolofintelligentcontroldevicesarewidelyusedinelectronicproducts,inordertoachievefurtherlevelofsinglechipmicrocomputercontrollertolearnandmaster,aftercomprehensiveanalysissystemchosenbytheSTC89C51microcontrollerastheprocessingunit,completethelevelofintelligentcontrolfunction.Liquidlevelautomaticcontrolisthroughthecontrolofswitchvalveswitchtocontroltheliquidlevelheight,whenthesensordetectsthelevelofvalue,thevalveclosed,topreventliquidoverflow;Whentestingliquidlevelislowerthanthesetvalue,thevalveisopened,theliquidlevelrise,soastoachievethegoalofcontrollevel.Throughtheanalysisofthesystemdesign,schemecomparisonandselection,systemmoduledesigntothefinalsystemtoimproveanddebugging,thesystemcancompleteliquidlevelheightcontrolfunction,accordingtotherequirementscanruninastablecondition.

Keywords:

singlechipmicrocomputer,intelligentcontrol,on-offvalves,liquidlevelheight

目录:

前言:

系统基于STC12C5A60S2单片机为处理器,完成液位检测、显示和控制功能。

通过电子式水位开关和搭配的水位控制器(SY-9411L-D)来控制,电子式水位开关原理是通过电子探头对水位进行检测,再由水位检测专用芯片对检测到的信号进行处理,当被测液体到达动作点时,芯片输出高或低电平信号,再配合水位控制器,从而实现液位高度控制。

这种控制器较注重水位探头的功能,不只是拿普通的金属棒作探头,不需浮球和干簧管,外部无机械动作,耐污耐用,不怕漂浮物影响,该种水位控制器有较强的耐污能力和较强的防波浪功能,适宜长时间浸在水中,工作电压是直流5-24V,很安全。

通过浮球开关来控制水位。

基本上有两种方式:

一种是浮球开关带着一个大的金属球,浸在水中时浮力大,可以控制两个水位,比如水满了,浮球因为浮力而上升,带动球阀运动,使阀门关闭,停止进水,当水少了,浮球下降,阀门打开,又再进水,如此循环。

这种方式较多应用在煮开水器和卫生间的冲水器上。

第二种是电缆式浮球开关,该装置通过一弹性电线与水泵连接,可用于水塔、水池水位高低的自动控制和缺水保护,允许接的用电器是220V,10A左右,平衡锤或弹性电线的某一固定点到浮筒间的电线长度,决定水位的高低。

这种水位开关价格便宜,对于一些要求不太严格的场合适用,有一定耐污能力。

但存在这样的问题:

浮球易受外界杂物影响其稳定性,特别是纤维状的杂物缠绕而有失误,同一小水箱里不宜使用多个,否则会相缠绕。

使用寿命相对短些,而且多数直接接到220V,存在一定的安全隐患,终有一天因为电线破损而漏电伤人。

所以电缆式浮球开关一般有这样的警告:

电源线是本装置的完整部分,一经发现电线受损,本装置应被替换。

 

1.系统方案设计

1.1控制方式选择

液位的控制方式有很多,较多的主要有2种,一种是简单的机械式控制装置,一种是复杂的控制器控制方式。

两种方案实现如下:

(1)简单的机械式控制方式:

器常用形式有浮标式、电极式等,这种控制形式的有点是结构简单,成本较低。

存在问题是精度不高,不能进行数值显示,另外很容易引起误动作,且只能单独控制,与计算机进行通信较难实现。

(2)复杂控制器控制方式:

这种控制方式是通过安装在水泵出口管道上的压力传感器,把出口压力标准工业电信号的模拟限号,经过前置放大、多路切换、A/D变换成数字信号传送到单片机,经过单片机运算和给定参数的比较,经过PID运算,得出调节参量;经由D/A变换给调压/变频调速装置输入给定端,控制其输出电压变化,来调节电极转速,已达到控制液位的目的。

方案论证与比较:

方案1整体设计简单,成本较低。

但是控制方式单一,不具有远程控制的发展潜力。

方案2可实现远程控制,数字可视化显示便于现场维护和检测,但是系统设计较复杂,成本较高。

综合以上论述系统设计选择方案2。

1.2微处理器型号选择

系统微处理器的选择,主要考虑微处理器内存、外部资源是否能满足系统设计基本要求及是否能为系统后期改善提供足够空间。

(1)方案1:

采用芯片STC89C51单片机作为硬件核心,显示模块采用七位LED屏,可以实时显示数字,显示较稳定和寿命长等优点。

(2)方案2:

采用芯片STC12C5A60S2单片机作为硬件核心,显示模块采用七位LED液晶显示屏,可以显示大量数字。

方案论证与比较:

方案1,处理器使用的是STC89C52单片机,只有8K的Fash和128Kb的RAM,当需要大量数据存储时有很大限制。

而在驱动只采用74HC573由于受到74HC573输入管脚灌电流的影响,当在阴极单列全亮的情况下回影响到LED的亮度。

由此来看方案1不适合设计要求。

方案2:

采用处理器是STC12C5A60S2,该芯片是在51单片机基础上发展产生的,功能更加强大。

内有60K的Flash、1280SRAM,还有EEPPROM。

其内存能够满足大量数据存储和处理的要求符合设计。

其次,STC12C5A60S2丰富而强大的第二功能如AD转换。

1.3整体方案设计

图1.1系统框图

工作原理:

基于单片机实现的液位控制器是以STC12C5A60S2为IC核心,有键盘、数码显示,A/D转换、传感器,电源和控制部分组成。

工作过程为:

水箱液位发生变化时,引起连接在水箱底部的软管关内的空气气压变化,气压传感器在接收到软管内的空气气压信号后,即把变化量转化成电压限号;该信号经过运算放大器放大后变成幅度为0~5V标准限号,送入A/D转换器,A/D转换器把模拟信号变成数字信号量,有单片机进行实时数据采集,并行处理,根据设定要求控制输出,同时数码管显示液位高度数值。

通过键盘设置液位高度、低和限定值以及强制报警值。

该系统控制器特点是直观地显示水位高度,可任意控制水位高度。

 

2.硬件设计

液位控制器的硬件主要包括有单片机、传感器、键盘电路、数码显示电路、A/D转换器和输出控制电路等。

2.1单片机最小系统

单片机采用双列40脚STC12C5A60S2芯片。

其中,P2口用于A/D转换,P0用于显示数据输出;P1口连接一个4X4的键盘;P3口用于控制电磁和水泵动作;P3口用于上下限指示灯,报警指示灯以及用于读写控制和中断等。

图2.1中是STC12C5A60S2芯片的引脚功能说明。

图2.1单片机最小系统

STC12C5A60S2单片机,为51系列增强型单片机系列。

STC12C5A60S2系列工作电压:

5.5V,工作频率范围:

0-35MHz,相当于普通8051的0~420MHz,用户应用程序空间60K,片上集成1280字节RAM,通用I/O口(36/40/44个),复位后为:

准双向口/弱上拉(普通8051传统I/O口),可设置成四种模式:

准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达到20mA,但整个芯片最大不要超过55mA,ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片,有EEPROM功能(STC12C5A62S2/AD/PWM无内部EEPROM),内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地),外部掉电检测电路:

在P4.6口有一个低压门槛比较器,单片机为1.32V,误差为+/-5%,3.3V单片机为1.30V,误差为+/-3%,时钟源:

外部高精度晶体/时钟,内部R/C振荡器(温漂为+/-5%到+/-10%以内),用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟;在常温下,内部R/C振荡器频率为:

5.0V单片机为:

11MHz~15.5MHz,3.3V单片机为:

8MHz~12MHz,精度要求不高时,可选择使用内部时钟,但因为有制造误差和温漂,以实际测试为准,共4个16位定时器,两个与传统8051兼容的定时器/计数器,16位定时器T0和T1,没有定时器2,但有独立波特率发生器做串行通讯的波特率发生器再加上2路PCA模块可再实现2个16位定时器,2个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时钟,外部中断I/O口7路,传统的下降沿中断或低电平触发中断,并新增支持上升沿中断的PCA模块,PWM(2路)/PCA(可编程计数器阵列,2路)可用来当2路D/A使用,也可用来再实现2个定时器,也可用来再实现2个外部中断(上升沿中断/下降沿中断均可分别或同时支持),A/D转换,10位精度ADC,共8路,转换速度可达250K/S(每秒钟25万次),通用全双工异步串行口(UART),由于STC12系列是高速的8051,可再用定时器或PCA软件实现多串,STC12C5A60S2系列有双串口,后缀有S2标志的才有双串口,RxD2/P1.2(可通过寄存器设置到P4.2),TxD2/P1.3(可通过寄存器设置到P4.3),工作温度范围:

-40-+85℃(工业级)/0-75℃(商业级)。

2.2传感器

传感器使用SY-9411L-D型变送器,它内部含有一个压力传感器和相应的放大电路。

电压传感器是美国SM公司生产的555-2型OEM压阻压力传感器,其有全温度补偿及标定(0~70),传感器经过特殊加工处理,用兼顾的耐高温塑料外壳封装。

其管脚分布如图2.2所示。

1脚为信号输出(-);2脚为信号输出(-);3脚为激励电压;4脚为地;5脚为信号输出(+);6脚为信号输出(+)。

在水箱

图2.2SY-9411L-D变送器

底部安装1根直径为5mm的软管,一端安装在水箱底部;另一端与传感器连接。

水箱水位高度发生变化时,引起软管内气压变化,然后传感器把气压转换成电压信号,输送到A/D转换器。

驱动控制电路如图2.3。

图2.3驱动控制电路

2.3信号放大电路

INA168是TI公司的一款高精度运算放大器。

INA168和电流监测高侧,单极,电流并联监视器。

宽输入共模电压范围,低静态电流,和小的SOT-23包装使在各种应用中的用途。

输入共模和电源电压独立的,可以从2.7V至36V的范围INA168和2.7V60V的电流监测。

二者模型得出的只有25µ静态电流,也允许连接电源的两侧具有最小误差的分流电流测量。

该装置将一个输入电压的一个电流输出。

这个电流被转换回与外部负载电阻设置电压增益从1到100。

虽然设计测量电流并联电路,邀请创造性在测量中的应用和水平转移。

其管脚分布如图2.4所示。

图2.4INA168管脚分布图

系统中将SY-9411L-D传感器采集得到的电信号,经过INA168高精度运算放大器放大处理。

放大处理后的信号送到由ADC0809构成的A/D转换电路,使迷你信号转换成数字信号,并将得到的数字信号传送给STC12C5A60S2单片机进行相应处理。

电路如图2.5。

图2.5信号放大电路

2.4键盘电路

P1口作为键盘接口,连接一个4X4键盘。

结构上采用行列方式,可定义键盘布局。

结构如图2.6所示。

图2.6矩阵键盘电路

2.5液晶显示电路

液晶显示采用数码管动态显示,范围从0~999(单位可自定),选择的数码管是7段共阴极连接,型号是LDS18820.在这里使用了74HC573锁存器,它是一个8位并行输出,具有输出所存功能的CMOS器件,在单片机系统中经常使用,可以作地址数据总线扩展的锁存器,也可以作为普通的LED灯驱动器件,由于单独使用74HC573完成数码管的驱动显示,因此74HC573在这里只用作扩展的缓冲,图2.7是显示电路的原理图。

图2.7显示电路

74HC573原理说明:

74HC573的八个锁存器都是透明的D型锁存器,当使能(G)为高时,Q输出将随数据(D)输入而变。

当使能为低时,输出将锁存在已建立的数据电平上。

输出控制不影响锁存器的内部工作,即老数据可以保持,甚至当输出被关闭时, 新的数据也可以置入。

这种电路可以驱动大电容或低阻抗负载,可以直接与系统总线接口并驱动总线,而不需要外接口。

特别适用于缓冲寄存器,I/O通道,双向总线驱动器和工作寄存器。

74HC573管脚分布如图9。

图2.874HC573

74HC573输入、输出真值表如下表2.1:

表2.174HC573真值表

INPUTS输入

Outputs输出

OE

LE

D

Q(HC573)

Q(HC563)

H

X

X

Z

Z

L

L

X

NOCHANGE*

NOCHANGE*

L

H

L

L

H

L

H

H

H

L

2.6A/D转换电路及控制输出

A/D转换电路在系统设计中起主导作用,用它将传感器输出的模拟电压信号转换成单片机能处理的数字量。

该控制器采用CMOS工艺制造的逐次逼近式8位A/D转换器芯片ADC0809。

在使用时可选择中断、查询和延时等3种方式编制A/D转换程序。

图2.9是A/D转换部分原理图,在接线时先经过运算放大器和分压电路把传感器输出的电流信号转换成电压信号,然后输入到A/D转换器。

控制输出主要有上下限状态显示、超限报警。

另外在设计过程中预留了串口,供进一步开发使用。

图2.9A/D转换电路

ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。

它是逐次逼近式A/D转换器,可以和单片机直接接口。

(1)ADC0809的内部逻辑结构

   由下图2.10可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。

多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。

三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。

图2.10ADC0809内部电路结构

(2)ADC0809引脚结构

ADC0809各脚功能如下:

D7-D0:

8位数字量输出引脚。

IN0-IN7:

8位模拟量输入引脚。

VCC:

+5V工作电压。

GND:

地。

REF(+):

参考电压正端。

REF(-):

参考电压负端。

START:

A/D转换启动信号输入端。

ALE:

地址锁存允许信号输入端。

(以上两种信号用于启动A/D转换).

EOC:

转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。

OE:

输出允许控制端,用以打开三态数据输出锁存器。

CLK:

时钟信号输入端(一般为500KHz)。

ADC0809对输入模拟量要求:

信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。

地址输入和控制线:

4条

ALE为地址锁存允许输入线,高电平有效。

当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进入转换器进行转换。

A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。

通道选择表如表2所示。

表2.2ADC0809通道选择真值表

C

B

A

选择的通道

0

0

0

IN0

0

0

1

IN1

0

1

0

IN2

0

1

1

IN3

1

0

0

IN4

1

0

1

IN5

1

1

0

IN6

1

1

1

IN7

2.7系统电源电路设计

电源:

(由7812可调电源和7805构成的+5V稳压电源)由电源变压器,整流电路,滤波和稳压电路等部分组成。

变压器将220v的电压变为需要的电压值后通过整流电路将交流电压变成脉动的直流电压。

此脉动的直流电压还有较大的纹波,再通过较大电容,利用电容的充放电达到滤波效果,从而得到比较平滑的直流电压,最后在经过集成的稳压芯片稳压使输出能得到很稳定的电压。

系统设计如图2.11。

图2.11系统电源电路

LM7805电源芯片为三端稳压集成IC。

电子产品中,常见的三端稳压集成电路有正电压输出的lm78××系列和负电压输出的lm79××系列。

顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。

它的样子象是普通的三极管,TO-220的标准封装,也有lm9013样子的TO-92封装。

用lm78/lm79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。

该系列集成稳压IC型号中的lm78或lm79后面的数字代表该三端集成稳压电路的输出电压,如lm7806表示输出电压为正6V,lm7909表示输出电压为负9V。

在实际应用中,应在三端集成稳压电路上安装足够大的散热器(当然小功率

的条件下不用)。

当稳压管温度过高时,稳压性能将变差,甚至损坏。

当制作中需要一个能输出1.5A以上电流的稳压电源,通常采用几块三端稳压电路并联起来,使其最大输出电流为N个1.5A,但应用时需注意:

并联使用的集成稳压电路应采用同一厂家、同一批号的产品,以保证参数的一致。

另外在输出电流上留有一定的余量,以避免个别集成稳压电路失效时导致其他电路的连锁烧毁。

3.软件设计

3.1软件系统设计

 

图3.1软件设计流程图

4.系统设计总结

水位自动控制系统设计,系统通过传感器将非电信号量转换成电信号,经过处理将有效信号送到单片机处理,根据系统设定液位要求可实现对液位的自动控制。

使用7段LED数码管实时显示液位高度,系统方案设计和选择符合设计要求。

通过对水位子自动控制系统的设计,自学能力大大提高。

由一开始的到最终设计,我所需要的知识除了来自课堂,更多的是课外通过查阅书籍、网上收集资料以及借鉴往届同学的学习成果,这让不仅我在知识上有所收获,更重要的是通过本次课程设计将自己在收集资料、整理资料和知识整合方面的能力得到了锻炼。

过程中,在制作过程中遇到很多硬件和软件等各方面的问题,遇到问题后自己能够通过向同学讨论、相互学习的方式去解决,相信这都会对我自身成长有极大的帮助。

参考文献:

1.《单片机原理与C51编程》西安交通大学出版社宋彩剩孙友仓昊宏岐编著.

2.《C语言程序设计》清华大学出版社向艳主编

3.《自动控制原理》电子工业出版社胥布工主编

4.《传感器与自动检测技术》机械工业出版社张玉莲主编

5.“基于AT89C51单片机的水位自动控制器”黄金林赵玉翠江苏技术师范学院电气信息工程学院

1.附页:

1.系统设计总图

2.系统核心程序

#include

#defineuintunsignedint

#defineucharunsignedchar

sbiten=P3^4;

sbitrs=P3^5;

sbitSCLK=P2^4;

ucharcodetable1[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x2e,0x56,0x41};

voiddisplay(floatdata0,floatdata1)//显示液位高度

{

uchari;

uintDATA0,DATA1;

DATA0=(uint)(data0*2.03);

DATA1=(uint)(((data1-2701.5)/0.123)*1.96)+63;

table2[0]=DATA0/1000;

table2[1]=10;

table2[2]=(DATA0%1000)/100;

table2[3]=(DATA0%100)/10;

table2[4]=DATA0%10;

table2[5]=11;

table5[0]=DATA1/1000;

table5[1]=10;

table5[2]=(DATA1%1000)/100;

table5[3]=(DATA1%100)/10;

table5[4]=DATA1%10;

table5[5]=12;

voidmain()

{

uintR=0x80;

uintX;

P1M0=0x11;//设置管脚工作方式

P1M1=0x15;

init();

ADC_Power_On();

while

(1)

{

A0=ADC(4);

delay(10);

B0=ADC

(2);

X=Dprocessing(A0,B0);

if(X==1)

{

R=R-2;

if(R==0)

{

R=0x04;

}

}

if(X==2)

{

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2