Zum Inhalt springen
Arduino und Halloween Projekt

Halloween-Geist mit Arduino

    Bald ist Halloween, also bauen wir uns einen Arduino-Halloween-Geist. Dazu brauchen wir zwei LEDs, einen 220 Ohm Widerstand und einen Lautsprecher (z. B. einen Piezo oder Transducer – in den meisten Arduino-Starterkits enthalten). Die LEDs sind die schaurig blinkenden Augen, der Lautsprecher erzeugt gruselige Geräusche.

    Schaltplan für den Halloween-Geist

    Schaltplan Arduino Halloween Geist

    Der Schaltplan ist recht einfach. Zwei parallel geschaltete LEDs sind mit einem Vorwiderstand von 220 Ohm (rot-rot-braun oder rot-rot-schwarz-schwarz) in Reihe geschaltet und mit dem digitalen Pin 12 vom Arduino-Board verbunden. Es ist wichtig, dass die LEDs den gleichen Innenwiderstand haben (normalerweise ist das bei gleichfarbigen LEDs der Fall), sonst leuchtet nur eine LED. Der Lautsprecher wird mit dem GND und dem digitalen Output-Pin 2 vom Arduino-Board verbunden. 

    Arduino-Code

    Der Code erweckt in unregelmäßigen Abständen unseren Geist. Dieser blinkt dann mit den Augen und spielt eine Melodie ab.


    Sieh dir jetzt meinen neuen Arduino-Videokurs an: Jetzt ansehen!


    const int ledPin = 12;
    const int speakerPin = 2;
    
    int einschaltZufall = 100;  // je höher die Zahl, desto seltener wird ausgelöst
    
    int einschaltTimer = 0;
    int einschaltDauer = 1000;
    
    void setup() {
      pinMode(ledPin, OUTPUT);
      pinMode(speakerPin, OUTPUT);
      Serial.begin(9600);
    }
    
    void aufwachen() {
      for (int j = 0; j < 4; j++) {
    
        for (int i = 0; i < 20; i++) {
          digitalWrite(ledPin, HIGH);
          tone(speakerPin, 2600);
          delay(80);
          digitalWrite(ledPin, LOW);
          tone(speakerPin, 20);
          delay(10);
        }
        
        for (int i = 0; i < 20; i++) {
          digitalWrite(ledPin, HIGH);
          tone(speakerPin, 2300);
          delay(80);
          digitalWrite(ledPin, LOW);
          tone(speakerPin, 20);
          delay(10);
        }
        
      }
    }
    
    void loop() {
      int zufallsZahl = random(einschaltZufall);
      Serial.println(zufallsZahl);
      if (zufallsZahl == 0) {
        aufwachen();
      } else {
        digitalWrite(ledPin, LOW);
        noTone(speakerPin);
        delay(50);
    
      }
      delay(10);
    }

    Gucken wir noch einmal etwas genauer auf den Code. In der ersten Zeile im Loop wird eine Variable zufallsZahl per Zufall (random) errechnet. Der Wertebereich liegt zwischen 0 und dem Wert der Variablen einschaltZufall-1. Nun prüfen wir in der if-Abfrage, ob die zufallsZahl genau 0 ist. Das passiert per Zufall und kommt desto seltener vor, desto größer die Variable einschaltZufall ist.

    Übrigens hab ich hier einen kleinen Überblick, wie man Arduino programmiert geschrieben.

    Ausblick

    Jetzt kannst du eine Geisterform aus Papier basteln und über die Teile des Breadboards legen, oder du baust einen Geist aus einem Laken und verlängerst die Kabel für die LEDs. Oder wie wäre es, wenn du einen Kürbis mit etwas Elektronik ausstattest? Denk dir was Cooles aus und schick mir ein Foto! hallo@starthardware.org

    Wenn dir dieses Projekt gefällt, drücke doch auf den Like-Button. Das würde mich sehr freuen :-)

    Titelfoto von Bong Grit, CC-BY-ND


    Wenn dir das Projekt gefallen hat und du von weiteren interessanten Projekten inspiriert werden willst, sieh dir doch mal mein neues E-Book »Arduino Projekte Volume 1« an!

    • Die beliebtesten Arduino-Projekte von StartHardware
    • Inklusive Schaltplan, Beschreibung und Code
    • Arduino-Schnellstart-Kapitel
    • Kompakter Programmierkurs


    4 Gedanken zu „Halloween-Geist mit Arduino“

    1. Hi Stefan, danke für die schnelle Antwort. Ich habe den Fehler gefunden. Scheinbar sind die Verbindungen von mehreren Löchern des Breadboards unterbrochen.
      Gruß Oli

    2. Hallo Stefan,

      bei mir kommt kein Ton aus dem Lautsprecher. Die Anschlüsse habe ich jetzt mehrmals überprüft und sind identisch zu deiner Abbildung. Vielleicht kannst du oder jemand anderes weiterhelfen?

      Gruß Oli

      1. Hallo Oli, Fehlerquellen sind hier: dass die Kabel auf dem Breadboard nicht genau im richtigen Loch zum Speaker stecken, dass der Speaker falsch herum betrieben wird – schließe den Speaker einfach mal anders herum an, dass der Speaker kaputt ist, dass der Code nicht auf das Arduino-Board übertragen wurde. Wenn das nicht hilft, schick mir mal ein Foto der Schaltung an hello(at)starthardware.org – Liebe Grüße Stefan

    Schreibe einen Kommentar

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

     

    Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.