setBlockRateConversion

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

Описание

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

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

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

пример

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

Примеры

свернуть все

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

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

Исследуйте преобразование блочной скорости по умолчанию на блок PID Controller 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, заданный как вектор символов или строка. Можно задать полный блок path или любой фрагмент блока path, который однозначно определяет блок среди других настроенных блоков st.

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

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

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

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

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

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

Для более подробной информации об этих методах преобразования уровня см. Непрерывно-дискретные Методы Преобразования (Control System Toolbox).

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

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

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

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

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

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

Для блоков ПИДа дискретного времени, IF и DF определяются настройками Integrator method и Filter method в блоке Simulink и не может быть изменен с setBlockRateConversion.

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

Больше о

свернуть все

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

Tuned blocks, используемый slTuner соедините интерфейсом, идентифицируйте блоки в модели Simulink, параметры которой должны быть настроены, чтобы удовлетворить настраивающимся целям. Можно настроить большинство блоков Simulink, которые представляют линейные элементы, такие как усиления, передаточные функции или модели в пространстве состояний. (Для полного списка блоков, которые поддерживают настройку, смотрите, Как Настроенные блоки Simulink Параметризованы). Можно также настроить более комплексные блоки, такие как SubSystem или Блоки s-function путем определения эквивалентной настраиваемой линейной модели (Control System Toolbox).

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

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

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

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

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

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

  • setBlockParam, setBlockValue, и setTunedValue изменить настроенную параметризацию блока и их значения.

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

Советы

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

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

Введенный в R2014a