Innholdsfortegnelse:

WIFI værstasjon med Magicbit (Arduino): 6 trinn
WIFI værstasjon med Magicbit (Arduino): 6 trinn

Video: WIFI værstasjon med Magicbit (Arduino): 6 trinn

Video: WIFI værstasjon med Magicbit (Arduino): 6 trinn
Video: How to Make Homework Writing Machine at Home | Science Project 2024, November
Anonim
Image
Image

Denne opplæringen viser hvordan du bygger værstasjon fra Magicbit ved hjelp av Arduino som kan få detaljer fra smarttelefonen din.

Rekvisita

  • Magicbit
  • USB-A til mikro-USB-kabel
  • Magicbit DHT11 sensormodul

Trinn 1: Historie

I denne opplæringen vil vi lære om hvordan du lager en bærbar værstasjon ved hjelp av Magicbit dev board med DHT11 sensormodul. Ved å bruke smarttelefon kan vi få detaljer om været der Magicbit ligger.

Trinn 2: Teori og metodikk

I denne værstasjonen håper vi å få data om temperatur og fuktighet der vi vil. Først må vi få dataene fra sensoren som er følsom for temperatur og fuktighet. Deretter blir utgangssignalet fra den sensoren gitt til mikrokontrolleren som har WIFI -adapter for å koble til internett. For alt dette brukte vi ganske enkelt Magicbit kjernekort og DHT11 sensormodul som kan kobles direkte til Magicbit. Magicbit har ESP32 -prosessor. Derfor har den innebygd WIFI -tilkobling for å koble til Internett. Deretter overfører vi sensordataene våre til skyplattformen, og ved å bruke en bestemt app designet vi vårt tilpassede grensesnitt og viser at detaljene ved å bruke det. Til det formålet bruker vi Blynk -applikasjonen. Denne appen er IOT -basert app. Men det er veldig enkelt, og vi kan gjøre mange prosjekter fra det. Den støtter også mange typer prosessorer som Arduino, Esp32 og så videre. Du kan få flere detaljer om denne appen og denne on/ine -plattformen ved å gå gjennom følgende lenke.

blynk.io/en/getting-started

Trinn 3: Maskinvareoppsett

Programvareoppsett
Programvareoppsett

Dette er veldig enkelt. Koble sensormodulen til Magicbit. Koble deretter Magicbit til datamaskinen med en mikro -USB -kabel.

Trinn 4: Programvareoppsett

Programvareoppsett
Programvareoppsett
Programvareoppsett
Programvareoppsett

Mesteparten av dette prosjektet er gjort i programvareoppsett. I delen teori og metodikk nevnte vi at vi bruker Blynk -applikasjonen for å vise dataene våre. Derfor lar vi konfigurere det.

Først må du laste ned og installere Blynk -appen fra spillbutikken til din Android -telefon eller fra appbutikken til iOS -en din. Åpne den deretter. Nå ber det om å registrere seg eller logge inn. Det er veldig enkelt. Hvis du bruker denne appen for første gang, må du oppgi e -postadressen din og skrive inn passordet du vil ha, og registrere deg

Etter pålogging til Blynk, velg deretter nytt prosjektikon, og du kommer til ny prosjektside. Skriv deretter inn prosjektnavnet ditt, og det spurte hvilken type brett du brukte og hvilken type tilkobling du brukte for å kommunisere med prosessoren. Sett det som ESP32 dev og WIFI. Klikk nå på opprett -knappen, og du vil se massasje i displayet. I henhold til det nå må du sjekke innboksen din. Fordi de sendte deg noen auth -token -kode for prosjektet ditt. Sjekk e -posten din og kontroller at du har mottatt den. Vi bruker denne koden i vår Arduino kildekode senere. Nå har du et tomt arbeidsområde, og du kan tilpasse det slik du vil

Klikk nå på det positive merket i den øverste linjen på skjermen, og du kommer til den nye siden. Den har mange alternativer som kalles widgets. Disse widgetene pleide å vise data og kontrollere enheter eksternt. Du kan lære mer om dette ytterligere fra denne lenken

docs.blynk.cc/#:~:text=Now%20imagine%3A%2… a%20blynk%20of%20an%20eye.

I dette prosjektet representerer vi dataene våre ved hjelp av to analoge målere, og vi viser variasjonen våre data med tiden ved hjelp av graf. Derfor bruker vi to målere og ett superdiagram. Ved å velge disse widgetene kan du legge dem til på arbeidsområdet

Nå har vi en veldig viktig del å fullføre. Det er å konfigurere disse widgetene på passende måte. For å gjøre det har du mulighet til å gå til innstillingene for hver widget. Ved å klikke på en hvilken som helst widget kan du angi for å relatere innstillingene for widgeten du klikket på. lar oss endre innstillingene for hver widget. Fordi vi bruker venstre widget for å vise fuktighetsdetaljer og høyre widget for temperaturdetaljer, må du først gå til innstillingene for venstre måler widget ved å klikke på den. Angi foretrukket og navn til måler og Velg farge du vil ha for å vise fuktighetsdataene fra måleren. Sett inngangen som V5 og området til 0 til 100. V5 betyr visuell 5 -pinners. Dette betyr at appen får data fra den visuelle 5 -pinners. ikke den femte pinnen fra ESP32. Visual 5 pin brukes kun til kommunikasjon mellom bord og app via internett. Det er ikke en ekte pin. Fuktigheten vil vise mellom 0 og 100. Sett også avlesningshastigheten til 1. slik at dataavlesningen oppdateres hvert sekund. Du kan endre det fra hvilken som helst hastighet. men i mange tilfeller er 1s bra for å få data uten forsinkelse

Bøy deg tilbake til prosjektdisplayet og gå til de riktige målerinnstillingene og endre innstillingene som vi gjorde før. Husk å sette inngangen som V6 -pin. Fordi vi allerede brukte V5 for å få fuktighetsdata

Gå nå til innstillingene for superkart og angi passende navn og farge. Legg deretter til to datastrømmer. Den første for fuktighet og den andre for temperatur. Deretter går du til datastrøminnstillinger ved å klikke på utjevningsmerkene på høyre side av dem. Velg deretter grafstilen. I dette tilfellet setter vi det som et kontinuerlig mønster. sett deretter innganger som V5 og V6 for to datastrømmer. I temperaturdatastrøminnstillinger setter vi suffikset som Celsius og i fuktighetsinnstillinger setter vi det som %. Du kan endre andre innstillinger det du vil vise

Nå fullførte vi delen av appen. Men uten å laste opp riktig kildekode til Magicbit, kan vi ikke koble til denne appen. Så la oss se på hvordan du gjør det.

I den første fasen inkluderer vi spesifikke biblioteker for å etablere internettforbindelse ved hjelp av WIFI. Bibliotekene er allerede installert på med ditt Magicbit -bord i Arduino bortsett fra Blynk -biblioteket. Så gå til Sketch> Include Library> Manage Libraries og søk i Blynk -biblioteket og installer den nyeste versjonen. også kan du laste ned biblioteket fra denne lenken

github.com/blynkkk/blynk-library

Etter at du har lastet den ned, går du til Skisse> Inkluder bibliotek> legg til zip -bibliotek og velg zip -filen du lastet ned.

Deretter må du angi vårt WIFI -navn og passord i koden for å koble til internett. Kopier og lim inn Auth Token -koden du mottok via e -post. Sjekk hvor sensoren vår er koblet til Magicbit. I dette tilfellet er den tilkoblede pinnen 33. I oppsettet kan du se at det er to virtuelle pinner. Sett disse pinnene som V5 og V6. Hvis du brukte forskjellige pinner i appen, må du endre det i kode. Når koden kjører i prosessoren, kobles den først til WIFI. Overfører deretter dataene via internett via V5 og V6. Dette er en looping -prosess. Velg nå riktig com -port og velg brettype som magicbit. Nå er det på tide å laste den opp

Etter at koden er lastet opp, vil Magicbit -kortet automatisk koble seg til WIFI -en. I henhold til miljøtilstanden kan det være en treg eller raskere prosess.

Gå nå til prosjektet ditt i Blynk -appen, og det er på tide å teste det fungerer. Klikk på trekantsformet betalingsknappsymbol. Hvis appen din er koblet til brettet ditt via internett, får du massasje fra appen. Fint, det fungerer. Nå kan du se temperatur og fuktighet fra de to målerne og deres variasjon fra grafen.

Trinn 5: Feilsøking

Hvis du klikker på prosjektavspillingsknappen, og hvis den ikke gjorde det, er det svar. Deretter,

  • Vent litt. Fordi styret noen ganger er vanskelig å oppdage WIFI i henhold til miljøtilstanden din. også treg internettforbindelse kan være grunnen til det.
  • Sjekk at Auth -koden og WIFI -detaljer er riktige i koden du skrev inn.
  • Endre WIFI -tilkoblingen.

Trinn 6: Arduino -kode

/*************************************************************

Last ned siste Blynk -bibliotek her:

github.com/blynkkk/blynk-library/releases/latest Blynk er en plattform med iOS- og Android-apper for å kontrollere Arduino, Raspberry Pi og lignende over Internett. Du kan enkelt bygge grafiske grensesnitt for alle prosjektene dine ved å dra og slippe widgets. Nedlastinger, dokumenter, opplæringsprogrammer: https://www.blynk.cc Sketch generator: https://examples.blynk.cc Blynk community: https://community.blynk.cc Følg oss: https://www.fb. com/blynkapp Blynk -biblioteket er lisensiert under MIT -lisens. Denne eksempelkoden er i offentlig eiendom. ************************************************* *********** Dette eksemplet viser hvordan verdi kan skyves fra Arduino til Blynk -appen. ADVARSEL: I dette eksemplet trenger du Adafruit DHT-sensorbiblioteker: https://github.com/adafruit/Adafruit_Sensor https://github.com/adafruit/DHT-sensor-library App-prosjektoppsett: Verdi Display-widget knyttet til V5 Verdi Display -widget knyttet til V6 ******************************************** *****************//*Kommenter dette for å deaktivere utskrifter og spare plass*/ #define BLYNK_PRINT Serial #include #include #include #include "DHT.h" // Du bør få Auth Token i Blynk -appen. // Gå til prosjektinnstillingene (nøtterikon). char auth = "****************"; // auth -token mottok deg via e -post // WiFi -legitimasjonen din. // Sett passordet til "" for åpne nettverk. char ssid = "**********"; /// ditt wifi -navn char pass = "**********"; // wifi passord #definer DHTPIN 33 // Hvilken digital pin vi er koblet til // Ikke kommenter hvilken type du bruker! #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22, AM2302, AM2321 //#define DHTTYPE DHT21 // DHT 21, AM2301 DHT dht (DHTPIN, DHTTYPE); BlynkTimer timer; // Denne funksjonen sender Arduinos oppetid hvert sekund til Virtual Pin (5). // I appen skal widgets lesefrekvens settes til PUSH. Dette betyr // at du definerer hvor ofte data skal sendes til Blynk App. void sendSensor () {float h = dht.readHumidity (); float t = dht.readTemperature (); // eller dht.readTemperature (true) for Fahrenheit if (isnan (h) || isnan (t)) {Serial.println ("Kunne ikke lese fra DHT -sensor!"); komme tilbake; } // Du kan når som helst sende hvilken som helst verdi. // Ikke send mer enn 10 verdier per sekund. Blynk.virtualWrite (V5, h); Blynk.virtualWrite (V6, t); } ugyldig oppsett () {// Debug -konsoll Serial.begin (115200); forsinkelse (1000); Blynk.begin (auth, ssid, pass); // Du kan også angi server: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.begin(auth, ssid, pass, IPAddress (192, 168, 1, 100), 8080); dht.begin (); // Sett opp en funksjon som skal kalles annenhvert timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }

Anbefalt: