Обозреватели позволяют контролировать динамическую реакцию модели системы, сохраняя при этом конструкцию модели системы и целостность результатов системы. Наблюдатели используют два типа блоков: блоки опорных сигналов наблюдателей и блоки портов наблюдателей. Опорный блок Observer по беспроводной связи связывает системную модель с моделью Observer, которая содержит логику проверки. Внутри модели Observer блоки порта Observer используются для доступа к данным из системной модели для управления логикой проверки.

Можно наблюдать следующие типы сигналов Simulink ® и данные модели:
Сигналы непрерывного и дискретного времени
Сигналы удержания нулевого порядка
Скалярные сигналы
Широкие сигналы
Невиртуальные сигналы шины
Локальные параметры данных Stateflow ®, кроме локальных, параметров, сигналов и других данных, определенных в подсистеме Simulink в состоянии Stateflow.
Самоактивность состояния Stateflow, за исключением случаев, когда это действие находится в подсистеме Simulink в состоянии Stateflow.
Опорные блоки Observer по беспроводной связи связывают системную модель с моделью Observer. Опорные блоки Observer могут находиться только на верхнем уровне модели системы и не имеют входных или выходных портов. Вы сопоставляете сигналы Simulink или другие данные модели с блоками порта наблюдателя, которые содержатся в модели наблюдателя. После сопоставления блоков порта наблюдателя с сигналом или данными можно подключить порты к подсистеме проверки в модели наблюдателя. При выполнении системной модели также выполняется связанная модель Observer.
Беспроводной доступ позволяет использовать наблюдателей для мониторинга модели системы, не вызывая изменений в системе. Обозреватели позволяют создать четкое различие между системным дизайном и подсистемами проверки.
Блок опорных элементов Observer ссылается на отдельную модель проверки, которая используется для проверки модели системы. Чтобы добавить опорный блок Observer в системную модель, сначала на панели инструментов Simulink откройте Apps и щелкните Simulink Test в разделе Model Verification, Validation и Test. Щелкните Добавить ссылку наблюдателя (Add Observer Reference) на вкладке Тесты (Tests). Также можно щелкнуть правой кнопкой мыши верхний уровень холста Simulink и выбрать «Обозреватели» > «Добавить ссылку на наблюдателя» в контекстном меню. В системную модель добавляется опорный блок Observer, создается и открывается модель Observer. Модель Observer необходимо сохранить в папке с возможностью записи по пути MATLAB ®.

Чтобы подключить ссылочный блок Observer к уже созданной модели Observer, сначала сохраните модель Observer в папке с возможностью записи по пути MATLAB. Затем щелкните правой кнопкой мыши блок «Observer Reference» и выберите «Block Parameters» («Параметры блока»).

Введите имя модели Observer, которую требуется подключить к системе, и выберите Применить (Apply). При двойном щелчке на опорном блоке Observer модель Observer открывается в новом окне.
Чтобы создать модель Observer, которая сопоставляется с сигнальной линией или наблюдаемыми данными в модели, выберите один или несколько сигналов или данных, которые необходимо наблюдать. Затем нажмите кнопку Add Observer Reference на вкладке Tests. Также можно щелкнуть правой кнопкой мыши по сигналу или данным и выбрать «Обозреватели», тип наблюдаемого элемента и «Новый наблюдатель». Simulink создает модель Observer и добавляет блок привязки Observer в модель системы.
Каждая модель Observer содержит один или несколько блоков порта Observer. После сопоставления блока порта наблюдателя с объектом или сигналом модели в системной модели блок порта наблюдателя выводит тот же выходной сигнал, что и его сопоставленный объект или сигнал. Новый блок порта наблюдателя показывает линию через символ сигнала, означающую, что блок не сопоставлен ни с одним сигналом или объектом.
![]()
Чтобы сопоставить блок порта наблюдателя с сигналом или объектом в модели системы, откройте диалоговое окно Управление наблюдателем одним из следующих способов:
На вкладке Тесты щелкните Управление наблюдателем.
Щелкните зубчатое колесо в правом нижнем углу опорного блока Observer.
Щелкните правой кнопкой мыши на блоке «Observer Reference» и выберите «Observer» > «Manage Observer».
В модели Observer дважды щелкните блок Observer Port.

С помощью диалогового окна Управление наблюдателем (Manage Observer) можно выполнять следующие действия.
Фильтрация и выбор сигналов и объектов для наблюдения
Добавление, удаление или настройка блоков порта наблюдателя
Трассировка сигналов и объектов между портами наблюдателей и моделями
В левой части диалогового окна «Управление наблюдателем» находится панель «Область наблюдения». Панель «Наблюдаемая область» отображает иерархию блоков и наблюдаемые выходные данные модели. Наблюдаемые сигналы или объекты выделены жирным шрифтом в иерархии.
В правой части диалогового окна «Управление наблюдателем» отображается панель «Наблюдатель». На панели Observer отображается иерархия блоков, включая порты Observer в блоке Observer Reference. Блок порта наблюдателя, сопоставленный с сигналом или объектом, выделен полужирным шрифтом и отображает сигнал, к которому он присоединен. Как только порт наблюдателя сопоставляется с сигналом или объектом, его значок блока обновляется, показывая, что порт наблюдателя присоединен к сигналу или объекту.

Для просмотра полного пути наблюдаемого объекта укажите блок порта наблюдателя.
При изменении имени наблюдаемого сигнала или объекта в системной модели блок опорного сигнала наблюдателя обновляет имя выходного сигнала из блока порта наблюдателя. Если сигнал не назван и не имеет метки, на выходе блока порта наблюдателя устанавливается пустая строка.
Чтобы сопоставить сигнал или объект с блоком порта наблюдателя, откройте диалоговое окно «Управление наблюдателем». На панели «Наблюдаемая область» выберите сигнал или объект, который требуется наблюдать. Чтобы сопоставить сигнал или объект с новым блоком порта наблюдателя, дважды щелкните выбранный элемент или щелкните значок Добавить новый порт наблюдателя.
Чтобы сопоставить сигнал или объект существующему блоку порта наблюдателя, выберите порт наблюдателя на панели наблюдателя и щелкните значок перенастройки порта наблюдателя.
В модели Observer можно подключить выходные данные порта Observer к подсистеме проверки для проверки результатов.
Можно отслеживать наблюдаемые элементы и их порты наблюдателей в диалоговом окне Управление наблюдателями (Manage Observer). Можно также отслеживать элементы между диалоговым окном Управление наблюдателем (Manage Observer) и моделью системы, а также между моделью системы и моделью наблюдателя.
Чтобы отследить наблюдаемый элемент до его порта наблюдателя в диалоговом окне Управление наблюдателем (Manage Observer), используйте один из следующих методов.
Дважды щелкните по элементу Port в панели Observer. Наблюдаемый элемент подсвечивается на панели «Наблюдаемая область».
Щелкните правой кнопкой мыши по элементу CountingPort на панели Observer и выберите Show in left panel. Наблюдаемый элемент подсвечивается на панели «Наблюдаемая область».
Чтобы отследить наблюдаемый элемент или порт наблюдателя между диалоговым окном Управление наблюдателем (Manage Observer) и моделью системы, используйте один из следующих методов.
Щелкните правой кнопкой мыши элемент CountingPort на панели Observer или на панели Observable Area и выберите Show in model. Наблюдаемый элемент подсвечивается в модели.
Щелкните правой кнопкой мыши по наблюдаемому сигналу или объекту в системной модели и выберите Go to associated Observer Ports. Связанные порты наблюдателя выделены в модели наблюдателя.
Чтобы отследить порт наблюдателя и наблюдаемый элемент между системной моделью и моделью наблюдателя, используйте один из следующих методов:
Щелкните правой кнопкой мыши по порту Observer в модели Observer и выберите Observer > Go to observed < тип элемента >. Наблюдаемый сигнал или объект подсвечивается в системной модели.
Щелкните правой кнопкой мыши по наблюдаемому сигналу или объекту в системной модели и выберите Обозреватели > Перейти к соответствующим портам наблюдателей. Связанные порты наблюдателя выделены в модели наблюдателя.
Модель Observer используется для контроля сигналов в модели системы и проверки того, что модель системы работает в пределах заданных параметров. С блоком привязки наблюдателя или без него результаты моделирования модели системы совпадают. Опорный блок Observer не влияет на компиляцию системной модели.
Примечание
Системная модель и модель Observer должны выполняться в обычном режиме моделирования. Обе модели могут работать с фиксированной или переменной скоростью, или одна модель может работать с фиксированной скоростью, а другая - с переменной скоростью. В двух моделях также могут использоваться одни и те же или разные решатели. См. раздел Выбор решателя.
В этом примере показано, как использовать опорный блок Observer для беспроводного наблюдения сигналов и проверки результатов. В этой системе установка моделируется с помощью Simulink, а контроллер - с помощью Stateflow. Целью примера является контроль как температуры теплового насоса, так и температуры, когда насос охлаждает или нагревает помещение. Направление, в котором вентилятор продувается, указывает на охлаждение или нагрев. Имя данных: pump_dir, и он подключен к порту 3 в диаграмме Stateflow.
Откройте окно sltestHeatpumpExample модель.
cd(fullfile(docroot,'toolbox','sltest','examples'))
open_system('sltestHeatpumpExample')
На вкладке Приложения щелкните Simulink Test в разделе Проверка модели, Проверка и тестирование. Откроется вкладка Тесты (Tests).
Создайте модель Observer для измерения температуры насоса.
На вкладке Tests (Тесты) щелкните Add Observer Reference (Добавить ссылку на наблюдатель). Simulink добавляет опорный блок Observer в системную модель и создает модель Observer под названием sltestHeatpumpExample_Observer1.
Добавление и сопоставление блока порта наблюдателя.
Откройте подсистему установки и щелкните правой кнопкой мыши по сигналу. T. Выберите Обозреватели > Наблюдать выбранные сигналы > sltestHeatpumpПример/Наблюдатель (sltestHeatpumpExample_Observer1). Модель Observer добавляет блок порта Observer Port, сопоставленный с сигналом T. Сохраните новую модель Observer в доступной для записи папке.
Добавьте и сопоставьте другой блок порта наблюдателя.
В модели Observer на вкладке Tests выберите Add Observer Port. Дважды щелкните новый Observer Port, чтобы открыть диалоговое окно Manage Observer. В панели «Observer» - второй порт «Observer Port», ObserverPort1, указан ниже первого порта.
Нанести на карту ObserverPort1 к данным Simulink pump_dir, нажмите ObserverPort1. На панели «Область наблюдения» разверните Controller и controller_chartи выберите Outport3. Щелкните значок Реконфигурировать (Reconfigure).
ObserverPort1 обновления имен для ObserverPort1 (controller_chart:3).

Блоки порта наблюдателя находятся в модели наблюдателя и теперь отображены и готовы для подключения к областям или подсистеме проверки.

Преобразование подсистемы проверки (Simulink Design Verifier) в опорный блок Observer - это способ деклутации модели системы. Выберите подсистему для преобразования и на вкладке Tests нажмите Send to Observer. Либо щелкните правой кнопкой мыши подсистему проверки и выберите "Наблюдатели" > "Переместить выбранный блок в" Наблюдатель ">" Новый наблюдатель ". Эта операция не может быть отменена.
Эта модель содержит подсистему проверки, свойства безопасности.

Преобразуя подсистему проверки свойств безопасности в опорный блок наблюдателя, можно удалить сигналы, связывающие подсистему проверки с моделью системы, сохраняя при этом возможность проверки целостности системы.

Два сигнала, throt и output1автоматически отображаются на два блока порта наблюдателя в модели наблюдателя, sltestBasicCruiseControlHarnessModel_Observer1.

Модель Observer не моделируется, если:
Модель Observer содержит блоки корневого уровня Inport или Outport.
Модель Observer - это ссылочная модель библиотеки или подсистемы.
Опорные блоки Observer игнорируются во время моделирования, если:
Используется любой режим моделирования, отличный от обычного (например, акселератор, SIL/PIL).
Вы генерируете код.
Опорный блок Observer находится в иерархии ссылок модели. Опорные блоки Observer поддерживаются только в корне модели верхнего уровня.
Опорный блок Observer находится в модели Observer. Рекурсия моделей Observer не поддерживается.
Сигналы регистрации или память хранения данных и сохранение конечных рабочих точек поддерживаются наблюдателями. Все другие параметры экспорта данных, такие как время, состояние, выход, конечное состояние и сохранение в файл, не поддерживаются.
Блоки К рабочей области (To Workspace) и Панель мониторинга (Dashboard) в обозревателях не поддерживаются и не выводят.
Если эти настройки в модели Observer отличаются от настроек в конструкторской модели, используются настройки конструкторской модели, а настройки модели Observer игнорируются.
Параметры импорта или экспорта данных
Параметры покрытия
Время остановки решателя