ee_getHarmonics

Возвратите гармонические порядки, величины и основную частоту

Описание

пример

[harmonicOrder,harmonicMagnitude,fundamentalFrequency] =...
ee_getHarmonics(loggingNode)
вычисляет гармонические порядки, величины и основную частоту simscape.logging.Node из AC или периодической переменной.

Функция находит точки в сигнале ith (valueIdx), где журнал Simscape™ пересекает порог (offsetOfInterest). Это использует точки пересечения, чтобы найти необходимое количество периодов (nPeriodOfInterest) предшествованием требуемому времени (tOfInterest). Затем это вводит вниз выбранные данные к алгоритму Goertzel, который вычисляет гармонические величины до и включая необходимое количество гармоник (nHarmonic).

Вы вводите входные параметры в определенный порядок. Simscape, регистрирующий входной параметр узла, требуется. Все другие входные параметры являются дополнительными и имеют значения по умолчанию. Если вы задаете значение для последующего дополнительного входного параметра, введите [] использовать значение по умолчанию в дополнительном входном параметре.

Можно использовать ee_plotHarmonics функция, чтобы получить столбчатую диаграмму из тех же входных параметров. Можно использовать выходные параметры этой функции как входные параметры к ee_calculateThdPercent функция, чтобы вычислить процент общего гармонического искажения (THD).

[harmonicOrder,harmonicMagnitude,fundamentalFrequency] =...
ee_getHarmonics(loggingNode,valueIdx)
использует индекс в данные о значении.

[harmonicOrder,harmonicMagnitude,fundamentalFrequency] =...
ee_getHarmonics(loggingNode,valueIdx,tOfInterest)
использует время симуляции.

[harmonicOrder,harmonicMagnitude,fundamentalFrequency] =...
ee_getHarmonics(loggingNode,valueIdx,tOfInterest,nPeriodOfInterest)
использует количество периодов основной частоты.

[harmonicOrder,harmonicMagnitude,fundamentalFrequency] =...
ee_getHarmonics(loggingNode,valueIdx,tOfInterest,nPeriodOfInterest,...
offsetOfInterest)
использует смещение DC.

[harmonicOrder,harmonicMagnitude,fundamentalFrequency] =...
ee_getHarmonics(loggingNode,valueIdx,tOfInterest,nPeriodOfInterest,...
offsetOfInterest,nHarmonic)
использует количество гармоник.

Примеры

Анализируйте Используя значения по умолчанию

Этот набор аргументов функции использует Simscape, регистрирующий узел simlog_ee_harmonics_rectifier.Sensing_current.Current_Sensor.I, который содержит данные из трехфазного тока. Функция анализирует сигнал по умолчанию, который является первым, или фаза, сигнал в итоговом времени симуляции. Функция использует значения по умолчанию 12 для количества периодов сигнала, 0V для смещения сигнала, и 30 для количества гармоник.

open_system('ee_harmonics_rectifier')
sim('ee_harmonics_rectifier')
[~,harmonicMagnitude,~]= ee_getHarmonics(simlog_ee_harmonics_rectifier.Sensing_current.Current_Sensor.I);
%harmonicMagnitude stores the peak values of the harmonics. To get the RMS values, divide by sqrt(2)
harmonicMagnitude./sqrt(2)
ans =

   1.0e+03 *

  Columns 1 through 14

    0.0000    1.3759    0.0000    0.0000    0.0000    0.1548    0.0000    0.0748    0.0000    

    0.0000    0.0000    0.0602    0.0000    0.0407

  Columns 15 through 28

    0.0000    0.0000    0.0000    0.0357    0.0000    0.0266    0.0000    0.0000    
    
    0.0000    0.0239    0.0000    0.0187    0.0000    0.0000

  Columns 29 through 31

    0.0000    0.0170    0.0000

Анализируйте Используя заданные значения

Этот набор аргументов функции использует Simscape, регистрирующий узел simlog_ee_harmonics_rectifier.Sensing_current.Current_Sensor.I, который содержит данные из трехфазного тока. Функция анализирует второе, или b-фаза, сигнал во времени симуляции 0.5 s. Функция использует 10 периоды сигнала, принимая смещение 1V. Функция анализирует 15 гармоники.

open_system('ee_harmonics_rectifier')
sim('ee_harmonics_rectifier')
[~,harmonicMagnitude,~]= ee_getHarmonics(simlog_ee_harmonics_rectifier.Sensing_current.Current_Sensor.I,2,0.5,10,1,15);
%harmonicMagnitude stores the peak values of the harmonics. To get the RMS values, divide by sqrt(2)
harmonicMagnitude./sqrt(2)
ans =

   1.0e+03 *

  Columns 1 through 15

    0.0000    1.3761    0.0008    0.0005    0.0006    0.1544    0.0000    0.0748    0.0003    

    0.0002    0.0003    0.0599    0.0001    0.0407    0.0004

  Column 16

    0.0003

