Sadržaj:

Senzor temperature / meteorološka stanica: 9 koraka (sa slikama)
Senzor temperature / meteorološka stanica: 9 koraka (sa slikama)

Video: Senzor temperature / meteorološka stanica: 9 koraka (sa slikama)

Video: Senzor temperature / meteorološka stanica: 9 koraka (sa slikama)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Novembar
Anonim
Senzor temperature / meteorološka stanica
Senzor temperature / meteorološka stanica
Senzor temperature / meteorološka stanica
Senzor temperature / meteorološka stanica

Napravite vremensku stanicu ili monitor temperature pomoću vrlo hladnog digitalnog senzora temperature DS1820. Koristim ovu postavku za nadgledanje serverske sobe i kao vremensku stanicu. Ovaj projekt se sastoji od:

  • Mreža sabirnica Dallas 1-Wire
  • Sučelje između RS-232 i Dallas 1-Wire sistema
  • Digitalni senzori temperature spojeni na Dallas 1-Wire sabirnicu (DS1820/DS18s20)
  • Softversko podešavanje za prikupljanje i grafikoniranje temperatura

Ažurirano 2007-11-18 kako bi uključivalo automatske grafičke skripte i slike stvarnih implementacija ovog sistema.

Korak 1: Trebate

Ti trebas
Ti trebas
Ti trebas
Ti trebas

Evo što vam je potrebno za izradu meteorološke stanice ili mjeritelja temperature:

  • Neke veštine za Linux
  • Osnovne vještine elektronike, lemljenje itd.

Komponente

  • 1 6,2 V Zener dioda (1N5234)
  • 1 Zener dioda 3.9V (1N5228)
  • 2 Schottky diode (1N5818)
  • 1 1,5 k otpornik
  • 1 2 -pinski zavrtanj
  • 1 ženski konektor D-sub 9 sa lemilicama
  • 1 mali komad perfarbona.
  • Jedan ili više digitalnih senzora temperature Dallas Semiconductor DS1820 ili DS18s20
  • Cat5 kablovi
  • Skupljajuća cijev

Korak 2: Izgradite RS232 sučelje

Napravite RS232 sučelje
Napravite RS232 sučelje
Napravite RS232 sučelje
Napravite RS232 sučelje
Napravite RS232 sučelje
Napravite RS232 sučelje
Napravite RS232 sučelje
Napravite RS232 sučelje

Volim izgraditi 1-Wire busmaster tako mali da može sjediti na stražnjoj strani računara u rs232 portu.

Korak 1) Shvatite koliko ga možete učiniti malim. Stavite sve komponente na perford. Postavite ih imajući na umu strujno kolo. Ne želimo dodavati žice na dno kruga! Se image. Korak 2) Izrežite perfboard odgovarajuće veličine. Samo povucite oštar nož nekoliko puta preko reda rupa koje želite izrezati. Učinite to s obje strane, a zatim je jednostavno prelomite na dva dijela. Obično se lomi na liniji rasjeda koju ste stvorili. 3) Lemite komponente na mjestu. i spojite tačke lemljenja kako biste dovršili krug.

Korak 3: Testiranje RS232 sučelja

Testiranje RS232 sučelja
Testiranje RS232 sučelja
Testiranje RS232 sučelja
Testiranje RS232 sučelja

1) Preuzmite i instalirajte digitemp. Na Debian-u i Ubuntu Linux-u to se radi pokretanjem `sudo apt-get install digitemp`.2) Povežite DS1820 na svoje kolo. Srednja noga ide u DQ port, ostale dvije noge idu u GND3) Spojite kolo na računarski rs232 port. Ovo pokrivam samo sa Linuxom, ali je moguće i u Windowsima..4) Ako naredba `digitemp` ne radi, to je zato što postoji više verzija digitemp.type digitemp, zatim pritisnite tabulator da vidite sve njih.. digitemp_DS9097 je pravi za ovog 1 -žičnog sabirnika. Samo radi jednostavnosti želimo da naredba bude `digitemp`, a ne` digitemp_DS9097`.type `sudo ln -s/usr/bin/digitemp_DS9097/usr/bin/digitemp`5) Kao root, ili koristeći sudo: Pokrenite `digitemp -s/dev/ttyS0 -i`. Ovo traži senzore u 1wire mreži i stvara konfiguracijsku datoteku za digitemp. Ako koristite COM2, koristite -s /dev/ttyS1. Pokrenite `digitemp -a` da biste očitali temperaturu spojenog osjetnika temperature. Pogledajte snimak ekrana 6) Učinite to za sve senzore koje ćete koristiti i zapišite adrese za svaki od njih. Kada imate više senzora, lijepo je znati koji je koji.

Korak 4: Napravite senzore i mrežu

Napravite senzore i mrežu
Napravite senzore i mrežu
Napravite senzore i mrežu
Napravite senzore i mrežu
Napravite senzore i mrežu
Napravite senzore i mrežu
Napravite senzore i mrežu
Napravite senzore i mrežu

Prilikom povezivanja vaše 1 žičane mreže želite koristiti mrežne kabele cat 5.

Imao sam loših iskustava s korištenjem drugih kabela i s kombiniranjem različitih vrsta kabela. Kada prelazite preko cat5, sabirnica 1 žica može imati prilično dugačke kabele. U jednoj postavci vremenske stanice vodim 30 -metarskog cat5 iz tehničke prostorije s Linux računarom pa do krova. Na krovu je kabel podijeljen na 3 kabla dugačka 5-15-15 metara sa senzorom na kraju svakog. Ova postavka radi besprijekorno. 1-žična mreža je prilično robusna. Izrada senzora: Želite da senzor bude vodootporan i krut. 1) Odrežite kabel Cat 5 na željenu dužinu. 2) Deizolirajte kraj senzora. Odrežite 3 od 4 para, ostavljajući zeleno/bijelozeleni. 3) Gurnite malu skupljajuću cijev preko zelene žice. 4) Lemljenje zelene žice na srednju iglu DS1820 5) Povucite skupljajuću cijev prema gore, tako da pokriva sav metal srednjeg kraka i metal žice koja je s njim povezana. Zatim ga zagrijte upaljačem ili pištoljem za zagrijavanje da biste ga stisnuli na mjestu. 6) Lemite bijelu/zelenu žicu na dva druga igla. 7) Stavite veću skupljajuću cijev preko senzora i kabela. Pogledajte sliku. Zatim ga lagano zagrijte upaljačem da se stisne na mjestu. Ne želite zapaliti stvar, samo držite plamen 4-10 mm dalje od skupljajuće cijevi. 8) Postavite svoje senzore gdje god želite, povežite se sa RS232 interfejsom i uključite u računar.

Korak 5: Postavljanje softvera - prikupljanje podataka

Postavljanje softvera - Prikupljanje podataka
Postavljanje softvera - Prikupljanje podataka

Sada kada smo postavili svoje senzore, želimo prikupiti neke podatke od njih. Kao korijen na vašoj linux mašini: 1) Pokrenite `digitemp -s /dev /ttyS0 -i -c /etc/digitemp.conf` Ovo stvara konfiguraciju fajl digitemp.conf sa yoru senzorima. Pogledajte izlaz da vidite koji broj senzori dobijaju.2) Proverite temperaturu pomoću `digitemp -aq -c /etc/digitemp.conf`3)Stavite izlazne podatke u datoteku. Izbacujem u datoteku unutar apaches wwwroot -a, na taj način mogu pristupiti temperaturi s bilo kojeg mjesta. Naredba `digitemp -aq -c /etc/digitemp.conf>/var/www/digitemp.txt` stavlja izlaz digitempa u datoteka digitemp.txt4) Automatizirajte ovaj proces: upišite `crontab -e`, ovo otvara korijene crontab. Tip` * * * * * digitemp -aq -c /etc/digitemp.conf> /tmp /digitemp; mv /tmp /digitemp /var /www /digitemp.txt` u tu datoteku i spremite je. Pokrenite `crontab -l` da potvrdite da je crontab instaliran. Razlog zbog kojeg prenosim izlaz u /tmp, a zatim premještam to /var /www, je da digitemp koristi nekoliko sekundi za nadmetanje svog izvođenja. Ako pokušate pristupiti izlazu dok je digitemp pokrenut, dobit ćete nepotpunu datoteku. Ovo bi moglo poremetiti druge skripte koje čitaju podatke iz ove datoteke. (Ovo nije uključeno u snimak ekrana, zaboravili ste to učiniti) Vaša vremenska stanica je sada pokrenuta. Koristite podatke da radite sve što želite, iscrtajte ih, koristite ih za slanje e -pošte u slučaju visoke/niske temperature itd.

Korak 6: Postavljanje softvera - Crtanje

Podešavanje softvera - Crtanje
Podešavanje softvera - Crtanje
Podešavanje softvera - Crtanje
Podešavanje softvera - Crtanje

Ovo je lukav dio, ovdje je potrebno mnogo skriptiranja.1) Napravite mjesto za postavljanje skripti, mjesto za pohranu slika i mjesto za pohranu podataka. `Mkdir /etc /tempsensor``mkdir /var /www /temperature``mkdir/var/log/digitemp_rrd`2) Instalirajte softver: Trebat će vam PHP i RRDtool.`apt-get install rrdtool``apt-get install php` (postoji mnogo php paketa, instalirajte jedan sa izvršna konzola) 3) Preuzmite i instalirajte skripte odgovorne za izradu grafikona: Preuzmite tempsensor-0.1.tar.gz na svoju linux mašinu.`tar xvzf tempsensor-0.1.tar.gz `` cp -v tempsensor/*/etc/ tempsensor`4) Konfigurirajte scriptsOpen /etc/tempsensor/config.php i slijedite komentare u ovoj datoteci. Promijenite skriptu da čita ulazne podatke iz "/var/www/digitemp.txt" ako ste slijedili primjer u prethodnom koraku.5) Automatiziraj. Dodaj crontab unos na isti način kao u prethodnom koraku. Skripta bi se trebala izvoditi svake 5. minute. Linije bi trebale izgledati ovako: ` */5 * * * * php /etc/tempsensor/logdata.php``*/5 * * * * php /etc/tempsensor/graphdata.php `6) Ručno pokrenite skripte da provjerite radi li.php /etc/tempsensor/logdata.phpphp /etc/tempsensor/graphdata.php7)Posjetite https://vaš.ip.or.hostname/temperature ili bilo što što ste naveli u konfiguracijsku datoteku.

Korak 7: Implementacija 1 - Nadgledanje serverske sobe

Implementacija 1 - Nadgledanje serverske sobe
Implementacija 1 - Nadgledanje serverske sobe
Implementacija 1 - Nadgledanje serverske sobe
Implementacija 1 - Nadgledanje serverske sobe
Implementacija 1 - Nadgledanje serverske sobe
Implementacija 1 - Nadgledanje serverske sobe

Moja prva implementacija ovog sistema bila je u serverskoj prostoriji u studentskim domovima u kojima radim. Evo nekoliko slika za vas.

Korak 8: Implementacija 2 - meteorološka stanica

Implementacija 2 - Meteorološka stanica
Implementacija 2 - Meteorološka stanica
Implementacija 2 - Meteorološka stanica
Implementacija 2 - Meteorološka stanica
Implementacija 2 - Meteorološka stanica
Implementacija 2 - Meteorološka stanica

Kad sam opremio serversku sobu senzorima temperature, jednostavno nisam mogao odoljeti da ne stavim neke na krov!

Vremenska stanica je malo zeznutija od serverske sobe. Vani je mnogo smetnji. Sunce može udariti u senzor i poslati ga od -1 do 30 c za 5 minuta. Riješio sam to pomoću tri senzora postavljena na mjestima koja bi primala sunčevu svjetlost u različito doba dana. Budući da je toplina jedini "šum" u mjerenju, samo koristim senzor sa najnižim očitanjem u bilo kojem trenutku kao svoju "vanjsku temperaturu". Ova temperatura se ponovo ublažava usrednjavanjem zadnjih nekoliko minuta.

Korak 9: Implementacija 3 - Soba za učeničke domove

Implementacija 3 - Soba za studentski dom
Implementacija 3 - Soba za studentski dom
Implementacija 3 - Soba za studentski dom
Implementacija 3 - Soba za studentski dom

Moj prijatelj je slijedio ove upute i opremio svoj stan senzorima temperature. U frižideru, kupatilu, računaru itd.:)

Preporučuje se: