Raspberry Pi is a trademark of Raspberry Pi Foundation.
USB Type-C is a registered trademark of USB Implementer's Forum.
All trademarks are the property of their respective owners.
A motorized resistive load is a programmable load that can be used to help test or characterize a system or DUT. This type of load is useful in evaluating DUT behavior under steady-state operation or during start-up, shutdown, or other dynamic conditions. To use this load, the user connects the DUT to the load terminals and sets a target resistance. After confirming the selection, the motorized resistive load forms the target resistance between its input terminals. At this point, the DUT may be enabled, tested, and its behavior under load can be observed. The motorized resistive load design described herein offers advantages in utility, size, and ease-of-use compared to alternative solutions.
Electronic loads are typically utilized when static or steady-state performance of the system is of interest, and these loads can exhibit undesirable behavior when used during transient or dynamic operation. Electronic loads utilize active circuitry to implement feedback that could potentially interact with the DUT and as a result exhibit load profiles that are different than the profile generated by a resistive load. For example, during the initial start-up of a buck converter, its output voltage will increase linearly and if the applied load is resistive, then the load will also increase linearly until the output voltage reaches its nominal value. Applying a nonresistive load via an electronic load could result in an abnormal load profile or oscillatory behavior under the same conditions, even if the load is set for constant-resistance mode. Given these unpredictable load profiles and behaviors, system or DUT behavior can be difficult to characterize, making unexpected DUT behavior difficult to debug unless a resistive load is employed.
Electronic loads typically have minimum voltage requirements to ensure expected operation, whereas the described motorized resistive load does not have this limitation. Depending on the electronic load used, operation is not guaranteed under a set voltage threshold. This disqualifies electronic loads from being utilized for low-voltage applications or when the input voltage to the system is in dropout (when the input voltage is near the set output voltage). Conversely, a resistive load can be used for extremely low voltages and reliably produce accurate results. Figure 1-1 shows the load profile when using the motorized resistive load compared to a standard electronic load when loading a buck converter during its start-up.
A motorized resistive load is a more compact and easy-to-use alternative to an electronic load. Commercial electronic loads can be relatively large, while a motorized resistive load can be manufactured with roughly the same load range at a fraction of the size. The design described in this paper is circular and has a diameter of approximately 10 in, and is approximately 3 in tall, whereas electronic loads are typically rectangular and can be nearly twice as large. The only setting required for the motorized resistive load is the target resistance, making it an intuitive solution. Additionally, the programmability of the motorized resistive load can help reduce test time and is more convenient than manually changing individual load resistors.
This motorized resistive load design is comprised of two PCBs and a Raspberry Pi™. The Raspberry Pi serves as the system controller, which facilitates communication between the components. The Raspberry Pi connects directly to the first PCB, the controller board, which contains the majority of the system blocks including: the protection, power management, motor drive, and analog-to-digital components. The Raspberry Pi and the controller board together form the controller module, which allows users to interface with the apparatus. The second PCB contains the actual load in the form of a resistor track. This circular PCB includes a stepper motor that is installed at its center along with a simple mechanical arm assembly that forms the variable resistance value between the input terminals of the apparatus. The user powers up the controller module and turns a knob (potentiometer) which changes the target resistance which is displayed on an LCD screen located on the controller board. The user then presses a button which triggers motor movement until the measured resistance value, which is also displayed on the LCD screen, matches the target resistance value within a predefined threshold. The number of steps and direction taken by the stepper motor is determined via feedback that is described in Section 3.4.
This programmable resistor is comprised of a number of interdependent blocks that contribute to the functionality of the overall design. Protection against reverse polarity is applied to the input adapter which is then split into multiple power rails that interact with system control elements and peripheral components. These blocks all perform critical functions that enable selecting a target resistance, displaying the selection, and rotating the motor appropriately to form the target resistance between the apparatus terminals. Figure 2-1 shows the system block diagram.