Go Down

Topic: 12V mit meinem Arduino schalten (Read 4 times) previous topic - next topic

bliblablo

Hallo,

ich bastle derzeit gerade an einer Steuerung um ein Magnetventil, dass unter 12V Spannung öffnet, zu schalten.
Nur leider kenne ich mich mit Elektrotechnik wenig aus (bin Programmierer)


Hier mal meinen Aufbau:

(Der Motor in der Skizze ist eigentlich mein Magnetventil)
Die Pins am MOSFET laut Datasheet von links nach rechts: GATE, DRAIN, SOURCE

Mein Problem ist jetzt folgendes:
Ohne Signal vom Arduino habe ich wie erwartet 0V am Magnetventil.
Mit Signal vom Arduino habe ich komischerweise nur 0,4V am Magnetventil (anstatt der von mir erwarteten 12V).

Als MOSFET verwende ich einen IRF640N... Kann es damit funktionieren?

Kann mir jemand erklären was ich da falsch mache?

Viele liebe Grüße


joh371

Hallo

wer lesen kann ist klar im Vorteil, aber wenn Du nicht einfach Deine Anfrage hier reingeknallt hättes ohne die Suchfunktion zubenutzen bekommst auch mal ne Antwort, zumal Dein Problem 2 Beiträge unter Deinem gelöst wurde....

zur Sicherheit hier der link lese das bitte doch erst mal und dann stell wieder Deine Fragen

http://arduino.cc/forum/index.php/topic,71447.0.html

bliblablo

Danke für diesen tollen Hinweis!!!
Der Grund warum dieser Thread jetzt da 2 Beiträge unter dem meinen war ist der, dass ich meine frage ursprünglich an diesen Thread (aus dem Jahre 2011) angehängt habe. Leider kam da nur eine Antwort, die sich auf irgendein Kommentar aus dem Jahr 2011 bezogen hat... und nichts mit meiner Frage zu tun hatte.
Deshalb hab ich meine Frage einfach in einen eigenen Thread neu gestellt ;)

Meine Schaltung ist ident zu der aus diesem Thread... aber bei mir geht es leider nicht...

Wie beschrieben, kommen bei mir, wenn Spannung vom Arduino anliegt, nur 0,4V am Magnetventil an und ich würde mir halt 12 erwarten.

Vielleicht kann mir ja jemand helfen und sagen wo ich was für ein Bauteil vergessen habe :)

Danke

pylon

Quote
Meine Schaltung ist ident zu der aus diesem Thread... aber bei mir geht es leider nicht...


So ganz identisch dann doch nicht. Die Schutzdiode über dem Verbraucher (Motor bzw. Ventil) fehlt und vor allem auch der Widerstand zum MOSFET.

bliblablo

Danke für die Hilfe!!! :)

Wie gesagt ich bin elektrotechnisch ein Nackerpatzi!!!! Darum verzeiht mir meine Fragen :)

Könntest du mir in meine Grafik einzeichnen wo ich das hingeben muss?
Wie müsste der Widerstand dimensioniert sein?
Auch auf die Gefahr hin dass ich es nicht verstehe... wozu brauche ich den Widerstand?
Wozu benötige ich die Schutzdiode?

Vielen vielen Dank für die Hilfe :)

Ich freu mich schon wenn die Hardware das tut was sie soll und ich mich dem Programmieren widmen kann :)

pylon

Quote
Könntest du mir in meine Grafik einzeichnen wo ich das hingeben muss?


Die Schutzdiode muss parallel zum Motor sein, mit dem Pfeil von GND (oder MOSFET) nach +5V.
Der Widerstand muss zwischen den Arduino-Steuerpin und den Gate-Anschluss des MOSFET. Bei der Dimensionierung bin ich auch nicht wirklich erfahren, aber ich denke 1k sollte funktionieren.

Quote
wozu brauche ich den Widerstand?


Damit der MOSFET schaltet, muss eine Spannung am Gate anliegen. Der Widerstand begrenzt nun den Strom der durch das Gate nach GND fliesst. Ohne ihn hast Du nur den relativ kleinen Innenwiderstand des MOSFETs, der den Strom (nach dem Ohm'schen Gesetz: I = U / R, wenn R gegen 0 geht, dann wird I sehr gross) begrenzt. Bin kein Spezialist, aber soviel habe ich bis jetzt den anderen abgeschaut :).

Quote
Wozu benötige ich die Schutzdiode?


Die Induktivität wirkt wie ein Stromspeicher. Wenn Du den Strom einschaltest, bewirkt das eine Verzögerung (es wird in der Spule gespeichert), beim Ausschalten wird das dann wieder abgegeben. Die Diode schliesst diesen Rückfluss kurz, leitet ihn also unschädlich ab.
Ich hoffe, das war genug einfach gehalten.

bliblablo

Danke für die Erklärungen :) !!!!

Da ich heute nicht mehr zu meinem Steckbrett will, hab ichs jetzt einfach mal skizziert...


Hab ich das jetzt somit richtig verstanden?

Realizer

#7
Oct 31, 2012, 08:50 pm Last Edit: Oct 31, 2012, 09:27 pm by Realizer Reason: 1
Der Widerstand am Gate des FET`s ist nicht unbedingt notwendig. Ein FET ist dort sehr hochohmig. Der Widerstand wird dann interessant, weil das Gate eine Kapazität ist, also wie ein Kondensator wirkt.

In diesem Fall wird man keinen Widerstand am Gate brauchen.

Das mit der Freilaufdiode ist jedoch recht wichtig. Wie Pylon schon recht bemerkte, sind die Gegeninduktionen von Spulen bei entsprechenden Flanken geradezu Hochspannungsinduktoren, die auch noch entgegen der Stromrichtung wirken. Daher müssen diese abgeblockt werden.

Zu deiner ersten Schaltung @bliblablo, hast Du denn den FET schon mal direkt mit dem Gate an 5Volt gelegt ? Schaltet er dann richtig durch ?

EDIT: Was mich in Deiner Schaltung noch wurmt, ist daß dir rote Linie Masse ist und nicht die Blaue.



Stell Dir jetzt mal den T2 als FET vor. Der Servo ist Dein Magnetventil. (Das ist nur ein abgewandeltes Beispiel aus meinen früheren Zeiten)
Eine Kuh macht muuhh.
Viele Kuehe machen Muehe

michael_x

Was mich stört ist, dass die Diode anders geschaltet ist als in Realizers Schaltplan.
Sie muss von einem Pin deines Magnetventils zum anderen, d.h. von +9V zum mittleren Bein des IRF640N = grüner Anschluss des Ventils, und der gelbe Anschluss des Ventils wieder an +.  Die Kathode (=MarkierungsRing) auf die Plus Seite, damit sie im Normalbetrieb sperrt. ( so wie jetzt auch )



Den Arduino speist du über USB ?

Realizer

#9
Oct 31, 2012, 09:36 pm Last Edit: Oct 31, 2012, 09:39 pm by Realizer Reason: 1
Naja, als ich meinen Beitrag erstellte, inclusive aller Edits, habe ich die Diode von bliblablo garnicht mehr wahrgenommen ;) Die ist so natürlich vollkommen falsch eingebracht.

Ich würde sagen, wir warten mal auf weitere Reaktionen von bliblablo und sehen dann weiter.

Ist der FET durchgeschaltet wenn an Gate 5 Volt anliegt ? (12 V am Magnetventil) ?
Reicht die Energieversorgung (12V) überhaupt aus um den notwendigen Strom in das Ventil zu treiben ?
Eine Kuh macht muuhh.
Viele Kuehe machen Muehe

uwefed

Grundlagenforschung:
Das Gate ist bei einem MOSFET gegenüber dem Source duzcg eine Metal Oxid Schicht (MOS) isoliert.
Das stellt einen Kondensator dar. Dieser Kondensator muß geladen werden damit der MOSFET leitet und entladen werden damit er sperrt (Nicht bei allen MOSFET ist es so, jedenfalls beim IRF640N ist es so). Wenn Du am ungeladenen Gate eine Spannung anlegst wird dieses geladen und es fließt kurzzeitig ein hoher Strom der den Ausgang der Ansteuerung (Arduino) kaputtmachen kann. Wenn Du einen Widerstand zwischen Arduino und Gate schaltest begrenzt er den Strom macht aber gleichzeitig daß der Mosfet langsamer zwischen nichtleitenden und leitenden Zustand schaltet. Der Wert des Widerstandes errechnet sich aus Ansteuerungspannung und max Ausgangstrom, also 5V und 40mA = 125Ohm.

Ich würd Dir als Erklärung dieses Dokument nahelegen:
http://www.arduino.cc/playground/Learning/SolenoidTutorial
Du kannst den Mosfet auch direkt ohne Optokoppler ansteuern, einfach Masse Arduino mit -Batterie zusammenschalten und Ausgang über einen 120 Ohm Widerstand an das Gate.


Andere Frage: mit was versorgst Du das Magnetventil?
Welchen Widerstand hat das Magnetventil? (mit Multimeter messen).
Wenn Du das Magnetventil ansteuerst welche Spannung hast Du auf der Spannungsquelle? immernoch 12V oder viele weniger?

Bis auf den Gatewiderstand und die Freilaufdiode antiparalell zum Magnetventil it die erte Schaltung eigentlich richtig.
Hast Du kontrolliert ob auf dem Breadbord die Spannungsversorgungsschienen für masse und +12V ganz verbunden sind oder in der Mitte unterbrochen sind (es gibt beide Modelle) 

Grüße Uwe


bliblablo

Vielen vielen lieben dank für eure Hilfe!!! Weiß ich sehr zu schätzen!!!

Wie gesagt, ich kenn mich mit Elektrotechnik wirklich nicht aus. Für mich ist das wie Lego... ich Steck irgendwie Teile zusammen weil ich das so irgendwo gesehen habe und hoffe dass es geht.. und wenn nicht, bin ich ratlos  :~
Leider bin ich auch sehr schlecht Schaltpläne zu lesen... deshalb hab ich mit Fritzling auch einfach meinen Aufbau nachgemalen :) Sowas verstehe ich dann eher...

Nun zu euren Fragen...

@uwefeld
Ich betreibe mein Magnetventil derzeit mit einer 9V Blockbatterie, weil ich gesehen habe, dass er damit auch schon schaltet...
Ich hab jetzt gerade gemessen... meine Batterie bring ohne Belastung ca 8,5V und wenn ich mein Magnetventil anschließe, liegen noch 6,2V drauf
Der Widerstand vom Magnetventil ist bei 12-14 Ohm... kann das sein? (Hab mein Multimeter auf 2k Widerstandmessung gestellt und da steht dann 0,012-0,014)


@Realizer... ja... ich hab den MOSFET direkt an den Arduino angelegt und dann kam das dabei raus:

Spannung von der Batterie wie gesagt rund 9V
Hinter dem MOSFET wenn mein Arduino ausgeschalten ist bzw. ich den entsprechenden Pin auf LOW habe ist die Spannung die am Magnetventil anliegt wie zu erwarten 0V.
Wenn ich dann meinen Pin auf HIGH setzte, hab ich am Magnetventil eine Spannung von 0,4V Ich verstehe nicht so recht warum nur so wenig?!?

@michael_x
Ja... Der Arduino bekommt seinen Strom über USB



Ich hab jetzt nochmal versucht die Schaltung die ihr mir vorschlägt (zumindest wie ich das interpretiere ;) ) nachzuzeichnen:

Hier auch noch der Link zu meiner Fritzling Datei mit der ich das gemacht habe... https://dl.dropbox.com/u/809469/Magnetventil.fzz

Vielleicht kann das, was ich bestimmt falsch verstanden habe, jemand von euch korrigieren :)


Vielen vielen lieben Dank und ich entschuldige mich nochmals dafür dass ich mich so dumm anstelle :)
Wie gesagt... ich bin Softwareentwickler und leider absolut kein Hardware-Mensch :)
Ich freu mich schon aufs Programmieren vom Arduino ;) und der Kommunikationssoftware :)

uwefed

Quote
@uwefeld
Ich betreibe mein Magnetventil derzeit mit einer 9V Blockbatterie, weil ich gesehen habe, dass er damit auch schon schaltet...
Ich hab jetzt gerade gemessen... meine Batterie bring ohne Belastung ca 8,5V und wenn ich mein Magnetventil anschließe, liegen noch 6,2V drauf
Der Widerstand vom Magnetventil ist bei 12-14 Ohm... kann das sein? (Hab mein Multimeter auf 2k Widerstandmessung gestellt und da steht dann 0,012-0,014)


Ein 9V Block ohne Belastung und 8,5V ist leer.
Ja, ca 10 Ohm ist ein möglicher Wert.
Mit einer solchen Belastung ist eine 9V Batterie überfordert.
Such Dir ein 12V Netzteil mit mindestens 1,5A.

Grüße Uwe

bliblablo

Ok... dann grab ich mal mein 12V Netzteil aus... :)
Aber von der Schaltung her sollte es so funktionieren?

Danke

uwefed


Ok... dann grab ich mal mein 12V Netzteil aus... :)
Aber von der Schaltung her sollte es so funktionieren?

Danke

Wie gesagt mit Gatewiderstand und Freilafdiode.
Grüße Uwe

Go Up