Перейти к содержанию
    

Измерение частоты основной гармоники (50 Гц) с точностью 0.01 Гц

Форма спектра будет совпадать с видом окна. Для хорошей точности нужна аппроксимация соответствующей функцией. Так что квадратичная в этом случае не подойдет. Здесь нужен косинус. Можно попробовать полином (первых три члена от разложения в ряд), но нужно меделировать и смотреть какая точность получится. И я не помню наизусть каких степеней там ряд.

С децимацией фильтр, безусловно лучше. Но еще нужно посмотреть, даст ли он выигрыш в счете по сравнению с Фурье на весь массив сразу. Последний вариант должен быть лучше по точности и усреденения и фильтров.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Форма спектра будет совпадать с видом окна. Для хорошей точности нужна аппроксимация соответствующей функцией. Так что квадратичная в этом случае не подойдет. Здесь нужен косинус. Можно попробовать полином (первых три члена от разложения в ряд), но нужно моделировать и смотреть какая точность получится. И я не помню наизусть каких степеней там ряд.

С децимацией фильтр, безусловно лучше. Но еще нужно посмотреть, даст ли он выигрыш в счете по сравнению с Фурье на весь массив сразу. Последний вариант должен быть лучше по точности и усреднения и фильтров.

Спасибо! понял, поиграюсь. Благо, реальные данные уже есть в матлабе, есть материал для экспериментов.

 

Про FFT без децимации сразу на весь массив- сам бы так хотел. Но это у меня просто еще одна дополнительная опция в приборе, желательно бы обойтись без сотрясения основ уже сделанного. А CMSIS-овская уже используемая библиотека только FFT4096 умеет, вот и приходиться децимировать.

Мне бы вообще-то очень бы подошло что-то типа FFT длиной 16К или даже 32К точек float32, но это уже свой код применять вместо встроенных библиотек, про это тоже думал. Снижение быстродействия даже в 5 раз еще приемлемо, по сравнению с CMSIS. Тоже интересно подумать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попробуйте, я не смотрел, как это будет оптимизироваться на АРМ'е, но на DSP ложится прилично.

FFT32k.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Попробуйте, я не смотрел, как это будет оптимизироваться на АРМ'е, но на DSP ложится прилично.

FFT32k.zip

Вы будете таки смеяться, но именно этот код я использую уже лет 5, про него и говорил. :)

Работает с небольшими вариациями в разных системах, начиная от мелкого 8-битного Майкрочипа, где данные храню во внешней микросхеме сериальной RAM. Но именно в АРМе я его тоже не пробовал.

Причем, действительно, работает всегда и везде. Нашел в Интернете.

Ну раз и Вы его тоже рекомендуете, значит он действительно неплох, не буду искать что-то еще.

Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интерполяцию окном Hanna смотри http://calculator2006.narod.ru/articles/haan.htm

Изменено пользователем ivan219

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интерполяцию окном Hanna смотри http://calculator2006.narod.ru/articles/haan.htm

отлично, спасибо!!!!

Скопировал себе на диск и пдф-ку сделал, а то в интернете бывает так- сегодня есть, а завтра -"404" :)

 

То есть расчет идет по трем точкам.

И странно там в тексте как-то окно задано, формула 1-cos(2pi*n/N) правильная? Она же двойку дает в максимуме, даже с рисунком в том же тексте не совпадает.

Думаю, просто опечатка, должно быть все-таки 0.5*(1-cos(2pi*n/N)), собственно так окно в первоисточнике и задается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Будет спектр чуть выше.

И да скорей всего опечатка я у же и не помню почему так вышло.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Боюсь, что для Вашей жуткой точности не хватит интнрполяции по трем точкам. Лучше бы 5-7 точек или даже больше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...