ArduCounter Support und neue Versionen (war: Stromzähler mit S0 Schnitt...)

Begonnen von StefanStrobel, 26 Januar 2014, 12:08:13

Vorheriges Thema - Nächstes Thema

no_Legend

Zitat von: StefanStrobel am 08 Juni 2020, 21:06:56
Hallo Robert,

wenn Du enableAnalogDebug auf 3 setzt und den Pin als analogen Input definierst, dann kommen die gemessenen Werte auf der seriellen Leitung oder per TCP zu Fhem.
Schau es Dir einfach mal im Code an - Funktion readAnalog ab Zeile 2051.

Gruss
   Stefan

Sobald mein Rechner wieder läuft kann ich testen.
Hast du noch mal was geändert im Cpp zum letzten .bin-File?
Ich frag nur so nach ob ich schon mit dem jetzt geflashten File schon messen können sollte?

Danke und Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

StefanStrobel


no_Legend

Zitat von: StefanStrobel am 09 Juni 2020, 15:25:52
Hallo Robert,

das ist nichts Neues.

Gruß
   Stefan

Hallo Stefan,

ich hab gesehen, dass du die Firmware nun im svn hast.
Hast du auch das Modul im SVN drin?

Aktuell hab ich das Modul noch vom Update ausgeschlossen.

Danke und Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

StefanStrobel


freemax

Hallo,
ich komme leider nicht weiter mit der Einrichtung.

Arduino nano ist in fhem integriert, ArduCounter geflasht, Info bekomme ich:

Status: ArduCounter V4.26 on NANO compiled Jun  6 2020 12:40:29
interval config: 30,60,2,2,50,4
verbose config: 1,0,0,0,0
no config in EEPROM
Next report in 19817 milliseconds

Im log-file steht:

2020.06.28 16:09:48 3: ArduCounter: device sent hello: ArduCounter V4.26 on NANO compiled Jun  6 2020 12:40:29 Hello
2020.06.28 16:09:49 3: ArduCounter: ConfigureDevice: send config
2020.06.28 16:09:49 3: ArduCounter: Invalid interval specification
2020.06.28 16:09:49 3: ArduCounter: ConfigureVerboseLevels creates command 1,0,0,0,0v

fhem.cfg:

define ArduCounter ArduCounter /dev/ttyUSB0
setuuid ArduCounter 5ef88369-f33f-6b3d-e778-cfa4e347c6d00041
attr ArduCounter board NANO
attr ArduCounter enableHistory 1
attr AC pulsesPerUnit 1000
attr AC interval 60 300
attr AC pinD5 falling pullup min 25


Ich habe ein S0- Bus an gnd und D5, in fhem leider keine Werte bekommen.

Freue mich über Tips und Lösungsmöglichkeiten.

Gruß
freemax


no_Legend

Zitat von: StefanStrobel am 08 Juni 2020, 21:06:56
Hallo Robert,

wenn Du enableAnalogDebug auf 3 setzt und den Pin als analogen Input definierst, dann kommen die gemessenen Werte auf der seriellen Leitung oder per TCP zu Fhem.
Schau es Dir einfach mal im Code an - Funktion readAnalog ab Zeile 2051.

Gruss
   Stefan

Ich hab es mal probiert, der PIN 10 wird allerdings als illegal markiert:

attr Keller.Heizungsraum.Energycounter pin10 rising pullup min 4 analog



illegal pin 10


Dazu noch einen Frage, wie flash ich auf einen TTGO mit Display, per WLAN die neuste Firmware?
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

no_Legend

Zitat von: freemax am 28 Juni 2020, 16:22:13
Hallo,
ich komme leider nicht weiter mit der Einrichtung.

Arduino nano ist in fhem integriert, ArduCounter geflasht, Info bekomme ich:

Status: ArduCounter V4.26 on NANO compiled Jun  6 2020 12:40:29
interval config: 30,60,2,2,50,4
verbose config: 1,0,0,0,0
no config in EEPROM
Next report in 19817 milliseconds

Im log-file steht:

2020.06.28 16:09:48 3: ArduCounter: device sent hello: ArduCounter V4.26 on NANO compiled Jun  6 2020 12:40:29 Hello
2020.06.28 16:09:49 3: ArduCounter: ConfigureDevice: send config
2020.06.28 16:09:49 3: ArduCounter: Invalid interval specification
2020.06.28 16:09:49 3: ArduCounter: ConfigureVerboseLevels creates command 1,0,0,0,0v

fhem.cfg:

define ArduCounter ArduCounter /dev/ttyUSB0
setuuid ArduCounter 5ef88369-f33f-6b3d-e778-cfa4e347c6d00041
attr ArduCounter board NANO
attr ArduCounter enableHistory 1
attr AC pulsesPerUnit 1000
attr AC interval 60 300
attr AC pinD5 falling pullup min 25


Ich habe ein S0- Bus an gnd und D5, in fhem leider keine Werte bekommen.

Freue mich über Tips und Lösungsmöglichkeiten.

Gruß
freemax

Da ich selber keine S0 Bus habe kann ich nur raten.
Laut wikipedia sollte ein Ein Impuls von einem S0 Eingang zwischen 30 und 120ms liegen.
Probier mal mit der Impuls Zeit zu spielen.
Pull Up und Rasing Flanke würde ich auch mal probieren.

Vielleicht kannst du auch noch ein wenig mehr Infos zu deinem S0 Gerät uns sagen. Im Datenblatt lässt sich vielleicht auch noch etwas finden, wie man genau beschalten sollte.

Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

freemax

Habe jetzt Werte bekommen, powerD5 ist aber zu niederig, welche Einstellung müsste ich ändern?
Mein userReading stimmt auch nicht, der aktuelle Zählerstand wird nicht addiert bzw. erhöht sich nicht.

attr AC userReadings Zaehler {ReadingsVal("AC","pin5",0)/1000 + 48181.30 }

2020-06-30 16:18:12 ArduCounter AC powerD5: 0.023
2020-06-30 16:18:12 ArduCounter AC rejectD5: 0
2020-06-30 16:18:12 ArduCounter AC timeDiffD5: 157824
2020-06-30 16:18:12 ArduCounter AC countDiffD5: 1
2020-06-30 16:18:12 ArduCounter AC pinD5: 5
2020-06-30 16:18:12 ArduCounter AC longD5: 1092
2020-06-30 16:18:12 ArduCounter AC interpolatedLongD5: 1109
2020-06-30 16:18:12 ArduCounter AC Zaehler: 48181.3


Das ist mein Zähler mit S0 Ausgang.
https://www.nzr.de/download.php?id=1378


no_Legend

Zitat von: freemax am 30 Juni 2020, 16:31:49
Habe jetzt Werte bekommen, powerD5 ist aber zu niederig, welche Einstellung müsste ich ändern?
Mein userReading stimmt auch nicht, der aktuelle Zählerstand wird nicht addiert bzw. erhöht sich nicht.

attr AC userReadings Zaehler {ReadingsVal("AC","pin5",0)/1000 + 48181.30 }

2020-06-30 16:18:12 ArduCounter AC powerD5: 0.023
2020-06-30 16:18:12 ArduCounter AC rejectD5: 0
2020-06-30 16:18:12 ArduCounter AC timeDiffD5: 157824
2020-06-30 16:18:12 ArduCounter AC countDiffD5: 1
2020-06-30 16:18:12 ArduCounter AC pinD5: 5
2020-06-30 16:18:12 ArduCounter AC longD5: 1092
2020-06-30 16:18:12 ArduCounter AC interpolatedLongD5: 1109
2020-06-30 16:18:12 ArduCounter AC Zaehler: 48181.3

Ich mach das mit einem monotonic Zähler:
GasZaehlerstandD1 monotonic {ReadingsVal("Gaszaehler","pinD1",0)},


attr AC userReadings Zaehler monotonic {ReadingsVal("AC","pin5",0)/1000}

danach einfach mit setreading den richtigen Zähler stand setzten
setreading AC Zaehler XXXXX.XX

Wie der monotonic genau funktioniert kannst du im Wiki oder commandref nachlesen.

Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

freemax

@no_Legend danke,

der Zählerstand stimmt jetzt, wie kann ich die Werte der aktuellen Leistung anpassen?
Geschätzt sind diese um Faktor 10 größer.

no_Legend

Zitat von: freemax am 30 Juni 2020, 20:40:13
@no_Legend danke,

der Zählerstand stimmt jetzt, wie kann ich die Werte der aktuellen Leistung anpassen?
Geschätzt sind diese um Faktor 10 größer.

Erklär mal genauer was du meinst.

Gruß Robert
IntelNUC mit Ubuntu mit FHEM immer aktuell,2x HMLAN, CUL443, CUL868 -homekit/siri -tablet ui -homebridge
Device, diverse:
HM-SEC-KEY,HM-LC-BL1-FM,HM-SEC-SD,HM-Sen-DB-PCB,HM-Sec-RHS,HM-Sec-SC-2,HM-WDS10-TH-O,Harmony,Netamo, 433MHz Steckdosen uvm.

Otto123

Zitat von: freemax am 30 Juni 2020, 20:40:13
wie kann ich die Werte der aktuellen Leistung anpassen?
Geschätzt sind diese um Faktor 10 größer.
readingFactorx bzw. gibt es mittlerweile mehrer Möglichkeiten:
ZitatreadingFactor[0-9]+
Override the factor attribute for this individual pin.
Just like the attribute factor, this is a rather cumbersome way to specify the pulses per kWh.
Instaed it is advised to use the attribute pulsesPerKWh or readingPulsesPerKWh[0-9]+ (where [0-9]+ stands for the pin number).
pulsesPerKWh
specify the number of pulses that the meter is giving out per unit that sould be displayed (e.g. per kWh energy consumed). For many S0 counters this is 1000, for old ferraris counters this is 75 (rounds per kWh).
Example: attr myCounter pulsesPerKWh 75
readingPulsesPerKWh[0-9]+
is the same as pulsesPerKWh but specified per pin individually in case you have multiple counters with different settings at the same time
Example:
attr myCounter readingPulsesPerKWhA7 75
attr myCounter readingPulsesPerKWhD4 1000
Falls ich deine Frage richtig verstanden habe. ..

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

freemax


Juggernaut

Hallo zusammen,
nachdem ich einige Zeit gebraucht habe um die Software auf einem TTGO-T zum laufen zu bekommen, habe ich mir gedacht ich fasse mal kurz meine Vorgehen für andere zusammen.
Meine Hausautomation ist im Heizungskeller und mein Bastelzimmer ist im 1.OG unterm Dach. Deshalb wollte ich den TTGO-T ESP32 dort in Betrieb nehmen und das WLAN dann mit dem AP-Mode des WiFiManagers einrichten. Habe viel probiert, aber leider ohne Erfolg.
Erst der Post von no_Legend vom 29.Mai.2020 hat mir dann den richtigen Weg gezeigt.
Anbei ist ein Screenshot wie ich das ESP32 Flash Tool eingestellt habe.

Außer der Info von no_Legend habe ich noch folgendes gebraucht um ans Ziel zu gelangen:
Flashtool von Espressif
Grundeinstellungen Flashtools für TTGO-T
.bin Dateien (ArduCounter-ESP32-bootloader_dio_40m.bin, ArduCounter-ESP32T.bin, ArduCounter-ESP32-partitions.bin)

Da jetzt der Arducounter im WLAN eingebunden ist, kann ich zukünftige Updates dann ja (hoffentlich) über OTA machen.

Hoffe ich kann damit dem ein oder anderen (ähnlich Ahnungslosen :-[) helfen.

Gruß Michael




StefanStrobel

Hallo,

das mit dem Flashen sollte eigentlich auch bequem aus Fhem heraus per set flash gehen.
es muss nur Python sowie esptool.py und später espota.py vorhanden sein.

Noch was anderes zu readingsFactor:

readingFactor[AD]?[0-9]+
Override the factor attribute for this individual pin.
Just like the attribute factor, this is a rather cumbersome way to specify the pulses per kWh.
Instead it is advised to use the attribute pulsesPerUnit or readingPulsesPerUnit[0-9]+ (where [0-9]+ stands for the pin number).


Bitte verwendet statt dem alten Factor oder readingFactor das neue Attribut readingPulsesPerUnit[0-9]+, also z.B. readingPulsesPerUnitD4.
Das alte Attribut würde ich gerne entfernen und einige neue Features gehen erst mit readingPulsesPerUnit bzw. pulsesPerUnit.

Gruss
   Stefan