instytut inśynierii i gospodarki wodnejholmes.iigw.pl/~rszczepa/dyplomy/2181_anna_bielutin.pdfanna...

90
ul. Warszawska 24, 31-155 Kraków tel/fax (+48 12) 628 20 41 e-mail: [email protected] internet: www.iigw.pl INSTYTUT INśYNIERII I GOSPODARKI WODNEJ POLITECHNIKA KRAKOWSKA im. TADEUSZA KOŚCIUSZKI Anna Bielutin POLLUTION LEVEL MONITOR – INTERAKTYWNA WIZUALIZACJA PARAMETRÓW ŚRODOWISKA Z WYKORZYSTANIEM GOOGLE MAPS I GOOGLE EARTH praca magisterska studia dzienne kierunek studiów: informatyka specjalność: informatyka stosowana w inŜynierii środowiska promotor: dr inŜ. Robert Szczepanek nr pracy: 2181 K RAKÓW 2008

Upload: others

Post on 08-Mar-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

ul. Warszawska 24, 31-155 Kraków tel/fax (+48 12) 628 20 41 e-mail: [email protected] internet: www.iigw.pl

INSTYTUT INśYNIERII I GOSPODARKI WODNEJ

POLITECHNIKA KRAKOWSKA im. TADEUSZA KOŚCIUSZKI

Anna Bielutin

POLLUTION LEVEL MONITOR – INTERAKTYWNA WIZUALIZACJA PARAMETRÓW ŚRODOWISKA

Z WYKORZYSTANIEM GOOGLE MAPS I GOOGLE EARTH

praca magisterska

studia dzienne

kierunek studiów: informatyka

specjalność: informatyka stosowana w inŜynierii środowiska

promotor: dr inŜ. Robert Szczepanek

nr pracy: 2181

KRAKÓ W 2008

Page 2: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Bardzo serdecznie dziękuję dr in Ŝ. Robertowi Szczepankowi za poświęcony czas i energię podczas tworzenia tej pracy, a takŜe:

Fabryce Stron Internetowych Sp. z o.o.

za udostępnienie swojego autorskiego narzędzia CMS „FSite”.

Osobne podziękowania kieruję w stronę Łukasza Cybuli , kierownika działu programistycznego FSI Sp. z o.o.

za wszelkie udzielone porady oraz informacje.

Najbli Ŝszym za doping i poganianie ☺.

Page 3: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Spis treści 1.Wprowadzenie......................................................................................................................... 4

1.1. Cele.................................................................................................................................. 6

1.2. Zakres .............................................................................................................................. 7

2. Podstawy teoretyczne wykorzystanych technologii............................................................... 9

2.1. Baza danych .................................................................................................................. 10

2.1.1. Rodzaje baz danych................................................................................................ 10

2.1.2. SQL ........................................................................................................................ 17

2.1.3. MySQL................................................................................................................... 18

2.2. Serwer obliczeniowy..................................................................................................... 19

2.2.1. Witryna WWW ...................................................................................................... 19

2.2.2. Dokument HTML................................................................................................... 20

2.2.3. Document Object Model ........................................................................................ 21

2.2.4. Język PHP .............................................................................................................. 25

2.2.5. CSS – Kaskadowe arkusze stylów ......................................................................... 28

2.2.6. XML - Extensible Markup Language .................................................................... 29

2.2.7. KML- Keyhole Markup Language........................................................................ 30

2.3. Webgis jako interfejs uŜytkownika ............................................................................. 32

2.3.1. GIS - Geographic Information System................................................................... 32

2.3.2. WebGIS................................................................................................................. 33

3. Struktura oraz realizacja programu Państwowego Monitoringu Środowiska...................... 34

3.1. Organizacja monitoringu powietrza w Polsce............................................................... 34

3.2. Stacje monitoringu ....................................................................................................... 39

4. Pollution Level Monitor ....................................................................................................... 41

4.1. Ogólna koncepcja PLM................................................................................................. 41

4.1.1. Stacje monitoringu powietrza................................................................................. 42

4.1.2. Serwer bazy danych PLM ...................................................................................... 42

4.1.3. Serwer obliczeniowy.............................................................................................. 43

4.1.4. Interfejs systemu .................................................................................................... 44

4.2. Budowa systemu ........................................................................................................... 47

4.2.1 „CMS-FSite” ........................................................................................................... 48

Page 4: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

4.2.2. Dane wykorzystywane przez system...................................................................... 49

4.2.3. Interpolacja parametrów powietrza ........................................................................ 65

4.2.4. Interfejs uŜytkownika.............................................................................................71

4.2.5. Import pliku KML do programu Google Earth......................................................78

5. Podsumowanie ..................................................................................................................... 80

6. Wnioski ................................................................................................................................ 83

7. Spis ilustracji ........................................................................................................................ 85

8. Literatura .............................................................................................................................. 87

9. Internet ................................................................................................................................. 88

Page 5: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja
Page 6: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

4

1.Wprowadzenie

Podstawowymi zadaniami Inspekcji Ochrony Środowiska jest kontrola przestrzegania

przepisów prawa o ochronie środowiska, badanie stanu środowiska oraz przeciwdziałanie

powaŜnym awariom. Źródłem informacji o środowisku jest Państwowy Monitoring

Środowiska.

Rozdział 2, artykuł 25 Ustawy Prawo ochrony środowiska stanowi, Ŝe Państwowy Monitoring

Środowiska jest systemem pomiarów, ocen i prognoz stanu środowiska oraz gromadzenia,

przetwarzania i rozpowszechniania informacji o środowisku.

Państwowy Monitoring Środowiska wspomaga działania na rzecz Ochrony Środowiska

poprzez systematyczne informowanie organów administracji i społeczeństwa o jakości

elementów przyrodniczych, dotrzymywaniu standardów jakości środowiska oraz

występujących zmianach jakości elementów przyrodniczych, a takŜe o ich przyczynach.

Z punktu widzenia zwykłego uŜytkownika sieci Internet do tej pory nie było

ogólnodostępnych narzędzi, które informowałyby o parametrach zanieczyszczenia

środowiska w dowolnej lokalizacji. Istnieją raporty publikowane przez lokalne Inspektoraty

Ochrony Środowiska na stronach WWW dla kaŜdego województwa osobno, ale nie

przedstawiają one danych w zrozumiałej dla przeciętnej osoby postaci. Ponad to uŜytkownicy

spotykają się z duŜym utrudnieniem z powodu rozproszenia tych danych.

Na dzień dzisiejszy jedynym sposobem dostępu do danych źródłowych jest posiadanie

dostępu do zaawansowanych aplikacji, z których korzystają Inspektoraty Ochrony

Środowiska. Stąd zrodził się pomysł, aby ułatwić dostęp do informacji o zanieczyszczeniach

kaŜdemu zainteresowanemu w dowolnej lokalizacji, korzystając z udogodnień technologii

informatycznych.

Page 7: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

5

Niniejsza praca opisuje jedno z potencjalnych rozwiązań problemu dostępu do informacji

o zanieczyszczeniu środowiska z punktu widzenia zwykłego uŜytkownika Internetu. W moim

rozumieniu, rozpowszechnianie polega na przekazywaniu spersonalizowanej informacji jak

największemu gronu osób. Udostępnione w sieci dane z pomiarów punktowych oraz liczne

trudności z ich pozyskaniem stały się przyczynkiem do podjęcia próby uproszczenia tego

procesu.

Page 8: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

6

1.1. Cele

Podstawowym celem niniejszej pracy było rozwiązanie problemu dostępu do informacji o

elementach środowiska z punktu widzenia przeciętnego uŜytkownika sieci Internet. Do

uzupełnienia luki w systemie PMŚ, która dotyczy rozpowszechniania danych o środowisku

potrzebne było wykorzystanie narzędzi ogólnodostępnych i łatwych w obsłudze. Odpowiedni

dobór technologii IT był środkiem do stworzenia wydajnego i intuicyjnego narzędzia,

zaprojektowania systemu, który spełniałby załoŜenia Państwowego Programu Monitoringu

Środowiska i ułatwiłby zwykłemu uŜytkownikowi dostęp do danych z monitoringu

środowiska.

KaŜdy Wojewódzki Inspektorat Ochrony Środowiska publikuje swoje raporty na oddzielnych

stronach internetowych. Decentralizacja zasobów utrudnia uŜytkownikowi dotarcie do

informacji. Ponadto, parametry zanieczyszczenia nie zaleŜą od podziału administracyjnego

Polski, a tylko w taki sposób są publikowane w sieci. Osoba chcąca dowiedzieć się jakie

wartości osiągają te parametry w jego lokalizacji nie zrobi tego bez odpowiedniej wiedzy

i narzędzi modelujących proces rozprzestrzeniania się zanieczyszczeń.

Zaprojektowany w ramach pracy magisterskiej Pollution Level Monitor (PLM) wykorzystuje

szereg technologii informatycznych do połączenia modułów gromadzenia, przetwarzania i

udostępniania danych, a dzięki sieciowemu interfejsowi dostęp do niego jest łatwy. System

PLM daje moŜliwość kaŜdemu, kto posiada dostęp do Internetu dotarcia do czytelnej

informacji o stanie zanieczyszczenia w dowolnej lokalizacji.

Zadania postawione przy tworzeniu systemu PLM to:

� Pomoc w realizacji programu PMŚ,

� Pokazanie innego podejścia do udostępniania danych o środowisku,

� UzaleŜnienie wyników od lokalizacji uŜytkownika,

Page 9: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

7

� Pokazanie, w jaki sposób moŜna wykorzystać wiele technologii dostępnych

w informatyce do budowania systemów wielozadaniowych

i skalowalnych.

1.2. Zakres

Opis systemu został ujęty w trzech częściach: teoretycznej, koncepcyjnej oraz

implementacyjnej. Taki podział daje moŜliwość prześledzenia „krok po kroku” jakie cele

realizuje PLM, istotę wykorzystywanych technologii, a takŜe moŜliwości zastosowania

takiego systemu.

Część teoretyczna została zawarta w rozdziale drugim, który prezentuje podstawy

wykorzystywanych technologii. Jest to część opisowa, która poświęca uwagę kaŜdej

technologii osobno. Języki: XHTML, JavaScript, PHP oraz formaty pomocnicze typu CSS,

XML/KLM, a takŜe baza danych MySQL, czyli zestaw narzędzi, z których został zbudowany

Pollution Level Monitor.

PoniewaŜ PLM realizuje zadanie programu Państwowego Monitoringu Środowiska,

w rozdziale trzecim jest opis jego struktury, organizacji i charakteru działania. Znajdują się

tam informacje o instytucjach wykonujących konkretne zadania na rzecz Inspektoratu

Ochrony Środowiska, a takŜe charakterystyka działania stacji pomiarowych.

Rozdział czwarty opisuje Pollution Level Monitor zaczynając od ogólnej koncepcji kończąc

na opisie szczegółów implementacyjnych. Podrozdział „Ogólna koncepcja PLM” pokazuje

sposób wykorzystania opisanych w rozdziale pierwszym technologii. Prezentuje architekturę

oraz pokazuje obieg danych w systemie. Opisane są wszystkie podzespoły PLM, ich rola oraz

kolejność ich wykorzystywania podczas działania systemu. „Budowa systemu PLM” to

ostatni podrozdział w rozdziale „Opis Systemu”. Zajmuje się charakterystyką części

technicznej. Tutaj znajdują się dokładne opisy tabel bazy danych, opisany jest format

Page 10: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

8

przechowywanych danych, algorytmy oraz struktura plików wynikowych wraz ze sposobem

ich wykorzystywania.

Na końcu jest podsumowanie, w którym opisane są załoŜenia oraz ograniczenia PLM, a takŜe

przykłady zastosowania takiego narzędzia.

Page 11: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

9

2. Podstawy teoretyczne wykorzystanych

technologii

Ten rozdział zawiera teoretyczne podstawy wykorzystywanych w PLM technologii. KaŜdej

z nich został poświęcony osobny podrozdział. Technologie w nim opisywane odpowiadają

poszczególnym częściom składowym architektury systemu. Dla łatwiejszego rozpoznania ich

roli w Pollution Level Monitor został zamieszczony rysunek poniŜej.

Rys.1. Technologie i standardy wykorzystane w systemie PLM.

PowyŜszy rysunek oprócz pokazania miejsca występowania poszczególnych technologii ma

na celu wstępnie zapoznać z architekturą systemu PLM. Na początku tego schematu, jak

i rzeczywistego systemu, są stacje pomiarowe, które dokonują próbkowania powietrza

i gromadzą wartości pomierzonych parametrów w swoich lokalnych zasobach pamięciowych.

Z poziomu PLM nie mam do nich dostępu, a do zasilenia bazy danych korzystam

z opublikowanych raportów zamieszczonych na stronach internetowych Wojewódzkich

Page 12: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

10

Inspektoratów Ochrony Środowiska. Takie załoŜenie zostało przyjęte, poniewaŜ niniejsza

praca skupia się wyłącznie na moŜliwościach, jakie mają przeciętni uŜytkownicy Internetu.

Dane do zasilenia bazy danych PLM pochodzą ze stron internetowych WIOŚ, z raportów

dziennych. Zostały wpisane do bazy ręcznie z raportów z poszczególnych stacji

pomiarowych. PoniewaŜ system nie posiada automatycznego importu danymi opis

teoretyczny zaczęłam bezpośrednio od opisu baz danych.

2.1. Baza danych

Dane są przydatne, gdy są uporządkowane i jeŜeli moŜemy z nich z łatwością korzystać

w dowolnym momencie. Baza danych daje moŜliwość przechowywania danych

w uporządkowanej formie, a jej odpowiednio zaprojektowana architektura pozwala na

wydajną pracę. System PLM wykorzystuje bazę danych do gromadzenia danych o pomiarach

oraz stacjach pomiarowych, dlatego ten podrozdział przedstawia zagadnienia z teorii baz

danych, wprowadza ich podział, zawiera opisy oraz przykłady zastosowań.

Imponujący rozwój z zakresie gromadzenia, przechowywania, przetwarzania oraz rozwój

sieci komputerowych umoŜliwiający zdalny dostęp do danych spowodowało, Ŝe technologia

baz danych, a więc dziedzina zajmująca się przechowywaniem, gromadzeniem oraz

udostępnianiem danych w postaci elektronicznej jest obecnie najwaŜniejszym obszarem

zastosowania informatyki i najmocniejszą siłą napędową rozwoju [Budzyński, 1998].

2.1.1. Rodzaje baz danych

Bazy danych moŜna podzielić ze względu na strukturę przechowywania danych, a takŜe ze

względu na model przechowywanych danych [Budzyński, 1998].

Page 13: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

11

2.1.1.1. Płaskie bazy danych

Baza płaska, to baza prosta, w której dane są zorganizowane w strukturę rekordów

zgrupowanych w pliku [Budzyński, 1998].

Przykładem płaskiej bazy moŜe być np. plik *.csv format, który obecnie jest powszechnie

stosowany do wymiany danych między systemami. CSV to z języka angielskiego Comma

Separated Values, czyli wartości rozdzielone przecinkiem. Poszczególne rekordy rozdzielone

są znakami końca linii, a wartości pól zgodnie z nazwą formatu rozdzielone są przecinkami.

Pierwsza linia moŜe stanowić nagłówek zawierający nazwy pól rekordów. Jako separator pól

bywa takŜe stosowany znak średnika lub inny. Wartości zawierające uŜywany znak separatora

(przecinek, średnik, znak tabulacji lub znaki końca linii) muszą być ujęte w cudzysłowy. Aby

umieścić cudzysłów w wartości naleŜy wpisać znak cudzysłowu dwukrotnie, całą wartość

ujmując w cudzysłowy [Wikipedia, 2008].

