Súlyszerver
A RoolWikiBÓL
2011. május 23., 11:37 változat (szerkesztés) 192.168.1.158 (Vita) (→Működés) ← Előző változtatások |
2011. május 23., 11:37 változat (szerkesztés) (undo) 192.168.1.158 (Vita) (→Működés) Következő változtatások → |
||
65. sor: | 65. sor: | ||
* ''monitor'': a kliens kéri a mérlegtől érkező összes súlyt | * ''monitor'': a kliens kéri a mérlegtől érkező összes súlyt | ||
* ''clear'': megszünteti a kliens ''watch'' és ''monitor'' kéréseit | * ''clear'': megszünteti a kliens ''watch'' és ''monitor'' kéréseit | ||
- | * ''stop'': megszünteti az a kliens ''ask, ''watch'' és ''monitor'' kéréseit | + | * ''stop'': megszünteti a kliens ''ask, ''watch'' és ''monitor'' kéréseit |
* ''stat'': a mérlegszerver mérlegekkel, kérésekkel kapcsolatos állapotáról kérhetünk információt | * ''stat'': a mérlegszerver mérlegekkel, kérésekkel kapcsolatos állapotáról kérhetünk információt |
2011. május 23., 11:37 változat
A program célja a hagyományos soros portokon elérhető mérlegekkel való kapcsolattartás, a mért súlyok adatbázisba naplózása, valamint a mért súlyok hálózaton való elérése a mérlegek neve alapján. Mindezt Windows rendszereken, szolgáltatásként megvalósítva.
A program funkcióinak megfelelően a monitorozó képernyő fő részei:
Tartalomjegyzék |
A hálózati szolgáltatás eléréséhez szükséges adatok, valamint a szolgáltatást indító-leállító nyomógomb
Itt látható a Súlyszerver szolgáltatás elérésének címe, portja. A cím tájékoztató jellegű. Mivel esetleg több címen is elérhető a szerver. (Például a vezetékes és vezeték nélküli kapcsolatnak is saját egyedi címe van.) A nyomógomb segítségével leállítható, elindítható a szolgáltatás hálózati elérése. A program indulásakor a hálózati elérés automatikusan elindul. Ha mégsem annak leggyakrabban az alábbi két oka lehet:
- a súlyok naplózásához nem elérhető az adatbázis
- az operációs rendszer tűzfal programja nem engedélyezi a Súlyszerver számára az hálózati elérést
A súlyok naplózásához szükséges adatbázis elérési adatok
Minden mért súlyt rögzítünk PostgreSQL adatbázisban. Ha nem érhető el az adatbázis, vagy elérhető, de a naplózás mégis sikertelen, akkor a kliensek sem kapják meg a mért értéket. A szükséges paraméterek közül a felhasználó neve és jelszava nem módosítható.
Soros portok és jellemzőik
A soros portok táblázatban a gépben lévő soros portok látszanak. Amelyik porton elérhető a használni kívánt mérleg, annál be kell állítani a következő jellemzőket
- a mérleg nevét
- a mérleg típusát (az befolyásolja, hogy a mérlegtől kapott adatokból hogyan állítható elő a súly)
- az időzítést: ennyi ezredmásodpercenként a Súlyszerver automatikusan lekérdezi a mérlegtől a súlyt. A javasolt beállítás szerint üresen marad ez az oszlop, és a mérleg van úgy beállítva, hogy folyamatosan küldje az aktuális súlyt.
- a soros port jellemzőit: baud ráta, paritás, adat és stopbitek száma
A többi oszlopban az aktuális adatok láthatók:
- Mérleg Id: a mérleg adatbázisbeli azonosítója. Akkor válik láthatóvá, ha a monitorozást a nyomógombbal indítjuk (és elérhető az adatbázis)
- Monitor: a monitorozás állapotát jelzi (kezdetben üres, ekkor sincs monitorozás)
- Státusz: a soros portra kapcsolt eszköz állapotát jelzi (az üres azt jelzi, hogy nem történt az eszköz állapotában változás, tehát lehet akár be- vagy kikapcsolt állapotban is)
- Üzenet: a mérleg felől érkezett üzenet látszik, azaz ha a mérleg típusát helyesen választottuk ki, akkor a legutóbb beérkezett súly. Ha üres, akkor még nem érkezett a mérlegtől adat. Amennyiben helytelenül választottuk ki a mérleg típusát, akkor itt 0 lesz miután jött üzenet a mérlegtől.
Nyomógombok a portok táblázat alatt
- Mentés
A regisztrációs adatbázisba menti a működéshez szükséges adatokat:
- adatbázis elérési adatok. Ezen adatok minden mentéskor tárolásra kerülnek, és az új adatokkal a Súlyszerver újra megpróbál csatlakozni az adatbázishoz.
- aktuális sorban szereplő soros port adatok. Ehhez a portok táblázatnak kell az aktuális elemnek lennie. Ha a kurzor máshol van - a port táblázaton kívül -, akkor egyetlen port adat sem kerül elmentésre. A port adat mentéséről egy felugró üzenet tájékoztat.
- Monitorozás
A mérlegek közül elindítja annak a monitorozását, melyet a kurzor kijelöl. (Előtte érdemes a mérleg nevére klikkelni)
- Súly lekérés
Ha a kiválasztott mérleg monitorozása el van indítva, akkor a mérlegnek küld egy súlykérés üzenetet, melyre a mérleg az aktuális mért súllyal fog válaszolni.
A monitorozás és súly lekérés funkciókra a tesztelés miatt lehet szükség.
Súlyszerver belső naplózás
Súlyszerver működéséről szolgáltat információt. A Napló jelölőnégyzettel ki-bekapcsolható az üzenetek megjelenítése. Az üzenetek kimásolhatók, törölhetők. Nem javasolt a folyamatos naplózás az üzenetek időnkénti törlése nélkül, mert ha a napló mérete nagyon megnő (néhány ezer sor), akkor lassúvá válik az újabb üzenetek megjelenítése. Normál esetben nem szükséges a naplózás bekapcsolása. Ennek inkább a hibakereséskor van jelentősége.
Működés
Ha korábban az összes szükséges adatot beállítottuk, akkor a Súlyszerver induláskor
- megjeleníti ezeket
- csatlakozik az adatbázishoz
- készen áll a kliensek kapcsolatainak fogadására
- készen áll a mérlegek kezelésére
- a belső naplózás kikapcsolt állapotban van
Amikor a mérlegenkénti az első kérés beérkezik, akkor indul a mérleg monitorozása. Ha több kérés is érkezik ugyanattól a klienstől míg a mérleg válasza megérkezne, a kliens akkor csak egyetlen választ fog kapni. A mérleg monitorozása ezután folyamatos, akkor is ha több kérés egyáltalán nem érkezik. A súlyszerver egy adott mérleghez többféle kérést is fogad:
- ask: a kliens így - a következőként beérkező - aktuális súlyt kéri
- watch: a kliens kéri az összes, mások által ask kérésére adott választ (mások által kért súlyokat kéri)
- monitor: a kliens kéri a mérlegtől érkező összes súlyt
- clear: megszünteti a kliens watch és monitor kéréseit
- stop: megszünteti a kliens ask, watch és monitor kéréseit
- stat: a mérlegszerver mérlegekkel, kérésekkel kapcsolatos állapotáról kérhetünk információt