Моделирование гибридных систем - Заполнение бака

Описание

Этот пример показывает гибридную систему с непрерывным временем и дискретными разделами событий. Дискретная деталь события моделирует баки, представленные сущностями, которые находятся в очереди и должны быть заполнены. Каждый бак имеет атрибут «Емкость». Непрерывная временная часть моделирует процесс заполнения бака, смоделированный Интегратором. Когда бак заполнен до емкости, это событие может быть обнаружено блоком Hit Crossing, который будет генерировать сообщение, соответствующее этому событию. Сгенерированное сообщение заставит сервер отпустить бак.

Структура модели

Модель включает следующие компоненты:

  • Генератор бака: Периодически генерирует баки с каждым баком, имеющим произвольно присвоенный атрибут Емкости.

  • Очередь ожидания: Баки очередей, ожидающие заполнения

  • Заполнение этого бака: Обслуживает баки и вызывает в startFilling Simulink Function для передачи атрибута емкости бака в основанный на времени раздел модели.

  • Заполнение бака: Моделирует процесс заполнения каждого бака до емкости

  • Датчик: Обнаруживает, когда количество, заполненное в баке, достигло емкости и когда это происходит, отправляет сообщение в раздел дискретных событий модели. Датчик служит мостом между основанной на времени секцией и четной секцией.

  • Процессор: Получает сообщение, сгенерированное с датчика, и решает, какой бак будет выпускаем с Сервера. Затем вызывается функция Simulink с именем release чтобы сгенерировать сообщение релиза для определенного бака.

  • Selection Gate: Получает релиз и в ответ открывает ворота, чтобы пропустить конкретный бак.

  • Сконфигурируйте демонстрацию: Устанавливает количество газовых насосов на заправке и включает/выключает анимацию. Чтобы показать анимацию, используйте номер газового насоса между 1 и 20.

Пересечение доменов между временным интервалом и областью событий

SimEvents автоматически обрабатывает любой обмен данными во временной области и области событий, автоматически вставляя шлюзы там, где это необходимо. Эти положения аннотируются в модели с помощью E. В этой модели шлюз был вставлен в вход порт блока Сущности Queue, который соединяется с блоком Hit Crossing, поскольку он получает сообщение от временного интервала раздела модели.

Результаты

Блок Scope, помеченный как «Fill Process» и «Trucks leaving after fill», показывает результаты симуляции.

Если Show Animation флажок установлен в разделе Configure Demo, появляется окно анимации для визуализации демонстрации. Скриншот анимации с четырьмя газовыми насосами показан ниже:

См. также

| |

Похожие темы