, (11)
где- максимальная частота сигнала, подвергающаяся анализу.
Она определяется из требований ТЗ и из частот свободных колебаний ОК. В идеале, она должна быть верхней частотой подавления входного полосового фильтра.
Следующий шаг – нормировка шкалы АЦП к оперируемым процессором величинам. Этот шаг обязателен из-за возможности появления переполнения при вычислении ДПФ. Далее пронормированный вектор подвергается дискретному преобразованию Фурье. Рассмотрим этот вопрос более подробно. В результате применения ДПФ к вещественному вектору получаем комплексный вектор той же длины через следующее выражение:
(12)
В данном рассуждении под длиной вектора понимается число его координат, а не евклидова норма. Существует также обратное преобразование Фурье (операция, обратная только что описанной), но здесь оно рассматриваться не будет ввиду его отсутствия в алгоритме.
Непосредственное вычисление координат результирующего вектора через (12) приводит к 2N операциям на каждый коэффициент . Т.к. всего мы имеем N коэффициентов, то общая сложность алгоритма составляет , что не представляет практического интереса из-за необходимости реализации данного алгоритма на МК и следующей отсюда низкой скорости вычислений. В таких случаях применяют быстрое преобразование Фурье, которое характеризуется значительно меньшим объемом операций на вычисление одной компоненты результирующего вектора.
Будем использовать алгоритмы с основанием 2, использующиеся, когда число входных отсчетов равно . Основная идея, лежащая в их основе, заключается в сведении вычисления N-точечного БПФ к вычислению нескольких -точечных ДПФ при .
Выражение (12) можно также переписать как
, (13)
где . здесь – главный комплексный корень N-степени из единицы. В некоторых случаях индекс N будет опускаться, что будет означать степень корня, равную длине преобразуемого вектора.
В итоге, идею БПФ можно записать так
, (14)
что соответствует разбиению искомой последовательности на две подпоследовательности соответственно четных и нечетных отсчетов входного сигнала. В свою очередь, каждую из подпоследовательностей длины N/2 можно представить двумя подпоследовательностями длиной N/4 и так далее, пока не останутся 2-х точечные. Всего таких ступеней преобразования . Сложность алгоритма слияния на каждой ступени равна . Умножая на число ступеней, получаем сложность всего алгоритма равную . Такой алгоритм БПФ использует прореживание по времени, разделяя вектор входного сигнала на четные и нечетные компоненты.
Вышеописанный алгоритм используется в данной работе как базовый алгоритм для вычисления ДПФ. Блок-схема данного алгоритма приведена в приложении Б.
Далее выполняется статистическая нормировка полученных после БПФ модулей гармоник сигнала, в соответствие с выражением (15)
, (15)
где - длина вектора модулей гармоник;
- модуль гармоники i;
- среднее арифметическое входного вектора.
В результате применения (15) к исходному вектору действительных величин X получаем вектор действительных величин Y со следующими параметрами (16)
, (16)
где
D – дисперсия;
M – математическое ожидание.
Необходимость данной нормировки обосновывается требованием к представлению обучающих выборок для нейроэмулятора «Модели», который будет описан далее в части «выбор нейроэмулятора».
Будем использовать нейронную сеть (НС) со структурой, показанной на рисунке 8.
Рисунок 8 - Структура используемой НС
Как показано в /7/, такая структура НС называется персептроном, используемым для распознавания образов. Функционирование такой НС описывается выражением (17) (запись для однослойного персептрона).
, (17)
где N – число нейронов;
M – число входов;
A – вектор входных данных;
K – матрица синаптических коэффициентов;
C – вектор коэффициентов взвешенного суммирования выходов нейронов;
– вектор начальных состояний нейронов;
b – постоянная составляющая выхода.
Выходом данной НС является вещественное число.
Стоит отметить, что разработанные исходные коды приведены в приложении В.
Перед рассмотрением вопроса выбора МК рассмотрим иерархию программных средств работы с МК, что необходимо для дальнейшего понимания материала, посвященного тестовым задачам МК.
На рисунке 9 представлена иерархия программных средств работы с МК.
Рисунок 9 - Иерархия программных средств работы с МК
Как видно из диаграммы, программные средства работы с МК подразделяются на средства разработки, средства отладки, и средства аппаратно-программного взаимодействия.
- Средства разработки предназначены непосредственно для написания программ. Сюда входят компиляторы ассемблера и языков высокого уровня, декомпиляторы (программные средства, позволяющие получить ассемблерный листинг или код на высокоуровневом языке программирования, имея бинарный файл прошивки МК), а также интегрированные среды разработки (IDE – Integrated Development Environment), представляющие собой многокомпонентные приложения, совмещающие компиляторы (как ассемблера, так и высокого уровня), средства редактирования и контроля исходных текстов, декомпиляторы, средства отладки – т.е. весь комплекс прикладных программ в процессе разработки. Поэтому IDE относят к средствам отладки и средствам разработки.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.