Методика оценки погрешностей расчета

результатов в программе «Анализ нелинейных искажений»

Программа «Анализ нелинейных искажений» (далее программа «АНИ») предназначена для расчета коэффициента нелинейных искажений (КНИ или THD), соотношения сигнал/помеха (SNR) эффективного числа разрядов аналого-цифрового преобразователя (АЦП).

В программе «АНИ» вычисляются следующие величины:

КНИ (коэффициент нелинейных искажений, THD) — величина для количественной оценки нелинейных искажений, равная отношению среднеквадратичной суммы спектральных компонент выходного сигнала, отсутствующих в спектре входного сигнала, к среднеквадратичной сумме всех спектральных компонент входного сигнала.

ОСШ (отношение сигнал/шум, SNR) — это безразмерная величина, равная отношению мощности полезного сигнала к мощности шума.

КНИШ (коэффициент нелинейных искажений с учётом шума, THD+N) — безразмерная величина, равная отношению мощности сигнала к сумме мощностей искажений и шума.

ДДСПС (динамический диапазон, свободный от паразитных составляющих, SFDR) — безразмерная величина, равная отношению мощности полезного узкополосного сигнала (несущей) к мощности наиболее мощной паразитной частотной составляющей (гармоники).

ОСШИ (отношение сигнал/шум с учётом искажений, SINAD) — безразмерная величина, равная отношению суммы мощностей сигнала, искажений и шума к сумме мощностей искажений и шума.

ЭР (эффективная разрядность, ENOB) — это реальное количество различных уровней выходного сигнала, которое достижимо на данном АЦП/ЦАП.

В программе задано, что входным сигналом для неё является стационарный сигнал синусоидальной формы. Программа определяет его основную частоту и частоты гармоник. С помощью алгоритма селективного вольтметра определяются амплитуды всех гармоник. Весь сигнал за вычетом сигналов гармоник считается шумом.

Для оценки погрешностей расчета параметров используется следующий подход — моделируется сигнал с известными параметрами, этот сигнал подается на вход программы АНИ, рассчитываются параметры и затем сравниваются заданные и рассчитанные параметры. Моделирование сигналов может быть сделано с помощью программы “Генератор сигналов”: задаются суммы эталонных сигналов с заданными характеристиками и с помощью программы АНИ определяются эти параметры. Для каждого соотношения заданных параметров могут быть свои отклонения от расчетных значений и, следовательно, своя погрешность. С помощью программы генератор можно задать сумму сигналов двух синусоид, сигнал белого шума, сигнал в форме треугольника, прямоугольного меандра и т.д. Это позволяет оценить получаемую дисперсию расчетных параметров и их отклонение от заданных параметров.

Условия выполнения моделирования сигналов

Для оценки результатов работы программы необходимо настроить прибор на одинаковую частоту дискретизации АЦП и ЦАП — 25 кГц.

Необходимо запустить программу «Генератор сигналов» (далее генератор).

Необходимо запустить программу «Вольтметр переменного тока» (далее вольтметр) и настроить его на измерение СКЗ в медленном (1 секунда) режиме по каналу генератора («Генератор 1»).

Для наглядности необходимо запустить также программы «Многоканальный осциллограф» и «Узкополосный спектр».

Оценка THD (коэффициент нелинейных искажений)

В программе «АНИ» вычисляется коэффициент гармонических искажений (далее КГИ). КГИ — величина, выражающая степень нелинейных искажений устройства (усилителя и др.) и равную отношению среднеквадратичного напряжения суммы высших гармоник сигнала, кроме первой, к напряжению первой гармоники при воздействии на вход устройства синусоидального сигнала.

Первый пример

В программе «Генератор» необходимо добавить сигнал «синус», настроить частоту 100 Гц и уровень 1 В.

Генератор сигналов ZETLAB

Программой «Вольтметр» необходимо измерить уровень сигнала генератора — он должен быть равен 1000 мВ.

Вольтметр переменного тока ZETLAB

