Përmbajtje:

Temperatura, Monitor lagështie - Arduino Mega + Ethernet W5100: 5 hapa
Temperatura, Monitor lagështie - Arduino Mega + Ethernet W5100: 5 hapa

Video: Temperatura, Monitor lagështie - Arduino Mega + Ethernet W5100: 5 hapa

Video: Temperatura, Monitor lagështie - Arduino Mega + Ethernet W5100: 5 hapa
Video: ОБЗОР ТЕПЛИЧЕК С ФИАЛКАМИ‼️ ТОНКОСТИ УСПЕШНОГО ВЫРАЩИВАНИЯ‼️ 2024, Nëntor
Anonim
Monitorues i temperaturës, lagështisë - Arduino Mega + Ethernet W5100
Monitorues i temperaturës, lagështisë - Arduino Mega + Ethernet W5100

Moduli 1 - FLAT - harduer:

  • Arduino Mega 2560
  • Mburoja Wiznet W5100 Ethernet
  • Sensori i temperaturës 8x DS18B20 në autobusin OneWire - i ndarë në 4 autobusë OneWire (2, 4, 1, 1)
  • 2x sensor dixhital i temperaturës dhe lagështisë DHT22 (AM2302)
  • 1x sensor i temperaturës dhe lagështisë SENSIRION SHT21 (Si7021)
  • 1x sensor i temperaturës dhe lagështisë (dhe presionit të ajrit) BOSCH BME280
  • Dërgon të dhëna nga të gjithë sensorët menjëherë në disa minuta (mund të modifikohen)

Moduli 2 - BOILER - harduer:

  • Arduino Mega 2560
  • Mburoja Wiznet W5100 Ethernet
  • Sensori i temperaturës 16x DS18B20 në autobusin OneWire - i ndarë në 7 autobusë OneWire (2, 2, 2, 2, 2, 2, 4)
  • 8x hyrje dixhitale
  • 8x dalje dixhitale - për solenoid / stafetë
  • Dërgon të dhëna nga të gjithë sensorët menjëherë në disa minuta (mund të modifikohen)
  • Lexon gjendjet e daljeve individuale nga ndërfaqja në internet, i zbaton ato Dërgon gjendje të dhëna dixhitale

Hapi 1: Hyrje

Prezantimi
Prezantimi
Prezantimi
Prezantimi
Prezantimi
Prezantimi

Sot do të paraqes në detaje projektin e fundit të realizuar, i cili është mjaft kompleks për sa i përket funksionalitetit, numrit të sensorëve të përdorur, tabelave Arduino, autobusëve të të dhënave të përdorura. Projekti përbëhet nga dy module. Fizikisht çdo modul përbëhet nga një Arduino Mega 2560, mburoja Ethernet W5100 (e pajtueshme me R3) dhe sensorët që përdor.

Çdo modul komunikon me ndërfaqen e uebit në internet nga kërkesat HTTP POST, me anë të të cilave serveri në internet shet të dhëna ose kërkon disa të dhëna, për shembull përmes kërkesës POST (vetëm moduli 2). Ndërfaqja në internet plotësohet me një sistem identifikimi, ndërsa e gjithë familja mund të regjistrohet në sistem, secila me emrin dhe fjalëkalimin e saj. Prandaj është një aplikim me shumë përdorues ku secili anëtar i familjes ka një përmbledhje të të dy moduleve dhe mund të kryejë veprime të ndryshme - vendosja e temperaturës referuese, termometri i kontrollit, etj. Ndërfaqja e uebit është programuar në PHP, të dhënat ruhen në bazën e të dhënave MySQL. Secili nga modulet ka një tabelë të veçantë në bazën e të dhënave për të dhënat. Konsideroni modulet individuale në më shumë detaje.

Hapi 2: Moduli 1 - FLAT

Moduli 1 - FLAT
Moduli 1 - FLAT
Moduli 1 - FLAT
Moduli 1 - FLAT

I gjithë moduli 1- FLAT shërben vetëm si një monitorues i temperaturës në dhomat individuale, nuk ka asnjë rol tjetër. Sensorët DHT22 u përdorën në një distancë të gjatë duke përdorur një rezistencë tërheqëse të përshtatshme 10kohm për të regjistruar lagështinë në banjo. Meqenëse BME280 dhe SHT21 komunikojnë mbi autobusin I2C dhe kjo është shumë e kufizuar sa i përket gjatësisë së shoferit të autobusit, sensorët përdoren pranë Arduino në dhoma.

Sensorët e temperaturës DS18B20 janë ndarë në 4 autobusë, pasi përdoren dy sensorë të jashtëm, duke e bërë më të lehtë lidhjen e tyre me prizat e veçanta të Arduino dhe, në rast të rënies së sensorit, është më e lehtë të zëvendësohen pasi nuk paralizon funksionalitetin të sistemit.

Për shembull, në rastin e njërit prej këtyre autobusëve OneWire, në të cilin indeksohen 4 sensorë. Indeksi është i lidhur me adresën fizike të termometrave, kështu që nëse ndërrohet një nga sensorët, sensori i ri mund të shfaqet në indeksin 0 - fillestar, apo edhe 2, 3 ose i fundit. Kështu, duke zvogëluar numrin e sensorëve në autobusë, ne mund të shmangim një ndërlikim të tillë që mund të ndodhë kur sensori të zëvendësohet.

Hapi 3: Moduli 2 - BOILER

Moduli 2 - BOILER
Moduli 2 - BOILER
Moduli 2 - BOILER
Moduli 2 - BOILER
Moduli 2 - BOILER
Moduli 2 - BOILER

Përveç funksionit të monitorit, moduli 2 - BOILER gjithashtu ka një rol më të rëndësishëm, përkatësisht kontrollin e solenoideve ose stafetëve për kontrollin e valvulave të radiatorit. Moduli funksionon në mënyrë të pavarur nga ngrohja shtëpiake. Moduli nuk ndërron ngrohjen ose bojlerin. Moduli kujdeset vetëm për hapjen, mbylljen e valvulës së radiatorit, nëse temperatura e dhomës është më e ulët / më e lartë se ajo e vendosur - e ashtuquajtur. temperatura referuese. Çdo dhome ku kontrollohet valvula e radiatorit mund t'i caktohet një termometër specifik nga moduli 2. Përveç kësaj - mënyra automatike, ekziston edhe një mënyrë manuale ku valvula mund të hapet / mbyllet manualisht nga ndërfaqja e uebit pafundësisht - e fortë. Hyrjet dixhitale mund të përdoren për të verifikuar që solenoidi / stafeta / valvula është hapur / mbyllur sipas kërkesës me Arduina - aftësia për të krahasuar nëse dalja është e barabartë me hyrjen.

Hapi 4: Çfarë Ofron Ndërfaqja e Uebit?

Çfarë Ofron Ndërfaqja e Uebit?
Çfarë Ofron Ndërfaqja e Uebit?
Çfarë Ofron Ndërfaqja e Uebit?
Çfarë Ofron Ndërfaqja e Uebit?

Për të dy modulet ekziston gjithashtu një paraqitje grafike e një tabele të linjës për zhvillimin e variablave individualë - temperatura, lagështia në 24 orë, 7 ditë. Ndërfaqja në internet gjithashtu ofron shikimin e vlerës maksimale / minimale, mesatare në 24 orë, 7 ditë për çdo termometër / higrometër. Në modulin 1, fillimisht u morën parasysh një palë sensorë SHT21, por meqenëse nuk kanë mundësi të ndryshojnë adresën I2C, do të ishte e nevojshme të përdorej një multiplexer për një komunikim autobusi nga dy sensorë me të njëjtën adresë I2C. Në rast të të dhënave të gabuara të sensorit, emri i sensorit ruhet në një regjistër që administratori i sistemit mund ta hapë në çdo kohë për të shërbyer autobusin OneWire dhe për të zëvendësuar sensorin e gabuar, për shembull.

Watchdog është zbatuar në programet Arduino, të cilat në rast të inicializimit të gabuar, "ngrirjes", një gabim tjetër rinis me siguri dhe në fillim të programit fik të gjitha daljet derisa të krijohet lidhja me ndërfaqen në internet, ku sinkronizohet plotësisht në kushtet e rezultateve, të cilat më pas zbatohen.

Më shumë projekte mund të gjeni në: https://arduino.php5.sk?lang=en Dhuroni për më shumë shembuj:

Recommended: