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

Θερμόμετρο Arduino AD8495: 7 Βήματα
Θερμόμετρο Arduino AD8495: 7 Βήματα

Βίντεο: Θερμόμετρο Arduino AD8495: 7 Βήματα

Βίντεο: Θερμόμετρο Arduino AD8495: 7 Βήματα
Βίντεο: TinkerCad Arduino Greek - 14ο μάθημα. Ψηφιακό θερμόμετρο - θερμοστάτης 16Χ2 LCD 2024, Νοέμβριος
Anonim
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495
Θερμόμετρο Arduino AD8495

Ένας γρήγορος οδηγός για το πώς να λύσετε τα προβλήματά σας με αυτό το θερμόμετρο τύπου Κ. Ελπίζουμε να βοήθησε:)

Για το παρακάτω έργο θα χρειαστείτε:

1x Arduino (κάθε είδους, απλώς φαίνεται ότι είχαμε 1 Arduino Nano δωρεάν)

1x AD8495 (έρχεται γενικά ως κιτ με τον αισθητήρα και τα πάντα)

6x καλώδια Jumper (σύνδεση AD8495 με Arduino)

συγκολλητικό σίδερο & σύρμα συγκόλλησης

ΠΡΟΑΙΡΕΤΙΚΟΣ:

Μπαταρία 1x 9V

2x αντιστάσεις (χρησιμοποιήσαμε 1x 10kOhms & 2x5kOhms επειδή συνδέσαμε το 2x5k μαζί)

Προσοχή, προχωρήστε με προσοχή και προσέξτε τα δάχτυλά σας. Το συγκολλητικό σίδερο μπορεί να προκαλέσει εγκαύματα εάν δεν το χειριστείτε με προσοχή.

Βήμα 1: Πώς λειτουργεί γενικά

Πώς λειτουργεί γενικά
Πώς λειτουργεί γενικά

Γενικά, αυτό το θερμόμετρο είναι προϊόν της Adafruit, με αισθητήρα τύπου Κ, ο οποίος μπορεί να χρησιμοποιηθεί για σχεδόν οτιδήποτε, από τη μέτρηση της θερμοκρασίας στο σπίτι ή στο υπόγειο έως τη μέτρηση της θερμότητας του φούρνου και του φούρνου. Μπορεί να αντέξει τη θερμοκρασία από -260 βαθμούς C έως 980, και με μερικές μικρές ρυθμίσεις του τροφοδοτικού φτάνει μέχρι τους 1380 βαθμούς C (κάτι που είναι αξιοσημείωτο) και είναι επίσης αρκετά ακριβές, με τους +/- 2 βαθμούς παραλλαγή είναι εξαιρετικά χρήσιμη. Αν το κάνετε όπως κάναμε με το Arduino Nano, μπορείτε επίσης να το συσκευάσετε σε ένα μικρό κουτί (αν σκεφτείτε ότι θα φτιάξετε το δικό σας κουτί που δεν περιλαμβάνεται σε αυτό το σεμινάριο).

Βήμα 2: Σύνδεση και σωστή καλωδίωση

Σύνδεση και σωστή καλωδίωση
Σύνδεση και σωστή καλωδίωση
Σύνδεση και σωστή καλωδίωση
Σύνδεση και σωστή καλωδίωση
Σύνδεση και σωστή καλωδίωση
Σύνδεση και σωστή καλωδίωση

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

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

Βήμα 3: Τύπος χρήσης

Τύπος χρήσης
Τύπος χρήσης

Σύμφωνα με το φύλλο δεδομένων, αυτός ο αισθητήρας μπορεί να χρησιμοποιηθεί για τη μέτρηση από -260 έως 980 βαθμούς C με το κανονικό τροφοδοτικό Arduino 5V ή μπορείτε να προσθέσετε κάποια εξωτερική πηγή ενέργειας και αυτό θα σας δώσει την ευκαιρία να μετρήσετε έως και 1380 μοίρες. Προσοχή όμως αν το θερμόμετρο επιστρέψει περισσότερα από 5V στο Arduino για να το διαβάσει μπορεί να βλάψει το Arduino σας και το έργο σας μπορεί να είναι καταδικασμένο να αποτύχει.

Για να ξεπεράσουμε αυτό το πρόβλημα βάζουμε ένα διαχωριστή τάσης στη συσκευή που στην περίπτωσή μας είναι Vout στη μισή τάση Vin.

Σύνδεσμοι στο φύλλο δεδομένων:

www.analog.com/media/en/technical-documenta…

www.analog.com/media/en/technical-documenta…

Βήμα 4: Το μεγάλο πρόβλημα με τον κώδικα κατά τη μέτρηση

Το μεγάλο πρόβλημα με τον κώδικα κατά τη μέτρηση
Το μεγάλο πρόβλημα με τον κώδικα κατά τη μέτρηση

Σύμφωνα με το φύλλο δεδομένων για το θερμόμετρο, η τάση αναφοράς είναι 1,25V. Στις μετρήσεις μας αυτό δεν ίσχυε… Καθώς δοκιμάσαμε περαιτέρω, διαπιστώσαμε ότι η τάση αναφοράς είναι μεταβλητή και δοκιμάσαμε σε δύο υπολογιστές, και στους δύο ήταν διαφορετική (!?!). Λοιπόν, βάζουμε μια καρφίτσα στον πίνακα (όπως φαίνεται στην παραπάνω εικόνα) και βάζουμε μια γραμμή στον κώδικα για να διαβάζουμε την τιμή τάσης αναφοράς κάθε φορά πριν τον υπολογισμό.

Ο κύριος τύπος για αυτό είναι Temp = (Vout-1.25) / 0.005.

Στον τύπο μας το φτιάξαμε: Temp = (Vout-Vref) / 0.005.

Βήμα 5: Ο Κώδικας Μέρος 1

Ο Κώδικας Μέρος 1
Ο Κώδικας Μέρος 1
Ο Κώδικας Μέρος 1
Ο Κώδικας Μέρος 1

const int AnalogPin = A0; // Αναλογική καρφίτσα για temp readconst int AnalogPin2 = A1; // Αναλογική καρφίτσα για ανάγνωση τιμής αναφοράς Temp float; // Temperaturefloat Vref; // Αναφερόμενη τάσηFloat Vout; // Τάση μετά από adcfloat SenVal. // Αισθητήρας valuefloat SenVal2; // Τιμή αισθητήρα από αναφορά pinvoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Αναλογική τιμή από τη θερμοκρασία SenVal2 = analogRead (A1); // Αναλογική τιμή από το αναφερόμενο pinVref = (SenVal2 *5.0) /1024.0; // Αναλογική μετατροπή σε ψηφιακή για τιμή αναφοράςVout = (SenVal * 5.0) /1024.0; // Αναλογική μετατροπή σε ψηφιακή για την τάση ανάγνωσης θερμοκρασίας Temp = (Vout - Vref) /0.005; // Υπολογισμός θερμοκρασίας Serial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Referent Voltage ="); Serial.println (Vref); καθυστέρηση (200);}

Αυτός ο κωδικός χρησιμοποιείται όταν χρησιμοποιείτε την τροφοδοσία από το Arduino (χωρίς εξωτερική πηγή τροφοδοσίας). Αυτό θα περιορίσει τη μέτρησή σας έως και 980 βαθμούς C σύμφωνα με το φύλλο δεδομένων.

Βήμα 6: Ο Κώδικας Μέρος 2

Ο Κώδικας Μέρος 2
Ο Κώδικας Μέρος 2
Ο Κώδικας Μέρος 2
Ο Κώδικας Μέρος 2

const int AnalogPin = A0; // Αναλογική καρφίτσα για temp readconst int AnalogPin2 = A1; // Αναλογική καρφίτσα από όπου διαβάζουμε την τιμή αναφοράς (Έπρεπε να το κάνουμε επειδή η τιμή αναφοράς του αισθητήρα είναι ασταθής) float Temp; // Temperaturefloat Vref; // Αναφερόμενη τάσηFloat Vhalf; // Τάση στο arduino που διαβάζεται μετά το dividerfloat Vout. // Τάση μετά τη μετατροπήfloat SenVal; // Αισθητήρας valuefloat SenVal2; // Τιμή αισθητήρα από το σημείο όπου λαμβάνουμε αναφορά valuevoid setup () {Serial.begin (9600); } void loop () {SenVal = analogRead (A0); // Αναλογική τιμή εξόδουSenVal2 = analogRead (A1); // Αναλογική έξοδος από όπου λαμβάνουμε τιμή αναφοράςVref = (SenVal2 * 5.0) /1024.0; // Διαμετακόμιση αναλογικής τιμής από αναφορά αναφοράς σε ψηφιακή τιμήVhalf = (SenVal * 5.0) /1024.0; // Μετατροπή αναλογικής σε ψηφιακή τιμήVout = 2 * Vhalf; // Υπολογισμός της τάσης μετά το διαχωριστή τάσης ημίχρονηςTemp = (Vout - Vref) /0.005; // Υπολογισμός φόρμουλας θερμοκρασίαςSerial.print ("Temperature ="); Serial.println (Temp); Serial.print ("Vout ="); Serial.println (Vout); Serial.print ("Referent Voltage ="); Serial.println (Vref); καθυστέρηση (100);}

Αυτός είναι ο κωδικός εάν χρησιμοποιείτε εξωτερική πηγή ισχύος και για αυτό χρησιμοποιούμε το διαχωριστή τάσης. Γι 'αυτό έχουμε την τιμή "Vhalf" μέσα. Ο διαχωριστής τάσης που χρησιμοποιείται (βλέπε μέρος 3) είναι στο μισό της εισερχόμενης τάσης (το R1 έχει τις ίδιες τιμές ωμ με το R2) επειδή χρησιμοποιήσαμε μια μπαταρία 9V. Όπως αναφέρθηκε παραπάνω οποιαδήποτε τάση πάνω από 5V μπορεί να βλάψει το Arduino σας, οπότε το κάναμε να πάρει μέγιστο 4,5V (κάτι που είναι αδύνατο σε αυτή την περίπτωση, αφού η μέγιστη ισχύς εξόδου από τον αισθητήρα μετά το διαχωριστή τάσης μπορεί να είναι περίπου 3,5V).

Βήμα 7: Αποτελέσματα

Αποτελέσματα
Αποτελέσματα
Αποτελέσματα
Αποτελέσματα
Αποτελέσματα
Αποτελέσματα
Αποτελέσματα
Αποτελέσματα

Όπως μπορείτε να δείτε από τα παραπάνω στιγμιότυπα οθόνης, το δοκιμάσαμε και λειτουργεί. Επιπλέον, σας δώσαμε τα πρωτότυπα αρχεία Arduino.

Αυτό είναι, ελπίζουμε να σας βοηθήσει με τα έργα σας.

Συνιστάται: