Чтобы создать наблюдателя, создайте класс, производный от simevents.SimulationObserver объект. Наблюдателей можно использовать для:
Помогите понять влияние очереди, визуализировать объекты, перемещающиеся по модели во время моделирования.
Разработка инструментов презентации, показывающих моделирование модели через интерфейс, ориентированный на приложения, например, действия в очереди в ресторан.
Отладка и проверка активности объекта.
Проверьте содержимое очереди.
simevents.SimulationObserver объект предоставляет методы, которые позволяют:
Создание объектов-наблюдателей или анимации.
Определение блоков модели для уведомления о событиях времени выполнения.
Взаимодействие с календарем событий.
Выполнение действий, когда модель приостанавливается, продолжается после приостановки и завершается.
Модели SimEvents ® вызывают эти функции во время моделирования модели.
Создайте файл приложения.
Определение класса, наследующего от simevents.SimulationObserver класс.
Создание объекта-наблюдателя, производного от этого класса.
От simevents.SimulationObserver реализуйте необходимые функции для приложения. В это приложение входит ваш наблюдатель.
Откройте модель.
Создайте экземпляр класса.
Запустите модель.
Дополнительные сведения о пользовательской визуализации см. в разделе Создание пользовательской визуализации.
Эти методы можно использовать в реализации производного класса simevents.SimulationObserver.
| Действие | Метод |
|---|---|
Укажите поведение при запуске моделирования. |
|
Укажите поведение при приостановке моделирования. |
|
Укажите поведение при возобновлении моделирования. |
|
Определите поведение наблюдателя при завершении моделирования. |
|
Укажите список блоков для уведомления о событиях входа и выхода объекта. |
|
Укажите, требуется ли уведомление для всех событий в календаре событий. |
|
Укажите поведение после входа объекта в блок с хранилищем объектов. |
|
Укажите поведение перед выходом объекта из блока с хранилищем объектов. |
|
Укажите поведение перед выполнением события. |
|
Добавление блока в список блоков для уведомления. |
|
Удалить блок из списка уведомляемых блоков. |
|
Получить дескрипторы для календарей событий. |
|
Получение списка блоков, хранящих сущности. |
|
Дескриптор возвращаемого блока для заданного пути блока. |
|
Вернуть дескрипторы хранилища указанного блока. |
|
В окне команд MATLAB ® выберите New > Class.
В первой строке файла наследуйте от simevents.SimulationObserver класс. Например:
classdef seRestaurantAnimator < simevents.SimulationObserver
seRestaurantAnimator - имя нового объекта-наблюдателя.
В properties введите свойства приложения.
В methods , реализуйте функции для вашего приложения.
Для построения объекта-наблюдателя введите следующую строку в поле methods раздел файла:
function this = seRestaurantAnimator
% Constructor
modelname = 'seCustomVisualization';
this@simevents.SimulationObserver(modelname);
this.mModel = modelname;
endДополнительные сведения см. в разделе Использование пользовательской визуализации для объектов.
Откройте модель для наблюдения.
В командной строке MATLAB, чтобы включить аниматор для модели:
>> obj=seRestaurantAnimator;
Моделирование модели.
При запуске модели аниматор отображается в окне рисунка. При запуске модели выполняется вызов приложения для проверки того, была ли реализована одна из предварительно определенных функций. Если модель не содержит блока SimEvents, появляется сообщение об ошибке.
Примечание
В результате измерений для визуализации моделирования моделирование происходит медленнее, чем без измерений.
Остановите моделирование.
В командной строке MATLAB очистите аниматор от модели. Например:
clear obj;