INHOUDSOPGAWE:
- Stap 1: u benodig
- Stap 2: Bou die RS232 -koppelvlak
- Stap 3: Toets die RS232 -koppelvlak
- Stap 4: Maak die sensors en die netwerk
- Stap 5: Sagteware -opstelling - verkryging van data
- Stap 6: Sagteware -opstelling - grafiek
- Stap 7: Implementering 1 - Monitoring van bedienerkamer
- Stap 8: Uitvoering 2 - Weerstasie
- Stap 9: Implementering 3 - Studente -slaapsaal
Video: Temperatuursensor / weerstasie: 9 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:28
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
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
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
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
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
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
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
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
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
'N Vriend van my het hierdie instruksies gevolg en sy woonstel toegerus met temperatuursensors. In die yskas, badkamer, rekenaar ens.:)
Aanbeveel:
Professionele weerstasie met behulp van ESP8266 en ESP32 DIY: 9 stappe (met foto's)
Professionele weerstasie met behulp van ESP8266 en ESP32 DIY: LineaMeteoStazione is 'n volledige weerstasie wat met professionele sensors van Sensirion sowel as 'n Davis -instrumentkomponent (reënmeter, windmeter) verbind kan word
Eenvoudige weerstasie met behulp van ESP8266 .: 6 stappe (met foto's)
Eenvoudige weerstasie met behulp van ESP8266 .: In hierdie instruksies sal ek deel hoe ek ESP8266 kan gebruik om data soos temperatuur, druk, klimaat ens te kry. En YouTube -data soos intekenare en amp; Totale aantal kyke. en vertoon die data op Serial monitor en vertoon dit op LCD. Die data sal f
NaTaLia Weerstasie: Arduino -sonkrag -weerstasie op die regte manier: 8 stappe (met foto's)
NaTaLia Weerstasie: Arduino -sonkrag -weerstasie op die regte manier: Na 1 jaar suksesvolle werking op 2 verskillende plekke deel ek my projekplanne met sonkrag -aangedrewe weerstasies en verduidelik hoe dit ontwikkel het tot 'n stelsel wat werklik oor 'n lang tyd kan voortbestaan tydperke van sonkrag. As jy volg
Volledige DIY Raspberry Pi weerstasie met sagteware: 7 stappe (met foto's)
Volledige DIY Raspberry Pi -weerstasie met sagteware: Eind Februarie het ek hierdie pos op die Raspberry Pi -webwerf gesien. http://www.raspberrypi.org/school-weather-station-… Hulle het Raspberry Pi weerstasies vir skole geskep. Ek wou heeltemal een hê! Maar op daardie tydstip (en ek glo nog steeds soos dit geskryf is
Mini weerstasie met Attiny85: 6 stappe (met foto's)
Mini Weerstasie Met Attiny85: In 'n onlangse instruksies het Indigod0g 'n mini -weerstasie beskryf wat redelik goed werk met twee Arduino's. Miskien wil nie almal 2 Arduino's opoffer om humiditeit en temperatuurmetings te kry nie, en ek het opgemerk dat dit moontlik moet wees om