在线评估算法估计在物理系统操作期间新数据可用时模型的参数和状态。系统识别工具箱™软件使用线性,扩展和Unscented Kalman滤波器,或用于在线状态估计的粒子滤波器算法。工具箱使用递归预测误差最小化算法进行在线参数估计。
考虑一个加热和冷却系统,它没有关于其运行环境的预先信息。假设这个系统必须在给定的时间内加热或冷却房间以达到一定的温度。为了实现它的目标,系统必须获得房间的温度和隔热特性的知识。当系统运行时,你可以估计房间的绝缘特性在线的(操作)。对于此估计,使用系统努力作为输入和室温作为输出。您可以使用估计的模型来提高系统行为。在线估计是在已知操作点处估计系统参数值中的小偏差的理想选择。
网上评估的常见应用包括:
自适应控制 - 估算工厂模型,以根据工厂模型的变化修改控制器。
故障检测-将在线设备模型与理想化或参考设备模型进行比较,以检测设备中的故障(异常)。
软测量-生成一个“测量”的基础上估计的工厂模型,并使用这个测量反馈控制或故障检测。
在开始离线估计之前验证实验 - 数据质量 - 在使用脱机估计的测量数据之前,请执行几个迭代的在线估计。在线估计提供了快速检查实验是否使用捕获相关系统动态的励磁信号。
在线参数估计通常使用递归算法。为了估计一个时间步长的参数值,递归算法使用当前的测量值和以前的参数估计值。因此,递归算法在内存使用方面是有效的。而且,递归算法的计算需求更小。这种效率使它们适合于在线和嵌入式应用程序。有关算法的更多信息,请参见用于在线参数估计的递归算法.
在系统识别工具箱中,可以在Simulink中进行在线参数估计金宝app®或在命令行:
在Si金宝appmulink中,使用递归最小二乘估计和递归多项式模型估计器块进行在线参数估计。您还可以通过使用这些模型在线估计状态空间模型递归多项式模型估计器和模型类型转换器块在一起。您可以为这些块生成C/ c++代码和结构化文本金宝appSimulink Coder™和金宝app仿真软件PLC编码器™软件
在命令行,使用recursiveAR
,ReacursiveARMA
,recursiveARX
,recursiveARMAX
,recursiveOE
,recursiveBJ
, 和recursiveLS
用于估计模型结构的模型参数的命令。与Simulink中的估计不同,您可以在在金宝app线估计期间更改递归估计算法的属性。您可以使用MATLAB®编码器和Matlab Compiler™软件
当您在Simulink或命令行中执行在线参数估计时,请应用以下要求:金宝app
模型必须是离散时间线性或近似线性,且参数随时间缓慢变化。
估计模型的结构必须在估计过程中确定。
iddata.
在线参数估计期间不支持对象。金宝app将估计输出数据指定为真正的标量和作为实际标量或向量的输入数据。
你可以在命令行和Simulink中对系统进行在线状态估计:金宝app
在Si金宝appmulink中,使用卡尔曼滤波器,扩展卡尔曼筛选器,无味卡尔曼滤波要么粒子过滤器块执行在线状态估计离散时间线性和非线性系统。可以使用以下方法为这些块生成C/ c++代码金宝app仿真软件编码器软件为了卡尔曼滤波器块,您还可以使用结构化文本使用金宝app仿真软件PLC编码器软件
在命令行,使用extendedKalmanFilter
,unscentedKalmanFilter
和particleFilter
用于估计离散时间非线性系统状态的命令。这些命令实现离散时间扩展卡尔曼滤波(EKF)、无迹卡尔曼滤波(UKF)和粒子滤波算法。有关算法的更多信息,请参见扩展和Unstented Kalman滤波器算法用于在线状态估计.您可以使用MATLAB编码器和MATLAB编译器软件
在Simulink或命令行执行在线状态估计时,需要以下要求:金宝app
系统必须是离散时间的。如果您使用的是卡尔曼滤波器块,系统也可以是连续时间。
iddata.
对象在在线状态估计期间不受支金宝app持。将估计输入输出数据指定为实标量或向量。
[1] Ljung,L.系统识别:用户的理论.上部鞍河,NJ:Prentice-Hall Ptr,1999,PP。428-440。
[2]西蒙,D。最优状态估计:卡尔曼、H∞和非线性方法.2006年John Wiley和Sons Inc.
extendedKalmanFilter
|particleFilter
|recursiveAR
|ReacursiveARMA
|recursiveARMAX
|recursiveARX
|recursiveBJ
|recursiveLS
|recursiveOE
|unscentedKalmanFilter