Sommario:
- Passaggio 1: è necessario
- Passaggio 2: crea l'interfaccia RS232
- Passaggio 3: test dell'interfaccia RS232
- Passaggio 4: crea i sensori e la rete
- Passaggio 5: configurazione del software - acquisizione dati
- Passaggio 6: installazione del software - Grafici
- Passaggio 7: implementazione 1 - Monitoraggio della sala server
- Passaggio 8: implementazione 2 - Stazione meteorologica
- Passaggio 9: implementazione 3 - Dormitorio per studenti
Video: Sensore di temperatura/stazione meteorologica: 9 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:05
Crea una stazione meteorologica o un monitor della temperatura utilizzando il fantastico sensore di temperatura digitale DS1820. Uso questa configurazione per monitorare una sala server e come stazione meteorologica. Questo progetto consiste in:
- Una rete di autobus Dallas 1-Wire
- Interfaccia tra RS-232 e il sistema Dallas 1-Wire
- Sensori di temperatura digitali collegati al bus Dallas 1-Wire (DS1820/DS18s20)
- Configurazione del software per raccogliere e rappresentare graficamente le temperature
Aggiornato il 18-11-2007 per includere script grafici automatici e immagini di implementazioni reali di questo sistema.
Passaggio 1: è necessario
Questo è ciò di cui hai bisogno per realizzare una stazione meteorologica o un registratore di temperatura:
- Alcune abilità di Linux
- Competenze di elettronica di base, saldatura ecc.
Componenti
- 1 diodo Zener da 6,2 V (1N5234)
- 1 diodo Zener da 3,9 V (1N5228)
- 2 diodi Schottky (1N5818)
- 1 resistenza da 1,5 k
- 1 morsetto a vite a 2 pin
- 1 connettore femmina D-sub 9 con punti di saldatura
- 1 piccolo pezzo di perfboard.
- Uno o più sensori di temperatura digitali Dallas Semiconductor DS1820 o DS18s20
- Cablaggio Cat5
- Tubo termoretraibile
Passaggio 2: crea l'interfaccia RS232
Mi piace costruire il busmaster 1-Wire così piccolo da poterlo semplicemente sedere nella parte posteriore del computer nella porta rs232.
Passaggio 1) Scopri quanto piccolo puoi farlo. Metti tutti i componenti su una perfbaord. Posizionali con il circuito in mente. Non vogliamo aggiungere alcun filo alla parte inferiore del circuito! Vedi immagine. Passaggio 2) Ritagliare la perfboard della giusta dimensione. Basta trascinare un coltello affilato alcune volte sulla fila di fori in cui si desidera tagliare. Fallo su entrambi i lati, quindi spezzalo in due. Di solito si rompe sulla linea di faglia che hai creato. 3) Saldare i componenti in posizione. e collegare i punti di saldatura per completare il circuito.
Passaggio 3: test dell'interfaccia RS232
1) Scarica e installa digitemp. Su Debian e Ubuntu Linux, questo viene fatto eseguendo `sudo apt-get install digitemp`.2) Collega un DS1820 al tuo circuito. La gamba centrale va nella porta DQ, le altre due gambe vanno in GND3) Collegare il circuito a una porta rs232 del computer. Mi occupo di farlo solo con Linux, ma è anche possibile farlo in Windows.. 4) Se il comando `digitemp` non funziona, è perché ci sono più versioni di digitemp.type digitemp, quindi premi tab per vederli tutti.. digitemp_DS9097 è quello giusto per questo busmaster a 1 filo. Giusto per semplicità, vogliamo che il comando sia `digitemp`, non `digitemp_DS9097`.type `sudo ln -s /usr/bin/digitemp_DS9097 /usr/bin/digitemp`5)Come root, o usando sudo:Run `digitemp -s /dev/ttyS0 -i`. Questo cerca i sensori nella rete 1wire e crea un file di configurazione per digitemp. Se stai usando COM2, usa -s /dev/ttyS1. Esegui `digitemp -a` per leggere la temperatura del sensore di temperatura collegato. Guarda lo screenshot6) Fai questo per tutti i sensori che utilizzerai e annota gli indirizzi per ognuno. Quando hai più sensori, è bello sapere quale è quale.
Passaggio 4: crea i sensori e la rete
Quando si collega la rete 1wire, si desidera utilizzare cavi di rete cat 5.
Ho avuto alcune brutte esperienze usando altri cavi e combinando diversi tipi di cavi. Quando si esegue su cat5, il bus 1wire può avere cavi piuttosto lunghi. In una configurazione di una stazione meteorologica, eseguo un Cat5 di 30 metri da una stanza tecnica con un computer Linux e fino al tetto. Sul tetto, il cavo è diviso in 3 cavi lunghi 5-15 metri con un sensore all'estremità di ciascuno. Questa configurazione funziona perfettamente. La rete a 1 filo è abbastanza robusta. Realizzazione del sensore: vuoi rendere il sensore sia impermeabile che rigido. 1) Tagliare un cavo Cat 5 alla lunghezza desiderata. 2) Disisolare l'estremità del sensore. Tagliare 3 delle 4 paia, lasciando quella verde/biancoverde. 3) Far scorrere un piccolo tubo termoretraibile sul filo verde. 4) Saldare il filo verde al pin centrale del DS1820 5) Tirare il tubo termoretraibile verso l'alto, in modo che copra tutto il metallo della gamba centrale e il metallo del filo ad esso collegato. Quindi riscaldalo con un accendino o una pistola termica per restringerlo in posizione 6) Saldare il filo bianco/verde agli altri due pin. 7) Mettere un tubo termoretraibile più grande sopra il sensore e il cavo. Vedi l'immagine. Quindi scaldalo delicatamente con un accendino per farlo restringere in posizione. Non vuoi dare fuoco alla cosa, tieni semplicemente la fiamma a 4-10 mm di distanza dal tubo termoretraibile. 8) Metti i tuoi sensori dove vuoi averli, collegati all'interfaccia rs232 e collegati al tuo computer.
Passaggio 5: configurazione del software - acquisizione dati
Ora che abbiamo i nostri sensori in posizione, vogliamo raccogliere alcuni dati da loro. Come root sulla tua macchina Linux: 1) Esegui `digitemp -s /dev/ttyS0 -i -c /etc/digitemp.conf`Questo crea la configurazione file digitemp.conf con i tuoi sensori. Guarda l'output per vedere quale numero ottengono i sensori. 2) Controlla la temperatura con `digitemp -aq -c /etc/digitemp.conf`3) Scarica i dati di output in un file. Eseguo il dump in un file all'interno di apaches wwwroot, in questo modo posso accedere alla temperatura da qualsiasi luogo. Il comando `digitemp -aq -c /etc/digitemp.conf > /var/www/digitemp.txt` inserisce l'output di digitemp nel file digitemp.txt4) Automatizza questo processo: digita `crontab -e`, questo apre le radici crontab. Digita `* * * * * digitemp -aq -c /etc/digitemp.conf > /tmp/digitemp; mv /tmp/digitemp /var/www/digitemp.txt` in quel file e salvalo. Esegui `crontab -l` per confermare che il crontab è stato installato. Il motivo per cui sto reindirizzando l'output in /tmp e poi mi sposto it a /var/www, è che digitemp usa pochi secondi per competere nella sua corsa. Se provi ad accedere all'output mentre digitemp è in esecuzione, otterresti un file incompleto. Questo potrebbe rovinare altri script che leggono i dati da questo file. (Questo non è incluso nello screenshot, ho dimenticato di farlo) La tua stazione meteorologica è ora attiva e funzionante. Usa i dati per fare quello che vuoi, grafico, usalo per e-mail in caso di alta/bassa temperatura, ecc.
Passaggio 6: installazione del software - Grafici
Questa è la parte difficile, qui sono necessari molti script.1) Crea un posto dove mettere gli script, un posto dove archiviare le immagini e un posto dove archiviare i dati.`mkdir /etc/tempsensor``mkdir /var/www /temperature``mkdir /var/log/digitemp_rrd`2)Installa software: avrai bisogno di PHP e RRDtool.`apt-get install rrdtool``apt-get install php` (ci sono molti pacchetti php, installane uno con un eseguibile da console)3) Scarica e installa gli script responsabili della creazione dei grafici: Scarica tempsensor-0.1.tar.gz sulla tua macchina Linux.`tar xvzf tempsensor-0.1.tar.gz``cp -v tempsensor/* /etc/ tempsensor`4) Configura gli scriptApri /etc/tempsensor/config.php e segui i commenti in questo file. Cambia lo script per leggere i dati di input da "/var/www/digitemp.txt" se hai seguito l'esempio nel passaggio precedente.5) Automatizza. Aggiungi una voce crontab allo stesso modo del passaggio precedente. Lo script dovrebbe essere eseguito ogni 5 minuti. Le linee dovrebbero essere così:`*/5 * * * * php /etc/tempsensor/logdata.php``*/5 * * * * php /etc/tempsensor/graphdata.php `6) Esegui manualmente gli script per verificare se funziona.php /etc/tempsensor/logdata.phpphp /etc/tempsensor/graphdata.php7) Visita https://your.ip.or.hostname/temperature o qualunque cosa tu abbia specificato in il file di configurazione.
Passaggio 7: implementazione 1 - Monitoraggio della sala server
La mia prima implementazione di questo sistema è stata nella sala server dei dormitori degli studenti dove lavoro. Ecco alcune immagini per te.
Passaggio 8: implementazione 2 - Stazione meteorologica
Quando ho dotato la sala server di sensori di temperatura, non ho resistito a metterne un po' anche sul tetto!
La stazione meteorologica è un po' più complicata della sala server. Ci sono molte interferenze fuori. Il sole può colpire un sensore, inviandolo da -1 a 30 c in 5 minuti. Ho risolto questo problema utilizzando tre sensori posizionati in punti che avrebbero ricevuto la luce solare in momenti diversi durante il giorno. Poiché il calore è l'unico "rumore" nella misurazione, utilizzo semplicemente il sensore con la lettura più bassa in qualsiasi momento come "temperatura esterna". Questa temperatura viene nuovamente livellata facendo la media degli ultimi minuti.
Passaggio 9: implementazione 3 - Dormitorio per studenti
Un mio amico ha seguito questa istruzione e ha dotato il suo appartamento di sensori di temperatura. In frigo, bagno, computer ecc.:)
Consigliato:
Stazione meteorologica professionale con ESP8266 e ESP32 fai da te: 9 passaggi (con immagini)
Stazione Meteo Professionale con ESP8266 ed ESP32 DIY: LineaMeteoStazione è una stazione meteo completa interfacciabile con i sensori professionali di Sensirion e con alcuni componenti dello strumento Davis (Pluviometro, Anemometro) Il progetto è pensato come stazione meteo fai da te ma richiede solo il
Stazione meteorologica semplice con ESP8266.: 6 passaggi (con immagini)
Stazione meteorologica semplice che utilizza ESP8266.: In questo Instructable condividerò come utilizzare ESP8266 per ottenere dati come temperatura, pressione, clima ecc. E dati di YouTube come abbonati e amp; Numero totale di visualizzazioni. e visualizzare i dati sul monitor seriale e visualizzarli su LCD. I dati saranno f
Stazione meteo fai-da-te e stazione sensore WiFi: 7 passaggi (con immagini)
Stazione meteo fai-da-te e stazione sensore WiFi: in questo progetto ti mostrerò come creare una stazione meteo insieme a una stazione sensore WiFi. La stazione sensore misura i dati di temperatura e umidità locali e li invia, tramite WiFi, alla stazione meteorologica. La stazione meteorologica visualizza quindi t
ESP8266 NodeMCU + LM35 + Blynk (Stazione meteorologica IOT/Sensore di temperatura digitale): 4 passaggi
ESP8266 NodeMCU + LM35 + Blynk (Stazione meteorologica IOT/Sensore di temperatura digitale): Ciao ragazzi! In questo Instructable, impareremo come interfacciare il sensore LM35 a NodeMCU e visualizzare le informazioni sulla temperatura su Internet su uno smartphone con l'applicazione Blynk. (Anche in questo progetto utilizzeremo il widget SuperChart nel Bl
SENSORE SUHU DENGAN LCD DAN LED (Realizzazione del sensore di temperatura con LCD e LED): 6 passaggi (con immagini)
SENSOR SUHU DENGAN LCD DAN LED (Making Temperature Sensor With LCD and LED): hai, dico Devi Rivaldi mahasiswa UNIVERSITAS NUSA PUTRA dari Indonesia, di si dica akan bebagi cara membuat sensor suhu menggunakan Arduino dengan Output ke LCD e LED. Ini adalah pembaca suhu dengan desain saya sendiri, dengan sensor ini anda