模型预测控制实例_模型预测控制(一)Simulink模型

本文介绍了模型预测控制(MPC)的基本原理,并通过Simulink详细展示了如何定义系统模型,设计MPC控制器,设置控制器参数,以及考虑输出限制。在仿真部分,观察到了输入和输出量的变化,展示了MPC的有效控制效果。
摘要由CSDN通过智能技术生成

        模型预测控制(MPC)是一类特殊的控制。它的当前控制动作是在每一个采样瞬间通过求解一个有限时域开环最优控制问题而获得。过程的当前状态作为最优控制问题的初始状态,解得的最优控制序列只实施第一个控制作用。这是它与那些使用预先计算控制律的算法的最大不同。本质上模型预测控制求解一个开环最优控制问题。它的思想与具体的模型无关,但是实现则与模型有关。

1、定义系统模型

Define Plant Model

The linear open-loop dynamic model is a double integrator.

plant = tf(1,[1 0 0]);

c39f683ccc7dda6cdc97458b41941d92.png

以上为模型的传递函数

2.设计预测控制器

Design MPC Controller

Create the controller object with sampling period, prediction and control horizons.

Ts = 0.1;
p = 10;
m = 3;
mpcobj = mpc(plant, Ts, p, m);

设定控制器的采样周期,预测范围和控制范围

-->The "Weights.ManipulatedVariables" property of "mpc" object is empty. Assuming default 0.00000.
-->The "Weights.ManipulatedVariablesRate" property of "mpc" object is empty. Assuming default 0.10000.

-->The "Weights.OutputVariables" property of "mpc" object is empty. Assuming default 1.00000.

使用默认设置:输出参量的的权重为1

Specify actuator saturation limits as MV constraints.

mpcobj.MV = struct('Min',-1,'Max',1);

设置输出参量的范围

3.simulink模型

ff57174d117b4b80d2102a41bb69123a.png

4.仿真结果

82444447fa14ef17a6ebcf4c297c72df.png

输入量的变化

a8282a7b63e28dba576718de947269a3.png

输出量的变化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值