Sub-hourly residential appliance and lighting load generator — Générateur de charge subhoraire d'appareils résidentiels et d'éclairage
This set of scripts and subroutines are derived works of the CREST model for generating residential occupancy, and appliance and lighting profiles. The CREST tools and models may be accessed for free here and are distributed under the GNU General Public License version 3.
This derived work of the CREST model is for modelling the Canadian residential sector as described in "Adaptation and validation of an existing bottom-up model for simulating temporal and inter-dwelling variations of residential appliance and lighting demands" by A.D Wills, I. Beausoleil-Morrison, and V.I. Ugursal, Journal of Building Performance Simulation, Volume 11, 2018 - Issue 3 which may be accessed here.
The modifications implemented in this adaptation of the tool are as follows:
- Updated the transition probability matrices and activity probabilites based on the time of use surveys from the Canadian 2010 General Social Survey;
- Updated appliance electrical characteristics to reflect North American appliances;
- Added unallocated constant baseload;
- Seasonal variation of dryer usage based on data from the 2011 Survey of Household Energy Use (SHEU).
Unless otherwise noted, the source code for this project is protected by the Crown copyright of the Government of Canada and distributed under the GPLv3 license.
When contributing, post comments and discuss changes you wish to make via Issues.
Feel free to propose changes by creating Pull Requests. If you don't have write access, editing a file will create a Fork of this project for you to save your proposed changes to. Submitting a change to a file will write it to a new Branch in your Fork, so you can send a Pull Request.
If this is your first time contributing on GitHub, don't worry! Let us know if you have any questions.
In order to run the profile generator Perl will need to be installed on Windows. Please search for and select a Windows Perl interpreter online.
Perl is typically bundled with Linux distributions. If not, install Perl using the method for your distribution.
Before running the profile generator for the first time the PERL module dependencies need to be installed. This can be done by running the following from the command line in the project folder:
$ perl install_Dependancies.pl
Annual single dwelling occupancy and lighting and appliance profiles, at a 1-minute timestep, are generated by issuing the following command:
$ perl Appliance_Lighting_Generator.pl <input>.xml
This will generate four output files (annual 1-minute timestep):
- Occupancy_Profile.csv;
- Aggregate_Lighting_Demand.csv;
- Aggregate_Appliance_Demand.csv;
- Aggregate_App_Lighting_Demand.csv.
The occupancy profile indicates for each timestep the number of active occupants in the dwelling. This profile is also used as an input into the appliance and lighting profile generator. The other three profiles are self explanatory, and provides the real power demands. The appliance, lighting, and aggregated appliance and lighting profiles are in Watts.
Example input files are provided. The input is in XML format, and divided into two major sections:
- sim_parameters;
- inputs.
All items in sim_parameters shown in the example input files are required for generating profiles.
- The lighting and appliance calibration scalars correspond to
$C_{light,calibrate}$ and$C_{appl,calibrate}$ as described by Wills et al. (2018). They used 0.00808657549621997 and 2.52628443733964, respectively, for Ontario single-detached dwellings. - The lighting threshold is the level [W/m2] in which natural light levels are low enough such that artificial lighting may be required. See Richardson et al. (2009) for details. A standard deviation for this threshold is also required to create variance across dwellings. Richardson et al. (2009) used a mean threshold of 60 W/m2 with a standard deviation of 10 W/m2.
- The baseload inputs, in Watts, represents the unallocated baseload demands of the dwelling. A mean and standard deviation value is also required for this input. Wills et al. (2018) used 250 W with a standard deviation of 70 W for Ontario single-detached homes.
The inputs section is divided into several subsections:
- num_of_occ is the number of dwelling occupants [1-5];
- irr_path is the relative path to the global horizontal irradiance data [W/m2]. The data must be tab or space delimited, with the irradiance data in the second column. The data must be for a full year at a 1-minute timestep. The sample climate provided in the
example/climate
folder was generated using hourly CWEC weather data processed using the radiation algorithms in TRNSYS. The path to the file can be relative to where theAppliance_Lighting_Generator.pl
is located, or a full path. - The lighting_fixtures section is populated entries for each individual fixture in the dwelling. Each entry includes the fixture's rated power in Watts, as well as a description. The description is not used by the profile generator, but is included for input documentation.
- The cold_appliances input includes dwelling fridges and freezers. The following items must be included for each entry:
- uec - Unit energy consumption of the appliance [kWh/yr];
- base_cycles - Base (uncalibrated) number of cycles per year;
- mean_cycle_L - Mean cycle length [min];
- restart_delay - Delay restart after cycle [min];
- description - For input documentation.
- The general_appliances lists each appliance present in the dwelling. There may be duplicates of the same appliance. The full description general appliance inputs is located in data/appliance_database.xml.
Wills et al. (2018) classified three types of cold appliances with the following inputs:
- *Refrigerator * - base_cycles = 6116, mean_cycle_L = 35, restart_delay = 35;
- *Upright_Freezer * - base_cycles = 6116, mean_cycle_L = 20, restart_delay = 40;
- *Chest_Freezer * - base_cycles = 6116, mean_cycle_L = 14, restart_delay = 56;
The uec values were selected from data available in the report titled Energy consumption of Major Household Appliances Shipped in Canada: Trends for 1990-2010.
Two example files are provided in the example
folder: 2PersonApt.xml
and 5PersonApt.xml
. To run the examples, in a terminal navigate to the folder containing the Appliance_Lighting_Generator.pl
script and use the following command:
perl <PATH_TO_SCRIPTS>/Appliance_Lighting_Generator.pl example/2PersonApt.xml