В этом примере показано, как вычисляются погрешность смещения и погрешность усиления и как каждый из них влияет на кривую передачи АЦП. Погрешность смещения и погрешность усиления характеризуют часть погрешности линейности в АЦП.
Ошибка смещения - это разность между центром наименее значимого кода и центром одного и того же кода на идеальном АЦП с одинаковым количеством битов. Об ошибке смещения обычно сообщают в единицах младшего разряда (LSB) преобразователя. Один LSB эквивалентен интервалу квантования преобразователя.
Погрешность усиления в LSB - разность между центром наиболее значимого кода после коррекции ошибки смещения и центром одного и того же кода на идеальном АЦП с одинаковым количеством битов.
Из-за сложности определения точного местоположения центра кода с неокончательной границей эти значения наиболее часто измеряются относительно первого и последнего порога преобразователя соответственно.
Единица измерения,
которая используется в этом примере, определяется как:
![$$1 \left[LSB\right] = \frac{FSR}{2^{N_{bits}}}$$](../../examples/msblks/win64/OffsetErrorAndGainErrorExample_eq17024605192842423829.png)
Таким образом, ошибка в
(вольтах) переводится в
следующее:
![$$E \left[LSB\right] = 2^{N_{bits}}\frac{E \left[V\right]}{FSR
\left[V\right]}$$](../../examples/msblks/win64/OffsetErrorAndGainErrorExample_eq00583132666172907849.png)
где
- полный диапазон масштаба АЦП, а
- количество битов АЦП.
Ошибки линейности также обычно сообщаются в нормированных единицах по отношению к полному диапазону масштаба:
![$$ E_{Offset} = \frac{E_{Offset} \left[V\right]}{FSR \left[V\right]}$$](../../examples/msblks/win64/OffsetErrorAndGainErrorExample_eq07532139780962678893.png)
Другой единицей измерения, иногда используемой для ошибок линейности, является процент полной шкалы. Процент полной шкалы определяется как нормированные единицы, умноженные на 100:
![$$E_{Gain} \left[\%\right] = 100\frac{E_{Gain} \left[V\right]}{FSR
\left[V\right]}$$](../../examples/msblks/win64/OffsetErrorAndGainErrorExample_eq05510029064907328806.png)
Используйте 3-разрядный АЦП с динамическим диапазоном [-1 1]. Определение ошибки смещения 1 LSB и ошибка усиления 1 LSB.
Nbits = 3;
Range = [-1 1]; % ADC Full Scale Range
OffsetError = 1;
GainError = 1;
LSB = (max(Range) - min(Range)) / (2^Nbits - 1);
Цифровые коды от идеального АЦП идентичны кодам от экспериментальных АЦП.
[TC0Analog, TC0Digital] = og2tc(Nbits, Range, 0, 0); % Ideal ADC Transfer Curve TC1Analog = og2tc(Nbits, Range, OffsetError, 0); % Offset Error Only TC2Analog = og2tc(Nbits, Range, 0, GainError); % Gain Error Only TC3Analog = og2tc(Nbits, Range, OffsetError, GainError); % Both Offset Error and Gain Error plotAdcTcForExample(TC0Digital, TC0Analog, TC1Analog, TC2Analog, TC3Analog, Nbits);

Сумма погрешности смещения и погрешности усиления известна как полномасштабная погрешность. В монополярных преобразователях нулевая ошибка, по существу ошибка смещения, определенная на аналоговом уровне 0, идентична ошибке регулярного смещения. В биполярных преобразователях, таких как указанные выше, погрешность смещения и нулевая погрешность являются различными величинами.
Сравните АЦП флэш-памяти с ошибкой смещения и усиления с ошибкой без нарушений.
model = 'OffsetGainExample'; open_system(model); open_system([model '/Scope']); sim(model);


Блок измерения постоянного тока АЦП подтверждает значения нарушений в пределах погрешности, определяемой частотой дискретизации системы. Ошибка смещения и ошибка усиления были введены как 1 LSB. Погрешность смещения измеряли как 1,08 LSB, а погрешность усиления измеряли как 0,97 LSB. Ошибки в этих измерениях обусловлены тем, что преобразователь не выполняет выборку точно при своих пороговых значениях. Максимальная ожидаемая ошибка в LSB:

где
- наклон входного клина/пилообразного сигнала в LSB/s, а
- начальная частота преобразования АЦП.