Commit e76e0178 authored by i.elizarov's avatar i.elizarov
Browse files

Merge branch 'cooling_plant'

parents 175dfe34 9d0c87f1
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