Gtl.add spen: различия между версиями
Перейти к навигации
Перейти к поиску
| Строка 38: | Строка 38: | ||
:<code style="color: purple>spen.env;</code> - массив значений линии огибающей (используется в расчете альтернативного коэффициента эксцесса); | :<code style="color: purple>spen.env;</code> - массив значений линии огибающей (используется в расчете альтернативного коэффициента эксцесса); | ||
:<code style="color: purple>spen.acq_time;</code> - время, необходимое для расчета спектра огибающей; | :<code style="color: purple>spen.acq_time;</code> - время, необходимое для расчета спектра огибающей; | ||
<pre style="color: purple> | <pre style="color: purple> | ||
spen.peaks; - массив параметров обнаруженных гармоник; | |||
spen.peaks.lenght; - количество вложенных объектов (обнаруженных гармоник), шт; | spen.peaks.lenght; - количество вложенных объектов (обнаруженных гармоник), шт; | ||
spen.peaks[i].index - индекс гармоники; | spen.peaks[i].index - индекс гармоники; | ||
Версия от 11:03, 11 мая 2024

Краткое описание
Функция предназначена для построения спектра огибающей высокочастотной вибрации в отфильтрованном диапазоне. Необходима при проведении анализа колебаний мощности составляющих высокочастотной вибрации.
Объявление функции
var spen = gtl.add_spen( фильтр );
Свойства (методы)
spen.name = "SPEN";- присвоение имени спектра огибающей;spen.color = 0x00ff0000;- цвет линии спектра огибающей в формате HEX;spen.frequency = 400;- граничная частота спектра огибающей, Гц;spen.lines = 800;- количество линий спектра огибающей (разрешение);spen.average = 6;- количество отсчетов для усреднения;spen.overlap = 0.1;- коэффициент перекрытия;spen.unit = gtl.spec.db;- единица измерения амплитуды;
db; unit;
spen.window = gtl.spec.hann;- тип окна;
rectangular; cosin; hann; bartlett_hann; hamming; blackman; blackman_harris; flattop; half_rect;
spen.smoothing_factor = 100;- коэффициент сглаживания средней линии спектра огибающей;spen.smoothed_line_color = 0xff004dff;- цвет линии сглаживания (средней линии) в формате HEX;spen.peak_level =15;- порог обнаружения гармоник в спектре огибающей (дБ или линейная величина);spen.harm_tolerance = 1;- диапазон поиска гармоник +- Гц;spen.data;- массив значений амплитуд составляющих сигнала в спектре огибающей (используется в функции определения площади спектра огибающей);spen.base;- массив значений уровня средней линии в спектре огибающей;spen.env;- массив значений линии огибающей (используется в расчете альтернативного коэффициента эксцесса);spen.acq_time;- время, необходимое для расчета спектра огибающей;
spen.peaks; - массив параметров обнаруженных гармоник; spen.peaks.lenght; - количество вложенных объектов (обнаруженных гармоник), шт; spen.peaks[i].index - индекс гармоники; spen.peaks[i].freq - частота гармоники, Гц; spen.peaks[i].ampl - абсолютное значение амплитуды гармоники; spen.peaks[i].level - уровень гармоники над средней линией; i - индекс вложенного объекта;
Пример использования
//фильтрация участка сигнала для формирования спектра огибающей
var filter_spen = gtl.add_filter_iir(gtl.analog_inputs[0]]); //назначение переменной для фильтра
filter_spen.kind = gtl.filter_iir.butterworth; //тип окна
filter_spen.type = gtl.filter_iir.bandpass; //тип фильтра (полосовой)
filter_spen.order = 10; //порядок фильтра
filter_spen.frequency = 6400; //центральная частота полосового фильтра
filter_spen.width = 1482; //ширина полосы фильтра
//построение спектра огибающей в узком диапазоне
var spen = gtl.add_spen(filter_spen); //назначение переменной спектра огибающей
spen.name = "SPEN"; //присвоение имени спектра огибающей
spen.color = 0x00ff0000; //цвет линии спектра огибающей
spen.frequency = 400; //граничная частота спектра огибающей
spen.lines = 800; //разрешение спектра огибающей (количество линий)
spen.average = 8; //количество усреднений
spen.overlap = 0; //коэффициент перекрытия
spen.unit = gtl.spec.db; //отображение в дБ
spen.window = gtl.spec.hann; //окно
spen.smoothing_factor = 100; //коэффициент сглаживания средней линии спектра
spen.smoothed_line_color = 0xff004dff; //цвет средней линии
spen.peak_level = 10; //порог обнаружения гармоник
spen.harm_tolerance = 1; //диапазон поиска гармоник +/-
gtl.diagnostic.interval = spen.acq_time;
function diagnose() {
//выводим параметры гармонических составляющих, обнаруженных в спектре огибающей
for (let i = 0; i < ausp.peaks.length; i++) {
gtl.log.info("Индекс", spen.peaks[i].index);
gtl.log.info("Частота", spen.peaks[i].freq);
gtl.log.info("Амплитуда", spen.peaks[i].ampl);
gtl.log.info("Уровень", spen.peaks[i].level);
};
gtl.diagnostic.stop();
};