All for Joomla All for Webmasters

Rocrail alapozó 2.rész

Értékelés:
(0 szavazat)

Folytatom az alapok bemutatását. Van belőle bőven, úgyhogy vágjunk is bele.

Korábban szó volt a Rocrail és a hozzá tartozó hardverek struktúrájáról, de az ismétlés sosem árt, fussuk át ezeket némi többlet információval kiegészítve.

Rocrail felépítése:

  • Szerver - Ő tulajdonképpen egy szoftver (polgári nevén egy program), a feladata hogy kapcsolatot létesítsen a digitális központunkkal (a központon keresztül pedig az ézékelőkkel, dekóderekkel, egyszóval mindennel ami a digitálisan vezérelhető vagy információ nyerhető ki belőle.), valamint ő tárolja, kezeli és értelmezi az általunk szerkesztett “dominó” asztalt annak összes beállításával, továbbá ő tartja a kapcsolatot a kliensekkel.

  • Objektum - Az objektum jelen esetben a valóság egy-egy leképzett darabja a dominó táblán, tehát sem nem szoftver, sem nem hardver. Legegyszerűbben úgy tudom elmagyarázni, hogy a rajzolt “térképen” minden egyes felhasznált “négyzet” külön objektumnak számít. Minden egyes objektumnak saját egyedi “ID”-je (azonosítója) van, mely csak az övé. Ha még is lenne két egyforma a “térképen”, akkor azok parancsai a korábbi parancsokat felülírják, így az azonos objektum “ID” kerülendő.
    Fontos megjegyezni, hogy az “ID”-k megadásakor már ideje korán gondoljunk arra, hogy véletlenül se variáljuk a kis és nagybetűket, mert például ha egy szenzornak “s1” azonosítót adunk, de “S1”-ként próbálunk rá hivatkozni, a program hibaüzenetet fog adni, mondván “S1” szenzor nincs. Szintén kerülendő az ékezetes és speciális karakterek használata, bár működik vele, de hibakereséskor komoly gondjaink adódhatnak. Fontos szabály, hogy ha akár csak egy “ID” is megváltoztatunk (pl.: átnevezünk) a szervert újra kell indítani, és újra kell rá csatlakozni, különben a változások nem lépnek életbe. (Az újraindítás igényét a szerver jelezni szokta.)

  • Interfész - Hardver, vagyis ez az első olyan dolog amibe már ténylegesen bele lehet rúgni. (Régi informatikus poén, hogy amibe bele tudsz rúgni az hardver, amibe nem az a szoftver.) Ez az eszköz létesíti a kapcsolatot a DCC központ és a szervert futtató gép között, ez az eszköz lehet soros, USB vagy LAN (esetleg vezeték nélküli) csatlakozású. Sok központba már benne van gyárilag így csak egy USB vagy a korábban említett csatlakók valamelyikét látjuk a központunk oldalán, a multiMaus-om esetében vennem kellett külön egy XpressNet adaptert így ott különálló egységként jelentkezik. Egyszer kell jól beállítani, utána nagy gondunk nem lesz vele.

  • Eszköz - Az objektum fizikai megfelelője, vagyis szintén bele lehet rúgni. Annyit azért érdemes hozzátenni, hogy például egy váltó vagy jelző objektum esetében az eszköz nem maga a kis jelzőlámpa vagy váltó lesz, hanem az azt működtető dekóder.

  • Végberendezés - Szintén hardver, ők az állítóművek, elő és térközjelzők, de akár sorompók, kocsiszétkapcsolók vagy bármi, lényeg hogy őket vezéreljük az eszközökkel.

  • Kliens - Szintén egy szoftver, mely a szerver által küldött információkat jeleníti meg számunkra, valamint lehetőséget biztosít az interakcióra (beavatkozásra, vagy egyszerűbben kezelésre). Ez a szoftver futhat ugyanazon a gépen mint a szerver, de távolról lehet másik gépen is vagy akár böngészőn keresztül, mobilon vagy tableten. Ilyen kliens például a RocView amit alapból fel is teleít a rendszer, de számtalan megoldás létezik.

Most, hogy a korábbiakat átismételtük és némileg kiegészítettük, térjünk rá egy nagyon fontos témakörre, a címzésre.

A címzés

Aki már eljutott odáig, hogy van legalább egy váltó vagy eszközdekódere gondolom sejti, hogy a címbeállítást itt sem ússza meg, ugyanis a pontos beállítás az egyetlen módja annak, hogy a programmal azt és úgy vezéreljünk amit és ahogy mi gondoljuk.

A címzés itt viszont két oldalból tevődik össze. A logikai és a fizikai címből. Logikai címnek az interfészek és objektumok címeit míg fizikai címnek az eszközök címeit kell tekintenünk.

Nézzük őket sorban:

  • "IID" - A szoftverben bárhol ahol ezt a mezőt látjuk ott az általuk használni kívánt interfész egyedi azonosítóját kell megadnunk. (Igen, egy asztalon belül több különböző interfészt is használhatunk.) Figyeljünk oda, hogy teljesen egyedi legyen, a kis és nagybetű használatára, viszont ebben az esetben ékezetes karakterek megengedettek, de kerülendők, mondat végi írásjelek és speciális karakterek NEM használhatók. Az interfész azonosítóját “IID”-t hardver hozzáadásakor határozzuk meg, később módosítható, de ez szerver újraindítást feltételez, valamint az érintett objektumok tulajdonságai között szintén át kell javítanunk.

  • "ID" - Az objektumok egyedi azonosítója. Az ID csak az adott objektum csoporton belül kell egyedinek lennie, tehát egy váltót és egy szenzort is elnevezhetünk “S1”-nek, de ez később megbosszulhatja magát például hibakeresés közben, általános jótanács, hogy hozzunk létre saját magunk egy “szabványt” magunknak és ragaszkodjunk hozzá, ne próbáljuk a nagyvasúti megfelelőket használni, mert csúnyán bele tudunk gabalyodni. Itt is figyeljünk oda, a kis és nagybetű használatára, az ékezetes karakterek megengedettek, de kerülendők, mondat végi írásjelek és speciális karakterek NEM használhatók.

  • "BUS" - Több gyártó több módon használja a buszrendszert, minden esetben azt kell választanunk amit az IID-hez kapcsolt interfész használ. Pár példa:

A legtöbb dekóderünket egyetlen címen keresztül érjük el, ilyenek például a mobil dekóderek (mozdonydekóder) mikor is csak egy címre hivatkozunk.
Az eszközdekódereket (szervó, váltó, jelző, stb.) cím és port párral vezéreljük, hiszen ezek döntő többsége 2 vagy annál több eszközt is képes vezérelni.

FONTOS!!! Ha Rocrail használata során valamely címnek “0”-adunk meg, akkor azt a szoftver használaton kívülinek fogja értelmezni, a helyes címzés megadásáig nem tudjuk állítani az adott eszközt és azon keresztül a végberendezést sem.

NMRA (National Model Railroad Association) szabványnak megfelelő dekóder elvi címfelépítése:

 

Címzés típusok röviden (eszközfüggő)

Module Accessory Decoder Address (MADA):

NMRA szabvány szerinti címzés, meghatározza a modul címét, majd a port számát amit használni kívánunk. Minden modulon meghatározott számú portot vezérelhetünk, minden portnak két kapuja van, melyek egy-egy végberendezés állapotának megváltoztatására használhatunk. A portok száma alapestben 4 de ez eszközfüggő, lehet több vagy kevesebb is.

A MADA megegyezik az NMRA címzéssel, de a portokra számozására figyeljünk oda, nem 0-tól 3-ig hanem 1-től 4-ig terjed az intervallum.

FONTOS!!! A Rocrail-ben a “GATE 0” (0-ás kapu) a “RED” (piros állapot), míg a “GATE 1” (1-es kapu) a “GREEN” (zöld állapot). Ezt jegyezzük meg, vagy célszerű magunk mellett, jól látható helyen tartani, sokszor szükségünk lesz rá.

 

Port Accessory Decoder Address (PADA):

A portszám szerinti címzés meghatároz egy különálló eszközcímet két kapuval. Tehát egy eszköz (modul), melyen 4 port van az 4 külön PADA címen lesz elérhető. Az NMRA és FADA címzést egyszerre csak pár interfész támogatja.

 

Flat Accessory Decoder Address (FADA):

Kapu szerinti címzés, a kapuk címét határozza meg közvetlenül. Itt egy eszköz (modul) aminek 4 portja összesen 8 különálló FADA címen lesz elérhető.

 

Szenzorok címzése:

Ha már az eszközök címzését nagyjából átfutottuk, egy pár szót még megemlítenék a szenzorok címzéséről. A Rocrail a szenzorokat (például vágány foglaltság érzékelő) FADA címzéssel használja, így minden esetben, ha nem ilyen címzést használunk alapból, akkor nekünk kell a végeredményt kiszámolni.  A szenzorok címzése 1-től indul felfelé.

Szenzorcímek számítása 16 portos modulok esetén:

Cím = (Modul szám -1) x 16 + Port szám (A 2. modul 5-ös portja tehát: (2-1) x 16 + 5 =21 )

Szenzorcímek számítása 8 portos modulok esetén:

A Lenz rendszerek esetében az első modul 65-nek felel meg, és a számítás is 8 portos modulokon alapszik, így némileg változik a képlet:

Cím = (Modul szám -1) x 8 + Port szám -1 (Az első modul első portja: (65-1) x 8 +1 -1 = 512 )

Ha tehát Lenz vagy kompatibilis interfészt használunk, akkor a szenzor portok nem 1-től, hanem 512-től indulnak felfelé.

Remélem ez a száraz anyag, meg a kevés matek nem riasztott el senkit, bár korábban azt ígértem, hogy a demó pálya kiértékelésével folytatom, erre mindenképp ki kellett téni, hiszen ezeknek az információknak a birtokában már jobban átláthatjuk a felületet, és a beállítási lehetőségeket. A következő részben viszont nem a demó kielemzésével foglalkozunk, hanem egy konkrét funkció lesz bemutatva ami pedig a megállással foglalkozik.

Gyakoroljatok és próbálkozzatok sokat, ígérem a következő részben elhagyjuk a száraz elméletet.

Ha tetszett a cikk, lájkold és oszd meg, a Fűtőház Facebook oldalát itt találjátok. ( LINK )

Tovább a kategóriában: « Rocrail alapozó Rocrail DEMO 1. »

3 hozzászólás

  • Hozzászólás hivatkozás Isve péntek, 20 december 2013 22:18 Írta: Isve

    Hát tudod...
    "Most kéne abbahagyni...elfutni elrohanni"
    Ez már nem vasútmodellezés, hanem informatika.
    Szerettem volna egy olyan leírást olvasni, ami egyszerű, programozáshoz nem értő modellezőnek is sorvezető.
    Ez most nem az!
    Nem lehetne folytatni, hogy kell a pályát belerakni, mozdonyokat, váltókat, jelzőket, stb és pályaszakaszokat?
    Csak nehogy én legyek az egyetlen, aki követ...

  • Hozzászólás hivatkozás Fűtőház szombat, 21 december 2013 10:34 Írta: Fűtőház

    Tudom, hogy kicsit száraz az anyag, de ha ezekkel a dolgokkal nem vagy tisztában, később falakba ütközöl. Egyébként túl sok informatika nincs benne, a fele az alapfogalmak tisztázása, a másik fele pedig a DCC címzés felépítését magyarázza. Ezeket nem kell megtanulni, de hidd el jó lesz visszaolvasni amikor azon fogsz gondolkodni, hogy vajon azt váltót vagy szenzort, hogyan érem el. A következő rész már gyakorlati lesz, csak kevés időbe kerül, mert videóanyagot is szeretnék mellékelni, fájlokat, hogy ki is lehessen próbálni.

  • Hozzászólás hivatkozás ISVE szombat, 21 december 2013 20:42 Írta: ISVE

    Remélem, ...
    Azért azt mégsem értem, hogy a Multimaus beprogramozásához semmi ilyen "száraz ismeret" nem kellett akár mozdony, akár váltó.
    Mindegy, ha végleg elakadok, úgysem hagylak békén, de azt már az e-mail címeden...:)

Új hozzászólás

A csillaggal (*) jelölt mezők kitöltése kötelező. A HTML kódok használata nem engedélyezett.