Problem with min up and down time for ExtractionTurbineCHP

Dear all,

I just started modelling with oemof and have a hard time implementing min up and downtime for a Biogas_CHP plant using the ExtractionTurbineCHP component. The model is actually working some times but at other times it is just ignoring the up and downtime constraints. Currently I added the constraint only for the main flow. Do I also have to equate the two output variables?

Many thanks for your help.

My Code Looks like this:

#hours
duration_time=100
date_time_index = pd.date_range(‘1/1/2016’, periods=duration_time, freq=‘H’)

#CHP plant
Biomethan_BHKW_zentr = solph.components.ExtractionTurbineCHP(
label=‘Biomethan_BHKW_zentr’,
inputs={bbgas: solph.Flow()},
outputs={bel: solph.Flow(nominal_value=installed_el_Biomethan_BHKW_zentr,
variable_costs=0),
bth: solph.Flow(nominal_value=installed_th_Biomethan_BHKW_zentr,
variable_costs=0,min=0.5,max=1,
nonconvex=solph.NonConvex(minimum_uptime=50,
minimum_downtime=10,
initial_status=1))},
conversion_factors={bel: 0.38, bth:0.40},
conversion_factor_full_condensation={bth:0.40})

I think the input (bbgas) Flow should have the NonConvex object. That means that your steam generator can vary between 0.5 and 1 of the nominal capacity or zero. Furthermore, you can vary the thermal extraction. It may look like this:

solph.components.ExtractionTurbineCHP(
    label='Biomethan_BHKW_zentr',
    inputs={
        bbgas: solph.Flow(min=0.5, max=1, solph.NonConvex(
            minimum_uptime=50, minimum_downtime=10, initial_status=1)},
    outputs={
        bel: solph.Flow(nominal_value=installed_el_Biomethan_BHKW_zentr),
        bth: solph.Flow(nominal_value=installed_th_Biomethan_BHKW_zentr),
    conversion_factors={bel: 0.38, bth: 0.40},
    conversion_factor_full_condensation={bth: 0.40})

I haven’t tested it, but this is how I would do it.