Gtl.create phase: различия между версиями

Материал из GTL-wiki
Перейти к навигации Перейти к поиску
(Новая страница: «thumb|Амплитудный и фазовый спектры сдвинутой во времени периодической последовательности прямоугольных импульсов == Краткое описание == Функция предназначена для построения фазового спектра (множество начальных фаз гармоническ...»)
 
Нет описания правки
Строка 5: Строка 5:
== Объявление функции ==
== Объявление функции ==
<pre style="color: purple>
<pre style="color: purple>
var apfc = gtl.add_apfc(
var phase = gtl.create_phase(
     {
     {
       "src1" : gtl.analog_inputs[0],
       "src": gtl.analog_inputs[0],
       "src2" : gtl.analog_inputs[1],
       "frequency": 1000,
      "name" : "coh",
       "resolution": 1,
      "color" : 0xff0000,
       "view": gtl.phase.deg,
      "visible" : true,
       "window": gtl.spec.rectangular
      "freq" : 1000.0,
      "window" : gtl.spec.rectangular,
       "resolution" : 1.0,
       "average" : 1,
      "overlap" : 0,
      "afc" : gtl.apfc.coherence,
       "pfc" : gtl.apfc.deg
     }
     }
);
);
Строка 24: Строка 17:


== Свойства (методы) ==
== Свойства (методы) ==
:<code style="color: purple>В разработке...</code>
:<code style="color: purple>phase.src = gtl.analog_inputs[0];</code> - источник сигнала;
:<code style="color: purple>phase.frequency = 1000;</code> - граничная частота, Гц;
:<code style="color: purple>phase.resolution= 1;</code> - частотное разрешение;
:<code style="color: purple>phase.wiev = gtl.phase.deg;</code> - отображение фазы в радианах (градусах);
<pre>
deg;
rad;
</pre>
:<code style="color: purple>phase.window = gtl.spec.rectangular;</code> - тип окна;
<pre>
rectangular;
cosin;
hann;
bartlett_hann;
hamming;
blackman;
blackman_harris;
flattop;
half_rect;
</pre>
:<code style="color: purple>phase.data;</code> - массив рассчитанных значений;


== Пример использования ==
== Пример использования ==
<pre>
var phase0 = gtl.create_phase(
var apfc = gtl.add_apfc(
     {
     {
       "src1" : gtl.analog_inputs[0],
       "src": gtl.analog_inputs[0],
       "src2" : gtl.analog_inputs[1],
       "frequency": 1000,
      "name" : "coh",
       "resolution": 1,
      "color" : 0xff0000,
       "view": gtl.phase.deg,
      "visible" : true,
       "window" : gtl.spec.rectangular
      "freq" : 1000.0,
      "window" : gtl.spec.rectangular,
       "resolution" : 1.0,
       "average" : 1,
      "overlap" : 0,
      "afc" : gtl.apfc.coherence,
       "pfc" : gtl.apfc.deg
     }
     }
);
);


var apfc1 = gtl.add_apfc(
var phase1 = gtl.create_phase(
     {
     {
       "src1" : gtl.analog_inputs[0],
       "src": gtl.analog_inputs[1],
      "src2" : gtl.analog_inputs[1],
       "frequency": 1000,
       "name" : "mag",
       "resolution": 1,
      "color" : 0x0000ff,
       "view": gtl.phase.deg,
      "visible" : true,
       "window": gtl.spec.rectangular
      "freq" : 1000.0,
      "window" : gtl.spec.rectangular,
       "resolution" : 1.0,
       "average" : 1,
      "overlap" : 0,
      "afc" : gtl.apfc.magnitude,
       "pfc" : gtl.apfc.deg
     }
     }
);
);


gtl.diagnostic.interval = apfc.acq_time+0.1;
 
gtl.log.info("acq time", phase0.acq_time);
gtl.diagnostic.interval = phase0.acq_time + 0.1 // пока так, исправим;
 
let plot = gtl.plots.add("plot");


function diagnose()
function diagnose()
{
{
   gtl.log.info("afc", apfc.data[50]);
   plot.add(
   gtl.log.info("pfc", apfc.phase[50]);
    {
  gtl.log.info("acq_time", apfc.acq_time+0.1);
      color: 0xff0000,
 
      name: "phase0",
      x: phase0.resolution,
      y: phase0.data
    }
  )
 
   plot.add(
    {
      color: 0x0000ff,
      name: "phase1",
      x: phase1.resolution,
      y: phase1.data
    }
  )
 
   gtl.diagnostic.stop();
   gtl.diagnostic.stop();
};
}
</pre>
</pre>

Версия от 01:51, 20 августа 2024

Амплитудный и фазовый спектры сдвинутой во времени периодической последовательности прямоугольных импульсов

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

Функция предназначена для построения фазового спектра (множество начальных фаз гармонических колебаний кратных частот). Применяется для решения специфических задач анализа параметров сигналов вибрации. Входными данными служат сигналы (массивы).

Объявление функции

var phase = gtl.create_phase(
    {
      "src": gtl.analog_inputs[0],
      "frequency": 1000,
      "resolution": 1,
      "view": gtl.phase.deg,
      "window": gtl.spec.rectangular
    }
);

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

phase.src = gtl.analog_inputs[0]; - источник сигнала;
phase.frequency = 1000; - граничная частота, Гц;
phase.resolution= 1; - частотное разрешение;
phase.wiev = gtl.phase.deg; - отображение фазы в радианах (градусах);
deg;
rad;
phase.window = gtl.spec.rectangular; - тип окна;
rectangular;
cosin;
hann;
bartlett_hann;
hamming;
blackman;
blackman_harris;
flattop;
half_rect;
phase.data; - массив рассчитанных значений;

Пример использования

var phase0 = gtl.create_phase(

   {
     "src": gtl.analog_inputs[0],
     "frequency": 1000,
     "resolution": 1,
     "view": gtl.phase.deg,
     "window" : gtl.spec.rectangular
   }

);

var phase1 = gtl.create_phase(

   {
     "src": gtl.analog_inputs[1],
     "frequency": 1000,
     "resolution": 1,
     "view": gtl.phase.deg,
     "window": gtl.spec.rectangular
   }

);


gtl.log.info("acq time", phase0.acq_time); gtl.diagnostic.interval = phase0.acq_time + 0.1 // пока так, исправим;

let plot = gtl.plots.add("plot");

function diagnose() {

 plot.add(
   {
     color: 0xff0000,
     name: "phase0",
     x: phase0.resolution,
     y: phase0.data
   }
 )
 plot.add(
   {
     color: 0x0000ff,
     name: "phase1",
     x: phase1.resolution,
     y: phase1.data
   }
 )
 gtl.diagnostic.stop();

}