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

Light Me Up !: 20 βήματα (με εικόνες)
Light Me Up !: 20 βήματα (με εικόνες)

Βίντεο: Light Me Up !: 20 βήματα (με εικόνες)

Βίντεο: Light Me Up !: 20 βήματα (με εικόνες)
Βίντεο: LIGHT x TRANNOS - 24HRS (Official Music Video) 2024, Νοέμβριος
Anonim
Αναψε με!
Αναψε με!
Αναψε με!
Αναψε με!
Αναψε με!
Αναψε με!
Αναψε με!
Αναψε με!

μέλη της ομάδας έργου

(Hyewon Shin, Eunjeong Ko, Junsung Yi)

Τι θα γινόταν αν μπορούσατε να αγγίξετε και να σχεδιάσετε το φως; Πώς θα σας φαινόταν αν είχατε ένα όμορφο μοτίβο φωτός που σχεδιάσατε μόνοι σας με ένα ενδιαφέρον animation; Light me up θα είναι ένα ενδιαφέρον σχέδιο σχεδίων που αγγίζει και σχεδιάζει το ίδιο το φως και κάνει ενδιαφέροντα σχέδια! Αυτό το έργο έχει πολλά τρίγωνα που σχηματίζουν εξαγωνικό σχήμα. Μπορείτε λοιπόν να δημιουργήσετε στερεοσκοπικά μοτίβα ανάλογα με τον τρόπο που σχεδιάζετε το φως! Απλώς πατήστε κάθε κομμάτι και τα διάφορα χρώματα θα βαθμολογηθούν και όταν βγει το χρώμα που θέλετε, απλώς χτυπήστε το χέρι που πιέσατε και θα συνεχίσει να λάμπει όμορφα με το χρώμα που θέλετε! Το έργο χρησιμοποίησε περίπου 312 τρίγωνα, αλλά θα μπορούσε να δημιουργήσει ένα ωραίο φως που λειτουργεί καλά με 6 τρίγωνα. Τώρα επιτρέψτε μου να σας δείξω πώς να το φτιάξετε με έξι τρίγωνα. Ακολουθήστε τα βήματα και θα έχετε τη δική σας υπέροχη δουλειά!

Προμήθειες

Υλικό: Arduino (χρησιμοποίησα arduino mega 2560), ακρυλικό (διαφανές, λευκό), λωρίδα LED (NeoPixel), μεμβράνη διαχύτη, κουμπί, συνδετήρας 4 ακίδων, καλώδιο, πίνακας κυκλωμάτων, τροφοδοτικό

Εργαλεία: Μηχανή κοπής με καθοδήγηση λέιζερ, τρισδιάστατος εκτυπωτής

Βήμα 1: Ας τα καταφέρουμε

Ας τα καταφέρουμε!
Ας τα καταφέρουμε!
Ας τα καταφέρουμε!
Ας τα καταφέρουμε!
Ας τα καταφέρουμε!
Ας τα καταφέρουμε!

Ας φτιάξουμε αυτό το χαριτωμένο εξάγωνο κομμάτι μαζί μου!

Το Light Me Up κατασκευάζεται χρησιμοποιώντας 312 τρίγωνα, αλλά ακόμη και 6 τρίγωνα μπορούν να σχεδιάσουν υπέροχο φως. Εάν θέλετε να το φτιάξετε σε μεγαλύτερη κλίμακα, μπορείτε να το φτιάξετε με αναφορά στο αρχείο που επισυνάπτεται παρακάτω.

Βήμα 2: Προετοιμασία υλικού

Προετοιμασία Υλικού
Προετοιμασία Υλικού

Βήμα 3: Κοπή ακρυλικού

Κοπή ακρυλικού
Κοπή ακρυλικού
Κοπή ακρυλικού
Κοπή ακρυλικού
Κοπή ακρυλικού
Κοπή ακρυλικού
Κοπή ακρυλικού
Κοπή ακρυλικού

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

Βήμα 4: Δημιουργήστε όψεις με τρισδιάστατους εκτυπωτές

Φτιάξτε όψεις με τρισδιάστατους εκτυπωτές
Φτιάξτε όψεις με τρισδιάστατους εκτυπωτές
Φτιάξτε όψεις με τρισδιάστατους εκτυπωτές
Φτιάξτε όψεις με τρισδιάστατους εκτυπωτές
Φτιάξτε όψεις με τρισδιάστατους εκτυπωτές
Φτιάξτε όψεις με τρισδιάστατους εκτυπωτές

Τώρα ήρθε η ώρα να φτιάξετε τις πλευρές κάθε κομματιού. Ας τα καταφέρουμε! Τα αρχεία τρισδιάστατης μοντελοποίησης στο πλάι επισυνάπτονται παρακάτω. Χρησιμοποιήσαμε το PLA για να φτιάξουμε πλευρές Το PLA είναι ισχυρότερο και λιγότερες συστολές από το ABS, επομένως συνιστώνται νήματα για χρήση του PLA.

Βήμα 5: Γυρίσματα

Γυρίσματα
Γυρίσματα
Γυρίσματα
Γυρίσματα
Γυρίσματα
Γυρίσματα

Τώρα ας βάλουμε μια ελαφριά μεμβράνη διάχυσης στο ακρυλικό στο μπροστινό μέρος. Αν βάλετε μεμβράνη, απλώνεται και λάμπει πολύ πιο όμορφα. Αρχικά, κόψτε το φιλμ σε σχήμα τριγώνου. (Καλύτερα να κόψετε το φιλμ μεγαλύτερο από το κομμένο ακρυλικό) Είναι απλό να τοποθετήσετε φιλμ, όπως μια προστατευτική μεμβράνη στο τηλέφωνό σας. Αν θέλετε να συμβουλευτείτε εδώ, μπορείτε να χρησιμοποιήσετε μια κάρτα για να την σπρώξετε για να κολλήσει τακτοποιημένα!

Βήμα 6: Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια

Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια
Συνδέστε τη λωρίδα LED + τη λωρίδα LED συγκόλλησης (NeoPixel) με καλώδια

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

Είναι ώρα συγκόλλησης! ετοιμάστε λωρίδες LED, συνδετήρες 4 ακίδων (βύσμα ή σύρματα) και ό, τι χρειάζεστε για συγκόλληση. Χρησιμοποίησα LED σε τρεις μονάδες. Εάν θέλετε, μπορείτε να χρησιμοποιήσετε ένα ή δύο LED, αλλά προτείνω να χρησιμοποιήσετε τρία. Όταν όλα τα υλικά είναι έτοιμα, κολλήστε τα καλώδια και στις δύο γραμμές δεδομένων, στις γραμμές 5v και στις γραμμές γείωσης της λωρίδας LED.

Βήμα 7: Διακόπτης τακτικής συγκόλλησης με καλώδια

Διακόπτης τακτικής συγκόλλησης με καλώδια
Διακόπτης τακτικής συγκόλλησης με καλώδια
Διακόπτης τακτικής συγκόλλησης με καλώδια
Διακόπτης τακτικής συγκόλλησης με καλώδια

Βήμα 8: Συναρμολόγηση -Εισαγωγή μπουλονιού στο πλάι =

Συναρμολόγηση -Εισαγωγή μπουλονιού στο πλάι = ①
Συναρμολόγηση -Εισαγωγή μπουλονιού στο πλάι = ①
Συναρμολόγηση -Εισαγωγή μπουλονιού στο πλάι = ①
Συναρμολόγηση -Εισαγωγή μπουλονιού στο πλάι = ①

Τώρα είναι ένα πραγματικά εύκολο μέρος! Τοποθετήστε ένα μπουλόνι σε κάθε μία από τις τρεις πλευρές με 3D εκτύπωση. Ο λόγος για τον οποίο μπορείτε να κάνετε τη χρήση του κουμπιού μπουλονιών όπως η χρήση δομικών μπουλονιών και παξιμαδιών. Όταν τελειώσει το κομμάτι, βάζω το κομμάτι στη θήκη και το τελειώνω με ένα παξιμάδι.

Βήμα 9: Συνδέστε το Ⓛⓣ στο Ⓒ =

Συνδέστε το Ⓛⓣ στο Ⓒ =
Συνδέστε το Ⓛⓣ στο Ⓒ =
Συνδέστε το Ⓛⓣ στο Ⓒ =
Συνδέστε το Ⓛⓣ στο Ⓒ =

Βήμα 10: Συναρμολόγηση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =

Συνέλευση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =
Συνέλευση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =
Συνέλευση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =
Συνέλευση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =
Συνέλευση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =
Συνέλευση -Χρησιμοποιήστε ένα Ⓦ και Ⓝ για να συνδυάσετε ① και ② =

Βήμα 11: Συναρμολόγηση -Επισύναψη Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =

Συναρμολόγηση -Προσάρτηση Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Προσάρτηση Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Σύναψη Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Σύναψη Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Προσάρτηση Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Προσάρτηση Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Προσάρτηση Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =
Συναρμολόγηση -Προσάρτηση Ⓐⓔ και ③ Χρήση ακρυλικού δεσμού =

Αν βάλετε ένα μπουλόνι στο πλάι, θα το βάλουμε στο πλάι και μπροστά. Το μπροστινό μέρος είναι ακρυλικό, οπότε πρέπει να το βάλετε με έναν αποκλειστικό ακρυλικό δεσμό. Εάν συνδέσετε ακρυλικό σε κανονικό δεσμό, θα αφήσει σημάδι.

Βήμα 12: Επισυνάψτε το Ⓢ στο Ⓓ =

Επισυνάψτε το Ⓢ στο Ⓓ =
Επισυνάψτε το Ⓢ στο Ⓓ =
Επισυνάψτε το Ⓢ στο Ⓓ =
Επισυνάψτε το Ⓢ στο Ⓓ =

Βήμα 13: Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =

Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =
Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =
Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =
Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =
Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =
Συναρμολόγηση -Συνδυασμός ④ και ⑤ Χρήση Ⓦ και Ⓝ =

Βήμα 14: Πλήρης συναρμολόγηση κομματιού

Πλήρης συναρμολόγηση κομματιού
Πλήρης συναρμολόγηση κομματιού
Πλήρης συναρμολόγηση κομματιού
Πλήρης συναρμολόγηση κομματιού
Πλήρης συναρμολόγηση κομματιού
Πλήρης συναρμολόγηση κομματιού

Βήμα 15: Η εμφάνιση εργασίας ενός έργου

Image
Image

Βήμα 16: NeoPixel, Καλωδίωση σύνδεσης

NeoPixel, Καλωδίωση σύνδεσης
NeoPixel, Καλωδίωση σύνδεσης
NeoPixel, Καλωδίωση σύνδεσης
NeoPixel, Καλωδίωση σύνδεσης
NeoPixel, Καλωδίωση σύνδεσης
NeoPixel, Καλωδίωση σύνδεσης

Βήμα 17: NeoPixel και Arduino Wiring

NeoPixel και Arduino Wiring
NeoPixel και Arduino Wiring

Βήμα 18: Προγραμματίστε το Arduino

εξωτερικό πτητικό ανυπόγραφο long timer0_millis;

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

#define MODEBTNNUM 3 int ani_mode = 0; ανυπόγραφο μακρύ preM1, preM2, preM3;

void setup () {

Wire.begin (); για (int i = 0; i <MODEBTNNUM; i ++) {pinMode (i+2, INPUT_PULLUP); } //Serial.begin(9600); }

void loop () {

για (int i = 0; i <MODEBTNNUM; i ++) {if (! digitalRead (i + 2)) ani_mode = i + 1; } για (int i = 0; i <6; i ++) {Wire.requestFrom (i+1, 1); while (Wire.available ()) {int x = Wire.read (); // Serial.println (x); εάν (x == 5) {ani_mode = 0; // Serial.println ("x = 5"); }}} ////////////////////////////////////////////// /////// if (ani_mode == 0) {for (int i = 1; i 3000) {preM1 = current1; για (int i = 1; i 5000) {preM2 = current2; για (int i = 1; i 3000) {preM3 = current3; // timer0_millis = 0; // preM1 = 0; // preM2 = 0; // preM3 = 0; // Serial.println ("επαναφορά χρονοδιακόπτη"); για (int i = 1; i <7; i ++) {Wire.beginTransmission (i); Wire.write (ani_mode); //Serial.println("3000 "); Wire.endTransmission (i); }}}}

Βήμα 19:

εξωτερικό πτητικό ανυπόγραφο long timer0_millis;

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

#include #define PIN 12 #define NUMPIXELS 162 Adafruit_NeoPixel strip = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); const int num = NUMPIXELS / 3; const int slaveNum = 1; int χρώματα [num] [3]; int hue [num]; int sat [num]; int φωτεινό [num]; int pNumber = 0; int gValue [num] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; const int btnPin [num] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 14, 15, 16, 17, 18, 19, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 54, 55, 56, 57, 58, 59}; int btnState [num]; boolean btnMode; int hueV [num] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; #include #define BTNNUM 1 int f_v = 1; ανυπόγραφο μακρύ preMillis1; ανυπόγραφο μακρύ preM? int ani_mode = 0; int ani2_Counter = 0; int counter = 0; //////////////////////////////////////////// void setup () {Wire. έναρξη (slaveNum); Wire.onRequest (requestEvent); Wire.onReceive (ReceEvent); για (int i = 0; i <num; i ++) {pinMode (btnPin , INPUT_PULLUP); } //Serial.begin(9600); strip.begin (); } ///////////////////////////////////////////

void loop () {

εάν (f_v == 1) {για (int i = 0; i <num; i ++) {απόχρωση = 50; sat = 95; φωτεινό = 100; } f_v = 0; } ////////////////////////////////////// // 버튼 입력 체크: 멈춤 신호 t btnMode = ψευδής; για (int i = 0; i <num; i ++) {if (! digitalRead (btnPin ))) {btnMode = true; }} btnEvent (5); // Serial.println (ani_mode); ////////////////////////////////////// διακόπτης (ani_mode) {περίπτωση 0: ani0 (); Διακοπή; περίπτωση 1: ani1 (); ani_mode = 0; ani2_Counter = 0; Διακοπή; περίπτωση 2: ani2_Counter = 1; ani_mode = 0; Διακοπή; περίπτωση 3: ani3 (); ani_mode = 0; ani2_Counter = 0; Διακοπή; προεπιλογή: readyState (); Διακοπή; } if (ani2_Counter == 1) {ani2 (); } setPixels (num); }

///////////////////////////////////////////

void ReceEvent (int howMany) {int x = Wire.read (); εάν (x == 5) {// Serial.println ("έλαβε 5"); ani_mode = 0; } ani_mode = x; // Serial.println (ani_mode); } //////////////////////////////////////////// void requestEvent () {

if (btnMode == true) {

Wire.write (5); // Serial.println ("5 보냄"); } else {Wire.write (0); }

}

void ani0 () {

// Serial.println ("0"); }

void ani1 () {

// Serial.println ("1"); εάν (pNumber == 0) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a1 = {25, 26}; int b1 = {39, 52}; int c1 = {40, 53}; για (int a = 0; a <2; a ++) {απόχρωση [a1 [a] = 100; κάθισε [a1 [a] = 95; φωτεινό [a1 [a] = 100; } για (int b = 0; b <2; b ++) {απόχρωση [b1 = 200; κάθισε [b1 = 95; φωτεινό [b1 = 100; } για (int c = 0; c <2; c ++) {απόχρωση [c1 [c] = 300; sat [c1 [c] = 95; φωτεινό [c1 [c] = 100; } // Serial.println ("0"); } else if (pNumber == 1) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a2 = {21, 22, 34, 35, 37, 46, 47, 51}; // int b2 = {}; // int c2 = {}; int d2 = {36, 48, 49, 50}; για (int a = 0; a <8; a ++) {απόχρωση [a2 [a] = 26; κάθισε [a2 [a] = 95; φωτεινό [a2 [a] = 100; } για (int d = 0; d <4; d ++) {απόχρωση [d2 [d] = 63; sat [d2 [d] = 95; φωτεινό [d2 [d] = 100; } // Serial.println ("1"); } else if (pNumber == 2) {// πρότυπο γιγαντιαίου κύβου για (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a14 = {34, 35, 46, 47, 48, 49}; // κίτρινο 06 για (int a = 0; a <6; a ++) {απόχρωση [a14 [a] = 35; κάθισε [a14 [a] = 95; φωτεινό [a14 [a] = 100; }} else if (pNumber == 3) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a3 = {34, 35, 46, 47, 48, 49}; // κίτρινο για (int a = 0; a <6; a ++) {απόχρωση [a3 [a] = 53; κάθισε [a3 [a] = 95; φωτεινό [a3 [a] = 100; }} else if (pNumber == 4) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a4 = {34, 35}; // κίτρινο int b4 = {47}; // μπλε int c4 = {48}; // μοβ

για (int a = 0; a <2; a ++) {απόχρωση [a4 [a] = 53; κάθισε [a4 [a] = 95; φωτεινό [a4 [a] = 100; }

για (int b = 0; b <1; b ++) {απόχρωση [b4 = 210; κάθισε [b4 = 95; φωτεινό [b4 = 100; } για (int c = 0; c <1; c ++) {απόχρωση [c4 [c] = 307; sat [c4 [c] = 95; φωτεινό [c4 [c] = 100; }} else if (pNumber == 5) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a5 = {34, 35, 46, 47, 48, 49};

για (int a = 0; a <6; a ++) {απόχρωση [a5 [a] = 100; κάθισε [a5 [a] = 95; φωτεινό [a5 [a] = 100; }} else if (pNumber == 6) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a6 = {34, 35, 46, 47, 48, 49}; // κίτρινο για (int a = 0; a <6; a ++) {απόχρωση [a6 [a] = 53; κάθισε [a6 [a] = 95; φωτεινό [a6 [a] = 100; }} else if (pNumber == 7) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int c7 = {34, 35, 46, 47, 48, 49}; // μωβ για (int c = 0; c <6; c ++) {απόχρωση [c7 [c] = 307; sat [c7 [c] = 95; φωτεινό [c7 [c] = 100; }} else if (pNumber == 8) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int c8 = {34, 35, 46, 47, 48, 49}; // μοβ για (int c = 0; c <6; c ++) {απόχρωση [c8 [c] = 307; sat [c8 [c] = 95; φωτεινό [c8 [c] = 100; }} else if (pNumber == 9) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int c9 = {34, 35, 46, 47, 48, 49}; // μοβ για (int c = 0; c <6; c ++) {απόχρωση [c9 [c] = 307; sat [c9 [c] = 95; φωτεινό [c9 [c] = 100; }} else if (pNumber == 10) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int c10 = {34, 35, 46, 47, 48, 49}; // μοβ για (int c = 0; c <6; c ++) {απόχρωση [c10 [c] = 307; sat [c10 [c] = 95; φωτεινό [c10 [c] = 100; }} else if (pNumber == 11) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int c11 = {34, 35, 46, 47, 48, 49}; // μοβ για (int c = 0; c <6; c ++) {απόχρωση [c11 [c] = 307; sat [c11 [c] = 95; φωτεινό [c11 [c] = 100; }} else if (pNumber == 12) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int c12 = {34, 35, 46, 47, 48, 49}; // μοβ για (int c = 0; c <6; c ++) {απόχρωση [c12 [c] = 307; sat [c12 [c] = 95; φωτεινό [c12 [c] = 100; }} else if (pNumber == 13) {for (int i = 0; i <num; i ++) {bright = 0; gValue = 1; } int a13 = {34, 35}; // κίτρινο int b13 = {47}; // μπλε int c13 = {48}; // μοβ για (int a = 0; a <2; a ++) {απόχρωση [a13 [a] = 53; κάθισε [a13 [a] = 95; φωτεινό [a13 [a] = 100; } για (int b = 0; b <1; b ++) {απόχρωση [b13 = 210; κάθισε [b13 = 95; φωτεινό [b13 = 100; } για (int c = 0; c <1; c ++) {απόχρωση [c13 [c] = 307; sat [c13 [c] = 95; φωτεινό [c13 [c] = 100; }} pNumber = pNumber + 1;

εάν (pNumber == 14) {

pNumber = 0; }}

void ani2 () {

// Serial.println ("2"); ανυπόγραφο μακρύ curM = millis ();

εάν (curM - preM> = 10) {

preM = curM; για (int i = 0; i <num; i ++) {if (απόχρωση = 360) {gValue = -1; } απόχρωση = απόχρωση + gValue ; } μετρητής ++; if (counter == 360) {// Serial.print ("counter:"); // Serial.println (μετρητής); // Serial.println (curM); μετρητής = 0; ani2_Counter = 0; }}}

void ani3 () {

// Serial.println ("3"); } ///////////////////////////////////////////// void readyState () {/ / Serial.println ("έτοιμο"); } ///////////////////////////////////////////// void btnEvent (int b_interval) {unsigned long curMillis1 = millis ();

για (int i = 0; i <num; i ++) {btnState = digitalRead (btnPin ); }

if (curMillis1 - preMillis1> b_interval) {

preMillis1 = curMillis1; για (int i = 0; i = 360) {hueV = -1; } else if (απόχρωση <= 0) {hueV = 1; } απόχρωση = απόχρωση + απόχρωσηV ; φωτεινό = 100; }}}} //////////////////////////////////////////// void setPixels (int k) {για (int i = 0; i <k; i ++) {H2R_HSBtoRGB (απόχρωση , sat , φωτεινή , χρώματα ) · int num1 = i * 3; strip.setPixelColor (num1, χρώματα [0], χρώματα [1], χρώματα [2]); strip.setPixelColor (num1 + 1, χρώματα [0], χρώματα [1], χρώματα [2]); strip.setPixelColor (num1 + 2, χρώματα [0], χρώματα [1], χρώματα [2]); } strip.show (); }

Βήμα 20: Μοτίβα

Μοτίβα!
Μοτίβα!
Μοτίβα!
Μοτίβα!

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

Συνιστάται: