INHOUDSOPGAWE:
- Stap 1: Onderdele
- Stap 2: Sensing Circuit
- Stap 3: GSM -module
- Stap 4: Laai die sagteware af en maak dit droog
- Stap 5: Bou die stroombaan
- Stap 6: Berei die wooneenhede voor
- Stap 7: Bedrading en afwerking van die weerstasie
Video: Raspberry Pi Solar Weather Station: 7 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
As gevolg van die voltooiing van my twee vorige projekte, die Compact Camera en Portable Games Console, wou ek 'n nuwe uitdaging vind. Die natuurlike vordering was 'n eksterne afstandstelsel …
Ek wou 'n Raspberry Pi -weerstasie bou wat van die netwerk af kon bly en die resultate vir my via 'n draadlose verbinding kon stuur, van oral! Hierdie projek het werklik sy uitdagings gehad, maar die Raspberry Pi is gelukkig een van die belangrikste uitdagings wat maklik gemaak is deur die PiJuice as 'n kragtoevoer te gebruik, met ekstra sonondersteuning (kompleet met ons revolusionêre PiAnywhere -tegnologie - die beste manier om haal u Pi van die rooster af!).
My eerste gedagte was om die fantastiese AirPi -module te gebruik om metings te doen. Dit het egter twee hoof nadele gehad; dit vereis 'n direkte internetverbinding om die resultate op te laai en dit moet direk aan die GPIO op die Pi gekoppel word, wat beteken dat dit nie aan die lug blootgestel kan word sonder om ook die Raspberry Pi bloot te stel nie (nie ideaal as ons hierdie weerstasie wil hê nie duur 'n lang tyd).
Die oplossing … bou my eie waarnemingsmodule! Deur baie van die AirPi vir inspirasie te gebruik, kon ek 'n baie eenvoudige prototipe saamstel met behulp van 'n paar sensors wat ek reeds gehad het; temperatuur, humiditeit, ligvlakke en algemene gasse. En die wonderlike hiervan is dat dit altyd baie maklik is om meer sensors by te voeg.
Ek het besluit om 'n Raspberry Pi a+ te gebruik, hoofsaaklik vanweë die lae kragverbruik. Om die resultate vir my te stuur, het ek die EFCom Pro GPRS/GSM -module gebruik, wat 'n teks direk na my selfoon kan stuur met die resultate! Nogal netjies reg?
Ek is bly oor enige idees wat u vir ander wonderlike son- of draagbare projekte het. Laat weet my in die kommentaar, en ek sal my bes doen om 'n tutoriaal te maak!
Stap 1: Onderdele
1 x PiJuice + sonpaneel (kompleet met ons revolusionêre PiAnywhere -tegnologie - die beste manier om u Pi van die netwerk af te haal!)
1 x Framboos Pi a+
1 x EFCom Pro GPRS/GSM -module
1 x Simkaart
1 x broodbord
Protobord
1 x MCP3008 ADC
1 x LDR
1 x LM35 (Temperatuursensor)
1 x DHT22 (humiditeitsensor)
1 x TGS2600 Algemene luggehalte sensor
1 x 2.2 KΩ Weerstand
1 x 22 KΩ Weerstand
1 x 10 KΩ Weerstand
10 x vroulik - vroulike springdrade
Verskeidenheid enkeldraaddraad
1 x Enkele buite -aansluitkas
1 x dubbele buitelug -aansluitkas
1 x waterdigte kabelaansluiting
2 x 20 mm halfblinde kabeldoorvoering
Stap 2: Sensing Circuit
Daar is 'n hele paar verskillende elemente in hierdie projek, dus is dit die beste om alles in stappe te doen. Eerstens gaan ek deur hoe ek die waarnemingskring saamstel.
Dit is 'n goeie idee om dit eers op 'n broodbord te bou, maar as u foute begaan, het ek 'n stroombaan -diagram en stap -vir -stap -foto's ingesluit, waarna verwys moet word.
- Die eerste komponent wat bedraad is, is hierdie MCP3008 analoog na digitale omskakelaar. Dit kan tot 8 analoog insette neem en kommunikeer met die Raspberry Pi via SPI. Met die chip na bo en die halfsirkel weggesny aan die einde wat die verste van u af is, sluit die penne aan die regterkant aan op die Raspberry Pi. Verbind hulle soos aangedui. As u meer wil leer oor hoe die chip werk, is dit 'n goeie gids vir die MCP3008 en die SPI -protokol.
- Die penne aan die linkerkant is die 8 analoog insette, van bo na onder genommer 0-7. Ons gebruik slegs die eerste 3 (CH0, CH1, CH2), vir die LDR, die algemene gassensor (TGS2600) en die temperatuursensor (LM35). Koppel eers die LDR soos in die diagram getoon. Die een kant na die aarde en die ander na 3.3V via 'n 2.2KΩ weerstand en CH0.
- Koppel dan die "algemene gassensor". Hierdie gassensor word gebruik vir die opsporing van lugbesoedeling soos waterstof en koolstofmonoksied. Ek het nog nie uitgewerk hoe om spesifieke konsentrasies te kry nie, so die resultaat van hierdie sensor is tans 'n basiese persentasievlak, waar 100% volledig versadig is. Met die sensor na bo (penne aan die onderkant), is pen 1 regs van die klein uitsny pen 1 en dan neem die getalle kloksgewys om die pen toe. Spelde 1 en 2 maak dus aansluiting by 5V, pen 3 sluit aan op CH1 en word via 'n 22KΩ -weerstand gekoppel, en pen4 word regstreeks met die grond verbind.
- Die laaste analoog sensor om aan te sluit is die LM35 temperatuursensor. Dit het 3 penne. Neem die sensor sodat die plat kant die naaste aan u is, die linkerkantste pen verbind reguit met 5V (nie gemerk op die diagram nie, my slegte!), Die middelste pen verbind met CH2 en die regterkantste pen is reguit met die grond. Maklik!
- Die laaste komponent om aan te sluit, is die DHT22 -humiditeitsensor. Dit is 'n digitale sensor, wat dus direk aan die Raspberry Pi gekoppel kan word. Neem die sensor met die rooster na u toe en die vier penne aan die onderkant. Spelde word bestel vanaf 1 aan die linkerkant. Koppel 1 aan 3.3V. Speld 2 gaan na GPIO4 en 3.3V via 'n 10KΩ -weerstand. Laat pen 3 ontkoppel en pen 4 gaan reguit grond toe.
Dis dit! Die toetsbaan is gebou. Ek hoop om meer komponente by te voeg as ek die tyd het. Ek wil baie graag 'n druksensor, 'n windsnelheidsensor byvoeg, en ek wil meer intelligente gegewens oor gaskonsentrasies kry.
Stap 3: GSM -module
Noudat die sensorkringe gebou is, moet daar 'n manier wees om die resultate te ontvang. Dit is waar die GSM -module inkom. Ons gaan dit gebruik om die resultate een keer per dag per SMS oor die selfoonnetwerk te stuur.
Die GSM -module kommunikeer met die Raspberry Pi via seriële met behulp van UART. Hier is 'n paar goeie inligting oor seriële kommunikasie met die Raspberry Pi. Om die seriële poort van die Pi te beheer, moet ons eers 'n paar konfigurasies doen.
Begin u Raspberry Pi op met 'n standaard Raspbian -beeld. Verander nou die lêer "/boot/cmdline.txt" van:
"dwc_otg.lpm_enable = 0 console = ttyAMA0, 115200 kgdboc = ttyAMA0, 115200 console = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 lift = deadline rootwait"
aan:
"dwc_otg.lpm_enable = 0 console = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 lift = deadline rootwait"
deur die onderstreepte teksgedeelte te verwyder.
Tweedens moet u die lêer "/etc/inittab" wysig deur kommentaar te lewer op die tweede reël in die volgende afdeling:
#Spaan 'n getty op die Raspberry Pi -reël: T0: 23: respawn:/sbin/getty -L ttyAMA0 115200 vt100"
Sodat dit lui:
#Spawn a getty on Raspberry Pi serial line#T0: 23: respawn:/sbin/getty -L ttyAMA0 115200 vt100
en herlaai die Pi. Nou moet die seriële poort vry wees om mee te kommunikeer soos u wil. Dit is tyd om die GSM -module aan te sluit. Kyk na die stroombaan -diagram in die vorige stap en die foto's hierbo om te sien hoe dit gedoen word. Basies is TX gekoppel aan RX en RX is aan TX gekoppel. Op die Raspberry Pi TX en RX is onderskeidelik GPIO 14 en 15.
U wil waarskynlik kyk of die module werk, dus probeer om 'n teks te stuur! Hiervoor moet u Minicom aflaai. Dit is 'n program waarmee u na die seriële poort kan skryf. Gebruik:
"sudo apt-get install minicom"
Nadat dit geïnstalleer is, kan minicom oopgemaak word met die volgende opdrag:
"minicom -b 9600 -o -D /dev /ttyAMA0"
9600 is die baud-koers en /dev /ttyAMA0 is die naam van die seriële poort van die Pi. Dit sal 'n terminale emulator oopmaak waarin alles wat u skryf op die seriële poort sal verskyn, dit wil sê na die GSM -module gestuur word.
Plaas die gevulde simkaart in die GSM -module en druk die aan / uit -knoppie. Daarna moet 'n blou led opkom. Die GSM -module gebruik die AT -opdragstel, hier is die dokumentasie as u regtig belangstel. Nou kyk ons of Raspberry Pi die module opgespoor het met die volgende opdrag:
"BY"
die module moet dan reageer met:
"OK"
Puik! Dan moet ons die module opstel om 'n SMS as teks te stuur eerder as binêre:
"AT+CMGF = 1"
weer moet die antwoord "OK" wees. Nou skryf ons die opdrag om 'n SMS te stuur:
"AT+CMGS =" 44 ************* "", vervang die sterre met u nommer.
Die modem met reageer met ">" waarna u die boodskap kan skryf. Om die boodskap te stuur, druk. Dit is dit, en met enige geluk het u pas 'n teks direk vanaf u Raspberry Pi ontvang.
Noudat ons weet dat die GSM -module werk, kan u minicom sluit; ons benodig dit nie vir die res van die projek nie.
Stap 4: Laai die sagteware af en maak dit droog
Op hierdie stadium moet alles opgemaak word en gereed wees om te toets of dit droog is. Ek het 'n redelik eenvoudige python -program geskryf wat elke sensor sal aflees en die resultate na u selfoon kan stuur. U kan die hele program aflaai van die PiJuice Github -bladsy. Dit kan ook 'n goeie tyd wees om te toets met die PiJuice -module. Dit sluit net aan by die GPIO van die Raspberry Pi, al die drade wat aan die Pi gekoppel is, word net regs in die ooreenstemmende pin -outs van die PiJuice aangesluit. Maklik soos Pi. Gebruik die opdrag om die kode af te laai:
git -kloon
Dit is ingestel om data een keer per dag te stuur. Vir toetsdoeleindes is dit nie goed nie, dus u wil die program dalk wysig. Dit word maklik gedoen; maak net die lêer oop; "sudo nano weatherstation.py". Naby die bokant is daar 'n afdeling "stel vertraging". Lewer kommentaar op die reël "delay = 86400" en maak geen kommentaar op "delay = 5" nie. Nou word die resultate een keer elke 5 sekondes gestuur. U wil ook die program verander sodat dit u eie selfoonnommer bevat. Vind waar dit staan "+44 **********" en vervang die sterre met u eie nommer.
Voordat u die program begin, moet u net 'n biblioteek aflaai om die DHT22 -humiditeitsensor te lees:
git -kloon
En die biblioteek moet geïnstalleer word:
"cd Adafruit_Python_DHT"
"sudo apt-get update"
"sudo apt-get install build-essential python-dev"
"sudo python setup.py installeer"
Cool, nou kan u die program toets.
"sudo python weatherstation.py"
Terwyl die program loop, moet die resultate na u selfoon gestuur word, maar ook elke 5 sekondes in die terminale gedruk word.
Stap 5: Bou die stroombaan
Noudat alles in die praktyk werk, is dit tyd om die regte ding te bou. Die foto's toon die algemene idee van hoe die hele eenheid bymekaar pas. Daar is twee afsonderlike wooneenhede; een vir die sensorkring (wat gate sal hê om lug binne te laat sirkuleer) en een vir die Raspberry Pi, GPRS -eenheid en PiJuice, (heeltemal waterdig), word die sonpaneel met 'n waterdigte aansluiting in die rekenereenheid gekoppel. Die twee eenhede kan dan maklik losgemaak word sodat óf die sensorhuis of die rekenaarbehuizing verwyder kan word sonder om die hele eenheid af te haal. Dit is wonderlik as u meer sensors wil byvoeg of as u Raspberry Pi of PiJuice nodig het vir 'n ander projek.
U moet die protobord breek om in die kleinste van die twee aansluitkaste te pas. Dit is waar die sensorkring gehuisves word. Die sensorkring word nou van die broodbord na die protobord oorgeplaas. Nou moet u soldeer. Maak seker dat u gemaklik voel met die gebruik van 'n soldeerbout. As u nie seker is nie, vra dan die hulp van iemand wat 'n bekwame soldeerder is.
Baie dankie aan Patrick in die laboratorium hier, wat my uit die weg geruim het om hierdie kringloop regtig te maak. Hy kon dit binne 'n paar minute regkry! As u, soos ek, nie die beste is om 'n stroombaan te bou nie, en u nie 'n genie soos Patrick gereed het om u te help nie, kan u altyd die kring op 'n broodbord verlaat, solank dit in u elektriese boks pas..
Stap 6: Berei die wooneenhede voor
Hierdie deel is waar dit regtig pret word. U het moontlik die ringe op elke boks opgemerk. Dit is bedoel om uitgeskakel te word sodat bokse aansluitings vir elektrisiteit kan word. Ons sal dit gebruik om tussen die sensoreenheid en die rekeneenheid te skakel, om aan te sluit op die sonpaneel en ook as ventilasie vir die sensoreenheid om lugsirkulasie moontlik te maak.
Klop eers 'n gaatjie op elke boks uit vir 'n verbinding tussen die twee, soos op die foto's gesien word. Dit kan moeilik wees om die gate uit te steek, maar 'n ruwe rand maak nie saak nie. Ek het gevind dat die beste metode is om 'n skroewedraaier te gebruik om eers die ingedrukte ring om elke gaatjie te steek en dit dan soos 'n verfblikdeksel af te los. Die waterdigte kabelaansluiting word dan gebruik om die twee bokse aan te sluit.
Dan moet u nog 'n gat in die rekenaarbehuizing vir die sonpaneeldraad maak. Hierdie gat word dan toegemaak met een van u halfblinde kabeldoppers. Steek 'n gaatjie daarin voordat u die deur insteek sodat die kabel daardeur kan gaan. Dit moet so klein as moontlik wees om dit waterdig te hou, en druk dan die mikro -usb -einde deur die gat (dit is die einde wat met die PiJuice verbind word).
Uiteindelik moet 'n ekstra gat in die sensoreenheid gemaak word om lug in en uit te laat. Ek het besluit om vir die geheel regoor die aansluiting tussen die twee bokse te gaan. Dit kan nodig wees om 'n tweede gaatjie by te voeg. Ek dink ons sal dit na 'n geruime tyd uitvind met behulp van die weerstasie.
Stap 7: Bedrading en afwerking van die weerstasie
Reg, amper daar. Die laaste fase is om alles op te trek.
Begin met die rekeneenheid. In hierdie boks het ons die Raspberry Pi, The PiJuice wat aansluit op die Raspberry Pi GPIO en die GSM -module wat via die vroulike na vroulike springdraad aansluit by die GPIO -uitbraak op die PiJuice. Lekker en knus! op hierdie stadium sou ek waarskynlik aanbeveel om 'n soort sealer om die ingangspunt van die USB -kabel vir die sonpaneel te plaas. Een of ander hars, of superlijm, sal waarskynlik werk.
Beweeg dan na die sensoreenheid. Op die foto, van bo na onder, is die drade; grys, wit, pers en blou is die SPI -data lyne, swart is gemaal, oranje is 3.3V, rooi is 5V en groen is GPIO 4. U moet jumperdrade vind om aan te sluit en dit dan deur die waterdigte kabel te voer aansluiting soos op die foto's gesien. Elke draad kan dan aan die ooreenstemmende GPIO gekoppel word en die aansluiting kan vasgemaak word. In hierdie stadium is dit maklik om te sien hoe die ontwerp verbeter kan word; Die LDR word nie aan baie lig blootgestel nie (alhoewel dit nog steeds nuttig is om relatiewe waardes te ken, en as u 'n ekstra gat kan uitsteek), dink ek dat dit beter sou wees om dieselfde grootte as die rekeneenheid te gebruik ook vir die sensoreenheid, dan sou dit makliker wees om die printplaat in die boks te plaas en sou daar ruimte wees om met verskillende rangskikkings te speel.
Ek het dit nou in die tuin neergesit, soos u op die foto's kan sien. Hopelik sal ek ook in die komende dae 'n paar resultate kan plaas! En soos ek vroeër gesê het, laat weet my as u idees het vir 'n paar oulike projekte!
Aanbeveel:
Hanging Gear Weather Station: 7 stappe (met foto's)
Hangende weerstasie: In hierdie instruksies gaan ek u wys hoe u u eie weerstasie vir hangende toerusting kan bou, wat bestaan uit CNC-lasersnit MDF-onderdele. 'N Stappermotor dryf elke rat aan en 'n Arduino neem temperatuur- en humiditeitsmetings met behulp van 'n DHT
Simple Weather Station V2.0: 5 stappe (met foto's)
Simple Weather Station V2.0: Voorheen het ek 'n paar soorte weerstasies gedeel wat anders werk. As u nie die artikels gelees het nie, raai ek u aan om dit hier te raadpleeg: Eenvoudige weerstasie met behulp van ESP8266. Kamerweerstasie met behulp van Arduino &
Raspberry Pi Internet Weather Station: 5 stappe (met foto's)
Raspberry Pi internet weerstasie: *** opdatering *** hierdie instruksies is verouderd. Die weerdienste vir die weerdata wat in hierdie instruksies gebruik word, werk nie meer nie. Daar is egter 'n alternatiewe projek wat basies dieselfde doen (net beter - hierdie Instructa
Tweeting Weather Station: 8 stappe (met foto's)
Tweeting Weather Station: wou u die huidige weerstoestande, koolstofvoetspoor, geraas en besoedelingsvlakke in u stad monitor? Wil u 'n kruisvaardiger vir klimaatsverandering wees, of wil u u eie Tweeting-weerstasie oprig en u plaaslike weersomstandighede deel met die
Particle Photon IoT Personal Weather Station: 4 stappe (met foto's)
Particle Photon IoT Personal Weather Station: