This report describes the design, testing methods and behaviour of a DC-DC Boost converter using BS170 MOSFETs built by students of the University of Applied Sciences Utrecht.
Students of the Electrical Engineering department of the University of Applied Sciences Utrecht are to design a DC-DC Boost converter in the fifth semester during the Hardware Design course.
The goal of the project is to design a DC-DC Boost converter on breadboard that can step up a voltage of around $3V$ to any voltage between $3.3V$ and $7.5V$. The converter should be able to deliver a current of $50mA$ at any given voltage. The entire system is to be controlled by a STM32F4 series microcontroller which should provide a way to control the output voltage through software.
An example circuit and a couple of components are provided and mandatory to use, such as the inductor, the capacitor and the MOSFETs. Apart from these components, the circuit can be altered and or extended to the student's liking to improve its function as long as the final circuit is able to deliver the required current and voltage.
According to The Art of Electronics \cite{Horowitz_Hill_2022}, the simplest implementation of a step-up or boost converter consists of just four components; An inductor, a switch, a diode and a capacitor connected as follows:
During switch conduction (...) the inductor current ramps up; when the switch is turned off, the voltage at point Y rises rapidly as the inductor attempts to maintain constant current. The diode turns on, and the inductor dumps current into the capacitor. The output voltage can be much larger than the input voltage.
In the example circuit, there was only one MOSFET and it was directly controlled by the MCU. This circuit was able to reach a voltage of $7.5V$, but not at the required current. This is due to the fact that the BS170 series MOSFET has a fairly high $R_{DS(on)}$ of $1.2\Omega$\cite{Onsemi_2022}. To increase the output current, a second MOSFET was added to the circuit. This way, the $R_{DS(on)}$ is halved, effectively doubling the current at which the inductor can be charged if we neglect the resistance of the inductor itself. The downside of adding a second MOSFET is that it also doubles its input capacitance, however, with an additional circuit modification this can be overcome.
A second addition to the circuit is the push-pull driver on the gate of the MOSFETs. The driver consists of two NPN transistors that are controlled by inverted signals from the MCU, this way the MOSFET gates are quickly switched between $0V$ and $3.3V$. The push-pull driver was chosen over a pull-down resistor because it would cause several issues; A low resistor value would quickly discharge the gate capacitance, but it would also decrease the driving current when turning the MOSFET on. A high resistor value would have little effect on the gate capacitance. The push-pull driver solves both of these issues by quickly discharging the gate capacitance by connecting them to ground while not effecting the driving current when turning the MOSFET on. This way, the MOSFETs are switched faster, increasing the efficiency of the circuit.
The final addition is a voltage divider of $15k\Omega$ and $10k\Omega$ on the output, this simply lowers the output voltage to a level that can be read using the ADC on the MCU and is used for control loop feedback.
The system is controlled by the STM32F407 on the HU development board. The board provides the required PWN signals to control the MOSFETs and the ADC to read the output voltage. The program provides a small interface in which the user can view and control the duty cycle and frequency of the switching and read the current output voltage. The program also implements a simple PI control loop to control the output voltage, however it is not yet fully functional and requires more tuning.
\begin{Figure}
\centering
\includegraphics[scale=0.25]{FW_CONTROL_1.png}
\captionof{figure}{Display readout of PWM Control registers, frequency and duty cycle}
\label{fig:ui1}
\end{Figure}
\begin{Figure}
\centering
\includegraphics[scale=0.25]{FW_CONTROL_2.png}
\captionof{figure}{Display readout of ADC value and converted voltage}
\label{fig:ui2}
\end{Figure}
\begin{Figure}
\centering
\includegraphics[scale=0.25]{FW_CONTROL_3.png}
\captionof{figure}{Display readout of target and current output voltage}
The circuit can be improved in several ways. The most significant improvement would be to replace the breadboard in favour of a soldered PCB, this would significantly improve the stability of the system and reduce noise. During testing, it was found that Heisenberg's uncertainty principle was enough to influence the behaviour of the circuit. Simply observing the output voltage was enough to make it fluctuate.
\\\\
Using MOSFETs with a lower $R_{DS(on)}$ compared to the BS170 would allow the inductor to charge quicker, increasing the efficiency of the circuit.
\\\\
The current push-pull driver could be replaced with a dedicated gate driver, such as the IR2125 IGBT Driver IC. This would allow for a more stable and faster switching of the MOSFETs, while reducing the amount of IO used on the MCU.
\\\\
As mentioned in section \ref{control}, the control loop can be improved. The current implementation of the PI controller is rather unstable and requires more tuning.