Revision history  [back]

Sorry for updating this after some time. I used EMS to report number of hours when daylight illuminance was between 100 and 2000 lux (i.e. useful daylight). A value of less than 100lux means it is too dark and a value of 2000 lux means it is too bright (can't remember the publication title but one of the authors was Christoph Reinhart of MIT).

EnergyManagementSystem:Sensor,
BlockIllumminance,      !- Name
Block1:Zone1,                !- Output:Variable or Output:Meter Index Key Name
Daylighting Reference Point 1 Illuminance;  !- Output:Variable or Output:Meter Name

EnergyManagementSystem:ProgramCallingManager,
Illu3,  !- Name
EndOfZoneTimestepBeforeZoneReporting,  !- EnergyPlus Model Calling Point
IlluProg3;     !- Program Name 1

EnergyManagementSystem:Program,
IlluProg3,     !- Name
IF (BedOcc2 > 0) && ((BlockIllumminance >2000)  || (BlockIllumminance <100)),
SET ZoneIllu3 = ZoneTimeStep, 
ELSE,
SET ZoneIllu3 = 0,
ENDIF;

EnergyManagementSystem:GlobalVariable,
ZoneIllu3;

EnergyManagementSystem:OutputVariable,
Zone Illuminace Between 100 and 2000 Wile Occupied,  !- Name
ZoneIllu3,         !- EMS Variable Name
Summed,                  !- Type of Data in Variable
ZoneTimestep;            !- Update Frequency

Sorry for updating this after some time. I used EMS to report number of hours when daylight illuminance was between 100 and 2000 lux (i.e. useful daylight). A value of less than 100lux means it is too dark and a value of 2000 lux means it is too bright (can't remember the publication title but one of the authors was Christoph Reinhart of MIT).

bright. 

EnergyManagementSystem:Sensor, BlockIllumminance, !- Name Block1:Zone1, !- Output:Variable or Output:Meter Index Key Name Daylighting Reference Point 1 Illuminance; !- Output:Variable or Output:Meter Name Name

EnergyManagementSystem:ProgramCallingManager, Illu3, !- Name EndOfZoneTimestepBeforeZoneReporting, !- EnergyPlus Model Calling Point IlluProg3; !- Program Name 1 1

EnergyManagementSystem:Program, IlluProg3, !- Name IF (BedOcc2 > 0) && ((BlockIllumminance >2000) || (BlockIllumminance <100)), SET ZoneIllu3 = ZoneTimeStep, ELSE, SET ZoneIllu3 = 0, ENDIF; ENDIF;

EnergyManagementSystem:GlobalVariable, ZoneIllu3; ZoneIllu3;

EnergyManagementSystem:OutputVariable, Zone Illuminace Between 100 and 2000 Wile Occupied, !- Name ZoneIllu3, !- EMS Variable Name Summed, !- Type of Data in Variable ZoneTimestep; !- Update Frequency

Frequency