Sommario:

Scatola del sensore di temperatura DS18B20: 5 passaggi
Scatola del sensore di temperatura DS18B20: 5 passaggi

Video: Scatola del sensore di temperatura DS18B20: 5 passaggi

Video: Scatola del sensore di temperatura DS18B20: 5 passaggi
Video: How To Use DS18B20 Temperature Sensor | Use DS18B20 Water Proof Temperature Sensor 2024, Novembre
Anonim
Scatola sensore di temperatura DS18B20
Scatola sensore di temperatura DS18B20

Semplice dispositivo con sensore di temperatura basato su DS18B20 con scatola stampabile 3D open source e PCB prototipo.

La scatola e il prototipo PCB sono opzionali, è necessario solo un MCU basato su ESP8266 e un sensore di temperatura DS18B20. Ti suggerisco un WEMOS D1 mini, ma questo esempio funziona anche con un ESP-01.

Questo esempio spiega come scrivere e caricare un programma Arduino sull'MCU ESP8266, quindi tieni presente questa abilità prima di seguirmi.:)

Forniture

Deve avere:- ESP8266 MCU- DS18B20- un resistore da 4,7 kOhm- qualche filo

Facoltativamente: - WEMOS D1 mini come MCU - PCB prototipo per WEMOS D1 mini - scatola stampata in 3D

Passaggio 1: come collegare i cavi?

Come collegare i fili?
Come collegare i fili?

È facile come una torta, controlla gli schemi di cablaggio sull'immagine …:)

1, in caso di scheda ESP8266 nuda, collegare RX e TX al dispositivo seriale USB, in caso di scheda con USB integrato questo non è necessario.

2, collegare GND e VCC alla scheda ESP8266 e al sensore DS18B20.

3, collegare il resistore tra il VCC e il cavo dati del sensore DS18B20.

4, collegare il cavo dati del sensore DS18B20 a un GPIO dell'MCU (ad esempio GPIO 2).

Passaggio 2: configura ArduinoIDE

Hai bisogno di tre librerie aggiuntive:- OneWire: https://www.arduinolibraries.info/libraries/one-wire- DallasTemperature: https://www.arduinolibraries.info/libraries/dallas-temperature- The IoT Guru Integration:

Passaggio 3: registrarsi e creare un dispositivo, un nodo e un campo

Il cloud IoT Guru è un backend cloud gratuito, puoi usarlo per salvare e mostrare le misurazioni in modo davvero semplice.

Devi creare un dispositivo, un nodo e un campo:- Il nome del dispositivo è ESP8266: https://iotguru.cloud/tutorials/devices- Il nome del nodo è DS18B20: https://iotguru.cloud/tutorials/ nodi- Il nome del campo è temperatura:

Per connetterti al cloud, devi raccogliere cinque identificatori:- userShortId: l'identificatore breve del tuo dispositivo- deviceShortId: l'identificatore breve del tuo dispositivo- deviceKey: la chiave segreta del tuo dispositivo- nodeShortId: l'identificatore breve del tuo dispositivo- fieldName: il nome del campo

Passaggio 4: codice Arduino

Ecco il codice di esempio, devi sostituire gli identificatori al tuo identificatore, sostituire l'SSID e la password alle tue credenziali WiFi e controllare il numero GPIO del cavo dati DS18B20.

#includere

#include #include #include const char* ssid = "iotguru.cloud"; const char* password = "********"; 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); DallasSensori di temperatura(&oneWire); void setup(void) { Serial.begin(115200); ritardo(10); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { ritardo(50); Serial.print("."); } Serial.println(""); iotGuru.setCheckDuration(60000); iotGuru.setDebugPrinter(&Serial); sensori.begin(); } void loop(void) { iotGuru.check(); sensori.requestTemperatures(); float misuratoValore = sensori.getTempCByIndex(0); Serial.println("La temperatura del primo sensore: " + String(measuredValue) + " °C"); iotGuru.sendHttpValue(nodeKey, fieldName, misuratoValue); ritardo (30000); }

Passaggio 5: esegui e controlla

Esegui e controlla
Esegui e controlla

Se tutto va bene, la tua scatola del termometro invierà le misurazioni del sensore al cloud e vedrai grafici così belli nel tempo se si sono accumulate abbastanza misurazioni.

Esempi live: -

Progetto GitHub esteso:-

Consigliato: