Telepítés Mielőtt használatba vehetnénk a programot, néhány összetevőt telepíteni kell, és egy-két beállítást is szükséges elvégeznünk. Erre azért van szükség, mert a szoftver működése során egy adatbázissal kommunikál. Ebben az adatbázisban tároljuk el a beolvasó modul által feldolgozott jegyzőkönyvek adatait, illetve egyéb olyan kiegészítő információkat, melyek lekérdezése lehetővé teszik majd a későbbiekben az ábrázolást, és a jelentések generálását. Ebben a részben a telepítés szükséges lépései kerülnek ismertetésre. 1. Csomagoljuk ki a merevlemezünkön egy általunk választott könyvtárba a Led.zip fájl tartalmát. 2. A Setup könyvtárban található xamp.exe telepítő fájl segítségével indítsuk el a XAMPP szoftvercsomag telepítését. A szoftvercsomag MySQL adatbázisszerver és Apache webszerver komponensét fogjuk telepíteni. 3. A telepítés menete magától értetődő, azonban néhány szempontot érdemes szem előtt tartanunk:
Fontos, hogy a telepítés célkönyvtára mindenképpen a célmeghajtó főkönyvtárában (gyökérkönyvtárában) foglaljon helyet, mert ez később sok kellemetlenségtől megkímélhet minket. Így javasolt, hogy fogadjuk fel a telepítő által felajánlott alapértelmezett értéket.
4. A „Service Section” listában válasszuk ki, hogy service-ként szeretnénk telepíteni a MySQL adatbázis és Apache webszervert!
A szerverek service módban való használata nem kötelező, azonban Windows NT alapú rendszerek esetében javasolt. Bizonyos körülmények között ugyanis teljesítményjavulást és stabilabb működést tesz lehetővé. A harmadik Filezilla komponens, egy Windows operációs rendszer alatt is kiválóan működő FTP szerver, így ha tervezzük, hogy a hálózaton FTP protokoll segítségével szeretnénk fájlokat mozgatni, ezt a lehetőséget is bekapcsolhatjuk. Megjegyzés: Windows operációs rendszer alatt ez a szoftvercsomag kiválóan együttműködik a programmal, de természetesen igény szerint, más forrásokból is telepíthetjük a megfelelő összetevőket. További operációs rendszerek használatakor, pl. Unix és Unix-like rendszerek (GNU/Linux) esetén ajánlott saját csomagkezelőjük segítségével telepíteni ezeket. Szinte minden Linux disztribúció tartalmaz metacsomagokat melyekkel a LAMP környezet könnyűszerrel kialakítható (Linux,Apache,MySQL,PHP). A Sun (most már Oracle) Java JRE terméke mellett ezekre van csak szükségünk. A fájlok másolásának megkezdéséhez nyomjuk meg az Install gombot! Miután a telepítő végzett, elindul a XAMPP vezérlőpanelje, melyet a következő ábra mutat.
Mint látható, a vezérlőpanelen az egyes komponensek aktuális státuszát láthatjuk, illetve a mellette lévő gombbal be/ki kapcsolhatjuk azokat. Ha minden rendben zajlott az installáció során, akkor az Apache webszerver és a MySQL adatbázisszervert a megfelelő gomb segítségével máris aktiválható, a szerver folyamatok ekkor elindulnak és készen állnak a kérések fogadására.
Miután az Apache és MySQL szerverek elindultak, nyissuk meg böngészőben a következő web címet: http://localhost (vagy ha névfeloldási probléma merülne fel, akkor a http://127.0.0.1 loopback interfész címet) Bár ennek az írásnak nem célja részletezni a XAMPP csomag biztonságtechnikai kérdéseit, azonban első dolgunk, a MySQL szerver root jelszavának beállítása, hiszen a későbbiekben ez kritikus jelentőségű információ lesz. Bármilyen komolyabb adatbázis műveletnél szükségünk lesz rá, így ezt a lépést részletesen tárgyaljuk.
Itt a baloldali menüből válasszuk ki a Security linket, majd a megnyíló oldalon kattintsunk a http://localhost/security/xamppsecurity.php hivatkozásra. Itt a MySQL root jelszót megadó résznél írjuk be kétszer a kívánt jelszót, majd kattintsunk a Password Changing gombra. Ezután a phpMyAdmin már biztosítani fogja a megadott felhasználóval történő bejelentkezés lehetőségét. Nyissuk meg a phpMyAdmin oldalát a böngészőnkben: http://localhost/phpmyadmin és jelentkezzünk be adminisztrátor felhasználóként (root), hogy létrehozzuk a megfelelő adatbázis felhasználót és a hozzá tartozó adatbázist, melyeket a program használni fog működése során!
Ehhez válasszuk ki a Jogok fület, majd a megnyíló oldalon kattintsunk az Új felhasználó hozzáadása linkre. Ekkor az új felhasználó létrehozására szolgáló oldalra jutunk, melyet a következő ábra szerint kell kitöltenünk. Az egyértelműség kedvéért álljanak itt a pontos adatok, melyeket meg kell adnunk: -
Felhasználónév: led Hoszt: Helyi (localhost) Jelszó: led
-
Adatbázis a felhasználó számára: Jelöljük ki a „Azonos nevű adatbázis létrehozása, és az összes jog engedélyezése” opciót. Ezzel a beállítással automatikusan létre fog jönni a szükséges adatbázis a megfelelő jogosultságokkal.
Ha a fenti adatok kitöltésével elkészültünk, és ellenőriztük is azok helyességét, akkor kattintsunk az Indítás gombra. Ha minden rendben zajlott, a jobb oldali adatbázisokat mutató listán megjelenik az elkészült led adatbázis. Mint az látható, még teljesen üres, egyelőre egyetlen táblát sem tartalmaz. Következő, feladatunk, hogy a megfelelő sql fájlból beimportáljuk az adatbázisunk szerkezetét. Ehhez
jelentkezzünk ki a főoldalon található Kilépés link segítségével, majd ezúttal a „led/led” felhasználónév/jelszó páros segítségével jelentkezzünk be ismét. A főoldalon válasszuk ki a jobb oldali listából a led adatbázist, majd kattintsunk az Importálás fülre, így a következő oldalra jutunk:
Kattintsunk a Tallózás gombra, majd válasszuk ki az adatbázis/database.sql fájlt. Amennyiben a művelet sikeres volt, úgy a következő képen látható végeredményt kell kapnunk. Amint az látható, a led adatbázis 12 új táblája létrejött. Ezeket megtekinthetjük, ha rákattintunk az adatbázis nevére a jobb oldalon.
A program Java nyelven íródott, így a futtatáshoz szükséges a Java Runtime Environment (JRE) telepítése. Ha ez eddig nem történt meg, akkor a http://java.com oldalról töltsük le és telepítsük a legfrissebb verziót. A Java Virtuális Gép beüzemelése után készen állunk a szoftverek használatára.
Beolvasó és feldolgozó modul Az elektronikus jegyzőkönyvek beolvasását és feldolgozását végző modul. Ennek segítségével tudjuk a mérőműszerek által generált jegyzőkönyvfájlok tartalmát bevinni az adatbázisba. Indítsuk el a yparser_gui.exe fájlt. Az adatbázis struktúrájának felépítéséről és az elektronikus jegyzőkönyvfájlok szerkezetéről további információkat a Szakdolgozat 33. oldalán kezdődő 4.1. Beolvasó és feldolgozó modul koncepciója című fejezetben található. Indítás után a következő ablak fogad minket:
A felső sorban találhatóak a vezérlésre szolgáló gombok illetve egyéb komponensek, míg ez alatt a sáv alatt az információs szövegterület helyezkedik el. A beolvasáshoz nyomjuk meg a „Jegyzőkönyv beolvasása” gombot. Ekkor a következő fájlkiválasztó dialógusablak segítségével megadhatjuk a feldolgozandó jegyzőkönyvet
tartalmazó fájlt. Nagyon fontos, hogy az adott fájl tartalmának meg kell felelnie a jegyzőkönyvek egyezményes szerkezetének a helyes értelmezés érdekében. Erről további pontos részleteket a már fent említett Szakdolgozat-fejezetben találunk.
Miután kiválasztottuk a megfelelő fájlt, a program megkísérli értelmezni annak tartalmát. Ez azt jelenti, hogy az egyes sorokban található adatokat egymás után beolvasva, megpróbálja a LED öregítő-gép egyes LED-modul pozícióihoz rendelni. Emlékeztetőként megjegyezzük, hogy összesen 16 oszlop, oszloponként 6 db LED modul pozíció kezelésére van a szoftver felkészülve. Az öregítő-gép belső felépítéséről és a pozíciókról egy precíz leírást olvashatunk a Szakdolgozat 21. oldalán kezdődő 3. Kísérletünk a gyakorlat tükrében című fejezetben.
Mint azt láthatjuk, az alapértelmezett beolvasáskor minden egyes sort növekvő oszlop és pozíció sorrendben kísérel meg felölteni. Azaz indulunk az első oszlop 1. pozíciójától, egyesével növekvő sorrendben haladunk a 6. pozícióig, majd ezt a 6 mérést ugyanebben a sorrendben ötször megismételjük. Majd áttérünk a következő 2. oszlopra. Természetesen, nem biztos, hogy az egyes LED modulok mérése ténylegesen ebben a sorrendben kerültek végrehajtásra, és az sem biztos, hogy mindig 5-ös iterációban haladtunk végig az egyes oszlopokon. Emiatt a programban lehetőségünk van ezt a default állapotot felülbírálni LED-kiosztási profil használatával. Ennek elkészítéséről később részletesen olvashatunk. Mielőtt azonban erre rátérnék, ejteni kell néhány szót azokról az esetekről, amikor hibás mérési jegyzőkönyvet kísérelünk meg beolvastatni. A program tartalmaz némi védelmet bizonyos nyilvánvaló hibák kiszűrésére. Ilyen, ha pl. 16 oszlopnál több adat szerepelne egy fájlban, vagy hiányos LED-kiosztást adnánk meg. Utóbbi akkor fordulhat elő, ha hibás LED-kiosztási profilt használunk az adott jegyzőkönyvhöz. Ezeknek a hibáknak a jelenlétét megpróbálja a feldolgozó modul felderíteni, és a felhasználó tudtára adni. Ilyenkor a jegyzőkönyvfájl sorait vörösen listázza, majd egy informatív hibaüzenetben tájékoztat a hibát kiváltó lehetséges okról. Ez roppant hasznos, mert így könnyebb kiszűrni a hibás jegyzőkönyveket, bár az adatbázisba importálás előtt mindenképpen érdemes áttekinteni a kilistázott sorokat, hogy megfelelőnek tűnnek-e. Íme, egy hibás (túl sok sort tartalmazó) jegyzőkönyv által kiváltott hibajelzés:
Most, hogy a jegyzőkönyv fájl beolvasásán túl vagyunk, térjünk rá a pozíció kiosztás testreszabhatóságának bemutatására. A program 3 beépített üzemmódot tartalmaz, melyek között a legördülő menüben a megfelelő kiválasztásával tudunk váltogatni: -
-
Alapértelmezett üzemmód: Az előbb bemutatott, oszloponként és soronkénti inkrementálást megvalósító üzemmód; Egyéni besorolás: Ekkor az „Új Sorrend” mezőben veszővel elválasztva felsorolhatjuk az egyes oszlopok sorrendjét, melyet a mérés során alkalmaztunk. Pl.: 1,5,2,6,3,7,4,8 Layout mode: LED kiosztási profil megadása. Ennek kerül most részletes bemutatásra, mivel ez az üzemmód teszi a legrugalmasabbá a jegyzőkönyvek feldolgozását.
Tehát ott tartottunk, hogy kiválasztottunk egy jegyzőkönyvet, melyet beolvastattunk, így sorait a program kilistázta. Mostanra a „LED térkép megadása” gomb engedélyezetté vált, így nyomjuk meg. Feljön egy 6 füllel rendelkező ablak, melyen további adatok megadására, illetve beállításokra van lehetőség. Alapértelmezetten a „Layout szerkesztése” fül van kiválasztva:
De mi is ez a kiosztási profil? Röviden, egy olyan táblázat, melyben kézileg tudjuk megadni, hogy melyik LED-modul mérése után milyen sorrendben követi egymást a többi mérés. Az egyes oszlopok sorrendjét is szabadon állíthatjuk, így a profil segítségével elmondható, hogy teljesen „szabad kezet” kapunk a mérések elvégzésére. Elviekben semmi akadálya, hogy az 5. oszloppal kezdjünk, először a 3. pozíciójában lévő modult mérjük, majd a 2,5,6,1 pozíciókkal folytassuk, és ezt az egyéni sorrendet 5-ször megismételve áttérjünk a következő általunk kiválasztott oszlopra. Az egyes mezőkben a következő szintaktika szerint lehet adatot bevinni: x,y:z -
x: oszlop sorszáma y: oszlopon belüli pozíció z: LED típusát megadó karaktersorozat
Tehát pl. a 2,5:a érték azt jelenti, hogy a második oszlop ötödik pozíciójában lévő LED típusa a „z” karakterhez rendelt érték. Az egyes karaktersorozat-típusleíró párokat az ablak xyz fülén tudjuk megnézni. Kattintsunk is át ide:
Mint látható, a fenti „Lekérdezés” gombbal lekérdezhetjük az adatbázisban található, már bevitt LED típusokat. Az alsó mezőkkel, illetve „Bevitel” gombbal pedig hozzáadhatunk a már meglévőekhez új LED-et, mely így bekerül az adatbázisba és karaktersorozatára a továbbiakban már hivatkozhatunk. Tehát miután ezeket az információkat áttekintettük, visszatérhetünk a LED-kiosztási profil szerkesztéséhez. Próbaképpen hozzunk létre egy olyan kiosztást, mely egy nyolc oszlopnyi mérést tartalmazó jegyzőkönyvhöz tartozik. Az oszlopok lemérése a következő sorrendben történik: 1,5,2,6,3,7,4,8. Az egyes oszlopokban a LED-modulok sorrendje pedig rendre: 1,2,3,4,5,6. A különböző oszlopokban különböző típusú LED-ek foglalnak helyet. A 2. oszlop 5. pozícióban és a 3. oszlop 4.-5. pozícióban lévő LED-ek meghibásodtak így ezeket nem mérjük. Íme, a példakiosztás:
Mint látható, amelyik pozícióban nem történt mérés, ott ezt a tényt „null” értékkel lehet jelezni. Ahová nem írunk értéket (pl.: 9,1: ), a program automatikusan „null” értéket feltételez. Miután a profil elkészült, érdemes azt elmentenünk, hiszen feltételezhető, hogy a további mérések során is ezt a LED-kiosztási sémát (vagy ettől csak kis mértékben eltérőt) fogjuk alkalmazni. Ehhez használjuk a mentés fület, ahol a „Save to file” gomb segítségével lehetőségünk van az aktuális profilt fájlba menteni. A „Betöltés” fül alatt található „Load from file” gombbal egy korábban már fájlba mentett profilt aktuális profilként betölthetünk. Természetesen, betöltés után szükség esetén tovább is szerkeszthető az aktuális profil. A profil elkészítése után kattintsunk át a „nyitófeszültségek és sötétáram” fülre. Itt adhatjuk meg az egyes oszlopokhoz tartozó nyitófeszültség értékpárokat. A nyitófeszültség az egyes oszlopok mérése előtt, illetve után is lemérésre kerül. A párokat alkotó értékeket „;” segítségével kell egymástól elválasztanunk: 2.2423;2.3221 (Az értékekben tizedespontot és
tizedesvesszőt tetszés szerint használhatunk). A sötétáram értékhatárt a jegyzőkönyvfájl beolvasásakor a program megkísérli megbecsülni.
Grafikus ábrázoló és riportgeneráló modul Ennek a modulnak a segítségével tudjuk vizuálisan, grafikus formátumban megjeleníteni az adatbázisba már bevitt mérések eredményeit. Miután elindítottuk a graphdrawer.exe programot, a következő ablak fogad minket:
Itt is a felső sávban helyezkednek el a vezérlésre szolgáló gombok és egyéb komponensek. Ez alatt található az interaktív grafikonterület, ahol frissítés gomb megnyomása után megjelenik a beállításoknak megfelelő grafikon. A terület interaktív, mert van lehetőségünk az egér segítségével egy adott intervallumot kinagyíthatunk, illetve a következőkre is van lehetőségünk: -
a grafikon megjelenítési tulajdonságainak megváltoztatása: színek, tengelyfeliratok, tengelyorientáció stb.; Grafikonterület vágólapra másolása, PNG formátumú képfájlba mentése, nyomtatása; Tetszőlegesen kijelölt tartomány nagyítása és kicsinyítése; Autorange: Automatikus nagyítás arra tartományra, mely még minden megjelenített értéket tartalmaz.
Ahhoz, hogy a program megjelenítsen valamit, először meg kell adni a megfelelő adatforrásokat, illetve megjelenítési beállításokat. Ezt a Beállítás gomb megnyomásával tehetjük meg. A következő párbeszédpanelt kapjuk:
Mint az fent látható, 6 db fül közül választhatunk. Nézzük meg ezeknek a füleknek a tartalmát egy tipikus megjelenítési példán keresztül! Tegyük fel, hogy először a 3. és 5. oszlop LEDjeinek stabilitását (fényáram értékének változását) az összes eddigi adatbázisban regisztrált érték alapján. Ehhez válasszuk ki a „LED adatforrások” fülön a lent látható kék checkboxok segítségével a 3. és 5. oszlopot. Ezek a kék checkboxok arra szolgálnak, hogy az egész oszlopot egyszerre kijelöljük, persze utólag van lehetőség kézileg kikapcsolni az egyes LEDeket. Természetesen kiválaszthatunk tetszőleges LED-eket is. Alapesetben az egyes értékeknek megfelelő helyen kis szimbólumok rajzolódnak ki a grafikonon. Azonban ha nem csak diszkrét pontokat, hanem a változási trendeket is szeretnénk megfigyelni, kapcsoljuk be az „interpolációs vonalakat”. Ehhez menjünk át a „Statisztika & relatív ábrázolás” fülre. Itt kattintsuk be az „Interpolációs görbék mutatása” checkboxot. Ha ezzel megvagyunk, menjünk át az „Oszlop nyitófeszültségek” fülre, majd nyugtázzuk a beállítottakat az „Alkalmaz” gomb lenyomásával. Jegyezzük meg, bármit is állítunk a beállító-panelen, mindig ennek a gombnak a
lenyomásával juthatunk vissza a grafikonhoz, mely így már értesül az új beállításokról, így ennek megfelelően fog viselkedni. A grafikon kirajzolásához most kattintsunk a „Grafikon frissítése” gombra!
Nézzük meg az eredményt! Ne feledjük, van lehetőségünk az egérrel bizonyos intervallumokat kirészletezni, miután kijelöltük azt.
Az alapállapothoz úgy térhetünk vissza, ha a bal egérgomb lenyomása után balra-fel húzzuk egeret. Lent a jelmagyarázatnál láthatjuk az egyes adatforrásokhoz rendelt szimbólumokat, mely megkönnyíti az ábra értelmezését. A LED-ek fényáramán kívül azok nyitófeszültségét is tudjuk ábrázolni a szoftver segítségével. Ehhez át kell kapcsolnunk az „Oszlop Nyitófeszültségek” fülön a felső checkbox segítségével a nyitófeszültség ábrázoló üzemmódba. Ezután engedélyezetté válnak a szükséges vezérlőelemek, mind ezen, mind pedig a „LED nyitófeszültségek” fülön. Mint látható, a mérések előtt/után mért teljes oszlopok nyitófeszültségét, illetve az egyes LED-ek nyitófeszültségének kiválasztására is lehetőség nyílik. Ha vissza akarunk váltani a fényáram ábrázolásához, megtehetjük a megadott checkbox negálásával. Nézzük meg részletesen a „Statisztika & relatív ábrázolás” fület:
A statisztika modul bekapcsolásával a következő opciók válnak elérhetővé: -
Normál Y értékek megjelenítése: Értelemszerűen az egyes mérési értékekre voinatkozik; Y értékek átlagának megjelenítése: Amennyiben ezt bekapcsoljuk, minden egyes adatforrásnál az 5 mérés átlaga is megjelenítésre kerül; Y értékének átlagához tartozó szórásának megjelenítése: Ezt bekapcsolva a mérések átlag értékhez tartozó standard szórása is megjelenítésre kerül;
Az egyéb beállítások blokk alatt a következő lehetőségek közül választhatunk: -
-
Áttérés relatív százalékos skálán való ábrázolásra: Ebben az üzemmódban a program az egyes LED-ekhez tartozó első mérési értékeket fogja 100%-ként ábrázolni. Minden későbbi időpontban történt mérés ehhez viszonyított relatív százalékos értékként kerül ábrázolására. Szeretném bekapcsolni a zéruspontot: Aktiválásakor a skála mindenképpen tartalmazni fogja a 0,0 koordinátát a bal alsó sarokban. Grafikonpontok mutatása és Interpolációs görbék mutatása: Ezzel a két opcióval váltogathatunk, hogy az ábrázolás során csak a grafikon pontjait, vagy csak azokat összekötő vonalakat, esetleg mindkettőt be kívánjuk kapcsolni.
A következő tab az „időintervallum beállítása”:
Ezen a fülön lehetőség van két timestamp megadására, melyek formátuma: ÉÉÉÉ-HHNN O:PP:MM. Értelemszerűen, ha megadjuk a kezdet és vég határokat, akkor csak az ebben az intervallumban történt mérések értékei kerülnek ábrázolásra. Van lehetőség csak kezdet és csak intervallumhatár megadására is. Ilyenkor hagyjuk az alapértelmezett értéken azt a határt, melyet nem kívánunk használni. Az utolsó fülön lehetőségünk nyílik törölni az adatbázisban szereplő értékekből:
Ez főleg akkor hasznos, ha bevitelkor valami miatt hibás mérési értékek/óraértékek kerültek az adatbázisba. Figyelem! Csak nagy körültekintéssel használjuk! A adatbázisban végrehajtott törlési művelet nem vonható vissza. Emiatt biztonsági okokból nem elég csak engedélyeznünk ezt a funkciót, de ki is kell kézileg törölnünk a szöveget. Majd át kell írnunk arra az óraértékre, mely időponthoz tartozó összes értéket törölni szeretnénk.
Miután elvégeztük a beállításokat térjünk vissza a főablakhoz. Nézzük meg a felső sorban található vezérlőkomponenseket sorrendben!
Gombok: -
-
PDF Riport generálása: erre kattintva, megadhatunk egy pdf fájlnevet (adjuk meg a kiterjesztést is! pl.: sample.pdf), melybe elmenti a program a grafikonból generált jelentést. Ez a grafikon adatforrásainak értékeit tartalmazza (ezt a részt a programkódban érdemes lesz átírni majd, az egyéni szükségleteknek megfelelően!); Beállítások: a beállítások párbeszédpanel előhívása; Grafikon frissítése: a beállítások változásainak életbeléptetése, grafikon újrarajzolása; Kilépés: a program bezárása.
Ábrázolási tartomány beállítása: -
relatív: ha ezt bekapcsoljuk, akkor átváltunk relatív százalékos ábrázolási módba; alfa ordináta/omega ordináta megadása: itt megadhatunk két ordinátát, amelyek által meghatározott intervallum mindenképpen meg fog jelenni a grafikonon; bekapcsol: bekapcsolja az előbbi ordinátákat.