qq_45102730 2024-11-07 10:45 采纳率: 0%
浏览 3
问题最晚将于11月15日00:00点结题

Python调用dll文件输出Nan重置dll状态

我用simulink模型生成了一个dll文件,在Python中调用该文件。该模型运行到一半后模型会因为动力学解算问题输出Nan,我关闭程序重新启动程序,该dll模型还是会运行到一半因为动力学解算输出Nan。但是我想尝试用try-except循环调用该dll模型,但第一次运行dll模型输出Nan后,下一次运行模型一开始就是Nan,似乎dll状态没有被重置,该怎么在不关闭程序的情况下实现像实现关闭程序重新启动程序一样完全重置dll状态。每一次运行dll后我都添加了代码.terminate()和.initialize()。可是还是不能完全实现dll状态完全重置。怎么才能实现出现Nan后对dll模型完全重置?

  • 写回答

13条回答 默认 最新

  • 专家-皆知 2024-11-07 10:45
    关注

    以下回复引自免费微信小程序:皆我百晓生。 如问题解决,还请采纳。如仍有疑问,请回复留言或私信博主,以便获得更精准的帮助。

    在SIMULINK中,你不能直接使用PYTHON调用DLL文件中的函数进行输出NAN重置。这是因为模拟器的编程环境与仿真软件(如PYMC3)不同,它们使用的语言和API是不同的。然而,你可以通过以下步骤来解决这个问题:

    1. 调试仿真:首先,确保你的仿真环境已经正确配置了PYTHON库,并且仿真器能够识别并处理PYTHON脚本。然后,尝试将你的PYTHON脚本导入到仿真环境中,这样可以查看你的代码是否正常工作。

    2. 模拟加载和输出:在仿真环境中,你需要模拟出一个模拟器,它需要调用你的PYTHON脚本来执行特定的操作。例如,如果你有一个包含动态矩阵的模拟器,你可以在仿真环境中模拟它的行为,并观察输出结果。

    3. 使用PYTHON代码:当仿真结束时,你应该能看到你的PYTHON脚本是如何影响输出的结果的。这可以通过在仿真环境中运行你的PYTHON脚本来实现。确保你的PYTHON脚本没有错误或不兼容的特性。

    4. 检查仿真环境:最后,检查你的仿真环境,确保所有必要的设置都已正确启用。如果仿真环境无法正常工作,可能是因为其他因素导致的,比如内存泄漏、系统错误等。

    5. 考虑使用第三方库:如果你对仿真环境有特殊需求,或者需要更高级的功能,可以考虑使用第三方库来完成这个任务。这些库通常提供了一些额外的功能,可以帮助你在仿真环境中更好地处理输入/输出操作。

    6. 了解PYTHON与仿真环境的关系:了解PYTHON与仿真环境之间的交互方式非常重要。在选择使用哪种方法时,你应该仔细研究你的目标应用的需求和限制。

    对于具体的示例,你需要提供更多的信息才能准确回答你的问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 今天

悬赏问题

  • ¥15 Marscode IDE 如何预览新建的 HTML 文件
  • ¥15 K8S部署二进制集群过程中calico一直报错
  • ¥15 java python或者任何一种编程语言复刻一个网页
  • ¥20 如何通过代码传输视频到亚马逊平台
  • ¥15 php查询mysql数据库并显示至下拉列表中
  • ¥15 freertos下使用外部中断失效
  • ¥15 输入的char字符转为int类型,不是对应的ascall码,如何才能使之转换为对应ascall码?或者使输入的char字符可以正常与其他字符比较?
  • ¥15 devserver配置完 启动服务 无法访问static上的资源
  • ¥15 解决websocket跟c#客户端通信
  • ¥30 Python调用dll文件输出Nan重置dll状态