:py:mod:`eelib.core.devices.ev.ev_model` ======================================== .. py:module:: eelib.core.devices.ev.ev_model .. autoapi-nested-parse:: eELib car models the mobility and charging behavior of EV. The EV's electricity demand is derived from profiles generated by the open-source tool emopby. The model calculates its soc in every step, based on the cars consumption and possible charging power derived from charging station. | Author: elenia@TUBS | Copyright 2024 elenia | This file is part of eELib, which is free software under the terms of the GNU GPL Version 3. Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: eelib.core.devices.ev.ev_model.EV Attributes ~~~~~~~~~~ .. autoapisummary:: eelib.core.devices.ev.ev_model.TOLERANCE_OVERCHARGED .. py:data:: TOLERANCE_OVERCHARGED :value: '3.0555555555555554' .. py:class:: EV(eid: str, start_time: str, file_emobpy: str, step_size: int = 60 * 15, n_steps: int = 1, soc_init: float = 0.5, set_emobpy_val: bool = True, soc_min: float = 0.02, e_max: int = 50000, p_nom_discharge_max: int = -11000, p_nom_charge_max: int = 11000, dcharge_efficiency: float = 0.95, charge_efficiency: float = 0.99) Models an electric vehicle and its change of soc depending on driving and charging. .. py:attribute:: _VALID_PARAMETERS .. py:attribute:: eid .. py:attribute:: start_time .. py:attribute:: step_size :value: '900' .. py:attribute:: timestep :value: '0' .. py:attribute:: p :value: '0' .. py:attribute:: p_cha .. py:attribute:: appearance :value: 'False' .. py:attribute:: signal_prognosis_ev_cs :value: '0' .. py:attribute:: soc :value: '0.5' .. py:attribute:: soc_min :value: '0.02' .. py:attribute:: e_max :value: '50000' .. py:attribute:: e_bat :value: '25000.0' .. py:attribute:: dcharge_efficiency :value: '0.95' .. py:attribute:: charge_efficiency :value: '0.99' .. py:attribute:: p_nom_discharge_max :value: '-11000' .. py:attribute:: p_nom_charge_max :value: '11000' .. py:attribute:: emobpy_data :value: 'None' .. py:method:: get_valid_parameters() -> dict :classmethod: Returns dictionary containing valid parameter types and values. :returns: valid parameters for this model :rtype: dict .. py:method:: _set_emobpy_data(n_steps: int) Collect data from the emobpy pickle file and save it into the model. :param n_steps: number of steps for the simulation :type n_steps: int :raises IndexError: When the time window of the pickle file does not match the simulation window :raises ValueError: when the time resolutions of simulation and pickle file do not match .. py:method:: step(timestep: int) Performs simulation step of eELib ev model. :param timestep: Current simulation time :type timestep: int .. py:method:: _check_appearance() Check whether the EV is currently connected to the charging point or not. .. py:method:: _calc_power() Calculate the power at the current timestep within the (dis)charging limits. .. py:method:: _set_energy_within_limit() Check that battery energy limits are not surpassed. .. py:method:: _calc_power_limits() Calculate the maximum (dis)charging power for the ev battery depending on the power limits and the current stored energy.