网淘吧Visual Components、Flexsim 仿真技术博客 | Python、C#、Delphi xe 机器人编程教程 - 网淘吧

能耗仿真:Python 脚本动态计算总能耗及统计图表不更新的解决方法- Python Programming - visual compents 疑难解答

2026-04-03 新闻来源:网淘吧 围观:34
电脑广告
手机广告

Raj

大家好,

我正在尝试获取某台机器的能耗统计数据(图形表示)。在机器的组件建模中,我定义了空闲、工作和关机功率,并设置了一些以 kW 为单位的数值。此外,我还编写了一个 Python 脚本来计算仿真期间的总能耗。
(附截图)
但是,当我从统计信息中插入图表时,它显示为常数,并未显示仿真过程中动态变化的空闲、工作和关机功率。同时,总能耗值也没有计算出来。

我不知道哪里出错了。恳请分享您的想法来帮助解决这个问题。
谢谢:slight_smile:





OnRun 中没有循环,因此它只在仿真开始时计算并设置一次属性值。

如果目标是按固定间隔运行一个循环,通常 OnRun 的使用方式如下:

def OnRun():
  dt = 1.0 # 1 秒
  while True:
    # 在此处编写逻辑
    delay(dt)

现在你的脚本正在读取属性的当前值,并且已经有变量 lastTime 来计算自上次调用以来的时间差,你可以使用 OnSimulationUpdate 来实现该逻辑:

def OnSimulationUpdate(simtime):
  global lastTime
  dt = simtime - lastTime
  lastTime = simtime
  # 在此处编写逻辑

每当场景更新时都会调用此方法。在 1 倍仿真速度和空布局下,每 40 毫秒调用一次。某些组件可能会调用 getSimulation().update(),然后该方法会以不均匀的间隔更频繁地被调用。
image

附注:我将把这个主题移动到 Python 编程板块。

非常感谢您的回复。
但是,我仍然无法绘制出仿真过程中“总能耗”动态变化的图表。

EnergyConsumed 属性的值是否发生了变化,但该值并未反映在统计信息面板中?请检查“主页”选项卡中的统计信息间隔设置。是不是一个很大的数字,例如 3600 秒?数据点将按照该间隔绘制,而不是更频繁。

在你采纳了我的建议之后,脚本看起来是什么样的?

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏

文章底部电脑广告
手机广告位-内容正文底部

相关文章

上网淘巴领天猫淘宝优惠券,一年省好几千。

广告  ×

您是本站第854318名访客 今日有0篇新文章/评论