-
Allgemeiner Stand der Technik
-
Die
vorliegende Erfindung betrifft allgemein elektrifizierte Einschienenbahnen
und insbesondere das Kommunizieren von Informationen von einer sich bordextern
der elektrifizierten Einschienenbahn befindlichen Einrichtung zu
den Fahrzeugen, die auf der Einschienenbahn fahren. Der Ausdruck „elektrifizierte
Einschienenbahn" soll
weitreichend verwandt werden und Systeme beinhalten, die Träger auf
mehr als einer Schiene unterstützen.
-
Elektrifizierte
Einschienenbahnen finden heutzutage breite Verwendung in Herstellungsumgebungen
zum Transportieren von Produkten durch Herstellungsanlagen und andere
Arten von Gebäuden.
Die elektrifizierten Einschienenbahnen können elektrifizierte Einschienenhängebahnen
sein, bei denen die Schienen aufgestellt sind und Fahrzeuge das Produkt
unter den Schienen tragen, oder sie können Einschienenbahnen vom
Plattformförderer-[„skillet"]-Typ sein, bei denen
die Schienen auf dem Boden positioniert sind und sich die Plattformförderer über die
Schienen bewegen und das Produkt von darunter stützen. In jeder der Situationen
ist es oftmals wünschenswert,
Informationen von einer bordexternen Quelle zu einem oder mehreren
individuellen Fahrzeugen kommunizieren zu können, die sich auf der elektrifizierten
Einschienenbahn bewegen. Solche Informationen können Geschwindigkeits-, Höhen- oder
Positionsbefehle enthalten, die die Geschwindigkeit des Fahrzeugs
und die Höhe
oder Positionen des von dem Fahrzeug getragenen Produkts diktieren.
Es kann auch wünschenswert
sein, andere Arten von Informationen an das Fahrzeug zu übermitteln,
wie etwa Zonenblockierungsinformationen und dergleichen.
-
In
der Vergangenheit hat die Kommunikation solcher Informationen an
das Fahrzeug die Verwendung von proprietären Kommunikationssystemen
beinhaltet. Zu solchen proprietären
Systemen zählen ein
bordexternes Kommunikationsmodul, das an mindestens eine der Schienen
des elektrifizierten Einschienenbahnsystems angeschlossen ist, zusammen
mit einem oder mehreren Kommunikationsmodulen, die sich an den individuellen
Fahrzeugen befinden, die in elektrischem Kontakt mit der mindestens
einen Kommunikationsschiene stehen. Weil diese proprietären Kommunikationssysteme
spezialisierte Elektronik verwenden, die für einen bestimmten Verkäufer proprietär sind,
zögern
Systemverwender oftmals bei dem Einsatz solcher Kommunikationssysteme,
und zwar aus Angst, dass der Verkäufer mit dem Support des Produkts
in der Zukunft aufhören
könnte.
Solche proprietären
Systeme binden auch im allgemeinen einen Systembenutzer hinsichtlich
Service und Upgrades an einen bestimmten Verkäufer, was oftmals für Firmen
unerwünscht
ist, die mehrere Quellen für
ihre Kommunikationsbedürfnisse
für die
elektrifizierte Einschienenbahn sicherstellen möchten.
-
Aus
DE 197 40 761 A1 ist
ein elektrifiziertes Einschienenbahnsystem bekannt, das mindestens eine
Sammelschiene, mindestens einen Träger zum Bewegen auf der elektrischen
Einschienenbahn, eine erste Controllereinheit, die als zentraler
Controller ausgelegt ist, und eine an den mindestens einen Träger montierte
zweite Controllereinheit umfasst. Der zentrale Controller ist elektrisch
an die Sammelschiene über
einen ersten Sammelschienenkoppler gekoppelt. Die zweite Controllereinheit
an dem Träger, der
als ein Mikroprozessor ausgelegt ist, ist über einen zweiten Sammelschienenkoppler
elektrisch an die Sammelschiene gekoppelt. Detaillierte Informationen über die
Art und Merkmale der beiden Sammelschienenkoppler sind nicht gegeben.
Die Datenkommunikation zwischen dem zentralen Controller und dem
Mikroprozessor auf jedem Träger
ist bidirektional. Jeder Träger
ist mit einem Lesekopf eines Positionssensors versehen, um seine
tatsächliche
Position durch Verwendung eines Magnetbands zu detektieren, das entlang
der Einschienenbahn verläuft
und eine binäre
Absolutpositionscodierung aufweist.
-
Dementsprechend
besteht ein Bedarf an einer Verbesserung bei dem Management von
Kommunikationen in einem vereinfachten elektrifizierten Einschienenbahnsystem.
-
Kurze Darstellung der Erfindung
-
Dementsprechend
stellt die vorliegende Erfindung ein elektrifiziertes Einschienenbahnsystem nach
Anspruch 1 und ein Verfahren zum Übertragen von Informationen
in einem derartigen System nach Anspruch 9 bereit.
-
Die
vorliegende Erfindung stellt ein einfaches zuverlässiges Kommunikationssystem
für elektrifizierte
Einschienenbahnen bereit. Weil das System aus handelsüblichen
programmierbaren Logikcontrollern besteht, sind Kunden des Kommunikationssystems
wegen der Lieferung des Kommunikationssystems nicht an einen bestimmten
Verkäufer
gebunden. Weil zudem das Kommunikationssystem auf programmierbaren
Logikcontrollern basiert, die weitverbreitet und wohlbekannt sind,
können
die meisten Kunden das Kommunikationssystem ohne spezialisiertes
Servicepersonal von dem Verkäufer
implementieren und warten. Außerdem
erhält
man mit der Verwendung von programmierbaren Logikcontrollern eine
preiswertere Kommunikationslösung
als bisherige Systeme. Diese und weitere Vorteile der vorliegenden
Erfindung ergeben sich dem Fachmann angesichts der folgenden Spezifikation
bei Lektüre
in Verbindung mit den beiliegenden Zeichnungen.
-
Kurze Beschreibung der Zeichnungen
-
1 ist
eine Perspektivansicht eines Beispiels einer elektrifizierten Einschienenbahn,
bei der das Kommunikationssystem der vorliegenden Erfindung implementiert
werden kann;
-
2 ist
ein Blockdiagramm einer Ausführungsform
des Kommunikationssystems der vorliegenden Erfindung;
-
3 ist
ein Zeitsteuerdiagramm des Kommunikationsprotokolls einer Ausführungsform
der vorliegenden Erfindung;
-
4, 4A, 4B sind
Leiterdiagramme für
den bordexternen programmierbaren Logikcontroller einer Ausführungsform
der vorliegenden Erfindung; und
-
5, 5A, 5B sind
Leiterdiagramme für
den programmierbaren Bordlogikcontroller einer Ausführungsform
der vorliegenden Erfindung.
-
Ausführliche Beschreibung der bevorzugten
Ausführungsformen
-
Die
vorliegende Erfindung wird nun unter Bezugnahme auf die beiliegenden
Zeichnungen beschrieben, bei der gleiche Bezugszahlen in den verschiedenen
Zeichnungen gleichen Elementen entsprechen. Ein veranschaulichendes
Beispiel eines elektrifizierten Einschienenbahnsystems 18,
auf das die vorliegende Erfindung angewendet werden kann, ist in 1 dargestellt.
Das elektrifizierte Einschienenbahnsystem 18 ist als ein
Einschienenhängebahnsystem
nur als ein veranschaulichendes Beispiel dargestellt, und die vorliegende
Erfindung kann mit jeder Art von Einschienenbahnsystem verwendet werden,
das mindestens eine Sammelschiene für die Kommunikation enthält. Zu weiteren
Beispielen zählen
Einschienenbahnsysteme, bei denen sich die Schiene auf dem Boden
befindet und die Fahrzeuge auf der Schiene fahren. Eine derartige
Anwendung für
ein derartiges System besteht in der Unterstützung eines Plattformförderers,
der für
die Montage eines Fahrzeugs in einer Fahrzeugmontageanlage verwendet
wird.
-
Als
weiteres veranschaulichendes Beispiel findet die vorliegende Erfindung
Anwendung in der eigenen, gleichzeitig anhängigen, am 16. Oktober 2000
von der Anmeldern Hans-Gerd Spoeler et al. eingereichten US-Anmeldung
mit der laufenden Nr. 09/688,477 mit dem Titel Monorail Telescopic
Carrier of fenbarten elektrifizierten Einschienenbahn, deren Offenbarung
durch Bezugnahme hierdurch aufgenommen ist.
-
In
der dargestellten Ausführungsform
ist das elektrifizierte Einschienenbahnsystem 18 ein elektrifiziertes
Einschienenhängebahnsystem,
das eine Hängeschiene 22 und
mindestens ein Fahrzeug 24 enthält, das sich entlang der Schiene 22 bewegt.
Das Fahrzeug 24 wird auf der Schiene 22 von mehreren Rädern 26 gestützt, die
von einem Motor 28 angetrieben werden. Das Fahrzeug 24 kann
eine teleskopartige Stütze 23 zum
Einstellen der Höhe
einer Plattform 27 enthalten, die das Produkt 25 trägt. Das Fahrzeug 24 trägt Produkte
in einer Fabrik, die durch die Fabrik bewegt werden müssen. Die
Schiene 22 enthält
mehrere Sammelschienen 30, 31, 32, 33 usw. Die
Sammelschienen 30, 31, 32 ... sind elektrische Leiter,
die elektrisch voneinander isoliert sind und einer Vielzahl von
Funktionen dienen. In der Regel liefert mindestens eine der Sammelschienen
Strom für den
Motor 28 zum Bewegen des Fahrzeugs 24 entlang
der Schiene 22, und eine andere Sammelschiene liefert eine
gemeinsame elektrische Masse. Gemäß der Erfindung ist mindestens
eine der anderen Sammelschienen wie etwa die Sammelschiene 35 eine
Kommunikationssammelschiene. Die Kommunikationssammelschiene 35 führt die
elektrischen Signale, die für
die Kommunikation zwischen einer bordexternen Einrichtung und den
individuellen Fahrzeugen 24, die sich entlang der Schiene 22 bewegen, verwendet
werden.
-
Ein
Kommunikationssystem 20 der vorliegenden Erfindung gemäß einer
Ausführungsform
ist im Blockdiagramm in 2 dargestellt. Das Kommunikationssystem 20 enthält einen
bordexternen programmierbaren Logikcontroller (PLC) 40 und
mindestens einen Bord-PLC 42. Der bordexterne PLC 40 befindet
sich irgendwo außerhalb
der auf dem Schienensystem fahrenden Fahrzeuge, während sich
der Bord-PLC 42 an einer beliebigen entsprechenden Stelle
(in 1 nicht gezeigt) an einem Fahrzeug 24 befindet.
Es gibt einen Bord-PLC 42 für jedes der Fahrzeuge 24,
die sich in dem System befinden. In der dargestellten Ausführungsform
ist der bordexterne PLC 40 spezi fisch ein Allen-Bradley
PLC-5/80, und der Bord-PLC 42 ist spezifisch ein Allen-Bradley MicroLogixTM 1500, die beide von der Firma Rockwell Automation
Company in Milwaukee, Wisconsin, USA, vertrieben werden. Innerhalb
des Schutzbereichs der Erfindung können natürlich andere PLCs sowohl für den Bordals
auch den bordexternen PLC verwendet werden. Der bordexterne PLC
enthält mindestens
einen Ausgang 44, der elektrisch an die Kommunikationssammelschiene 35 gekoppelt
ist. Jeder Bord-PLC 42 enthält mindestens einen Eingang 46,
der elektrisch an die Kommunikationssammelschiene 35 gekoppelt
ist. Der Vorteil bei der Verwendung von PLCs besteht darin, dass
sie im allgemeinen standardmäßige Eingangs-
und Ausgangsprotokolle aufweisen, die von Hersteller zu Hersteller nicht
signifikant variieren und mit gewöhnlichen handelsüblichen
Eingabeeinrichtungen und Lasteinrichtungen verwendet werden sollen.
Die Substitution eines Herstellers von PLCS 40, 42 durch
einen anderen könnte
deshalb erreicht werden, ohne dass das ganze System ausgetauscht
werden muss.
-
Ganz
allgemein kommuniziert der bordexterne PLC 40 mit dem Bord-PLC 42 durch
sequentielles Aktivieren und Deaktivieren des Ausgangs 44,
um am Ausgang 44 eine Reihe von hohen und niedrigen Spannungen
zu erzeugen, die einer Nachricht entsprechen. Wenn der PLC 40 den
Ausgang 44 aktiviert, wird am Ausgang 44 ein 240-Volt-AC-Signal
erzeugt. Dieses Signal entspricht einem logischen H-Signal. Wenn
der PLC 40 den Ausgang 44 deaktiviert, wird am
Ausgang 44 ein Signal von im wesentlichen 0 Volt produziert.
Dieses Signal entspricht einem logischen H-Signal. Wenn der PLC 40 den
Ausgang 44 deaktiviert, wird am Ausgang 44 ein
Signal von im wesentlichen 0 Volt produziert. Dieses Signal entspricht
einem logischen L-Signal. Weil der Ausgang 44 elektrisch
an die Kommunikationssammelschiene 35 gekoppelt ist, wird
die vom PLC 40 ausgegebene Reihe von hohen und niedrigen
Signalen entlang der ganzen leitenden Länge der Kommunikationssammelschiene 35 übertragen.
Diese Serie von hohen und niedrigen Signalen breitet sich aufgrund des
elektrischen Kontakts zwischen diesem Eingang und der Kommunikationssammelschiene 35 auch zum
Ein gang 46 des Bord-PLCs 42 aus. Der Bord-PLC 42 ist
so programmiert, dass er diese Serie von hohen und niedrigen Spannungen
detektiert und auf der Basis des Inhalts der übertragenen Nachricht die entsprechende
Aktion ergreift. Während
es sich bei der Nachricht um einen beliebigen Inhalt handeln kann,
kann die Nachricht Befehle enthalten zum Steuern verschiedener Einstellungen
am Fahrzeug 24. Wenn als veranschaulichendes Beispiel die
Fahrzeuge 24 in einer Kraftfahrzeugherstellungsanlage verwendet
werden und jeweils eine Kraftfahrzeugkomponente tragen, wie etwa
ein Kraftfahrzeuggetriebe, kann es wünschenswert sein, den Fahrzeugen 24 zu
befehlen, die Höhe
und Drehung des Getriebes zu justieren, wenn es entlang der Montagestraße getragen
wird. Verschiedene Arbeitsstationen entlang der Schienenlinie erfordern
möglicherweise, dass
das Getriebe in unterschiedlichen Höhen und Winkelorientierungen
positioniert wird, um die an dieser Arbeitsstation durchgeführte bestimmte
Arbeit zu erleichtern. Außerdem
können
die individuellen Fahrzeuge der elektrifizierten Einschienenbahn
verschiedene Modelle von Teilen tragen – beispielsweise verschiedene
Arten von Getrieben für
verschiedene Wagenmodelle – und
es kann wünschenswert
sein, die Höhe
und Orientierung des getragenen Teils auf der Basis des jeweiligen
Modells, das getragen wird, zu steuern. Diese Arten von Justierungen
können
leicht erfolgen, indem die entsprechenden Befehle von dem bordexternen
PLC 40 an Bord-PLCs 42 gesendet werden.
-
Ein
einfaches Beispiel für
ein Fabriklayout ist in 2 dargestellt. Das Fabriklayout
enthält
ein elektrifiziertes Einschienenbahnsystem 18, das in einer
ovalen Gestalt angeordnet ist. Das elektrifizierte Einschienenbahnsystem
ist so ausgelegt, dass es Teile zwischen Stationen 10, 20, 30, 40, 50, 60, 70 und 80 transportiert.
Bei diesem Beispiel enthält
der bordexterne PLC 40 acht Ausgänge, die jeweils elektrisch
an elektrisch isolierte Sektionen der Kommunikationssammelschiene 35 gekoppelt
sind. Die isolierten Sektionen 35a, b, c usw. der Kommunikationssammelschiene 35 gestatten,
dass der bordexterne PLC 40 verschiedene Nachrichten an
jede isolierte Sektion 35a, b, c usw. der Kommunikationssammelschiene 35 kommuniziert.
In der dargestellten Ausführungsform
entspricht jede Sektion 35a, b, usw. der Kommunikationssammelschiene 35 einer
eindeutigen Arbeitsstation. Wenn der PLC 40 eine Nachricht an
ein Fahrzeug senden soll, das sich an der Arbeitsstation Nr. 20
befindet, wird somit Ausgang O:007 des PLC 40, der elektrisch
mit dem Kommunikationssammelschienensegment 35h gekoppelt
ist, entsprechend dem Inhalt der gewünschten Nachricht aktiviert
und deaktiviert. Weil das Kommunikationssammelschienensegment 35h nur
eine allgemein der Arbeitsstation Nr. 20 entsprechende Länge überspannt, empfängt nur
ein Fahrzeug an der Arbeitsstation Nr. 20 diese Nachricht. Wenn
eine Nachricht an ein Fahrzeug an einer anderen Arbeitsstation gesendet
werden soll, wird ein anderer Ausgang des PLC 40, der elektrisch
mit dem Kommunikationssegment an dieser jeweiligen Arbeitsstation
verbunden ist, aktiviert. Auf diese Weise können eindeutige Nachrichten
an Fahrzeuge an jeder individuellen Arbeitsstation gesendet werden.
Dies ist besonders dann nützlich, wenn
das Kommunikationssystem 18 mit Fahrzeugen verwendet wird,
die nicht in der Lage sind, ihre Position in der Fabrik automatisch
zu bestimmen. Durch Senden von eindeutigen Nachrichten an bestimmte
Sektionen des Einschienenbahnsystems kann dem Fahrzeug selbst dann
gesagt werden, die erforderlichen Justierungen für diese jeweilige Arbeitsstation
vorzunehmen, wenn sich das Fahrzeug möglicherweise nicht über seinen
Ort bewusst ist.
-
Wenn
vorgesehen wird, dass jedes individuelle Fahrzeug 24 seine
Stelle innerhalb der Anlage bestimmen kann, wie etwa durch Plazieren
einer eindeutigen Anordnung von Magneten an jeder Arbeitsstation,
die das Fahrzeug 24 detektiert, ist es nicht erforderlich,
die Kommunikationssammelschiene 35 in elektrisch isolierte
Sektionen zu unterteilen. In einem derartigen Fall können alle
die übertragenen
Nachrichten über
eine gemeinsame Kommunikationssammelschiene rundgesendet werden,
indem einfach in die Nachricht eine Positionsadresse aufgenommen wird,
die identifiziert, für
welche Arbeitsstation die Informationen gedacht sind. Nur das oder
die Fahrzeuge, die sich gegenwärtig
an dieser Positionsadresse befinden, reagieren auf die übertragene
Nachricht. Alternativ könnte
eine eindeutige Fahrzeugadresse als Teil der übertragenen Nachricht rundgesendet werden,
und nur das Fahrzeug, das diese eindeutige Adresse trägt, würde auf
die übertragene
Nachricht reagieren. In jedem Fall braucht die Kommunikationssammelschiene 35 nicht
segmentiert zu sein, und nur ein Ausgang 44 des bordexternen
PLC 40 ist erforderlich. Zu Zwecken der Beschreibung wird
hier angenommen, dass das Kommunikationssystem 20 in einer
Fabrik wie der von 2 implementiert ist, wobei die
Kommunikationssammelschiene 35 in elektrisch diskrete Segmente
unterteilt ist. Die Erfindung kann natürlich in verschiedenen Arten
von Sammelschienensystemen, wie etwa jenen oben beschriebenen, verwendet
werden.
-
Der
bordexterne PLC 40 kann an einen Computer oder an ein Computersystem 48 angeschlossen
sein, das die von Fahrzeugen 24 der elektrifizierten Einschienenbahn
transportierten Teile überwacht (2).
Der PLC 40 kommuniziert mit dem Computer 48 durch
einen in den PLC eingebauten standardmäßigen Kommunikationsport, anstatt
durch einen oder mehrere der Steuereingänge und -ausgänge des
PLC 40. Die Kommunikationen zwischen dem bordexternen PLC 40 und
dem Computer 48 werden auf standardmäßige Weise durchgeführt, wie
etwa über
RS-232, Ethernet, ControlNet, DeviceNet, oder andere Kommunikationsverbindungen.
Der Computer 48 kann verwendet werden, um die vom bordexternen
PLC 40 zum Bord-PLC 42 rundgesendeten Nachrichten
dynamisch zu ändern.
Der Computer 48 kann Teil eines fabrikweiten Steuersystems
sein, das den Fortschritt der von der elektrifizierten Einschienenbahn 18 getragenen
Teile überwacht.
In einem derartigen Fall hängen
die von PLCs 42 rundgesendeten Nachrichten möglicherweise
nicht nur von ihrer gegenwärtigen
Position innerhalb der Fabrik ab, sondern können möglicherweise auch von dem von
einem individuellen Fahrzeug 24 transportierten jeweiligen
Teil abhängen.
Sowohl die Position der Fahrzeuge 24 als auch der von jedem
Fahrzeug 24 getragenen Teile kann vom Computer 48 überwacht
werden.
-
Eine
Ausführungsform
eines Kommunikationsprotokolls für
das Kommunikationssystem 20 ist in 3 dargestellt.
Der bordexterne PLC 40 beginnt die Kommunikation einer
Nachricht, indem er zuerst für
eine bestimmte Zeitperiode, die in diesem Beispiel gleich 200 Millisekunden
ist, seinen Ausgang 44 einschaltet (d.h. auf einen hohen
Pegel setzt). Diese 200-Millisekunden-Zeitperiode
bildet ein Triggersignal 50, das den Start einer Nachricht
anzeigt. Bei dieser Ausführungsform
ist das Kommunikationsprotokoll in Zeitinkremente von 40 Millisekunden
unterteilt, und der Trigger 50 umfasst ein hohes Signal
für fünf aufeinanderfolgende
derartige Zeitscheiben. Das Triggersignal 50 kann alternativ
eine andere Anzahl von Zeitscheiben umfassen, und kann tatsächlich eine
beliebige Form annehmen, solange der PLC 42 erkennt, dass
es den Start einer Nachricht darstellt. Nachdem das Triggersignal 50 ausgegeben
worden ist, wird dann der Inhalt der Nachricht als eine Serie von
binären
Bits aus 1'en und
0'en auf die Kommunikationssammelschiene 35 ausgegeben,
wobei jede 1 einer hohen Ausgangsspannung entspricht und jede 0
einer niedrigen Ausgangsspannung entspricht. Bei der bevorzugten
Ausführungsform
ist jedes übertragene
Bit durch ein Abstandssignal 52 getrennt, das eine einzelne
Zeitscheibe von 0 Volt umfasst. Wenngleich diese nicht erforderlich
ist, hat es sich herausgestellt, dass die Verwendung eines einzelnen
Abstandssignals 52 zwischen jedem übertragenen Bit Übertragungsfehler
verhindern hilft. Diese Beabstandung von Bits dient auch dazu, das
Triggersignal 50 von einem Nachrichteninhalt zu unterscheiden,
der möglicherweise
fünf aufeinanderfolgende
1'en enthalten könnte.
-
In
dem in 3 dargestellten Protokoll umfasst die Nachricht
drei Acht-Bit-Wörter,
von denen die ersten beiden dem Nachrichteninhalt gewidmet sind,
und von denen das letzte bevorzugt als ein Prüfsummensignal verwendet wird.
An diesem Protokoll kann eine große Anzahl von Variationen vorgenommen
werden. Beispielsweise ist die Prüfsumme völlig fakultativ. Außerdem kann
die Reihenfolge, in der die Wörter übertragen werden,
variiert werden. Zudem kann natürlich
die Anzahl der Wörter
zusammen mit der Anzahl der sie umfassenden Bits variiert werden, wie
der Fachmann versteht. In dem dargestellten Beispiel wird ein erstes
Abstandssignal 52 von 0 Volt unmittelbar nach der Ausgabe
des Triggersignals 50 übertragen.
-
Insbesondere
wird das Null-Volt-Abstandssignal 52 zwischen 200 und 240
Millisekunden nach dem ersten Übertragen
des Triggersignals ausgegeben. In der Zeitscheibe zwischen 240 und
280 Millisekunden wird das erste Bit der Nachricht an PLC-Ausgang 44 ausgegeben.
In dem dargestellten Beispiel ist dieses erste Bit eine Null, und
dieses Bit wird „übertragen", indem der Ausgang 44 abgeschaltet
gehalten wird. Nach diesem ersten Bit wird in der Zeitscheibe zwischen
280 und 320 Millisekunden ein weiteres Abstandssignal 52 übertragen.
Nach diesem zweiten Abstandssignal 52 wird das nächste Bit von
Wort Nr. 1 in der Zeitscheibe zwischen 320 und 360 Millisekunden übertragen.
Diesem Bit folgt ein weiteres Abstandssignal. Wenn das erste hohe
(d.h. 1) Bit von Wort Nr. 1 schließlich erreicht ist, in diesem Fall
zwischen 400 und 440 Millisekunden, wird der Ausgang 44 etwa
40 Millisekunden lang eingeschaltet. Ein weiteres Abstandssignal
folgt auf dieses übertragene
Bit. Der Rest der Nachricht wird danach auf gleiche Weise rundgesendet,
wobei jedes Bit, das entweder eine 1 oder eine 0 sein kann, übertragen und
mit Abstandssignalen 52 verschachtelt wird. Keine speziellen
Signale sind erforderlich, um die individuellen Wörter zu
trennen, mit Ausnahme des Abstandssignals zwischen jedem Bit, weil
der Bord-PLC 42 im voraus programmiert ist zu wissen, wie
viele Bits jedes der individuellen Wörter umfassen. Nach dem vollständigen Übertragen
der Nachricht kann es wünschenswert
sein, ein nachlaufendes Abstandssignal 54, wie etwa das
in 3 dargestellte, aufzunehmen, das während der
Zeitscheibe 2120–2160 Millisekunden
rundgesendet wird. Das nachlaufende Abstandssignal 54 kann
außer
der in 3 dargestellten einzelnen Zeitscheibe für verschiedene
Zeitlängen
rundgesendet werden. Nach dem Rundsenden des nachlaufenden Abstandssignals 54 wird
ein weiteres Triggersignal 50 rundge sendet, und entweder
eine neue Nachricht oder die gleiche Nachricht wird auf gleiche
Weise rundgesendet.
-
Bei
der bevorzugten Ausführungsform
enthält
das Kommunikationssystem 20 einen Fehlerdetektions- oder
Fehlerkorrekturmechanismus als Teil des Übertragungsprotokolls. Wenngleich
andere Mechanismen möglich
sind, ist in der dargestellten Ausführungsform ein Prüfsummenmechanismus
enthalten. Diese Prüfsumme
wird berechnet, indem die Wörter
Nr. 1 und Nr. 2 unter Ignorierung eines etwaigen Überlaufs
miteinander addiert werden, und das Zweierkomplement dieser Summe
genommen wird. Nachdem der Bord-PLC 42 die Wörter Nr.
1 und Nr. 2 und die Prüfsumme
empfängt,
addiert er die Wörter Nr.
1, Nr. 2 und die Prüfsumme
unter Ignorierung eines etwaigen Überlaufs zusammen. Da die Prüfsumme das
Zweierkomplement der Summe der Wörter Nr.
1 und Nr. 2 ist, sollte die Gesamtsumme der Wörter Nr. 1, Nr. 2 und der Prüfsumme 0
betragen. Dies ist in 3 dargestellt. Wenn die Gesamtsumme
dieser drei nicht Null ist, nimmt der PLC 42 an, dass in der Übertragung
ein Fehler aufgetreten ist, und ignoriert die übertragene Nachricht. Weil
der PLC 40 so programmiert ist, dass er die gleiche Nachricht
wiederholt immer wieder überträgt, bis
die Notwendigkeit entsteht, die Nachricht zu ändern, braucht der PLC 42 nicht
an den PLC 40 zu melden, dass eine fehlerhaltige Übertragung
stattgefunden hat. Stattdessen ignoriert der PLC 42 einfach
die fehlerhafte Nachricht und wartet bis zu ihrer nächsten Rundsendung.
In der Regel wird der Inhalt einer Nachricht nur dann geändert, wenn
der Computer 48 dem PLC 40 mitteilt, die übertragene
Nachricht zu ändern.
Wenn eine derartige neue Nachricht befohlen wird, ist der PLC 40 programmiert,
die neue Nachricht wiederholt immer wieder rundzusenden, bis noch
eine weitere neue Nachricht empfangen wird. Auf diese Weise vermeidet
der Bord-PLC 42, eine Nachricht an den bordexternen PLC 40 senden
zu müssen,
dass er eine einen Fehler enthaltende Übertragung empfangen hat.
-
Ein
die Programmierung des bordexternen PLC 40 darstellendes
Leiterdiagramm 56 ist in 4, 4A und 4B dargestellt.
-
Das
dargestellte Diagramm basiert auf der von der Firma Rockwell Automation
in Milwaukee, Wisconsin, USA, vertriebenen Rockwell-Software RSLogix 5,
wenngleich der Fachmann versteht, dass innerhalb des Schutzbereichs
der Erfindung jede mit dem ausgewählten PLC kompatible PLC-Programmierungssoftware
verwendet werden kann. Das Leiterdiagramm 56 umfasst zehn
mit 0000 bis 0009 gekennzeichnete Sprossen. Sprosse 0000 dient zum Berechnen
der mit den Wörtern
Nr. 1 und Nr. 2 assoziierten Prüfsumme.
Der Inhalt von Wort Nr. 1 wird an einer Speicherstelle N7:0 gespeichert,
während
der Inhalt von Wort Nr. 2 an einer Speicherstelle N7:1 gespeichert
wird. Bitfeldverteiler 58 und 60 dienen dazu,
den Inhalt der Wörter
Nr. 1 und Nr. 2 an Speicherstellen N7:5 bzw. N7:6 zu bewegen. Die
ADD-Anweisung 62 addiert die beiden, an Speicherstellen
N7:5 und N7:6 gespeicherten Wörter
miteinander und legt die Summe an Speicherstelle N7:7 ab. Der Bitfeldverteiler 64 bewegt
die Summe an der Speicherstelle N7:7 zur Speicherstelle N7:8. Die
NOT-Anweisung 66 ändert
alle 0'en an der
Speicherstelle N7:8 zu 1'en,
und alle 1'en an
der Speicherstelle N7:8 zu 0'en. Das
Ergebnis wird an Speicherstelle N7:9 abgelegt. Die ADD-Anweisung 68 addiert
die Zahl Eins zu der an Speicherstelle N7:9 gespeicherten Summe
und speichert die Summe an Speicherstelle N7:10. Diese Summe ist
die Prüfsumme,
die als Teil des Fehlerkorrekturmechanismus des Kommunikationssystems 20 übertragen
wird. Der Bitfeldverteiler 70 bewegt diese Summe von Speicherstelle
N7:10 zu N7:2 vor der Übertragung.
-
Sprosse
0001 startet den Zeitgeber für
das Triggersignal 50. Eine Untersuche-Ob-Aus-Anweisung 72 prüft nach,
ob der Startdatenspeicher B3:0 F (falsch) ist, und wenn er dies
ist, beginnt Zeitgeber T4:0 mit dem Zählen. Zeitgeber T4:0 zählt für eine Zeitperiode
gleich dem Triggersignal 50, was in der dargestellten Ausführungsform
200 Millisekunden sind. Nachdem 200 Millisekunden gezählt worden sind,
wird der „Erfolgt"-Ausgang (DN-done) des Zeitgebers T4:0
auf einen logischen W-(wahr)
Wert gesetzt. Eine Untersuche-Ob-Ein-Anweisung 74 überwacht
den Zeitgeber T4:0 und bewirkt, dass ein Zwischenspeicher 76 den
Startdatenspeicher B3:0 auf einen W-Wert setzt, wenn der Zeitgeber
T4:0 sein Zählen
beendet hat (d.h. der „Erfolgt"-Ausgang wird auf
W gesetzt).
-
Sprosse
0002 führt
eine fakultative Prüfung durch,
um zu sehen, ob die Wörter,
die übertragen werden
sollen, die maximale Anzahl von Bits übersteigen, die von dem Kommunikationsprotokoll
verarbeitet werden kann. Beispielsweise sind in dem in 3 gezeigten
Protokoll die Wörter
Nr. 1 und Nr. 2 jeweils acht Bit lang. Die größte Anzahl, die sie jeweils
darstellen können,
ist deshalb der Dezimalwert 255 (28 – 1 = 255).
Allgemein ist der größte Dezimalwert,
den ein Wort darstellen kann, 2K – 1, wobei
K die Anzahl an Bits in dem Wort ist. Eine Größer-Als-Anweisung 78 prüft deshalb,
um zu sehen, ob der Wert von Wort Nr. 1, der an Speicherstelle N7:0
gespeichert ist, größer ist
als 2L – 1,
wobei L die Anzahl von Bits in Wort Nr. 1 darstellt. Die Größer-Als-Anweisung 80 prüft, um zu
sehen, ob der Wert von Wort Nr. 2, der an Speicherstelle N7:1 gespeichert
ist, größer ist
als 2M – 1,
wobei M die Anzahl von Bits von Wort Nr. 2 darstellt. Wenn die Werte
eines der Wörter
Nr. 1 oder Nr. 2 den Maximalwert übersteigen, der von der Anzahl
von Bits in jedem Wort dargestellt werden kann, dann ist ein Fehler
aufgetreten, und das Wort mit dem zu großen Wert kann nicht übertragen
werden. In einem derartigen Fall wird der im Startdatenspeicher B3:0
gespeicherte binäre
Wert bei 82 aus dem Zwischenspeicher herausgenommen, was
verhindert, dass die Nachricht von PLC 40 übertragen
wird.
-
Sprosse
0003 (4A) startet einen Datenübertragungszeitgeber,
der verwendet wird, um den Ausgang des PLC 40 zur richtigen
Zeit beim Übertragen
der gewünschten
Nachricht an den PLC 42 auf den entsprechenden Wert zu
setzen. Eine Untersuche-Ob-Ein-Anweisung 84 bewirkt, dass
der Zeitgeber T4:1 zu zählen
beginnt, wenn der Startdatenspeicher B3:0 einen W-wert aufweist.
Wie man anhand von Sprosse 0001 ersehen kann, hat der Startdatenspeicher
B3:0 nur dann einen W-Wert, wenn der Zeitgeber T4:0 das Zählen für das Triggersignal 50 abgeschlossen
hat. Der Zeitgeber T4:1 wird deshalb erst dann mit dem Zählen beginnen,
nachdem das Triggersignal 50 ausgegeben worden ist. Der
Zeitgeber T4:1 zählt
mindestens so lange, wie die Gesamtzeit zwischen den Triggersignalen 50.
Bei der Ausführungsform
von 3 würde
der Zeitgeber T4:1 mindestens 1960 Millisekunden (2160–200) lang
zählen.
-
Sprosse
0004 steuert teilweise jene Daten, die über den Datenausgang O:000
ausgegeben werden. Der Datenausgang O:000 ist elektrisch an die Kommunikationssammelschiene 35 gekoppelt
und der Ausgang wird zum Übertragen
der Nachrichten zum Bord-PLC 42 verwendet. Wenn der Datenausgang
O:000 eingeschaltet ist, wird ein 240-Volt-AC-Signal auf die Kommunikationssammelschiene 35 ausgegeben.
Innerhalb des Schutzbereichs der Erfindung könnte ein Signal anderer Spannung
oder ein Gleichstromsignal alternativ verwendet werden. Eine Entspeicher-Anweisung 86 setzt
anfänglich
den Datenausgang O:000 auf einen F-Wert (d.h. keine Ausgabe). Die
Entspeicher-Anweisung 86 fungiert dahingehend, zwischen
jedes übertragene Bit
der Nachricht ein Abstandssignal 52 einzufügen, wie
es sich bei Betrachtung des Rests des Leiterdiagramms 56 ergibt.
Eine Untersuche-Ob-Ein-Anweisung 88 bewirkt, dass der Datenausgang
O:000 (bei 90) auf einen W-Wert immer dann zwischenspeichert,
wenn der Zeitgeber T4:0 immer noch zählt. Wie oben beschrieben zählt der
Zeitgeber T4:0 die Zeit, während
der das Triggersignal 50 ausgegeben wird. Eine Zwischenspeicher-Anweisung 90 stellt deshalb
sicher, dass der Datenausgang O:000 während der ganzen Zeitperiode
des Triggersignals 50 auf einen hohen Ausgang gesetzt ist.
-
Sprosse
0005 überträgt die innerhalb
von Wort Nr. 1 enthaltenen Daten (4A). Eine
Untersuche-Ob-Ein-Anweisung 92 bestimmt, ob der Zeitgeber
T4:1 freigegeben ist (d.h. zählt),
und gestattet, dass die Daten von Wort Nr. 1 nur dann übertragen werden,
wenn der Zeitgeber T4:1 freigegeben ist. Wenn der Zeitgeber T4:1
freigegeben ist, bestimmt eine Grenztest-Anweisung 94, ob der insgesamt
akkumulierte Zählwert
von Zeitgeber T4:1 zwischen den an den Speicherstellen N10:0 und
N10:1 spezifizierten Werten liegt. Die an den Speicherstel len N10:0
und N10:1 spezifizierten Werte sind die Anfangs- und Endzeiten für das erste übertragene
Bit der Nachricht. Bei dem Beispiel von 3 ist das erste übertragene
Bit von Wort Nr. 1 eine 0 und wird zwischen 240 und 280 Millisekunden
nach dem ersten Beginn des Triggersignals übertragen. Weil der Zeitgeber
T4:1 erst dann mit dem Zählen
beginnt, nachdem das Triggersignal 50 übertragen worden ist, würden die
Speicherwerte N10:0 und N10:1 für
das Beispiel von 3 40 und 80 betragen.
Die Grenztest-Anweisung 94 würde deshalb bestimmen, ob der insgesamt
akkumulierte Zählwert
von Zeitgeber T4:1 zwischen 40 und 80 Millisekunden liegt. Wenn
dem so ist, würde
eine Untersuche-Ob-Ein-Anweisung 96 prüfen, um zu sehen, ob Bit N
von Wort Nr. 1 W ist oder nicht, und bewirken, dass der Datenausgang O:000
(bei 98) auf dem gleichen Logikwert wie Bit N zwischenspeichert.
B17 N ist das erste übertragene Bit von Wort Nr.
1 (das heißt,
in dem Beispiel von 3 das ganz links liegende Bit.)
Somit wird der Datenausgang O:000 als H zwischengespeichert, wenn
Bit N eine 1 ist, oder als L zwischengespeichert, wenn Bit N eine
0 ist. Dies bewirkt die Übertragung
von Bit N vom Datenausgang O:000 entlang der Kommunikationssammelschiene 35 zum
Bord-PLC 42.
-
Sprosse
0005 enthält
weiterhin eine zweite Grenztest-Anweisung 100, die dazu
verwendet wird, das zweite Bit von Wort Nr. 1 (Bit N + 1) zu übertragen.
Die Grenztest-Anweisung 100 bestimmt, ob der insgesamt
akkumulierte Zählwert
von Zeitgeber T4:1 zwischen den an den Speicherstellen N10:2 und N10:3
gespeicherten Werten liegt. Bei dem Beispiel von 3 würden die
Werte 120 und 160 in N10:2 bzw. N10:3 gespeichert
werden, weil sie die Anfangs- und Endzeiten sind, während derer
das zweite Bit von Wort Nr. 1 übertragen
wird (gemessen ab dem Zeitpunkt, zu dem das Triggersignal 50 beendet
worden ist). Eine Untersuche-Ob-Ein-Anweisung 102 und Zwischenspeicher-Anweisung 104 setzen
den Datenausgang O:000 auf den Wert von Bit N + 1 von Wort Nr. 1,
wenn der Zeitgeber T4:1 einen insgesamt akkumulierten Zeitwert zwischen 120 und 160 aufweist.
Das zweite Bit (von links) von Wort Nr. 1 wird deshalb 120 Millisekunden
nach dem Senden von Triggersignal 50 übertragen und wird für weitere
40 Millisekunden übertragen.
-
Sprosse
0005 enthält
so viele Grenztest-Anweisungen, wie Bits in Wort Nr. 1 vorliegen.
Jeder Grenztest prüft,
um zu sehen, ob die Zeit für
das Übertragen
dieses bestimmten Bits erreicht worden ist, indem der insgesamt
akkumulierte Zählwert
von Zeitgeber T4:1 geprüft
wird. Wenn es die angemessene Zeit zum Übertragen eines bestimmten
Bits ist, wird der Datenausgang O:000 auf den Wert dieses Bits für eine Zeitperiode
von 40 Millisekunden gesetzt. Die Grenztest-Anweisung 106 ist
die letzte Grenztest-Anweisung auf Sprosse 0005 und wird zum Übertragen
des letzten Bits von Wort Nr. 1 verwendet. Die Grenztest-Anweisung 106 prüft, um zu sehen,
ob der insgesamt akkumulierte Zählwert
von Zeitgeber T4:1 zwischen den an Speicherstellen N10:x und N10:x
+ 1 gespeicherten Werten liegt. Die Variable x wird verwendet, weil
die Gesamtlänge
von Wort Nr. 1 in verschiedenen Ausführungsformen der Erfindung
geändert
werden kann. Bei dem Beispiel von 3, wo Wort
Nr. 1 ein Acht-Bit-Wort ist, würde die
Grenztest-Anweisung 106 bestimmen, ob der insgesamt akkumulierte
Zählwert
von Zeitgeber T4:1 zwischen den an den Speicherstellen N10:14 und N10:15
gespeicherten Werten lag, die 600 bzw. 640 betragen würden. Wenn
dem so ist, würde
der Datenausgang O:000 über
die Untersuche-Ob-Ein-Anweisung 108 und die Zwischenspeicher-Anweisung 110 auf
den Wert des letzten Bits von Wort Nr. 1 gesetzt werden.
-
Sprossen
0006 und 0007 übertragen
Wort Nr. 2 bzw. das Prüfsummenwort
auf die gleiche Weise, wie Sprosse 0005 Wort Nr. 1 überträgt. Die
Sprossen 0006 und 0007 enthalten jeweils so viele Grenztest-Anweisungen,
wie es Bits in dem jeweiligen übertragenen
Wort gibt. Jede Grenztest-Anweisung wird dazu verwendet, den insgesamt
akkumulierten Zählwert
von Zeitgeber T4:1 zu überwachen
und zu bewirken, dass das entsprechende Bit zur entsprechenden Zeit
auf dem Datenausgang O:000 ausgegeben wird. Wie bei Sprosse 0005
sind die Sprossen 0006 und 0007 generisch zur Gestattung der Übertragung
von Wörtern einer
willkürlichen
Anzahl von Bits dargestellt. Der letzte Grenztest in Sprosse 0006 würde prüfen, um
zu sehen, ob der insgesamt akkumulierte Zählwert von Zeitgeber T4:1 zwischen
den an den Speicherstellen N10:x + y und N10:x + y + 1 gespeicherten
Werten lag. Gleichermaßen
würde der letzte
Grenztest in Sprosse 0007 prüfen,
um zu sehen, ob der insgesamt akkumulierte Zählwert von Zeitgeber T4:1 zwischen
den an den Speicherstellen N10:x + y + z und N10:x + y + z + 1 gespeicherten Werten
lag. Die Variablen x, y und z werden zum Bezeichnen der Tatsache
verwendet, dass die Längen von
Wort Nr. 1 und dem Prüfsummenwort
variiert werden können.
Bei dem Beispiel von 3 würden die Speicherstellen N10:x
+ y, N10:x + y + 1, N10:x + y + z, und N10:x + y + z + 1 den Speicherstellen N10:30,
N10:31, N10:46, bzw. N10:47 entsprechen, und würden die Werte 1240, 1280,
1880 bzw. 1920 enthalten. Es versteht sich natürlich, dass die an den Speicherstellen
N10:0–N10:x
+ y + z + 1 enthaltenen Werte von der Länge der Zeitscheiben abhängen, die zum Übertragen
der Bits der Nachricht gewählt
sind. Bei dem dargestellten Beispiel beträgt diese Zeitscheibenlänge 40 Millisekunden.
Andere Zeitscheiben können
verwendet werden. Wenn 20-Millisekunden-Zeitscheiben verwendet würden, würden alle
an den Speicherstellen N10:0–N10:x
+ y + z + 1 gespeicherten Werte halbiert werden. Wenn 80-Millisekunden-Zeitscheiben
verwendet würden,
würden
diese Werte verdoppelt werden. Die gewählte Zeitscheibe könnte um
ein Mehrfaches länger
sein als die Programmabtastzeit des Bord-PLC 42, um einen
genauen Empfang sicherstellen zu helfen. Beispielsweise eignet sich
eine 40-Millisekunden-Zeitscheibe für den Einsatz mit einem Bord-PLC
mit einer Programmzeitabtastung im Bereich von 5 bis 10 Millisekunden, wenngleich
Abtastzeiten außerhalb
dieses Bereichs ebenfalls verwendet werden können.
-
Bei
Sprosse 0008 (4B) bewirkt eine Untersuche-Ob-Ein-Anweisung 112,
dass der Startdatenspeicher B3:0 (bei 114) entspeichert
wird, wenn der Zeitgeber T4:1 mit dem Zählen aufgehört hat (d.h. seinen Erfolgt-(DN)-Zustand
erreicht hat). Das Entspeichern des Startdatenspeichers B3:0 bewirkt, dass
der Triggerzeitgeber wieder startet, wie in Sprosse 0001 dargelegt.
Durch Setzen des größten Zählwerts
von Zeitgeber T4:1 auf einen Zählwert,
der höher
liegt als die insgesamt akkumulierte Zeit, die nötig sind, um die Nachricht
zu übertragen,
wird das nachlaufende Abstandssignal 54 erzeugt. Die Länge des
nachlaufenden Abstandssignals 54 wird dadurch gesteuert,
auf welche Länge
der Zeitgeber T4:1 programmiert ist, das Zählen über die Zeit hinweg fortzusetzen,
die erforderlich ist, um die Nachricht zu übertragen.
-
Das
Leiterdiagramm 116 ist in den 5, 5A und 5B dargestellt
und beschreibt die Programmierung für die Bord-PLCs 42. Der Dateneingang I:000
ist elektrisch an die Kommunikationssammelschiene 35 gekoppelt
und detektiert die Serie von hohen und niedrigen Spannungen, die
vom bordexternen PLC 40 auf die Sammelschiene 35 ausgegeben
werden. Bei Sprosse 0000 bewirkt eine Untersuche-Ob-Ein-Anweisung 118,
dass ein Zeitgeber T4:0 am PLC 42 (nicht mit dem Zeitgeber
T4:0 am PLC 40 zu verwechseln) zu zählen beginnt. Mit dem Zeitgeber
T4:0 wird überwacht,
ob das Triggersignal 50 gesendet worden ist oder nicht.
Bei der Ausführungsform
von 3 ist das Triggersignal 200 Millisekunden lang.
Der Zeitgeber T4:0 ist bevorzugt auf eine Zeitperiode gesetzt, die
geringfügig
kürzer
ist als die volle Periode von 200 Millisekunden. Wenn ein 200-Millisekunden-Trigger
verwendet wird, könnte der
Zeitgeber T4:0 auf 160 Millisekunden gesetzt werden. Wenn der Zeitgeber
T4:0 mit dem Zählen aufgehört hat,
bewirkt eine Untersuche-Ob-Ein-Anweisung 120, dass der
Startdatenspeicher B3:0 (bei 122) zwischenspeichert.
-
Sprosse
0001 funktioniert dahingehend, etwaige Daten, die zuvor an den Speicherstellen
N7:0, N7:1, N7:2, und N7:3 gespeichert waren, zu löschen (d.h.
auf 0 zu setzen). Die Speicherstellen N7:0, N7:1 und N7:2 werden
verwendet, um die Wörter
Nr. 1, Nr. 2 bzw. das Prüfsummenwort
zu speichern. Sprosse 0001 löscht
somit alle alten Werte, die sich von vorausgegangenen Übertragungen
an diesen Speicherstellen befinden könnten. Speicherstelle N7:3
wird wie unten erläutert
für die
vorübergehende
Speicherung verwendet.
-
Sprosse
0002 beginnt bei einem Zeitgeber T4:1, nachdem das Triggersignal 50 detektiert
worden ist. Mit dem Zeitgeber T4:1 wird bestimmt, welches Bit vom
bordexternen PLC 40 zu einem bestimmten Zeitpunkt übertragen
wird. Eine Untersuche-Ob-Ein-Anweisung 124 überprüft, ob der
Startdatenspeicher B3:0 W ist oder nicht. Der Startdatenspeicher
B3:0 wird gemäß Sprosse
0000 nur dann W sein, nachdem das Triggersignal für im Wesentlichen die
ganze Periode des Triggersignals (z.B. 160 der insgesamt 200 Millisekunden)
detektiert worden ist. Wenn der Startdatenspeicher B3:0 wahr ist,
bewirkt eine Untersuche-Ob-Aus-Anweisung 126, dass der Zeitgeber
T4:1 erst dann mit dem Zählen
beginnt, wenn der Dateneingang I:000 auf einen L-Wert geht. Der
Dateneingang I:000 geht auf einen L-Wert, sobald das Triggersignal 50 übertragen
worden ist. Zeitgeberdaten T4:1 starten deshalb unmittelbar nach dem
Senden des Triggersignals 50. Eine Untersuche-Ob-Ein-Anweisung 128 stellt
sicher, dass der Zeitgeber T4:1 nach dem Hochfahren weiterhin zählt, bis
die Grenze des Zeitgebers T4:1 erreicht worden ist. Die Grenze des
Zeitgebers T4:1 sollte auf eine Zeitperiode gesetzt sein, die lange
genug ist, um die ganze Nachricht zu empfangen. Bei der gegenwärtigen Ausführungsform
ist die Grenze des Zeitgebers T4:1 auf die gleiche Grenze wie die
des am bordexternen PLC 40 angeordneten Zeitgebers T4:1
gesetzt.
-
Sprosse
0003 (5A) detektiert und speichert
das vom bordexternen PLC 40 übertragene Wort Nr. 1. Ein
Paar von Untersuche-Ob-Ein-Anweisungen 130 und 132 stellt
sicher, dass Sprosse 0003 nur dahingehend funktioniert, Daten zu
empfangen, wenn der Startdatenspeicher W ist (d.h. das Triggersignal 50 empfangen
worden ist) bzw. wenn der Zeitgeber T4:1 immer noch zählt. Sprosse
0003 enthält einen
oder mehrere Grenztests, wobei die Gesamtzahl der Anzahl von Bits
in Wort Nr. 1 entspricht. Aufgrund einer Untersuche-Ob-Ein-Anweisung 134 werden
die Grenztests nur dann durchgeführt,
wenn am Dateneingang I:000 ein H-Signal detektiert wird. Wenn für eine gegebene
Zeitperiode kein H-Signal detektiert wird, werden das oder die entsprechenden Bits
an den Speicherstellen N7:0, N7:1 und N7:2 nicht geändert und
bleiben auf 0, wie in Sprosse 0001 gesetzt. Wenn am Dateneingang
I:000 ein H-Signal detektiert wird, werden die Grenztests von Sprosse 0003
durchgeführt.
Ein erster Grenztest 136 prüft, um zu sehen, ob der insgesamt
akkumulierte Zählwert von
Zeitgeber T4:1 zwischen den an den Speicherstellen N10:0 und N10:1
gespeicherten Werten liegt. Diese beiden Speicherstellen speichern
die Anfangs- und Endzeiten für
die erste Zeitscheibe, in der ein Bit übertragen wird. Somit würden in
dem Beispiel von 3 diese beiden Speicherstellen
die Werte 40 bzw. 80 speichern. (Die erste 40-Millisekunden-Zeitperiode
würde vom
Abstandssignal 52 belegt werden.) Wenn der insgesamt akkumulierte
Zählwert
von Zeitgeber T4:1 zwischen 40 und 80 liegt, dann
verriegelt ein Zwischenspeicher 138 das erste Bit (Bit
N) von Wort Nr. 1 (an Speicherstelle N7:0 gespeichert) auf einen
H-Wert. Ein zweiter
Grenztest 140 bestimmt, ob der insgesamt akkumulierte Zeitwert
von Zeitgeber T4:1 zwischen den an Speicherstellen N10:2 und N10:3
gespeicherten Werten liegt. Diese Werte entsprechen den Anfangs-
und Endzeiten für die
jeweilige Zeitscheibe, in der das zweite Bit von Wort Nr. 1 übertragen
wird. Wenn der insgesamt akkumulierte Zählwert von Zeitgeber T4:1 zwischen diesen
beiden Werten liegt, verriegelt eine Zwischenspeicher-Anweisung 142 das
zweite Bit von Wort Nr. 1 auf einen H-Wert. Bei der Ausführungsform
von 3 würden
die Werte von N10:2 und N10:3 120 und 160 betragen,
wenngleich wie angemerkt andere Werte verwendet werden könnten, wenn
in dem Kommunikationsprotokoll anders bemessene Zeitscheiben verwendet
würden.
Das letzte Bit von Wort Nr. 1 wird vom Grenztest 144 detektiert.
Bei der Ausführungsform
von 3 wird der Grenztest 144 der achte Grenztest
auf Sprosse 0003 sein, da Wort Nr. 1 acht Bit lang ist.
-
Sprossen
0004 und 0005 detektieren Wort Nr. 2 bzw. das Prüfsummenwort auf die gleiche
Weise, wie Sprosse 0003 Wort Nr. 1 detektiert. Jede Sprosse enthält so viele
Grenztests, wie es Bits für dieses
jeweilige Wort gibt. Jeder Grenztest überwacht Zeitgeber T4:1, um
zu sehen, ob die Zeit für den
Emp fang dieses jeweiligen Bits angekommen ist. Weil die Speicherstellen
zum Speichern der Wörter Nr.
1, Nr. 2, und der Prüfsumme
anfänglich
auf 0 gesetzt sind, wird jeder Grenztest erst dann aktiviert, wenn
am Dateneingang I:000 ein H-Signal detektiert wird.
-
Sprosse
0006 (5B) bestimmt anhand der übertragenen
Prüfsumme,
ob es bei der Übertragung
einen Fehler gab. Eine Untersuche-Ob-Ein-Anweisung 146 gestattet,
dass die Prüfsummenberechnungen
erst dann beginnen, wenn der Zeitgeber T4:1 mit dem Zählen aufgehört hat.
Die Prüfsummenberechnungen
werden deshalb erst dann durchgeführt, wenn die ganze Nachricht
empfangen worden ist. Eine Berechne-Anweisung 148 berechnet
die Summe der Wörter
Nr. 1 und 2 und der Prüfsumme,
die an Speicherstellen N7:0, N7:1 bzw. N7:2 gespeichert sind, und
legt die berechnete Summe an der Speicherstelle N7:3 ab. Ein Bitfeldverteiler 150 bewegt
die Summe an die Speicherstelle N7:4 und entfernt dadurch einen
etwaigen Überlauf
in der berechneten Summe. Eine Gleich-Anweisung 152 bestimmt,
ob die Summe (unter Ignorierung des Überlaufs) gleich Null ist oder
nicht. Wenn sie gleich Null ist, dann werden die empfangenen Daten
als gültig
angenommen, und Bewege-Anweisungen 154 und 156 bewegen die
empfangenen Wörter
Nr. 1 und Nr. 2 (an N7:0 und N7:1 gespeichert) an die Speicherstellen
N7:10 und N7:11, wo sie von PLC 42 dazu verwendet werden können, andere
Operationen an dem Fahrzeug 24 der elektrifizierten Einschienenbahn
zu steuern. Wenn die Summe (unter Ignorierung des Überlaufs) nicht
gleich Null ist, wird angenommen, dass die Daten einen Fehler enthalten,
und die Wörter
Nr. 1 und Nr. 2 werden nicht an ihre letzten Speicherstellen N7:10
und N7:11 bewegt. Entriegel-Anweisung 158 verriegelt den
Startdatenspeicher B3:0 auf einen F-Wert, und die Rücksetz-Anweisung 160 setzt
den Zeitgeber T4:1 zurück,
wodurch eine weitere Nachricht detektiert werden kann, nachdem ein
weiteres Triggersignal detektiert ist.
-
Das
in dem Leiterdiagramm von 4, 4A und 4B dargestellte
bordexterne Programm wird zum Senden von Daten vom bordexternen
PLC 40 zu einer einzelnen Kommunikationssammelschiene 35 oder
einem einzelnen Segment der Kommunikationssammelschiene verwendet.
Wenn eine segmentierte Kommunikationssammelschiene 35 verwendet
wird und Nachrichten an verschiedene Segmente gesendet werden sollen,
wird das bordexterne Programm unter Verwendung eines anderen Ausgangs
am PLC 40 wiederholt, der elektrisch mit dem jeweiligen
Segment der Kommunikationssammelschiene 35 gekoppelt ist.
Beispielsweise ist das in 4, 4A und 4B gezeigte
bordexterne Programm so ausgelegt, dass es Signale am Ausgang O:000
ausgibt. In 3 wäre dieses Programm deshalb
nur in der Lage, Nachrichten an das Segment der Sammelschiene 35 weiterzuleiten,
das sich vor der Station Nr. 10 befindet. Wenn erwünscht wäre, mit
den Segmenten vor allen acht der Arbeitsstationen zu kommunizieren,
würde das
bordexterne Programm weitere siebenmal wiederholt werden für insgesamt
acht Kopien. Die Differenz zwischen den Programmen wäre der jeweilige,
von dem Programm gesteuerte Ausgang, wenngleich es auch möglich wäre, an jeder
Kopie gegebenenfalls andere Variationen wie etwa Wortlänge, Anzahl
der Wörter
usw. vorzunehmen.
-
Die
Programme der 4, 4A, 4B, 5, 5A und 5B sind
nur für
eine Einwegekommunikation von dem bordexternen PLC 40 zu dem
oder den Bord-PLC(s) 42 ausgelegt. Es wäre jedoch möglich, das Kommunikationsprotokoll
so zu ändern,
dass gegebenenfalls eine Zweiwegekommunikation berücksichtigt
wird. Bewerkstelligt werden könnte
dies beispielsweise, indem der Bord-PLC 42 nach jedem zweiten,
vom bordexternen PLC 40 gesendeten Triggersignal Nachrichten
zurück
zum PLC 40 übertragen
könnte,
damit dadurch alle PLCs abwechselnd Nachrichten zueinander übertragen
können.
Dies würde
gestatten, dass Informationen von dem Träger oder seiner Last zurück zum bordexternen
PLC gespeist werden. Als weitere Möglichkeit könnte Halbwellentechnologie
verwendet werden, um eine Zweiwegekommunikation bereitzustellen. Beispielsweise
könnten
positive Signale für
vom PLC 40 zum PLC 42 gehende Informationen verwendet werden,
während
negative Signale für
vom PLC 42 zum PLC 40 gehende Kommunikationen
verwendet werden könnten,
oder umgekehrt. Um eine Zweiwegekommunikation bereitzustellen, könnte eine
große Vielfalt
an anderen Methoden ebenfalls verwendet werden.
-
Wenngleich
die vorliegende Erfindung im Hinblick auf die in den Zeichnungen
gezeigten und in der obigen Spezifikation erörterten bevorzugten Ausführungsformen
zusammen mit mehreren alternativen Ausführungsformen beschrieben worden
ist, versteht der Fachmann, dass die vorliegende Erfindung nicht
auf diese bestimmten Ausführungsformen
beschränkt
ist, sondern jede und alle derartigen Modifikationen einschließt, die
innerhalb des Schutzbereichs der Erfindung liegen, wie in den beigefügten Ansprüchen definiert.