179 lines
9.5 KiB
Markdown
179 lines
9.5 KiB
Markdown
# Nano Active Stabilization of samples for tomography experiments: A mechatronic design approach
|
|
|
|
**Author:** Thomas Dehaeze
|
|
**University:** Liège Université
|
|
**Date:** April 2025
|
|
|
|
[](https://doi.org/10.5281/zenodo.15254389)
|
|
|
|
## Abstract
|
|
|
|
The fourth generation synchrotron light sources has yielded X-ray beams with a 100-fold increase in brightness and sub-micron focusing capabilities, offering unprecedented scientific opportunities while requiring end-stations with enhanced sample positioning accuracy.
|
|
At the European Synchrotron (ESRF), the ID31 beamline features an end-station for positioning samples along complex trajectories.
|
|
However, its micrometer-range accuracy, limited by thermal drifts and mechanical vibrations, prevents maintaining the point of interest on the focused beam during experiments.
|
|
|
|
To address this limitation, this thesis aims to develop a system for actively stabilizing the sample's position down to the nanometer range while the end-station moves the sample through the beam.
|
|
The developed system integrates an external metrology for sample position measurement, an active stabilization stage mounted between the end-station and the sample, and a dedicated control architecture.
|
|
The design of this system presented key challenges, first of which involved the design process.
|
|
To effectively predict how this complex mechatronic system would perform, a series of dynamical models with increasing accuracy were employed.
|
|
These models allowed simulation of the system's behavior at different design stages, identifying potential weaknesses early on before physical construction, ultimately leading to a design that fully satisfies the requirements.
|
|
The second challenge stems from control requirements, specifically the need to stabilize samples with masses from 1 to 50 kg, which required the development of specialized robust control architectures.
|
|
Finally, the developed Nano Active Stabilization System underwent thorough experimental validation on the ID31 beamline, validating both its performance and the underlying concept.
|
|
|
|
## About This Repository & Reproducible Research
|
|
|
|
The foundation of this PhD thesis is built upon the principles of **reproducible research**.
|
|
Reproducible research is the practice of ensuring that the results of a study can be independently verified by others using the original data, code, and documentation.
|
|
|
|
This approach was adopted to increase transparency and trust in the presented research findings.
|
|
Furthermore, it is anticipated that the methods and data shared will facilitate knowledge transfer and reuse within the scientific community, thereby reducing research redundancy and increasing overall efficiency.
|
|
It is hoped that some aspects of this work may be reused by the synchrotron community.
|
|
|
|
The fundamental objective has been to ensure that anyone should be capable of reproducing precisely the same results and figures as presented in this manuscript.
|
|
To achieve this goal of reproducibility, comprehensive sharing of all elements has been implemented.
|
|
This includes the mathematical models developed, raw experimental data collected, and scripts used to generate the figures.
|
|
|
|
For those wishing to engage with the reproducible aspects of this work, all data and code are freely accessible in this Git repository.
|
|
The organization of the code mirrors that of the manuscript, with corresponding chapters and sections.
|
|
All materials have been made available under the MIT License, permitting free reuse.
|
|
|
|
This repository includes:
|
|
* Raw and/or processed data used in the analyses.
|
|
* MATLAB scripts and functions for data processing, simulations, and figure generation.
|
|
* Simulink/Simscape models developed or used during the research.
|
|
* A digital copy of the final PhD thesis document.
|
|
|
|
## Repository Structure
|
|
|
|
The repository is organized as follows:
|
|
|
|
```
|
|
|
|
.
|
|
├── A1-nass-uniaxial-model # Every Section in the PhD thesis has its own direction
|
|
├── A2-nass-rotating-3dof-model
|
|
├── A3-micro-station-modal-analysis
|
|
├── A4-simscape-micro-station # The directory for each section is structure as follows:
|
|
│ ├── mat # - All raw data
|
|
│ ├── src # - All Matlab functions, automatically added to the path
|
|
│ ├── STEPS # - .step files used for the multi-body (Simscape) model
|
|
│ ├── subsystems # - subsystems used in the multi-body (Simscape) model
|
|
│ ├── ustation_1_kinematics.m # - The Matlab scripts corresponding to the different sections
|
|
│ ├── ustation_2_modeling.m
|
|
│ ├── ustation_3_disturbances.m
|
|
│ ├── ustation_4_experiments.m
|
|
│ └── ustation_simscape.slx # - The Simscape model used in this particular section
|
|
├── A5-simscape-nano-hexapod
|
|
├── A6-simscape-nass
|
|
├── B1-nass-geometry
|
|
├── B2-nass-fem
|
|
├── B3-control
|
|
├── B4-nass-instrumentation
|
|
├── C1-test-bench-apa
|
|
├── C2-test-bench-flexible-joints
|
|
├── C3-test-bench-struts
|
|
├── C4-test-bench-nano-hexapod
|
|
├── C5-test-bench-id31
|
|
├── init.m # Optional: Some Matlab configuration to have same figure display
|
|
├── LICENSE # MIT License is used for all the code in this repository
|
|
└── README.md # The present file
|
|
|
|
````
|
|
|
|
|
|
## Requirements
|
|
|
|
To run the code and reproduce the results in this repository, you will need the following software environment:
|
|
|
|
**Operating System:**
|
|
* Tested on:
|
|
* Microsoft Windows
|
|
* Linux
|
|
* Should be compatible with other versions of Windows, macOS, and Linux supporting MATLAB R2022a.
|
|
|
|
**Software:**
|
|
* **MATLAB Version:** 9.12 (R2022a) Update 8 or later compatible version.
|
|
* **Required MATLAB Toolboxes:**
|
|
* Simulink: Version 10.5
|
|
* Control System Toolbox: Version 10.11.1
|
|
* Curve Fitting Toolbox: Version 3.7
|
|
* Optimization Toolbox: Version 9.3
|
|
* Robust Control Toolbox: Version 6.11.1
|
|
* Signal Processing Toolbox: Version 9.0
|
|
* Simscape: Version 5.3
|
|
* Simscape Multibody: Version 7.5
|
|
* Simulink Control Design: Version 6.1
|
|
* Symbolic Math Toolbox: Version 9.1
|
|
* System Identification Toolbox: Version 9.16
|
|
|
|
|
|
## Instructions for Reproduction
|
|
|
|
1. **Clone the repository:**
|
|
* `git clone https://git.tdehaeze.xyz/tdehaeze/nass-matlab`
|
|
* Or download the repository from [Zenodo](https://doi.org/10.5281/zenodo.15254389)
|
|
2. **Set up MATLAB Environment:**
|
|
* Ensure MATLAB R2022a and all required toolboxes listed above are installed.
|
|
* Open MATLAB.
|
|
* Navigate to the root directory of the cloned repository within MATLAB.
|
|
* (optional) If same figure appearance is wanted, copy the `init.m` file into your own `init.m` file.
|
|
* Enter the directory corresponding to a PhD thesis section, for instance `A4-simscape-micro-station`.
|
|
3. **Run the Code:**
|
|
* The code corresponding to a sub-section can be run with `run ustation_1_kinematics.m` or by pressing `F-5` once the Matlab file is openned.
|
|
* All the figures corresponding to this sub-section should be computed and displayed.
|
|
* Depending on the particular sub-section, the computation may take some time, especially when multi-body simulation is involved.
|
|
|
|
## Citation
|
|
|
|
If you use the code, data, or findings from this repository or the associated thesis, please cite:
|
|
|
|
**Thesis:**
|
|
* Dehaeze, T. (2025). Nano active stabilization of samples for tomography experiments: a mechatronic design approach. Université de Liège.
|
|
|
|
|
|
**Software/Data Repository (Zenodo):**
|
|
* Dehaeze, T. (2025). Code and Data for PhD Thesis: Nano active stabilization of samples for tomography experiments: a mechatronic design approach. Zenodo. https://doi.org/10.5281/zenodo.15254389
|
|
|
|
```bibtex
|
|
@phdthesis{dehaeze25_nano_activ_stabil,
|
|
author = {Dehaeze, T.},
|
|
school = {Universit{\'e} de Li{\`e}ge},
|
|
title = {Nano Active Stabilization of samples for tomography experiments: A mechatronic design approach},
|
|
year = 2025,
|
|
}
|
|
|
|
@misc{dehaeze25_nano_activ_stabil_zenodo,
|
|
author = {Dehaeze, T.},
|
|
title = {Nano Active Stabilization of samples for tomography experiments: A mechatronic design approach},
|
|
month = {5},
|
|
year = {2025},
|
|
publisher = {Zenodo},
|
|
doi = {10.5281/zenodo.15254389},
|
|
url = {https://doi.org/10.5281/zenodo.15254389}
|
|
}
|
|
````
|
|
|
|
## License
|
|
|
|
The code and associated files in this repository are licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
|
|
|
|
Copyright (c) 2025 Thomas Dehaeze
|
|
|
|
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.
|