Elmätarlogger med RaspberryPi
Postat: 7 juni 2013, 23:45:57
Som jag skrev under miniprojekt igår så köpte jag en hallonpaj häromdagen och fick för mig att testa att logga ljuspulserna från elmätaren för att få en mer momentan bild av förbrukningen.
Jag har redan en mojäng som läser av ljuspulserna och skickar via radio till en enkel LCD, som jag fått av elbolaget. Den är ganska rudimentär och ger en ganska grov bild, samt att det inte går att logga. Den består av en fotosensor som kopplas till en radiosändare som skickar till LCD-displaymodulen.
Så vad jag gjorde var att jag skruvade upp och lödde på några tåtar i radiosändarburken så att jag får en elektrisk puls när fotodetektorn reagerar på ljuspulsen. Det var ganska lätt att följa signalerna. Och jag plockade den efter en transistor som förstärkte upp pulsen.
RaspberryPi modulen installerade jag sedan med raspbian (debian linux) från deras standard image och la till "wiringPi"-biblioteket så att man lättare kan fippla med I/O. I wiringPi finns även stöd för call-back funktioner för interrupt.
Sagt och gjort så kopplade jag in tåtarna, gnd och signal till pajen, och sedan moddade jag ett exempelprogram "isr.c" så att den skrev ut tidpunkten för varje interrupt genererades på fallande flank på I/O-pinnen. Hittills har jag bara skrivit ner tiden på fil. I förlängningen vill jag lagra undan data i en mysql databas och kunna visa på en websida.
Ok, detta gjordes igår. Nu har jag loggat data i nästa ett dygn (ca 70 000 sekunder) och här kommer några plottar som kan vara intressanta: Den blåa kurvan är plottad med hög tidsupplösning på 1 sekund, medan den röda är med 60 sekunders upplösning. Som man kan se så finns det en del transienter. Om de verkligen är så höga eller bara en effekt av loggningen vet jag inte. Vissa är ju 20 kW i toppen. De flesta verkar dock ligga i början, och även ibland i slutet av en effektplatå. Så man kan ju gissa att det är någon typ av in-rush ström som uppkommer av någon förbrukare.
På sista in-zoomningen kan man se att de höga transienterna kommer ganska regelbundet. Jag mätte lite mellan topparna och det verkar vara nästan exakt 1000 sekunder mellan dem. Undra vad det kan vara för förbrukare som är så regelbunden.
Får jag lite tid över ska jag väl testa att slå av/på lite förbrukare och se hur de påverkar kurvan.
Jag har redan en mojäng som läser av ljuspulserna och skickar via radio till en enkel LCD, som jag fått av elbolaget. Den är ganska rudimentär och ger en ganska grov bild, samt att det inte går att logga. Den består av en fotosensor som kopplas till en radiosändare som skickar till LCD-displaymodulen.
Så vad jag gjorde var att jag skruvade upp och lödde på några tåtar i radiosändarburken så att jag får en elektrisk puls när fotodetektorn reagerar på ljuspulsen. Det var ganska lätt att följa signalerna. Och jag plockade den efter en transistor som förstärkte upp pulsen.
RaspberryPi modulen installerade jag sedan med raspbian (debian linux) från deras standard image och la till "wiringPi"-biblioteket så att man lättare kan fippla med I/O. I wiringPi finns även stöd för call-back funktioner för interrupt.
Sagt och gjort så kopplade jag in tåtarna, gnd och signal till pajen, och sedan moddade jag ett exempelprogram "isr.c" så att den skrev ut tidpunkten för varje interrupt genererades på fallande flank på I/O-pinnen. Hittills har jag bara skrivit ner tiden på fil. I förlängningen vill jag lagra undan data i en mysql databas och kunna visa på en websida.
Ok, detta gjordes igår. Nu har jag loggat data i nästa ett dygn (ca 70 000 sekunder) och här kommer några plottar som kan vara intressanta: Den blåa kurvan är plottad med hög tidsupplösning på 1 sekund, medan den röda är med 60 sekunders upplösning. Som man kan se så finns det en del transienter. Om de verkligen är så höga eller bara en effekt av loggningen vet jag inte. Vissa är ju 20 kW i toppen. De flesta verkar dock ligga i början, och även ibland i slutet av en effektplatå. Så man kan ju gissa att det är någon typ av in-rush ström som uppkommer av någon förbrukare.
På sista in-zoomningen kan man se att de höga transienterna kommer ganska regelbundet. Jag mätte lite mellan topparna och det verkar vara nästan exakt 1000 sekunder mellan dem. Undra vad det kan vara för förbrukare som är så regelbunden.
Får jag lite tid över ska jag väl testa att slå av/på lite förbrukare och se hur de påverkar kurvan.