Математичний алгоритм для точності вимірювань

Магазин Gtest® пропонує широку номенклатуру осцилографів на сторінці сайту в самому кінці цього розділу, а також рекомендовані прилади та статті для самоосвіти.

Обчислення швидких перетворень Фур'є на мікроконтролері LPC55S69

У цій статті досліджується механізм перетворення - ще одна частина PowerQuad, яка дозволяє мікроконтролеру LPC55S69 обчислювати швидке перетворення Фур'є (БПФ).

Мікроконтролер LPC55S69 від NXP містить безліч функцій, які роблять його придатним для різних застосувань. Мікроконтролер LPC55S69 і його блок PowerQuad включають унікальні компоненти - Biquad і Transform Engines, які використовуються для виконання різних завдань, залишаючи основні ядра ЦП вільними для інших цілей.

У попередній статті «Розуміння цифрової фільтрації за допомогою вбудованих мікроконтролерів» було розглянуто різні методи фільтрації та обробки вибірок даних у часовій області.

Для цього використовувався механізм Biquad блоку PowerQuad LPC55S69.

У цій статті розглядається механізм перетворення PowerQuad, який дозволяє мікроконтролеру LPC55S69 виконувати швидке перетворення Фур'є (БПФ).

Розуміння дискретних перетворень Фур'є

При виконанні повсякденних вимірювань, таких як довжина або температура, існує набір інструментів для визначення параметрів об'єкта. Для сигналів у часовій області вибір вимірювального інструменту може бути не таким очевидним.

Розглянемо наступний приклад сигналу, показаний на малюнку 1.

Швидке перетворення Фур'є на мікроконтролері LPC55S69 - вхідний сигнал

Малюнок 1. Вхідний сигнал, що оцифровується з постійним інтервалом

Як цей сигнал можна виміряти, зрозуміти та описати? Можливими параметрами можуть бути амплітуда, частота або статистичні характеристики. Один із способів - порівняти досліджуваний сигнал із відомою косинусоїдальною хвилею.

Порівняння сигналу з косинусоїдальним еталоном для БПФ

Малюнок 2. Вхідний сигнал поруч із сигналом косинусного датчика

Оскільки амплітуду та частоту косинусоїдальної хвилі можна легко визначити, можна порівняти її з вхідним сигналом. Результуюче значення скалярного добутку показує рівень кореляції між сигналами.

Результатом є скаляр, величина якого пропорційна тому, наскільки добре вхідний сигнал корелює із сигналом датчика.

Однак якщо вхідний сигнал має фазовий зсув 90 градусів відносно датчика, результат може дорівнювати нулю, хоча кореляція фактично присутня.

Фазовий зсув сигналу на 90 градусів при аналізі Фур'є

Малюнок 3. Новий сигнал датчика зрушений по фазі на 90 градусів

Для усунення цієї проблеми використовується другий датчик зі зсувом фази на 90 градусів.

Два сигнали датчика для аналізу вхідного сигналу

Малюнок 4. Обидва сигнали можна використовувати для кращого визначення вхідного сигналу

У результаті отримують два значення A і B, які зазвичай представляють як комплексне число:

Вихід = B + i × A

Наступним кроком є порівняння вхідного сигналу з набором датчиків різних частот.

Набір еталонних сигналів для дискретного перетворення Фур'є

Малюнок 5. Використання декількох датчиків різних частот

Використання цього методу, який називається дискретним перетворенням Фур'є (ДПФ), дозволяє формувати спектр вихідних даних на всіх частотах, що становлять інтерес.

Математично цей метод описується рівнянням ДПФ.

Математична формула дискретного перетворення Фур'є

Малюнок 6. Математичний опис ДПФ

Де N - кількість вибірок у вхідному сигналі, а k - частота еталонних сигналів.

Обмеження швидкого перетворення Фур'є (БПФ)

  1. Довжина вхідних даних повинна бути ступенем двійки.
  2. Інтервали частот вихідного спектра визначаються частотою дискретизації та кількістю вибірок.
  3. Для дійсних вхідних даних вихідний спектр має симетричну структуру комплексно-спряжених значень.

Використання механізму БПФ PowerQuad

Математичні операції ДПФ і БПФ складаються переважно з множення та додавання, тому добре підходять для виконання спеціалізованим співпроцесором PowerQuad у мікроконтролері LPC55S69.

SDK для LPC55S69 містить приклади проєктів, що демонструють використання механізму БПФ.

Файл powerquad_transform.c містить приклади використання функції PQ_RFFTFixed16, яка демонструє обробку 16-бітних даних.

Приклад коду PowerQuad FFT для LPC55S69

Малюнок 7. Визначення тестових даних та очікуваних результатів

Останній масив містить тестові дані для перевірки результату. Друга половина масиву містить комплексно-спряжені значення.

Налаштування співпроцесора PowerQuad для БПФ

Малюнок 8. Налаштування та ініціалізація пристрою PowerQuad

Після налаштування області введення та виведення передаються до PowerQuad через функцію PQ_transformRFFT. У цьому прикладі центральний процесор очікує завершення роботи співпроцесора, хоча можливий і асинхронний режим роботи.

Використовуйте PowerQuad для математичних операцій

PowerQuad - це спеціалізований співпроцесор для складних математичних операцій, доступний у різних мікроконтролерах серії LPC5500. Він містить апаратний механізм для ефективного виконання БПФ незалежно від основних ядер процесора.

SDK для LPC55S69 містить приклади налаштування та використання PowerQuad, а спільнота NXP надає велику кількість додаткових матеріалів, статей та обговорень.

Галузеві статті дозволяють партнерам галузі ділитися корисними новинами, технологіями та практичними знаннями. Висловлені думки належать авторам матеріалу та можуть не збігатися з позицією редакції.

Магазин Gtest® - авторизований постачальник осцилографів в Україну:
купити осцилограф в Україні

Related Products
Related Articles
Що таке dB та як застосовувати цю одиницю вимірювань. Частина 1
Що таке dB та як застосовувати цю одиницю вимірювань. Частина 1

Посилання на сторінку сайту Магазину Gtest(R) з пропонованими Аналізаторами спектру, а також рекомендовані прилади та статті для подальшої самоосвіти - наприкінці цієї РозділудБ чи не дБ?Все, що ви..

04.03.2024 4629
ТОЧНІСТЬ ТА ЯКІСТЬ ПОКАЗАНЬ ЦИФРОВОГО МУЛЬТИМЕТРА. НАСКІЛЬКИ ЦЕ ВАЖЛИВЕ.
ТОЧНІСТЬ ТА ЯКІСТЬ ПОКАЗАНЬ ЦИФРОВОГО МУЛЬТИМЕТРА. НАСКІЛЬКИ ЦЕ ВАЖЛИВЕ.

Посилання на сторінку сайту Магазину Gtest(R) з номенклатурою мультиметрів, а також рекомендовані прилади та статті для подальшої самоосвіти - наприкінці цієї РозділуБазові концепціїЯк визначити точ..

23.09.2024 1361
Основні параметри для вибору осцилографа
Основні параметри для вибору осцилографа

Магазин Gtest(R) пропонує широку номенклатуру осцилографів на сторінці сайту, що наводиться в самому кінці Розділу, а також рекомендовані прилади та статті для самоосвіти1. Смуга пропускання осцило..

07.03.2025 482