balancer_calc/scripts/1 пл бф - шаг 2.js

81 lines
4.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"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 - зелёный
// #0000ff - синий
// #00ddff - голубой
// #ff3dcc - фиолетовый
// #ffff00 - жёлтый
// ***** БАЛАНСИРОВОЧНЫЙ КАЛЬКУЛЯТОР. ОДНА ПЛОСКОСТЬ БЕЗ ФАЗЫ *****
// ****************************************************************
// Переменные основные
// параметр вибрации (модуль вектора) - виброскорость (мм/с)
// угол (фаза) вектора - градусы
// масса груза (модуль вектора) - граммы
// DCI - Dynamic Coefficient of Influence (динамический коэффициент влияния)
// * - значение получаем из измерительного блока при нажатии кнопки
// ** - значение вводится пользователем
// *** - значение получаем в результате расчёта программы балансировки
// значение переменной с нижним подчёркиванием (..._) берётся из "дополнительных опций"; если оно не задано, то рассчитывается в скрипте
let m_test_ = gtl.options.customOptions.m_test; // модуль вектора пробного груза **
let m_test; // модуль вектора пробного груза ** (конечное значение)
var m_test_calc; // масса пробного груза расчётная ***
let n = gtl.options.customOptions.n; // скорость вращения, об/мин ** (для вычисления массы пробного груза)
let FREQ_0 = n / 60; // частота вращения, об/мин *** (для определения амплитуды оборотной гармоники)
let R_ = gtl.options.customOptions.R; // радиус установки грузов ** (для вычисления массы пробного груза)
let R = R_; // радиус установки грузов ** (конечное значение)
let P_ = gtl.options.customOptions.P; // масса ротора, кг ** (для вычисления массы пробного груза)
let P = P_; // масса ротора, кг ** (конечное значение)
let A0_ = gtl.options.customOptions.A0; // модуль вектора начальной вибрации */**
let A0 = A0_; // модуль вектора начальной вибрации */** (конечное значение)
// ***** РАСЧЁТЫ *****
// gtl.diagnostic.interval = 15;
gtl.diagnostic.interval = gtl.acq_time + 1;
function diagnose() {
// Вычисление массы пробного груза (если не введено своё значение и есть данные для формулы)
// m_test масса пробного груза
if (P != 0 && R != 0 && n != 0)
{m_test_calc = 804 * ((P * A0) / (R/10 * n)); // R/10 - перевод мм в см
} else {m_test_calc = 0}
if (m_test_ != 0) {m_test = m_test_} // принимает значение из опций
else {m_test = 0} // значение не введено
gtl.log.info("m_test (пробный груз введёный)",m_test);
gtl.log.info("m_test_calc (пробный груз расчётный)",m_test_calc);
gtl.log.info("Масса ротора, кг", P);
gtl.log.info("Радиус установки грузов, мм", R);
gtl.log.info("Начальная вибрация A0",A0);
gtl.log.info("Частота вращения, Гц", FREQ_0);
// Выдача результата (results)
let __result = {
_001римен_пробный_груз: m_test,
_002_Расч_пробный_груз: m_test_calc
};
gtl.results = {"result": __result};
gtl.diagnostic.stop();
}