CMS3 = electrical.CellManagementSystem(cell = Cell3) Cell3.PlotSpecs(temperature=298.15) Cell3.PlotSpecs(temperature=313.15) # ============================================================================= # Cell definition # ============================================================================= current = [-10]*4000 + [10]*1000 delta_t = 10 ineq_min_cell = [] ineq_max_cell = [] soc_m = 0.95*180000 results1 = {'cms': electrical.CellResult()} internal_parameter_cell1 = electrical.InternalParameterCell() for i in current: if i<-1e-6: usecase = 'discharge' else: usecase = 'charge' (i_min, i_max), (u_min, u_max) = CMS1.Ineq(soc_m, 298.15, usecase, False, delta_t, internal_parameter_cell1) current_new = min(i_max, i) current_new = max(i_min, current_new) current_p, voltage_p, soc_p, thermal_loss_p = CMS1.update(current_new, soc_m, 298.15, usecase, charger = False, delta_t = delta_t, results = results1,
# Cell1.PlotSpecs(temperature=313.15) # plots = Cell1.concept_plot_data() # pdg = plot_data.plot_d3(plots[0]) # ============================================================================= # Cell definition # ============================================================================= current = [10] * 1000 + [0] * 1000 + [10] * 1000 + [0] * 1000 delta_t = 1 ineq_min_cell = [] ineq_max_cell = [] soc_m = 0.005 * 180000 results = {'cms': elec.CellResult()} internal_parameter_cell = elec.InternalParameterCell() for i in current: if i < 0: usecase = 'discharge' else: usecase = 'charge' (i_min, i_max), (u_min, u_max) = cell_management_system.Ineq( soc_m, 298.15, usecase, False, delta_t, internal_parameter_cell) current_new = min(i_max, i) current_new = max(i_min, current_new) p_tuple = cell_management_system.update( current_new, soc_m, 298.15, usecase,
ce_end = electrical.CombinationEvolution(evolution1 = [t_end], evolution2 = [p_end]) ce_wltp = electrical.CombinationEvolution(evolution1 = [t_wltp], evolution2 = [p_wltp]) ce_load = electrical.CombinationEvolution(evolution1 = [t_load], evolution2 = [p_load]) load_bat = electrical.PowerProfile(soc_init = 0.05*180000, combination_evolutions = [ce_load], loop = True, soc_end = 0.95*180000, charger = True) end_bat = electrical.PowerProfile(combination_evolutions = [ce_end], loop = False, power_accuracy = 0.2, soc_init = 0.1*180000) wltp_bat = electrical.PowerProfile(combination_evolutions = [ce_wltp], loop = True, power_accuracy = 0.2, soc_init = 0.95*180000, max_loop = 1, soc_end = 0.1*180000, use_selection = False) comb_profile_wltp = electrical.CombinationPowerProfile([wltp_bat], name='wltp_profil') comb_profile_load = electrical.CombinationPowerProfile([load_bat], name='load_profil') comb_profile_end = electrical.CombinationPowerProfile([end_bat], name='end_soc_profil') power_pack_electric_simulator = electrical.PowerPackElectricSimulator(bms = bms1, combination_profils = [comb_profile_load, comb_profile_wltp, comb_profile_end], battery_results = [electrical.ElecBatteryResult()]*3, module_results = [electrical.ElecModuleResult()]*3, cell_results = [electrical.CellResult()]*3) # valid_profil = power_pack_electric_simulator.Simulate()
'discharge': { 'minimum': -300, 'maximum': 0 } }) plots = m1.concept_plot_data() pdg = plot_data.plot_d3(plots[0]) current = [100] * 1000 delta_t = 10 results = { 'mms': electrical.ElecModuleResult(), 'cms': electrical.CellResult() } soc_m = 0.005 * 180000 * number_cell_serie * number_cell_parallel internal_parameter_cell = electrical.InternalParameterCell() for i in current: (i_min, i_max), (u_min, u_max) = mms1.Ineq(soc_m, 298.15, 'charge', True, delta_t, internal_parameter_cell) current_new = min(i_max, i) current_new = max(i_min, current_new) current, voltage, soc_p, thermal_loss_p = mms1.update( current_new, soc_m, 298.15,