基于PID控制的水温控制系统设计.doc

上传人:温桑 文档编号:49454677 上传时间:2022-10-08 格式:DOC 页数:45 大小:4.07MB
返回 下载 相关 举报
基于PID控制的水温控制系统设计.doc_第1页
第1页 / 共45页
基于PID控制的水温控制系统设计.doc_第2页
第2页 / 共45页
点击查看更多>>
资源描述

《基于PID控制的水温控制系统设计.doc》由会员分享,可在线阅读,更多相关《基于PID控制的水温控制系统设计.doc(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 毕业设计(论文) 题 目 基于PID的水温控制系统设计 学 院 电子信息学院 专 业 电子信息工程 学生姓名 李亦斯 学号 159120416 指导教师 周树林 职称 讲师 2019 年 4 月 20 日学生毕业设计(论文)原创性声明本人以信誉声明:所呈交的毕业设计(论文)是在导师的指导下进行的设计(研究)工作及取得的成果,设计(论文)中引用他(她)人的文献、数据、图件、资料均已明确标注出,论文中的结论和结果为本人独立完成,不包含他人成果及为获得重庆工程学院或其它教育机构的学位或证书而使用其材料。与我一同工作的同志对本设计(研究)所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 毕业设

2、计(论文)作者(签字): 年 月 日重庆工程学院本科生毕业设计 摘 要摘 要单片机MCU作为微型计算机的一个重要分支,在工业测控、家电、智能仪表、等领域作用突出,以其优良的性能在各个行业中被广泛应用。本文设计的目标功能是对水的温度进行自动控制。首先,讨论了温度控制系统的现状,随后根据需求进行相应的软件及硬件设计。水温信息的采集采用的是防水型DS18B20,在本系统中,它可以对 0 100 c 范围内的的水温进行测量;其次,需要将温度实时显示出来,采用的液晶显示器是LCD1602。为了体现人机交互,采用了独立式按键对操作者的需求进行采集,可以切换液晶显示界面,并且可以控制目标温度值降低或者升高。

3、为了让操作者直观了解当前状态,采用了LED进行状态指示。在控制过程中,采用PID控制算法实时调节工作状态,以期温度能保持在目标值。最终的调试结果表明,本系统能实现相应功能。关键词:水温 PID 单片机II重庆工程学院本科生毕业设计 ABSTRACTABSTRACTAs an important branch of microcomputer, MCU develops rapidly and is applied in various industries. It is like home appliance, intelligent instrument, industrial measur

4、e and control the domain action is outstanding. The function of the system design is to automatically control the temperature of water. Firstly, this paper studies the current situation of temperature control system, and then designs the corresponding software and hardware according to the requireme

5、nts. In order to collect water temperature, water-proof DS18B20 is used to collect water temperature information, which can measure the water temperature in the range of 0-100 C. Secondly, the temperature needs to be displayed in real time, and LCD1602 LCD is used. In order to reflect the human-comp

6、uter interaction, independent keys are used to collect the operators needs, which can switch the LCD interface and control the target temperature to decrease or increase. In order to make the operator understand the current state intuitively, LED is used to indicate the state. In the control process

7、, the PID control algorithm is used to adjust the working state in real time in order to keep the temperature at the target value. The final debugging results show that the system can achieve the corresponding functions. Keywords:water temperature; PID; Single chip microcomputer重庆工程学院本科生毕业设计 目 录目 录摘

8、 要IABSTRACTII1 绪 论11.1 研究背景11.2 研究现状12 总体设计33 系统硬件电路及软件设计53.1 单片机及软件设计53.1.1 单片机53.1.2 主程序软件设计53.2 温度采集硬件及软件设计63.2.1 温度传感器硬件63.2.2 温度采集软件设计83.3 液晶显示电路及软件设计93.3.1 液晶显示电路93.3.2 液晶显示软件设计103.4 水温控制电路及软件设计113.4.1 水温控制电路113.4.2 水温PID控制软件设计123.4.3 水温PID调节133.5 控制状态识别硬件及软件设计163.5.1 控制状态识别硬件设计163.5.2 控制状态识别软

9、件设计173.6 人机交互电路及软件设计183.6.1 人机交互电路设计183.6.2 人机交互软件设计194 系统调试及验证214.1 实物及程序下载214.2 功能调试及验证234.2.1 人机交互功能验证234.2.2 水温控制功能验证245 结 论27参考文献28致 谢29附 录30重庆工程学院本科生毕业设计 1绪 论1 绪 论1.1 研究背景当今时代,人们的生活工作已经与温度紧密联系,是重要的物理量。其中,水的温度是工业上基本的参数之一,如热水器,饮水机,热水壶等都是会与水温相关的电器,水温和人们的生活越来越密不可分,舒适的温度给人们的生活带来好的感受。实时测量水温在工业生产和人们的

10、生活中越来越受到重视,因此研究水温的测量和控制具有及其重要的意义。温度控制系统中,外界环境的变化对温度有较大的影响,但是很难精确计算其他干扰。如果系统对温度的控制精度要求比较高,通常不允许实际温度超过控制的目标温度允许的偏差范围,否则影响系统的正常使用,甚至造成安全隐患。如果实际温度低于控制的目标温度,一方面是对于系统本身而言控制目标未达到,另一方面导致用户感受不好,这种情况对运行效果的影响也是很大的。实时温度控制系统中普遍存在着滞后现象,如何克服该现象是一个重要的研究内容。而随着单片机系统的出现,带来了传统温度控制系统的重要革新,使得温度控制的方法变得相对容易且多样化。因此,本文以单片机为核

11、心,综合运用大学期间所学过的软件和硬件知识,以水这一液体为承载对象,设计、调试一个水温控制系统。下面简要讨论目前温度控制系统的现状。1.2 研究现状温度不但和人们的生活环境相关,人体的舒适度和周围环境温度有很大关系;温度还是科学研究及生产中需要准确测量的重要物理量,对产品的质量和客户满意度有重大影响,因此温度的准确计量十分重要。对于温度最早的计量是伽利略发明温度计开始。随着人类的探索,德国物理学家塞贝经过反复试验,将温度信息明确地成功转化为电参数信号,发明了电偶传感器,温度的计量产生了很大飞跃。随后,德国物理学家西门子发明了电阻温度传感器。随着半导体技术开始逐渐温度传感器中应用,市面上出现了半

12、导体热电偶温度传感器。随着物理学的深入研究,又出现了微波、红外线、声学温度传感器。近年来,又将激光和光纤技术应用于温度传感器,光纤温度传感器在各个行业中开始逐渐地被使用,它在多种温度传感器中展现出了较好的发展前景和更广泛的应用1-3。目前,各类的温度传感器主要应用于工业领域、太空领域、生物医学领域、感测应用等。现代社会,科技技术的发展对人们的工作和生活带来了巨大的便利。在工业生产中,有部分特殊环境中的生产工作情况,如温度测控系统中,需要精确地测量温度,而且在检测的过程中需要能有效的控制温度,这是该系统中研究的重点内容,随着市场的发展,研究智能温度控制方式的门槛也在逐渐降低。目前,常用的对温度进

13、行检测和控制的方式,主要是通过各种类型的单片机来实现。硬件集成后,通过单片机刷写相应的代码,就可以对温度进行有效的监测和控制,既便利又可在很大程度上满足生产中的温度技术指标,因此,单片机的有效使用发展前景非常广阔 4-8。随着智能化、自动化技术的不断提高,基于单片机的温度控制系统逐渐减少人工控制环节,将逐渐实现自动监测、反馈、调整、预警等功能9。温度控制方式中,目前应用较广的一种方式是PID温控法。该控制方法基于经典控制理论中的调节器控制原理发展起来,于1915至1940年发展迅速,因其较好的鲁棒性、较高的可靠性等优点被广泛用于工业过程控制。根据统计,目前世界的过程控制领域中所用到的控制器有8

14、4仍是纯PID控制,如果加上改进后的PID算法,其使用率超过了 9010。PID调节器综合考虑了系统的误差、误差变化及误差积累三个因素,比例值、积分值、微分值这三个参数对于控制品质起关键性作用,因此调节这三个参数对于系统控制状态十分重要。在温控系统中应用PID,基本思想是,被控对象实时温度首先由传感器检测出,随后将目标值与实时温度值作比较,通过控制算法进行闭环控制,温度调节由输出的控制量控制执行机构来实现。29重庆工程学院本科生毕业设计 2 总体设计2 总体设计单片机是水温控制系统的核心,现在在越来越多的控制系统及检测技术中被应用。要实现水温的控制,温度的采集是基础,各种数字智能集成温度传感器

15、已经大批量的生产并应用于实际,经过改良,智能化集成温度传感器性能以及各项技术指标都大大的提高。为了实现实时控制、快速响应控制,在设计上采用单片机作为系统的核心控制器,为了实时检测水温,选用的是防水型数字温度传感器DS18B20,显示选用LCD1602液晶模块,水的加热采用加热棒,加热控制的供电采用220V转12V的,加热控制采用继电器,人机交互选用轻触开关,整个系统操作简单直观且实时性好。系统实现的总体框图如下,硬件电路主要分为水温采集部分,单片机最小系统,电源供应,人机控制模块,水温控制模块,控制状态指示电路等,整个系统能正常运行需要单片机最小系统正常工作。软件部分主要实现水温数据处理、人机

16、交互、加热控制、加热状态显示等功能。图2.1 总体框图单片机模块及供电系统的核心控制模块为单片机,是能实现控制功能的核心,本系统中可以采用的单片机类型众多,选用时主要考虑能否实现功能、通用性及程序刷写时的方便性;因此,采用的是STC系列的单片机STC89C52RC,该单片机与51系列的使用是一样的,下载采用STC-ISP,与课程中用到的刷写方法一致,因此节约了软件安装时间和学习软件使用的时间。系统供电由单片机与PC串口实现。电源为+5V,可以为系统中的各个元器件供电,供地。而加热控制的供电若由单片机直接供5V电,功率太小,会使控制效率降低,水温控制时间过长,因此考虑额外供电。本系统考虑可靠性和

17、安全性未采用220V供电,采用12V电源为加热棒供电。水温采集模块水温是整个系统测量的主要内容,本系统的温度数据信号的采集利用数字温度传感器实现,其测量精度对系统的可靠性有很大的影响,并且对设计的控制性能起很重要影响,选择合适的温度传感器能保证系统的实时性和准确性。防水型DS18B20 与单片机接口连接时只用一条导线即可实现双向通信,所以硬件简洁。工作时不需要额外添加外围元件支持,可用数据线给单片机供电,利用单片机提供的+5V电源和地管脚分别与DS18B20的电源和地脚相连即可正常工作。且该温度传感器有防错功能,如果电源和地线接反,传感器并不会烧毁,只是会非常烫,温度采集异常,但是冷却后,将电

18、源和地线连接正确该传感器仍然可以正常使用,因此非常有利于防止焊接过程中出现低级错误时烧坏温度传感器。水温控制模块水温控制模块可以采用热得快进行,但是考虑到市场上用的热得快都是220V供电,与单片机系统结合后,加热持久有可能会烧坏元器件,且出于安全考虑,采用12V供电电源。软件中结合PID算法控制加热时驱动加热棒工作。人机控制模块人机交互其中一部分主要为显示部分,另一部分为按键模块。按键是本系统能正常实现人机交互的重要途径,是采集人员操作需求的主要的信息输入方式。由于本系统功能设计中无需特别复杂的人机交互通讯,因此无需采用键盘式按键,只需采用独立式按键,采集有无相应功能需求。显示电路原则上可以采

19、用的显示方式有多种,可以多位数码管、LCD1602,TFT等,但是多位数码管显示内容简单,只能显示温度数字;TFT液晶能显示复杂内容,但是对于本系统来说采用TFT液晶功耗相对较大,且系统也无需显示特别复杂的内容,造成资源浪费;因此,综合考虑,采用LCD1602液晶模块,既可以显示温度数据也可以用英文提示相应信息。控制状态指示由于本系统是水温控制系统,肉眼很难准确判断控制是否结束。考虑到操作人员容易直接通过系统表现判断控制状态,因此,控制状态指示参照实际中应用的加热炉等设备的状态指示,其控制过程用灯光来提示。因此,本系统考虑采用发光二极管实现,绿色发光二极管亮,红色发光二极管灭,表示加热中;红色

20、发光二极管亮,绿色发光二极管灭,表示加热完成。重庆工程学院本科生毕业设计 3 系统硬件电路及软件设计3 系统硬件电路及软件设计本系统要选择能实现相应功能需要的软硬件,设计合理的电路和相应软件代码,以确保可靠地实现水温的自控。3.1 单片机及软件设计3.1.1 单片机单片机的选型在本系统中是实现功能的基础。它需要有足够的内存、较好的通用性、较高的速率、价格低廉等要求,本系统选用的单片机是STC89C52RC。STC89C52RC拥有系统可编程Flash,灵巧的8 位CPU,使得广泛应用于众多嵌入式控制应用系统中,自带8K闪烁可编程可檫除只读存储器,存储容量对于本系统已经够用。在掉电保护方式下,S

21、TC89C52RC的RAM存储内容会被保存起来不会丢失,单片机会停止工作,直至遇到下一个中断或硬件RST复位。在空闲模式下,CPU 停止工作,此时RAM、串口、定时器/计数器、中断可以继续工作。最高运作频率35MHz,6T/12T可选。单片机本身是不足以实现系统功能的,它是程序的载体。要让系统能正常运行,还需建立最小系统电路,包括时钟电路、复位电路。1)时钟电路时钟电路十分重要,涉及到单片机是否能正常工作。电路内部有一个高增益反相放大器,时钟电路的输出端和输入端分别是单片机的TXD和RXD引脚。单片机的时钟信号可以由内部或外部方式产生。对外部振荡信号无特殊要求,一般采用频率低于12MHz的方波

