Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
pielle007 schreef op zaterdag 18 april 2015 @ 08:38:
[...]


Heb me aangemeld met 5x 480 duo Enecsys, dit wordt op t moment nog gelogd met een kwh-meter en youless. Als er een x een stappenplan komt hoe je kunt loggen met raspberry pi (dus een leken handleiding van a tm z) zou ik dit natuurlijk ook overwegen.
Mijn systeem draait overigens sinds juni 2012 en heb tot op heden nog geen problemen gehad (afkloppen |:( ) De monitoringsite van Enecsys heeft bij mij praktisch nooit correct gewerkt.
Tevens uit voorzorg een overspanningsbeveiliging geïnstalleerd in oktober 2014.
deze staat inmiddels al even op pagina 1. als je vragen hebt, stel ze gerust.

Acties:
  • 0 Henk 'm!

  • jandoedel99
  • Registratie: April 2015
  • Laatst online: 09-07 11:25
[quote]Dylotic schreef op vrijdag 17 april 2015 @ 18:22:
Hierbij mijn versie van een PHP site met inverter status zoals op deze pagina.
http://cbm64.nl/pv/

Werkt momenteel met 4 inverters , is zelf wel uit te breiden tot meerdere. Ik ben bezig om het aantal
inverters instelbaar te maken maar zo ver is het script nog niet. Er moet nog veel verbeterd worden!!
(ccs, ajax, updates zonder page refreshes, etc comming..)

Let op! Dit script werkt in samenwerking met het php script van omoerbeek met SQL repporting!

/quote]

Heb alles wat benodigd is lopen op een raspberry.
Graag zou jouw php script op mijn windows zien. Maar waar zet ik de bestanden en hoe roep ik ze aan?
Alle begin is moeilijk met deze voor mij nieuwe talen 8)7

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
hendrik99 schreef op zaterdag 18 april 2015 @ 11:37:
[...]
dat zou mooi zijn , bedankt !
Een mogelijk probleem is dat in SPLIT + AGGRAGTE mode de verkeerde resultaten worden berekend als je ook nog parent relaties hebt staan in PVOutput.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
jandoedel99 schreef op zaterdag 18 april 2015 @ 11:38:
[quote]Dylotic schreef op vrijdag 17 april 2015 @ 18:22:
Hierbij mijn versie van een PHP site met inverter status zoals op deze pagina.
http://cbm64.nl/pv/

Werkt momenteel met 4 inverters , is zelf wel uit te breiden tot meerdere. Ik ben bezig om het aantal
inverters instelbaar te maken maar zo ver is het script nog niet. Er moet nog veel verbeterd worden!!
(ccs, ajax, updates zonder page refreshes, etc comming..)

Let op! Dit script werkt in samenwerking met het php script van omoerbeek met SQL repporting!

/quote]

Heb alles wat benodigd is lopen op een raspberry.
Graag zou jouw php script op mijn windows zien. Maar waar zet ik de bestanden en hoe roep ik ze aan?
Alle begin is moeilijk met deze voor mij nieuwe talen 8)7
Je zult een webserver met php en sql moeten draaien op de raspberry. Vervolgens kun je mijn script
op de webserver zetten om vervolgens hier naartoe te kunnen browsen.

Hier wat meer info voor LAMP op een Pi: http://www.penguintutor.com/linux/raspberrypi-webserver

php zal wel al geïnstalleerd zijn , aangezien je schrijft dat het script van omoerbeek loopt.

[ Voor 3% gewijzigd door Dylotic op 18-04-2015 12:41 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
jandoedel99 schreef op zaterdag 18 april 2015 @ 11:38:
[quote]Dylotic schreef op vrijdag 17 april 2015 @ 18:22:
Hierbij mijn versie van een PHP site met inverter status zoals op deze pagina.
http://cbm64.nl/pv/

Werkt momenteel met 4 inverters , is zelf wel uit te breiden tot meerdere. Ik ben bezig om het aantal
inverters instelbaar te maken maar zo ver is het script nog niet. Er moet nog veel verbeterd worden!!
(ccs, ajax, updates zonder page refreshes, etc comming..)

Let op! Dit script werkt in samenwerking met het php script van omoerbeek met SQL repporting!

/quote]

Heb alles wat benodigd is lopen op een raspberry.
Graag zou jouw php script op mijn windows zien. Maar waar zet ik de bestanden en hoe roep ik ze aan?
Alle begin is moeilijk met deze voor mij nieuwe talen 8)7
Houdt er wel rekening mee dat als het je door wilt laten lopen, je pc ten alle tijde aan moet staan. Tel dat op aan het einde van het jaar en je hebt misschien een zonnepaneel draaien om je pc van stroom te voorzien;).
raspberry pi boardjes zijn hier geschikt voor omdat ze mooi klein zijn (je kan ze zo in je meterkast hangen bij je router) en ze verbruiken zeer weinig stroom. ik zou mijn pc niet aan willen laten staan om dit script te laten draaien.
ik geloof dat ze bij 100% use iets van 2,5 watt gebruiken. probeer dat maar eens met je pc te doen.
je hebt een continue reading en doorsturing nodig om alles goed te kunnen monitoren

op je nas is ook een mogelijkheid. die staan ook 9 van de 10x 24/7 aan

Acties:
  • 0 Henk 'm!

  • hendrik99
  • Registratie: April 2009
  • Laatst online: 15-05-2021
omoerbeek schreef op zaterdag 18 april 2015 @ 12:23:
[...]


Een mogelijk probleem is dat in SPLIT + AGGRAGTE mode de verkeerde resultaten worden berekend als je ook nog parent relaties hebt staan in PVOutput.
op zich hoef ik geen parent te hebben. ik monitor alle inverters, om te zie wat en ze het doen. heb er nu 1 defect anders kom ik daar amper nog achter. het hele systeem (AGGRAGTE) zou wat mij betreft een extra meet optie zijnm zeg maar inverter nummer 12. het is voor mij vooral handig omdat ik ook de werkelijke teruglevering weet. kan ik in 1 oogopslag zien hoe efficiënt ik bezig ben.

Acties:
  • 0 Henk 'm!

Verwijderd

Verwijderd schreef op zaterdag 18 april 2015 @ 10:03:
[...]


Misschien dat daar wel iets niet klopt hoor. Dat vraag ik mij zelf ook af.
Ik heb nu xampp geinstalleerd en dan start ik hem vanaf command prompt.
Misschien dat ik wel totaal iets fout heb gedaan hoor.

Ik gebruik windows 7 hoe kan ik daar het beste PHP op installeren?
Probleem op gelost. Had in windhoos geen dll voor de socket in gebruik.

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
Nieuwe versie van mijn script

Changes:
  • Nu schaalbaar tot max 12 omvormers.
  • Bugfixes
Kon de code hier niet meer kwijt gezien de lengte. Dus maar een GitHub opgezet.
Naam moet ook gewijzigd worden. Gezien hij alleen samenwerkt met het script van
omoerbeek. Heeft het de naam e2site gekregen!

https://github.com/Dylotic/e2site

Mocht iemand mee willen editen aan het script op de GitHub graag! NLMaca??

[ Voor 28% gewijzigd door Dylotic op 18-04-2015 16:13 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
misschien even stukje offtopic. heeft er iemand ook ervaring met Effekta omvormers (heb namelijk nog een systeem om te zetten naar pvoutput of eigen panel namelijk van 40 zonnepanelen)

Acties:
  • 0 Henk 'm!

  • P_Tingen
  • Registratie: Maart 2005
  • Laatst online: 08:08

P_Tingen

omdat het KAN

Dylotic schreef op zaterdag 18 april 2015 @ 16:02:
Nieuwe versie van mijn script

Changes:
  • Nu schaalbaar tot max 12 omvormers.
  • Bugfixes
Kon de code hier niet meer kwijt gezien de lengte. Dus maar een GitHub opgezet.
Naam moet ook gewijzigd worden. Gezien hij alleen samenwerkt met het script van
omoerbeek. Heeft het de naam e2site gekregen!

https://github.com/Dylotic/e2site

Mocht iemand mee willen editen aan het script op de GitHub graag! NLMaca??
Kuch arrays hoest

... en gaat over tot de orde van de dag


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
Hehe ja weet het , ik met m'n knullige php. Maar ben query gedeelte aan het optimaliseren.
Is mijn eerste php scriptje :) Alle hulp is welkom!

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
np. ik heb je script gebruikt, maar idd ik heb t in een array gezet. jij zit rond de 925 regels. ik zit nu op 50 regels met dezelfde output. heb alleen een extra tabel gemaakt, waar ik mijn inverters in zet. zodoende kan ik een extra inverter toevoegen en wordt die automatisch opgepakt. ik heb ook nog een github account. moet weer even kijken hoe dat werkt. maar ben nog met jouw calculaties bezig om die ook in de array te zetten,
ook dat je zelf kan instellen hoeveel kolommen je max wil tonen (ga ik later wel responsive maken met css).

ik zal wel een demo omgeving neer gaan zetten met wat data erin, maar moet ff zeker weten dat mn queries goed zijn. dan kan ik daarna aan omoerbeek vragen of ik in de goeie richting zit ;).

we leren er allemaal van. ik wist/weet niks van zonnepanelen.

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
NLMaca schreef op zaterdag 18 april 2015 @ 17:09:
np. ik heb je script gebruikt, maar idd ik heb t in een array gezet. jij zit rond de 925 regels. ik zit nu op 50 regels met dezelfde output. heb alleen een extra tabel gemaakt, waar ik mijn inverters in zet. zodoende kan ik een extra inverter toevoegen en wordt die automatisch opgepakt. ik heb ook nog een github account. moet weer even kijken hoe dat werkt. maar ben nog met jouw calculaties bezig om die ook in de array te zetten,
ook dat je zelf kan instellen hoeveel kolommen je max wil tonen (ga ik later wel responsive maken met css).

ik zal wel een demo omgeving neer gaan zetten met wat data erin, maar moet ff zeker weten dat mn queries goed zijn. dan kan ik daarna aan omoerbeek vragen of ik in de goeie richting zit ;).

we leren er allemaal van. ik wist/weet niks van zonnepanelen.
Was hier ook bezig met alles in arrays te zetten. Wil echter nog niet lekker lukken. Ik wacht wel tot
je klaar bent. Anders zijn we dubbel bezig en ik moet het wiel uitvinden!

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
dubbel maakt op zich niet uit. je leert er ook een hoop van ;). google en errorlogs geven je vaak genoeg info. ik zal vanavond wel even wat posten. zit t t ook een beetje op te leuken en wil voor mezelf even een beetje een structuur gaan bepalen.

Acties:
  • 0 Henk 'm!

  • P_Tingen
  • Registratie: Maart 2005
  • Laatst online: 08:08

P_Tingen

omdat het KAN

Dat was ook de reden dat ik zelf aan de gang ben gegaan met het perl script van Duinsel. Leuk en leerzaam. Mijn perl kennis is weer wat opgevijzeld. Het php-script van omoerbeek gebruikt overigens ook arrays, dus je kan daar ook spieken. Ik pruts altijd eerst met hele kleine programmaatjes om te testen of iets werkt. Zo ga je steeds een stapje verder.

... en gaat over tot de orde van de dag


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
P_Tingen schreef op zaterdag 18 april 2015 @ 17:30:
Dat was ook de reden dat ik zelf aan de gang ben gegaan met het perl script van Duinsel. Leuk en leerzaam. Mijn perl kennis is weer wat opgevijzeld. Het php-script van omoerbeek gebruikt overigens ook arrays, dus je kan daar ook spieken. Ik pruts altijd eerst met hele kleine programmaatjes om te testen of iets werkt. Zo ga je steeds een stapje verder.
same here. eerst los testen, als t functioneel maar werkt, vervolgens samen voegen en als ik zin heb begin ik gelijk aan de stylesheet en images toevoegen. en goed testen of je queries wel echt kloppen, zoals omoerbeek ook al aan gaf.

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
hendrik99 schreef op zaterdag 18 april 2015 @ 13:36:
[...]


op zich hoef ik geen parent te hebben. ik monitor alle inverters, om te zie wat en ze het doen. heb er nu 1 defect anders kom ik daar amper nog achter. het hele systeem (AGGRAGTE) zou wat mij betreft een extra meet optie zijnm zeg maar inverter nummer 12. het is voor mij vooral handig omdat ik ook de werkelijke teruglevering weet. kan ik in 1 oogopslag zien hoe efficiënt ik bezig ben.
Eigenlijk is het wel handig. Individuele inverters en aggregeren. Dan heb de de parent feature niet nodig. Alleen gaat de sommering dus dubbelop als je die ook zou hebben aanstaan. Maar ik denk dat de voordelen opwegen tegen dat kleine nadeel.

Ga verder met sleutelen, de motorkap staat nog open ;-)

Wat eraan komt:

- combi aggregate & split dus
- mogelijkheid om inverters (van de buren) te negeren
- meerdere accounts (apikeys) met map inverter -> apikey

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
omoerbeek schreef op vrijdag 17 april 2015 @ 14:50:
SELECT e1.* FROM enecsys e1 
LEFT JOIN enecsys e2
ON e1.id = e2.id AND e1.ts < e2.ts WHERE e2.id IS NULL


Dat is de query dus. Omdat er een index staat op (id,ts) zou dit een vrij goedkope query moeten zijn.
als ik deze aftrap trekt ten eerste mysql server op de rpi vol naar de 100%. en vervolgens gebeurt er niets meer.

ik heb nog niet de juiste query hiervoor eigenlijk.

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
NLMaca: gebruik je Engine InnoDB of MyISAM? Show CREATE TABLE enecsys laat dat zien.

[ Voor 5% gewijzigd door omoerbeek op 18-04-2015 20:04 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
InnoDB

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Omdat de inverters om de beurt rapporteren zou je misschien ook iets kunnen doen als:
SELECT * FROM enecsys ORDER BY ts DESC LIMIT 11;

(als je 10 inverters hebt en dus 1 geaggregeerde waarde daarbij)

Nee dus, daar zit een denkfout in. De geaggregeerde waardes worden minder vaak gedaan.

SELECT * FROM enecsys WHERE id != 0 ORDER BY ts DESC LIMIT 10;
SELECT * FROM enecsys WHERE id = 0 ORDER BY ts DESC LIMIT 1;


De eerste query levert de laatste waardes per inverter en de tweede query de laatste geaggregeerde waarde.

(Allemaal ongewenst en dus theoretisch)

[ Voor 48% gewijzigd door omoerbeek op 18-04-2015 20:13 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
daar zat ik ook al naar te kijken. echter als je een inverter hebt die bijv 2 heeft gepulsed, krijg je dus ook hier meerdere keren dezelfde inverters terug.

ik kom er nog niet echt uit wat het beste werkt hier. ik had al een andere tabel gemaakt voor de inverters en obv daarvan een laatste datum tonen, maar ook dat loopt niet echt.

select * from enecsys where id = 110085872 order by ts desc limit 0,1 werkt wel. echter heb je het dan per 1 inverter, ik wil het gelijk in een array kunnen stoppen voor alles. daar zit eigenlijk het probleem denk ik

group by en order by kunnen niet altijd met elkaar overweg ;)

[ Voor 5% gewijzigd door NLMaca op 18-04-2015 20:10 ]


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Je hebt gelijk, zeker bij schemer willen inverteren nogal eens vaker rapporteren....
Wat je kan doen:

foreach ($inverters as $i)
SELECT * FROM enecsys WHERE id = $i ORDER BY ts DESC LIMIT 1


Query per inverter, maar wel een hele goedkope

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Ik zie dat we bijna dezelfde gedachte hadden. Ik denk dat je er maar bij moet neerleggen dat je moet loopen over de inverters.

De rpi is wat magertjes misschien voor MySQL.... ikzelf ken het alleen op grote machines...

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
mmm. erbij neerleggen. dat woord ken ik niet echt haha. ik ga eerst de foreach even uitproberen. is misschien wel de beste oplossing in dit geval. eens zien wat dat voor resultaat geeft. thx voor de hint.

klopt. de rpi is niet de sterkste erin, maar dan zie je gelijk wat sommige queries voor impact hebben op een low budget omgeving. ;).

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
Probeer hier met een array met id's een foreach query naar een multidimensional array te zetten.
Dan zou ik vervolgens de berekeningen met die array kunnen doen en daar vanuit presenteren

Tot nu toe alleen maar hoofdpijn. :(

[ Voor 25% gewijzigd door Dylotic op 18-04-2015 21:54 ]


Acties:
  • 0 Henk 'm!

  • pielle007
  • Registratie: April 2008
  • Laatst online: 06:45
NLMaca schreef op zaterdag 18 april 2015 @ 11:37:
[...]

deze staat inmiddels al even op pagina 1. als je vragen hebt, stel ze gerust.
Thanx, heb vanavond een nieuwe pi opgehaald. De image is gedownload en geinstalleerd op sd kaartje.
vanaf hier zit ik inmiddels al 3 uur vast, ik krijg het niet voor mekaar om met putty een vast ip adres toe te kennen aan de pi, wat doe ik fout? ik volg deze tutorial echter elke x na het opnieuw opstarten is die pi niet meer terug te vinden in het netwerk en kan ik wederom het kaartje formatteren en de image opnieuw schrijven op t kaartje. 8)7
(hij komt ook niet meer voor in het modem, via het modem kan ik geen vaste ip toekennen daar ziggo deze functie niet heeft ingeschakeld)

[ Voor 8% gewijzigd door pielle007 op 18-04-2015 23:10 ]


Acties:
  • 0 Henk 'm!

  • jandoedel99
  • Registratie: April 2015
  • Laatst online: 09-07 11:25
Dylotic schreef op zaterdag 18 april 2015 @ 12:33:
[...]


Je zult een webserver met php en sql moeten draaien op de raspberry. Vervolgens kun je mijn script
op de webserver zetten om vervolgens hier naartoe te kunnen browsen.

Hier wat meer info voor LAMP op een Pi: http://www.penguintutor.com/linux/raspberrypi-webserver

php zal wel al geïnstalleerd zijn , aangezien je schrijft dat het script van omoerbeek loopt.
Script wil niet draaien op mijn raspberry. Ik doe natuurlijk iets fout maar wat?
Rasp is ingericht met een niet standaard poort, dus ik probeer het script aan te roepen met deze poort vermelding. Het script heb ik in de dir gezet van het script die het wel doet.
Morgen verder met proberen.

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
omoerbeek schreef op zaterdag 18 april 2015 @ 20:15:
Je hebt gelijk, zeker bij schemer willen inverteren nogal eens vaker rapporteren....
Wat je kan doen:

foreach ($inverters as $i)
SELECT * FROM enecsys WHERE id = $i ORDER BY ts DESC LIMIT 1


Query per inverter, maar wel een hele goedkope
volgens mij heb ik m.
ik heb wel een tabel inverters die ik gebruik om zo de loop door te lopen. zou je dit eens kunnen checken of dit klopt? is een begin met 2 rows. inverter en update

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$conn = mysqli_connect($dbHost, $dbUserName, $dbUserPasswd, $dbName);
        if (!$conn) {
                die("Connection failed: " . mysqli_connect_error());
        }


$output= mysqli_query($conn,"SELECT inverter_serial FROM inverters");
     while($row=mysqli_fetch_array($output)){
        
        $inverter = $row['inverter_serial']; 
        
        foreach ($conn->query("SELECT * FROM enecsys WHERE id = $inverter ORDER BY ts DESC LIMIT 1") as $row) {
            echo "Inverter: " . $row['id'] . " | Last update: " . $row['ts'] . "<br>";
        }
    }

mysqli_close($conn);


result:
code:
1
2
3
4
5
6
7
8
9
10
Inverter: 110064950 | Last update: 2015-04-18 20:32:38
Inverter: 110075874 | Last update: 2015-04-18 20:39:55
Inverter: 110085734 | Last update: 2015-04-18 20:40:54
Inverter: 110085482 | Last update: 2015-04-18 20:40:12
Inverter: 110085861 | Last update: 2015-04-18 20:40:39
Inverter: 110085872 | Last update: 2015-04-18 20:39:45
Inverter: 110085417 | Last update: 2015-04-18 20:41:09
Inverter: 110085412 | Last update: 2015-04-18 20:41:35
Inverter: 110085796 | Last update: 2015-04-18 20:40:54
Inverter: 110085462 | Last update: 2015-04-18 20:41:02


nadeel. tis donker nu

[ Voor 21% gewijzigd door NLMaca op 18-04-2015 23:13 ]


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
NLMaca schreef op zaterdag 18 april 2015 @ 23:12:
[...]


volgens mij heb ik m.
ik heb wel een tabel inverters die ik gebruik om zo de loop door te lopen. zou je dit eens kunnen checken of dit klopt? is een begin met 2 rows. inverter en update

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$conn = mysqli_connect($dbHost, $dbUserName, $dbUserPasswd, $dbName);
        if (!$conn) {
                die("Connection failed: " . mysqli_connect_error());
        }


$output= mysqli_query($conn,"SELECT inverter_serial FROM inverters");
     while($row=mysqli_fetch_array($output)){
        
        $inverter = $row['inverter_serial']; 
        
        foreach ($conn->query("SELECT * FROM enecsys WHERE id = $inverter ORDER BY ts DESC LIMIT 1") as $row) {
            echo "Inverter: " . $row['id'] . " | Last update: " . $row['ts'] . "<br>";
        }
    }

mysqli_close($conn);


result:
code:
1
2
3
4
5
6
7
8
9
10
Inverter: 110064950 | Last update: 2015-04-18 20:32:38
Inverter: 110075874 | Last update: 2015-04-18 20:39:55
Inverter: 110085734 | Last update: 2015-04-18 20:40:54
Inverter: 110085482 | Last update: 2015-04-18 20:40:12
Inverter: 110085861 | Last update: 2015-04-18 20:40:39
Inverter: 110085872 | Last update: 2015-04-18 20:39:45
Inverter: 110085417 | Last update: 2015-04-18 20:41:09
Inverter: 110085412 | Last update: 2015-04-18 20:41:35
Inverter: 110085796 | Last update: 2015-04-18 20:40:54
Inverter: 110085462 | Last update: 2015-04-18 20:41:02


nadeel. tis donker nu
Nice work die ga ik ook eens proberen..

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
pielle007 schreef op zaterdag 18 april 2015 @ 23:08:
[...]


Thanx, heb vanavond een nieuwe pi opgehaald. De image is gedownload en geinstalleerd op sd kaartje.
vanaf hier zit ik inmiddels al 3 uur vast, ik krijg het niet voor mekaar om met putty een vast ip adres toe te kennen aan de pi, wat doe ik fout? ik volg deze tutorial echter elke x na het opnieuw opstarten is die pi niet meer terug te vinden in het netwerk en kan ik wederom het kaartje formatteren en de image opnieuw schrijven op t kaartje. 8)7
(hij komt ook niet meer voor in het modem, via het modem kan ik geen vaste ip toekennen daar ziggo deze functie niet heeft ingeschakeld)
om een rpi een statis ip te geven dien je de file aan te passen. het ip wat ie eerst kreeg als je m in het netwerk hing kun je gebruiken voor je statische adres.

code:
1
vi /etc/network/interfaces


pas daar de interface aan van de eth0
als voorbeeld naar:
code:
1
2
3
4
5
6
7
auto lo

iface lo inet loopback
iface eth0 inet static
address 10.0.0.5
netmask 255.255.255.0
gateway 10.0.0.1


waarbij:
address je ipadres voor de rpi is
netmask (is voor de thuisgebruiker meestal 255.255.255.0)
gateway het adres van je router

vervolgens sla je de file op en restart je de rpi
dan zou je hem op het vaste ip moeten kunnen vinden

update: eventueel zou je het toekennen van een vast ipadres ook eerst over kunnen slaan. als je rpi aan blijft staan, behoudt ie tenslotte het ipadres. dan kun je nu eerst verder met testen en kun je als het werkt alles vast gaan zetten.

stel je vragen gerust. we leren hier allemaal

[ Voor 9% gewijzigd door NLMaca op 18-04-2015 23:24 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
Dylotic schreef op zaterdag 18 april 2015 @ 23:16:
[...]


Nice work die ga ik ook eens proberen..
ter info. je hebt wel een tabel inverters hiervoor nodig.
even als voorbeeld (ik ga m later nog anders indelen en splitsen naar andere configuratie tabellen.

code:
1
2
3
4
5
6
7
8
9
10
CREATE TABLE IF NOT EXISTS `inverters` (
  `data_id` int(11) NOT NULL AUTO_INCREMENT,
  `inverter_serial` varchar(30) NOT NULL,
  `inverter_type` varchar(30) NOT NULL,
  `duo_single` varchar(30) NOT NULL,
  `parts_nr` varchar(30) NOT NULL,
  `build_date` datetime NOT NULL,
  `panel_1` int(11) DEFAULT NULL,
  `panel_2` int(11) DEFAULT NULL,
  PRIMARY KEY (`data_id`)


panel_1 en panel_2 is waar de inverters op aangesloten zitten. deze gebruik ik later voor mapping ;)

eventueel kun je deze voor jezelf wijzigen
pas onderstaande voor jezelf aan. heb je er minder dan haal je de rest weg

code:
1
2
3
4
5
6
7
8
9
10
11
INSERT INTO `inverters` (`data_id`, `inverter_serial`, `inverter_type`, `duo_single`, `parts_nr`, `build_date`, `panel_1`, `panel_2`) VALUES
(1, '110064950', 'SMI-240-60', 'single', '1-B1-CA-AA-1', '2012-09-12 00:00:00', 17, NULL),
(2, '110075874', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 1, 2),
(3, '110085734', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 3, 4),
(4, '110085482', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 5, 6),
(5, '110085861', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 7, 8),
(6, '110085872', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 9, 10),
(7, '110085417', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 11, 12),
(8, '110085412', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 13, 15),
(9, '110085796', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 14, 16),
(10, '110085462', 'SMI-480-60', 'duo', '1-B1-CA-AA-1', '2013-04-13 00:00:00', 18, 19);


ik ben benieuwd of de query werkt, morgen maar eens flink testen. kga nu ff verder met de layout. heb t even gehad met querien :D

edit: als ik deze query naast mn oude draai, dan geeft deze de goede resultaten weer (10 inverters). de oude query geeft wel 10 inverters maar 3x dezelfde.

[ Voor 6% gewijzigd door NLMaca op 18-04-2015 23:37 ]


Acties:
  • 0 Henk 'm!

  • pielle007
  • Registratie: April 2008
  • Laatst online: 06:45
NLMaca schreef op zaterdag 18 april 2015 @ 23:17:
[...]


om een rpi een statis ip te geven dien je de file aan te passen. het ip wat ie eerst kreeg als je m in het netwerk hing kun je gebruiken voor je statische adres.

code:
1
vi /etc/network/interfaces


pas daar de interface aan van de eth0
als voorbeeld naar:
code:
1
2
3
4
5
6
7
auto lo

iface lo inet loopback
iface eth0 inet static
address 10.0.0.5
netmask 255.255.255.0
gateway 10.0.0.1


waarbij:
address je ipadres voor de rpi is
netmask (is voor de thuisgebruiker meestal 255.255.255.0)
gateway het adres van je router

vervolgens sla je de file op en restart je de rpi
dan zou je hem op het vaste ip moeten kunnen vinden

update: eventueel zou je het toekennen van een vast ipadres ook eerst over kunnen slaan. als je rpi aan blijft staan, behoudt ie tenslotte het ipadres. dan kun je nu eerst verder met testen en kun je als het werkt alles vast gaan zetten.

stel je vragen gerust. we leren hier allemaal
als ik een code regel begin met vi en ik wil dhcp aanpassen naar static krijg ik meteen melding dat het een read only is. frustie

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
excuus. moet met sudo ;)

code:
1
sudo vi /etc/network/interfaces

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
NLMaca,

Hier geeft die query niets terug.

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
Dylotic schreef op zaterdag 18 april 2015 @ 23:16:
[...]


Nice work die ga ik ook eens proberen..
ik heb stukjes code van jou gebruikt in een array. output is gelijk, alleen wat korter en eigenlijk alleen afhankelijk van wat er in de inverter tabel aan inverters aanwezig is.
kun je deze eens naast die van jou draaien (hier geven ze dezelfde outputs),

tabel: inverters
tabel: enecsys

aantal kolommen is in te stellen dat weergegeven wordt. bij 5 maakt ie automatisch een nieuwe rij.
zie #57
(ga ik later nog responsive maken)

en nu dus ook alles via een foreach opgehaald.
ik zal het morgen wel in github gaan plaatsen

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?php
/*
 * Copyright (c) 2015 Jeroen van Marion <jeroen@vanmarion.nl>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */
?>
<html>
    <head>
        <meta http-equiv="Content-Language" content="nl">
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
        <title>DeWilg Zonnepanelen</title>
        <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
        <link rel="icon" href="favicon.ico" type="image/x-icon">
    </head>
<body>
<?
require_once 'inc/conf.php';
/*
voorbeeld /inc/conf.php

//$dbHost = "localhost";
//$dbUserName = "db_username";
//$dbUserPasswd = "db_password";
//$dbName = "db_name";

$System_Name = "DeWilg";

*/

header("Refresh:10"); // ververst de page elke 10 seconden
echo "System name: " . $System_Name; // can gedefineerd worden in de conf.php
$conn = mysqli_connect($dbHost, $dbUserName, $dbUserPasswd, $dbName);
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }

echo "<table border='0'><tr>";

//zet values op 0 om waarde opnieuw te berekenen in de loop
$sumPower= 0; 
$sumVDC = 0;    
$sumAmps = 0; 
$sumKwh = 0;


$Nr_Colums = 5;

define('COLS', $Nr_Colums); // max number of colums can be set in conf.php $Nr_Colums = 5;
$col = 0; // number of the last column filled
        
$output= mysqli_query($conn,"SELECT inverter_serial FROM inverters");
     while($row=mysqli_fetch_array($output)){
        
        // eerst alle serienummers ophalen van de inverters
        $inverter = $row['inverter_serial']; 
        
        
        //dan met een foreach per inverter de results ophalen.
        foreach ($conn->query("SELECT * FROM enecsys WHERE id = $inverter ORDER BY ts DESC LIMIT 1") as $row) {
            //echo "Inverter: " . $row['id'] . " | Last update: " . $row['ts'] . "<br>";
            
            $col++;
            //show total inverters (results) from table inverters
            $row_cnt = $output->num_rows;
        
            /* fout afhandeling todo indien geen inverters gevonden */
        
            //calculate DCVolt for every inverter.
            $dcvolt = $row['dcpower'] / $row['dccurrent'];
            
            /* SUM calculate for result for all inverters*/
            // calculate sum dc power (total)
            $sump_value = $row['dcpower'];
            $sumPower += $sump_value;  // echo $sumPower; voor total result per inverter from result
            
            $sumv_value = $row['dcpower'] / $row['dccurrent'];
            $sumVDC += $sumv_value;  // echo $sumVDC; voor total result per inverter from result

            //calculate sum dccurrent (total)
            $suma_value = $row['dccurrent'];
            $sumAmps += $suma_value;  // total Amps
            
            //calculate sum kWh (total)
            $sumk_value = $row['wh'] / 1000;
            $sumKwh += $sumk_value;  // echo $sumKwh; 
            
            /*Total SUM Calculation */
            //
            echo"<td bgcolor='#cccccc'><table>";
            echo "<tr><td>Inverter:</td><td>" .  $row['id']  . "</td></tr>" ;
            echo "<tr><td>Update:</td><td>" .  $row['ts']  . "</td></tr>" ;
            echo "<tr><td>DCPower:</td><td>" .  $row['dcpower']  . "</td></tr>" ;
            echo "<tr><td>DCCurrent:</td><td>" .  $row['dccurrent']  . "</td></tr>" ;
            echo "<tr><td>ACFreq:</td><td>" .  $row['acfreq']  . "</td></tr>" ;
            echo "<tr><td>DCVolt:</td><td>" .  number_format($dcvolt,2,',','.')  . "</td></tr>" ;
            echo "<tr><td>ACVolt:</td><td>" .  $row['acvolt']  . "</td></tr>" ;
            echo "<tr><td>Temp:</td><td>" .  $row['temp']  . "</td></tr>" ;
            echo "<tr><td>Efficiency:</td><td>" .  $row['efficiency']  . "</td></tr>" ;
            echo "<tr><td>State:</td><td>" .  $row['state']  . "</td></tr>" ;
            echo "<tr><td>Kwh:</td><td>" .  $row['wh'] / 1000 . "</td></tr>" ;
            echo "</table>";
            $col ;
            echo "</td><td width='10px'</td>";
            
            if ($col == COLS) {
                $col = 0; 
                echo "</tr><tr><td height='10px'></td></tr><tr>"; // start a new one
            }
        }
    }


echo "</tr></table>";
echo  "Totaal aantal inverters: " . $row_cnt . " | Total Power: " . $sumPower . " Watt / " . " | Total VDC: " .  number_format($sumVDC,2,',','.')  . " | Total Amps: "  . $sumAmps . " | Total Kwh: " . $sumKwh ;
echo "<br><br>PVOutput Enecsys Team page: <a href='http://www.pvoutput.org/ladder.jsp?tid=1018' target='_blank'>Enecsys by Tweakers</a>";
mysqli_close($conn);
?>
</body>
</html>

resultaat:
Afbeeldingslocatie: http://vanmarion.nl/projects/enecsys/tw_result_enecsys.jpg

Acties:
  • 0 Henk 'm!

  • P_Tingen
  • Registratie: Maart 2005
  • Laatst online: 08:08

P_Tingen

omdat het KAN

Kun je niet een aparte tabel maken met laatste output per inverter, zoals ik eerder voorstelde en die met een database trigger vullen? Elke keer wanneer in de enecsys tabel een record wordt gemaakt, pas je de laatste stand van die inverter aan. Dan lost de db engine het voor je op.

... en gaat over tot de orde van de dag


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
zou best kunnen denk ik. alleen heb ik dan dezelfde data op 2 plaatsen staan. het querien maakt het wel makkelijker, dat weer wel.

maar voor een live status zou het goed zijn, om historie te gaan berekenen kom je dan toch weer op de hoofd tabel terecht. maar goed. kan het verkeerd zien hoor.

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
http://cbm64.nl/pv/test.php

geen resultaat of error?!

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
heb je de invertabel wel gemaakt en gevuld?

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
NLMaca schreef op zondag 19 april 2015 @ 00:16:
heb je de invertabel wel gemaakt en gevuld?
Yep, alles van jouw overgenomen behalve inverter_id van mezelf.. snap het ff niet

Word de datum nog ergens gechecked? Gezien mijn nieuwste data van 17/5 is?
Maybe gebruikt je iets wat niet aanstaat op mijn server..

