Forum: Mikrocontroller und Digitale Elektronik Relais an AVR schaltet nicht. Spannung am Port bricht ein


von relais (Gast)


Lesenswert?

hi Leute!

Ich habe ein Problem, und zwar will ich (ganz billig) ein Relais am AVR 
schalten.
Meine Schaltung sieht folgender Maßen aus:

                                5V
                                |
AVR ---4,7k----     --->|-------t
     |                 D1       -->------RELAIS----- GND
     ---||---GND               BC457   |         |
        C1                             ----|<-----
                                           D2

D1 ist irgendwas kleines
D2 ist eine 1N4004
C1 ist ein 100nF Kerko
der Transistor (das komische Zeug in der Mitte) ist ein BC547B
das Relais ist ein kleines 5V Relais aus der Kiste (alt, gepolt)

Wenn ich das einfach mit 5V statt dem AVR teste schaltet das Relais wie 
es soll.
Wenn ich mein Programm laufen lasse kann ich am Port an den stellen wo 
es schalten soll auch 4,6V messen. (nur mit den 4,7k dazwischen)
Wenn ich aber das oben gezeichnete (was auf einem extra 
Platinen-Streifen ist) an den AVR anschließe bricht die Spannung am Port 
auf 0,5V ein und das Relais schaltet nicht.

Auf meiner Platine ist vor dem 4,7k beim AVR-Port noch ein 100nF KERKO 
nach GND. Diesen hatte ich Testweise entfernd, hat aber keinen 
Unterschied gemacht.

vmtl habe ich nur ein böses Brett vor dem Kopf... Helft mir bitte...

DANKE

relais

von Christian R. (supachris)


Lesenswert?

NPN Transistoren verschaltet man in aller Regel so, dass der Emitter auf 
Masse kommt, an die Basis per Vorwiderstand die Steuerspannung, und 
zwischen Kollektor und die Versorgungsspannung die Last. Bau die 
Schaltung dementsprechend um und dann sollte es klappen. Wenn du 
unbedingt, das Relais an Masse haben musst, brauchst du einen PNP 
Transistor.

von Bensch (Gast)


Lesenswert?

Wieso kommen eigentlich so viele auf die hirnrissige Idee, einen 
Verbraucher mit einem Emitterfolger zu schalten?

Ansonsten: Verdrahtungsfehler.

von Christian T. (Gast)


Lesenswert?

Probier mal den 4k7 kleiner zu machen. z.B. auf 1k. Eventuell reicht der 
Strom nicht aus um den Transistor voll durchzusteuern.

von Falk B. (falk)


Lesenswert?


von Marcus K. (marcusk)


Lesenswert?

eventuell wird ja auch mit dem Pull-Up aus dem Amtel geschaltet -> 
Software fehler

von Bensch (Gast)


Lesenswert?

> Probier mal den 4k7 kleiner zu machen. z.B. auf 1k. Eventuell reicht der
Strom nicht aus um den Transistor voll durchzusteuern.

Passt irgendwie nicht ganz zur Fehlerbeschreibung....

von olibert (Gast)


Lesenswert?

> D1 ist irgendwas kleines

Was soll eigentlich D1 bringen ?  Eine Gratis-Diode bringt die 
BE-Strecke des Transistors bereits mit..

Ansonsten die ausfuehrliche Doku, die Falk bereits erwaehnt hat 
durchlesen.

von Stephan H. (stephan-)


Lesenswert?

da bin ich aber gespannt die der AVR an der Basis eine Spannung von 
+0,7V gegenüber dem Emitter erzeugen und halten will...

von relais (Gast)


Lesenswert?

hallo.

habs grade umgebaut:

5V--------------------RELAIS-----------------
              |                |            |
              ---------|<-------            |
                                            |
AVR---------4,7k--------->|-----------------t
                                            -->-----GND

und scheint zu funktionieren...
wieso das in der anderen variante nicht ging kann ich 100% zwar nicht 
erklären, aber vmtl reicht tatsächlich der strom aus dem controller 
nicht aus, oder?
so scheint es jedenfalls problemlos zu funktionieren.
VIELEN DANK

relais

von Lutz (Gast)


Lesenswert?

Hier hast Du die 100 % Erklärung.

>da bin ich aber gespannt die der AVR an der Basis eine Spannung
>von +0,7V gegenüber dem Emitter erzeugen und halten will...

Wenn der Transistor gesperrt ist, hat der Emitter Massepotential. Der 
AVR gibt sagen wir 5 V aus. Somit UBE = 5 V und der Transistor leitet 
auf der Kollektor-Emitter-Strecke. Nun ist ein Spannungsteiler UCE und 
Relais. Da UCE aber quasi 0 V ist, fällt die gesamte Spannung UB am 
Relais ab. Wie kann UBE jetzt noch größer asl UB sein, damit der 
Transistor weiterhin durchgeschaltet bleibt?

von relais (Gast)


Lesenswert?

nachtrag:
es gibt immernoch ein problem und ich wüsste gerne, ob die obere 
schaltung nun ok ist oder nicht.
denn:
das schaltet, aber das relais muss man mechanisch anstupsen...

möglichkeit a) das relais hat nen hau
möglichkeit b) die beschaltung stimmt irgendwie nicht
möglichkeit c) das kann so ja garnicht gehen

DANKE soweit
relais

von Bensch (Gast)


Lesenswert?

> möglichkeit c) das kann so ja garnicht gehen

....weil am Relais nur höchstens 3V ankommen!

von Uwe (Gast)


Lesenswert?

Hi!
>Wie kann UBE jetzt noch größer asl UB sein, damit der
>Transistor weiterhin durchgeschaltet bleibt?
Garnicht, aber 4,7-4,8V kommen schon. Das könnte eventuell für das Rel.
zu knapp sein.
Die Fehlermeldung lautet aber:
>Wenn ich mein Programm laufen lasse kann ich am Port an den stellen wo
>es schalten soll auch 4,6V messen. (nur mit den 4,7k dazwischen)
>Wenn ich aber das oben gezeichnete (was auf einem extra
>Platinen-Streifen ist) an den AVR anschließe bricht die Spannung am Port
>auf 0,5V ein und das Relais schaltet nicht.
4,6V sind schon mal recht komisch, normalerweise fast Ub.
Aja, da ist ja noch D1! Weg damit.
0,5V mit Emitterfolger? Entweder ist D2 def. oder tatsächlich nur Pullup
aktiv und das Rel. braucht ordentlich Strom.
Die Variante mit Rel. am Plus ist aber trotzdem besser weil Uce_satt nur
ca. 0,2V und damit 4,8V fürs Rel.
>das schaltet, aber das relais muss man mechanisch anstupsen...
entweder a) oder du hast irgendwas falsch verdratet. Welche Spannung ist
denn am Rel zu messen?

Viel Erfolg, Uwe

von Maik W. (werner01)


Lesenswert?

dann nim doch nen Mösfet!

von relais (Gast)


Lesenswert?

hi!
also hab D1 mal entfernt und dann mal nachgemessen.
Relais sollte laut Programm an sein. Pullups sind aus.
Am Relais (über den 2 Kontakten) sind 3,0V zu messen.
Das ist natürlich irgendwo zu wenig. Stabil schalten tut es so nicht.

Ausserdem habe ich den Port gemessen als das Relais nicht angeschlossen 
war (also nur der port), hier sind es wirklich nur 4,6V.

was kann ich tun?
Leider hab ich grade nur begrenzte Bauteil-verfügbarkeit... ich war aber 
der Meinung das sollte so (oder so ähnlich) funktionieren...

relais

von olibert (Gast)


Lesenswert?

> hier sind es wirklich nur 4,6V

Jau, und damit sind wir wieder bei dem Durchlesen auf der Website 
verfuegbarer Dokumentationen:

http://www.mikrocontroller.net/articles/Basiswiderstand

..enthaelt ein interessantes Rechenbeispiel:

"Der Mikrocontroller sei vom Typ ATmega oder ATtiny und liefert bei 
einer Versorgungsspannung von 5V abzüglich 5% Toleranz mindestens 4,5 
Volt bei 3,3mA"

von Weingut P. (weinbauer)


Lesenswert?

basisvorwiderstand kleiner machen ... transistor als schalter, nicht in 
der kennlinie betreieben, sprich übersteuern

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.