MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU STRUČNI STUDIJ RAČUNARSTVA ALEN JAMBROVIĆ METEOROLOŠKA STANICA BAZIRANA NA ARDUINO PLATFORMI ZAVRŠNI RAD

Similar documents
Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

Podešavanje za eduroam ios

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

BENCHMARKING HOSTELA

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

Kooperativna meteorološka stanica za cestovni promet

ANALIZA PRIKUPLJENIH PODATAKA O KVALITETU ZRAKA NA PODRUČJU OPĆINE LUKAVAC ( ZA PERIOD OD DO GOD.)

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

1. Instalacija programske podrške

SAS On Demand. Video: Upute za registraciju:

Windows Easy Transfer

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

Port Community System

Tutorijal za Štefice za upload slika na forum.

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

STRUKTURNO KABLIRANJE

Mindomo online aplikacija za izradu umnih mapa

Nejednakosti s faktorijelima

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Upute za VDSL modem Innbox F60 FTTH

MEĐIMURSKO VELEUČILIŠTE ČAKOVEC STRUČNI STUDIJ RAČUNARSTVA MARKO LACKOVIĆ

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze

Nikša Maslović

Uvod u relacione baze podataka

RANI BOOKING TURSKA LJETO 2017

Web sučelje za instrumentaciju i sučelje čovjek-stroj

Upute za korištenje makronaredbi gml2dwg i gml2dgn

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu

Obrada, analiza i prikaz podataka mjerenja vjetra za istraživače

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA. DIPLOMSKI RAD br. 1 METEOROLOŠKA STANICA ZA UDALJENA MJERENJA.

Otpremanje video snimka na YouTube

DC MILIAMPERSKA MERNA KLJESTA,Procesna merna kljesta KEW KYORITSU ELECTRICAL INSTRUMENTS WORKS, LTD. All rights reserved.

PROJEKTNI PRORAČUN 1

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

Bušilice nove generacije. ImpactDrill

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

Office 365, upute za korištenje elektroničke pošte

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

- Italy. UNIVERZALNA STANICA ZA ZAVARIVANJE, SPOTER - sa pneumatskim pištoljem sa kontrolnom jedinicom TE95-10 KVA - šifra 3450

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine

Upotreba selektora. June 04

UPUTSTVO. za ruter TP-LINK TD-854W/ TD-W8951NB

TEHNIĈKO VELEUĈILIŠTE U ZAGREBU ELEKTROTEHNIĈKI ODJEL Prof.dr.sc.KREŠIMIR MEŠTROVIĆ POUZDANOST VISOKONAPONSKIH PREKIDAĈA

SVEUČILIŠTE U ZAGREBU FAKULTET STROJARSTVA I BRODOGRADNJE ZAVRŠNI RAD. Tomislav Leko. Zagreb, 2016.

DANI BRANIMIRA GUŠICA - novi prilozi poznavanju prirodoslovlja otoka Mljeta. Hotel ODISEJ, POMENA, otok Mljet, listopad 2010.

ECONOMIC EVALUATION OF TOBACCO VARIETIES OF TOBACCO TYPE PRILEP EKONOMSKO OCJENIVANJE SORTE DUHANA TIPA PRILEP

Mogudnosti za prilagođavanje

Programiranje. Nastava: prof.dr.sc. Dražena Gašpar. Datum:

CRNA GORA

UPUTE ZA UPORABU DIGITALNI SNIMAČI 4-16 KANALA V

MAKETA ZA DEMONSTRACIJU MAGNETSKE LEVITACIJE

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

VELEUĈILIŠTE NIKOLA TESLA U GOSPIĆU MYSQL SUSTAV ZA UPRAVLJANJE BAZAMA PODATAKA OTVORENOG KODA

ZAVRŠNI RAD. Izrada programske podrške za GSM modemski sklop za bežičnu komunikaciju s programabilnim logičkim kontrolerom.

Bear management in Croatia

Simulacija meteoroloških uvjeta u virtualnoj sceni

INTELIGENTNI MJERNI ČLAN ZA MJERENJE RAZINE VLAGE U ŽITARICAMA

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports.

Modelling Transport Demands in Maritime Passenger Traffic Modeliranje potražnje prijevoza u putničkom pomorskom prometu

MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU RAČUNARSTVO ROBERT PRAŠNIČKI

MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU STRUČNI STUDIJ RAČUNARSTVA SMJER: MREŽNO INŽENJERSTVO MATKO MARTEK MREŽNA KONFIGURACIJA I PROTOKOLI ZA POVEZIVANJE

Nikša Nikšić

WEB APLIKACIJA S BAZOM RECEPATA

3D GRAFIKA I ANIMACIJA

SVEUČILIŠTE JOSIPA JURJA STROSSMAYERA U OSIJEKU FAKULTET ELEKTROTEHNIKE RAČUNARSTVA I INFORMACIJSKIH TEHNOLOGIJ. Sveučilišni diplomski studij

RAZVOJ DINAMIČKIH WEB APLIKACIJA UPORABOM PHP-a I AJAX-a

WWF. Jahorina

TEHNO SISTEM d.o.o. PRODUCT CATALOGUE KATALOG PROIZVODA TOPLOSKUPLJAJUĆI KABLOVSKI PRIBOR HEAT-SHRINKABLE CABLE ACCESSORIES

Possibility of Increasing Volume, Structure of Production and use of Domestic Wheat Seed in Agriculture of the Republic of Srpska

Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima

EKSPLORATIVNA ANALIZA PODATAKA IZ SUSTAVA ZA ISPORUKU OGLASA

ONLINE APLIKACIJA ZA SLANJE OBAVIJESTI U PREDDEFINIRANO VRIJEME

GSM TRACING SVEUČILIŠTE U ZAGREBU. FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA Zavod za elektroničke sustave i obradu informacija

DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO DOO PODGORICA


Jačina vjetra - Beaufortova skala

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

Mjerenje brzine vrtnje pomoću programirljivog logičkog kontrolera

UTG 9005 GENERATOR FUNKCIJA UPUTE ZA KORIŠTENJE

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE

KABUPLAST, AGROPLAST, AGROSIL 2500

STRUČNA PRAKSA B-PRO TEMA 13

SMBWireless uputa za montažu opreme v4

Obrada podataka poslanih preko web formi

DALJINSKI NADZOR I UPRAVLJANJE BEŽIČNIM ČVOROVIMA

3D ANIMACIJA I OPEN SOURCE

APLIKACIJA ZA RAČUNANJE N-GRAMA

Advertising on the Web

DIZAJN ZIGBEE BEŽIČNE MREŽE ZA MONITORING STAKLENIKA

ANALIZA PRIMJENE KOGENERACIJE SA ORGANSKIM RANKINOVIM CIKLUSOM NA BIOMASU U BOLNICAMA

UPRAVLJANJE NAPRAVAMA SPOJENIM PREKO ARDUINO PLATFORME KROZ ARHITEKTURU INTERNETA STVARI

- je mreža koja služi za posluživanje prometa između centrala

IZRADA PORTALA O PROGRAMSKOM JEZIKU PYTHON U SUSTAVU ZA UREĐIVANJE WEB SADRŽAJA

Automatizirano upravljanje modelom električne kotlovnice PLC-om sa SCADA-om

SVEUČILIŠTE JOSIPA JURJA STROSSMAYERA U OSIJEKU FAKULTET ELEKTROTEHNIKE, RAČUNARSTVA I INFORMACIJSKIH TEHNOLOGIJA

Transcription:

MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU STRUČNI STUDIJ RAČUNARSTVA ALEN JAMBROVIĆ METEOROLOŠKA STANICA BAZIRANA NA ARDUINO PLATFORMI ZAVRŠNI RAD ČAKOVEC, 2016.

MEĐIMURSKO VELEUČILIŠTE U ČAKOVCU STRUČNI STUDIJ RAČUNARSTVA ALEN JAMBROVIĆ METEOROLOŠKA STANICA BAZIRANA NA ARDUINO PLATFORMI WEATHER STATION BASED ON AN ARDUINO PLATFORM ZAVRŠNI RAD MENTOR: dipl. ing. Jurica Trstenjak ČAKOVEC, 2016.

ZAHVALA Zahvaljujem se svom mentoru dipl. ing. Jurici Trstenjaku na podršci, pomoći i strpljenju tijekom izrade završnog rada. Također hvala tvrtci Međimurske vode d.o.o. koji su mi omogućili izradu završnog rada i njihovim radnicima na pomoći pri obavljanju fizičkog djela posla. Uz to posebno bih se htio zahvaliti asistentu Međimurskog veleučilišta struč.spec.ing.el. Bruni Palašeku na pomoći, vrlo korisnim sugestijama i savjetima tijekom izrade završnog rada. Međimursko veleučilište u Čakovcu I

SADRŽAJ 1. UVOD... 1 2. CILJ I DOPRINOS ZAVRŠNOG RADA... 2 3. METEOROLOŠKA STANICA... 3 3.1. Arduino mega 2560... 5 3.2. DHT22... 7 3.2.1. Spajanje senzora DHT22... 7 3.3. Anemometar... 9 3.3.1. Spajanje anemometra... 10 3.4. Pokazivač smjera vjetra... 12 3.4.1. Spajanje pokazivača smjera vjetra... 13 3.5. Piranometar... 15 3.5.1. Spajanje LDR otpornika na Arduino... 16 3.6. Kišomjer... 17 3.6.1. Spajanje kišomjera na Arduino... 18 3.7. Mjerač tlaka zraka... 20 3.7.1. Spajanje mjerača tlaka zraka na Arduino... 21 4. ARDUINO PLATFORMA... 22 5. MySQL BAZA PODATAKA... 23 5.1. Slanje podataka s Arduina u MySQL... 24 6. WEB STRANICA... 26 6.1. Spremanje vrijednosti u Excel tablicu... 26 7. ZAKLJUČAK... 28 LITERATURA... 29 POPIS SLIKA... 30 POPIS TABLICA i KODOVA... 31 Međimursko veleučilište u Čakovcu II

SAŽETAK osmišljena je radi jednostavnijeg pregledavanja vremenskih parametara. Arduino softver se koristi za programiranje Arduino mega 2560 mikroupravljačke pločice koja sadrži analogne ulaze te digitalne ulaze i izlaze. Svaki se senzor spaja na poseban ulaz, odnosno senzor temperature, vlažnosti i kišomjer se spajaju na digitalne ulaze dok se anemometar, piranometar, mjerač tlaka zraka i pokazivač smjera vjetra spajaju na analogne ulaze. Vrijednosti za senzore dohvaćaju se pomoću Arduino koda i pohranjuju u varijable te se one prenose u MySQL bazu podataka na serveru sa mogućnošću bilježenja vremena. Jednom pohranjenje vrijednosti koriste se za prikaz na web stranici koja se osvježava svakih 30 sekundi zbog variranja vrijednosti i mogućnosti naglih promjena. Za praćenje vremena unatrag više mjeseci postoji mogućnost spremanja vrijednosti od početka rada meteorološke stanice u Excel dokument. Navedenu mogućnosti imaju samo ovlašteni korisnici koji se prijavljuju svojim korisničkim imenom i lozinkom. U pismenom dijelu rada opisana je meteorološka stanica te su navedeni njeni dijelovi, odnosno senzori koji su spojeni na nju. U nastavku su definirani uređaji za praćenje vremena pa su na taj način objašnjeni DHT22 senzor, anemometar, pokazivač smjera vjetra, piranometar, kišomjer i mjerač tlaka zraka. Svaki od uređaja ima opis te sliku sa pripadajućim shemama, dijelovima koda za upravljanje vrijednostima uređaja i sam tablični prikaz nekih od vrijednosti. Nakon toga slijedi opis Arduino platforme i mogućnosti koje ona pruža. Završni dio rada obuhvaća izradu i razvoj MySQL baze podataka i tablice s vrijednostima, a navedene su i prednosti koje baza pruža spremanjem podataka u arhivu. Nadalje, razvijena je web stranica jednostavnog i preglednog dizajna koja prikazuje ispis vrijednosti izmjerenih podataka i njihovih mjerenja kroz cijeli dan te je na taj način moguć uvid u aktualne i trenutne podatke o vremenu. Uz to moguće je i spremanje izmjerenih vrijednosti u zaseban Excel dokument. Ključne riječi: Arduino, Arduino mega 2560, Anemometar, Piranometar, MySQL, Web stranica, Excel Međimursko veleučilište u Čakovcu III

