Spisu treści:
Wideo: Skrzynka czujnika temperatury DS18B20: 5 kroków
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
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?
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ź
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: -