【基于单片机的水温控制系统设计12000字(论文)】_第1页
【基于单片机的水温控制系统设计12000字(论文)】_第2页
【基于单片机的水温控制系统设计12000字(论文)】_第3页
【基于单片机的水温控制系统设计12000字(论文)】_第4页
【基于单片机的水温控制系统设计12000字(论文)】_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的水温控制系统设计摘要随着温度控制系统的出现及该系统在各个领域中的应用,同时随着温控仪表的发展,温控系统的各种性能都得到了各项提高,但是工业生产上对温控的精度及实时性的要求也越来越高,本文主要研究对水温进行控制,鉴于传统的水温控制系统存在滞后性及精密度的问题,解决这个问题就是本文的重点。本文旨在能够对水温进行实时检测,并对其进行控制,而在对水温进行控制处理方面的能力又以单片机最为突出,利用单片机对水温进行控制是当前研究的主流方向。本文采用51单片机为主控芯片,采用温度传感器对水温进行监测,采用数码管模块来显示温度,并能通过独立按键进行温度预设,系统对温度传感器反馈的信号进行处理,并向下一模块传递信号,以此完成系统的功能。该系统能对水温进行精准的预设,同时加热模块和降温模块使用的是继电器形式控制,继电器闭合模块就进行工作。关键词:STM89C52RC;水温;传感器;继电器AbstractWiththeadventofthetemperaturecontrolsystemanditsapplicationinvariousfields,aswellasthedevelopmentoftemperaturecontrolinstruments,variousperformancesofthetemperaturecontrolsystemhavebeenimproved.However,theaccuracyoftemperaturecontrolinindustrialproductionhasbeenimproved.Real-timerequirementsaregettinghigherandhigher.Thisarticlemainlystudiesthecontrolofwatertemperature.Inviewofthehysteresisandprecisionproblemsoftraditionalwatertemperaturecontrolsystems,solvingthisproblemisthefocusofthisarticle.Thisarticleaimstobeabletodetectandcontrolthewatertemperatureinrealtime,andtheabilitytocontrolandprocessthewatertemperatureisthesingle-chipmicrocomputer.Theuseofthesingle-chipmicrocomputertocontrolthewatertemperatureisthemainstreamdirectionofcurrentresearch.Thisarticleuses51single-chipmicrocomputerasthemaincontrolchip,usesatemperaturesensortomonitorthewatertemperature,usesadigitaltubemoduletodisplaythetemperature,andcanpresetthetemperaturethroughanindependentbutton.Thesystemprocessesthesignalfeedbackfromthetemperaturesensorandsendsittothenextmodule.Passthesignaltocompletethefunctionofthesystem.Thesystemcanaccuratelypresetthewatertemperature.Atthesametime,theheatingmoduleandthecoolingmodulearecontrolledintheformofarelay,andtherelayclosesthemoduletowork.Keywords:STM89C52RC;watertemperature;sensor;relay目录1绪论 [1]。水温控制系统的应用领域十分广泛,在工业上,温控系统担任着不可缺少的角色,其必须保证生产正常进行的水温必须控制在一个范围内,让其使工业生产一直处于一个有利的工作环境当中,这样就会大幅度提高生产质量,在生活中,水温控制系统主要体现在家电中。水温控制系统就必须实时获得水温的信息,一旦超过或低于这个范围,系统就必须对其进行加热或降温,同时,指示灯亮起代表其工作状态,系统还要进行自动报警,这个温度范围还必须可以根据实际情况进行自由调整。1.2国内外研究现状单片机诞生于1971年的英特尔公司,经历了SCM、MCU、SOC三个阶段。随着单片机性能的不断增强,温控系统也得到了发展。目前,我国在PID算法温控技术上与其他国家的差距并不大,而无论国内外的科学实验都表明了一种结果,那就是PID算法温控技术相比其它的温控技术更为先进,对温度控制的精度更高,并能大幅度降低系统的滞后性,PID控制方式经过几十年的发展,已经证明了是一个优秀的控制模式,未来的发展方向必然是依靠PID技术来提高温控系统的各项性能,PID算法温控技术必然是主流。现在国外在温控系统上全都是以PID算法技术为基础进行研究,并且都取得了不少的成果,例如英国的Hamid就将这一项技术应用到冰箱当中,结果表面PID控制在精度和控制性能的表现上都比较优秀,国内也在这一方面取得了很多的成果,但是我国与其它国家的差距就在于温控仪表上,想要在PID控制技术上拔得头筹,仪表的差距促使我国落后半步,而这主要是技术不够成熟,仪表的精度不够造成的。1.3研究的主要工作本次的设计是基于单片机的水温控制系统,为了更好地去实现该系统的理论功能,不仅要了解该水温控制系统的工作原理,还要了解其相关的检测方法,也要学习如何去实现单片机的软件程序开发,以及相关的理论学习和文献查询等工作。我们需要在相应的硬件和软件结合下,去实现我们的设计要求。要对以上的功能进行实现,需要对相关资料进行查询。(1)进行相关资料文献的一个学习方法:我们可以去图书馆查阅与之有关的书籍,或者在相关的学术网页浏览有记录的学术报告或者研究报告。(2)进行硬件模块的对比:我们可以根据已有的水温控制系统的硬件要求以及性能比较来确定所需要研发水温控制系统的硬件需要什么条件和预期要实现的功能。(3)还要进行模块的验证实验:当完成硬件和数据的处理后,还需要编写不同程序的编程来实现每一个模块的具体性能,并且要对模块功能进行检测工作,并以此来保证每一个模块在投入运行时能够实现正常的功能。1.4论文工作的安排(1)绪论:需要了解水温控制系统的背景,以及系统的发展现状,以及从各个层次阐述了各个模块的性能和工作要求。(2)方案设计:通过专业的科学技术来进行开发研究,然后选择合适的产品来验证其功能的好坏,并进行不同模块的性能验证对比实验,来选择最好的模块,最后进行整个研究流程的详细说明。(3)硬件电路设计:设计一个合适的方案,使得系统的每个模块都能正常工作,然后比较详细的介绍模块性能以及相应精研的产品的功能,包括一些需要我们特别注意的事项以及模块特点等基本信息的详细介绍。(4)软件设计:在选择好硬件模块以后,我们进行相关软件编程以及相应编程语言的介绍并且进行工作逻辑流程的实现。(5)调试与分析:对系统进行一步步的调试,排除系统存在的问题,查看结果能否符合要求,功能能否实现。(6)结论:对论文的研究过程进行论述,以及对论文的结果应用进行总结,在本次的设计过程中得到了怎样的经验。2方案设计2.1总体方案设计本次基于单片机的水温控制系统主要是通过硬件主机对检测器检测到的信号进行处理,然后对结果进行处理和判断,并将检测处理过后的数据显示出来,其功能就是维持水温在设定值,设定值还可以自由调节;该系统由单片机最小系统、温度传感器模块、加热模块、降温模块、蜂鸣器模块、显示模块以及供电电源组成。水温控制系统的开发,可以将研究过程细分为以下几个方面:(1)选择各模块的电路,并以此来确保每一个模块在工作时能够实现预期的功能。(2)以单片机为中心,来进行每一个模块的逻辑性链接,来实现本次设计的性能。(3)为本次各个不同的模块编写控制程序的代码,来实现我们预期的每一个模块对应的功能。(4)对设计出来的产品进行调试,并检查其功能是否正常,是否达到预期的功能。温度传感器温度传感器按键模块蜂鸣器数码管降温模块加热模块供电模块STC89C52RC 图1.1系统整体架构图2.2元器件的选型分析2.2.1单片机的选择在本次设计中,对于主控芯片的选择,可以从技术性、实用性、可开发性出发:(1)第一种类型是STM32系列微控制器。可以处理测量的信号,因为特定的芯片有特定的功能,能够对不同模块的不一样的操作达到一个具体且准确的反应。STM32单片机有高性能,低成本,低功耗的特点。因为其拥有众多的优点,受到其发展的速度性和很高效的利用性等等的一系列优点,使得该单片机在市场上存在很多的应用数据,以此非常适合市场去研发和探索,可开发性强。(2)第二种类型的单片机是STC89C52RC微控制器。该微控制器是51微控制器的核心设计。STC89C52RC具有强大的内部资源,以及数不胜数的异步串行通信接口,适合用于这次的设计产品。STC89C52RC微控制器的一个突出优势就是具有功耗较低的特点,功耗低是本次设计产品的一个主要追求,并且对其进行编程开发较为容易,非常适合初学者以此来进行单片机开发。该款单片机的兼容性很强,性能可靠,因此占有市场较大,在进行设计时比较容易买到,有保障。由此可以通过对两种单片机的一个详细分析,再拿二者进行比较,可以知道二者的优劣之处,STM32微控制器具有更高的性能,而STC89C52RC则体现在拥有强大的内部资源,相对于STM32来说,STC89C52RC的编程相对简单一点,很适合进行简单系统的设计,而本系统所要实现的控制功能并不复杂,因而STC89C52RC微控制器更具有可取性,无论是从存储性强还是功能消耗性来看以及个人对这一款单片机的难易程度来看,STC89C52RC都略胜一筹。并且从各种功能特性来看,本系统设计更适合使用STC89C52RC。通过种种因素的对比考究,以及对于预期性能的实现度的考虑,以ST89C52RC微控制器作为主逻辑处理系统是我们衡量之后的最合理的选择。2.2.2显示电路的选择在本次设计中,显示电路有两个选择:(1)数码管电路,该种显示电路的数码管一般运用于需要显示数据比较少的东西的系统,它的优势是编程简单易懂,而且功能易于实现,同时需要考虑到应用效率及其他因素,为了达到数据更新更快以及降低显示要求的目标,并且数码管电路更易进行焊接,数码管还具有成本低的优势。(2)LCD1602显示器,该种显示器的显示面积比较大,功能能够在比较复杂的编程下实现,而且其对应的封装函数具有高度的成熟性。由于LCD1602液晶屏显示电路的种种优点,使得该显示电路广为人知并能在很大程度上满足大众的需求,用户不需要考虑要进行怎样的细节连接,只需要完成简单的管脚相连接,然后输入编写好的程序,这样子就可以轻松实现预期的数据显示。由此通过对以上两种显示电路的一个优缺点的详细分析,得出了结论:为了使检测器检测到的信息数据能够清晰而又直观明了的呈现出来,而且我们本次设计需要显示的数据不多,而数码管就能满足该功能且易于编程,而LCD1602价格比数码管高,编程复杂,为了不造成资源的浪费,节约成本,因此本次选择数码管电路作为该系统的显示电路。2.2.3按键电路的选择(1)采用独立按键。独立按键作为直接连接单片机I/O口的单个电路,每个独立按键只占用一个I/O口,并且按键之间相互独立,不会互相影响。独立按键在应用操作方面非常灵活,该系统如果不需要多个按键的时候,则采用独立按键。(2)采用矩阵按键。矩阵按键有多种规格,一般为4*4或者2*3等规格,矩阵按键通过行扫描和列扫描的方式对按键进行读取,因此也可称为行列键盘。矩阵按键的优点就是节省I/O口资源,因此系统如果需要的按键较多,例如输入数字、密码等,则矩阵按键是一个非常好的选择。通过以上对比,矩阵按键在需要按键较多时是很好的选择,可节省大量的I/O资源,但是本设计需要的按键并不多,如果选用矩阵按键会有些浪费而且也不美观。所有独立按键是最好的方案选择。2.3设计要求分析(1)反应迅速:基于温度控制系统的发展,每一个不同的工作场所以及工作环境对于其工作设备的硬件要求不断提高。首先我们需要用检测器检测相应的数据信息,然后进行一定的数据处理,我们检测出来的硬件的反应能力会影响到系统继电器电路的反应时间,从而影响到加热模块的启动。要从数据反应来设计合适的硬件模块,争取给开发出符合预期功能的作品。(2)依赖可靠:为了实现本文预期的功能,所有的设计都要为预期的功能服务,如果在后续开发过程中系统无法达到本文预期的要求,就表示设计出了问题,在研发时最不想看到这种情况的出现,因此在设计实现产品功能的全过程中,首先要以实现系统功能,满足系统工作效果为主要研发目的,包括各个模块的性能也是设计系统时的硬件检测开发过程中非常需要关注的指标检测。(3)方便后期排查:在设计实验来检测硬件功能时,在设计方案上,在系统的硬件时,一定要从硬件的实用性出发,选廉价的但质量保证有保障,可靠性要高。尽量运用简单的方案设计来完成系统所要实现的功能。这些工作完成以后,能够让设计的流程更加清晰,让系统的工作反应更加清楚。关于软件编程,要在能够实现系统功能的前提下尽量简单编写,尽最大可能实现简单编程就可以完成各个模块的封装化工作。这样子可以便利我们检测功能是否正常,以及在后期错误排查时能够比较简单的发现问题,及系统的功能添加工作才能体现出具体的便利性和系统性,以便更好的了解系统,使系统更好的运行工作。(4)性价指数达标:现在设备对于硬件的要求越来越高,市场上出现了各式各样的产品。本次设计的系统在完成所有功能的基础上,需要选择一个合适的设计方案,主要以节省成本为目的,来做出一个最适合该系统的一个选择方案,我们在设计硬件连接以及软件的程序编写时,尽可能的选择质量有保障但成本不高的硬件和简单合适的编程语言以及较为单一的编程环境。也许市场上早就已经出现同类型的产品,所以后来者只有不断优化性能以及最大程度上实现成本的降低,才能具有更大的竞争力。在高稳定性和更低成本的绝对优势下,才能让本次设计的产品在市场众多产品的情况下,在市场上占有一席之地。2.4本章小结本章的内容解释了温控系统的元器件的选取,并针对两个方案之间进行了分析,又对系统的设计原则做了分析,为系统的硬件设计做好了准备工作。

