Water level QDY30B
Vandens lygio matuoklis paremtas QDY30B sensoriumi. Pagrindinė sprendžiama problema: hidroforo išjungimas pasiekus kritinį vandens lygio tašką, t.y kai hidroforo įėimo vamzdis nepasiekia vandens išjungti jam maitinimą. Taip pat papildomai integracija į MQTT/Home Assistant vandens lygio matavimams centimetrais/metrais.
Reikalingos medžiagos
- Submersible Liquid Level Sensor Water Tank Pressure Transmitter 4-20mA 0-10V RS485 Water River Level Transmitter šiame aprašyme naudojamas 4-20mA output, 5M range 10m cable
- Hi-Link 30W 24 AC DC Single Output Power Supply Module HLK-30M24C
- ESP8266 WIFI Wireless Relay Module ESP-12F AC 220V DC 5V 12V Power Supply ESP 12F Development Board Remote Control Smart Home modulis su ESP-12F
- Metal Film Resistor 2W 47R tipas 2W 47R
- Ceramic Capacitor 104 0.1uF 100NF 50V tipas 104
- Bet kokia elektros paskirstymo hermetinė IP66 dežutė iš senukų arba ermitažo (kad tilptų viskas sugrūsti).
Kaip atrodo medžiagos
Sujungimo schema
From Sensor (Blue wire, 4–20 mA −)
│
│
├───────> To ESP8266 ADC0 (A0) ← sense wire
│
│
[===] ← 47 Ω resistor (shunt)
[ ]
│
│
GND (shared with 24 V PSU and ESP8266)
Sujungimas:
- Prijunkite mėlyną sensoriaus laidą prie vienos 50R rezistoriaus kojos.
- Kitą rezistoriaus koją prijunkite prie žemės (GND).
- Prilituokite kondensatorių tiesiai per abi rezistoriaus kojas (lygiagrečiai).
- Nuo mėlyno laido pusės (kur prijungtas prie rezistoriaus) išveskite trumpą laidą į ESP8266 ADC0 (A0) įėjimą.
- Įsitikinkite, kad maitinimo šaltinis (PSU) ir ESP8266 turi bendrą žemę (GND).
Kaip atrodo sujungimas
ESPHome Firmware kodas
ccc
Flashinimas
Pirmiausia reiktų susidiegti esphome python3 modulį:
pip3 install esphome
Flashinti reikia per relės UART interfeisą, micro USB interfeisas tam reikalui neskirtas. Pajungiame USB Serial TTL adapterį, sujungiame RX/TX/GND/5V ir galime flashinti, pirmam kartui taip pat būtina užtrumpinti GND + 101 prieš įjungiant įrenginį (randasi tame pačiame UART layoute).
Kompiluojame ir flashiname:
python3 -m esphome compile water_level.yaml python3 -m esphome upload water_level.yaml
Vėliau galime flashinti over the air (per tinklą) metodu:
python3 -m esphome upload --device DEVICE_IP water_level.yaml