386 lines
22 KiB
JavaScript
386 lines
22 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 - жёлтый
|
||
|
||
// ***** БАЛАНСИРОВОЧНЫЙ КАЛЬКУЛЯТОР. ОДНА ПЛОСКОСТЬ с фазой (использование ДКВ) *****
|
||
// ***********************************************************************************
|
||
|
||
// Объявление графических плоскостей для построения графиков
|
||
let plot_pfc = gtl.plots.add("ФЧХ"); // фазо-частотная характеристика
|
||
let plot_ausp = gtl.plots.add("Спектр виброскорости"); // объект для спектра
|
||
let plot_vibr = gtl.plots.add("Векторы вибрации"); // объект для векторов вибрации
|
||
let plot_disb = gtl.plots.add("Расположение дисбаланса"); // объект для дисбаланса
|
||
|
||
// gtl.log.info("размер массива AUSPv_pl", AUSPv_pl.data.length);
|
||
// gtl.log.info("размер массива pfc_pl", pfc_pl.data.length);
|
||
|
||
// Переменные основные
|
||
// параметр вибрации (модуль вектора) - виброскорость (мм/с)
|
||
// угол (фаза) вектора - градусы
|
||
// масса груза (модуль ветора) - граммы
|
||
// DCI - Dynamic Coefficient of Influence (динамический коэффициент влияния)
|
||
// * - значение получаем из измерительного блока при нажатии кнопки
|
||
// ** - значение вводится пользователем
|
||
// *** - значение получаем в результате расчёта программы балансировки
|
||
// значение переменной с нижним подчёркиванием (..._) берётся из "дополнительных опций"; если оно не задано, то рассчитывается в скрипте
|
||
|
||
let R = gtl.options.customOptions.R; // радиус установки грузов ** (для вычисления массы пробного груза)
|
||
let P = gtl.options.customOptions.P; // масса ротора, кг ** (для вычисления массы пробного груза)
|
||
let G = gtl.options.customOptions.G; // класс точности балансировки, мм/с ** (ГОСТ 1940)
|
||
let n = gtl.options.customOptions.n; // скорость вращения, об/мин ** (для вычисления массы пробного груза и допустимого остаточного дисбаланса)
|
||
let U_per; // допустимый остаточный дисбаланс *** (ГОСТ 1940)
|
||
let U_res; // остаточный дисбаланс *** (ГОСТ 1940)
|
||
|
||
let A0_ = gtl.options.customOptions.A0; // модуль вектора начальной вибрации */**
|
||
let A0 = A0_; // модуль вектора начальной вибрации */** (конечное значение)
|
||
let A0_phase_ = gtl.options.customOptions.A0_phase; // фаза вектора начальной вибрации */**
|
||
let A0_phase = A0_phase_; // фаза вектора начальной вибрации */** (конечное значение)
|
||
let DCI_ = gtl.options.customOptions.DCI; // модуль (мм/с/граммы) динамического коэффициента влияния **/***
|
||
let DCI = DCI_; // модуль (мм/с/граммы) динамического коэффициента влияния **/*** (конечное значение)
|
||
let DCI_phase_ = gtl.options.customOptions.DCI_phase; // фаза динамического коэффициента влияния **/***
|
||
let DCI_phase = DCI_phase_; // фаза динамического коэффициента влияния **/*** (конечное значение)
|
||
let Mb = gtl.options.customOptions.Mb; // масса применённого балансировочного груза **/*** (конечное значение)
|
||
let Mb_corner = gtl.options.customOptions.Mb_corner; // угол применённого балансировочного груза **/*** (конечное значение)
|
||
let Mb_calc; // модуль расчётного вектора балансировочного груза ***
|
||
let Mb_corner_calc; // угол расчётного вектора балансировочного груза ***
|
||
let Mdisb; // масса дисбаланса ***
|
||
let Mdisb_corner; // угол расположения дисбаланса ***
|
||
|
||
// Переменные вспомогательные необходимые для расчётов
|
||
let A0_phase_X; // угол наклона вектора A0 к оси X
|
||
let A0_phase_Y; // угол наклона вектора A0 к оси Y
|
||
let A0_1_X; // начальная координата вектора A0 по оси X
|
||
let A0_2_X; // конечная координата вектора A0 по оси X
|
||
let A0_1_Y; // начальная координата вектора A0 по оси Y
|
||
let A0_2_Y; // конечная координата вектора A0 по оси Y
|
||
|
||
let Mb_corner_calc_X; // угол наклона расчётного вектора Mb к оси X
|
||
let Mb_corner_calc_Y; // угол наклона расчётного вектора Mb к оси Y
|
||
let Mb_1_calc_X; // начальная координата расчётного вектора Mb по оси X
|
||
let Mb_2_calc_X; // конечная координата расчётного вектора Mb по оси X
|
||
let Mb_1_calc_Y; // начальная координата расчётного вектора Mb по оси Y
|
||
let Mb_2_calc_Y; // конечная координата расчётного вектора Mb по оси Y
|
||
|
||
let Mb_corner_X; // угол наклона вектора Mb к оси X
|
||
let Mb_corner_Y; // угол наклона вектора Mb к оси Y
|
||
let Mb_1_X; // начальная координата вектора Mb по оси X
|
||
let Mb_2_X; // конечная координата вектора Mb по оси X
|
||
let Mb_1_Y; // начальная координата вектора Mb по оси Y
|
||
let Mb_2_Y; // конечная координата вектора Mb по оси Y
|
||
|
||
let Mdisb_corner_X;// угол наклона вектора Mdisb к оси X
|
||
let Mdisb_corner_Y;// угол наклона вектора Mdisb к оси Y
|
||
let Mdisb_1_X; // начальная координата вектора Mdisb по оси X
|
||
let Mdisb_2_X; // конечная координата вектора Mdisb по оси X
|
||
let Mdisb_1_Y; // начальная координата вектора Mdisb по оси Y
|
||
let Mdisb_2_Y; // конечная координата вектора Mdisb по оси Y
|
||
|
||
// ***** РАСЧЁТЫ *****
|
||
// gtl.diagnostic.interval = 15;
|
||
// gtl.diagnostic.interval = Math.max(AUSPv.acq_time, AUSPv_pl.acq_time) + 0.1;
|
||
gtl.diagnostic.interval = gtl.acq_time + 1;
|
||
|
||
// let state = record.tachoOptions.tachoState; // начальное состояние после выбора источника тахо сигнала
|
||
|
||
function diagnose() {
|
||
|
||
// РАСЧЁТЫ (балансировочный калькулятор)
|
||
// ШАГ 2 - расположение дисбаланса:
|
||
// вычисление положения дисбаланса и рекомендуемого балансировочного груза Mb_calc
|
||
// ввод массы и угла установки балансировочного груза Mb
|
||
// построение графиков расположения дисбаланса Mdisb, расчётного Mb_calc и введённого Mb балансировочного груза
|
||
// из предыдущих шагов переносятся: амплитуда и фаза вибрации A0
|
||
// построение графиков вибрации A0 и A2
|
||
|
||
|
||
// определение угла наклона вектора A0 к осям X и Y
|
||
if (A0_phase <= 90) {
|
||
A0_phase_X = 90 - A0_phase}
|
||
if (A0_phase <= 180) {
|
||
A0_phase_X = A0_phase - 90}
|
||
if (A0_phase <= 270) {
|
||
A0_phase_X = 270 - A0_phase}
|
||
if (A0_phase <= 360) {
|
||
A0_phase_X = A0_phase - 270}
|
||
if (A0_phase <= 90) {
|
||
A0_phase_Y = A0_phase}
|
||
if (A0_phase <= 180) {
|
||
A0_phase_Y = 180 - A0_phase}
|
||
if (A0_phase <= 270) {
|
||
A0_phase_Y = A0_phase - 180}
|
||
if (A0_phase <= 360) {
|
||
A0_phase_Y = 360 - A0_phase}
|
||
// определение координат вектора A0
|
||
var xA0_array = []; // массив координат точек вектора A0 по оси X
|
||
var yA0_array = []; // массив координат точек вектора A0 по оси Y
|
||
A0_1_X = 0;
|
||
if (A0_phase <= 180) {A0_2_X = Math.abs(Math.cos(A0_phase_X * 3.1415/180)) * A0
|
||
} else {A0_2_X = Math.abs(Math.cos(A0_phase_X * 3.1415/180)) * A0 * (-1)}
|
||
A0_1_Y = 0;
|
||
if (A0_phase <= 90 || A0_phase >= 270) {A0_2_Y = Math.abs(Math.cos(A0_phase_Y * 3.1415/180)) * A0
|
||
} else {A0_2_Y = Math.abs(Math.cos(A0_phase_Y * 3.1415/180)) * A0 * (-1)}
|
||
xA0_array[0] = A0_1_X;
|
||
xA0_array[1] = A0_2_X;
|
||
yA0_array[0] = A0_1_Y;
|
||
yA0_array[1] = A0_2_Y;
|
||
|
||
// определение координат точек окружности графика для отображения векторов вибрации
|
||
var xV_array = []; // массив координат точек окружности V по оси X
|
||
var yV_array = []; // массив координат точек окружности V по оси Y
|
||
var x0V = 0; // центр в начале координат
|
||
var y0V = 0; // центр в начале координат
|
||
for (let i=0; i<=359; i++ ) {
|
||
xV_array.push(x0V + (Math.max(A0)+Math.max(A0)*0.1) * (Math.sin((i) * Math.PI / 180)));
|
||
yV_array.push(y0V + (Math.max(A0)+Math.max(A0)*0.1) * (Math.cos((i) * Math.PI / 180)));}
|
||
|
||
// определение модуля вектора Mb
|
||
Mb_calc = A0 / DCI;
|
||
// определение угла вектора Mb
|
||
if ((A0_phase - DCI_phase + 180) < 360) {
|
||
Mb_corner_calc = (A0_phase - DCI_phase + 180)
|
||
} else {Mb_corner_calc = (A0_phase - DCI_phase + 180) - 360}
|
||
// if ((m_test_corner + A0_phase - dA_phase + 180) < 360) {
|
||
// Mb_corner = (m_test_corner + A0_phase - dA_phase + 180)
|
||
// } else {Mb_corner = (m_test_corner + A0_phase - dA_phase + 180) - 360}
|
||
// определение угла наклона вектора балансировочного груза Mb_calc к осям X и Y
|
||
if (Mb_corner_calc <= 90) {
|
||
Mb_corner_calc_X = 90 - Mb_corner_calc}
|
||
if (Mb_corner_calc <= 180) {
|
||
Mb_corner_calc_X = Mb_corner_calc - 90}
|
||
if (Mb_corner_calc <= 270) {
|
||
Mb_corner_calc_X = 270 - Mb_corner_calc}
|
||
if (Mb_corner_calc <= 360) {
|
||
Mb_corner_calc_X = Mb_corner_calc - 270}
|
||
if (Mb_corner_calc <= 90) {
|
||
Mb_corner_calc_Y = Mb_corner_calc}
|
||
if (Mb_corner_calc <= 180) {
|
||
Mb_corner_calc_Y = 180 - Mb_corner_calc}
|
||
if (Mb_corner_calc <= 270) {
|
||
Mb_corner_calc_Y = Mb_corner_calc - 180}
|
||
if (Mb_corner_calc <= 360) {
|
||
Mb_corner_calc_Y = 360 - Mb_corner_calc}
|
||
// определение координат вектора балансировочного груза Mb_calc
|
||
Mb_1_calc_X = 0;
|
||
if (Mb_corner_calc <= 180) {Mb_2_calc_X = Math.abs(Math.cos(Mb_corner_calc_X * Math.PI/180)) * Mb_calc * (-1)
|
||
} else {Mb_2_calc_X = Math.abs(Math.cos(Mb_corner_calc_X * Math.PI/180)) * Mb_calc}
|
||
Mb_1_calc_Y = 0;
|
||
if (Mb_corner_calc <= 90 || Mb_corner_calc >= 270) {Mb_2_calc_Y = Math.abs(Math.cos(Mb_corner_calc_Y * Math.PI/180)) * Mb_calc
|
||
} else {Mb_2_calc_Y = Math.abs(Math.cos(Mb_corner_calc_Y * Math.PI/180)) * Mb_calc * (-1)}
|
||
|
||
// определение угла наклона вектора балансировочного груза Mb к осям X и Y
|
||
if (Mb_corner <= 90) {
|
||
Mb_corner_X = 90 - Mb_corner}
|
||
if (Mb_corner <= 180) {
|
||
Mb_corner_X = Mb_corner - 90}
|
||
if (Mb_corner <= 270) {
|
||
Mb_corner_X = 270 - Mb_corner}
|
||
if (Mb_corner <= 360) {
|
||
Mb_corner_X = Mb_corner - 270}
|
||
if (Mb_corner <= 90) {
|
||
Mb_corner_Y = Mb_corner}
|
||
if (Mb_corner <= 180) {
|
||
Mb_corner_Y = 180 - Mb_corner}
|
||
if (Mb_corner <= 270) {
|
||
Mb_corner_Y = Mb_corner - 180}
|
||
if (Mb_corner <= 360) {
|
||
Mb_corner_Y = 360 - Mb_corner}
|
||
// определение координат вектора балансировочного груза Mb
|
||
Mb_1_X = 0;
|
||
if (Mb_corner <= 180) {Mb_2_X = Math.abs(Math.cos(Mb_corner_X * Math.PI/180)) * Mb * (-1)
|
||
} else {Mb_2_X = Math.abs(Math.cos(Mb_corner_X * Math.PI/180)) * Mb}
|
||
Mb_1_Y = 0;
|
||
if (Mb_corner <= 90 || Mb_corner >= 270) {Mb_2_Y = Math.abs(Math.cos(Mb_corner_Y * Math.PI/180)) * Mb
|
||
} else {Mb_2_Y = Math.abs(Math.cos(Mb_corner_Y * Math.PI/180)) * Mb * (-1)}
|
||
|
||
|
||
// определение массы дисбаланса
|
||
Mdisb = Mb_calc; // равен массе балансировочного груза
|
||
// определение угла расположения дисбаланса
|
||
if ((Mb_corner_calc + 180) > 360) {
|
||
Mdisb_corner = (Mb_corner_calc + 180) - 360}
|
||
else if ((Mb_corner + 180) < 0) {
|
||
Mdisb_corner = (Mb_corner_calc + 180) + 360}
|
||
else {Mdisb_corner = (Mb_corner_calc + 180)}
|
||
// определение угла наклона вектора дисбаланса Mdisb к осям X и Y
|
||
if (Mdisb_corner <= 90) {
|
||
Mdisb_corner_X = 90 - Mdisb_corner}
|
||
if (Mdisb_corner <= 180) {
|
||
Mdisb_corner_X = Mdisb_corner - 90}
|
||
if (Mdisb_corner <= 270) {
|
||
Mdisb_corner_X = 270 - Mdisb_corner}
|
||
if (Mdisb_corner <= 360) {
|
||
Mdisb_corner_X = Mdisb_corner - 270}
|
||
if (Mdisb_corner <= 90) {
|
||
Mdisb_corner_Y = Mdisb_corner}
|
||
if (Mdisb_corner <= 180) {
|
||
Mdisb_corner_Y = 180 - Mdisb_corner}
|
||
if (Mdisb_corner <= 270) {
|
||
Mdisb_corner_Y = Mdisb_corner - 180}
|
||
if (Mdisb_corner <= 360) {
|
||
Mdisb_corner_Y = 360 - Mdisb_corner}
|
||
// определение координат вектора дисбаланса Mdisb
|
||
Mdisb_1_X = 0;
|
||
if (Mdisb_corner <= 180) {Mdisb_2_X = Math.abs(Math.cos(Mdisb_corner_X * Math.PI/180)) * Mdisb * (-1)
|
||
} else {Mdisb_2_X = Math.abs(Math.cos(Mdisb_corner_X * Math.PI/180)) * Mdisb}
|
||
Mdisb_1_Y = 0;
|
||
if (Mdisb_corner <= 90 || Mdisb_corner >= 270) {Mdisb_2_Y = Math.abs(Math.cos(Mdisb_corner_Y * Math.PI/180)) * Mdisb
|
||
} else {Mdisb_2_Y = Math.abs(Math.cos(Mdisb_corner_Y * Math.PI/180)) * Mdisb * (-1)}
|
||
|
||
|
||
// Координаты масс для визуализации
|
||
// определение координат точек окружности обозначения массы введённого балансировочного груза Mb
|
||
var x_Mb_array = []; // массив координат точек окружности расчётного Mb по оси X
|
||
var y_Mb_array = []; // массив координат точек окружности расчётного Mb по оси Y
|
||
var x0_Mb = Mb_2_X; // центр по X
|
||
var y0_Mb = Mb_2_Y; // центр по Y
|
||
for (let i=0; i<=359; i++ ) {
|
||
x_Mb_array.push(x0_Mb + (Math.max(Mb_calc,Mb,Mdisb)*0.1 * (Math.sin((i) * Math.PI / 180))));
|
||
y_Mb_array.push(y0_Mb + (Math.max(Mb_calc,Mb,Mdisb)*0.1 * (Math.cos((i) * Math.PI / 180))));}
|
||
// определение координат точек окружности обозначения массы расчётного балансировочного груза Mb_calc
|
||
var x_Mb_calc_array = []; // массив координат точек окружности Mb_calc по оси X
|
||
var y_Mb_calc_array = []; // массив координат точек окружности Mb_calc по оси Y
|
||
var x0_Mb_calc = Mb_2_calc_X; // центр по X
|
||
var y0_Mb_calc = Mb_2_calc_Y; // центр по Y
|
||
for (let i=0; i<=359; i++ ) {
|
||
x_Mb_calc_array.push(x0_Mb_calc + (Math.max(Mb_calc,Mb,Mdisb)*0.1 * (Math.sin((i) * Math.PI / 180))));
|
||
y_Mb_calc_array.push(y0_Mb_calc + (Math.max(Mb_calc,Mb,Mdisb)*0.1 * (Math.cos((i) * Math.PI / 180))));}
|
||
// определение координат точек окружности обозначения массы дисбаланса Mdisb
|
||
var x_Mdisb_array = []; // массив координат точек окружности Mdisb по оси X
|
||
var y_Mdisb_array = []; // массив координат точек окружности Mdisb по оси Y
|
||
var x0_Mdisb = Mdisb_2_X; // центр по X
|
||
var y0_Mdisb = Mdisb_2_Y; // центр по Y
|
||
for (let i=0; i<=359; i++ ) {
|
||
x_Mdisb_array.push(x0_Mdisb + (Math.max(Mb_calc,Mb,Mdisb)*0.1 * (Math.sin((i) * Math.PI / 180))));
|
||
y_Mdisb_array.push(y0_Mdisb + (Math.max(Mb_calc,Mb,Mdisb)*0.1 * (Math.cos((i) * Math.PI / 180))));}
|
||
// определение координат точек окружности графика для отображения расположения дисбаланса
|
||
var xD_array = []; // массив координат точек окружности D по оси X
|
||
var yD_array = []; // массив координат точек окружности D по оси Y
|
||
var x0D = 0; // центр в начале координат
|
||
var y0D = 0; // центр в начале координат
|
||
for (let i=0; i<=359; i++ ) {
|
||
xD_array.push(x0D + (Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.1) * (Math.sin((i) * Math.PI / 180)));
|
||
yD_array.push(y0D + (Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.1) * (Math.cos((i) * Math.PI / 180)));}
|
||
|
||
// Вычисление допустимого остаточного дисбаланса
|
||
U_per = (1000 * (G * P)) / (Math.PI * n / 30);
|
||
// Остаточный дисбаланс
|
||
U_res = Mdisb * R;
|
||
|
||
|
||
|
||
// Графики вибрации
|
||
plot_vibr.add(
|
||
{
|
||
color: 0x0000ff,
|
||
name: "Вибрация_A0",
|
||
x: xA0_array,
|
||
y: yA0_array,
|
||
});
|
||
plot_vibr.add(
|
||
{
|
||
color: 0x00ffffff,
|
||
name: "График векторов вибрации",
|
||
x: xV_array,
|
||
y: yV_array,
|
||
});
|
||
plot_vibr.add(
|
||
{
|
||
color: 0x00ffffff,
|
||
name: "границы",
|
||
x: [-(Math.max(A0)+Math.max(A0)*0.2), -(Math.max(A0)+Math.max(A0)*0.2), (Math.max(A0)+Math.max(A0)*0.2), (Math.max(A0)+Math.max(A0)*0.2)],
|
||
y: [(Math.max(A0)+Math.max(A0)*0.2), -(Math.max(A0)+Math.max(A0)*0.2), -(Math.max(A0)+Math.max(A0)*0.2), (Math.max(A0)+Math.max(A0)*0.2)]
|
||
});
|
||
|
||
plot_disb.add(
|
||
{
|
||
color: 0x00ff00,
|
||
name: "Балансировочный груз расчётный",
|
||
x: x_Mb_calc_array,
|
||
y: y_Mb_calc_array,
|
||
});
|
||
plot_disb.add(
|
||
{
|
||
color: 0x0fae1a,
|
||
name: "Балансировочный груз введённый",
|
||
x: x_Mb_array,
|
||
y: y_Mb_array,
|
||
});
|
||
plot_disb.add(
|
||
{
|
||
color: 0xff0000,
|
||
name: "Дисбаланс",
|
||
x: x_Mdisb_array,
|
||
y: y_Mdisb_array,
|
||
});
|
||
plot_disb.add(
|
||
{
|
||
color: 0x00ffffff,
|
||
name: "График расположения дисбаланса",
|
||
x: xD_array,
|
||
y: yD_array,
|
||
});
|
||
plot_disb.add(
|
||
{
|
||
color: 0x00ffffff,
|
||
name: "границы",
|
||
x: [-(Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2), -(Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2), (Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2), (Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2)],
|
||
y: [(Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2), -(Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2), -(Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2), (Math.max(Mb_calc,Mb,Mdisb)+Math.max(Mb_calc,Mb,Mdisb)*0.2)]
|
||
});
|
||
|
||
gtl.log.info("Mb (балансировочный груз расчёт)",Mb_calc);
|
||
gtl.log.info("Mb_corner (угол установки груза расчёт)",Mb_corner_calc);
|
||
gtl.log.info("Mb (балансировочный груз введён)",Mb);
|
||
gtl.log.info("Mb_corner (угол установки груза введён)",Mb_corner);
|
||
gtl.log.info("Mdisb (дисбаланс)",Mdisb);
|
||
gtl.log.info("Mdisb_corner (угол расположения дисбаланса)",Mdisb_corner);
|
||
gtl.log.info("A0",A0);
|
||
gtl.log.info("A0_phase",A0_phase);
|
||
gtl.log.info("модуль ДКВ", DCI);
|
||
gtl.log.info("фаза ДКВ", DCI_phase);
|
||
|
||
gtl.log.info("Допустимый остаточный дисбаланс", U_per);
|
||
gtl.log.info("Остаточный дисбаланс", U_res);
|
||
|
||
// Выдача результата (results)
|
||
let __result = {
|
||
_001_Част_вращ_обмин: n,
|
||
_002_Ампл_вибр_пуска_A0: A0,
|
||
_003_Фаза_вибр_пуска_A0: A0_phase,
|
||
_004_Масса_дисбаланса: Mdisb,
|
||
_005_Угол_дисбаланса: Mdisb_corner,
|
||
_006_Масса_баланс_груза_введён: Mb,
|
||
_007_Угол_баланс_груза_введён: Mb_corner,
|
||
_008_Масса_баланс_груза_расч: Mb_calc,
|
||
_009_Угол_баланс_груза_расч: Mb_corner_calc,
|
||
_010_Модуль_ДКВ: DCI,
|
||
_011_Фаза_ДКВ: DCI_phase,
|
||
_012_Допуст_ост_дисб_г_мм: U_per,
|
||
_013_Остат_дисб_г_мм: U_res
|
||
};
|
||
|
||
gtl.results = {"result": __result};
|
||
|
||
gtl.diagnostic.stop();
|
||
|
||
// break;
|
||
|
||
// default:
|
||
// break;
|
||
// }
|
||
} |