Esperyd?s Raspberry PI project

Nice add! Lets perhaps add that to the original code.

Im working on a new ISO version since I want to expand the code somewhat. But dont have a timeframe for it as of yet.
 
Hi!

Thank you for all your answers but let me be more specific. Since i have PIP5048 that gives me only voltage and current for solar and no data in W or Wh. This make all calculations (for me) a little bit complicated since i do not know how to tell grafana to calculate daily power production from those two variables.

As for CRC16 it is strange that inverter accepts command that i want to set from SBU to grid but not the other way around. I can set solar charging current but not solar+grid charging current.

Regards iga
 
uploader18 said:
Hi!

Thank you for all your answers but let me be more specific. Since i have PIP5048 that gives me only voltage and current for solar and no data in W or Wh. This make all calculations (for me) a little bit complicated since i do not know how to tell grafana to calculate daily power production from those two variables.

As for CRC16 it is strange that inverter accepts command that i want to set from SBU to grid but not the other way around. I can set solar charging current but not solar+grid charging current.

Regards iga

Maybe you can monitor/spy communications between inverter and software to see the command that sends and works for your PIP5048. That way I saw the undocumented commands for my inverter.


About power production, W =V *A, so you must select solar input voltage * solar input current, but I got no data using
Code:
SELECT sum("solar_input_voltage_1" * "solar_input_current_1") / 360 FROM "mpi_query_general_status" WHERE $timeFilter

Sure a malformed query for influxdb, maybe someone can help with the correct syntax.
 
This is my formula for now that works lets say correct for me....

SELECT (((mean("pv_input_voltage_1") *mean(pv_input_current_for_battery))/count(ac_output_active_power))*count(ac_output_active_power)) FROM "pip_query_general_status" WHERE $timeFilter GROUP BY time(1h)

Please do not laugh but it works......

I get data from inverter every 3 s.
 
uploader18 said:
This is my formula for now that works lets say correct for me....

SELECT (((mean("pv_input_voltage_1") *mean(pv_input_current_for_battery))/count(ac_output_active_power))*count(ac_output_active_power)) FROM "pip_query_general_status" WHERE $timeFilter GROUP BY time(1h)

Please do not laugh but it works......

I get data from inverter every 3 s.

I think you multiply pv voltage x pv current and then divide it by number of readings of active power to multiply again the result by number of readings of active power.

Yo should have the same result without dividing and multiplying by the same value.

Code:
SELECT (mean("pv_input_voltage_1") *mean(pv_input_current_for_battery)) FROM "pip_query_general_status" WHERE $timeFilter GROUP BY time(1h)

Almost the same as mine to get the bar graph of hourly production, I have afield with pv power, you calculate it with Voltage and Amperage.


image_xuenaw.jpg
 
uploader18 said:
Hi!

Thank you for all your answers but let me be more specific. Since i have PIP5048 that gives me only voltage and current for solar and no data in W or Wh. This make all calculations (for me) a little bit complicated since i do not know how to tell grafana to calculate daily power production from those two variables.

As for CRC16 it is strange that inverter accepts command that i want to set from SBU to grid but not the other way around. I can set solar charging current but not solar+grid charging current.

Beware that when setting between SBU and other source priority the PIP as a 10min buffer interval before it will switch back to SBU.
I also have the PIP5048 and I added the PIP commands for these settings in solar-sis, and they should work quite nicely.

Using PIP reported voltage*current for calculating Wh will not be very precise.
I use a few SDM120s instead (for house and grid Wh measurements) which are much more reliable.
Only for solar (from the PCM60x) I use the method of reported voltage*current and summing it up in influx queries.


Here how it looks:

image_klrbvr.jpg


image_vfiwrx.jpg


This is using my tesla app powerflow imitation code, you can try it at https://github.com/frnandu/diypowerflow

Check out more details of my build at: https://secondlifestorage.com/showthread.php?tid=1061
 
I agree that PIP is not very usefull in terms of reporting Wh. I use SDM630 personally for that. (3phase version)
 
FrnanduMarti?ski said:
uploader18 said:
Hi!

Thank you for all your answers but let me be more specific. Since i have PIP5048 that gives me only voltage and current for solar and no data in W or Wh. This make all calculations (for me) a little bit complicated since i do not know how to tell grafana to calculate daily power production from those two variables.

As for CRC16 it is strange that inverter accepts command that i want to set from SBU to grid but not the other way around. I can set solar charging current but not solar+grid charging current.

Beware that when setting between SBU and other source priority the PIP as a 10min buffer interval before it will switch back to SBU.
I also have the PIP5048 and I added the PIP commands for these settings in solar-sis, and they should work quite nicely.

Using PIP reported voltage*current for calculating Wh will not be very precise.
I use a few SDM120s instead (for house and grid Wh measurements) which are much more reliable.
Only for solar (from the PCM60x) I use the method of reported voltage*current and summing it up in influx queries.


Here how it looks:

image_klrbvr.jpg


image_vfiwrx.jpg


This is using my tesla app powerflow imitation code, you can try it at https://github.com/frnandu/diypowerflow

Check out more details of my build at: https://secondlifestorage.com/showthread.php?tid=1061

For the part of switching from source to source is if I do it by hand (in PIP's menu it switches instantly with no delay from SBU to UTI and UTI to SBU). When I poke API to switch to UTI it does that instantly and changes parameter 1 from SBU to UTI but when I want switch from UTI to SBU it does not switch parameter 1 to SBU.

As for the part of solar daily consumption I was able to solve that too.

FOR SOLAR

SELECT (mean("pv_input_voltage_1") *mean(pv_input_current_for_battery))/1200 FROM "pip_query_general_status" WHERE $timeFilter GROUP BY time(3s)

FOR POWER USED

SELECT mean(ac_output_active_power)/1200 FROM "pip_query_general_status" WHERE $timeFilter GROUP BY time(3s)

I group by time 3 sec since my readings come every 3 sec and divide it by 1200 why(60m*60s)/3(every 3 sec data)

Regards
 
I'm glad someone figured it out how to get battery power charged, etc. I couldn't figure it out and the only thing I was able to figure out was the daily usage. I used the integral function in grafana to figure out how to get the power used for the day.

SELECT integral("ac_output_active_power",1h) FROM "pip_query_general_status" WHERE $timeFilter GROUP BY time(1h) fill(null)

I ended up using another software where I could add more precalculated data (like in Wh for on battery, on ac, etc.) output by the PIP and just use simple sum to add up all the Wh.
 
I think above is good input. Since I am working on a new image I should include them in the dashboard for people i think. I never did that in the official
 
I create the queries like these to calculate energy:
===================
5. cq_kWh_batt_discharg
CREATE CONTINUOUS QUERY cq_kWh_batt_discharg ON powerwall RESAMPLE FOR 1h BEGIN SELECT integral(kwh_bco, 1h) / 1000 AS kWh_batt_discharg INTO powerwall.autogen.kWh_ALL FROM (SELECT mean(battery_discharge_current) * mean(battery_voltage) AS kwh_bco FROM powerwall.autogen.pip_query_general_status GROUP BY time(2m) fill(0)) GROUP BY time(20m) TZ('Europe/Rome') END

6. cq_kWh_PV_batt_charg
CREATE CONTINUOUS QUERY cq_kWh_PV_batt_charg ON powerwall RESAMPLE FOR 1h BEGIN SELECT integral(kwh_PV_bat, 1h) / 1000 AS kWh_PV_batt_charg INTO powerwall.autogen.kWh_ALL FROM (SELECT mean(battery_charging_current) * mean(battery_voltage_from_scc) AS kwh_PV_bat FROM powerwall.autogen.pip_query_general_status WHERE pv_input_current_for_battery > 0 GROUP BY time(2m) fill(0)) GROUP BY time(20m) TZ('Europe/Rome') END
===================

You need to create a new tables for these values before
 
Hi, why do I nothave pip_query_general_status as an option?


Hi, why do I nothave pip_query_general_status as an option?
 
jesusangel said:
Michael said:
Hi, why do I nothave pip_query_general_status as an option?


Hi, why do I nothave pip_query_general_status as an option?



If you don't have it is because the table doesn't exists, if it doesn't exist you never run the script to insert data in that table or the table where you insert data have another name.




I think I've followed the instructions, witchscriptdo Ineed to run ?
 
Im testing a new ISO with new versions but hit a snag. WatchmonUDPListener eats up all ram and crashes the machine. Relates to NodeJS not working as it should. Currently looking into how to solve it so if you have upgraded and have this issue just let me know.

Hope to be able to solve it soon since its anoying to reboot the device every 24 hours
 
daromer said:
You need to enable the status to be sent to influx. The script for pip4048 is called solar_pip and need to be enabled and started.

Enabling it is done in https://github.com/opengd/solar-sis/blob/master/example/PIP4084/session.json or in https://github.com/opengd/solar-sis/blob/master/example/PIP4084/calls.json
depending on how its setup. So best is to set influx true on both.


I overwritten calls.json
andi[size=medium]t solved the problem
Mange tak

thank you
[/size]
 

And there is more videos in this series:
 
daromer said:
Im testing a new ISO with new versions but hit a snag. WatchmonUDPListener eats up all ram and crashes the machine. Relates to NodeJS not working as it should. Currently looking into how to solve it so if you have upgraded and have this issue just let me know.

Hope to be able to solve it soon since its anoying to reboot the device every 24 hours

hi!

where can i get your now iso?

iga
 
uploader: On the first page you got links to current version
 
Back
Top