Simulation¶
- class SimulatedCogenerationUnit(device_id, env)[source]¶
The simulation of a cogeneration unit
- get_efficiency_loss_factor()[source]¶
Computes efficiency loss on modulation and returns left efficiency in percent [0,1]
- get_electrical_energy_production()[source]¶
Returns produced electrical energy in kWh during current time-step
- get_thermal_energy_production()[source]¶
Returns produced thermal energy in kWh during current time-step
- off_time = None¶
Saves the last powered off time to ensure minimal_off_time
- overwrite_workload = None¶
Efficiency is reached only on maximum workload at minumum workload the efficiency is decreased by 15 %
- class SimulatedPeakLoadBoiler(device_id, env)[source]¶
The simulation of a peak load boiler
- calculate_workload()[source]¶
Switches on when the heat storage is undersupplied and off if target temperature is reached. Also detects power-ons and tracks operating time.
- get_thermal_energy_production()[source]¶
Returns produced thermal energy in kWh during current time-step
- off_time = None¶
Saves the last power off time to ensure 3 min off-time
- overwrite_workload = None¶
Device can have fixed workload without internal control. Be aware of overheating!
- class SimulatedThermalConsumer(device_id, env)[source]¶
The simulation of the thermal consume (heating and warm water) of a house
Usied formulas from http://www.model.in.tum.de/um/research/groups/ai/fki-berichte/postscript/fki-227-98.pdf and http://www.inference.phy.cam.ac.uk/is/papers/DanThermalModellingBuildings.pdf
- calculate()[source]¶
Update the heating parameters when a house parameter is changed. Therefore some assumptions are made
- get_consumption_energy()[source]¶
Returns consumed thermal energy for heating in kWh during current time-step
- get_outside_temperature()[source]¶
The thermal energy demand depends on the outside temperature. For the current simulated time (self.env.now) the outside temperature is returned.
- get_warmwater_consumption_energy()[source]¶
Returns needed thermal energy for warm water in kWh during current time-step
- get_warmwater_consumption_power()[source]¶
The energy needed for warm water is calculated by the amount of needed liters in average. For the time step the power is calculated which could heat the needed water of all residents to the given temperature (40 degrees Celsius default).
- heat_apartments()[source]¶
Increases the rooms temperature. With the current heating power an amount of energy for the current time-step is produced. This energy and the specific heat capacity of air (1000 J/(m^3 * K)) is needed for the temperature calculation.
- heat_loss_power()[source]¶
Returns the power in kW by with the house loses thermal energy at outer walls and windows. The outside temperature is needed for the temperature difference.
- class SimulatedElectricalConsumer(device_id, env)[source]¶
The simulation of the electrical consume of a house based on forecasting.
- class SimulatedHeatStorage(device_id, env)[source]¶
The simulation of a heat storage
- empty_count = None¶
count the steps when mimium temperature is undershot
- get_target_energy()[source]¶
Returns the overall energy needed for reaching the target temperature when the water is cold (base temperature)
- set_temperature(temperature)[source]¶
When the simulation is initialized to a real system the temperature of the real heat storage must be set
- temperature_loss = None¶
temperature loss per day by default 3 degress Celsius
- class SimulatedPowerMeter(device_id, env)[source]¶
The simulation of a power meter
- add_energy(energy)[source]¶
Devices should use this method to supply electrical energy.
Parameters: energy (float) – in kWh