使用非线性 ARX 模型
在确定了一个非线性 ARX 模型后,您可以将该模型用于以下任务:
仿真与预测 - 在命令行中,使用
sim和predict来仿真和预测模型输出。要将模型与测量结果以及彼此之间进行比较,请使用compare。有关在 App 中绘制仿真和预测输出的信息,请参阅Simulation and Prediction in the App。您还可以指定仿真和预测的初始条件。该工具箱提供了多种选项,以便您更轻松地指定初始状态。例如,您可以使用findstates和data2state,根据使拟合测量输出达到最大化的要求,或根据运行条件来计算状态值。有关非线性 ARX 模型状态的定义,请参阅idnlarx参考页面。要进一步了解sim和predict如何计算模型输出,请参阅How the Software Computes Nonlinear ARX Model Output。您还可以使用
forecast命令来预测动态系统的响应。该命令利用过去的输出测量值来预测系统的未来输出。有关详细信息,请参阅Forecasting Response of Nonlinear ARX Models。线性化 - 使用
idnlarx/linearize或linapp计算非线性 ARX 模型的线性逼近。linearize命令提供系统在某个工作点附近的一阶泰勒级数逼近。linapp根据给定的输入数据,计算非线性模型的线性逼近。有关详细信息,请参阅Linear Approximation of Nonlinear Black-Box Models。您可以使用idnlarx/findop计算线性化的工作点。计算出非线性模型的线性逼近后,您可以使用 Control System Toolbox™ 命令对模型进行线性分析和控制设计。有关详细信息,请参阅Using Identified Models for Control Design Applications和Create and Plot Identified Models Using Control System Toolbox Software。
使用 Simulink® 进行仿真和代码生成 - 您可以使用来自 System Identification Toolbox 模块库中的“非线性 ARX”模块 (Nonlinear ARX Model),将估计出的非线性 ARX 模型导入 Simulink 软件中。使用此模块将工作区中的
idnlarx对象导入到 Simulink 中,以仿真模型输出。IDNLARX Model 模块支持使用 Simulink Coder™ 软件进行代码生成,既适用于通用目标,也适用于嵌入式目标。当模型包含
idCustomNetwork或idFeedforwardNetwork非线性估计器,或自定义回归变量时,代码生成将无法正常工作。有关详细信息,请参阅Simulate Identified Model in Simulink。