WIFI växt övervakningssystem baserade på Arduino MEGA och ESP8266 (3 / 4 steg)

Steg 3: Lägga till en sensor till grundläggande skiss



När förstås hur den grundläggande koden fungerar, kan vi lägga till en sensor och gör det skicka data till Thingspeak. Vi valde att lägga till en jord fukt sensor som kallas YL-69. Anslut det som visas i Fritzing systemet bifogas i detta steg och sedan klistra in den i marken.

Vi kommer inte att se hur du lägger till varje enskild sensor som används i detta projekt eftersom i princip är det bara att upprepa förloppet visas i detta steg *.

Konstant och variabler krävs

Det första vi ska göra är att definiera en konstant för stift används av markens fukt sensor. Sedan förklara vi en strängvariabel som behövs för att lagra data.

#define soilMoisturePIN 0 / / jord fukt sensor ansluten till analoga Pin 0
String soilMoist = ""; skickar i jorden fukt värden

Den soilMoisture)

Nu måste vi lägga till en ny funktion som i grunden omvandlar analoga värden av markens fukt sensor i procent och konverterar dem sedan till strängar. Som ni borde veta från föregående steg, accepterar Thinkspeak endast strängar, så att denna omvandling är absolut nödvändigt.

Sträng soilMoisture () {

float fuktighet;
char moisture_c [6].
beräknas andelen markfuktighet
fukt = analogRead(soilMoisturePIN);
fukt = 100*(1-(moisture)/1023);

dtostrf (fukt, 0, 1, moisture_c); konverterar flöten till strängar

återgå moisture_c (sträng);
}

Hur denna konvertering ske? Det är ganska enkelt. Deklarera en 6 element char array och sedan konvertera flyter genom att använda funktionen dtostrf.

dtostrf har följande syntax:

dtostrf (float_to_convert, minimum_length_of_the_string, decimal_significant_digits, the_string_array_previously_made);

Naturligtvis måste din funktioner returnera en sträng.

Obs: markfuktighet är 0% när sensorn anger 1023 och 100% anger 0, yours kan vara olika!

Skicka data till Thingspeak

Funktionen upadateValues är i huvudsak som en sett i föregående steg. I själva verket ändrade vi endast värdet att skicka från valuetosend till moisture_c.

void upadateValues(String moisture_c) {
Sträng cmd = "AT + CIPSTART = \"TCP\", \" ";
CMD + = IP;
CMD + = "\",80";
esp8266.println(CMD);
Delay(2000);
IF(esp8266.find("Error")) {
Serial.Print("Error1");
hemkomst.
}
CMD = GET + GET1;
CMD += moisture_c;
CMD + = "\r\n";
Serial.Print(CMD);
esp8266.Print("at+CIPSEND=");
esp8266.println(cmd.length());
om (esp8266.find(">")) {
esp8266.Print(CMD);
} annat {
esp8266.println("at+CIPCLOSE");
}
}

connectWiFi ändras inte alls.

Setup och Loop funktioner

Dessa två funktioner skiljer sig bara lite från de sett innan.

In i installationsprogrammet hittar vi en extra rad behövs för att initiera markens fukt sensor.

pinMode (soilMoisturePIN, ingång);

Till de loop kallar vi helt enkelt tillbaka soilMoisture och upadateValues. Den första funktionen upptäcker och beräknar vattenhalt, den andra en skickar den till ThingSpeak.

void loop() {
soilMoist = soilMoisture();
upadateValues(soilMoist);
Delay(5000);
}

* Obs: vår sista skiss innehåller en funktion som heter getValue som krävs för att dela upp strängar från DHT22. Denna verksamhet kallas tokenisera. Kolla denna sida för mer information om.

Se Steg
Relaterade Ämnen

RS485 Seriell kommunikation mellan Arduino Mega och Arduino Nano med Visuino

Ibland måste vi ansluta Arduino styrelser ligger långt bort från varandra. RS485 är ett mycket bekvämt sätt att ansluta styrelser med bara 2 kablar, och kan arbeta för ett avstånd på 1200 m (4000 ft). Det gör också flera styrelser kan enkelt anslutas...

Sol varmvatten controller med arduino mega och ds18b20 tempsensor

Detta är projekt för kontroll solsystemet.Steg 1: Saker du behöver Delar:1xArdunio1xLCD 16 x 23x4.7 kOhm motstånd2xN-P-N transistor2x5v relä3xDS18b20 temperaturgivare1xBreadboard2 x 220 Ohm motståndSteg 2: Ansluta DS18b20 sensorerObs: 4.7kOhm motstån...

En nybörjare guide till setup ESP8266 med Arduino Mega 2560 eller Uno

För produkter med öppen källkod för att lyckas eller anta en masse "skaparna" / "DIY-na" / "dev" / "etc"; en aktuell och korrekt dokumentation eller snabbstart-guide som skall krävas. Användarens inlägg i diskussion...

Ansluta ESP8266-01 till Arduino UNO / MEGA och BLYNK

Detta är en handledning för att visa dig hur du flash en firmware-ESP8266-01 och ansluter till Blynk med hjälp av en ESP8266 - 01 som en Arduino wifi sköld.Maskinvara som behövs:* Arduino Uno/Mega* Hoppare ledningar* USB A till USB B-kabelESP8266-01P...

