Digitaler Schalter

hi community:)

seit kurzem stolzer besitzer einiger arduino komponenten, will natürlich nun alles automatisieren kontrollieren und im endeffekt auch manipulieren. doch leider fehlt mir der elektronik background der mich daran hindert sinnvolle schaltungen zu bauen.

nun zum eigentlichen problem:

hab mir eine komplette aquariumsteuerung gebastelt mit meanwell LDD treibern, RTC, LCD und allem andere pi-pa-po. nur das verflixte mondlicht will nicht so wie ich es gerne hätte. das mondlicht zum leuchten zu bewegen ist nicht unbedingt ein schwieriges unterfangen gewesen (ist eine xpe cree 3v/3w), versorgt wird es mit einem 5v netzteil welches durch einen dc/dc wandler auf 3v/300ma umgeformt wird (selbiges netzteil soll anschließend auch mein arduino versorgen). um die riffles zu vermeiden hab ich eine kleine spule als auch zwei kondensatoren dazugbastelt. an sich leuchtet es wie ich es erwartet habe.
mein problem ich würde gerne, mein mondlicht via meines arduino-bordes on/off schalten. dazu habe ich mir beim c***** einen npn transistor (bc337) gekauft. die base habe ich mit einen 1kOhm an einen digitalen ausgang gehangen. über e +c läuft mein "-" vom netzteil. an sich funktioniert es: es leuchtet nix wenn das arduino nicht am strom hängt. sobald mein programm startet setze ich den pin auf high und es leuchtet, aber leider nicht in der intensität wie ohne dem "digitalen schalter" und es flakert lästig.

hoffe irgend jemand kann sich unter meiner beschreibung etwas vorstellen bzw. hat schon ein konkrete idee was ich verhundst habe.

vielen dank im voraus.

lg
kramutz

Die Dimensionierung des Transistors und seines Basiswiderstandes sieht soweit ganz gut aus, allerdings verstehe ich dieses nicht:

Kramutz:
über e +c läuft mein "-" vom netzteil.

Kannst einen entsprechenden Schaltplan skizzieren?

[edit] Bin von der Angabe 3V/300mA ausgegangen. Wenn die LED tatsächlich mit 3V/3W spezifiziert ist, ist der Transistor ungeeignet.

3V/3W? Das wären 1A. Dein Transistor macht gerade mal so 0,5A und das nur bei maximalem Basisstrom

Wenn ich mir z.B. das ansehe:
http://www.conrad.de/ce/de/product/182720/Cree-XLamp-XP-E-CREE-XPEWHT-L1-0000-00DE4-Neutral-Weiss-107-lm-115-

If: max. 1A
Laut Datenblatt, Seite 10-11, hat das bei 400mA If 100% relative Leuchtkraft (da das relativ angegeben ist, sind noch höhere Werte möglich). Bei 300mA sind nur um die 80%. Wenn da 1A fließt leuchtet es ca. doppelt so stark wie bei 400mA. Hängt auch bisschen von der Farbe ab, aber der generelle Trend ist gleich.

Du wärst da mit einem Transistor aus der BD-Reihe mit 1-1.5A besser bedient. Den BC337 kannst du eventuell noch als Treiber für den Basisstrom verwenden um sicher zu sein. Wieviel Strom willst du denn genau fließen lassen? Poste am besten mal einen Link zu dem genauen Typ der LED. Ich gehe mal davon aus, dass das keine blanke LED wie in meinem Link ist, sondern ein Modul mit Vorwiderstand (da es sonst keine runden 3V hätte). Wenn es eine blanke LED wäre funktioniert dein Aufbau auch nicht richtig.

Dein DC-DC-Wandler ist da mit 300mA vielleicht auch etwas unter-dimensioniert. Du könntest die LED auch an 5V betreiben wenn du einen Vorwiderstand für die 2V Differenz einbaust. Aber auch da auf die Leistung achten, da der dann bei 1A 2W verbrät. Andererseits sagst du dass dir die Leuchtkraft direkt an den 3V ausreicht, also reicht es wahrscheinlich erst mal den Treiber richtig aufzubauen...

Generell zum Aufbau:
Der Emitter kommt an Masse und deine LED liegt zwischen Kollektor und Versorgungsspannung

hi,

danke für die raschen antworten. habe mich an einer zeichnung probiert hoffe das passt annähernd. @serenifly ich hänge tatsächlich blank an der led welche auf einen kühlkörper montiert ist. hier der link http://www.ledgroupbuy.com/cree-xp-e-blue. ich habe auf meinem kühlkörper noch eine reihe andere leds montiert welche aber mittels meanwell ldd700 betrieben und über pwm gesteuert werden. http://www.ledgroupbuy.com/meanwell-ldd-700h-led-driver/ diese hier. funktionieren super mit dem arduino. wird aber über ein separates netzteil betrieben. weil lich keines dieser led-treiber für ein lamperl verbraten wollte bin ich halt zum conrad gewatschelt und hab mir quasi einen treiber versucht selbst zu bauen.

ohne dem transistor, der sowieso der falsche zu sein scheint, leuchtet es genau in der intensität wie ich es als mondersatz verwenden wollen würde. zur info der dc/dc wandler ist der "DC/DC-Wandler 1 W SIM1 SIL4 HN Power SIM1-0503-SIL4 In 5 V Out 3 V 300 mA 1 W". den dc/dc wandler habe ich genommen weil er mir die 300ma liefert und ich keine ahnung hab, wieviel mA meine Cree bekommt wenn ich nur einen vorwiderstand einbau. das mondlicht als auch das arduino soll mit dem selben netzteil betrieben werden 5V 2A laut hersteller.

nochmals vielen dank für die hinweise, ich werde mal mir die bd-transistoren anschauen, --> danke für den tip.

kramutz

Also generell brauchen LEDs einen Vorwiderstand. Wenn die Diode durchschaltet geht deren Widerstand gegen 0 Ohm und ohne Vorwiderstand wird der Strom nur durch die Spannungsversorgung begrenzt. Im schlimmsten Fall ist die LED dann kaputt.

Blaue LEDs haben auch keine 3V, sondern ca. 3.2-3.4V (auch weiße, da das im Prinzip blaue sind. Das hat mich schon gewundert. Wenn du da weniger dran tust leuchten die auch nicht richtig). Das ist die Vorwärtsspannung Uf und die steigt auch leicht mit dem Strom. Steht auch so auf der Seite:
Forward voltage (@ 700 mA): 3.3v

Dein DC-DC Wandler ist keine Konstantstrom-Quelle! Die 300mA sind nur deren maximaler Strom. Also den DC-DC Wandler raus und die LED mit Vorwiderstand an die 5V. Der Vorwiderstand ist (Ub - Uf) / If. Dann noch beachten dass der (Ub - Uf) * If [oder Ur * Ir] Leistung aushalten muss. Du kannst dir ja mal verschiedene Widerstände für z.B. 300mA, 500mA und 700mA bestellen und dann probieren.

Beispiel: 5V Betriebsspannung und Uf = 3.3V. Wir wollen 500mA laufen lassen. Also Ur = (5V - 3.3V) / 0.5A = 3.4 Ohm. Leistung ist 1.7V * 0.5A = 0.85W

Da nimmst du dann einen der in der Nähe liegt. Besser einen leicht größeren. LED-Vorwiderstände sind normal viel höher. 220 Ohm an 5V, aber das ist bei mickrigen 20mA. Bei diesen großen Strömen werden die Widerstände sehr klein. Damit habe ich persönlich keine Erfahrung. Bei Conrad gibts da z.B. das:
http://www.conrad.de/ce/de/product/458827/VitrOhm-Leistungswiderstand-CR-CR254-05T-3R9-axial-bedrahtet-Hochlast-39-25-W-05-

Der hat 2.5W. Normale Widerstände haben nur 0.25-0.5W. Deshalb ist das in der Leistungswiderstands-Kategorie.

Bezüglich der 5V: Du musst dann dein 5V Netzteil auf den Vin Pin legen. Du kannst die 5V nicht auf den runden Hohlstecker legen, weil das der Eingang für den Regler auf der Platine ist.

Selbst in deinem Aufbau solltest mit dem Transistor nicht den Eingang des Wandlers schalten sondern den Ausgang. Und dann hätte der in die Plus-Leitung gehört. Aber vergiss das und mach es richtig :slight_smile:

