Τα θερμόμετρα είναι χρήσιμες συσκευές που χρησιμοποιούνται εδώ και πολύ καιρό για τη μέτρηση της θερμοκρασίας. Σε αυτό το έργο έχουμε δημιουργήσει ένα ψηφιακό θερμόμετρο βασισμένο στο Arduino για να εμφανίσουμε την τρέχουσα θερμοκρασία περιβάλλοντος σε μια μονάδα LCD 16x2 σε πραγματικό χρόνο. Μπορεί να αναπτυχθεί σε σπίτια, γραφεία, βιομηχανίες κ.λπ. για τη μέτρηση της θερμοκρασίας. Μπορούμε να χωρίσουμε αυτό το θερμόμετρο με βάση το Arduino σε τρία τμήματα - Το πρώτο τμήμα ανιχνεύει τη θερμοκρασία χρησιμοποιώντας τον αισθητήρα θερμοκρασίας LM35, το δεύτερο τμήμα μετατρέπει την τιμή θερμοκρασίας σε κατάλληλους αριθμούς σε κλίμακα Κελσίου που γίνεται από τον Arduino και το τελευταίο μέρος του συστήματος εμφανίζει θερμοκρασία LCD 16x2. Το ίδιο φαίνεται στο παρακάτω διάγραμμα μπλοκ.
Σε αυτόν τον ψηφιακό αισθητήρα θερμοκρασίας με το Arduino, το Arduino Uno χρησιμοποιείται για τον έλεγχο ολόκληρης της διαδικασίας. Ένας αισθητήρας θερμοκρασίας LM35 χρησιμοποιείται για την ανίχνευση θερμοκρασίας περιβάλλοντος που δίνει θερμοκρασία 1 βαθμού σε κάθε αλλαγή 10mV στον πείρο εξόδου του. Μπορείτε εύκολα να το ελέγξετε με βολτόμετρο, συνδέοντας Vcc στον πείρο 1 και Γείωση στον πείρο 3 και τάση εξόδου στον πείρο 2 του αισθητήρα LM35. Για παράδειγμα, εάν η τάση εξόδου του αισθητήρα LM35 είναι 250m volt, αυτό σημαίνει ότι η θερμοκρασία είναι περίπου 25 βαθμούς Κελσίου.
Το Arduino διαβάζει την τάση εξόδου του αισθητήρα θερμοκρασίας χρησιμοποιώντας τον αναλογικό ακροδέκτη A0 και εκτελεί τον υπολογισμό για να μετατρέψει αυτήν την αναλογική τιμή σε ψηφιακή τιμή της τρέχουσας θερμοκρασίας. Μετά τους υπολογισμούς, το arduino στέλνει αυτούς τους υπολογισμούς ή τη θερμοκρασία σε μονάδα LCD 16x2 χρησιμοποιώντας κατάλληλες εντολές LCD. Έχουμε επίσης κατασκευάσει άλλα έργα ψηφιακού θερμομέτρου χρησιμοποιώντας DHT11, DS18B20 και άλλους αισθητήρες θερμοκρασίας.
Εξαρτήματα κυκλώματος
Arduino
Σε αυτό το έργο χρησιμοποιήσαμε ένα Arduino για τον έλεγχο ολόκληρης της διαδικασίας του συστήματος. Το Arduino είναι ένας ελεγκτής που λειτουργεί με τον ελεγκτή ATmega AVR. Το Arduino είναι μια πλατφόρμα υλικού ανοιχτού κώδικα και είναι πολύ χρήσιμη για σκοπούς ανάπτυξης έργων. Υπάρχουν πολλοί τύποι σανίδων Arduino όπως Arduino UNO, arduino mega, arduino pro mini, Lilypad κ.λπ. που διατίθενται στην αγορά ή μπορείτε επίσης να δημιουργήσετε μόνοι σας το Arduino.
Αισθητήρας θερμοκρασίας LM35
Το LM35 είναι ένας αισθητήρας θερμοκρασίας 3 ακίδων που δίνει 1 βαθμό Κελσίου σε κάθε αλλαγή 10mVolt. Αυτός ο αισθητήρας μπορεί να ανιχνεύσει έως 150 βαθμούς Κελσίου. 1 αριθμός pin του αισθητήρα lm35 είναι Vcc, ο δεύτερος είναι έξοδος και ο τρίτος είναι Ground. Το LM35 είναι ο απλούστερος αισθητήρας θερμοκρασίας και μπορεί να συνδεθεί εύκολα με οποιονδήποτε μικροελεγκτή. Μπορείτε να ελέγξετε διάφορες μετρήσεις θερμοκρασίας χρησιμοποιώντας έργα που βασίζονται σε LM35 εδώ.
Καρφίτσα αριθ |
Λειτουργία |
Ονομα |
1 |
Τάση τροφοδοσίας; 5V (+ 35V έως -2V) |
Vcc |
2 |
Τάση εξόδου (+ 6V έως -1V) |
Παραγωγή |
3 |
Γείωση (0V) |
Εδαφος |
Το LM35 μπορεί εύκολα να διασυνδεθεί με Raspberry Pi, NodeMCU, PIC μικροελεγκτή κ.λπ. για τη μέτρηση της θερμοκρασίας και μπορεί επίσης να χρησιμοποιηθεί αυτόνομο με Op-amp για να δείξει τα επίπεδα θερμοκρασίας.
οθόνη υγρού κρυστάλλου
Η μονάδα LCD 16x2 χρησιμοποιείται ευρέως σε έργα ενσωματωμένου συστήματος, επειδή είναι φθηνή, εύκολα διαθέσιμη, μικρή σε μέγεθος και εύκολη στη διασύνδεση. Το 16x2 έχει δύο σειρές και 16 στήλες, που σημαίνει ότι αποτελείται από 16 μπλοκ των 5x8 κουκκίδων. 16 ακίδες για συνδέσεις στις οποίες 8 bit δεδομένων D0-D7 και 3 bits ελέγχου είναι RS, RW και EN. Οι υπόλοιπες ακίδες χρησιμοποιούνται για τροφοδοσία, έλεγχο φωτεινότητας και οπίσθιο φωτισμό.
Παροχή ηλεκτρικού ρεύματος
Το Arduino Board διαθέτει ήδη ενσωματωμένο τμήμα τροφοδοσίας. Εδώ χρειάζεται μόνο να συνδέσουμε προσαρμογείς 9 volt ή 12 volt με την πλακέτα.
Διάγραμμα κυκλώματος και επεξήγηση
Digram κύκλωμα για Ψηφιακό θερμόμετρο με τη χρήση Arduino και LM35 αισθητήρα θερμοκρασίας, φαίνεται στο παραπάνω σχήμα. Κάντε τις συνδέσεις προσεκτικά, όπως φαίνεται στο σχηματικό. Εδώ η μονάδα LCD 16x2 συνδέεται απευθείας με το arduino σε λειτουργία 4-bit. Οι καρφίτσες δεδομένων της LCD, συγκεκριμένα RS, EN, D4, D5, D6, D7 συνδέονται με τον ψηφιακό ακροδέκτη arduino με αριθμό 7, 6, 5, 4, 3, 2. Ένας αισθητήρας θερμοκρασίας LM35 συνδέεται με τον αναλογικό ακροδέκτη A0 του arduino, ο οποίος παράγει Θερμοκρασία 1 βαθμού Κελσίου σε κάθε αλλαγή εξόδου 10mV στον πείρο εξόδου του.
Εάν είστε νέοι στο Arduino, μάθετε πώς να συνδέετε την οθόνη LCD 16x2 με το Arduino στο προηγούμενο σεμινάριό μας.
Arduino LM35 Κωδικός & Επεξήγηση
Ο κωδικός για τη μέτρηση θερμοκρασίας με χρήση LM35 είναι απλός και δίνεται στο τέλος αυτού του σεμιναρίου. Πρώτα συμπεριλαμβάνουμε βιβλιοθήκη για μονάδα LCD και στη συνέχεια ορίζουμε δεδομένα και πείρους ελέγχου για LCD και αισθητήρα θερμοκρασίας.
Αφού λάβουμε την αναλογική τιμή στο αναλογικό πείρο, διαβάζουμε αυτήν την τιμή χρησιμοποιώντας τη λειτουργία Αναλογικής ανάγνωσης και αποθηκεύουμε αυτήν την τιμή σε μια μεταβλητή. Και μετά μετατρέψτε την τιμή σε θερμοκρασία εφαρμόζοντας τον παρακάτω δεδομένο τύπο.
float analog_value = analogRead (analog_pin); float Temperature = analog_value * factor * 100 όπου factor = 5/1023 analog_value = έξοδος αισθητήρα θερμοκρασίας
Εδώ δημιουργείται το σύμβολο βαθμού χρησιμοποιώντας προσαρμοσμένη μέθοδο χαρακτήρα
Έτσι λοιπόν μπορούμε να δημιουργήσουμε ένα απλό Ψηφιακό Θερμόμετρο για τη μέτρηση της θερμοκρασίας με το Arduino. Ο πλήρης κώδικας με ένα βίντεο επίδειξης δίνεται παρακάτω.