LED
Progress Bar:
I purchased this LED array from Amazon with
the intention of making a level indicator for my sailboat battery
(deep-cycle lead-acid type). Afterward I realized that a small panel
meter of the right range, such as one already in the parts box, would
be simpler and probably better. Still I wanted to try out the LEDs and
decided to construct a Arduino-based test rig. This is a very simple
project because LEDs are the same no matter how they are packaged.
I couldn’t find a datasheet for the specific array that I bought from
Amazon, but guessed its layout would be the same as other similar
arrays, with each LED on a pair of facing pins: 1-20, 2-19, 3-18, and
so on. Pins 1, 2, 3, etc. are the plus side, and 20, 19, 18, the
cathodes. It wasn’t
immediately clear which end of the package was pin 1, but that question
is easily answered with an ohmmeter, or by trying to light any of the
LEDs.

Luck was definitely a factor in scrounging exactly one 20 pin DIP
socket from among the hundred or so sockets in the parts box. I
soldered this socket to a small PCB along with a bunch of 330 ohm
resistors, one per LED (on the ground side). To the other side of the
board I soldered a female header strip. My thought was that at some
point the display might actually be used, and if so it would be best to
have the connecting cable at the back. The header has two power
supply pins, although only the ground side is used. The middle 10 pins
are aligned with the socket. For a connecting cable I cut an old
computer IDE cable and peeled off a 12-wire piece. Finally, to make it
easier to remember what was what, I used colored heat shrink tubing to
code the wire ends to match the LED colors. Later I added a 2K
potentiometer for adjusting display brightness. The potentiometer is
wired as a variable resistor in series with ground. [Only the wiper and
one end are connected.]
My original plan, when purchasing the LED array was to use an LM3914 or
a bunch of Zener diodes to construct a circuit, which on pressing a
button would display the no-load voltage (correlates to capacity
remaining), with red indicating imminent exhaustion. Since abandoning
that idea I haven’t thought of anything useful to do with the display.
One idea is to make an S-meter for the WWVB
receiver, but that is surely contrived. Meanwhile, I created
a simple Arduino
test sketch
to demonstrate how the array emulates a bar graph or progress
indicator. The sketch uses Arduino digital I/O pins 12 to 8 and 7 to 3,
as shown in the
photo. Once again, color-coding wire ends helps to keep everything
straight. The corresponding sketch array is:
Of course, any Arduino DIO pins can be used. It is only necessary to
preserve consistency of wiring and sketch definitions.
Test sketch demo: progress_bar_demo.mp4
Battery low-voltage indicator:
After reading at least a dozen articles on battery level indicator
circuits, some of which involve more than just a few components,
or include IC’s such as comparators or op amps, I came across a YouTube
video presenting a simple circuit that lights an LED when the voltage
drops below a given design level: https://www.youtube.com/watch?v=SCejjZdbWwU.
The particular Zener diode values specified in this video cause an
LED to begin to glow at about 12.5 volts. However, another
very similar presentation (https://www.youtube.com/watch?v=Z0cOO0TNjNA)
suggests the diode values shown in the diagram above, which are roughly
those appropriate to indicate depletion of a 12 volt lead acid battery.
I first exercised a breadboard version of this
circuit using a variable output power supply, as shown in the composite
illustration above. At 12 volts the LED is not illuminated, while at 9
volts it is fully lit. Ordinary red LED’s
do not glow very intensely—blue might be better for seeing in daylight.
After breadboard testing I reconstructed the circuit on a small bare PCB, and added a
short power tail and Anderson Powerpole® for easy connection to the battery:
The PCB revision
yields the same test results as the breadboard circuit, and indicates the charge state of a marine deep-cycle battery on the
garage bench. It remains to be seen whether a binary indicator
will prove practical for on-the-water use. Next time out I will have this PCB in my pocket, for what it’s worth. A
panel voltmeter or low end VOM could also be tossed in the seabag, and would likely be more informative as
to the exact battery level.
Project descriptions on this page are intended for entertainment only.
The author makes no claim as to the accuracy or completeness of the
information presented. In no event will the author be liable for any
damages, lost effort, inability to carry out a similar project, or to
reproduce a claimed result, or anything else relating to a decision to
use the information on this page.