MATLAB模型预测控制工具箱函数

2018-12-08 18:26

MATLAB模型预测控制工具箱函数

8.2 系统模型建立与转换函数

前面读者论坛了利用系统输入/输出数据进行系统模型辨识的有关函数及使用方法,为时行模型预测控制器的设计,需要对系统模型进行进一步的处理和转换。MATLAB的模型预测控制工具箱中提供了一系列函数完成多种模型转换和复杂系统模型的建立功能。

在模型预测控制工具箱中使用了两种专用的系统模型格式,即MPC状态空间模型和MPC传递函数模型。这两种模型格式分别是状态空间模型和传递函数模型在模型预测控制工具箱中的特殊表达形式。这种模型格式化可以同时支持连续和离散系统模型的表达,在MPC传递函数模型中还增加了对纯时延的支持。表8-2列出了模型预测控制工具箱的模型建立与转换函数。

表8-2 模型建立与转换函数

函数名 ss2mod() mod2ss() poly2tfd() tfd2mod() mod2step() tfd2step() ss2step() mod2mod() th2mod() addmod() addmd() addumd() paramod() sermod() appmod() 功能 将通用状态空间模型转换为MPC状态空间模型 将MPC状态空间模型转换为通用状态空间模型 将通用传递函数模型转换为MPC传递函数模型 将MPC传递函数模型转换为MPC状态空间模型 将MPC状态空间模型转换为MPC阶跃响应模型 将MPC传递函数模型转换为MPC附跃响应模型 将通用状态空间模型转换为MPC附跃响应模型 改变MPC状态空间模型的采样周期 将Theta格式模型转换为MPC状态空间模型 将两个开环MPC模型连接构成闭环模型,使其中一个模型输出叠加到另一个模型输入 向MPC对象添加一个或多个测量扰动 向MPC对象添加一个或多未测量扰动 将两个MPC系统模型并型 将两个MPC系统模型串联 用两个MPC系统模型构成增广系统模型 8.2.1 模型转换

在MATLAB模型预测工具箱中支持多种系统模型格式。这些模型格式包括: ① 通用状态空间模型; ② 通用传递函数模型; ③ MPC阶跃响应模型; ④ MPC状态空间模型;

第1页 共10页

⑤ MPC传递函数模型。

在上述5种模型格式中,前两种模型格式是MATLAB通用的模型格式,在其他控制类工具箱中,如控制系统工具箱、鲁棒控制工具等都予以支持;而后三种模型格式化则是模型预测控制工具箱特有的。其中,MPC状态空间模型和MPC传递函数模型是通用的状态空间模型和传递函数模型在模型预测控制工具箱中采用的增广格式。模型预测控制工具箱提供了若干函数,用于完成上述模型格式间的转换功能。下面对这些函数的用法加以介绍。

1.通用状态空间模型与MPC状态空间模型之间的转换

MPC状态空间模型在通用状态空间模型的基础上增加了对系统输入/输出扰动和采样周期的描述信息,函数ss2mod()和mod2ss()用于实现这两种模型格式之间的转换。

1)通用状态空间模型转换为MPC状态空间模型函数ss2mod() 该函数的调用格式为

pmod= ss2mod(A,B,C,D) pmod= ss2mod(A,B,C,D,minfo)

pmod= ss2mod(A,B,C,D,minfo,x0,u0,y0,f0)

式中,A, B, C, D为通用状态空间矩阵;

minfo为构成MPC状态空间模型的其他描述信息,为7个元素的向量,各元素分别定义为:

? minfo(1)=dt,系统采样周期,默认值为1;

? minfo(2)=n,系统阶次,默认值为系统矩阵A的阶次; ? minfo(3)=nu,受控输入的个数,默认值为系统输入的维数; ? minfo(4)=nd,测量扰的数目,默认值为0; ? minfo(5)=nw,未测量扰动的数目,默认值为0;

? minfo(6)=nym,测量输出的数目,默认值系统输出的维数; ? minfo(7)=nyu,未测量输出的数目,默认值为0; 注:如果在输入参数中没有指定minfo,则取默认值。 x0, u0, y0, f0为线性化条件,默认值均为0; pmod为系统的MPC状态空间模型格式。

例8-5 将如下以传递函数表示的系统模型转换为MPC状态空间模型。

s2?3s?1G(s)?3 2s?2s?2s?1解:MATLAB命令如下: num=[1 3 1]; den=[1 2 2 1]; [A,B,C,D]=tf2ss(num,den); pmod=ss2mod(A,B,C,D) 第2页 共10页

其输出结果为:

pmod =

1 3 1 0 0 1 0 NaN -2 -2 -1 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 1 3 1 0 0 0

2)MPC状态空间模型转换为通用状态空间模型函数mod2ss() 该函数的调用格式为

[A, B, C, D]= mod2ss(pmod) [A, B, C, D, minfo]= mod2ss(pmod) [A,B,C,D,minfo,x0,u0,y0,f0]= mod2ss(pmod)

式中,pmod为系统的MPC状态空间模型格式;A,B,C,D为通用状态空间矩阵;minfo为构成MPC状态空间模型的其他描述信息,其说明参见函数ss2mod()。

2.通用传递函数模型转换为MPC传递函数模型

通用传递函数模型与MPC传递函数模型的转换函数poly2tfd()的调用格式为

g=poly2tfd(num,den,delt,delay)

式中,num为通用传递函数模型的分子多项式系数向量;

den为通用传递函数模型的分母多项式系数向量; delt为采样周期,对连续系统,该参数为0;

delay为系统纯时延,对于离散系统,纯时延为采样时间周期的整数倍; g为被控对象的MPC传递函数模型。

例8-6 考虑如下的纯时延二阶对象,并将其转换为MPC传递函数模型。

e?0.5s(s?1)G(s)?2

s?4s?4解:MATLAB命令如下: >> num=[1 1];den=[1 4 4]; >> g=poly2tfd(num,den,0,0.5) 结果显示: g =

0 1.0000 1.0000 1.0000 4.0000 4.0000 0 0.5000 0

第3页 共10页

3.MPC传递函数模型转换为MPC状态空间模型函数tfd2mod() 该函数的调用格式为

pmod=tfd2mod(delt,ny,g1,g2,……,g25)

式中,delt为采样时间;

ny为输出个数;

g1,g2,……为SISO传递函数,对应多变量系统传递函数矩阵的各个元素按行向量顺序排序构成的向量,其最大个数限制为25;

pmod为系统的MPC状态空间模型。

4.MPC阶跃响应模型与其他模型格式之间的转换

函数mod2step()、tfd2step()和ss2step()分别用于将MPC状态空间模型、MPC传递函数模型和通用状态空间模型转换为MPC阶跃响应模型。下面对这个三函数的用法进行说明。

1)MPC状态空间模型转换为MPC阶跃响应模型函数mod2step()

plant=mod2step(pmod,tfinal)

[plant, dplant]=mod2step(pmod,tfinal,delt,nout)

式中,pmod为系统的MPC状态空间模型;

tfinal为阶跃响应模型的截断时间;

delt为采样周期,默认值由MPC状态空间模型的参数minfo(1)决定; nout为输出稳定性向量,用于指定输出的稳定性。对于稳定的系统,nout等于输出的个数;对于具有一个或多个积怨分输出的系统,nout为一个长度等于输出个数的向量,该向量对应积分输出的分量为0,其余分量为1;

plant为对象在受控变量作用下的阶跃响应系数矩阵; dplant为对象在扰动作用下阶跃响应矩阵。

2)MPC传递函数模型转换为MPC阶跃响应模型函数tfd2step() 该函数的调用格式为

plant=tfd2step(tfinal,delt,nout,g1)

plant=tfd2step(tfinal,delt,nout,g1,……,g25)

式中,tfinal为阶跃响应的截断时间;

delt为采样周期;

nout为输出稳定性向量,参见函数mod2step()的有关说明;

g1,……,g25为SISO传递函数,对应多变量系统传递函数矩阵的各个元素按行向量顺序排列构成的向量,其最大个数限制为25;

plant为对象的阶跃响应系统矩阵。 例8-8 设系统传递函数为

第4页 共10页

G(s)?将其转换为阶跃响应模型。

解:MATLAB命令如下: >> num=[1 2];den=[1 3 1]; >> tf1=poly2tfd(num,den,0,0); >> plant=tfd2step(5,0.1,1,tf1); >> plotstep(plant)

s?2

s2?3s?1由阶跃响应模型绘制的系统阶跃响应曲线如图8-5所示。

图8-5 系统阶跃响应曲线

8.4 基于阶跃响应模型的控制器设计与仿真函数

基于系统的阶跃响应模型进行模型预测控制器设计的方法称为动态矩阵控制方法。该方法是采用工程上易于获取的对象阶跃响应模型,算法较为简单,计算量较少,鲁棒性较强,适用于纯时迟、开环渐近稳定的非最小相位系统,在工业过程控

第5页 共10页


MATLAB模型预测控制工具箱函数.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:清华IE亮剑-2014年获奖论文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: