Add detailed outline

This commit is contained in:
Thomas Dehaeze 2024-11-08 16:15:12 +01:00
parent ab9fa7c76e
commit 06ec295a68
2 changed files with 120 additions and 22 deletions

2
.gitignore vendored
View File

@ -1,5 +1,3 @@
mat/
figures/
ltximg/ ltximg/
slprj/ slprj/
matlab/slprj/ matlab/slprj/

View File

@ -96,20 +96,69 @@
#+END_SRC #+END_SRC
* Notes :noexport: * Notes :noexport:
** Notes
Prefix is =instrumentation=
Compilation of the following reports: Compilation of the following reports:
- [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org][test-bench-PD200]] and [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-piezo-amplifiers/index.org][test-bench-piezo-amplifiers]] (but less useful) - [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org][test-bench-PD200]] and [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-piezo-amplifiers/index.org][test-bench-piezo-amplifiers]] (but less useful)
- [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-vionic/test-bench-vionic.org][test-bench-vionic]] - [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-vionic/test-bench-vionic.org][test-bench-vionic]]
- [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-attocube/test-bench-attocube.org][test-bench-attocube]] - [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-attocube/test-bench-attocube.org][test-bench-attocube]]
- [ ] [[file:~/Cloud/work-projects/ID31-NASS/matlab/nass-simscape/org/noise_budgeting.org][file:~/Cloud/work-projects/ID31-NASS/matlab/nass-simscape/org/noise_budgeting.org]] for the maximum allowed noise of the relative motion sensors
- [ ] DAC, ADC, Control system - [ ] DAC, ADC, Control system
- [ ] Reading of the force sensor: ADC + [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-force-sensor/test-bench-force-sensor.org][test-bench-force-sensor]] - [ ] Reading of the force sensor: ADC + [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-force-sensor/test-bench-force-sensor.org][test-bench-force-sensor]]
Electrical characteristics of the APA force sensor Electrical characteristics of the APA force sensor
** TODO [#C] Noise budgeting to have specifications
Simplified model (uniaxial?)
From maximum induced vibration, and estimated bandwidth (S and T), estimate the maximum:
- Actuator noise (i.e DAC + voltage amplifier)
- force sensor noise (i.e. ADC) + encoder noise?
- external metrology noise? (not very relevant, maybe this should be assumed, similar to Attocube noise [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-attocube/test-bench-attocube.org][test-bench-attocube]])
=> *Specifications*
And specifications in terms of bandwidth, voltage ranges, etc...
** TODO [#C] Find instrumentation that meet such specification
How to read force sensor, etc...
** TODO [#C] Characterization of received instruments and compare with specifications
Test benches to characterize instruments
- [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org][test-bench-PD200]]
- [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-force-sensor/test-bench-force-sensor.org][test-bench-force-sensor]]
** TODO [#C] Perform rigorous noise budgeting
Sources:
- ADC: measured
- PD200: measured
- Encoder: measured
- ADC (force sensors): measured
- Ground motion: estimated
By taking into account all those sources, we should be able to do a noise budgeting and compare with the obtain measurements.
We need the following transfer functions:
- from ground motion (x,y,z) to strut motion (1 to 6) => Simscape
- from DAC voltage to strut motion => identified FRF
- from PD200 voltage to strut motion => identified FRF
- from ADC noise to strut motion => identified FRF + Controller (closed-loop)
* Introduction :ignore: * Introduction :ignore:
The goal is to show that each element in the system has been properly chosen based on certain requirements. The goal is to show that each element in the system has been properly chosen based on certain requirements.
In order to determine the maximum noise of each instrumentation, a dynamic error budgeting is performed in Section ref:sec:instrumentation_dynamic_error_budgeting.
The required instrumentation are then selected based on obtained noise specifications and other requirements summarized in Section ref:sec:instrumentation_choice.
The received instrumentation are characterized in Section ref:sec:instrumentation_characterization.
#+name: tab:instrumentation_section_matlab_code #+name: tab:instrumentation_section_matlab_code
#+caption: Report sections and corresponding Matlab files #+caption: Report sections and corresponding Matlab files
#+attr_latex: :environment tabularx :width 0.6\linewidth :align lX #+attr_latex: :environment tabularx :width 0.6\linewidth :align lX
@ -119,33 +168,84 @@ The goal is to show that each element in the system has been properly chosen bas
| Section ref:sec:instrumentation_ | =instrumentation_1_.m= | | Section ref:sec:instrumentation_ | =instrumentation_1_.m= |
* Digital to Analog converters * Dynamic Error Budgeting
:PROPERTIES: :PROPERTIES:
:HEADER-ARGS:matlab+: :tangle matlab/instrumentation_1_.m :HEADER-ARGS:matlab+: :tangle matlab/instrumentation_1_dynamic_error_budgeting.m
:END: :END:
<<sec:instrumentation_dac>> <<sec:instrumentation_dynamic_error_budgeting>>
** Introduction :ignore: ** Introduction :ignore:
** Matlab Init :noexport:ignore: *Goal*: get maximum noise of instrumentation
#+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 *Procedure*:
<<matlab-init>> - Get closed-loop transfer functions from noises to positioning error
#+end_src Need the multi-body model with controllers
- Suppose a maximum error ASD.
Suppose flat ASD, bandwidth of ~200Hz, maximum RMS of ~10nmRMS => x nm/sqrt(Hz)
- Deduce the maximum ASD of the noise sources
#+begin_src matlab :tangle no :noweb yes Have a look at his report: [[file:~/Cloud/work-projects/ID31-NASS/matlab/nass-simscape/org/noise_budgeting.org][file:~/Cloud/work-projects/ID31-NASS/matlab/nass-simscape/org/noise_budgeting.org]]
<<m-init-path>>
#+end_src
#+begin_src matlab :eval no :noweb yes ** Estimation of the online metrology noise
<<m-init-path-tangle>>
#+end_src
#+begin_src matlab :noweb yes [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-attocube/test-bench-attocube.org][test-bench-attocube]]
<<m-init-other>>
#+end_src ** Closed-Loop transfer functions
** Estimation of maximum instrumentation noise
- Output the maximum instrumentation noise ASD in =.mat= files (that will be used to compare with the obtained instrumentations)
* Choice of Instrumentation
:PROPERTIES:
:HEADER-ARGS:matlab+: :tangle matlab/instrumentation_2_choice.m
:END:
<<sec:instrumentation_choice>>
** Introduction :ignore:
In previous section: noise characteristics.
In this section, other characteristics (range, bandwidth, etc...)
ADC, DAC, Voltage amplifier, Encoder
*Model of each instrument* (transfer function + noise source).
In this section, also tell which instrumentation has been bought.
** Piezoelectric Voltage Amplifier
Capacitance of the piezoelectric actuator
** ADC
Talk about input impedance, ...
Add resistor, reading of the force sensor: ADC + [[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-force-sensor/test-bench-force-sensor.org][test-bench-force-sensor]]
* Characterization of Instrumentation
:PROPERTIES:
:HEADER-ARGS:matlab+: :tangle matlab/instrumentation_3_characterization.m
:END:
<<sec:instrumentation_characterization>>
** Introduction :ignore:
For each element, make a table with the specifications, and the measured performances for comparison.
** Analog to Digital Converters
[[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org::*Quantization Noise of the ADC][Quantization Noise of the ADC]]
** Digital to Analog Converters
[[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org::*16bits DAC noise measurement][16bits DAC noise measurement]]
** Piezoelectric Voltage Amplifier
[[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org][test-bench-PD200]]
** Linear Encoders
[[file:~/Cloud/work-projects/ID31-NASS/matlab/test-bench-vionic/test-bench-vionic.org][test-bench-vionic]]
* Conclusion * Conclusion
<<sec:instrumentation_conclusion>> <<sec:instrumentation_conclusion>>