euspen_2020_notes/notes.org

1606 lines
60 KiB
Org Mode
Raw Normal View History

2020-11-20 09:24:39 +01:00
#+TITLE: EUSPEN
:DRAWER:
2020-11-20 09:47:00 +01:00
#+LATEX_CLASS: scrartcl
#+LATEX_CLASS_OPTIONS: [a4paper,10pt,twoside,DIV=14]
#+OPTIONS: toc:2 todo:nil
2020-11-20 09:24:39 +01:00
#+STARTUP: overview
#+LANGUAGE: en
#+EMAIL: dehaeze.thomas@gmail.com
#+AUTHOR: Dehaeze Thomas
#+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_MATHJAX: align: center tagside: right font: TeX
#+PROPERTY: header-args:matlab :session *MATLAB*
#+PROPERTY: header-args:matlab+ :comments org
#+PROPERTY: header-args:matlab+ :results none
#+PROPERTY: header-args:matlab+ :exports both
#+PROPERTY: header-args:matlab+ :eval no-export
#+PROPERTY: header-args:matlab+ :output-dir figs
#+PROPERTY: header-args:matlab+ :tangle no
#+PROPERTY: header-args:matlab+ :mkdirp yes
#+PROPERTY: header-args:shell :eval no-export
#+PROPERTY: header-args:latex :headers '("\\usepackage{tikz}" "\\usepackage{import}" "\\import{$HOME/Cloud/tikz/org/}{config.tex}")
#+PROPERTY: header-args:latex+ :imagemagick t :fit yes
#+PROPERTY: header-args:latex+ :iminoptions -scale 100% -density 150
#+PROPERTY: header-args:latex+ :imoutoptions -quality 100
#+PROPERTY: header-args:latex+ :results file raw replace
#+PROPERTY: header-args:latex+ :buffer no
#+PROPERTY: header-args:latex+ :eval no-export
#+PROPERTY: header-args:latex+ :exports results
#+PROPERTY: header-args:latex+ :mkdirp yes
#+PROPERTY: header-args:latex+ :output-dir figs
#+PROPERTY: header-args:latex+ :post pdf2svg(file=*this*, ext="png")
:END:
2020-11-20 09:48:06 +01:00
#+begin_export html
<hr>
<p>This report is also available as a <a href="./notes.pdf">pdf</a>.</p>
<hr>
#+end_export
2020-11-20 09:47:00 +01:00
* Build :noexport:
#+NAME: startblock
#+BEGIN_SRC emacs-lisp :results none
(add-to-list 'org-latex-classes
'("scrartcl"
"\\documentclass{scrartcl}"
("\\section{%s}" . "\\section*{%s}")
("\\subsection{%s}" . "\\subsection*{%s}")
("\\subsubsection{%s}" . "\\subsubsection*{%s}")
("\\paragraph{%s}" . "\\paragraph*{%s}")
("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
)
#+END_SRC
2020-11-20 09:24:39 +01:00
* Tutorial: Design concepts for sub-micrometer positioning :@huub_janssen:
** Positioning Terminology
- *Accuracy*:
Accuracy describes how close the mean result is to the reference value. (Figure [[fig:position_terminology]])
- *Repeatability*:
Repeatability describes the variation between results. (Figure [[fig:position_terminology]])
- *Resolution*:
The resolution of a system is equal to the smallest incremental step that can be made (Figure [[fig:position_resolution]])
- *Stability*:
The stability of a system is the maximum deviation from a constant reference value over time.
The stability is always related to the time frame taken into account. (Figure [[fig:position_stability]])
#+name: fig:position_terminology
#+caption: Accuracy and Repeatability
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:26:29 +01:00
[[file:./figs/position_terminology.png]]
2020-11-20 09:24:39 +01:00
#+name: fig:position_resolution
#+caption: Position Resolution
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/position_resolution.png]]
#+name: fig:position_stability
#+caption: Position Stability
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/position_stability.png]]
** Principles of accuracy
Limited stiffness, play and friction will induce an hysteresis for a positioning system as shown in Figure [[fig:stiffness_friction]].
The hysteresis can actually help estimating the play and friction present in the system.
#+name: fig:stiffness_friction
#+caption: Stiffness, play and Friction
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:figs/stiffness_friction.png]]
Ways to make the hysteresis smaller:
- avoid play (=> use compliant elements)
- minimize friction
- use high stiffness
The position uncertainty of a system can be estimated as follow (Figure [[fig:position_uncertainty]]):
\begin{equation}
\text{Position Uncertainty} = \text{play} + 2 \times \text{Virtual Play}
\end{equation}
where the virtual play can be estimated as follow:
\begin{equation}
\text{Virtual Play} = \frac{\text{Friction Force}}{\text{Actuator Stiffness}} = \frac{F_w}{c}
\end{equation}
#+name: fig:position_uncertainty
#+caption: Hysterestis, play and virtual play
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:figs/position_uncertainty.png]]
When considering dynamics, the goal is to make the first resonance frequency much higher than the frequency of the wanted motion.
Thus, the general recommendation is then to minimize mass and to increase stiffness.
Moreover, we generally want things to be predictable:
- constant, preferably no friction.
Note that it is very difficult to make a system with constant friction in practice, so better make a system with no friction.
- no play
- high stiffness
- low pass
** Case 1 - Estimate the virtual play
Estimate the virtual play of the system in Figure [[fig:case_1]] with following characteristics:
- Payload: $m = 20\,kg$
- Friction coefficient in drive direction: $f = 0.05$
- Table stroke: $L = 300\,mm$
- Screw spindle inner diameter: $d = 8\, mm$
- Spindle Material: Stainless steel
#+name: fig:case_1
#+caption: Studied system for "Case 1"
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/case_1.png]]
First the friction force can be calculated as the vertical mass times the friction coefficient:
\begin{equation}
F_w = (mg) f
\end{equation}
Then, the axial stiffness of the screw spindle is computed:
\begin{equation}
c = \frac{A}{L} E
\end{equation}
with:
- $A = \pi d^2$ is the screw section area
- $L = 300\,mm$ is the screw length
- $E$ is the Young modulus of stainless steel
And finally:
\begin{equation}
\text{Virtual Play} = \frac{F_w}{c} \approx 0.6\,\mu m
\end{equation}
** Conventional elements for constraining DoFs
There exist many conventional elements for constraining DoFs.
Some of them are:
- Struts with ball joint: 1DoF constrained (Figure [[fig:ball_joint]])
- Ball bearing: 5DoF constrained (Figure [[fig:ball_bearing]])
- Guide with roller bearing: 4DoF constrained (Figure [[fig:roller_bearing]])
- Roller rail guide: 5DoF constrained (Figure [[fig:roller_rail_guide]])
#+name: fig:ball_joint
#+caption: Ball Joint
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/ball_joint.png]]
#+name: fig:ball_bearing
#+caption: Ball Bearing
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/ball_bearing.png]]
#+name: fig:roller_bearing
#+caption: Roller Bearing
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/roller_bearing.png]]
#+name: fig:roller_rail_guide
#+caption: Roller Rail Guide
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/roller_rail_guide.png]]
** Compliant elements for constraining DoFs
*** Basic leaf springs and folded leaf springs
An example of a complaint element is shown in Figure [[fig:compliant_leaf]].
#+name: fig:compliant_leaf
#+caption: Example of 1dof constrained compliant element
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:figs/compliant_1dof.png]]
Other types of compliant elements include:
- Leaf spring: constrains 3 dof (Figure [[fig:leaf_springs]])
- Folded leaf spring: constrains only 1dof (Figure [[fig:folded_leaf_springs]])
These are generally used in combination with other folded leaf springs.
- Flexure pivots: constrains 5 dofs (Figure [[fig:flexure_pivots]])
#+name: fig:leaf_springs
#+caption: Leaf springs
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/leaf_springs.png]]
#+name: fig:folded_leaf_springs
#+caption: Folded Leaf springs
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/folded_leaf_springs.png]]
#+name: fig:flexure_pivots
#+caption: Flexure Pivots (5dof constrained)
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/flexure_pivots.png]]
*** 1dof Parallel Guiding
Parallel guiding can be made using two leaf springs (Figure [[fig:parallel_guiding]]):
- 2 parallel leaf springs
- Force actuator in center of parallelism (middle of the leaf springs) to avoid coupled rotation
- Sag in vertical direction as a function as the horizontal displacement.
This sag is predictible and reproducible:
\begin{equation}
\delta z = 0.6 \frac{x^2}{L}
\end{equation}
- Vertical stiffness negatively affected by displacement
- Take care of maximum buckling (Figure [[fig:buckling]])
- Improve buckling load and Z stiffness by reinforced mid-section (Figure [[fig:reinforced_leaf_springs]])
#+name: fig:parallel_guiding
#+caption: Parallel guiding
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/parallel_guiding.png]]
#+name: fig:buckling
#+caption: Example of bucklink
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/buckling.png]]
#+name: fig:reinforced_leaf_springs
#+caption: Reinforced leaf springs
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/reinforced_leaf_springs.png]]
*** Rotation Compliant Mechanism
Figure [[fig:rotation_leaf_springs]] shows a rotation compliant mechanism:
- 3 leaf springs
- no sensitive for thermal load on the body: as the central part heat ups and expand, the center line of the rotation stays at the same position
#+name: fig:rotation_leaf_springs
#+caption: Example of rotation stage using leaf springs
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/rotation_leaf_springs.png]]
*** Z translation
Figure [[fig:vertical_stage_compliant]] shows a Z translation mechanism:
- 5 struts ("needles")
- Not sensitive for thermal loads on body
The problem is that when it moves vertical, there will also be some z rotation because the length of the strut is fixed (stiff).
This parasitic rotation is however predictable.
#+name: fig:vertical_stage_compliant
#+caption: Z translation using 5 struts
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/vertical_stage_compliant.png]]
An alternative is to use folder leaf springs (Figure [[fig:vertical_stage_leafs]]), and this avoid the parasitic rotation.
#+name: fig:vertical_stage_leafs
#+caption: Z translation using 5 folded leaf springs
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/vertical_stage_leafs.png]]
*** X-Y-Rz Stage
An X-Y-Rz stage can be done either using 3 struts (Figure [[fig:x_y_rz_stage]]) or using 3 folded leaf springs (Figure [[fig:x_y_rz_leafs]]).
#+name: fig:x_y_rz_stage
#+caption: X,Y,Rz using 3 struts
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/x_y_rz_stage.png]]
#+name: fig:x_y_rz_leafs
#+caption: X,Y,Rz using 3 folded leaf springs
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/x_y_rz_leafs.png]]
*** Compliant mechanism with only one fixed dof
The compliant mechanism shown in Figure [[fig:case_1_leaf_springs]] only constrain the rotation about the y-axis.
#+name: fig:case_1_leaf_springs
#+caption: 5dof motion, only the Ry is constrained
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/case_1_leaf_springs.png]]
*** Summary
- compliant elements enable defined movements
- Hinges or guidings can be used for small movements
- *No play, No friction, No wear, No contamination*
- *but limited rotation, need a constant force to hold in place*
*** Examples
An example of a complex compliant mechanism is shown in Figure [[fig:compliant_example_1]].
#+name: fig:compliant_example_1
#+caption: Design concept
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/compliant_example_1.png]]
Figure [[fig:linear_bearing_leafs]] shown a reinforced part to avoid buckling and improve vertical stiffness.
#+name: fig:linear_bearing_leafs
#+caption: Use leaf springs instead of linear roller bearings
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/linear_bearing_leafs.png]]
*** Mechatronics positioning challenge
A X-Y-Rz stage is shown in Figure [[fig:xyRz_positioning_challenge]].
To make this stage usable for nano-metric positioning, the following ideas where used:
- Use parallel mechanisms instead of serial one:
- no stacking of errors
- smaller, stiffer, in one plane
- Symmetry:
- Use 3 identical voice coil actuators
- Use 3 identical sensors
- Center position insensitive for temperature change
- Flexure only;
- no friction
- no play
- no wear
- no particule (important for clean rooms)
- no service
- Continuously under control:
- no alignment / crosstalk issues between axes
- voice coil / sensors combination determines performance
#+name: fig:xyRz_positioning_challenge
#+caption: Example of X-Y-Rz positioning stage
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/xyRz_positioning_challenge.png]]
yt:OjNnHa6O9A8
*** Case - Play Free parallel Stage
Figure [[fig:play_free_parallel_stage]] shows a parallel mechanism that should be converted to a compliant mechanism.
Its characteristics are:
- 1mm stroke
- 1:5 lever arm
- 10kg payload
- distance between hinges: 5nmm
- thickness t: 40mm
- Material: aluminium
#+name: fig:play_free_parallel_stage
#+caption: Example of a parallel stage that should be converting to a compliant mechanism
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/play_free_parallel_stage.png]]
The goals are to:
- Make design using elastic hinges
- Maximize vertical stiffness
- Determine vertical stiffness
The solution is shown in Figure [[fig:play_free_parallel_stage_solution]].
#+name: fig:play_free_parallel_stage_solution
#+caption: Case Solution
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/play_free_parallel_stage_solution.png]]
** Thin plate design
*** Thin plate in torsion
Thin plates are very important for compliant mechanisms.
The torsion stiffness of a thing plate is linear with the length of the thin plate:
\begin{equation}
k = \frac{G I_p}{L}
\end{equation}
with $G$ the shear modulus:
\begin{equation}
G \approx 0.3 E
\end{equation}
where $E$ is the young modulus
Then
\begin{equation}
I_p = \frac{1}{3} h t^3 = \frac{1}{3} A t^2
\end{equation}
where $A$ is the area of the cross section.
#+name: fig:thin_plate_torsion
#+caption: A plate under torsion
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/thin_plate_torsion.png]]
*** Difference between open and close profile
The close profile has much more torsional stiffness than the open profile.
Just by opening the tube, we have a much smaller torsional stiffness (but almost same axial stiffness for instance).
#+name: fig:open_close_profil_torsion_stiffness
#+caption: Stiffness comparison open and closed tube (torsion)
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/open_close_profil_torsion_stiffness.png]]
We have similar behavior with an open/closed box.
If we remove one side of the cube shown in Figure [[fig:closed_box]], we would have much smaller torsional stiffness along the axis perpendicular to the removed side.
#+name: fig:closed_box
#+caption: Closed box.
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/closed_box.png]]
If we use triangles, we obtain high torsional stiffness as shown in Figure [[fig:torsion_stiffness_box_double_triangle]].
#+name: fig:torsion_stiffness_box_double_triangle
#+caption: Open box (double triangle)
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/torsion_stiffness_box_double_triangle.png]]
Frames are usually corresponding to open-boxes with have a small stiffness in torsion.
On way to reinforce it is using triangles.
A nice way to have a 1dof flexure guiding with stiff frame is shown in Figure [[fig:z_stage_triangles]].
#+name: fig:z_stage_triangles
#+caption: Box with integrated flexure guiding
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/z_stage_triangles.png]]
* Keynote: Mechatronic challenges in optical lithography :@hans_butler:
2020-11-25 11:40:16 +01:00
yt:DF8GrWlMwEE
2020-11-20 09:24:39 +01:00
** Introduction
*Question*: in chip manufacturing, how do developments in optical lithography impact the mechatronic design?
Main developments:
- Scanning & dual stage scanning
- Immersion
- Multiple patterning
- Extreme ultra violet lithography
** Chip manufacturing loop
In this presentation, only the exposure step is discussed (lithography).
#+name: fig:asml_chip_manufacturing_loop
#+caption: Chip manufacturing loop
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_chip_manufacturing_loop.png]]
** Imaging process - Basics
- An illuminator provides light at constant wavelength $\lambda$
- The pattern on the reticle diffracts the light into order
- At least +/-1st orders need to be captures.
This will induce a sinusoidal wave on the wafer as shown in Figure [[fig:asml_imaging_process]].
- Wafer and mast are placed on high accuracy moving stages
#+name: fig:asml_imaging_process
#+caption: Imaging process - basics
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_imaging_process.png]]
** From stepper to scanner
Before, one chip was illumating at a time, but people wanted to make bigger chips.
However, if was difficult to make larger lenses.
The solution was to use a scanner, were both the mask and wafer are on moving stages.
This implied many requirements in dynamics and accuracy!
#+name: fig:asml_stepper_to_scanner
#+caption: From stepper to scanner
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_stepper_to_scanner.png]]
** Dual stage scanners
Both the reticle stage and wafer stage are moving.
In order to have the same throughput, higher stage accelerations are required.
This implies some mechatronics challenges:
- higher stage acceleration
- higher accuracy
- interaction between stages
Which are solved by:
- Larger forces => balance masses
- Stage dynamical design for high bandwidth control
- Control coupling between stages (one control system can act as a disturbance to another controlled system => feedforward)
#+name: fig:asml_dual_stage_scanners
#+caption: Machine based on the dual stage scanners
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_dual_stage_scanners.png]]
** Immersion technology
Water is used between the lens and the wafer to increase the "NA" and thus decreasing the "critical dimension".
The "hood" is there to prevent any bubble to enter the illumination area (Figure [[fig:asml_hood_system]]).
The position of the "hood" is actively control to follow the wafer stage (that can move in z direction and tilt).
Three solutions are used for the positioning control of the "hood" system (Figure [[fig:asml_immersion]]):
- Disturbance decoupling
- Iterative learning control
- Feed-forward control from the Wafer control signal
#+name: fig:asml_hood_system
#+caption: Hood System
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_hood_system.png]]
#+name: fig:asml_immersion
#+caption: Control system for the "hood"
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_immersion.png]]
** Multiple Patterning
The multiple patterning approach adds few mechatronics challenges:
- Position accuracy limited to ~4nm due to interferoemter position measurement (variation of temperature/pressure of air)
- Stage swap is complex and time-consuming
This was solved by:
- Using encoder instead of interferometers
- Use long stroke motor: h-stage => new wafer stage concept
** Machine layout
Each stage is controlled with 6dof lorentz short stroke actuators (Figure [[fig:asml_machine_layout_bis]]).
The magnet stage can move horizontally (due to reaction forces of the wafer stages): it asks as a balance mass.
#+name: fig:asml_machine_layout_bis
#+caption: Machine layout
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_machine_layout_bis.png]]
** EUV Lithography
Vacuum is required which implies:
- no bearings
- no cooling
All the optics are reflective:
- extremely accurately polished
- challenge: keep mirrors optimally positioned
Wafer stage:
- Move at high speed and accelerations
- Challenge: in vaccum
- Solved by: machanically suspended balance mass, and interferoemter position meaured can be used because it is in vacuum now
#+name: fig:asml_euv
#+caption: Schematic of the ASML EUV machine
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_euv.png]]
** The future: high-NA EUV
#+name: fig:asml_na_euv
#+caption: The CD will be 8nm
2020-11-20 09:47:00 +01:00
#+attr_latex: :width 0.5\linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_na_euv.png]]
In order to do so, high "opening" of the optics is required which is very challenges because the reflectiveness of mirror is decreasing as high angle of incidence (Figure [[fig:asml_reflection_angle]]).
#+name: fig:asml_reflection_angle
#+caption: Change of reflection of a mirror as a function of the angle of indicence
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/asml_reflection_angle.png]]
** Challenges for future Optical Lithography machines
*Challenges*:
- Double wafer stage acceleration
- Much bigger mirrors
- Tighter accuracy specifications despite
*Solutions*:
- Stage and mirror dynamics, high bandwidth control
- Dynamics architecture: improved isolation, multiple isolate sets
- Heating compensation
** Conclusion
The conclusions are:
- Lithographic tools are the main enabler for over shrinking device sizes
- New (optical) requirements lead to new mechatronic challenges:
- Larger fields / better imaging: from stepping to scanning
- Larger wafer size: dual stage scanners
- Immersion: wafer stage & hood control
- Multiple patterning: planar motors and encoder technology
- EUV: all-vacuum stages
- High-NA EUV: new optics, much larger accelerations
2020-11-25 11:40:16 +01:00
* Keynote: High precision mechatronic approaches for advanced nanopositioning and nanomeasuring technologies :@eberhard_manske:
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
yt:6hSWI1wtjfo
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Coordinate Measurement Machines (CMM)
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Examples of Nano Coordinate Measuring Machines are shown in Figure [[fig:prec_cmm]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_cmm
#+caption: Example of Coordinate Measuring Machines
#+attr_latex: :width \linewidth
[[file:./figs/prec_cmm.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Difference between CMM and nano-CMM
With classical CMM, the Abbe-principle is not fulfilled in the x and y directions (Figure [[fig:prec_cmm_nano_cmm]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The Abbe error can be determined with:
\begin{equation}
\Delta l_{x,y,z} = l_{x,y,z} \sin \Delta \phi_{x,y,z}
\end{equation}
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Even with the best spindle: $l_{x,y} = 100 mm$ and $\Delta \phi = 2 \text{arcsec}$, we obtain an error of:
\begin{equation}
\Delta l = 0.1 \mu m
\end{equation}
which is not compatible with nano-meter precisions.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Then, the classical CMM will not work for nano precision
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_cmm_nano_cmm
#+caption: Schematic of a CMM
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_cmm_nano_cmm.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** How to do nano-CMM
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
High precision mechatronic approaches are required for advanced nano-positionign and nano-measuring technologies:
- High precision measurement concept
- High precision measurement systems
- High precision nano-sensors
Combined with:
- Advanced automatic control
- Advanced measuring strategies
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Concept - Minimization of the Abbe Error
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
In order to minimize the Abbe error, the measuring "lines" should have a common point of intersection (Figure [[fig:prec_nano_cmm_concept]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The 3D-realization of Abbe-principle is as follows:
- 3 interferometers: cartesian coordinate system
- probe located as the intersection point of the interferometers
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_nano_cmm_concept
#+caption: Error minimal measuring principle
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_nano_cmm_concept.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Minimization of residual Abbe error
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Still some residual Abbe error can happen as shown in Figure [[fig:prec_abbe_min]] due to both a change of angle and change of position.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_abbe_min
#+caption: Residual Abbe error
#+attr_latex: :width \linewidth
[[file:./figs/prec_abbe_min.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Compare of long travel guiding systems
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
In order to have the Abbe error compatible with nano-meter precision, the precision of the spindle should be less and one arcsec which is not easily feasible with air bearing of precision roller bearing technologies as shown in Figure [[fig:prec_comp_guid]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_comp_guid
#+caption: Characteristics of guidings
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_comp_guid.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Extended 6 DoF Abbe comparator principle
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The solution used was to measure in real time the angles of the frame using autocollimators as shown in Figure [[fig:prec_6dof_abbe]] and then to minimize this tilt by close loop operation with additional actuators.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The angular measurement error and control is less than $0.05 \text{arcses}$ which make the residual Abbe error:
\begin{equation}
\Delta l < 0.05\,nm
\end{equation}
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Without an error-minimal approach, nano-meter precision cannot be achieved in large areas.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_6dof_abbe
#+caption: Use of additional autocollimator and actuators for Abbe minimization
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_6dof_abbe.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Practical Realisation
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
A practical realization of the Extended 6 DoF Abbe comparator principle is shown in Figure [[fig:prec_practical_6dof]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_practical_6dof
#+caption: Practical Realization of the
#+attr_latex: :width \linewidth
[[file:./figs/prec_practical_6dof.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Tilt Compensation
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
To measure compensate for any tilt, two solutions are proposed:
1. Use a zero point angular auto-collimator (Figure [[fig:prec_tilt_corection]])
- Resolution: 0.005 arcsec
- Stability (1h): < 0.05 arcsec
2. 6 DoF laser interferoemter (Figure [[fig:prec_tilt_corection_bis]])
- Resolution: 0.00002 arcsec
- Stability (1h): < 0.00005 arcsec
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_tilt_corection
#+caption: Auto-Collimator
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_tilt_corection.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_tilt_corection_bis
#+caption: 6 Interferometers to measure tilts
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_tilt_corection_bis.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Comparison of long travail guiding systems - Bis
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Now, if we actively compensate the tilts are shown previously, we can fulfill the requirements as shown in Figure [[fig:prec_comp_guid_bis]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*Measurement and control technology to minimize Abbe errors to achieve*:
- sub-nanometer precision
- smaller moving mass
- better dynamics
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_comp_guid_bis
#+caption: Characteristics of the tilt compensation system
#+attr_latex: :width \linewidth
[[file:./figs/prec_comp_guid_bis.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Drive concept
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Usually, in order to achieve a large range over small resolution, each axis of motion is a combination of a coarse motion and a fine motion stage.
The coarse motion stage generally consist of a stepper motor while the fine motion is a piezoelectric actuator.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The approach here is to use an *homogenous drive concept for increase dynamics* (Figure [[fig:prec_drive_concept]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Only one linear voice coil actuator is used which with large moving range and sub-nanometer resolution can be achieve at one time.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_drive_concept
#+caption: Voice Coil Actuator
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_drive_concept.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** NPMM-200 with extended measuring volume
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The NPMM-200 machine can be seen in Figure [[fig:prec_mechanics]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Characteristics:
- Measuring range: 200 mm x 200 mm x 25 mm
- Resolution: 20 pm
- Abbe comparator principle
- 6 laser interferometers
- Active angular compensation
- Position uncertainty < 4 nm
- Measuring uncertainty up to 30 nm
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_mechanics
#+caption: Picture of the NPMM-200
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_mechanics.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The NPMM-200 actually operates inside a Vacuum chamber as shown in Figure [[fig:prec_vacuum_cham]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_vacuum_cham
#+caption: Vacuum chamber used
#+attr_latex: :scale 0.5
[[file:./figs/prec_vacuum_cham.png]]
** measurement capability
Some step responses are shown in Figure [[fig:prec_results_meas]] and show the nano-metric precision of the machine.
#+name: fig:prec_results_meas
#+caption: Sub nano-meter position accuracy
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_results_meas.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Picometer steps can even be achieved as shown in Figure [[fig:prec_results_pico]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_results_pico
#+caption: Picometer level control
#+attr_latex: :width 0.6\linewidth
[[file:./figs/prec_results_pico.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Extension of the measuring range (700mm)
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
If the measuring range is to be increase, there are some limits of the moving stage principle:
- large moving masses (~300kg)
- powerful drive systems required
- nano-meter position capability problematic
- large heat dissipation in the system
- dynamics and dynamic deformation
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The proposed solution is to use *inverse dynamic concept for minimization of moving masses*.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Inverse kinematic concept - Tetrahedrical concept
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The proposed concept is shown in Figure [[fig:prec_inverse_kin]]:
- mirrors and object to be measured are fixed
- probe and interferometer heads are moved
- laser beams virtually intersect in the probe tip
- Tetrahedrical measuring volume
This fulfills the Abbe principe but:
- large construction space
- difficult guide and drive concept
#+name: fig:prec_inverse_kin
#+caption: Tetrahedrical concept
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_inverse_kin.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Inverse kinematic concept - Scanning probe principle
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
An other concept, the scanning probe principle is shown in Figure [[fig:prec_inverse_kin_scan]]:
- cuboidal measuring volume
- Fixed x-y-z mirrors
- moving measuring head
- guide and drive system outside measuring volume
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_inverse_kin_scan
#+caption: Scanning probe principle
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/prec_inverse_kin_scan.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Inverse kinematic concept - Compact measuring head
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
In order to minimize the moving mass, compact measuring heads have been developed.
The goal was to make a lightweight measuring head (<1kg)
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The interferometer used are fiber coupled laser interferometers with a mass of 37g (Figure [[fig:prec_interferometers]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_interferometers
#+caption: Micro Interferometers
#+attr_latex: :scale 0.5
[[file:./figs/prec_interferometers.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The concept is shown in Figure [[fig:prec_inverse_meas_head]]:
- 6dof interferometers are used
- one micro-probe
- the total mass of the head is less than 1kg
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
There is some abbe offset between measurement axis of probe and of interferometer but *Abbe error compensation by closed loop control of angular deviations* is used.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_inverse_meas_head
#+caption:
#+attr_latex: :scale 0.5
[[file:./figs/prec_inverse_meas_head.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Inverse kinematic concept - Scanning probe principle
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
As shown in Figure [[fig:prec_abbe_compensation]], the abbe error can be compensated from the two top interferometers as:
\[ \text{for } l_x = a: \quad \Delta l_{\text{Abbe}} = \Delta l_{\text{int}} \]
Thus the tilt and Abbe errors can be compensated for with sub-nm resolution.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:prec_abbe_compensation
#+caption: Use of the interferometers to compensate for the Abbe errors
#+attr_latex: :scale 0.5
[[file:./figs/prec_abbe_compensation.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Conclusion
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Proposed approaches to push the nano-positioning and nano-measuring technology:
- Measurement and control technology to minimize Abbe errors
- Homogeneous drive concept for increased dynamics
- Inverse kinematic concept for minimization of moving mass
- Abbe-error compensation by closed loop control of angular deviations
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
* Designing anti-aliasing-filters for control loops of mechatronic systems regarding the rejection of aliased resonances :@ulrich_schonhoff:
** The phenomenon of aliasing of resonances
Weakly damped flexible modes of the mechanism can limit the performance of motion control systems.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
For discrete time controlled systems, there can be an additional limitation: aliased resonances which are rarely discussed.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_resonances
#+caption: Example of high frequency lighlty damped resonances
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/aliasing_resonances.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The aliasing of signals is well known (Figure [[fig:aliasing_signals]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
However, aliasing in systems can also happens and is schematically shown in Figure [[fig:aliasing_system]].
#+name: fig:aliasing_signals
#+caption: Aliasing of Signals
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/aliasing_signals.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_system
#+caption: Aliasing of Systems
#+attr_latex: :scale 0.5
[[file:./figs/aliasing_system.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The poles of the system will be aliased and their location will change in the complex plane as shown in Figure [[fig:aliasing_poles]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
More precisely:
- the imaginary parts of the poles mirror about the Nyquist frequency
- the real parts of the poles remain equal
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Therefore, the damping of the aliased resonances are foreseen to have larger dampings.
#+name: fig:aliasing_poles
#+caption: Aliasing of poles in the complex plane
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/aliasing_poles.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Let's consider two systems with a resonance:
1. below the Nyquist frequency (blue dashed)
2. above the Nyquist frequency (green dashed)
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Then looking at the same systems in the digital domain, one can see thathen the resonance is above the Nyquist frequency (Figure [[fig:aliasing_above_nyquist]]):
- the resonance mirrors
- the damping is increased
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Therefore, when identifying a low damped resonance, it could be that it comes form a high frequency low damped resonance.
#+name: fig:aliasing_above_nyquist
#+caption: Aliazed resonance shown on the Bode Diagram
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/aliasing_above_nyquist.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:alising_much_above_nyquist
#+caption: Higher resonance frequency
#+attr_latex: :scale 0.5
[[file:./figs/alising_much_above_nyquist.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Nature, Modelling and Mitigation of potentially aliasing resonances
The aliased modes can for instance comes from local modes in the actuators that are lightly damped and at high frequency (Figure [[fig:alising_nature]])
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:alising_nature
#+caption: Local vibration mode that will be alized
#+attr_latex: :scale 0.5
[[file:./figs/alising_nature.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The proposed idea to better model aliasing resonances is to include more modes in the FEM software as shown in Figure [[fig:aliasing_modeling]] and then perform an order reduction in matlab.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_modeling
#+caption: Common procedure and proposed procedure to include aliazed resonances
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/aliasing_modeling.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Anti aliasing filter design
*** Introduction
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
- Anti-aliasing filtering can be used to reject aliasing of resonances and to maintain the stability of the control loop
- However, its phase lag deteriorates the control loop performances:
- phase margin decreases (Figure [[fig:alising_filter_introduction]])
- sensitivity peak increases (Figure [[fig:aliasing_sensitivity_effect]])
- Thus, the anti-aliasing filter should be targeted at sufficient rejection at least possible phase lag
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:alising_filter_introduction
#+caption: Example of the effect of aliased resonance on the open-loop
#+attr_latex: :scale 0.5
[[file:./figs/alising_filter_introduction.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_sensitivity_effect
#+caption: Example of the effect of aliased resonance on sensitivity function
#+attr_latex: :scale 0.5
[[file:./figs/aliasing_sensitivity_effect.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Concept of equivalent delay
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*Concept*:
- At frequencies well below its poles and zeros, a continuous time filter $F(j\omega)$ shows almost linear phase:
\begin{equation}
\arg\big( F(j\omega) \big) \approx -T_e \omega
\end{equation}
- Thus, *the phase lag of the filter can be fairly correctly represented by a time delay (below the pole frequency)*.
The equivalent delay is:
\begin{equation}
T_e = \sum_{i=1}^{N_p} \frac{\xi_{pi}}{\omega_{0pi}} - \sum_{i=1}^{N_z} \frac{\xi_{zi}}{\omega_{0zi}}
\end{equation}
- where $\omega_{0pi}$ is the natural frequency $\xi_{pi}$ is the damping of the $N_p$ poles of $F(s)$.
Similarly, $\omega_{0zi}$ is the natural frequency $\xi_{zi}$ is the damping of the $N_z$ zeros of $F(s)$.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*Examples* (Figure [[fig:aliasing_equivalent_delay]]):
- First order low pass filter:
\[ \xi_p = 1 \Rightarrow T_e = \frac{1}{\omega_c} \]
- Second order Butterworth low pass filter:
\[ \xi_p = \frac{1}{\sqrt{2}} \Rightarrow T_e = \sqrt{2} \frac{1}{\omega_c} \]
- First order lead:
\[ \xi_z = 1 \Rightarrow T_e = - \frac{1}{\omega_c} \]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_equivalent_delay
#+caption: Magnitude, Phase and Phase delay of 3 filters
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/aliasing_equivalent_delay.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Budgeting of phase lag
The budgeting of the phase lag is done by expressing the phase lag of each element by a time delay (Figure [[fig:aliasing_budget_phase]])
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_budget_phase
#+caption: Typical control loop with several phase lag / time delays
#+attr_latex: :width \linewidth
[[file:./figs/aliasing_budget_phase.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The equivalent delay of each element are listed in Figure [[fig:aliasing_budget_table]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_budget_table
#+caption: Equivalent delay for all the elements of the control loop
#+attr_latex: :scale 0.5
[[file:./figs/aliasing_budget_table.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Selecting the filter order
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The filter order can be chosen depending on the frequency of the resonance.
Some example of Butterworth filters are shown in Figure [[fig:aliasing_filter_order_bode]] and summarized in Figure [[fig:aliasing_filter_order_table]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_filter_order_bode
#+caption: Example of few Butterworth filters
#+attr_latex: :scale 0.5
[[file:./figs/aliasing_filter_order_bode.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_filter_order_table
#+caption: Butterworth filters
#+attr_latex: :scale 0.5
[[file:./figs/aliasing_filter_order_table.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Reducing the phase lag
The equivalent delay of a low pass (here second order) depends on its damping, since:
\[ T_e = -2 \frac{\xi_{zi}}{\omega_{0zi}} \]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:aliasing_reduce_phase_lag
#+caption: Change of the phase delay with the damping of the filter
#+attr_latex: :scale 0.5
[[file:./figs/aliasing_reduce_phase_lag.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Conclusion
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The phenomenon of aliasing of resonances:
- Aliasing of resonances is an issue in discrete-time controlled mechatronic systems and *can limit the performance* and even *render the closed loop system unstable*
- Resonances above the Nyquist Frequency appear *aliased* at mirrored frequency for the discrete-time controller
- Aliased resonances show *increased damping* compared to the original resonances
- To find out if a resonance is an aliased one or not, change the sampling frequency and see if the frequency of the resonance is changing or not
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Nature, modelling and mitigation of potentially aliasing resonances:
- The origin are typically local resonances of the sensor and actuator components
- Careful modelling and selecting dominant modes above the Nyquist frequency is commended
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Anti-aliasing filter design:
- Anti-Aliasing filter design is the *trade-off between rejection and phase-lag*
- The concept of *equivalent delay* allows to budget and design the phase lag
- The order selection of anti alising-filter based on the required rejection is shown
- Several approaches to reduce overall phase lag are presented
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
* Flexure positioning stage based on delta technology for high precision and dynamic industrial machining applications :@mikael_bianchi:
2020-11-20 09:24:39 +01:00
** Introduction
2020-11-25 11:40:16 +01:00
- *Goal*: flexure positioning stage to do high precision and high dynamic/acceleration positioning.
The control architecture should be as simple as possible.
- *Application*: micromachinign for fabrication of 3d structures
- *Possible field*: watch industry, electronics, optics, ...
- *Possible technologies*: laser, milling, electro discharge machine
- *Objectives*: improve the productivity reaching high accelerations at high precision
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Design
*** Description of the Delta robot
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*Technical choice*: flexure based delta robot (Figure [[fig:flexure_delta_robot]]).
- Advantages: high mechanical precision without backlash
- Disadvantage: the motion is coupled, some transformations are required from motor coordinates to machine coordinates (Figure [[fig:flexure_delta_robot_schematic]])
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_delta_robot
#+caption: Picture of the Delta Robot
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/flexure_delta_robot.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_delta_robot_schematic
#+caption: x1, x2 x3 are the motor positions. f1,f2 f3 are the force motors. x,y,z are the position of the final point in cartesian coordinates
#+attr_latex: :width \linewidth
[[file:./figs/flexure_delta_robot_schematic.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Modelling and validation of the delta robot
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Lagrange equations are used to model the dynamics of the delta robot.
The motor positions are used as the general coordinate system.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The system is then linearized around the working point (Figure [[fig:flexure_equations]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_equations
#+caption: Linearized equations of the Delta Robot
#+attr_latex: :width \linewidth
[[file:./figs/flexure_equations.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Then the parameters are identified from experiment (Figure [[fig:flexure_identification]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_identification
#+caption: Identification fo the transfer function from $F_1$ to $x_1$
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/flexure_identification.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The measurement of the coupling is move complicated as shown in Figure [[fig:flexure_identification_coupling]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_identification_coupling
#+caption: Problem of identifying the coupling between F1 and x2 at low frequency
#+attr_latex: :scale 0.5
[[file:./figs/flexure_identification_coupling.png]]
*** Control design for high trajectory tracking
Control requirements:
- Precise position control of the coupled system (+/-10nm steps)
- Minimal trajectory error at high frequency (+/- 100nm at +/- 1g acceleration)
- Higher resonances attenuation
- Whole motion system is considered as a standard cartesian XYZ axes for the user (do the inverse/forward kinematics inside the control architecture)
#+name: fig:flexure_control_concept
#+caption: Control concept used for the Delta robot
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/flexure_control_concept.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Electronic board
A 3 axis servo control board as been developed (Figure [[fig:flexure_electronics_board]]) which includes:
- identification algorithm of the coupled system integrated in the board
- interpolator for sensors
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_electronics_board
#+caption: Servo control board
#+attr_latex: :scale 0.5
[[file:./figs/flexure_electronics_board.png]]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Results
*** Current control
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Step response of the current control loop is shown in Figure [[fig:flexure_current_control_results]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_current_control_results
#+caption: Step response for the current control loop
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/flexure_current_control_results.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*** Trajectory tracking: results with laser interferometer and encoder
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
XY renishaw interferometers used to verify the performance of the system (Figure [[fig:flexure_sensors]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_sensors
#+caption: Experimental setup to verify the performances of the system
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/flexure_sensors.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Some results are shown in Figures [[fig:flexure_results]], [[fig:flexure_steps]] and [[fig:flexure_dynamics_errors]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_results
#+caption: Circuit motion results and point to point motion results
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/flexure_results.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_steps
#+caption: Step response of the system
#+attr_latex: :width \linewidth
[[file:./figs/flexure_steps.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:flexure_dynamics_errors
#+caption: Measured dynamical errors
#+attr_latex: :width \linewidth
[[file:./figs/flexure_dynamics_errors.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Conclusion
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
As a conclusion, here are the identified conditions for precise and high dynamic positioning:
- Mechanics *without backlash* and *resonances in higher frequency*
- *Feedforward* with correct parameters
- *High bandwidth* position control and precise encoder
- Low noise current sensors and high bandwidth current control
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Resonances at mid frequencies are an issue for further improvements.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
* Multivariable performance analysis of position-controlled payloads with flexible eigenmodes :@luca_mettenleiter:
** Motivation
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Flexible eigenmodes are present in every system component and leads to::
- controller bandwidth limitation (Figure [[fig:mimo_flexible_modes]])
- additional cross-coupling in the system behavior (Figure [[fig:mimo_flexible_modes_coupling]])
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
=> can lead to stability problems
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_flexible_modes
#+caption: Limitation of the control bandwidth due to flexible eigenmodes
#+attr_latex: :width \linewidth
[[file:./figs/mimo_flexible_modes.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_flexible_modes_coupling
#+caption: Coupling due to flexible eigenmodes
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/mimo_flexible_modes_coupling.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
In order to estimate the performances of a system, the sensitivity function can be used (Figure [[fig:mimo_sensitivity_performance]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_sensitivity_performance
#+caption:Bode plot of a typical Sensitivity function
#+attr_latex: :scale 0.5
[[file:./figs/mimo_sensitivity_performance.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Performance analysis with different sensitivity functions
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
There are different way to analyse the sensitivity function base on different plants (Figure [[fig:mimo_sensitivity_functions]]):
1. the *full system* (complicated):
\[ L_{full} = \begin{bmatrix}L_{11} & L_{12} \\ L_{21} & L_{22} \end{bmatrix} \]
2. the *diagonal system* (ignoring interaction)
\[ L_{diag} = \begin{bmatrix}L_{11} & 0 \\ 0 & L_{22} \end{bmatrix} \]
3. the *loop interaction system* (the one proposed here)
\[ L^{LI} = \begin{bmatrix}L_1^{LI} & 0 \\ 0 & L_2^{LI} \end{bmatrix} \]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The loop interaction methods created a SISO system that also represents the coupling in the system.
One loop is closed at a time, and the coupling effects are taken into account.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_sensitivity_functions
#+caption: Visual representation of the three systems
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/mimo_sensitivity_functions.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Example system
In order to compare the use of the three systems to estimate the performances of a MIMO system, the system shown in Figure [[fig:mimo_example_system]] is used.
The 4 top masses are used to represent a payload that will add coupling in the system due to its resonances.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
A diagonal PID controller is used.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_example_system
#+caption: Schematic representation of the example system
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/mimo_example_system.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The bode plot of the MIMO system is shown in Figure [[fig:mimo_example_bode]] where we can see the resonances in the off-diagonal elements.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_example_bode
#+caption: Bode plot of the full MIMO system
#+attr_latex: :width \linewidth
[[file:./figs/mimo_example_bode.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
In Figure [[fig:mimo_example_sensitivity]] is shown that the sensitivity function computed from the SISO system is not correct.
Whereas for the "interaction method" system, it is correct and almost match the full system sensibility.
However, as expected, the off-diagonal sensibilities are not modelled.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_example_sensitivity
#+caption: Bode plots of sensitivity functions
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/mimo_example_sensitivity.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Conclusion
The conclusion are the following and summarized in Figure [[fig:mimo_results]]:
- Choice of suitable analysis method is key concept in mechatronics engineering
- Various methods for analysis of multivariable systems available:
- Full system always delivers reliable information, but much analysis effort
- Loop interaction method delivers reliable information, only if the system is weakly or symmetrically coupled
- Diagonal system delivers unreliable information, as it does not take multivariable character into account
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimo_results
#+caption: Comparison of the three methods to deal with a MIMO system
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/mimo_results.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
* High-precision motion system design by topology optimization considering additive manufacturing :@arnoud_delissen:
** Introduction
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The goal of this project is to perform a topology optimization of a 6dof magnetic levitated stage suitable for vacuum.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
For the current system (Figure [[fig:mimoopt_6dof_stage]]), the bandwidth is limited by the short-stroke dynamics (eigenfrequencies).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The goal here is to make the eigen-frequency higher as this will allow more bandwidth.
#+name: fig:mimoopt_6dof_stage
#+caption: Schematic of the 6dof levitating stage
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/mimoopt_6dof_stage.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Case
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
More precisely, the goal is to automatically maximize the three eigen-frequencies of the system shown in Figure [[fig:mimoopt_case]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimoopt_case
#+caption: System to be optimized
#+attr_latex: :scale 0.3
[[file:./figs/mimoopt_case.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Manufacturing process
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The manufacturing process must be embedded in the optimization such that the obtained design is producible.
The process is shown in Figure [[fig:mimoopt_process]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimoopt_process
#+caption: Manufacturing process
#+attr_latex: :scale 0.3
[[file:./figs/mimoopt_process.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Topology optimization
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*Problem*: for a given volume, maximize the eigen-frequencies of the system.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
To do so, the system is discretized into small elements (Figure [[fig:mimoopt_3d_opti]]).
Then, a Finite Element Analysis is performed to compute the eigen-frequencies of the system.
Finally, for each element, the "gradient is computed" and we determine if material should be added or removed.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
This is done in 3D. The individual 1mm x 1mm x 1mm elements are shown in Figure [[fig:mimoopt_3d_opti]].
The number of elements is 1 million (=> 15 minutes per iteration to compute the 3 eigen-frequencies).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimoopt_3d_opti
#+caption: Results of the topology optimization and zoom to see individual elements
#+attr_latex: :width \linewidth
[[file:./figs/mimoopt_3d_opti.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Performance Comparison
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The obtained mass and eigen-frequencies of the optimized system and the solid equivalents are compared in Figure [[fig:mimoopt_performance]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimoopt_performance
#+caption: Comparison of the obtained performances
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-25 11:40:16 +01:00
[[file:./figs/mimoopt_performance.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Identification on the realized system shown that the obtained eigen-frequencies are very closed to the estimated ones (Figure [[fig:mimoopt_frf_identification]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:mimoopt_frf_identification
#+caption: Results very close to simulation (~1% for the eigen frequencies)
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/mimoopt_frf_identification.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Conclusion
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
- Increase in performance (~2x) compared to solid designs
- A design is obtained in ~ 1 day
- Practical constraints are incorporated in the optimization
- The method is validated in practice by a demonstrator
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
* A multivariable experiment design framework for accurate FRF identification of complex systems :@nic_dirkx:
** Introduction
*Goal*: Need for higher quality FRF models that are used to:
- Controller design
- Observer design
- System diagnostics
- Parametric modelling
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
High quality FRFs requires careful design of excitation $w$.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
Typical experimental identification of the FRFs is shown in Figure [[fig:frf_introduction]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The design trade-off is:
- Maximize input gain to minimize FRF uncertainty
- Bounded signal $u$ and $y$ to remain within operating limited (actuator/amplifier power limitations and limited move ranges)
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:frf_introduction
#+caption: schematic of the identification of the FRF
#+attr_latex: :scale 0.5
[[file:./figs/frf_introduction.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
For SISO systems:
- Only the frequency size of the excitation signal should be optimized
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
For MIMO systems:
- the gains and *directions* should be frequency wise optimized
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
*Objective*:
- establish optimal experiment design framework that optimize the excitation signal to obtain MIMO FRFs with low uncertainty
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Role of directions and constrains in multivariable excitation design
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The classical way to estimate MIMO FRFs is the following:
- First start with one direction and increase the gain until constrains is attained (Figure [[fig:frf_direction_excitation]])
- Do the same with the second input
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
This lead to non-optimal FRFs estimation.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:frf_direction_excitation
#+caption: Example of a SISO approach to identify MIMO FRFs
#+attr_latex: :width \linewidth
[[file:./figs/frf_direction_excitation.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
When having a MIMO approach and choosing both the direction and gain of the excitation inputs, we can obtained much better FRFs uncertainty while still fulfilling the constraints (Figure [[fig:frf_mimo]]).
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:frf_mimo
#+caption: Example of the MIMO approach that gives much better FRFs
#+attr_latex: :width \linewidth
[[file:./figs/frf_mimo.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Solving the optimization problem
The optimization problem is to minimize the model uncertainty by choosing the design variables which are the magnitude and direction of the inputs $w$.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The optimization is a two step process as shown in Figure [[fig:frf_optimization_steps]]:
1. first identification without optimization that allows to have data to run the optimization process
2. second identification with optimized input direction and gain
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The problem with this optimization problem is that it is not convex in general and has a log of design variables.
There is no general methods to solve this problem, a dedicated algorithm is required.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
In this work, two algorithms are proposed and not further detailed here.
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:frf_optimization_steps
#+caption: Two step optimization process
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-25 11:40:16 +01:00
[[file:./figs/frf_optimization_steps.png]]
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
** Experimental validation
Experimental identification of a 7x8 MIMO plant was performed in for different cases:
1. non optimized SISO approach (grey)
2. optimized SISO approach (blue)
3. optimized MIMO approach using SSDR (first algorithm proposed) (green)
4. optimized MIMO approach using RR (second algorithm proposed) (red)
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
The obtained FRFs are shown in Figure [[fig:frf_experiment]].
2020-11-20 09:24:39 +01:00
2020-11-25 11:40:16 +01:00
#+name: fig:frf_experiment
#+caption: Obtained MIMO FRFs
#+attr_latex: :width \linewidth
[[file:./figs/frf_experiment.png]]
A comparison of one of the obtained FRFs is shown in Figure [[fig:frf_experiment_optimized]].
It is quite clear that the MIMO approach can give much lower FRF uncertainty.
The RR proposed algorithm is giving the best results
#+name: fig:frf_experiment_optimized
#+caption: Example of one of the obtained FRF
#+attr_latex: :width \linewidth
[[file:./figs/frf_experiment_optimized.png]]
2020-11-20 09:24:39 +01:00
** Conclusion
2020-11-25 11:40:16 +01:00
- The uncertainty of the obtained FRF are obtained by doing several experimental identification with a deterministic input signal.
The FRF are computed multiple times, and the spread of the results at each frequency represents this uncertainty.
- Exploiting directionality in excitation design enables significant FRF quality improvement
- Multivariable design involves hard non-convex optimization problem
- Computationally tractable design framework for large scale MIMO systems established
- Near global optimal quality achieved on wafer stage setup using RR algorithm
2020-11-20 09:24:39 +01:00
* Reducing control delay times to enhance dynamic stiffness of magnetic bearings :@jan_philipp_schmidtmann:
2020-11-20 09:47:00 +01:00
** Introduction
2020-11-20 09:24:39 +01:00
This projects focuses on reducing the control delay times of a magnetic bearing shown in Figure [[fig:magn_bear_intro]].
#+name: fig:magn_bear_intro
#+caption: 6 DoF Position System - Concept
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/magn_bear_intro.png]]
Active magnetic bearings are unstable systems and require active control.
However, the active control of magnet forces leads to a control delay that limits the performances (stiffness) of the bearing.
2020-11-20 09:47:00 +01:00
** Time Delay Reduction
2020-11-20 09:24:39 +01:00
Typical contributors to the control delay time are shown in Figure [[fig:magn_bear_delay]].
#+name: fig:magn_bear_delay
#+caption: Typical Contributors to control delay time
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/magn_bear_delay.png]]
The reduction of the control time delay will increase the dynamic stiffness of the bearing as well as decrease the effects of external disturbances and hence improve the positioning errors (Figure [[fig:magn_bear_distur]]).
The steps to reduce the control delay time are:
1. Eliminate BUSS-communication by merging position and current controller
2. Reduce cycle time by using rapid prototyping system
3. Reduce delay in PWM driver by using high PWM frequencies with SiC driver
#+name: fig:magn_bear_distur
#+caption: The effect of control delay on stiffness
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/magn_bear_distur.png]]
2020-11-20 09:47:00 +01:00
** Practical Realization
2020-11-20 09:24:39 +01:00
Therefore, the position and current control have been merged into one controller (Figure [[fig:magn_controller]]).
#+name: fig:magn_controller
#+caption: Controller for position and current
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/magn_controller.png]]
A dSpace rapid prototyping system is used for fast position and current control.
Characteristics of the used elements are shown in Figure [[fig:magn_bear_setup]].
#+name: fig:magn_bear_setup
#+caption: Setup for reduced delay times
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/magn_bear_setup.png]]
2020-11-20 09:47:00 +01:00
** Results
2020-11-20 09:24:39 +01:00
Differences between the previous PWM controller and the new SiC controller are shown in Figure [[fig:magn_bear_results]].
The delay time is almost completely eliminated.
#+name: fig:magn_bear_results
#+caption: Reduction of delay in PWM Driver
[[file:./figs/magn_bear_results.png]]
2020-11-20 09:47:00 +01:00
** Conclusion
2020-11-20 09:24:39 +01:00
Due to all the performed modifications, the control delay time could be reduced by 80%.
The next steps for this project are shown in Figure [[fig:magn_bear_conclusion]].
#+name: fig:magn_bear_conclusion
#+caption: Next Steps
[[file:./figs/magn_bear_conclusion.png]]
* Digital twins in control: From fault detection to predictive maintenance in precision mechatronics :@koen_classens:
** Motivation
Models are usually for the control design part that can be either physical models (FEM, first principle) or data-driven models.
However, these models are usually not used after control system is implemented (Figure [[fig:twins_motivation]]).
#+name: fig:twins_motivation
#+caption: Typical of of models in a mechatronic system
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_motivation.png]]
Here, the models are exploited to monitor the system and predict future possible failures in the system.
Use models as digital twin for *fault detection and Isolation for predictive maintenance in precision mechatronics* (Figure [[fig:twing_fdi]]).
#+name: fig:twing_fdi
#+caption: FDI is using the model of the plant
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/twing_fdi.png]]
** Predictive Maintenance
Classical maintenance happens when the system is not working anymore as shown in Figure [[fig:twins_predictive_maintenance]].
#+name: fig:twins_predictive_maintenance
#+caption: Maintenance done when a failure is appearing
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_predictive_maintenance.png]]
It is possible to perform some preventive maintenance before a failure happens, but this is still not optimal.
#+name: fig:twins_predictive_maintenance_bis
#+caption: Preventive Maintenance
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_predictive_maintenance_bis.png]]
The idea here is to predict when the failure will happen in order to only do maintenance only when really necessary.
This will minimize the down time of the machine.
#+name: fig:twins_predictive_maintenance_ter
#+caption: Predictive maintenance
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_predictive_maintenance_ter.png]]
** Objectives
The main objective is to develop a system monitoring approach for precision mechatronic systems, exploiting prior information (models) and integrating posterior information (real-time measured data).
Even though state of the art system monitoring are already in used in aerospace, process industry and automotive, there are few specificity for mechatronic systems:
- Control loops
- Large-scale MIMO systems (interaction)
- Accurate models: Frequency Response Functions
** Null-space based FDI
The goal is to applied a decentralized Fault Detection on the system shown in Figure [[fig:twings_fdi_test]] to detect actuator faults at $J_1$.
This should take into account the control loop, interaction in the system and be FRF based.
#+name: fig:twings_fdi_test
#+caption: Test System
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.5
2020-11-20 09:24:39 +01:00
[[file:./figs/twings_fdi_test.png]]
The architecture to estimate faults in the system is shown in Figure [[fig:twins_null_space_fdi]].
The goal is to design $Q_u$ and $Q_y$ such that $\epsilon$ is a representation of faults in the system.
#+name: fig:twins_null_space_fdi
#+caption: Residual Generator
2020-11-20 09:47:00 +01:00
#+attr_latex: :scale 0.4
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_null_space_fdi.png]]
When a fault happens (Figure [[fig:twins_results_fdi]]), the outputs signals are not changing that much (because of feedback), however the system is able to find that there is a problem using the residual $\epsilon$.
#+name: fig:twins_results_fdi
#+caption: Simulation Results
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_results_fdi.png]]
*Procedure*:
- Additive faults
- Closed-loop
- Interaction
- start from identification
** Roadmap from fault detection to predictive maintenance
The proposed system can detect faults in the system (Figure [[fig:twins_roadmap]]).
This proof of principle should now be applied on industrial systems.
Moreover, from the fault detection, predictive maintenance should be performed (Figure [[fig:twins_roadmap]]).
#+name: fig:twins_roadmap
#+caption: From proof of principle to industrial application
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_roadmap.png]]
#+name: fig:twins_roadmap_bis
#+caption: From fault detection to predictive maintenance
2020-11-20 09:47:00 +01:00
#+attr_latex: :width \linewidth
2020-11-20 09:24:39 +01:00
[[file:./figs/twins_roadmap_bis.png]]