基于52单片机的家用水流量设计本科毕业论文Word下载.docx

上传人:b****6 文档编号:16812868 上传时间:2022-11-26 格式:DOCX 页数:46 大小:959.19KB
下载 相关 举报
基于52单片机的家用水流量设计本科毕业论文Word下载.docx_第1页
第1页 / 共46页
基于52单片机的家用水流量设计本科毕业论文Word下载.docx_第2页
第2页 / 共46页
基于52单片机的家用水流量设计本科毕业论文Word下载.docx_第3页
第3页 / 共46页
基于52单片机的家用水流量设计本科毕业论文Word下载.docx_第4页
第4页 / 共46页
基于52单片机的家用水流量设计本科毕业论文Word下载.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

基于52单片机的家用水流量设计本科毕业论文Word下载.docx

《基于52单片机的家用水流量设计本科毕业论文Word下载.docx》由会员分享,可在线阅读,更多相关《基于52单片机的家用水流量设计本科毕业论文Word下载.docx(46页珍藏版)》请在冰豆网上搜索。

基于52单片机的家用水流量设计本科毕业论文Word下载.docx

4.文字、图表要求:

1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写

2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。

图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画

3)毕业论文须用A4单面打印,论文50页以上的双面打印

4)图表应绘制于无格子的页面上

5)软件工程类课题应有程序清单,并提供电子文档

5.装订顺序

1)设计(论文)

2)附件:

按照任务书、开题报告、外文译文、译文原文(复印件)次序装订

3)其它

引言:

当今社会,经济快速发展,人们生活水平普遍提高,对物质生活的需要和精神领域的追求也日趋提高,同时对家居等的舒适度,个性化,智能化,功能多样化等也提出了更高的要求。

鉴于当前我国水资源短缺,如何节约环保已经成为各阶层共同应对的问题。

本次电子大赛我组通过以单片机为主体,出于对多方面的综合考虑,通过对各模块的应用与结合,对水流量的测量进行设计与应用,旨在提高大众节水意识,优化生活质量。

我组设计的家用水流量可通过液晶屏对温度的实时显示调节用水温度,测量水的流量并换算为价格用于提示用户用水程度。

早期的水表由英国人发明,随后德国,法国,美国,日本等国依次发明或引进先进水表,具体有往复式单活塞式水表,旋转活塞式水表,圆盘式水表,旋翼式水表等。

我国的水表使用和生产较晚,直至1879年,李鸿章创建我国第一家水厂,水表进入我国。

之后的一百余年我国水表整体落后于西方发达国家。

目前我国家用水表多是机械旋翼式水表。

其弊端有:

水表始动流量大,不流水水表自走,漏损率高,检查和维修周期短,准确率低等。

方案设计:

1、方案选择

方案一:

本方案由流量计,单片机,显示器,温度测量计,报警器等主要器件构成,其工作原理大致为:

当打开水龙头时,根据单片机STC89C52的指令、水流量计传感器和数字温度传感器DS18B20实时采集水流量状态和水温的数据。

当单片机STC89C52扫描到水流量计传感器的脉冲数,经过单片机STC89C52处理,计算出所采集的水流量后,通过液晶屏LCD1602能动态显示当前水流量、水费及水温(当温度超出安全范围时,报警器工作。

硬件框图(图1):

程序流程图(图2):

该方案特点:

(1)液晶显示有水温、水价、水费和当前水流量。

水流量的测量由开关控制。

(2)在程序中可以分为3个主要模块:

水流量模块,温度模块,显示模块。

(3)由于有时自来水水流不够均匀,水流量传感器较小,测量存在局限性。

方案二:

将滑动变阻器固定在密度较大的不锈钢网上,垂直于水流方向放置(与管壁无摩擦),将变阻器,恒定电源,安全电阻接入电路,因为不锈钢网的阻碍,水流会对不锈钢网产生力,所以通过水流的速度(因为管道横截面积确定,水流速度反映水的流量)可以转化成对应的电流。

将电流转换成相应的信号传入到单片机中,进而将对应的流量和费用传输到液晶显示屏上,将温度计固定在管道,将温度信号转换成电信号输入到单片机,输出对应水的温度。

(当水温过高时,温度信号转换成的电信号将进入警戒区域,报警器工作)。

硬件框图:

软件流程图:

(1)原理较为简单,器件更为耐用。

(2)体现了多学科交叉的特点,水流对不锈钢网的冲击与滑动变阻器阻值的对应关系是依据了力学原理,将温度计对水温感应的信号转换为电信号涉及到热学与电学的转换等,本方案将多学科融入工程,通俗易懂。

(3)由于不锈钢网安装于管道中,从卫生角度和实用角度来看,并不如第一种方案。

譬如,不锈钢具有导热特性,长时间后不锈钢会被腐蚀,影响水质,不易更换维修等。

方案三:

该流量计工作原理如图所示,当液体流经产品内有涡轮叶片机构,使涡轮旋转,涡轮的转速随流量的变化而变化。

由于叶片内置磁体通过下方的一磁线圈回升,叶片周期性地切割电磁铁产生的磁力线,改变线圈的磁通量。

根据电磁感应原理在线圈内将感应出脉动的电势信号,此脉动信号的频率与被测流体的流量成正比。

该高频脉冲是成正比的转子角速度和流速。

脉冲信号随时传送给单片机,再由单片机将信号传给液晶显示器和警报器。

硬件框图(如图6):

程序流程图(如图7):

(1)涡轮流量计是理想的低流量液体监测器件。

小型涡轮的反应迅速。

(2)涡轮技术是不受系统压力变化的影响。

流量传感器的标准电源和输出出规格可以很容易地改进,以适应当前的控制器。

2、方案确定

我组设计该组件的目标及要求为:

可以在一定非适宜环境下工作,操作方便,具有较强的实用性与可行性。

尽量要求测量精确,误差较小。

该水流测量装置应具有较强的安全性能,不会对人体与环境造成负面影响。

本身不会造成大量的资源消耗或浪费。

简约美观,符合家居氛围。

各方案的特点:

首先,2美观性较差,3中的涡轮可能存在噪音。

其次,水流较小时2,3可能会停止转动,同时3的涡轮存在惯性,会使所测流量偏大,这些都使2,3方案可靠性降低。

再次,从实用角度来看,方案二中滑动变阻器的阻值随着水温的变化而变化,受环境影响大;

从卫生性能上考虑,3方案中安装在水中的涡轮会使水质降低。

相比较而言我组认为方案一更为合理,具体如下:

受温度影响较小,可以适应多种工作环境;

美观简约,操作方便;

耗费资源少,节约环保,不会对环境和人体造成负面影响;

采用电子流量计进行水流测量,相对另外两种物理方案误差较小;

经济廉价,实用性强。

综合以上分析,我组认为方案一更加适合设计要求,故对方案一进行了具体的设计与实施。

3、理论分析与方案论证

工作原理:

当打开水龙头时,根据单片机STC89C52的指令、水流量计传感器和数字温度传感器DS18B20实时采集水流量状态和水温的数据。

当单片机STC89C52扫描到水流量计传感器的脉冲数,经过单片机STC89C52处理,计算出所采集的水流量后,通过液晶屏LCD1602能动态显示当前水流量、水费及水温。

各项技术保证:

我组设计的家用流量设计大致可分为温度程序模块,水流量程序模块,显示程序模块。

其中温度程序模块主要是将温度信号转换成电信号和对温度的处理,如调节数值在合理范围内,是否超出安全范围并报警等。

水流量程序模块是对水流量进行数值读取并清零,对水流量数据进行处理等。

显示程序模块是计算出流量值,温度及资源分配情况等。

四、总体设计

1温度程序模块

(1)温度数据转换程序

由温度传感器DS18B20采集的温度数据读取后温度的低位和高位分别存在主芯片SCT89C52存储器中。

其中依定传感器的设计,读出的数据最高位为0时温度为正,温度为1时,温度是负数。

是以对温度数据处理,将温度数据高位和低位整合在一起,在判断温度的正负即可。

温度数据显示前处理程序

将已处理好的温度数据的首先判断它的正负,然后再去运行其他的代码。

在这里,程序还设定了温度报警。

温度报警本来可以在DS18B20中对芯片进行设置,但考虑到对芯片的熟悉度不够,容易出错,而在程序中设定比较容易理解,写起来也不会太难。

还有实际水的温度不可能超过100度,所以测得100度以上的温度值就会显得多余,在程序中只要设定最高99.9度即可。

再就是美观上的设定,测得的温度在为个位时,十位为0就会看起来不太美观,只要把十位设定看不见即可。

如图9所示:

2水流量程序模块

水流量的测量主要依靠对得到的频率处理,由流量计在一段时间下产生高电平的个数决定,即Q(流量)=F(频率)/R(商家设定值)所以只要在单片机中设定一定的时间,并在该时间之下计算出得到的高电平即可。

在本程序中STC89C52的两个定时器T0为计数状态,T1为计时状态,这样方可测量流量。

(1)水流量的读取程序

中断程序运行的时间到,就可以读取计数器中的数值,将下数值读出后把计数器赋值为0,等待下一次的取出,然后进入对读出数据的处理程序。

(2)水流量数据的处理程序

在预定时间到,即已经取出了定时器的数值。

我们计算的水流量最大是以每吨来计算并显示的,故一个整形或长整型的数不够,故先把它放在了一个int变量的存储空间内,做水流量的前三位,在定义一个长整型的数,把它作为水流量的后六位,这样计算起来也比较容易,数据也不会起冲突,也是为将要计算水价做准备。

设定该水流量的最大计数为250吨,超过了定值,则会从0开始。

如图11所示:

3显示程序模块

在程序中只是计算出流量值,温度值以及和资源分配的情况,一些字母的显示,

都要另加,这样才能尽善尽美的表达出显示出来的意思。

在显示程序中加入了温度的测量,所以在主程序中不必再测量温度。

在第一页主要显示的是温度、水费和水流量的后六位,最后以t结尾。

第二页主要显示温度、单位水价和水流量的前三位,最后以kg结尾。

如图12、图13所示:

五、单元电路(或软件模块)设计

各单元电路:

(1)时钟电路

单片机的最小系统有三部分组成,即电源,时钟电路和复位电路。

其中单片机的电源引脚与5V电源连通即可,而时钟电路和复位电路还需接口扩展,这也是单片机的基本电路操作。

时钟电路用于产生单片机工作所需的时钟信号,时序是指令执行中各信号之间的相互关系。

单片机本身就如同一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。

在STC89C52单片机内部带有时钟电路,因此,只需要在片外通过XTAL1和XTAL2引脚接入定时控制元件(晶体振荡器和电容),即可构成一个稳定的自激振荡器。

在STC89C52芯片内部有一个高增益反相放大器,而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容。

在单片机的XTAL1脚和XTAL2脚之间并接一个晶体振荡器就构成了内部振荡方式。

STC89C52单片机内部有一个高增益的反相放大器XTAL1为内部反相放大器的输入端,XTAL2为内部反相放大器的输出端,在其两端接上晶振后,就构成了自激振荡电路,并产生振荡脉冲,振荡电路输出的脉冲信号的频率就是晶振的固有频率。

在实际应用中通常还需要在晶振的两端和地之间各并上一个小电容。

用晶振和电容构成谐振电路。

电容大小与晶振频率和工作电压有关。

但电容的大小影响振荡器的稳定性和起振的快速性,为了提高精度,本实验板采用20pF的电容作为微调电容。

在设计电路板时,晶振、电容等均应尽可能靠近芯片,减小分布电容,以保证振荡器振荡的稳定性。

(2)复位电路

复位是单片机的初始化操作,其目的是使CPU和系统中各部分处于一个确定的状态,并从这一状态开始工作。

单片机的RST引脚为复位引脚,振荡电路正常工作后,RST端加上持续两个机器周期的高电平后,单片机就被复位。

我组采用按键开关复位是指通过接通按钮开关,使单片机进入复位状态。

本设计中将开关复位与上电复位组合在一起形成组合复位电路,上电复位电路完成上电复位功能,开关复位电路完成人工复位。

图15中C7与R5构成了上电复位电路。

上电复位后,电源经R5对C7充满电源,C7等效于开路,RST端为低电平;

单片机正常工作。

按开关K1后,C7两端电荷经R5迅速放电,K1断开后,由C7、R5及电源完成对单片机的复位操作。

在上述电路中C7、R5按上电复位电路的设计而取值。

(3)按键控制电路

课题设计之初,要求基本实现的功能有水流量的控制、水价的改变。

由于液

晶显示屏不能够完全实现其显示,故又增加了换页功能,共三个控制键。

图16按键电路

(4)液晶显示电路

下面介绍LCD1602的特性和用法。

显示特性:

1,只需5V电源电压,低功耗、长寿命、高可靠性

2,内置192种字符(160个5×

7点阵字符和32个5×

10点阵字符)

3,具有64个字节的自定义字符RAM

4,显示方式:

STN、半透、正显

5,驱动方式:

1/16DUTY,1/5BIAS

6,视角方向:

6点

7,背光方式:

底部LED

8,通讯方式:

4位或8位并口可选

9,标准的接口特性:

适配MC51和M6800系列MPU的操作时序。

引脚说明

接口时序

图17

/**********************写数据程序***********************/

voidwr_dat(unsignedchardat)//写数据

{

delay

(1);

//延时1ms

RS=1;

//写数据设置

RW=0;

//并行数据的读写

EN=0;

//使能为0

P2=dat;

//输入数据

EN=1;

//使能为1

}

初始化指令:

功能:

1.把光标撤回到显示器的左上方;

2.把地址计数器(AC)的值设置为0;

3.保持DDRAM的内容不变

设定每次定入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。

(5)状态显示电路电路设计若水流量开始技术则绿灯亮,水流量计数停止则绿灯灭。

温度超过40度或小于0度红灯报警。

由于发光二极管的需求电流为3mA~10mA,电压为3V所以计算

R=3V/(3~10)mA=(330~1000)欧

故我们在这采用R=330欧,以使经过发光二极管电流较大,发光更亮。

图20

(6)温度测量电路

课题任务中需要测量水温,故先用温度传感器DS18B02的数据采集,再通过单片机数据处理,最后在液晶屏显示出来。

1)DS18B20简介