[ Voor 22% gewijzigd door Dylotic op 19-04-2015 00:30 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
wat zegt je apache log?

[code]
sudo tail -f /var/log/apache2/error.log
[/code

oh. heb nog een favicon erbij zitten :D
deze regels weggooien:
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">

moet nog error logging inbouwen. ik ga er altijd eerst van uit dat t werkt haha

datum van 17 mei?

[ Voor 14% gewijzigd door NLMaca op 19-04-2015 01:36 ]


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
NLMaca schreef op zondag 19 april 2015 @ 01:33:
wat zegt je apache log?

[code]
sudo tail -f /var/log/apache2/error.log
[/code

oh. heb nog een favicon erbij zitten :D
deze regels weggooien:
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">

moet nog error logging inbouwen. ik ga er altijd eerst van uit dat t werkt haha

datum van 17 mei?
Ja ga de log checken..

1ste query loopt goed zo te zien: http://cbm64.nl/pv/test.php

foreach resulteerde in niets lijkt het..

edit: apache geeft geen errors, het is duidelijk die lijn foreach. zou ook mijn php 5.2.4 kunnen zijn.

[ Voor 9% gewijzigd door Dylotic op 19-04-2015 02:48 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
ok. eens kijken wat ik kan inbouwen. moment

edit: morgen maar weer verder.

[ Voor 28% gewijzigd door NLMaca op 19-04-2015 02:44 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
Dylotic schreef op zondag 19 april 2015 @ 01:39:
[...]


Ja ga de log checken..

1ste query loopt goed zo te zien: http://cbm64.nl/pv/test.php

foreach resulteerde in niets lijkt het..

edit: apache geeft geen errors, het is duidelijk die lijn foreach. zou ook mijn php 5.2.4 kunnen zijn.
ik heb de foreach eruit gehaald en vervangen door een while. ik krijg dezelfde output, maar iets in die foreach zit niet lekker idd.

ben benieuwd wat dit voor je doet:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?php
/*
 * Copyright (c) 2015 Jeroen van Marion <jeroen@vanmarion.nl>
 *
 * Permission to use, copy, modify, and distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */
?>
<html>
    <head>
        <meta http-equiv="Content-Language" content="nl">
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
        <title>Dylotic Zonnepanelen</title>
        <link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
        <link rel="icon" href="favicon.ico" type="image/x-icon">
    </head>
<body>
<?
require_once 'inc/conf.php';
/*
voorbeeld /inc/conf.php

//$dbHost = "localhost";
//$dbUserName = "db_username";
//$dbUserPasswd = "db_password";
//$dbName = "db_name";


*/
$System_Name = "Dylotic";

header("Refresh:10"); // ververst de page elke 10 seconden
echo "System name: " . $System_Name; // can gedefineerd worden in de conf.php
$conn = mysqli_connect($dbHost, $dbUserName, $dbUserPasswd, $dbName);
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }
echo "<table border='0'><tr>";

//zet values op 0 om waarde opnieuw te berekenen in de loop
$sumPower= 0; 
$sumVDC = 0;    
$sumAmps = 0; 
$sumKwh = 0;

$Nr_Colums = 5;

define('COLS', $Nr_Colums); // max number of colums can be set in conf.php $Nr_Colums = 5;
$col = 0; // number of the last column filled
        
$output= mysqli_query($conn,"SELECT inverter_serial FROM inverters");
     while($row=mysqli_fetch_array($output)){
        
        // eerst alle serienummers ophalen van de inverters
        $inverter = $row['inverter_serial']; 
        
        //dan met een foreach per inverter de results ophalen.
        
        
        $input = mysqli_query($conn,"SELECT * FROM enecsys WHERE id = $inverter ORDER BY ts DESC LIMIT 1");
        while ($row = mysqli_fetch_array($input)) {
        //echo "id: " . $row['id'] . " ts: " . $row['ts'] ;
        
                    
            $col++;
            //show total inverters (results) from table inverters
            $row_cnt = $output->num_rows;
        
            /* fout afhandeling todo indien geen inverters gevonden */
        
            //calculate DCVolt for every inverter.
            $dcvolt = $row['dcpower'] / $row['dccurrent'];
            
            /* SUM calculate for result for all inverters*/
            // calculate sum dc power (total)
            $sump_value = $row['dcpower'];
            $sumPower += $sump_value;  // echo $sumPower; voor total result per inverter from result
            
            $sumv_value = $row['dcpower'] / $row['dccurrent'];
            $sumVDC += $sumv_value;  // echo $sumVDC; voor total result per inverter from result

            //calculate sum dccurrent (total)
            $suma_value = $row['dccurrent'];
            $sumAmps += $suma_value;  // total Amps
            
            //calculate sum kWh (total)
            $sumk_value = $row['wh'] / 1000;
            $sumKwh += $sumk_value;  // echo $sumKwh; 
            
            /*Total SUM Calculation */
            //
            echo"<td bgcolor='#cccccc'><table>";
            echo "<tr><td>Inverter:</td><td>" .  $row['id']  . "</td></tr>" ;
            echo "<tr><td>Update:</td><td>" .  $row['ts']  . "</td></tr>" ;
            echo "<tr><td>DCPower:</td><td>" .  $row['dcpower']  . "</td></tr>" ;
            echo "<tr><td>DCCurrent:</td><td>" .  $row['dccurrent']  . "</td></tr>" ;
            echo "<tr><td>ACFreq:</td><td>" .  $row['acfreq']  . "</td></tr>" ;
            echo "<tr><td>DCVolt:</td><td>" .  number_format($dcvolt,2,',','.')  . "</td></tr>" ;
            echo "<tr><td>ACVolt:</td><td>" .  $row['acvolt']  . "</td></tr>" ;
            echo "<tr><td>Temp:</td><td>" .  $row['temp']  . "</td></tr>" ;
            echo "<tr><td>Efficiency:</td><td>" .  $row['efficiency']  . "</td></tr>" ;
            echo "<tr><td>State:</td><td>" .  $row['state']  . "</td></tr>" ;
            echo "<tr><td>Kwh:</td><td>" .  $row['wh'] / 1000 . "</td></tr>" ;
            echo "</table>";
            
            $col ;
            echo "</td><td width='10px'</td>";
            
            if ($col == COLS) {
                $col = 0; 
                echo "</tr><tr><td height='10px'></td></tr><tr>"; // start a new one
            }
        }
    }


echo "</tr></table>";
echo  "Totaal aantal inverters: " . $row_cnt . " | Total Power: " . $sumPower . " Watt / " . " | Total VDC: " .  number_format($sumVDC,2,',','.')  . " | Total Amps: "  . $sumAmps . " | Total Kwh: " . $sumKwh ;
echo "<br><br>PVOutput Enecsys Team page: <a href='http://www.pvoutput.org/ladder.jsp?tid=1018' target='_blank'>Enecsys by Tweakers</a>";
mysqli_close($conn);
?>
</body>
</html>

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
Deze werkt! :z :z

[ Voor 26% gewijzigd door Dylotic op 19-04-2015 03:04 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
@Dylotic ik denk dat ik je op het verkeerde been heb gezet met mijn foreach, dat was meer een "conceptuele" foreach... mysql vereist een fetch_whatever call.... Sorry voor de verwarring.

[ Voor 3% gewijzigd door omoerbeek op 19-04-2015 08:18 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

Verwijderd

Beste Omoerbeek en andere tweakers. Ik heb dit topic met veel belangstelling gevolgd. Ikzelf en een goede vriend van mij hebben beide een enecsys zonnepanelen systeem. Ik ben de afgelopen dagen bezig geweest met het opzetten van de monitor voor de vriend aangezien hij een NAS heeft.

Allereerst bedanken wij jou/jullie voor het werk tot nu toe!!

Opstelling is 14 panelen en 8 omvormers (6x2 en 2x1).

Het script werkte perfect totdat we het script hebben omgezet naar SPLIT. In pvouput hebben we nu 9 systemen waarvan 1 systeem wordt gevoed als parent van de 8 omvormers. De parent komt ook niet terug in het script enkel de 8 voor de omvormers.

Probleem is nu dat: Het script start, 8 omvormers herkent en ook direct update bij pvoutput. Hierna zie je telkens de omvormers terugrapporteren naar het script maar vindt geen automatische update meer plaats naar pvouput. Wat wel hoogst verwarrend was, is dat in 2 uur tijd, het script het voor elkaar gekregen heeft om toch nog één keer een update naar pvouput door te sturen echter om een oncontroleerbare tijd (na 36 min) en slechts voor één omvormer. Hierna weer stil naar pvoutput.

Komt dit bekend voor? Hebben jullie enig idee waar het mis gaat?

Alvast bedankt voor het meedenken.

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
omoerbeek schreef op zondag 19 april 2015 @ 08:05:
@Dylotic ik denk dat ik je op het verkeerde been heb gezet met mijn foreach, dat was meer een "conceptuele" foreach... mysql vereist een fetch_whatever call.... Sorry voor de verwarring.
Np :)

Ik ga verder op NLMaca's script. Is vele efficiënter dan het mijne. Ik raad iedereen aan dit te doen!

Acties:
  • 0 Henk 'm!

  • pielle007
  • Registratie: April 2008
  • Laatst online: 06:45
Dylotic schreef op zondag 19 april 2015 @ 10:18:
[...]


Np :)

Ik ga verder op NLMaca's script. Is vele efficiënter dan het mijne. Ik raad iedereen aan dit te doen!
Maca heeft mij ook zeer goed geholpen... super. Dit is voor een leek zoals mij echt niet alleen te doen.
had nog een aanvullende vraag, waar kan ik nu de data nazien per omvormer?
(naar pv outpout logt ie nu gebundeld http://www.pvoutput.org/intraday.jsp?id=40234&sid=36776 )

Acties:
  • 0 Henk 'm!

  • 19roland70
  • Registratie: Augustus 2013
  • Laatst online: 08-09 20:34
Waar kan ik de database ergens vinden ?

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
19roland70 schreef op zondag 19 april 2015 @ 10:36:
Waar kan ik de database ergens vinden ?
Voor? Welke script?

Alle databases kun je zelf genereren. SQL data is gepost ergens in dit draadje

Acties:
  • 0 Henk 'm!

  • 19roland70
  • Registratie: Augustus 2013
  • Laatst online: 08-09 20:34
Ik ben eigenlijk de SQL db aan het zoeken die gegenereerd word door e2pv.

[ Voor 25% gewijzigd door 19roland70 op 19-04-2015 10:44 ]


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
19roland70 schreef op zondag 19 april 2015 @ 10:44:
Ik ben eigenlijk de SQL db aan het zoeken die gegenereerd word door e2pv.
Die moet je eerst zelf aanmaken en enablen in het script anders is hij er niet!
Script maakt zelf (nog)/geen db

Hier staat hij onder db Solar / table enecsys

[ Voor 5% gewijzigd door Dylotic op 19-04-2015 10:53 ]


Acties:
  • 0 Henk 'm!

  • 19roland70
  • Registratie: Augustus 2013
  • Laatst online: 08-09 20:34
code:
1
2
3
4
5
  define('MYSQLHOST', 'localhost');             Wat moet ik hier invullen?
 define('MYSQLUSER', 'root');
 define('MYSQLPASSWORD', 'xxxxx');
 define('MYSQLDB', 'enecsys');                   Moet hier eventueel het hele pad voor staan?
 define('MYSQLPORT', '3306');                    Dit is de standaard poort kan ik die zo laten?


Verder heb ik een tabel gemaakt

Afbeeldingslocatie: http://www.uploadarchief.net/files/download/mysql%20database.jpg

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
19roland70 schreef op zondag 19 april 2015 @ 11:19:
code:
1
2
3
4
5
  define('MYSQLHOST', 'localhost');             Wat moet ik hier invullen?
 define('MYSQLUSER', 'root');
 define('MYSQLPASSWORD', 'xxxxx');
 define('MYSQLDB', 'enecsys');                   Moet hier eventueel het hele pad voor staan?
 define('MYSQLPORT', '3306');                    Dit is de standaard poort kan ik die zo laten?


Verder heb ik een tabel gemaakt

[afbeelding]
localhost kun je evt laten staan. werkt dit niet> ip van je rasp/server
poort kan zo blijven.

Heet zowel de db als de table enecsys ? je moet alleen db invullen!

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Verwijderd schreef op zondag 19 april 2015 @ 08:26:
Beste Omoerbeek en andere tweakers. Ik heb dit topic met veel belangstelling gevolgd. Ikzelf en een goede vriend van mij hebben beide een enecsys zonnepanelen systeem. Ik ben de afgelopen dagen bezig geweest met het opzetten van de monitor voor de vriend aangezien hij een NAS heeft.

Allereerst bedanken wij jou/jullie voor het werk tot nu toe!!

Opstelling is 14 panelen en 8 omvormers (6x2 en 2x1).

Het script werkte perfect totdat we het script hebben omgezet naar SPLIT. In pvouput hebben we nu 9 systemen waarvan 1 systeem wordt gevoed als parent van de 8 omvormers. De parent komt ook niet terug in het script enkel de 8 voor de omvormers.

Probleem is nu dat: Het script start, 8 omvormers herkent en ook direct update bij pvoutput. Hierna zie je telkens de omvormers terugrapporteren naar het script maar vindt geen automatische update meer plaats naar pvouput. Wat wel hoogst verwarrend was, is dat in 2 uur tijd, het script het voor elkaar gekregen heeft om toch nog één keer een update naar pvouput door te sturen echter om een oncontroleerbare tijd (na 36 min) en slechts voor één omvormer. Hierna weer stil naar pvoutput.

Komt dit bekend voor? Hebben jullie enig idee waar het mis gaat?

Alvast bedankt voor het meedenken.
Belangrijk is dat je de laatste versie van het script hebt. In SPLIT mode heeft een tijdje een bug in gezeten.

Er komt hier ook af en toe een ander probleem voor waarmee ik nog bezig ben het op te lossen. Het script stoppen en opstarten zou dit moeten verhelpen totdat ik de definitieve oplossing heb gemaakt.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • 19roland70
  • Registratie: Augustus 2013
  • Laatst online: 08-09 20:34
Dylotic schreef op zondag 19 april 2015 @ 11:27:
[...]


localhost kun je evt laten staan. werkt dit niet> ip van je rasp/server
poort kan zo blijven.

Heet zowel de db als de table enecsys ? je moet alleen db invullen!
db heet nu solar en de tabel enecsys.
code:
1
define('MYSQLDB', 'solar');


Waar word deze db nu neergezet ,ik zou deze het liefst in mijn aparte zonnepaneelmap willen hebben.

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
19roland70 schreef op zondag 19 april 2015 @ 11:53:
[...]

db heet nu solar en de tabel enecsys.
code:
1
define('MYSQLDB', 'solar');


Waar word deze db nu neergezet ,ik zou deze het liefst in mijn aparte zonnepaneelmap willen hebben.
Neergezet? De data gaat naar SQL die kun je daar inzien. Er komt nergens een fysieke bestand
als je dat bedoeld. Je kunt wel een backup nemen van SQL db.

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Dylotic schreef op zondag 19 april 2015 @ 11:56:
[...]


Neergezet? De data gaat naar SQL die kun je daar inzien. Er komt nergens een fysieke bestand
als je dat bedoeld. Je kunt wel een backup nemen van SQL db.
Er is natuurlijk uiteindelijk wel een bestand, maar dat is/zijn mysql datafiles, deze staan vaak in /var/lib/mysql of iets dergelijks, kan je verder niks mee.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
19roland70 schreef op zondag 19 april 2015 @ 11:53:
[...]

db heet nu solar en de tabel enecsys.
code:
1
define('MYSQLDB', 'solar');


Waar word deze db nu neergezet ,ik zou deze het liefst in mijn aparte zonnepaneelmap willen hebben.
je kan wel elke nacht of week een dump van je database daar neer zetten.
dan moet je een netwerkschijf mounten op je rasp en met een cronjob elke nacht de mysql dump naar je netwerkmap zetten.

maar idd aan de /var/lib/mysql/database/ files heb je weinig. dit zijn raw files en kun je zo niet uitlezen.

ik zie je op de commandline werken, phpmyadmin is de grafische schil hiervoor (ik ben te lui voor de commandline)

Acties:
  • 0 Henk 'm!

  • 19roland70
  • Registratie: Augustus 2013
  • Laatst online: 08-09 20:34
NLMaca schreef op zondag 19 april 2015 @ 13:03:
[...]


je kan wel elke nacht of week een dump van je database daar neer zetten.
dan moet je een netwerkschijf mounten op je rasp en met een cronjob elke nacht de mysql dump naar je netwerkmap zetten.

maar idd aan de /var/lib/mysql/database/ files heb je weinig. dit zijn raw files en kun je zo niet uitlezen.

ik zie je op de commandline werken, phpmyadmin is de grafische schil hiervoor (ik ben te lui voor de commandline)
De grafische werkomgeving heb ik nog niet uitgeprobeerd , dit is de eerste keer dat ik met mysql werk.
Van die grafische omgeving snap ik nog niet veel , ik ga mezelf erin verdiepen als ik wat meer tijd heb.

Heb even vlug phpmyadmin bekeken maar daar zie ik nergens de enecsys tabel.

Ik vraag me wel af hoe vlug die database groeit , anders heb je natuurlijk wel kans dat je sd kaartje snel vol is .

[ Voor 4% gewijzigd door 19roland70 op 19-04-2015 13:14 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
klopt. ik heb er een 64gb in zitten ;)
is ook nog een todo ding. of een historie tabel gaan maken en de huidige van omoerbeek eens in de zoveel tijd op schonen.dat is waarom de eerste setup naar pvoutput nu draait en wat ook omoerbeek zn bedoeling was in eerste instantie.

alles wat we nu zelf gaan doen is aan ons :D

Acties:
  • 0 Henk 'm!

  • 19roland70
  • Registratie: Augustus 2013
  • Laatst online: 08-09 20:34
Hoeveel kb word ongeveer bijgeschreven in een dag? anders misschien een extra hd mounten aan de RPi

Eigenlijk kan deze best worden overschreven , de data word immers toch al naar PVoutput geschreven.

[ Voor 100% gewijzigd door 19roland70 op 19-04-2015 13:42 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
nog niet naar gekeken. ik log meer dingen op de achtergrond namelijk. het script van omoerbeek wordt ook op file nivo gelogd. en die neemt dus ook disk ruimte in beslag.

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
edit: heb t maar even op github gezet. code aanpassingen wordt anders een rommel hier idd.
github link staat bij mijn signature.

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
NLMaca schreef op zondag 19 april 2015 @ 14:39:
edit: heb t maar even op github gezet. code aanpassingen wordt anders een rommel hier idd.
github link staat bij mijn signature.
Knap werk!

Zomaar een dingetje. Als refresh op zijn plaats laat staan werkt het niet. Hij moet boven de head tag
staan boven het html gedeelte. Krijg anders een error.
code:
1
2
header("Refresh:10");
Warning: Cannot modify header information - headers already sent by (output started at /raid/WWW/cbm64/pv/pv.php:26) in pv.php on line 28


Tevens als je deze gebruikt ipv de andere heb je een mooie punt ipv komma bij DCvolt:
code:
1
number_format($dcvolt,2).

[ Voor 25% gewijzigd door Dylotic op 19-04-2015 14:57 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
done. heb de sumDCVolt ook gelijk aangepast. thx

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Net gemocht een versie die *ook* geaggregeerde data verzend in SPLIT mode. Dat betekent wel dat je de parent relaties moet uitzetten als je die had!

Verder: mogelijkheid om bepaalde systemen te negeren, en je kan verschillende accounts gebruiken als je in SPLIT mode werkt.

Daarnaast gebruik ik een betere methode (een z.g. running average) om de gemiddelde power uit te rekenen.

Ik ga nu nog werken aan het probleem dat de communicatie soms stillegt.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
omoerbeek, nice work! ik ga hem weer pakken..

omoerbeek,
Ik zat zo eens naar mijn plugwise systeem te kijken en wat voor power dat gegenereerde op de AC kant.
(Mijn zwager heeft dat systeem mede ontwikkeld, ik weet daarom dat het zeer nauwkeurig is)
In je script noemt die DC=xxxW echter dit komt exact overeen met de AC kant? Gezien er een efficiency
is zou beide berekend kunnen worden. Maar wat is het nu de AC of DC power?! Ik gok dat het AC power is..

[ Voor 40% gewijzigd door Dylotic op 19-04-2015 16:43 ]


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Dylotic schreef op zondag 19 april 2015 @ 16:36:
omoerbeek, nice work! ik ga hem weer pakken..

omoerbeek,
Ik zat zo eens naar mijn plugwise systeem te kijken en wat voor power dat gegenereerde op de AC kant.
(Mijn zwager heeft dat systeem mede ontwikkeld, ik weet daarom dat het zeer nauwkeurig is)
In je script noemt die DC=xxxW echter dit komt exact overeen met de AC kant? Gezien er een efficiency
is zou beide berekend kunnen worden. Maar wat is het nu de AC of DC power?! Ik gok dat het AC power is..
Mogelijk, maar die code is vrijwel direct overgenomen van het perl script...

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
omoerbeek schreef op zondag 19 april 2015 @ 17:01:
[...]


Mogelijk, maar die code is vrijwel direct overgenomen van het perl script...
Ok, in dat geval ga ik dit nader onderzoeken. Kijken wat meer overeen komt uiteindelijk.

NLMaca, ik zou het in jouw script voorlopig power noemen :P

[ Voor 9% gewijzigd door Dylotic op 19-04-2015 17:05 ]


Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
Dylotic schreef op zondag 19 april 2015 @ 17:04:
[...]


Ok, in dat geval ga ik dit nader onderzoeken. Kijken wat meer overeen komt uiteindelijk.

NLMaca, ik zou het in jouw script voorlopig power noemen :P
goed punt. ik heb verder weinig verstand van het hele zonnepanelen en ac en dc power. dat laat ik graag even bij jullie liggen ;)

Acties:
  • 0 Henk 'm!

  • NLMaca
  • Registratie: Maart 2015
  • Laatst online: 09-09 00:09
omoerbeek schreef op donderdag 16 april 2015 @ 07:07:
Ik zit te spelen met dit plan: extended statussen naar PV sturen (dit kunnen alleen getallen zijn):

# inverters die 0 leveren
# inverters met code 0, 1, of 3
# inverters met een andere status

Het idee is: de middelste categorie zijn codes die bij normaal bedrijf voorkomen.
Moet nog even nadenken wat ik doe als een inverteer helemaal niks van zich laat horen.
Extended status is wel een donation-only feature, dat is weer een nadeel.
omoerbeek,
kunnen we eigenlijk iets met die statussen doen?

Acties:
  • 0 Henk 'm!

  • hendrik99
  • Registratie: April 2009
  • Laatst online: 15-05-2021
@omoerbeek bedankt ! ik ga hem testen.

begrijp ik het goed dat ik nu nog 1 totaal / aggregate heb en dat deze wordt gepost naar het id in define('SYSTEMID', 'xxxxx)

dus Split in combinatie met aggregate ?

waar is define('EXTENDED', 0); voor ?


aanvulling: ik zie nu nu en dan een foutmelding lamgskomen, ik moet even kijken of dat blijft, het is nog niet licht natuurlijk:


20150420-06:33:01 Unexpected length 83 skip...

[ Voor 26% gewijzigd door hendrik99 op 20-04-2015 06:35 ]


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
NLMaca schreef op zondag 19 april 2015 @ 21:04:
[...]

omoerbeek,
kunnen we eigenlijk iets met die statussen doen?
Je kan ze bekijken in de grafieken op PVOutput (meest rechtse blokje klikken). En er een alert opzetten, zie README voor wat hints over hoe je ze bij PVOutput opzet.

[ Voor 5% gewijzigd door omoerbeek op 20-04-2015 07:08 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
hendrik99 schreef op zondag 19 april 2015 @ 21:43:
@omoerbeek bedankt ! ik ga hem testen.

begrijp ik het goed dat ik nu nog 1 totaal / aggregate heb en dat deze wordt gepost naar het id in define('SYSTEMID', 'xxxxx)

dus Split in combinatie met aggregate ?

waar is define('EXTENDED', 0); voor ?


aanvulling: ik zie nu nu en dan een foutmelding lamgskomen, ik moet even kijken of dat blijft, het is nog niet licht natuurlijk:


20150420-06:33:01 Unexpected length 83 skip...
Zie README voor wat EXTENDED betekent. Kort: het zijn tellingen van inverters met bepaalde status. Werkt alleen in donation mode.

Die foutmeldingen zijn onderdeel van het jagen naar de communicatie problemen die soms optreden. De inverters geven soms strings die "raar" zijn. Deze foutmelding zal ik weer weghalen. Ik heb hier nu een versie die (als het goed is) het communicatieprobleem vermijd.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
hendrik99 schreef op zondag 19 april 2015 @ 21:43:
@omoerbeek bedankt ! ik ga hem testen.

begrijp ik het goed dat ik nu nog 1 totaal / aggregate heb en dat deze wordt gepost naar het id in define('SYSTEMID', 'xxxxx)

dus Split in combinatie met aggregate ?
Ja. De combinatie cijfers gaan naar SYSTEMID, de individuele inverters volgens de mapping in $systemid en (optioneel) $apikey.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
BTW, ook in de nieuwe voorbeeld config.php staan wat hints hoe je het een en ander aan nieuwe dingen kan opzetten.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • gjbakker
  • Registratie: Maart 2015
  • Laatst online: 26-02-2023
Yes,

Eerste data komt vanmorgen binnen op PVOutput.

M.b.v. de tutorial van NLMaca, de aanvullingen op dit Forum en vanzelfsprekend het script van Omoerbeek (versie vrijdagochtend) heb ik gisteravond in twee uurtjes de installatie aan de praat gemaakt. (Na hiervoor 4 avonden in basis RPI, Unix kennis en een kapotte SD-kaart te hebben gestopt).

Dit smaakt naar meer. Op naar de Split versie.

Allen bedankt voor het delen van jullie kennis en ervaring en de uren code schrijven.......

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Net gecommit, een versie met robuustere comms (als het goed is). Ik ben vooral benieuwd of dit inderdaad beter (of minstens zo goed) is. Dus graag iedereen testen aub.

Wat mij betreft is het huidige script feature complete.

De interpretatie vraag staat nog wel open: zijn de power values echt de DC kant of toch de AC kant?

[ Voor 3% gewijzigd door omoerbeek op 20-04-2015 10:06 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
omoerbeek schreef op maandag 20 april 2015 @ 09:49:
Net gecommit, een versie met robuustere comms (als het goed is). Ik ben vooral benieuwd of dit inderdaad beter (of minstens zo goed) is. Dus graag iedereen testen aub.

Wat mij betreft is het huidige script feature complete.

De interpretatie vraag staat nog wel open: zijn de power values echt de DC kant of toch de AC kant?
Ik ga vanavond een analyse doen. Ben er inmiddels achter dat mijn plugwise naukeurig is!
(Zie pagina 5 onderaan: http://www.rejoin.se/wp-c...Systems-EN-supersmall.pdf )

Accuracy 1% ± 0,2 W 1 hour cumulative data, True RMS

Acties:
  • 0 Henk 'm!

Verwijderd

@omoerbeek,
Ik zat toevallig net wat waardes te bekijken (omdat ik een verschil zag van een procent of 7 tov van wat ik zou verwachten), en mij viel op dat er inderdaad DC totalen naar PVOutput gestuurd worden (dit is de gelijkstroom kant, en niet wat er uiteindelijk effectief opgewekt is).
Ik zou dus verwachten dat er eigenlijk ACPower naar PVOutput gestuurd zou worden, want daar spreekt met ook van current power output (en dat is AC).

regel 297: $total[$id]['Power'][] = $v['DCPower'];

Zou dan : $total[$id]['Power'][] = $ACpower; moeten zijn volgens mij.

Je stuurt immers ook AC volt door.
Het is maar wat je wilt zien in PVOutput, maar nu is het een mix.

Btw:
AC= Alternating Current (wisselstroom),
DC=Direct Current (gelijk stroom)

[ Voor 26% gewijzigd door Verwijderd op 20-04-2015 13:53 ]


Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
omoerbeek,
je nieuwste versie van het script geven vreemde errors en start uitendelijk niet.
code:
1
2
3
Warning: Unterminated comment starting line 304 in /home/dylotic/e2pv.php on line 304
20150420-11:57:03 only command line
20150420-06:33:01 Unexpected length 37 skip...


Vanavond verder analyseren.

[ Voor 14% gewijzigd door Dylotic op 20-04-2015 13:04 ]


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Dylotic schreef op maandag 20 april 2015 @ 12:54:
omoerbeek,
je nieuwste versie van het script geven vreemde errors en start uitendelijk niet.
code:
1
2
3
Warning: Unterminated comment starting line 304 in /home/dylotic/e2pv.php on line 304
20150420-11:57:03 only command line
20150420-06:33:01 Unexpected length 37 skip...


Vanavond verder analyseren.
Geen idee hoe jij het script van github haalt, maar het is zo te zien gemangeld. Of je hebt een syntax fout in je config.php

Chekc met:

php -l config.php

[ Voor 4% gewijzigd door omoerbeek op 20-04-2015 13:26 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Verwijderd schreef op maandag 20 april 2015 @ 12:44:
@omoerbeek,
Ik zat toevallig net wat waardes te bekijken (omdat ik een verschil zag van een procent of 7 tov van wat ik zou verwachten), en mij viel op dat er inderdaad DC totalen naar PVOutput gestuurd worden (dit is de gelijkstroom kant, en niet wat er uiteindelijk effectief opgewekt is).
Ik zou dus verwachten dat er eigenlijk ACPower naar PVOutput gestuurd zou worden, want daar spreekt met ook van current power output (en dat is AC).

regel 297: $total[$id]['Power'][] = $v['DCPower'];

Zou dan : $total[$id]['Power'][] = $v['ACPower']; moeten zijn volgens mij.

Je stuurt immers ook AC volt door.
Het is maar wat je wilt zien in PVOutput, maar nu is het een mix.

Btw:
AC= Alternating Current (wisselstroom),
DC=Direct Current (gelijk stroom)
Dat is ongveer de vraag. De ervaring leert dat wat ik nu DCPower noem redelijk tot goed klopt (dta is tenminste wat ik gehoord heb) . Het zijn ook de waardes die het perl script gebruikt.

Wellicht is alleen de naam verkeerd.... als ik dingen ga veranderen doe ik dat graag op basis van metingen en niet een gok.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Tip: download de handel met de "Download ZIP" knop van https://github.com/omoerbeek/e2pv (rechter kolom, onderaan).

Werkt beter dan copy-paste oid.

Of via de command line:

[otto@tp:12]$ curl -o x.zip https://codeload.github.com/omoerbeek/e2pv/zip/master
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  7916  100  7916    0     0  17629      0 --:--:-- --:--:-- --:--:-- 17669
[otto@tp:13]$ unzip x.zip                                                      
Archive:  x.zip
2f4df63021faa2cd919c5c2b0725b3a0e80a6dc9
   creating: e2pv-master/
  inflating: e2pv-master/LICENSE     
  inflating: e2pv-master/README.md   
  inflating: e2pv-master/config.php  
  inflating: e2pv-master/e2pv.php    
[otto@tp:14]$ php -l e2pv-master/config.php                                    
No syntax errors detected in e2pv-master/config.php
[otto@tp:15]$ php -l e2pv-master/e2pv.php                                      
No syntax errors detected in e2pv-master/e2pv.php
[otto@tp:16]$ 

[ Voor 86% gewijzigd door omoerbeek op 20-04-2015 13:45 ]

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

Verwijderd

omoerbeek schreef op maandag 20 april 2015 @ 13:25:
[...]


Dat is ongveer de vraag. De ervaring leert dat wat ik nu DCPower noem redelijk tot goed klopt. Het zijn ook de waardes die het perl script gebruikt.

Wellicht is alleen de naam verkeerd.... als ik dingen ga veranderen doe ik dat graag op basis van metingen en niet een gok.
Ja, de berekening van je values kloppen zeker wel. DCOutput geeft de juiste waarde weer, naam is ook niet verkeerd.
Ik heb het ook nog gecross checked met andere panelen die ik heb, dus dat ziet er allemaal goed uit (want ik twijfelde aan het werkelijke vermogen omdat ik dacht dat die wat achterbleven, maar dat doen mijn andere panelen (niet enecsys ook).

Het enige dat je naar PVOutput moet sturen is het opgewekte vermogen (AC) en niet DC. Zit em enkel in wat je rapporteert naar PVOutput.
Curve van actual vermogen zal dan wat zakken, maar heeft volgens mij geen effect op andere waardes, daar dat op de totale output gebaseerd is.
(ik test het ff).

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
@rbro mooi! als je panelen hebt die aan een enecsys hangen en dezelfde die dat niet doen hebben we goed vergelijkinsmateriaal.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

Verwijderd

Test gedaan.

Volgende aanpassing:

regel 297: $total[$id]['Power'][] = $v['DCPower'];
naar : $total[$id]['Power'][] = $ACpower;

PVOutput reageert inderdaad zoals ik had verwacht, en bij de rapportage komt nu de Power Generated curve iets lager te liggen (dit is het efficiency verlies bij AC naar DC), maar laat nu de werkelijk opgewekte (actual) power zien.

Vergelijk gedaan met andere panelen (en omvormer), deze waardes komen overeen met de berekeningen in het script, dus lijkt goed.

Wat ik wel zie is dat de totaal opbrengst (som van panelen) bij Enecsys 6% lager is dan wat mijn ge-ijkte ferraris meter aangeeft (dit probleem had ik al vanaf moment van aanschaf echter de leverancier kon me dit toen ook niet verklaren, maar mijn vermoeden is dat dit ook zit in hoe Enecsys de zaak berekent (het script laat nu iig zien wat ik voorheen ook op de Enecsys monitoring site zag).

Heeft iemand anders dit 6% verschil ooit ook gemeten/gezien ?

[ Voor 14% gewijzigd door Verwijderd op 20-04-2015 14:26 ]


Acties:
  • 0 Henk 'm!

  • pielle007
  • Registratie: April 2008
  • Laatst online: 06:45
Verwijderd schreef op maandag 20 april 2015 @ 14:19:

Wat ik wel zie is dat de totaal opbrengst (som van panelen) bij Enecsys 6-7% lager is dan wat mijn ge-ijkte ferraris meter aangeeft (dit probleem had ik al vanaf moment van aanschaf echter de leverancier kon me dit ook niet verklaren, maar mijn vermoeden is dat dit ook zit in hoe Enecsys de zaak berekent).

Heeft iemand anders dit ooit ook gemeten/gezien ?
Komt me bekend voor ja.
Zie nu overigens ook verschillen.. log t zelfde systeem op 2 manieren, via de rasberrypi en dus t script van omoerbeek (dankzij maca geinstalleerd) Jullie zijn overigens helden ,waarvoor een dikke bedankt _/-\o_
+ via een kwh meter (abb c11 + youless)
http://www.pvoutput.org/intraday.jsp?id=22545&sid=20437 << Youless
http://www.pvoutput.org/intraday.jsp?id=40234&sid=36776 << PI

Acties:
  • 0 Henk 'm!

  • Dylotic
  • Registratie: April 2002
  • Laatst online: 29-11-2021
De power is zeker DC kant.. Zie hier een van mijn inverters..

Inverter : 110029200
Update : 2015-04-20 14:35:36
Power : 405
DCCurrent : 10.875
ACFreq : 49
DCVolt : 37.33
ACVolt : 226
Temp : 59
Efficiency : 0.933
State : 0
Kwh : 571.321

DCVolt * DCCurrent = POWER
37,33 * 10.875 = 405 W

AC kant zal lager liggen. Deze is te berekenen met de Efficiency!
DCPower * Efficiency
405 * 0.933 = 378 W

[ Voor 13% gewijzigd door Dylotic op 20-04-2015 14:41 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Dylotic schreef op maandag 20 april 2015 @ 14:38:
De power is zeker DC kant.. Zie hier een van mijn inverters..

Inverter : 110029200
Update : 2015-04-20 14:35:36
Power : 405
DCCurrent : 10.875
ACFreq : 49
DCVolt : 37.33
ACVolt : 226
Temp : 59
Efficiency : 0.933
State : 0
Kwh : 571.321

DCVolt * DCCurrent = POWER
37,33 * 10.875 = 405 W

AC kant zal lager liggen. Deze is te berekenen met de Efficiency!
DCPower * Efficiency
405 * 0.933 = 378 W
Klopt, met de berekeningen is niets mis.
Het ging enkel over wat gerapporteerd wordt naar PVOutput.

In analogy met jouw voorbeeld:
Momenteel stuurt het script het vermogen van de DC kant (DCPower = 405W), het bruto opgewerkte vermogen ipv het werkelijke netto actual vermogen (ACpower = 378W).

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Dylotic schreef op maandag 20 april 2015 @ 14:38:
De power is zeker DC kant.. Zie hier een van mijn inverters..

Inverter : 110029200
Update : 2015-04-20 14:35:36
Power : 405
DCCurrent : 10.875
ACFreq : 49
DCVolt : 37.33
ACVolt : 226
Temp : 59
Efficiency : 0.933
State : 0
Kwh : 571.321

DCVolt * DCCurrent = POWER
37,33 * 10.875 = 405 W

AC kant zal lager liggen. Deze is te berekenen met de Efficiency!
DCPower * Efficiency
405 * 0.933 = 378 W
Zekers, mijn script doet dat al. De vraag is wat doorgestuurd moet worden naar PV

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • wersitime
  • Registratie: April 2014
  • Laatst online: 29-04 12:43
Verwijderd schreef op maandag 20 april 2015 @ 14:19:
Test gedaan.

Volgende aanpassing:

regel 297: $total[$id]['Power'][] = $v['DCPower'];
naar : $total[$id]['Power'][] = $ACpower;

PVOutput reageert inderdaad zoals ik had verwacht, en bij de rapportage komt nu de Power Generated curve iets lager te liggen (dit is het efficiency verlies bij AC naar DC), maar laat nu de werkelijk opgewekte (actual) power zien.

Vergelijk gedaan met andere panelen (en omvormer), deze waardes komen overeen met de berekeningen in het script, dus lijkt goed.

Wat ik wel zie is dat de totaal opbrengst (som van panelen) bij Enecsys 6% lager is dan wat mijn ge-ijkte ferraris meter aangeeft (dit probleem had ik al vanaf moment van aanschaf echter de leverancier kon me dit toen ook niet verklaren, maar mijn vermoeden is dat dit ook zit in hoe Enecsys de zaak berekent (het script laat nu iig zien wat ik voorheen ook op de Enecsys monitoring site zag).

Heeft iemand anders dit 6% verschil ooit ook gemeten/gezien ?
Ja dit verschil heb ik ook altijd gehad.

www.mrmodelrailroad.com


Acties:
  • 0 Henk 'm!

  • ahah
  • Registratie: April 2015
  • Laatst online: 25-03 20:06
omoerbeek schreef op maandag 20 april 2015 @ 09:49:
Net gecommit, een versie met robuustere comms (als het goed is). Ik ben vooral benieuwd of dit inderdaad beter (of minstens zo goed) is. Dus graag iedereen testen aub.
Ongeveeer elke seconde komt de volgende melding:
PHP Warning: socket_recv(): unable to read from socket [11]: Resource temporarily unavailable in /home/pi/pv/e2pv.php on line 173
Oorzaak?

Tussendoor komen wel netjes de gegevens van de inverters op het scherm. Prima dus.

Acties:
  • 0 Henk 'm!

  • hendrik99
  • Registratie: April 2009
  • Laatst online: 15-05-2021
heb de laatste versie geplaatst, vorige versie deed geen update richting een afwijkend API, (bij mij tenminste). laatste versie geef veel fouten.

ly unavailable in /pvoutput/e2pv.php on line 157
PHP Warning: socket_recv(): unable to read from socket [11]: Resource temporarily unavailable in /pvoutput/e2pv.php on line 157
PHP Warning: socket_recv(): unable to read from socket [11]: Resource temporarily unavailable in /pvoutput/e2pv.php on line 157
110075820 DC=201W 37.92V 5.30A AC=223V 190.55W E=0.95 T=53 S=0 L=675.051kWh
PHP Warning: socket_recv(): unable to read from socket [11]: Resource temporarily unavailable in /pvoutput/e2pv.php on line 157

Acties:
  • 0 Henk 'm!

  • omoerbeek
  • Registratie: November 2004
  • Laatst online: 09-02-2023
Deze warming is onschuldig (en irritant). Zodra ik thuis ben zal ik het fixen.

https://github.com/omoerbeek/e2pv


Acties:
  • 0 Henk 'm!

  • SkiFan
  • Registratie: Juli 2001
  • Laatst online: 23:30
Heb het werkend gekregen op een Ubuntu VM op mn werk, volgens mij de meest eco oplossing, die hosts lopen nml toch altijd wel door.

Top Otto!

http://www.pvoutput.org/intraday.jsp?id=15431&sid=35110

Jurist in zijn vrije tijd, IT'er van beroep.

Pagina: 1 ... 9 ... 22 Laatste

Let op:
aandachtspuntje:
De rapporteer knop is niet hetzelfde als de quote knop: let er op dat je op de goede drukt!