Het maken van een datalogger voor een Kamstrup elektriciteit / gas meter met Raspberry Pi! (3 / 5 stap)

Stap 3: En nu voor sommige software...

Het lezen van de gegevens uit de meter

Ik heb een klein C programma (cryptisch ftgenoemd) die de FTDI rechtstreeks zal voorlezen bijgevoegd. Dit programma is niets fancy, zal het:

1. Verlaag het DST te veroorzaken de warmtemeter geven ons de kostbare informatie
2. lezen totdat er geen gegevens gedurende 2 seconden zijn
3. print alles op het scherm

Te compileren dit op de rPi, "ftdilib-dev" installeren op de rPi met behulp van "install sudo apt-get install libftdi-dev", kopieer het tar-bestand naar de rPi (onder de root -account in de directory/root eenvoudig te houden het), uitpakken met tar - xvf datacollector.tar en vervolgens kwestie het "make" commando in de directory/root.

Als alles gaat zoals gepland, zal de compiler ons de ft -programma. Als u dit programma start (Voer . /ft en druk op enter), een blok van informatie wordt weergegeven zoals:

---------------------------------------------------------------------------
/ KMP5 KA6U005464565461

0-0:96.1.1(352345243543524352345353535353243)
1-0:1.8.1(00913.000*kWh)
1-0:1.8.2(00787.000*kWh)
1-0:2.8.1(00000.000*kWh)
1-0:2.8.2(00000.000*kWh)
0-0:96.14.0(0001)
1-0:1.7.0(0000.25*kW)
1-0:2.7.0(0000.00*kW)
0-0:17.0.0(999*A)
0-0:96.3.10(1)
0-0:96.13.1()
0-0:96.13.0()
0-1:24.1.0(3)
0-1:96.1.0(352345243543524352345353535353243)
0-1:24.3.0(120531230000)(08)(60)(1)(0-1:24.2.1)(M3)
(00752.852)
0-1:24.4.0(1)
!
---------------------------------------------------------------------------

Als geen juiste gegevens wordt weergegeven, zijn de verbindingen met de energie-meter waarschijnlijk niet correct. Check ze weer! Als het programma ft bommen uit met een bericht dat het apparaat niet worden geopend:

-Controleer of er worden uitgevoerd als root gebruiker. Toegang tot het apparaat FTDI is extra bevoegdheden.
-hebt u een andere versie van FTDI (of van de fabrikant van een verschil) Controleer de twee hexadecimale fabrikant / apparaat nummers in de oproep van de ftdi_usb_open . De lsusb -opdracht gebruiken om te bepalen van de juiste hexadecimale getallen voor uw FTDI-apparaat.
-Als de enige gegevens die worden weergegeven op het scherm een heleboel wartaal is, controleert u als de pin RXD heeft zijn omgekeerd met behulp van het hulpprogramma FT_PROG op een windows machine. Het echt moet worden omgekeerd! U kunt deze tool op de website van FTDI verkrijgen.

De gegevens converteren

De gegevens zullen worden ontleed door een AWK programmaatje (cosm.sh en cosm.awk) om de gegevens voor het posten naar Cosm te maken. Het AWK programma scant de output van het programma ft en pakt de stukken die we zijn geïnteresseerd in. Ten slotte is de gegevens gezamenlijk in de structuur van een JSON die rechtstreeks kan worden ingebracht in de Cosm.

Een voorbeeld van een dergelijk bericht:

------------------------------------------------------------------------
{
"versie": "1.0.0",
"datastreams": [
{"id": "+ T1", "current_value": "00913.000"},
{"id": "+ T2", "current_value": "00787.000"},
{"id": "TotalkWh", "current_value": "1700"},
{"id": "W1", "current_value": "0000.34"},
{"id": "W2", "current_value": "0000.00"},
{"id": "Gas", "current_value": "00752.852"}
]}
------------------------------------------------------------------------

De AWK script testen door te geven:

. /ft | awk -f cosm.awk

De output moet lijken op het codeblok JSON hierboven.

De vorige twee stappen samen binden

Het cosm.sh script zal lopen van de vorige twee stappen en ten slotte de resulterende JSON-structuur naar Cosm boekt. Voordat we dat doen kunnen, zullen we moeten een Cosm-account maakt, maakt u een API-sleutel en een feed.

Ik zal beschrijven die stappen in de volgende stap.

Gerelateerde Artikelen

Het maken van een Cat(?) Masker met glasvezel

Het maken van een Cat(?) Masker met glasvezel

ik ben niet nieuw voor Instructables, maar ik figuur it's about time ik een account te krijgen en terug te geven aan een website die mij zo veel inspiratie en informatie heeft gegeven. Dit is mijn eerste post, zodat alle opmerkingen en kritiek welkom
Het maken van een DIY borstelloze Gimbal met Arduino

Het maken van een DIY borstelloze Gimbal met Arduino

Dit is een verhaal van mijn derde project met goedkope gyro en Arduino.Na de eerdere twee projecten, Gemakkelijk omgekeerd slinger en 3D kalligrafie, ik gedacht heb van het maken van Camera Gimbal met Arduino. Dan had ik drie beleidsregels voor het p
Wire Wrapping sieraden Tutorial over het maken van een Vintage vlinder broche met parels

Wire Wrapping sieraden Tutorial over het maken van een Vintage vlinder broche met parels

Wilt u een vintage vlinder broche wikkel? Samen met mij te maken van deze draad verpakt vlinder broche voor jezelf nu!Stap 1: Materialen die nodig zijn bij het maken van een draad gewikkeld vlinder broche:Acryl kralen StrassNatuurlijke geverfd Jade k
Het maken van een perfecte cirkel. MET EEN TABEL ZAGEN!

Het maken van een perfecte cirkel. MET EEN TABEL ZAGEN!

Er lijken een heleboel vierkanten in deze wereld, vooral in hout werken. Het probleem is, soms moet je gewoon een cirkel. "Maar ik heb een cirkel dispenser!" zou je kunnen zeggen. Die moet een andere slechte lintzaag snijden cirkel. Je zag tabel
Bruids juwelen op het maken van een ketting Parel bruiloft met lint

Bruids juwelen op het maken van een ketting Parel bruiloft met lint

Dit is een lint en parelsnoer voor bruiloft, kun je je eigen Parel bruiloft kettingen door middel van deze tutorial.Stap 1: Materialen op hoe maak je een bruiloft ketting4 witte mm parel kralenparel kralen 6mm witparel kralen 8mm wit6mm wit kristal k
Het maken van een mooie spinnen top met een Noorse kroon.

Het maken van een mooie spinnen top met een Noorse kroon.

Ik voel me rijk omdat ik mijn eigen speeltje kan maken.Maak het, niet gewoon kopen!Stap 1: Dit zijn alles wat u nodig hebt:- Dit zijn alles wat u nodig hebt:-(1) een Noorse 1 kroon of een munt met een gat(2) een verlaten knop met ronde voet(Ik heb ge
Hoe om de pvc waterleiding voor het maken van een stuff, handmatige proces door plat gebrand

Hoe om de pvc waterleiding voor het maken van een stuff, handmatige proces door plat gebrand

soms op zoek naar materialen voor het maken van een object zoals een ambacht of ingrediënten deel van een prototype design te maken was een beetje moeilijk, laat staan we hoeven niet van 3D-printers.Misschien is dit de juiste waterpijp materialen pvc
Cm7b5 - het maken van een compiler voor x86 vanaf nul

Cm7b5 - het maken van een compiler voor x86 vanaf nul

Dit is een tutorial voor het maken van een compiler voor een eenvoudige subset van de C taal op x86 het platform. De broncode en de voorbeelden zijn op github.comCm7b5 broncodeCm7b5 wikiDe codevoorbeelden doorlopen progressieve stappen:Tekenreeks tok
Technieken voor het maken van een paar eenvoudige dozen

Technieken voor het maken van een paar eenvoudige dozen

dit instructable zal tonen verschillende technieken voor het maken van eenvoudige houten dozen."Maar Photozz," zeggen u... "Dat is gewoon... lame. Cant u kappen en paraplu en broodrooster samen om iets te maken dat je droog en warm op hetze
Pandahall Tutorial over het maken van een witte parelmoer bloem ketting voor meisjes

Pandahall Tutorial over het maken van een witte parelmoer bloem ketting voor meisjes

Vind je handgemaakte Parel Kettingen? Deze Pandahall tutorial is over het maken van een witte parelmoer bloem ketting voor meisjes. Hoop dat u love it.Parels zijn gewaardeerd voor duizenden jaren vanwege hun glans en zeldzaamheid. In dit artikel, kun
Franse uiensoep - een eenvoudige handleiding voor het maken van een enkele portie Franse uiensoep

Franse uiensoep - een eenvoudige handleiding voor het maken van een enkele portie Franse uiensoep

UI soepen waren zeer populair in de Romeinse tijd en uitvoering in de hele geschiedenis maar de moderne Franse uiensoep ontstond in Frankrijk in de 18e eeuw wint aan populariteit in de jaren 1960 te presenteren. De soep is UI gebaseerd met een vlees-
Handleiding voor het maken van een Storyboard

Handleiding voor het maken van een Storyboard

dit instructable is een gids op Hoe maak je een storyboard. Dit is een vrij eenvoudig proces, en allen het neemt is een beetje plezier en verbeelding. Er zijn vele methoden voor het maken van een storyboard, maar dit instructable verschijnt slechts t
Slee voor het maken van een ware rand met een tabel zag

Slee voor het maken van een ware rand met een tabel zag

zelfs als uw hout heeft voor een ware rand is geschaafd, wijzigingen na verloop van tijd kunnen betekenen, het is niet langer waar. Ik wil laten zien een competitieprogramma voor het maken van een ware rand met een tabel zag dat is een beetje anders
Geïllustreerd & gedetailleerde gids voor het maken van een brand zuiger

Geïllustreerd & gedetailleerde gids voor het maken van een brand zuiger

In dit instructable zal ik proberen om u te tonen hoe maak je een brand zuiger met relatief vaak materialen vinden op uw lokale hardware winkel. Het kostte me een paar pogingen te halen op werking juiste dus hopelijk dit instructable profiteren kunt