电子综合实训报告--顾书缘_第1页
电子综合实训报告--顾书缘_第2页
电子综合实训报告--顾书缘_第3页
电子综合实训报告--顾书缘_第4页
电子综合实训报告--顾书缘_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 电 子 综 合 实 训题 目: 基于单片机的热水器水温水位自动控制系统设计研究 学 生 姓 名: 顾书缘 学 号: 10446102 学 院:信息科学与工程学院 专 业 班 级: 电子101 实训时间: 2013 年 12 月 23 日 2014 年 1 月 10 日- 17 -目 录第一章 绪论- 1 -1.1选题的意义- 1 -1.2设计任务- 1 -第二章 系统设计方案- 2 -2.1设计原理- 2 -2.1.1系统原理- 2 -2.1.2子系统工作原理- 3 -2.2设计方案- 3 -2.2.1单片机的选择- 3 -2.2.2各部件控制系统方案- 4 -第三章 系统硬件设计- 5 -

2、3.1系统总体设计- 5 -3.2各单元电路设计- 6 -3.2.1控制单元设计- 6 -3.2.2显示单元设计- 7 -3.2.3检测单元设计- 9 -第四章 系统软件设计- 12 -4.1主程序设计- 12 -4.2子程序设计- 12 -4.2.1温度采集- 12 -4.2.2控制按键设计- 13 -4.2.3读温度- 14 -第五章 系统调试- 14 -5.1硬件调试- 14 -5.1.1调试步骤- 15 -5.1.2液位检测- 15 -5.1.3温度检测- 16 -5.2 软件调试- 16 -5.2.1 Proteus仿真- 16 -5.2.2 软件调试过程- 17 -总结- 18 -

3、参考文献- 18 -第一章 绪论1.1选题的意义 随着电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化,如果说微型计算机的出现使现代的科学研究得到了质的飞跃,那么可编程控制器的出现则是给现代工业控制测控领域带来了一次新的革命。在现代社会中,水位和温度控制不仅应用在工厂生产方面,其作用也体现到了生活的各个方面。 随着人们生活质量的提高,酒店厂房及家庭生活中都会见到水位和温度控制的影子,水位和温度控制将更好的服务于社会目前,单片机控制器在从生活工具到工业应用的各个领域,例如生活工具的电梯、工业生产中的现场控制仪表、数控机床等。尤其是用单片机控制器改造落后的设备具有性价

4、比高、提高设备的使用寿命、提高设备的自动化程度的特点。现代工业设计、工程建设及日常生活中常常需要用到水位和温度控制,早期水位和温度控制主要应用于工厂中,例如工厂中的大型锅炉,必须实时的掌握锅炉的水位和温度,确保系统的正常运行。因此,水温水位控制在改善人们生活质量中起到了非常重要的作用。现在市面上的电器种类繁多,它们都需要对其主要的水位和水温参数加以控制,实现电器水温水位控制的自动化。早期温度和水位的参数控制时通过模拟电路实现的,这种方式不仅电路复杂,成本高,而且误差大,系统的稳定性不好,单片机及微型计算机技术的发展和应用有效地解决了这些缺点,特别是传感器的发展,更好的提高了检测参数的精度。选择

5、基于单片机的水温水位控制系统,是因为它不仅在人们生活中具有显著的意义,更重要的是能系统地聚温度和水位参数于一身,对于更好的掌握和认识单片机的应用和传感器的应用,系统地深刻认识自动控制的实际应用,掌握复杂的多子系统地设计起到了很强的锻炼作用。1.2设计任务本设计主要是对市场现有产品的仿制,要能够实现电热水器的完整功能。以AT89C51单片机为核心配合传感器、显示器件、继电器、电加热器、报警器等外围器件,采集热水器储水箱中的水位、水温信号,通过控制电动机的运转、电加热器加热来控制储水器的水位、温度。利用键盘上开关按钮进行调节水温的最大和最小限度,手动控制上水和加热,设置水位水温功能。采集热水器储水

6、箱中水位和水温信号,并完成水位和水温的显示,以及缺水报警系统。第二章 系统设计方案2.1设计原理2.1.1系统原理利用热敏传感器和水位传感器检测水温和水位,并加以显示。根据水位情况进行手动和自动上水控制。当水位从高到低,出现缺水状态时,蜂鸣器报警,缺水指示灯亮,继电器开始工作,热水器容器上水,水位上升超过“低”水位后,缺水指示灯熄灭,蜂鸣器停止报警。水位至预置水位后继电器关闭,停止上水;当水温低于设定最低温度时,加热继电器工作,当温度加热高于设定最高温度的时候继电器停止工作。此系统是为多子系统的综合性控制系统,设计过程中也是分块实现设计调试,最后进行综合实现,以下就从各子系统的工作原理进行分别

7、进行说明。单片机复位电路按键电路报警电路时钟振荡加水装置温度传感器水位传感器LED显示蜂鸣器报警图2.1系统原理图2.1.2子系统工作原理1、温度控制系统 该子系统利用低功耗单线数字温度传感器DS18B20实现温度采样,将采样的温度值通过单片机的P3.3口送入单片机处理,然后实现水温的控制,利用按键对水温的值进行设置,当温度高于上限或者低于下限后蜂鸣器报警,使之保持温度在一定范围内的稳定。本控制系统可以时时采集热水器内部水温通过LED显示水温,由于太阳能热水器实际温度不会超过100摄制度,所以本系统采用两位显示,测量范围为0099摄氏度,温度可以精确到小数点后两位。2、水位控制系统该子系统能进

8、行水位的控制,利用自制的3根导线对水位的信息进行采集,并通过单片机的P2口送入给单片机处理加工,通过发光二极管显示器显示,共有3个水位挡,没水或者系统出错后,蜂鸣器都报警,使系统的水位保持在一定的范围内。本系统需显示水位,水位分低、中、高三档,均用发光二极管来指示。实验证明,纯净水几乎是不导电的,但自然界存在的以及人们日常使用的水都会含有一定的Mg2+、Ca2+等离子,它们的存在使水导电。本控制装置就是利用水的导电性来完成的。 当水位未达到a时,即h<a时、这时传感器的总阻值R为3R,对应,系统处于缺水状态。 当a<h<b时,传感器电阻阻值R为2R,对应,系统处于30%水位。

9、 当b<h<c时,传感器电阻阻值R为R,对应,系统处于50%水位。 当h=c时,传感器电阻阻值R为0,对应,系统处于100%水位。 其中,环形振荡器产生的方波周期T(或f)可通过单片机的两个定时/计数器(T0、T1)来确定,T1用来计数,T0用来定时。3、报警系统该系统利用蜂鸣器报警,系统故障报警和水温水位信息报警,以便及时掌握水温水位控制系统的工作状况,系统自己不能处理的就可以人工辅助处理,这样能让系统更好的运行在稳定状况下。2.2设计方案2.2.1单片机的选择方案一:采用AT89C2051芯片,它具有体积小、功耗小。含有中断、定时/计数器。但IO口数和存储空间相对较少,所以此芯

10、片不利于系统的工作和系统功能的扩展。方案二:采用AT89C51芯片,它具有AT89C2051芯片的所有功能,且IO口数相对较多,价钱相对也比较便宜,但存储空间比较小。方案三:采用AT89S52芯片,它具有AT89C2051和AT89C51芯片的所有功能,且IO口数非常多,比AT89C2051和AT89C51多,但价钱比较昂贵。综上所述,我选择AT89C51芯片作为本次设计的主控芯片,主要因为这个芯片已经能满足本次设计的要求,且价格也比较适中。2.2.2各部件控制系统方案1、温度控制系统的设计方案讨论如果采用热电阻,电路需接A/D转换电路,由单片机换算出实际温度,电路结构复杂,而且也精度不高,D

11、S18B20可直接与单片机的1位I/O相接,电路结构简单,占用单片机的口线资源少,精度高,而且成本低,DS18B20以其各方面优点作为温度传感器进行温度采样应用于此水温水位控制系统中实在是当仁不让。2、水位控制系统的设计方案讨论此系统要进行水温水位控制,马上想到的是水温水位的两个参数的控制,在温度传感器采用DS18B20之后,对于水位的控制不假思索的想到要运用水位传感器,经过几天的资料搜集,发现水位的传感器是通过压力传感器变换过来的,看到最多的是浮球式液位传感器,而且此传感器的适用温度范围和测试精度也适合该设计系统,但此方案的缺点是价格非常昂贵;后来又考虑采用应用于电子秤中的数字压力传感器,去

12、测得整个容器中水的变化和容器中液位的换算关系,此想法基于电子秤能够测得一张纸的重量,但是在实际应用中,考虑到容器的氧化,容器内部的水垢增多,而且容器的外置也会产生整个容器重量的变化,从而造成液位采集的不准确,此压力传感器的市场价格也比较昂贵,应用于此控制模型中也是一种浪费;因此我自制了3根线将容器中的液位分成了3个水位挡,通过和电源正极的结合,利用水导电的特性,通过9012三极管等元件构成的驱动电路的电平转换,将液位数据输入P2口,通过单片机换算转换成液位数据存入一个存储器单元,随时读取。3、数据显示系统的设计方案讨论为了能构造一个适合的人机界面,在诸多的显示器件中数码管的液晶字符性显示器非常

13、适合运用于此控制系统当中的,它的功能特性也完全适用于此设计系统的功能要求,也不会造成资源的浪费,所以就确定数码管作为本此设计系统的显示器件。为了配合显示器件,就需设置按键,根据系统的功能要求和单片机的口线资源,为系统配制了3个独立式键盘,用来调节温度报警值。第三章 系统硬件设计3.1系统总体设计本课题是基于AT89S52单片机的智能电热水器的控制器的设计,要达到的控制要求有:(1)用4位数码管显示水温,4位数码管显示预设温度。(2)水温检测显示范围为0099,精度为±2。(3)温度预设范围为0560,当检测温度低于预设温度1时,开始加热;检测温度高于预设温度1时,停止加热。(4)电源

14、开启后,根据上次设定的温度(220V总电源不能关闭)自动进入工作状态。如220V总电源关闭后再开机,预设温度自动定为27。温度+键:每按一次该键,预设温度加1,长按该键(时间超过1秒以上),预设温度快速增加,当预设温度加到38时,按该键不起作用。温度键:每按一次该键,预设温度减1,长按该键(时间超过1秒以上),预设温度快速减小,当预设温度减到05时,按该键不起作用。(5)设置5个面板指示灯。电源指示灯(红):接通220V电源,该指示灯点亮。加水指示灯(继电器旁的绿),加热指示灯(继电器旁的红):加热元件工作时,该指示灯被点亮。报警指示灯(红):当缺水情况时,该指示灯被点亮。(6)报警设置。高温

15、报警:当检测温度高于65时,自动报警。低温报警:当检测温度低于0时,自动报警。缺水报警:当储水箱内缺水时,自动报警。漏电报警:当热水器发生漏电情况时,自动报警。(7)设置一个蜂鸣器,当热水器出现异常情况而报警时,由蜂鸣器发出报警声,并自动切断加热元件的供电。本系统需要完成的控制系统技术性能大致总结如下:(1) 使用电源220V AC,功耗小于5W。(2) 水温显示,测温范围0-99摄氏度;精度正负2摄氏度。(3) 水位分档显示,分三档:低,中,高。(4) 具有低水位上水,手动上水等功能。(5) 缺水报警:出现缺水状态时,蜂鸣报警,缺水指示灯亮。高温报警:当温度高于设定温度时,蜂鸣报警系统开启。

16、 图3.1 单片机最小系统(1) 单片机RST接复位电路,可按复位按钮RST给单片机复位。(2) 晶振采用12MHZ。(3) 由于单片机只访问片内Flash ROM并执行内部程序存储器中的指令,因此单片机的31脚接高电平VCC。3.2各单元电路设计3.2.1控制单元设计 AT89S52芯片有40个引脚,4k bytes flash片内程序存储器,128 bytes的随机存取数据存储器(ram),32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(wdt)电路,片内时钟振荡器。图3.2 AT89S52结构框图3.2.2显

17、示单元设计1、报警电路的设计图3.3 蜂鸣器电路本系统中采用蜂鸣器报警,由于单片机输出电流较小,所以用三极管9013驱动蜂鸣器发出声音。图3.4 水位报警电路 当水位比较低的时候,红灯亮,水位在中间的时候,红灯和黄灯亮,当水位慢的时候三个灯都亮,出故障的时候三个灯闪。2、LED数码管显示图3.5 数码管显示电路4位数码管为共阳管,由于单片机输出电流比较小,故用4个PNP型的三极管9015来驱动数码管。单片机输出低电平时三极管导通,使数码管的4各公共端1、4、5和12脚为高电平,此时数码管的数据端输入低电平后数码管被点亮,120欧电阻R12到R19为三极管的限流电阻。3.2.3检测单元设计一、温

18、度传感器1、DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.05.5;零待机功耗;温度以9或12位数字;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作; 2、DS18B20温度传感器与单片机的接口电路DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.4 所示单片机端

19、口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD端接地。由于单线制只有一根线,因此发送接口必须是三态的。由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启

20、动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。图3.6 DS18B20电路DS18B20的1脚接地,2脚数据端接单片机的P3.3,3脚接VCC,为了确保DS18B20工作可靠,2脚要接10K的上拉电阻。2、 水位检测我们把储水箱大致分为3份,水位由潜入热水器的储水箱不同深度的水位电极和潜入储水箱底部的公共电极(导线)进行检测;由单片机依次使各水位电极呈现高电平,由公共电极所接的三极管进行电位转换,水位到达的电极,转换电位为低(0);水位没有到达的电极,转换电位为高(1);每检测一位便得到一位数据,3个电极检测一遍以后便得到

21、了3个串行数据,然后把这3个数据转化为字节一路送发光二极管;在这里我们可以用发光二极管亮的盏数来显示水位的高低。(若没有发光二极管亮则表示箱内没有水或者只有少量的水,若有一个发光二极管灯亮则表示箱内有三分之一箱的水,以此类推,若有三个发光二极管亮,则表示水箱水是满的。图3.7 水位监测电路 水位用三根导线,一个是电源负极,当导线接触到水后,由于水的导电性,使得两外两根导线也是低电平,从而使三极管9012导通,P3.6和P3.7是低电平,当两根导线不接触水的时候,输出是高电平。三、 继电器本设计包含两个继电器, 两个继电器分别是控制加热装置和加水装置,用发光二极管来代替加热装置和加水装置,继电器

22、用三极管9012驱动。继电器可以模拟的完成实物上的自动控制。继电器控制电路如图所示。 图3.8 继电器控制电路第四章 系统软件设计4.1主程序设计为了保证系统的正常运行,当系统开机后,即单片机上电复位开始运行后,需要对硬件各部分进行自动检查,如果正常,系统就可以继续往下执行,如果不正常就必须出错报警,以便人工修正,为系统的正常运行作好准备。主程序流程图如4-1: 开始 初始化水位温度值与上下限比较Y 报警转换并显示结束N 图4.1主程序流程图 4.2子程序设计4.2.1温度采集温度采集子程序的功能是对DS18B20进行初始化、查询温度采集和转换是否完成,并且完成对温度数据的处理以便送LED显示

23、。其程序流图如图所示: 开始 初始化DS18B20读DS18B20的序列号 读取温度数据 处理数据 返回 检测DS18B20存在? 发送跳过ROM指令 温度转换 等待NY 图4.2 温度采集程序4.2.2控制按键设计按键的确认就是判断按键是否闭合,反映在电压上就是和按键相连的引脚呈现出高电平还是低电平。如果是低电平,则表示闭合。因此,通过判断电平的高低,就可以确定是否有键按下。但是为了确保一次按键动作只确认一次按键,必须消除机械开关的抖动影响。消除按键的抖动,通常用软件消除的方法。在第一次检测到有按键被按下时,执行一段10ms15ms的延时子程序,再确认该键电平是否仍然为低电平,如果保持为低电

24、平状态就说明有键按下,从而消除抖动的影响。再次扫描,如果按键为高电平说明按键松开。本报警器按键处理子程序流程图如图4.4所示。4.2.3读温度 开始Y发DS18B20复位命令发跳过ROM命令发读取温度命令读取操作,CRC校验9字节完?CRC校验正?确?移入温度暂存器结束NNY 扫描键值 是否有键按下NY 延时10ms去抖动是否有键按下NY 提取键值 调用键盘处理子程序 结束 图4.3读温度流程图 图4.4键盘处理子程序第五章 系统调试5.1硬件调试制造电子产品,可靠性与安全是两个重要因素,而零件的安装对于保证产品的安全可靠是至关重要的。如何疏忽都可能造成整机工作失常,甚至导致更为严重的后果。元

25、件安装时我们要保证导通与绝缘的电器性能、保证机械强度、抱着那个传热的要求和安装时接地与屏蔽要充分利用。为达到产品的可靠与安全,安装时应遵循一些基本的要求与原则。5.1.1调试步骤对于整个系统制作完成后,调试工作是非常重要的一个环节,它直接关系到系统能否正常工作。 1、首先对电源部分进行调试。2、 检查印刷电路是否设计正确,元器件位置是否安装正确。特别是二极管、三极管、电容等极性不要装错。观察有没有焊接点短路,虚焊,多余的管脚有没有剪去。保证导通与绝缘的电气特性,电气连接的通与断是安装的核心这里所说的通与断,不仅是安装后简单的使用万用表测试的结果,而且要考虑在振动,长期工作,湿度等自然条件变化的

26、环境中,都能保证通者恒通,断者恒断。保证机械强度,电子产品在使用过程中,不可避免的需要运输和搬动,会发声各种有意或无意达到振动,冲击,如果机械安装不够牢固,电气连接不够可靠,都有可能因为加速度的瞬间受力使装置受到损害。保证传热的要求,在安装中,必须考虑某些零部件在传热,电磁方面的要求。安装时接地与屏蔽要充分利用,接地与屏蔽一是消除外办对产品的电磁干扰,二是消除产品对外办的电碰干扰,三是减少产品内部的相互电磁干扰。3、当检查电路和焊接无误后,就可以将一些比较主要的元器件和主控芯片装上去进行调试。焊接后的检查:焊接结束后必须检查有无漏焊、虚焊以及由于焊锡流淌造成的元件短路。虚焊较难发现,可用镊子夹

27、住元件引脚轻轻拉动,如发现摇动应立即补焊。5.1.2液位检测将自制的测水位导线放入水中,通电之后,显示当前的水位。我们把储水箱大致分为3份,水位由潜入热水器的储水箱不同深度的水位电极和潜入储水箱底部的公共电极(导线)进行检测;由单片机依次使各水位电极呈现高电平,由公共电极所接的三极管进行电位转换,水位到达的电极,转换电位为低(0);水位没有到达的电极,转换电位为高(1);每检测一位便得到一位数据,3个电极检测一遍以后便得到了3个串行数据,然后把这3个数据转化为字节一路送发光二极管;在这里我们可以用发光二极管亮的盏数来显示水位的高低。(若没有发光二极管亮则表示箱内没有水或者只有少量的水,若有一个

28、发光二极管灯亮则表示箱内有三分之一箱的水,以此类推,若有三个发光二极管亮,则表示水箱水是满的。将自制的测水位导线放入水中,通电之后,显示当前的水位。导线分三级,当水位没有达到最低级时,蜂鸣器响,继电器开始模拟进水的过程;当水位高于最低级时,蜂鸣器停止,显示中等水位,继电器继续模拟上水;当水位达到最高点时,显示最高水位的发光二极管亮,继电器停止工作。5.1.3温度检测 温度传感器检测到的水温,利用数码管能正确显示出当前的水温。图5.1温度显示电路5.2 软件调试5.2.1 Proteus仿真 Proteus软件是来自英国Labcenter electronics公司的EDA工具软件,它组合了高级

29、原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统。此系统受益于15年来的持续开发,被电子世界在其对PCB设计系统的比较文章中评为最好产品“The Route to PCB CAD”。Proteus 产品系列也包含了我们革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。 其功能模块:个易用而又功能强大的ISIS原理布图工具;PROSPICE混合模型SPICE仿真;ARES PCB设计。PROSPICE 仿真器的一个扩展PROTEUS V

30、SM:便于包括所有相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微控制器软件使用动态的键盘,开关,按钮,LEDs甚至LCD显示CPU模型。支持许多通用的微控制器,如PIC,AVR,HC11以及8051。最新支持ARM。交互的装置模型包括:LED和LCD显示,RS232终端,通用键盘,I2C,SPI器件。强大的调试工具,包括寄存器和存储器,断点和单步模式。IAR C-SPY 和Keil uVision2等开发工具的源层调试。应用特殊模型的DLL界面-提供有关元件库的全部文件。5.2.2 软件调试过程本系统所使用的汇编软件是Keil.Keil编译器把C语言编写的源程序与Keil内含的库函

31、数装配在一起,然后由C51编译器编译成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的HEX文件,然后将其写入CPU存储器中。电路设计制作完成后,先用keil u Vision2仿真器进行调试。(1) 、使用菜单“Project/New Project”出现一个对话框,然后给将要建立的工程取一个名字,单击保存后会出现另外一个对话框选择系统所使用的单片机型号,本系统所使用的单片机型号为AT89S52。选中后回到工程窗口的页面打开“Tatget”的下一层,“Source Group 1”单机右键选中“Add file to group Source Group 1”,出现对话框,选择系统所用的源文件即可。(2) 单击“Project/Target 1”出现对话框选中“Target”页面修改单片机的频

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论