Kaip sukurti komforto stebėjimo jutiklių stotį: 10 žingsnių (su nuotraukomis)
Kaip sukurti komforto stebėjimo jutiklių stotį: 10 žingsnių (su nuotraukomis)
Anonim
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį
Kaip sukurti komforto stebėjimo jutiklių stotį

Šioje instrukcijoje aprašomas vadinamosios komforto stebėjimo stoties „CoMoS“, kombinuoto jutiklio, skirto aplinkos sąlygoms, projektavimas ir konstrukcija, sukurta TUK, Technische Universität Kaiserslautern, Vokietijos, pastatytos aplinkos departamente.

„CoMoS“naudoja ESP32 valdiklį ir jutiklius, skirtus oro temperatūrai ir santykiniam drėgnumui (Si7021), oro greičiui (vėjo jutiklio aps. C pagal „Modern Device“) ir Žemės rutulio temperatūrai (DS18B20 juodoje lemputėje)-visa tai kompaktiškai, lengvai korpusas su vizualiu grįžtamuoju ryšiu per LED indikatorių (WS2812B). Be to, pridedamas apšvietimo jutiklis (BH1750), skirtas vietinei regos būklei analizuoti. Visi jutiklių duomenys yra periodiškai skaitomi ir siunčiami per „Wi-Fi“į duomenų bazės serverį, iš kurio jie gali būti naudojami stebėjimui ir valdymui.

Šio vystymosi motyvacija yra įsigyti nebrangią, bet labai galingą alternatyvą laboratoriniams jutiklių prietaisams, kurių kaina paprastai viršija 3000 eurų. Priešingai, „CoMoS“naudojama aparatinė įranga, kurios bendra kaina yra apie 50 EUR, todėl gali būti visapusiškai įdiegta (biurų) pastatuose, kad būtų galima realiu laiku nustatyti individualią šiluminę ir vizualinę būklę kiekvienoje darbo vietoje ar pastato dalyje.

Norėdami gauti daugiau informacijos apie mūsų tyrimus ir susijusį darbą skyriuje, apsilankykite oficialioje „Living Lab“išmaniosios biuro erdvės svetainėje arba tiesiogiai susisiekite su atitinkamu autoriumi per „LinkedIn“. Šios instrukcijos pabaigoje išvardyti visi autorių kontaktai.

Struktūrinė pastaba: šioje instrukcijoje aprašoma originali „CoMoS“sąranka, tačiau joje taip pat pateikiama informacija ir nurodymai apie keletą variantų, kuriuos neseniai sukūrėme: be originalaus dėklo, pagaminto iš standartinių dalių, taip pat yra 3D spausdinimo parinktis. Be originalaus įrenginio su duomenų bazės serverio ryšiu, yra alternatyvi atskira versija su SD kortelės saugykla, integruotu „WIFi“prieigos tašku ir išgalvota programa mobiliesiems, skirta vizualizuoti jutiklių rodmenis. Patikrinkite atitinkamuose skyriuose pažymėtas parinktis ir paskutinio skyriaus atskirą parinktį.

Asmeninė pastaba: tai yra pirmasis autoriaus nurodymas, apimantis gana išsamią ir sudėtingą sąranką. Nedvejodami susisiekite per šio puslapio komentarų skiltį, el. Paštu arba per „LinkedIn“, jei atliekant visus veiksmus trūksta išsamios informacijos ar informacijos.

1 žingsnis: Fonas - šiluminis ir vizualinis komfortas

Fonas - šiluminis ir vizualinis komfortas
Fonas - šiluminis ir vizualinis komfortas
Fonas - šiluminis ir vizualinis komfortas
Fonas - šiluminis ir vizualinis komfortas

Šiluminis ir vizualinis komfortas tampa vis svarbesnėmis temomis, ypač biuro ir darbo aplinkoje, bet ir gyvenamajame sektoriuje. Pagrindinis šios srities iššūkis yra tas, kad individų šiluminis suvokimas dažnai skiriasi įvairiais intervalais. Vienas asmuo gali jaustis karštas esant tam tikrai šilumai, o kitas - šalta. Taip yra todėl, kad individualų šiluminį suvokimą įtakoja daugelis veiksnių, įskaitant fizinius oro temperatūros, santykinės drėgmės, oro greičio ir aplinkinių paviršių spinduliuotės veiksnius. Tačiau šiluminį suvokimą įtakoja ir apranga, medžiagų apykaitos veikla bei individualus amžiaus, lyties, kūno masės ir kt. Aspektas.

Nors atskiri veiksniai išlieka neapibrėžti šildymo ir vėsinimo valdymo požiūriu, fizinius veiksnius galima tiksliai nustatyti jutiklių įtaisais. Oro temperatūrą, santykinę drėgmę, oro greitį ir rutulio temperatūrą galima išmatuoti ir naudoti kaip tiesioginį pastato valdymo įvestį. Be to, taikant išsamesnį metodą, jie gali būti naudojami kaip įvestis apskaičiuojant vadinamąjį PMV indeksą, kur PMV reiškia prognozuojamą vidutinį balsą. Jame aprašoma, kaip žmonės vidutiniškai galėtų įvertinti savo šilumos pojūtį esant tam tikroms aplinkos sąlygoms. PMV gali įgauti reikšmes nuo -3 (šaltas) iki +3 (karštas), o 0 yra neutrali būsena.

Kodėl čia minime tą PMV dalyką? Na, nes asmeninio komforto srityje tai yra dažniausiai naudojamas indeksas, kuris gali būti pastato šiluminės padėties kokybės kriterijus. Naudojant „CoMoS“, galima išmatuoti visus aplinkos parametrus, reikalingus PMV skaičiavimui.

Jei jus domina, sužinokite daugiau apie šiluminį komfortą, Žemės rutulio kontekstą ir vidutinę spinduliuotės temperatūrą, PMV indeksą ir įgyvendinamąjį ASHRAE standartą.

Vikipedija: šiluminis komfortas

ISO 7726 Šiluminės aplinkos ergonomika

NPO ASHRAE

Beje: personalizuotos aplinkos srityje jau seniai egzistuoja, bet taip pat daug naujai sukurtų įtaisų, suteikiančių individualų šiluminį ir vizualinį komfortą. Maži darbalaukio ventiliatoriai yra gerai žinomas pavyzdys. Bet taip pat kuriami ar net jau yra prieinami pėdų šildytuvai, šildomos ir vėdinamos kėdės arba biuro pertvaros, skirtos infraraudonųjų spindulių šildymui ir vėsinimui. Visos šios technologijos įtakoja vietinę šiluminę būklę, pavyzdžiui, darbo vietoje, ir jas galima valdyti automatiškai, remiantis vietinių jutiklių duomenimis, kaip parodyta šio žingsnio nuotraukose.

Daugiau informacijos apie personalizuotos aplinkos dalykėlius ir vykdomus tyrimus rasite adresu

„Living Lab“išmaniosios biuro patalpos: personalizuota aplinka

Kalifornijos universitetas, Berklis

ZEN ataskaita apie asmeninį šildymo ir aušinimo įrenginį [PDF]

SBRC Vulongongo universitetas

2 žingsnis: sistemos schema

Sistemos schema
Sistemos schema
Sistemos schema
Sistemos schema

Vienas iš pagrindinių kūrimo proceso tikslų buvo sukurti belaidį, kompaktišką ir nebrangų jutiklių įrenginį, skirtą bent dešimties atskirų darbo vietų patalpų aplinkos sąlygoms tam tikroje atviroje biuro patalpoje matuoti. Todėl stotis naudoja ESP32-WROOM-32 su integruotu „WiFi“ryšiu ir su daugybe jungčių kaiščių bei palaikomų visų tipų jutiklių tipų magistralių. Jutiklių stotys naudoja atskirą „IoT-WiFi“ir siunčia savo duomenų rodmenis į „MariaDB“duomenų bazę per PHP scenarijų, kuris veikia duomenų bazės serveryje. Pasirinktinai taip pat galima įdiegti lengvai naudojamą „Grafana“vaizdo išvestį.

Aukščiau pateikta schema rodo visų periferinių komponentų išdėstymą kaip sistemos sąrankos apžvalgą, tačiau šioje instrukcijoje daugiausia dėmesio skiriama pačiai jutiklių stočiai. Žinoma, PHP failas ir SQL ryšio aprašymas taip pat pateikiami vėliau, kad būtų pateikta visa reikalinga informacija „CoMoS“kūrimui, prijungimui ir naudojimui.

Pastaba: šios instrukcijos pabaigoje rasite instrukcijas, kaip sukurti alternatyvią atskirą „CoMoS“versiją su SD kortelės saugykla, vidiniu „WiFi“prieigos tašku ir žiniatinklio programa mobiliesiems įrenginiams.

3 žingsnis: tiekimo sąrašas

Tiekimo sąrašas
Tiekimo sąrašas
Tiekimo sąrašas
Tiekimo sąrašas

Elektronika

Jutikliai ir valdiklis, kaip parodyta paveikslėlyje:

  • ESP32-WROOM-32 mikrovaldiklis (espressif.com) [A]
  • Si7021 arba GY21 temperatūros ir drėgmės jutiklis (adafruit.com) [B]
  • DS18B20+ temperatūros jutiklis (adafruit.com) [C]
  • Rev. oro greičio jutiklis (moderndevice.com) [D]
  • WS2812B 5050 būsenos šviesos diodas (adafruit.com) [E]
  • BH1750 apšvietimo jutiklis (amazon.de) [F]

Daugiau elektrinių dalių:

  • 4, 7 k tempimo rezistorius (adafruit.com)
  • 0, 14 mm² (arba panaši) standartinė viela (adafruit.com)
  • 2x „Wago“kompaktiškos sujungimo jungtys (wago.com)
  • Mikro USB kabelis (sparkfun.com)

Dėklo dalys (Išsamesnės informacijos apie šias dalis ir dydžius rasite kitame žingsnyje. Jei turite 3D spausdintuvą, jums reikia tik stalo teniso kamuoliuko. Praleiskite kitą veiksmą ir raskite visą informaciją ir failus, skirtus spausdinti 5 veiksme.)

  • Akrilo plokštė apvali 50x4 mm [1]
  • Plieninė plokštė apvali 40x10 mm [2]
  • Akrilo vamzdelis 50x5x140 mm [3]
  • Akrilo plokštė apvali 40x5 mm [4]
  • Akrilo vamzdis 12x2x50 mm [5]
  • Stalo teniso kamuolys [6]

Įvairūs

  • Purškiamas baltais dažais
  • Purškiamas juodas matinis dažų purškiklis
  • Kažkokia juosta
  • Šiek tiek izoliacinės vatos, medvilnės pagalvėlės ar pan

Įrankiai

  • Elektrinis grąžtas
  • 8 mm gręžtuvas
  • 6 mm medžio/plastiko gręžtuvas
  • 12 mm medžio/plastiko gręžtuvas
  • Plonas rankinis pjūklas
  • Švitrinis popierius
  • Vielos pjovimo replės
  • Vielos nuėmiklis
  • Lituoklis ir skarda
  • Maitinimo klijai arba karšto klijų pistoletas

Programinė įranga ir bibliotekos (Skaičiai rodo bibliotekos versijas, kurias mes naudojome ir su kuriomis išbandėme aparatinę įrangą. Taip pat turėtų veikti ir naujesnės bibliotekos, tačiau retkarčiais susidurdavome su tam tikromis problemomis bandydami skirtingas / naujesnes versijas.)

  • „Arduino IDE“(1.8.5)
  • Pagrindinė ESP32 biblioteka
  • BH1750FVI biblioteka
  • „Adafruit_Si7021“biblioteka (1.0.1)
  • „Adafruit_NeoPixel“biblioteka (1.1.6)
  • Dalaso temperatūros biblioteka (3.7.9)
  • „OneWire“biblioteka (2.3.3)

4 žingsnis: korpuso projektavimas ir konstrukcija - 1 variantas

Korpuso projektavimas ir konstrukcija - 1 variantas
Korpuso projektavimas ir konstrukcija - 1 variantas
Korpuso projektavimas ir konstrukcija - 1 variantas
Korpuso projektavimas ir konstrukcija - 1 variantas
Korpuso projektavimas ir konstrukcija - 1 variantas
Korpuso projektavimas ir konstrukcija - 1 variantas

„CoMoS“dizainas turi ploną, vertikalų dėklą, kurio dauguma jutiklių yra sumontuoti viršutinėje srityje, o tik temperatūros ir drėgmės jutiklis yra sumontuotas šalia apačios. Jutiklių padėtis ir išdėstymas atitinka konkrečius matuojamų kintamųjų reikalavimus:

  • Si7021 temperatūros ir drėgmės jutiklis yra sumontuotas už korpuso ribų, netoli jo dugno, kad būtų galima laisvai cirkuliuoti aplink jutiklį ir sumažinti korpuso viduje esančio mikrovaldiklio išskiriamos šilumos atliekų įtaką.
  • Apšvietimo jutiklis BH1750 yra sumontuotas ant plokščio korpuso viršaus, kad būtų galima matuoti apšvietimą ant horizontalaus paviršiaus, kaip reikalaujama pagal bendrus darbo vietos apšvietimo standartus.
  • „Rev. C“vėjo jutiklis taip pat sumontuotas korpuso viršuje, jo elektronika paslėpta dėklo viduje, tačiau jo dantys, kuriuose yra tikrasis terminis anemometras ir temperatūros jutiklis, yra veikiami oro aplink viršutinę dalį.
  • DS18B20 temperatūros jutiklis yra sumontuotas pačioje stoties viršuje, juodai dažyto stalo teniso kamuoliuko viduje. Padėtis viršuje yra būtina norint sumažinti matymo veiksnius, taigi ir pačios jutiklio stoties spinduliavimo įtaką Žemės rutulio temperatūrai.

Papildomi ištekliai apie vidutinę spinduliuotės temperatūrą ir juodų stalo teniso kamuoliukų kaip rutulio temperatūros jutiklių naudojimą yra šie:

Wang, Shang & Li, Yuguo. (2015). Akrilo ir vario gaubto termometrų tinkamumas kasdieniam lauko nustatymui. Pastatas ir aplinka. 89. 10.1016/j.buildenv.2015.03.002.

de Brangus, Ričardai. (1987). „Ping-pong“rutulio termometrai, skirti vidutinei spinduliuotės temperatūrai. H & Eng.,. 60. 10-12.

Dėklas yra paprastas, kad gamybos laikas ir pastangos būtų kuo mažesnės. Jis gali būti lengvai pagamintas iš standartinių dalių ir komponentų, naudojant tik keletą paprastų įrankių ir įgūdžių. Arba tiems, kuriems pasisekė turėti 3D spausdintuvą, visos korpuso dalys taip pat gali būti atspausdintos 3D. Spausdinant dėklą, likusią šio veiksmo dalį galima praleisti, o visus reikalingus failus ir instrukcijas rasite kitame veiksme.

