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.
-
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