Forum: Mikrocontroller und Digitale Elektronik Willkürliche Veränderungen der Schaltzustände ATTiny13


von Daniel L. (dannynrw)


Lesenswert?

Hi Leutz,
bin schon seit einigen Tagen eine Schaltung am testen, die bis jetzt 
immer funktioniert hat. Allerdings ist mir gestern aufgefallen, daß 
plötzlich nach mehreren Stunden Betrieb und ohne jede Veränderung 
sämtlicher Schalterstellungen ein anderer Ausgang geschaltet wurde. Dies 
darf unter keinen Umständen passieren und nun frag ich hier mal in die 
Runde. Wie kann sowas passieren?
Hier mal ein paar kleine Infos zur Schaltung. Die Spannungsversorgung 
läuft momentan über ein Labornetzteil, welches auf 12V eingestellt ist. 
Die 5V-Versorgung für den ATTiny13 wird über einen LP2950 realisiert und 
der empfohlene 100nF-Kondensator vom VCC-Anschluß des ATTiny13 nach 
Masse ist ebenfalls vorhanden. Die Eingänge zum Verändern der 
Schaltzustände sind folgendermaßen ausgeführt.
+12V -> Kippschalter (Schließer) -> Vorwiderstand 5k6 -> Photomos 
(Optokoppler) (Anschluß A1)... und Anschluß A2 geht dann direkt auf 
Masse.
Auf der "Laststromseite" des Photomos hängt dann jeweils oberhalb der 
Pin, bspw. PB5, der dann durch Anziehen des Photomos einfach nur auf 
Masse gezogen wird. Jegliche Entprellung oder hardwaremäßige 
Schutzbeschaltung hab ich erstmal weggelassen. Achja, der ATTin13 wird 
mit 1,2MHz betrieben.
Falls gewünscht, kann ich gerne mal nen Schaltplan liefern oder das 
Programm posten.
Habe zur Probe schon mal sämtliche Kippschalter, die jetzt 0-Signal 
liefern abgeklemmt um zu sehen, ob's nicht irgendwie daran liegt.
Freu mich über jeden guten Tipp.
Sonnige Grüße :-).
Daniel

von spess53 (Gast)


Lesenswert?

Hi

Pull-Up-Widerstände?

MfG Spess

von Daniel L. (dannynrw)


Lesenswert?

Sorry, vergessen... Sind eingeschaltet.

von Daniel L. (dannynrw)


Lesenswert?

Also hier mal ein Zwischenstand.
Die Schaltung läuft seit gestern morgen mit den abgeklemmten 
Kippschaltern einwandfrei und der Schaltzustand hat sich seitdem nicht 
mehr verändert.
Werde diese Nacht einfach nochmal abwarten und schauen, ob sich noch 
etwas ändert.
Scheint es also wirklich so zu sein, daß die Kippschalter prellen oder 
könnte das eine andere Ursache haben?
Vielleicht hat da jemand noch eine Idee...
Wie schon geschrieben waren die Kontakte der abgeklemmten Kippschalter 
geöffnet, das hieße ja, daß sie zwischendurch trotzdem die 12V auf den 
Eingang geschaltet hätten (oder wenigstens die Spannung, die der 
Optokoppler benötigt, um den Transistor durchzuschalten), wenn auch 
vielleicht nur für ein paar µS oder gar nS.
Beste Grüße :-).
Daniel

von Karl H. (kbuchegg)


Lesenswert?

Daniel Lo schrieb:

> Eingang geschaltet hätten (oder wenigstens die Spannung, die der
> Optokoppler benötigt, um den Transistor durchzuschalten), wenn auch
> vielleicht nur für ein paar µS oder gar nS.

Ziemlich unwahrscheinlich.

Das ein geschlossener Schalter durch Erschütterungen mal kurz den 
Kontakt verliert, kann ich mir vorstellen.
Aber das dadurch ein offener Schalter seine Kontaktzungen soweit 
verstellt, dass er auf der anderen Seite Kontakt kriegt, ist nicht 
normal.

von Daniel L. (dannynrw)


Lesenswert?

Da hast Du schon Recht, aber mich macht die ganze Sache trotzdem etwas 
stutzig. Die Kippschalter sind als kleines "Testrack" auf einer 
Lochrasterplatine montiert und auch wenn dies nur ein Versuchsaufbau 
ist, die Verarbeitung ist einigermaßen sauber.
Fakt ist, daß die Schaltung ohne die angeschlossenen Kippschalter schon 
eine Weile anscheinend sauber läuft. Möchte nur nicht, daß das ganze 
wieder passiert, wenn die Schaltung im Auto zum Einsatz kommt.
Daher möchte ich dem ganzen vorbeugen und habe jetzt entweder die 
Möglichkeit, mein "Testrack" nochmals neu aufzubauen oder aber es mit 
einer softwaremäßigen Entprellung zu versuchen und dann bei weiteren 
Tests zu hoffen, daß der Fehler nicht mehr auftritt.
Aber mal ne andere Frage und hier frage ich mal nach Euren persönlichen 
Erfahrungen. Das ganze soll ja im Auto zum Einsatz kommen. Abgefragt 
wird hierbei z.B. die Zündung. Ist es sinnvoll, dieses Signal (und 
andere von irgendwelchen Relaiskontakten kommenden Signalen) zu 
entprellen?

von citb (Gast)


Lesenswert?

Daniel Lo schrieb:
> Ist es sinnvoll, dieses Signal (und
> andere von irgendwelchen Relaiskontakten kommenden Signalen) zu
> entprellen?

Es ist nicht nur sinnvoll, sondern in der Regel zwingend.

citb

von Daniel L. (dannynrw)


Lesenswert?

Danke, werde mich die nächsten Tage mal ein wenig einlesen und 
ausprobieren. Hab schon hin und wieder über's Entprellen per Software 
gelesen, aber selbst ausprobiert noch nicht.
Softwareentprellung sollte genügen oder?

von Knut (Gast)


Lesenswert?

Ja. Aber ein 10nF am Eingang schadet auch nicht. Nicht geizen bei sowas.



Knut

von Anja (Gast)


Lesenswert?

Daniel Lo schrieb:
> Wie kann sowas passieren?

irgendwelche EMV-Störungen.

Daniel Lo schrieb:
> +12V -> Kippschalter (Schließer) -> Vorwiderstand 5k6 -> Photomos
> (Optokoppler) (Anschluß A1)... und Anschluß A2 geht dann direkt auf
> Masse.
Parallel zur LED wirst Du noch einen 4,7nF (oder größer) brauchen.
Dasselbe dann am Ausgang der Optokoppler.
Wenn du schon mal bei EMV-Tests (Burst, ESD) gesehen hast, daß LEDs 
unter EMV-Beschuß im Dunkeln anfangen zu flackern wirst Du auch 
verstehen warum.

Daniel Lo schrieb:
> Softwareentprellung sollte genügen oder?
Wenn sie richtig gemacht ist schon. Voraussetzung ist daß die 
Optokoppler entstört sind.

Daniel Lo schrieb:
> Dies darf unter keinen Umständen passieren

Schalte mal eine alte Hausklingel (kein Gong) parallel zu den 12V.
Wenn sich dann nichts an den Schaltzuständen am Ausgang ändert bist du 
halbwegs auf der sicheren Seite.

Gruß Anja

von Daniel L. (dannynrw)


Angehängte Dateien:

Lesenswert?

Danke erstmal für die vielen zahlreichen Tipps und Antworten.
Hab auch mal eine Zeichnung angehängt, die neuen Kondensatoren sind dann 
auf der Zeichnung rot markiert.
Meinst Du das so in etwa Anja? Gehen dann ganz normale
Tantal-Kondensatoren?

von Verwunderter (Gast)


Lesenswert?

Daniel Lo schrieb:
> ... vielleicht nur für ein paar µS oder gar nS

Solche Leitfähigkeitswerte sind für einen mechanischen Schalter 
allerdings eher ungewöhnlich. Ein bisschen besser sollte der schon 
abschalten.
;-)

von Anja (Gast)


Lesenswert?

Daniel Lo schrieb:
> Gehen dann ganz normale
> Tantal-Kondensatoren?

Nimm lieber Vielschicht Keramik C's

Gruß Anja

von Daniel L. (dannynrw)


Lesenswert?

Welche Vorteile haben Kerkos gegenüber Tantal-Kondensatoren?
Höhere Durchschlagsfestigkeit?
Werde das ganze auf jeden Fall mal ausprobieren, dann alle Kippschalter 
wieder anschließen und abwarten.
Die von mir oben gezeichnete Schaltung ist richtig Anja?

von Daniel L. (dannynrw)


Lesenswert?

Also hab nun mal so langsam Kippschalter für Kippschalter wieder 
angeklemmt, an denen liegt's tatsächlich nicht. Was ich mir noch 
vorstellen könnte: Ich habe in einem Fall direkt einen Pin des µC (PB2) 
auf einen Schließer gelegt und von dort aus zur Masse weile alle anderen 
Pins bereits belegt sind (dort ist also kein Optokoppler 
zwischengeschaltet). Habe diesen nun nochmal angeklemmt und werde 
nochmal abwarten, was passiert.
Die Vielschichtkondis hab ich bereits besorgt, in den nächsten Tagen 
wird weiter getestet.

von Peter D. (peda)


Lesenswert?

Knut schrieb:
> Ja. Aber ein 10nF am Eingang schadet auch nicht. Nicht geizen bei sowas.

Kondensatoren können bei ungünstiger Leitungsführung durchaus schaden, 
siehe Pollin-Board.

Kondensatoren dürfen nie ohne Strombegrenzung (Widerstand) umgeladen 
werden.
Kondensatoren direkt am Kontakt sind leider eine häufige Unsitte.


Peter

von Daniel L. (dannynrw)


Angehängte Dateien:

Lesenswert?

So, habe jetzt mal aufgezeichnet, was ich in meinem letzten Beitrag 
meinte. In grün gezeichnet ist also der Kontakt, den ich ohne 
Optokoppler auf den Pin gelegt habe. Hatte diesen heute mittag wieder 
angeklemmt und siehe da, der Fehler passiert wieder. Klemme ich genau 
diesen Kippschalter ab (der ja sowieso im Normalfall geöffnet ist), so 
scheint die Schaltung sauber zu arbeiten. Kann es sein, daß hier evtl. 
Störungen eher ins Gewicht fallen als wenn ich einen Optokoppler 
dazwischenschalte?

von Peter D. (peda)


Lesenswert?

Daniel Lo schrieb:
> In grün gezeichnet ist also der Kontakt, den ich ohne
> Optokoppler auf den Pin gelegt habe. Hatte diesen heute mittag wieder
> angeklemmt und siehe da, der Fehler passiert wieder.

Schalte mal 4,7k in Reihe, möglichst nahe am MC.

So ein GND kann ganz schön verseucht sein, sogar negativ gegenüber dem 
MC und das mag er nicht ohne Strombegrenzung.


Peter

von Daniel L. (dannynrw)


Lesenswert?

Meinst die Masse ist von Störungen verseucht?
Jedenfalls bekomme ich morgen ein Oszi und komme dann vielleicht der 
Sache etwas näher. Vielleicht liegt's ja doch am Platinenlayout, daß 
irgendwelche Leiterbahnen ungünstig gewählt sind. Wobei ich rein vom 
Abstand her auf der sicheren Seite sein sollte (überall mindestens 
0,6mm).

von Daniel L. (dannynrw)


Lesenswert?

Also, hab einfach mal den Tipp mit dem Widerstand ausprobiert. Hat 
leider nichts gebracht. Auch habe ich mal am entsprechenden Pin 
geschaut, ob Spannungseinbrüche zu sehen sind, leider auch erstmal 
negativ. Die Versorgungsspannung selbst ist ebenfalls schön glatt.
Werde heut abend nochmal n paar Messungen durchführen, aber bis jetzt 
tappe ich immer noch im Dunkeln.
Vielleicht hat jemand von Euch doch noch den einen oder anderen guten 
Tipp.

von Daniel L. (dannynrw)


Lesenswert?

So, hab jetzt nochmal n paar Messungen gemacht und so wie ich das sehe, 
hatten Anja und Peter wohl Recht. Die Messung erfolgte also hinter dem 
geöffneten Schalter zur Masse. Dabei habe ich gesehen, daß z.B. der 
Betrieb des Fahrstuhls hier im Haus teilweise recht fiese Spikes 
verursacht, die sowohl in den positiven als auch in den negativen 
Spannungsbereich gehen. Desweiteren sind ständig Störungen vorhanden, 
die meist von +0,2V bis -0,2V gehen. Das reicht aber anscheinend noch 
nicht aus, um ein für den µC verwertbares Signal zu liefern. Allerdings 
glaube ich schon, daß der Fehler diese fiesen Störungen sind wie schon 
von Anja und Peter beschrieben. Sieht so aus als müsste ich doch noch 
hinter jedem Schaltkontakt für die Eingänge irgendwelche Filter 
vorsehen. Welche (möglichst einfachen) Möglichkeiten gibt es da? 
Varistoren? Dioden?
Schon Wahnsinn, welche "Viren" sich so im Versorgungsnetz herumtreiben, 
aber man glaubt sowas ja erst, wenn man es mal gesehen hat ;-). Schätze 
fast, daß mir mein Nachbar meinen Ausgang ständig ausschaltet lach.

von Jonathan S. (joni-st) Benutzerseite


Lesenswert?

Eine Softwareentprellung sollte da eigentlich helfen. Dann kommen keine 
zu kurzen Impulse mehr durch.

Gruß
Jonathan

von Daniel L. (dannynrw)


Lesenswert?

Ist es eigentlich möglich, daß auch ein Oszi eventuelle Schaltvorgänge 
nicht erkennt weil zu langsam? Habe bislang noch nie gesehen, daß die 
Spannung vom internen Pull-Up des µC zusammenbrach, wenn ein 
Schaltvorgang erkannt wurde, der aber nicht von mir kam.
Fakt ist einfach, klemme ich die Kippschalter ab, die dafür 
verantwortlich sein könnten, daß mein Ausgang zurückgesetzt wird, so 
läuft das Ding tagelang durch.
Habe hier nen Thread bezüglich (Software)Entprellung gefunden. Diesen 
werde ich mir mal genau durchlesen und mich mal daran wagen. Denke wenn 
ich das irgendwie hinbekomme, dann gehören willkürliche Schaltvorgänge 
der Vergangenheit an.
Werde natürlich auch nochmal schauen, wie man hardwaremäßig vernünftige 
Filter bzw. Entprellschaltungen aufbauen kann.

von Daniel L. (dannynrw)


Lesenswert?

Habe nun mal die Software ein wenig abgeändert und nun scheint das ganze 
zu laufen. Sind immerhin schon 4 Tage am Stück, daß der Ausgang nicht 
wieder willkürlich zurückgesetzt wurde.
Danke allen an dieser Stelle nochmal für die vielen hilfreichen Tipps.

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
Noch kein Account? Hier anmelden.