Анализируйте Используя значения по умолчанию и заданные значения

Этот набор аргументов функции использует Simscape, регистрирующий узел simlog_ee_harmonics_rectifier.Sensing_current.Current_Sensor.I, который содержит данные из трехфазного тока. Функция анализирует первое, или фаза, сигнал во времени симуляции 0.5 s. Функция использует 12 периоды сигнала, принимая смещение 1V. Функция анализирует номер по умолчанию, 30, из гармоник.

open_system('ee_harmonics_rectifier')
sim('ee_harmonics_rectifier')
[~,harmonicMagnitude,~]= ee_getHarmonics(simlog_ee_harmonics_rectifier.Sensing_current.Current_Sensor.I,[],0.5,[],1);
%harmonicMagnitude stores the peak values of the harmonics. To get the RMS values, divide by sqrt(2)
harmonicMagnitude./sqrt(2)
ans =

   1.0e+03 *

  Columns 1 through 15

    0.0000    1.3759    0.0000    0.0000    0.0000    0.1548    0.0000    0.0748    0.0000 
 
    0.0000    0.0000    0.0602    0.0000    0.0407    0.0000

  Columns 16 through 30

    0.0000    0.0000    0.0357    0.0000    0.0266    0.0000    0.0000    0.0000    0.0239   

    0.0000    0.0187    0.0000    0.0000    0.0000    0.0170

  Column 31

    0.0000

Входные параметры

свернуть все

Узел логгирования Simscape, заданный как simscape.logging.Node 1 на 1. Вы создаете simscape.logging.Node путем выполнения симуляции с включенным логгированием Simscape. Для получения информации смотрите, Включают Регистрацию данных для Целой Модели (Simscape).

Пример: simlog.Load.V

Simscape, регистрирующий узел simlog.Load.V, содержит данные из трехфазного напряжения.

Индексируйте в данные о значении, заданные как скаляр. Задает ith переменную интереса к журналу Simscape.

Пример 2

Задайте b-фазу, которая является вторым сигналом от трехфазного напряжения.

Пример: []

Используйте [], чтобы задать значение по умолчанию 1. Фаза, которая является первым сигналом от трехфазного напряжения, является сигналом по умолчанию интереса.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Представляющее интерес время симуляции для гармонического анализа, заданного как скаляр.

Пример: 0.5

Задайте 0,5 времени симуляции с.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Количество периодов основной частоты, которая будет включена в гармонический анализ, заданный как скаляр.

Пример: 10

Задайте 10 периоды сигнала.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Смещение DC во входном сигнале, заданном как скаляр. Функция использует это значение, чтобы найти периоды интересным.

Пример 1

Задайте смещение 1 V для сигнала.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Количество гармоник, чтобы включать в анализ, заданный как скаляр.

Пример: 15

Укажите, что количеством гармоник, которые будут анализироваться, является 15.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Выходные аргументы

свернуть все

Гармонические порядки от 0 до и включая количество гармоник, используемых в анализе, возвращенном как вектор.

Гармонические величины от 0th гармоники до и включая количество гармоник, используемых в анализе, возвращенном как вектор.

Основная частота в области значений вниз выбранных входных данных, возвращенных как скаляр.

Ограничения

  • Эта функция требует, чтобы вы использовали решатель фиксированного шага в сети Simscape Electrical™ Power Systems, которую вы анализируете. Чтобы задать решатель фиксированного шага для физической сети, используйте одну из комбинаций настройки в таблице.

    Комбинация настройкиГлобальная настройка решателяЛокальная настройка решателя
    Шаг глобальной переменной с локальным фиксированным шагомУстановите Type на Variable-stepВключите опции к Use local solver и Use fixed-cost runtime consistency iterations
    Глобальный и локальный фиксированный шагУстановите Type на Fixed-stepВключите опции к Use local solver и Use fixed-cost runtime consistency iterations
    Глобальный фиксированный шагУстановите Type на Fixed-stepОчистите опцию к Use local solver

  • Эта функция использует пороговые точки пересечения, чтобы определить основную частоту данных. Если ваши входные данные являются шумными или пересекают порог более часто, чем половина основного периода, отфильтруйте его, прежде чем вы будете использовать эту функцию, чтобы анализировать его.

  • Эта функция требует минимального количества периодов. Если минимальному номеру не соответствуют, функция генерирует предупреждающее сообщение. Чтобы увеличить число периодов, используйте один или оба из этих методов:

    • Увеличьте время симуляции.

    • Увеличьте переключающуюся частоту.

Введенный в R2014a