Ndërfaqja e jashtme e marrësit JAVAD GREIS GNSS

Specifikimet

  • Produkt: Marrës GREIS GNSS
  • Versioni i firmuerit: 4.5.00
  • Rishikimi i fundit: 14 tetor 2024

Informacioni i produktit

Marrësi GREIS GNSS është një pajisje ndërfaqe e jashtme me precizion të lartë e krijuar nga JAVAD GNSS, që ofron informacion të saktë pozicionimi.

Hyrje

GREIS është një pajisje e gjithanshme që përdoret për aplikacione të ndryshme. Këtu janë disa pika kyçe:

  • Çfarë është GREIS: Është një pajisje ndërfaqe e jashtme për marrës GNSS.
  • Si përdoret GREIS: Përdoret për të përmirësuar funksionalitetin dhe saktësinë e sistemeve GNSS.
  • Listat: Referojuni manualit për lista të detajuara të veçorive dhe funksionaliteteve të mbështetura.
  • Objektet: Eksploroni objekte të ndryshme që mund të përdoren me GREIS për detyra specifike.

Gjuha e hyrjes së marrësit

Gjuha e hyrjes së marrësit i lejon përdoruesit të ndërveprojnë me pajisjen duke përdorur komanda dhe sintaksë specifike. Këtu është një përmbledhje e shkurtërview:

  • Gjuha Pshamples: Mësoni nga ishamppër të kuptuar se si të komunikoni me pajisjen.
  • Sintaksa e gjuhës: Njihuni me rregullat sintaksore për dërgimin e komandave te marrësi.
  • Komandat: Përdorni komanda të ndryshme për të kontrolluar dhe konfiguruar pajisjen bazuar në kërkesat tuaja.

Mesazhet e Marrësit

Kuptimi i mesazheve të marrësit është thelbësor për interpretimin e të dhënave dhe informacionit të statusit. Ja çfarë duhet të dini:

  • Konventat: Ndiqni formate dhe vlera specifike për interpretimin e saktë të mesazheve.
  • Transmetimi standard i mesazheve: Eksploroni formatin standard të mesazhit për transmetim të qëndrueshëm të të dhënave.

Pyetjet e shpeshta

Pyetje: A mund të modifikoj firmuerin e Marrësit GREIS GNSS?
Përgjigje: Jo, modifikimi i firmuerit nuk lejohet sipas rregulloreve të së drejtës së autorit të JAVAD GNSS.

Pyetje: Si mund të aksesoj mbështetjen për çështje teknike që lidhen me Marrësin GREIS GNSS?
Përgjigje: Për mbështetje teknike, ju lutemi kontaktoni direkt JAVAD GNSS për ndihmë.

Faleminderit që keni blerë marrësin tuaj JAVAD GNSS. Materialet e disponueshme në këtë Udhëzues Referenci (“Udhëzuesi”) janë përgatitur nga JAVAD GNSS, Inc. për pronarët e produkteve JAVAD GNSS. Ai është krijuar për të ndihmuar pronarët me përdorimin e marrësit dhe përdorimi i tij është subjekt i këtyre termave dhe kushteve ("Kushtet dhe Afatet").

Termat dhe Kushtet
PËRDORIM PROFESIONAL Marrësit JAVAD GNSS janë krijuar për t'u përdorur nga një profesionist. Përdoruesi pritet të ketë njohuri dhe kuptim të mirë të përdoruesit dhe udhëzimeve të sigurisë përpara përdorimit, inspektimit ose rregullimit. Mbani gjithmonë mbrojtëset e nevojshme (këpucë sigurie, helmetë, etj.) kur përdorni marrësin.

MOFIMI I GARANCISË PËRVEÇ PËR ÇDO GARANCI NË KËTË UDHËZUES OSE NJË KARTELË GARANCIE QË SHOQËRON PRODUKTIN, KY UDHËZUES DHE MARRËSI JAPET "SIÇ ËSHTË". NUK KA GARANCI TJERA. JAVAD GNSS REFUZON ÇDO GARANCI TË NËNKUPTUAR TË TREGTUESHMËRISË OSE PËRSHTATSHMËRISË PËR ÇDO PËRDORIM OSE QËLLIM TË VEÇANTË. JAVAD GNSS DHE SHPËRNDARËT E TIJ NUK DO TË JETË PËRGJEGJËS PËR GABIME TEKNIKE OSE EDITORIale OSE MUSHTIMET E PËRMBAJTURA KËTU; AS PËR DËMET E RASTËSISHME APO PAJISË TË REZULTARA NGA MOBILIMI, PERFORMANCA APO PËRDORIMI I KËTIJ MATERIALI OSE MARRESI. DËMET E KËTË TË REFUZUARA PËRFSHIJNË POR NUK KUFIZOHEN NË HUMBJEN E KOHËS, HUMBJEN APO SHKATËRRIM TË TË DHËNAVE, HUMBJEN E FITIMIT, KURSIMET APO TË ARDHURAT, OSE HUMBJEN E PËRDORIMIT TË PRODUKTIT. PËR VEÇ, JAVAD GNSS NUK ËSHTË PËRGJEGJËS OSE PËRGJEGJËS PËR DËMET APO KOSTOT E PAKTUARA NË LIDHJE ME MARRJEN E PRODUKTEVE OSE SOFTUERËVE ZËVENDËSUESE, KËRKESAVE NGA TË TJERËT, KOSOVËT E TJERA. NË ÇDO RAST, JAVAD GNSS NUK DO TË KANË PËRGJEGJËSI PËR DËME OSE NË TË NDËRSHËM NDAJ JU APO NJË PERSON APO ENTIT TJETËR ME SHQYRTIM TË ÇMIMIT TË BLERJES PËR MARRËSIN.
MARRËVESHJA E LICENCËS Përdorimi i çdo programi kompjuterik ose softueri i ofruar nga JAVAD GNSS ose i shkarkuar nga një JAVAD GNSS websajti ("Softueri") në lidhje me marrësin përbën pranimin e këtyre Kushteve dhe Kushteve në këtë Udhëzues dhe një marrëveshje për t'iu përmbajtur këtyre Kushteve dhe Kushteve. Përdoruesit i jepet një licencë personale, joekskluzive, e patransferueshme për të përdorur një softuer të tillë sipas kushteve

PARATHËNIE Termat dhe Kushtet
deklaruar këtu dhe në çdo rast vetëm me një marrës të vetëm ose kompjuter të vetëm. Ju nuk mund të caktoni ose transferoni Softuerin ose këtë licencë pa pëlqimin e shprehur me shkrim të JAVAD GNSS. Kjo licencë është në fuqi deri në përfundimin e saj. Ju mund ta përfundoni licencën në çdo kohë duke shkatërruar Softuerin dhe Udhëzuesin. JAVAD GNSS mund ta ndërpresë licencën nëse nuk respektoni ndonjë prej Kushteve ose Kushteve. Ju pranoni të shkatërroni Softuerin dhe Udhëzuesin pas përfundimit të përdorimit të marrësit. Të gjitha të drejtat e pronësisë, të drejtat e autorit dhe të drejtat e tjera të pronësisë intelektuale brenda dhe ndaj Softuerit i përkasin JAVAD GNSS. Nëse këto kushte licence nuk janë të pranueshme, ktheni çdo softuer dhe udhëzues të papërdorur.

KONFIDENCIALITETI Ky udhëzues, përmbajtja e tij dhe Softueri (së bashku, "Informacioni Konfidencial") janë informacioni konfidencial dhe i pronarit të JAVAD GNSS. Ju pranoni të trajtoni informacionin konfidencial të JAVAD GNSS me një shkallë kujdesi jo më pak të rreptë se shkalla e kujdesit që do të përdorni për të ruajtur sekretet tuaja tregtare më të vlefshme. Asgjë në këtë paragraf nuk do t'ju kufizojë nga zbulimi i informacionit konfidencial për punonjësit tuaj, siç mund të jetë e nevojshme ose e përshtatshme për të operuar ose për t'u kujdesur për marrësin. Punonjës të tillë duhet të mbajnë gjithashtu konfidenciale Informacionin e Konfidencialitetit. Në rast se detyroheni ligjërisht të zbuloni ndonjë nga Informacionet Konfidenciale, ju duhet t'i jepni JAVAD GNSS njoftim të menjëhershëm në mënyrë që të mund të kërkojë një urdhër mbrojtës ose një mjet tjetër të përshtatshëm.
WEBFAQJA; DEKLARATA TË TJERA Asnjë deklaratë e përfshirë në JAVAD GNSS webfaqe (ose ndonjë tjetër webfaqe) ose në çdo reklamë tjetër ose literaturë JAVAD GNSS ose të bërë nga një punonjës ose kontraktues i pavarur i JAVAD GNSS modifikon këto Kushte dhe Kushte (duke përfshirë licencën e Softuerit, garancinë dhe kufizimin e përgjegjësisë).
SIGURIA Përdorimi jo i duhur i marrësit mund të çojë në lëndime të personave ose pronës dhe/ose mosfunksionim të produktit. Marrësi duhet të riparohet vetëm nga qendrat e autorizuara të shërbimit të garancisë JAVAD GNSS.
TË NDRYSHME Termat dhe kushtet e mësipërme mund të ndryshohen, modifikohen, zëvendësohen ose anulohen në çdo kohë nga JAVAD GNSS. Termat dhe Kushtet e mësipërme do të qeverisen dhe do të interpretohen në përputhje me ligjet e Shtetit të Kalifornisë, pa iu referuar konfliktit të ligjeve.

Çfarë është GREIS
GREIS është një gjuhë ndërlidhëse që i mundëson përdoruesit të komunikojë në mënyrë efektive me marrës GNSS duke aksesuar të gjitha aftësitë dhe funksionet e tyre.
GREIS përfaqëson një strukturë të përgjithshme gjuhësore të marrësit për të gjithë gamën e harduerit JAVAD GNSS. Kjo strukturë gjuhësore është e pavarur nga marrësi dhe e hapur për modifikime ose zgjerime në të ardhmen. GREIS bazohet në një qasje të unifikuar që lejon përdoruesin të kontrollojë një marrës JAVAD GNSS duke përdorur një grup të përshtatshëm objektesh të emërtuar. Komunikimi me këto objekte arrihet përmes komandave dhe mesazheve të paracaktuara. Nuk ka kufizime specifike për numrin ose llojin e objekteve marrës të përdorur.

Si përdoret GREIS
Çdo sistem që komunikon me marrësin JAVAD GNSS nëpërmjet një prej portave të tij (serial, paralel, USB, Ethernet, etj.) do të përdorë komandat dhe mesazhet GREIS për të përmbushur detyrën e kërkuar. Një palë aplikacionesh tipike ku GREIS luan një rol shumë të rëndësishëm janë, së pari, përdorimi i kontrolluesve të dorës për të komunikuar me marrësit gjatë operimit në terren në projektet e sondazhit dhe RTK-së ose, së dyti, kur shkarkohen të dhëna nga marrësit në sistemet e desktopit për postim të mëtejshëm. përpunimi. Vetë një aplikacion pas përpunimit nuk përdor komandat GREIS, por duhet të jetë i vetëdijshëm për mesazhet GREIS për të nxjerrë të dhëna nga të dhënat files.


Një tipar i rëndësishëm i GREIS është se ai mund të përdoret në mënyrë efektive si për kontrollin automatik dhe manual të marrësve JAVAD GNSS. Për kontrollin manual, përdoruesi do të futë komandat e nevojshme GREIS në marrës përmes një terminali. Kjo është lehtësisht e arritshme pasi GREIS është krijuar për të qenë ndërfaqe teksti e lexueshme nga njeriu. Nga ana tjetër, GREIS u bindet rregullave mjaft strikte që e bëjnë të lehtë përdorimin nga aplikacionet.

Listat
GREIS përdor shumë konceptin e listave. Listat përdoren si në gjuhën hyrëse të marrësit ashtu edhe në mesazhet standarde me tekst.

HYRJE Objektet
Listat në GREIS përfaqësohen nga një sekuencë elementesh të kufizuara me presje (,, kodi ASCII 44) dhe të mbyllura në kllapa ({}, kodet ASCII 123 dhe 125):
{element1,element2,element3}
Nga ana tjetër, elementët e një liste mund të jenë vetë lista:
{e1,{ee21,ee22},e3}
Kështu, përkufizimi i mësipërm është rekurziv, kështu që listat e thellësisë arbitrare të foleve lejohen. Elementet që nuk janë lista quhen elemente gjethe, ose thjesht gjethe. Elementet e listave mund të jenë bosh, me ç'rast themi se elementi është lënë jashtë. Për shembullample, në listën e mëposhtme, elementi i dytë është hequr:
{e1,,e3}
Hapësirat para dhe pas kufijve lejohen dhe shpërfillen. Nëse elementët e një liste kanë të gjithë të njëjtin nënvarg (prefiks) në fillim, ky nënvarg mund të zhvendoset nga kllapat që rrethojnë listën, p.sh.
element{1,2,3}
është një formë më e shkurtër e
{elem1,elem2,elem3}

Elementet mund të futen në thonjëza të dyfishta (“, kodi ASCII 34) që hiqen gjatë analizimit. Brenda elementit të cituar, simbolet e veçanta (kllapat, presjet, etj.) humbasin rolin e tyre dhe konsiderohen si karaktere të rregullta. Një përdorim tjetër i thonjëzave është të bëhet dallimi midis kushteve "elementi nuk është i specifikuar" dhe "elementi bosh i specifikuar". E para shënohet thjesht duke hequr një element nga lista, dhe e dyta shënohet duke vendosur dy thonjëza midis presjeve. Citimi është gjithashtu i dobishëm kur dikush duhet të ketë hapësira kryesore ose pasuese në një varg. Për të vendosur thonjën e dyfishtë në element, citoni këtë element dhe shmangni thonjës së dyfishtë brenda me karakterin e prapme (, kodi ASCII 92). Për të vendosur vijën e prapme vetë në vargun e cituar, shmangeni me një vijë tjetër të prapme, për shembullampe:
Example: "Vargu me "thonjëza", vijë e prapme \ dhe karaktere speciale, {}"
1.4 Objektet
Në kontekstin e modelit mbi të cilin bazohet GREIS, një marrës JAVAD GNSS identifikohet me një grup objektesh të emërtuara.

GREIS

www.javad.com

20

