Aufbau und Bibliotheken

From emotive
Jump to navigation Jump to search

Das OTX Daten­mo­dell ist im Wesent­li­chen in den Sprach­kern (Core) sowie in ver­schie­de­ne funk­tio­na­le Erwei­te­run­gen (Libra­ri­es) geglie­dert. Die nach­fol­gen­de Abbil­dung gibt einen Über­blick über die Lauf­zeit­struk­tur von OTX und sei­ne ver­schie­de­nen stan­dar­di­sier­ten Erwei­te­rungs­bi­blio­the­ken. Der OTX Core defi­niert für die Erwei­te­run­gen nur den Erwei­te­rungs­me­cha­nis­mus an den sich die ver­schie­de­nen Biblio­the­ken ein­klin­ken kön­nen. Der OTX Core ist dabei grund­sätz­lich stand-alo­ne betreib­bar. Ein OTX kom­pa­ti­bles Ablauf­sys­tem muss wis­sen, wie die ein­zel­nen Ele­men­te von OTX auf die Lauf­zeit­um­ge­bung der Dia­gno­se­an­wen­dung gemappt wer­den (z.B. Dar­stel­lung der OTX Mes­sa­ge­Dia­log-Akti­vi­tät oder Aus­füh­rung eines Dia­gno­se­ser­vices).


OTX-architecture.png
OTX Archi­tek­tur - Schnitt­stel­len & Erwei­te­run­gen


Bibliotheken

Die Biblio­the­ken erwei­tern den Core um eine fest defi­nier­te Men­ge von Zusatz­funk­tio­na­li­tä­ten. Anwen­der kön­nen zwar auch ihre eige­nen Biblio­the­ken erstel­len, jedoch sind die­se kein Bestand­teil des Stan­dards. Für neue Daten­ty­pen, Akti­vi­tä­ten oder Aus­drücke nut­zen alle Erwei­te­run­gen die im Core defi­nier­ten Erwei­te­rungs­punk­te. Das Bild zuvor gibt eine Über­sicht über die wesent­li­chen Schnitt­stel­len und Erwei­te­rungs­bi­blio­the­ken von OTX. Nach­fol­gend wer­den die bis­her rea­li­sier­ten Biblio­the­ken kurz beschrie­ben.

DiagCom

Die Diag­Com-Biblio­thek stellt OTX-Ele­men­te für die Off-Board-Kom­mu­ni­ka­tion mit dem Fahr­zeug zur Ver­fü­gung. Der Auf­bau der Biblio­thek erlaubt es, grund­sätz­lich jedes Dia­gno­se­lauf­zeit­sys­tem zu unter­stüt­zen. Es wird jedoch die Ver­wen­dung eines stan­dar­di­sier­ten MVCI-Ser­vers emp­foh­len. Fol­gen­de Auf­ga­ben wer­den mit der Biblio­thek abge­deckt:

  • Mana­ge­ment der Kom­mu­ni­ka­ti­ons­kanä­le
  • Aus­füh­rung von Dia­gno­se­diens­ten
  • Set­zen der Request-Para­me­ter und Aus­wer­tung der Respon­se-Para­me­ter
  • Mana­ge­ment der posi­ti­ven und nega­ti­ven Ant­wor­ten
  • Mana­ge­ment der Kom­mu­ni­ka­ti­ons­pa­ra­me­ter
  • Durch­füh­rung eine Vari­an­te­ni­den­ti­fi­ka­tion
  • Unter­stüt­zung der Funk­tio­na­len Adres­sie­rung

Environment

Die Envi­ron­ment-Biblio­thek regelt Auf­ga­ben für die Kom­mu­ni­ka­tion mit der Umge­bung (bei­spiels­wei­se inner­halb des Tes­ter-Fra­me­works), mit dem Betriebs­sys­tem oder mit ande­ren Anwen­dun­gen.

Event

Mit der Event-Biblio­thek bie­tet OTX ein Sys­tem für die detail­lier­te Kon­trol­le von Ereig­nis­sen zur Inter­ak­tion mit der Außen­welt an. Man unter­schei­det zwi­schen Ereig­nis­sen, die außer­halb der Dia­gno­se­se­quenz – z. B. Mausklick des Benut­zers oder Ablauf eines Timers – und die inner­halb des Ablaufs auf­tre­ten – z. B. Ände­rung einer Varia­blen. Die Ereig­nis­be­hand­lung in OTX ist immer syn­chron und nie asyn­chron. Dies bedeu­tet, dass ein Mecha­nis­mus ver­wen­det wird, der auf das Auf­tre­ten von Ereig­nis­sen war­tet und die­se sequen­ti­ell wei­ter ver­ar­bei­tet. In der Event-Biblio­thek wer­den fol­gen­de Ele­men­te bereit­ge­stellt:

  • Event­Sour­ce – Erzeu­gung von Ereig­nis­sen
  • Event – wird durch Event­Sour­ce erzeugt und kap­selt alle Infor­ma­tio­nen über das Ereig­nis.
  • Wait­Fo­rE­vent – Syn­chro­ni­sa­ti­ons­punkt – eine lau­fen­de Dia­gno­se­se­quenz wird ange­hal­ten und war­tet auf bestimm­te Ereig­nis­se.

Flash

Die Flash-Biblio­thek stellt spe­zi­fi­sche Befeh­le für die auto­ri­sier­te Pro­gram­mie­rung, sie­he auch Flas­hen, von Steu­er­ge­rä­ten zur Ver­fü­gung. Sie unter­stützt den Zugriff auf Daten­ty­pen, Ter­me und Akti­vi­tä­ten zum Lesen von typi­scher­wei­se in ODX vor­lie­gen­den Flash-Ses­si­ons. Eine Ses­sion ent­hält belie­big vie­le Blöcke, ein Block belie­big vie­le Seg­men­te und ein Seg­ment belie­big vie­le Daten­by­tes. Die Daten kön­nen gepackt vor­lie­gen. Außer­dem kön­nen Sicher­heits­in­for­ma­tio­nen an Ses­si­ons und/oder Blö­cken ange­hängt wer­den.

HMI – Human Machine Interface

Für die Inter­ak­tion mit dem Benut­zer ist die HMI-Biblio­thek zustän­dig. Sie stellt Ele­men­te für die Ein- und Aus­ga­be, wie Stan­dard­dia­lo­ge, frei para­me­trier­ba­re Bild­schir­m­aus­ga­be und Tas­ta­turein­ga­ben, zur Ver­fü­gung. Auf­grund der unter­schied­li­chen Ausprä­gun­gen der ver­schie­de­nen Tes­ter – man­che besit­zen nur sehr ein­fa­che Ein- und Aus­ga­bemög­lich­kei­ten – und wegen der kla­ren Tren­nung von Ablauf­lo­gik und Ober­flä­chen­dar­stel­lung wer­den in OTX kei­ne ober­flä­chen­spe­zi­fi­schen Inhal­te, wie Lay­out, Far­be, Desi­gn etc., abge­bil­det. Die­se Infor­ma­tio­nen kön­nen tool­s­pe­zi­fisch, bei­spiels­wei­se in den OTX-Meta­da­ten, abge­legt wer­den.

Es wer­den nur zwei so genann­te Screens unter­stützt:

1. BasicS­creen
Hier­mit wer­den die Stan­dard­auf­ga­ben erle­digt, wie Auf­for­de­rung für ein­fa­che Ein­ga­ben, Dar­stel­lung von War­nun­gen etc. Die Dia­log­bo­xen sind immer modal. Das heißt, solan­ge der Dia­log dar­ge­stellt wird, bleibt der Ablauf ste­hen. Mit der Frei­ga­be durch den Anwen­der, z. B. Ok-But­ton, schließt sich der Dia­log und der Ablauf läuft wei­ter. BasicS­creens müs­sen durch alle Ablauf­sys­te­me unter­stützt wer­den. In Tes­tern ohne Dis­play müs­sen ande­re Aus­ga­bemög­lich­kei­ten vor­ge­se­hen wer­den, z. B. LEDs, Laut­spre­cher etc.
2. Custom­S­creen
Im Custom­S­creen wird eine ein­fa­che Schnitt­stel­le für extern erzeug­te Ober­flä­chen rea­li­siert. Das Lay­out, der Typ und die Funk­tion der Ober­flä­chen­ele­men­te wer­den in OTX nicht beschrie­ben. Die Schnitt­stel­le ent­spricht der eines nor­ma­len Funk­ti­ons­auf­rufs mit Ein- und Aus­ga­be­pa­ra­me­tern. Ein Custom­S­creen ist nicht modal. Das heißt, der Ablauf wird durch die Dar­stel­lung nicht ange­hal­ten, son­dern läuft wei­ter. Soll­te den­noch gewar­tet wer­den, steht dafür ein Scree­nE­vent zur Ver­fü­gung, sie­he Event-Biblio­thek. Durch das Ablauf­sys­tem wird sicher­ge­stellt, dass bei einer Ände­rung des Inhalts, z. B. einer Varia­ble, der Screen aktua­li­siert wird. Custom­S­creens lau­fen grund­sätz­lich in einem andern Thread als das Ablauf­sys­tem.

Internationalization (I18n)

Die I18n-Biblio­thek ist eine Erwei­te­rung von OTX für die Über­set­zung von Strings, Ein­hei­ten und Wer­ten zur sprach­li­chen und regio­na­len Anpas­sung des Ablauf­sys­tems.

Job

Die Job-Biblio­thek von OTX stellt einen Mecha­nis­mus für den Zugriff auf die Job-API eines stan­dar­di­sier­ten MVCI-Ser­vers (ASAM 3D-Ser­ver) zur Ver­fü­gung.

Math

Die Math-Biblio­thek erwei­tert OTX um nicht im Core ent­hal­te­ne mathe­ma­ti­sche Funk­tio­nen, z. B. power, Log, Ln, sin, cos, tan.

Measure

Mit der Mea­su­re-Biblio­thek stellt OTX Akti­vi­tä­ten und Daten­ty­pen für grund­le­gen­de Mess- und Steu­er­auf­ga­ben bereit. Ins­be­son­de­re beim Ein­satz inner­halb der Pro­duk­tion gibt es zahl­rei­che elek­tri­sche und elek­tro­ni­sche Tests, die nichts mit der Steu­er­ge­rä­te­kom­mu­ni­ka­tion zu tun haben. Hier­für defi­niert OTX eine ein­fa­che Schnitt­stel­le zur Ein­bin­dung von Mess- und Steue­rungs­hard­wa­re.

Quantities

Die Quan­ti­ties-Biblio­thek ist ein Abstrak­ti­ons-Layer ober­halb der OTX-Daten­ty­pen zur Beschrei­bung der Ein­hei­ten. Nume­ric­Quan­ti­ties ent­hal­ten bei­spiels­wei­se Infor­ma­tio­nen über die Grö­ße der phy­si­ka­li­schen Ein­heit. Dies ist für die Umrech­nung in ande­re Ein­hei­ten auf­grund regio­na­ler Beson­der­hei­ten not­wen­dig. OTX ver­wen­det hier das Daten­mo­dell von UNIT-SPEC in ODX, sie­he ISO 22901-1. Ein­hei­ten kön­nen in OTX erstellt wer­den oder auf ODX-Ein­hei­ten refe­ren­zie­ren.

StringUtil

Die Strin­gU­til-Biblio­thek von OTX ist ein Mecha­nis­mus für Ope­ra­tio­nen zur Ana­ly­se und Rück­ga­be von Strings.


Siehe auch

OTX - Hintergrund & Motivation

OTX - Basisbibliothek (Core)

OTX - Basiskonzepte