Port BUSACCESS - GENERIC

Generischer Bus-Zugriff

Stimulation

Die Stimulation von Bus-Signalen erfolgt über den Modellzugriff und ist nur möglich, wenn dieser ebenfalls die Stimulation unterstützt. Dabei gelten die Einschränkungen/Anmerkungen des Modellzugriffs auch für den generischen Bus-Zugriff.

Einschränkungen:

  • Stimulus-Eingangssignale werden nicht unterstützt.

  • Die in einer STI-Datei im DataFileSegment referenzierten Tracedateien werden von ecu.test nicht konvertiert.

  • Es obliegt dem Benutzer zu prüfen, ob das verwendete Trace-Format vom Tool unterstützt wird.

Besonderheiten

Über diesen Porttyp können im Modell abgebildete Busgrößen (Frames und Signale) gelesen und manipuliert werden. Die Abbildungsvorschriften für Bussignal zu Modelldaten sind in der Testbenchkonfiguration hinterlegt. Deren Syntax wird im nachfolgenden Abschnitt beschrieben.

Porttyp BUSACCESS GENERIC

Bus-Port für den Zugriff auf die Restbussimulation des Umgebungsmodells. Die Abbildung von Signal-/Botschaftsnamen auf Modell-Pfade ist mit Pfad-Mustern weitgehend konfigurierbar. Die Abbildung von CRC- und ALIVE-Signalen wird gesondert konfiguriert. CRC- und ALIVE-Signale werden am Präfix „CRC“ bzw. „ALIV“ des jeweiligen Signalnamens erkannt.

Die Pfade in den Eigenschaften können verschiedene Platzhalter enthalten, die beim Zugriff auf ein Signal automatisch ersetzt werden. Ein Platzhalter wird mit einem %-Zeichen angeführt und in Runde Klammern gesetzt: %(<platzhalter>). Nach der schließenden Klammer muss ein Formatierungs-Code stehen.

Info

Ein valider Ausdruck wäre also bspw.: %(signal)s, wobei „signal“ ein Platzhalter und „s“ ein Formatierungscode darstellen.

Verfügbare Platzhalter

bus

Name des Busses

node

Name des Steuergerätes

frame

Name der Botschaft / des Frames

frameId

Die ID der Botschaft / des Frames.

CAN: CAN-ID FlexRay: Slot-ID

pdu

Name des/der PDU/Subframes

signal

Name des Signals

cycleRepetition

Nur FlexRay: Anzahl Zyklen bis ein Frame erneut gesendet wird

baseCycle

Nur FlexRay: Erster Kommunikationszyklus, in dem ein Frame gesendet wird.

segmentType

Nur FlexRay: „Dynamic“, wenn die aktuelle Slot-ID über der maximalen Anzahl an statischen Slots liegt, sonst „Static“

signalGroup

Name der Signalgruppe

multiplexer

Multiplexer-Switch-Code (z. B. _DP_m4), falls es sich um ein Signal einer Multiplex-PDU handelt

Formatierungscodes

Die Platzhalter können mit den folgenden Formatierungsregeln manipuliert werden:

s

Platzhalter wird nur ersetzt, Groß-/Kleinschreibung des ersetzenden Wertes bleiben erhalten.

us

ersetzter Wert wird komplett in Großbuchstaben konvertiert.

ls

ersetzter Wert wird komplett in Kleinbuchstaben konvertiert.

d

ersetzter Wert wird als Dezimalzahl dargestellt.

x

ersetzter Wert wird als Hexadezimalzahl mit Kleinbuchstaben dargestellt.

X

ersetzter Wert wird als Hexadezimalzahl mit Großbuchstaben dargestellt.

4x

ersetzter Wert wird mit führenden Nullen auf 4 Stellen aufgefüllt (die Stellenanzahl kann geändert werden, und auch in Kombination mit d bzw. X statt x verwendet werden)

Pfad-Bestandteil als optional markieren

Es ist möglich bestimmte Teile eines Pfades als optional zu markieren. Ein Pfad-Bestandteil ist dann optional, wenn er:

  • in eckigen Klammern steht, also zwischen „[“ und „]“ und

  • wenigstens ein Platzhalter enthalten ist

Ein optionaler Bestandteil ist nur dann im Zielpfad enthalten, wenn alle darin befindlichen Platzhalter mit einem Wert ersetzt werden können.

Ein Beispiel: Als TX-Pfad ist folgendes konfiguriert: /can/[%(signalGroup)s/]%(signal)s/Value. Befindet sich das entsprechende Bussignal „A“ in einer Signalgruppe (z.B. „sign_group“), resultiert das in einen TX-Pfad: /can/sign_group/A/Value. Der optionale Bestandteil ist also im Zielpfad enthalten. Ist das Signal hingegen nicht Bestandteil einer Signalgruppe, ergibt das den Pfad: /can/A/value.

Tx-Switch-Pfad

Der Tx-Switch-Pfad wird benutzt, um die Manipulation von Signalen zu de-/aktiviern. Das Signal auf dem Switch-Pfad wird dazu auf folgende Werte gesetzt, um die Manipulation des Zielsignals zu steuern:

  • 0: wenn das Zielsignal nicht manipuliert wird

  • 1: wenn das Zielsignal mit Repräsentation Physikalische Umrechnung geschrieben wird

  • 2: wenn das Zielsignal mit Repräsentation Rohwert geschrieben wird

Wenn die Option Fehlenden *-Tx-Switch-Pfad ignorieren gesetzt ist, muss der Tx-Switch-Pfad nicht existieren. Das Zielsignal wird trotzdem mit dem gewünschten Wert überschrieben.

Name

Verfügbar wenn

Standardwert

Gültige Werte

Typ

Beschreibung

Bus-Bezeichner

string

Logischer Name des Bussystems

Modell-Port

string

Port-ID (bspw. „MDL01“) des Modellports, über den der Modellzugriff durchgeführt werden soll. Diese Eigenschaft kann leer bleiben, wenn es genau einen Modellport gibt. Bei mehr als einem Modellport muss diese Eigenschaft gesetzt sein.

Bus-DB

string

Bus-Datenbank (Diese Bus-Datenbank wird üblicherweise aus der Testkonfiguration übernommen. Bitte beachten, dass die Bus-Datenbank nicht automatisch an das Tool übertragen wird, sondern manuell dort hinterlegt werden muss.)

ALIVE Namensschema

‚ALIV*‘

string

Muster zur Erkennung von ALIVE-Signalen. ? dient als Platzhalter für ein Zeichen, * für beliebig viele Zeichen.

CRC Namensschema

‚CRC*‘

string

Muster zur Erkennung von CRC-Signalen. ? dient als Platzhalter für ein Zeichen, * für beliebig viele Zeichen.

Raw-Phys-Umrechnungsverhalten

‚error‘

[‚error‘, ‚identical‘, ‚first‘, ‚firstOrIdentical‘]


Anzeigewerte:

  • ‚error‘: ‚nicht erlaubt‘

  • ‚identical‘: ‚identisch‘

  • ‚first‘: ‚erste Konvertierungsfunktion‘

  • ‚firstOrIdentical‘: ‚erste Konvertierungsfunktion oder identisch‘

string

Konvertierungsregel für Rohwerte in einem Wertebereich ohne spezifizierte Umrechnungsmethode. Diese Einstellung sollte abhängig davon gesetzt werden, wie Signalwerte ohne physikalische Repräsentation im Modell dargestellt werden. Standardmäßig sind diese Werte nicht erlaubt.

Die Option „identisch“ behandelt Rohwerte direkt als physikalische Werte.

Die „erste Konvertierungsfunktion“ wendet die erste definierte Umrechnungsmethode auf den Rohwert auch dann an, wenn sie für diesen Wert nicht definiert ist.

Die Option „erste Konvertierungsfunktion oder identisch“ nutzt vorrangig die erste Umrechnungsmethode. Falls diese nicht existiert, wird stattdessen der Rohwert verwendet.

Rx-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s/Out1‘

string

Muster des Modellpfads zum Lesen eines Signals

Tx-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s/const_const/Value‘

string

Muster des Modellpfads zum Manipulieren eines Signals

Tx-Switch-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s/const_switch/Value‘

string

Muster des Modellpfads zum Schalter für das Manipulieren eines Signals

CRC-Tx-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s_valid/const_const/Value‘

string

Muster des Modellpfads zum Manipulieren eines CRC-Signals

CRC-Tx-Switch-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s_valid/const_switch/Value‘

string

Muster des Modellpfads zum Schalter für das Manipulieren eines CRC-Signals

ALIVE-Tx-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s_valid/const_const/Value‘

string

Muster des Modellpfads zum Manipulieren eines ALIVE-Signals

ALIVE-Tx-Switch-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/%(signal)s_valid/const_switch/Value‘

string

Muster des Modellpfads zum Schalter für das Manipulieren eines ALIVE-Signals

Tx-Frame-Enable-Pfad

‚%(node)s/kommunikation/%(bus)s/%(frame)s/enable/const_const/Value‘

string

Muster des Modellpfads zum Schalter für das Aktivieren und Deaktivieren eines Frames

Fehlenden *-Tx-Switch-Pfad ignorieren

☐

bool

Wenn der *-Tx-Switch-Pfad im Modell fehlt, keinen Fehler erzeugen und zum Zurücksetzen den Wert des *-Tx-Pfads wiederherstellen.

Verhalten beim Zurücksetzen

‚DEFAULT‘

[‚DEFAULT‘, ‚SWITCH_MODEL‘]

string

Ist diese Eigenschaft auf DEFAULT gesetzt, werden beim Zurücksetzen eines Bussignals sowohl Switch- als auch Const-Wert auf ihren initialen Wert gesetzt. Die Einstellung SWITCH_MODEL bewirkt hingegen, dass der Switch immer auf Modellwert zurückgesetzt wird. Der Const-Wert wird hierbei nicht manipuliert.