# Spoofing Detection Using GNSS/INS/Odometer Coupling for Vehicular Navigation
## 3 RIO Mechanization
The linearized discrete system model is given by:  
\[\mathbf{\delta x}_{k}=\mathbf{\Phi}_{k-1}\mathbf{\delta x}_{k-1}+\mathbf{G}_{k-1}\mathbf{W}_{ k-1} \tag{7}\]  
where \(\mathbf{\delta x}_{k}\) is the \(9\times 1\) error state vector at time epoch \(k\) given by \(\mathbf{\delta x}_{k}=\left\{\delta\phi_{k},\delta\lambda_{k},\delta h_{k},\delta v _{k}^{E},\delta v_{k}^{N},\delta v_{k}^{UI},\delta A_{k},\delta s_{k}^{od}, \delta\omega_{k}^{z}\right\}\). \(\delta\phi_{k},\delta\lambda_{k},\delta h_{k}\) are the position vector components in the geodetic coordinate frame, \(\delta v_{k}^{E},\delta v_{k}^{N},\delta v_{k}^{UI}\) are the velocity vectors in East-North-Up (ENU) coordinate frame, \(\delta A_{k}\) is the azimuth angle, \(\delta S_{k}^{od}\) is the scale factor of odometer, \(\delta\omega_{k}^{z}\) is the vertical gyroscope drift, \(\mathbf{\Phi}_{k-1}\) is the state transition matrix from time epoch \(k-1\) to \(k\), \(\mathbf{G}_{k-1}\) is the shaping matrix or noise coupling matrix and \(\mathbf{W}_{k-1}\) the zero mean unity variance white noise. The linearized discrete system model is given by:  
\[\mathbf{\delta x}_{k}=\left[ \begin{array}{c}\mathbf{\delta p}_{k}\\ \mathbf{\delta v}_{k}\\ \mathbf{\delta e}_{k}\end{array} \right]=\left[ \begin{array}{ccc}\mathbf{I}_{3 \times 3}&\mathbf{F}_{1}&\mathbf{0}_{3\times 3}\\ \mathbf{0}_{3\times 3}&\mathbf{I}_{3\times 3}&\mathbf{F}_{2}\\ \mathbf{0}_{3\times 3}&\mathbf{0}_{3\times 3}&\mathbf{F}_{3}\end{array} \right]\left[ \begin{array}{c}\mathbf{\delta p}_{k-1}\\ \mathbf{\delta v}_{k-1}\\ \mathbf{\delta e}_{k-1}\end{array} \right]+\left[ \begin{array}{c}\mathbf{0}_{3\times 1 }\\ \mathbf{0}_{3\times 1}\\ \mathbf{\delta\sigma}_{k}\end{array} \right] \tag{8}\]  
where:  
\[\mathbf{\delta p}_{k}=\left[ \begin{array}{c}\delta\phi_{k}\\ \delta\lambda_{k}\\ \delta h_{k}\end{array} \right],\mathbf{\delta r}_{k}=\left[ \begin{array}{c}\delta \
u_{k}^{E}\\ \delta\
u_{k}^{N}\\ \delta\
u_{k}^{U}\end{array} \right],\mathbf{\delta e}_{k}=\left[ \begin{array}{c} \delta A_{k}\\ \delta\delta_{k}^{od}\\ \delta\omega_{k}^{z}\end{array} \right],\mathbf{\delta\sigma}_{k}=\left[ \begin{array} []{c}0\\ \sqrt{2\gamma_{od}\sigma_{od}^{2}\Delta t}\\ \sqrt{2\gamma_{av}\sigma_{oz}^{2}\Delta t}\end{array} \right],\]  
\[\mathbf{F}_{1}=\left[ \begin{array}{ccc}0&\frac{\Delta t}{R_{m}+h_{k-1}}&0 \\ \frac{\Delta t}{(R_{n}+h_{k-1})\cos(\varphi_{k-1})}&0&0\\ 0&0&\Delta t\end{array} \right]\]\[\mathbf{F}_{2}=\left[ \begin{array}{ccc}v_{od}\cos(A_{k-1})\cos(p_{k-1})\Delta t&v _{od}\sin(A_{k-1})\cos(p_{k-1})\Delta t&0\\ v_{od}\sin(A_{k-1})\cos(p_{k-1})\Delta t&v_{od}\cos(A_{k-1})\cos(p_{k-1})\Delta t &0\\ 0&v_{od}\sin(p_{k-1})\Delta t&0\end{array} \right]\]  
\[\mathbf{F}_{3}=\left[ \begin{array}{ccc}1&0&-\Delta t\\ 1&1-\gamma_{od}\Delta t&0\\ 0&0&1-\gamma_{oz}\Delta t\end{array} \right]\]  
where \(\gamma_{od}\) and \(\gamma_{oz}\) are the inverse of autocorrelation time for odometer and gyroscope stochastic errors, \(\sigma_{od}^{2}\) and \(\sigma_{oz}^{2}\) are the variance of odometer and gyroscope noise [26]. The linearized discrete measurement model is given by:  
\[\mathbf{\delta z}_{k}=\mathbf{H}\mathbf{\delta x}_{k}+\mathbf{\epsilon}_{k} \tag{9}\]  
where \(\mathbf{\delta z}_{k}\) is the measurement vector given by:  
\[\mathbf{\delta z}_{k}=\left[ \begin{array}{c}\mathbf{\phi}_{k}^{GPS}-\mathbf{ \phi}_{k}^{RIO}\\ \lambda_{k}^{GPS}-\lambda_{k}^{RIO}\\ h_{k}^{GPS}-h_{k}^{RIO}\\ v_{k}^{R,GPS}-v_{k}^{R,RIO}\\ v_{k}^{R,GPS}-v_{k}^{R,RIO}\\ v_{k}^{R,GPS}-v_{k}^{R,RIO}\end{array} \right] \tag{10}\]  
\(\mathbf{H}\) is the design matrix and \(\mathbf{\epsilon}_{k}\) represents measurement noise. The design matrix is given by:  
\[\mathbf{H}=\left[ \begin{array}{cccccccc}1&0&0&0&0&0&0&0\\ 0&1&0&0&0&0&0&0\\ 0&0&1&0&0&0&0&0\\ 0&0&0&1&0&0&0&0\\ 0&0&0&0&1&0&0&0\\ 0&0&0&0&1&0&0&0\\ 0&0&0&0&1&0&0&0\end{array} \right] \tag{11}\]