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

RC Controlled Rgb Led Strip: 4 βήματα (με εικόνες)
RC Controlled Rgb Led Strip: 4 βήματα (με εικόνες)

Βίντεο: RC Controlled Rgb Led Strip: 4 βήματα (με εικόνες)

Βίντεο: RC Controlled Rgb Led Strip: 4 βήματα (με εικόνες)
Βίντεο: Σετ LED RGB Ταινία με Controller και Driver με Πανεύκολη Σύνδεση | DEPO CENTER 2024, Νοέμβριος
Anonim
RC Controlled Rgb Led Strip
RC Controlled Rgb Led Strip

Δημιουργήστε τη δική σας λωρίδα led που ελέγχεται από rc για μεμονωμένο φωτισμό δωματίου!

Οι περισσότερες λωρίδες με rgb-led ελέγχονται από τηλεχειριστήριο υπερύθρων. Για να το απενεργοποιήσετε ή να το ενεργοποιήσετε ή να αλλάξετε το χρώμα, πρέπει να μείνετε μπροστά από τον δέκτη. Αυτό είναι βαρετό και δεν είναι πραγματικά έξυπνο. Για να ελέγξω το φως με πιο δροσερό τρόπο, ανέπτυξα μια πλακέτα ελεγχόμενη από rc για να ορίσω το σωστό χρώμα της λωρίδας. Ο κωδικός rc μπορεί να σταλεί από raspberry pi, σκεφτείτε το IFTTT. Αυτό είναι πολύ πιο έξυπνο από το τηλεχειριστήριο.

Πράγματα που χρειάζεστε:

  • rgb-led-strip, για παράδειγμα αυτό θα έκανε το κόλπο
  • ATTiny85
  • Δέκτης 433 MHz (και προαιρετικά αποστολέας)
  • 5V ρυθμιστής (L7805)
  • 3 τρανζίστορ NPN, χρησιμοποίησα μια darlingtonarray
  • Πυκνωτής 1 μF
  • Πυκνωτής 10 μF
  • Τροφοδοτικό 12V
  • λωρίδα κυκλικού πίνακα
  • αρκετά καλώδια
  • Προγραμματιστής ATTiny, arduino-mega ή arduino-uno
  • προαιρετικά βατόμουρο pi για αποστολή σημάτων

Βήμα 1: Συγκολλήστε την κυκλική σανίδα

Συγκολλήστε τον πίνακα Circuid
Συγκολλήστε τον πίνακα Circuid
Συγκολλήστε τον πίνακα Circuid
Συγκολλήστε τον πίνακα Circuid
Συγκολλήστε τον πίνακα Circuid
Συγκολλήστε τον πίνακα Circuid

Εάν έχετε όλα τα εξαρτήματα, πρέπει να κολλήσετε την κυκλική πλακέτα.

Το led-strip χρειάζεται 12v, το ATTiny και ο δέκτης rc χρειάζονται 5v, εξαιτίας αυτού, το circuid παίρνει 12v.

Για το ATTiny και το δέκτη rc που χρησιμοποιώ τον ρυθμιστή 5v, το κύκλωμά μου εμπνεύστηκε από το sooraj619

Ο πίνακας αλλάζει τα τρία χρώματα κόκκινο πράσινο και μπλε στην λωρίδα led σε χρονοδιάγραμμα 3 ms. Κάθε χρώμα στο σωστό ποσοστό για να επιτευχθεί το καθορισμένο χρώμα. Λόγω μιας διάρκειας του χρονοδιαγράμματος με 3 ms, δεν βλέπετε να αλλάζετε τα τρία χρώματα κόκκινο πράσινο και μπλε, αλλά βλέπετε ακριβώς το σωστό χρώμα (για παράδειγμα κίτρινο αναμεμειγμένο με κόκκινο και πράσινο). Στην εργαλειοθήκη μου υπήρχε μια darlingtonarray, εξαιτίας αυτού χρησιμοποίησα αυτόν τον πίνακα για να αλλάξω χρώματα. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε τρανζίστορ NPN.

Μην ξεχάσετε μια κεραία 17 εκατοστών στο δέκτη.

Βήμα 2: Αναβοσβήστε το ATTiny

Τώρα ήρθε η ώρα να αναβοσβήνει το ATTiny με το σωστό arduino-σκίτσο.

Για να αναβοσβήσω τον μικροελεγκτή, χρησιμοποίησα το arduino ide. Δεν έχω προγραμματιστή, οπότε χρησιμοποίησα το arduino-mega μου. Μπορείτε να χρησιμοποιήσετε το arduino-uno ή το arduino-mega σας για να αναβοσβήνει το ATTiny, που περιγράφεται εδώ ή εδώ

Το σκίτσο χρησιμοποιεί τη βιβλιοθήκη διακόπτη rc για τη λήψη του σήματος, μπορείτε να το κατεβάσετε εδώ.

Η βιβλιοθήκη διακόπτη rc γράφτηκε για τους πίνακες arduino, επομένως χρησιμοποιεί κάποιες ρουτίνες που δεν είναι διαθέσιμες στον μικροελεγκτή ATTiny. Λόγω του ATTiny, οι γραμμές 153 έως 165 αρχικοποιούν τη διακοπή με έναν πολύ ριζικό τρόπο. Πρέπει επίσης να κάνετε τη μέθοδο "handleInterrupt" από "ιδιωτική" σε "δημόσια" στη βιβλιοθήκη διακόπτη rc.

Βήμα 3: Στείλτε έναν κωδικό από το Raspberry Pi σας

Στείλτε έναν κωδικό από το Raspberry Pi σας
Στείλτε έναν κωδικό από το Raspberry Pi σας
Στείλτε έναν κωδικό από το Raspberry Pi σας
Στείλτε έναν κωδικό από το Raspberry Pi σας

Τώρα ήρθε η ώρα να ανάψετε το φως.

Για να στείλετε ένα σήμα πρέπει να συνδέσετε το rasperry pi με τον αποστολέα rc. Αρκετοί ιστότοποι επιδεικνύουν την αποστολή κωδικών rc με το raspberry pi. Για παράδειγμα εδώ, εδώ και εδώ. Η εικόνα δείχνει την λωρίδα led πίσω από μια οθόνη τηλεόρασης, αλλά αυτό είναι ένα φωτομοντάζ από τρεις εικόνες με ένα χρώμα.

Ένα ελάχιστο πρόγραμμα c για αποστολή κωδικού μπορεί να μοιάζει με το ακόλουθο:

#include "RCSwitch.h" #include

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

int main (int argc, char *argv ) {

int PIN = 0;

int μήνυμα = atoi (argv [1]);

εάν (wiringPiSetup () == 1) επιστρέψτε 1?

printf ("αποστολή μηνύματος [%d] n", μήνυμα);

RCSwitch mySwitch = RCSwitch ();

mySwitch.enableTransmit (PIN);

mySwitch.send (μήνυμα, 32);

}

Το χρώμα κωδικοποιείται σε μια ακέραιη τιμή με 4 byte. Το πιο αριστερό byte πρέπει να είναι ίσο με 10, βλέπε 178 στο σκίτσο. Τα επόμενα τρία byte περιέχουν την ένταση χρώματος για κάθε χρώμα (κόκκινο, πράσινο και μπλε).

Για να ορίσετε ένα πράσινο φως με ένταση 66%, εισαγάγετε την εντολή: sudo sendInt 167815680, όπου sendInt είναι το παραπάνω μεταγλωττισμένο πρόγραμμα.

Απενεργοποιήστε το led με την εντολή: sudo sendInt 167772160

Φανταστείτε δυνατότητες με το IFTTT, για παράδειγμα μπλε φως 3 δευτερολέπτων για ένα email, πράσινο για μια ειδοποίηση google-calendar. Αυτό είναι λίγο πιο έξυπνο από το να πατάτε το τηλεχειριστήριο ir μπροστά από τον δέκτη;)

Βήμα 4: Δημιουργήστε ένα περίβλημα

Δημιουργήστε ένα περίβλημα
Δημιουργήστε ένα περίβλημα
Δημιουργήστε ένα περίβλημα
Δημιουργήστε ένα περίβλημα
Δημιουργήστε ένα περίβλημα
Δημιουργήστε ένα περίβλημα

Δημιουργήστε ένα τρισδιάστατο τυπωμένο περίβλημα.

Ο σχεδιασμός έχει μια τρύπα για το καλώδιο τροφοδοσίας και κενά στο επάνω μέρος για τη σύνδεση της λωρίδας led.

Χρησιμοποίησα το Fusion 360 για να σχεδιάσω το περίβλημα και εξήγαγα το αποτέλεσμα ως αρχείο.step.

Το Netfabb επιτρέπει το tessellation καθώς και την προετοιμασία της δημιουργίας εργασίας. Επισυνάπτω το 3mf που περιέχει το πάνω και το κάτω μέρος του περιβλήματος. Το Netfabb υποστηρίζει επίσης τη δημιουργία gcode.

Τέλος, χρησιμοποίησα ένα prusa i3 mk2 για να εκτυπώσω το περίβλημα.

Συνιστάται: