Beispiel 4 - Erkennung eines Haltepunktes
Beispiel 4 - Erkennung eines Haltepunktes:
Aufgabe:
Um weiterführende statistische Untersuchungen vornehmen zu können, wird der Zustand HALTEPUNKT
benötigt. Dieser soll dann gesetzt werden, wenn am Fahrzeug die Türfreigabe FREIGABE_LI, FREIGABE_RE
gesetzt wird. Aufgrund der örtlichen Gegebenheiten kann es passieren, dass das Fahrzeug ohne die Haltestelle zu verlassen auf eine 2. oder 3. Halteposition aufrücken muss.
Lösung:
Diese Beispiel benutzt die Wegstreckenberechnung aus Beispiel 2.
_doors = FREIGABE_LI || FREIGABE_RE;
_stnDist = DIST_KM - dFF(_doors, DIST_KM); // km
HALTEPUNKT = rsFF(_stnDist > 0.100, _doors);
Verwendete Funktionen
Erläuterung:
-
Variablen für internen Gebrauch sind mit einem
_
als erstes Zeichen gekennzeichnet. Dies verbessert die Lesbarkeit. -
_doors
: Die Türfreigabe kann links oder rechts gesetzt sein. Vielleicht kommen hier noch weitere Bedingungen hinzu. -
_stnDist
: Mit der positiven Flanke auf dem Türfreigabesignal übernimmt dasdFF()
den Datenwert, also den Laufkilometerstand zu diesem Zeitpunkt. Das Ergebnis der Differenz ist der gefahrene Weg seit der letzten Türöffnung. -
HALTEPUNKT
: Die Bedingung Haltepunkt in Form desrsFF()
soll mit der Türöffnung gesetzt werden (set) und wird zurückgenommen, wenn 100m Fahrstrecke zurückgelegt wurden (reset). Diese Wegstrecke ist größer als die Distanz zum Vorziehen auf eine alternative Halteposition. Damit wird dieser Vorgang korrekt behandelt.