Cov txheej txheem:

Chav ntsuas cua sov - Arduino + Ethernet: 3 Kauj Ruam
Chav ntsuas cua sov - Arduino + Ethernet: 3 Kauj Ruam

Video: Chav ntsuas cua sov - Arduino + Ethernet: 3 Kauj Ruam

Video: Chav ntsuas cua sov - Arduino + Ethernet: 3 Kauj Ruam
Video: Tswv Yexus lub neej thaum pib txug thaum xaus 2024, Hlis ntuj nqeg
Anonim
Chav ntsuas cua sov - Arduino + Ethernet
Chav ntsuas cua sov - Arduino + Ethernet

Hais txog kho vajtse, txoj haujlwm siv:

  • Arduino Uno / Mega 2560
  • Ethernet shield Wiznet W5100 / Ethernet module Wiznet W5200-W5500
  • DS18B20 ntsuas kub ntawm lub npav OneWire
  • Siv Relay SRD-5VDC-SL-C siv rau kev hloov pauv boiler

Kauj Ruam 1: Kev piav qhia ntawm Ethernet Thermostat

Kev piav qhia ntawm Ethernet Thermostat
Kev piav qhia ntawm Ethernet Thermostat

Arduino yog lub platform siv tau yooj yim uas tuaj yeem siv tau, piv txwv li, txhawm rau tsim chav ntsuas cua sov, uas peb yuav qhia hnub no. Lub ntsuas cua sov tuaj yeem nkag tau los ntawm LAN network uas nws nyob, thaum nws nruab nrog lub vev xaib sib txuas uas tau siv los teeb tsa txhua yam ntawm lub ntsuas cua sov. Lub vev xaib sib txuas ncaj qha ntawm Arduino hauv hom web server. Lub vev xaib tso cai rau khiav ntawm ob peb nplooj ntawv HTML ywj pheej, uas tuaj yeem yog xov xwm lossis tseem ua haujlwm zoo. Lub web server khiav ntawm chaw nres nkoj 80 -

Kev xa hluav taws xob sib nqus SRD-5VDC-SL-C, uas yog siv hauv txoj haujlwm, tso cai hloov mus txog 10A ntawm 230V-lub zog 2300W. Yog tias hloov pauv DC Circuit (thauj khoom) nws tuaj yeem hloov 300W (10A ntawm 30V DC). Xwb, OMRON G3MB-202P SSR kev xa xov tau zoo tag nrho rau daim duab kab hluav taws xob, uas tsuas yog haum rau cov khoom uas tsis yog siv hluav taws xob thiab tshwj xeeb rau AC Circuit. Kev hloov pauv siab tshaj plaws 460W (230V, 2A). Kev siv ntawm Arduino nrog Ethernet daim thaiv thiab lwm yam khoom siv ntxiv yog nyob ntawm qib 100-120mA nrog qhib kev xa xov. Thaum kaw, qis dua 200mA ntawm 5V cov khoom siv.

Kauj ruam 2: Web Interface

Web Interface
Web Interface

Lub vev xaib sib txuas rau ntsuas cua sov tso cai:

  • Saib qhov ntsuas kub ntawm lub sijhawm tiag tiag los ntawm DS18B20 sensor
  • Saib cov xwm txheej ntawm lub sijhawm tiag tiag nrog kev hloov pauv hloov pauv ntawm nplooj ntawv
  • Hloov kho lub hom phiaj (siv) qhov kub nyob hauv thaj tsam ntawm 5 txog 50 ° C nrog qib 0.25 ° C
  • Hloov kho hysteresis hauv thaj tsam 0 txog 10 ° C nrog qib 0.25 ° C

Lub vev xaib sib tham tau tsim los kom haum rau cov ntxaij vab tshaus loj dua thiab me dua. Nws yog qhov ua tau zoo, txhawb nqa cov ntxaij vab tshaus siab txhais dav, tab sis kuj yog cov khoom siv mobile. Lub interface siv cov qauv CSS txawv ntawm Bootstrap lub moj khaum los ntawm sab nraud CDN server, uas thauj cov neeg siv khoom sab thaum qhib nplooj ntawv khiav ntawm Arduino. Vim tias Arduino Uno yog lub cim xeeb txwv, nws tsuas tuaj yeem ua nplooj ntawv ob peb kB loj. Los ntawm kev xa CSS cov yam ntxwv los ntawm cov neeg rau zaub mov sab nraud, nws yuav txo qhov kev ua tau zoo thiab nco lub zog ntawm Arduino. Kev siv software (rau Arduine Uno) siv 70% ntawm flash nco (32kB - 4kB Bootloader) thiab 44% ntawm RAM nco (2kB).

