Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Dynamische Marquee LED-verlichting maken met Arduino Nano en NeoPixels

Onderdelen en benodigdheden

Onderdeel Aantal
Arduino Nano R3 1
NeoPixel-strip (adresseerbare LED-strip) 1
3 draden (voor 5V, data, GND) 1 set
Krimpkous (optioneel, voor strain relief) 1 stuk

Software en online tools

  • Arduino IDE - voor het programmeren van de Arduino
  • Adafruit NeoPixel-bibliotheek - vereist voor het aansturen van de LED-strip

Over dit project

Deze eenvoudige tutorial laat zien hoe je geanimeerde verlichting toevoegt aan je arcade-kast of andere projecten. Het is ideaal voor (achtergrond)verlichting van marquees en veel andere toepassingen.

De opbouw

Bekijk de onderstaande afbeeldingen voor een visuele handleiding van de bouw.

Korte installatiehandleiding

Hardware

Solder drie draden van de Arduino Nano naar de NeoPixel-strip: 5V, digitaal signaal (pin 2 op de Arduino) en ground.

Tip: Gebruik een stukje krimpkous om de kabels samen te houden, vooral bij de LED-strip. Zorg dat de soldeerverbindingen goed bedekt zijn. Dit voorkomt dat de verbindingen loskomen door trillingen of beweging.

Code

Stel het aantal LEDs van de aangesloten strip in de sketch in, upload het naar de Arduino en test het. In de voorbeeldcode worden drie animaties gebruikt: een 'lopende' LED, knipperen en pulseren - allemaal in de kleur wit. Je kunt de code aanpassen voor allerlei animaties en kleuren, of gewoon een simpele achtergrondverlichting maken.

De behuizing

Ik knipte twee stukken karton die precies in mijn kast pasten. Één stuk dient als achtergrond om de NeoPixel-strip op te lijmen. Het andere stuk wordt plat achter de onderkant van de marquee geplaatst om te voorkomen dat het licht recht naar beneden schijnt. Daarna knipte ik nog enkele kleine randen af voor een perfecte pasvorm.

Ik plakte gaffertape op het karton om het zwart te maken. De NeoPixel-strip werd op het karton gelijmd en de draden samen met de Nano werden met tape aan de achterkant van het karton bevestigd.

Plaats de twee delen in de kast en sluit een USB-kabel aan van de Nano op een 5V-voeding. In mijn kast is dit verbonden met een USB-poort van een Raspberry Pi.

Zet daarna de originele marquee terug of maak je eigen ontwerp. Ik maakte een simpel ontwerp, printte het op fotopapier en knipte het op maat.

Tip: Het resultaat wordt nog mooier als je je ontwerp op film laat printen door een professionele drukkerij.

Benodigde bibliotheken

  • Adafruit NeoPixel-bibliotheek

Licentie

Delen van de sketch zijn afkomstig van internet, alle credits gaan naar de makers. De code mag vrij worden gebruikt voor persoonlijke doeleinden, niet voor commerciële doeleinden. Neem contact op via ericBcreator@gmail.com.

Code

Geanimeerde marquee-verlichtingscode

/* **********************************************************************
 * Marquee-verlichting met Neopixels door ericBcreator
 * eenvoudig script voor het verlichten van een (arcade) marquee
 **********************************************************************
 * laatste update 20181021 door ericBcreator
 *
 * Geïnspireerd door een artikel van sandyjmacdonald
 * https://sandyjmacdonald.github.io/2015/12/02/picade-errata/
 *
 * onderdelen:
 * - Neopixel-strip
 * - Arduino Nano
 *
 * Deze code is gratis voor persoonlijk gebruik, niet voor commercieel gebruik.
 * Laat deze header intact.
 *
 * contact: ericBcreator@gmail.com
 ********************************************************************** */

#include <Adafruit_NeoPixel.h>
#define PIN 2 // definieer de pin waar de strip op is aangesloten

// variabelen instellen en neopixel-strip initialiseren
int numOfLeds = 11; // aantal leds op de strip
int minBrightness = 80; // minimale helderheid van pulseren en knipperen (0-255)
int maxBrightness = 255; // maximale helderheid van pulseren en knipperen (0-255)
int walkingLedsDelay = 250; // vertraging in ms voor de lopende leds
int flashDelay = 250; // vertraging in ms voor de knipperende leds
int numOfFlashLoops = 3; // aantal keren dat de leds knipperen
int numOfPulseLoops = 10; // aantal keren dat de leds pulseren van min naar max
int pulseDelay = 20; // vertraging in ms bij pulseren van min naar max en omgekeerd

Adafruit_NeoPixel strip = Adafruit_NeoPixel(numOfLeds, PIN);

void setup() {
  strip.begin();
}

void loop() {
  walkingLeds(); // toon de lopende leds
  flashLeds();   // laat de leds knipperen
  for (int i = 0; i < numOfPulseLoops; i++) // pulser de leds
    pulseBrightness();
}

// functies
void walkingLeds() {
  setLedColorsToZero();
  strip.setBrightness(maxBrightness);
  strip.show();
  for (int x = numOfLeds; x > 0; x--) {
    strip.setPixelColor(x, strip.Color(255, 255, 255));
    strip.show();
    delay(walkingLedsDelay);
    strip.setPixelColor(x, 0);
    strip.show();
  }
}

void flashLeds() {
  setLedColors();
  for (int i = 0; i < numOfFlashLoops; i++) {
    strip.setBrightness(maxBrightness);
    strip.show();
    delay(flashDelay);
    strip.setBrightness(minBrightness);
    strip.show();
    delay(flashDelay);
  }
}

void pulseBrightness() {
  setLedColors();
  for (int i = minBrightness; i < maxBrightness; i++) {
    strip.setBrightness(i);
    strip.show();
    delay(pulseDelay);
  }
  for (int i = maxBrightness; i > minBrightness; i--) {
    strip.setBrightness(i);
    strip.show();
    delay(pulseDelay);
  }
}

void setLedColors() {
  for (int x = 0; x < numOfLeds; x++)
    strip.setPixelColor(x, strip.Color(255, 255, 255));
}

void setLedColorsToZero() {
  for (int x = 0; x < numOfLeds; x++)
    strip.setPixelColor(x, strip.Color(0, 0, 0));
}

Schema

Zie het bijgevoegde schema voor de bedrading.

Productieproces

  1. Een Betaalbaar Draadloos Sensornetwerk Bouwen voor Uw Huis
  2. Bouw een Internet-gecontroleerde Video-streamende Robot met Arduino & Raspberry Pi
  3. Je plafondventilator bedienen met Alexa: Stap-voor-stap handleiding
  4. Monitor Je Huistemperatuur Overal met Arduino Cloud Integratie
  5. Je TV bedienen met Alexa via Arduino IoT Cloud – stapsgewijze handleiding
  6. Centrale Verwarming Slim Maken met Arduino en OpenTherm
  7. ThimbleKrox: Vingergemonteerde Muizenbesturing met Arduino Micro & MPU-6050
  8. 1D Pong-spel met Arduino en WS2812 LED-strip – Stap-voor-stap DIY handleiding
  9. Geavanceerde Automatisering Ontgrendelen: Waarom 3D-Vision Essentieel Is Voor Uw Projecten
  10. Elektrisch ontwerp optimaliseren met E3.schematic functies
  11. Arduino MKR1000 Pinout: IoT Bord Handleiding