Tas ir tas, kā jūs pats izveidojat ziedputekšņu trauksmi

Internetā var atrast lieliskus siena drudža prognozētājus, kuru pamatā ir tādi faktori kā temperatūra, vējš un nokrišņi. Tomēr šie ziedputekšņu radari neņem vērā augu sugas, savukārt alerģija bieži notiek ar konkrētām sugām. Mēs izveidojam ziedputekšņu trauksmi, kas brīdina tikai par jūsu izvēlēto augu ziedputekšņiem noteiktā daudzumā.

Pārtikas preču saraksts

Piemēram, vietnē Martoparts.nl

1 NodeMCU modulis (€ 10)

Piemēram, vietnē Conrad.nl

1 spriegojuma atvieglojums M10 (€ 1)

1 PCB 80 × 50 mm (3,30 €)

1 plastmasas korpuss 85 × 56 × 39 mm (4,25 €)

1 skrūves spaile 2 polu (€ 0,20)

1 strāvas adapteris 5 V, 1 A (€ 6)

1 sarkana gaismas diode (0,10 €)

1 zaļa gaismas diode (0,10 €)

2 rezistori 100 omi (0,10 €)

Citi piederumi: lodāmurs un lodmetāls, sānu griezēji, skrūvgriezis, urbis, vīle, superlīme, viena pola vads (30 cm), multimetrs (pēc izvēles).

Kopējās izmaksas: aptuveni € 24,75

Pagājušās "ziemas" laikā daudziem siena drudža pacientiem jau bija sūdzības. Ikviens, kam ir alerģija pret alkšņa vai lazdu ziedputekšņiem, šogad tika skarts bezprecedenta sākumā, un, šķiet, mums būs jāpierod pie visu gadu ziedošiem augiem, kokiem un zālēm. Par laimi, lielākajai daļai cilvēku, kuriem ir alerģija pret ziedputekšņiem, kārta ir tikai laikā, kad zied konkrēts celms. Tāpēc ziedputekšņu trauksme ir noderīga tikai tad, ja tā to ņem vērā.

Protams, tas sākas ar ticamiem datiem, kas iegūti, atklājot ziedputekšņus. Mūsu avots ir Leidenes Universitātes Medicīnas centrs, kura plaušu slimību nodaļa katru nedēļu analizē gaisa paraugus. Tā ir tradicionāla meistarība: gaisa paraugus veido septiņas līmlentes sloksnes (viena katrai darba dienai), kuras pārbauda mikroskopā! Iknedēļas skaitīšanas rezultāti tiek publicēti LUMC vietnē.

Protams, šis skaitlis ir vietējs, un Leidenā konstatēto ziedputekšņu graudu daudzums var ievērojami atšķirties no Limburgas, tikai dažus minot. Neskatoties uz to, tas dod labu norādi un eksperimentējot ar lielumiem, datus var izmantot arī citās vietās. Mēs izmantojam tabulas skaitļus, lai noteiktu, vai augs pārsniedz noteiktu standartu. Ja tā, iedegas sarkana gaismas diode un pa e-pastu tiks nosūtīts brīdinājums. Ja vērtība atkal nokrītas zem standarta, sarkanā gaismas diode nodziest un sekos e-pasts ar paziņojumu, ka brīdinājums ir atsaukts.

Aparatūra

Aparatūras un mājokļu ziņā šis projekts izceļas ar vienkāršību. Lai visu lodētu, jums ir nepieciešams tīkla adapteris, kompakts korpuss un spriedzes noņemšanas elements, NodeMCU modulis, divi gaismas diodes, divi rezistori un PCB. Tāpēc šī ir ļoti piemērota shēma tiem, kas tikai sāk lodēt.

Zaļā gaismas diode norāda, ka sistēma darbojas un spēj izgūt datus no avota; sarkanā gaismas diode iedegas, kad tiek pārsniegts noteiktais putekšņu standarts izvēlētajiem augiem. Kontūru darbina vienkāršs tīkla adapteris ar 5 voltu, vismaz 1 ampēru. Tas var būt arī ar USB savienojumu, tādā gadījumā jums joprojām ir nepieciešams piemērots USB kabelis. Viss ir ievietots kompaktā plastmasas korpusā, kuram, protams, jūs varat arī kaut ko izgatavot vai atkārtoti izmantot pats. Visbeidzot, spriegojuma noņemšana novērš strāvas kabeļa izvilkšanu netīša spēka gadījumā.

Instalēt izstrādes vidi

ESP moduli visvieglāk ir ieprogrammēt ar Arduino izstrādes vidi (IDE). To var lejupielādēt šeit. Tā kā šī IDE galvenokārt nav paredzēta šim modulim, jums būs jāinstalē daži nepieciešamie komponenti. Klikšķiniet uz File / Preferences un ievadiet cilnē Iestatījumi Bite Papildu padomes pārvaldības vietrāži URL URL //arduino.esp8266.com/stable/package_esp8266com_index.json iekšā. Izvēlieties tūlīt Resursi / valde: / valdes vadība ... un ierakstiet esp. Tagad pievērsiet uzmanību: bibliotēkas nesaderības dēļ instalējiet programmas 2.4.2 versiju programmas pasta versijai sendemail.h ar jaunākām versijām. Versijai bez pasta izvēlieties jaunāko versiju.

Izvēlieties moduli, izmantojot Rīki / Dēlis / NodeMCU 1.0 (ESP-12E modulis). Pievienojiet ESP moduli, izmantojot USB kabeli, un izvēlieties pareizo portu Arduino IDE (Rīki / vārti, izvēlieties com portu ar vislielāko skaitu). Ja viss noritēja labi, iestatīšana tagad ir gatava sākt programmēšanu.

Pielāgojiet kodu

Gatavo programmu var lejupielādēt šeit. Ir pat divi varianti: tiem, kurus apmierina brīdinājuma gaismas diode un kuri neuzskata par nepieciešamu saņemt e-pastu, ir pieejama atdalītā versija. Tas ietaupa nepatikšanas, izveidojot kontu pasta pakalpojumu sniedzējam. Lejupielādējiet failu Ziedputekšņi.zip un izvelciet to jebkurā mapē. Atveriet failu ziedputekšņi.ino versijai bez pasta vai pollenmail.ino versijai ar pasta funkciju (veicot dubultklikšķi uz faila, tas automātiski tiek atvērts Arduino IDE, skatiet arī lodziņu "Instalēt izstrādes vidi"). Tālāk sniegtais skaidrojums ir balstīts uz pasta variantu, jo loģiski, ka tā ir versija, par kuru var pastāstīt visvairāk.

Atkārtoti uzpildiet ssid un paroli attiecīgi ievadiet sava bezvadu tīkla nosaukumu un paroli. Pārlūkprogrammā atveriet //sec.lumc.nl/pollenwebextern un nosakiet to augu rindas numurus, kurus vēlaties uzraudzīt. Kolonnu nosaukumu pirmā rinda netiek skaitīta, tāpēc Hazel ir 1. rinda, Els ir 2. rindiņa utt. Parauga kodā ir norādītas visbēdīgāko augu vērtības. Ērtāk tos aizstāt ar tiem, uz kuriem vēlaties paturēt acu priekšā. Ievadiet kodu Flora [] atbilstošie tabulas rindu numuri, atdalīti ar komatiem un pie slieksnis [] katra auga vērtība. To noteikt ir eksperimentu jautājums: pie 0 katra ziedputekšņu grauda no konkrēta auga rada trauksmi, un pie 100 ir ievērojams slieksnis. Ja jums ir liela alerģija pret alkšņu ziedputekšņiem un mazākā mērā pret bērzu ziedputekšņiem, pievienojiet Flora [] vērtības {2, 8} un ar slieksnis [] piemēram, vērtības {0, 20}. Pārliecinieties, ka skaitļu skaits abās rindās ir vienāds.

Lejupielādējiet vienu no divām gatavajām programmām vietnē pcmweb.nl

Iestatiet pasta kontu

Lai nosūtītu pastu, jums ir nepieciešams pasta serveris. Jūs to varētu instalēt modulī, taču ar to gandrīz noteikti rodas problēmas. Surogātpasta filtri neuzticas vēstulēm no nezināmiem avotiem, un tieši no moduļa sūtītās ziņas nesasniegs lielāko daļu adresātu. Šo problēmu var apiet, izmantojot pakalpojumu sniedzēju (bez maksas), piemēram, Mailjet.

Atveriet vietni www.mailjet.com un izveidojiet jaunu kontu, noklikšķinot uz Pierakstieties bez maksas. Lai izmantotu jauno kontu, jums jāapstiprina sava e-pasta adrese, noklikšķinot uz pogas vai saites apstiprinājuma e-pastā.

Piesakieties Mailjet un noklikšķiniet uz augšas Darījuma / SMTP. zemāk Akreditācijas dati tu redzi Lietotājvārds un Parole, abi ir nepieciešami jūsu programmā. Nokopējiet rakstzīmju virkni sadaļā User at server_login vietā USERNAME (starp divkāršām pēdiņām). Zemāk esošā virkne Parole nāk uz līniju servera parole vietā PAROLE. Smtp serveris (in-v3.mailjet.com) un ostas numuru (587) jau ir ievadīti. Aizpildiet vietu [email protected] Ievadiet e-pasta adresi, kuru izmantojat savam Mailjet kontam.

Sūtīt vēstules var arī, izmantojot Gmail. Lai izmantotu smtp serveri, jums būs jāsamazina konta drošība. Noklikšķiniet uz sava konta ikonas un pēc tam noklikšķiniet uz Pārvaldiet savu Google kontu / drošību un pārslēgties Piekļūstiet no mazāk drošām lietotnēm iekšā. Programmā izmantojat savu sūtītāja adresi un atbilstošo paroli, smtp.gmail.com Bite server_host un vārti 465 Bite server_port.

Koda skaidrojums

Kods sākas ar divu bibliotēku iegulšanu: ESP8266WiFi.h un sendemail.h. Pirmais apstrādā savienojumu ar bezvadu tīklu un apstrādā tīmekļa trafiku. Pateicoties šai programmai, moduli var savienot ar tīklu ar dažām koda rindiņām un izmantot kā tīmekļa klientu. Otrā bibliotēka kontrolē savienojumu ar pasta serveri, ļaujot programmai nosūtīt ziņojumus.

Mēs deklarējam dažas konstantes un mainīgos, no kuriem vissvarīgākie jau ir apspriesti iepriekšējos punktos. Apstrādājot datus, gaismas diodes tiek izslēgtas, un modulis izveido savienojumu ar WiFi. Ja tas izdosies, iedegsies zaļā gaismas diode.

Datu apstrāde

Funkcija iegūt informāciju () ir programmas sirds. Šeit tiek izgūta un analizēta tīmekļa lapa ar tabulu. Mainīgais brīdinājums par ziedputekšņiem iegūst vērtību nepatiesa un i iegūst vērtību 0. Kamēr brīdinājums par ziedputekšņiem ir nepatiess, tīmekļa lapa tiek lasīta pa rindām un vienlaikus apskatīta vai virkne ziedputekšņi kopā tajā notiek. Šī ir tabulas pēdējā sleja, kurā uzskaitīti visi augu ziedputekšņu graudi, kas tika saskaitīti pagājušajā nedēļā. Mainīgs i tiek palielināts par vienu un tagad tam ir vērtība 1. Šī cilpa cilpas caur tabulas rindām. Mainīgs j ir deklarēta un dota vērtība 0. Šī ir daļa no otrās cilpas, kas noņem visus elementus Flora [] un slieksnis [] jābūt pabeigtam.

Tagad elementi tiek noņemti no rindas Flora [] pa vienam, salīdzinot ar i lai noteiktu, kuri augi ir iesaistīti. Tajā teikts flora [0] pirmajam rindas elementam, tātad, ja tur 1 stāvoklī (tabulā lazda) šajā piemērā visi nosacījumi ir izpildīti. Tad tiek nolasīta nākamā rinda, kurā ir skaitļi. Funkcija toInt () kalpo, lai filtrētu atstarpes un citus atkritumus, atstājot tikai veselu skaitli, kas piešķirts mainīgajiem ziedputekšņiem. Ja šis skaitlis ir lielāks par atbilstošo vērtību rindā slieksnis [] (šajā gadījumā pirmā vērtība šajā rindā), ziedputekšņu trauksme kļūst patiesa un funkcija apstājas. Ja nē, tad j palielināts par vienu, un šādi elementi tiek izslēgti Flora [] un slieksnis [] salīdzinot ar i līdz vairs nav elementu. Tad i palielinot ar vienu, un no tabulas tiek nolasītas nākamās rindas. Kad visa tabula būs apstrādāta, mainīgie dati statusā būs patiesi un iedegsies zaļā gaismas diode.

Trauksme vai nē?

Funkcijas trauksme () un nav trauksmes () tiek izmantoti tikai pastu sūtīšanai, pirmais to dara ar jaunu trauksmi. Funkcija email.send () atgriež vērtību taisnība atpakaļ, ja nosūtīšana bija veiksmīga, un vērtība nepatiesa ja kaut kas noiet greizi. Konstrukcija tam izmantoja testus un atgriež mainīgo trauksme nosūtīta statusu taisnība. Kad trauksme ir notīrīta, funkcija kļūst nav trauksmes () izpildīts tāpat. Ja tas izdosies, tas arī iegūs trauksme nosūtīta statusu nepatiesa. Tas nozīmē, ka e-pasts tiek nosūtīts tikai tad, kad mainās statuss, neatkarīgi no tā, cik bieži šī funkcija tiek veikta.

Apskatiet katru stundu

Pēc skriešanas iegūt informāciju () šī funkcija aplūko mainīgos brīdinājums par ziedputekšņiem, datu ietvaros un trauksme nosūtīta. Ja pirmie divi ir patiesi, ir trauksme. Ieslēgsies sarkanā gaismas diode, un, ja tas vēl nav izdarīts, tiks nosūtīts trauksmes e-pasts. Pēc tam seko vienas stundas pārtraukums. Ir datu ietvaros vērtība taisnība un ziedputekšņu trauksmes vērtība nepatiesa, tad trauksmes nav un sarkanā gaismas diode nodziest. Ir trauksme nosūtīta vērtība taisnība (trauksmes e-pasts ir nosūtīts), tad seko e-pasts par trauksmes atcelšanu un saņemiet trauksme nosūtīta statusu nepatiesa. Pēc tam seko arī vienas stundas pārtraukums. Ir datu ietvaros statusu nepatiesa, izgūstot datus, kaut kas notika nepareizi. Zaļā gaismas diode nodziest, norādot, ka sistēma (īslaicīgi) nedarbojas, un seko vienas stundas pauze, pēc kuras cilpa () restartēt.

Augšupielādējiet un pārbaudiet programmatūru

Ja fails pollen_mail.ino pēc vēlēšanās pārveidots Arduino izstrādes vidē un ir pievienots NodeMCU modulis, augšupielāde var sākties. Lai pārbaudītu, vai tas darbojas, varat īslaicīgi pievienot augu (vai koku), kura tabulā tajā laikā noteikti ir ziedputekšņi. Atveriet sērijveida monitoru ar Ctrl + Shift + M un augšupielādējiet programmu ar Ctrl + U.

Pēc augšupielādes pabeigšanas vispirms vajadzētu redzēt, kā modulis vispirms izveido savienojumu ar bezvadu tīklu un pēc tam ar tīmekļa serveri. Tad seko pirmā iekārta, piemērojamā sliekšņa vērtība un izmērītā vērtība. Tad vērtības šādiem augiem. Ja viena no izmērītajām vērtībām pārsniedz šai iekārtai noteikto slieksni, tiek parādīts ziņojums Brīdinājums par ziedputekšņiem!, kam seko Pasts nosūtīts ar brīdinājumu par ziedputekšņiem. Ja visas vērtības paliek zem iestatītajām robežvērtībām, jūs to redzēsit tikai Nav brīdinājuma par ziedputekšņiem. Vai tas viss darbojas līdz šim? Tad jūs varat atvienot moduli.

Lai pārbaudītu, varat īslaicīgi pievienot augu, kura tabulā ir ziedputekšņi

Sagatavošana

Lai sāktu, urbjiet trīs caurumus korpusā: divus no 5 milimetriem gaismas diodēm un vienu no 10 milimetriem deformācijas noņemšanai. Jūs varat arī padarīt caurumu mazāku ar failu. Uzstādiet deformācijas noņemšanas ierīci un pārbaudiet, vai gaismas diodes ir piemērotas. Līmējiet tos korpusā ar superlīmi. Lodējiet arī kabeļus pie gaismas diodēm, lai tos varētu pielodēt pie PCB.

Veidojiet ķēdi

