Gtl.add spen: различия между версиями
Нет описания правки |
|||
| Строка 21: | Строка 21: | ||
== Свойства (методы) == | == Свойства (методы) == | ||
<code style="color: purple>spen.src = gtl.analog_inputs[0];</code> - источник сигнала вибрации (для альтернативного варианта); | |||
<code style="color: purple>spen.name = "SPEN";</code> - присвоение имени спектра огибающей; | |||
<code style="color: purple>spen.color = 0x00ff0000;</code> - цвет линии спектра огибающей в формате HEX; | |||
<code style="color: purple>spen.frequency = 1000;</code> - граничная частота спектра огибающей, Гц; | |||
<code style="color: purple>spen.lines = 1000;</code> - количество линий спектра огибающей; | |||
<code style="color: purple>spen.resolution = 1;</code> - частотное разрешение (frequency / lines), Гц/линия; | |||
<code style="color: purple>spen.average = 3;</code> - количество отсчетов для усреднения; | |||
<code style="color: purple>spen.overlap = 0.5;</code> - коэффициент перекрытия; | |||
<code style="color: purple>spen.unit = gtl.spec.db;</code> - единица измерения амплитуды; | |||
<pre> | <pre> | ||
db; | db; | ||
Версия от 10:02, 16 июня 2024

Краткое описание
Функция предназначена для построения спектра огибающей высокочастотной вибрации в отфильтрованном диапазоне. Необходима при проведении анализа колебаний мощности составляющих высокочастотной вибрации.
Объявление функции
var spen = gtl.add_spen( фильтр );
Объявление функции (альтернативный вариант)
var spen = gtl.create_spen(
{
"src" : gtl.analog_inputs[0],
"frequency" : 1000,
"resolution" : 1,
"average" : 3,
"overlap" : .5,
"window" : gtl.spec.rectangular
}
);
Свойства (методы)
spen.src = gtl.analog_inputs[0]; - источник сигнала вибрации (для альтернативного варианта);
spen.name = "SPEN"; - присвоение имени спектра огибающей;
spen.color = 0x00ff0000; - цвет линии спектра огибающей в формате HEX;
spen.frequency = 1000; - граничная частота спектра огибающей, Гц;
spen.lines = 1000; - количество линий спектра огибающей;
spen.resolution = 1; - частотное разрешение (frequency / lines), Гц/линия;
spen.average = 3; - количество отсчетов для усреднения;
spen.overlap = 0.5; - коэффициент перекрытия;
spen.unit = gtl.spec.db; - единица измерения амплитуды;
db; unit; rms;
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();
};