Πίνακας περιεχομένων:
- Βήμα 1: Βήμα 1: Φτιάξτε τα καλύμματα φωτός
- Βήμα 2: Βήμα 2: Προετοιμασία του πόλου PVC
- Βήμα 3: Βήμα 3: Συναρμολόγηση των λωρίδων LED RGB και αμμοβολή των ακρυλικών πλακών
- Βήμα 4: Βήμα 4: Συνδέστε τις λωρίδες LED RGB στο Arduino
- Βήμα 5: Βήμα 5: Γράψτε τον κώδικα Arduino
Βίντεο: Έξυπνος διαδραστικός φανός: 5 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Είστε έτοιμοι να φτιάξετε το καλύτερο και πιο διαδραστικό φανάρι στον κόσμο; Καλός! Σε αυτό το σεμινάριο, θα εξηγήσουμε πώς μπορείτε να δημιουργήσετε ένα μόνοι σας χρησιμοποιώντας το Arduino.
Απαιτούμενα εξαρτήματα:- Arduino (..duh)- LM317 Mosfet- 2x 60cm Αναλογικές λωρίδες RGB LED (12V)- σωλήνας PVC (1m x 125mm)- Καλώδια (κόκκινο και μαύρο)- Μεταλλικές πλάκες για καλύμματα φωτός- ακρυλικό για το φως - εικονίδια (ελέγξτε το flaticon.com για εικονίδια.svg)- Spraycan ασπρόμαυρο χρώμα.- Ηλεκτρική ταινία- Όλα τα απαιτούμενα εξαρτήματα συγκόλλησης- Οθόνη με την απαιτούμενη ασπίδα (δεν χρησιμοποιείται στο σεμινάριο)
Βήμα 1: Βήμα 1: Φτιάξτε τα καλύμματα φωτός
Ο σχεδιασμός εξαρτάται πραγματικά από εσάς. Φτιάξαμε ένα καπάκι 15x15cm για να κρατάμε τα φώτα. Κόψαμε τις μεταλλικές πλάκες στο σωστό μέγεθος και χρησιμοποιήσαμε μια μεταλλική μύτη (όχι, όχι από το Avatar) για να λυγίσουμε τα καπάκια στα σωστά σχήματα. Οι πλάκες πλάτης κατασκευάστηκαν από διαφορετικό εξάρτημα.
Βήμα 2: Βήμα 2: Προετοιμασία του πόλου PVC
Κόψτε 2 οπές στον στύλο PVC για να ταιριάζουν με τα καλύμματα φωτός. Στη συνέχεια, χρησιμοποιήστε ένα μαύρο σπρέι βαφής για να βάψετε ολόκληρο το πράγμα μαύρο. Εάν θέλετε, μπορείτε να προσθέσετε λευκές λωρίδες στο κάτω μέρος του στύλου (συνηθισμένο στην Ολλανδία).
Βήμα 3: Βήμα 3: Συναρμολόγηση των λωρίδων LED RGB και αμμοβολή των ακρυλικών πλακών
Στη συνέχεια θα πρέπει να συναρμολογήσετε τις λωρίδες LED RGB στο εσωτερικό του καλύμματος φωτός. Τοποθετήστε τα σφιχτά γύρω από το καπάκι και τοποθετήστε τα όσο πιο κοντά μπορείτε.
Στη συνέχεια θα χρειαστεί να αμμοβολήσετε το επιλεγμένο σύμβολο για την ακρυλική πλάκα. Πάρτε λίγη ταινία και καλύψτε ολόκληρη την ακρυλική πλάκα. Στη συνέχεια κόψτε το σχήμα/φιγούρα που θέλετε. Μετά από αυτό, μπορείτε να αμμοβολήσετε την πλάκα για να έχετε ένα αποτέλεσμα που μοιάζει με παγωμένο γυαλί.
Βήμα 4: Βήμα 4: Συνδέστε τις λωρίδες LED RGB στο Arduino
Τώρα έρχεται το δύσκολο κομμάτι: σύνδεση των λωρίδων LED RGB με το Arduino. Όταν συνδέετε τις ακίδες βεβαιωθείτε ότι έχετε βάλει το 12v στο 12v της ταινίας σας. Μεταξύ κάθε χρώματος, τόσο κόκκινου ή πράσινου, πρέπει να βάλετε ένα mosfet. Συνδέστε τα δεδομένα της λωρίδας led στη μεσαία καρφίτσα του mosfet και την αριστερή καρφίτσα στο Arduino σας. Η δεξιά καρφίτσα πρέπει να επιστρέψει στο έδαφος του Arduino.
Βήμα 5: Βήμα 5: Γράψτε τον κώδικα Arduino
Αυτός ο κώδικας Arduino ελέγχεται από bluetooth, επειδή δεν χρησιμοποιήσαμε εσωτερική οθόνη. Έτσι ο κωδικός ελέγχεται μέσω μηνυμάτων bluetooth στη λειτουργία βρόχου ().
#define r 6 #define g 11 #include
SoftwareSerial mySerial (10, 11); // RX, TX
#ορίστε θυμωμένοΜήκος 4
#καθορίστε την πτώσηΜήκος 3 #καθορίστε ευτυχισμένοΜήκος 4 #καθορίστεΤο τηλέφωνοΜήκος 13 #καθορίστε την ομιλίαΜήκος 5 #καθορίστε το περπάτημαΜήκος 4 #καθορίστε το περπάτημαOutLength 4 #καθορίστε το κύμαΜήκος 6
κουμπί boolΠιεσμένο;
int currentMillis; int previousMillis;
int animation1Delay;
int animation2Delay; int animation3Delay; int animation4Delay;
bool animation1Done = false;
bool animation2Done = false; bool animation3Done = false; bool animation4Done = false; bool animation5Done = false;
bool blockLight = false;
bool lightRed = true;
int currentAnimationDelay;
void setup () {
// βάλτε τον κωδικό εγκατάστασης εδώ, για να εκτελεστεί μία φορά: pinMode (r, OUTPUT); pinMode (g, OUTPUT);
Serial.begin (9600);
mySerial.begin (38400); Serial.setTimeout (25); buttonPressed = false; currentMillis = 0; previousMillis = 0;
animation1Delay = walkingLength * 1000;
animation2Delay = wavingLength * 1000; animation3Delay = happyLength * 1000; animation4Delay = walkingOutLength * 1000;
// currentAnimationDelay = animation1Delay * 1000;
lightRed = true; }
void loop () {
// καθυστέρηση (20);
// βάλτε τον κύριο κωδικό σας εδώ, για να εκτελείται επανειλημμένα: unsigned long currentMillis = millis (); if (buttonPressed == true) {if (animation1Done == false) {if (currentMillis - previousMillis> animation1Delay) {Serial.println ("0"); previousMillis = currentMillis; animation1Done = true; }} else if (animation2Done == false και animation1Done == true) {if (currentMillis - previousMillis> animation2Delay) {Serial.println ("1"); previousMillis = currentMillis; animation2Done = true; }} else if (animation3Done == false και animation2Done == true) {if (currentMillis - previousMillis> animation3Delay) {Serial.println ("2"); //Serial.println("sound:green "); previousMillis = currentMillis; animation3Done = true; lightRed = false; }} else if (animation4Done == false και animation3Done == true) {if (currentMillis - previousMillis> animation4Delay) {previousMillis = currentMillis; animation4Done = true; Serial.println ("FLSH"); }}}
εάν (Serial.available ()) {
String str = Serial.readString (); if (str == "CMD: BUTTON_PRESSED") {
animation1Done = false;
animation2Done = false; animation3Done = false; animation4Done = false; animation5Done = false;
animation1Delay = walkingLength * 1000;
animation2Delay = wavingLength * 1000; animation3Delay = happyLength * 1000; animation4Delay = walkingOutLength * 1000;
// currentAnimationDelay = animation1Delay * 1000;
lightRed = true; Serial.println ("3"); buttonPressed = true; previousMillis = currentMillis; }
if (str == "RED") {
blockLight = false; lightRed = true; }
εάν (str == "ΠΡΑΣΙΝΟ") {
blockLight = false; lightRed = false? }
if (str == "LIGHT: GREEN: OFF") {
blockLight = true; analogWrite (g, 255); } if (str == "LIGHT: GREEN: ON") {blockLight = true; analogWrite (g, 0); } //Serial.println(str); }
εάν (blockLight == false) {
εάν (lightRed == true) {
analogWrite (r, 0); analogWrite (g, 255); } if (lightRed == false) {analogWrite (r, 255); analogWrite (g, 0); }}}
Συνιστάται:
[Τρισδιάστατη εκτύπωση] Φανός χειρός 30W υψηλής ισχύος: 15 βήματα (με εικόνες)
[Τρισδιάστατη εκτύπωση] Φανός χειρός 30W υψηλής ισχύος: Αν το διαβάζετε, πιθανότατα έχετε δει ένα από αυτά τα βίντεο στο Youtube που δείχνουν εξαιρετικά ισχυρές πηγές φωτός DIY με τεράστιες ψύκτρες και μπαταρίες. Πιθανότατα το λένε και "Φανάρια", αλλά πάντα είχα μια διαφορετική αντίληψη για το φανάρι
Space Monsters - ένας διαδραστικός πίνακας: 8 βήματα (με εικόνες)
Διαστημικά τέρατα - ένας διαδραστικός πίνακας: Έχετε κουραστεί επίσης να ακούτε " ΟΧΙ! &Quot; όταν θες να αγγίξεις έναν πίνακα; Ας κάνουμε ένα που μπορείτε να αγγίξετε
Διαδραστικός θόλος LED με Fadecandy, επεξεργασία και Kinect: 24 βήματα (με εικόνες)
Διαδραστικός θόλος LED με Fadecandy, επεξεργασία και Kinect: WhatWhen in Dome είναι ένας γεωδαιτικός θόλος 4,2 μέτρων καλυμμένος με 4378 LED. Τα LED είναι όλα ξεχωριστά χαρτογραφημένα και διευθυνσιοδοτήσιμα. Ελέγχονται από το Fadecandy and Processing σε επιφάνεια εργασίας των Windows. Ένα Kinect είναι προσαρτημένο σε ένα από τα στηρίγματα του θόλου, οπότε
Ηλεκτρικός φανός: 8 βήματα
Ηλεκτρικός φανός: Ένας πυρσός είναι ένα φορητό φορητό ηλεκτρικό φως. Ένας τυπικός πυρσός αποτελείται από μια πηγή φωτός τοποθετημένη σε έναν ανακλαστήρα, μια μπαταρία, καλώδια και έναν διακόπτη. Η πηγή φωτός είναι μια δίοδος LED δηλαδή εκπομπής φωτός. Στο LED, το μακρύτερο πόδι έχει θετικό τέλος και το shor
Διαδραστικός περιοδικός πίνακας LED: 12 βήματα (με εικόνες)
Διαδραστικός Περιοδικός Πίνακας LED: Η φίλη μου και εγώ έχουμε μια συλλογή στοιχείων - δείγματα από τα μοναδικά κομμάτια της ύλης που αποτελούν τα πάντα στο σύμπαν! Για μια τόσο ενδιαφέρουσα συλλογή αποφάσισα να φτιάξω μια βιτρίνα που να δείχνει τα δείγματα σε όλο τους τον κόσμο