This is only a preview of the December 2024 issue of Practical Electronics. You can view 0 of the 80 pages in the full issue. Articles in this series:
Articles in this series:
Articles in this series:
Articles in this series:
Articles in this series:
Items relevant to "Secure Remote Switch, Part 1":
Items relevant to "Multi-Channel Volume Control, Part 2":
|
Test equipment review
Using Electronic Modules with Jim Rowe
ZPB30A1 Module
- 60W Programmable DC Load
- Battery Capacity Tester
This programmable constantcurrent DC load can be used for
testing power supplies or checking
the capacity of storage batteries. It
is essentially self-contained and delivers
good value for the money.
T
he ZPB30A1 module carries the brand name Zhiyu, but
it seems to be made in China by a firm
called AoSong ELE Co Ltd. As you can
see from the photos, it has two PCBs,
with the smaller one (69 × 36mm)
mounted above the larger main PCB
that measures 100 × 69mm.
The 50 × 50 × 23mm heatsink is at
the rear of the larger PCB, along with
its associated cooling fan on the finned
side, for cooling the main load transistor. The fan extends past the rear of the
main PCB by about 11mm.
Mounted on the flat front of the
heatsink is the power Mosfet that acts
as the controlled load (in the centre),
with a thermistor to its left used for
sensing its temperature. To its right is
a dual schottky diode that protects the
power transistor from damage due to
reversed voltage polarity.
The smaller PCB is the control and
display board, or the main ‘user interface’. Its four-digit 7-segment LED
displays the voltage, battery capacity
or various control and error messages.
In contrast, the three-digit LED display
below it is mainly used to show the
current flow.
Six additional green 3mm LEDs indicate which parameter is being dis-
Features & Specifications
∎ Test modes: programmable constant-current DC load (“Fun1”) or battery
capacity tester (“Fun2”)
∎ Maximum dissipation: 60W
∎ Operating voltage range: 1-30V (separate 12V 500mA supply required)
∎ Operating current range: 0.1-9.99A in steps of 0.01A (10mA)
∎ Rated current measurement accuracy: ±(0.7% + 10mA)
∎ Test termination voltage range: 1-25V
∎ Voltage measurement: directly at the P+ and P− terminals or remotely for
four-terminal measurements
∎ Voltage measurement accuracy: ±(1% + 0.02V)
∎ Battery capacity maximum values: 999.9Ah, 9999Wh
∎ Battery capacity test accuracy: 2.5% <at> 0.5A, 1.5% <at> 2A or 1.2% <at> 5A+
∎ Protection: over-temperature (“otP”), transient over-power (“oPP”), overvoltage (“ouP”), reverse polarity (“Err3”) and abnormal voltage (“Err6”)
∎ Fan control: automatic, temperature-controlled
∎ Size: 69 × 111 × 57mm
∎ Weight: 270g
62
played or which 7-segment digit is
being adjusted, while a red 3mm LED
indicates when the module is running.
The function of the 3mm yellow LED
function is not explained; it is labelled
“L-4” and seems to be a recent addition to the latest (V3.3) version of the
module.
On the right of the smaller PCB are
the two controls. The first is a rotary
encoder, which changes modes and adjusts current and voltage values. The
second is a small pushbutton used to
confirm the module’s current and termination voltage settings and as an
on/off control.
Currently, the ZPB30A1 module is
available from several sources on the
internet, including Banggood (www.
banggood.com/search/1146280.html)
and many suppliers on AliExpress and
eBay, ranging from £7.65 plus £3.78
for delivery to £19.25 plus £2.30 for
delivery.
I ordered one from Banggood at a
price near the high end, and after the
usual wait, it arrived safely – even
though it was only wrapped in bubble
wrap inside a plastic bag.
What it does
The module has two modes of operation. One is to serve as a programmable constant-current DC load, while
the other is to test the capacity of storage batteries like Li-ion, Nicad or leadacid batteries. The basic specifications
are shown in the sidebar.
The module’s internal circuitry is
Practical Electronics | December | 2024
ZPB30A1 Electronic DC Load
Fig.1: a simplified block diagram of the ZPB30A1 module.
powered by a 12V DC supply that must
be separate from the measurement current source. The supply voltage must
be between 11V and 13V, delivering
at least 500mA. Power is applied to
the module via a standard barrel-type
DC connector (5.5mm outer diameter,
2.1mm inner diameter) on the left side
of the main PCB.
When power is applied, the module
powers up in whichever of its two
operating modes was last used. This
mode is displayed in the upper fourdigit 7-segment LED display as either
“Fun1” for programmable load mode
or “Fun2” for battery capacity mode.
The module defaults initially to the
Fun1 mode. If you want to switch it
to the other mode, you need to switch
off the power, wait a few seconds and
then hold down the on/off pushbutton
while re-applying power. The module
then allows you to switch modes using
the rotary encoder, after which you
press the on/off button again to lock
the module into that mode.
The module’s testing inputs are on
the right-hand side of the main PCB.
The small two-way screw terminal
block is the main test input connector, with its inputs labelled “P+” and
“P−”. The smaller two-pin socket is
Practical Electronics | December | 2024
used for the optional remote voltage
sensing, to avoid errors due to voltage
drops in the connecting wires. Its pins
are labelled “V+” and “V−”.
How it works
Fig.1 shows a simplified block diagram of the ZPB30A1. I would have
liked to show a complete schematic,
but all I could find online was a partial
circuit (at www.voltlog.com) that had
been ‘reverse engineered’ and didn’t
cover everything on the main PCB, let
alone any of the circuitry on the display/control PCB. Still, all the most
important details are shown in Fig.1.
The ‘brains’ of the device is an STM8S105K4 microcontroller unit (MCU),
shown at lower left. This responds to
The rotary encoder on the display
PCB is used for changing modes and
adjusting the current & voltage values.
the controls on the display and control
board shown at upper left and shows
the parameter values and testing status
on the same board.
The load current control circuit is
shown at upper right. This uses the
W60N10 power Mosfet (Q2) to maintain the load current between the test
terminals P+ and P−, under the control
of the MCU via the I_SET line. The current is monitored using a 10mW shunt
resistor in Q2’s source connection; op
amp IC4b compares the voltage drop
across the shunt with the control voltage from the MCU.
You can see a simplified version of
the remote differential voltage sensing
input below the current control circuit,
using op amp IC4a. Its output is taken
to the AIN2 analog input of the MCU.
The thermistor mounted next to the
Mosfet on the heatsink is shown below
the remote voltage sensing input in
Fig.1. The TEMP SENSING line from
the thermistor goes to the MCU’s AIN0
analog input.
Note that the micro doesn’t have a
way to monitor the actual load current – there is no connection from the
10mW shunt to the micro. The actual
load current will equal the set current almost all the time; if the source
63
Test equipment review
The “main” PCB
measures 100 x 69mm
and has the heatsink
mounted on it. It’s also
where the majority of the
components and power
socket are located.
cannot supply enough current to meet
the target, the voltage will drop to
near-zero, triggering the under-voltage alarm. So it is a safe assumption.
The cooling fan’s driver Mosfet,
Q3, is controlled by a PWM (pulsewidth modulated) signal from the
PD0 digital output pin of the MCU.
This allows the MCU to turn on the
fan as soon as the thermistor reports
that the heatsink temperature has
risen significantly, and to increase
the fan’s speed as necessary to keep
the temperature under control.
If the temperature keeps rising
beyond a safe level, the MCU turns
off the load current and stops the test.
The piezo sounder is driven by the
MCU’s PD4 digital output pin. This
allows the MCU to attract your atten-
tion whenever it needs
to do so; for example,
when a test comes to an
end, or it detects an error
condition.
The module I received
did not have the 6-pin
header fitted (shown
above the piezo sounder); there was just a set of
pads and holes labelled
G, R, T, L, F and Vc.
While there was no mention of these
in the sketchy data provided on the
Banggood website, when I searched
the internet, I found a couple of suggestions that the G, R and T pins could
be used for serial communication with
the MCU, at a rate of 115,200 baud
and with the standard 8N1 protocol.
The information I found said that
the module only transmitted serial
data in programmable current mode
(Fun1), containing three-byte messages with the first two bytes representing the voltage while the third byte
indicated testing status (1 = OK, 0 =
undervoltage alarm).
Trying it out
The information on using the
module provided on just about all
of the supplier websites is very vague
and quite hard to follow. As a result,
you are largely ‘on your own’ when
it comes to using it. It’s a matter of
trial and error, not made easy by the
multiple functions of the module’s
controls and LED displays.
That is a pity, since it performs surprisingly well when you manage to
get it doing what you want.
The first thing I did was ensure
that my module was set to constant-
current load mode (Fun1). Then I used
the rotary encoder to set the load current for the test. This can be any value
between 0.1A (100mA) and 9.99A, in
steps of 0.01A (10mA).
After this, I connected the module’s
P+ and P− terminals to a 0-30V/5A
programmable power supply, with one
high-resolution bench DMM (digital
multimeter) monitoring the current
and another monitoring the actual
voltage at the P+ and P− terminals.
Then I pressed the module’s on/off
button to begin testing.
I set the power supply to a range
of voltage levels (3.30V, 5.00V, 9.00V,
12.00V, 15.00V, 20.00V, 25.00V and
30.00V), and at each voltage level, I
set the module to draw a series of current levels. At every current level, I
used the bench DMM to set the voltage to precisely the desired level and
used the other DMM to check the
exact current.
The results of these tests are shown
in Fig.2. As you can see, in each case,
the applied voltage remained constant
over a wide range of current levels.
That remained true to a point where
either the module stopped the test due
Fig.2: I tested the load on constant-current load mode (Fun1) at a range of different voltage levels. This figure shows the
current drawn by the module at those voltages.
64
Practical Electronics | December | 2024
ZPB30A1 Electronic DC Load
to the temperature rising above the
limit (plots ending in an “X”), or my
programmable power supply could
provide no more current at that voltage (plots ending in a dot).
Just to make sure, I undertook one
further test using a different power
supply capable of supplying 13.8V
at up to 12A. This resulted in the
brown plot in Fig.2. This showed that
the module could maintain a current
just below 5A at this voltage, corresponding to around 68W dissipation
– not bad considering that it is rated
to handle a maximum of 60W.
During these tests, I monitored the
difference between the module’s voltage and current readings and those
of the two reference DMMs, to get an
idea of the module’s measurement accuracy. Its current readings turned out
to be less than 0.3% low for currents
of 2.0A and above, rising to 1.0% low
at 0.5A and 4% down at the lowest
current level of 100mA.
These figures compare pretty well
with the module’s rated accuracy of
±(0.7% + 0.01A).
The voltage readings turned out to
be less than 0.4% low over the entire
range, which is significantly better
than the rated accuracy of ±(1% +
0.02V).
So the ZPB30A1 module performs
well in programmable current load
(Fun1) mode. I moved on to checking
out its battery capacity/Fun2 mode.
Battery capacity testing
I fully charged an 18650 Li-ion cell,
then set up the ZPB30A1 module in
Fun2 mode with a discharge current of
1.0A and a minimum voltage of 3.00V.
After connecting the Li-ion cell to the
P+ and P− inputs, I pressed the module’s on/off button to begin testing.
Since the module doesn’t seem to
have any serial output in this mode,
I had to record the time and battery voltage the old-fashioned way,
using a pen and paper while reading
a stopwatch.
The results of this first test are
shown in Fig.3 (red plot). As you
can see, the cell didn’t last all that
long at the 1A discharge rate, with
its voltage dropping below 3V after
only 41 minutes.
The module then displayed its capacity as 0.679Ah, close to my calculated figure of 683mAh (1A × 41
minutes ÷ 60 minutes). So its measurement was only about 0.58% low.
I recharged the same 18650 cell
overnight and set the ZPB30A1 to perform a second test at 500mA. I then
spent the next few hours recording
the battery voltage every five minutes, again in the old-fashioned way.
The results of this second test are
shown in the blue plot in Fig.3. It
lasted a lot longer this time, with its
voltage only reaching just below the
test cutoff voltage of 3V after 228
minutes, corresponding to a capacity
of 1900mAh. So it’s pretty clear that
this particular 18650 battery is only
capable of delivering its rated capacity at load currents of 500mA or less.
It’s also apparent that the ZPB30A1
is well suited to performing the battery capacity testing role, despite a
few minor drawbacks.
Summary
The ZPB30A1 module performs
both its main functions – a programmable constant current load and battery capacity tester – very well indeed,
especially considering its modest
price. But it does have a few failings, including the lack of good instructions.
It’s also pretty disappointing that its
serial communications are so limited.
Having an adequately documented
serial connector that worked in all
modes and provided a complete set
of information would make it much
easier to monitor the load voltage and
time for each measurement.
Adding a serial port header and
supporting MCU firmware should
be straightforward and would make
things a lot easier, especially when
testing a battery’s capacity. Hopefully, the module makers will add this
serial port feature to it soon, making
it a really handy piece of test gear.
Despite that, given its low cost, I
still think it is worth getting if you
SC
think you will use it.
Fig.3: battery capacity testing was performed with a fully-charged 18650 Li-ion cell and the module in Fun2 mode. The
test was done with a discharge current of 1A (and later at 0.5A) and battery voltage above 3V.
Practical Electronics | December | 2024
65
|