DS18B20是DALLAS半导体公司推出的第一片支持“一线总线”接口的温度传感器,他它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,可直接将温度转化成串行数字信号供处理器处理。

DS18B20具有以下优点:

适应电压范围宽,电压范围在3.0V~5.5V,在寄生电源方式下可由数据线供电。

独特的单线接口方式,与微处理器连接时只需要一条口线即可实现微处理器与DS18B20的双向通信。

支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。

在使用中不需要任何外围元件,全部传感元件以及转换电路集成在形如一直三极管的集成电路内。

测温范围-55℃+125℃,在-10℃~+85℃时进度为±

0.5℃,可编程分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温。

2)DS18B20结构及其工作原理

图21

图22

DS18B20组成:

64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。

DS18B20的管脚排列:

DQ为数字信号输入/输出端

GND为电源地

VDD为外接供电电源输入端,在寄生电源接线方式时接地。

DS18B20内部带有共9个字节的高速暂存器RAM和电可擦除EEPROM,起

结构如表22所示。

DS18B20在出厂是默认配置为12位,其中最高位为符号位,即温度值共11位,单片机在读取数据时,一次会读2字节共16位,读完后将低11位的二进制数转化为十进制数后再乘以0.0625便为所测的实际温度值。

另外,还需要判断温度的正负。

前5个数字为符号位,这5位同时变化,我们只需要判断11位就可以了。

前5位为1时,读取的温度为负值,且测到的数值需要取反加1再乘以0.0625才可得到实际温度值。

前5位为0时,读取的温度为正值,且温度为正值时,只要将测得的数值乘以0.0625即可得到实际温度值。

考虑到实际使用的需要,在这里我们只使用一个DS18B20,故每次操作前只需复位后发出SkipROM指令(即跳过ROM指令)再读出温度的正值、并精确到小数点后一位,即可满足设计需求。

每颗DS18B20在出厂前都有一个64位光刻ROM,它可以看作该DS18B20的地址序列码。

其各位排列顺序是:

开始8位为产品类型标号,接下来48位是该DS18B20自身的序列号,最后8位是前面56位的CRC循环冗余校验码(CRC=X8+X5+X4+1)。

光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一条总线挂接多个DS18B20的目的。

由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。

DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。

该协议定义了几种信号的时序:

复位时序、读时序、写时序。

所有时序都是将主机作为主设备,单总线器件作为从设备。

而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。

数据和命令的传输都是低位在先。

DS18B20的复位时序:

图23

/*****************ds1820复位子程序******************/

voidds1820rst()

unsignedcharx=0;

DQ=1;

//DQ复位

