太阳能热水器控制设计【字数:12982】

指导教师 曹国华 摘 要系统是太阳能热水器控制设计,处理器选择AT89C51控制器实现各个模块的连接。设计内容包括水位采集、水温数据采集、采集水温、水位数据显示控制、报警控制、水位以及水温调节。在太阳能热水器硬件系统中,主要对软硬件进行设计,硬件包括系统各个功能的原理图以及电路图,水温采集电路,水位采集电路,水温控制电路,水位控制电路,搭配液晶显示屏显示系统相关数据,软件代码的设计需要完成温度采集、水位采集等功能,最终实现软件与硬件的结合。选取C语言实现代码开发,选取Keil工具实现代码开发运行。不断优化,完成设计。系统软硬件都设计完成后,通过实物进行系统验证,对设计进行调试,对设计进行优化,直到实现系统功能。Key wordsAT89C51;太阳能热水器;水温检测;水位检测ABSTRACTThe system is the control design of solar water heater. The processor chooses AT89C51 controller to realize the connection of each module. The design includes water level acquisition, water temperature data acquisition, water temperature acquisition, water level data display control, alarm control, water level and water temperature regulation. In the hardware system of solar water heater, we mainly design the software and hardware. The hardware includes the schematic diagram and circuit diagram of each function of the system, the water temperature acquisition circuit, the water level acquisition circuit, the *好棒文|www.hbsrm.com +Q: &351916072& 
water temperature control circuit, the water level control circuit, and the related data of the LCD display system. The design of the software code needs to complete the functions of temperature acquisition, water level acquisition and so on. The combination of software and hardware. Select C language to implement code development, select Keil tools to implement code development and operation. Continuously optimize and complete the design. After the design of hardware and software is completed, the system is validated by physical objects, the design is debugged, and the design is optimized until the system functions are realized.Key wordsAT89C51; Solar water heater; Water temperature detection; Water level detectionABSTRACT 2第一章 绪论 51.1课题研究意义 51.2研究现状 51.3本课题研究内容 6第二章 系统方案设计 72.1系统整体方案设计 72.2主控制器设计论证 72.3显示模块设计论证 82.4声光报警设计论证 92.5温度检测方案设计 92.6水位检测方案设计 9第三章 硬件电路设计 103.1主控制器电路 103.1.1概述 103.1.2晶振电路 113.1.3复位电路 123.2显示电路 123.3报警电路 143.4水位(水温)控制电路设计 143.5水温检测电路设计 153.6水位检测电路 153.7按键电路设计 16第四章 系统软件设计 174.1软件整体设计 17 4.2显示软件设计 194.3水温检测模块程序设计 19第五章 系统测试 215.1Proteus仿真软件简介 215.2LCD1602液晶仿真 215.3报警值设置仿真 225.4水位检测仿真 245.5水温检测仿真 245.6故障检查 25结束语 26致 谢 27参考文献 28附录一 电路图 29附录二 程序 30第一章 绪论1.1课题研究意义随着我国社会和经济的不断发展,单片机逐渐的应用到工业、农业、医疗领域以及人们的生活当中,并有效的促进了其健康快速的发展。智能水温控制系统的出现将给人们带来极大的便利,拥有广阔的发展前景和极大的发展空间,成为新一代时尚的家居用品。其中温度检测具有非常重要的作用,通过对单片机水温的温度进行实时的采集,从而设计出科学有效控制及报警系统,使设计后的系统具有配置简单,方便实际操作并具有较高的实用性。通过软件编程实现控制算法以及相关的参数设计,从而实现水温控制系统的主要要求,单片机通过温度传感器对水温进行检测与预警,进而实现对水温的控制。该系统集数据采集、显示、控制、处理于一体。系统简易实用,可靠性强,拓展方便。本水温调节系统是以单片机为控制核心,并包含温度传感器,接收等模块,旨在为在更有效的减少和控制潜水热水机的原料消耗。随着太阳能热水器的不断发展,人们越来越多地选择太阳能热水器,尤其是太阳能热水器的核心设备。太阳能热水器企业可以使设备在行业内不断完善。他们正在慢慢优化太阳能热水器相关功能的水平,并慢慢增加投资,使用户太多。太阳能的运行比较简单,所以对太阳能热水器的智能化要求也需要慢慢提高。1.2研究现状早在上个世纪末,太阳能热水器领域得到了迅速发展。对于超过10年,在2006年生产太阳能热水器的数量达到了16万平方米,超过两倍多6500000平方米在2001年到2006年底,国家太阳能热水器的数量已经超过75万平方米,其中3.5万平方米2001年时代。现在,该国不仅是世界顶级的太阳能热水器制造领域,而且太阳能热水器的世界上最大的销售区域。到2006年,有超过1200家公司中,可以生产太阳能热水器,拥有超过15十亿年产值达和销售的国外20000000美元的国家。超过30万个就业机会在整场,足见其经济实力来创建。现在有很多太阳能产品,人们所熟悉。因此,太阳能热水器必须是不可缺少的电器如冰箱和风扇。该国不仅是世界顶级的太阳能热水器制造领域,而且太阳能热水器的世界上最大的销售区域。到2006年,有超过1200家公司中,可以生产太阳能热水器,拥有超过15十亿年产值达和销售的国外20000000美元的国家。超过30万个就业机会在整场,足见其经济实力来创建。现在有很多太阳能产品,人们所熟悉。因此,太阳能热水器必须是不可缺少的电器如冰箱和风扇。该国不仅是世界顶级的太阳能热水器制造领域,而且太阳能热水器的世界上最大的销售区域。到2006年,有超过1200家公司中,可以生产太阳能热水器,拥有超过15十亿年产值达和销售的国外20000000美元的国家。1.3本课题研究内容此项目选取AT89C51单片机完成主要的工作内容。项目选取AT89C51单片机作为主控制器,可以实现温湿度检测设计,系统选择单片机进行控制,首先对相关文献进行分析,了解设计现状,对系统的功能进行架构设计,设计出系统整体方案,按照总分的结构对各个功能模块进行方案设计,选择最佳方案实现系统功能。方案确定后设计系统电路,对电路原理进行说明,按照电路连接方式进行软件代码设计,设计系统软件设计流程图,最终对系统进行调试,验证硬件以及软件的设计。完成系统设计。第二章 系统方案设计2.1系统整体方案设计系统是太阳能热水器的控制设计,其控制核心为AT89C51单片机,主要功能模块包括显示、水温检测、水位检测、水量控制、按键、主控制器、声光报警外加电源模块。在太阳能热水器硬件系统中,主要对软硬件进行设计,硬件包括系统各个功能的原理图以及电路图,水温采集电路,水位采集电路,水温控制电路,水位控制电路,搭配液晶显示屏显示系统相关数据,软件代码的设计需要完成温度采集、水位采集等功能,最终实现软件与硬件的结合。如果水位和水温的信息超过设定值,系统将报警。水量控制部进行的加水动作。水温控制部分可以由家庭成员进行操作。的按键部分实现水温和水位的用户的手动控制,并可以设置报警水温和水位。显示水位信息和水温的信息。系统结构框图如图2-1所示。图2-1 系统结构框图2.2主控制器设计论证方案一单片机作为系统核心的控制器,是其他所有模块的连接枢纽,设计选用AT89C51。单片机内部有存储模块,内部的存储模块具有超长时间的存储能力,单片机软件设计时通过MCS-51指令完成的,此指令标准在很多器件上都可以使用,通用性很强。这款单片机的能耗也很小,在低功耗方面表现优异,单片机内核是51内核,现在很多单片机都是使用此内核,单片机是最基础入门级8位单片机,在开发设计上也是最简单的,此款单片机内部可完成8K的代码量,如果代码量超过了8K,还可以设计外围代码存储方案,设计满足所有设计需要。单片机在设计出厂后做了加密处理,后期产品中使用后,不会被盗取设计文件,通过任何技术手段也无法进行解密。单片机的执行速度也很快,一般搭配的晶振是11.0592Mhz晶振,单片机的稳定性很强,在很多复杂场景下都可以稳定运行。此单片机最大优势就是成本方面,成本很低,这对于很多设计来说也是最重要的一点,所以这就是为什么在很多产品设计中可以看到它的声影。所以不管是从能耗还是价格等方面都有着很大的优势,运行稳定,性价比高,价格相对便宜,且功耗低,加密性强,此外在系统核心模块的选择上采用STC系列能够有效提高系统的工作效率,能够在工作状态下进行在线运行,让系统工作更加便捷。方案二选择MSP430型号处理器,人们也把这种单片机叫做混合信号处理器,这种处理器集成了多种电路模块,主要有三种电路模块,第一种是模拟电路模块,第二种是数字电路模块,第三种是微处理器模块。由德国德州仪器公司生产,1996年这种产品开始在市场上推广,它是一种混合信号处理器,其指令精简,功耗低。在一些便携式的仪器仪表中,对这种单片机的应用比较广泛。但利用这种单片机的开发的难度比较大,价格也相当昂贵。因此,即使是在一些简单的设计中,也不宜采用这种单片机。方案三选择STM32F103RBT6处理器,处理器搭配的是ARM型32位的M3核的CPU,此款处理器计算速度快、采购成本低、功耗低的32位处理器。目前此处理器在大量的电子商品上进行使用,比如电子农业领域、电动汽车领域、共享行业等领域,这些领域都有使用此产品的例子。处理器的运行速度可达72兆赫兹,高速的运行,是由于内部设备都可以进行高速操作,STM32最大的特点就是输入输出接口数量多。此款处理器还搭配了两个模数转换器,转换精度达到12个数据位,检测精度很高,可以处理18路模拟数据,处理器的模数转换的很多参数都可以进行代码控制、可编程操作,例如模数转换频率,多通道的扫描方式。方案选择: 由于设计需要低成本, 器件效率也需要达到最高,方案二也需要重新转换,设计电路复杂,成本明显高,方案三的利用率会很低,在本设计中不是非常合适的方案1可以实现整个系统的功能,成本远远低于方案一,所以选择方案1。2.3显示模块设计论证方案一选取数码管显示。静态驱动就是单片机的每一个输入输出端口分别控制一个与其相对应的数码管的段码。相对于动态驱动,静态驱动的好处是程序简单,亮度比较高,不容易出错,显示的更清晰。坏处是每一个段码都需要一个输入输出端口,一个数码管需要八个端口,如果程序中的数码管过多,则需要的端口则更多,不利于设计实现。方案二选取LCD1602液晶显示项目中的参数。LCD1602液晶显示屏和单片机的连接设计比较容易,程序设计容易上手。将想要显示的内容对液晶进行读写、使能以及数据接口,就可以使任意位置内容的显示实现操作。此液晶能显示32个字符但此液晶不能显示汉字。LCD1602液晶的电源要求和系统单片机一致,都为5V。在本次设计中液晶显示屏起到了很大的作用,它用来显示我们想要测量的数据,以及我们想要改变的数据。液晶显示器的发展十分迅速,以前还是黑白的,现在科技中使用的都已经是液晶的了,而且再现在的家居中十分的常见,我们用它来显示数字信息,图片信息,甚至其他的视频信息。而且他还有稳定性好,功率低,物理特性好的优点,所以我们使用液晶显示器LCD 1602作为我们本次设计的显示设备。另外的话,这个设备在我们学习中也经常用到,简易操作,16位代码控制。运用在我们的很多地方,比如电视机,电脑,数码投影啊都有用到它。我们在本次设计中使用也很简单,我们将它的8个I/O的接口和我们单片机的接口进行连接,把rs,e,rw与控制端的三个接口相连,这样简化驱动操作,更加合理。方案选择由于设计不单单要显示数字字符,数码管显示内容太过单一,不能很好的满足项目要求,所以选取方案二。2.4声光报警设计论证声音报警系统要求设计报警功能,选择蜂鸣器实现报警功能,蜂鸣器能够进行蜂鸣,完全可以满足报警功能的需要。单片机通过一个接口就可以对蜂鸣器进控制。单片机通过PWM波就可以对蜂鸣器进行控制,实现报警功能。2.5温度检测方案设计选用DS18B20采集温度数据。通过芯片的技术手册可以知道该芯片只有一根数据线用于完成数据的传输,在通信的过程当中既要被当做时钟总线来使用,也需要充当数据总线使用,所以在使用的过程中需要按照严格的通信时序来完成数据的通信,因此在作为从机设备使用的过程当中,只要当前没有进行数据的传输就需要立即释放数据线,以其与的从机与主机实现数据的通信和时间的同步,在使用的过程中一般需要增加一个阻值为5k的上拉电阻,以便该通信线可以输出高电平用来表示该设备处于空闲的状态。DS18B20在对温度值进行测定并且将最终的结果值与控制系统进行交互通信的过程中,必须严格按照主从机通信的工作时序进行,否则会造成数据传输的混乱和错误。2.6水位检测方案设计浮球液位测量装置是一种具有简单结构设计和易于发展液位操作装置的。该测量设备不需要电源和其它??电路。该测量装置具有体积小,使用寿命长等优点。设计只需要选择适当的材料,因此它可与所有测试的液体,压力和温度下使用。它已被广泛应用于航空航天,智能硬件,汽车业,农业等领域。第三章 硬件电路设计3.1主控制器电路3.1.1概述AT89C51可以存储8K的代码量,对于大多数项目是够用的,此款单片机在产品中使用频率很高,主要因为单片机的开发设计更容易上手,对于工程师而言难度较小。所以很多产品都使用它来作为主控制器方案。这对于产品的成本很有优势,而且时间成本也会大大减小。此款产品常用接口有32个,包括P0、P1、P2、P3四组接口,每组8个接口,这样数量的接口对于大部分设计都可以满足要求,而且有的IO口还配备有第二功能,既可以作为常用IO,也可以作为特殊功能使用,比如P3.0为串口通信的输入端,P3.1为串口通信的输出端,P3.2为定时器0的中断信号输入口,P3.3为定时器1的中断信号输入口,这4个IO为特殊功能,也可以作为普通IO使用。单片机除了设计有普通IO,还有一些必要的接口,单片机的运行必须有复位电路、晶振电路。单片机的9脚接单片机的复位电路,此引脚可以输入有效得到复位信号对单片机的运行进行复位,单片机的晶振电路通过单片机的18脚、19脚输入时钟信号。还有31脚EA,此引脚的信号会觉得单片机的运行程序的位置,如果EA不接或者接低电平,单片机会默认从芯片内部存储模块读取运行程序,如果EA接高电平,单片机会从外部读取运行程序,这时P0口就会作为地址以及数据接口,作为程序读取的通道。作为一款控制器,电源是比不可少的,40脚为电源,20脚为电源地。如图3-1所示。图3-1 单片机引脚说明3.1.2晶振电路单片机可以运行代码,必须要有晶振电路的支持,每一句代码的运行,每一条指令的运行,都是按照晶振电路的时钟信号运行得到,所以晶振的频率就代表了单片机的运行速度。如果没有晶振电路或者晶振电路异常,单片机的运行将会停止,甚至无法烧写程序,所以晶振电路是比不可少的电路。单片机的定时器相关设计,都是建立在晶振的基础上,定时器的时间计时,定时器初始值等,都需要晶振电路的支持,综上所述,晶振电路的重要性可想而知。电路搭配的是11.0592Mhz的晶振,所以定时器的各项参数,都需要通过这个频率进行计算,晶振是无源晶振,所以必须搭配两个起振电容,没有起振电容,晶振是电路无法工作。晶振电路如图3-2所示。图3-2 晶振电路晶振电路中晶振对于起振电容也是有要求的,需要选择20到50pf的电容,电容的种类也很多,选择瓷片电容就可以,电容的选择可以在数据手册中找到相关的内容,晶振电路的布局也必须离单片机的XTAL0、XTAL1越近越好,这样避免过长,在晶振信号传输过程中引入干扰,造成系统不稳定,单片机运行不稳定,电容的布局需要在单片机的接口处,这样晶振信号传输的过程中,到达单片机接口,通过电容进行处理,信号会更加稳定,在晶振两端串联大小为30pF的电容,构成自激振荡器,为单片机提供时钟频率。3.1.3复位电路晶振电路很重要,但是单片机光有晶振电路还不行,复位电路同样重要,复位电路,顾名思义就是复位,可以回到原位,对于电子系统而言,就是重新运行,单片机在启动时会复位,叫做上电复位,也是因为复位电路提供了复位信号,同时设计的复位按键,可以通过按键进行复位,复位在系统调试时起到了很关键的作用,在数据手册中要求的复位信号持续时间为5毫秒,只要满足要求,并且输入到复位引脚脚,单片机就会复位。在设计调试时,尤其软件调试,复位可以让工程师了解软件设计的问题所在,不光是在产品使用中起作用。电路见图3-3所示。 图3-3 复位电路由一个10K电阻、一个10uF电容和一个开关组成复位电路。电容跟开关的连接方式为并联,再串联上一个电阻,复位电路的复位方式分为两种一种是手动复位;另一种是自动复位。手动复位运用到开关来进行实现复位;而自动复位则是运用电容充放电原理。然而电阻的电压就会下降,电压会减小。复位接口的电压会下降。处理器的复位端就是低电平,处理器就会执行复位动作。3.2显示电路设计中采用的是LCD1602液晶显示器,该款显示器性能稳定,功能全面,用途也比较广泛,更重要的是能更好的实现率采集使用中的计时、温度显示等功能。该款显示器接口和单片机可以更好的契合。同时LCD1602体积小、重量轻,方便携带。功耗也是检验一个设备性能的重要指标,众所周知,现代电子设备功耗最大的部件之一就是显示屏,采用一款功耗低的显示器就很有必要了。通过测试,LCD1602的功耗比其他产品要低,这就意味着当采用LCD1602时,智能率采集运行的时候能更好的节约电力。该款显示屏选用十六个引脚的接口。如果要让显示屏的最后一行的第三列显示,首先要知道该位置的地址。由上图可知,该位置地址为42H,如果把数据写入则为01000010B+10000000B,结果为11000010B。出现这种结果的原因是,根据规定写入的地址最高位的电平不可以是低电平,所以需要加上10000000H。如果要让该位置显示大写的字母S,则需要将53H送入42H单元。显示功能通过LCD1602实现,显示内容包括温度数据,LCD1602可以满足要求。液晶接口包括时序口和数据口,8位数据口,为了便于控制8位数据口需要接在统一一组的IO口,例如P0口,这样在程序上会便于控制,时序口接其他IO口即可,系统的电源和液晶电源一致,所以无需其他转换电路。电路如图6所示,电路中的电阻是液晶的背光调节。如图3-4所示。图3-4 液晶接口电路图显示是第一眼会被关注的内容,所以显示效果非常重要,液晶显示内容清晰,背光可调,显示内容清晰,可以灵活控制液晶的背光灯,需要时打开,不需要时关闭,只要内容显示,不需要刷新就会保留在液晶屏上,只有再从新刷新的时候才会改变显示内容。在内容显示上,液晶显示屏显示内容多样,相比于LED而言,LED只能显示数字,显示内容单一,液晶显示内容很多,符合设计要求,电路设计简单,不需要额外的器件进行驱动。液晶内部其实很简单,内部是由一个一个小的点阵构成的液晶屏幕,输入显示内容后,各个小点阵按照内容显示,此显示屏是价格成本较低的。液晶显示在运行状态下,显示内容时,需要比较大的能耗,所以液晶都设计了驱动芯片,用于对液晶显示进行驱动。液晶屏可以同时显示32个数字,或者显示32个字母,或者32个其他字符,显示内容样式较多,可以显示很多不同的格式内容。液晶带有很大的显示内容库,在显示程序设计上简单,直接输入显示内容就可以完成显示,显示库里包括数字、字母、标点、特殊字符等。3.3报警电路单片机通过一个接口对蜂鸣器进行控制,因为单片机接口电流太小,所以需要设计驱动电路,设计通过三极管进行驱动,三极管选择PNP,型号为8550,蜂鸣器接三极管的集电极,三极管发射极接电源,基极接电阻后接单片机,电阻是为了防止灌电流对IO口的冲击。之后通过软件代码的设计控制蜂鸣器实现蜂鸣,一般通过低电平就可以驱动,需要其他音调,需要通过PWM波进行驱动。如图3-5所示。图3-5 蜂鸣器报警电路图3.4水位(水温)控制电路设计水位控制电路主要完成注水工作。所以选择电磁阀加水。电磁阀由5V 供电, 可与系统的电源相匹配。由于电磁阀的作用需要较大的电流, 因此有必要设计驱动电路, 选择三极体驱动。电磁阀作为三极电源的收集器和正极电源之间的连接。如果输入较低, 晶体管断开, 电磁阀没有电流流经, 则电磁阀不吸 (OFF);相反, 当输入为 + VCC 时, 晶体管饱和, 电磁阀有相当大的电流流经, 电磁阀吸 (ON)。水位控制电路如图3-6所示。 图3-6 水位控制电路电阻R1和R2的取值必须使当输入为+VCC时的三极管可靠地饱和,即有βIb>Ies,假设Vcc=5V,Ies=50mA,β=100,则有Ib>0.5mA而Ib=(Vcc-Vbe)/R1-Vbe/R2。若取R2=4.7K,则R1小于6.63K,要实现三极管达到完美的饱和深度以及三极管电流放大倍数的设计,通常R1选择3.6K上下的阻值。3.5水温检测电路设计为了保证对环境温度的准确测量,此次使用的是DS18B12温度传感器而没有使用LM324A运算放大器来完成温度测量的功能,通过使用集成的DS18B12温度传感器可以避免连接复杂的硬件电电路,同时该元件可以将采集到的模拟信号自动转换为数字信号输入到控制系统中进行处理,不必要增加额外的模数转换元件,可以节省设计的成本同时保证了数据的准确性。本次的温度测量功能使用DS18B20来完成,通过其测得的环境温度值实时的与单片机控制系统进行通信,通过使用显示元件将实时采集到的温度值进行显示输出,相应的电路连接图如图3-7所示。 图3-7 温度检测接口电路图通过对电路图的分析可知系统的工作原理较为简单,首先温度传感器DS18B20对环境温度进行测量将当前环境中的温度值传入到单片机的IO口当中,单片机一方面将获取到的温度值输入到显示元件进行显示,另一方面通过读取预先设置的温度阀值与当前的环境温度值进行比较,根据比较的结果不同控制风扇的档位进行自动的调整变化,使得环境的温度向着预设的温度区间变化并维持相对稳定的环境温度。3.6水位检测电路液位传感器由磁性弹簧开关和浮球的。浮球具有磁部件。一个或多个磁性弹簧开关被放置在一个非渗漏的非磁性金属或塑料管。在第二部分中,所述管道从一个或多个磁性浮子球放置和稳定双回路操作被选择来操作浮球并在相应的位置上的磁性弹簧开关。浮球将与液体运动。通过接近在钢筘的在球开始时的接触点,将有开和关的信号,通过该液位可被测量。系统只需要处理切换信号。可以安装在测试电这种方案被检测,并且可以检测到的当前水位。水位检测接口电路如图3-8所示。图3-8 水位检测接口电路3.7按键电路设计系统的人机交互通过按键实现,用户通过按键来设置系统数据,在结合软件上的设计实现数据的输入。由于系统设计的按键数量不多,所以通过独立按键就可以实现数据输入。在按键设计时,硬件电路比较简单,主要通过软件进行识别,设计选择的是独立按键,单片机接口默认是高电平,所以按键设计的有效电平是低电平,也就是说按键按下后低电平就输入到单片机的接口,如果按键按下,低电平就输入到单片机,按键松开,单片机默认就是高电平,这样就可以识别到按键的动作。搭配软件的扫描,人机交互的数据就可以输入到系统。在设计中独立按键的数量较少,一共需要4个按键,分别是复位按键、按键S2为设置选择,按键S3为功能加键,S4按键为减按键。电路如图3-9所示。图3-9 按键电路第四章 系统软件设计
目 录
4.1软件整体设计
系统软件设计包括软件初始化、按键扫描、水位测量、水温测量、水位控制、水温控制、数据显示等。启动设备后, 首先完成每个参数设置的初始化操作, 然后系统进行密钥扫描, 以确定是否执行手动操作和参数设置。该系统实时检测水位和水温, 在判断异常时控制水位和水温, 控制声光报警电路。整体软件设计流程如图41所示。

