文件帮助中心文件
在MPC工厂模型中设置信号类型
外侧= setmpcsignals(Inplant)
外侧= setmpcsignals(Inplant,name,值)
外套= setmpcsignals(插入植物)设置MPC信号类型插入植物到他们的默认值,返回结果外套。默认情况下,所有输入都是被操纵变量,并且所有输出都是输出的。
外套= setmpcsignals(插入植物)
外套
插入植物
例子
外套= setmpcsignals(插入植物那名称,价值)设置LTI系统的输入和输出信号的MPC信号类型插入植物,返回结果外套。使用一个或多个名称值对参数指定信号类型和索引。如果未指定输入或输出通道的类型,则分别配置为操作变量和输出变量。
外套= setmpcsignals(插入植物那名称,价值)
名称,价值
全部收缩
创建四输入,两个输出状态空间工厂模型。默认情况下,所有输入信号都是被操纵变量,并且所有输出都是输出的。
植物= RSS(3,2,4);Plant.d = 0;
配置工厂输入/输出通道,使:
第二和第三输入是测量的扰动。
第四个输入是一个未训练的干扰。
第二个输出是未测量的。
植物= setmpcsignals(植物,'MD',[2 3],'ud',4,'uo',2);
- >假设未指定的输入信号是被操纵变量的。- >假设未指定的输出信号是输出的。
创建MPC控制器。
MPCobj = MPC(植物,1);
- >“preditionhorizon”属性“MPC”对象是空的。尝试preditionhorizon = 10. - >“MPC”对象的“ControlHorizon”属性为空。假设2. - >“MPC”对象的“权重”属性为空。假设默认为0.00000。- >“权重”属性“MPC”对象的“权重”属性为空。假设默认为0.10000。- >“MPC”对象的“权重”属性为空。假设默认为1.0万。对于输出的输出Y1和零重量为Y2
要修改现有MPC控制器的信号类型,必须同时修改依赖于信号类型配置的任何控制器属性。
创建具有两个输出的工厂模型,一个操纵变量,一个测量的干扰和两个未测量的干扰。
植物= RSS(3,2,5);Plant.d = 0;植物= setmpcsignals(植物,'mv',[1 2],'MD',3,'ud',[4 5]);
使用此工厂创建MPC控制器。
mpcobj = mpc(植物,0.1);
- >“preditionhorizon”属性“MPC”对象是空的。尝试preditionhorizon = 10. - >“MPC”对象的“ControlHorizon”属性为空。假设2. - >“MPC”对象的“权重”属性为空。假设默认为0.00000。- >“权重”属性“MPC”对象的“权重”属性为空。假设默认为0.10000。- >“MPC”对象的“权重”属性为空。假设默认为1.0万。
配置控制器属性。例如,设置干扰信号的缩放因子。
mpcobj.disturbancevariables(1).scalefactor = 10;mpcobj.disturbancevariables(2).scalefactor = 5;mpcobj.disturbancevariables(3).scalefactor = 20;
假设您想改变第二个未测量的干扰,以获得测量的干扰。为此,您必须同时更新干扰控制器的属性,因为其条目的顺序取决于干扰类型(测量的扰动,接着是未测量的干扰)。
干扰
创建更新的干扰变量结构阵列。为此,将第三个元素移动到第二个元素。
dv = mpcobj.disturbancevariables;DV = [DV(1)DV(3)DV(2)];DV(2).name ='MD2';
设置内部工厂模型信号类型,获取模型来自控制器的属性,并修改其信号类型植物元素。
模型
植物
型号= MPCobj.model;model.plant = setmpcsignals(model.plant,'mv',[1 2],'MD',[3 5],'ud'4);
将控制器的模型和干扰变量属性设置为其更新的值。
set(mpcobj,'模型',模型,“骚乱”,dv);
通常,最好的做法是在控制器创建后不修改信号类型。相反,使用新的信号配置创建和配置新的Controller对象。
输入工厂模型,指定为LTI模型或线性系统识别工具箱™模型。
指定可选的逗号分离对名称,价值论点。名称是参数名称和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen。
名称
价值
name1,value1,...,namen,valuen
“未挽救的传动局”,[2 3]
'manipulatedvariables'
操纵可变指数,指定为逗号分隔对'manipulatedvariables'然后是正整数的矢量。最大索引值不得超过输入通道的数量插入植物。使用的指标漫画variables.那测量透视, 和没有索赔的经营不得重叠。
漫画variables.
测量透视
没有索赔的经营
代替'manipulatedvariables',您可以使用缩写'mv'。
'mv'
'legisctiondisturbances'
测量的扰动指数,指定为逗号分隔对'legisctiondisturbances'然后是正整数的矢量。最大索引值不得超过输入通道的数量插入植物。使用的指标漫画variables.那测量透视, 和没有索赔的经营不得重叠。
代替'legisctiondisturbances',您可以使用缩写'MD'。
'MD'
'没有令人润安的传动局'
未测量的扰动指数,指定为逗号分隔对'没有令人润安的传动局'然后是正整数的矢量。最大索引值不得超过输入通道的数量插入植物。使用的指标漫画variables.那测量透视, 和没有索赔的经营不得重叠。
代替'没有令人润安的传动局',您可以使用缩写'ud'。
'ud'
'RoboteOutpuls'
测量输出指标,指定为逗号分隔对'RoboteOutpuls'然后是正整数的矢量。最大索引值不得超过输出通道的数量插入植物。使用的指标测量景点和未测量的outputs.不得重叠。
测量景点
未测量的outputs.
代替'RoboteOutpuls',您可以使用缩写'莫'。
'莫'
'未测量outpuls'
未测量的输出指标,指定为逗号分隔对'未测量outpuls'然后是正整数的矢量。最大索引值不得超过输出通道的数量插入植物。使用的指标测量景点和未测量的outputs.不得重叠。
代替'未测量outpuls',您可以使用缩写'uo'。
'uo'
输出工厂模型,作为线性动态模型返回。外套具有指定的输入和输出通道类型。除此以外,外套与之相同插入植物。
通常,使用植物信号类型使用setmpcsignals.在创建控制器对象之前。
setmpcsignals.
如果修改现有控制器的内部工厂模型的信号类型,则必须确保新的输入/输出通道类型与以下控制器属性一致:
重量
opportVariables.
model.noise.
MPC.|放
MPC.
放
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系您当地的办公室