Обмен моделями Modelica FMU - PullRequest
4 голосов
/ 07 мая 2020

Я попытался обменяться своей моделью Modelica с одним из моих коллег, но столкнулся с трудностями относительно путей к CSV-файлам.

Когда я создаю FMU, пути к некоторым файлам CSV задаются и указывают на папки на моем компьютере. Например, C: / Users / Me / file.csv. Это явно не работает для моего коллеги.

Как я могу экспортировать мою модель Modelica (Dymola) таким образом, чтобы пути были установлены относительно пользователя?

1 Ответ

9 голосов
/ 07 мая 2020

Наиболее распространенный способ - использовать функцию loadResource(), предоставляемую стандартной библиотекой Modelica (MSL) по адресу Modelica.Utilities.Files.loadResource, чтобы указать путь к файлу. Обычно это выполняется с использованием URI Modelica, который может выглядеть следующим образом:

filename=Modelica.Utilities.Files.loadResource("modelica://myLib/Resources/Data/file.csv")

Это указывает путь относительно root пути библиотек. Обычно файлы данных хранятся в папке «Ресурсы» в библиотеке.

Это имеет то преимущество, что при создании FMU в Dymola вы можете установить флажок «Копировать ресурсы в FMU», который будет внедрять файл непосредственно в FMU, если отмечено. Если этот флажок не установлен, файл будет искать в указанном каталоге.

...