Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Helge50

Medlemmer
  • Innlegg

    11
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av Helge50

  1. 4 minutter siden, larsi70 skrev:


    Scriptet er skrevet for Aidon og vil ikke fungere for andre målere. Derfor er dette spesifisert i guiden.

    Ja - det er vel riktig.  Prøvde egentlig mest med  han-port-1.15 uten at jeg fikk det til å fungere.  Uansett fungerte det veldig greit med node-red.  Har en rp4 som leser fra en måler fra hafslund der fungerer pythonskriptet glimrende, men tenker kanskje jeg skal bytte om til node-red der også så blir det likt på hytta og hjemme :) 

  2. På 3.1.2020 den 12.43, StianF skrev:

    Tror muligens problemet er MBUS adapteret ditt. Hadde den samme og fikk den ikke til å fungere. Les første post på nytt, og kjøp den adapteren som står anbefalt der. 

    Etter å ha brukt mye tid med hexdump, han-port-1.15 (test_rx) og aidon_foreward.py prøvde jeg node-red med kamstrup noden.  Det fungerte uten problemer.  Dette fungerte både på en raspberry 3+ og 4.

     

    Først installerte jeg rasbian light, koblet til han port osv ihht guide fra larsi70I steden for å bruke python eller han-port-1.15 installerte jeg node-red med kamstrup noden (https://flows.nodered.org/node/node-red-contrib-ams-decoder).  Installerte også docker med influxdb, chronograf og grafana.  

    legger ved node-red flowen som jeg bruker (ikke alle nodene får verdier - mulig en endring i hva som kommer fra Kamstrup måleren) .  MQTT nodene er heller ikke i bruk, men kan jo brukes for å  laste dataene inn i ett eller annet iot rammeverk hvis ønskelig.

    flows.json

  3. På 29.5.2019 den 21.51, ole88 skrev:

    Hei. Bestilte en ny adapter på ebay og venter på den. Mistenker at det er noe galt med den jeg har. Avventer inntil videre. Takk for svar. 

    Hei,

     

    Hvilket adapter fikk du til å fungere?

    Har prøvd å få lese data fra min Kamstrup måler uten særlig hell.

     

     

  4. 1 time siden, ArnieO skrev:

    @Helge50 Du har fått den til å fungere på en AMS-måler (hvilken type?), men har nå testet 2 stk på en Kamstrup (på hytta), og får det ikke til å fungere ?

     

    Jeg har ikke lest meg opp på speccen på alle målerne. Jeg har Kamstrup og vet at spenningene der er 24 og 12 V.

    Mbus standarden tror jeg sier (opp til?) 36V. Kan det være det som er årsaken - at adapteret du har kjøpt ikke fungerer på en Kamstrup?

     

    For å utelukke at det er feil på ett (vel egentlig da to...) adapter: Har du testet om det som ikke funker på hytta fungerer hjemme hos deg på den andre måleren?

    Det er en Aidon måler jeg har hjemme. Det som ikke funker på hytta funket fint hjemme(samme mbus-usb adapter, samme raspberry pi, samme kabel).  Tar det med hjem i morra og sjekker om det fortsatt fungerer.

  5. 17 timer siden, ArnieO skrev:

    Dersom HAN proten er åpnet vil det mesteparten av tiden være 24VDC mellom pinne 1 og 2 på RJ45 pluggen.

    Mens datapakken kommer er det 12V for "nuller", 24V for "enere". På et multimeter vil du se at spenningen "flagrer" i en kort periode mens dette skjer.

    På en Aidon mener jeg det kommer en datapakke hvert 2,5 sekund.

    På Kamstrup er det 10 sek mellom datapakkene.

    Det ser i utgangspunktet lovende ut.  Får konstant 24v når jeg måler med avbrudd ned mot 17v hvert 10. sec.  (mener jeg har lest et sted at det skal være 24 og 36V den veksler mellom...) Blir vel ikke helt korrekt pga treighet i mulitmeteret.

    MEN får allikevel ikke no fornuftig ut fra min RP3 med denne kontaktet . https://www.aliexpress.com/item/32719562958.html

    Har 2x av mbus-usb adapteret (har prøvd begge med samme resultat) De veksler med å ikke gi noe output til  kryptiske meldinger hvert 10. sec som ikke ga særlig mening selv med hexdump. (se under)

     

    I utganggspunktet har jeg brukt standard distro raspbian lite men har også prøvd den som skal være ferdigkonfigurert herifra:

     https://drive.google.com/drive/folders/0B3ZvFI0Dg1TDbDBzMU02cnU0Y28 . uten hell.  Den booter ikke.

    For å prøve å lage en tilnærmet lik installasjon  konfigurerte jeg config.txt og cmdline.txt ihht jeg fikk etter standard distro installasjon med det som var modifisert i imaget på referansen over.  Har prøvd div alternativer både med rp3 rp4 med og uten å endre cmdline.txt og config.txt . Alt gir samme output som det under . (hvis det i det hele tatt kommer noe - mesteparten av tiden er det helt stille fra porten, men har da ikke målt spenning)

     

    Hva har jeg gjort?

    1) Fått det til å funke hjemme i oslo med en rp4, mbus-usb dingsen over og influxdb og grafana.  funker helt fint.

    2) Tok med samme hardware til hytta med Kamstrup måler.  Der har jeg kun fått outputen under

    3) Prøvd å bytte til rp3, lage ny kabel, bytte mbus-usb dings stadig uten hell

    4) kontaktet GE-Nett og forsikret meg om at HAN porten er åpen (noe antall volt målt tyder på). 

    5) Skrudd av og på hovedbryteren for å resette strømmåleren (etter prat med GE-Nett)

    6) Snakket med distributøren av Kamstrup målere for å sjekke firmware versjon (som i følge dem skal være ny nok - gammel firmware kan ikke åpne HAN port)

     

    ......

    Planlagt neste trinn er å få en ny hardware HAN adapter til strømmåleren for å se om det kan være noe galt med den.

     

    Er taknemlig for andre forslag på hva som kan være galt, jeg er snart tom for ideer. 

     

    pi@raspberrypi:~/han-port/han-port-1.15 $ cat /dev/ttyUSB0 
    +������9PPP�tPPP�^C
    pi@raspberrypi:~/han-port/han-port-1.15 $ hexdump -C /dev/ttyUSB0 
    00000000  00 00 2b 00 00 00 00 00  00 00 00 00 00 00 a0 d0  |..+.............|
    00000010  00 00 00 00 00 00 00 00  00 00 00 97 00 00 00 00  |................|
    00000020  00 00 00 00 00 00 00 00  00 ba 00 00 00 00 00 00  |................|
    00000030  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000040  a6 00 39 00 00 00 00 00  00 00 00 50 00 00 10 00  |..9........P....|
    00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 50 00 00  |.............P..|
    00000060  00 00 00 00 00 00 50 00  00 00 00 00 00 50 c8 00  |......P......P..|
    00000070  00 74 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |.t..............|
    00000080  50 00 00 00 00 00 00 00  50 00 00 00 00 00 00 50  |P.......P......P|
    00000090  00 00 00 00 00 00 50 00  00 00 00 00 00 00 00 00  |......P.........|
    
    

     

  6. På 28.12.2019 den 16.15, ole88 skrev:

    Hei. Har du prøvd å få det til å fungere med node-red og bruke ams-decoder? Personlig synes jeg det er enklere å styre med, enn kommandolinjen.

     

    La ved en fil som du kan lime inn i node-red. Den fungerer for meg. Sørg for at du bruker riktig usb-port i serial-in noden og at du velger riktig målertype.

    flows.json 6 kB · 0 downloads

     

    Hei, 

    Nei - tenker det ikke er vits i før jeg får noe mer ut av hexdump -C /dev/ttyUSB0

     

    
     

     

  7. På 19.12.2019 den 15.39, dagern skrev:

    Jeg har skrevet i tråden her tidligere ang lesing av HAN fra Kamstrup-måleren til ringerikskraft. fikk en Develco MAIZH-061 plugin-modul fra dem etter litt om og men. Prøvde først med Home assistant og deconz, men ingen som kunne hjelpe meg med et skript eller driver for deconz APIet. Har nå prøvd Smartthings og har kommet et stykke videre.

     

    Dessverre ser det ut for at denne enheten ikke klarer å lese ut noe data Jeg får til å koble den opp mot smartthings ved å lage en device handler for den, men der stopper det.

     

    Jeg konfronterte ringerikskraft med at HAN-porten ikke er åpnet, men de påstår hardnakket at alt er i orden. Det jeg tror er feil da er at denne enheten må ha en eller annen form for autentisering mot måleren for at dataene skal kunne leses. cluster FC00 skal inneholde dataene, men der er det ingenting.

     

    Sjekk denne tekniske manualen for måleren

     

    https://www.develcoproducts.com/media/1933/kamstrup-meter-interface-meizh-061-technical-manual.pdf

    kontra denne:

    https://www.develcoproducts.com/media/3333/emizb-132-technical-manual-emi-norwegian-han.pdf

     

    Emizb-132 har ingen "security", mens Meizh-061 har det.

     

    Noen som er rå på device handlere for smartthings her?

     

    Her er den:

     

    /**
     *  Copyright 2019 SmartThings
     *
     *  Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
     *  in compliance with the License. You may obtain a copy of the License at:
     *
     *      http://www.apache.org/licenses/LICENSE-2.0
     *
     *  Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
     *  on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
     *  for the specific language governing permissions and limitations under the License.
     *
     */

    import groovy.json.JsonOutput
    import physicalgraph.zigbee.zcl.DataType
     
    metadata {
        definition (name: "Develco MEIZH-061 Energy Meter", namespace: "Testing", author: "Testing", mnmn: "Testing", vid: "Testing") {
            capability "Energy Meter"
            capability "Power Meter"
            capability "Refresh"
            capability "Health Check"
            capability "Sensor"
            capability "Configuration"

            fingerprint profileId: "0104", deviceId:"0053", inClusters: "0000, 0003, 0004, 0009, 000A, 0702, 0704, FC00", outClusters: "0019", manufacturer: "Develco Products A/S", model: "MEIZH-061", deviceJoinName: ""
            
        }

        // tile definitions
        tiles(scale: 2) {
            multiAttributeTile(name:"power", type: "generic", width: 6, height: 4){
                tileAttribute("device.power", key: "PRIMARY_CONTROL") {
                    attributeState("default", label:'${currentValue} W')
                }
                tileAttribute("device.energy", key: "SECONDARY_CONTROL") {
                    attributeState("default", label:'${currentValue} kWh')
                }
            }
            standardTile("RMSVoltagePhA", "device.RMSVoltagePhA", inactiveLabel: false, decoration: "flat", width: 3, height: 1) {
                state "default", label:'Voltage A: ${currentValue} V'
            }
            standardTile("RMSCurrentPhA", "device.RMSCurrentPhA", inactiveLabel: false, decoration: "flat", width: 3, height: 1) {
                state "default", label:'Current A: ${currentValue} A'
            }
            standardTile("RMSVoltagePhB", "device.RMSVoltagePhB", inactiveLabel: false, decoration: "flat", width: 3, height: 1) {
                state "default", label:'Voltage B: ${currentValue} V'
            }
            standardTile("RMSCurrentPhB", "device.RMSCurrentPhB", inactiveLabel: false, decoration: "flat", width: 3, height: 1) {
                state "default", label:'Current B: ${currentValue} A'
            }
            standardTile("RMSVoltagePhC", "device.RMSVoltagePhC", inactiveLabel: false, decoration: "flat", width: 3, height: 1) {
                state "default", label:'Voltage ? ${currentValue} V'
            }
            standardTile("RMSCurrentPhC", "device.RMSCurrentPhC", inactiveLabel: false, decoration: "flat", width: 3, height: 1) {
                state "default", label:'Current ? ${currentValue} A'
            }
            /*standardTile("reset", "device.energy", inactiveLabel: false, decoration: "flat", width: 2, height: 2) {
                state "default", label:'reset kWh', action:"reset"
            }*/
            standardTile("refresh", "device.power", inactiveLabel: false, decoration: "flat", width: 2, height: 2) {
                state "default", label:'', action:"refresh.refresh", icon:"st.secondary.refresh"
            }

            main (["power", "energy"])
            details(["power", "energy","RMSVoltagePhA","RMSCurrentPhA","RMSVoltagePhB", "RMSCurrentPhB","RMSVoltagePhC", "RMSCurrentPhC", "refresh"])
        }
    }

    def parse(String description) {
       log.debug "description is $description"
            
        def descMap = zigbee.parseDescriptionAsMap(description)
        
        if(descMap) {
            List result = []
                    
            List attrData = [[cluster: descMap.cluster ,attrId: descMap.attrId, value: descMap.value]]
            descMap.additionalAttrs.each {
                attrData << [cluster: descMap.cluster, attrId: it.attrId, value: it.value]
            }
            attrData.each {
                    def map = [:]
                    
                   log.debug "ClusterId: ${it.cluster} AttributeId: ${it.attrId} Value: ${it.value}"
                     
                    if (it.cluster == "0b04" && it.attrId == "0300") {
                            log.debug "Power Value: ${zigbee.convertHexToInt(it.value)/1000}"
                            map.name = "power"
                            map.value = zigbee.convertHexToInt(it.value)/1000
                            map.unit = "W"
                    }
                    if (it.cluster == "0702" && it.attrId == "0000") {
                             log.debug "Energy Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "energy"
                             map.value = zigbee.convertHexToInt(it.value)/1000
                             map.unit = "kWh"
                    }
                    if (it.cluster == "FC00" && it.attrId == "041E") {
                             log.debug "RMSVoltagePhA Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "RMSVoltagePhA"
                             map.value = zigbee.convertHexToInt(it.value)
                             map.unit = "V"
                    }
                    if (it.cluster == "FC00" && it.attrId == "0434") {
                             log.debug "RMSCurrentPhA Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "RMSCurrentPhA"
                             map.value = zigbee.convertHexToInt(it.value)
                             map.unit = "A"
                    }
                    if (it.cluster == "FC00" && it.attrId == "041F") {
                             log.debug "RMSVoltagePhB Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "RMSVoltagePhB"
                             map.value = zigbee.convertHexToInt(it.value)
                             map.unit = "V"
                    }
                    if (it.cluster == "FC00" && it.attrId == "0435") {
                             log.debug "RMSCurrentPhB Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "RMSCurrentPhB"
                             map.value = zigbee.convertHexToInt(it.value)
                             map.unit = "A"   
                    }
                    if (it.cluster == "FC00" && it.attrId == "0420") {
                             log.debug "RMSVoltagePhC Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "RMSVoltagePhC"
                             map.value = zigbee.convertHexToInt(it.value)
                             map.unit = "V"  
                    }
                    if (it.cluster == "FC00" && it.attrId == "0436") {
                             log.debug "RMSCurrentPhC Value: ${zigbee.convertHexToInt(it.value)}"
                             map.name = "RMSCurrentPhC"
                             map.value = zigbee.convertHexToInt(it.value)
                             map.unit = "A"   
                    }
                    
                    if (map) {
                            result << createEvent(map)
                    }
                    log.debug "Parse returned $map"
                    
            }
            return result      
        }
    }


    /**
     * PING is used by Device-Watch in attempt to reach the Device
     * */
    def ping() {
        return refresh()
    }

    def refresh() {
        log.debug "refresh "
        zigbee.electricMeasurementPowerRefresh() +
               zigbee.simpleMeteringPowerRefresh()
    }

    def configure() {
        // this device will send instantaneous demand and current summation delivered every 1 minute
        sendEvent(name: "checkInterval", value: 2 * 60 + 10 * 60, displayed: false, data: [protocol: "zigbee", hubHardwareId: device.hub.hardwareID])

        log.debug "Configuring Reporting"
        return refresh() +
               zigbee.simpleMeteringPowerConfig() +
               zigbee.electricMeasurementPowerConfig()
    }

     

    Kom du noen vei med lesing av HAN porten din?

    Sitter med en Kamstrup måler og får ikke noe fornuftig ut av den.  Lurer på hva som er galt. Funket fint hjemme med en annen type måler.

     

  8. 3 timer siden, Bjørn Mork skrev:

    Det er jo et godt tegn.  Prøv å kjøre

    
    hexdump -C /dev/ttyUSB0 

    elns. Da får du det litt mindre krytpisk slik at det går an å verifisere at pakkene er OK.

    Kjørte hexdump - C /dev/ttyUSB0, fikk følgende output.  For meg ser ikke det så veldig lovende ut..

    Noe som man kan jobbe videre med?

     

    00000880  00 00 00 00 50 00 00 00  00 00 00 00 00 00 00 00  |....P...........|
    00000890  00 00 00 00 00 50 00 00  00 00 00 00 00 00 50 00  |.....P........P.|
    000008a0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 50 00  |..............P.|
    000008b0  00 00 00 00 00 50 00 00  00 00 00 00 00 ff 00 00  |.....P..........|
    000008c0  2b 00 00 00 00 00 00 00  00 00 00 00 00 00 00 f4  |+...............|
    000008d0  80 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    000008e0  00 00 00 00 00 00 ba 00  00 00 00 00 00 00 00 00  |................|
    000008f0  00 00 00 00 00 00 00 00  00 00 00 00 00 a6 00 39  |...............9|
    00000900  00 00 00 00 00 00 00 00  50 00 00 10 00 00 00 00  |........P.......|
    00000910  2b 00 00 00 00 00 00 00  00 00 50 00 00 00 00 00  |+.........P.....|
    00000920  00 00 00 50 00 00 00 00  00 00 00 00 00 00 00 00  |...P............|
    00000930  00 00 00 00 50 00 00 00  00 00 00 00 00 50 00 00  |....P........P..|
    00000940  00 00 00 00 2a 00 00 00  00 00 00 00 00 50 00 00  |....*........P..|
    00000950  00 00 00 00 50 00 00 00  00 00 00 00 ff 00 00 2b  |....P..........+|
    00000960  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 80  |................|
    00000970  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000980  00 00 00 00 00 ba 00 00  00 00 00 00 00 00 00 00  |................|
    00000990  00 00 00 00 00 00 00 00  00 00 00 00 a6 00 39 00  |..............9.|
    000009a0  00 00 00 00 00 00 00 50  00 00 10 00 00 00 00 2b  |.......P.......+|
    000009b0  00 00 00 00 00 00 00 00  00 50 00 00 00 00 00 00  |.........P......|
    000009c0  00 00 50 00 00 00 00 00  00 00 00 00 00 00 00 00  |..P.............|
    000009d0  00 00 00 50 00 00 00 00  00 00 00 00 50 00 00 00  |...P........P...|
    000009e0  00 00 00 2a 00 00 00 00  00 00 00 00 50 00 00 00  |...*........P...|
    000009f0  00 00 00 50 00 00 00 00  00 00 94 ff 00 00 2b 00  |...P..........+.|
    00000a00  00 00 00 00 00 00 00 00  00 00 00 00 00 a6 00 00  |................|
    00000a10  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000a20  00 00 00 00 ba 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000a30  00 00 00 00 00 00 00 00  00 00 00 a6 00 39 00 00  |.............9..|
    00000a40  00 00 00 00 00 00 50 00  00 10 00 00 00 00 00 00  |......P.........|
    00000a50  00 00 00 00 00 00 00 00  50 00 00 00 00 00 00 00  |........P.......|
    00000a60  00 50 00 00 00 00 00 00  00 00 00 00 74 00 00 00  |.P..........t...|
    00000a70  00 00 50 00 00 00 00 00  00 00 00 50 00 00 00 00  |..P........P....|
    00000a80  00 00 2a 00 00 00 00 00  00 00 00 50 00 00 00 00  |..*........P....|
    00000a90  00 00 50 00 00 00 00 00  00 cb ff 00 00 2b 00 00  |..P..........+..|
    00000aa0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000ab0  00 00 00 00 00 97 00 00  00 00 00 00 00 00 00 00  |................|
    00000ac0  00 00 00 ba 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000ad0  00 00 00 00 00 00 00 00  00 00 a6 00 39 00 00 00  |............9...|
    00000ae0  00 00 00 00 00 50 00 00  10 00 00 00 00 00 00 00  |.....P..........|
    00000af0  00 00 00 00 00 00 00 50  00 00 00 00 00 00 00 00  |.......P........|
    00000b00  50 00 00 00 00 00 00 00  00 00 00 74 00 00 00 00  |P..........t....|
    00000b10  00 50 00 00 00 00 00 00  00 00 50 00 00 00 00 00  |.P........P.....|
    00000b20  00 2a 00 00 00 00 00 00  00 00 50 00 00 00 00 00  |.*........P.....|
    00000b30  00 50 00 00 00 00 00 00  00 00 00 00 2b 00 00 00  |.P..........+...|
    00000b40  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    *
    00000b60  00 00 ba 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
    00000b70  00 00 00 00 00 00 00 00  00 a6 00 39 00 00 00 00  |...........9....|
    00000b80  00 00 00 00 50 00 00 10  00 00 00 00 00 00 00 00  |....P...........|
    00000b90  00 00 00 00 00 00 00 50  00 00 00 00 00 00 00 00  |.......P........|
    00000ba0  50 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |P...............|
    00000bb0  00 50 00 00 00 00 00 00  00 00 50 00 00 00 00 00  |.P........P.....|
    00000bc0  00 00 50 00 00 00 00 00  00 50 00 00 00 00 00 00  |..P......P......|
  9. Har en RP4 og en denne usbmbus enhet

    Har kompilert hanport 1.15 men får ikke noe ut når jeg gjør test med 

    ./test_rx -n -d /dev/ttyUSB0

     

    rettighetene til USB porten er satt til 666 så pi brukeren har leserettigheter.

    Har prøvd å configurerere ihht LESMEG fortsatt uten hell.

     

    Måleren jeg prøver å lese fra er en kamstrup. Har fått gudbrandsdal nett til å åpne HAN porten (har til og med fått de til å sjekke at den faktisk er åpen og slått av og på strømmen med hovedbryter for å restarte måleren)

     

    Når jeg gjør cat /dev/ttyUSB0 kommer det noen kryptiske tegn hvert 10. sek.

     

    Har fått samme hardware til å funke hjemme i Oslo.

    Der bruker jeg python biblioteket meter_reading, influxdb og grafana.  Kjører influxdb og grafana og chronograf i docker på RP4. Det funker brillefint.

    (Har også prøvd å bruke python biblioteket på kamstrup måleren)

     

    Noen tips på hvorfor det er helt stille fra porten når jeg bruker test_rx . eller meter_reading.

    Tips mottas med takk!

     

    -helge

×
×
  • 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.