Gtld speс params: различия между версиями

Материал из GTL-wiki
Перейти к навигации Перейти к поиску
(Новая страница: «== Краткое описание == Функция для расчета рекомендуемых параметров спектра вибрации таких как граничная частота (ширина), частотное разрешение и количество линий в зависимости от исследуемого объекта диагностики. Функция возвращает объект с указанны...»)
 
Строка 13: Строка 13:


== Результат ==
== Результат ==
:<code style="color: purple>speс_params().width;</code> - граничная частота (ширина), Гц;
:<code style="color: purple>speс_params().width;</code> - граничная частота спектра (ширина), Гц;
:<code style="color: purple>speс_params().lines;</code> - количество линий, шт;
:<code style="color: purple>speс_params().lines;</code> - количество линий, шт;
:<code style="color: purple>speс_params().resolution;</code> - частотное разрешение спектра;
:<code style="color: purple>speс_params().resolution;</code> - частотное разрешение спектра;

Версия от 05:37, 8 апреля 2024

Краткое описание

Функция для расчета рекомендуемых параметров спектра вибрации таких как граничная частота (ширина), частотное разрешение и количество линий в зависимости от исследуемого объекта диагностики. Функция возвращает объект с указанными параметрами. При этом все рассчитанные параметры приводятся к стандартизованным значениям.

Cодержание функции будет дополняться!

Синтаксис

Стандартная конструкция выглядит таким образом:

speс_params();

Свойства (методы)

rms.name = "RMS"; - присвоение имени измерения СКЗ;
rms.time = 0.5; - интервал расчета СКЗ, сек;
rms.avg_cnt = 4; - количество отсчетов для усреднения;

Результат

speс_params().width; - граничная частота спектра (ширина), Гц;
speс_params().lines; - количество линий, шт;
speс_params().resolution; - частотное разрешение спектра;

Содержание функции

function spec_params() {
    let wdt = 200; //ширина спектра
    let res = 400; //частотное разрешение
    function getStandart(value) {
        let arr = [50, 100, 200, 400, 800, 1600, 3200]; //массив стандартных величин
        let t = arr[0];
        if (value >= arr[arr.length - 1]) { t = arr[arr.length - 1] } else {
            for (i = 0; i <= arr.length - 1; i++) {
                if (value > arr[i]) { t = arr[i + 1] };
            };
        }; return t
    };

    switch (options.objectType) {
        case 0: //объект не выбран
            break;
        case 1: //подшипник скольжения
            wdt = 20 * FREQ();
            res = FREQ() / 8;
            break;
        case 2: //подшипник качения
            wdt = 3 * BPFI() + 4 * FREQ();
            res = FREQ() / 8;
            break;
        case 3: //ШВП
            wdt = 3 * BPFI() + 4 * FREQ();
            res = FREQ() / 8;
            break;
        case 4: //редуктор
            wdt = 3 * GTFZ() + 4 * FREQ();
            res = FREQ() / 8;
            break;
        case 5: //ременная передача
            wdt = 400;
            res = BDFB() / 4;
            break;
        case 6: //зубчатый ремень
            wdt = 400;
            res = CBDFB() / 4;
            break;
        case 7: //помпа
            wdt = 3 * PMFBLD() + 4 * FREQ();
            res = FREQ() / 8;
            break;
        case 8: //планетарый редуктор
            wdt = 3 * PGFZ() + 4 * FREQ();
            res = PGF2() / 8;
            break;
        case 9: //турбина
            wdt = 3 * TRFBLD() + 4 * FREQ();
            res = FREQ() / 8;
            break;
        case 10: //электродвигатель
            wdt = 400;
            res = FREQ() / 8;
            break;
    }; return { width: getStandart(wdt), lines: getStandart(wdt / res), resolution: getStandart(wdt) / getStandart(wdt / res) };
};