Characterizing an off-grid solar PV system using the Aim-TTi QPX750SP
This blog details my experience using the QPX750SP to characterize performance of a small off-grid solar PV energy system. Main components in the system are: two 85 W solar PV modules, a 12 V sealed lead acid battery, a 1000 W pure sine inverter, and a 30 A Maximum Power Point Tracking (MPPT) charge controller. The system provides power for running LED interior and exterior illumination in a 8' x 10' garden shed. It also powers a NEST IQ outdoor security camera, a pumped irrigation system, and a Dallas 1-wire weather station. The system was originally installed in 2007. It has grown and gone through several upgrades over the years. In 2021 I began a significant upgrade and expansion project. Given the beefy output capabilities of the QPX750SP I thought it would be a great tool to help me characterize the performance of the upgrades. Characterizing the upgrades in the solar PV system was a component of my Road Test proposal.
PV System Block Diagram
The majority of the components shown in the block diagram above have been installed and tested, however, the STM32 controller and the VFD display are still in development. The Renogy 30 A MPPT charge controller measures and displays a few system parameters including battery voltage, PV module voltage, charge current (instantaneous and Ah), load current (instantaneous and Ah), and battery temperature. There is a Bluetooth accessory transceiver that communicates real time and historic parametric data to a phone application, but I found the application did not provide the information I needed to understand system performance. Also, the Renogy charge controller is blind to the load current drawn from the battery to power loads connected to the pure sine inverter. I have been remotely datalogging three system parameters for about a year now. Battery voltage, module voltage, and shed interior temperature are automatically logged every day by a B&K DAS 240-BAT multichannel recorder. A new log is configured to start everyday when module voltage rises above 1 V. Logging stops around sunset when when module voltage drops below 1 V. Samples are taken on all three channels every 20 ms. These configuration parameters capture charging and discharging behavior during sunlight hours. Of course, weather and seasonal changes in the Sun's arc across the sky have dramatic effects on charge behavior. Daily logs record other ephemeral phenomena like connection and disconnection of loads. To illustrate the variability in logs between a typical summer and winter day examine the two logs below.
July 1, 2021 Solar PV day log (Northern hemisphere Summer)
January 1, 2021 Solar PV day log (Northern hemisphere Winter)
One of the more significant differences between these two logs is in the amount of sunlight available in July vs. January. The July log records a little over 17 hours of panel voltage above 12 VDC. The January log records about 7.6 hours. Temperature swings from -6.7 degrees C to -1.98 degrees C on the example January log whereas on the July log temperature swings form +26.5 C to a peak of +41.6 C. Battery and module voltage also have different patterns based on the amount of cloud cover and load demand on the two example days shown. Another interesting behavior can be gleaned from these two logs. Note that the maximum panel voltage reached on a hot summer day is 40.037 volts at a temperature of about +32 C. The maximum panel voltage on a chilly January day is 44.435 volts at a temperature of about -3 C. PV module voltage is inversely related to module temperature. Colder temperatures produce greater voltage and higher temperatures produce lower voltage. Although this can be beneficial at higher latitudes where it gets colder when daylight hours get shorter, it is also important to take this behavior into consideration when running modules in series. The system needs to be designed so that the maximum voltage from cold panels does not exceed the maximum input voltage rating on the charge controller. The hot/cold voltage difference in this example is only about 4.4 V, but it often gets much colder here than -3 C. Morning lows can be 10X lower (i.e. -30 C).
Although these logs provide a detailed record of the three measured parameters, they don't reveal everything. For example, what are the current flows from the PV modules to the charge controller and from the charge controller to the battery? By what amount does the MPPT controller boost module current to optimize charging? To perform controlled experiments that would provide information that might answer these questions, I set up the QPX750SP and two logging ammeters on site. The QPX750SP would act as a controllable energy source simulating the PV modules with the distinct benefit of not changing output when a cloud passes by. There is no question that the QPX750SP has the output capability to simulate the energy generated by the modules in this system.
Use of the QPX750SP on site, away from my bench, revealed a small limitation. There is no built in data logging capability in the QPX750SP. To log voltage or current the instrument needs to be connected to a computer through the provided USB or Ethernet ports. This is not a problem in most modern electronics labs, but in this use case the instrument is used on site away from a bench with a need to log data. I found the idea of lugging a laptop along to record samples a bit annoying so I opted to use logging multimeters. A Fluke 287 logging multimeter was connected to record current flowing from the PV modules to the charge controller and a FLIR CM65 logging clamp meter was connected to measure current flow from the charge controller to the battery. On the first day of experiments the two meters were set up to record samples every second for 10 minutes. My first baseline experiment was performed without the QPX750SP in the system. This experiment would establish behavior of the system under real world conditions. The sky was partly cloudy and clearing during the test. Data from the two meters was uploaded and merged in Excel to make the chart below.
It is very evident from these meandering traces that solar irradiance and PV module output current is highly influenced by cloud cover. The two traces may not be correctly aligned due to differences in their internal real time clocks, slight differences in when they were started, and the manner in which the Fluke 287 records samples. Regardless, it is easy to see that the charge current is not the same as the PV generated current. For the duration of this test the charge current was considerably higher than the generated current that flowed from the PV modules into the charge controller. The charge controller circuitry boosted charge current at times to more than double the PV module current. To understand how MPPT charge controllers work, I recommend reading the following on-line resources:
This experiment also gave me an idea of how much current the QPX750SP will need to provide when it simulates the existing PV module arrangement. Based on the specification sticker, shown below, and on results of the experiment above, I expect the QPX750SP will need to supply no more than 4.83 A under optimum conditions (clear sky with incident rays perpendicular to the panels surface). The PV module specifications were obtained under AM1.5 test conditions. For details on the AM test spec, click here, or here. In the next experiment the QPX750SP will provide input energy to the charge controller, effectively simulating the output capabilities of two TPS105-85W-MONO panels connected in series on a clear day with the Sun shining perpendicular to the panel surfaces.
PV module simulation
For this experiment I disconnected the two PV modules from the charge controller and connected the output of the QPX750SP to the PV+ and PV- terminals on the charge controller. A Fluke 287 logging multimeter, set up as an ammeter, was connected to log current flow out of the QPX750SP. A FLIR CM65 Clamp Meter was connected to log battery charge current flowing out of the Renogy charge controller. The QPX750SP was set up with the following parameters:
QPX750SP setting | Value |
---|---|
Vset (output voltage) | 35.20 VDC |
Iset (output current) | 4.83 ADC |
OVP | 38.0 VDC |
OCP | 6.0 ADC |
Range | 50 V |
Sense | Local |
Plim | 170 W |
The output voltage was set to 2 X Vmp (2 X 17.6 V). Output current was set to Imp and Plim was set to 2 x Pmax. I found I had to set OCP to 6 A to avoid nuisance trips. I ran several 10 minute long tests under these conditions on the first afternoon of testing. During all of the tests on the first day the Renogy controller stayed in MPPT mode. Battery voltage increased from 12.6 VDC to 13.8 VDC during the tests. For each test I started the QPX750SP at 0.2 V output and used the rotary dial on the front to step voltage up to 35.2 VDC over about 10 s (a very rapid sunrise simulation!). The Renogy charge controller requires a few seconds to recognize the availability of energy on the PV+ and PV- terminals. Once it recognizes a viable energy supply, and once it determines the state of charge on the battery, it determines which charging mode to engage to charge the battery. With the QPX750SP powering the charge controller the following data was gathered from one of the 10 minute tests.
This graph shows the output current from the QPX750SP driving the PV+ and PV- inputs on the Renogy charge controller during a 10 minute test. Current is generally limited to 4.83 A with a few overshoots. My interpretation of the periodic dips in current is based on my understanding of how MPPT charge controllers work. What we may be seeing is the effect of running a Perturb and Observe (P&O) algorithm as described in the first link above on MPPT theory of operation. In MPPT mode, the controller needs to find the maximum power transfer point for the PV modules. This point changes with solar irradiance, module temperature, and module age. One way to determine where this point exists is to perturb one output variable, like current, while observing the effect on another variable (voltage). Power can then be calculated, providing one point on the power curve. By slightly changing the perturbed variable and again observing the affected variable, two points on the power curve are obtained. By reiterating the P&O process with small changes the controller can continuously determine where the peak power point is, thereby extracting maximum charging efficiency throughout a charging cycle. While in MPPT charge mode the controller performs a test about every 5 seconds to determine the maximum power point. These tests cause current to drop then return back to about 4.83 A. While data was being gathered for this test the QPX750SP switched periodically between CC and CV modes about every 5 seconds. Power, as indicated on the QPX750SP front panel, was at or near 170 W for the duration of the test. For comparison, the graph below shows charge current driven into the battery by the charge controller during a portion of MPPT mode charging.
The Renogy charge controller switches operation between four modes: MPPT, Float, Boost, and Equalize (an optional mode not recommended for all battery types). Since the log data collected on the first day of simulation did not catch a mode change, I don't know if charge mode can be discerned from current logs. The charge mode is displayed on the built in LCD, and the instruction manual describes how each mode works, but I'd like to know what real world variables cause the controller to switch into and out of each mode. I ran a longer QPX750SP simulations the following day to let the controller switch from MPPT to Boost and then later from Boost to Float mode.
The chart above shows current flow out of the QPX750SP into the controller. From the start until 13:27:33 the controller is operating in MPPT mode. I'm not certain what is causing the sawtooth shape during MPPT operation. The QPX750SP output settings were fixed for the entire test duration. The only load on the battery would have been a NEST IQ security camera powered from an inverter connected to the battery. Can't think of a reason why the camera would cause a sawtooth shape over half hour intervals. I hope that isn't the P&O algorithm taking 30 minutes to find maximum power transfer points. Perhaps we are seeing another algorithm that operates in addition to the P&O algorithm but over a longer time frame. According to the Renogy operation manual the switch over voltage from MPPT to Boost and the duration of Boost mode are user adjustable. The default values for a sealed lead acid battery are 14.4V and 2 hours. I can confirm that the switch occurred at 14.4 V and that Boost lasted for about 2 hours. The graph below, generated with data captured by a FLIR CM65 clamp meter, shows a portion of the battery charge current during Boost mode. Although the controller is not using MPPT techniques during Boost mode, it is still using DC to DC converters to more than double the QPX750SP current.
And for the sake of completeness, here are charts showing current draw from the QPX750SP and battery charge current during Float mode.
Again, it can be observed that no P&O algorithm appears to be running in Float mode, but the charge controller is still boosting charge current by a factor of more than 2X.
The QPX750SP allowed me to simulate, in a general way, the capabilities of two PV modules connected in series based on labelled voltage, current, and power specifications. The simulation was not perfect because PV modules do not switch between CC and CV mode depending on load conditions. However, the QPX750SP has sufficient power output capability to easily match the voltage and current capabilities of smaller PV modules. My objective was to determine if the QPX750SP could help me better understand MPPT, Boost, and Float mode behavior in a series connected module array. It certainly did help with that objective. Given the generous power capabilities of the QPX750SP I decided to run a simulation of a 4 panel array in a series-parallel arrangement that would effectively double the current output from the array at the same voltage level. Being aware of the 10 A fuse limit on the Fluke 287 ammeter I limited QPX750SP current to a maximum of 9 A but kept voltage at 35.2 V and set Plim to 320 W. Logs from two portions of the 4-panel simulation are shown below. The first log starts near the end of the second log. I didn't know when the charge controller would switch modes. I managed to catch the switch on one logging meter, but miss it on the other.
This log shows the QPX750SP providing a peak 9.0 A to the charge controller during the MPPT portion of the test, then there is a brief gap in the MPPT pattern, a sudden drop in current draw, a short resumption of MPPT behavior, then a switch to Boost mode charging. I did not observe the sudden drop in current prior to mode switching in previous tests. The log below illustrates the battery charge current behavior with the QPX750SP set up to simulate a 4 panel series-parallel arrangement. The log starts with the QPX750SP outputting 0.2 V. Voltage is manually increased up to 35.2 V in 1-volt steps. The sudden rise in charge current occurred at about 20 VDC output from the QPX750SP.
I learned a few things from this simulation test.
- The QPX750SP is, yet again, very capable of outputting a significant amount of power in a variety of conditions. In this test, 9 A were easily maintained at 35.2 VDC.
- The Renogy Rover RVRPG-30 charge controller can likely handle a 4 panel array in series parallel configuration. It is rated to deliver up to 30 A of charge current with up to 100 V of solar input voltage.
- Time to reach Boost mode seems to be drastically reduced with 9 A of available solar input current vs. 4.83 A. By overlapping the two logs above it can be determined that the duration from power up (simulated sunrise) to mode switch was something close to 12 minutes and 15 seconds. In previous tests it took hours to see a mode switch. What I can not guarantee is the state of charge on the battery at the start of each test. The tests were run in the early afternoon on consecutive autumn days in 2021 with the same load on the battery each day, but cloud cover was variable between tests, so state of charge was unknown. However, it makes sense that the battery will charge faster with 20 A of charge current vs 11.4 A
To finish this blog, I will use the QPX750SP to simulate the battery so I can get data on load currents.
Absorbed Glass Mat battery simulation
The system is currently equipped with a single Nautilus brand 105 Amp hour deep cycle battery using Absorbed Glass Mat (AGM) technology. Click here for a deep dive or here for a quick practical overview on AGM battery technology. My experience with AGM battery technology has been good so far. I notice that the AGM battery does seem to charge faster than the previous sealed lead acid battery I had in the system. AGM technology is also supposed to perform better in deep cold. We have plenty of that in northern Canada.
My objective for this series of tests was to learn about the current draws from various loads I have designed into the system. The QPX750SP will behave as a controllable substitute for the battery. Coincidentally I determined what the Renogy MPPT controller reports as Battery Capacity based on battery voltage. For this first test series the inverter was switched off and no DC loads were connected. The only load on the QPX750SP would be the Renogy charge controller. The Battery current columns show how much current was being drawn from the QPX750SP when the controller was in DC loads off mode and in DC loads on mode. In both cases, no loads were actually connected to the controller, so the currents reported are flowing within the controller itself. The table below summarizes finding s from the state of charge experiment.
QPX750SP Vout | Renogy MPPT controller Battery Capacity (%) | Battery current mA (DC loads off) | Battery current mA (DC loads on) |
---|---|---|---|
12.0 | 42 | 93 | 98 |
12.2 | 52 | 91 | 97 |
12.3 | 57 | 90 | 96 |
12.4 | 61 | 89 | 95 |
12.5 | 66 | 88 | 94 |
12.6 | 71 | 87 | 92 |
12.7 | 76 | 86.5 | 92 |
12.8 | 80 | 85.6 | 90.7 |
12.9 | 85 | 85 | 90.2 |
13.0 | 90 | 84 | 89.2 |
13.1 | 95 | 83.7 | 88.7 |
13.2 | 100 | 82.5 | 86.6 |
13.3 | 100 | 81.6 | 86.5 |
Now to get some data on how the various loads behave. The log below shows some of the DC LED light loads being switched on in sequence. There are three 10 W 12 VDC LED bulbs in the garden shed mounted front to back. By running this test I think I discovered a missing component in the interior lighting installation. The 3 interior bulbs are wired in parallel. They are connected to a single switch. Very often when the interior lights were witched on the in-rush current to the bulbs in parallel would trip the output protection on the charge controller. I took two steps to remedy this nuisance trip problem. First, I put two of the interior lights on pull chain sockets so they could be turned on/off separately from the main switch. Second I installed In-rush Current Limiting (ICL) devices in series with the bulbs. These devices increase resistance with current flow and help smooth out step increases in current, thus preventing protection circuits from tripping. On the log graph below you can see that the second and third bulbs cause a gradual increase in current draw. The first bulb shows a step wise increase in current draw. It would appear I neglected to install ICL devices on all three bulbs. With all interior lights on plus the exterior flood, about 3.17 A are drawn from the battery if it is at 13.2 VDC (100% capacity).
Next, two tests focusing on the 1000 W pure sine inverter. I wanted to know how the inverter behaves during power up without loads, then I wanted to see how the NEST IQ camera behaves during start up. The graph below captures start up of the 1000 W pure sine inverter. I suspect there is a large capacitor on the input based on the spark I usually get when physically connecting it to the battery and on the large transient captured in the log below at the moment of power up.
Disappointingly, from an energy efficiency point of view, the inverter consumes 13 W while idling. That is a small, but continuous drain on the battery that is especially of concern through the long nighttime hours in northern winters. The only device that needs continuous AC power in the system is a Nest IQ camera. I have been trying to figure out if I can power the camera from a DC source to improve system efficiency. The chart below shows power up and network connection of the Nest IQ camera. By subtracting out the 890 mA of baseline current drawn to power the inverter I calculate the camera draws about 170 mA during initialization then about 430 mA during normal (network connected) operation. The built in IR LEDs that come on at night would increase this draw further, but that draw was not measured during these tests.
There will be other loads to characterize in the system including a 12 VDC water pump for irrigation, some additional LED landscape lights, and occasional charging of lawn tool battery packs. However, the tests detailed here are sufficient to give me an understanding of the day-to-day loads on the system.
In conclusion
The QPX750SP met all of the demands of the characterization tests described here. It was easily able to simulate the current and voltage levels generated by up to four 85W solar modules, producing up to 320 W of output power under dynamically changing load conditions. That level of power is still less than half of its maximum output capability. The only thing missing it built in data logging capability. I happen to have logging multimeters available, but it would be great to be able to plug in a USB memory stick and log current, voltage, and power samples right at the instrument. My Keysight E36313A power supply has local logging capability to USB memory, but it does not have the output power capacity to perform these tests.