|
Корректор АЧХ в широкой полосе |
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 40)
|
Oct 12 2013, 13:00
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(_Anatoliy @ Oct 12 2013, 15:59)  Вошёл в ступор на следующей задаче.Есть АЦП с тактовой Fs,на его вход подаётся сигнал (например синус) на любой частоте в полосе от 0.05*Fs до 0,95*Fs (сигнал может быть как в первой так и во второй зонах Найквиста).В выходном сигнале наблюдается небольшая неравномерность АЧХ,причём она несимметрична относительно частоты Fs/2.Существует ли какой нибудь способ откорректировать АЧХ в заданной полосе частот с помощью фильтрации выходных данных? Если бы сигнал был в полосе хотя бы 0.05*Fs до 0,45*Fs, то задача решилась бы банальным корректирующим фильтром. А тут как быть? Предполагаю, что сигнал комплексный. Тогда синтезируете фильтр с комплексными коэффициентами любым методом, позволяющим синтезировать произвольную АЧХ и вперед. Если сигнал не комплексный, то нельзя разобраться из какой он зоны найквиста (вспоминаем стробоскоп) и вопрос не имеет смысла. У фильтра с вещественными коэффициентами АЧХ всегда симметрична относительно Fs/2. Причина Вашей ассиметричности - нечто перед АЦП.
|
|
|
|
|
Oct 12 2013, 15:37
|
Профессионал
    
Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863

|
Цитата(andyp @ Oct 12 2013, 16:00)  Причина Вашей ассиметричности - нечто перед АЦП. А что такое "ассиметричность", можно узнать? И вообще, у любого реального АЦП АЧХ в разных "зонах Найквиста" различается, что в общем-то очевидно.
|
|
|
|
|
Oct 12 2013, 15:43
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(Dr.Alex @ Oct 12 2013, 19:37)  А что такое "ассиметричность", можно узнать?
И вообще, у любого реального АЦП АЧХ в разных "зонах Найквиста" различается, что в общем-то очевидно. Читаем исходный пост - "В выходном сигнале наблюдается небольшая неравномерность АЧХ,причём она несимметрична относительно частоты Fs/2". При прочих равных я бы предположил влияние входного фильтра перед АЦП.
Сообщение отредактировал andyp - Oct 12 2013, 15:48
|
|
|
|
|
Oct 12 2013, 15:52
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(Dr.Alex @ Oct 12 2013, 19:49)  И что? :-))) Это типа ответ на какой-то вопрос? На какой? А был еще вопрос, кроме вопроса в исходном посте?
|
|
|
|
|
Oct 12 2013, 15:55
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(Dr.Alex @ Oct 12 2013, 19:53)  Да, например, "что такое "ассиметричность"? :-)))) асимметричность - это то же самое что и "несимметричность" из исходного сообщения
|
|
|
|
|
Oct 12 2013, 15:57
|
Профессионал
    
Группа: Свой
Сообщений: 1 386
Регистрация: 5-04-05
Из: моська, RF
Пользователь №: 3 863

|
Цитата(andyp @ Oct 12 2013, 18:55)  асимметричность - это то же самое что и "несимметричность" из исходного сообщения Опять вы отвечаете на вопрос, который никто не задавал.. :-))) Топикстартер не спрашивал, откуда у него асимметричность, он спрашивал "как быть". А я не спрашивал, что такое "асимметричность". Я спросил, что такое "ассиметричность".
|
|
|
|
|
Oct 12 2013, 15:59
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(Dr.Alex @ Oct 12 2013, 19:57)  Опять вы отвечаете на вопрос, который никто не задавал.. :-)))
Топикстартер не спрашивал, откуда у него асимметричность, он спрашивал "как быть".
А я не спрашивал, что такое "асимметричность". Я спросил, что такое "ассиметричность". вы победили. быть никак.
|
|
|
|
|
Oct 12 2013, 16:09
|

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

|
Цитата(_Anatoliy @ Oct 12 2013, 14:59)  Если бы сигнал был в полосе хотя бы 0.05*Fs до 0,45*Fs, то задача решилась бы банальным корректирующим фильтром. А как работает банальный корректирующий фильтр? Подали сигнал 0.2Fs, получили какое-то значение, потом что-то делается, чтобы подогнать под нужное. Подали сигнал 0.8Fs, получили какое-то значение... А-а, "что-то делается" уже после АЦП, в цифровом виде? Тогда никак. Вот если бы до АЦП корректировать...
|
|
|
|
|
Oct 12 2013, 17:15
|

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

|
Цитата(ViKo @ Oct 12 2013, 19:09)  А как работает банальный корректирующий фильтр? Подали сигнал 0.2Fs, получили какое-то значение, потом что-то делается, чтобы подогнать под нужное. Подали сигнал 0.8Fs, получили какое-то значение... А-а, "что-то делается" уже после АЦП, в цифровом виде? Тогда никак. Вот если бы до АЦП корректировать... Да,корректировать лучше после АЦП,потому что нужно подкорректировать АЧХ на малые доли децибела и по заданному закону,до АЦП этого не сделать.Похоже я изначально немного не так поставил вопрос : нужно минимизировать технологический разброс АЧХ двух реальных АЦП.Измеренная величина разброса имеет максимальное значение 0,2дБ,минимальное - 0,05дБ.Но суть от этого не меняется. Цитата(ViKo @ Oct 12 2013, 19:09)  Тогда никак. Способ должен быть,ведь как-то же это делают. Цитата(Fat Robot @ Oct 12 2013, 15:52)  Если сигнал узкополосный (в частности, гармонический) и стационарный, то по косвенным признакам определять центральную частоту во всем диапазоне и в зависимости от этого корректировать амплитуду. Вариант косвенного признака: куда сдвинется спектральный максимум при изменении Fs Спасибо,вариант интересный,но у меня не выполняется второе ваше условие,и очень сильно. Но мне что-то подсказывает что он вообще не будет работать. Похоже на частоте Fs эту задачу не решить в принципе.Вот если бы интерполировать поток на частоту 2*Fs,отфильтровать,а затем продецимировать в 2 раза то задача была бы решена.Но тогда вопрос - как правильно интерполировать.Ответ - никак не удастся. Второй вариант - объединить потоки с двух АЦП в один поток,тогда проблема с образом уйдёт,но совершенно не ясно как выполнять коррекцию,ведь отсчёты нужно фильтровать только от одного АЦП,т.е. через один.
|
|
|
|
|
Oct 13 2013, 08:09
|
Местный
  
Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680

|
Я отталкивался от этих слов. Цитата(_Anatoliy @ Oct 12 2013, 21:15)  Похоже я изначально немного не так поставил вопрос : нужно минимизировать технологический разброс АЧХ двух реальных АЦП.Измеренная величина разброса имеет максимальное значение 0,2дБ,минимальное - 0,05дБ.Но суть от этого не меняется. Если надо выровнять выходы двух АЦП относительно друг друга, то мой метод подойдет. Просто полученный фильтр делим на два фильтр, для первого и второго АЦП.
Сообщение отредактировал ivan219 - Oct 13 2013, 08:16
|
|
|
|
|
Oct 13 2013, 13:06
|

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

|
Цитата(ivan219 @ Oct 13 2013, 11:09)  Если надо выровнять выходы двух АЦП относительно друг друга, то мой метод подойдет. Просто полученный фильтр делим на два фильтр, для первого и второго АЦП. Значит не смущает.Тогда раскройте,плз,Ваш метод подробней.Про ЛЧМ не нужно,допустим мы уже знаем нужную АЧХ корректирующего фильтра в полосе от 0.05*Fs до 0,95*Fs. А фильтра вполне хватит одного, достаточно АЧХ второго АЦП сделать подобным АЧХ первого АЦП,ведь основная проблема - разброс АЧХ.
|
|
|
|
|
Oct 14 2013, 05:34
|
Местный
  
Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680

|
Цитата(_Anatoliy @ Oct 13 2013, 17:06)  Тогда раскройте,плз,Ваш метод подробней. 1) Подаём ЛЧМ сигнал с ЦАП, тарируемого с одного кварца, как и АЦП на вход двух АЦП. Можно и белый шум он да же лучше будет вот только для ваших требований в 0.05 дБ накапливать и усреднять долго придётся. А с ЛЧМ придется самому еще два коэфицента после БПФ подстроить это на 0 и на Fs/2 у ЛЧМ их нет. Без них АЧХ будет уметь сильные провалы по бокам. Конечно же шум в этом палне более уневерсален. 2) Делаем БПФ двух сигналов. Для шума размерность БПФ должна быть в 2 раза больше. 3) Делим спектры этих сигналов. Своего рода корреляция двух сигналов с коэффициентом. 4) Переводим во временную область. 5) Накладываем окно. Тут уже надо подбирать. 6) Делаем БПФ размером в несколько раз больше чем порядок фильтра смотрим на АЧХ. Цитата(_Anatoliy @ Oct 13 2013, 17:06)  от 0.05*Fs до 0,95*Fs. А вот для этого нужно делать несколько фильтров. Для разных зон Найквиста. Да и вообще этот метод подойдет только для двух отдельно взятых АЦП. Универсальности не добиться. Цитата(_Anatoliy @ Oct 13 2013, 18:17)  Дык нету его,только два реальных с общим входом... Я так понимаю что вы двумя АЦП одновременно хотите видеть две зона Найквиста??? Тогда возникнет проблема.
|
|
|
|
|
Oct 14 2013, 08:07
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(_Anatoliy @ Oct 12 2013, 15:59)  .... Если бы сигнал был в полосе хотя бы 0.05*Fs до 0,45*Fs, то задача решилась бы банальным корректирующим КИХ фильтром. А тут как быть? Нужно калибровать всю систему из двух АЦП в целом. Вроде в канале каждого АЦП по FIR фильтру. Подаете какой- либо сигнал сосредоточенный в 1ой зоне Найквиста и подстраиваете фильтры так , что бы минимизировать пролезание во вторую зону и т.д.
--------------------
ну не художники мы...
|
|
|
|
|
Oct 14 2013, 09:54
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Если у Вас а) 2 ADC используются как time-interleaved для формирования одного потока б) Вы точно знаете Frequency Response (амплитуды и фазы) в каждом канале, то адаптивный фильтр не обязателен (он подстраивает коэффициенты корректора пользуясь дыркой в спектре, где присутствует только сигнал ошибки, вызванный алиасингом). В Вашей статье есть ссылка на статью тех же авторов (reference 43), где просто рассмотрено построение корректирующей цепочки.
|
|
|
|
|
Oct 14 2013, 19:49
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(_Anatoliy @ Oct 14 2013, 18:31)  Не работает эта штука.Сделал по рисунку 7. Т.е. как-то работает,если у АЦП есть разброс по К одинаковый во всей полосе,то да - алгоритм сходится и спектр на выходе становится чистым. А вот если разброс по К неодинаковый в полосе то спектр не очищается.И почему-то работает только y0 (y1,y2,y3 практически к нулю стягиваются). можно попробовать задать квадратичное рассогласование ЧХ, подставить вместо результатов адаптации известные коэффициенты и посмотреть, уйдет ли помеха. Поможет найти глюки в реализации, если они есть. При беглом просмотре статья производила впечатление настоящей :-). Лучше на многотоновом сигнале смотреть с частотами, не кратными частоте дискретизации. Сразу будет видно, ушел ли алиасинг или остался.
|
|
|
|
|
Oct 17 2013, 04:31
|
Участник

Группа: Свой
Сообщений: 74
Регистрация: 28-01-10
Из: Новосибирск
Пользователь №: 55 106

|
Насколько я понимаю, можно интерполировать данные с каждого АЦП отдельно фильтром с нужной АЧХ, а потом сложить не ошибившись с разницей во времени. Если разброс характеристик АЦП компенсирован правильно, то настоящий сигнал сложится, а "фальшивый" (Fs - F) сложится в противофазе и исчезнет. При чём независимо от того, в первой он зоне найквиста был, или во второй, всё восстановится правильно. Подозреваю, что для случая >2 АЦП это тоже должно работать.
Только надо не забыть, что компенсировать надо не только АЧХ, но и ФЧХ (вариацию aperture delay - от экземпляра к экземпляру АЦП она может различаться на 20..50..100..чёрт-знает-сколько пс). Любое расхождение даст неполную компенсацию и остатки фантомных частот на Fs-F.
Ещё может вылезти фантомная Fs/2 (для двух АЦП) из-за разницы нуля.
И самое трагичное - есть сильное подозрение, что весь этот огород ощутимо плавает с температурой, и калиброваться надо отдельно по всему диапазону рабочих. В датащитах температурных коэффициентов не пишут. Кстати, если будете проверять это утверждение, буду рад, если поделитесь любой информацией - мне эта радость скорее всего предстоит в обозримом будущем.
|
|
|
|
|
Oct 17 2013, 07:53
|
Местный
  
Группа: Участник
Сообщений: 453
Регистрация: 23-07-08
Пользователь №: 39 163

|
Цитата(Anatol' @ Oct 17 2013, 08:31)  Кстати, если будете проверять это утверждение, буду рад, если поделитесь любой информацией - мне эта радость скорее всего предстоит в обозримом будущем. попробую слепить что-то простенькое в октаве если время найдется.
|
|
|
|
|
Oct 17 2013, 09:19
|

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

|
Цитата(Anatol' @ Oct 17 2013, 07:31)  Насколько я понимаю, можно интерполировать данные с каждого АЦП отдельно фильтром с нужной АЧХ, а потом сложить не ошибившись с разницей во времени. Если разброс характеристик АЦП компенсирован правильно, то настоящий сигнал сложится, а "фальшивый" (Fs - F) сложится в противофазе и исчезнет. При чём независимо от того, в первой он зоне найквиста был, или во второй, всё восстановится правильно. Подозреваю, что для случая >2 АЦП это тоже должно работать. Вот здесь рассматривается этот случай.Да,тут комплексный фильтр нужен.
|
|
|
|
|
Oct 18 2013, 01:32
|
Участник

Группа: Свой
Сообщений: 74
Регистрация: 28-01-10
Из: Новосибирск
Пользователь №: 55 106

|
Цитата(_Anatoliy @ Oct 17 2013, 16:19)  Вот здесь рассматривается этот случай.Да,тут комплексный фильтр нужен. Комплексный не обязательно - можно два действительных для уже повышенной частоты дискретизации. Я проверял на модельных сигналах. Точнее, даже один, если эти два сложить. Про комплексные фильтры была мысль, но с ходу довести её до рабочей не удалось. Статью посмотрю, спасибо. Цитата(andyp @ Oct 17 2013, 14:53)  попробую слепить что-то простенькое в октаве если время найдется. Не, численно там всё и так понятно, хотя за порыв спасибо ) (если я правильно понял, что имеется в виду GNU Octave) Мне гораздо больше интересны вариации параметров с температурой. Хотя я и так почти уверен, что они плывут сильно.
|
|
|
|
|
Oct 18 2013, 05:24
|

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

|
Цитата(Anatol' @ Oct 18 2013, 04:32)  Комплексный не обязательно - можно два действительных для уже повышенной частоты дискретизации. Я проверял на модельных сигналах. Точнее, даже один, если эти два сложить. Про комплексные фильтры была мысль, но с ходу довести её до рабочей не удалось. Статью посмотрю, спасибо. Странно,формула 8 в документе выше описывает передаточную функцию УВХ для разных тау,фазовая характеристика у неё нелинейная.И для расчёта фильтров используются комплексные данные. Насчёт температурной стабильности цифр у меня нет,но мне приходилось работать с платой от Acquitek с подобным алгоритмом,в диапазоне температур окружающей среды +10...+50 градусов образы интерливинга я не видел.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|