Ib feem ntawm cov nplooj ntawv web (HTML kab ntawv header thiab footer, Bootstrap CSS txuas, meta cim npe, HTTP cov lus teb lub taub hau, Hom ntsiab lus, daim ntawv thiab ntau dua) raug khaws cia ncaj qha hauv Arduino lub cim xeeb nco, uas tuaj yeem txo qis RAM siv rau cov neeg siv -tsim cov ntsiab lus. Lub web server yog li ruaj khov dua thiab tuaj yeem ua haujlwm sib txuas ntawm ntau lub cuab yeej hauv lub network tib lub sijhawm.

Txhawm rau khaws cov txheej txheem tseem ceeb txawm tias tom qab lub zog tsis ua haujlwm, lawv tau khaws cia hauv EEPROM nco ntawm Arduino. Kev ntsuas kub kom txo 10, hysteresis rau offset 100. Txhua qhov txiaj ntsig nyob siab tshaj 5B hauv EEPROM nco. EEPROM cov ntawv txwv tsis pub dhau yog nyob ntawm qib 100, 000 cov ntawv sau tseg. Cov ntaub ntawv raug sau tseg tsuas yog thaum xa daim ntawv HTML. Nyob rau hauv rooj plaub uas lub cuab yeej tsis muaj dab tsi khaws cia ntawm qhov hais EEPROM offsets ntawm thawj zaug pib, sau tsis siv neeg yuav ua tiav nrog qhov txiaj ntsig tsis raug - siv: 20.25, hysteresis 0.25 ° C

Refresh meta tag rov ua dua tshiab nplooj ntawv Arduino txhua 10 vib nas this. Txog lub sijhawm no nws yog qhov tsim nyog los sau qhov kev hloov pauv rau lub ntsuas cua sov, txwv tsis pub lub qhov rai nkag yuav rov pib dua thaum nplooj ntawv tshiab. Vim tias lub tsev qiv ntawv Ethernet tsis suav nrog kev siv asynchronous web server, tag nrho nplooj ntawv yuav tsum tau rov sau dua. Cov ntaub ntawv hloov pauv uas feem ntau hloov pauv yog tus nqi tam sim no ntawm cov zis - On / Off.

Kauj Ruam 3: Nplooj ntawv HTML khiav ntawm Webserver, Schematics, Source Code

Nplooj ntawv HTML khiav ntawm Webserver, Schematics, Source Code
Nplooj ntawv HTML khiav ntawm Webserver, Schematics, Source Code

HTML nplooj ntawv khiav ntawm Arduino:

  • / - nplooj nplooj hauv paus uas muaj daim ntawv, tam sim no logic tso tawm cov npe rau kev xa tawm, kub
  • /action.html - txheej txheem cov txiaj ntsig los ntawm daim ntawv, sau lawv mus rau EEPROM nco, xa cov neeg siv rov qab mus rau nplooj ntawv hauv paus
  • / get_data/ - faib cov ntaub ntawv ntawm qhov ntsuas kub tam sim no, ntsuas kub thiab hysteresis rau lwm tus thib peb (khoos phis tawj, microcontroller, lwm tus neeg siv khoom …) hauv JSON hom

Kuj tseem muaj qhov txuas ntxiv ntawm qhov ntsuas cua sov uas suav nrog:

  • Phau ntawv hom rau kev xa tawm (sijhawm tsis txwv, nyuaj ON / OFF)
  • Watchdog timer
  • Muaj ntau qhov ntsuas, piv txwv li: SHT21, SHT31, DHT22, BME280, BMP280 thiab lwm yam
  • Cua txias hom
  • Tswj thiab teeb tsa ntawm RS232 / UART ywj siab ntawm Ethernet
  • Kev ntsuas kub PID rau lub ntsuas sov
  • Muaj peev xwm siv ESP8266, ESP32 platforms rau ntsuas cua sov

Qhov kev ua haujlwm rau txoj haujlwm tuaj yeem nrhiav tau ntawm: https://github.com/martinius96/termostat-ethernet/ Qhov kev ua tiav muaj cov haujlwm rau IPv4 zoo li qub/hloov pauv chaw nyob muab rau Ethernet daim thaiv.

Lub ntsuas cua sov tsuas yog npaj rau qhov kub hauv tsev! (saum toj no 0 ° C), uas qhov system logic raug yoog raws. Nws muaj peev xwm hloov pauv chav ntsuas cua sov uas twb muaj lawm nrog lub ntsuas sov, nws muaj peev xwm hloov lub ntsuas cua sov hauv lub tub yees ib ntus, tswj qhov ntsuas kub tas li hauv terrarium thiab zoo li.

Pom zoo: