Математический алгоритм для точности измерений

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

Вычисление быстрых преобразований Фурье на микроконтроллере LPC55S69

В этой статье исследуется механизм преобразования PowerQuad, который позволяет микроконтроллеру LPC55S69 вычислять быстрое преобразование Фурье (БПФ).

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

В предыдущей статье «Понимание цифровой фильтрации с помощью встроенных микроконтроллеров» были рассмотрены различные методы фильтрации и обработки выборок данных во временной области.

Для этого использовался механизм Biquad блока PowerQuad LPC55S69.

В данной статье рассматривается механизм преобразования PowerQuad, позволяющий выполнять быстрое преобразование Фурье.

Понимание дискретных преобразований Фурье

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

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

Быстрое преобразование Фурье на микроконтроллере LPC55S69 - входной сигнал

Рисунок 1. Входной сигнал, оцифровываемый с постоянным интервалом

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

Сравнение входного сигнала с косинусоидальным эталоном

Рисунок 2. Входной сигнал рядом с сигналом косинусного датчика

Поскольку амплитуду и частоту косинусоидальной волны можно легко определить, её можно использовать как эталон для сравнения. Результирующее значение скалярного произведения показывает степень корреляции между сигналами.

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

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

Фазовый сдвиг сигнала на 90 градусов

Рисунок 3. Новый сигнал датчика сдвинут по фазе на 90 градусов

Для устранения этой проблемы используется второй датчик, сдвинутый по фазе на 90 градусов.

Использование двух датчиков для анализа сигнала

Рисунок 4. Оба сигнала датчика используются для более точного анализа входного сигнала

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

Выход = B + i * A

Следующим шагом является сравнение входного сигнала с набором датчиков различных частот.

Набор эталонных сигналов для дискретного преобразования Фурье

Рисунок 5. Использование нескольких датчиков разных частот

Использование данного метода, называемого дискретным преобразованием Фурье (ДПФ), позволяет формировать спектр выходных данных на всех интересующих частотах.

Математически данный метод можно представить следующим образом:

Формула дискретного преобразования Фурье

Уравнение 1. Математическое описание ДПФ

Где N - количество выборок входного сигнала, а k - частота эталонных косинусоидальных сигналов.

Ограничения быстрого преобразования Фурье (БПФ)

БПФ является вычислительно эффективным способом расчёта ДПФ, однако имеет ряд ограничений:

  1. Длина входных данных должна быть степенью двойки.
  2. Частотные интервалы выходного спектра зависят от частоты дискретизации и количества выборок.
  3. Для действительных входных данных выходной спектр обладает симметрией комплексно-сопряжённых значений.

Использование механизма БПФ PowerQuad

Математические операции ДПФ и БПФ состоят преимущественно из операций умножения и сложения, поэтому идеально подходят для выполнения специализированным сопроцессором PowerQuad в микроконтроллере LPC55S69.

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

Файл powerquad_transform.c содержит примеры работы функции PQ_RFFTFixed16, предназначенной для обработки 16-битных данных.

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

Рисунок 6. Определение тестовых данных и ожидаемых результатов

Последний массив содержит тестовые данные для проверки результата. Вторая половина массива содержит комплексно-сопряжённые значения.

Настройка сопроцессора PowerQuad для вычисления БПФ

Рисунок 7. Настройка и инициализация устройства PowerQuad

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

Используйте PowerQuad для математических операций

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

SDK для LPC55S69 содержит примеры настройки и использования PowerQuad, а сообщество NXP предоставляет большое количество технических материалов, статей и обсуждений.

Отраслевые статьи позволяют партнёрам отрасли делиться полезными новостями, технологиями и практическими знаниями. Высказанные мнения принадлежат авторам материалов и могут не совпадать с позицией редакции.

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

Сопутствующие Товары
Похожие статьи
Что такое dB и как применять эту единицу измерений. Часть 1
Что такое dB и как применять эту единицу измерений. Часть 1

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

04.03.2024 4628
ТОЧНОСТЬ И КАЧЕСТВО ПОКАЗАНИЙ ЦИФРОВОГО МУЛЬТИМЕТРА. НАСКОЛЬКО ЭТО ВАЖНО.
ТОЧНОСТЬ И КАЧЕСТВО ПОКАЗАНИЙ ЦИФРОВОГО МУЛЬТИМЕТРА. НАСКОЛЬКО ЭТО ВАЖНО.

Ссылка на страничку сайта Магазина Gtest(R) с номенклатурой мультиметров, а также рекомендуемые приборы и статьи для дальнейшего самообразования - в самом конце этого РазделаБазовые концепцииКак опре..

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

Магазин Gtest(R) предлагает широкую номенклатуру осциллографов на приводимой в самом конце Раздела страничке сайта, а также рекомендуемые приборы и статьи для самообразования 1. Полоса пропуск..

07.03.2025 482