




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
闽南师范大学 毕业论文(设计)基于52单片机温控系统的研究Based on The Research of 52 Single Chip Microcomputer Temperature Control System姓 名: 学 号: 系 别: 物理与信息工程学院 专 业: 电气工程及其自动化 年 级: 2013级 指导教师: 2016年 12月 25日闽 南 师 范 大 学学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权闽南师范大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于1、保密,在_年解密后适用本授权书。 2、不保密。(请在以上相应方框内打“”)作者签名:日期: 年 月 日导师签名:日期: 年 月 日摘 要本文介绍了以52单片机为核心的温度控制器的研究。系统分为单片机最小系统、测温电路、驱动控制电路、LCD12864显示电路、报警电路、复位电路及按键电路。通过测温电路测量温度,温度数据传送回单片机内部进行处理分析,单片机在将数据传送到LCD12864显示,并通过驱动控制电路控制加热管工作、LED及报警电路工作,使温度在设定的温度范围内。LCD12864显示电路分为3中模式,第一种初始化显示姓名、学号,第二种显示温度控制界面,有实测温度、设定温度和闭环量显示,第三种是温度图形界面的显示,每隔1ms左右提取一次温度数据,显示在LCD上并标示在温度坐标系中。关键词:单片机;测温;LCD12864显示;控制驱动全套图纸加扣 3012250582AbstractThis paper introduces the study of the temperature controller with 52 single chip microcomputer as the core. System is divided into a minimum system, temperature measurement circuit, drive control circuit, lcd12864 display circuit, alarm circuit, reset circuit and key circuit. Through the temperature measurement circuit temperature, temperature data transfer back to the internal processing of single-chip analysis, the microcontroller will send data to the lcd12864 display and control the heating circuit through the drive control circuit, led and alarm circuit work, the temperature in the set temperature range Inside. Lcd12864 display circuit is divided into 3 modes, the first initial display name, student number, the second shows the temperature control interface, with measured temperature, set the temperature and closed-loop volume display, the third is the temperature graphical interface display, Temperature data is extracted every 1ms or so, displayed on the LCD and labeled in the temperature coordinate system. Key words: MCU; Temperature measurement; LCD12864 display; Control drive-I-目录中英文摘要I1 引言11.1 选题背景及实际意义11.2 温度控制系统的目的11.3 温度控制系统完成的功能12 方案的论证与比较32.1温度采集模块方案32.2显示模块的方案32.3 控制器方案42.4 电源方案42.5 键盘部分方案53 系统的组成63.1 系统的框架63.2 温度传感器DS18B2063.2.1 DS18B20的结构和原理63.2.2 原理图中DS18B20电路93.2.3 DS18B20的软件时序图93.3 设计中控制电路103.4 按键电路113.5 LCD12864显示屏幕113.5.1 LCD12864液晶屏幕(带字库)的结构和原理113.5.2 原理图中的LCD12864133.5.3 LCD12864的软件时序图133.6 报警电路143.7 电源电路143.8 继电器控制加热电路144 软件设计154.1 程序流程图154.2 滞回比较器的设计174.3 定时器的设计184.4 软件仿真185 系统调试205.1硬件调试205.2软件调试205.3 系统调试205.3.1 温度采集波形215.3.2 定时器调试波形215.3.3 闭环控制效果215.4 误差分析和改进方向226 总结23参考文献24致谢25附 录26附录一:器件清单26附录二:实物图(正反)27附录三:原理图和PCB图28附录四:部分程序单29-III-1 引言1.1 选题背景及实际意义在工业生产过程中,温度是一个重要的物理参数,温度精准的控制非常的起到关键的作用1。随着现代自动化技术的发展,人们进行安全生产和减少工业损耗的措施中都应用到了温度控制的技术2。在日常生活和工厂加工中,温度是最重要的物理参数之一在生产过程的流程中,例如在酿酒、锻造、航天及发电等生产领域中3。现如今,很多工厂还在工业生产的的各种环节中使用传统的测温方式。传统的测温方式中,将温度的变化转换为电势的变化在与控制器进行通信,但是在测温时,温度变化幅度不大时,无法完全响应出温度的变化,而且必须有一点参考温度进行比较4。单片机芯片体积小,但却功能强大,所以选用单片机作控制器,系统小巧便携且方便,作为温度控制的效果比较好,可以大大的提高出厂效率和质量,小巧的设计利用后期的维护和保护5。温度控制系统在我们生活生产中也得到广泛的应用,例如在农业、医疗、实验室等。在当代的蔬菜大棚管理中往往需要用到温湿度自动控制系统,用来控制蔬菜大棚的温度及湿度,来符合生产需要,温湿度控制系统以先进的技术和设备,人为地干预和控制的作物生长的环境条件,作物的生长就不受到自然气候的影响6。在现代化的实验室中需要特色且恒定的环境,这样恒温箱应运而生,它能精确的控制温度,满足人们实验和培养的特定环境的需要,使环境不受外部因素的影响,真正做到恒温的特定环境。1.2 温度控制系统的目的本设计系统叫做温度控制系统,温度作为被控制对象,温度控制在日常工作生活领域都有很大的应用,在生活中可以随处看到,比如在温室大棚、保温瓶、酿酒池、饮水机和太阳能等地方的温度控制中。而在从前温度控制是由人手工完成,这样往往并不精确,并且容易发生危险。其实在很多地方和领域温度都需要得到很好的检测和控制,这样才能很好的防止意外的发生。针对这样那样的问题,本系统设计的目的是一种可以随身携带的温度控制系统,它适合工程人员携带到现场进行监测,设计界面直观与简单,可以方便工程人员现场记录和很快的做出分析。它应用广泛,适合各行业的工程人员进行监测和控制的温度,而且价格便宜,在用户承受范围内。1.3 温度控制系统完成的功能温度控制系统是对于温度进行实时监测和控制,能够完成对温度的控制和方便用户观测温度变化的趋势的温度曲线的显示,采用了闭环控制温度的方法,当实测温度小于设定温度的底线时,通过继电器启动加热管加热,使温度上升,同时红灯亮起,提醒用户加热正在进行,当温度加热到设定温度的上限,启动报警装置,关闭加热,使水自然冷却,温度下降,当再次低于温度下限时,继电器再次启动加热管加热,使温度上升,这样就控制着水的温度在设定温度的上下限内波动,实现温度的控制功能。显示数据采用LCD12864屏幕,刚开始时显示个人信息,然后再显示实测温度、默认的设定温度和闭环量范围,点击加减按键,可以设定系统控制温度和闭环量范围,点击设定按键切换模式的选择,最后在显示温度的图形,没隔1s显示一个温度数值在温度图形上,控制温度模块同步进行,这样能更直接的让用户观测温度的变化趋势。2 方案的论证与比较用单片机作为温度控制系统的核心元件,系统需要被测信号的输入到单片机内部,由CPU采集必要的温度数据,对于测量系统来说,如何快速且精准的采集被测信号是核心任务;而对测控系统来说,对别检测的对象的监控和对控制过程的把握也是必不可少的重要环节。传感器的出现不得不说是工业发展史上一次很大的突破,如果没有传感器对原始被测信号的精准可靠的捕获和转换,一切的数据测量的体现和精准控制度无法实现7。工业生产完成的全过程现在基本已经达到了自动化和智能化程度,几乎都是要依靠各种传感器来检测和观测生产过程的各种参数变化,在调度设备的性能参数,这样就能达到生产运行的最佳状态,从而保证了生产的高效和高量。2.1温度采集模块方案方案一:测温电路的设计,传统的测温系统采用热敏电阻和热电偶之类的器件,这样的器件是利用其感温效益,在将被测温度变成可读取的电压或者电流信号被采集过来,在进行A/D转换电路后,被单片机识别后进行计算和处理,与内部数据表进行比较和检测,采用靠近的数据进行显示,这样的设计需要A/D转换电路,并且但由于热敏电阻的温度特性存在严重的非线性,以及所设计的转换电路的非线性,因此必须对电路进行线性化处理8。这样的测温电路较为麻烦并且精确性不高。方案二:采用温度传感器DS18B20。DS18B20完全满足从0摄氏度到100摄氏度测量要求,并且DS18B20测量精度高,满足设计对于精度的要求,可以在一秒内把温度转化成数字量,并且把测得到的温度值的存储在两个八位的RAM中,单片机可以快捷的从中储存RAM中读出数据,进行数据的处理就成十进制就是温度,一个I/O口的使用不占用太多单片机资源,这样使用方便9。DS18B20拥有如此方便且快捷的特点,我决定采用DS18B20温度传感器来测量温度数据。2.2显示模块的方案方案一:采用数码管显示。数码管根据导通引脚不同,点亮不同的二极管,形成的不同的数字,能够显示时间,日期,温度等所有的数字量的值10。它低廉的价格使他应用广泛,特别是在广告宣传和电器领域,例如广告牌子、热水器、手表、空调等电器绝大部分使用的都是数码管。其优点结构简单,价格低廉,并且直观的显示,但是缺点也是,只能显示数字量的参数和有限个的符号,当使用多个数码管作为显示时就占用太多单片机I/O口和有复杂的电路结构。方案二:采用大屏幕LCD12864显示。由于我们要显示温度图形,又要精准的显示温度,和中文提示,方便人机交互。缺点是价格高,体积比较大。因为图形显示的客观需要,我们采用LCD12864大屏幕绘制温度图形。2.3 控制器方案方案一:采用PLC设计温度控制系统。PLC是一种可编程逻辑控制器,可以用编写程序配合PLC控制温度和控制报警,利用梯形图编辑程序,简单、直观和快捷,在加上积分分离PID算法,改善温度控制的动态特性11。但是缺点是PLC控制器体积比较大,不易携带并且控制温度不够精确,显示不能够使用小型LCD显示,必须配置微机处理数据。所以PLC适合大型温度控制系统的设计,我们还是采用单片机芯片作为我们毕业设计的控制器。方案二:采用AT89C51单片机。AT89C51具有128字节内部RAM,与4k字节存储空间,兼32 个I/O 口线,存在两个16位定时/计数器,5向量两级中断结构体现在程序中,拥有片内时钟电路。但是AT89C51单片机的缺点是处理速度较慢,并且不具有EEPROM存储功能,是一种比较传统的单片机芯片型号。方案三:采用STC89C52单片机。STC89C52具有512字节RAM,与8K在系统可编程存储空间,兼32位I/O口线,内置4KB EEPROM存储功能,3个16位定时器/计时器,看门狗定时器,4个中断结构功能更加强大。STC89C52芯片具有更快的处理速度,和更强大的功能,在两者的芯片的价格差不多的情况下,我们选择STC89C52芯片作为我们温度控制系统的核心。2.4 电源方案方案一:利用变压器将市电220V进行转换,用494芯片控制开关管,使电压经过过整流、滤波和稳压后获得5V的单片机额度电压。此方案优点在纹波比较小,对电路没有高频干扰,且输出电压较为稳定,但是缺点是电路比较大,是我们设计变的更大,不符合我们设计要求的小巧和便携的特点,并且在一些山区电压波动大且不稳定的地方,无法输出稳定正常电压值。方案二:采用USB充电器,从市电220V获得5V的稳定直流电压,通过5V电源插座直接给单片机供电。此方案优点电源体积比较小,重量比较轻,效率高,比较符合了这个设计的方便便携的特点。由于最近几年电源技术的快速发展,USB充电器也在不断的更新换代中,USB充电器可以快速且稳定的输出5V稳定电压,所以可以利用现阶段USB充电器快速且稳定的给单片机供电,且可以利用便携的充电宝,也可以给单片机供电,大大方便了设计的现场使用。综上所述,我们采用方案二。2.5 键盘部分方案方案一:采用矩阵键盘的方案,控制和设定单片机内数据,矩阵键盘是利用查询的方式,不断查询端口返回数据,判定按键位置的,确认按键数据。优点是使用少量的I/O口,却利用了大量的按键,缺点是,按键键盘体积较大,不利于用户的携带和现场应用。方案二:采用独立按键的方案,由于我们需要使用的按键数目较少,并且方便我们携带的功能,我们只需要利用三个I/O端口接在P3口上,程序通过中断的方式和查询的方式来检测按键的状态。3 系统的组成3.1 系统的框架本文设计的温度控制系统的主要功能和实现的框图,系统的结构组成如图3-1所示:温度传感器DS18B20独立按键STC89C52单片机报警电路LCD12864液晶显示屏继电器、LED图3-1 系统的结构框图本系统主要有七个部分组成:温度采集模块DS18B20、单片机最小系统、独立按键、显示屏幕、继电器控制、报警和指示电路、电源部分。单片机STC89C52作为系统的控制核心,将温度传感器DS18B20采集的数字信号进行处理和计算,LCD12864作为显示屏幕,显示计算后的数据。通过按键可设置屏幕显示的设定温度和闭环量范围,和切换图形显示和文字显示的功能,采用闭环控制的设计,当被检测对象的温度超出设定温度的上限时,报警电路将会报警,当实测温度小于设定温度的底线时,继电器将控制加热管启动,这样就使得温度在上下限中波动。3.2 温度传感器DS18B20这节主要讲的是DS18B20温度传感器的原理和测量的方法。3.2.1 DS18B20的结构和原理DS18B20是一种高集成的温度传感器,内置微型处理器,处理速度较快,在生产和生活等领域的温度测量、控制仪器和测控系统中得到大程度的利用和发展。它具有体积小,使用引脚比较少,并且传输距离适合等优点12。DS18B20的引脚说明如图3-2所示:图3-2 DS18B20的引脚说明从图3-2中可看出,DS18B20有三个引脚,定义如下:DQ:数字信号输入/输出端GND:电源地VDD:外接供电电源输入端(在寄生电源接线方式时接地) 内部结构图如图3-3所示:储存器和控制逻辑DQ64位ROM和单线端口温度传感器暂存器上限触发TH电源探测下限触发TL VCCCCC8位CRC产生器图3-3 DS18B20的内部结构DS18B20的性能特点:它只具有一个I/O口,通过这个I/O口与微机进行通信,运用单总线技术,数据通过串行方式进行传输,可以直接传输温度数据值,不需要进行A/D转换,测温范围在-55摄氏度到+125摄氏度之间,分辨率是用户可调的,上电默认位0.0625摄氏度,具备报警温度存储器,可以用来报警,适用各种类单片机13。64位光刻ROM是固定不变的,它可以看作是该DS18B20的地址序列号。每一个器件的地址序列号都不同14。64位光刻ROM格式如表3-1:表3-1 DS18B20的ROM8位产品系列号48位产品序号8位CRC编号DS18B20内含9个连续字节的暂存器,储存单元如表3-2所示:表3-2 DS18B20 高速暂存器的存储单元序号寄存器名称作用序号寄存器名称0温度低字节以16位补码形式存放4、5保留字节1、21温度高字节6计数器余值5TH/用户字节1存放温度上限7计数器/数据温度转换的公式:12位数据放入2个RAM存储器中,其中高8位中的前5位是符号位,如果测得的温度大于0,5位符号位为0,实际温度就是将测到的数值乘于0.0625;如果温度小于0,5位符号位为1,实际温度就是将测到的数值需要取反加1再乘于0.062514。温度高低字节有效形式及计算如表3-3所示:表3-3 温度高低字节有效形式高8位SSSSS262524低8位232221202-12-22-32-4S为符号位,后面的数据就是我们所测得的温度数据。本设计中使用到了DS18B20的基本控制指令,如表3-4所示:表3-4 DS18B20的控制命令指令约定代码操作说明温度转换44H启动DS18B20进行温度转换读暂存器BEH读暂存器9个字节内容写暂存器4EH将数据写入暂存器的TH、TL字节复制暂存器48H把暂存器的TH、TL字节写到E2RAM中跳过ROMCCH忽略64位ROM地址,直接向DS18B20发温度转化指令,适用于总线只有一条的情况读电源供电方式B4H启动DS18B20发送电源供电方式的信号给主CPUDS18B20的工作访问的流程是:首先先进初始化,由于我们只采用了1只DS18B20,在发出CCh跳过读序列号的操作,然后发出44h指令这是启动温度转换指令,然后等待转换完成后,就可以先读取温度数据中低8位,再然后读取高8位,最后将16位温度完全取出来。对DS18B20的每个字节的操作遵守着DS18B20手册中写/读数据的时序图,单片机必须严格遵守时序图,给以准时的高低电平信号。单片机和温度传感器的通讯要遵守总线的协议,例如单片机完成温度转化的过程,在每次开始之前要对DS18B20进行复位指令,待复位完成,然后发出一条ROM的指令,待返回指令接收后才能对DS18B20发出温度转化指令。这个过程要完全遵守总线的协议,这个就是通讯的原则。3.2.2 原理图中DS18B20电路DS18B20在原理图中的应用电路,如图3-4所示:图3-4 DS18B20原理图DS18B20的3个引脚功能各不相同,单片机与之进行通讯和数据传输的是DQ线,VCC与GND线分别接单片机的5V电源正负极。为了防止数据传输中出现错误,在DQ端与单片机端口处连接一个10K上拉电阻,由于线路过长,防止DS18B20端口互相影响,我们 用胶布固定端口的线。 3.2.3 DS18B20的软件时序图 编写DS18B20的程序最重要的是看懂它的时序图,我在DS18B20的手册中找到它的时序图12,如图3-5所示:图3-5 DS18B20的读写时序图例如编写它的写一个字节的程序,DQ先置低,延时13微妙,在将DQ拉高。准备释放总线作读数据准备,再延时10微妙,读DQ端数据,进行数据存储,延时45微妙,重复8次就读满一个字节的数据了。这样就编写出写字节的程序,我们在软件操作中都是用写一个字节或者读一个字节的形式进行操作的。DS18B20的初始化也是编程中必须的部分,每次进行操作时都需要对DS18B20进行初始化操作,初始化时序图12如图3-6所示:图3-6 初始化时序图3.3 设计中控制电路 单片机最小系统的设计,如图3-7所示:图3-7 单片机最小系统电路控制电路以STC89C52为核心。在STC89C52的外围,增加晶振电路和复位按键即可以实现最小系统的设计,单片机最小系统是利用单片机本身资源,外加电源和晶振就可以构建成一个最简单的控制系统,可以独立的完成对数字信号的控制和计算。在上述的最小系统中,单片机完全可以正常运转,在加上简单的按键电路和相应的程序即可以完成相应的控制功能或数字信号处理功能15。3.4 按键电路采用独立键盘的设计节省了大量的空间,并且可以方便用户的操作,加减按键的软件采用外部中断,主程序中随时产生中断,这样数据的加减。设计中独立按键电路,如图3-8所示:图3-8 独立按键电路3.5 LCD12864显示屏幕本节主要介绍LCD12864液晶屏幕的显示图形功能,和单片机通讯的功能。3.5.1 LCD12864液晶屏幕(带字库)的结构和原理LCD12864(ZW)为数字点阵式液晶模块,它包括12864个点的点阵液晶屏幕、存储器、驱动电路。屏幕上的点像点阵模块一样,所以它可以显示图片和汉字,用取模软件取模,然后显示图片就可以完成图片显示。它具有如下特性: LCD具有大规模的集成驱动电路模块,这可以驱动显示大容量的屏幕,能够显示图片、数字、字符以及中文汉字,大的屏幕具有宽视角、高对比的特点16。我们利用LCD12864可以显示84行1616 点阵的汉字的特点显示温度、设定及闭环量这三个中文汉字,采用的是仿宋体的字体,在显示特殊符号加上温度数值显示,我们利用LCD12864可以显示图形的功能,显示温度图形,实现人机交互,让用户更直观的观测温度变化趋势。LCD的主要参数如表3-5所示:表3-5 LCD的主要参数LCD名称参数值显示分辨率:128 64点芯片工作电压:+3.0-+5.5V工作温度:0 - +55模块最佳工作电压:5.0V显示方式:STN、半透、正显LCD12864引脚说明和内部功能介绍如表3-6所示:表3-6 LCD12864引脚说明引脚功能1 GND电源地2 VDD逻辑电源3 V0 LCDLCD电源4 D/I数据/指令控制信号:D/I= 1,数据输入;D/I= 0,指令输入5 R/W数据指令读写控制信号:R/W= 1,数据指令读出;R/W= 0,数据指令写入6 E允许控制信号7 14 D0- D7D0- D7数据总线15 PSB串并口选择总线16 NO空引脚17 RST复位信号,低电平有效18 VEE负电源(- 10V)输出19 20 LEDA,K LEDLEDA,K LED电源,能提供显示的背景亮度我们所使用的功能具体操作,首先作为字符显示,和我们在电脑上的操作一样,LCD12864中CGROM存储空间中含有着中文字符代码和西文字符代码,在DDRAM中我们写入要显示的字符代码,我们所需要的字符就会显示在屏幕上,中西文字符屏幕会自我识别。图形显示就是要将屏幕看作我们所需要的一个大点阵,我们要用指令将我们所需要的点阵信息写入到相应位置的GDRAM中,这样屏幕就会相应的点亮点阵,就是我们所需要的图形显示。字符显示时,DDRAM地址与液晶屏的位置如表3-7所示:表3-7 DDRAM地址与LCD12854的位置序号液晶点阵128列180H81H82H83H84H85H86H87H液晶点阵64行290H91H92H93H94H95H96H97H388H89H8AH8BH8CH8DH8EH8FH498H99H9AH9BH9CH9DH9EH9FH根据这个地址对应表我们就能很快的设定字符所显示的位置,这样就可以编我们的LCD程序,显示出温度、设定和闭环量的字样。屏幕显示图像时,用到了LCD12864的图像点阵,LCD12894有水平128列与垂直64行组成,我把屏幕分为上下屏,上32行下32行,先比较是上半屏还是下半屏,如果在上半屏,取横坐标除以16,得数加上头地址(80h)就是我们要的横坐标,如果是下半屏,取横坐标除以16,得数加上头地址(88h),也是我们的横坐标。然后再确定点在16个点中的位置,在打点时候就是先写点的地址,在写入点的16位数据,点亮对应的点就行17。3.5.2 原理图中的LCD12864LCD12864在原理图中的应用电路如图3-9所示:图3-9 LCD12864应用电路我们采用串行的方式在屏幕上实现图形和字符的显示,必须同时使用几个控制的引脚和8个数据传输接口,即在同一时间可以连续输出8位二进制的数据,在同时PSB第15引脚必须接低电平,接在电源的负端,我们把数据端口D0-D7接在52单片机的P00- P07端口,并且接上上拉排阻A103J,使能端E口接在P25口,RS口接在P23口,RW口接在P24口,PSB口接在P27,这样就可以控制LCD1286的通讯方式。3.5.3 LCD12864的软件时序图根据时序图我们编写写字节和读字节的程序,我采用的是串口通信的传输方式,例如写字节程序(1)先检查lcd是否在忙(2)RS置1,RW与EN置0(3)数据放在P0口(4)控制端由1变0,在下降沿发生时,完成数据传输。查找文献资料得到读写时序图17,如图3-10 3-11所示:图3-10 写数据时序图图3-11 读数据时序图 图3-12 报警电路3.6 报警电路本节介绍的是利用蜂鸣器报警提示温度已经过高。当温度超过设定的上限值时,单片机采集的温度数据和设定上限值比较,单片机发送控制信号到控制电路,控制电路发出指令控制蜂鸣器工作。报警电路,如图3-12所示: 图3-13电源电路3.7 电源电路本节介绍的是设计的电源部分,将USB充电器产生的5V引入到单片机,使单片机进行正常工作。电源电路,如图3-13所示: 图3-14继电器控制加热电路3.8 继电器控制加热电路本节介绍的是继电器控制部分,继电器的通断将决定加热管的启动和停止,将温度采集进入单片机内部与设定温度下限值进行比较,如果小于设定温度下限,单片机将产生控制信号,驱动加热管加热。继电器控制加热电路,如图3-14所示: 4 软件设计软件采用了整体模块设计的方法,用KEIL C51编程软件编写。KEIL C51编程软件符合大多数单片机软件编程设计,整个设计界面简洁明了,用C语言编写,程序具有可移植性、良好的扩展性。我们配合开发板进行软件的测试和调试过程,这样就能最大程度的符合毕业设计的要求。4.1 程序流程图主程序流程图,如图4-1所示:图4-1主程序流程图 主程序采用工作模式标志位(set_st)分开,判定设定按键是否按下,按下set_st自动加一。当set_st为0时,进入主控界面,在这个界面观测温度查看默认设定温度和闭环量,可以控制继电器和报警电路,实现温度的控制和显示。当set_st为1时,进入设定温度值界面,通过加减按键设定温度,点击一次加一减一,当set_st为2时,进入设定闭环量的界面,同样加减按键设定。当set_st为3时,进入温度图形显示界面,显示温度曲线。子程序流程图,工作模式0 工作模式1 工作模式2工作模式3如图4-2 4-3 4-4 4-5所示: 图4-2工作模式0 图4-3 工作模式1 图4-4 工作模式2每个工作模式子程序中开启和关闭按键扫描,都是对外部中断的开启和关闭,我加减按键用到了外部中断,报警和继电器的开启和关闭,是对端口的直接定义,温度显示调用LCD12864的显示,先写入地址在写入温度数值。工作模式3我用文字取模软件先画出坐标轴,在程序中调用画图程序,画出字符矩阵,根据点阵原点坐标对应LCD12864中点的位置,对比和调整定点位置,画出上下限温度设置,在用打点程序描出点,采集点后向右平移一位,在显示温度数据,这样就描绘出了一副温度图像。图4-5 工作模式34.2 滞回比较器的设计在温度控制中我根据老师的建议,加入了温度的滞回比较器,利用滞回比较器的温度滞回功能实现温度的控制,在软件中编程,实现控制滞回带的大小,控制结构比较简单18。滞回比较器的加入实际上实现的是闭环控制的效果,滞回比较器原理图,如图4-6所示:温度/时间t/s 图4-6 滞回比较器原理图4.3 定时器的设计由于温度采集耗费大量的时间,如果把温度读写和检测放在主程序中,那么会占用大多数CPU的使用,浪费大量的时间,并且使主程序使用变得滞留和延迟,所以将温度读写和检测放在定时器中断程序中执行,这样使程序更流畅,解放CPU的占用。定时器中断程序是独立与CPU执行过程的,另外执行的一个流程,不占用CPU的执行空间,在程序中设置中断,然后我们用Keil C51编程软件中的Watch T1定时器观测温度读写和检测的时间,根据时间我们定定时器1的初值,在主程序中开启中断和定时器1中断,在中断子程序中执行温度的读写和检测。在LCD12864打点显示温度图形时出现乱码现象,我不断进行调试和查资料问同学和老师,发现定时器的开启会影响到LCD12864的图像显示功能,我在写入指令的代码前面不断加入中断的关闭,在不断调试中,最终发现了打开绘图功能这代码会和定时器互相影响,加入中断关闭后才能正常显示。4.4 软件仿真Proteus不仅是模拟电路、数字电路、模数混合电路的设计与仿真平台,而且还是多种型号微型控制器系统的设计与仿真平台19。Proteus具有很好的仿真效果和强大元器件库,满足我们设计的需要,而且仿真动画逼真且直观,可以让我们安心的设计和仿真,防止设计电路中出现问题,产生不可干扰的错,增加设计成本。软件仿真图如图4-7所示:图4-7 软件仿真图图中,仿真软件中由于没有STC89C52芯片,所以采用芯片为U1 AT89C52为我们仿真程序的单片机,是温度控制系统的核心控制器,处理传感器传送来的温度数据,U6为DS18B20温度传感器,其作用为温度采集部件。D1为发光二极管,用于指示。BUZ1为蜂鸣器,用于报警和指示的。通过仿真可知本系统能精确的显示被测点的温度,当超过设定温度的上限时,也能准确的报警提示,但当被测温度变化速度过快时,该系统并不能迅速的响应变化,需要改进,而且LCD12864显示功能不全面,不具有打点显示图形的功能。5 系统调试5.1硬件调试我们采用Proteus软件仿真系统的执行过程,这样就可以看出硬件电路的运行的情况。调整温度传感器的数值,可以在LCD上看到数值的显示,点击按键可以看到设定温度和闭环量的值的显示,灯的点亮模拟继电器和蜂鸣器的运行,这样就可以看到硬件电路设计的正确与否。我用模块调试的方法,将前文的模块一个个拿出来进行测试,在开发板上进行调试,模块运行正常,证明元器件是完好的,可以进行模块的组装了。用Protel 99se软件画出原理图和PCB,并且领取库房元器件材料后,制作电路板,经过打印、转印、蚀刻、焊接等过程后电路板制作完成硬件组装。组装完成后,对照原理图和PCB图进行查看是否漏焊,极性是否颠倒,修正完善后,用万用表进行检测,查看是否虚焊、短路,在检查无误后,在上电进行测试。5.2软件调试根据时序图编写DS18B20和LCD12864的读写程序,在结合利用它们的基本工作指令进行检测温度和绘制图形的编程,编程后的子程序就能结合具体的功能进行工作测试。由于Proteus软件中LCD12864(带字库)器件不具有图形显示的功能,具有局限性和不完善性,我在现实中购买开发板进行软件的调试过程,更改引脚的定义,使程序能在开发板上完美的运行,不断的调试中我学习到了很多的知识。例如,刘老师在我的测温系统滞后问题中,提出测温子程序的读写和检测,将占用大量CPU,建议采用定时器中断执行温度的检测,我不断的测试,发现LCD显示图形中采用中断会影响显示,所以我再每次打点前关闭了中断,打点后在开启中断,不断调节两者的时间,在调度中需找平衡和最优的时间。我们测量温度使用DS18B20温度传感器,温度传感器有温度偏差的,所以我用温度计进行温度的矫正,用温度计测量水杯的温度,然后用我的设计进行测量,在软件中进行修改,多次测量减小温度偏差。5.3 系统调试在Keil C51中我们编写程序,编译生成HEX文件,将文件下载写入单机芯片中,我们在开发板中用LED代表继电器,这样就可以完整的运行系统,看系统整体的运行效果。系统成功运行后,采用开发板将程序烧写过后,放入插槽中,我们就可以完成自己的毕业设计,并查看运行的效果。5.3.1 温度采集波形温度传感器DS18B20接在单片机P37口,用示波器测温度采集数据口,这是一组数字量数据,得到温度采集波形图,如图5-1所示:图5-1温度采集波形5.3.2 定时器调试波形我的温度检测和计算在定时器中断中执行,所以用示波器检测温度读取数据口可以看到周期性的温度数据读取波形,可以看到定时器定时10ms,定时器周期波形如图5-2所示:图5-2 定时器周期波形5.3.3 闭环控制效果在温度控制中加入闭环控制算法,使温度不偏移出温度设定的范围,在这个范围中波动。闭环控制控制温度就是,当实测温度小于设定温度时,加热水温,在高于设定温度上限时,停止加热,这样就使实际温度始终在设定温度点附近浮动20。实际运行效果,设置温度设为50,闭环量为4,采集温度数据如表5-1所示,用软件处理后,得闭环控制效果图,如图5-3所示:表5-1 采集温度数据表时间s012345678910温度16.519.530.247.558.345.854.447.848.948.548.4图5-3闭环控制效果图5.4 误差分析和改进方向在系统运行,并控制温度的过程中,出现了温度超调的现象,这是由于水温的扩散是一个渐变的过程,当已经停止降温时,加热管还是发热的,这时发热管的热度扩散到水中,温度就上升了,我不断缩小加热管和温度传感器的距离,寻找最佳的观测距离,靠的太近温度上升太快,水温不够,靠太远,水温稳定后超出温度很多,在不断改进中,我只能将温度传感器固定在加热管附近,这样才能得出较为完美的图形。在图形坐标轴显示的过程中,图片显示过程较慢,这是因为我采用串口传输数据的方式,这就导致传输数据太慢,我还在不断改进中。在未来,我将参考并行口传输数据的方式进行改进,并且采用更加精准的温度传感器,这将大大的优化温度控制的效果。6 总结过本次温度控制系统的设计,我收获的是知识和能力,完成设计的过程中一定要注意细节的把握,在没有确定的信心时,不要马虎的取完成,这样往往会发生失误,资料的收集和筛选是进步的开始,制作的整体过程是能力的提升,最后查缺补漏是能力的在升华,设计完成的整个过程就是对大学专业知识和动手能力的进一步巩固和提高。开始阶段是搜集资料。通过网络、图书馆、期刊及文献等工具,我查找了许多资料和以前的设计作品,理论系统的学习C语言与系统的学习单片机的知识和基础,在老师的指导下,完成设计的大部分设计,利用有参考价值的资料作为备用。在网络上和知名网站中,我找到了一些温度控制系统相关的学术论文和期刊文章;我还搜索了芯片和元件的资料,参考了元件手册和一些毕业设计中的应用;在常见的搜索网站中,我还了解了一些相关知识,同时特意查看大量的资料网站,并将有用的内容放在同一文件夹中,分类保存,方便以后查询,减少后期论文制作的工作量。接下来,我开始整理、分析研究所搜集的资料,并做了课题研究的方案和设计规划,在开题报告完成之后按照设计规划的要求去选取最好的方案。在老师和同学的意见和建议下,选取了好的方案。本设计中最大的重点、难点便是完成接触温度传感器和显示屏幕的认识和应用,要对显示屏幕及传感器的原理、结构、应用等各方面进行探索以及认识电路的如何实现的过程和怎么样通过单片机来间接的控制加热管。难题并不可怕,可怕的是你不去解决难题,通过问老师查资料,我解决了我所遇到的难题,在实现了设计的要求与最后调试,相关的指标到达了期望的要求,并达到了本次设计任务。在大学四年的学习过程中,我已经掌握并本专业的相关知识和熟悉软件操作的过程,毕业设计的完成过程是对自己的检验。在这样一个不断完善自我的过程中,我感触颇深,明白了我能力的不足之处。遇到困难和难题,解决困难,和在不断失败中找寻完善设计的过程,让我不断进步,这就是毕设的意义。参考文献1 张娜.基于单片机的远程温度监测系统设计J.信息技术, 2015(9):200.2 SIEMENS ManualZ.Micron Power,20103 曹建平.智能化仪器原理及应用M.1.西安电子科技大学出版社出版, 2004 :3-10.4 王芳.热电阻式温度传感器的测温原理与应用J.实用技术, 2007年(1):33-34.5 夏志华.基于单片机的温度控制系统的研究与实现J.煤 炭 技 术, 2013(2).6 郭荣艳.基于单片机的大棚温湿度控制系统设计D.周口师范学院, 2012. 7 杨志忠.数字电子技术M.2.高等教育出版社出版, 2009 :45-46.8 王行迅.非线性热敏电阻测温的线性处理J.成都教育学院学报, 2005(11):75.9 王松武.于鑫.电子创新设计与实践M.2.国防工业出版社, 2010.10 蓝厚荣.单片机驱动LED数码管的方法J.技术与应用_系统装置, 2008年(4):94-95.11 陈曦.何益.化工精馏塔的PLC温度控制系统设计J.研究与开发, 2011年(11):77-78.12 韩小斌,朱永文.数字式温度传感器DS18B20及其应用J.电子技术, 2002年(5):4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年专业领域招聘考试趋势分析与预测题集
- 2025年专业营养师资格认证考试要点与模拟题
- 2025年洁磁剂项目建议书
- 2025年高档打印装置项目合作计划书
- 2025年苯甲酰H酸项目建议书
- 抢救小勇士课件
- 2025年中高压变量叶片泵合作协议书
- 2025年驱虫灭害化学品合作协议书
- 广东省四会市华侨中学2024-2025学年高一上学期期中考试英语试题(含答案)
- 2025年计算机数字信号处理板卡合作协议书
- 2025新疆天泽和达水务科技有限公司部分岗位社会招聘28人笔试备考试题及答案解析
- 2025年秋季新学期第一次班主任会议上校长讲话:肩有责心有光行有度-做一个学生心中“靠得住”的人
- 《生成式人工智能基础与应用》高职AIGC应用基础课程全套教学课件
- 2《中国人首次进入自己的空间站》课件【知识精研】统编版语文八年级上册
- 文档简谱视唱
- Minitab教程源数据及六西格玛绿带手册相关工作表 鱼骨图
- 35KV集电线路铁塔组立专项方案
- 金矿堆浸成套设备
- 劳务派遣服务月考核表
- BS EN13900-5:2021标准中文版(压滤值测试)
- 新型编程计算器CASIOfx-5800P使用方法与编程技巧
评论
0/150
提交评论