Statant iš standartinių dalių, daugumai jų pasirenkami tvirtinimo matmenys:

  • Pagrindinis korpusas yra akrilo (PMMA) vamzdis, kurio išorinis skersmuo yra 50 mm, sienelės storis - 5 mm, o aukštis - 140 mm.
  • Apatinė plokštė, kuri yra šviesos būsenos šviesos diodas, yra akrilo apvali 50 mm skersmens ir 4 mm storio plokštė.
  • Plieninis apvalus apvalus, kurio skersmuo 40 mm ir storis 10 mm, sumontuotas kaip svoris ant apatinės plokštės viršaus ir pritvirtintas prie pagrindinio korpuso vamzdžio apatinio galo, kad stotis nevirstų ir nelaikytų apatinės plokštės vietoje.
  • Viršutinė plokštė taip pat tinka pagrindinio korpuso viduje. Jis pagamintas iš PMMA, jo skersmuo yra 40 mm, o storis - 5 mm.
  • Galiausiai, viršutinis stovo vamzdis taip pat yra PMMA, kurio išorinis skersmuo yra 10 mm, sienos storis 2 mm ir ilgis 50 mm.

Gamybos ir surinkimo procesas yra paprastas, pradedant nuo kai kurių skylių gręžimo. Plieniniam apvalui reikia 8 mm ištisinės skylės, kad tilptų šviesos diodas ir kabeliai. Pagrindiniam korpuso vamzdžiui reikia maždaug 6 mm skylių, kaip kabeliai, skirti USB ir jutiklių kabeliams, ir kaip ventiliacijos angos. Skylių skaičius ir padėtis gali skirtis pagal jūsų pageidavimus. Kūrėjų pasirinkimas yra šešios skylės galinėje pusėje, arti viršaus ir apačios, ir dvi priekinėje pusėje, viena viršuje, dar viena apačioje, kaip nuoroda.

Viršutinė plokštė yra sudėtingiausia dalis. Tam, kad jis tilptų viršutiniame stovo vamzdyje, reikia sucentruoti, tiesią ir nepertraukiamą 12 mm visumą, kitą 6 mm skylę, skirtą apšvietimo jutiklio kabeliui, ir ploną maždaug 1, 5 mm pločio ir 18 mm ilgio plyšį, kad tilptų vėjas. jutiklis. Žiūrėkite nuotraukas, kad gautumėte nuorodą. Galiausiai stalo teniso kamuoliukui taip pat reikia 6 mm dydžio, kad tilptų rutulio temperatūros jutiklis ir kabelis.

Kitame etape visos PMMA dalys, išskyrus apatinę plokštę, turi būti nudažytos purškimu, nuoroda yra balta. Stalo teniso kamuoliukas turi būti nudažytas matine juoda spalva, kad būtų galima nustatyti jo termines ir optines savybes.

Plieninis apvalus yra priklijuotas centre ir plokščias prie apatinės plokštės. Viršutinis stovo vamzdis yra įklijuotas į 12 mm viršutinės plokštės skylę. Stalo teniso kamuoliukas yra klijuojamas ant viršutinio stovo galo, o jo skylė atitinka vidinę stovo vamzdžio angą, todėl temperatūros jutiklį ir kabelį galima vėliau įkišti į rutulį per stovo vamzdį.

Atlikus šį veiksmą, visos dėklo dalys yra paruoštos surinkti jas sujungus. Jei kai kurie priglunda per ankštai, šiek tiek nušlifuokite, jei per laisvi, pridėkite ploną juostos sluoksnį.

5 veiksmas: korpuso projektavimas ir konstrukcija - 2 variantas

Korpuso projektavimas ir konstrukcija - 2 variantas
Korpuso projektavimas ir konstrukcija - 2 variantas
Korpuso projektavimas ir konstrukcija - 2 variantas
Korpuso projektavimas ir konstrukcija - 2 variantas
Korpuso projektavimas ir konstrukcija - 2 variantas
Korpuso projektavimas ir konstrukcija - 2 variantas

Nors 1 variantas sukurti „CoMoS“dėklą vis dar yra greitas ir paprastas, leisti 3D spausdintuvui atlikti šį darbą gali būti dar lengviau. Taip pat šios parinkties atveju korpusas yra padalintas į tris dalis: viršutinę, korpuso ir apatinę dalis, kad būtų galima lengvai prijungti laidus ir surinkti, kaip aprašyta kitame žingsnyje.

Failai ir daugiau informacijos apie spausdintuvo nustatymus pateikiami „Thingiverse“:

„CoMoS“failai „Thingiverse“

Labai rekomenduojama vadovautis baltos gijos naudojimo viršuje ir korpuso dalyse instrukcijomis. Tai neleidžia korpusui per greitai įkaisti saulės šviesoje ir išvengiama klaidingų matavimų. Apatinėje dalyje turėtų būti naudojamas skaidrus siūlas, kad būtų galima apšviesti LED indikatorių.

Kitas variantas iš 1 varianto yra tas, kad trūksta metalinio apvalumo. Kad CoMoS neapvirstų, į skaidrią apatinę dalį arba ant jos reikia įdėti bet kokį svorį, pvz., Guolių rutulius ar krūvą metalinių poveržlių. Jis suprojektuotas taip, kad kraštas atitiktų ir išlaikytų tam tikrą svorį. Arba „CoMoS“galima priklijuoti lipnia juosta į jos vietą naudojant dvipusę juostą.

Pastaba: „Thingiverse“aplanke yra „micro SD“kortelių skaitytuvo dėklo failų, kuriuos galima pritvirtinti prie „CoMoS“dėklo. Šis atvejis yra neprivalomas ir yra atskira versija, aprašyta paskutiniame šios instrukcijos žingsnyje.

6 žingsnis: laidai ir surinkimas

Laidai ir surinkimas
Laidai ir surinkimas
Laidai ir surinkimas
Laidai ir surinkimas
Laidai ir surinkimas
Laidai ir surinkimas
Laidai ir surinkimas
Laidai ir surinkimas

ESP, jutikliai, šviesos diodas ir USB kabelis yra lituojami ir prijungiami pagal schemą, parodytą šio veiksmo nuotraukose. PIN kodo priskyrimas, atitinkantis vėliau aprašytą pavyzdinį kodą, yra toks:

  • 14 - Atstatyti tiltą (EN) - [pilka]
  • 17 - WS2811 (LED) - [žalia]
  • 18 - prisitraukimo rezistorius, skirtas DS18B20+
  • 19 - DS18B20+ (vienas laidas) - [violetinė]
  • 21 - BH1750 ir SI7021 (SDA) - [mėlyna]
  • 22 - BH1750 & SI7021 (SCL) - [geltona]
  • 25 - BH1750 (V -in) - [ruda]
  • 26 - SI7021 (V -in) - [ruda]
  • 27 - DS18B20+ (V -in) - [ruda]
  • 34 - Vėjo jutiklis (TMP) - [žalsvai mėlynas]
  • 35 - Vėjo jutiklis (RV) - [oranžinė]
  • VIN - USB kabelis (+5V) - [raudona]
  • GND - USB kabelis (GND) - [juodas]

Si7021, BH1750 ir DS18B20+ jutikliai maitinami per ESP32 IO kaištį. Tai įmanoma, nes jų maksimali srovė yra mažesnė už ESP maksimalų srovės tiekimą vienam kaiščiui ir būtina, kad būtų galima iš naujo nustatyti jutiklius, nutraukus jų maitinimą, jei atsiranda jutiklio ryšio klaidų. Daugiau informacijos rasite ESP kodekse ir komentaruose.

Si7021 ir BH1750 jutikliai, kaip ir USB kabelis, turėtų būti lituoti su kabeliais, jau išvestais per tam skirtas korpuso angas, kad būtų galima surinkti kitą žingsnį. WAGO kompaktiškos sujungimo jungtys naudojamos prijungti įrenginius prie maitinimo šaltinio USB kabeliu. Visi maitinami 5 V nuolatinės srovės prietaisu iš USB, kuris veikia su ESP32 loginiu lygmeniu esant 3, 3 V. Pasirinktinai mikro USB kabelio duomenų kaiščius galima vėl prijungti prie „micro USB“kištuko ir prijungti prie ESP „micro USB“lizdas, kaip maitinimo įvestis ir duomenų ryšys, skirtas perduoti kodą į ESP32, kai korpusas uždarytas. Priešingu atveju, jei prijungtas, kaip parodyta schemoje, reikalingas kitas nepažeistas mikro USB kabelis, norint iš pradžių perkelti kodą į ESP prieš surenkant korpusą.

Si7021 temperatūros jutiklis yra priklijuotas prie galinės korpuso pusės, arti apačios. Labai svarbu pritvirtinti šį jutiklį arti apačios, kad būtų išvengta klaidingų temperatūros rodmenų, atsirandančių dėl korpuse išsivysčiusios šilumos. Daugiau informacijos apie šią problemą rasite „Epilogue“veiksme. Apšvietimo jutiklis BH1750 yra priklijuotas prie viršutinės plokštės, o vėjo jutiklis įdėtas ir pritvirtintas prie plyšio priešingoje pusėje. Jei jis tinka per daug, šiek tiek juostos aplink centrinę jutiklio dalį padeda išlaikyti jo padėtį. DS18B20 temperatūros jutiklis per viršutinį stovą įkišamas į stalo teniso kamuoliuką, galutinė padėtis rutulio centre. Viršutinio stovo vidus užpildytas izoliacine vata, o apatinė anga užklijuota juosta arba karštais klijais, kad būtų išvengta laidžio ar konvekcinio šilumos perdavimo į Žemės rutulį. Šviesos diodas yra pritvirtintas prie plieninės apvalios angos, nukreiptos žemyn, kad apšviestų apatinę plokštę.

Visi laidai, sujungimo jungtys ir ESP32 yra pagrindinio korpuso viduje, o visa korpuso dalis yra sujungta galutinai.

