Κάντε αυτό το κύκλωμα ψηφιακής θερμοκρασίας, μετρητή υγρασίας χρησιμοποιώντας το Arduino

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





Στο προηγούμενο άρθρο μας, μάθαμε πώς να συνδέουμε τον αισθητήρα υγρασίας θερμοκρασίας με το arduino και να διαβάσουμε την ένδειξη που εμφανίζεται στη σειριακή οθόνη του arduino IDE. Σε αυτήν την ανάρτηση θα μάθουμε πώς να προβάλλουμε την ανάγνωση σε οθόνη LCD 16x2 για τον προτεινόμενο ψηφιακό μετρητή θερμοκρασίας / υγρασίας χρησιμοποιώντας το Arduino.

Εισαγωγή

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



Εάν δεν έχετε διαβάσει ακόμη το προηγούμενο άρθρο, διαβάστε το. Καλύπτει το βασικά στοιχεία των αισθητήρων σειράς DHTxx .

Τώρα, γνωρίζετε αρκετά για τους αισθητήρες DHTxx. Είναι καλύτερα να χρησιμοποιήσετε τον αισθητήρα DHT22 για έργα που πρόκειται να χρησιμοποιήσετε μακροπρόθεσμα.



Πρωτότυπο εικόνα:

Πρωτότυπο εργασίας για κύκλωμα ψηφιακής θερμοκρασίας, μετρητή υγρασίας

Ο σχεδιασμός:

Η σύνδεση μεταξύ LCD και arduino είναι στάνταρ, όπου μπορείτε να βρείτε παρόμοια σύνδεση σε άλλη Έργα που βασίζονται σε LCD .

Το πρόγραμμα είναι γραμμένο με τέτοιο τρόπο ώστε, απλά πρέπει να εισάγετε το DHT11 στη δεξιά θύρα του Arduino. Αυτό θα μειώσει τη συμφόρηση των καλωδίων κατά τη δημιουργία πρωτοτύπων σε αυτό το έργο.

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

Ψηφιακό κύκλωμα θερμοκρασίας, μετρητή υγρασίας με χρήση του Arduino

Μπορείτε να χρησιμοποιήσετε την αγαπημένη σας πλακέτα Arduino για αυτό το έργο, αλλά η πρότασή μου είναι να χρησιμοποιήσετε το 'Arduino pro mini' το οποίο είναι λιγότερο ακριβό και μικρό σε μέγεθος, το οποίο θα μπορούσε εύκολα να χωρέσει σε ένα μικρό κουτί ανεπιθύμητων για τέτοια απλά έργα.

Υπάρχουν πολλοί μηχανισμοί ανίχνευσης σφαλμάτων στη βιβλιοθήκη DHT για την ενημέρωση του χρήστη σχετικά με το σφάλμα. Αλλά για να κάνω το πρόγραμμα απλό, μόλις πρόσθεσα έναν μηχανισμό ανίχνευσης σφαλμάτων που απεικονίζεται παρακάτω:

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

Για να λάβετε μια ιδέα για κάθε είδος σφάλματος που σχετίζεται με αυτόν τον αισθητήρα, ανατρέξτε στο παράδειγμα κώδικα στο 'DHTlib'.

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

Κωδικός προγράμματος

//------------------Program developed by R.Girish-----------------//
#include
#include
dht DHT
LiquidCrystal lcd(12,11,5,4,3,2)
#define DHTxxPIN A1
int p = A0
int n = A2
int ack
int f
void setup()
{
lcd.begin(16,2)
pinMode(p,OUTPUT)
pinMode(n,OUTPUT)
}
void loop()
{
digitalWrite(p,1)
digitalWrite(n,0)
ack=0
int chk = DHT.read11(DHTxxPIN)
switch (chk)
{
case DHTLIB_ERROR_CONNECT:
ack=1
break
}
if(ack==0)
{
f=DHT.temperature*1.8+32
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Temp:')
lcd.print(DHT.temperature)
lcd.print('C/')
lcd.print(f)
lcd.print('F')
lcd.setCursor(0,1)
lcd.print('Humidity:')
lcd.print(DHT.humidity)
lcd.print('%')
delay(500)
}
if(ack==1)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('NO DATA, Please')
lcd.setCursor(0,1)
lcd.print('check connection')
delay(500)
}

}
// ------------------ Πρόγραμμα που αναπτύχθηκε από τον R.Girish ----------------- //

Σημείωση: Το πρόγραμμα είναι συμβατό μόνο με αισθητήρα DHT11




Προηγούμενο: Διασύνδεση αισθητήρα υγρασίας θερμοκρασίας DHTxx με το Arduino Επόμενο: Εξερευνήθηκαν 4 καλύτερα κυκλώματα διακόπτη αισθητήρα αφής