How to model sensor noise in differential equation?

57 Views Asked by At

I have the following system of equations which I'm using to model the orientation of a satellite while on orbit and subject to a noisy control system.

$$ \begin{align*} \dot{\pmb{q}}&=f(\pmb{q}, \vec{\omega_s}) \\ \dot{\vec{\omega}}_r&=\left( g(\vec{\omega_s},\vec{\omega_r}) + \vec{M_c}(\pmb{q}, \vec{\eta}_\textrm{sensors}, t) \right)(1+\vec{\eta_r}) \\ \dot{\vec{\omega}}_s&=h(\vec{\omega_s}) +\vec{M_\textrm{app}}(\vec{\omega_s}, \vec{\omega_r}, \dot{\vec{\omega_r}}) \end{align*}$$

In the equations above all the $\eta$ variables are to be understood as white Gaussian noise. I believe the above to be a Random Ordinary Differential Equation and I'm numerically integrating it using the RandomEulerMayurama scheme in DifferentialEquations.jl. When you define your derivatives you are given access to a noise vector that comes from a Wiener process. Here I'm using that noise vector (after rescalings) in the most literal way by just introducing those noise samples where needed. $\vec{M}_c$ and $\vec{M}_\textrm{app}$ are non-linear.

For example, $\vec{M}_c$ depends on the magnetic field of the Earth at each point of the orbit contaminated with Gaussian noise to model sensor noise, i.e. $\vec{B}(t) + \vec{\eta}$, so whenever $\vec{B}(t)$ is used I just contaminate it with the noise provided by the integrator.

Is this the correct way to use and understand the noise samples provided by the integrator? Would another noise process, e.g. Ornstein–Uhlenbeck be more appropriate for the noise samples?

Here is how I compute my derivatives at each time step:

  1. Calculate $\vec{M_c}$
  2. Calculate $\dot{\pmb{q}}$ and $\dot{\vec{\omega}}_r$
  3. Calculate $\vec{M}_\textrm{app}$
  4. Calculate $\dot{\vec{\omega}}_s$
  5. Put together $\dot{\pmb{q}}$, $\dot{\vec{\omega}}_r$ and $\dot{\vec{\omega}}_s$ and pass it to the integrator.

For completeness, in the equations above, $\vec{\omega}_r$ and $\vec{\omega}_s$ are the angular velocities of the reaction wheels and satellite and $\pmb{q}$ is the orientation of the satellite expressed as a quaternion.