Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon! 🥇🥈🥉

Hårek

Medlemmer
  • Innlegg

    194
  • Ble med

  • Besøkte siden sist

  • Dager vunnet

    4

Alt skrevet av Hårek

  1. Pkt 4: 0906 Octet-string of 6 0101010700FF OBIS code 06 00000000 Unsigned32 = 0 0203 Structure of 3 0906 Octet-string of 6 0100010700ff OBIS code 06 00000552 Unsigned32 = 1362 0202 Structure of 2 0f 00 Integer8 = 0 - scaler 16 1b Enum 27 = Watt Pkt 5 er HDLC formatet, ganske omfattende å forklare. Inneholder sjekksum og en del annet som ikke er så viktig. Det er en online dekoder her: http://www.gurux.fi/GuruxDLMSTranslator
  2. Lurer litt på hvordan denne fungerer. Har du også Grohe sense smart vannsensor? Det er noe uklart om Guard kan stenge vannet automatisk på signal fra sensorer.
  3. Bruk interrupt for å detektere at noe endrer seg. Se eksempel her: https://www.allaboutcircuits.com/technical-articles/using-interrupts-on-arduino/
  4. Ja, den er trekantkoblet. Bryter på to av faselederne.
  5. Tok avlesing av effekt og strøm. Har en 6 kW varmekolbe som dominerer belastningen, 3-fas, med totrinns bryter. Opererer bryteren og leser av etter ca 1/2 minutt: Avslått: 1,7 kW, L1 3,9A, L3 3,6A 1/2 effekt: 4,9 kW, L1 15,6A, L3 16A Full effekt: 8,1 kW, L1 19,1A, L3 19,1A Kommer dessverre ikke til med strømtang i skapet, det er for trangt.
  6. Prøv Free Serial Analyzer. https://freeserialanalyzer.com/ Serieport parametre er 2400, 8, N, 1
  7. Har ikke lagt opp til å analysere reaktiv effekt. Men ut fra lagrede verdier så er det litt import i et par minutter av gangen. Mulig det er når termostaten på varmepumpen slår inn, det har jeg ingen kontroll på. Så vidt jeg kan se i farten er alle effekt verdiene unsigned.
  8. Har en luft/luft varmepumpe, og induksjonstopp. Siste døgn har jeg 100 kWh forbruk, 0,13 kWh reaktiv import, og 3,47 kWh reaktiv export. (Aidon, IT)
  9. Akkurat det kan jeg ikke si noe om, har helt forskjellig programvare (som vises på det bildet hver gang noen linker til 'roarfred' sin tråd ?) Regner med at andre har det du trenger.
  10. Nei, tror ikke det. Har annen hardware enn din, men det står jo ikke noe merking som skulle tilsi at det har betydning. Når det gjelder data, så ser det bra ut. Første linjen du la ut: 7e a0 2a 41 08 83 13 04 13 e6 e7 00 0f 40 00 00 00 00 01 01 02 03 09 06 01 00 01 07 00 ff 06 00 00 06 a8 02 02 0f 00 16 1b 6d 01 7e Active power import 1704 W
  11. Ja, det er nok slik det bør implementeres. Gikk tidlig bort fra å se etter end flag.
  12. Det stemmer nok. Har Aidon og IT, og den sender strøm kun for 2 faser. Det er 12 'items' i Liste 2, ikke 13.
  13. Parity skal være None. Serieport instilling er 2400, 8, N, 1. Begynnelsen på meldingen er OK, fram til rundt 14 - 15 bytes. Jeg har annen hardware ("TSS721 M-BUS To TTL" og "USR-TCP232-T2").
  14. Vente en stund? Denne kommer bare en gang i timen. Alt annet kommer hvert 10 sekund (på Aidon).
  15. Fikk en SMS fra Hafslund rett før kl 17: "Det lykkes oss dessverre ikke å åpne HAN-porten på din strømmåler. Vi vil forsøke på nytt neste uke ..." Så oppdaget jeg at det var aktivitet på den gamle loggeren, med 24V spenning. Koblet til min nye logger, og jovisst har jeg data. ?
  16. Det ser riktig ut. Her er en alterativ måte å se det på. Kommer fra metoden jeg nevnte før i dag: choice: {array: SEQUENCE OF{ choice: {structure: SEQUENCE OF{ choice: {octetString: 0100010700ff}, choice: {doubleLongUnsigned: 1785}, choice: {structure: SEQUENCE OF{ choice: {integer: 0}, choice: {enumerate: 27}}}}}}}
  17. Jeg fant løsningen i OpenMUC jDLMS, som nevnt et par poster over her. Åpenbaringen kom da jeg sendte meldingen (som begynner med 0109) inn i org.openmuc.jdlms.internal.asn1.cosem.Data klassen. Så fikk jeg hele strukturen vist i toString(). Dette er ganske kompleks kode. Den er rekursiv på en finurlig måte. Den inneholder også funksjoner for å generere meldinger, de fjernet jeg for å kunne kompilere uten å dra inn alt for mye. Det siste du spør om er 'scaler' og 'unit'. Hvis du har dokumentene fra tronde, se BS EN 62056-6-2:2013 side 30 : "Table 3 – Enumerated values for physical units"
  18. Sorry, feil bok. Det skulle vært Excerpt_GB8.pdf. Har Java kode som fungerer så langt, men var ikke oppmerksom på at "bit-stuffing" kan forekomme. Noe jeg må se på.
  19. Har jobbet med OpenMUC jDLMS, Java implementation of the DLMS/COSEM protocol. Trodde det var en god mulighet til å bruke ferdig kode. Men det er 360 filer med veldig lite dokumentasjon, og ikke spesielt godt strukturert. Prøvde å kjøre HDLC frame dekoderen der, men den feiler få LLC Control byte, som er 0x13 på våre data. De vil dekode en FrameType som ikke er definert. Nå har jeg masse lesestoff som tronde var så vennlig å legge ut, skal jobbe meg gjennom det først. Edit: kom et langt stykke videre med OpenMUC jDLMS. Fant en klasse som kan dekode det meste av innholdet, rekursivt. Nå må jeg prøve å finne ut hvordan det fungerer.
  20. Aner ikke hvorfor det blir slik. Og JS kan jeg fint lite av. Men hjelper denne? https://stackoverflow.com/questions/5320439/how-do-i-swap-endian-ness-byte-order-of-a-variable-in-javascript
  21. Det er den som kommer nærmest, men byttet endian. Får 0xC4E0 istedet for 0xe0c4.
  22. Det er en 16-bit CRC. Men det finnes visst mange algorimer for dette. https://stackoverflow.com/questions/45795958/javascript-crc16-sample-code-or-implementation Har ikke så mye peiling på detaljene, var heldig og fant ferdiglagd kode i Java.
  23. Ikke droppe frame type. Du begynner første byte etter Flag. Lengden er gitt av byte 2, 0xD2 = 210. Det er inkludert FCS.
  24. 7E skal ikke være med. Jeg tar heller ikke med FCS.
  25. Hele pakken i et buffer (list1), uten start flag. I Aidon eksemplet begynner den med a0d2. Framelength = 210. Lengden jeg gir til utregningen er da 208. FCS = e0c4 Det er veriden jeg får tilbake fra GXFCS16.countFCS16().
×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.