S-функции используют специальный синтаксис запроса, который дает возможность Вам взаимодействовать с солверами{решающими устройствами} уравнений Simulink. Это взаимодействие очень похоже к взаимодействию, которое имеет место между солверами{решающими устройствами} и встроенными блоками Simulink. Форма S-функции является очень общей и может описать непрерывные, дискретные, и гибридные системы.
Чтобы включать S-функцию в модель Simulink, перетащите блок S-Function от библиотеки блока Functions и Tables Simulink в модель. Тогда определите имя S-функции в поле S-function диалогового окна блока S-Function как иллюстрировано на рисунке ниже.
Рисунок
1-1: Отношения между блоком S-функции, его диалоговым окном, и исходным файлом,
который определяет поведение блока
Самое общее назначение S-функций - создать заказные блоки Simulink. Вы можете использовать S-функции для разнообразys[ приложений, включая:
Преимущество использования S-функций состоит в том, что Вы можете формировать универсальный блок, который Вы можете использовать много раз в модели, изменяя параметры с каждым образцом блока.
В этом примере, модель содержит два образца блока S-Function. Обе ссылки блоков указывают тот же самый исходный файл (mysfun, который может быть или C MEX-ФАЙЛОМ или M-файлом). Если и C MEX-файл и M-файл существуют с тем же самым именем, C MEX-файл имеет приоритет и является файлом, который S-функция использует.
Чтобы создавать S-функции, Вы должны знать, как S-функции работают. Понимание, как работа S-функций, в свою очередь, требует понимания, как Simulink моделирует модель, и это, в свою очередь требует понимания математики блоков. Этот раздел поэтому начинается, объясняя математические отношения между входами блока, состояниями, и выходами.
Блок Simulink состоит из набора входов, набор состояний, и набора выходов, где выходы - функция типового времени, входов, и состояний блока.
Следующие уравнения выражают математические отношения между входами, выходами, и состояниями.
Simulink выполняет моделирование поэтапно.
Сначала протекает стадия инициализации. В этой стадии, Simulink включает библиотечные блоки в модель, размножает размеры, типы данных, и определяет время сэмплирования, оценивает блочные параметры, определяет блочный порядок выполнения, и распределяет память.
Затем Simulink переходит к циклу моделирования, где каждый проход через цикл, называется шагом моделирования. В течение каждого шага моделирования, Simulink выполняет каждый из блоков модели в порядке, определенном в течение инициализации. Для каждого блока, Simulink вызывает Callback функции модели, которые вычисляют состояния блока, производные, и выходы для текущего времени сэмплирования. Это продолжается, пока моделирование не закончено.
Рисунок ниже иллюстрирует стадии моделирования.
Рисунок 1-2: Как Simulink выполняет моделирование.
S-функция включает набор методов callback S-функции , которые исполняют задачи, требуемые в каждой стадии моделирования. В течение моделирования модели, на каждой стадии моделирования, Simulink вызывает соответствующие методы для каждого блока S-fфункции в модели. Задачи, выполненные методами S-функции включают:
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.