In one of the previous tutorials, closed loop boost converter SMPS with fixed output voltage was designed. In this series, following SMPS circuits are designed –
1. Boost Converters –
a) Open Loop Boost Converter
b) Closed Loop Boost Converter
c) Open Loop Boost Converter with Adjustable Output
d) Closed Loop Boost Converter with Adjustable Output
2. Buck Converters –
a) Open Loop Buck Converter
b) Closed Loop Buck Converter
c) Open Loop Buck Converter with Adjustable Output
d) Closed Loop Buck Converter with Adjustable Output
3. Buck-Boost Converters
a) Open Loop Inverting Buck – Boost Converter
b) Open Loop Inverting Buck – Boost Converter with Adjustable Output
4. Flyback Converter
5. Push-Pull Converter
The closed loop boost converter designed in the previous tutorial though had a constant and regulated voltage at the output but it could not be varied. For a stable output that Boost converter had an error detection circuit. The error detection was done by adding a feedback circuit which continuously checks the error in the output voltage and provided a regulated voltage at the output. For making the output of the circuit adjustable, it must be drawn through a variable resistor. This closed loop boost converter not only had a feedback circuit, its output is also adjustable.
Therefore in this tutorial, a closed loop non–isolated boost converter is designed. The boost converter can be designed in two ways-
Open loop boost converter – In open loop boost converter, there is no feedback from output to input contrary to the closed loop which has a feedback circuit. So, the output of an open loop boost converter is not regulated.
Closed loop boost converter – In closed loop boost converter, there is a feedback from the output to the input. So, the output of a closed loop boost converter is regulated.
There are certain design parameters involved in the designing of the boost converter. It is important to understand these design parameters. Any boost canverter can operate in either of the two possible modes of operation. These modes of operation are as follow –
• Continuous Conduction Mode (CCM)- In CCM, the current in the inductor is continuous in the entire cycle of the switching period. So a regulated voltage at the output is obtained but the output is regulated only if the current is drawn within the limits of CCM.
• Discontinuous Conduction Mode (DCM)- In this mode, the current in the inductor is pulsating and it becomes zero for a part of switching time. So a regulated voltage is not received in DCM. But, the voltage can be regulated by connecting a feedback circuit from output to input.
In this tutorial, a non-isolated boost converter is designed which means the input and output share the same ground. The boost converter designed in this project will have an output voltage ranging from 5V DC to 9V DC with a tolerance limit of +/-0.5V. Once the circuit is designed and assembled, the value of the output voltage and current will be observed using a multimeter. These values will indicate the efficiency of the boost converter designed in the project.
Components Required
Fig. 1: List of components required for Adjustable Closed Loop Boost Converter
Block Diagram –
Fig. 2: Block Diagram of Adjustable Closed Loop Boost Converter
Circuit Connections –
In this project, a closed loop boost converter operating in DCM mode is designed and the component values as per the DCM standard equations are calculated for the desired output.
The boost converter designed in this tutorial will have the following design parameters –
Input voltage, Vin– A Li-ion battery of 3.7V will be used as source. The battery voltage will be the input voltage.
Range of output voltage, Vout – The voltage at the output will be adjustable between 5V and 9V.
Maximum output current, Iout (max)–The maximum limit of output current will be 100 mA. The critical output current limit will be 10mA.
Output ripple voltage (dV) – The maximum output voltage ripple assumed at the output will be 100mV.
Load resistance – In this circuit a resistance at the output will be connected which will act like load for the circuit. The maximum value of resistance can be calculated by ohm’s law which is as follows –
For Vout = 9V
Vout = Iout(max)*RL
RL(max) = Vout/Iout(max)
By putting all the values,
RL = 90E
Now the power rating of the resistance can be calculated as follow – P = (Vout)2/(RL)
By putting all the values,
Pout = 0.9W
For Vout = 5V
Vout = Iout(max)*RL
RL(max) = Vout/Iout(max)
By putting all the values,
RL = 50E
Now the power rating of the resistance can be calculated as follow – P = (Vout)2/(RL)
By putting all the values,
Pout = 0.5W
So, a variable resistor having the range of resistance available as calculated above will be used as load at the output for maximum efficiency.
Frequency (Fs)– The frequency of the PWM signal generated by the microcontroller should not be too high or low so a frequency of 10 KHz is selected to operate the switching components of the circuit. The value of the frequency is assumed.
The boost converter has the following circuit blocks –
1. DC source –
A 3.7 V Li-ion Battery is used as the input power source in the circuit. The battery voltage itself is the input voltage in the circuit.
2. Controller and switching mechanism –
An Oscillator is used to generate a Pulse Width Modulated (PWM) signal of a desired frequency. In this boost converter, Arduino UNO is used to generate the PWM signal so, the Arduino board is acting like an oscillator. The PWM signal is a train of the pulse which is used to turn ON and OFF the MOSFET. The MOSFET is used as the switching transistor in the circuit.
For switching purpose, a transistor and a diode are used as a switching components. For the selection of the transistor, MOSFET is chosen as FETs are known for their fast switching speed and low RDS (ON) (drain to source resistance in ON state). So an N-channel FDS7088N3 MOSFET (shown as Q1 in the circuit diagram) is connected parallel to the input DC source which acts like a switch in the circuit as its threshold voltage is very low, around 2V. So it can be easily triggered by a 3.7V battery. In ON state the Vds of FDS7088N3 MOSFET is also very low which reduces the power dissipation of our circuit.
For turning ON and OFF the MOSFET a train of the pulse should be applied to its gate. For this, the controller board generates a Pulse Width Modulated signal of 10kHz. This PWM signal is used to turn ON and OFF the MOSFET. For generating the PWM signal from the controller, an Arduino sketch has been burnt to the board. This Arduino sketch can be downloaded from the code section.
It should be noted that the switching time of the MOSFET and diode should be less than the rise and fall time of the PWM wave. A gate to source resistance must be used to avoid any unwanted triggering of the MOSFET by external noise. It also helps in fast turning OFF the MOSFET by discharging its parasitic capacitance.
A low value of the resistor (10E to 500E) should be connected at the gate of the MOSFET. This will solve the problem of ringing (parasitic oscillations) and in rush current in the MOSFET. The voltage level of the PWM signal should be greater than the threshold voltage of the MOSFET. So that the MOSFET can be turned ON fully with minimum RDS (ON ). There should be heat sink mounted with the MOSFET for dissipating the excess heat otherwise the FET can get damaged.
Another switching component used in the circuit is a diode. The switching time of the diode should be less than the rise and fall time of the PWM wave. The Arduino board generates a PWM wave having rise time 110ns and fall time of 90ns. The forward voltage drop of the diode should also be very low otherwise it will dissipate power which will further reduce the efficiency of the circuit. The diode should offer low voltage drop in forward bias and the RDS (ON)of the MOSFET should be low. So in this experiment, a BY399 diode is selected which suits best to the circuit design.
Before generating the PWM signal the switching frequency for the circuit needs to be decided. For this boost converter, a switching frequency of 10kHz is selected which will work fine this converter design.
The duty cycle of the generated PWM signal is another important consideration as it will decide the active state of the MOSFET. The duty cycle can be calculated as follows –
D% = 1- (Vin/Vo)*100
Vo=Desired output voltage, 5V to 9V
Vin =Input voltage, 3.5V
Since the output voltage varies from 5V to 9V so the duty cycle will be calculated as per 5V as well as 9V.
For Vo(min) = 5V
D(min)% = (1-(3.5/5))*100
D(min)% = 30% (approx.)
For Vo(max) = 9V
D(max)% = (1-(3.5/12))*100
D(max)% = 60% (approx.)
A capacitor and resistor of the appropriate value should be used for generating the 10 kHz frequency and 30% to 60% duty cycle. The higher is the frequency selected for switching components, the higher are the switching losses. This decreases the efficiency of the SMPS. But high switching frequency reduces the size of the energy storage element and improves the transient response of the output.
3. Energy Storage Element –
An inductor is used for storing the electrical energy in the form of magnetic field. So the inductor acts like an Energy Storage Element. An inductor of 200 uH value is used in the circuit. For an inductor, a transformer’s secondary or primary coil, relay coil or any standard inductor can be used which has the desired inductance value.
4. Output Filtering Element –
As a filtering element, a capacitor (shown as C1 in the circuit diagram) is used at the output of the circuit. In normal operation of Boost circuit, the transistor Q1 turns ON and OFF according to the frequency of the oscillator circuit. This generates a train of the pulse at the inductor L1 and capacitor C1 as well as transistor Q1. As the capacitor is connected with inductor only in the negative cycle of the PWM signal, this makes an LC filter which filters the train of the pulse to produce a smooth DC at the output. The value of the capacitor can be calculated by using following equation of DCM –
Capacitor C >= (Io(max) * (1- (2*L1*Fs/RL(max))1/2))/ (Fs*dV)
For RL = 90E, by putting all the values in the above equation,
C1 >= (0.1*(1-(2*200*10-6*10,000/90) 1/2))/ (10,000*0.1)
C1 >= 78uF
As capacitor can be greater than the calculated value so any capacitor with an equivalent value to 78uF or greater than 78uF can be taken.
As it is the minimum value of capacitor required, so in the circuit a capacitor of standard value is used which can be easily available, so, capacitor of 100 uF is taken.
5. Feedback circuit –
In the previous tutorial, it was seen that without any feedback circuit a high voltage at the output was received when there was no load connected. When any load at the output was connected then the output voltage dropped below the desired output voltage. so there was a need to regulate the output voltage by connecting a feedback circuit.
So in this circuit, a feedback is provided from the output terminal to the input terminal which regulates the output voltage even when no load is present at the output. The Feedback circuit has to calculate the error in the voltage and then the microcontroller automatically adjust the output voltage as per the desired voltage. This adjustment of the error voltage is managed by the Arduino sketch running on the board.
For providing feedback, a resistor ladder is used at the output(as shown in the circuit diagram). For calculating the value of resistor network, the maximum output voltage of the circuit in open loop must be known when no load is connected to the output. That will be the desired output voltage which should feed from the resistor divider network to the analog pin of the controller (as shown in circuit diagram). The output voltage should be equal to 5.2V as microcontroller provides the 5.2V as a reference voltage. The value of resistor network can be calculated as follows-
Fig. 3: Circuit Diagram of Resistive ladder used as feedback in closed loop boost converter
According to the resistor divider rule –
Vr= Vo*(R4/R3+R4)
Where,
Vr = desired output to the analog pin
Vo = output voltage of open loop boost converter without load.
It has been observed that the value of Vr and Vo are –
Vo = 20V
As the potentiometer is powered by a 3.3V supply, So, Vr= 3.3V. This will match the scale of feedback with the potentiometer.
Assuming R3 = 500E now R4 is –
3.3 = 20*(R4/500+R4)
R4 = 100E (approx.)
So R3 = 500E and R4 = 100E
Now the power rating of both the resistance R3 and R4 can be calculated as follow –
(For R3),P3 = (Vo-Vr)2/(R3)
By putting all the values,
P3 = 0.5W (approx.)
(For R4), P4 = (Vr)2/(R4)
By putting all the values,
P4 = 0.1(approx.)
6. Output Voltage Adjustment –
For varying the output voltage a potentiometer is used at the output of the circuit (as shown in the circuit diagram). The potentiometer gets powered by the battery and then the analog pin of microcontroller sense the voltage of the potentiometer. After sensing the voltage, the microcontroller adjusts the duty cycle as per the desired output voltage. So by turning the knob of potentiometer, the output voltage can be varied as per the requirement.
How the circuit works –
Any SMPS has some switching components which turn on and off at high frequency and has some storage component which store the electrical energy while the switching components are in conduction state and discharge the stored energy to the output device while the switching components are in non-conduction state.
A simple Boost Converter consists of the inductor(L), a diode(D), a capacitor(C) and a transistor where transistor acts like a switch. In the boost circuit, when switch is closed i.e. the switching component is in conduction state, the inductor starts generating a magnetic field and stores energy. The stored energy in the inductor steps up the output voltage in comparison to the input voltage.
When current starts flowing through the switching component as its path is less resistive compared to the path in parallel which contains capacitor and the output load, the inductor generates a positive polarity at its left terminal and negative to right terminal. Due to change in polarity, the diode gets reverse biased. In this condition, the capacitor, which was charged in the previous cycle, provides the current to the load while the switching component goes in non-conduction state or goes open between the ground.
Fig. 4: Circuit Diagram showing ON state of switching Component in Boost Converter
When the switch is open the current is reduced as the impedance increases so the generated magnetic field in the inductor starts collapsing and the polarity of the inductor reverses. This makes the diode forward biased and the capacitor now starts charging with a voltage greater than the input voltage. As the input is now having two sources in series one is the inductor and another is the battery. So the output voltage is always greater than the input voltage.
Fig. 5: Circuit Diagram showing OFF state of switching Component in Boost Converter
So, in ON state, the Diode was in blocking Mode (OFF) and the Transistor was ON. In OFF state, the Diode was in conducting mode (ON) and the Transistor was OFF.
So, it can be said that the Boost Converter is having two switching components – one is the transistor and another one is the diode. At a time only one of the switching component conducts i.e. it is in ON state while the other goes in non-conduction state i.e. it goes in OFF state.
This is how any boost converter operates. The boost converter designed in this project is closed i.e. a feedback circuit is added to it. The feedback is provided via a voltage divider network. The output voltage is sensed by the voltage divider resistor ladder and supplied to one of the microcontroller pin. The microcontroller board used in the project is Arduino. The in-built ADC channel of the Arduino converts the detected voltage into a digitized reading.
The Arduino is programmed to compare the output voltage with a reference voltage and the difference between the two is the error voltage. In order to compensate the error voltage, Arduino is programmed to change the duty cycle of the PWM signal controlling the transistor circuit. By changing the duty cycle of the PWM signal, the output voltage is modified to the desired output. Because of the presence of variable resistor at the output, the output voltage can be varied within the desired range.
Testing the circuit –
In this circuit, a variable resistor is added in the circuit of closed loop boost converter to make the output voltage adjustable. The Arduino sketch is also modified to change the duty cycle of the PWM signal as per the voltage input from the variable resistor.
Fig. 6: Prototype of Closed Loop Boost Converter designed on a breadboard
In the circuit, Battery Voltage, Vbat/Vin = 3.7V
On measuring voltage and current values with different loads at the output when duty cycle is set to 60 percent, following observations were taken –
Fig. 7: Table listing output voltage and current from Adjustable Closed Loop Boost Converter for different loads at 60 percent duty cycle
So, it can be observed that a current of 100 mA can be drawn at output with a tolerance limit of +/-0.5V.
Fig. 8: Image showing Closed Loop Boost Converter under test
On measuring voltage and current values with different loads at the output when duty cycle is set to 30 percent, following observations were taken –
Fig. 9: Table listing output voltage and current from Adjustable Closed Loop Boost Converter for different loads at 30 percent duty cycle
So, it can be observed that a current of 100 mA can be drawn at output with a tolerance limit of +/-0.5V.
The power efficiency of the circuit can be calculated as follow –
For 60% Duty Cycle, maximum output current is 100mA
Efficiency % = (Pout/Pin)*100(Output Power) Pout = Vout*Iout
(Output Voltage) Vout = 9.1 V
(Output current) Iout = 100 mA
Pout = 910 mW (approx.)
(Input Power) Pin = Vin*Iin
(Input Voltage) Vin = 3.7 V
(Input Current) Iin = 270 mA (measured the input current using ammeter)
Pin = 1000 mW(approx.)
By putting all the values,
Efficiency % = 90%
It can be seen that on using a feedback circuit, the efficiency of the boost converter is increased from 89% (as calculated in the previous tutorial) to 90%.
This is a closed loop boost converter with non-isolated output and operating in DCM mode. It can be used as switching regulator for LED drivers and as a regulated DC power supply. It can be used for supplying power to low power portable electronic devices. In battery powered applications when there is a space restriction to stack the number of batteries in series for achieving high voltage, this boost converter can be used with less number of batteries to supply the DC power.
This boost converter is simple to design and use cheap components. It can be easily assembled in no time. The circuit has a variable output and can be powered by 3.5V battery. However, the minimum voltage of the battery should not be less than the 3.5V otherwise the microcontroller will not get powered.
You may also like:
Project Source Code
###
//Program to ////// Code for Closed Loop Boost converter with variable output voltage //////// ////// Output Voltage Adjustment from 5V to 9V //////// #define TOP 1599 // Fosc = Fclk/(N*(1+TOP)); Fclk = 16MHz, Fosc = 10kHz #define CMP_VALUE_HALF_DUTY 799 // 50% duty cycle #define FeedbackPin A4 // Input pin of potentiometer at A4 #define Inputpin A5 // feedback pin of potentiometer at A5 #define R1plusR2_resistor 6.0 // variable of R1+R2 value #define R1_resistor 1.0 // variable of R1 value #define PWM 9 // PWM(Pulse Width Modulation) wave at pin 9 //// function declaration float Map_feedback(float); //function to map feedback values float Mapping_output_voltage(float); //function to map potentiometer values void InitADC(void) ; // Function to start ADC conversion uint16_t ReadADC(uint8_t); // function to read Analog value ///// function definition //////// float Mapping_output_voltage(float Input_Read ){ float Compare_voltage = (((Input_Read*(1.0)/1024)*4)+5); // mapping the digital value into analog volatge of 5V to 9V return(Compare_voltage); // return the calculated output voltage } void InitADC(void){ ADMUX &= ~((1<Compare_voltage_input) //comparing actual output voltage with desired output voltage to find error in voltage { OCR1A --; // if error is positive the duty cycle is decreased } else if(actual_output_voltage < Compare_voltage_input) { OCR1A ++; // if error is negative the duty cycle is increased } } ###
Circuit Diagrams
Project Video
Filed Under: Tutorials
Filed Under: Tutorials
Questions related to this article?
👉Ask and discuss on EDAboard.com and Electro-Tech-Online.com forums.
Tell Us What You Think!!
You must be logged in to post a comment.