HYRJE Objektet
Identifikuesit e objekteve
Objekti përkufizohet si një entitet harduer ose softuer i marrësit që mund të adresohet, vendoset ose kërkohet. Subjektet e harduerit zakonisht quhen pajisje, ndërsa objektet e firmuerit zakonisht quhen files dhe parametrat. Portat e marrësit dhe modulet e memories janë të gjitha të mira p.shamptë pajisjeve. Të gjitha pajisjet, files dhe parametrat trajtohen në mënyrë uniforme nga GREIS. Çdo objekt ka një grup atributesh që mund të aksesohen, përcaktohen dhe/ose ndryshohen përmes GREIS.


1.4.1 Identifikuesit e objekteve
Është përmendur tashmë se një marrës konsiderohet si një grup objektesh (pajisje, files, mesazhet, parametrat, etj.) në kontekstin e modelit GREIS. Për qëllime të adresimit të objekteve në komandat e marrësit, çdo objekti duhet t'i caktohet një identifikues unik.


Objektet në marrës organizohen logjikisht në grupe. Një grup në vetvete është gjithashtu një objekt dhe i përket një grupi tjetër përveç nëse është grupi rrënjë. Kështu të gjitha objektet në marrës organizohen në një hierarki të ngjashme me pemën, duke filluar nga grupi i vetëm rrënjë. Ky përfaqësim i ngjan organizimit të files në drejtoritë (dosjet) me të cilat janë njohur shumica e përdoruesve të kompjuterit.
Në GREIS, grupet e objekteve përfaqësohen si lista të emrave të objekteve përkatës. Emri i objektit është unik brenda listës së cilës i përket objekti. Identifikuesi global unik i objektit përkufizohet si të gjithë emrat e objekteve në shtegun përmes pemës së objektit nga lista rrënjë deri te objekti, të kufizuara me prerjen përpara (/). Vetë lista rrënjë identifikohet nga një prerje e vetme përpara.
Exampidentifikuesit e objekteve janë:
Example: Grupi rrënjë:
/
Example: ID elektronike e marrësit:
/par/rcv/id
Example: Porta serike A shpejtësia e zhurmës:
/par/dev/ser/a/rate
Example: Atributet (madhësia dhe koha e modifikimit të fundit) të file EMRI (file atributet janë të ndryshme nga atributet e objektit të diskutuar më poshtë):
/log/EMRI
Example: fjalia NMEA GGA:

GREIS

www.javad.com

21

HYRJE Prodhimi periodik
Llojet e objekteve
/msg/nmea/GGA
Të gjitha objektet kanë një ose më shumë atribute të lidhura me to. Atributet e objektit identifikohen duke shtuar karakterin & dhe emrin e atributit në identifikuesin e objektit. Atributi kryesor që ka çdo objekt është vlera. Ky atribut aksesohet gjithmonë në mënyrë implicite nga komandat GREIS. Disa nga objektet mund të kenë atribute shtesë, p.shample: p.shample: Porta serike Një shpejtësi e paracaktuar e baud:
/par/dev/ser/a/rate&def
Example: Përmbajtja e file EMRI:
/log/NAME&përmbajtja
1.4.2 Llojet e objekteve
Çdo objekt në marrës ka llojin GREIS të lidhur me të. Lloji i një objekti përcakton sjelljen e tij në lidhje me komandat GREIS. Në mënyrë të veçantë, lloji përcakton se cilat vlera mund të marrë objekti dhe cilat komanda të veçanta janë të zbatueshme për objektin.
Referojuni "Llojet e objekteve primare" në faqen 184 për përshkrim të hollësishëm të llojeve të objekteve të mbështetura aktualisht.

GREIS

1.5 Prodhimi periodik

Një rol të rëndësishëm në funksionimin e marrësit luan aftësia e tij për të nxjerrë në mënyrë periodike disa informacione, të tilla si lloje të ndryshme matjesh, vlera të llogaritura, etj., sipas planit të specifikuar. GREIS përcakton një grup të pasur mesazhesh që përmbajnë lloje të ndryshme informacioni në formate të ndryshme që janë njësi minimale të daljes dhe ofron metoda për të kërkuar daljen periodike të çdo kombinimi të mesazheve në çdo mënyrë në çdo media të mbështetur të përshtatshme për daljen e të dhënave. Çdo medium i mbështetur i përshtatshëm për daljen e të dhënave quhet rrjedhë e daljes në GREIS.
Për çdo rrymë dalëse, marrësi mban një listë mesazhesh që aktualisht janë të aktivizuara për t'u nxjerrë në transmetim, të quajtur lista e daljes. Rendi në të cilin dalin mesazhet, përputhet me radhën e mesazheve në listën e daljes. Përveç kësaj, çdo mesazh që është i pranishëm në një listë dalëse ka grupin e vet të parametrave të planifikimit të lidhur me të. Parametrat e planifikimit të bashkangjitura në një mesazh në një listë dalëse përcaktojnë orarin e daljes së këtij mesazhi të veçantë në këtë rrjedhë të veçantë dalëse. GREIS ofron tre kom-

www.javad.com

22

HYRJE Periudha dhe faza e prodhimit periodik
mands, em, out dhe dm, për të lejuar manipulimin efikas të listave të prodhimit dhe parametrave të planifikimit.
Parametrat e planifikimit të mesazheve përfshijnë katër fusha: periudha, faza, numërimi dhe flamujt, secila prej të cilave luan një rol të ndryshëm në përcaktimin e orarit të daljes. Më poshtë do të përshkruajmë se si ndikojnë saktësisht vlerat e tyre në dalje, por në thelb, periudha përcakton intervalin midis daljeve të mesazhit; faza specifikon zhvendosjen kohore të momenteve të daljes në lidhje me momentet kohore kur koha aktuale është shumëfish i periudhës; numërimi, kur është më i madh se zero, kufizon numrin e herëve që mesazhi do të dalë; kurse flamujt filed lejon një akordim të imët të procesit të prodhimit.

1.5.1 Periudha dhe faza e daljes

Shënim:

Fushat e periudhës dhe fazës së parametrave të planifikimit të mesazheve janë vlera me pikë lundruese në intervalin [0…86400) sekonda. Kuptimi i tyre i saktë përshkruhet më poshtë.
Kur biti F_CHANGE vendoset në fushën e flamujve të parametrave të planifikimit, fusha e fazës humbet rolin e saj të zakonshëm dhe në vend të kësaj bëhet "periudha e prodhimit të detyruar". Shih përshkrimin e flamurit F_CHANGE më poshtë për detaje.
Marrësi ka rrjetin e tij të brendshëm të kohës që përcaktohet nga ora e marrësit dhe vlera e parametrit /par/raw/curmsint që përcakton hapin e epokave të brendshme të marrësit. Epokat e brendshme të marrësit ndodhin kur koha e marrësit është shumëfish i hapit. Nga ana tjetër, koha e marrësit përcaktohet si vlera e modulit të orës së marrësit një ditë (86400 sekonda). Marrësi skanon listat e daljes vetëm në epokat e brendshme të marrësit, në mënyrë që asnjë dalje të mos gjenerohet më shpesh se kaq.
Duke marrë parasysh rrjetin e brendshëm të kohës, variablat e periudhës dhe fazës përcaktojnë momentet kohore të daljes së një mesazhi si më poshtë: marrësi do të nxjerrë mesazhin vetëm në kohën e marrësit Tout duke përmbushur njëkohësisht dy ekuacionet e mëposhtme:

Periudha Toutmod = faza

(1)

Tout = N hap (2)

GREIS

ku N është numër i plotë duke marrë vlerat [0,1,2,…,(86400/hap)-1].
Ekuacioni i parë përcakton rregullin bazë të daljes së mesazheve, dhe i dyti imponon kufizime shtesë në lidhje me epokat e brendshme të marrësit. Vini re se në rastin më të zakonshëm, kur periudha dhe faza janë shumëfisha të hapit, ekuacioni i dytë plotësohet automatikisht sa herë që plotësohet ekuacioni i parë. Gjithashtu vini re se nëse
86400 (periudha e modalitetit) 0,

www.javad.com

23

HYRJE Prodhimi periodik
Numri i prodhimit

Exampe:
Example: p.shampe:

intervali aktual ndërmjet mesazhit të fundit të dërguar para ndryshimit të ditës dhe mesazhit të parë pas rikthimit të ditës do të jetë i ndryshëm nga vlera e periudhës.
Konsideroni disa ishampLe të ilustrojnë këtë mekanizëm:
Supozoni se periudha është 10 sekonda, faza është 2.2 sekonda dhe hapi është 0.2 sekonda. Meqenëse Tout, sipas ekuacionit të dytë, mund të marrë vetëm vlera që janë shumëfish të hapit, pjesa e majtë e ekuacionit të parë do të marrë këto vlera: 0, 0.2, 0.4, …, 9.8, 0, ..., nga të cilat vetëm vlera Faza 2.2 ndeshje. Këto ndeshje do të ndodhin dhe mesazhi do të dalë, sa herë që Tout merr një nga vlerat e mëposhtme: 2.2s, 12.2s, 22.2s, etj.
Supozoni se periudha është 10 sekonda, faza është 2.2 sekonda dhe hapi është 0.5 sekonda. Marrësi nuk do të nxjerrë mesazhin pasi çifti i mësipërm i ekuacioneve të njëkohshme nuk plotësohet kurrë.
Supozoni fazë > periudhë. Marrësi nuk do ta nxjerrë fare mesazhin pasi ekuacioni i parë nuk do të plotësohet kurrë.

1.5.2 Numri i prodhimit

Shënim:

Fusha e numërimit të parametrave të planifikimit të mesazheve është një vlerë e plotë në intervalin [-256…32767) dhe shërben për dy qëllime të ndryshme:
1. Kur numërimi është 0, do të dalin një numër i pakufizuar mesazhesh. Kur numërimi është më i madh se 0, ai përcakton se sa herë do të dalë mesazhi. Në këtë rast numëruesi zvogëlohet me 1 sa herë që del mesazhi, dhe kur bëhet 0, biti F_DISABLED vendoset në fushën e flamujve. Planifikuesi i mesazheve nuk nxjerr mesazhe me të vendosur bit F_DISABLED.
2. Kur numërimi vendoset në një vlerë në intervalin [-256…-1], dalja e mesazhit nuk shtypet dhe fusha e numërimit shërben për qëllime krejtësisht të ndryshme. Ai mundëson mbështjelljen e mesazhit në një mesazh të veçantë [>>] përpara daljes (shih “[>>] Mbështjellësi” në faqen 132). Vlera e numërimit përdoret më pas për të vendosur fushën id në mesazhin e gjeneruar [>>] në mënyrë që id të jetë numerikisht i barabartë me (-1 – count).
Veçoria e mbështjelljes është e dobishme, p.shample, për një aplikacion serveri që merr mesazhe nga marrësi dhe i përcjell ato te shumë klientë. Mund të kërkojë mbështjelljen e mesazheve arbitrare në mesazhet [>>] me identifikues të ndryshëm, të zbërthejë mesazhet e marra dhe t'i dërgojë të dhënat te klienti(ët) e veçantë bazuar në ID-në e marrë. Duke përdorur këtë veçori, një aplikacion i tillë nuk ka nevojë të jetë në dijeni të ndonjë formati tjetër të të dhënave, përveç formatit të mesazhit [>>] dhe mund të përdorë një kanal të vetëm komunikimi me marrësin për të marrë dhe dërguar mesazhe në formate të ndryshme.

GREIS

www.javad.com

24

1.5.3 Flamujt e daljes

HYRJE Prodhimi periodik
Flamujt e daljes

Fusha e flamujve të parametrave të planifikimit të mesazheve është një fushë bit e gjerë 16-bit. Çdo bit i kësaj fushe bit është një flamur i veçantë dhe shërben për qëllime të ndryshme. Më poshtë është një listë e flamujve të planifikimit të mesazheve.
Tabela 1-1. Flamujt e planifikimit të mesazheve

Bit#
0 1 2 3 4 5 6 7 8 9 10 11 12

HEX
0x0001 0x0002 0x0004 0x0008 0x0010 0x0020 0x0040 0x0080 0x0100 0x0200 0x0400 0x0800 0xF000

Emri
F_OUT F_CHANGE F_OUT_ON_ADD F_NOTENA F_FIX_PERIOD F_FIX_PHASE F_FIX_COUNT F_FIX_FLAGS të rezervuara të rezervuara të rezervuara F_DISABLED të rezervuara

Shënim: Emrat e fushave janë paraqitur këtu vetëm me qëllim që t'u referohemi atyre në këtë manual. Nuk ka asnjë mënyrë për t'i përdorur ato në komandat GREIS.

F_OUT Nëse ky flamur është vendosur, mesazhet e para pas thirrjes së komandës përkatëse do të dalin në epokën e brendshme të marrësit më afër kohës së ekzekutimit të komandës, pavarësisht se çfarë specifikohet nga parametri i planifikimit të periudhës.
F_CHANGE Nëse ky flamur është vendosur, mesazhi përkatës do të dalë vetëm nëse të dhënat e mesazhit kanë ndryshuar që nga dalja e fundit e mesazhit në rrjedhën e dhënë dalëse. Marrësi kontrollon nëse të dhënat e mesazhit kanë ndryshuar vetëm në momentet e përcaktuara nga ekuacionet (1), (2) ku ndryshorja e fazës është vendosur në zero dhe ndryshorja e periudhës është vendosur në vlerën e fushës së periudhës. Faza e parametrit të planifikimit të mesazheve, e cila humbet funksionin e saj origjinal në këtë rast, tani luan rolin e një periudhe të prodhimit të detyruar. "Dalje e detyruar" do të thotë që mesazhi përkatës do të dalë nëse përmbajtja e tij do të ketë ndryshuar apo jo në momentet kohore të përcaktuara nga ekuacionet (1), (2) ku ndryshorja e periudhës është vendosur në vlerën e fushës së fazës dhe fazës ndryshorja është vendosur në zero. Nëse faza e fushës është zero, atëherë marrësi nuk kryen dalje të detyruar, kështu që mesazhi përkatës do të dalë vetëm me kusht që të dhënat e tij të kenë ndryshuar.

GREIS

www.javad.com

25