22、信号来保证脉冲宽度。2)复位及复位电路单片机复位信号的输入端是RST引脚。复位可以使程序自0000H单元开始执行,是单片机的初始化操作。用户可以按复位键退出错误状态使系统重新启动,解决程序运行出错或者由于操作错误导致系统处于死锁状态的问题。复位信号需要持续一段时间高电平才能有效。若使用频率为12MHz的晶振,复位需要让该引脚的高电平持续有效时间24个振荡周期(即二个机器周期)以上。STC89C52RC实现主要功能,包括液晶的显示控制;水温传感器的部分的初始化、读数据、写数据;按键控制;加热棒的控制,以及发光二极管的控制。3.1.2 主程序软件设计主程序中主要包含各种初始化以及子程序的调用。初始

23、化涉及到DS18B20数字温度传感器的初始化及LCD1602液晶的初始化。主程序中需要调用各子程序,包括按键控制状态采集子程序,水温工作状态指示子程序,DS18B20采集温度数据子程序,温度数据转换子程序,LCD1602液晶显示子程序,PID控制子程序。具体流程如下图所示:图3.1 主程序流程图首先需要进行初始化,随后防水型温度传感器不停采集水的温度,系统全程由STC89C52RC控制LCD1602液晶实时显示当前水温值及本人姓名,当检测到的实时温度小于设置的目标温度时,调用加热控制子程序,进行PID控制,加热模块工作,期间水温状态指示为加热中。当实时水温达到设置的目标温度时,加热模块停止,水

24、温状态指示为加热结束。3.2 温度采集硬件及软件设计3.2.1 温度传感器硬件近年来,随着技术的不断进步要求能更加准确地测量温度,因此不断地提高生产效率以及自动化技术水平对整个生产过程产生举足轻重的作用,生产出的温度传感器性能也越来越好。为了实时采集水温,本设计中采用的温度传感器是美国一家公司生产的DS18B20温度传感器,该传感器具有低成本、结构简单、供电方式多样、可靠性高以及方便扩展等优势,而考虑到本设计需要在水中测量温度,因此常用的DS18B20无法使用,需要采用防水型DS18B20,实物如下:图3.2 防水型DS18B20DS18B20支持“一线总线”接口,硬件结构简单,线路简洁,系统

25、的抗干扰性得到了大大提高。其测量的温度范围为-55C+125C。本系统考虑到实际情况,未设置负温度范围。支持3V5.5V的电压范围,因此适用于单片机控制的系统,使得设计更灵活、方便。本系统应用的环境是液体水,因此需要采用防水型DS18B20,但是它与通用的DS18B20功能是一样的。三个管脚由导线引出,其中黄色的导线代表DQ信号线,为数字信号输入/输出端;黑色的导线代表是GND,为电源地;红色导线代表VDD,为外接供电电源输入端。焊接时需要将DQ与单片机I/O口连接,GND与单片机外接的地连接,VDD与+5V电源相接。为了使系统正常工作,实现预期功能,需要理解DS18B20的工作原理。DS18

26、B20采用3脚PR-35封装,防水型DS18B20,温度计用防水层包裹,三个管脚用防水导线引出,三个管脚中,黑色线GND为地;黄色线DQ为数据输入/输出端,常态下呈高电平;红色线VDD是外部+5V电源端,不用时应接地。DS18B20是单总线可编程的温度传感器,从硬件上来看,只需将三个管脚进行相应的连接。其中,与单片机直接连接的只有DQ引脚即下图中的I/O管脚,它可以直接与单片机通讯,因此大大简化了电路的复杂度。电路如下所示:图3.3 温度采集电路3.2.2 温度采集软件设计要实现温度采集的软件,需要理解DS18B20的工作流程。因为读写数据是在一根I/O线上,它对读写的数据位有着严格的时序要求

27、,协议工作时序包括写时序、读时序、复位时序。首先DS18B20需进行初始化,随后ROM操作指令,随后存储器操作指令,最后数据传输。各位数据传输的正确性和完整性需要严格遵守DS18B20的通信协议。其通信协议定义了三种信号的时序。每一次传输都是由主机启动写时序开始。传输过程中,如果要求DS18B20向单片机回送数据,则需在写命令发送完毕后,由对应的主机启动读时序完成数据的接收。命令和数据都要求由低位到高位一位一位的传输。根据以上分析,温度采集的具体流程如下图所示:图3.4 温度采集的具体流程3.3 液晶显示电路及软件设计3.3.1 液晶显示电路本系统中,根据功能需求分析,需要显示的内容为温度数据

28、值。因此采用通用的LCD1602即可实现本设计的显示功能。本系统初始状态下,即无任何按键按下时,第一行用于显示实时采集的水温,第二行用于显示本人姓名。当模式按键按下时,LCD1602显示目标温度。LCD1602实物如下所示,该液晶具备16个引脚,每个引脚的功能进行详细说明如下表所示。图3.5 LCD1602实物图表3.1 LCD1602引脚接口说明表符号引脚说明符号引脚说明VSS电源地D0-D7数据VDD电源正极BLA背光源正极VL液晶显示偏压BLK背光源负极RS数据/命令选择E使能信号R/W读/写选择理解LCD1602引脚接口功能对实现与单片机的硬件连接和软件代码实现具有重要意义。硬件上,

29、VL实物电路中需要焊接一个10K的电位器,用于调整对比度,对比度的强弱对显示的数据清晰度有较大影响。实际调节时,需要仔细调节,否则显示不正常。D0D7是8位双向数据端,需要与单片机的某一个端口相接。焊接后需注意单片机端口和LCD1602的D0D7的杜邦线连接顺序。否则传输数据或者相关指令可能出错。如果未正常显示,可用万用表检查D0D7上的电压是否发生变化,如无变化,需检查硬件,或者软件代码的端口是否和硬件匹配。RS脚需要与单片机的某一个I/O口相接,用于寄存器选择。该管脚由单片机发送低电平“0”时选择指令寄存器,发送高电平“1”时选择数据寄存器。RW脚控制读写功能,与单片机的一个I/O口连接。

30、单片机向该脚发送低电平“0”时进行写操作;向该脚发送高电平“1” 时进行读操作。软件中,RS和RW脚需配合使用才能正常发送数据或者命令。E脚为使能端,与单片机的一个I/O口连接。该脚发生负跳变时执行指令,单片机向该脚发送高电平“1” 时读取信息。BLA表示背光源正极,接+5V。BLK表示背光源负极,需要接地。电源不能接错,否则可能烧坏LCD1602。根据上述管脚的理解,具体的电路实现如下:图3.6 LCD1602电路在硬件调试时,尤其要注意可调电位器,需要仔细进行调节,否则液晶上显示的内容无法被正常显示出来。1、2脚不能接反,否则只有背光亮,液晶上无显示。焊接时,一定不能出现虚焊,否则数据传输

31、不正常,液晶不能正常显示温度。如无法正常显示,可用万用表实时检测每个管脚的电压是否在正常值。3.3.2 液晶显示软件设计本设计中,要将实时采集的温度数据显示至LCD1602,那么除了理解上述管脚的硬件连接之外,还需要理解每个引脚的功能及其对应的软件实现方式。具体而言,代码中需要操作的管脚包括,D0D7、RS引脚、RW引脚及E脚。要进行相应的读写操作,需要进行指令和数据的传输。那么如何表示数据、指令,何时读,何时写,则需要根据下表进行实现:表3.2 LCD1602指令说明表读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无

32、读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无上表中,L表示低电平,H表示高电平。根据对管脚作用及时序的理解,软件流程如下:图3.7 LCD1602软件控制流程3.4 水温控制电路及软件设计3.4.1 水温控制电路想要达到控制水温的目的,水温控制模块,需要由单片机I/O口给高低电平,控制继电器的通断,继而控制加热棒加热的占空比,控制加热。硬件电路如下图所示:图3.8 控制电路如果实际温度低于预设的目标温度,想要加热开始,则单片机需要I/O口给高电平,电路中三极管可以控制开关, NPN会饱和导通,随后继电器线圈通电,继电器

33、的触点会吸合,使电源接通给加热棒供电。当单片机给低电平时,NPN三极管截止,继电器线圈断电,触点断开,电源断开,停止给加热棒供电。当继电器断开时,继电器线圈有电感存在,这时NPN三极管已经截止,继电器线圈的两端会产生较高的感应电压。感应电压的极性是上负下正, NPN三极管的集电极上为正端,当感应电压与电源电压之和大于NPN集电极的反向电压,此时NPN三极管可能会损坏,因此,加入续流二极管,会使继电器线圈产生的感应电流从二极管D2流过,从而达到保护三极管的效果。为了保护NPN三极管,电路中加入了续流二极管,当继电器吸合时, D2截止,不影响电路正常工作。3.4.2 水温PID控制软件设计对于本系

34、统来说,最大的影响因素就是水温的滞后性。加上本系统中用的DS18B20有防水层,因此采集的温度变化不如无防护层的灵敏。调试中发现,水的加热控制的快慢还与温度传感器离加热棒的距离有关,当DS18B20离加热棒距离不一样,温度显示变化不同,滞后的时间也略不相同,会影响控制性能。水温控制系统是一个闭环系统,具有滞后性,因此算法采用的是PID算法11-12。PID的温度控制精度主要受比例、积分、微分三个参数影响。PID算法成熟,稳定性好,十分实用。本文中需要控制的是水的温度值,PID是一个闭环控制算法,十分适用于这类具有滞后性的闭环控制系统。偏差e(t)由预设目标温度r(t)与实际温度c(t)之差产生

35、,e(t)的比例、积分、微分组成控制量。PID控制时域的公式如下: (3.1)将其分解开来主要包含以下三部分:(1) 比例调节器 y(t) = Kp * e(t) (3.2)其中,y(t) 为当前输出的控制信号, e(t) 为当前的温差即目标值与实时检测温度值的差值。比例环节,输出与输入偏差成正比。偏差出现时,可以及时地产生与之成比例的调节作用,调节及时,从而使被控量逐渐减小偏差。但是, Kp因子过大可能会造成系统不稳定,导致动态响应的品质变坏。(2) 积分调节器 y(t) = Ki * (e(t)dt (3.3)其中Ki = Kp/Ti ,Ti为积分时间常数。只要偏差e(t)不为零,就会产生

36、对应的控制量并影响被控量。Ti表示积分速度,Ti越大则积分速度越慢,积分作用越弱。积分可以减小惯性的影响。增大Ti能减小积分作用,消除静差的过程会减慢,从而减小超调,系统的稳定性相应提高。(3) 微分调节器 y(t) = Kd*d(e(t)/dt (3.4)其中 Kd = Kp*Td ,Td为微分时间。加入微分调节可以使系统更加趋于稳定。PID中加入微分调节将有利于减小超调量,减少系统的震荡。微分会控制偏差的任何变化,用来调整系统输出,阻止偏差发生变化。偏差变化越快,对系统偏差产生的阻止作用越大。微分调节会加快系统的动作速度,系统调整到目标状态的时间会减小,最终改善系统的动态性能。其中T为PI

37、D控制采样计算周期。Pc为只采用比例环节控制条件下,控制系统的震荡周期。其具体实现的流程如下:图3.9 PID控制流程3.4.3 水温PID调节PID的温度控制精度主要受比例、积分、微分三个参数影响,本系统中采用手动人工修改参数,对PID进行整定,按照比例、积分、微分依次单独调一个参数。水温控制系统是典型的滞后系统,PID中的微分调节可以有超前调节的作用,因此必须加入。(1)比例系数控制本系统中首先对比例系数进行单独设置,积分和微分部分不参与调节。独立观察比例系数修改对系统的影响程度。目标温度设置为50 c,水温初始为15 c。初始设置比例系数Kp 为0.01,运行结果如图3.10所示,图3.

38、10 比例系数调节图1Kp设置为0.1,运行结果如图3.11所示。图3.11比例系数调节图2由图可以看出,比例系数初始为0.01时,温度上升很快,但是距目标温度相差接近7 c。当把Kp调大时,温度上升仍然很快,距目标温度只有2 c。因此Kp调大系统性能相对更好。但是仍然不能达到目标值。(2)积分系数控制积分系数Ki进行单独设置,比例和微分部分不参与调节。独立观察积分系数修改对系统的影响程度。目标温度设置为50 c,水温初始为15 c。初始设置Ki=0.0001,运行结果如图3.12所示,系统震荡很大,难以稳定。图3.12积分系数调节图1随后设置Ki=0.001,运行结果如图3.13所示,系统震

39、荡很大,最终仍然难以稳定在目标温度。图3.13积分系数调节图2因此,Ki设置越大,系统震荡越大,稳定性越差。(3)微分系数控制单独设置微分系数Kd,独立观察微分系数的修改对系统的影响程度。目标温度设置为50 c,水温初始为15 c。单独调节微分,无论微分系数调节大小,运行结果均为初始温度值15 c如下图所示。因此,不能仅仅使用用微分环节进行控制,需结合比例和积分环节。图3.14微分系数调节图(4)比例积分微分共同调节由于单独只采用比例、积分和微分环节进行调节,系统状态都不尽如人意。因此,考虑将三个环节同时加入。经过反复修改参数,最终得到控制效果相对较好的参数组合Kp=0.9,Ki=0.0001

40、,Kd=0.05。系统能够快速响应,超调较小,稳定性也较好。图3.15 PID调节图3.5 控制状态识别硬件及软件设计3.5.1 控制状态识别硬件设计本设计中,因为水的加热过程无法直接用肉眼直接获取结果,因此,想要直接观察加热状态是否结束,而加热过程没有明确的表现特征,为了让操作人员知晓当前是否正在加热中,增加了加热状态判断电路,方便操作人员实时判断状态。系统中采用是2个发光二极管LED来表征加热指示状态。发光二极管发光需求的工作电流很小,工作电压很低;它的优点是寿命长,抗震性能和抗冲击好,可靠性高;调节电流强弱可以调节发光二极管发光的强弱。它的反向击穿电压大于5V,焊接过程中不能将正负极接错

41、,否则会烧坏发光二极管。本系统采用的发光二极管为通用型,长脚为正,根据电路设计该脚需要接电源,短脚为负,该脚接单片机I/O口,软件中需要将相应管脚拉低,才能点亮发光二极管。系统中采用一个绿色的发光二极管用作加热过程中的指示灯,一个红色的发光二极管用作加热结束的指示灯,实物图如下所示:图3.16 水温控制状态指示图3.5.2 控制状态识别软件设计本系统中,由于很难直接判断出系统控制是否完成,因此通过温度值对比来控制相应的LED是否点亮。程序根据DS18B20温度传感器采集的实时温度是否小于目标温度值来判断是否在加热过程中,如果实时温度小于目标温度,表明在加热过程中,则点亮绿色LED,红色LED熄

42、灭;如果实时温度大于目标温度,表明加热结束,则点亮红色LED,绿色LED熄灭。具体流程如下图所示:图3.17 加热状态判断流程3.6 人机交互电路及软件设计3.6.1 人机交互电路设计本设计中,需要在加热过程中实时检测水的温度,并且能够人为配置加热的目标温度。考虑设计目标,设计了两种模式,模式一LCD1602上显示系统当前水温和本人姓名拼音,模式二用于配置加热的目标温度,可以实现温度加和温度减。本设计中采用的按键为轻触开关,用于切换当前模式,实物如下图所示。图3.18 轻触开关实物按键通常分为常闭按键、常开按键和复合按键三类。其中,常开按键是当按下按键帽时触头闭合,电路接通,松开按键帽后触头自

43、动断开,电路断开;常闭按键则与常开开关完全相反。实际中选用哪种开关可根据需要选择。本设计中用到的轻触开关是一种常开的按键,初始默认电路断开。具体电路图如下所示:图3.19 轻触开关电路图轻触开关的工作原理如上图所示,未按下按键时,其中的1、2脚和3、4脚分别接通;按键的按键帽按下时两个贴片挨近, 1、4脚导通且2、3脚导通;松开的时候,贴片分离,断开复位,1、2脚和3、4脚分别接通。所以焊接时,可以焊接1、4脚或者2、3脚。本设计中将1脚接地,4脚接单片机I/O口,软件中需要实时采集4脚电平,若检测到该管脚为低电平则说明有相应的按键按下,继而执行相应的功能。本系统的三个轻触开关焊接时,其一端可

44、以接到一个公共端,同时接地。本设计需要三个轻触开关,随时切换在LCD1602上显示的内容以及便于配置预期温度,其中一个用于切换模式,初始化后显示当前实时采集的温度,按一次后切换为加热的目标温度,再按一次后显示当前实时采集的温度,如此循环;一个用于设置温度加一,即按一次按键目标温度值加一;一个用于设置温度减一,即按一次按键温度数据减一。当然,系统中温度加、温度减的按键,按一次加几或者按一次减几,可以通过软件设计相应数据来实现,并不只能进行加一或减一,也可以实现加二或减二等。本设计中还是采用温度加一、温度减一。根据开关原理及功能需求,焊接好的电路实物如下图所示:图3.20 水温显示界面控制开关图3.6.2 人机交互软件设计根据硬件电路连接方式,软件中判断相应按键所接端口的电平并实现相应功能,具体判断流程如下:图3.21 人机交互软件流程图当无任何按键按下时,LCD1602显示当前采集的实时水温;当界面显示切换按钮按下时LCD1602显示目标加热温度,此时,如果有温度加一键按下,则目标加热温度加一,如果有温度减一键按下,则目标加热温度减一,当检测到界面显示切换按钮再按下时,LCD1602显示当前采集的实时水温,如此循环往复检测并执行相应功能。重庆工程学院本科生毕业设计 4 系统调试及

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