Образцовый Discretizer выборочно заменяет непрерывные блоки Simulink® на дискретные эквиваленты. Дискретизация является критическим шагом в цифровом проектировании контроллера и для аппаратных средств моделирования в цикле.
Можно использовать Образцовый Discretizer для:
Идентифицируйте непрерывные блоки модели
Измените параметры блока от непрерывного до дискретного
Примените настройки дискретизации ко всем непрерывным блокам в модели или выбранным блокам
Создайте конфигурируемые подсистемы, которые содержат несколько кандидатов дискретизации наряду с исходным непрерывным блоком (блоками)
Переключитесь среди различных кандидатов дискретизации и оцените получившиеся образцовые моделирования
Использовать Образцовый Discretizer
У вас должна быть Система управления лицензия Toolbox™, Версия 5.2 или позже.
Убедитесь, что ваша модель не содержит устаревших блоков и обновляется до текущей версии Simulink. Для получения дополнительной информации смотрите Образцовые Обновления
Убедитесь, что ваша модель не содержит подсистем маскированных. Для получения дополнительной информации смотрите, Создают Блочные Маски.
Дискретизировать модель:
Запустите образцовый Discretizer
Задайте метод преобразования
Задайте частоту дискретизации
Задайте метод дискретизации
Дискретизируйте блоки
Модель f14
показывает шаги в дискретизации модели.
Чтобы открыть инструмент, в Редакторе Simulink, выбирают Analysis> Control Design> Model Discretizer.
Образцовый Discretizer Simulink открывается.
Также можно открыть Образцовый Discretizer из Командного окна MATLAB® с помощью функции slmdldiscui
.
Следующая команда открывает окно Simulink Model Discretizer с моделью f14
:
slmdldiscui('f14')
Чтобы открыть новую модель или библиотеку от Образцового Discretizer, выберите File> модель Load.
Метод преобразования задает тип алгоритмов, используемых в дискретизации. Для получения дополнительной информации о различных методах преобразования смотрите Control System Toolbox.
Список методов Преобразования содержит следующие опции:
Zero-order hold
Нулевой порядок держится входные параметры.
First-order hold
Линейная интерполяция входных параметров.
Tustin
Билинейный (Тастин) приближение.
Tustin with prewarping
Приближение Тастина с предварительным деформированием частоты.
Matched pole-zero
Совпадающий нулевой полюсом метод (только для систем SISO).
Введите частоту дискретизации в поле Частоты дискретизации.
Можно задать время смещения путем ввода двухэлементного вектора для дискретных блоков или конфигурируемых подсистем. Первый элемент является частотой дискретизации, и второй элемент является временем смещения. Например, запись [1.0 0.1] задала бы 1,0 вторых частоты дискретизации с 0,1 вторыми смещениями. Если никакое смещение не задано, значением по умолчанию является нуль.
Можно ввести переменные рабочей области при дискретизации блоков в s-области. Смотрите Дискретные блоки (Введите параметры в s-область).
Задайте метод дискретизации в Замене текущий выбор с полем. Опции
Дискретные блоки (Вводят параметры в s-область),
Создает дискретный блок, параметры которого сохраняются от соответствующего непрерывного блока.
Дискретные блоки (Вводят параметры в z-область),
Создает дискретный блок, параметры которого “трудно закодированы “значения, помещенные непосредственно в диалоговое окно блока.
Конфигурируемая подсистема (Вводят параметры в s-область),
Создайте несколько кандидатов дискретизации, использующих s-значения-домена для текущего выбора. Конфигурируемая подсистема может состоять из одного или нескольких блоков.
Конфигурируемая подсистема (Вводят параметры в z-область),
Создайте несколько кандидатов дискретизации в z-области для текущего выбора. Конфигурируемая подсистема может состоять из одного или нескольких блоков.
Дискретные блоки (Вводят параметры в s-область). Создает дискретный блок, параметры которого сохраняются от соответствующего непрерывного блока. Частота дискретизации и параметры дискретизации находятся также на диалоговом окне параметра блока.
Блок реализован как дискретный блок маскированный, который использует c2d
, чтобы преобразовать непрерывные параметры к дискретным параметрам в коде инициализации маски.
Эти блоки имеют уникальную возможность возвращения к непрерывному поведению, если частота дискретизации изменяется на нуль. При вводе частоты дискретизации, когда переменная рабочей области ('Ts'
, например) допускает легкое переключение от непрерывного до дискретного и назад снова. Смотрите Задают Частоту дискретизации.
Если вы, сгенерированный код от модели, параметры не являются настраиваемыми, когда поведение параметра По умолчанию установлено в Inlined
в диалоговом окне Configuration Parameters модели.
Следующие данные показывают непрерывный блок Transfer Function рядом с блоком Transfer Function, который был дискретизирован в s-области. Блочное диалоговое окно параметров для каждого блока появляется ниже блока.
Дискретные блоки (Вводят параметры в z-область). Создает дискретный блок, параметры которого являются “трудно закодированными” значениями, помещенными непосредственно в диалоговое окно блока. Модель Дискретизер использует функцию c2d
, чтобы получить дискретизированные параметры в случае необходимости.
Для большего количества справки на функции c2d
введите следующее в Командном окне:
help c2d
Следующие данные показывают непрерывный блок Transfer Function рядом с блоком Transfer Function, который был дискретизирован в z-области. Блочное диалоговое окно параметров для каждого блока появляется ниже блока.
Если вы хотите восстановить точно исходные непрерывные значения параметров после Образцового сеанса Дискретизации, необходимо ввести параметры в s-область.
Конфигурируемая подсистема (Вводят параметры в s-область). Создайте несколько кандидатов дискретизации, использующих s-значения-домена для текущего выбора. Конфигурируемая подсистема может состоять из одного или нескольких блоков.
Местоположение для блока в конфигурируемом поле подсистемы становится активным, когда эта опция выбрана. Эта опция позволяет вам или создавать новую конфигурируемую подсистему или перезаписывать существующую.
Текущая папка должна быть перезаписываема в порядке сохранить библиотеку или библиотеки для конфигурируемой опции подсистемы.
Конфигурируемая подсистема (Вводят параметры в z-область). Создайте несколько кандидатов дискретизации в z-области для текущего выбора. Конфигурируемая подсистема может состоять из одного или нескольких блоков.
Местоположение для блока в конфигурируемом поле подсистемы становится активным, когда эта опция выбрана. Эта опция позволяет вам или создавать новую конфигурируемую подсистему или перезаписывать существующую.
Текущая папка должна быть перезаписываема в порядке сохранить библиотеку или библиотеки для конфигурируемой опции подсистемы.
Конфигурируемые подсистемы сохранены в библиотеке, содержащей кандидатов дискретизации и исходный непрерывный блок. Библиотеку назовут <model name>_disc_lib
, и это будет сохранено в токе. Например, библиотеку, содержащую конфигурируемую подсистему, созданную из модели f14
, назовут f14_disc_lib
.
Если несколько библиотек будут созданы из той же модели, то имена файлов постепенно увеличатся соответственно. Например, вторую конфигурируемую библиотеку подсистемы, созданную из модели f14
, назовут f14_disc_lib2
.
Можно открыть конфигурируемую библиотеку подсистемы путем щелчка правой кнопкой по подсистеме в модели и выбора Library Link> Go к блоку библиотеки из контекстного меню.
Чтобы дискретизировать блоки, которые соединяются с библиотекой, необходимо или дискретизировать блоки в самой библиотеке или отключить ссылки библиотеки в образцовом окне.
Можно открыть библиотеку от Образцового Discretizer путем выбора модели Load из меню File.
Можно отключить ссылки библиотеки путем щелчка правой кнопкой по блоку и выбора Library Link> Disable Link из контекстного меню.
Существует два метода для дискретизации блоков.
Выберите Blocks и Discretize
Выберите блок или блоки в Образцовой области просмотра в виде дерева Discretizer.
Чтобы выбрать несколько блоков, нажмите и удержите кнопку Ctrl на клавиатуре при выборе блоков.
Необходимо выбрать блоки из структурного вида Discretizer Модели. Нажатие на блоки в редакторе не выбирает их для дискретизации.
Выберите Discretize текущий блок из меню Discretize, если единственный блок выбран, или выберите выбранные блоки Discretize из меню Discretize, если несколько блоков выбраны.
Можно также дискретизировать текущий блок путем нажатия кнопки Discretize, показанной ниже.
Сохраните настройки дискретизации и примените их к выбранным блокам в модели
Введите настройки дискретизации для текущего блока.
Нажмите Store Settings.
Это добавляет текущий блок с его настройками дискретизации группе предварительно установленных блоков.
Повторите шаги 1 и 2 по мере необходимости.
Выберите предварительно установленные блоки Discretize из меню Discretize.
Можно удалить кандидата дискретизации из конфигурируемой подсистемы путем выбора его в Месте для блока в конфигурируемом поле подсистемы и нажатия кнопки Delete.
Чтобы отменить дискретизацию, нажмите кнопку дискретизации Отмены.
Также можно выбрать дискретизацию Undo из меню Discretize.
Эта операция отменяет дискретизации в текущем выборе и его дочерних элементах. Например, выполнение операции отмены на подсистеме удалит дискретизацию из всех блоков на всех уровнях иерархии подсистемы.
Образцовый Discretizer отображает модель в иерархическом структурном виде.
Значок блока в структурном виде становится подсвеченным с “z”, когда блок был дискретизирован.
Следующие данные показывают, что Подсистема модели Динамики Самолета была дискретизирована в конфигурируемую подсистему с тремя кандидатами дискретизации.
Другие блоки в этой модели f14
не были дискретизированы.
Следующие данные показывают Подсистему модели Динамики Самолета модели f14
в качестве примера после дискретизации в конфигурируемую подсистему, содержащую исходную непрерывную модель и трех кандидатов дискретизации.
Следующие данные показывают библиотеку, содержащую Модель Динамики Самолета конфигурируемая подсистема с исходной непрерывной моделью и тремя кандидатами дискретизации.
Чтобы обновить структурный вид Дискретизера Модели модели, когда модель будет изменена, нажмите Кнопку Обновить.
Также можно выбрать Refresh из меню View.
Можно заменить непрерывные блоки в модели ПО Simulink с эквивалентными блоками, дискретизированными в s-области, пользующейся библиотекой Discretizing.
Процедура ниже показов, как заменить непрерывный блок Transfer Fcn в Подсистеме модели Динамики Самолета модели f14
с дискретизированным блоком Transfer Fcn от Библиотеки Дискретизации. Блок дискретизируется в s-области с нулевым порядком, содержат метод преобразования и двухсекундную частоту дискретизации.
Откройте модель f14
.
Откройте Подсистему модели Динамики Самолета в модели f14
.
Откройте окно библиотеки Discretizing.
Введите discretizing
в подсказке команды MATLAB.
Библиотека: дискретизация окна открывается.
Эта библиотека содержит дискретизированные блоки s-области.
Добавьте Дискретизированную Передачу Fcn (с начальными состояниями) блок к f14/Aircraft окну Dynamics Model.
Кликните по блоку Discretized Transfer Fcn в Библиотеке: дискретизация окна.
Перетащите его в f14/Aircraft окно Dynamics Model.
Откройте диалоговое окно параметра для блока Transfer Fcn.1.
Дважды кликните блок Transfer Fcn.1 в f14/Aircraft окне Dynamics Model.
Блочные Параметры: диалоговое окно Fcn.1 Передачи открывается.
Откройте диалоговое окно параметра для блока Discretized Transfer Fcn.
Дважды кликните блок Discretized Transfer Fcn в f14/Aircraft окне Dynamics Model.
Блочные Параметры: Дискретизированное диалоговое окно Transfer Fcn открывается.
Скопируйте информацию о параметре от диалогового окна блока Transfer Fcn.1 до диалогового окна блока Discretized Transfer Fcn.
Введите 2
в поле Частоты дискретизации.
Выберите zoh
из Метода выпадающий список.
Диалоговое окно параметра для Дискретизированной Передачи Fcn теперь выглядит так.
Нажать ОК.
f14/Aircraft окно Dynamics Model теперь выглядит так.
Удалите исходный блок Transfer Fcn.1.
Кликните по блоку Transfer Fcn.1.
Нажмите клавишу DELETE.
f14/Aircraft окно Dynamics Model теперь выглядит так.
Добавьте блок Discretized Transfer Fcn к модели.
Кликните по блоку Discretized Transfer Fcn.
Перетащите блок Discretized Transfer Fcn в положение, чтобы завершить модель.
f14/Aircraft окно Dynamics Model теперь выглядит так.
Используйте функцию sldiscmdl
, чтобы дискретизировать модели ПО Simulink из Окна Команды MATLAB. Можно задать метод преобразования, частоту дискретизации и метод дискретизации с функцией sldiscmdl
.
Например, следующая команда дискретизирует модель f14
в s-области с 1 второй частотой дискретизации с помощью нулевого порядка, содержат метод преобразования:
sldiscmdl('f14',1.0,'zoh')