7 veiksmas: programinė įranga - ESP, PHP ir „MariaDB“konfigūracija

Programinė įranga - ESP, PHP ir MariaDB konfigūracija
Programinė įranga - ESP, PHP ir MariaDB konfigūracija
Programinė įranga - ESP, PHP ir MariaDB konfigūracija
Programinė įranga - ESP, PHP ir MariaDB konfigūracija

ESP32 mikrovaldiklį galima užprogramuoti naudojant „Arduino IDE“ir „Espressif“pateiktą „ESP32 Core“biblioteką. Internete yra daug pamokų, kaip nustatyti IDE, kad būtų suderinamas ESP32, pavyzdžiui, čia.

Kai jis bus nustatytas, pridėtas kodas bus perkeltas į ESP32. Jis pateikiamas komentaruose, kad būtų lengviau suprasti, tačiau yra keletas pagrindinių funkcijų:

  • Pradžioje yra skyrius „vartotojo konfigūracija“, kuriame turi būti nustatyti atskiri kintamieji, tokie kaip „WiFi ID“ir slaptažodis, duomenų bazės serverio IP, norimi duomenų rodmenys ir siuntimo laikotarpis. Jame taip pat yra „nulinio vėjo reguliavimo“kintamasis, kuris gali būti naudojamas nulinio vėjo greičio rodmenims sureguliuoti iki 0, jei maitinimo šaltinis yra nestabilus.
  • Į kodą įeina vidutiniai kalibravimo koeficientai, kuriuos autoriai nustatė pagal dešimties esamų jutiklių stočių kalibravimą. Daugiau informacijos ir galimą individualų koregavimą rasite Epilogue žingsnyje.
  • Įvairios klaidų tvarkymo priemonės yra įtrauktos į kelis kodo skyrius. Ypač efektyvus aptikimas ir valdymas, susijęs su magistralės ryšio klaidomis, kurios dažnai pasitaiko ESP32 valdikliuose. Vėlgi, daugiau informacijos rasite Epilogue žingsnyje.
  • Jame yra LED spalvų išvestis, rodanti dabartinę jutiklių stoties būseną ir visas klaidas. Daugiau informacijos rasite žingsnyje „Rezultatai“.

Pridėtas PHP failas turi būti įdiegtas ir prieinamas šakniniame duomenų bazės serverio aplanke, adresu serverIP/sensor.php. PHP failo pavadinimas ir duomenų tvarkymo turinys turi sutapti su ESP skambučio funkcijos kodu ir, kita vertus, atitikti duomenų bazės lentelės sąranką, kad būtų galima saugoti duomenų rodmenis. Pridedami pavyzdiniai kodai yra suderinti, tačiau jei pakeisite kai kuriuos kintamuosius, jie turi būti pakeisti visoje sistemoje. PHP failo pradžioje yra koregavimo skyrius, kuriame individualūs koregavimai atliekami atsižvelgiant į sistemos aplinką, ypač duomenų bazės vartotojo vardą ir slaptažodį bei duomenų bazės pavadinimą.

„MariaDB“arba SQL duomenų bazė nustatoma tame pačiame serveryje pagal lentelės sąranką, naudojamą jutiklių stoties kode ir PHP scenarijuje. Pavyzdiniame kode „MariaDB“duomenų bazės pavadinimas yra „sensorstation“su lentele „data“, kurioje yra 13 stulpelių, skirtų UTCDate, ID, UID, Temp, Hum, Globe, Vel, VelMin, VelMax, MRT, Illum, IllumMin, ir „IllumMax“.

„Grafana“analizės ir stebėjimo platforma gali būti papildomai įdiegta serveryje kaip galimybė tiesiogiai vizualizuoti duomenų bazę. Tai nėra pagrindinis šios raidos bruožas, todėl šioje instrukcijoje jis toliau neaprašytas.

8 žingsnis: Rezultatai - duomenų nuskaitymas ir tikrinimas

Rezultatai - duomenų nuskaitymas ir tikrinimas
Rezultatai - duomenų nuskaitymas ir tikrinimas

Atlikus visus laidus, surinkimą, programavimą ir aplinkos sąranką, jutiklių stotis periodiškai siunčia duomenų rodmenis į duomenų bazę. Įjungus maitinimą, apatinė šviesos diodo spalva rodo kelias veikimo būsenas:

  • Įkrovimo metu šviesos diodas šviečia geltona spalva, nurodydamas laukiantį ryšį su „WiFi“.
  • Kai ir kai yra prijungtas, indikatorius yra mėlynas.
  • Jutiklių stotis atlieka jutiklių rodmenis ir periodiškai siunčia juos į serverį. Kiekvieną sėkmingą perdavimą rodo 600 ms žalios šviesos impulsas.
  • Klaidų atveju indikatorius nusidažys raudona, violetine arba gelsva spalva, atsižvelgiant į klaidos tipą. Po tam tikro laiko ar klaidų skaičiaus jutiklių stotis iš naujo nustato visus jutiklius ir automatiškai paleidžia iš naujo, tai vėl rodo geltona lemputė įkrovos metu. Norėdami gauti daugiau informacijos apie indikatoriaus spalvas, žr. ESP32 kodą ir komentarus.

