@@ -92,11 +92,12 @@ The arguments are in standard deviations σ, i.e. same units than outputs and st
92
92
matrices ``\m athbf{Â, B̂_u, B̂_d, Ĉ, D̂_d}`` are `model` matrices augmented with the stochastic
93
93
model, which is specified by the numbers of integrator `nint_u` and `nint_ym` (see Extended
94
94
Help). Likewise, the covariance matrices are augmented with ``\m athbf{Q̂ = \t ext{diag}(Q,
95
- Q_{int_u}, Q_{int_{ym}})}`` and ``\m athbf{R̂ = R}``. The matrices ``\m athbf{Ĉ^m, D̂_d^m}`` are
96
- the rows of ``\m athbf{Ĉ, D̂_d}`` that correspond to measured outputs ``\m athbf{y^m}`` (and
97
- unmeasured ones, for ``\m athbf{Ĉ^u, D̂_d^u}``). The Kalman filter will estimate the current
98
- state with the newest measurements ``\m athbf{x̂}_k(k)`` if `direct == true`, else it will
99
- predict the state of the next time step ``\m athbf{x̂}_k(k+1)``.
95
+ Q_{int_u}, Q_{int_{ym}})}`` and ``\m athbf{R̂ = R}``. The Extended Help provide some guidelines
96
+ on the covariance tuning. The matrices ``\m athbf{Ĉ^m, D̂_d^m}`` are the rows of
97
+ ``\m athbf{Ĉ, D̂_d}`` that correspond to measured outputs ``\m athbf{y^m}`` (and unmeasured
98
+ ones, for ``\m athbf{Ĉ^u, D̂_d^u}``). The Kalman filter will estimate the current state with
99
+ the newest measurements ``\m athbf{x̂}_k(k)`` if `direct` is `true`, else it will predict the
100
+ state of the next time step ``\m athbf{x̂}_k(k+1)``.
100
101
101
102
# Arguments
102
103
!!! info
@@ -135,6 +136,11 @@ SteadyKalmanFilter estimator with a sample time Ts = 0.5 s, LinModel and:
135
136
136
137
# Extended Help
137
138
!!! details "Extended Help"
139
+ The `σR` argument is generally fixed at the estimated standard deviations of the sensor
140
+ noises. The `σQ`, `σQint_u` and `σQint_ym` arguments can be used to tune the filter
141
+ response. Increasing them make the filter more responsive to disturbances but more
142
+ sensitive to measurement noise.
143
+
138
144
The model augmentation with `nint_u` vector adds integrators at model manipulated inputs,
139
145
and `nint_ym`, at measured outputs. They create the integral action when the estimator
140
146
is used in a controller as state feedback. By default, the method [`default_nint`](@ref)
@@ -628,11 +634,12 @@ UnscentedKalmanFilter estimator with a sample time Ts = 10.0 s, NonLinModel and:
628
634
629
635
# Extended Help
630
636
!!! details "Extended Help"
631
- The Extended Help of [`SteadyKalmanFilter`](@ref) details the augmentation with `nint_ym`
632
- and `nint_u` arguments. The default augmentation scheme is identical, that is `nint_u=0`
633
- and `nint_ym` computed by [`default_nint`](@ref). Note that the constructor does not
634
- validate the observability of the resulting augmented [`NonLinModel`](@ref). In such
635
- cases, it is the user's responsibility to ensure that it is still observable.
637
+ The Extended Help of [`SteadyKalmanFilter`](@ref) details the tuning of the covariances
638
+ and the augmentation with `nint_ym` and `nint_u` arguments. The default augmentation
639
+ scheme is identical, that is `nint_u=0` and `nint_ym` computed by [`default_nint`](@ref).
640
+ Note that the constructor does not validate the observability of the resulting augmented
641
+ [`NonLinModel`](@ref). In such cases, it is the user's responsibility to ensure that it
642
+ is still observable.
636
643
"""
637
644
function UnscentedKalmanFilter (
638
645
model:: SM ;
0 commit comments