Πίνακας περιεχομένων:

Wearable Tech Final Project - Κράνος DJ: 6 Βήματα
Wearable Tech Final Project - Κράνος DJ: 6 Βήματα

Βίντεο: Wearable Tech Final Project - Κράνος DJ: 6 Βήματα

Βίντεο: Wearable Tech Final Project - Κράνος DJ: 6 Βήματα
Βίντεο: The making of a 3D printed Wolverine helmet by Props N Stuff (Deadpool 3 X-men ending scene version) 2024, Ιούλιος
Anonim
Wearable Tech Final Project - DJ κράνος
Wearable Tech Final Project - DJ κράνος

Ο στόχος αυτού του έργου είναι να κάνει ένα κράνος DJ με LED αντιδραστικά στη μουσική για show και wow factor. Χρησιμοποιούμε μια διευθυνσιοδοτούμενη λωρίδα LED από το Amazon.com καθώς και ένα κράνος μοτοσικλέτας, ένα Arduino uno και σύρμα.

Προμήθειες

Τα υλικά περιλαμβάνουν:

  • Απευθυνόμενη λωρίδα LED
  • Κράνος μοτοσυκλέτας
  • Arduino Uno
  • Σύρματα και κολλητήρι

Βήμα 1: Λήψη LED για να αντιδράσει στον ήχο

Για το πρώτο βήμα θα δοκιμάσουμε τη λωρίδα LED για να αντιδράσει στον ήχο, χρησιμοποιούμε την πλακέτα ήχου από το Sparkfun και τη συνδέουμε με το Arduino χρησιμοποιώντας ένα breadboard και σύρμα. Δοκιμάζοντας το λογισμικό Arduino, έχουμε δύο ενδείξεις που μπορούμε να χρησιμοποιήσουμε. Το πλάτος του ήχου που προέρχεται από τη θύρα "Φάκελος" και η δυαδική ένδειξη 1 /0 από τη θύρα "πύλης". Χρησιμοποιήστε αυτές τις μεταβλητές για να αντιστοιχίσετε στη λωρίδα led με δυνατότητα διεύθυνσης, τότε η "πύλη" είναι σε ένα, τα LEDS εμφανίζουν συγκεκριμένο χρώμα, όταν ο φάκελος είναι πάνω από ένα ορισμένο επίπεδο, εμφανίζουν ένα συγκεκριμένο χρώμα. Ο πλήρης κωδικός θα παρέχεται.

Βήμα 2: Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος

Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος
Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος
Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος
Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος
Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος
Κόψτε και συγκολλήστε LEDS σε σχήμα στο κράνος

Στο έργο μου αποφάσισα να προσθέσω τις λυχνίες LED στο κράνος με τρόπο Χ με επιπλέον τρίγωνα στο εξωτερικό, σχεδιάζω να κάνω αυτό το σχέδιο να λειτουργεί καλύτερα με τον τρόπο που παίζει η μουσική. Αυτό λοιπόν το βήμα αφορά την κοπή των λωρίδων LED στα επιθυμητά μήκη και τη συγκόλλησή τους μαζί στα σημάδια κοπής για να γίνουν γωνίες. Έπρεπε να το κάνω αυτό περίπου 10 φορές και είναι πολύ χρονοβόρο ειδικά όταν ασχολούμαι με μικρά καλώδια. Αυτή είναι η πρόοδος σε αυτό το βήμα

Βήμα 3: Συνδέστε και δοκιμάστε τις λυχνίες LED στο κράνος

Συνδέστε και δοκιμάστε τις λυχνίες LED στο κράνος
Συνδέστε και δοκιμάστε τις λυχνίες LED στο κράνος
Συνδέστε και δοκιμάστε τις λυχνίες LED στο κράνος
Συνδέστε και δοκιμάστε τις λυχνίες LED στο κράνος

Σε αυτό το βήμα, ένωσα και δοκίμασα τα LED στο arduino, την πλακέτα ήχου και τα κομμένα LED για να βεβαιωθώ ότι οι κοπές και η συγκόλληση λειτουργούσαν σωστά

Βήμα 4: Δωρεάν ηλεκτρονικά από το Breadboard

Δωρεάν ηλεκτρονικά από Breadboard
Δωρεάν ηλεκτρονικά από Breadboard
Δωρεάν ηλεκτρονικά από Breadboard
Δωρεάν ηλεκτρονικά από Breadboard
Δωρεάν ηλεκτρονικά από Breadboard
Δωρεάν ηλεκτρονικά από Breadboard

