From 698d0e7e439443b0d3c30f56472e7e7b1ba81786 Mon Sep 17 00:00:00 2001 From: aleksey_k Date: Sun, 4 Feb 2024 17:58:44 +0900 Subject: [PATCH] add index of sets --- rolling bearing/defects/rb-inring-fault.js | 30 +++++++++++--------- rolling bearing/defects/rb-inring-tention.js | 13 +++++---- rolling bearing/defects/rb-inring-wear.js | 13 +++++---- rolling bearing/defects/rb-outring-bias.js | 13 +++++---- rolling bearing/defects/rb-outring-fault.js | 30 +++++++++++--------- rolling bearing/defects/rb-outring-wear.js | 13 +++++---- rolling bearing/defects/rb-rollers-fault.js | 30 +++++++++++--------- rolling bearing/defects/rb-separator-wear.js | 13 +++++---- rolling bearing/defects/rb-shaft.js | 26 +++++++++-------- 9 files changed, 97 insertions(+), 84 deletions(-) diff --git a/rolling bearing/defects/rb-inring-fault.js b/rolling bearing/defects/rb-inring-fault.js index df58bfc..36d1173 100644 --- a/rolling bearing/defects/rb-inring-fault.js +++ b/rolling bearing/defects/rb-inring-fault.js @@ -7,17 +7,19 @@ export function defect() { let num = 5; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff990090, 1); //раковины на внутреннем кольце "фиолетовый" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Раковины на внутреннем кольце'; + var spen_set = spen.add_harms_set(frq, num, 0xff990090, 1); //раковины на внутреннем кольце "фиолетовый" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Раковины на внутреннем кольце'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей //добавляем модулирующие гармоники: частота, кол-во, цвет, вес - spen.harms_sets[6].modulate(imp.FREQ(), 2, 0xff923090, 1); //модуляция Fв +/- Fвр "фиолетовый" + spen.harms_sets[spen_index].modulate(imp.FREQ(), 2, 0xff923090, 1); //модуляция Fв +/- Fвр "фиолетовый" - var ausp_lines = ausp.add_harms_set(frq, num, 0xff990090, 2); //раковины на внутреннем кольце "фиолетовый" - for (let i = 0; i <= num - 1; i++) { ausp_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - ausp_lines.name = 'Раковины на внутреннем кольце'; + var ausp_set = ausp.add_harms_set(frq, num, 0xff990090, 2); //раковины на внутреннем кольце "фиолетовый" + for (let i = 0; i <= num - 1; i++) { ausp_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + ausp_set.name = 'Раковины на внутреннем кольце'; + var ausp_index = ausp.index_of_harms_set(ausp_set); //индекс набора гармоник в спектре вибрации //добавляем модулирующие гармоники: частота, кол-во, цвет, вес - ausp.harms_sets[2].modulate(imp.FREQ(), 2, 0xff923090, 1); //модуляция Fв +/- Fвр "фиолетовый" + ausp.harms_sets[ausp_index].modulate(imp.FREQ(), 2, 0xff923090, 1); //модуляция Fв +/- Fвр "фиолетовый" var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -36,21 +38,21 @@ export function defect() { //раковины на внутреннем кольце if ( - spen.harms_sets[6].get_count(0, 0, 1) >= 3 && - ausp.harms_sets[2].get_count(0, 1, 1) >= 3 + spen.harms_sets[spen_index].get_count(0, 0, 1) >= 3 && + ausp.harms_sets[ausp_index].get_count(0, 1, 1) >= 3 ) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Раковины на внутреннем кольце. Признаки в ES " + (i + 1) + "Fв +/- Fвр", deep); } } for (let i = 0; i <= num - 1; i++) { - if (ausp_lines.harms[i].is_present == true) { - ampl = ausp_lines.harms[i].amplitude; + if (ausp_set.harms[i].is_present == true) { + ampl = ausp_set.harms[i].amplitude; ausp_signs.push(ampl); gtl.log.info("Раковины на внутреннем кольце. Признаки в AS " + (i + 1) + "Fв +/- Fвр", ampl); } diff --git a/rolling bearing/defects/rb-inring-tention.js b/rolling bearing/defects/rb-inring-tention.js index 2d5c317..a43bc0f 100644 --- a/rolling bearing/defects/rb-inring-tention.js +++ b/rolling bearing/defects/rb-inring-tention.js @@ -7,9 +7,10 @@ export function defect() { let num = 10; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff009ff0, 2); //неоднородный радиальный натяг "голубой" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Неоднородный радиальный натяг'; + var spen_set = spen.add_harms_set(frq, num, 0xff009ff0, 2); //неоднородный радиальный натяг "голубой" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Неоднородный радиальный натяг'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -27,11 +28,11 @@ export function defect() { //4 - модулирующие с двух сторон (true); //неоднородный радиальный натяг - if (spen.harms_sets[1].get_count(0) >= 1 && spen.harms_sets[1].get_count(0) <= 5) { + if (spen.harms_sets[spen_index].get_count(0) >= 1 && spen.harms_sets[spen_index].get_count(0) <= 5) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Неоднородный радиальный натяг. Признаки в ES " + (i + 1) + "Fвр[x2]", deep); } diff --git a/rolling bearing/defects/rb-inring-wear.js b/rolling bearing/defects/rb-inring-wear.js index d0f1030..fc680c6 100644 --- a/rolling bearing/defects/rb-inring-wear.js +++ b/rolling bearing/defects/rb-inring-wear.js @@ -7,9 +7,10 @@ export function defect() { let num = 5; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff0000f0, 1); //износ дорожки качения внутреннего кольца "синий" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Износ внутреннего кольца'; + var spen_set = spen.add_harms_set(frq, num, 0xff0000f0, 1); //износ дорожки качения внутреннего кольца "синий" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Износ внутреннего кольца'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -27,11 +28,11 @@ export function defect() { //4 - модулирующие с двух сторон (true); //износ дорожки качения внутреннего кольца - if (spen.harms_sets[5].get_count(0, 1) >= 1 && spen.harms_sets[5].get_count(0, 1) <= 2) { + if (spen.harms_sets[spen_index].get_count(0, 1) >= 1 && spen.harms_sets[spen_index].get_count(0, 1) <= 2) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Износ внутреннего кольца. Признаки в ES " + (i + 1) + "Fвр", deep); } diff --git a/rolling bearing/defects/rb-outring-bias.js b/rolling bearing/defects/rb-outring-bias.js index be4996f..d03b6f2 100644 --- a/rolling bearing/defects/rb-outring-bias.js +++ b/rolling bearing/defects/rb-outring-bias.js @@ -7,9 +7,10 @@ export function defect() { let num = 6; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff009000, 2); //перекос наружного кольца "зелёный" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Перекос наружного кольца'; + var spen_set = spen.add_harms_set(frq, num, 0xff009000, 2); //перекос наружного кольца "зелёный" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Перекос наружного кольца'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -27,11 +28,11 @@ export function defect() { //4 - модулирующие с двух сторон (true); //перекос наружного кольца - if (spen.harms_sets[3].get_count(0, 1) >= 1 && spen.harms_sets[3].get_count(0, 1) <= 4) { + if (spen.harms_sets[spen_index].get_count(0, 1) >= 1 && spen.harms_sets[spen_index].get_count(0, 1) <= 4) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Перекос наружного кольца. Признаки в ES " + (i + 1) + "Fн[x2]", deep); } diff --git a/rolling bearing/defects/rb-outring-fault.js b/rolling bearing/defects/rb-outring-fault.js index 4005c94..3ebb30b 100644 --- a/rolling bearing/defects/rb-outring-fault.js +++ b/rolling bearing/defects/rb-outring-fault.js @@ -7,17 +7,19 @@ export function defect() { let num = 6; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff009000, 1); //раковины на наружном кольце "зелёный" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Раковины на наружном кольце'; + var spen_set = spen.add_harms_set(frq, num, 0xff009000, 1); //раковины на наружном кольце "зелёный" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Раковины на наружном кольце'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей //добавляем модулирующие гармоники: частота, кол-во, цвет, вес - spen.harms_sets[4].modulate(imp.FTF(), 2, 0xff009030, 1); //модуляция Fн +/- Fс "зелёный" + spen.harms_sets[spen_index].modulate(imp.FTF(), 2, 0xff009030, 1); //модуляция Fн +/- Fс "зелёный" - var ausp_lines = ausp.add_harms_set(frq, num, 0xff009000, 2); //раковины на наружном кольце "зелёный" - for (let i = 0; i <= num - 1; i++) { ausp_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - ausp_lines.name = 'Раковины на наружном кольце'; + var ausp_set = ausp.add_harms_set(frq, num, 0xff009000, 2); //раковины на наружном кольце "зелёный" + for (let i = 0; i <= num - 1; i++) { ausp_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + ausp_set.name = 'Раковины на наружном кольце'; + var ausp_index = ausp.index_of_harms_set(ausp_set); //индекс набора гармоник в спектре вибрации //добавляем модулирующие гармоники: частота, кол-во, цвет, вес - ausp.harms_sets[1].modulate(imp.FTF(), 2, 0xff009030, 1); //модуляция Fн +/- Fс "зелёный" + ausp.harms_sets[ausp_index].modulate(imp.FTF(), 2, 0xff009030, 1); //модуляция Fн +/- Fс "зелёный" var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -36,21 +38,21 @@ export function defect() { //раковины на наружном кольце if ( - spen.harms_sets[4].get_count(0, 1) >= 5 && - ausp.harms_sets[1].get_count(0, 3) >= 5 + spen.harms_sets[spen_index].get_count(0, 1) >= 5 && + ausp.harms_sets[ausp_index].get_count(0, 3) >= 5 ) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Раковины на наружном кольце. Признаки в ES " + (i + 1) + "Fн", deep); } } for (let i = 0; i <= num - 1; i++) { - if (ausp_lines.harms[i].is_present == true) { - ampl = ausp_lines.harms[i].amplitude; + if (ausp_set.harms[i].is_present == true) { + ampl = ausp_set.harms[i].amplitude; ausp_signs.push(ampl); gtl.log.info("Раковины на наружном кольце. Признаки в AS " + (i + 1) + "Fн", ampl); } diff --git a/rolling bearing/defects/rb-outring-wear.js b/rolling bearing/defects/rb-outring-wear.js index f1955d0..3b7ca36 100644 --- a/rolling bearing/defects/rb-outring-wear.js +++ b/rolling bearing/defects/rb-outring-wear.js @@ -7,9 +7,10 @@ export function defect() { let num = 5; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff009000, 1); //износ дорожки качения наружного кольца "зелёный" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Износ наружного кольца'; + var spen_set = spen.add_harms_set(frq, num, 0xff009000, 1); //износ дорожки качения наружного кольца "зелёный" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Износ наружного кольца'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -27,11 +28,11 @@ export function defect() { //4 - модулирующие с двух сторон (true); //износ наружного кольца - if (spen.harms_sets[2].get_count(0, 1) >= 1 && spen.harms_sets[2].get_count(0, 1) <= 5) { + if (spen.harms_sets[spen_index].get_count(0, 1) >= 1 && spen.harms_sets[spen_index].get_count(0, 1) <= 5) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Износ наружного кольца. Признаки в ES " + (i + 1) + "Fн", deep); } diff --git a/rolling bearing/defects/rb-rollers-fault.js b/rolling bearing/defects/rb-rollers-fault.js index 4d1b439..f0f5cae 100644 --- a/rolling bearing/defects/rb-rollers-fault.js +++ b/rolling bearing/defects/rb-rollers-fault.js @@ -7,17 +7,19 @@ export function defect() { let num = 20; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff994000, 1); //раковины и сколы на телах качения "оранжевый" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Раковины и сколы на телах качения'; + var spen_set = spen.add_harms_set(frq, num, 0xff994000, 1); //раковины и сколы на телах качения "оранжевый" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Раковины и сколы на телах качения'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей //добавляем модулирующие гармоники: частота, кол-во, цвет, вес - spen.harms_sets[8].modulate(imp.FTF(), 2, 0xff996000, 1); //модуляция Fтк +/- Fс "горчичный" + spen.harms_sets[spen_index].modulate(imp.FTF(), 2, 0xff996000, 1); //модуляция Fтк +/- Fс "горчичный" - var ausp_lines = ausp.add_harms_set(frq, num, 0xff994000, 2); //раковины и сколы на телах качения "оранжевый" - for (let i = 0; i <= num - 1; i++) { ausp_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - ausp_lines.name = 'Раковины и сколы на телах качения'; + var ausp_set = ausp.add_harms_set(frq, num, 0xff994000, 2); //раковины и сколы на телах качения "оранжевый" + for (let i = 0; i <= num - 1; i++) { ausp_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + ausp_set.name = 'Раковины и сколы на телах качения'; + var ausp_index = ausp.index_of_harms_set(ausp_set); //индекс набора гармоник в спектре вибрации //добавляем модулирующие гармоники: частота, кол-во, цвет, вес - ausp.harms_sets[3].modulate(imp.FTF(), 2, 0xff996000, 1); //модуляция Fтк +/- Fс "горчичный" + ausp.harms_sets[ausp_index].modulate(imp.FTF(), 2, 0xff996000, 1); //модуляция Fтк +/- Fс "горчичный" var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -36,22 +38,22 @@ export function defect() { //раковины и сколы на телах качения if ( - spen.harms_sets[8].get_count(0, 1, 1) >= 3 && - ausp.harms_sets[3].get_count(0, 3, 1) >= 3 + spen.harms_sets[spen_index].get_count(0, 1, 1) >= 3 && + ausp.harms_sets[ausp_index].get_count(0, 3, 1) >= 3 ) { defect = true; Defect_type.push("Раковины и сколы на телах качения"); for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Раковины и сколы на телах качения. Признаки в ES " + (i + 1) + "Fтк +/- Fс", deep); } } for (let i = 0; i <= num - 1; i++) { - if (ausp_lines.harms[i].is_present == true) { - ampl = ausp_lines.harms[i].amplitude; + if (ausp_set.harms[i].is_present == true) { + ampl = ausp_set.harms[i].amplitude; ausp_signs.push(ampl); gtl.log.info("Раковины и сколы на телах качения. Признаки в AS " + (i + 1) + "Fтк +/- Fс", ampl); } diff --git a/rolling bearing/defects/rb-separator-wear.js b/rolling bearing/defects/rb-separator-wear.js index 4e32344..07b77ef 100644 --- a/rolling bearing/defects/rb-separator-wear.js +++ b/rolling bearing/defects/rb-separator-wear.js @@ -7,9 +7,10 @@ export function defect() { let num = 10; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xffff0000, 2); //износ тел качения и сепаратора "красный" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; - spen_lines.name = 'Износ тел качения и сепаратора'; + var spen_set = spen.add_harms_set(frq, num, 0xffff0000, 2); //износ тел качения и сепаратора "красный" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; + spen_set.name = 'Износ тел качения и сепаратора'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -27,11 +28,11 @@ export function defect() { //4 - модулирующие с двух сторон (true); //износ тел качения и сепаратора - if (spen.harms_sets[7].get_count(0, 1) >= 1) { + if (spen.harms_sets[spen_index].get_count(0, 1) >= 1) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Износ тел качения и сепаратора. Признаки в ES " + (i + 1) + "Fс", deep); } diff --git a/rolling bearing/defects/rb-shaft.js b/rolling bearing/defects/rb-shaft.js index 2a2599c..f297799 100644 --- a/rolling bearing/defects/rb-shaft.js +++ b/rolling bearing/defects/rb-shaft.js @@ -7,13 +7,15 @@ export function defect() { let num = 10; //количество отрисованных гармоник //присваиваем набору гармоник переменную, добавляем гармоники: частота, кол-во (default = 10), цвет, вес. - var spen_lines = spen.add_harms_set(frq, num, 0xff0000f0, 1); //биение вала - "синий" - for (let i = 0; i <= num - 1; i++) { spen_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; //коридор обнаружения гармоник - spen_lines.name = 'Биение вала'; + var spen_set = spen.add_harms_set(frq, num, 0xff0000f0, 1); //биение вала - "синий" + for (let i = 0; i <= num - 1; i++) { spen_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; //коридор обнаружения гармоник + spen_set.name = 'Биение вала'; + var spen_index = spen.index_of_harms_set(spen_set); //индекс набора гармоник в спектре огибающей - var ausp_lines = ausp.add_harms_set(frq, num, 0xff0000f0, 2); //биение вала "синий" - for (let i = 0; i <= num - 1; i++) { ausp_lines.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; //коридор обнаружения гармоник - ausp_lines.name = 'Биение вала'; + var ausp_set = ausp.add_harms_set(frq, num, 0xff0000f0, 2); //биение вала "синий" + for (let i = 0; i <= num - 1; i++) { ausp_set.harms[i].tolerance = (1 + i) * frq * imp.tolerance() }; //коридор обнаружения гармоник + ausp_set.name = 'Биение вала'; + var ausp_index = ausp.index_of_harms_set(ausp_set); //индекс набора гармоник в спектре вибрации var defect = false; var spen_signs = []; //массив признаков в спектрк огибающей @@ -32,21 +34,21 @@ export function defect() { //биение вала if ( - spen.harms_sets[0].get_count(0, 2) >= 1 && spen.harms_sets[0].get_count(0, 2) <= 10 && - ausp.harms_sets[0].get_count(0, 2) >= 0 && ausp.harms_sets[0].get_count(0, 2) <= 10 + spen.harms_sets[spen_index].get_count(0, 2) >= 1 && spen.harms_sets[spen_index].get_count(0, 2) <= 10 && + ausp.harms_sets[ausp_index].get_count(0, 2) >= 0 && ausp.harms_sets[ausp_index].get_count(0, 2) <= 10 ) { defect = true; for (let i = 0; i <= num - 1; i++) { - if (spen_lines.harms[i].is_present == true) { - deep = imp.mod_factor(spen_lines.harms[i].amplitude, spen_lines.harms[i].base); + if (spen_set.harms[i].is_present == true) { + deep = imp.mod_factor(spen_set.harms[i].amplitude, spen_set.harms[i].base); spen_signs.push(deep); gtl.log.info("Биение вала. Признаки в ES " + (i + 1) + "Fвр", deep); } } for (let i = 0; i <= num - 1; i++) { - if (ausp_lines.harms[i].is_present == true) { - ampl = ausp_lines.harms[i].amplitude; + if (ausp_set.harms[i].is_present == true) { + ampl = ausp_set.harms[i].amplitude; ausp_signs.push(ampl); gtl.log.info("Биение вала. Признаки в AS " + (i + 1) + "Fвр", ampl); }