Задайте переходы между режимами в графике режима
transitions from_mode -> to_mode : predicate_condition end
transitions начинает блок объявлений переходов в графике режима. transitions блокируйтесь, отключенный end ключевое слово, может содержать одно или несколько построений перехода.
Каждое построение перехода имеет следующий синтаксис:
from_mode -> to_mode : predicate_condition
где:
from_mode режим, активный перед переходом.
to_mode режим, активный после перехода.
predicate_condition выражение, которое должно быть верно для перехода, чтобы произойти.
Например, если график режима объявляет два режима, m1 и m2, следующий синтаксис указывает что системные переходы от режима m1 к режиму m2 когда p1 предикат верен:
transitions
m1 -> m2 : p1
end
Если несколько предикатов становятся верными одновременно, приоритет перехода задан порядком, они перечислены. Например, график режима объявляет три режима, m1, m2, и m3, и задает следующие переходы:
transitions
m1 -> m2 : p1
m1 -> m3 : p2
end
Если предикаты p1 и p2 станьте верными одновременно, системные переходы от режима m1 к режиму m2 (первый перечисленный переход).
Во время инициализации решатель устанавливает начальный режим сначала, и затем проверяет переходы. Если предикат перехода верен во время инициализации, система может запуститься в различном режиме, чем это, перечислил сначала (или задал initial создайте). Например, рассмотрите график режима, который объявляет два режима, m1 и m2, и задает следующий переход:
transitions
m1 -> m2 : p1
end
Если предикат p1 верно во время инициализации, система сразу переходы от режима m1 (первый перечисленный режим) к режиму m2, и симуляция запускается в режиме m2.
initial | modecharts | modes