В программе «Генератор» необходимо добавить сигнал «синус2» (сигнал «синус» нужно временно убрать), настроить частоту 300 Гц и уровень 0.1 В.

Программой «Вольтметр» необходимо измерить уровень сигнала генератора — он должен быть равен 100 мВ.

Вольтметр переменного тока ZETLAB

Далее необходимо снова добавить сигнал «синус» измерить КГИ программой «АНИ». Результаты измерений необходимо сравнить с результатами вычисления КГИ по формуле:

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Для приведённого выше примера КГИ должен быть равен 10% или 20 дБ (переключение между отображением результатов вычислений между процентами и децибелами выполняется галочкой «лин/лог»).

Анализ нелинейных искажений ZETLAB

Анализ нелинейных искажений ZETLAB

Погрешность измерения должна находится в пределах 0,1% или 0,01 дБ.

Из-за ограниченной разрядности АЦП и ЦАП (АЦП — измерительные каналы, ЦАП — генераторы) при уменьшении уровня сигнала будет расти погрешность результатов измерения. Для анализатора спектра вес младшего разряда составляет примерно 0,3 мВ. Кроме того, измерительные каналы обладают неустранимым шумом, СКЗ которого составляет около 0,25 мВ.

Вольтметр переменного тока ZETLAB

Например, для синусоидального сигнала с СКЗ 1 мВ и третьей гармоникой с уровнем 0,1 мВ результаты будут следующие.

Анализ нелинейных искажений ZETLAB

Анализ нелинейных искажений ZETLAB

Таким образом можно сделать вывод — чем более мощный сигнал мы измеряем, тем меньше погрешность измерений.

Многоканальный осциллограф ZETLAB

Второй пример

Для стандартных сигналов КГИ можно вычислить аналитически. Таким образом можно задать с помощью программы генератора стандартные сигналы и сравнить результаты измерений с результатами вычислений.

Симметричный прямоугольный сигнал (меандр) имеет КГИ 48,3 %.

Для того чтобы получить симметричный прямоугольный сигнал необходимо в программе генератор добавить сигнал «имп», настроить частоту 700 Гц, амплитуду 1 В, смещение 0 В и скважность 0,5.

Генератор сигналов ZETLAB

Анализ нелинейных искажений ZETLAB

Идеальный пилообразный сигнал имеет КГИ 80,3%.

Для того чтобы получить идеальный пилообразный сигнал необходимо в программе генератор добавить сигнал «пила», настроить частоту 700 Гц, амплитуду 1 В, смещение 0 В и тип ниспадающий или возрастающий.

Генератор сигналов ZETLAB

Анализ нелинейных искажений ZETLAB

Симметричный треугольный сигнал имеет КГИ 12,1%.

Для того чтобы получить симметричный треугольный сигнал необходимо в программе «Генератор» добавить сигнал «пила», настроить частоту 700 Гц, амплитуду 1 В, смещение 0 В и тип треугольный.

Генератор сигналов ZETLAB

Анализ нелинейных искажений ZETLAB

Оценка расчета SNR (отношение сигнал/шум)

В генераторе необходимо добавить «синус», настроить частоту на 100 Гц, уровень на 1 В и включить генератор. Вольтметр должен показать 1000 мВ. Это будет значение сигнала — S.

Затем необходимо убрать «синус» и добавить «шум», настроить уровень на 0.1 В, задать тип шума «белый». Вольтметр должен показывать около 100 мВ. Это будет значение шума — N.

Вольтметр переменного тока ZETLAB

Далее необходимо снова добавить «синус» и суммарный сигнал необходимо измерить программой «АНИ». Результаты измерений программы «АНИ» необходимо сравнить с результатами вычислений SNR по формуле.

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Для указанных выше параметров сигнала SNR должен быть равен 20 дБ или 100 (то есть энергия сигнала в 100 раз больше энергии шума).

Колебания результатов измерений из-за наличия случайности в шуме не должны превышать 0,5 дБ или 5 раз.

Генератор сигналов ZETLAB

Анализ нелинейных искажений ZETLAB

Анализ нелинейных искажений ZETLAB

Оценка THD+N (коэффициент нелинейных искажений с учётом шума)

В генераторе необходимо добавить «синус», настроить частоту на 100 Гц, уровень на 1 В и включить генератор. Вольтметр должен показать 1000 мВ. Это будет значение сигнала — S.

Затем, необходимо убрать «синус» и добавить «синус2», настроить частоту на 300 Гц, настроить уровень на 0,1 В, задать тип шума «белый». Вольтметр должен показывать около 100 мВ. Это будет значение искажений — D.

И наконец, необходимо убрать «синус2» и добавить «шум», настроить уровень на 0,1 В, задать тип шума «белый». Вольтметр должен показывать около 100 мВ. Это будет значение шума — N.

Далее необходимо снова включить «синус» и «синус2» и измерить суммарный сигнал в программе «АНИ». Результаты измерений программы «АНИ» необходимо сравнить с результатами вычислений THD+N по формуле

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Для указанных выше параметров сигнала THD+N должен быть равен 17 дБ или 14%.

Колебания результатов измерений из-за наличия случайности в шуме не должны превышать 0,5 дБ или 0,5 %.

THD и SNR должны быть равны в этом случае 20 дБ или 10%.

Анализ нелинейных искажений ZETLAB

Анализ нелинейных искажений ZETLAB

Оценка SFDR (Динамический диапазон, свободный от паразитных составляющих)

В генераторе необходимо добавить «синус», настроить частоту на 100 Гц, уровень на 1 В и включить генератор. Вольтметр должен показать 1000 мВ. Это будет значение сигнала — S.

Затем, необходимо убрать «синус» и добавить «синус2», настроить частоту 300 Гц и уровень на 0.1 В. Вольтметр должен показывать около 100 мВ. Это будет значение третьей гармоник — U3. Также этот сигнал будет единственной гармоникой.

Далее необходимо снова включить «синус» и измерить суммарный сигнал в программе «АНИ». Результаты измерений необходимо сравнить с результатами вычислений SFDR по формуле:

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Для указанных выше параметров сигнала SFDR должен быть равен 20 дБ или 10 (то есть основная гармоника в 10 раз больше максимальной гармоники искажений).

Погрешность измерения не должна превышать 0,01 дБ или 0,1.

Для наглядного представления результата вычисления SFDR необходимо запустить программу «Узкополосный спектр» и настроить «Расчёт значений по Y» на «логарифмический, дБ». В этом случае значение SFDR можно легко вычислить как разность между значением пика на основной частоте и значением самого высокого пика на частоте гармоники.

Анализ нелинейных искажений ZETLAB

Анализ нелинейных искажений ZETLAB

Оценка SINAD (Отношение сигнал/шум с учётом искажений)

В генераторе необходимо добавить «синус», настроить частоту на 100 Гц, уровень на 1 В и включить генератор. Вольтметр должен показать 1000 мВ. Это будет значение сигнала — S.

Затем, необходимо убрать «синус» и добавить «синус2», настроить уровень на 0,1 В, задать тип шума «белый». Вольтметр должен показывать около 100 мВ. Это будет значение искажений — D.

И наконец, необходимо убрать «синус2» и добавить «шум», настроить уровень на 0,1 В, задать тип шума «белый». Вольтметр должен показывать около 100 мВ. Это будет значение шума — N.

Далее необходимо снова включить «синус» и «синус2» и измерить суммарный сигнал в программе «АНИ». Результаты измерений программы «АНИ» необходимо сравнить с результатами вычислений SINAD по формуле

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Для указанных выше параметров сигнала SINAD должен быть равен 17 дБ или 50 раз.

Колебания результатов измерений из-за наличия случайности в шуме не должны превышать 0,5 дБ или 2 раза.

Анализ нелинейных искажений ZETLAB

Анализ нелинейных искажений ZETLAB

Оценка ENOB (эффективная разрядность)

В генераторе необходимо добавить «синус», настроить частоту на 100 Гц, уровень на 7,0 В и включить генератор. Вольтметр должен показать 7000 мВ.

Далее необходимо сигнал в программе «АНИ». Результаты измерений программы «АНИ» необходимо сравнить с результатами вычислений ENOB по формуле:

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Так как разрядность анализатора ZET017 составляет 16 бит, то ENOB не может превысить 16. Для указанных выше параметров на поверенном анализаторе ZET017 результат вычисления ENOB должен быть 15.5.

В характеристике ENOB включен учёт бита разряда (он, как и обычный бит данных, увеличивает диапазон в 2 раза) и ошибок квантования «идеального» АЦП.

Так как в расчёте ENOB используется значение SINAD, то у измерительных каналов значение ENOB будет меньше из-за наличия помех.

Формула вычисления ENOB является обратной к формуле вычисления динамического диапазона:

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Анализ нелинейных искажений ZETLAB

Заключение

В заключении необходимо отметить, что в отдельных случаях указанные выше характеристики могут быть измерены с иным опорным уровнем. В этом случае необходимо обратить внимание на обозначение и воспользоваться справочной литературой.

dBFS (от англ. Full Scale — «полная шкала») — опорное напряжение соответствует полной шкале прибора; например, «уровень записи составляет −6 dBFS». Для линейного цифрового кода каждый разряд соответствует 6 дБ, и максимально возможный уровень записи равен 0 dBFS.

dBc (русское дБн) — опорным является уровень излучения на частоте несущей (англ. carrier) или уровень основной гармоники в спектре сигнала. Примеры использования: «уровень побочного излучения радиопередатчика на частоте второй гармоники составляет −60 дБн» (то есть мощность этого побочного излучения в 1 млн раз меньше мощности несущей) или «уровень искажений составляет −60 дБн».

В связи с тем, что не всегда входной сигнал будет занимать весь доступный динамический диапазон возникла необходимость добавить характеристику (или несколько), которые бы отражали потенциальные возможности АЦП.

DBFS — это безразмерная величина, равная отношению амплитуды основной гармоники (S) к максимальному измеримому уровню АЦП (M). Необходимо отметить, что эта величина почти всегда меньше 0 и равна 0 только, когда амплитуда сигнала полностью заполняет динамический диапазон устройства.

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

ENOBFS — это максимальное количество разрядов, которое может быть использовано АЦП/ЦАП. Эта характеристика показывает значение близкое к реальной разрядности АЦП/ЦАП не зависимо от мощности сигнала.

Методика оценки погрешностей расчета результатов в программе «Анализ нелинейных искажений»

Пример проверки

В генераторе необходимо добавить «синус», настроить частоту на 100 Гц, уровень на 3,6 В и включить генератор. Вольтметр должен показать 3600 мВ СКЗ и 5091 мВ амплитуду.

Характеристика DBFS должна быть равна -6 дБ.

Характеристика ENOBFS должна быть ровно на 1 больше чем характеристика ENOB.

Анализ нелинейных искажений ZETLAB

В ПО ZETLAB присутствует программа «Формула», предназначенная для обработки данных по заданным формулам (в том числе и для генерации сигналов). Виртуальные каналы, созданные программой «Формула» (как и все прочие виртуальные каналы), передают данные в формате FLOAT (32-битное дробное число с плавающей запятой стандарта IEEE 754), у которого на мантиссу отведено 22 бит. Поэтому для каналов программы «Формула» величина ENOB не будет превышать 22. Максимальное значение для ENOB и ENOBFS в программе «АНИ» ограничено 32.

Формула ZETLAB

Анализ нелинейных искажений ZETLAB

Если каналу «Формулы» задать параметры значительно соответствующие небольшому динамическому диапазону, то значения характеристик ENOB и ENOBFS будут ограничены уже параметрами канала. Так например для канала с минимальным уровнем в 1 мВ (вес младшего разряда) и максимальным уровнем 1000 мВ (максимальная амплитуда) количество допустимых значений будет 2000 и для его кодирования будет достаточно 11 бит.

Программа Формула ZETLAB

Программа Анализ нелинейных искажений ZETLAB