Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

Svar ja; byggde efter den danska wikin men hoppade över 3D-utskrift av hållare.

Ingen fokusering av dioderna; dom sitter "naket" på kortet och sändande diod skickar säkerligen friskt med IR-ljus in i den egna mottagardioden. Antar att "flush" är av nöden när man går från sändning till mottagning.

Som ni kan se på tidigare bild så drog jag en skruv genom labbkortet och vidare till en Clas-i-sjön-magnet av det kraftigare slaget. Bör nämnas att med en fästpunkt roterar givaren lätt; fixas enkelt med lite friktionstape, etc.
Kostnaden för kretskort och komponenter är mindre än vad en kopp kaffe kostar på Coop Forum... :lol:

Efter lite tvättande går det lite lättare att läsa ut strängen som kommer som svar på andra telegrammet.

För er som skall göra samma sak; siffrorna inom klammer är 7N1 av det telegram manualen föreskriver (räkna ettor och "OR":a in 128 ifall antalet är udda); bara att kopiera och skicka in i era mätare...
image002.png
Inte så kallt ute så det går inte så mycket värme just nu, men räknarna rör på sig... serienumret raderat ifall storebror läser.
Ingen spårutskrift av svaret som returneras på msg1 (det finns tidigare i tråden), dvs man bör vänta på det innan man sänder iväg msg2.

Executing setup...done.
Sending msg1: [175,63,33,141,10,]
Sending msg2: [6,48,48,48,141,10,]
0.0(00000xxxxxx)6.8(0147.151*MWh)6.26(02762.65*m3)6.31(0093468*h)!

Sending msg1: [175,63,33,141,10,]
Sending msg2: [6,48,48,48,141,10,]
0.0(00000xxxxxx)6.8(0147.151*MWh)6.26(02762.65*m3)6.31(0093468*h)!

Sending msg1: [175,63,33,141,10,]
Sending msg2: [6,48,48,48,141,10,]
0.0(00000xxxxxx)6.8(0147.152*MWh)6.26(02762.66*m3)6.31(0093468*h)!



Kan nämnas att det tar mer än två sekunder att läsa svaret på den andra strängen på 300 baud.

Skall jobba vidare med detta och klura ut hur man kan läsa valfritt register, t.ex. momentan effekt, inkommande fjärrvärmetemperatur, etc
Frågar man på registernivå ser svaren ut att komma på 1200 baud och utan mätstorhet, etc.

/f
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
danwi
Inlägg: 385
Blev medlem: 16 oktober 2008, 17:00:59
Ort: Linköping

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av danwi »

Angående tiden det tar så föreskriver standarden att svaret ska komma tidigast 200 ms och senast 1500 ms efter sista tecknet har tagits emot av mätaren. Det är även ok med max 1500 ms mellan tecken i en sekvens så det gäller att inte ha för bråttom när man pratar med mätaren. (Tiderna gäller för mode C.)

På samma sätt ska ditt nästa paket start inom 200-1500 ms från sista tecknet i föregående svar. Jag misstänker att den övre tiden inte är så kritisk men det är dumt att börja för snabbt då det skulle kunna göra att mätaren missar tecken.
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

Att läsa enstaka register var ju enklare än jag trodde... bara att skicka "/#1" (med 7N1 i 300 baud) så kommer registren tillbaka i 1200 baud i form av tio stycken 7 ställiga tal (utan decimalkomma eller mätstorhet, men det är ju lätt att identifera - på fronten på mätaren går ju dessa värden att stega sig igenom med hjälp av knappen på framsidan).

Executing setup...done.
Sending /#1 [175,163,177,]
0147280 0276525 0093492 0007258 0002768 0004490 0000038 0000073 0000160 0000000

Sending /#1 [175,163,177,]
0147280 0276525 0093492 0007257 0002766 0004491 0000037 0000072 0000160 000000

Sending /#1 [175,163,177,]
0147280 0276525 0093492 0007360 0002216 0005144 0000083 0000069 0000160 0000000

147.28 MWh ackumulerad effekt
276.525 m3 genomlupen mängd
93492 timmar driftstid
73.6 grader framledningstemp
22.16 grader returtemp
51.44 grader temperaturdifferens (fram-retur)
8.3 kW momentant effektuttag
69 liter/timman
160 liter/timman (uppmätt maxvärde)
Användarvisningsbild
Lennart Aspenryd
Tidigare Lasp
Inlägg: 12607
Blev medlem: 1 juli 2011, 19:09:09
Ort: Helsingborg

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av Lennart Aspenryd »

Jättekul!
Med lite temperaturmätare vid dörrar och fönster borde man kunna se hur "flödet" av värme förändras.
Bra projekt. Att mäta är att veta!
Overdoer
Inlägg: 4
Blev medlem: 3 november 2015, 18:51:12

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av Overdoer »

Bra jobbat flyvert - inte mycket kvar för mig att lista ut när jag får mitt läshuvud! :D

Nästa steg blir att fundera på hur man ska få in informationen i någon databas.
Funderarar på om jag ska trycka in mätvärden med jämna mellanrum i en mySQL/MariaDB server direkt, eller om jag ska göra en liten webserver som kan anropas på lite olika sätt för att få önskade värden. Blir ju lite lättare då att integrera med alla möjliga program.

Hur tänker ni andra?
Vad tänker ni använda för att lagra och presentera informationen?
Användarvisningsbild
carpelux
Inlägg: 1950
Blev medlem: 13 oktober 2007, 12:33:33
Ort: Varnhem

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av carpelux »

Kan tipsa om Domoticz.
Kör det själv, har börjat med styrning av lampor och squeezebox och kommer gå vidare med att få in El, vatten och pelletspanna.

Snabb och enkel installaton på en Raspberry Pi.
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

Overdoer skrev:Vad tänker ni använda för att lagra och presentera informationen?
Kolla in min user (samma alias) på http://forum.m.nu; speciellt det jag skrev för c:a 2 år sedan (då jag började med Raspberry PI och 1wire).

Jag kör MySQL på Raspberry PI (databasen på extern USB SSD disk då flashkorten inte tål frekventa skrivningar)
Med hjälp av cron kör jag script som läser diverse mätvärden från 1-wire, GPIO, RFXTRX432 och snart seriedata från en Arduino o skriver in dessa i en (1) tabell i MySQL.

På timme, dygn, vecka o månad kör jag s.k. Stored Procedures som räknar fram max/min/avg för perioden. Minutdatat raderas automatiskt efter en månad, men t.ex. "timmedel", "dygnsminimum", etc. finns ju kvar med exakt tid ifall man ett år senare vill veta; hur kallt var det den natten, och när.

