水位自动检测与控制系统的设计Word下载.docx
- 文档编号:22338613
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:27
- 大小:766.81KB
水位自动检测与控制系统的设计Word下载.docx
《水位自动检测与控制系统的设计Word下载.docx》由会员分享,可在线阅读,更多相关《水位自动检测与控制系统的设计Word下载.docx(27页珍藏版)》请在冰豆网上搜索。
顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。
它体积小,在整个装置中,起着有如人类头脑的作用。
单片机的诞生是计算机发展史上的一个新的里程碑,近年来,随着单片机档次的不断提高,功能的不断完善,其应用日趋成熟、应用领域日趋扩大,特别是工业测控、尖端武器和日用家电等领域更是因为有了单片机而升辉增色。
现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。
各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”[3]。
在很长一段时间里,通用型单片机通过三总线结构扩展外围器件成为单片机应用的主流结构。
随着低价位OTP(OneTimProgrammable)及各种类型片内程序存储器的发展,加之处围接口不断进入片内,推动了单片机“单片”应用结构的发展。
特别是I2C、SPI等串行总线的引入,可以使单片机的引脚设计得更少,单片机系统结构更加简化及规范化,通过本次设计,使我们加深了串行总线的工作原理和使用方法[4]。
通过该课题的研究,温习了数模电知识,了解了多种芯片的运用,加强了使用Protel软件绘制电气原理图和印制版图的能力,收集资料、消化资料和综合资料的能力,及综合利用专业及基础知识,解决实际工程技术问题的能力。
本课题研究设计了一种基于单片机技术的自动控制系统。
该自动控制系统通过采用STC89C52单片机为工作处理器核心,外接压力传感器,能够通过对水压的大x小测定来得到水位的高度,并将其转化为相应的电信号输出,通过对水位的精确测量来控制水位[19]。
该自动控制系统的最大特点就是使用户能够操作简单、易懂、灵活;
且安装方便、智能性高、误报率低,同时它的信号经过单片机系统处理后方便和PC机通信,便于多用户统一管理。
随着现代人们安全意识的增强以及科学技术的快速发展,相信这种自动控制系统必将在更广阔的领域得到更深层次的应用[5]。
1.3发展方向
从消费者的角度来看,智能化自动化的仪器市场的需求已经逐渐明朗:
就是以实用为核心,力求实用、易用、人性化,自动化。
虽然科技飞速发展,信息技术日新月异,但是如何将这些技术引入智能划产品之中,如何打造出真正实用的智能划产品,这才是最值得关注的问题。
如智能划产业界所体现的两大技术趋势正是发展方向:
1、领先的自动控制技术;
2、不依靠PC的独立形态。
致力于智能划产品的应用接轨,很多问题并不在于技术水平的高低,而在于怎样去做到实用、易用、人性化,只有更加贴近实用、易用和人性化的智能划概念,才能真正提高人们的生活品质,才能真正体现智能划的价值,这也是现代科技价值的核心所在。
可以肯定,智能划将在未来的电子产业占据非常重要的地位,本课题即是从中获得启发而确定,以实用、易用、人性化为设计标准。
本课题所设计的简易水位自动检测及控制系统,非常符合现代人的日常生活所需,有着广大的发展前景。
2设计的任务、要求和研究设想
课题拟设计一款基于单片机而制作的智能型水位自动检测及控制系统。
要求利用51单片机完成水位自动检测及控制系统设计,当水位自动检测及控制系统进入工作状态后,CPU不断检查触发开关的状态,当水位达到最低点时,警报器发出低水位警报一段时间,黄灯亮,电机自动开始抽水。
当加水到最高水位时红灯亮,报警器报警,电机停止工作。
当水位在正常水位内,电机和报警器都不工作。
具体设计需要达到的要求和实现的功能如下:
(1)可实现自动报警。
(2)可实现自动加水和自动停止加水。
(3)可通过水位变化,实现向外界报警。
本设计包括硬件和软件设计两个部分。
硬件部分包括采样处理部分、单片机控制部分、数码显示部分、电机驱动部分、电机控制部分等构成。
处理器采用52系列单片机STC89C52。
整个系统是在系统软件控制下工作的。
基于调查本课题设计一款简单实用,经济的高塔水位检测报警控制系统。
本设计过程中主要采用了传感技术、单片机技术、光报警技术以及弱电控制强电的技术。
在高塔的内部我们设计一个简易的水位探测传感器用来探测水位,即低水位,正常水位,高水位。
低水位时送给单片机一个高电平,驱动水泵加水,黄灯亮;
到达正常范围的水位时,水泵继续加水,黄灯不亮;
高水位时,水泵不加水,红灯亮。
通过这样一个简单使用的电路系统从而实现对水位的自动监测与控制。
3系统设计
3.1方案设计
方案一:
如图3.1所示为方案一框图。
本方案采用555电路进行控制,即当水位探测传感器探测到低水位时送一个低于1/3VCC的低电平给NE555芯片,555的输出即为高电平驱动水泵加水;
当在正常的水位时候,送给NE555为1/3VCC~2/3VCC的电平,即保持前一个水泵不加水的状态;
当水位居于高水位时,给NE555电路一个高电平,这时NE555输出电平翻转为低电平,不能驱动水泵,水泵停止加水。
图3.1方案一框图
方案二:
如图3.2所示为方案二框图。
本方案采用单片机STC89C52作为我们的控制芯片,主要工作过程是当高塔中的水在低水位时,水位探测传感器送给单片机一个高电平,然后单片机驱动水泵加水和显示系统使红灯变亮;
当水位在正常范围内时,水泵加水,绿灯亮;
当水位在高水位时,单片机不能驱动水泵加水,黄灯亮。
图3.2方案二框图
第一种方案设计使用起来比较方便也简单,不用编程等软件方面的设计,但是没有稳压电路,使输入NE555芯片的电平十分不稳定,容易发生误判水位引起混乱的情况,且NE555电路只有一个输出端,不能接显示系统,所以不能完成显示功能。
第二种方案中使用了单片机处理,单片机技术是信息时代用于精密测量的一种新技术。
此系统使用过程中采用稳压电路能够准确地把输入的电平送给单片机不会产生误判的情况,由于STC89C52单片机有40端口32引脚能够非常方便地设计显示系统。
综上,已经清楚地看到了两种方案的优劣,要能够很好地完成本次设计的各个指标和达到设计的目的,选择第二种方案作为本课题的设计方案。
3.2各部件的选择
3.2.1传感器选择方案
传统的水位检测通过设检测点来完成对水位的检测。
通常,由于受检测点物理体积的影响,水位检测点的数目有限,从而影响了后续电路控制的精度。
本设计中,采用SY-9411L-D型变送器,它内部含有1个压力传感器和相应的放大电路。
压力传感器是美国SM公司生产的555-2型OEM压阻式压力传感器,其有全温度补偿及标定(0~70℃),传感器经过特殊加工处理,用坚固的耐高温塑料外壳封装。
其引脚分布如图3.3所示。
1、2脚为信号输出;
3脚为激励电压;
4脚为接地地。
图3.3SY-9411L-D型变送器
在水箱底部安装1根直径为5mm的软管,一端安装在水箱底部;
另一端与传感器连接。
水箱水位高度发生变化时,引起软管内气压变化,然后传感器把气压转换成电压信号,输送到A/D转换器。
3.2.2A/D转换方案
通过对传感器的选择,可知由传感器输出的水位高度信号是0~10V的直流电压。
在设计中,可以通过采样、保持电路对这一信号进行处理,将模拟信号转换为多个采样点信号。
但这种处理方法由于受电路规模和采样精度的影响,不可能对水位信号作出精确的处理,近而也无法对电机、水位高度显示和报警作出精确的控制。
因此,本设计中采用集成芯片TLC549对0~10V的直流电压进行处理。
可以达到:
(1)电路简洁、明了。
(2)高转换精度。
(3)高控制精确。
3.2.3单片机复位方案
RST/VPD:
复位/备用电源线,可以使单片机处于复位(即初始化)工作状态。
通常,单片机的复位有自动上电复位和人工按钮复位两种,图3.4给出了它们的电路。
考虑到,水塔与居民生活密切相关,当因特殊原因导致单片机掉电,需单片机立即自动复位(如:
夜间短时间停电,导致本系统停止工作),故本设计采用上电复位方式。
图3.4复位电路
3.2.4单片机起振方案
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器,石晶振荡和陶瓷振荡均可采用。
也可以采用外部时钟源驱动器件。
考虑到设计、使用的方便,本设计中采用片内时钟驱动。
即XTAL1和XTAL2只需外接晶振(配上相应的电容),便可以给单片机提供相应的时钟频率。
3.2.5驱动显示方案
本设计中需显示水塔水位的高度,具体的显示方案有两种选择:
(1)利用74LS48驱动数码管:
与单片机连接较为复杂,需占用单片机8个端口。
且在与数码管连接时需附加上拉电阻,用以完成数码管的驱动。
(2)利用LCD1602液晶显示:
a.显示质量高
由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。
因此,液晶显示器画质高且不会闪烁。
b.数字式接口
液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。
c.体积小、重量轻
液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。
d.功耗低
相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。
考虑到本设计中,若利用MAX7219驱动数码管,MAX7219芯片价格较高,采用后大大提高成本支出将造成资源浪费,且。
同时,随着MAX7219的使用(对MAX7219的编程)将提高源程序的复杂度,对编译、调试和单片机运行效率都将造成影响。
故设计中采用LCD1602液晶显示。
3.2.6电机选择方案
电动机有直流流、交流之分。
异步电动机属于交流电机的一种;
另一种交流电机是同步电机。
异步电机由于结构简单,维护方便,价格便宜,所以应用最为广泛。
本设计中,采用异步三相交流电机。
3.3总体思路
①水位高度的检测:
利用水位传感器完成。
②传感器输出信号处理:
传感器输出信号,有直流电压和直流电流之分。
设计中需将这一信号进行处理,以便单片机能够接收和处理。
③单片机控制:
单片机将由前级输入的检测信号进行分析和处理,从而产生相应的控制信号。
④数码显示、电机驱动和报警电路根据单片机产生的控制信号,作出相应的动作。
⑤电机控制电路根据电机驱动电路的状态作出相应的动作。
4硬件设计
4.1系统组成
水位自动控制器由7个部分组成,即水位传感器、A/D转换、键盘、单片机、显示部分、电机控制、报警控制部分。
系统框图可参考图3.2。
4.2单元模块设计
4.2.1单片机介绍
选用STC89C52作为控制芯片,其引脚图如图4.1所示。
(1)STC89C52是宏晶科技推出的新一代超强抗干扰、高速、低功耗单片机,指令代码完全兼容Intel8051单片机。
(2)STC89C52的封装
STC89C52的封装如图4.2所示。
图4.1STC89C52引脚图
图4.2STC89C52封装图
(1)STC89C52各引脚功能及管脚电压
STC89C52为40脚双列直插封装的8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8XC51相同,其主要用于会聚调整时的功能控制。
功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。
主要管脚有:
XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。
RST/VPD(9脚)为复位输入端口,外接电阻电容组成的复位电路。
VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。
P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能[6]。
P0口
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口
P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
与STC89C52不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),Flash编程和程序校验期间,P1接收低8位地址。
表4.1P1.0和P1.1的第二功能
引脚号
功能特性
P1.0
T2,时钟输出
P1.1
T2EX(定时/计数器2)
P2口
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
Flash编程或校验时,P2亦接收高位地址和一些控制信号。
P3口
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
PSEN
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。
XTAL1
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2
振荡器反相放大器的输出端。
特殊功能寄存器在AT89C52片内存储器中,80H-FFH共128个单元为特殊功能寄存器(SFE),SFR的地址空间映象如表2所示。
并非所有的地址都被定义,从80H—FFH共128个字节只有一部分被定义,还有相当一部分没有定义。
对没有定义的单元读写将是无效的,读出的数值将不确定,而写入的数据也将丢失。
不应将数据“1”写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。
STC89C52除了与STC89C51所有的定时/计数器0和定时/计数器1外,还增加了一个定时/计数器2。
定时/计数器2的控制和状态位位于T2CON,T2MOD,寄存器对(RCAO2H、RCAP2L)是定时器2在16位捕获方式或16位自动重装载方式下的捕获/自动重装载寄存器。
4.2.2A/D转换设计
TLC549是美国德州仪器公司生产的8位串行A/D转换器芯片,可与通用微处理器、控制器通过CLK、CS、POUT三条口线进行串行接口。
具有4MHz片内系统时钟和软、硬件控制电路,转换时间最长17μs,TLC549为40000次/s。
总失调误差最大为±
0.5LSB,典型功耗值为6mW。
采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,V(REF-)接地,V(REF+)-(VREF-)≥1V,可用于较小信号的采样[17]。
a.芯片简介
TLC549的内部框图和引脚名称如图4.3所示。
图4.3A/D转换器引脚
极限参数
TLC549的极限参数如下:
●电源电压:
6.5V;
●输入电压范围:
0.3V~VCC+0.3V;
●输出电压范围:
●峰值输入电流(任一输入端):
±
10mA;
●总峰值输入电流(所有输入端):
30mA;
●工作温度:
TLC549C:
0℃~70℃
TLC549I:
-40℃~85℃
TLC549M:
-55℃~125℃
b.工作原理
TLC549均有片内系统时钟,该时钟与I/OCLOCK是独立工作的,无须特殊的速度或相位匹配。
当CS为高时,数据输出(POUT)端处于高阻状态,此时I/OCLOCK不起作用。
这种CS控制作用允许在同时使用多片TLC549时,共用I/OCLOCK,以减少多路(片)A/D并用时的I/O控制端口。
c.一组通常的控制时序为:
(1)将CS置低。
内部电路在测得CS下降沿后,再等待两个内部时钟上升沿和一个下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出到DATAOUT端上。
(2)前四个I/OCLOCK周期的下降沿依次移出第2、3、4和第5个位(D6、D5、D4、D3),片上采样保持电路在第4个I/OCLOCK下降沿开始采样模拟输入。
(3)接下来的3个I/OCLOCK周期的下降沿移出第6、7、8(D2、D1、D0)个转换位,
(4)最后,片上采样保持电路在第8个I/OCLOCK周期的下降沿将移出第6、7、8(D2、D1、D0)个转换位。
保持功能将持续4个内部时钟周期,然后开始进行32个内部时钟周期的A/D转换。
第8个I/OCLOCK后,CS必须为高,或I/OCLOCK保持低电平,这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。
如果CS为低时I/OCLOCK上出现一个有效干扰脉冲,则微处理器/控制器将与器件的I/O时序失去同步;
若CS为高时出现一次有效低电平,则将使引脚重新初始化,从而脱离原转换过程。
在36个内部系统时钟周期结束之前,实施步骤
(1)-(4),可重新启动一次新的A/D转换,与此同时,正在进行的转换终止,此时的输出是前一次的转换结果而不是正在进行的转换结果。
若要在特定的时刻采样模拟信号,应使第8个I/OCLOCK时钟的下降沿与该时刻对应,因为芯片虽在第4个I/OCLOCK时钟下降沿开始采样,却在第8个I/OCLOCK的下降沿开始保存。
STC89C52与ADC接口时三个注意事项:
①要给START线送一个100ns宽的启动脉冲。
②获取EOC线上的状态信息,因为它是A/D转换结束的标志。
③要给“三态输出锁存器”分配一个端口地址,也就是给OE线上送一个地址译码器输出信号。
STC89C52和ADC接口通常采用查询和中断两种方式。
采用查询法传送数据时STC89C52应对EOC线查询它的状态:
若查询到EOC变为高电平,则给OE线送一个高电平,以便从D0—D7线上
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 水位 自动检测 控制系统 设计