Графики режима обеспечивают интуитивный путь к компонентам модели, охарактеризованным дискретным набором отличных рабочих режимов. Автомобильная муфта является хорошим примером такого компонента. Это имеет несколько рабочих режимов с каждым режимом, задаваемым различной системой уравнений. Это также имеет логику перехода с набором определения условий предиката когда переходы муфты от одного режима до другого. Возможно смоделировать этот использующий примитив компонента построения, такие как переменные события и операторы edge, но этот способ смоделировать испытывает недостаток в удобочитаемости. Для более комплексных компонентов файл становится громоздким и громоздким. Каждый раз, когда вы моделируете компонент с несколькими рабочими режимами и переходами, этот компонент является хорошим кандидатом на реализацию графика режима.
Эти построения на языке Simscape™ позволяют вам выполнить моделирование графика режима:
modecharts — Раздел верхнего уровня в файле компонента. Это может содержать одно или несколько построений modechart.
modechart — Именованное построение, которое содержит текстовое представление графика режима: режимы, переходы и дополнительная начальная спецификация режима.
modes — Раздел в графике режима, который описывает все рабочие режимы. Это может содержать одно или несколько построений mode.
режим Именованное построение, которое соответствует отличному рабочему режиму компонента, заданного набором уравнений.
transitions — Раздел в графике режима, который описывает переходы между рабочими режимами, на основе условий предиката.
initial — Дополнительный раздел в графике режима, который задает начальный рабочий режим, на основе условия предиката. Если предикат не верен, или если раздел initial отсутствует, то первый режим, перечисленный в разделе modes, активен в начале симуляции.
В ее самой простой форме может выглядеть так иерархическая структура раздела modecharts:
modecharts
mc1 = modechart
modes
mode m1
equations
...
end
end
mode m2
equations
...
end
end
end
transitions
m1->m2 : p1;
end
initial
m2 : p2;
end
end
endЭто содержит один график режима, mc1, с двумя режимами, m1 и m2.
Системные переходы от режима m1 до режима m2, когда условие предиката p1 верен.
Если условие предиката, p2 верен, симуляция, запускается в режиме m2, в противном случае в режиме m1.
В этом примере раздел transitions не задает переход от режима m2 до режима m1. Поэтому согласно этому графику режима, когда-то система достигает режима m2, она никогда не возвращается к режиму m1.
Используйте этот простой пример, чтобы понять, как графики режима работают. Для более подробного примера смотрите Переключатель с Гистерезисом.
component ExampleChart
inputs
u1 = 0;
end
outputs
y = 0;
end
parameters
p = 1;
end
modecharts(ExternalAccess = observe)
mc1 = modechart
modes
mode m1
equations
y==1;
end
end
mode m2
equations
y==2;
end
end
mode m3
equations
y==3;
end
end
end
transitions
m1->m2 : u1<0;
m2->m3 : u1>0;
end
initial
m2 : p<0;
end
end
end
end
Компонент реализует простую диаграмму с тремя рабочими режимами:
В первом режиме выходной сигнал равняется 1.
Во втором режиме выходной сигнал равняется 2.
В третьем режиме выходной сигнал равняется 3.
Переходы компонента сначала к второму режиму, когда входной сигнал отрицателен, и от второго до третьего режима, когда входной сигнал положителен.
Начальный режим зависит от значения параметров блоков: если параметр, p отрицателен, симуляция, запускается с блока во втором режиме, в противном случае — в первом режиме.