Większość systemów obsługujących bazy danych umoŜliwia eksport do oraz import z plików

*.csv. Pliki *.csv moŜna importować oraz tworzyć w arkuszu kalkulacyjnym lub edytorze

tekstu.

Przykład kodu zawartego w pliku *.csv:

"Mi ędzynarodowy kod stacji";"Adres";"Długość";"Szerokość";"Województwo"

"LdGajewWIOSAGajew";"Gajew gm. Witonia";"19 14 00";"52 08 36";"Łódzkie"

"LdLodzWIOSARubinst";"Łódź Rubinsteina 77";"19 27 19";"51 46 04";"Łódzkie"

"LdLodzWIOSACzernik";"Łódź, ul. Czernika 1/3";"19 31 55";"51 45 32";"Łódzkie"

2.1.1.2. Hierarchiczne bazy danych

Hierarchiczny model danych to jeden z najstarszych modeli struktury danych. Model ten jest

pewnym rozszerzeniem modelu prostego, opartego na rekordach składających się z pól

zgrupowanych w plikach. W schemacie hierarchicznym wprowadza się typy rekordów

i związki nadrzędny-podrzędny pomiędzy nimi [Budzyński, 1998].

Page 14: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

12

Aby sobie łatwiej wyobrazić sposób takiego przechowywania danych najlepiej wziąć za

przykład system plików w komputerze. Zakłada on grupowanie w formie kolejnych

poziomów drzewa danych, od najbardziej ogólnych do najbardziej szczegółowych

[Wikipedia, 2008].

Np. strukturę państwowego monitoringu środowiska moŜna podzielić w sposób pokazany na

rysunku 2.

Rys.2. Przykład hierarchicznej bazy danych.

Od najwyŜszej instancji PMŚ przesuwamy się w dół po drzewie reprezentującym strukturę

bazy mijając po drodze Wojewódzkie Inspektoraty, a następnie docieramy na koniec do

konkretnych stacji pomiarowych. Dane zorganizowane są od ogółu do szczegółu.

Przeszukiwanie takiej bazy danych, to inaczej przeglądanie zbiorów, poruszanie się od

rodzica do dziecka. KaŜdy element nadrzędny jest rodzicem elementu podrzędnego.

Page 15: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

13

2.1.1.3. Relacyjne bazy danych

Podstawowe pojęcie związane z relacyjnymi bazami danych to [Stones, Mattew, 2003]:

Tabela - jest wydzielonym logicznie zbiorem danych, zorganizowanych w formie tabeli

składającej się z wierszy dzielonych na kolumny. Pojedyncza tabela moŜe być reprezentacją

pewnej encji (np. pomiaru, stacji pomiarowej), relacji między nimi, albo moŜe stanowić

zawartość całej bazy danych. Kolumny stanowią zwykle atrybuty jakiegoś obiektu.

Rekord - Pojedynczy wiersz tabeli. Stanowi najczęściej zbiór danych o pojedynczym

obiekcie.

Klucz - Do identyfikacji wierszy stosowany jest klucz główny (ang. primary key), czyli

najczęściej jedna z kolumn, której wartości są unikatowe w całej tabeli. Klucz jednoznacznie

identyfikuje wiersz.

Wiązanie tabel – dane przechowywane w róŜnych tabelach mogą być ze sobą powiązane za

pomocą relacji.

Relacyjny model baz danych jest powszechnie uwaŜany za jeden z najwaŜniejszych

wynalazków w historii informatyki, który pozwolił elastycznie i oszczędnie operować

danymi. Ten model danych jest najczęściej stosowanym modelem danych.

Baza relacyjna to zbiór danych podzielony na podzbiory, które są ze sobą powiązane za

pomocą relacji. Praca nad danymi to posługiwanie się aparatem matematycznym w celu

odczytania danych poprzez operatory relacyjne takie jak: selekcja, rzutowanie, suma,

złączenie, róŜnica, iloczyn kartezjański. Stosowanie algebry relacji daje silne moŜliwości

przetwarzania gromadzonych danych [Codd, 1990].

Page 16: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

14

Dane w bazie relacyjnej są przechowywane w osobnych tabelach. Tabele w takiej bazie

moŜna podzielić na dwa rodzaje [Stones, Mattew, 2003]:

� tabele opisujące relacje

� tabele z danymi

Tabela z danymi w bazie relacyjnej powinna zawierać dane ściśle ze sobą powiązane. Np. w

osobnych tabelach mogą być dane o osobie, zdarzeniu o itd. Dla przykładu, tabela ze stacjami

pomiarowymi moŜe zawierać następujące dane: długość i szerokość geograficzną, adres,

nazwę, itd. Kolejną tabelą byłaby tabela pomiarów, a rekordami w niej byłyby wartości

poszczególnych parametrów powietrza zmierzonych na stacji, a takŜe identyfikator stacji, na

której został ten pomiar dokonany. Dzięki temu identyfikatorowi widoczna jest relacja

między tabelami. W celu dokonania przypisania w kaŜdej tabeli przy kaŜdym rekordzie musi

być identyfikator, czyli klucz.

Rodzaje relacji [R. Stones, N. Mattew, 2003]:

• „jeden do wielu” - jednemu rekordowi z tabeli A odpowiada wiele rekordów z tabeli

B;

• „wiele do wielu” - wielu rekordom z tabeli A odpowiada wiele rekordów z tabeli B.

Taka relacja jest rozszerzeniem relacji „jeden do wielu” i aby połączyć w taki sposób

ze sobą tabele wykorzystywana jest tabela pomocnicza, zawierająca same klucze

łączonych ze sobą rekordów. Wtedy w jednej kolumnie są klucze z jednej tabeli,

a w drugiej klucze z drugiej. W ten sposób uzyskujemy, de facto, podwójne

połączenie typu „jeden do wielu”.

• „jeden do jeden” - jednemu rekordowi z tabeli A odpowiada dokładnie jeden rekord

z tabeli B. Teoretycznie takie połączenia są rzadko wykorzystywane, a jeŜeli juŜ, to

jest to zabieg który podnosi poziom bezpieczeństwa systemu. Dane przechowywane

w ten sposób trudniej jest pozyskać podczas włamania się, poniewaŜ znajdują się

osobno.

Page 17: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

15

2.1.1.5. Obiektowe bazy danych

Podejście obiektowe podkreśla bardziej naturalną reprezentację danych. W dzisiejszym

środowisku modele danych są duŜo bardziej wymagające. Ich zadaniem jest przetwarzanie

dźwięku, obrazu, tekstu, grafiki, itp. Potrzeby te wymagają duŜo bardziej elastycznego

formatu przechowywania danych niŜ hierarchiczne, czy relacyjne bazy danych mogą

zapewnić. Jedynie obiektowe bazy danych będą mogły sprostać tym wymaganiom.

Obiektowa baza danych jest zbiorem obiektów, których zachowanie się i stan oraz związki są

określone zgodnie z obiektowym modelem danych. Do pracy nad obiektową bazą danych

słuŜy OSZBD, czyli obiektowy system zarządzania bazą danych. OSZBD jest systemem

wspomagającym definiowanie, zarządzanie, utrzymywanie, zabezpieczanie i udostępnianie

obiektowej bazy danych [P.Józwik, M.Mazur, 2002]

Systemy obiektowych baz danych były rozwijane w celu dostarczenia elastycznego modelu

danych bazującego na tym samym paradygmacie, co obiektowe języki programowania.

Obiektowe bazy danych dają moŜliwość silniejszego powiązania z aplikacjami obiektowymi,

niŜ było to w przypadku relacyjnych baz danych. Dzięki temu moŜna zminimalizować ilość

operacji związanych z przechowywaniem i dostępem do danych zorientowanych obiektowo.

Zaleta ta staje się szczególnie cenna w przypadku, gdy obiektowy model danych jest

naprawdę skomplikowany [Robert Budzyński, 1998].

2.1.1.6. Obiektowo-relacyjne bazy danych

Obiektowo-relacyjne bazy danych są osiągnięciem w rozwoju hybrydowych architektur baz

danych. Systemy te pojawiły się między innymi z powodu ogromnych inwestycji,

poczynionych przez róŜne organizacje w systemy relacyjnych baz danych. Bezpośrednie

przekwalifikowanie z relacyjnych na obiektowe systemy baz danych wiązałoby się

z dodatkowymi kosztami, natomiast obiektowo-relacyjne bazy danych stanowią swoisty

kompromis [P.Józwik, M.Mazur, 2002].

Page 18: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

16

Obiektowe bazy danych nie posiadają niektórych cech, do których przywykli uŜytkownicy

poprzednich systemów. Dodatkowo, w chwili obecnej nie mają one odpowiedniej

infrastruktury, aby przejąć rynek relacyjnych baz danych, podobnie jak bazy relacyjne

uczyniły to z systemami hierarchicznymi i sieciowymi.

Rozwiązaniem dla firm takich jak Oracle, Informix, Sybase, czy IBM jest rozwój ich

systemów, polegający na przekształcaniu ich w systemy obiektowo-relacyjnych baz danych.

Systemy obiektowo-relacyjne są wyposaŜane w wiele cech umoŜliwiających efektywną

produkcję aplikacji. Wśród nich moŜna wymienić przystosowanie do multimediów (BLOB,

CLOB i pliki binarne), dane przestrzenne, abstrakcyjne typy danych (ADT), metody (funkcje

i procedury) definiowane przez uŜytkownika w róŜnych językach, kolekcje (zbiory,

wielozbiory, sekwencje, zagnieŜdŜone tablice, tablice o zmiennej długości), typy

referencyjne, przeciąŜanie funkcji, późne wiązanie i inne. Systemy te zachowują jednocześnie

wiele technologii, które sprawdziły się w systemach relacyjnych (takie jak architektura

klient/serwer, mechanizmy buforowania i indeksowania, przetwarzanie transakcji,

optymalizacja zapytań) [K. Subieta, 1999].

Obiektowo-relacyjne bazy danych zdobyły uznanie, poniewaŜ wiele organizacji dostrzegło,

Ŝe relacyjne bazy danych nie są wystarczające do obsługi ich złoŜonych wymagań. Zamiast

więc bezpośredniego przejścia na systemy czysto obiektowe, podejście obiektowo-relacyjne

pozwala organizacjom na zapoznanie się z technologią obiektową stopniowo. Dodatkową

zaletą jest uniknięcie konwersji aktualnych baz danych do nowego, obiektowego formatu

danych, co oszczędza czas i pieniądze. Obiektowo-relacyjne bazy danych stanowią zatem

pomost pomiędzy relacyjnymi a obiektowymi bazami danych.

2.1.1.7. Temporalne bazy danych

Temporalna baza danych jest odmianą bazy relacyjnej, w której kaŜdy rekord posiada stempel

czasowy, określający czas, w jakim wartość jest prawdziwa [Wikipedia – Wolna

Encyklopedia, 2008].

Page 19: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

17

Dzisiaj najwaŜniejsze badania poświęcone tematowi baz danych są nakierowane właśnie na

rozwój tego typu baz.

Zaprezentowany podział danych jest podziałem ogólnym, ale obrazuje róŜnice w podejściu do

sposobu gromadzenia danych. W rzeczywistości, w obrębie jednego systemu często moŜna

doszukać się wielu przykładów baz danych.

Wraz z rozwojem technologii baz danych, tak jak w przypadku wszystkich innych, pojawiły

się darmowe systemy do zarządzania bazami, takie jak np. MySQL i PostgreSQL, które

spopularyzowały wykorzystywanie baz danych i umoŜliwiły powstanie wielu powszechnie

uŜywanych rozwiązań. System PLM takŜe wykorzystuje darmową bazę MySQL, która

w zupełności odpowiada stawianym wymaganiom i nie zamyka moŜliwości jego dalszego

rozwoju.

2.1.2. SQL

SQL to język zapytań słuŜący do obsługi relacyjnych baz danych, który został opracowany

w latach 70-tych przez firmę IBM. SQL naleŜy do języków wysokiego poziomu, czyli

moŜliwa jest obsługa zapytań złoŜonych. Jest to język deklaratywny, skupiający się na

rezultacie, jaki ma baza zwrócić.

Systemy zarządzania relacyjnymi bazami danych posiadają narzędzia optymalizacyjne do

zapytań SQL, przez co współpraca SQL z bazą jest efektywna i czas oczekiwania na

odpowiedź z bazy jest względnie krótki. SQL jest niezaleŜny, dzięki temu pasuje do

dowolnego schematu bazy. Programista SQL, który obsługuję bazę MySQL, bez problemu,

odnajdzie się w architekturze większego systemu opartego nawet o bazę ORACLE. „Pisanie”

w SQL, to jest kierowanie zapytań do bazy danych, które mogą tworzyć i usuwać tabele,

łączyć tabele, a takŜe pobierać potrzebne dane [T. Converce, J. Park, 2001].

W relacyjnej bazie danych w róŜnych tabelach są przechowywane dane, które są ze sobą

powiązane. Aby wyszukać potrzebne informacje rozmieszczone w kilku tabelach, naleŜy je

Page 20: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

18

uprzednio połączyć, a potem z połączonych tabel wyłuskać odpowiadające rekordy.

Połączenie osobno przechowywanych danych w tabelach jest moŜliwe dzięki stosowaniu

kluczy, według których poszczególne rekordy w tabelach są ze sobą kojarzone. Kroki te są

realizowane dzięki kierowaniu odpowiednich zapytań SQL do bazy danych. Zapytania te

mogą być proste, ale teŜ i złoŜone, które w jednym realizują kilka czynności.

2.1.3. MySQL

MySQL to jeden z najpopularniejszych systemów do zarządzania relacyjnymi bazami danych,

wyprodukowany przez szwedzką firmę MySQL AB na zasadach Open Source [Wikipedia –

Wolna Encyklopedia, 2008]. Jest uznany za jeden z najlepszych systemów ze względu na

szybkość działania i stabilność. Istnieją bazy MySQL, które obsługują 50 milionów rekordów

[P. Leszek, 2001].

W MySQL zostały zaimplementowane wszystkie standardy ODBC, czyli z ang. Open

DataBase Connectivity - otwarte łącze baz danych, interfejs pozwalający programom łączyć

się z systemami zarządzającymi bazami danych. Jest to API niezaleŜne od języka

programowania, systemu operacyjnego i bazy danych. Standard ten został opracowany przez

SQL Access Group we wrześniu 1992 roku. W skład ODBC wchodzą wywołania wbudowane

w aplikacje oraz sterowniki ODBC. W systemach bazodanowych typu klient-serwer (np.

MySQL, Oracle lub PostgreSQL) sterowniki dają dostęp do silnika baz danych, natomiast w

programach dla komputerów osobistych sterowniki sięgają bezpośrednio do danych.

Mechanizm ODBC współpracuje zarówno z bazami obsługującymi język SQL, jak

i nieobsługującymi go - w tym ostatnim przypadku język SQL jest przekładany na natywny

język bazy danych.

MySQL wspiera język polski, wspiera i obsługuje standard OpenGIS, jest w nim moŜliwa

replikacja baz, a takŜe transakcje [T. Converce, J. Park, 2001].

Page 21: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

19

2.2. Serwer obliczeniowy

Serwery obliczeniowe, to są osobne maszyny projektowane pod architekturę systemów, która

ma zapotrzebowanie na duŜą moc obliczeniową. Dzięki stosowaniu osobnej maszyny

serwerowej zasoby systemowe oraz sprzętowe tej dedykowanej maszyny są alokowane

specjalnie pod obliczenia i nie obciąŜają pracy pozostałych składowych systemu.

W kontekście PLM nazwa „serwer obliczeniowy” jest na wyrost, ale określenie w ten sposób

miejsca, gdzie wykonywane są skrypty pracujące na danych i wykonujące obliczenia pozwoli

