Discretizer модели

Каков Discretizer Модели?

Discretizer модели выборочно заменяет непрерывные блоки Simulink® на дискретные эквиваленты. Дискретизация является критическим шагом в цифровом проектировании контроллера и для оборудования симуляции в цикле.

Можно использовать Discretizer Модели для:

  • Идентифицируйте непрерывные блоки модели

  • Измените параметры блока от непрерывного до дискретного

  • Примените настройки дискретизации ко всем непрерывным блокам в модели или выбранным блокам

  • Создайте различные подсистемы, которые содержат несколько кандидатов дискретизации наряду с исходным непрерывным блоком (блоками)

  • Переключитесь среди различных кандидатов дискретизации и оцените получившиеся симуляции модели

Discretizer Модели не поддерживает замаскированные подсистемы.

Требования

Использовать Discretizer Модели

  • У вас должны быть лицензия Control System Toolbox™, Версия 5.2 или позже.

  • Убедитесь, что ваша модель не содержит устаревших блоков и обновляется до текущей версии Simulink. Для получения дополнительной информации смотрите Обновление моделей

  • Необходимо преобразовать конфигурируемые блоки подсистемы в существующих моделях к Различной Подсистеме. Для получения дополнительной информации смотрите, Преобразуют Конфигурируемую Подсистему в Различную Подсистему.

Дискретизируйте модель с Discretizer Модели

Дискретизировать модель:

  • Запустите Discretizer Модели

  • Задайте метод преобразования

  • Задайте шаг расчета

  • Задайте метод дискретизации

  • Дискретизируйте блоки

f14 модель показывает шаги в дискретизации модели.

Запустите Discretizer Модели

Чтобы открыть инструмент, в Редакторе Simulink, на вкладке Apps, под Apps, под Control Systems, нажимают Model Discretizer.

Модель Simulink Discretizer открывается.

В качестве альтернативы можно открыть Discretizer Модели из Командного окна MATLAB® с помощью slmdldiscui функция.

Следующая команда открывает окно Simulink Model Discretizer с f14 модель:

slmdldiscui('f14')

Чтобы открыть новую модель или библиотеку от Discretizer Модели, выберите File> Load model.

Задайте метод преобразования

Метод преобразования задает тип алгоритмов, используемых в дискретизации. Для получения дополнительной информации о различном преобразуйте методы, смотрите Control System Toolbox.

Список Transform method содержит следующие опции:

  • Zero-order hold

    Нулевой порядок держится входные параметры.

  • First-order hold

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

  • Tustin

    Билинейный (Тастин) приближение.

  • Tustin with prewarping

    Приближение Тастина с предварительным деформированием частоты.

  • Matched pole-zero

    Совпадающий нулевой полюсом метод (только для систем SISO).

Задайте шаг расчета

Введите шаг расчета в поле Шага расчета. Для Discretizer Модели это значение должно быть числовым.

Можно задать время смещения путем ввода двухэлементного вектора для дискретных блоков или различных подсистем. Первым элементом является шаг расчета, и вторым элементом является время смещения. Например, запись [1.0 0.1] задала бы 1,0 вторых шага расчета с 0,1 вторыми смещениями. Если никакое смещение не задано, значением по умолчанию является нуль.

Можно ввести переменные рабочей области при дискретизации блоков в s-области. Смотрите Дискретные блоки (Введите параметры в s-область).

Задайте метод дискретизации

Задайте метод дискретизации в Замене текущий выбор с полем. Опции

Дискретные блоки (Вводят параметры в s-область).  Создает дискретный блок, параметры которого сохраняются от соответствующего непрерывного блока. Шаг расчета и параметры дискретизации находятся также на диалоговом окне параметра блока.

Блок реализован как дискретный блок маскированный, который использует c2d (Control System Toolbox), чтобы преобразовать непрерывные параметры к дискретным параметрам в коде инициализации маски.

Эти блоки имеют уникальную возможность возвращения к непрерывному поведению, если шаг расчета изменяется на нуль. Ввод шага расчета как переменная рабочей области ('Ts', например), допускает легкое переключение от непрерывного до дискретного и назад снова. Смотрите Задают Шаг расчета.