HYRJE Prodhimi periodik
Flamujt e daljes
F_OUT_ON_ADD Nëse ky flamur është vendosur, atëherë mesazhi i parë do të dalë menjëherë pas ekzekutimit të komandës përkatëse em ose out. Ky flamur injorohet për shumicën e mesazheve1.
F_SHËNIM Nëse ky flamur është caktuar për një mesazh në një listë dalëse, flamuri F_DISABLED për këtë mesazh nuk do të fshihet kur mesazhi të aktivizohet, dhe për këtë arsye prodhimi i tij do të mbetet i pezulluar. Për shembullampLe, ky flamur përdoret për të mos nxjerrë disa nga mesazhet nga grupi i parazgjedhur i mesazheve kur përdoruesi ndryshon periudhën e daljes menjëherë, pa e çaktivizuar më parë daljen.
F_FIX_PERIOD, F_FIX_PHASE, F_FIX_COUNT, F_FIX_PERIOD Duke u vendosur në 1 në parametrat e planifikimit, parandaloni ndryshimet në fushat përkatëse të këtyre parametrave të planifikimit përmes komandave em dhe out.
F_DISABLED Nuk është i programueshëm në mënyrë eksplicite nga përdoruesi. Kur dikush aktivizon një mesazh me një numër pozitiv, atëherë, pasi ky mesazh të jetë numëruar herë në dalje, planifikuesi i mesazheve e vendos këtë flamur në 1. Ky flamur fshihet në 0 kur mesazhi riaktivizohet, përveç nëse flamuri F_NOTENA është caktuar për këtë mesazh.

1. Aktualisht vetëm dy mesazhe GREIS, [JP] dhe [MF], e nderojnë këtë flamur.

GREIS

www.javad.com

26

Kapitulli 2
GJUHA E HYRJES TË MARRËSIT

Ky kapitull përshkruan sintaksën dhe semantikën e gjuhës hyrëse të marrësit. Ne fillojmë me disa ishamppër t'i dhënë lexuesit një ndjenjë të gjuhës, pastaj kthehuni te përkufizimi i detajuar i sintaksës dhe më pas përshkruani të gjitha komandat e përcaktuara së bashku me semantikën e tyre.

2.1 Gjuha P.shamples

Këtu janë disa ishampMarrësi i kupton deklaratat reale së bashku me përgjigjet e marrësit. Ju do të gjeni më shumë ishampmënyrat e përdorimit të komandave të veçanta në nënseksionet përkatëse. Hyrja në marrës shënohet me karakterin, ndërsa dalja e marrësit shënohet me karakterin:

Example: Kërkojini marrësit të printojë ID-në e tij elektronike. Marrësi gjeneron mesazhin e përgjigjes së treguar:

Exampe:

print,/par/rcv/id RE00C QP01234TR45
Kërkojini marrësit të vendosë shpejtësinë e zhurmës së portës së tij serike A në 9600. Marrësi ekzekuton me sukses komandën dhe nuk gjeneron asnjë përgjigje.

set,/par/dev/ser/a/rate,9600
Example: Përdorni të njëjtën komandë si në shembullin e mëparshëmample, por detyrojeni marrësin të gjenerojë përgjigje duke përdorur identifikuesin e deklaratës.

Exampe:

%set_rate%set,/par/dev/ser/a/rate,9600 RE00A%set_rate%
Mundohuni të vendosni shpejtësi shumë të lartë të zhurmës. Marrësi përgjigjet me mesazhin e gabimit edhe pse ne nuk kemi përdorur asnjë identifikues të deklaratës.

set,/par/dev/ser/a/rate,1000000 ER016{4,vlera jashtë diapazonit}

Shënim:

Marrësi i vendos gjithmonë përgjigjet e tij normale dhe të gabimit në dy mesazhe standarde, respektivisht [RE] dhe [ER]. Për më shumë informacion mbi formatin e mesazheve GREIS, referojuni "Formati i Përgjithshëm i Mesazheve" në faqen 64. Vetë mesazhet [RE] dhe [ER] përshkruhen në "Mesazhet ndërvepruese" në faqen 129.

GREIS

www.javad.com

27

