炉温控制系统设计_第1页
炉温控制系统设计_第2页
炉温控制系统设计_第3页
炉温控制系统设计_第4页
炉温控制系统设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

哈尔滨华德学院本科毕业设计(论文)黑龙江东方学院本科毕业论文(设计)绪论课题背景随着社会发展不断进步,人们生活水平不断提高,越来越多的人开始不仅仅满足于温饱水平。生活中也出现了越来越多的智能便捷产品,就比如身边的热水使用,多年以前我们日常生活中的热水供应大多都是采用煤炭烧水,几乎每个家庭每天都要使用煤球烧热水以供日常所需。这种获取热水方式的方式十分麻烦,同时对于热水的保存也非常不方便,经常是早上烧的热水到了下午或者晚上就凉了,热水的使用非常不便。同时煤炭烧水的方式对于空气的污染也是比较严重的,我们都知道现在社会最关注的问题就是空气质量问题,采用煤炭热水会产生一些物污染气体导致城市空气质量变差。在这种情况下,基于电加热的电热炉在市场上就十分受欢迎,随着科技的发展越来越多的设备都开始基于智能控制,这些设备上配有电子控制板用来实现智能控制。电热炉也不例外,现有的电热炉可以通过温度传感器检测水位,通过经过控制器发出信号控制加热设备进行热水,并且在水温达到设定温度之后自动关闭加热,如此循环起到恒定水温的功能。这种智能化的电热炉在市场上的需求十分巨大,尤其是在我国北方地区,由于北方地区冬季比较寒冷,家庭使用的热水都需要保温设备,因为这类智能电热炉不仅能热水同时在完成热水之后还能保温,以供家庭热水所求。国内外发展现状上世纪我国居民家庭主要热水方式都是采用煤炭加热,每家每户都各自使用煤炭进行热水以供每天所需。也有一些地区集中供应热水,每户家庭都定期去打热水,但是这些集中供应热水的地方同样也是采用煤炭热水的。进入21世纪之后,随后随着电子科技的不断发展,越来越多先进的设备进入到我们的生活,人们开始采用电能热水,一些小型热水设备比如热水棒、热的快这类小型热水设备开始风靡市场。这些小型热水设备在学校宿舍中十分常见,学生大多都采用这类设备热水,但是这种设备没有感温功能,它们只能通电加热、断电关闭,很多时间使用者都会忘记关闭热水设备,这种情况下经常会发生因为水被烧完而引发火灾的现象。随着单片机技术的不断成熟,现在几乎所有的家用电器设备都在单片机的控制下运行,新型的热水设备电热炉也是如此,电热炉可以实现实时检测水温,得到设定水温后立刻关闭加热,以避免长时间热水消耗电能和导致意外情况的发生。同时电热炉的加热温度是可以通过用户设定的,用户可以根据喜好自行设定加热温度,电热炉会自动实现水温的保温功能。同时大多数的电热炉还有节能模式,可以调节加热功率,进行省电模式工作,这也符合当前电器节能的需求。新型基于单片机的电热炉在未来市面应该具有一定的发展潜力,相信不在不久的将来会占用市场。主要研究内容本设计主要实现功能:本设计主要实现电热炉的自动热水功能,整个控制系统以89C51单片机为控制核心,采用防水型温度传感器DS18B20采集水温数据传输给单片机以检测水温,同时通过LCD1602液晶显示屏将设定水温和检测水温显示出来,并且配有按键可以供用户自行设定加热的水温。系统还要一个规律调节功能,采用可控硅模块驱动电热棒,同时可以用单片机程序控制电热棒的开启功率,来实现调功加热功能。本设计主要研究内容:为了实现该控制系统的功能,首先调查市面上的各类电热炉的控制方式和产品功能,总结市面上现有电热炉的优势以及它们的缺点。然后根据预期的设计要求设计电路图,同时学习并且应用传感器技术,设计出以51单片机为控制核心并且结合温度传感器的控制系统电路图。然后开发基于C语言的单片机控制程序,最终进行软硬件联合调试,测试控制系统功能是否达到预期要求,在完善控制功能之后长时间运行持续运行系统,以验证控制系统的稳定性。系统方案设计上一章介绍了本设计的开发背景和意义,同时也介绍了本设计的具体研究内容。为了实现本设计的系统控制功能,首先分析系统的功能要求。然后选择构建出系统的硬件框图,接着选择合适的电子元器件和模块来实现系统功能。系统硬件框图如图2-1所示,系统硬件可以分为几大模块,各模块与主控单片机之间的关系如下图所示。具体包括了以下模块:电源输入模块、温度传感器模块、按键检测模块、液晶显示模块、可控硅驱动模块。图2-1系统硬件框图各功能模块本小节详细介绍了各个模块在电路中的功能,只有各个模块的功能组合在一起,才能完成整个系统功能的实现。电源输入模块:通过输入5V直流电源来给系统供电,可以通过USB直接将电源连接到电脑USB口上,另外220V交流电压提供给可控硅模块,用于驱动电炉工作。温度检测模块:采用防水型温度传感器DS18B20,将传感器置于水中检测温度,将温度信息发送到单片机内部进行处理,从而实现系统对温度信息的实时监控。按键检测模块:通过按键设定加热水温,实现水温可调功能。液晶显示模块:本设计的水温信息和设定温度信息通过液晶显示模块来显示,用户可以通过液晶显示模块来观察当前电炉水温信息。单片机模块:51单片机模块作为系统的控制核心,接收来自传感器、按键的输入信息,这些信息通过程序处理分析之后驱动单片机输出信号开启/关闭电炉。加热设备:当设定水温低于检测水温时,控制系统将会启动电炉实现水温升高的功能;当设定水温高于检测水温时,控制系统将会自动关闭电炉。单片机选择单片机有着琳琅满目的种类,在设计之前我也通过查询资料进行比对,在自己能力范围内选择合适的单片机型号。之前的学习中我们学习的是ATMEL公司生产的51型芯片,但这次设计我选择台湾宏晶公司生产的STC89C51单片机。下文就向大家介绍其特点与AT系列单片机的区别。STC和AT型号的单片机相比较,其性能更稳定,功能更强大,运行速度更迅速;STC89C51单片机的可编程Flash存储器内存只有4K,而STC型号具有8K,相对而言可以带更多的负载。另外的方面AT系列的需要专门的下载器才能写程序,而STC系列的用串口线就可以进行下载,许多的电子设计大赛都用的STC作为主要元器件。除了上述储存器以外,STC单片机还具有SRAM、UART、SPI、PWM等模块。温度传感器介绍本设计选择温度传感器方面考虑到了以下几种传感器,第一种是DS18B20一体式温度传感器,这种温度传感器只有3线接口,而且器件的体积很小,使用电路也十分方便,只需要给DS18B20温度传感器供电就可以从传感器信号线输出温度信号。第二种是NTC热敏电阻,这类温度传感器的感应温度的原理就是它本身是一个可变电阻器,NTC热敏电阻的阻值会随着温度的改变也发生变化。我们只需要将NTC热敏电阻和一个电阻建立分压电路,将分压电压传输给单片机进行识别电压,就可以得知当前NTC热敏电阻的阻值大小。然后通过查表可以找到NTC热敏电阻当前阻值对应的温度值,这样就可以实现通过NTC热敏电阻测试温度的功能。第三种是热电偶传感器,一般K型热电偶比较常见。热电偶作为感温器件,可以直接测量温度,热电偶可以在回路中产生热电动势,利用单片机控制系统将热电动势转换成温度值就可以实现温度检测。结合以上三种温度传感器的分析,考虑到整个温度检测过程的便捷性和程序控制的方便行,本设计采用一体式温度传感器DS18B20,同时因为本设计采集的是水温,所以选用防水型的温度传感器。DS18B20温度传感器相比于其他两种传感器还有着价格低廉的优势,同时在温度检测电路的设计上也比其他两种传感器方便很多,DS18B20传感器只需要3根线,其中2个电源线分别连接VCC和GND,剩下的一根线为信号输出线,直接输出温度信息传输给单片机检测温度。DS18B20温度传感器的程序识别使用读取时序来实现的,检测程序过程并不需要用到AD转换模块,不像NTC热敏电阻的检测过程还需要用到AD转换模块。因为89C51单片机没有内部AD模块,因为如果采用NTC热敏电阻检测温度的话还需要外部设计ADC转换芯片,这不仅增加了电路设计成本同时也增大了设计开发难度。所以我们在设计过程中放弃了NTC温度传感器从而采用DS18B20温度传感器,这种传感器的信号识别不需要特殊的IO口,用51单片机的普通IO口就可以识别,传感器应用电路十分简单。DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位,见图2-2。图2-2DS18B20内部温度表示形式根据DS18B20通信协议,主机必须控制DS18B20完成三步温度转换:在每次读写之前将DS18B20复位,在复位之后发送ROM命令,最后发送RAM指令以便可以使DS18B20操作。为了复位,主CPU必须下拉数据线500微秒,然后释放它。接收到信号后,DS18B20等待约16至60微秒,然后发出60至240微秒的低脉冲,这是重置成功的信号。DS1820的注意事项尽管DS1820具有以下优点:温度测量系统简单,温度测量精度高,连接方便以及电源线使用量低,但在实际应用中应考虑硬件成本较低需要相对复杂的补偿软件。为了在DS18B20与微处理器之间进行串行数据传输,在读写DS18B20时,必须严格保证读写同步,否则将不会读取温度测量结果。当使用PL/M,C和其他高级系统语言同步时,DS18B20的程序读取也十分方便,简单来说就是通过DS18B20的特定时序去读取数据,这些检测得到的温度信息会分布在特定的序列中,只要程序读取得到这些数列之后取出温度所在的数据位置,就可以得到温度数据,然后可以将温度数据显示在数码管或者LCD液晶显示屏上,这样就可以完成温度传感器检测温度并且显示温度的功能。本设计因为需要检测水温,为了能够保证水温检测的精准性,需要将温度传感器放入水中进行测温,因此需要采用防水性型的温度传感器。DS18B20的内部结构和DS18B20内部功能模块如图2-3所示。图2-3DS18B20的内部结构和内部功能模块图可控硅介绍可控硅最为一种大电流驱动器件,其可以驱动一些电流大的元器件,它在单片机、PLC等控制系统的指令下进行去大功率设备驱动。可控硅称为晶闸管,它可以分为单向晶闸管和两向晶闸管,可以直接驱动220V大功率交流设备。可控硅相比于继电器,它的优点是控制电路简单,元器件体积小同时不会像继电器那么工作时因为继电器吸合而发出声音。可控硅在工作时如果超过可控硅的最大功率,那么也会使得可控硅工作时出现发热现象,长时间超功率运行会导致可控硅发热甚至烧坏的现象,因为在选择可控硅型号时同样也要考虑可控硅的最大功率。可控硅还有一个比继电器有优势的地方在于,可控硅作为一种无触点的开关器件,它不仅可以在工作开关时没有声音,同时这种无触点的开关可以实现高速开关,可以配合大功率设备的调功率功能。可控硅在调功率的时候需要配合过零检测电路,因为不管什么型号的可控硅都有一个特性,就是可控硅在伴随交流电压经过零点时会自动关闭,此时可控硅会自动关闭。因此需要控制系统不断发出开启可控硅的指令,同时在经过零点可控硅自动关闭只有,经过多久打开可控硅,这个时间就是影响着可控硅的导通率,从而影响着设备的功率大小。只要通过控制系统去调节这个导通时间就可以实现对设备的功率调节功能。可控硅根据不同功率而分成不同类别的封装,常见的可控硅封装有T0-220、DAK、和TO-92封装,一般而言TO-92封装的可控硅功率最小,TO-220封装的可控硅功率较大,同时在可控硅驱动大功率设备时候通常我们会给可控硅加上散热片,这样保证可控硅的工作温度不超温,以保证可控硅正常运行,避免可控硅烧坏从而使得控制系统失去功能。平时我们都使用单向晶闸管,通常称为普通晶闸管,它是由四个半导体材料层组成,含有三个PN结和三个外部电极组成:P型半导体的第一层提取物被称为阳极A,类型P的第三层半导体的电极被称为控制电极G,并且第四层的N型半导体引出的电极被称为阴极K。在晶闸管电路的符号中可以看出,它是类似于二极管的单向导电器件,由于在其中添加了一个控制电极G,使其性能完全不同于二极管的特性。P1N1P2N2基于硅单晶的三层四层器件,创建于1957年,因为其特性类似于真空晶闸管,所以在世界范围内被称为硅晶体闸流管,简称为晶闸管T。图2-4可控硅实物图SCR晶闸管的工作原理是P1N1P2N2的三端四层结构组件,含有3个PN合并。分析原理时它是由PNP管和NPN管组成效果图在下图所示。双通道晶闸管是硅整流器,也称为双向可控硅。该装置可以对电路中的交流电流进行非接触式监测,以小电流控制大电流,具有无火花,运行速度快,寿命长,可靠性高,电路结构简化等优点。外部是一个类似于普通晶闸管的两通道晶闸管,具有三个电极。但是,除了其中一个电极G也称为控制电极之外,其他两个电极通常不再称为阳极和阴极,而是统称为主电极T1和T2。其符号也不同于普通晶闸管,普通晶闸管是通过将两个晶闸管倒置而形成的。在中国,其型号通常称为“3CTS”或“KS”,而国外也有用“TRIAC”表示的。双向晶闸管电极的规格,型号,形状和布局因制造商而异,但是大多数电极按T1,T2和G的顺序从左到右放置。图2-5可控硅内部机构图本章小结本章首先整体介绍了整个控制系统的硬件组成结构,通过框图方式体现了各个硬件模块之间的关联方式,还介绍了硬件电路中各个模块的功能。同时分章节详细介绍了单片机、温度传感器以及可控硅的工作原理和内部结构。在了解完设计所需要用到的元器件之后,才能更好地将这些元器件应用在电路中,然后通过单片机去控制这些器件实现系统功能。系统硬件设计本章详细介绍了炉温控制系统的控制电路设计过程,本章分成多个小节。每个小节都介绍了不同功能模块的电路设计原理,同时也介绍了该模块电路设计的思路。主要从以下几个模块电路设计来分析:主要元器件选型、液晶显示电路设计、温度自动控制电路设计、按键检测电路设计、可控硅驱动电路设计。单片机电路设计本设计选用STC89C51为主控芯片,这款芯片在工作过程中消耗电流小,同时也是8位单片机中性能比较高的微型控制器。该芯片有8K内存,一般应用在产品设计上可以满足程序设计容量。这是一款51内核的单片机,51系列单片机在高校的推广十分给力,目前绝大多数院校电子专业的学生都接触过51系列单片机,因此该单片机的应用度也是十分高的,很多电子设计师从高校毕业之后参加工作还是选用熟悉的51单片机。51单片机在价格方面也比较有优势,在资源分配置上虽然不如STM系列芯片那种充足,但是应对一般的小产品设计是绰绰有余的,该芯片的脚位也是比较多的。以下从图3-1可以看到STC89C51的引脚图。图3-1STC89C51引脚分配图STC89C51单片机的时钟信号来源有两种:第一种是来自于外部的晶振,第二种是来自于单片机内部时钟。本设计采用外部晶振电路作为时钟信号,可见如图3-2所示,只要在单片机的XTAL1引脚和XTAL2引脚引脚外接晶振和电容就可以构成自激振荡器,其产生的信号可以提供给单片机作为时钟信号。图3-2最小系统晶振电路图图3-3是单片机的外部复位电路,该电路中只要S4按键被按下,那么单片机的RST引脚就会变成高电平,此时单片机就会复位。这种复位方式属于单片机复位中的手动复位,一般在单片机系统死机或者跑飞时候使用,在单片机正常运行状态下一般不会使用到该复位按键。图3-3最小系统复位电路图温度检测电路设计本设计的温度传感器采用DS18B20,这款温度传感器的接线十分方便,封装成后可以应用于多种场合,根据场合的不同,外观也会发生相应的改变。DS18B20的实物图可见图3-4,它的主要技术性能有:1)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯,电路设计简单。2)测温范围广以及测温精度高,其测温范围为-55℃~+125℃,固有测温误差仅为1℃。3)支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。4)工作电源范围广,其工作电压范围为3.0~5.5V。可以在常规3.3V或者5V的单片机工作电压环境下运行,适用多款MCU。图3-4DS18B20外观图图3-5所示的为DS18B20的电路图,温度检测使用的DS18B20模块采用5V供电,将其数据输出口连到单片机引脚,通过单片机读取该引脚的信息来识别当前温度。图3-5温度检测电路图可控硅驱动电路设计本设计加热器件采用220V交流供电的电炉,因为功率较大故选择可控硅模块用来驱动电炉,同时可控硅作为驱动器件还可以用于调节功率大小。我们都知道交流电压是以正弦波的波形方式变化的,交流电压的频率为50赫兹,交流电压会经过零点,这种现象就成为交流过零点。而可控硅的特殊之处就在于当交流电压过零点时可控硅会自动关闭,此时需要单片机驱动可控硅重新打开。举个例子交流电压每经过10ms经过一次零点,那么意味着可控硅每过10ms自动关闭一次,如果在这10ms之内的每5ms单片机都驱动可控硅重新开启的话,那么此时可控硅的开启功率就为50%,换句话说如果每2ms单片机都驱动可控硅重新开启的话,那么此时可控硅的开启功率就为80%。结合上述理论,只要单片机输出电平信号控制可控硅的开启时间就可以实现可控硅的开闭和关闭,同时还可以控制可控硅的功率调节。图3-6可控硅驱动电路图按键检测电路设计本设计一共有3个按键用于用户输入,这3个按键来控制系统的运行状态,按键分别为:设定水温+、设定水温-、功率调节。按水温调节按键可以设定电炉的控制水温高低,使得控制系统驱动电炉加热水温至设定温度。按功率调节按键可以改变电炉的运行功率,通俗的理解就是电炉的快速加热和慢速加热两种模式。按键检测的原理是建立在按键导通和断开特性上,每个按键具有两个引脚,当按键未按下时候两个引脚是不导通的,当按键按下后两个引脚就会导通。利用按键是否导通可以判断按键是否按下,根据这一特性设计了一个按键检测电路。将按键一端接GND,另一端接单片机I/O口,通过程序去读取该I/O口的电平信息,当按键没有按下时候读取到的电平信息为高电平。当按键按下后此时程序读取到的电平信息会变成低电平,则可以判断为按键按下。图3-7按键检测电路图液晶显示电路设计本设计的显示模块选用LCD1602,这是一种液晶字符显示屏。就如同它名称一样,它能够同时显示16x02个字符,换句话说就是32个字符。液晶显示屏的使用原理就是对其显示区域的电压控制,通过单片机去控制显示区域的电压就可以实现液晶显示功能。图3-8是LCD1602液晶显示屏的实物图。图3-8LCD1602实物图LCD1602的电路图如图3-9所示,引脚VL是液晶屏的背光亮度调节,通过电阻分压可以调节背光屏的亮度。RS、RW、EN为液晶显示屏的控制引脚,D0-D7则为液晶显示屏的数据引脚,直接将数据引脚连接到单片机P0口引脚上接对应的数码显示端口,寄存器选择RS,读写操作RW,使能信号EN则分别采用P1.0-P1.2进行与软件相适应,通过单片机发生显示内容的数据就可以实现字符的显示。图3-9LCD1602电路图本章小结本章分别介绍了单片机最小系统、温度检测电路、按键按键电路、可控硅驱动电路和液晶显示电路的设计。分章节讲解了各个电路的设计原理,并且列出了各功能模块的电路图,本章节对控制系统的硬件电路部分做了最详细的解读。系统软件设计在介绍完控制系统的硬件电路之后,本章节开始介绍控制系统的软件部分设计。本设计的软件部分采用C语言作为编程语言,采用Keil软件作为软件开发环境。软件部分分模块编写,将各个功能模块封装成功能子函数,通过主程序调用。软件开发环境本设计的主控芯片采用的是STC89C51芯片,编程语言选择C语言,因为C语言相比汇编更加可读性而且程序结构比较清晰,方便后期程序修改。最重要的是C语言的移植性比较高,如果日后用到该程序的某一部分,可以省去重复开发的过程。程序开发环境选择了Keil4。这是一款由美国KeilSoftware公司推出的51系列兼容单片机C语言开发软件。它由链接器、库管理、编译器和仿真调试器等组成,具有程序调试、跟踪及分析等功能。同时Keil4可以在XP、Window7、Window8等主流操作系统上运行,系统兼容性比较好,可以在自己电脑中直接进行编程和调试。本设计使用的主控芯片为STC系列单片机,支持ISP在线编程。在软件开发完成后,Keil4可以生成一个HEX文件。在ISP程序下载软件上首先选择好编程所用的单片机型号,然后设置好晶振频后就可以导入HEX文件,在这些操作完成之后就可以将程序下载到芯片中,程序开发和下载过程十分方便。主程序流程图通过分析本设计的功能设计要求,为了实时温度检测、温度显示、电炉开关控制和电炉功率调节功能,本程序程序按照不同功能进行功能子函数设计,将各个功能模块的程序封装成不同的子函数,然后在主程序中进行函数调用。整个系统的程序设计框架如图4-1所示。图4-1主程序流程图液晶显示子程序设计本设计的液晶显示子程序设计流程图如下图4-2所示,首先在主程序一开始需要初始化LCD,就是在程序中定义LCD的引脚。然后写LCD指令,选择LCD中的显示地址后发送显示内容,就可以在LCD上显示所发送的内容。LCD显示程序中的各个子函数都封装成模块函数编写,在用到子函数时去调用该函数,这样程序结构上十分清晰。图4-2液晶显示子程序流程图以下程序是液晶显示调用函数,主需要在diaplay子函数中代入需要显示的内容就可以实现在指定位置显示内容。if((j!=85)&&(j<100))i=j;//检测温度 display1(i,&sys[0]);//LCD显示检测温度 if(i<sys[0]) { flag=0; LCD_DisStr(0,13,"");//LCD显示HOT } else//检测温度>设定温度 { flag=mode; LCD_DisStr(0,13,"Hot");//LCD显示空字符} 可控硅控制子程序设计本设计中可控硅的控制方式为持续打开可控硅、持续关闭可控硅、功率调节三种方式,因此需要在程序设计中考虑这三个功能。为了实现这3个模式的可控硅驱动,单片机需要在不同的时刻分别输出这三种信号波形,第一种为持续的高电平,第二种为持续的低电平,第三种为PWM信号输出。在单片机分析对比设定水温和检测水温之后,单片机输出特定信号驱动可控硅,可控硅驱动子程序流程图如下图4-3所示。图4-3可控硅控制子程序流程图以下程序是中断溢出子函数中驱动可控硅信号的波形输出,通过调节延时可控硅信号输出时间就可以实现调功率功能。TH0=(65536-500)/256;TL0=(65536-500)%256; if(flag==0) jdq=0;//可控硅控制信号加热关闭 elseif(flag==1) jdq=1;//可控硅控制信号加热高功率模式 elseif(flag==2) jdq=~jdq;//可控硅控制信号加热低功率模式按键检测子程序设计按键扫描子程序流程图可见下图4-4,按键扫描实现的过程是整体的思想是检测按键上一个状态是否是按下还是松开,再通过10ms的消抖时间,来进行滤波,经过判断按键开关是否按下,来执行显示的内容。按键具有两个引脚,当按键未按下时候两个引脚是不导通的,当按键按下后两个引脚就会导通。利用按键是否导通可以判定按键是否按下,根据这一特性做了一个开关检测的电路。将按键一端接GND,另一端接单片机IO口,通过程序去读取该IO口的电平信息,当按键没有按下时读取到的电平是高电平。当按键按下后此时程序读取到的电平信息会变成低电平,则可以判断为按键按下。图4-4按键检测子程序流程图以下是按键检测的检测函数,通过判断按键电平是否为0来实现对按键的判断,同时按键按下后对按键判断做消抖处理,只有消抖处理后才可以认定为该按键确实按下,否则就认为该按键是抖动造成的,对该次按键不进行响应。if(k2==0)//功率调节按键按下 { delayms(10);//按键延时 if(k2==0)//功率调节按键按下 { if(mode==1)//当前低功率模式 mode=2;//切换成高功率模式 else//当前高功率模式 mode=1;//切换成低功率模式}while(k2==0);//等待按键松开}本章小结本章首先介绍了控制系统的程序开发环境,然后介绍了主程序的流程图,接着分章节分别介绍了液晶显示功能子函数、可控硅控制子函数和按键检测子函数的程序流程图,同时分析了这些功能子函数的设计原理。测试所有经过设计研究产生出来的产品,不经过反复的测试都是不可靠的,常规的测试分为两个环节:硬件调试与软件调试。这两者共同决定了设计出来的作品是否稳定,是否能够投入实用,而不仅仅是实验室里的不成熟产品。这两个测试必须都要进行,缺一不可。软、硬件共同测试可以更好地检测不足和设计缺陷,能够帮助我们在系统设计完整之后找出系统漏洞,只要我们及时完善漏洞作出改进就能实现预期的功能目标。硬件测试首先在硬件电路焊接完成之后需要检查系统硬件方面的问题。最重要的是要确认线路板上的元器件焊接是否错误,器件的焊接接触点是否良好,是否存在虚焊、漏焊或者短路等现象。详细的硬件调试步骤如下:(1)准备好所需元器件,按原理图用适当的方法进行元件检测。比如检查电解电容的的正负极,在焊接之前先分清楚正负极,以免焊错元器件的正负极对线路板造成损坏。(2)元器件的焊接首先按照原理图将每个元器件摆放好,按位置及高度排列焊接优先级进行焊接。先焊接不容易损坏的元器件,后焊接容易损坏的元器件,在焊集成芯片时要尤其注意,第一要注意芯片安装时的方向。第二,在焊接时要控制焊接时间,焊接时间不能过长以免导致元器件损坏。第三,要做到及时对芯片进行导通测试,确认焊接无误。(3)当元器件焊接完成后,我们就可以将程序下载进芯片中,直到程序顺利下载进单片机后,硬件调试部分初步完成,并进行后续的各项程序功能检测。系统功能测试软件调试就是指利用C语言在Keil等编程软件进行程序的编写,在编写完成后,选择运行,如程序存在错误,检测错误存在点并进行修正,若程序正常运行,将程序下载到线路板的89C52RC单片机中,检测程序是否能在硬件电路上正确运行,判断是否达到预设要求。程序的编写和调试是整个设计的真正核心,需要很长时间和耐心。因为这不仅仅意味着你对知识程度的掌握,也意味着对个人耐心的严重考验,因为任何其中一个小小错误,甚至是不经意间大小写的错误,都意味着大量的排除工作和反复的重新测试流程。在本次设计中,经过反复的调试,最终程序能够很好地控制硬件电路运行,并能够调用各子模块实现相应功能,达到了预期设计要求。最后使用Keil软件编译当前文件和编译全部文件时都无错误提示。程序软件仿真通过。Keil调试界面如图5-1所示。图5-1Keil调试界面液晶显示功能测试首先测试LCD显示功能,给系统上电,通电之后LCD1602上出现字符显示。分别显示设定的加热温度和当前的检测温度,如果当前在加热的话就不会出现HOT字符,代表当前加热棒正在工作,如果HOT字符显示那么就代表当前加热棒没有工作。按键操作功能测试在屏幕显示正常之后,开始测试系统的按键功能。分别按键可以改变系统的设定温度,通过按键将系统的设定温度调整到40度,可见图5-3所示,当前系统的设定温度为40摄氏度。温度控制功能测试设置好加热温度之后,此时检测到的环境温度低于设定温度,所以加热棒开始工作。在加热棒工作期间温度传感器持续采集温度,当检测温度得到设定温度之后,加热棒停止工作。当检测温度又低于设定温度之后,加热棒又重新开启工作。本章小结本章节测试和验证了系统功能,分别测试了系统的温度显示功能、按键检测功能和温度控制功能。可见本章节内容,经过测试之后炉温控制系统的各个模块功能都达到了要求需要,在测试完成之后可以说明该控制系统的开发已经基本成功。结论至此本设计的工作内容已经全部完成,经过这一段时间的毕业设计,我掌握了硬件电路设计和程序编写,对于我专业知识的巩固有很大帮助。在设计过程中也有很多麻烦事,在电路设计中由于网络线连接错误而导致的硬件问题起初并没有发现,导致我在程序调试中遇到莫名其妙的异常。多次检测程序之后还是不能发现问题出在什么问题,后来在同学的提示下把关注点转移到硬件上,才发生时硬件电路的连接错误导致的。可见硬件电路的测试也是非常重要的,其实在设计过程中每一步都不能放错误,最好是设计完一个模块之后首先测试验证该模块的电路、程序是否正常,确保正常之后再进行其他模块的开发,这样的开发模式可以保证各模块都处于正常状态,整体的系统开发就不会有其他异常情况出现。此次设计的蘑菇房监控系统的功能基本达到了预期效果,同时在整个设计过程中我对对于硬件和软件的理解也更深入了,只有整合了这些设计原理和设计技巧才能保证我们今后在电子设计过程中可以做到少放错误、不放错误,做到更加严谨,只有这样我们设计出的产品功能、质量可靠性才能有保证。经过这段时间的研究,本设计成功开发出了一款基于51单片机的炉温控制系统,相比于市面上的传统的水温加热设备,本系统具有温度设定和功率调节功能,可以根据用户输入开启/关闭系统功能。同时本设计的难点在于可控硅器件的应用和程序控制,由于本设计采用220V交流电压的电炉加热设备,因此考虑多方面之后最终确定选用可控硅作为驱动器件。通过程序控制可控硅驱动电炉开启和关闭,同时输出PWM波形信号调节电炉功率。本设计也考虑到了一些安全问题,由于控制系统需要检测水温,所以设计所采用的温度传感器必须放置在水中才能确保检测精准,所以本设计选取了防水型DS18B20温度传感器,在防水的同时也确保了控制系统安全性,避免了因为传感器漏水导电而引发短路漏电等现象。不过本设计中也存在一些不足之处,设计所使用的可控硅的

温馨提示

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

评论

0/150

提交评论