|
как получить комплексный сигнал ? |
|
|
|
Jan 9 2010, 11:23
|

отэц
    
Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684

|
Запутался Такой вопрос - есть АЦП с него поступают отчёты сигнала как их перевести в комплексное представление ? Как я сам мыслил - перемножить входной сигнал с sin и cos и отфильтровать ФНЧ ....но спектр входного сигнала занимает почти всё место до частоты найквиста и начинается уже с нулевой частоты . Отфильтровать не получится не убив кучу нужного . Как же тогда всё делается ? Хотелось с входным сигналом провести БПФ комплексное .
--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0 SHA-256
|
|
|
|
|
Jan 9 2010, 18:56
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(ivan219 @ Jan 9 2010, 20:50)  Lmx2315 Компликсный сигнал с АЦП ты не как не получишь. А вот полсе БПФ ты получишь комплексные составляющие сигнала спектр частот (гармоник) и вот после БПФ можно узнать и фазу и частоту и амплитуду.
Если сдвинуть весь сигнал по фазе на 90 градусов то ты получишь квадратурный сигнал. Может ты это имел в виду тогда тебе нужно преобразование Гильберта и у тебя на выходе будет два сигнала I, Q т.е. синфазный и квадратурный. Да нет... Никакое преобразование Гильберта тут не нужно... Нужно так линейно разделить входные отсчеты что-бы можно было воспользоваться вторым "простаивающим" компонентом входного комплексного числа да еще и смочь потом разделить их составляющие на выходе ...А нужно применить обычное RealFFT... И делается оно примерно так  : Цитата(bahurin @ Jan 9 2010, 20:27)  ... то надо умножать на синусы с косинусами предварительно сделать интерполяцию в 2 раза чтобы было куда двигать и что фильтровать... Это если охота сэкономить ресурсы. А можно действительно влоб забить нулями - математически это правильно. Странно, была же тема уже(наш кореш из солнечной Ялты поднимал  ) о RealFFT. Не так уж трудно ее(тему) найти...
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
Jan 9 2010, 19:05
|
Местный
  
Группа: Участник
Сообщений: 350
Регистрация: 16-11-08
Пользователь №: 41 680

|
DRUID3 если в читаетесь то увидите что я предположил что нужен квадратурный сигнал. RealFFT а нафига??? если автору нжно комплексное БПФ может ему фаза сигнала нужна!!! А если нужно подвигать сигнал то вот квадратурный гетеродин http://dspsystem.narod.ru/content/quadosc/quadosc.html
Сообщение отредактировал ivan219 - Jan 9 2010, 19:12
|
|
|
|
|
Jan 9 2010, 19:17
|

山伏
    
Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294

|
Цитата(ivan219 @ Jan 9 2010, 21:05)  RealFFT а нафига??? если автору нжно комплексное БПФ может ему фаза сигнала нужна!!!  Вы убили меня наповал, друг мой... RealFFT это устоявшееся название быстрого преобразования Фурье с вещественным рядом входных чисел. Само преобразование же Фурье это корреляция того или иного временного ряда(комплексного идли нет, а хоть и из 3-х составляющих которые можно назвать i,j и k, а хоть и из N и т.д.) с базисом( набором связанным правилом) функций комплексной экспоненты(хитрозадым представлением циклического кругового движения). Так вот - множа действительное число на комплексное где мнимая составляющая не нулевая - мы получим тоже комплексное число. Т.е. спектр по-любому комплексный - потому как комплексная экспонетна у нас в виде 2-х тригонометрических функций... Никакая фаза при этом не теряется. Фаза - грубо говоря - это привязка того или иного значения к оси времени. Школьный курс геометрии... И тоже уже была тема на форуме - раза 2-а минимум. И меня по этому поводу поправляли тоже  Цитата(ivan219 @ Jan 9 2010, 21:05)  А если нужно подвигать сигнал то вот квадратурный гетеродин http://dspsystem.narod.ru/content/quadosc/quadosc.htmlдело не в квадратурности... Делов то превратить вещественное число в комплексное. Взять и домножить к примеру на 1+j*1... а дело в том что ряд в 1024 отсчета "впихивают" в FFT на 512 точек... Мало того - потом успешно "выпихивают" что много сложнее... >>>>Друзья, кому охота может вволю надрочиться с FFT  . С педагогической точки зрения - ресурс просто уматовый. Жаль в моем время изучения этого вопроса его то ли еще не было, то ли я о нем не знал  ...
--------------------
Нас помнят пока мы мешаем другим... //-------------------------------------------------------- Хороший блатной - мертвый... //-------------------------------------------------------- Нет старик, это те дроиды которых я ищу...
|
|
|
|
|
Jan 9 2010, 20:39
|

отэц
    
Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684

|
Цитата(ivan219 @ Jan 9 2010, 22:33)  Вы убили меня наповал, друг мой... RealFFT это устоявшееся название быстрого преобразования Фуртье с вещественным рядом чисел. Я знаю ну он то про комплексное спросил. спасибо комрады за дисскуссию буду много думать - конечно мне и амплитуда и фаза гармоник нужна потому комплексное БПФ и упомянул , вообще много интерессного написали . з.ы. поиском я в гугле попользовался по нашему форуму да видно не так вопросы ставил , всё не то. Вот и предположил - дело то распространнёное , ацп - БПФ ...спросил как надо делать. Цитата(DRUID3 @ Jan 9 2010, 22:17)  >>>>Друзья, кому охота может вволю надрочиться с FFT  . С педагогической точки зрения - ресурс просто уматовый. Жаль в моем время изучения этого вопроса его то ли еще не было, то ли я о нем не знал  ... вот спасибо  , действительно наглядно добавлю к этому http://www.fourier-series.com/
--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0 SHA-256
|
|
|
|
|
Jan 10 2010, 20:41
|

Участник

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

|
Цитата(Lmx2315 @ Jan 9 2010, 14:23)  Запутался Такой вопрос - есть АЦП с него поступают отчёты сигнала как их перевести в комплексное представление ? Как я сам мыслил - перемножить входной сигнал с sin и cos и отфильтровать ФНЧ ....но спектр входного сигнала занимает почти всё место до частоты найквиста и начинается уже с нулевой частоты . Отфильтровать не получится не убив кучу нужного . Как же тогда всё делается ? Хотелось с входным сигналом провести БПФ комплексное . Ну так, а что Вас смутило. Так и действуйте. А вообще, давайте разберемся чего Вы там потеряете. См. рисунок
(набрасал немного  , крестик условно обозначает интересующую часть спектра) Вещественный сигнал умножаете на две последовательности (0,1,0,-1 -- это sin((pi/2)*i)) и (1,0,-1,0 -- это cos((pi/2)*i)), а точнее, как видите, умножать совсем и не надо, знак только меняем. Таким образом двигаем спектр на Fs/4 и получаем два сигнала в квадратуре. Теперь надо отфильтровать повторы спектра в этих сигналах полуполосными фильтрами. Как мы помним полуполосные фильтры обладают рядом интересных свойств, например: каждый второй коэф. =0, а если длина нечет.,то часто средний коэф =0.5, ну и еще конечно симметрия. Вот Вам и комплексный сигнал. Так и что же мы теряем? Вроде ничего, разве что при децимации на 2 заворотов "хапнем". А это уже фильтром рулим- возьмем подлиней, чтобы АЧХ покруче (зависит от задачи). ЗЫ: Конечно, дабы избежать серьезных требований к фильтрам надо бы чуть увеличить частоту дискретизации АЦП.
|
|
|
|
|
Jan 22 2010, 20:55
|
Частый гость
 
Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543

|
Цитата(АНТОН КОЗЛОВ @ Jan 10 2010, 16:49)  Если бы вы имели входной сигнал от двухкоординатного сейсмодатчика или акселерометра, он конечно был бы комплесным. Это в смысле, что два датчика образуют комплекс датчиков?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|