Σε αυτό το άρθρο, θα συζητήσουμε τους διαφορετικούς τύπους αισθητήρων θερμοκρασίας και πώς μπορούν να χρησιμοποιηθούν κατά περίπτωση. Η θερμοκρασία είναι μια φυσική παράμετρος που μετράται σε μοίρες. Είναι ουσιαστικό μέρος οποιασδήποτε διαδικασίας μέτρησης. Οι περιοχές που απαιτούν ακριβείς μετρήσεις θερμοκρασίας περιλαμβάνουν ιατρική, βιολογική έρευνα, ηλεκτρονικά είδη, έρευνα υλικών και θερμική απόδοση ηλεκτρικών προϊόντων. Μια συσκευή που χρησιμοποιείται για τη μέτρηση της ποσότητας θερμικής ενέργειας που μας επιτρέπει να εντοπίζουμε φυσικές αλλαγές στη θερμοκρασία είναι γνωστή ως αισθητήρας θερμοκρασίας. Είναι ψηφιακά και αναλογικά.
Κύριοι τύποι αισθητήρων
Γενικά, υπάρχουν δύο μέθοδοι για τη λήψη δεδομένων:
1. Επικοινωνία... Οι αισθητήρες θερμοκρασίας επαφής βρίσκονται σε φυσική επαφή με ένα αντικείμενο ή μια ουσία. Μπορούν να χρησιμοποιηθούν για τη μέτρηση της θερμοκρασίας των στερεών, υγρών ή αερίων.
2. Ανέπαφο... Οι αισθητήρες θερμοκρασίας χωρίς επαφή ανιχνεύουν τη θερμοκρασία παρεμποδίζοντας μέρος της υπέρυθρης ενέργειας που εκπέμπεται από ένα αντικείμενο ή μια ουσία και ανιχνεύοντας την έντασή της. Μπορούν να χρησιμοποιηθούν μόνο για τη μέτρηση της θερμοκρασίας σε στερεά και υγρά. Δεν είναι σε θέση να μετρήσουν τη θερμοκρασία των αερίων λόγω του άχρωμου (διαφάνεια).
Κανόνες επιλογής αισθητήρα
Ο αισθητήρας θερμοκρασίας για ενδοδαπέδια θέρμανση επιλέγεται λαμβάνοντας υπόψη χαρακτηριστικά όπως ισχύ, τύπο καλύμματος, μέθοδο εγκατάστασης και εξοπλισμό με πρόσθετη λειτουργικότητα.
Εξουσία
Η τιμή πρέπει σίγουρα να πληροί τις απαιτήσεις και το φορτίο του ζεστού δαπέδου. Διαφορετικά, ο αισθητήρας δεν θα λειτουργεί σωστά. Όταν η ισχύς του θερμαντικού στοιχείου είναι μεγαλύτερη από εκείνη του ίδιου του ρυθμιστή, καθίσταται απαραίτητη η επιπλέον τοποθέτηση ενός μαγνητικού εκκινητή μεταξύ τους - για την αποφυγή ζημιάς στη συσκευή λόγω αυξημένου φορτίου.
Σύνολο χαρακτηριστικών
Το ζεστό δάπεδο ελέγχεται από μια ηλεκτρική μονάδα, η οποία σας επιτρέπει να ρυθμίσετε τη λειτουργία των θερμαντικών στοιχείων. Οι σύγχρονοι ελεγκτές έχουν τέτοια λειτουργικότητα όπως εκκίνηση και απενεργοποίηση του συστήματος, ρύθμιση των συνθηκών θερμοκρασίας, καθώς και ρύθμιση της συχνότητας σύνδεσης και αποσύνδεσης του θερμαντικού στοιχείου.
Ευκολία στη χρήση
Εάν πιστεύετε ότι δεν θα καταλάβετε τον προγραμματισμό, τότε δεν πρέπει να αγοράσετε μια πολύπλοκη συσκευή. Ακόμη και λαμβάνοντας υπόψη όλες τις λειτουργίες του. Για παράδειγμα, οι ηλικιωμένοι θεωρούν ότι είναι αρκετά προβληματικό να αντιμετωπίζουν προγραμματιζόμενες συσκευές. Θα προτιμούσαν να επιλέξουν τη μηχανική επιλογή.
Εύκολη σύνδεση
Η συνοδευτική τεκμηρίωση για τον θερμοστάτη υποδεικνύει πάντα τον τρόπο σύνδεσης του αισθητήρα ενδοδαπέδιας θέρμανσης. Οι ακροδέκτες βρίσκονται στην άκρη στη μία πλευρά της μονάδας ελέγχου. Αφού συνδέσετε τα ηλεκτρικά καλώδια σύμφωνα με το σχήμα, θα χρειαστεί να ελέγξετε την απόδοση του συστήματος θέρμανσης. Για να το κάνετε αυτό, μετρήστε την αντίσταση στους ακροδέκτες του αισθητήρα θερμοκρασίας και του ηλεκτρικού καλωδίου θέρμανσης ή συνδέστε ένα θερμό δάπεδο και αυξήστε τις τιμές θερμοκρασίας από το μηδέν στην ένδειξη που συνιστά η SNIP, δηλαδή έως και 30 ° C.
Εμφάνιση
Ένας θερμικός αισθητήρας δεν πρέπει να είναι μόνο λειτουργικά κατανοητός, αλλά και ελκυστικός στο σχεδιασμό. Τα μοντέρνα κουμπιά διατίθενται σε διάφορα χρώματα και σχήματα. Μπορείτε να επιλέξετε μια επιλογή που να είναι αρμονική με το εσωτερικό του δωματίου.
Τύποι αισθητήρων θερμοκρασίας
Υπάρχουν πολλοί διαφορετικοί τύποι αισθητήρων θερμοκρασίας.Από τον απλό έλεγχο ενεργοποίησης / απενεργοποίησης μιας θερμοστατικής συσκευής σε πολύπλοκα συστήματα ελέγχου της παροχής νερού, με τη λειτουργία της θέρμανσης, που χρησιμοποιείται στις διαδικασίες καλλιέργειας φυτών. Οι δύο κύριοι τύποι αισθητήρων, η επαφή και η μη επαφή, υποδιαιρούνται περαιτέρω σε ανθεκτικούς, τάσης και ηλεκτρομηχανικούς αισθητήρες. Οι τρεις πιο συχνά χρησιμοποιούμενοι αισθητήρες θερμοκρασίας είναι:
- Θερμίστορ
- Θερμοστοιχεία αντίστασης
- Θερμοστοιχείο
Αυτοί οι αισθητήρες θερμοκρασίας διαφέρουν μεταξύ τους όσον αφορά την απόδοση.
Συσκευή
Πρόκειται για ένα θερμοστοιχείο (πλάκα ή ράβδος) που αποτελείται από καλώδια που συνδέονται με τους ακροδέκτες του αισθητήριου στοιχείου.
Ανάλογα με τις πληροφορίες θερμοκρασίας, η αντίσταση του ευαίσθητου εξαρτήματος αλλάζει, αντίστοιχα, το ηλεκτρικό σήμα που παρέχεται στον θερμοστάτη αλλάζει. Έτσι, προσδιορίζεται η απόλυτη τιμή της μέσης θερμοκρασίας.
Ο εξωτερικός (εξωτερικός αισθητήρας θερμοκρασίας για ενδοδαπέδια θέρμανση), κατά κανόνα, βρίσκεται κάτω από το τελικό κάλυμμα δαπέδου και μετρά τους δείκτες θερμοκρασίας του. Εσωτερικό (ενσωματωμένο), που βρίσκεται μέσα στον ρυθμιστή και καθορίζει το επίπεδο θέρμανσης αέρα.
Ο σχεδιασμός των αισθητήρων θερμοκρασίας επιλέγεται ανάλογα με τα χαρακτηριστικά του συστήματος:
Θερμίστορ
Το θερμίστορ είναι μια ευαίσθητη αντίσταση που αλλάζει τη φυσική της αντίσταση με τη θερμοκρασία. Συνήθως, τα θερμίστορ κατασκευάζονται από κεραμικό υλικό ημιαγωγού όπως κοβάλτιο, μαγγάνιο ή οξείδιο του νικελίου και είναι επικαλυμμένα με γυαλί. Είναι μικροί σφραγισμένοι δίσκοι που αντιδρούν σχετικά γρήγορα σε οποιαδήποτε αλλαγή θερμοκρασίας.
Λόγω των ημιαγωγών ιδιοτήτων του υλικού, τα θερμίστορ έχουν αρνητικό συντελεστή θερμοκρασίας (NTC), δηλ. η αντίσταση μειώνεται με την αύξηση της θερμοκρασίας. Ωστόσο, υπάρχουν επίσης θερμίστορ PTC των οποίων η αντίσταση αυξάνεται με την αύξηση της θερμοκρασίας.
Πρόγραμμα θερμίστορ
Πλεονεκτήματα των θερμίστορ
- Υψηλή ταχύτητα απόκρισης σε αλλαγές θερμοκρασίας, ακρίβεια.
- Χαμηλό κόστος.
- Υψηλότερη αντίσταση στην περιοχή από 2.000 έως 10.000 ohms.
- Πολύ υψηλότερη ευαισθησία (~ 200 ohm / ° C) σε περιορισμένο εύρος θερμοκρασίας έως 300 ° C.
Εξαρτήσεις θερμοκρασίας από αντίσταση
Η εξάρτηση της αντίστασης στη θερμοκρασία εκφράζεται με την ακόλουθη εξίσωση:
Οπου Α, Β, Γ - πρόκειται για σταθερές (παρέχονται από τους όρους υπολογισμού), Ρ - αντίσταση στο Ohms, Τ - θερμοκρασία σε Kelvin. Μπορείτε εύκολα να υπολογίσετε την αλλαγή θερμοκρασίας από μια αλλαγή στην αντίσταση ή αντίστροφα.
Πώς να χρησιμοποιήσετε ένα θερμίστορ;
Τα θερμίστορ βαθμολογούνται για την αντίσταση τους σε θερμοκρασία δωματίου (25 ° C). Ένα θερμίστορ είναι μια παθητική αντίσταση συσκευή, επομένως απαιτεί την παραγωγή παρακολούθησης της τρέχουσας τάσης εξόδου. Κατά κανόνα, συνδέονται εν σειρά με κατάλληλους σταθεροποιητές που σχηματίζουν ένα διαχωριστικό τάσης δικτύου.
Παράδειγμα: Σκεφτείτε ένα θερμίστορ με τιμή αντίστασης 2,2K στους 25 ° C και 50 ohms στους 80 ° C. Το θερμίστορ συνδέεται σε σειρά με αντίσταση 1 kΩ μέσω τροφοδοσίας 5 V.
Επομένως, η τάση εξόδου της μπορεί να υπολογιστεί ως εξής:
Στους 25 ° C, RNTC = 2200 ohms;
Στους 80 ° C, RNTC = 50 ohms;
Ωστόσο, είναι σημαντικό να σημειωθεί ότι σε θερμοκρασία δωματίου, οι τυπικές τιμές αντίστασης είναι διαφορετικές για διαφορετικά θερμίστορ, καθώς είναι μη γραμμικές. Ένα θερμίστορ έχει μια εκθετική αλλαγή θερμοκρασίας και συνεπώς μια σταθερά βήτα, η οποία χρησιμοποιείται για τον υπολογισμό της αντίστασής της για μια δεδομένη θερμοκρασία. Η τάση και η θερμοκρασία εξόδου της αντίστασης σχετίζονται γραμμικά.
Χαρακτηριστικά της διεπαφής ρεύματος δύο καλωδίων στους αισθητήρες θερμοκρασίας LMT01
Σύκο. 4. Οργάνωση της τρέχουσας διεπαφής με το LMT01
Όπως αναφέρθηκε παραπάνω, για τη μετάδοση του αποτελέσματος της μέτρησης, το LMT01 δημιουργεί μια ακολουθία bit με τη μορφή παλμών μέτρησης ρεύματος. Για αυτό, ο αισθητήρας απαιτεί μόνο δύο καλώδια (Σχήμα 4). Για να μετατρέψετε τους τρέχοντες παλμούς σε μορφή οικεία σε ψηφιακά μικροκυκλώματα, σε ορισμένες περιπτώσεις μπορείτε να χρησιμοποιήσετε μία αντίσταση (αλλά όχι πάντα - περισσότερα σε αυτό παρακάτω).
Μετά την ενεργοποίηση, το LMT01 ξεκινά έναν κύκλο μέτρησης που διαρκεί έως και 54 ms (Εικόνα 5). Κατά τη διάρκεια αυτής της περιόδου, σχηματίζεται ρεύμα χαμηλού επιπέδου 28 ... 39 μA στην έξοδο του αισθητήρα. Αυτό ακολουθείται από έναν κύκλο μεταφοράς του αποτελέσματος μέτρησης με τη μορφή παλμών ρεύματος με πλάτος 112 ... 143 μA. Ο μικροελεγκτής λήψης πρέπει να μετρά αυτούς τους παλμούς, για παράδειγμα χρησιμοποιώντας τον ενσωματωμένο μετρητή / χρονοδιακόπτη. Δεδομένου ότι η συχνότητα των σημάτων είναι περίπου 82 ... 94 kHz, τότε με τον μέγιστο αριθμό παλμών (4095), η διάρκεια μετάδοσης μπορεί να φτάσει τα 50 ms.
Σύκο. 5. Διαγράμματα χρονισμού λειτουργίας αισθητήρα LMT01
Με τον αριθμό των μετρημένων παλμών (PC), η τιμή θερμοκρασίας μπορεί να προσδιοριστεί σύμφωνα με τον τύπο 1:
, (1)
Έτσι, στους 0 ° C, ο αισθητήρας θα παράγει περίπου 800 παλμούς.
Δυστυχώς, η χρήση μιας εξωτερικής αντίστασης δεν είναι πάντα δυνατή λόγω του περιορισμού της ελάχιστης πτώσης τάσης στον αισθητήρα LMT01. Κατά τη διάρκεια του κύκλου μέτρησης, η πτώση του αισθητήρα πρέπει να είναι τουλάχιστον 2,15 V. Κατά τη διάρκεια του κύκλου μετάδοσης δεδομένων, η πτώση τάσης μπορεί να μειωθεί στα 2 V. Δεν είναι δύσκολο να κάνετε κάποιους σκληρούς υπολογισμούς.
Σκεφτείτε μια συσκευή με τάση τροφοδοσίας Vdd = 3,3 V. Εάν λάβουμε την ελάχιστη επιτρεπόμενη πτώση στον αισθητήρα ίσο με 2,15 V κατά τη διάρκεια του κύκλου μέτρησης, τότε θα παρατηρηθεί σήμα όχι περισσότερο από 1,15 V στην αντίσταση. Για τα περισσότερα ψηφιακά ελεγκτές, η λογική μονάδα είναι 0, 7 ∙ Vdd, η οποία για την περίπτωσή μας θα είναι 2,31 V. Ως αποτέλεσμα, η χρήση μιας απλής αντίστασης αποδεικνύεται αδύνατη, καθώς ο μικροελεγκτής απλά δεν θα "δει" το σήμα ενός λογική ενότητα. Η διέξοδος από αυτήν την κατάσταση μπορεί να είναι η χρήση μικροελεγκτή με ενσωματωμένο συγκριτικό ή κυκλώματα μετατροπής επιπέδου.
Ανθεκτικοί αισθητήρες θερμοκρασίας
Οι αισθητήρες αντίστασης θερμοκρασίας (RTD) είναι κατασκευασμένοι από σπάνια μέταλλα, όπως η πλατίνα, των οποίων η ηλεκτρική αντίσταση ποικίλλει ανάλογα με τη θερμοκρασία.
Οι ανθεκτικοί ανιχνευτές θερμοκρασίας έχουν θετικό συντελεστή θερμοκρασίας και, σε αντίθεση με τους θερμίστορ, παρέχουν ακρίβεια μέτρησης υψηλής θερμοκρασίας. Ωστόσο, έχουν κακή ευαισθησία. Το Pt100 είναι ο πιο ευρέως διαθέσιμος αισθητήρας με τυπική τιμή αντίστασης 100 ohms στους 0 ° C. Το κύριο μειονέκτημα είναι το υψηλό κόστος.
Τα πλεονεκτήματα αυτών των αισθητήρων
- Ευρύ εύρος θερμοκρασίας από -200 έως 650 ° C
- Παρέχετε υψηλή απόδοση ρεύματος πτώσης
- Πιο γραμμικό σε σύγκριση με θερμοστοιχεία και ΕΤΑ
Πρόσθετα εξαρτήματα και κύκλωμα αισθητήρα
Εκτός από τις κύριες συσκευές διόδων, το κύκλωμα αισθητήρα θερμοκρασίας περιλαμβάνει ορισμένα επιπλέον στοιχεία. Πρώτα απ 'όλα, είναι ένας πυκνωτής που προστατεύει τη συσκευή από ξένες επιρροές. Το γεγονός είναι ότι ο λειτουργικός ενισχυτής είναι ιδιαίτερα ευαίσθητος στα αποτελέσματα εναλλασσόμενων ηλεκτρομαγνητικών πεδίων. Ο πυκνωτής αφαιρεί αυτήν την εξάρτηση εισάγοντας αρνητικά σχόλια.
Με τη συμμετοχή ενός τρανζίστορ και μιας διόδου zener, σχηματίζεται μια σταθεροποιημένη τάση αναφοράς. Εδώ χρησιμοποιούνται αντιστάσεις με υψηλότερη κλάση ακρίβειας με χαμηλή τιμή του συντελεστή θερμοκρασίας αντίστασης. Με αυτόν τον τρόπο, ολόκληρο το σχήμα αποκτά επιπλέον σταθερότητα. Σε περίπτωση πιθανών σημαντικών αλλαγών στις συνθήκες θερμοκρασίας, μπορούν να παραλειφθούν οι αντιστάσεις ακριβείας. Χρησιμοποιούνται μόνο για τον έλεγχο της μικρής υπερθέρμανσης.
Θερμοστοιχείο
Οι αισθητήρες θερμοκρασίας θερμοηλεκτρικού ζεύγους χρησιμοποιούνται συχνότερα επειδή είναι ακριβείς, λειτουργούν σε μεγάλο εύρος θερμοκρασιών από -200 ° C έως 2000 ° C και είναι σχετικά φθηνοί. Ένα θερμοστοιχείο με καλώδιο και βύσμα στην παρακάτω φωτογραφία:
Λειτουργία θερμοστοιχείου
Ένα θερμοστοιχείο αποτελείται από δύο διαφορετικά μέταλλα που συγκολλούνται μεταξύ τους για να παράγουν μια πιθανή διαφορά σε σχέση με τη θερμοκρασία. Από τη διαφορά θερμοκρασίας μεταξύ των δύο κόμβων, δημιουργείται μια τάση που χρησιμοποιείται για τη μέτρηση της θερμοκρασίας. Η διαφορά τάσης μεταξύ των δύο κόμβων ονομάζεται εφέ Seebeck.
Εάν και οι δύο ενώσεις είναι στην ίδια θερμοκρασία, η πιθανότητα διαφοράς σε διαφορετικές ενώσεις είναι μηδέν, δηλ. V1 = V2. Ωστόσο, εάν οι συνδέσεις βρίσκονται σε διαφορετικές θερμοκρασίες, η τάση εξόδου σε σχέση με τη διαφορά θερμοκρασίας μεταξύ των δύο συνδέσεων θα είναι ίση με τη διαφορά V1 - V2.
Τύποι αισθητήρων θερμοκρασίας
Ηλεκτρονικός-μηχανικός
Ο απλούστερος και φθηνότερος τύπος ρυθμιστή. Το κύριο μέρος εργασίας του είναι μια ειδική μεταλλική πλάκα που ανταποκρίνεται σε αύξηση ή μείωση της θερμοκρασίας. Το σύστημα ενεργοποιείται και απενεργοποιείται αλλάζοντας την καμπυλότητα της πλάκας κατά τη θέρμανση και την ψύξη. Ο ορισμός της ακριβούς τιμής θερμοκρασίας σε έναν τέτοιο ρυθμιστή δεν θα λειτουργήσει.
Ηλεκτρονικός
Η συσκευή διαθέτει ένα ειδικό στοιχείο που δημιουργεί ένα ειδικό σήμα. Η ισχύς εξαρτάται άμεσα από τις τιμές της θερμοκρασίας περιβάλλοντος. Σε τέτοιες συσκευές, μπορείτε να ορίσετε ακριβείς μετρήσεις θερμοκρασίας θέρμανσης έως ένα κλάσμα ενός βαθμού. Το σύστημα ελέγχεται από κουμπιά και μια μικρή οθόνη.
Προγραμματιζόμενος
Τα πιο ακριβά από τα θερμοστοιχεία. Σε αυτό, μπορείτε να ορίσετε ορισμένες τιμές, όταν φτάσετε στις οποίες ενεργοποιείται ή απενεργοποιείται ολόκληρο το σύστημα από τον ρυθμιστή. Χάρη στη συσκευή, δημιουργείται ένα μικροκλίμα στο δωμάτιο που ταιριάζει σε ένα συγκεκριμένο άτομο. Είναι δυνατή η διαμόρφωση του θερμοστάτη έτσι ώστε το σύστημα να είναι ενεργοποιημένο σε μια συγκεκριμένη ώρα. Δηλαδή, τα δάπεδα θερμαίνονται πριν ο ιδιοκτήτης φτάσει στο σπίτι, και ταυτόχρονα, η ηλεκτρική ενέργεια δεν καταναλώνεται όταν ο ιδιοκτήτης δεν είναι.
Πολλά μοντέλα διαθέτουν φωτεινά και κομψά σχέδια και οθόνες LCD που εμφανίζουν πληροφορίες και διευκολύνουν τη ρύθμιση.
Εργασία με έτοιμες βιβλιοθήκες
Έτσι, για να εργαστείτε με αισθητήρες θερμοκρασίας DS18B20 στο δίκτυο, μπορείτε να βρείτε έναν τεράστιο αριθμό βιβλιοθηκών, αλλά κατά κανόνα χρησιμοποιούνται δύο από τα πιο δημοφιλή. Είναι βιβλιοθήκη και βιβλιοθήκη. Επιπλέον, η δεύτερη βιβλιοθήκη είναι ένα πιο βολικό πρόσθετο από την πρώτη και δεν μπορεί να χρησιμοποιηθεί χωρίς αυτήν. Με άλλα λόγια, πριν συνδέσετε τη βιβλιοθήκη DallasTemperature.h, πρέπει επίσης να συνδέσετε το OneWire.h. Είναι δυνατή η εγκατάσταση ορισμένων βιβλιοθηκών στο Arduino IDE.
Βιβλιοθήκη OneWire.h
Ας σκεφτούμε πρώτα να συνεργαστούμε με τη βιβλιοθήκη OneWire.h. Παρακάτω είναι μια λίστα με τις λειτουργίες της με μια σύντομη περιγραφή.
- Θερμοκρασία OneWire Sensor (uint8_t pinNumber)
Αυτή η συνάρτηση είναι κατασκευαστής της κλάσης OneWire και δημιουργεί ένα αντικείμενο TemperatureSensor, δηλαδή ανοίγει ένα κανάλι επικοινωνίας με έναν αισθητήρα ή μια ομάδα αισθητήρων στο pinNumber pin. Στα παραδείγματα μας (Σχήματα 3-5) αυτός είναι ο πείρος "D2" του Arduino Nano. Σε αυτό συνδέσαμε το δίαυλο δεδομένων DQ DS18B20.
Παράδειγμα:
Αισθητήρας θερμοκρασίας OneWire
(
Δ2
);
// Ένας αισθητήρας ή μια ομάδα αισθητήρων συνδέεται στον πείρο D2
- uint8_t αναζήτηση (addrArray)
Η συνάρτηση αναζητά την επόμενη συσκευή στο δίαυλο 1-Wire και, όταν βρεθεί, εισάγει την τιμή διεύθυνσης στον πίνακα addrArray, επιστρέφοντας αληθινός. Δεδομένου ότι η μοναδική διεύθυνση κάθε αισθητήρα είναι 64-bit, το addrArray πρέπει να έχει μέγεθος 8 byte. Εάν η αναζήτηση αποτύχει, η συνάρτηση επιστρέφει ψευδής. Πρέπει να σημειωθεί ότι όταν πολλοί αισθητήρες θερμοκρασίας είναι συνδεδεμένοι σε ένα δίαυλο, κάθε κλήση στη λειτουργία αναζήτησης θα απευθύνεται στον επόμενο αισθητήρα, στη συνέχεια στον επόμενο κ.λπ., έως ότου απαριθμηθούν όλες οι συσκευές του διαύλου. Η ιδιαιτερότητα αυτής της λειτουργίας είναι να θυμάστε τις ήδη επεξεργασμένες διευθύνσεις. Για να επαναφέρετε την ουρά, πρέπει να καλέσετε τη λειτουργία reset_search (), η οποία θα συζητηθεί παρακάτω.
Παράδειγμα:
byte addrArray
[
8
];
// Σειρά για την αποθήκευση μιας διεύθυνσης 64-bit // Εάν η συσκευή δεν υπάρχει καθόλου στο λεωφορείο ή απαριθμούνται όλες οι συσκευές // εμφανίστε τις αντίστοιχες πληροφορίες στην οθόνη θύρας
αν(!
αισθητήρας θερμοκρασίας
.
Αναζήτηση
(
addrArray
))
Κατα συρροη
.
εκτύπωση
(
"Δεν υπάρχουν άλλες διευθύνσεις."
);
// Διαφορετικά, εάν η επόμενη συσκευή ανταποκρίθηκε στο αίτημα παρουσίας, // εμφανίστε τη διεύθυνση 64-bit στην οθόνη θύρας
αλλού{Για(
Εγώ
=
0
;
Εγώ
<
8
;
Εγώ
++)
Κατα συρροη
.
Τυπώνω
(
addrArray
[
Εγώ
],
ΜΑΓΕΥΩ
);
}
- κενόςreset_search ()
Όπως αναφέρθηκε παραπάνω, αυτή η λειτουργία επαναφέρει την ουρά ψηφοφορίας των συσκευών στο δίαυλο 1-Wire στην αρχή. Θα πρέπει πάντα να χρησιμοποιείται σε συνδυασμό με τη λειτουργία αναζήτησης όταν η τελευταία επιστρέφει ψευδής. Για παράδειγμα, στην περίπτωσή μας με 5 αισθητήρες στο λεωφορείο, καλώντας τη λειτουργία αναζήτησης 5 φορές, μπορούμε να λάβουμε 5 διευθύνσεις. Για έκτη φορά, η λειτουργία αναζήτησης θα επιστρέψει ψευδής σε εμάς και θα το κάνει με κάθε επόμενη δημοσκόπηση έως ότου η ουρά ξεπλυθεί. Πρέπει να το προσέξετε για να αποφύγετε ακατανόητες καταστάσεις.
Παράδειγμα:
byte addrArray
[
8
];
// Διάταξη αποθήκευσης μιας διεύθυνσης 64-bit // Εάν η συσκευή απουσιάζει καθόλου στο λεωφορείο ή απαριθμούνται όλες οι συσκευές // επαναφέρετε την ουρά ψηφοφορίας για να επαναλάβετε τον κύκλο αναζήτησης
αν(!
αισθητήρας θερμοκρασίας
.
Αναζήτηση
(
addrArray
))
αισθητήρας θερμοκρασίας
.
reset_search
();
- uint8_tεπαναφορά ()
Η λειτουργία επαναφοράς 1-καλωδίου ξεκινά τη διαδικασία επικοινωνίας. Καλείται κάθε φορά που θέλουμε να επικοινωνήσουμε με τον αισθητήρα θερμοκρασίας. Οι τιμές επιστροφής μπορεί να είναι αληθείς ή ψευδείς. Θα λάβουμε την πραγματική τιμή εάν τουλάχιστον ένας αισθητήρας στο λεωφορείο ανταποκριθεί στην επαναφορά με παλμό παρουσίας. Διαφορετικά, παίρνουμε ψευδείς.
Παράδειγμα:
αν(!
αισθητήρας θερμοκρασίας
.
επαναφορά
())
Κατα συρροη
.
εκτύπωση
(
"Δεν υπάρχουν αισθητήρες στο λεωφορείο"
);αλλού
Κατα συρροη
.
εκτύπωση
(
"Εντοπίστηκε αισθητήρας"
);
- κενόςεπιλέξτε (addrArray)
Η λειτουργία σάς επιτρέπει να επιλέξετε μια συγκεκριμένη συσκευή με την οποία θέλουμε να εργαζόμαστε αυτήν τη στιγμή. Η επιλογή γίνεται καθορίζοντας ρητά τη διεύθυνση 64-bit που έχει εισαχθεί στον πίνακα addrArray. Η διεύθυνση μπορεί να οριστεί ρητά γράφοντάς την σε πίνακα ή χρησιμοποιώντας αυτήν που είχε διαβάσει προηγουμένως η λειτουργία αναζήτησης. Πρέπει να σημειωθεί ότι η λειτουργία επαναφοράς πρέπει να καλείται πριν από την κλήση της λειτουργίας επιλογής. Με την επόμενη επαναφορά, η σύνδεση με τον επιλεγμένο αισθητήρα διακόπτεται μέχρι την επόμενη κλήση για επιλογή.
Παράδειγμα:
byte addrArray
[
8
];
// Σειρά για την αποθήκευση μιας διεύθυνσης 64-bit // Εάν η συσκευή απουσιάζει καθόλου στο λεωφορείο ή όλες οι συσκευές απαριθμούνται // εξάγετε τις αντίστοιχες πληροφορίες στην οθόνη θύρας
αν(!
αισθητήρας θερμοκρασίας
.
Αναζήτηση
(
addrArray
))
Κατα συρροη
.
εκτύπωση
(
"Δεν υπάρχουν άλλες διευθύνσεις."
);
// Διαφορετικά, εάν η επόμενη συσκευή ανταποκρίθηκε στο αίτημα παρουσίας, // επιλέξτε την για επόμενη εργασία
αλλού{
αισθητήρας θερμοκρασίας
.
επαναφορά ()
;
// Μην ξεχάσετε να εκδώσετε την εντολή reset θερμοκρασίας Sensor
.
επιλέξτε (addrArray)
;
// Καθορίστε έναν πίνακα με τη διεύθυνση ανάγνωσης
}
- κενόςπαράλειψη ()
Η λειτουργία είναι σχετική μόνο όταν εργάζεστε με έναν αισθητήρα στο λεωφορείο και απλώς παραλείπει την επιλογή της συσκευής. Με άλλα λόγια, δεν μπορείτε να χρησιμοποιήσετε τη λειτουργία αναζήτησης και ως εκ τούτου γρήγορη πρόσβαση με τον μόνο αισθητήρα σας.
Παράδειγμα:
αισθητήρας θερμοκρασίας.
επαναφορά
();
// Επαναφέρετε το ελαστικό θερμοκρασίας Sensor
.
παραλείπω
();
// Επιλέξτε τον μοναδικό αισθητήρα για περαιτέρω εργασία με αυτόν
- κενόςγράφω (uint8_tbyte, uint8_t powerType = 0)
Η συνάρτηση αποστέλλει ένα byte δεδομένων στην επιλεγμένη συσκευή του διαύλου. Το όρισμα powerType καθορίζει τον τύπο τροφοδοσίας για τους αισθητήρες (0 - οι αισθητήρες τροφοδοτούνται απευθείας από μια εξωτερική πηγή. 1 - χρησιμοποιείται μια παρασιτική τροφοδοσία). Η δεύτερη παράμετρος μπορεί να παραλειφθεί εάν χρησιμοποιείται εξωτερική ισχύς, καθώς είναι 0 από προεπιλογή.
Παράδειγμα:
αισθητήρας θερμοκρασίας
.
επαναφορά
();
// Επαναφέρετε το ελαστικό θερμοκρασίας Sensor
.
παραλείπω
();
// Επιλέξτε έναν μόνο αισθητήρα για επακόλουθη εργασία // Στείλτε μια εντολή για τη μετατροπή της θερμοκρασίας, // χρησιμοποιώντας μια σύνδεση με παρασιτική ισχύ από το δίαυλο δεδομένων Sensor
.
γράφω
(
0x44
,
1
);
- uint8_tανάγνωση ()
Αυτή η λειτουργία διαβάζει ένα byte δεδομένων που αποστέλλονται από τη δευτερεύουσα συσκευή (αισθητήρας) στο δίαυλο 1-Wire.
Παράδειγμα:
// Διαβάστε 9 byte δεδομένων από το δίαυλο 1-Wire και τοποθετήστε το αποτέλεσμα σε πίνακα byte πίνακα
[
9
];Για(
uint8_t θ
=
0
;
Εγώ
<
9
;
Εγώ
++){
πίνακας
[
Εγώ
]=
αισθητήρας θερμοκρασίας
.
ανάγνωση
();}
- στατικό uint8_t crc8 (const uint8_t * addr, uint8_t len);
Η συνάρτηση έχει σχεδιαστεί για τον υπολογισμό του αθροίσματος ελέγχου. Σχεδιασμένο για να ελέγχει τη σωστή επικοινωνία με τον αισθητήρα θερμοκρασίας. Εδώ το addr είναι ένας δείκτης στη συστοιχία δεδομένων και το len είναι ο αριθμός των byte.
Παράδειγμα:
byte addrArray
[
8
];
// Σειρά για την αποθήκευση μιας διεύθυνσης 64-bit // Εάν η συσκευή απουσιάζει καθόλου στο λεωφορείο ή όλες οι συσκευές απαριθμούνται // εξάγετε τις αντίστοιχες πληροφορίες στην οθόνη θύρας
αν(!
αισθητήρας θερμοκρασίας
.
Αναζήτηση
(
addrArray
))
Κατα συρροη
.
εκτύπωση
(
"Δεν υπάρχουν άλλες διευθύνσεις."
);
// Διαφορετικά, εάν η επόμενη συσκευή ανταποκρίθηκε στο αίτημα παρουσίας, // ελέγξτε το άθροισμα ελέγχου της διεύθυνσής της
αλλού{
// Εάν το άθροισμα ελέγχου δεν ταιριάζει, εμφανίστε ένα μήνυμα σφάλματος
αν(
OneWire
::
crc8
(
addrArray
,
7
)!=
addrArray
[
7
]){
Κατα συρροη
.
εκτύπωση
(
"Το CRC δεν είναι έγκυρο!"
);}}
Εξετάσαμε κάθε λειτουργία της βιβλιοθήκης OneWire.h ξεχωριστά και για να διορθώσουμε το υλικό, παρακάτω θα δώσω ένα σκίτσο για την ανάγνωση της θερμοκρασίας από μια ομάδα αισθητήρων θερμοκρασίας DS18B20, οι οποίοι θα συνδεθούν με τον πείρο D2 χρησιμοποιώντας ένα κύκλωμα παρασιτικής ισχύος. Το σχέδιο θα περιέχει λεπτομερή σχόλια για όλα τα απαραίτητα σημεία.
#include // Συνδέουμε τη βιβλιοθήκη για εργασία με θερμικούς αισθητήρες DS18B20OneWire ds
(
2
);
// Ένας αισθητήρας ή μια ομάδα αισθητήρων συνδέεται στον πείρο D2 του Arduino // PRESET FUNCTION κενή ρύθμιση
(
κενός
){
Κατα συρροη
.
αρχίσουν
(
9600
);
// Έναρξη εργασίας με Serial-port} // MAIN CYCLE void loop
(
κενός
){
byte i
;
// Βοηθητική μεταβλητή για βρόχους byte
=
0
;
// Μεταβλητή για τον προσδιορισμό της ετοιμότητας του αισθητήρα για επικοινωνία byte type_s
;
// Μεταβλητή για τον καθορισμό του τύπου του θερμικού αισθητήρα στο δίαυλο δεδομένων byte
[
12
];
// Διάταξη για την αποθήκευση πληροφοριών που λαμβάνονται από τον αισθητήρα byte addr
[
8
];
// Σειρά για την αποθήκευση της διεύθυνσης 64-bit του αισθητήρα float celsius
,
θερμόμετρο Φαρενάιτ
;
// Μεταβλητές για τον υπολογισμό της θερμοκρασίας // Εάν δεν βρεθούν συσκευές στο δίαυλο ή απαριθμηθούν όλες οι συσκευές στο δίαυλο // εμφανίστε τις αντίστοιχες πληροφορίες στην οθόνη θύρας, επαναφέρετε την ουρά // και πραγματοποιήστε ξανά αναζήτηση, περιμένοντας 250ms
αν(!
δδ
.
Αναζήτηση
(
προσθήκη
)){
Κατα συρροη
.
εκτύπωση
(
"Δεν υπάρχουν άλλες διευθύνσεις."
);
Κατα συρροη
.
εκτύπωση
();
δδ
.
reset_search
();
καθυστέρηση
(
250
);ΕΠΙΣΤΡΟΦΗ;}
// Εάν βρεθεί η επόμενη συσκευή στο λεωφορείο, εμφανίστε τη μοναδική της διεύθυνση // στην οθόνη θύρας στο hex Serial
.
Τυπώνω
(
"ROM ="
);Για(
Εγώ
=
0
;
Εγώ
<
8
;
Εγώ
++){
Κατα συρροη
.
γράφω
(
‘ ‘
);
Κατα συρροη
.
Τυπώνω
(
προσθήκη
[
Εγώ
],
ΜΑΓΕΥΩ
);}
// Ελέγξτε το άθροισμα ελέγχου της διεύθυνσης της συσκευής που βρέθηκε // και αν δεν ταιριάζει, εμφανίστε τις αντίστοιχες πληροφορίες
αν(
OneWire
::
crc8
(
προσθήκη
,
7
)!=
προσθήκη
[
7
]){
Κατα συρροη
.
εκτύπωση
(
"Το CRC δεν είναι έγκυρο!"
);ΕΠΙΣΤΡΟΦΗ;}
Κατα συρροη
.
εκτύπωση
();
// Ελέγξτε το μηδέν byte της διεύθυνσης, το οποίο περιέχει πληροφορίες // σχετικά με έναν συγκεκριμένο τύπο αισθητήρα θερμοκρασίας. Ανάλογα με την τιμή του μηδέν // byte, εμφανίζουμε τη σειρά του chip στην οθόνη θύρας. Εάν το μηδέν byte περιέχει μια άγνωστη τιμή //, εμφανίζεται ένα μήνυμα σχετικά με την άγνωστη οικογένεια του αισθητήρα θερμοκρασίας.
διακόπτης(
προσθήκη
[
0
]){υπόθεση
0x10
:
Κατα συρροη
.
εκτύπωση
(
"Τσιπ = DS18S20"
);
πληκτρολογήστε_s
=
1
;Διακοπή;υπόθεση
0x28
:
Κατα συρροη
.
εκτύπωση
(
"Τσιπ = DS18B20"
);
πληκτρολογήστε_s
=
0
;Διακοπή;υπόθεση
0x22
:
Κατα συρροη
.
εκτύπωση
(
"Τσιπ = DS1822"
);
πληκτρολογήστε_s
=
0
;Διακοπή;Προκαθορισμένο:
Κατα συρροη
.
εκτύπωση
(
"Η συσκευή δεν είναι οικογενειακή συσκευή DS18x20."
);ΕΠΙΣΤΡΟΦΗ;}
δδ
.
επαναφορά
();
// Επαναφέρετε το δίαυλο για να ξεκινήσετε την ανταλλαγή δεδομένων ds
.
επιλέγω
(
προσθήκη
);
// Επιλέξτε τον αισθητήρα με την τρέχουσα διεύθυνση για να εργαστείτε μαζί του // Στείλτε την εντολή για να μετατρέψετε τη θερμοκρασία (σύμφωνα με την τεκμηρίωση 0x44) // Μην ξεχάσετε τη δεύτερη παράμετρο "1", καθώς μεταδίδουμε δεδομένα μέσω του / / γραμμή με παράσιτο τροφοδοτικό. δδ
.
γράφω
(
0x44
,
1
);
// Ο αισθητήρας ξεκινά τη μετατροπή, η οποία σύμφωνα με την τεκμηρίωση διαρκεί το μέγιστο. 750ms // Για να είμαστε στην ασφαλή πλευρά, θα οργανώσουμε μια παύση καθυστέρησης ё δευτερολέπτου
(
1000
);
// Επαναφέρετε ξανά το δίαυλο για να διαβάσετε πληροφορίες από τον αισθητήρα // αποθηκεύστε την απόκριση της λειτουργίας επαναφοράς () στην παρούσα μεταβλητή για περαιτέρω εργασία με αυτήν που υπάρχει
=
δδ
.
επαναφορά
();
δδ
.
επιλέγω
(
προσθήκη
);
// Επιλέξτε ξανά τον αισθητήρα από τη διεύθυνσή του, καθώς υπήρχε παλμός επαναφοράς // Η εντολή 0xBE, σύμφωνα με την τεχνική τεκμηρίωση, επιτρέπει την ανάγνωση της εσωτερικής μνήμης // του αισθητήρα θερμοκρασίας (Scratchpad), που αποτελείται από 9 byte. δδ
.
γράφω
(
0xBE
);
// Διαβάστε και εμφανίστε 9 byte από την εσωτερική μνήμη του αισθητήρα θερμοκρασίας Serial στην οθόνη θύρας
.
Τυπώνω
(
"Δεδομένα ="
);
Κατα συρροη
.
Τυπώνω
(
παρόν
,
ΜΑΓΕΥΩ
);
Κατα συρροη
.
Τυπώνω
(
» «
);Για(
Εγώ
=
0
;
Εγώ
<
9
;
Εγώ
++){
δεδομένα
[
Εγώ
]=
δδ
.
ανάγνωση
();
Κατα συρροη
.
Τυπώνω
(
δεδομένα
[
Εγώ
],
ΜΑΓΕΥΩ
);
Κατα συρροη
.
Τυπώνω
(
» «
);}
// Έλεγχος και έξοδος στη θύρα παρακολουθεί το άθροισμα ελέγχου των ληφθέντων δεδομένων Serial
.
Τυπώνω
(
"CRC ="
);
Κατα συρροη
.
Τυπώνω
(
OneWire
::
crc8
(
δεδομένα
,
8
),
ΜΑΓΕΥΩ
);
Κατα συρροη
.
εκτύπωση
();
// Ξεκινήστε τη διαδικασία μετατροπής των ληφθέντων δεδομένων στην πραγματική θερμοκρασία, // η οποία αποθηκεύεται σε 0 και 1 byte μνήμης ανάγνωσης. Για να το κάνουμε αυτό, συνδυάζουμε αυτά τα δύο // bytes σε έναν αριθμό 16 bit bit int16_t
=(
δεδομένα
[
1
]<<
8
)|
δεδομένα
[
0
];
// Πριν από την περαιτέρω μετατροπή, δεν θα χρειαστεί να ορίσετε την οικογένεια στην οποία // ανήκει αυτός ο αισθητήρας (νωρίτερα αποθηκεύσαμε το αποτέλεσμα στη μεταβλητή type_s). // Ανάλογα με την οικογένεια, η θερμοκρασία θα υπολογιστεί διαφορετικά, // αφού τα DS18B20 και DS1822 επιστρέφουν μια τιμή 12-bit, ενώ το DS18S20 επιστρέφει μια τιμή 9-bit
αν(
πληκτρολογήστε_s
){
// Εάν ο αισθητήρας ανήκει στην οικογένεια ακατέργαστων DS18S20
=
ακατέργαστος
<<
3
;
// η προεπιλεγμένη ανάλυση είναι 9 bit
αν(
δεδομένα
[
7
]==
0x10
){
ακατέργαστος
=(
ακατέργαστος
&
0xFFF0
)+
12
—
δεδομένα
[
6
];}}αλλού{
// Προσδιορίστε σε ποια ακρίβεια μέτρησης έχει ρυθμιστεί αυτός ο αισθητήρας byte cfg
=(
δεδομένα
[
4
]&
0x60
);
// Σε χαμηλότερες αναλύσεις, μπορείτε να μηδενίσετε τα λιγότερο σημαντικά bit, // αφού δεν έχουν οριστεί νωρίς
αν(
βλ
==
0x00
)
ακατέργαστος
=
ακατέργαστος
&~
7
;
// 9 bit (η μετατροπή διαρκεί 93,75 ms)
αλλούαν(
βλ
==
0x20
)
ακατέργαστος
=
ακατέργαστος
&~
3
;
// 10 bit (η μετατροπή διαρκεί 187,5 ms)
αλλούαν(
βλ
==
0x40
)
ακατέργαστος
=
ακατέργαστος
&~
1
;
// 11 bit (η μετατροπή διαρκεί 375 ms) // Η προεπιλεγμένη ακρίβεια είναι 12 bit (η μετατροπή διαρκεί 750 ms)
}
// Υπολογισμός και έξοδος τιμών θερμοκρασίας στην οθόνη θύρας Κελσίου
=(
φλοτέρ
)
ακατέργαστος
/
16.0
;
θερμόμετρο Φαρενάιτ
=
Κελσίου
*
1.8
+
32.0
;
Κατα συρροη
.
Τυπώνω
(
"Θερμοκρασία ="
);
Κατα συρροη
.
Τυπώνω
(
Κελσίου
);
Κατα συρροη
.
Τυπώνω
(
"Κελσίου"
);
Κατα συρροη
.
Τυπώνω
(
θερμόμετρο Φαρενάιτ
);
Κατα συρροη
.
εκτύπωση
(
"Θερμόμετρο Φαρενάιτ"
);}
Εάν όλα γίνονται σωστά, τότε στο παράθυρο παρακολούθησης θύρας θα πρέπει να δούμε κάτι σαν το ακόλουθο (Εικόνα 6):
Εικόνα 6 - το αποτέλεσμα της συνεργασίας με τη βιβλιοθήκη OneWire.h
Βιβλιοθήκη DallasTemperature.h
Αυτή η βιβλιοθήκη βασίζεται στην προηγούμενη και απλοποιεί λίγο τη διαδικασία προγραμματισμού λόγω πιο κατανοητών λειτουργιών. Μετά την εγκατάσταση, θα έχετε πρόσβαση σε 14 παραδείγματα καλά τεκμηριωμένου κώδικα για όλες τις περιπτώσεις. Στο πλαίσιο αυτού του άρθρου, θα εξεταστεί ένα παράδειγμα λειτουργίας με έναν αισθητήρα.
Το αποτέλεσμα του προγράμματος φαίνεται στο σχήμα 7
Εικόνα №7 - το αποτέλεσμα της ανάγνωσης της θερμοκρασίας χρησιμοποιώντας τη βιβλιοθήκη DallasTemperature.h
// Συνδέουμε τις απαραίτητες βιβλιοθήκες # include #include // Συνδέουμε το δίαυλο δεδομένων στην καρφίτσα # 2 του Arduino # define ONE_WIRE_BUS 2 // Δημιουργήστε μια παρουσία της τάξης για το λεωφορείο μας και έναν σύνδεσμο για αυτό OneWire oneWire
(
ONE_WIRE_BUS
);
Αισθητήρες θερμοκρασίας Dallas
(&
ένα καλώδιο
);
// Ακύρωση ρύθμισης PRESET FUNCTION
(
κενός
){
Κατα συρροη
.
αρχίσουν
(
9600
);
// Αρχικοποιήστε τους αισθητήρες σειριακής θύρας
.
αρχίσουν
();
// Αρχικοποιήστε το λεωφορείο
}
// ΚΥΡΙΟ ΚΥΚΛΟΣ
(
κενός
){
Κατα συρροη
.
Τυπώνω
(
"Θερμοκρασία ανάγνωσης ..."
);
// Στείλτε την εντολή για ανάγνωση αισθητήρων
.
requestTemperatures
();
Κατα συρροη
.
εκτύπωση
(
"Ανάγνωση"
);
Κατα συρροη
.
Τυπώνω
(
"Θερμοκρασία αισθητήρα 1:"
);
// Εμφάνιση της θερμοκρασίας Serial
.
Τυπώνω
(
Αισθητήρες
.
getTempCByIndex
(
0
));}
Αισθητήρας θερμοκρασίας KY-001 με διεπαφή 1-Wire
Αυτός ο αισθητήρας χρησιμοποιείται για ακριβή μέτρηση θερμοκρασίας. Η επικοινωνία με τον αισθητήρα πραγματοποιείται μέσω της διεπαφής 1-Wire [1-2], η οποία σας επιτρέπει να συνδέσετε πολλές παρόμοιες συσκευές στην πλακέτα Arduino χρησιμοποιώντας έναν πείρο μικροελεγκτή [3-4]. Η μονάδα βασίζεται στο μικροκύκλωμα ds18b20 [5].
Μέγεθος μονάδας 24 x 15 x 10 mm, βάρος 1,3 g. Ένας σύνδεσμος τριών ακίδων χρησιμοποιείται για σύνδεση. Κεντρική επαφή - τροφοδοσία + 5V, επαφή "-" - κοινή, επικοινωνία "S" - ενημερωτική.
Η πλακέτα διαθέτει ένα κόκκινο LED που ανάβει κατά την ανταλλαγή πληροφοριών.
Τρέχουσα κατανάλωση 0,6 mA κατά την ανταλλαγή πληροφοριών και 20 μA σε κατάσταση αναμονής.
Η σύνδεση αυτού του τύπου αισθητήρων στο Arduino περιγράφεται καλά σε πολλές πηγές [6-8]. Σε αυτήν την περίπτωση, τα κύρια πλεονεκτήματα του Arduino εκδηλώνονται και πάλι - η ευελιξία και η παρουσία τεράστιου όγκου πληροφοριών αναφοράς. Για να εργαστείτε με τον αισθητήρα, θα χρειαστείτε τη Βιβλιοθήκη OneWire [9]. Έχοντας φορτώσει το πρόγραμμα από το [8] (υπάρχει ένα σφάλμα στην πρώτη έκδοση του προγράμματος - δεν υπάρχει # βιβλιοθήκη συμπερίληψης στην κεφαλίδα κώδικα), οι ακόλουθες πληροφορίες μπορούν να παρατηρηθούν στην οθόνη σειριακής θύρας.
Ο συγγραφέας δοκίμασε επίσης τον κωδικό από [7], όλα λειτουργούσαν αμέσως, στην οθόνη σειριακής θύρας μπορείτε να διαβάσετε πληροφορίες σχετικά με τον τύπο του συνδεδεμένου αισθητήρα και τα πραγματικά δεδομένα θερμοκρασίας.
Γενικά, ένας πολύ χρήσιμος αισθητήρας που καθιστά δυνατή την εξοικείωση με τη διεπαφή 1-Wire στην πράξη. Ο αισθητήρας δίνει τα σωστά δεδομένα θερμοκρασίας αμέσως, ο χρήστης δεν χρειάζεται να βαθμονομήσει.