LED Strips vom Action mit Arduino ansteuern

Hallo zusammen,
ich bin ziemlich neu hier im Forum und noch etwas unerfahren mit dem Arduino, da ich ihn nur aus der Schule kenne...
ich habe mir jetzt auch Privat einen zugelegt und möchte zu Anfang versuchen meine LED Strips mit dem Arduino zu steuern, soweit ich weiß gibt es bei den meisten LED Strips 12V+ R G B, aber bei meiner LED Strips ist es etwas anders und zwar gibt es, GND GND D 12V+
Wobei mich 2x Grond etwas ir­ri­tiert....

Bei dieser Schaltung habe ich allerdings keine Ahnung wie diese angesteuert werden muss, wie gehe ich da am besten vor wenn ich zum Anfang die Grundfarben darstellen will ?
Später hinaus will ich den Regenbogeneffekt hinbekommen, da die LED Strips mehrere Farben Zeitgleich darstellen können.
Im Idealfall will ich mit der Original - Fernbedienung den Arduino ansteuern um dementsprechend die Farben zu wechseln, ich könnte zwar auch den dazugehörigen Adapter benutzen, nur das Problem ist das diese Adapter entweder kaputt oder nicht mehr funktionsfähig sind.
Da ich die Adapter zu speziell dieser LED Strips nicht einzeln nachkaufen kann will Ich diesen Adapter durch den Arduino er­set­zen....

Vielen dank im Voraus

Das ist ganz einfach:
Einmal die Versorgung +12V und GND und einmal Daten DI/DO und GND.

Auf dem Stripe sind Chips drauf.
Schau mal, ob du da was erkennen kannst. Das werden höchstwahrscheinlich WS2812 sein.

Dann nimm dafür fastled Das geht recht unkompliziert.

Hast du einen Link zu deinen LED-Strip?

ja, hier

Wenn ich die Bezeichnung des Chips eingebe, bekomm ich auf Google 5 Suchergebnisse auf Chinesisch.
TC1903H

Na ist doch schick:

In dem Datenblatt steht die Beschaltung. DataIn/DataOut ist also eine typische serielle Beschaltung.
Die Beschaltung zeigt auch, das es einen gemeinsamen GND sowohl für die Versorgung als auch Daten gibt.
Somit müssten zwischen beiden GND-Pins am Stripe 0Ohm stehen.

Also anschliesssen:
12V und GND so wie angezeichnet.
Vom Arduino einen PIN abgehend mit einem kleinen Widerstand 330Ohm auf D und mit GND auf GND des Stripes.
Nicht direkt mit einem PIN auf den Stripe gehen. Es könnte Dich den ersten Chip kosten.

1 Like

Das heißt ich kann mir eine GND Leitung sparen und sind eigentlich nur 3 Leitungen, da GND Doppelt gemoppelt ist ?
ist das richtig so ?

Wenn Du den 12V GND mit dem GND vom Arduino zusammenlegst: Ja.
Solltest Du den Arduino über 12V versorgen und die gleichen 12V für den Stripe nutzen ist die Verbindung bereits vorhanden :wink:

Das habe ich tatsächlich vorgehabt

Geht.
Du solltest nur vermeiden noch viele weitere externe Komponenten, die Strom verbrauchen, an den Arduino zu hängen. Das könnte den Spannungsregler in die Knie zwingen.

Die Frage ist, macht der Arduino 5M LED Strips mit ?

Ja.
Der füttert nur den ersten Chip.
Der Chip arbeitet das Signal auf und füttert den zweiten Chip und so weiter...

1 Like

Am Anfang steht ein Streifentest mit einem weißen Pixel:

#include <FastLED.h>

#define NUM_LEDS 150  // How many leds are in the strip?
#define DATA_PIN 6

CRGB leds[NUM_LEDS];  // This is an array of leds.  One item for each led in your strip.

uint8_t gHue = 0; // rotating "base color" used by many of the patterns

void setup() {
  FastLED.addLeds<WS2811, DATA_PIN, GRB>(leds, NUM_LEDS);
  leds[0] = CRGB::Red;
  leds[1] = CRGB::Green;
  leds[2] = CRGB::Blue;
  FastLED.show();
  delay(3000);
}

void loop() {
  if (millis() < 10000)
  {
    for (int whiteLed = 0; whiteLed < NUM_LEDS; whiteLed = whiteLed + 1) {
      leds[whiteLed] = CRGB::White;
      FastLED.show();
      delay(100);
      leds[whiteLed] = CRGB::Black;
    }
  } else {
    fill_rainbow( leds, NUM_LEDS, gHue, 7);
    FastLED.show();
    EVERY_N_MILLISECONDS( 20 ) {
      gHue++;  // slowly cycle the "base color" through the rainbow
    }
  }
}

Damit die Farben stimmen, mußt Du ggf. "GRB" anpassen. Die ersten Pixel sollten Rot, Grün und Blau leuchten.

IR-Fernbedienung und Neopixel vertragen sich nicht gut. Statische Bilder sind OK, aber dynamische Animationen blockieren den µC und "verschlucken" dadurch IR-Nachrichten.

1 Like

Also ich will ja das die LED Strips die 12V+ über den Arduino bekommen, allerdings gibt der Arduino nur 5V/3,3V ab ? wie läuft das dann da ab, wenn ich den Arduino über ein 12V NT anschließe, muss ich dafür ggf. den Sketsch abändern ?

Wenn Du es so meinst, wie Du es formuliert hast, dann geht das so nicht.

Nein, Stromversorgung und Programm haben keine Abhängigkeit.

12 V vom Netzteil an den Rundstecker vom UNO (wenn es ein UNO ist) und parallel an den Streifen anschließen. Dann UNO-Pin - Widerstand - DIN vom Streifen verbinden.

Wenn Du unsicher bist, Stift + Papier und Schaltplan malen, scannen oder fotografieren und hier reinstellen.

Zum Verständnis für mich, das heißt ich kann zwar ein 12V NT an den Arduino anschließen, aber der Arduino kann nur mit 5V arbeiten ?

Nein.


+12V----+-----------------------12V Stripe
        |   
        +- +12V |U|        ___
                |N| PIN --|___|-- D Stripe
        +- GND  |O| 
        |   
GND-----+-----------------------GND Stripe


ich würde dies dann so anschließen (Siehe Bild)

Das geht nicht, da der Stripe mit 12V arbeitet.
Erkennst Du den Aufbau aus #17? Die 12V gehen am UNO auf die Hohlbuchse.

Die 12V sowie GND gehen an den Rundstecker Eingang des Arduino als auch in die Strips ?