Update bibtex for source code
This commit is contained in:
parent
4769d4b57f
commit
4568a119a2
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
|
% 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{} Complementary filters \sep{} \(\mathcal{H}_\infty\) synthes
|
|||||||
\end{frontmatter}
|
\end{frontmatter}
|
||||||
|
|
||||||
\section{Introduction}
|
\section{Introduction}
|
||||||
\label{sec:org759f4b3}
|
\label{sec:org2e9b248}
|
||||||
\label{sec:introduction}
|
\label{sec:introduction}
|
||||||
Measuring a physical quantity using sensors is always subject to several limitations.
|
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.
|
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~\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}
|
\section{Sensor Fusion and Complementary Filters Requirements}
|
||||||
\label{sec:org1ec960d}
|
\label{sec:org11c2c5d}
|
||||||
\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:org12550f0}
|
\label{sec:orgf188ee8}
|
||||||
\label{sec:sensor_fusion}
|
\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\).
|
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.
|
It will soon become clear why the complementary property is important for the sensor fusion architecture.
|
||||||
|
|
||||||
\subsection{Sensor Models and Sensor Normalization}
|
\subsection{Sensor Models and Sensor Normalization}
|
||||||
\label{sec:org09fb715}
|
\label{sec:orgb672f70}
|
||||||
\label{sec:sensor_models}
|
\label{sec:sensor_models}
|
||||||
|
|
||||||
In order to study such sensor fusion architecture, a model for the sensors is required.
|
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}
|
\end{figure}
|
||||||
|
|
||||||
\subsection{Noise Sensor Filtering}
|
\subsection{Noise Sensor Filtering}
|
||||||
\label{sec:org9e08a61}
|
\label{sec:org6621cf0}
|
||||||
\label{sec:noise_filtering}
|
\label{sec:noise_filtering}
|
||||||
|
|
||||||
In this section, it is supposed that all the sensors are perfectly normalized, such that:
|
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.
|
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}
|
\subsection{Sensor Fusion Robustness}
|
||||||
\label{sec:org526930e}
|
\label{sec:orge7e30ce}
|
||||||
\label{sec:fusion_robustness}
|
\label{sec:fusion_robustness}
|
||||||
|
|
||||||
In practical systems the sensor normalization is not perfect and condition \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.
|
||||||
@ -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.
|
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}
|
\section{Complementary Filters Shaping}
|
||||||
\label{sec:orgfd9f96b}
|
\label{sec:orgffe483d}
|
||||||
\label{sec:hinf_method}
|
\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.
|
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.
|
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.
|
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.
|
Finally, the synthesis method is validated on an simple example.
|
||||||
\subsection{Synthesis Objective}
|
\subsection{Synthesis Objective}
|
||||||
\label{sec:orgf199dad}
|
\label{sec:orgc020e5d}
|
||||||
\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}.
|
||||||
@ -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.
|
\(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}
|
\subsection{Shaping of Complementary Filters using \(\mathcal{H}_\infty\) synthesis}
|
||||||
\label{sec:org6bbfe23}
|
\label{sec:org6c86cb9}
|
||||||
\label{sec:hinf_synthesis}
|
\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.
|
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.
|
In practice, this is however not an found to be an issue.
|
||||||
|
|
||||||
\subsection{Weighting Functions Design}
|
\subsection{Weighting Functions Design}
|
||||||
\label{sec:org7255223}
|
\label{sec:orgf11126f}
|
||||||
\label{sec:hinf_weighting_func}
|
\label{sec:hinf_weighting_func}
|
||||||
|
|
||||||
Weighting functions are used during the synthesis to specify the maximum allowed norms of the complementary filters.
|
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}
|
\end{figure}
|
||||||
|
|
||||||
\subsection{Validation of the proposed synthesis method}
|
\subsection{Validation of the proposed synthesis method}
|
||||||
\label{sec:orgca261f8}
|
\label{sec:org254cb4b}
|
||||||
\label{sec:hinf_example}
|
\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:
|
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.
|
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}
|
\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}
|
\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}.
|
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.
|
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.
|
In this section, the effectiveness of the proposed complementary filter synthesis strategy is demonstrated on the same set of requirements.
|
||||||
\subsection{Complementary Filters Specifications}
|
\subsection{Complementary Filters Specifications}
|
||||||
\label{sec:org4c34a41}
|
\label{sec:orgf53acf5}
|
||||||
\label{sec:ligo_specifications}
|
\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}):
|
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}
|
\end{figure}
|
||||||
|
|
||||||
\subsection{Weighting Functions Design}
|
\subsection{Weighting Functions Design}
|
||||||
\label{sec:org2098436}
|
\label{sec:org4b996f7}
|
||||||
\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.
|
||||||
@ -551,7 +551,7 @@ The magnitudes of the weighting functions are shown in Fig.~\ref{fig:ligo_weight
|
|||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
||||||
\subsection{\(\mathcal{H}_\infty\) Synthesis of the complementary filters}
|
\subsection{\(\mathcal{H}_\infty\) Synthesis of the complementary filters}
|
||||||
\label{sec:org6f6d00c}
|
\label{sec:org64068df}
|
||||||
\label{sec:ligo_results}
|
\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}.
|
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}
|
\end{figure}
|
||||||
|
|
||||||
\section{Discussion}
|
\section{Discussion}
|
||||||
\label{sec:org268cb51}
|
\label{sec:org36bf100}
|
||||||
\label{sec:discussion}
|
\label{sec:discussion}
|
||||||
\subsection{``Closed-Loop'' complementary filters}
|
\subsection{``Closed-Loop'' complementary filters}
|
||||||
\label{sec:org5bce6c6}
|
\label{sec:org38ca6e5}
|
||||||
\label{sec:closed_loop_complementary_filters}
|
\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}.
|
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}.
|
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}
|
\end{figure}
|
||||||
|
|
||||||
\subsection{Synthesis of more than two Complementary Filters}
|
\subsection{Synthesis of more than two Complementary Filters}
|
||||||
\label{sec:org5cb9fba}
|
\label{sec:org16306e2}
|
||||||
\label{sec:hinf_three_comp_filters}
|
\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}.
|
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}
|
\end{equation}
|
||||||
|
|
||||||
\section{Conclusion}
|
\section{Conclusion}
|
||||||
\label{sec:org85a0b4e}
|
\label{sec:org05380ec}
|
||||||
\label{sec:conclusion}
|
\label{sec:conclusion}
|
||||||
|
|
||||||
Sensors measuring a physical quantities are always subject to limitations both in terms of bandwidth or accuracy.
|
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.
|
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}
|
\section*{Acknowledgment}
|
||||||
\label{sec:org5dd6e93}
|
\label{sec:orgcfbe3a3}
|
||||||
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.
|
||||||
This paper is based on a paper previously presented at the ICCMA conference~\cite{dehaeze19_compl_filter_shapin_using_synth}.
|
This paper is based on a paper previously presented at the ICCMA conference~\cite{dehaeze19_compl_filter_shapin_using_synth}.
|
||||||
|
|
||||||
\section*{Data Availability}
|
\section*{Data Availability}
|
||||||
\label{sec:orgabe6565}
|
\label{sec:orga0214e5}
|
||||||
Matlab \cite{matlab20} was used for this study.
|
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}.
|
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,
|
@misc{dehaeze21_new_method_desig_compl_filter_code,
|
||||||
author = {Thomas Dehaeze},
|
author = {Dehaeze, Thomas},
|
||||||
doi = {10.5281/zenodo.3894342},
|
doi = {10.5281/zenodo.5361943},
|
||||||
howpublished = {Source Code on Zonodo},
|
howpublished = {Source code on Zenodo},
|
||||||
month = 09,
|
month = sep,
|
||||||
title = {A New Method of Designing Complementary Filters for Sensor
|
title = {{A New Method of Designing Complementary Filters for Sensor
|
||||||
Fusion using $\mathcal{H}_\infty$ Synthesis},
|
Fusion Using the $\mathcal{H}_\infty$ Synthesis}},
|
||||||
year = 2021,
|
year = 2021,
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user