Gtl.add intg: различия между версиями

Материал из GTL-wiki
Перейти к навигации Перейти к поиску
 
(не показано 10 промежуточных версий этого же участника)
Строка 1: Строка 1:
[[File:SVA.jpg|thumb|Виброперемещение, виброскорость и виброускорение (фазы)]]
[[File:SVA.jpg|thumb|Виброперемещение, виброскорость и виброускорение (фазы)]]
[[File:SVA2.png|thumb|Виброперемещение, виброскорость и виброускорение (частотные диапазоны)]]
[[File:SVA2.png|thumb|Виброперемещение, виброскорость и виброускорение (частотные характеристики)]]
== Краткое описание ==
== Краткое описание ==
Функция предназначена для интегрирования сигнала вибрации. Необходима для получения значений параметров виброперемещения, виброскорости или виброускорения из исходного сигнала.
Функция предназначена для интегрирования сигнала вибрации. Необходима для получения значений параметров виброскорости и виброперемещения из исходного сигнала виброускорения. Интегрирование можно производить как до фильтрации сигнала, так и после, а также несколько раз.


== Объявление функции ==
== Объявление функции ==
:<code style="color: purple>var filter_V = gtl.add_intg( фильтр );</code>
:<code style="color: purple>var integ = gtl.add_intg( номер измерительного канала или фильтр );</code>


== Свойства (методы) ==
== Свойства (методы) ==
:<code style="color: purple>filter.taps = 1;</code> - степень интегрирования (1-2 в зависимости от исходного сигнала);
:<code style="color: purple>integ.taps = 1;</code> - степень интегрирования (1-2 в зависимости от исходного сигнала);
:<code style="color: purple>integ.scale = 1000;</code> - коэффициент масштабирования (перевод величин);


== Пример использования ==
== Пример использования ==
<pre>
<pre>
//фильтрация сигнала в диапазоне 10-1000 Гц (вибромониторинг)
//фильтрация сигнала в диапазоне 10-1000 Гц
var filter = gtl.add_filter_iir(gtl.analog_inputs[0]); //объявление переменной фильтра
var filter = gtl.add_filter_iir(gtl.analog_inputs[0]); //объявление переменной фильтра
filter.kind = gtl.filter_iir.butterworth; //тип окна
filter.kind = gtl.filter_iir.butterworth; //тип окна
Строка 21: Строка 22:


//интегрирование исходного сигнала виброускорения (преобразуем в виброскорость)
//интегрирование исходного сигнала виброускорения (преобразуем в виброскорость)
var filter_v = gtl.add_intg(filter); //интегрирование
var integ = gtl.add_intg(filter); //интегрирование
filter_v.taps = 1; //степень интегрирования (скорость из ускорения - 1-нарное интегрирование)
integ.taps = 1; //степень интегрирования (скорость из ускорения - 1-нарное интегрирование)
integ.scale = 1000; //переводим метры в миллиметры


//определение среднего квадратического значения виброскорости в диапазоне 10-1000 Гц
//определение среднего квадратического значения виброскорости в диапазоне 10-1000 Гц
var rms = gtl.add_value_rms(filter_v); //объявление переменной СКЗ
var rms = gtl.add_value_rms(integ); //объявление переменной СКЗ
rms.time = 1; //время выборки
rms.time = 1; //время выборки
rms.avg_cnt = 4; //количество усреднений
rms.avg_cnt = 4; //количество усреднений
Строка 32: Строка 34:


function diagnose() {
function diagnose() {
gtl.log.info("СКЗ виброскорости в диапазоне до 10-1000 Гц", rms.value);
gtl.log.info("СКЗ виброскорости в диапазоне 10-1000 Гц", rms.value);
}
};
</pre>
</pre>

Текущая версия от 12:38, 10 июня 2024

Виброперемещение, виброскорость и виброускорение (фазы)
Виброперемещение, виброскорость и виброускорение (частотные характеристики)

Краткое описание

Функция предназначена для интегрирования сигнала вибрации. Необходима для получения значений параметров виброскорости и виброперемещения из исходного сигнала виброускорения. Интегрирование можно производить как до фильтрации сигнала, так и после, а также несколько раз.

Объявление функции

var integ = gtl.add_intg( номер измерительного канала или фильтр );

Свойства (методы)

integ.taps = 1; - степень интегрирования (1-2 в зависимости от исходного сигнала);
integ.scale = 1000; - коэффициент масштабирования (перевод величин);

Пример использования

//фильтрация сигнала в диапазоне 10-1000 Гц
var filter = gtl.add_filter_iir(gtl.analog_inputs[0]); //объявление переменной фильтра
filter.kind = gtl.filter_iir.butterworth; //тип окна
filter.type = gtl.filter_iir.bandpass; //тип фильтра (полосовой)
filter.order = 10; //порядок фильтра
filter.frequency = 505; //центральная частота полосового фильтра
filter.width = 990; //ширина полосы фильтра

//интегрирование исходного сигнала виброускорения (преобразуем в виброскорость)
var integ = gtl.add_intg(filter); //интегрирование
integ.taps = 1; //степень интегрирования (скорость из ускорения - 1-нарное интегрирование)
integ.scale = 1000; //переводим метры в миллиметры

//определение среднего квадратического значения виброскорости в диапазоне 10-1000 Гц
var rms = gtl.add_value_rms(integ); //объявление переменной СКЗ
rms.time = 1; //время выборки
rms.avg_cnt = 4; //количество усреднений

gtl.diagnostic.interval = rms.time * rms.avg_cnt; //интервал запуска функции диагностики

function diagnose() {
gtl.log.info("СКЗ виброскорости в диапазоне 10-1000 Гц", rms.value);
};