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

Διασύνδεση αισθητήρα θερμοκρασίας DS18B20 με Arduino και ESP8266: 8 βήματα
Διασύνδεση αισθητήρα θερμοκρασίας DS18B20 με Arduino και ESP8266: 8 βήματα

Βίντεο: Διασύνδεση αισθητήρα θερμοκρασίας DS18B20 με Arduino και ESP8266: 8 βήματα

Βίντεο: Διασύνδεση αισθητήρα θερμοκρασίας DS18B20 με Arduino και ESP8266: 8 βήματα
Βίντεο: ESP32 Modbus Επικοινωνία | FLProg SCADA 2024, Ιούλιος
Anonim
Αισθητήρας θερμοκρασίας διασύνδεσης DS18B20 με Arduino και ESP8266
Αισθητήρας θερμοκρασίας διασύνδεσης DS18B20 με Arduino και ESP8266

Γεια, τι συμβαίνει, παιδιά! Akarsh εδώ από το CETech.

Σήμερα θα προσθέσουμε έναν νέο αισθητήρα στο οπλοστάσιό μας, γνωστό ως αισθητήρα θερμοκρασίας DS18B20. Είναι ένας αισθητήρας θερμοκρασίας παρόμοιος με τον DHT11 αλλά έχει διαφορετικό σύνολο εφαρμογών. Θα το συγκρίνουμε με διαφορετικούς τύπους αισθητήρων θερμοκρασίας και θα ρίξουμε μια ματιά στις τεχνικές προδιαγραφές αυτών των αισθητήρων.

Προς το τέλος αυτού του σεμιναρίου, θα διασυνδέσουμε το DS18B20 με το Arduino και το ESP8266 για εμφάνιση θερμοκρασίας. Στην περίπτωση του Arduino, η θερμοκρασία θα εμφανίζεται στο Serial Monitor και για το ESP8266 θα εμφανίζουμε τη θερμοκρασία σε έναν διακομιστή ιστού.

Ας ξεκινήσουμε με τη διασκέδαση τώρα.

Βήμα 1: Αποκτήστε PCB για το κατασκευασμένο έργο σας

Αποκτήστε PCB για το έργο σας
Αποκτήστε PCB για το έργο σας

Πρέπει να ελέγξετε το OurPCB για να λάβετε PCB για το έργο σας που κατασκευάζεται στο διαδίκτυο.

Χρησιμοποιούν αξιόπιστα εξαρτήματα που προέρχονται από διαπιστευμένους προμηθευτές όπως τα Arrow, Avnet, Future Electronics κ.λπ. και προσφέρουν λογικές τιμές που μεγιστοποιούν τελικά τα περιθώρια κέρδους του χρήστη. Εξειδικευμένοι στην τεχνολογία πολλαπλών στρωμάτων και τεχνολογίας Rigid-flex, προτεραιότητά τους είναι η διατήρηση προτύπων υψηλής ποιότητας.

Το OurPCB επικεντρώνεται σε παραγγελίες μικρού ή μεσαίου όγκου και παρέχει μια πολύ ανταγωνιστική τιμή για τον όγκο από 1-100 τ.μ. Απλώς πρέπει να ανεβάσετε τα αρχεία σας σε οποιαδήποτε από τις διαθέσιμες μορφές (Gerber,.pcb,.pcbdoc ή.cam) και τα πρωτότυπα PCB θα παραδοθούν στο κατώφλι σας.

Μπορείτε επίσης να ελέγξετε τον συνεργάτη τους WellPCB για καλές προσφορές.

Βήμα 2: Σύγκριση μεταξύ διαφορετικών τύπων αισθητήρων θερμοκρασίας

Σύγκριση μεταξύ διαφορετικών τύπων αισθητήρων θερμοκρασίας
Σύγκριση μεταξύ διαφορετικών τύπων αισθητήρων θερμοκρασίας
Σύγκριση μεταξύ διαφορετικών τύπων αισθητήρων θερμοκρασίας
Σύγκριση μεταξύ διαφορετικών τύπων αισθητήρων θερμοκρασίας

Η παραπάνω σύγκριση έχει τρεις αισθητήρες DS18B20, DHT11 και NTC Thermistor, αλλά εδώ θα περιορίσουμε τη σύγκρισή μας μόνο στους ψηφιακούς αισθητήρες. Δεν σημαίνει ότι ο θερμίστορ NTC δεν είναι τόσο σημαντικός όσο οι ψηφιακοί αισθητήρες. Στην πραγματικότητα, η ανάπτυξη ψηφιακών αισθητήρων είναι δυνατή μόνο λόγω του NTC Thermistor. Οι ψηφιακοί αισθητήρες αποτελούνται από NTC Thermistor συνδεδεμένους με μερικούς μικροεπεξεργαστές, ο οποίος δίνει τελικά την ψηφιακή έξοδο.

Τα κύρια σημεία της σύγκρισης είναι:

1. Το DS18B20 είναι αδιάβροχο και ανθεκτικό ενώ το DHT11 δεν είναι γι 'αυτό σε σενάρια και εφαρμογές στην πραγματική ζωή όπου απαιτείται ανίχνευση επαφών, το DS18B20 χρησιμοποιείται γενικά ενώ το DHT11 χρησιμοποιείται σε υπαίθριες εφαρμογές περιβάλλοντος.

2. Το DS18B20 εκτοξεύει δεδομένα 9-12 bit δεδομένων, ενώ το DHT11 δίνει δεδομένα 8 bit.

3. Το DS18B20 δίνει θερμοκρασία μόνο ενώ το DHT11 μπορεί να χρησιμοποιηθεί για τη λήψη θερμοκρασίας καθώς και υγρασίας.

4. Το DS18B20 καλύπτει ένα ευρύτερο εύρος θερμοκρασιών σε σύγκριση με το DHT11 και έχει επίσης καλύτερη ακρίβεια σε σύγκριση με το DHT (+ 0,5 μοίρες σε σύγκριση με + 2 βαθμούς για το DHT11).

5. Όσον αφορά την τιμολόγηση, αυτοί οι αισθητήρες έχουν μια μικρή διαφορά μεταξύ τους καθώς οι δύο διαφορετικές παραλλαγές του DS18B20 που είναι συσκευασμένου σύρματος και του πακέτου TO92 έχουν κόστος περίπου 1 $ και 0,4 $, ενώ το DHT11 έχει κόστος περίπου 0,6 $.

Μπορούμε λοιπόν να πούμε ότι το DS18B20 είναι κάπως καλύτερο από το DHT11, αλλά μια καλύτερη επιλογή μπορεί να γίνει μόνο με βάση την εφαρμογή για την οποία απαιτείται αισθητήρας.

Μπορείτε να λάβετε περισσότερες γνώσεις σχετικά με το DS18B20 διαβάζοντας το φύλλο δεδομένων του από εδώ.

Βήμα 3: Σύνδεση του DS18B20 με το Arduino

Σύνδεση DS18B20 με Arduino
Σύνδεση DS18B20 με Arduino
Σύνδεση DS18B20 με Arduino
Σύνδεση DS18B20 με Arduino

Εδώ θα συνδέσουμε τον αισθητήρα θερμοκρασίας DS18B20 με το Arduino για να λάβουμε τη θερμοκρασία και να τον εμφανίσουμε στη σειριακή οθόνη.

Για αυτό το βήμα απαιτούμε- Arduino UNO, αισθητήρα θερμοκρασίας DS18B20 (συσκευασμένος τύπος ή πακέτο TO92 ό, τι είναι διαθέσιμο) και αντίσταση 4,7kohm

Ο αισθητήρας DS18B20 έχει 3 καλώδια που είναι μαύρα, κόκκινα και κίτρινα. Το μαύρο είναι για το GND, το κόκκινο είναι για το Vcc ενώ το κίτρινο είναι το pin σήματος

1. Συνδέστε τον πείρο GND ή το μαύρο καλώδιο του αισθητήρα στο GND.

2. Συνδέστε τον πείρο Vcc ή το κόκκινο καλώδιο του αισθητήρα στην παροχή 5V.

3. Συνδέστε τον πείρο σήματος ή το κίτρινο καλώδιο στο 5V μέσω αντίστασης 4,7kohm και επίσης συνδέστε αυτόν τον ακροδέκτη σήματος στην Pinηφιακή ακίδα αριθ. 12 του Arduino.

Μπορείτε να ανατρέξετε στο σχηματικό σχήμα που παρουσιάζεται παραπάνω για καλύτερη κατανόηση.

Βήμα 4: Κωδικοποίηση του Arduino για εμφάνιση θερμοκρασίας

Κωδικοποίηση της θερμοκρασίας εμφάνισης του Arduino
Κωδικοποίηση της θερμοκρασίας εμφάνισης του Arduino
Κωδικοποίηση της θερμοκρασίας εμφάνισης του Arduino
Κωδικοποίηση της θερμοκρασίας εμφάνισης του Arduino
Κωδικοποίηση της θερμοκρασίας εμφάνισης του Arduino
Κωδικοποίηση της θερμοκρασίας εμφάνισης του Arduino

Σε αυτό το βήμα, θα κωδικοποιήσουμε τον πίνακα Arduino για να λάβουμε και να εμφανίσουμε τη θερμοκρασία μέσω Serial Monitor.

1. Συνδέστε την πλακέτα Arduino UNO στον υπολογιστή.

2. Μεταβείτε στο αποθετήριο Github για αυτό το έργο από εδώ.

3. Στο αποθετήριο GitHub, θα δείτε ένα αρχείο με το όνομα "Βασικός κώδικας" που ανοίγει, αντιγράψτε τον κώδικα και επικολλήστε τον στο Arduino IDE.

4. Επιλέξτε τη σωστή πλακέτα και τη θύρα COM στην καρτέλα Εργαλεία και πατήστε το κουμπί μεταφόρτωσης.

5. Αφού μεταφορτωθεί ο κώδικας, ανοίξτε το Serial Monitor και επιλέξτε τον σωστό ρυθμό baud (9600 στην περίπτωσή μας) και θα μπορείτε να δείτε τη θερμοκρασία που ανιχνεύεται από το DS18B20 εκεί.

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

Βήμα 5: Σύνδεση DS18B20 με ESP8266

Σύνδεση DS18B20 με ESP8266
Σύνδεση DS18B20 με ESP8266
Σύνδεση DS18B20 με ESP8266
Σύνδεση DS18B20 με ESP8266

Σε αυτό το βήμα, θα συνδέσουμε το DS18B20 με τη μονάδα ESP8266 για να λάβουμε τη θερμοκρασία.

Για αυτό το βήμα χρειαζόμαστε = μονάδα ESP8266, αντίσταση 4,7kohm και αισθητήρα θερμοκρασίας DS18B20 (συσκευασμένος τύπος ή πακέτο TO92 ό, τι είναι διαθέσιμο).

Οι συνδέσεις για αυτό το βήμα είναι παρόμοιες με τις συνδέσεις που γίνονται με το Arduino.

1. Συνδέστε τον πείρο GND ή το μαύρο καλώδιο του αισθητήρα στο GND.

2. Συνδέστε τον πείρο Vcc ή το κόκκινο καλώδιο του αισθητήρα στην τροφοδοσία 3,3V.

3. Συνδέστε τον πείρο σήματος ή το κίτρινο καλώδιο στο 3.3V μέσω αντίστασης 4,7kohm και επίσης συνδέστε αυτόν τον ακροδέκτη σήματος στο GPIO12 που είναι ακίδα D5 της μονάδας.

Μπορείτε να ανατρέξετε στο σχηματικό σχήμα που παρουσιάζεται παραπάνω για καλύτερη κατανόηση.

Βήμα 6: Ρυθμίστε το Arduino IDE

Ρυθμίστε το Arduino IDE
Ρυθμίστε το Arduino IDE

Για την κωδικοποίηση του ESP8266 χρησιμοποιώντας το Arduino IDE, πρέπει να εγκαταστήσουμε τον πίνακα ESP8266 στους πρόσθετους πίνακες του Arduino IDE, καθώς δεν είναι προεγκατεστημένοι. Για το σκοπό αυτό πρέπει να ακολουθήσουμε τα παρακάτω βήματα:-

1. Μεταβείτε στο Αρχείο> Προτιμήσεις

2. Προσθέστε τη διεύθυνση https://arduino.esp8266.com/stable/package_esp8266com_index.json στις διευθύνσεις URL του πρόσθετου πίνακα διαχείρισης.

3. Μεταβείτε στην επιλογή Εργαλεία> Πίνακας> Διαχειριστής πινάκων

4. Αναζητήστε το esp8266 και, στη συνέχεια, εγκαταστήστε τον πίνακα.

5. Επανεκκινήστε το IDE.

Βήμα 7: Κωδικοποίηση του ESP8266 στη θερμοκρασία εμφάνισης

Κωδικοποίηση του ESP8266 σε Θερμοκρασία οθόνης
Κωδικοποίηση του ESP8266 σε Θερμοκρασία οθόνης
Κωδικοποίηση του ESP8266 σε Θερμοκρασία οθόνης
Κωδικοποίηση του ESP8266 σε Θερμοκρασία οθόνης

Σε αυτό το βήμα, πρόκειται να κωδικοποιήσουμε το ESP8266 για να διαβάσουμε τη θερμοκρασία και μετά από αυτό, αντί να εμφανίσουμε αυτήν τη θερμοκρασία στη σειριακή οθόνη, θα την εμφανίσουμε σε έναν διακομιστή ιστού.

1. Μεταβείτε στο αποθετήριο Github για αυτό το έργο από εδώ.

2. Στο Αποθετήριο, θα δείτε έναν κωδικό με το όνομα "ESP8266 Temperature Web Server", απλώς πρέπει να αντιγράψετε αυτόν τον κώδικα και να τον επικολλήσετε στο Arduino IDE.

3. Αφού επικολλήσετε τον κωδικό, αλλάξτε το SSID και τον κωδικό πρόσβασης στον κώδικα σε αυτό του δικτύου Wifi.

4. Στην καρτέλα Εργαλεία επιλέξτε τη σωστή πλακέτα και τη θύρα COM και μετά πατήστε το κουμπί μεταφόρτωσης.

5. Όταν ο κώδικας μεταφορτωθεί, ανοίξτε τη σειριακή οθόνη του IDE και, στη συνέχεια, πατήστε το κουμπί ανανέωσης στη μονάδα ESP8266 θα λάβετε κάποια άγνωστη γλώσσα γραμμένη εκεί και κάτω από αυτήν, θα υπάρχει μια διεύθυνση IP. Πρέπει να αντιγράψετε αυτήν τη διεύθυνση IP καθώς είναι η διεύθυνση του διακομιστή ιστού που θα εμφανίζει τη θερμοκρασία.

Βήμα 8: Και έγινε

Και Έγινε
Και Έγινε

Όταν μεταφορτωθεί ο κώδικας και ληφθεί η διεύθυνση IP. Ανοίξτε τον διακομιστή ιστού χρησιμοποιώντας αυτήν τη διεύθυνση IP.

Στον διακομιστή ιστού, θα υπάρχουν ενδείξεις θερμοκρασίας που εμφανίζονται σε βαθμούς Κελσίου καθώς και βαθμούς Φαρενάιτ.

Εκτός από τον διακομιστή ιστού, οι ενδείξεις θερμοκρασίας μπορούν επίσης να παρατηρηθούν στη σειριακή οθόνη.

Θα παρατηρήσετε ότι καθώς αλλάζει η θερμοκρασία κοντά στον αισθητήρα, αλλάζουν και οι ενδείξεις στον διακομιστή ιστού.

Αυτά για τη διαδήλωση.

Συνιστάται: