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

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


Знающий
****

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



Цитата(Alexashka @ Apr 2 2011, 17:15) *
Возникли вопросы. Спуры это палки которые постоянно сидят в спектре? Всмысле никакая фильтрация их уже не уберет если они попадают в полосу частот? У меня спектр чистенький до -120дб ровная полоска.
Чтобы оценить "внутреннюю разрядность"... я так понял можно делая FFT на длительной реализации? Чтобы FFT работало как избирательный фильтр убирающий шумы квантования. И тогда спуры будет видно?

Не понял. Окно (взвешивающая функция) нужно чтобы минимизировать артефакты FFT преобразования. Т.е просто убирает сигнал вначале и в конце реализации. Разве оно работает как НЧ фильтр? Вы предлогаете делать свертку функции окна с сигналом? Зачем?


Не вижу причины, по которой результат должен быть хуже, чем от FFT. Если в нужной нам полосе получается 120 дБ, то его же (120 дБ) можно получить и методом 'фильтрация - децимация'. То есть, дополнительных разрядов получается значительно больше, чем 2. Если линейность АЦП 120 дБ обеспечивает. Кстати, в сигма дельте результат также зависит от порядка модулятора.

Ну да, для нулевой частоты FFT как раз ФНЧ. Свертка делается между сигналом и окном. Для других частот уже получается (от перестановки результат ведь не меняется) свертка сигнала с косинусным и синусным ядром полосового фильтра. Только, действительно, это я не в тему, так как фильтр будет другой, для всей полосы. Но длина фильтра будет примерно как у понравившегося режима FFT

Цитата(ViKo @ Apr 2 2011, 17:22) *
В том-то и дело, что любое окно в фильтре КИХ служит для уменьшения пульсаций АЧХ за пределами полосы пропускания (боковых лепестков) путем расширения основного, расширения полосы пропускания. Вот я и сомневаюсь, что через такую АЧХ не пролезет больше шума.

Не вижу противоречия. Фильтр-то один. Просто ядро у одного упрощенное и требует меньше ресурса. А у другого позволяет получить подходящую характеристику. То есть, в общем случае применяется FIR. А прямоугольное окно - это один из его вариантов (вырождений).

Сообщение отредактировал sup-sup - Apr 2 2011, 17:06
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 2 2011, 18:14
Сообщение #17


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(sup-sup @ Apr 2 2011, 19:46) *
Не вижу противоречия. Фильтр-то один. Просто ядро у одного упрощенное и требует меньше ресурса. А у другого позволяет получить подходящую характеристику. То есть, в общем случае применяется FIR. А прямоугольное окно - это один из его вариантов (вырождений).

В том и вопрос - какое окно самое подходящее для максимального подавления шума за пределами полосы сигнала. Прямоугольное или ...? Так как у нас оверсэмплинг, то понятно, что лишнюю полосу можно и нужно отрезать. Как ее отрезать, чтобы пропустить сигнал по-максимуму, а шум по минимуму? У прямоугольного окна первый минимум на АЧХ на частоте fs/N, а у всех остальных окон на более высокой частоте. Зато после все непрямоугольные окна давят намного лучше.
Без расчета не определить.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 3 2011, 08:13
Сообщение #18


Знающий
****

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



Цитата(ViKo @ Apr 2 2011, 21:14) *
В том и вопрос - какое окно самое подходящее для максимального подавления шума за пределами полосы сигнала. Прямоугольное или ...? Так как у нас оверсэмплинг, то понятно, что лишнюю полосу можно и нужно отрезать. Как ее отрезать, чтобы пропустить сигнал по-максимуму, а шум по минимуму? У прямоугольного окна первый минимум на АЧХ на частоте fs/N, а у всех остальных окон на более высокой частоте. Зато после все непрямоугольные окна давят намного лучше.
Без расчета не определить.

Если взять крайности, то прямоугольная АЧХ лучше всего подходит для подавления внеполосных помех любого происхождения перед децимацией из-за максимального использования рабочей полосы частот. Допустим, частота Fs/2=100kHz. Если фильтр имеет пропускание до 99 кГц, а нужное затухание от 101 кГц, то это очень хорошо, но фильтр получится очень длинный (в 'идеале', бесконечная ИХ sin(x)/x) и нереализуемый.
Другая крайность - прямоугольная ИХ, что дает вид АЧХ sin(x)/x (неравномерность в полосе, широкую переходную полосу, пульсирующее затухание вне полосы).
Получается, что нужно брать реализуемый фильтр максимально возможной длины. В это случае получится максимальное подавление всего ненужного. Подходящее окно позволит выбрать требуемый баланс между затуханиями в полосе и вне полосы и шириной переходной зоны.
Если опять вернуться к FFT, то его частотное разрешение обратно пропорционально размеру окна FFT, что можно применить для первоначальной оценке размера фильтра.

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


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

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



Цитата(sup-sup @ Apr 1 2011, 22:57) *
Для оценки фильтра можно применить тот же FFT анализ, подбирая подходящее окно, которое и является импульсной характеристикой фильтра.

Дык вроде на окно то сигнал умножается . Вот к примеру я выбрал окно Хэннинга...или нет, чтото я запутался smile3046.gif

Да и еще такой момент, КИХ делать не хотелось бы, слишком затратно. БИХ лучше sm.gif думаю чтонибудь эллиптическое 2го порядка мнебы хватило. Квадратное окно...или усреднитель прельщает минимумом вычислительных затрат.
Go to the top of the page
 
+Quote Post
sup-sup
сообщение Apr 3 2011, 16:01
Сообщение #20


Знающий
****

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



Цитата(Alexashka @ Apr 3 2011, 18:36) *
Дык вроде на окно то сигнал умножается . Вот к примеру я выбрал окно Хэннинга...или нет, чтото я запутался smile3046.gif

Да и еще такой момент, КИХ делать не хотелось бы, слишком затратно. БИХ лучше sm.gif думаю чтонибудь эллиптическое 2го порядка мнебы хватило. Квадратное окно...или усреднитель прельщает минимумом вычислительных затрат.


Я там неточно про окно. Окно требуемого фильтра не будет совпадать с окном FFT.
В оконном FFT сигнал умножается на окно, затем делается FFT. Но FFT это группа операций свертки сигнала (перемноженного уже на окно) с синусом и косинусом. На нулевой частоте получается ФНЧ, а на всех остальных полосовые фильтры эквивалентные по АЧХ с ФНЧ. Если мы сделаем фрагмент ДПФ только для одной частоты, то получим FIR. Разница только в том, что в FFT умножение сигнала на окно (с целью экономии) заранее делается, а в фильтрах окно умножается на синус (косинус) заранее (тоже для экономии) и результат является ядром (ИХ) фильтра, который потом много раз используется. Результат один и тот же.
КИХ (чем БИХ) лучше тем, что он по своему построению увеличивает разрядность тем больше, чем он длиннее. А БИХ, он накапливает ошибку. Кроме этого, нелинейная фазовая характеристика, что испортит сигнал на высоких частотах.
Если у Вас есть выборки сигналов, с ними надо помоделировать и выбрать подходящий фильтр. Любой из них может подойти.

Сообщение отредактировал sup-sup - Apr 3 2011, 16:17
Go to the top of the page
 
+Quote Post
shf_05
сообщение Apr 4 2011, 05:07
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 22-04-08
Из: г. Екатеринбург
Пользователь №: 36 992



Цитата(Alexashka @ Apr 1 2011, 16:15) *
Но в статье предлогается брать сумму по группам из 16 отсчетов. Внутренний голос подсказывает, что при этом произойдет увеличение шумов в корень из 16 раз, т.е в 4 раза (если считать в LSB). Однако вес одного LSB теперь будет в 16 раз меньше (входной диапазон напряжений АЦП остался тем же, а диапазон "кодов" на выходе сумматора вырос в 16 раз). Т.е если перевести полученный с сумматора код в "вольты", то эффективный шум вроде как уменьшается в 4 раза. Так ли это и какой смысл после этого делать деление на 16 -сигнал станет чище конечно, но шумы квантования при этом возрастают?  laughing.gif

если принять что за время децимации - 16 отчетов сигнал не изменяется, а шум изменяется, то получается вы считаете мат. ожидание случайной величины:
МОсш= сумма значенией СВ / число значений,
где МОсш - это значение вашего сигнала с шумом, МОс- мат. ожидание сигнала- те значение самого сигнала
но МО нормального шума равно нулю, а МО суммы сигнала и шума равно МОс+МОш
МОсш= МОс+МОш= МОс+0. (если число значений бесконечно, если их не бесконечно, то МОш "примерно 0")
вот и выходит простое сложение уменьшает шумы в некотором роде.

если вам не важны искажения фазы и разрядность позволяет создать БИХ фильтр с небольшими шумами, то можно применять- я так делал, работало.
если важна фаза- то придется КИХ, кстати суммирование и деление на число отчетов- тоже КИХ фильтр.
по вычислительным затратам- смотря что за проц. у вас, если может умножать+складывать за такт, то разницы большой нет умножить или сложить или сложить+умножить. если умножает долго- то суммирование может быть рациональнее.
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 4 2011, 10:42
Сообщение #22


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

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



Цитата(shf_05 @ Apr 4 2011, 09:07) *
если принять что за время децимации - 16 отчетов сигнал не изменяется, а шум изменяется, то получается вы считаете мат. ожидание случайной величины:
МОсш= сумма значенией СВ / число значений,
где МОсш - это значение вашего сигнала с шумом, МОс- мат. ожидание сигнала- те значение самого сигнала
но МО нормального шума равно нулю, а МО суммы сигнала и шума равно МОс+МОш
МОсш= МОс+МОш= МОс+0. (если число значений бесконечно, если их не бесконечно, то МОш "примерно 0")
вот и выходит простое сложение уменьшает шумы в некотором роде.


Вопрос был не в этом sm.gif а в том что при делении на кол-во слагаемых мы уменьшаем число рабочих бит и таким образом уменьшаем (ограниченное разрядностью) отношение сигнал/шум. Но впринципе с этим уже разъяснил ув.hobgoblin. Т.е делить надо не на число слагаемых, а на кол-во бит, на которое увеличивается эффективное разрешение сигнал/шум, в моем случае на 2 бита (в 4 раза).

Цитата(shf_05 @ Apr 4 2011, 09:07) *
если вам не важны искажения фазы и разрядность позволяет создать БИХ фильтр с небольшими шумами, то можно применять- я так делал, работало.


если важна фаза- то придется КИХ, кстати суммирование и деление на число отчетов- тоже КИХ фильтр.
по вычислительным затратам- смотря что за проц. у вас, если может умножать+складывать за такт, то разницы большой нет умножить или сложить или сложить+умножить. если умножает долго- то суммирование может быть рациональнее.

Вот это как раз вопрос...в сигнале желательно не потерять амплитуду импульсов, я так понимаю это может произойти если применить фильтр не с линейной ФЧХ?
Go to the top of the page
 
+Quote Post
тау
сообщение Apr 4 2011, 11:58
Сообщение #23


.
******

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



Цитата(Alexashka @ Apr 4 2011, 14:42) *
Вот это как раз вопрос...в сигнале желательно не потерять амплитуду импульсов, я так понимаю это может произойти если применить фильтр не с линейной ФЧХ?

применяйте простейший CIC с прореживанием N , если T импульса будет более чем в 2 раза больше чем N/Fs то в выходных отсчетах всегда будет появляться неискаженная амплитуда.
Go to the top of the page
 
+Quote Post
hobgoblin
сообщение Apr 4 2011, 12:38
Сообщение #24


Местный
***

Группа: Свой
Сообщений: 202
Регистрация: 2-10-06
Из: Петербург
Пользователь №: 20 881



Цитата
Я понял, т.е перед оцифровкой тогда мне нужно ограничить спектр до половинной частоты, с которой потом я буду брать отсчеты с выхода сумматора. Скажем я делаю оцифровку 8кГц, потом суммирую группы по 16 отсчетов, т.е на выходе получаю 500Гц. Тогда мне нужно ограничить спектр сигнала на входе АЦП до 250Гц?


В подходе с усреднением - да, потому что характеристика фильтра вне полосы Fs_вх/N получается не ахти какая. В случае с использованием децимирующего фильтра с хорошим подавлением - не обязательно, но усложняет цифровую реализацию, поскольку все что выше 250 Гц должен будет подавить цифровой фильтр.

Цитата
Вот это как раз вопрос...в сигнале желательно не потерять амплитуду импульсов, я так понимаю это может произойти если применить фильтр не с линейной ФЧХ?

Смотря какая длительность импульса и какая фазовая характеристика. В случае с БИХ тоже есть вариант получить хорошую фазовую характеристику. Кое-какую информацию можно почерпнуть здесь
http://www.dspguide.com/ch19/4.htm

Вариант с усреднением будет самым простым, и вероятно для вашей задачи его хватит за глаза. Второй вариант, получше с точки зрения подавления внеполосных шумов, как уже написал тау, это взять CIC фильтр, который тоже просто реализуется. Учтите, что оба варианта дадут непрямоугольную АЧХ в основной полосе после децимации, и может потребоваться применение дополнительного короткого КИХ фильтра (но уже работающего с меньшей частотой отсчетов) для коррекции частотной характеристики. И КИХ с непрямоугольным окном, и БИХ фильтр могут оказаться сложными для реализации (во втором случае из-за возможно потребующегося увеличения разрядности при вычислениях), и не факт, что вам это действительно нужно.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 4 2011, 14:55
Сообщение #25


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(тау @ Apr 4 2011, 14:58) *
применяйте простейший CIC с прореживанием N

то есть просто "сложить и поделить", правильно?
Go to the top of the page
 
+Quote Post
тау
сообщение Apr 4 2011, 15:05
Сообщение #26


.
******

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



Да, правильно.
При этом , если ТС подгадает с длительностью интервала суммирования отсчетов Fs , совместив во времени с ожидаемым "импульсом" , то SNR будет максимально возможным для такого случая и белого шума.

Сообщение отредактировал тау - Apr 4 2011, 15:08
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 4 2011, 18:12
Сообщение #27


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

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



Спасибо за наводку тау, hobgoblin, не слышал ранее про такие фильтры.
Вот нашел как раз по теме статейку:
http://dsplib.ru/content/cic/cic.html
и читается легко sm.gif

Цитата(тау @ Apr 4 2011, 15:58) *
применяйте простейший CIC с прореживанием N , если T импульса будет более чем в 2 раза больше чем N/Fs то в выходных отсчетах всегда будет появляться неискаженная амплитуда.

Спасибо, это обнадеживает!)
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 5 2011, 06:46
Сообщение #28


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Alexashka @ Apr 4 2011, 21:12) *
Вот нашел как раз по теме статейку:
http://dsplib.ru/content/cic/cic.html

Есть книжка - Ричард Лайонс. Цифровая обработка сигналов. Вот она действительно, легко читается. sm.gif Имеется, где положено. Там есть раздел, посвященный каскадным интеграторам - гребенчатым фильтрам. И все остальные вопросы ЦОС тоже описаны.
Go to the top of the page
 
+Quote Post
Alexashka
сообщение Apr 5 2011, 10:18
Сообщение #29


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

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



Промоделировал я "простейший CIC с прореживанием N". Получилось то что и ожидалось, однако с амплитудами не очень хорошо. Завал на частотах близких к fs/2 уже приличный (около 0.64), однако некоторые импульсы обрезаются сильней чем 0.64. Это понятно связано с тем что выборка не попадает в точку максимальной амплитуды. Вопрос, это впринципе невозможно вылечить, т.е выбрав такую частоту дискретов, я должен смириться с тем, что некоторые импульсы будут измерены с искажениями? 

На первом рисунке показаны результаты с испытательным сигналом в виде линейно-частотно-модулированного сигнала (f меняется от 0 до 250Гц, т.е до fs/2). Виден завал АЧХ после прореживающего CIC.

На втором рисунке -результаты обработки периодического Sinc паттерна.

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


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




Go to the top of the page
 
+Quote Post
shf_05
сообщение Apr 5 2011, 10:40
Сообщение #30


Профессионал
*****

Группа: Свой
Сообщений: 1 143
Регистрация: 22-04-08
Из: г. Екатеринбург
Пользователь №: 36 992



Цитата(Alexashka @ Apr 5 2011, 16:18) *
однако некоторые импульсы обрезаются сильней чем 0.64. Это понятно связано с тем что выборка не попадает в точку максимальной амплитуды. Вопрос, это впринципе невозможно вылечить, т.е выбрав такую частоту дискретов, я должен смириться с тем, что некоторые импульсы будут измерены с искажениями? 

завал АЧХ конечно будет, об этом Вам писали, надо применять корректирующий ких фильтр, а вот там где "выборка не попадает в точку" это не искажения, это "обман зрения".
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 1st July 2025 - 08:00
Рейтинг@Mail.ru


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