JAVAD GREIS GNSS-ontvanger eksterne koppelvlak

Spesifikasies

  • Produk: GREIS GNSS Ontvanger
  • Firmware-weergawe: 4.5.00
  • Laas hersien: 14 Oktober 2024

Produk inligting

Die GREIS GNSS-ontvanger is 'n hoë-presisie eksterne koppelvlaktoestel wat deur JAVAD GNSS ontwerp is en akkurate posisioneringsinligting bied.

Inleiding

GREIS is 'n veelsydige toestel wat vir verskeie toepassings gebruik word. Hier is 'n paar belangrike punte:

  • Wat is GREIS: Dit is 'n eksterne koppelvlaktoestel vir GNSS-ontvangers.
  • Hoe word GREIS gebruik: Dit word gebruik om die funksionaliteit en akkuraatheid van GNSS-stelsels te verbeter.
  • Lyste: Verwys na die handleiding vir gedetailleerde lyste van ondersteunde kenmerke en funksionaliteite.
  • Voorwerpe: Verken verskillende voorwerpe wat met GREIS vir spesifieke take gebruik kan word.

Ontvanger-invoertaal

Die ontvanger se invoertaal laat gebruikers toe om met die toestel te kommunikeer deur spesifieke opdragte en sintaksis te gebruik. Hier is 'n kort oorsigview:

  • Taal Bvamples: Leer uit die verskafde voorbeeldamples om te verstaan ​​hoe om met die toestel te kommunikeer.
  • Taalsintaksis: Maak jouself vertroud met die sintaksisreëls vir die stuur van opdragte na die ontvanger.
  • Opdragte: Gebruik verskeie opdragte om die toestel te beheer en te konfigureer volgens jou vereistes.

Ontvanger Boodskappe

Dit is noodsaaklik om ontvangerboodskappe te verstaan ​​vir die interpretasie van data en statusinligting. Hier is wat jy moet weet:

  • Konvensies: Volg spesifieke formate en waardes om boodskappe akkuraat te interpreteer.
  • Standaard Boodskapstroom: Verken die standaardboodskapformaat vir konsekwente data-oordrag.

Gereelde vrae

V: Kan ek die firmware van die GREIS GNSS-ontvanger wysig?
A: Nee, die wysiging van die firmware is nie toegelaat volgens die kopieregregulasies van JAVAD GNSS nie.

V: Hoe kan ek toegang kry tot ondersteuning vir tegniese kwessies wat met die GREIS GNSS-ontvanger verband hou?
A: Vir tegniese ondersteuning, kontak asseblief JAVAD GNSS direk vir hulp.

Dankie dat jy jou JAVAD GNSS-ontvanger gekoop het. Die materiaal wat in hierdie verwysingsgids (die "Gids") beskikbaar is, is voorberei deur JAVAD GNSS, Inc. vir eienaars van JAVAD GNSS-produkte. Dit is ontwerp om eienaars te help met die gebruik van die ontvanger en die gebruik daarvan is onderhewig aan hierdie bepalings en voorwaardes (die "Bepalings en Voorwaardes").

Bepalings en voorwaardes
PROFESSIONELE GEBRUIK JAVAD GNSS-ontvangers is ontwerp om deur 'n professionele persoon gebruik te word. Daar word van die gebruiker verwag om 'n goeie kennis en begrip van die gebruiker en veiligheidsinstruksies te hê voordat dit gebruik, inspekteer of verstel word. Dra altyd die vereiste beskermers (veiligheidskoene, helm, ens.) wanneer die ontvanger gebruik word.

VRYWARING VAN WAARBORG, BEHALWE VIR ENIGE WAARBORGE IN HIERDIE GIDS OF 'N WAARBORGKAART WAT DIE PRODUK VERGESEL, WORD HIERDIE GIDS EN DIE ONTVANGER "SOOS IS" VERSKAF. DAAR IS GEEN ANDER WAARBORGE NIE. JAVAD GNSS WYS ENIGE GEÏSPLISEERDE WAARBORG VAN VERHANDELBAARHEID OF GESKIKTHEID VIR ENIGE SPESIFIEKE GEBRUIK OF DOEL. JAVAD GNSS EN SY VERSPREIDERS SAL NIE AANSPREEKLIK WEES VIR TEGNIESE OF REDAKSIELE FOUTE OF WEGLAATINGS HIERIN VERVAT NIE; NOOIT VIR TOEVALLE OF GEVOLLIKE SKADE WAT VOORTKOM UIT DIE VERLEIING, PRESTASIE OF GEBRUIK VAN HIERDIE MATERIAAL OF DIE ONTVANGER. SULKE UITGESLADE SKADE SLUIT IN, MAAR IS NIE BEPERK TOT TYDSVERLIES, VERLIES OF VERNIETIGING VAN DATA, VERLIES AAN WINS, SPAARS OF INKOMSTE, OF VERLIES VAN DIE PRODUK SE GEBRUIK. BYKOMEND IS JAVAD GNSS NIE VERANTWOORDELIK OF AANSPREEKLIK VIR SKADE OF KOSTE AANGELY IN VERBINDING MET DIE VERKRYGING VAN VERVANGSPRODUKTE OF SAGTEWARE, EISE DEUR ANDER, ONGELUKHEID OF ENIGE ANDER KOSTE NIE. IN ENIGE GEVAL SAL JAVAD GNSS GEEN AANSPREEKLIKHEID VIR SKADE OF ANDERS AAN JOU OF ENIGE ANDER PERSOON OF ENTITEIT BO OORSTREKLIK BO DIE KOOPPRYS VIR DIE ONTVANGER HET NIE.
LISENSIE-OOREENKOMS Gebruik van enige rekenaarprogramme of sagteware verskaf deur JAVAD GNSS of afgelaai vanaf 'n JAVAD GNSS webwebwerf (die “sagteware”) in verband met die ontvanger vorm aanvaarding van hierdie Bepalings en Voorwaardes in hierdie Gids en 'n ooreenkoms om by hierdie Bepalings en Voorwaardes te hou. Die gebruiker word 'n persoonlike, nie-eksklusiewe, nie-oordraagbare lisensie toegestaan ​​om sodanige sagteware onder die bepalings te gebruik

VOORWOORD Bepalings en Voorwaardes
hierin vermeld en in elk geval slegs met 'n enkele ontvanger of enkele rekenaar. Jy mag nie die sagteware of hierdie lisensie toeken of oordra sonder die uitdruklike skriftelike toestemming van JAVAD GNSS nie. Hierdie lisensie is van krag totdat dit beëindig word. U kan die lisensie te eniger tyd beëindig deur die sagteware en gids te vernietig. JAVAD GNSS kan die lisensie beëindig indien jy versuim om aan enige van die Bepalings of Voorwaardes te voldoen. Jy stem in om die sagteware en gids te vernietig by beëindiging van jou gebruik van die ontvanger. Alle eienaarskap, kopiereg en ander intellektuele eiendomsregte in en aan die sagteware behoort aan JAVAD GNSS. Indien hierdie lisensiebepalings nie aanvaarbaar is nie, stuur enige ongebruikte sagteware en gids terug.

VERTROULIKHEID Hierdie gids, die inhoud daarvan en die sagteware (gesamentlik, die "Vertroulike Inligting") is die vertroulike en eiendomsinligting van JAVAD GNSS. Jy stem in om JAVAD GNSS se vertroulike inligting met 'n mate van sorg te behandel wat nie minder streng is as die mate van sorg wat jy sal gebruik om jou eie waardevolste handelsgeheime te beskerm nie. Niks in hierdie paragraaf sal jou beperk om vertroulike inligting aan jou werknemers bekend te maak soos nodig of toepaslik mag wees om die ontvanger te bedryf of te versorg nie. Sulke werknemers moet ook die vertroulikheidsinligting vertroulik hou. In die geval dat jy wetlik verplig word om enige van die vertroulike inligting bekend te maak, sal jy JAVAD GNSS onmiddellik kennis gee sodat dit 'n beskermende bevel of ander toepaslike remedie kan soek.
WEBWERF; ANDER STELLINGS Geen verklaring vervat by die JAVAD GNSS nie webwebwerf (of enige ander webwebwerf) of in enige ander advertensies of JAVAD GNSS literatuur of gemaak deur 'n werknemer of onafhanklike kontrakteur van JAVAD GNSS wysig hierdie bepalings en voorwaardes (insluitend die sagteware lisensie, waarborg en beperking van aanspreeklikheid).
VEILIGHEID Onbehoorlike gebruik van die ontvanger kan lei tot besering van persone of eiendom en/of wanfunksionering van die produk. Die ontvanger moet slegs deur gemagtigde JAVAD GNSS-waarborgdienssentrums herstel word.
DIVERSE Die bogenoemde bepalings en voorwaardes kan te eniger tyd deur JAVAD GNSS gewysig, gewysig, vervang of gekanselleer word. Die bogenoemde bepalings en voorwaardes sal beheer word deur, en vertolk word in ooreenstemming met, die wette van die staat Kalifornië, sonder verwysing na konflik van wette.

Wat is GREIS
GREIS is 'n koppelvlaktaal wat gebruikers in staat stel om effektief met GNSS-ontvangers te kommunikeer deur toegang tot al hul vermoëns en funksies te verkry.
GREIS verteenwoordig 'n generiese ontvangertaalstruktuur vir die hele reeks JAVAD GNSS-hardeware. Hierdie taalstruktuur is ontvanger-onafhanklik en oop vir toekomstige wysiging of uitbreiding. GREIS is gebaseer op 'n verenigde benadering wat die gebruiker toelaat om 'n JAVAD GNSS-ontvanger te beheer deur 'n toepaslike stel benoemde voorwerpe te gebruik. Kommunikasie met hierdie voorwerpe word bereik deur vooraf gedefinieerde opdragte en boodskappe. Daar is geen spesifieke beperkings op die aantal of tipe ontvangervoorwerpe wat gebruik word nie.

Hoe word GREIS gebruik
Enige stelsel wat met die JAVAD GNSS-ontvanger kommunikeer deur een van sy poorte (serieel, parallel, USB, Ethernet, ens.) sal GREIS-opdragte en boodskappe gebruik om die vereiste taak uit te voer. 'n Paar tipiese toepassings waar GREIS 'n baie belangrike rol speel, is eerstens die gebruik van handbeheerders om met die ontvangers te kommunikeer tydens veldoperasie in opname- en RTK-projekte of, tweedens, wanneer data vanaf die ontvangers na rekenaarstelsels afgelaai word vir verdere plasing verwerking. 'n Naverwerkingsprogram self gebruik nie GREIS-opdragte nie, maar moet bewus wees van GREIS-boodskappe om data uit die data te onttrek files.


Een belangrike kenmerk van GREIS is dat dit effektief gebruik kan word vir beide die outomatiese en handmatige beheer van JAVAD GNSS-ontvangers. Vir handbeheer sal die gebruiker die nodige GREIS-opdragte in die ontvanger invoer deur middel van 'n terminaal. Dit is maklik bereikbaar aangesien GREIS ontwerp is om mens-leesbare tekskoppelvlak te wees. Aan die ander kant gehoorsaam GREIS taamlik streng reëls wat dit maklik maak om deur toepassings te gebruik.

Lyste
GREIS gebruik 'n konsep van lyste baie. Lyste word beide in die ontvanger-invoertaal en in die standaard teksboodskappe gebruik.

INLEIDING Objekte
Lyste in GREIS word voorgestel deur 'n reeks elemente wat deur kommas (,, ASCII-kode 44) afgebak word, en in hakies ingesluit ({}, ASCII-kodes 123 en 125):
{element1,element2,element3}
Op hul beurt kan elemente van 'n lys self lyste wees:
{e1,{ee21,ee22},e3}
Die definisie hierbo is dus rekursief, sodat lyste van arbitrêre nesdiepte toegelaat word. Elemente wat nie lyste is nie, word blaarelemente genoem, of bloot blaartjies. Elemente van lyste kan leeg wees, in welke geval ons sê die element is weggelaat. Byvoorbeeldample, in die lys hieronder, word tweede element weggelaat:
{e1,,e3}
Spasies voor en na afbakenings word toegelaat en geïgnoreer. As elemente van 'n lys almal dieselfde substring (voorvoegsel) aan die begin het, kan hierdie substring uit die hakies rondom die lys geskuif word, bv.
elem{1,2,3}
is 'n korter vorm van die
{elem1,elem2,elem3}

Elemente kan in dubbelaanhalingstekens (“, ASCII-kode 34) ingesluit word wat tydens ontleding gestroop word. Binne aangehaalde element verloor spesiale simbole (hakies, kommas, ens.) hul rol en word as gereelde karakters beskou. Nog 'n gebruik van aanhalingstekens is om te onderskei tussen "element is nie gespesifiseer nie" en "leë element gespesifiseerde" toestande. Eersgenoemde word aangedui deur bloot 'n element uit die lys weg te laat, en laasgenoemde word aangedui deur 'n paar dubbele aanhalingstekens tussen die kommas te plaas. Aanhaling is ook nuttig wanneer 'n mens voor- of agterruimtes in 'n tou moet hê. Om dubbelaanhalingstekens in element te plaas, haal hierdie element aan en ontsnap die dubbelaanhalingsteken binne met die terugskuinsstreepkarakter (, ASCII-kode 92). Om backslash op sigself in aangehaalde string te plaas, ontsnap dit met 'n ander backslash, bvample:
Example: “String met “aanhalingstekens”, agterste skuinsstreep \, en spesiale karakters, {}”
1.4 Voorwerpe
In die konteks van die model waarop GREIS gebaseer is, word 'n JAVAD GNSS-ontvanger geïdentifiseer met 'n stel benoemde voorwerpe.

