Πίνακας περιεχομένων:
Βίντεο: Raspberry Pi - TMD26721 Infrared Digital Proximity Detector Python Tutorial: 4 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Ο TMD26721 είναι ένας υπέρυθρο ψηφιακός ανιχνευτής εγγύτητας που παρέχει ένα πλήρες σύστημα ανίχνευσης εγγύτητας και λογική ψηφιακής διασύνδεσης σε μια ενιαία μονάδα στήριξης επιφάνειας 8 ακίδων. Η ανίχνευση εγγύτητας περιλαμβάνει βελτιωμένο σήμα προς θόρυβο και ακρίβεια. Ένας καταχωρητής μετατόπισης εγγύτητας επιτρέπει αντιστάθμιση οπτικής αντιστάθμισης συστήματος μεταξύ του LED IR και του αισθητήρα. Εδώ είναι η επίδειξή του με raspberry pi χρησιμοποιώντας κώδικα python.
Βήμα 1: Αυτό που χρειάζεστε..
1. Raspberry Pi
2. TMD26721
3. Καλώδιο I²C
4. I²C Shield για το Raspberry Pi
5. Καλώδιο Ethernet
Βήμα 2: Συνδέσεις:
Πάρτε μια ασπίδα I2C για raspberry pi και σπρώξτε την απαλά πάνω από τις καρφίτσες gpio του raspberry pi.
Στη συνέχεια, συνδέστε το ένα άκρο του καλωδίου I2C στον αισθητήρα TMD26721 και το άλλο άκρο στην ασπίδα I2C.
Συνδέστε επίσης το καλώδιο Ethernet στο pi ή μπορείτε να χρησιμοποιήσετε μια μονάδα WiFi.
Οι συνδέσεις φαίνονται στην παραπάνω εικόνα.
Βήμα 3: Κωδικός:
Μπορείτε να κατεβάσετε τον κωδικό python για το TMD26721 από το αποθετήριο github μας- ControlEverythingCommunity
Εδώ είναι ο σύνδεσμος για το ίδιο:
github.com/ControlEverythingCommunity/TMD2…
Το φύλλο δεδομένων του TMD26721 μπορείτε να το βρείτε εδώ:
s3.amazonaws.com/controleverything.media/c…
Έχουμε χρησιμοποιήσει τη βιβλιοθήκη SMBus για κώδικα python, τα βήματα για την εγκατάσταση του SMBus στο raspberry pi περιγράφονται εδώ:
pypi.python.org/pypi/smbus-cffi/0.5.1
Μπορείτε επίσης να αντιγράψετε τον κώδικα από εδώ, δίνεται ως εξής:
# Διανέμεται με άδεια ελεύθερης βούλησης.
# Χρησιμοποιήστε το με όποιον τρόπο θέλετε, κερδοφόρα ή δωρεάν, υπό την προϋπόθεση ότι ταιριάζει στις άδειες των σχετικών έργων του.
# TMD26721
# Αυτός ο κώδικας έχει σχεδιαστεί για να λειτουργεί με το Mini Module TMD26721_I2CS I2C διαθέσιμο από το ControlEverything.com.
#
εισαγωγή smbus
χρόνο εισαγωγής
# Πάρτε το λεωφορείο I2C
bus = smbus. SMBus (1)
# Διεύθυνση TMD26721, 0x39 (57)
# Επιλέξτε ενεργοποίηση καταχωρητή, 0x00 (0), με καταχωρητή εντολών 0x80 (128)
# 0x0D (14) Ενεργοποίηση, Αναμονή ενεργοποιημένη, Εγγύτητα ενεργοποιημένη
bus.write_byte_data (0x39, 0x00 | 0x80, 0x0D)
# Διεύθυνση TMD26721, 0x39 (57)
# Επιλέξτε μητρώο ελέγχου χρόνου εγγύτητας, 0x02 (2), με καταχωρητή εντολών 0x80 (128)
# 0xFF (255) Χρόνος = 2,73 ms
bus.write_byte_data (0x39, 0x02 | 0x80, 0xFF)
# Διεύθυνση TMD26721, 0x39 (57)
# Επιλέξτε καταχωρητή χρόνου αναμονής 0x03 (03), με καταχωρητή εντολών, 0x80 (128)# 0xFF (255) Χρόνος - 2,73ms
bus.write_byte_data (0x39, 0x03 | 0x80, 0xFF)
Διεύθυνση# TMD26721, 0x39 (57# Επιλογή καταχωρητή παλμών, 0x0E (14), με καταχωρητή εντολών 0x80 (128)
# 0x20 (32) Αριθμός παλμών = 32
bus.write_byte_data (0x39, 0x0E | 0x80, 0x20)
# Διεύθυνση TMD26721, 0x39 (57)
# Επιλογή καταχωρητή ελέγχου, 0x0F (15), με καταχωρητή εντολών 0x80 (128)
# 0x20 (32) Η εγγύτητα χρησιμοποιεί δίοδο CH1
bus.write_byte_data (0x39, 0x0F | 0x80, 0x20)
ώρα. ύπνος (0,8)
# Διεύθυνση TMD26721, 0x39 (57)
# Ανάγνωση δεδομένων από 0x18 (57) με καταχωρητή εντολών 0x80 (128), 2 byte
# Proximity lsb, Proximity msb
δεδομένα = bus.read_i2c_block_data (0x39, 0x18 | 0x80, 2)
# Μετατρέψτε τα δεδομένα
εγγύτητα = δεδομένα [1] * 256 + δεδομένα [0]
# Έξοδος δεδομένων στην οθόνη
εκτύπωση "Εγγύτητα της συσκευής: %d" %εγγύτητα
Βήμα 4: Εφαρμογές:
Το TMD26721 είναι ένας ψηφιακός αισθητήρας εγγύτητας υπέρυθρης ακτινοβολίας που μπορεί να ενσωματωθεί στο Mobile Handset Touchscreen Control and Automatic Speakerphone Enable. Μπορεί επίσης να παρέχει αντικατάσταση μηχανικού διακόπτη καθώς και ευθυγράμμιση χαρτιού. Η υψηλή αποδοτικότητα και αξιοπιστία του το καθιστά κατάλληλο για διάφορες εφαρμογές ανίχνευσης εγγύτητας.
Συνιστάται:
Air Piano Using IR Proximity Sensor, Speaker and Arduino Uno (Upgraded/part-2): 6 βήματα
Air Piano Using IR Proximity Sensor, Speaker and Arduino Uno (Upgraded/part-2): Αυτή είναι μια αναβαθμισμένη έκδοση του προηγούμενου έργου air piano;. Εδώ χρησιμοποιώ ένα ηχείο JBL ως έξοδο. Έχω συμπεριλάβει επίσης ένα κουμπί ευαίσθητο στην αφή για να αλλάξετε τις λειτουργίες σύμφωνα με τις απαιτήσεις. Για παράδειγμα- Λειτουργία σκληρού μπάσου, Κανονική λειτουργία, Υψηλή θερμοκρασία
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Digital Accelerometer Python Tutorial: 4 βήματα
Raspberry Pi MMA8452Q 3-Axis 12-bit/8-bit Acηφιακό επιταχυνσιόμετρο Python Tutorial: Το MMA8452Q είναι ένα έξυπνο, χαμηλής ισχύος, τριών αξόνων, χωρητικό, μικρομηχανικό επιταχυνσιόμετρο με 12 bits ανάλυσης. Παρέχονται ευέλικτες προγραμματιζόμενες επιλογές χρήστη με τη βοήθεια ενσωματωμένων λειτουργιών στο επιταχυνσιόμετρο, διαμορφώσιμες σε δύο διακόπτες
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: 4 Βήματα
Raspberry Pi - BH1715 Digital Ambient Light Sensor Python Tutorial: Το BH1715 είναι ένας ψηφιακός αισθητήρας φωτισμού περιβάλλοντος με διεπαφή διαύλου I²C. Το BH1715 χρησιμοποιείται συνήθως για τη λήψη δεδομένων φωτισμού περιβάλλοντος για τη ρύθμιση της ισχύος του οπίσθιου φωτισμού LCD και πληκτρολογίου για κινητές συσκευές. Αυτή η συσκευή προσφέρει ανάλυση 16-bit και πρόσθετο
Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: 4 Βήματα
Raspberry Pi - TMP007 Infrared Thermopile Sensor Python Tutorial: Το TMP007 είναι ένας αισθητήρας υπερύθρου θερμοστοιχείου που μετρά τη θερμοκρασία ενός αντικειμένου χωρίς να έρχεται σε επαφή με αυτό. Η υπέρυθρη ενέργεια που εκπέμπεται από το αντικείμενο στο πεδίο του αισθητήρα απορροφάται από το θερμοστοιχείο που είναι ενσωματωμένο στον αισθητήρα. Το θερμοπίδακα
Raspberry Pi - TMP007 Infrared Thermopile Sensor Java Tutorial: 4 Βήματα
Raspberry Pi - TMP007 Infrared Thermopile Sensor Java Tutorial: Το TMP007 είναι ένας αισθητήρας υπερύθρων θερμοπίστας που μετρά τη θερμοκρασία ενός αντικειμένου χωρίς να έρχεται σε επαφή με αυτό. Η υπέρυθρη ενέργεια που εκπέμπεται από το αντικείμενο στο πεδίο του αισθητήρα απορροφάται από το θερμοστοιχείο που είναι ενσωματωμένο στον αισθητήρα. Το θερμοπίδακα