Spisu treści:

Serwer WWW ESP8266 do monitorowania pogody (bez Arduino): 4 kroki
Serwer WWW ESP8266 do monitorowania pogody (bez Arduino): 4 kroki

Wideo: Serwer WWW ESP8266 do monitorowania pogody (bez Arduino): 4 kroki

Wideo: Serwer WWW ESP8266 do monitorowania pogody (bez Arduino): 4 kroki
Wideo: Погодная станция на ESP8266, MQTT и Epaper дисплее 2024, Listopad
Anonim
Serwer WWW ESP8266 do monitorowania pogody (bez Arduino)
Serwer WWW ESP8266 do monitorowania pogody (bez Arduino)

„Internet rzeczy” (IoT) staje się z dnia na dzień coraz większym tematem rozmów. To koncepcja, która nie tylko może wpłynąć na to, jak żyjemy, ale także na to, jak pracujemy. Od maszyn przemysłowych po urządzenia do noszenia - wykorzystując wbudowane czujniki do zbierania danych i podejmowania działań na tych danych w sieci.

Postanowiliśmy więc zbudować bardzo prosty, ale ciekawy projekt z koncepcją - IoT.

Dzisiaj zbudujemy podstawowy serwer WWW do monitorowania otaczającej nas pogody. Możemy przeglądać wartości wilgotności i temperatury na naszych urządzeniach mobilnych i notebookach. Jak powiedziałem, jest to prosta i podstawowa strona internetowa, która da ci o tym pojęcie. Możesz aktualizować i modyfikować projekt do swoich potrzeb, tak jak możesz zbierać dane i wykorzystywać je w przyszłości, możesz stworzyć automatykę domową, kontrolując swoje urządzenia domowe lub cokolwiek, co możesz sobie wyobrazić. Zawsze pamiętaj - moc wyobraźni czyni nas nieskończonymi (John Muir).

Więc zacznijmy !!

Krok 1: Zbierz swoje narzędzia

Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!
Zbierz swoje narzędzia !!

1 czujnik wilgotności i temperatury SHT25

Czujnik wilgotności i temperatury SHT25 o wysokiej dokładności firmy Sensirion stał się standardem branżowym pod względem kształtu i inteligencji: Wbudowany w lutowany rozpływowo pakiet Dual Flat No Leads (DFN) o wymiarach stopy 3 x 3 mm i wysokości 1,1 mm, zapewnia kalibrację, linearyzowane sygnały czujników w formacie cyfrowym I2C.

1 Adafruit Huzzah ESP8266

Procesor ESP8266 firmy Espressif to mikrokontroler 80 MHz z pełnym front-endem WiFi (zarówno jako klient, jak i punkt dostępowy) oraz stos TCP/IP z obsługą DNS. ESP8266 to niesamowita platforma do tworzenia aplikacji IoT. ESP8266 zapewnia dojrzałą platformę do monitorowania i sterowania aplikacjami przy użyciu języka Arduino Wire Language i Arduino IDE.

1 programator USB ESP8266

Ten adapter hosta ESP8266 został zaprojektowany specjalnie dla wersji Adafruit Huzzah ESP8266, umożliwiając interfejs I²C.

1 kabel połączeniowy I2C

Krok 2: Podłączanie sprzętu…

Podłączanie sprzętu…
Podłączanie sprzętu…
Podłączanie sprzętu…
Podłączanie sprzętu…
Podłączanie sprzętu…
Podłączanie sprzętu…

Weź ESP8266 i delikatnie wepchnij go na programator USB. Następnie podłącz jeden koniec kabla I2C do czujnika SHT25, a drugi koniec do programatora USB. I gotowe. Tak, dobrze to przeczytałeś. Bez bólów głowy, brzmi fajnie. Dobrze !!

Za pomocą programatora USB ESP8266 bardzo łatwo jest zaprogramować ESP. Wszystko, co musisz zrobić, to podłączyć czujnik do programatora USB i gotowe. Wolimy korzystać z tej gamy produktów, ponieważ znacznie ułatwia ona podłączenie sprzętu. Bez tego programatora USB typu plug and play istnieje duże ryzyko nieprawidłowego połączenia. Złe okablowanie może zabić zarówno Wi-Fi, jak i czujnik.

Bez obaw o przylutowanie pinów ESP do czujnika czy odczytanie schematów pinów i karty katalogowej. Możemy używać i pracować na wielu czujnikach jednocześnie, wystarczy wykonać łańcuch.

Tutaj sprawdzisz przez nich cały asortyment.

Uwaga: Podczas wykonywania połączeń upewnij się, że brązowy przewód kabla połączeniowego jest podłączony do zacisku uziemienia czujnika i to samo dla programatora USB.

Krok 3: Kod

Kod
Kod
Kod
Kod
Kod
Kod
Kod
Kod

Kod ESP8266 dla SHT25 można pobrać z naszego repozytorium github

Przed przejściem do kodu upewnij się, że przeczytałeś instrukcje podane w pliku Readme i zgodnie z nim skonfiguruj swój ESP8266. Konfiguracja ESP zajmie tylko 5 minut.

Teraz pobierz (lub git pull) kod i otwórz go w Arduino IDE.

Skompiluj i prześlij kod i zobacz dane wyjściowe na Serial Monitor.

Uwaga: przed przesłaniem upewnij się, że w kodzie wpisałeś swoją sieć SSID i hasło.

Skopiuj adres IP ESP8266 z monitora szeregowego i wklej go w przeglądarce internetowej.

Zobaczysz serwer WWW z odczytem wilgotności i temperatury. Wyjście czujnika na monitorze szeregowym i serwerze sieciowym pokazano na powyższym obrazku.

Dla Twojej wygody możesz skopiować działający kod ESP dla tego czujnika stąd również:

#włączać

#włączać

#włączać

#włączać

// adres SHT25 I2C to 0x40(64)

#define Addr 0x40

const char* ssid = "Twoja sieć ssid";

const char* password = "twoje hasło"; wilgotność pływaka, cTemp, fTemp;

ESP8266serwer WebServer(80);

void handleroot()

{ unsigned int data[2];

// Rozpocznij transmisję I2C

Wire.beginTransmisja(Addr); // Wyślij komendę pomiaru wilgotności, NO HOLD master Wire.write(0xF5); // Zatrzymaj transmisję I2C Wire.endTransmission(); opóźnienie (500);

// Poproś o 2 bajty danych

Wire.requestFrom(Addr, 2);

// Odczytaj 2 bajty danych

// wilgotność msb, wilgotność lsb if (Wire.available() == 2) { data[0] = Wire.read(); dane[1] = Drut.odczyt();

// Konwertuj dane

wilgotność = (((dane[0] * 256,0 + dane[1]) * 125,0) / 65536.0) - 6;

// Dane wyjściowe do monitora szeregowego

Serial.print("Wilgotność względna:"); Serial.print(wilgotność); Serial.println("%RH"); }

// Rozpocznij transmisję I2C

Wire.beginTransmisja(Addr); // Wyślij polecenie pomiaru temperatury, NO HOLD master Wire.write(0xF3); // Zatrzymaj transmisję I2C Wire.endTransmission(); opóźnienie (500);

// Poproś o 2 bajty danych

Wire.requestFrom(Addr, 2);

// Odczytaj 2 bajty danych

// temp msb, temp lsb if (Wire.available() == 2) { data[0] = Wire.read(); dane[1] = Drut.odczyt();

// Konwertuj dane

cTemp = (((dane[0] * 256,0 + dane[1]) * 175,72 / 65536.0) - 46,85; fTemp = (cTemp * 1,8) + 32;

// Dane wyjściowe do monitora szeregowego

Serial.print("Temperatura w stopniach Celsjusza:"); druk.seryjny(cTemp); Serial.println("C"); Serial.print("Temperatura w stopniach Fahrenheita:"); Serial.print(fTemp); Serial.println(" F"); } // Dane wyjściowe do serwera WWW server.sendContent ("<meta http-equiv='refresh' content='5'""

KONTROLUJ WSZYSTKO

www.controleverything.com

Mini moduł czujnika SHT25 I2C

"); serwer.sendContent ("

Wilgotność względna = " + String(wilgotność) + " %RH"); server.sendContent ("

Temperatura w stopniach Celsjusza = " + String(cTemp) + " C"); server.sendContent ("

Temperatura w stopniach Fahrenheita = " + String(fTemp) + " F"); delay(300); }

pusta konfiguracja()

{ // Zainicjuj komunikację I2C jako MASTER Wire.begin(2, 14); // Zainicjuj komunikację szeregową, ustaw szybkość transmisji = 115200 Serial.begin(115200);

// Połącz z siecią Wi-Fi

WiFi.begin(SSid, hasło);

// Czekaj na połączenie

while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.print("Połączony z"); Serial.println(ssid);

// Uzyskaj adres IP ESP8266

Serial.print("adres IP: "); Serial.println(WiFi.localIP());

// Uruchom serwer

server.on("/", handleroot); serwer.początek(); Serial.println("Serwer HTTP uruchomiony"); }

pusta pętla()

{ serwer.obsługaKlient(); }

Krok 4: Wniosek

Seria czujników wilgotności i temperatury SHT25 przenosi technologię czujników na nowy poziom dzięki niezrównanej wydajności czujnika, szerokiej gamie wariantów i nowym funkcjom. Nadaje się do wielu różnych rynków, takich jak sprzęt AGD, medycyna, IoT, HVAC lub przemysł. Za pomocą ESP8266 możemy zwiększyć jego pojemność na większą długość. Możemy sterować naszymi urządzeniami i monitorować ich wydajność z naszych notebooków i urządzeń mobilnych. Możemy przechowywać i zarządzać danymi online oraz analizować je w dowolnym momencie pod kątem modyfikacji.

Takie pomysły możemy wykorzystać w branży medycznej, chociażby na chwilę powiedzieć, aby sterować wentylacją w sali pacjentów, gdy wilgotność i temperatura wzrastają automatycznie. Personel medyczny może monitorować dane online bez wchodzenia do pokoju.

Mam nadzieję, że podoba ci się ten wysiłek i pomyśl o większej liczbie możliwości. Jak powiedziałem powyżej, wyobraźnia jest kluczem.:)

Aby uzyskać więcej informacji o SHT25 i ESP8266, sprawdź poniższe linki:

  • Karta katalogowa czujnika wilgotności i temperatury SHT25
  • Arkusz danych ESP8266

Aby uzyskać więcej informacji, odwiedź ControlEverything.

Zalecana: