Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Jupyter抛出错误';OMC服务器已关闭。';使用OpenModelica';运行代码时;奥皮顿酒店_Python_Jupyter_Openmodelica - Fatal编程技术网

Python Jupyter抛出错误';OMC服务器已关闭。';使用OpenModelica';运行代码时;奥皮顿酒店

Python Jupyter抛出错误';OMC服务器已关闭。';使用OpenModelica';运行代码时;奥皮顿酒店,python,jupyter,openmodelica,Python,Jupyter,Openmodelica,错误已附加。 我从Temp文件夹中的给定位置打开了该文件,它只包含文本“C:\Program”未被识别为内部或外部命令、可操作程序或批处理文件 任何帮助都将不胜感激 - OMPython - ERROR - OMC Server is down. Please start it! Log-file says: 'C:\Program' is not recognized as an internal or external command, operable program or batch f

错误已附加。 我从Temp文件夹中的给定位置打开了该文件,它只包含文本“C:\Program”未被识别为内部或外部命令、可操作程序或批处理文件 任何帮助都将不胜感激

- OMPython - ERROR - OMC Server is down. Please start it! Log-file says:
'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
Exception                                 Traceback (most recent call last)
<ipython-input-3-2758f53a36c2> in <module>
----> 1 tank = ModelicaSystem('WaterTank.mo', 'WaterTank.ModWaterTank')
      2 q = tank.getQuantities()
      3 # print('Type of q: ', type(q))
      4 type(q)

~\Anaconda3\lib\site-packages\OMPython\__init__.py in __init__(self, fileName, modelName, lmodel, useCorba)
    679             self.getconn = OMCSession()
    680         else:
--> 681             self.getconn = OMCSessionZMQ()
    682         self.xmlFile = None
    683         self.lmodel = lmodel  # may be needed if model is derived from other model

~\Anaconda3\lib\site-packages\OMPython\__init__.py in __init__(self, readonly, timeout)
    539         self._start_omc_process()
    540         # connect to the running omc instance using CORBA
--> 541         self._connect_to_omc(timeout)
    542 
    543     def __del__(self):

~\Anaconda3\lib\site-packages\OMPython\__init__.py in _connect_to_omc(self, timeout)
    562                     self._omc_log_file.close()
    563                     logger.error("OMC Server is down. Please start it! Log-file says:\n%s" % open(name).read())
--> 564                     raise Exception("OMC Server is down. Could not open file %s" % self._port_file)
    565                 else:
    566                     continue

Exception: OMC Server is down. Could not open file C:/Users/RADICA~1/AppData/Local/Temp/openmodelica.port.7c438238bc7b4cbc89e2f7d57ab2e010
-OMPython-错误-OMC服务器已关闭。请开始!日志文件显示:
“C:\Program”未被识别为内部或外部命令,
可操作的程序或批处理文件。
异常回溯(最后一次最近调用)
在里面
---->1水箱=模型系统('WaterTank.mo'、'WaterTank.ModWaterTank')
2 q=储罐。获取数量()
3#打印(‘q类型:’,类型(q))
4型(q)
~\Anaconda3\lib\site packages\OMPython\\uuuuuu init\uuuuu中的.py(self、fileName、modelName、lmodel、useCorba)
679 self.getconn=OMCSession()
680其他:
-->681 self.getconn=OMCSessionZMQ()
682 self.xmlFile=无
683 self.lmodel=lmodel#如果模型是从其他模型派生的,则可能需要
~\Anaconda3\lib\site packages\OMPython\\uuuuuu init\uuuuuu中的.py(self,只读,超时)
539自启动omc过程()
540#使用CORBA连接到正在运行的omc实例
-->541自我连接到omc(超时)
542
543定义(自我):
~\Anaconda3\lib\site packages\OMPython\\uuuuuu init\uuuuuuuuu.py in\u connect\u to\u omc(self,超时)
562 self.\u omc\u log\u file.close()
563 logger.错误(“OMC服务器已关闭。请启动它!日志文件显示:\n%s”%open(name).read())
-->564引发异常(“OMC服务器已关闭。无法打开文件%s”%self.\u端口\u文件)
565其他:
566继续
异常:OMC服务器已关闭。无法打开文件C:/Users/RADICA~1/AppData/Local/Temp/openmodelica.port.7c438238bc7b4cbc89e2f7d57ab2e010

也许您使用的是较旧的OMPython,对我来说,它可以工作(即使在程序文件中安装了OpenModelica):

然后我用的是OMPython:

E:\bin\py64>python.exe
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import OMPython
>>> from OMPython import OMCSessionZMQ
>>> omc = OMCSessionZMQ()
2020-05-21 21:35:58,502 - OMPython - INFO - OMC Server is up and running at file:///C:/Users/adrpo33/AppData/Local/Temp/openmodelica.port.f995e0c74c4b4a7d900ef7442d798b89 pid=20112
>>> model_path=omc.sendExpression("getInstallationDirectoryPath()") + "/share/doc/omc/testmodels/"
>>> print(model_path)
E:/Program Files/OpenModelica1.14.0-64bit//share/doc/omc/testmodels/
>>> from OMPython import ModelicaSystem
>>> mod=ModelicaSystem(model_path + "BouncingBall.mo","BouncingBall")
2020-05-21 21:39:09,024 - OMPython - INFO - OMC Server is up and running at file:///C:/Users/adrpo33/AppData/Local/Temp/openmodelica.port.b631a8f8a6fe4e238c7dca8398fa429d pid=30128
>>> mod.getParameters()
{'e': '0.7', 'g': '9.810000000000001'}
>>> ^Z

您可以尝试通过上面的第一个命令(使用pip)更新您的OMPython。

Hm,我想我们需要修复OMPython以处理“程序文件”中的OpenModelica。现在,您可以在没有空格的路径中安装OpenModelica,例如C:\OpenModelica.Thank you@AdrianPop,这很有效。它在Jupyter中仍然显示相同的错误,但ompython在cmd中工作。我想我必须在anaconda中卸载并重新安装。
E:\bin\py64>python.exe
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import OMPython
>>> from OMPython import OMCSessionZMQ
>>> omc = OMCSessionZMQ()
2020-05-21 21:35:58,502 - OMPython - INFO - OMC Server is up and running at file:///C:/Users/adrpo33/AppData/Local/Temp/openmodelica.port.f995e0c74c4b4a7d900ef7442d798b89 pid=20112
>>> model_path=omc.sendExpression("getInstallationDirectoryPath()") + "/share/doc/omc/testmodels/"
>>> print(model_path)
E:/Program Files/OpenModelica1.14.0-64bit//share/doc/omc/testmodels/
>>> from OMPython import ModelicaSystem
>>> mod=ModelicaSystem(model_path + "BouncingBall.mo","BouncingBall")
2020-05-21 21:39:09,024 - OMPython - INFO - OMC Server is up and running at file:///C:/Users/adrpo33/AppData/Local/Temp/openmodelica.port.b631a8f8a6fe4e238c7dca8398fa429d pid=30128
>>> mod.getParameters()
{'e': '0.7', 'g': '9.810000000000001'}
>>> ^Z