Matching a fan curve in Openmodelica #3655
Replies: 2 comments 1 reply
-
|
Greetings! The results from your model are as expected.
In order to see the fan curve you will have to force a pressure drop or flow rate while ensuring the normalised speed is enforced at 1 so that the fan can "ride the curve" along with the simulation, but it's actually not easy when components are put in a hydraulic loop and are all locked together in an equation system. Cheers, |
Beta Was this translation helpful? Give feedback.
-
|
Greetings!
When you run your model you effectively ran with option 1. As I explained in the previous post, even though you tried to specify Cheers, |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi, I'm new to Modelica and trying to simulate a loop consisting of a fan and a resistance. I expect to input my fan curve and resistance characteristics and obtain the intersection between the two plots as the result for pressure and mass flow.
The problem is, I can't seem to visualize the correct fan curve when I try to plot VMachine_flow and dpMachine. Additionally, I'm encountering the same curve for both the resistance and the fan.
Another issue is that I expect to find the equilibrium point in the results instead of just the last point of every plot.
The resistance should exhibit the following behavior:

This is the model I made:

this is the output plots of dp2.Dp vs dp2.m_flow vs and fan.DpMachine vs fan.m_flow:
and this is VMaschine_flow vs DpMachine plot witch look diffrent from my curve values :

And this is the following code:
`model fan
package Medium = Buildings.Media.Air;
Buildings.Fluid.Sources.Boundary_pT sou(
redeclare package Medium = Medium,
use_p_in=false,
p=101325,
T=293.15,
nPorts=2) annotation (Placement(transformation(extent={{-82,10},{-62,30}})));
Buildings.Fluid.FixedResistances.PressureDrop dp2(
redeclare package Medium = Medium,
m_flow_nominal=0.022,
dp_nominal=1) "Pressure drop" annotation (Placement(transformation(extent={{80,40},{100,60}})));
Buildings.Fluid.Movers.SpeedControlled_y fan(
redeclare package Medium = Medium,
per(pressure(V_flow = {0, 3.75, 10.64}, dp = {1525.23, 1394.5, 682.72})), addPowerToMedium = false, use_inputFilter = true)
Modelica.Blocks.Sources.Constant one(final k = 1) annotation(
Placement(transformation(origin = {30, 76}, extent = {{-40, 20}, {-20, 40}})));
equation
connect(fan.port_b, dp2.port_a) annotation(
Line(points = {{60, 50}, {80, 50}}, color = {0, 127, 255}));
connect(dp2.port_b, sou.ports[1]) annotation(
Line(points = {{100, 50}, {110, 50}, {110, 18}, {-62, 18}}, color = {0, 127, 255}));
connect(one.y, fan.y) annotation(
Line(points = {{12, 106}, {50, 106}, {50, 62}}, color = {0, 0, 127}));
connect(fan.port_a, sou.ports[2]) annotation(
Line(points = {{40, 50}, {-62, 50}, {-62, 20}}, color = {0, 127, 255}));
end fan;`
I would appreciate any guidance on resolving these issues.
thank you in advance
Beta Was this translation helpful? Give feedback.
All reactions