Πίνακας περιεχομένων:
Βίντεο: Ελαφρύ μπαμπού (συνδεδεμένος λαμπτήρας): 3 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:35
Γειά σας και καλώς ήρθατε!
Το ελαφρύ μπαμπού είναι μια συνδεδεμένη λάμπα που ανάβει όταν λαμβάνεται μια ειδοποίηση στο smartphone Android στο οποίο είναι συνδεδεμένο. Ο στόχος αυτού του οδηγού είναι να σας δείξει το στάδιο σχεδιασμού του έργου: από την αρχιτεκτονική υλικού, έως τη σύνδεση Bluetooth Low Energy (BLE) και το κτίριο εφαρμογών Android.
Για τη λάμπα μας, επιλέξαμε ένα πλαστικό φυτό για ένα δροσερό σχέδιο διακόσμησης. Για αυτό το έργο, οι ειδοποιήσεις που εμφανίζονται προέρχονται από τις ακόλουθες εφαρμογές: κλήσεις, sms/mms, facebook, messenger, instagram, whatsapp ang gmail. Για κάθε τύπο ειδοποίησης αποδίδεται ένα ανοιχτόχρωμο χρώμα.
Για αυτό το έργο, θα χρειαστείτε:
- Ένα uC με ενσωματωμένη μονάδα BLE: nFR51822 RedBearLab
- 3 δαχτυλίδι NeoPixel (12 LED RGB)
- Ένα smartphone Android
- Android Studio
Κάθε ειδοποίηση έχει μια συγκεκριμένη προτεραιότητα, ανάλογα με τη σημασία της. Για παράδειγμα, μια ειδοποίηση εισερχόμενης κλήσης είναι πιο σημαντική από μια ειδοποίηση Facebook. Σε αυτή την περίπτωση, το χρώμα των LED θα συσχετιστεί με την ειδοποίηση εισερχόμενης κλήσης.
Το smartphone στο οποίο αναπτύξαμε την εφαρμογή είναι ένα Samsung Galaxy A5.
Βήμα 1: Μέρος υλικού
Η αρχιτεκτονική μας είναι αρκετά απλή.
Συνδέστε τις καρφίτσες NeoPixel Ring στην πλακέτα nRF51822 ως εξής:
- Καρφίτσα εισόδου δεδομένων του NeoPixel Ring στη θύρα 3 του uC.
- Vcc του δακτυλίου NeoPixel στο 3,3V του uC.
- GND του δακτυλίου NeoPixel στο GND του uC.
Μπορείτε να παρατηρήσετε ότι δεν χρησιμοποιούμε την καρφίτσα δεδομένων εξόδου του δακτυλίου NeoPixel. Αυτό συμβαίνει επειδή οι ακίδες δεδομένων εισόδου των τριών NeoPixel Rings που χρησιμοποιούμε σε αυτό το έργο είναι όλες συνδεδεμένες στην ίδια θύρα της πλακέτας nRF51822 (pin 3).
Βήμα 2: Μέρος λογισμικού
1. Η επικοινωνία Bluetooth χαμηλής ενέργειας:
Σε μια επικοινωνία BLE, ο διακομιστής (που στην περίπτωσή μας είναι το uC) και ο πελάτης (το smartphone) ανταλλάσσουν δεδομένα χρησιμοποιώντας συναλλαγές GATT. Σε αυτές τις συναλλαγές, τα δεδομένα οργανώνονται ιεραρχικά σε ενότητες που ονομάζονται υπηρεσίες, οι οποίες ομαδοποιούν εννοιολογικά συναφή κομμάτια δεδομένων χρήστη που ονομάζονται χαρακτηριστικά. Στην περίπτωσή μας, η ενσωμάτωση δεδομένων είναι απλή, καθώς έχουμε μόνο μία πληροφορία για να περάσουμε από τον πελάτη στον διακομιστή (δείτε την παραπάνω εικόνα).
- από την πλευρά του διακομιστή: Για να μπορέσετε να χρησιμοποιήσετε τον πίνακα nrf51822 ως διακομιστή BLE, εγκαταστήστε πρώτα τη βιβλιοθήκη "BLEPeripheral.h" στο Arduino IDE. Αυτή η βιβλιοθήκη παρέχει λειτουργίες έτοιμες προς χρήση για τη δημιουργία υπηρεσιών και χαρακτηριστικών και διαφήμισης.
- από την πλευρά του πελάτη: Για να ξεκινήσετε μια επικοινωνία BLE στο Android Studio, διαμορφώστε πρώτα τα δικαιώματα BLE στο αρχείο Manifest. Στη συνέχεια, στο αρχείο activity_main.xml, προσθέστε 4 κουμπιά: σάρωση, διακοπή σάρωσης, σύνδεση και αποσύνδεση που θα επιτρέψει στην εφαρμογή να σαρώσει κοντινές συσκευές BLE, να σταματήσει τη σάρωση, να συνδεθεί και να αποσυνδεθεί με μια συσκευή. Στο αρχείο main_activity.java, εφαρμόστε τις λειτουργίες που σχετίζονται με τα προηγούμενα κουμπιά: startScanning (), stopcanning (), connectToDeviceSelected (), disconnectDeviceSelected (). Τέλος, εφαρμόστε τις λειτουργίες επανάκλησης που καλούνται όταν αλλάζει η κατάσταση του προγράμματος -πελάτη Το
2. Διαχείριση κοινοποιήσεων
- από την πλευρά του πελάτη (στο Android Studio): Για να ακούσετε τις ειδοποιήσεις που προέρχονται από το smartphone, εφαρμόστε έναν ακροατή ειδοποιήσεων ο οποίος ενεργοποιείται όταν εμφανιστεί μια ειδοποίηση στη γραμμή κατάστασης. Αυτός ο ακροατής ειδοποιήσεων θα στείλει ένα "μήνυμα", που ονομάζεται πρόθεση, στην κύρια δραστηριότητα όταν δημοσιευτεί ή αφαιρεθεί μια ειδοποίηση. Αυτό το "μήνυμα" περιέχει έναν κωδικό ειδοποίησης που βοηθά στον προσδιορισμό της εφαρμογής που δημοσίευσε την ειδοποίηση. Για να επεξεργαστείτε την ειδοποίηση στην κύρια δραστηριότητα, δημιουργήστε έναν δέκτη μετάδοσης που θα λαμβάνει το μήνυμα από τον ακροατή ειδοποιήσεων. Στη συνέχεια, ανάλογα με τον κωδικό ειδοποίησης, ένας διαφορετικός χαρακτήρας αποστέλλεται στον διακομιστή.
- στην πλευρά του διακομιστή (στο Arduino IDE): εμφανίζεται η ειδοποίηση που έχει την υψηλότερη προτεραιότητα.
Βήμα 3: Βήμα 3: Παραρτήματα
Εδώ, θα βρείτε όλη την πηγή κώδικα.
Συνιστάται:
Συνδεδεμένος μετεωρολογικός σταθμός με ESP32: 3 βήματα
Συνδεδεμένος μετεωρολογικός σταθμός με ESP32: Σε αυτό το σεμινάριο θα μάθετε πώς να ρυθμίσετε έναν μετεωρολογικό σταθμό με βάση το ESP32 και πώς να παρακολουθείτε τις μετρήσεις του από απόσταση, μέσω της εφαρμογής Blynk καθώς και μέσω ενός ιστότοπου
Συνδεδεμένος φορτιστής USB: 5 βήματα
Hardwired USB Charger: Έτσι έχω μια κατάσταση όπου πρέπει να τοποθετήσω μια ασύρματη κάμερα. Η κάμερα τροφοδοτείται από φορτιστή USB 5v, 1000mA, ο οποίος παρέχεται με την κάμερα όταν αγοράζεται. Το δίλημμα μου είναι ότι ΔΕΝ έχω πρίζα όπου τοποθετώ την κάμερα. Πάντως ΚΑΝΩ
Συνδεδεμένος στο Internet ανεμιστήρας για το Zwift: 7 βήματα (με εικόνες)
Internet Connected Fan for Zwift: Έφτιαξα έναν ανεμιστήρα που είναι συνδεδεμένος στο διαδίκτυο για χρήση με το Zwift, ένα εικονικό σύστημα αγώνων / προπονητικών αγώνων ποδηλάτων. Όταν πηγαίνετε γρηγορότερα στο Zwift, ο ανεμιστήρας γυρίζει γρηγορότερα για να προσομοιώσει τις εξωτερικές συνθήκες οδήγησης.;) Είχα καλή διασκέδαση χτίζοντας αυτό, ελπίζω να το απολαύσετε
Συνδεδεμένος θερμοστάτης: 6 βήματα (με εικόνες)
Συνδεδεμένος θερμοστάτης: Η ακριβής παρακολούθηση της θερμοκρασίας στο σπίτι σας είναι σίγουρα ένας από τους καλύτερους τρόπους για να εξοικονομήσετε χρήματα. Ταυτόχρονα, θέλετε να νιώθετε καλά σε ένα ζεστό σπίτι κατά τη χειμερινή περίοδο. Ο τρέχων θερμοστάτης μου επιτρέπει μόνο έναν στατικό προγραμματισμό: I
Αναπτύξτε το δικό σας πτυσσόμενο μονόποδο από μπαμπού: 15 βήματα
Αναπτύξτε το δικό σας πτυσσόμενο μονόποδο από μπαμπού: Αυτό είναι ένα πτυσσόμενο, μονόποδο από μπαμπού 3 τμημάτων για χρήση με ελαφριές κάμερες, μικρές γωνίες εντοπισμού και οτιδήποτε άλλο μπορεί να θέλετε να κρατήσετε σταθερό χωρίς να χρειάζεται να μεταφέρετε τρίποδο. Είναι ένα απλό προϊόν, ένα κοίλο ραβδί πραγματοποιήθηκε μαζί με ένα ποδήλατο