[Benötige Hilfe] MYSENSORS Pulse Sensor Watermeter Einrichtung

Begonnen von Jarnsen, 10 Januar 2016, 00:41:18

Vorheriges Thema - Nächstes Thema

Jarnsen

@eldrik

Sorry,

bin halt nicht firm darin. Ich kann zwar einiges aus dem Sketch lesen bzw interpretieren, verstehe sehr vieles darin nicht. Deshalb kommen solche Fragen zustande

Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Matscher

 :)

Zitat von: Jarnsen am 12 Februar 2016, 13:48:13
Habe jetzt mal den Pulse_Factor von 100 auf 200 gesetzt. Vielleicht geht es jetzt. Allerdings gibt es im Sketch noch so einiges was ich nicht verstehe.

Wichtig ist erstmal das der Sketsch zum "Zähler" passt.


#define PULSE_FACTOR 1000                       // Nummber of blinks per m3 of your meter


Also wie oft muss die 6 vorbei kommen, um 1 m3 Gas zu zählen.

Möglich das die RelfexLichtSchranke ungewollte auslöst, wenn die 6 auf "Kippe" steht. Vllt. noch etwas den Schwellwert werändern.
Rasp 3
CUL V3 868Mhz + nanoCUL 868Mhz als RFR + nanoCUL 868Mhz für Homematic + SIGNALduino
Zigbee CC2531 - Aquara TempSensor
MySensors Ethernet Gateway, Water meter, Gas meter
Modul: 09_CUL_FHTTK.pm (assumed), culfw part HAS_FHT_TF

Jarnsen

Zitat von: Matscher am 12 Februar 2016, 15:31:30
:)

Wichtig ist erstmal das der Sketsch zum "Zähler" passt.


#define PULSE_FACTOR 1000                       // Nummber of blinks per m3 of your meter


Also wie oft muss die 6 vorbei kommen, um 1 m3 Gas zu zählen.


Also die 6 muß 100 mal vorbei kommen um die letzte schwarze Zahl zu drehen. 1 Impuls alle 10 Liter. Schwellenwert ist ganz niedrig eingestellt. Noch n 0,01mm weiter und er reagiert nicht mehr bei der Reflekionsschicht auf der 6. Ein wenig mehr und es werden mehr Impulse gezählt... Komisch ist echt das es Ca das doppelte ist...

Hast du noch ne Idee?? Eventuell mal mit nem einfachen doorsketch und houercounter die Pulse zählen bzw beides parallel ? Eine Reflexlichtschranke und 2 Arduino??

Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen,

habe auch bei meinen Gaszähler mit einem Reedkontakt und Firmata die Impulse gezählt und mit Hourcounter das ganze erfasst. Hat eigentlich ganz gut funktioniert.
War mir dann aber von der Auflösung her zu grob und habe jetzt das ganze noch mit einer Reflectionslichtschranke (TCRT5000 IR Barrier Line Track Sensor) erweitert.
Beide Systeme funktionieren einwandfrei. Eigentlich habe ich nur Abweichungen, wenn ich Probleme mit der Übertragung habe. Habe den Arduino über ein ESP8266 im Fhem eingebunden.

Gruß Rippi

FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Hallo Rippi,

Bei mir läuft es auch mit nem TRCT5000, Reedkontakt ist nicht möglich da kein Magnet im Zähler verbaut ist.
Mit dem Ergebnis bin ich noch nicht so zufrieden. Wenn ich alles so mache wie es sein soll, mit Watermetersketch und den Pulsfactor auf 100 stelle (da die Reflekionsschicht in der 6 ist und somit alle 10 Liter ein Impuls kommen sollte) ist der gemessene Verbrauch nach einem Tag ca 12m^3 laut FHEM aber real am Zähler abgelesen ca 6m^3. Das ganze übertrage ich mit MYSENSORS und nem NRF24L01+, mir ist schleierhaft wie diese hohe Abweichungen zustande kommt. Habe es mit und ohne ack im Gateway versucht brachte nichts. Kann natürlich versuchen den Arduino über nen ESP8266 einzubinden oder ich stelle noch nen Rpi2 in den Heizungskeller und mache es mit FHEM2FHEM.

Bin ratlos

Jarnsen


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen,

hatte am Anfang auch zu viele Impulse bekommen, weil die Empfindlichkeit zu hoch eingestellt war. Habe dann den digitalen Ausgang des Sensors verwendet und noch einen Pullupwiderstand eingebaut.
Hatte mir hier einige Anregungen geholt:
http://voizchat.de/gaszaehler-verbrauch-erfassen-mit-fhem-und-raspberry-gpio/

und hier
https://github.com/matscher2004/MySensors/tree/master/EnergyMeterPulseSensor
habe ich den Sketch für den Stromzähler geholt. Dieser sollte auch mit den Gaszähler funktionieren.

Falls du die Wasseruhr auch noch auslesen willst, findest du hier eine Anleitung
http://blog.steveundkristin.de/2015/09/13/fhem-wasserzaehler-auslesen-mit-hilfe-von-mysensors/

Oder du versuchst das ganze mit Firmata und Esp8266 und Hourcounter.

define hwr_Gaszaehler2_Reedkontakt FRM_IN 14
attr hwr_Gaszaehler2_Reedkontakt IODev WFirmata
attr hwr_Gaszaehler2_Reedkontakt event-on-change-reading .*
attr hwr_Gaszaehler2_Reedkontakt room Werkstatt
attr hwr_Gaszaehler2_Reedkontakt stateFormat reading

define hwr_Gaszaehler2 HourCounter hwr_Gaszaehler2_Reedkontakt:reading:.on
attr hwr_Gaszaehler2 room Werkstatt
attr hwr_Gaszaehler2 stateFormat {sprintf("Gesamtverbrauch: %.2f m³ ",ReadingsVal("hwr_Gaszaehler2","countsOverall","")/100)}

define Filelog_hwr_Gaszaehler2 FileLog ./log/hwr_Gaszaehler2-%Y.log hwr_Gaszaehler2
attr Filelog_hwr_Gaszaehler2 room Werkstatt

define GasverbrauchStdN2 dummy
attr GasverbrauchStdN2 room Büro,Werkstatt

define GasverbrauchStdNotiN2 notify Gasverbrauch2 {\
my $GasUmlaufzeitN2=ReadingsVal("Gasverbrauch2","pauseTimeEdge","0")+ReadingsVal("Gasverbrauch2","pulseTimeEdge","0");;\
my $GasProStdN2=36/$GasUmlaufzeitN2;;\
my $GasProStdRoundedN2=int(100 * $GasProStdN2 + 0.5) / 100;;\
\
fhem("set GasverbrauchStdN2 $GasProStdRoundedN2");;;;\
fhem("delete tmp_time_gasn2");;;;\
fhem("define tmp_time_gasn2 at +00:01:00 set GasverbrauchStdN2 0");;;;\
}
attr GasverbrauchStdNotiN2 room Zähler

define Filelog_GasverbrauchStdN2 FileLog ./log/GasverbrauchStdN2-%Y.log GasverbrauchStdN2
attr Filelog_GasverbrauchStdN2 room Büro,Werkstatt

define SVG_Filelog_GasverbrauchStdN2_1 SVG Filelog_GasverbrauchStdN2:SVG_Filelog_GasverbrauchStdN2_1:CURRENT
attr SVG_Filelog_GasverbrauchStdN2_1 label "Gasverbrauch/Stunde $data{max1} m3 Last $data{currval1} m3"
attr SVG_Filelog_GasverbrauchStdN2_1 room Plots,Werkstatt,Zähler


Reedkontakt ist natürlich kein Reedkontakt sondern der TCRT5000. Hatte es von der Reedkontakt-config übernommen

Gruß Rippi

FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Hallo Rippi,

Das sind die gleichen Quellen wie bei mir. Nur das ich das MySensors Watermeter Projekt genommen habe. Digital nehme ich von Anfang an. Pullup-Wiederstand?? Was bewirkt der wo muss er hin wie groß muss er sein. Versuche heute mal den Energymeter Sketch, aber nach meinem Verständnis sind die doch fast gleich außer das Energymeter kW ausgibt und Watermeter nen Gesamtverbrauch und ne Durchflussmenge.
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen

den Pullup nimmt man in der Regel um eindeutige Zustände zwischen High und Low Signalen zu erreichen. Größenordnung 4,7k bis 10k zwischen Signaleingang und Spannungsversorgung.

Gruß Rippi
FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Ok dann häng ich mal 4,7k rein sonst habe ich nur 470k und 1M zur Hand


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

Obwohl es ja an nem digitalAusgang eh nur 1 oder 0 geben sollte...


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Jarnsen

(http://uploads.tapatalk-cdn.com/20160213/1acf834c8a8be62e8b541fe0075256a7.jpg)

So sieht der Spaß jetzt aus... Pullup ist dran... Input zum Arduino sind 5V am raw den sich der Arduino auf 3,3V runterregelt... Auch für den SENSOR

Jarnsen


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

rippi46

Hallo Jarnsen

den Pullup nimmt man für einen definierten Zustand am Eingang de Arduino.
Funktioniert jetzt deine Anordnung?


Gruß Rippi
FHEM, LMS, VDR ,Dell 9010 Ubuntu 20.04,Raspimatic, HM/HMIP, Max, Elro, Brennenstuhl u. Intertechno mit Connair.
Picoreplayer, Raspi IR-Lanadapter, Firmata(wifi), LaCrosse,
nanocul433, nanocul868, Signalduino, Connexoon,
MySensor-GW+Sensoren, RGBWW, Zigbee2mqtt,Xiaomi,Nextion,LEDMatrix,Alexa

Jarnsen

Kann ich noch nicht sagen... Will noch ne Nacht warten... Arduino hatte sich verabschiedet, deshalb keine Auswertung möglich... Was macht es für nen Unterschied ob ich den TCRT5000 mit 3.3V oder mit 5V betreibe.


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

snagus

#73
Hallo Bastler,

ich häng mich hier mal rein, weil ihr mir heute sehr geholfen habt, dieser Thread noch so tagesaktuell ist und ich euch vielleicht bei dem zu großen Verbrauchsablesewert helfen kann.

Ich habe in den letzten Tagen damit begonnen, den Power Meter Pulse Sensor von MySensors (standard Sketch) per Fhem in mein System zu integrieren.
Nach dem Zusammenbau schien es auch keine hardwarebedingten Probleme zu geben. Durch den Inclusion-Mode ließ sich der Sensor anmelden, es wurden die Readings energy1 und power1 in den Attributen automatisch angelegt (mapReading_XXX), es konnte aber leider kein Wert empfangen werden. Ich hab dann mal die Meldungen im serial Monitor in der Arduino-IDE angeschmissen und die Werte, die dort aufgetaucht sind, gegoogelt. Ich kam so irgendwie auch zu diesem Thread und hab herausgefunden, dass der Sensor einen Startwert (V_VAR1) verlangt.

Ihr habt hier ja das gleiche Problem für den Gas- bzw. Wassersensor identifiziert und mit eurer Hilfe habe ich es hinbekommen. Ich hab die V_VAR1 in der Datei 10_MYSENSORS_DEVICE.pm am Fhem-Server (Raspberry pi) im Ordner /opt/fhem/FHEM in der Zeile

S_POWER                 => { receives => [V_VAR1], sends => [V_WATT,V_KWH,V_VAR1] }, # Power measuring device, like power meters

so eingefügt, wie ihr es auch mit der S_WATER -Zeile gemacht habt.

(Evtl. auch in der Originaldatei ändern? Wer kann so etwas, damit es in einem Update für alle geändert wird?)

Das hat funktioniert. Ein value11 erscheint seitdem in meinem Fhem und ich konnte diese Variable mit setreading MYSENSOR_107 value11 128830000 auf meinen aktuellen Zählerstand einstellen (ich habe 10000 Impulse pro Kilowattstunde).

Die Impulse lese ich mit einem Lichtsensor digital ab. Mit einer Handykamera kann man übrigens ganz schön die IR-Impulse des Stromzählers sichtbar machen. So konnte ich mich vergewissern, dass die Impulse des Zählers und die LED des Sensors, die den Empfang des Sensors anzeigt, schön parallel laufen.

Trotzdem hatte ich das Problem, dass der Zählerstand in Fhem viel schneller zählte als Impulse am Stromzähler vorlagen. Der Sensor hatte ca. doppelt so viele Impulse gezählt als wirklich gesendet wurden. Ich hab den Tip mit dem pull-up-Widerstand aufgegriffen und einen installiert. Es brachte keine Besserung.

Schließlich fand ich eine Lösung: Ich habe die Empfindlichkeit am Sensor ganz hochgeschraubt (mit einem Schraubenzieher an der kleinen Schraube) und ganz gaaaaaanz vorsichtig die Empfindlichkeit runter geregelt bis die LED nicht mehr dauerhaft leuchtet, sondern blinkt.

Jetzt klappt es. Langzeitstudien stehen noch aus. 

Glück auf!

Jarnsen

Zitat von: snagus am 14 Februar 2016, 19:35:15
V_VAR1 in der Datei 10_MYSENSORS_DEVICE.pm am Fhem-Server (Raspberry pi) im Ordner /opt/fhem/FHEM in der Zeile

S_POWER                 => { receives => [V_VAR1], sends => [V_WATT,V_KWH,V_VAR1] }, # Power measuring device, like power meters

so eingefügt, wie ihr es auch mit der S_WATER -Zeile gemacht habt.

(Evtl. auch in der Originaldatei ändern? Wer kann so etwas, damit es in einem Update für alle geändert wird?)


Habe ich gemeldet, denke wird demnächst geändert. Das mit der Stellschraube am Sensor ist mir bekannt, ich bin schon an der Grenze. Es blinkt immer nur wenn die 6 vorbei kommt. Zumindest hat es so den Anschein. Betreibst du den Sensor mit 5 oder 3.3V??


Grüße Jarnsen
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!