реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Передискретизация и увеличение разрядности АЦП, вопрос по реализации
Alexashka
сообщение Apr 5 2011, 11:36
Сообщение #31


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(shf_05 @ Apr 5 2011, 14:40) *
завал АЧХ конечно будет, об этом Вам писали, надо применять корректирующий ких фильтр, а вот там где "выборка не попадает в точку" это не искажения, это "обман зрения".


Да бог с ним, с завалом. Это учесть можно. А вот учесть то что я не попадаю в максимум -как? 


Почему обман зрения? посмотрите на нижний левый график на втором рисунке. Это то что получится при реальной обработке, - две точки попадают по бокам импульса.

Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 5 2011, 14:02
Сообщение #32


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Alexashka @ Apr 5 2011, 14:36) *
Да бог с ним, с завалом. Это учесть можно. А вот учесть то что я не попадаю в максимум -как? 


Почему обман зрения? посмотрите на нижний левый график на втором рисунке. Это то что получится при реальной обработке, - две точки попадают по бокам импульса.

А Вы выполните интерполяцию (для проверки) из полученного сигнала и получите опять гладкую огибающую и красивые точки (только завал частотки еще сильнее будет, если применить такой же интерполирующий фильтр как и при децимации).
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 5 2011, 17:22
Сообщение #33


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(sup-sup @ Apr 5 2011, 18:02) *
А Вы выполните интерполяцию (для проверки) из полученного сигнала и получите опять гладкую огибающую и красивые точки (только завал частотки еще сильнее будет, если применить такой же интерполирующий фильтр как и при децимации).

Идею понял. Только вот возникает вопрос - а целесообразно ли это, сначала уменьшать частоту дискрет в 16 раз, а потом скажем увеличивать в 2 раза? Можно ли получить те же результаты сделав фильтрацию-децимацию в 8 раз -одним проходом?
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 5 2011, 19:51
Сообщение #34


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Alexashka @ Apr 5 2011, 20:22) *
Идею понял. Только вот возникает вопрос - а целесообразно ли это, сначала уменьшать частоту дискрет в 16 раз, а потом скажем увеличивать в 2 раза? Можно ли получить те же результаты сделав фильтрацию-децимацию в 8 раз -одним проходом?

Конечно, сразу децимацию на 8, если нужна повышенная разборчивость во временной области. Это я предложил интерполяцию для самопроверки, что децимация сделана правильно. Хотя и на спектре это видно - он то не искажен почти. Для уточнения кроме chirp-сигнала можно взять пару частот рядом в верхнем диапазоне. В этом случае будут видны все 'помехи', так как частоты постоянные, а размер FFT можно взять побольше (максимальный для имеющейся выборки). В конце концов, нужно же увидеть в спектре результат повышения разрядности.
Децимацию на 8 лучше делать каскадную, каждый раз на два. В этом случае фильтры получается короче и каждый следующий работает на вдвое низкой частоте.

Сообщение отредактировал sup-sup - Apr 5 2011, 19:56
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 5 2011, 20:13
Сообщение #35


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(sup-sup @ Apr 5 2011, 23:51) *
Конечно, сразу децимацию на 8, если нужна повышенная разборчивость во временной области.

С этим ясно. Попробую какойнить простенький фильтр из той статейки.

Насчет шумов и эфф.разрядности АЦП хочу уточнить. С усреднением понятно, даже с точки зрения математики разрядность повышается при усреднении показаний, т.к уменьшается дисперсия. А вот если для децимации используется другой (произвольный грубо говоря) фильтр НЧ? Правильно ли я понимаю, что уровень шума снизится в корень из [(Fs/2)/BW] раз, где Fs- частота отсчетов на выходе АЦП, BW -полоса пропускания децимирующего фильтра.
Go to the top of the page
 
+Quote Post
Дмитрий_Б
сообщение Apr 5 2011, 20:33
Сообщение #36


Местный
***

Группа: Участник
Сообщений: 211
Регистрация: 25-10-09
Пользователь №: 53 195



Цитата(Alexashka @ Apr 1 2011, 14:15) *
Встала такая задача: у имеющегося 10-битного АЦП нужно повысить эффективную разрядность до 12 бит. ...


Действительно, передискретизация даёт эффект улучшения отношения сигнал/шум квантования при условии некоррелированности соседних выборок. Это обеспечивается дополнительным шумом, спектр которого сосредоточен вне полосы частот измеряемого сигнала. При этом надо обеспечивать такое подавление спектра дополнительного шума в полосе частот измеряемого сигнала, чтобы его спектральная плотность была на ~10дБ меньше спектральной плотности шума квантования (тогда улучшение отношения сигнал/шум будет примерно на 0.5 дБ меньше теоретического).
При этом надо иметь ввиду, что передискретизация не снижает уровень паразитных спектральных компонент, связанных с нелинейностью самого АЦП.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 6 2011, 05:03
Сообщение #37


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Цитата(Alexashka @ Apr 5 2011, 23:13) *
С этим ясно. Попробую какойнить простенький фильтр из той статейки.

Насчет шумов и эфф.разрядности АЦП хочу уточнить. С усреднением понятно, даже с точки зрения математики разрядность повышается при усреднении показаний, т.к уменьшается дисперсия. А вот если для децимации используется другой (произвольный грубо говоря) фильтр НЧ? Правильно ли я понимаю, что уровень шума снизится в корень из [(Fs/2)/BW] раз, где Fs- частота отсчетов на выходе АЦП, BW -полоса пропускания децимирующего фильтра.

Усреднение это ФНЧ с ЧХ Sin(x)/x. Другой ФНЧ при похожей полосе примерно такой же уровень шума даст. Чем уже полоса, тем меньше шума.
Другое дело, что для максимального повышения разрядности нужно подмешать к исходному сигналу шум вне полосы. Иначе сигнал меньше одного кванта не пройдет. Это можно увидеть и на модели. Для этого нужно взять в верхней части полосы маленький тон, посмотреть спектр, а затем подмешать к нему вне полосы тон побольше. После децимации у второго варианта шумы вокруг первого тона опустятся.
Go to the top of the page
 
+Quote Post
alexkok
сообщение Apr 6 2011, 06:54
Сообщение #38


Знающий
****

Группа: Участник
Сообщений: 609
Регистрация: 3-03-07
Из: San Jose
Пользователь №: 25 837



Цитата(Дмитрий_Б @ Apr 5 2011, 23:33) *
При этом надо иметь ввиду, что передискретизация не снижает уровень паразитных спектральных компонент, связанных с нелинейностью самого АЦП.

Зависит от вида нелинейности.
На плавную нелинейность не влияет, а локальную, особенно в середине шкалы (в нуле) и при малой амплитуде сигнала - уменьшает.
Самый простой и эффективный способ - это не шум, а пилообразное напряжение с частотой Найквиста после децимации.
Для данного случая реализуется счётчиком на 16 и ЦАПом на резисторах с ЕМР в 1/4 от ЕМР АЦП.


--------------------
Go to the top of the page
 
+Quote Post
тау
сообщение Apr 6 2011, 08:02
Сообщение #39


.
******

Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757



Цитата(Alexashka @ Apr 6 2011, 00:13) *
Правильно ли я понимаю, что уровень шума снизится в корень из [(Fs/2)/BW] раз, где Fs- частота отсчетов на выходе АЦП, BW -полоса пропускания децимирующего фильтра.

правильно.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 6 2011, 11:52
Сообщение #40


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



Еще раз обращаю внимание на то, что без внеполосного шума ничего не получится (почти). Если естественный шум есть в полосе, то какой он есть, такой и останется. Все надо делать как в сигма дельта. Если естественный шум вне полосы есть, то это очень хорошо. Я предлагал для пробы дать простой тон - это тоже поможет (для проверки).
А чтобы оценить возможности ADC нужно посмотреть спектр при большом размере FFT.
Можно дать входной сигнал на ADC вверху диапазона (который будет после децимации) с уровнем равным уровню квантования (разрешению ADC). Напустить на эту выборку FFT максимального размера. И весь запас в децибеллах, который мы увидим внизу от уровня сигнала будет нашими приобретенными битиками и это должно быть достижимо после децимации. Мы увидим, что чем выше частота дискретизации, тем ниже опускаются шумы, оставляя палки. Вот эти палки и определяют возможности ADC. Которые определены в параметре SFDR в datasheet. После подачи дополнительного внеполосного тона (с более высоким уровнем, чем сигнал, мы увидим улучшение (понижение шума) в полосе. Как говорится 'тот, кто нам мешает, нам поможет'. Это про шум.


Сообщение отредактировал sup-sup - Apr 6 2011, 12:14
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 6 2011, 15:37
Сообщение #41


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(sup-sup @ Apr 6 2011, 15:52) *
Еще раз обращаю внимание на то, что без внеполосного шума ничего не получится (почти). Если естественный шум есть в полосе, то какой он есть, такой и останется. Все надо делать как в сигма дельта. Если естественный шум вне полосы есть, то это очень хорошо. Я предлагал для пробы дать простой тон - это тоже поможет (для проверки).
А чтобы оценить возможности ADC нужно посмотреть спектр при большом размере FFT.
Можно дать входной сигнал на ADC вверху диапазона (который будет после децимации) с уровнем равным уровню квантования (разрешению ADC). Напустить на эту выборку FFT максимального размера. И весь запас в децибеллах, который мы увидим внизу от уровня сигнала будет нашими приобретенными битиками и это должно быть достижимо после децимации. Мы увидим, что чем выше частота дискретизации, тем ниже опускаются шумы, оставляя палки. Вот эти палки и определяют возможности ADC. Которые определены в параметре SFDR в datasheet. После подачи дополнительного внеполосного тона (с более высоким уровнем, чем сигнал, мы увидим улучшение (понижение шума) в полосе. Как говорится 'тот, кто нам мешает, нам поможет'. Это про шум.

внеполосный сигнал снизит диф.нелинейность АЦП, но я уже писал что АЦП по шумам (SFDR) лучше 120дб (я делал FFT на 1млн.выборок), так что мне это не надо, а естественных шумов в сигнале достаточно (даже у самого АЦП первые 2 разряда прыгают постоянно).
Я какбы тоже думал что спектральная плотность шумов не уменьшаются, просто сужается полоса частот, но вот Вы пишете:
Цитата
Другое дело, что для максимального повышения разрядности нужно подмешать к исходному сигналу шум вне полосы. Иначе сигнал меньше одного кванта не пройдет. Это можно увидеть и на модели. Для этого нужно взять в верхней части полосы маленький тон, посмотреть спектр, а затем подмешать к нему вне полосы тон побольше. После децимации у второго варианта шумы вокруг первого тона опустятся.

Теперь Вы пишете, что шумы уменьшаются...почему? И разве самого сигнала недостаточно чтобы при децимации(+фильтрации) начали снижаться шумы (ведь скачки между уровнями есть)?

Цитата(alexkok @ Apr 6 2011, 10:54) *
Самый простой и эффективный способ - это не шум, а пилообразное напряжение с частотой Найквиста после децимации.

Т.е подать на вход АЦП сигнал 250Гц? А какой амлитуды? Ох боюсь трудно мне потом будет его отфильтровать от полезного сигнала rolleyes.gif .
update 2 sup-sup: мдя, про 2 прыгающих разряда я погорячился, на закороченном входе прыгает только младший разряд и то если попадаешь на ступеньку LSB yeah.gif .
Кстати в модели шумы тоже есть, только с ними я не успел поиграться. Какой параметр лучше смотреть чтобы оценить улучшение сигнал/шум? SINAD? Завтра сделаю как Вы сказали и расскажу что получилось
Go to the top of the page
 
+Quote Post
alexkok
сообщение Apr 6 2011, 17:03
Сообщение #42


Знающий
****

Группа: Участник
Сообщений: 609
Регистрация: 3-03-07
Из: San Jose
Пользователь №: 25 837



Цитата(Alexashka @ Apr 6 2011, 18:37) *
Т.е подать на вход АЦП сигнал 250Гц? А какой амлитуды?

Легко посчитать:
Размах: 1/4 ЕМР * 16 = 4 ЕМР Вашего АЦП, амплитуда будет в два раза меньше. rolleyes.gif
Цитата
Ох боюсь трудно мне потом будет его отфильтровать от полезного сигнала rolleyes.gif .

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


--------------------
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 7 2011, 05:24
Сообщение #43


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



Цитата(alexkok @ Apr 6 2011, 21:03) *
Легко посчитать:
Размах: 1/4 ЕМР * 16 = 4 ЕМР Вашего АЦП, амплитуда будет в два раза меньше. rolleyes.gif

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

Может я чего не понимаю..."с частотой Найквиста после децимации" -в моем случае 250Гц, значит на один период "пилы" приходится 4мс или 2 интервала (результата) суммирования (частота на выходе дециматора -500Гц). Если первый интервал придется на начало (подъем) пилы, а второй на верхнюю ее часть, то два эти результата будут разные. Т.е на выходе сумматора будет прыгающий с частотой 250Гц код. Разве не так?
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 7 2011, 10:39
Сообщение #44


Практикующий маг
******

Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576



В общем попробовал все о чем говорили на модели. Что получилось: 

1) При интерполяции сигнал восстанавливается очень хорошо, с меньшей амплитудой правда, но она меньше у всех импульсов, что можно списать на завал частотки в усредняющем окне.

2) Ввел функцию замера SINAD для исходного сигнала и прореженного. Для проверки брал синус 60Гц с наложенным на него белым шумом с таким соотношением амплитуд, чтобы получить сигнал/шум=2 (6дб).

В прореженном сигнале сигнал/шум увеличился на 10,8дб. Не знаю на сколько это хорошо, но получается близко к 12дб (что соответсвует увелич.разрядности на 2 бита). См.рисунок 1.

3) Добавление пилы с амплитудой =10 LSB незначительно уменьшает сигнал/шум. См. рисунок 2. Видно что появилась палка на 250Гц на спектре исходного сигнала. Сама пила показана на рисунке 3.

4) Пила при усреднении остается и в прореженном и в интерполированном сигнале (рисунок 3, красный и фиолетовый лучи).

Прикрепленное изображение


Прикрепленное изображение


Прикрепленное изображение


5) Все ясно! Пилу надо было брать с частотой прореженного сигнала (500Гц), тогда она полностью удаляется при децимации и не ухудшает сигнал/шум (рис.4)  cool.gif

Прикрепленное изображение


Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 7 2011, 11:20
Сообщение #45


Знающий
****

Группа: Участник
Сообщений: 674
Регистрация: 26-08-05
Пользователь №: 7 997



А зачем Вы добавляете шум в полосе?Это некорректный эксперимент. Естественно, если шум белый, то получится 'ожидаемый' результат. А если цель - увеличить эффективную разрядность, то в полосу ничего добавлять не надо, кроме маленького сигнала. Сигнал должен помещаться внутри младшего разряда. Нужно посмотреть исходный результат, а потом добавить внеполосный шум или треугольник.
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th June 2025 - 22:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01638 секунд с 7
ELECTRONIX ©2004-2016