Finish reworking section 2
This commit is contained in:
		| @@ -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]]. | ||||
| Finally, concluding remarks are presented in Section [[*Concluding remarks][5]]. | ||||
|  | ||||
| * Complementary Filters Requirements | ||||
| * Sensor Fusion and Complementary Filters Requirements | ||||
| <<sec:requirements>> | ||||
| ** Introduction                                                      :ignore: | ||||
|  | ||||
| @@ -264,16 +264,20 @@ These requirements are discussed in this section. | ||||
| ** Sensor Fusion Architecture | ||||
| <<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$. | ||||
| 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 | ||||
| #+caption: Schematic of a sensor fusion architecture | ||||
| [[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 | ||||
| \begin{equation} | ||||
|   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 | ||||
| <<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. | ||||
| 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 quantity and its output $\tilde{x}_i$ is the "raw" output of the sensor. | ||||
| 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. | ||||
| The model input $x$ is the measured physical 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. | ||||
| This normalization consists of 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. | ||||
| 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 first obtaining an estimate $\hat{G}_i(s)$ of the sensor dynamics $G_i(s)$. | ||||
| 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$. | ||||
| 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_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. | ||||
| The result is shown in Figure ref:fig:fusion_super_sensor. | ||||
| Two calibrated sensors and then combined to form a super sensor as 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 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: | ||||
| #+name: eq:comp_filter_estimate | ||||
| \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} | ||||
|  | ||||
| #+name: fig:fusion_super_sensor | ||||
| @@ -334,13 +337,13 @@ The super sensor output is therefore equal to: | ||||
| ** Noise Sensor 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 | ||||
| \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} | ||||
|  | ||||
| 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: | ||||
| #+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 | ||||
| \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. | ||||
| 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 | ||||
| \begin{equation} | ||||
|   \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) | ||||
| \end{equation} | ||||
|  | ||||
| # TODO - Rework, tell that we can put requirements on the *norm* of the complementary filters | ||||
| Usually, the two sensors have high noise levels over distinct frequency regions. | ||||
| 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}$. | ||||
| 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. | ||||
| This the simplest form of sensor fusion with complementary filters. | ||||
|  | ||||
| ** 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>> | ||||
|  | ||||
| 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. | ||||
|  | ||||
| @@ -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) | ||||
| \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 | ||||
| #+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]] | ||||
|  | ||||
| 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 | ||||
| \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} | ||||
|  | ||||
| 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. | ||||
| #+name: eq:max_uncertainty_super_sensor | ||||
| \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. | ||||
| 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. | ||||
| 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. | ||||
|  | ||||
| * Complementary Filters Shaping using $\mathcal{H}_\infty$ Synthesis | ||||
| <<sec:hinf_method>> | ||||
|   | ||||
										
											Binary file not shown.
										
									
								
							| @@ -1,4 +1,4 @@ | ||||
| % Created 2021-05-03 lun. 17:46 | ||||
| % Created 2021-05-19 mer. 11:46 | ||||
| % Intended LaTeX compiler: pdflatex | ||||
| \documentclass[preprint, sort&compress]{elsarticle} | ||||
| \usepackage[utf8]{inputenc} | ||||
| @@ -58,7 +58,7 @@ Sensor fusion \sep{} Optimal filters \sep{} \(\mathcal{H}_\infty\) synthesis \se | ||||
| \end{frontmatter} | ||||
|  | ||||
| \section{Introduction} | ||||
| \label{sec:org0c85494} | ||||
| \label{sec:org188c07e} | ||||
| \label{sec:introduction} | ||||
| \begin{itemize} | ||||
| \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 | ||||
| => propose a way to shape complementary filters. | ||||
|  | ||||
| \section{Complementary Filters Requirements} | ||||
| \label{sec:org05c7608} | ||||
| \section{Sensor Fusion and Complementary Filters Requirements} | ||||
| \label{sec:org99f43ee} | ||||
| \label{sec:requirements} | ||||
| 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. | ||||
| These requirements are discussed in this section. | ||||
| \subsection{Sensor Fusion Architecture} | ||||
| \label{sec:orgca80a74} | ||||
| \label{sec:orgec9e73a} | ||||
| \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\). | ||||
| 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] | ||||
| \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} | ||||
| \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} | ||||
| \label{eq:comp_filter} | ||||
|   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. | ||||
|  | ||||
| \subsection{Sensor Models and Sensor Normalization} | ||||
| \label{sec:orgfc7a65c} | ||||
| \label{sec:org9538be3} | ||||
| \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}. | ||||
| 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 quantity and its output \(\tilde{x}_i\) is the ``raw'' output of the sensor. | ||||
| 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. | ||||
| The model input \(x\) is the measured physical 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. | ||||
| This normalization consists of 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}. | ||||
| 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 first obtaining an estimate \(\hat{G}_i(s)\) of the sensor dynamics \(G_i(s)\). | ||||
| 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\). | ||||
| 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 | ||||
| \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}. | ||||
| The result is shown in Figure \ref{fig:fusion_super_sensor}. | ||||
| Two calibrated sensors and then combined to form a super sensor as 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 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: | ||||
| \begin{equation} | ||||
| \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} | ||||
|  | ||||
| \begin{figure}[htbp] | ||||
| @@ -184,16 +187,16 @@ The super sensor output is therefore equal to: | ||||
| \end{figure} | ||||
|  | ||||
| \subsection{Noise Sensor Filtering} | ||||
| \label{sec:org2a2ea67} | ||||
| \label{sec:orgb03f925} | ||||
| \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} | ||||
| \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} | ||||
|  | ||||
| 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: | ||||
| \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 | ||||
| \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. | ||||
| 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} | ||||
| \label{eq:estimate_error} | ||||
|   \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) | ||||
| \end{equation} | ||||
|  | ||||
| Usually, the two sensors have high noise levels over distinct frequency regions. | ||||
| 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}\). | ||||
| 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. | ||||
| This the simplest form of sensor fusion with complementary filters. | ||||
|  | ||||
| \subsection{Robustness of the Fusion} | ||||
| \label{sec:orgca279c9} | ||||
| 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. | ||||
|  | ||||
| \subsection{Sensor Fusion Robustness} | ||||
| \label{sec:orgfb0ea88} | ||||
| \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}. | ||||
|  | ||||
| @@ -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) | ||||
| \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] | ||||
| \centering | ||||
| \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} | ||||
|  | ||||
| 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} | ||||
| \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} | ||||
|  | ||||
| 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. | ||||
| \begin{equation} | ||||
| \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. | ||||
| 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. | ||||
| 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. | ||||
|  | ||||
| \section{Complementary Filters Shaping using \(\mathcal{H}_\infty\) Synthesis} | ||||
| \label{sec:org3d11f72} | ||||
| \label{sec:orgfccc360} | ||||
| \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. | ||||
| Therefore, the development of a synthesis method of complementary filters that allows the shaping of their norm is necessary. | ||||
| \subsection{Synthesis Objective} | ||||
| \label{sec:org867aacd} | ||||
| \label{sec:orga79128d} | ||||
| \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}. | ||||
| 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. | ||||
|  | ||||
| \subsection{Shaping of Complementary Filters using \(\mathcal{H}_\infty\) synthesis} | ||||
| \label{sec:orgec7ca01} | ||||
| \label{sec:org91451ed} | ||||
| \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}. | ||||
| \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. | ||||
|  | ||||
| \subsection{Weighting Functions Design} | ||||
| \label{sec:org1b0a8b2} | ||||
| \label{sec:orge5f38aa} | ||||
| \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. | ||||
|  | ||||
| @@ -386,7 +390,7 @@ The general shape of a weighting function generated using \eqref{eq:weight_formu | ||||
| \end{figure} | ||||
|  | ||||
| \subsection{Validation of the proposed synthesis method} | ||||
| \label{sec:org9091752} | ||||
| \label{sec:org0477d6e} | ||||
| \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: | ||||
| \begin{itemize} | ||||
| @@ -428,7 +432,7 @@ The bode plots of the obtained complementary filters are shown in Fig. \ref{fig: | ||||
| \end{figure} | ||||
|  | ||||
| \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} | ||||
| 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. | ||||
| @@ -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}. | ||||
| \subsection{Complementary Filters Specifications} | ||||
| \label{sec:orgd0486d1} | ||||
| \label{sec:orgdfbd1f2} | ||||
| \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}: | ||||
| \begin{itemize} | ||||
| @@ -448,7 +452,7 @@ The specifications for one pair of complementary filters used at the LIGO are su | ||||
| \end{itemize} | ||||
|  | ||||
| \subsection{Weighting Functions Design} | ||||
| \label{sec:org1a654aa} | ||||
| \label{sec:orgf9892b6} | ||||
| \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. | ||||
| 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} | ||||
|  | ||||
| \subsection{\(\mathcal{H}_\infty\) Synthesis} | ||||
| \label{sec:org93cef71} | ||||
| \label{sec:orge086b06} | ||||
| \label{sec:ligo_results} | ||||
| \(\mathcal{H}_\infty\) synthesis is performed using the architecture shown in Fig. \ref{eq:generalized_plant}. | ||||
| 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} | ||||
|  | ||||
| \section{Discussion} | ||||
| \label{sec:org016320e} | ||||
| \label{sec:org7b7d598} | ||||
| \subsection{Alternative configuration} | ||||
| \label{sec:org69bd60e} | ||||
| \label{sec:org56a1607} | ||||
| \begin{itemize} | ||||
| \item Feedback architecture : Similar to mixed sensitivity | ||||
| \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 | ||||
|  | ||||
| \subsection{Imposing zero at origin / roll-off} | ||||
| \label{sec:org7f88310} | ||||
| \label{sec:org8da9d79} | ||||
| 3 methods: | ||||
|  | ||||
| Link to literature about doing that with mixed sensitivity | ||||
|  | ||||
| \subsection{Synthesis of Three Complementary Filters} | ||||
| \label{sec:orgd378e04} | ||||
| \label{sec:orgefead29} | ||||
| \label{sec:hinf_three_comp_filters} | ||||
| 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. | ||||
| @@ -533,7 +537,7 @@ The bode plots of the obtained complementary filters are shown in Fig. \ref{fig: | ||||
| \end{figure} | ||||
|  | ||||
| \section{Conclusion} | ||||
| \label{sec:org46a0029} | ||||
| \label{sec:org2e6ce14} | ||||
| \label{sec:conclusion} | ||||
| 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. | ||||
| @@ -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. | ||||
|  | ||||
| \section*{Acknowledgment} | ||||
| \label{sec:orgc8d6b1f} | ||||
| \label{sec:orgde5a128} | ||||
| This research benefited from a FRIA grant from the French Community of Belgium. | ||||
|  | ||||
| \bibliographystyle{elsarticle-num} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user