图41 软件设计流程图
4.2显示软件设计
显示选择LCD1602,单片机按照时序向数据口输入数据,采用并口输入方式,控制简单,首先需要对液晶进行初始化,设置液晶显示模式,数据输入为并口,设置光标显示模式,初始化完成后,就可以设置液晶显示位置,位置设置好,输入显示的内容,完成之后,后期对于显示数据的刷新,只需要设置显示位置,然后输入显示内容,就可以对液晶进行操作。如图42所示。

图42 LCD1602显示流程图
4.3水温检测模块程序设计
根据数据手册所提到的DS18B20数字温度传感器与单片机进行通信控制过程,我们知道在使用该芯片进行温度的测量时必须严格按照初始化、ROM操作指令、存储器操作指令等三个工作过程进行,本次使用的单片机的芯片其晶振源工作频率为12MHz。按照DS18B20进行温度测量的要求,为了程序调用的方便,在程序编写是分别编写了初始化子程序、读子程序以及写子程序三个方法供主程序在与其进行通信的过程中调用。软件流程如图43所示。

图43 水温检测软件流程图
第五章 系统测试
5.1Proteus仿真软件简介
Protus可以模拟多个处理器,如MCU在线,以验证软件设计和硬件设计的正确性。Proteus仿真环境有很多可用的设备,非常方便。它可以在不设计特定物理对象的情况下验证设计。根据设计的示意图绘制仿真图像,可以验证硬件电路的设计,然后加载软件设计代码,启动仿真,验证软件代码,方便快捷。PrUTUS还可以监控大量的通信数据,比如安装虚拟串口、监控串口通信等,这些都是完全相同的环境。PrutUS还可以制作电路板并绘制最终电路板图。单片机的仿真功能强大。它可以模拟许多外围电路,包括液晶显示器、各种电阻器、电容器和数字管模型。还有多种存储方式,RAM、ROM、开关、自锁、简单、人性化的仿真。
5.2LCD1602液晶仿真
此节主要验证液晶显示的正确性。需要绘制单片机电路,液晶显示电路,验证液晶显示等。可以看到仿真液晶第一行显示的是S:179L W:22.0 c,表示当前水位179升,水位22摄氏度,液晶第二行显示S:200L 0 W:20.0 c,表示当前水位200升,0表示此时不进行报警值设置,水位20摄氏度,验证效果如图51所示。
图51 液晶LCD1602仿真
5.3报警值设置仿真
通过按键对水位及水温报警值进行设置,点击设置按键液晶第二行显示1,表示此时可以通过加减按键对水位报警值进行设置。验证效果如图52所示。

