Finish reworking section 2

This commit is contained in:
Thomas Dehaeze 2021-05-19 11:47:09 +02:00
parent 1b0883024f
commit afcd720965
3 changed files with 103 additions and 98 deletions

View File

@ -253,7 +253,7 @@ The framework for the design of complementary filters is detailed in Section [[*
This is followed by the application of the design method to complementary filter design for the active vibration isolation at LIGO in Section [[*Application: Complementary Filter Design for Active Vibration Isolation of LIGO][4]]. This is followed by the application of the design method to complementary filter design for the active vibration isolation at LIGO in Section [[*Application: Complementary Filter Design for Active Vibration Isolation of LIGO][4]].
Finally, concluding remarks are presented in Section [[*Concluding remarks][5]]. Finally, concluding remarks are presented in Section [[*Concluding remarks][5]].
* Complementary Filters Requirements * Sensor Fusion and Complementary Filters Requirements
<<sec:requirements>> <<sec:requirements>>
** Introduction :ignore: ** Introduction :ignore:
@ -264,16 +264,20 @@ These requirements are discussed in this section.
** Sensor Fusion Architecture ** Sensor Fusion Architecture
<<sec:sensor_fusion>> <<sec:sensor_fusion>>
A general sensor fusion architecture is shown in Figure ref:fig:sensor_fusion_overview where several sensors (here two) are measuring the same physical quantity $x$. A general sensor fusion architecture using complementary filters is shown in Figure ref:fig:sensor_fusion_overview where several sensors (here two) are measuring the same physical quantity $x$.
The two sensors output signals are estimates $\hat{x}_1$ and $\hat{x}_2$ of $x$. The two sensors output signals are estimates $\hat{x}_1$ and $\hat{x}_2$ of $x$.
Each of these estimates are then filtered out by complementary filters and combined to form a new estimate $\hat{x}$. Each of these estimates are then filtered out by complementary filters and combined to form a new estimate $\hat{x}$.
We further call the overall system from $x$ to $\hat{x}$ the "super sensor".
The resulting sensor, termed as "super sensor", can have larger bandwidth and better noise characteristics in comparison to the individual sensor.
This means that the super sensor provides an estimate $\hat{x}$ of $x$ which can be more accurate over a larger frequency band than the outputs of the individual sensors.
#+name: fig:sensor_fusion_overview #+name: fig:sensor_fusion_overview
#+caption: Schematic of a sensor fusion architecture #+caption: Schematic of a sensor fusion architecture
[[file:figs/sensor_fusion_overview.pdf]] [[file:figs/sensor_fusion_overview.pdf]]
The filters $H_1(s)$ and $H_2(s)$ are complementary which implies that: The complementary property of filters $H_1(s)$ and $H_2(s)$ implies that the summation of their transfer functions is equal to unity.
That is, unity magnitude and zero phase at all frequencies.
Therefore, a pair of strict complementary filter needs to satisfy the following condition:
#+name: eq:comp_filter #+name: eq:comp_filter
\begin{equation} \begin{equation}
H_1(s) + H_2(s) = 1 H_1(s) + H_2(s) = 1
@ -284,15 +288,15 @@ It will soon become clear why the complementary property is important.
** Sensor Models and Sensor Normalization ** Sensor Models and Sensor Normalization
<<sec:sensor_models>> <<sec:sensor_models>>
In order to study such sensor fusion architecture, a model of the sensor is required. In order to study such sensor fusion architecture, a model of the sensors is required.
The sensor model is shown in Figure ref:fig:sensor_model. Such model is shown in Figure ref:fig:sensor_model and consists of a linear time invariant (LTI) system $G_i(s)$ representing the dynamics of the sensor and an additive noise input $n_i$ representing its noise.
It consists of a Linear Time Invariant system (LTI) $G_i(s)$ representing the dynamics of the sensor and an additive noise input $n_i$ representing its noise. The model input $x$ is the measured physical quantity and its output $\tilde{x}_i$ is the "raw" output of the sensor.
The model input $x$ is the measured quantity and its output $\tilde{x}_i$ is the "raw" output of the sensor.
Before filtering the sensor outputs $\tilde{x}_i$ by the complementary filters, the sensors are usually normalized. Before filtering the sensor outputs $\tilde{x}_i$ by the complementary filters, the sensors are usually normalized to simplify the fusion.
This normalization consists of obtaining an estimate $\hat{G}_i(s)$ of the sensor dynamics $G_i(s)$. This normalization consists of first obtaining an estimate $\hat{G}_i(s)$ of the sensor dynamics $G_i(s)$.
The raw output of the sensor $\tilde{x}_i$ is then passed through the inverse of the sensor dynamics estimate as shown in Figure ref:fig:sensor_model_calibrated. It is supposed that the estimate of the sensor dynamics $\hat{G}_i(s)$ can be inverted and that its inverse $\hat{G}_i^{-1}(s)$ is proper and stable.
The raw output of the sensor $\tilde{x}_i$ is then passed through $\hat{G}_i^{-1}(s)$ as shown in Figure ref:fig:sensor_model_calibrated.
This way, the units of the estimates $\hat{x}_i$ are equal to the units of the physical quantity $x$. This way, the units of the estimates $\hat{x}_i$ are equal to the units of the physical quantity $x$.
The sensor dynamics estimate $\hat{G}_1(s)$ can be a simple gain or more complex transfer functions. The sensor dynamics estimate $\hat{G}_1(s)$ can be a simple gain or more complex transfer functions.
@ -314,16 +318,15 @@ The sensor dynamics estimate $\hat{G}_1(s)$ can be a simple gain or more complex
\end{figure} \end{figure}
#+end_export #+end_export
Let's now combine the two calibrated sensors models (Figure ref:fig:sensor_model_calibrated) with the sensor fusion architecture of figure ref:fig:sensor_fusion_overview. Two calibrated sensors and then combined to form a super sensor as shown in Figure ref:fig:fusion_super_sensor.
The result is shown in Figure ref:fig:fusion_super_sensor.
The two sensors are measuring the same physical quantity $x$ with dynamics $G_1(s)$ and $G_2(s)$, and with /uncorrelated/ noises $n_1$ and $n_2$. The two sensors are measuring the same physical quantity $x$ with dynamics $G_1(s)$ and $G_2(s)$, and with /uncorrelated/ noises $n_1$ and $n_2$.
The signals from both calibrated sensors are fed into two complementary filters $H_1(s)$ and $H_2(s)$ and then combined to yield an estimate $\hat{x}$ of $x$ as shown in Fig. ref:fig:fusion_super_sensor. The normalized signals from both calibrated sensors are fed into two complementary filters $H_1(s)$ and $H_2(s)$ and then combined to yield an estimate $\hat{x}$ of $x$ as shown in Fig. ref:fig:fusion_super_sensor.
The super sensor output is therefore equal to: The super sensor output is therefore equal to:
#+name: eq:comp_filter_estimate #+name: eq:comp_filter_estimate
\begin{equation} \begin{equation}
\hat{x} = \Big( H_1(s) \hat{G}_1(s) G_1(s) + H_2(s) \hat{G}_2(s) G_2(s) \Big) x + H_1(s) \hat{G}_1(s) G_1(s) n_1 + H_2(s) \hat{G}_2(s) G_2(s) n_2 \hat{x} = \Big( H_1(s) \hat{G}_1^{-1}(s) G_1(s) + H_2(s) \hat{G}_2^{-1}(s) G_2(s) \Big) x + H_1(s) \hat{G}_1^{-1}(s) G_1(s) n_1 + H_2(s) \hat{G}_2^{-1}(s) G_2(s) n_2
\end{equation} \end{equation}
#+name: fig:fusion_super_sensor #+name: fig:fusion_super_sensor
@ -334,13 +337,13 @@ The super sensor output is therefore equal to:
** Noise Sensor Filtering ** Noise Sensor Filtering
<<sec:noise_filtering>> <<sec:noise_filtering>>
In this section, it is suppose that all the sensors are correctly calibrated, such that: In this section, it is supposed that all the sensors are perfectly calibrated, such that:
#+name: eq:perfect_dynamics #+name: eq:perfect_dynamics
\begin{equation} \begin{equation}
\frac{\hat{x}_i}{x} = \hat{G}_i(s) G_i(s) \approx 1 \frac{\hat{x}_i}{x} = \hat{G}_i(s) G_i(s) = 1
\end{equation} \end{equation}
The effect of a non-ideal normalization will be discussed in the next section. The effect of a non-perfect normalization will be discussed in the next section.
The super sensor output $\hat{x}$ is then: The super sensor output $\hat{x}$ is then:
#+name: eq:estimate_perfect_dyn #+name: eq:estimate_perfect_dyn
@ -348,11 +351,10 @@ The super sensor output $\hat{x}$ is then:
\hat{x} = x + H_1(s) n_1 + H_2(s) n_2 \hat{x} = x + H_1(s) n_1 + H_2(s) n_2
\end{equation} \end{equation}
From eqref:eq:estimate_perfect_dyn, the complementary filters $H_1(s)$ and $H_2(s)$ are shown to only operate on the sensor's noises. From eqref:eq:estimate_perfect_dyn, the complementary filters $H_1(s)$ and $H_2(s)$ are shown to only operate on the sensor's noises.
Thus, this sensor fusion architecture permits to filter the noise of both sensors without introducing any distortion in the physical quantity to be measured. Thus, this sensor fusion architecture permits to filter the noise of both sensors without introducing any distortion in the physical quantity to be measured.
Let's define the estimation error $\delta x$ by eqref:eq:estimate_error. The estimation error $\delta x$, defined as the difference between the sensor output $\hat{x}$ and the measured quantity $x$, is computed for the super sensor eqref:eq:estimate_error.
#+name: eq:estimate_error #+name: eq:estimate_error
\begin{equation} \begin{equation}
\delta x \triangleq \hat{x} - x = H_1(s) n_1 + H_2(s) n_2 \delta x \triangleq \hat{x} - x = H_1(s) n_1 + H_2(s) n_2
@ -364,18 +366,21 @@ As shown in eqref:eq:noise_filtering_psd, the Power Spectral Density (PSD) of th
\Phi_{\delta x}(\omega) = \left|H_1(j\omega)\right|^2 \Phi_{n_1}(\omega) + \left|H_2(j\omega)\right|^2 \Phi_{n_2}(\omega) \Phi_{\delta x}(\omega) = \left|H_1(j\omega)\right|^2 \Phi_{n_1}(\omega) + \left|H_2(j\omega)\right|^2 \Phi_{n_2}(\omega)
\end{equation} \end{equation}
# TODO - Rework, tell that we can put requirements on the *norm* of the complementary filters If the two sensors have identical noise characteristics ($\Phi_{n_1}(\omega) = \Phi_{n_2}(\omega)$), a simple averaging ($H_1(s) = H_2(s) = 0.5$) is what would minimize the super sensor noise.
Usually, the two sensors have high noise levels over distinct frequency regions. This the simplest form of sensor fusion with complementary filters.
In order to lower the noise of the super sensor, the value of the norm $|H_1|$ has to be lowered when $\Phi_{n_1}$ is larger than $\Phi_{n_2}$ and that of $|H_2|$ lowered when $\Phi_{n_2}$ is larger than $\Phi_{n_1}$.
** Robustness of the Fusion However, the two sensors have usually high noise levels over distinct frequency regions.
In such case, to lower the noise of the super sensor, the value of the norm $|H_1|$ has to be lowered when $\Phi_{n_1}$ is larger than $\Phi_{n_2}$ and that of $|H_2|$ lowered when $\Phi_{n_2}$ is larger than $\Phi_{n_1}$.
Therefore, by properly shaping the norm of the complementary filters, it is possible to minimize the noise of the super sensor noise.
** Sensor Fusion Robustness
<<sec:fusion_robustness>> <<sec:fusion_robustness>>
In practical systems the sensor normalization is not perfect and eqref:eq:perfect_dynamics is not verified. In practical systems the sensor normalization is not perfect and condition eqref:eq:perfect_dynamics is not verified.
In order to study such imperfection, the sensor dynamical uncertainty is modeled using multiplicative input uncertainty (Figure ref:fig:sensor_model_uncertainty), where the nominal model is taken as the estimated model for the normalization $\hat{G}_i(s)$, $\Delta_i$ is any stable transfer function satisfying $|\Delta_i(j\omega)| \le 1,\ \forall\omega$, and $w_i(s)$ is a weight representing the magnitude of the uncertainty. In order to study such imperfection, a multiplicative input uncertainty is added to the sensor dynamics (Figure ref:fig:sensor_model_uncertainty), where the nominal model is taken as the estimated model for the normalization $\hat{G}_i(s)$, $\Delta_i$ is any stable transfer function satisfying $|\Delta_i(j\omega)| \le 1,\ \forall\omega$, and $w_i(s)$ is a weight representing the magnitude of the uncertainty.
# The weight $w_i(s)$ is chosen such that the real sensor dynamics is contained in the uncertain region represented by... The weight $w_i(s)$ is chosen such that the real sensor dynamics is always contained in the uncertain region represented by a circle centered on $1$ and with a radius equal to $|w_i(j\omega)|$.
As the nominal sensor dynamics is taken as the normalized filter, the normalized sensor can be further simplified as shown in Figure ref:fig:sensor_model_uncertainty_simplified. As the nominal sensor dynamics is taken as the normalized filter, the normalized sensor can be further simplified as shown in Figure ref:fig:sensor_model_uncertainty_simplified.
@ -410,26 +415,22 @@ The super sensor dynamics eqref:eq:super_sensor_dyn_uncertainty is no longer equ
\frac{\hat{x}}{x} = 1 + w_1(s) H_1(s) \Delta_1(s) + w_2(s) H_2(s) \Delta_2(s) \frac{\hat{x}}{x} = 1 + w_1(s) H_1(s) \Delta_1(s) + w_2(s) H_2(s) \Delta_2(s)
\end{equation} \end{equation}
The uncertainty region of the super sensor can be represented in the complex plane by a circle centered on $1$ with a radius equal to $|w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)|$ as shown in Figure ref:fig:uncertainty_set_super_sensor. The dynamical uncertainty of the super sensor can be graphically represented in the complex plane by a circle centered on $1$ with a radius equal to $|w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)|$ as shown in Figure ref:fig:uncertainty_set_super_sensor.
#+name: fig:uncertainty_set_super_sensor #+name: fig:uncertainty_set_super_sensor
#+caption: Uncertainty region of the super sensor dynamics in the complex plane (solid circle). The contribution of both sensors 1 and 2 to the uncertainty are represented respectively by a blue circle and a red circle #+caption: Uncertainty region of the super sensor dynamics in the complex plane (solid circle). The contribution of both sensors 1 and 2 to the uncertainty are represented respectively by a blue circle and a red circle. The frequency dependency $\omega$ is here omitted.
[[file:figs/uncertainty_set_super_sensor.pdf]] [[file:figs/uncertainty_set_super_sensor.pdf]]
The maximum phase added $\Delta\phi(\omega)$ by the super sensor dynamics at frequency $\omega$ is then The super sensor dynamical uncertainty (i.e. the robustness of the fusion) clearly depends on the complementary filters norms.
For instance, the phase uncertainty $\Delta\phi(\omega)$ added by the super sensor dynamics at frequency $\omega$ can be found by drawing a tangent from the origin to the uncertainty circle of super sensor (Figure ref:fig:uncertainty_set_super_sensor) and is bounded by eqref:eq:max_phase_uncertainty.
#+name: eq:max_phase_uncertainty #+name: eq:max_phase_uncertainty
\begin{equation} \begin{equation}
\Delta\phi(\omega) = \arcsin\big( |w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)| \big) \Delta\phi(\omega) < \arcsin\big( |w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)| \big)
\end{equation} \end{equation}
As it is generally desired to limit the maximum phase added by the super sensor, $H_1(s)$ and $H_2(s)$ should be designed such that eqref:eq:max_uncertainty_super_sensor is satisfied. As it is generally desired to limit the maximum phase added by the super sensor, $H_1(s)$ and $H_2(s)$ should be designed such that $\Delta \phi$ is bounded to acceptable values.
#+name: eq:max_uncertainty_super_sensor Typically, the norm of the complementary filter $|H_i(j\omega)|$ should be made small when $|w_i(j\omega)|$ is large, i.e., at frequencies where the sensor dynamics is uncertain.
\begin{equation}
\max_\omega \big( \left|w_1 H_1\right| + \left|w_2 H_2\right|\big) < \sin\left( \Delta \phi_\text{max} \right)
\end{equation}
where $\Delta \phi_\text{max}$ is the maximum allowed added phase.
Thus the norm of the complementary filter $|H_i|$ should be made small at frequencies where $|w_i|$ is large.
* Complementary Filters Shaping using $\mathcal{H}_\infty$ Synthesis * Complementary Filters Shaping using $\mathcal{H}_\infty$ Synthesis
<<sec:hinf_method>> <<sec:hinf_method>>

Binary file not shown.

View File

@ -1,4 +1,4 @@
% Created 2021-05-03 lun. 17:46 % Created 2021-05-19 mer. 11:46
% Intended LaTeX compiler: pdflatex % Intended LaTeX compiler: pdflatex
\documentclass[preprint, sort&compress]{elsarticle} \documentclass[preprint, sort&compress]{elsarticle}
\usepackage[utf8]{inputenc} \usepackage[utf8]{inputenc}
@ -58,7 +58,7 @@ Sensor fusion \sep{} Optimal filters \sep{} \(\mathcal{H}_\infty\) synthesis \se
\end{frontmatter} \end{frontmatter}
\section{Introduction} \section{Introduction}
\label{sec:org0c85494} \label{sec:org188c07e}
\label{sec:introduction} \label{sec:introduction}
\begin{itemize} \begin{itemize}
\item \cite{bendat57_optim_filter_indep_measur_two} roots of sensor fusion \item \cite{bendat57_optim_filter_indep_measur_two} roots of sensor fusion
@ -104,20 +104,22 @@ Sensor fusion \sep{} Optimal filters \sep{} \(\mathcal{H}_\infty\) synthesis \se
Most of the requirements => shape of the complementary filters Most of the requirements => shape of the complementary filters
=> propose a way to shape complementary filters. => propose a way to shape complementary filters.
\section{Complementary Filters Requirements} \section{Sensor Fusion and Complementary Filters Requirements}
\label{sec:org05c7608} \label{sec:org99f43ee}
\label{sec:requirements} \label{sec:requirements}
Complementary filters provides a framework for fusing signals from different sensors. Complementary filters provides a framework for fusing signals from different sensors.
As the effectiveness of the fusion depends on the proper design of the complementary filters, they are expected to fulfill certain requirements. As the effectiveness of the fusion depends on the proper design of the complementary filters, they are expected to fulfill certain requirements.
These requirements are discussed in this section. These requirements are discussed in this section.
\subsection{Sensor Fusion Architecture} \subsection{Sensor Fusion Architecture}
\label{sec:orgca80a74} \label{sec:orgec9e73a}
\label{sec:sensor_fusion} \label{sec:sensor_fusion}
A general sensor fusion architecture is shown in Figure \ref{fig:sensor_fusion_overview} where several sensors (here two) are measuring the same physical quantity \(x\). A general sensor fusion architecture using complementary filters is shown in Figure \ref{fig:sensor_fusion_overview} where several sensors (here two) are measuring the same physical quantity \(x\).
The two sensors output signals are estimates \(\hat{x}_1\) and \(\hat{x}_2\) of \(x\). The two sensors output signals are estimates \(\hat{x}_1\) and \(\hat{x}_2\) of \(x\).
Each of these estimates are then filtered out by complementary filters and combined to form a new estimate \(\hat{x}\). Each of these estimates are then filtered out by complementary filters and combined to form a new estimate \(\hat{x}\).
We further call the overall system from \(x\) to \(\hat{x}\) the ``super sensor''.
The resulting sensor, termed as ``super sensor'', can have larger bandwidth and better noise characteristics in comparison to the individual sensor.
This means that the super sensor provides an estimate \(\hat{x}\) of \(x\) which can be more accurate over a larger frequency band than the outputs of the individual sensors.
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
@ -125,7 +127,9 @@ We further call the overall system from \(x\) to \(\hat{x}\) the ``super sensor'
\caption{\label{fig:sensor_fusion_overview}Schematic of a sensor fusion architecture} \caption{\label{fig:sensor_fusion_overview}Schematic of a sensor fusion architecture}
\end{figure} \end{figure}
The filters \(H_1(s)\) and \(H_2(s)\) are complementary which implies that: The complementary property of filters \(H_1(s)\) and \(H_2(s)\) implies that the summation of their transfer functions is equal to unity.
That is, unity magnitude and zero phase at all frequencies.
Therefore, a pair of strict complementary filter needs to satisfy the following condition:
\begin{equation} \begin{equation}
\label{eq:comp_filter} \label{eq:comp_filter}
H_1(s) + H_2(s) = 1 H_1(s) + H_2(s) = 1
@ -134,18 +138,18 @@ The filters \(H_1(s)\) and \(H_2(s)\) are complementary which implies that:
It will soon become clear why the complementary property is important. It will soon become clear why the complementary property is important.
\subsection{Sensor Models and Sensor Normalization} \subsection{Sensor Models and Sensor Normalization}
\label{sec:orgfc7a65c} \label{sec:org9538be3}
\label{sec:sensor_models} \label{sec:sensor_models}
In order to study such sensor fusion architecture, a model of the sensor is required. In order to study such sensor fusion architecture, a model of the sensors is required.
The sensor model is shown in Figure \ref{fig:sensor_model}. Such model is shown in Figure \ref{fig:sensor_model} and consists of a linear time invariant (LTI) system \(G_i(s)\) representing the dynamics of the sensor and an additive noise input \(n_i\) representing its noise.
It consists of a Linear Time Invariant system (LTI) \(G_i(s)\) representing the dynamics of the sensor and an additive noise input \(n_i\) representing its noise. The model input \(x\) is the measured physical quantity and its output \(\tilde{x}_i\) is the ``raw'' output of the sensor.
The model input \(x\) is the measured quantity and its output \(\tilde{x}_i\) is the ``raw'' output of the sensor.
Before filtering the sensor outputs \(\tilde{x}_i\) by the complementary filters, the sensors are usually normalized. Before filtering the sensor outputs \(\tilde{x}_i\) by the complementary filters, the sensors are usually normalized to simplify the fusion.
This normalization consists of obtaining an estimate \(\hat{G}_i(s)\) of the sensor dynamics \(G_i(s)\). This normalization consists of first obtaining an estimate \(\hat{G}_i(s)\) of the sensor dynamics \(G_i(s)\).
The raw output of the sensor \(\tilde{x}_i\) is then passed through the inverse of the sensor dynamics estimate as shown in Figure \ref{fig:sensor_model_calibrated}. It is supposed that the estimate of the sensor dynamics \(\hat{G}_i(s)\) can be inverted and that its inverse \(\hat{G}_i^{-1}(s)\) is proper and stable.
The raw output of the sensor \(\tilde{x}_i\) is then passed through \(\hat{G}_i^{-1}(s)\) as shown in Figure \ref{fig:sensor_model_calibrated}.
This way, the units of the estimates \(\hat{x}_i\) are equal to the units of the physical quantity \(x\). This way, the units of the estimates \(\hat{x}_i\) are equal to the units of the physical quantity \(x\).
The sensor dynamics estimate \(\hat{G}_1(s)\) can be a simple gain or more complex transfer functions. The sensor dynamics estimate \(\hat{G}_1(s)\) can be a simple gain or more complex transfer functions.
@ -165,16 +169,15 @@ The sensor dynamics estimate \(\hat{G}_1(s)\) can be a simple gain or more compl
\centering \centering
\end{figure} \end{figure}
Let's now combine the two calibrated sensors models (Figure \ref{fig:sensor_model_calibrated}) with the sensor fusion architecture of figure \ref{fig:sensor_fusion_overview}. Two calibrated sensors and then combined to form a super sensor as shown in Figure \ref{fig:fusion_super_sensor}.
The result is shown in Figure \ref{fig:fusion_super_sensor}.
The two sensors are measuring the same physical quantity \(x\) with dynamics \(G_1(s)\) and \(G_2(s)\), and with \emph{uncorrelated} noises \(n_1\) and \(n_2\). The two sensors are measuring the same physical quantity \(x\) with dynamics \(G_1(s)\) and \(G_2(s)\), and with \emph{uncorrelated} noises \(n_1\) and \(n_2\).
The signals from both calibrated sensors are fed into two complementary filters \(H_1(s)\) and \(H_2(s)\) and then combined to yield an estimate \(\hat{x}\) of \(x\) as shown in Fig. \ref{fig:fusion_super_sensor}. The normalized signals from both calibrated sensors are fed into two complementary filters \(H_1(s)\) and \(H_2(s)\) and then combined to yield an estimate \(\hat{x}\) of \(x\) as shown in Fig. \ref{fig:fusion_super_sensor}.
The super sensor output is therefore equal to: The super sensor output is therefore equal to:
\begin{equation} \begin{equation}
\label{eq:comp_filter_estimate} \label{eq:comp_filter_estimate}
\hat{x} = \Big( H_1(s) \hat{G}_1(s) G_1(s) + H_2(s) \hat{G}_2(s) G_2(s) \Big) x + H_1(s) \hat{G}_1(s) G_1(s) n_1 + H_2(s) \hat{G}_2(s) G_2(s) n_2 \hat{x} = \Big( H_1(s) \hat{G}_1^{-1}(s) G_1(s) + H_2(s) \hat{G}_2^{-1}(s) G_2(s) \Big) x + H_1(s) \hat{G}_1^{-1}(s) G_1(s) n_1 + H_2(s) \hat{G}_2^{-1}(s) G_2(s) n_2
\end{equation} \end{equation}
\begin{figure}[htbp] \begin{figure}[htbp]
@ -184,16 +187,16 @@ The super sensor output is therefore equal to:
\end{figure} \end{figure}
\subsection{Noise Sensor Filtering} \subsection{Noise Sensor Filtering}
\label{sec:org2a2ea67} \label{sec:orgb03f925}
\label{sec:noise_filtering} \label{sec:noise_filtering}
In this section, it is suppose that all the sensors are correctly calibrated, such that: In this section, it is supposed that all the sensors are perfectly calibrated, such that:
\begin{equation} \begin{equation}
\label{eq:perfect_dynamics} \label{eq:perfect_dynamics}
\frac{\hat{x}_i}{x} = \hat{G}_i(s) G_i(s) \approx 1 \frac{\hat{x}_i}{x} = \hat{G}_i(s) G_i(s) = 1
\end{equation} \end{equation}
The effect of a non-ideal normalization will be discussed in the next section. The effect of a non-perfect normalization will be discussed in the next section.
The super sensor output \(\hat{x}\) is then: The super sensor output \(\hat{x}\) is then:
\begin{equation} \begin{equation}
@ -201,11 +204,10 @@ The super sensor output \(\hat{x}\) is then:
\hat{x} = x + H_1(s) n_1 + H_2(s) n_2 \hat{x} = x + H_1(s) n_1 + H_2(s) n_2
\end{equation} \end{equation}
From \eqref{eq:estimate_perfect_dyn}, the complementary filters \(H_1(s)\) and \(H_2(s)\) are shown to only operate on the sensor's noises. From \eqref{eq:estimate_perfect_dyn}, the complementary filters \(H_1(s)\) and \(H_2(s)\) are shown to only operate on the sensor's noises.
Thus, this sensor fusion architecture permits to filter the noise of both sensors without introducing any distortion in the physical quantity to be measured. Thus, this sensor fusion architecture permits to filter the noise of both sensors without introducing any distortion in the physical quantity to be measured.
Let's define the estimation error \(\delta x\) by \eqref{eq:estimate_error}. The estimation error \(\delta x\), defined as the difference between the sensor output \(\hat{x}\) and the measured quantity \(x\), is computed for the super sensor \eqref{eq:estimate_error}.
\begin{equation} \begin{equation}
\label{eq:estimate_error} \label{eq:estimate_error}
\delta x \triangleq \hat{x} - x = H_1(s) n_1 + H_2(s) n_2 \delta x \triangleq \hat{x} - x = H_1(s) n_1 + H_2(s) n_2
@ -217,16 +219,22 @@ As shown in \eqref{eq:noise_filtering_psd}, the Power Spectral Density (PSD) of
\Phi_{\delta x}(\omega) = \left|H_1(j\omega)\right|^2 \Phi_{n_1}(\omega) + \left|H_2(j\omega)\right|^2 \Phi_{n_2}(\omega) \Phi_{\delta x}(\omega) = \left|H_1(j\omega)\right|^2 \Phi_{n_1}(\omega) + \left|H_2(j\omega)\right|^2 \Phi_{n_2}(\omega)
\end{equation} \end{equation}
Usually, the two sensors have high noise levels over distinct frequency regions. If the two sensors have identical noise characteristics (\(\Phi_{n_1}(\omega) = \Phi_{n_2}(\omega)\)), a simple averaging (\(H_1(s) = H_2(s) = 0.5\)) is what would minimize the super sensor noise.
In order to lower the noise of the super sensor, the value of the norm \(|H_1|\) has to be lowered when \(\Phi_{n_1}\) is larger than \(\Phi_{n_2}\) and that of \(|H_2|\) lowered when \(\Phi_{n_2}\) is larger than \(\Phi_{n_1}\). This the simplest form of sensor fusion with complementary filters.
\subsection{Robustness of the Fusion} However, the two sensors have usually high noise levels over distinct frequency regions.
\label{sec:orgca279c9} In such case, to lower the noise of the super sensor, the value of the norm \(|H_1|\) has to be lowered when \(\Phi_{n_1}\) is larger than \(\Phi_{n_2}\) and that of \(|H_2|\) lowered when \(\Phi_{n_2}\) is larger than \(\Phi_{n_1}\).
Therefore, by properly shaping the norm of the complementary filters, it is possible to minimize the noise of the super sensor noise.
\subsection{Sensor Fusion Robustness}
\label{sec:orgfb0ea88}
\label{sec:fusion_robustness} \label{sec:fusion_robustness}
In practical systems the sensor normalization is not perfect and \eqref{eq:perfect_dynamics} is not verified. In practical systems the sensor normalization is not perfect and condition \eqref{eq:perfect_dynamics} is not verified.
In order to study such imperfection, the sensor dynamical uncertainty is modeled using multiplicative input uncertainty (Figure \ref{fig:sensor_model_uncertainty}), where the nominal model is taken as the estimated model for the normalization \(\hat{G}_i(s)\), \(\Delta_i\) is any stable transfer function satisfying \(|\Delta_i(j\omega)| \le 1,\ \forall\omega\), and \(w_i(s)\) is a weight representing the magnitude of the uncertainty. In order to study such imperfection, a multiplicative input uncertainty is added to the sensor dynamics (Figure \ref{fig:sensor_model_uncertainty}), where the nominal model is taken as the estimated model for the normalization \(\hat{G}_i(s)\), \(\Delta_i\) is any stable transfer function satisfying \(|\Delta_i(j\omega)| \le 1,\ \forall\omega\), and \(w_i(s)\) is a weight representing the magnitude of the uncertainty.
The weight \(w_i(s)\) is chosen such that the real sensor dynamics is always contained in the uncertain region represented by a circle centered on \(1\) and with a radius equal to \(|w_i(j\omega)|\).
As the nominal sensor dynamics is taken as the normalized filter, the normalized sensor can be further simplified as shown in Figure \ref{fig:sensor_model_uncertainty_simplified}. As the nominal sensor dynamics is taken as the normalized filter, the normalized sensor can be further simplified as shown in Figure \ref{fig:sensor_model_uncertainty_simplified}.
@ -261,36 +269,32 @@ The super sensor dynamics \eqref{eq:super_sensor_dyn_uncertainty} is no longer e
\frac{\hat{x}}{x} = 1 + w_1(s) H_1(s) \Delta_1(s) + w_2(s) H_2(s) \Delta_2(s) \frac{\hat{x}}{x} = 1 + w_1(s) H_1(s) \Delta_1(s) + w_2(s) H_2(s) \Delta_2(s)
\end{equation} \end{equation}
The uncertainty region of the super sensor can be represented in the complex plane by a circle centered on \(1\) with a radius equal to \(|w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)|\) as shown in Figure \ref{fig:uncertainty_set_super_sensor}. The dynamical uncertainty of the super sensor can be graphically represented in the complex plane by a circle centered on \(1\) with a radius equal to \(|w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)|\) as shown in Figure \ref{fig:uncertainty_set_super_sensor}.
\begin{figure}[htbp] \begin{figure}[htbp]
\centering \centering
\includegraphics[scale=1]{figs/uncertainty_set_super_sensor.pdf} \includegraphics[scale=1]{figs/uncertainty_set_super_sensor.pdf}
\caption{\label{fig:uncertainty_set_super_sensor}Uncertainty region of the super sensor dynamics in the complex plane (solid circle). The contribution of both sensors 1 and 2 to the uncertainty are represented respectively by a blue circle and a red circle} \caption{\label{fig:uncertainty_set_super_sensor}Uncertainty region of the super sensor dynamics in the complex plane (solid circle). The contribution of both sensors 1 and 2 to the uncertainty are represented respectively by a blue circle and a red circle. The frequency dependency \(\omega\) is here omitted.}
\end{figure} \end{figure}
The maximum phase added \(\Delta\phi(\omega)\) by the super sensor dynamics at frequency \(\omega\) is then The super sensor dynamical uncertainty (i.e. the robustness of the fusion) clearly depends on the complementary filters norms.
For instance, the phase uncertainty \(\Delta\phi(\omega)\) added by the super sensor dynamics at frequency \(\omega\) can be found by drawing a tangent from the origin to the uncertainty circle of super sensor (Figure \ref{fig:uncertainty_set_super_sensor}) and is bounded by \eqref{eq:max_phase_uncertainty}.
\begin{equation} \begin{equation}
\label{eq:max_phase_uncertainty} \label{eq:max_phase_uncertainty}
\Delta\phi(\omega) = \arcsin\big( |w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)| \big) \Delta\phi(\omega) < \arcsin\big( |w_1(j\omega) H_1(j\omega)| + |w_2(j\omega) H_2(j\omega)| \big)
\end{equation} \end{equation}
As it is generally desired to limit the maximum phase added by the super sensor, \(H_1(s)\) and \(H_2(s)\) should be designed such that \eqref{eq:max_uncertainty_super_sensor} is satisfied. As it is generally desired to limit the maximum phase added by the super sensor, \(H_1(s)\) and \(H_2(s)\) should be designed such that \(\Delta \phi\) is bounded to acceptable values.
\begin{equation} Typically, the norm of the complementary filter \(|H_i(j\omega)|\) should be made small when \(|w_i(j\omega)|\) is large, i.e., at frequencies where the sensor dynamics is uncertain.
\label{eq:max_uncertainty_super_sensor}
\max_\omega \big( \left|w_1 H_1\right| + \left|w_2 H_2\right|\big) < \sin\left( \Delta \phi_\text{max} \right)
\end{equation}
where \(\Delta \phi_\text{max}\) is the maximum allowed added phase.
Thus the norm of the complementary filter \(|H_i|\) should be made small at frequencies where \(|w_i|\) is large.
\section{Complementary Filters Shaping using \(\mathcal{H}_\infty\) Synthesis} \section{Complementary Filters Shaping using \(\mathcal{H}_\infty\) Synthesis}
\label{sec:org3d11f72} \label{sec:orgfccc360}
\label{sec:hinf_method} \label{sec:hinf_method}
As shown in Sec. \ref{sec:requirements}, the performance and robustness of the sensor fusion architecture depends on the complementary filters norms. As shown in Sec. \ref{sec:requirements}, the performance and robustness of the sensor fusion architecture depends on the complementary filters norms.
Therefore, the development of a synthesis method of complementary filters that allows the shaping of their norm is necessary. Therefore, the development of a synthesis method of complementary filters that allows the shaping of their norm is necessary.
\subsection{Synthesis Objective} \subsection{Synthesis Objective}
\label{sec:org867aacd} \label{sec:orga79128d}
\label{sec:synthesis_objective} \label{sec:synthesis_objective}
The synthesis objective is to shape the norm of two filters \(H_1(s)\) and \(H_2(s)\) while ensuring their complementary property \eqref{eq:comp_filter}. The synthesis objective is to shape the norm of two filters \(H_1(s)\) and \(H_2(s)\) while ensuring their complementary property \eqref{eq:comp_filter}.
This is equivalent as to finding stable transfer functions \(H_1(s)\) and \(H_2(s)\) such that conditions \eqref{eq:comp_filter_problem_form} are satisfied. This is equivalent as to finding stable transfer functions \(H_1(s)\) and \(H_2(s)\) such that conditions \eqref{eq:comp_filter_problem_form} are satisfied.
@ -305,7 +309,7 @@ This is equivalent as to finding stable transfer functions \(H_1(s)\) and \(H_2(
where \(W_1(s)\) and \(W_2(s)\) are two weighting transfer functions that are chosen to shape the norms of the corresponding filters. where \(W_1(s)\) and \(W_2(s)\) are two weighting transfer functions that are chosen to shape the norms of the corresponding filters.
\subsection{Shaping of Complementary Filters using \(\mathcal{H}_\infty\) synthesis} \subsection{Shaping of Complementary Filters using \(\mathcal{H}_\infty\) synthesis}
\label{sec:orgec7ca01} \label{sec:org91451ed}
\label{sec:hinf_synthesis} \label{sec:hinf_synthesis}
In order to express this optimization problem as a standard \(\mathcal{H}_\infty\) problem, the architecture shown in Fig. \ref{fig:h_infinity_robust_fusion} is used where the generalized plant \(P\) is described by \eqref{eq:generalized_plant}. In order to express this optimization problem as a standard \(\mathcal{H}_\infty\) problem, the architecture shown in Fig. \ref{fig:h_infinity_robust_fusion} is used where the generalized plant \(P\) is described by \eqref{eq:generalized_plant}.
\begin{equation} \begin{equation}
@ -341,7 +345,7 @@ The conditions \eqref{eq:hinf_cond_h1} and \eqref{eq:hinf_cond_h2} on the filter
Therefore, all the conditions \eqref{eq:comp_filter_problem_form} are satisfied using this synthesis method based on \(\mathcal{H}_\infty\) synthesis, and thus it permits to shape complementary filters as desired. Therefore, all the conditions \eqref{eq:comp_filter_problem_form} are satisfied using this synthesis method based on \(\mathcal{H}_\infty\) synthesis, and thus it permits to shape complementary filters as desired.
\subsection{Weighting Functions Design} \subsection{Weighting Functions Design}
\label{sec:org1b0a8b2} \label{sec:orge5f38aa}
\label{sec:hinf_weighting_func} \label{sec:hinf_weighting_func}
The proper design of the weighting functions is of primary importance for the success of the presented complementary filters \(\mathcal{H}_\infty\) synthesis. The proper design of the weighting functions is of primary importance for the success of the presented complementary filters \(\mathcal{H}_\infty\) synthesis.
@ -386,7 +390,7 @@ The general shape of a weighting function generated using \eqref{eq:weight_formu
\end{figure} \end{figure}
\subsection{Validation of the proposed synthesis method} \subsection{Validation of the proposed synthesis method}
\label{sec:org9091752} \label{sec:org0477d6e}
\label{sec:hinf_example} \label{sec:hinf_example}
Let's validate the proposed design method of complementary filters with a simple example where two complementary filters \(H_1(s)\) and \(H_2(s)\) have to be designed such that: Let's validate the proposed design method of complementary filters with a simple example where two complementary filters \(H_1(s)\) and \(H_2(s)\) have to be designed such that:
\begin{itemize} \begin{itemize}
@ -428,7 +432,7 @@ The bode plots of the obtained complementary filters are shown in Fig. \ref{fig:
\end{figure} \end{figure}
\section{Application: Design of Complementary Filters used in the Active Vibration Isolation System at the LIGO} \section{Application: Design of Complementary Filters used in the Active Vibration Isolation System at the LIGO}
\label{sec:orgf547be3} \label{sec:org70c1567}
\label{sec:application_ligo} \label{sec:application_ligo}
Several complementary filters are used in the active isolation system at the LIGO \cite{hua05_low_ligo,hua04_polyp_fir_compl_filter_contr_system}. Several complementary filters are used in the active isolation system at the LIGO \cite{hua05_low_ligo,hua04_polyp_fir_compl_filter_contr_system}.
The requirements on those filters are very tight and thus their design is complex. The requirements on those filters are very tight and thus their design is complex.
@ -437,7 +441,7 @@ The obtained FIR filters are compliant with the requirements. However they are o
The effectiveness of the proposed method is demonstrated by designing complementary filters with the same requirements as the one described in \cite{hua05_low_ligo}. The effectiveness of the proposed method is demonstrated by designing complementary filters with the same requirements as the one described in \cite{hua05_low_ligo}.
\subsection{Complementary Filters Specifications} \subsection{Complementary Filters Specifications}
\label{sec:orgd0486d1} \label{sec:orgdfbd1f2}
\label{sec:ligo_specifications} \label{sec:ligo_specifications}
The specifications for one pair of complementary filters used at the LIGO are summarized below (for further details, refer to \cite{hua04_polyp_fir_compl_filter_contr_system}) and shown in Fig. \ref{fig:ligo_weights}: The specifications for one pair of complementary filters used at the LIGO are summarized below (for further details, refer to \cite{hua04_polyp_fir_compl_filter_contr_system}) and shown in Fig. \ref{fig:ligo_weights}:
\begin{itemize} \begin{itemize}
@ -448,7 +452,7 @@ The specifications for one pair of complementary filters used at the LIGO are su
\end{itemize} \end{itemize}
\subsection{Weighting Functions Design} \subsection{Weighting Functions Design}
\label{sec:org1a654aa} \label{sec:orgf9892b6}
\label{sec:ligo_weights} \label{sec:ligo_weights}
The weighting functions should be designed such that their inverse magnitude is as close as possible to the specifications in order to not over-constrain the synthesis problem. The weighting functions should be designed such that their inverse magnitude is as close as possible to the specifications in order to not over-constrain the synthesis problem.
However, the order of each weight should stay reasonably small in order to reduce the computational costs of the optimization problem as well as for the physical implementation of the filters. However, the order of each weight should stay reasonably small in order to reduce the computational costs of the optimization problem as well as for the physical implementation of the filters.
@ -464,7 +468,7 @@ The magnitudes of the weighting functions are shown in Fig. \ref{fig:ligo_weight
\end{figure} \end{figure}
\subsection{\(\mathcal{H}_\infty\) Synthesis} \subsection{\(\mathcal{H}_\infty\) Synthesis}
\label{sec:org93cef71} \label{sec:orge086b06}
\label{sec:ligo_results} \label{sec:ligo_results}
\(\mathcal{H}_\infty\) synthesis is performed using the architecture shown in Fig. \ref{eq:generalized_plant}. \(\mathcal{H}_\infty\) synthesis is performed using the architecture shown in Fig. \ref{eq:generalized_plant}.
The complementary filters obtained are of order \(27\). The complementary filters obtained are of order \(27\).
@ -478,9 +482,9 @@ They are found to be very close to each other and this shows the effectiveness o
\end{figure} \end{figure}
\section{Discussion} \section{Discussion}
\label{sec:org016320e} \label{sec:org7b7d598}
\subsection{Alternative configuration} \subsection{Alternative configuration}
\label{sec:org69bd60e} \label{sec:org56a1607}
\begin{itemize} \begin{itemize}
\item Feedback architecture : Similar to mixed sensitivity \item Feedback architecture : Similar to mixed sensitivity
\item 2 inputs / 1 output \item 2 inputs / 1 output
@ -489,13 +493,13 @@ They are found to be very close to each other and this shows the effectiveness o
Explain differences Explain differences
\subsection{Imposing zero at origin / roll-off} \subsection{Imposing zero at origin / roll-off}
\label{sec:org7f88310} \label{sec:org8da9d79}
3 methods: 3 methods:
Link to literature about doing that with mixed sensitivity Link to literature about doing that with mixed sensitivity
\subsection{Synthesis of Three Complementary Filters} \subsection{Synthesis of Three Complementary Filters}
\label{sec:orgd378e04} \label{sec:orgefead29}
\label{sec:hinf_three_comp_filters} \label{sec:hinf_three_comp_filters}
Some applications may require to merge more than two sensors. Some applications may require to merge more than two sensors.
In such a case, it is necessary to design as many complementary filters as the number of sensors used. In such a case, it is necessary to design as many complementary filters as the number of sensors used.
@ -533,7 +537,7 @@ The bode plots of the obtained complementary filters are shown in Fig. \ref{fig:
\end{figure} \end{figure}
\section{Conclusion} \section{Conclusion}
\label{sec:org46a0029} \label{sec:org2e6ce14}
\label{sec:conclusion} \label{sec:conclusion}
This paper has shown how complementary filters can be used to combine multiple sensors in order to obtain a super sensor. This paper has shown how complementary filters can be used to combine multiple sensors in order to obtain a super sensor.
Typical specification on the super sensor noise and on the robustness of the sensor fusion has been shown to be linked to the norm of the complementary filters. Typical specification on the super sensor noise and on the robustness of the sensor fusion has been shown to be linked to the norm of the complementary filters.
@ -541,7 +545,7 @@ Therefore, a synthesis method that permits the shaping of the complementary filt
Future work will aim at further developing this synthesis method for the robust and optimal synthesis of complementary filters used in sensor fusion. Future work will aim at further developing this synthesis method for the robust and optimal synthesis of complementary filters used in sensor fusion.
\section*{Acknowledgment} \section*{Acknowledgment}
\label{sec:orgc8d6b1f} \label{sec:orgde5a128}
This research benefited from a FRIA grant from the French Community of Belgium. This research benefited from a FRIA grant from the French Community of Belgium.
\bibliographystyle{elsarticle-num} \bibliographystyle{elsarticle-num}