Kā jau atzīmēts, šī projekta aparatūra ir ierobežota. NodeMCU modulis, divi rezistori un skrūves spaile ir novietoti uz PCB. Lai sāktu, urbjiet 5 milimetru caurumus PCB stūros tā, lai tie ietilptu virs korpusa skrūvju atverēm.

Gudri ievietojot komponentus, tos var savstarpēji savienot ar lodmetālu. Paturiet prātā, ka (atkarībā no joslām uz shēmas plates) modulis var iestrēgt korpusā, un tajā ir tikai maz rezerves! Tāpēc vispirms turpiniet moduli uz PCB un pārliecinieties, vai tas turpinās korpusā. Pēc tam nofiksējiet moduli, nedaudz izliekot tapas katrā stūrī apakšā, piemēram, ar skrūvgrieža plakano galu. Pēc tam novietojiet rezistorus pie tapām D5 un D6 un visbeidzot skrūves spaile moduļa otrā pusē. Piemērā tam ir četri savienojumi, bet ir nepieciešami tikai divi. Arī rezistori un skrūves spaile vislabāk paliek vietā, ja nedaudz saliekat kājas. Tagad sagrieziet visas kājas (ieskaitot moduļa kājas) apmēram divu milimetru garumā ar knaibles un pielodējiet kopā savienojamās detaļas un tapas. Lodējiet arī četras moduļa stūra tapas, no kurām tikai viena tiks savienota ar skrūves spaili. Padomus par lodēšanu skatiet šajā visaptverošajā ceļvedī.

Savienojas

Apdare tagad ir vienkāršāka nekā jebkad agrāk, jo, pateicoties lietošanai gatavam korpusam, viss jau ir uz vietas. Atliek tikai pieslēgt tīkla adapteri un gaismas diodes. Lai sāktu, no kabeļa izgrieziet apaļo kontaktdakšu. Ja izmantojat USB strāvas adapteri, atvienojiet mikro USB savienotāju no USB kabeļa. Atsevišķus vadus noapaļojiet apmēram puscentimetru garumā un galus tiniet. Ja jums ir multimetrs, varat pārbaudīt savienojumu polaritāti (plus un mīnus). Ja jums tāda nav, varat pārbaudīt, vai uz (uz) viena no vadiem nav izdrukas. Vēl viena iespēja ir savienot LED ar 220 omu rezistoru vienā no kājām. Savienojiet vienu no adaptera vadiem ar rezistoru un otru vadu ar gaismas diodes brīvo kāju. Pluss ir vads, kas savienots ar LED garo kāju. Atzīmējiet šo vadu. Ievietojiet ar alvu pārklātos galus caur sastiepumu no ārpuses un nostipriniet tos PCB skrūves spailē ar pozitīvo vadu FIN nāk un rodas domu dēlis GND.

Visbeidzot, savienojiet gaismas diodes ar stieples gabaliem, kuru gali ir konservēti. Savienojiet abu LED katodus (īsās kājas) ar GND, pievienojiet zaļās gaismas diodes anodu (garo kāju) pie rezistora pie tapas D5 un sarkanais anods noveda pie rezistora D6.

Ekspluatācijā nodošana

Ķēde un programma jau ir pārbaudīta, tāpēc adapteri var ievietot kontaktligzdā. Tagad nav sērijveida monitora, tāpēc sākumā jūs neredzēsiet neko. Zaļajai LED vajadzētu iedegties dažu sekunžu laikā. Ja ne pēc minūtes, iespējams, ir problēma ar Wi-Fi, un jums būs jāpārvieto ķēde nedaudz tuvāk piekļuves punktam.

Ja tiek pārsniegts kodā norādītais ziedputekšņu standarts, iedegsies arī sarkanā gaismas diode un jūs saņemsit brīdinājuma e-pastu. Kaut arī programma apkopo datus katru stundu, ir labi saprast, ka pagaidām LUMC tos atsvaidzina tikai reizi nedēļā (otrdienas pēcpusdienā). Pārējās dienās statuss paliek nemainīgs, diemžēl tas neatšķiras. Jau šī iemesla dēļ noteikti ieteicams nepaaugstināt slieksni, lai jūs laikus saņemtu brīdinājumu.

Cerēsim uz zema ziedputekšņu gadu ar maz e-pastu!