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 irritiert....
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 ersetzen....
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.
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
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.
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.
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.