Πίνακας περιεχομένων:
- Βήμα 1: Υλικό που απαιτούμε
- Βήμα 2: Σύνδεση του υλικού
- Βήμα 3: Κωδικοποίηση Python για το Raspberry Pi
- Βήμα 4: Η πρακτικότητα του κώδικα
- Βήμα 5: Εφαρμογές και δυνατότητες
- Βήμα 6: Συμπέρασμα
Βίντεο: Παρακολούθηση παραλλαγών επιτάχυνσης με Raspberry Pi και MMA7455 χρησιμοποιώντας Python: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Δεν ταξίδεψα, δοκίμαζα τη βαρύτητα. Λειτουργεί ακόμα…
Μια αναπαράσταση ενός επιταχυνόμενου διαστημικού λεωφορείου διευκρίνισε ότι ένα ρολόι στο υψηλότερο σημείο του λεωφορείου θα επέλεγε πιο γρήγορα από το ένα στη βάση λόγω της βαρυτικής διαστολής του χρόνου. Μερικοί ισχυρίστηκαν ότι η επιτάχυνση στο λεωφορείο θα ήταν η ίδια και για τα δύο ρολόγια, οπότε θα έπρεπε να χτυπάνε με τον ίδιο ρυθμό. Σκεφτείτε το λίγο.
Οι σκέψεις, τα κίνητρα, ακόμη και οι κατευθυντήριες γραμμές μπορούν να προέρχονται από οπουδήποτε-ωστόσο, όταν η προσοχή σας είναι στην καινοτομία, παίρνει τη συμβολή από τα άτομα που επικεντρώνονται σε αυτό το σημείο. Το Raspberry Pi, ο μίνι, μονός πίνακας Linux PC, προσφέρει μοναδικές επιχειρήσεις και βασικές συμβουλές για την οργάνωση, τον προγραμματισμό και τις ηλεκτρονικές επιχειρήσεις. Κλείνοντας όντας Raspberry Pi και κατασκευαστές σεμιναρίων για συσκευές, έχουμε την ευκαιρία να προγραμματίσουμε και να τσιμπήσουμε και να κάνουμε εκπληκτικά πράγματα με την Πληροφορική και την Ηλεκτρονική να στριμώχνονται. Αργά είχαμε τη χαρά να κάνουμε μια λήψη σε μια εργασία χρησιμοποιώντας ένα επιταχυνσιόμετρο και οι σκέψεις πίσω από το τι θα μπορούσατε να κάνετε με αυτό το gadget είναι πραγματικά υπέροχες. Έτσι, σε αυτήν την εργασία, θα ενσωματώσουμε τον MMA7455, έναν ψηφιακό αισθητήρα επιταχυνσιόμετρου 3 αξόνων, για τη μέτρηση της επιτάχυνσης σε 3 διαστάσεις, X, Y και Z, με το Raspberry Pi χρησιμοποιώντας Python. Ας δούμε αν αποδίδει.
Βήμα 1: Υλικό που απαιτούμε
Γνωρίζουμε πόσο ενοχλητικό μπορεί να είναι να προσπαθήσουμε και να κάνουμε μετά χωρίς να γνωρίζουμε ποια μέρη θα πάρουμε, από πού θα κανονίσουμε και πόσο θα κοστίσουν όλα εκ των προτέρων. Έτσι κάναμε όλη αυτή τη δουλειά για εσάς. Μόλις τεμαχίσετε όλα τα μέρη τετράγωνα, θα πρέπει να είναι ένα στιγμιότυπο για να κάνετε αυτήν την εργασία. Πάρτε μετά το τέλος για να λάβετε μια πλήρη λίστα ανταλλακτικών.
1. Raspberry Pi
Το αρχικό βήμα ήταν να αποκτήσετε έναν πίνακα Raspberry Pi. Το Raspberry Pi είναι ένας μοναχικός υπολογιστής που βασίζεται σε Linux. Αυτός ο μικρός υπολογιστής διαθέτει μια δυνατή εγγραφή ισχύος, που χρησιμοποιείται ως ένα κομμάτι ασκήσεων ηλεκτρονικών και λειτουργίες υπολογιστών, όπως υπολογιστικά φύλλα, επεξεργασία κειμένου, περιήγηση στο διαδίκτυο και email και παιχνίδια. Μπορείτε να αγοράσετε ένα σε οποιοδήποτε κατάστημα ηλεκτρονικών ειδών ή χόμπι.
2. I2C Shield για το Raspberry Pi
Το κύριο μέλημα που το Raspberry Pi απουσιάζει είναι μια θύρα I2C. Γι 'αυτό, ο σύνδεσμος TOUTPI2 I2C σας δίνει την αίσθηση ότι χρησιμοποιείτε το Raspberry Pi με ΟΠΟΙΑΔΗΠΟΤΕ συσκευές I2C. Είναι διαθέσιμο στο κατάστημα DCUBE
3. Επιταχυνσιόμετρο 3 αξόνων, MMA7455
Το MMA7455 Digitalηφιακό Επιταχυνσιόμετρο 3 αξόνων MMA7455 που παράγεται από την Freescale Semiconductor, Inc. είναι χαμηλής ισχύος, μικρότερης κλίμακας επεξεργασμένο αισθητήρα κατάλληλο για τη μέτρηση της επιτάχυνσης κατά μήκος του άξονα X, Y και Z. Αποκτήσαμε αυτόν τον αισθητήρα από το DCUBE Store
4. Καλώδιο σύνδεσης
Αποκτήσαμε το καλώδιο σύνδεσης I2C από το κατάστημα DCUBE
5. Καλώδιο Micro USB
Το παραμικρό μπερδεμένο, ωστόσο, το πιο αυστηρό όσον αφορά την αναγκαιότητα ισχύος είναι το Raspberry Pi! Η πιο προδιαγεγραμμένη και λιγότερο απαιτητική προσέγγιση για τη διαχείριση της στρατηγικής είναι με τη χρήση του καλωδίου Micro USB. Μια πιο προηγμένη και εξειδικευμένη διαδρομή είναι η παροχή ενέργειας ειδικά μέσω θύρων GPIO ή USB.
6. Υποστήριξη δικτύωσης
Συνδέστε το Raspberry Pi με ένα καλώδιο Ethernet (LAN) και συνδέστε το στο οικιακό σας δίκτυο. Από την άλλη πλευρά, σαρώστε μια σύνδεση WiFi και χρησιμοποιήστε μία από τις θύρες USB για να μεταβείτε στο απομακρυσμένο δίκτυο. Είναι μια απότομη απόφαση, θεμελιώδης, μικρή και απλή!
7. Καλώδιο HDMI/Απομακρυσμένη πρόσβαση
Το Raspberry Pi διαθέτει θύρα HDMI την οποία μπορείτε να διασυνδέσετε ιδιαίτερα σε οθόνη ή τηλεόραση με καλώδιο HDMI. Επιλεκτικά, μπορείτε να χρησιμοποιήσετε το SSH για να δημιουργήσετε με το Raspberry Pi σας από υπολογιστή PC ή Mac από το τερματικό. Ομοίως, το PuTTY, ένας δωρεάν εξομοιωτής τερματικού ανοιχτού κώδικα ακούγεται σαν μια έξυπνη σκέψη.
Βήμα 2: Σύνδεση του υλικού
Κάντε το κύκλωμα όπως υποδεικνύεται από το σχηματικό σχήμα που εμφανίστηκε. Στο σχηματικό σχήμα, θα δείτε τις συνδέσεις διαφόρων ηλεκτρονικών εξαρτημάτων, καλωδίων σύνδεσης, καλωδίων τροφοδοσίας και αισθητήρα I2C.
Raspberry Pi και I2C Shield Connection
Πρώτα από όλα, πάρτε το Raspberry Pi και εντοπίστε το I2C Shield πάνω του. Πατήστε το Shield όμορφα πάνω από τις καρφίτσες GPIO του Pi και τελειώσαμε με αυτήν την πρόοδο τόσο εύκολη όσο η πίτα (δείτε το στιγμιότυπο).
Σύνδεση Raspberry Pi και αισθητήρα
Πάρτε τον αισθητήρα και διασυνδέστε το καλώδιο I2C μαζί του. Για την κατάλληλη λειτουργία αυτού του καλωδίου, ελέγξτε ότι η έξοδος I2C ΠΑΝΤΑ αναλαμβάνει την είσοδο I2C. Το ίδιο πρέπει να γίνει μετά το Raspberry Pi με την ασπίδα I2C τοποθετημένη πάνω από τις καρφίτσες GPIO.
Προτείνουμε τη χρήση του καλωδίου I2C, καθώς αναιρεί την απαίτηση για ανατομή pinouts, ασφάλιση και ταλαιπωρία που επιτυγχάνεται ακόμη και με το πιο ταπεινό χάος. Με αυτό το σημαντικό καλώδιο συσχέτισης και αναπαραγωγής, μπορείτε να παρουσιάσετε, να ανταλλάξετε αντικείμενα ή να προσθέσετε περισσότερα gadget σε μια κατάλληλη εφαρμογή. Αυτό υποστηρίζει το βάρος εργασίας σε τεράστιο επίπεδο.
Σημείωση: Το καφέ σύρμα θα πρέπει να λαμβάνει αξιόπιστα τη σύνδεση γείωσης (GND) μεταξύ της εξόδου μιας συσκευής και της εισόδου μιας άλλης συσκευής
Η πρόσβαση στο Διαδίκτυο είναι το κλειδί
Για να κερδίσουμε την προσπάθειά μας, χρειαζόμαστε σύνδεση στο Διαδίκτυο για το Raspberry Pi. Για αυτό, έχετε εναλλακτικές λύσεις όπως η διασύνδεση Ethernet (LAN) με το οικιακό δίκτυο. Επίσης, ως εναλλακτική λύση, μια ικανοποιητική πορεία είναι να χρησιμοποιήσετε μια σύνδεση USB WiFi. Σε γενικές γραμμές αντιπροσωπεύοντας αυτό, χρειάζεστε έναν οδηγό για να το κάνετε να λειτουργεί. Κλίση λοιπόν προς αυτό με το Linux στην οριοθέτηση.
Παροχή ηλεκτρικού ρεύματος
Συνδέστε το καλώδιο Micro USB στην υποδοχή τροφοδοσίας του Raspberry Pi. Τρυπήστε και είμαστε έτοιμοι.
Σύνδεση στην οθόνη
Μπορούμε να έχουμε το καλώδιο HDMI συνδεδεμένο με άλλη οθόνη/τηλεόραση. Μερικές φορές, πρέπει να φτάσετε σε ένα Raspberry Pi χωρίς να το διασυνδέσετε σε μια οθόνη ή μπορεί να χρειαστεί να δείτε πληροφορίες από αυτό από αλλού. Ενδεχομένως, υπάρχουν δημιουργικοί και δημοσιονομικά έξυπνοι τρόποι για να αντιμετωπίσετε τα πράγματα που εξετάζετε. Ένα από αυτά χρησιμοποιεί - SSH (σύνδεση απομακρυσμένης γραμμής εντολών). Μπορείτε επίσης να χρησιμοποιήσετε το λογισμικό PuTTY για αυτό.
Βήμα 3: Κωδικοποίηση Python για το Raspberry Pi
Μπορείτε να δείτε τον κώδικα Python για τον αισθητήρα Raspberry Pi και MMA7455 στο GithubRepository μας.
Πριν συνεχίσετε τον κώδικα, εγγυηθείτε ότι διαβάζετε τα πρότυπα που δίνονται στο χρονικό του Readme και ότι ρυθμίζετε το Raspberry Pi όπως υποδεικνύεται από αυτόν. Θα είναι απλώς ανακουφιστικό για ένα λεπτό να γίνει υπό το φως των σημερινών συνθηκών.
Το επιταχυνσιόμετρο είναι ένα ηλεκτρομηχανικό gadget που θα μετρήσει τις δυνάμεις επιτάχυνσης. Αυτές οι δυνάμεις μπορεί να είναι στατικές, παρόμοιες με τη σταθερή δύναμη της βαρύτητας που τραβάει στα πόδια σας, ή θα μπορούσαν να είναι αλλοιώσιμες - προέρχονται από τη μετακίνηση ή τη δόνηση του επιταχυνσιόμετρου.
Η συνέχεια είναι ο κώδικας python και μπορείτε να κλωνοποιήσετε και να αλλάξετε τον κώδικα με οποιονδήποτε τρόπο θέλετε.
# Διανέμεται με άδεια ελεύθερης βούλησης.# Χρησιμοποιήστε το με όποιον τρόπο θέλετε, κερδοσκοπικό ή δωρεάν, υπό την προϋπόθεση ότι ταιριάζει στις άδειες των σχετικών έργων του. # MMA7455L # Αυτός ο κώδικας έχει σχεδιαστεί για να λειτουργεί με το Mini Module MMA7455L_I2CS I2C διαθέσιμο από το dcubestore.com # https://dcubestore.com/product/mma7455l-3-axis-low-g-digital-output-accelerometer-i%C2 %B2c-mini-module/
εισαγωγή smbus
χρόνο εισαγωγής
# Πάρτε το λεωφορείο I2C
bus = smbus. SMBus (1)
# Διεύθυνση MMA7455L, 0x1D (16)
# Επιλογή καταχωρητή ελέγχου λειτουργίας, 0x16 (22) # 0x01 (01) Λειτουργία μέτρησης, +/- 8g bus.write_byte_data (0x1D, 0x16, 0x01)
ώρα. ύπνος (0,5)
# Διεύθυνση MMA7455L, 0x1D (16)
# Ανάγνωση δεδομένων από 0x00 (00), 6 byte # X-Axis LSB, X-Axis MSB, Y-Axis LSB, Y-Axis MSB, Z-Axis LSB, Z-Axis MSB data = bus.read_i2c_block_data (0x1D, 0x00, 6)
# Μετατρέψτε τα δεδομένα σε 10-bit
xAccl = (δεδομένα [1] & 0x03) * 256 + δεδομένα [0] αν xAccl> 511: xAccl -= 1024 yAccl = (δεδομένα [3] & 0x03) * 256 + δεδομένα [2] εάν yAccl> 511: yAccl - = 1024 zAccl = (δεδομένα [5] & 0x03) * 256 + δεδομένα [4] εάν zAccl> 511: zAccl -= 1024
# Έξοδος δεδομένων στην οθόνη
εκτύπωση "Επιτάχυνση στον άξονα Χ: %d" %xAccl εκτύπωση "Επιτάχυνση στον άξονα Υ: %d" %yAccl εκτύπωση "Επιτάχυνση στον άξονα Ζ: %d" %zAccl
Βήμα 4: Η πρακτικότητα του κώδικα
Κάντε λήψη (ή git pull) τον κώδικα από το Github και ανοίξτε τον στο Raspberry Pi.
Εκτελέστε τις εντολές για να μεταγλωττίσετε και να ανεβάσετε τον κώδικα στο τερματικό και να δείτε την απόδοση στην οθόνη. Μετά από λίγα λεπτά, θα εμφανίσει κάθε μία από τις παραμέτρους. Μετά τη διασφάλιση ότι όλα λειτουργούν εύκολα, μπορείτε να χρησιμοποιείτε αυτήν την περιπλάνηση κάθε μέρα ή να την κάνετε να περιπλανιέται ως ένα μικρό μέρος μιας πολύ πιο σημαντικής εργασίας. Όποιες κι αν είναι οι ανάγκες σας, έχετε τώρα μια ακόμη προσθήκη στη συλλογή σας.
Βήμα 5: Εφαρμογές και δυνατότητες
Το MMA7455, κατασκευασμένο από την Freescale Semiconductor, ένα ψηφιακό επιταχυνσιόμετρο υψηλής απόδοσης 3 αξόνων υψηλής απόδοσης μπορεί να χρησιμοποιηθεί για Αλλαγές Δεδομένων Αισθητήρα, Προσανατολισμό Προϊόντος και Ανίχνευση Κινήσεων. Είναι ιδανικό για εφαρμογές όπως Mobile Phone/PMP/PDA: Orientation Detection (Portrait/Landscape), Stability Image, Text Scroll, Motion Dialing, Tap to Mute, Laptop PC: Anti-Theft, Gaming: Motion Detection, Auto-Wake/ Sleep για χαμηλή κατανάλωση ενέργειας και ψηφιακή φωτογραφική μηχανή: Σταθερότητα εικόνας.
Βήμα 6: Συμπέρασμα
Αν έχετε σκεφτεί να εξερευνήσετε το σύμπαν των αισθητήρων Raspberry Pi και I2C, τότε μπορείτε να σοκαριστείτε χρησιμοποιώντας τα βασικά του υλικού, την κωδικοποίηση, την τακτοποίηση, την έγκυρη κλπ. Όταν προσπαθείτε να είστε πιο δημιουργικοί μικρό εγχείρημα, δεν βλάπτει ποτέ να στραφεί σε εξωτερικές πηγές. Σε αυτήν τη μέθοδο, ενδέχεται να υπάρχουν μερικά απλά πράγματα που μπορεί να είναι απλά, ενώ μερικά μπορεί να σας δοκιμάσουν, να σας συγκινήσουν. Σε κάθε περίπτωση, μπορείτε να κάνετε έναν τρόπο και να τον αψεγάδιαστο αλλάζοντας και κάνοντας έναν σχηματισμό δικό σας.
Για παράδειγμα, μπορείτε να ξεκινήσετε με τη σκέψη ενός Πρωτότυπου βαρυμέτρου για τη μέτρηση του Τοπικού Βαρυτικού Πεδίου της Γης με MMA7455 και Raspberry Pi χρησιμοποιώντας Python. Στο παραπάνω εγχείρημα, χρησιμοποιήσαμε βασικούς υπολογισμούς. Η βασική αρχή του σχεδιασμού είναι η μέτρηση πολύ μικροσκοπικών κλασματικών αλλαγών μέσα στη βαρύτητα της Γης 1 g. Θα μπορούσατε λοιπόν να χρησιμοποιήσετε αυτόν τον αισθητήρα με διάφορους τρόπους που μπορείτε να λάβετε υπόψη. Ο αλγόριθμος είναι να μετρήσει το ρυθμό μεταβολής του κατακόρυφου διανύσματος βαρύτητας και στις τρεις κάθετες κατευθύνσεις προκαλώντας έναν τανυστή κλίσης βαρύτητας. Μπορεί να συναχθεί με τη διαφοροποίηση της τιμής της βαρύτητας σε δύο σημεία που χωρίζονται με μια μικρή κάθετη απόσταση, l και διαιρώντας με αυτήν την απόσταση. Θα προσπαθήσουμε να κάνουμε μια λειτουργική απόδοση αυτού του πρωτοτύπου νωρίτερα παρά αργότερα, η διαμόρφωση, ο κώδικας και η μοντελοποίηση λειτουργούν για ανάλυση θορύβου και δόνησης από δομή. Πιστεύουμε ότι αρέσει σε όλους σας!
Για την παρηγοριά σας, έχουμε ένα μαγευτικό βίντεο στο YouTube που μπορεί να βοηθήσει στην εξέτασή σας. Εμπιστευτείτε αυτήν την προσπάθεια για περαιτέρω διερεύνηση. Αν η ευκαιρία δεν χτυπήσει, χτίστε μια πόρτα.
Συνιστάται:
Μέτρηση της επιτάχυνσης χρησιμοποιώντας ADXL345 και σωματίδιο φωτονίου: 4 βήματα
Μέτρηση της επιτάχυνσης χρησιμοποιώντας το ADXL345 και το σωματίδιο φωτονίου: Το ADXL345 είναι ένα μικρό, λεπτό, επιταχυνσιόμετρο 3 αξόνων, εξαιρετικά χαμηλής ισχύος, με υψηλή ανάλυση (13 bit) έως και ± 16 g. Τα ψηφιακά δεδομένα εξόδου διαμορφώνονται ως συμπλήρωμα δύο δυαδικών ψηφίων 16 και είναι προσβάσιμα μέσω της ψηφιακής διεπαφής I2 C. Μετρά τα
Μέτρηση της επιτάχυνσης χρησιμοποιώντας ADXL345 και Raspberry Pi: 4 βήματα
Μέτρηση της επιτάχυνσης με χρήση ADXL345 και Raspberry Pi: Το ADXL345 είναι ένα μικρό, λεπτό επιταχυνσιόμετρο 3 αξόνων, εξαιρετικά χαμηλής ισχύος, με υψηλή ανάλυση (13 bit) έως και ± 16 g. Τα ψηφιακά δεδομένα εξόδου διαμορφώνονται ως συμπλήρωμα δύο δυαδικών ψηφίων 16 και είναι προσβάσιμα μέσω της ψηφιακής διεπαφής I2 C. Μετρά τα
Παρακολούθηση της επιτάχυνσης χρησιμοποιώντας Raspberry Pi και AIS328DQTR χρησιμοποιώντας Python: 6 βήματα
Παρακολούθηση της επιτάχυνσης με χρήση Raspberry Pi και AIS328DQTR με χρήση Python: Η επιτάχυνση είναι πεπερασμένη, νομίζω σύμφωνα με ορισμένους νόμους της Φυσικής.- Terry Riley Ένας τσίτα χρησιμοποιεί καταπληκτική επιτάχυνση και γρήγορες αλλαγές ταχύτητας όταν κυνηγάει. Το ταχύτερο πλάσμα στη στεριά χρησιμοποιεί κατά καιρούς τον κορυφαίο ρυθμό του για να πιάσει το θήραμα. Ο
Παρακολούθηση θερμοκρασίας και υγρασίας χρησιμοποιώντας SHT25 και Raspberry Pi: 5 βήματα
Παρακολούθηση θερμοκρασίας και υγρασίας χρησιμοποιώντας SHT25 και Raspberry Pi: Δουλέψαμε πρόσφατα σε διάφορα έργα που απαιτούσαν παρακολούθηση θερμοκρασίας και υγρασίας και στη συνέχεια συνειδητοποιήσαμε ότι αυτές οι δύο παράμετροι παίζουν πραγματικά κεντρικό ρόλο στην εκτίμηση της αποτελεσματικότητας λειτουργίας ενός συστήματος. Και οι δύο στο indus
Μέτρηση επιτάχυνσης χρησιμοποιώντας BMA250 και Raspberry Pi: 4 βήματα
Μέτρηση επιτάχυνσης χρησιμοποιώντας BMA250 και Raspberry Pi: Το BMA250 είναι ένα μικρό, λεπτό, επιταχυνσιόμετρο 3 αξόνων, εξαιρετικά χαμηλής ισχύος, με υψηλή ανάλυση (13-bit) έως και ± 16 g. Τα ψηφιακά δεδομένα εξόδου διαμορφώνονται ως συμπλήρωμα δύο δυαδικών 16 bit και είναι προσβάσιμα μέσω της ψηφιακής διεπαφής I2C. Μετρά τη στατική