
Tartalomjegyzék:
2025 Szerző: John Day | [email protected]. Utoljára módosítva: 2025-01-23 14:47

A hardver tekintetében a projekt a következőket használja:
- Arduino Uno / Mega 2560
- Ethernet pajzs Wiznet W5100 / Ethernet modul Wiznet W5200-W5500
- DS18B20 hőmérséklet -érzékelő a OneWire buszon
- SRD-5VDC-SL-C relé kazánkapcsoláshoz
1. lépés: Az Ethernet termosztát leírása

Az Arduino egy praktikus embeeded platform, amely például szobatermosztát építésére használható, amelyet ma bemutatunk. A termosztát a LAN -hálózatból érhető el, amelyben található, miközben fel van szerelve egy webes interfésszel, amely a termosztát összes elemének konfigurálására szolgál. A webes felület közvetlenül az Arduino -n fut webszerver módban. A webszerver több független HTML -oldal futtatását teszi lehetővé, amelyek informatívak vagy akár funkcionálisak is lehetnek. A webszerver a 80 -as porton fut -
A projektben használt SRD-5VDC-SL-C elektromágneses relé lehetővé teszi a 10A-ig történő kapcsolást 230V-on-2300W teljesítményen. Egyenáramú áramkör (terhelés) kapcsolása esetén lehetőség van 300W (10A 30V DC) kapcsolásra. Alternatív megoldásként az OMRON G3MB-202P SSR relé teljes mértékben kompatibilis a kapcsolási rajzzal, amely csak nem induktív terhelésekre és kizárólag váltakozó áramkörökre alkalmas. Maximális kapcsolási teljesítmény 460W (230V, 2A). Az Arduino fogyasztása Ethernet-pajzzsal és más perifériákkal 100-120 mA, nyitott relével. Zárt állapotban 200mA alatt 5V tápellátásnál.
2. lépés: Webes felület

A termosztát webes kezelőfelülete lehetővé teszi:
- Tekintse meg a valós idejű hőmérsékletet a DS18B20 érzékelőből
- Tekintse meg a valós idejű relé állapotát a dinamikus kimeneti változással az oldalon
- Módosítsa a célhőmérsékletet (referencia) 5 és 50 ° C között 0,25 ° C lépéssel
- Módosítsa a hiszterézist 0 és 10 ° C között 0,25 ° C lépéssel
A webes felületet úgy tervezték, hogy nagyobb és kisebb képernyőket is befogadjon. Érzékeny, támogatja a szélesvásznú nagyfelbontású képernyőket, de a mobileszközöket is. Az interfész a Bootstrap keretrendszer importált CSS-stílusait használja egy külső CDN-kiszolgálóról, amely betölti az ügyféloldali eszközt az Arduino-n futó oldal megnyitásakor. Mivel az Arduino Uno memóriakorlátozott, csak néhány kB méretű oldalakat tud futtatni. A CSS stílusok külső szerverről történő importálásával csökken az Arduino teljesítménye és memóriaterhelése. A szoftver megvalósítása (Arduine Uno esetén) a flash memória 70% -át (32 kB - 4 kB Bootloader) és 44% RAM memóriát (2 kB) használ.
A weboldal statikus részei (HTML dokumentumfejléc és lábléc, Bootstrap CSS linkelés, metacímkék, HTTP válaszfejléc, tartalomtípus, űrlap és egyebek) közvetlenül az Arduino flash memóriájában tárolódnak, ami jelentősen csökkentheti a felhasználó által felhasznált RAM mennyiségét -generált tartalom. A webszerver így stabilabb, és egyszerre képes kezelni a hálózat több eszközének összeköttetését.
Annak érdekében, hogy a beállított értékek áramkimaradás után is megmaradjanak, ezeket az Arduino EEPROM memóriájában tárolja. A referenciahőmérséklet a 10 eltoláshoz, a hiszterézis a 100 eltoláshoz. Mindegyik érték maximum 5B -t foglal el az EEPROM memóriában. Az EEPROM átírási korlátja 100 000 átirat. Az adatok felülírása csak a HTML űrlap elküldésekor történik. Abban az esetben, ha a készülék az első indításkor nem tárolt semmit az említett EEPROM -eltolásokon, az automatikus írás az alapértelmezett értékekkel történik - hivatkozás: 20,25, hiszterézis 0,25 ° C
A Refresh metacímke 10 másodpercenként frissíti a teljes Arduino oldalt. Ekkorra be kell írni a termosztát változását, különben a bemeneti ablakok visszaállnak az oldal frissítésekor. Mivel az Ethernet könyvtár nem tartalmazza az aszinkron webszerver használatát, a teljes oldalt újra kell írni. A főként változó dinamikus adatok a kimenet aktuális értéke - Be / Ki.
3. lépés: Hálózati szerveren futó HTML -oldalak, vázlatok, forráskód

