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

Bluetooth Ελεγχόμενος πίνακας καφέ Arduino LED: 10 βήματα (με εικόνες)
Bluetooth Ελεγχόμενος πίνακας καφέ Arduino LED: 10 βήματα (με εικόνες)

Βίντεο: Bluetooth Ελεγχόμενος πίνακας καφέ Arduino LED: 10 βήματα (με εικόνες)

Βίντεο: Bluetooth Ελεγχόμενος πίνακας καφέ Arduino LED: 10 βήματα (με εικόνες)
Βίντεο: The communication of climate change (Η επικοινωνία της κλιματικής αλλαγής) 2024, Νοέμβριος
Anonim
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth
Τραπεζάκι σαλονιού Arduino LED ελεγχόμενο μέσω Bluetooth

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

Ο στόχος του έργου ήταν να δημιουργήσει μια οθόνη 12 x 12 pixel σε ένα τραπεζάκι σαλονιού που μπορεί να ελεγχθεί μέσω bluetooth και να χρησιμοποιηθεί ως δροσερό φως δωματίου/να παίξει παιχνίδια σε αυτό.

Για αυτήν την κατασκευή θα χρειαστείτε αυτά τα μέρη:

  1. Arudino Mega (ή κλώνος)-https://www.amazon.co.uk/Arduino-Mega-2560-R3-Micr…
  2. Arduino micro SD Card Shield (χρησιμοποίησα αυτό και κόλλησα τις κεφαλίδες) -
  3. Κάρτα Micro SD - Οποιοδήποτε μέγεθος θα κάνει, αλλά πρέπει να διαμορφωθεί σε FAT32
  4. 5m WS2812B Προσθετική ταινία LED -
  5. Μονάδα Bluetooth HC05 -
  6. Τροφοδοσία 5 V 6 Amp-(το χρησιμοποίησα αλλά υπάρχουν εκατό άλλοι στο ebay)
  7. Ikea LACK τραπέζι (το κλασικό χόμπι) -
  8. Πρόσβαση σε κόφτη λέιζερ για κόντρα πλακέ 3 mm (ή πολύ σταθερό χέρι). Μπορείτε να παραγγείλετε εξαρτήματα κοπής με λέιζερ online σε διάφορα μέρη (https://www.hobbytronics.co.uk/laser-cutting για παράδειγμα)
  9. Λευκή βαφή ψεκασμού
  10. Τμήμα αλουμινίου Τ 2 m (1 1/2 x 1 1/2 x 1/8) -
  11. Γυάλινη επένδυση 450 mm x 450 mm x 6 mm (οι περισσότεροι τοπικοί υαλοπίνακες μπορούν να κόψουν προσαρμοσμένα κομμάτια για εσάς, αλλά χρησιμοποίησα αυτούς τους τύπους
  12. Πυκνωτής 1 x 100 micro Farad
  13. 2 x 1k αντίσταση
  14. 1 x 2k αντίσταση
  15. 1 x γραμμικό περιστροφικό ποτενσιόμετρο
  16. Διάφοροι άλτες (πιθανώς δώδεκα κατά τη διάρκεια της πρωτοτυπίας)
  17. Τουλάχιστον τρία χρώματα σχετικά χοντρών καλωδίων για συγκόλληση (αυτό μπορεί να τραβήξει μερικά μεγάλα ρεύματα, οπότε δεν θα συνιστούσα καλώδια βραχυκυκλωτήρων για την ισχύ)
  18. Stripboard για το εσωτερικό κύκλωμα (μην ανησυχείτε είναι πολύ απλό)

Απαιτούμενα εργαλεία:

  1. Ένα συγκολλητικό σίδερο + συγκολλητικό
  2. Ένα ζευγάρι snips
  3. Απογυμνωτές καλωδίων
  4. Ένα Dremel ή ένα παζλ κάποιου είδους για να σπάσει το τραπέζι. Χρησιμοποίησα αυτό το https://www.amazon.co.uk/gp/product/B0078LENZC/ref… με σπειροειδή κοπτικά κομμάτια

Βήμα 1: Αρχική δοκιμή και διάταξη

Αρχική δοκιμή και διάταξη
Αρχική δοκιμή και διάταξη
Αρχική δοκιμή και διάταξη
Αρχική δοκιμή και διάταξη
Αρχική δοκιμή και διάταξη
Αρχική δοκιμή και διάταξη

Η πρώτη θύρα κλήσης είναι να κόψετε τη λωρίδα LED στα μήκη που χρειάζεστε. Αυτή η λωρίδα LED είναι πραγματικά εύκολη στη χρήση επειδή έχει μόνο 3 ακίδες και κάνει το Arduino να κάνει την πραγματική δουλειά. Έκοψα το καρούλι σε 12 τμήματα το καθένα μήκους 12 LED όπως φαίνεται στο σχήμα και τα τοποθέτησα στο πίσω μέρος του τραπεζιού για να με βοηθήσει να οραματιστώ πού πήγαινα με αυτό.

Τότε μου έμειναν μερικά LED, οπότε τα συνέδεσα σε ένα Arduino UNO που έπρεπε να δοκιμάσω αν λειτουργούσαν (μπορείτε επίσης να χρησιμοποιήσετε το Mega που αναφέρεται στο περίγραμμα του έργου). Για να το κάνω αυτό έκοψα και απογύμνωσα μερικές αρσενικές σε αρσενικές κεφαλίδες και τις κόλλησα στα μαξιλάρια στο άκρο της λωρίδας LED. Στη λωρίδα WS2812 χρησιμοποίησα το καλώδιο 5V είναι κόκκινο, η γείωση είναι λευκή και τα δεδομένα είναι πράσινα. Βεβαιωθείτε ότι προσέχετε το βέλος κατεύθυνσης που είναι τυπωμένο στη λωρίδα WS2812B, ώστε να μην προσπαθήσετε να στείλετε δεδομένα σε λάθος κατεύθυνση. Συνδέσα τη γραμμή 5V στα 5V στο Arduino, το Ground στο GND και το Data στο pin 6 με μια αντίσταση 1k σε σειρά. Λάβετε υπόψη ότι το σχήμα Fritzing των LED WS2812B είναι ελαφρώς διαφορετικό από αυτά που είχα παραδώσει - αρκεί να πω, απλώς βεβαιωθείτε ότι τα δεδομένα είναι συνδεδεμένα με τον ακροδέκτη 6, το Gnd είναι συνδεδεμένο με τη γείωση και το 5 συνδέεται με 5V.

Με τόσο λίγες λυχνίες LED (περίπου 5), το Arduino θα πρέπει να είναι εντάξει για να παρέχει την ισχύ. Ωστόσο, δεν μπορείτε να τροφοδοτήσετε πολλούς καθώς όταν είναι εντελώς λευκά, οι λυχνίες LED αντλούν έως και 60mA το καθένα και μπορούν γρήγορα να συντρίψουν το Arduino.

Αν υποθέσουμε ότι έχετε το Arduino IDE (αν δεν το κατεβάσετε και το εγκαταστήσετε), ορίστε τον τύπο chipset στο Arduino που έχετε και ορίστε τη θύρα COM σε αυτήν που εμφανίζει ένα Arduino στις επιλογές. Τώρα κατεβάστε τη βιβλιοθήκη FastLED και εγκαταστήστε την (https://fastled.io/). Ανοίξτε το παράδειγμα του striptest.h και ορίστε τον αριθμό των LED στο σκίτσο σε όσες και αν έχετε (μου είχαν απομείνει 5). Πατήστε επαλήθευση και (αν υποθέσουμε ότι όλα πάνε καλά) ανεβάστε το στο Arduino και θα δείτε τα φώτα στη μικρή λωρίδα να ανάβουν και να αλλάζουν χρώμα.

Βήμα 2: Συγκόλληση της μήτρας και του Stripboard

Συγκόλληση του Matrix και του Stripboard
Συγκόλληση του Matrix και του Stripboard
Συγκόλληση του Matrix και του Stripboard
Συγκόλληση του Matrix και του Stripboard
Συγκόλληση του Matrix και του Stripboard
Συγκόλληση του Matrix και του Stripboard

Τώρα ήρθε η ώρα να ξεκινήσετε τη δημιουργία της μήτρας LED.

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

Τώρα, με περισσότερη συγκόλληση, πρέπει να δημιουργήσουμε το stripboard που θα χειρίζεται την τροφοδοσία από το ηλεκτρικό δίκτυο. Συγκόλλησα δύο στήλες στο stripboard μαζί τόσο για το 5V όσο και για το GND, ώστε να χειρίζεται καλύτερα το ρεύμα. Δείτε το συνημμένο σχήμα για το κύκλωμα που πρέπει να δημιουργήσετε. Κατά τη συγκόλληση του πυκνωτή, βεβαιωθείτε ότι το αρνητικό άκρο είναι προσαρτημένο στη ράγα GND και όχι στην 5V. Μόλις τελειώσει ο πίνακας, πρέπει να συνδέσουμε το +VE και το GND στη λωρίδα LED και επίσης να χρησιμοποιήσουμε το άλλο μισό άλμα που κόψαμε νωρίτερα για να συνδέσουμε το Arduino με το τροφοδοτικό και το stripboard. Τώρα θα ήταν μια καλή στιγμή για να προσθέσετε την πλακέτα SD στο Arduino, ώστε να μπορούμε να αποθηκεύσουμε αρχεία σε αυτό και να διαβάσουμε αργότερα. Μόλις τοποθετηθεί ο πίνακας διαρροής SD, μπορούμε να συνδέσουμε τη ράγα 5V με τον πείρο Vin και το GND με οποιονδήποτε πείρο GND στο Arduino.

Τέλος, μπορούμε να συνδέσουμε ένα ποτενσιόμετρο στην αναλογική είσοδο A0 όπως φαίνεται, έτσι ώστε να έχουμε έναν τρόπο ελέγχου της φωτεινότητας των LED.

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

Βήμα 3: Ενσωμάτωση μονάδας Bluetooth

Ενσωμάτωση μονάδας Bluetooth
Ενσωμάτωση μονάδας Bluetooth

Τελευταίο κομμάτι καλωδίωσης τώρα, η μονάδα HC05 συνδέεται με το Arduino Mega όπως φαίνεται στο σχήμα. Βεβαιωθείτε ότι η μονάδα HC05 συνδέεται με τις θύρες Rx1 και Tx1 στο mega - αυτό διευκολύνει πολύ τον προγραμματισμό και αποφεύγει τη χρήση της βιβλιοθήκης "λογισμικού".

ΣΗΜΕΙΩΣΗ Η μονάδα HC05 θα λάβει είτε 5V είτε 3.3V και γενικά λειτουργεί με λογική 3.3V, οπότε τη συνδέσα με τη ράγα 3.3V. Ορισμένες άλλες οδηγίες έχουν δείξει το Tx (στο Arduino) έως το Rx (στη μονάδα HC05) με ένα πιθανό κύκλωμα διαίρεσης για να χτυπήσει τη λογική 5 V από το Arduino στο φυσικό επίπεδο για τη μονάδα HC05. Αυτός είναι ο λόγος που είχα τις αντιστάσεις 1k και 2k στη λίστα εξαρτημάτων. Ωστόσο, δεν μπήκα στον κόπο και φαίνεται απόλυτα χαρούμενο στο τραπέζι μου:)

Βήμα 4: Επιβράβευση τραπεζιού

Hacking τραπεζιού
Hacking τραπεζιού
Hacking τραπεζιού
Hacking τραπεζιού
Hacking τραπεζιού
Hacking τραπεζιού

Τώρα πρέπει να αρχίσουμε να κόβουμε το τραπέζι για να δώσουμε στα LED και τα ηλεκτρονικά μας ένα νέο σπίτι.

Σημειώστε πρώτα ένα τετράγωνο 450 mm x 450 mm στη μέση της κορυφής του επιτραπέζιου LACK. Χρησιμοποιώντας το Dremel (ή ένα παζλ) κόψτε το τετράγωνο όσο καλύτερα μπορείτε για να το κρατήσετε ίσιο. Τώρα μπορούμε να αφαιρέσουμε το επάνω μέρος και τα εσωτερικά κομμάτια από χαρτόνι αφήνοντάς σας ένα κοίλο επιτραπέζιο όπως φαίνεται στην εικόνα. Χρησιμοποιώντας ξανά το Dremel μπορούμε να ανοίξουμε μια τρύπα στη γωνία του κάτω μέρους του τραπεζιού, ώστε να έχουμε κάπου να περάσουμε το καλώδιο ρεύματος.

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

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

Βήμα 5: Μέρη Laser Cut

Ανταλλακτικά Laser Cut
Ανταλλακτικά Laser Cut
Ανταλλακτικά Laser Cut
Ανταλλακτικά Laser Cut
Ανταλλακτικά Laser Cut
Ανταλλακτικά Laser Cut

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

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

Βήμα 6: Glediator

Glediator
Glediator
Glediator
Glediator

Τώρα έχουμε υλοποιήσει όλο το υλικό που μπορούμε να αρχίσουμε να εξετάζουμε το λογισμικό. Κατέβασα και εγκατέστησα λογισμικό που ονομάζεται Glediator για να δημιουργήσω κινούμενα σχέδια για τα LED (https://www.solderlab.de/index.php/software/glediat…). Οι οδηγίες εγκατάστασης μπορεί να είναι λίγο δύσκολες, αλλά ακολουθήστε προσεκτικά τον ιστότοπο και θα είστε εντάξει. Πρέπει επίσης να κατεβάσουμε το σκίτσο από την ιστοσελίδα του Glediator για να το ανεβάσουμε στο Arduino (https://www.solderlab.de/index.php/downloads/catego…). Χρησιμοποιούμε LED WS2812B οπότε βεβαιωθείτε ότι έχετε κατεβάσει το σωστό (WS2812 Glediator Interface). Μόλις ανοίξετε αυτό το σκίτσο, αλλάξτε το NUMBER_OF_PIXELS σε 144 και ανεβάστε το στο Arduino.

Μόλις εγκατασταθεί το Glediator, μπορούμε να αρχίσουμε να παίζουμε κινούμενα σχέδια στο τραπέζι. Πρώτα πρέπει να ορίσουμε το μέγεθος της μήτρας σε 12 x 12 στο λογισμικό Glediator και επίσης να ορίσουμε τον τύπο εξόδου σε HSBL - Οριζόντιο φίδι (εκκίνηση) Κάτω αριστερά καθώς αυτός είναι ο τρόπος που έχουμε συνδέσει τα LED και αλλάζουμε τη σειρά χρώματος σε GRB (για αυτό τα LED λαμβάνουν δεδομένα). Στην καρτέλα εξόδου, ανοίξτε τη θύρα COM και η μήτρα LED θα αρχίσει να εμφανίζει το μοτίβο LED στη μεσαία οθόνη του λογισμικού Glediator.

Μπορείτε να δημιουργήσετε κινούμενα σχέδια και να τα ηχογραφήσετε σε αρχείο.dat που μπορούμε να ανεβάσουμε στην κάρτα SD που σημαίνει ότι τα αγαπημένα σας κινούμενα σχέδια μπορούν να εμφανιστούν στο τραπέζι χωρίς να χρειαστεί να συνδεθεί υπολογιστής. Υπάρχουν μερικά σεμινάρια στο διαδίκτυο σχετικά με αυτό (https://hackaday.io/project/5714-glediator-from-sd… για παράδειγμα). Έχω τροποποιήσει μερικές διαφορετικές πηγές κώδικα για να λειτουργήσει γι 'αυτό, οπότε ο κωδικός μου θα πρέπει να είναι εντάξει.

Κατά την αποθήκευση των κινούμενων εικόνων σας, βεβαιωθείτε ότι τα αποθηκεύετε ως "animX.dat" όπου X είναι οποιοσδήποτε αριθμός από 1-15. Θα μπορούσατε να εφαρμόσετε περισσότερα αλλάζοντας μερικές γραμμές στον κώδικα μου.

ΣΗΜΕΙΩΣΗ- Κατά την εγγραφή αρχείων Glediator, το λογισμικό περιέχει ένα σφάλμα που σημαίνει ότι δεν θυμάται πώς συνδέσατε τη λωρίδα LED. Στον κώδικά μου έχω εφαρμόσει μια απλή συνάρτηση για να αντιστρέψω τη σειρά ζυγών αριθμημένων σειρών που σημαίνει ότι όλα εμφανίζονται σωστά

Βήμα 7: Σειριακός έλεγχος Bluetooth

Σειριακός έλεγχος Bluetooth
Σειριακός έλεγχος Bluetooth
Σειριακός έλεγχος Bluetooth
Σειριακός έλεγχος Bluetooth

Η ρύθμιση της επικοινωνίας bluetooth μεταξύ ενός smartphone και του Arduino αποδείχθηκε εκπληκτικά δύσκολη, αλλά υπάρχουν μερικά απλά βήματα που θα το κάνουν πολύ πιο εύκολο. Πρώτον, θα χρειαστεί να κατεβάσετε μια εφαρμογή για το smartphone σας. Χρησιμοποίησα τη διεύθυνση https://play.google.com/store/apps/details?id=com…. αλλά υπάρχει πιθανώς ένα ισοδύναμο iphone (για το οποίο πρέπει να πληρώσετε; p)

Mayσως έχετε παρατηρήσει ότι η μονάδα HC05 διαθέτει έναν μικρό διακόπτη. Εάν το ενεργοποιήσετε με αυτόν τον διακόπτη πιεσμένο προς τα κάτω, μπαίνει σε λειτουργία AT, πράγμα που σημαίνει ότι μπορείτε να ανακρίνετε τις παραμέτρους σε αυτό και να τις αλλάξετε αν θέλετε.

Ανεβάστε το συνημμένο σκίτσο στο Mega και ορίστε τον σειριακό ρυθμό στον υπολογιστή σας σε 9600. Αποσυνδέστε το ρεύμα από τη μονάδα HC05 και, στη συνέχεια, πατήστε το κουμπί προς τα κάτω όταν το επανασυνδέσετε. Το αναβοσβήνει πρέπει τώρα να είναι περίπου μία φορά κάθε δύο δευτερόλεπτα - τώρα το HC05 βρίσκεται σε λειτουργία AT.

Τώρα στη σειριακή οθόνη μπορούμε να στείλουμε εντολές στο HC05 και να δούμε την απάντησή του. Πληκτρολογήστε "AT" και πατήστε αποστολή και θα δείτε το "OK" να επιστρέψει στη σειριακή οθόνη - τώρα γνωρίζουμε ότι ακούει. Το όνομα bluetooth της συσκευής μπορεί να αλλάξει πληκτρολογώντας "AT+NAME = XYZPQR" όπου XYZPQR είναι αυτό που θέλετε να ονομάζεται η μονάδα. Κάλεσα το δικό μου LightWave. Ο προεπιλεγμένος κωδικός πρόσβασης για τη μονάδα bluetooth είναι 1234 (ή 0000), αλλά αυτός μπορεί να αλλάξει επίσης στέλνοντας "AT+PSWD = 9876" για παράδειγμα. Τέλος, μπορούμε να αλλάξουμε τον ρυθμό επικοινωνίας του HC05 στέλνοντας "AT+UART = 38400". Αυτή είναι η προεπιλεγμένη τιμή για τις περισσότερες μονάδες HC05, αλλά η δική μου ορίστηκε διαφορετικά, οπότε είναι καλή πρακτική να το ορίσετε για να είστε σίγουροι. Υπάρχουν πολλές περισσότερες λεπτομέρειες σχετικά με αυτές τις εντολές εδώ: https://www.itead.cc/wiki/Serial_Port_Bluetooth_M… και υπάρχουν επίσης οδηγίες σχετικά με αυτό το βήμα που έχουν πολύ περισσότερες λεπτομέρειες https://www.instructables.com/id/Modify -The-HC-05-…

Τώρα μπορούμε να δοκιμάσουμε να στείλουμε εντολές στη μονάδα μέσω συσκευής bluetooth. Πρώτα αποσυνδέστε το ρεύμα από τη μονάδα HC05 και, στη συνέχεια, επανασυνδέστε την. Θα πρέπει να δείτε ότι ο ρυθμός αναβοσβήματος της λυχνίας LED είναι πολύ πιο γρήγορος - αυτό σημαίνει ότι τώρα περιμένει τη σύζευξη. Στο smartphone σας, ανοίξτε την εφαρμογή Arduino Bluetooth Controller και βρείτε την ενότητα HC05. Εάν δεν έχετε αλλάξει το όνομα, πιθανότατα θα ονομάζεται HC05 ή παρόμοιο. Όταν σας δίνονται οι επιλογές για τον τρόπο σύνδεσης, επιλέξτε Τερματική λειτουργία. Τώρα δοκιμάστε να στείλετε μερικούς αριθμούς και κείμενο και να δείτε αν η σειριακή οθόνη στον υπολογιστή αναφέρει ότι έχουν ληφθεί. Ας ελπίσουμε ότι έχουν, ώστε να προχωρήσουμε, αν όχι, υπάρχουν πολλές οδηγίες που μπορεί να σας δώσουν μερικές συμβουλές (για παράδειγμα, Το τελευταίο πράγμα που πρέπει να κάνετε εδώ είναι να χαρτογραφήσετε τις εισόδους του ελεγκτή σε αριθμούς με τους οποίους το Arduino μπορεί να κάνει κάτι. Χρησιμοποίησα τις ακόλουθες τιμές:

Πάνω = 1, Κάτω = 2, Αριστερά = 3, Δεξιά = 4, Έναρξη = 5, Επιλέξτε = 6.

Βήμα 8: Παιχνίδια

Παιχνίδια
Παιχνίδια

Δεν παίρνω καμία πίστωση για τον κωδικό παιχνιδιού. Χρησιμοποίησα τον πηγαίο κώδικα που βρίσκεται εδώ https://github.com/davidhrbaty/IKEA-LED-Table που γράφτηκε από τον davidhrbaty. Ωστόσο, το έχω τροποποιήσει με διάφορους τρόπους:

  1. Πρόσθεσα μια συνάρτηση περιορισμού φωτεινότητας με βάση την τιμή του ποτενσιόμετρου, ώστε να μπορούμε να αλλάξουμε τη φωτεινότητα
  2. Αφαίρεσα το παιχνίδι τούβλα επειδή δεν μπόρεσα να το μεταγλωττίσω
  3. Άλλαξα την κωδικοποίηση χρωμάτων των τετραγώνων, έτσι ώστε να είναι όλα διαφορετικά χρώματα
  4. Αναδιάταξα το μενού
  5. Υλοποίησα μια επιλογή αναπαραγωγής κινούμενων εικόνων από την κάρτα SD
  6. Πρόσθεσα παρακολούθηση υψηλής βαθμολογίας και επιλογή προβολής υψηλής βαθμολογίας στο μενού

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

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

Οι επιλογές στο μενού είναι:

  1. Κάρτα SD - Αναπαράγει κινούμενα σχέδια αποθηκευμένα στην κάρτα SD
  2. Tetris
  3. Φίδι
  4. Πονγκ
  5. Ζάρια - Τυχαία γεννήτρια nuber μεταξύ 1 και 6
  6. Animation - Μια συλλογή κινουμένων σχεδίων από τη βιβλιοθήκη FastLED
  7. Stars Animation - EDIT - Έχω εφαρμόσει τώρα το παιχνίδι της ζωής του Conway αντί για αυτό το κινούμενο σχέδιο
  8. Κινούμενα σχέδια Rainbow
  9. Υψηλές βαθμολογίες - Εμφανίζει υψηλές βαθμολογίες για tetris και φίδι

Πριν ξεκινήσετε το παιχνίδι, πρέπει να δημιουργήσετε δύο αρχεία txt στην κάρτα SD, το ένα που ονομάζεται "teths.txt" και το άλλο "snkhs.txt". Και στα δύο αυτά αρχεία βάλτε τον αριθμό 0 και στη συνέχεια αποθηκεύστε τον στον ριζικό φάκελο της κάρτας SD. Αυτά είναι τα αρχεία παρακολούθησης υψηλής βαθμολογίας και θα ενημερώνονται κάθε φορά που η υψηλή βαθμολογία χτυπά. Εάν θέλετε να το επαναφέρετε, απλώς αλλάξτε τις τιμές σε 0 σε υπολογιστή.

Μόλις ανεβάσετε το πρόγραμμα LED_table στο Arduino, μπορείτε να ανοίξετε τη σειριακή οθόνη και θα πρέπει να μπορείτε να βλέπετε τις εντολές bluetooth καθώς τις στέλνετε - με αυτόν τον τρόπο γνωρίζετε ότι όλα λειτουργούν καλά.

Βήμα 9: Απολαύστε

Απολαμβάνω
Απολαμβάνω
Απολαμβάνω
Απολαμβάνω
Απολαμβάνω
Απολαμβάνω

Το μόνο που μένει να κάνετε είναι να ανεβάσετε τον κύριο κωδικό πίνακα LED στο Mega και στη συνέχεια να απολαύσετε το παιχνίδι και να μου ενημερώσετε για τις υψηλές βαθμολογίες σας!

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

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

Βήμα 10: Ενημέρωση

Image
Image
Εκσυγχρονίζω
Εκσυγχρονίζω
Εκσυγχρονίζω
Εκσυγχρονίζω

Τώρα τελείωσε τελείως!:)

Τελικά παρέλαβα το τμήμα αλουμινίου Τ για το μπορντούρα και έκανα την καλύτερη δουλειά μου για να μετριάσω τον σύνδεσμο (αποδεικνύεται ότι οι 45 μοίρες είναι μία από τις σκληρότερες γωνίες), αλλά είναι σχεδόν τελείως τετράγωνο. Για την κορυφή αποφάσισα να πάρω ένα παχύτερο φύλλο γυαλιού (425 x 425 x 8mm) και πάγωσα την κάτω πλευρά χρησιμοποιώντας σπρέι γυαλιού Rustoleum. Χρησιμοποίησα κανονικό καπάκι (στεγανωτικό σιλικόνης) για να συνδέσω το πάνω μέρος και τα γωνιακά κομμάτια, έτσι ώστε να υπάρχει λίγη κάμψη στις συνδέσεις, εάν απαιτείται.

Ενημερωμένη ενημέρωση. Τώρα πρόσθεσα το Game of Life του Conway ως επιλογή 7 στο μενού και όχι το animation των αστέρων, όπως δεν το χρησιμοποίησα ποτέ. Αν δεν γνωρίζετε τι είναι αυτό το παιχνίδι, κάντε το στο Google, αλλά βασικά είναι ένα παιχνίδι μηδενικών παικτών που δείχνει την εξέλιξη με βάση τρεις απλούς κανόνες. Το παιχνίδι της ζωής του Conway

Ενημέρωση^3. Έχω κάνει κάποιες τροποποιήσεις στον κώδικα, ώστε να περιλαμβάνει τώρα μια επιδιόρθωση σφαλμάτων σχετικά με τη μείωση του φωτός των κόκκινων LED και περιλαμβάνει επίσης κινούμενα σχέδια για το χριστουγεννιάτικο δέντρο ως επιλογή 11 στο μενού. Απολαμβάνω.

Συνιστάται: