Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-13 06:57
Ο TSL45315 είναι ένας ψηφιακός αισθητήρας φωτισμού περιβάλλοντος. Προσαρμόζει την ανταπόκριση των ανθρώπινων ματιών υπό διάφορες συνθήκες φωτισμού. Οι συσκευές έχουν τρεις επιλεγόμενους χρόνους ενσωμάτωσης και παρέχουν άμεση έξοδο lux 16-bit μέσω διεπαφής διαύλου I2C. Η συσκευή περιέχει μια συστοιχία φωτοδιόδων, έναν ενσωματωμένο μετατροπέα αναλογικού σε ψηφιακό (ADC), κυκλώματα επεξεργασίας σήματος, λογική υπολογισμού lux και σειριακή διεπαφή I2C σε ένα ολοκληρωμένο κύκλωμα CMOS για την παροχή δεδομένων lux. Εδώ είναι η επίδειξή του με arduino nano.
Βήμα 1: Αυτό που χρειάζεστε..
1. Arduino Nano
2. TSL45315
3. Καλώδιο I²C
4. I²C Shield για Arduino Nano
Βήμα 2: Σύνδεση:
Πάρτε μια ασπίδα I2C για το Arduino Nano και σπρώξτε την απαλά πάνω από τις ακίδες του Nano.
Στη συνέχεια, συνδέστε το ένα άκρο του καλωδίου I2C στον αισθητήρα TSL45315 και το άλλο άκρο στην ασπίδα I2C.
Οι συνδέσεις φαίνονται στην παραπάνω εικόνα.
Βήμα 3: Κωδικός:
Μπορείτε να κατεβάσετε τον κωδικό Arduino για το TSL45315 από το αποθετήριο GitHub-Dcube Store.
Εδώ είναι ο σύνδεσμος για το ίδιο:
github.com/DcubeTechVentures/TSL45315…
Περιλαμβάνουμε τη βιβλιοθήκη Wire.h για τη διευκόλυνση της επικοινωνίας I2c του αισθητήρα με την πλακέτα Arduino.
Μπορείτε επίσης να αντιγράψετε τον κώδικα από εδώ, δίνεται ως εξής:
// Διανέμεται με άδεια ελεύθερης βούλησης.
// Χρησιμοποιήστε το με όποιον τρόπο θέλετε, κερδοφόρο ή δωρεάν, υπό την προϋπόθεση ότι ταιριάζει στις άδειες των σχετικών έργων του.
// TSL45315
// Αυτός ο κώδικας έχει σχεδιαστεί για να λειτουργεί με το Mini Module TSl45315_I2CS I2C που διατίθεται από το Dcube Store.
#περιλαμβάνω
// Η διεύθυνση TSL45315 I2C είναι 0x29 (41)
#define Addr 0x29
void setup ()
{
// Αρχικοποίηση επικοινωνίας I2C ως MASTER
Wire.begin ();
// Αρχικοποίηση σειριακής επικοινωνίας, ρυθμισμένος ρυθμός baud = 9600
Serial.begin (9600);
// Έναρξη μετάδοσης I2C
Wire.beginTransmission (Addr);
// Επιλέξτε μητρώο ελέγχου
Wire.write (0x80);
// Κανονική λειτουργία
Wire.write (0x03);
// Διακοπή μετάδοσης I2C
Wire.endTransmission ();
// Έναρξη μετάδοσης I2C
Wire.beginTransmission (Addr);
// Επιλέξτε καταχωρητής διαμόρφωσης
Wire.write (0x81);
// Πολλαπλασιαστής 1x, Χρώμα: 400ms
Wire.write (0x00);
// Διακοπή μετάδοσης I2C
Wire.endTransmission ();
καθυστέρηση (300)?
}
κενός βρόχος ()
{
ανυπόγραφα δεδομένα int [2];
// Έναρξη μετάδοσης I2C
Wire.beginTransmission (Addr);
// Επιλέξτε μητρώο δεδομένων
Wire.write (0x84);
// Διακοπή μετάδοσης I2C
Wire.endTransmission ();
// Ζητήστε 2 byte δεδομένων
Wire.requestFrom (Addr, 2)?
// Διαβάστε 2 byte δεδομένων
// φωτεινότητα lsb, φωτεινότητα msb
εάν (Wire.available () == 2)
{
δεδομένα [0] = Wire.read ();
δεδομένα [1] = Wire.read ();
}
// Μετατρέψτε τα δεδομένα
float luminance = data [1] * 256 + data [0];
// Έξοδος δεδομένων σε σειριακή οθόνη
Serial.print ("Φωτεινότητα περιβάλλοντος φωτός:");
Serial.print (φωτεινότητα);
Serial.println ("lux");
καθυστέρηση (300)?
}
Βήμα 4: Εφαρμογές:
Το μεγάλο δυναμικό εύρος του αισθητήρα φωτισμού περιβάλλοντος το καθιστά ιδιαίτερα χρήσιμο σε εξωτερικές εφαρμογές όπου εκτίθεται σε άμεσο ηλιακό φως. Η συσκευή είναι ιδανική για χρήση στον αυτόματο έλεγχο των φώτων του δρόμου και της ασφάλειας, της πινακίδας και του φωτισμού αυτοκινήτων. Οι συσκευές TSL45315 μπορούν επίσης να χρησιμοποιηθούν σε στερεά κατάσταση και γενικό φωτισμό για αυτόματο έλεγχο και συλλογή φωτός ημέρας για μεγιστοποίηση της εξοικονόμησης ενέργειας. Άλλες εφαρμογές περιλαμβάνουν έλεγχο οπίσθιου φωτισμού για μεγαλύτερη διάρκεια ζωής της μπαταρίας και βελτιστοποίηση της ορατότητας σε κινητά τηλέφωνα, tablet και φορητούς υπολογιστές.