VB Dynamic DC Load
Construction and Build Instructions
Here is a list of items and instructions that will help you to build a Dynamic DC load instrument.
The design process for the instrument is documented on this Blog here:
https://www.paulvdiyblogs.net/2024/04/build-diy-dc-dynamic-load-instrument.html
The BOM's, Gerbers, Firmware and other required files can be downloaded from
the GitHub.|
https://github.com/paulvee/Dynamic-DC-Load
https://www.pcbway.com/project/shareproject/DIY_Dynamic_DC_Load_8643ddca.html
https://www.pcbway.com/project/shareproject/DIY_Dynamic_DC_Load_Face_PLate_12899b9c.html
https://www.pcbway.com/project/shareproject/DiY_Dynamic_DC_Load_Back_PLate_cda4ffcf.html
Parts & Components
The Printed Circuit Boards
https://www.pcbway.com/project/shareproject/DIY_Dynamic_DC_Load_8643ddca.html
https://www.pcbway.com/project/shareproject/DiY_Dynamic_DC_Load_Back_PLate_cda4ffcf.html
https://www.pcbway.com/project/shareproject/DIY_Dynamic_DC_Load_Face_PLate_12899b9c.html
Stuffing
the PCB
Adding
components to the PCB should be a straightforward job, except maybe for soldering
the minute packages for the ADC, the reference, the two analogue switches and
the MCP6V51 Opamps.
I highly recommend you use a socket for the ESP32. To that extend, make sure you order the VROOM 4MB DEVKIT V1 module without the headers installed. (the one below has the blocking diode installed, details below) Note the pin layout and make sure you get one that has the same layout!
I use the following headers and sockets for the ESP32, I buy them by the strip.
To add the components to the PCB, my recommendation is to start with all the passive components like resistors, capacitors and then the active transistors, MOSFET’s (not the main NFET’s M1, M2), diodes and the voltage regulators U9 and U12. Do not install the relay and the snubber circuit yet. What I then would do is to connect a Lab Power Supply with a setting of 12V and 50mA to the DC input of the board. If it powers-up without getting into current limitation, you will probably not have any shorted rails to ground, and can proceed to test the +12, +9 and +5 supply voltages. If they check-out, you can add the ICL7660 and test the -5V rail. After that, you can add the REF5040 and check the presence of 4.096V. If that also checks-out, you can add the trimmers, connector strips, DAC, ADC, MOSFET switches (U14, U15), all the Opamps and finally, the main relay and snubber circuit. Basically, everything except placing the ESP32 module in its socket, and soldering the main NFET’s (M1, M2) and the LM35.
ESP32
variations
The
recommended ESP32 board is the VROOM 4MB DEVKIT V1. However, I have found that
there are slight variations or differences for two components on various
sources for this board. One is the capacitor that should ensure a reset after a download of new firmware. On one of my boards, this capacitor was there, but
not well soldered to the chassis part of the USB-mini. On another one, there
was no diode to block the incoming 5V through the USB, and the VIN supplied
to pin 1 of the board. Having no diode but a 0R resistor means that the VIN
supply will back-feed 5V into the USB port of your PC. Not recommended!
To
accommodate these two issues, we put provisions on the PCB to help fix that.
Verify that the ESP32 module has a 1uF 0402 capacitor most likely connected to the solder pad of the EN button. It may be soldered at a 45-degree angle, see the left blue arrow. Also make sure that there is a diode installed and not a 0 Ohm 0402 resistor (marked 000) as you see here on the board, see the middle blue arrow below. The picture of the ESP32 further up does have a diode, which can be easily identified.
If the
capacitor is not installed, you need to install C44 on the PCB. If there is a 0
Ohm resistor on the board, you don't need to modify the ESP32 module but need to remove or not install R53 and install
D10 on the main PCB. See the schematic below.
The Back Panel
At this moment, it will help to mount the fan on the
back panel, so you can use it to double check the space between that fan and the
heatsink/fan combination that will be mounted on the bottom shell later.
The back panel fan will be mounted using the flexible silicon
mounts that come with the fan.
To help the installation by pulling on these thingies, it is helpful to first counter sink the 4 holes in the PCB on either side so the silicon will more easily slide into position when you pull them in.
Note the position of the fan on the back panel, and
where the wires need to come out.
Modifying the enclosure
The bottom shell of TEKO AUS33.5 enclosure needs to be
modified so we can mount a fan on the bottom to suck fresh air into the heatsink
fins inside the enclosure. The fan mounted on the back panel will suck the hot
air away from the heatsink to the outside of the enclosure.
A number of holes need to be drilled in the bottom shell to get enough airflow to the heatsink. I used Excel to create a raster for the 6mm holes. The picture shows an earlier position of the fan, I later moved it further down and added a number of extra holes.
To feed plenty of fresh air from the bottom of the
enclosure to the fan, we need to mount 4 feet that are about 1cm in height to
lift the instrument from the shelf or desk to create the space.
The bottom fan needs to be mounted in the middle of the enclosure, and the mounting holes 25mm away from the back edge of the bottom shell, to make room for the fan that is mounted on the back panel. Before you drill the holes, use the back panel with the fan mounted on it to double check the space you need. The minimum space between the two fans would be 2mm.
The bottom fan and heatsink
The bottom fan will be mounted on the shell by 4 30mm
long M3 screws. Because of the plastic, and the two hole positions in the
ventilation area, I recommend you put M3 or M4 rings on the bottom and on the
inside of the plastic shell. Use a normal (flat) M3 nut to tighten the screws to
the enclosure while making sure that the fan will easily fit. After the fan is
positioned on the 4 mounting screws, use an isolated M4 ring on top of the fan
before you mount the brackets holding the heatsink.
The heatsink will be mounted about 6mm above the
bottom fan by two strips of a 90 degree angle 15x15mm piece of aluminum. These
strips can be found in your local hardware store and probably come in a length
of 1mtr. Use a metal hacksaw to cut two pieces with a length of 90mm, which is
the same as the size of the fan. Drill two holes of 3mm 15mm from each end,
that will hold the self-tapping screws mounting the bracket to the heatsink.
I used very short 3mm self-tapping screws to mount the
angle pieces to the heatsink. I also drilled the hole through the second flange of the
heatsink, to make room for the tip of the screw, so it does not bend the thin flanges.
Drill two more holes in the other flank that are 81 mm
apart, so the screws holding the fan to the bottom of the enclosure will go
through these holes. Make sure that these holes are spaced such that when the
strips are mounted on the heatsink, the holes of the fan will pass through the 4 30mm M3
screws.
Because the heatsink can get very hot, I used 4 3mm
insulating rings that are also used to mount TO220 type devices. They also
serve to electrically isolate the screws from the potential of the heatsink,
that can be up to 100V DC.
You’ll need a fifth one to isolate the LM35 from the heatsink later. These rings should fit the holes of the brackets, if not, drill the holes a bit larger to 3.5-4.0mm to create some wriggle room. I then used a Teflon ring on top of the insulators and used self-locking M3 nuts to loosely secure the heatsink, so you don’t need to tighten the nuts too much and put too much pressure on the plastic frame of the fan. You want to minimize the transfer of the mechanical vibration from the fan to the enclosure. It should be a loose fit.
The thermal paste you see in the pictures is because I took my instrument apart to make these instructions and the pictures after I finished my build.
Mounting the Main NFET’s and the LM35
Before you mount the heatsink on top of the fan, you need to create
three M3 tapped holes in the heatsink to mount the two NFET’s and the LM35 temperature
sensor. If you don’t have a good quality and sharp M3 tapping set and the right
size drill (2.5mm), you can also use 3mm self-tapping screws. In that case it is
even more important that you counter-sink these holes well, so the aluminum
material does not come-up and push the devices up from the heatsink when you fasten the screws. If you use
the M3 taps, lubricate the drill and the taps well and clean the taps and
lubricate them regularly while you are tapping, to make sure that the threads
are not damaged. The NFET’s and the LM35 will need to be tightened to the heatsink well, to get
the maximum heat transfer, so the threats need to be well made.
I created M3 threaded holes for the two NFET’s 23mm
from the back-end of the heatsink, 33.5mm apart, and about 23mm from the edge of
the heatsink.
The LM35 goes in the middle of the heatsink and 27mm
from the back. Countersink the holes and make sure everything is flat. Use a fine file if needed.
The other 4 holes you see are from previous mounting positions and are no longer used.
The front of the main PCB will be supported by two extenders
towards the front of the enclosure. I used two 30mm long M3 extenders screwed
together. You can use any length parts, as long as they are 60mm in total. The height can be adjusted when the PCB is mounted. The position of
the holes in the bottom enclosure for these supports is best determined when the
PCB with the NFET’s and the LM35 is mounted on the heatsink.
As you can see from the picture below, the bottom fan is positioned such that the wires come out at the left-hand side. The open side of the fan must be facing the bottom of the enclosure so it sucks the air into the enclosure.
Because the 4 wires for the fans have a shrink-wrap tube, they are too sturdy to my liking, so I took the tubing off.
The NFET’s and the LM35 will be
mounted flat on the heatsink. The main PCB needs to be mounted as high as possible
away from the heatsink, to minimize heat transfer. With earlier
prototypes, I found that there is a surprising amount of heat transferred
through the NFET leads to the PCB. Keeping the legs long helps.
The challenge is to move the body of the NFET's as far away
from the PCB as possible, to again reduce the heat transfer by way of the
leads, and the heatsink heating the bottom of the PCB. We also need to create
space away from the PCB to mount the two smaller TO220 heat sinks on top of the NFET's without them
touching the PCB. The place where you bend the leads of the NFET's upwards is
critical to accomplish this. I bend the leads of the NFET's after about
6mm from the case with 90 degrees (not too sharp!) upwards.
You can position the three devices loosely with a
screw using the M3 holes you created earlier, and then position the PCB on top
of them, with the leads protruding through the holes in the PCB. At this
moment, you can use the two mounting extenders on the other end of the PCB so
it is about horizontal, or use something else to keep the PCB horizontal and stable. I also
used two spacers of 8mm to support the PCB near the NFET’s so you can position
the PCB horizontally in order to solder the leads, and the right amount away from the PCB. Make
sure that the PCB is positioned high enough such that the NFET leads only just protrude 1-2mm
through the PCB holes to allow for proper soldering. The LM35 leads are a bit longer, so that’s OK. I suggest you solder only the middle leads at this moment. Be careful not to drop the
other end of the PCB and bend the leads.
Once you are happy and double checked the position of the PCB and the three devices, you can mark the position of the front supports and then remove the three screws holding the three devices and remove the two extra 8mm standoffs.
You can now finish the mounting of the two front supports by drilling the holes. After you have secured the bottom portions to support to the enclosure, you can roughly adjust their total height.
Before you finally mount everything again, apply heat paste to the NFET positions on the heatsink and use an insulated silicon pad with an insulator ring for the LM35. Loosely tighten the 3 screws again and use an Ohmmeter to make sure that the LM35 tab is insulated from the heatsink, because the NFET’s are not, and their pads will connect to the DUT voltage of up to more than 100V to the heatsink.
When everything is in position, you can tighten the screw for the LM35 and again check that the tab is still isolated. Unscrew the two NFET’s screws again and now add the extra TO220 heatsinks on top of them, using plenty of heat transfer paste.
Make sure that the heatsinks do not touch the PCB. You can now carefully tighten the screws for the NFET’s and solder all the leads.
After that, you can do a final adjustment of the two front supports so that the PCB is horizontally mounted inside the enclosure. When that is done, re-heat the middle pins of the three devices, to let the stress out, and then solder the other pins. Use plenty of solder for the NFET leads, they will get stressed by the developing heat (up to 100 degrees C).
Preparing for a first power-on
After you have finished the above steps, we can start
to power-up the board again and verify some of the vital signs.
You only need to add the 12V DC power to the board, but I recommend you use a Lab supply initially with a current setting of 100mA. If there is no large current, indicating a short or another issue, you can now switch to the 12V DC wall wart.
Do not install the ESP32 in its socket at this moment.
Verifying the Power Rails
You can now
verify all the power rails:
·
DC
Input 12-15V at J4
·
+12-15V
at pin 1 U9 (LM7809)
·
+9V
at pin at pin 3 of U9
·
+5V
at pin 3 of U12 (LM7805)
·
-5V
at left side of C31 or pin 5 of U5 (ICL7660)
·
+4.096V
on either side of R60
When that
is OK, you can go to the next step, but first disconnect the 12V DC input again.
Adjusting the OLED display position on the front panel
For this step we need to install the ESP32 module on
the PCB and load the ESP32_OLED_Test_V1.ino firmware.
Do not apply the main 12V at this moment, it is not
needed for this step.
The OLED module connects to J6 on the PCB. The module
comes with flying leads that each have their own connector. I recommend you
change these single connectors to a 7-pin connector so you can’t make mistakes
with the order, and it’s a lot easier to remove and install.
You can connect your PC to either the mini-USB of the ESP32
module, or start to use the mini-USB to USB-C adapter. When you have made the
connection, the red power LED on the ESP32 module should light-up and your PC probably will give a signal that a new device is connected.
I’m assuming that you already installed the Arduino
IDE. If not, you need to do that now. There are plenty of instructions on the
internet to do that successfully. I was using IDE V2.3.2 and now the just available V2.3.3. The Arduino IDE is needed
to load the firmware for the ESP32 module. Locate the ESP32_OLED_Test_V1.ino on
the GitHub and download it to your PC. Save it in a new directory called “VB
Dynamic DC Load” in the Arduino directory on your PC, it is most likely located
in your Documents directory.
After you saved it there, use the Arduino IDE to
locate the file and load it into the IDE.
After you connect the USB from the PC to the ESP32
module, you now need to prepare the Arduino IDE for the ESP32 processor setup. There are many
tutorials on how to prepare the IDE for ESP boards. Do that first.
After that installation, in Tools select Board and
search for the DOIT ESP32 DEVKIT V1 in the esp32 branch. That’s the ESP module
we use, and the firmware will most likely only work with that module.
Under Tools, select the connected COM port.
Compile and download the firmware and see if it gives
you any errors.
If there are, you need to figure out what the problem
is. There are too many possibilities to help you from here.
Install the connector from the OLED display to J6 on the main PCB, and position the module so you can see the screen and the white connector on the back is on the right-hand side of the display. When done, you can now connect the main 12V
power again, because it is needed to power the OLED. You need to press the EN button on the ESP32 module to force a reboot after you supplied the 12V. When successful, you should first
see a splash screen with the version number for a few seconds and then see a white square on the
OLED screen because all pixels are lit. Congratulations if you got this far!
The text of the splash screen will show the orientation of the OLED display. You could change the orientation
of the display in this test code and repeat that later in the firmware, but if
you keep to the instructions, and have the white connector on the right-hand side of the OLED module,
you should be good to go.
You can now proceed to mount the OLED display in position on the
Front Panel.
Mounting the OLED display on the Front Panel
To prepare for the mounting of the OLED display in
position on the back of the Front Panel, we need to change the mounting
hardware that came with the display.
During all these operations, keep the screen protector
foil on, or apply it again. It will prevent you from scratching or smutching
the glass. Use gloves when appropriate.
Remove the 4 M2 screws and standoffs. Keep the 4
screws, but we will not need the standoffs. You need 8 extra M2 nuts and 4 M2
washers to prepare to mount the contraption on the font panel.
Add an M2 nut to the
M2 screws. Stick them through the hole of the board, and add an M2 washer and then
another M2 nut. Tighten loosely. The M2 washer is needed to create some extra
space between the glass of the OLED and the Front Panel, so don’t skip it. You
may otherwise break the OLED display. Do this for all the 4 holes of the OLED
board.
You can now position the OLED board to the back of the
Front Panel and check the fit. It should slide on the 4 nuts, not the glass.
Apply the 12V main power again and do a reset of the ESP32 (press EN) to verify the orientation of the text from the splash screen and then see if you can position the white rectangle in the center of the square of the front panel. You can now peel the protective cover of the glass, because that may be impossible later on. I strongly suggest you use gloves and avoid any finger prints or worse, glue getting on the glass.
Before you do the next steps, I suggest you
practice the next moves once or twice to make sure you can position the OLED
properly without tangling the wires or moving the OLED display that you just
glued in position. If you are not happy using Superglue, then use normal glue
that you can still move a bit, but you then should tape the two together and
let it dry for a few hours.
With the OLED module powered and showing the white square,
hold the OLED board with the display side up in one hand, with the white connector on the back to the
right-hand side and add a drop of (Super)glue on each of the 4 nuts that will connect to
the solder pads on the back of the Front Panel.
With your other hand, pick-up the front panel and position and hold it just above the OLED screen
with the silkscreen text from the front panel up and make sure the white
rectangle square is in the middle of the square hole in the front panel. When
satisfied, slowly lower the front panel and press the two together and let the (Super)glue dry.
After a few seconds with Superglue, you can carefully turn the Front Panel
together with the OLED face down so the OLED stays in position and you can let it dry a bit more.
If you used
normal glue, you then need to secure the OLED in position with sticky tape so
it will not move while you let it dry for several hours.
Turn off the power and disconnect the USB connection
to the ESP32.
Wait with the next steps until you are sure the OLED
display glue is dry!
Loading the Dynamic DC Load firmware
The firmware for the Dynamic Load is located on the GitHub site and needs to be downloaded before you can load it into the Arduino IDE. The firmware is needed to operate the instrument, and at power-up will make sure everything starts in a known and safe state.
The firmware is in a zip file with the name of the version number. You need to unzip the zip file and put the 6 files in a new directory that must have the same name as the zip file, and create that directory in the ../Documents/Arduino/VB Dynamic DC Load directory you created earlier.
The firmware consists of 6 different files that the
IDE will stitch together to create the firmware during the compile, link and then download
process.
Load the file into the IDE and compile & download
it to the ESP32 module. You don’t need to turn on the 12V just yet. Just make sure
it finishes without errors. The first time can take a several minutes so be patient
and just look at the bottom screen of the IDE to see what is going on.
First firmware turn-on
Do not supply the 12V yet and also do connect the two fans to the PCB at this moment yet. Position the front panel with the OLED connected to the main board such that you can easily see the display. The front panel does not need to be mounted to the enclosure yet, but you may want to do that.
When there are
no compile or download errors, the firmware is loaded and started, and with the
red power LED on the ESP32 module already on, the blue LED now starts to flash.
If that is the case, then congratulations are in place again. Well done!
With the USB power applied, and when you now supply the 12V main power, the ESP32 is not getting a reset. You need to do a manual reset (press the EN button) again so the firmware is restarted, the OLED now becomes operational and after the splash screen with the version number, you should see the following start screen.
Connecting
the fans
Turn off
the 12V and remove the USB connector. If you still use the Lab Supply, raise
the current to 350mA. You can now connect the two fans and observe the starting or boot sequence when you turn the power on.
Boot
sequence
When you
apply the 12V main power, the red power LED on the ESP32 module will switch on, and both
fans will start to run at full speed. After about 2 seconds, the splash screen appears
and the blue LED on the ESP32 module will start to flash. The flashing is an indication for the execution of the firmware main loop. The splash screen
makes place for the initial screen display and the fans will be turned off. That actually completes the boot sequence. The instrument is now ready to make measurements and accept commands.
If you got
this far again, great!
The
front panel
It is now
time to finish the front panel installation, and connect the remaining leads
and parts to make the unit fully functional.
In the
picture below you can see my wiring on the back of the front panel.
To connect
to the rotary encoder, I used a ready-made and assembled wire-harness that I
purchased in different pin sizes. Here I’m using a 5-pin version. On the rotary
encoder itself, I bridged the middle of the 3-pin connector which is GND to one of the
switch pins. The VCC pin of the connector is not used. It is there in case you
have a rotary encoder with a debounce circuit that needs power. The firmware works well enough with the rotary encoder without hardware decoding support.
The main
power leads for the DUT are heavy duty and I used so called car connectors to make it easy
to mount them. Make sure they can handle 10A.
It’s a
little hard to see, but there is a 10nF capacitor directly soldered on the Current
Monitor BNC, to take care of a nasty glitch caused by the induction of the cables.
For the
main DUT and sense inputs, I used these 4mm Banana binding posts. They have the correct
19mm distance.
The wiring
of the sense switch is quite simple. I connected leads between the main Banana terminals and the sense terminals with solder lugs and used two wires to go to J3 on the PCB.
The power switch is in between the plus lead coming from the DC jack on the back panel and the positive connection of J4 on the main board. The ground lead from the DC jack goes directly to J4.
I used
2-pin wire harnesses for the Current Monitor and the Transient Input connectors,
and used these BNC connectors:
The main
power switch and the USB adapter are not showing in the picture.
To make sure you don’t pull out the USB-micro to USB-C adapter from the ESP32 socket, I positioned the adapter with everything mounted, and used a tie-wrap flush to the front panel to secure it. To make sure it stays in position, I used some glue to fix the tie-wrap into position.
With everything now installed, you should have a fully working instrument that should look like
this:
You are now
ready to move on to the Calibration & Verification section.
Calibration & Verification
Remove the top cover of the enclosure. You need access to the trimmers and test points.
Initial step
Make sure you have the latest firmware version installed that is available on the GitHub.
To start the
full procedure again after an earlier procedure, you need to revert some of the
calibration factors in the firmware back to the original value. These constants
are located in the calibration section in tab ESP32_V4_xx.ino of the firmware in the Arduino IDE starting at around line 54.
· double const shuntVcalib = 1.0; // optional
·
double const dutVcalib = 1.0;
·
double const cvCalFactor = 1.0;
Set these values to 1.0 if not already and recompile and load the firmware.
Calibrate the OLED voltage display
1. Set a Power Supply to 2.50V, or use a voltage reference, connect it to the main terminals of the Dynamic Load (DL). Use a DMM to verify the actual voltage.
2. Set the remote sense switch to off.
3. Make sure the NFET’s are OFF so there is
no current flowing.
4. Note the OLED display for Voltage and adjust RV1 on the PCB so the OLED shows
the same voltage or as close as you can get it. (due to the averaging and the resolution, take your time)
5. Use a Power Supply to raise the voltage
to just below 100V or as high as your supply supports (stay below 105V), and verify using a DMM.
6. The difference between the DMM
measurement and what the OLED shows should be less than +/-0.5%. If it is more,
you can activate the optional calibration factor in the firmware to apply a correction.
7. Calculate the difference with the DMM
and the OLED voltage and use that as a factor below.
·
double const dutVcalib = 1.0;
The calibration constants are located in the calibration section in tab ESP32_V_4_xx.ino of the firmware starting around line 54.
8. Recompile the firmware to apply the
calibration, and run this calibration section again to verify.
Verify the sense switch operation
1. Set the Power Supply to 30V and a current of at least 1.5A. Connect sense leads from the DL sense inputs to the Power
Supply. Directly connect them at the Power Supply connections.
2. Switch the sense switch to on and verify that the DUT voltage is the same in both on and off settings.
3. Turn the DL input ON with a short press
of the decoder button, and check that there is no current flowing yet. Adjust
the rotary encoder of the DL load such there is at least 1A flowing as a load.
4. Alternate the sense switch in both positions to show the effect of the external sense input that will compensate the voltage reading for higher currents flowing through the main leads, that will cause a loss and therefore a voltage drop. If you switch to higher currents, the effect will even be larger.
Current calibration for the DAC
1. Set the Power Supply for a voltage of
10.0V
2. Connect a DMM to the DAC test point and a GND test point on
the main PCB and use the rotary encoder to get a reading closest to 400mV on the DMM - let the system
warm up for a few minutes and readjust if needed.
3. Adjust RV2 on the main PCB to get a current of 1.000A on
the power supply or measure the current with a DMM. Note that the current on
the OLED display itself will not be accurate yet, it still needs a calibration.
Verify the DAC-ADC and the Power Section
accuracy
1. Measure the voltage at the DUT_I test
point on the main PCB -- it should be between 396 and 404mV which is an accuracy of +/- 1%.
2. Store the error in DUT_Current.
·
double const DUTCurrent =
400.00 - your reading in mV; (it is not used however)
Calibrate the OLED display to show the correct current value
1. Make sure that the shuntVcalib constant in the firmware has a value of 1.0.
2. If not, set it to 1.0 and re-compile and load the firmware with that factor.
3. In the CC mode, with the load ON, set the current with the encoder such that the Power Supply shows a current of 3.00A, or use a DMM in current mode to measure the current.
4. Note the current value on the OLED
display and divide the Power Supply or DMM reading by that of the OLED value.
5. Enter that result (it will be around
2.5) in calibration constant shuntVcalib and re-compile the firmware to activate it.
6. Verify that the OLED current now is
virtually the same as the Power Supply or DMM current at different load values.
Calibrate the CV mode tripping voltage
1. Make sure that the calibration constant cvCalFactor in the
firmware has a value of 1.0.
2. If not, set it to 1.0 and re-compile and load the
firmware with that factor.
2. Use a Power Supply and apply a voltage
of 50.00V, set the maximum supply current to 100mA. (When the CV mode is
tripping, a Lab Power Supply will go into the CC mode, and will apply the full
current to keep the voltage the same. We want the current to be low, to keep
the temperature low during this calibration)
3. Activate the CV mode, the Set voltage
will be automatically set to 10% higher or 55.00V. Turn the DL to ON. There
should be no current flowing, if there is, raise the set voltage until there is
no current flowing.
4. Slowly dial down the Set voltage with the rotary encoder and
take note of the Set value when the tripping point happens. This is when current starts
to flow. You will have to raise the Set voltage about 0.5V higher in order to
turn the current flow back off. This is the normal hysteresis activity.
5. Calculate the deviation factor of the DUT voltage and the tripping point voltage and apply that to the calibration constant cvCalFactor and recompile and load the firmware to make it effective. As an example, with a tripping voltage of 52.50V, the deviation is 52.50/50.00=1.050000 and that is the calibration factor that needs to be stored in the firmware.
7. After recompilation and loading, verify that the
cut-in voltage is now very close. (it is unlikely you
will get it exactly the same, but it should be within a few percent)
8. Try the CV mode now with a Power Supply setting of 2.00V and verify that the tripping point is very close. You will have to dial-back the rotary encoder from 50V down to 2V, which, even with fast dialing, will take some time. You can also cycle through the modes by long-pressing the rotary encoder, until you are back at the CV mode, in which case the Set voltage is automatically set to 2V + 10%.
CV mode with a regulated (VC/CC) power supply
Note that with a Lab Power Supply as a DUT, the CV mode is not very functional due to the rapid switch of the power supply from CV to CC. To better test the CV mode and get more familiar with it, you can use a battery, or an (unregulated) supply that does not have current fold-back or current limiting/regulation. A transformer with a (bridge) rectifier and an electrolyte filter capacitor will much better show the CV mode regulation in operation.
I may add more later... Stay tuned...