В Simulink ® можно создать собственные библиотеки блоков, чтобы повторно использовать функциональные возможности блоков или подсистем в одной или нескольких моделях. Аналогично, можно повторно использовать набор алгоритмов Stateflow ®, инкапсулируя функциональные возможности в библиотеку диаграмм.
Как и в других библиотеках блоков Simulink, каждый экземпляр блоков библиотеки диаграмм в модели можно специализировать на использовании различных типов данных, времени выборки и других свойств. Экземпляры библиотеки, наследующие те же свойства, могут повторно использовать созданный код.
Дополнительные сведения о библиотеках блоков Simulink см. в разделе Пользовательские библиотеки (Simulink).
Добавление диаграмм Stateflow с полиморфной логикой в модель Simulink.
Полиморфная логика - это логика, которая может обрабатывать данные с различными свойствами, такими как тип, размер и сложность.
Настройте диаграммы для наследования специальных свойств.
Список см. в разделе Настройка свойств блоков библиотеки.
При необходимости настройте диаграммы с помощью маскировки.
Моделирование и отладка диаграмм.
В Simulink создайте библиотечную модель. На вкладке «Моделирование» выберите «Создать» > «Библиотека»
Скопируйте или перетащите диаграммы в библиотечную модель.
Пример использования функциональных блоков MATLAB см. в разделе Создание пользовательских библиотек блоков (Simulink).
Можно настроить экземпляры блоков библиотеки Stateflow, разрешив им наследовать любое из следующих свойств из Simulink.
| Собственность | Наследует по умолчанию? | Определение наследования |
|---|---|---|
| Напечатать | Да | Задайте для свойства типа данных значение Inherit: Same as Simulink. |
| Размер | Да | Задайте для свойства размера данных значение -1. |
| Сложность | Да | Установите для свойства сложности данных значение Унаследовано. |
| Предельный диапазон | Нет | Укажите минимальное и максимальное значения в качестве параметров Simulink. Например, если минимальное значение = aParam и максимальное значение = aParam + 3, различные экземпляры блока библиотеки Stateflow могут разрешаться в разные aParam параметры, определенные в их родительских подсистемах маски. |
| Начальное значение | Зависит от объема работ | Для локальных данных, временных данных и выходных данных укажите начальные значения в качестве параметров Simulink. Другие данные всегда наследуют начальное значение:
|
| Режим отбора проб (вход) | Да | Входные порты диаграммы потока состояний всегда наследуют режим выборки. |
| Режим переопределения типа данных для данных с фиксированной точкой | Да | Различные экземпляры библиотеки наследуют различные режимы переопределения типов данных от своих предков в иерархии модели. |
| Время выборки (блок) | Да | Установите свойство block sample time равным -1. |
События, родительские для библиотечной машины Stateflow, недопустимы. Синтаксический анализатор Stateflow помечает такие события как ошибки.
Для включения связанной библиотечной диаграммы в другую библиотечную диаграмму эти две библиотечные диаграммы должны находиться в отдельных библиотеках.
Чтобы включить связанную библиотечную диаграмму в подсистему Simulink, сначала сохраните библиотечную диаграмму в подсистеме и поместите эту библиотечную подсистему в подсистему Simulink.