1. UVOD Meteorologija i praćenje vremenskih prilika ili neprilika sastavni je dio života te ljudi gotovo svaki dan prate vremensku prognozu iz nekolicine razloga. Saznanje o vremenu idući dan ili tjedan ljudima omogućuje planiranje raznih aktivnosti, od poslovnih pa sve do obiteljskih izleta ili kratkih putovanja. Samim time može se zaključiti da ljudi ovise o vremenskim prilikama, dok je ono posebno važno za poljoprivrednike, vinogradare, građevinare, šumare, ribare itd. Djelatnici koji se bave tim djelatnostima moraju u svakom trenutku točno znati kolika je temperatura zraka, količina vlage u zraku, tlak zraka, jačina vjetra i slično. Također, meteorološka stanica vrlo je isplatljiva za korisnike radi olakšavanja organizacije posla. Upravo zbog navedenih važnosti i zbog problema današnjice po pitanju vremena i vremenskih prilika, izrađena je meteorološka stanica bazirana na Arduino 1 platformi. Svrha meteorološke stanice je omogućavanje korisniku pregled vremenskih parametara na udaljenom mjestu sa svog računala ili bilo kojeg drugog uređaja koji ima pristup internetu. S obzirom da podaci koji su ponekad dostupni na raznim web stranicama koje predviđaju vremensku prognozu mogu biti netočni, ovim projektom bi se ostvario pristup trenutnim vremenskim uvjetima na nekom mjestu u bilo koje doba. 1 Otvorena softverska platforma Međimursko veleučilište u Čakovcu 1

2. CILJ I DOPRINOS ZAVRŠNOG RADA Cilj ovog rada je razviti meteorološku stanicu koja omogućuje pregledavanje vremenskih parametara s osobnog računala preko web stranice. Izrada rada potaknuta je potrebom tvrtke Međimurske vode d.o.o. kojima su te informacije vrlo važne i svakodnevno potrebne. Informacije dobivene sa meteorološke stanice koriste se za potrebe crpilišta, a osim toga šalju se na DHMZ 2. Na taj bi se način izradom ovog projekta doprinjelo lakšem i jednostavnijem pristupu potrebnim informacijama. Uz to meteorološku stanicu mogu koristiti ljudi u privatne svrhe radi osobnih potreba i djelatnosti kojima se bave i u kojima je potrebno znanje vremenskih prilika. 2 DHMZ je državni hidrometeorološki zavod koji od crpilišta u Nedelišću prikuplja informacije o meteorološkim vrijednosti kako bi ih svakodnevno bilježili na svojim web stranicama [1]. Međimursko veleučilište u Čakovcu 2

3. METEOROLOŠKA STANICA Meteorološka stanica služi za bilježenje vremenskih prilika na nekom području. Navedeno bilježenje omogućavaju senzori koji prirodne vrijednosti pretvaraju u digitalne. Stanica je realizirana pomoću Arduino mega 2560 mikroupravljačke ploče na koju su spojeni senzori te se njeni dijelovi nalaze u nastavku. Prikaz meteorološke stanice nalazi se na slici 3.1. Dijelovi meteorološke stanice: 1. Arduino mega 2560 - mikroupravljačka ploča za povezivanje senzora 2. Senzor DHT22 - senzor temperature i vlažnosti zraka 3. Anemometar - uređaj za mjerenje brzine vjetra 4. Pokazivač smjera vjetra 5. Piranometar - uređaj za mjerenje sunčevog zračenja 6. Kišomjer - uređaj za mjerenje količine padalina 7. Mjerač tlaka zraka Ostale korištene tehnologije za izradu meteorološke stanice i web stranice su: 1. Arduino platforma 2. Linux Server 3. MySQL 4. Php web stranica Međimursko veleučilište u Čakovcu 3

Slika 3. 1. Meteorološka stanica 1 2 3 4 5 6 Izvor: autor Na slici 3.1. nalazi se meteorološka stanica te su označeni njeni dijelovi. Pod brojem 1. nalazi se pokazivač smjera vjetra, dok je anemometar označen brojem 2. Uređaj za mjerenje sunčevog zračenja ili piranometar je označen brojem 3, a senzor za temperaturu i vlažnost zraka brojem 4. Brojem 5 prikazan je mjerač tlaka zraka dok broj 6 prikazuje kišomjer. Međimursko veleučilište u Čakovcu 4

3.1. Arduino mega 2560 Arduino mega 2560 je mikroupravljačka ploča koja je korištena za izrađivanje meteorološke stanice. Koristi se za zahtjevnije projekte jer ima više ulaznih i izlaznih priključnica. Za povezivanje Arduino mega 2560 mikroupravljačke ploče sa računalom s kojeg se prenosi program koristi se običan USB kabel i prijenos programa odvija se jako brzo. Na slici 3.1.1. nalazi se prikaz mikroupravljačke ploče. Tehnički podaci: Napon rada: 5V Ulazni napon: 7-12V Digitalne ulazno/izlazne priključnice: 54 Analogne ulazne priključnice: 16 EEPROM: 4 KB SRAM: 8 KB Flash memorija: 256 KB [2] Na Arduino mega 2560 spojeni je Arduino ethernet shield W5100 3. Za komunikaciju s Arduino mega 2560 mikroupravljačkom pločicom koristi se ICSP konektor koji se nalazi na pločici. Napon rada ethernet shielda je 5V i na njemu se nalazi standardni konektor za povezivanje na Internet. Riječ je o RJ-45 4 konektoru kojeg koriste gotovo svi UTP mrežni kabeli. Brzina prijenosa podataka na Arduino ethernet shieldu kreće se od 10 do 100 Mbit/s što je vrlo brza i jednostavna konekcija [3]. Slika 3.1.2. prikazuje Arduino ethernet shield W5100. 3 Ethernet shield W5100 pločica s utorom za mrežni UTP kabel 4 RJ-45 konektor - standardni konektor za mrežni UTP ili STP kabel Međimursko veleučilište u Čakovcu 5

Slika 3.1. 1. Arduino mega 2560 Izvor: http://www.robotshop.com/en/arduino-mega-2560-microcontroller-rev3.html Slika 3.1. 2. Arduino ethernet shield W5100 Izvor: https://store.arduino.cc/product/a000072 Međimursko veleučilište u Čakovcu 6

3.2. DHT22 DHT22 je kapacitivni senzor temperature i vlažnosti zraka koji ima četiri nožice za spajanje s Arduino mikroupravljačkom pločicom. Jako je malenih dimenzija i vrlo praktičan za korištenje. Pozitivna stvar ovog senzora je niska i prihvatljiva cijena i dostupan je u puno trgovina sa elektroničkim komponentama. Senzor je tako pristupačan svim ljudima i vrlo jednostavan za korištenje. Arduino i DHT22 komuniciraju preko ulazno/izlazne digitalne priključnice na Arduinu. Tehnički podaci: Napon : 3.3 5.5 V Struja: 300 µa Najniža temperatura: -40 C Najviša temperatura: +80 C Vrijeme mjerenja: 2 s [4] Slika 3.2. 1. DHT22 senzor temperature i vlažnosti Izvor: https://e-radionica.com/hr/blog/2015/10/18/kkm-dht22/ 3.2.1. Spajanje senzora DHT22 Senzor je spojen na Arduino mikroupravljačku ploču sa nožice broj 1 na 5V, sa nožice broj 2 na digitalni ulaz D21 i za povezivanje je potreban pull-up otpornik od 4,7 kω koji služi za zadržavanje vrijednosti koja se prenosi sve dok ga Arduino ne promjeni, a Međimursko veleučilište u Čakovcu 7

sa nožice broj 4 na uzemljenje ili GND. Nožica broj 3 ostaje odspojena. Bitno je samo da senzor ne bude na otvorenom i u doticaju s vodom pa ga je upravo zbog toga najbolje smjestiti u kućište s krovom gdje on ima otvor kroz koji može mjeriti temperaturu i vlagu zraka. Što se tiče temperature tijekom cijele godine u Hrvatskoj uglavnom se kreće od otprilike -20 C pa do kojih 35 C. Tako da je raspon mjerenja od -40 C do +80 C dovoljno za mjerenje temperature tijekom cijele godine u Hrvatskoj. Na slici u nastavku nalazi se opisana shema spajanja senzora na Arduino. Slika 3.2.1. 1. Shema spajanja DHT22 senzora na Arduino Izvor: autor Kod 1 prikazuje dohvaćanje vrijednosti temperature i vlažnosti zraka. U DHT biblioteci 5 ima unaprijed definiranih funkcija za čitanje vrijednosti temperature i vlažnosti zraka. Kod prikazuje spremanje vrijednosti temperature u varijablu t i vrijednosti vlažnosti zraka u varijablu h. Dakle prikazuje slanje vrijednosti iz tih varijabli u bazu podataka i njihovo daljnje upravljanje njima. 5 Biblioteka s dijelom programa za DHT22 senzor Međimursko veleučilište u Čakovcu 8

Kod 1. Upravljanje vrijednostima temperature i vlažnosti zraka h = dht.readhumidity(); t = dht.readtemperature(); client.print("get/meteo/add_data.php?"); client.print("tag="); client.print("temperatura");client.print("&"); client.print("value=");client.print(t); client.print("get/meteo/add_data.php?"); client.print("tag=");client.print("vlaznost"); client.print("&");client.print("value=");client.print(h); Prilikom mjerenja temperature i vlažnosti zraka sa DHT22 senzorom, vrijednosti su uspoređene sa stvarnima koje su izmjerene drugim termometrom. Uočeno je maksimalno odstupanje od ±0.4 stupnja od stvarne temperature te ±0.5% odstupanje za vlažnost zraka. 3.3. Anemometar Anemometar je uređaj za mjerenje brzine vjetra. Obično se mjeri u m/s ili u čvorovima. Preko senzora na kojem su tri polukružne lopatice koje se okreću se mjeri brzina vjetra okretanjem tih lopatica. Senzor mora biti postavljen na nekoj određenoj visini iznad tla kako bi se izmjerila što točnija vrijednost. Tehnički podaci: Napon: 7-24 V Izlazni napon: 0.4 2 V Strujna proizvodnja: 4 ma Početna brzina vjetra: 0.6 m/s Maksimalna brzina vjetra: 60 m/s (216 km/h) [4] Međimursko veleučilište u Čakovcu 9

Slika 3.3. 1. Anemometar Izvor: autor 3.3.1. Spajanje anemometra Senzor je spojen na analogni ulaz A0 i za spajanje su potrebni otpornici od sveukupno 3,7 kω. Otpornici služe kao dijeljilo napona jer je izlazna vrijednost napona od 0 do 24V, a Arduino radi s vrijednostima od 0 do 5V. Kako je za brzinu od 0 m/s vrijednost napona maksimalna tj. 5V vrijednost se u varijablu sprema od 35m/s do 0 m/s. Brzina vrtnje lopatica na senzoru prikazuje vrijednosti od 0 do 1024, što je pretvoreno u brzinu od 35 m/s do 0 m/s. Vrijednost brzine puhanja vjetra mjeri se konstantno, ali se vrijednosti kao prosjek šalju u bazu podataka svakih 32 sekunde kako bi se vidjele promjene u brzinama. Shema spajanja prikazana je na slici 3.3.1.1. Slika 3.3.1. 1. Shema spajanja anemometra na Arduino Izvor: autor Međimursko veleučilište u Čakovcu 10

Kod 2 prikazuje upravljanje vrijednostima brzine puhanja vjetra dok se u tablici nalaze brzine vjetra u m/s, km/h te sam naziv vjetra. Kod 2. Upravljanje vrijednostima brzine puhanja vjetra brzina_vjetra_ulaz = analogread(a0); brzina_vjetra = map(brzina_vjetra_ulaz, 0, 1023, 35, 0); client.print("get/meteo/add_data.php?"); client.print("tag=");client.print("brzina_vjetra"); client.print("&");client.print("value="); client.print(brzina_vjetra); Usporedba stvarne i izmjerene brzine vjetra u ovom slučaju nije moguća jer se senzor i ručni mjerni instrument ne nalaze na istoj visini. Tablica 1. Brzine vjetra. m/s km/h naziv vjetra 0 0,3 = 0 0 1,08 TIŠINA 0,4 1,4 = 1 1,44 1,08 LAGANI POVJETARAC 1,5 3,1 = 2 5,40 11,16 POVJETARAC 3,2 5,3 = 3 11,52 19,08 SLAB VJETAR 5,4 7,8 = 4 19,44 28,08 UMJEREN VJETAR 7,9 10,6 = 5 28,44 38,16 JAČI VJETAR 10,7 13,6 = 6 38,52 48,96 JAK VJETAR 13,7 16,9 = 7 49,32 60,84 VRLO JAK VJETAR 17,0 20,6 = 8 61,20 74,16 OLUJNI VJETAR Međimursko veleučilište u Čakovcu 11

20,7 24,4 = 9 74,52 87,84 OLUJA 24,5 28,3 = 10 88,20 101,88 JAKA OLUJA 28,4 32,5 = 11 102,24 117,60 ORKANSKA OLUJA 32,6 35,0 = 12 117,76 126,00 ORKAN Izvor: autor 3.4. Pokazivač smjera vjetra Pokazivač smjera vjetra je uređaj koji pokazuje smjer puhanja vjetra. Smjerovi puhanja vjetra označavaju se engleskim nazivima za strane svijeta. Najbitnije je kod postavljanja senzora da se označeno mjesto za sjever postavi prema sjeveru kako bi mjerenja bila točna. Smjerovi puhanja vjetra i nazivi na Jadranu: N (Sjever) - Tramontana E (Istok) - Levanat W (Zapad) - Pulenat S (Jug) - Oštro NE (Sjeveroistok) - Bura NW (Sjeverozapad) - Maestral SE (Jugoistok) - Jugo SW (Jugozapad) Lebić [6] Slika 3.4. 1. Pokazivač smjera vjetra Izvor: autor Međimursko veleučilište u Čakovcu 12

3.4.1. Spajanje pokazivača smjera vjetra Shema spajanja pokazivača smjera vjetra na Arduino prikazana je na slici 3.4.1.1. Senzor za pokazivanje smjera vjetra spojen na analogni ulaz A1 na Arduino. Za spajanje je potreban otpornik od 470 Ω, zbog situacije gdje se prelazi iz maksimalne vrijednosti u minimalnu jer se senzor vrti u krug. U slučaju kad nema otpornika tijekom prelaska iz punog kruga na 0 Arduino mikrokontrolerska pločica bi se resetirala zbog kratkog spoja. Otpornik uklanja stvaranje kratkog spoja i tako omogućava čitanje vrijednosti smjera vjetra. Vrijednosti smjera vjetra kreću se od 0 do 360. Vrijednosti ulaza ne čitaju se od standardnih 0 do 1023, nego se zbog otpornika taj raspon smanjio i sad je od 0 do 707. Sada se vrijednosti ulaza od 0 do 707 pretvaraju u stupnjeve od 0 do 360. Slika 3.4.1. 1. Shema spajanja pokazivača smjera vjetra na Arduino Izvor: autor Upravljanje vrijednostima smjera vjetra prikazano je u kodu 3., a vrijednosti vjetra zajedno sa pripadajućim smjerovima nalaze se u tablici 2. Međimursko veleučilište u Čakovcu 13

Kod 3. Upravljanje vrijednostima smjera puhanja vjetra smjer_vjetra_ulaz = analogread(a1); smjer = map(smjer_vjetra_ulaz, 0, 707, 0, 360); cal_smjer = smjer +Offset; client.print("get /meteo/add_data.php?"); client.print("tag=");client.print("smjer_vjetra"); client.print("&");client.print("value="); client.print(cal_smjer); Tablica 2. Smjerovi vjetra i vrijednosti. Vrijednost ulaza( ) Smjer Naziv 348,8 11,2 N SJEVER 11,3 33,7 NNE SJEVER SJEVEROISTOČNI 33,8 56,2 NE SJEVEROISTOČNI 56,3 78,7 ENE ISTOČNI SJEVEROISTOČNI 78,8 101,2 E ISTOČNI 101,3 123,7 ESE ISTOČNI JUGOISTOČNI 123,8 146,2 SE JUGOISTOČNI 146,3 168,7 SSE JUGO JUGOISTOČNI Međimursko veleučilište u Čakovcu 14

168,8 191,2 S JUG 191,3 213,7 SSW JUGO JUGOZAPADNI 213,8 236,2 SW JUGOZAPAD 236,3 258,7 WSW ZAPAD JUGOZAPAD 258,8 281,2 W ZAPAD 281,3 303,7 WNW ZAPAD SJEVEROZAPAD 303,8 326,2 NW SJEVEROZAPAD 326,3 348,7 NNW SJEVER SJEVROZAPAD Izvor: autor 3.5. Piranometar Piranometar je uređaj koji mjeri zračenje Sunca koje pada na neku vodoravnu plohu. Mjeri se u W/m 2 na plohi koja hvata zrake u 180. Važno je napomenuti da je vrlo bitno postaviti piranometar na mjesto gdje nema sjene. Zbog nefunkcioniranja piranometra za mjerenje Sunčevog zračenja koristi se LDR 6 otpornik ili fotootpornik. Fotootpornik prikazuje vrijednosti otpora primanjem svjetlosti na njegovu površinu [7]. Slika 3.5.1. prikazuje LDR fotootpornik. 6 LDR fotootpornik (mijenja otpor razinom Sunčeve svjetlosti) Međimursko veleučilište u Čakovcu 15

Slika 3.5. 1. LDR fotootpornik Izvor: http://projectshopbd.com/wp-content/uploads/2014/09/ldr-1.jpg 3.5.1. Spajanje LDR otpornika na Arduino LDR fotootpornik je spojen na Arduino mikroupravljačku pločicu na analogni ulaz A2. Fotootpornik radi na principu sakupljanja svjetlosti i mijenjanja vrijednosti električnog otpora jačinom sunčeve svjetlosti na fotootporniku. Vrijednosti otpora pretvorene su u jedinice jakosti Sunčeve svjetlosti i tako se mogu prikazivati i slati u bazu podataka. Na slici 3.5.1.1. nalazi se shema spajanja LDR fotootpornika na Arduino. Međimursko veleučilište u Čakovcu 16

Slika 3.5.1. 1. Shema spajanja LDR fotootpronika na Arduino Izvor: autor 3.6. Kišomjer Kišomjer instrument koji se koristi za mjerenje količine padalina po kvadratnom metru. Kao mjerna jedinica koristi se milimetar po kvadratnom metru (mm/m 2 ) ili litra po kvadratnom metru (l/m 2 ). Kišomjerom se mogu mjeriti sve vrste padalina poput kiše pa tako i snijeg [8]. Kišomjer mogu koristiti ljudi u svim područjima, čak i za kućnu upotrebu u dvorištu ili vrtu. S obzirom na to da je voda potrebna svim vrstama biljki i svaka od njih ima određenu dozu unosa, pomoću kišomjera može se vidjeti ako je tlo dovoljno vlažno po izmjerenoj količini padalina ili je potrebno određenu biljku zalijati. Uz to, kišomjer može biti vrlo koristan uređaj i za poljoprivrednike. Takav jedan uređaj prikazan je na slici u nastavku. Međimursko veleučilište u Čakovcu 17

Slika 3.6. 1. Kišomjer Izvor: autor 3.6.1. Spajanje kišomjera na Arduino Kišomjer je spojen na Arduino mikroupravljačku ploču na digitalni ulaz D34 i za povezivanje je potreban kondenzator C kapaciteta 100nF koji služi za izglađivanje (engl. debouncing) signala kako bi se mogla vidjeti promjena iz stanja niskog napona u stanje visokog napona. Kišomjer radi na principu dvije posudice svaka od 0,1 ml koje se pune vodom, ukoliko se napuni 0,1 ml u jednoj voda se prelije, napravi se kratki spoj i šalje se signal da je palo 0,1 ml kiše. Dnevna količina padalina u pravilu ne prelazi količinu od 80 L po kvadratnom metru no bilo je slučajeva kada ta količina prelazi maksimalnu. U Hrvatskoj je bio slučaj kada je u 24 sata palo 96 L po metru kvadratnom i tako postavilo novu maksimalnu vrijednost. DHMZ je dana 07. kolovoza 2014. godine zabilježio tih rekordnih 96 L po metru kvadratnom u Karlovcu. Slika 3.6.1.1. prikazuje mehanizam rada kišomjera, a sama shema spajanja nalazi se na slici 3.6.1.2. Međimursko veleučilište u Čakovcu 18

Slika 3.6.1. 1. Mehanizam rada kišomjera Izvor: autor Slika 3.6.1. 2. Shema spajanja kišomjera Izvor: autor Međimursko veleučilište u Čakovcu 19

Kod 4. prikazuje dobivanje vrijednosti sa kišomjera. Moguća vrijednost koja dolazi sa kišomjera je 1 što znači impuls ili da je količina padalina napunila spremnik od 0,1 ml napravila kratki spoj i poslala impuls ili vrijednost 1. Kod 4. Upravljanje podacima kišomjera kisa = digitalread(34); client.print("get/meteo/add_data.php?");client.print("tag="); client.print("kisa");client.print("&");client.print("value="; client.print(padaline); 3.7. Mjerač tlaka zraka Uređaj koji služi za mjerenje tlaka zraka. Mjerna jedinica je hpa ili bar. 1013 hpa je standardna vrijednost atmosferskog tlaka zraka. Anticiklona je područje višeg tlaka zraka od 1013 hpa, a ciklona područje nižeg. Mjerač tlaka zraka nalazi se na slici ispod. Slika 3.7. 1. Mjerač tlaka zraka Izvor: autor Međimursko veleučilište u Čakovcu 20

3.7.1. Spajanje mjerača tlaka zraka na Arduino Mjerač tlaka zraka je na Arduino spojen na analogni ulaz A3. Radi na principu otpornika koji vraća kao vrijednost otpora. Raspon mjerenja je od 0 do 100Ω, a to su vrijednosti od 915 do 1025 hpa. Slika 3.7.1.1. prikazuje shemu spajanja mjerača tlaka zraka na Arduino Slika 3.7.1. 1. Shema spajanja mjerača tlaka zraka na Arduino Međimursko veleučilište u Čakovcu 21

4. ARDUINO PLATFORMA Arduino je otvorena softverska platforma kojom omogućujemo spajanje računala sa prirodnim pojavama i spremanje njihovih vrijednosti. Arudino pločice mogu dohvaćati podatke i vrijednosti sa senzora i ostalih vanjskih elemenata, te ih spremiti ili koristiti na računalu. Mogu pokretati druge dijelove pomoću signala koji se šalju kroz njih [9]. Izgled programa Arduino nalazi se na slici 4.1. Mikroupravljači se programiraju u Arudino pogramskom jeziku koji je verzija C-a s malim promjenama. Programi u Arduinu mogu se podijeliti u 3 vrste: strukture varijable funkcije Strukture koriste različite operacije (+,-,*,%), uspoređivanja (<,=,>,<=,!=) poznate petlje (WHILE, DO-WHILE, FOR, SWITCH-CASE ) i drugo. Varijable sadrže konstante (HIGH LOW, true false ), tipove podataka (CHAR, FLOAT, INT, BOOLEAN ), dok su funkcije digitalne (digitalwrite(), digitalread() ) ili analogne (analogread(), analogwrite() ) [10]. Slika 4. 1. Izgled programa Arduino Izvor: autor (slika zaslona) Međimursko veleučilište u Čakovcu 22

5. MySQL BAZA PODATAKA Podaci koji dolaze sa senzora na Arduino moraju se negdje spremati. Ovdje se spremaju u MySQL 7 [11] bazu podataka na serveru. Podaci se šalju Ethernet shieldom pomoću mrežnog kabela do usmjernika (engl. router) koji pomoću Wi-Fi mreže šalje podatke u bazu na serveru. Svaki podatak ima svoju oznaku (engl. Tag), vrijednost (engl. Value) i vrijeme (engl. Timestamp) kad je poslana vrijednost sa senzora. Svaka vrijednost dolazi u bazu podataka u različitim vremenskim intervalima jer recimo temperatura zraka se ne mijenja brzo, dok recimo vjetar može puhati na udare pa su promjene česte. Struktura baze podataka nalazi se na slici 5.1. Slika 5. 1. Struktura baze podataka Izvor: autor (slika zaslona) Vrijednosti u bazi podataka koje dolaze sa senzora spremaju se u spomenutu bazu i na taj način se može lako vidjeti povijest vrijednosti i njihove promjene kroz vrijeme. To olakšava lakše statistike za vremenske prilike tijekom godine. Slika 5.2. prikazuje upravo takve vrijednosti bilježene kroz povijest. 7 MySQL baza podataka Međimursko veleučilište u Čakovcu 23

Slika 5. 2. Izgled baze podataka s vrijednostima Izvor: autor (slika zaslona) 5.1. Slanje podataka s Arduina u MySQL Za slanje vrijednosti koje dolaze na Arduino sa senzora potrebna je PHP stranica koja u svom kodu ima potrebne podatke za povezivanje na bazu podataka. Potrebni su IP adresa servera na kojem se nalazi baza podataka, korisničko ime i lozinka za pristup bazi podataka. Podaci se s Arduina šalju na način da se navede točno polje u bazi podataka s jednakim nazivom kako bi se vrijednost spremila u točnu tablicu. Kod 5 prikazuje slanje podataka, dok se u kodu 6 nalazi prikaz slanja podataka u bazu. Međimursko veleučilište u Čakovcu 24

Kod 5. PHP kod za slanje podataka s Arduina <?php $dbusername = "****"; //korisnicko ime $dbpassword = "********"; //lozinka $server = "*********"; //IP adresa servera $dbconnect = mysql_pconnect($server, $dbusername, $dbpassword); $dbselect = mysql_select_db("meteo",$dbconnect); $sql = "INSERT INTO meteo.test (tag,value,timestamp) VALUES ('".$_GET["tag"]."','".$_GET["value"]."','".$_GET["timestamp"]."')"; mysql_query($sql); Kod 6. Arduino kod slanje podataka u bazu if (client.connect(server, port)) { client.print("get /meteo/add_data.php?"); client.print("tag=");client.print("smjer_vjetra"); client.println(" HTTP/1.0"); client.println();client.println(); client.stop(); } else { client.stop();softreset(); } Međimursko veleučilište u Čakovcu 25

6. WEB STRANICA Za prikaz vrijednosti na bilo kojem mjestu i u bilo koje vrijeme korištena je web stranica izrađena u PHP 8 -u [12]. Vrijednosti sa senzora zabilježene su u bazi podataka i pomoću PHP-a možemo njima manipulirati. Web stranica je uređena tako da se osvježava (engl. Refresh) svakih 30 sekundi kako bi se stalno ažurirale vrijednosti koje dolaze iz baze. Izgled stranica nalazi se na slici 6.1. Slika 6. 1. Izgled web stranice Izvor: autor (slika zaslona) 6.1. Spremanje vrijednosti u Excel tablicu Na web stranici je moguće povijest podataka skinuti u Microsoft Office Excel tablicu gdje se one mogu prosljeđivati i prenositi radi evidencije. Prijavom sa korisničkim imenom i lozinkom možemo utvrditi administratorsku aktivnost te tako omogućava skidanje vrijednosti iz baze podataka. Isto se tako može i iscrtati graf padalina po danima u mjesecu. 8 PHP programski jezik za programiranje web stranica Međimursko veleučilište u Čakovcu 26

Slika 6.1. 1. Podaci u Excel tablici Izvor: autor (slika zaslona) Međimursko veleučilište u Čakovcu 27

7. ZAKLJUČAK Praćenje vremenskih uvjeta važno je u današnjem životu, naročito zbog organizacije dnevnih ili tjednih aktivnosti. Spomenuti vremenski uvjeti prate se pomoću meteorološke stanice koja bilježi temepraturu, tlak zraka, vlažnost i drugo. Također, u današnje vrijeme velikog napretka i tehnologije te ubrzanog stila života vrlo je bitno imati podatke koji nam trebaju za rad. Cilj ovog završnog rada je ostvaren, odnosno razvijena je meteorološka stanica koja je bazirana na te je omogućeno praćenje vrijednosti koje senzori dohvaćaju. Nadalje, u radu su objašnjeni dijelovi meteorološke stanice te je za svaki navedeni dio prikazan kod i shema spajanja uređaja na mikroupravljačku ploču Arduino mega 2560. Velika prednost ovakvog razvoja meteorološke stanice je u tome što je rad sa Arduino pločom dosta jednostavan te ga je lako isprogramirati. Također, meteorološka stanica je korisna upravo zbog brzine dostupnih podataka, njihove preglednosti na jednom mjestu, a to što su dostupni na bilo kojem uređaju koji ima pristup internetu predstavlja veliki napredak u praćenju vremenskih prilika. Samim time vjeruje se da bi mnogo ljudi pokazalo interes za razvoj ovakve stanice za kućne potrebe te bi na taj način imali aktualne podatke nadohvat ruke. Međimursko veleučilište u Čakovcu 28

LITERATURA [1] http://meteo.hr/ (18.6.2016.) [2] https://www.arduino.cc/en/main/arduinoboardmega2560 (14.2.2016.) [3] https://store.arduino.cc/product/a000072 (14.2.2016.) [4] https://e-radionica.com/hr/blog/2015/10/18/kkm-dht22/ (14.2.2016.) [5] https://www.adafruit.com/products/1733 (14.2.2016.) [6] http://www.ultra-sailing.hr/hr/vjetrovi-u-hrvatskoj (18.6.2016.) [7] http://www.electrical4u.com/light-dependent-resistor-ldr-working-principle-ofldr/ (18.6.2016.) [8] http://pinova.hr/hr_hr/katalog-proizvoda/mjerni-instrumenti/ostali-mjerniinstrumenti/kisomjeri/bezicni-kisomjer (14.2.2016.) [9] https://www.arduino.cc/en/guide/introduction# (14.2.2016.) [10] https://www.arduino.cc/en/reference/homepage (14.2.2016.) [11] http://dev.mysql.com/doc/refman/5.7/en/ (11.3.2016.) [12] http://www.w3schools.com/php/php_ref_mysqli.asp (11.3.2016.) Međimursko veleučilište u Čakovcu 29

POPIS SLIKA Slika 3.1. 1. Arduino mega 2560... 6 Slika 3.1. 2. Arduino ethernet shield W5100... 6 Slika 3.2. 1. DHT22 senzor temperature i vlažnosti... 7 Slika 3.2.1. 1. Shema spajanja DHT22 senzora na Arduino... 8 Slika 3.3. 1. Anemometar... 10 Slika 3.3.1. 1. Shema spajanja anemometra na Arduino... 10 Slika 3.4. 1. Pokazivač smjera vjetra... 12 Slika 3.4.1. 1. Shema spajanja pokazivača smjera vjetra na Arduino... 13 Slika 3.5. 1. LDR fotootpornik... 16 Slika 3.5.1. 1. Shema spajanja LDR fotootpronika na Arduino... 17 Slika 3.6. 1. Kišomjer... 18 Slika 3.6.1. 1. Mehanizam rada kišomjera... 19 Slika 3.6.1. 2. Shema spajanja kišomjera... 19 Slika 3.7. 1. Mjerač tlaka zraka... 20 Slika 3.7.1. 1. Shema spajanja mjerača tlaka zraka na Arduino... 21 Slika 4. 1. Izgled programa Arduino... 22 Slika 5. 1. Struktura baze podataka... 23 Slika 5. 2. Izgled baze podataka s vrijednostima... 24 Slika 6. 1. Izgled web stranice... 26 Slika 6.1. 1. Podaci u Excel tablici... 27 Međimursko veleučilište u Čakovcu 30

POPIS TABLICA i KODOVA Tablica 1. Brzine vjetra.... 11 Tablica 2. Smjerovi vjetra i vrijednosti.... 14 Kod 1. Upravljanje vrijednostima temperature i vlažnosti zraka... 9 Kod 2. Upravljanje vrijednostima brzine puhanja vjetra... 11 Kod 3. Upravljanje vrijednostima smjera puhanja vjetra... 14 Kod 4. Upravljanje podacima kišomjera... 20 Kod 5. PHP kod za slanje podataka s Arduina... 25 Kod 6. Arduino kod slanje podataka u bazu... 25 Međimursko veleučilište u Čakovcu 31