Σε αυτό το βήμα επικεντρώθηκα στο να βγάλω όλα τα ηλεκτρονικά από το breadboard. Συγκόλλησα όλα τα καλώδια που χρειάστηκαν για συγκόλληση και επέκτεινα τα καλώδια του κράνους για πολύ, ώστε να μπορείτε να φοράτε το σύρμα του κράνους που είναι προσαρτημένο στο Arduino. Το πιο σημαντικό πράγμα που δεν μπορούσα να καταλάβω ήταν η εξωτερική τροφοδοσία, δοκίμασα μπαταρίες σε διαφορετικές διαμορφώσεις, αλλά τίποτα δεν θα μου έδινε το αποτέλεσμα που χρειαζόμουν, μερικά θα έκαναν τα φώτα να τρελαθούν και κάποια άλλα χρώματα. Δυστυχώς, αυτό μπορεί να οφείλεται στη γνώση μου για τα κυκλώματα, αλλά επέλεξα να διατηρήσω την ισχύ του Arduino που προέρχεται από τον υπολογιστή. Η κάρτα ήχου τροφοδοτείται από μια μπαταρία και λειτουργεί καλά

Βήμα 5: Τελική διαμόρφωση

Τελική διαμόρφωση
Τελική διαμόρφωση

για αυτό το τελευταίο βήμα, διάβασα τις τιμές που προέρχονται από τον πίνακα ήχου και τροποποίησα τον κώδικα για να ταιριάζει με τις νέες τιμές που άλλαξαν μία, όλα αφαιρέθηκαν από το ψωμί. Κόλλησα τις λωρίδες LED στο κράνος όπου πριν είχαν κολληθεί και τελικά ξαναδοκίμασα.

Βήμα 6: Κωδικός (Arduino)

// Απλό σκίτσο NeoPixel Ring (γ) 2013 Shae Erisson

// Κυκλοφόρησε με άδεια GPLv3 για να ταιριάζει με τα υπόλοιπα

// Βιβλιοθήκη Adafruit NeoPixel

#περιλαμβάνω

#ifdef _AVR_ #include // Απαιτείται για 16 MHz Adafruit Trinket #endif

// Ποια ακίδα στο Arduino είναι συνδεδεμένη με τα NeoPixels;

#define PIN 3 // Σε Trinket ή Gemma, προτείνετε να το αλλάξετε σε 1

// Πόσα NeoPixel είναι προσαρτημένα στο Arduino;

#define NUMPIXELS 166 // Δημοφιλές μέγεθος δακτυλίου NeoPixel

Εικονοστοιχεία Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Χρόνος (σε χιλιοστά του δευτερολέπτου) για παύση μεταξύ των εικονοστοιχείων

void setup () {

#if καθορισμένα (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif // ΤΕΛΟΣ κώδικα για συγκεκριμένο μπιχλιμπίδι.

pixels.begin (); // INITIALIZE NeoPixel strip object (ΑΠΑΙΤΟΥΜΕΝΟ)

Serial.begin (9600); }

void loop () {

int sensorValue = analogRead (A1);

int sensorValue2 = digitalRead (7); Serial.println (sensorValue); // καθυστέρηση (5); //pixels.clear (); // Ορίστε όλα τα χρώματα pixel σε "off"

εάν (sensorValue2 == 1) {

για (int i = 0; i <28; i ++) {pixels.setPixelColor (i, 15, 0, 50);

}

για (int i = 48; i <81; i ++) {pixels.setPixelColor (i, 15, 0, 50);

}

για (int i = 102; i <129; i ++) {pixels.setPixelColor (i, 15, 0, 50);

}

για (int i = 148; i <166; i ++) {pixels.setPixelColor (i, 15, 0, 50); }} /////////////////////////// else {για (int i = 0; i <28; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

για (int i = 48; i <81; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

για (int i = 102; i <129; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

για (int i = 148; i <166; i ++) {pixels.setPixelColor (i, 0, 0, 0); }} //////////////////////////// εάν (sensorValue == 3 || sensorValue == 2) {για (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 255, 0, 0);

}

για (int i = 82; i <101; i ++) {pixels.setPixelColor (i, 255, 0, 0);

}

για (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 255, 0, 0);

} pixels.show (); } if (sensorValue> 3) {for (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 0, 155, 155);

}

για (int i = 82; i <101; i ++) {pixels.setPixelColor (i, 0, 155, 155);

}

για (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 0, 155, 155);

}

pixels.show (); } else {for (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

για (int i = 82; i <101; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

για (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 0, 0, 0);} pixels.show (); }}

Συνιστάται: