Rename paper files
98
journal/.latexmkrc
Normal file
@ -0,0 +1,98 @@
|
||||
#!/bin/env perl
|
||||
|
||||
# Shebang is only to get syntax highlighting right across GitLab, GitHub and IDEs.
|
||||
# This file is not meant to be run, but read by `latexmk`.
|
||||
|
||||
# ======================================================================================
|
||||
# Perl `latexmk` configuration file
|
||||
# ======================================================================================
|
||||
|
||||
# ======================================================================================
|
||||
# PDF Generation/Building/Compilation
|
||||
# ======================================================================================
|
||||
|
||||
@default_files=('dehaeze22_optim_robus_compl_filte.tex');
|
||||
|
||||
# PDF-generating modes are:
|
||||
# 1: pdflatex, as specified by $pdflatex variable (still largely in use)
|
||||
# 2: postscript conversion, as specified by the $ps2pdf variable (useless)
|
||||
# 3: dvi conversion, as specified by the $dvipdf variable (useless)
|
||||
# 4: lualatex, as specified by the $lualatex variable (best)
|
||||
# 5: xelatex, as specified by the $xelatex variable (second best)
|
||||
$pdf_mode = 1;
|
||||
|
||||
# Treat undefined references and citations as well as multiply defined references as
|
||||
# ERRORS instead of WARNINGS.
|
||||
# This is only checked in the *last* run, since naturally, there are undefined references
|
||||
# in initial runs.
|
||||
# This setting is potentially annoying when debugging/editing, but highly desirable
|
||||
# in the CI pipeline, where such a warning should result in a failed pipeline, since the
|
||||
# final document is incomplete/corrupted.
|
||||
#
|
||||
# However, I could not eradicate all warnings, so that `latexmk` currently fails with
|
||||
# this option enabled.
|
||||
# Specifically, `microtype` fails together with `fontawesome`/`fontawesome5`, see:
|
||||
# https://tex.stackexchange.com/a/547514/120853
|
||||
# The fix in that answer did not help.
|
||||
# Setting `verbose=silent` to mute `microtype` warnings did not work.
|
||||
# Switching between `fontawesome` and `fontawesome5` did not help.
|
||||
$warnings_as_errors = 0;
|
||||
|
||||
# Show used CPU time. Looks like: https://tex.stackexchange.com/a/312224/120853
|
||||
$show_time = 1;
|
||||
|
||||
# Default is 5; we seem to need more owed to the complexity of the document.
|
||||
# Actual documents probably don't need this many since they won't use all features,
|
||||
# plus won't be compiling from cold each time.
|
||||
$max_repeat=7;
|
||||
|
||||
# --shell-escape option (execution of code outside of latex) is required for the
|
||||
#'svg' package.
|
||||
# It converts raw SVG files to the PDF+PDF_TEX combo using InkScape.
|
||||
#
|
||||
# SyncTeX allows to jump between source (code) and output (PDF) in IDEs with support
|
||||
# (many have it). A value of `1` is enabled (gzipped), `-1` is enabled but uncompressed,
|
||||
# `0` is off.
|
||||
# Testing in VSCode w/ LaTeX Workshop only worked for the compressed version.
|
||||
# Adjust this as needed. Of course, only relevant for local use, no effect on a remote
|
||||
# CI pipeline (except for slower compilation, probably).
|
||||
#
|
||||
# %O and %S will forward Options and the Source file, respectively, given to latexmk.
|
||||
#
|
||||
# `set_tex_cmds` applies to all *latex commands (latex, xelatex, lualatex, ...), so
|
||||
# no need to specify these each. This allows to simply change `$pdf_mode` to get a
|
||||
# different engine. Check if this works with `latexmk --commands`.
|
||||
set_tex_cmds("--shell-escape -interaction=nonstopmode --synctex=1 %O %S");
|
||||
|
||||
# Use default pdf viewer
|
||||
$pdf_previewer = 'zathura';
|
||||
|
||||
# option 2 is same as 1 (run biber when necessary), but also deletes the
|
||||
# regeneratable bbl-file in a clenaup (`latexmk -c`). Do not use if original
|
||||
# bib file is not available!
|
||||
$bibtex_use = 1; # default: 1
|
||||
|
||||
# Change default `biber` call, help catch errors faster/clearer. See
|
||||
# https://web.archive.org/web/20200526101657/https://www.semipol.de/2018/06/12/latex-best-practices.html#database-entries
|
||||
$bibtex = "bibtex %S";
|
||||
|
||||
# ======================================================================================
|
||||
# Auxiliary Files
|
||||
# ======================================================================================
|
||||
|
||||
# Let latexmk know about generated files, so they can be used to detect if a
|
||||
# rerun is required, or be deleted in a cleanup.
|
||||
# loe: List of Examples (KOMAScript)
|
||||
# lol: List of Listings (`listings` and `minted` packages)
|
||||
# run.xml: biber runs
|
||||
# glg: glossaries log
|
||||
# glstex: generated from glossaries-extra
|
||||
push @generated_exts, 'loe', 'lol', 'run.xml', 'glg', 'glstex';
|
||||
|
||||
# Also delete the *.glstex files from package glossaries-extra. Problem is,
|
||||
# that that package generates files of the form "basename-digit.glstex" if
|
||||
# multiple glossaries are present. Latexmk looks for "basename.glstex" and so
|
||||
# does not find those. For that purpose, use wildcard.
|
||||
# Also delete files generated by gnuplot/pgfplots contour plots
|
||||
# (.dat, .script, .table).
|
||||
$clean_ext = "%R-*.glstex %R_contourtmp*.*";
|
@ -1,7 +1,7 @@
|
||||
#+TITLE: Optimal and Robust Sensor Fusion
|
||||
:DRAWER:
|
||||
#+LATEX_CLASS: IEEEtran
|
||||
#+LATEX_CLASS_OPTIONS: [conference]
|
||||
#+LATEX_CLASS_OPTIONS: [10pt,final,journal,a4paper]
|
||||
#+OPTIONS: toc:nil todo:nil
|
||||
#+STARTUP: overview
|
||||
|
||||
@ -45,40 +45,44 @@
|
||||
#+LATEX_HEADER_EXTRA: \usepackage{showframe}
|
||||
|
||||
#+LATEX_HEADER: \def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
|
||||
|
||||
\bibliographystyle{IEEEtran}
|
||||
:END:
|
||||
|
||||
* LaTeX Config :noexport:
|
||||
#+begin_src latex :tangle config.tex
|
||||
#+end_src
|
||||
|
||||
* Build :noexport:
|
||||
#+NAME: startblock
|
||||
#+BEGIN_SRC emacs-lisp :results none
|
||||
(add-to-list 'org-latex-classes
|
||||
'("IEEEtran"
|
||||
"\\documentclass{IEEEtran}"
|
||||
("\\section{%s}" . "\\section*{%s}")
|
||||
("\\subsection{%s}" . "\\subsection*{%s}")
|
||||
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
|
||||
("\\paragraph{%s}" . "\\paragraph*{%s}")
|
||||
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
|
||||
)
|
||||
(add-to-list 'org-latex-classes
|
||||
'("IEEEtran"
|
||||
"\\documentclass{IEEEtran}"
|
||||
("\\section{%s}" . "\\section*{%s}")
|
||||
("\\subsection{%s}" . "\\subsection*{%s}")
|
||||
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
|
||||
("\\paragraph{%s}" . "\\paragraph*{%s}")
|
||||
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
|
||||
)
|
||||
|
||||
(defun delete-org-comments (backend)
|
||||
(loop for comment in (reverse (org-element-map (org-element-parse-buffer)
|
||||
'comment 'identity))
|
||||
do
|
||||
(setf (buffer-substring (org-element-property :begin comment)
|
||||
(org-element-property :end comment))
|
||||
"")))
|
||||
;; Remove automatic org headings
|
||||
(defun my-latex-filter-removeOrgAutoLabels (text backend info)
|
||||
"Org-mode automatically generates labels for headings despite explicit use of `#+LABEL`. This filter forcibly removes all automatically generated org-labels in headings."
|
||||
(when (org-export-derived-backend-p backend 'latex)
|
||||
(replace-regexp-in-string "\\\\label{sec:org[a-f0-9]+}\n" "" text)))
|
||||
|
||||
;; add to export hook
|
||||
(add-hook 'org-export-before-processing-hook 'delete-org-comments)
|
||||
(add-to-list 'org-export-filter-headline-functions
|
||||
'my-latex-filter-removeOrgAutoLabels)
|
||||
|
||||
;; Remove hypersetup
|
||||
(setq org-latex-with-hyperref nil)
|
||||
;; Automatic delete org org-comments
|
||||
(defun delete-org-comments (backend)
|
||||
(loop for comment in (reverse (org-element-map (org-element-parse-buffer)
|
||||
'comment 'identity))
|
||||
do
|
||||
(setf (buffer-substring (org-element-property :begin comment)
|
||||
(org-element-property :end comment))
|
||||
"")))
|
||||
|
||||
;; add to export hook
|
||||
(add-hook 'org-export-before-processing-hook 'delete-org-comments)
|
||||
|
||||
;; Remove hypersetup
|
||||
(setq org-latex-with-hyperref nil)
|
||||
#+END_SRC
|
||||
|
||||
* Abstract :ignore:
|
||||
@ -94,6 +98,8 @@
|
||||
* Introduction
|
||||
<<sec:introduction>>
|
||||
|
||||
cite:mahony08_nonlin_compl_filter_special_orthog_group
|
||||
|
||||
- Section ref:sec:optimal_fusion
|
||||
- Section ref:sec:robust_fusion
|
||||
- Section ref:sec:optimal_robust_fusion
|
||||
@ -518,4 +524,10 @@ The synthesis objective is to:
|
||||
* Acknowledgment
|
||||
|
||||
* Bibliography :ignore:
|
||||
\bibliographystyle{IEEEtran}
|
||||
\bibliography{ref}
|
||||
|
||||
* Local Variables :noexport:
|
||||
# Local Variables:
|
||||
# org-latex-packages-alist: nil
|
||||
# End:
|
@ -1,6 +1,6 @@
|
||||
% Created 2020-10-26 lun. 18:25
|
||||
% Created 2021-09-10 ven. 10:25
|
||||
% Intended LaTeX compiler: pdflatex
|
||||
\documentclass[conference]{IEEEtran}
|
||||
\documentclass[final,journal,a4paper]{IEEEtran}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{graphicx}
|
||||
@ -14,12 +14,6 @@
|
||||
\usepackage{amssymb}
|
||||
\usepackage{capt-of}
|
||||
\usepackage{hyperref}
|
||||
\usepackage[most]{tcolorbox}
|
||||
\usepackage{bm}
|
||||
\usepackage{booktabs}
|
||||
\usepackage{tabularx}
|
||||
\usepackage{array}
|
||||
\usepackage{siunitx}
|
||||
\IEEEoverridecommandlockouts
|
||||
\usepackage{cite}
|
||||
\usepackage{amsmath,amssymb,amsfonts}
|
||||
@ -35,7 +29,7 @@
|
||||
\def\BibTeX{{\rm B\kern-.05em{\sc i\kern-.025em b}\kern-.08em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
|
||||
\usepackage{showframe}
|
||||
\author{\IEEEauthorblockN{Dehaeze Thomas} \IEEEauthorblockA{\textit{European Synchrotron Radiation Facility} \\ Grenoble, France\\ \textit{Precision Mechatronics Laboratory} \\ \textit{University of Liege}, Belgium \\ thomas.dehaeze@esrf.fr }\and \IEEEauthorblockN{Verma Mohit} \IEEEauthorblockA{\textit{BEAMS Department}\\ \textit{Free University of Brussels}, Belgium\\ \textit{Precision Mechatronics Laboratory} \\ \textit{University of Liege}, Belgium \\ mohitverma.serc@csir.res.in }\and \IEEEauthorblockN{Collette Christophe} \IEEEauthorblockA{\textit{BEAMS Department}\\ \textit{Free University of Brussels}, Belgium\\ \textit{Precision Mechatronics Laboratory} \\ \textit{University of Liege}, Belgium \\ ccollett@ulb.ac.be }}
|
||||
\date{2020-10-26}
|
||||
\date{2021-09-10}
|
||||
\title{Optimal and Robust Sensor Fusion}
|
||||
\begin{document}
|
||||
|
||||
@ -50,9 +44,10 @@ Complementary Filters, Sensor Fusion, H-Infinity Synthesis
|
||||
\end{IEEEkeywords}
|
||||
|
||||
\section{Introduction}
|
||||
\label{sec:org2820158}
|
||||
\label{sec:introduction}
|
||||
|
||||
\cite{mahony08_nonlin_compl_filter_special_orthog_group}
|
||||
|
||||
\begin{itemize}
|
||||
\item Section \ref{sec:optimal_fusion}
|
||||
\item Section \ref{sec:robust_fusion}
|
||||
@ -61,11 +56,9 @@ Complementary Filters, Sensor Fusion, H-Infinity Synthesis
|
||||
\end{itemize}
|
||||
|
||||
\section{Optimal Super Sensor Noise: \(\mathcal{H}_2\) Synthesis}
|
||||
\label{sec:org2513ad9}
|
||||
\label{sec:optimal_fusion}
|
||||
|
||||
\subsection{Sensor Model}
|
||||
\label{sec:orgbcc6cb6}
|
||||
Let's consider a sensor measuring a physical quantity \(x\) (Figure \ref{fig:sensor_model_noise}).
|
||||
The sensor has an internal dynamics which is here modelled with a Linear Time Invariant (LTI) system transfer function \(G_i(s)\).
|
||||
|
||||
@ -96,19 +89,18 @@ In order to obtain an estimate \(\hat{x}_i\) of \(x\), a model \(\hat{G}_i\) of
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensor_model_noise.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensor_model_noise.pdf}
|
||||
\caption{\label{fig:sensor_model_noise}Sensor Model}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Sensor Fusion Architecture}
|
||||
\label{sec:orgdb526ec}
|
||||
Let's now consider two sensors measuring the same physical quantity \(x\) but with different dynamics \((G_1, G_2)\) and noise characteristics \((N_1, N_2)\) (Figure \ref{fig:sensor_fusion_noise_arch}).
|
||||
|
||||
The noise sources \(\tilde{n}_1\) and \(\tilde{n}_2\) are considered to be uncorrelated.
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensor_fusion_noise_arch.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensor_fusion_noise_arch.pdf}
|
||||
\caption{\label{fig:sensor_fusion_noise_arch}Sensor Fusion Architecture with sensor noise}
|
||||
\end{figure}
|
||||
|
||||
@ -138,7 +130,6 @@ In such case, the super sensor estimate \(\hat{x}\) is equal to \(x\) plus the n
|
||||
\end{equation}
|
||||
|
||||
\subsection{Super Sensor Noise}
|
||||
\label{sec:org48c0d52}
|
||||
Let's note \(n\) the super sensor noise.
|
||||
\begin{equation}
|
||||
n = \left( H_1 N_1 \right) \tilde{n}_1 + \left( H_2 N_2 \right) \tilde{n}_2
|
||||
@ -152,7 +143,6 @@ As the noise of both sensors are considered to be uncorrelated, the PSD of the s
|
||||
It is clear that the PSD of the super sensor depends on the norm of the complementary filters.
|
||||
|
||||
\subsection{\(\mathcal{H}_2\) Synthesis of Complementary Filters}
|
||||
\label{sec:org0d9384e}
|
||||
The goal is to design \(H_1(s)\) and \(H_2(s)\) such that the effect of the noise sources \(\tilde{n}_1\) and \(\tilde{n}_2\) has the smallest possible effect on the noise \(n\) of the estimation \(\hat{x}\).
|
||||
|
||||
And the goal is the minimize the Root Mean Square (RMS) value of \(n\):
|
||||
@ -191,67 +181,63 @@ We then have that the \(\mathcal{H}_2\) synthesis applied on \(P_{\mathcal{H}_2}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/h_two_optimal_fusion.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/h_two_optimal_fusion.pdf}
|
||||
\caption{\label{fig:h_two_optimal_fusion}Generalized plant \(P_{\mathcal{H}_2}\) used for the \(\mathcal{H}_2\) synthesis of complementary filters}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Example}
|
||||
\label{sec:org99002de}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensors_nominal_dynamics.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensors_nominal_dynamics.pdf}
|
||||
\caption{\label{fig:sensors_nominal_dynamics}Sensor nominal dynamics from the velocity of the object to the output voltage}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensors_noise.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensors_noise.pdf}
|
||||
\caption{\label{fig:sensors_noise}Amplitude spectral density of the sensors \(\sqrt{\Phi_{n_i}(\omega)} = |N_i(j\omega)|\)}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/htwo_comp_filters.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/htwo_comp_filters.pdf}
|
||||
\caption{\label{fig:htwo_comp_filters}Obtained complementary filters using the \(\mathcal{H}_2\) Synthesis}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/psd_sensors_htwo_synthesis.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/psd_sensors_htwo_synthesis.pdf}
|
||||
\caption{\label{fig:psd_sensors_htwo_synthesis}Power Spectral Density of the estimated \(\hat{x}\) using the two sensors alone and using the optimally fused signal}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/super_sensor_time_domain_h2.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/super_sensor_time_domain_h2.pdf}
|
||||
\caption{\label{fig:super_sensor_time_domain_h2}Noise of individual sensors and noise of the super sensor}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Robustness Problem}
|
||||
\label{sec:org262893f}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensors_nominal_dynamics_and_uncertainty.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensors_nominal_dynamics_and_uncertainty.pdf}
|
||||
\caption{\label{fig:sensors_nominal_dynamics_and_uncertainty}Nominal Sensor Dynamics \(\hat{G}_i\) (solid lines) as well as the spread of the dynamical uncertainty (background color)}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/super_sensor_dynamical_uncertainty_H2.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/super_sensor_dynamical_uncertainty_H2.pdf}
|
||||
\caption{\label{fig:super_sensor_dynamical_uncertainty_H2}Super sensor dynamical uncertainty when using the \(\mathcal{H}_2\) Synthesis}
|
||||
\end{figure}
|
||||
|
||||
\section{Robust Sensor Fusion: \(\mathcal{H}_\infty\) Synthesis}
|
||||
\label{sec:org7c9047e}
|
||||
\label{sec:robust_fusion}
|
||||
|
||||
\subsection{Representation of Sensor Dynamical Uncertainty}
|
||||
\label{sec:org7bd4379}
|
||||
|
||||
In Section \ref{sec:optimal_fusion}, the model \(\hat{G}_i(s)\) of the sensor was considered to be perfect.
|
||||
In reality, there are always uncertainty (neglected dynamics) associated with the estimation of the sensor dynamics.
|
||||
@ -266,12 +252,11 @@ The sensor can then be represented as shown in Figure \ref{fig:sensor_model_unce
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensor_model_uncertainty.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensor_model_uncertainty.pdf}
|
||||
\caption{\label{fig:sensor_model_uncertainty}Sensor Model including Dynamical Uncertainty}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Sensor Fusion Architecture}
|
||||
\label{sec:org0b8ce2b}
|
||||
Let's consider the sensor fusion architecture shown in Figure \ref{fig:sensor_fusion_arch_uncertainty} where the dynamical uncertainties of both sensors are included.
|
||||
|
||||
The super sensor estimate is then:
|
||||
@ -291,12 +276,11 @@ As \(H_1\) and \(H_2\) are complementary filters, we finally have:
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensor_fusion_arch_uncertainty.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensor_fusion_arch_uncertainty.pdf}
|
||||
\caption{\label{fig:sensor_fusion_arch_uncertainty}Sensor Fusion Architecture with sensor model uncertainty}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Super Sensor Dynamical Uncertainty}
|
||||
\label{sec:org725af92}
|
||||
The uncertainty set of the transfer function from \(\hat{x}\) to \(x\) at frequency \(\omega\) is bounded in the complex plane by a circle centered on 1 and 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}.
|
||||
|
||||
|
||||
@ -304,14 +288,13 @@ And we can see that the dynamical uncertainty of the super sensor is equal to th
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/uncertainty_set_super_sensor.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/uncertainty_set_super_sensor.pdf}
|
||||
\caption{\label{fig:uncertainty_set_super_sensor}Super Sensor model uncertainty displayed in the complex plane}
|
||||
\end{figure}
|
||||
|
||||
At frequencies where \(\left|W_i(j\omega)\right| > 1\) the uncertainty exceeds \(100\%\) and sensor fusion is impossible.
|
||||
|
||||
\subsection{\(\mathcal{H_\infty}\) Synthesis of Complementary Filters}
|
||||
\label{sec:org941ed72}
|
||||
In order for the fusion to be ``robust'', meaning no phase drop will be induced in the super sensor dynamics,
|
||||
|
||||
The goal is to design two complementary filters \(H_1(s)\) and \(H_2(s)\) such that the super sensor noise uncertainty is kept reasonably small.
|
||||
@ -352,51 +335,48 @@ The \(\mathcal{H}_\infty\) norm of Eq. \eqref{eq:Hinf_norm} is equals to \(\sigm
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/h_infinity_robust_fusion.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/h_infinity_robust_fusion.pdf}
|
||||
\caption{\label{fig:h_infinity_robust_fusion}Generalized plant \(P_{\mathcal{H}_\infty}\) used for the \(\mathcal{H}_\infty\) synthesis of complementary filters}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Example}
|
||||
\label{sec:org7df520f}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensors_uncertainty_weights.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensors_uncertainty_weights.pdf}
|
||||
\caption{\label{fig:sensors_uncertainty_weights}Magnitude of the multiplicative uncertainty weights \(|W_i(j\omega)|\)}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/weight_uncertainty_bounds_Wu.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/weight_uncertainty_bounds_Wu.pdf}
|
||||
\caption{\label{fig:weight_uncertainty_bounds_Wu}Uncertainty region of the two sensors as well as the wanted maximum uncertainty of the super sensor (dashed lines)}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/hinf_comp_filters.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/hinf_comp_filters.pdf}
|
||||
\caption{\label{fig:hinf_comp_filters}Obtained complementary filters using the \(\mathcal{H}_\infty\) Synthesis}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/super_sensor_dynamical_uncertainty_Hinf.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/super_sensor_dynamical_uncertainty_Hinf.pdf}
|
||||
\caption{\label{fig:super_sensor_dynamical_uncertainty_Hinf}Super sensor dynamical uncertainty (solid curve) when using the \(\mathcal{H}_\infty\) Synthesis}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/psd_sensors_hinf_synthesis.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/psd_sensors_hinf_synthesis.pdf}
|
||||
\caption{\label{fig:psd_sensors_hinf_synthesis}Power Spectral Density of the estimated \(\hat{x}\) using the two sensors alone and using the \(\mathcal{H}_\infty\) synthesis}
|
||||
\end{figure}
|
||||
|
||||
|
||||
\section{Optimal and Robust Sensor Fusion: Mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) Synthesis}
|
||||
\label{sec:org75a038a}
|
||||
\label{sec:optimal_robust_fusion}
|
||||
|
||||
\subsection{Sensor with noise and model uncertainty}
|
||||
\label{sec:org3810d6b}
|
||||
We wish now to combine the two previous synthesis, that is to say
|
||||
|
||||
The sensors are now modelled by a white noise with unitary PSD \(\tilde{n}_i\) shaped by a LTI transfer function \(N_i(s)\).
|
||||
@ -412,12 +392,11 @@ Multiplying by the inverse of the nominal model of the sensor dynamics gives an
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensor_model_noise_uncertainty.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensor_model_noise_uncertainty.pdf}
|
||||
\caption{\label{fig:sensor_model_noise_uncertainty}Sensor Model including Noise and Dynamical Uncertainty}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Sensor Fusion Architecture}
|
||||
\label{sec:org3758b1e}
|
||||
|
||||
For reason of space, the blocks \(\hat{G}_i\) and \(\hat{G}_i^{-1}\) are omitted.
|
||||
|
||||
@ -439,12 +418,11 @@ The estimate \(\hat{x}\) of \(x\)
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/sensor_fusion_arch_full.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/sensor_fusion_arch_full.pdf}
|
||||
\caption{\label{fig:sensor_fusion_arch_full}Super Sensor Fusion with both sensor noise and sensor model uncertainty}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) Synthesis}
|
||||
\label{sec:org06317f4}
|
||||
|
||||
The synthesis objective is to generate two complementary filters \(H_1(s)\) and \(H_2(s)\) such that the uncertainty associated with the super sensor is kept reasonably small and such that the RMS value of super sensors noise is minimized.
|
||||
|
||||
@ -474,59 +452,52 @@ The synthesis objective is to:
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/mixed_h2_hinf_synthesis.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/mixed_h2_hinf_synthesis.pdf}
|
||||
\caption{\label{fig:mixed_h2_hinf_synthesis}Generalized plant \(P_{\mathcal{H}_2/\matlcal{H}_\infty}\) used for the mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) synthesis of complementary filters}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Example}
|
||||
\label{sec:org42ee165}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/htwo_hinf_comp_filters.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/htwo_hinf_comp_filters.pdf}
|
||||
\caption{\label{fig:htwo_hinf_comp_filters}Obtained complementary filters after mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) synthesis}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/psd_sensors_htwo_hinf_synthesis.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/psd_sensors_htwo_hinf_synthesis.pdf}
|
||||
\caption{\label{fig:psd_sensors_htwo_hinf_synthesis}Power Spectral Density of the Super Sensor obtained with the mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) synthesis}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/super_sensor_time_domain_h2_hinf.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/super_sensor_time_domain_h2_hinf.pdf}
|
||||
\caption{\label{fig:super_sensor_time_domain_h2_hinf}Noise of individual sensors and noise of the super sensor}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=1]{figs/super_sensor_dynamical_uncertainty_Htwo_Hinf.pdf}
|
||||
\includegraphics[scale=1,scale=1]{figs/super_sensor_dynamical_uncertainty_Htwo_Hinf.pdf}
|
||||
\caption{\label{fig:super_sensor_dynamical_uncertainty_Htwo_Hinf}Super sensor dynamical uncertainty (solid curve) when using the mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) Synthesis}
|
||||
\end{figure}
|
||||
|
||||
\section{Experimental Validation}
|
||||
\label{sec:orge381a2a}
|
||||
\label{sec:experimental_validation}
|
||||
|
||||
\subsection{Experimental Setup}
|
||||
\label{sec:org473ab00}
|
||||
|
||||
\subsection{Sensor Noise and Dynamical Uncertainty}
|
||||
\label{sec:orgebcb65d}
|
||||
|
||||
\subsection{Mixed \(\mathcal{H}_2/\mathcal{H}_\infty\) Synthesis}
|
||||
\label{sec:org0259d19}
|
||||
|
||||
\subsection{Super Sensor Noise and Dynamical Uncertainty}
|
||||
\label{sec:orgdb5d29f}
|
||||
|
||||
\section{Conclusion}
|
||||
\label{sec:org07df454}
|
||||
\label{sec:conclusion}
|
||||
|
||||
\section{Acknowledgment}
|
||||
\label{sec:org7b7e461}
|
||||
|
||||
\bibliographystyle{IEEEtran}
|
||||
\bibliography{ref}
|
||||
\end{document}
|
BIN
journal/doc/IEEEtran_HOWTO.pdf
Normal file
BIN
journal/doc/IEEEtran_bst_HOWTO.pdf
Normal file
BIN
journal/doc/Transactions-instructions-only.pdf
Normal file
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
@ -1,28 +0,0 @@
|
||||
% H Infini
|
||||
\newcommand{\hinf}{\mathcal{H}_\infty}
|
||||
|
||||
% H 2
|
||||
\newcommand{\htwo}{\mathcal{H}_2}
|
||||
|
||||
% Omega
|
||||
\newcommand{\w}{\omega}
|
||||
|
||||
% H-Infinity Norm
|
||||
\newcommand{\hnorm}[1]{\left\|#1\right\|_{\infty}}
|
||||
|
||||
% H-2 Norm
|
||||
\newcommand{\normtwo}[1]{\left\|#1\right\|_{2}}
|
||||
|
||||
% Norm
|
||||
\newcommand{\norm}[1]{\left\|#1\right\|}
|
||||
|
||||
% Absolute value
|
||||
\newcommand{\abs}[1]{\left\lvert #1 \right\lvert}
|
||||
|
||||
% Minimum Subscript
|
||||
\newcommand{\smin}{_{\text{min}}}
|
||||
|
||||
% Maximum Subscript
|
||||
\newcommand{\smax}{_{\text{max}}}
|
||||
|
||||
\newcommand*\colvec[1]{\begin{bmatrix}#1\end{bmatrix}}
|