Atlikus šį paskutinį veiksmą, jutiklių stotis veikia ir veikia nuolat. Iki šiol 10 jutiklių stočių tinklas yra įdiegtas ir veikia anksčiau minėtoje „Living Lab“išmaniojoje biuro patalpoje.

9 veiksmas: alternatyva: atskira versija

Alternatyva: atskira versija
Alternatyva: atskira versija
Alternatyva: atskira versija
Alternatyva: atskira versija
Alternatyva: atskira versija
Alternatyva: atskira versija
Alternatyva: atskira versija
Alternatyva: atskira versija

„CoMoS“kūrimas tęsiamas ir pirmasis šio tęstinio proceso rezultatas yra atskira versija. Šiai „CoMoS“versijai nereikia duomenų bazės serverio ir „WiFi“tinklo, kad būtų galima stebėti ir įrašyti aplinkos duomenis.

Naujos pagrindinės funkcijos yra šios:

  • Duomenys saugomi vidinėje „micro SD“kortelėje „Excel“tinkamu CSV formatu.
  • Integruotas „WiFi“prieigos taškas, leidžiantis pasiekti „CoMoS“bet kuriuo mobiliuoju įrenginiu.
  • Žiniatinklio programa (ESP32 vidinis žiniatinklio serveris, nereikia interneto ryšio), skirta tiesioginiams duomenims, nustatymams ir prieigai prie saugyklos tiesiogiai atsisiųsti failus iš SD kortelės, kaip parodyta paveikslėlyje ir prie šio veiksmo pridėtose ekrano kopijose.

Tai pakeičia „WiFi“ir duomenų bazės ryšį, o visos kitos funkcijos, įskaitant kalibravimą ir visą dizainą bei konstrukciją, lieka nepakitusios nuo pradinės versijos. Vis dėlto savarankiškam „CoMoS“reikia patirties ir daugiau žinių, kaip pasiekti ESP32 vidinę failų valdymo sistemą „SPIFFS“, ir šiek tiek žinoti apie HTML, CSS ir „Javascript“, kad suprastumėte, kaip veikia žiniatinklio programa. Tam taip pat reikia dar kelių / skirtingų bibliotekų.

Patikrinkite „Arduino“kodą pridėtame ZIP faile, kuriame yra reikalingos bibliotekos, ir šias nuorodas, kad gautumėte daugiau informacijos apie programavimą ir įkėlimą į SPIFFS failų sistemą:

SPIFFS biblioteka pagal espressif

SPIFFS failų įkėlėjas, kurį pateikė „me-no-dev“

„Pedroalbuquerque“ESP32 „WebServer“biblioteka

Ši nauja versija būtų visiškai nauja instrukcija, kuri gali būti paskelbta ateityje. Tačiau kol kas, ypač labiau patyrusiems vartotojams, nenorime praleisti progos pasidalyti pagrindine informacija ir failais, kurių reikia norint ją nustatyti.

Greiti žingsniai kuriant savarankišką „CoMoS“:

  • Sukurkite dėklą pagal ankstesnį žingsnį. Pasirinktinai 3D spausdinkite papildomą dėklą, skirtą „Micro SC“kortelių skaitytuvui prijungti prie „CoMoS“dėklo. Jei neturite 3D spausdintuvo, kortelių skaitytuvą taip pat galima įdėti į „CoMoS“pagrindinį dėklą, nesijaudinkite.
  • Prijunkite visus jutiklius, kaip aprašyta anksčiau, bet be to, įdiekite ir prijunkite „micro SD“kortelių skaitytuvą (amazon.com) ir DS3231 realaus laiko laikrodį (adafruit.com), kaip nurodyta prie šio veiksmo prijungtoje schemoje. Pastaba: ištraukiamojo rezistoriaus ir „oneWire“kaiščiai skiriasi nuo pradinės elektros instaliacijos schemos!
  • Patikrinkite „Arduino“kodą ir pritaikykite „WiFi“prieigos taško kintamuosius „ssid_AP“ir „password_AP“pagal savo asmenines nuostatas. Jei jis nėra sureguliuotas, standartinis SSID yra „CoMoS_AP“, o slaptažodis - „12345678“.
  • Įdėkite „micro SD“kortelę, įkelkite kodą, įkelkite „duomenų“aplanko turinį į ESP32 naudodami SPIFFS failų įkėlimo programą ir prijunkite bet kurį mobilųjį įrenginį prie „WiFi“prieigos taško.
  • Naršyklėje mobiliesiems eikite į „192.168.4.1“ir mėgaukitės!

Programa pagrįsta html, css ir javascript. Jis yra vietinis, nereikia jokio interneto ryšio ar jo nereikia. Jame yra programėlės šoninis meniu, leidžiantis pasiekti sąrankos puslapį ir atminties puslapį. Sąrankos puslapyje galite koreguoti svarbiausius nustatymus, pvz., Vietinę datą ir laiką, jutiklio rodmenų intervalą ir tt Atminties puslapyje yra SD kortelėje esančių failų sąrašas. Spustelėjus failo pavadinimą pradedamas tiesioginis CSV failo atsisiuntimas į mobilųjį įrenginį.

Ši sistemos sąranka leidžia individualiai ir nuotoliniu būdu stebėti patalpų aplinkos sąlygas. Visi jutiklių rodmenys periodiškai saugomi SD kortelėje, kuriant naujus failus kiekvienai naujai dienai. Tai leidžia nepertraukiamai veikti kelias savaites ar mėnesius be prieigos ar priežiūros. Kaip minėta anksčiau, tai vis dar vyksta tyrimai ir plėtra. Jei jus domina daugiau informacijos ar pagalbos, nedvejodami susisiekite su atitinkamu autoriumi per komentarus arba tiesiogiai per „LinkedIn“.

10 veiksmas: epilogas - žinomos problemos ir „Outlook“

Epilogas - žinomos problemos ir „Outlook“
Epilogas - žinomos problemos ir „Outlook“
Epilogas - žinomos problemos ir „Outlook“
Epilogas - žinomos problemos ir „Outlook“

Šioje instrukcijoje aprašyta jutiklių stotis yra ilgo ir tęstinio tyrimo rezultatas. Tikslas yra sukurti patikimą, tikslią, tačiau nebrangią jutiklių sistemą patalpų aplinkos sąlygoms. Tai turėjo ir turi rimtų iššūkių, iš kurių čia reikėtų paminėti labiausiai tikėtinus:

Jutiklio tikslumas ir kalibravimas

Visi šiame projekte naudojami jutikliai pasižymi santykinai dideliu tikslumu už mažą ar vidutinę kainą. Daugelyje įrenginių yra vidinis triukšmo mažinimas ir skaitmeninės magistralės sąsajos ryšiui sumažinti, todėl nereikia kalibruoti ar reguliuoti lygio. Bet kokiu atveju, kadangi jutikliai yra sumontuoti dėžutėje ar ant jos su tam tikromis savybėmis, autoriai atliko visos jutiklių stoties kalibravimą, kaip trumpai parodyta pridėtose nuotraukose. Iš viso dešimt vienodai pastatytų jutiklių stočių buvo išbandytos nustatytomis aplinkos sąlygomis ir palygintos su profesionaliu patalpų klimato jutikliu TESTO 480. Iš šių bandymų buvo nustatyti kalibravimo koeficientai, įtraukti į pavyzdinį kodą. Jie leidžia paprastai kompensuoti korpuso ir elektronikos įtaką atskiriems jutikliams. Kad būtų pasiektas didžiausias tikslumas, rekomenduojama individualiai kalibruoti kiekvieną jutiklio stotį. Šios sistemos kalibravimas yra antrasis autorių tyrimų tikslas, be to, kaip toje instrukcijoje aprašyta plėtra ir konstrukcija. Jis aptariamas papildomame prijungtame leidinyje, kuris vis dar yra recenzuojamas ir bus čia susietas, kai tik jis bus paskelbtas internete. Daugiau informacijos šia tema rasite autorių svetainėje.

ESP32 veikimo stabilumas

Ne visos šiame kode naudojamos „Arduino“jutiklių bibliotekos yra visiškai suderinamos su ESP32 plokšte. Ši problema buvo plačiai aptariama daugelyje interneto taškų, ypač dėl I2C ir „OneWire“ryšio stabilumo. Vykdant šį procesą, atliekamas naujas kombinuotas klaidų aptikimas ir valdymas, pagrįstas jutiklių maitinimu tiesiogiai per ESP32 IO kaiščius, kad būtų galima nutraukti jų maitinimą iš naujo. Žvelgiant iš šiandienos perspektyvos, šis sprendimas nebuvo pateiktas arba nėra plačiai aptariamas. Jis atsirado dėl būtinybės, tačiau iki šiol veikia sklandžiai kelis mėnesius ir ilgiau. Tačiau tai vis dar yra tyrimų tema.

„Outlook“

Kartu su šia pamokoma, autoriai atlieka tolesnius rašytinius leidinius ir konferencijų pranešimus, kad skleistų plėtrą ir leistų plačiai ir atvirai naudoti. Tuo tarpu tyrimai tęsiami, siekiant dar labiau patobulinti jutiklių stotį, ypač sistemos projektavimo ir gaminamumo, sistemos kalibravimo ir tikrinimo srityse. Ši instrukcija gali būti atnaujinta apie svarbius būsimus įvykius, tačiau norėdami gauti visą naujausią informaciją, apsilankykite autorių svetainėje arba tiesiogiai susisiekite su autoriais per „LinkedIn“:

atitinkamas autorius: Mathias Kimmling

antrasis autorius: Konradas Lauenroth

tyrimo mentorius: prof. Sabine Hoffmann

Pirmą kartą autorius
Pirmą kartą autorius
Pirmą kartą autorius
Pirmą kartą autorius

Antroji premija pirmą kartą autoriui

Rekomenduojamas: