open all | close all

3.22. Спектральный анализ

Основное назначение модуля Спектрального анализа – построение спектра случайного процесса, представленного в виде последовательности дискретных отсчетов. Необходимость в построении спектрального разложения возникает при анализе ветровых и сейсмических воздействий, а также при решении задач вибромониторинга (см. Вибромониторинг). Модуль выполняет одну единственную функцию – Дискретное Преобразование Фурье (ДПФ) – любую последовательность из N сигналов, заданных с шагом по времени Dt, можно представить в виде суммы N/2+1 гармоники с определенными амплитудами и фазами, частоты которых кратны величине 2p/(NDt). Задача ДПФ как раз и состоит в том, чтобы найти эти амплитуды и фазы.

Модуль Спектрального анализа обрабатывает два вида сигналов: 1 - последовательности сигналов, построенные на основе аналитических выражений и 2 – экспериментальные акселерограммы, спектрограммы и т.п. Сигналы, построенные на основе аналитических выражений, имеют скорее обучающее значение. На них начинающий пользователь может оценит как влияют те или иные параметры акселерограмм на точность построения спектра. На них мы остановимся несколько позже. Экспериментальные акселерограммы должны быть представлены в виде текстового файла. Программа распознает расширения файлов *.spc и *.txt, но, в принципе, расширение файла может быть любым. Файл имеет следующий формат:

<Описание файла> # <Масштабный множитель> <Количество отсчетов> <Шаг по времени>
<Отсчет 1>
<Отсчет 2>
. . . . . . . . . .

где <Описание файла> - любая информация, которую пользователь считает нужным разместить в сопровождении к данным, <Масштабный множитель> - множитель, на который будут умножены все отсчеты, <Шаг по времени> - предполагается, что все отсчеты берутся с постоянным шагом по времени. Данный формат записи соответствует требованиям Standard for the Exchange of Earthquake Data.

Для того, чтобы активировать в модуля Спектрального анализа, выберите в контрольной секции программы пункт меню Редакторы/Спектральный анализ

В результате откроется окно с меню

Щелчок по пиктограмме позволяет выбрать файл акселерограммы. В результате на экране появляются два совмещенных окна – изображение самого процесса и его амплитудная характеристика

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

Щелчок по кнопке в правом нижнем углу окна заменяет картинку отображения амплитуд спектра на картинку отображения фаз

Выбор на панели инструментов пиктограммы позволяет пользователю самому сформировать процесс и затем произвести его спектральный анализ. При выборе этой пиктограммы на экране появляется панель

Цветные кнопки в левой части панели уже знакомы пользователю по Калькулятору системы (описание функций можно найти там же). Задача пользователя - набрать в окне панели уравнение процесса как функцию параметра t (времени), например

2.56*sin(3.5*t)

Алгебраическое выражение может включать в себя любые функции, названия которых указаны на функциональных кнопках, скобки на любую глубину вложенности 6 знаков математических действий: +, -, *, /, ^, ~ (^ - возведение в степень и ~ - арктангенс отношения двух чисел). Кроме того, алгебраическое выражение может содержать до 10 различных параметров. Параметр – это непрерывная последовательность букв и/или цифр, начинающаяся с буквы, например

a1*sin(w1*t+f1)+ a2*sin(w2*t+f2)+…

Значения параметров можно задать, щелкнув по кнопке , расположенной в правой части панели. В результате на экране появляется таблица, в которую можно занести значения параметров, вошедших в алгебраическое выражение:

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

Чтобы сохранить сформированное выражение вмести с сопутствующими параметрами в архив, надо щелкнуть по кнопке , расположенной в правой части панели. Чтобы прочитать выражение их архива, надо щелкнуть по кнопке , расположенной рядом,

выделить нужную строку и щелкнуть по кнопке OK. Архив представляет собой обычный тестовый файл с именем spcimpact.sea, который хранится и инсталляционном директории программы. Каждый процесс записывается в файл архива в виде отдельной строки. Запись имеет следующий формат:

<Название процесса> # <Уравнение> # <Список параметров>

<Список параметров> представляет собой перечисление имен параметров, вошедших в уравнение прцесса и, через знак ‘=’, значение параметра. Параметры разделяются символом пробела ‘ ‘. Кроме заданных пользователем параметров, в списке могут появиться еще 2 стандартных параметра: Pnt=… и Step=…, которые задают, соответственно, число точек процесса и шаг по времени.

В программа не предусмотрено средств для редактирования содержимого архива. Но никто не помешает вам, при необходимости, открыть файл spcimpact.sea, например, при помощи Notepad и отредактировать его вручную.

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

   abs(x) - значение х по абсолютной величине;
   floor(x) - наибольшее целое меньшее или равное х;
   ceil(х) - наименьшее целое большее или равное х;
   poz() - если х>=0 - x, если х<0 – 0;
   neg(x) - если х<=0 - x, если х>0 – 0.

есть возможность моделировать различные периодические импульсные функции. Ниже дается описание ряда стандартных воздействий, поставляемых в пакете:

1. Выпрямленный переменный ток

уравнение: - y=a*abs(sin(w*t));
параметры: - Pnt=1000 Step=0.01 a=1 w=6.283185307;


2. Пакет прямоугольных импульсов

уравнение: - y=a*poz(sign(cos(b)-cos(w*t+b)));
параметры: - Pnt=1000 Step=0.01 a=1 b=2.094395102 w=6.283185307;


3. Пакет пилообразных импульсов

уравнение: - y=a*(t/T-floor(t/T));
параметры: - Pnt=1000 Step=0.01 a=1 T=1;


4. Пакет из 3 волн со сдвигом

уравнение: - y=a1*sin(w1*t+f1)+a2*sin(w2*t+f2)+a3*sin(w3*t+f3);
параметры: - Pnt=1000 Step=0.01 a1=1 w1=6.283185307 f1=0 a2=1 w2=12.56637061 f2=0 a3=1 w3=18.84955592;


5. Разгон двигателя

уравнение: - y=a*(sign(poz(T-t))*(t/T)^2*sin(w*t*t/T)+sign(poz(t-T))*sin(w*t));
параметры: - Pnt=1000 Step=0.01 a=1 w=6.283185307 T=5;


6. Обрезанная свеху синусоидальная волна

уравнение: - y=a*(neg(sin(w*t)-A)+A);
параметры: - Pnt=1000 Step=0.01 a=1 w=6.283185307 A=0.8;


7. Обрезанная свеху и снизу синусоидальная волна

уравнение: - y=a*(poz((neg(sin(w*t)-A)+A)+B)-B);
параметры: - Pnt=1000 Step=0.01 a=1 w=6.283185307 A=0.9 B=0.5;


8. Пакет из 5 волн

уравнение: - y=a1*sin(w1*t)+a2*sin(w2*t)+a3*sin(w3*t)+a4*sin(w4*t)+a5*sin(w5*t);
параметры: - Pnt=1000 Step=0.1 a1=1 w1=1 a2=1 w2=1.7 a3=1 w3=3.8 a4=1 w4=4.2 a5=1 w5=4.6;


9. Синусоидальная волна

уравнение: - y= a*sin(w*t+f);
параметры: - Pnt=10 Step=0.1 a=1 w=6.283185307 f=0;


Если возмущающий процесс представляет собой совокупность гармонических колебаний (суммой функций sin(wt) и cos(wt)), то перед исследователем часто стоит задача восстановить амплитуды каждой из гармоник. Однако по самой диаграмме ДПФ это не всегда представляется возможным. Очень часто (как правило) спектры в окрестности возмущающих частот оказываются “размазанными”.

“Качество” построения спектра зависит кот количества снятых отсчетов и от кратности шага снятия отсчетов периоду колебаний каждой из гармоник. Чтобы найти действительные значения частот и амплитуд каждой из гармоник, щелкните по пиктограмме на панели инструментов. Программа приведет “расплывшийся” спектр к линейчатому.

Значения частот и амплитуд в этой таблице соответствуют спектрограмме представленной выше. Как видно, амплитуды всех гармоник практически равны 1. В то же время, на спектрограмме значения амплитуд третьей и пятой гармоник заметно отличаются от единицы.