Πίνακας περιεχομένων:
- Βήμα 1: Χρειάζεστε
- Βήμα 2: Δημιουργήστε τη διεπαφή RS232
- Βήμα 3: Δοκιμή της διεπαφής RS232
- Βήμα 4: Κάντε τους αισθητήρες και το δίκτυο
- Βήμα 5: Ρύθμιση λογισμικού - Απόκτηση δεδομένων
- Βήμα 6: Ρύθμιση λογισμικού - Γραφή
- Βήμα 7: Υλοποίηση 1 - Παρακολούθηση δωματίου διακομιστή
- Βήμα 8: Υλοποίηση 2 - Μετεωρολογικός σταθμός
- Βήμα 9: Υλοποίηση 3 - Φοιτητική εστία
Βίντεο: Αισθητήρας θερμοκρασίας / Weatherstation: 9 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Δημιουργήστε έναν μετρητή θερμοκρασίας ή θερμοκρασίας χρησιμοποιώντας τον πολύ δροσερό ψηφιακό αισθητήρα θερμοκρασίας DS1820. Χρησιμοποιώ αυτήν τη ρύθμιση για την παρακολούθηση ενός δωματίου διακομιστή και ως υδροσταθμού. Αυτό το έργο αποτελείται από:
- Ένα δίκτυο λεωφορείων του Ντάλας 1-Wire
- Διασύνδεση μεταξύ RS-232 και συστήματος Dallas 1-Wire
- Digitalηφιακοί αισθητήρες θερμοκρασίας συνδεδεμένοι με το λεωφορείο Dallas 1-Wire (DS1820/DS18s20)
- Ρύθμιση λογισμικού για συλλογή και γραφική παράσταση θερμοκρασιών
Ενημερώθηκε 2007-11-18 για να συμπεριλάβει αυτόματα γραφικά σενάρια και εικόνες από πραγματικές εφαρμογές αυτού του συστήματος.
Βήμα 1: Χρειάζεστε
Αυτό είναι που χρειάζεστε για να φτιάξετε έναν μετεωρολογικό σταθμό ή έναν καταγραφέα θερμοκρασίας:
- Μερικές δεξιότητες Linux
- Βασικές δεξιότητες ηλεκτρονικής, συγκόλληση κλπ.
Συστατικά
- 1 δίοδος Zener 6,2V (1N5234)
- 1 δίοδος 3,9V Zener (1N5228)
- 2 δίοδοι Schottky (1N5818)
- 1 αντίσταση 1,5 k
- 1 βιδωτός ακροδέκτης 2 ακίδων
- 1 θηλυκή υποδοχή D-sub 9 με σημεία συγκόλλησης
- 1 μικρό κομμάτι από γυαλόχαρτο.
- Ένας ή περισσότεροι ψηφιακοί αισθητήρες θερμοκρασίας Dallas Semiconductor DS1820 ή DS18s20
- Καλωδίωση Cat5
- Συρρίκνωση σωλήνα
Βήμα 2: Δημιουργήστε τη διεπαφή RS232
Μου αρέσει να κατασκευάζω το busmaster 1-Wire τόσο μικρό ώστε να μπορεί να καθίσει στο πίσω μέρος του υπολογιστή στη θύρα rs232.
Βήμα 1) Μάθετε πόσο μικρό μπορείτε να το φτιάξετε. Βάλτε όλα τα εξαρτήματα σε ένα perfbaord. Τοποθετήστε τα έχοντας κατά νου το κύκλωμα. Δεν θέλουμε να προσθέσουμε καλώδια στο κάτω μέρος του κυκλώματος! Se εικόνα. Βήμα 2) Κόψτε το διάτρητο σωστό μέγεθος. Απλώς σύρετε ένα κοφτερό μαχαίρι μερικές φορές πάνω από τη σειρά τρυπών όπου θέλετε να κόψετε. Κάντε το και από τις δύο πλευρές και, στη συνέχεια, χωρίστε το στα δύο. Συνήθως σπάει στη γραμμή βλάβης που δημιουργήσατε. 3) Συγκολλήστε τα εξαρτήματα στη θέση τους. και συνδέστε τα σημεία συγκόλλησης για να ολοκληρώσετε το κύκλωμα.
Βήμα 3: Δοκιμή της διεπαφής RS232
1) Λήψη και εγκατάσταση digitemp. Σε Debian και Ubuntu Linux, αυτό γίνεται εκτελώντας `sudo apt-get install digitemp`.2) Συνδέστε ένα DS1820 στο κύκλωμά σας. Το μεσαίο πόδι πηγαίνει στη θύρα DQ, τα άλλα δύο πόδια πηγαίνουν σε GND3) Συνδέστε το κύκλωμα σε μια θύρα υπολογιστών rs232. Καλύπτω μόνο αυτό με Linux, αλλά είναι επίσης δυνατό να το κάνετε αυτό στα Windows..4) Εάν η εντολή `digitemp` δεν λειτουργεί, είναι επειδή υπάρχουν πολλές εκδόσεις digitemp.type digitemp, στη συνέχεια πατήστε tab για να τα δείτε όλα.. digitemp_DS9097 είναι η σωστή για αυτόν τον 1wire busmaster. Απλά για λόγους απλότητας, θέλουμε η εντολή να είναι «digitemp», όχι «digitemp_DS9097». τύπος `sudo ln -s/usr/bin/digitemp_DS9097/usr/bin/digitemp`5) Ως root ή χρησιμοποιώντας sudo: Εκτελέστε `digitemp -s/dev/ttyS0 -i`. Αυτό πραγματοποιεί αναζήτηση στο δίκτυο 1wire για αισθητήρες και δημιουργεί ένα αρχείο ρυθμίσεων για το digitemp. Εάν χρησιμοποιείτε COM2, χρησιμοποιήστε -s /dev/ttyS1. Εκτέλεση `digitemp -a` για να διαβάσετε τη θερμοκρασία του συνδεδεμένου αισθητήρα θερμοκρασίας. Δείτε το στιγμιότυπο οθόνης6) Κάντε αυτό για όλους τους αισθητήρες που πρόκειται να χρησιμοποιήσετε και γράψτε τις διευθύνσεις για κάθε έναν. Όταν έχετε πολλούς αισθητήρες, είναι ωραίο να γνωρίζετε ποιος είναι ποιος.
Βήμα 4: Κάντε τους αισθητήρες και το δίκτυο
Κατά την καλωδίωση του δικτύου σας 1wire, θέλετε να χρησιμοποιήσετε καλώδια δικτύου cat 5.
Είχα κάποιες άσχημες εμπειρίες χρησιμοποιώντας άλλα καλώδια και συνδυασμό διαφορετικών τύπων καλωδίων. Όταν τρέχετε πάνω από το cat5, το λεωφορείο 1wire μπορεί να έχει αρκετά μακριά καλώδια. Σε μια ρύθμιση καιρικών συνθηκών, τρέχω ένα cat5 30 μέτρων από ένα τεχνικό δωμάτιο με υπολογιστή Linux και μέχρι την οροφή. Στην οροφή, το καλώδιο χωρίζεται σε 3 καλώδια μήκους 5-15 μέτρων με έναν αισθητήρα στο τέλος του καθενός. Αυτή η ρύθμιση λειτουργεί άψογα. Το δίκτυο 1 καλωδίων είναι αρκετά ισχυρό. Κατασκευή του αισθητήρα: Θέλετε να κάνετε τον αισθητήρα αδιάβροχο και άκαμπτο. 1) Κόψτε ένα καλώδιο Cat 5 στο επιθυμητό μήκος. 2) Απομονώστε το άκρο του αισθητήρα. Κόψτε τα 3 από τα 4 ζεύγη, αφήνοντας το πράσινο/λευκό πράσινο. 3) Σύρετε έναν μικρό σωλήνα συρρίκνωσης πάνω από το πράσινο σύρμα. 4) Συγκολλήστε το πράσινο σύρμα στο μεσαίο πείρο του DS1820 5) Τραβήξτε το σωλήνα συρρίκνωσης προς τα πάνω, έτσι ώστε να καλύπτει όλο το μέταλλο του μεσαίου ποδιού και το μέταλλο του σύρματος που συνδέεται με αυτό. Στη συνέχεια, θερμάνετε με έναν αναπτήρα ή ένα πιστόλι θερμότητας για να το συρρικνώσετε στη θέση του 6) Συγκολλήστε το λευκό/πράσινο σύρμα στις άλλες δύο ακίδες. 7) Βάλτε έναν μεγαλύτερο σωλήνα συρρίκνωσης πάνω από τον αισθητήρα και το καλώδιο. Δείτε την εικόνα. Στη συνέχεια, θερμάνετε απαλά με έναν αναπτήρα για να συρρικνωθεί στη θέση του. Δεν θέλετε να βάλετε φωτιά, απλώς κρατήστε τη φλόγα 4-10 χιλιοστά μακριά από το σωλήνα συρρίκνωσης. 8) Τοποθετήστε τους αισθητήρες σας όπου θέλετε να τους έχετε, συνδεθείτε στη διεπαφή rs232 και συνδέστε τον υπολογιστή σας.
Βήμα 5: Ρύθμιση λογισμικού - Απόκτηση δεδομένων
Τώρα που έχουμε τους αισθητήρες μας στη θέση τους, θέλουμε να συλλέξουμε κάποια δεδομένα από αυτούς. Ως root στο μηχάνημα Linux σας: 1) Εκτελέστε `digitemp -s /dev /ttyS0 -i -c /etc/digitemp.conf` Αυτό δημιουργεί τη διαμόρφωση αρχείο digitemp.conf με αισθητήρες yoru. Παρακολουθήστε την έξοδο για να δείτε ποιον αριθμό παίρνουν οι αισθητήρες. 2) Ελέγξτε τη θερμοκρασία με `digitemp -aq -c /etc/digitemp.conf`3)Αναφέρετε τα δεδομένα εξόδου σε ένα αρχείο. Απορρίπτω σε ένα αρχείο στο apache wwwroot, με αυτόν τον τρόπο μπορώ να έχω πρόσβαση στη θερμοκρασία από οπουδήποτε. Η εντολή `digitemp -aq -c /etc/digitemp.conf>/var/www/digitemp.txt` βάζει την έξοδο του digitemp στο αρχείο digitemp.txt4) Αυτοματοποιήστε αυτήν τη διαδικασία: πληκτρολογήστε `crontab -e`, αυτό ανοίγει τις ρίζες crontab. Πληκτρολογήστε` * * * * * digitemp -aq -c /etc/digitemp.conf> /tmp /digitemp; mv /tmp /digitemp /var /www /digitemp.txt` σε αυτό το αρχείο και αποθηκεύστε το. Εκτελέστε το "crontab -l" για να επιβεβαιώσετε ότι το crontab έχει εγκατασταθεί. Ο λόγος για τον οποίο τοποθετώ την έξοδο στο /tmp και στη συνέχεια μετακινούμαι it to /var /www, είναι ότι η digitemp χρησιμοποιεί λίγα δευτερόλεπτα για να ανταγωνιστεί το τρέξιμό της. Εάν προσπαθήσετε να αποκτήσετε πρόσβαση στην έξοδο ενώ εκτελείται η digitemp, θα λάβετε ένα μη ολοκληρωμένο αρχείο. Αυτό θα μπορούσε να καταστρέψει άλλα σενάρια που διαβάζουν δεδομένα από αυτό το αρχείο. (Αυτό δεν περιλαμβάνεται στο στιγμιότυπο οθόνης, ξέχασα να το κάνω) Ο καιρός σας είναι τώρα σε λειτουργία. Χρησιμοποιήστε τα δεδομένα για να κάνετε ό, τι θέλετε, γράψτε το, χρησιμοποιήστε το για να στείλετε email σε περίπτωση υψηλής/χαμηλής θερμοκρασίας κλπ.
Βήμα 6: Ρύθμιση λογισμικού - Γραφή
Αυτό είναι το δύσκολο κομμάτι, πολλά σενάρια χρειάζονται εδώ. 1) Δημιουργήστε ένα μέρος για να βάλετε τα σενάρια, ένα μέρος για να αποθηκεύσετε τις εικόνες και ένα μέρος για να αποθηκεύσετε τα δεδομένα. "Mkdir /etc /tempsensor" /temperature "` mkdir/var/log/digitemp_rrd`2) Εγκατάσταση λογισμικού: Θα χρειαστείτε, PHP και RRDtool. "apt-get install rrdtool ""apt-get install php" (υπάρχουν πολλά πακέτα php, εγκαταστήστε ένα με εκτελέσιμη κονσόλα) 3) Κατεβάστε και εγκαταστήστε τα σενάρια που είναι υπεύθυνα για τη δημιουργία των γραφημάτων: Κατεβάστε το tempsensor-0.1.tar.gz στο μηχάνημά σας linux.`tar xvzf tempsensor-0.1.tar.gz "" cp -v tempsensor/*/etc/ tempsensor`4) Διαμορφώστε τα scripts Ανοίξτε /etc/tempsensor/config.php και ακολουθήστε τα σχόλια σε αυτό το αρχείο. Αλλάξτε το σενάριο για να διαβάσετε δεδομένα εισόδου από το "/var/www/digitemp.txt" αν ακολουθήσατε το παράδειγμα στο προηγούμενο βήμα.5) Αυτοματοποίηση. Προσθέστε μια καταχώριση crontab με τον ίδιο τρόπο όπως στο προηγούμενο βήμα. Το σενάριο πρέπει να εκτελείται κάθε 5ο λεπτό. Οι γραμμές πρέπει να μοιάζουν με αυτήν: ` */5 * * * * php /etc/tempsensor/logdata.php «*/5 * * * * php /etc/tempsensor/graphdata.php `6) Εκτελέστε χειροκίνητα τα σενάρια για να ελέγξετε αν λειτουργεί. το αρχείο διαμόρφωσης.
Βήμα 7: Υλοποίηση 1 - Παρακολούθηση δωματίου διακομιστή
Η πρώτη μου εφαρμογή αυτού του συστήματος ήταν στην αίθουσα διακομιστών στις φοιτητικές εστίες όπου εργάζομαι. Εδώ είναι μερικές εικόνες για εσάς.
Βήμα 8: Υλοποίηση 2 - Μετεωρολογικός σταθμός
Όταν εξόπλισα το δωμάτιο διακομιστή με αισθητήρες θερμοκρασίας, απλά δεν μπορούσα να αντισταθώ να βάλω μερικά στην οροφή!
Ο καιρός είναι λίγο πιο περίπλοκος από το διακομιστή. Υπάρχουν πολλές παρεμβολές έξω. Ο ήλιος μπορεί να χτυπήσει έναν αισθητήρα, στέλνοντάς τον από -1 έως 30 c σε 5 λεπτά. Το έλυσα χρησιμοποιώντας τρεις αισθητήρες τοποθετημένους σε σημεία που θα δέχονταν το φως του ήλιου σε διαφορετικές ώρες της ημέρας. Δεδομένου ότι η θερμότητα είναι ο μόνος "θόρυβος" στη μέτρηση, απλώς χρησιμοποιώ τον αισθητήρα με τη χαμηλότερη ένδειξη ανά πάσα στιγμή ως "εξωτερική θερμοκρασία". Αυτή η θερμοκρασία εξομαλύνεται και πάλι με μέσο όρο τα τελευταία λεπτά.
Βήμα 9: Υλοποίηση 3 - Φοιτητική εστία
Ένας φίλος μου ακολούθησε αυτό το διδακτικό και εξόπλισε το διαμέρισμά του με αισθητήρες θερμοκρασίας. Στο ψυγείο, στο μπάνιο, στον υπολογιστή κλπ.:)
Συνιστάται:
Αισθητήρας θερμοκρασίας και κρέατος BBQ στο ESP8266 Με οθόνη: 5 βήματα (με εικόνες)
BBQ Temperature & Meat Sensor στο ESP8266 With Display: Σε αυτό το Instructable θα σας δείξω πώς να φτιάξετε τη δική σας έκδοση ενός εργαλείου BBQ που μετρά την τρέχουσα θερμοκρασία στο μπάρμπεκιου σας και ενεργοποιεί έναν ανεμιστήρα για να ανάψει αν χρειαστεί. Επιπλέον, υπάρχει επίσης ένας αισθητήρας θερμοκρασίας πυρήνα κρέατος attac
Αισθητήρας θερμοκρασίας για Arduino Εφαρμόστηκε για βήματα COVID 19: 12 (με εικόνες)
Αισθητήρας θερμοκρασίας για Arduino Εφαρμόστηκε για COVID 19: Ο αισθητήρας θερμοκρασίας για το Arduino είναι ένα θεμελιώδες στοιχείο όταν θέλουμε να μετρήσουμε τη θερμοκρασία ενός επεξεργαστή του ανθρώπινου σώματος. Ο αισθητήρας θερμοκρασίας με το Arduino πρέπει να είναι σε επαφή ή κοντά για να λάβει και να μετρήσει το επίπεδο θερμότητας. Έτσι
ESP32 NTP Θερμόμετρο μαγειρέματος θερμοκρασίας ανιχνευτή θερμοκρασίας με διόρθωση και συναγερμό θερμοκρασίας Steinhart-Hart .: 7 βήματα (με εικόνες)
ESP32 NTP Θερμόμετρο Θερμόμετρο μαγειρέματος με διόρθωση και συναγερμό θερμοκρασίας Steinhart-Hart .: Ακόμα στο ταξίδι για να ολοκληρώσετε ένα «επερχόμενο έργο», ", ESP32 NTP Temperature Probe Cooking Thermometer With Steinhart-Hart Correction and Temperature Alarm " είναι ένας οδηγός που δείχνει πώς προσθέτω έναν αισθητήρα θερμοκρασίας NTP, piezo b
Αισθητήρας θερμοκρασίας IoT με ESP8266: 6 βήματα (με εικόνες)
IoT Temperature Sensor With ESP8266: Εμπνεύστηκα να δημιουργήσω έναν αισθητήρα θερμοκρασίας που μπορώ να παρακολουθώ μέσω wifi. Αυτό το έργο δεν είναι νέο, αλλά μου αρέσει η ιδέα να έχω ενδιάμεσο επίπεδο για ασφάλεια και να μην χρειάζεται να ανοίξω θύρα στο δρομολογητή σας στη συσκευή σας IoT. Η βασική ιδέα θα
Ασύρματος αισθητήρας θερμοκρασίας και κίνησης IoT: 11 βήματα (με εικόνες)
IoT Wireless Temperature and Motion Sensor: Εμπνεύστηκα από τα πολλά έργα IoT που βρίσκονται στο Instructables, οπότε στη διαδικασία εκμάθησης προσπαθώ να συνδυάσω κάποια χρήσιμη εφαρμογή που είναι σχετική. Ως επέκταση στα προηγούμενα Instructables που σχετίζονται με τον αισθητήρα θερμοκρασίας IoT, τώρα