Loyiha · Vazn · LPG
Qancha gaz qolganini aniq bilish
Gaz balloni ogohlantirmaydi — ovqat oʻrtasida shunchaki tugaydi. Ammo gazning vazni bor, vaznni esa oʻlchash oson: ballon ostidagi tenzodatchik va HX711 ESP32’ga sof gaz vaznini kg va qolgan %da koʻrsatishga imkon beradi, keyin tugashidan oldin qizil LED yoqib, zummer beradi. Manometrsiz va taxminsiz — «ovqatlarda» sanaydigan tarozi.
Gʻoya — umumiy vazn minus boʻsh ballon
Tenzodatchik unga qoʻyilgan umumiy vaznni oʻqiydi. «3 kg» ballon boʻsh holda
taxminan 5 kg (tara), toʻla holda 8 kg — demak gaz bu
umumiy − tara, foiz esa toʻla 3 kg zaryadga nisbatan. Uch qator matematika xom
koʻrsatkichni yagona kerakli raqamga aylantiradi: yana qancha pishirish mumkin.
// LPG "3 kg" bottle: ~5 kg empty (tare), 3 kg of gas full -> 8 kg total full.
const float TARE = 5.0, NET_FULL = 3.0;
total = scale.get_units(); // kg on the load cell (real: HX711)
net = total - TARE; // the gas alone
if (net < 0) net = 0;
pct = net / NET_FULL * 100.0f; // % of a full charge
int s = pct < 8 ? 2 : (pct < 20 ? 1 : 0); // empty <8 %, low <20 %
if (s && state == 0 && evlog) evlog->print("Gas low - order a refill");
state = s;
ledOk = s == 0; ledLow = s >= 1; buzz = s == 2; Ulanish — HX711’da atigi ikki data pin
HX711 — tenzodatchiklar uchun 24-bit ADC: datchikning toʻrt simi uning E+/E−/A+/A− maydonlariga boradi, ESP bilan esa DT (maʼlumot) va SCK (klok) juftligi orqali gaplashadi. Quvvat 3.3 yoki 5 V, umumiy yer:
Tarani bir marta kalibrlang
Aniqlik ikki konstantada: kalibrovka koeffitsienti (maʼlum vaznni qoʻying, xom hisobni kg ga boʻling) va tara (aynan sizning boʻsh balloningiz). Bir marta qiling va saqlang:
// One-time tare calibration — do it with the EMPTY bottle on the scale:
#include "HX711.h"
HX711 scale;
scale.begin(DT_PIN, SCK_PIN);
scale.set_scale(CAL_FACTOR); // from a known weight: raw / kg
scale.tare(); // zero it — now get_units() reads kg above empty
// TARE above is then the printed empty-bottle weight; adjust NET_FULL to your bottle. Dashboard va alertlar
Foiz uchun katta bar-shkala, sof va umumiy vazn statlari, Good/Low/EMPTY beyji va klassik yashil/qizil LED + zummer — 20 % dan past ogohlantirish, 8 % dan past boʻsh. Kutubxonadagi namuna (examples/04_Templates/GasCylinder) fake ballonni boʻshatadi, shuning uchun shkala tushishi va alert ishlashi hech qanday tarozisiz koʻrinadi; bitta qatorni real HX711 ga almashtirasiz. MQTT ga publish qilsangiz — Home Assistant avtomatika bilan dozaправка buyuradi. Bu umumiy WeightScale shablonining tor qarindoshi.
Komponentlar roʻyxati
| Qism | Vazifa | ~Narx |
|---|---|---|
| ESP32 (yoki ESP8266) | miya + Wi-Fi + dashboard | $3–5 |
| Tenzodatchik (5–20 kg) + HX711 | tortish | $3–5 |
| Yashil + qizil LED, zummer | lokal status | $1 |
| Tekis platforma/plita | ballon unga qoʻyiladi | — |
Tenzodatchikni toʻla ballon vaznidan yuqori oling (katta ballonga 20 kg). Butun ballon datchikda turishi uchun oddiy platformaga oʻrnating.
Datchik sotib olishdan oldin ballon boʻshashi va alertni fake tarozida koʻring.