Моделируйте избыточную пару датчиков с помощью атомарных субдиаграмм

Эта модель показывает, как смоделировать избыточную пару датчиков. При помощи атомарных субдиаграмм можно составить большой график Stateflow ® из других графиков, которые находятся в файле библиотеки.

Основной график

В этой модели график RedundantSensors содержит две связанные атомарные субдиаграммы (Sensor1 и Sensor2) и состояние (Alarm).

В начале симуляции субдиаграмма Sensor1 активно. Эта атомарная субдиаграмма читает входные u1. Если значение входа остается между 75 и -75, Sensor1 передает это значение как выход y. В противном случае происходит отказ датчика и субдиаграмма Sensor2 становится активным.

Подобным образом Sensor2 считывает входные u2 и проверяет, что его значение остается между 100 и -100. Sensor2 передает это значение как выход y. В противном случае датчик выходит из строя, и график переходит к Alarm состояние.

Библиотечные Графики

Логика для обоих Sensor1 и Sensor2 определяется в библиотечной модели. В этой модели график SingleSensor принимает вход u и обеспечивает выход отфильтрованного датчика y.

График обнаруживает ошибки вне области допустимого значения на входе датчика u. Первоначально датчик находится в состоянии OK. Если u выходит за пределы допустимого, график принимает переход от OK в состояние FailOnce. Если u находится вне области значений более одной секунды, затем график переходит в состояние Fail. В этом случае датчик выводит постоянное значение нуля. Этот шаблон позволяет датчику игнорировать переходные шипы в считывании датчика.

Сопоставьте входы, выходы и входные параметры

График RedundantSensors имеет два входа (u1 и u2), в то время как график библиотеки, который определяет атомарные субдиаграммы, имеет только один вход (u). Чтобы включить доступ атомарных субдиаграмм к другому входу диаграммы, щелкните правой кнопкой мыши каждая субдиаграмма и выберите Субдиаграмму Отображений. На вкладке Mappings диалогового окна свойств можно:

  • Укажите, какой символ на основном графике соответствует каждому символу на субдиаграмме.

  • Присвойте значения параметрам, определенным в субдиаграмме.

Для примера, в случае субдиаграммы Sensor1:

  • Входной параметр субдиаграммы u сопоставлен с входным параметром основного графика u1.

  • Выходные данные субдиаграммы u сопоставлен с выходными данными основного графика y.

  • Параметры субдиаграммы HIGH и LOW присвоены значения 75 и -75.

В случае субдиаграммы Sensor2:

  • Входной параметр субдиаграммы u сопоставлен с входным параметром основного графика u2.

  • Выходные данные субдиаграммы u сопоставлен с выходными данными основного графика y.

  • Параметры субдиаграммы HIGH и LOW присвоены значения 100 и -100.

Поведение симуляции

Первоначально оба входа и оба выхода на график равны нулю. Чтобы изменить значение входов графика, дважды кликните блоки Gain и перетащите ползунок.

Пока значение u1 находится в диапазоне от -75 до 75, выходе значение y отслеживает значение входа u1. Если значение u1 превышает эти границы, значение y начинает отслеживать значение входа u2. Если значение u2 выпадает за пределы области значений от -100 до 100, y возвращает значение нуля и Alarm возвращает значение единицы.

Похожие темы