Self consumption from weekly \ monthly reports

11 comments started 2024-10-21 last 2024-10-25
GivEnergy Products
J
#1 Jairam_padia

Hi
I am wondering how this is calculated for the reports.
My figures seem to be always a negative number and I can't really figure out what it means.

Can anyone help or is there some explanation on what there reports are telling us?

Thank you
JJ

C
#2 CW

Jairam_padia It is calculated as follows:

(Solar to Home + Solar to Battery - Battery to Grid) / Total Solar Generated

G
#3 geoffreycoan

CW that gives percentage of self consumption which is a useful figure

I work out self consumption energy in kWh as:

import - export + battery discharge - battery charge + solar generation

C
#4 CW

geoffreycoan I'm going to have to sit down and give that a long think to understand it 😃

W
#5 wrighar

I keep a small excel tally sheet, I also do mini monthly ones (or rolling 4 week ones) to look at/when I should hop tariffs.

#6 Tenkaykev


These are my details as shown by the Inverter app. I'm not sure if I'm interpreting the figures correctly, but the efficiency looks dreadful.

W
#7 wrighar

I don't get the two charge/discharge totals on mine :-(

 MOVE 1350, 320 : GCOL 6 : PRINT "Charge:";
 MOVE 1890, 320 : PRINT ; chatoday% / 10;
 IF acc% MOVE 2170, 320 : PRINT ; chatotal% / 10;

 MOVE 1350, 192 : GCOL 4 : PRINT "Discharge:";
 MOVE 1890, 192 : PRINT ; distoday% / 10;
 IF acc% MOVE 2170, 192 : PRINT ; distotal% / 10;

G
#8 geoffreycoan

wrighar I don't get the two charge/discharge totals on mine :-(

Me neither but the data is there on the inverter

D
#9 DD

wrighar IF acc%

I think perhaps maybe acc% is derived from the serial number. (Specifically a 'C'.) Some comments mention distinguishing hybrids. I wonder if 'acc' was intended to mean ac-coupled ?

W
#10 wrighar

Yes, I just removed the conditions to force display, and get the below which is AC Charge total, not battery charge total

I need to work out what's where in the regiosters:

D
#11 DD

wrighar I need to work out what's where in the regiosters

Yeah... not really something that's easiest in bbc basic.

'r' is the entire input message, as bytes. The registers start at offset 42, and each register is 16 bits, which is why it has to combine two adjacent bytes. 42 + 72 is the upper half of register 36, and 42+73 is the lower half.

r&(28) is from the message preamble. I think it's the inverter serial number.

From the python library:

The packing format is fairly regular, though some fields appear in only
some messages. After the modbus framing comes:
 uint8[10] data_adapter_serial_number : the comms dongle itself
 uint64 padding
 uint8 slave_addr:   unit identifier
 uint8 tfc:          transparent function code - top bit is error flag
 uint8[10] inverter serial number (all responses)
 uint16 base:        base register number (all except NullResponse)
 uint16 count:       number of registers (all except WriteHoldingRegister messages, and NullResponse)
 uint16[] values:    (all responses, and WriteHoldingRegister request, unless error bit is set)
 uint16 crc:         crc
Encoding is big-endian, except the crc which seems to be little-endian ?

(This is after 8 bytes of modbus framing, which is consistent with the values field having offset 42.)