I have been working on a control software for below given bidirectional buck-boost converter.
The planned usage is for charging and discharging of a traction battery in electrical vehicle. I am not sure how to control this type of dc-dc converter.
From my perspective there four operating modes:
a) battery charging in buck mode (S1: pwm, S2: off, S3: off, S4: off)
b) battery charging in boost mode (S1: on, S2: off, S3: off, S4: pwm)
c) battery discharging in boost mode (S1: off, S2: pwm, S3: on, S4: off)
d) battery discharging in buck mode (S1: off, S2: off, S3: pwm, S4: off)
As far as the operating mode selection I think that
a) selection between battery charging and discharging takes place based on commands comming from higher layer which is able to made a decision whether there is enough energy in the system or there is a lack of energy
b) selection between buck mode and boost mode takes place based on relation between Vbus1 and Vbus2 voltages
As far as measurement both Vbus1 and Vbus2 are measured along with the inductor current. Only for clarification. The bus1 consists of capacitor C1, the bus2 consists of capacitor C2 in parallel to the traction battery.
As far as the control algorithm I think that there should be two cascaded PI loops (external voltage loop and internal current loop). At the output of the internal PI loop there is the duty cycle for the transistors switching. One set of cascaded PI loops is for battery charging (battery voltage - Vbus2 - is regulated) and one set of cascaded PI loops is for battery discharging (dc bus voltage - Vbus1 - is regulated).
Please can anybody tell me wheter my understanding how to cotrol the bidirectional buck-boost converter is correct? If not so can anybody recommend me some information source? Thanks in advance for any suggestions.