Arduino GPRS väderstation - del 1 (1 / 23 steg)

Steg 1: Projektet utmaningar



Efter att min nuvarande väderstation för ca 5 år, insåg jag att den overiding begränsningen av systemet var hur data var skickas och bearbetas i stället för den faktiska sensorer och annan hårdvara. Det är inte normalt en massa is där jag bor, så utarbeta uppvärmd vind sensorer inte behövs, men när jag försökte positionsgivare mitt i ett fält för att få de bästa vind avläsningarna, insåg jag att standard radioöverföring och wifi inte var klarar jobbet. En möjlighet var att ha kablar nedgrävda i marken, men jag valde till slut GPRS data hantering i det lokala nätverket 2G mobiltelefon.

Jag var inte riktigt säker om 2G skulle kunna hantera mängden data så jag byggde denna del av projektet först och jag inte behöver ha oroat som för en till slut det var relativt lätt att bygga och två, data kbs är mycket mindre än vi kanske tror.

Nästa del som jag tittat på var slutet - hur data skulle bearbetas. Min nuvarande väderstation har egen proprietory system för databehandling som ska laddas upp manuellt till en PC och är inte tillgänglig att dela, distribuera eller allmänt fiol med. Den svåraste delen av projektet var inte att få uppgifter i en databas, men att få uppgifter ur den igen och visa dem i en meningsfull och lättillgängligt sätt.

Än ovanstående, det har varit en konstant låt ner till har batterier dör vid avgörande tillfällen, som mitt i en spännande våldsam storm, så jag har valt att sensorer och GPRS springer iväg ett stort bilbatteri drivs av ett dumt stora solpaneler som kommer att hålla saker som händer i de aldrig sinande mörka veckorna i vinter. Bara för sinnesro la jag en enkel voltmeter till utbudet av sensorer så att jag kunde hålla kolla på batteriet.

Den faktiska sensorer sig var inte alltför svårt att genomskåda. En av de viktigaste utmaningarna var RJ11-kontakter används på regn och vindmätare - dessa kontakter är otroligt krångliga att röra om med så jag omgjorda min Hackable Prototyping ombord för att ha 2 x RJ45 socket platser (RJ45 är en 8-pin version av RJ11, som är 6 stift). Redisigning denna styrelse är alltid ganska riskabelt eftersom det är otroligt lätt att göra fel och har kortslutning och andra missöden som orsakar förödelse i elektriska kretsar.

Efter lite kraftig motion inom min egen personnal grå materia, insåg jag att, om jag inte var försiktig, de mest spännande händelserna i vädret som en svår vindpust, lätt kan missas om jag inte ansåg tidsram elementen i min design. Min gamla väderstation svikit mig ganska spektakulärt en dag. Det var den 4 februari 2015 och en förfärlig storm hade blåst. Det var en stor krasch utanför som 30 rutor glasshouse desintegrerade och tittar ut genom fönstret såg jag min granne rida på gräsklipparen seglar genom luften mot mitt hus. I en gest av totala hängivenhet till vetenskapen av väder mätning och min kärlek till min granne, jag omedelbart på väg till min väderstation konsol, förväntar sig att se vindstöt visas som ungefärligt 80 MPH men... Ingenting... Den % ^ "< **! > %%: maskin hade missat det!

Jag var verkligen hoppas att jag kunde trösta min grannes förlust genom att informera honom om exakta vindhastigheten som hans gräsklippare tog till flykten!

Självklart, vindens hastighet måste därför ständigt övervakas, inte bara ta en läsning varje 5 sekunder så många system gör. Jag trodde att detta skulle kunna uppnås genom att ha en dedikerad mikroprocessor bara att övervaka vindhastighet, beräkna om maximalt värde varje 1/10 av en sekund eller så över en 60 andra period och stöta upp värdet till en annan mikro-processor nummer ett med tio minuters mellanrum.

Som jag kom längre in i projektet, fram nya utmaningar själva. En av dessa var strömkraven för systemet. Lyckligtvis hade jag redan dela upp mitt system i två mikroprocessorer - en Arduino Mega och ett Atmega328P chip från en Uno. En GPRS-modul används en hel del makt så jag använde 328 för att sända fona och mega i "viloläge" för nio minuters intervaller.

Programmering av 328 och Mega ställde några nya utmaningar för mig som, för en, ingen "försening" funktioner kan användas i 328 och allt tvungen att vara tt genom att använda verktyget "millis", vilket innebar några ganska allvarliga huvud sprätta! Programming Mega handlade om att få den information som skickas till min webbplats databas och kommunikation med 328P, som levererat några av de viktiga data och också kommunicera med den fona GPRS modul som skulle skicka alla data in i cyberrymden.

Jag planerade ursprungligen att detta projekt skulle ta ca 5 dagar för att slutföra, men detta visade sig vara vilt felaktiga som arbetet visade sig vara ungefär 10 gånger vad jag trodde det skulle vara. Säkert skulle det bara om att koppla upp ett dussin sensorer och att få de data som överförs via GPRS? Errrrrrr... Jag önskar det var så enkelt! Så snart jag började gräva i djupet av detta projekt många dolda hinder började uppenbara sig och jag började känna sig väldigt likt Indiana Jones går in i templet av doom att rädda några värdefulla skatt från en massa psykopatiska munchkins.

Möjligen det värsta problemet var regnmätaren. Inte för att det är något fel med plast regnmätaren, bara att det sätt jag försökte inte kunde jag få regn data att resa ner I2C väg. Jag slutade ta everthing till bitar att försöka hitta problemet när till slut det var något jag bara kan förklara som ett "svart hål" i Arduino minne ram. Efter att ha kämpat i 3 hela dagar slutade jag upp att göra en PHP är arbete runt som väldigt klumpig jämfört med den lösning som har jag hittat. Det var något att med det faktum att Arduino inte skulle hålla ett litet värde t.ex. '1' för nio minuter i det är minne och göra det tillgängligt för överföring i slutet av den. Det var glad för att hålla andra små siffror i minnet så länge som de var uppdateras regelbundet. Det hade varit ok om numret var inte då nollställs efter 10 minuter så jag bara gjorde det möjligt att fortsätta växa större och större utan att återställa den. En annan konstig kammare i de fördömdas tempel.

Så var man ska börja och hur mycket i detalj gå in på? En annan fråga är när du ska sluta, som jag tror att jag kunde utveckla detta projekt mycket mer.

Se Steg
Relaterade Ämnen

Infraröd Sensor guidade Arduino kontrollerade L293D Robot (del 2)

Här är del 2 av Arduino kontrollerade L293D Robot.Del 2 innehåller IR Sensors.This ingår i en serie av instructables leder till en rad efterföljare Robot.QRD1114 Infrarödsensor kopplad till ArduinoSteg 1: Ledningar IR sensorn till ArduinoNegativ från...

Arduino kontrollerade L293D Robot (del 1 - Update 1.0)

Här är del 1 av Arduino och L293D Robot.This är en del av en serie av instructables leder till en rad efterföljare Robot.Detta är en grundläggande Robot gjorde genom att styra två motorer via L293D chip genom en Arduino ombord.Jag har gjort detta pro...

Lärande Arduino grunderna till barnvakten - del 01 "Blink" eller "Internet"

du har köpt din första Arduino eller du planerar att få denna stora lilla enhet? Obi Wan skulle säga: "det är bra. Du har tagit ditt första steg in i en större värld." Samma sak för mig! Grattis! Ser du, när du behärskar grunderna, du har så kul...

Remote control via GPRS/GSM SMS(Arduino)

fjärrkontroll, särskilt när detta nr ethernet och Wifi i den utomhus, har varit en mycket djupgående saker tidigare. När jag var barn, bilden jag alltid som jag har en utrustning som kan styra alla vitvaror. Nu, detta blir verklighet, med Arduino och...

DIY Arduino och Raspberry Pi väderstation och webbserver

Detta är ett projekt som kommer att ta temperaturen med TMP36 IC temperaturgivare och en Arduino ombord. Dessa data kommer att sända över följetong till Raspberry Pistyrelsen redigerar en webbsida att Raspberry Pi är värd för sig själv. För detta pro...

Cloud trattar - Arduino väderstation

Enkla Arduino Uno väderstation med Ethernet web access använder cheep Maplin sensorer :) se PDF för beskrivning och Arduino kod. Du behöver 1 Arduino Uno och Ethernet shield + några remsor en bröd och halvpension att ansluta upp sensorer. Det kommer...

Arduino mark sond med DS18B20 och DIY fukt hårdvara

Som en fanatisk trädgårdsmästare eller professionella jordbrukare att veta miljömässiga villkoren i vår jord är ovärderlig. Självklart, vi kan inte mäta antalet maskar eller bitar av organiska humus, men vi kan mäta temperatur och fukt innehåll verkl...

Ställa in en A100LK vindmätaren på en Arduino

Någon tänker installera en vindkraftgenerator, eller ens en hel flock av vindkraftverk, skulle göra klokt att övervaka den föreslagna platsen för minst ett helt år innan spendera ett öre mer på hårdvara. Detta är vad A100LK är utformad för.Det första...

Como controlar un LED remotamente con Arduino y Ubidots

Luego de realizar esté handledning podrás controlar el encendido o apagado de actuador un remotamente, desde la plataforma de Ubidots. Sv éste caso usaremos un LED por facilidad, synd emabrgo podrás extender éste handledning, en pojkflicka, en cualqu...

Hackgyver väderstation

Sedan en tid på min hackerspace, en av vår medlem (futex) gjorde en väderstation med en Raspberry Pi.Efter som tittar på hans arbete hade jag idén att göra en men istället för att använda en RPi som plateform jag har fokuserat mitt arbete på Arduino,...

Arduino Firefly-programmerad lysdioder på handgjorda tovade Tote Bag

Detta var mitt första projekt som krävs för kodning. Min idé var att skapa en tovad väska som hade några lysdioder som skulle tona in och tona ut slumpmässigt, som eldflugor. Det skulle vara ganska och inte alltför nördig, så jag arbetade hårt på tov...

Arduino Powered "Scotch Mount" Star Tracker för fotografering

Jag lärde mig om Scotch montera när jag var yngre och gjorde en med min pappa när jag var 16. Det är ett billigt och enkelt sätt att komma igång med fotografering, att täcker grunderna innan du får i de komplicerade teleskop frågor av främsta fokus,...

Ansluta en väderstation till Internet saker

Hej och Välkommen med till de stegvisa instruktionerna för att göra din Davies väderstation del av Sakernas Internet våra Intel ICRI kit.Med hjälp av detta kit kommer du att kunna ansluta din Davies väderstation till en Intel Galileo, vilket innebär...

Enkel automatisk flytta Robot använder arduino & L293d IC

detta är en grundläggande Robot drivs av en arduino och vad den gör är att det bara strövar runt och följa en cirkulärbana genom standardkod men du kan ändra koden för att ändra sökvägen lätt. Det är ett enkelt projekt som alla kan bygga. . Så om du...

OHMMETER använder ARDUINO

Enohmmeter är en enhet som kan mäta motstånd.De flesta gånger nu, ohmmetrar är inte fristående enheter men visas som en av typ av mätanordning bland många i en multimeter. En avancerad multimeter, skulle i dag ha en ohmmeter, voltmeter, amperemeter,...

Kontroll Arduino fungerar med en USB-styrenhet, ingen lödning krävs-jag gjorde det på TechShop

tidigare i år bestämde jag mig att det skulle vara kul att använda min kabelanslutna Xbox 360-handkontrollen för att styra Arduino projekt - i det här fallet en RGB LED. Den vanligaste metoden att göra det innebär dock att komma åt elektroniken inuti...

LEDDE matrisen med Arduino

Hola, jag är Javier från Makespace Madrid. Förra veckan anordnade vi en meetup att spela med LED matriser och Arduinos. Detta var del av "La noche de la electrónica con Jameco"Detta instructable är baserat på verkstaden. Den använder en enda led...

Arduino & sony ericsson: gsm sköld hacka

Hej! Ett tag sedan jag ville fjärråtkomst till min arduino för att styra I/O pins, jag gillade verkligen arduino GSM sköld eftersom det skulle tillåta mig att kontrollera min arduino från var som helst i världen. Men sådan en sköld tyvärr kommer inte...

ArduDroid: En enkel 2-vägs Bluetooth-baserade Android Controller för Arduino

UPPDATERINGAR:19 nov. 2031: yttrande: fantastiska synergin mellan Arduino & Android.30 oktober 2013: Andruino är nu officiellt ARDUDROID och snart blir tillgängligt på Google Play. Denna namnändring att undvika konflikt med en annan app på Google Pla...