% Created 2025-02-27 Thu 14:29
% Intended LaTeX compiler: pdflatex
\documentclass[a4paper, 10pt, DIV=12, parskip=full, bibliography=totoc]{scrreprt}

\input{preamble.tex}
\input{preamble_extra.tex}
\bibliography{nass-instrumentation.bib}
\author{Dehaeze Thomas}
\date{\today}
\title{Nano Active Stabilization System - Instrumentation}
\hypersetup{
 pdfauthor={Dehaeze Thomas},
 pdftitle={Nano Active Stabilization System - Instrumentation},
 pdfkeywords={},
 pdfsubject={},
 pdfcreator={Emacs 29.4 (Org mode 9.6)}, 
 pdflang={English}}
\usepackage{biblatex}

\begin{document}

\maketitle
\tableofcontents

\clearpage

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:detail_instrumentation_choice}.

The received instrumentation are characterized in Section \ref{sec:detail_instrumentation_characterization}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/detail_instrumentation_plant.png}
\caption{\label{fig:detail_instrumentation_plant}Block diagram of the NASS with considered instrumentation}
\end{figure}

\chapter{Dynamic Error Budgeting}
\label{sec:detail_instrumentation_dynamic_error_budgeting}
\textbf{Goal}: get maximum noise of instrumentation

\textbf{Procedure}:
\begin{itemize}
\item Get closed-loop transfer functions from noises to positioning error (only vertical?)
Need the multi-body model with controllers
Or maybe simplified 1DoF ?
\item Suppose a maximum error ASD.
Suppose flat ASD, bandwidth of \textasciitilde{}200Hz (\textbf{should we really consider 200Hz? and not 10kHz? makes use differences}), maximum RMS of \textasciitilde{}10nmRMS => x nm/sqrt(Hz)
\item Deduce the maximum ASD of the noise sources
\end{itemize}

Have a look at his report: \href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/nass-simscape/org/noise\_budgeting.org}{file:\textasciitilde{}/Cloud/work-projects/ID31-NASS/matlab/nass-simscape/org/noise\_budgeting.org}
\section{Closed-Loop transfer functions}

\begin{itemize}
\item Most stringent requirement: vertical vibrations below 15nm RMS
\item Because of system symmetry, only one strut is considered
It is suppose that the vibrations induced by each strut is uncorrelated
combination of 6 actuators with uncorrelated noise => x2.5
\item Therefore, each actuator should induce less than 15/2.5=6nm RMS of vibration in the vertical direction
\end{itemize}

The following noise sources are considered:
\begin{itemize}
\item from noise of the actuator voltage to error
\item from force sensor noise to error
\item from measurement noise to error
\end{itemize}

\section{Estimation of maximum instrumentation noise}

\begin{itemize}
\item Output the maximum instrumentation noise ASD in \texttt{.mat} files (that will be used to compare with the obtained instrumentation)
\end{itemize}

\chapter{Choice of Instrumentation}
\label{sec:detail_instrumentation_choice}
In previous section: noise characteristics.
In this section, other characteristics (range, bandwidth, etc\ldots{})

ADC, DAC, Voltage amplifier, Encoder

\textbf{Model of each instrument} (transfer function + noise source).

In this section, also tell which instrumentation has been bought, and different options.
\section{Piezoelectric Voltage Amplifier}

Low pass Filter
\begin{itemize}
\item Capacitance of the piezoelectric actuator
\item Output impedance of the voltage amplifier
\end{itemize}

Noise: \cite{spengen20_high_voltag_amplif}

Bandwidth: \cite{spengen16_high_voltag_amplif}

A picture of the PD200 amplifier is shown in Figure \ref{fig:amplifier_PD200}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=0.7\linewidth]{figs/amplifier_PD200.png}
\caption{\label{fig:amplifier_PD200}Picture of the PD200 Voltage Amplifier}
\end{figure}

The specifications as well as the amplifier characteristics as shown in the datasheet are summarized in Table \ref{tab:pd200_characteristics}.

\begin{table}[htbp]
\caption{\label{tab:pd200_characteristics}Characteristics of the PD200 compared with the specifications}
\centering
\begin{tabularx}{0.7\linewidth}{lcc}
\toprule
\textbf{Characteristics} & \textbf{Manual} & \textbf{Specification}\\
\midrule
Input Voltage Range & +/- 10 [V] & +/- 10 [V]\\
Output Voltage Range & -50/150 [V] & -20/150 [V]\\
Gain & 20 [V/V] & \\
Maximum RMS current & 0.9 [A] & > 50 [mA]\\
Maximum Pulse current & 10 [A] & \\
Slew Rate & 150 [V/us] & \\
Noise (10uF load) & 0.7 [mV RMS] & < 2 [mV rms]\\
Small Signal Bandwidth (10uF load) & 7.4 [kHz] & > 5 [kHz]\\
Large Signal Bandwidth (150V, 10uF) & 300 [Hz] & > 1 [Hz]\\
\bottomrule
\end{tabularx}
\end{table}

The most important characteristics are the large (small signal) bandwidth > 5 [kHz] and the small noise (< 2 [mV RMS]).

For a load capacitance of \(10\,\mu F\), the expected \(-3\,dB\) bandwidth is \(6.4\,kHz\) (Figure \ref{fig:pd200_expected_small_signal_bandwidth}) and the low frequency noise is \(650\,\mu V\,\text{rms}\) (Figure \ref{fig:pd200_expected_noise}).

These two characteristics are respectively measured in Section \ref{sec:tf_meas} and Section \ref{sec:noise_meas}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=0.7\linewidth]{./figs/pd200_expected_small_signal_bandwidth.png}
\caption{\label{fig:pd200_expected_small_signal_bandwidth}Expected small signal bandwidth}
\end{figure}

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=0.7\linewidth]{figs/pd200_expected_noise.png}
\caption{\label{fig:pd200_expected_noise}Expected Low frequency noise from 0.03Hz to 20Hz}
\end{figure}

\section{ADC}

Talk about input impedance, \ldots{}
Add resistor, reading of the force sensor: ADC + \href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/test-bench-force-sensor/test-bench-force-sensor.org}{test-bench-force-sensor}

\section{DAC}

ADC and DAC need to be sample synchronously with the control system, with low jitter.
\cite{abramovitch22_pract_method_real_world_contr_system}
\cite{abramovitch23_tutor_real_time_comput_issues_contr_system}

\section{Relative Displacement Sensors}

\begin{itemize}
\item Encoders
\item Capacitive Sensors
\item Eddy current sensors

\item[{$\square$}] Speak about slip-ring issue
\end{itemize}

Specifications:
\begin{itemize}
\item used for relative positioning
\item vertical errors of 15nmRMS => 6nmRMS for each strut
\item Stroke > 100um
\end{itemize}

The Vionic encoder is shown in Figure \ref{fig:encoder_vionic}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=0.6\linewidth]{figs/encoder_vionic.png}
\caption{\label{fig:encoder_vionic}Picture of the Vionic Encoder}
\end{figure}

From the Renishaw \href{https://www.renishaw.com/en/how-optical-encoders-work--36979}{website}:
\begin{quote}
The VIONiC encoder features the third generation of Renishaw's unique filtering optics that average the contributions from many scale periods and effectively filter out non-periodic features such as dirt.
The nominally square-wave scale pattern is also filtered to leave a pure sinusoidal fringe field at the detector.
Here, a multiple finger structure is employed, fine enough to produce photocurrents in the form of four symmetrically phased signals.
These are combined to remove DC components and produce sine and cosine signal outputs with high spectral purity and low offset while maintaining \textbf{bandwidth to beyond 500 kHz}.

Fully integrated advanced dynamic signal conditioning, Auto Gain , Auto Balance and Auto Offset Controls combine to ensure \textbf{ultra-low Sub-Divisional Error (SDE) of typically} \(<\pm 15\, nm\).

This evolution of filtering optics, combined with carefully-selected electronics, provide incremental signals with wide bandwidth achieving a maximum speed of 12 m/s with the lowest positional jitter (noise) of any encoder in its class.
Interpolation is within the readhead, with fine resolution versions being further augmented by additional noise-reducing electronics to achieve \textbf{jitter of just 1.6 nm RMS}.
\end{quote}

The expected interpolation errors (non-linearity) is shown in Figure \ref{fig:vionic_expected_noise}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=\linewidth]{./figs/vionic_expected_noise.png}
\caption{\label{fig:vionic_expected_noise}Expected interpolation errors for the Vionic Encoder}
\end{figure}

The characteristics as advertise in the manual as well as our specifications are shown in Table \ref{tab:vionic_characteristics}.

\begin{table}[htbp]
\caption{\label{tab:vionic_characteristics}Characteristics of the Vionic compared with the specifications}
\centering
\begin{tabularx}{0.6\linewidth}{lcc}
\toprule
\textbf{Characteristics} & \textbf{Specification} & \textbf{Manual}\\
\midrule
Time Delay & < 0.5 ms & < 10 ns\\
Bandwidth & > 5 kHz & > 500 kHz\\
Noise & < 50 nm rms & < 1.6 nm rms\\
Linearity &  & < +/- 15 nm\\
Range & > 200 um & Ruler length\\
\bottomrule
\end{tabularx}
\end{table}

\chapter{Characterization of Instrumentation}
\label{sec:detail_instrumentation_characterization}
For each element, make a table with the specifications, and the measured performances for comparison.
\section{Analog to Digital Converters}

\href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org}{Quantization Noise of the ADC}

\paragraph{Quantization Noise}

Let's note:
\begin{itemize}
\item \(q = \frac{\Delta V}{2^n}\) the quantization in [V], which is the corresponding value in [V] of the least significant bit
\item \(\Delta V\) is the full range of the ADC in [V]
\item \(n\) is the number of ADC's bits
\item \(f_s\) is the sample frequency in [Hz]
\end{itemize}

Let's suppose that the ADC is ideal and the only noise comes from the quantization error.
Interestingly, the noise amplitude is uniformly distributed.

The quantization noise can take a value between \(\pm q/2\), and the probability density function is constant in this range (i.e., it’s a uniform distribution).
Since the integral of the probability density function is equal to one, its value will be \(1/q\) for \(-q/2 < e < q/2\) (Fig. \ref{fig:probability_density_function_adc}).

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/probability_density_function_adc.png}
\caption{\label{fig:probability_density_function_adc}Probability density function \(p(e)\) of the ADC error \(e\)}
\end{figure}

Now, we can calculate the time average power of the quantization noise as
\begin{equation}
  P_q = \int_{-q/2}^{q/2} e^2 p(e) de = \frac{q^2}{12}
\end{equation}

The other important parameter of a noise source is the power spectral density (PSD), which indicates how the noise power spreads in different frequency bands.
To find the power spectral density, we need to calculate the Fourier transform of the autocorrelation function of the noise.

Assuming that the noise samples are not correlated with one another, we can approximate the autocorrelation function with a delta function in the time domain.
Since the Fourier transform of a delta function is equal to one, the \textbf{power spectral density will be frequency independent}.
Therefore, the quantization noise is white noise with total power equal to \(P_q = \frac{q^2}{12}\).

Thus, the two-sided PSD (from \(\frac{-f_s}{2}\) to \(\frac{f_s}{2}\)), we should divide the noise power \(P_q\) by \(f_s\):
\begin{equation}
  \int_{-f_s/2}^{f_s/2} \Gamma(f) d f = f_s \Gamma = \frac{q^2}{12}
\end{equation}

Finally, the Power Spectral Density of the quantization noise of an ADC is equal to:
\begin{equation}
  \begin{aligned}
    \Gamma &= \frac{q^2}{12 f_s} \\
          &= \frac{\left(\frac{\Delta V}{2^n}\right)^2}{12 f_s} \text{ in } \left[ \frac{V^2}{Hz} \right]
  \end{aligned}
\end{equation}

Let's take a 16bits ADC with a range of +/-10V and a sample frequency of 10kHz.

The quantization is:
\[ q = \frac{20}{2^{16}} \approx 0.3\,mV \]

\[ \Gamma_Q = \frac{q^2}{12 f_N} = 7.5 \cdot 10^{-13} \quad [V^2/Hz] \]

ASD:
\[ 0.88\,\mu V/\sqrt{Hz} \]


\paragraph{Speedgoat - IO131 board}

Internally uses the AD7609 ADC from Analog Devices.
200kSPS
16 bits
+/-10V

\textbf{oversampling}: \href{../../../../brain/analog_to_digital_converters.org}{Analog to Digital Converters}

\cite{lab13_improv_adc}

To have additional \(w\) bits of resolution, the oversampling frequency \(f_{os}\) should be:
\begin{equation}
f_{os} = 4^w \cdot f_s
\end{equation}

\cite{hauser91_princ_overs_conver}

\begin{quote}
Key points to consider are:
\begin{itemize}
\item The noise must approximate \textbf{white noise} with uniform power spectral density over the frequency band of interest.
\item The \textbf{noise amplitude must be sufficient} to cause the input signal to change randomly from sample to sample by amounts comparable to at least the distance between two adjacent codes (i.e., 1 LSB).
\item The input signal can be represented as a random variable that has equal probability of existing at any value between two adjacent ADC codes.
\end{itemize}
\end{quote}

\begin{itemize}
\item[{$\boxtimes$}] Check noise and compare with quantization noise
\item[{$\square$}] See is oversampling increase performances, and how much compared to the prediction
Seems to increase the perf too much
\end{itemize}

\paragraph{Measured Noise}
\section{Instrumentation Amplifier}

Because the ADC noise may be too large to measure noise of other instruments, a low noise instrumentation amplifier may be used.

Different instrumentation amplifiers were used:
\begin{itemize}
\item EG\&G 5113, 4nV/sqrt(Hz), gain up to 100000 (100dB)
\item Femto DLPVA-101-B-S 2nV/sqrt(Hz), gain from 20 to 80dB
\item Koheron AMP200, 2.4nV/sqrt(Hz), gain up to 100
\end{itemize}

Here, the Femto amplifier is used.
To measure its noise, the gain is set to xxdB, \ldots{}

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/noise_measure_setup_preamp.png}
\caption{\label{fig:noise_measure_setup_preamp}Sources of noise in the experimental setup}
\end{figure}

\section{Digital to Analog Converters}
\paragraph{Noise Measurement}
\href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org}{16bits DAC noise measurement}

In order not to have any quantization noise and only measure the output voltage noise of the DAC, we ``ask'' the DAC to output a zero voltage.

The measurement setup is schematically represented in Figure \ref{fig:noise_measure_setup_dac}.
The gain of the pre-amplifier is adjusted such that the measured amplified noise is much larger than the quantization noise of the ADC.

The Amplitude Spectral Density \(\Gamma_n(\omega)\) of the measured signal is computed.
The Amplitude Spectral Density of the DAC output voltage noise \(n_{da}\) can be computed taking into account the gain of the pre-amplifier:
\begin{equation}
\Gamma_{n_{da}}(\omega) = \frac{\Gamma_m(\omega)}{|G_a(\omega)|}
\end{equation}

And it is verified that the Amplitude Spectral Density of \(n_{da}\) is much larger than the one of \(n_a\):
\begin{equation}
\Gamma_{n_{da}} \gg \Gamma_{n_a}
\end{equation}

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/noise_measure_setup_dac.png}
\caption{\label{fig:noise_measure_setup_dac}Sources of noise in the experimental setup}
\end{figure}

The obtained Amplitude Spectral Density of the DAC's output voltage is shown in Figure \ref{fig:asd_noise_dac}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/asd_noise_dac.png}
\caption{\label{fig:asd_noise_dac}Amplitude Spectral Density of the measured output voltage noise of the 16bits DAC}
\end{figure}

\paragraph{Bandwidth}

DAC is directly wired to the ADC.
The transfer function from DAC to ADC is computed.

It corresponds to 1 sample delay.

\section{Piezoelectric Voltage Amplifier}

\href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/test-bench-PD200/test-bench-pd200.org}{test-bench-PD200}

\subsection{Noise}
\paragraph{PD200 - Low frequency noise measurement}

The measurement setup is shown in Figure \ref{fig:noise_measure_setup_pd200}.
The input of the PD200 amplifier is shunted with a 50 Ohm resistor such that there in no voltage input expected the PD200 input voltage noise.
The gain of the pre-amplifier is increased in order to measure a signal much larger than the quantization noise of the ADC.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/noise_measure_setup_pd200.png}
\caption{\label{fig:noise_measure_setup_pd200}Sources of noise in the experimental setup}
\end{figure}

The measured low frequency (<20Hz) \textbf{output} noise of one of the PD200 amplifiers is shown in Figure \ref{fig:pd200_noise_time_lpf}.
It is very similar to the one specified in the datasheet in Figure \ref{fig:pd200_expected_noise}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200_noise_time_lpf.png}
\caption{\label{fig:pd200_noise_time_lpf}Measured low frequency noise of the PD200 from 0.01Hz to 20Hz}
\end{figure}

The obtained RMS and peak to peak values of the measured \textbf{output} noise are shown in Table \ref{tab:rms_pkp_noise} and found to be very similar to the specified ones.
\begin{table}[htbp]
\caption{\label{tab:rms_pkp_noise}RMS and Peak to Peak measured low frequency output noise (0.01Hz to 20Hz)}
\centering
\begin{tabularx}{0.5\linewidth}{lcc}
\toprule
 & \textbf{RMS [\(\mu V\)]} & \textbf{Peak to Peak [\(mV\)]}\\
\midrule
Specification [\(10\,\mu F\)] & 714.0 & 4.3\\
PD200 1 & 565.1 & 3.7\\
PD200 2 & 767.6 & 3.5\\
PD200 3 & 479.9 & 3.0\\
PD200 4 & 615.7 & 3.5\\
PD200 5 & 651.0 & 2.4\\
PD200 6 & 473.2 & 2.7\\
PD200 7 & 423.1 & 2.3\\
\bottomrule
\end{tabularx}
\end{table}

\paragraph{PD200 - High frequency noise measurement}

The measurement setup is the same as in Figure \ref{fig:noise_measure_setup_pd200}.

The Amplitude Spectral Density \(\Gamma_n(\omega)\) of the measured signal by the ADC is computed.
The Amplitude Spectral Density of the input voltage noise of the PD200 amplifier \(n_p\) is then computed taking into account the gain of the pre-amplifier and the gain of the PD200 amplifier:
\begin{equation}
\Gamma_{n_p}(\omega) = \frac{\Gamma_n(\omega)}{|G_p(j\omega) G_a(j\omega)|}
\end{equation}

And we verify that we are indeed measuring the noise of the PD200 and not the noise of the pre-amplifier by checking that:
\begin{equation}
\Gamma_{n_p}(\omega) |G_p(j\omega)| \ll \Gamma_{n_a}
\end{equation}

The Amplitude Spectral Density of the measured \textbf{input} noise is computed and shown in Figure \ref{fig:asd_noise_pd200_10uF}.

It is verified that the contribution of the PD200 noise is much larger than the contribution of the pre-amplifier noise of the quantization noise.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/asd_noise_pd200_10uF.png}
\caption{\label{fig:asd_noise_pd200_10uF}Amplitude Spectral Density of the measured input voltage noise of the PD200 amplifiers}
\end{figure}

\begin{note}
The Amplitude Spectral Density of the input noise of the PD200 amplifiers present sharp peaks.
It is not clear yet what causes such peaks and if these peaks have high influence on the total RMS noise of the amplifiers.
\end{note}

\subsection{Bandwidth}
\paragraph{Maximum Frequency/Voltage to not overload the amplifier}
\label{sec:tf_meas_w_max}

Then the maximum output current of the amplifier is reached, the amplifier automatically shuts down itself.
We should then make sure that the output current does not reach this maximum specified current.

The maximum current is 1A [rms] which corresponds to 0.7A in amplitude of the sin wave.

The impedance of the capacitance is:
\[ Z_C(\omega) = \frac{1}{jC\omega} \]

Therefore the relation between the output current amplitude and the output voltage amplitude for sinusoidal waves of frequency \(\omega\):
\[ V_{out} = \frac{1}{C\omega} I_{out} \]

Moreover, there is a gain of 20 between the input voltage and the output voltage:
\[ 20 V_{in} = \frac{1}{C\omega} I_{out} \]

For a specified voltage input amplitude \(V_{in}\), the maximum frequency at which the output current reaches its maximum value is:
\begin{equation}
\boxed{\omega_{\text{max}} = \frac{1}{20 C V_{in}} I_{out,\text{max}}}
\end{equation}
with:
\begin{itemize}
\item \(\omega_{\text{max}}\) the maximum input sinusoidal frequency in Radians per seconds
\item \(C\) the load capacitance in Farads
\item \(V_{in}\) the input voltage sinusoidal amplitude in Volts
\item \(I_{out,\text{max}}\) the specified maximum output current in Amperes
\end{itemize}

\(\omega_{\text{max}}/2\pi\) as a function of \(V_{in}\) is shown in Figure \ref{fig:max_frequency_voltage}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/max_frequency_voltage.png}
\caption{\label{fig:max_frequency_voltage}Maximum frequency as a function of the excitation voltage amplitude}
\end{figure}

When doing sweep sine excitation, we make sure not to reach this maximum excitation frequency.

\paragraph{Small Signal Bandwidth}
\label{sec:meas_small_signal_bandwidth}

Here the small signal dynamics of all the 7 PD200 amplifiers are identified.

A (logarithmic) sweep sine excitation voltage is generated by the Speedgoat DAC with an amplitude of 0.1V and a frequency going from 1Hz up to 5kHz.

The output voltage of the PD200 amplifier is measured thanks to the monitor voltage of the PD200 amplifier.
The input voltage of the PD200 amplifier (the generated voltage by the DAC) is measured with another ADC of the Speedgoat.
This way, the time delay related to the ADC will not be apparent in the results.

The obtained transfer functions from \(V_{in}\) to \(V_{out}\) are shown in Figure \ref{fig:pd200_small_signal_tf}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200_small_signal_tf.png}
\caption{\label{fig:pd200_small_signal_tf}Identified dynamics from input voltage to output voltage}
\end{figure}

We can see the very well matching between all the 7 amplifiers.
The amplitude is constant over a wide frequency band and the phase drop is limited to less than 1 degree up to 500Hz.

\paragraph{Model of the amplifier small signal dynamics}
\label{sec:model_small_signal_bandwidth}

The identified dynamics in Figure \ref{fig:pd200_small_signal_tf} can very well be modeled this dynamics with a first order low pass filter (even a constant could work fine).

Below is the defined transfer function \(G_p(s)\).
Comparison of the model with the identified dynamics is shown in Figure \ref{fig:pd200_small_signal_tf_model}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200_small_signal_tf_model.png}
\caption{\label{fig:pd200_small_signal_tf_model}Bode plot of \(G_d(s)\) as well as the identified transfer functions of all 7 amplifiers}
\end{figure}

And finally this model is saved.
\paragraph{Large Signal Bandwidth}
\label{sec:bandwidth_amplitude}

The PD200 amplifiers will most likely not be used for large signals, but it is still nice to see how the amplifier dynamics is changing with the input voltage amplitude.

Several identifications using sweep sin were performed with input voltage amplitude ranging from 0.1V to 4V.
The maximum excitation frequency for each amplitude was limited from the estimation in Section \ref{sec:tf_meas_w_max}.

The obtained transfer functions for the different excitation amplitudes are shown in Figure \ref{fig:pd200_large_signal_tf}.
It is shown that the input voltage amplitude does not affect that much the amplifier dynamics.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200_large_signal_tf.png}
\caption{\label{fig:pd200_large_signal_tf}Amplifier dynamics for several input voltage amplitudes}
\end{figure}



\paragraph{Output Impedance}

The goal of this experimental setup is to estimate the output impedance \(R_\text{out}\) of the PD200 voltage amplifiers.
A DAC with a constant output voltage (here 0.1V) is connected to the input of the PD200 amplifier.

Then, the output voltage of the PD200 amplifier is measured in two conditions:
\begin{itemize}
\item \(V\) when the output is not connected to any load
\item \(V_p\) when a load \(R = 10\,\Omega\) is connected at the output of the amplifier
\end{itemize}

The load and the output impedance form a voltage divider, and thus:
\[ V^\prime = \frac{R}{R + R_\text{out}} V \]

From the two values of voltage, the output impedance of the amplifier can be estimated:
\[ R_\text{out} = R \frac{V - V^\prime}{V^\prime} \]

A schematic of the setup is shown in Figure \ref{fig:setup_output_impedance}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/setup_output_impedance.png}
\caption{\label{fig:setup_output_impedance}Schematic of the setup use to estimate the output impedance of the PD200 amplifier}
\end{figure}


Below are defined the measured output voltages with and without the 10Ohm load:
The output impedance of the amplifier can then be estimated using:
\begin{equation}
  R_{\text{out}} = R_{\text{load}} \frac{V - V_p}{V}
\end{equation}

The obtained output impedances are shown in Table \ref{tab:pd200_output_impedance}.

\begin{table}[htbp]
\caption{\label{tab:pd200_output_impedance}Obtained Output Impedance for the PD200 Amplifiers}
\centering
\begin{tabularx}{0.4\linewidth}{Xccc}
\toprule
PD200 & \(V\ [V]\) & \(V_p\ [V]\) & \(R_\text{out}\ [\Omega]\)\\
\midrule
1 & 1.988 & 1.794 & 1.081\\
2 & 1.99 & 1.789 & 1.124\\
3 & 1.982 & 1.795 & 1.042\\
4 & 1.984 & 1.789 & 1.09\\
5 & 1.998 & 1.81 & 1.039\\
6 & 1.984 & 1.799 & 1.028\\
7 & 2.004 & 1.812 & 1.06\\
\bottomrule
\end{tabularx}
\end{table}

The output impedance of the PD200 Amplifier is estimated to be \(\approx 1\,\Omega\).

\subsection{Model}
\paragraph{PD200 Amplifier noise model}
\label{sec:pd200_noise_model}

Let's design a transfer function \(G_n(s)\) whose norm represent the Amplitude Spectral Density of the input voltage noise of the PD200 amplifier as shown in Figure \ref{fig:pd200-model-schematic-normalized-bis}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200-model-schematic-normalized.png}
\caption{\label{fig:pd200-model-schematic-normalized-bis}Model of the voltage amplifier with normalized noise input}
\end{figure}

A simple transfer function that allows to obtain a good fit is defined below.
The comparison between the measured ASD of the modeled ASD is done in Figure \ref{fig:pd200_asd_noise_model}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200_asd_noise_model.png}
\caption{\label{fig:pd200_asd_noise_model}ASD of the measured input voltage noise and modeled noise using \(G_n(s)\)}
\end{figure}

Let's now compute the Cumulative Amplitude Spectrum corresponding to the measurement and the model and compare them.

The integration from low to high frequency and from high to low frequency are both shown in Figure \ref{fig:pd200_cas_noise_model}.

The fit between the model and the measurements is rather good considering the complex shape of the measured ASD and the simple model used.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200_cas_noise_model.png}
\caption{\label{fig:pd200_cas_noise_model}Cumulative Amplitude Spectrum of the measured input voltage noise and modeled noise using \(G_n(s)\)}
\end{figure}

The obtained RMS noise of the model is \texttt{286.74} uV RMS which is not that far from the specifications.

Finally the model of the amplifier noise is saved.
\paragraph{Voltage Amplifier Model}
\label{sec:amplifier_model}

The Amplifier is characterized by its dynamics \(G_p(s)\) from voltage inputs \(V_{in}\) to voltage output \(V_{out}\).
Ideally, the gain from \(V_{in}\) to \(V_{out}\) is constant over a wide frequency band with very small phase drop.

It is also characterized by its \textbf{input} noise \(n\).

The objective is therefore to determine the transfer function \(G_p(s)\) from the input voltage to the output voltage as well as the Power Spectral Density \(S_n(\omega)\) of the amplifier input noise.

As \(G_p\) depends on the load capacitance, it should be measured when loading the amplifier with a \(10\,\mu F\) capacitor.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200-model-schematic.png}
\caption{\label{fig:pd200-model-schematic}Model of the voltage amplifier}
\end{figure}


The input noise of the amplifier \(n\) can be further modeled by shaping a white noise with unitary PSD \(\tilde{n}\) with a transfer function \(G_n(s)\) as shown in Figure \ldots{}

The Amplitude Spectral Density \(\Gamma_n\) is then:
\begin{equation}
\Gamma_n(\omega) = |G_n(j\omega)| \Gamma_{\tilde{n}}(\omega)
\end{equation}
with \(\Gamma_{\tilde{n}}(\omega) = 1\).


\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/pd200-model-schematic-normalized.png}
\caption{\label{fig:pd200-model-schematic-normalized}Model of the voltage amplifier with normalized noise input}
\end{figure}


\subsection{Conclusion}

\begin{table}[htbp]
\caption{\label{tab:table_name}Measured characteristics, Manual characterstics and specified ones}
\centering
\begin{tabularx}{\linewidth}{lXXX}
\toprule
\textbf{Characteristics} & \textbf{Measurement} & \textbf{Manual} & \textbf{Specification}\\
\midrule
Input Voltage Range & - & +/- 10 [V] & +/- 10 [V]\\
Output Voltage Range & - & -50/150 [V] & -20/150 [V]\\
Gain &  & 20 [V/V] & -\\
Maximum RMS current &  & 0.9 [A] & > 50 [mA]\\
Maximum Pulse current &  & 10 [A] & -\\
Slew Rate &  & 150 [V/us] & -\\
Noise (10uF load) &  & 0.7 [mV RMS] & < 2 [mV rms]\\
Small Signal Bandwidth (10uF load) &  & 7.4 [kHz] & > 5 [kHz]\\
Large Signal Bandwidth (150V, 10uF) &  & 300 [Hz] & -\\
\bottomrule
\end{tabularx}
\end{table}

\section{Noise of the full setup with 16bits DAC}
Let's now measure the noise of the full setup in Figure \ref{fig:noise_meas_procedure_bis} and analyze the results.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/noise_meas_procedure.png}
\caption{\label{fig:noise_meas_procedure_bis}Sources of noise in the experimental setup}
\end{figure}

The Amplitude Spectral Density of the measured noise is computed and the shown in Figure \ref{fig:asd_noise_tot}.

We can very well see that to total measured noise is the sum of the DAC noise and the PD200 noise.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/asd_noise_tot.png}
\caption{\label{fig:asd_noise_tot}Amplitude Spectral Density of the measured noise and of the individual sources of noise}
\end{figure}

\begin{important}
The input noise of the PD200 amplifier is limited by the output voltage noise of the DAC.
Having a DAC with lower output voltage noise could lower the overall noise of the setup.
SSI2V 20bits DACs are used in the next section to verify that.
\end{important}


\section{Linear Encoders}

\href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/test-bench-vionic/test-bench-vionic.org}{test-bench-vionic}

\begin{itemize}
\item Section \ref{sec:noise_bench}: the measurement bench is described
\item Section \ref{sec:thermal_drifts}: long measurement is performed to estimate the low frequency drifts in the measurement
\item Section \ref{sec:vionic_noise_time}: high frequency measurements are performed to estimate the high frequency noise
\item Section \ref{sec:noise_asd}: the Spectral density of the measurement noise is estimated
\item Section \ref{sec:vionic_noise_model}: finally, the measured noise is modeled
\end{itemize}

\subsection{Test Bench}
\label{sec:noise_bench}

To measure the noise \(n\) of the encoder, one can rigidly fix the head and the ruler together such that no motion should be measured.
Then, the measured signal \(y_m\) corresponds to the noise \(n\).

The measurement bench is shown in Figures \ref{fig:meas_bench_top_view} and \ref{fig:meas_bench_side_view}.
Note that the bench is then covered with a ``plastic bubble sheet'' in order to keep disturbances as small as possible.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=0.8\linewidth]{figs/IMG_20210211_170554.jpg}
\caption{\label{fig:meas_bench_top_view}Top view picture of the measurement bench}
\end{figure}

\begin{figure}[htbp]
\centering
\includegraphics[scale=1,width=0.8\linewidth]{figs/IMG_20210211_170607.jpg}
\caption{\label{fig:meas_bench_side_view}Side view picture of the measurement bench}
\end{figure}

\subsection{Thermal drifts}
\label{sec:thermal_drifts}
Measured displacement were recording during approximately 40 hours with a sample frequency of 100Hz.
A first order low pass filter with a corner frequency of 1Hz

The measured time domain data are shown in Figure \ref{fig:vionic_drifts_time}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_drifts_time.png}
\caption{\label{fig:vionic_drifts_time}Measured thermal drifts}
\end{figure}

The measured data seems to experience a constant drift after approximately 20 hour.
Let's estimate this drift.

\begin{verbatim}
The mean drift is approximately 60.9 [nm/hour] or 1.0 [nm/min]
\end{verbatim}


Comparison between the data and the linear fit is shown in Figure \ref{fig:vionic_drifts_linear_fit}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_drifts_linear_fit.png}
\caption{\label{fig:vionic_drifts_linear_fit}Measured drift and linear fit}
\end{figure}

Let's now estimate the Power Spectral Density of the measured displacement.
The obtained low frequency ASD is shown in Figure \ref{fig:vionic_noise_asd_low_freq}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_asd_low_freq.png}
\caption{\label{fig:vionic_noise_asd_low_freq}Amplitude Spectral density of the measured displacement}
\end{figure}

\subsection{Time Domain signals}
\label{sec:vionic_noise_time}

Then, and for all the 7 encoders, we record the measured motion during 100s with a sampling frequency of 20kHz.

The raw measured data as well as the low pass filtered data (using a first order low pass filter with a cut-off at 10Hz) are shown in Figure \ref{fig:vionic_noise_raw_lpf}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_raw_lpf.png}
\caption{\label{fig:vionic_noise_raw_lpf}Time domain measurement (raw data and low pass filtered data with first order 10Hz LPF)}
\end{figure}

The time domain data for all the encoders are compared in Figure \ref{fig:vionic_noise_time}.

We can see some drifts that are in the order of few nm to 20nm per minute.
As shown in Section \ref{sec:thermal_drifts}, these drifts should diminish over time down to 1nm/min.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_time.png}
\caption{\label{fig:vionic_noise_time}Comparison of the time domain measurement}
\end{figure}

\subsection{Noise Spectral Density}
\label{sec:noise_asd}

The amplitude spectral densities for all the encoder are computed and shown in Figure \ref{fig:vionic_noise_asd}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_asd.png}
\caption{\label{fig:vionic_noise_asd}Amplitude Spectral Density of the measured signal}
\end{figure}

We can combine these measurements with the low frequency noise computed in Section \ref{sec:thermal_drifts}.
The obtained ASD is shown in Figure \ref{fig:vionic_noise_asd_combined}.
\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_asd_combined.png}
\caption{\label{fig:vionic_noise_asd_combined}Combined low frequency and high frequency noise measurements}
\end{figure}

\subsection{Noise Model}
\label{sec:vionic_noise_model}

Let's create a transfer function that approximate the measured noise of the encoder.
The amplitude of the transfer function and the measured ASD are shown in Figure \ref{fig:vionic_noise_asd_model}.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_asd_model.png}
\caption{\label{fig:vionic_noise_asd_model}Measured ASD of the noise and modeled one}
\end{figure}

The cumulative amplitude spectrum is now computed and shown in Figure \ref{fig:vionic_noise_cas_model}.

We can see that the Root Mean Square value of the measurement noise is \(\approx 1.6 \, nm\) as advertise in the datasheet.

\begin{figure}[htbp]
\centering
\includegraphics[scale=1]{figs/vionic_noise_cas_model.png}
\caption{\label{fig:vionic_noise_cas_model}Meassured CAS of the noise and modeled one}
\end{figure}

\subsection{Automatic Gain Control}
\section{External Metrology}

\href{file:///home/thomas/Cloud/work-projects/ID31-NASS/matlab/test-bench-attocube/test-bench-attocube.org}{test-bench-attocube}

Different options:
\begin{itemize}
\item Attocube: issue of non-linearity estimated from the encoders
\item Smaract
\item QuDIS
\end{itemize}

For the final tests, QuDIS were used.

\chapter*{Conclusion}
\label{sec:detail_instrumentation_conclusion}

\printbibliography[heading=bibintoc,title={Bibliography}]
\end{document}
