Jump to content

    
Sign in to follow this  
Lmx2315

как получить комплексный сигнал ?

Recommended Posts

Запутался :(

 

Такой вопрос - есть АЦП с него поступают отчёты сигнала как их перевести в комплексное представление ?

 

Как я сам мыслил - перемножить входной сигнал с sin и cos и отфильтровать ФНЧ ....но спектр входного сигнала занимает почти всё место до частоты найквиста и начинается уже с нулевой частоты . Отфильтровать не получится не убив кучу нужного .

 

Как же тогда всё делается ?

 

 

Хотелось с входным сигналом провести БПФ комплексное .

Share this post


Link to post
Share on other sites

Сигнал АЦП - чисто реальный, поэтому ему в пару надо приложить нулевую мнимую часть - массив той же длины, инициализированный нулями.

Share this post


Link to post
Share on other sites
Сигнал АЦП - чисто реальный, поэтому ему в пару надо приложить нулевую мнимую часть - массив той же длины, инициализированный нулями.

 

 

я не потеряю в таком случае информацию? ... хотелось бы получить как значения всех амплитуд для гармоник так и их фазы .

Share this post


Link to post
Share on other sites
я не потеряю в таком случае информацию? ... хотелось бы получить как значения всех амплитуд для гармоник так и их фазы .

:biggrin: А откуда она(информация) возьмется?... Ответ кратко - нет, не потеряете...

Share this post


Link to post
Share on other sites

таки не ясно чем реальный сигнал покоя не дает? Если функция БПФ поддерживает только комплексный входной сигнал то нулями забить мнимую часть и вперед. Но если хотите это безобразие по частоте подвигать то надо умножать на синусы с косинусами предварительно сделать интерполяцию в 2 раза чтобы было куда двигать и что фильтровать.

Edited by bahurin

Share this post


Link to post
Share on other sites

Lmx2315

Компликсный сигнал с АЦП ты не как не получишь. А вот полсе БПФ ты получишь комплексные составляющие сигнала спектр частот (гармоник) и вот после БПФ можно узнать и фазу и частоту и амплитуду.

 

Если сдвинуть весь сигнал по фазе на 90 градусов то ты получишь квадратурный сигнал. Может ты это имел в виду тогда тебе нужно преобразование Гильберта и у тебя на выходе будет два сигнала I, Q т.е. синфазный и квадратурный.

Share this post


Link to post
Share on other sites
Lmx2315

Компликсный сигнал с АЦП ты не как не получишь. А вот полсе БПФ ты получишь комплексные составляющие сигнала спектр частот (гармоник) и вот после БПФ можно узнать и фазу и частоту и амплитуду.

 

Если сдвинуть весь сигнал по фазе на 90 градусов то ты получишь квадратурный сигнал. Может ты это имел в виду тогда тебе нужно преобразование Гильберта и у тебя на выходе будет два сигнала I, Q т.е. синфазный и квадратурный.

Да нет... Никакое преобразование Гильберта тут не нужно... Нужно так линейно разделить входные отсчеты что-бы можно было воспользоваться вторым "простаивающим" компонентом входного комплексного числа да еще и смочь потом разделить их составляющие на выходе ;) ...

 

А нужно применить обычное RealFFT... И делается оно примерно так :biggrin: :

 

... то надо умножать на синусы с косинусами предварительно сделать интерполяцию в 2 раза чтобы было куда двигать и что фильтровать...

 

Это если охота сэкономить ресурсы. А можно действительно влоб забить нулями - математически это правильно.

 

Странно, была же тема уже(наш кореш из солнечной Ялты поднимал :) ) о RealFFT. Не так уж трудно ее(тему) найти...

Share this post


Link to post
Share on other sites

DRUID3 если в читаетесь то увидите что я предположил что нужен квадратурный сигнал.

 

RealFFT а нафига??? если автору нжно комплексное БПФ может ему фаза сигнала нужна!!!

 

А если нужно подвигать сигнал то вот квадратурный гетеродин http://dspsystem.narod.ru/content/quadosc/quadosc.html

Edited by ivan219

Share this post


Link to post
Share on other sites
RealFFT а нафига??? если автору нжно комплексное БПФ может ему фаза сигнала нужна!!!

:biggrin: Вы убили меня наповал, друг мой... RealFFT это устоявшееся название быстрого преобразования Фурье с вещественным рядом входных чисел. Само преобразование же Фурье это корреляция того или иного временного ряда(комплексного идли нет, а хоть и из 3-х составляющих которые можно назвать i,j и k, а хоть и из N и т.д.) с базисом(набором связанным правилом) функций комплексной экспоненты(хитрозадым представлением циклического кругового движения). Так вот - множа действительное число на комплексное где мнимая составляющая не нулевая - мы получим тоже комплексное число. Т.е. спектр по-любому комплексный - потому как комплексная экспонетна у нас в виде 2-х тригонометрических функций... Никакая фаза при этом не теряется. Фаза - грубо говоря - это привязка того или иного значения к оси времени. Школьный курс геометрии... И тоже уже была тема на форуме - раза 2-а минимум. И меня по этому поводу поправляли тоже :tongue:

 

А если нужно подвигать сигнал то вот квадратурный гетеродин http://dspsystem.narod.ru/content/quadosc/quadosc.html

дело не в квадратурности... Делов то превратить вещественное число в комплексное. Взять и домножить к примеру на 1+j*1... а дело в том что ряд в 1024 отсчета "впихивают" в FFT на 512 точек... Мало того - потом успешно "выпихивают" что много сложнее...

 

>>>>Друзья, кому охота может вволю надрочиться с FFT :biggrin: . С педагогической точки зрения - ресурс просто уматовый. Жаль в моем время изучения этого вопроса его то ли еще не было, то ли я о нем не знал :( ...

Share this post


Link to post
Share on other sites
Вы убили меня наповал, друг мой... RealFFT это устоявшееся название быстрого преобразования Фуртье с вещественным рядом чисел. Я знаю ну он то про комплексное спросил.

Share this post


Link to post
Share on other sites
Вы убили меня наповал, друг мой... RealFFT это устоявшееся название быстрого преобразования Фуртье с вещественным рядом чисел. Я знаю ну он то про комплексное спросил.

 

 

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

 

з.ы.

 

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

 

Вот и предположил - дело то распространнёное , ацп - БПФ ...спросил как надо делать.

 

>>>>Друзья, кому охота может вволю надрочиться с FFT :biggrin: . С педагогической точки зрения - ресурс просто уматовый. Жаль в моем время изучения этого вопроса его то ли еще не было, то ли я о нем не знал :( ...

 

 

вот спасибо :) , действительно наглядно добавлю к этому http://www.fourier-series.com/

Share this post


Link to post
Share on other sites

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

 

Если бы вы имели входной сигнал от двухкоординатного сейсмодатчика или акселерометра, он конечно был бы комплесным. А ваш сигнал одноканальный, т.е. действительный (частный случай комплексного при мнимой части, равной нулю). После преобразования Фурье вы можете оценить и АЧХ и ФЧХ, причем фаза рассчитывается относительно формируемой в процессе преобразования сетки частот - от 0 Гц до половины частоты дискретизации. В начальный момент времени фазы всех опорных частот, естественно, равны 0. Все это для алгоритма Кули-Тьюки. Этому хорошо учили по книжкам Гоулда и Рабинера в прошлом. Сейчас должны быть свежие авторитеты.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this