3硬件电路设计3.1设计原则本次设计的硬件电路包括单片机的最小系统、温度传感器电路、按键电路、显示电路、继电器电路、电源以及各电路之间的IO口连接等。本文的重点部分就是硬件电路。所以本次主要从以下三方面出发去考虑本次的硬件电路的实现。(1)在设计硬件电路时,需要尽量地使用一些经典电路或熟悉到的硬件设备,这样不仅节省时间,而且使用市面上比较熟悉的电路能让设计的稳定更高,也能大幅度降低电路的出错率,即使出现错误,寻找解决错误的时间也大幅度减少,极大提高设计工作的效率。(2)对硬件电路设计时,同时也要考虑到各部分的最佳工作条件,尽量要在设计前期通过资料查阅的手段了解清楚该部分的工作条件,然后在设计电路的时候,将这方面的条件考虑进去。这样既保证了电路运行的稳定性,也减少外部因素对电路的影响及排除错误的时间。。(3)硬件电路设计时不仅要考虑到特定的硬件问题,同时也要往软件设计方面去考虑。比如:某些功能可以通过硬件或软件执行,如果使用增加硬件的方法来实现会增加硬件电路和设计的成本,而使用软件实现时,CPU处理时间增加,会使设计工作效率降低;一定要经过分析研究后才能设计出最佳的电路。3.2单片机最小系统单片机最小系统由其相应处理芯片和相关的外电路组成。其具有很多的优点比如:高性能、低成本、功耗低等,STC89C52RC单片机是增强后的一类单片机类型。3.2.1单片机外电路单片机外电路由晶振电路和复位电路组成,晶振电路是单片机运行的一个重要因素,并且该类型的电路可以有效抵抗外部因素的不利干扰,因此通常选择使用晶振电路来生成系统的参考频率,这样系统频率的精确度就有了保障。通过增加晶振频率来提高系统时钟频率,时钟频率的提高会进一步加快单片机的运行速度,从而达到提升微型控制器的操作速度的目的。不仅如此,震荡器的稳定性和频率都会受到电容值大小的影响,为了使震荡器能够稳定而又高效的工作,设计最小系统时需要要求晶体和电容器非常的靠近,从而增加振荡器的稳定性。复位是单片机的初始化操作,而该系统的上电复位电路必须要处于一个特殊的位置,在单片机中,当需要再次打开单片机电源时,相当于对单片机进行初始化。除了系统的原始操作外,当出现其他错误的操作及程序的运行错误,都会导致系统上锁,从而关闭功能,无法运行。而增加部分特殊的模块功能,可以让锁上的系统重新运行起来。假设程序运行出了问题,也可以通过同样的操作来解决问题。所以说,这个模块在整个设计中心来说是至关重要的。图3.1单片机最小系统3.3温度传感器模块系统要对水温进行控制首先就要进行测温,不然连温度都不了解,那么对其进行控制是不严谨的,而测温就需要选择温度传感器,温度传感器的选择应该是要能减轻工作负担,可以直接拿来使用,形状可以根据应用的场所要有所改变的,而符合以上要求的就只有DS18B20,DS18B20输出的是数字信号,可以直接传输给单片机,中间就不再需要去进行AD转换,其采用的单总线技术,能够在比较恶劣的环境下进行测温,并且其测量的温度误差不会太大。同时,它的接口简单,部分功能电路的集成,更便于直接拿来进行改造,焊接也方便。电路原理图如下:图3-3-1温度传感器电路图中加上10K电阻是为了上拉,限制高低电平。DS18B20的内部结构可通过图3-3-2观察,测温原理可通过图3-3-3观察。图3-3-2DS18B20结构框图图3-3-3DS18B20测温原理3.4显示电路本次设计的系统采用的是4位公阳数码管,该显示电路的优点我们也已经具体分析过了,就是可以同时间显示多字节。该显示电路更易让人进行逻辑编程,这主要依赖于它能同时显示多组数据。本次设计采用的是三极管进行驱动,三极管的型号为S8550,采用三级管驱动的原因是本次电源供电是5V,可以直接供电但数码管会很暗,三极管就可以放大电流让数码管变得更亮。系统不同字符的输出是依赖于电信号以及芯片的逻辑处理,经过处理,显示屏上可以显示出多种多样的字符。电路原理图如下:图3.4显示电路3.5按键电路按键电路在控制系统中是必不可少的,且作为人机交互的常用方式。本次设计中,可以通过按键电路来设计开启系统的运作、调整系统的运行模块。因为我们使用的按键比较少,所以我们选择独立按键来实现该设置功能。

