Системные объекты позволяют вам реализовать алгоритмы с помощью языка MATLAB®. Блок MATLAB System позволяет вам использовать Системные объекты в Simulink®.
Блок MATLAB System позволяет вам:
Совместно используйте ту же Систему object™ в MATLAB и Simulink
Выделите интегрирование Системных объектов с Simulink
Модульный тест ваш алгоритм в MATLAB перед использованием его в Simulink
Настройте индивидуальную настройку диалогового окна
Моделируйте эффективно с лучшей инициализацией
Обработайте состояния
Настройте значки блока с метками порта
Доступ к двум режимам симуляции
Существует несколько механизмов для включения алгоритмов MATLAB в Simulink, таких как:
Блок MATLAB System
Блок MATLAB function
Интерпретированный блок MATLAB function
Уровень 2 Блок s-function MATLAB
Блок Fcn
Для справки при выбирании правильного блока смотрите Сравнение Функциональности пользовательских блоков.
Прежде чем вы будете использовать блок MATLAB System, у вас должен быть Системный объект, чтобы сопоставить с блоком. Системный объект является специализированным видом класса MATLAB. Системные объекты специально разработаны для реализации и симуляции динамических систем с входными параметрами то изменение в зависимости от времени.
Для получения дополнительной информации о создании Системных объектов смотрите, Настраивают Системные объекты для Simulink.
Чтобы использовать ваш Системный объект в окружении Simulink, это должно иметь конструктора, которого можно вызвать без аргументов. По умолчанию у конструктора Системного объекта есть эта возможность, и вы не должны задавать своего собственного конструктора. Однако, если вы создаете своего собственного конструктора Системного объекта, необходимо смочь вызвать его без аргументов.
Системные объекты существуют в других продуктах MATLAB. Блок MATLAB System поддерживает только Системные объекты, написанные в языке MATLAB. Кроме того, если Системный объект имеет соответствующий блок Simulink, вы не можете реализовать блок MATLAB System для него.
Можно использовать Системные блоки MATLAB в моделях Simulink для симуляции через интерпретированное выполнение или генерацию кода.
С интерпретированным выполнением модель моделирует блок с помощью механизма выполнения MATLAB.
С генерацией кода модель моделирует генерацию кода использования блока (требует использования подмножество кода MATLAB, поддержанного для генерации кода). Для списка поддерживаемых функций смотрите Функции и Объекты, Поддержанные для Генерации кода C/C++ — Алфавитный список.
Если блок MATLAB System имеет одни или несколько входных параметров, которые не связаны к выходному порту другого блока или соединенные с портом, который имеет атрибуты underspecified, атрибуты входного сигнала по умолчанию для незаданных атрибутов:
Атрибут данных | Значение по умолчанию |
---|---|
Тип данных | 'double' |
Размер | [1 1] скаляр |
Сложность | действительный |
Эти возможности в настоящее время не поддержаны.
Категория | Описание ограничения | Работа вокруг |
---|---|---|
Системные объекты | Настраиваемый логический и свойства вектора символов Системного объекта ненастраиваемые параметры в блоке MATLAB System. | — |
Типы данных |
| — |
'SampleTime' | Не может использовать Системные блоки MATLAB, чтобы смоделировать непрерывное время или многоскоростные системы. | — |
Линеаризация | Не может использовать основанную на якобиане линеаризацию. | — |
Глобальные переменные | Глобальные переменные, заданные в панели модели Configuration Parameters Simulation Target> Custom Code и ссылаемые Системным объектом, не совместно используются с Stateflow® и блоком MATLAB function. | Включите Import custom code option в панели Simulation Target диалогового окна Configuration Parameters. |
Отладка | MATLAB, отлаживающий для основанной на генерации кода симуляции. | Установите блок MATLAB System параметр Simulate using на |
Fixed-Point Tool | Fixed-Point Tool не возвращает min проекта / макс., журналирование min / макс. журналирование и автомасштабирующаяся информация для Системных блоков MATLAB. | — |
Анализ покрытия модели (программное обеспечение Simulink Coverage™) | Simulink Coverage не может выполнить анализ модели для блока MATLAB System с набором параметра Simulate using к | — |
Проверяйте совместимость модели (программное обеспечение Simulink Design Verifier™) | Simulink Design Verifier не может выполнить проверки совместимости для модели или подсистемы, которая содержит блок MATLAB System. | — |
Для примеров MATLAB Системные и Системные объекты см.:
Пример | Описание |
---|---|
System Identification для КИХ-системы Используя системные блоки MATLAB | Этот пример показывает, как использовать блок MATLAB System, чтобы реализовать блоки Simulink с помощью Системного объекта. Это подсвечивает два Системных блока MATLAB. Доступ к исходному коду MATLAB для каждого Системного объекта путем щелчка по ссылке |
Сигналы ввода и вывода переменного размера Используя системные блоки MATLAB | Этот пример показывает, как использовать блок MATLAB System, чтобы реализовать блоки Simulink с сигналами ввода и вывода переменного размера. Из-за использования сигналов переменного размера, пример использует методы распространения. |
Рисунок закона больших чисел Используя системные блоки MATLAB | Этот пример показывает, как использовать Системные блоки MATLAB, чтобы проиллюстрировать закон больших чисел. Из-за использования функций MATLAB, не поддержанных для генерации кода, пример использует методы распространения и интерпретированное выполнение. |
Этот пример показывает, как использовать Системные блоки MATLAB с невиртуальными шинами при вводе или выводе. Из-за использования шины Simulink, пример использует методы распространения. Пример задает типы шины в коллбэках модели использования базового рабочего пространства MATLAB. |