基于Matlab的PID参数最优化设计

上传人:枫** 文档编号:513911219 上传时间:2022-07-24 格式:DOC 页数:9 大小:529.50KB
返回 下载 相关 举报
基于Matlab的PID参数最优化设计_第1页
第1页 / 共9页
基于Matlab的PID参数最优化设计_第2页
第2页 / 共9页
基于Matlab的PID参数最优化设计_第3页
第3页 / 共9页
基于Matlab的PID参数最优化设计_第4页
第4页 / 共9页
基于Matlab的PID参数最优化设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《基于Matlab的PID参数最优化设计》由会员分享,可在线阅读,更多相关《基于Matlab的PID参数最优化设计(9页珍藏版)》请在金锄头文库上搜索。

1、基于 Matlab 的 PID 参数最优化设计摘要:PID 参数的最优化设计通过单纯形法,利用 Matlab的语句、图形功能、工具箱函数和最优化工具箱优化目标函数,构建动态系统,以简化动态仿真过程控制系统。多变量目标函数寻优用单纯形法,参数初值按控制理论确定,目标函数程序用仿真函数 Sim 编写。并以调节器参数最优化设计为例,论述了目标函数构造、初值确定、动态系统仿真分析的过程。关键词:优化设计;PID 参数;过程控制;Matlab1.引言 PID控制是最早发展起来的经典控制策略,是用于过程控制最有效的策略之一。由于其原理简单、技术成熟,在实际应用中较易于整定,在工业控制中得到了广泛的应用。它

2、最大的优点是不需了解被控对象精确的数学模型,只需在线根据系统误差及误差的变化率等简单参数,经过经验进行调节器参数在线整定,即可取得满意的结果,具有很大的适应性和灵活性。PID 控制中的积分作用可以减少稳态误差, 但另一方面也容易导致积分饱和, 使系统的超调量增大。微分作用可提高系统的响应速度, 但其对高频干扰特别敏感, 甚至会导致系统失稳。所以, 正确计算PID 控制器的参数, 有效合理地实现PID 控制器的设计,对于PID 控制器在过程控制中的广泛应用具有重要的理论和现实意义。过程控制系统通常是对一些过程变量(温度、压力等)实现自动化。最优化设计是指通过理论和优化方法,计算机从许多的可行方案

3、中,按目标函数的要求自动寻出最优的方案后。对设计出来的系统在各种信号和扰动作用下进行响应测试,若系统性能指标不能令人满意,则再选定控制方案,进行参数优化,直到获得满意的性能指标。借助 Matlab 软件,结合优化设计中的单纯形法,提出一种过程控制系统 PID 参数最优化设计的方法。Matlab 语句功能强大,一条语句相当于其它高级语句的几十条以至几百条以上,书写简便。它具有丰富的图形功能,可进行性能分析,提供了许多面向应用问题求解的工具箱函数,如最优化工具箱就提供了便利函数,使系统分析与设计变得简便Matlab 附带的软件 Simulink,是对非线性动态系统进行仿真的交互式系统,可利用方框图

4、构建动态系统,然后采用动态仿真的方法得到结果。利用Matlab 可减少编程量,使优化设计变得简单。2. 运用仿真软件进行PID参数最优化设计2.1优化设计中的几个概念 一般情况下,由于优化设计是相对某些具体设计要求或某一人为规定的优化指标来寻优的,所以优化设计所得结果往往是相对的最优方案。图一给出了优化设计的流程框图,下面简要介绍其中的几个概念。设计变量对象运动方程目标函数评判最优方案优化方案计算(1)设计变量在优化设计中,将某些有待选择的量值称为设计变量(如系统参数)。通常,计变量的初始值(可任意设定)不影响优化的结果,但影响优化设计的效率(计算时间)。(2) 约束条件 在优化设计中,某些设

5、计变量的结果可能超出了某些设计要求的限制(不满足工程技术要求);计算机应能自动抛弃不合理的设计方案,而去继续寻找最优化方案,以提高优化设计的效果。这些限制条件在数学上称之为约束条件。(3) 目标函数 实际上,真正意义上的“最优”是很难寻求的,我们所说的“最优”是指在一定“条件”下的最优,目标函数就是人们设计的一个“条件”。目标函数的选择是整个优化设计过程中最重要的决策之一,其选择得如何将直接影响最终结果。(4) 目标函数值的评定与权函数(罚函数) 在优化设计中,往往有几种方案可以被选择,如果各方案都满足约束条件的话,则目标函数值最小的即为最优方案。但是,在一个优化设计问题中,约束条件往往有好几

