Commit 9d0c87f1 authored by i.elizarov's avatar i.elizarov
Browse files

Modified the plant model with the cooler, filter, and the tank

parent 7be1703c
model coolingPlant "Validation of the simplified hydraulic model of the side panel"
model coolingPlant "Model of the cooling plant"
package Medium =
Novec649;
parameter Modelica.SIunits.HeatFlowRate Q_max = 10.83e3 "Maximum cooling capacity of the plant";
Modelica.Fluid.Fittings.GenericResistances.VolumeFlowRate volumeFlowRate(redeclare package Medium = Medium, a = 748559700000000, b = 1212001000) annotation(
Placement(visible = true, transformation(origin = {54, -18}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
Placement(visible = true, transformation(origin = {144, -44}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
IBPSA.Fluid.Movers.SpeedControlled_y pump(
redeclare package Medium = Medium,
redeclare Data.PBMX201E102 per, T_start = 273.15 - 40, allowFlowReversal = false, energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, p_start = 3e5
redeclare Data.PBMX201E102 per, energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, p_start = 3e5
) annotation(
Placement(visible = true, transformation(origin = {-14, 16}, extent = {{-10, -10}, {10, 10}}, rotation = 180)));
Placement(visible = true, transformation(origin = {58, 54}, extent = {{-10, -10}, {10, 10}}, rotation = 180)));
IBPSA.Fluid.Sources.Boundary_pT bou(redeclare package Medium = Medium, T = 273.15 - 40, nPorts = 1, p = 3e5) annotation(
Placement(visible = true, transformation(origin = {-52, 56}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
inner Modelica.Fluid.System system(allowFlowReversal = false) annotation(
Placement(visible = true, transformation(origin = {-72, 54}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
inner Modelica.Fluid.System system annotation(
Placement(visible = true, transformation(origin = {90, 90}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Blocks.Sources.Constant pumpVelocity(k = 0.4) annotation(
Placement(visible = true, transformation(origin = {-50, -70}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
IBPSA.Fluid.Actuators.Valves.ThreeWayEqualPercentageLinear val(redeclare package Medium = Medium, CvData = IBPSA.Fluid.Types.CvTypes.Kv, Kv = 12, T_start = 273.15 - 40, energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, l = {0.02e-3, 0.2e-3}, m_flow_nominal = 1.125, m_flow_small = 1.125e-3, p_start = 3e5, portFlowDirection_1 = Modelica.Fluid.Types.PortFlowDirection.Entering, portFlowDirection_2 = Modelica.Fluid.Types.PortFlowDirection.Leaving, portFlowDirection_3 = Modelica.Fluid.Types.PortFlowDirection.Leaving) annotation(
Placement(visible = true, transformation(origin = {24, -32}, extent = {{-10, 10}, {10, -10}}, rotation = 0)));
Modelica.Blocks.Sources.Ramp valveOpening(duration = 250, height = 1, startTime = 1000) annotation(
Placement(visible = true, transformation(origin = {4, -76}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Placement(visible = true, transformation(origin = {-72, -88}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
IBPSA.Fluid.Actuators.Valves.ThreeWayEqualPercentageLinear val(redeclare package Medium = Medium, CvData = IBPSA.Fluid.Types.CvTypes.Kv, Kv = 12, energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, l = {0.02e-3, 0.2e-3}, m_flow_nominal = 1.125, p_start = 3e5, portFlowDirection_1 = Modelica.Fluid.Types.PortFlowDirection.Entering, portFlowDirection_2 = Modelica.Fluid.Types.PortFlowDirection.Leaving, portFlowDirection_3 = Modelica.Fluid.Types.PortFlowDirection.Leaving, riseTime = 15, use_inputFilter = true, y_start = 0.5) annotation(
Placement(visible = true, transformation(origin = {6, -26}, extent = {{-10, 10}, {10, -10}}, rotation = 0)));
IBPSA.Fluid.Sensors.VolumeFlowRate volJun(redeclare package Medium = Medium, allowFlowReversal = false, m_flow_nominal = 1.125 * 0.5) annotation(
Placement(visible = true, transformation(origin = {24, -2}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
Placement(visible = true, transformation(origin = {82, -6}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
IBPSA.Fluid.Sensors.VolumeFlowRate volDUT(redeclare package Medium = Medium, allowFlowReversal = false, m_flow_nominal = 1.125 * 0.5) annotation(
Placement(visible = true, transformation(origin = {54, 10}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
Placement(visible = true, transformation(origin = {146, 34}, extent = {{-10, -10}, {10, 10}}, rotation = 90)));
IBPSA.Fluid.FixedResistances.PressureDrop filter(redeclare package Medium = Medium, dp_nominal = 0.07e5, m_flow_nominal = 1.5854) annotation(
Placement(visible = true, transformation(origin = {10, 54}, extent = {{-10, -10}, {10, 10}}, rotation = 180)));
Modelica.Blocks.Sources.Constant const(k = 0.5) annotation(
Placement(visible = true, transformation(origin = {-72, -48}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
IBPSA.Fluid.HeatExchangers.SensibleCooler_T coo(redeclare package Medium = Medium, QMin_flow = -Q_max, dp_nominal = 7.94e3, energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, m_flow_nominal = 4050 / 3600, tau = 40) annotation(
Placement(visible = true, transformation(origin = {-36, 10}, extent = {{-10, -10}, {10, 10}}, rotation = -90)));
Modelica.Blocks.Sources.Step step(height = -40, offset = 273.15 + 20, startTime = 10) annotation(
Placement(visible = true, transformation(origin = {-104, 28}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
Modelica.Blocks.Continuous.FirstOrder firstOrder(T = 287.61) annotation(
Placement(visible = true, transformation(origin = {-70, 28}, extent = {{-8, -8}, {8, 8}}, rotation = 0)));
equation
connect(bou.ports[1], pump.port_b) annotation(
Line(points = {{-42, 56}, {-32, 56}, {-32, 16}, {-24, 16}}, color = {0, 127, 255}));
connect(pumpVelocity.y, pump.y) annotation(
Line(points = {{-38, -70}, {-14, -70}, {-14, 4}}, color = {0, 0, 127}));
Line(points = {{-61, -88}, {58, -88}, {58, 42}}, color = {0, 0, 127}));
connect(val.port_2, volumeFlowRate.port_a) annotation(
Line(points = {{34, -32}, {54, -32}, {54, -28}}, color = {0, 127, 255}));
connect(val.port_1, pump.port_b) annotation(
Line(points = {{14, -32}, {-32, -32}, {-32, 16}, {-24, 16}}, color = {0, 127, 255}));
connect(valveOpening.y, val.y) annotation(
Line(points = {{16, -76}, {24, -76}, {24, -44}}, color = {0, 0, 127}));
Line(points = {{16, -26}, {40, -26}, {40, -54}, {144, -54}}, color = {0, 127, 255}));
connect(val.port_3, volJun.port_a) annotation(
Line(points = {{24, -22}, {24, -12}}, color = {0, 127, 255}));
connect(volJun.port_b, pump.port_a) annotation(
Line(points = {{24, 8}, {24, 16}, {-4, 16}}, color = {0, 127, 255}));
Line(points = {{6, -16}, {6, -9}, {82, -9}, {82, -16}}, color = {0, 127, 255}));
connect(volumeFlowRate.port_b, volDUT.port_a) annotation(
Line(points = {{54, -8}, {54, 0}}, color = {0, 127, 255}));
connect(volDUT.port_b, volJun.port_b) annotation(
Line(points = {{54, 20}, {54, 30}, {24, 30}, {24, 8}}, color = {0, 127, 255}));
Line(points = {{144, -34}, {144, 2}, {146, 2}, {146, 24}}, color = {0, 127, 255}));
connect(pump.port_a, volJun.port_b) annotation(
Line(points = {{68, 54}, {68, 31}, {82, 31}, {82, 4}}, color = {0, 127, 255}));
connect(volDUT.port_b, pump.port_a) annotation(
Line(points = {{146, 44}, {146, 54}, {68, 54}}, color = {0, 127, 255}));
connect(pump.port_b, filter.port_a) annotation(
Line(points = {{48, 54}, {20, 54}}, color = {0, 127, 255}));
connect(bou.ports[1], filter.port_b) annotation(
Line(points = {{-62, 54}, {-46, 54}, {-46, 72}, {0, 72}, {0, 54}}, color = {0, 127, 255}));
connect(const.y, val.y) annotation(
Line(points = {{-60, -48}, {6, -48}, {6, -38}}, color = {0, 0, 127}));
connect(coo.port_a, filter.port_b) annotation(
Line(points = {{-36, 20}, {-36, 54}, {0, 54}}, color = {0, 127, 255}));
connect(coo.port_b, val.port_1) annotation(
Line(points = {{-36, 0}, {-36, -26}, {-4, -26}}, color = {0, 127, 255}));
connect(firstOrder.y, coo.TSet) annotation(
Line(points = {{-62, 28}, {-28, 28}, {-28, 22}}, color = {0, 0, 127}));
connect(step.y, firstOrder.u) annotation(
Line(points = {{-92, 28}, {-80, 28}}, color = {0, 0, 127}));
annotation(
uses(Modelica(version = "3.2.3"), IBPSA(version = "3.0.0")),
Diagram);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment