93 lines
5.8 KiB
JavaScript
93 lines
5.8 KiB
JavaScript
"use strict";
|
||
|
||
// var signals = gtl.options.record.signalsModel;
|
||
// var options = gtl.options;
|
||
// var record = gtl.options.record;
|
||
// var point = gtl.options.point;
|
||
|
||
// // Импорт функций
|
||
// var imp = gtl.import("functions_for_balance.js");
|
||
// var fnc = gtl.import("user-functions.js");
|
||
|
||
// Цвета (для справки)
|
||
// #ff0000 - красный
|
||
// #00ff00 - салатовый
|
||
// #0fae1a - зелёный
|
||
// #0000ff - синий
|
||
// #00ddff - голубой
|
||
// #ff3dcc - фиолетовый
|
||
// #ffff00 - жёлтый
|
||
|
||
// ***** БАЛАНСИРОВОЧНЫЙ КАЛЬКУЛЯТОР. ДВЕ ПЛОСКОСТИ *****
|
||
// ******************************************************
|
||
|
||
|
||
// Переменные основные
|
||
// параметр вибрации (модуль вектора) - виброскорость (мм/с)
|
||
// угол (фаза) вектора - градусы
|
||
// масса груза (модуль ветора) - граммы
|
||
// DCI - Dynamic Coefficient of Influence (динамический коэффициент влияния)
|
||
// * - значение получаем из измерительного блока при нажатии кнопки
|
||
// ** - значение вводится пользователем
|
||
// *** - значение получаем в результате расчёта программы балансировки
|
||
// значение переменной с нижним подчёркиванием (..._) берётся из "дополнительных опций"; если оно не задано, то рассчитывается в скрипте
|
||
|
||
let R1_ = gtl.options.customOptions.R1; // радиус установки грузов на плоскости 1, мм ** (для вычисления массы пробного груза)
|
||
let R1; // радиус установки грузов на плоскости 1, мм ** (для вычисления массы пробного груза) (конечное значение)
|
||
let R2_ = gtl.options.customOptions.R2; // радиус установки грузов на плоскости 2, мм ** (для вычисления массы пробного груза)
|
||
let R2; // радиус установки грузов на плоскости 2, мм ** (для вычисления массы пробного груза) (конечное значение)
|
||
let P_ = gtl.options.customOptions.P; // масса ротора, кг ** (для вычисления массы пробного груза)
|
||
let P; // масса ротора, кг ** (для вычисления массы пробного груза) (конечное значение)
|
||
let G = gtl.options.customOptions.G; // класс точности балансировки, мм/с ** (ГОСТ 1940)
|
||
let n = gtl.options.customOptions.n; // скорость вращения, об/мин ** (для вычисления массы пробного груза и допустимого остаточного дисбаланса)
|
||
let U_per; // допустимый остаточный дисбаланс *** (ГОСТ 1940)
|
||
let L_A = gtl.options.customOptions.L_A;// расстояние от центра масс до плоскости подшипника A
|
||
let L_B = gtl.options.customOptions.L_B;// расстояние от центра масс до плоскости подшипника B
|
||
let L = gtl.options.customOptions.L; // расстояние между подшипниковыми опорами
|
||
let b = gtl.options.customOptions.b; // расстояние между плоскостями коррекции
|
||
let b_A = gtl.options.customOptions.b_A;// расстояние от плоскости коррекции 1 до подшипниковой опоры A
|
||
let b_B = gtl.options.customOptions.b_B;// расстояние от плоскости коррекции 2 до подшипниковой опоры B
|
||
|
||
|
||
// ***** РАСЧЁТЫ *****
|
||
// gtl.diagnostic.interval = 15;
|
||
gtl.diagnostic.interval = gtl.acq_time + 1;
|
||
|
||
function diagnose() {
|
||
|
||
// РАСЧЁТЫ (балансировочный калькулятор)
|
||
// ШАГ 0 - ввод исходных данных:
|
||
// ввод исходных данных: радиус установки грузов, масса ротора
|
||
// ввод ДКВ (DCI), если он известен (необязателен для этого алгоритма)
|
||
|
||
// R1 радиус установки грузов на плоскости 1, мм
|
||
if (R1_ != 0) {R1 = R1_} // принимает значение из опций
|
||
else {R1 = false} // принимает значение false
|
||
// R2 радиус установки грузов на плоскости 2, мм
|
||
if (R2_ != 0) {R2 = R2_} // принимает значение из опций
|
||
else {R2 = false} // принимает значение false
|
||
// P масса ротора, г
|
||
if (P_ != 0) {P = P_} // принимает значение из опций
|
||
else {P = false} // принимает значение false
|
||
|
||
// Вычисление допустимого остаточного дисбаланса
|
||
U_per = (1000 * (G * P)) / (Math.PI * n / 30);
|
||
|
||
gtl.log.info("Масса ротора", P);
|
||
gtl.log.info("Радиус установки грузов на плоскости 1", R1);
|
||
gtl.log.info("Радиус установки грузов на плоскости 2", R2);
|
||
gtl.log.info("Допустимый остаточный дисбаланс", U_per);
|
||
|
||
// Выдача результата (results)
|
||
let __result = {
|
||
_001_Радиус_установки_грузов_пл1_мм: R1,
|
||
_002_Радиус_установки_грузов_пл2_мм: R2,
|
||
_003_Масса_ротора_кг: P,
|
||
_004_Допуст_ост_дисб_г_мм: U_per
|
||
};
|
||
|
||
gtl.results = {"result": __result};
|
||
|
||
gtl.diagnostic.stop();
|
||
|
||
} |