Моделирование графика режима

О графиках режима

Графики режима обеспечивают интуитивный путь к компонентам модели, охарактеризованным дискретным набором отличных рабочих режимов. Автомобильная муфта является хорошим примером такого компонента. Это имеет несколько рабочих режимов с каждым режимом, задаваемым различной системой уравнений. Это также имеет логику перехода с набором определения условий предиката когда переходы муфты от одного режима до другого. Возможно смоделировать этот использующий примитив компонента построения, такие как переменные события и операторы 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 отрицателен, симуляция, запускается с блока во втором режиме, в противном случае — в первом режиме.

Похожие темы