delay_18B20(4);

//延时

DQ=0;

//DQ拉低

delay_18B20(100);

//精确延时大于480us

//拉高

delay_18B20(40);

DS18B20的读时序:

对于DS18B20的读时序分为读0时序和读1时序两个过程。

对于DS18B20的读时隙是从主机把单总线拉低之后,在15uS之内释放单总线,以让DS18B20把数据传输到单总线上。

DS18B20在完成一个读时序过程,至少需要60us才能完成。

图24DS18B20的读时序图

/*************ds1820读数据子程序*******************/

uchards1820rd()//读数据

unsignedchari=0;

unsignedchardat=0;

for(i=8;

i>

0;

i--)//读温度2进制8次

//给脉冲信号

dat>

>

=1;

//将温度数据转移到dat

if(DQ)//数据转换

dat|=0x80;

delay_18B20(10);

return(dat);

DS18B20的写时序:

对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。

对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低

至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电

平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。

图25

图2-12DS18B20的写时序图

/*******************ds1820写数据子程序******************/

voidds1820wr(ucharwdata)

i>

i--)//写数据2进制8次

DQ=wdata&

0x01;

//数据传送

wdata>

//数据移位

3)温度测量电路接口展示

图26

(7)水流量测量电路

水流量测量电路如图28,图27为模块设计应用的流量计。

本次设计中最重要的是水流量的测量,通过水流量传感器的数据采集,根据商家的水流量传感器的参数可以得出单片机在运算时的数据。

水流量传感器参数:

环境温度:

-10~55℃

流量计算在流量为:

0.2~0.4L/Min时1L=2100次;

0.5~0.8L/Min时,1L=2280次;

0.9~1.2L/Min时,1L=2350次;

1.2~2.5L/Min时,1L=2460次;

(脉冲次数在流量变化时有一定程度的变动)

接线方法白线:

信号输出;

黑线:

电源负

测量精度:

±

5%(在流量稳定的系统,精度可达±

2%)

工作电压:

DC0~~24V

工作压力:

≤100PSI(7kg/cm)

耐湿性能:

在环境湿度为90%以下时性能保持稳定

寿命测试:

本产品用进口干簧管作感应元件,在负荷小于24V1mA前提下,开关寿命大于3亿次。

图27图28

附录:

C语言程序清单

#include<

reg51.h>

#defineucharunsignedchar#defineuintunsignedint

sbitDQ=P1^0;

//ds18b20与单

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

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1