GREIS

www.javad.com

20

INLEIDING Objekte
Voorwerpidentifiseerders
Voorwerp word gedefinieer as 'n hardeware- of sagteware-entiteit van die ontvanger wat aangespreek, gestel of navraag gedoen kan word. Daar word gewoonlik na hardeware-entiteite verwys as toestelle, terwyl fermware-voorwerpe normaalweg is files en parameters. Ontvangerpoorte en geheuemodules is almal goed, bvamples van toestelle. Alle toestelle, files en parameters word op 'n eenvormige manier deur GREIS behandel. Elke objek het 'n geassosieerde stel eienskappe wat deur GREIS verkry kan word, gedefinieer en/of verander kan word.


1.4.1 Voorwerpidentifiseerders
Dit is reeds genoem dat 'n ontvanger as 'n stel voorwerpe (toestelle, files, boodskappe, parameters, ens.) in die konteks van die GREIS-model. Vir die doeleindes om die voorwerpe in die ontvangeropdragte aan te spreek, moet 'n unieke identifiseerder aan elke voorwerp toegeken word.


Voorwerpe in die ontvanger word logies in groepe georganiseer. 'n Groep self is ook 'n voorwerp en behoort aan 'n ander groep, tensy dit die wortelgroep is. Dus is alle voorwerpe in die ontvanger georganiseer in 'n boomagtige hiërargie wat by die enkele wortelgroep begin. Hierdie voorstelling lyk soos die organisasie van files in dopgehou (vouers) waarmee die meeste rekenaargebruikers vertroud is.
In GREIS word objekgroepe voorgestel as lyste van ooreenstemmende objekname. Die voorwerpnaam is uniek binne die lys waaraan die voorwerp behoort. Globaal unieke objekidentifiseerder word gedefinieer as al die objekname op die pad deur die objekboom vanaf die wortellys na die objek, afgebaken deur die voorwaartse skuinsstreep (/). Die wortellys self word geïdentifiseer deur die enkele voorwaartse skuinsstreep.
Examplese van objekidentifiseerders is:
Example: Die wortelgroep:
/
Example: Ontvanger elektroniese ID:
/par/rcv/id
Example: Serial Port A baud rate:
/par/dev/ser/a/koers
Example: Eienskappe (grootte en laaste wysigingstyd) van die file NAAM (file eienskappe verskil van voorwerpeienskappe wat hieronder bespreek word):
/log/NAAM
Example: NMEA GGA sin:

GREIS

www.javad.com

21

INLEIDING Periodieke Uitset
Tipes voorwerp
/msg/nmea/GGA
Al die voorwerpe het een of meer eienskappe wat daarmee geassosieer word. Voorwerpkenmerke word geïdentifiseer deur die &-karakter en die kenmerknaam by die objekidentifiseerder te voeg. Die primêre eienskap wat elke voorwerp het, is waarde. Hierdie kenmerk word altyd implisiet verkry deur GREIS-opdragte. Sommige van die voorwerpe kan addisionele eienskappe hê, bvample: bvample: Seriële poort A verstek baud rate:
/par/dev/ser/a/rate&def
Example: Inhoud van die file NAAM:
/log/NAAM&inhoud
1.4.2 Voorwerptipes
Elke voorwerp in die ontvanger het GREIS-tipe wat daarmee geassosieer word. Die tipe van 'n voorwerp definieer sy gedrag met betrekking tot GREIS opdragte. Spesifiek, die tipe definieer watter waardes die objek kan neem en watter spesifieke opdragte van toepassing is op die objek.
Verwys na “Primêre objektipes” op bladsy 184 vir gedetailleerde beskrywing van tans ondersteunde objektipes.

GREIS

1.5 Periodieke Uitset

'n Belangrike rol in die ontvanger-operasie speel sy vermoë om periodiek sekere inligting uit te voer, soos verskillende soorte metings, berekende waardes, ens., volgens gespesifiseerde skedule. GREIS definieer 'n ryk stel boodskappe wat verskillende tipes inligting bevat in verskillende formate wat minimale uitvoereenhede is, en verskaf metodes om periodieke uitvoer van enige kombinasie van die boodskappe in enige volgorde aan enige van die ondersteunde media wat geskik is vir data-uitvoer te versoek. Enige ondersteunde medium wat geskik is vir data-uitvoer word uitsetstroom in GREIS genoem.
Vir elke uitsetstroom hou die ontvanger 'n lys van boodskappe wat tans in staat gestel is om na die stroom uit te voer, genoem uitsetlys. Die volgorde waarin boodskappe uitgevoer word, stem ooreen met die volgorde van boodskappe in die uitvoerlys. Daarbenewens het elke boodskap wat in 'n uitvoerlys teenwoordig is, sy eie stel skeduleringsparameters wat daarmee geassosieer word. Skeduleringsparameters wat aan 'n boodskap in 'n uitsetlys geheg is, definieer die skedule van uitset van hierdie spesifieke boodskap in hierdie spesifieke uitsetstroom. GREIS bied drie kom-

www.javad.com

22

INLEIDING Periodieke Uitset Uitset Periode en Fase
mands, em, out en dm, om doeltreffende manipulasie van uitvoerlyste en skeduleringsparameters moontlik te maak.
Boodskapskeduleringsparameters bestaan ​​uit vier velde: periode, fase, telling en vlae, wat elkeen verskillende rol speel in die uitsetskedule-definisie. Hieronder sal ons beskryf hoe presies hul waardes die uitset beïnvloed, maar basies spesifiseer die tydperk interval tussen uitsette van die boodskap; fase spesifiseer tydverskuiwing van die uitsetmomente met betrekking tot tydmomente wanneer huidige tyd veelvoud van periode is; die telling, wanneer groter as nul, beperk die aantal kere wat die boodskap uitgestuur sal word; terwyl vlae filed maak voorsiening vir 'n mate van fyn afstemming van die uitsetproses.

1.5.1 Uitsetperiode en -fase

Let wel:

Die periode- en fasevelde van die boodskapskeduleringsparameters is swaaipuntwaardes in die reeks [0…86400) sekondes. Hul presiese betekenis word hieronder beskryf.
Wanneer die F_CHANGE-bis in die vlaeveld van die skeduleringsparameters gestel word, verloor die faseveld sy gewone rol en word eerder "gedwonge uitsetperiode". Sien beskrywing van die F_CHANGE vlag hieronder vir besonderhede.
Die ontvanger het sy interne tydrooster wat gedefinieer word deur die ontvangerklok en die waarde van die /par/raw/curmsint parameter wat die stap van ontvanger interne epogge definieer. Ontvanger interne tydperke vind plaas wanneer ontvanger tyd veelvoud van die stap is. Op sy beurt word ontvangertyd gedefinieer as die waarde van ontvangerklok modulo een dag (86400 sekondes). Ontvanger skandeer die uitsetlyste slegs by interne ontvangertydperke, sodat geen uitset meer gereeld as dit gegenereer kan word nie.
Met inagneming van die interne tydrooster, definieer die periode- en faseveranderlikes die tydmomente van die uitset van 'n boodskap soos volg: ontvanger sal die boodskap slegs op die ontvangertye uitstuur Tout wat gelyktydig aan die volgende twee vergelykings voldoen:

Toutmod periode = fase

(1)

Tout = N stap (2)

GREIS

waar N heelgetal is wat die waardes [0,1,2,...,(86400/stap)-1] neem.
Die eerste vergelyking definieer die basiese reël van boodskapuitset, en die tweede een stel addisionele beperkings op wat verband hou met die interne ontvanger-tydperke. Let daarop dat in die mees gewone geval, wanneer beide periode en fase veelvoude van stap is, die tweede vergelyking outomaties bevredig word wanneer die eerste vergelyking bevredig word. Let ook daarop dat indien
86400 (mod periode) 0,

www.javad.com

23

INLEIDING Periodieke Uitset
Uitsettelling

Example:
Example: bvample:

die werklike interval tussen die laaste boodskap wat gestuur is voor die dag-omskakeling en die eerste boodskap na die dag-omskakeling sal verskil van die waarde van periode.
Oorweeg 'n paar examples wat hierdie meganisme illustreer:
Gestel periode is 10s, fase is 2.2s, en stap is 0.2s. Aangesien Tout, volgens die tweede vergelyking, slegs waardes kan neem wat veelvoud van stap is, sal die linkerdeel van die eerste vergelyking die volgende waardes neem: 0, 0.2, 0.4, …, 9.8, 0, …, waarvan slegs waarde 2.2 wedstryde fase. Hierdie passings sal plaasvind, en die boodskap sal uitgevoer word, elke keer as Tout een van die volgende waardes neem: 2.2s, 12.2s, 22.2s, ens.
Gestel periode is 10s, fase is 2.2s, en stap is 0.5s. Die ontvanger sal nie die boodskap uitstuur nie aangesien die bogenoemde paar gelyktydige vergelykings nooit bevredig word nie.
Gestel fase > periode. Die ontvanger sal glad nie die boodskap uitstuur nie, aangesien die eerste vergelyking nooit bevredig sal word nie.

1.5.2 Uitsettelling

Let wel:

Die telveld van die boodskapskeduleringsparameters is 'n heelgetalwaarde in die reeks [-256…32767) en dien twee verskillende doeleindes:
1. Wanneer die telling 0 is, sal onbeperkte aantal boodskappe uitgestuur word. Wanneer die telling groter as 0 is, definieer dit hoeveel keer die boodskap uitgestuur sal word. In hierdie geval word die teller met 1 verminder elke keer as die boodskap uitgestuur word, en wanneer dit 0 word, word die F_DISABLED-bis in die vlae-veld gestel. Die boodskapskeduleerder voer nie boodskappe uit met F_DISABLED-bis gestel nie.
2. Wanneer die telling op 'n waarde in die reeks [-256…-1] gestel is, word die uitset van die boodskap nie onderdruk nie, en die telveld dien 'n heeltemal ander doel. Dit maak dit moontlik om die boodskap in spesiale [>>] boodskap voor uitset te verpak (sien “[>>] Omhulsel” op bladsy 132). Die waarde van telling word dan gebruik om die id-veld in die gegenereerde [>>]-boodskap te stel sodat die id numeries gelyk is aan (-1 – telling).
Die wikkelfunksie is nuttig, bvample, vir 'n bedienertoepassing wat boodskappe van ontvanger kry en dit aanstuur na verskeie kliënte. Dit kan die toevou van arbitrêre boodskappe in die [>>] boodskappe met verskillende identifiseerders versoek, die ontvangde boodskappe ontvou en die data na spesifieke kliënt(e) versend op grond van die ontvangde ID. Deur hierdie kenmerk te gebruik, hoef so 'n toepassing nie bewus te wees van enige ander dataformate nie, maar die formaat van die [>>] boodskap, en kan enkele kommunikasiekanaal met die ontvanger gebruik om boodskappe in verskillende formate te kry en te versend.

GREIS

www.javad.com

24

1.5.3 Uitsetvlae

INLEIDING Periodieke Uitset
Uitsetvlae

Die vlaeveld van die boodskapskeduleringsparameters is 'n 16-bis wye bisveld. Elke stukkie van hierdie bisveld is 'n aparte vlag en dien verskillende doel. Die volgende is 'n lys van die boodskapskeduleringsvlae.
Tabel 1-1. Boodskapskeduleringvlae

Bietjie#
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

Naam
F_OUT F_CHANGE F_OUT_ON_ADD F_NOTENA F_FIX_PERIOD F_FIX_PHASE F_FIX_COUNT F_FIX_FLAGS gereserveer gereserveer gereserveer F_DISABLED gereserveer

Let wel: Veldname word slegs hier ingevoer met die doel om daarna in hierdie handleiding te verwys. Daar is geen manier om dit in die GREIS-opdragte te gebruik nie.

F_OUT As hierdie vlag gestel is, sal die eerste boodskappe na aanroep van die ooreenstemmende opdrag uitgevoer word by die interne ontvanger epog naaste aan die opdrag uitvoering tyd, ongeag wat gespesifiseer word deur die periode skedulering parameter.
F_CHANGE As hierdie vlag gestel is, sal die ooreenstemmende boodskap slegs uitgevoer word indien die boodskapdata verander het sedert die laaste uitvoer van die boodskap na die gegewe uitsetstroom. Ontvanger kontroleer of die boodskapdata slegs verander het op die oomblikke wat deur die vergelykings (1),(2) gedefinieer is, waar faseveranderlike op nul gestel is, en periodeveranderlike op die waarde van periodeveld gestel is. Die boodskapskeduleringsparameterfase, wat in hierdie geval sy oorspronklike funksie verloor, speel nou die rol van 'n gedwonge uitsetperiode. "Geforseerde uitset" beteken dat die ooreenstemmende boodskap uitgestuur sal word of die inhoud daarvan verander het of nie op die tydstipmomente gedefinieer deur die vergelykings (1),(2) waar periodeveranderlike ingestel is op die waarde van die faseveld, en fase veranderlike is op nul gestel. As die veldfase nul is, voer die ontvanger geen gedwonge uitset uit nie, sodat die ooreenstemmende boodskap slegs uitgevoer sal word op voorwaarde dat sy data verander het.

GREIS

www.javad.com

25

INLEIDING Periodieke Uitset
Uitsetvlae
F_OUT_ON_ADD As hierdie vlag gestel is, sal die eerste boodskap onmiddellik na die uitvoering van die ooreenstemmende em of out-opdrag uitgevoer word. Hierdie vlag word vir die meeste boodskappe geïgnoreer1.
F_NOTENA As hierdie vlag vir 'n boodskap in 'n uitvoerlys gestel is, sal die F_DISABLED-vlag vir hierdie boodskap nie uitgevee word wanneer die boodskap geaktiveer is nie, en daarom sal die uitvoer daarvan opgeskort bly. Byvoorbeeldample, hierdie vlag word gebruik om nie sommige van die boodskappe vanaf die verstek stel boodskappe uit te voer wanneer die gebruiker die uitsetperiode dadelik verander sonder om eers die uitset te deaktiveer nie.
F_FIX_PERIOD, F_FIX_PHASE, F_FIX_COUNT, F_FIX_PERIOD Word op 1 in 'n skeduleringsparameters gestel, verhoed veranderinge aan ooreenstemmende veld(e) van hierdie skeduleringsparameters deur em en uit opdragte.
F_DISABLED Is nie eksplisiet programmeerbaar deur die gebruiker nie. Wanneer 'n mens 'n boodskap met 'n positiewe telling aktiveer, dan, nadat hierdie boodskap uitgetel is, stel die boodskapskeduleerder hierdie vlag op 1. Hierdie vlag word na 0 skoongemaak wanneer die boodskap weer geaktiveer word, tensy F_NOTENA-vlag gestel is vir hierdie boodskap.

1. Tans vereer slegs twee GREIS-boodskappe, [JP] en ​​[MF], hierdie vlag.

GREIS

www.javad.com

26

Hoofstuk 2
ONTVANGER INVOERTAAL

Hierdie hoofstuk beskryf die sintaksis en semantiek van die ontvanger-invoertaal. Ons begin met 'n paar examples om die leser 'n gevoel van die taal te gee, draai dan na gedetailleerde sintaksisdefinisie, en beskryf dan al die gedefinieerde opdragte saam met hul semantiek.

2.1 Taal Bvamples

Hier is 'n paar examples van werklike stellings wat ontvanger verstaan ​​saam met ontvanger antwoorde. Jy sal meer examples van die gebruik van spesifieke bevele in ooreenstemmende subafdelings. Die invoer na die ontvanger word met die karakter gemerk, terwyl die ontvanger se uitvoer met die karakter gemerk word:

Example: Vra ontvanger om sy elektroniese ID te druk. Ontvanger genereer die antwoordboodskap wat gewys word:

Example:

druk,/par/ontvangs/id RE00C QP01234TR45
Vra die ontvanger om die baudtempo van sy reekspoort A op 9600 te stel. Ontvanger voer die opdrag suksesvol uit en genereer geen antwoord nie.

stel,/par/dev/ser/a/koers,9600
Example: Gebruik dieselfde opdrag as in die vorige example, maar dwing ontvanger om antwoord te genereer deur die gebruik van die stellingidentifiseerder.

Example:

%set_rate%set,/par/dev/ser/a/rate,9600 RE00A%stel_koers%
Probeer om 'n te hoë baud rate te stel. Ontvanger antwoord met die foutboodskap al het ons geen stellingidentifiseerder gebruik nie.

stel,/par/dev/ser/a/koers,1000000 ER016{4,waarde buite bereik}

Let wel:

Ontvanger plaas altyd sy normale en foutantwoorde in twee standaardboodskappe, onderskeidelik [RE] en [ER]. Vir meer inligting oor die formaat van GREIS-boodskappe, verwys na “Algemene formaat van boodskappe” op bladsy 64. Die [RE] en [ER] boodskappe self word beskryf in “Interaktiewe boodskappe” op bladsy 129.

GREIS

www.javad.com

27

ONTVANGER INVOERTAAL Taalsintaksis
2.2 Taalsintaksis
GREIS definieer lyne van ASCII-karakters van arbitrêre lengte1, afgebaken deur óf karretoer ( , ASCII desimale kode 13), of lynvoer ( , ASCII desimale kode 10) karakters, om die topvlak sintaksiselemente van die taal te wees. Leë lyne word toegelaat en geïgnoreer in GREIS. As gevolg hiervan kan 'n lyn deur enige kombinasie van en/of karakters. Dit laat GREIS toe om WindowsTM-, MacTM- en UNIXTM-lynbeëindigingskonvensies naatloos te ondersteun.
Ontvanger-invoertaal is hooflettergevoelig. Dit beteken dat bvample, stringe GREIS, greis en gReIs, synde verskillende stringe, word inderdaad as sodanig deur die ontvanger beskou.
Die nommerteken (#, ASCII-kode 35) is die kommentaar-inleidingskarakter. Ontvanger ignoreer alles vanaf hierdie karakter tot aan die einde van die reël.
Nadat kommentaar (indien enige) van die reël gestroop is, verwyder die ontvanger voor- en agterspasies, en breek dan die reël in stellings op. Stellings word afgebaken met kommapunte (;, ASCII-kode 59), of met twee ampersands (&&, ASCII-kodes 38), of met twee vertikale strepies (||, ASCII-kodes 124). Stellings in 'n reël word dan in volgorde uitgevoer, van links na regs. As stelling wat eindig op && skeidingsteken 'n fout produseer, word die res van stellings in die reël nie uitgevoer nie. As stelling wat eindig op || skeidingsteken suksesvol uitgevoer word, word die res van stellings in die reël nie uitgevoer nie. Stelling wat op kommapunte eindig, stop nooit die uitvoering van die volgorde van stellings nie. Let daarop dat die einde van die reël op sigself stellingbeëindiging is, so jy hoef nie een van eksplisiete stellings-afgrensers aan die einde van die reël te plaas nie.
Die formaat van 'n verklaring is soos volg:
[%ID%][COMMAND][@CS] waar vierkantige hakies opsionele velde aandui, en enige aantal witspasies word voor en na elke veld toegelaat. Sulke spasies word geïgnoreer, behalwe vir die doel van kontrolesomberekening, sien hieronder. Die velde is:
%ID% stellingidentifiseerder, waar ID arbitrêre string aandui, moontlik leeg. Die identifiseerder, indien teenwoordig, word onveranderd deur die ontvanger na die antwoordboodskap vir die stelling gekopieer. Enige stelling met 'n identifiseerder sal altyd 'n antwoord van die ontvanger genereer. 'n Stelling wat slegs 'n identifiseerder bevat, word ook toegelaat; in so 'n geval sal die ontvanger net 'n antwoordboodskap genereer.
OPDRAG 'n (moontlik leë) lys waar die eerste element opdragnaam genoem word. Dit dui die aksie aan wat uitgevoer moet word. Die res van elemente (indien enige) is opdrag

GREIS

1. Huidige GREIS-implementering in die ontvangers ondersteun reëls van tot 256 karakters lank.

www.javad.com

28

ONTVANGER INVOERTAAL Taalsintaksis
argumente. Hakies wat opdraglys omring, kan weggelaat word. Verwys na “Lyste” op bladsy 19 vir die sintaksis van lyste. @CS kontrolesom, waar CS 8-bis kontrolesom is geformateer as 2-grepe heksadesimale getal. Voordat 'n stelling met kontrolesom uitgevoer word, sal die ontvanger die insetkontrolesom CS vergelyk met dit wat deur die firmware bereken is en sal weier om die stelling uit te voer indien hierdie kontrolesomme nie ooreenstem nie. Kontrolesom word bereken vanaf die stelling se eerste nie-leë karakter tot en met die @-karakter. Sien “Bereken kontrolesomme” op bladsy 579 vir besonderhede.
Verklaringidentifiseerder, %ID%, dien die volgende doeleindes:
1. Dwing ontvanger reaksie op die bevel. 2. Laat toe om veelvuldige opdragte met verskillende identifiseerders na die ontvanger te stuur
sonder om te wag vir reaksie vir elke opdrag, ontvang dan die antwoorde en vertel watter reaksie met watter opdrag ooreenstem. 3. Help om sinchronisasie met die ontvanger te bewerkstellig deur toe te laat om te kontroleer dat die spesifieke ontvangerrespons ooreenstem met 'n spesifieke opdrag, en nie met 'n ander opdrag wat voor of na uitgereik is nie.
'n Lys genaamd opsies kan by enige element van die OPDRAG na die dubbelpunt (:, ASCII-kode 58) aangeheg word. As opsielys enkele elemente bevat, kan die omliggende hakies weggelaat word. Opsieslys wat aan 'n lys gevoeg word, versprei na elke element van die lys, alhoewel die opsies wat uitdruklik aan 'n element van die lys gevoeg word, voorkeur geniet bo gepropageerde opsies. Byvoorbeeldample,
{e1,{e2:{o1,,o3},e3}}:{o4,o5}
is gelykstaande aan:
{e1:{o4,o5},{e2:{o1,o5,o3},e3:{o4,o5}}}
Let ook op hoe gemis o2-opsie die o5-opsie toelaat om na die lys opsies vir e2-element te versprei.
Die aantal en die betekenis van argumente en opsies in die opdrag hang af van spesifieke opdragaksie en word gedefinieer in die beskrywing van elke ontvangeropdrag. Daarbenewens, as opdragbeskrywing sommige opsies spesifiseer, maar sommige of almal van hulle word gemis in die stelling, word die verstekwaardes vir die gemiste opsies vervang. Die verstekwaardes vir opsies word ook gedefinieer in die beskrywing van elke ontvangeropdrag.

GREIS

www.javad.com

29

ONTVANGER INVOERTAAL Taalsintaksis

Ter verwysing, hieronder is die tabel wat al die karakterreekse bevat wat spesiale betekenis het in die ontvanger-invoertaal:

Tabel 2-1. Invoertaal Spesiale Karakters

Karakters Desimale ASCII-kode

Betekenis

10

lyn skeier

13

lyn skeier

#

35

;

59

begin van opmerking merk stellings skeier

&&

38

||

124

%

37

stellings en skeistellings of skeistellingsidentifiseerdermerk

@

64

{

123

}

125

,

44

:

58

kontrolesom merk begin van lys merk einde van lys merk lys elemente skeier opsies merk

34

aanhalingsteken

92

ontsnap

GREIS

www.javad.com

30

ONTVANGER INVOERTAAL Opdragte
2.3 Opdragte
In hierdie afdeling beskryf ons al die opdragte wat in GREIS gedefinieer is. Sintaksis en semantiese spesifikasies van elke opdrag word vergesel van verduidelikende bvamples. Vir 'n gedetailleerde beskrywing van voorwerpe wat as argumente in die examples, verwys asseblief na Hoofstuk 4 op bladsy 181.

GREIS

www.javad.com

31

2.3.1 stel

ONTVANGER INVOERTAAL Opdragte gestel

Naam
stel stelwaarde van 'n voorwerp.
Opsomming
Formaat: stel, voorwerp, waarde Opsies: geen
Argumente
beswaar die teikenobjekidentifiseerder. As voorwerp nie met "/" begin nie, dan word "/par/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word.
waardeer die waarde wat aan die teikenobjek toegeken moet word. Die reeks toegelate waardes sowel as semantiek van die opdrag hang af van die tipe objek en word later in hierdie handleiding vir elke ondersteunde objek gespesifiseer.
Opsies
Geen.
Beskrywing
Hierdie opdrag ken waarde aan die voorwerp toe. Geen antwoord word gegenereer tensy daar 'n fout is of reaksie word deur die stellingidentifiseerder gedwing nie.
Examples
Example: Stel baudsnelheid van seriële poort C op 115200. Enige van:
stel,/par/dev/ser/c/rate,115200 set,dev/ser/c/rate,115200
Example: Stel baudsnelheid van seriële poort A op 9600 en dwing antwoord:
%%stel,ontw/ser/a/koers,9600 RE002%%

GREIS

www.javad.com

32

2.3.2 druk

ONTVANGER INVOERTAAL Opdragte druk

Naam
druk drukwaarde van 'n voorwerp.

Opsomming
Formaat: druk, voorwerp Opsies: {name}

Argumente
objek die objek identifiseerder van die objek wat uitgevoer moet word. As voorwerp nie met "/" begin nie, dan word "/par/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word.

Opsies

Tabel 2-2. druk opsies opsomming

Tipe naam

Waardes

name boolean aan, af

Verstek
af

name indien af, voer slegs objekwaardes uit. Wanneer aan, voer voorwerpname bykomend tot objekwaardes uit in die formaat NAAM=WAARDE.
Beskrywing
Hierdie opdrag druk die waarde van die objek af, opsioneel met die naam van die ooreenstemmende voorwerp voor die waarde. Die reaksie word altyd gegenereer, en meer as een [RE]-boodskap kan gegenereer word in reaksie op 'n enkele drukopdrag.
Die waarde van 'n voorwerp van tipe lys word gedruk as 'n lys van waardes vir elke voorwerp in die lys. Dit word rekursief toegepas totdat blaarvoorwerpe bereik word, dus die druk van 'n objek van nieblaartipe voer effektief hele subboom uit vanaf die gespesifiseerde voorwerp. In die geval van die druk van lyste, kan verskeie [RE] boodskappe gegenereer word. Die verdeling van die uitvoer mag egter eers onmiddellik na lysskeierkarakters plaasvind.

GREIS

www.javad.com

33

ONTVANGER INVOERTAAL Opdragte druk
Examples
Example: Druk huidige tydperk van die interne ontvanger tydrooster. Enige van:
druk,/par/raw/curmsint RE004 100 druk,raw/curmsint RE004 100
Example: Druk huidige tydperk van die interne ontvanger tydrooster saam met die voorwerpnaam. Enige van:
druk,/par/raw/curmsint:op RE015/par/raw/curmsint=100 druk,raw/curmsint:op RE015/par/raw/curmsint=100
Example: Druk ontvanger weergawe inligting:
druk,ontvang/weergawe RE028{“2.5 Sep, 13,2006, 2 p0,71″,5,MGGDT_00,geen, REXNUMXD {geen,geen}}
Example: Druk ontvanger weergawe inligting saam met ooreenstemmende name:
druk,ontvangs/weergawe:op RE043/par/ontvangs/weergawe={hoof=”2.5 Sep, 13,2006, 2 p0”,opstart=71,hardware=5,bord=MGGDT_00, RE017C modem=geen, REXNUMX krag={vv=geen,hardware=geen}}
Example: Druk al die boodskappe wat geaktiveer is vir uitvoer na seriepoort B saam met hul skeduleringsparameters:
druk,uit/ontw/ser/b:op RE02D/par/uit/ontw/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×0}, RE01A jps/ET={1.00,0.00,0,0×0}, RE01D nmea/GGA={10.00,5.00,0,0×0}}

