Мазмуну:

DS18B20 Температура сенсор кутусу: 5 кадам
DS18B20 Температура сенсор кутусу: 5 кадам

Video: DS18B20 Температура сенсор кутусу: 5 кадам

Video: DS18B20 Температура сенсор кутусу: 5 кадам
Video: Arduino Nem ve Sıcaklık ölçer 2024, Ноябрь
Anonim
DS18B20 температура сенсор кутусу
DS18B20 температура сенсор кутусу

Ачык булак 3D принтер кутусу жана ПХБ прототипи бар жөнөкөй DS18B20 негизделген температура сенсору.

Коробка жана PCB прототиби милдеттүү эмес, бир гана ESP8266 негизделген MCU жана бир DS18B20 температура сенсору керек. Мен сизге WEMOS D1 мини сунуштайм, бирок бул мисал ESP-01 менен иштейт.

Бул мисал Arduino программасын ESP8266 MCUга кантип жазуу жана жүктөө керектигин түшүндүрөт, андыктан мени ээрчүүдөн мурун бул чеберчиликти билип алыңыз.:)

Жабдуулар

Болушу керек:- ESP8266 MCU- DS18B20- бир 4.7 кОмдук резистор- кээ бир зым

Кошумча түрдө:- MCU катары WEMOS D1 мини- WEMOS D1 мини-3D басылган кутуча үчүн PCB прототипи

1 -кадам: Зымдарды кантип туташтыруу керек?

Зымдарды кантип туташтыруу керек?
Зымдарды кантип туташтыруу керек?

Пирог сыяктуу оңой, сүрөттөгү зымдардын схемаларын текшериңиз …:)

1, жылаңач ESP8266 тактайы болсо, RX жана TXти USB сериялык түзмөгүңүзгө туташтырыңыз, эгерде интеграцияланган USB менен болгон такта болсо, бул кереги жок.

2, GND жана VCCди ESP8266 тактасына жана DS18B20 сенсоруна туташтырыңыз.

3, VCC менен DS18B20 сенсорунун маалымат зымынын ортосундагы резисторду туташтырыңыз.

4, DS18B20 сенсорунун маалымат зымын MCUнун бир GPIOсына туташтырыңыз (мисалы GPIO 2).

2 -кадам: ArduinoIDEди конфигурациялаңыз

Сизге үч кошумча китепкана керек:- OneWire: https://www.arduinolibraries.info/libraries/one-wire- DallasTemperature: https://www.arduinolibraries.info/libraries/dallas-temperature- IoT Guru интеграциясы:

3 -кадам: Катталуу жана түзмөк, түйүн жана талаа түзүү

IoT Guru булуту бекер булуттун арткы бөлүгү, аны сактап калуу жана чындап эле оңой өлчөө үчүн колдонсоңуз болот.

Сиз түзмөк, түйүн жана талаа түзүшүңүз керек:- Түзмөктүн аталышы ESP8266: https://iotguru.cloud/tutorials/devices- Түйүндүн аты DS18B20: https://iotguru.cloud/tutorials/ түйүндөр- Талаанын аталышы температура:

Булут менен байланышуу үчүн, беш идентификаторду чогултуу керек:- userShortId: кыска идентификаторуңуз- deviceShortId: сиздин түзмөгүңүздүн кыска идентификатору- түзмөгүңүздүн ачкычы: сиздин түзмөгүңүздүн сыры: талаанын аты

4 -кадам: Arduino коду

Бул жерде мисал коду, идентификаторлорду идентификаторуңузга алмаштырууңуз керек, SSID менен паролду WiFi ишеним грамотаңызга алмаштырыңыз жана DS18B20 маалымат зымынын GPIO номерин текшериңиз.

#кошуу

#include #include #include const char* ssid = "iotguru.cloud"; const char*password = "********"; Сап userShortId = "l4jLDUDDVKNNzx4wt2UR6Q"; String deviceShortId = "uAjbSzf8LvlrofvwYU8R6g"; String deviceKey = "hacfIjPn6KbBf2md8nxNeg"; IoTGuru iotGuru = IoTGuru (userShortId, deviceShortId, deviceKey); String nodeKey = "tGib1WSRvEGJ98rQYU8R6g"; String fieldName = "температура"; #аныктоо ONE_WIRE_BUS 2 OneWire oneWire (ONE_WIRE_BUS); DallasTemperature сенсорлору (& oneWire); void setup (void) {Serial.begin (115200); кечигүү (10); WiFi.begin (ssid, сырсөз); while (WiFi.status ()! = WL_CONNECTED) {кечиктирүү (50); Serial.print ("."); } Serial.println (""); iotGuru.setCheckDuration (60000); iotGuru.setDebugPrinter (& Сериялык); сенсорлор.begin (); } void loop (void) {iotGuru.check (); sensors.requestTemperatures (); float ölçууValue = sensors.getTempCByIndex (0); Serial.println ("Биринчи сенсор температурасы:" + Сап (өлчөнгөнВалюта) + "° C"); iotGuru.sendHttpValue (nodeKey, fieldName, ченелгенValue); кечигүү (30000); }

5 -кадам: Run жана Текшерүү

Run and Check
Run and Check

Эгерде баары жакшы болсо, термометр кутуңуз сенсордун өлчөөлөрүн булутка жөнөтөт жана жетиштүү өлчөөлөр топтолгон болсо, убакыттын өтүшү менен ушундай сонун графаларды көрөсүз.

Түз мисалдар: -

Кеңейтилген GitHub долбоору:-

Сунушталууда: