Super enkel Arduino väder webbservern (3 / 5 steg)

Steg 3: Koden



jag har anpassat prov webbserver app ingår med Arduino, genom en sammanslagning av den DHTxx koden och bibliotek från Lady Ada. Detta ändrar i grunden Serial.print uttalanden till client.print, och jag har masserade HTML-koden lite för att göra det Visa trevligare. Du kan hämta koden på

http://arduinotronics.blogspot.com/2013/09/Arduino-Temp-humidity-Web-Server.html

#include < DHT.h >

#define DHTPIN 2 / / vilken pin vi är ansluten till

Avkommentera oavsett vilken typ du använder!
#define DHTTYPE DHT11 / / DHT 11
#define DHTTYPE DHT22 / / DHT 22 (AM2302)
#define DHTTYPE DHT21 / / DHT 21 (AM2301)

Ansluta stift 1 (till vänster) av sensorn till + 5V
Ansluta stift 2 av sensorn till vad din DHTPIN är
Ansluta stift 4 (till höger) av sensorn till marken
Ansluta en 10K motstånd från stift 2 (data) till stift 1 (power) av sensorn

DHT dht (DHTPIN, DHTTYPE);

#include < SPI.h >
#include < Ethernet.h >

Ange en MAC-adress och IP-adressen för din controller nedan.
IP-adressen kommer att bero på ditt lokala nätverk:
byte [mac] = {
0x90, 0xA2, 0xDA, 0x00, 0x23, 0x36}; MAC-adressen finns på baksidan av din ethernet shield.
IP-adress ip(192,168,254,177); IP-adressen beroende på din nätverksadresser.

Starta servern Ethernet-biblioteket
med IP-adress och port vill du använda
(port 80 är standard för HTTP):
EthernetServer server(80);

void setup() {
Öppna seriell kommunikation och vänta på port att öppna:
Serial.BEGIN(9600);
tag (!. Serial) {
; vänta för seriell port att ansluta. Behövs för Leonardo endast
}

DHT.BEGIN();

Starta Ethernet-anslutningen och servern:
Ethernet.BEGIN (mac, ip);
Server.BEGIN();
Serial.Print ("servern är på");
Serial.println(Ethernet.localIP());
}

void loop() {

Läst temperatur eller fuktighet tar cirka 250 millisekunder!
Sensormätningar kan också vara upp till 2 sekunder "gamla" (det är en mycket långsam sensor)
flyta h = dht.readHumidity();
flyta t = dht.readTemperature();

kolla om avkastningen är giltig, om de är NaN (inte ett tal) då något gick fel!
om (isnan(t) || isnan(h)) {
Serial.println ("kunde inte läsa från DHT");
} annat {
Serial.Print ("luftfuktighet:");
Serial.Print(h);
Serial.Print ("% \t");
Serial.Print ("temperatur:");
Serial.Print(t);
Serial.println ("* C");
}

lyssna efter inkommande klienter
EthernetClient klient = server.available();
om (klient) {
Serial.println ("ny kund");
en http-förfrågan avslutas med en tom rad
booleska currentLineIsBlank = sant;
samtidigt (client.connected()) {
om (client.available()) {
char c = client.read();
Serial.write(c);
Om du har fått till slutet av raden (fick en newline
karaktär) och raden är tom, http-begäran har avslutats,
så du kan skicka ett svar
om (c == '\n' & & currentLineIsBlank) {
Skicka ett standard http-svarshuvud
client.println ("HTTP/1.1 200 OK");
client.println ("Content-Type: text/html");
client.println ("anslutning: Stäng"); anslutningen kommer att stängas efter slutförandet av svar
client.println ("uppdatera: 5"); uppdatera sidan automatiskt varje 5 sek
client.println();
client.println ("<! DOCTYPE HTML > ");
client.println ("< html >");

utgående värdet av DHT-11
client.println ("< H2 >");
client.Print ("luftfuktighet:");
client.println ("</H2 >");
client.println ("< p/>");
client.println ("< H1 >");
client.Print(h);
client.Print ("% \t");
client.println ("</H1 >");
client.println ("< p/>");
client.println ("< H2 >");
client.Print ("temperatur:");
client.println ("</H2 >");
client.println ("< H1 >");
client.Print(t*1.8+32);
client.println ("°");
client.println("F");
client.println ("</H1 >");

client.println ("</html >");
bryta;
}
om (c == "\n") {
du börjar en ny rad
currentLineIsBlank = sant;
}
annars om (c! = '\r') {
du har fått ett tecken på den aktuella raden
currentLineIsBlank = false;
}
}
}
de web webbläsare möjlighet att ta emot data
Delay(1);
stänga anslutningen:
client.stop();
Serial.println ("klient disonnected");
}
}

Se Steg
Relaterade Ämnen

Super enkla Arduino Powered Roomba Scheduler

som de flesta människor jag var skeptisk till att få en robotic dammsugare, så som en provkörning jag tänkte jag skulle köpa den nu föråldrade iRobot Roomba 530 som var kraftigt nedsatta (de är fortfarande tillgängliga i Australien, visar hur bakom g...

SUPER ENKEL NYBÖRJARE ROBOT II (ARDUINO UNO VER.)

Detta "vänners kompatibla är baserad på min ganska populära SUPER enkel nybörjare ROBOT" vänners kompatibla. Efter många, många förfrågningar att tillhandahålla en uppdaterad version Arduino, är här det!Jag skapade detta Instructable, och dess f...

Super enkel gardin

detta instructable kommer att berätta hur man gör en riktigt enkel gardin från någon gammal bit av tyg som du har liggande.Jag gjorde en av dessa gardiner för min hemliga den eftersom jag är fattig och har inte råd att köpa gardiner, även om inte rik...

Super enkel nybörjare Robot!

'''ROBOT VIDEO'' 'Här är en extern länk till video medan YouTube bearbetar den inbäddade versionen...Jag skapade detta Instructable för den absoluta n00by robot wannabe. Jag har märkt ett stort hopp i antalet nybörjare att komma in på hobby och antal...

Cougar kör en enkel Arduino spel.

Jag byggde detta Arduino/bearbetning spel som en skoluppgift. Uppgiften var att bygga en Arduino spel och jag bestämde mig att bygga min som en enkel arduino krets och en mer komplicerad programvara. Hur spelet fungerar som beroende på tryck applicer...

Super enkel Workshop cykelställ

.Jag har två cyklar att sätta ihop - med ett är ett frame ersättning jobb, och den andra är under ombyggnad och uppgradering av en gammal racing cykel med nya pulverlackering, vevaxel, vevar, pedaler, svanhals, etc., etc., etc.Jag funderar över behov...

DIY ROOM DECOR ❤ Super enkel COOKIE kudde! (Sy/nej sy)

Hi!!Idag en bring du en super enkel och rolig DIY: cookie kudde!Du behöver:Någon form av tyg (storlek beror på hur stor du vill att din kudde vara)Brun filt (kan du använda svart, men jag tror att brown kommer att se mycket bättre)Sy kit: sax, tråd o...

Super enkel Gluten fri jordnötssmör (Chocolate Chip) Cookies

Super enkel Gluten fri jordnötssmör (Chocolate Chip) CookiesGör 2 dussin eller mer beroende på storlek.Saker som behövs:MätglasetBlandning skedMatskedCookie blad (icke-stick visas)Kylning Rack X2Objekt som inte visas *GaffelSpatelIngredienser:1 kopp...

Super enkel arkivskåp Upcycle

det är gratis och löjligt enkelt! Upcycle din tråkiga arkivskåp i 1 timme.Steg 1: Hitta en tråkig arkivskåp Under våra office remodel, och medan jag tittade på färgen torka - inget skämt - jag hade en titt på våra plain vit metall arkivskåp i mitten...

Super enkel ignition coil drivrutiner

Steg 1: låter start med bacicsOK, är en tändning coil (eller spark spole) en typ av induktionsspolar liknar en Tesla coil . den används i förbränningsmotorer. och producerar upp till 50.000 volt (en 2-4 CM gnista) vid en dödlig ström på 25ma.för att...

Super enkel hund kex!

Det var en lärorik erfarenhet att räkna ut de exakta proportionerna för att få rätt konsistens, men jag är stolt över att dela min sista recept! Dessa är super enkel, med få ingredienser och friheten att lägga till några ingredienser som du tycker pa...

Hemgjord förgyllning (super enkel)

Super enkel väg till guld tallrik din fav blad eller verktyg(eller vad du vill till plattan, så länge som dess metall :)Steg 1: Material och verktyg:-Lödkolv och vissa tråd-Gummihandskar och skyddande öga slitage-Li Ion cell-AA-hållare-Dest. vatten-A...

Super enkel justerbar LED förare eller Laser

göra din egen drivrutin för din led eller laser-diod, schematisk är super enkel bara 2 komponenter LM317 spänningsregulator och justerbar trim kruka 50 ohm.LM317 kommer att nuvarande tillsynsmyndigheten, med trimm pot vi gona ange önskan nuvarande.Se...

Super enkel strandväska

* lite sömnad erfarenhet krävs * har du någonsin känt behovet av att gå till stranden, men hade ingen strandväska att sätta din handduk i? Som aldrig kommer att hända igen tack vare Super enkel strandväska! Jag gjorde detta för ett tag sedan så jag h...

Min Super enkel genväg vitlöksbröd

behöver vitlöksbröd med spaghetti i en blixt? Prova min Super enkel genväg vitlöksbröd recept!Steg 1: Steg ett: samla dina ingredienser Värm ugnen till 350 grader. Samla dina ingredienser. För detta recept behöver du:Tjocka skivor (Texas Toast) köpta...

Super enkel gummisnodd penna pistol

Gummiband penna pistolen är mycket enkel och tar ca 2 minuter för att göra!Låt oss komma igång!De material du behöver är:1 billig kulspetspenna2 gummibandSteg 1: Ta pennan isärTa bort den gemensamma jordbrukspolitiken, patron, ändlock och plast bit s...

Super enkel 30 andra papper plånbok

jag gjorde denna plånbok på en lång bil rida in i new york för flera år sedan. Super super enkel.Steg 1: material PapperHäftar / tejp30 sekunder av din tidDet är detSteg 2: I hälften Bara Vik in hälftenSteg 3: 1/4 väg upp Vik ihop den nedre delen hal...

Super enkel Naan

Curry är gott. Du vet att ris är gott med din huvudrätt, men vad händer om du är trött på ris?Ta en anteckning från Indien och göra några super enkel Naan. Naan är en yoghurt bröd som är mjuk och lite söt.Inte bara är det enkelt men det är billigt. V...

Super enkel kort knep

Hej alla jag kommer att visa dig hur man gör en super enkel kort trickNjut avSteg 1: Samla ditt material Du behöverEn kortlekSteg 2: Shuffle Nu ta ut alla fyra ess och lägg dem åt sidanBlanda resten av kortenSteg 3: knep Göra fyra högar av kort nu sä...