gestern hatte ich das Vergnügen das erstemal mit dem Arduino Uno experimentieren zu könnnen. Vom Prinzip her gefällt mir das sehr gut. Mein erstes Projekt soll die Steuerung eines Elektromagneten sein. (Schaltplan siehe Anhang) Der Lautsprecher steht für den Elektromagnet.
Mein Plan sieht wie folgt aus. Der Magnet wird über eine 9V Batterie mit Strom versorgt. Ob der Magnet aktiviert wird, soll mit einem Transistor gesteuert werden.
Als Sketch habe ich das "Blink" Beispiel benutzt, welches Port 13 im Sekunden Abstand aktiviert/deaktiviert.
Hier der Code:
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly.
This example code is in the public domain.
*/
// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 13;
// the setup routine runs once when you press reset:
void setup() {
// initialize the digital pin as an output.
pinMode(led, OUTPUT);
}
// the loop routine runs over and over again forever:
void loop() {
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Wenn ich diese Programm auf den Arduino lade, blinkt die dem Pin13 zugehörigen LED wie erwartet im Sekunden takt.
Sobald ich aber meine Schaltung mit dem Arduino verbinde, hört das blinken auf. Der Magnet bewegt sich jedoch nicht.
Testhalber habe ich den Magnet mal direkt mit dem Arduino verbunden. Ein Kabel in den 5V Ausgang eins in GND. Der Magnet wird dann aktiviert. (Allerdings nur minimal das nur 5V anliegen.)
Kann mir jmd. sagen was ich falsch mache? Warum kann ich den Magneten nicht mit Hilfe des Boards und Transistor schalten?
thewon:
Wenn ich diese Programm auf den Arduino lade, blinkt die dem Pin13 zugehörigen LED wie erwartet im Sekunden takt.
Sobald ich aber meine Schaltung mit dem Arduino verbinde, hört das blinken auf. Der Magnet bewegt sich jedoch nicht.
Hast Du den Widerstand zwischen Arduino-Ausgang und Basis Transisor vergessen?
thewon:
Testhalber habe ich den Magnet mal direkt mit dem Arduino verbunden. Ein Kabel in den 5V Ausgang eins in GND. Der Magnet wird dann aktiviert. (Allerdings nur minimal das nur 5V anliegen.)
Das ist der beste Weg den Arduino kaputtzumachen. Ein Arduino-Ausgang kann nur 40mA liefern und der Magent wird sicher mehr verbrauchen.
uwefed:
Hast Du den Widerstand zwischen Arduino-Ausgang und Basis Transisor vergessen?
Das ist der beste Weg den Arduino kaputtzumachen. Ein Arduino-Ausgang kann nur 40mA liefern und der Magent wird sicher mehr verbrauchen.
Grüße Uwe
Uhiii...danke für die fixe Reaktion
Wie auf dem Schaltplan eingezeichnet, hab ich zwischen Pin13 und Transitor ein 1kOhm Widerstand.
Kann ich das Board den "teilweise" kaputt gemacht haben? Es scheint grundsätzlich keine Probleme zu machen. Das "Blink" Programm lässt sich weiterhin beliebig modofiziren hochladen und ausführen.
Ist das Verhalten, dass die Pin13 LED nicht mehr blinkt sobald ich meine Schaltung anschließe den zu erwarten? Müsste die LED nicht dennoch weiterblinken?
Arduino 2009 und Arduino UNO ohne R3 version hatten einen 500Ohm Widerstand und eine LED an Pin 13. Arduino UNO R3 hat einen Operationsverstärker an Pin 13 der die LED ansteuert. So wird der Pin nicht belastet.
Daß die LED an Pin 13 ausgeht hat nur einen Grund: Du machst einen Kurzschluß. Kontrollier nochmal die Schaltung ob der Basiswiderstand wirklich richtig angeschlossen ist und nicht kzuzgeschlossen ist.
thewon:
Eine Frage ist mir noch eingefallen. Den positiven Ausgang der Battarie, gehört der an den Emitter oder Kollektor?
Der positve Pol der Batterie geht zum Magnetventil un der zweite Anschluß des Magnetventils geht an den Kollektor. Emittor auf Masse. Wenn Du Emittor und Kollektor vertauscht funktioniert der Transistor nicht weil er kaum Verstärkung hat.
Wo ist denn die Masseverbindung zum Arduino? Hängen Magnet und Arduino am gleichen Netzteil, oder sind es getrennte Netzteile? Das sieht man leider in Deinem Bild nicht.
Noch ein Tip, es reicht, wenn das Bild in einer bildschirmüblichen Auflösung hochgeladen wird, 2560x1920 Pixel braucht es nicht. Dir Chance den Fehler zu finden ist leider nicht proportional zur Bildgröße
Ich wusste garnicht das mein Handy eine so hohe Auflösung hat Ich werde beim nächsten mal drauf achten.
Die Masseverbindung wird über den GND Pin der direkt neben Pin13 liegt hergestellt. Der Magnet wird über eine 9V Battarie versorgt (Das kleine scharze Ding wo das rote/türkise Kabel rauskommen ist der Anschluss) Das Board wird über USB versorgt.
Ich habe das Bild nochmal bearbeitet. Ich habe es skaliert und die einzelnen Drähte farblich gekennzeichnet.
Rot: Das Kabel geht aus dem Pluspol der Battarie dort teilt es sich in
Grün: Der Anschluss des Elektromagnetes und parallel dazu
Weiter Rot: In die Diode in Sperrichtung welches dann in den Kollektor des Transistors läuft
Gelb: Das Kabel geht aus Pin13 durch einen 1kOhm Widerstand in die Basis des Transistors
Lila: Kommt aus dem Emitter und Teilt sich in:
Pink: läuft in den GND Pin auf dem Arduino
Türkis: läuft in den Minuspol der Battarie
(Auf dem Bild ist der Magner parallel zum Widerstand angeschlossen. Das dies falsch ist ist bekannt. Im eigentlichen Test war der Magnet parallel zur Diode angeschlossen.)
uwefed:
Das was ich falsch sehe ist Du hast den Elektromagnet paralell zum 1kOhm Basiswiderstand geschaltet.
Grüße Uwe
Das siehst du korrekt. Ich war schon wieder dabei die Schaltung auseinander zu nehmen, als mir die Idee mit dem Foto kam. Während der Tests war der Magnet parallel zur Diode angeschlossen.
Grundsätzlich gibt es zwei Bauteile in der Schaltung wo ich mir nicht sicher bin ob ich diese korrekt nutze. Daher zur Sicherheit nochmal wie ich diese verbaut habe.
Zum einen die Diode. Diese wird in Sperrichtung, sprich mit der "Minusseite" an den Pluspol der Battarie angeschlossen.
Ich habe nochmal ein Bild mit dem Transistor angefügt. Ist meine Annahme richtig, dass die Reihenfolge der Beinschen folgende ist:
Links: Emitter (Anschluss an GND des Boards und Minuspols der Battarie)
Mitte: Basis (Pin13 "Steuerstrom")
Rechts: Kollektor (Anschluss an den Pluspol der Battarie)
EDIT: Kann so ein Transistor eigetnlich kaputt gehen, wenn er beim Löten zu heiß wird?
Und der Kollektor kommt natürlich nicht an die Batterie ( wohl nur ein Versehen in deiner letzten Post , sondern an deinen Magneten ( und Diode ( langes Anoden + Bein ) )
uwefed:
Das was ich falsch sehe ist Du hast den Elektromagnet paralell zum 1kOhm Basiswiderstand geschaltet.
Grüße Uwe
Das siehst du korrekt. Ich war schon wieder dabei die Schaltung auseinander zu nehmen, als mir die Idee mit dem Foto kam. Während der Tests war der Magnet parallel zur Diode angeschlossen.
paralell zur Diode oder zum Basiswiderstand?
thewon:
Grundsätzlich gibt es zwei Bauteile in der Schaltung wo ich mir nicht sicher bin ob ich diese korrekt nutze. Daher zur Sicherheit nochmal wie ich diese verbaut habe.
Zum einen die Diode. Diese wird in Sperrichtung, sprich mit der "Minusseite" an den Pluspol der Battarie angeschlossen.
Ich habe nochmal ein Bild mit dem Transistor angefügt. Ist meine Annahme richtig, dass die Reihenfolge der Beinschen folgende ist:
Links: Emitter (Anschluss an GND des Boards und Minuspols der Battarie)
Mitte: Basis (Pin13 "Steuerstrom")
Rechts: Kollektor (Anschluss an den Pluspol der Battarie)
Kollektor kommt nicht auf den Pluspol der Batterie sondern auf den Elektromagneten und dieser auf den Pluspol der Batterie.
laut Datenblatt, das Conrad mitliefert, ist die Basis auf der linken Seite und der Collektor in der Mitte (bezogen auf das Bild des Transistors das Du angehängt hast).
Der BD241 ist ein denkbar ungünstiger Transistor. Er hat nur eine kleine Verstärkung. Nimm bessere einen Darlingtontransistor wie den TIP120.
Die Basis ist leicht mit einen Multimeter mit Diodentester zu finden. Die Basis ist der Anschluß von dem aus zu den anderen beiden anschlüssen je eine Diode gemessen werden kann. Kollektor und Emittor sind auf diese weise nicht zu finden.
thewon:
EDIT: Kann so ein Transistor eigetnlich kaputt gehen, wenn er beim Löten zu heiß wird?
Es funktinoiert. Mit dem richtig angeschlossenen Transistor lässt sich am Magneten Bewegung erkennen. Es scheint jedoch nicht der komplette Strom der Battarie anzukommen.
Wenn ich den Magneten direkt an die Battarie anschließen löst er Problemlos aus. Mit dem Transistor dazwischen wird der Stift nur minimal bewegt. Er schafft es nicht den Widerstand der Rückholfeder zu überwinden.
Liegt das daran das der Transistor nicht genug Leistung durchgibt? Währe das mit dem oben empfohlenen Transistor behoben?
Miß die Spannung zwischen Emittor und Kollektor. Wenn diese um 1V ist schaltet der Transistor richtig durch. Ist sie höher dann kannst Du es mit einem kleineren Basiswiderstand versuchen (zB 220 Ohm). Wenn das auch nicht hilft dann brauchst du de anderen Transistor.
Grüße Uwe
Wie Uwe bereits sagte, könnte der Transistor noch nicht im Sättigungsbereich sein, sein Verstärkungsfaktor (hfe) liegt bei ca. 25. Mit dem von Uwe vorgeschlagenen Basiswiderstand von 220 Ohm belasten wir den Arduino Pin schon mit 22mA, das ist schon hart an der Grenze...
22 mA als Basisstrom bei einem hfe von 25 führt zu einer Stromstärke von 550 mA, umgekehrt bringt der bisher verwendete 1k-Widerstand nur 125 mA für den Elektromagneten. Das könnte durchaus zu wenig gewesen sein.