2019-08-14 12:08:30 +02:00
<?xml version="1.0" encoding="utf-8"?>
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en" xml:lang = "en" >
< head >
2020-08-17 17:56:29 +02:00
<!-- 2020 - 08 - 17 lun. 17:49 -->
2019-08-14 12:08:30 +02:00
< meta http-equiv = "Content-Type" content = "text/html;charset=utf-8" / >
2019-08-21 16:35:08 +02:00
< title > Robust and Optimal Sensor Fusion - Tikz Figures< / title >
2019-08-14 12:08:30 +02:00
< meta name = "generator" content = "Org mode" / >
< meta name = "author" content = "Thomas Dehaeze" / >
< link rel = "stylesheet" type = "text/css" href = "../css/htmlize.css" / >
< link rel = "stylesheet" type = "text/css" href = "../css/readtheorg.css" / >
< script src = "../js/jquery.min.js" > < / script >
< script src = "../js/bootstrap.min.js" > < / script >
< script src = "../js/jquery.stickytableheaders.min.js" > < / script >
< script src = "../js/readtheorg.js" > < / script >
2020-08-17 17:56:29 +02:00
< script > M a t h J a x = {
tex: {
tags: 'ams',
macros: {bm: ["\\boldsymbol{#1}",1],}
}
};
< / script >
< script type = "text/javascript" src = "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js" > < / script >
2019-08-14 12:08:30 +02:00
< / head >
< body >
< div id = "org-div-home-and-up" >
< a accesskey = "h" href = "../index.html" > UP < / a >
|
< a accesskey = "H" href = "../index.html" > HOME < / a >
< / div > < div id = "content" >
2019-08-21 16:35:08 +02:00
< h1 class = "title" > Robust and Optimal Sensor Fusion - Tikz Figures< / h1 >
2019-08-14 12:08:30 +02:00
< div id = "table-of-contents" >
< h2 > Table of Contents< / h2 >
< div id = "text-table-of-contents" >
< ul >
2020-08-17 17:56:29 +02:00
< li > < a href = "#org4e2a932" > 1. Sensor Fusion Architecture< / a > < / li >
< li > < a href = "#org1353381" > 2. Architecture used for \(\mathcal{H}_2\) synthesis of complementary filters< / a > < / li >
< li > < a href = "#org1189340" > 3. Sensor fusion architecture with sensor dynamics uncertainty< / a > < / li >
< li > < a href = "#org635364c" > 4. Uncertainty set of the super sensor dynamics< / a > < / li >
< li > < a href = "#org8471952" > 5. Architecture used for \(\mathcal{H}_\infty\) synthesis of complementary filters< / a > < / li >
< li > < a href = "#orgd2abe63" > 6. Sensor fusion architecture with sensor dynamics uncertainty and noise< / a > < / li >
< li > < a href = "#org25fbe7c" > 7. Mixed H2/H-Infinity Synthesis< / a > < / li >
2019-08-14 12:08:30 +02:00
< / ul >
< / div >
< / div >
< p >
Configuration file is accessible < a href = "config.html" > here< / a > .
< / p >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-org4e2a932" class = "outline-2" >
< h2 id = "org4e2a932" > < span class = "section-number-2" > 1< / span > Sensor Fusion Architecture< / h2 >
2019-08-14 12:08:30 +02:00
< div class = "outline-text-2" id = "text-1" >
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\node[branch] (x) at (0, 0);
\node[block, above right=1.0 and 0.5 of x](G1){$G_1(s)$};
\node[block, below right=1.0 and 0.5 of x](G2){$G_2(s)$};
\node[addb, right=0.4 of G1](add1){};
\node[addb, right=0.4 of G2](add2){};
\node[block, right=1.1 of add1](H1){$H_1(s)$};
\node[block, right=1.1 of add2](H2){$H_2(s)$};
\node[block, above=0.5 of add1](N1){$N_1(s)$};
\node[block, above=0.5 of add2](N2){$N_2(s)$};
\node[addb, right=4.8 of x](add){};
\draw[] ($(x)+(-0.7, 0)$) node[above right]{$x$} -- (x.center);
\draw[-> ] (x.center) |- (G1.west);
\draw[-> ] (x.center) |- (G2.west);
\draw[-> ] (G1.east) -- (add1.west);
\draw[-> ] (G2.east) -- (add2.west);
\draw[-> ] (N1.south) -- (add1.north)node[above right]{$n_1$};
\draw[-> ] (N2.south) -- (add2.north)node[above right]{$n_2$};
\draw[< -] (N1.north) -- ++(0, 0.6)node[below right](n1){$\tilde{n}_1$};
\draw[< -] (N2.north) -- ++(0, 0.6)node[below right](n2){$\tilde{n}_2$};
\draw[-> ] (add1.east) -- (H1.west)node[above left]{$\hat{x}_1$};
\draw[-> ] (add2.east) -- (H2.west)node[above left]{$\hat{x}_2$};
\draw[-> ] (H1) -| (add.north);
\draw[-> ] (H2) -| (add.south);
\draw[-> ] (add.east) -- ++(0.7, 0) node[above left]{$\hat{x}$};
\begin{scope}[on background layer]
\node[fit={($(G2.south-|x)+(-0.2, -0.3)$) ($(n1.north east-|add.east)+(0.2, 0.3)$)}, fill=black!10!white, draw, dashed, inner sep=0pt] (supersensor) {};
\node[below left] at (supersensor.north east) {Super Sensor};
\node[fit={($(G1.south west)+(-0.3, -0.1)$) ($(n1.north east)+(0.1, 0.1)$)}, fill=black!20!white, draw, dashed, inner sep=0pt] (sensor1) {};
\node[below right] at (sensor1.north west) {Sensor 1};
\node[fit={($(G2.south west)+(-0.3, -0.1)$) ($(n2.north east)+(0.1, 0.1)$)}, fill=black!20!white, draw, dashed, inner sep=0pt] (sensor2) {};
\node[below right] at (sensor2.north west) {Sensor 2};
\end{scope}
\end{tikzpicture}
2019-08-14 12:08:30 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "orge2c7af4" class = "figure" >
< p > < img src = "figs/sensor_fusion_noise_arch.png" alt = "sensor_fusion_noise_arch.png" / >
2019-08-14 12:08:30 +02:00
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 1: < / span > Sensor Fusion Architecture (< a href = "./figs/sensor_fusion_noise_arch.png" > png< / a > , < a href = "./figs/sensor_fusion_noise_arch.pdf" > pdf< / a > ).< / p >
2019-08-14 12:08:30 +02:00
< / div >
< / div >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-org1353381" class = "outline-2" >
< h2 id = "org1353381" > < span class = "section-number-2" > 2< / span > Architecture used for \(\mathcal{H}_2\) synthesis of complementary filters< / h2 >
< div class = "outline-text-2" id = "text-2" >
2019-08-14 12:08:30 +02:00
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\node[block={4.0cm}{2.5cm}, fill=black!20!white, dashed] (P) {};
\node[above] at (P.north) {$P(s)$};
\coordinate[] (inputw) at ($(P.south west)!0.75!(P.north west) + (-0.7, 0)$);
\coordinate[] (inputu) at ($(P.south west)!0.35!(P.north west) + (-0.7, 0)$);
\coordinate[] (output1) at ($(P.south east)!0.75!(P.north east) + ( 0.7, 0)$);
\coordinate[] (output2) at ($(P.south east)!0.35!(P.north east) + ( 0.7, 0)$);
\coordinate[] (outputv) at ($(P.south east)!0.1!(P.north east) + ( 0.7, 0)$);
\node[block, left=1.4 of output1] (N1){$N_1(s)$};
\node[block, left=1.4 of output2] (N2){$N_2(s)$};
\node[addb={+}{}{}{}{-}, left=of N1] (sub) {};
\node[block, below=0.3 of P] (H2) {$H_2(s)$};
\draw[-> ] (inputw) node[above right]{$w$} -- (sub.west);
\draw[-> ] (H2.west) -| ($(inputu)+(0.35, 0)$) node[above]{$u$} -- (N2.west);
\draw[-> ] (inputu-|sub) node[branch]{} -- (sub.south);
\draw[-> ] (sub.east) -- (N1.west);
\draw[-> ] ($(sub.west)+(-0.6, 0)$) node[branch]{} |- ($(outputv)+(-0.35, 0)$) node[above]{$v$} |- (H2.east);
\draw[-> ] (N1.east) -- (output1)node[above left]{$z_1$};
\draw[-> ] (N2.east) -- (output2)node[above left]{$z_2$};
\end{tikzpicture}
2019-08-14 12:08:30 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "org8ddefad" class = "figure" >
< p > < img src = "figs/h_two_optimal_fusion.png" alt = "h_two_optimal_fusion.png" / >
2019-08-14 12:08:30 +02:00
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 2: < / span > Architecture used for \(\mathcal{H}_\infty\) synthesis of complementary filters (< a href = "./figs/h_two_optimal_fusion.png" > png< / a > , < a href = "./figs/h_two_optimal_fusion.pdf" > pdf< / a > ).< / p >
2019-08-14 12:08:30 +02:00
< / div >
< / div >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-org1189340" class = "outline-2" >
< h2 id = "org1189340" > < span class = "section-number-2" > 3< / span > Sensor fusion architecture with sensor dynamics uncertainty< / h2 >
< div class = "outline-text-2" id = "text-3" >
2019-08-14 12:08:30 +02:00
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\node[branch] (x) at (0, 0);
\node[addb, above right=0.8 and 4 of x](add1){};
\node[addb, below right=0.8 and 4 of x](add2){};
\node[block, above left=0.2 and 0.1 of add1](delta1){$\Delta_1(s)$};
\node[block, above left=0.2 and 0.1 of add2](delta2){$\Delta_2(s)$};
\node[block, left=0.5 of delta1](W1){$w_1(s)$};
\node[block, left=0.5 of delta2](W2){$w_2(s)$};
\node[block, right=0.5 of add1](H1){$H_1(s)$};
\node[block, right=0.5 of add2](H2){$H_2(s)$};
\node[addb, right=6 of x](add){};
\draw[] ($(x)+(-0.7, 0)$) node[above right]{$x$} -- (x.center);
\draw[-> ] (x.center) |- (add1.west);
\draw[-> ] (x.center) |- (add2.west);
\draw[-> ] ($(add1-|W1.west)+(-0.5, 0)$)node[branch](S1){} |- (W1.west);
\draw[-> ] ($(add2-|W2.west)+(-0.5, 0)$)node[branch](S1){} |- (W2.west);
\draw[-> ] (W1.east) -- (delta1.west);
\draw[-> ] (W2.east) -- (delta2.west);
\draw[-> ] (delta1.east) -| (add1.north);
\draw[-> ] (delta2.east) -| (add2.north);
\draw[-> ] (add1.east) -- (H1.west);
\draw[-> ] (add2.east) -- (H2.west);
\draw[-> ] (H1.east) -| (add.north);
\draw[-> ] (H2.east) -| (add.south);
\draw[-> ] (add.east) -- ++(0.7, 0) node[above left]{$\hat{x}$};
\begin{scope}[on background layer]
\node[fit={($(H2.south-|x)+(-0.2, -0.3)$) ($(delta1.north east-|add.east)+(0.2, 0.4)$)}, fill=black!10!white, draw, dashed, inner sep=0pt] (supersensor) {};
\node[below left] at (supersensor.north east) {Super Sensor};
\node[block, fit={($(W1.north-|S1)+(-0.2, 0.2)$) ($(add1.south east)+(0.2, -0.3)$)}, fill=black!20!white, dashed, inner sep=0pt] (sensor1) {};
\node[above right] at (sensor1.south west) {Sensor 1};
\node[block, fit={($(W2.north-|S1)+(-0.2, 0.2)$) ($(add2.south east)+(0.2, -0.3)$)}, fill=black!20!white, dashed, inner sep=0pt] (sensor2) {};
\node[above right] at (sensor2.south west) {Sensor 2};
\end{scope}
\end{tikzpicture}
2019-08-14 12:08:30 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "org6316ce9" class = "figure" >
< p > < img src = "figs/sensor_fusion_arch_uncertainty.png" alt = "sensor_fusion_arch_uncertainty.png" / >
2019-08-14 12:08:30 +02:00
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 3: < / span > Sensor fusion architecture with sensor dynamics uncertainty (< a href = "./figs/sensor_fusion_arch_uncertainty.png" > png< / a > , < a href = "./figs/sensor_fusion_arch_uncertainty.pdf" > pdf< / a > ).< / p >
2019-08-14 12:08:30 +02:00
< / div >
< / div >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-org635364c" class = "outline-2" >
< h2 id = "org635364c" > < span class = "section-number-2" > 4< / span > Uncertainty set of the super sensor dynamics< / h2 >
< div class = "outline-text-2" id = "text-4" >
2019-08-14 12:08:30 +02:00
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\begin{scope}[shift={(4, 0)}]
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
% Uncertainty Circle
\node[draw, circle, fill=black!20!white, minimum size=3.6cm] (c) at (0, 0) {};
\path[draw, dotted] (0, 0) circle [radius=1.0];
\path[draw, dashed] (135:1.0) circle [radius=0.8];
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
% Center of Circle
\node[below] at (0, 0){$1$};
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
\draw[< -> , dashed] (0, 0) node[branch]{} -- coordinate[midway](r1) ++(45:1.0);
\draw[< -> , dashed] (135:1.0)node[branch]{} -- coordinate[midway](r2) ++(90:0.8);
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
\node[] (l1) at (2, 1.5) {$|w_1 H_1|$};
\draw[-> , dashed, out=-90, in=0] (l1.south) to (r1);
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
\node[] (l2) at (-2.5, 1.5) {$|w_2 H_2|$};
\draw[-> , dashed, out=0, in=-180] (l2.east) to (r2);
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
\draw[< -> , dashed] (0, 0) -- coordinate[near end](r3) ++(200:1.8);
\node[] (l3) at (-2.5, -1.5) {$|w_1 H_1| + |w_2 H_2|$};
\draw[-> , dashed, out=90, in=-90] (l3.north) to (r3);
\end{scope}
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
% Real and Imaginary Axis
\draw[-> ] (-0.5, 0) -- (7.0, 0) node[below left]{Re};
\draw[-> ] (0, -1.7) -- (0, 1.7) node[below left]{Im};
2019-08-14 12:08:30 +02:00
2020-08-17 17:56:29 +02:00
\draw[dashed] (0, 0) -- (tangent cs:node=c,point={(0, 0)},solution=2);
\draw[dashed] (1, 0) arc (0:28:1) node[midway, right]{$\Delta \phi$};
\end{tikzpicture}
2019-08-14 12:08:30 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "orgdf90733" class = "figure" >
< p > < img src = "figs/uncertainty_set_super_sensor.png" alt = "uncertainty_set_super_sensor.png" / >
2019-08-14 12:08:30 +02:00
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 4: < / span > Uncertainty region of the super sensor dynamics in the complex plane (solid circle), of the sensor 1 (dotted circle) and of the sensor 2 (dashed circle) (< a href = "./figs/uncertainty_set_super_sensor.png" > png< / a > , < a href = "./figs/uncertainty_set_super_sensor.pdf" > pdf< / a > ).< / p >
2019-08-14 12:08:30 +02:00
< / div >
< / div >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-org8471952" class = "outline-2" >
< h2 id = "org8471952" > < span class = "section-number-2" > 5< / span > Architecture used for \(\mathcal{H}_\infty\) synthesis of complementary filters< / h2 >
< div class = "outline-text-2" id = "text-5" >
2019-08-14 12:08:30 +02:00
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\node[block={4.0cm}{2.5cm}, fill=black!20!white, dashed] (P) {};
\node[above] at (P.north) {$P(s)$};
\coordinate[] (inputw) at ($(P.south west)!0.75!(P.north west) + (-0.7, 0)$);
\coordinate[] (inputu) at ($(P.south west)!0.35!(P.north west) + (-0.7, 0)$);
\coordinate[] (output1) at ($(P.south east)!0.75!(P.north east) + ( 0.7, 0)$);
\coordinate[] (output2) at ($(P.south east)!0.35!(P.north east) + ( 0.7, 0)$);
\coordinate[] (outputv) at ($(P.south east)!0.1!(P.north east) + ( 0.7, 0)$);
\node[block, left=1.4 of output1] (W1){$W_1(s)$};
\node[block, left=1.4 of output2] (W2){$W_2(s)$};
\node[addb={+}{}{}{}{-}, left=of W1] (sub) {};
\node[block, below=0.3 of P] (H2) {$H_2(s)$};
\draw[-> ] (inputw) node[above right]{$w$} -- (sub.west);
\draw[-> ] (H2.west) -| ($(inputu)+(0.35, 0)$) node[above]{$u$} -- (W2.west);
\draw[-> ] (inputu-|sub) node[branch]{} -- (sub.south);
\draw[-> ] (sub.east) -- (W1.west);
\draw[-> ] ($(sub.west)+(-0.6, 0)$) node[branch]{} |- ($(outputv)+(-0.35, 0)$) node[above]{$v$} |- (H2.east);
\draw[-> ] (W1.east) -- (output1)node[above left]{$z_1$};
\draw[-> ] (W2.east) -- (output2)node[above left]{$z_2$};
\end{tikzpicture}
2019-08-14 12:08:30 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "orgc7070d9" class = "figure" >
2019-08-14 12:08:30 +02:00
< p > < img src = "figs/h_infinity_robust_fusion.png" alt = "h_infinity_robust_fusion.png" / >
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 5: < / span > Architecture used for \(\mathcal{H}_\infty\) synthesis of complementary filters (< a href = "./figs/h_infinity_robust_fusion.png" > png< / a > , < a href = "./figs/h_infinity_robust_fusion.pdf" > pdf< / a > ).< / p >
2019-08-29 11:21:07 +02:00
< / div >
< / div >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-orgd2abe63" class = "outline-2" >
< h2 id = "orgd2abe63" > < span class = "section-number-2" > 6< / span > Sensor fusion architecture with sensor dynamics uncertainty and noise< / h2 >
< div class = "outline-text-2" id = "text-6" >
2019-08-29 11:21:07 +02:00
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\node[branch] (x) at (0, 0);
\node[addb, above right=1.2 and 3.7 of x](add1){};
\node[addb, below right=1.2 and 3.7 of x](add2){};
\node[block, above left=0.2 and 0.1 of add1](delta1){$\Delta_1(s)$};
\node[block, above left=0.2 and 0.1 of add2](delta2){$\Delta_2(s)$};
\node[block, left=0.5 of delta1](W1){$w_1(s)$};
\node[block, left=0.5 of delta2](W2){$w_2(s)$};
\node[addb, right=0.5 of add1](addn1){};
\node[addb, right=0.5 of add2](addn2){};
\node[block, above=0.5 of addn1](N1) {$N_1(s)$};
\node[block, above=0.5 of addn2](N2) {$N_2(s)$};
\node[block, right=1.2 of addn1](H1){$H_1(s)$};
\node[block, right=1.2 of addn2](H2){$H_2(s)$};
\node[addb, right=7.5 of x](add){};
\draw[] ($(x)+(-0.7, 0)$) node[above right]{$x$} -- (x.center);
\draw[-> ] (x.center) |- (add1.west);
\draw[-> ] (x.center) |- (add2.west);
\draw[-> ] ($(add1-|W1.west)+(-0.5, 0)$)node[branch](S1){} |- (W1.west);
\draw[-> ] ($(add2-|W2.west)+(-0.5, 0)$)node[branch](S2){} |- (W2.west);
\draw[-> ] (W1.east) -- (delta1.west);
\draw[-> ] (W2.east) -- (delta2.west);
\draw[-> ] (delta1.east) -| (add1.north);
\draw[-> ] (delta2.east) -| (add2.north);
\draw[-> ] (add1.east) -- (addn1.west);
\draw[-> ] (add2.east) -- (addn2.west);
\draw[-> ] (addn1.east) -- (H1.west)node[above left]{$\hat{x}_1$};
\draw[-> ] (addn2.east) -- (H2.west)node[above left]{$\hat{x}_2$};
\draw[-> ] ($(N1.north)+(0,0.7)$) node[below right](n1){$\tilde{n}_1$} -- (N1.north);
\draw[-> ] ($(N2.north)+(0,0.7)$) node[below right](n2){$\tilde{n}_2$} -- (N2.north);
\draw[-> ] (N1.south) -- (addn1.north)node[above right]{$n_1$};
\draw[-> ] (N2.south) -- (addn2.north)node[above right]{$n_2$};
\draw[-> ] (H1.east) -| (add.north);
\draw[-> ] (H2.east) -| (add.south);
\draw[-> ] (add.east) -- ++(0.7, 0) node[above left]{$\hat{x}$};
\begin{scope}[on background layer]
\node[fit={($(add2.south-|x)+(-0.2, -0.4)$) ($(n1.north-|add.east)+(0.2, 0.3)$)}, fill=black!10!white, draw, dashed, inner sep=0pt] (supersensor) {};
\node[below left] at (supersensor.north east) {Super Sensor};
\node[block, fit={($(S1|-add1.south)+(-0.2, -0.2)$) ($(n1.north-|N1.east)+(0.2, 0.1)$)}, fill=black!20!white, dashed, inner sep=0pt] (sensor1) {};
\node[below right] at (sensor1.north west) {Sensor 1};
\node[block, fit={($(S2|-add2.south)+(-0.2, -0.2)$) ($(n2.north-|N2.east)+(0.2, 0.1)$)}, fill=black!20!white, dashed, inner sep=0pt] (sensor2) {};
\node[below right] at (sensor2.north west) {Sensor 2};
\end{scope}
\end{tikzpicture}
2019-08-29 11:21:07 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "org2a7478b" class = "figure" >
< p > < img src = "figs/sensor_fusion_arch_full.png" alt = "sensor_fusion_arch_full.png" / >
2019-08-29 11:21:07 +02:00
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 6: < / span > Sensor fusion architecture with sensor dynamics uncertainty (< a href = "./figs/sensor_fusion_arch_full.png" > png< / a > , < a href = "./figs/sensor_fusion_arch_full.pdf" > pdf< / a > ).< / p >
2019-08-29 11:21:07 +02:00
< / div >
< / div >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "outline-container-org25fbe7c" class = "outline-2" >
< h2 id = "org25fbe7c" > < span class = "section-number-2" > 7< / span > Mixed H2/H-Infinity Synthesis< / h2 >
< div class = "outline-text-2" id = "text-7" >
2019-08-29 11:21:07 +02:00
< div class = "org-src-container" >
2020-08-17 17:56:29 +02:00
< pre class = "src src-latex" > \begin{tikzpicture}
\node[block={5.0cm}{5.0cm}, fill=black!20!white, dashed] (P) {};
\node[above] at (P.north) {$P(s)$};
\coordinate[] (inputw) at ($(P.south west)!0.85!(P.north west) + (-0.7, 0)$);
\coordinate[] (inputu) at ($(P.south west)!0.35!(P.north west) + (-0.7, 0)$);
\coordinate[] (output1) at ($(P.south east)!0.85!(P.north east) + ( 0.7, 0)$);
\coordinate[] (output2) at ($(P.south east)!0.7!(P.north east) + ( 0.7, 0)$);
\coordinate[] (output3) at ($(P.south east)!0.5!(P.north east) + ( 0.7, 0)$);
\coordinate[] (output4) at ($(P.south east)!0.35!(P.north east) + ( 0.7, 0)$);
\coordinate[] (outputv) at ($(P.south east)!0.15!(P.north east) + ( 0.7, 0)$);
\node[block, left=1.4 of output1] (W1){$W_1(s)$};
\node[block, left=1.4 of output2] (W2){$W_2(s)$};
\node[addb={+}{}{}{}{-}, left=1.6 of W1] (sub1) {};
\node[block, left=1.4 of output3] (N1){$N_1(s)$};
\node[block, left=1.4 of output4] (N2){$N_2(s)$};
\node[addb={+}{}{}{}{-}, left=1 of N1] (sub2) {};
\node[block, below=0.3 of P] (H2) {$H_2(s)$};
\draw[-> ] (inputw) node[above right]{$w$} -- (sub1.west);
\draw[-> ] (H2.west) -| ($(inputu)+(0.35, 0)$) node[above]{$u$} -- (N2.west);
\draw[-> ] (inputu-|sub1) node[branch]{} -- (sub1.south);
\draw[-> ] (inputu-|sub2) node[branch]{} -- (sub2.south);
\draw[-> ] (sub1|-W2) node[branch]{} -- (W2.west);
\draw[-> ] (sub1.east) -- (W1.west);
\draw[-> ] (sub2.east) -- (N1.west);
\draw[-> ] ($(sub1.west)+(-0.6, 0)$) node[branch](w_branch){} |- ($(outputv)+(-0.35, 0)$) node[above]{$v$} |- (H2.east);
\draw[-> ] (w_branch|-sub2) node[branch]{} -- (sub2.west);
\draw[-> ] (W1.east) -- (output1)node[above left]{$z_1$};
\draw[-> ] (W2.east) -- (output2)node[above left]{$z_2$};
\draw[-> ] (N1.east) -- (output3)node[above left]{$z_3$};
\draw[-> ] (N2.east) -- (output4)node[above left]{$z_4$};
\end{tikzpicture}
2019-08-29 11:21:07 +02:00
< / pre >
< / div >
2020-08-17 17:56:29 +02:00
< div id = "org855c0bc" class = "figure" >
< p > < img src = "figs/mixed_h2_hinf_synthesis.png" alt = "mixed_h2_hinf_synthesis.png" / >
2019-08-29 11:21:07 +02:00
< / p >
2020-08-17 17:56:29 +02:00
< p > < span class = "figure-number" > Figure 7: < / span > Mixed H2/H-Infinity Synthesis (< a href = "./figs/mixed_h2_hinf_synthesis.png" > png< / a > , < a href = "./figs/mixed_h2_hinf_synthesis.pdf" > pdf< / a > ).< / p >
2019-08-29 11:21:07 +02:00
< / div >
< / div >
< / div >
2019-08-14 12:08:30 +02:00
< / div >
< div id = "postamble" class = "status" >
< p class = "author" > Author: Thomas Dehaeze< / p >
2020-08-17 17:56:29 +02:00
< p class = "date" > Created: 2020-08-17 lun. 17:49< / p >
2019-08-14 12:08:30 +02:00
< / div >
< / body >
< / html >