这种按键的突出优点就是它的软件和硬件相对比较简单,易于操作。

当按键处于正常状态时,即处于未开机状态时,其内部有上拉电阻,输入状态为高电平;当按键被按下后,输入状态为低电平。在系统程序运行时,只需要知道I/O接口到底是处于什么样的一个状态,我们就可以判断出来到底哪个按键是开的状态以及哪个按键是关闭状态。以此来实现各按键的设置逻辑,其电路图如下:图3.5按键电路3.6报警电路报警电路采用蜂鸣器电路,当温度传感器检测到温度低于或高于预设温度范围时,就会直接传送一个信号给单片机,经过单片机处理后,然后单片机控制蜂鸣器进行报警,提示现在的温度低于或高于预设温度范围,继电器闭合开始工作。蜂鸣器的工作电流比较大,电路基本上是驱动不了蜂鸣器的,需要增加一个电流放大电路才可以,所以需要增加一个三极管来增加蜂鸣器的电流蜂鸣器的正极性的一端连接到5V电源上,另一端接到三极管的集电极,三极管的基极由单片机的一个管脚通过一个与门来控制,当管脚为低时,与非门输出高电平,三极管导通,蜂鸣器电流形成回路,发出声音,其设计电路如下:图3.6报警电路3.7继电器电路单片机的工作电压大都在5v,工作电流在mA以下,而要把它用于大功率场合,就需要用继电器去驱动系统中的加热负载或降温负载,如图所示就是继电器电路,当需要打开继电器的时候单片机给8550高电平,8550低电平继电器就会闭合,这时候继电器所控制的模块就可以正常工作,为了方便观察继电器是否闭合,设计了一个发光二极管当指示灯,灯亮就代表继电器闭合,指示灯也是控制系统必不可少的部分,当前运行什么状态,工作是否正常,都可以通过指示灯反映出来,指示灯的一个作用就是为程序调试提供便利,可以通过指示灯来观察某段程序的是否执行,另一个作用就是系统在工作时,指示工作状态,能给人一种直观的感受。图3.7继电器电路3.8本章小结本章阐述了硬件的设计原则,对硬件的设计有一定的帮助,并对硬件中的各个电路做出了论述,硬件电路作为本文设计的重点之一,其各个电路的设计一定要以实现系统预期功为前提,为下一步的软件设计做好理论准备。

