![Romtermostat - Arduino + Ethernet: 3 trinn Romtermostat - Arduino + Ethernet: 3 trinn](https://i.howwhatproduce.com/images/002/image-5887-j.webp)
Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
![Romtermostat - Arduino + Ethernet Romtermostat - Arduino + Ethernet](https://i.howwhatproduce.com/images/002/image-5887-1-j.webp)
Når det gjelder maskinvare, bruker prosjektet:
- Arduino Uno / Mega 2560
- Ethernet-skjerm Wiznet W5100 / Ethernet-modul Wiznet W5200-W5500
- DS18B20 temperatursensor på OneWire -bussen
- Relé SRD-5VDC-SL-C brukes til kjeleskift
Trinn 1: Beskrivelse av Ethernet -termostaten
![Beskrivelse av Ethernet -termostaten Beskrivelse av Ethernet -termostaten](https://i.howwhatproduce.com/images/002/image-5887-2-j.webp)
Arduino er en praktisk innebygd plattform som for eksempel kan brukes til å bygge en romtermostat, som vi skal vise i dag. Termostaten er tilgjengelig fra LAN -nettverket den er plassert i, mens den er utstyrt med et webgrensesnitt som brukes til å konfigurere alle elementene i termostaten. Nettgrensesnittet kjører direkte på Arduino i webservermodus. Webserveren tillater kjøring av flere uavhengige HTML -sider, som kan være informative eller til og med funksjonelle. Webserveren kjører på port 80 -
Det elektromagnetiske reléet SRD-5VDC-SL-C, som brukes i prosjektet, tillater bytte opptil 10A ved 230V-effekt 2300W. Ved bytte av en likestrømskrets (belastning) er det mulig å bytte 300W (10A ved 30V DC). Alternativt er OMRON G3MB-202P SSR-reléet fullt kompatibelt for koblingsskjemaet, som bare er egnet for ikke-induktive belastninger og utelukkende for vekselstrømskretser. Maksimal bryteeffekt 460W (230V, 2A). Forbruk av Arduino med Ethernet-skjold og andre eksterne enheter er på nivået 100-120mA med reléet åpent. Ved lukket, under 200mA ved 5V forsyning.
Trinn 2: Webgrensesnitt
![Nettgrensesnitt Nettgrensesnitt](https://i.howwhatproduce.com/images/002/image-5887-3-j.webp)
Nettgrensesnittet for termostaten tillater:
- Se sanntidstemperaturen fra DS18B20-sensoren
- Se sanntids reléstatus med dynamisk utgangsendring på side
- Endre måletemperaturen (referanse) i området 5 til 50 ° C med et trinn på 0,25 ° C
- Endre hysteresen i området 0 til 10 ° C med et trinn på 0,25 ° C
Nettgrensesnittet er designet for å ta imot større og mindre skjermer. Den er lydhør, støtter widescreen-HD-skjermer, men også mobile enheter. Grensesnittet bruker importerte CSS-stiler i Bootstrap-rammeverket fra en ekstern CDN-server, som laster enheten på klientsiden når du åpner en side som kjører på Arduino. Fordi Arduino Uno er begrenset med minne, kan den bare kjøre sider som er få kB store. Ved å importere CSS -stiler fra en ekstern server, vil det redusere ytelsen og minnelasten til Arduino. Programvareimplementeringen (for Arduine Uno) bruker 70% av flashminnet (32kB - 4kB Bootloader) og 44% av RAM -minnet (2kB).
Statiske deler av en webside (topptekst og bunntekst i HTML -dokument, Bootstrap CSS -kobling, metakoder, HTTP -responsoverskrift, innholdstype, skjema og mer) lagres direkte i Arduinos flashminne, noe som kan redusere mengden RAM som brukes for brukeren betydelig -generert innhold. Webserveren er dermed mer stabil og kan håndtere multitilkobling av flere enheter i nettverket samtidig.
For å beholde de angitte verdiene selv etter et strømbrudd, lagres de i EEPROM -minnet til Arduino. Referansetemperatur til offset 10, hysterese til offset 100. Hver av verdiene opptar maksimalt 5B i EEPROM -minnet. EEPROM -transkripsjonsgrensen er på nivået 100 000 transkripsjoner. Data overskrives bare når HTML -skjemaet sendes inn. Hvis enheten ikke har noe lagret på de nevnte EEPROM -forskyvningene ved første oppstart, vil automatisk skriving utføres med standardverdier - referanse: 20.25, hysterese 0.25 ° C
Refresh meta tag oppdaterer hele Arduino -siden hvert 10. sekund. På dette tidspunktet er det nødvendig å skrive endringen for termostaten, ellers blir inngangsvinduene tilbakestilt når siden oppdateres. Fordi Ethernet -biblioteket ikke inkluderer bruk av en asynkron webserver, må hele siden skrives om. De dynamiske dataene som hovedsakelig endrer seg, er gjeldende verdi på utgangen - På / Av.
Trinn 3: HTML -sider som kjøres på webserver, skjemaer, kildekode
![HTML -sider kjører på webserver, skjemaer, kildekode HTML -sider kjører på webserver, skjemaer, kildekode](https://i.howwhatproduce.com/images/002/image-5887-4-j.webp)
HTML -sider som kjører på Arduino:
- / - rotside som inneholder skjemaet, gjeldende logisk utgangsliste for reléet, temperatur
- /action.html - behandler verdier fra skjemaet, skriver dem til EEPROM -minnet, omdirigerer brukeren tilbake til rotsiden
- / get_data/ - distribuerer data om nåværende temperatur, referansetemperatur og hysterese til en tredjepart (datamaskin, mikrokontroller, annen klient …) i JSON -format
Det er også en utvidet versjon av denne termostaten som inkluderer:
- Manuell modus for reléer (ubegrenset tid, hard PÅ / AV)
- Watchdog timer
- Tilgjengelige flere sensorer, for eksempel: SHT21, SHT31, DHT22, BME280, BMP280 og andre
- Avkjølingsmodus
- Kontroll og konfigurasjon via RS232 / UART uavhengig av Ethernet
- PID temperaturkontroll for termostat
- Mulighet for bruk av ESP8266, ESP32 plattformer for termostat
Programimplementeringen for prosjektet finner du på: https://github.com/martinius96/termostat-ethernet/ Implementeringen inneholder programmer for den statiske/dynamiske IPv4-adressen som er tilordnet Ethernet-skjoldet.
Termostaten er kun beregnet for innetemperaturer! (over 0 ° C), som systemlogikken er tilpasset. Det er mulig å bytte ut en eksisterende romtermostat med en termostat, det er mulig å midlertidig bytte ut en termostat i et kjøleskap, opprettholde en konstant temperatur i et terrarium og lignende.
Anbefalt:
Sett opp Raspberry Pi 4 gjennom bærbar PC/pc ved hjelp av Ethernet-kabel (ingen skjerm, ingen Wi-Fi): 8 trinn
![Sett opp Raspberry Pi 4 gjennom bærbar PC/pc ved hjelp av Ethernet-kabel (ingen skjerm, ingen Wi-Fi): 8 trinn Sett opp Raspberry Pi 4 gjennom bærbar PC/pc ved hjelp av Ethernet-kabel (ingen skjerm, ingen Wi-Fi): 8 trinn](https://i.howwhatproduce.com/images/001/image-566-j.webp)
Sett opp Raspberry Pi 4 gjennom bærbar PC/pc ved hjelp av Ethernet-kabel (ingen skjerm, ingen Wi-Fi): I dette skal vi jobbe med Raspberry Pi 4 Model-B med 1 GB RAM for oppsettet. Raspberry-Pi er en enkelt brettcomputer som brukes til utdanningsformål og gjør-det-selv-prosjekter til en rimelig pris, krever en strømforsyning på 5V 3A
Hvordan lage en Ethernet -kabel: 5 trinn
![Hvordan lage en Ethernet -kabel: 5 trinn Hvordan lage en Ethernet -kabel: 5 trinn](https://i.howwhatproduce.com/images/002/image-4359-j.webp)
Hvordan lage en Ethernet -kabel: Hei! I dag skal vi lære å lage din helt egen industristandard ethernet-kabel! Som vil kunne spare deg for penger når du trenger kabler! Så hvorfor er jeg kvalifisert til å lære deg? Vel, jeg er en IT -profesjonell jeg har brukt de siste 2
DIY 10/100M Ethernet PoE Injector: 6 trinn
![DIY 10/100M Ethernet PoE Injector: 6 trinn DIY 10/100M Ethernet PoE Injector: 6 trinn](https://i.howwhatproduce.com/images/005/image-12897-j.webp)
DIY 10/100M Ethernet PoE Injector: Her lager vi en enkel PoE -inektor egnet for 10/100M ethernet, kan også drives direkte med batterier
MCP23017 GPIO -kontroll via Ethernet: 5 trinn
![MCP23017 GPIO -kontroll via Ethernet: 5 trinn MCP23017 GPIO -kontroll via Ethernet: 5 trinn](https://i.howwhatproduce.com/images/005/image-14031-j.webp)
MCP23017 GPIO-kontroll via Ethernet: Kontroller MCP23017 IO-forlenger via ethernet ved hjelp av Sensor Bridge og MCP23017 breakout board. Kommandoer sendt av Python -skript, nettadresser til nettlesere eller ethvert system som er i stand til HTTP -kommunikasjon. Kan integreres i Home Assistant for hjemmeautomatisering. Ledninger er
Leser fuktighet med Ethernet -sensor: 3 trinn
![Leser fuktighet med Ethernet -sensor: 3 trinn Leser fuktighet med Ethernet -sensor: 3 trinn](https://i.howwhatproduce.com/images/008/image-23888-j.webp)
Lese fuktighet med Ethernet -sensor: Formålet med prosjektet var å kunne lese av fuktighets- og temperaturavlesninger gjennom ethernet -nettverk, slik at resultatene kunne brukes til hjemmeautomatisering (Home Assistant etc). T9602 -sensor hadde den beste formfaktoren, med gode ytelse på ar