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

 
 
 
Reply to this topicStart new topic
> Как убрать постоянную составляющую?
maxics
сообщение Apr 20 2012, 08:24
Сообщение #1


Местный
***

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



C АЦП приходит сигнал со сдвигов в уровне. Слышал, что убрать постоянную составляющую можно с помощью ФВЧ. Подскажите как лучше его сделать? Какую частоту давить? Оцифровка - 100 МГц
Go to the top of the page
 
+Quote Post
des00
сообщение Apr 20 2012, 08:40
Сообщение #2


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(maxics @ Apr 20 2012, 02:24) *
C АЦП приходит сигнал со сдвигов в уровне. Слышал, что убрать постоянную составляющую можно с помощью ФВЧ. Подскажите как лучше его сделать? Какую частоту давить? Оцифровка - 100 МГц

смотря что за сигнал и какие его частотные свойства %)

самый простой вариант продифференцировать например или определить постоянку рекурсивным фильтром и вычесть или сделать эквалайзер постоянки ну и т.д.


--------------------
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 20 2012, 08:57
Сообщение #3


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

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



Как лучше сделать, не скажу. Скажу, как проще.
От каждой выборки отнимите половину предыдущей, и половину следующей.
Go to the top of the page
 
+Quote Post
Копейкин
сообщение Apr 20 2012, 09:10
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 190
Регистрация: 7-11-07
Из: С-Петербург
Пользователь №: 32 134



Придется делать фильтр.
Вы должны задать полосу частот сигнала.
Сверху, согласно т.Котельникова, будет не более 50МГц, при 100МГц сэмплировании.
Снизу - согласно Вашему заданию.
Моделируете фильтр ФВЧ или полосовой в Mathcad/Mathlab и получаете количество коэффициентов (порядок фильтра) и их значения.
Затем, пользуете стандартный алгоритм фильтра, применив свои коэффициенты.
Примерно так...

Сообщение отредактировал Копейкин - Apr 20 2012, 09:11
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Apr 20 2012, 09:55
Сообщение #5


МедвеД Инженер I
****

Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951



http://www.xilinx.com/support/documentatio...apers/wp279.pdf
http://www.eetimes.com/design/embedded/400...icks-DC-Removal


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
maxics
сообщение Apr 20 2012, 13:54
Сообщение #6


Местный
***

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



Сделал ФВЧ. Уровень входного сигнала ушел в 0, а вот после DDC все равно есть смещение, что дает в нуле палку. Как быть?
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Apr 20 2012, 14:46
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(maxics @ Apr 20 2012, 17:54) *
Сделал ФВЧ. Уровень входного сигнала ушел в 0, а вот после DDC все равно есть смещение, что дает в нуле палку. Как быть?

Юзайте округление вместо усечения и у вас всё получится.
Go to the top of the page
 
+Quote Post
maxics
сообщение Apr 23 2012, 13:21
Сообщение #8


Местный
***

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



Цитата(VladimirB @ Apr 20 2012, 18:46) *
Юзайте округление вместо усечения и у вас всё получится.


Округлил, палка упала на 10 Дб, сейчас 30 Дб. Что еще можно сделать?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 23 2012, 14:13
Сообщение #9


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(maxics @ Apr 23 2012, 14:21) *
Округлил, палка упала на 10 Дб, сейчас 30 Дб. Что еще можно сделать?

Вам же посоветовали нормальные решения.
Ссылка
Go to the top of the page
 
+Quote Post
maxics
сообщение Apr 23 2012, 14:45
Сообщение #10


Местный
***

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



Цитата(_Anatoliy @ Apr 23 2012, 18:13) *
Вам же посоветовали нормальные решения.
Ссылка


Какое именно? После АЦП поставил ФВЧ. Уровень упал в 0 (на выходе АЦП). После DDC уровень все равно смещен. Сделал округление. Помогло, но не сильно.
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 23 2012, 15:02
Сообщение #11


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(maxics @ Apr 23 2012, 16:45) *
Какое именно? После АЦП поставил ФВЧ. Уровень упал в 0 (на выходе АЦП). После DDC уровень все равно смещен. Сделал округление. Помогло, но не сильно.

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

Цитата(VladimirB @ Apr 20 2012, 15:46) *
Юзайте округление вместо усечения и у вас всё получится.

Я вот сейчас работаю с АЦП у которого сдвиг кода доходит до 20 м.з.р.
И как же вам поможет округление в этом случае? smile3009.gif
Go to the top of the page
 
+Quote Post
maxics
сообщение Apr 23 2012, 16:59
Сообщение #12


Местный
***

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



Цитата(_Anatoliy @ Apr 23 2012, 19:02) *
Поставьте интегратор с большой постоянной времени,на его выходе будет ваша постоянка,её вычтите из входного сигнала.


Правильно-ли я понимаю? Это должен быть Ких - фильтр с большим числом единичных коэфф. и низкой частотой сэмплирования?
Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 23 2012, 17:23
Сообщение #13


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(maxics @ Apr 23 2012, 17:59) *
Правильно-ли я понимаю? Это должен быть Ких - фильтр с большим числом единичных коэфф. и низкой частотой сэмплирования?

Просто сумматор типа с(i) = с(i-1) + х.
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Apr 23 2012, 18:45
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(_Anatoliy @ Apr 23 2012, 19:02) *
Поставьте интегратор с большой постоянной времени,на его выходе будет ваша постоянка,её вычтите из входного сигнала.
Я вот сейчас работаю с АЦП у которого сдвиг кода доходит до 20 м.з.р.
И как же вам поможет округление в этом случае? smile3009.gif

У человека DDC, поэтому постоянка с АЦП после умножения и фильтрации ФНЧ уйдёт автоматически без всяких интеграторов
(если только частота гетеродина не нулевая).

А вот отбрасывание любого количества младших разрядов в любом месте DDC (кроме входа) приведёт к постоянке на выходе.
По-уму округление надо ставить везде, где отбрасываются разряды - мне помогло палка ушла с -80 до -120дБ.

Но -30дБ палка это явный косяк в коде, поэтому без выкладывания исходников похоже тут не обойтись.


Go to the top of the page
 
+Quote Post
_Anatoliy
сообщение Apr 24 2012, 03:42
Сообщение #15


Утомлённый солнцем
******

Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832



Цитата(VladimirB @ Apr 23 2012, 20:45) *

Про DDC я не заметил,думал что постоянка с АЦП лезет. Сначала, действительно, нужно убедиться что нет ошибок в реализации DDC.
Go to the top of the page
 
+Quote Post

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

 


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


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