Using the Arduino UNO R4 Op-Amp and DAC to drive a Programmable Electronic Load
We needed a DC programmable electronic load for an Arduino based battery logger that we are designing. This will be used during the battery discharge phase. The only off the shelf solutions are very expensive, so we decided to build our own. The idea is to use the UNO R4 digital to analogue converter (DAC) to generate a programmable 0–5 V used to control a constant current load from 0–800 mA. We will test designs with both a high and low side sense resistor and compare the accuracy and maximum discharge currents.
The constant current load is connected across the battery to discharge it (Figure 1). In this diagram, the field effect transistor (FET) acts as a variable resistor to control the current and the op-amp provides feedback to adjust the FET. The drain of the FET is connected to the LiPo battery, while the source is connected to the current sense resistor. The FET’s gate voltage determines how much current flows through the drain-source path. The op-amp is configured in a negative feedback loop. It compares the voltage across the sense resistor connected in series with the FET to a reference voltage from the DAC.