z góry załoŜyć skalowalność systemu.

Na serwerze obliczeniowym PLM jest umieszczona równieŜ witryna WWW, za pomocą

której uŜytkownik korzysta z systemu. WWW nie musi się znajdować na tym samym

serwerze, ale mając na uwadze prędkość i bezawaryjność systemu, a takŜe łatwość

w rozwiązywaniu problemów technicznych została tam umieszczona.

2.2.1. Witryna WWW

Strona internetowa to sposób prezentacji informacji w sieci Internet, który przyjmuje postać

powiązanych między sobą dokumentów HTML. Dokument HTML zawiera w sobie treści,

a takŜe znaczniki HTML, odpowiedzialne za wyświetlenie treści merytorycznych

w przeglądarce. Strony WWW moŜemy podzielić na statyczne oraz dynamiczne.

Statyczne, to takie, które zawierają tylko kod HTML i po stronie serwera, jak i po stronie

klienta, wyglądają identycznie. Serwer, gdy dostaje Ŝądanie o taki dokument po prostu wysyła

je do okna przeglądarki.

Strona WWW dynamiczna, to taka, która oprócz HTML zawiera wbudowane inne

technologie. Termin „dynamiczna” określa wszystkie technologie, które wychodzą poza kod

HTML. MoŜe ona zawierać kody innych języków skryptowych, np. takich jak: PHP,

JavaScript, a takŜe języka CSS. Wszystkie te technologie moŜna podzielić na te, które

wykonują się po stronie serwera i te, które wykonują się po stronie klienta.

Page 22: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

20

Dynamika po stronie klienta, to wszystkie zabiegi, które oŜywiają stronę, czyli pojawiające

się i znikające elementy strony, przewijające się nagłówki oraz inne elementy oparte np.

o technologię JavaScriptu, Flash, czy aplety Java. PoniewaŜ wykonywane są po stronie

klienta, wykorzystują zasoby lokalnych komputerów uŜytkownika. Dzięki temu skraca się

czas oczekiwania na stronę z serwera.

Po stronie serwera, dynamika jest związana z tworzeniem stron na bieŜąco, czyli wtedy, kiedy

strona jest wyświetlana. Np. strona napisana w PHP jest generowana na serwerze

w momencie kiedy serwer dostanie prośbę o jej wyświetlenie. W ten sposób czas jej

wyświetlenia nieco wydłuŜa się, a do okna przeglądarki jest wysyłany juŜ kod HTML.

Dobrym tego przykładem jest zamieszczenie na stronie daty, która będzie generowana w PHP

i będzie uaktualniana kaŜdorazowo w trakcie jej ładowania. W przypadku strony statycznej

data byłaby wpisana „na sztywno” i nie byłaby kaŜdorazowo uaktualniania.

2.2.2. Dokument HTML

Dokumenty HTML, to są pliki, z których składają się strony WWW. Pisane są zgodnie

z konkretnymi zasadami języka HTML. Pliki HTML moŜna edytować w dowolnym edytorze.

Dokument HTML składa się z dwóch podstawowych części: nagłówka - czyli informacji na

temat kodowania, języka, słów kluczowych, opisu strony i tytułu zawartych w znaczniku

<HEAD></HEAD> oraz ciała dokumentu, czyli właściwej treści, która jest zawarta

w znaczniku <BODY></BODY>. Poszczególnym elementom składowym, które są widoczne

na stronie internetowej odpowiadają HTML znaczniki, które je wyświetlają. Np. do

zamieszczenia grafiki uŜywamy znacznika <IMG>, do nagłówków <H1>,<H2>, a do linków

<a>.

Obecnie zasadami tworzenia dokumentów HTML kieruje zespół W3C, stawiając sobie za cel

ujednolicenie sposobu interpretacji kodu przez wszystkie dostępne przeglądarki. Cała

struktura dokumentu HTML jest budowana na zasadzie drzewa, a reguły jakie obowiązują

Page 23: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

21

przy tworzeniu tej struktury obejmuje standard ustanowiony przez W3C dla Obiektowego

Modelu Dokumentu, czyli DOM (Document Object Model).

Organizacja World Wide Web Consortium, w skrócie W3C, zajmuje się formułowaniem

standardów dotyczących tworzenia i przesyłania WWW. To W3C zrobiła krok do

ujednolicenia sposobu wyświetlania stron przez róŜne przeglądarki i tym samym postawiła

rozwój WWW na inne tory.

Wg W3C DOM dokument to drzewiasty zbiór węzłów. Węzeł moŜe być elementem, ciągiem

tekstu, komentarzem, itp. KaŜdy węzeł moŜe mieć jednego rodzica, dowolną ilość braci

i, jeśli jest elementem, dowolną ilość dzieci.

2.2.3. Document Object Model

DOM, to sposób przedstawienia dokumentu. Jest to zestaw metod i pól, które umoŜliwiają

odnajdywanie, zmienianie, usuwanie i dodawanie elementów [http://www.w3.org].

DOM W3C jest podzielony na dwie części. Pierwsza, podstawowa (ang. core), to ogólny

sposób reprezentowania dokumentów XML. Przedstawia dokument jako drzewo zawierające

węzły (ang. node). KaŜdy węzeł moŜe być elementem, fragmentem tekstu, komentarzem,

instrukcją preprocesora (np. dołączonym fragmentem PHP) albo encją.

Drugą częścią DOM W3C jest typowy dla przeglądarek DOM HTML. Jest to zestaw metod

ułatwiających tworzenie dynamicznych stron oraz zapewniających kompatybilność wstecz

z wcześniejszym prostym DOM. Głównym, globalnym obiektem w DOM HTML jest

Window, czyli okno przeglądarki. W tym obiekcie przechowywane są wszystkie globalne

zmienne i funkcje. W nim jest takŜe obiekt document, który reprezentuje całą stronę XHTML.

Do kaŜdego elementu DOM moŜna się odnieść jeŜeli element posiada on nazwę lub id.

W przeciwnym wypadku moŜna się odnosić równieŜ po nazwach znaczników

[http://www.w3.org].

Page 24: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

22

Na rysunku 3 zaprezentowany jest przykład dokumentu XHTML, a poniŜej przykłady metod

odnoszenia się do poszczególnych elementów dokumentu DOM.

Rys.3. Przykład dokumentu XHTML.

Na ostatnim poziomie zagnieŜdŜenia w zaprezentowanej strukturze dokumentu jest

zamieszczony obrazek „przykład.gif”. Do tego elementu moŜna się odwołać na wiele

sposobów:

Page 25: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

23

1) Za pomocą odniesień bezpośrednich:

- document.getElemetById(‘test_image’); - odnosimy się bezpośrednio do elementu

graficznego;

- document.getElemetById(‘test_image’).src – odnosimy się do ścieŜki do pliku , który

chcemy wyświetlić. Dzięki temu moŜemy modyfikować ścieŜkę, a znacznik <img> traktować

jako kontener dla wymiennych grafik.

2) MoŜemy się odnieść do nadrzędnego elementu obrazka, który jest dla niego rodzicem.

- document.getElementById(‘top’); - w ten sposób moŜemy dostać się do zawartości

elementu <div>, w którym się znajduje się obrazek. UŜywając funkcji JavaScript innerHTML

moŜemy podmienić zawartość tego elementu na dowolną inną, np. zastąpić obrazek tekstem

w taki sposób:

dokument.getElementById(‘top’).InnerHTML = ‘zastępujemy tekstem obrazek’;

Wówczas, kodem wynikowym będzie kod HTML pokazany na rysunku poniŜej.

Rys.4. Przykład kodu wynikowego po zastosowaniu InnerHTML.

Page 26: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

24

Wszystkie powyŜsze przykłady pokazały, w jaki sposób moŜna odnieść się za pomocą

JavaScript do węzłów, które posiadają id. Id w strukturze dokumentu XHML powinno być

unikatowe, dlatego takie odwołanie daje nam stuprocentową pewność, Ŝe trafimy w ten

element, o który nam chodziło.

Istnieje jednak alternatywny sposób odwoływania się do węzłów, wymagający trochę więcej

pracy i dobrej znajomości kodu. Sposób ten jest wraŜliwy na wszelkie zmiany w kodzie,

poniewaŜ nawet drobne mogą spowodować błędy i pobieranie nie tego elementu, o który nam

chodziło. Są jednak i pozytywne aspekty - jest to dobra metoda, kiedy potrzebujemy pobrać

np. wszystkie elementy typu <table> i w tym samym czasie wszystkie modyfikować.

Robi się to w następujący sposób:

document.getElementByTagId(‘table’); - za pomocą funkcji getElementByTagId pobierane są

wszystkie elementy typu < table> .

Aby móc skorzystać, z któregoś konkretnego elementu, który pobraliśmy, musielibyśmy to

wszystko wcześniej zapisać do zmiennej:

var tab = document.getElementByTagId(‘table’);

Teraz, mając to w zmiennej,, odwołanie do poszczególnej tabeli wyglądałoby następująco:

tab[0].style.display = ‘none’; - np. wyłączenie pokazywania tabelki o indeksie zero;

tab[0].style.backGround = ‘Gfx/przykład.gif’ – nadanie tła graficznego do tabeli o indeksie 1;

Tabele są poindeksowane zgodnie z kolejnością występowania w dokumencie.

Podsumowując powyŜsze - witryna WWW, czyli interface systemu, jest to dokument HTML,

w którym są osadzone mechanizmy napisane w innych językach skryptowych. W przypadku

Systemu PLM, oprócz JavaScript, jest to język PHP.

Page 27: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

25

2.2.4. Język PHP

Język napisany przez programistów i dla programistów sieci WWW. Darmowy, pręŜnie

rozwijający się w ciągu ostatnich lat język programowania, stosunkowo prosty do nauczenia

się. PHP jest językiem skryptowym, wbudowanym w HTML lub działający osobno, jako

samodzielne pliki binarne i jego działanie jest transparentne dla uŜytkownika. Maszyna

skryptowa PHP jest wbudowana w serwer WWW i skrypty są wykonywane w pierwszej

kolejności, poniewaŜ są po stronie serwera.

PHP jest częścią nierozłączną oprogramowania serwerów. Zazwyczaj instaluje się „zestawy”,

czyli serwer WWW, serwer bazodanowy oraz PHP, a najczęściej wykorzystywanym tego

typu oprogramowaniem są Apache z PHP i MySQL. Są to rozwiązania darmowe,

powszechnie wykorzystywane i dobre.

Składnia języka PHP jest podobna do języka programowania strukturalnego C.

W przeciwieństwie do języka predefiniowanych znaczników HTML, tutaj moŜna deklarować

dowolne zmienne i dowolnie je wykorzystywać. Analizator składni najpierw przetwarza

zagnieŜdŜone w kodzie dokumentu sekcje PHP, a dopiero potem wyświetlana jest strona

w przeglądarce.

PHP dobrze współpracuje z innymi produktami. Przykładami takich produktów są

najpopularniejsze bazy danych, współprace z takimi protokołami jak: IMAP, POP3 oraz

LDAP. Od PHP4 jest dodana obsługa języka Java oraz rozproszonej architektury

COM/COBRA, co pozwala na tworzenie aplikacji o wielowarstwowej architekturze. W PHP5

poszerzono te moŜliwości jeszcze o dodanie biblioteki graficznej, a takŜe unowocześnienie

sposobów obsługi języka XML z uwzględnieniem DOM.

PHP oczywiście nie jest jedynym językiem skryptowym w ten sposób wykorzystywanym, ale

jest najbardziej popularny ze względu na względną prostotę uŜycia [T. Converce, J. Park,

2001]

Page 28: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

26

Aby zagnieździć PHP w kodzie HTML plik musi nosić rozszerzenie *.php, w przeciwnym

wypadku serwer nie wykona poleceń, które są napisane w PHP. Do korzystania z zasobów

bazy danych stosowany jest język SQL. PHP dostarcza narzędzia, które umoŜliwiają

połączenie z bazą danych, natomiast aby wydobyć potrzebne dane, zapytania naleŜy

skierować w języku SQL. W tym celu są wykorzystywane takie funkcje PHP, które

wprowadzają kod SQL do bazy danych.

To, w jaki sposób SQL, PHP oraz HTML są ze sobą „splecione” ilustruje rysunek 5.

W Pollution Level Monitorze skrypty napisane w PHP są odpowiedzialne za dobranie

najbliŜszych stacji, pobranie wartości parametrów wymaganych przez uŜytkownika

i wygenerowanie wynikowego pliku XML, który pozwala na przeniesienie danych do

systemu GIS.

Page 29: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

27

Rys.5. Przykład zagnieŜdŜenia w HTML kodów języków PHP i SQL.

Page 30: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

28

2.2.5. CSS – Kaskadowe arkusze stylów

CSS to język, który opisuje sposób prezentacji stron WWW. Pisząc w CSS stosuje się

dyrektywy. KaŜdy element moŜna ustawić w osobnym stylu, a takŜe moŜna pisać style

globalne. W stylach ustawia się czcionki, kolory, wielkości, odstępy itd. CSS ułatwia

pozycjonowanie elementów na stronie [E. A. Meyer, 2005].

Dzięki CSS dokumenty HTML stały się bardziej przejrzyste. MoŜna wcielać w Ŝycie o wiele

śmielsze projekty graficzne, a takŜe kod HTML został odseparowany od swojej prezentacji.

Wspólne style CSS dla serwisu i konsekwentne korzystanie z nich ułatwią modyfikację

i wprowadzanie zmian we wszystkich podstronach serwisów, natomiast w przypadku

czystego HTML naleŜałoby w kaŜdym dokumencie dokonywać ręcznych poprawek..

Obecnie powszechnie uŜywany i w miarę podobnie interpretowany przez większość

przeglądarek jest CSS2. CSS3 jest dopracowywany, ale jeszcze minie sporo czasu do

momentu, w którym deweloperzy zaczną go stosować powszechnie. WiąŜe się to

z dopracowaniem interpreterów styłów w przeglądarkach.

Dla piszącego strony internetowe duŜym problemem jest dopasowanie stylów tak, aby

prezentowane treści były identyczne wizualnie w kaŜdej przeglądarce. Praca ta wymaga

duŜego doświadczenia i pisząc witryny zazwyczaj pisze się pod dwie najpopularniejsze

przeglądarki. Popularność przeglądarek zaleŜy od kraju. Jest kilka produktów wiodących,

takich jak: Internet Explorer, FireFox Mozilla, Opera, Safari i Konqueror, ale preferencje

uŜytkowników się róŜnią.

Obecnie wszystkie przeglądarki udostępniają wiele poŜytecznych narzędzi zarówno dla

programistów, jak i dla zwykłych wymagających uŜytkowników. JeŜeli, jeszcze 2 lata temu

moŜna było powiedzieć, Ŝe Mozilla Firefox wiodła prym wśród webmasterów, to teraz

w większości przeglądarek są narzędzia do analizy kodu, struktury DOM i wówczas kwestią

przyzwyczajenia jest,, z którego produktu korzystamy.

Page 31: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

29

W Polsce dane statystyczne mówią, Ŝe 60% uŜytkowników pracuje na IE (Internet Explorer),

38% korzysta z Mozilli Firefox, a pozostałe 2% są współdzielone między inne produkty

alternatywne. [http://www.ranking.pl]

2.2.6. XML - Extensible Markup Language

XML, to skrót z języka angielskiego Extensible Markup Language, co w wolnym

tłumaczeniu oznacza Rozszerzalny Język Znaczników. Jest to oficjalny, formalny język, który

pozwala na strukturalizowanie dowolnych danych w zrozumiały sposób. XML nie zaleŜy od

platformy, dlatego jest bardzo wygodnym narzędziem do przenoszenia danych między

róŜnymi systemami [http://www.w3c.org/XML/1999/XML-in-10-points.pl.html].

Za popularyzację XML jest odpowiedzialny rozwój Internetu, a wraz z nim systemy

o rozproszonej architekturze, gdzie dane przenoszone z jednego systemu lub podsystemu do

innego, są zapisywanie w pliku XML. Przykładowy dokument XML ilustruje rysunek 6.

Rys.6. Przykład dokumentu XML.

Page 32: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

30

Dokument rozpoczyna się instrukcją sterującą, która zawiera informacje o wersji standardu

XML , z jakim jest zgodny, oraz o sposobie kodowania znaków. Korzeniem dokumentu jest

element o nazwie ksiąŜka-telefoniczna. Ma on przypisany jeden atrybut o nazwie kategoria

i wartości bohaterowie ksiąŜek. Korzeń jest rodzicem dwóch innych elementów, oba mają tę

samą nazwę osoba i przypisany atrybut o nazwie charakter. KaŜdy z elementów o nazwie

osoba jest rodzicem dla trzech innych elementów o nazwach imię, nazwisko i telefon, które

zawierają konkretne dane w formie węzłów tekstowych (tekst pomiędzy odpowiednimi

znacznikami otwierającym i zamykającym). Element o nazwie telefon w dwunastym wierszu

dokumentu jest pusty (nie ma Ŝadnych potomków), a znacznik otwierający jest jednocześnie

znacznikiem zamykającym. Zapis <telefon/> jest równoznaczny zapisowi

<telefon></telefon>. W trzecim wierszu dokumentu znajduje się komentarz [Wikipedia –

Wolna Encyklopedia, 2008].

W ten sposób moŜna przenieść dane między dowolnymi systemami. Aby importować dane do

docelowego systemu stosowane są tzw. „parsery”, czyli skrypty pracujące nad plikami XML,

przetwarzające dane do postaci zrozumiałej dla systemu, w którym mają zostać wykorzystane.

Dla przykładu w języku PHP zostały dodane funkcje parsujące dokumenty XML między

innymi takie jak: xml_parse(), xml_get_error_code(), xml_error_string(),

xml_get_current_line_number(), xml_get_current_column_number()

i xml_get_current_byte_index(), ale jest ich więcej. Powodem częstego wykorzystywania

tych funkcji jest spopularyzowanie w 2006 roku technologii AJAX opartej o język JavaScript,

która pozwala na dynamiczne odpytywanie bazy. Dane zwracane przez AJAX są właśnie w

postaci plików XML. KaŜda dobrze napisana aplikacja, czy to webowa, czy teŜ desktopowa

zgodnie z dzisiejszymi standardami ma moŜliwość importu/eksportu danych do/z plików

XML.

2.2.7. KML- Keyhole Markup Language

Język KML (ang. Keyhole Markup Language) jest zgodny z gramatyką i formatem pliku

języka XML. SłuŜy do modelowania i zapisywania takich obiektów geograficznych jak:

Page 33: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

31

punkty, linie, obrazy, wielokąty oraz modele wyświetlane w programie Google Earth,

serwisie Google Maps i w innych aplikacjach. Języka KML moŜna uŜywać do udostępniania

miejsc i informacji innym uŜytkownikom tych aplikacji.

Plik KML jest przetwarzany przez program Google Earth w sposób podobny do tego, w jaki

pliki HTML i XML s ą przetwarzane przez przeglądarki internetowe. Podobnie jak język

HTML, KML ma strukturę opartą na tagach z nazwami i atrybutami słuŜącymi do

wyświetlania obiektów w określony sposób. Tym samym program Google Earth jest

przeglądarką plików KML [http://code.google.com].

Plik KML jest plikiem XML, tylko z dodatkową specjalną deklaracją o tym, Ŝe to jest format

czytany przez Google Earth. W budowie niczym się nie róŜni od zwykłego pliku XML tylko

jest budowany zgodnie z wymaganiami programu GE. Wymagania te dotyczą nazw tagów

oraz formatów informacji w nich zawartych.

Dane o tym jak prawidłowo przygotować plik pod GE znajdują się bezpośrednio na stronie

internetowej produktu [http://code.google.com/apis/kml/documentation]. Przykład nagłówka

pokazany na rysunku 7.

Rys.7. Przykład nagłówka KML.

Jak widać na powyŜszym rysunku, w nagłówku takiego pliku są dwie deklaracje: XML

i KML.

Page 34: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

32

2.3. Webgis jako interfejs u Ŝytkownika

Interfejsem w Pollution Level Monitor jest strona internetowa zamieszczona pod adresem

http://gamma.fsi.pl/DragonMGR/. Do interakcji z uŜytkownikiem jest wykorzystane

narzędzie WebGIS – Google Maps.

W tym rozdziale na początku jest wprowadzenie do tematyki systemów GIS, a następnie

podrozdział o WebGIS, którego celem jest zawęŜenie obszernego tematu systemów

informacji geograficzne, do tych dostępnych w Internecie.

2.3.1. GIS - Geographic Information System

GIS, w języku angielskim rozwija się jako Geographic Information System, co w tłumaczeniu

na język polski oznacza System Informacji Geograficznej. Jest to system informacyjny,

słuŜący do wprowadzania, gromadzenia, przetwarzania oraz wizualizacji danych

geograficznych. To program umoŜliwiający nakładanie map tematycznych np. dróg, rzek,

uŜytkowania gruntów i innych dla umoŜliwienia prowadzenia analiz. Celem, w jakim zostały

stworzone takie systemy, jest wspomaganie procesu decyzyjnego, rozwiązywanie problemów

środowiska.

GIS jest zarówno systemem bazodanowym z moŜliwością przechowywania przestrzennie

odniesionych danych, jak i źródłem funkcji do przetwarzania tych danych [Star, Estes, 1990].

Przykładowym programu GIS jest Autocad Map 3D 2009. Jest to rozbudowane narzędzie,

które posiada duŜe moŜliwości, a przede wszystkim duŜy wachlarz udogodnień związanych

ze współpracą z relacyjnymi bazami danych [http://usa.autodesk.com/]. Jest to narzędzie

płatne.

W Internecie moŜna znaleźć wiele przykładów oprogramowania GIS. Systemów informacji

geograficznej jest duŜo zarówno darmowych jak i odpłatnych i zainteresowanie nimi nie

spada. dzieje się tak dlatego, iŜ obecnie duŜy rozwój przeŜywają systemy wykorzystujące GIS

Page 35: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

33

jako swoje części składowe. Przykładem takiego systemu jest równieŜ system Pollution Level

Monitor, który korzysta z narzędzi Google Earth oraz Google Maps. O wyborze tych

komponentów przesądziły takie czynniki jak: dostępność darmowej wersji, łatwość w

obsłudze i łatwy dostęp do oprogramowania.

2.3.2. WebGIS

W Internecie moŜemy spotkać wiele systemów mapowych, które są mniej lub bardziej

zaawansowane, tzn. dają róŜny zestaw moŜliwości pracy nad nimi. Zasadniczy podział moŜna

zrobić wprowadzając dwa pojęcia: Web Map

i WebGIS.

Web Map - KaŜda mapa zaprezentowana w sieci WWW jest nazywana Webmap. MoŜe nią

być nawet zeskanowany fragment papierowej zwykłej mapy. Bardziej zaawansowane mapy,

które pozwalają na interakcję z uŜytkownikiem, posiadające funkcje podobne do prostych

programów GIS nazywane są WebGIS.

WebGIS – bardziej zaawansowane funkcjonalnie Web Mapy posiadające, przede wszystkim,

moŜliwości mierzenia odległości oraz narzędzia do zaawansowanego wyszukiwania [Hachler,

Allgower, Weibel, 2003]. Narzędzie Google Maps, wykorzystywane w Systemie PLM jest

jednym z darmowych przykładów WebGIS dostępnych w sieci [K.Piszczek, 2007].

Page 36: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

34

3. Struktura oraz realizacja programu

Państwowego Monitoringu Środowiska

W tym rozdziale znajduje się opis zadań Programu Państwowego Monitoringu Środowiska,

jego struktura organizacyjna, załoŜenia, a takŜe cele działania poszczególnych instytucji

odpowiedzialnych za środowisko. Pokazana została hierarchia urzędów powołanych do

gromadzenia i przetwarzania danych o zanieczyszczeniach, a takŜe zaprezentowane

narzędzia, które im do tego słuŜą.

3.1. Organizacja monitoringu powietrza w Polsce

Państwowy Monitoring Środowiska jest systemem pomiarów, ocen stanu środowiska oraz

analizą wpływu róŜnych czynników, w tym presji będących wynikiem działalności człowieka.

Zadania PMŚ realizowane są w ramach struktury opartej na modelu DPSIR, czyli

w rozwinięciu: Driving forces, Pressures, State, Response - co w tłumaczeniu na język polski:

Czynniki sprawcze, Presje, Stan, Oddziaływanie, Przeciwdziałania. Jest ona stosowana przez

Komisję Europejską, Organizację Współpracy Gospodarczej i Rozwoju (OECD), Europejską

Agencją Środowiska do sporządzania ocen zintegrowanych oraz ocen skuteczności polityki

ekologicznej. Struktura ta pozwala na sprawne generowanie kompleksowej, opartej na

badaniach, analizach i ocenach informacji o środowisku, zarówno dla potrzeb społeczeństwa

jak i administracji rządowej, samorządowej oraz instytucji międzynarodowych [WWW WIOŚ

Mazowieckie].

Kategorie informacji zostały ujęte w trzech blokach: bloku-presje, bloku-stan oraz bloku-

oceny i prognozy róŜniących się pod względem funkcji jakie pełnią w systemie. Rysunek 8

pokazuje jak bloki PMŚ ze sobą współpracują i jaki mają zakres zastosowania.

Page 37: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

35

Rys.8. Struktura Państwowego Monitoringu Środowiska [WWW WIOŚ Mazowieckie]

Page 38: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

36

W ramach bloku - presje są pozyskiwane i gromadzone informacje o źródłach i ładunkach

substancji odprowadzanych do środowiska, a w szczególności informacje o emisjach

pozyskiwane z systemu administracyjnego, statystyki publicznej oraz wytwarzane przez

Inspekcję Ochrony Środowiska.

Podstawowym blokiem w systemie PMŚ jest blok - stan, obejmujący działania związane

z pozyskiwaniem, gromadzeniem, analizowaniem i upowszechnianiem informacji

o poziomach substancji i innych wskaźników charakteryzujących stan poszczególnych

elementów przyrodniczych. W oparciu o dane zgromadzone w ramach tego bloku

wykonywane są oceny dla poszczególnych komponentów. Programy pomiarowo-badawcze

realizowane są w ramach niŜej wymienionych podsystemów:

• monitoring jakości powietrza,

• monitoring jakości wód powierzchniowych i podziemnych

• monitoring jakości gleby i ziemi,

• monitoring hałasu,

• monitoring pól elektromagnetycznych.

Informacje gromadzone w ramach bloków presje i stan zasilają blok ocen i prognoz,

w ramach którego są wykonywane zintegrowane oceny i prognozy stanu środowiska, a takŜe

analizy przyczynowo-skutkowe. Te analizy wiąŜą istniejący stan środowiska z czynnikami,

które go kształtują, który ma swoje źródło w społeczno-gospodarczej działalności człowieka.

System monitoringu środowiska obsługują specjalne urzędy tworzące hierarchiczną strukturę

(rys.9). Zaczynając od najwyŜszej instancji Inspektoratu Ochrony Środowiska, poprzez

Wojewódzkie Inspektoraty oraz ich delegatury powiatowe [WWW WIOŚ Mazowieckie].

Page 39: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

37

Rys.9. Struktura Państwowego Monitoringu Środowiska. Instytucje [WWW WIOŚ

Mazowieckie].

Page 40: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

38

Inspekcja Ochrony Środowiska [http://www.gios.gov.pl]

Główny Inspektor Ochrony Środowiska, kierujący działalnością Inspekcji Ochrony

Środowiska jest centralnym organem administracji rządowej powoływanym i odwoływanym

przez Prezesa Rady Ministrów. Główny Inspektor Ochrony Środowiska przy pomocy

Głównego Inspektoratu Ochrony Środowiska oraz wojewodowie przy pomocy

wojewódzkich inspektorów ochrony środowiska, jako kierowników wojewódzkich inspekcji

ochrony środowiska wykonują zadania Inspekcji. Wojewódzkie Inspektoraty Ochrony

Środowiska koordynują działania wykonywane w ramach PMŚ na terenie województwa.

Opracowują projekty oraz koordynują tworzenie przez podmioty gospodarcze programów

monitoringu lokalnego.

Podstawowe zadania Inspekcji Ochrony Środowiska to kontrola przestrzegania przepisów

prawa o ochronie środowiska, badanie stanu środowiska, w ramach programu Państwowego

Monitoringu Środowiska oraz przeciwdziałanie powaŜnym awariom. Ich realizacja odbywa

się, między innymi, poprzez:

• kontrolę przestrzegania przepisów o ochronie środowiska i racjonalnym uŜytkowaniu

zasobów przyrody,

• kontrolę przestrzegania decyzji ustalających warunki uŜytkowania środowiska,

• udział w postępowaniu dotyczącym lokalizacji inwestycji,

• udział w przekazywaniu do eksploatacji obiektów, które mogą pogorszyć stan

środowiska, oraz urządzeń chroniących środowisko przed zanieczyszczeniem,

• kontrolę eksploatacji urządzeń chroniących środowisko przed zanieczyszczeniem,

• podejmowanie decyzji wstrzymujących działalność prowadzoną z naruszeniem

wymagań związanych z ochroną środowiska, lub naruszaniem warunków korzystania

ze środowiska,

• współdziałanie w zakresie ochrony środowiska z innymi organami kontrolnymi,

organami ścigania i wymiaru sprawiedliwości oraz organami administracji publicznej,

obrony cywilnej, a takŜe organizacjami społecznymi,

Page 41: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

39

• organizowanie i koordynowanie Państwowego Monitoringu Środowiska, prowadzenie

badań jakości środowiska, obserwacji i oceny jego stanu oraz zachodzących w nim

zmian,

• opracowywanie i wdraŜanie metod analityczno-badawczych i kontrolno-

pomiarowych,

• inicjowanie działań tworzących warunki zapobiegania powaŜnym awariom oraz

usuwania ich skutków i przywracania środowiska do stanu właściwego,

• uzgadnianie decyzji o warunkach zabudowy i zagospodarowania terenu dla inwestycji

szczególnie szkodliwych dla środowiska i zdrowia ludzi.

3.2. Stacje monitoringu

Stacje monitoringu to narzędzia pozyskiwania informacji o środowisku. Wojewódzkie

Inspektoraty Ochrony Środowiska odpowiedzialne są za gromadzenie danych z monitoringu

i publikację ogólnodostępnych raportów [WWW WIOŚ Mazowieckie].

Stacje mogą być kontenerowe stacjonarne lub mobilne osadzone na tle miejskim, wiejskim

bądź produkcyjnym, wykonujące monitoring automatyczny, 24-godzinny. Są one

rozmieszczone na terenie całego kraju, jest ich zazwyczaj około 15 na województwo plus

jednostki niestacjonarne – busy pomiarowe, które pozwalają na dokonywanie pomiarów

w dowolnym terenie. WyposaŜone są w aparaturę pomiarową: analizator SO2, analizator

NOx, analizator pyłu zawieszonego, mierniki parametrów meteorologicznych: prędkość

i kierunek wiatru, wilgotność i temperatura. Rozmieszczone są w róŜnych, co do rodzaju

zabudowy i charakteru osady strefach i dokonują okresowych pomiarów monitorowanych

parametrów środowiska. Pomiary są wykonywane co godzinę i gromadzone w głównym

komputerze na stacji [WWW WIOŚ Mazowieckie].

Na rysunkach 10 i 11 jest pokazana przykładowa stacja pomiarowa z zewnątrz i wewnątrz.

Page 42: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

40

Parametry mierzone na stacjach

- Parametry zanieczyszczenia powietrza:

W zaleŜności od przestrzennego zagospodarowania obszaru tj. lokalizacji zakładów,

koncentracji źródeł niskiej emisji, intensywności ruchu samochodowego stan powietrza moŜe

się róŜnić. Poziom zanieczyszczenia jest analizowany na podstawie pomiarów: dwutlenku

siarki, dwutlenku azotu, tlenków azotu, tlenku węgla, ozonu, pyłu zawieszonego PM10.

- Parametry meteorologiczne:

Pomiar parametrów meteorologicznych pozwala na przeprowadzenie prognoz wartości stęŜeń

zanieczyszczeń. Parametry mierzone na stacjach to: kierunek wiatru, prędkość wiatru,

temperatura powietrza, wilgotność względna, promieniowanie całkowite, ciśnienie

atmosferyczne, opad atmosferyczny [WWW WIOŚ Mazowieckie].

Rys.10. Stacjonarna stacja monitoringu powietrza w Trzebini

Rys.11. Aparatura pomiarowa wykorzystywana w stacjach monitoringu

Page 43: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

41

4. Pollution Level Monitor

Ten rozdział zawiera dokładny opis działania stworzonego w ramach prezentowanej pracy

magisterskiej, autorskiego systemu Pollution Level Monitor i składa się z dwóch części: opisu

ogólnej koncepcji działania systemu oraz szczegółów dotyczących jego implementacji.

4.1. Ogólna koncepcja PLM

W tym rozdziale zaprezentuję ogólna koncepcję działania systemu bez wgłębiania się w

szczegóły dotyczące implementacji. PokaŜę sposób wykorzystania opisanych wcześniej

technologii, zaprezentuje architekturę oraz zasymuluję obieg danych w systemie.

Charakterystykę Pollution Level Monitora zacznę od rysunku 12, na którym są przedstawione

wszystkie komponenty PLM, a takŜe kierunki przepływu danych. Podrozdziały opisują

system zgodnie z kolejnością: stacje pomiarowe, baza danych, serwer obliczeniowy,

uŜytkownik.

Rys.12. Schemat działania systemu PLM.

Page 44: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

42

4.1.1. Stacje monitoringu powietrza

Obieg danych w systemie PLM zaczyna się od wykonywania pomiarów, czyli pozyskiwania

danych za pomocą rozbudowanej infrastruktury automatycznych stacji pomiarowych.

Wchodzą one w skład ogólnego systemu ochrony środowiska i realizują zadania ściśle

określone przez program, za który odpowiedzialny jest Państwowy Monitoring Środowiska.

Ich pracę zapewniają organizacje odpowiedzialne za monitoring, czyli wszystkie urzędy

naleŜące do struktury PMŚ.

Dane ze stacji są publikowane w raportach zamieszczanych na stronach internetowych

Wojewódzkich Inspektoratów Ochrony Środowiska konkretnych województw. Stąd, ręcznie

zostały wpisane do bazy danych systemu PLM.

4.1.2. Serwer bazy danych PLM

Na serwerze bazy danych przechowywane są dane o stacjach pomiarowych oraz pomiarach

na nich wykonanych.

Obiekt POMIAR zawiera dane o poniŜszych parametrach powietrza:

• CO[µg/m3] – tlenek węgla,

• NO[µg/m3] – tlenek azotu,

• NO2[µg/m3] – dwutlenek azotu,

• NOx[µg/m3] – mieszanina tlenków azotu,

• Ozon[µg/m3] – tritlen (jedna z odmian alotropowych tlenu),

• PM10[µg/m3] - pył zawieszony PM10, czyli drobne cząstki o średnicy ziaren

mniejszej niŜ 10µm,

• SO2[µg/m3] – dwutlenek węgla,

• Kierunek wiatru[°],

• Prędkość wiatru[m/s].

Page 45: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

43

Oprócz wartości parametrów, szczegóły pomiaru zawierają teŜ dane pomocnicze, istotne

z punktu widzenia przydatności pomiarów:

• Data – dzień, którym wykonano pomiary;

• Godzina pomiaru – godzina, o której wykonano pomiar.

Obiekty STACJI POMIAROWYCH składają się z danych takich jak:

• lokalizacja,

• współrzędne geograficzne,

• otoczenie zewnętrzne (np. tło miejskie, wiejski, produkcyjne…),

• charakter stacji (stacjonarna czy mobilna),

• jakiemu województwu podlega,

• kody krajowe i międzynarodowe stacji.

Na rysunku 12 bazę danych, jak i inne komponenty, celowo przedstawiłam jako osobne części

składowe systemu z tego względu, iŜ są to podzespoły systemu które mogą być osobno

konfigurowane i rozwijane w zaleŜności od potrzeb w przyszłości.

4.1.3. Serwer obliczeniowy

Ze względu na cel opracowania uniwersalnego i skalowalnego narzędzia serwer obliczeniowy

równieŜ stanowi osobny podzespół systemu PLM. Pracują na nim skrypty odpowiedzialne za

obliczenia oraz interakcję z uŜytkownikiem. Zarówno w tym przypadku, jak i w przypadku

modułu bazodanowego, waŜne jest potraktowanie ich jako odrębnych części działających

niezaleŜnie. Takie podejście pozwoli juŜ od samego początku zadbać o skalowalność systemu

na przyszłość.

System pobiera pomiary z trzech najbliŜszych stacji, interpoluje wartości dla podanej

lokalizacji, a efektem wynikowym jest dokument XML, czyli plik przygotowany do importu

danych do systemów GIS. Dokładnie formatem tego pliku XML jest *.KML ze względu na

wykorzystanie Google Earth w PLM, ale o tym dalej. Algorytmy mogą być dowolne.

Page 46: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

44

Wszystko zaleŜy od konkretnego celu, jakiemu mają słuŜyć dane wynikowe. Mogą to być

działania od najprostszego pobrania danych z bazy do modelowania konkretnych zjawisk.

4.1.4. Interfejs systemu

Interfejsem systemu jest strona internetowa dostępna pod adresem

http://gamma.fsi.pl/DragonMGR/.

Rys.13. Interfejs Pollution Level Monitor.

Page 47: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

45

Po wpisaniu adresu do przeglądarki pojawi się witryna Pollution Level Monitor.

Na wejściowej stronie znajduje się wbudowane narzędzie Web Map – Google Maps,

a poniŜej formularz. Za pomocą mapy uŜytkownik podaje interesującą go lokalizację, a do

formularza wpisuje swój adres e-mail, na który zostanie przysłany plik *.KML. W tym pliku

zawarte są interpolowane parametry środowiska charakterystyczne dla lokalizacji, którą

wybrał. Plik *.KML uruchamia się w programie Google Earth.

Po kliknięciu dalej pojawią się wyniki interpolacji w postaci tabeli z wartościami. KaŜdej

komórce odpowiada interpolowany parametr. Oprócz tego jest podana data, godzina, a takŜe

dokładna lokalizacja uŜytkownika (rysunek 14,15).

Rys.14. Wynik działania PLM - tabela z interpolowanymi wartościami parametrów.

Page 48: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

46

Rys.15. Wynik działania PLM - tabela z interpolowanymi wartościami parametrów

(przybliŜenie).

Dlaczego Google Earth?

Google Earth to WebGIS, przedstawiający kulę ziemską jako trójwymiarowy globus, na którą

nakładane są zdjęcia lotnicze oraz róŜnego rodzaju dane przestrzenne, informacje

geograficzne i turystyczne. Aplikacja występuje w wersji bezpłatnej jak i równieŜ płatnych:

Plus i Pro.

Do podstawowych funkcji systemu naleŜą:

� nawigacja 3D, pozwalająca na pełną interakcję z globem, dowolne przybliŜenie,

oddalanie, moŜliwości zmiany kąta patrzenia.

� wyszukiwanie konkretnych miejsc według nazw, pod warunkiem Ŝe dane te są

opracowane i dostępne dla Googla.

� wielowarstwowość prezentowanych danych, pomiary odległości między punktami,

obliczanie ścieŜek, tworzenie zaznaczeń obszarów

Dane wykorzystywane w Google Earth są te same, co w Google Maps. Oczywiście mowa

tutaj o zdjęciach lotniczych oraz mapach dróg. GE dodatkowo oferuje bardzo duŜą ilość

warstw tematycznych, powiększanych z dnia na dzień.

GE spełnia wszystkie wymagania postawione przy budowie Pollution Level Monitor jakie ma

spełniać końcowy system GIS. Jest to WebGIS posiadający o wiele bardziej zaawansowane

funkcje do przetwarzania danych mapowych niŜ Google Maps, poniewaŜ pozwala na ich

Page 49: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

47

analizę. GE Posiada wersje darmową, jest stosunkowo prosty w obsłudze i ogólnodostępny. Z

tych względów PLM korzysta z Web Map jako z lokalizatora uŜytkownika, a do pracy z

danymi wynikowymi juŜ z Google Earth.

4.2. Budowa systemu

W tym rozdziale opisuję „krok po kroku” budowę systemu PLM. W opisie zawarłam

szczegóły implementacyjne, a takŜe zaprezentowałam obieg danych w systemie.

Jako części składowe do budowy systemu wykorzystałam:

• Bazę danych MySQL w wersji 5.0.45.

• System CMS FSite

• Google Maps

• Język PHP 5.2.6.

• Google Earth

Baza danych oraz system zarządzania treścią zostały udostępnione na potrzeby tej pracy

magisterskiej przez firmę FSI – Fabrykę Stron Internetowych. CMS FSite został uŜyty do

administracji bazą danych, a takŜe do zarządzania treścią na witrynie WWW.

Do interakcji z uŜytkownikiem wykorzystano narzędzie Web Map - Google Maps, które

umoŜliwia wprowadzenie do systemu interesującej go lokalizacji.

Za pomocą języka PHP został zaimplementowany systemu CMS Fsite. W nim takŜe są

napisane algorytmy wykonujące obliczenia potrzebne do interpolacji danych pomiarowych

oraz przygotowywany jest mail wysyłany do uŜytkownika. Poszczególne części witryny są

generowane poprzez skrypty PHP, a wszystkie dokumenty korzystają z jednego, wcześniej

przygotowanego, pliku CSS.

Google Earth, to program WebGIS, który został wykorzystany do prezentacji danych

wynikowych będących efektem pracy Pollution Level Monitor.

Page 50: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

48

4.2.1 „CMS-F Site ”

System CMS FSite jest systemem zarządzania treścią dostarczonym przez firmę FSI. Fabryka

Stron Internetowych Sp. z o. o. udostępniła swój produkt nieodpłatnie, dla potrzeb

prezentowanej pracy dyplomowej. System FSite łączy w sobie zaawansowaną funkcjonalność

i szybkość działania rozbudowanych systemów CMS. Działa on w oparciu o serwer WWW

obsługujący język PHP oraz serwer baz danych MySQL.

Ogólna charakterystyka systemu FSite:

• Administracja stroną WWW przez przeglądarkę internetową (Internet Explorer,

Firefox)

• Intuicyjna edycja tekstów i administracja plikami umieszczanymi w serwisie WWW

• Wymiana danych z innymi aplikacjami

• Dowolna liczba wersji językowych serwisu

• Wbudowane w system dokładne statystyki odwiedzalności stron

• Optymalizacja dla wyszukiwarek, współpraca z Google Sitemaps

• Newsletter oraz mailing z rozbudowanymi statystykami

• Hosting na dedykowanych pod system CMS serwerach

FSite jest bardzo rozbudowanym narzędziem, na którym FSI opiera wszystkie swoje

realizacje, poczynając od prostych stron wizytówek, aŜ do ogólnopolskich portali

informacyjnych i sklepów. System jest stabilny, a jego interfejs naleŜy do intuicyjnych, przez

co budowanie zaawansowanych narzędzi jest stosunkowo łatwe. Produkt ten spełnia

oczekiwania co do pojemności, szybkości obsługi, a takŜe wygody uŜytkownika

w administrowaniu bazą.

Pollution Level Monitor korzysta z przestrzeni bazodanowej na serwerach FSI oraz

wykorzystuje CMS FSite jako swój system zarządzania treścią.

Page 51: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

49

4.2.2. Dane wykorzystywane przez system

System PLM dysponuje danymi pozyskanymi ze stron internetowych Wojewódzkich

Inspektoratów Ochrony Środowiska. Są to dane o stacjach pomiarowych oraz pomiary

parametrów powietrza na nich wykonanych. Niniejszy rozdział opisuje obieg danych

w systemie PLM.

4.2.2.1.Pozyskiwanie danych

Wszystkie urządzenia pracujące na stacji pomiarowej są wyposaŜone w modemy, za pomocą

których łączą się z centralnym komputerem. Centralne komputery gromadzą pomiary ze

wszystkich urządzeń na stacji i wysyłają raporty do bazy danych Wojewódzkich

Inspektoratów Ochrony Środowiska. Inspektoraty przetwarzają te dane i gromadzą na swoje

potrzeby, a ponad to są odpowiedzialne za udostępnianie ich w postaci ogólnodostępnych

raportów [WWW WIOŚ Mazowieckie].

Dane wejściowe do systemu PLM pochodzą z raportów opublikowanych na stronach

internetowych Wojewódzkich Inspektoratów Ochrony Środowiska. System PLM nie ma

moŜliwości dynamicznego importu, a takŜe nie stosuje technik web harvestingu, dlatego

przeniesienie danych wymagało ręcznego przepisywania z tabelek, w których raporty są

zamieszczone na stronach.

Na potrzeby Pollutin Level Monitor aby zasymulować działanie rozwiązania, które system

proponuje, a przede wszystkim aby zaprezentować pomysł, dane zostały ręcznie wpisane do

bazy w takim formacie, w jakim by trafiłyby do niego z ew. importów. Mimo iŜ system nie

posiada modułu automatycznego zasilania danymi, to baza jest tak zaprojektowana, aby móc

taki moduł w dowolnej chwili uruchomić.

Dane pochodzą z raportów pomiarowych ze stacji z kilku województw: Podkarpackie,

Łódzkie, Kujawsko - Pomorskie, Mazowieckie i Wielkopolskie. O tym ograniczeniu naleŜy

pamiętać przy korzystaniu z systemu. Dane, które zostały przeniesione do PLM, są

wyselekcjonowanymi danymi zamieszczonymi na stronach internetowych wojewódzkich

Page 52: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

50

inspektoratów. W ten sposób zostały pozyskane: adresy stacji, połoŜenie geograficzne,

informacje o wartościach mierzonych, opis tła terytorialnego i najbliŜszego otoczenia,

podstawowe informacje o terenach przylegających, kody stacji międzynarodowy i krajowy

oraz typ stacji. Dane pochodzą z 15 lipca 2008 roku.

4.2.2.2. Przechowywanie danych

W Systemie PLM została wykorzystana relacyjna baza danych MySQL w wersji 5.0.45.

Serwer bazodanowy, zarówno jak i panel administracyjny wraz z systemem zarządzania

treścią, został nieodpłatnie dostarczony przez firmę FSI – Fabryka Stron Internetowych Sp.

z o. o.

W tym rozdziale znajdują się opisy tabel bazy danych, a przy nich informacje krytyczne

z punktu widzenia działania systemu PLM. Dokładny opis części składowych obiektów

przechowywanych w bazie danych oraz ich organizacja pozwoli zrozumieć strukturę danych

Pollutin Level Monitora.

4.2.2.3. Organizacja danych w bazie - opis poszczeg ólnych tabel

Baza danych, na której działa System PLM składa się z 29 tabel. Tabele zostały

automatycznie utworzone przez działające skrypty CMS FSite, w momencie tworzenia

nowego serwisu w panelu administracyjnym Fsita.

Rysunek 14 prezentuje spis wszystkich tabel, z których składa się serwis WWW zbudowany

pod CMS „FSite”. Standardowo FSI nie zakłada dostępu uŜytkownika do bazy danych, ale na

potrzeby napisania tego rozdziału został wgrany na konto FTP program phpMyAdmin, który

słuŜy do zarządzania bazą MySQL.

Page 53: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

51

Rys.16. Lista tabel w bazie Systemu PLM (Program phpMyAdmin).

Dalej znajduje się opis wszystkich tabel istotnych w działaniu systemu PLM. Kolejność ich

opisu jest zachowana taka, jaka jest widoczna na rysunku 16.

Tabela „Config”

Zawiera ogólne ustawienia bazy. Tutaj znajdują się informacje dotyczące stosowanego

w bazie kodowania oraz inne informacje uŜywane przez wszystkie tabele znajdujące się bazie.

Tabele z prefiksem „Object”

Po tabeli „Config” na liście prezentowanej na rysunku 16 znajdują się tabele z prefiksem

„Object_”. Wszystkie te tabele dotyczą informacji o istniejących obiektach przechowywanych

w systemie. Są to najwaŜniejsze dane przechowywane w bazie z punktu widzenia architektury

Systemu PLM. CMS „Fsite” pozwala tworzyć dowolne rodzaje obiektów poprzez dobieranie

komponentów przystosowanych do przechowywania róŜnego rodzaju treści i plików, dlatego

Page 54: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

52

rodzajów obiektów zakładanych w systemie moŜe być wiele. Informacje o obiektach, a takŜe

dane do nich naleŜące gromadzone są w poniŜszych tabelach. Ze względu na relacyjny model

danych kaŜda tabela zawiera inne dane.

PoniŜszy spis tabel zawiera opis tylko tych, które są uŜywane w PLM.

1) Objects_Object - tabela, która przechowuje podstawowe informacje o obiektach

istniejących w bazie. Znajdują się tutaj dane obiektów kaŜdego rodzaju.

Rys.17. Tabela „Objects_Object” (Program phpMyAdmin).

Do podstawowych informacji o obiektach zaliczane są takie dane jak:

• ID obiektu, czyli unikatowe ID, które posiada kaŜdy obiekt znajdujący się w bazie

i jest ono w tej tabeli takŜe kluczem podstawowym zwiększanym automatycznie. Typ

Page 55: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

53

tego pola to „bigint”, czyli big integer, przeznaczający 8 bajtów do zapisania liczb

rzeczywistych.

• ObjectCategory, czyli kategoria obiektu. Typ tego pola to „bigint”.

W CMS FSite jest moŜliwość zakładania dowolnego rodzaju obiektów, czyli modeli

danych określających konkretne byty, przechowywane w bazie w sposób

uporządkowany. W momencie tworzenia rodzaju obiektów, informacje o nich są

gromadzone w tabeli o nazwie „Object_ObjectCategory” i kaŜda taka kategoria

posiada unikatowe ID. To właśnie ID, nadane kategorii w tabeli

„Object_ObjectCategory” identyfikuje kategorię, do której naleŜy obiekt

przechowywany w tabeli „Objects_Object”. W Systenie PLM są dwa rodzaje

obiektów: pomiar i stacja.

• Created - jest to data i godzina utworzenia obiektu w bazie. Pole jest uzupełniane

tylko raz w momencie tworzenia obiektu i nie podlega zmianie przez panel

administracyjny. Typ tego pola to „datetime”, czyli jeden z formatów do

przechowywania dat.

• Modified - jest to cecha obiektu, która przechowuje datę i godzinę ostatniej

modyfikacji obiektu. Data ta jest aktualizowana za kaŜdym razem, kiedy uŜytkownik

systemu aktualizuje dane o tym obiekcie przez panel administracyjny i wykonuje

polecenie zapisu dokonanych zmian. Typ tego pola to „datetime”.

• Options – jest to wartość sumy binarnej, która określa dodatkowe własności obiektu

typu: widoczność i aktywność uŜywanych jako pomocnicze flagi stawiane obiektom.

Typ tego pola to „int”, czyli integer, z języka angielskiego to liczba rzeczywista. Typ

ten przeznacza 4 bajty na przechowanie liczby.

• Identity – jest to pole zawierające identyfikator tekstowy danego obiektu. Jest to

wartość nadawana unikatowo i kaŜdy obiekt moŜe być po niej zidentyfikowany

alternatywnie do identyfikacji po ID. Typ tego pola to „varchar(64)”. Wartość pola

domyślnie nie jest wymagana, ale to zaleŜy od implementowanych mechanizmów

pracujących na bazie. Np. w PLM jest to pole krytyczne i wymagane.

Page 56: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

54

2) Object_Objeck2Language – tabela, która łączy obiekty z numerami języków. KaŜdy język

skonfigurowany w systemie równieŜ posiada swoje ID i jest przechowywany w osobnej

tabeli. JeŜeli witryna jest wielojęzyczna, to ten sam obiekt moŜe istnieć we wszystkich

językach równocześnie. System PLM posiada tylko wersję polską, dlatego w tej tabeli

wszystkim rekordom w kolumnie „Language” odpowiada wartość 1. (patrz rysunek 18)

Rys.18. Tabela „Object_Objeck2Language” (Program phpMyAdmin).

Pola tabeli „Object_Object2Language”:

• Object - pole zawierające ID obiektu. Typ pola to bigint(20).

• Language - pole zawierające ID języka. Typ pola to bigint(20).

• Name – pole zawierające nazwę obiektu. Typ pola to varchar(255).

3) Object_Object2PropertyValue – tabela, w której są przechowywane wartości

poszczególnych cech obiektu. Tutaj znajdą się cechy, których wartości zostały uzupełnione

podczas tworzenia danego obiektu, np. wartości pomiarów konkretnych parametrów

zanieczyszczenia, współrzędne połoŜenia geograficznego i inne pola odpowiadające

uzupełnionym cechom dla istniejących w bazie obiektów. Wartości tych cech są powiązane

z ID obiektu, do którego naleŜą.

Page 57: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

55

Widok tej tabeli nie moŜe być opublikowany ze względu na chronioną jej zawartość przez

firmę FSI Sp. z o.o.

4) Objects_ObjectCategory – zawiera informacje o istniejących rodzajach obiektów. KaŜdy

rodzaj posiada swoje unikatowe ID. ID nadane w tej tabeli wykorzystywane jest do

grupowania obiektów w wyŜej opisanej tabeli „Objects_Object”. PoniŜej, na rysunku 19 jest

pokazany widok „Objects_ObjectCategory” z programu phpMyAdmin.

Rys.19. Tabela „Objects_ObjectCategory” (Program phpMyAdmin).

Pola tabeli „Objects_ObjectCategory”:

• ID – automatycznie inkrementowana wartość pola. Typ pola to bigint(20).

• RootPropertiesGroup – identyfikator nadrzędnej grupy cech. Grupą cech moŜe być

zbiór cech jednego rodzaju obiektu lub jednego rodzaju działów. MoŜliwość tworzenia

rozbudowanej struktury cech obiektów, to jedna z charakterystycznych

funkcjonalności CSM „FSite”, która go wyróŜnia. Typ pola to bigint(20).

• Name - nazwa kategorii obiektu. Typ pola to varchar(64).

Tabele z prefiksem „Site_”

Kolejną grupą są tabele z prefiksem „Site_”, odpowiedzialne za konfigurację struktury

działów oraz języków serwisu zakładanego w CMS „FSite”. Zawierają informacje o cechach

działów, o skonfigurowanych językach, a takŜe relacje między obiektami a działami

w przypadku wykorzystywania moŜliwości dopisywania do działów. Dopisywanie do działów

funkcjonuje na zasadzie sortowania obiektów, które mają się pojawiać na konkretnych

Page 58: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

56

podstronach serwisu. System PLM nie wykorzystuje tych moŜliwości „FSite”, dlatego nie jest

konieczne dokładne opisywanie tych tabel.

Tabele z prefiksem „Stat”

Ostatnią grupą tabel są tabele z prefiksem „Stat_” i zawierają dane statystyczne

o odwiedzinach na stronie. System PLM nie prowadzi statystyk odwiedzin, dlatego te tabele

teŜ nie zostały opisane.

PowyŜej została przedstawiona architektura typowo relacyjnej bazy danych, na której został

oparty mechanizm działania Pollution Level Monitor. Mimo to, Ŝe sam CMS jest napisany

w PHP obiektowym i „FSite” zmusza do obiektowego myślenia, to patrząc tylko na strukturę

bazy jest to relacyjna baza danych.

Pracując na bazie danych jednak nie pracujemy na niej bezpośrednio. Prace konfiguracyjne,

a takŜe dostęp do danych moŜliwe są do przeprowadzenia przez panel CMS „FSite”. Nieco

inaczej dane te prezentują się w panelu administracyjnym. Łatwiej jest zorientować się

o przynaleŜności cech do swoich obiektów, a obiektów do działów. Działanie panelu

administracyjnego CSM FSite jest opisane w następnym podrozdziale.

4.2.2.4. Panel administracyjny CMS FSite

Pracując na systemie CMS FSite pozostaje dla nas transparentna ilość tabel, które

w rzeczywistości są w bazie danych, a dane o obiektach i działach sprawiają wraŜenie jakby

były przechowywane w osobnych tabelach. Dzięki dopasowaniu identyfikatorów FSite łączy

ze sobą odpowiednie dane przechowywane w róŜnych tabelach i przedstawia je w postaci

logicznego podziału na konkretne rodzaje. Dzięki temu bez trudu moŜna korzystać

z informacji o obiektach oraz działach nie zagłębiając się w rzeczywistą strukturę bazy.

Główne menu dostępnych opcji znajduje się na górze ekranu i wygląda tak jak to jest

pokazane na rysunku 20.

Page 59: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

57

Rys.20. Główne menu panelu CMS FSite.

Wszystkie ustawienia, o których pisałam w poprzednich rozdziałach opisując architekturę

bazy są wykonalne z poziomu panelu administracyjnego, przez co ich wykonanie nie naleŜy

do czynności trudnych ani czasochłonnych. Do tych ustawień naleŜą: konfiguracje języków

i krajów, konfiguracja tekstów wielojęzycznych, rodzaje działów oraz struktura.

Na potrzeby Systemu PLM został skonfigurowany tylko jeden rodzaj działów o nazwie „txt”

i dysponuje takimi cechami jak: treść i plik. (Patrz rysunek 21). ZałoŜone działy tekstowe są

widoczne na pasku górnego menu na stronie WWW Pollution Level Monitor

(http://gamma.fsi.pl/DragonMGR).

Rys.21. Lista cech działów rodzaju „txt” (Panel administracyjny CMS FSite).

Page 60: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

58

Taki zestaw cech pozwala na edytowanie treści tekstowych na wszystkich podstronach,

a takŜe wgrywanie dodatkowych plików na serwer w celu wykorzystania ich w konkretnym

dziale. To mogłyby być dodatkowe grafiki do zamieszczenia śródtekstowo w treści, materiały

do pobrania lub inne pliki.

Kolejną dostępną opcją jest wyświetlenie struktury, czyli hierarchii działów utworzonych

w serwisie. Drzewko podstron moŜna edytować dowolnie, dodając nowe poddziały, działy

nadrzędne itd. Strukturę serwisu PLM ilustruje rysunek 22.

Rys.22. Struktura serwisu Systemu PLM (Panel administracyjny CMS FSite).

Następnie, idąc dalej w dół po liście górnego menu FSita jest zakładka „Rodzaje obiektów”.

Po wyborze tej opcji będą widoczne wszystkie typy obiektów skonfigurowane na potrzeby

systemu. Aby zasięgnąć szczegółowych informacji, naleŜy kliknąć w wybrany typ i otworzy

się karta szczegółów danego rodzaju obiektu. Do informacji szczegółowych o obiektach

naleŜą, przede wszystkim, zbiory załoŜonych pod nie cech (patrz rysunek 23 i 24).

Page 61: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

59

Rys.23. Lista cech obiektu „Pomiar” (Panel administracyjny FSite).

Rys.24. Lista cech obiektu „Stacja” (Panel administracyjny FSite).

Pozostały jeszcze dwie opcje do wyboru z listy: „Pomiary” i „Stacje”. Wybierając którąś

z nich wyświetli się lista z odfiltrowanymi rekordami z tabeli „Object_Object”, według

Page 62: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

60

numerów kategorii obiektów. Wybierając „Pomiary” wyświetlą się wszystkie pomiary

zgromadzone w bazie. Analogicznie stanie się w przypadku „Stacji”.

Po wybraniu z górnego menu któregoś rodzaju obiektu widok listy będzie taki, jaki jest

pokazany na rysunkach 25 i 26. Na liście są zebrane informacje podstawowe o obiektach,

czyli: nazwa, identyfikator, widoczność, aktywność i ID obiektu.

Rys.25. Lista obiektów rodzaju „Pomiary” (Panel administracyjny FSite).

Rys.26. Lista obiektów rodzaju „Stacje”. (Panel administracyjny FSite).

KaŜdy obiekt posiada dane szczegółowe umieszczone w cechach. Cechy, czyli atrybuty

obiektów wraz z ich wartościami są widoczne po „wejściu” do danego obiektu. To ilustrują

rysunki 27 oraz 28.

Page 63: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

61

Rys.27. Dane szczegółowe obiektu typu „Pomiar” (Panel administracyjny FSite).

Page 64: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

62

Rys.28. Dane szczegółowe obiektu typu „Stacja” (Panel administracyjny FSite).

4.2.2.5. Relacja „pomiar-stacja”. Szczegóły dotycz ące cech obiektów

Pozostało omówić dokładnie cechy obiektów pomiar i stacja oraz przyjrzeć się, w jaki sposób

te obiekty są ze sobą powiązane. Ten rozdział opisuje kaŜdą cechę obiektów osobno

i wyjaśnia do czego są one potrzebne z punktu widzenia działania Pollution Level Monitora.

Obiekt „Pomiar”

• ID – identyfikator obiektu, liczba zwiększająca się automatycznie w miarę dodawania

nowych rekordów;

• Name – nazwa obiektu;

• Identity – jest to unikatowa nazwa obiektu. Dla wygody wpisywałam takie same

wartości jak w polu Name;

Page 65: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

63

Aby automatycznie tworzyć unikatowe identyfikatory napisałam funkcję, która buduje

łańcuchy tekstowe w formacie: data/godzina/kod_krajowy_stacji. Funkcja jest

zaimplementowana w skryptach PHP.

Format ten jest czytelny dla administratora bazy danych, ale przede wszystkim

uniemoŜliwia powstanie powtórzeń. Próbkowanie powietrza jest wykonywane jeden

raz w ciągu godziny na kaŜdej stacji, dlatego połączenie takich danych gwarantuje

unikatowe nazwy dla kaŜdego pomiaru w bazie.

Przykładem takiej nazwy jest:

16-07-2008/23:00/KpBydgBlota – określa nazwę pomiaru wykonanego 16 lipca

o godzinie 23:00 na stacji pomiarowej o kodzie krajowym KpBydgBlota.

• Data, Godzina – czas, którym zostały pomierzone parametry powietrza;

• CO2,NO,NO2,NOx,Ozon,SO2,PM10,Kierunek,Prędkość – wartości liczbowe

pomierzonych parametrów;

• Stacja – to klucz obcy, identyfikator stacji, na której został ten pomiar wykonany.

Obiekt „Stacja”

• ID – identyfikator obiektu, liczba zwiększająca się automatycznie w miarę dodawania

nowych obiektów;

• Name – nazwa obiektu;

• Identity – jest to unikatowa nazwa obiektu. Tutaj wykorzystuję krajowy kod stacji.

• Międzynarodowy kod stacji, Krajowy kod stacji – dane pozyskane z opisów stacji

pomiarowych, zamieszczonych na stronach internetowych Wojewódzkich Instytutów

Ochrony Środowiska. Są to unikatowe identyfikatory nadawane stacjom na terenie

Polski. Nazwy te najczęściej składają się z pierwszych liter nazw województw,

pierwszych liter miejscowości i pierwszych liter bądź skrótów ulic, przy których są

zlokalizowane. Np. KpBydgBlota – gdzie:

o Kp – województwo kujawsko-pomorskie

o Bydg – miasto Bydgoszcz

o Blota – dzielnica lub ulica, na której jest ustawiona stacja.

Page 66: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

64

W przypadku nazewnictwa stacji mobilnych do nazwy najczęściej jest jeszcze

dołączany numer oraz kod „Mob”, od „mobilna”.

• Typ stacji –typy stacji zaleŜą od tego, w jakich warunkach dokonują pomiarów.

Warunki te określa rodzaj zabudowy lub uprzemysłowienie terenu. Typy najczęściej

spotykane to: miejski, wiejski, przemysłowy, lub nieokreślony dla stacji mobilnych;

• Adres, województwo – dane tekstowe;

• Długość, Szerokość - współrzędne połoŜenia geograficznego pozyskane z informacji

o stacjach ze stron WWW WIOŚ. W bazie są przechowywane w formacie tekstowym

ze spacjami, bez dodatkowych znaków minut i sekund, po to, aby skrypt, który

przygotowuje plik importu dla Google Earth mógł przeliczyć to na jednostki, którymi

się posługuje GE.

Relacja między obiektami typu „Pomiar”, a obiektami typu „Stacja” jest relacją typu „wiele

do jeden”. Polami wiąŜącymi te dane są identyfikatory stacji pomiarowych, wpisywane do

pola „Stacja” w obiekcie „Pomiar”(patrz rysunek 29).

Rys.29. Relacja między obiektami typu „Pomiar”, a obiektami typu „Stacja”.

Page 67: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

65

4.2.3. Interpolacja parametrów powietrza

Podstawowym zadaniem systemu jest oszacowanie parametrów powietrza w dowolnym,

wskazanym przez uŜytkownika punkcie. Do określenia tych wartości wykorzystywane są

punktowe pomiary ze stacji WIOŚ z kilku województw.

Ten rozdział opisuje obliczenia zastosowane w Systemie PLM do interpolacji parametrów

zanieczyszczenie środowiska. Znajduje się tutaj takŜe opis metody interpolacji zastosowanej

w Systemie PLM.

Korzystając z Pollution Level Monitora, uŜytkownik wybiera interesującą go lokalizację.

Robi to za pomocą wbudowanego narzędzia Google Maps. Kliknięciem w punkt na mapie

zostają wprowadzone dane połoŜenia geograficznego do formularza. Oprócz podania

współrzędnych, uŜytkownik wprowadza swój adres e-mail, a następnie musi przycisnąć

przycisk „dalej”.

Kolejne kroki działania PLM:

• System otrzymuje połoŜenie geograficzne uŜytkownika;

• Znajduje 3 najbliŜej usytuowane stacje pomiarowe;

• Pobiera pomiary parametrów powietrza wykonane w bieŜącej godzinie;

• Interpoluje wartości kaŜdego parametru metodą odwrotnych odległości;

• Wysyła do uŜytkownika e-mail z tabelką, w której są interpolowane parametry

powietrza charakterystyczne dla jego lokalizacji, a takŜe załączony plik KML. Plik ten

zawiera dane o połoŜeniu uŜytkownika, trzech najbliŜszych stacjach oraz wartości

poszczególnych parametrów pomierzonych na tych konkretnych stacjach.

4.2.3.1. Dane do interpolacji

Wszystkie obiekty stacji pomiarowych, znajdujące się w bazie danych, posiadają cechy

połoŜenia geograficznego przeniesione w takiej samej formie, w jakiej były udostępnione na

stronach internetowych WIOŚ. Dane te były przedstawione w formacie „stopnie, minuty,

Page 68: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

66

sekundy dziesiętne”, czyli np. 52° 12' 12''. Google Earth korzysta z notacji „stopnie

dziesiętne”, dlatego potrzebna była konwersja współrzędnych. Przy zapisywaniu

współrzędnych do bazy pozbawiłam je wszystkich znaków specjalnych, a zamiast nich

uŜyłam spacji, dodatkowo, jeŜeli współrzędna miała postać krótszą od zapisu „stopnie,

minuty, sekundy”, to brakujące miejsca uzupełniałam zerami, np. 52 00 00.

Podczas działania algorytm tworzy tablicę $odleglosci, w której zapisuje odległości punktu

połoŜenia uŜytkownika od wszystkich stacji znajdujących się w bazie. Następnie tablica ta

jest sortowana od najmniejszej wartości do największej. Trzy pierwsze elementy tablicy, to są

właśnie najbliŜsze stacje pomiarowe, z których wyniki są brane pod uwagę. Krok ten ilustruje

fragment kodu źródłowego pokazanego na rysunku 30.

Rys.30. Tworzenie podręcznej tablicy $odległości.

Page 69: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

67

Współrzędne pobierane z bazy w tej pętli (rysunek 30) na bieŜąco są przeliczane na formaty

GE za pomocą funkcji Przelicz();, która jako parametr otrzymuje zmienną $coordinate

(rysunek 31). Zmienna $coordinate otrzymuje rekord pobrany wcześniej z bazy.

Rys.31. Funkcja Przelicz().

4.2.3.2. Pobieranie pomiarów

W poprzednim kroku zostały znalezione trzy najbliŜsze stacje pomiarowe. W tym kroku

system pobiera z bazy danych wykonane na tych stacjach pomiary z bieŜącej godziny.

Do bazy kierowane jest odpowiednie zapytanie, a następnie są tworzone osobne tablice dla

kaŜdego mierzonego parametru. Kluczem do tych tablic są ID stacji pomiarowych skąd te

pomiary pochodzą. Dzięki temu, efektem końcowym działania tej części algorytmu są tablice

o takiej postaci:

$CO[49] = 251,89 $NOx[49] = 22,18

$CO[21] = 234,67 $NOx[21] = 6,19

$CO[37] = 260,21 $NOx[37] = 13,67

Np.: $CO[49] = 251,89, co oznacza, Ŝe na stacji o ID=49 wartość CO wynosiła 251,89.

Page 70: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

68

4.2.3.3. Interpolacja

Zadanie interpolacji moŜemy sformułować następująco:

W przedziale [a,b] mamy danych n+1 róŜnych punktów x0,x1,...,xn (węzły interpolacji) oraz

wartości funkcji y=f(x) w tych punktach f(x0)=y0,f(x1)=y1,...,f(xn)=yn . Znaleźć funkcję F(x),

która w węzłach interpolacji ma te same wartości co f(x) i przybliŜa f(x) w punktach [Orkisz,

2005].

Metoda odwrotnych odległo ści

W systemie PLM interpolacja jest wykonywana metodą odwrotnych odległości. Metoda ta

opiera się na załoŜeniu, Ŝe wpływ obserwacji w punkcie pomiarowym na dowolny punkt jest

odwrotnie proporcjonalny do odległości dzielącej dany punkt obliczeniowy od stacji

pomiarowej. Odległość jest współczynnikiem wagowym wpływu poszczególnych stacji

pomiarowych na wartość rozkładanego przestrzennie parametru. Im bardziej punkt

pomiarowy jest oddalony od punktu obliczeniowego, tym bardziej jego wpływ maleje

[http://www.iigw.pl].

Wzory na obliczenie wartości średniej parametru dla podanej lokalizacji:

Pi – wielkość parametru pomierzona na i-tym posterunku pomiarowym;

wi – waga i-tego posterunku pomiarowego;

Page 71: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

69

WAG – miara wag odległości stacji pomiarowych;

Li – odległość i-itego posterunku od miejsca połoŜenia uŜytkownika;

[http://www.iigw.pl]

Na początku algorytm oblicza wartość WAG. Dokonuje tego sumując wartości z tablicy

$odleglości, dla trzech pierwszych elementów, juŜ po jej posortowaniu. Następnie dla

kaŜdego posterunku są obliczane wagi za pomocą funkcji Licz_wage_stacji($L,$WAG), która

otrzymuje pod zmienna $L odległość stacji od punktu połoŜenia uŜytkownika i wcześniej

wyliczoną zmienną $WAG (rysunek 32).

Rys.32. Funkcja Licz_wage_stacji().

Wagi stacji są przechowywane w tablicy $w, w której kluczami są ID stacji, tak samo jak

w przypadku tablicy $odległosci i tablic wszystkich parametrów. Zapamiętanie danych w tak

przygotowanych tablicach umoŜliwia wykonanie ostatniego kroku w pętli, która jest pokazana

na rysunku 33.

Page 72: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

70

Rys.33. Interpolacja metodą odwrotnych odległości w pętli foreach.

W kodzie pokazanym na powyŜszym rysunku na początku są ustawiane wartości średnie

wszystkich parametrów na zero w celu umoŜliwienia późniejszego wykorzystania tych

zmiennych w pętli bez wygenerowania błędu PHP. Pętla foreach, którą tutaj zaprezentowano

wykorzystuje wspólne klucze we wszystkich tabelach pomocniczych i w kaŜdym kroku dla

wszystkich parametrów jednocześnie wykonuje przemnaŜanie wag przez wartość parametru

pomierzonego na danej stacji, a następnie dodaje ten wynik do wcześniej zapamiętanej

wartości średniej parametru.

Po zakończeniu działania tej pętli pod zmiennymi $CO_sr, $NO_sr, $NO2_sr, $Nox_sr,

$Ozon_sr, $PM10_sr, $SO2_sr, $Kierunek_sr, $V_sr przechowywane są wartości średnie

pochodzące z interpolacji parametrów metodą odwrotnych odległości.

Page 73: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

71

4.2.4. Interfejs u Ŝytkownika

Witrynę WWW moŜemy traktować jako przykład interfejsu uŜytkownika. Wchodząc na

stronę domyślnie zostanie wywołana ta, na której mieści się formularz. UŜytkownik w celu

skorzystania z Pollution Level Monitor musi podać swoją lokalizację uŜywając

wbudowanego narzędzia Web Map - Google Maps oraz wpisać swój adres e-mail.

Interpolacja zostanie wykonana po naciśnięciu „dalej”.

4.2.4.1. Narzędzie Google Maps

Mapa wykorzystana w systemie PLM, jest zewnętrznym narzędziem firmy Google. Obsługa

jej jest bardzo prosta. Przesuwając mapę, znajdujemy na niej dowolny punkt. W celu

przybliŜania lub oddalania korzystamy ze scrolla na myszy lub robimy to za pomocą

kontrolek zamieszczonych na mapie. Dla jeszcze dokładniejszego rozpoznania swojej

lokalizacji moŜna uruchomić funkcję podglądu satelitarnego, wciskając na panelu mapy

przycisk „Satelita” (patrz rysunek 34). Przy kaŜdym kliknięciu w mapę ustawiany jest

znacznik, a jego współrzędne automatycznie wpisywane są do formularza.

Page 74: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

72

Rys.34. Kontrolki do sterowania widokiem w Google Maps.

Do osadzenia mapy w witrynie Systemu PLM została wykorzystana funkcja load() napisana

w języku JavaScript. Do obsługi zdarzenia „click” uŜyto funkcji addListener() ze zbioru

funkcji Gevent, naleŜących do Google Maps API (patrz rysunek 35). „Zdarzenie click”, to

reakcja, która następuje po kliknięciu na mapę, czyli pojawienie się współrzędnych połoŜenia

geograficznego w odpowiednich polach formularza.

Aby móc skorzystać na stronie z tego narzędzia firmy Gogle, naleŜało wygenerować API

Key. Aby to zrobić naleŜy zapoznać się z wymogami Google i zaakceptować warunki przy

rejestracji. Klucz otrzymuje się dla konkretnej domeny lub podkatalogu na serwerze. Po

wygenerowaniu tego klucza naleŜy we wszystkich dokumentach, gdzie ma być wykorzystana

mapa dodać wpis w nagłówku strony, który jest pokazany na rysunku 35.

Page 75: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

73

Rys.35. Google Maps API Key wklejany do nagłówka pliku HTML.

Podany tutaj API Key został wygenerowany dla ścieŜki http://gamma.fsi.pl/DragonMGR/

i tylko pliki z tej lokalizacji mogą korzystać z narzędzi Google Maps z takim kluczem.

Page 76: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

74

Rys.36. Funkcje do osadzenia Google Maps na stronie prywatnej stronie WWW.

W deklaracji body musimy dodać inicjację mapy: <body onload=”load()”

onunload=”GUnload()”>. Funkcja load() (patrz rysunek 36) jest wywoływana w momencie

ładowania się strony. To obsługuje zdarzenie „onload” znacznika <body>. W momencie

ładowania mapy odnajdywany jest węzeł o id „map”, do którego jest następnie ta mapka jest

Page 77: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

75

osadzana. To jest „kontener” (nomenklatura JavaScript) o wielkości 600px na 500px, węzeł,

do którego wgrywana jest mapa (patrz rysunek 37).

Rys.37. Kontener do osadzenia mapy na stronie WWW.

4.2.4.2. Formatowanie maila do u Ŝytkownika

Po uzupełnieniu formularza na stronie i przyciśnięciu „dalej” na ekranie pokazuje się tabelka

z interpolowanymi danymi dla podanej lokalizacji przez uŜytkownika. Pojawienie się tego

komunikatu oznacza takŜe, Ŝe pod podany przez uŜytkownika adres został wysłany mail

z taką samą tabelką oraz plikiem *.KLM.

Skrypt przygotowujący treść maila jest uruchamiany po interpolacji parametrów. Na początku

formatuje tabelę HTML z wynikami, a następnie tworzy plik KML, który wysyła

w załączniku. W pliku KML są zebrane wszystkie dane do wyświetlenia w GIS i składa się on

z poniŜej przedstawionych elementów:

1. Punkt, który uŜytkownik podał jako lokalizację (rysunek 38).

Rys.38. Przykład kodu pliku KML. Ustawianie znacznika punktu.

Page 78: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

76

2. Linie łączące trzy najbliŜsze stacje pomiarowe z podaną lokalizacją po to, aby było widać

skąd pochodzą dane i jakie to są odległości (rysunek 37). Linie są generowane w pętli dla

kaŜdej stacji, która była brana pod uwagę podczas interpolacji.

Rys.39. Przykład kodu pliku KML. Rysowanie linii.

3. W punktach, w których znajdują się stacje są takŜe do nich dodane opisy, które tworzy

pętla w kodzie pokazanym na rysunku 40.

Page 79: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

77

Rys.40. Przykład kodu pliku KML. Tworzenie punktu z opisem.

Wszystkie wyŜej opisane komponenty są przygotowywane przez skrypt tak, aby stanowiły

jedną logiczną całość dla interpretera programu Google Earth, dlatego znajdują się

w znaczniku <Folder></Folder>. W ten sposób ograniczany konkretny zbiór danych.

Folder dodatkowo zawarty jest w znaczniku <Document></Document>, wymaganym

w składni plik KLM (rysunek 41). W obrębie jednego dokumentu moŜe znajdować się kilka

folderów. W przeglądarce GE są one wtedy widoczne jako osobne porcje danych.

Rys.41. Przykład kodu pliku KML. Struktura pliku.

Page 80: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

78

4.2.5. Import pliku KML do programu Google Earth

Aby uruchomić plik KML nadesłany do uŜytkownika mailem naleŜy mieć zainstalowaną

aplikację Google Earth oraz aktywne łącze internetowe. Wystarczy otworzyć plik i dane,

które on zawiera pokaŜą się na mapie. Lokalizację wybraną przez uŜytkownika symbolizuje

Ŝółta przypinka, a od niej odchodzą linie łączące stacje pomiarowe, z których dane

o wartościach parametrów powietrza były brane pod uwagę (rysunek 42).

Po lewej stronie okna interfejsu GE (patrz rysunek 43) znajduje się okienko z widokiem

przeglądanych przez nas plików. Sterowanie widokiem jest moŜliwe za pomocą odznaczania

i zaznaczania tych plików, załadowanych wcześniej do programu. Naciskając na „plus” obok

nazwy pliku, rozwija się lista folderów, a następnie klikając przy nazwie folderu rozwija się

lista elementów w nim zawartych. Klikając w nazwy tych elementów zaświetlamy opisy na

mapie.

Rys.42. Przykład widoku pliku wynikowego otwartego w programie Google Earth.

Page 81: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

79

Rys.43. Google Earth. Widok okna programu.

Widok mapy moŜna dostosować do własnych potrzeb oraz wygody korzystając z licznych

wbudowanych funkcji słuŜących do tego np. włączanie siatki, dostosowywanie okien mapy,

włączanie okien podręcznych, zoom itd.

Page 82: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

80

5. Podsumowanie

Udostępnianie danych o zanieczyszczeniach środowiska to jedno z podstawowych zadań

Programu Państwowego Monitoringu Środowiska. Na dzień dzisiejszy szeroki dostęp do

takich danych mają tylko instytucje ściśle związane z ochroną środowiska. Z punktu widzenia

zwykłego uŜytkownika nie istnieje narzędzie, które by pomagało takie informacje pozyskać

i przedstawić w zrozumiałej dla przeciętnego człowieka formie.

System PLM – Pollution Level Monitor przedstawia dane o parametrach środowiska

w czytelny i zrozumiały sposób. Dostarcza informacji o wartościach zanieczyszczeń w

dowolnej lokalizacji, którą wskaŜe uŜytkownik, bez konieczności wykonywania

specjalistycznych obliczeń.

System PLM rozwiązuje problem, z którym zetknęłam się jako zwykły uŜytkownik sieci -

dostępność do danych o stanie zanieczyszczenia środowiska. Informacje dostępne w sieci to

raporty godzinowe, dzienne, tygodniowe lub miesięczne zamieszczone w postaci tabelek na

stronach internetowych Wojewódzkich Inspektoratach Ochrony Środowiska.

Zanieczyszczenia jednak nie poddają się podziałom administracyjnym i w celu wyciągnięcia

wniosków potrzebne są dane, które podają informacje o zanieczyszczeniach mających wpływ

na obszar, w którym uŜytkownik tego potrzebuje.

U podstaw idei leŜy informowanie na bieŜąco o stanie środowiska dowolnego uŜytkownika

bazując na interakcji z nim. Pomysłów na wykorzystanie moŜe być jednak wiele. System

PLM moŜe być komponentem systemów bardziej rozbudowanych, gdzie odpytanie mogłoby

być realizowane bez interakcji z uŜytkownikiem, ale moŜe teŜ się rozwijać autonomicznie.

Page 83: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

81

Jednym z ciekawszych pomysłów na zastosowanie Systemu PLM jest wykorzystanie go do

generowania plansz poglądowych w celu przeprowadzania analiz. Graficzne przedstawienie

wartości jest najskuteczniejszym podejściem do zagadnienia analizy zjawisk.

Zestaw narzędzi wykorzystanych do budowy systemu PLM jest zbiorem ogólnodostępnych

i darmowych narzędzi. Jest to punkt przecięcia się wielu technologii informatycznych, które

dzisiaj juŜ są powszechnie znane i wykorzystywane w róŜnych dziedzinach, jednak ich

połączenia dają o wiele większe pola moŜliwości. Budując rzeczywisty system dedykowany,

narzędzia te mogą być dowolnie zastępowane bardziej zaawansowanymi i profesjonalnymi

z dziedziny inŜynierii środowiska.

Punkty w systemie, które moŜna rozwijać i usprawniać:

• Sposób, w jaki dane trafiają do systemu.

W systemie PLM zostało przyjęte załoŜenie, Ŝe dane o wartościach pomierzonych

parametrów zostały wcześniej wpisane do bazy. Ten proces moŜna zautomatyzować,

aby systemy sterowania stacjami pomiarowymi przekazywały wyniki pomiarów

bezpośrednio do systemu PLM. Wówczas znacznie przyśpiesza się proces aktualizacji

danych w bazie.

Problem automatyzacji procesu pobierania danych moŜna rozwiązać conajmniej na

dwa sposoby. Jeden, to bezpośrednia integracja Systemu PLM z systemem

gromadzenia danych na stacjach pomiarowych na zasadzie regularnych eksportów

i importów raportów. Drugi, to web harvesting, nie wymagający integracji, a co za

tym idzie, zapisu w ustawach o rozpowszechnianiu takich danych. Tego typu

rozwiązania istnieją i zostały opisane [Kasiński, 2007].

• Pobranie danych o lokalizacji.

Na razie uŜytkownik podaje ją ręcznie wyszukując na mapie i klikając w odpowiedni

punkt. PodąŜając za rozwojem przenośnych urządzeń moŜna zrobić dynamiczną

Page 84: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

82

lokalizację urządzenia, oraz automatyczne podanie danych geolokalizacyjnych

uŜytkownika do systemu za pomogą GPS.

• Dane pochodzące z raportów dziennych.

To jest celowe ograniczenie systemu wynikające z załoŜenia zbudowania systemu

opartego na ogólnodostępnych danych oraz narzędziach, a w raportach ze stron WIOŚ

tylko takie raporty są opublikowane. MoŜna dodać moŜliwości wykorzystywania

raportów rocznych, miesięcznych i tygodniowych, jeŜeli będzie do nich dostęp.

• Pomiary, które są przechowywane w bazie danych PLM są pomiarami godzinowymi.

Wynika to z rodzaju danych udostępnionych na stronach internetowych wojewódzkich

WIOŚ. To załoŜenie moŜna zmienić.

• Stosowany algorytm do interpolacji.

Zastosowana do interpolacji metoda odwrotnych odległości miała posłuŜyć jedynie

jako przykład. Jej miejsce mogą zająć bardziej złoŜone algorytmy. Unowocześnienia

i dopracowywanie nowych algorytmów, dopisywanie nowych funkcjonalności do

modelowania rozprzestrzeniania się zanieczyszczeń to zabiegi wskazane do rozwoju

systemu.

Page 85: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

83

6. Wnioski

Na dzień dzisiejszy zwykły uŜytkownik sieci nie ma łatwego dostępu do danych o stanie

środowiska. Jedynie ma moŜliwość przeglądania raportów opublikowanych na stronach

internetowych Wojewódzkich Inspektoratów Ochrony Środowiska. Dane podane w tej postaci

są dla przeciętnego człowieka niezrozumiałe.

Do analizy kondycji środowiska nie mogą istnieć sztuczne podziały, tzn. danych zebranych ze

stacji pomiarowych nie moŜemy rozpatrywać w odniesieniu do krajowych podziałów

administracyjnych, a w taki sposób niestety są one udostępniane publicznie.

Program Państwowego Monitoringu Środowiska zakłada szerzenie wiedzy o stanie

środowiska. Obecnie do tych danych mają dostęp tylko pracownicy ochrony środowiska.

MoŜliwości poszerzania programów oraz rozwoju polityki ochrony środowiska leŜą jednak

w jak najszerszej publikacji tych danych, w rozpowszechnianiu ich i przekazywaniu do

uŜytku publicznego. Im bardziej wzrośnie poziom wiedzy ludzi na temat emisji

zanieczyszczeń w ich pobliŜu, tym bardziej zdopinguje ich to do działań, które będę miały na

celu ochronę środowiska.

Zbudowanie funkcjonalnego systemu usprawniającego pozyskiwanie oraz interpretację

danych o stanie środowiska - to umiejętne połączenie wybranych technologii

informatycznych.

Koszt stworzenia pomocniczych systemów typu PLM jest niewielki. Istnieje wiele narzędzi

darmowych i łatwych do zaimplementowania. Narzędzia typu Google Maps i Google Earth

moŜna wykorzystać jako składowe bardziej funkcjonalnie zaawansowanych systemów niŜ

Pollution Level Monitor.

Page 86: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

84

System PLM charakteryzuje się skalowalnością oraz duŜymi moŜliwościami rozwoju, dzięki

zastosowaniu CMS FSite, ale to nie jedyny CMS, który moŜna zastosować. W sieci

dostępnych jest kilka o podobnych moŜliwościach, np. TYPO3, Mambo, Joomla.

Pollution Level Monitor to przede wszystkim model dydaktyczny, którego pierwszorzędnym

celem jest pokazanie, Ŝe brakuje takiego systemu, nie jest on trudny do zrealizowania, a na

pewno byłby pomocny.

Page 87: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Anna Bielutin Praca Magisterska

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska

z wykorzystaniem Google Maps i Google Earth

85

7. Spis ilustracji

Rys.1. Technologie i standardy wykorzystane w systemie PLM............................................ 9

Rys.2. Przykład hierarchicznej bazy danych......................................................................... 12

Rys.3. Przykład dokumentu XHTML. .................................................................................. 22

Rys.4. Przykład kodu wynikowego po zastosowaniu InnerHTML....................................... 23

Rys.5. Przykład zagnieŜdŜenia w HTML kodów języków PHP i SQL. ............................... 27

Rys.6. Przykład dokumentu XML......................................................................................... 29

Rys.7. Przykład nagłówka KML. .......................................................................................... 31

Rys.8. Struktura Państwowego Monitoringu Środowiska [WWW WIOŚ Mazowieckie].... 35

Rys.9. Struktura Państwowego Monitoringu Środowiska. Instytucje [WWW WIOŚ

Mazowieckie]. .......................................................................................................................... 37

Rys.10. Stacjonarna stacja monitoringu powietrza w Trzebini.......................................... 40

Rys.11. Aparatura pomiarowa wykorzystywana w stacjach monitoringu ......................... 40

Rys.12. Schemat działania systemu PLM........................................................................... 41

Rys.13. Interfejs Pollution Level Monitor.......................................................................... 44

Rys.14. Wynik działania PLM - tabela z interpolowanymi wartościami parametrów....... 45

Rys.15. Wynik działania PLM - tabela z interpolowanymi wartościami parametrów

(przybliŜenie). .......................................................................................................................... 46

Rys.16. Lista tabel w bazie Systemu PLM (Program phpMyAdmin)................................ 51

Rys.17. Tabela „Objects_Object” (Program phpMyAdmin).............................................. 52

Rys.18. Tabela „Object_Objeck2Language” (Program phpMyAdmin)............................. 54

Rys.19. Tabela „Objects_ObjectCategory” (Program phpMyAdmin). .............................. 55

Rys.20. Główne menu panelu CMS FSite. .........................................................................57

Rys.21. Lista cech działów rodzaju „txt” (Panel administracyjny CMS FSite). ................ 57

Rys.22. Struktura serwisu Systemu PLM (Panel administracyjny CMS FSite)................. 58

Rys.23. Lista cech obiektu „Pomiar” (Panel administracyjny FSite)................................. 59

Rys.24. Lista cech obiektu „Stacja” (Panel administracyjny FSite)................................... 59

Page 88: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

Rys.25. Lista obiektów rodzaju „Pomiary” (Panel administracyjny FSite). ...................... 60

Rys.26. Lista obiektów rodzaju „Stacje”. (Panel administracyjny FSite). ........................ 60

Rys.27. Dane szczegółowe obiektu typu „Pomiar” (Panel administracyjny FSite). .......... 61

Rys.28. Dane szczegółowe obiektu typu „Stacja” (Panel administracyjny FSite). ............ 62

Rys.29. Relacja między obiektami typu „Pomiar”, a obiektami typu „Stacja”.................. 64

Rys.30. Tworzenie podręcznej tablicy $odległości. ........................................................... 66

Rys.31. Funkcja Przelicz().................................................................................................. 67

Rys.32. Funkcja Licz_wage_stacji()................................................................................... 69

Rys.33. Interpolacja metodą odwrotnych odległości w pętli foreach................................. 70

Rys.34. Kontrolki do sterowania widokiem w Google Maps............................................. 72

Rys.35. Google Maps API Key wklejany do nagłówka pliku HTML. .............................. 73

Rys.36. Funkcje do osadzenia Google Maps na stronie prywatnej stronie WWW............ 74

Rys.37. Kontener do osadzenia mapy na stronie WWW.................................................... 75

Rys.38. Przykład kodu pliku KML. Ustawianie znacznika punktu.................................... 75

Rys.39. Przykład kodu pliku KML. Rysowanie linii. ........................................................ 76

Rys.40. Przykład kodu pliku KML. Tworzenie punktu z opisem...................................... 77

Rys.41. Przykład kodu pliku KML. Struktura pliku........................................................... 77

Rys.42. Przykład widoku pliku wynikowego otwartego w programie Google Earth. ....... 78

Rys.43. Google Earth. Widok okna programu. .................................................................. 79

Page 89: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

8. Literatura

Prawo ochrony środowiska (Dz. U. Nr 62, poz. 627).

K. Subieta: Słownik terminów z zakresu obiektowości. Akademicka Oficyna Wydawnicza

PLJ, 1999.

T. Converce, J. Park: PHP 4. Biblia. Helion, 2001.

R.Szczepanek: Materiały dydaktyczne z zajęć „Bazy danych”. Rok akad. 2005/2006.

Edgar F.Codd: The relational model for database management. Menlo Park,

California,1990.

Marcin Kasiński : Praca magisterska „WebHarvesting” – alternatywna metoda integracji

danych meteorologicznych. Politechnika Krakowska,2007.

E. A. Meyer: CSS według Erica Meyera. Sztuka projektowania stron WWW. Helion, 2005

Paweł Leszek: Moje SQL. Tips&Trics - PC World Computer. Artykuł z 1.04.2001

(http://www.pctips.pl/artykuly/9672/Moje.SQL.html).

Star, Estes: Geographic informa tion systems: an introduction. 1990.

P.Józwik, M.Mazur: Obiektowe bazy danych - przegląd i analiza rozwiązań. 2002.

Robert Budzyński: Wstęp do technologii baz danych. Rok 1998, Uniwersytet Warszawski.

Hachler, Allgower: Online Visualization Of Spatial Data. Praca pod kierunkiem

Dr.Allgower B., Prof. Dr. Weibel R., Departament of Geographu, University of Zurych, 2003.

R. Stones, N. Mattew: Bazy danych i MySQL. Od podstaw. Helion, 2003.

Page 90: INSTYTUT INśYNIERII I GOSPODARKI WODNEJholmes.iigw.pl/~rszczepa/dyplomy/2181_Anna_Bielutin.pdfAnna Bielutin Praca Magisterska Pollution Level Monitor – interaktywna wizualizacja

9. Internet

WWW WIOŚ Mazowieckie http://wios.warszawa.pl

Wikipedia – Wolna Encyklopedia http://pl.wikipedia.org

W3C – Word Wide Web Consortium http://www.w3.org

Ranking.pl http://ranking.pl

Google Code http://code.google.com

Google Maps http://maps.google.com

KML Documentation http://earth.google.com/kml

IIGW - PK http://www.iigw.pl

AutoCAD 3D http://usa.autodesk.com

Główny Inspektorat Ochrony Środowiska http://www.gios.gov.pl