Совместное использование функций через Simulink и Stateflow

В этом примере показано, как вызвать функции через Simulink ® и Stateflow ®. The slexPrinterExample модель состоит из трех компьютерных клиентов, которые совместно используют принтер. Каждый компьютер создает задания печати путем вызова функции Simulink addPrintJob.

Связь и совместное использование ресурсов с функциями

В этом примере диаграмма Stateflow взаимодействует с моделью путем:

  • Определение и экспорт графической функции, которая вызывается Simulink.

  • Вызов функции Simulink, которая задана в Simulink.

Каждый клиент компьютера вызывает сервер принтера с вызовом функции Simulink, addPrintJob. The addPrintJob функция вызывает графическую функцию Stateflow queuePrintJob для добавления задания печати к рабочей нагрузке. График обрабатывает работу и вызывает функцию Simulink printerInk для моделирования использования чернил принтера.

Вызовите функцию Simulink из Stateflow

Функция printerInk определяется в блоке Simulink Function на верхнем уровне модели. Интерфейс функции printerInk(work) задает один входной параметр. Функция Simulink, printerInk, также взаимодействует с моделью сигнальными линиями через входной порт ink и вывод ink'. Состояние Busy соответствует сигнатуре функции для printerInk(work) путем передачи одного входного параметра.

Экспорт функций Stateflow в Simulink

На графике Queuing и Processing Incoming Jobsвыбраны свойства Экспорт функций уровня графики и Обработать экспортированные функции как глобально видимые. Эти свойства позволяют использовать функцию Simulink addPrintJob чтобы вызвать графическую функцию графика, queuePrintJob.

См. также

(Simulink)

Похожие темы