6、项,而各种方案所满足的约束条件往往不一致,在这种情况下,怎么评判各个方案的优劣呢?这就需要把几个约束条件统一起来考虑再进行评判,在数学上有如下的综合目标函数式中,为不考虑约束的目标函数;,i= 0,1,m,为m个约束条件;为大于零的数,表示第i个约束在设计总所占的比重,称为权,为权函数。2.2 参数最优化设计方法 参数最优化是指比例、积分、微分调节器PID的 Kp、Td、Ti 为何值时,使得某个目标函数达到最优,归属于多变量函数寻优。由函数导数寻优的方法(梯度法)在非线性时变系统中是不适用的,只能采用直接寻优的方法,这一类方法不必计算目标函数剃度,常用的方法有黄金分割法,单纯形法等。而单纯形法

7、是多变量技术中常用的方法。其思想为:在n 维空间中取(n+1)个点构成单纯形,比较这(n+1)个点处的目标函数值,丢弃最坏的点(即函数值最大的点),代之以其对称点,构成新的单纯形,反复迭代来寻得函数值最小的点。在计算机仿真中,采用 C 语言,Fortran 语言实现,算法繁琐,编程量大。故采用 Matlab 优化工具箱中的 Fminsearch 函数,利用 Simulink 建立仿真模型,实现优化设计。图1 是实现的程序框图。对于一过程控制系统 PID 的参数 Kp、Ki、Kd待定。根据控制理论确定参数 X(X 为一矩阵)的初值 X0,然后,通过 Simulink 建立系统框图并以 .mdl

8、文件的形式存入,利用仿真函数 Sim 编写Sim 的格式为t,x,目标函数程序,得到最优的值。y=sim(!.mdl 文件名!,仿真时间, 仿真初值)。Y为.mdl 的输出,这就避免了建立目标函数的难题。最后,需要优化的参数为全局变量,必须编写优化程序,利用 Fminsearch 函数求最优值。2.3参数最优化设计原理单纯形法优化设计就是要寻找一组最优的设计变量以使目标函数取值最小(或最大),所以从数学上讲就是求取函数的极值问题,在工程上称之为“寻优问题”。但是,在工程上的一些实际问题中很难列写出其函数表示关系,因此常规由函数导数寻优的方法(梯度法)在许多工程问题上(如非线性时变控制系统中参数

9、的优化)是不适合的。在经典的优化设计方法中还有一类不必计算目标函数梯度的直接搜索方法,称之为随机实验法(或探索法)。大家可能都有这样的直观感觉,若能计算出(或测试出)若干点(即设计变量)处的函数值,然后将他们进行比较,从他们之间的大小关系就可以判断出函数变化的大致趋势,以作为搜索方向的参考。常见的这一类优化方法有黄金分割法(又称0.618优选法)、单纯形法及随机射线法等,其中单纯形法以其概念清晰、实现便利等优良性能广泛为人们所采用,下面就其优化设计原理做一简要介绍。2.3.1单纯形 所谓单纯形是指变量空间内最简单的规则形体。如在二维平面内正三角形即为单纯形,而在三维空间内正四面体为单纯性。2.

10、3.2单纯形法的寻优原理为便于说明,现以二维情况加以讨论。如图2所示,设初始单纯形3个顶点A、B、C的坐标值为(X1i,X2i),i=1,2,3,它相当于三个设计方案(例如为PI调节器参数的三种方案),可以分别计算出(或试验出)相应的三个目标函数值,然后比较出大小,称目标函数值最大的点为“坏点”,次之为“次坏点”,最小的点为“好点”。这样,单纯形法的寻优过程可概括为如下几点:1)寻优规则。设ABC的A点为坏点,于是抛弃A点,将三角形沿BC边翻转,得到一个新的A1BC。重复这一过程,即不断地抛弃坏点,建立新点。若坏点重复,则应抛弃次坏点,继续上述过程。2)终点判别。当三角形逐渐接近峰顶(最优值)

11、时,会出现三角形绕同一“好点”转圈的情况,即出现好点重复的现象。若用T表示单纯形绕最优点重复翻转的次数,N表示变量的维数,则当T1.65N时说明三角形已达到峰顶。3)精度调整。如果对设计变量的精度要求较高,可将单纯的边长a值缩小,而后继续上述寻优过程,直到满意为止。单纯形法最终所得到的“好点”即为最优设计方案,对应的变量值为最优设计参数。2.3.3单纯形顶点的坐标计算单纯形的翻转具有一个特点,即新得到的单纯形仅增加一个新点,其余各顶点不变。所以单纯形顶点的坐标计算关键在于求解新点的坐标,这是一个几何问题,不难推导n个变量时的新点坐标计算公式如下2.4目标函数的选取 对于不同的优化设计问题,其目

12、标函数的选取方式是不一样的,下面所诉目标函数的选取方式是针对图2.4所示控制系统而言的。图2.4 控制系统调节器参数优化设计原理图控制系统参数的优化设计中,常用的目标函数有以下几种:1) IAE准则,即2) ISE准则,即3) ITAE准则,即4) ITSE准则,即5) ISTAE准则,即6) ISTSE准则,即 这些目标函数对于同一个优化问题,其优化结果是不相同的,使控制系统所具有的动态性能也不一样(如快速性、超调量等),具体应用哪一种目标函数还需在实际应用中适当的加以选择。2.5 MATLAB优化设计实例 已知某过程控制系统如图2.51所示,试设计PID调节参数,使该系统动态性能达到最佳。

13、图2.51 PID 控制结构图系统的优化设计中,采用PID 的控制方案进行设计。目标函数选取ITSE 准则,即,利用Simulink 中元件模块库中的元件构造。初值据稳定边界法确定。步骤如下:利用Simulink 建立图2.51 ,将积分系数和微分系数都设为0,比例设一个较大值,使系统仿真。当仿真曲线出现不稳定的增幅荡曲线,时采取折半取中的方法减小比例值,直到出现等幅振荡,记录此时的Kp 和临界振荡周期T,最后按Kp=0.6Kp,Ki=1.2Kp/T,Kd=0.075KpT 的计算式得到初值。可得系统的初值为2,5,0。根据图2.51 的程序框图,建立系统的仿真模型文件opt2.mdl 如图2

14、.52 所示图2.52 系统的仿真模型编写优化的目标函数optm.m 如下:function ss=optm(x)global kp; %定义全局变量global ki;global kd;global n;kp=x(1);ki=x(2);kd=x(3);n=n+1tt,xx,yy=sim(opt,40,);yylong=length(yy);ss=yy(yylong);得到优化目标函数,再定义全局变量,设n=1利用result=fminsearch(optm,2,5,0 )即得kp=4.1722,ki=3.3301,kd=-0.0021在图2.42中,Kp、Ki、Kd分别代表初值,可得仿真曲

15、线如图2.53所示图2.53-1 优化前的响应曲线图2.53-2 优化前的响应曲线系统的超调较大,响应时间较长。把优化值代入图2.52 中进行仿真,得到系统的仿真输出,如图2.54 曲线所示。图2.54-1 优化后的响应曲线图2.54-2 优化后的响应曲线由图2.54曲线看到控制系统的品质得到改善。4结束语通过本次大实验,熟悉了Matlab软件的工作环境,了解了基于Matlab的PID参数实现最优化设计,结合优化设计方法中的单纯形法,借助于Matlab软件的优化工具箱以及交互式的Simulink 仿真环境,对大延时的过程控制系统进行了最优化设计避免了对非线性的处理及大量的编程,根据对系统PID参数优化以后的性能分析,可方便的进行控制方案修改重新进行设计。参考文献1 欧阳黎明. MATLAB 控制系统设计M. 北京: 国防工业出版社, 2001.2 D Hanselman, B Littlefiend. 精通MATLAB 6J. 北京: 清华大学出版社, 2002, (6): 260-261.3 张晓华. 控制系统数字仿真CADM. 北京: 机械工业出版社, 1999, (10): 138-140.4 邵裕森. 过程

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

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号