Диагностика Используя клиент-серверную архитектуру

Диагностика, обменивающаяся сообщениями с функциями Simulink

Используйте функции Simulink®, когда вы задаете диагностический сервис, куда вызывающие стороны передают код ошибки. Сервис отслеживает коды ошибок для всех ошибок, которые происходят. Один способ реализовать этот сервис состоит в том, чтобы использовать индексируемый Блок памяти Хранилища данных. Диагностическая система мониторинга может затем периодически проверять на вхождение определенных ошибок и изменять поведение системы соответственно.

Клиент-серверная архитектура

Можно использовать Функциональные блоки Simulink и Функциональные блоки Вызывающей стороны, чтобы смоделировать клиент-серверные архитектуры. Использование для этой архитектуры включает устройство хранения данных памяти и диагностику.

Как пример, создайте модель простой распределенной системы, состоящей из нескольких приложений управления (клиенты), каждый из которых может сообщить о диагностике в течение выполнения. Поскольку клиент-серверные архитектуры обычно создаются в слоях, добавляют уровень услуг, чтобы смоделировать диагностический интерфейс.

Сервисы (серверы), смоделированное использование Функциональные блоки Simulink, находятся в отдельной модели. Добавьте сервисную модель в свою системную модель как модель, на которую ссылаются.

Приложения управления (клиенты) взаимодействуют с диагностическим интерфейсом с помощью Функциональных блоков Вызывающей стороны.

Шаблон модификатора

Приложение 1 сообщает о диагностическом условии путем вызова интерфейса reportDiagnostic на уровне услуг. Приложение вызывает эту функцию при передаче в диагностическом идентификаторе.

Тест интервала определяет, когда создать диагностический идентификатор.

Реализация функции (Функция Simulink 1) отслеживает переданный - в идентификаторе путем передачи значения выводу графических данных функции. Вывод графических данных является сигналом серверной стороны, который не является частью интерфейса сервера, но упрощает связь между служебными функциями через аргументы функции. Значение выводов графических данных сохранено между вызовами функции.

Функция reportDiagnostic является примером шаблона модификатора. Этот шаблон помогает к коммуникации данных от вызывающей стороны к функциональным и более поздним вычислениям на основе тех данных.

Шаблон "наблюдатель"

Приложение 2 вызывает интерфейс inspectDiagnostic на уровне услуг, чтобы осмотреть, сообщили ли о диагностике.

Реализация функции (Функция Simulink) использует ввод графических данных (id), чтобы наблюдать последнюю диагностику, о которой сообщают, и передать это значение как выходной аргумент (identifier) вызывающей стороне. Ввод графических данных является сигналом серверной стороны, который не является частью интерфейса сервера.

Функция inspectDiagnostic является примером шаблона "наблюдатель". Этот шаблон помогает к коммуникации данных от функции до вызывающей стороны.

Смотрите также

Блоки

Похожие темы