GREIS

www.javad.com

34

2.3.3 lys

ONTVANGER-INVOERTAAL Opdraglys

Naam
lys lys inhoud van 'n voorwerp.
Opsomming
Formaat: lys[,objek] Opsies: geen
Argumente
objek die objek identifiseerder van die objek wat uitgevoer moet word. As voorwerp weggelaat word, word /log aanvaar. As voorwerp nie met "/" begin nie, dan word "/log/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word.
Opsies
Geen.
Beskrywing
Hierdie opdrag voer name uit van elke lid van die voorwerp. Die antwoord word altyd gegenereer, en meer as een [RE] boodskap kan gegenereer word in reaksie op 'n enkele lys opdrag. As die voorwerp gespesifiseer nie van tipe lys is nie, word leë [RE] boodskap gegenereer. As die voorwerp wat gespesifiseer is 'n lys is, word die lys name van elke voorwerp in die lys gedruk. Dit word rekursief toegepas totdat blaarvoorwerpe bereik word, so 'n lys van 'n objek van nie-blaartipe lewer effektief hele subboom uit vanaf die gespesifiseerde voorwerp. In die geval van die druk van lyste, kan verskeie [RE] boodskappe gegenereer word. Die verdeling van die uitvoer mag egter eers onmiddellik na lysskeierkarakters plaasvind.
Examples
Example: Leë antwoord vir die lys van 'n nie-lysvoorwerp:
lys,/par/ontvang/ver/hoof RE000
Example: Foutantwoord vir lys van nie-bestaande voorwerp:
lys,/bestaan_nie_nie ER018{2,,verkeerde 1ste parameter}

GREIS

www.javad.com

35

ONTVANGER-INVOERTAAL Opdraglys
Example: Kry 'n lys van bestaande log-files. Enige van
lys,/loglys
sal dieselfde uitset produseer, bv.
RE013{log1127a,log1127b}
Example: Lys alle standaard GREIS-boodskappe wat deur die ontvanger ondersteun word:
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: Lys al die boodskappe in die verstek stel boodskappe:
lys,/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/DC,jps/EC,jps/TC,jps/CP,jps/1R, RE040 jps/1P,jps/2R,jps/2P,jps/E1,jps/D2,jps/E2,jps/SS,jps/SE,jps/PV, RE040 jps/ST,jps/DP,jps/TO,jps/DO,jps/UO,jps/IO,jps/GE,jps/NE,jps/GA, RE01D jps/NA,jps/WE,jps/WA,jps/WO}

GREIS

www.javad.com

36

GREIS

2.3.4 em & uit

ONTVANGER INVOERTAAL Bevele em & uit

Naam
em, uit aktiveer periodieke uitvoer van boodskappe.

Opsomming
Formaat: Formaat: Opsies:

em,[teiken],boodskappe uit,[teiken],boodskappe {periode, fase, telling, vlae}

Argumente
teiken enige uitsetstroom of boodskapstel. As geen teiken gespesifiseer word nie, word die huidige terminaal, /cur/term, aanvaar.
boodskappe die lys (óf met of sonder omliggende hakies) van boodskapname en/of boodskapstelname wat geaktiveer moet word. As sommige van die gespesifiseerde name nie met "/" begin nie, dan word "/msg/" voorvoegsel outomaties voor sulke name ingevoeg voordat die opdrag uitgevoer word.

Opsies

Tabel 2-3. em en uit opsies opsomming

Tipe naam

Waardes

Verstek

tydperk float [0...86400)

fase dryf [0...86400)

tel heelgetal [-256…32767] 0 vir em 1 vir uit

vlae heelgetal [0…0xFFFF] –

periode, fase, telling, vlae boodskap skedulering parameters.
Beskrywing
Hierdie opdragte maak periodieke uitvoer van die gespesifiseerde boodskappe in die teiken moontlik, wat die boodskapskeduleringsparameters afdwing om dié te wees wat deur opsies gespesifiseer word. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
Die em- en uit-opdragte is dieselfde, behalwe dat die verstekwaarde van die telopsie op 0 gestel is vir em, en 1 vir uit. Die uit-opdrag is net 'n geriefliker manier om te versoek

www.javad.com

37

ONTVANGER INVOERTAAL Bevele em & uit

Let wel:

eenmalige uitvoer van boodskap(pe). Ons sal slegs oor hulle praat in hierdie beskrywing, alhoewel alles ook van toepassing is op die buitekant.
Die beskrywing hieronder verwag dat die leser vertroud is met die materiaal in die afdeling “Periodiese afvoer” op bladsy 22.
Vir elke uitsetstroom is daar 'n ooreenstemmende uitsetlys van boodskappe1,2 wat tans geaktiveer is om na die gegewe stroom uit te voer. Wanneer 'n boodskap wat as argument na em-opdrag oorgedra is nie tans in die uitvoerlys is nie, voeg die em-opdrag die gespesifiseerde boodskap aan die einde van die lys by. Wanneer 'n boodskap wat aan em-opdrag oorgedra is reeds in die uitvoerlys is, verander die em-opdrag net hierdie boodskap se skeduleringsparameters en verander nie die boodskap se posisie binne die lys nie.
Aangesien die em-opdrag die gespesifiseerde boodskappe met die uitvoerlys saamvoeg, is dit dikwels 'n goeie idee om dm-opdrag te gebruik om die uitvoerlys vir die gegewe stroom skoon te maak voordat u em-opdragte uitreik.
Die em-opdrag verwerk die boodskaplys een boodskap op 'n slag, van links na regs, en van die eerste boodskap van boodskapstel tot die laaste boodskap van boodskapstel. Sou dit 'n naam teëkom wat nie ooreenstem met enige ondersteunde ontvangerboodskap of boodskapstel nie, onthou dit dat daar 'n fout was tydens uitvoering, maar stop nie die verwerking van die boodskaplys nie. Op hierdie manier sal alle boodskappe van die boodskaplys wat geaktiveer kan word geaktiveer word, en slegs enkele fout sal gerapporteer word wanneer een of meer van die gespesifiseerde boodskappe nie geaktiveer kan word nie.
Wanneer die em-opdrag 'n boodskap byderhand verwerk, word die finale bedryfsboodskapskeduleringsparameters in die ooreenstemmende uitsetlys van boodskappe bereken met inagneming van verskeie bronne van inligting oor skeduleringsparameters, spesifiek:
1. Waardes uitdruklik gespesifiseer in die opsies van die em-opdrag.
2. Die verstekwaardes van opsies van em-opdrag.
3. Skeduleringsparameters gespesifiseer vir die gegewe boodskap as deel van die ooreenstemmende boodskapstel. Dit word slegs in ag geneem wanneer 'n boodskap geaktiveer word deur boodskapstel te spesifiseer, nie 'n individuele boodskap nie.
4. Huidige skeduleringsparameters van die boodskap in die ooreenstemmende uitvoerlys (indien enige).
5. Verstek skedulering parameters gespesifiseer vir die gegewe boodskap as deel van die ooreenstemmende boodskap groep.
Die bogenoemde bronne van parameters word gelys in die volgorde van hul voorrang, die eerste een het die hoogste voorkeur, en word individueel op elk van die vier skeduleringsparameters toegepas. Daarom ignoreer waardes van (1) waardes van (2), die resulterende waarde

GREIS

1. Vir 'n stroom NAAM, word ooreenstemmende uitsetlys genoem /par/out/NAME 2. Huidige firmware het 'n arbitrêre limiet vir maksimum aantal boodskappe in 'n uitvoerlys wat op 49 gestel is.

www.javad.com

38

ONTVANGER INVOERTAAL Bevele em & uit

ignoreer waarde van (3), ens. As sommige van die F_FIX_PERIOD, F_FIX_PHASE, F_FIX_COUNT of F_FIX_FLAGS bisse egter in die vlaeveld van die volgende bron gestel word, sal ooreenstemmende velde van hierdie volgende bron nie oorskryf word nie.

Examples

Example: Aktiveer eenmalige uitset van NMEA GGA-boodskap na die huidige terminaal:

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

Dieselfde as hierbo, maar gebruik uit in plaas van em:

uit,,nmea/GGA
Example: Aktiveer die uitvoer van die verstek stel boodskappe na die huidige log-file A met behulp van die verstek uitset parameters. Enige van:

Example:

em,/cur/file/a,/msg/def em,/cur/file/a, def
Aktiveer uitvoer van die verstek stel boodskappe na die huidige log-file A elke 10 sekondes Vir die ander uitvoerparameters sal hul verstekwaardes gebruik word:

em,/cur/file/a,def:10
Example: Aktiveer uitvoer van die verstek stel boodskappe na die huidige terminaal deur gebruik te maak van verstek afvoer parameters. Enige van:

Example:

em,/cur/term,/msg/def em,,/msg/def em,,def
Aktiveer uitvoer van GREIS-boodskappe [~~](RT) en [RD] na die huidige terminaal. Enige van:

Example:

em,,/msg/jps/RT,/msg/jps/RD em,,jps/{RT,RD}
Aktiveer uitvoer van NMEA-boodskappe GGA en ZDA na die huidige terminaal elke 20 sekondes:

Example:

em,,nmea/{GGA,ZDA}:20
Aktiveer uitvoer van boodskappe [SI], [EL] en [AZ] na seriële poort A. Stel skeduleringsparameters vir [SI] sodat die interval tussen enige twee daaropvolgende [SI]-boodskappe gelyk sal wees aan 10 sekondes, as hulle saamval, en 1 sekonde anders; voer slegs die eerste vyftig [SI]-boodskappe uit. Daarbenewens stel die ontvanger uitsetinterval op 2 sekondes vir [EL] en [AZ] boodskappe:

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

GREIS

www.javad.com

39

ONTVANGER INVOERTAAL Bevele em & uit
Example: Aktiveer uitset van RTCM 2.x-boodskaptipes 1 en 31 na reekspoort B met uitsetinterval 3 sekondes, en RTCM 2.x-boodskaptipes 18, 19, 3, 22 na poort C met uitsetinterval 1 sekonde vir tipes 18 en 19; en 10 sekondes vir tipes 3 en 22:
em,/dev/ser/b,rtcm/{1,31}:3; em,/dev/ser/c,rtcm/{18:1,19:1,22,3}:10
Example: Pas die verstek stel boodskappe aan om slegs NMEA ZDA en GGA te bevat:
dm,/msg/def em,/msg/def,/msg/nmea/{ZDA,GGA}

GREIS

www.javad.com

40

2.3.5 dm

ONTVANGER INVOERTAAL Opdragte dm

Naam
dm deaktiveer periodieke uitvoer van boodskappe.
Opsomming
Formaat: dm[,[teiken][,boodskappe]] Opsies: geen
Argumente
teiken enige uitsetstroom of boodskapstel. As geen teiken gespesifiseer word nie, word die huidige terminaal, /cur/term, aanvaar. As sommige van die gespesifiseerde name nie met "/" begin nie, dan word "/msg/" voorvoegsel outomaties voor sulke name ingevoeg voordat die opdrag uitgevoer word.
boodskappe die lys boodskappe wat gedeaktiveer moet word, hetsy met of sonder omliggende hakies, of enige boodskapgroep of boodskapstel. As geen boodskappe gespesifiseer word nie, is alle periodieke uitvoer na die teiken gedeaktiveer.
Opsies
Geen.
Beskrywing
Hierdie opdrag deaktiveer periodieke uitvoer van die gespesifiseerde boodskappe in die objek teiken. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
As geen boodskappe gespesifiseer word nie, is al die periodieke uitvoer na die teiken gedeaktiveer. As die teiken 'n huidige log-file en geen boodskappe is gespesifiseer nie, al die uitvoer na die file is gestremd, die file is gesluit, en ooreenstemmende huidige log-file is op geen gestel nie.
As 'n boodskap in die boodskaplys gespesifiseer word wat nie tans geaktiveer is om na die gegewe teiken uitgevoer te word nie, word geen ooreenstemmende fout deur die dm-opdrag gegenereer nie. Alhoewel hierdie toestand nie ander moontlike foute uitskakel om gerapporteer te word nie.
Examples
Example: Deaktiveer al die boodskappe wat in die huidige log-file A en sluit die file:
dm,/cur/file/a

