background image

 

 
ul. Warszawska  24,  31-155  Kraków   

tel/fax (+48 12) 628 20 41   

e-mail: sekretariat@iigw.pl 

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

R A K Ó W  

2 0 0 8  

background image

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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 

.

 

background image

 

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

 

background image

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

 

 

background image

 

 

background image

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.  

background image

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. 

background image

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, 

background image

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 

background image

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. 

background image

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 

background image

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].  

 

background image

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]. 

background image

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. 

 

 

 

background image

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]. 

 

 

background image

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. 

 

background image

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]. 

background image

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]. 

 

background image

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 

background image

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]. 

background image

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.  

 

background image

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ą 

background image

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]. 

background image

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: 

 

 

 

 

 

background image

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. 

background image

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. 

background image

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] 

background image

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. 

 

background image

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. 

 

 

 

background image

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. 

background image

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. 

 

background image

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: 

background image

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.  

background image

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 

background image

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].

 

 

background image

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. 

background image

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] 

background image

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].  

 

background image

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]. 

background image

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, 

background image

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 

wdraŜanie 

metod 

analityczno-badawczych 

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. 

background image

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  

background image

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.

 

background image

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]. 

 

background image

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. 

background image

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. 

 

 

background image

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.  

background image

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 

background image

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.  

background image

Anna Bielutin 

 

Praca Magisterska 

Pollution Level Monitor – interaktywna wizualizacja parametrów środowiska 

 z wykorzystaniem Google Maps i Google Earth 

 

 

 

 48 

 

4.2.1 „CMS-FSite” 

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ą.  

background image

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 

background image

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.  

background image

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 

background image

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 

background image

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 

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. 

 

background image

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Ŝą. 

 

background image

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 

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 

background image

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. 

background image

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). 

 

background image

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). 

 

 

background image

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 

background image

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. 

background image

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). 

background image

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; 

background image

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: 

Kp – województwo kujawsko-pomorskie 

Bydg – miasto Bydgoszcz 

Blota – dzielnica lub ulica, na której jest ustawiona stacja.  

background image

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”.  

 

background image

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, 

background image

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. 

background image

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. 

 

background image

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  x

0

,x

1

,...,x

n

  (węzły  interpolacji)  oraz 

wartości funkcji y=f(x) w tych punktach f(x

0

)=y

0

,f(x

1

)=y

1

,...,f(x

n

)=y

n

 . 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; 

 

background image

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. 

 

background image

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. 

background image

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.  

 

 

background image

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. 

background image

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. 

background image

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. 

 

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 

background image

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. 

background image

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. 

 

background image

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. 

background image

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. 

 

background image

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.  

background image

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.  

 

background image

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ą 

background image

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.  

background image

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. 

 

background image

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. 

background image

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

 

background image

 

 

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

 

 

 

 

 

background image

 

 

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. 

background image

 

 

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