Innehållsförteckning:

DS18B20 Temperatursensorbox: 5 steg
DS18B20 Temperatursensorbox: 5 steg

Video: DS18B20 Temperatursensorbox: 5 steg

Video: DS18B20 Temperatursensorbox: 5 steg
Video: LDmicro 14: ЖК-дисплей I2C и часы реального времени DS3231 (программирование лестничной схемы ПЛК микроконтроллера с помощью LDmicro) 2024, November
Anonim
DS18B20 Temperatursensorbox
DS18B20 Temperatursensorbox

Enkel DS18B20 -baserad temperaturgivare med öppen källkod, 3D -utskrivbar låda och prototyp PCB.

Lådan och prototypen PCB är valfri, endast en ESP8266 -baserad MCU behövs och en DS18B20 temperatursensor. Jag föreslår en WEMOS D1 mini, men det här exemplet fungerar också med en ESP-01.

Detta exempel förklarar hur man skriver och laddar upp ett Arduino -program till ESP8266 MCU, så var medveten om denna färdighet innan du följer mig.:)

Tillbehör

Måste ha:- ESP8266 MCU- DS18B20- ett 4,7 kOhm motstånd- någon tråd

Alternativt ha:- WEMOS D1 mini som MCU- prototyp PCB för WEMOS D1 mini- 3D-tryckt låda

Steg 1: Hur ansluter jag trådarna?

Hur ansluter man ledningarna?
Hur ansluter man ledningarna?

Det är lätt som en cirkel, kolla kopplingsscheman på bilden …:)

1, Om det bara finns ett ESP8266-kort, ansluter du RX och TX till din USB-seriella enhet, om det är något kort med integrerat USB är detta inte nödvändigt.

2, Anslut GND och VCC till ESP8266 -kortet och till DS18B20 -sensorn.

3, Anslut motståndet mellan VCC och datakabeln till DS18B20 -sensorn.

4, Anslut datakabeln till DS18B20 -sensorn till en GPIO på MCU (till exempel GPIO 2).

Steg 2: Konfigurera ArduinoIDE

Du behöver ytterligare tre bibliotek:- OneWire: https://www.arduinolibraries.info/libraries/one-wire- DallasTemperature: https://www.arduinolibraries.info/libraries/dallas-temperature- The IoT Guru Integration:

Steg 3: Registrera dig och skapa en enhet, en nod och ett fält

IoT Guru -molnet är ett gratis molnbackend, du kan använda det för att spara och visa mätningar väldigt enkelt.

Du måste skapa en enhet, en nod och ett fält:- Enhetens namn är ESP8266: https://iotguru.cloud/tutorials/devices- Nodens namn är DS18B20: https://iotguru.cloud/tutorials/ noder- Fältets namn är temperatur:

För att ansluta till molnet måste du samla fem identifierare:- userShortId: den korta identifieraren för dig- deviceShortId: den korta identifieraren för din enhet- deviceKey: din enhets hemliga nyckel- nodeShortId: den korta identifieraren för din enhet- fieldName: fältets namn

Steg 4: Arduino -kod

Här är exempelkoden, du måste ersätta identifierarna till din identifierare, ersätta SSID och lösenordet till dina WiFi -uppgifter och kontrollera GPIO -numret på datakabeln DS18B20.

#omfatta

#include #include #include const char* ssid = "iotguru.cloud"; const char*lösenord = "********"; String userShortId = "l4jLDUDDVKNNzx4wt2UR6Q"; String deviceShortId = "uAjbSzf8LvlrofvwYU8R6g"; String deviceKey = "hacfIjPn6KbBf2md8nxNeg"; IoTGuru iotGuru = IoTGuru (userShortId, deviceShortId, deviceKey); String nodeKey = "tGib1WSRvEGJ98rQYU8R6g"; String fieldName = "temperatur"; #define ONE_WIRE_BUS 2 OneWire oneWire (ONE_WIRE_BUS); DallasTemperatursensorer (& oneWire); void setup (void) {Serial.begin (115200); fördröjning (10); WiFi.begin (ssid, lösenord); medan (WiFi.status ()! = WL_CONNECTED) {fördröjning (50); Serial.print ("."); } Serial.println (""); iotGuru.setCheckDuration (60000); iotGuru.setDebugPrinter (& Serial); sensorer.start (); } void loop (void) {iotGuru.check (); sensors.requestTemperatures (); float MeasuredValue = sensors.getTempCByIndex (0); Serial.println ("Den första sensortemperaturen:" + Sträng (mätt värde) + "° C"); iotGuru.sendHttpValue (nodeKey, fieldName, measureValue); fördröjning (30000); }

Steg 5: Kör och kontrollera

Kör och kontrollera
Kör och kontrollera

Om allt är bra skickar din termometerbox sensormätningarna till molnet och du kommer att se så fina grafer över tiden om tillräckligt många mätningar har ackumulerats.

Levande exempel: - https://iotguru.cloud/field/srcPlk78rcpgCgCgKWcR6g/temperature-

Utökat GitHub-projekt:-

Rekommenderad: