exponenta event banner

ee_getHarmonics

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

Описание

пример

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

Функция находит точки в i-ом сигнале, где журнал Simscape™ пересекает порог (offsetOfInterest). Точки пересечения используются для поиска требуемого количества периодов (nPeriodOfInterest), предшествующих указанному времени (tOfInterest). Затем он вводит выбранные вниз данные в алгоритм Гертцеля, который вычисляет гармонические величины до требуемого количества гармоник включительно (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, который содержит данные от трехфазного тока. Функция анализирует сигнал по умолчанию, который является первым, или a-фазным, сигналом в конечное время моделирования. Функция использует значения по умолчанию 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, указанный как 1 на 1 simscape.logging.Node. Вы создаете simscape.logging.Node путем выполнения моделирования с включенным протоколированием Simscape. Дополнительные сведения см. в разделе Включение регистрации данных для всей модели.

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

Симлог узла регистрации Simscape. Load.V содержит данные от трехфазного напряжения.

Индексировать в данные значения, указанные как скаляр. Указывает i-ю интересующую переменную в журнале 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

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

Пример: 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 до числа гармоник, использованных в анализе включительно, возвращаются в виде вектора.

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

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

Ограничения

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

    Комбинация конфигурацииКонфигурация глобального решателяКонфигурация локального решателя
    Глобальный переменный шаг с локальным фиксированным шагомЗадать тип для Variable-stepВключить параметры Использовать локальный решатель и Использовать итерации согласованности среды выполнения с фиксированной стоимостью
    Глобальный и локальный фиксированный шагЗадать тип для Fixed-stepВключить параметры Использовать локальный решатель и Использовать итерации согласованности среды выполнения с фиксированной стоимостью
    Глобальный фиксированный шагЗадать тип для Fixed-stepСнимите флажок Использовать локальный решатель

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

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

    • Увеличьте время моделирования.

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

Представлен в R2014a