"Geisterimpulse" vom Pluviometer mit ESP32 und ESPEasy

Begonnen von TheTrumpeter, 02 Dezember 2020, 16:29:48

Vorheriges Thema - Nächstes Thema

TheTrumpeter

#45
Zitat von: TheTrumpeter am 31 Dezember 2020, 10:42:46
Das weiss ich nicht, aber ich kann es testhalber mal über ein Relais schleifen und schauen ob das schaltet, werde dann berichten.
Das Relais schaltet, werde es jetzt mit dem GPIO verbinden und schauen ob es dann immer noch "Geisterimpulse" gibt. Zusätzlich höre ich jetzt, wenn es unerwartet zählt (wenn ich grad in der Nähe bin oder daneben sitz').

Nachtrag:
Relais ist mit dem GPIO verbunden, NC auf Masse. Oder soll ich NO auf Masse und zusätzlich den GPIO mit einem Pullup versehen?
FHEM auf RPi3, THZ (LWZ404SOL), RPII2C & I2C_MCP342x (ADCPiZero), PowerMap, CustomReadings, RPI_GPIO, Twilight, nanoCUL (WMBus für Diehl Wasserzähler & Regenerationszähler für BWT AqaSmart), ESPEasy, TPLinkHS110

Wernieman

Hinweis: Das Relais hat andere gravierende Nachteile, würde es jetzt wirklich "nur" zur Erkenntnisfindung verwenden!
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

JensS

#47
Da ich von Elektronik nun gar keine Ahnung habe, ist mein Vorschlag eventuell völlig daneben...
Als ich meine Fenster/Türen mit Reed-Kontakten ausstattete und an einen Arduino anschließ, freute ich mich wie Bolle über die funktionierende Alarmanlage. Zumindestens solange, bis jemand irgendeine Leuchtstofflampe ausschaltete. Dann kam es immer zum Fehlalarm. Ein befreundeter Elektroniker hat mir aus meinen wenig vorhandenen Bauteilen eine Debouncerschaltung gebaut, welche bis heute störungsfrei läuft. Vielleicht hilft es bei deinem Problem.
Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

TheTrumpeter

Zitat von: Wernieman am 31 Dezember 2020, 11:02:11
Hinweis: Das Relais hat andere gravierende Nachteile, würde es jetzt wirklich "nur" zur Erkenntnisfindung verwenden!
Ich habe jetzt auch zusätzlich die Transistorschaltung von Papa Romeo beibehalten, d.h. einfach den Kollektorausgang als Relais-Trigger verwendet und das Relais auf low-level-Trigger umgeschaltet.

Welchen Nachteil hätte das Relais für mich noch?
Ich habe das Pluviometer noch nicht "ausgemessen", aber wenn die Angaben stimmen, ca. 0,3l/m². Lt. Wikipedia war die höchste Niederschlagsrate 38mm/min, das wären etwas mehr als 2 Impulse pro Sekunde. Habe es grad händisch so schnell wie möglich die Wippe bewegt, das geht problemlos.
Oder hast Du Bedenken wg. der Dauerhaltbarkeit?
FHEM auf RPi3, THZ (LWZ404SOL), RPII2C & I2C_MCP342x (ADCPiZero), PowerMap, CustomReadings, RPI_GPIO, Twilight, nanoCUL (WMBus für Diehl Wasserzähler & Regenerationszähler für BWT AqaSmart), ESPEasy, TPLinkHS110

Papa Romeo

...ein Relais prellt...

... die NPN-Schaltung ist vorzuziehen, da der Transistor ständig leitend ist und ein Störimpuls auf der Leitung den Transistor nicht noch leitender machen kann.
Nur das Anlegen der Masse an der Basis sperrt den Transistor und erzeugt am GPIO einen Impuls.

Bei der PNP-Schaltung ist der Transistor zwar auch ständig leitend, wird aber gesperrt durch Anlegen einer positiven Spannung.

Da die Basis über den Basiswiderstand gegen Masse "hoch liegt", können hier "Störimpulse" dann durchaus wirken.

@Jens: dein Vorschlag entspricht dem "C" den ich gestrichelt eingezeichnet habe.

LG

Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

TheTrumpeter

Zitat von: Papa Romeo am 31 Dezember 2020, 11:34:24
...ein Relais prellt...
Die Impulszählerfunktion der von mir verwendeten Firmware für den ESP32 hat eine einstellbare Entprellzeit, damit müsste sich ein Prellen doch abfangen lassen. Langsamer als die für die vorhin erwähnte höchste Niederschlagsrate nötigen ca. 0,4s zwischen den Impulsen wird das Relais kaum prellen, oder?

Zitat von: Papa Romeo am 31 Dezember 2020, 11:34:24
... die NPN-Schaltung ist vorzuziehen, da der Transistor ständig leitend ist und ein Störimpuls auf der Leitung den Transistor nicht noch leitender machen kann.
Nur das Anlegen der Masse an der Basis sperrt den Transistor und erzeugt am GPIO einen Impuls.


Bei der PNP-Schaltung ist der Transistor zwar auch ständig leitend, wird aber gesperrt durch Anlegen einer positiven Spannung.
OK, dann werde ich bei Gelegenheit auf npn umbauen.
Ist der ganze Spuk dann sicher weg? Dann spar' ich mir die weitere Fehlersuche und besorg' einfach einen npn-Transistor.

Zitat von: Papa Romeo am 31 Dezember 2020, 11:34:24
@Jens: dein Vorschlag entspricht dem "C" den ich gestrichelt eingezeichnet habe.
Ich dachte der ist zum Verlängern der Impulse und nicht zum Einfangen von kurzen Störimpulsen?
FHEM auf RPi3, THZ (LWZ404SOL), RPII2C & I2C_MCP342x (ADCPiZero), PowerMap, CustomReadings, RPI_GPIO, Twilight, nanoCUL (WMBus für Diehl Wasserzähler & Regenerationszähler für BWT AqaSmart), ESPEasy, TPLinkHS110

Papa Romeo

#51
Zitat von: TheTrumpeter am 31 Dezember 2020, 11:44:22
Ich dachte der ist zum Verlängern der Impulse und nicht zum Einfangen von kurzen Störimpulsen?

...das ist dasselbe....wenn der REED schließt wird der C entladen. Öffnet der REED beginnt sich der C über den Widerstand der von + zur Basis führt geladen.

Die Ladezeit berechnet sich aus --> tau = R * C

Solange die Spannung über dem C nicht über 0.7 Volt angestiegen ist, bleibt der Transistor gesperrt und der Ausgang ist "HIGH".

Also kann ich über die Größe von R und C bestimmen wie lange der Transistor gesperrt bleibt.

Kommt während der Zeit in der die Spannung noch nicht die 0.7 Volt überschritten und den Transistor durchgesteuert hat, ein neuer Impuls (z.B. durch Prellen), wird der C wieder entladen
aber es wird kein neuer Impuls am Ausgang erzeugt. Der Ausgang bleibt also so lange "HIGH" bis die Spannung an der Basis die 0.7 Volt überschritten hat und den Transistor durchsteuert --> Ausgang ist "LOW".

Ich hoffe das ist so verständlich.

PS: Um Missverständnisse zu vermeiden. Die Ausführungen beziehen sich auf die NPN-Schaltung


LG

Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

TheTrumpeter

Also bisher herrscht mit der Schaltung über das Relais absolute Ruhe. Ich habe gerade die Wippe wieder händisch bewegt, um zu schauen ob es wirklich noch funktioniert.
FHEM auf RPi3, THZ (LWZ404SOL), RPII2C & I2C_MCP342x (ADCPiZero), PowerMap, CustomReadings, RPI_GPIO, Twilight, nanoCUL (WMBus für Diehl Wasserzähler & Regenerationszähler für BWT AqaSmart), ESPEasy, TPLinkHS110

Papa Romeo

Na ... dann passt´s doch  ;)  ... die Trägkeit des Relais zum Debouncen ausgenutzt....


LG

Papa Romeo
...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

Wernieman

Außerdem braucht das Relais mehr "Leistung", als Induktiv raufkommt.

Würde trotzdem mittelfristig auf eine Transi-Schaltung ausweichen ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

frank

ich würde mal das verdrillte kabel probieren.
falls mehr wie 2 adern vorhanden, genau schauen, welche pärchen verdrillt sind.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Papa Romeo

Zitat von: frank am 02 Januar 2021, 14:12:52
ich würde mal das verdrillte kabel probieren.
falls mehr wie 2 adern vorhanden, genau schauen, welche pärchen verdrillt sind.

... wenn bereits ein 3-adriges Kabel vorhanden ist, würde ich die Transistorstufe direkt am Sensor anbringen.

...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

TheTrumpeter

So, mal ein kurzer Zwischenstand...

Habe am Samstag auf die npn-Schaltung (µC-seitig) umgebaut, aber auch damit kommt es zu den "Geisterimpulsen".

Nun habe ich das vorhandene Kabel gegen ein 2-poliges verdrilltes Kabel getauscht, bereits in der Ziel-Länge von ca. 8m. Die npn-Transistorschaltung (µC-seitig) ist weiterhin dran.

Was mir nicht klar ist:
Wieso macht es einen Unterschied die Transistor-Schaltung beim Sensor anzubringen?
Wird es auf der "Rückleitung" zum GPIO nicht auch zu Störimpulsen kommen? (Die Rückleitung wäre nicht geschirmt und auch nicht mit einer anderen Leitung verdrillt.)
Oder werden die durch den Transistor sensorseitig gegen Masse "weggebügelt"?

Und noch eine Frage:
Würde es robuster weden, wenn ich statt aktuell 3V3 auf 5V gehe und den Eingang nochmal mittels Spannungsteiler auf 3V3 reduziere?
FHEM auf RPi3, THZ (LWZ404SOL), RPII2C & I2C_MCP342x (ADCPiZero), PowerMap, CustomReadings, RPI_GPIO, Twilight, nanoCUL (WMBus für Diehl Wasserzähler & Regenerationszähler für BWT AqaSmart), ESPEasy, TPLinkHS110

Papa Romeo

Zitat von: TheTrumpeter am 18 Januar 2021, 11:59:06
Wieso macht es einen Unterschied die Transistor-Schaltung beim Sensor anzubringen?

Weil Störimpulse an der Basis eines Transistors eher Wirkung haben als am Kollektor. Umso kürzer ich also die Leitung zu Basis halte umso weniger "Angriffsfläche" haben Störimpulse. Eine lange Leitung an der Basis kann wie eine Antenne wirken, was hier anscheinend auch irgendwie passiert, was aber wiederum nicht sein dürfte, da der Transistor bei nicht betätigtem REED an der Basis +Ub erhält und damit voll durchgesteuert ist und somit den Ausgang auf Masse zieht. Nur eine "Masse" an der Basis, die ja dann der REED bereitstellt oder unter großen Ausnahmen eventuell ein "gewaltiger" negativer Impuls, veranlasst das "Sperren" des Transistors und somit eine Änderung am GPIO auf "HIGH".

Also macht es mich doch recht stutzig, dass du trotz der NPN-Schaltung "Geisterimpulse" hast.

Dein REED ist schon o.k. ?

Hast du mal nur die "lange Leitung" an die Transistorschaltung gehängt ohne REED ? Was passiert dann ?


LG

Papa Romeo



...die richtige Lötspitzentemperatur prüft man zwischen Daumen und Zeigefinger.
...überlasse niemals etwas einer Software, das du hardwaremässig erreichen kannst.
...unvorsichtige Elektriker werden schnell zu leitenden Angestellten.
und...never change a running System...no Updates if not necessary

TheTrumpeter

Zitat von: Papa Romeo am 18 Januar 2021, 13:54:32
Hast du mal nur die "lange Leitung" an die Transistorschaltung gehängt ohne REED ? Was passiert dann ?
Genau die Idee hatte ich vorhin beim Auslöten des bisherigen Anschlusskabels vom Sensor auch. Deshalb habe ich die Transistorschaltung nochmal aufgebaut und das offene Kabel dran angeschlossen. Das ist nun als 2. Counter an demselben µC konfiguriert.

Bin mal gespannt was am Abend passiert... ich schaffe es ja immer noch nicht die "Geisterimpulse" zu reproduzieren, wenngleich sie jeden Abend und jeden Morgen während der Zeit des "künstliche Lichts" auftreten.
FHEM auf RPi3, THZ (LWZ404SOL), RPII2C & I2C_MCP342x (ADCPiZero), PowerMap, CustomReadings, RPI_GPIO, Twilight, nanoCUL (WMBus für Diehl Wasserzähler & Regenerationszähler für BWT AqaSmart), ESPEasy, TPLinkHS110