Gtl.create moving thresh: различия между версиями
Перейти к навигации
Перейти к поиску
| Строка 25: | Строка 25: | ||
var thresh = gtl.create_moving_thresh( | var thresh = gtl.create_moving_thresh( | ||
{ | { | ||
src: gtl.analog_inputs[0], | src : gtl.analog_inputs[0], | ||
name: "thresh", | name : "thresh", | ||
time: 0. | time : 0.001, | ||
level: 0.5 | level : 0.5 | ||
} | } | ||
); | ); | ||
| Строка 34: | Строка 34: | ||
thresh.triggered.connect(thresh_triggered_event); | thresh.triggered.connect(thresh_triggered_event); | ||
let cnt = 0; | |||
gtl. | function thresh_triggered_event(flag, sample) | ||
{ | |||
gtl.log.info("tresh trigger", flag); | |||
if(flag) | |||
gtl.log.info("trigger on time", sample/thresh.rate); | |||
else | |||
gtl.log.info("trigger off time", sample/thresh.rate); | |||
cnt++; | |||
if(cnt == 6) | |||
gtl.stop(); | |||
} | |||
</pre> | </pre> | ||
Версия от 23:50, 9 марта 2026
Краткое описание
Функция предназначена для фиксации превышений максимального значения параметра в указанном временном интервале наблюдения. Применяется для контроля стабильного превышения параметрами установленного порога в течение указанного времени.
Объявление функции
var thresh = gtl.gtl.create_moving_thresh(
{
src: gtl.analog_inputs[0],
name: "thresh",
time: 0.1,
level: 0.5
}
);
Свойства (методы)
thresh.src = gtl.analog_inputs[0];- источник сигнала;thresh.name = "thresh";- присвоение имени параметру;thresh.time = 0.1;- временной интервал наблюдения, в течение которого должно фиксироваться постоянное превышение порога, сек.;thresh.level = 0.5;- пороговый уровень для параметра, при превышении которого фиксируется превышение;thresh.triggered.connect();- слот для подключения функции обработки результата;
Пример использования
var thresh = gtl.create_moving_thresh(
{
src : gtl.analog_inputs[0],
name : "thresh",
time : 0.001,
level : 0.5
}
);
thresh.triggered.connect(thresh_triggered_event);
let cnt = 0;
function thresh_triggered_event(flag, sample)
{
gtl.log.info("tresh trigger", flag);
if(flag)
gtl.log.info("trigger on time", sample/thresh.rate);
else
gtl.log.info("trigger off time", sample/thresh.rate);
cnt++;
if(cnt == 6)
gtl.stop();
}