Arduino Mega 8 x 8 x 8 RGB LED Cube

"Så du vill bygga en 8 x 8 x 8 RGB LED Cube"Jag har spelat runt med elektronik och Arduinos ett tag nu, inklusive bygga en hög amp switch controller för min bil och en sex körfält Pinewood Derby domare för våra scouter grupp.Jag var så fascinera...

Driver den Arduino Mega med litiumbatteri

detta är en liten och kort handledning som förklarar steg för steg hur du ansluter Mega litium ryggsäck öppen källkod hårdvara skölden till Arduino Mega, ge den batteritid, och tillåta Mega vara untethered från datorn.Delarna var alla tagna från liqu...

Prototyping sköld för Arduino Mega

detta är en ner och smutsiga prototyping sköld som fungerar för Arduino Mega och det pin-kompatibel kloner. Detta är första gången jag har gjort detta forum, men jag har andra projekt jag tror detta skulle vara praktiskt för.Material som används:Prot...

Ford CD-växlare Emulator - Arduino Mega

väl... Jag har Ford Focus, och en dag min ursprungliga radio, Ford 6000, har slutat ta emot alla FM-station. Det visade att FM proccessor är ner. Jag hade en annan Ford radio - 5000, med kassetter-spelare.Jag har börjat undra - ok, det finns en skylt...

Laptop automatisk Start/stopp anklagat för (med Arduino, Yun sköld och ESP8266)

Jag arbetar utanför mitt land och laptop är en stor hjälp för mig att ansluta till min familj och vänner och göra alla mina computing tyger också, men jag alltid kom över för att driva svagt batteri och jämn värst till kritisk nivå eller reserverade...

Arduino Mega 2560 baserade LDR ljus intensitet kontroll

De flesta av er vet redan om Arduino och programmering, men de av er som inte vet om dess grunderna bör läsa detta instructable först.Det har allt du behöver veta om Arduino. Jag har använt Mega 2560 i detta instructable eftersom det är ungefär som d...

ESP8266 Wifi lägger på för Arduino Made Simple

UppdateringProcessen som beskrivs här rekommenderas inte längre. Detta instructable har ersatts av ESP8266 WiFi sköld för Arduino och andra micros som ger en mer universell webbsida konfiguration funktion.IntroduktionESP8266 är en låg kostnad wifi ak...

Linux, WiFi, Ethernet, USB-Shield för Arduino

Yun Shield är en Arduino Shield som kommer helt enkelt "vända" Arduino (Leonardo, UNO, MEGA2560 etc) både en "Arduino Yun". Det ger ett Linux-system, WiFi, Ethernet till Arduino styrelsen för anslutning. Det har också en USB-värd port...

Arduino Mega Intro

Hej allaArduino Mega är en fantastisk mikrokontroller för projekt som behöver en stor mängd io eller bearbetning makt och är väldigt roligt att använda. I detta instructable vi ser på den:Arduino Megas specifikationerprojekt som bäst förordningen på...

RC wifi bil Robot kamera använder Arduino och openWRT

En wifi bil baserad på Arduinogenom att stämma openWRTMål: DIY en trådlös bil baserad på Arduino. Genom att kontrollera bilen, vi kan se andra saker på fjärrplatsen, eller kan övervaka säkerheten.Effekt av bild:Princip:l borsta openWRT in trådlös rou...

Arduino Mega Hexapod

Andra Video (ungefär samma sak, utom snabbare handrörelser):https://www.youtube.com/watch?v=zepHB4h5JS4&featu...Detta är min Hexapod, är uppbyggd kring Lynxmotion's Phoenix hexapod och kör en modifierad version av Kurte's phoenix kodbas.Generiska Phe...

Arduino tid-och-Sensor-baserade Android musikspelare

Tänk dig din musikspelare som spelar för dig, en spelare den meningen det omgivande ljuset, temperatur och tid som påverkar stämningen i en person, och välja en låt kategorisera som stämningar. Eftersom jag inte har en sensor som kan översätta mänskl...

Akut knappen för 7$, Arduino, WIFI och ESP8266

HejDet finns en hel del projekt idag försöker hjälpa äldre att bo mer oberoende. Eftersom min farmor är nu 95 och hon lever själv i sin lägenhet, ville jag kolla hur jag kunde hjälpa henne stanna på hennes plats så länge som möjligt.En av de största...

Helgen projektet klocka datum termometer och luftfuktighet med Arduino mega

killar, jag vill dela min helg projekt på att skapa en klocka med fukt och temperaturgivare,Det är med DHT11 sensor, RTC DS1307, LCD 16 x 2 och Arduino Mega 2560,Hålla läsning och lycka tillSteg 1: Förbered alla delar behövs... i detta experiment beh...

Bränna Arduino Bootloader med Arduino MEGA!

Baserat på den officiella ArduinoISP Tutorial:http://Arduino.cc/en/tutorial/ArduinoISPDetta förfarande kan med en arbetande arduino för att programmera bootloader av en annan ATMega chip med SPI som ICSP. Det sparar du att köpa en annan kringutrustni...