INHOUDSOPGAWE:

Temperatuursensor / weerstasie: 9 stappe (met foto's)
Temperatuursensor / weerstasie: 9 stappe (met foto's)

Video: Temperatuursensor / weerstasie: 9 stappe (met foto's)

Video: Temperatuursensor / weerstasie: 9 stappe (met foto's)
Video: Garmin Instinct 2X Solar gedetailleerde beoordeling 2024, November
Anonim
Temperatuursensor / Weerstasie
Temperatuursensor / Weerstasie
Temperatuursensor / Weerstasie
Temperatuursensor / Weerstasie

Skep 'n weerstasie of temperatuurmonitor met die baie koel digitale temperatuursensor DS1820. Ek gebruik hierdie opstelling om 'n bedienerkamer en as weerstasie te monitor. Hierdie projek bestaan uit:

  • 'N Dallas 1-Wire-busnetwerk
  • Koppelvlak tussen RS-232 en die Dallas 1-Wire-stelsel
  • Digitale temperatuursensors gekoppel aan die Dallas 1-Wire-bus (DS1820/DS18s20)
  • Sagteware -opstelling om temperature te versamel en te grafiseer

2007-11-18 opgedateer om outomatiese grafiese skrifte en foto's van werklike implementerings van hierdie stelsel in te sluit.

Stap 1: u benodig

Jy benodig
Jy benodig
Jy benodig
Jy benodig

Dit is wat u nodig het om 'n weerstasie of temperatuurregistreerder te maak:

  • Sommige Linux -vaardighede
  • Basiese elektroniese vaardighede, soldeer, ens.

Komponente

  • 1 6.2V Zenerdiode (1N5234)
  • 1 3.9V Zenerdiode (1N5228)
  • 2 Schottky -diodes (1N5818)
  • 1 1,5 k weerstand
  • 1 2 -pins skroefaansluiting
  • 1 D-sub 9 vroulike aansluiting met soldeerpunte
  • 1 klein stukkie perfboard.
  • Een of meer Dallas Semiconductor DS1820 of DS18s20 digitale temperatuursensor
  • Cat5 -kabels
  • Krimp buis

Stap 2: Bou die RS232 -koppelvlak

Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak
Bou die RS232 -koppelvlak

Ek bou graag die 1-Wire busmaster so klein dat dit agter in die rekenaar in die rs232-poort kan sit.

Stap 1) Bepaal hoe klein u dit kan maak. Sit al die komponente op 'n perfbaord. Plaas hulle met die kring in gedagte. Ons wil geen drade aan die onderkant van die kring voeg nie! Sien beeld. Stap 2) Sny die regte grootte perfboard uit. Sleep net 'n paar keer 'n skerp mes oor die ry gate waar u wil sny. Doen dit aan beide kante, breek dit dan in twee. Dit breek gewoonlik by die foutlyn wat u geskep het. 3) Soldeer die komponente in plek. en verbind die soldeerpunte om die stroombaan te voltooi.

Stap 3: Toets die RS232 -koppelvlak

Toets die RS232 -koppelvlak
Toets die RS232 -koppelvlak
Toets die RS232 -koppelvlak
Toets die RS232 -koppelvlak

1) Laai en installeer digitemp. Op Debian en Ubuntu Linux word dit gedoen deur 'sudo apt-get install digitemp' uit te voer.2) Koppel 'n DS1820 aan u kring. Die middelste been gaan in die DQ-poort, die ander twee bene gaan in GND3) Sluit die kring aan op 'n rs232 -poort van 'n rekenaar. Ek dek dit slegs met Linux, maar dit is ook moontlik om dit in Windows te doen..4) As die opdrag 'digitemp' nie werk nie, is dit omdat daar verskeie weergawes van digitemp.type digitemp, druk dan op tab om hulle almal te sien.. digitemp_DS9097 is die regte een vir hierdie 1wire busmaster. Net ter wille van eenvoud wil ons hê dat die opdrag `digitemp` is, nie` digitemp_DS9097`.type `sudo ln -s/usr/bin/digitemp_DS9097/usr/bin/digitemp`5) As root, of gebruik sudo: voer `digitemp -s/dev/ttyS0 -i` uit. Dit soek die sensors in die 1wire -netwerk en skep 'n konfigurasielêer vir digitemp. As u COM2 gebruik, gebruik -s /dev/ttyS1. Run `digitemp -a` om die temperatuur van die gekoppelde tempsensor te lees. Sien die skermkiekie6) Doen dit vir al die sensors wat u gaan gebruik, en skryf die adresse neer As u meer as een sensor het, is dit lekker om te weet watter een is.

Stap 4: Maak die sensors en die netwerk

Maak die sensors en die netwerk
Maak die sensors en die netwerk
Maak die sensors en die netwerk
Maak die sensors en die netwerk
Maak die sensors en die netwerk
Maak die sensors en die netwerk
Maak die sensors en die netwerk
Maak die sensors en die netwerk

As u u 1 -draadnetwerk aansluit, wil u kat 5 -netwerkkabels gebruik.

Ek het slegte ervarings gehad met die gebruik van ander kabels en met die kombinasie van verskillende soorte kabels. As u oor cat5 ry, kan die 1wire -bus redelik lang kabels hê. In een weerstasie -opstelling hardloop ek 'n cat5 van 30 meter vanaf 'n tegniese kamer met 'n Linux -rekenaar en tot op die dak. Op die dak word die kabel verdeel in 3 5-15 meter lange kabels met 'n sensor aan die einde van elkeen. Hierdie opset werk foutloos. Die 1-draads netwerk is redelik robuust. Maak die sensor: u wil die sensor waterdig en styf maak. 1) Sny 'n Cat 5 -kabel tot die verlangde lengte. 2) Isoleer die sensoruiteinde. Sny 3 van die 4 pare af en laat die groen/witgroen een. 3) Skuif 'n klein krimpbuisie oor die groen draad. 4) Soldeer die groen draad aan die middelste pen van die DS1820 5) Trek die krimpbuis omhoog sodat dit al die metaal van die middelste been en die metaal van die draad wat daaraan gekoppel is, bedek. Verhit dit dan met 'n aansteker of hittepistool om dit op sy plek te laat krimp. 6) Soldeer die wit/groen draad aan die twee ander penne. 7) Sit 'n groter krimpbuis oor die sensor en die kabel. Sien die prentjie. Verhit dit dan liggies met 'n aansteker om te krimp. U wil nie die ding aan die brand steek nie; hou net die vlam 4-10 mm van die krimpbuis af. 8) Plaas u sensors waar u hulle wil hê, maak verbinding met die rs232 -koppelvlak en koppel dit aan op u rekenaar.

Stap 5: Sagteware -opstelling - verkryging van data

Opstel van sagteware - verkryging van data
Opstel van sagteware - verkryging van data

Noudat ons ons sensors in plek is, wil ons 'n paar data daaruit versamel. As wortel op u Linux -masjien: 1) Voer `digitemp -s /dev /ttyS0 -i -c /etc/digitemp.conf`Dit skep die config lêer digitemp.conf met yoru -sensors. Kyk na die uitset om te sien watter nommer die sensors kry. Ek laai na 'n lêer in apaches wwwroot, op hierdie manier kan ek vanaf enige plek toegang tot die temperatuur kry. lêer digitemp.txt4) Outomatiseer hierdie proses: tik `crontab -e`, dit maak wortels crontab oop. Tik` * * * * * digitemp -aq -c /etc/digitemp.conf> /tmp /digitemp; mv /tmp /digitemp /var /www /digitemp.txt 'in die lêer en stoor dit. Begin' crontab -l 'om te bevestig dat die crontab geïnstalleer is. Die rede waarom ek die uitset in /tmp lei en dan beweeg dit na /var /www, is dat digitemp 'n paar sekondes gebruik om sy wedloop mee te ding. As u probeer om toegang tot die uitvoer te kry terwyl digitemp aan die gang is, kry u 'n onvolledige lêer. Dit kan ander skrifte wat data uit hierdie lêer lees, deurmekaarkrap. (Dit is nie ingesluit in die skermkiekie nie, vergeet om dit te doen) U weerstasie is nou aan die gang. Gebruik die data om te doen wat u wil, teken dit, gebruik dit om te e -pos in geval van hoë/lae temperatuur, ens.

Stap 6: Sagteware -opstelling - grafiek

Opstel van sagteware - grafiek
Opstel van sagteware - grafiek
Opstel van sagteware - grafiek
Opstel van sagteware - grafiek

Dit is die moeilike deel, baie skripte is hier nodig. /temperature "mkdir/var/log/digitemp_rrd`2) Installeer sagteware: u benodig PHP en RRDtool.` adapt-get install rrdtool` `adapt-get install php` (daar is baie php-pakkette, installeer een met 'n konsole uitvoerbaar) 3) Laai en installeer die skrifte wat verantwoordelik is vir die grafieke: Laai tempsensor-0.1.tar.gz af na u Linux-masjien.`tar xvzf tempsensor-0.1.tar.gz `` cp -v tempsensor/*/etc/ tempsensor`4) Stel die skrifte op Maak /etc/tempsensor/config.php oop en volg die kommentaar in hierdie lêer. Verander die skrif om insetdata van "/var/www/digitemp.txt" te lees as u die voorbeeld in die vorige stap gevolg het.5) Outomatiseer. Voeg 'n crontab -inskrywing by op dieselfde manier as in die vorige stap. Die skrif moet elke 5de minuut loop. Die lyne moet so lyk: ` */5 * * * * php /etc/tempsensor/logdata.php``*/5 * * * * php /etc/tempsensor/graphdata.php `6) Begin die skrifte met die hand om te kyk of dit werk.php /etc/tempsensor/logdata.phpphp /etc/tempsensor/graphdata.php7)Besoek https://your.ip.or.hostname/temperature of wat u ook al spesifiseer die config -lêer.

Stap 7: Implementering 1 - Monitoring van bedienerkamer

Implementering 1 - Monitoring van bedienerkamer
Implementering 1 - Monitoring van bedienerkamer
Implementering 1 - Monitoring van bedienerkamer
Implementering 1 - Monitoring van bedienerkamer
Implementering 1 - Monitoring van bedienerkamer
Implementering 1 - Monitoring van bedienerkamer

My eerste implementering van hierdie stelsel was in die bedienerkamer by die studentekoshuise waar ek werk. Hier is 'n paar foto's vir jou.

Stap 8: Uitvoering 2 - Weerstasie

Uitvoering 2 - Weerstasie
Uitvoering 2 - Weerstasie
Uitvoering 2 - Weerstasie
Uitvoering 2 - Weerstasie
Uitvoering 2 - Weerstasie
Uitvoering 2 - Weerstasie

Toe ek die bedienerkamer met temperatuursensors toegerus het, kon ek net nie weerstaan om 'n paar op die dak te sit nie!

Die weerstasie is 'n bietjie moeiliker as die bedienerkamer. Daar is baie inmenging buite. Die son kan 'n sensor tref en dit binne 5 minute van -1 tot 30 c stuur. Ek het dit opgelos deur drie sensors te gebruik wat op plekke geplaas is wat sonlig op verskillende tye gedurende die dag sou ontvang. Aangesien hitte die enigste 'geraas' in die meting is, gebruik ek die sensor met die laagste waarde ooit as my 'buitentemperatuur'. Hierdie temperatuur word weer versag deur gemiddeld die laaste paar minute.

Stap 9: Implementering 3 - Studente -slaapsaal

Implementasie 3 - Studente -slaapsaal
Implementasie 3 - Studente -slaapsaal
Implementasie 3 - Studente -slaapsaal
Implementasie 3 - Studente -slaapsaal

'N Vriend van my het hierdie instruksies gevolg en sy woonstel toegerus met temperatuursensors. In die yskas, badkamer, rekenaar ens.:)

Aanbeveel: