Modelica Dymola: Как изменить параметры компонента во время моделирования графа состояний?

Скажем, у меня есть модель жидкости с начальным давлением, температурой, настройками клапана и т. Д.

Есть ли способ запустить симуляцию графа состояний, где каждое из состояний содержит новые настройки параметров компонентов для модели, то есть некоторые параметры некоторых выбранных компонентов изменяются в одном состоянии и снова изменяются в следующем состоянии?

Например, во время State1 зададим значения для следующих параметров компонента:

  • source.pressure = 1
  • source.temperature = 1
  • valve1.opening = 1

Пока State1 не переключится на State2, где параметры:

  • source.pressure = 0,5
  • исходная температура = 0,5
  • valve1.opening = 0,5

Спасибо за ваше время :-)


person Russ D.    schedule 27.05.2015    source источник


Ответы (1)


Краткий ответ: Нет. Для этого варианта использования вы должны использовать дискретные переменные (и изменять их с помощью предложения when).

Длинный ответ: Начиная с версии 3.3, Modelica имеет новую функцию, называемую State Machines (см. Главу 17 спецификации). Теоретически он должен делать то, что вам нужно, но он все равно может содержать ошибки, поскольку он довольно новый.

То, что вы пытаетесь сделать, называется «моделированием структуры переменных» (хотя только изменение параметров вряд ли можно назвать «структурой переменных» и, как подсказывает мой короткий ответ, может быть реализовано с использованием дискретных переменных). Задолго до того, как StateMachines представили Modelica, это было (и остается) активной областью исследований. Вы также можете использовать внешний инструмент для достижения своей цели, например DysMo

person choeger    schedule 27.05.2015