Spisu treści:

Skrzynka czujnika temperatury DS18B20: 5 kroków
Skrzynka czujnika temperatury DS18B20: 5 kroków

Wideo: Skrzynka czujnika temperatury DS18B20: 5 kroków

Wideo: Skrzynka czujnika temperatury DS18B20: 5 kroków
Wideo: Kurs Arduino odc 22 1-Wire i Czujnik temperatury DS18B20 2024, Listopad
Anonim
Skrzynka czujnika temperatury DS18B20
Skrzynka czujnika temperatury DS18B20

Proste urządzenie z czujnikiem temperatury oparte na DS18B20 z pudełkiem do druku 3D typu open source i prototypową płytką drukowaną.

Pudełko i prototypowa płytka drukowana są opcjonalne, potrzebny jest tylko jeden MCU oparty na ESP8266 i jeden czujnik temperatury DS18B20. Proponuję Wam WEMOS D1 mini, ale ten przykład działa również z ESP-01.

Ten przykład wyjaśnia, jak napisać i przesłać program Arduino do MCU ESP8266, więc pamiętaj o tej umiejętności, zanim zaczniesz mnie śledzić.:)

Kieszonkowe dzieci

Musi mieć:- ESP8266 MCU- DS18B20- jeden rezystor 4,7 kOhm- jakiś przewód

Opcjonalnie: - WEMOS D1 mini jako MCU - prototypowa płytka drukowana do WEMOS D1 mini - pudełko z nadrukiem 3D

Krok 1: Jak podłączyć przewody?

Jak podłączyć przewody?
Jak podłączyć przewody?

To bułka z masłem, sprawdź schematy okablowania na zdjęciu…:)

1, w przypadku samej płyty ESP8266 podłącz RX i TX do urządzenia szeregowego USB, w przypadku dowolnej płyty ze zintegrowanym USB nie jest to konieczne.

2, podłącz GND i VCC do płyty ESP8266 i do czujnika DS18B20.

3, podłącz rezystor między VCC a przewodem danych czujnika DS18B20.

4, podłącz przewód danych czujnika DS18B20 do jednego GPIO MCU (na przykład GPIO 2).

Krok 2: Skonfiguruj ArduinoIDE

Potrzebujesz trzech dodatkowych bibliotek:- OneWire: https://www.arduinolibraries.info/libraries/one-wire- DallasTemperature: https://www.arduinolibraries.info/libraries/dallas-temperature- Integracja IoT Guru:

Krok 3: Zarejestruj się i utwórz urządzenie, węzeł i pole

Chmura IoT Guru to darmowy backend w chmurze, dzięki któremu możesz łatwo zapisywać i wyświetlać pomiary.

Musisz utworzyć urządzenie, węzeł i pole:- Nazwa urządzenia to ESP8266: https://iotguru.cloud/tutorials/devices- Nazwa węzła to DS18B20: https://iotguru.cloud/tutorials/ nodes- Nazwa pola to temperatura:

Aby połączyć się z chmurą, musisz zebrać pięć identyfikatorów: userShortId: krótki identyfikator twojego urządzenia deviceShortId: krótki identyfikator twojego urządzenia deviceKey: tajny klucz twojego urządzenia nodeShortId: krótki identyfikator twojego urządzenia fieldName: nazwa pola

Krok 4: Kod Arduino

Oto przykładowy kod, musisz zamienić identyfikatory na swój identyfikator, zastąpić SSID i hasło do poświadczeń WiFi i sprawdzić numer GPIO przewodu danych DS18B20.

#włączać

#include #include #include const char* ssid = "iotguru.cloud"; const char* hasło = "********"; String userShortId = "l4jLDUDDVKNNzx4wt2UR6Q"; String deviceShortId = "uAjbSzf8LvlrofvwYU8R6g"; String deviceKey = "hacfIjPn6KbBf2md8nxNeg"; IoTGuru iotGuru = IoTGuru(userShortId, deviceShortId, deviceKey); String nodeKey = "tGib1WSRvEGJ98rQYU8R6g"; String fieldName = "temperatura"; #define ONE_WIRE_BUS 2 OneWire oneWire(ONE_WIRE_BUS); DallasCzujniki temperatury(&oneWire); void setup(void) { Serial.begin(115200); opóźnienie(10); WiFi.begin(SSid, hasło); while (WiFi.status() != WL_CONNECTED) { delay(50); Serial.print("."); } Serial.println(""); iotGuru.setCheckDuration(60000); iotGuru.setDebugPrinter(&Serial); czujniki.początek(); } void loop(void) { iotGuru.check(); sensory.żądanieTemperatury(); float zmierzonaWartość = sensory.getTempCByIndex(0); Serial.println("Temperatura pierwszego czujnika: " + String(Wartośćzmierzona) + " °C"); iotGuru.sendHttpValue (klucz węzła, nazwa pola, zmierzona wartość); opóźnienie (30000); }

Krok 5: Uruchom i sprawdź

Uruchom i sprawdź
Uruchom i sprawdź

Jeśli wszystko jest w porządku, pudełko z termometrem wyśle pomiary z czujnika do chmury, a z czasem zobaczysz takie ładne wykresy, jeśli zgromadzi się wystarczająca liczba pomiarów.

Przykłady na żywo: -

Rozszerzony projekt GitHub: -

Zalecana: