thanks for your answeringEnergyplus does not model the HVAC system using a dead band. Meaning that the system does not turn on for a period of time and then turn off for a period of time as the zone temperature floats between two limits (i.e., a 1 or 2 degree dead band).
Instead, Energyplus cycles the compressor on and off at a cycling rate that mimics a real system. The zone temperature will not change if the system has the capacity to meet the thermostat set point. If you really want the zone temperature to change, you will need to control the availability schedule of the HVAC system to turn on and off based on the zone temperature.sorry you mean if i set thermostat setpoint temperature for example at 20 C' and then after while the zone air temperature reaches up to 20 "C then the hvac system doeas'nt off ?This can be done using EMS programming.
Here is a response to another user describing an EMS program used to control the ideal loads air system using a dead band.
This EMS program can be applied to any HVAC system type with some modifications.
Energyplus does not model a thermostat as you describe, instead it maintains the set point to meet a load. You can, however, create an EMS program to accomplish this type of control. The second input to the ideal loads air system is the availability schedule.
ZoneHVAC:IdealLoadsAirSystem,
Name,
Availability Schedule Name,
When the schedule is > 0, the system is "active". And if you choose the cooling/heating set points to be 24C and 19C, respectively, then the system will be on for cooling if the temp is above 24C, and on for heating if the temp is below 19C.
Heating ON at 15 oC and OFF at 19 oC
Cooling ON at 27 oC and OFF at 24 oC.
The example file EMSCustomSchedule.idf shows how to use the EMS system to manipulate a schedule. In this example, the schedule values are the cooling/heating set points. In your file, the schedule values will determine if the ideal loads air system is "active" (values > 0). Your actuator will be the ideal loads air system "Availability Schedule"
EnergyManagementSystem:Actuator,
myIdealLoadsAirSys_SCH, !- Name
ILAS_SCH, !- Actuated Component Unique Name
Schedule:Constant, !- Actuated Component Type
Schedule Value; !- Actuated Component Control Type
You will also need to read the zone temperature, this is done using a sensor.
EnergyManagementSystem:Sensor,
ZoneTemp, !- Name
East Zone, !- Output:Variable or Output:Meter Index Key Name
Zone Mean Air Temperature; !- Output:Variable or Output:Meter Name
And your program will set the availability schedule value to 0 when you want the system off, and to 1 when you want the system on.i think when i set thermostat heating setpoint at 20'c then it automaticly off or on the system , you say it is wrong But EMS can do it yes ?You may also be able to define the same control logic by changing the heating/cooling set point temperatures as the example file shows. But looking to control the availability of the ideal loads air system will look something like this.
EnergyManagementSystem:ProgramCallingManager,
ILAS OnOff Management,
InsideHVACSystemIterationLoop,
MyAvailSchSetpointProg;
EnergyManagementSystem:Program,
MyAvailSchSetpointProg,
IF (ZoneTemp > 27),
Set CoolingEnabled = 1.0,
ENDIF,
IF (ZoneTemp < 24.01),
Set CoolingEnabled = 0.0,
ENDIF,
IF (ZoneTemp 18.99),
Set HeatingEnabled = 0.0,
ENDIF,
IF (HeatingEnabled > 0.5 || CoolingEnabled > 0.5),
Set myIdealLoadsAirSys_SCH = 1.0,
ELSE,
Set myIdealLoadsAirSys_SCH = 0.0,
ENDIF;
! also turn on reporting to the edd file so you can review the execution of the EMS program.
Output:EnergyManagementSystem,
Verbose, !- Actuator Availability Dictionary Reporting
Verbose, !- Internal Variable Availability Dictionary Reporting
Verbose; !- EMS Runtime Language Debug Output Level
I tried this using the example file PurchAirTables.idf.
1) I created a schedule to be used in the East Zone ideal loads air system object.
Schedule:Constant,ILAS_SCH,Any Number,1.0;
2) I applied that scedule to the East Zone ideal loads air system
ZoneHVAC:IdealLoadsAirSystem,
Zone2Air, !- Name
ILAS_SCH, !- Availability Schedule Name
3) I added the EMS program above to the input file and focused on the "East Zone" to get the program working. I added the data dictionary as output (turns on the rdd file)and this schedule report variable to the input file.
Output:VariableDictionary,IDF;
Output:Variable,ILAS_SCH,Schedule Value,timestep;
When viewing the outputs (*.csv) I see that the ideal loads air system is turning on and off each time step. That is because the ideal loads air system has unlimited capacity.
ZoneHVAC:IdealLoadsAirSystem,
Zone2Air, !- Name
ILAS_SCH, !- Availability Schedule Name
NODE_2, !- Zone Supply Air Node Name
, !- Zone Exhaust Air Node Name
50, !- Maximum Heating Supply Air Temperature {C}
13, !- Minimum Cooling Supply Air Temperature {C}
0.015, !- Maximum Heating Supply Air Humidity Ratio {kg-H2O/kg-air}
0.009, !- Minimum Cooling Supply Air Humidity Ratio {kg-H2O/kg-air}
NoLimit, !- Heating Limit
autosize, !- Maximum Heating Air Flow Rate {m3/s}
, !- Maximum Sensible Heating Capacity {W}
NoLimit, !- Cooling Limit
autosize, !- Maximum Cooling Air Flow Rate {m3/s}
, !- Maximum Total Cooling Capacity {W}
I changed this object to:
ZoneHVAC:IdealLoadsAirSystem,
Zone2Air, !- Name
ILAS_SCH, !- Availability Schedule Name
NODE_2, !- Zone Supply Air Node Name
, !- Zone Exhaust Air Node Name
50, !- Maximum Heating Supply Air Temperature {C}
13, !- Minimum Cooling Supply Air Temperature {C}
0.015, !- Maximum Heating Supply Air Humidity Ratio {kg-H2O/kg-air}
0.009, !- Minimum Cooling Supply Air Humidity Ratio {kg-H2O/kg-air}
LimitCapacity, !- Heating Limit
autosize, !- Maximum Heating Air Flow Rate {m3/s}
4500, !- Maximum Sensible Heating Capacity {W}
LimitCapacity, !- Cooling Limit
autosize, !- Maximum Cooling Air Flow Rate {m3/s}
4500, !- Maximum Total Cooling Capacity {W}
The output (*.csv) now appears to have the control you described (see jpg). The V7 input file I used is also attached.
I used the EMS_Application_Guide.pdf and InputOutputReference.pdf files as references.The .jpg file was not attached in the group mail.
please send it again .sorry do you know how i can see the fortran code of energyplus?best regardsFrom: Richard Raustad <RRaustad@xxxxxxxxxxxx>
To: EnergyPlus_Support@xxxxxxxxxxxxxxx
Sent: Wednesday, January 11, 2012 7:21 PM
Subject: Re: [EnergyPlus_Support] how zone air temperature calculate in energyplus ?
thanks for your answeringEnergyplus does not model the HVAC system using a dead band. Meaning that the system does not turn on for a period of time and then turn off for a period of time as the zone temperature floats between two limits (i.e., a 1 or 2 degree dead band).
Instead, Energyplus cycles the compressor on and off at a cycling rate that mimics a real system. The zone temperature will not change if the system has the capacity to meet the thermostat set point. If you really want the zone temperature to change, you will need to control the availability schedule of the HVAC system to turn on and off based on the zone temperature.sorry you mean if i set thermostat setpoint temperature for example at 20 C' and then after while the zone air temperature reaches up to 20 "C then the hvac system doeas'nt off ?This can be done using EMS programming.
Here is a response to another user describing an EMS program used to control the ideal loads air system using a dead band.
This EMS program can be applied to any HVAC system type with some modifications.
Energyplus does not model a thermostat as you describe, instead it maintains the set point to meet a load. You can, however, create an EMS program to accomplish this type of control. The second input to the ideal loads air system is the availability schedule.
ZoneHVAC:IdealLoadsAirSystem,
Name,
Availability Schedule Name,
When the schedule is > 0, the system is "active". And if you choose the cooling/heating set points to be 24C and 19C, respectively, then the system will be on for cooling if the temp is above 24C, and on for heating if the temp is below 19C.
Heating ON at 15 oC and OFF at 19 oC
Cooling ON at 27 oC and OFF at 24 oC.
The example file EMSCustomSchedule.idf shows how to use the EMS system to manipulate a schedule. In this example, the schedule values are the cooling/heating set points. In your file, the schedule values will determine if the ideal loads air system is "active" (values > 0). Your actuator will be the ideal loads air system "Availability Schedule"
EnergyManagementSystem:Actuator,
myIdealLoadsAirSys_SCH, !- Name
ILAS_SCH, !- Actuated Component Unique Name
Schedule:Constant, !- Actuated Component Type
Schedule Value; !- Actuated Component Control Type
You will also need to read the zone temperature, this is done using a sensor.
EnergyManagementSystem:Sensor,
ZoneTemp, !- Name
East Zone, !- Output:Variable or Output:Meter Index Key Name
Zone Mean Air Temperature; !- Output:Variable or Output:Meter Name
And your program will set the availability schedule value to 0 when you want the system off, and to 1 when you want the system on.i think when i set thermostat heating setpoint at 20'c then it automaticly off or on the system , you say it is wrong But EMS can do it yes ?You may also be able to define the same control logic by changing the heating/cooling set point temperatures as the example file shows. But looking to control the availability of the ideal loads air system will look something like this.
EnergyManagementSystem:ProgramCallingManager,
ILAS OnOff Management,
InsideHVACSystemIterationLoop,
MyAvailSchSetpointProg;
EnergyManagementSystem:Program,
MyAvailSchSetpointProg,
IF (ZoneTemp > 27),
Set CoolingEnabled = 1.0,
ENDIF,
IF (ZoneTemp < 24.01),
Set CoolingEnabled = 0.0,
ENDIF,
IF (ZoneTemp 18.99),
Set HeatingEnabled = 0.0,
ENDIF,
IF (HeatingEnabled > 0.5 || CoolingEnabled > 0.5),
Set myIdealLoadsAirSys_SCH = 1.0,
ELSE,
Set myIdealLoadsAirSys_SCH = 0.0,
ENDIF;
! also turn on reporting to the edd file so you can review the execution of the EMS program.
Output:EnergyManagementSystem,
Verbose, !- Actuator Availability Dictionary Reporting
Verbose, !- Internal Variable Availability Dictionary Reporting
Verbose; !- EMS Runtime Language Debug Output Level
I tried this using the example file PurchAirTables.idf.
1) I created a schedule to be used in the East Zone ideal loads air system object.
Schedule:Constant,ILAS_SCH,Any Number,1.0;
2) I applied that scedule to the East Zone ideal loads air system
ZoneHVAC:IdealLoadsAirSystem,
Zone2Air, !- Name
ILAS_SCH, !- Availability Schedule Name
3) I added the EMS program above to the input file and focused on the "East Zone" to get the program working. I added the data dictionary as output (turns on the rdd file)and this schedule report variable to the input file.
Output:VariableDictionary,IDF;
Output:Variable,ILAS_SCH,Schedule Value,timestep;
When viewing the outputs (*.csv) I see that the ideal loads air system is turning on and off each time step. That is because the ideal loads air system has unlimited capacity.
ZoneHVAC:IdealLoadsAirSystem,
Zone2Air, !- Name
ILAS_SCH, !- Availability Schedule Name
NODE_2, !- Zone Supply Air Node Name
, !- Zone Exhaust Air Node Name
50, !- Maximum Heating Supply Air Temperature {C}
13, !- Minimum Cooling Supply Air Temperature {C}
0.015, !- Maximum Heating Supply Air Humidity Ratio {kg-H2O/kg-air}
0.009, !- Minimum Cooling Supply Air Humidity Ratio {kg-H2O/kg-air}
NoLimit, !- Heating Limit
autosize, !- Maximum Heating Air Flow Rate {m3/s}
, !- Maximum Sensible Heating Capacity {W}
NoLimit, !- Cooling Limit
autosize, !- Maximum Cooling Air Flow Rate {m3/s}
, !- Maximum Total Cooling Capacity {W}
I changed this object to:
ZoneHVAC:IdealLoadsAirSystem,
Zone2Air, !- Name
ILAS_SCH, !- Availability Schedule Name
NODE_2, !- Zone Supply Air Node Name
, !- Zone Exhaust Air Node Name
50, !- Maximum Heating Supply Air Temperature {C}
13, !- Minimum Cooling Supply Air Temperature {C}
0.015, !- Maximum Heating Supply Air Humidity Ratio {kg-H2O/kg-air}
0.009, !- Minimum Cooling Supply Air Humidity Ratio {kg-H2O/kg-air}
LimitCapacity, !- Heating Limit
autosize, !- Maximum Heating Air Flow Rate {m3/s}
4500, !- Maximum Sensible Heating Capacity {W}
LimitCapacity, !- Cooling Limit
autosize, !- Maximum Cooling Air Flow Rate {m3/s}
4500, !- Maximum Total Cooling Capacity {W}
The output (*.csv) now appears to have the control you described (see jpg). The V7 input file I used is also attached.
I used the EMS_Application_Guide.pdf and InputOutputReference.pdf files as references.The .jpg file was not attached in the group mail.
please send it again .best regards
On 1/11/2012 4:10 AM, Tooran wrote:Hi team
i have problem ,
i set thermostat heating set point at edit hvac zone group for example :20 'C
but i want to know what is real air temperature of the zone is ! for example in real building when i set thermpstat at 20 'C it does'nt mean that real temperature of the air is exactly 20'C some times it has deviation ,
i want to know in energyplus how i could see the real temperature of air zone ? and how it calculate ? i think in predictor and corrector it calculate zone air temperature but i dnt know how !
in output result , the air temperature and operative temperature and radiant temperature are showed but i think no one of them is the real air temperature of air zone
thanks-- Richard A. Raustad Senior Research Engineer Florida Solar Energy Center University of Central Florida 1679 Clearlake Road Cocoa, FL 32922-5703 Phone: (321) 638-1454 Fax: (321) 638-1439 or 1010 Visit our web site at: http://www.fsec.ucf.edu UCF - From Promise to Prominence: Celebrating 40 Years
-- Richard A. Raustad Senior Research Engineer Florida Solar Energy Center University of Central Florida 1679 Clearlake Road Cocoa, FL 32922-5703 Phone: (321) 638-1454 Fax: (321) 638-1439 or 1010 Visit our web site at: http://www.fsec.ucf.edu UCF - From Promise to Prominence: Celebrating 40 Years