GREIS

www.javad.com

41

ONTVANGER INVOERTAAL Opdragte dm
Example: Deaktiveer al die periodieke uitset in die huidige terminaal. Enige van:
dm,/huidige/termyn dm
Example: Deaktiveer uitvoer van GREIS-boodskap [~~](RT) in die reekspoort B:
dm,/dev/ser/b,/msg/jps/RT
Example: Deaktiveer uitvoer van die GREIS-boodskap [DO] in die huidige log-file B:
dm,/cur/file/b,/msg/jps/DO
Example: Verwyder GREIS-boodskap [PM] van die verstek stel boodskappe:
dm,/msg/def,/msg/jps/PM
Example: Deaktiveer uitvoer van alle NMEA-boodskappe na die huidige terminaal:
dm,/cur/term,/msg/nmea
Example: Deaktiveer uitset van die NMEA-boodskappe GGA en ZDA in die huidige terminaal. Enige van:
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 begin

ONTVANGER INVOERTAAL Opdragte init

Naam
initiseer voorwerpe.

Opsomming
Formaat: init,objek[/] Opsies: geen

Argumente
beswaar die voorwerp wat geïnisialiseer moet word. / indien teenwoordig en die voorwerp is van tipe lys, inisialiseer eerder al die vervatte voorwerpe
van die voorwerp self.

Opsies
Geen.

Let wel: Let wel:

Beskrywing
Hierdie opdrag inisialiseer gespesifiseerde voorwerpe. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
Die presiese semantiek van inisialisering hang af van die voorwerp wat geïnisialiseer word, maar kan oor die algemeen beskou word as om 'n voorwerp na sy "verstek" of "skoon" toestand te draai. Byvoorbeeldample, vir parameters beteken dit om hul waardes op ooreenstemmende verstekwaardes te stel, vir die filestoortoestel beteken dit herformatering van die onderliggende medium, ens.
Die inisiasie van sommige voorwerpe sal daartoe lei dat die ontvanger herlaai word. Dit is tans die geval vir inisialisering van ontvanger nie-vlugtige geheue (/dev/nvm/a).
Alhoewel dit in die toekoms kan verander, is die huidige implementering van hierdie generiese opdrag in die ontvangers taamlik beperk. In werklikheid slegs inisialisering van voorwerpe wat in die examples hieronder word tans ondersteun.

Examples
Example: Vee NVRAM uit en herlaai ontvanger. Al die data wat in die NVRAM gestoor is (almanakke, efemeris, ens.) sal verlore gaan, al die parameters sal op hul verstekwaardes gestel word na herlaai:
init,/dev/nvm/a
Example: Duidelike efemeris:
init,/eph/

GREIS

www.javad.com

43

ONTVANGER INVOERTAAL Opdragte init
Example: Stel al die ontvangerparameters op hul verstekwaardes:
init,/par/
Example: Stel alle WLAN-parameters op hul verstekwaardes. Herlaai van die eenheid word vereis om die veranderinge in werking te stel:
init,/par/net/wlan/
Example: Inisialiseer die file stelsel (dws herformateer die onderliggende medium). Almal files wat in die ontvanger gestoor is, sal verlore gaan:
init,/dev/blk/a
Example: Inisialiseer al die boodskapstelle na hul verstekwaardes:
init,/msg/

GREIS

www.javad.com

44

2.3.7 skep

ONTVANGER INVOERTAAL Opdragte skep

Naam
skep skep 'n nuwe voorwerp.

Opsomming
Formaat: skep[,objek] Opsies: {log}

Argumente
objek objek identifiseerder van die objek wat geskep moet word. As voorwerp nie met "/" begin nie, dan word "/log/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word. Indien weggelaat, dan skep van 'n file is veronderstel en 'n unieke file naam word outomaties gegenereer.

Opsies

Tabel 2-4. skep opsies opsomming

Naam Tipe Waardes
log string a,b,...

Verstek
a

teken die log-file die geskape file toegewys moet word aan. Die log-file geselekteerde is /cur/log/X, waar X die waarde van die opsie1 is.
Beskrywing
Hierdie opdrag skep 'n nuwe voorwerp. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
Beide die ligging in die boom en die tipe van die geskepte voorwerp word gedefinieer deur die voorwerp-argument.
Twee soorte voorwerpe kan geskep word:
1. Files. 'n Nuwe file word geskep wanneer die objek-identifiseerder 'n objek in 'n /log sub-boom spesifiseer, of wanneer die objek argument weggelaat word.
2. Boodskapspesifiseerders. 'n Nuwe boodskap spesifiseerder word geskep wanneer die objek identifiseerder 'n objek in 'n boodskap stel spesifiseer (bv. /msg/def).

GREIS

1. Huidige firmware ondersteun óf een óf twee gelyktydige log-files afhangende van spesifieke ontvanger.

www.javad.com

45

ONTVANGER INVOERTAAL Opdragte skep
Skep Files
By die skep files, die objek-argument is óf weggelaat óf het 'n formaat /log/NAME, waar NAAM die naam van die file geskep moet word, en /log/ is opsioneel. In eersgenoemde geval sal die ontvanger outomaties 'n unieke naam vir die file. In laasgenoemde geval moet die NAAM gespesifiseer 'n string van tot 31 karakters wees en moet nie spasies of die volgende karakters bevat nie: ",{}()@&"/".
As die file /log/NAME bestaan ​​reeds, die skepopdrag sal misluk en 'n foutboodskap produseer. As gevolg hiervan, is daar geen manier om sommige van die bestaande te klop nie files met die skep opdrag.
Na 'n nuwe file suksesvol geskep is, is dit toegewys aan een van die huidige log-files afhangende van die waarde van die log_file opsie. Indien ooreenstemmende log-file wys reeds na 'n ander file wanneer skep uitgevoer word, sal die ou log-file sal gesluit word en die uitset sal voortgaan in die nuwe file sonder enige onderbreking.
Skep boodskapspesifiseerders
Wanneer boodskappe by 'n boodskapstel gevoeg word, het die objek-argument 'n formaat /msg/SET/GROUP/MSG, waar SET die naam is van die boodskapstel waar nuwe boodskap geskep moet word, GROUP is die naam van die groep waaraan die boodskap behoort , en MSG is die naam van die boodskap self (bv. /msg/def/nmea/GGA, of /msg/jps/rtk/min/jps/ET).
Die boodskapskeduleringsparameters sal gekopieer word van dié wat vir gegewe boodskap in die boodskapgroep gedefinieer is. Gebruik stel opdrag om die skedulering parameters aan te pas indien nodig.
Examples
Skep Files
Example: Skep 'n nuwe file met 'n outomaties gegenereerde naam en ken dit toe aan die huidige logboekfile A (/cur/file/a). Enige van:
skep skep,:a
Example: Skep 'n nuwe log-file met die naam "my_file”. Enige van:
skep,/log/my_file:a skep,my_file
Example: Skep files "file1" en "file2", en ken hulle toe aan /cur/file/a en /cur/file/b:
skep,file1:a; skep,file2:b

GREIS

www.javad.com

46

ONTVANGER INVOERTAAL Opdragte skep
Skep boodskapspesifiseerders
Example: Voeg /msg/jps/ET-boodskappe by die verstek stel boodskappe:
skep,/msg/def/jps/ET
Example: Voeg NMEA GGA-boodskap by die verstek stel boodskappe en dwing die tydperk en fase daarvan om altyd onderskeidelik 10 en 5 te wees, ongeag watter waardes daarvoor in 'n em- of uit-opdrag gespesifiseer sal word:
skep,/msg/def/nmea/GGA stel,/msg/def/nmea/GGA,{10,5,,0×30}

GREIS

www.javad.com

47

2.3.8 verwyder

ONTVANGER INVOERTAAL Opdragte verwyder

Naam
verwyder verwyder 'n voorwerp.
Opsomming
Formaat: verwyder, voorwerp[/] Opsies: geen
Argumente
objek objek identifiseerder van die objek wat verwyder moet word. As voorwerp nie met "/" begin nie, dan word "/log/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word.
/ indien teenwoordig en die voorwerp is van tipe lys, verwyder al die voorwerpinhoud in plaas van die voorwerp self.
Opsies
Geen.
Beskrywing
Hierdie opdrag verwyder (vee uit) 'n bestaande voorwerp. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder. As daar geen voorwerp gespesifiseer is deur voorwerp nie, of as die voorwerp nie verwyder kan word nie, word 'n fout gegenereer. Twee soorte voorwerpe kan verwyder word:
1. Files. As die file is een van die huidige log-files, sal die opdrag misluk en foutboodskap sal gegenereer word.
2. Boodskapspesifiseerders van boodskapstelle.
Examples
Example: Verwyder die log-file met die naam "NAAM". Enige van:
verwyder,/log/NAAM verwyder,NAAM
Example: Verwyder alle log-files:
verwyder,/log/

GREIS

www.javad.com

48

ONTVANGER INVOERTAAL Opdragte verwyder
Example: Verwyder GREIS standaard [GA] boodskap van die verstek stel boodskappe:
verwyder,/msg/def/jps/GA
Example: Verwyder al die boodskappe uit die verstek stel boodskappe:
verwyder,/msg/def/
Example: Verwyder al die boodskappe uit die minimale stel standaard GREIS-boodskappe wat geskik is vir RTK:
verwyder,/msg/rtk/jps/min/

GREIS

www.javad.com

49

2.3.9 gebeurtenis

ONTVANGER INVOERTAAL Bevele gebeurtenis

Naam
gebeurtenis genereer vrye vorm gebeurtenis.

Opsomming
Formaat: gebeurtenis, string Opsies: geen

Argumente
string 'n arbitrêre1-string wat tot 63 karakters bevat.

Opsies
Geen.

Let wel: Bvample:

Beskrywing
Hierdie opdrag genereer 'n vrye vorm gebeurtenis. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
Die gegewe string saam met die tyd van ontvangs van die gebeurtenisopdrag word in die ontvanger in die spesiale gebeurtenisbuffer2 gestoor. Die inhoud van hierdie buffer word uitgevoer na al die uitsetstrome waar die standaard GREIS-boodskap [==](EV) (beskryf op bladsy 131) geaktiveer is.
Die vryvormgebeurtenismeganisme is bedoel vir die beheerprogramme om arbitrêre teksinligting na naverwerkingstoepassings aan te stuur sonder om hierdie inligting in die ontvanger te interpreteer. Die kern van die ontvanger-firmware genereer nooit vryevorm-gebeurtenisse op sy eie nie, en interpreteer ook nie die inligting wat deur die gebeurtenisbevele gestuur word nie.
Al die stringe wat met die onderstreepkarakter begin (ASCII 0x5F) is gereserveer vir JAVAD GNSS-toepassings. Sorg moet gedra word dat sulke stringe nie saam met die gebeurtenisbevele gebruik word nie, tensy jy nie jou taak anders kan verrig nie of van plan is om met sommige JAVAD GNSS-sagteware saam te werk. In laasgenoemde geval verwys asseblief na die gedetailleerde beskrywing van vrye vorm gebeurtenisse wat gereserveer is vir JAVAD GNSS toepassings in die "Frame Format for Free-Form Events" gids, beskikbaar vanaf http://www.javad.com.
Genereer 'n vrye vorm gebeurtenis wat die string "Info1" bevat:
gebeurtenis, Info1

GREIS

1. Onthou dat indien 'n string enige van die karakters bevat wat vir die ontvanger-invoertaal gereserveer is, jy hierdie string in dubbele aanhalingstekens moet insluit.
2. Die huidige firmware verskaf 'n buffer wat groot genoeg is om tot sestien 64 grepe vrye vorm gebeurtenisse te stoor.

www.javad.com

50

ONTVANGER INVOERTAAL Bevele gebeurtenis
Example: Genereer 'n vrye vorm gebeurtenis wat gereserveerde karakters bevat:
gebeurtenis,"EVENT{DATA,SENT}"
Example: Genereer vryvormgebeurtenis wat gereserveer is vir JAVAD GNSS-toepassingsagteware (hierdie gebeurtenis stel na-verwerkingstoepassing in kennis van verandering van dinamika):
gebeurtenis,"_DYN=STATIES"
Example: Genereer 'n vrye vorm met leë string:
gebeurtenis,””
Example: Genereer 'n paar vrye vorm gebeurtenisse en kry die [==](EV) boodskappe terug (in die inhoud van [==] boodskappe word nie-drukbare grepe vervang met kolletjies in die example):
em,,jps/EV %aanvaar% gebeurtenis,”een of ander string” RE00A%aanvaar% ==011…..een of ander_string. %1% gebeurtenis,1; %2% gebeurtenis,2 RE003%1% RE003%2% ==007…..1. ==007…..2. dm,,jps/EV

GREIS

www.javad.com

51

2.3.10 kry

ONTVANGER INVOERTAAL Opdragte kry

Naam
begin herwin van file inhoud met behulp van DTP1.

Opsomming
Formaat: kry, objek[, verreken] Opsies: {time-out,block_size,periode,fase,pogings}

Argumente
objek objek identifiseerder van die file herwin te word. As voorwerp nie met "/" begin nie, dan word "/log/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word. As die voorwerp nie bestaan ​​nie of nie herwin kan word nie, word 'n foutboodskap gegenereer.
offset offset in grepe vanaf die begin van die file waarby om te begin herwin. As dit weggelaat word, word 0 aangeneem.

Opsies

Tabel 2-5. kry opsies opsomming

Naam

Tik

Waardes

tydsverloop

heelgetal [0…86400], sekondes

blokgrootte heelgetal [1…163841]

tydperk

dryf [0…86400), sekondes

fase

dryf [0…86400), sekondes

pogings heelgetal [-257…100] 1. 2048 vir ontvangers wat nie TCP of USB ondersteun nie.

Verstek
10 512 0 0 10

time-out die time-out vir DTP. block_size die grootte van 'n DTP-datablok. periode die uitsetperiode vir filtering (sien hieronder). fase die uitsetfase vir filtering (sien hieronder). probeer verskillende betekenis, afhangende van die reeks, soos volg:

1. Sien “Data-oordragprotokol” op bladsy 580.

GREIS

www.javad.com

52

ONTVANGER INVOERTAAL Opdragte kry
[1…100] maksimum aantal pogings wat DTP-sender sal neem om enkelblok te stuur. Wanneer dit op 1 gestel is, word spesiale stroommodus geaktiveer (sien hieronder).
0 eerder as om DTP te begin, voer rou inhoud van die voorwerp uit. [-256…-1] eerder as om DTP te begin, voer die inhoud van die voorwerp waarin toegedraai is uit
[>>] boodskappe.
-257 eerder as om DTP te begin, voer die inhoud van die voorwerp wat in [RE]-boodskappe toegedraai is, uit.
Beskrywing
Hierdie opdrag begin herwinning van a file in die gasheerrekenaar met behulp van die Data Transfer Protocol (DTP) of rou uitvoerformaat. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
Wanneer in DTP-modus, nadat die kry-opdrag geslaag het, word die DTP-sender op die ontvanger begin en wag dat DTP-ontvanger op die gasheer uitgevoer word. Daarom, om enige data werklik te herwin, benodig 'n mens DTP-ontvanger-implementering op die gasheer.
Die opsionele offset-argument laat gasheer toe om ondersteuning te implementeer vir die hervatting van onderbreekde data-oordrag. Let daarop dat die soeke na 'n groot afset nogal lank kan neem om in die ontvanger te presteer. Om die hervatting korrek in die gasheersagteware te implementeer, dwing ontvangerreaksie op die get-opdrag deur gebruik te maak van stellingidentifiseerder en wag vir die antwoord van die ontvanger voordat DTP op die gasheer uitgevoer word. Hierdie metode neem voordeeltage van die feit dat die ontvanger op die kry-opdrag antwoord nadat die soektog uitgevoer is.
Wanneer die pogings-opsie op 1 gestel is, sal die DTP-sender in die sogenaamde stroommodus geplaas word. In hierdie modus, na ontvangs van die eerste NACK van die DTP-ontvanger, sal die DTP-sender datablokke stroom sonder om te wag vir ACK's vanaf die DTP-ontvanger, en die sender sal onmiddellik data-oordrag staak sou NACK ontvang word. Hierdie benadering laat aansienlik vinniger data-oordrag toe oor betroubare verbindings met hoë vertragings (soos TCP) of relatief hoë rigtingskakelaar oorhoofse (soos USB). Korrek geïmplementeerde ontvangs van deel van die protokol vereis geen spesiale sorg om hierdie metode te ondersteun nie.
Wanneer die tydperk opsie nie-nul is, word spesiale filtermodus geaktiveer. Byvoorbeeldample, dit laat toe om 1Hz-data af te laai vanaf 'n file wat geskryf is met 10Hz-opdateringskoers. Spesifiek, die ontvanger sal die data slegs stuur vir die tydperke waar ontvanger tyd modulo een dag (Tr) aan die volgende vergelyking voldoen:
Tr {mod periode} = fase
Om dit te bereik, ontleed die ontvanger die inhoud van die file en sommige van die boodskappe uitfiltreer. Let daarop dat die implementering van die hervatting van onderbreekde aflaai baie moeilik is as

GREIS

www.javad.com

53

ONTVANGER INVOERTAAL Opdragte kry

nie onmoontlik in hierdie geval nie as gevolg van die feit dat die gasheer geen idee het teen watter afwyking van die ontvanger nie file die aflaai is onderbreek.
Enige van die tipes oordrag kan gestaak word deur data-ontvangende einde deur enige DTP-foutsimbool te stuur (bv. ASCII '#').
Wanneer data in [RE] boodskappe oorgedra word, sal die waarde van block_size maksimum grootte van data loonvrag vir elke [RE] boodskap bepaal (ook beperk deur die grootte van interne firmware buffer). Soos gewoonlik, sal elke [RE] boodskap begin word met die opdrag ID (indien enige).
Wanneer data in [>>] boodskappe oorgedra word, sal die waarde van die pogings opsie die id-veld van die [>>] boodskappe soos volg bepaal:
id = -1 – pogings
en die waarde van "block_size" sal maksimum grootte van data loonvrag vir elke [>>] boodskap bepaal (ook beperk deur die grootte van interne firmware buffer).
Die volgende greep na id (die eerste greep van die dataveld) in die [>>] boodskap sal dan volgorde karakter wees wat met ASCII simbool 0 begin en modulo 64 vir elke boodskap verhoog word, wat lei tot die volgorde van ASCII simbole van 0 tot o, insluitend:
seq = 0 lus { seq_char = '0' + (seq++ % 64) }
Die volgordekarakter laat die ontvangs einde toe om verlies van [>>] boodskap(pe) in die volgorde op te spoor.
Dan sal die objekdata loonvrag van tot block_size grepe volg, en dan die tjeksom, volgens die formaat van [>>] boodskap.
Suksesvolle uitset in die toegedraaide modus sal altyd gefinaliseer word deur [>>] boodskap met geen data loonvrag nie, sodat ontvangs einde die einde van oordrag betroubaar kan bepaal.

Examples

Example: Begin om die inhoud van die te haal file NAME wat DTP gebruik. Enige van:

Example:

kry,/log/NAAM kry,NAAM
Begin om die inhoud van die file NAAM vanaf greepnommer 3870034 (tel grepe vanaf nul). Verwag nogal 'n lang tyd om te verloop tussen die opdrag en die antwoord:

%%kry,NAAM,3870034 RE002%%

GREIS

www.javad.com

54

ONTVANGER INVOERTAAL Opdragte kry
Example: Begin om die inhoud van die te haal file my_logfile vanaf greep 3000 met time-out 50 sekondes en blokgrootte van 8192 grepe:
kry, my_logfile:{50,8192},3000
Example: Begin om die inhoud van die te haal file NAME wat tydperke uitfiltreer sodat die gevolglike herwin word file sou 0.1Hz data wees:
kry,NAAM:{,,10}
Example: Begin om die inhoud van die te haal file NAAM wat stroommodus gebruik (pogings opsie gestel op 1):
kry,NAAM:{,,,,1}
Example: Stuur inhoud van die file NAAM toegedraai in [>>] boodskappe met id 61 (synde ASCII-simbool '='), wat tot 128 grepe data per boodskap gebruik:
kry,NAAM:{,128,,,-62}
Example: Stuur inhoud van die file NAME toegedraai in [RE] boodskappe met tot 190 grepe data per boodskap, voorafgegaan deur %MY_ID%:
%MY_ID%kry,NAAM:{,190,,,-257}

GREIS

www.javad.com

55

2.3.11 sit

ONTVANGER-INVOERTAAL Opdragte geplaas

Naam
aan die gang sit file oplaai met DTP1.

Opsomming
Formaat: sit, voorwerp[, verreken] Opsies: {time-out, block_size}

Argumente
objek objek identifiseerder van die file om data aan te skryf. As voorwerp nie met "/" begin nie, dan word "/log/" voorvoegsel outomaties voor die voorwerp ingevoeg voordat die opdrag uitgevoer word.
offset offset in grepe vanaf die begin van die file om te begin skryf. As dit weggelaat word, word 0 aangeneem.

Opsies

Tabel 2-6. verkoopopsies opsomming

Naam

Tik

Waardes

Verstek

tydsverloop

heelgetal [0…86400], sekondes 10

blokgrootte heelgetal [1…163841]

512

1. 2048 vir ontvangers wat nie TCP of USB ondersteun nie.

time-out die time-out vir DTP. block_size die grootte van 'n DTP-datablok.

Beskrywing
Hierdie opdrag begin die oplaai van data vanaf gasheerrekenaar na 'n file in die ontvanger met behulp van die Data Transfer Protocol (DTP). Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.
Nadat die put-opdrag geslaag het, word die DTP-ontvanger op die ontvanger begin en wag dat die DTP-sender op die gasheer uitgevoer word. Daarom, om enige data werklik op te laai, benodig 'n mens DTP-senderimplementering op die gasheer.

1. Sien “Data-oordragprotokol” op bladsy 580.

GREIS

www.javad.com

56

ONTVANGER-INVOERTAAL Opdragte geplaas

Die opsionele offset-argument laat gasheer toe om ondersteuning te implementeer vir die hervatting van onderbreekde data-oordrag. 'n Nie-nul-afsetwaarde laat gasheer toe om byvoeging van data aan die einde van 'n bestaande te versoek file van ooreenstemmende grootte.
As offset 0 is en die file voorwerp nie bestaan ​​nie, sal die ontvanger probeer skep en oopmaak vir die skryf van 'n nuwe file met die naam gedefinieer deur voorwerp. In hierdie geval sal die opdrag misluk as daar reeds a file met noemnaam.
As offset groter as 0 is, en daar is 'n file voorwerp, en die file grootte is gelyk aan die waarde van offset, dan sal die put-opdrag die file voorwerp vir byvoeg. In hierdie geval sal die opdrag misluk as daar geen bestaande is nie file met noemnaam of as die grootte van die bestaande file stem nie ooreen met dié wat deur verrekening gespesifiseer word nie.

Examples

Example: Begin data oplaai na 'n vars file "NAME" met DTP. Enige van:

Example:

sit,/log/NAAM sit,NAAM
Begin data oplaai en voeg dit by bestaande file "NAAM". Gebruik verstek DTP-time-out en DTP-blokgrootte 4096 grepe. Kry die grootte van die file voordat die oplaai begin (let daarop dat die file grootte word in elk geval op gasheer vereis sodat dit hierdie aantal grepe van sy brondata kan oorslaan file):

Example:

druk,/log/NAAM&grootte RE008 3870034 sit,/log/NAAM:{,4096},3870034
Begin data oplaai na 'n vars file "my_logfile” gebruik time-out 50 sekondes en blokgrootte van 8192 grepe:

sit, my_logfile:{50,8192}

GREIS

www.javad.com

57

2.3.12 fld

ONTVANGER INVOERTAAL Opdragte fld

Naam
fld firmware laai.

Opsomming
Formaat: fld,id,object Opsies: {timeout, block_size}

Argumente
ID-string wat die ontvanger elektroniese ID1 bevat. As gespesifiseerde ID nie ooreenstem met die werklike elektroniese ID van die ontvanger nie, sal die opdrag misluk en foutboodskap produseer.
objek-objek-identifiseerder van die bron van die firmware wat gelaai moet word. Óf die naam van die ontvanger file, of die naam van 'n invoerpoort. Wanneer dit die naam van invoerpoort is, moet óf /cur/term óf werklike naam van die huidige poort gegee word, anders sal fout gerapporteer word.

Opsies

Tabel 2-7. fld opsies opsomming

Naam

Tik

Waardes

tydsverloop

heelgetal [0…86400], sekondes

blok_grootte heelgetal [1…163841] 1. 2048 vir ontvangers wat nie TCP of USB ondersteun nie.

Verstek
10 512

time-out die time-out vir DTP. block_size die grootte van 'n DTP-datablok.

Beskrywing
Hierdie opdrag laai firmware vanaf gespesifiseerde voorwerp in ontvanger en stel dan die ontvanger terug. Geen antwoord word gegenereer tensy daar 'n fout is nie, of reaksie word gedwing deur die stellingidentifiseerder.

1. Die ID kan verkry word met print,/par/rcv/id opdrag.

GREIS

www.javad.com

58

ONTVANGER INVOERTAAL Opdragte fld

Waarskuwing:

Sou 'n kragonderbreking of noodlottige onderbreking van fermware-oordrag deur 'n poort plaasvind tydens die laai, kan die ontvanger in 'n semi-werkende toestand gaan waar slegs firmware laai deur RS-232 poorte met behulp van "power-on capture" metode moontlik is.
As die voorwerp 'n bestaande aanwys file1, sal die ontvanger eers kyk of die file bevat geldige firmware vir die ontvanger (dit neem 'n aantal sekondes om te voltooi). As die kontrole slaag, sal die ontvanger die firmware laai en dan self-terugstelling uitvoer. Let daarop dat die antwoord op die opdrag (indien enige) gestuur sal word nadat die kontrole uitgevoer is maar voordat die laai van die firmware begin. Die time-out en block_size opsies word in hierdie geval geïgnoreer.
As objek 'n invoerstroom aanwys, sal die opdrag die antwoord (indien enige) stuur en dan DTP-ontvanger begin wat sal wag vir DTP-sender om op die gasheer uitgevoer te word. Daarom, om die firmware werklik op te laai, benodig 'n mens DTP-senderimplementering op die gasheer. Self-terugstelling (herlaai) sal deur die ontvanger uitgevoer word nadat die laai suksesvol voltooi is of onderbreek is.

Examples
Example: Laai firmware van die file "firmware.ldp" in ontvanger met elektroniese ID 123456789AB. Verwag dat 'n paar sekondes sal verloop tussen die stuur van die opdrag en die ontvangs van antwoord, terwyl die ontvanger die file vir firmware geldigheid:
%%fld,123456789AB,/log/firmware.ldp RE002%%
Example: Begin om fermware op te laai vanaf die USB-poort deur blokgrootte 16384 grepe te gebruik en uitteltyd 20 sekondes. Verkry elektroniese ID voordat die opdrag uitgereik word:
print,rcv/id RE00C 8PZFM10IL8G fld,8PZFM10IL8G,/dev/usb/a:{20,16384}

GREIS

1. Daar word verwag dat die file wat die firmware bevat, word vooraf na die ontvanger opgelaai, bv. deur die put-opdrag te gebruik.

www.javad.com

59

ONTVANGER INVOERTAAL Opdragte fld

GREIS

www.javad.com

60

Hoofstuk 3
ONTVANGER BOODSKAPPE

Hierdie hoofstuk beskryf algemene formaat van GREIS standaardboodskappe sowel as spesifieke formate van al die vooraf gedefinieerde boodskappe. Benewens die GREIS-standaardboodskappe, ondersteun die ontvanger 'n hele paar boodskappe van verskillende formate, soos NMEA of BINEX. Die formate van daardie "vreemde" boodskappe word aan die einde van hierdie hoofstuk beskryf.
3.1 Konvensies
3.1.1 Formaatspesifikasies
Om een ​​of ander formaat as 'n reeks grepe1 in 'n kompakte vorm te beskryf, definieer ons formate vir 'n paar primêre veldtipes en gebruik dan notasie naby aan dié wat in die C-programmeertaal gebruik word om definisies van meer komplekse formate te bou:
struk NAAM {LENGTH} { TIPE VELD[COUNT]; // BESKRYWING … TIPE VELD[TEL]; // BESKRYWING
};
waar:
NOEM die naam wat aan hierdie formaat toegeken is. Dit kan in ander formaatdefinisies gebruik word as die TIPE van 'n veld.
LENGTH die lengte in grepe van die hele reeks. Vir 'n vaste lengte formaat is dit 'n getal, vir 'n veranderlike lengte boodskap kan dit óf 'n rekenkundige uitdrukking wees, afhangende van 'n paar ander veranderlike parameters of net die string var.
TIPE VELD[COUNT] veldbeskrywer. Dit beskryf 'n reeks van COUNT elemente van dieselfde TIPE wat die naam VELD toegeken word. Die TIPE kan óf een van die primêre veldtipes wat hieronder beskryf word, óf 'n NAAM van 'n ander formaat wees. Wanneer [COUNT] afwesig is, bestaan ​​die veld uit presies een element. Wanneer COUNT afwesig is (dws daar is net leë vierkantige hakies, []), beteken dit dat die veld uit ongespesifiseerde aantal elemente bestaan.

GREIS

1. In die konteks van hierdie hoofstuk beteken "byte" 8-bis entiteit. Die minste betekenisvolle bietjie van 'n greep het indeks nul.

www.javad.com

61

ONTVANGER BOODSKAPPE Konvensies
Formaat spesifikasies

BESKRYWING beskrywing van die veld saam met sy meeteenhede en toegelate reeks waardes, waar toepaslik. Meeteenhede word omring deur vierkantige hakies.
Die volgende primêre veldtipes word gedefinieer:

Tabel 3-1. Primêre veldtipes

Tik Naam

Betekenis

Lengte in grepe

a1

ASCII karakter

1

i1

getekende heelgetal

1

i2

getekende heelgetal

2

i4

getekende heelgetal

4

u1

ongetekende heelgetal

1

u2

ongetekende heelgetal

2

u4

ongetekende heelgetal

4

f4

IEEE-754 enkel presisie drywende punt

4

f8

IEEE-754 dubbel presisie drywende punt

8

str

nul-getermineerde volgorde van ASCII karakters veranderlike

Om spesifieke formaat heeltemal te definieer, moet ons ook grepe-volgorde spesifiseer in die primêre nie-aggregaat velde wat multi-grepe is (i2, i4, u2, u4, f4, f8). Vir GREIS-boodskappe word hierdie volgorde gedefinieer deur die [MF]-boodskap, sien "[MF] Boodskapformaat" op bladsy 74 vir besonderhede.
Deur die bogenoemde definisies te gebruik, is dit moontlik om enige formaatspesifikasie (rekursief) uit te brei na die ooreenstemmende volgorde van grepe. Byvoorbeeldample, die formaat
struktuur Bvample {9} { u1 n1; f4 n2; i2 n3[2];
};
brei uit na die volgende volgorde van grepe met die veronderstelling van minste betekenisvolle grepe eerste (LSB) volgorde:
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

ONTVANGER BOODSKAPPE Standaard Boodskapstroom
Spesiale waardes
en na die volgende volgorde van grepe met die aanname van mees betekenisvolle grepe eerste (MSB) orde:
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)
waar x[i](j) j-de greep aandui (greep #0 is die minste betekenisvolle een) van 'n i-de element van die veld x.

3.1.2 Spesiale waardes

Vir binêre boodskappe kan sommige van hul heelgetal- en swaaipuntvelde spesiale waardes bevat, wat gebruik word in plaas van werklike data wanneer geen data vir die veld beskikbaar is nie. Binêre velde waarvoor nagaan vir spesiale waardes tydens data-onttrekking vereis word, word gemerk met die uitroepteken, "!" in die eerste kolom van die velddefinisie.
Die volgende tabel definieer spesiale waardes vir verskillende dataveldtipes:

Tabel 3-2. Spesiale waardes vir velde

Veldtipe
i1 u1 i2 u2 i4 u4 f4 f8

Spesiale waarde
127 255 32767 65535 2147483647 4294967295 stil NaN stil NaN

HEX verteenwoordiging
7F FF 7FFF FFFF 7FFF_FFFF FFFF_FFFF 7FC0_0000 7FF8_0000_0000_0000

3.2 Standaard Boodskapstroom

Standaard GREIS boodskap stroom is 'n reeks van hoogstens twee soorte boodskappe, GREIS standaard boodskappe, en nie-standaard teks boodskappe.
Die belangrikste en mees gebruikte soort boodskappe is 'n ryk stel GREIS-standaardboodskappe. Hul algemene formaat is noukeurig ontwerp om vir beide binêre en teksboodskappe toe te laat.

www.javad.com

63

ONTVANGER BOODSKAPPE Algemene Formaat van Boodskappe
Standaard boodskappe
wyses, en om dit vir toepassings moontlik te maak om die boodskappe wat die toepassing nie weet nie van of waarin nie belangstel nie, doeltreffend oor te slaan.
Ondersteuning vir nie-standaard teksboodskappe, wat steeds moet voldoen aan die formaat wat daarvoor in hierdie handleiding gedefinieer is, maak dit moontlik om GREIS standaardboodskappe te meng met boodskappe van sommige ander formate in die standaard GREIS datastroom. 'n eksample van so 'n formaat is NMEA-boodskappe.
Nie-standaard teksboodskappe van 'n spesiale geval, die boodskappe wat slegs ASCII bevat en/of karakters, word deur die boodskapformatering-enjin in die ontvanger tussen die GREIS-standaardboodskappe ingevoeg om die resulterende boodskapstroom meer mens-leesbaar te maak wanneer dit na 'n terminale of generiese teks gestuur word viewer of redakteur aansoek.
Behalwe GREIS-standaardboodskappe en nie-standaard teksboodskappe, ondersteun JAVAD GNSS-ontvangers tipies baie ander formate (bv. RTCM, BINEX, CMR). Hierdie formate is egter onversoenbaar met die formaat van standaard GREIS-boodskapstroom. Sou 'n stroom boodskappe van daardie formate bevat, kan dit nie meer GREIS-standaardboodskapstroom genoem word nie, en kan dit nie volgens dieselfde reëls as die standaardstroom ontleed word nie.1

3.3 Algemene Formaat van Boodskappe

3.3.1 Standaardboodskappe

Die formaat van elke standaardboodskap is soos volg:

struct StdMessage {var} {

a1 id[2];

// Identifiseerder

a1 lengte[3];

// Heksadesimale liggaamslengte, [000…FFF]

u1 liggaam[lengte]; // Liggaam

};

Elke standaardboodskap begin met die unieke boodskap-identifiseerder wat uit twee ASCII-karakters bestaan. Enige karakters van die subset "0" tot "~" (dws desimale ASCII-kodes in die reeks van [48...126]) word in identifiseerder toegelaat.

GREIS

1. Trouens, die formaat van GREIS-standaardboodskappe is so buigsaam dat dit enige datastroom in die standaard GREIS-datastroom kan inkorporeer, maar dan moet die oorspronklike onversoenbare stroom in 'n reeks spesiale GREIS-boodskappe toegedraai word. Die vooraf gedefinieerde boodskap met identifiseerder ">>" dien hierdie doel.

www.javad.com

64

ONTVANGER BOODSKAPPE Algemene Formaat van Boodskappe
Nie-standaard teksboodskappe
Boodskap-identifiseerder word gevolg deur die lengte van boodskapliggaamveld. Hierdie veld, wat uit drie hoofletters heksadesimale syfers bestaan, spesifiseer die lengte van die boodskapliggaam in grepe. Die maksimum boodskapliggaamlengte is dus 4095 (0xFFF) grepe.
Boodskapliggaam volg onmiddellik na die lengteveld en bevat presies die aantal grepe gespesifiseer deur die lengteveld. Daar is geen beperkings op die inhoud van die boodskapliggaam wat deur die algemene formaat geïmpliseer word nie. Die formaat van die boodskapliggaam in 'n boodskap word implisiet gedefinieer deur die boodskapidentifiseerder. Formate van boodskapliggame van al die vooraf gedefinieerde boodskappe

3.3.2 Nie-standaard teksboodskappe

Die formaat van nie-standaard teksboodskappe is soos volg:

struct NonStdTextMessage {var} {

a1 id;

// Identifiseerder, [!…/]

a1 liggaam[];

// Liggaam van arbitrêre lengte, [0...)

a1 eom;

// Einde van boodskap ( of )

};

Boodskapidentifiseerder is enige karakter in die reeks [!... /] (desimale ASCII-kodes in die reeks [33...47]). Boodskap-identifiseerder is opsioneel. Indien afwesig, moet die boodskapliggaam lengte nul hê (dws moet ook afwesig wees).

Boodskapliggaam is 'n reeks ASCII-karakters behalwe (desimale kode 13) en (desimale kode 10) karakters. Geen beperking op die liggaamslengte word deur die formaat opgelê nie.

Die einde van boodskapmerker is óf of karakter.

Let daarop dat die formaat voorsiening maak vir nie-standaardboodskappe wat slegs CR- of LF-karakters bevat. Hierdie kenmerk laat toe om standaard GREIS-boodskapstrome meer mensleesbaar te laat lyk wanneer data na 'n algemene terminaal of viewing met generiese teks viewer of redakteur.

Een van die nie-standaard teksboodskap identifiseerders, die karakter "$", is reeds gereserveer as die identifiseerder vir standaard NMEA boodskappe. Geen ander nie-standaard teksboodskappe moet die "$" as identifiseerder gebruik nie.

3.3.3 Ontleding van boodskapstroom
In hierdie afdeling sal jy 'n paar wenke en wenke kry oor hoe om kode te skryf wat bedoel is om 'n GREIS-ontvanger se boodskapstrome te ontleed. Alhoewel ons nie hierdie onderwerp in detail in hierdie verwysingshandleiding gaan bespreek nie, wil ons graag hier beklemtoon dat die standaardboodskap

GREIS

www.javad.com

65

ONTVANGER BOODSKAPPE Algemene Formaat van Boodskappe
Ontleed boodskapstroom
formaat sal jou toelaat om bykans enige GREIS-boodskapstroom wat jy in die praktyk teëkom, effektief te verwerk/ontleed.

Let wel:

Sinchronisasie
Wanneer jy 'n boodskapstroom ontleed, moet jy eers die naaste boodskapgrens vind. Dit is wat gewoonlik "sinchronisasie" genoem word. Boodskapsinchronisasie word uitgevoer wanneer ontleding begin word of wanneer sinchronisasie verlore gaan as gevolg van 'n fout in die datastroom. Trouens, om die algoritme te vereenvoudig, kan jy dink dat jy reeds gesinchroniseer is wanneer jy begin om die datastroom te ontleed. As dit gebeur dat dit nie die geval is nie, moet die ontledingsfout voorkom. Jy slaan dan een karakter uit die invoerstroom oor en maak asof jy weer gesinchroniseer is. So 'n benadering skakel sinchronisasietaak effektief uit as 'n aparte deel van die ontledingsalgoritme.
As gevolg van die feit dat die foutkoers in 'n redelik bruikbare datastroom taamlik laag behoort te wees, behoort die sinchronisasie nie 'n gereelde taak te wees nie. Daarbenewens bestaan ​​die GREIS-datastroom tipies uit taamlik kort boodskappe, so die afstand na die naaste boodskapgrens is tipies klein. Met inagneming van hierdie oorwegings, is daar geen vereiste dat sinchronisasie-algoritme baie vinnig moet wees nie.

Let wel:

Slaan oor na die volgende boodskap
As u die lengte in die algemene formaat van die standaard GREIS-boodskappe het, kan u boodskappe maklik ignoreer sonder om die formaat van hul liggaam te ken. Ons beveel inderdaad sterk aan om ontleders te skryf sodat hulle onbekende boodskappe oorslaan.
Om van die huidige boodskap na die volgende een te gaan, volg die volgende stappe:
1. Aanvaar die huidige boodskap begin by posisie “N”. Bepaal die huidige boodskaplengte (dekodeer karakters ## N+2, N+3, N+4). Aanvaar die boodskaplengte is gelyk aan L. Slaan die eerste L+5 karakters oor vanaf posisie “N”.
2. Slaan alles oor en karakters (indien enige).
Streng gesproke beveel ons nie aan dat jy in jou ontledingskode enige apriori-inligting oor die groottes en die inhoud van die boodskapliggame gebruik nie. As jy hierdie aanbeveling respekteer, sal jy nie probleme met die ontledingsprogram hê as sommige van die boodskappe verander word nie.
Die reëls en wenke oor die ontleding van boodskapliggame van die standaard voorafbepaalde GREIS-boodskappe word later in "Ontleed boodskapliggame" op bladsy 67 bespreek.

GREIS

www.javad.com

66

GREIS

ONTVANGER BOODSKAPPE Standaard Vooraf gedefinieerde Boodskappe
Ontleding van boodskapliggame
3.4 Standaard vooraf gedefinieerde boodskappe
In hierdie afdeling sal ons die leser vertroud maak met die voorafbepaalde stel standaard GREIS-boodskappe. Wanneer ons na 'n boodskap met die identifiseerder XX verwys, gebruik ons ​​die notasie [XX]. Terwyl die meeste boodskappe deur hul boodskap-identifiseerder in GREIS geroep word, het sommige van hulle, spesifiek dié wat nie-alfanumeriese identifiseerders het, name wat verskil. Vir sulke boodskappe word die notasie [XX](NN) gebruik, waar XX boodskapidentifiseerder is, en NN boodskapnaam is wat in die GREIS-opdragte gebruik moet word. Byvoorbeeldample die boodskap [~~](RT) het kopskrif "~~" en word /msg/jps/RT in GREIS-opdragte genoem.
Hierdie afdeling definieer die formate van die liggame vir al die standaard vooraf gedefinieerde boodskappe. Hou in gedagte dat in 'n datastroom elke boodskap 'n standaardopskrif het wat ook deur die algemene formaat gedefinieer word.
3.4.1 Ontleding van boodskapliggame
Toegelate formaatuitbreidings
Formate van binêre boodskappe met vaste boodskapgrootte laat toe om meer datavelde in die toekoms by te voeg. Nuwe velde mag slegs aan die einde van boodskapliggaam net voor die kontrolesomveld (indien enige) ingevoeg word. Sulke wysigings aan die boodskapliggame word as formaatuitbreidings beskou, nie onversoenbare veranderinge nie.
Alhoewel standaard GREIS-teksboodskappe nie boodskappe met vaste boodskapgrootte is nie, kan nuwe velde steeds in die toekoms in hierdie boodskappe verskyn. Nuwe velde kan óf aan die einde van 'n bestaande teksboodskap net voor die kontrolesomveld ingevoeg word, óf onmiddellik voor enige regterhandhakie (}). Byvoorbeeldample, 'n boodskap wat tans gelees word as:
…1,{21,22},3,@CS
later uitgebrei kan word na
…1,{2.1,2.2,2.3},3,4,@CS
waar twee bykomende velde, "2.3" en "4", bygevoeg is.
Implementeer jou ontledingsalgoritmes met inagneming van die volgende reëls om dit selfs met toekomstige formaatuitbreidings te laat werk:
1. Moenie aanvaar dat die grootte van die boodskapliggaam van die ontvangde boodskap presies moet ooreenstem met die spesifieke grootte wat in hierdie dokument gedefinieer is nie. Slegs as die boodskap te kort is, beteken dit dat jy nie die inhoud daarvan kan gebruik nie. As die boodskap langer is as wat verwag is, ignoreer net die oortollige data.
2. Adres die kontrolesomveld relatief tot die einde van die boodskapliggaam.

www.javad.com

67

ONTVANGER BOODSKAPPE Standaard Vooraf gedefinieerde Boodskappe
Algemene notas
3. Adres ander datavelde relatief tot die begin van die boodskapliggaam. 4. Neem die bogenoemde reël in ag vir die verlenging van teksboodskappe wanneer
die skryf van data-onttrekkings vir teksboodskappe.
Kontrolesomme
Nadat 'n boodskap uit die datastroom onttrek is deur gebruik te maak van tegnieke beskryf in die "Ontleed boodskapstroom" op bladsy 65, en die boodskap-identifiseerder blyk een van dié te wees waarin die toepassing belangstel, moet die boodskapliggaam ontleed word om die data te onttrek . Voordat die inhoud onttrek word, moet die boodskapkontrolesom bereken word en vergelyk word met die kontrolesom wat in die boodskap vervat is.
Die meeste voorafbepaalde boodskappe bevat kontrolesom. Kontrolesom word bereken deur beide die boodskapopskrif (dws "boodskap-identifiseerder" plus "die lengte van boodskapliggaam") en die liggaam self te gebruik. Sien "Berekening van kontrolesomme" op bladsy 579 vir meer inligting oor kontrolesomberekening.
Die kontrolesom word altyd heel aan die einde van die boodskapliggaam geplaas. As 'n boodskap se struktuur gewysig word deur 'n nuwe dataveld(e) by te voeg, sal die nuwe datavelde voor die kontrolesomveld bygevoeg word. Dit verduidelik waarom dit aanbeveel word om die kontrolesomveld relatief tot die einde van die boodskapliggaam aan te spreek.
3.4.2 Algemene notas
Tydskale
Daar is vyf tydskale wat jou ontvanger kan hanteer:
Tr ontvanger tyd Tg GPS stelsel tyd Di UTC(USNO). Universele gekoördineerde tyd ondersteun deur die US Naval Observer-
vatory. Tn GLONASS stelsel tyd. Ts UTC(SU). Universele Gekoördineerde Tyd ondersteun deur die Staat Tyd en Fre-
quency Service, Rusland.
“Ontvangertyd” is die enigste tydrooster wat altyd in jou ontvanger beskikbaar is (dws die ander tydroosters van die bogenoemde lys is dalk tans beskikbaar of nie).
Trouens, JAVAD GNSS-ontvanger sinchroniseer altyd sy ontvangertyd met een van die vier globale tydskale: GPS-tyd, UTC(USNO), GLONASS-tyd of UTC(SU). Die

GREIS

www.javad.com

68

GREIS

ONTVANGER BOODSKAPPE Standaard Vooraf gedefinieerde Boodskappe
Algemene notas
tydrooster wat aldus gekies is, word hierna in hierdie afdeling1 verwys as "ontvangerverwysingstyd" (Trr).
Verskillende tydstelsels kan verskillende tydnotasies (formate) daarmee geassosieer hê (bv. vir GPS-tyd gebruik ons ​​terme soos "weeknommer", "tyd van die week", ens.). Let egter daarop dat die "ontvangertyd"-voorstelling nie van die geselekteerde ontvangerverwysingstyd sal afhang nie en altyd as ontvangerdatum en -tyd van die dag voorgestel word.
Die meeste van die vooraf gedefinieerde boodskappe bevat nie verwysingstydinligting binne nie. In ons view, sal dit buitensporig wees om een ​​en dieselfde tyd te gebruik tag met al die baie boodskappe wat die ontvanger in die huidige tydperk genereer. Wanneer u ontvangerinligting wat beskikbaar is vir die huidige epog uitstuur, kry u gewoonlik verskeie boodskappe. In plaas daarvan om elkeen van hulle 'n individuele tyd te voorsien tag dataveld, gebruik ons ​​'n spesiale boodskap wat ontvangertydinligting bevat wat algemeen vir hierdie boodskappe is. Hierdie boodskap word "Ontvangertyd" genoem en het die identifiseerder [~~].
Daar is egter 'n modus van werking, genaamd RTK-vertraagde modus, wanneer ontvanger op 'n gegewe epog oplossing kan produseer wat na 'n ander epog in die verlede verwys is. Om tyd te verskaf tag vir so 'n oplossing, spesiale Oplossingstyd-Tag [ST] boodskap word gebruik. Trouens, hierdie boodskap verskaf die regte tyd tag vir 'n oplossing in alle werkwyses, alhoewel dit in die meeste modusse presies dieselfde tyd het as [~~].
Daar is 'n paar ander boodskappe wat 'n tyd het tag data veld. Dit is boodskappe wat inligting bevat wat onafhanklik op die ontvanger-epogrooster verskyn. 'n eksample van so 'n boodskap is "Gebeurtenis" [==].
Afbakeners
Trouens, "Ontvanger Tyd" boodskap is veronderstel om al die ander boodskappe vooraf te gaan wat op die huidige epog gegenereer word en sodoende boodskappe wat ooreenstem met verskillende tydperke afbaken. Van 'n formele punt van view, is dit aan die gebruiker om die volgorde van boodskappe in die uitsetstroom te definieer. Sorg moet egter gedra word om te verseker dat die volgorde waarin boodskappe in die uitvoerstroom geskryf word nie die "epogsinchronisasie" breek nie, wat baie noodsaaklik is vir die naverwerking van die aangetekende data met JAVAD GNSS sagteware pakkette. Sien “Boodskapstelle” op bladsy 562 vir meer besonderhede oor die verstek stel boodskappe.
Vir intydse toepassings is dit noodsaaklik om die einde van die epog so gou as moontlik te bepaal. Vir sulke toepassings is dit nie gerieflik om epogge net deur 'n "begin van epog" merker af te baken nie. Ons stel voor om die "Epogtyd" [::](ET) boodskap as die "einde van epog" merker te gebruik. Hierdie boodskap bevat dieselfde tyd van die dag veld wat gevind word in die "Ontvanger Tyd" boodskap wat voorsiening maak vir beter integriteit kontrolering. Die idee is om tyd te vergelyk tag

1. In die huidige ontvanger-firmware is die ontvangerverwysingstyd óf GPS- óf GLONASS-stelseltyd, verwys na /par/raw/time/ref op bladsy 220

www.javad.com

69

GREIS

ONTVANGER BOODSKAPPE Standaard Vooraf gedefinieerde Boodskappe
Algemene notas
van [::] boodskap teen die tyd tag van ooreenstemmende [~~] boodskap. Mispas tags is 'n aanduiding van gebroke epog.
Jy sal sien dat die meeste van die boodskappe identifiseerders het wat slegs syfers en/of Engelse letters bevat. Trouens, "Ontvanger Tyd" [~~] is die enigste boodskap waarvan die identifiseerder die karakter "~" gebruik. Dit maak sin aangesien die [~~] boodskap 'n baie belangrike rol speel en dien as 'n epogafbakener. Daar is dus spesiale voorsorgmaatreëls om die waarskynlikheid om hierdie sleutelboodskap te verloor tot die minimum te beperk. Net so moet die identifiseerder van die "Gebeurtenis" ([==])-boodskap ook so kenmerkend as moontlik wees, aangesien toepassingsagteware vryevormgebeurtenisse net as afbakenings kan gebruik.
Die idee om "hoogs kenmerkende" identifiseerders te gebruik vir die boodskappe wat as afbakenings dien, is baie duidelik. Indien 'n boodskap se kontrolesom verkeerd is, gaan net die identifiseerder na. As nie een van die identifiseerder se karakters met "~" saamval nie, dan is dit baie onwaarskynlik dat dit 'n korrupte [~~] boodskap is. Daarom hoef jy nie in hierdie geval na die volgende [~~] boodskap oor te slaan nie.
Aan die ander kant, as 'n boodskap die korrekte kontrolesom het, maar een van die identifiseerderkarakters is "~", dan sal dit veiliger wees om hierdie boodskap as 'n korrupte [~~]-boodskap te hanteer. Slaan in hierdie geval oor na die volgende [~~] boodskap.

Oplossingstipes

Die veld "solType" wat in baie van die vooraf gedefinieerde boodskappe gebruik word, dui die tipe ooreenstemmende oplossing aan en kan die volgende waardes hê:
Tabel 3-3. Oplossingstipes

Waarde

Betekenis

0

nee

Dokumente / Hulpbronne

JAVAD GREIS GNSS-ontvanger eksterne koppelvlak [pdf] Gebruikersgids
GREIS GNSS Ontvanger Eksterne Interface, GREIS, GNSS Ontvanger Eksterne Interface, Ontvanger Eksterne Interface, Eksterne Interface, Interface

Verwysings

Los 'n opmerking

Jou e-posadres sal nie gepubliseer word nie. Vereiste velde is gemerk *