DE2728362A1 - Datenverarbeitungssystem fuer fahrdaten - Google Patents
Datenverarbeitungssystem fuer fahrdatenInfo
- Publication number
- DE2728362A1 DE2728362A1 DE19772728362 DE2728362A DE2728362A1 DE 2728362 A1 DE2728362 A1 DE 2728362A1 DE 19772728362 DE19772728362 DE 19772728362 DE 2728362 A DE2728362 A DE 2728362A DE 2728362 A1 DE2728362 A1 DE 2728362A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- line
- distance
- speed
- recorded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000012545 processing Methods 0.000 title claims description 46
- 238000000034 method Methods 0.000 claims description 40
- 208000027418 Wounds and injury Diseases 0.000 claims description 27
- 230000006378 damage Effects 0.000 claims description 27
- 208000014674 injury Diseases 0.000 claims description 27
- 238000004458 analytical method Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000012360 testing method Methods 0.000 claims description 2
- 238000003672 processing method Methods 0.000 claims 6
- 238000011144 upstream manufacturing Methods 0.000 claims 2
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 claims 1
- 230000001186 cumulative effect Effects 0.000 claims 1
- 238000013524 data verification Methods 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 8
- 230000003137 locomotive effect Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 3
- 241000269980 Pleuronectidae Species 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000013479 data entry Methods 0.000 description 2
- 239000007858 starting material Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- QRZAKQDHEVVFRX-UHFFFAOYSA-N biphenyl-4-ylacetic acid Chemical compound C1=CC(CC(=O)O)=CC=C1C1=CC=CC=C1 QRZAKQDHEVVFRX-UHFFFAOYSA-N 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 125000000524 functional group Chemical group 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000013341 scale-up Methods 0.000 description 1
- 125000006850 spacer group Chemical group 0.000 description 1
- 239000004575 stone Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
- G07C5/085—Registering performance data using electronic data carriers
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
- G07C5/0875—Registering performance data using magnetic data carriers
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60L—PROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
- B60L2200/00—Type of vehicles
- B60L2200/26—Rail vehicles
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
- Y02T90/10—Technologies relating to charging of electric vehicles
- Y02T90/16—Information or communication technologies improving the operation of electric vehicles
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Time Recorders, Dirve Recorders, Access Control (AREA)
- Recording Measured Values (AREA)
- Debugging And Monitoring (AREA)
Description
1 ITI. K X
TKMIiIMM M K
τι-:ΐ. ι υ ι
1Α-49 545
Anmelder; Vapor Corporation,
West Howard Street, Chicago, 111. 60648, USA
Titel; Datenverarbeitungssystem für Fahrdaten
809810/0587
»Η.Κ.,.Ι'ΚΓΙ.ΜΛΝΝ s,-,. w ,:.«.i:.,ntiiassk «
mi. i.\<;. η. iikiiiik.vs
τ ι: ι. κ χ Λ -'4 «Ι7Ο
IJl ΓΙ.. IN(J. H.
<;<>Κ'ΓΖ
'Γ Kl. KIi Il \ V M K :
Ι'ΛΤΕΝΤΛΝ'.νΑΐ.ΤΕ J^T ΐ-ικ.ι ι:, ι ι·λ ι KXT M(NClIKN
1Α-49 545
Datenverarbeitungssystem für Fahrdaten
Die Erfindung betrifft ein Datenverarbeitungssystem für Fahrdaten und bezieht sich insbesondere auf das Speichern
von in Fahrzeugen, wie Lokomotiven, Grubenfahrzeugen und anderen Fahrzeugen aufgezeichneten Daten und das Vergleichen
durch einen entsprechend programmierten Computer mit einem vorgeschriebenen Fahrverlauf bzw. -profil.
Ein Aufzeichnungssystem zum Aufzeichnen von Fahrzeugdaten,
wie der Geschwindigkeit, der Entfernung sowie von Betriebsereignissen geht aus den US-Patentschriften 3 864 731 und
3 938 092 hervor. Die dort offenbarte Aufzeichnungsvorrichtung kann Daten, wie Geschwindigkeit, Entfernung, Bremsvorgänge und
sonstige Ereignisse von Fahrzeugen aufnehmen. Die beschriebene Vorrichtung ist an Fahrzeugen aller Art, einschließlich Lokomotiven
anwendbar, auf die sie jedoch nicht beschränkt ist. Die vorliegende Anmeldung ist im Zusammenhang mit einem typischen
Fahrzeug, nämlich einer Lokomotive abgefaßt. Im wesentlichen sind die genannten Patentschriften auf das Aufzeichnen gerichtet,
während sich die vorliegende Beschmbung mit dem Verarbeiten der aufgezeichneten Daten befaßt, welches eine Analyse des Fahrablaufs ermöglicht.
Eine kurze Beschreibung des Standes der Technik findet sich in der US-Patentschrift 3 864 731.
809810/0587
49 545
Das Aufzeichnen digitaler Daten in geeigneter Form beinhaltet die Möglichkeit, die Geschwindigkeit der Lokomotive
und verwandte Daten in Eisenbahnrechnersysteme einzugeben.
Das neu entwickelte System bietet die Möglichkeit viel größerer Flexibilität als die früheren analogen Linienschreibersysteme.
Jetzt wird die Geschwindigkeit, die zurückgelegte Entfernung und Ereignisse t wie die Fahrhebelstellung,
Luftbremsbetätigung und Betätigung der dynamischen Bremse sowie andere Maßnahmen des Zugbetriebes aufgezeichnet. Außerdem
verfügt es über Berührungspunkte mit einem Digitalrechner und eröffnet damit neue Dimensionen sowohl für das Aufzeichnen
als auch das Auswerten des Betriebes eines bestimmten Zuges über einen bestimmten Streckenabschnitt. Das System läßt sich
gleichfalls in anderen Fahrzeugen anwenden. Aus Gründen der Zweckmäßigkeit bezieht sich jedoch die folgende Beschreibung
als Beispiel auf eine Lokomotive.
Die langen unhandlichen Streifenrollen werden durch Einsteckpatronen ersetzt die auch das Übertragen der Daten
an eine Datenfernübertragungs- und Verarbeitungsanlage der Eisenbahn ermöglichen. Damit kann ausgewertet werden, wie ein
Zug gefahren wird, es können Ausnahmeberichte über die Geschwindigkeit oder über Ereignisse erstellt werden, und es
können Bedingungen vor dem Trennen eines Zuges oder vor dem Entgleisen festgestellt werden.
Die versiegelten Patronen sind mit Magnetband in endloser Schlaufe versehen und umfassen die Köpfe und alle
beweglichen Teile. Das Band selbst ist erneut verwendungsfähig. Es kann in eine elektronische Überwachungs- und Aufzeichnungseinheit
an Bord der Lokomotive eingesteckt werden, die mit den Fühlern für die Geschwindigkeit und Ereignisse
Ö09810/05Ö?
49 545
verbunden ist«.
Sobald die Information aufgezeichnet ist, wird die Patrone einfach aus der Aufzeichnungseinheit in der Lokomotive
herausgenommen und in die Wiedergabeeinheit eingesteckt. Die Wiedergabeeinheit ist entweder unmittelbar mit einem Computer
verbunden oder mit einer Datenstation, so daß die auf dem Band enthaltene Information über das Datenfernübertragungssystem
der Eisenbahn an eine Datenzentrale übertragen werden kann. An der Datenzentrale wird die Information als
Teil des Datensystems der Eisenbahn gespeichert. Gemäß der Erfindung werden die gespeicherten Daten bezogen auf bestimmte
Abschnitte einer Eisenbahnlinie verarbeitet. Der Computer kann die Analyse vornehmen und zugehörige Ausdrucke erstellen,
die den Bedürfnissen der Zugleistung angepaßt sind und die als genormte Abweichungsberichte und/oder als Sonderberichte
auf Anfrage abgegeben werden.
Drei Elemente von Daten werden in vorherbestimmten Intervallen der zurückgelegten Entfernung aufgezeichnet,
nämlich die Geschwindigkeit, die seit der vorhergehenden Aufzeichnung zurückgelegte Entfernung und der Ereigniszustand.
Solange die Zuggeschwindigkeit und der Ereigniszustand
konstant bleiben, wird keine Auskunft in das Band gefüttert; aber die Zählung der seit der letzten Aufzeichnung
zurückgelegten Entfernung wird vom Überwachungssystem aufrechterhalten. Tritt eine Geschwindigkeitsänderung oder eine
Änderung des Ereigniszustandes ein, so erfolgt eine Aufzeichnung auf dem Band, und die neuen Daten werden im Speicher gespeichert.
Eine Ereignisposition ist für die Aufzeichnung des 809810/0587
ΦΟ 545
SO
"Kennzeichens" reserviert. Bei dem Kennzeichen handelt es sich um ein Sonderereignis, das beispielsweise auf eine im
Gleisbett vergrabene Magnetspule anspricht. Die Stelle, an der sich die Magnetspule befindet, ist als Teil der Stammprofildaten
gespeichert und ermöglicht deshalb eine automatische Zuordnung der aufgezeichneten Streckendaten zu den
Stammdaten zur Analyse anhand des tatsächlichen Meilensteins, bei dem es eich natürlich auch um einen Kilometerstein handeln
kann. Alle zur Identifizierung benötigten Informationen für jede gegebene Gleisstrecke werden in der Datenzentrale
aufbewahrt.
Wenn die Daten einer bestimmten Fahrt in den Rechner eingegeben werden, erhalten sie eine Bezugsbezeichnung und
werden in einer entsprechenden Speichervorrichtung gespeichert, die dem Rechner zur Verfügung steht.
Die Daten können dann auf verschiedene Weise analysiert werden. Auf Anfrage können grafische Darstellungen
oder Zeichnungen über ein Eingabesystem mit einer Tastatur erzeugt werden, die die Geschwindigkeit und den Ereigniszustand
zwischen speziellen Stellen angeben. Es können auch Ausnahmeberiehte erstellt werden, die Abweichungen von festgelegten
Betriebsnormen anzeigen.
Kurz zusammengefaßt läßt sich also sagen, daß Daten an Bord eines Fahrzeugs aufgezeichnet werden, zu denen beispielsweise
die Pahrzeuggeschwindigkeit, die zurückgelegte Entfernung und ein vorherbestimmter Satz an Betriebsereignissen
gehören. Die Daten werden an einen Rechner weitergegeben, dessen Programm diese mit einem vorherbestimmten Profil vergleicht
und eine Analyse der Fahrzeugleistung durchführt.
Im folgenden ist die Erfindung mit weiteren vorteilhaften Einzelheiten anhand schematischer Zeichnungen näher
erläutert. Es zeigen:
609810/0567
49 545
31
Pig. 1 ein Blockfliesdiagramm des grundlegenden Datenverarbeitungssysterns
gemäß der Erfindung;
Fig. 2 ein Blockfliessdiagramm des Hauptprogramms gemäß
der Erfindung;
Fig. 3 ein Blockfliessdiagramm der Zeichen-Routine gemäß der Erfindung;
Fig. 4 ein Ausdruckmuster von Daten, die nach dem
Hauptprogramm der Erfindung verarbeitet wurden;
Fig. 5 ein Blockfliessdiagramm der Analyse-Routine gemäß der Erfindung;
Fig. 6 ist ein Blockfliesediagramm der Lade-Routine zum Eingeben von Streckendaten aus einem
Hilfsspeicher in den Computerspeicher, wo die Daten später gemäß der Erfindung verarbeitet
werden;
Fig. 7 ist ein BlockfliesBdiagramm der Umwandlungs-Routine
zum Eingeben von Stammdaten in den Computerspeicher zur Verarbeitung gemäß der Erfindung;
Fig. 8-16 sind Listen von Ursprungsanweisungen der
Rechnerprogrammstufen, die sich auf die oben genannten FliesBdiagramme beziehen.
In den Zeichnungen zeigt Fig. 1 das Datenverarbeitungssystem
gemäß der Erfindung. Von einer Eingabe/Ausgabe-Station
10 werden aufgezeichnete Daten, die in einem Plattenspeicher 12 gespeichert werden sollen, übertragen. Die Sta-
809810/0587
49 545
tion 10 kann z.B. eine Vorrichtung sein, die als Execuport der 510er Reihe bekannt ist und von der Firma Computer Transceiver
Systems, Inc. hergestellt wird. Wie bereits erwähnt, liest die V/iedergabeeinheit die an Bord eines Fahrzeugs (Lokomotive)
aufgezeichneten Daten und ist unmitteltar in die Station 10 eingekoppelt. Abgesehen von der oben erwähnten
Station können auch andere Fernübertragungsstationen und Systeme verwendet werden, die mit dem Rechner in Verbindung stehen.
Die aufgezeichneten Streckendaten werden auf dem Plattenspeicher 12 als kontinuierlicher Strom von Bytes
(Zeichen) gespeichert. Damit die übertragenen Daten an ein allgemeines Computerprogramm angepaßt sind, durchlaufen die
Streckendaten eine Umwandlung mit Hilfe eines zweckmäßigen Programms 14. Als Beispiel sei erwähnt, daß ein geeigneter
Rechner ein IBM-Computer der 36O/37Oer Reihe sein kann, Das
Programm 14 zum Umwandeln ist in PL-1-Sprache programmiert. Y/enn die übertragenen Daten übernetzt oder umgewandelt worden
sind, werden sie als eine Reihe von numerischen Daten in einem anderen Plattenspeicher 16 gespeichert. Das Hauptprogramm
18 verarbeitet dann die Streckendaten. Bei einem typischen Anwendungsfall des in Figo 1 gezeigten Datenverarbeitungssystems
vergleicht das Hauptprogramm 18 die Streckendaten 16 mit den Stammprofildaten 24. Stammdaten, wie Geschwindigkeitsbegrenzungen,
erforderliche oder eingeschränkte Ereignisintervalle usw. werden in einem Plattenspeicher
gespeichert. Ein "Lade"-Programm 22 prüft die Hauptdaten auf Fehler, wandelt sie in einen internen Maschinencode um und
speichert sie in einem Plattenspeicher 24. Das Ladeprogramm ist gegenwärtig ebenso wie das Hauptprogramm 18 in der Fortran-Sprache
geschrieben. Das Hauptprogramm 18 liefert die Analyse der Streckendaten bezogen auf die Stammdaten. Entsprechend
verschiedenen Operatoranforderungen können verschiedene Berichte 26 an der Eingabe/Ausgabe-Station 10 ausgedruckt
werden.
B09810/0SS?
49 545
Pig. 2 zeigt den logischen Fluß des Hauptprogramms
18 allgemein. Die Bezugszeichen neben den Blöcken entsprechen den Zeilenzahlen in der Liste der Ursprungsanweisungen
des Computerprogramms, die weiter unten im einzelnen erläutert wird.
Der Block 1000 des Hauptprogramms erstellt und bestimmt die variablen und Konstanten, die im Verlauf des gesamten
Programms verwendet werden.
Block 2000 steuert die Eingabe von Streckendaten aus der äußeren Speichervorrichtung in den Hauptspeicher. Dann
werden die Daten interpretiert und für die Verarbeitung vorbereitet.
Block 3000 steuert in ähnlicher V/eise die Eingabe der Stammprofildaten aus der äußeren Speichervorrichtung in
den Hauptspeicher und bereitet in ähnlicher Weise die Stammdaten für die Verarbeitung vor.
Block 4000 ist ein Entscheidungsblock, der den Gesamtbetrieb des Hauptprogramms steuert.
Nach der Eingabe der anfänglichen Strecken- und Stammdatensätze in den Hauptspeicher können die verschiedenen
Verarbeitungsoptionen vom Operator gewählt werden. Der Operator kann z.B. "Ende" zur Beendigung des Programms oder
"Aus" eingeben, um sowohl das Programm zu beenden als auch die Station von der Verbindungsleitung zu trennen.
Im Block 5000 kann der Operator wählen, die Daten analysieren zu lassen, wodurch die Analyse-Routine bzw. BefehlBfolge
die aufgezeichneten Streckendaten mit den Stammprofildaten vergleicht und einen Bericht über Geschwindigkeits-
oder Ereignisverletzungen ausdruckt.
809810/0587
49 545
Im Block 7000 kann der Operator eine grafische Darstellung wählen, um eine Zeichnung der Geschwindigkeit und
Ereignisse zusammen mit der Geschwindigkeitsbegrenzung z.B. gegenüber den Meilensteinen oder der zurückgelegten Entfernung
zu erhalten.
Eine weitere Verarbeitungsoption 28 ermöglicht es dem Operator die laufenden Streckendaten und/oder Stammdaten
erneut einzugeben oder durch einen neuen Satz zu verarbeitender Daten zu ersetzen (dies stellt eine Wiederholung
der Blöcke 2000 und 3000 dar).
Im Block 9000 kann der Operator wählen daß eine detaillierte Untersuchung der Daten im Hauptspeicher vorgenommen
wird.
Die Lade-Routine für Streckendaten ist in Fig. 6 bzw. Block 2000 in Fig. 2 gezeigt. Hauptaufgabe dieser Befehlsfolge
ist es, die gewünschten aufgezeichneten Streckendaten aus dem Hilfsspeicher in den Hauptspeicher zu bringen
und zur Verarbeitung vorzubereiten. Eine Entscheidungsstufe 2001 ermöglicht es, diese Befehlsfolge zu umgehen, wenn die
Streckendaten bereits während eines vorherigen Durchlaufs durch diese Befehlsfolge eingegeben wurden. Ist ein Laden
bzw. eine Eingabe nötig, so wird der erste Wert des Datensatzes eingelesen 2005, um festzustellen, welche Art von Datensatz
verarbeitet wird 2004. Ist der Wert Null, so enthält der Datensatz Daten, die bereits vorher vom Hauptprogramm
verarbeitet und zurückgehalten wurden. Wenn das der Fall ist, erfolgt ein einfaches erneutes Laden 2006 der Streckendaten.
Ist der erste Wert des Datensatzes nicht Null, so enthält der Datensatz unverarbeitete Daten direkt aus dem
Umwandlungsprogramm und muß also interpretiert werden 2040, nachdem er eingelesen wurde 2011.
In jedem Fall sucht diese Befehlsfolge den Datensatz ab 2165, um die beiden ersten Bezugskennzeichen unter den Da-
809810/OSS7
as
49 545
ten festzustellen, welche benötigt werden, um die Daten mit dem Hauptprofil auszurichten und genau den Abstand festzulegen,
den jede Aufzeichnung darstellt, und der als Datenskala bezeichnet wird. Dies Merkmal ermöglicht es dem Programm,
Daten zu verarbeiten, ohne die Fahrzeugradgröße kennen zu müssen.
Nach dem Laden des Streckendatensatzes geht das Programm weiter zum Laden der Stammdaten-Routine (Pig. 11 und
Block 3000 in Fig. 2). Diese Befehlsfolge hat die gleiche Funktion, nämlich die Stammprofildaten aus dem Hilfsspeicher
in den Hauptspeicher zu bringen \ind für die Verarbeitung vorzubereiten.
Eine Entscheidungsstufe 3040 erlaubt ebenfalls, diese Befehlsfolge zu umgehen, wenn bereits Stammdaten aus einem
vorherigen Durchlauf durch die Befehlsfolge vorhanden sind. Ist ein Ladevorgang nötig, so werden die Daten in den
Hauptspeicher gelesen 3050 und die beiden ersten Stammkennzeichen werden festgestellt 3120.
Nach dem Eingeben der Streckendaten und der Stammdaten
werden die beiden ersten Kennzeichen aus jedem Datensatz benutzt, um die Streckendaten mit den Stammdaten auszurichten
3350. Die ersten Kennzeichen jedes Datensatzes werden
als absoluter Bezugspunkt herangezogen, der die aufgezeichneten Daten gegenüber dem Stammprofil in ihrer Lage bestimmt.
Die zweiten Kennzeichen jedes Datensatzes werden dann dazu verwendet, die Skala der aufgezeichneten Daten festzulegen.
Nun können aufgezeichnete Streckendaten analysiert und grafisch dargestellt werden in Bezug auf tatsächliche Meilensteine,
denen während der Fahrt begegnet wurde.
Die Analyse-Routine ist in den Fig. 4 und 5 und Block 5000 in Fig. 2 dargestellt. Das Endergebnis dieser
Befehlsfolge zum Analysieren ist die VerletzungstabeHe,
809810/0587
49
von der ein Beispiel 29 in Pig. 4 dargestellt ist.
Jede Zeile der Tabelle stellt eine einzige kontinuierliche Geschwindigkeitsverletzung dar und enthält die
nötige Information zum Zusammenfassen der Verletzung.
In der ersten Zeile 39 der Tabelle ist angegeben,
daß das Fahrzeug die Geschwindigkeitsbegrenzung vom Meilenstein 42 bis zum Meilenstein 62 verletzt hat und daß die maximale
Übertretung von 20 Meilen pro Stunde über die Begrenzung von 60 Meilen pro Stunde hinaus am Meilenstein 46„5 erfolgte.
Ehe die Analyse vorgenommen wird, fordert die Befehlsfolge die Geschwindigkeitsverletzungstoleranz 34 an,
die die Anzahl Meilen pro Stunde festlegt, um die die Geschwindigkeit die Geschwindigkeitsbegrenzung überschreiten
muß, ehe die zu hohe Geschwindigkeit als Verletzung betrachtet
wird. Eine Antwort von NuI] 36 gibt an, daß es keine Toleranz gibt. Bei Beendigung der Analyse druckt diese Befehlsfolge die Gesamtanzahl relevanter Verletzungen 40 und die
Gesamtanzahl zurückgelegter Meilen während der Geschwindigkeitsverletzung 41 aus.
Wurden keine Verletzungen festgestellt, so wird lediglich ausgedruckt "keine Geschwindigkeitsverletzungen wahrgenommen"
.
Das Pliesschema gemäß Pig. 5 zeigt, wie die Befehlsfolge die Toleranz abfragt und einliestyuna die Variablen
erstellt 5010, die von dieser Befehlsfolge verwendet werden.
Dann vergleicht diese Befehlsfolge die aufgezeichneten Daten Abschnitt für Abschnitt mit dem Stammprofil, um
die Verletzungstabelle aufzubauen.
809810/0587
49 545
Eine Entscheidungsstufe 5054 bestimmt, welcher Datensatz vorgerückt oder auf den neuesten Stand gebracht, d.h.
11 auf datiert" werden muß, damit der nächste Streckenabschnitt
verarbeitet werden kann. Nach dem Aufdatieren der Streckendaten 5058 oder der Stammdaten 5020 vergleicht diese Befehlsfolge die Geschwindigkeit mit der Geschwindigkeitsgrenze 5330
und hält die in der Verletzungstabelle auszudruckende Information aufrecht. Wenn der eine oder andere Datensatz nicht
weiter vorgerückt werden kann, besteht ein Zustand, bei dem keine Daten mehr vorhanden sind, und die Befehlsfolge ist
angewiesen die Zusammenfassung auszudrucken 5570 und die Ansteuerung für die nächste Verarbeitungsanfrage an den Block
4000 zurückzugeben.
Die Befehlsfolge für die grafische Darstellung ist als Zeichen-Routine in Figo 3 und 4 und Block 7000 in Fig. 2
dargestellt. Das Endergebnis jedes Durchlaufs dieser Befehlsfolge ist eine grafische Darstellung der Geschwindigkeit, Geschwindigkeitsbegrenzung
und des Ereigniszustands gegenüber der Entfernung oder dem Meilenstein, wie bei dem in Figo 4
gezeigten Ausdruck-Muster einer Zeichnung0
Die Befehlsfolge fragt die Zeichnungsgrenzen ab 42, die den Anfangs- und Endmeilenstein für die laufende grafische
Darstellung angeben, sowie die Zeichnungsskala 43, die
die Auflösung der grafischen Darstellung angibt. Die Skala kann als positive ganze Zahl, die die Zeilen pro Meile angibt,
oder als negative ganze Zahl eingetragen werden, die die Meilen pro Zeile angibt; ein Wert von Null ist nicht erlaubt.
Der Meilenstein für jede Zeile der Zeichnung ist am linken Rand der Seite angegeben 46, und auf ihn folgt der
Ereigniszustand 48 an diesem Meilenstein. Der Ereigniszustand
ist im vorliegenden Fall von bis zu vier Zeichen dargestellt, die jeweils das Vorhandensein eines bestimmten Ereignisses
darstellen 50. Rechts von der senkrechten Begren-
B09810/058?
49 545
-Vi-
zung 52 ist die Geschwindigkeit durch einen Stern * 62 und
die Geschwindigkeitsbegrenzung durch ein Dollarzeichen # 60 dargestellt. Die Geschwindigkeit hat Vorrang gegenüber der
Geschwindigkeitsbegrenzung, falls beide Zeichen auf die gleiche Ausdruckstelle 63 fallen sollten.
Die horizontale Skala für die Geschwindigkeit und Geschwindigkeitsbegrenzung
beträgt zwei Meilen pro Stunde pro Ausdruckstelle, wie durch die horizontalen Begrenzungen 44
und 55 angedeutet.
Aus dem Pliesschema der Zeichen-Routine gemäß Pig»
geht hervor, daß diese Befehlsfolge die Geschwindigkeitsbegrenzungen
und die Skala anfordert und einliest 7030 und dann die Variablen festlegt, die von dieser Befehlsfolge
verwendet werden sollen, z.B. den Anfangsmeilenstein 7160. Der Stammdatensatz wird vorgerückt, um die neue Geschwindigkeitsbegrenzung
zu erhalten 7332. Der Abstand des Stammdatensatzes wird verglichen mit dem Abstand der gegenwärtigen
grafischen Darstellung, um festzustellen, ob die Stammdaten auf den gegenwärtigen Meilenstein zutreffen 7300, falls das
nicht der Pail ist, wird der Stammdatensatz weiter vorgerückt
7320.
Ist der Stammdatensatz ausreichend weit vorgerückt worden, erfolgt ein ähnlicher Vorgang mit dem Streckendatensatz
7310 und 7320. Wenn versucht wird, den einen oder anderen Datensatz über seinen Endpunkt hinaus vorzurücken,
wird diese Befehlsfolge beendet 7540. Wenn die benötigte Information aufgefunden wurde, wird die laufende Zeile der
grafischen Darstellung ausgedruckt 7480. Der Abstandswert
der nächsten Zeile wird errechnet 7520 und es wird geprüft, ob dieser Abstand den endgültigen Abstand überschreitet
7530, denn in diesem Fall ist die Anfrage nach einer grafischen Darstellung erledigt und die Befehlsfolge beendet 7540.
Wurde die Anforderung nicht befriedigt, so geht die Befehls-
809810/0587
49 545
folge weiter, um die Auskunft für den neuen laufenden Meilenstein zu erhalten 7300.
Die Detaill-Routine gemäß Block 9000 in Figo 2 enthält
eine Anzahl kleinerer Routinen oder Befehlsfolgen, die spezialisierte Datenverarbeitungsoptionen bieten und zur
Konstatierung und Nachprüfung des Programms und der Hardware beitragen. Da diese Befehlsfolgen größtenteils nach Wunsch
des Kunden konstruierte Module und/oder unwesentliche Bestandteile für den Rest des Programms sind, werden sie hier
nicht weiter erläutert.
Die in Fig. 7 dargestellte Umwandlungs-Routine bildet eine Software-Berührungsfläche zwischen der Hardware und
dem Hauptprogramm. Hauptaufgabe dieser Befehlsfolge ist es, eine Umwandlung der Code- und Datenanordnung an den unverarbeiteten,
übertragenen Streckendaten vorzunehmen, damit diese an die Standarddatenform angepaßt werden, die für das
Hauptprogramm akzeptabel ist.
Die Umwandlung erfolgt durch Übersetzung jedes einzelnen der 8-Bit ASCII-Eingabezeichen in einen entsprechenden
numerischen ganzen Wert, und dann wird ein "Nachschlagstabe llenverfahren" angewendet, um den entsprechenden Ausgabewert
abzuleiten. Ungültige Eingabezeichen werden in einen
Ausgabewert -1 umgewandelt. Das bedeutet, daß stark unterschiedliche Eingabecodes und Datenanordnungen ohne weiteres
vom Hauptprogramm erledigt werden können, indem lediglich eine andere Umwandlungstabelle und/oder eine geringfügig andere
Version des Umwandlungsprogramms angewendet wird.
Unter Hinweis auf die Fig. 8 bis 16 wird nun die Programmursprungsliste beschrieben, die die Befehlsschritte
enthält, welche nötig sind, damit die oben beschriebenen Verarbeitungsroutinen
oder Befehlsfolgen in einem Digitalrechner
809810/0587
49 545
durchgeführt werden können. Die Zahlen in den Fliesdiagrammen entsprechen den Zeilenzahlen in der linken Spalte der
Befehlslisten.
Die Befehlsliste des Umwandlungsprogramms (Fig. 12)
ist in der PL-1 Standardsprache geschrieben.
Zeile 100:
CONVERT: PROCEDURE:
bestimmt den Beginn des Programms oder Verfahrens und legt dessen Namen als "Convert" fest.
Zeile 110 bis 170:
DECLARE CONVTABLE ENVIRONMENT (LINE) INPUT,
(TAPUNF, DATAFILE) ENV (INTERNAL), BYTE (0:0) CHAR (1), CHUNK CHAR (18), TABLIIiDX (0:0)
FIXED (9), FILL CHAR (3), TUFLCHAR CHAR (1), TABLE (0:2555) FIXED (9), (SUBSCRPT, VALUE,
POSITION) FIXED (9), SOURCE, DESTIN) CHARACTER (8)
dienen zur Bestimmung der verschiedenen Variablen und Konstanten zur Verwendung im Verlauf des
ganzen Programms, wobei deren Speichererfordernisse und die Art und Länge der Daten, die sie
enthalten sollen, erklärt werden.
Zeile 180:
OH ENDFILE (TAPUNF) GO TO ENDUP diese Aussage weist das Programm an, die Ansteuerung
an die Aussagen hinter dem Feld "endup" weiterzugeben, wenn der Versuch unternommen
wird, über das Ende des "tapunf" (Eingabe-) Datensatzes hinauszulesen. Dieser Zustand
tritt unmittelbar nach Verarbeitung aller Eingabedaten ein.
809810/0587
49 545
Zeile 190:
ON ERROR GO TO FETCH
diese Aussage weist das Programm an, die Ansteuerung
auf die Aussage nach dem Feld "fetch" weiterzugeben, wenn zu irgendeinem Zeitpunkt das Programm auf einen Fehlerzustand
trifft.
Zeile 200:
FETCH : K = 0
dies ist der tatsächliche Beginn des Programms. Hier ist "fetch" ein Feld, welches von der "on
error"-Aussage benutzt wird, um die Ansteuerung weiterzugeben, wenn ein Fehler aufgetreten ist.
Mit K = 0 wird die Zeichenzählung auf Null zurückgestellt.
Zeile 220:
/* OPEN INPUT FILE (TAPUNF) */ dies ist eine Kommentarzeile, die die Funktion
der vier folgenden Zeilen 230 bis 260 beschreibt. Der Eingabedatensatz wird identifiziert
als "tapunf".
Zeile 230:
PUT LIST (INPUT FILE)
verursacht den Ausdruck der Mitteilung "input file" am Stationsdrucker.
Zeile 240:
GET FILE (SYSIN) LIST (SOURCE) verursacht den Ausdruck eines Fragezeichens
(?) am Drucker, woraufhin das Programm auf die Antwort des Operators wartet. Der Operator
gibt den Namen des Datensatzes über die Tastatur ein, der dann in der Variablen "Source"
gespeichert wird.
809810/0587
'9 545
33,
Zeile 250:
PUT PILE (SYSPRINT) LIST (SOURCE) weist das Programm an, die Eingabe der Tastatur
zum Drucker zurückzuverweisen um sicherzustellen, daß der richtige Name des Datensatzes
empfangen wurde.
Zeile 260:
OPEN PILE (TAPUNP) TITLE (SOUECE) INPUT versucht eine Verbindung zwischen dem Programm
und der äußeren Speichervorrichtung herzustellen, die den angeforderten Datensatz enthält
und den Datensatz zur Weiterverarbeitung vorzubereiten. Wenn diese Verbindung nicht hergestellt
wird, erscheint der Fehlerzustand.
Zeile 280:
/* OPEN OUTPUT PILE (DATAPILE) */ ist eine Kommentarzeile ähnlich der Zeile 220.
Der Ausgabedatensatz wird identifiziert als "DATAPILE".
Zeile 290:
PUT SKIP (2) LIST (OUTPUT PILE): verursacht, daß das Papier im Drucker um zwei
Zeilen vorgerückt und die Mitteilung "OUTPUT PILE" ausgedruckt wird.
Zeile 300:
GET PILE (SYSIN) LIST (DESTIN) fordert an, daß über die Tastatur das Ziel für
die Ausgabe aus dem Convert-Programm eingegeben wird. Der Name des Ausgabedatensatzes wird in
der Variablen "destin" gespeichert. Dieser Datensatz 16 erhält die umgewandelten Daten nach
der Verarbeitung durch das Convert-Programm.
809810/0587
49 545
33
Zeile 305:
IP DESTIH = " THEN DESTIN = 1SYSPRINT1
ist eine Bedingungsstufe, d.h., wenn kein Name
eines Datensatzes über die Tastatur eingegeben wurde, wird die Ausgabe dem Drucker des
Systems, in diesem Fall der Station zugeordnet. Diese Option ermöglicht eine visuelle Inspektion
der umgewandelten Daten, was besonders erwünscht ist, um alle Fehler aus dem Betrieb des
Systems zu entfernen bzw. den Systemablauf zu überprüfen.
Zeile 310:
PUT FILE (SYSPRINT) LIST (DESTIN) verursacht, daß die Tastatureingabe zur Verifizierung
des Namens des Ausgabedatensatzes zurückverwiesen wird.
Zeile 320:
IF DESTIN = 'SYSPRINT1 THEN PUT SKIP; ELSE
ist eine Bedingungsstufe, d.h. wenn das Ziel der Ausgabe der Drucker des Systems sein soll,
muß das Papier des Druckers auf den Anfang einer neuen Zeile eingestellt werden, sonst wird
der folgende Schritt durchgeführt.
Zeile 330:
OPEN FILE (DATAFILE) TITLE (DESTIN) OUTPUT versucht, eine zweite Verbindung mit der Speichervorrichtung
herzustellen, und zwar diesmal für den Ausgabedatensatz. Wiederum erscheint der Fehlerzustand, wenn der Versuch fehlschlägt.
Zeile 350:
/♦ ASSIGN TABLE DEFAULT VALUE */ TABLE = -1 ist teilweise ein Kommentar, der anzeigt, daß
die Aussage "table = -1" alle 256 Reihen der Tabelle auf einen Anfangswert von -1 einstellt.
809810/0587
49 545
Zeile 360:
TABLINDX (1) = 0
teilt dem ersten Element des Tablindx den Wert Null zu.
Zeile 380:
/* LOAD GOIiVBRSION TABLE */ ist ein Kommentar, der die nächste durchzuführende
Aufgabe beschreibt, nämlich das Laden der Werte der Umwandlung stäbe He in den
Hauptspeicher. Die Tabelle besteht aus zwei Spalten. Die linke Spalte ist die numerische
Darstellung des Eingabedatenzeichens, während die rechte Spalte die numerische Darstellung
des entsprechenden Ausgabedatenwertes isto
Zeile 390:
OPEN FILE (CONVTABL)
stellt eine dritte Verbindung mit der Speichervorrichtung her, um die UmwandlungstabeHe
für die Weiterverarbeitung vorzubereiten,,
Zeile 400:
ON ENDPILE (CONVTABL) TO TO ENDLOAD legt fest, daß wenn das Ende der Umwandlungstabelle wahrgenommen wird, das Programm mit
der Verarbeitung am Feld "endload" fortfahren soll.
Zeile 410:
READ: GET FILE (CONVTABL) LIST (SUBSCRPT, VALUE) verursacht, daß zwei Werte aus der Speichervorrichtung
gelesen und an den Stellen "subscrpt" und "value" im Speicher angeordnet
werden sollen.
Zeile 420:
TABLE (SUBSCRPT) = VALUE; GO TO READ
809810/0587
40 545
trägt den "value" in die Tabelle an der durch die Variable "subscrpt" bestimmten Zeile ein.
Alle Zeilen der Tabelle, die nicht auf diese Weise modifiziert werden, behalten ihren ursprünglichen
Wert von -1 bei, was ein nicht zugeteiltes Konversionspaar anzeigt. Mit "go to read"
wird die Ansteuerung zum Feld "read" weitergegeben, damit das nächste Datenpaar verarbeitet
werden kann.
Zeile 430:
ENDLOAD : IP DESTIN = "SYSPRINT" THEN GO To LISTFILE
prüft das Ziel für die Ausgabedaten und gibt die Ansteuerung an das Feld "listfile" weiter, wenn
eine Druckerausgabe angefordert wurde, andernfalls ist die Verarbeitung mit dem nächsten Befehl
in der Reihenfolge fortzusetzen.
Zeile 450:
/* CONVERT FILE */
ist eine Kommentarzeile, die die Funktion der folgenden Aussagen angibt0
Zeile 460:
LOOP : GET FILE (TAPUNF) LIST (CHUNK) legt das Feld "loop" fest und bewirkt, daß die
nächste Gruppe aus 18 Zeichen aus der Speichervorrichtung gelesen und in die Variable "chunk"
gegeben wird, um die Umwandlung vorzubereiten.
Zeile 470:
DO POSITION =1 to 18
bewirkt, daß das Programm eine Anzahl der aufeinanderfolgenden Schritte wiederholt, und zwar einmal
für jedes der 18 Zeichen in der Variablen "chunk".
809810/0587
49 545
Zeile 480:
TUPLGHAR = BYTE (POSITION)
teilt eins der 18 Zeichen (durch den Wert der Variablen "position" bestimmt) der Variablen
"Tuflchar" zur zeitweiligen Speicherung zu und erzeugt damit ein volles Wort in numerischer
Darstellung (aus dem einzigen Byte-Zeichen aus dem "chunk") zur Verwendung als in die Umwandlungstabelle
einzugehender Index.
Zeile 490:
PUT PILE (DATAPILE) LIST (TABLE) (TABLINDX (1) ) bewirkt, der Wert in der Umwandlungstabelle,
der vom Wert des Tabellenindexes bestimmt ist,
in der äußeren Speichervorrichtung aufgezeichnet wLrd~ Zur Wiederholung werden
die Zeilen 480 und 490 mehrmals durchgeführt, und zwar je einmal für jedes der 18 Zeichen
im "chunk", wie durch die DO-Aussage spezifiziert. Die Variable K sorgt für das Zählen
der Anzahl derartiger "chunks", die verarbeitet worden sind.
Zeile 500:
END ; K = K + 1 ; GO TO LOOP
Die "end"-Aussage beendet den Bereich der vorhergehenden "DO"-Aussage. K = K + 1 erhöht die
Zeichenzählung, und "go to loop" verschiebt die Ansteuerung zu dem Feld "loop" um den
nächsten "chunk" von Daten zu verarbeiten.
Zeile 520 bis 570:
üben die gleiche Punktion der Datenumwandlung aus wie die Zeilen 450 bis 500, nur ist in diesem
Fall die Ausgabe an den Drucker statt an eine äußere Speichervorrichtung gerichtet.
809810/0587
3?
Zeile 590:
/* EXIT */
Exit ist eine Kommentarzeile, die die Funktion der letzten vier Zeilen des Programms angibt.
Zeile 600:
EI-IDUP : K = K * 18
legt das Feld "endup" für die Aussage des Endes des Datensatzes fest und errechnet den neuen
Wert für K, der der Anzahl von chunks multipliziert mit der Anzahl von Zeichen pro chunk
(18) entspricht, wodurch man die Gesamtanzahl verarbeiteter Zeichen erhält, die im laufenden
Anwendungsfall bis zu 30.000 reichen kann.
Zeile 610:
PUT SKIP (2) LIST (K, 1OIiARACTERS LOADS' )
bewirkt, daß das Papier vorgerückt und der Wert von K ausgedruckt wird, worauf die Aussage
"characters loaded" folgt.
Zeile 62G:
CLOSE FILE (CONVTABL), FILE (DATAFILE), FILE (TAPUNF)
dient dazu, die hergestellten Verbindungen mit den Speichervorrichtungen, die die drei Datensätze
enthalten, aufzulösen.
Zeile 630:
END CONVERT
bedeutet das Ende des Programms und informiert den Programmerzeuger (Compiler),daß keine weiteren
Befehle zu berücksichtigen sind.
Infolge des Umwandlungsverfahrens sind die Eingabedaten im Code umgewandelt und neu angeordnet
worden. Während die Eingabe eine Serie von 8-bit-Zeichen war, ist das Ergebnis eine Serie
809810/0587
49 545
27P8362
von 4-byte numerischen ganzen Zahlen, die dann
zusammen mit einer der üblichen Programmiersprachen bearbeitet v/erden können. Die Umwandlungstabelle
hat eine Übersetzung oder Umwandlung von 1 : 1 aus dem Eingabecode in den gewünschten
Ausgabecode geliefert, wodurch die weitere Datenverarbeitung, in diesem Fall durch
das "Main"-Programm erleichtert wird.
Wie Pig. 1 zeigt,werden die umgewandelten
Streckendaten 16 vom Hauptprogramm 18 gemeinsam mit den Stammprofildaten 24 behandelt. Der
Streckendatensatz 16 enthält die aufgezeichnete Entfernungs-, Geschwindigkeits- und Ereigniscodeinforraation,
die im Speicher in logischer Anordnung sein muß. Dann muß das Hauptprogramm die Daten verarbeiten, um die verschiedenen grafischen
Darstellungen und Berichte zu erzeugen. Die Befehlslisten für das Hauptprogramm finden
sich in den Pig. 8 bis 16. Pig. 2 zeigt ein allgemeines Fliesschema für das Hauptprogramm. Pig.
9 und 10 enthalten die Einrichtungs- und hauptsächlichen Steuerfunktionen des Hauptprogramms.
Zeile 1020:
INTEGER *2 TAPE (30000), DATA (3,10000, TM/30000 NT/10000/, ?i
Der Ausdruck "INTEGER *2" bedeutet, daß zwei Bytes (ein Halbwort) der Speichervorrichtung
für jede der genannten Variablen reserviert sein muß. Die erste definierte Variable ist
"TAPE" mit 30.000 Elementen. In der Speichervorrichtung ist also für 30.000 Halbwörter zur
Aufnahme der aus dem Eingabedatensatz 16 (Pig. 1) gelesenen Daten Vorsorge getroffen. Die
Variable "DATA" soll eine zweidimensionale An-
809810/0587
Ordnung in einer Länge von 10.000 Zeilen und einer Breite von drei Spalten sein, die den
Abstände-, Geschwindigkeits- bzw. Ereigniscode
darstellen. Die Variable "TM" soll den Wert 30.000 haben und bedeutet die maximale Anzahl
an Eingabezeichen, für die in der Speichervorrichtung Platz ist. Auch NT bedeutet die maximale
Anzahl erlaubter Datenaufzeichnungen. Die durchwegs erscheinende "9" bedeutet, daß die
Programmaussage in der folgenden Zeile fortgesetzt ist.
Zeile 1030:
ist eine Portsetzung der vorhergehenden Zeile und errichtet in ähnlicher Weise eine Speicherung
für das Stammdatenprofil aus 24 (Figo 1). Auch die Stammdaten haben in ähnlicher Weise
drei Spalten, die die Entfernung, Geschwindigkeit und Ereignisse enthalten. MTM (=500) bedeutet
die maximal in der Speicherung erlaubte Anzahl von Stammaufzeichnungen.
Zeile 1040:
INTEGER *4 KI /5/ , KO /6/ , KD /7/ , KM /8/ Diese Aussage bestimmt die Eingabe/Ausgabe-Einheiten,
die im Programm verwendet werden sollen, wobei die Einheiten für das vorliegende Programm
folgende sind:
Kl/5/ - Dateneingabe durch den Operator (Tastatur)
KO/6/ - Ausgabe (Drucker) KD/7/ - Daten (Platte)
KM/8/ - Stamm (Platte).
Zeile 1050, 1060, 1070:
INTEGER *2 E1(16)/0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,
V, #
809810/05Ö7
49 545
E3 (16)/0,0,1,1,0,O,1,1,0,0,1,1,
0,0,1,1,/
,E5D(16)/8*0,8»1/,5i
E4 (16/4*0,4*1,4*0,4*1/,E5(16)/
8*0,1,2,1,2,1,2,1,2/
Diese Zeilen errichten Tabellen, die den Zugang zum Ereigniscode erleichtern. Der Ereigniscode
umfaßt vier binäre Bits für eine Gesamtzahl von 16 möglichen binären Kombinationen.
E1 ermöglicht den Zugang zum niedrigsten binären Bit des Ereigniscodes. Die alternierenden
Binären 0 und 1 von E1 zeigen die Tatsache an, daß der am wenigsten wichtige Bit im Ereigniscode
abwechselnd zwischen binär 0 und binär 1 schwankt, so wie der Ereigniscode zwischen
den 16 möglichen Zuständen variiert.
Zeile 1072 und 1073
INTEGER *4 EV(16)/' ·,' P1,1M',1M P1,'
T1,' PT1,1M T','M PT1, £
1 D1,' DP',1MD',1MDP1,'
DT',1 DPT','MD T1,'MDPT'/
Diese Zeilen errichten eine Tabelle für "EV", die 16 Glieder enthält, von denen jedes vier
Zeichen lang ist (eins für jedes Ereignis). Die Tabelle ist eine Zeichendarstellung für
alle 16 möglichen Kombinationen der vier Ereignisse, in diesem Pail: Antriebskraft, dynamisches
Bremsen, Kennzeichen und reguläres Zugbremsen. Das Konzept besteht hier darin, das geeignete Zeichen auszudrucken, wenn eine
entsprechende Bit-Position im Ereigniscode eine binäre 1 ist. Damit sind alle verschiedenen
Kombinationen von Ereignissen vom Nichtauf treten eines Ereignisses bis zum Auftreten
aller vier Ereignisse definiert.
809810/0587
as 545
Zeile 1075:
INTEGER *2 PLOT (53)/53*' '/,CM/'^'/.CD/·*'/,
Diese Aussage liefert eine Speicherung für einen aus 53 Positionen bestehenden Puffer der
grafischen Darstellung (die Anmerkung 53*' '/ bedeutet, daß alle 53 Positionen anfangs auf
leer gesetzt sind). Ferner werden drei Variable definiert, die die Zeichen »#", "*" und eine
Leerstelle umfassen, die für die Zeichen-Routine verwendet werden.
Zeile 1080:
INTEGER »4- EC,PLAG,PM/1 ,FD/1 ,MS/1/.SPDCHK,TMAX
Hier wird lediglich Speicherung für die verschiedenen genannten Variablen eingerichtet.
Zeile 1090 und 1092·'
INTEGER *2 ΥΕε/'Υ'/,Νο/'Ν'/,Α/'Α'/,Ρ/'Ρ'/,ϋ/
REPLY.U/'U'AO/'O'/.MC/'M'AC/'C'/,
erstellen die Zeichenvariablen, die zum entziffern der Antworten von der Tastatur verwendet
werden. Z.B. hat die Variable "YES" den Zeichenwert "Y".
Zeile 1100:
REAL *8 REPLY8 (2), NULL/' '/,REPLY9 (2)
reserviert Speicherung für die 16 2»eichenp.angen
Datensatznamen, die später verwendet werden sollen, und teilt der Variablen "NULL" einen Wert
aller Leerstellen zu.
Zeile 1110:
EQUIVALENCE (DATA(1,1), TAPE (1))
809810/0587
*9 545
27283Q2
erzeugt das Gleichgewicht bzw. die Überlagerung zwischen der Anordnung unverarbeiteter Daten
(TAPE) und der Anordnung interpretierter Daten, um die Speicherung zu erhalten.
Zeile 1510:
"* OPEN PILES *"
ist lediglich ein Kommentar.
Zeile 1520:
1500 WRITE (KO,120)
errichtet das Feld "1500" und löst das Drucken des Formulars 120 aus, was vorher durch die
Variable KO bestimmt wurde (Stationsdrucker), wodurch der Operator veranlaßt wird, den Namen
des Eingabedatensatzes in der nächsten Stufe einzugeben.
Zeile 1530:
READ (KI,108) REPLY9
fordert an, daß der Name des Eingabedatensatzes abgelesen wird, der vorher durch die Variable
KI (Stationstastatur) unter Steuerung durch das Formular 108 definiert wurde. Die Antwort
ist in der Variablen "REPLY9" zu speichern.
Zeile 1540:
IF (REPLY9 (1).NE.NULL)CALL OPEN
(KD.REPLY9,'INPUT')
ist eine Bedingungsstufe, d.h. wenn die vorhergehende
Antwort nicht der Nullantwort entsprach, wird versucht, den Eingabedatensatz für eine
spätere Verarbeitung aufzufinden und vorzubereiten.
Zeile 1550 bis 1570:
erledigen eine ähnliche Aufgabe für die Stammdatei.
809810/0587
49 545
Zeile 4001 bis 4090:
umfassen eine funktioneile Gruppe von Schritten, die den Operator nach der Art der durchzuführenden
Verarbeitung befragen und dann verursachen, daß die entsprechenden Befehlsfolgen zur Beantwortung der Anfrage ausgeführt
werden.
Zeile 4010:
4000 WRITE (KO,400)
beginnt den Ausdruck des Formulars 400 zur Vorbereitung des Operators für die in der
nächsten Stufe zu gebende Antwort.
Zeile 4020:
4001 READ (KI,101) REPLY
errichtet das Feld 4001 und beginnt mit dem Lesen der Antwort des Operators von der Tastatur
unter Steuerung durch das Formular 101. Das erste Zeichen der Antwort wird in der Variablen
"REPLY" gespeichert, die dann mit jeder der gültigen Antworten (in Zeile 4030 bis 4075)
verglichen wird, um festzustellen, welche Handlung als nächstes vorgenommen werden muß. Wird
nichts entsprechendes gefunden, geht das Programm weiter zu:
Zeile 4080:
WRITE (KO,404)
wodurch der Ausdruck des Formulars 404 beginnt, wodurch der Operator informiert wird, daß er
eine ungültige Antwort gegeben hat.
Zeile 4090:
Go to 4001
steuert erneut das Aussagefeld 4001 (Zeile
4020) an. Damit ist an dieser Stelle eine Wie-
809810/0587
49 545
derholungsschleife errichtet worden, die die
Steuerung behält, bis eine gültige Antwort erhalten wurde.
Zeile 99101 bis 99999:
in Pig. H, enthalten die Eingabe/Ausgabe-Ponnularaussagen,
die von allen Eingabe/Ausgabe-Vorgängen benutzt werden, um die Übertragung aller Daten (Mitteilungen, Antworten, grafische
Darstellungen, Analyse usw.) zwischen dem Programm und der Stationsvorrichtung zu erleichtern.
Auf die einzelne Formularaussage wird in der gesamten Programmdiskussion Bezug
genommen.
Zeile 99999:
END
END
zeigt das Ende der Programmaussagen an. Wenn eine Übereinstimmung zwischen der "REPLY" des
Operators und einer der genormten Programmoptionen in den Zeilen 4030 bis 4075 hergestellt
worden ist, erfolgt eine Abzweigung zum zutreffenden Punkt im Programm, wo die Befehlsfolgen
sich befinden, um die Anforderung des Operators zu bedienen. Diese verschiedenen Befehlsfolgen
werden nachfolgend beschrieben. Eine Anforderung das Programm zu beenden bewirkt, daß die
Aussage 9999 (Zeile 99003) angesteuert wird, wo eine Programmanweisung "STOP" ausgeführt
wird. Das Datenverarbeitungssystem steht dann zur Verfügung, um irgendeine seiner anderen
Punktionen auszuführen. Eine "OPP"-Anfrage bewirkt,
daß die Aussage 9998 (Zeile 99002) angesteuert wird, wo ein Anruf an den Kommunikator
des Datenverarbeitungssystems mit der Anfrage
erfolgt, die Verbindungsleitung abzuschalten und alle Systemfunktionen freizugeben.
809810/0587
49 ?45
Bei Aufforderung zum erneuten Laden (oder bei der ersten Wiederholung des Programms) wird
die Aussage I5OO (Zeile 1520) angesteuert, wie
oben bereits beschrieben, und danach die Befehlsfolge zur Dateneingabe (LOAD DATA). Diese
speziellen Stufen gehören zum Block 2000 in Pig. 2 und zum Pliesschema gemäß Pig. 9. Aufgabe
dieser Schritte ist es, die Eingabedaten aus der äußeren Speichervorrichtung in den Hauptspeicher
zu übertragen und zum Verarbeiten vorzubereiten.
Zeile 2001:
IP (REPLY9 (I)=NULL) GO TO 2910 ermöglicht das Umgehen der Befehlsfolge zur Eingabe
der Streckendaten, wenn der Operator eine Null-Antwort für den Namen des Eingabedatensatzes
eingegeben hat. Das geschieht dadurch, daß Aussage 2910 (Zeile 2160) angesteuert wird.
Eine Null-Antwort gilt nur für einen erneuten Ladevorgang, bei dem nur die Stammdaten geändert
werden müssen.
Zeile 2002:
WRITE (KO,210)
An der Station wird eine Mitteilung ausgedruckt (Formular 210), die dem Operator anzeigt, daß
der Ladevorgang des Datensatzes begonnen hat. An dieser Stelle können zwei Arten von Datensätzen
in den Hauptspeicher eingelesen werden, von denen der eine unverarbeitete Daten aus dem
Umwandlungsprogramm enthält, die noch weiter interpretiert werden müssen, während der andere
Daten enthält, die aus einem vorherigen Durchlauf des Hauptprogramms übrigbehalten wurden
und keine Interpretation erfordern. Der erste Wert im Datensatz bestimmt, welche Art von Da-
809810/0587
49 545
tenaatz verarbeitet wird.
Zeile 2003:
READ (KI) NSS
holt den ersten Wert aus dem Datensatz und speichert ihn in der Variablen NSS.
Zeile 2004:
IP (NSS 0) GO TO 2000
prüft den ersten Wert des Datensatzes auf einen negativen Wert, was bedeutet, daß der Datensatz
unverarbeitete Daten enthält und weitere Verarbeitung erfordert. Wenn wahr, wird Aussage 2000
(Zeile 2011) angesteuert. Wenn falsch, wird die nächste Aussage in der Reihenfolge angesteuert»
Zeile 2006:
READ (KD) NT, ((DATA (I,J,), J=NSS, NT), 1=1,3)
bewirkt den Übergang der vorinterpretierten Daten aus der Speichervorrichtung in den Hauptspeicher.
Zeile 2008:
WRITE (KO,204) NULL
bewirkt, daß die Mitteilung "LOADED" ausgedruckt wird, womit angezeigt wird, daß der Ladevorgang
beendet ist.
Zeile 2009:
GO TO 2910
steuert die Aussage 2910 (Zeile 2160) an, um die folgende alternative Befehlsfolge zur Dateneingabe
zu umgehen.
Zeile 2011 und 2012:
2000 DO 2001 1=1, TM
2001 READ (KD,END=2003) TAPE (I)
009810/058?
49 545
Hl
bewirken gemeinsam den Übergang unverarbeiteter Daten (Ausgabe aus dem Umwandlungsprogramm) von
der äußeren Speichervorrichtung in den Hauptspeicher. Mit "END=2OO3" wird die Steuerung
auf die Aussage 2003 (Zeile 2016) bei Wahrnehmung des Zustandes, daß der Datensatz beendet
ist, weitergegeben.
Zeile 2014:
WRITE (KO,121) TM
bewirkt den Ausdruck einer Fehlermitteilung, wenn die maximale Anzahl von Eingabewerten (Variable
TM) gelesen wurde, ohne daß auf das Ende des Datensatzes getroffen wurde, was bedeutet,
daß die Datensatzgröße die reservierte Speicherkapazität überschreitet.
Zeile 2018:
TMAX=I-I
stellt die Variable "TMAX" auf die Anzahl der tatsächlich eingegebenen Werte ein.
Zeile 2026:
WRITE (KO,201) TMAX
zeigt dann die Gesamtanzahl eingelesener Werte (TMAX) gefolgt von der Mitteilung "LOADED"
(Formular 201).
Zeile 2038:
"* REFORMAT DATA *"
ist ein Kommentar, der angibt, daß die Befehlsfolge beginnt, mit der die Daten interpretiert
und weiter zur Verarbeitung durch andere Befehlsfolgen vorbereitet werden, siehe Fliessschema gemäß Fig. 11.
Zeile 2040 bis 2058:
teilen gewissen in der Befehlsfolge zu verwen-
809810/0567
49 545
denden Variablen Anfangswerte zu.
Zeile 2056:
Der Abstandszähler wird auf Null eingestellt.
Zeile 2060:
"♦ START *"
ist ein Kommentar, der anzeigt, daß die Wiederholungsschleife beginnt, die eine Reihe von
numerischen Eingabedaten (Zeichen) interpretiert und die 3xN-Anordnung erzeugt, die die
aufgezeichnete Entfernung, die Geschwindigkeit und Ereignisse enthält, d.h. Informationen, die
vom restlichen Programm benutzt werden.
Zeile 2062:
errichtet die Wiederholungs-"DO"-Schleife mittels
der Aussage 2900 (Zeile 2150). Die Eingriffsanweisungen sind einmal für jedes Eingabedatum
mit Ausnahme der ersten beiden durchzuführen .
Zeile 2064:
te
Der i Wert des Eingabedatenstroms wird zeitweilig in der Variablen K gespeichert und in
Zeile 2066 auf einen negativen Wert geprüft, der anzeigen würde, daß der Eingabewert ungültig
ist und damit die Aussage 2510 ansteuert.
Zeile 2068:
errichtet das Aussagefeld 2505 und steuert eine der drei Aussagen 2600, 2700 oder 2800 an,
je nach dem laufenden Wert von "L" (d.h. IP L=1 Steuerung geht auf Aussage 2600). Der Wert
von L bestimmt welche der drei Arten von Daten (Entfernung, Geschwindigkeit oder Ereignisse)
gegenwärtig vom Programm erwartet wird.
009810/0587
49 545
Zeile 2070 bis 2076:
erhalten die Ansteuerung von Zeile 2066 sobald
ein ungültiger Eingabewert wahrgenommen wurde.
Zeile 2070:
errichtet das Aussagefeld 2510 und teilt der ungültigen Eingabe den Fehlerwert Null zu. Eine
ungültige Eingabe kann sich bei einem Datenübertragungsfehler oder einem sonstigen Versagen
der Hardware einstellen.
Zeile 2074:
zeigt dem Operator mit Hilfe des Druckers an,
te
daß das i Zeichen der Eingabedaten sich als ungültig herausgestellt hat. Mittels Zeile 2076 wird die Ansteuerung auf die Aussage 2505 weitergegeben, um die Verarbeitung fortzusetzen.
daß das i Zeichen der Eingabedaten sich als ungültig herausgestellt hat. Mittels Zeile 2076 wird die Ansteuerung auf die Aussage 2505 weitergegeben, um die Verarbeitung fortzusetzen.
Zeile 2084 bis 2104:
umfassen eine Befehlsfolge, die das Abstandszeichen
interpretiert, welches aus fünf Bits Entfernungsinformation, einem Vorwärts/Rückwärts-Bit
und dem vierten Ereignis-Bit besteht.
Zeile 2086:
(Aussage 2600) prüft das Vorhandensein des Rückwärtszustande im Vorwärts/Rückwärts-Bit
und überträgt die Ansteuerung auf Aussage 2601, wenn der Rückwärtszustand nicht festgestellt
wird. Wird der Rückwärtszustand gefunden, so entfernt Zeile 2088 ihr binäres Gewicht von
aus dem Entfernungswert, und Zeile 2090 gibt dem passenden Entfernungswert ein negatives
Vorzeichen.
Zeile 2092:
(Aussage 2601) prüft das Vorhandensein des
609810/058?
49 545
vierten Ereignis-Bits und, wenn es nicht aufgefunden wird, überträgt es die Ansteuerung an
Aussage 2602. Ist das Bit des vierten Ereignisses vorhanden, so zieht Zeile 2094 ihr binäres
Gewicht von 32 vom Entfernungswert ab, und Zeile 2096 bringt den richtigen Ereigniswert in
der Datenanordnung auf den neuesten Stand. Nun sind in der Variablen K nur noch die fünf Bits
der Entfernungsinformation übrig, die in der laufenden Aufzeichnung der Datenanordnung in
Zeile 2098 gespeichert werden (Aussage 2602).
Zeile 2100:
hält die Zählung der Aufzeichnungsintervalle aufrecht, die in der Variablen "IDIST" verarbeitet
werden.
Zeile 2102:
setzt den Wert von L so fest, daß ein Ereigniszeichen (Spalte 3) als nächstes verarbeitet
wird. Zeile 2104 schließlich steuert Aussage 2900 an, um zum nächsten Eingabezeichen vorzurücken.
Zeile 2106 bis 2114:
umfassen die zur Behandlung eines Geschwindigkeitszeichens nötigen Schritte. Da das Geschwindigkeitszeichen
nur Geschwindigkeitsinformation enthält, ist sein Wert lediglich der zweiten Spalte der laufenden Datenaufzeichnung
in Zeile 2108 zugeordnet. Der Wert von "L" wird in Zeile 2110 auf eins eingestellt, um anzudeuten,
daß als nächstes ein Entfernungszeionen zu verarbeiten ist. In Zeile 2112 wird die laufende
Aufzeichnungsanzahl erniedrigt, da die laufende Aufzeichnung beendet wurde, und in
Zeile 2114 geht die Ansteuerung weiter auf Aussage 29OO, um das nächste Zeichen zu verarbeiten.
809810/0587
49 545
Zeile 2116 bis 214-8:
umfassen eine Befehlsfolge, die Ereigniszeichen interpretiert und die Integrität der Daten
prüft. Das Ereigniszeichen enthält die ersten drei Ereignis-Bits und ein festgelegtes
Muster von Einsern und Nullen. Wenn das festgelegte Muster nicht wahrgenommen wird, so bedeutet
das einen "Syn.c"-Fehler. Dieser Zustand ergibt
sich, wenn die Befehlsfolge nicht mit den Daten synchronisiert ist, d.h. ein Entfernungszeichen erscheint dort wo ein Ereigniszeichen
erwartet wird. Die Variable "ISE" hält eine Zählung solcher Fehler in Zeile 2144 aufrecht,
und die Dateninterpretationsschleife ist beendet, wenn diese Zählung den Wert 50 in Zeile
2146 übersteigt, andernfalls wird dem Ereigniscode ein Fehlerwert von 1 in Zeile 2148 zugeteilt.
Zeile 2150:
(Aussage 2900) wird angesteuert, nachdem jedes Zeichen von einer der drei oben genannten
Befehlsfolgen verarbeitet wurde und ist, wie vom Kommentar in Zeile 2152 angedeutet, die
letzte Aussage in der Interpretationsschleife. Hier wird der Zeichenzeiger erniedrigt und die
Ansteuerung geht zurück zu Zeile 2062, bis alle Zeichen im Hauptspeicher verarbeitet worden
sind. Nachdem alle Zeichen verarbeitet wurden oder die Syne-Fehlergrenze überschritten wurde,
geht die Ansteuerung an Zeile 2154 weiter, die lediglich das Aussagefeld 2905 errichtet.
Zeile 2156:
druckt die Anzahl "SYNC"-Fehler, wenn die Fehlerzählung
(ISE) einen Wert hat, der nicht Null ist.
80981 D/0537
49 545
Si
Zeile 2158:
setzt einen Zeiger auf den Anfang der gültigen Daten in der Datenanordnung. iiSS zeigt damit
auf die erste gültige Datenaufzeichnung im Hauptspeicher.
Zeile 2160:
errichtet das Aussagefeld 2910 und setzt zeitweilig einen Zeiger auf das erste Kennzeichen,
welches dem Beginn der Daten gleich ist.
Zeile 2165 bis 2200:
umfassen eine Befehlsfolge zum Absuchen der Datenanordnung auf Kennzeichen, so daß die aufgezeichneten
Daten dann mit den Stammprofildaten ausgerichtet werden können.
Zeile 2165 bis 2170:
teilen verschiedene Anfangswerte je nach Bedarf
zu.
Zeile 2172:
errichtet eine Wiederholungsschleife mittels der Aussage 2950 (Zeile 2194), um jede Datenaufzeichnung
auf das Vorhandensein eines Kennzeichens zu prüfen.
Zeile 2174:
übergibt die Ansteuerung an Aussage 2930, wenn die laufende Aufzeichnung kein Kennzeichen enthält.
Wenn ein Kennzeichen besteht, prüft Zeile 2175 die vorhergehende Aufzeichnung, um zu
sehen, ob die auch ein Kennzeichen enthielt. Wenn ja, ist das Kennzeichen nicht das erste
Kennzeichen einer aufeinanderfolgenden Serie von Kennzeichen und wird folglich dadurch ignoriert,
daß Aussage 2930 angesteuert wird, um
809810/0587
49 545
die Schleife zur nächsten Aufzeichnung vorzurücken.
Zeile 2176:
Der Wert von J wird geprüft, um festzustellen, ob das gerade aufgefundene Kennzeichen das erste
oder ein späteres Kennzeichen in den Daten ist. Ist es das erste Kennzeichen (J 1), so
stellt Zeile 2178 einen Zeiger (NS) ein, um dessen Stelle aufzuzeichnen, Zeile 2180 speichert
den gegenwärtigen Abstand in der Variablen "NDISTM", Zeile 2182 stellt J so ein, daß angezeigt
wird, daß das erste Kennzeichen verarbeitet wurde, und Zeile 2184 steuert Auasage 2930
an, um zur nächsten Aufzeichnung vorzurücken. Wenn das grade aufgefundene Kennzeichen nicht
das erste Kennzeichen war, überträgt Zeile 2176 die Ansteuerung auf Zeile 2186, wo festgestellt
wird, ob das Kennzeichen das zweite oder ein nachfolgendes Kennzeichen ist. Wenn das zweite
Kennzeichen bereits verarbeitet wurde (J=2), wird wie vorher die Aussage 2930 angesteuert,
andernfalls errechnet Zeile '2188 den Abstand zwischen den beiden ersten Kennzeichen durch
Subtraktion des Abstandes am ersten Kennzeichen (NDISTM) vom laufenden Abstand (NDIST) und
durch Speichern des Ergebnisses in der Variablen "NDISTM", Zeile 2190 speichert den Ort des zweiten
Kennzeichens in NM2, und Zeile 2192 setzt den Wert von J fest, um anzuzeigen, daß auch
das zweite Kennzeichen verarbeitet wurde.
Zeile 2194:
(Der letzte Schritt in der Wiederholungsschleife, die in Zeile 2172 begann) hält die Zählung
des zurückgelegten relativen Abstandes seit dem Beginn gültiger Daten aufrecht.
809810/0587
49 545
Sk
Zeile 2196:
wenn weniger als zwei Kennzeichen gefunden wurden, wird eine Warnungsmitteilung (Formular
261) ausgedruckt.
Zeile 2198:
es wird der von der Aufzeichnung umfaßte ungefähre Abstand wie folgt errechnet: Die Anzahl
Aufzeichnungseinheiten wird dividiert durch die geschätzte Anzahl Aufzeichnungseinheiten
pro Meile.
Zeile 2200:
druckt das Ergebnis des obigen Rechenvorgangs aus, um den etwa umfaßten Abstand anzugeben.
Nach Eingabe der Streckendaten erfolgt im Programm die Eingabe der Stammprofildaten in Zeile
3000 bis 3330, wie der Kommentar in Zeile 3020 anzeigte
Zeile 3030:
Die Variable SM wird auf 1/100 eingestellt, wobei es sich um den Maßstabsfaktor für die
Stammdatei handelt.
Zeile 3040:
Es wird bestimmt ob ein neuer Stammdatensatz einzugeben ist oder nicht. Wenn nicht, (die
Antwort in Zeile 1560 war entweder eine Null oder lauter Leerstellen) wird Aussage 3200
(Zeile 3350) angesteuert. Wenn ein Stammdatensatz einzugeben ist, wird
Zeile 3050 bis 3290 durchgeführte
Zeile 3050:
bewirkt daß die Mitteilung "LOADING" ausgedruckt wird, um anzugeben, daß eine Befehls-
809810/0537
49 545
folge eingegeben wurde.
Zeile 3060:
setzt den Wert der Variablen J auf Null fest. Hier zeigt J wieder an, ob das erste, zweite
oder ein nachfolgendes Kennzeichen behandelt wird.
Zeile 3070:
setzt die Stammaufzeichnungsnummer auf 1 fest.
Zeile 3080:
setzt den Abstandszähler MDIST auf Null fest.
MDIST sammelt die Anzahl an Hundertsteln einer Meile, die in Bezug auf die erste Aufzeichnung
zurückgelegt wurden.
Zeile 3090:
errichtet das Aussagefeld 3010 und liest eine Zeile des Stammdatensatzes aus dem Hilfsspeicher
in den Hauptspeicher. Die Daten werden in der Aufzeichnung M der Variablen "MASTER" gespeichert
und bestehen aus drei Elementen: Entfernung (in Hundertstel), Geschwindigkeit und ein Ereigniscode. Die Notierung "END =
3030" bewirkt die Ansteuerung der Aussage 3030 beim Erreichen des Endes des Datensatzes.
Zeile 3100 und 3110:
bewirken, daß Aufzeichnungen mit negativen Ereigniscodes ignoriert werden.
Zeile 3120:
stellt fest, ob die laufende Aufzeichnung innerhalb ihres Ereigniscodes ein Kennzeichen
enthält. Das wird dadurch erreicht, daß zum Ereigniscode (MASTER 3,M) eine eins addiert
wird und der resultierende Wert als Index in
809810/0587
66
49 545
Tabelle E4, definiert in Zeile 1070, verwendet wird. Wenn der resultierende Wert in der Tabelle
eine eins ist, dann ist das Kennzeichen vorhanden. Wenn der Wert in der Tabelle Null ist,
ist das Kennzeichen nicht vorhanden und die Aussage 3020 wird angesteuert, um zur nächsten Aufzeichnung
vorzurücken. Wird ein Kennzeichen wahrgenommen, so stellt Zeile 3130 fest, ob es
das erste oder ein folgendes Kennzeichen ist» Pur das erste Kennzeichen werden die Zeilen
3HO bis 3180 durchgeführt. Zeile 3HO setzt MS zum Hinweis auf die laufende Aufzeichnung
und zur Lokalisierung des ersten Kennzeichens fest. Zeile 3150 legt den Wert für J gleich 1
fest, um anzuzeigen, daß das erste Kennzeichen verarbeitet worden ist. Zeile 3160 speichert
die laufende Abstandszählung in der Variablen "MDISTM" zur späteren Verwendung.
Zeile 3170:
errechnet den Meilenstein (Entfernung) am Kennzeichen
i durch Multiplizieren der laufenden Abstandszählung in Hundertstel einer Meile mit dem
Maßstabsfaktor 0,01 und speichert die sich ergebende Meilenzahl im variablen Starter.
Zeile 3180:
überträgt die Ansteuerung auf die Aussage 3020, um zur nächsten Aufzeichnung vorzurücken.
Zeile 319O:
errichtet das Aussagefeld 3015 und stellt fest, ob das gerade aufgefundene Kennzeichen das
zweite oder ein folgendes Kennzeichen ist. Wenn das zweite Kennzeichen verarbeitet worden ist.
wird Aussage 3020 angesteuert, um zur nächsten Aufzeichnung vorzurücken, andernfalls stellt
Zeile 3200 den Wert von J ein, um anzudeuten,
809810/0587
49 545
Si
daß das zweite Kennzeichen nun aufgefunden wurde.
Zeile 3210:
errechnet den relativen Abstand zwischen zwei Kennzeichen durch Subtrahieren der Abstandszählung
am ersten Kennzeichen von der laufenden Abstandszählung und speichert das Ergebnis
in der Variablen 11MDISTM".
Zeile 3220:
(Aussagefeld 3020) hält die Abstandszählung
durch Addieren des Abstandes der laufenden Aufzeichnung (MASTER 1,M) zur vorherigen Zählung
aufrecht.
Zeile 3230:
erhöht die Aufzeichnungszahl.
Zeile 3240:
prüft, ob die nächste Aufzeichnung in den für die Stammdatei in Zeile 1030 reservierten Bereich
paßt, wenn ja, wird Aussage 3010 angesteuert, um die Aufzeichnung zu lesen. Wenn
die nächste Aufzeichnungszahl die maximale Aufzeichnungszahl (MTM) übersteigt, so druckt
der nächste Befehl in der Reihenfolge, Zeile 3245, eine Nachricht, die anzeigt, daß die Kapazität
des Stammdateneingabesatzes überschritten wurde. Unter normalen Bedingungen erhält
Zeile 3250 (Aussage 3030) die Ansteuerung von Zeile 3090, wenn das Ende eines Datensatzes aufgetreten
ist und stellt den Wert von "MT" so ein, daß auf die letzte gültige Stammaufzeichnung
im Hauptspeicher hingewiesen wird.
Zeile 3260:
druckt die Anzahl der "LOADED", d.h. der eingegebenen Stammaufzeichnungen aus.
809810/0587
49 545
Zeile 3270:
druckt eine Warnmitteilung, wenn mindestens
zwei Kennzeichen nicht aufgefunden wurden.
zwei Kennzeichen nicht aufgefunden wurden.
Zeile 3290:
ruft eine Service-Routine an, um die Stammdatei zu schließen und die äußere Speichervorrichtung
aus dem Programm freizugeben.
Zeile 3350 bis 3400:
verwenden gewisse Werte, die vorher abgeleitet wurden, um einen Maßstabsfaktor für die aufgezeichneten
Daten zu errechnen, wie durch den Kommentar in Zeile 3340 angegeben.
Zeile 3350:
(Aussage 3200) die Geschwindigkeitskonstante wird auf 1 eingestellt.
Zeile 3360:
Ein Anfangswert von Null wird dem Maßstabsiaktor
oder der Entfernungskonstante (DC) zugeteilt. Wenn die Anzahl Aufzeichnungseinheiten
zwischen den beiden ersten Kennzeichen der aufgezeichneten Daten nicht Null ist, errechnet
Zeile 3370 einen neuen Wert für den Maßstabsfaktor durch Multiplizieren der Abstandszählung
zwischen den beiden ersten Kennzeichen in den Stammdaten mit dem Maßstabsfaktor für die Stammdaten
und anschließendes Dividieren durch die Zahl von Aufzeichnungseinheiten zwischen Kennzeichen
in den aufgezeichneten Daten, um den Abstand zu erhalten, der von jeder Aufzeichnungseinheit
(DC) dargestellt wird. Wenn der Maßstabsfaktor immer noch einen Wert Null in
Zeile 3380 hat, wird ein Fehlerwert von 0,05 zugeteilt damit die Verarbeitung fortgesetzt
werden kann. Das Zeichen von "DC" ist so ge-
809810/0587
49 545
27283^2
wählt, daß es zum Zeichen der Gesamtanzahl oder der Aufzeichnungseinheiten im Datensatz
paßt, so daß, wenn die beiden Werte multipliziert werden, das Ergebnis eine positive Entfernung
ist.
Zeile 3390:
errechnet diese gesamte gefahrene Distanz und speichert sie in "Dist".
Zeile 3400:
druckt die von der Aufzeichnung umfaßte gesamte zurückgelegte Entfernung und den Maßstabsfaktor
aus, der im restlichen Programm verwendet werden soll.
Zeile 3410:
teilt den absoluten V/ert von 11DC" dem "DCPH
zu. Hiermit wird die Befehlsfolge zur Eingabe der aufgezeichneten Daten und der zugehörigen
Stammprofildaten aus der vorläufigen Speicherung in die endgültige Speicherung beendet. Nun
sind die Daten zur Verarbeitung durch die restlichen Befehlsfolgen im Programm fertig. Die
Zeilenzahlen in der 5000 .er Serie umfassen die Analyse-Routine (Fig. 5), welche die Ausnahmeberichte
durch Vergleichen der aufgezeichneten Daten mit den Stammprofildaten erzeugt.
Zeile 5006:
bewirkt, daß eine Nachricht unter dem Formular 500 ausgedruckt wird, die den Operator veranlaßt,
die Toleranz für die Geschwindigkeitsverletzung (in Meilen pro Stunde) einzugeben,
wie es der Lesebefehl in Zeile 5008 anfordert. Dieser Wert bestimmt, um wieviel die tatsächliche
Geschwindigkeit die Geschwindigkeitsbegrenzung überschreiten muß, ehe die Verletzung in
den Bericht eingeht. Der Wert wird in der 809810/0587
49 545
Variablen MTOL gespeichert.
Zeile 5010 bis 5052:
sorgen für die Erstellung einer Anzahl von Variablen zur Benutzung im Rest dieser Befehlsfolge.
Zeile 5030:
bewirkt, daß die Kopfzeile des Berichts gedruckt
wird. Die Variable "distd" hält den Wert der Entfernung, bei der die laufende Datenaufzeichnung
nicht mehr zutreffend ist. Ebenso ist "distm" der Abstand, bei dem die
laufende Stammaufzeichnung nicht mehr zutreffend ist.
Zeile 5054:
stellt fest, welcher von diesen beiden Abständen zuerst auftritt, um festzulegen, welche
der beiden Aufzeichnungen (Stamm oder Daten) als nächstes auf den neuesten Stand gebracht
werden muß. Wenn der Datenabstand größer ist oder ebenso groß wie der Stammabstand, wird
Zeile 5030 angesteuert, andernfalls werden die Zeilen 5058 bis 5109 durchgeführt, um die laufende
Dateninformation aufzudatieren. In Zeile
5060 wird der Status des Endzeichens geprüft, um festzustellen, ob die vorhergehende Aufzeichnung
vollständig verarbeitet wurde und, wenn das der Fall ist, wird die nächste Aufzeichnung
verarbeitet.
Zeile 5062:
erhöht die Aufzeichnungszahl.
Zeile 5064:
prüft, ob die entstehende Aufzeichnungszahl
innerhalb dee Bereiches gespeicherter Daten
809810/0587
49 545
liegt und, wenn das nicht der Fall ist, wird Aussage 5090 angesteuert, um die Analyse-Routine
zu beenden.
Zeile 5066:
hält die Zählung der Zahl Aufzeichnungseinheiten
aufrecht, die seit dem ersten Kennzeichen aufgetreten sind. ,
Zeile 5068:
errechnet die tatsächliche Geschwindigkeit durch Multiplizieren der aufgezeichneten Geschwindigkeit
mit dem Geschwindigkeitsmaßstab (in diesem Fall mit 1). Für jede Aufzeichnung
von Daten trifft der Ereigniscode nur für die letzte Aufzeichnungseinheit dieser Aufzeichnung
zu. Wenn also eine Aufzeichnung mehr als eine Aufzeichnungseinheit darstellt und auch
ein Ereignis enthält, muß sie zweimal verarbeitet werden, einmal für die letzte ein Ereignis
enthaltende Aufzeiohnungseinheit und einmal für den Rest der Aufzeichnung ohne das Ereignis.
Zeile 5070:
prüft den Zustand des Ereigniscodes. Wenn ein Ereignis vorliegt, stellt Zeile 5072 fest, ob
die Aufzeichnung mehr als eine Aufzeichnungseinheit darstellt und folglich eine Doppelverarbeitung
erfordert. Ist das der Fall, so wird durch Zeile 507^ das Endzeichen gesetzt, um
diese Tatsache anzuzeigen, und Zeile 5076 subtrahiert eine Einheit vom Entfernungszählerf
um der letzten Aufzeichnungseinheit der Aufzeichnung gerecht zu werden, die das Ereignis
enthält.
Zeile 5078:
setzt den laufenden Ereigniscode so fe»t, daß
809810/0587
49 545
keine Ereignisse angezeigt werden.
Zeile 5082:
errechnet die laufende Datenentfernung (Meilenstein) durch Addieren des Produktes der
Aufzeichnungseinheitszählung (NDIST) und der Datenskala (DC) zum Abstand bei Beginn des
Laufs.
Zeile 5084:
prüft dann, ob dieser neue Wert für den Abstand größer ist als der vorherige Abstand
und, wenn das nicht der Fall ist, wird Aussage 5020 angesteuert, um die Daten vorzurücken,
andernfalls stellt Zeile 5086 den letzten Abstand ein, der dem laufenden Abstand entspricht
und Zeile 5088 gibt die Steuerung an Aussage 5060, um die Geschwindigkeit zu analysieren.
Zeile 5090:
wird angesteuert, wenn sich die letzte Einheit der Aufzeichnung in der Verarbeitung befindet
und gibt diese Tatsache dadurch an, daß sie das Endzeichen freigibt.
Zeile 5092:
, -setzt dann die Einheitszählung wieder ein,
die zeitweilig in Zeile 5076 aufgehoben war.
Zeile 5094:
teilt den laufenden Wert des Ereigniscodes der Variablen "EC" zu.
Zeile 5098:
hält eine Zählung der Zahl Aufzeichnungseinheiten
aufrecht, während der die Bremsen angelegt wurden (allgemeiner gesagt, wenn Bit eine eins ist).
809810/0587
49 545
Zeile 5099 bis 5109:
In Pig. 18, timfassen eine Befehlsfolge, die als
Beispiel dient für die Wahrnehmung und Mitteilung einer möglichen Ereignisverletzung.
Zeile 5100:
vergleicht den Wert des vorhergehenden Bremszustands (LEC) mit dem laufenden Zustand der
Bremse. Wenn keine Änderung eingetreten ist, wird Aussage 5026 angesteuert, wo der laufende
Bremsenzustand dem "LEC" zugeteilt wird. Aussage 5005 wird angesteuert, wenn die Bremsen
das erste Mal angelegt werden und speichert die laufende Entfernung in der Junkvariablen "z";
Aussage 5007 wird angesteuert, wenn die Bremsen freigegeben werden und prüft den laufenden
Stammereigniscode um festzustellen, ob es eine Einschränkung für die Bremsen gibt. Wenn ja,
druckt Zeile 5107 die Verletzungsnachrieht zusammen
mit dem Meilenstein, an dem die Bremsen freigegeben wurden.
Zeile 5120 bis 5180:
dienen zum Vorrücken der Stammdatei nach Bedarf.
Zeile 5130:
erhöht die Aufzeichnungszahl.
Zeile 5HO:
prüft ob die Aufzeichnung innerhalb des Datensatzes ist und, wenn nicht, wird Aussage 5090
angesteuert, um die Befehlsfolge zu beenden*
Zeile 5150:
errechnet die neue Stammentfernung.
809810/0587
(ok
ύ 9 545
Zeile 5160:
speichert die Geschwindigkeitsgrenze.
Zeile 5170:
speichert den Ereigniscode.
Zeile 5180:
Wenn keine Veränderung im Ereigniscode eingetreten ist, doh. wenn der nächste Stammereigniscode
(KMEC) dem letzten Stammereigniscode
(EMEC) gleich ist, wird Aussage 5059 angesteuert, wo der Wert von "LMEC" auf denselben
Wert wie "NMEC" gesetzt wird. Wenn eine Änderung im Ereigniscode eingetreten ist, wird Zeile
519Ο bis 592Ο durchgeführt. Diese Zeilen
dienen als ein zweites Beispiel der Wahrnehmung und Mitteilung einer möglichen Ereignisverletzung.
Zeile 5200:
stellt fest, ob die Änderung im vierten Stammereignisbit
auftrat, der bei diesem Beispiel auf 1 eingestellt ist, um anzuzeigen, daß dynamische
Bremsen für diese bestimmte Abstandsstrecke nötig sind. Wenn die Änderung nicht an
diesem Bit auftrat, wird Aussage 5036 angesteuert,
wo einer der anderen Bits des Ereigniscodes geprüft werden kann. War der vierte Bit eine Null und ist jetzt eine eins, so
tritt das Fahrzeug in einen notwendigen Bremsbereich ein und Zeile 5210 bis 5240 wird durchgeführt.
Zeile 5210:
Die Zählung der Zahl von Aufzeiohnungsintervallen wird auf Null zurückgestellt.
809810/0587
49 545
6 s
Zeile 5220:
stellt die Zählung auf eins ein, wenn das Fahrzeug gegenwärtig seine Bremsen angelegt hat.
Zeile 5230:
eine Variable wird eingestellt, um den Meilenstein am Beginn des Bereichs in Erinnerung zu
bringen.
Zeile 5240:
überträgt die Ansteuerung zur nächsten Ereignisüberprüfung. Wenn das vierte Bit eine eins
war und nun Null ist, hat das Fahrzeug grade einen notwendigen Bremsbereich verlassen und
Zeile 5250 bis 5270 wird durchgeführt.
Zeile 5250:
errechnet einen Wert für die Variable "X", bei dem es sich um das Verhältnis zwischen dem Abstand,
in dem die Bremsen angelegt waren, und dem Abstand, in dem sie nötig waren, handelt.
Zeile 5260:
prüft dies Verhältnis im Vergleich zu einem vorherbestimmten Mindestwert und gibt die Steuerung
zur nächsten Ereignisüberprüfung weiter, wenn die Anforderung befriedigt wurde. Wurde
die Bedingung nicht erfüllt, d.h. waren Bremsen mindestens über 50 % des Bereichs nötig und
nur, sagen wir über 10 # hinweg angelegt, so wird die Verletzung in Zeile 5270 dadurch angezeigt,
daß der erste und letzte Meilenstein für den Bereich sowie der Bruchteil des Bereichs,
in dem die Bremsen tatsächlich angelegt waren, ausgedruckt werden. Wie der Kommentar in Zeile
5280 anzeigt, können an dieser Stelle je nach Bedarf des Benutzers andere Prüfbefehlsfolgen
809810/0587
49 545
eingeschoben werden. Die restlichen Zeilen 5320 bis 5640 umfassen die Befehlsfolge, gemäß
der die Fahrzeuggeschwindigkeit mit der Geschwindigkeitsbegrenzung verglichen und Verletzungen
durch überhöhte Geschwindigkeit im Bericht ausgedruckt werden.
Zeile 5330:
Die Anfangsdistanz des laufenden Abschnitts
wird so eingestellt, daß sie der Enddistanz des vorhergehenden Abschnitts gleich ist, und
die Enddistanz des laufenden Abschnitts wird auf die kleinere der beiden Variablen "DISTD"
und "DISTM" eingestellt, bei denen es sich um die Abstände handelt, an denen die laufenden
Strecken- und Stammaufzeichnungen nicht mehr
anwendbar sind.
Zeile 5350:
stellt dann fest, ob die Geschwindigkeit die Geschwindigkeitsbegrenzung um mehr als den
Viert der Toleranz übersteigt und, wenn ja, wird Zeile 5360 bis 5430 durchgeführt, andernfalls
wird Zeile 5440 angesteuert.
Zeile 5360:
setzt den Wert von "ISV" fest, um anzuzeigen, daß gegenwärtig die Geschwindigkeitsbegrenzung
verletzt wird.
Zeile 5370:
setzt den Wert von "BDIST" (Meilenstein am Beginn der Verletzung) auf die laufende Abschnittsentfernung
fest, wenn das Fahrzeug gerade die Verletzung aufgenommen hat.
Zeile 5380:
stellt das Ausmaß der überhöhten Geschwindig-
809810/0587
49 51-5
keit fest.
Zeile 5390:
Die laufende überhöhte Geschwindigkeit wird im Vergleich zur maximalen überhöhten Geschwindigkeit
der laufenden Verletzung geprüft und, wenn sie den vorherigen Maximalwert übersteigt,
wird Zeile 5400 bis 5430 durchgeführt.
Zeile 5410:
setzt den Wert der maximalen Verletzung auf den der laufenden Verletzung fest, Zeile 5410
speichert die Grenze bei der maximalen Verletzung in "MLIMIT".
Zeile 5420:
errechnet den ungefähren Meilenstein für die maximale Verletzung.
Zeile 5430:
steuert Aussage 5070 an, zum Vorrücken auf den nächsten Abschnitt. Wenn in Zeile 5390 festgestellt
wurde, daß die Fahrzeuggeschwindigkeit keine Verletzung darstellte, dann wird in
Zeile 5440 der Zustand des Verletzungsindikators geprüft. Wenn der Indikator eingestellt ist, hat
das Fahrzeug gerade eine Verletzung hinter sich gelassen, und Zeile 5450 bis 5530 müssen durchgeführt
werden.
Zeile 5450:
bereinigt den Verletzungsanzeiger.
Zeile 5460:
erhöht die Zählung der Zahl von Geschwindigkeitsverletzungen.
809810/0587
49 545
Zeile 5470:
errechnet die Länge der Verletzung.
Zeile 5480:
hält die Gesamtzahl Meilen der Geschwindigkeitsverietzungen
fest.
Zeile 5490:
druckt eine Zusammenfassung der Verletzungen.
Zeile 5500:
stellt fest, ob dies das letzte Mal durch die Schleife war und, wenn ja, wird Aussage 5094
angesteuert. Wenn nicht, werden die drei Variablen "BDIST", "MLIMIT" und "MAXOVR" auf Null zurückgestellt
und Zeile 5540 bewirkt den Übergang der Stuerung an Aussage 5010, um die Daten vorzurücken.
Wenn entweder die Strecken- oder die Stammdaten aufgebraucht sind, wird Zeile 5570
angesteuert, um die Befehlsfolge zu beenden. Hier prüft Aussage 5090 den Status des Verletzungsindikators
und, wenn dieser noch eingestellt ist, zeigt Zeile 5580 an, daß dies die "last" Verletzung ist, und Zeile 5590 steuert
Aussage 5062 an, um das auszudrucken.
Zeile 5600:
prüft die Verletzungszählung. Wurden keine Verletzungen
festgestellt, so druckt Zeile 5630 die Nachricht "no speed violations detected",
andernfalls druckt Zeile 5610 die Anzahl Verletzungen und die Gesamtmeilenzahl während der
Verletzung. In jedem Fall wird Aussage 4000 angesteuert, um die nächste Anfrage zu erhalten.
Zeilenzahlen in der 7000 ,.er Serie umfassen die Zeichen-Routine (Pig. 3 & 20), die von Zeile
4030 an eingegeben wird, wenn eine Anfrage nach einer grafischen Darstellung besteht.
809810/0587
49 545
Zeile 7030:
druckt eine Nachricht, um den Operator zu veranlassen, die "limits" für die Zeichnung einzugeben.
Zeile 7040:
liest dann die Meilensteine für den Beginn und das Ende der laufenden Nachfrage nach einer
grafischen Darstellung.
Zeile 7050 und 7060:
erfordern und lesen in ähnlicher Weise die Skala (oder Auflösung) für die Zeichnung.
Zeile 7070:
Wenn die gerade eingegebene Skala den V/ert Null hat, wird die Anforderung wiederholt. Wenn der
eingelesene Wert größer ist als Null, so gibt er die Anzahl Zeilen pro Meile an; ist der
Wert kleiner als Null, so gibt er die Anzahl Meilen pro Zeile an. Auf dieser Definition beruhend
gelangt man über die Zeilen 7080 und 7090 auf einen Wert für die Variable "scale",
bei der es sich um den tatsächlichen Abstand zwischen jeweils aufeinanderfolgenden Zeilen in
der Zeichnung handelt. Wenn z.B. 20 Zeilen pro Meile angefordert wurden, wäre der Wert der
Skala 0,05 (1/20).
Zeile 7100:
gewährleistet, daß der Anfangsmeilenstein für die Zeichnung (start) größer ist oder gleich
dem Anfangsmeilenstein für die aufgezeichnete Fahrt (Startr).
Zeile 7110:
errechnet die Anzahl zu druckender Zeilen als eins mehr als die Anzahl angeforderter Meilen
dividiert durch die Meilen pro Zeile. Wenn die
809810/0587
49 545
Anzahl der Zeilen größer ist als ein vorherbestimmter Sicherheitsfaktor von, sagen wir (41),
so wird mit dieser Befehlsfolge die Genehmigung erbeten, wie folgt fortzufahren.
Zeile 7120:
Aussage 7005 wird angesteuert, um mit der Zeichnung zu beginnen, wenn die Zeilenzahl innerhalb
der Grenze liegt, andernfalls druckt Zeile 7150 die Anzahl Zeilen aus und erbittet
Genehmigung zur Portsetzung. Die Antwort wird in Zeile 7140 eingelesen und, wenn kein "yes"
erhalten wurde, stellt Zeile 7150 die Steuerung auf Aussage 4000 zurück, um eine neue Anfrage
zu erhalten.
Zeile 7160 bis 7220:
teilen den Variablen nach Bedarf Anfangswerte zu.
Zeile 7230 bis 7300:
besorgen die richtigen Stammdaten zur Verwendung für die laufende Zeile der Zeichnung.
Zeile 7230:
rückt die Stammaufzeichnungsnummer vor.
Zeile 7240:
prüft, ob das Ende der Stammdatei erreicht worden ist und, wenn ja, wird Aussage 7059 angesteuert,
um die Befehlsfolge zu beenden.
Zeile 7250:
errechnet einen neuen Wert für den Stammabstand.
Zeile 7260:
bringt ein Leerzeichen (CB) in den Zeichnungspuffer, wo die alten Daten sich befanden.
809810/0587
49
Zeile 7270: errechnet eine neue Stammdatenposition (PM) als eins mehr als die Hälfte der Geschwindigkeitsbegrenzung
Zeile 7280: bewegt das Stammzeichen (CM = #) zur neuen
Stellung im Puffer.
Zeile 7290: ersetzt das Datenzeichen (CD), da Stamm- und Datenposition zusammenfallen können.
Zeile 7300: stellt fest, ob der Stammdatensatz weit genug vorgerückt wurde, um die laufende Zeile der
Zeichnung einzuschließen und, wenn nicht, müssen die obigen Schritte wiederholt werden.
Zeile 7310 bis 7470: besorgen die richtigen Streckendaten für die laufende Zeile der Zeichnung.
Zeile 7310: bestimmt, ob der Streckendatensatz weit genug vorgerückt wurde und, wenn ja, wird Aussage
7030 angesteuert, andernfalls erhöht Zeile 7320 die Aufzeichnungszahl.
Zeile 7330: prüft, ob die Streckendaten bereits zu Ende sind.
Zeile 7340: behält die Zählung der aufgetroffenen Aufzeichnungseinheiten
bei.
Zeile 7350: erreohnet den neuen Datenabstand.
809810/0587
TAf
49
Zeile 7360:
prüft, ob der Datensatz weiter vorgerückt werden muß.
Zeile 7370:
bringt ein Leerstellenzeichen in die alte Datenposition.
Zeile 7380:
errechnet die neue Position der Geschwindigkeit im Puffer.
Zeile 7390:
begrenzt die Druckposition auf das 52* · Zeichen.
Zeile 7400:
ersetzt das Stammzeichen, da es mit dem alten Datenzeichen möglicherweise zusammenfiel, welches
entfernt wurde. Zeile 7410 bringt das Datenzeichen (CD) in den Puffer in seine neue
Position. Pur jede Aufzeichnung trifft der Ereigniscode nur für die letzte Aufzeichnungseinheit in der Aufzeichnung zu. Im Zeitpunkt
des Ausdruckens hält die Variable "L" den richtigen Wert des Ereigniscodes, wie er durch die
Zeilen 7420 bis 7460 festgelegt wurde.
Zeile 7420:
teilt "L" einen Anfangswert von 1 zu (keine Ereignisse)
Zeile 7430:
Der Ereigniscode wird in der Variablen "K" gespeichert.
Zeile 7450:
errechnet den Abstand, bei dem dar Ereigniscode wirksam wird (DISTE) als eine Einheit (DCP) we-
809810/0587
ΐό
49 345
niger als der Abstand für das Ende der Aufzeichnung (DISTD).
Zeile 7460:
teilt "L" den V/ert des Ereigniscodes (K) zu, wenn der Zeichnungsabstand den "event distance"
(DISTE) übersteigt.
Zeile 7480:
stellt fest, wieviel vom Zeichnungspuffer ausgedruckt werden muß, um sowohl die Stammzeichen
als auch die Datenzeichen zu umfassen. Dieser Schritt erspart ein Ausdrucken von Leerzeichen
rechts von den tatsächlichen Daten und spart damit Zeit.
Zeile 7490:
bewirkt den Ausdruck der Kopfzeile der Zeichnung
(Figo 4, Bezugszeichen 44) gemeinsam mit der Datenaufzeichnungszahl, wenn der Abstand
dem Anfangsabstand gleich ist.
Zeile 7500:
druckt die laufende Zeile der Zeichnung aus, die aus dem Abstand (Meilenstein), den Ereigniszeichen
und soviel Zeichen im Puffer besteht, wie durch die Variable "J" bestimmt.
Zeile 7520:
errechnet den Abstand für die nächste Zeile durch Addieren des Maßstabs zum vorherigen Abstand.
Wenn der dabei entstehende Abstand geringer ist als der Endabstand, übergibt die Zeile
7530 die Ansteuerung an Aussage 7015» um mit der Verarbeitung fortzufahren. Bei Beendigung
der laufenden Nachfrage nach einer grafischen Darstellung (oder wenn entweder die Stammdaten
oder die Streckendaten erschöpft sind), wird
809810/0587
49 545
in
Zeile 7540:
die untere Zeile der Zeichnung ausgedruckt.
Zeile 7550:
steuert Aussage 4000 an, um eine neue Anforderung zu erhalten.
809810/0587
Leerseite
Claims (1)
1) die Stamm- und Fahrdaten auf den neuesten Stand gebracht
werden, um die Geschwindigkeit eines anschließenden Intervalls zu prüfen,
2) im bejahenden Fall die Größe der Verletzung während
wird des laufenden Intervalls zeitweilig gespeichert, daß
die während der Verletzung zurückgelegte Entfernung errechnet und dann gespeichert und dann die Stammdaten
und Fahrdaten auf den neuesten Stand gebracht werden, um die Geschwindigkeit in einem anschließenden
Intervall zu prüfen, und daß, bei nicht Vorliegen einer Verletzung,
c) festgestellt wird, ob ein unmittelbar vorhergehendes Intervall eine Verletzung umfaßte, daß
1) im verneinenden Fall Stamm- und Fahrdaten auf den neuesten
Stand gebracht werden, um die Geschwindigkeit eines anschließenden Intervalls zu prüfen, daß
2) im bejahenden Fall angezeigt wird, daß das Fahrzeug aus einer Verletzung herausgekommen ist und daß es
809810/0587
49 545
eine vorläufige Speicherung angesammelter Verletzungen, der gesamten verletzenden Entfernung während des
laufenden Intervalls und der kumulativen Entfernung gibt - ., die das Fahrzeug während der Verletzung
zurückgelegt hat,
d) daß die Verletzung in der zeitweiligen Speicherung als Ergebnis der vorhergehenden Stufe angezeigt wird,
e) daß festgestellt v/ird, ob das laufende Intervall das letzte aufgezeichnete Intervall eines Laufs ist, daß
1) im verneinenden Fall der Meilenstein, an dem das Fahrzeug
die Verletzung verließ, die Entfernung, an der die maximale Verletzung auftrag und das Ausmaß der
Verletzung zeitweilig gespeichert v/ird, und daß
2) im bejahenden Fall festgestellt wird, ob während des
gesamten Laufs irgendwelche Verletzungen auftraten4 und daß eine Zusammenfassung angezeigt wird, die gegebenenfalls
zu erkennen gibt, wieviele Verletzungen während des Laufs auftraten und wieviele Meilen während
der Verletzungen zurückgelegt wurden.
20. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Fahrdaten^ennzeichen zum Anzeigen des Beginns
und Endes eines Laufs umfassen und mit einer Routine Fahrdaten in einen Rechnerspeicher eingegeben werden,
dadurch gekennzeichnet, daß die Datensatzanordnung festgestellt wird, um zwischen vorangeordneten
und unverarbeiteten Fahrdaten zu unterscheiden,
a) daß bei Vorlage vorgeordneter Fahrdaten die vorgeordneten Fahrdaten in einen Speicher zur Datenverarbeitung
eingelesen werden, daß
b) bei Vorlage unverarbeiteter Daten
1) die unverarbeiteten Fahrdaten in eine vorläufige
Speicherstelle eingelesen werden,
2) daß die Daten in der vorläufigen Speicherung in eine
809810/0587
49 545
- 11 -
für die Datenverarbeitung geeignete Form umgeordnet werden, und daß
c) die Datenkennzeichen in den Daten wahrgenommen werden, um Anfang und Ende des aufgezeichneten Laufs zum Vergleich
mit den Stammdaten zu bestimmen.
21. Verfahren nach einem der vorhergehenden Ansprüche,
bei dem die StammdatenJCennzeichen enthalten, die vorherbestimmte
Stellen eines Laufs anzeigen, und bei dem mit einer Routine Stammdaten in einen Rechner eingegeben werden,
dadurch gekennzeichnet, daß die erste Aufzeichnung von Stammdaten in eine vorläufige Speicherung
eingelesen wird, daß die erste Aufzeichnung in der vorläufigen Speicherung geprüft wird, um festzustellen, ob
in der Aufzeichnung ein Ereigniscode vorhanden ist, der das Auftreten eines vorgewählten Ereignisses an einer bestimmten
Entfernung längs eines Laufs andeutet, daß
a) festgestellt wird, ob der Code ein Datenkennzeichen anzeigt, daß im verneinenden Fall
b) die laufende Entfernung der Stammdaten festgestellt wird,
c) daß die Aufzeichnung auf den neuesten Stand gebracht wird,
d) daß festgestellt wird, ob die auf den neuesten Stand gebrachte Aufzeichnung innerhalb von Grenzen der aufgezeichneten
Stammdaten liegt,
e) daß der Datensatz geschlossen wird, wenn die Grenze auf den Stammdaten erreicht ist, daß, wenn die Feststellung
aus Schritt a) positiv ist,
f) festgestellt wird, ob das wahrgenommene Kennzeichen das erste wahrgenommene Kennzeichen ist, daß im bejahenden
Fall
g) der Abstand des ersten Kennzeichens als Bezugspunkt für
809810/0587
49 545
- 12 -
einen Fahrzeuglauf zeitweilig gespeichert wird, und daß mit Schritten b-e fortgefahren wird, daß, wenn Schritt
f negativ ist,
h) festgestellt wird, ob das wahrgenommene Kennzeichen das zweite wahrgenommene Kennzeichen ist, daß im bejahenden
Fall
i) der Abstand zwischen dem ersten und dem zweiten Kennzeichen errechnet wird,
j) daß mit den Schritten b-e fortgefahren wird.
22. Verfahren nach einem der vorhergehenden Ansprüche, bei dem jede Betriebsangabe ein Kennzeichen umfaßt,
das einen Ereigniscode angibt, der dem Auftreten mindestens eines vorherbestimmten Betriebsereignisses entspricht, und
bei dem Ereigniscodedaten neu angeordnet werden, dadurch gekennze i chne t, daß festgestellt wird,
ob ein vorherbestimmtes erstes Bit des Ereigniscodezeichens erscheint, welches angibt, daß alle Betriebsereignisse während
eines bestimmten Probeintervalls eingetreten sind, aus dem der Ereigniscode abgeleitet ist, daß bejahenden Falls
a) das erste festgestellte Bit zeitweilig gespeichert wird, daß im verneinenden Fall
b) festgestellt wird, ob das Ereigniscodezeichen einen binären Wert hat, der kleiner ist als eine erste vorherbestimmte
Menge, was ein ungültiges Zeichen angibt, daß im bejahenden Fall
c) ein Bit zeitweilig gespeichert wird, welches diese Ungültigkeit
anzeigt, welche aus einem Aufzeichnungsband-Synchronisationsfehler
resultiert,
d) daß die Routine stillgesetzt wird, wenn die angesammelten Bandsynchronisationsfehler einen vorgewählten Wert
übersteigen, daß wenn die Feststellung aus Schritt b negativ ist, was ein gültiges Zeichen andeutet,
809810/0587
49 545
e) das erste festgestellte Bit vom Zeichen abgezogen wird,
f) festgestellt v/ird, ob das entstehende Ereigniscodezeichen einen binären Wert hat, der geringer ist als eine
zweite vorherbestimmte Menge, was ein ungültiges Zeichen bedeutet, daß im bejahenden Pail mit den Schritten c und
d fortgefahren wird, und daß im verneinenden Fall eine Division-Multiplikation des Zeichens durchgeführt wird,
um das Zeichen für die dauerhafte Speicherung kompakter zu machen.
23. Verfahren nach einem der vorhergehenden Ansprüche, bei dem jede Betriebsangabe ein Zeichen umfaßt, das
der Fahrzeugentfernung entspricht, die während eines entsprechenden Intervalls zurückgelegt wurde, und bei dem mit
einer Routine die Entfernungsdaten neu angeordnet werden, dadurch gekennzeichnet, daß
a) festgestellt v/ird, ob ein zuerst festgestelltes Bit des Abstandszeichens erscheint, was angibt, ob das Fahrzeug
vorwärts oder rückwärts fuhr,
b) daß festgestellt wird, ob ein zweites vorherbestimmtes Bit des Entfernungszeichens erscheint, was angibt, ob
dieser betreffende Zustand während einer gegebenen Entfernung auftrat, und daß diese Angabe des Bremszustandes
gespeichert wird, wenn das Vorhandensein wahrgenommen wird t und daß
c) die Entfernungsintervalle angesammelt werden, während der vorherbestimmte Betriebsereignisse sich nicht ändern,
24. Verfahren nach einem der vorhergehenden Ansprüche, bei dem jede Betriebsangabe, die einem Intervall entspricht,
mindestens zwei Zeichen umfaßt, von denen das erste einen Ereigniscode kennzeichnet, der dem Auftreten mindestens
eines vorherbestimmten Betriebsereignisses entspricht, und das zweite eine zurückgelegte Entfernung angibt,
und bei dem mit einer Routine die Daten neu angeordnet werden,
809810/0587
-H-
49 545
dadurch gekennze i ohne t, daß
a) das Ereigniscodezeichen zur Weiterverarbeitung ausgewählt
wird,
b) daß festgestellt wird, ob ein erstes vorherbestimmtes
Bit des Ereigniscodezeichens erscheint, was andeutet, daß alle Betriebsereignisse während eines bestimmten
Probeintervalls aufgetreten sind, aus dem der Ereigniscode abgeleitet ist, daß im bejahenden Fall das erste
festgestellte Bit zeitweilig gespeichert wird, daß im verneinenden Pail
c) festgestellt wird, ob das Sreigniscodezeichen einen binären
Wert hat, der geringer ist als eine vorherbestimmte Menge, was ein ungültiges Zeichen bedeutet, daß im
bejahenden Fall
d) ein Bit zeitweilig gespeichert wird, welches diese Ungültigkeit
andeutet, die sich aus einem Aufzeichnungsband-Synchronisationsfehler
ergibt, daß
e) die Routine stillgesetzt wird, wenn die angesammelten Bandsynchronisationsfehler einen vorher gewählten V/ert
übersteigen, daß, wenn die Feststellung des Schrittes c negativ ist, was ein gültiges Zeichen bedeutet,
f) das erste festgestellte Bit vom Zeichen subtrahiert wird,
g) festgestellt λ/ird, ob das entstehende Ereigniscodezeichen
einen binären Wert hat, der geringer ist als eine zweite vorherbestimmte Menge, was ein ungültiges Zeichen
bedeutet, daß im bejahenden Fall mit den Schritten d und e fortgefahren wird, daß im verneinenden Fall
h) eine Division-Multiplikation des Zeichens durchgeführt wird, um das Zeichen für die dauerhafte Speicherung
kompakter zu machen, daß
809810/0587
19 545
i) eine Zeichenzählung geändert wird, damit die Routine gezwungen ist, mit einer Analyse des zweiten Zeichens
(Fahrzeugentfernung) fortzufahren, die folgende Schritte umfaßt,
j) daß festgestellt wird, ob ein erstes festgestelltes Bit
des Entfernungszeichens erscheint, was andeutet, ob das Fahrzeug in Vorwärts- oder Rückwärtsrichtung fuhr,
k) daß festgestellt wird, ob ein zweites vorherbestimmtes Bit des Entfernungszeichens erscheint, was andeutet, ob
ein Bremszustand während einer gegebenen Entfernung auftrat, und daß eine Anzeige des Bremszustandes gespeichert
wird, wenn dessen Vorhandensein wahrgenommen wird,
1) daß Entfernungsintervalle angesammelt werden, während der vorherbestimmte Betriebsereignisse sich nicht ändern,
und daß
m) die Routine stillgesetzt wird, wenn die Speicherkapazität für Daten erschöpft ist.
809810/0587
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US05/699,075 US4241403A (en) | 1976-06-23 | 1976-06-23 | Method for automated analysis of vehicle performance |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE2728362A1 true DE2728362A1 (de) | 1978-03-09 |
Family
ID=24807815
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE19772728362 Withdrawn DE2728362A1 (de) | 1976-06-23 | 1977-06-23 | Datenverarbeitungssystem fuer fahrdaten |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4241403A (de) |
| CA (1) | CA1203624A (de) |
| CH (1) | CH629321A5 (de) |
| DE (1) | DE2728362A1 (de) |
| FR (1) | FR2356203A1 (de) |
| GB (1) | GB1586070A (de) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109087407A (zh) * | 2018-07-27 | 2018-12-25 | 安徽安为科技有限公司 | 机车文件远程转储系统 |
Families Citing this family (53)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4933852A (en) * | 1979-08-22 | 1990-06-12 | Lemelson Jerome H | Machine operation indicating system and method |
| US4418388B1 (en) * | 1980-08-14 | 1998-08-25 | Spx Corp | Engine waveford pattern analyzer |
| JPS57187201A (en) * | 1981-05-14 | 1982-11-17 | Kyoritsu Kk | Chain saw |
| DE3211691A1 (de) * | 1982-03-30 | 1983-10-06 | Porsche Ag | Einrichtung zur aufnahme, abgabe und verarbeitung von daten |
| NZ204535A (en) * | 1982-07-23 | 1987-01-23 | Sundstrand Data Control | Direct display of data from a flight data recorder |
| US4561057A (en) * | 1983-04-14 | 1985-12-24 | Halliburton Company | Apparatus and method for monitoring motion of a railroad train |
| US4794548A (en) * | 1986-08-28 | 1988-12-27 | Halliburton Company | Data collection apparatus and train monitoring system |
| US4827438A (en) * | 1987-03-30 | 1989-05-02 | Halliburton Company | Method and apparatus related to simulating train responses to actual train operating data |
| US4853883A (en) * | 1987-11-09 | 1989-08-01 | Nickles Stephen K | Apparatus and method for use in simulating operation and control of a railway train |
| GB8813066D0 (en) * | 1988-06-02 | 1988-07-06 | Pi Research Ltd | Vehicle data recording system |
| DE69026039T2 (de) * | 1989-12-08 | 1996-08-22 | Hitachi Koki Kk | System zum Festlegen der Betriebsbedingungen von Zentrifugenrotoren |
| US5109343A (en) * | 1990-06-06 | 1992-04-28 | Union Switch & Signal Inc. | Method and apparatus for verification of rail braking distances |
| FR2667962B1 (fr) * | 1990-10-11 | 1994-05-20 | Opti Pilote | Procede d'enregistrement et de traitement de donnees pour la gestion de la conduite de vehicules. |
| US5255208A (en) * | 1991-08-08 | 1993-10-19 | Aeg Westinghouse Transportation Systems, Inc. | On-line processor based diagnostic system |
| US7082359B2 (en) * | 1995-06-07 | 2006-07-25 | Automotive Technologies International, Inc. | Vehicular information and monitoring system and methods |
| US5905374A (en) * | 1994-08-31 | 1999-05-18 | Auto Meter Products, Inc. | High performance tachometer |
| US8090598B2 (en) | 1996-01-29 | 2012-01-03 | Progressive Casualty Insurance Company | Monitoring system for determining and communicating a cost of insurance |
| US8140358B1 (en) | 1996-01-29 | 2012-03-20 | Progressive Casualty Insurance Company | Vehicle monitoring system |
| US5982168A (en) * | 1996-05-16 | 1999-11-09 | Auto Meter Products, Inc. | High performance tachometer with automatic triggering |
| US5825283A (en) * | 1996-07-03 | 1998-10-20 | Camhi; Elie | System for the security and auditing of persons and property |
| JP3366837B2 (ja) * | 1997-08-15 | 2003-01-14 | 株式会社小松製作所 | 機械の異常監視装置および方法 |
| US6826951B1 (en) | 1998-01-15 | 2004-12-07 | International Marketing, Inc. | Tire management system and method for surveying and servicing a vehicle tire |
| JP4023643B2 (ja) * | 1998-06-02 | 2007-12-19 | 株式会社小松製作所 | 建設機械の機器性能データ測定方法及び装置 |
| DE19951952A1 (de) * | 1998-11-05 | 2000-05-11 | Luk Getriebe Systeme Gmbh | Fahrzeug |
| US7378961B1 (en) | 1999-04-19 | 2008-05-27 | Accutrak Systems, Inc. | Monitoring system |
| US6762684B1 (en) | 1999-04-19 | 2004-07-13 | Accutrak Systems, Inc. | Monitoring system |
| SE516119C2 (sv) * | 1999-08-27 | 2001-11-19 | Thoreb Ab | Metod och anordning för att assistera en förare av ett fordon |
| US6137399A (en) * | 1999-11-02 | 2000-10-24 | Auto Meter Products, Inc. | High performance tachometer having a shift indicator system with "short-shift" protection |
| US6353777B1 (en) | 2000-08-16 | 2002-03-05 | Ford Global Technologies, Inc. | Path correction for lane change analysis |
| US7584033B2 (en) | 2000-08-31 | 2009-09-01 | Strategic Design Federation W. Inc. | Automobile monitoring for operation analysis |
| US6556905B1 (en) * | 2000-08-31 | 2003-04-29 | Lisa M. Mittelsteadt | Vehicle supervision and monitoring |
| US7941258B1 (en) | 2000-08-31 | 2011-05-10 | Strategic Design Federation W, Inc. | Automobile monitoring for operation analysis |
| US7188009B2 (en) * | 2001-10-31 | 2007-03-06 | New York Air Brake Corporation | Chain of custody |
| US6825767B2 (en) | 2002-05-08 | 2004-11-30 | Charles Humbard | Subscription system for monitoring user well being |
| US10569792B2 (en) | 2006-03-20 | 2020-02-25 | General Electric Company | Vehicle control system and method |
| US10308265B2 (en) | 2006-03-20 | 2019-06-04 | Ge Global Sourcing Llc | Vehicle control system and method |
| US9733625B2 (en) | 2006-03-20 | 2017-08-15 | General Electric Company | Trip optimization system and method for a train |
| US9950722B2 (en) | 2003-01-06 | 2018-04-24 | General Electric Company | System and method for vehicle control |
| USRE47986E1 (en) | 2003-05-15 | 2020-05-12 | Speedgauge, Inc. | System and method for evaluating vehicle and operator performance |
| US20050177337A1 (en) * | 2004-02-05 | 2005-08-11 | Penske Truck Leasing Co., L.P. | Vehicle usage forecast |
| US8768543B2 (en) * | 2006-03-20 | 2014-07-01 | General Electric Company | Method, system and computer software code for trip optimization with train/track database augmentation |
| US9689681B2 (en) | 2014-08-12 | 2017-06-27 | General Electric Company | System and method for vehicle operation |
| US9828010B2 (en) | 2006-03-20 | 2017-11-28 | General Electric Company | System, method and computer software code for determining a mission plan for a powered system using signal aspect information |
| US8963702B2 (en) | 2009-02-13 | 2015-02-24 | Inthinc Technology Solutions, Inc. | System and method for viewing and correcting data in a street mapping database |
| US9834237B2 (en) | 2012-11-21 | 2017-12-05 | General Electric Company | Route examining system and method |
| US9916625B2 (en) | 2012-02-02 | 2018-03-13 | Progressive Casualty Insurance Company | Mobile insurance platform system |
| DE102011089590A1 (de) * | 2011-01-31 | 2012-08-02 | Continental Automotive Gmbh | Verfahren zur Funktionsüberwachung einer Sicherheitsüberwachung einer Steuereinheit |
| US9702715B2 (en) | 2012-10-17 | 2017-07-11 | General Electric Company | Distributed energy management system and method for a vehicle system |
| US9669851B2 (en) | 2012-11-21 | 2017-06-06 | General Electric Company | Route examination system and method |
| US9682716B2 (en) | 2012-11-21 | 2017-06-20 | General Electric Company | Route examining system and method |
| CN104376617A (zh) * | 2014-10-31 | 2015-02-25 | 上海自仪泰雷兹交通自动化系统有限公司 | 车载数据记录仪及其收纳结构 |
| US9601021B2 (en) * | 2015-07-07 | 2017-03-21 | The Boeing Company | Retrospective analysis of vehicle operations |
| US10613854B2 (en) * | 2016-12-22 | 2020-04-07 | The United States Of America, As Represented By The Secretary Of The Navy | Systems and methods for automated renumbering, reformatting, and re-referencing of branching statements or go-to instruction line referencing within modified code using a dual-pass approach that includes operations using predicted new line numbers, error detection/correction, and alignment correction processing |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3485093A (en) * | 1965-09-16 | 1969-12-23 | Universal Testproducts Inc | Engine performance analyzer |
| US3655962A (en) * | 1969-04-01 | 1972-04-11 | Melpar Inc | Digital automatic speed control for railway vehicles |
| CH520587A (de) * | 1969-09-13 | 1972-03-31 | Int Standard Electric Corp | Steuerverfahren für eine automatische Steuerzentrale einer Eisenbahnsicherungsanlage |
| US3688099A (en) * | 1971-04-28 | 1972-08-29 | Lear Siegler Inc | Automatic control system with a digital computer |
| US3825744A (en) * | 1971-06-14 | 1974-07-23 | Gen Signal Corp | Overspeed detector for vehicle control system |
| US3927308A (en) * | 1972-11-22 | 1975-12-16 | Ebasco Serv | Monitor and results computer system |
| IT980896B (it) * | 1973-04-24 | 1974-10-10 | Olivetti & Co Spa | Perfezionamenti alle calcolatri ci elettroniche |
| US3938092A (en) * | 1973-07-16 | 1976-02-10 | Vapor Corporation | System for telecommunicating vehicle operation data between a ground station and a remote data processing station |
| US3882305A (en) * | 1974-01-15 | 1975-05-06 | Kearney & Trecker Corp | Diagnostic communication system for computer controlled machine tools |
| US3974992A (en) * | 1975-03-13 | 1976-08-17 | Westinghouse Electric Corporation | Vehicle velocity limit control method and apparatus |
-
1976
- 1976-06-23 US US05/699,075 patent/US4241403A/en not_active Expired - Lifetime
-
1977
- 1977-06-22 CA CA000281169A patent/CA1203624A/en not_active Expired
- 1977-06-22 CH CH766277A patent/CH629321A5/fr not_active IP Right Cessation
- 1977-06-23 FR FR7719315A patent/FR2356203A1/fr active Granted
- 1977-06-23 GB GB26376/77A patent/GB1586070A/en not_active Expired
- 1977-06-23 DE DE19772728362 patent/DE2728362A1/de not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109087407A (zh) * | 2018-07-27 | 2018-12-25 | 安徽安为科技有限公司 | 机车文件远程转储系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| US4241403A (en) | 1980-12-23 |
| FR2356203A1 (fr) | 1978-01-20 |
| FR2356203B1 (de) | 1983-07-08 |
| CH629321A5 (fr) | 1982-04-15 |
| CA1203624A (en) | 1986-04-22 |
| GB1586070A (en) | 1981-03-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE2728362A1 (de) | Datenverarbeitungssystem fuer fahrdaten | |
| DE68909237T2 (de) | Speicherungssystem für fahrzeugdaten. | |
| DE3049607C2 (de) | Verfahren zur Herstellung von Ausweiskarten und Vorrichtung zu dessen Durchführung | |
| DE102008017556A1 (de) | Lade-/Entladesteuervorrichtung für ein Hybridfahrzeug sowie Steuerprogrammvorrichtung hierfür | |
| DE3219991A1 (de) | Elektronisches geraet zur datenverarbeitung, insbesondere zur verwendung in einem verbundsystem | |
| DE2411549A1 (de) | Vorrichtung zur kontrolle von sich laengs einer vorbestimmten bahn bewegenden fahrzeugen | |
| DE102018212629A1 (de) | Verfahren zur Bestimmung von Fahrbahnzuständen | |
| WO2011067169A1 (de) | Verfahren zur vereinfachung einer beschreibung einer fahrtroute | |
| DE112016007518T5 (de) | Zugsteuersystem, bodensteuervorrichtung und bordeigene steuervorrichtung | |
| DE102011088805A1 (de) | Verfahren zum Entwickeln und/oder Testen eines Fahrerassistenzsystems | |
| DE4227787C2 (de) | Verfahren zum Bestimmen der Einlaufgeschwindigkeit von Eisenbahnfahrzeugen in eine Meßstrecke | |
| EP4067202B1 (de) | Verfahren und anordnung zur lokalisierung eines spurgebundenen fahrzeugs in einem streckennetz im anschluss an eine inbetriebnahme des fahrzeugs | |
| DE4230299B4 (de) | Verfahren zur Ortung eines Landfahrzeuges | |
| EP3329332B1 (de) | Verfahren zur ermittlung von stützpunkten eines versuchsplans | |
| DE102020211881A1 (de) | Vorrichtung und Verfahren zur Absicherung einer Fahrtrajektorie eines Ego-Fahrzeugs | |
| EP3376484B1 (de) | Verfahren und system zum ergänzen einer auf einem zentralrechner gespeicherten digitalen karte eines verkehrswegenetzes | |
| EP3931057A1 (de) | Möglichkeit zur fahrerbewertung | |
| DE102019215656A1 (de) | Verfahren zum Bewerten einer ausgewählten Route, Routenbewertungssystem und Computerprogramm | |
| DE102022119448A1 (de) | Verfahren und System zum Erzeugen einer Energieverbrauchsprognose für ein Fahrzeug | |
| DE102021200257A1 (de) | Verfahren zur Validierung von Softwarefunktionen in einem Fahrerassistenzsystem für Kraftfahrzeuge | |
| WO2022122553A1 (de) | Vergleich digitaler repräsentationen von fahrsituationen eines fahrzeugs | |
| DE2753575C2 (de) | Automatisches Funkerfassungssystem | |
| DE3032432C2 (de) | ||
| EP3174015B1 (de) | Erkennung von fehlern in einer von einem fahrzeug mitgeführten fahrzeugeinrichtung eines mautsystems | |
| EP0796779B1 (de) | Verfahren zur Steuerung und Sicherung eines spurgeführten Transportsystems |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8139 | Disposal/non-payment of the annual fee |