Примечание

Если вы, сгенерированный код из модели, параметры не являются настраиваемыми, когда поведение параметра По умолчанию установлено в Inlined в диалоговом окне Configuration Parameters модели.

Следующий рисунок показывает непрерывный блок Transfer Function рядом с блоком Transfer Function, который был дискретизирован в s-области с Тастином, преобразовывают метод. Диалоговое окно параметров блоков для каждого блока появляется ниже блока.

Дискретные блоки (Вводят параметры в z-область).  Создает дискретный блок, параметры которого являются “трудно закодированными” значениями, помещенными непосредственно в диалоговое окно блока. Модель Дискретизер использует c2d (Control System Toolbox) функция, чтобы получить дискретизированные параметры, в случае необходимости.

Для большего количества справки на c2d (Control System Toolbox) функция, введите следующее в Командном окне:

help c2d

Следующий рисунок показывает непрерывный блок Transfer Function рядом с блоком Transfer Function, который был дискретизирован в z-области. Диалоговое окно параметров блоков для каждого блока появляется ниже блока.

Примечание

Если вы хотите восстановить точно исходные непрерывные значения параметров после сеанса Дискретизации Модели, необходимо ввести параметры в s-область.

Различная подсистема (Вводят параметры в s-область).  Создайте несколько кандидатов дискретизации, использующих s-значения-домена для текущего выбора. Создает дискретный блок, параметры которого сохраняются от соответствующего непрерывного блока. ​

Местоположение для блока в поле Variant Subsystem становится активным, когда эта опция выбрана. Эта опция позволяет, вы любому создаете новую различную подсистему.

Различная подсистема (Вводят параметры в z-область).  Создайте несколько кандидатов дискретизации в z-области для текущего выбора. Создает дискретный блок, параметры которого “трудно закодированы “значения, помещенные непосредственно в диалоговое окно блока. ​

Местоположение для блока в поле Variant Subsystem становится активным, когда эта опция выбрана. Эта опция позволяет, вы любому создаете новую различную подсистему.

Дискретизируйте блоки

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

Можно открыть библиотеку от Discretizer Модели путем выбора модели Load из меню File.

Можно отключить ссылки библиотеки путем щелчка правой кнопкой по блоку и выбора Library Link> Disable Link из контекстного меню.

Существует два метода для дискретизации блоков.

Выберите Blocks и Discretize

  1. Выберите блок или блоки в области просмотра в виде дерева Discretizer Модели.

    Чтобы выбрать несколько блоков, нажмите и удержите кнопку Ctrl на клавиатуре при выборе блоков.

    Примечание

    Необходимо выбрать блоки из структурного вида Discretizer Модели. Нажатие на блоки в редакторе не выбирает их для дискретизации.

  2. Выберите Discretize current block из меню Discretize, если один блок выбран или select Discretize selected blocks from меню Discretize, если несколько блоков выбраны.

    Можно также дискретизировать текущий блок путем нажатия кнопки Discretize, показанной ниже.

Сохраните настройки дискретизации и примените их к выбранным блокам в модели

  1. Введите настройки дискретизации для текущего блока.

  2. Нажмите Store Settings.

    Это добавляет текущий блок с его настройками дискретизации группе предварительно установленных блоков.

  3. Повторите шаги 1 и 2 по мере необходимости.

  4. Выберите Discretize preset blocks из меню Discretize.

Удаление кандидата дискретизации от различной подсистемы

Можно удалить кандидата дискретизации из различной подсистемы путем выбора его в Месте для блока в поле Variant Subsystem и нажатия кнопки Delete.

Отменение дискретизации

Чтобы отменить дискретизацию, нажмите кнопку Undo discretization.

В качестве альтернативы можно выбрать Undo discretization из меню Discretize.

Эта операция отменяет дискретизации в текущем выборе и его дочерних элементах. Например, выполнение операции отмены на подсистеме удалит дискретизацию из всех блоков на всех уровнях иерархии подсистемы.

Просмотрите дискретизированную модель

Discretizer модели отображает модель в иерархическом структурном виде.

Просмотр дискретизированных блоков

Значок блока в структурном виде становится подсвеченным с “z”, когда блок был дискретизирован.

Следующий рисунок показывает, что Подсистема модели Динамики Самолета была дискретизирована в различную подсистему с двумя кандидатами дискретизации.

Другие блоки в этом f14 модель не была дискретизирована.

Следующий рисунок показывает Подсистему модели Динамики Самолета f14 модель в качестве примера после дискретизации в различную подсистему, содержащую исходную непрерывную модель и двух кандидатов дискретизации.

Следующий рисунок показывает подсистему варианта Aircraft Dynamics Model с двумя кандидатами дискретизации.

Обновление модели представление Discretizer модели

Чтобы обновить Модель структурный вид Discretizer модели, когда модель будет изменена, нажмите кнопку Refresh.

В качестве альтернативы можно выбрать View> Refresh.

Дискретизируйте блоки из модели Simulink

Можно заменить непрерывные блоки в модели ПО Simulink с эквивалентными блоками, дискретизированными в s-области, пользующейся библиотекой Discretizing.

Процедура ниже показов, как заменить непрерывный блок Transfer Fcn в Подсистеме модели Динамики Самолета f14 модель с дискретизированным блоком Transfer Fcn из Библиотеки Дискретизации. Блок дискретизируется в s-области с нулевым порядком, содержат, преобразовывают метод и двухсекундный шаг расчета.

  1. Откройте f14 модель.

  2. Откройте Подсистему модели Динамики Самолета в f14 модель.

  3. Откройте окно библиотеки Discretizing.

    Введите discretizing в командной строке MATLAB.

    Библиотека: дискретизация окна открывается.

    Эта библиотека содержит дискретизированные блоки s-области.

  4. Добавьте Discretized Transfer Fcn (с начальными состояниями) блок к f14/Aircraft Окну модели Динамики.

    1. Кликните по блоку Discretized Transfer Fcn в Библиотеке: дискретизация окна.

    2. Перетащите его в f14/Aircraft Окно модели Динамики.

  5. Откройте диалоговое окно параметра для блока Transfer Fcn.1.

    Дважды кликните блок Transfer Fcn.1 в f14/Aircraft Окне модели Динамики.

    Параметры блоков: диалоговое окно Fcn.1 Передачи открывается.

  6. Откройте диалоговое окно параметра для блока Discretized Transfer Fcn.

    Дважды кликните блок Discretized Transfer Fcn в f14/Aircraft Окне модели Динамики.

    Параметры блоков: Дискретизированное диалоговое окно Transfer Fcn открывается.

    Скопируйте информацию о параметре от диалогового окна блока Transfer Fcn.1 до диалогового окна блока Discretized Transfer Fcn.

  7. Введите 2 в поле Шага расчета.

  8. Выберите zoh из выпадающего списка Method.

    Диалоговое окно параметра для Discretized Transfer Fcn теперь выглядит так.

  9. Нажмите OK.

    f14/Aircraft Окно модели Динамики теперь выглядит так.

  10. Удалите исходный блок Transfer Fcn.1.

    1. Кликните по блоку Transfer Fcn.1.

    2. Нажмите клавишу DELETE.

      f14/Aircraft Окно модели Динамики теперь выглядит так.

  11. Добавьте блок Discretized Transfer Fcn в модель.

    1. Кликните по блоку Discretized Transfer Fcn.

    2. Перетащите блок Discretized Transfer Fcn в положение, чтобы завершить модель.

      f14/Aircraft Окно модели Динамики теперь выглядит так.

Дискретизируйте Модель с Функцией sldiscmdl

Используйте sldiscmdl функция, чтобы дискретизировать модели ПО Simulink от командного окна MATLAB. Можно задать метод преобразования, шаг расчета и метод дискретизации с sldiscmdl функция.

Например, следующая команда дискретизирует f14 модель в s-области с 1 вторым шагом расчета с помощью нулевого порядка содержит, преобразовывают метод:

sldiscmdl('f14',1.0,'zoh')

Смотрите также

Похожие темы