Update bibtex for source code
This commit is contained in:
		
										
											Binary file not shown.
										
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
% Created 2021-09-01 mer. 10:05
 | 
			
		||||
% Created 2021-09-01 mer. 17:02
 | 
			
		||||
% Intended LaTeX compiler: pdflatex
 | 
			
		||||
\documentclass[preprint, sort&compress]{elsarticle}
 | 
			
		||||
\usepackage[utf8]{inputenc}
 | 
			
		||||
@@ -58,7 +58,7 @@ Sensor fusion \sep{} Complementary filters \sep{} \(\mathcal{H}_\infty\) synthes
 | 
			
		||||
\end{frontmatter}
 | 
			
		||||
 | 
			
		||||
\section{Introduction}
 | 
			
		||||
\label{sec:org759f4b3}
 | 
			
		||||
\label{sec:org2e9b248}
 | 
			
		||||
\label{sec:introduction}
 | 
			
		||||
Measuring a physical quantity using sensors is always subject to several limitations.
 | 
			
		||||
First, the accuracy of the measurement will be affected by several noise sources, such as the electrical noise of the conditioning electronics being used.
 | 
			
		||||
@@ -105,13 +105,13 @@ The synthesis method is further validated in Section~\ref{sec:application_ligo}
 | 
			
		||||
Section~\ref{sec:discussion} compares the proposed synthesis method with the classical mixed-sensitivity synthesis, and extends it to the shaping of more than two complementary filters.
 | 
			
		||||
 | 
			
		||||
\section{Sensor Fusion and Complementary Filters Requirements}
 | 
			
		||||
\label{sec:org1ec960d}
 | 
			
		||||
\label{sec:org11c2c5d}
 | 
			
		||||
\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:org12550f0}
 | 
			
		||||
\label{sec:orgf188ee8}
 | 
			
		||||
\label{sec:sensor_fusion}
 | 
			
		||||
 | 
			
		||||
A general sensor fusion architecture using complementary filters is shown in Fig.~\ref{fig:sensor_fusion_overview} where several sensors (here two) are measuring the same physical quantity \(x\).
 | 
			
		||||
@@ -138,7 +138,7 @@ Therefore, a pair of complementary filter needs to satisfy the following conditi
 | 
			
		||||
It will soon become clear why the complementary property is important for the sensor fusion architecture.
 | 
			
		||||
 | 
			
		||||
\subsection{Sensor Models and Sensor Normalization}
 | 
			
		||||
\label{sec:org09fb715}
 | 
			
		||||
\label{sec:orgb672f70}
 | 
			
		||||
\label{sec:sensor_models}
 | 
			
		||||
 | 
			
		||||
In order to study such sensor fusion architecture, a model for the sensors is required.
 | 
			
		||||
@@ -184,7 +184,7 @@ The super sensor output is therefore equal to:
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\subsection{Noise Sensor Filtering}
 | 
			
		||||
\label{sec:org9e08a61}
 | 
			
		||||
\label{sec:org6621cf0}
 | 
			
		||||
\label{sec:noise_filtering}
 | 
			
		||||
 | 
			
		||||
In this section, it is supposed that all the sensors are perfectly normalized, such that:
 | 
			
		||||
@@ -225,7 +225,7 @@ In such case, to lower the noise of the super sensor, the norm \(|H_1(j\omega)|\
 | 
			
		||||
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:org526930e}
 | 
			
		||||
\label{sec:orge7e30ce}
 | 
			
		||||
\label{sec:fusion_robustness}
 | 
			
		||||
 | 
			
		||||
In practical systems the sensor normalization is not perfect and condition \eqref{eq:perfect_dynamics} is not verified.
 | 
			
		||||
@@ -289,7 +289,7 @@ As it is generally desired to limit the maximum phase added by the 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.
 | 
			
		||||
 | 
			
		||||
\section{Complementary Filters Shaping}
 | 
			
		||||
\label{sec:orgfd9f96b}
 | 
			
		||||
\label{sec:orgffe483d}
 | 
			
		||||
\label{sec:hinf_method}
 | 
			
		||||
As shown in Section~\ref{sec:requirements}, the noise and robustness of the super sensor are a function of the complementary filters norms.
 | 
			
		||||
Therefore, a complementary filters synthesis method that allows to shape their norms would be of great use.
 | 
			
		||||
@@ -297,7 +297,7 @@ In this section, such synthesis is proposed by writing the synthesis objective a
 | 
			
		||||
As weighting functions are used to represent the wanted complementary filters shapes during the synthesis, the proper design of weighting functions is discussed.
 | 
			
		||||
Finally, the synthesis method is validated on an simple example.
 | 
			
		||||
\subsection{Synthesis Objective}
 | 
			
		||||
\label{sec:orgf199dad}
 | 
			
		||||
\label{sec:orgc020e5d}
 | 
			
		||||
\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}.
 | 
			
		||||
@@ -314,7 +314,7 @@ This is equivalent as to finding proper and stable transfer functions \(H_1(s)\)
 | 
			
		||||
\(W_1(s)\) and \(W_2(s)\) are two weighting transfer functions that are carefully chosen to specify the maximum wanted norms of the complementary filters during the synthesis.
 | 
			
		||||
 | 
			
		||||
\subsection{Shaping of Complementary Filters using \(\mathcal{H}_\infty\) synthesis}
 | 
			
		||||
\label{sec:org6bbfe23}
 | 
			
		||||
\label{sec:org6c86cb9}
 | 
			
		||||
\label{sec:hinf_synthesis}
 | 
			
		||||
 | 
			
		||||
In this section, it is shown that the synthesis objective can be easily expressed as a standard \(\mathcal{H}_\infty\) optimization problem and therefore solved using convenient tools readily available.
 | 
			
		||||
@@ -370,7 +370,7 @@ There might be solutions were the objectives~\eqref{eq:hinf_cond_h1} and~\eqref{
 | 
			
		||||
In practice, this is however not an found to be an issue.
 | 
			
		||||
 | 
			
		||||
\subsection{Weighting Functions Design}
 | 
			
		||||
\label{sec:org7255223}
 | 
			
		||||
\label{sec:orgf11126f}
 | 
			
		||||
\label{sec:hinf_weighting_func}
 | 
			
		||||
 | 
			
		||||
Weighting functions are used during the synthesis to specify the maximum allowed norms of the complementary filters.
 | 
			
		||||
@@ -419,7 +419,7 @@ An example of the obtained magnitude of a weighting function generated using \eq
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\subsection{Validation of the proposed synthesis method}
 | 
			
		||||
\label{sec:orgca261f8}
 | 
			
		||||
\label{sec:org254cb4b}
 | 
			
		||||
\label{sec:hinf_example}
 | 
			
		||||
 | 
			
		||||
The proposed methodology for the design of complementary filters is now applied on a simple example where two complementary filters \(H_1(s)\) and \(H_2(s)\) have to be designed such that:
 | 
			
		||||
@@ -490,7 +490,7 @@ This simple example illustrates the fact that the proposed methodology for compl
 | 
			
		||||
A more complex real life example is taken up in the next section.
 | 
			
		||||
 | 
			
		||||
\section{Application: Design of Complementary Filters used in the Active Vibration Isolation System at the LIGO}
 | 
			
		||||
\label{sec:org00afdda}
 | 
			
		||||
\label{sec:org87f5cba}
 | 
			
		||||
\label{sec:application_ligo}
 | 
			
		||||
Sensor fusion using complementary filters are widely used in active vibration isolation systems in gravitational wave detectors such at the LIGO~\cite{matichard15_seism_isolat_advan_ligo,hua05_low_ligo}, the VIRGO~\cite{lucia18_low_frequen_optim_perfor_advan,heijningen18_low} and the KAGRA \cite[Chap. 5]{sekiguchi16_study_low_frequen_vibrat_isolat_system}.
 | 
			
		||||
 | 
			
		||||
@@ -513,7 +513,7 @@ After synthesis, the obtained FIR filters were found to be compliant with the re
 | 
			
		||||
However they are of very high order so their implementation is quite complex.
 | 
			
		||||
In this section, the effectiveness of the proposed complementary filter synthesis strategy is demonstrated on the same set of requirements.
 | 
			
		||||
\subsection{Complementary Filters Specifications}
 | 
			
		||||
\label{sec:org4c34a41}
 | 
			
		||||
\label{sec:orgf53acf5}
 | 
			
		||||
\label{sec:ligo_specifications}
 | 
			
		||||
 | 
			
		||||
The specifications for the set of complementary filters (\(L_1,H_1\)) used at the LIGO are summarized below (for further details, refer to~\cite{hua04_polyp_fir_compl_filter_contr_system}):
 | 
			
		||||
@@ -534,7 +534,7 @@ They are physically represented in Fig.~\ref{fig:fir_filter_ligo} as well as the
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\subsection{Weighting Functions Design}
 | 
			
		||||
\label{sec:org2098436}
 | 
			
		||||
\label{sec:org4b996f7}
 | 
			
		||||
\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.
 | 
			
		||||
@@ -551,7 +551,7 @@ The magnitudes of the weighting functions are shown in Fig.~\ref{fig:ligo_weight
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\subsection{\(\mathcal{H}_\infty\) Synthesis of the complementary filters}
 | 
			
		||||
\label{sec:org6f6d00c}
 | 
			
		||||
\label{sec:org64068df}
 | 
			
		||||
\label{sec:ligo_results}
 | 
			
		||||
 | 
			
		||||
The proposed \(\mathcal{H}_\infty\) synthesis is performed on the generalized plant shown in Fig.~\ref{fig:h_infinity_robust_fusion_plant}.
 | 
			
		||||
@@ -567,10 +567,10 @@ This confirms the effectiveness of the proposed synthesis method even when the c
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\section{Discussion}
 | 
			
		||||
\label{sec:org268cb51}
 | 
			
		||||
\label{sec:org36bf100}
 | 
			
		||||
\label{sec:discussion}
 | 
			
		||||
\subsection{``Closed-Loop'' complementary filters}
 | 
			
		||||
\label{sec:org5bce6c6}
 | 
			
		||||
\label{sec:org38ca6e5}
 | 
			
		||||
\label{sec:closed_loop_complementary_filters}
 | 
			
		||||
An alternative way to implement complementary filters is by using a fundamental property of the classical feedback architecture shown in Fig.~\ref{fig:feedback_sensor_fusion}.
 | 
			
		||||
This is for instance presented in \cite{mahony05_compl_filter_desig_special_orthog,plummer06_optim_compl_filter_their_applic_motion_measur,jensen13_basic_uas}.
 | 
			
		||||
@@ -667,7 +667,7 @@ The obtained ``closed-loop'' complementary filters are indeed equal to the ones
 | 
			
		||||
\end{figure}
 | 
			
		||||
 | 
			
		||||
\subsection{Synthesis of more than two Complementary Filters}
 | 
			
		||||
\label{sec:org5cb9fba}
 | 
			
		||||
\label{sec:org16306e2}
 | 
			
		||||
\label{sec:hinf_three_comp_filters}
 | 
			
		||||
 | 
			
		||||
Some applications may require to merge more than two sensors~\cite{stoten01_fusion_kinet_data_using_compos_filter,becker15_compl_filter_desig_three_frequen_bands}.
 | 
			
		||||
@@ -771,7 +771,7 @@ A set of \(n\) complementary filters can be shaped using the generalized plant \
 | 
			
		||||
\end{equation}
 | 
			
		||||
 | 
			
		||||
\section{Conclusion}
 | 
			
		||||
\label{sec:org85a0b4e}
 | 
			
		||||
\label{sec:org05380ec}
 | 
			
		||||
\label{sec:conclusion}
 | 
			
		||||
 | 
			
		||||
Sensors measuring a physical quantities are always subject to limitations both in terms of bandwidth or accuracy.
 | 
			
		||||
@@ -785,12 +785,12 @@ Links with ``closed-loop'' complementary filters where highlighted, and the prop
 | 
			
		||||
Future work will aim at developing a complementary filter synthesis method that minimizes the super sensor noise while ensuring the robustness of the fusion.
 | 
			
		||||
 | 
			
		||||
\section*{Acknowledgment}
 | 
			
		||||
\label{sec:org5dd6e93}
 | 
			
		||||
\label{sec:orgcfbe3a3}
 | 
			
		||||
This research benefited from a FRIA grant from the French Community of Belgium.
 | 
			
		||||
This paper is based on a paper previously presented at the ICCMA conference~\cite{dehaeze19_compl_filter_shapin_using_synth}.
 | 
			
		||||
 | 
			
		||||
\section*{Data Availability}
 | 
			
		||||
\label{sec:orgabe6565}
 | 
			
		||||
\label{sec:orga0214e5}
 | 
			
		||||
Matlab \cite{matlab20} was used for this study.
 | 
			
		||||
The source code is available under a MIT License and archived in Zenodo~\cite{dehaeze21_new_method_desig_compl_filter_code}.
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -378,11 +378,11 @@
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@misc{dehaeze21_new_method_desig_compl_filter_code,
 | 
			
		||||
  author          = {Thomas Dehaeze},
 | 
			
		||||
  doi             = {10.5281/zenodo.3894342},
 | 
			
		||||
  howpublished    = {Source Code on Zonodo},
 | 
			
		||||
  month           = 09,
 | 
			
		||||
  title           = {A New Method of Designing Complementary Filters for Sensor
 | 
			
		||||
                  Fusion using $\mathcal{H}_\infty$ Synthesis},
 | 
			
		||||
  author          = {Dehaeze, Thomas},
 | 
			
		||||
  doi             = {10.5281/zenodo.5361943},
 | 
			
		||||
  howpublished    = {Source code on Zenodo},
 | 
			
		||||
  month           = sep,
 | 
			
		||||
  title           = {{A New Method of Designing Complementary Filters for Sensor
 | 
			
		||||
                  Fusion Using the $\mathcal{H}_\infty$ Synthesis}},
 | 
			
		||||
  year            = 2021,
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user