digital-brain/content/zettels/analog_to_digital_converters.md

129 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

+++
title = "Analog to Digital Converters"
author = ["Dehaeze Thomas"]
keywords = ["electronics"]
draft = false
category = "equipment"
+++
Tags
: [Electronics]({{< relref "electronics.md" >}})
## Types of Analog to Digital Converters {#types-of-analog-to-digital-converters}
<https://dewesoft.com/daq/types-of-adc-converters>
- Delta Sigma <baker11_how_delta_sigma_adcs_work_part>
- Successive Approximation
## Power Spectral Density of the Quantization Noise {#power-spectral-density-of-the-quantization-noise}
This analysis is taken from [here](https://www.allaboutcircuits.com/technical-articles/quantization-nois-amplitude-quantization-error-analog-to-digital-converters/).
Let's note:
- \\(q = \frac{\Delta V}{2^n}\\) the quantization in [V], which is the corresponding value in [V] of the least significant bit
- \\(\Delta V\\) is the full range of the ADC in [V]
- \\(n\\) is the number of ADC's bits
- \\(f\_s\\) is the sample frequency in [Hz]
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., its 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. [1](#figure--fig:probability-density-function-adc)).
<a id="figure--fig:probability-density-function-adc"></a>
{{< figure src="/ox-hugo/probability_density_function_adc.png" caption="<span class=\"figure-number\">Figure 1: </span>Probability density function \\(p(e)\\) of the ADC error \\(e\\)" >}}
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 **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}
<div class="important">
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}
</div>
<div class="exampl">
Let's take a 18bits ADC with a range of +/-10V and a sample frequency of 10kHz.
The quantization is:
\\[ q = \frac{20}{2^{18}} = 0.000076 \ [V] = 76 \ [\mu V] \\]
\\[ \Gamma\_Q = \frac{q^2}{12 f\_N} = 4.85 \cdot 10^{-14} \quad [V^2/Hz] \\]
</div>
{{< youtube b9lxtOJj3yU >}}
Also see <kester05_takin>.
## Link between required dynamic range and effective number of bits {#link-between-required-dynamic-range-and-effective-number-of-bits}
<a id="figure--fig:dynamic-range-enob"></a>
{{< figure src="/ox-hugo/dynamic_range_enob.png" caption="<span class=\"figure-number\">Figure 2: </span>Relation between Dynamic range and required number of bits (effective)" >}}
## Oversampling {#oversampling}
<lab13_improv_adc>
## Sigma Delta ADC {#sigma-delta-adc}
From <&schmidt20_desig_high_perfor_mechat_third_revis_edition>:
> The low cost and excellent linearity properties of the Sigma-Delta ADC have replaced other ADC types in many measurement and registration systems, especially where storage of data is more important than real-time measurement.
> This has typically been the case in audio recording and reproduction.
> The reason why this principle is less applied with real-time measurements is the time delay between the bitstream representing the actual value and the availability of the corresponding value after the decimation filter.
> The resulting **latency** amounts with a low cost sigma-delta ADC approximately **twenty times the sampling period of the decimated digital output**.
<div class="exampl">
A 50kHz decimated sampling frequency has a sample period of 20us, resulting in a total latency of more than 400us.
This would cause almost 180 degrees phase delay for a 1kHz signal frequency, which is not acceptable with high bandwidth motion control systems.
This phenomenon clearly illustrates the necessity to distinguish sample frequency from speed.
</div>
Therefore, even though there are sigma-delta ADC with high precision and sampling rate, they add large latency (i.e. time delay) that are very problematic for feedback systems.
> The SAR-ADC (Successive approximation ADCs) is still the mostly applied type for data-acquisition and feedback systems because of its single sample latency.
<https://www.crystalinstruments.com/antialiasing-filter-and-phase-match>
## Bibliography {#bibliography}
<./biblio/references.bib>