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

Οπτικοποίηση κίνησης Gyro L3G4200D με μπλέντερ: 5 βήματα
Οπτικοποίηση κίνησης Gyro L3G4200D με μπλέντερ: 5 βήματα

Βίντεο: Οπτικοποίηση κίνησης Gyro L3G4200D με μπλέντερ: 5 βήματα

Βίντεο: Οπτικοποίηση κίνησης Gyro L3G4200D με μπλέντερ: 5 βήματα
Βίντεο: Βέλτιστη Οπτικοποίηση - Κίνηση Καρτών Μνήμης - Διορθώσεις - Τέστ σε Επαναλήψεις 2024, Νοέμβριος
Anonim
Image
Image

Αγόρασα έναν αρκετά φθηνό γυροσκοπικό αισθητήρα L3G4200D από το eBay που μπορεί να ανιχνεύσει περιστροφή 3 αξόνων και να τον παραδώσει μέσω διεπαφής I2C ή SPI. Προσπάθησα να το χρησιμοποιήσω για τον εντοπισμό οριζόντιας και κάθετης περιστροφής σε πραγματικό χρόνο. Αυτό αποδείχθηκε αρκετά δύσκολο καθώς δεν μπορούσα να φανταστώ τι έβγαζε το Gyro. Χρειαζόμουν μια οπτικοποίηση. Κατέληξα να χρησιμοποιώ το Blender για να απεικονίσω το γυροσκόπιο που συνδέεται με ένα Arduino Uno. Με αυτόν τον συνδυασμό, πήρα μια αναφορά σε πραγματικό χρόνο που αποδείχθηκε αρκετά καλή και απέδειξε ότι ο αισθητήρας είναι αρκετά ακριβής σε αυτό που κάνει.

Βήμα 1: Το υλικό

Το λογισμικό
Το λογισμικό

Αισθητήρας L3G4200D

Arduino Uno (σχεδόν οποιοδήποτε Arduino θα το κάνει)

Ο αισθητήρας συνδέεται με το Arduino με αυτόν τον τρόπο.

Και το Arduino συνδέεται με τον υπολογιστή.

Βήμα 2: Το Λογισμικό

Για την απεικόνιση, χρησιμοποίησα μπλέντερ και πύθωνα.

Εδώ ξεκινούν τα προβλήματα. Πρέπει να δημιουργήσουμε το Blender και το python με τον σωστό τρόπο. Χρειαζόμαστε το Blender για να μοιραστούμε την ίδια έκδοση python όπως χρησιμοποιεί το σύστημα. Ο καλύτερος τρόπος για να κάνετε είναι να κατεβάσετε το νεότερο Blender, Εγκαταστήστε το. Ανοίξτε τον εσωτερικό πύθωνα του Blenders. Στον υπολογιστή μου βρίσκεται στη διεύθυνση: C: / Program Files / Blender Foundation / Blender / 2.78 / python / bin / python.exe Αποκαλύπτει την έκδοση Python που χρησιμοποιεί το Blender.

Μεταβείτε στη σελίδα Python και κάντε λήψη του ΑΚΡΙΒΩΣ ίδιου κάδου python. https://www.python.org/downloads/Εγκαταστήστε το python αλλά ελέγξτε το [Προσθήκη Python στο PATH] στην αρχή του οδηγού εγκατάστασης.

Μετονομάστε το φάκελο στον οποίο βρίσκεται το python που χρησιμοποιεί το blender, ώστε να μην αναγνωρίζεται πλέον από το blender.rename

C: / Program Files / Blender Foundation / Blender / 2.78 / python

προς το

C: / Program Files / Blender Foundation / Blender / 2.78 / python_old

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

Τα μόνα πράγματα που λείπουν τώρα είναι οι βιβλιοθήκες που θα χρησιμοποιήσουμε με τον python. Εκκινήστε τον python και θα κατεβάσουμε τη σειριακή βιβλιοθήκη αυτής της εντολής που μπορεί να εκτελεστεί μέσω της γραμμής εντολών:

σειριακή εγκατάσταση pip

Αυτή η βιβλιοθήκη είναι απαραίτητη επειδή επιτρέπει στην python να λαμβάνει σειριακές συνδέσεις από το Arduino.

Βήμα 3: Τα σενάρια

Τα Σενάρια
Τα Σενάρια

Στο Arduino, θα πρέπει να ανεβάσουμε αυτό το σενάριο:

gist.github.com/BoKKeR/ac4b5e14e5dfe0476df7eb5065e98e98#file-l3g4200d-ino

Αυτό το σενάριο βρήκα και τροποποίησα από αυτό το νήμα στο φόρουμ του Arduino.

Η δουλειά αυτού του σεναρίου είναι να λάβει τα δεδομένα από τον αισθητήρα L3G4200D και να τα στείλει μέσω μιας καθορισμένης θύρας COM με ρυθμό baad 115200.

Παράδειγμα εξόδου:

Χ: 38,72 Υ: 8,61 Ζ: -17,66

Χ: 39,30 Υ: 8,37 Ζ: -18,17

Χ: 40,07 Υ: 8,24 Ζ: -18,81

Χ: 40,89 Υ: 8,30 Ζ: -19,46

Χ: 41,69 Υ: 8,41 Ζ: -20,05

Χ: 42,42 Υ: 8,41 Ζ: -20,44

Στο blender, θα χρειαστεί να αλλάξουμε τη διάταξη σε Scripting.

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

gist.github.com/BoKKeR/edb7cc967938d57c979d856607eaa658#file-blender-py

Βήμα 4: Εκτελέστε το σενάριο

Εκτελέστε το Script
Εκτελέστε το Script

Αφού πατήσετε το Run Script, όλα πρέπει να λειτουργούν και ο κύβος πρέπει να γυρίζει ακριβώς όπως γυρίζει ο αισθητήρας γύρου.

Βήμα 5: Αντιμετώπιση προβλημάτων

Αντιμετώπιση προβλημάτων
Αντιμετώπιση προβλημάτων

Εάν αντιμετωπίσετε οποιοδήποτε πρόβλημα με την εκτέλεση του σεναρίου, θα πρέπει να ανοίξετε την κονσόλα συστήματος. Κάντε κλικ στο Παράθυρο -> Εναλλαγή κονσόλας συστήματος για να αποκαλύψετε την κονσόλα όπου εμφανίζεται το σφάλμα.

Το πιο συνηθισμένο σφάλμα είναι η άδεια για το άνοιγμα της θύρας. Για να το διορθώσετε, αποσυνδέστε γρήγορα το Arduino και επανασυνδέστε το.

Αν χρειάζεστε περισσότερη βοήθεια επισκεφθείτε τον ιστότοπό μου για καλύτερη υποστήριξη.

tnorbert.com/visualizing-l3g4200d-gyro-movement-with-blender/

Συνιστάται: