Revision history [back]
openmodelica - how to create a model of a room with floor heating and air exchange to outside ?
I am trying to model a room in OpenModelica but there are a few unclear points when using models from Buildings.ThermalZones.Detailed.MixedAir library.
For now, i want to model a room with floor heating, 3 walls connected to the inside of the house (const. temp.) and one wall with window on the exterior, exposed to the weather. The floor heating is modelled with radiantslabs.
until now i have this:
Buildings.ThermalZones.Detailed.MixedAir mixedAir1(
redeclare package Medium = Buildings.Media.Air, AFlo = 13.4, T_start = 273.15 + 22, datConExtWin(layers = {aussenwand}, A = 4.1875 * 2.67, glaSys = {glaSys}, hWin = 2, wWin = 1.5, ove(wR = {0}, wL = {0}, gap = {0}, dep = {0}), fFra = 0.25, til = Buildings.Types.Tilt.Wall, azi = {Buildings.Types.Azimuth.W}), energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, hRoo = 2.67, lat = 46.20, nConBou = 0, nConExt = 0, nConExtWin = 1, nConPar = 0, nSurBou = 5, surBou(layers = {parkett, aussenwand, aussenwand, aussenwand, boden}, names = {"Boden","wallN", "WallE", "WallS", "ceiling"}, A = {13.4,4.81 * 2.6, 3.2 * 2.6, 4.81 * 2.6, 13.4}, absIR = {0.9,0.9, 0.9, 0.9, 0.9}, absSol = {0.9,0.9, 0.9, 0.9, 0.9}, til = {Buildings.Types.Tilt.Floor, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Ceiling}), use_C_flow = false) "Room Model"
parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic boden(nLay = 5, material = {Buildings.HeatTransfer.Data.Solids.Generic(x = 0.2, k = 1.8, c = 1100, d = 2400), Buildings.HeatTransfer.Data.Solids.InsulationBoard(x = 0.02), Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.02), Buildings.HeatTransfer.Data.Solids.Concrete(x = 0.08, nSta = 5), Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.01)}) "Material definition for Layers around FloorHeating" annotation(
Placement(visible = true, transformation(extent = {{56, 104}, {76, 124}}, rotation = 0)));
parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic parkett(nLay = 1, material = { Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.01)}) "Material definition for floor(Parkett)" annotation(
Placement(visible = true, transformation(extent = {{56, 104}, {76, 124}}, rotation = 0))) ;
replaceable parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic aussenwand(nLay = 3, material = {Buildings.HeatTransfer.Data.Solids.GypsumBoard(x = 0.025), Buildings.HeatTransfer.Data.Solids.Brick(x = 0.49), Buildings.HeatTransfer.Data.Solids.GypsumBoard(x = 0.01)}) "Material Aussenwände" annotation(
Placement(visible = true, transformation(origin = {32, 76}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
parameter Buildings.HeatTransfer.Data.GlazingSystems.DoubleClearAir13Clear glaSys(UFra = 2, shade = Buildings.HeatTransfer.Data.Shades.Gray(), haveInteriorShade = false, haveExteriorShade = false) "Data record for the glazing system";
which leads to the error:
Type mismatch in array expression in component <Prefix.NOPRE()>. aussenwand is of type record Buildings.HeatTransfer.Data.OpaqueConstructions.Generic$parkett
why?
openmodelica - how to create a model of a room with floor heating and air exchange to outside ?
I am trying to model a room in OpenModelica but there are a few unclear points when using models from Buildings.ThermalZones.Detailed.MixedAir library.
For now, i want to model a room with floor heating, 3 walls connected to the inside of the house (const. temp.) and one wall with window on the exterior, exposed to the weather. The floor heating is modelled with radiantslabs.
until now i have this:
Buildings.ThermalZones.Detailed.MixedAir mixedAir1(
redeclare package Medium = Buildings.Media.Air, AFlo = 13.4, T_start = 273.15 + 22, datConExtWin(layers = {aussenwand}, A = 4.1875 * 2.67, glaSys = {glaSys}, hWin = 2, wWin = 1.5, ove(wR = {0}, wL = {0}, gap = {0}, dep = {0}), fFra = 0.25, til = Buildings.Types.Tilt.Wall, azi = {Buildings.Types.Azimuth.W}), energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, hRoo = 2.67, lat = 46.20, nConBou = 0, nConExt = 0, nConExtWin = 1, nConPar = 0, nSurBou = 5, surBou(layers = {parkett, aussenwand, aussenwand, aussenwand, boden}, names = {"Boden","wallN", "WallE", "WallS", "ceiling"}, A = {13.4,4.81 * 2.6, 3.2 * 2.6, 4.81 * 2.6, 13.4}, absIR = {0.9,0.9, 0.9, 0.9, 0.9}, absSol = {0.9,0.9, 0.9, 0.9, 0.9}, til = {Buildings.Types.Tilt.Floor, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Ceiling}), use_C_flow = false) "Room Model"
parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic boden(nLay = 5, material = {Buildings.HeatTransfer.Data.Solids.Generic(x = 0.2, k = 1.8, c = 1100, d = 2400), Buildings.HeatTransfer.Data.Solids.InsulationBoard(x = 0.02), Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.02), Buildings.HeatTransfer.Data.Solids.Concrete(x = 0.08, nSta = 5), Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.01)}) "Material definition for Layers around FloorHeating" annotation(
Placement(visible = true, transformation(extent = {{56, 104}, {76, 124}}, rotation = 0)));
parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic parkett(nLay = 1, material = { Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.01)}) "Material definition for floor(Parkett)" annotation(
Placement(visible = true, transformation(extent = {{56, 104}, {76, 124}}, rotation = 0))) ;
replaceable parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic aussenwand(nLay = 3, material = {Buildings.HeatTransfer.Data.Solids.GypsumBoard(x = 0.025), Buildings.HeatTransfer.Data.Solids.Brick(x = 0.49), Buildings.HeatTransfer.Data.Solids.GypsumBoard(x = 0.01)}) "Material Aussenwände" annotation(
Placement(visible = true, transformation(origin = {32, 76}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
0))); parameter Buildings.HeatTransfer.Data.GlazingSystems.DoubleClearAir13Clear glaSys(UFra = 2, shade = Buildings.HeatTransfer.Data.Shades.Gray(), haveInteriorShade = false, haveExteriorShade = false) "Data record for the glazing system";
which leads to the error:
error:
Type mismatch in array expression in component <Prefix.NOPRE()>. aussenwand is of type record Buildings.HeatTransfer.Data.OpaqueConstructions.Generic$parkett
why?
openmodelica - how to create a model of a room with floor heating and air exchange to outside ?
I am trying to model a room in OpenModelica but there are a few unclear points when using models from Buildings.ThermalZones.Detailed.MixedAir library.library.
Generally: often I get the error "xy could not be found in the scope of "modelName" "
what does this mean exactly? do i have to include some library or where should i best save my own models? Am I just using wrong declarations?
For now, i specifically:
I don't understand the meanings of the boundaries used for heat transfer through the walls. If a heat transfer is "modelled outside the room", does this mean that it is modelled in another model?
say I want to model a room with floor heating, 3 walls connected to include the inside of the house (const. temp.) and one wall with window on the exterior, exposed to the weather. The floor heating (radiantslabs within the floor layers) into the heat balance, how is modelled with radiantslabs.
until now i have this: Buildings.ThermalZones.Detailed.MixedAir mixedAir1( redeclare package Medium = Buildings.Media.Air, AFlo = 13.4, T_start = 273.15 + 22, datConExtWin(layers = {aussenwand}, A = 4.1875 * 2.67, glaSys = {glaSys}, hWin = 2, wWin = 1.5, ove(wR = {0}, wL = {0}, gap = {0}, dep = {0}), fFra = 0.25, til = Buildings.Types.Tilt.Wall, azi = {Buildings.Types.Azimuth.W}), energyDynamics = Modelica.Fluid.Types.Dynamics.FixedInitial, hRoo = 2.67, lat = 46.20, nConBou = 0, nConExt = 0, nConExtWin = 1, nConPar = 0, nSurBou = 5, surBou(layers = {parkett, aussenwand, aussenwand, aussenwand, boden}, names = {"Boden","wallN", "WallE", "WallS", "ceiling"}, A = {13.4,4.81 * 2.6, 3.2 * 2.6, 4.81 * 2.6, 13.4}, absIR = {0.9,0.9, 0.9, 0.9, 0.9}, absSol = {0.9,0.9, 0.9, 0.9, 0.9}, til = {Buildings.Types.Tilt.Floor, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Wall, Buildings.Types.Tilt.Ceiling}), use_C_flow = false) "Room Model" parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic boden(nLay = 5, material = {Buildings.HeatTransfer.Data.Solids.Generic(x = 0.2, k = 1.8, c = 1100, d = 2400), Buildings.HeatTransfer.Data.Solids.InsulationBoard(x = 0.02), Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.02), Buildings.HeatTransfer.Data.Solids.Concrete(x = 0.08, nSta = 5), Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.01)}) "Material definition for Layers around FloorHeating" annotation( Placement(visible = true, transformation(extent = {{56, 104}, {76, 124}}, rotation = 0))); parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic parkett(nLay = 1, material = { Buildings.HeatTransfer.Data.Solids.Plywood(x = 0.01)}) "Material definition for floor(Parkett)" annotation( Placement(visible = true, transformation(extent = {{56, 104}, {76, 124}}, rotation = 0))) ; replaceable parameter Buildings.HeatTransfer.Data.OpaqueConstructions.Generic aussenwand(nLay = 3, material = {Buildings.HeatTransfer.Data.Solids.GypsumBoard(x = 0.025), Buildings.HeatTransfer.Data.Solids.Brick(x = 0.49), Buildings.HeatTransfer.Data.Solids.GypsumBoard(x = 0.01)}) "Material Aussenwände" annotation( Placement(visible = true, transformation(origin = {32, 76}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
parameter Buildings.HeatTransfer.Data.GlazingSystems.DoubleClearAir13Clear glaSys(UFra = 2, shade = Buildings.HeatTransfer.Data.Shades.Gray(), haveInteriorShade = false, haveExteriorShade = false) "Data record for the glazing system"; which leads to the error: Type mismatch in array expression in component
why?this done?
openmodelica - how to create a model of a room with floor heating and air exchange to outside ?
I am trying to model a room in OpenModelica but there are a few unclear points when using models from Buildings.ThermalZones.Detailed.MixedAir library. Generally: often I get the error "xy could not be found in the scope of "modelName" " what does this mean exactly? do i have to include some library or where should i best save my own models? Am I just using wrong declarations?
specifically: I don't understand the meanings of the boundaries used for heat transfer through the walls. If a heat transfer is "modelled outside the room", does this mean that it is modelled in another model? say I want to include the floor heating (radiantslabs within the floor layers) into the heat balance, how is this done?