Forum: Mikrocontroller und Digitale Elektronik 3,3V bis 12V am AVR erkennen (Galvanisch getrennt)


von tim (Gast)


Lesenswert?

Hallo,

ich muss eine per AVR überprüfen, ob eine externe Spannung zwischen 3,3 
Volt und 12 Volt an einem AVR anliegt. (Ich muss die Spannung nicht 
messen.) Die Externe Spannungsquelle muss aber galvanisch vom AVR 
getrennt werden. Erst dachte ich mir das ich das einfach mit nen 
Optokoppler löse, aber bin dann auf folgendes Problem gestoßen:

Da die Spannung die der Diode des Optokopplers nicht konstant ist, kann 
ich keinen Widerstand berechen, um den Strom für die Diode zu begrenzen. 
Wie würde man das am besten lösen? (Möglichst mit wenigen Bauteilen und 
billig) Ich hab schon nach Optokopplen gesucht wo die Diode einen großen 
Spannungsbereich abdeckt, bin aber nicht fündig geworden.

Vielen Dank schonmal
Tim

von -- (Gast)


Lesenswert?

Schau dir das Datenblatt des Optokopplers noch einmal in Ruhe durch und 
überlege dir, welche Schaltzeiten und Kollektorströme du benötigst.

Die Chancen stehen gut, dass ein Widerstand der bei 12V den zulässigen 
Vorwärtsstrom begrenzt auch bei 3.3V noch funktioniert.

Alternativ könntest du die max. Spannung mit einer Zenerdiode auf ein 
dir passendes Maß begrenzen

Viel spannender dürfte die Frage sein, welchen Ruhestrom diese 
Überwachung verbrauchen darf...

von hmm... (Gast)


Lesenswert?

Und wenn man vor den Optokoppler erst einen passenden Vorwiderstand 
packt, dann eine Zenerdiode gegen Ground und dann von dieser definierten 
Spannung über den richtigen Vorwiderstand auf den Koppler geht? Durch R1 
muss nur genügend Strom durch um noch sicher schalten zu können. Über R1 
sollten so 0,5V abfallen im eingeschalteten Zustand damit alles sicher 
klappt, die Zener entsprechen auf 3,6V.

Wie genau du die Schaltschwelle treffen musst und wie stark man die 
Quelle belasten darf hast du ja nicht gesagt...

von Carsten R. (kaffeetante)


Lesenswert?

Wie genau soll es denn sein? Soll es die Fälle unter 3,3 Volt und über 
3,3 Volt binär unterscheiden? Was soll über 12 Volt passieren? Gilt der 
Fall einfach als "über 3,3 Volt" nur das real nicht mehr als 12 Volt 
anliegen?

Schau Dir mal verschiedene Schaltungen zu Konstantstromquellen an. Die 
kannst Du modifizieren. Ein Spannungsteiler wird so ausgelegt, daß er ab 
3,3 Volt Eingangsspannung die ca. 0,6-0,7 Volt zum 
Durchschalten/Anspechen des Transistors erreicht, der Rest der Schaltung 
zur Strombegrenzung wird dann leicht angepaßt aus der KSQ-Schaltung 
übernommen.

Den Rest müßtest Du damit selber hinbekommen können, oder suchst Du 
nicht nur einen Tipp sondern ein fertige Lösung? Ganz nebenbei gibt es 
solche Schaltungen in Schaltnetzteilen (auf Joretronik.de findet man 
einiges im Onlinebuch), nur oft etwas komplizierter mit einem TL431 als 
Referenzspannung anstatt die 0,6-0,7 Volt Basis-Emitterspannung 
ansprechschwelle eines Transistors zu nutzen. Das ist natürlich genauer, 
aber auch ein Bauteil mehr.

von tim (Gast)


Lesenswert?

Hallo,
und danke für die schnellen antworten.
-- schrieb:
> Die Chancen stehen gut, dass ein Widerstand der bei 12V den zulässigen
> Vorwärtsstrom begrenzt auch bei 3.3V noch funktioniert.


Ich hab mal geguckt und gerechnet und es geht nach meinen Berechnungen, 
aber ich bin mir nicht sicher ob die richtig sind:

Wenn ich den 4N25 als Optokopler nehme und als Vorwiderstand einen 220 
Ohm Widerstand, dann habe ich bei 12V und einer Vorwärtsspannung von 1,1 
Volt ca. 50 mA ((12V-1,1V)/220Ohm=49mA) und bei 3,3 Volt habe ich 10mA 
((3,3V-1,1V)/220Ohm = 10mA). Da der Typische Vorwärtsstrom des 4N25 bei 
10mA und der Maximale bei 60mA liegt sollte der Optokoppler doch sicher 
schalten oder übersehe ich was?

hmm... schrieb:
> Und wenn man vor den Optokoppler erst einen passenden Vorwiderstand
> packt, dann eine Zenerdiode gegen Ground und dann von dieser definierten
> Spannung über den richtigen Vorwiderstand auf den Koppler geht? Durch R1
> muss nur genügend Strom durch um noch sicher schalten zu können. Über R1
> sollten so 0,5V abfallen im eingeschalteten Zustand damit alles sicher
> klappt, die Zener entsprechen auf 3,6V.
>
> Wie genau du die Schaltschwelle treffen musst und wie stark man die
> Quelle belasten darf hast du ja nicht gesagt...

Das ist natürlich eine Möglichkeit, aber die Spannungsquelle muss 
"relativ" viel Strom liefern, da viel über die Zener Diode "abfließt".
Und die Schaltschwelle muss nicht genau sein, entweder es liegen 0V an 
oder etwas zwischen 3.3V und 12V, also kann die Schwelle auch bei 1V 
liegen. Die Belastung der Quelle sollte möglichst gering bleiben. Aber 
um mal eine Zahl zu nennen: maximal 100mA

Carsten R. schrieb:
> Wie genau soll es denn sein? Soll es die Fälle unter 3,3 Volt und über
> 3,3 Volt binär unterscheiden? Was soll über 12 Volt passieren? Gilt der
> Fall einfach als "über 3,3 Volt" nur das real nicht mehr als 12 Volt
> anliegen?
>
> Schau Dir mal verschiedene Schaltungen zu Konstantstromquellen an. Die
> kannst Du modifizieren. Ein Spannungsteiler wird so ausgelegt, daß er ab
> 3,3 Volt Eingangsspannung die ca. 0,6-0,7 Volt zum
> Durchschalten/Anspechen des Transistors erreicht, der Rest der Schaltung
> zur Strombegrenzung wird dann leicht angepaßt aus der KSQ-Schaltung
> übernommen.
>
> Den Rest müßtest Du damit selber hinbekommen können, oder suchst Du
> nicht nur einen Tipp sondern ein fertige Lösung? Ganz nebenbei gibt es
> solche Schaltungen in Schaltnetzteilen (auf Joretronik.de findet man
> einiges im Onlinebuch), nur oft etwas komplizierter mit einem TL431 als
> Referenzspannung anstatt die 0,6-0,7 Volt Basis-Emitterspannung
> ansprechschwelle eines Transistors zu nutzen. Das ist natürlich genauer,
> aber auch ein Bauteil mehr.

Ja es soll zwischen unter 3.3Volt und über 3.3Volt entschieden werden. 
Die externe Quelle übersteigt nie 12Volt real.
Natürlich kann man eine KSQ bauen,  ist aber relativ aufwendig für so 
etwas.

Also bis jetzt Würde ich mich für die erste Lösung entscheiden, wenn 
keine Fehler in der Rechnung seien sollten ;)

Tim

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

tim schrieb:
> oder übersehe ich was?
Wann muss deine Schaltung sicher abschalten?

> Wenn ich den 4N25 als Optokopler nehme
Ich würde einen brauchbaren Optokoppler nehmen und mit dem Strom auf die 
Hälfte runtergehen. Denn der Hauptparameter eines Optokopplers heißt 
"Current Transfer Ratio" also "Stromübertragungsfaktor". Der besagt, 
welcher Kollektorstrom bei welchem Basisstrom fließen könnte. Bei deinem 
4N25 ist der CTR gerade mal 20%. Ein PC817 ist da mit 50% schon 
angenehmer unterwegs. Der 4N26 hat 100%. Den CNY17-4 gibt es mit 200%...

Wenn du also ein CTR von 50% hast, dann fließt bei einem Diodenstrom von 
5mA im Transistor rechnerisch ein Strom von 2,5mA. Und wenn du da dann 
einen 4k7 Pullup reinbaust, dann reicht das locker für einen definierten 
Ausgangspegel.

von tim (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

Lothar Miller schrieb:
> Wann muss deine Schaltung sicher abschalten

Es liegen entweder 0V oder ebend ab 3.3Volt bis 12V an. Also die 
Abschaltschwelle darf irgendwo zwischen 0V und 3V liegen.

Ich habe mal die Schaltung gemacht und angehängt. Alternativ zum 4N25 
könnte ich dann einfach den 26iger nehmen damit es läuft?

Lothar Miller schrieb:
> Wenn du also ein CTR von 50% hast, dann fließt bei einem Diodenstrom von
> 5mA im Transistor rechnerisch ein Strom von 2,5mA. Und wenn du da dann
> einen 4k7 Pullup reinbaust, dann reicht das locker für einen definierten
> Ausgangspegel.

Wenn ich ein Pullup nehem und nach GND schalte invertieren das Signal 
oder? Würde das ganze auch mit einem Pulldown und zum Pin hinschalten 
funktioniern, wie im Anhang?

Tim

von Falk B. (falk)


Lesenswert?

@ tim (Gast)

    Schaltung.png

Wohnst du in Australien? Warum zeichnest du alles auf dem Kopf stehend?

Schaltplan richtig zeichnen

>Es liegen entweder 0V oder ebend ab 3.3Volt bis 12V an. Also die
>Abschaltschwelle darf irgendwo zwischen 0V und 3V liegen.

Leg dich mal fest! Sagen wir 2,5V.

>Ich habe mal die Schaltung gemacht und angehängt.

Ohne BauteilWERTE ist der Schaltplan wenig wert.

Aber bei DEN Schaltschwellen braucht man eine Konstantstromquelle 
LM334 an Stelle von R7 ist dein Freund und braucht nur 0,8V 
Flußspannung. Dann geht das auch sicher.

>Wenn ich ein Pullup nehem und nach GND schalte invertieren das Signal
>oder? Würde das ganze auch mit einem Pulldown und zum Pin hinschalten
>funktioniern, wie im Anhang?

Kann man auch machen.

von Carsten R. (kaffeetante)


Lesenswert?

tim schrieb:
> Ja es soll zwischen unter 3.3Volt und über 3.3Volt entschieden werden.
> Die externe Quelle übersteigt nie 12Volt real.
> Natürlich kann man eine KSQ bauen,  ist aber relativ aufwendig für so
> etwas.

Das ist immer eine Frage der Anforderungen, darum auch die Fragen. Ich 
ging von einer Art Power-Good-Signal aus, welches zu erzeugen wäre und 
bei 3,3-12 Volt ein GO gibt, mit wenigstens einigermaßen genauer 
Schaltschwelle. Wenn sichergestellt ist, daß entweder nur 3,3-12 Volt 
oder keine Spannung anliegen, dann geht es natürlich etwas einfacher.

Allerdings brauchst Du auch am Ausgang des Optokopplers eine Beschaltung 
um das Signal interpretieren zu können. Leider ist der erste Post etwas 
verhackstückt, so daß nicht klar ist wo nun wie viele AVRs sitzen. Eine 
Spannung die am AVR anliegt aber auch nicht am AVR anliegt, da 
galvanisch getrennt?

Im einfachsten Falle wäre die Ausgangsbeschaltung ein Widerstand. Damit 
erhältst Du dann aber ein analoges Ausgangssignal, welches Du irgendwie 
Auswerten willst. Das könnte der Schmitt-Trigger im Eingang des AVR 
erledigen. Alles in allem ist das Ein-und Ausschaltverhalten bei der 
Variante mit je einem Widerstand auf jeder Seite des Optokopplers sehr 
sehr ungenau. Bei deiner nachträglichen Beschreibung könnte das aber 
reichen. Besonders in diesem Falle erleichter einem der Tipp von Lothar 
Miller bezüglich CTR die Arbeit, weil man dadurch ein steileres Signal 
durch den passenden Optokoppler bekommt.

Wenn 4 absolute Basic-/Allerweltsbausteine schon kompliziert sind... 
Nicht alles läßt sich nur mit einem Stück Draht erledigen. Und bei etwas 
höheren Genauigkeitsanforderungen kann man es sich ausgangsseitig 
einfacher machen indem man eingangsseitig ein, zwei Teile mehr verbaut 
um ausgangsseitig ein markanteres Signal zu erhalten.

: Bearbeitet durch User
von tim (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
Falk Brunner schrieb:
> Wohnst du in Australien? Warum zeichnest du alles auf dem Kopf stehend?

Nein ich wohne nicht Australiern :) Das war nur ein Ausschnitt aus einem
größerem Schaltplan. Und es war einfache den Optokoppler zu drehen um 
die Signalleitung nicht zu kreuzen.

Falk Brunner schrieb:
> Ohne BauteilWERTE ist der Schaltplan wenig wert.

Ich hab den Schaltplan noch nochmal neu gemacht.

Carsten R. schrieb:
> Allerdings brauchst Du auch am Ausgang des Optokopplers eine Beschaltung
> um das Signal interpretieren zu können. Leider ist der erste Post etwas
> verhackstückt, so daß nicht klar ist wo nun wie viele AVRs sitzen. Eine
> Spannung die am AVR anliegt aber auch nicht am AVR anliegt, da
> galvanisch getrennt?

Also ich hoffe mein neuer Schaltplan gibt mehr Info´s. Also die Spannung 
liegt nicht direkt am AVR an, sondern nur das Signal ob Spannung da ist.

Zur Frage der Schaltzeiten: Es liegt im Breich von 500ms, das man die 
Flankensteilheit am Ausgang des Optokopplers vernachlässigen kann.



Mir wurde ja jetzt mehrmals ein KSQ emfohlen: Meine Frage ist nun, ob 
das wirklich notwendig ist? Denn ich ich hatte es ja oben mit nur einem 
Widerstand berechnet und es sollte laut den Zahlen gehen. Dann wurde mir 
noch der LM334 empfohlen, gibt es alternativen die bei Reichelt zu 
erwerben sind.

Tim

von Carsten R. (kaffeetante)


Lesenswert?

Natürlich gibt es Alternativen. Konstantstromquelle suchen und 
Datenblatt vergleichen.

Hast Du dir mal die Schematas, die man bei Google zuhauf findet, 
angesehen? Der Selbstbau beinhaltet, je nach Bauart, ein oder zwei 
Billigtransen, die man überall nachgeschmissen bekommt bis man stopp 
sagt. Dazu kommen noch ein paar Widerstände (brauchst du sowieso) und 
eventuell ein zwei Dioden.

Bei deinen herabgesenkten Minimalstanforderungen sollte das aber mit 
passendem Optokoppler mit der von Dir favorisierten 
Minimalst-Widerstandslösung möglich sein.

Wenn Su doch noch eine KSQ nimmst, kommen dann eventell noch ein 
Transistor und ein Widerstand hinzu. Schau dir die Schaltungen mal in 
Ruhe an. Die sind nicht so schwer. Dann hat man was Genaueres und was 
gelernt. Wenn dazu fragen aufkommen können wir helfen. Ich will es hier 
nur nicht komplett vorkauen, besonders wenn es fraglich ist ob du es 
bauen willst.

Übrigens ist die Ansprechschwelle deiner Minimalschaltung von der 
Betriebsspannung des AVR abhängig. Das Verhalten ändert sich also mit 
der Versorgungsspannung des AVR. Das liegt daran daß sich die 
Ansprechschwellen des Schmitt-Triggers im AVR mit der Betriebsspannung 
verändern. Willst Du das wirklich, bzw. könnte das ein Problem werden?

: Bearbeitet durch User
von Falk B. (falk)


Lesenswert?

@ tim (Gast)

>Ich hab den Schaltplan noch nochmal neu gemacht.

Schon mal ausgerechnet, wieviel Strom fließt?

3,3V -> 10mA
12V -> 50mA

Wenn gleich nach gerade noch so innerhlab der maximal zulässigen 
Parameter liegt, schön ist was anderes.

>Zur Frage der Schaltzeiten: Es liegt im Breich von 500ms, das man die
>Flankensteilheit am Ausgang des Optokopplers vernachlässigen kann.

Ja. Du meinst aber die Schaltzeit, nicht die Flankensteilheit. Das sind 
verschiedene Dinge.

>Mir wurde ja jetzt mehrmals ein KSQ emfohlen: Meine Frage ist nun, ob
>das wirklich notwendig ist?

Sie ist sinnvoll.

>Widerstand berechnet und es sollte laut den Zahlen gehen. Dann wurde mir
>noch der LM334 empfohlen, gibt es alternativen die bei Reichelt zu
>erwerben sind.

Was gefällt dir am LM334 nicht?

http://www.reichelt.de/LM-334-TO92/3/index.html?&ACTION=3&LA=446&ARTICLE=10468&artnr=LM+334+TO92&SEARCH=lm334

von tim (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

also ich bin jetzt doch soweit das ich eine Kostantstromquelle verwenden 
will/werde :)

Falk Brunner schrieb:
> Was gefällt dir am LM334 nicht?
>
> 
http://www.reichelt.de/LM-334-TO92/3/index.html?&ACTION=3&LA=446&ARTICLE=10468&artnr=LM+334+TO92&SEARCH=lm334

Ich hatte vorhin bei der schnellen Suche den irgendwie nicht gefunden. 
Aber wenn es den bei Reichelt gibt, kann ich ihn verwenden.

Also anbei habe ich mal die Schaltung gehängt wie ich es machn würde. 
(Ich hab noch nie mit einer KSQ gearbeitet, also hab ich auch keine 
richtige ahnung davon. Wenn ich das Datenblatt Richtig verstanden hab 
reicht für eine KSQ ein einfacher Widerstand zum einstellen. Siehe 
Figure 13. Allerdigs versehe ich nicht wie man den ausrechnet? Denn 
unten in der Formel sind doch viel zu viele Variablen und zu wenig 
konstanten? Kann mir das jemand erklären? Ansonsten ist D1 ist für den 
Verpolungsschutz und R1 als pulldown um immer ein definiertes Signal am 
Attiny zu haben.

Tim

von Falk B. (falk)


Lesenswert?

@ tim (Gast)

>richtige ahnung davon. Wenn ich das Datenblatt Richtig verstanden hab
>reicht für eine KSQ ein einfacher Widerstand zum einstellen.

Ja.

>Figure 13. Allerdigs versehe ich nicht wie man den ausrechnet?

R = 68mV/I

von tim (Gast)


Lesenswert?

Falk Brunner schrieb:
> R = 68mV/I

Also wenn ich den Optokoppler mit 10mA betreiben will, dann also 
68mV/10mA => 6,8Ohm!?

Tim

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

tim schrieb:
> Also wenn ich den Optokoppler mit 10mA betreiben will, dann also
> 68mV/10mA => 6,8Ohm!?
Ja, so steht es im Datenblatt. Allerdings steht auch im Datenblatt
1
Absolute Maximum Ratings
2
...
3
Set Current   10 mA
Und vom "absoluten Maximum" sollte man normalerweise tunlichst ein wenig 
wegbleiben. Man fährt ja einen Automotor auch nicht dauerhaft im roten 
Drehzahlbereich!

von tim (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

Lothar Miller schrieb:
> Und vom "absoluten Maximum" sollte man normalerweise tunlichst ein wenig
> wegbleiben. Man fährt ja einen Automotor auch nicht dauerhaft im roten
> Drehzahlbereich!

ja das hatte ich mir eigendlich auch gedacht das man den nicht am Limit 
betreibt, aber Falk Brunner hatte ihn mir emfohlen, deshalb hatte ich 
mir dann irgendwie gedacht das es schon passt:

Falk Brunner schrieb:
> Aber bei DEN Schaltschwellen braucht man eine Konstantstromquelle
> LM334 an Stelle von R7 ist dein Freund und braucht nur 0,8V
> Flußspannung. Dann geht das auch sicher.

Also hab ich die Schaltung nochmal neu gemacht und anstatt dem 4n25 den 
6n139 verwendet, da dieser eine typischen Vorwärtsstrom von nur 1,6mA 
hat. Also hab ich den LM334 mit einem 39 Ohm Widerstand so eingestellt 
das er so eingestellt das er (68mV/39Ohm=)1,74 mA liefert.

Funktioniert die Schlatung so richtig? (s. Anhang)

Vielen Dank nochmal
Tim

von Falk B. (falk)


Lesenswert?

@ tim (Gast)

>das er so eingestellt das er (68mV/39Ohm=)1,74 mA liefert.

Naja, man kann auch mädchenhaft sein. Wenn 10mA als MAximum Rating 
dastehen, kann man schon mal 8-9mA ohne schlechtes Gewissen nutzen. 
Macht an 12V ~ 120mW, das bringt den IC nicht um.

>Funktioniert die Schlatung so richtig? (s. Anhang)

Ja.

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.