Skip to content

phygitalism/omfmi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

OpenModelica and PyFMI

Docker image with PyFMI and OpenModelica ​ FMU files generated for linux can be used with PyFMI. ​ Build on your own: ​

$ cd omfmi
$ docker build -t omfmi .

​ Or just pull from docker hub: ​

$ docker pull phygitalism/omfmi:1.0

​ ​ Run in docker: ​

$ docker run --rm -it -v "$(pwd)":/omfmi phygitalism/omfmi:1.0

​ Данный репозиторий содержит ссылку на docker-file, в котором настроена связь OpenModelica и PyFMI.

Эта связка была использована при реализации проекта PlantSim-Taneco.
​ Для генерации FMU модели, необходимо собрать имитационную модель системы в выбранной среде разработки (OpenModelica).
У FMI есть особенность – для каждой операционной системы, будь то Windows, Linux или MacOS генерируется FMU-файл предназначенный для одной конкретной операционной системы. Поэтому необходимо генерировать FMU-модель в среде, в которой он будет в дальнейшем использован, а для нашей системы это был Linux.

FMI означает функциональный макет интерфейса. Это открытый стандарт для обмена динамическими имитационными моделями между различными инструментами в стандартизованном формате. Значимость разработки на основе имитационных моделей значительно возрастает, когда модели cмогут повторно использоваться в разных контекстах. Стандарт FMI определяет открытый формат для экспорта и импорта имитационных моделей. Это означает, что вы можете выбрать инструмент, наиболее подходящий для каждого типа анализа, сохраняя ту же модель. Например, создать модель в среде Dymola, а продолжить использование модели в MapleSim, OpenModelica или других.
FMU (Functional Mock-Up Unit) – это файл (с расширением .fmu), который содержит имитационную модель, которая соответствует стандарту FMI. Имеет две версии: FMI 1.0, так и FMI 2.0 и два разных типа моделей – model exchange (обмен моделью) co-simulation (совместное моделирование).
​ Основные ведущие пакеты для моделирования, такие как Dymola, MapleSim, Matlab Simulink, OpenModelica поддерживают в том или ином виде стандарт FMI, что лишний раз доказывает востребованность стандарта.
Некоторые заметки по пакетам моделирования:

  • пакет Dymola не предоставляет пробного периода, а ее стоимость в год составляет 40000$
  • Matlab Simulink не поддерживает экспорт моделей FMU версии FMU 2.0 cs
  • OpenModelica бесплатна, но в ней плохо работают решатели (solvers) дифференциальных уравнений (ДУ) для переходных процессов.
    ​Модель завода Taneco была передана передана заказчиком из этого пакета, но в дальнейшем перед нами встала задача моделирования электрической платы и OpenModelica не справлялась с решаением ДУ неявным методом Эйлера. Для точной симмуляции электрических плат, рекомендуем использовать MapleSim. Он предоставляет бесплатный пробный период, поддерживает экспорт модели версии FMU 2.0 cs и успешно решает ДУ неявным методом Эйлера.

Releases

No releases published

Packages

No packages published