首页 文章

在OpenModelica中建模闭合液压循环

提问于
浏览
3

我'd like to model a closed hydraulic cycle as one can find in the Modelica Standard Library/Fluid/Examples/HeatingSystem. With the heating system as well as with my (minimalistic) example I'也有同样的问题:系统超定 . 您可以在下面的讲座中找到HeatingSystem作为"bad example",所以我想这是一个众所周知的问题,但我并不是真的明白这一点 . http://www.modprod.liu.se/MODPROD2011/1.252944/modprod2011-day2-talk3-Keynote-Francesco-Casella-Control-and-Modelica.pdf(第20页)

我的例子是:

一个泵

model producer
  pipe_flange w,k;
  parameter Real a,b,c;
equation
  w.p = k.p + a * k.Vp ^ 2 + b * k.Vp + c;
end producer;

抵抗

model consumer
  pipe_flange w,k;
  parameter Real rho;
  parameter Real d_i;
  parameter Real zeta;
equation
  k.p = w.p - rho / 2 * ((w.Vp * 4) / 3.14 * d_i ^ 2) ^ 2 * zeta;
end consumer;

他们与一个连接

connector pipe_flange
  Real p;
  flow Real Vp;
end pipe_flange;

整个系统是:

model System
  consumer consumer1(rho = 1000, d_i = 0.06, zeta = 0.5);
  producer producer1(a = -740741, b = -19630, c = 1070);
equation
  connect(consumer1.w,producer1.w);
  connect(consumer1.k,producer1.k);
end System;

任何人都能给我一个暗示问题的全部意义吗?

2 回答

  • 2

    你确定你的系统是 overdetermined 吗?我;不确定这是怎么回事,因为你的 producerconsumer 模型都不确定 .

    作为一般规则,组件中所需的方程数将等于所有连接器中的流变量数,内部变量的数量(参数不计)输出的数量 .

    通过这种方法,您的 producer 模型应该有2个方程式(因为它的所有连接器都有2个流量变量) . 同样,您的 consumer 模型应该有2个方程式(因为它的所有连接器都有两个流量变量) . 所以我看不出你怎么能产生太多的方程式 .

    您的模型也很棘手,因为您正在通过系统对动量流进行建模(通过连接器上的速度作为流量变量表示) . 但你的潜在变量是压力 . 您的问题中没有质量跟踪(通常存在) .

    因此,总而言之,您的组件模型肯定存在问题,因为它们是“不 balancer 的”(根据Modelica规范),因为它们没有正确数量的方程式 . 但即使在“物理”水平上,你的配方(压力和速度)在我的经验中也是不寻常的,而且在我看来,一旦方程 balancer 问题得到克服,它也可能导致问题 .

  • 0

    也许它有助于引入一个所谓的 loop-breaker 组件 . 对于闭合的液压循环,这可能是具有可变水平的expansion vesselstorage tank(实际上也存在这样的组件) .

相关问题