|
|
  |
Интерполяция сигнала, вопрос... |
|
|
|
Dec 1 2009, 10:05
|
Знающий
   
Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195

|
Хочу минимизировать эфект "растекания" спектра. Сигнал содержит 40 гармоник кратных основной частоте. Известен интервал изменения основной гармоники (50+ 1Гц) Частота дискретизации задана жёстко 16000Гц. По расчётам кол-во точек сигнала равно N = 8192. Затем по некоторому алгоритму получаем частоту основной гармоники (пусть частота равна fосн. = 50.55Гц). Далее, по идее, для минимизации "растекания" нужно интерполировать сигнал с учётом полученной частоты основной гармоники.
Расчётные данные показали, что нужно пересчитать на частоту fd = (327.68*fосн) = 16564,224 Гц. ________________________________________________ Вот здесь самое интересное начинается!!!
Чтобы идеализировать интерполяцию просто изначально задаю частоту 16564,224 Гц на том же интервале времени, который равен интервалу времени выборки 8192 отчётов на частоте 16000Гц (т.е. (1/16000)*8192 = 0,512 с.). Другими словами окно временное оставляю тем же, что и для 16000Гц.
Конечно же в спектре сигнала наблюдается сильное искажение...
Вот такой вопрос:
Я сделал вывод что при интерполяции каким-то образом меняется величина временного окна... иначе никак(( КАК ЭТО ДЕЛАЕТСЯ????
Встал на этом вопросе прирасчётах, очень нужна помощь...
Заранее спасибо всем ответившим!
|
|
|
|
|
Dec 1 2009, 11:33
|
Знающий
   
Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730

|
Цитата Хочу минимизировать эфект "растекания" спектра Такого эффекта на сегодняшний день наука не знает... Цитата Известен интервал изменения основной гармоники (50+ 1Гц) Частота дискретизации задана жёстко 16000Гц. По расчётам кол-во точек сигнала равно N = 8192. Затем по некоторому алгоритму получаем частоту основной гармоники (пусть частота равна fосн. = 50.55Гц). Далее, по идее, для минимизации "растекания" нужно интерполировать сигнал с учётом полученной частоты основной гармоники.
Расчётные данные показали, что нужно пересчитать на частоту fd = (327.68*fосн) = 16564,224 Гц. угу. Вы хотите сделать передискретизацию так, чтоб гармоника была кратна бину дпф. Цитата Чтобы идеализировать интерполяцию просто изначально задаю частоту 16564,224 Гц на том же интервале времени, который равен интервалу времени выборки 8192 отчётов на частоте 16000Гц (т.е. (1/16000)*8192 = 0,512 с.). Другими словами окно временное оставляю тем же, что и для 16000Гц.
Конечно же в спектре сигнала наблюдается сильное искажение...
Вот такой вопрос:
Я сделал вывод что при интерполяции каким-то образом меняется величина временного окна... иначе никак(( Гы. Вы повышаете частоту дискретизации. На интервале 0.512 c получится больше отсчетов. В Вашем случае их станет 8480,882688. Никакой метафизики тут нету... Цитата КАК ЭТО ДЕЛАЕТСЯ???? Что именно? Как вычислить дпф на 8к точек по 8480,882688-и точкам? Дык вариантов много. Можно вычислить несколько дпф на 8к точек со смещением по выборке из 8480, а потом их усреднить. Есть еще более сложные способы. Искажения спектра скорее всего связаны с горбатой интерполяцией.
|
|
|
|
|
Dec 1 2009, 12:04
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(TigerSHARC @ Dec 1 2009, 13:05)  ... КАК ЭТО ДЕЛАЕТСЯ???? А зачем так сложно, что требуется получить (измерить). Может быть просто взять окно какое-нибудь, наложить на выборку посчитать FFT и ничего не интерполировать?
--------------------
ну не художники мы...
|
|
|
|
|
Dec 1 2009, 13:52
|
Знающий
   
Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195

|
Цитата(thermit @ Dec 1 2009, 14:33)  Такого эффекта на сегодняшний день наука не знает... ... ну и как это звучит по научному? Цитата(thermit @ Dec 1 2009, 14:33)  угу. Вы хотите сделать передискретизацию так, чтоб гармоника была кратна бину дпф. да Цитата(thermit @ Dec 1 2009, 14:33)  Гы. Вы повышаете частоту дискретизации. На интервале 0.512 c получится больше отсчетов. В Вашем случае их станет 8480,882688. Никакой метафизики тут нету... совершенно верно Цитата(thermit @ Dec 1 2009, 14:33)  Что именно? Как вычислить дпф на 8к точек по 8480,882688-и точкам? Дык вариантов много. Можно вычислить несколько дпф на 8к точек со смещением по выборке из 8480, а потом их усреднить. Есть еще более сложные способы. Искажения спектра скорее всего связаны с горбатой интерполяцией. так я же пишу, что здесь не интерполяция, пока, а просто частоту дискретизации сменил на том же интервале... Вопрос в том что при интерполяции мы имеем дело с с некоторым количеством отчётов на некотором жестко заданом интервале (в частности 0.512с). А я думаю что при интерполяции длина окна должна меняться. вобщем нужно менять длинну окна... как-то... что бы не быть голословным приведу вырезку из диссертации... на этой странице говорится об особенностях применения ДПФ для анализа 40 гармоник промышленной частоты (50Гц)...
Эскизы прикрепленных изображений
|
|
|
|
|
Dec 1 2009, 14:12
|
Знающий
   
Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195

|
Цитата(mdmitry @ Dec 1 2009, 16:54)  Знает, в книге А.Б. Сергиенко "Цифровая обработка сигналов" посмотрите.
По теме: может, использовать общепринятые окна или метод MUSIC? всем кто смотрит тему: "пожалуйста посмотрите файл с вырезкой из диссертации в моём посте выше" Стандартное окно (Хемминга и др...) не применимо из-за погрешности порядка процентов. Здесь строится прецизионная система. Нужно использовать именно интерполяцию (предположительно фильтром Фарроу 3-го порядка)
|
|
|
|
|
Dec 1 2009, 14:30
|
Знающий
   
Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730

|
Цитата mdmitry: Знает, в книге А.Б. Сергиенко "Цифровая обработка сигналов" посмотрите. Не читайте сергиенку. Книшки надо правильные читать, чтоб спектр не растекался. ps Прошу прощения за оффтоп...
|
|
|
|
|
Dec 1 2009, 14:44
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(TigerSHARC @ Dec 1 2009, 17:12)  всем кто смотрит тему: "пожалуйста посмотрите файл с вырезкой из диссертации в моём посте выше"
Стандартное окно (Хемминга и др...) не применимо из-за погрешности порядка процентов. Здесь строится прецизионная система.
Нужно использовать именно интерполяцию (предположительно фильтром Фарроу 3-го порядка) Где окно погрешности вносит ? В измерении амплитуды гармоник? Насчет интерполятора, Вы смотрели какая будет АЧХ у полиномиального интерполятора 3го порядка? Наверное теже несколько процентов получится завал АЧХ на верхних частотах...
--------------------
ну не художники мы...
|
|
|
|
|
Dec 1 2009, 15:13
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(TigerSHARC @ Dec 1 2009, 17:51)  Вопрос в том, как построить адаптивную систему, чтобы менять длину временного окна (почитайте отрывок из диссертации выше)) Я вот думаю что с помощью интерполяции... Для прецизионности системы нужна интерполяция синком А что спектр надо оценивать не только для гармоник основной частоты, но и между ними? Если нет - то зачем БПФ? Достаточно ДПФ и быстрее. Существует для любого окна N Как говорил petrov - банк фильтров на кратных частотах.
|
|
|
|
|
Dec 1 2009, 15:25
|
Знающий
   
Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195

|
Цитата(fontp @ Dec 1 2009, 18:13)  Для прецизионности системы нужна интерполяция синком
А что спектр надо оценивать не только для гармоник основной частоты, но и между ними? Если нет - то зачем БПФ? Достаточно ДПФ и быстрее. Существует для любого окна N Как говорил petrov - банк фильтров на кратных частотах. Интерполяция меняет размер окна??? Разве на 40 гармоник ДПФ будет быстрее??
|
|
|
|
|
Dec 1 2009, 15:29
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(TigerSHARC @ Dec 1 2009, 18:25)  Разве на 40 гармоник ДПФ будет быстрее?? 40 гармоник ДПФ - это примерно 80 * N действительных операций (40 для синуса, 40 для косинуса MAC) FFT - это 2*N*logN = 26*N комплексных операций. Вы же вычисляете не 40, а 4096 гармоник, из которых Вас интересует, возможно, только каждая 10-я. Зависит от постановки задачи. Конечно, если Вам нужен красивый спектроанализатор тогда другое дело... Если не быстрее, то примерно одинаково Цитата(TigerSHARC @ Dec 1 2009, 18:25)  Интерполяция меняет размер окна??? Какая интерполяция?  Если Вы пересчитаете свои 8192 отсчета на другую дискретную сетку, то понятно, что размер окна в отсчетах изменится. А в физических единицах - нет. Ширина полосы фильтра, который можно получить по этим точкам в герцах не изменится
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|