Hallo, es gibt definitiv schwierigere Bauteile als Kondensatoren. Trotzdem habe ich ein Problem zu verstehen, wieso in folgender Situation passiert, was da passiert. Die eigentliche Schaltung ist ein Mikrocontroller ESP8266 an dessen Reset-Leitung (die Leitung wird über einen Pullup hochgezogen) ein Sensor hängt. Der ESP führt einen Reset durch wenn am Reset-Pin eine steigende Flanke wahrgenommen wird, also nicht wenn der Pin auf Low geht sondern wenn er danach wieder auf High wechselt. Irgendwann geht der Ausgang des Sensors nun auf Low, danach wieder auf High und der Reset wird ausgelöst. Ganz einfach, ganz nachvollziehbar. Was ich nun nicht verstehe ist, was da vor sich geht wenn ich in diese Reset-Leitung einen Elko einfüge. Dann nämlich wird der Reset ausgelöst sobald am Sensor das Signal von High auf Low wechselt, also genau andersherum. Wieso ist das so, was passiert da? Bonusfrage: Weshalb ist es egal, wieherum ich den Elko einsetze, ich dachte, als gepolter Kondensator funktioniert er nur in einer Richtung. Grüße, Arno
Nicht nachvollziehbare Prosa. Mach mal ne Zeichnung! Oder besser, halte dich erst mal an die angekündigte Frage. Also was verstehst Du nicht bei Kondensatoren?
Ein gepolter Kondensator funktioniert in beide Stromrichtungen, aber "falsch" gepolt baut sich die Isolierschicht ab und irgendwann ist der Kondensator defekt (Kurzschluss). Ein Reset am Mikroprozessor kann per definition kein Flankensignal sein. Ein Prozessor zu resetten dauert einige Taktzyklen (bis alle Register und funktionale Einheiten den definierten Zustand haben). Das steht im Datenblatt. Aus dem Grund benutzt man im professionellen Embedded Bereich Resetcontroller, die ein garantierten Low für eine feste Zeit machen, nachdem die Betriebsspannung im definierten Bereich ist. Halbe Resets oder wackelige Versorgungen außerhalb der Spezifikationen führen zu undefinierten Zuständen in der CPU.
DoS schrieb: > Ein gepolter Kondensator funktioniert in beide Stromrichtungen, aber > "falsch" gepolt baut sich die Isolierschicht ab und irgendwann ist der > Kondensator defekt (Kurzschluss). Zumindest wenige Volt verträgt er, und kurzzeitig wirkt er auch noch bei vielleicht 4-5V als C, aber da löst er sich dann langsam auf ... Ansonsten @TO: Wie schon gesagt, ist das Resetverhalten nicht nachvollziehbar. Da haste also noch etliche andere faule Eier in Deiner Schaltung, und nicht nur den falschgepolten Elko ...
:
Bearbeitet durch User
Jens G. schrieb: > Wie schon gesagt, ist das Resetverhalten nicht nachvollziehbar. Nja, spekulieren könnte man einen C in reihe zum Pin, nicht vom Pin nach GND. Das könnte dieses Verhalten erklären und passt auch zu folgendem Text. Arno T. schrieb: > wenn ich in diese > Reset-Leitung einen Elko einfüge.
Arno T. schrieb: > Der ESP führt einen Reset durch wenn am Reset-Pin eine > steigende Flanke wahrgenommen wird, also nicht wenn der Pin > auf Low geht sondern wenn er danach wieder auf High wechselt. Das bezweifle ich ganz stark. Reset ist eigenlich immer pegelgesteuert.
Axel S. schrieb: >> Der ESP führt einen Reset durch wenn am Reset-Pin eine >> steigende Flanke wahrgenommen wird, also nicht wenn der Pin >> auf Low geht sondern wenn er danach wieder auf High wechselt. > > Das bezweifle ich ganz stark. > Reset ist eigenlich immer pegelgesteuert. Das ist kein Widerspruch, bloss schräg und wenig fachsensibel ausgedrückt. Solange der Reset-Pin unten ist, steckt er im Reset fest. Steigt der Pegel, geht die Post ab. Also mit der steigenden Flanke.
:
Bearbeitet durch User
Arno T. schrieb: > Wieso ist das so, was passiert da? Zur Begriffsverwirrung: Unter dem Begriff "Reset" kann man formal korrekt einen Zustand verstehen, aber auch der anschliessende Start-Vorgang wird gerne damit assoziiert. Üblicherweise sorgt der Low-Pegel für den Reset-Zustand. Das Bauteil setzt viele internen Zustände asynchron zurück und verharrt darin. Bei Beendigung des Low-Pegels startet ein Prozessor, was man auch als den Reset-Vorgang verstehen kann. Bissel komplizierter sind AVRs, weil die im Zustand "Reset" programmiert werden. Aber um die geht es hier ja nicht.
:
Bearbeitet durch User
(prx) A. K. schrieb: > Arno T. schrieb: >> Wieso ist das so, was passiert da? > > Zur Begriffsverwirrung: Unter dem Begriff "Reset" kann man formal > korrekt einen Zustand verstehen, aber auch der anschliessende > Start-Vorgang wird gerne damit assoziiert. Echt? Habe ich noch nie gehört. Reset ist Reset. Und Start ist Start. Arno T. schrieb: > Was ich nun nicht verstehe ist, was da vor sich geht wenn ich in diese > Reset-Leitung einen Elko einfüge. Dann nämlich wird der Reset ausgelöst > sobald am Sensor das Signal von High auf Low wechselt, also genau > andersherum. Das ergibt auch mit obiger Interpretation keinen Sinn. Der Prozessor geht mit L-Pegel in den Reset. Und wenn der Pegel wieder auf H ist, startet er. Das einzige was der Elko macht: er verlängert die Zeit, die gebraucht wird um wieder auf H zu kommen. Also zumindest, wenn er von Reset nach GND geschaltet ist.
Hallo, lassen wir mal das Thema mit der Polarität des Elkos erstmal weg, weil der auch falschrum ein Kondensator ist. Nur nicht lange, weil die isolierende Oxidschicht abgebaut statt aufgebaut wird und damit der Reststrom viel höher und weiter steigend. Ansosnten differenzierst Du den ankommenden Impuls. H vom Sensor: H am Reset duch den Pullup - > Reset auf H, ESP8266 läuft. H->L am Sensor: Kondensator lädt sich über den Pullup auf und damit geht Reset auf L bis sich der Kondensator soweit geladen hat, daß der PullUp wieder gwewinnt und Reset auf H ist. Der Reseteingang des ESP8266 hat Schmitt-Trigger Eigenschaften und kommt auch mit einem recht langsamen Anstieg von L auf H klar, irgendwo bei ca. 2V erkennt er H. Mit dem intern vorhandenen Pullup am Reset und ca. 100n Kondensator kann man das Verhalten durchaus auch geziehlt nutzen. Gruß aus Berlin Michael
Michael U. schrieb: > Der Reseteingang des ESP8266 hat Schmitt-Trigger Eigenschaften und kommt > auch mit einem recht langsamen Anstieg von L auf H klar, irgendwo bei > ca. 2V erkennt er H. Vielleicht wirft der TO ja auch wirklich Reset mit Neustart des Controllers durcheinander. Wenn an diesem Pin ein Pegelwechsel erkannt wird macht er schlich einen Software-Reset, also Sprung nach "0000" und das wärs dann. Für einen Hardware-Reset werden dann keine Flanken ausgewertet, sondern Pegel. Kenne den ESP8266 nicht und überlasse es dem TO, im Datenblatt nachzulesen... Gruß Rainer
Hallo zusammen, ich bitte um Entschuldigung, dass die Ausgangssituation nicht klar war. Ich habe nun die etwas vereinfachte Schaltung (Sensor durch Schalter ersetzt) angehängt. Des weiteren habe ich noch wegen des Resets ausgetestet. Und ja, bei Low-Pegel an Reset hält der Prozessor an und bei High startet er neu. Dass er bei Low anhält war mir vorher nicht klar, da es mir nicht um einen Neustart im laufenden Betrieb ging sondern um ein Aufwachen aus dem Deep-Sleep des ESP.. Die eigentliche Sache auf die es mir ankommt ist aber ja eigentlich eine andere. Nämlich die scheinbare Verkehrung des Verhaltens mit und ohne Kondensator. Also nochmal von vorne: Ohne Kondensator: Prozessor läuft, Reset-Pin wird auf Masse geschalten => Prozessor hält an. Reset-Pin wird auf VCC geschaltet => Prozessor läuft von vorne los. Mit Kondensator: Prozessor läuft, Kondensator-Plus wird auf Masse geschaltet => Prozessor macht kurz einen Neustart und läuft dann direkt los Kondensator-Plus wird auf VCC geschaltet => Prozessor ist unbeeindruckt. Also für mich sieht es jetzt so aus, als lädt sich der Kondensator bei anliegendem VCC auf. Beim Umschalten auf Masse entlädt er sich kurz, der Reset-Pin geht dadurch auf Low, aber was passiert dann? Lädt sich der Kondensator wieder auf und der Reset-Pin geht dadurch wieder auf High? Aber wodurch wird er geladen? Und wohin entlädt er sich vorher? Grüße, Arno
Arno T. schrieb: > Was ich nun nicht verstehe ist, was da vor sich geht wenn ich in diese > Reset-Leitung einen Elko einfüge. Dann nämlich wird der Reset ausgelöst > sobald am Sensor das Signal von High auf Low wechselt, also genau > andersherum. Wie gross werden denn die Ströme durch den Sensor beim plötzlichen Entladen des Elkos? Womöglich fällt dir kurzzeitig deinegesamte Versorgung aus? Womöglich könnte ein Strombegrenzender Vorwiderstand zwischen Sensor und Elko Abhilfe schaffen. Nachtrag nach angefügtem Schaltbild: Arno T. schrieb: > Lädt sich der > Kondensator wieder auf und der Reset-Pin geht dadurch wieder auf High? Ja, der Resetpin hat intern einen pullup, der Kondensator wird (allerdings verpolt) auf 5V aufgeladen. Beim nächsten Umschalten des Wechselschalters "krachen" 10V auf den Resetpin. Deine Schaltung ist Suboptimal,
Arno T. schrieb: > wenn ich in diese Reset-Leitung einen Elko einfüge Wie schon gesagt, das zu machen ist Unsinn. LG, Sebastian
2aggressive schrieb: > Ja, der Resetpin hat intern einen pullup, der Kondensator wird > (allerdings verpolt) auf 5V aufgeladen. Beim nächsten Umschalten des > Wechselschalters "krachen" 10V auf den Resetpin. VCC sind 3.3V. Aber trotzdem. Und schon beim ersten Schaltvorgang krachen -3.3V auf den RESET-Pin, was evtl. schlimmer ist. LG, Sebastian PS: Der Kondensator tut ansonsten genau das, was man erwartet ...
Sebastian schrieb: > 2aggressive schrieb: >> ...krachen" 10V auf den Resetpin. > VCC sind 3.3V. Ja, ok, VCC=5V kam vom Beissreflex :D > Aber trotzdem. Und schon beim ersten Schaltvorgang > krachen -3.3V auf den RESET-Pin, was evtl. schlimmer ist. Ob +6,6V, oder -3.3V: beides sollte nicht vorkommen. Hier, im Moment, beides wohl aktuell kein Problem -im Sinne von Folgeerscheinungen- > PS: Der Kondensator tut ansonsten genau das, was man erwartet ... 99,9% Ack, in der Form ist die Schaltung nixgut, aber scheint für Arno "repruduzierbar genug" um seine Frage zu stellen. Die Klammerdioden an der Resetleitung schützten den Controller anscheinend ausreichend. Zu den fehlenden 0,01%: Ewig wird sich dies nicht unbedingt reproduzieren lassen, weil der verpolte Elko vergrotzt wird. @Arno: Falls du mit hilfe eines Kondensators irgendeine Verzögerung/Verlängerung eines Timings erreichen wolltest; bitte mehr Info zur Problemstellung. Ansonsten ist deine bisherige Frage, im Zusammenhang mit deiner Schaltung: Arno T. schrieb: > ...Problem zu verstehen, wieso in folgender Situation passiert, was > da passiert... > Die eigentliche Schaltung ist ein Mikrocontroller ESP8266 an dessen > Reset-Leitung (die Leitung wird über einen Pullup hochgezogen)... gelöst und beantwortet?
Sebastian schrieb: > Und schon beim ersten Schaltvorgang krachen -3.3V auf den RESET-Pin, was > evtl. schlimmer ist. Da hab ich much vertan, sorry. Solange der Schalter auf VCC steht ist der Kondensator entladen, weil der RESET-Pin einen internen Pullup auf VCC eingebaut hat. Beim Schalten auf GND zieht der leere Kondensator dann zunächst RESET mit auf GND, und lädt sich dann langsam über den internen Pullup auf. Beim Zurückschalten auf VCC zieht geladene Kondensator dann RESET auf 6.6V und entlädt sich dann über die Schutzdiode des RESET-Pins auf VCC+1Diodenspannung, und danach sehr sehr langsam über Kriechströme auf VCC. LG, Sebastian
Sebastian schrieb: > Beim Schalten auf GND zieht der leere Kondensator > dann zunächst RESET mit auf GND Verwirrende Geburt: jetzt hammersbald, auf GND, in diesem Fall also keine -3V3, klar. > sehr sehr langsam über Kriechströme auf VCC. Vorher "knallts" wegen der Schutzdioden, nachher gehts allerdings nicht "sehr sehr langsam über Kriechströme", sondern der pullup (Hausnummer 10KOhm?) macht seine Arbeit gegenüber dem verpolt sterbenden Elko erstmal recht schnell.
2aggressive schrieb: > pullup (Hausnummer 10KOhm?) macht seine Arbeit gegenüber dem verpolt > sterbenden Elko erstmal recht schnell Ok, kann sein, ist schon spät. Manchmal sind die internen Pullups aber eigentlich kleine Stromquellen und ob die auch als als Stromsenken funktionieren? LG, Sebastian
Sebastian schrieb: > Manchmal sind die internen Pullups aber > eigentlich kleine Stromquellen und ob die auch als als Stromsenken > funktionieren? War wirklich spät gestern, ein sehr guter Einwand! Leider liegt hier kein ESP8266 zum nachmessen herum.
Sebastian schrieb: > kleine Stromquellen und ob die auch als als Stromsenken > funktionieren? Fets, also ja, sollten sie.
Sebastian schrieb: > Sebastian schrieb: >> Und schon beim ersten Schaltvorgang krachen -3.3V auf den RESET-Pin, was >> evtl. schlimmer ist. > > Da hab ich much vertan, sorry. Solange der Schalter auf VCC steht ist > der Kondensator entladen, weil der RESET-Pin einen internen Pullup auf > VCC eingebaut hat. Beim Schalten auf GND zieht der leere Kondensator > dann zunächst RESET mit auf GND, und lädt sich dann langsam über den > internen Pullup auf. Beim Zurückschalten auf VCC zieht geladene > Kondensator dann RESET auf 6.6V und entlädt sich dann über die > Schutzdiode des RESET-Pins auf VCC+1Diodenspannung, und danach sehr sehr > langsam über Kriechströme auf VCC. Ok, also dann tatsächlich so wie ich es mir dann zuletzt zurecht malte. Vielen Dank. Die Sache mit der Polung des Elkos wäre die zweite Frage gewesen. Denn die gepostete Schaltung funktioniert ja egal wie herum ich ihn einsetze. Aber meines Erachtens ist es egal, da ja von beiden Seiten mal Plus anliegt. Gruß, Arno
2aggressive schrieb: > @Arno: Falls du mit hilfe eines Kondensators irgendeine > Verzögerung/Verlängerung eines Timings erreichen wolltest; bitte mehr > Info zur Problemstellung. Was eigentlich rauskommen sollte ist schon das, was meine Schaltung auch tut, allerdings ohne auf absehbare Zeit sterbende Kondensatoren und Prozessoren. In Deutsch: Geht das Signal von High auf Low und danach wieder auf High soll der Prozessor aus dem Tiefschlaf aufgeweckt bzw. ein Reset ausgelöst werden. Allerdings möchte ich kurze Low-Phasen nicht beachten da es sich um Flackern bzw. False Positives vom Sensor handeln dürfte. Ebenso wäre es toll, wenn der Prozessor während der Low-Phase nicht stehen bleibt. Dann liese sich diese Schaltung auch verwenden wenn der Prozessor nicht sowieso schläft sondern durchläuft. Ich habe jetzt weiter herumprobiert und kam zur jetzt angehängten Schaltung die experimentell funktioniert. Ich erkläre sie mir so: Während der Schalter auf Masse steht entlädt sich der Kondensator, dass kann ich mit dem Multimeter messen. Nur wenn er weit genug entladen ist (wohl 3,3V - 0,7V), bewirkt ein Schalten auf VCC, dass der Transistor kurz durchschaltet. Kann ich die so verwenden ohne dass Kondensator oder Transistore bald aufgeben? Wohl besser noch ein Strombegrenzungswiderstand an die Basis, oder? Gruß, Arno
Arno T. schrieb: > 2aggressive schrieb: >> @Arno: Falls du mit hilfe eines Kondensators irgendeine >> Verzögerung/Verlängerung eines Timings erreichen wolltest; bitte mehr >> Info zur Problemstellung. > Was eigentlich rauskommen sollte ist schon das, was meine Schaltung auch > tut Hmm... > , allerdings ohne auf absehbare Zeit sterbende Kondensatoren und > Prozessoren. :D > In Deutsch: Geht das Signal von High auf Low und danach wieder auf High > soll der Prozessor aus dem Tiefschlaf aufgeweckt bzw. ein Reset > ausgelöst werden. Hochdeitsch is immer juut! De Maschin machet immer wat de saachst, is abba selten das wasse wollen willst :D > Allerdings möchte ich kurze Low-Phasen nicht beachten da es sich um > Flackern bzw. False Positives vom Sensor handeln dürfte. Eben wird dein eigentliches Problem etwas mehr zum klartext. Lösungsvorschlag: vom deinem Sensorpegel weg den Vorwiderstand, dahinter einen Kondensator gegen GND. Also den Kondensator nicht als Hochpass (seriell zum Signal), sondern als Tiefpass (den Kondensator parallel zum Signalpegel) verschalten. *** Müssen die Verzögerungszeiten ("nicht beachten") asymetrisch sein, aka "False Positives" und sichere "Negatives" eine ungleiche -- nicht beachtete Warte/Ansprechverzögerungszeit -- haben, dann könnte zusätzlich zu einem R+C eine weitere Diode, oder eine Transistorstufe hilfreich sein. Dann weitersehen, erst einmal das Problem qualitativ erkennen, und quantitativ, also [in Millisekunden?] zeitlich erfassen. > Ebenso wäre es toll, wenn der Prozessor während der Low-Phase nicht > stehen bleibt. Dann liese sich diese Schaltung auch verwenden wenn der > Prozessor nicht sowieso schläft sondern durchläuft. Siehe oben. > Ich habe jetzt weiter herumprobiert und kam zur jetzt angehängten > Schaltung die experimentell funktioniert. Oder zum scheinbar manchmal funktionieren neigt??? HTH *** https://de.wikipedia.org/wiki/Hochpass https://de.wikipedia.org/wiki/Tiefpass
Axel S. schrieb: > (prx) A. K. schrieb: >> Arno T. schrieb: >>> Wieso ist das so, was passiert da? >> >> Zur Begriffsverwirrung: Unter dem Begriff "Reset" kann man formal >> korrekt einen Zustand verstehen, aber auch der anschliessende >> Start-Vorgang wird gerne damit assoziiert. > > Echt? Habe ich noch nie gehört. Hm, doch, das habe ich auch schon gelesen. Daß manche den erneuten Start nach einem Reset unter "Reset" verbuchen. Um den resetteten Start vom Erststart logisch zu trennen(?). Leider wird woanders das Gegenteil bewirkt (weil deswegen Reset und (Neu-)Start nicht mehr logisch getrennt sind). Besser wäre also, wie Du sagtest, an der orig. Aufteilung "Start, Reset, Start" festzuhalten, oder um den Erststart vom Neustart abzuheben, z.B. "Start, Reset, Neustart". So simpel und unwichtig das jetzt vielleicht klingen mag.
Startpilot schrieb: > So simpel und unwichtig das jetzt vielleicht klingen mag. Das ist wichtig! Zumindest in Profibereichen. In einer Maschinensteuerung will ich z.B. schon wissen, wie oft ein Prozess neu gestartet wurde und warum! Gruß Rainer
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.