|
FFT в db, БПФ |
|
|
|
Jun 19 2014, 19:50
|
Частый гость
 
Группа: Свой
Сообщений: 168
Регистрация: 29-04-06
Пользователь №: 16 608

|
Мне необходимо построить график БПФ в том виде как он обычно представляется в даташитах на АЦП, т.е. в децибелах. У меня есть исходный файл с отсчётами АЦП на который подан синусоидальный сигнал. Нахожу БПФ по 2048 точкам и далее нахожу 10*log10(БПФ) и строю график. Далее показан сигнал и 10*log10(БПФ) (первые две картинки)- явно не совсем хороший спектр. В чём может быть ошибка? Подскажите как правильно построить такой график. Ожидал увидеть нечто такое (третья картика)
Эскизы прикрепленных изображений
|
|
|
|
|
Jun 20 2014, 10:14
|
Частый гость
 
Группа: Участник
Сообщений: 121
Регистрация: 7-04-08
Из: Наро-Фоминск
Пользователь №: 36 543

|
Цитата(djhall @ Jun 19 2014, 23:50)  Ожидал увидеть нечто такое (третья картика) У вас получается спектр от бесконечной функции, которая получается путем повторения данных из АЦП. Проще говоря начало с хвостом плохо стыкуются. Поэтому поможет либо окно, либо данные из АЦП должны представлять точно целое число периодов входной частоты.
|
|
|
|
|
Jun 20 2014, 13:56
|
Знающий
   
Группа: Свой
Сообщений: 869
Регистрация: 30-01-08
Из: СПб
Пользователь №: 34 595

|
Цитата(ViKo @ Jun 20 2014, 14:34)  Никогда не получит, ни при каких окнах.  Нет, так категорично - не правильно. Приближаться будет... Получится полностью аналогичный график, если точно повторить условия. У тех же ADI условия мне попадались когда-то. Если память не изменяет, в ADI получают выборку с кратным периодом и прямоугольным окном с "правильным" позиционированием. "Правильное" позиционирование - это края окна на нулях, вроде бы, но точно не помню. При использовании прочих видов окон и последующей нормировке возникнут проблемы с положением уровня шума.
|
|
|
|
|
Jun 20 2014, 15:47
|
Частый гость
 
Группа: Свой
Сообщений: 168
Регистрация: 29-04-06
Пользователь №: 16 608

|
Спасибо большое всем. Действительно с оконной функцией получилось. Правда я ещё не совсем разобрался - вроде на сигнале в 131 072 самплов и более не получилось таким образом преобразовать. Было(слева), стало(справа)
Эскизы прикрепленных изображений
|
|
|
|
|
Jun 20 2014, 19:11
|

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

|
Цитата(Fat Robot @ Jun 20 2014, 19:37)  Желание быть в оппозиции подчас "превозмогает и рассудок". Даже если частота известна, то может быть интересна амплитуда, уровень шумов или уровень внеполосных составляющих. Не совсем так. Говорю, основываясь на собственном опыте. Точек, правда у меня 1024. Картинку, как на среднем рисунке у ТС, имел. А как на правом рисунке - нет. Перебираю 4 различных оконных функции + плоское. Если взять точек побольше, будет ближе к идеалу. А так, даже об амплитуде можно только гадать.
|
|
|
|
|
Jun 20 2014, 20:05
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Ранее Вы утверждали, что оконная функция не позволит получить спектр как на третьем рисунке вверху, а это не так. Цитата(ViKo @ Jun 20 2014, 22:38)  О том и речь. Больше точек - лучше спектр.  Меньше - хуже.  Да, но без оконной функции никак. 1) Сигнал и сигнал после применения оконной функции (окно Чебышева из Matlab - chebwin(1024,80)). 2) Спектр сигнала без использования оконной функции. 3) Спектр сигнала с использованием оконной функции. Как видите, количество точек не меняется
Эскизы прикрепленных изображений
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|