4软件设计4.1设计思路本次系统涉及多个功能的实现,所以软件设计的代码量并不少,如果采用整体化的设计方案,不仅会导致程序的结构变得复杂化,同时也增加了各功能代码的耦合性,非常不利于设计的调试和后续的扩展功能。因此,本软件的设计采用模块化的设计方式,使整个程序结构清晰流畅,便于后期的阅读和修改,极大程度地提高了程序设计的效率,同时,该方式降低了各功能设计的耦合性,保证了功能的完整性,将一个大功能的实现最大化地分割成各小模块功能的实现,然后再对各小模块的程序进行编辑,这就体现了各小模块的独立性,因此,在编辑一个功能模块的逻辑时,另外的功能模块也不会到影响,这保证了程序设计中的可靠性和高质量。确定了设计的方式后,下来就是详细到系统各功能实现的方面,本次系统涉及到主程序的编写、数据采集程序的编写、数据传输的编写、各功能方法的编写等,在设计的过程中要注意好同步定义到硬件连接的端口,当主程序调用不成功时,要从出现的错误日志中去寻找报错的地方,分析报错的原因,并寻求解决的方法。软件是控制系统的灵魂,其决定着本次系统的功能是否能实现,而使用良好的设计方式去编写出结构优良的程序,不仅是对本次系统功能实现的重要保障,同时也方便了后期的扩展和移植及改错,更是提高程序的优美流畅性。4.2编程环境及语言简介程序的设计是本次系统功能实现的基础条件,选择合适的编译工具可以大大缩减编程的时间,提高软件设计的效率。常用于单片机编译的工具Keil,KEIL是微软公司推出的专门用于硬件编程调试的软件,经其编译过后的程序文件可被单片机高效地识别,让机器快速地判断我们定义的功能逻辑,从而高效地实现设计者设计的功能。所以本次编程语言选择采用C语言,其入门的门槛没有那么高,而且使用C语言设计功能逻辑时,有着层次清晰、可读性高,具备可迁移性等优点,满足代码开源和共享的要求,从某种程度上讲,也降低了代码的编写综合成本。满足本次工作功能实现的需求,同时也为后续的调试和功能扩展等需求提供了重要保障。4.3流程设计4.3.1主流程设计系统运行工作就是对数据的检测和处理,首先各模块会实现初始化管脚信息,这有利于系统的后续操作以及机器自检工作。系统根据预设的温度阈值进行判断,当系统传感器检测到信号后,单片机处理识别数据,显示电路显示数据,当检测的数据达到阈值报警模块立即启动,继电器闭合进入工作。具体流程图如下。开始开始数码管初始化开启中断数码管显示DS18B20初始化按键扫描设置预设温度温度不在范围内开启继电器返回YN图4.1系统主流程4.3.2按键扫描流程设计本次设计为独立按键,扫描程序启动后,首先进行的是模块的初始化,然后确定有没有按键按下并且判断是哪一个按键,判断完成后就去进行下一步。每当检测到有按键按下后,就要去除键抖动,并且延时一段时间再进行下一步的检测判断,这样就能够识别出是哪一个键闭合。其流程如下所示:按下按键?按下按键?开始初始化判断键值执行对应操作返回图4.2按键扫描流程4.3.3报警流程设计报警功能在本次设计中起着重要的提示作用,当系统温度传感器电路检测到数值后,会和预先设定的温度值进行对比,如果该值到达或超过阈值,则控制单元会发出信号,使蜂鸣器的引脚发生电平变化,驱动蜂鸣器进行振动报警。其流程如下所示:单片机输出低电平蜂鸣器报警警单片机输出低电平蜂鸣器报警警是否触发报警条件报警程序入口返回YNY图4.3报警流程4.3.4显示模块设计显示模块采用的是数码管,程序开始后首先进行的是初始化的工作。随后微控制器获取并处理相关的数据,在主函数调用的情况下,数据写入数码管的寄存器,并从寄存器中读取数据,最后显示出对应的内容。程序流程图如下:开始数码管模块初始化单片机传送数据开始数码管模块初始化单片机传送数据数码管获取数据数据显示结束4.3传感器模块设计水温测量是系统的第一步设计,不能准确地测量水温,控制系统就不能正常运行,水温测量的程序要考虑硬件的接口,编写的程序要简洁完善,使得测量功能尽量精确。DS18B20读取函数流程图由于DS18B20与单片机之间采取的是单线制串行数据传输,在对程序进行读写时,必须严格保证读写时序。写字节函数流程图读字节流程图4.4本章小结本章阐述了软件的设计思路,对各模块的软件的编写流程都进行了图解,为下面的调试留出试错空间及方便改错,特别是传感器模块软件的编写是重中之重。5调试及分析5.1硬件调试硬件调试是对整个电路进行检验,对其进行查缺补漏的重要步骤。当按照设计的电路原理图完成各模块的连接后,首先第一个重要的点就是耐心检查本次的连接顺序是否和设计的方案一样,对应的线路是否连接在了对应的端口上,因为硬件的电路涉及的线路较多,这方面不够仔细就容易造成后续更多的调试问题,就会增加调试电路的工作量;在对元器件进行焊接时,虚焊、焊接不牢固、焊接错误等现象都有可能会出现,此时就会造成线路不通,从而引起部分模块不能正常工作,当我们调试中遇到此类问题时,应对整个电路进行检查,推论出该种情况的原因,并得出解决途径。其次就是电源,给设计上电前要检查所输入的电源电压是否在各硬件元器件可接受的范围内,否则很可能会造成元器件的烧坏,为系统上电前尽可能用限流的可调稳压电源,并预先做好过流保护的电流,上电后观察各硬件的运行状态,如有异常则立即切断电源;下来就是对主控制芯片的调试,系统正常上电后,在系统运行一小会后,观察此刻系统的运行状态;最后就是对功能的测试,将仿真串口连接至PC并下载好相应的驱动,将自己写好的功能程序编译下载到单片机中,再一次运行系统,观察我们定义的程序功能是否实现,若实现相应的功能,则表明调试成功。整个调试的过程比较枯燥单一,要想把整个调试过程做好,需要严格按照流程完成。调试实物图如下:

图5.1硬件调试实物图图5.2数值显示图5.2软件调试本次系统功能要完美实现需要对软件不断的调试,首先要根据定义的功能逻辑需要,通过程序调试的工具去判定其是否可行,因为本次的整体功能设计采用的是内容耦合的方式,不仅降低了各模块的耦合性,也为本次调试提供了很大的便利性,便于后期对程序的改错。首先打开主函数,在里面分别调用各功能模块程序的方法,观察程序的调试是否出现错误;如果程序编译时发生报错,则就是设计的代码逻辑或代码编写出现了问题,此时应该耐心地去观察报错日志,分析报错的起因,试着独立去修改;如果不是代码逻辑方面的提问,则往调试环境未配置相关参数的方面出发去分析,可以通过网上查询相关资料或者咨询导师的方式。通过多种方法去调试、改进设计的程序,直到编译时未出现任何错误,才能算是软件调试初步的成功。5.3整体调试在确认硬件的连接和程序的设计都没有问题后,将进入到最重要的一步,也就是整体调试,硬件设计的调试和软件设计的调试只能算是系统功能雏形实现的调试,并不能代表整个系统已经完成,因为其中可能还会有部分功能存在缺失,而软硬件联合调试是一个系统功能完善的调试。首先进行的是将硬件上的下载串口连接至终端,查看相关的指示灯是否亮起,然后在终端上打开设计好的功能程序,将程序下载至系统中;随后启动电源,将系统运行起来,观察各模块是否正常工作,对应的功能是否都已实现,如果存在未实现的功能模块,则从该模块的软、硬件部分进行分析,查看该模块的程序逻辑设计是否合理、端口的设定是否合理、模块的连接是否在对应的端口上等,通过层层分析和每一次调试,直到该功能模块的完整实现。通过多次的调试,本次的设计已可以实现其基本功能。5.4调试分析整个调试过程无疑是一个枯燥的过程;在硬件的调试中,要去实现硬件之间的连接,又要对硬件连接时出现错误进行排查消除,例如线路之间的连接时常会出现虚焊或短路的情况;在软件的调试中,拥有具有良好编程风格是非常重要的,方法的构思实现或许不难,但编写出结构清晰明朗的功能代码可以在软件设计乃至后续的整体设计中节约出很多的时间;整体的调试是本次设计接近尾声的一个重要步骤,该操作中需要细心地观察验证,并耐心地分析其中的不足之处以及如何修正,对系统的功能尽力完善。本次整个过程总有差错出现,遇到的坎坷之处比比皆是,但最终结果是好的。5.5本章小结本章对硬件的调试进行了阐述,解释了如何对硬件电路进行调试以及对出现错误的地方进行修改,还有对软件的调试,对软件程序的编写一定要仔细,编写程序逻辑很重要,整体调试是对整个系统进行的调试,是完善系统功能最重要的一步。6结论水的温度可以是对现实生产和生活有利亦或是有弊,其是一把双刃剑,对其控制的好就是有利,反之亦然,对水温的控制相当于改变附近的环境,环境的变化可以是高温或者低温,本文通过查阅现有的资料文献,对现有的温控系统设计进行了研究,在这个智能化系统发达的今天,水温控制被频繁的使用在各个领域,深入到人们的生产生活中,远有工业的锅炉,近有冰箱热水器,都体现出温控系统的重要性。本系统通过DS18B20进行对水温的检测,通过各个模块的启动对水温进行控制。本文首先介绍了系统的背景及现状,通过方案分析确定了元器件的选型,通过查阅到的资料及个人的理解做出了设计,根据分析确定了各个方案的做法,再根据方案一步步进行。本文第一步就是资料的收集和文献的查阅,首先要对水温控制有一个大致的设计思路,要大胆设计,小心求证,在经过一步步的方案论证,论证后又要对方案进行分析,以确保整个方案符合要求,然后就是对软件的程序的设计,这一步也是需要查阅大量的资料,去参考一下别人的逻辑思路,要明确系统的逻辑设计,然后再去编写程序,最后就是对系统进行整体的调试,将系统中存在的错误一一改正,完善整个系统功能。本设计相对于其他的温控系统,就是通过继电器的闭合来控制模块的运行,这样启动时间快,整个电路设计简洁,通用性较高,实现难度低。首先,在经过自己的努力,实物是做出来了,但还是与实物有些差别,水温控制就是对水的温度在物理上进行控制,对其加热模块和降温模块进行选择是有一定的难度的,还有对水进行温度控制是要考虑水的重量,重量的不同所选取的加热模块或降温模块的功率也不同,那么能不能有一种通用的温控系统可以实现这种功能,这是本次设计中未能考虑到的点,本设计还存在降温模块采取冷却水会不会简单点,这是本次设计存在的两个问题点。参考文献明鑫,陈可中,王戎丞,等.基于单片机的水温控制系统[J].现代电子技术,2005,028(006):1-2.郑云水,杜丽霞.基于AT89S52单片机的水温控制系统设计[J].现代电子技术,2008(06):156-158.蒙琴,彭森.基于单片机的水温控制系统设计[J].卷宗,2017(14).张越,张炎,赵延军.基于DS18B20温度传感器的数字温度计[J].微电子学,2007,37(005):709-711.王云飞.

温馨提示

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

最新文档

评论

0/150

提交评论