gtld2-diag-scripts/rolling bearing/defects/rb-inring-fault.js

53 lines
2.9 KiB
JavaScript
Raw Normal View History

2023-11-26 11:50:07 +03:00
"use strict";
var imp = gtl.import("user-functions.js");
export function defect() {
let frq = imp.BPFI(); //функциональная чатота
let num = 5; //количество отрисованных гармоник
//присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес.
var spen_BPFI2 = spen.add_harms_set(frq, num, 0xff990090, 1); //раковины на внутреннем кольце "фиолетовый"
for (let i = 0; i <= num - 1; i++) { spen_BPFI2.harms[i].tolerance = (1 + i) * frq * imp.tolerance() };
spen_BPFI2.name = 'Раковины на внутреннем кольце';
//добавляем модулирующие гармоники: частота, кол-во, цвет, вес
spen.harms_sets[6].modulate(imp.FREQ(), 2, 0xff923090, 1); //модуляция Fв +/- Fвр "фиолетовый"
var ausp_BPFI2 = ausp.add_harms_set(frq, num, 0xff990090, 2); //раковины на внутреннем кольце "фиолетовый"
for (let i = 0; i <= num - 1; i++) { ausp_BPFI2.harms[i].tolerance = (1 + i) * frq * imp.tolerance() };
ausp_BPFI2.name = 'Раковины на внутреннем кольце';
//добавляем модулирующие гармоники: частота, кол-во, цвет, вес
ausp.harms_sets[2].modulate(imp.FREQ(), 2, 0xff923090, 1); //модуляция Fв +/- Fвр "фиолетовый"
var Defect = false;
//вывод количества гармоник
//spen.harms_sets[0].get_count(1, 2, 1, true);
//1 - начало отсчета гармоники;
//2 - допуситмое количество пропущенных в ряду;
//3 - количество модулирующих с одной стороны;
//4 - модулирующие с двух сторон (true);
//раковины на внутреннем кольце
if (
spen.harms_sets[6].get_count(0, 0, 1) >= 3 &&
ausp.harms_sets[2].get_count(0, 1, 1) >= 3
) {
Defect = true;
for (let i = 0; i <= num - 1; i++) {
if (spen_BPFI2.harms[i].is_present == true)
gtl.log.info("Раковины на внутреннем кольце. Признаки в ES " + (i + 1) + "Fв +/- Fвр", imp.mod_factor(spen_BPFI2.harms[i].amplitude, spen_BPFI2.harms[i].base));
}
for (let i = 0; i <= num - 1; i++) {
if (ausp_BPFI2.harms[i].is_present == true)
gtl.log.info("Раковины на внутреннем кольце. Признаки в AS " + (i + 1) + "Fв +/- Fвр", ausp_BPFI2.harms[i].amplitude);
}
}
else
gtl.log.info("Раковины на внутреннем кольце", "Признаков дефекта не обнаружено");
return Defect;
};