LED und 1,5V-Motor schalten

  • Hallo,

    nach kurzer Pause geht es wieder weiter ans Basteln. Blöderweise stolpere ich immer über die einfachsten Dinge:

    1) Ich möchte zwei LEDs ein- und ausschalten. Die GPIO Pins geben ja 3,3V aus, was aber eher knapp ist, so dass ich diese lieber mit 5V und einem 100Ohm Widerstand betreiben möchte. Jetzt ist nur die Frage, wie ich die am Besten schalten kann.
    - Relais finde ich "too much"
    - LED Treiber: Wäre super, wenn es einen mit I2C-Anbindung und DIP-Bauform gäbe. Dann würde ich Pins sparen, zudem brauche ich dann nicht mehr zwingend Widerstände, da alles in dem Treiber drin ist. Ich habe aber keinen solchen gefunden
    - Meine 3,3V-Quelle ist ein LM1117 (Festspannung), allerdings brauche ich ja eine Konstantstromquelle und keine -spannung; also bringt mich das auch nicht weiter.

    Es kann doch eigentlich nicht so schwer sein eine LED über 5V (mit Widerstand) zu schalten...

    2) Weiterhin muss ich zwei kleine Motoren ein- und ausschalten, die normalerweise per Batterie (1,5V) betrieben werden. Auf die Batterie möchte ich verzichten.
    Auch hier das ähnliche Problem: Die GPIO Pins liefern 3,3V. Reicht hier ein Spannungsteiler aus zwei Widerständen?

    Für alle vier Schaltungen (2 LEDs und 2 Motoren) habe ich leider nur noch 3 Pins zu Verfügung, so dass entweder I2C-Schnittstellen gut wären oder aber ein MCP23008 zur Erweiterung zum Einsatz kommen muss. Je nachdem, welche Möglichkeiten ihr mir vorschlagen könnt.

    Bin für jede Idee und Alternative dankbar.

    Zu 1) wäre ja so was fast perfekt (http://www.nxp.com/products/power…es/PCA9533.html) - wenn es den denn in DIP-Bauform gäbe :(

    Einmal editiert, zuletzt von blabla333 (4. Mai 2014 um 00:25)

  • heu heu ... äh hi hi,

    also prinzipiell würde ich zunächst mal sagen: "Nie, wirklich niemals die GPIO-Pins als Strom-/Spannungs-Quelle für irgendwas nutzen!"
    Das wird irgendwann ganz furchtbar in die Hose gehen, weil die einfach zu wenig Strom bringen bzw. als sink verkraften ( guckst Du z.B. -> hier <- ).

    Wenn Du aber so Dimmer suchst, kannst Du die -> hier <- mal durchschauen, ob was Passendes für Dich dabei ist ;) ...

    cu,
    -ds-

  • LED von 1-3mA gehen aber aus dem GPIO, genau wie (Treiber)Transistoren die auch etwas Strom brauchen

    für ganz fast ohne Strom aus dem GPIO muss ein Treiber vorgeschaltet werden wie der 74HC4050, wahlweise mit 3,3V oder 5V versorgt

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Ok, meine LEDs brauchen laut DB 20mA.
    Mir stehen sowohl 5V (und hieraus auch 3,3V) extern zu Verfügung, d.h. ich muss es nicht aus dem Pi ziehen. Aber mir geht es ja vor allem um das Schalten.
    Wenn ich es richtig verstehe, dann brauche ich einen Treiber? Also z.B. einen ULN2803 oder den genannten 74HC4050, richtig?
    Ich würde den Treiber dann mit 5V versorgen und kann hierüber die LED mit 5V und einem 100Ohm Widerstand schalten indem ich die entsprechende GPIO an oder aus setze.

    Kann ich ein Erweiterungs-IC, wie z.B. der MCP23008 nicht auch genauso verwenden (quasi als Treiber)? Also Vcc des MCP28003 auf 5V, dann müsste ich am Ausgang doch auch genauso die LEDs steuern können..

    Bliebe noch das Problem mit den kleinen Motoren und der 1,2V-Spannung. Kann ich das nicht über den gleichen Treiber/Erweiterung laufen lassen und die hieraus resultierenden 5V mit einem Spannungsteiler (4:1) auf 1V runterziehen?

    Einmal editiert, zuletzt von blabla333 (4. Mai 2014 um 02:43)

  • So ein Spannungsteiler funktioniert nur in der Theorie und solange man den Ausgang mit 0 mA belastet. Sobald man am Ausgang eine Last (und ein Motor ist nun mal ein ziemlich grosse Last) dranhäng, bricht die Ausgangsspannung ganz gewaltig ein und der Strom wird bedingt durch den Widerstand des Spannungsteilers, auf wenige mA begrenzt.
    Besser wäre ein Festspannungsregler, der per Steuerpin ein- und ausgeschaltet werden kann.

    MfG Turbotoni

    Einmal editiert, zuletzt von Turbotoni (4. Mai 2014 um 14:39)

  • Ich versuche das Ganze über einen MCP23008 zu machen. Ausgangsklemme 1 und 3 sind für die beiden LEDs, 5 und 7 für die kleinen 1,2V Motoren; Die GND Klemmen sind hier nicht eingezeichnet.

    Habe aber immer noch Probleme mit der Ansteuerung der Motoren. Diese laufen jetzt mit 1,2V (welche über einen LM1117 ADJ generiert werden). Nur laufen jetzt immer beide Motoren.
    Kann ich das nicht irgendwie so schalten, dass ich die Motoren auch getrennt laufen lassen kann ohne aber noch einen zweiten LM1117 verbauen zu müssen? Der MCP23008 läuft ja mit 5V...

  • Nimm 2 GPIO's und schalte die Motoren mit der vom LM1117 kommenden Spannung über 2 Transistoren. Hier nochmal das was ein paar Beiträge vorher schon stand: GPIO's egal ob vom RasPi oder von einem anderen Schaltkreis möglichst nie als Spannungsversorgung nutzen. Immer einen Treiber (Schaltkreis wie den ULN2308 oder Transistoren) verwenden!

  • ach Kollegin lies dir doch mal das Datenblatt vom MCP durch

    der kann nur maximal 125-150mA Strom verkraften, pro Ausgang maximal 25mA für 20mA LED reicht das sicher aber nur für bis zu 6 LEDs 6x 20mA

    Du könntest statt dunkle Normal LEDs auch ultra helle ab 1Cd wählen dannn fetzt es die schon ab 1mA die Netzhaut weg

    Der Motor ist wirklich mit 20mA zufrieden ? kaum zu glauben
    deine Adj Schaltung sieht aber nach 2,5V Ausgangsspannung aus am R11 1,25V und am R5 auch = 2,5V, abgesehen davon das sie selber durch die 200 Ohm schon 11mA verbraucht noch ohne Motor, den Adj Regler solltest du mal benennen und dir den Adj Strom anschauen, evtl. braucht es nicht so viel Strom nur für den Adj.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (8. Mai 2014 um 11:17)


  • Ist das mit Fritzing gemacht? Dann hänge die Datei mal an, bin zu faul das alles neu zu zeichnen.

    das das eagle ist sollte doch zu erkennen sein ;)

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Also irgendwie will es nicht werden. Es werden ja immer mehr Bausteine :(
    Da ich nicht mehr genug Pins zu Verfügung habe, brauche ich ja einen Expander. Also komme ich auf einen Expander und zwei Treiber.

    Mein Problem ist, dass ich verschiedene Spannungen schalten will. Die Motoren mit 1,2V, die LEDs mit 5V.
    Wie versorge ich aber jetzt die Motoren mit 1,2V (über den LM1117)

    P.S.: Die Motoren sind RF300, welche min. 12mA benötigen.


  • Mein Problem ist, dass ich verschiedene Spannungen schalten will. Die Motoren mit 1,2V, die LEDs mit 5V.
    Wie versorge ich aber jetzt die Motoren mit 1,2V (über den LM1117)

    Da die ULN2308 z.b. gegen Masse Schalten kannst Du dort mehrere Spannungen verwenden. Ich muss mal sehen, ob ich heute noch etwas Zeit finde und Dir mal einen Plan mache.

    Ich sehe gerade, dass Du die Funktion des ULN als Treiber noch nicht ganz so begriffen hast. Warte am besten mal auf den Schaltplan, den ich gleich mache.

    So quick and dirty (und mit fritzing :bravo2: ) Hoffe es verdeutlicht die Nutzung des ULN als Treiber. Alle Kreise laufen über die gleiche Masse.

  • Tausend Dank! Das erleichtert mir schon mal einiges.
    Darf ich dazu noch was fragen?

    Wieso muss ich die GPIOs nach GND schalten (vor dem Treiber)? Und wieso müssen dann noch Widerstände dazu? Wird der Stromkreislauf nicht durch den GND-Pin des Treibers geschlossen?

    Einmal editiert, zuletzt von blabla333 (8. Mai 2014 um 18:59)

  • Denn in diesem Beispiel gibt es die GND-Verbindung von den GPIOs nicht: http://www.brunwinkel.de/elektronik/ics/uln2803/
    Ich will es nur richtig verstehen...

    Ist es deswegen? "Falls Eingang und Ausgang zwei unterschiedliche Versorgungsspannungen nutzen, so muss unbedingt die Masse von beiden zusammengelegt werden."
    Wenn ja, verstehe ich noch nicht die eingesetzten Widerstände.

    Einmal editiert, zuletzt von blabla333 (8. Mai 2014 um 22:17)

  • Die ULN-Reihe ist sehr empfindlich am Eingang, weil die Darlingtonstufe (das sind zwei Transistoren hintereinander) eine sehr hohe Verstärkung (1000-fach) hat. Dadurch kann jedes kleine Eingangssignal, auch eine Störung, für eine Schalten des Ausgangs sorgen. Mit den 10k Widerständen kann man das verhindern. Der ULN hat zwar auch interne Pulldowns (so heißen Widerstände gegen Masse) aber ich habe festgestellt, dass die externen zumindest nichts schaden und die GPIO's garantiert auf low gezogen werden, wenn der RasPi aus ist.

  • Ich habe meine Schaltung jetzt entsprechend korrigiert und erweitert.
    Da die LEDs und die Motoren an anderer Stelle im Schaltschrank platziert sind, werden sie per Klemme "eingebunden". Müsste ja so gehen.

    Der SIM1-0512 stellt mir 12V zu Verfügung. Ist es so richtig, dass die Pulldowns in dem Fall gegen V- gehen (Pin7)?

    Bei der 1,2V Spannung sehe ich nicht den Fehler. Der LM1117 ADJ soll mir die 1,2V zu Verfügung stellen.
    Laut Datenblatt berechne ich die Ausgangsspannung so: 1,25 * (1+R2/R1). Also müsste R1 und R2 eigentlich 0 sein -> Ganz ohne Widerstände? Also ADJ-Pin einfach gegen GND schalten?


  • Ich habe meine Schaltung jetzt entsprechend korrigiert und erweitert.

    ich wollte schon schreiben ob du meine Beiträge überhaupt liest :s, aber

    Bei der 1,2V Spannung sehe ich nicht den Fehler. Der LM1117 ADJ soll mir die 1,2V zu Verfügung stellen.
    Laut Datenblatt berechne ich die Ausgangsspannung so: 1,25 * (1+R2/R1). Also müsste R1 und R2 eigentlich 0 sein -> Ganz ohne Widerstände? Also ADJ-Pin einfach gegen GND schalten?

    du liest ja doch und hast es schon halb verstanden....:thumbs1:

    der Widerstand zwischen Adj. und out ist für die interne 1,25V (hier R11) vom Regler zuständig und wird üblicherweise auf 240 Ohm gemacht für ca. 5mA ! Der Widerstand für mehr als 1,25V ist der zwischen Adj. und GND (hier R5), will ich also 1,5V raus haben muss ich da 1,5V - 1,25V = 0,25V haben und das ist ein Widerstand von 0,25V/5mA = 50 Ohm (also was zwischen 47 und 56 Ohm nach Normreihe)

    wäre dieser ! Widerstand 0 so hättest du eben nur 1,25V

    wieviel Spannung kommt raus wenn dieser Widerstand 1k Ohm wäre ?

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (9. Mai 2014 um 22:00)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!