Курсовая работа: Разработка технического и программного обеспечения автоматизированной системы научных исследований

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

Остальные возможности реализованы в теле основной программы по нажатию определённых кнопок, такие как: функции очистки данных, загрузки и сохранения данных, функций вычисления грубой и усредненных оценок СПМ, функций окон сглаживания Гудмена и Гудмена-Эноконса-Отнеса. Схема программы приведена в приложения Б. Текст программных модулей приведен в приложении А.

Основной модуль предназначен для ввода всех входных параметров и вызова функций в последовательности, необходимой для указанного вида обработки данных. После получения входных данных выполняется их проверка. Затем производится вызов подпрограмм дискретного (прямого и обратного) и быстрого преобразования Фурье, а также подпрограмм оценки спектральной плотности мощности в комплексе с различными методами осреднения и сглаживания.

Функция вычисления БПФ

void fft_fun(float *x, float *y, int n, int ind) осуществляет вычисление прямого или обратного быстрого преобразования Фурье в зависимости от значения переменной ind. Другие переменные, передаваемые в эту функцию:

x, y – вещественные массивы размерности N;

n – количество отсчетов (длина участка) .

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

void dpf_fun(float *x, float *y, int N) осуществляет вычисление прямого дискретного преобразования Фурье. Переменные, передаваемые в эту функцию:

*x, *y – вещественные массивы размерности N;

N – количество отсчетов.

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

void odpf_fun(float *x, float *y, int N) осуществляет вычисление обратного дискретного преобразования Фурье. Переменные, передаваемые в эту функцию:

*x, *y – вещественные массивы размерности N;

N – количество отсчетов.

Функция моделирования работы АЦП

void __fastcall TForm1::Button1Click(TObject *Sender) - Моделирует генерацию сигнала от датчика со всеми заданными параметрами (частоты, амплитуда) и последующую дискретизацию сигнала с заданным периодом дискретизации Т. Также вычисляет ошибку квантования её оценку математического ожидания, дисперсию, СКО.

Функция оценки спектральной плотности мощности

void __fastcall TForm1::BitBtn1Click(TObject *Sender) – По нажатию на эту кнопку программа выполняет оценку спектральной плотности мощности, в соответствие с введёнными параметрами. При этом есть возможность проводить оценку грубую, сглаженную усреднением по частотам или по участкам, либо с применением окон Гудмена или Гудмена-Эноксона-Отнеса.

4.3 Тестирование разработанного ПО

Итак, пришло время самого интересного в этом курсовом проекте, а именно проверка того, какие результаты он выдаёт, то есть насколько корректно программа делает вычисления. Как эталон будет использоваться результат вычислений пакета MATLAB.

Начальные данные:

Амплитуда

сигнала

(В)

Значения частот гармоник (Гц)

Параметры АЦП

f1

f2

f3

К-во Просмотров: 397
Бесплатно скачать Курсовая работа: Разработка технического и программного обеспечения автоматизированной системы научных исследований