Das mit den Transistoren und wie man die auswählt ist hier erklärt:
http://www.mikrocontroller.net/articles/Transistor#Wie_finde_ich_den_richtigen_Transistor_f.C3.BCr_eine_LED-Ansteuerung.3F
Neben dem Kollektorstrom ist da nur noch eine hohe Gleichstromverstärkung B wichtig, aber die ist oft nur in Klassen eingeteilt.

Wie gesagt, wenn die 40mA oder was der Arduino Pin liefert nicht ausreicht um den durchzuschalten kannst damit auch den BC337 ansteuern und dann mit diesem die Basis des BDxxx. Das wird auf obigem Link auch mal kurz erwähnt.

Du könntest dir auch mal einen N-Kanal Feldeffektransistor (und einen 2-3MOhm Widerstand für zwischen Gate und Masse) mitbestellten. Das wäre eine andere Option falls es dann immer noch nicht richtig läuft. Da kannst/musst du dann auf den Basiswiderstand verzichten, da die statt mit Strom über Spannung gesteuert werden. Hier sind Optionen:
http://www.mikrocontroller.net/articles/MOSFET-Übersicht
Achte da darauf das Ugs (Gate-Source-Spannung) bei maximal 5V liegt. Je weniger desto besser. Am besten gleich was das als "Logic Level" deklariert ist. Das Äquivalent zum Kollektorstrom ist hier der Drainstrom Id. Also wieder mindestens 1-1.5A. Auch hier gilt, wie beim dem DC/DC Wandler dass das die maximal-Ströme sind - nicht was tatsächlich fließt. FETs haben da generell viel höhere Werte (da deren Durchgangswiderstand nur wenige hundert Milli-Ohm hat), also geht auch etwas mit 10A oder mehr.

Blöde Frage am Rand, der Transistor in seiner Zeichnung ist doch falsch rum gezeichnet (Emitter/Collector vertauscht). Würde mich nur mal kurz interessieren, letzte E-Technik Vorlesung ist schon paar Semester her. :wink:
Bzw. müssten nicht eigentlich auch die Masse des Netzteils und Arduinos verbunden werden oder ist das egal, weil vermutlich eh beide über Steckdose/USB->PC->Steckdose laufen?

Ja, aber das mit dem Transistor funktioniert so oder so nicht richtig, da er im Eingangskreis hängt. Wenn du den rumdrehst ist es immer noch falsch. Der wird halt irgendwie halb aufmachen - keine Ahnung.

1000 dank erstmal.!!!

wusste garnicht das es auch leistungswiderstände gibt:)

Serenifly:
Dein DC-DC Wandler ist keine Konstantstrom-Quelle! Die 300mA sind nur deren maximaler Strom. Also den DC-DC Wandler raus und die LED mit Vorwiderstand an die 5V. Der Vorwiderstand ist (Ub - Uf) / If. Dann noch beachten dass der (Ub - Uf) * If [oder Ur * Ir] Leistung aushalten muss. Du kannst dir ja mal verschiedene Widerstände für z.B. 300mA, 500mA und 700mA bestellen und dann probieren.

Die beiden Kondensatoren inkl. Spule kann ich demnach auch entfernen, oder?

Serenifly:
Bezüglich der 5V: Du musst dann dein 5V Netzteil auf den Vin Pin legen. Du kannst die 5V nicht auf den runden Hohlstecker legen, weil das der Eingang für den Regler auf der Platine ist.

zur verwendung kommt das arduino mini, ist nur falsch in der zeichnung. deshalb der plan, dass sich das mini und die led das netzeil teilen, brüderlich so hoffe ich.

Serenifly:
Selbst in deinem Aufbau solltest mit dem Transistor nicht den Eingang des Wandlers schalten sondern den Ausgang. Und dann hätte der in die Plus-Leitung gehört. Aber vergiss das und mach es richtig :slight_smile:

Dachte bei einem NPN Transistor schaltet man quasi ground/- (hab ich mich so vertan). naja man lernt nie aus. ist mein erster ausflug in die elektrotechnik und dank der kompetenten hilfe hier sicherlich nicht mein letzter:) das ist schon geil wenns auf einmal leuchtet, knackst oder durchbrennt:)

werde mal die widerstände organisieren und mal anhängen:)

btw. kann mir wer eine gute einstiegslektüre empfehlen?

1000 dank nochmal

kramutz

Nach nusseckes Frage ist mir noch eingefallen dass DC/DC-Wandler oft galvanisch getrennt sind, und daher Eingang und Ausgang nicht unbedingt die gleiche Masse haben. Also könntest du den Ausgang mit dem Transistor eventuell doch nicht schalten. Sorry. :slight_smile:

Ist aber egal, da der Wandler komplett wegkommt. 3V/300mA ist einfach zu wenig für die LED, was sowohl Strom und Spannung betrifft. Die Spule machst du weg. Der Kondensator schadet nichts. Die Spannung sollte aber auch ohne stabil genug sein.

NPN-Transistoren schalten dir die Kollektor-Emitter-Strecke durch je nachdem was für ein Strom über die Basis in den Emitter fließt. Der Emitter ist also die Bezugsgröße und hängt an Masse. Der Kollektor und die Last hängen an Plus. Jedenfalls in der Emitterschaltung wie du sie hier brauchst. Es gibt auch noch andere Konfigurationen, aber die haben andere Eigenschaften bezüglich der Spannungs- und Stromverstärkung.

FETs haben einen Drain-Source-Kanal der abhängig von der Gate-Source Spannung (Source ähnlich Emitter) mehr oder weniger offen ist. Das Gate (analog zur Basis) ist dabei isoliert, weshalb praktisch kein Strom zum Ansteuern gebraucht wird. Das ist auch der Grund für den MOhm Widerstand von Gate gegen Masse. Die Ladung muss wieder vom Gate runter (im Prinzip ein kleiner nF Kondensator), sondern bleibt er offen. Außerdem ist der Durchgangs-Widerstand (RDSon) viel niedriger. Deshalb sind die super um einfach große Lasten zu schalten. Außerdem muss man sich nicht damit herumschlagen den Basiswiderstand auszurechnen. Unter 1A geht aber auch noch ein Bipolar-Transistor solange man den Basisstrom hat

Leistungswiderstände gibt es klar. Wenn da wirklich Strom fließt gibt es sowas und man verbrennt sich die Finger wenn man hinlangt:
http://www.conrad.de/ce/de/product/423157/ATE-Electronics-100-Watt-Hochlast-Drahtwiderstand-axial-bedrahtet-Hochlast-100-100-W-5-

danke für das ahaaaa erlebnis:)

Serenifly:
NPN-Transistoren schalten dir die Kollektor-Emitter-Strecke durch je nachdem was für ein Strom über die Basis in den Emitter fließt. Der Emitter ist also die Bezugsgröße und hängt an Masse. Der Kollektor und die Last hängen an Plus. Jedenfalls in der Emitterschaltung wie du sie hier brauchst. Es gibt auch noch andere Konfigurationen, aber die haben anderen Eigenschaften bezüglich der Spannungs- und Stromverstärkung.

wenn ich das also richtig verstanden habe, schalte ich meinen basis pin auf high jagen 5V 40mA (ist sogar noch weniger da ich einen 1kOhm zwischen pin und base hab) über den Emitter zu meinem Vin-. Da meine Netzteil 5V 2A liefert, entsteht quasi eine kleine Differenz:) Der Leihe der ich bin würde dann annehmen je höher der Unterschied ist desto weniger Strom bekommt meine LED fakto in meinem Fall -> leuchtet nicht hell und flakert. Je höher der Strom auf der Basis desto heller wird es? Aber bevor ich mit weiteren Fragen quäle lese ich mir mal den Link durch.

danke danke

lg
kramutz

Also die 40mA sind der maximale Strom den dein Arduino-Pin liefert. Du solltest dem Controller einen Gefallen tun und das mit dem Basiswiderstand begrenzen. Dafür ist er da.

Normalerweise gilt: Ic = Ib * B -> Kollektorstrom = Basisstrom * Gleichstromverstärkung

Wenn man Transistoren als Schalter betreibt nimmt man glaube ich an die extrem zu Übersteuern, also den Basisstrom 10-20 mal so hoch zu machen (oder noch mehr?) wie er eigentlich sein müsste damit er schnell und vollkommen durchschaltet.

Berechnung des Basiswiderstands ist hier sehr schön mit einem Beispiel erklärt:
http://www.mikrocontroller.net/articles/Basiswiderstand
Da sieht gut man wo die ca. 1kOhm für einen BC-Typ herkommen. Wie da steht muss dieser Wert nicht exakt sein, was man auch nicht hinbekommt, da viele der Werte nur geschätzt sind.

Einfache Erklärung für die Emitterschaltung generell hier:
http://www.elektronik-kompendium.de/sites/slt/0204302.htm
Beachte dabei dass Transistoren in allem Bereichen arbeiten und oft als Verstärker eingesetzt werden. Als Schalter (nur gegen Plus und Masse) sind da manche Dinge und Werte nicht so wichtig, aber es kann eben vorkommen, dass sie nicht vollkommen durchschalten (weil der Basisstrom zu klein ist) und dann fällt bei hohem Strom auch mehr Spannung an der Kollektor-Emitter-Strecke ab. Deine LED leuchtet dann vielleicht immer noch, aber diese Leistung wird beim Transistor in Wärme umgesetzt.

Ein FET ist da eine echte Alternative, da man sich da keine Gedanken über die Stromverstärkung machen muss. Die brauchen oft eine Gate-Source Spannnung von 8-10V um richtig zu schalten, aber wenn man da was nimmt das um die 2V hat, gehen die auch direkt an Logik-ICs. Daher die Empfehlung was mit "Logic Level" zu nehmen.

Und dein Netzteil liefert maximal 2A. Nicht tatsächlich. Das liefert soviel wie du gerade brauchst und wenn du mehr willst bricht die Spannung ein.

Die Schaltung von Kramutz kann so nicht funktionieren, da theoretisch ein pnp Tranistor nötig wäre.

Praktisch, wie Serenifly schon sagte (da vermutlich galvanische Trennung), geht es so sowieso nicht.

Also: Einfach ein Relais nehmen - Es es gibt fertige billig Relais Platinen mit Optos.
Ganz Vorsichtige greifen zum SSD Relais.

Ein kurzes Wort zur Vorwiderstandsberechnung. Meiner Meinung nach geht der Halbleiterübergang des bipolaren Transistors ebenso in die Berechnung ein. Daraus resultiert dann ein Vorwiderstand von etwa 2 Ohm.

Oh je. Ja, jetzt wo wir bei so winzigen Widerständen sind, spielt es eine Rolle dass da etwa 0.2-0.3V Kollektor-Emitter-Restspannung abfallen selbst wenn er voll durchgeschaltet ist :o

Das bedeutet: Rv = (Ub - Uf - Uce) / If

Bei höheren Widerständen und vor allem Spannungen kann man das vernachlässigen, aber hier macht es einen Unterschied. Noch ein Grund mehr einen FET zu nehmen der dieses Problem nicht hat :slight_smile:

Uce des BC337 ist nach meinem Datenblatt mit 0,7V max. angegeben.
0,3 V sollten nach dem Blick in die Diagramme passen.

BTW: Schön dass sich noch mehr Leute hier mit ihrem Wissen einbringen! Hab dir dein erstes Karmapünktchen verpasst! :wink:

BC337 wird ja nicht mehr verwendet, da zu wenig Leistung. Selbst wenn der 0.5A macht und man nur 0.3A schalten will ist das nicht so gut.

Ich habe gelernt dass die Sättigungspannung 0.3V ist. Aber praktisch habe ich damit ehrlich gesagt auch nicht so viel Erfahrung was die genauen Berechnungen der Werte betrifft.

Bei 0.3V macht es aber gar keine so großen Unterschied. Geht von 3.4 auf 2.8 Ohm. Dann muss man noch bedenken dass es die Widerstände gar nicht so genau gibt, sondern nur in 0.2-0.3 Ohm Schritten. Wegen der großen Stromtoleranz der LED würde ich da auch nicht so genau sein. Hauptsache es passt ungefähr. Man kann ja mit dem tatsächlichen Widerstand dann mal rückwärts auf den Strom rechnen.

Das Ideale wäre ein Poti das etwas Leistung verträgt. Dann hat man gleich eine Helligkeitsregelung. Gibts sowas?

Hochlast-Drahtpotentiometer wären eine Möglichkeit, gibt es zum Beispiel bei Reichelt: P4W-LIN 10: Hochlast-Drahtpotentiometer, 10 Ohm, linear, 6 mm bei reichelt elektronik
Noch höhere Wattzahlen liegen aber jenseits von gut und böse. :wink:

Das wäre doch was. Dann einen Widerstand in Reihe damit der maximale Strom auf 1A begrenzt wird wenn das Poti auf Minimum ist.

Dann einen Logic-Level-FET und schon muss man nichts mehr rechnen \o/
IRLIZ44N, IRLZ34N oder IRLU024N wären Optionen, obwohl genaugenommen total überdimensioniert. Machen bei 5V 30-100A Drainstrom. Das sollte reichen :slight_smile:

EDIT:
Gerade nochwas festgestellt:
http://www.cree.com/~/media/Files/Cree/LED%20Components%20and%20Modules/XLamp/Data%20and%20Binning/XLampXPE.pdf

Die Vorwärtsspannung der LED ändert sich doch recht stark mit dem Strom. Von 3.1V bei 350mA auf 3.5V bei 1A. Siehe Seite 2.

Der 1A Festwiderstand ist dann für einen NPN 1.2 Ohm und für einen FET 1.5 Ohm. Das ist die Theorie. Wenn man da praktisch etwas höhere Werte nimmt liegt man auf der sicheren Seite. Über 700mA wird das wahrscheinlich eh nicht betrieben. Soll ja ein Mond und keine Sonne werden :stuck_out_tongue:
Mit einem Amperemeter kann man ja messen was wirklich fließt.

Danke für die super Unterstützung:)

habe euren Ratschlag befolgt und bin auf einen IRLZ34 umgestiegen, hab dann auch gleich noch den Leistungswiderstand als auch einen megaohmigen Widerstand geshoppt. Sofern ich alles richtig verstanden habe sollte es im Endeffekt irgendwie so aussehen. Diese Source-Gate Geschichte mit dem MOhm-Widerstand muss ich erst begreifen lernen:).

btw: hab euch beiden auch ein karma-pünktchen gegeben:)

Kramutz

Das sieht gut aus. Der Gateableitwiderstand muss keine 1W haben. Da langt auch ein normaler 1/4-Watt Widerstand. Macht aber nichts wenn du das so lässt :slight_smile:

Außer das korrekte Potential an Gate-Source zu bringen (da muss ne negative Spannung anliegen. Siehe Maschenregel) ist der dazu da die Gatekapazität zu entladen. Die ist sehr klein (ein paar pF), also reicht normal wenig Strom. Solange da Ladung drauf ist, leitet der Transistor etwas auch wenn man die Gatespannung wegnimmt. Das ist im Schaltbetrieb nicht gut, da der Drain-Source-Kanal dann Widerstand hat und den Strom in Wärme umsetzt. Wegen dem genauen Wert ließt man da verschiedene Sachen. Normal scheinen da ein bis mehrere Megaohm zu sein. Aber man sieht manchmal auch ein paar hundert kOhm. Das ist wahrscheinlich dann für schnellere Schaltungen, damit der Transistor schneller sperrt. Wenn man da Schaltnetzteile oder PWM baut wird das relevant. Dann muss man mit hohen Strömen am Gate arbeiten um es schnell zu (ent)laden. Da wir hier gaaaanz langsam schalten sind wir hier nicht kritisch. Außerdem wollen wir auch keine 10A schalten, also ist der Leistungsabfall beim Schalten recht gering. Das wird auf Mikrocontroller.net gut erklärt. Mit einem Oszi sieht man das auch schön wenn man am Gate misst.

Was auch schon mal jemand gesagt hat:
Wenn das alles nicht hinhaut, kannst du auch einfach ein Relais nehmen. Das kannst du mit deinem BCxxx ansteuern. Dann klackt es halt wenn du schaltest. Da gibts Miniaturrelais die bei 5V einfach mehrere Ampere schalten. Sollte aber hoffentlich nicht nötig sein.