Az Arduino -n futó HTML -oldalak:
- / - gyökéroldal, amely tartalmazza az űrlapot, az aktuális logikai kimeneti listát a reléhez, a hőmérsékletet
- /action.html - feldolgozza az értékeket az űrlapról, beírja az EEPROM memóriába, visszairányítja a felhasználót a gyökéroldalra
- / get_data/ - adatokat továbbít az aktuális hőmérsékletről, referenciahőmérsékletről és hiszterézisről harmadik félnek (számítógép, mikrovezérlő, más kliens …) JSON formátumban
Ennek a termosztátnak van egy kiterjesztett változata is, amely a következőket tartalmazza:
- Kézi üzemmód relékhez (korlátlan ideig, kemény BE / KI)
- Watchdog időzítő
- További érzékelők, például: SHT21, SHT31, DHT22, BME280, BMP280 és mások
- Hűtési mód
- Vezérlés és konfigurálás RS232 / UART -on keresztül, Ethernet -től függetlenül
- PID hőmérséklet -szabályozás termosztáthoz
- ESP8266, ESP32 platformok használata termosztáthoz
A projekt program megvalósítása megtalálható a következő címen: https://github.com/martinius96/termostat-ethernet/ Az implementáció az Ethernet pajzshoz rendelt statikus/dinamikus IPv4 cím programjait tartalmazza.
A termosztát csak beltéri hőmérsékleten használható! (0 ° C felett), amelyhez a rendszer logikája alkalmazkodik. Lehetőség van egy meglévő szobatermosztát termosztáttal történő cseréjére, a hűtőszekrényben lévő termosztát ideiglenes cseréjére, a terráriumban állandó hőmérséklet fenntartására és hasonlókra.
Ajánlott:
A Raspberry Pi 4 beállítása laptopon/számítógépen keresztül Ethernet-kábellel (nincs monitor, nincs Wi-Fi): 8 lépés

A Raspberry Pi 4 beállítása laptopon/pc-n keresztül Ethernet-kábellel (nincs monitor, nincs Wi-Fi): Ebben a beállításban a Raspberry Pi 4 Model-B 1 Gb RAM-mal fogunk dolgozni. A Raspberry-Pi egy fedélzeti számítógép, amelyet oktatási célokra és barkácsprojektekhez használnak, megfizethető áron, 5 V 3A tápegységet igényel
Hogyan készítsünk Ethernet kábelt: 5 lépés

Hogyan készítsünk Ethernet kábelt: Hello! Ma megtanuljuk, hogyan készítsük el saját ipari szabványú Ethernet-kábelt! Ami pénzt takaríthat meg, amikor kábelekre van szükség! Miért vagyok képesített arra, hogy tanítsalak? Nos, informatikus vagyok, az elmúlt 2 évet eltöltöttem
DIY 10/100M Ethernet PoE injektor: 6 lépés

DIY 10/100M Ethernet PoE befecskendező: Itt elkészítünk egy egyszerű PoE inektorot, amely alkalmas 10/100M ethernethez, és közvetlenül akkumulátorokkal is táplálható
Páratartalom leolvasása Ethernet érzékelővel: 3 lépés

Páratartalom leolvasása Ethernet érzékelővel: A projekt célja az volt, hogy az ethernet hálózaton keresztül le lehessen olvasni a páratartalom és a hőmérséklet leolvasását, hogy az eredményeket fel lehessen használni az otthoni automatizáláshoz (Home Assistant stb.). A T9602 érzékelő a legjobb alaktényezővel rendelkezik, nagyszerű teljesítmény az ar
Raspberry Pi Ethernet - Wifi Bridge: 7 lépés

Raspberry Pi Ethernet a Wifi Bridge -hez: Van egy teszthálózatom különböző Raspberry Pie -kből, eszközökből, és más számítógépekből és hálózati berendezésekből, mindegyiket egy Ubiquity tűzfal/útválasztó kezeli, és szeretném, ha csatlakoztatva lenne az internethez, hogy frissítések, szoftverek stb. lekérése Unfortuna