Datat publicerar jag med hjälp av Apache och PHP-skript (som lätt läser MySQL). Jag använder Flot (ett Javaskript) för att rita trender (mer å bättre bilder finns på det andra forumet). Extern access begränsad till de browsers som har kryptocertifikat eller VPN (i bilden är VPN igång i telefonen och intern address använd, men jag kan lika gärna köra utan VPN och med HTTPS och SSL certifikat direct mot min externa IP och port). Har skrivit en VPN blog på blog.m.nu (http://blog.m.nu/gastblogg-att-satta-up ... ver-hemma/)
IMG_3661.PNG
De gröna klossarna nedantill indikerar "låskolv i låskista" på dörrar och garageportar; brevlådestatus kommer från två reedkontakter i brevlådan (post avlämnad / post hämtad).

Med Pyrowl pushar jag meddelanden till min telefon (Prowl på iOS) när viktigare saker händer, t.ex. "Fjärrvärmetemp in < 50 && Utetemp < 10" eller när intressant annons läggs ut på något försäljningforum jag följer.

I köket bredvid altandörren sitter en LCD display (som styrs o elförsörjs via 1wire och UPS matad Raspberry PI) infälld där jag visar intressant data, t.ex. elförbrukning, etc.
IMG_3410.JPG

Å i helgen, kanske redan ikväll åker förstahandsdatat jag nu har tillgång från fjärrvärmeväxlaren in i LCD och websidan!

Nu vet ni varför jag inte har någon tid att lägga på Facebook... :badgrin:
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Overdoer
Inlägg: 4
Blev medlem: 3 november 2015, 18:51:12

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av Overdoer »

Tack för infon flyvert, ska kolla det andra forumet!
Kommer nog att köra SQL-databasen på min NAS, och kanske även Apache (med PHP).
Har bara jobbat med stored procedures i MS SQL, men det borde inte vara något problem att överföra den kunskapen till mySQL...
Blir nog det roligaste projektet på länge! :D
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

En del av skripten, Stored Procedures jag lade ut på m.nu för over ett år sedan har en del fel i sig.
Du får väl höra av dig om det är något speciellt du finner lustigt i det jag gjort (om du nu utgår från mina trevanden).

En sak jag har velat göra om från dag ett (1) är att spara datat i UTC så att man slipper dagar med 23 respektive 25 timmar...

Gick precis som du skriver från Oracle till MySQL; inte mycket skillnad bara hur man "kör" skripten in i databasen.

Ganska smutt att dumpa en instans med mysqldump; i praktiken kan du "flytta" en hel database från en maskin till en annan med en pipe (mysqldump myinstance | ssh otherserver mysql).

Tips: kolla in explain-kommandot i MySQL som hjälper dig att ta reda på när tabellindex saknas eller inte är konstruerade på sätt sätt.
Overdoer
Inlägg: 4
Blev medlem: 3 november 2015, 18:51:12

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av Overdoer »

Nu blir det väl lite off-topic, men om du inte sparat datum/tid i UTC, hur har du gjort då med de dubletter du fått på hösten?
Har du låtit bli att lagra dubletten, eller har du inte med datum/tid i primärnyckeln?
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

Overdoer skrev:Nu blir det väl lite off-topic, men om du inte sparat datum/tid i UTC, hur har du gjort då med de dubletter du fått på hösten?
Har du låtit bli att lagra dubletten, eller har du inte med datum/tid i primärnyckeln?
Det har fått bli dubletter.

Den stora fördelen med att ha data i SQL är ju att man har rätt stora friheter vad det gäller efterhandsjusteringar, etc

Dvs när jag orkar kan jag göra nått skript som tar bort dubletterna o justerar till de fel i sekundärloggarna som de medfört.

Dom flesta "historians" jag känner till jobbar uteslutande med UTC på insidan.
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

Så efter lite skriptande med Python återfinns fjärrvärmeeffekten på LCD-displayen i köket.
image.jpeg
Temperaturerna o det andra är ute/inne samt luftfuktighet o lufttryck; cykliskt uppdaterande men ändå "statiskt". Håller på att arbeta fram en "lcddaemon" i Linux/C som jag skall ersätta dagens Bash-skript med; därefter kommer LCD innehållet att scrolla, bytas, etc beroende på vad jag anser viktigt just för tillfället. Regn, blåst, olåst ytterdörr, rörelsedetektion, vattenförbrukning, post i lådan, fjärrvärmeförbrukning, temp i kyl/frys, etc.

Lite trixande med /dev/ttyUSB0 och textformattering krävdes. Arduinon lägger ut alla registren en gång i minuten på "stdout", fixade även decimalformatet i Arduino-koden, tex att räkna fram rätt kvoter (en del register skall delas med 1000, andra med 100 o nån med 10).

Återstår att lägga till "injektionen" av datat till MySQL, men det såg inte så värst komplicerat ut när jag sökte efter Python/MySQL exempel på nätet.

Mao kan vi nog lägga den här tråden till handlingarna.

Vill passa på att varmt tacka för alla tips jag fått. Säg bara till så kan jag lägga ut den kod, etc jag använt.

/f
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
j.po
Inlägg: 279
Blev medlem: 24 november 2008, 20:40:19
Ort: Halmstad
Kontakt:

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av j.po »

Snyggt :) . Vill också ha.
flyvert
Inlägg: 97
Blev medlem: 26 oktober 2015, 21:00:53

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av flyvert »

Så här kan det se ut med Flot (ett Javaskript-bibliotek för att rita trender)
2015-11-08 22-39-52.png
Före inkopplingen av det nya datat (mitt i bild) kunde jag bara se att returvattentemperaturen föll när man tappade varmvatten.
Men nu får jag en rejäl spik i effekt när man spolar varmvatten.

Har inte haft tid att ändra enheterna i legenden. Axlarna är dock korrekta.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
soo1
Inlägg: 42
Blev medlem: 15 januari 2012, 21:09:50

Re: Läsa av fjärrvärmemätare (Kamstrup MultiCal 401)

Inlägg av soo1 »

Jag tror det är fler än jag som skulle vilja ta del av din arduino kod för avläsningen, något du kan tänka dig att dela med dig av?
Skriv svar