Forum: Mikrocontroller und Digitale Elektronik OpenCollector/PullUp-Widerstand - Funktionsweise &Dimension


von EreburX (Gast)


Lesenswert?

Guten "morgen",

ich schlage mich jetzt seit ein paar Tagen mit follgendem Problem rum,
habe google auch schon befragt, erhalte aber nur unzulängliche
informationen....

Also, ich habe einen Opencollectorausgang, wenn dieser durchschaltet,
möchte ich an einem PIC ein logisches signal erhalten, um dieses weiter
verarbeiten zu können. Bzw andersrum, wenn der OpenCollector-Ausgang
nicht aktiv ist, soll am PIC auch ein logisches signal anliegen,
welches ich dann ebenfalls verarbeiten möchte.
Ich bin jetzt schon so weit, dass ich weiß, dass das ganze mit einem
PullUp-Widerstand zu realisieren ist, allerdings hab ich keine Ahnung,
wie dieser zu dimensionieren ist, und wie die schaltung da aussehen
muss :-/

Bin über jede Hilfe dankbar!

MfG
EreburX

von Hubert.G (Gast)


Lesenswert?

ein Pull-Up ist ein Widerstand nach VCC. In deinem Fall würde ich es mit
10k versuchen.
Also vom Opencollectorausgang ein Widerstand nach VCC und zum Eingang
des PIC.
Siehe auch hier: www.elektronik-kompendium.de/public/schaerer/pullr.htm

von EreburX (Gast)


Lesenswert?

wow, das ging schnell :)

also einen widerstand von dem OpenCollector zur masse, und eine leitung
ohne widerstand zum PIC?

und die nächste frage wäre, wie kommst du auf die 10k? würde das ja
auch gerne verstehen :D

Danke & MfG

von Hubert.G (Gast)


Lesenswert?

Nicht zur Masse, VCC ist +, drum heisst es ja Pull-Up, nach GND wäre es
ein Pull-Down.
Ein Widerstand in die Leitung wäre zur Sicherheit notwendig, denn wenn
das Eingangsport als Ausgang geschaltet wird und Highpegel bringt und
gleichzeitig der Opencollectorausgang schaltet würde dieser den Strom
begrenzen.
10k ist ein Standardwert. Der minimale Widerstand ist abhängig vom max.
Collektorstrom, der maximale Widerstand ist abhängig vom
Eingangswiderstand der nachfolgenden Schaltung, er muss diesen noch
sicher auf high ziehen können.

von EreburX (Gast)


Lesenswert?

mh, und wie groß soll dann der widerstand zwischen opencollector und PIC
sein?

so ganz wirklich versteh ich das nicht...

von Karl H. (kbuchegg)


Lesenswert?

Ist doch ganz simpel:
Den OpenCollector Ausgang kannst du dir vereinfacht
wie ein Relais oder einen Schalter vorstellen.

   5 V -----+
            |
           ---
           | | 10 k
           | |
           ---
            |
            +-------------------------> PIC
            |
            o
              /
   ----------/
            /
            |
   Gnd -----+--------------------------

Ist das Relais offen, dann hast du auf der Leitung zum Pic
Vc, da der PIC Anschluss über den 10k Widerstand mit 5V
verbunden ist. Wird das Relais geschlossen, so hat der
PIC Anschluss direkte Verbindung mit Masse und ist daher
0 Volt (und über den 10K Widerstand rinnt ein kleiner
Strom nach Gnd)

Soweit so gut. Nun passieren aber auch Fehler. Zb. könnte
der Fehler passieren, dass der PIC Eingang irrtümlich als
Ausgang programmiert wird. Und weil es der Teufel so haben
will, stellt das Programm auch noch zufällig einen 1 Pegel
(also 5V) auf diesen Ausgang ein. Hat jetzt das Relais angezogen,
so gibt es eine direkte Verbindung von diesem PIC Ausgang (der
5V führt) zu Masse: Ein Kurzschluss. Das wird der PIC nicht
lange mitmachen, da dann sehr viel Strom rinnt. Also musst
du den Strom für diesen Fehlerfall begrenzen. Was kein dein
PIC maximal an einem Ausgang liefern? Ich hab keine Ahnung, aber
um einen Wert zu haben, sage ich mal 15 mA. Du musst also einen
Widerstand finden, sodass wenn auf der einen Seite 5V anliegt
und auf der anderen Gnd, dann sollen nur ~15mA rinnen.
Ohmsches Gesetz  R = U / I  ->  5 / 0.015 -> 330 Ohm.

Also wirst du die Schaltung so modifizieren:


   5 V -----+
            |
           ---
           | | 10 k
           | |
           ---
            |         ------
            +---------|    |----------> PIC
            |         ------
            o           330
              /
   ----------/
            /
            |
   Gnd -----+--------------------------

von EreburX (Gast)


Lesenswert?

na :)

das is doch mal richtig schön! top, hab nirgens so ne beschreibung
gefunden :) einfach simpel, und nun geht es zum probieren weiter :)
danke!

MfG
EreburX

von Hubert.G (Gast)


Lesenswert?

Der Opencollector hat z.B. einen max. Strom von 20mA bei 5V. Der
Widerstand rechnet sich dann aus U/I, in diesem Fall wäre das 250 Ohm,
das ist aber das absolute Minimum. Wenn keine weitere Beschaltung
vorliegt würde ich 1k verwenden. Das muss man sich aber von Fall zu
Fall wenn sich die Beschaltung ändert ausrechnen.

von EreburX (Gast)


Lesenswert?

öhm, könnte man nicht auch einfach ne diode vom vor den PIC setzen,
welche vom PIC in richtung OpenCollector sperrt?

MfG
EreburX

von Hubert.G (Gast)


Lesenswert?

Dann kannst du aber in Richtung PIC auch keinen GND mehr schalten um den
Eingang auf low zu ziehen.

von Ronny (Gast)


Lesenswert?

Theoretisch kann der Pullup beliebig gross sein.Je höher,desto weniger
Strom fliesst wenn 'das Relais' geschlossen ist gegen Masse.Jedoch
muss der Pic-Eingang noch sicher den High-Pegel erkennen können,weshalb
ein SEHR geringer Strom noch fliessen muss.

Wenn die Schaltfrequenzen dann grösser werden(grösser mehrere
10KHz),limitiert zusätzlich noch die Eingangskapazität des Eingangs-Pin
den Wert der angeschlossenen Widerstände.Diese Kapazität muss quasi
'umgeladen' werden,bis der Pegel erkennbar für den Pic anliegt.Bei zu
hohen Werten für R wäre dann kein definierter Pegel mehr erkennbar.

Der genannte Werte von 10K ist einfach ein Erfahrungswert,bei dem man
meistens auf der sicheren Seite ist.

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.