Κατασκευάστε ένα γάντι εικονικής πραγματικότητας

Εικόνα τίτλου VR Glove

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

Το γάντι βασίζεται σε Raspberry Pi Pico, a MCP3008 ADC και πέντε αισθητήρες ευελιξίας που μπορείτε να κατασκευάσετε και μόνοι σας!

Τι θα χρειαστείτε

Ακολουθεί ένας κατάλογος με τα πράγματα που χρειάζεστε για αυτό το έργο

Αν προτιμάτε ένα οδηγός βίντεο τότε σας καλύπτουμε.

Κατασκευάστε τους αισθητήρες flex σας

Δεδομένου ότι οι περισσότεροι αισθητήρες κάμψης κοστίζουν περίπου 10$ το τεμάχιο, είναι πολύ φθηνότερο να τους κατασκευάσετε μόνοι σας.

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

Αντικαταστήστε την εσωτερική χάρτινη λωρίδα με velostat και το φύλλο αλουμινίου με ταινία χαλκού. Επίσης, κάντε τις λωρίδες πολύ λεπτές (περίπου 1 mm για τη χάλκινη ταινία και 2 mm για το velostat) για να αυξήσετε την ειδική αντίσταση του αισθητήρα. Η αυξημένη ειδική αντίσταση οδηγεί σε υψηλότερη ανάλυση.

Αισθητήρας Flex
Αισθητήρας Flex

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

Αισθητήρας ευελιξίας γαντιού VR
Αισθητήρας Flex

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

Το κίτρινο καλώδιο θα χρησιμεύσει ως καλώδιο δεδομένων.

Το κύκλωμα διαιρέτη τάσης

Ένα κύκλωμα διαιρέτη τάσης χρησιμοποιείται συνήθως στον ενσωματωμένο τομέα. Αποτελείται από δύο αντιστάσεις σε σειρά με μια σύνδεση εξόδου ανάμεσά τους.

Βγάζει ένα κλάσμα της τάσης εισόδου και το ακριβές ποσό εξαρτάται από την ειδική αντίσταση και των δύο αντιστάσεων.

Κύκλωμα διαιρέτη τάσης
Κύκλωμα διαιρέτη τάσης

Καλωδίωση

Συνδέστε το MCP3008 στο Raspberry Pi Pico σύμφωνα με αυτό το γράφημα.

Καλωδίωση γαντιών VR
Καλωδίωση γαντιών VR

Έχουμε μια βήμα προς βήμα εξήγηση στο το βίντεο μας.

Συνδέστε τους αισθητήρες κάμψης όπως στο γράφημα. Οι οκτώ ακίδες στην αριστερή πλευρά του MCP3008 είναι τα κανάλια 0 έως 7 (από πάνω προς τα κάτω). Συνδέστε το καλώδιο δεδομένων του αισθητήρα κάμψης για τον αντίχειρα στο κανάλι 0, το δείκτη στο κανάλι 1, το μεσαίο δάχτυλο στο κανάλι 2, το δάχτυλο του δαχτυλιδιού στο κανάλι 3 και το μικρό δάχτυλο στο κανάλι 4.

Εάν θέλετε να αλλάξετε τη σειρά ή να προσθέσετε επιπλέον αισθητήρες, πρέπει να αλλάξετε το λογισμικό στο Pico.

Ρύθμιση του λογισμικού VR Glove

Ρύθμιση του Pico

Σε αυτή τη διάταξη το MCP3008 μετατρέπει το αναλογικό σήμα από τον αισθητήρα flex σε ψηφιακό. Στη συνέχεια, το Pico διαβάζει τα δεδομένα και τα στέλνει σε έναν υπολογιστή Windows μέσω USB Serial.

Για το Pico θα χρησιμοποιήσουμε το Circuit Python, καθώς παρέχει μια ενότητα MCP3008 που μας διευκολύνει πολύ. Για να εγκαταστήσετε την Circuit Python στο Pico σας, κατεβάστε το .uf2 αρχείο από το Επίσημος ιστότοπος Pico Circuit Python.

Συνδέστε το Pico σας μέσω USB κρατώντας πατημένο το BOOTSEL κουμπί. Στη συνέχεια, σύρετε και αφήστε το .uf2 αρχείο στο Pico. Το Pico θα επαναπροσαρμοστεί ως CIRCUITPY.

Φορτώστε και εξάγετε το mcp3xxx Βιβλιοθήκη κυκλώματος Python που περιέχει -mpy- από το αυτός ο ιστότοπος.

Κατεβάστε το MCP3XXX για το Circuit Python
Κατεβάστε το MCP3XXX για το Circuit Python

Περιέχει ένα φάκελο lib, τον οποίο πρέπει να αντιγράψετε στο Pico (που είναι τώρα ο δίσκος CIRCUITPY).

Στη συνέχεια, κατεβάστε το σενάριο code.py από το Αποθετήριο GitHub και αντιγράψτε το στο Pico.

Τώρα, κάθε φορά που ενεργοποιείτε το Pico (χωρίς κρατώντας πατημένο το κουμπί BOOTSEL) θα διαβάσει τα πέντε πρώτα κανάλια από το MCP3008 και θα στείλει τα δεδομένα στο USB Serial.

Ρύθμιση του Blender

Το επόμενο βήμα είναι να εγκαταστήσετε το Blender για το λειτουργικό σας σύστημα. Αυτό το παράδειγμα δοκιμάστηκε για Windows, αλλά θα πρέπει να λειτουργεί και σε άλλα λειτουργικά συστήματα, με μερικές μικρές τροποποιήσεις.

Χρειαζόμαστε την ενότητα PySerial Python για να διαβάσουμε τα σειριακά δεδομένα από το Pico στο σενάριό μας Python. Το Blender έρχεται με τη δική του έκδοση Python. Βεβαιωθείτε ότι έχετε εγκαταστήσει το PySerial εκεί.

Ελέγξτε το βίντεο μας για να μάθετε πώς να εγκαταστήσετε το PySerial στο Blender στα Windows.

Τώρα κατεβάστε το hand.blend αρχείο από το GitHub και ανοίξτε το στο Blender.

Θα πρέπει να δείτε ένα τρισδιάστατο χέρι στα αριστερά και ένα σενάριο Python στα δεξιά. Στη γραμμή 73 δημιουργείται ένα αντικείμενο "Serial". Θα πρέπει να περάσετε το όνομα της σειριακής θύρας USB στον κατασκευαστή (το οποίο στην περίπτωσή μου ήταν "COM4").

Συμπέρασμα

Θέλετε να δείτε άλλα έργα που μπορείτε να φτιάξετε με ένα Raspberry Pi Pico;

Δείτε τη σειρά έργων Paragon Projects κάνοντας κλικ σε αυτό το κουμπί:

Τι θα κάνετε με το νέο σας γάντι εικονικής πραγματικότητας;

Αφήστε ένα σχόλιο