Gtl.add intg: различия между версиями
Перейти к навигации
Перейти к поиску
Нет описания правки |
|||
| Строка 2: | Строка 2: | ||
[[File:SVA2.png|thumb|Виброперемещение, виброскорость и виброускорение (частотные характеристики)]] | [[File:SVA2.png|thumb|Виброперемещение, виброскорость и виброускорение (частотные характеристики)]] | ||
== Краткое описание == | == Краткое описание == | ||
Функция предназначена для интегрирования сигнала вибрации. Необходима для получения значений параметров виброскорости и виброперемещения из исходного сигнала виброускорения. | Функция предназначена для интегрирования сигнала вибрации. Необходима для получения значений параметров виброскорости и виброперемещения из исходного сигнала виброускорения. Интегрирование можно производить как до фильтрации сигнала, так и после, а также несколько раз. | ||
== Объявление функции == | == Объявление функции == | ||
:<code style="color: purple>var | :<code style="color: purple>var integ = gtl.add_intg( номер измерительного канала или фильтр );</code> | ||
== Свойства (методы) == | == Свойства (методы) == | ||
:<code style="color: purple> | :<code style="color: purple>integ.taps = 1;</code> - степень интегрирования (1-2 в зависимости от исходного сигнала); | ||
== Пример использования == | == Пример использования == | ||
<pre> | <pre> | ||
//интегрирование исходного сигнала виброускорения (преобразуем в виброскорость) | |||
var integ = gtl.add_intg(gtl.analog_inputs[0]); //интегрирование | |||
integ.taps = 1; //степень интегрирования (скорость из ускорения - 1-нарное интегрирование) | |||
//фильтрация сигнала в диапазоне 10-1000 Гц | //фильтрация сигнала в диапазоне 10-1000 Гц | ||
var filter = gtl.add_filter_iir( | var filter = gtl.add_filter_iir(integ); //объявление переменной фильтра | ||
filter.kind = gtl.filter_iir.butterworth; //тип окна | filter.kind = gtl.filter_iir.butterworth; //тип окна | ||
filter.type = gtl.filter_iir.bandpass; //тип фильтра (полосовой) | filter.type = gtl.filter_iir.bandpass; //тип фильтра (полосовой) | ||
| Строка 19: | Строка 23: | ||
filter.frequency = 505; //центральная частота полосового фильтра | filter.frequency = 505; //центральная частота полосового фильтра | ||
filter.width = 990; //ширина полосы фильтра | filter.width = 990; //ширина полосы фильтра | ||
//определение среднего квадратического значения виброскорости в диапазоне 10-1000 Гц | //определение среднего квадратического значения виброскорости в диапазоне 10-1000 Гц | ||
var rms = gtl.add_value_rms( | var rms = gtl.add_value_rms(filter); //объявление переменной СКЗ | ||
rms.time = 1; //время выборки | rms.time = 1; //время выборки | ||
rms.avg_cnt = 4; //количество усреднений | rms.avg_cnt = 4; //количество усреднений | ||
Версия от 04:12, 28 декабря 2023


Краткое описание
Функция предназначена для интегрирования сигнала вибрации. Необходима для получения значений параметров виброскорости и виброперемещения из исходного сигнала виброускорения. Интегрирование можно производить как до фильтрации сигнала, так и после, а также несколько раз.
Объявление функции
var integ = gtl.add_intg( номер измерительного канала или фильтр );
Свойства (методы)
integ.taps = 1;- степень интегрирования (1-2 в зависимости от исходного сигнала);
Пример использования
//интегрирование исходного сигнала виброускорения (преобразуем в виброскорость)
var integ = gtl.add_intg(gtl.analog_inputs[0]); //интегрирование
integ.taps = 1; //степень интегрирования (скорость из ускорения - 1-нарное интегрирование)
//фильтрация сигнала в диапазоне 10-1000 Гц
var filter = gtl.add_filter_iir(integ); //объявление переменной фильтра
filter.kind = gtl.filter_iir.butterworth; //тип окна
filter.type = gtl.filter_iir.bandpass; //тип фильтра (полосовой)
filter.order = 10; //порядок фильтра
filter.frequency = 505; //центральная частота полосового фильтра
filter.width = 990; //ширина полосы фильтра
//определение среднего квадратического значения виброскорости в диапазоне 10-1000 Гц
var rms = gtl.add_value_rms(filter); //объявление переменной СКЗ
rms.time = 1; //время выборки
rms.avg_cnt = 4; //количество усреднений
gtl.diagnostic.interval = rms.time * rms.avg_cnt; //интервал запуска функции диагностики
function diagnose() {
gtl.log.info("СКЗ виброскорости в диапазоне 10-1000 Гц", rms.value);
}