- Εννοια:
- Απαιτούμενα υλικά:
- Σχηματικά και Υλικό:
- Πρόγραμμα για το Arduino:
- Πρόγραμμα επεξεργασίας:
- Εργαζόμενος:
Αυτό είναι ένα πολύ ενδιαφέρον έργο στο οποίο θα μάθουμε πώς να εφαρμόζουμε την εικονική πραγματικότητα χρησιμοποιώντας το Arduino και το Processing. Για τους περισσότερους από εμάς, η ταινία Iron man του Jon Favreau ήταν πάντα μια έμπνευση για την κατασκευή νέων πραγμάτων που θα κάνουν τη ζωή μας εύκολη και πιο διασκεδαστική. Έχω θαυμάσει προσωπικά τις τεχνολογίες που εμφανίζονται στην ταινία και πάντα ήθελα να φτιάξω κάτι παρόμοιο με αυτό. Έτσι, σε αυτό το έργο έχω προσπαθήσει να μιμηθώ τα πράγματα της εικονικής πραγματικότητας που συμβαίνουν στην ταινία, όπως μπορούμε απλά να κουνήσουμε το χέρι μας μπροστά από τον υπολογιστή και να μετακινήσουμε το δείκτη στην επιθυμητή τοποθεσία και να εκτελέσουμε κάποιες εργασίες.
Εδώ θα σας δείξω πώς μπορείτε απλά να μετακινήσετε το χέρι σας μπροστά από την κάμερα web και να σχεδιάσετε κάτι στον υπολογιστή σας. Θα σας δείξω επίσης πώς μπορείτε να αλλάξετε τα φώτα μετακινώντας ουσιαστικά το χέρι σας και κάνοντας κλικ με τα δάχτυλά σας στον αέρα.
Εννοια:
Για να συμβεί αυτό πρέπει να αξιοποιήσουμε τη δύναμη των Arduino και Processing σε συνδυασμό. Οι περισσότεροι θα ήταν εξοικειωμένοι με το Arduino, αλλά η Επεξεργασία μπορεί να είναι νέα για εσάς. Η επεξεργασία είναι μια εφαρμογή όπως το Arduino και είναι επίσης ανοιχτού κώδικα και δωρεάν λήψη. Χρησιμοποιώντας την Επεξεργασία μπορείτε να δημιουργήσετε απλές εφαρμογές συστήματος, εφαρμογές Android και πολλά άλλα. Έχει επίσης τη δυνατότητα να κάνει επεξεργασία εικόνας και αναγνώριση φωνής. Είναι ακριβώς όπως το Arduino και είναι πολύ εύκολο να το μάθετε, αλλά μην ανησυχείτε αν είστε εντελώς νέοι στην επεξεργασία, επειδή έχω γράψει αυτό το σεμινάριο αρκετά απλό, ώστε οποιοσδήποτε με ενδιαφέρον μπορεί να το κάνει αυτό να λειτουργεί σε χρόνο μηδέν.
Σε αυτό το σεμινάριο χρησιμοποιούμε την Επεξεργασία για να δημιουργήσουμε μια απλή εφαρμογή συστήματος που μας παρέχει μια διεπαφή χρήστη και να παρακολουθούμε τη θέση του χεριού μας χρησιμοποιώντας την επεξεργασία εικόνας Τώρα, πρέπει να κάνουμε αριστερό κλικ και δεξί κλικ χρησιμοποιώντας τα δάχτυλά μας. Για να συμβεί αυτό, έχω χρησιμοποιήσει δύο αισθητήρες αίθουσας (ο ένας στο δείκτη μου και ο άλλος στο μεσαίο δάχτυλο), τους οποίους θα διαβάσει το Arduino Nano. Το Arduino μεταδίδει επίσης την κατάσταση κλικ στον υπολογιστή ασύρματα μέσω Bluetooth.
Μπορεί να ακούγεται περίπλοκο, αλλά πιστέψτε με. δεν είναι τόσο δύσκολο όσο ακούγεται. Ας ρίξουμε μια ματιά στα υλικά που χρειάζονται για να τεθεί σε λειτουργία το έργο.
Απαιτούμενα υλικά:
- Arduino Nano
- Αισθητήρας αίθουσας (A3144) - 2Nos
- Ένα μικρό κομμάτι μαγνήτη
- Ενότητα Bluetooth (HC-05 / HC-06)
- Μπαταρία 9V
- Πίνακας κουκίδων σύνδεσης.
- Ενα ζευγάρι γάντια
- Arduino IDE (Λογισμικό)
- Επεξεργασία IDE (Λογισμικό)
- Ένας υπολογιστής με κάμερα Web και Bluetooth (μπορείτε επίσης να χρησιμοποιήσετε εξωτερική Bluetooth ή κάμερα Web για τον υπολογιστή σας)
Σχηματικά και Υλικό:
Το τμήμα υλικού αυτού του έργου είναι πολύ απλό και εύκολο στην κατασκευή. Το πλήρες σχηματικό φαίνεται παρακάτω.
Το Arduino, οι αντιστάσεις και οι καρφίτσες του περγαμόντου συγκολλούνται σε μια κουκκίδα όπως φαίνεται παρακάτω.
Ο αισθητήρας χώρου και η μονάδα Bluetooth συγκολλούνται σε καλώδιο σύνδεσης όπως φαίνεται παρακάτω.
Μόλις αυτά τα δύο τμήματα είναι έτοιμα, μπορεί να συναρμολογηθεί σε γάντια έτσι ώστε να είναι εύκολο στη χρήση. Έχω χρησιμοποιήσει πλαστικά γάντια μίας χρήσης που μπορούν να αγοραστούν από οποιοδήποτε ιατρικό κατάστημα κοντά σας. Πρέπει να βεβαιωθείτε ότι ο μαγνήτης έρχεται στο δάχτυλό του αντίχειρα σας και ότι ο αισθητήρας της αίθουσας 1 και ο αισθητήρας της αίθουσας 2 πρέπει να υπάρχουν πριν από το δείκτη και το μεσαίο δάχτυλό σας αντίστοιχα. Έχω χρησιμοποιήσει ταινίες πάπιας για να στερεώσω τα εξαρτήματα στη θέση τους. Μόλις συναρμολογηθούν τα εξαρτήματα, θα πρέπει να μοιάζει με αυτό.
Ας ανοίξουμε τώρα το Arduino IDE και ξεκινήσουμε τον προγραμματισμό.
Πρόγραμμα για το Arduino:
Ο σκοπός αυτού του κωδικού Arduino είναι να διαβάσει την κατάσταση του αισθητήρα αίθουσας και να τις μεταδώσει χρησιμοποιώντας τη μονάδα Bluetooth. Θα πρέπει επίσης να λαμβάνει δεδομένα από το Bluetooth και να αλλάζει το ενσωματωμένο LED με βάση την εισερχόμενη τιμή. Το πλήρες πρόγραμμα δίνεται στο τέλος αυτού του σεμιναρίου. Έχω εξηγήσει επίσης μερικές γραμμές παρακάτω.
if (Phs1! = HallState_1 - Phs2! = HallState_2) // Ελέγξτε εάν πατηθούν νέα πλήκτρα {if (HallState_1 == LOW && HallState_2 == LOW) Aisha.write (1); εάν (HallState_1 == HIGH && HallState_2 == LOW) Aisha.write (2); εάν (HallState_1 == LOW && HallState_2 == ΥΨΗΛΟ) Aisha.write (3); εάν (HallState_1 == HIGH && HallState_2 == HIGH) Aisha.write (4); }
Όπως φαίνεται στις παραπάνω γραμμές με βάση την κατάσταση του αισθητήρα αίθουσας, το Bluetooth θα γράψει μια συγκεκριμένη τιμή. Για παράδειγμα, εάν ο αισθητήρας αίθουσας 1 είναι υψηλός και ο αισθητήρας αίθουσας 2 είναι χαμηλός, τότε θα μεταδώσουμε το vale "2" μέσω της μονάδας Bluetooth. Βεβαιωθείτε ότι έχετε γράψει τις τιμές στη μονάδα BT και ότι δεν τις εκτυπώνετε. Επειδή θα είναι εύκολο να διαβάσετε το μόνο στην πλευρά Επεξεργασίας μόνο εάν είναι γραμμένα. Επίσης, η τιμή θα στείλει μόνο εάν δεν είναι ίδια με την προηγούμενη τιμή.
εάν (BluetoothData == 'y') digitalWrite (ledpin, HIGH); εάν (BluetoothData == 'n') digitalWrite (ledpin, LOW);
Αυτές οι γραμμές χρησιμοποιούνται για εναλλαγή του ενσωματωμένου LED που είναι συνδεδεμένος στο Pin 13, με βάση την τιμή που λαμβάνεται από τη μονάδα BT. Για παράδειγμα, εάν η μονάδα λαμβάνει ένα «y», τότε η λυχνία LED ανάβει και αν λάβει ένα «n», τότε σβήνει.
Πρόγραμμα επεξεργασίας:
Ο σκοπός του προγράμματος Επεξεργασίας είναι να δημιουργήσει μια εφαρμογή συστήματος που μπορεί να λειτουργήσει ως διεπαφή χρήστη (User interface) και επίσης να εκτελέσει επεξεργασία εικόνας για την παρακολούθηση ενός συγκεκριμένου αντικειμένου. Σε αυτήν την περίπτωση παρακολουθούμε το μπλε αντικείμενο που κολλήσαμε στα γάντια μας παραπάνω. Το πρόγραμμα έχει βασικά τέσσερις οθόνες.
- Οθόνη βαθμονόμησης
- Κύρια οθόνη
- Οθόνη βαφής
- Οθόνη εναλλαγής LED
Μπορούμε να πλοηγηθούμε από τη μία οθόνη στην άλλη απλώς κουνώντας τα χέρια μας και σύροντας οθόνες στον αέρα. Μπορούμε επίσης να κάνουμε κλικ σε επιθυμητά μέρη για εναλλαγή LED ή ακόμη και σχεδίαση κάτι στην οθόνη.
Μπορείτε να αντιγράψετε την επικόλληση του πλήρους προγράμματος Επεξεργασίας (παρέχεται στο τέλος) και να το τροποποιήσετε με βάση τη δημιουργικότητά σας ή να κάνετε απλή λήψη των αρχείων EXE από εδώ και να ακολουθήσετε τα παρακάτω βήματα για να ξεκινήσετε την εφαρμογή.
- Εγκαταστήστε το JAVA στον υπολογιστή σας εάν δεν το έχετε εγκαταστήσει προηγουμένως
- Εγκαταστήστε το You Cam τέλειο στον υπολογιστή σας
- Ενεργοποιήστε το Arduino και συνδέστε τον υπολογιστή σας με τη μονάδα Bluetooth
- Εκκινήστε το αρχείο εφαρμογής
Εάν όλα πάνε καλά, θα πρέπει να μπορείτε να παρατηρήσετε ότι το LED στη μονάδα Bluetooth σας σταθεροποιείται και η λυχνία της κάμερας web σας ανάβει. Εάν έχετε προβλήματα, επικοινωνήστε μαζί μου μέσω της ενότητας σχολίων και θα σας βοηθήσω.
Παρακολουθήστε το βίντεο στο τέλος για να μάθετε πώς να βαθμονομήσετε την εφαρμογή σας και να τη χρησιμοποιήσετε.
Εάν θέλετε να τροποποιήσετε τον κώδικα και να δημιουργήσετε περισσότερες δυνατότητες σε αυτό, τότε μπορείτε να χρησιμοποιήσετε τις ακόλουθες πληροφορίες του προγράμματος
Μπορείτε να κατεβάσετε το IDE επεξεργασίας από εδώ. Αν θέλετε να μάθετε περισσότερα σχετικά με την επεξεργασία και να δημιουργήσετε πιο ενδιαφέροντα έργα, τότε μπορείτε να επισκεφθείτε τα σεμινάρια εδώ.
Η επεξεργασία έχει τη δυνατότητα ανάγνωσης σειριακών δεδομένων, σε αυτό το πρόγραμμα τα σειριακά δεδομένα προέρχονται από τη θύρα COM Bluetooth. Πρέπει να επιλέξετε σε ποια θύρα COM συνδέεται το Bluetooth σας χρησιμοποιώντας αυτήν την παρακάτω γραμμή
port = new Serial (αυτό, Serial.list (), 9600);
Εδώ έχω επιλέξει 1 μου st θύρα COM που είναι COM5 στην περίπτωσή μου (δείτε την εικόνα παρακάτω) και ανέφερα ότι με τρεξίματα μονάδα Bluetooth στο 9600 baudrate.
Όπως αναφέρθηκε προηγουμένως, η επεξεργασία έχει επίσης τη δυνατότητα να κάνει επεξεργασία εικόνας, σε αυτό το σεμινάριο οι εικόνες αποστέλλονται μέσα στο σκίτσο χρησιμοποιώντας κάμερα web. Σε κάθε εικόνα παρακολουθούμε για ένα συγκεκριμένο αντικείμενο. Για να μάθετε περισσότερα σχετικά με αυτό μπορείτε να επισκεφτείτε αυτό το σεμινάριο.
Έχω δοκιμάσει το καλύτερό μου για να εξηγήσω το πρόγραμμα (στο τέλος) μέσω των γραμμών σχολίων. Μπορείτε να κατεβάσετε τα αρχεία εδώ.
Αν θέλετε να μάθετε περισσότερα για το σκίτσο, μπορείτε να επικοινωνήσετε μαζί μου μέσω της ενότητας σχολίων και θα σας βοηθήσω.
Εργαζόμενος:
Μόλις το υλικό και το λογισμικό είναι έτοιμα, φορέστε τα γάντια και ετοιμαστείτε για κάποια ενέργεια. Τώρα, απλώς ενεργοποιήστε το Arduino και, στη συνέχεια, ξεκινήστε την εφαρμογή. Το LED στη μονάδα Bluetooth πρέπει να είναι σταθερό. Τώρα σημαίνει ότι η εφαρμογή Συστήματός σας έχει δημιουργήσει έναν σύνδεσμο Bluetooth με το Arduino σας.
Θα εμφανιστεί η ακόλουθη οθόνη όπου πρέπει να επιλέξετε το αντικείμενο που θα παρακολουθείτε. Αυτή η ανίχνευση μπορεί να γίνει απλά κάνοντας κλικ στο αντικείμενο. Σε αυτήν την περίπτωση το αντικείμενο είναι ο μπλε δίσκος. Τώρα μπορείτε να μετακινήσετε το αντικείμενο και να παρατηρήσετε ότι ο δείκτης ακολουθεί το αντικείμενό σας. Χρησιμοποιήστε ένα μοναδικό χρωματικό αντικείμενο και ένα φωτεινό δωμάτιο για καλύτερα αποτελέσματα.
Τώρα αγγίξτε το δάχτυλό του αντίχειρα σας με το δείκτη και θα πρέπει να δείτε το μήνυμα "Πιέστε το πλήκτρο 1" και όταν πατήσετε τον αντίχειρά σας με το μεσαίο δάχτυλο θα πρέπει να δείτε το "Πλήκτρο 2 πιεσμένο", αυτό δείχνει ότι όλα λειτουργούν καλά και η βαθμονόμηση έχει τελειώσει. Τώρα κάντε κλικ στο κουμπί Τέλος.
Μόλις πατηθεί το κουμπί Τέλος, θα κατευθυνθείτε στην κύρια οθόνη όπου μπορείτε να βάψετε στον αέρα ή να αλλάξετε το LED στην πλακέτα Arduino, όπως φαίνεται στο παρακάτω βίντεο.