文档详情

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

发布:2017-01-01约6.36千字共10页下载文档
文本预览下载声明
MATLAB模型预测控制工具箱函数 8.2 系统模型建立与转换函数 前面读者论坛了利用系统输入/输出数据进行系统模型辨识的有关函数及使用方法,为时行模型预测控制器的设计,需要对系统模型进行进一步的处理和转换。MATLAB的模型预测控制工具箱中提供了一系列函数完成多种模型转换和复杂系统模型的建立功能。 在模型预测控制工具箱中使用了两种专用的系统模型格式,即MPC状态空间模型和MPC传递函数模型。这两种模型格式分别是状态空间模型和传递函数模型在模型预测控制工具箱中的特殊表达形式。这种模型格式化可以同时支持连续和离散系统模型的表达,在MPC传递函数模型中还增加了对纯时延的支持。表8-2列出了模型预测控制工具箱的模型建立与转换函数。 表8-2 模型建立与转换函数 函数名 功能 ss2mod() mod2ss() poly2tfd() tfd2mod() mod2step() tfd2step() ss2step() mod2mod() th2mod() 将通用状态空间模型转换为MPC状态空间模型 将MPC状态空间模型转换为通用状态空间模型 将通用传递函数模型转换为MPC传递函数模型 将MPC传递函数模型转换为MPC状态空间模型 将MPC状态空间模型转换为MPC阶跃响应模型 将MPC传递函数模型转换为MPC附跃响应模型 将通用状态空间模型转换为MPC附跃响应模型 改变MPC状态空间模型的采样周期 将Theta格式模型转换为MPC状态空间模型 addmod() 将两个开环MPC模型连接构成闭环模型,使其中一个模型输出叠加到另一个模型输入 addmd() addumd() paramod() sermod() appmod() 向MPC对象添加一个或多个测量扰动 向MPC对象添加一个或多未测量扰动 将两个MPC系统模型并型 将两个MPC系统模型串联 用两个MPC系统模型构成增广系统模型 8.2.1 模型转换 在MATLAB模型预测工具箱中支持多种系统模型格式。这些模型格式包括: ① 通用状态空间模型; ② 通用传递函数模型; ③ MPC阶跃响应模型; ④ MPC状态空间模型; ⑤ 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状态空间模型。 解:MATLAB命令如下: 其输出结果为: 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状态空间模型
显示全部
相似文档