温度控制实验自控专业.docx

上传人:b****5 文档编号:5163543 上传时间:2022-12-13 格式:DOCX 页数:18 大小:584.88KB
下载 相关 举报
温度控制实验自控专业.docx_第1页
第1页 / 共18页
温度控制实验自控专业.docx_第2页
第2页 / 共18页
温度控制实验自控专业.docx_第3页
第3页 / 共18页
温度控制实验自控专业.docx_第4页
第4页 / 共18页
温度控制实验自控专业.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

温度控制实验自控专业.docx

《温度控制实验自控专业.docx》由会员分享,可在线阅读,更多相关《温度控制实验自控专业.docx(18页珍藏版)》请在冰豆网上搜索。

温度控制实验自控专业.docx

温度控制实验自控专业

《现代控制理论》

——自动化综合实验实验报告

之自制炉温控制器

 

自制炉温控制器实验报告

一、前言

本次自动化综合实验课的目的是通过多种实验系统体验控制算法,此次试验任务我们准备自己制作温度控制器。

本实验报告旨在别人看了报告就可以完全知晓甚至重复我们的设计思路,从硬件设计、软件算法设计介绍我们的作品。

并且,经过比较发现,我们效仿模糊控制的控制思路,自行设计了控制算法,为了更好的学习PID我们又把PID控制算法我们自己设计的控制效果进行对比,最后,我们还总结了实验中的收获。

二、基本概念

炉温控制:

炉温控制是指根据炉温对给定温度的偏差,接通或断开供给炉子的热源能量,或连续改变热源能量的大小,使炉温稳定有给定温度范围,以满足热处理工艺的需要。

其中控制算法是控制的核心之一,下面着重介绍我们涉及到的PID控制算法和模糊控制的一些概念。

PID:

在工程实际中,应用最为广泛的调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。

PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。

当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。

即当我们不完全了解一个系统和被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。

PID控制,实际中也有PI和PD控制。

PID控制器就是根据系统的误差,利用比例、积分、微分计算出控制量进行控制的。

  比例(P)控制

  比例控制是一种最简单的控制方式。

其控制器的输出与输入误差信号成比例关系。

当仅有比例控制时系统输出存在稳态误差(Steady-stateerror)。

  积分(I)控制

  在积分控制中,控制器的输出与输入误差信号的积分成正比关系。

对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(SystemwithSteady-stateError)。

为了消除稳态误差,在控制器中必须引入“积分项”。

积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。

这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。

因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。

  微分(D)控制

在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。

自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。

其原因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用,其变化总是落后于误差的变化。

解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。

这就是说,在控制器中仅引入比例项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。

所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。

用数字化的公式表示其算法主要有位置式和增量式:

 

 

模糊控制:

利用模糊数学的基本思想和理论的控制方法。

在传统的控制领域里,控制系统动态模式的精确与否是影响控制优劣的最主要关键,系统动态的信息越详细,则越能达到精确控制的目的。

然而,对于复杂的系统,由于变量太多,往往难以正确的描述系统的动态,于是工程师便利用各种方法来简化系统动态,以达成控制的目的,但却不尽理想。

换言之,传统的控制理论对于明确系统有强而有力的控制能力,但对于过于复杂或难以精确描述的系统,则显得无能为力了。

因此便尝试着以模糊数学来处理这些控制问题。

此架构包含了五个主要部分,即:

定义变量、模糊化、知识库、逻辑判断及反模糊化,底下将就每一部分做简单的说明:

(1)定义变量

也就是决定程序被观察的状况及考虑控制的动作,例如在一般控制问题上,输入变量有输出误差E与输出误差之变化率EC,而控制变量则为下一个状态之输入U。

其中E、EC、U统称为模糊变量。

(2)模糊化(fuzzify)

将输入值以适当的比例转换到论域的数值,利用口语化变量来描述测量物理量的过程,依适合的语言值(linguisticvalue)求该值相对之隶属度,此口语化变量我们称之为模糊子集合(fuzzysubsets)。

(3)知识库

  包括数据库(database)与规则库(rulebase)两部分,其中数据库是提供处理模糊数据之相关定义;而规则库则藉由一群语言控制规则描述控制目标和策略。

(4)逻辑判断

模仿人类下判断时的模糊概念,运用模糊逻辑和模糊推论法进行推论,而得到模糊控制讯号。

此部分是模糊控制器的精髓所在。

(5)解模糊化(defuzzify)

将推论所得到的模糊值转换为明确的控制讯号,做为系统的输入值。

总结起来,模糊控制的概念就是在对于系统知之甚少的情况下,自己设计算法,满足什么样的条件就进行什么样的控制。

我们就是利用这个道理做了一个以模糊控制思想为指导思想的简易算法。

三、硬件设计思路

我们的设计是利用单片机STC12C5A(低功耗)为核心,继电器和加热器作为执行机构,DS18B20作为温度传感器,通过DS18B20传感温度,经过单片机算法,控制继电器通断进而控制加热时间。

以实现炉温控制。

为了实时关注温度控制实际情况并评估控制系统性能并作为参数依据,我们用了铭正系列的液晶,其特点是功能强大,SPI通信,使用IO口比一般的1602少,无需给定对比度,其显示功能非常适合分析超调和确定调节时间。

系统框图如下:

下面我们就从传感器、控制对象、核心3个方面介绍我们制作的炉温控制器:

(1)核心:

STC12C5ALE是我们的核心,承担控制算法计算和控制执行机构的任务。

只不过需要注意的是,此为低功耗单片机,电压3.3V,所以驱动继电器(一般为5V)时需要双电源供电,所以我们应用USB转TTL电平的模块,可从电脑上直接双电源。

3.3V给单片机,5V给继电器,220V给加热器。

并且单片机因为电流较小,控制电路,即驱动继电器的电路我们经过精心设计。

其最小系统如下:

(2)控制对象:

现今的可控加热系统基本用两种形式,控制可控硅两端的电压和控制继电器的通断。

我们选择了后者,其主要原因是我们认为炉温控制系统适用于锅炉温度控制,控制对象较大,而且应用了弱电控制强电的特点所以选择了1300W的大功率加热器,如果应用可控硅虽然效果好,但功率相对较小。

最终,我们决定了利用一个继电器和大功率加热器为炉温控制的执行对象。

继电器选择时一定要注意电压和最大电流。

电路原理如图所示,但是我们用的IO口和电压不同,原理是相同即通过控制IO口的高低电平来控制继电器,接上拉电阻经三极管放大电流驱动继电器。

最后根据算法得出的控制量来利用单片机的计时器控制IO在一个周期内的高低电平比从而控制加热时间,进而控制温度。

(3)传感器:

我们传感器方面选择了单总线的DS18B20,连接图如下:

 

1、复位:

首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。

当18B20接到此复位信号后则会在15~60uS后回发一个芯片的存在脉冲。

2、存在脉冲:

在复位电平结束之后,控制器应该将数据单总线拉高,以便于在15~60uS后接收存在脉冲,存在脉冲为一个60~240uS的低电平信号。

至此,通信双方已经达成了基本的协议,接下来将会是控制器与18B20间的数据通信。

如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。

3、控制器发送ROM指令:

双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读ROM数据、指定匹配芯片、跳跃ROM、芯片搜索报警芯片搜索。

ROM指令为8位长度,功能是对片内的64位光刻ROM进行操作。

4、控制器发送存储器操作指令:

在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。

操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作式切换。

存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。

5,执行或数据读写:

一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。

如执行温度转换指令则控制器(单片机)必须等待18B20执行其指令。

注意!

DS18B20因为是单总线系统所以时序非常重要!

一般都要拿示波器慢慢调节。

值得注意的是,笔者以前用过18B20,但是源程序拷贝过来就不好用,因为每种单片机的每条指令执行的时间不一样所以时序不一样,上次用的是STC89C51这次的STC12C5A指令比51普遍要快,笔者又利用示波器调节得出正确的延时程序。

STC12C5A可直接一直笔者的程序。

其他型号未处理器需要自行调节。

DS18B20复位及应答关系示意图:

DS18B20写时间隙:

读时间隙:

将三者结合在一起我们简易温度控制系统的硬件部分就成型了。

四、控制算法设计思路:

这个部分我们将着重介绍我们的软件系统和控制算法是如何实现的,其中程序代码将以附件的形式附在最后,其中18B20和LCD的显示还有继电器驱动是可移植的,应用相同型号器件直接复制即可。

供他人继续开发使用。

(1)PID方案:

虽然我们用的是自己的算法,但是PID作为本门课程重点,我们肯定是优先考虑,下面介绍下我们设计的PID算法,并与我们后来实际制作的算法进行比较,分析优缺点。

首先我们先确定温控范围和温控周期,工业上推荐以20S为周期即把20等分为一定的份数然后根据PID算法得出的U然后除以一个设定值,得出这20S中多少时间是加热,多少时间是不热的。

因为单片机是8位的,为了方便我们把20分成200分(小于256)。

比如设定最大值为30,我们从20加热到50,设KP=1,一开始的U可算得30,则30/30*200*(20/200)=20S,而假设加热到45时,u=5+积分项(一般KI较小)+微分,微分为负数因为越来误差越小,积分起到平滑干扰的作用,比如测量误差第一次大一些,第二次小一些,积分即可平滑。

所以此时的U将比较小,加热时间就少。

整定好PID三个参数的话,就可以得到很好的效果。

PID算法:

U

 

设计算法时,我们当然首先考虑了PID,但是我们发现,一来PID的参数整定比较麻烦,二来如果系统的扰动变化或者控制目的发生变化,参数就应随之改变。

E=50-20=30而假若下次我们需要从20加到100,那初始的e=80,两者算完得到的U肯定是不同的,所以如果我们要保证,从室温加到50、100一开始都以最快速度加热,肯定就要变PID的参数,加热到50比加热到100整体来讲参数要大。

所以,因为不像工业上大多控制能确定目标,并且把扰动做的较小,PID并不适合我们粗略的炉温控制系统。

(2)自制方案

所以我们考虑了新的方向,以下是模糊控制的控制思路:

我们知道温度控制对象大多具有非线性、时变性、大滞后等特性,采用常规的PID控制很难做到参数间的优化组合,以至使控制响应不能得到良好的动态效果。

而模糊控制通过把专家的经验或手动操作人员长期积累的经验总结成的若干条规则,采用简便、快捷、灵活的手段来完成那些用经典和现代控制理论难以完成的自动化和智能化的目标,但它也有一些

需要进一步改进和提高的地方。

模糊控制器本身消除系统稳态误差的性能比较差,难以达到较高的控制精度,尤其是在离散有限论域设计时更为明显,并且对于那些时变的、非线性复杂系统采用模糊控制时,为了获得良好的控制效果,必须要求模糊控制器具有较完善的控制规则。

这些控制规则是人们对受控过程认识的模糊信息的归纳和操作经验的总结。

然而,由于被控过程的非线性、高阶次、时变性以及随机干扰等因素的影响,造成模糊控制规则或者粗糙或者不够完善,都会不同程度的影响控制效果。

为了弥补其不足,本文提出用自适应模糊控制技术,达到模糊控制规则在控制过程中自动调整和完善,从而使系统的性能不断完善,以达到预期的效果。

α为调整因子,又称加权因子。

通过调整α值,可以改变偏差E和偏差变化EC对控制输出量U的加权程度,从而调整了控制规则。

但是,若α值一旦选定,在整个控制过程中就不再改变,即在控制规则中对偏差、偏差变化的加权固定不变。

然而,在实际控制中,模糊控制系统在不同的状态下,对控制规则中偏差E与偏差变化EC的加权程度会有不同的要求。

为了适应被控对象的结构和参数的变化,并模拟人工控制中的学习过程可以构造一个模糊控制器,其实质是一个二级模糊控制系统。

具体方法是:

将调整因子α看作是一个模糊集,其论域为(0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1)

我们没有学模糊算法去使其模糊化,但我们可以仿照其思想,通过几个点判断系统的状态具体看系统满足什么样的条件(即a=?

),来设置控制方式。

关键是,我们可以想象整个炉温的控制过程,这样就构成了一个简易可行并且好用的算法

我们做了如下设定:

首先系统应分为加热和稳定两个阶段,加热阶段的主要目的是又快又好的加热,而稳定的目的则是使温度控制在需要的值上。

加热阶段,在温差大于十度的时候,我们将全速加热,当在十度和三度之间时我们半速加热,主要起平缓的作用旨在减少超调,最后两度我们利用加热器余温使系统基本零超调,(具体多少度需根据桶的大小实验测定,我们用的桶利用余温加热两度绰绰有余),一旦过了目标温度,我们进入稳定状态,这个状态中我们利用使每个周期加热的时间等于散热量来争取使温度稳定在一定值上面。

如果出现扰动使温度骤降,再次进入加热状态。

程序如下:

time1=1;

time2--;

if(time2==0)

{

time2=20;//20秒调节一次

ReadyReadTemp();//读温度准备

TL=ReadOneChar();//先读的是温度值低位

TH=ReadOneChar();//接着读的是温度值高位

tem=TH*16+TL/16;

if(tem>=50&&tem<75)//判断是否进入加热状态

{

temflag=1;//加热状态标志

}

else

{

temflag=0;

}

a=tem/10;

b=tem%10;

a=a+48;

b=b+48;

PutChar(32,1,a);

PutChar(64,1,b);

PutChar(88,1,'C');

y=81-tem;

Line(i,pretem,i+6,y);//液晶显示温度并画出曲线

pretem=y;

i=i+6;

e=purposetem-tem;

if(temflag==0)//加热状态下的全速、半速、以及余温加热

{

if(e>=10)

timeflag=21;

if(e<10&&e>2)

timeflag=11;

if(e<=2)

timeflag=1;

}

if(temflag==1)//稳定状态下的热平衡

{

if(e<=-1)

timeflag=1;

else

timeflag=2;

}

if(timeflag!

=1)

s0=1;//接通继电器

}

timeflag--;

if(timeflag==0)

s0=0;//关闭继电器

}

(3)两种算法的比较

我们算法的优点:

1、参数整定

无需繁琐的整定参数,我们算法中的所有参数都有明确的物理意义,比如,稳定状态时每个周期加热的时间,肯定等同于散热量,所以我们可以进行实验,我们一开始设为3秒,发现温度一直上升,说明我们的加热器加热3秒就会大于散热,经过调解,20秒加热一秒可以做的很稳定。

2、易控制某些特性

我们的算法对于加热过程的把握是人为的并且清晰的。

如果利用PID算法,肯定会有超调,三个参数互相干扰无法消除。

那么假设工业上一定要几乎没有超调怎么办?

我们的算法完全可控,利用余热加温的方法实验证明确实使超调微乎其微。

假若要求加热速度快,我们的算法可以进行改进,即修改全速加热的时间,不利用余温而是彻底加过目标温度再进行冷却,这中方法虽然有超调但速度极快。

3、非线性

温度控制本身是非线性的,PID的话正如我们所说,他在误差为30和误差为50时算出的U肯定是不一样的,即加热速度在越来越慢(他是线性的),但很多时候,这是对加热资源的浪费,比如误差大于10度时一律全速加热,效果就会比他要好很多,这是我们算法最突出的优势。

我们算法的缺点:

1、抗干扰能力差

因为我们整个控制方法是基于对系统特性的了解并且是离散的,而不是PID那样一点点变化也会加入到考虑之中,所以我们的抗扰动能力比较差。

2、不适于复杂系统

我们整体的控制思路的基础是在于我们可以想象整个加热的过程,诚然,加热的曲线无需实验我们自己凭想象就可以知道,所以,这种控制基于的是对系统的了解,对于复杂系统,其控制过程无法想象,我们的就不适用了,比如,一边加热一边出水。

但PID就可以通过调节参数(虽然将极为复杂以致于很难成功)获得控制效果,我们的控制思路则无论如何做不到。

五、控制性能分析

我们利用自己的液晶显示了数据及曲线去调试和分析,最后终于将控制性能调的比较符合要求,主要工作在于调节稳定状态热平衡加热时间上。

因为一加热就是几分钟,而且效果各异,我们将最后的控制图像拍摄下来,这个图像非常成功,但是因为分辨率的问题,我们液晶是一个点相当于1设施度,所以稳定状态理应有的抖动看不清,但是我们通过串口发来的温度数据来看还是一直存在抖动的。

但是这个现象也有解决的方式,我们可以将最后20S加热的时间平均分配到多个时段,但是因为继电器连续开端的间隔不易过小,所以我们还是选择连续加热一秒。

其实,我们把中线设为50度,即使我们的目标温度。

后面的线变粗是因为温度发生小幅变化,但我们的液晶一格对应1摄氏度,所以体现不出明显的毛刺,而是体现后面的线变粗。

其实DS18B20的精度是+—0.5度,这样的误差还是可以接受的。

从这个图我们可以看出,曲线基本是我们预料的控制方式。

让人欣喜的是,虽然在差十度之内我们半速加热,但是前面全速加热管子上留下的热量使加热速度反而不比一开始慢,但是随着热量越来越少,半速加热使管子的温度不是那么高,余热加热部分明显换缓了下来,虽然在超调方面我们非常满意但是其实时间很长,每6个点的长度就是20秒!

所以余热部分还是有改进的潜力。

正如我们所说,但从这个系统来讲,PID控制可能稳态部分的毛刺要比我们小,但是速度尤其是超调绝对不如这种方式。

但是,不得不承认的是,我们的参数整定比想的要困难许多,尤其是最后的稳态,热平衡到底需要加热几秒非常费时(因为水量的变化和这个有关)后来我们固定了水量多试了几组才做出这种效果,但是稳态不分还是有扰动。

六、总结

经过此次的制作我们主要有以下收获:

1、独立的制作过程,我们整个制作过程完全独立,单片机最小系统及外设全部自己焊接,

自己动手实践一个系统,与走马观花的看是完全不同的,我们在实践中加深了知识的理解。

2、自己思考控制过程,我们选择控制算法不是盲目的,而是真的做了很多调查,最后设计了经典的PID和我们自己的满足条件式控制方法,进行了深层的对比分析,总结出自己的优点和缺点。

不是开发板例程,也没有参照任何一个大四毕设的项目,而且绝大多数自己制作的同学用的都是PID,而我们有自己的新想法。

3、正是因为这个新的控制思想,我们学习了很多新知识,如模糊控制的理论。

虽然我们这个断断不能成为模糊控制法,但是有其思想在里面。

有比较有鉴别,我们通过此次制作更深的了解了PID的算法,因为我们可以进行对比分析。

虽然此次我们是自选实验,但是我们实际上也同样完成了原定实验的学习任务,同样依据PID控制方法的原理和公式,经过多次的理论计算和实验仿真,找到控制参数指标,再通过实际效果反映我们的设计方案。

所以说我们应该完成了实验内容,并且通过创新,运用我们学过的单片机等电子知识,掌握PID控制的核心理念,很好地发挥了我们自动化的专业水平,提炼出我们的专业素养。

4、焊接电路板对于我们已经操作过多次的同学来说,虽不是难事,但也非易事,耗时间耗精力,还得特别小心,因为很小一个细节的错误也会做成诸多麻烦。

大家谁也不嫌烦,齐心协力,仔细认真,每个小分块都细心检测焊接效果,保证我们的电路板能达到预先设计的要求。

期间发生一些小事故,但我们冷静思考,集体讨论,找到问题的症结,同时也请教了老师和学长,最终解决了所有问题。

5、本次试验充分体现出我们小组的团队合作精神,大家相互体谅理解,积极参与,各尽所能,尤其突显出了自我奉献、自我负责的精神。

目前我们的时间都特别紧,学习任务重,况且临近学期末,大量的作业和复习任务席卷而来,即便在这种情况下,去市场买焊接材料的事情谁也不推诿,都争先愿意前往。

虽然我们事先做好大致的设计,列出购物清单,可是去市场探查时候,我们尽量找寻市场变化的材料,有的芯片确实引发我们的思考,经过讨论我们还重新设定了制作方案,提高很多,收获很多,我们都觉得没有白费时间去逛电子市场。

这真的是学习和现实所需相结合,捕捉最新芯片材料的变化不仅完善、创新我们的设计观念,而且增强我们对电子产品的兴趣。

 

七、附件:

程序代码

LCDDIS.C用于液晶显示可在铭正网站上下载,这里因为太长就不列出了。

主要应用有画线、显示、描点函数。

Time.C主要是算法部分,在前面已有介绍

DS18B20.C这个是适合与STC125A的时序的18B20程序,同型号单片机可直接移植。

*********************以下是DS18B20的操作程序**************************/

/*****************************************************

函数功能:

将DS18B20传感器初始化,读取应答信号

出口参数:

flag

***************************************************/

#include"includes.h"

externunsignedchartime;

voidwait(unsignedinti);

voidwait(unsignedinti)

{

while(i--);

}

bitInit_DS18B20(void)

{

bitflag;//储存DS18B20是否存在的标志,flag=0,表示存在;flag=1,表示不存在

DQ=1;//先将数据线拉高

//for(time=0;time<2;time++)//略微延时约6微秒

//;

wait(32);

D

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1