En dan 115200 neem ik aan?ThinkPadd schreef op zaterdag 07 mei 2016 @ 09:26:
[...]
BS170 i.p.v. BC170
Maar misschien heb je een namaak CH340-chip ofzo, met die Chinezen weet je het nooit wat je opgestuurd krijgt. BS170 en nog een 10K weerstand ertussen en klaar.
Ja, of 9600 (voor de wat oudere meters).
Andere mogelijkheden zijn er niet.
Ik heb hetzelfde gehad met een zogenaamde CH340, bagger uit de meter en na het toevoegen van de inverter was was de data schoon...
Inverter heb ik overgens gemaakt met een BC547B, werkt ook goed. Opbouw zoals de afbeelding hieronder, met nog wel een pull up weerstand aan de kant van de meter.
Inverter heb ik overgens gemaakt met een BC547B, werkt ook goed. Opbouw zoals de afbeelding hieronder, met nog wel een pull up weerstand aan de kant van de meter.

2030Wp + 2520Wp PVoutput
met R1 = 1k en R2 = 10k?Geronimoos schreef op zaterdag 07 mei 2016 @ 14:35:
Ik heb hetzelfde gehad met een zogenaamde CH340, bagger uit de meter en na het toevoegen van de inverter was was de data schoon...
Inverter heb ik overgens gemaakt met een BC547B, werkt ook goed. Opbouw zoals de afbeelding hieronder, met nog wel een pull up weerstand aan de kant van de meter.
[afbeelding]
Volgens mij had ik twee weerstanden bij de hand van rond de 4k, komt dus niet heel kritisch. Het zit inmiddels onder een krimpkous, anders had ik nog even kunnen kijken. Pull-up was een 1.5k.
2030Wp + 2520Wp PVoutput
Ik heb netjes om de 10 seconden een uitlezing, echter een deel van de karakters wordt niet goed weergegeven.
Ik gebruik nu de kabel van sos solutions op mijn debian linux.
Zie de screenshot.

Wat kan hiervan de oorzaak zijn. Verkeerde karakterset?
Ik gebruik nu de kabel van sos solutions op mijn debian linux.
Zie de screenshot.

Wat kan hiervan de oorzaak zijn. Verkeerde karakterset?
[ Voor 25% gewijzigd door raswic op 14-05-2016 20:55 ]
Terugsturen, je hoort leesbare data te krijgen.
Voor de zekerheid wellicht nog even onder Windows met 'putty' proberen.
Voor de zekerheid wellicht nog even onder Windows met 'putty' proberen.
Opvallend dat je voornamelijk de getallen 0,3,6 en 9 ontvangt.raswic schreef op zaterdag 14 mei 2016 @ 20:51:
Ik heb netjes om de 10 seconden een uitlezing, echter een deel van de karakters wordt niet goed weergegeven.
Ik gebruik nu de kabel van sos solutions op mijn debian linux.
Zie de screenshot.
[afbeelding]
Wat kan hiervan de oorzaak zijn. Verkeerde karakterset?
Maar geen idee wat hier de oorzaak van kan zijn.
Ik wil ook de kabel van SOS Solutions gaan bestellen. Slimme meter hangt er nu een dag en er ligt al een RPI in de meterkast, dus het uitlezen en met MQTT doorsturen met de RPI is het makkelijkst...
Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs
Voor mensen die interesse hebben om de P1 poort via Wifi uit te lezen zonder al te veel gedoe; de oplossing van http://romix.macuser.nl/ werkte bij mij gelijk!
Ik neem wel even contact op met sos solutions.
Ondertussen het volgende gedaan:
De output naar een file schrijven en vervolgens openen. Dit geeft als resultaat dat de tekens verder worden gespecificeerd. De <B1> komt overeen met de 1. De rest is ook te relateren aan een getal of letter.
Ondertussen het volgende gedaan:
De output naar een file schrijven en vervolgens openen. Dit geeft als resultaat dat de tekens verder worden gespecificeerd. De <B1> komt overeen met de 1. De rest is ook te relateren aan een getal of letter.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| <AF><C9>S<EB>5\<B2>M<D4>3<B8><B2>-<B1>00<B4><8D> <8D> 0-0:96.<B1>.<B1>(5A<B4><B2><B4>5563030353<B1>3<B8>3<B8>303<B2>33393<B1>33<A9> <8D> <B1>-0:<B1>.<B8>.<B1>(03<B1><B4>9.9<B7><B2><AA><EB><D7>詍 <B1>-0:<B1>.<B8>.<B2>(0<B2><B7>3<B1>.<B4>53<AA><EB><D7>詍 <B1>-0:<B2>.<B8>.<B1>(00000.00<B2><AA><EB><D7>詍 <B1>-0:<B2>.<B8>.<B2>(00000.00<B4><AA><EB><D7>詍 0-0:96.<B1><B4>.0(000<B1><A9><8D> <B1>-0:<B1>.<B7>.0(0000.<B2>5<AA><EB>ש<8D> <B1>-0:<B2>.<B7>.0(0000.00<AA><EB>ש<8D> 0-0:<B1><B7>.0.0(0999.00<AA><EB>ש<8D> 0-0:96.3.<B1>0(<B1><A9><8D> 0-0:96.<B1>3.<B1>(<A9><8D> 0-0:96.<B1>3.0(<A9><8D> 0-<B1>:<B2><B4>.<B1>.0(3<A9><8D> 0-<B1>:96.<B1>.0(333<B8>30303<B4>30303<B1>3333363<B1>363<B2>333<B1>33<A9><8D> 0-<B1>:<B2><B4>.3.0(<B1>605<B1><B4><B2><B1>0000<A9>(00<A9>(60<A9>(<B1><A9>(0- <B1>:<B2><B4>.<B2>.<B1><A9>(<ED>3<A9><8D> (036<B1>0.<B8>55<A9><8D> 0-<B1>:<B2><B4>.<B4>.0(<B1><A9><8D> !<8D> |
Lijkt wel of er bitjes omvallen als elke vreemde waarde overeenkomt met een specifiek getal of letter.raswic schreef op zondag 15 mei 2016 @ 11:37:
Ik neem wel even contact op met sos solutions.
Ondertussen het volgende gedaan:
De output naar een file schrijven en vervolgens openen. Dit geeft als resultaat dat de tekens verder worden gespecificeerd. De <B1> komt overeen met de 1. De rest is ook te relateren aan een getal of letter.
Rotte aansluiting op de slimme meter of de kabel gewoon een maandagochtend exemplaar?
Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs
Kabel is goed. Ik had de instellingen toch niet goed staan, waaronder 8 bits ipv 7. En dan gaat het dus niet goed. Het bitjes omvallen triggerde me in die richting,
Heeft iemand al de meter uitgelezen via ttyUSB0 met alleen gebruik van PHP?
Diverse sites geven voorbeelden met fopen en fread scriptjes maar wanneer ik het probeer blijft de pagina maar laden en gebeurd er niets. Verder kan ik hier ook weinig over vinden helaas.
Als ik cat /dev/ttyUSB0 als commando in linux gebruik werkt het prima en krijg ik de juiste data elke 10 sec.
EDIT: het werkt, om een nog onbekende reden waren de rechten van ttyUSB0 veranderd
Ik heb dit gebruikt voor het testen:
Diverse sites geven voorbeelden met fopen en fread scriptjes maar wanneer ik het probeer blijft de pagina maar laden en gebeurd er niets. Verder kan ik hier ook weinig over vinden helaas.
Als ik cat /dev/ttyUSB0 als commando in linux gebruik werkt het prima en krijg ik de juiste data elke 10 sec.
EDIT: het werkt, om een nog onbekende reden waren de rechten van ttyUSB0 veranderd

Ik heb dit gebruikt voor het testen:
<?php
$myFile = "/dev/ttyUSB0";
$handle = fopen($myFile, 'r');
$Data = fread($handle, 650);
fclose($handle);
echo $Data;
?>
[ Voor 27% gewijzigd door laforte op 21-05-2016 22:56 . Reden: probleem is opgelost ]
Met de P1 kabel aangesloten op een Pi, en een testlog naar CSV format kun je al leuke dingen zien:

Het minimum verbruik is dus 50W in deze periode (komt door de zonnepanelen), en in de nacht is het minimum rond de 95W met een gemiddelde van 130W. Dat valt nog mee met zoveel IT spullekes, een amerikaanse koelkast en een close-in boiler
Ik had overigens wel verwacht dat ik het aanslaan van de koelkast nog zou zien, maar blijkbaar (zuinig type) kan dat ding ver terugmoduleren zodat er geen pieken zichtbaar zijn...
Verder zitten de vaatwasser en de watkerkoker op dezelfde groep: aan het piekverbruik (ca 1200W) kun je dus zien dat dat ook makkelijk kan.
De oven zit gelukkig wel op een aparte groep, en dat is maar goed ook met ruim 3000W piekverbruik.
De wasdroger doet het dan weer rustig aan met een gemiddelde van 900W.
Leuk speelgoed dus!
Wat me nog wel in negatieve zin is opgevallen dat de meter een DSMR v4.2 type is, maar de meeste velden als '0' rapporteert (al die power velden, netspanning, etc.).
Dat is dus weer jammer, tenzij er natuurlijk nog ergens een verwerkingsfoutje zit. Dat moet ik nog nakijken.

Het minimum verbruik is dus 50W in deze periode (komt door de zonnepanelen), en in de nacht is het minimum rond de 95W met een gemiddelde van 130W. Dat valt nog mee met zoveel IT spullekes, een amerikaanse koelkast en een close-in boiler
Ik had overigens wel verwacht dat ik het aanslaan van de koelkast nog zou zien, maar blijkbaar (zuinig type) kan dat ding ver terugmoduleren zodat er geen pieken zichtbaar zijn...
Verder zitten de vaatwasser en de watkerkoker op dezelfde groep: aan het piekverbruik (ca 1200W) kun je dus zien dat dat ook makkelijk kan.
De oven zit gelukkig wel op een aparte groep, en dat is maar goed ook met ruim 3000W piekverbruik.
De wasdroger doet het dan weer rustig aan met een gemiddelde van 900W.
Leuk speelgoed dus!
Wat me nog wel in negatieve zin is opgevallen dat de meter een DSMR v4.2 type is, maar de meeste velden als '0' rapporteert (al die power velden, netspanning, etc.).
Dat is dus weer jammer, tenzij er natuurlijk nog ergens een verwerkingsfoutje zit. Dat moet ik nog nakijken.
Material 3 Thema's voor HA | Swiss Army Knife custom card voor HA | AmoebeLabs
De CH340 inverteert het signaal niet. Mensen die een kabel obv deze chip zonder soldeerwerk aan het werk hebben gekregen, hebben een CH340 RS232 converter. Door de spanningsnivo verschillen tussen RS232 en TTL (wat je meter afgeeft) werkt zo'n kabel in veel (maar niet alle is de ervaring) gevallen WEL.ThinkPadd schreef op zaterdag 07 mei 2016 @ 09:26:
[...]
BS170 i.p.v. BC170
Maar misschien heb je een namaak CH340-chip ofzo, met die Chinezen weet je het nooit wat je opgestuurd krijgt. BS170 en nog een 10K weerstand ertussen en klaar.
Als je een CH340 USB-TTL converter hebt, moet je nog steeds (jn hardware) inverteren.
Als je zekerheid wil, koop een kabel voor 20 euro bijv bij smartmeterdashboard.nl
Geen usb gebruiken maar gewoon op de UART van de Raspberry (GPIO 10) dan is dat verhaal met rare teken weg. http://home.versatel.nl/rolandhendriks/rpilink1.html
[ Voor 23% gewijzigd door 19roland70 op 04-06-2016 10:26 ]
Mijn slimme meter kan ik nu uitlezen via mijn SolarEdge omvormer.
Veroordeel niet, verwonder u slechts
Interessant, hoe doe je dat?No Hands schreef op maandag 06 juni 2016 @ 11:02:
Mijn slimme meter kan ik nu uitlezen via mijn SolarEdge omvormer.
Ik heb ook een SolarEdge...
Bram Bouwens
Hoi allemaal,
Afgelopen week is mijn Kaifa 105 van Stedin geinstalleerd. Nu heb ik een RJ11 kabel aangesloten op een inverter (10kOhm + transistor) en daarachter een Intel Edison op UART1. De data die er uitkomt is niet leesbaar en ik heb al zitten spelen met opties, maar iedereen heeft het over 115200, 8N1 en pariteit 'none'.
Belangrijk verschil (?): ik heb een BC337 ipv een BS170 gebruikt. Dat is een NPN BJT transisitor, waar de BS een FET n-channel is. Qua aansluiting zou ik het goed moeten hebben (hij inverteert inderdaad correct, getuige een testje met een buzzer/led), maar misschien is de BC337 te traag of heeft te veel capaciteit. Maar misschien niet... ik weet het niet. De BS170 was op waar ik componentjes kon halen.
Ik heb de data die ik ontvang proberen om te zetten, maar daar kom ik niet uit. De charCodes die ik binnen krijg (nodeJS) zijn:
iemand enig idee of deze data misschien wel klopt maar gewoon nog omgezet moet worden?
Afgelopen week is mijn Kaifa 105 van Stedin geinstalleerd. Nu heb ik een RJ11 kabel aangesloten op een inverter (10kOhm + transistor) en daarachter een Intel Edison op UART1. De data die er uitkomt is niet leesbaar en ik heb al zitten spelen met opties, maar iedereen heeft het over 115200, 8N1 en pariteit 'none'.
Belangrijk verschil (?): ik heb een BC337 ipv een BS170 gebruikt. Dat is een NPN BJT transisitor, waar de BS een FET n-channel is. Qua aansluiting zou ik het goed moeten hebben (hij inverteert inderdaad correct, getuige een testje met een buzzer/led), maar misschien is de BC337 te traag of heeft te veel capaciteit. Maar misschien niet... ik weet het niet. De BS170 was op waar ik componentjes kon halen.
Ik heb de data die ik ontvang proberen om te zetten, maar daar kom ik niet uit. De charCodes die ik binnen krijg (nodeJS) zijn:
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
| 14,2,4,8,32,2,0 0 4,0 8,8,0 0 0 0 8,0 8,0 32,8,34,48,32,12,32,12,48,0 32,32,0 8,0 32,8,32,48,32,12,32,12,32,0 32,36,32,36,32,32,32,34,32,48,32,32,2,0 8,0 32,8,32,48,48,36,12,32,12,32,0 32,32,34,32,34,32,34,32,34,32,34,32,34,32,34,32,34,32,34,32,34,32,34,32,34,48,34,32,34,38,34,32,34,32,0 8,0 32,8,32,48,32,12,48,12,32,0 32,32,32,32,32,32,12,36,32,34,0 66,6,64,0 8,0 32,8,32,48,32,12,48,12,32,0 32,32,32,32,32,32,12,38,32,34,0 66,6,64,0 8,0 32,8,32,48,32,12,48,12,32,0 32,32,32,32,32,32,12,32,32,32,0 66,6,64,0 8,0 32,8,32,48,32,12,48,12,32,0 32,32,32,32,32,32,12,32,32,32,0 66,6,64,0 8,0 32,8,32,48,48,36,12,32,32,12,32,0 32,32,32,32,0 8,0 32,8,32,48,32,12,38,12,32,0 32,32,12,32,32,32,0 66,6,0 8,0 32,8,32,48,32,12,38,12,32,0 32,32,12,32,32,32,0 66,6,0 8,0 32,8,32,48,48,36,12,38,12,32,32,0 32,32,32,32,32,0 8,0 32,8,32,48,48,36,12,38,12,48,0 32,32,32,32,32,0 8,0 32,8,32,48,48,48,12,48,38,12,32,0 32,0 0 32,8,32,48,48,36,12,38,12,32,48,0 0 32,32,32,32,32,32,32,32,32,32,32,32,6,0 0 32,32,32,38,32,48,34,36,32,38,0 98,0 8,0 32,8,32,48,34,32,12,34,32,12,32,0 32,32,32,32,32,0 8,0 32,8,32,48,34,32,12,34,36,12,32,0 32,32,32,32,32,0 8,0 32,8,32,48,48,36,12,32,34,12,32,0 0 8,0 32,8,32,48,48,36,12,32,34,12,32,0 0 8,0 32,8,32,48,34,32,12,38,12,32,0 32,32,32,0 0 0 8,0 32,8,32,48,32,32,12,38,12,32,0 32,32,12,32,32,32,0 66,6,0 8,0 32,8,32,48,32,32,12,38,12,32,0 32,32,12,32,32,32,0 66,6,0 8,0 32,8,32,48,32,32,12,32,12,32,0 32,32,34,0 8,0 32,8,32,48,48,36,12,32,12,32,0 32,38,34,32,34,32,34,32,34,32,34,32,34,32,34,34,34,34,34,48,34,32,34,32,34,38,34,36,34,48,34,32,34,36,0 8,0 32,8,32,48,32,32,12,32,12,32,0 32,36,32,36,32,32,32,34,32,32,32,32,2,0 0 32,32,32,32,32,12,32,32,34,0 72,34,0 8,0 0 2,34,48,34,8,0 |
iemand enig idee of deze data misschien wel klopt maar gewoon nog omgezet moet worden?
Je kunt van solaredge een kwh meter kopen en amperespoelen. Dat sluit je n je meterkast aan en via instellingen in je omvormer krijg je alles heel mooi in je omvormer monitoring. Opbrengst, verbruik, en andere interessante data.BTB schreef op woensdag 15 juni 2016 @ 19:53:
[...]
Interessant, hoe doe je dat?
Ik heb ook een SolarEdge...
Het is dus niet rechtstreeks uit je meter maar wel je totaalverbruik. Ik heb het vergeleken met mijn slimme meter en dat komt gewoon overeen.
Veroordeel niet, verwonder u slechts
Een inverter maken met een NPN is voor mij niet heel logisch, misschien even je schema laten zien?hermanbanken schreef op woensdag 15 juni 2016 @ 23:17:
Belangrijk verschil (?): ik heb een BC337 ipv een BS170 gebruikt. Dat is een NPN BJT transisitor, waar de BS een FET n-channel is. Qua aansluiting zou ik het goed moeten hebben (hij inverteert inderdaad correct, getuige een testje met een buzzer/led), maar misschien is de BC337 te traag of heeft te veel capaciteit. Maar misschien niet... ik weet het niet. De BS170 was op waar ik componentjes kon halen.
Bram Bouwens
Ah. Toch weer allerlei extra dingen. Ik hoopte op iets moois als een MODBUS interface in een Raspberry; moet kunnen, lijkt me een leuk projectje.No Hands schreef op donderdag 16 juni 2016 @ 07:18:
[...]
Je kunt van solaredge een kwh meter kopen en amperespoelen. Dat sluit je n je meterkast aan en via instellingen in je omvormer krijg je alles heel mooi in je omvormer monitoring. Opbrengst, verbruik, en andere interessante data.
Het is dus niet rechtstreeks uit je meter maar wel je totaalverbruik. Ik heb het vergeleken met mijn slimme meter en dat komt gewoon overeen.
Bram Bouwens
Vindt ik ook wel interessant. Kon er alleen weinig over vinden verder. Gaat via de slimme meter naar de kwh meter en dan via de omvormer naar de solaredgeportal?
Wel een prijzig apparaatje...
Wel een prijzig apparaatje...
Hier is dus typisch niet goed over nagedacht. In een modern huis is een netwerk, zowel in de meterkast als bij de omvormer, en dan moet je een RS485 kabel gaan trekken, terwijl er wel degelijk zoiets als MODBUS TCP bestaat. En ja, waarom zou je een extra meter moeten installeren, terwijl onze smart meter al voldoende gegevens heeft.
Maar dit is hier wat off-topic, als we erover door willen discussieren dan hoort dat in een ander topic.
Maar dit is hier wat off-topic, als we erover door willen discussieren dan hoort dat in een ander topic.
[ Voor 13% gewijzigd door BTB op 16-06-2016 15:59 ]
Bram Bouwens
De slimme meter is er niet op aangesloten, het gaat gewoon vanuit je meterkast. Net na de hoofdschakelaar.
Alles bij SE gaat nu eenmaal bij voorkeur met bekabeling, ze hebben ook niet standaard wifi aan boord zoals de meeste andere merken, dat moet je er los bijkopen.
Die modbus die je hiervoor gebruikt is ook datgene wat straks het voeden en leegtrekken van het accupakket gaat regelen, vandaar dat het zo werkt.
Alles bij SE gaat nu eenmaal bij voorkeur met bekabeling, ze hebben ook niet standaard wifi aan boord zoals de meeste andere merken, dat moet je er los bijkopen.
Die modbus die je hiervoor gebruikt is ook datgene wat straks het voeden en leegtrekken van het accupakket gaat regelen, vandaar dat het zo werkt.
Veroordeel niet, verwonder u slechts
Hmm, ik zit nu te twijfelen. Ik verplaats mijn Pi naar een andere locatie, waardoor er nogal wat afstand tussen de Pi en de P1 poort van slimme meter komt.
Zal ik deze verlenging proberen te behalen met een usb verlengkabel, of met een langere RJ11 kabel? Beide is volgens mij 5 Volt.
Ik heb er dus zo'n usb kabel tussen zitten.
Zal ik deze verlenging proberen te behalen met een usb verlengkabel, of met een langere RJ11 kabel? Beide is volgens mij 5 Volt.
Ik heb er dus zo'n usb kabel tussen zitten.
Ampera-e (60kWh) -> (66kWh)
Ik zou de RJ11 verlengen, dat is serieel en dat kan over een langere afstand dan USB.
Of je neemt een USR-TCP232 (Serial to Ethernet) om je slimme meter een Ethernet-aansluiting te geven. Of een ESP8266 (met esp-link) als je het liever over WiFi doet
Of je neemt een USR-TCP232 (Serial to Ethernet) om je slimme meter een Ethernet-aansluiting te geven. Of een ESP8266 (met esp-link) als je het liever over WiFi doet
[ Voor 15% gewijzigd door ThinkPad op 22-06-2016 13:09 ]
Maar USB is ook serieel en voltages zijn hetzelfde. Dus waarom zou ik de RJ11 verlengen?ThinkPadd schreef op woensdag 22 juni 2016 @ 13:08:
Ik zou de RJ11 verlengen, dat is serieel en dat kan over een langere afstand dan USB.
Of je neemt een USR-TCP232 (Serial to Ethernet) om je slimme meter een Ethernet-aansluiting te geven. Of een ESP8266 (met esp-link) als je het liever over WiFi doet
Ik bedacht me gisteravond dat op USB niveau zitten er iets meer protocol dingetjes om eventueel wat opnieuw te sturen e.d. dus daar zou ik minder snel problemen verwachten dan op RJ11.
De andere oplossingen zijn wel leuk, maar ik wil iets van 5 a 7 meter verlengen en ik heb er al een kabelgoot lopen. Dus ik zou het wel moeten kunnen redden met gewoon langer kabeltje leggen, ook al is het laag voltage spul. Simpeler en goedkoper, en hou ik een RJ45 port over.
Ik bedenk me net dat ik op m'n werk ook wel eens een USB kabel ver heb verlengd met een zootje 2 meter usb verleng kabeltjes, ook voor een simpele lage snelheid seriele (console) verbinding. Werkt goed ook al is de afstand behoorlijk te noemen, dus dat ga ik hier ook maar doen.
[ Voor 28% gewijzigd door !null op 22-06-2016 13:44 ]
Ampera-e (60kWh) -> (66kWh)
Volgens mij moet je dan een usb kabel met repeater gebruiken, grote kans dat je pi de usb niet herkent.
18950Wp🌞, Atlantic 270V3💧, Pana 5J🔥. Zendure 2400AC 11,5kWh🔋,Hyundai Kona 64kWh 🚗, Peblar Home ⛽
De bitrate van USB is vele malen hoger waardoor het veel gevoeliger is voor verstoring. Niet alleen vervorming en ruis maar ook latency word een issue bij USB.!null schreef op woensdag 22 juni 2016 @ 13:39:
[...]
Maar USB is ook serieel en voltages zijn hetzelfde. Dus waarom zou ik de RJ11 verlengen?
[...]
RS-232 kun je een aardig eind verlengen zonder al te veel problemen. En anders is het relatief eenvoudig om te zetten naar een signaal met een hoger voltage.
Maar voor USB zijn er kabels van 5 meter (de officiële maximale kabellengte) met aan het einde een 1 poort USB hub. Die hub werkt als repeater maar heeft geen externe voeding nodig.
[ Voor 21% gewijzigd door NBK op 26-06-2016 23:16 ]
PC's; Home; Met 8619 units als 72e geëindigd bij DPC @ SETI-classic
Ik heb net mijn slimme meter (Kaifa) aan de RPi gehangen met Domoticz. Ik heb voor de makkelijke manier gekozen en een veel te dure kant en klare kabel gekocht. Met dank aan de blog van thinkpad de baudrate op 115200 gezet en gaan met de banaan
Heren,
Ik heb sinds eergisteren een Pi en P1 kabel aangesloten op mijn Landis+Gyr E350. Het is me gelukt met behulp van gejanssen zijn script om deze uit te lezen. Ik heb hierop het één en ander aangepast om zo ook de fases uit te kunnen lezen en te plotten naar grafieken. Zo far so good.
Er is alleen een raar probleem waar ik mijn vingers niet achter kan krijgen. Het script om P1 uit te lezen werkt als volgt:
1. Crontab start elke minuut het scriptje op om het resultaat weg te schrijven naar .txt file
2. in hetzelfde script worden de RRDtool DB's bijgewerkt
3. in hetzelfde script worden de grafieken ook meteen bijgewerkt
Dit werkt voor ALLE waardes correct, op 1 na. Dat is de T2 verbruikswaarde die vaak gewoon aanwezig is in het telegram, maar niet wordt weggeschreven in het tekstbestandje omdat het een half bericht is van het vorige telegram en de nieuwe.
Na wat onderzoek kwam ik erachter dat het probleem vermoedelijk zit in het volgende:
- Crontab start elke eerste seconde van de minuut
- Telegram wordt elke 10 seconde verstuurd
- Gisteren werd het telegram verstuurd op de volgende momenten: 03-13-23-33-43-53
In mijn mijn scriptje heb ik dan ook een sleep commando toegevoegd:
Hiermee zorg zorg ik ervoor dat de P1 pas op seconde 16 wordt uitgelezen. Gisteren werkte dit weer een tijdje vlekkeloos, maar vandaag zag ik weer een mooie whitespot in mijn grafiek.
Ik heb dus de laptop weer aangekoppeld en aan de P1 gehangen en kwam tot een aparte ontdekking.
Vandaag wordt het telegram verstuurd op de volgende momenten: 04-14-24-34-44-54
Het uitzenden van het telegram is verschoven?
Op het moment dat het fout gaat, ziet het telegram er als volgt uit met de T2 waarde er dus in (1-0:1.8.2), maar ook wat waardes die zijn afgekapt.
Met als output
Als het goed gaat ziet hij er als volgt uit:
met als output een correcte value. Zie ook
Telegram output rechtstreeks uit slimme meter via laptop.
Is hier een slimme oplossing voor? En hebben jullie een verklaring waarom dit alleen voor een probleem zorgt bij de T2 waardes uitlezen?
Om jullie een idee te geven wat het doet in mijn grafiek (het hersteld zicht dus ook uit zichzelf):
Ik heb sinds eergisteren een Pi en P1 kabel aangesloten op mijn Landis+Gyr E350. Het is me gelukt met behulp van gejanssen zijn script om deze uit te lezen. Ik heb hierop het één en ander aangepast om zo ook de fases uit te kunnen lezen en te plotten naar grafieken. Zo far so good.
Er is alleen een raar probleem waar ik mijn vingers niet achter kan krijgen. Het script om P1 uit te lezen werkt als volgt:
1. Crontab start elke minuut het scriptje op om het resultaat weg te schrijven naar .txt file
2. in hetzelfde script worden de RRDtool DB's bijgewerkt
3. in hetzelfde script worden de grafieken ook meteen bijgewerkt
Dit werkt voor ALLE waardes correct, op 1 na. Dat is de T2 verbruikswaarde die vaak gewoon aanwezig is in het telegram, maar niet wordt weggeschreven in het tekstbestandje omdat het een half bericht is van het vorige telegram en de nieuwe.
Na wat onderzoek kwam ik erachter dat het probleem vermoedelijk zit in het volgende:
- Crontab start elke eerste seconde van de minuut
- Telegram wordt elke 10 seconde verstuurd
- Gisteren werd het telegram verstuurd op de volgende momenten: 03-13-23-33-43-53
In mijn mijn scriptje heb ik dan ook een sleep commando toegevoegd:
code:
1
2
3
| #!/bin/bash sleep 15 # Elke Minuut, uitlezen via P1 interface van de slimme meter |
Hiermee zorg zorg ik ervoor dat de P1 pas op seconde 16 wordt uitgelezen. Gisteren werkte dit weer een tijdje vlekkeloos, maar vandaag zag ik weer een mooie whitespot in mijn grafiek.
Ik heb dus de laptop weer aangekoppeld en aan de P1 gehangen en kwam tot een aparte ontdekking.
Vandaag wordt het telegram verstuurd op de volgende momenten: 04-14-24-34-44-54
Het uitzenden van het telegram is verschoven?

Op het moment dat het fout gaat, ziet het telegram er als volgt uit met de T2 waarde er dus in (1-0:1.8.2), maar ook wat waardes die zijn afgekapt.
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
| /XMX5LGBBFG1009228892 1-3:0.2.8(42) 0-0:1.0.0(160729120720S) 0-0:96.1.1(4530303330303033313630353437313135) 1-0:1.8.1(000005.539*kWh) 1-0:1.8.2(000007.480*kWh) 1-0:2.8.1(000000.000*kWh) 1-0:2.8.2(000000.000*kWh) 0-0:96.14.0(0002) 1-0:1.7.0(00.099*kW) 1-0:2.7.0(00.0 1-0:99.97.0(0)(0-0:96.7.19) 1-0:32.32.0(00001) 1-0:52.32.0(00000) 1-0:72.32.0(00000) 1-0:32.36.0(00000) 1-0:52.36.0(00000) 1-0:72.36.0(00000) 0-0:96.13.1() 0-0:96.13.0() 1-0:31.7.0(000*A) 1-0:51.7.0(001*A) 1-0:71.7.0(000*A) 1-0:21.7.0(00.051*kW) 1-0:41.7.0(00.036*kW) 1-0:61.7.0(00.010*kW) 1-0:22.7.0(00.000*kW) 1-0:42.7.0(00.000*kW) 1-0:62.7.0(00.000*kW) !920F /XMX5LGBBFG1009228892 |
Met als output
code:
1
2
3
4
5
| T1 Verbruik (Nacht) 000005.539 Huidig Verbruik 99 W Belasting Fase_1 51 W Belasting Fase_2 36 W Belasting Fase_3 10 W |
Als het goed gaat ziet hij er als volgt uit:
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
| /XMX5LGBBFG1009228892 1-3:0.2.8(42) 0-0:1.0.0(160729120119S) 0-0:96.1.1(4530303330303033313630353437313135) 1-0:1.8.1(000005.539*kWh) 1-0:1.8.2(000007.471*kWh) 1-0:2.8.1(000000.000*kWh) 1-0:2.8.2(000000.000*kWh) 0-0:96.14.0(0002) 1-0:1.7.0(00.071*kW) 1-0:2.7.0(00.000*kW) 0-0:96.7.21(00002) 0-0:96.7.9(00000) 1-0:99.97.0(0)(0-0:96.7.19) 1-0:32.32.0(00001) 1-0:52.32.0(00000) 1-0:72.32.0(00000) 1-0:32.36.0(00000) 1-0:52.36.0(00000) 1-0:72.36.0(00000) 0-0:96.13.1() 0-0:96.13.0() 1-0:31.7.0(000*A) 1-0:51.7.0(001*A) 1-0:71.7.0(000*A) 1-0:21.7.0(00.023*kW) 1-0:41.7.0(00.036*kW) 1-0:61.7.0(00.010*kW) 1-0:22.7.0(00.000*kW) 1-0:42.7.0(00.000*kW) 1-0:62.7.0(00.000*kW) |
met als output een correcte value. Zie ook
code:
1
2
3
4
5
6
| T1 Verbruik (Nacht) 000005.539 T2 Verbruik (Dag) 000007.471 Huidig Verbruik 71 W Belasting Fase_1 23 W Belasting Fase_2 36 W Belasting Fase_3 10 W |
Telegram output rechtstreeks uit slimme meter via laptop.
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
| /XMX5LGBBFG1009228892 1-3:0.2.8(42) 0-0:1.0.0(160729111829S) 0-0:96.1.1(4530303330303033313630353437313135) 1-0:1.8.1(000005.539*kWh) 1-0:1.8.2(000007.201*kWh) 1-0:2.8.1(000000.000*kWh) 1-0:2.8.2(000000.000*kWh) 0-0:96.14.0(0002) 1-0:1.7.0(02.028*kW) 1-0:2.7.0(00.000*kW) 0-0:96.7.21(00002) 0-0:96.7.9(00000) 1-0:99.97.0(0)(0-0:96.7.19) 1-0:32.32.0(00001) 1-0:52.32.0(00000) 1-0:72.32.0(00000) 1-0:32.36.0(00000) 1-0:52.36.0(00000) 1-0:72.36.0(00000) 0-0:96.13.1() 0-0:96.13.0() 1-0:31.7.0(009*A) 1-0:51.7.0(001*A) 1-0:71.7.0(000*A) 1-0:21.7.0(01.979*kW) 1-0:41.7.0(00.036*kW) 1-0:61.7.0(00.012*kW) 1-0:22.7.0(00.000*kW) 1-0:42.7.0(00.000*kW) 1-0:62.7.0(00.000*kW) !0F38 |
Is hier een slimme oplossing voor? En hebben jullie een verklaring waarom dit alleen voor een probleem zorgt bij de T2 waardes uitlezen?
Om jullie een idee te geven wat het doet in mijn grafiek (het hersteld zicht dus ook uit zichzelf):

Wat maakt het uit op welke seconde de boel verstuurd wordt? In je script wacht je gewoon tot je een volledig telegram binnen hebt toch? (1e regel beint met /, laatste begint met !)
Het lijkt er gewoon op dat je incomplete telegrammen probeert te parsen.
Het lijkt er gewoon op dat je incomplete telegrammen probeert te parsen.
Whatever
Het script van Ge Janssen is niet de meest ideale methode hiervoor. Iets als dit lijkt mij al een stuk beter: https://github.com/nrocco/smeterd
[ Voor 67% gewijzigd door ThinkPad op 29-07-2016 13:13 ]
Tnx, die had ik nog niet gevonden in mijn zoektocht, maar de oplossing voor mijn probleem was makkelijker dan gedacht....ThinkPadd schreef op vrijdag 29 juli 2016 @ 13:03:
Het script van Ge Janssen is niet de meest ideale methode hiervoor. Iets als dit lijkt mij al een stuk beter: https://github.com/nrocco/smeterd
door het volgende aan te passen van 0 naar 1:
code:
1
| ser.xonxoff=1 |
lijkt het probleem opgelost te zijn. Ik zit nu al een uur te kijken naar betrouwbare data zonder spikes of drops
Bijna goed, heeft me verdorie een uur gekost om uit te vissen dat je helegaar niet GPIO10 moet gebruiken (dat is namelijk pin 19 op je Raspberry19roland70 schreef op zaterdag 04 juni 2016 @ 10:24:
Geen usb gebruiken maar gewoon op de UART van de Raspberry (GPIO 10) dan is dat verhaal met rare teken weg. http://home.versatel.nl/rolandhendriks/rpilink1.html

Check anders deze maar eens
Dus top plaatje dit :

Alleen dus verkeerde benaming gebruikt (zelfde gaat om de website die je noemt) verder klopt alles dus lullig foutje hoor, ben nog steeds blij met de verdere uitleg
En werkt idd 10x beter dan een USB converter ertussen (en let wel tis ook nog eens stukken goedkoper transistor en 2 weerstanden kosten nog geen 25 cent.
Geen idee wat je gedaan hebt inmiddels maar ik heb ruim 15 meter kabel (cat5) tussen mijn meter en mijn Raspberry Pi liggen waarover het seriele signaal gaat. (Woon op een woonboot dus de meter staat op de wal en mijn raspberry ligt bij mij binnen dus moest een aardig eindje kabel tussen).!null schreef op woensdag 22 juni 2016 @ 13:39:
[...]
Maar USB is ook serieel en voltages zijn hetzelfde. Dus waarom zou ik de RJ11 verlengen?
Ik bedacht me gisteravond dat op USB niveau zitten er iets meer protocol dingetjes om eventueel wat opnieuw te sturen e.d. dus daar zou ik minder snel problemen verwachten dan op RJ11.
De andere oplossingen zijn wel leuk, maar ik wil iets van 5 a 7 meter verlengen en ik heb er al een kabelgoot lopen. Dus ik zou het wel moeten kunnen redden met gewoon langer kabeltje leggen, ook al is het laag voltage spul. Simpeler en goedkoper, en hou ik een RJ45 port over.
Ik bedenk me net dat ik op m'n werk ook wel eens een USB kabel ver heb verlengd met een zootje 2 meter usb verleng kabeltjes, ook voor een simpele lage snelheid seriele (console) verbinding. Werkt goed ook al is de afstand behoorlijk te noemen, dus dat ga ik hier ook maar doen.
Geen centje pijn. Geen idee hoelang je die seriele kabel kunt maken maar veel langer dan een USB kabel in ieder geval.
[ Voor 38% gewijzigd door cyclone op 30-07-2016 18:52 ]
Bij IT-ers gaat alles automatisch, maar niets vanzelf.
Linux is only free if your time has no value...
Ok bedankt voor de info. Had hem nog niet verhuisd
Ga het inderdaad wel serieel verlengen.
Ga het inderdaad wel serieel verlengen.
Ampera-e (60kWh) -> (66kWh)
Hey dat is veel mooier dan met zo'n usb/serieel convertertje. waar kan ik van die kabels kopen die je op de GPIO drukt? (hoe heten die dingen jumper kabeltjes ofzo)
Edit: Gevonden: https://www.conrad.nl/nl/...el-rb-cb3-25-1182193.html
Edit: Gevonden: https://www.conrad.nl/nl/...el-rb-cb3-25-1182193.html
[ Voor 22% gewijzigd door Tylen op 01-08-2016 14:19 ]
“Choose a job you love, and you will never have to work a day in your life.”
Die dingen heten dupont kabels en je kan ze voor een fractie van de prijs die conrad heeft bestellen op :Tylen schreef op maandag 01 augustus 2016 @ 14:18:
Hey dat is veel mooier dan met zo'n usb/serieel convertertje. waar kan ik van die kabels kopen die je op de GPIO drukt? (hoe heten die dingen jumper kabeltjes ofzo)
Edit: Gevonden: https://www.conrad.nl/nl/...el-rb-cb3-25-1182193.html
Deze welbekende site :)
Kun je daar ook meteen de transistoren en weerstanden bestellen.
Scheelt je een hoop centjes.
En voordeel wat je dan ook hebt is een stabielere uitlezing, mijn USB adapter gaf regelmatig de melding :
Jul 26 15:40:04 raspberrypi kernel: [3531498.251158] ttyUSB0: 1 input overrun(s)
Jul 26 19:40:04 raspberrypi kernel: [3545898.828206] ttyUSB0: 1 input overrun(s)
Jul 27 06:10:04 raspberrypi kernel: [3583698.736902] ttyUSB0: 1 input overrun(s)
En dat leverde dan weer gaten op in de monitoring, nu ik de UART van de Raspberry gebruik mis ik geen enkele uitlezing meer.
[ Voor 44% gewijzigd door cyclone op 01-08-2016 14:49 ]
Bij IT-ers gaat alles automatisch, maar niets vanzelf.
Linux is only free if your time has no value...
Cool thanks.
Ben nu trouwens met een ander project bezig.
Heb een Analoog naar Digitaal convertje gekocht voor de RPi (ADC) met 8 analoge ingangen.
Daarop ga ik 8x een ACS712 aansluiten.
Deze stroommeters komen op 8 verschillende groepen uit de meterkast en zo kan ik dus de stroom (opgenomen wattage wil ik plotten) meter per groep.
Gewoon omdat het kan.
Nu nog een open source home automation zoeken. Ik vind emoncms niet zo mooi en het liefst heb ik een Fibaro Home Center 2 hangen, maar die zijn zo duur. Dus zit aan deze te denken: http://www.homegenie.it/
Ben nu trouwens met een ander project bezig.
Heb een Analoog naar Digitaal convertje gekocht voor de RPi (ADC) met 8 analoge ingangen.
Daarop ga ik 8x een ACS712 aansluiten.
Deze stroommeters komen op 8 verschillende groepen uit de meterkast en zo kan ik dus de stroom (opgenomen wattage wil ik plotten) meter per groep.
Gewoon omdat het kan.
Nu nog een open source home automation zoeken. Ik vind emoncms niet zo mooi en het liefst heb ik een Fibaro Home Center 2 hangen, maar die zijn zo duur. Dus zit aan deze te denken: http://www.homegenie.it/
[ Voor 95% gewijzigd door Tylen op 03-08-2016 11:44 ]
“Choose a job you love, and you will never have to work a day in your life.”
Hier het script wat ik gebruik om de P1-poort van mijn slimme meter uit te lezen: smartmeter-influxdb.py --> nieuwe versie die ook CRC controleert: hier Helaas, het checken van CRC werkt opzich wel, maar ik krijg nog steeds incorrecte data terug. Het is beter om een nieuw P1 > InfluxDB script te schrijven op basis van https://github.com/nrocco/smeterd denk ik.
Ik heb het script niet zelf gemaakt dus kan er niet inhoudelijk op reageren waarom iets op manier A of manier B is gedaan
De data wordt door het script weggeschreven naar InfluxDB. De verzamelde data maak ik dan vervolgens met Grafana weer grafiekjes mee.
Om het script automatisch te starten bij booten van m'n systeem en automatisch te laten herstarten bij een evt. crash gebruik ik supervisor. De config staat hier: smartmeter-influxdb.conf.
Je meter spuugt elke 10 seconden een nieuw telegram uit en het script slaat deze allemaal op. Omdat dit natuurlijk vrij snel ruimte gaat innemen is het verstandig om in InfluxDB een zgn. 'Retention Policy' in te stellen.
Ruwe data ouder dan 30 dagen wordt daarmee automatisch weggegooid.
Om de kWh en m3 per dag te berekenen kun je een 'Continuous Query' instellen:
Dat geeft uiteindelijk dit resultaat:

Klik voor groter formaat
Dat Grafana dashboard heb ik ook even een export van gemaakt: Grafana_dashboard_export.json
Helaas is het mij nog niet gelukt om totalen per maand te maken, InfluxDB kan namelijk alleen groepen per interval en niet per absolute periodes, zie ook GitHub. Een GROUP BY per 4 weken of 30 dagen zou kunnen, maar niet elke maand duurt even lang, dus het blijft behelpen omdat de weergave niet gaat kloppen met hoe je het zelf zou berekenen.
Ik heb het script niet zelf gemaakt dus kan er niet inhoudelijk op reageren waarom iets op manier A of manier B is gedaan
De data wordt door het script weggeschreven naar InfluxDB. De verzamelde data maak ik dan vervolgens met Grafana weer grafiekjes mee.
Om het script automatisch te starten bij booten van m'n systeem en automatisch te laten herstarten bij een evt. crash gebruik ik supervisor. De config staat hier: smartmeter-influxdb.conf.
Je meter spuugt elke 10 seconden een nieuw telegram uit en het script slaat deze allemaal op. Omdat dit natuurlijk vrij snel ruimte gaat innemen is het verstandig om in InfluxDB een zgn. 'Retention Policy' in te stellen.
SQL:
1
| CREATE RETENTION POLICY raw ON p1smartmeter DURATION 30d REPLICATION 1; |
Ruwe data ouder dan 30 dagen wordt daarmee automatisch weggegooid.
Om de kWh en m3 per dag te berekenen kun je een 'Continuous Query' instellen:
SQL:
1
| CREATE CONTINUOUS QUERY cq_smartmeter_daily ON p1smartmeter RESAMPLE EVERY 15m BEGIN SELECT min("+T") AS "+T_min", max("+T") AS "+T_max", spread("+T") AS "+T_spread", min("+T1") AS "+T1_min", max("+T1") AS "+T1_max", spread("+T1") AS "+T1_spread", min("+T2") AS "+T2_min", max("+T2") AS "+T2_max", spread("+T2") AS "+T2_spread", min(G) AS G_min, max(G) AS G_max, spread(G) AS G_spread INTO p1smartmeter."default".smartmeter_daily FROM p1smartmeter.raw.smartmeter GROUP BY time(1d) END |
Dat geeft uiteindelijk dit resultaat:

Klik voor groter formaat
Dat Grafana dashboard heb ik ook even een export van gemaakt: Grafana_dashboard_export.json
Helaas is het mij nog niet gelukt om totalen per maand te maken, InfluxDB kan namelijk alleen groepen per interval en niet per absolute periodes, zie ook GitHub. Een GROUP BY per 4 weken of 30 dagen zou kunnen, maar niet elke maand duurt even lang, dus het blijft behelpen omdat de weergave niet gaat kloppen met hoe je het zelf zou berekenen.
[ Voor 68% gewijzigd door ThinkPad op 01-01-2017 21:22 . Reden: Dode links gefixed ]
Netjes. Werkt deze ook samen met Domoticz?
Nee, dit staat helemaal op zichzelf van welke domotica oplossing dan ook.
Als je iets in Domoticz wilt tonen (verbruik vandaag ofzo) dan zou ik zelf al een script maken wat een query uitvoert en het resultaat daarvan in een virtuele sensor van Domoticz stopt.
De grafieken die uit Grafana komen vind ik persoonlijk 10x beter dan de grafieken die Domoticz uitspuugt
Als je iets in Domoticz wilt tonen (verbruik vandaag ofzo) dan zou ik zelf al een script maken wat een query uitvoert en het resultaat daarvan in een virtuele sensor van Domoticz stopt.
De grafieken die uit Grafana komen vind ik persoonlijk 10x beter dan de grafieken die Domoticz uitspuugt
daar heb je gelijk in. het zijn niet de mooiste nee.
ik ga hier binnenkort eens mee spelen!
ik ga hier binnenkort eens mee spelen!
Daarom zit ik ook naar Fibaro HC2 of HomeGenie te kijken
Vind Domoticz lelijk.
“Choose a job you love, and you will never have to work a day in your life.”
Crap...
Ik dacht even het script te kunnen draaien:
Ik gebruik een gekochte USB > P1 kabel...
Ik dacht even het script te kunnen draaien:
code:
1
2
3
4
| Traceback (most recent call last): File "smartmeter-influxdb.py", line 9, in <module> import serial ImportError: No module named serial |
Ik gebruik een gekochte USB > P1 kabel...
Even bij die verkoper een script vragen. Of zelf maken. Is goed te doen hoor.
“Choose a job you love, and you will never have to work a day in your life.”
Volgens mij: sudo apt-get install python-serial.
18950Wp🌞, Atlantic 270V3💧, Pana 5J🔥. Zendure 2400AC 11,5kWh🔋,Hyundai Kona 64kWh 🚗, Peblar Home ⛽
sudo apt-get install python-serial
En anders kan
pip install pyserial
[ Voor 9% gewijzigd door ThinkPad op 04-08-2016 21:52 ]
Het serial deel is gelukt. Echter als ik het script draai gebeurt er niets. Geen data naar Influx. Met ctrl-C kan ik het script stoppen, dan krijg ik output (zie onder) en crasht Domoticz... enkel een reboot krijgt Domoticz weer aan de gang.
Voor ik het script draaide heb ik wel in domoticz de hardware en aanverwanten van de P1 meter verwijderd. Dus er zou geen koppeling moeten zijn.
Voor ik het script draaide heb ik wel in domoticz de hardware en aanverwanten van de P1 meter verwijderd. Dus er zou geen koppeling moeten zijn.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| pi@raspberrypi:~/domoticz/scripts$ python smartmeter-influxdb.py CTraceback (most recent call last): File "smartmeter-influxdb.py", line 227, in <module> sys.exit(main()) File "smartmeter-influxdb.py", line 223, in main start_monitor(args) File "smartmeter-influxdb.py", line 185, in start_monitor datagram = meter.read_one_datagram() File "smartmeter-influxdb.py", line 61, in read_one_datagram line = self.serial.readline().strip() File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 446, in read ready,_,_ = select.select([self.fd],[],[], self._timeout) KeyboardInterrupt |
Geen idee, zoals ik zei heb ik het script niet zelf gemaakt dus wat er inhoudelijk verkeerd gaat is lastig te zien.
Wat ik erg vreemd vind is dat je Domoticz eruit klapt. Heb je na het verwijderen van de P1 uit Domoticz ook Domoticz zelf eens opnieuw gestart? Misschien houdt Domoticz de P1-poort nog bezet.
En kloppen de InfluxDB credentials ook?
Wat ik erg vreemd vind is dat je Domoticz eruit klapt. Heb je na het verwijderen van de P1 uit Domoticz ook Domoticz zelf eens opnieuw gestart? Misschien houdt Domoticz de P1-poort nog bezet.
En kloppen de InfluxDB credentials ook?
het is mij gelukt! Ik ben inmiddels vrij thuis in de code, want heb ook het een en ander moeten aanpassen.. uiteindelijk de code zo kunnen gebruiken alleen wat dependencies geupdate:
Wat bij mij heeft gewerkt:
pip installeren en via pip de influxdb koppeling updaten..
vervolgens het script als root runnen. met het commande -v in plaats van -q krijg je wat meer info, dus kun je zien of hij je meter uitlees of dat het fout gaat bij de influxdb koppeling. jij runt enkel het script. Je moet/kan wat argumenten toevoegen:
ttyAMA0 --> Je seriele poort: bij mij AMA0, als je een USB serial kabel gebruikt ttyUSB0 of 1 of 2
-b --> Baudrate
-q --> quiet mode. goed voor als het werk. voor debugging kun je beter -v gebruiken
hostname --> weglaten voor localhost of vervangen voor de hostname die je wilt gebruiken
edit:
Inmiddels ben ik bijna klaar met het ombouwen van de instructie voor als je ook zonnepanelen hebt en dus ook teruglevering wilt kunnen zien in Grafana. Indien er interesse is, dan zal ik dat posten.
Het betreft een aanpassing in het Grafana dashboard en een toevoeging aan de continuous query.
Wat bij mij heeft gewerkt:
pip installeren en via pip de influxdb koppeling updaten..
code:
1
2
| sudo apt get install python pip sudo pip install --upgrade influxdb |
vervolgens het script als root runnen. met het commande -v in plaats van -q krijg je wat meer info, dus kun je zien of hij je meter uitlees of dat het fout gaat bij de influxdb koppeling. jij runt enkel het script. Je moet/kan wat argumenten toevoegen:
code:
1
| sudo python smartmeter-influxdb.py -b 115200 -q -d /dev/ttyAMA0 --influx-retention-policy raw --influx-hostname 192.168.1.189 |
ttyAMA0 --> Je seriele poort: bij mij AMA0, als je een USB serial kabel gebruikt ttyUSB0 of 1 of 2
-b --> Baudrate
-q --> quiet mode. goed voor als het werk. voor debugging kun je beter -v gebruiken
hostname --> weglaten voor localhost of vervangen voor de hostname die je wilt gebruiken
edit:
Inmiddels ben ik bijna klaar met het ombouwen van de instructie voor als je ook zonnepanelen hebt en dus ook teruglevering wilt kunnen zien in Grafana. Indien er interesse is, dan zal ik dat posten.
Het betreft een aanpassing in het Grafana dashboard en een toevoeging aan de continuous query.
[ Voor 45% gewijzigd door prein2 op 17-08-2016 15:11 ]
Goedzo!prein2 schreef op woensdag 17 augustus 2016 @ 14:41:
het is mij gelukt!
[...]
Inmiddels ben ik bijna klaar met het ombouwen van de instructie voor als je ook zonnepanelen hebt en dus ook teruglevering wilt kunnen zien in Grafana. Indien er interesse is, dan zal ik dat posten.
Het betreft een aanpassing in het Grafana dashboard en een toevoeging aan de continuous query.
En die uitleg is altijd welkom. Ik heb zelf geen zonnepanelen maar het is altijd leuk om te zien hoe het werkt en er is vast wel iemand die het kan gebruiken.
Die uitleg gaat er komen. even een paar dagen wachten om te kijken of de historische info ook goed werkt.
Verwijderd
Een vraag mbt de historie in een slimme meter (Landis Gyr). Ben een beginnende forum-gebruiker, dus weet niet of deze vraag zo tussendoor mag.....
Heeft een slimme meter zelf ook een buffer waarin van een x periode de gegevens opgeslagen blijven? Op die manier zou er de mogelijkheid zijn om bijvoorbeeld 1 keer per dag die gegevens ff op te vragen middels b.v. een Raspberry Pi.
Heeft een slimme meter zelf ook een buffer waarin van een x periode de gegevens opgeslagen blijven? Op die manier zou er de mogelijkheid zijn om bijvoorbeeld 1 keer per dag die gegevens ff op te vragen middels b.v. een Raspberry Pi.
Nee, die mogelijkheid is er niet. Als je een grafiek wilt plotten van het actuele verbruik (Watt) over de hele dag, dan zul je de hele dag de meter moeten blijven uitlezen. Gelukkig is dit met een Raspberry o.i.d. prima te doen.Verwijderd schreef op donderdag 18 augustus 2016 @ 00:08:
[...]
Heeft een slimme meter zelf ook een buffer waarin van een x periode de gegevens opgeslagen blijven? Op die manier zou er de mogelijkheid zijn om bijvoorbeeld 1 keer per dag die gegevens ff op te vragen middels b.v. een Raspberry Pi.
Verwijderd
Ik wist dat ik het ergens gezien heb en zojuist teruggevonden in de handleiding van de slimme meter:ThinkPadd schreef op donderdag 18 augustus 2016 @ 10:22:
[...]
Nee, die mogelijkheid is er niet. Als je een grafiek wilt plotten van het actuele verbruik (Watt) over de hele dag, dan zul je de hele dag de meter moeten blijven uitlezen. Gelukkig is dit met een Raspberry o.i.d. prima te doen.
Kwartierwaarden elektriciteit in de meter
De elektriciteitsmeter slaat ieder kwartier de
standen op. De standen kunnen 10 dagen in
de meter bewaard worden en worden daarna
overschreven.
Op deze manier haalt de leverancier ook de kwartierstanden op als je daar als klant toestemming voor geeft. Kunnen die gegevens dan niet via de P1-poort uitgelezen worden?
ThinkPadd schreef op donderdag 04 augustus 2016 @ 11:06:
Je meter spuugt elke 10 seconden een nieuw telegram uit en het script slaat deze allemaal op. Omdat dit natuurlijk vrij snel ruimte gaat innemen is het verstandig om in InfluxDB een zgn. 'Retention Policy' in te stellen.
SQL:
1 CREATE RETENTION POLICY raw ON p1smartmeter DURATION 30d REPLICATION 1;
Ruwe data ouder dan 30 dagen wordt daarmee automatisch weggegooid.
Ik heb twee maanden aan ruwe data in m'n database, een drietupel voor energie, een waarde voor gas. Dat kost welgeteld 2,9 MB op disk. Ofwel 1,5 MB per maand. Ik zie geen reden om data weg te gooien.
Overigens heb ik de zaak net weer aangeslingerd, de data nam in het oude databaseformaat (< 0.1.0) een factor tien meer in beslag. Maar zelfs dan is het nog prima te behappen.
Ik gebruik deze pythoncode om P1-data in InfluxDB te laden.
Mijn script is minder polished dan het script van ThinkPad (lees: niet), maar functioneel iets correcter - ik hanteer de timestamps zoals ze van de meter zelf komen. Dat is iets accurater in het geval van electra (scheelt een afwijking van 0-10s), maar als je gasmeter maar een keer per uur verse data levert dan levert dat netjes 1 datapunt op, in plaats van 600 dezelfde datapunten met een andere timestamp.
Bonus: CRC checks, ik meen wel eens brakke data te hebben ontvangen.
Het feit dat Grafana/InfluxDB niet per kalendermaand kan aggregaten is inderdaad vervelend, hoop dat daar snel een oplossing voor komt.
ik kom er even niet uit:
Ik wil mijn laatste gasmeterstand opvragen. Dat kan door de query:
In python krijg ik dit als (ik denk) Json terug:
Hoe krijg ik die waarde van 47.456 (mijn gasmeterstand), nu uit de JSON (om naar mindergas te sturen?!)
Ik wil mijn laatste gasmeterstand opvragen. Dat kan door de query:
code:
1
| SELECT last("G") FROM "raw"."smartmeter" |
In python krijg ik dit als (ik denk) Json terug:
code:
1
| ResultSet({'(u'smartmeter', None)': [{u'last': 47.456, u'time': u'2016-08-22T18:21:35.044134848Z'}]}) |
Hoe krijg ik die waarde van 47.456 (mijn gasmeterstand), nu uit de JSON (om naar mindergas te sturen?!)
Dat lijkt me een beetje Python 101, tijd voor een goed(e) boek/tutorial/cursus? 
Ik zie geen JSON, wel een ResultSet-object. Volgens de (karige) handleiding krijg je met ResultSet.get_points() een generator voor alle points terug, zonder dat men specificeert hoe die points eruitzien - gewoon die dict die je ook al terugziet in de repr-representatie van je ResultSet-object lijkt me.
Jij gebruikt de last-functie, dus dan is er maar een datapunt. Gokje, zoiets?
Of in een regel:
Ik zie geen JSON, wel een ResultSet-object. Volgens de (karige) handleiding krijg je met ResultSet.get_points() een generator voor alle points terug, zonder dat men specificeert hoe die points eruitzien - gewoon die dict die je ook al terugziet in de repr-representatie van je ResultSet-object lijkt me.
Jij gebruikt de last-functie, dus dan is er maar een datapunt. Gokje, zoiets?
Python:
1
2
3
4
| points = rs.get_points() print points print points[0] print points[0]['last'] |
Of in een regel:
Python:
1
| print rs.get_points()[0]['last'] |
Ik was dus volledig verkeerd op de been gezet bij de handleiding van influxdb die aangeeft resultaten in JSON te geven, en dus verkeerde zoektermen.
Ter referentie: Het juiste commando blijkt:
points=list(rs.get_points(measurement='smartmeter'))
print points[0]['last']
Ter referentie: Het juiste commando blijkt:
points=list(rs.get_points(measurement='smartmeter'))
print points[0]['last']
Voor mijn projectje lees ik de slimme meter uit met een Arduino Nano met ethernet shield, deze post daarna de gegevens op mijn Raspberry Pi. Voor het uitlezen van de slimme meter heb ik code van blog.hekkers.net gebruik maar aangepast voor mijn doel.
De nieuwe versie van mijn site herstart automatisch de Arduino als het geheugengebruik hoog wordt. De library van de ethercard geeft geheugen van mislukte verzoeken niet vrij. Deze werkt inmiddels al meer dan een week probleemloos. Hij stuurt ook de Gas waardes door van mijn specifieke Iskra. De code verwacht serieel 7E1 rechtstreeks op pin 7 van de Arduino Nano, de rest doet de code. De data word als GET request aangeboden aan het IP adres wat in de source staat.
De RPi gaat een energie opslag systeempje aansturen, zo ben ik lekker aan het programmeren geweest en komen er al wat aanstuur beslissingen uit

Een Meanwell Led Driver (HLG-185H-30A) als accu lader en een Involar MAC250 om terug te leveren moeten straks de energie gaan verzetten. De accu is nog in aanbouw, de PWM regelaars zijn nog onderweg, een PWM aansturing is wel geprogrammeerd maar moet nog op de RPi gestoken worden.
Lekker bezig
De nieuwe versie van mijn site herstart automatisch de Arduino als het geheugengebruik hoog wordt. De library van de ethercard geeft geheugen van mislukte verzoeken niet vrij. Deze werkt inmiddels al meer dan een week probleemloos. Hij stuurt ook de Gas waardes door van mijn specifieke Iskra. De code verwacht serieel 7E1 rechtstreeks op pin 7 van de Arduino Nano, de rest doet de code. De data word als GET request aangeboden aan het IP adres wat in de source staat.
De RPi gaat een energie opslag systeempje aansturen, zo ben ik lekker aan het programmeren geweest en komen er al wat aanstuur beslissingen uit

Een Meanwell Led Driver (HLG-185H-30A) als accu lader en een Involar MAC250 om terug te leveren moeten straks de energie gaan verzetten. De accu is nog in aanbouw, de PWM regelaars zijn nog onderweg, een PWM aansturing is wel geprogrammeerd maar moet nog op de RPi gestoken worden.
Lekker bezig
Hield het forum al een tijdje in de gaten en uiteindelijk de knoop doorgehakt om ook een slimme meter te bestellen.
Afgelopen dinsdag de meter ontvangen en gelijk de waardes proberen uit te lezen, maar tot nu toe helaas zonder resultaat. Wellicht dat jullie me een duw in de richting kunnen geven:
Landis + Gyr E350 (ZMF110) met DSMR 4.2.
Mijn eerste idee was om dit alles uit te lezen middels een nodemcu esp 8266 module via wifi, maar toen die niet wilde werken heb ik alles rechtstreeks aangesloten via een Eminent EM1016 USB > Com adapter en zelf een kabel geknepen met 6 polige RJ11. Pinout die ik heb gebruikt is:
2 = RTS
3 = GND
5 = TxD
In mijn optiek moet ik zelfs als het signaal niet inverted komt met 115200 8N1 iets moeten zien, maar ik krijg nergens resultaat, niet via de nodemcu als via de oude cisco kabel.
De NodeMCU heb ik met twee verschillende schema's proberen aan te sluiten waaronder: Thedr in "Slimme meter uitlezen via P1-poort"
Inmiddels heb ik een ticket ingeschoten bij Enexis om te achterhalen of de poort uberhaupt aan staat, of heb ik me ergens vergist en weten jullie raad?
Afgelopen dinsdag de meter ontvangen en gelijk de waardes proberen uit te lezen, maar tot nu toe helaas zonder resultaat. Wellicht dat jullie me een duw in de richting kunnen geven:
Landis + Gyr E350 (ZMF110) met DSMR 4.2.
Mijn eerste idee was om dit alles uit te lezen middels een nodemcu esp 8266 module via wifi, maar toen die niet wilde werken heb ik alles rechtstreeks aangesloten via een Eminent EM1016 USB > Com adapter en zelf een kabel geknepen met 6 polige RJ11. Pinout die ik heb gebruikt is:
2 = RTS
3 = GND
5 = TxD
In mijn optiek moet ik zelfs als het signaal niet inverted komt met 115200 8N1 iets moeten zien, maar ik krijg nergens resultaat, niet via de nodemcu als via de oude cisco kabel.
De NodeMCU heb ik met twee verschillende schema's proberen aan te sluiten waaronder: Thedr in "Slimme meter uitlezen via P1-poort"
Inmiddels heb ik een ticket ingeschoten bij Enexis om te achterhalen of de poort uberhaupt aan staat, of heb ik me ergens vergist en weten jullie raad?
Heb geen slimme meter maar heb je hier iets aan?CerielTjuh schreef op zaterdag 03 september 2016 @ 19:30:
Hield het forum al een tijdje in de gaten en uiteindelijk de knoop doorgehakt om ook een slimme meter te bestellen.
Afgelopen dinsdag de meter ontvangen en gelijk de waardes proberen uit te lezen, maar tot nu toe helaas zonder resultaat. Wellicht dat jullie me een duw in de richting kunnen geven:
Landis + Gyr E350 (ZMF110) met DSMR 4.2.
Mijn eerste idee was om dit alles uit te lezen middels een nodemcu esp 8266 module via wifi, maar toen die niet wilde werken heb ik alles rechtstreeks aangesloten via een Eminent EM1016 USB > Com adapter en zelf een kabel geknepen met 6 polige RJ11. Pinout die ik heb gebruikt is:
2 = RTS
3 = GND
5 = TxD
In mijn optiek moet ik zelfs als het signaal niet inverted komt met 115200 8N1 iets moeten zien, maar ik krijg nergens resultaat, niet via de nodemcu als via de oude cisco kabel.
De NodeMCU heb ik met twee verschillende schema's proberen aan te sluiten waaronder: Thedr in "Slimme meter uitlezen via P1-poort"
Inmiddels heb ik een ticket ingeschoten bij Enexis om te achterhalen of de poort uberhaupt aan staat, of heb ik me ergens vergist en weten jullie raad?
Koenradus in "Het grote "jouw productie" topic - Deel 2"
sjimmie in "Slimme meter uitlezen via P1-poort"
Ik gebruik de volgende pinout:

Toegevoegd op de meeste schema's die je op internet vindt is de 1k pull-up weerstand tussen TxD en 5V, omdat de TxD een open-collector output is bij de E350.
Volgens mij staat de P1-poort trouwens altijd aan dus dat ticket bij Enexis zal weinig opleveren.
Toegevoegd op de meeste schema's die je op internet vindt is de 1k pull-up weerstand tussen TxD en 5V, omdat de TxD een open-collector output is bij de E350.
Volgens mij staat de P1-poort trouwens altijd aan dus dat ticket bij Enexis zal weinig opleveren.
[ Voor 65% gewijzigd door Koenradus op 05-09-2016 15:01 ]
2.160kWp Zuid-West: http://pvoutput.org/intraday.jsp?id=52262&sid=47507
Heb je ook de RX en TX op de ESP/NodeMCU een keer omgewisseld? Wil per leverancier nog wel eens verschillen wat de betekenis is van deze pinnenCerielTjuh schreef op zaterdag 03 september 2016 @ 19:30:
Hield het forum al een tijdje in de gaten en uiteindelijk de knoop doorgehakt om ook een slimme meter te bestellen.
Afgelopen dinsdag de meter ontvangen en gelijk de waardes proberen uit te lezen, maar tot nu toe helaas zonder resultaat. Wellicht dat jullie me een duw in de richting kunnen geven:
Landis + Gyr E350 (ZMF110) met DSMR 4.2.
Mijn eerste idee was om dit alles uit te lezen middels een nodemcu esp 8266 module via wifi, maar toen die niet wilde werken heb ik alles rechtstreeks aangesloten via een Eminent EM1016 USB > Com adapter en zelf een kabel geknepen met 6 polige RJ11. Pinout die ik heb gebruikt is:
2 = RTS
3 = GND
5 = TxD
In mijn optiek moet ik zelfs als het signaal niet inverted komt met 115200 8N1 iets moeten zien, maar ik krijg nergens resultaat, niet via de nodemcu als via de oude cisco kabel.
De NodeMCU heb ik met twee verschillende schema's proberen aan te sluiten waaronder: Thedr in "Slimme meter uitlezen via P1-poort"
Inmiddels heb ik een ticket ingeschoten bij Enexis om te achterhalen of de poort uberhaupt aan staat, of heb ik me ergens vergist en weten jullie raad?

In principe zou je met de ESP op de pc aangesloten via USB ook de data moeten kunnen zien als je een serial monitor start (bijvoorbeeld die uit de Arduino IDE).
Heb uiteindelijk een kant en klare unit gekocht bij Romix, hij gaf me tevens een schema waarmee het wel moet lukken, ga vrijdag avond weer aan de slag, het MOET en ZAL me lukken
Sinds ik een slimme meter heb en wat meer met elektronica ben begonnen ben ik hier ook geïnteresseerd in geraakt.
Heb deze onlangs besteld: https://www.aliexpress.co...-Adapter/32629145941.html (HL-340) zodat ik het niet hoefde te inverteren. Kapje is wel vreselijk trouwens. Had achteraf beter kunnen solderen aan een Seriele connector die ik ook had liggen, maar bedacht het pas toen ik het kapje al had kapotgeknipt. Wel een hels werk, en scheurde uiteindelijk bijna een paar baantjes kapot, gelukkig met genoeg soldeer heb ik de RJ11 aan nog een deel vast kunnen maken.
Zat even te pielen met de instellingen in Putty, maar met:
Ik krijg dit soort output:
Ik vroeg me af, ik heb geen pull-up-weerstand er tussen, want die heb ik helaas hier nog niet liggen. Maar kan ik er vanuit gaan dat dit blijkbaar niet nodig is met mijn slimme meter als het nu al dit soort output geeft?
Heb deze onlangs besteld: https://www.aliexpress.co...-Adapter/32629145941.html (HL-340) zodat ik het niet hoefde te inverteren. Kapje is wel vreselijk trouwens. Had achteraf beter kunnen solderen aan een Seriele connector die ik ook had liggen, maar bedacht het pas toen ik het kapje al had kapotgeknipt. Wel een hels werk, en scheurde uiteindelijk bijna een paar baantjes kapot, gelukkig met genoeg soldeer heb ik de RJ11 aan nog een deel vast kunnen maken.
Zat even te pielen met de instellingen in Putty, maar met:
Heb ik hem meteen goed.– Baudrate: 115200
– Data bits: 8
– Parity: none
– Stop bits: 1
Ik krijg dit soort output:
/KFM5KAIFA-METER 1-3:0.2.8(42) 0-0:1.0.0(160911170718S) 0-0:96.1.1() 1-0:1.8.1(000320.943*kWh) 1-0:1.8.2(000343.330*kWh) 1-0:2.8.1(000000.000*kWh) 1-0:2.8.2(000000.000*kWh) 0-0:96.14.0(0001) 1-0:1.7.0(00.561*kW) 1-0:2.7.0(00.000*kW) 0-0:96.7.21(00001) 0-0:96.7.9(00001) 1-0:99.97.0(1)(0-0:96.7.19)(000101000001W)(2147483647*s) 1-0:32.32.0(00000) 1-0:32.36.0(00000) 0-0:96.13.1() 0-0:96.13.0() 1-0:31.7.0(002*A) 1-0:21.7.0(00.561*kW) 1-0:22.7.0(00.000*kW) 0-1:24.1.0(003) 0-1:96.1.0(4730303139333430323738323130363136) 0-1:24.2.1(160911170000S)(00024.665*m3) !55CC
Ik vroeg me af, ik heb geen pull-up-weerstand er tussen, want die heb ik helaas hier nog niet liggen. Maar kan ik er vanuit gaan dat dit blijkbaar niet nodig is met mijn slimme meter als het nu al dit soort output geeft?
[ Voor 82% gewijzigd door ThinkPad op 12-09-2016 16:00 . Reden: Bericht ingekort, één outputlog van je meter is voldoende ;-) ]
Denk om uw spatiegebruik. Dit scheelt Tweakers.net kostbare databaseruimte! | Groninger en geïnteresseerd in Domotica? Kom naar DomoticaGrunn
Ik heb het vermoeden dat in onderstaande code een tikfout zit.
Het uitlezen van de slimmem meter gaat prima, ik krijg netjes een P1 telegram binnen.
De variablen waar ik de data in zet, worden netjes getoond.
Echter wordt de data niet weggeschreven naar de database.
De query los wegschrijven via MySQL Workbench is ook geen probleem.
Eerdere testen waren ook geen probleem, toen kon ik wel data wegschrijven naar de database.
Zoals aangegeven, ik vermoed dat er ergens een tikfout staat, maar ik kan hem niet vinden.
Het uitlezen van de slimmem meter gaat prima, ik krijg netjes een P1 telegram binnen.
De variablen waar ik de data in zet, worden netjes getoond.
Echter wordt de data niet weggeschreven naar de database.
De query los wegschrijven via MySQL Workbench is ook geen probleem.
Eerdere testen waren ook geen probleem, toen kon ik wel data wegschrijven naar de database.
Zoals aangegeven, ik vermoed dat er ergens een tikfout staat, maar ik kan hem niet vinden.
Python:
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
| import sys import serial import MySQLdb ser = serial.Serial() ser.baudrate = 115200 ser.bytesize=serial.EIGHTBITS ser.parity=serial.PARITY_NONE ser.stopbits=serial.STOPBITS_ONE ser.xonxoff=1 ser.rtscts=0 ser.timeout=20 ser.port="/dev/ttyUSB0" try: ser.open() except: sys.exit ("Fout bij het openen van %s." % ser.name) p1_teller=0 while p1_teller < 23: p1_line='' try: p1_raw = ser.readline() except: sys.exit ("Seriele poort kan niet uitgelezen worden." % ser.name) if p1_raw[0:9] == "1-0:1.8.1": AfgenomenT1 = p1_raw[10:20] print "Afgenomen T1 :", AfgenomenT1 if p1_raw[0:9] == "1-0:1.8.2": AfgenomenT2 = p1_raw[10:20] print "Afgenomen T2 :", AfgenomenT2 if p1_raw[0:9] == "1-0:2.8.1": GeleverdT1 = p1_raw[10:20] print "Geleverd T1 :", GeleverdT1 if p1_raw[0:9] == "1-0:2.8.2": GeleverdT2 = p1_raw[10:20] print "Geleverd T2 :", GeleverdT2 if p1_raw[0:9] == "0-0:96.14": TariefStand = p1_raw[12:16] print "Tariefstand :", TariefStand if p1_raw[0:9] == "1-0:1.7.0": HuidigVerbruik = p1_raw[10:16] print "HuidigVerbruik :", HuidigVerbruik if p1_raw[0:9] == "1-0:2.7.0": HuidigGeleverd = p1_raw[10:16] print "HuidigGeleverd :", HuidigGeleverd if p1_raw[0:11] == "0-0:96.7.21": AantalStoringenInFase = p1_raw[12:17] print "Aantal storingen in Fase :", AantalStoringenInFase if p1_raw[0:10] == "0-0:96.7.9": AantalLangdurigeStoringen = p1_raw[11:16] print "Aantal loangdurige storingen :", AantalLangdurigeStoringen p1_teller = p1_teller + 1 conn = MySQLdb.connect(host= "192.168.2.127", user="****", passwd="****", db="****") cur = conn.cursor() try: cur.execute("INSERT INTO `P1db`.`P1uitlezen` (`AfgenomenT1`, `AfgenomenT2`, `GeleverdT1`, `GeleverdT2`, `Tariefstand`, `HuidigVerbruik`, `HuidigGeleverd`, `AantalStoringenInFase`, `AantalLangdurigeStoringen`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s);", (AfgenomenT1, AfgenomenT2, GeleverdT1, GeleverdT2, Tariefstand, HuidigVerbruik, HuidigGeleverd, AantalStoringenInFase, AantalLangdurigeStoringen)) conn.commit() except: conn.rollback() conn.close() try: ser.close() except: sys.exit ("Oeps. Programma afgebroken. Kan de seriele poort niet sluiten." % ser.name) |
Doe eens ipv een INSERT even handmatig 1 row invoeren en dan in je code een "SELECT *" dan weet je in elk geval of het mysql deel werkt 
Ik zie wel 1 dingetje in je query
je hebt:
9x een field (AfgenomenT1 etc)
8x een %s
9x een value
Allicht helpt het al om 1 extra "%s" toe te voegen.
Ik zie wel 1 dingetje in je query
je hebt:
9x een field (AfgenomenT1 etc)
8x een %s
9x een value
Allicht helpt het al om 1 extra "%s" toe te voegen.
3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)
Die output is wat je hoort te krijgen, dus tot zover gaat het goed.MsG schreef op zondag 11 september 2016 @ 17:15:
[...]
Ik vroeg me af, ik heb geen pull-up-weerstand er tussen, want die heb ik helaas hier nog niet liggen. Maar kan ik er vanuit gaan dat dit blijkbaar niet nodig is met mijn slimme meter als het nu al dit soort output geeft?
Het zou alleen kunnen dat je soms een telegram terug krijgt waarvan bijv. één teken verkeerd is. Je kunt dan problemen krijgen met je uitleesapplicatie, bijv. Domoticz heeft onlangs een CRC ingebouwd om de checksum van een telegram te controleren. Als het bericht dan niet klopt wordt hij afgeketst door Domoticz.
Mocht dat zo zijn dan moet je de weerstand misschien nog wel toevoegen. Maar voor nu zou ik zeggen: niets meer aan doen.
Het uitleesscript is sowieso brak door de manier waarop een telegram geparsed wordt. Hij telt namelijk het aantal karakters en bepaalt daarmee wat er op positie X voor waarde zou moeten staan. Stel nou dat je meter een firmwareupdate krijgt en er een regel bijkomt? Dan gaat het script over z'n nek omdat de waardes niet meer op de plek staan waar hij ze zou verwachten. Er staan keurig identifiers voor de velden die aangeven waar het veld begint en wat erin staat, gebruik die ipv je huidige methode.cOOlrUnnINgs schreef op zondag 11 september 2016 @ 17:24:
Ik heb het vermoeden dat in onderstaande code een tikfout zit.
Het uitlezen van de slimmem meter gaat prima, ik krijg netjes een P1 telegram binnen.
De variablen waar ik de data in zet, worden netjes getoond.
Echter wordt de data niet weggeschreven naar de database.
[...]
Om je op weg te helpen, de setup die ik gebruik om m'n meter uit te lezen heb ik hier gepost: ThinkPadd in "Slimme meter uitlezen via P1-poort" misschien kun je dat script verbouwen naar MySQL ipv InfluxDB.
[ Voor 52% gewijzigd door ThinkPad op 12-09-2016 16:09 ]
Thnx, die had ik i.i.g. gemist, maar er bleek ook nog een s vervangen te moeten worden door een S.Mattie112 schreef op maandag 12 september 2016 @ 11:33:
Doe eens ipv een INSERT even handmatig 1 row invoeren en dan in je code een "SELECT *" dan weet je in elk geval of het mysql deel werkt
Ik zie wel 1 dingetje in je query
je hebt:
9x een field (AfgenomenT1 etc)
8x een %s
9x een value
Allicht helpt het al om 1 extra "%s" toe te voegen.
nu heb ik het werkend.
Dat is iets wat ik later wel wil doen, voor nu valt dat bij mij nog even onder de hogere wiskunde.ThinkPadd schreef op maandag 12 september 2016 @ 16:07:
[...]
Het uitleesscript is sowieso brak door de manier waarop een telegram geparsed wordt. Hij telt namelijk het aantal karakters en bepaalt daarmee wat er op positie X voor waarde zou moeten staan. Stel nou dat je meter een firmwareupdate krijgt en er een regel bijkomt? Dan gaat het script over z'n nek omdat de waardes niet meer op de plek staan waar hij ze zou verwachten. Er staan keurig identifiers voor de velden die aangeven waar het veld begint en wat erin staat, gebruik die ipv je huidige methode.
Om je op weg te helpen, de setup die ik gebruik om m'n meter uit te lezen heb ik hier gepost: ThinkPadd in "Slimme meter uitlezen via P1-poort" misschien kun je dat script verbouwen naar MySQL ipv InfluxDB.
Eerst nog maar eens zorgen dat ik het inzichtelijk krijg in wat grafiekjes...
Ik heb het nu werkend en aan Domoticz gehangen, werkt erg leuk.
Ik kwam nog een kabel tegen in mijn elektronica-verzamelbak en als ik hem op de PC aansluit zie ik:
Prolific USB to Serial
USB ID: VID 067B PID 2303 REV 0400
Hoe kan ik eenvoudig zien of deze ook automatische invertering heeft zoals de HL-340 die ik reeds in gebruik heb? Ik wil namelijk met de serial female headers die ik heb even een wat nettere kabel maken. Als reserve of bijv. verkoop of demonstratie. Volgens mij zit er wel markt in.
EDIT: Gewoon maar geprobeerd en hij werkt wederom prima op de slimme meters van Enexis. Mooi. Heb nu maar netjes een Seriëel female connector-tje er tussen, zodat de seriële kabel zelf intact blijft.
Ik kwam nog een kabel tegen in mijn elektronica-verzamelbak en als ik hem op de PC aansluit zie ik:
Prolific USB to Serial
USB ID: VID 067B PID 2303 REV 0400
Hoe kan ik eenvoudig zien of deze ook automatische invertering heeft zoals de HL-340 die ik reeds in gebruik heb? Ik wil namelijk met de serial female headers die ik heb even een wat nettere kabel maken. Als reserve of bijv. verkoop of demonstratie. Volgens mij zit er wel markt in.
EDIT: Gewoon maar geprobeerd en hij werkt wederom prima op de slimme meters van Enexis. Mooi. Heb nu maar netjes een Seriëel female connector-tje er tussen, zodat de seriële kabel zelf intact blijft.
[ Voor 16% gewijzigd door MsG op 18-09-2016 20:55 ]
Denk om uw spatiegebruik. Dit scheelt Tweakers.net kostbare databaseruimte! | Groninger en geïnteresseerd in Domotica? Kom naar DomoticaGrunn
Vandaag heb ik ontdekt dat de continuous query niet helemaal per dag berekent, maar van 02.00 tot 02.00. Dit komt doordat de data in Influxdb geen timezones ondersteunt en dus alles in UTC staat.ThinkPadd schreef op donderdag 04 augustus 2016 @ 11:06:
Om de kWh en m3 per dag te berekenen kun je een 'Continuous Query' instellen:
SQL:
1 CREATE CONTINUOUS QUERY cq_smartmeter_daily ON p1smartmeter RESAMPLE EVERY 15m BEGIN SELECT min("+T") AS "+T_min", max("+T") AS "+T_max", spread("+T") AS "+T_spread", min("+T1") AS "+T1_min", max("+T1") AS "+T1_max", spread("+T1") AS "+T1_spread", min("+T2") AS "+T2_min", max("+T2") AS "+T2_max", spread("+T2") AS "+T2_spread", min(G) AS G_min, max(G) AS G_max, spread(G) AS G_spread INTO p1smartmeter."default".smartmeter_daily FROM p1smartmeter.raw.smartmeter GROUP BY time(1d) END
Ik ben hier niet heel goed in, maar ga wel nadenken over een manier om dit op te lossen, want eigenlijk moet je een continuous query maken die niet per dag, maar van 02 tot 02 berekent.
Als iemand makkelijk weet hoe dit moet ...??
Klopt, had ik er eigenlijk bij moeten zetten. InfluxDB is op die manier wel een beetje nadelig, volgens mij heb je het met MySQL niet. Misschien dat je dat eens kunt proberen als je zin hebt. Dan kun je het ook gelijk groeperen per maand als je wilt, die optie kent InfluxDB ook niet namelijk.
Ik probeer jou script, maar hier zit niet in dat hij de data eerst uitleest op de ttyUSB0 (in mijn geval). Kan je eens uitleggen hoe je het precies hebt?
[ Voor 175% gewijzigd door Tylen op 20-09-2016 22:37 ]
“Choose a job you love, and you will never have to work a day in your life.”
Zeker. Ik gebruik socat om de (line based) DSMR input aan het script te voeren, waardoor het script ansich niet meer afhankelijk is van waar de data vandaan komt - in mijn geval hangt de USB-to-serial adapter namelijk aan een switch, een andere machine leest hem uit via TCP.Tylen schreef op dinsdag 20 september 2016 @ 21:57:
Ik probeer jou script, maar hier zit niet in dat hij de data eerst uitleest op de ttyUSB0 (in mijn geval). Kan je eens uitleggen hoe je het precies hebt?
Ik heb er een systemd unit file bij getikt, zodat het een nette service is en hij ook automatisch herstart als er iets misgaat.
code:
1
2
3
4
5
6
7
8
9
| [Install] WantedBy=multi-user.target Requires=influxdb After=influxdb [Service] ExecStart=/usr/bin/socat -u TCP:switch:8000,forever EXEC:/root/dsmreader_netw.py Restart=always RestartSec=3 |
Socat zit als het goed is gewoon in de repositories van je Linuxdistro. Het mooie is, er is weinig wat je niet aan elkaar kunt knopen met socat, dus een seriele poort uitlezen zou ook geen probleem moeten zijn:
Voorbeeldje uit de losse pols (unidirectioneel lezen op /dev/ttyUSB0 115200, raw, wegschrijven naar stdout):
/usr/bin/socat -u FILE:/dev/ttyUSB0,b115200,cfmakeraw STDOUT
Als dat werkt op de console, dan kun je STDOUT vervangen door de EXEC-regel uit m'n systemd-voorbeeld.
Thanks ff proberen
Klein dingetje nog. Hoe weet hij welke database, user en ww hij moet gebruiken voor influxdb?
Klein dingetje nog. Hoe weet hij welke database, user en ww hij moet gebruiken voor influxdb?
[ Voor 255% gewijzigd door Tylen op 21-09-2016 11:23 ]
“Choose a job you love, and you will never have to work a day in your life.”
De database staat in de query string parameters, zie ook de Influx API.
Als je authentication gebruikt moet je een 'u' en 'p' toevoegen.
code:
1
| r = requests.post(url, params={'db': 'utilities', 'precision': 's'}, data=postdata) |
Als je authentication gebruikt moet je een 'u' en 'p' toevoegen.
Dus jou database heet db?? Of moet ik die db aanpassen naar mijn db naam? Heb veel lopen proberen /aanpassen vandaag maar het likt niet. Influxdb staat open (zonder authenticatie).
“Choose a job you love, and you will never have to work a day in your life.”
Nee, mijn database heet 'utilities' - 'db' is de bijbehorende query parameter (net als 'u' en 'p' dat zijn voor username resp. password).
Top. Ik ga weer even stoeien ermee thanks.
“Choose a job you love, and you will never have to work a day in your life.”
Ben al lekker bezig. Dashboard mpet nog veel meer data gaan hebben. Zoals een jaarrekening enzo. Maar het begin is er:

Weet iemand toevallig of je de P1 poort kan splitten? Ik heb "Toon" ook hangen en deze moet eigenlijk ook gewoon blijven werken. Vroeger had je van die RJ11 splitters, zou ik die nog steeds kunnen gebruiken? (Misschien gewoon proberen anders hahaha).
Edit: Hier staat dat het wel kan werken
Ik ga het gewoon proberen met el-cheapo splitter. https://forum.eneco.nl/al...10/p1-poort-splitsen-5641

Weet iemand toevallig of je de P1 poort kan splitten? Ik heb "Toon" ook hangen en deze moet eigenlijk ook gewoon blijven werken. Vroeger had je van die RJ11 splitters, zou ik die nog steeds kunnen gebruiken? (Misschien gewoon proberen anders hahaha).
Edit: Hier staat dat het wel kan werken
[ Voor 17% gewijzigd door Tylen op 11-10-2016 13:01 ]
“Choose a job you love, and you will never have to work a day in your life.”
Ziet er mooi uit (maar dat heb je met Grafana al gauw, mooi product).
Met InfluxDB ga je wel hier tegenaan lopen: prein2 in "Slimme meter uitlezen via P1-poort"
Ik zit daarom te denken om de data op te slaan in MySQL i.p.v. InfluxDB. Dan kun je ook eenvoudig groeperen per maand, met InfluxDB kan dat namelijk niet. Maarja het ontbreekt mij een beetje aan tijd om dat te realiseren. Dus als iemand daar toevallig mee bezig is.... please share
Met InfluxDB ga je wel hier tegenaan lopen: prein2 in "Slimme meter uitlezen via P1-poort"
Ik zit daarom te denken om de data op te slaan in MySQL i.p.v. InfluxDB. Dan kun je ook eenvoudig groeperen per maand, met InfluxDB kan dat namelijk niet. Maarja het ontbreekt mij een beetje aan tijd om dat te realiseren. Dus als iemand daar toevallig mee bezig is.... please share
Dat de data van 02:00 tot 02:00 loopt vind ik niet heel erg.
“Choose a job you love, and you will never have to work a day in your life.”
Als je de P1 poort wil splitten moet je in de splitter bij een apparaat de voeding niet aansluiten.
http://www.smartmeterdash...ssplittenvanhetp1-signaal
http://www.smartmeterdash...ssplittenvanhetp1-signaal
18950Wp🌞, Atlantic 270V3💧, Pana 5J🔥. Zendure 2400AC 11,5kWh🔋,Hyundai Kona 64kWh 🚗, Peblar Home ⛽
Zelf zat ik te denken aan diodes ertussen te zetten. Maar dit is wat makkelijker iddklump4u schreef op dinsdag 11 oktober 2016 @ 13:37:
Als je de P1 poort wil splitten moet je in de splitter bij een apparaat de voeding niet aansluiten.
http://www.smartmeterdash...ssplittenvanhetp1-signaal
“Choose a job you love, and you will never have to work a day in your life.”
Je oplossing met diode's zorgt er dan wel weer voor dat het op beide apparaten blijft werken als het voedende apparaat uitstaat.Tylen schreef op dinsdag 11 oktober 2016 @ 14:08:
[...]
Zelf zat ik te denken aan diodes ertussen te zetten. Maar dit is wat makkelijker idd
Mijn MySQL kennis is niet zo best, hoe zorg ik dat MySQL de data van een dag gaat groeperen per 10 minuten? Of per uur? Ik zou dat normaal gesproken op de client doen.
PC's; Home; Met 8619 units als 72e geëindigd bij DPC @ SETI-classic
Ik ben al even aan het zoeken maar vind niet gelijk de info die ik zoek, of ik weet niet hoe ik moet zoeken.
Sinds de verbouwing van de zomer hebben we een slimme meter en nu laat ik de laatste dagen greenchoice dagelijks mijn meter uitlezen. Ik zie alleen waardes waar ik niets van snap (opbrengst zonnepanelen en verbruik is de ene dag vooral bij het normale tarief terug te vinden en de andere dag bij het daltarief). Tevens klopt de opbrengst niet als ik deze vergelijk met pvoutput. Gisteren zou ik 10kwh volgens greenchoice opgewekt hebben, pvoutput geeft 4kwh aan.
Ik zoek nu dus een oplossing om realtime gegevens van de slimme meter uit te lezen. Zo wil ik inzicht krijgen in de stroomslurpers van dit moment maar ook snappen waarom pvoutput iets anders weergeeft dan greenchoice mbt de opbrengst.
ik zie veel domoticz genoemd worden, maar mis voorbeelden hoe ik daar grafiekjes uit kan halen van de realtime gegevens. Daarnaast zie ik een unit van enelogic maar zou ik nog een youless erbij nodig hebben? (makkelijk, maar het wordt wel een dure oplossing. rpi heb ik al liggen omdat deze pvoutput update)
Iemand die me wat op weg kan helpen?
Sinds de verbouwing van de zomer hebben we een slimme meter en nu laat ik de laatste dagen greenchoice dagelijks mijn meter uitlezen. Ik zie alleen waardes waar ik niets van snap (opbrengst zonnepanelen en verbruik is de ene dag vooral bij het normale tarief terug te vinden en de andere dag bij het daltarief). Tevens klopt de opbrengst niet als ik deze vergelijk met pvoutput. Gisteren zou ik 10kwh volgens greenchoice opgewekt hebben, pvoutput geeft 4kwh aan.
Ik zoek nu dus een oplossing om realtime gegevens van de slimme meter uit te lezen. Zo wil ik inzicht krijgen in de stroomslurpers van dit moment maar ook snappen waarom pvoutput iets anders weergeeft dan greenchoice mbt de opbrengst.
ik zie veel domoticz genoemd worden, maar mis voorbeelden hoe ik daar grafiekjes uit kan halen van de realtime gegevens. Daarnaast zie ik een unit van enelogic maar zou ik nog een youless erbij nodig hebben? (makkelijk, maar het wordt wel een dure oplossing. rpi heb ik al liggen omdat deze pvoutput update)
Iemand die me wat op weg kan helpen?
[ Voor 17% gewijzigd door morpheus op 12-10-2016 12:09 ]
Post verplaatst uit Serieus elektriciteit besparen naar dit topic.
Kijk eens rond in dit topic, wellicht vind je hier een oplossing die aansluit bij wat je zoekt.
Ik had de vraag hier niet geplaatst omdat ik hier nergens een enelogic als oplossing voorbij zie komen, wat ik wel voorbij zag komen in "serieus electriciteit besparen". Maar ik ben benieuwd
Lees maar even rond morpheus. De meeste hier lezen de P1 poort uit met een Raspberry Pi en parsed deze data naar een database om vervolgens grafieken ervan te maken.
Mijn SQL kennis is denk ik nog lager dan die van jouNBK schreef op dinsdag 11 oktober 2016 @ 21:20:
[...]
Mijn MySQL kennis is niet zo best, hoe zorg ik dat MySQL de data van een dag gaat groeperen per 10 minuten? Of per uur? Ik zou dat normaal gesproken op de client doen.
[ Voor 51% gewijzigd door Tylen op 12-10-2016 13:41 ]
“Choose a job you love, and you will never have to work a day in your life.”
Dat doe je met een query (bijv: GROUP BY, AVG, SUM etc)NBK schreef op dinsdag 11 oktober 2016 @ 21:20:
[...]
Mijn MySQL kennis is niet zo best, hoe zorg ik dat MySQL de data van een dag gaat groeperen per 10 minuten? Of per uur? Ik zou dat normaal gesproken op de client doen.
3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)
Bij projecten als dit merk ik echt dat ik te weinig programmeer om dingen echt goed voor elkaar te krijgen 
En je mist dan echt iemand om wat aan te kunnen vragen. Op GoT word meteen geroepen dat je de search moet gebruiken
Ik snap best dat het antwoord vast ergens op GoT te vinden is maar ik heb savonds misschien 2 uurtjes de tijd om iets te doen. Als je dan moet gaan zoeken ben je een week bezig met 1 probeersel wat uiteindelijk een doodlopende richting blijkt te zijn omdat ik ergens in het begin verkeerd ben begonnen.
Ben nu in Java bezig om m'n meter via ethernet uit te lezen en deze data vervolgens in MySQL te gooien. Maar je loopt dan tegen dingen aan waar je normaal echt niet bij stil zou staan.
Zo blokkeerd het wachten op input vanuit de meter de hele applet waardoor je dus met threads moet gaan werken. Iets wat ik nog niet voor elkaar heb gekregen door gekloot met iets met 'public'. Maar een goede uitleg van hoe dat zit heb ik nog niet kunnen vinden. Net als dat er 2 manieren zijn om threads te starten die volgens mij ook allebei een andere manier gebruikte om data met elkaar te delen. Maar ook daar kon ik geen goede uitleg over vinden.
Het importeren van files die ik nodig heb voor telnet, date() en mysql zorgt voor conflicten in functies. Vooral date() zorgt voor problemen. Java heeft tot versie 7 (oid) een slecht werkende date() functie maar de programmeer omgeving waar ik een beetje aan vast zit (Geany) zit nog op versie 7 geloof ik.
Allemaal dingen waar iemand die dagelijks met Java werkt waarschijnlijk zo omheen werkt maar bij mij gewoon dagen kost om iets op te lossen
Ik ben met Java gaan werken omdat het platform onafhankelijk is. Ik kan op mn PC iets programmeren dat ook werkt op mn Raspberry. Deffen op het 6" scherm van mn Raspberry werkt niet lekker. Bovendien wil ik achter mn PC wat kunnen programmeren en testen en daarna pas de werkende versie uploaden naar mn Raspberry.
Ik heb ook met andere talen geprobeerd wat te doen maar loop dan ook tegen rare dingen aan. Met .net (2012 oid) had het programma bijvoorbeeld niet goed door dat een telnet verbinding verbroken was en kreeg ik het niet voor elkaar om de oude verbinding op te ruimen om vervolgens een nieuwe aan te maken.
Zo vermoeiend allemaal
En je mist dan echt iemand om wat aan te kunnen vragen. Op GoT word meteen geroepen dat je de search moet gebruiken
Ben nu in Java bezig om m'n meter via ethernet uit te lezen en deze data vervolgens in MySQL te gooien. Maar je loopt dan tegen dingen aan waar je normaal echt niet bij stil zou staan.
Zo blokkeerd het wachten op input vanuit de meter de hele applet waardoor je dus met threads moet gaan werken. Iets wat ik nog niet voor elkaar heb gekregen door gekloot met iets met 'public'. Maar een goede uitleg van hoe dat zit heb ik nog niet kunnen vinden. Net als dat er 2 manieren zijn om threads te starten die volgens mij ook allebei een andere manier gebruikte om data met elkaar te delen. Maar ook daar kon ik geen goede uitleg over vinden.
Het importeren van files die ik nodig heb voor telnet, date() en mysql zorgt voor conflicten in functies. Vooral date() zorgt voor problemen. Java heeft tot versie 7 (oid) een slecht werkende date() functie maar de programmeer omgeving waar ik een beetje aan vast zit (Geany) zit nog op versie 7 geloof ik.
Allemaal dingen waar iemand die dagelijks met Java werkt waarschijnlijk zo omheen werkt maar bij mij gewoon dagen kost om iets op te lossen
Ik ben met Java gaan werken omdat het platform onafhankelijk is. Ik kan op mn PC iets programmeren dat ook werkt op mn Raspberry. Deffen op het 6" scherm van mn Raspberry werkt niet lekker. Bovendien wil ik achter mn PC wat kunnen programmeren en testen en daarna pas de werkende versie uploaden naar mn Raspberry.
Ik heb ook met andere talen geprobeerd wat te doen maar loop dan ook tegen rare dingen aan. Met .net (2012 oid) had het programma bijvoorbeeld niet goed door dat een telnet verbinding verbroken was en kreeg ik het niet voor elkaar om de oude verbinding op te ruimen om vervolgens een nieuwe aan te maken.
Zo vermoeiend allemaal
[ Voor 4% gewijzigd door NBK op 12-10-2016 22:57 ]
PC's; Home; Met 8619 units als 72e geëindigd bij DPC @ SETI-classic
Tja java is dan ook een complete programmeer taal, je kan ook meer richting de scripttalen gaan, php, python etc
Hier wat code in php:
https://github.com/Mattie112/php-p1-logger
Moet nog steeds een nieuwe versie uploaden maar in essentie ewrkt dit
En ik weet zeker dat als je hier op GoT een gericht vraag stelt, compleet met code van wat je al hebt niemand je zal doorverwijzen naar de search. Als je een vraag stelt van "jah hoe lees ik mijn meter uit met java help" dan is het wat anders
Hier wat code in php:
https://github.com/Mattie112/php-p1-logger
Moet nog steeds een nieuwe versie uploaden maar in essentie ewrkt dit
En ik weet zeker dat als je hier op GoT een gericht vraag stelt, compleet met code van wat je al hebt niemand je zal doorverwijzen naar de search. Als je een vraag stelt van "jah hoe lees ik mijn meter uit met java help" dan is het wat anders
3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)
Meeste doen het hier met Python scripts volgens mij (ook ik).
Ik heb een Raspberry Pi met een P1 naar USB kabel (home made).
Dan lees ik de USB poort uit met python en process die data naar begrijpelijke taal (Meterstand_Tarief1=33109) en die upload ik naar InfluxDB (Ook op de Raspberry). Dan maak ik met Grafana (Ook op de Raspberry Pi) mooie grafiekjes.
Als je wilt kan ik mijn Raspberry Pi image online zetten zodat je een werkende omgeving hebt. Moet je wel kijken of de telegram hetzelfde is welke uit de P1 poort komt
Ps: Gisteren RJ11 splitter gehaald. En onder het mom van YOLO niet de draadjes doorgeknipt of diode erussen gedaan. En ik had mazzel. Toon en mijn Raspberry Pi lezen nu beide tegelijk de P1 poort uit
Ik heb een Raspberry Pi met een P1 naar USB kabel (home made).
Dan lees ik de USB poort uit met python en process die data naar begrijpelijke taal (Meterstand_Tarief1=33109) en die upload ik naar InfluxDB (Ook op de Raspberry). Dan maak ik met Grafana (Ook op de Raspberry Pi) mooie grafiekjes.
Als je wilt kan ik mijn Raspberry Pi image online zetten zodat je een werkende omgeving hebt. Moet je wel kijken of de telegram hetzelfde is welke uit de P1 poort komt
Ps: Gisteren RJ11 splitter gehaald. En onder het mom van YOLO niet de draadjes doorgeknipt of diode erussen gedaan. En ik had mazzel. Toon en mijn Raspberry Pi lezen nu beide tegelijk de P1 poort uit
[ Voor 16% gewijzigd door Tylen op 13-10-2016 14:06 ]
“Choose a job you love, and you will never have to work a day in your life.”
Voor dat devven op een 6 inch scherm... Ik dev direct remote op mijn RPI en wel zo:NBK schreef op woensdag 12 oktober 2016 @ 22:51:
--knip-- hele bekende klaagzang.. heb het zelf ook.
Ik ben met Java gaan werken omdat het platform onafhankelijk is. Ik kan op mn PC iets programmeren dat ook werkt op mn Raspberry. Deffen op het 6" scherm van mn Raspberry werkt niet lekker. Bovendien wil ik achter mn PC wat kunnen programmeren en testen en daarna pas de werkende versie uploaden naar mn Raspberry.
SSH verbinding naar de pi staat open om het programma uit te voeren.
middels notepad++ en de NPPFTP plugin kan ik een SCP/SFTP verbinding naar de pi maken en zo het bestand openen, bewerken en weer saven.
Dit alles heerlijk vanaf mijn windows bak met 24 inch scherm..
Voor de rest: ook bij mij is het meer error dan trial, maar toch kom ik vaak een eind. Achteraf is het ook zo simpel!
Toon zet continue +5V op de P1 poort (om hem actief te houden). Je kan dus bij je PI die overslaan en alleen de RX/GND aansluiten! Werkt als een trein!Tylen schreef op donderdag 13 oktober 2016 @ 14:05:
Meeste doen het hier met Python scripts volgens mij (ook ik).
Ik heb een Raspberry Pi met een P1 naar USB kabel (home made).
Dan lees ik de USB poort uit met python en process die data naar begrijpelijke taal (Meterstand_Tarief1=33109) en die upload ik naar InfluxDB (Ook op de Raspberry). Dan maak ik met Grafana (Ook op de Raspberry Pi) mooie grafiekjes.
Als je wilt kan ik mijn Raspberry Pi image online zetten zodat je een werkende omgeving hebt. Moet je wel kijken of de telegram hetzelfde is welke uit de P1 poort komt
Ps: Gisteren RJ11 splitter gehaald. En onder het mom van YOLO niet de draadjes doorgeknipt of diode erussen gedaan. En ik had mazzel. Toon en mijn Raspberry Pi lezen nu beide tegelijk de P1 poort uit
3780wP (18x 210wP EC Solar) | 2x Marstek Venus E (5.12kWh)
Idem hier. Alleen maak ik een WinSCP verbinding en open ik vanuit daar het python script. Dit opent hem direct in Notepad++ en als ik op save druk saved hij hem op de Pi.prein2 schreef op donderdag 13 oktober 2016 @ 14:22:
[...]
Voor dat devven op een 6 inch scherm... Ik dev direct remote op mijn RPI en wel zo:
SSH verbinding naar de pi staat open om het programma uit te voeren.
middels notepad++ en de NPPFTP plugin kan ik een SCP/SFTP verbinding naar de pi maken en zo het bestand openen, bewerken en weer saven.
Dit alles heerlijk vanaf mijn windows bak met 24 inch scherm..
Voor de rest: ook bij mij is het meer error dan trial, maar toch kom ik vaak een eind. Achteraf is het ook zo simpel!
Heb het dus niet gedaan en werkt ookMattie112 schreef op donderdag 13 oktober 2016 @ 16:34:
[...]
Toon zet continue +5V op de P1 poort (om hem actief te houden). Je kan dus bij je PI die overslaan en alleen de RX/GND aansluiten! Werkt als een trein!
[ Voor 20% gewijzigd door Tylen op 13-10-2016 16:39 ]
“Choose a job you love, and you will never have to work a day in your life.”