建立用于在线状态估计的扩展卡尔曼滤波对象
建立了用于离散非线性系统在线状态估计的扩展卡尔曼滤波对象。obj
= ExtendedKalmanFilter(StateTransitionFCN.
那MeasurementFcn
那InitialState
)StateTransitionFCN.
是一个计算系统的状态的函数K.,给定状态向量时K.1。MeasurementFcn
是一种函数,可以在时间计算系统的输出测量K.,鉴于当时的国家K..InitialState
指定状态估计的初始值。
使用一个或多个指定扩展Kalman筛选对象的其他属性obj
= ExtendedKalmanFilter(StateTransitionFCN.
那MeasurementFcn
那InitialState
那名称,值
)名称,值
对论点。
使用指定的状态转换和测量功能创建扩展的Kalman筛选对象。在使用之前obj
= ExtendedKalmanFilter(StateTransitionFCN.
那MeasurementFcn
)预测
和正确的
命令,使用点符号指定初始状态值。例如,对于具有初始状态值的双态系统[1; 0]
, 指定obj.state = [1; 0]
.
使用一个或多个指定扩展Kalman筛选对象的其他属性obj
= ExtendedKalmanFilter(StateTransitionFCN.
那MeasurementFcn
那名称,值
)名称,值
对论点。在使用之前预测
和正确的
命令,使用初始状态值使用名称,值
对参数或点表示法。
ExtendedKalmanFilter.
使用一阶离散时间扩展卡尔曼滤波器算法创建用于离散时间非线性系统的在线状态估计的对象。
考虑一个州的植物X、输入你、输出y,过程噪声W.和测量噪声V..假设你可以将植物表示为一个非线性系统。
该算法计算状态估计值 使用状态转换和您指定的测量函数的非线性系统。该软件可允许您将这些功能中的噪声指定为附加或非资金:
添加剂噪声术语- 状态转换和测量方程具有以下形式:
这里F是描述状态演化的非线性状态转移函数吗X
从一次到下一个时间。非线性测量功能H有关X
的测量y
在时间步骤K.
.W.
和V.
是零平均,不相关的过程和测量噪声。这些函数还可以具有所用的其他输入参数你S.
和你m
在方程式中。例如,附加参数可能是时间步骤K.
或输入你
对于非线性系统。可以有多个这样的参数。
注意,两个方程中的噪声项都是加性的。也就是说,x(k)
是否与过程噪声线性相关w(k-1)
, 和y(k)
与测量噪声线性相关v (k)
.
非相加噪音方面- 该软件还支持状态的更复杂的状态转换和金宝app测量功能X[K.)和测量y[K.]分别为过程噪声和测量噪声的非线性函数。当噪声项为非加性时,状态跃迁和测量方程为:
执行在线状态估计时,首先创建非线性状态转换功能F和测量功能H.然后构建ExtendedKalmanFilter.
对象使用这些非线性函数,并指定噪声术语是否是附加的或非一种不起作用。您还可以指定状态转换和测量功能的jacobians。如果未指定它们,则软件数值计算雅可比人。
创建对象后,使用预测
命令在下次步骤中预测状态估算正确的
利用算法和实时数据对状态估计进行修正。有关算法的信息,请参见扩展和Unstented Kalman滤波器算法用于在线状态估计.
您可以使用以下命令ExtendedKalmanFilter.
对象:
命令 | 描述 |
---|---|
正确的 |
修正状态和状态估计误差在时间步长的协方差K.在时间步骤中使用测量数据K.. |
预测 |
下次步骤预测状态和状态估计错误协方差。 |
剩余的 |
返回实际和预测测量之间的差异。 |
克隆 |
使用相同的对象属性值创建另一个对象。 不要使用语法创建其他对象 |
为ExtendedKalmanFilter.
对象属性,见属性.