Solar application on Android

The past couple of weeks I’ve been working on an Android application to look at the solar panel production. The following screenshots show what this has lead to.

The left picture shows the start-up screen, with a photograph of the actual panels and six buttons for each of the screens. The middle picture shows the production in tabular form. The red coloring is for the 10% worst production days overall, the green coloring for the 10% best days overall. The grey background is for Saturdays and Sundays. The right picture shows the temperature of the inverter and the booster. It seems that the inverter tries to keep the temperature of the booster below 50 degrees. It does something – I don’t know what yet – until the temperature reaches 40 degrees:
The application works in both portrait mode and landscape mode. The left picture shows the production for each day from installation until the current day. The right picture shows the production on a single day, with buttons to select the day:

A sunny day with three clouds

The 19th of December 2011 was a good day for solar panels. The production that day was about 3.5 kWh and you can clearly see that the inverter got enough power to awake at around 9:00, being at peak around noon and going back to sleep at around 15:00. This looks hopeful for the summer, probably showing similar graphs with higher tops and wider bottoms.

Solar panel graphs

The last couple of weeks I’ve been running monitoring software that is connected to the Aurora inverter and receives measurements from it. The setup is as follows:

A lot of measurements are available, such as voltage, current and power of both inputs (solar panel strings) and the grid, temperature of the inverter and its booster, etc. The most interesting graphs are shown below. The first one shows the energy produced on each day since the solar panels were installed.

The second one shows the power of a single day, from both the input (solar panel string) and the grid. There is a difference in these two readings, because the inverter is not one hundred percent efficient in transforming DC input into AC output.

The third one shows the voltage outputs of the solar panels. Although not perfectly stable, it tries to keep quite constant at about 200V.

The fourth one shows the current outputs of the solar panels. This is what matters for the production of the panels.

The fifth one shows the temperature of the inverter itself and its booster. It seems that the inverter tries to keep the temperature of the booster below 50 degrees. As soon as it hits 50 degrees, it cools down to 40 degrees and rises again.

Solar inverter readout

I hooked up the Aurora Uno PVI-2000 solar inverter to a laptop with an RS-232 serial cable. Note that we need an RS-232 cable with a male connector on one end and a female connector on the other end. It also needs to be a straight connection, i.e. no cross between RX and TX. If you don’t have such as cable handy, you might link two cross cables to acquire a straight cable.


Curt Blank has made an open source Linux program called aurora that uses this connection to get readouts from the inverter. The program is included in the Ubuntu packages since 10.04 LTS, so it is really easy to install:

sudo apt-get install aurora

The serial connection on my laptop is called /dev/ttyS0 by Linux, so this is what we use as one of the parameters. Another required parameter is the address of the inverter. Several inverters might be present in a solar installation, so an address is needed to target a specific one. Note that this is only relevant if they are linked together with RS-485 cables. In my case there is only one and the inverter has address 2.

Let’s start with the energy in the last 10 seconds:

# aurora -a 2 -j /dev/ttyS0

Energy in the last 10 seconds (Joules) :    1948.365882

More interesting is the energy produced for today, weekly, monthly, yearly and since the inverter was installed:

# aurora -a 2 -e /dev/ttyS0

Daily Energy               =       0.094 KWh
Weekly Energy              =       0.094 KWh
Monthly Energy             =      12.447 KWh
Yearly Energy              =      12.471 KWh
Total Energy               =      12.469 KWh
Partial Energy             =      12.444 KWh

There are also readings about voltage and current. To be honest, I don’t understand the input 2 readings because there is nothing connected there.

# aurora -a 2 -d /dev/ttyS0

Input 1 Voltage            =  184.667801 V
Input 1 Current            =    2.804785 A
Input 1 Power              =  517.953552 W

Input 2 Voltage            =    0.650100 V
Input 2 Current            =    1.859635 A
Input 2 Power              =    1.208949 W

Grid Voltage Reading       =  225.644196 V
Grid Current Reading       =    1.965952 A
Grid Power Reading         =  458.323853 W
Frequency Reading          =   49.991001 Hz.

DC/AC Coversion Efficiency =        88.3 %
Inverter Temperature       =   38.024002 C
Booster Temperature        =   35.868004 C

There is also a Windows program made by Power One that shows current and historical readings called Aurora Communicator. A partial screenshot is shown below with some values when the sun shines brightly (for a November day that is).

The screenshot below shows the readings for a complete day. The lower graph shows the Watts (W) produced at each timestamp and the upper graph shows the accumulated Watt hours (Wh) values.

Solar panel installation

On Wednesday the 16th of November 2011 we installed some solar panels on our roof. The panels are from Trina Solar. Each panel produces 235 Watt peak (Wp), which means that the panels produce at most 235 Watt at any moment in time. If the light conditions are less favorable, the production will be less.

An inverter was also installed inside the house. The inverter is made by Power One and is called Aurora Uno PVI-2000. The inverter transforms the DC from the solar panels into AC that is fed straight into the mains of our house.

Unfortunately, the last week has seen unprecedented levels of mist, which means that our energy production was far lower than expected. Ah well, enough time left as the lifetime expectancy of the panels is around 30 years, while the inverter should last around 15 years.

I’ve been tinkering with the inverter a bit and got the monitoring software working on both Windows and Linux. More about that in the next post.