图52 水位报警值设置仿真
再次点击设置按键液晶第二行显示2,表示此时可以通过加减按键对水温报警值进行设置。验证效果如图53所示。

图53 水温报警值设置仿真
5.4水位检测仿真
如果当前水位低于设置的报警值,则进行加水,如图54所示,此时水位为202升,低于当前水位128升,所以控制加水设备加水,加水控制指示灯亮。

图54 水位检测仿真
5.5水温检测仿真
如果当前水温低于设置的报警值,则进行加水,如图55所示,此时水温为18摄氏度,低于当前水温20摄氏度,所以控制加热设备加热,加热控制指示灯亮。

图54 水温检测仿真
5.6故障检查
进行实物组装时,首先需要准备系统设计需要的元器件,制作工具包括烙铁、焊锡等,对照电路图,找到对应的器件进行布局焊接,焊接时安装电路模块进行焊接,先从电源开始,单片机最小系统等逐个进行,焊接完成每一模块电路都必须进行测试,保证电源不短路,没有锡渣,防止信号短路,必须保证测量正常,才可以通电测试,任何一处的短路,或者接触不良,都有可能烧坏电路。一定要一步一步进行测试,常见的异常现象都要检查明确,有正负极要求的器件,不可接反,否则将烧坏元器件。电源正负和电源之间是否短路需要特别关注,需对整个系统进行仔细的检查。实物组装焊接好之后,就可以进行上电验证,上电之前再次确认电源是否短路,通过万用表进行测量,电源正常后,打开电源开关,电源指示灯是否正常,电源指示灯亮,这时可以对单片机烧录代码,代码烧录后,观察显示状态是否正确,之后可以通过人机交互按键控制系统运行,验证系统功能,之后可以进行其他功能的验证,按照系统功能要求进行验证。所有功能验证完成后,实物上电测试完成。
结束语
设计使我学习到以前不曾学到过的知识,做设计少不了求知欲与探索欲,还有好奇心,它们推动着我完成了这次任务。我有一个梦想,就是让人类生活的更加便捷,于是乎我就绞尽脑汁去选择合适的选题,经过深思熟虑,选择了心率采集系统设计这个选题,因为我觉得心率采集在日常生活中用处很大,符合我的期望,并且心率采集这个系统操作起来难度适中,符合我的要求。就这样经过大量的查阅文献和参考一些资料,脑中构建起了一个初步的框架,光有框架还不行,更重要的是实践,通过实践才能得到各项数据,才能验证我的想法,最终实现智能率采集的各项功能。在整个设计中知网给了我很大的帮助,里面有许多优秀的期刊文献带给我灵感,帮助我解决了很多在设计中遇到的问题,通过查阅各种资料,使我的眼界越来越开阔,收获越来越大。通过在网上搜索关于心率采集设备的使用情况和不同款的率采集的用户反馈情况,还有就是实际体验了市面上的率采集,使我能够充分的了解它们的优缺点,这对于我的设计来说是很有帮助的,可以避免进入一些误区。因为不是经常使用焊笔,所以焊接时出现了许多失误,导致硬件接触不良,但是经过指导老师的悉心指导和我的多次练习,掌握了焊接的方法,提高了焊接效率,最终完成整个设备的焊接工作,整个设备的运行正常,使我获得了极大的满足感。整个流程下来我获得了前所未有的收获,动手能力、思考能力、创新能力、和解决问题的能力均有很大提升,整个毕业设计也是我个人能力不断提升的过程。还有就是在做这个心率采集的过程中,许多知识遗忘,导致进程有所延迟,这就需要看以前的教材了,需要把重要的知识点和所用到的方法与结论写下来,这使我的记笔记的能力获得了提高。开发一个产品是不容易的,其中包含了好多小细节,而且许多东西需要自己去摸索,把知识变成自己的,但这并不意味着闭门造车,恰恰相反,在这个网络发达的年代,许多优秀的人才把他们的智慧分享到网上,我们需要做的是吸收他们的知识并且转化为自己的力量,通过站在巨人的肩膀上能更进一步。罗马不是一天建成的,毕业设计同样也不是,需要一步一步踏踏实实的钻研设计,最终收获成果,这其中少不了喜悦与痛苦。在大学期间很少编写程序,当刚开始编写率采集的程序是也是有些茫然,我就看相关的编程书,其中有许多不明白的部分借助网络一个个查出来,整个编程过程其实也是我重新学习知识的过程,把大学期间的知识重新温习了一遍,同时又巩固了一遍。这使我坚信,看的再多也不如亲自动手去做,实践才是进步的阶梯,毕业设计就是实践过程,检验我们的学习,检验我们的各种能力,这对以后我们的工作也是大有帮助。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/508.html

好棒文