INHOUDSOPGAWE:

DS18B20 Temperatuursensor: 5 stappe
DS18B20 Temperatuursensor: 5 stappe

Video: DS18B20 Temperatuursensor: 5 stappe

Video: DS18B20 Temperatuursensor: 5 stappe
Video: DS18B20 Temperature Sensor Tutorial 2024, November
Anonim
DS18B20 temperatuur sensor boks
DS18B20 temperatuur sensor boks

Eenvoudige temperatuur sensor sensor op DS18B20 met 'n open source 3D drukbare boks en prototipe PCB.

Die boks en die prototipe PCB is opsioneel, slegs een ESP8266 -gebaseerde MCU is nodig en een DS18B20 -temperatuursensor. Ek stel u 'n WEMOS D1 mini voor, maar hierdie voorbeeld werk ook met 'n ESP-01.

Hierdie voorbeeld verduidelik wel hoe u 'n Arduino -program kan skryf en oplaai na die ESP8266 MCU, dus wees bewus van hierdie vaardigheid voordat u my volg.:)

Voorrade

Moet beskik oor:- ESP8266 MCU- DS18B20- een 4,7 kOhm weerstand- sommige draad

Het opsioneel:- WEMOS D1 mini as MCU- prototipe PCB vir WEMOS D1 mini- 3D gedrukte boks

Stap 1: Hoe om die drade aan te sluit?

Hoe om die drade aan te sluit?
Hoe om die drade aan te sluit?

Dit is maklik, kyk na die bedradingskemas op die prentjie …:)

1, in die geval van 'n blote ESP8266-kaart, koppel die RX en TX aan u USB-seriële toestel; in geval van 'n bord met geïntegreerde USB is dit nie nodig nie.

2, Verbind die GND en VCC met die ESP8266 -bord en die DS18B20 -sensor.

3, verbind die weerstand tussen die VCC en die datakabel van die DS18B20 -sensor.

4, Verbind die datakabel van die DS18B20 -sensor met een GPIO van die MCU (byvoorbeeld GPIO 2).

Stap 2: Stel die ArduinoIDE op

U benodig drie ekstra biblioteke:- OneWire: https://www.arduinolibraries.info/libraries/one-wire- DallasTemperature: https://www.arduinolibraries.info/libraries/dallas-temperature- The IoT Guru Integration:

Stap 3: Registreer en skep 'n toestel, 'n knoop en 'n veld

Die IoT Guru -wolk is 'n gratis wolk -agterkant, u kan dit maklik gebruik om metings op te slaan en te wys.

U moet 'n toestel, 'n knoop en 'n veld skep:- Naam van die toestel is ESP8266: https://iotguru.cloud/tutorials/devices- Naam van die knoop is DS18B20: https://iotguru.cloud/tutorials/ nodusse- Naam van die veld is temperatuur:

Om met die wolk in verbinding te tree, moet u vyf identifiseerders versamel:- userShortId: die kort identifiseerder van u- deviceShortId: die kort identifiseerder van u toestel- deviceSleutel: die geheime sleutel van u toestel- nodeShortId: die kort identifiseerder van u toestel- veldnaam: die naam van die veld

Stap 4: Arduino -kode

Hier is die voorbeeldkode; u moet die identifiseerders in u identifiseerder vervang, die SSID en die wagwoord vir u WiFi -geloofsbriewe vervang en die GPIO -nommer van die DS18B20 -datadraad nagaan.

#insluit

#include #include #include const char* ssid = "iotguru.cloud"; const char*wagwoord = "********"; String userShortId = "l4jLDUDDVKNNzx4wt2UR6Q"; String deviceShortId = "uAjbSzf8LvlrofvwYU8R6g"; String deviceKey = "hacfIjPn6KbBf2md8nxNeg"; IoTGuru iotGuru = IoTGuru (userShortId, deviceShortId, deviceKey); String nodeKey = "tGib1WSRvEGJ98rQYU8R6g"; String fieldName = "temperatuur"; #definieer ONE_WIRE_BUS 2 OneWire oneWire (ONE_WIRE_BUS); DallasTemperatuur sensors (& oneWire); leemte opstel (leeg) {Serial.begin (115200); vertraging (10); WiFi.begin (ssid, wagwoord); terwyl (WiFi.status ()! = WL_CONNECTED) {vertraging (50); Serial.print ("."); } Serial.println (""); iotGuru.setCheckDuration (60000); iotGuru.setDebugPrinter (en reeks); sensors.begin (); } leemte -lus (leegte) {iotGuru.check (); sensors.versoekTemperature (); float measureValue = sensors.getTempCByIndex (0); Serial.println ("Die eerste sensortemperatuur:" + String (measureValue) + "° C"); iotGuru.sendHttpValue (nodeKey, fieldName, measureValue); vertraging (30000); }

Stap 5: Begin en kontroleer

Hardloop en kontroleer
Hardloop en kontroleer

As alles reg is, stuur u termometerkas die sensormetings na die wolk, en u sal mettertyd sulke goeie grafieke sien as daar genoeg metings is.

Regstreekse voorbeelde: -

Uitgebreide GitHub-projek:-

Aanbeveel: