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

Παρακολούθηση θερμοκρασίας και υγρασίας χρησιμοποιώντας SHT25 και Raspberry Pi: 5 βήματα
Παρακολούθηση θερμοκρασίας και υγρασίας χρησιμοποιώντας SHT25 και Raspberry Pi: 5 βήματα

Βίντεο: Παρακολούθηση θερμοκρασίας και υγρασίας χρησιμοποιώντας SHT25 και Raspberry Pi: 5 βήματα

Βίντεο: Παρακολούθηση θερμοκρασίας και υγρασίας χρησιμοποιώντας SHT25 και Raspberry Pi: 5 βήματα
Βίντεο: Καταγραφικό Wifi Θερμοκρασίας και υγρασίας για απομακρυσμένη παρακολούθηση με εφαρμογή στο κινητό PC 2024, Νοέμβριος
Anonim
Image
Image

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

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

Το υλικό που θα χρειαστείτε για αυτόν τον σκοπό είναι:

1. SHT25

2. Raspberry Pi

3. Καλώδιο I2C

4. Ασπίδα I2C για βατόμουρο pi

Βήμα 1: Επισκόπηση SHT25:

Ο, τι χρειάζεσαι….!!
Ο, τι χρειάζεσαι….!!

Πρώτα απ 'όλα ας ξεκινήσουμε με τη βασική κατανόηση του αισθητήρα και του πρωτοκόλλου στο οποίο λειτουργεί.

SHT25 I2C Αισθητήρας υγρασίας και θερμοκρασίας ± 1,8%RH ± 0,2 ° C Μικρή μονάδα I2C. Είναι υψηλής ακρίβειας ο αισθητήρας υγρασίας και θερμοκρασίας έχει γίνει βιομηχανικό πρότυπο όσον αφορά τον παράγοντα μορφής και την ευφυΐα, παρέχοντας βαθμονομημένα, γραμμικά σήματα αισθητήρων σε ψηφιακή μορφή, I2C. Ενσωματωμένος με εξειδικευμένο αναλογικό και ψηφιακό κύκλωμα, αυτός ο αισθητήρας είναι μία από τις πιο αποτελεσματικές συσκευές για τη μέτρηση της θερμοκρασίας και της υγρασίας.

Το πρωτόκολλο επικοινωνίας στο οποίο λειτουργεί ο αισθητήρας είναι I2C. Το I2C σημαίνει το ενσωματωμένο κύκλωμα. Είναι ένα πρωτόκολλο επικοινωνίας στο οποίο η επικοινωνία πραγματοποιείται μέσω γραμμών SDA (σειριακά δεδομένα) και SCL (σειριακό ρολόι). Επιτρέπει τη σύνδεση πολλαπλών συσκευών ταυτόχρονα. Είναι ένα από τα πιο απλά και αποτελεσματικά πρωτόκολλα επικοινωνίας.

Βήμα 2: Αυτό που χρειάζεστε …

Ο, τι χρειάζεσαι….!!
Ο, τι χρειάζεσαι….!!
Ο, τι χρειάζεσαι….!!
Ο, τι χρειάζεσαι….!!
Ο, τι χρειάζεσαι….!!
Ο, τι χρειάζεσαι….!!

Τα υλικά που χρειαζόμαστε για την επίτευξη του στόχου μας περιλαμβάνουν τα ακόλουθα στοιχεία υλικού:

1. Αισθητήρας υγρασίας και θερμοκρασίας SHT25

2. Βατόμουρο πι

3. Καλώδιο I2C

4. I2C Shield για το Raspberry Pi

5. Καλώδιο Ethernet

Βήμα 3: Σύνδεση υλικού:

Σύνδεση υλικού
Σύνδεση υλικού
Σύνδεση υλικού
Σύνδεση υλικού

Το τμήμα σύνδεσης υλικού εξηγεί βασικά τις συνδέσεις καλωδίωσης που απαιτούνται μεταξύ του αισθητήρα και του raspberry pi. Η διασφάλιση των σωστών συνδέσεων είναι η βασική ανάγκη ενώ εργάζεστε σε οποιοδήποτε σύστημα για την επιθυμητή έξοδο. Έτσι, οι απαιτούμενες συνδέσεις είναι οι εξής:

  • Το SHT25 θα λειτουργήσει μέσω I2C. Ακολουθεί το παράδειγμα διαγράμματος καλωδίωσης, που δείχνει πώς συνδέεται κάθε διασύνδεση του αισθητήρα.
  • Εκτός συσκευασίας, ο πίνακας έχει διαμορφωθεί για διεπαφή I2C, ως εκ τούτου συνιστούμε τη χρήση αυτής της σύνδεσης εάν είστε αλλιώς αγνωστικιστής. Το μόνο που χρειάζεστε είναι τέσσερα καλώδια!
  • Απαιτούνται μόνο τέσσερις συνδέσεις ακροδέκτες Vcc, Gnd, SCL και SDA και αυτές συνδέονται με τη βοήθεια καλωδίου I2C.

Αυτές οι συνδέσεις φαίνονται στις παραπάνω εικόνες.

Βήμα 4: Παρακολούθηση θερμοκρασίας και υγρασίας Κωδικός Java:

Κωδικός Java παρακολούθησης θερμοκρασίας και υγρασίας
Κωδικός Java παρακολούθησης θερμοκρασίας και υγρασίας
Κωδικός Java παρακολούθησης θερμοκρασίας και υγρασίας
Κωδικός Java παρακολούθησης θερμοκρασίας και υγρασίας

Το πλεονέκτημα της χρήσης του raspberry pi είναι ότι σας παρέχει την ευελιξία της γλώσσας προγραμματισμού στην οποία θέλετε να προγραμματίσετε τον πίνακα προκειμένου να διασυνδέσετε τον αισθητήρα με αυτό. Αξιοποιώντας αυτό το πλεονέκτημα αυτού του πίνακα, αποδεικνύουμε εδώ τον προγραμματισμό του στην Java. Μπορείτε να κατεβάσετε τον κώδικα Java για το SHT25 από την κοινότητα github που είναι το Dcube Store.

Εκτός από την ευκολία των χρηστών, εξηγούμε τον κώδικα και εδώ:

Ως πρώτο βήμα κωδικοποίησης πρέπει να κατεβάσετε τη βιβλιοθήκη pi4j σε περίπτωση java, επειδή αυτή η βιβλιοθήκη υποστηρίζει τις λειτουργίες που χρησιμοποιούνται στον κώδικα. Έτσι, για να κατεβάσετε τη βιβλιοθήκη μπορείτε να επισκεφθείτε τον ακόλουθο σύνδεσμο:

pi4j.com/install.html

Μπορείτε να αντιγράψετε τον λειτουργικό κώδικα java για αυτόν τον αισθητήρα από εδώ επίσης:

εισαγωγή com.pi4j.io.i2c. I2CBus;

εισαγωγή com.pi4j.io.i2c. I2CDevice; εισαγωγή com.pi4j.io.i2c. I2CFactory? εισαγωγή java.io. IOException; public class SHT25 {public static void main (String args ) ρίχνει Εξαίρεση {// Δημιουργία διαύλου I2C I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1); // Λήψη συσκευής I2C, η διεύθυνση SHT25 I2C είναι 0x40 (64) I2CDevice device = Bus.getDevice (0x40); // Αποστολή εντολής μέτρησης θερμοκρασίας, ΟΧΙ HOLD κύρια συσκευή. Γράψτε ((byte) 0xF3); Thread.sleep (500); // Διαβάστε 2 byte δεδομένων // temp msb, temp lsb byte data = new byte [2]; device.read (δεδομένα, 0, 2); // Μετατρέψτε τα δεδομένα διπλά cTemp = (((((δεδομένα [0] & 0xFF) * 256) + (δεδομένα [1] & 0xFF)) * 175.72) / 65536.0) - 46.85; διπλό fTemp = (cTemp * 1.8) + 32; // Αποστολή εντολής μέτρησης υγρασίας, NO HOLD master device.write ((byte) 0xF5); Thread.sleep (500); // Διαβάστε 2 byte δεδομένων // υγρασία msb, υγρασία lsb device.read (δεδομένα, 0, 2); // Μετατρέψτε τα δεδομένα διπλή υγρασία = (((((δεδομένα [0] & 0xFF) * 256) + (δεδομένα [1] & 0xFF)) * 125.0) / 65536.0) - 6; // Έξοδος δεδομένων στην οθόνη System.out.printf ("Σχετική υγρασία: %.2f %% RH %n", υγρασία); System.out.printf ("Θερμοκρασία σε Κελσίου: %.2f C %n", cTemp); System.out.printf ("Θερμοκρασία στο Farhenheit: %.2f F %n", fTemp); }}

Η έξοδος του κώδικα εμφανίζεται επίσης στην παραπάνω εικόνα.

Η βιβλιοθήκη που διευκολύνει την επικοινωνία i2c μεταξύ του αισθητήρα και της πλακέτας είναι pi4j, τα διάφορα πακέτα I2CBus, I2CDevice και I2CFactory βοηθούν στη δημιουργία της σύνδεσης.

εισαγωγή com.pi4j.io.i2c. I2CBus;

εισαγωγή com.pi4j.io.i2c. I2CDevice; εισαγωγή com.pi4j.io.i2c. I2CFactory? εισαγωγή java.io. IOException;

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

device.write ((byte) 0xF3);

Thread.sleep (500);

// Διαβάστε 2 byte δεδομένων

// temp msb, temp lsb

byte data = new byte [2];

device.read (δεδομένα, 0, 2);

// Αποστολή εντολής μέτρησης υγρασίας, NO HOLD master

device.write ((byte) 0xF5);

Thread.sleep (500);

// Διαβάστε 2 byte δεδομένων

// υγρασία msb, υγρασία lsb

device.read (δεδομένα, 0, 2);

Βήμα 5: Εφαρμογές:

Ο αισθητήρας θερμοκρασίας και σχετικής υγρασίας SHT25 έχει διάφορες βιομηχανικές εφαρμογές όπως παρακολούθηση θερμοκρασίας, περιφερειακή θερμική προστασία υπολογιστή. Έχουμε επίσης χρησιμοποιήσει αυτόν τον αισθητήρα σε εφαρμογές μετεωρολογικών σταθμών καθώς και σύστημα παρακολούθησης θερμοκηπίου.

Συνιστάται: