initial commit

This commit is contained in:
Thomas Dehaeze 2024-08-05 15:59:21 +02:00
commit 964e2e95b9
18 changed files with 2932 additions and 0 deletions

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
*.svg binary
*.pdf binary

293
.gitignore vendored Normal file
View File

@ -0,0 +1,293 @@
auto/
.auctex-auto/
nohup.out
# Windows default autosave extension
*.asv
# OSX / *nix default autosave extension
*.m~
# Compiled MEX binaries (all platforms)
*.mex*
# Packaged app and toolbox files
*.mlappinstall
*.mltbx
# Generated helpsearch folders
helpsearch*/
# Simulink code generation folders
slprj/
sccprj/
# Simulink autosave extension
*.autosave
# Octave session info
octave-workspace
# Simulink Cache
*.slxc
## Core latex/pdflatex auxiliary files:
*.aux
*.lof
*.log
*.lot
*.fls
*.out
*.toc
*.fmt
*.fot
*.cb
*.cb2
.*.lb
## Intermediate documents:
*.dvi
*.xdv
*-converted-to.*
# these rules might exclude image files for figures etc.
# *.ps
# *.eps
# *.pdf
## Generated if empty string is given at "Please type another file name for output:"
.pdf
## Bibliography auxiliary files (bibtex/biblatex/biber):
*.bbl
*.bcf
*.blg
*-blx.aux
*-blx.bib
*.run.xml
## Build tool auxiliary files:
*.fdb_latexmk
*.synctex
*.synctex(busy)
*.synctex.gz
*.synctex.gz(busy)
*.pdfsync
## Build tool directories for auxiliary files
# latexrun
latex.out/
## Auxiliary and intermediate files from other packages:
# algorithms
*.alg
*.loa
# achemso
acs-*.bib
# amsthm
*.thm
# beamer
*.nav
*.pre
*.snm
*.vrb
# changes
*.soc
# comment
*.cut
# cprotect
*.cpt
# elsarticle (documentclass of Elsevier journals)
*.spl
# endnotes
*.ent
# fixme
*.lox
# feynmf/feynmp
*.mf
*.mp
*.t[1-9]
*.t[1-9][0-9]
*.tfm
#(r)(e)ledmac/(r)(e)ledpar
*.end
*.?end
*.[1-9]
*.[1-9][0-9]
*.[1-9][0-9][0-9]
*.[1-9]R
*.[1-9][0-9]R
*.[1-9][0-9][0-9]R
*.eledsec[1-9]
*.eledsec[1-9]R
*.eledsec[1-9][0-9]
*.eledsec[1-9][0-9]R
*.eledsec[1-9][0-9][0-9]
*.eledsec[1-9][0-9][0-9]R
# glossaries
*.acn
*.acr
*.glg
*.glo
*.gls
*.glsdefs
# gnuplottex
*-gnuplottex-*
# gregoriotex
*.gaux
*.gtex
# htlatex
*.4ct
*.4tc
*.idv
*.lg
*.trc
*.xref
# hyperref
*.brf
# knitr
*-concordance.tex
# TODO Comment the next line if you want to keep your tikz graphics files
*.tikz
*-tikzDictionary
# listings
*.lol
# makeidx
*.idx
*.ilg
*.ind
*.ist
# minitoc
*.maf
*.mlf
*.mlt
*.mtc[0-9]*
*.slf[0-9]*
*.slt[0-9]*
*.stc[0-9]*
# minted
_minted*
*.pyg
# morewrites
*.mw
# nomencl
*.nlg
*.nlo
*.nls
# pax
*.pax
# pdfpcnotes
*.pdfpc
# sagetex
*.sagetex.sage
*.sagetex.py
*.sagetex.scmd
# scrwfile
*.wrt
# sympy
*.sout
*.sympy
sympy-plots-for-*.tex/
# pdfcomment
*.upa
*.upb
# pythontex
*.pytxcode
pythontex-files-*/
# tcolorbox
*.listing
# thmtools
*.loe
# TikZ & PGF
*.dpth
*.md5
*.auxlock
# todonotes
*.tdo
# vhistory
*.hst
*.ver
# easy-todo
*.lod
# xcolor
*.xcp
# xmpincl
*.xmpi
# xindy
*.xdy
# xypic precompiled matrices
*.xyc
# endfloat
*.ttt
*.fff
# Latexian
TSWLatexianTemp*
## Editors:
# WinEdt
*.bak
*.sav
# Texpad
.texpadtmp
# LyX
*.lyx~
# Kile
*.backup
# KBibTeX
*~[0-9]*
# auto folder when using emacs and auctex
./auto/*
*.el
# expex forward references with \gathertags
*-tags.tex
# standalone packages
*.sta

21
LICENSE.txt Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 Dehaeze Thomas
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

133
index.html Normal file
View File

@ -0,0 +1,133 @@
<?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>
<!-- 2021-02-20 sam. 22:46 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Active Damping of Rotating Platforms using Integral Force Feedback</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="Thomas Dehaeze" />
<link rel="stylesheet" type="text/css" href="https://research.tdehaeze.xyz/css/style.css"/>
<script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
<style> #content {margin: auto;} </style>
</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">
<h1 class="title">Active Damping of Rotating Platforms using Integral Force Feedback
<br />
<span class="subtitle">Dehaeze Thomas, Collette Christophe</span>
</h1>
<blockquote>
<p>
<b>Abstract</b>:
</p>
<p>
This paper investigates the use of Integral Force Feedback (IFF) for the active damping of rotating mechanical systems.
Guaranteed stability, typical benefit of IFF, is lost as soon as the system is rotating due to gyroscopic effects.
To overcome this issue, two modifications of the classical IFF control scheme are proposed.
The first consists of slightly modifying the control law while the second consists of adding springs in parallel with the force sensors.
Conditions for stability and optimal parameters are derived.
The results reveal that, despite their different implementations, both modified IFF control scheme have almost identical damping authority on the suspension modes.
</p>
</blockquote>
<div id="outline-container-org377b3aa" class="outline-2">
<h2 id="org377b3aa">Journal Paper (<a href="journal/dehaeze21_activ_dampin_rotat_platf_using.pdf">pdf</a>)</h2>
<div class="outline-text-2" id="text-org377b3aa">
<p>
The paper has been created using <a href="https://orgmode.org/">Org Mode</a> (generating <a href="https://www.latex-project.org/">LaTeX</a> code) under <a href="https://www.gnu.org/software/emacs/">Emacs</a>.
</p>
<p>
To cite this journal paper use the following bibtex code.
</p>
<div class="org-src-container">
<pre class="src src-bibtex"><span class="org-function-name">@article</span>{<span class="org-constant">dehaeze21_activ_dampin_rotat_platf_using</span>,
<span class="org-variable-name">author</span> = {Thomas Dehaeze and Christophe Collette},
<span class="org-variable-name">title</span> = {Active Damping of Rotating Platforms Using Integral Force
Feedback},
<span class="org-variable-name">journal</span> = {Engineering Research Express},
<span class="org-variable-name">year</span> = 2021,
<span class="org-variable-name">doi</span> = {<span class="org-button">10.1088/2631-8695/abe803</span>},
<span class="org-variable-name">url</span> = {<span class="org-button">https://doi.org/10.1088/2631-8695/abe803</span>},
<span class="org-variable-name">month</span> = {Feb},
}
</pre>
</div>
<p>
You can also use the formatted citation below.
</p>
<blockquote>
<p>
Dehaeze, T., &amp; Collette, C., Active damping of rotating platforms using integral force feedback, Engineering Research Express, (2021).
</p>
</blockquote>
</div>
</div>
<div id="outline-container-org3920c33" class="outline-2">
<h2 id="org3920c33">Conference Paper (<a href="paper/dehaeze20_activ_dampin_rotat_platf_integ_force_feedb.pdf">pdf</a>)</h2>
<div class="outline-text-2" id="text-org3920c33">
<p>
To cite this conference paper use the following bibtex code.
</p>
<div class="org-src-container">
<pre class="src src-bibtex"><span class="org-function-name">@inproceedings</span>{<span class="org-constant">dehaeze20_activ_dampin_rotat_platf_integ_force_feedb</span>,
<span class="org-variable-name">author</span> = {Dehaeze, T. and Collette, C.},
<span class="org-variable-name">title</span> = {Active Damping of Rotating Platforms using Integral Force
Feedback},
<span class="org-variable-name">booktitle</span> = {Proceedings of the International Conference on Modal
Analysis Noise and Vibration Engineering (ISMA)},
<span class="org-variable-name">year</span> = 2020,
}
</pre>
</div>
<p>
You can also use the formatted citation below.
</p>
<blockquote>
<p>
Dehaeze, T., &amp; Collette, C., Active damping of rotating platforms using integral force feedback, In , Proceedings of the International Conference on Modal Analysis Noise and Vibration Engineering (ISMA) (pp. ) (2020)
</p>
</blockquote>
</div>
</div>
<div id="outline-container-org36068a4" class="outline-2">
<h2 id="org36068a4">Matlab Scripts (<a href="matlab/index.html">link</a>)</h2>
<div class="outline-text-2" id="text-org36068a4">
<p>
The Matlab scripts that permits to obtain all the results presented in the paper are accessible <a href="matlab/index.html">here</a>.
</p>
</div>
</div>
<div id="outline-container-org0a8713e" class="outline-2">
<h2 id="org0a8713e">Figures (<a href="tikz/index.html">link</a>)</h2>
<div class="outline-text-2" id="text-org0a8713e">
<p>
All the figures in the paper are generated using either <a href="https://sourceforge.net/projects/pgf/">TikZ</a> or <a href="https://inkscape.org/">Inkscape</a>. The code snippets that was used to generate the figures are accessible <a href="tikz/index.html">here</a>.
</p>
</div>
</div>
<div id="outline-container-org35dcb96" class="outline-2">
<h2 id="org35dcb96">Talk (<a href="talk/talk.pdf">link</a>)</h2>
<div class="outline-text-2" id="text-org35dcb96">
<iframe width="720"
height="540"
src="https://www.youtube.com/embed/F9j2-ge2FPE"
frameborder="0" allowfullscreen> </iframe>
</div>
</div>
</div>
</body>
</html>

59
index.org Normal file
View File

@ -0,0 +1,59 @@
#+TITLE: The Nano Active Stabilization System - Results on ESRF ID31 beamline
:DRAWER:
#+SUBTITLE: Dehaeze Thomas, Collette Christophe
#+OPTIONS: toc:nil
#+OPTIONS: html-postamble:nil
#+HTML_LINK_HOME: ../index.html
#+HTML_LINK_UP: ../index.html
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="https://research.tdehaeze.xyz/css/style.css"/>
#+HTML_HEAD: <script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
#+HTML_HEAD: <style> #content {margin: auto;} </style>
:END:
#+begin_quote
*Abstract*:
#+end_quote
* Journal Paper ([[file:paper/dehaeze20_activ_dampin_rotat_platf_integ_force_feedb.pdf][pdf]])
:PROPERTIES:
:UNNUMBERED: t
:END:
To cite this journal paper use the following bibtex code.
#+begin_src bibtex
#+end_src
You can also use the formatted citation below.
#+begin_quote
#+end_quote
* Matlab Scripts ([[file:matlab/index.org][link]])
:PROPERTIES:
:UNNUMBERED: t
:END:
The Matlab scripts that permits to obtain all the results presented in the paper are accessible [[file:matlab/index.org][here]].
* Talk ([[file:talk/talk.pdf][link]]) :noexport:
:PROPERTIES:
:UNNUMBERED: t
:END:
# #+begin_export html
# <iframe width="720"
# height="540"
# src="https://www.youtube.com/embed/F9j2-ge2FPE"
# frameborder="0" allowfullscreen> </iframe>
# #+end_export
To cite this presentation use the following bibtex code.
#+begin_src bibtex
#+end_src
You can also use the formatted citation below.
#+begin_quote
#+end_quote

1
matlab/figs-paper Symbolic link
View File

@ -0,0 +1 @@
../paper/figs

93
matlab/index.org Normal file
View File

@ -0,0 +1,93 @@
#+TITLE: The Nano Active Stabilization System - Results on ESRF ID31 beamline - Matlab Computation
:DRAWER:
#+HTML_LINK_HOME: ../index.html
#+HTML_LINK_UP: ../index.html
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="https://research.tdehaeze.xyz/css/style.css"/>
#+HTML_HEAD: <script type="text/javascript" src="https://research.tdehaeze.xyz/js/script.js"></script>
#+BIND: org-latex-image-default-option "scale=1"
#+BIND: org-latex-bib-compiler "biber"
#+BIND: org-latex-image-default-width ""
#+LaTeX_CLASS: scrreprt
#+LaTeX_CLASS_OPTIONS: [a4paper, 10pt, DIV=12, parskip=full]
#+LaTeX_HEADER_EXTRA: \input{preamble.tex}
#+LATEX_HEADER_EXTRA: \addbibresource{ref.bib}
#+PROPERTY: header-args:matlab :session *MATLAB*
#+PROPERTY: header-args:matlab+ :comments org
#+PROPERTY: header-args:matlab+ :exports both
#+PROPERTY: header-args:matlab+ :results none
#+PROPERTY: header-args:matlab+ :eval no-export
#+PROPERTY: header-args:matlab+ :noweb yes
#+PROPERTY: header-args:matlab+ :mkdirp yes
#+PROPERTY: header-args:matlab+ :output-dir figs
:END:
#+begin_export html
<hr>
<p>This report is also available as a <a href="./index.pdf">pdf</a>.</p>
<hr>
#+end_export
* Introduction :ignore:
# The matlab code is accessible on [[https://zenodo.org/record/3894343][Zonodo]] and [[https://github.com/tdehaeze/dehaeze20_contr_stewa_platf][Github]] cite:dehaeze20_activ_dampin_rotat_posit_platf. It can also be download as a =.zip= file [[file:matlab.zip][here]].
# To run the Matlab code, go in the =matlab= directory and run the following Matlab files corresponding to each section.
# #+caption: Paper's sections and corresponding Matlab files
# | Sections | Matlab File |
# |------------------------------------+----------------------------|
# | Section [[sec:system_description]] | =s1_system_description.m= |
# | Section [[sec:iff_pure_int]] | =s2_iff_pure_int.m= |
# | Section [[sec:iff_pseudo_int]] | =s3_iff_hpf.m= |
# | Section [[sec:iff_parallel_stiffness]] | =s4_iff_kp.m= |
# | Section [[sec:comparison]] | =s5_act_damp_comparison.m= |
* System Description and Analysis
:PROPERTIES:
:header-args:matlab+: :tangle matlab/s1_system_description.m
:END:
<<sec:system_description>>
** Matlab Init :noexport:ignore:
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
<<matlab-dir>>
#+end_src
#+begin_src matlab :exports none :results silent :noweb yes
<<matlab-init>>
#+end_src
#+begin_src matlab :tangle no
addpath('./matlab/');
addpath('./src/');
#+end_src
* Notations
<<sec:notations>>
# | | Mathematical Notation | Matlab | Unit |
# |-----------------------------------+------------------------------+---------------+---------|
# | Actuator Stiffness | $k$ | =k= | N/m |
# | Actuator Damping | $c$ | =c= | N/(m/s) |
# | Payload Mass | $m$ | =m= | kg |
# | Damping Ratio | $\xi = \frac{c}{2\sqrt{km}}$ | =xi= | |
# | Actuator Force | $\bm{F}, F_u, F_v$ | =F= =Fu= =Fv= | N |
# | Force Sensor signal | $\bm{f}, f_u, f_v$ | =f= =fu= =fv= | N |
# | Relative Displacement | $\bm{d}, d_u, d_v$ | =d= =du= =dv= | m |
# | Resonance freq. when $\Omega = 0$ | $\omega_0$ | =w0= | rad/s |
# | Rotation Speed | $\Omega = \dot{\theta}$ | =W= | rad/s |
# | Low Pass Filter corner frequency | $\omega_i$ | =wi= | rad/s |
# | | Mathematical Notation | Matlab | Unit |
# |------------------+-----------------------+--------+---------|
# | Laplace variable | $s$ | =s= | |
# | Complex number | $j$ | =j= | |
# | Frequency | $\omega$ | =w= | [rad/s] |
* Bibliography :ignore:
# #+latex: \printbibliography
# bibliography:ref.bib

114
matlab/preamble.tex Normal file
View File

@ -0,0 +1,114 @@
\usepackage{float}
\usepackage{caption,tabularx,booktabs}
\usepackage{biblatex}
\usepackage{fontawesome}
\usepackage{caption}
\usepackage{subcaption}
\captionsetup[figure]{labelfont=bf}
\captionsetup[subfigure]{labelfont=bf}
\captionsetup[listing]{labelfont=bf}
\captionsetup[table]{labelfont=bf}
\usepackage{xcolor}
\definecolor{my-blue}{HTML}{6b7adb}
\definecolor{my-pale-blue}{HTML}{e6e9f9}
\definecolor{my-red}{HTML}{db6b6b}
\definecolor{my-pale-red}{HTML}{f9e6e6}
\definecolor{my-green}{HTML}{6bdbb6}
\definecolor{my-pale-green}{HTML}{e6f9f3}
\definecolor{my-yellow}{HTML}{dbd26b}
\definecolor{my-pale-yellow}{HTML}{f9f7e6}
\definecolor{my-orange}{HTML}{dba76b}
\definecolor{my-pale-orange}{HTML}{f9f0e6}
\definecolor{my-grey}{HTML}{a3a3a3}
\definecolor{my-pale-grey}{HTML}{f0f0f0}
\definecolor{my-turq}{HTML}{6bc7db}
\definecolor{my-pale-turq}{HTML}{e6f6f9}
\usepackage{inconsolata}
\usepackage[newfloat=true, chapter]{minted}
\usemintedstyle{autumn}
\setminted{frame=lines,breaklines=true,tabsize=4,fontsize=\scriptsize,autogobble=true,labelposition=topline,bgcolor=my-pale-grey}
\setminted[matlab]{label=Matlab}
\setminted[latex]{label=LaTeX}
\setminted[bash]{label=Bash}
\setminted[python]{label=Python}
\setminted[text]{label=Results}
\setminted[md]{label=Org Mode}
\setmintedinline{fontsize=\normalsize,bgcolor=my-pale-grey}
\usepackage[most]{tcolorbox}
\tcbuselibrary{minted}
\newtcolorbox{seealso}{ enhanced,breakable,colback=my-pale-grey,colframe=my-grey,fonttitle=\bfseries,title=See Also}
\newtcolorbox{hint}{ enhanced,breakable,colback=my-pale-grey,colframe=my-grey,fonttitle=\bfseries,title=Hint}
\newtcolorbox{definition}{enhanced,breakable,colback=my-pale-red, colframe=my-red, fonttitle=\bfseries,title=Definition}
\newtcolorbox{important}{ enhanced,breakable,colback=my-pale-red, colframe=my-red, fonttitle=\bfseries,title=Important}
\newtcolorbox{exampl}[1][]{ enhanced,breakable,colback=my-pale-green,colframe=my-green,fonttitle=\bfseries,title=Example,#1}
\newtcolorbox{exercice}{ enhanced,breakable,colback=my-pale-yellow,colframe=my-yellow,fonttitle=\bfseries,title=Exercice}
\newtcolorbox{question}{ enhanced,breakable,colback=my-pale-yellow,colframe=my-yellow,fonttitle=\bfseries,title=Question}
\newtcolorbox{answer}{ enhanced,breakable,colback=my-pale-turq,colframe=my-turq,fonttitle=\bfseries,title=Answer}
\newtcolorbox{summary}{ enhanced,breakable,colback=my-pale-blue,colframe=my-blue,fonttitle=\bfseries,title=Summary}
\newtcolorbox{note}{ enhanced,breakable,colback=my-pale-blue,colframe=my-blue,fonttitle=\bfseries,title=Note}
\newtcolorbox{caution}{ enhanced,breakable,colback=my-pale-orange,colframe=my-orange,fonttitle=\bfseries,title=Caution}
\newtcolorbox{warning}{ enhanced,breakable,colback=my-pale-orange,colframe=my-orange,fonttitle=\bfseries,title=Warning}
\newtcolorbox{my-quote}[1]{%
colback=my-pale-grey,
grow to right by=-10mm,
grow to left by=-10mm,
boxrule=0pt,
boxsep=0pt,
breakable,
enhanced jigsaw,
borderline west={4pt}{0pt}{my-grey}}
\renewenvironment{quote}{\begin{my-quote}}{\end{my-quote}}
\newtcolorbox{my-verse}[1]{%
colback=my-pale-grey,
grow to right by=-10mm,
grow to left by=-10mm,
boxrule=0pt,
boxsep=0pt,
breakable,
enhanced jigsaw,
borderline west={4pt}{0pt}{my-grey}}
\renewenvironment{verse}{\begin{my-verse}}{\end{my-verse}}
\usepackage{environ}% http://ctan.org/pkg/environ
\NewEnviron{aside}{%
\marginpar{\BODY}
}
\renewenvironment{verbatim}{\VerbatimEnvironment\begin{minted}[]{text}}{\end{minted}}
\usepackage{soul}
\sethlcolor{my-pale-grey}
\let\OldTexttt\texttt
\renewcommand{\texttt}[1]{{\ttfamily\hl{\mbox{\,#1\,}}}}
\makeatletter
\preto\Gin@extensions{png,}
\DeclareGraphicsRule{.png}{pdf}{.pdf}{\noexpand\Gin@base.pdf}
\makeatother
\usepackage{hyperref}
\hypersetup{
colorlinks = true,
allcolors = my-blue
}
\usepackage{hypcap}

94
matlab/ref.bib Normal file
View File

@ -0,0 +1,94 @@
@article{collette15_sensor_fusion_method_high_perfor,
author = {C. Collette and F. Matichard},
title = {Sensor Fusion Methods for High Performance Active Vibration Isolation Systems},
journal = {Journal of Sound and Vibration},
volume = {342},
number = {nil},
pages = {1-21},
year = {2015},
doi = {10.1016/j.jsv.2015.01.006},
url = {https://doi.org/10.1016/j.jsv.2015.01.006},
keywords = {},
}
@inproceedings{collette14_vibrat,
author = {Collette, C. and Matichard, F},
title = {Vibration control of flexible structures using fusion of inertial sensors and hyper-stable actuator-sensor pairs},
booktitle = {International Conference on Noise and Vibration Engineering (ISMA2014)},
year = {2014},
keywords = {},
}
@article{oomen18_advan_motion_contr_precis_mechat,
author = {Tom Oomen},
title = {Advanced Motion Control for Precision Mechatronics: Control, Identification, and Learning of Complex Systems},
journal = {IEEJ Journal of Industry Applications},
volume = {7},
number = {2},
pages = {127-140},
year = {2018},
doi = {10.1541/ieejjia.7.127},
url = {https://doi.org/10.1541/ieejjia.7.127},
}
@book{skogestad07_multiv_feedb_contr,
author = {Skogestad, Sigurd and Postlethwaite, Ian},
title = {Multivariable Feedback Control: Analysis and Design},
year = {2007},
publisher = {John Wiley},
keywords = {favorite},
}
@phdthesis{hua05_low_ligo,
author = {Hua, Wensheng},
school = {stanford university},
title = {Low frequency vibration isolation and alignment system for
advanced LIGO},
year = 2005,
}
@book{lurie12_class,
author = {Lurie, B. J},
title = {Classical feedback control : with MATLAB and Simulink},
year = 2012,
publisher = {CRC Press},
address = {Boca Raton, FL},
isbn = 9781439897461,
keywords = {favorite},
}
@techreport{bibel92_guidel_h,
author = {Bibel, John E and Malyevac, D Stephen},
institution = {NAVAL SURFACE WARFARE CENTER DAHLGREN DIV VA},
title = {Guidelines for the selection of weighting functions for
H-infinity control},
year = 1992,
keywords = {},
}
@inproceedings{dehaeze20_activ_dampin_rotat_platf_integ_force_feedb,
author = {Dehaeze, T. and Collette, C.},
title = {Active Damping of Rotating Platforms using Integral Force
Feedback},
booktitle = {Proceedings of the International Conference on Modal
Analysis Noise and Vibration Engineering (ISMA)},
year = 2020,
}
@misc{dehaeze20_activ_dampin_rotat_posit_platf,
author = {Thomas Dehaeze},
howpublished = {Source Code on Zonodo},
month = 07,
title = {Active Damping of Rotating Positioning Platforms},
url = {https://doi.org/10.5281/zenodo.3894342},
doi = {10.5281/zenodo.3894342},
year = 2020,
}
@article{dehaeze21_activ_dampin_rotat_platf_using,
author = {Thomas Dehaeze and Christophe Collette},
title = {Active Damping of Rotating Platforms Using Integral Force Feedback},
journal = {Engineering Research Express},
year = {2021},
url = {http://iopscience.iop.org/article/10.1088/2631-8695/abe803},
}

99
paper/.latexmk Normal file
View File

@ -0,0 +1,99 @@
#!/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=('dehaeze24_nano_active_stabilization_system.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 = 2; # 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
$biber = "biber --validate-datamodel %O %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
paper/config.tex Normal file
View File

@ -0,0 +1 @@

View File

@ -0,0 +1,38 @@
@inproceedings{dehaeze18_sampl_stabil_for_tomog_exper,
author = {Thomas Dehaeze and M. Magnin Mattenet and Christophe
Collette},
title = {Sample Stabilization For Tomography Experiments In Presence
Of Large Plant Uncertainty},
booktitle = {MEDSI'18},
year = 2018,
number = 10,
pages = {153--157},
doi = {10.18429/JACoW-MEDSI2018-WEOAMA02},
url = {https://doi.org/10.18429/JACoW-MEDSI2018-WEOAMA02},
address = {Geneva, Switzerland},
isbn = {978-3-95450-207-3},
keywords = {nass, esrf},
language = {english},
month = {Dec},
publisher = {JACoW Publishing},
series = {Mechanical Engineering Design of Synchrotron Radiation
Equipment and Instrumentation},
venue = {Paris, France},
}
@inproceedings{dehaeze21_mechat_approac_devel_nano_activ_stabil_system,
author = {Dehaeze, T. and Bonnefoy, J. and Collette, C.},
title = {Mechatronics Approach for the Development of a
Nano-Active-Stabilization-System},
booktitle = {MEDSI'20},
year = 2021,
language = {english},
publisher = {JACoW Publishing},
series = {Mechanical Engineering Design of Synchrotron Radiation
Equipment and Instrumentation},
venue = {Chicago, USA},
keywords = {nass, esrf},
}

View File

@ -0,0 +1,119 @@
#+TITLE:
:DRAWER:
#+LATEX_CLASS: iopconfser
#+OPTIONS: toc:nil date:nil
#+STARTUP: overview
#+DATE:
#+AUTHOR:
# #+LATEX_HEADER: \input{config.tex}
#+LATEX_HEADER_EXTRA: \usepackage[backend=biber,style=iopart-num]{biblatex}
#+LATEX_HEADER_EXTRA: \addbibresource{dehaeze24_nano_active_stabilization_system.bib}
: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
'("iopconfser"
"\\documentclass{iopconfser}"
("\\section{%s}" . "\\section*{%s}")
("\\subsection{%s}" . "\\subsection*{%s}")
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
("\\paragraph{%s}" . "\\paragraph*{%s}")
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
)
(setq org-latex-packages-alist nil)
(setq org-latex-default-packages-alist nil)
;; 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-list 'org-export-filter-headline-functions
'my-latex-filter-removeOrgAutoLabels)
;; 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)
;; Remove empty title as it is manually placed after "/begin{document}"
(defun my-org-latex-remove-title (str)
(replace-regexp-in-string "^\\\\title{}$" "" str))
(advice-add 'org-latex-template :filter-return 'my-org-latex-remove-title)
;; Remove empty date
(defun my-org-latex-remove-date (str)
(replace-regexp-in-string "^\\\\date{}$" "" str))
(advice-add 'org-latex-template :filter-return 'my-org-latex-remove-date)
#+END_SRC
* Title :ignore:
#+begin_export latex
\title{The Nano Active Stabilization System - Results on the ESRF ID31 Beamline}
\author{Thomas Dehaeze$^{1,2}$ and Christophe Collette$^{2}$}
\affil{$^1$European Synchrotron Radiation Facility Grenoble, France}
\affil{$^2$Precision Mechatronics Laboratory University of Liege, Belgium}
\email{thomas.dehaeze@esrf.fr}
#+end_export
* Abstract :ignore:
# The abstract must be a single paragraph providing concise information about the content of the
# article, including the main results obtained and conclusions drawn. The abstract must not contain any
# table numbers, figure numbers, references or displayed mathematics. Leave at least 10 mm space below
# the abstract before starting the main text of your article on the same page.
#+begin_abstract
This paper investigates...
#+end_abstract
* Introduction
<<sec:introduction>>
Here is the introduction ...
Some citation:
[[cite:&dehaeze18_sampl_stabil_for_tomog_exper]]
[[cite:&dehaeze21_mechat_approac_devel_nano_activ_stabil_system]]
* Conclusion
<<sec:conclusion>>
Conclusion text
* Acknowledgment
:PROPERTIES:
:UNNUMBERED: t
:END:
This research benefited from a FRIA grant from the French Community of Belgium.
* Bibliography :ignore:
\printbibliography

Binary file not shown.

View File

@ -0,0 +1,43 @@
% Created 2024-08-05 Mon 15:57
% Intended LaTeX compiler: pdflatex
\documentclass{iopconfser}
\usepackage[backend=biber]{biblatex}
\addbibresource{dehaeze24_nano_active_stabilization_system.bib}
\begin{document}
\title{The Nano Active Stabilization System - Results on the ESRF ID31 Beamline}
\author{Thomas Dehaeze$^{1,2}$ and Christophe Collette$^{2}$}
\affil{$^1$European Synchrotron Radiation Facility Grenoble, France}
\affil{$^2$Precision Mechatronics Laboratory University of Liege, Belgium}
\email{thomas.dehaeze@esrf.fr}
\begin{abstract}
This paper investigates\ldots{}
\end{abstract}
\section{Introduction}
\label{sec:introduction}
Here is the introduction \ldots{}
Some citation:
\cite{dehaeze18_sampl_stabil_for_tomog_exper}
\cite{dehaeze21_mechat_approac_devel_nano_activ_stabil_system}
\section{Conclusion}
\label{sec:conclusion}
Conclusion text
\section*{Acknowledgment}
This research benefited from a FRIA grant from the French Community of Belgium.
\printbibliography
\end{document}

1722
paper/iopart-num.bst Normal file

File diff suppressed because it is too large Load Diff

99
paper/iopconfser.cls Normal file
View File

@ -0,0 +1,99 @@
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{iopconfser}[2022/11/30 IOP Conference Series LaTeX template]
\LoadClass[a4paper]{article}
% Margin settings
\setlength{\hoffset}{0mm}
\setlength{\marginparsep}{0mm}
\setlength{\marginparwidth}{0mm}
\setlength{\textwidth}{160mm}
\setlength{\oddsidemargin}{-0.4mm}
\setlength{\evensidemargin}{-0.4mm}
\setlength{\voffset}{0mm}
\setlength{\headheight}{8mm}
\setlength{\headsep}{5mm}
\setlength{\footskip}{0mm}
\setlength{\textheight}{230mm}
\setlength{\topmargin}{1.6mm}
% More length definitions
\setlength\maxdepth{.5\topskip}
\setlength\@maxdepth\maxdepth
\setlength\footnotesep{8.4\p@}
\setlength{\skip\footins} {10.8\p@ \@plus 4\p@ \@minus 2\p@}
\setlength\floatsep {14\p@ \@plus 2\p@ \@minus 4\p@}
\setlength\textfloatsep {24\p@ \@plus 2\p@ \@minus 4\p@}
\setlength\intextsep {16\p@ \@plus 4\p@ \@minus 4\p@}
\setlength\dblfloatsep {16\p@ \@plus 2\p@ \@minus 4\p@}
\setlength\dbltextfloatsep{24\p@ \@plus 2\p@ \@minus 4\p@}
\setlength\@fptop{0\p@}
\setlength\@fpsep{10\p@ \@plus 1fil}
\setlength\@fpbot{0\p@}
\setlength\@dblfptop{0\p@}
\setlength\@dblfpsep{10\p@ \@plus 1fil}
\setlength\@dblfpbot{0\p@}
\setlength\partopsep{3\p@ \@plus 2\p@ \@minus 2\p@}
% Set indent for front matter
\renewenvironment{quote}%
{\list{}{\leftmargin=25mm}\item\relax}%
{\endlist}
% Clear the header and footer
\pagestyle{empty}
% Styles for front matter
\renewcommand{\title}[1]{\vspace*{25mm}{\exhyphenpenalty=10000\hyphenpenalty=10000
\fontsize{18}{24}\selectfont\bf\noindent\raggedright
\textsf{#1}\par}}
\renewcommand{\author}[1]{\vspace*{1.5pc}%
\fontsize{11}{13}
\begin{quote}\raggedright \textbf{#1}\end{quote}}
\newcommand{\affil}[1]{\fontsize{10}{11}\selectfont
\begin{quote}\raggedright #1\end{quote}
\vspace*{-22pt}}
\newcommand{\email}[1]{\vspace*{12pt}\fontsize{10}{11}\selectfont
\begin{quote}\raggedright E-mail: #1\end{quote}
\vspace*{-22pt}}
\renewenvironment{abstract}{%
\vspace{16pt plus3pt minus3pt}
\begin{quote}
\bfseries \abstractname.\quad\rm\ignorespaces}
{\end{quote}\vspace{5mm}}
% Section titles
\renewcommand\section{\@startsection {section}{1}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1sp}%
{\reset@font\normalsize\bfseries\raggedright}}
\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1sp}%
{\reset@font\normalsize\itshape\raggedright}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{-1em \@plus .2em}%
{\reset@font\normalsize\itshape}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
{3.25ex \@plus1ex \@minus.2ex}%
{-1em}%
{\reset@font\normalsize\itshape}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
{3.25ex \@plus1ex \@minus .2ex}%
{-1em}%
{\reset@font\normalsize\itshape}}
\endinput

1
readme.org Symbolic link
View File

@ -0,0 +1 @@
index.org