与传统的线性MPC一样,非线性MPC使用基于模型的预测和约束优化的组合来计算每个控制间隔的控制动作。关键差异是:
预测模型可以是非线性的并且包括时变参数
平等和不等式约束可以是非线性的
要最小化的标量代价函数可以是决策变量的非二次(线性或非线性)函数。
默认情况下,非线性MPC控制器解决非线性规划问题使用fmincon
函数,它需要最优化工具箱™软件。如果您没有最优化工具箱软件,您可以指定您自己的自定义非线性求解器。
有关更多信息,请参阅非线性MPC.
nlmpc |
非线性模型预测控制器 |
nlmpcmultistage |
多级非线性模型预测控制器 |
nlmpcmove |
计算非线性MPC控制器的最优控制动作 |
nlmpcmoveopt |
选项设置为nlmpcmove 功能 |
getSimulationData |
创建数据结构以模拟多级MPC控制器nlmpcmove |
validateFcns |
检查预测模型和自定义功能nlmpc 或者nlmpcmultistage 潜在问题的对象 |
ConvertTompc. |
转换nlmpc 对象进入一个或多个货币政策委员会 对象 |
createParameterBus |
创建金宝app总线对象和配置总线创建者块传递模型参数到非线性MPC控制器块 |
非线性MPC控制器 | 模拟非线性模型预测控制器 |
多级非线性MPC控制器 | 模拟多级非线性模型预测控制器 |
非线性模型预测控制器使用非线性预测模型、成本函数或约束来控制设备。
为定义非线性MPC控制器的预测模型,指定状态和输出函数。
非线性MPC控制器支持一般的成本函数,例如系统状态、金宝app输入和输出的线性或非线性函数的组合。
除了标准线性MPC约束之外,您还可以为您的非线性MPC控制器指定自定义线性和非线性约束。
默认情况下,非线性MPC控制器使用的是使用它们的控制移动fmincon
函数。您还可以指定您自己的自定义非线性求解器。
可以使用非线性MPC进行最优轨迹规划和闭环控制应用。
规划最佳火箭兰德轨迹,采用多级非线性MPC进行着陆过程的闭环控制。
控制非线性设备在工作点之间的转换。
利用非线性模型预测控制器实现小车倒立摆的摆起和平衡控制。
您可以从非线性MPC控制器生成一个或多个线性MPC控制器,并将这些控制器用于增益计划控制应用。
模拟非线性MPC控制器作为自适应和时变MPC控制器,并比较性能。
您可以使用非线性MPC控制器进行最优规划应用,这些应用需要具有非线性成本或约束的非线性模型。
使用KINOVA Gen3机械手生成代码来规划和执行无碰撞轨迹
利用非线性MPC来规划和执行机器人的轨迹。