"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 let DCI_A1_ = gtl.options.customOptions.DCI_A1; // модуль (мм/с/граммы) ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке A **/*** let DCI_A1 = DCI_A1_; // модуль (мм/с/граммы) ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке A **/*** (конечное значение) let DCI_A1_phase_ = gtl.options.customOptions.DCI_A1_phase; // фаза ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке A **/*** let DCI_A1_phase = DCI_A1_phase_; // фаза ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке A **/*** (конечное значение) let DCI_B1_ = gtl.options.customOptions.DCI_B1; // модуль (мм/с/граммы) ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке B **/*** let DCI_B1 = DCI_B1_; // модуль (мм/с/граммы) ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке B **/*** (конечное значение) let DCI_B1_phase_ = gtl.options.customOptions.DCI_B1_phase; // фаза ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке B **/*** let DCI_B1_phase = DCI_B1_phase_; // фаза ДКВ груза m_test_1 в плоскости 1 на вибрацию в точке B **/*** (конечное значение) let DCI_A2_ = gtl.options.customOptions.DCI_A2; // модуль (мм/с/граммы) ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке A **/*** let DCI_A2 = DCI_A2_; // модуль (мм/с/граммы) ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке A **/*** (конечное значение) let DCI_A2_phase_ = gtl.options.customOptions.DCI_A2_phase; // фаза ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке A **/*** let DCI_A2_phase = DCI_A2_phase_; // фаза ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке A **/*** (конечное значение) let DCI_B2_ = gtl.options.customOptions.DCI_B2; // модуль (мм/с/граммы) ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке B **/*** let DCI_B2 = DCI_B2_; // модуль (мм/с/граммы) ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке B **/*** (конечное значение) let DCI_B2_phase_ = gtl.options.customOptions.DCI_B2_phase; // фаза ДКВ груза m_test_2 в плоскости 2 на вибрацию в точке B **/*** let DCI_B2_phase = DCI_B2_phase_; // фаза ДКВ груза m_test_2 в плоскости 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("модуль ДКВ DCI_A1 плоскости 1 на вибрацию в точке A", DCI_A1); gtl.log.info("фаза ДКВ DCI_A1 плоскости 1 на вибрацию в точке A", DCI_A1_phase); gtl.log.info("модуль ДКВ DCI_A2 плоскости 2 на вибрацию в точке A", DCI_A2); gtl.log.info("фаза ДКВ DCI_A2 плоскости 2 на вибрацию в точке A", DCI_A2_phase); gtl.log.info("модуль ДКВ DCI_B1 плоскости 1 на вибрацию в точке B", DCI_B1); gtl.log.info("фаза ДКВ DCI_B1 плоскости 1 на вибрацию в точке B", DCI_B1_phase); gtl.log.info("модуль ДКВ DCI_B2 плоскости 2 на вибрацию в точке B", DCI_B2); gtl.log.info("фаза ДКВ DCI_B2 плоскости 2 на вибрацию в точке B", DCI_B2_phase); gtl.log.info("Допустимый остаточный дисбаланс", U_per); // Выдача результата (results) let __result = { _001_Радиус_установки_грузов_пл1_мм: R1, _002_Радиус_установки_грузов_пл2_мм: R2, _003_Масса_ротора_кг: P, _004_Модуль_ДКВ_DCI_A1: DCI_A1, _005_Фаза_ДКВ_DCI_A1: DCI_A1_phase, _006_Модуль_ДКВ_DCI_A2: DCI_A2, _007_Фаза_ДКВ_DCI_A2: DCI_A2_phase, _008_Модуль_ДКВ_DCI_B1: DCI_B1, _009_Фаза_ДКВ_DCI_B1: DCI_B1_phase, _010_Модуль_ДКВ_DCI_B2: DCI_B2, _011_Фаза_ДКВ_DCI_B2: DCI_B2_phase, _012_Допуст_ост_дисб_г_мм: U_per }; gtl.results = {"result": __result}; gtl.diagnostic.stop(); }