exponenta event banner

setBlockRateConversion

Установка параметров преобразования тарифов для настроенного блока в slTuner интерфейс

Описание

При использовании systune с Simulink ® настройка выполняется с частотой выборки, указанной вTs имущества slTuner интерфейс. При использовании writeBlockValue чтобы записать настроенные параметры обратно в модель Simulink, каждое значение настроенного блока автоматически преобразуется из времени выборки, используемого для настройки, в время выборки блока Simulink. Метод преобразования скорости, связанный с каждым настроенным блоком, определяет способ выполнения этой операции повторной выборки. Использовать getBlockRateConversion для запроса коэффициента преобразования блоков и использования setBlockRateConversion для его изменения.

setBlockRateConversion(st,blk,method) устанавливает метод преобразования скорости настроенного блока в slTuner интерфейс, st.

setBlockRateConversion(st,blk,'tustin',pwf) устанавливает метод Tustin в качестве метода преобразования курса для blk, с pwf в качестве предвоенной частоты.

пример

setBlockRateConversion(st,blk,IF,DF) устанавливает методы дискретизации для членов интегратора и производного фильтра, когда blk является непрерывным блоком контроллера PID. Для блоков PID дискретного времени эти методы указаны в блоке Simulink и не могут быть изменены в slTuner интерфейс.

Примеры

свернуть все

Создание slTuner интерфейс для модели Simulink scdcascade. Установите настройки преобразования частоты блоков одного из настроенных блоков.

open_system('scdcascade');
st = slTuner('scdcascade',{'C1','C2'});

Проверить преобразование скорости блока по умолчанию для блока контроллера PID C1.

[IF,DF] = getBlockRateConversion(st,'C1')
IF =

    'Trapezoidal'


DF =

    'Trapezoidal'

По умолчанию методы интегратора и контроллера фильтра производных являются Trapezoidal. Установите для интегратора значение BackwardEuler и производной к ForwardEuler.

IF = 'BackwardEuler';
DF = 'ForwardEuler';
setBlockRateConversion(st,'C1',IF,DF);

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

свернуть все

Интерфейс для настройки систем управления, смоделированных в Simulink, указанный как slTuner интерфейс.

Блок в списке настроенных блоков для st, указанный как символьный вектор или строка. Можно указать полный путь блока или любую часть пути блока, которая однозначно идентифицирует блок среди других настроенных блоков st.

Пример: blk = 'scdcascade/C1', blk = "C1"

Метод преобразования ставок, связанный с blk, указано как одно из следующих:

  • 'zoh' - Удержание нулевого порядка на входах. Этот метод является методом преобразования скорости по умолчанию для большинства динамических блоков.

  • 'foh' - Линейная интерполяция входов.

  • 'tustin' - Билинейное (Тустинское) приближение. При необходимости задайте частоту предвоенной операции с помощью pwf аргумент для лучшего согласования в частотной области между исходной динамикой и динамикой, преобразованной по скорости, вблизи предвоенной частоты.

  • 'matched' - Согласованный метод полюс-ноль. Этот метод доступен только для блоков SISO.

Дополнительные сведения об этих методах преобразования скорости см. в разделе Методы непрерывного дискретного преобразования.

Предвоенная частота для метода Тастина, заданная как положительный скаляр.

Интегратор и методы фильтрации для преобразования скорости блока контроллера PID, каждый из которых определен как один из следующих:

  • 'ForwardEuler' - Состояние интегратора или производного фильтра дискретизировано как Ts/(z-1)

  • 'BackwardEuler'Ts*z/(z-1)

  • 'Trapezoidal'(Ts/2)*(z+1)/(z-1)

Для блоков PID непрерывного времени по умолчанию используются следующие методы: 'Trapezoidal' как для интегратора, так и для производного фильтра. Этот метод аналогичен методу Тастина.

Для дискретно-временных блоков PID, IF и DF определяются параметрами метода Integrator и метода Filter в блоке Simulink и не могут быть изменены с помощью setBlockRateConversion.

См. дискретный PID-контроллер и pid для получения более подробной информации о методах интегратора и фильтра.

Подробнее

свернуть все

Настроенный блок

Настроенные блоки, используемые slTuner определите блоки в модели Simulink, параметры которых должны быть настроены в соответствии с целями настройки. Можно настроить большинство блоков Simulink, которые представляют линейные элементы, такие как коэффициенты усиления, передаточные функции или модели пространства состояний. (Полный список блоков, поддерживающих настройку, см. в разделе Как параметризованы настроенные блоки Simulink). Можно также настроить более сложные блоки, такие как блоки субсистемы или S-функции, указав эквивалентную настраиваемую линейную модель.

Используйте команды настройки, такие как systune для настройки параметров настроенных блоков.

Необходимо указать настроенные блоки (например, C1 и C2) при создании slTuner интерфейс.

st = slTuner('scdcascade',{'C1','C2'})

Изменить список настроенных блоков можно с помощью addBlock и removeBlock.

Для взаимодействия с настроенными блоками используйте:

  • getBlockParam, getBlockValue, и getTunedValue для доступа к настроенным параметризациям блока и их текущим значениям.

  • setBlockParam, setBlockValue, и setTunedValue для изменения параметров настроенного блока и их значений.

  • writeBlockValue обновление блоков в модели Simulink текущими значениями параметризаций настроенного блока.

Совет

  • Для блоков дискретизации модели метод преобразования скорости задается в блоке Simulink и не может быть изменен с помощью setBlockRateConversion.

  • Для статических блоков, таких как блоки Gain или Lookup Table, метод преобразования частоты блоков игнорируется.

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