Как решить ошибку «Не удается найти или подключиться к существующему сеансу MATLAB» в JModelica - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь использовать в JModelica модель FMU, созданную с помощью Simulink.Когда я использую функцию load_fmu, я получаю в файле журнала следующую ошибку:

FMIL: модуль = Модель, уровень журнала = 2: [logStatusError] [Состояние FMU: Ошибка] Не удается найти доступныйСеанс MATLAB открыт для совместного моделирования.

FMIL: модуль = Модель, уровень журнала = 2: [logStatusError] [Состояние FMU: Ошибка] fmi2Instantiate: Невозможно найти или подключиться к существующему сеансу MATLAB.

Сначала я установил API-интерфейс Matlab Engine для Python, используя this .
Затем я запускаю сеанс Matlab в Matlab:

shareMATLABForFMUCoSim

Я запускаюсь от имени администратора "pylab64" вJModelica и выполнить:

import matlab.engine 
eng=matlab.engine.connect_matlab()

Наконец, я пытаюсь загрузить модель FMU с помощью:

from pymodelica import compile_fmu
from pyfmi import load_fmu
model=load_fmu(fmufile)

Затем я получаю сообщение об ошибке:

FMUException:Не удалось создать экземпляр модели.См. Журнал для получения дополнительной информации.

И файл журнала, описанный выше.

Я думаю, что соединение с Matlab создано правильно, потому что я могу выполнить eng.sqrt(4.0), и я получаюправильный ответ (2.0).

Есть ли какая-то проблема, которую я не учел, чтобы я мог загрузить модель FMU в JModelica?

...