• Регистрация
Andrey-M
Andrey-M +16.10
н/д

Векторная диаграмма

18.05.2019

Подскажите, пожалуйста, как можно строить векторные диаграммы синусоидальных сигналов в SPS?

Теги

    18.05.2019

    Ответы

    • MaximSidorov
      MaximSidorov+118.29
      18.05.2019 17:53

      1. В Simulink c помощью Fourier определяем амплитуды и фазы нужных сигналов. Если какой-то сигнал требуется принять за опорный, то значение фазы этого сигнала вычитаем из фаз всех остальных сигналов.

      2. Записываем в Workspace установившиеся значения сигналов блоком Triggered To Workspace. Пусть в результате будем иметь в Workspace вектор Current, содержащий два значения - амплитуду и фазу тока и вектор Voltage, содержащий два значения - амплитуду и фазу напряжения.

      3. Вычисляем действующие значения тока и напряжения и их фазы (в радианах):

      RMS_Current = Current(1)/sqrt(2);
      
      Phase_Current = Current(2)*pi/180;
      
      RMS_Voltage = Voltage(1)/sqrt(2);
      
      Phase_Voltage = Voltage(2)*pi/180;

      4. Вычисляем проекции векторов на действительную и мнимую оси. Например:

      X_Current = RMS_Current*cos(Phase_Current); 
      Y_Current = RMS_Current*sin(Phase_Current); 
      
      X_Voltage = RMS_Voltage*cos(Phase_Voltage); 
      Y_Voltage = RMS_Voltage*sin(Phase_Voltage); 
      
      

      4. Строим линии векторов и отмечаем маркерами концы векторов. Что-то типа: plot([0 X_Current],[0 Y_Current],'r.-',X_Current, Y_Current,'rs-',[0 X_Voltage], [0 Y_Voltage],'b.-',X_Voltage, Y_Voltage,'bs-');

      И получаем нечто похожее на векторную диаграмму.

      Но... Дело в том, что на построенной диаграмме (объект figure) есть возможность строить стрелки - кнопка "Insert Arrow". Подозреваю, что эти стрелки можно строить и программно. Правда придется все самому программировать...

       

      А еще можно скачать функцию Arrow3 и строить векторы:

      Arrow3([0 0; 0 0],[X_Current Y_Current; X_Voltage Y_Voltage],'-b1.5',2);