Ich hatte mir mit relativ rudimentären Vorkenntnissen (bis auf Softwareentwicklung) vorgenommen, meine Gegensprechanlage über HomeKit zu steuern. Nicht zuletzt durch eure Hilfe und viel Recherche habe ich nun im Prinzip alles, was ich mir vorgenommen habe, realisiert: Ich kann die Klingel im Ober- oder Untergeschoss einzeln ein- und ausschalten, kann zwischen dem Hausruf und Türruf unterscheiden und den Türsummer auslösen. In Aktion seht ihr die Platine hier: https://www.youtube.com/watch?v=StvCbN_u4jc Fritzing habe ich bald nicht mehr benutzt, sondern mit KiCad neu begonnen. Das ist schon ein gewaltiger Unterschied und hat auch das Verständnis einer solchen Platine deutlich erleichtert. Ich habe während der Entwicklung nur festgestellt, dass ich bei Detektion des DC-Klingelsignals aus dem Optokoppler (LTV-814) kein [1, 1, 1, 1, 1] bekomme sondern eher ein [0, 1, 0, 0, 1] - es wechselt also während dem Drücken umher. Das softwaretechnisch zu erkennen, war kein Problem, weil es hier ohnehin einen Timeout gegen wildes Drücken gibt, ich frage mich aber, was die beste hardwareseitige Lösung wäre, die für DC als auch AC funktionierte, weil ich das System auch für eine Klingel mit AC-Ausgang bauen möchte und mir ein hardwareseitig glätteres Signal schon lieber wäre. Liegt das Signal am Optokoppler an, werden 3,3 V auf den entsprechenden GPIO am ESP32 angelegt, soweit klar. Aber wäre es möglich, das Signal am Ausgang statt am Eingang zu glätten? Der LTV-814 müsste (anders als der PC817) sowohl mit AC als auch DC zurechtkommen. Der Vorteil wäre, dass man dann das Signal selbst völlig unangetastet ließe (bis auf die paar mA, die der Optokoppler benötigt) und eine Lösung sowohl für DC als auch AC hätte. Man würde eben die internen logischen 3,3 V hardwareseitig "glätten", die durchgeschaltet werden, sobald das Klingelsignal anliegt. Liegen keine 3,3 V am GPIO an, wird das Signal mit 4,7K Ohm auf GND gezogen. Ich dachte also an einen kleinen Kondensator (MLCC) so nah wie möglich am GPIO, aber welche Größe wäre hier sinnvoll, 100 nF oder gar viel weniger?
:
Bearbeitet durch User
Kondensator parallel zum Ausgang des Optokopplers.
H. H. schrieb: > Kondensator parallel zum Ausgang des Optokopplers. Interessant, also nicht direkt am GPIO, sondern direkt am Ausgang. Welche Größe würdest Du ansetzen? 100 nF?
Entweder so, gewissermaßen "Entprellung" des Optokopplers oder eben Programmierübung. Beim ESP32 weiß ich es nicht genau - das ist ein Schaltkreis, mit dem ich mich immer beschäftigen wollte, aber nie dazu gekommen bin - aber viele µCs können auf Flanken triggern und etwa einen Interrupt auslösen wenn der Zustand an einem Eingangs-Pin von high auf low wechselt oder anders herum.
Erwin schrieb: > H. H. schrieb: >> Kondensator parallel zum Ausgang des Optokopplers. > > Interessant, also nicht direkt am GPIO, sondern direkt am Ausgang. > Welche Größe würdest Du ansetzen? 100 nF? Szizziere mal deine bisherige Beschaltung des Kopplers.
H. H. schrieb: > Erwin schrieb: >> H. H. schrieb: >>> Kondensator parallel zum Ausgang des Optokopplers. >> >> Interessant, also nicht direkt am GPIO, sondern direkt am Ausgang. >> Welche Größe würdest Du ansetzen? 100 nF? > > Szizziere mal deine bisherige Beschaltung des Kopplers.
Ich würde 1µF nehmen.
Ich würde 1uF bis max. 4,7uF nehmen. Nicht kleiner als 1uF (34Hz) weil dann die Grenzfrequenz zu hoch wird! Aber auch nicht größer als 4,7uF (7,2Hz), weil dann die Morsefähigkeit mit über 140ms Wartezeit zu lang wird.
Dankeschön. Kurze Frage zum MLCC: Sind 50 oder gar 100 V Nennspannung schon zu viel oder ist das irrelevant?
:
Bearbeitet durch User
Du hast 3,3V. Also irrelevant.
Erwin schrieb: > dass ich bei > Detektion des DC-Klingelsignals aus dem Optokoppler (LTV-814) kein [1, > 1, 1, 1, 1] bekomme sondern eher ein [0, 1, 0, 0, 1] - es wechselt also > während dem Drücken umher. Dann wäre doch eine software Entprellung möglich. Erwin schrieb: > kann zwischen dem Hausruf und Türruf unterscheiden wie denn? kommmen da unterschiedliche 1 0 Teile?
Joachim B. schrieb: > Erwin schrieb: >> dass ich bei >> Detektion des DC-Klingelsignals aus dem Optokoppler (LTV-814) kein [1, >> 1, 1, 1, 1] bekomme sondern eher ein [0, 1, 0, 0, 1] - es wechselt also >> während dem Drücken umher. > > Dann wäre doch eine software Entprellung möglich. Entprellung per Software ist möglich und funktioniert auch, weil es allerdings überhaupt erst mein erstes reales Projekt ist, möchte ich es (in einer neuen Version der PCB) auch hardwareweise machen. Joachim B. schrieb: > Erwin schrieb: >> kann zwischen dem Hausruf und Türruf unterscheiden > > wie denn? > kommmen da unterschiedliche 1 0 Teile? Haus- und Türruf (= an der Wohnungseingangstüre) haben unterschiedliche Zuleitungen, also 2 x LTV-814 bzw. ein LTV-824.
:
Bearbeitet durch User
Erwin schrieb: > Entprellung per Software ist möglich und funktioniert auch, weil es > allerdings überhaupt erst mein erstes reales Projekt ist, möchte ich es > (in einer neuen Version der PCB) auch hardwareweise machen. das Stichwort heißt retriggerbares monoflop, wenn es dein Wunsch ist den ich aber nicht verstehe.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.