GJUHA HYRËSE E MARRËSIT Sintaksa e gjuhës
2.2 Sintaksa e gjuhës
GREIS përcakton linjat e karaktereve ASCII me gjatësi arbitrare1, të kufizuara nga cilido kthim-karrocë ( , kodi dhjetor ASCII 13), ose furnizimi i linjës ( , kodi dhjetor ASCII 10) karaktere, të jenë elementët sintaksorë të nivelit të lartë të gjuhës. Linjat boshe lejohen dhe injorohen në GREIS. Si pasojë, një linjë mund të kufizohet nga çdo kombinim i dhe/ose personazhet. Ai lejon GREIS të mbështesë pa probleme konventat e përfundimit të linjës WindowsTM, MacTM dhe UNIXTM.
Gjuha e hyrjes së marrësit është e ndjeshme ndaj shkronjave të vogla. Do të thotë që p.shample, vargjet GREIS, greis dhe gReIs, duke qenë vargje të ndryshme, konsiderohen vërtet si të tilla nga marrësi.
Shenja e numrit (#, kodi ASCII 35) është karakteri i hyrjes së komentit. Marrësi injoron gjithçka duke filluar nga ky karakter deri në fund të rreshtit.
Pasi komenti (nëse ka) hiqet nga rreshti, marrësi heq hapësirat kryesore dhe pasuese dhe më pas e ndan rreshtin në deklarata. Deklaratat kufizohen me pikëpresje (;, kodi ASCII 59), ose me dy ampersands (&&, kodet ASCII 38), ose me dy shirita vertikalë (||, kodet ASCII 124). Deklaratat në një rresht ekzekutohen më pas sipas radhës, nga e majta në të djathtë. Nëse deklarata që përfundon me && delimiter prodhon një gabim, pjesa tjetër e deklaratave në rresht nuk ekzekutohen. Nëse deklarata që përfundon me || delimiter ekzekutohet me sukses, pjesa tjetër e deklaratave në rresht nuk ekzekutohen. Deklarata që përfundon me pikëpresje nuk ndalon kurrë ekzekutimin e sekuencës së deklaratave. Vini re se fundi i rreshtit është në vetvete terminator i deklaratës, kështu që nuk keni nevojë të vendosni një nga përcaktuesit e qartë të deklaratave në fund të rreshtit.
Formati i një deklarate është si më poshtë:
[%ID%][COMMAND][@CS] ku kllapat katrore tregojnë fusha opsionale dhe çdo numër hapësirash të bardha lejohet para dhe pas çdo fushe. Hapësira të tilla të bardha shpërfillen, përveç qëllimit të llogaritjes së shumës së kontrollit, shih më poshtë. Fushat janë:
Identifikuesi i deklaratës %ID%, ku ID tregon vargun arbitrar, mundësisht bosh. Identifikuesi, nëse është i pranishëm, kopjohet i pandryshuar nga marrësi në mesazhin e përgjigjes për deklaratën. Çdo deklaratë me një identifikues do të gjenerojë gjithmonë një përgjigje nga marrësi. Lejohet gjithashtu një deklaratë që përmban vetëm një identifikues; në një rast të tillë, marrësi do të gjenerojë vetëm një mesazh përgjigjeje.
KOMANDA një listë (ndoshta boshe) ku elementi i parë quhet emri i komandës. Ai tregon veprimin që duhet kryer. Pjesa tjetër e elementeve (nëse ka) janë komanda

GREIS

1. Implementimi aktual GREIS në marrës mbështet linja deri në 256 karaktere në gjatësi.

www.javad.com

28

GJUHA HYRËSE E MARRËSIT Sintaksa e gjuhës
argumentet. Kllapat që lista e komandës rrethuese mund të hiqen. Referojuni “Listat” në faqen 19 për sintaksën e listave. @CS checksum, ku CS është kontrolli 8-bit i formatuar si numër heksadecimal 2-bajtë. Përpara se të ekzekutojë një deklaratë me checksum, marrësi do të krahasojë shumën e kontrollit të hyrjes CS me atë të llogaritur nga firmware dhe do të refuzojë të ekzekutojë deklaratën nëse këto shuma kontrolli nuk përputhen. Shuma e kontrollit llogaritet duke filluar me karakterin e parë jo bosh të deklaratës deri dhe duke përfshirë karakterin @. Shihni “Llogaritja e shumave të kontrollit” në faqen 579 për detaje.
Identifikuesi i deklaratës, %ID%, shërben për qëllimet e mëposhtme:
1. Detyron përgjigjen e marrësit ndaj komandës. 2. Lejon dërgimin e komandave të shumta me identifikues të ndryshëm te marrësi
pa pritur përgjigje për çdo komandë, atëherë merrni përgjigjet dhe tregoni se cila përgjigje korrespondon me cilën komandë. 3. Ndihmon për të vendosur sinkronizimin me marrësin duke lejuar që të kontrollohet se përgjigja e marrësit i përgjigjet komandës së veçantë dhe jo ndonjë komande tjetër të lëshuar përpara ose pas.
Një listë e quajtur opsione mund t'i bashkëngjitet çdo elementi të KOMANDËS pas dy pikave (:, kodi ASCII 58). Nëse lista e opsioneve përfshin një element të vetëm, mbajtëset përreth mund të hiqen. Lista e opsioneve të bashkangjitura në një listë përhapet në çdo element të listës, megjithëse opsionet e bashkangjitura në mënyrë eksplicite në një element të listës kanë përparësi ndaj opsioneve të përhapura. Për shembullample,
{e1,{e2:{o1,,o3},e3}}:{o4,o5}
është e barabartë me:
{e1:{o4,o5},{e2:{o1,o5,o3},e3:{o4,o5}}}
Vini re gjithashtu se si opsioni i humbur o2 lejon që opsioni o5 të përhapet në listën e opsioneve për elementin e2.
Numri dhe kuptimi i argumenteve dhe opsioneve në komandë varet nga veprimi i veçantë i komandës dhe përcaktohet në përshkrimin e çdo komande marrësi. Përveç kësaj, nëse përshkrimi i komandës specifikon disa opsione, por disa ose të gjitha ato mungojnë në deklaratë, vlerat e paracaktuara për opsionet e humbura zëvendësohen. Vlerat e paracaktuara për opsionet përcaktohen gjithashtu në përshkrimin e çdo komande marrësi.

GREIS

www.javad.com

29

GJUHA HYRËSE E MARRËSIT Sintaksa e gjuhës

Për referencë, më poshtë është tabela që përfshin të gjitha sekuencat e karaktereve që kanë kuptim të veçantë në gjuhën hyrëse të marrësit:

Tabela 2-1. Gjuha e hyrjes Karaktere të veçanta

Karaktere Kodi ASCII dhjetor

Kuptimi

10

ndarës vijash

13

ndarës vijash

#

35

;

59

fillimi i deklaratave të shënimeve të komenteve ndarës

&&

38

||

124

%

37

deklaratat dhe deklaratat ndarëse ose shenja identifikuese e deklaratave ndarëse

@

64

{

123

}

125

,

44

:

58

Shenja kontrolluese fillimi i listës, fundi i elementeve të listës së shenjave, shenja e opsioneve ndarëse

34

thonjëza

92

arratisje

GREIS

www.javad.com

30

Komandat e GJUHËS SË HYRJES SË MARRËSIT
2.3 Komandat
Në këtë seksion ne përshkruajmë të gjitha komandat e përcaktuara në GREIS. Specifikimet sintaksore dhe semantike të çdo komande shoqërohen me p.shamples. Për përshkrimin e detajuar të objekteve të përdorura si argumente në p.shamples, ju lutemi referojuni Kapitullit 4 në faqen 181.

GREIS

www.javad.com

31

2.3.1 set

GJUHA E HYRJES SË MARRËSIT Komandat janë vendosur

Emri
vendos vlerën e caktuar të një objekti.
Përmbledhje
Format: set,object,value Opsionet: asnjë
Argumentet
objekt identifikuesin e objektit të synuar. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/par/” futet automatikisht përpara objektit përpara ekzekutimit të komandës.
vlerësoni vlerën që do t'i caktohet objektit të synuar. Gama e vlerave të lejuara si dhe semantika e detyrës varet nga lloji i objektit dhe specifikohet më vonë në këtë manual për çdo objekt të mbështetur.
Opsionet
Asnjë.
Përshkrimi
Kjo komandë i jep vlerë objektit. Asnjë përgjigje nuk gjenerohet përveç nëse ka një gabim ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Examples
Example: Cakto shpejtësinë e zhurmës së portës serike C në 115200. Një nga:
set,/par/dev/ser/c/rate,115200 set,dev/ser/c/rate,115200
Example: Cakto shpejtësinë e zhurmës së portës serike A në 9600 dhe detyroje përgjigjen:
%%set,dev/ser/a/rate,9600 RE002%%

GREIS

www.javad.com

32

2.3.2 shtypje

GJUHA E HYRJES TË MARRËSIT Komandat printohen

Emri
printimi i vlerës së printimit të një objekti.

Përmbledhje
Formati: print,objekt Opsionet: {emrat}

Argumentet
objekt identifikuesin e objektit të objektit që do të dalë. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/par/” futet automatikisht përpara objektit përpara ekzekutimit të komandës.

Opsionet

Tabela 2-2. përmbledhja e opsioneve të printimit

Lloji i emrit

vlerat

emërton boolean on, off

E paracaktuar
fikur

emrat nëse janë të fikur, nxirrni vetëm vlerat e objektit. Kur aktivizohet, nxirrni emrat e objekteve përveç vlerave të objekteve në formatin NAME=VALUE.
Përshkrimi
Kjo komandë printon vlerën e objektit, opsionalisht duke prefiksuar vlerën me emrin e objektit përkatës. Përgjigja gjenerohet gjithmonë dhe më shumë se një mesazh [RE] mund të gjenerohet në përgjigje të një komande të vetme printimi.
Vlera e një liste objekti të tipit printohet si një listë vlerash për çdo objekt në listë. Kjo aplikohet në mënyrë rekursive derisa të arrihen objektet me gjethe, kështu që printimi i një objekti të llojit pa gjethe nxjerr në mënyrë efektive të gjithë nën-pemën duke filluar nga objekti i specifikuar. Në rast të printimit të listave, mund të gjenerohen mesazhe të shumta [RE]. Megjithatë, ndarja e daljes mund të ndodhë vetëm menjëherë pas karaktereve ndarëse të listës.

GREIS

www.javad.com

33

GJUHA E HYRJES TË MARRËSIT Komandat printohen
Examples
Example: Printoni periudhën aktuale të rrjetit të brendshëm të kohës së marrësit. Secila prej:
print,/par/e papërpunuar/curmsint RE004 100 print, raw/curmsint RE004 100
Example: Printoni periudhën aktuale të rrjetit të brendshëm të kohës së marrësit së bashku me emrin e objektit. Secila prej:
print,/par/raw/curmsint:në RE015/par/raw/curmsint=100 print,raw/curmsint:në RE015/par/raw/curmsint=100
Example: Informacioni i versionit të marrësit të printimit:
print,rcv/version RE028{“2.5 shtator,13,2006 p2″,0,71,MGGDT_5,asnjë, RE00D {asnjë,asnjë}}
Example: Printoni informacionin e versionit të marrësit së bashku me emrat përkatës:
print,rcv/ver:on RE043/par/rcv/ver={main=”2.5 shtator,13,2006 p2”,boot=0,hw=71,board=MGGDT_5, modem RE00C=asnjë, RE017 pow={fw=asnjë,hw=asnjë}}
Example: Printoni të gjitha mesazhet e aktivizuara për dalje në portën serike B së bashku me parametrat e tyre të planifikimit:
print,out/dev/ser/b:on RE02D/par/out/dev/ser/b={jps/RT={1.00,0.00,0,0×0}, RE01A jps/SI={1.00,0.00,0,0×0}, RE01A jps/rc={1.00,0.00,0,0 jps/ET={0×01}, RE1.00,0.00,0,0D nmea/GGA={0×01}}

GREIS

www.javad.com

34

2.3.3 lista

GJUHA E HYRJES SË MARRËSIT Lista e komandave

Emri
listoni përmbajtjen e një objekti.
Përmbledhje
Formati: list[,objekt] Opsionet: asnjë
Argumentet
objekt identifikuesin e objektit të objektit që do të dalë. Nëse objekti hiqet, supozohet /log. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/log/” futet automatikisht përpara objektit përpara ekzekutimit të komandës.
Opsionet
Asnjë.
Përshkrimi
Kjo komandë nxjerr emrat e çdo anëtari të objektit. Përgjigja gjenerohet gjithmonë dhe më shumë se një mesazh [RE] mund të gjenerohet në përgjigje të një komande të vetme liste. Nëse objekti i specifikuar nuk është i listës së tipit, krijohet mesazhi bosh [RE]. Nëse objekti i specifikuar është një listë, lista e emrave të çdo objekti në listë shtypet. Kjo zbatohet në mënyrë rekursive derisa të arrihen objektet me gjethe, kështu që renditja e një objekti të llojit jo fletë nxjerr në mënyrë efektive të gjithë nën-pemën duke filluar nga objekti i specifikuar. Në rast të printimit të listave, mund të gjenerohen mesazhe të shumta [RE]. Megjithatë, ndarja e daljes mund të ndodhë vetëm menjëherë pas karaktereve ndarëse të listës.
Examples
Example: Përgjigje boshe për listimin e një objekti që nuk është në listë:
lista,/par/rcv/ver/main RE000
Example: Përgjigja e gabimit për listën e objektit joekzistues:
lista,/does_ekziston ER018{2,,parametri i parë i gabuar}

GREIS

www.javad.com

35

GJUHA E HYRJES SË MARRËSIT Lista e komandave
Example: Merrni një listë të regjistrave ekzistuesfiles. Secila prej
listë,/listë log
do të prodhojë të njëjtin rezultat, p.sh.:
RE013{log1127a,log1127b}
Example: Listoni të gjitha mesazhet standarde GREIS të mbështetura nga marrësi:
list,/msg/jps RE03D{JP,MF,PM,EV,XA,XB,ZA,ZB,YA,YB,RT,RD,ST,LT,BP,TO,DO,OO,UO,GT, RE040 NT,GO,NO,TT,PT,SI,NN,EL,AZ,SS,FC,RC,rc,PC,pc,CP,cp,DC,CC,cc,EC, RE040 CE,TC,R1,P1,1R,1P,r1,p1,1r,1p,D1,C1,c1,E1,1E,F1,R2,P2,2R,2P,r2, RE040 p2,2r,2p,D2,C2,c2,E2,2E,F2,ID,PV,PO,PG,VE,VG,DP,SG,BI,SE,SM,PS, RE040 GE,NE,GA,NA,WE,WA,WO,GS,NS,rE,rM,rV,rT,TM,MP,TR,MS,DL,TX,SP,SV, RE031 RP,RK,BL,AP,AB,re,ha,GD,LD,RM,RS,IO,NP,LH,EE,ET}
Example: Listoni të gjitha mesazhet në grupin e paracaktuar të mesazheve:
listë,/msg/def RE040{jps/JP,jps/MF,jps/PM,jps/EV,jps/XA,jps/XB,jps/RT,jps/RD,jps/SI, RE040 jps/NN,jps/EL,jps/FC,jps/RC,jps/ECjps/CPjps/ RE1 jps/040P,jps/1R,jps/2P,jps/E2,jps/D1,jps/E2,jps/SS,jps/SE,jps/PV, RE2 jps/ST,jps/DP,jps/TO,jps/DO,jps/UO,jps/IO,jps/PV jps/NA,jps/WE,jps/WA,jps/WO}

GREIS

www.javad.com

36

GREIS

2.3.4 em & jashtë

GJUHA E HYRJES SË MARRËSIT Komandat em & out

Emri
em, jashtë mundësojnë daljen periodike të mesazheve.

Përmbledhje
Formati: Formati: Opsionet:

em,[target],mesazhet jashtë,[target],mesazhet {periudha, faza, numërimi, flamujt}

Argumentet
synoni çdo rrymë dalëse ose grup mesazhesh. Nëse nuk specifikohet asnjë objektiv, supozohet terminali aktual, /cur/term.
dërgon mesazhe në listën (me ose pa kllapa rrethuese) të emrave të mesazheve dhe/ose emrave të grupeve të mesazheve që do të aktivizohen. Nëse disa nga emrat e specifikuar nuk fillojnë me "/", atëherë parashtesa "/msg/" futet automatikisht përpara emrave të tillë përpara se të ekzekutohet komanda.

Opsionet

Tabela 2-3. em dhe nga përmbledhja e opsioneve

Lloji i emrit

vlerat

E paracaktuar

float periodike [0…86400)

notues fazor [0…86400)

numëroni numrin e plotë [-256…32767] 0 për em 1 për jashtë

shënon numrin e plotë [0…0xFFFF] –

periudha, faza, numërimi, treguesit e parametrave të planifikimit të mesazheve.
Përshkrimi
Këto komanda mundësojnë daljen periodike të mesazheve të specifikuara në objektiv, duke detyruar parametrat e planifikimit të mesazheve të jenë ato të specifikuara nga opsionet. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Komandat em dhe out janë të njëjta përveç se vlera e paracaktuar e opsionit të numërimit është vendosur në 0 për em dhe 1 për out. Komanda out është thjesht një mënyrë më e përshtatshme për të kërkuar

www.javad.com

37

GJUHA E HYRJES SË MARRËSIT Komandat em & out

Shënim:

dalje një herë e mesazhit(ve). Ne do të flasim vetëm për to në këtë përshkrim, megjithëse gjithçka vlen edhe për jashtë.
Përshkrimi i mëposhtëm pret që lexuesi të njihet me materialin në seksionin "Produkti periodik" në faqen 22.
Për çdo rrymë dalëse, ekziston lista përkatëse e daljes së mesazheve1,2 që aktualisht janë të aktivizuara për t'u nxjerrë në rrjedhën e dhënë. Kur një mesazh i kaluar si argument në komandën em nuk është aktualisht në listën e daljes, komanda em shton mesazhin e specifikuar në fund të listës. Kur një mesazh i kaluar te komanda em është tashmë në listën dalëse, komanda em thjesht ndryshon parametrat e planifikimit të këtij mesazhi dhe nuk modifikon pozicionin e mesazhit brenda listës.
Ndërsa komanda em bashkon mesazhet e specifikuara në listën e daljes, shpesh është një ide e mirë të përdorni komandën dm për të pastruar listën e daljes për rrjedhën e dhënë përpara se të lëshoni komanda em.
Komanda em përpunon listën e mesazheve një mesazh në të njëjtën kohë, nga e majta në të djathtë dhe nga mesazhi i parë i grupit të mesazheve deri te mesazhi i fundit i grupit të mesazheve. Nëse ndeshet me një emër që nuk korrespondon me ndonjë mesazh marrës ose grup mesazhesh të mbështetur, ai kujton se ka pasur një gabim gjatë ekzekutimit, por nuk e ndalon përpunimin e listës së mesazheve. Në këtë mënyrë të gjitha mesazhet nga lista e mesazheve që mund të aktivizohen do të aktivizohen dhe vetëm një gabim i vetëm do të raportohet kur një ose më shumë nga mesazhet e specifikuara nuk mund të aktivizohen.
Kur komanda em përpunon një mesazh në dispozicion, parametrat përfundimtarë të planifikimit të mesazheve të funksionimit në listën përkatëse të daljes së mesazheve llogariten duke marrë parasysh burime të shumta informacioni rreth parametrave të planifikimit, veçanërisht:
1. Vlerat e specifikuara në mënyrë eksplicite në opsionet e komandës em.
2. Vlerat e paracaktuara të opsioneve të komandës em.
3. Parametrat e planifikimit të specifikuara për mesazhin e dhënë si pjesë e grupit përkatës të mesazheve. Këto merren parasysh vetëm kur aktivizoni një mesazh duke specifikuar grupin e mesazheve, jo një mesazh individual.
4. Parametrat aktualë të planifikimit të mesazhit në listën përkatëse të daljes (nëse ka).
5. Parametrat e paracaktuar të planifikimit të specifikuara për mesazhin e dhënë si pjesë e grupit përkatës të mesazheve.
Burimet e mësipërme të parametrave janë renditur sipas renditjes së përparësisë së tyre, e para ka përparësinë më të lartë dhe zbatohen individualisht për secilin nga katër parametrat e planifikimit. Prandaj, vlerat nga (1) tejkalojnë vlerat nga (2), vlera që rezulton

GREIS

1. Për një transmetim NAME, lista përkatëse e daljes quhet /par/out/NAME 2. Firmware-i aktual ka kufi arbitrar për numrin maksimal të mesazheve në një listë dalëse të caktuar në 49.

www.javad.com

38

GJUHA E HYRJES SË MARRËSIT Komandat em & out

zëvendëson vlerën nga (3), etj. Megjithatë, nëse disa nga bitet F_FIX_PERIOD, F_FIX_PHASE, F_FIX_COUNT ose F_FIX_FLAGS janë vendosur në fushën e flamujve të burimit të ardhshëm, fushat përkatëse të këtij burimi tjetër nuk do të anashkalohen.

Examples

Example: Aktivizo daljen një herë të mesazhit NMEA GGA në terminalin aktual:

em,,nmea/GGA:{,,1}

E njëjta gjë si më sipër, por duke përdorur në vend të em:

jashtë,,nmea/GGA
Example: Aktivizo daljen e grupit të paracaktuar të mesazheve në regjistrin aktualfile A duke përdorur parametrat e paracaktuar të daljes. Secila prej:

Exampe:

em,/kur/file/a,/msg/def em,/cur/file/a,përcaktim
Aktivizo daljen e grupit të parazgjedhur të mesazheve në regjistrin aktualfile A çdo 10 sekonda Për parametrat e tjerë të daljes, do të përdoren vlerat e tyre të paracaktuara:

em,/kur/file/a,përkufizim:10
Example: Aktivizo daljen e grupit të paracaktuar të mesazheve në terminalin aktual duke përdorur parametrat e paracaktuar të daljes. Secila prej:

Exampe:

em,/cur/term,/msg/def em,,/msg/def em,,def
Aktivizo daljen e mesazheve GREIS [~~](RT) dhe [RD] në terminalin aktual. Secila prej:

Exampe:

em,,/msg/jps/RT,/msg/jps/RD em,,jps/{RT,RD}
Aktivizo daljen e mesazheve NMEA GGA dhe ZDA në terminalin aktual çdo 20 sekonda:

Exampe:

em,,nmea/{GGA,ZDA}:20
Aktivizo daljen e mesazheve [SI], [EL] dhe [AZ] në portën serike A. Vendos parametrat e planifikimit për [SI] në mënyrë që intervali ndërmjet çdo dy mesazhesh të mëvonshme [SI] të jetë i barabartë me 10 sekonda, nëse ato përkojnë, dhe 1 sekondë ndryshe; nxjerr vetëm pesëdhjetë mesazhet e para [SI]. Përveç kësaj, marrësi vendosi intervalin e daljes në 2 sekonda për mesazhet [EL] dhe [AZ]:

em,/dev/ser/a,jps/{SI:{1,10,50,0×2},EL,AZ}:2

GREIS

www.javad.com

39

GJUHA E HYRJES SË MARRËSIT Komandat em & out
Example: Aktivizo daljen e llojeve të mesazheve RTCM 2.x 1 dhe 31 në portën serike B me intervalin e daljes 3 sekonda, dhe llojet e mesazheve RTCM 2.x 18, 19, 3, 22 në portën C me intervalin e daljes 1 sekondë për llojet 18 dhe 19; dhe 10 sekonda për llojet 3 dhe 22:
em,/dev/ser/b,rtcm/{1,31}:3; em,/dev/ser/c,rtcm/{18:1,19:1,22,3}:10
Example: Personalizo grupin e paracaktuar të mesazheve që të përmbajë vetëm NMEA ZDA dhe GGA:
dm,/msg/def em,/msg/def,/msg/nmea/{ZDA,GGA}

GREIS

www.javad.com

40

2.3.5 dm

GJUHA E HYRJES TË MARRËSIT Komandat dm

Emri
dm çaktivizon daljen periodike të mesazheve.
Përmbledhje
Formati: dm[,[objektivi][,mesazhet]] Opsionet: asnjë
Argumentet
synoni çdo rrymë dalëse ose grup mesazhesh. Nëse nuk specifikohet asnjë objektiv, supozohet terminali aktual, /cur/term. Nëse disa nga emrat e specifikuar nuk fillojnë me "/", atëherë parashtesa "/msg/" futet automatikisht përpara emrave të tillë përpara se të ekzekutohet komanda.
dërgon mesazhe listën e mesazheve që do të çaktivizohen, me ose pa kllapa përreth, ose ndonjë grup mesazhesh ose grup mesazhesh. Nëse nuk specifikohen mesazhe, të gjitha daljet periodike në objektiv çaktivizohen.
Opsionet
Asnjë.
Përshkrimi
Kjo komandë çaktivizon daljen periodike të mesazheve të specifikuara në objektivin e objektit. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Nëse nuk specifikohen mesazhe, të gjitha daljet periodike në objektiv çaktivizohen. Nëse objektivi është një regjistër aktualfile dhe asnjë mesazh nuk është specifikuar, të gjitha daljet në file është me aftësi të kufizuara, të file është e mbyllur dhe regjistri aktual aktual përkatësfile është vendosur në asnjë.
Nëse një mesazh specifikohet në listën e mesazheve që nuk është aktualisht i aktivizuar për t'u nxjerrë në objektivin e caktuar, nuk gjenerohet asnjë gabim përkatës nga komanda dm. Megjithëse kjo gjendje nuk e çaktivizon raportimin e gabimeve të tjera të mundshme.
Examples
Example: Çaktivizo të gjitha mesazhet që dalin në regjistrin aktualfile A dhe mbyllni file:
dm,/kur/file/a

GREIS

www.javad.com

41

GJUHA E HYRJES TË MARRËSIT Komandat dm
Example: Çaktivizoni të gjithë daljen periodike në terminalin aktual. Secila prej:
dm,/kur/term dm
Example: Çaktivizoni daljen e mesazhit GREIS [~~](RT) në portën serike B:
dm,/dev/ser/b,/msg/jps/RT
Example: Çaktivizoni daljen e mesazhit GREIS [DO] në log-in aktualfile B:
dm,/kur/file/b,/msg/jps/DO
Example: Hiq mesazhin GREIS [PM] nga grupi i parazgjedhur i mesazheve:
dm,/msg/def,/msg/jps/PM
Example: Çaktivizoni daljen e të gjitha mesazheve NMEA në terminalin aktual:
dm,/kur/term,/msg/nmea
Example: Çaktivizoni daljen e mesazheve NMEA GGA dhe ZDA në terminalin aktual. Secila prej:
dm,/cur/term,/msg/nmea/GGA,/msg/nmea/ZDA dm,,/msg/nmea/GGA,/msg/nmea/ZDA dm,,nmea/GGA,nmea/ZDA dm,,nmea/{GGA,ZDA}

GREIS

www.javad.com

42

2.3.6 init

GJUHA E HYRJES SË MARRËSIT Komandat init

Emri
init inicializon objektet.

Përmbledhje
Formati: init,object[/] Opsionet: asnjë

Argumentet
objekt objekti që do të inicializohet. / nëse është i pranishëm dhe objekti është i listës së tipit, në vend të kësaj inicializoni të gjitha objektet e përfshira
të vetë objektit.

Opsionet
Asnjë.

Shënim: Shënim:

Përshkrimi
Kjo komandë inicializon objektet e specifikuara. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Semantika e saktë e inicializimit varet nga objekti që inicializohet, por në përgjithësi mund të konsiderohet si kthimi i një objekti në gjendjen e tij "të parazgjedhur" ose "të pastër". Për shembullample, për parametrat do të thotë vendosja e vlerave të tyre në standardet përkatëse, për filepajisje ruajtëse do të thotë riformatim i mediumit themelor, etj.
Inicializimi i disa objekteve do të rezultojë në rindezjen e marrësit. Ky është aktualisht rasti për inicializimin e memories jo të paqëndrueshme të marrësit (/dev/nvm/a).
Megjithëse mund të ndryshojë në të ardhmen, zbatimi aktual i kësaj komande gjenerike në marrës është mjaft i kufizuar. Në fakt vetëm inicializimi i objekteve që gjenden në p.shamples më poshtë është aktualisht i mbështetur.

Examples
ExampLe: Pastro NVRAM dhe rindez marrësin. Të gjitha të dhënat e ruajtura në NVRAM (almanak, efemeri, etj.) do të humbasin, të gjithë parametrat do të vendosen në vlerat e tyre të paracaktuara pas rindezjes:
init,/dev/nvm/a
Example: Efemeri e qartë:
init,/eph/

GREIS

www.javad.com

43

GJUHA E HYRJES SË MARRËSIT Komandat init
Example: Vendosni të gjithë parametrat e marrësit në vlerat e tyre të paracaktuara:
init,/par/
Example: Vendosni të gjithë parametrat WLAN në vlerat e tyre të paracaktuara. Kërkohet rinisja e njësisë që ndryshimet të hyjnë në fuqi:
init,/par/net/wlan/
Example: Inicializoni file sistemi (dmth., riformatoni mediumin themelor). Të gjitha files të ruajtura në marrës do të humbasin:
init,/dev/blk/a
Example: Inicializoni të gjitha grupet e mesazheve në vlerat e tyre të paracaktuara:
init,/msg/

GREIS

www.javad.com

44

2.3.7 krijoni

GJUHA E HYRJES SË MARRËSIT Komandat krijojnë

Emri
krijoni krijoni një objekt të ri.

Përmbledhje
Formati: krijo[,objekt] Opsionet: {log}

Argumentet
identifikuesi i objektit të objektit të objektit që do të krijohet. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/log/” futet automatikisht përpara objektit përpara ekzekutimit të komandës. Nëse hiqet, atëherë krijimi i a file supozohet dhe një unik file emri gjenerohet automatikisht.

Opsionet

Tabela 2-4. krijoni përmbledhjen e opsioneve

Lloji i emrit Vlerat
vargu i regjistrit a,b,…

E paracaktuar
a

regjistro regjistrin-file e krijuara file është për t'u caktuar. log-file i zgjedhur është /cur/log/X, ku X është vlera e opsionit1.
Përshkrimi
Kjo komandë krijon një objekt të ri. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Si vendndodhja në pemë ashtu edhe lloji i objektit të krijuar përcaktohen nga argumenti i objektit.
Mund të krijohen dy lloje objektesh:
1. Files. Një e re file krijohet sa herë që identifikuesi i objektit specifikon një objekt në një nënpemë /log, ose kur argumenti i objektit hiqet.
2. Specifikuesit e mesazheve. Një specifikues i ri mesazhi krijohet sa herë që identifikuesi i objektit specifikon një objekt në një grup mesazhesh (p.sh., /msg/def).

GREIS

1. Firmware-i aktual mbështet një ose dy regjistra të njëkohshëmfiles në varësi të marrësit të veçantë.

www.javad.com

45

GJUHA E HYRJES SË MARRËSIT Komandat krijojnë
Duke krijuar Files
Gjatë krijimit files, argumenti i objektit ose është hequr ose ka një format /log/NAME, ku NAME është emri i file për t'u krijuar dhe /log/ është opsionale. Në rastin e parë, marrësi do të zgjedhë automatikisht një emër unik për file. Në rastin e fundit, EMRI i specifikuar duhet të jetë një varg deri në 31 karaktere dhe nuk duhet të përmbajë as hapësira e as karakteret e mëposhtme: “,{}()@&”/”.
Nëse file /log/NAME ekziston tashmë, komanda e krijimit do të dështojë dhe do të prodhojë një mesazh gabimi. Si pasojë, nuk ka asnjë mënyrë për të mposhtur disa nga ekzistuesit files me komandën create.
Pas një të re file është krijuar me sukses, është caktuar në një nga regjistrat aktualëfiles në varësi të vlerës së log_file opsion. Nëse regjistri përkatës -file tashmë tregon për një tjetër file kur ekzekutohet krijimi, log-i i vjetërfile do të mbyllet dhe prodhimi do të vazhdojë në të renë file pa asnjë ndërprerje.
Krijimi i specifikuesve të mesazheve
Kur shtoni mesazhe në një grup mesazhesh, argumenti i objektit ka një format /msg/SET/GROUP/MSG, ku SET është emri i grupit të mesazheve ku duhet të krijohet mesazhi i ri, GROUP është emri i grupit të cilit i përket mesazhi. , dhe MSG është emri i vetë mesazhit (p.sh., /msg/def/nmea/GGA, ose /msg/jps/rtk/min/jps/ET).
Parametrat e planifikimit të mesazheve do të kopjohen nga ato të përcaktuara për mesazhin e dhënë në grupin e mesazheve. Përdorni komandën set për të personalizuar parametrat e planifikimit nëse kërkohet.
Examples
Duke krijuar Files
Example: Krijo një të re file me një emër të gjeneruar automatikisht dhe caktojeni atë në regjistrin aktualfile A (/cur/file/a). Secila prej:
krijoj krijoj,:a
Example: Krijo një regjistër të ri-file me emrin "my_file“. Secila prej:
krijo,/log/my_file:a krijo, my_file
Example: Krijo files "file1" dhe "file2”, dhe caktojini ato në /cur/file/a dhe /cur/file/b:
krijoni,file1:a; krijoni,file2:b

GREIS

www.javad.com

46

GJUHA E HYRJES SË MARRËSIT Komandat krijojnë
Krijimi i specifikuesve të mesazheve
Example: Shtoni mesazhet /msg/jps/ET në grupin e paracaktuar të mesazheve:
krijoni,/msg/def/jps/ET
Example: Shtoni mesazhin NMEA GGA në grupin e paracaktuar të mesazheve dhe detyrojeni periodën dhe fazën e tij të jenë gjithmonë respektivisht 10 dhe 5, pavarësisht se cilat vlera për to do të specifikohen në një komandë em ose out:
krijimi,/msg/def/nmea/ grup GGA,/msg/def/nmea/GGA,{10,5,,0×30}

GREIS

www.javad.com

47

2.3.8 hiqni

GJUHA E HYRJES SË MARRËSIT Komandat hiqen

Emri
hiqni hiqni një objekt.
Përmbledhje
Formati: remove,object[/] Opsionet: asnjë
Argumentet
identifikuesi i objektit të objektit të objektit që do të hiqet. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/log/” futet automatikisht përpara objektit përpara ekzekutimit të komandës.
/ nëse është i pranishëm dhe objekti është i listës së tipit, hiqni të gjithë përmbajtjen e objektit në vend të vetë objektit.
Opsionet
Asnjë.
Përshkrimi
Kjo komandë heq (fshin) një objekt ekzistues. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës. Nëse nuk ka asnjë objekt të specifikuar nga objekti, ose nëse objekti nuk mund të hiqet, krijohet një gabim. Dy lloje objektesh mund të hiqen:
1. Files Nëse file është një nga regjistrat aktualëfiles, komanda do të dështojë dhe do të gjenerohet një mesazh gabimi.
2. Specifikuesit e mesazheve nga grupet e mesazheve.
Examples
Example: Hiq regjistrin-file me emrin “EMRI”. Secila prej:
hiq,/log/NAME hiqe,NAME
Example: Hiq të gjithë log-files:
hiq,/log/

GREIS

www.javad.com

48

GJUHA E HYRJES SË MARRËSIT Komandat hiqen
Example: Hiq mesazhin standard [GA] GREIS nga grupi i parazgjedhur i mesazheve:
hiqni,/msg/def/jps/GA
Example: Hiq të gjitha mesazhet nga grupi i paracaktuar i mesazheve:
hiq,/msg/def/
Example: Hiqni të gjitha mesazhet nga grupi minimal i mesazheve standarde GREIS të përshtatshme për RTK:
hiq,/msg/rtk/jps/min/

GREIS

www.javad.com

49

2.3.9 ngjarja

Ngjarja e komandave të GJUHËS SË HYRJES SË MARRËSIT

Emri
ngjarje gjenerojnë ngjarje të formës së lirë.

Përmbledhje
Format: ngjarje, varg Opsionet: asnjë

Argumentet
varg një varg arbitrar1 që përmban deri në 63 karaktere.

Opsionet
Asnjë.

Shënim: P.shampe:

Përshkrimi
Kjo komandë gjeneron një ngjarje në formë të lirë. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Vargu i dhënë së bashku me kohën e marrjes së komandës së ngjarjes ruhen në marrës në bufferin special të ngjarjeve2. Përmbajtja e këtij buferi del në të gjitha rrjedhat e daljes ku është aktivizuar mesazhi standard GREIS [==](EV) (përshkruar në faqen 131).
Mekanizmi i ngjarjeve në formë të lirë ka për qëllim që programet e kontrollit të përcjellin informacione arbitrare të tekstit tek aplikacionet pas përpunimit pa e interpretuar këtë informacion në marrës. Bërthama e firmuerit të marrësit nuk gjeneron kurrë ngjarje në formë të lirë më vete dhe as nuk e interpreton disi informacionin e dërguar përmes komandave të ngjarjes.
Të gjitha vargjet që fillojnë me karakterin nënvizues (ASCII 0x5F) janë të rezervuara për aplikacionet JAVAD GNSS. Duhet pasur kujdes që vargjet e tilla të mos përdoren me komandat e ngjarjeve, përveç nëse nuk mund ta kryeni detyrën tuaj ndryshe ose nuk keni ndërmend të bashkëpunoni me disa softuer JAVAD GNSS. Në rastin e fundit, ju lutemi referojuni përshkrimit të detajuar të ngjarjeve në formë të lirë të rezervuara për aplikacionet JAVAD GNSS në udhëzuesin "Formati i kornizës për ngjarjet me forma të lira", i disponueshëm nga http://www.javad.com.
Gjeneroni një ngjarje në formë të lirë që përmban vargun "Info1":
ngjarje,Info1

GREIS

1. Kujtoni që nëse një varg përmban ndonjë nga karakteret e rezervuara për gjuhën hyrëse të marrësit, duhet ta vendosni këtë varg në thonjëza të dyfishta.
2. Firmware-i aktual ofron një buffer mjaft të madh për të ruajtur deri në gjashtëmbëdhjetë ngjarje në formë të lirë 64 bajt.

www.javad.com

50

Ngjarja e komandave të GJUHËS SË HYRJES SË MARRËSIT
Example: Gjeneroni një ngjarje në formë të lirë që përmban karaktere të rezervuara:
ngjarje,”EVENT{DATA,SENT}”
Example: Gjeneroni ngjarje në formë të lirë të rezervuar për softuerin e aplikacionit JAVAD GNSS (kjo ngjarje njofton aplikacionin pas përpunimit për ndryshimin e dinamikës):
ngjarje,"_DYN=STATIC"
Example: Gjeneroni një formë të lirë me varg bosh:
ngjarje””
Example: Gjeneroni disa ngjarje të formës së lirë dhe merrni përsëri mesazhet [==](EV) (në përmbajtjen e [==] mesazheve bajtet e pashtypshme zëvendësohen me pika në ishample):
em,,jps/EV %accepted% ngjarje,”some string” RE00A%pranuar% ==011…..disa_string. %1% ngjarje,1; %2% ngjarje,2 RE003%1% RE003%2% ==007…..1. ==007…..2. dm,,jps/EV

GREIS

www.javad.com

51

2.3.10 merrni

GJUHA E HYRJES SË MARRËSIT Komandat marrin

Emri
filloni të rikuperoni file përmbajtje duke përdorur DTP1.

Përmbledhje
Formati: get,object[,offset] Opsionet: {timeout,block_size,period,faza,përpjekjet}

Argumentet
identifikuesi i objektit të objektit të file për t'u marrë. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/log/” futet automatikisht përpara objektit përpara ekzekutimit të komandës. Nëse objekti nuk ekziston ose nuk mund të merret, krijohet një mesazh gabimi.
kompensimi i kompensuar në bajt nga fillimi i file në të cilën të fillojë rikthimi. Nëse hiqet, supozohet 0.

Opsionet

Tabela 2-5. merrni përmbledhjen e opsioneve

Emri

Lloji

vlerat

timeout

numër i plotë [0…86400], sekonda

numër i plotë i madhësisë së bllokut [1…163841]

periudhë

float [0…86400), sekonda

fazë

float [0…86400), sekonda

tentativa numër i plotë [-257…100] 1. 2048 për marrës që nuk mbështesin TCP ose USB.

E paracaktuar
10 512 0 0 10

timeout timeout për DTP. block_size madhësia e një blloku të dhënash DTP. periodikoni periudhën e daljes për filtrim (shih më poshtë). faza e fazës së daljes për filtrim (shih më poshtë). tenton kuptime të ndryshme në varësi të diapazonit, si më poshtë:

1. Shihni “Protokolli i transferimit të të dhënave” në faqen 580.

GREIS

www.javad.com

52

GJUHA E HYRJES SË MARRËSIT Komandat marrin
[1…100] numri maksimal i përpjekjeve që do të marrë transmetuesi DTP për të dërguar një bllok të vetëm. Kur vendoset në 1, aktivizohet modaliteti special i transmetimit (shih më poshtë).
0 në vend që të filloni DTP, nxirrni përmbajtjen e papërpunuar të objektit. [-256…-1] në vend që të nisni DTP, nxirrni përmbajtjen e objektit të mbështjellë në
[>>] mesazhe.
-257 në vend që të nisni DTP, nxirrni përmbajtjen e objektit të mbështjellë në mesazhe [RE].
Përshkrimi
Kjo komandë fillon rikthimin e a file në kompjuterin pritës duke përdorur Protokollin e Transferimit të të Dhënave (DTP) ose formatin e prodhimit të papërpunuar. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Kur është në modalitetin DTP, pasi komanda get ka sukses, transmetuesi DTP niset në marrës dhe pret që marrësi DTP të ekzekutohet në host. Prandaj, për të tërhequr në fakt çdo të dhënë, nevojitet zbatimi i marrësit DTP në host.
Argumenti opsional i kompensimit lejon hostin të zbatojë mbështetje për rifillimin e transferimit të ndërprerë të të dhënave. Vini re se kërkimi për një kompensim të madh mund të kërkojë kohë mjaft të gjatë për të kryer në marrës. Për të zbatuar saktë rifillimin në softuerin pritës, detyrojeni përgjigjen e marrësit në komandën get duke përdorur identifikuesin e deklaratës dhe prisni përgjigjen nga marrësi përpara se të ekzekutoni DTP në host. Kjo metodë merr përparësitage të faktit që marrësi i përgjigjet komandës get pasi të kryhet kërkimi.
Kur opsioni i përpjekjeve vendoset në 1, transmetuesi DTP do të vendoset në të ashtuquajturin modalitet transmetimi. Në këtë modalitet, pas marrjes së NACK-së së parë nga marrësi DTP, transmetuesi DTP do të transmetojë blloqe të dhënash pa pritur ACK-të nga marrësi DTP dhe transmetuesi do të ndërpresë menjëherë transferimin e të dhënave nëse merret NACK. Kjo qasje lejon transferimin dukshëm më të shpejtë të të dhënave përmes lidhjeve të besueshme që kanë vonesa të larta (siç është TCP) ose kosto relativisht e lartë e ndërprerësit të drejtimit (siç është USB). Një pjesë e protokollit marrëse e zbatuar në mënyrë korrekte nuk kërkon ndonjë kujdes të veçantë për të mbështetur këtë metodë.
Kur opsioni i periudhës është jo zero, aktivizohet modaliteti special i filtrimit. Për shembullample, ju lejon të shkarkoni të dhëna 1Hz nga një file që është shkruar duke përdorur shpejtësinë e përditësimit 10 Hz. Në mënyrë të veçantë, marrësi do të dërgojë të dhënat vetëm për epokat ku moduli i kohës së marrësit një ditë (Tr) plotëson ekuacionin e mëposhtëm:
Tr {periudha mod} = faza
Për ta arritur këtë, marrësi analizon përmbajtjen e file dhe filtron disa nga mesazhet. Vini re se zbatimi i rifillimit të shkarkimit të ndërprerë është shumë i vështirë nëse

GREIS

www.javad.com

53

GJUHA E HYRJES SË MARRËSIT Komandat marrin

jo e pamundur në këtë rast për faktin se hosti nuk e ka idenë se çfarë kompensimi të marrësit file shkarkimi është ndërprerë.
Çdo lloj transferimi mund të ndërpritet nga fundi i marrjes së të dhënave duke dërguar çdo simbol gabimi DTP (p.sh. ASCII '#').
Kur transferoni të dhëna në mesazhet [RE], vlera e madhësisë së bllokut do të përcaktojë madhësinë maksimale të ngarkesës së të dhënave për çdo mesazh [RE] (e kufizuar edhe nga madhësia e buferit të brendshëm të firmuerit). Si zakonisht, çdo mesazh [RE] do të fillojë me ID-në e komandës (nëse ka).
Kur transferoni të dhëna në mesazhet [>>], vlera e opsionit të përpjekjeve do të përcaktojë fushën id të mesazheve [>>] si më poshtë:
id = -1 – përpjekjet
dhe vlera e "block_size" do të përcaktojë madhësinë maksimale të ngarkesës së të dhënave për çdo mesazh [>>] (e kufizuar gjithashtu nga madhësia e buferit të brendshëm të firmuerit).
Bajti tjetër pas id (bajtit të parë të fushës së të dhënave) në mesazhin [>>] do të jetë karakteri i sekuencës duke filluar me simbolin ASCII 0 dhe duke u rritur moduli 64 për çdo mesazh, duke rezultuar në sekuencën e simboleve ASCII nga 0 në o, përfshirëse:
seq = 0 lak { seq_char = '0' + (seq++ % 64) }
Karakteri i sekuencës lejon fundin e marrësit të zbulojë humbjen e [>>] mesazheve në sekuencë.
Më pas do të pasojë ngarkesa e të dhënave të objektit deri në bajt të madhësisë së bllokut, dhe më pas shuma e kontrollit, sipas formatit të mesazhit [>>].
Dalja e suksesshme në modalitetin e mbështjelljes do të finalizohet gjithmonë me mesazh [>>] pa ngarkesë të dhënash, për të lejuar që fundi i marrjes të përcaktojë me besueshmëri fundin e transferimit.

Examples

Example: Filloni të merrni përmbajtjen e file NAME duke përdorur DTP. Secila prej:

Exampe:

marr,/log/NAME merr,EMRI
Filloni të rikuperoni përmbajtjen e file EMRI duke filluar nga numri i bajtit 3870034 (duke numëruar bajt nga zero). Prisni një kohë mjaft të gjatë për të kaluar midis komandës dhe përgjigjes:

%%get,NAME,3870034 RE002%%

GREIS

www.javad.com

54

GJUHA E HYRJES SË MARRËSIT Komandat marrin
Example: Filloni të merrni përmbajtjen e file my_logfile duke filluar nga bajt 3000 duke përdorur kohëzgjatjen 50 sekonda dhe madhësinë e bllokut prej 8192 bajte:
merr, my_logfile:{50,8192},3000
Example: Filloni të merrni përmbajtjen e file EMRI duke filtruar nga epokat në mënyrë që të merret rezultati file do të ishin të dhëna 0.1 Hz:
marr,EMRI:{,,10}
Example: Filloni të merrni përmbajtjen e file NAME duke përdorur modalitetin e transmetimit (përpjekjet e vendosin opsionin në 1):
marr,EMRI:{,,,,1}
Example: Dërgo përmbajtjen e file NAME i mbështjellë në [>>] mesazhe me id 61 (duke qenë simboli ASCII '='), duke përdorur deri në 128 bajt të dhëna për mesazh:
marr,EMRI:{,128,,,-62}
Example: Dërgo përmbajtjen e file NAME mbështjellë në mesazhe [RE] duke përdorur deri në 190 bajt të dhëna për mesazh, të parashtruara nga %MY_ID%:
%MY_ID%get,NAME:{,190,,,-257}

GREIS

www.javad.com

55

2.3.11 vënë

GJUHA E HYRJES SË MARRËSIT Komandat vënë

Emri
vënë fillimin file ngarkimi duke përdorur DTP1.

Përmbledhje
Formati: put,objekt[,offset] Opsionet: {timeout, block_size}

Argumentet
identifikuesi i objektit të objektit të file për të shkruar të dhëna në. Nëse objekti nuk fillon me “/”, atëherë prefiksi “/log/” futet automatikisht përpara objektit përpara ekzekutimit të komandës.
kompensimi i kompensuar në bajt nga fillimi i file në të cilën të fillojë të shkruaj. Nëse hiqet, supozohet 0.

Opsionet

Tabela 2-6. vendos përmbledhje opsionet

Emri

Lloji

vlerat

E paracaktuar

timeout

numër i plotë [0…86400], sekonda 10

numër i plotë i madhësisë së bllokut [1…163841]

512

1. 2048 për marrës që nuk mbështesin TCP ose USB.

timeout timeout për DTP. block_size madhësia e një blloku të dhënash DTP.

Përshkrimi
Kjo komandë fillon ngarkimin e të dhënave nga kompjuteri pritës në a file në marrës duke përdorur Protokollin e Transferimit të të Dhënave (DTP). Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.
Pasi komanda put ka sukses, marrësi DTP niset në marrës dhe pret që transmetuesi DTP të ekzekutohet në host. Prandaj, për të ngarkuar në të vërtetë ndonjë të dhënë, nevojitet zbatimi i transmetuesit DTP në host.

1. Shihni “Protokolli i transferimit të të dhënave” në faqen 580.

GREIS

www.javad.com

56

GJUHA E HYRJES SË MARRËSIT Komandat vënë

Argumenti opsional i kompensimit lejon hostin të zbatojë mbështetje për rifillimin e transferimit të ndërprerë të të dhënave. Një vlerë kompensimi jo zero lejon hostin të kërkojë shtimin e të dhënave në fund të një ekzistuese file të madhësisë që përputhet.
Nëse kompensimi është 0 dhe file objekti nuk ekziston, marrësi do të përpiqet të krijojë dhe të hapë për të shkruar një të re file me emrin e përcaktuar nga objekti. Në këtë rast komanda do të dështojë nëse tashmë ekziston a file me emrin e dhënë.
Nëse kompensimi është më i madh se 0, dhe ka a file objekti, dhe file madhësia është e barabartë me vlerën e kompensimit, atëherë komanda put do të hapë file objekt për shtoj. Në këtë rast komanda do të dështojë nëse nuk ekziston file me emrin e dhënë ose nëse madhësia e ekzistueses file nuk përputhet me ato të specifikuara me kompensim.

Examples

Example: Filloni ngarkimin e të dhënave në një të re file "NAME" duke përdorur DTP. Secila prej:

Exampe:

vendos,/log/EMRI vendos,EMRI
Filloni të ngarkoni të dhëna dhe shtojini ato në ato ekzistuese file "EMRI". Përdorni kohëzgjatjen e paracaktuar të DTP dhe madhësinë e bllokut DTP 4096 bajt. Merrni madhësinë e file përpara se të filloni ngarkimin (vini re se file Madhësia kërkohet gjithsesi në host në mënyrë që ai të mund të kapërcejë këtë numër bajtësh nga të dhënat e tij burimore file):

Exampe:

print,/log/NAME&size RE008 3870034 put,/log/NAME:{,4096},3870034
Filloni ngarkimin e të dhënave në një të re file “my_logfile” duke përdorur kohëzgjatjen 50 sekonda dhe madhësinë e bllokut prej 8192 bajte:

vendos, my_logfile:{50,8192}

GREIS

www.javad.com

57

2.3.12 fld

GJUHA E HYRJES SË MARRËSIT Komandat fld

Emri
ngarkimi i firmuerit fld.

Përmbledhje
Formati: fld,id,object Opsionet: {timeout, block_size}

Argumentet
vargu id që përmban ID1 elektronike të marrësit. Nëse ID e specifikuar nuk korrespondon me ID-në aktuale elektronike të marrësit, komanda do të dështojë dhe do të prodhojë mesazh gabimi.
identifikuesi i objektit të burimit të firmuerit që do të ngarkohet. Ose emri i marrësit file, ose emri i një porti hyrës. Kur është emri i portit të hyrjes, duhet të jepet ose /cur/term ose emri aktual i portit aktual, përndryshe do të raportohet gabim.

Opsionet

Tabela 2-7. përmbledhja e opsioneve të fld

Emri

Lloji

vlerat

timeout

numër i plotë [0…86400], sekonda

bllok_size integer [1…163841] 1. 2048 për marrës që nuk mbështesin TCP ose USB.

E paracaktuar
10 512

timeout timeout për DTP. block_size madhësia e një blloku të dhënash DTP.

Përshkrimi
Kjo komandë ngarkon firmware nga objekti i specifikuar në marrës dhe më pas rivendos marrësin. Asnjë përgjigje nuk gjenerohet nëse nuk ka një gabim, ose përgjigja është e detyruar nga identifikuesi i deklaratës.

1. ID-ja mund të merret duke përdorur komandën print,/par/rcv/id.

GREIS

www.javad.com

58

GJUHA E HYRJES SË MARRËSIT Komandat fld

Paralajmërim:

Nëse gjatë ngarkimit ndodh një ndërprerje e energjisë ose ndërprerje fatale e transferimit të firmuerit përmes një porti, marrësi mund të kalojë në një gjendje gjysmë pune ku është i mundur vetëm ngarkimi i firmuerit përmes portave RS-232 duke përdorur metodën "kapje me energji".
Nëse objekti cakton një ekzistues file1, marrësi së pari do të kontrollojë nëse file përmban firmware të vlefshëm për marrësin (duhen disa sekonda për të përfunduar). Nëse kontrolli ka sukses, marrësi do të ngarkojë firmuerin dhe më pas do të kryejë vetë-rivendosje. Vini re se përgjigja ndaj komandës (nëse ka) do të dërgohet pasi të kryhet kontrolli, por përpara se të fillojë ngarkimi i firmuerit. Opsionet e skadimit dhe të madhësisë së bllokut injorohen në këtë rast.
Nëse objekti përcakton një rrymë hyrëse, komanda do të dërgojë përgjigjen (nëse ka) dhe më pas do të nisë marrësin DTP që do të presë që transmetuesi DTP të ekzekutohet në host. Prandaj, për të ngarkuar realisht firmware-in, nevojitet zbatimi i transmetuesit DTP në host. Vetë rivendosja (rindezja) do të kryhet nga marrësi pasi ngarkimi të përfundojë me sukses ose të ndërpritet.

Examples
Example: Ngarkoni firmware nga file "firmware.ldp" në marrës me ID elektronike 123456789AB. Prisni që të kalojnë disa sekonda ndërmjet dërgimit të komandës dhe marrjes së përgjigjes, ndërsa marrësi kontrollon file për vlefshmërinë e firmuerit:
%%fld,123456789AB,/log/firmware.ldp RE002%%
Example: Filloni ngarkimin e firmuerit nga porta USB duke përdorur madhësinë e bllokut 16384 bajt dhe skadon 20 sekonda. Merrni ID elektronike përpara se të lëshoni komandën:
print,rcv/id RE00C 8PZFM10IL8G fld,8PZFM10IL8G,/dev/usb/a:{20,16384}

GREIS

1. Pritet që të file që përmban firmware-in ngarkohet paraprakisht te marrësi, p.sh., duke përdorur komandën put.

www.javad.com

59

GJUHA E HYRJES SË MARRËSIT Komandat fld

GREIS

www.javad.com

60

Kapitulli 3
MESAZHET E MARRËSIT

Ky kapitull përshkruan formatin e përgjithshëm të mesazheve standarde GREIS si dhe formate të veçanta të të gjitha mesazheve të paracaktuara. Përveç mesazheve standarde GREIS, marrësi mbështet mjaft mesazhe të formateve të ndryshme, si NMEA ose BINEX. Formatet e atyre mesazheve “të huaja” përshkruhen në fund të këtij kapitulli.
3.1 Konventat
3.1.1 Specifikimet e formatit
Për të përshkruar disa formate si një sekuencë bajtësh1 në një formë kompakte, ne përcaktojmë formatet për disa lloje fushash kryesore dhe më pas përdorim shënime afër atyre të përdorura në gjuhën e programimit C për të ndërtuar përkufizime të formateve më komplekse:
struct EMRI {LENGTH} { LLOJI FUSHËS[COUNT]; // PËRSHKRIMI … FUSHA E LLOJIT[COUNT]; // PËRSHKRIMI
};
ku:
NAME emrin e caktuar për këtë format. Mund të përdoret në përkufizime të formateve të tjera si LLOJI i një fushe.
LENGTH gjatësinë në bajt të të gjithë sekuencës. Për një format me gjatësi fikse, ai është një numër, për një mesazh me gjatësi të ndryshueshme, mund të jetë ose një shprehje aritmetike në varësi të disa parametrave të tjerë të ndryshueshëm ose thjesht vargu var.
TYPE FIELD[COUNT] përshkrues i fushës. Ai përshkruan një sekuencë prej COUNT elementësh të të njëjtit TYPE të cilit i është caktuar emri FIELD. TYPE mund të jetë ose një nga llojet kryesore të fushave të përshkruara më poshtë, ose një EMRI i një formati tjetër. Kur mungon [COUNT], fusha përbëhet pikërisht nga një element. Kur mungon COUNT (dmth. ka vetëm kllapa katrore bosh, []), do të thotë se fusha përbëhet nga një numër i paspecifikuar elementësh.

GREIS

1. Në kontekstin e këtij kapitulli, “byte” do të thotë entitet 8-bitësh. Biti më pak i rëndësishëm i një bajt ka indeksin zero.

www.javad.com

61

MESAZHET E MARRËSVE Konventat
Specifikimet e formatit

PËRSHKRIMI Përshkrimi i fushës së bashku me njësitë e saj matëse dhe gamën e lejuar të vlerave, sipas rastit. Njësitë matëse janë të rrethuara me kllapa katrore.
Përcaktohen llojet e mëposhtme të fushave kryesore:

Tabela 3-1. Llojet e fushës primare

Shkruani Emrin

Kuptimi

Gjatësia në byte

a1

Karakteri ASCII

1

i1

numër i plotë i nënshkruar

1

i2

numër i plotë i nënshkruar

2

i4

numër i plotë i nënshkruar

4

u1

numër i plotë i panënshkruar

1

u2

numër i plotë i panënshkruar

2

u4

numër i plotë i panënshkruar

4

f4

IEEE-754 me një pikë lundruese me saktësi të vetme

4

f8

IEEE-754 me pikë lundruese me saktësi të dyfishtë

8

rr

sekuenca zero-përfunduar e ndryshores së karaktereve ASCII

Për të përcaktuar plotësisht formatin e caktuar, duhet të specifikojmë gjithashtu rendin e bajteve në fushat primare jo-agregate që janë me shumë bajt (i2, i4, u2, u4, f4, f8). Për mesazhet GREIS kjo renditje përcaktohet nga mesazhi [MF], shihni “Formati i mesazheve [MF]” në faqen 74 për detaje.
Duke përdorur përkufizimet e mësipërme, është e mundur që (në mënyrë rekursive) të zgjerohet çdo specifikim i formatit në sekuencën përkatëse të bajteve. Për shembullample, formati
struktura Pshample {9} { u1 n1; f4 n2; i2 n3[2];
};
zgjerohet në sekuencën e mëposhtme të bajteve duke supozuar rendin e parë të bajtit më pak të rëndësishëm (LSB):
n1[0](0), n2[0](0),n2[0](1),n2[0](2),n2[0](3), n3[0](0),n3[0](1),n3[1](0),n3[1](1)

GREIS

www.javad.com

62

GREIS

MESAZHET E MARRËSIT Transmetimi standard i mesazheve
Vlerat e veçanta
dhe në sekuencën e mëposhtme të bajteve që supozojnë rendin e parë të bajtit më të rëndësishëm (MSB):
n1[0](0), n2[0](3)n2[0](2)n2[0](1)n2[0](0) n3[0](1)n3[0](0)n3[1](1)n3[1](0)
ku x[i](j) përcakton bajtin e j-të (bajt #0 është më pak i rëndësishëm) i një elementi i-të të fushës x.

3.1.2 Vlerat e veçanta

Për mesazhet binare, disa nga fushat e tyre me numra të plotë dhe me pikë lundruese mund të përmbajnë vlera të veçanta, të cilat përdoren në vend të të dhënave aktuale kur nuk ka të dhëna të disponueshme për fushën. Fushat binare për të cilat kërkohet kontrollimi i vlerave të veçanta gjatë nxjerrjes së të dhënave shënohen me pikëçuditjen "!" në kolonën e parë të përcaktimit të fushës.
Tabela e mëposhtme përcakton vlera të veçanta për lloje të ndryshme të fushave të të dhënave:

Tabela 3-2. Vlerat e veçanta për fushat

Lloji i fushës
i1 u1 i2 u2 i4 u4 f4 f8

Vlera e Veçantë
127 255 32767 65535 2147483647 4294967295 qetë NaN qetë NaN

Përfaqësimi HEX
7F FF 7FFF FFFF 7FFF_FFFF FFFF_FFFF 7FC0_0000 7FF8_0000_0000_0000

3.2 Transmetimi standard i mesazheve

Transmetimi standard i mesazheve GREIS është një sekuencë prej më së shumti dy lloje mesazhesh, mesazhe standarde GREIS dhe mesazhe me tekst jo standarde.
Lloji më i rëndësishëm dhe i përdorur gjerësisht i mesazheve është një grup i pasur mesazhesh standarde GREIS. Formati i tyre i përgjithshëm është projektuar me kujdes për të lejuar mesazhe binar dhe tekst.

www.javad.com

63

MESAZHET E MARRËSVE Formati i përgjithshëm i mesazheve
Mesazhet standarde
urtë dhe për të bërë të mundur që aplikacionet të kapërcejnë me efikasitet mesazhet për të cilat aplikacioni nuk di ose nuk është i interesuar.
Mbështetja për mesazhet me tekst jo standarde, të cilat duhet t'i përmbahen ende formatit të përcaktuar për to në këtë manual, bën të mundur përzierjen e mesazheve standarde GREIS me mesazhet e disa formateve të tjera në rrjedhën standarde të të dhënave GREIS. Një ishampTë një formati të tillë janë mesazhet NMEA.
Mesazhe tekst jo standarde të një rasti të veçantë, mesazhe që përmbajnë vetëm ASCII dhe/ose karakteret, futen nga motori i formatimit të mesazheve në marrës midis mesazheve standarde GREIS për ta bërë transmetimin e mesazhit që rezulton më i lexueshëm nga njeriu kur dërgohet në një terminal ose tekst të përgjithshëm viewer ose aplikacioni redaktues.
Përveç mesazheve standarde GREIS dhe mesazheve me tekst jo standarde, marrësit JAVAD GNSS zakonisht mbështesin shumë formate të tjera (p.sh. RTCM, BINEX, CMR). Megjithatë, ato formate janë të papajtueshme me formatin e transmetimit standard të mesazheve GREIS. Nëse një transmetim përmban mesazhe të atyre formateve, ai nuk mund të quhet më transmetim standard i mesazheve GREIS dhe nuk mund të analizohet nga të njëjtat rregulla si transmetimi standard.1

3.3 Formati i Përgjithshëm i Mesazheve

3.3.1 Mesazhet standarde

Formati i çdo mesazhi standard është si më poshtë:

struct StdMessage {var} {

a1 id[2];

// Identifikues

gjatësia a1[3];

// Gjatësia e trupit heksadecimal, [000…FFF]

trupi u1[gjatësia]; // Trupi

};

Çdo mesazh standard fillon me identifikuesin unik të mesazhit që përbëhet nga dy karaktere ASCII. Çdo karakter nga nëngrupi "0" deri në "~" (dmth., kodet dhjetore ASCII në rangun prej [48…126]) lejohen në identifikues.

GREIS

1. Në fakt, formati i mesazheve standarde GREIS është aq fleksibël sa mund të inkorporojë çdo rrymë të dhënash në rrjedhën standarde të të dhënave GREIS, por më pas rrjedha origjinale e papajtueshme duhet të mbështillet në një sekuencë mesazhesh të veçanta GREIS. Mesazhi i paracaktuar me identifikues “>>” i shërben këtij qëllimi.

www.javad.com

64

MESAZHET E MARRËSVE Formati i përgjithshëm i mesazheve
Mesazhe me tekst jo standarde
Identifikuesi i mesazhit ndiqet nga gjatësia e fushës së trupit të mesazhit. Kjo fushë, e cila përfshin tre shifra heksadecimal me shkronja të mëdha, specifikon gjatësinë e trupit të mesazhit në bajt. Kështu, gjatësia maksimale e trupit të mesazhit është 4095 (0xFFF) bajt.
Trupi i mesazhit vjen menjëherë pas fushës së gjatësisë dhe përmban saktësisht numrin e bajteve të specifikuara nga fusha e gjatësisë. Nuk ka kufizime në përmbajtjen e trupit të mesazhit të nënkuptuar nga formati i përgjithshëm. Formati i trupit të mesazhit në një mesazh përcaktohet në mënyrë implicite nga identifikuesi i mesazhit. Formatet e trupave të mesazheve të të gjitha mesazheve të paracaktuara

3.3.2 Mesazhe me tekst jo standarde

Formati i mesazheve jo standarde me tekst është si më poshtë:

struct NonStdTextMessage {var} {

a1 id;

// Identifikues, [!…/]

trupi a1[];

// Trupi me gjatësi arbitrare, [0…)

a1 eom;

// Fundi i mesazhit ( ose )

};

Identifikuesi i mesazhit është çdo karakter në rangun [!… /] (kodet dhjetore ASCII në intervalin [33…47]). Identifikuesi i mesazhit është opsional. Nëse mungon, trupi i mesazhit duhet të ketë gjatësinë zero (dmth. duhet të mungojë gjithashtu).

Trupi i mesazhit është një sekuencë karakteresh ASCII përveç (kodi dhjetor 13) dhe (kodi dhjetor 10) karaktere. Asnjë kufizim në gjatësinë e trupit nuk imponohet nga formati.

Shënuesi i fundit i mesazhit është ose ose karakter.

Vini re se formati lejon mesazhe jo standarde që përmbajnë vetëm karaktere CR ose LF. Ky funksion lejon që transmetimet standarde të mesazheve GREIS të duken më të lexueshme kur nxirren të dhëna në një terminal për qëllime të përgjithshme ose viewing me tekst të përgjithshëm viewer ose redaktor.

Një nga identifikuesit jo standard të mesazheve me tekst, karakteri "$", është tashmë i rezervuar si identifikues për mesazhet standarde NMEA. Asnjë mesazh tjetër me tekst jo standard nuk duhet të përdorë "$" si identifikues.

3.3.3 Parimi i rrjedhës së mesazheve
Në këtë seksion, do të gjeni disa sugjerime dhe këshilla se si të shkruani kodin që synon të analizojë rrjedhat e mesazheve të një marrësi GREIS. Edhe pse ne nuk do ta diskutojmë këtë temë në detaje në këtë manual referimi, ne dëshirojmë të theksojmë këtu se mesazhi standard

GREIS

www.javad.com

65

MESAZHET E MARRËSVE Formati i përgjithshëm i mesazheve
Analiza e transmetimit të mesazheve
formati do t'ju lejojë të përpunoni/analizoni në mënyrë efektive pothuajse çdo rrymë mesazhi GREIS që mund të hasni në praktikë.

Shënim:

Sinkronizimi
Kur analizoni një transmetim mesazhi, së pari duhet të gjeni kufirin më të afërt të mesazhit. Kjo është ajo që zakonisht quhet "sinkronizim". Sinkronizimi i mesazheve kryhet kur fillon analizimi ose kur sinkronizimi humbet për shkak të një gabimi në rrjedhën e të dhënave. Në fakt, për të thjeshtuar algoritmin, mund të konsideroni se jeni tashmë të sinkronizuar kur filloni të analizoni rrjedhën e të dhënave. Nëse ndodh që nuk është vërtet kështu, duhet të ndodhë gabimi i analizimit. Më pas kaloni një karakter nga transmetimi i hyrjes dhe pretendoni se jeni sinkronizuar përsëri. Një qasje e tillë eliminon në mënyrë efektive detyrën e sinkronizimit si një pjesë e veçantë e algoritmit të analizës.
Për shkak të faktit se shkalla e gabimeve në një rrjedhë të arsyeshme të dobishme të të dhënave duhet të jetë mjaft e ulët, sinkronizimi nuk duhet të jetë një detyrë e shpeshtë. Përveç kësaj, rrjedha e të dhënave GREIS zakonisht përbëhet nga mesazhe mjaft të shkurtra, kështu që distanca deri në kufirin më të afërt të mesazhit është zakonisht e vogël. Duke marrë parasysh këto konsiderata, nuk kërkohet që algoritmi i sinkronizimit të jetë shumë i shpejtë.

Shënim:

Kapërcimi te mesazhi tjetër
Duke pasur gjatësinë në formatin e përgjithshëm të mesazheve standarde GREIS ju lejon të injoroni lehtësisht mesazhet pa e ditur formatin e trupit të tyre. Ne me të vërtetë rekomandojmë fuqimisht të shkruani analizues në mënyrë që ata të kalojnë mesazhe të panjohura.
Për të kaluar nga mesazhi aktual në mesazhin tjetër, ndërmerrni hapat e mëposhtëm:
1. Supozoni se mesazhi aktual fillon në pozicionin “N”. Përcaktoni gjatësinë aktuale të mesazhit (deshifroni karakteret ## N+2, N+3, N+4). Supozoni se gjatësia e mesazhit është e barabartë me L. Kapërceni karakteret e para L+5 duke filluar nga pozicioni "N".
2. Kapërceni të gjitha dhe karaktere (nëse ka).
Në mënyrë të rreptë, ne nuk ju rekomandojmë që të përdorni në kodin tuaj analizues ndonjë informacion apriori në lidhje me madhësitë dhe përmbajtjen e trupave të mesazhit. Nëse e respektoni këtë rekomandim, nuk do të keni probleme me programin e analizës nëse disa prej mesazheve ndryshohen.
Rregullat dhe sugjerimet për analizimin e trupave të mesazheve të mesazheve standarde të paracaktuara GREIS diskutohen më vonë në "Trupat e analizimit të mesazheve" në faqen 67.

GREIS

www.javad.com

66

GREIS

MESAZHET E MARRËSIT Mesazhet standarde të paracaktuara
Analiza e trupave të mesazheve
3.4 Mesazhet standarde të paracaktuara
Në këtë seksion do ta njohim lexuesin me grupin e paracaktuar të mesazheve standarde GREIS. Kur i referohemi një mesazhi me identifikuesin XX, ne përdorim shënimin [XX]. Ndërsa shumica e mesazheve thirren nga identifikuesi i tyre i mesazhit në GREIS, disa prej tyre, veçanërisht ato që kanë identifikues joalfanumerik, kanë emra që janë të ndryshëm. Për mesazhe të tilla përdoret shënimi [XX](NN), ku XX është identifikuesi i mesazhit dhe NN është emri i mesazhit që do të përdoret në komandat GREIS. Për shembullampmesazhi [~~](RT) ka kokën “~~” dhe quhet /msg/jps/RT në komandat GREIS.
Ky seksion përcakton formatet e trupave për të gjitha mesazhet standarde të paracaktuara. Mbani në mend se në një rrjedhë të dhënash çdo mesazh ka një kokë standarde të përcaktuar edhe nga formati i përgjithshëm.
3.4.1 Parimi i trupave të mesazhit
Zgjerimet e lejuara të formatit
Formatet e mesazheve binare me madhësi fikse të mesazhit lejojnë shtimin e më shumë fushave të të dhënave në të ardhmen. Fushat e reja lejohen të futen vetëm në fund të trupit të mesazhit pak përpara fushës së shumës së kontrollit (nëse ka). Modifikime të tilla në trupat e mesazhit konsiderohen si zgjerime të formatit, jo ndryshime të papajtueshme.
Megjithëse mesazhet standarde me tekst GREIS nuk janë mesazhe me madhësi fikse mesazhi, fusha të reja mund të shfaqen ende në këto mesazhe në të ardhmen. Fushat e reja mund të futen ose në fund të një mesazhi tekst ekzistues pak përpara fushës së kontrollit, ose menjëherë përpara çdo kllapa në të djathtë (}). Për shembullample, një mesazh që aktualisht lexohet si:
…1,{21,22},3,@CS
mund të shtrihet më vonë në
…1,{2.1,2.2,2.3},3,4,@CS
ku janë shtuar dy fusha shtesë, “2.3” dhe “4”.
Zbatoni algoritmet tuaja të analizimit duke marrë parasysh rregullat e mëposhtme për t'i bërë ato të funksionojnë edhe me shtesat e formatit të ardhshëm:
1. Mos supozoni se madhësia e trupit të mesazhit të mesazhit të marrë duhet të përputhet saktësisht me madhësinë specifike të përcaktuar në këtë dokument. Vetëm nëse mesazhi është shumë i shkurtër, kjo do të thotë se nuk mund të përdorni përmbajtjen e tij. Nëse mesazhi është më i gjatë se sa pritej, thjesht injoroni të dhënat e tepërta.
2. Adresoni fushën e kontrollit në lidhje me fundin e trupit të mesazhit.

www.javad.com

67

MESAZHET E MARRËSIT Mesazhet standarde të paracaktuara
Shënime të përgjithshme
3. Adresoni fushat e tjera të të dhënave në lidhje me fillimin e trupit të mesazhit. 4. Merrni parasysh rregullin e mësipërm për zgjatjen e mesazheve tekst kur
shkrimi i nxjerrësit të të dhënave për mesazhet me tekst.
Shumat e kontrollit
Pasi një mesazh është nxjerrë nga rrjedha e të dhënave duke përdorur teknikat e përshkruara në "Parsing Message Stream" në faqen 65, dhe identifikuesi i mesazhit duket të jetë një nga ata që aplikacioni është i interesuar, trupi i mesazhit duhet të analizohet për të nxjerrë të dhënat. . Para nxjerrjes së përmbajtjes, shuma e kontrollit të mesazhit duhet të llogaritet dhe të krahasohet me shumën e kontrollit që përmban mesazhi.
Shumica e mesazheve të paracaktuara përmbajnë kontroll. Shuma e kontrollit llogaritet duke përdorur si titullin e mesazhit (dmth. "identifikuesin e mesazhit" plus "gjatësinë e trupit të mesazhit") dhe vetë trupin. Shihni “Llogaritja e shumave të kontrollit” në faqen 579 për më shumë informacion mbi llogaritjen e shumës së kontrollit.
Shuma e kontrollit vendoset gjithmonë në fund të trupit të mesazhit. Nëse struktura e një mesazhi modifikohet duke shtuar një fushë(a) të reja të dhënash, fushat e reja të të dhënave do të shtohen përpara fushës së shumës së kontrollit. Kjo shpjegon pse rekomandohet adresimi i fushës së kontrollit në lidhje me fundin e trupit të mesazhit.
3.4.2 Shënime të përgjithshme
Shkallët e kohës
Ekzistojnë pesë shkallë kohore që marrësi juaj mund të trajtojë:
Tr koha e marrësit Tg koha e sistemit GPS Tu UTC(USNO). Koha e Koordinuar Universale e mbështetur nga Vëzhguesi Detar i SHBA-së
vatory. Tn koha e sistemit GLONASS. Ts UTC(SU). Koha e Koordinuar Universale e mbështetur nga Ora Shtetërore dhe Fre-
Quency Service, Rusi.
"Koha e marrësit" është e vetmja rrjetë kohore që është gjithmonë e disponueshme në marrësin tuaj (dmth. rrjetet e tjera kohore nga lista e mësipërme mund ose nuk mund të jenë aktualisht të disponueshme).
Në fakt, marrësi JAVAD GNSS sinkronizon gjithmonë kohën e marrësit me një nga katër shkallët globale të kohës: koha GPS, UTC(USNO), koha GLONASS ose UTC(SU). Të

GREIS

www.javad.com

68

GREIS

MESAZHET E MARRËSIT Mesazhet standarde të paracaktuara
Shënime të përgjithshme
rrjeti kohor i zgjedhur në këtë mënyrë referohet si "koha e referencës së marrësit" (Trr) më poshtë në këtë seksion1.
Sisteme të ndryshme kohore mund të kenë shënime (formate) të ndryshme kohore të lidhura me to (p.sh., për kohën GPS, ne përdorim terma të tillë si "numri i javës", "koha e javës", etj.). Megjithatë, vini re se paraqitja e "kohës së marrësit" nuk do të varet nga koha e zgjedhur e referencës së marrësit dhe përfaqësohet gjithmonë si data dhe ora e ditës e marrësit.
Shumica e mesazheve të paracaktuara nuk përmbajnë informacion për kohën e referencës brenda. Në tonë view, do të ishte e tepruar të përdorni një dhe të njëjtën kohë tag me të gjitha mesazhet e shumta që marrësi gjeneron në epokën aktuale. Kur nxirrni informacionin e marrësit të disponueshëm për epokën aktuale, zakonisht merrni mesazhe të ndryshme. Në vend që t'i siguroni secilit një kohë individuale tag në fushën e të dhënave, ne përdorim një mesazh të veçantë që mbart informacionin e kohës së marrësit të zakonshëm për këto mesazhe. Ky mesazh quhet “Receiver Time” dhe ka identifikuesin [~~].
Sidoqoftë, ekziston një mënyrë funksionimi, e quajtur modaliteti i vonuar RTK, kur në një epokë të caktuar marrësi mund të prodhojë zgjidhje të referuara në një epokë tjetër në të kaluarën. Për të siguruar kohë tag për një zgjidhje të tillë, koha speciale e zgjidhjes-Tag Është përdorur mesazhi [ST]. Në fakt ky mesazh jep kohën e duhur tag për një zgjidhje në të gjitha mënyrat e funksionimit, megjithëse në shumicën e mënyrave ka saktësisht të njëjtën kohë me [~~].
Ka disa mesazhe të tjera që kanë një kohë tag fushën e të dhënave. Këto janë mesazhe që përmbajnë informacione që shfaqen në mënyrë të pavarur në rrjetin e epokës së marrësit. Një ishampe një mesazhi të tillë është "Ngjarje" [==].
Kufizuesit
Në fakt, mesazhi "Koha e Marrësit" supozohet të paraprijë të gjitha mesazhet e tjera të gjeneruara në epokën aktuale, duke kufizuar kështu mesazhet që korrespondojnë me epoka të ndryshme. Nga pikëpamja formale e view, i takon përdoruesit të përcaktojë rendin e mesazheve në rrjedhën dalëse. Megjithatë, duhet pasur kujdes për të siguruar që rendi në të cilin mesazhet janë shkruar në rrjedhën e daljes të mos prishë "sinkronizimin e epokës", i cili është shumë thelbësor për përpunimin pas përpunimit të të dhënave të regjistruara me paketat softuerike JAVAD GNSS. Për më shumë detaje mbi grupin e parazgjedhur të mesazheve, shihni "Koletë e mesazheve" në faqen 562.
Për aplikimet në kohë reale është thelbësore të përcaktohet fundi i epokës sa më shpejt të jetë e mundur. Për aplikime të tilla thjesht kufizimi i epokave me një shënues "fillimi i epokës" nuk është i përshtatshëm. Ne sugjerojmë të përdorni mesazhin "Epoch Time" [::](ET) si shënuesin "fundi i epokës". Ky mesazh përmban të njëjtën fushë të orës së ditës që gjendet në mesazhin "Koha e Marrësit" që lejon një kontroll më të mirë të integritetit. Ideja është të krahasohet koha tag

1. Në firmware-in aktual të marrësit, koha e referencës së marrësit është ose koha e sistemit GPS ose GLONASS, referojuni /par/raw/time/ref në faqen 220

www.javad.com

69

GREIS

MESAZHET E MARRËSIT Mesazhet standarde të paracaktuara
Shënime të përgjithshme
nga mesazhi [::] kundër kohës tag nga mesazhi përkatës [~~]. I papërputhshëm tags janë një tregues i epokës së thyer.
Do të vini re se shumica e mesazheve kanë identifikues që përmbajnë vetëm shifra dhe/ose shkronja angleze. Në fakt, "Receiver Time" [~~] është mesazhi i vetëm, identifikuesi i të cilit përdor karakterin "~". Ka kuptim pasi mesazhi [~~] luan një rol shumë të rëndësishëm duke shërbyer si një përcaktues i epokës. Kështu, ekzistojnë masa paraprake të veçanta për të minimizuar probabilitetin e humbjes së këtij mesazhi kyç. Në mënyrë të ngjashme, identifikuesi i mesazhit "Ngjarje" ([==]), gjithashtu, duhet të jetë sa më i dallueshëm që të jetë e mundur, pasi softueri i aplikacionit mund të përdorë ngjarje të formës së lirë si përcaktues.
Ideja e përdorimit të identifikuesve “shumë dallues” për mesazhet që shërbejnë si kufij është shumë e qartë. Nëse shuma e kontrollit të një mesazhi është e gabuar, thjesht kontrolloni identifikuesin e tij. Nëse asnjë nga karakteret e identifikuesit nuk përkon me "~", atëherë ka shumë pak gjasa që ky të jetë një mesazh i korruptuar [~~]. Prandaj, nuk duhet të kaloni te mesazhi tjetër [~~] në këtë rast.
Nga ana tjetër, nëse një mesazh ka kontrollin e saktë, por një nga karakteret identifikuese është "~", atëherë do të ishte më e sigurt të trajtohej ky mesazh si një mesazh [~~] i dëmtuar. Në këtë rast kalo te mesazhi tjetër [~~].

Llojet e zgjidhjeve

Fusha "solType" e përdorur në shumë prej mesazheve të paracaktuara përcakton llojin e zgjidhjes përkatëse dhe mund të ketë vlerat e mëposhtme:
Tabela 3-3. Llojet e zgjidhjeve

Vlera

Kuptimi

0

nr

Dokumentet / Burimet

Ndërfaqja e jashtme e marrësit JAVAD GREIS GNSS [pdfUdhëzuesi i përdoruesit
Ndërfaqja e jashtme e Marrësit GREIS GNSS, GREIS, Ndërfaqja e jashtme e Marrësit GNSS, Ndërfaqja e jashtme e Marrësit, Ndërfaqja e jashtme, Ndërfaqja

Referencat

Lini një koment

Adresa juaj e emailit nuk do të publikohet. Fushat e kërkuara janë shënuar *