-
Die
Erfindung des Anmelders betrifft allgemein das Gebiet der mikroprozessorbasierenden
Schweißsteuereinheiten
und genauer ein Schnittstellenmodul, um ein Netzwerk von Eingabe-
und Ausgabevorrichtungen über
ein Feldbus-Kommunikationsnetz mit den Schweißsteuereinheiten zu koppeln.
-
Diese
Anmeldung steht im Zusammenhang mit der folgenden gemeinsam übertragenen
Anmeldung, eingereicht am 20. Dezember 1996, mit dem Titel "WELD CONTROLLER SYSTEM
FOR COUPLING TO A COMMON DATABASE SYSTEM ON A COMMUNICATION NETWORK" (laufende Nummer
der Anmeldung 08/771 620, Anmelderegister Nr. RLA-24), die mit einem
Prioritätsdatum
in Bezug auf die vorliegenden Anmeldung veröffentlicht, jedoch als
US 5 808 885 am 15. September
1999 gedruckt wurde.
-
US-A-4
985 612 offenbart ein Schweißsystem,
bei dem mehrere Schweiß-Steuervorrichtungen,
ein Daten-Server-Festplattenlaufwerk und Maschinensteuerschnittstellen über ein
lokales Netz verbunden sind. Dies entspricht einem Steuer-Ein-/Ausgabe-Modul
gemäß dem Oberbegriff
des Anspruchs 1.
-
Kommunikationsnetze,
die Eingabevorrichtungen mit Ausgabevorrichtungen koppeln, sind
in zunehmendem Maße
auf viele verschiedene Steuersysteme angewendet worden. Schweißsteuereinheiten
stellen keine Ausnahme dar. Es gibt sehr viele verschiedene Feldbus-Kommunikationsprotokolle,
einschließlich
Interbus-S, Ethernet und Profibus. Diese Eingangsvorrichtungen und
Ausgangsvorrichtungen ermöglichen
den Steuereinheiten, lokale I/O-Funktionen wie etwa eine Trennschützsteuerung,
eine Hilfsschütz-Rückführregelung,
das Betätigen
des Shuntschalters und den Steuerungsabbruch entgegenzunehmen und
auszuführen. Diese
Protokolle sind gewöhnlich
speziell für
eine bestimmte Schweißsteuereinheit
oder für
ein Netzwerk von Schweißsteuereinheiten
mit dem gleichen Typ von Steuerung vorgesehen. Bei einer Fertigungsstraße mit verschieden
Typen von Steuereinheiten und Bedienerschnittstellen, die an verschiedene
Netzwerke gekoppelt sind, wird es schwierig zu bestimmen, welche
Einheit gerade über
welchen Netzwerktyp gesteuert wird. Jede Schweißsteuereinheit würde wegen
dem Zusammenkommen unähnlicher
Datenstrukturen in den verschiedenen Netzwerken eine andere Netzwerk-Schnittstelleneinheit
bei einem jeweils anderen I/O-Protokoll erfordern. Es wäre günstiger,
eine Netzwerk-Schnittstelleneinheit zu dem System von Schweißsteuereinheiten
zu haben, die eine Austauschbarkeit von Feldbusprotokollen unabhängig von
der Funktonalität
der Schweißsteuereinheit ermöglicht,
dadurch dass zum Anschließen
der Modulschnittstelle und des Netzwerkmoduls an die Schnittstelle
der Schweißsteuereinheit
ein gemeinsamer Feldbus verwendet wird, der im Allgemeinen an Widerstandsschweißvorrichtungen
angepasst werden kann, wobei er ungeachtet der Datentypen, mit denen
jede Schweißvorrichtung
umgeht, verschiedene Steuerungsstrategien verwendet.
-
Die
Erfindung schafft ein Steuer-Ein-/Ausgabe(I/O)-Modul wie in den
beigefügten
Ansprüchen
definiert.
-
Die
Hauptaufgabe der vorliegenden Erfindung ist die Schaffung einer
Netzwerkschnittstelle für
verschiedene Feldbusvorrichtungen und -protokolle für die Steuerung
mit jeder bekannten Steuerungsstrategie.
-
Die
Erfindung ermöglicht
die Schaffung eines Schweißsteuersystems
mit einem selbstständigen I/O-Modul,
das unabhängig
von den Feldbuseingaben und ausgaben lokale Eingaben und Ausgaben
aufweist.
-
Die
Erfindung ermöglicht
die Schaffung eines Schweißsteuersystems,
das ein selbstständiges
I/O-Modul mit austauschbaren Feldbuskommunikationsadaptern aufweist.
-
Ferner
ermöglicht
die Erfindung die Schaffung eines Schweißsteuersystems mit einem anwenderdefinierten
Bit-Umspeichern zwischen Feldbusdaten, lokalen I/O-Daten und Schweißsteuereinheit-I/O-Eingangsdaten.
-
In
der bevorzugten Ausführungsform
der Erfindung wird ein System aus Elementen geschaffen, das wenigstens
eine Schweißsteuereinheit,
die als eine Slave-Vorrichtung betrieben wird, und wenigstens eine Master-Vorrichtung
wie etwa eine Bedienerschnittstelleneinheit, eine Datenerfassungsvorrichtung
oder eine Netzübergangsvorrichtung,
die an ein übliches
Netzwerk gekoppelt ist, enthält,
wobei sich jedoch nicht hierauf beschränkt wird. Jede Schweißsteuervorrichtung
weist ein Zeitgebermodul aus, das Zündsignale an ein Leistungsmodul
sendet, das schließlich
eine Schweißleistung
an die Schweißpistolenkontaktspitzen
liefert. Das Zeitgebermodul enthält
eine CPU, die einen Schweißablaufplan
ausführt,
der in einem Speicher in dem Zeitgeber gespeichert ist. Ein Port
koppelt das Zeitgebermodul an das Netzwerk. Die Bedienerschnittstelle
ist ebenfalls über
einen Port an das Netzwerk gekoppelt. Die Kommunikation zwischen
den mit dem Netzwerk verbunden Vorrichtungen ist deterministisch,
wobei zu jedem Zeitpunkt eine Vorrichtung als Master dient und die übrigen Vorrichtungen
als Slaves dienen. Jede Vorrichtung besitzt eine zugewiesene Hierarchie
für den Fall,
dass sie das Netzwerk steuern und als Master wirken kann. Wenn sie
die Steuerung innehat, kann sie sich an andere Vorrichtungen wenden,
um entweder Daten zu senden oder Daten zu empfangen. Die physikalische
Schicht des Netzwerks verwendet eine einfache Bustechnologie mit
aktiven Knoten, um die verschiedenen Vorrichtungen zwischen den
zwei Netzwerkenden zu verbinden.
-
Die
Eingabe und Ausgabe von Daten zu und von der Schweißsteuereinheit
erfolgt durch ein Schweißsteuer-I/O-Modul.
Das Schweißsteuer-I/O-Modul
ist über
einen seriellen Port mit dem Schweißsteuermodul gekoppelt. Lokale
Ein gabe- und Ausgabevorrichtungen sind über eine lokale I/O-Schnittstelle
mit dem Schweißsteuer-I/O-Modul
gekoppelt, und vernetzte Vorrichtungen sind an einen Feldbuskommunikationsadapter
gekoppelt. Für
jeden Feldbusprotokolltyp ist ein anderer Adapter erforderlich.
Das Schweißsteuer-I/O-Modul
enthält
eine mikroprozessorbasierende Vorrichtung, die für das unterschiedliche Zusammenwirken
mit den lokalen Vorrichtungen, den vernetzten Vorrichtungen und
der Schweißsteuereinheit
sorgt und dieses steuert, wobei sie außerdem für eine Sichtanzeige der Zustände des
Feldbusses und der lokalen I/O-Daten sorgt.
-
Weitere
Merkmale und Vorteile der Erfindung, von denen angenommen wird,
dass sie neuartig und nicht offensichtlich sind, werden aus der
folgenden Beschreibung anhand der beigefügten Zeichnung offenbar, in
der eine bevorzugte Ausführungsform
der Erfindung gezeigt ist. Für
die Interpretation des vollständigen Schutzumfangs
der Erfindung, der nicht unbedingt durch eine derartige Ausführungsform
repräsentiert
ist, wird auf die Ansprüche
verwiesen.
-
KURZBESCHREIBUNG
DER ZEICHNUNG
-
1 ist
eine Übersichtsdarstellung
in Blockform, die ein typisches Schweißsteuersystem zeigt;
-
2 ist
eine detaillierte Blockdarstellung, die eine typische Schweißvorrichtung
und ein Schweißsteuersystem
zeigt, die eine Bedienerschnittstelle und ein Kommunikationssystem
gemäß der vorliegenden Erfindung
implementieren könnten;
-
3 ist
eine vereinfachte Blockdarstellung einer Reihe von Schweißsteuereinheiten,
die gemäß der vorliegenden
Erfindung an ein Netzwerk gekoppelt sind;
-
4 ist
eine Blockdarstellung einer primären
Master-Dateneingabekonsole gemäß der vorliegenden Erfindung;
-
5 ist
ein Blockdiagramm einer Master-Bedienerschnittstellenkonsole, die
als eine Master-Datenbasisvorrichtung gemäß der vorliegenden Erfindung
arbeitet;
-
6 ist
ein vereinfachter Ablaufplan, der einen genauen Überblick über das Kommunikationsprotokoll
der Master-Datenbasisvorrichtung gemäß der vorliegenden Erfindung
gibt;
-
7 ist
ein detaillierter Ablaufplan, der die erfindungsgemäße Kommunikations-Task
der Master-Datenbasisvorrichtung im Einzelnen zeigt;
-
8 ist
ein detailliertes Blockdiagramm, das die erfindungsgemäße Datenübertragungsantwort
der Slave-Vorrichtung zeigt;
-
9 ist
ein detailliertes Blockdiagramm, das die Verbindungen eines Schweißsteuer-I/O-Moduls
gemäß der vorliegenden
Erfindung zeigt;
-
10 ist
eine detaillierte Blockdarstellung, die das Zusammenwirken von lokaler
und vernetzter Eingabe/Ausgabe und der Schweißsteuereinheit gemäß der vorliegenden
Erfindung zeigt.
-
AUSFÜHRLICHE
BESCHREIBUNG
-
Obwohl
diese Erfindung viele verschiedene Ausführungsformen annehmen kann,
wird hier eine bevorzugte Ausführungsform
im Einzelnen beschrieben und veranschaulicht.
-
1 zeigt
ein typisches Schweißsystem 10,
das einen Schweißzeitgeber 11,
ein Schweißvorrichtungs-Leistungsmodul 13 und
eine Schweißvorrichtung 15 umfasst.
Der Schweißzeitgeber 11 erzeugt
Zündsignale
F+ und F–,
die benutzt werden, um einen Thyristorschalter 16, der
an einen Schweißtransformator 17 angeschlossen
ist, unter Strom zu setzen oder einzuschalten, um Leistung an die
Kontaktspitzen und das zu schweißende Werkstück zu liefern.
Der Primärstrom
des Schweißtransformators 17 wird
mit einem ringförmigen
Transformator 18 überwacht,
der an den Primärkreis
gekoppelt ist. Ein Referenztransformator 19 überwacht
die Eingangsspannung der Speiseleitung. Neben dem Spannungssignal
V und dem Stromsignal I empfängt
der Schweißzeitgeber 11 ein Übertemperatursignal
von dem Thyristorschalter 16 zur Verwendung in Steueralgorithmen
in dem Schweißzeitgeber 11 für eine Schutzmaßnahme,
um die Schweißvorrichtung 10 zu steuern
oder abzuschalten, wenn der Thyristor eine vorgegebene Temperatur
erreicht. Besondere Einzelheiten der Ausführung eines Schweißsystems 10 können dem
US-Patent Nr. 4,945,201 entnommen werden, obwohl diese Einzelheiten
für ein
korrektes Verständnis
der vorliegenden Erfindung nicht unbedingt erforderlich sind.
-
In 2 zeigt
eine Blockdarstellung im Einzelnen eine Schweißvorrichtung 15 und
einen Schweißzeitgeber 11,
die so anpassbar sind, dass sie ein Netzwerk-Schnittstellensystem
gemäß der vorliegenden
Erfindung enthalten können.
Der Schweißzeitgeber 11 könnte ein
Teil eines umfassenderen Systems sein, das von einer speicherprogrammierbaren
Steuerung (SPS) 20 gesteuert wird, oder er könnte unabhängig sein.
Eine Rückwandschnittstelle 22 sorgt
für Mittel,
um die SPS 20 an den Mikroprozessor (CPU) 23 und
an einen Da tenbus 25 zu koppeln. Die CPU 23 ist
außerdem über den
Datenbus 25 an den A/D-Umsetzer 27, die Ein/Ausgabe-Schnittstelle 29,
den sowohl RAM 34 als auch ROM 35 umfassenden
Speicher 35, die Zündschaltung 39 und
LED-Anzeigen 43 gekoppelt, die Zustandsinformationen von
dem Schweißzeitgeber 11 liefern.
Außerdem sind
an den Datenbus 25 zwei Kommunikationsports 31 und 32 gekoppelt.
Der Dateneingabe-Schnittstellenport 31 wird verwendet,
um eine Bedienerschnittstelleneinheit 47 mit einer Tastatur
für eine
manuelle Eingabe von Daten in die Steuerung an den Schweißzeitgeber
zu koppeln. Der Netzwerk-Schnittstellenport 42 sorgt für die Verbindung
zu dem Netzwerk 50 der vorliegenden Erfindung. Die Schnittstelleneinheiten 31 und 42 können so
eingestellt sein, dass sie einzeln oder gleichzeitig kommunizieren.
-
Die
für den
Betrieb der CPU 23 erforderlichen Steuer- und Taktsignale
sind nicht gezeigt, da sie dem Fachmann auf dem Gebiet wohl bekannt
und nicht Gegenstand der vorliegenden Erfindung sind. Ein im ROM 35 gespeichertes
Programm sorgt für
die Steuerung des Leistungsmoduls 13 und der Schweißvorrichtung 15 sowie
des Schweißvorgangs
durch den Betrieb der CPU 23. Dieses Programm wird mittels
der Zündschaltung 39 Thyristorzündsignale
F+ und F– erzeugen,
um den Schweißablauf
in Reaktion auf verschiedene Eingabesignale zu steuern. Ein Zweikanal-A/D-Umsetzer 27 setzt
analoge Signale I und V von dem Schweißvorrichtungs-Leistungsmodul
in digitalisierte Signale 45 um, die den primären Schweißstrom Iw
des Schweißtransformators 17 bzw.
die Eingangsspannung der Speiseleitung 46 repräsentieren.
Die digitalisierten Signale 45 werden für eine Speicherung im RAM 34 und
zur Verwendung als Prozesssteuersignale bei der Ausführung eines im
ROM 35 residenten Schweißsteuerprogramms oder Ablaufplans
(SP) 51 auf den Bus 25 gebracht. Außerdem erzeugt
der A/D-Umsetzer 27 ein Zündvorsignal 52, das
in die Zündschaltung 39 eingegeben
wird. Von dem Steuerprogramm wird außerdem ein Freigabesignal erzeugt,
um ein versehentliches Zünden
infolge eines möglichen "Sich-Aufhängens" des Programms zu
vermeiden, da zwei Handlungen, Vorzünden und Freigeben, erforderlich
sind, bevor die Zündsignale
F+, F– erzeugt
werden. Die Einzelheiten der Zündschaltung 39 und
des A/D-Umsetzers 27 sind wohlbekannt und werden deshalb
nicht näher
beschrieben.
-
Die
Eingabe-/Ausgabe-Schnittstelle 29 empfängt eine Eingabe 54 von
dem Schweißeinrichtungs-Leistungsmodul 13,
wenn die Temperatur der Thyristorschalter 16 einen im Voraus
festgelegten Wert erreicht, der eine Übertemperaturbedingung angibt.
Die Temperatur wird in jedem Schweißzyklus überwacht, und falls sie den
festgelegten Wert erreicht, wird das Eingangssignal 54 das
Steuerprogramm 51 veranlassen, den Schweißstrom Iw
zu sperren und eine Fehlermeldung an die Fehlerbehandlung 41 auszugeben,
die ein Teil des Schweißsteuerprogramms 51 im
ROM 35 ist. Das Steuerungsstoppsignal 56 ist ein
Signal, das in der Schweißvorrichtung 15 als
eine Verriegelungssteuerung erzeugt wird, wobei es aktiviert wird,
wenn ein Bediener oder eine externe Vorrichtung das Öffnen der
Verriegelung bewirkt. Dieses Signal 56 wird wiederum zur Folge
haben, dass das Steuerprogramm 51 den Schweißstrom Iw
sperrt und eine Fehlermeldung an die Fehlerbehandlung 41 ausgibt.
Die externe Vorrichtung ist gewöhnlich
ein kapazitiver Handgriff, der heruntergedrückt wird, um eine Notfallbedingung
anzuzeigen, die ein sofortiges Aufgeben des Schweißzyklus
erfordert. Da ein kurzgeschlossener Thyristorschalter 16 zu
einem Dauerstrom zu der Schweißvorrichtung 15 führen würde, ist
ein Shuntschalter in Reihe mit der Schweißvorrichtung 15 geschaltet,
um die Leistung abzuführen, falls
die Bedingung eines kurzgeschlossenen Thyristors auftritt. Es wird
davon ausgegangen, dass diese Bedingung vorliegt, wenn der Strom
I zu einem Zeitpunkt erfasst wird, zu dem er durch die Schweißsteuerung 11 nicht
befohlen worden ist. Die Schweißsteuerung 11 wird
ein Shunt-Schnellabschaltsignal 58 erzeugen, um bei einem
Thyristorkurzschluss eine Schnellabschaltung des Shuntschalters
zu bewirken. Ein weiteres Ausgangssignal 60 steuert ein
Magnetschaltschütz,
das in der Schweißvorrichtung 15 verwendet
wird, wobei es unter Spannung gesetzt wird, wenn eine Schweißfolge beginnt.
-
Für die Speicherung
von Anwenderdaten für
eine Rückgewinnung
durch eine Anwenderschnittstelle für Diagnosezwecke kann ein Notizblockspeicher 44 verwendet
werden, auf den das Netzwerk 50 zugreifen kann. Damit steht
ein statischer Speicher zur Verfügung,
den ein Anwender nutzen kann, um Daten einzugeben, die für einen
bestimmten Zeitgeber sachdienlich sein könnten, wie etwa das Datum der
Installation, die Anzahl der Arbeitsvorgänge an einem bestimmten Datum
usw.
-
An
den Datenbus 25 kann eine externe Speichereinheit 48 gekoppelt
sein. Diese Speichereinheit kann verwendet werden, um für eine Sicherung
des Schweißsteuerprogramms 51 und
anderer sachdienlicher Daten zu sorgen. Dies wird ermöglichen,
ein schadhaftes Zeitgebermodul durch ein neues zu ersetzen, ohne
es erneut programmieren zu müssen.
-
Außerdem enthält das Steuerprogramm 51 Mittel
für einen
die Uhrzeit anzeigenden Zeitgeber 49. Dies könnte entweder
eine Hardware- oder eine Software-Uhr sein. Die Uhrzeit wird verwendet,
um Daten, die von dem Zeitgeber erfasst werden, mit einer Zeitangabe
zu versehen. Diese Daten könnten
die Betriebsbedingungen zu jedem Zeitpunkt des Schweißablaufplans
wie etwa die Anzahl der Schweißstellen,
den Führungswinkel,
den Schweißstrom
und die Schweißspannung
usw. enthalten. Außerdem
können
von dem Zeitgeber empfangene fehlerhafte und ungültige Befehle, die nicht die
eine Befehlsgültigkeit
definierenden Kriterien erfüllen, mit
der Zeitmarkierung gespeichert werden. Diese Daten können folglich
identifiziert werden, und es kann mit Bezug auf den Zeitpunkt ihres
Auftretens auf sie zugegriffen werden. Um ein Überladen des Speichers zu vermeiden
können
die Daten in dem Fehlerbehand lungsspeicher 41 als gleitendes
Fenster beibehalten werden. Die Daten könnten beispielsweise für einen
festgelegten Zeitraum oder für
eine festgelegte Anzahl von Operationen beibehalten werden. Eine
Datenprotokolldatei 53 in einem nichtflüchtigen Speicher sorgt für eine Betriebsdatei,
die außerdem
die Fehler in einem Störungsprotokoll 55,
die ungültigen
Befehle in einem Befehlsprotokoll 57 und bestimmte Bedingungen
in einem Panikprotokoll 59 speichert. Das Panikprotokoll
wird verwendet, um Ereignisse zu speichern, die bestimmte festgelegte
Regeln hinsichtlich des Betriebs der Schweißsteuereinheit verletzen. Das
Ereignis wird in dem nichtflüchtigen
Speicher gespeichert. Es wird ein Zustandsbit in einem Nachrichtenfeld
gesetzt, um anzuzeigen, dass ein Panikereignis auftrat. Die Datei 53 steht dem
Netzwerk 50 ständig
zur Verfügung.
Der Zeitgeber, der die Uhrzeit angibt, kann auch verwendet werden, um
für eine
auf der Zeit basierende automatische Sicherung von Daten in eine
Speichereinheit und in den Notizblockspeicher 44 für eine Wiedergewinnung
und Speicherung in einer Systemdatenbasis, die in der Anwenderschnittstelle
lokalisiert ist, zu sorgen.
-
In
einer Ausführungsform
der vorliegenden Erfindung umfasst die Netzwerkkonfiguration ein
Netzwerk 50 mit einer Reihe verschiedener Zeitgebermodule 62 bis 64,
die, wie in 3 gezeigt ist, angekoppelt sind. Jedes
Zeitgebermodul funktioniert ähnlich
dem Zeitgebermodul 11 von 2 und könnte zugeordnete
Dateneingabekonsolen (DEKs) 67 und 68 für die Eingabe
von Daten, Schweißablaufplänen und
anderen Betriebsanweisungen in den Zeitgeber aufweisen. Die Dateneingabekonsole
(DEK) 69 schafft ein Mittel, um die Zeitgeber 64 und 65 über die
sekundäre
DEK an ein separates Netzwerk zu koppeln. Separate DEKs 71 und 72 könnten direkt
an das Netzwerk 50 gekoppelt sein. Eine auf einem PC basierende
Dateneingabekonsole 74 wird als Master-Schnittstelleneinheit
wirksam und wird für
die Anzeige, Überwachung
und Bearbeitung der einzelnen Zeitgebermodule 62 bis 66 verwendet.
Außerdem
könnte
eine zweite auf einem PC basierende Eingabekonsole 76 vorhanden
sein, etwa ein Netzübergang 78,
der für
eine Verbindung mit anderen Netzwerken sorgt.
-
Die
minimale Netzverbindung umfasst eine einzige Master-Vorrichtung
und eine einzige Slave-Einheit. Ein Zeitgebermodul 62 bis 66 ist
immer eine Slave-Einheit. Die übrigen
Vorrichtungen in dem Netz werden als Master-Vorrichtungen angesehen,
wobei jede in einer von mehreren Betriebsarten arbeitet: ein Datenbasis-Master 74,
ein primärer
Master 67 oder ein sekundärer Master 76. Ein
Netzzuteiler ist die Master-Vorrichtung, die aktuell den Nachrichtenstrom über das
Netz steuert. Zu jedem Zeitpunkt kann es nur einen einzigen Netzzuteiler
in dem Netz geben. Die auf einem PC basierende DEK 74 wird
in einer Betriebsart als Master-Datenbasisvorrichtung wirksam. Diese
hat die höchste
Priorität
und ist die einzige Master-Vorrichtung, die selbstständig Daten
zu einer Slave-Einheit herunterladen kann. Diese Vor richtung wird
immer versuchen, die Steuerung des Netzzuteilers zu übernehmen.
Bei Abwesenheit der Datenbasisvorrichtung wird eine Primärvorrichtung
versuchen, die Steuerung des Netzzuteilers zu übernehmen. Ein sekundärer Master
wird auf eine Zugangsfreigabe vom aktuellen Netzzuteiler warten,
bevor er ein Nachrichtenpaket über
das Netz startet. Wenn in dem Netz weder ein Datenbasis-Master noch
ein primärer
Master vorhanden ist, wird die Sekundärvorrichtung mit der höchsten Priorität, die während der
Konfiguration definiert worden ist, die Rolle des Netzzuteilers als
eine Pseudoprimärvorrichtung
annehmen. Sie wird in dieser Rolle bleiben, bis wieder eine Datenbasis
oder ein primärer
Master an das Netz angeschlossen wird.
-
Eine
Primärvorrichtung,
eine der weiteren verschiedenen Bedienerschnittstellen 76,
DEKs 71 bis 72 oder die Netzübergangsvorrichtung 78,
könnte
zu einer Pseudosekundärvorrichtung
herabgestuft werden, wenn eine Datenbasisvorrichtung versucht, wieder
Anschluss an das Netz zu erhalten. Eine Pseudosekundärvorrichtung
ist dann eine Primärvorrichtung,
die die Netzzuteilung abgegeben hat, nachdem die Datenbasis oder
eine andere Primärvorrichtung
die Steuerung des Netzes als Zuteiler übernommen hat. Sie nimmt die physische
Adresse dieses Vorrichtungstyps als ein Sekundärtyp an. Dieser Typ von Vorrichtung
wird die Sekundär-Master-Funktionalität annehmen,
sofern sie, wenn sie an das Netz angeschlossen wird, keinen anderen
Nachrichtenverkehr über
dem Netz hört.
Wenn sie keinen Nachrichtenverkehr erfasst, wird sie sich selbst als
Primärvorrichtung
einsetzen. In diesem Zustand wird sie der Netzzuteiler sein, bis
eine Vorrichtung mit einer höheren
Zuteilungspriorität
die Steuerung übernimmt,
wobei sie, solange sie als Netzzuteiler wirksam wird, als Pseudoprimärvorrichtung
bekannt sein wird. Sie wird in den Zustand einer Sekundärvorrichtung
zurückkehren,
wenn eine andere Vorrichtung mit einer höheren Zuteilungspriorität die Steuerung
des Netzes übernimmt. Ein
Master wird als angeschlossen betrachtet, wenn der Netzzuteiler
diesem Master die Benutzung des Netzes gewährt hat. Eine Vorrichtung wird
als angeschlossen betrachtet, wenn die Vorrichtung hardwaremäßig mit dem
Netz verbunden ist und das Netz nach Nachrichten abhört.
-
Die
als Slaves arbeitenden Schweißzeitgeber 62 bis 66 werden
auch dann normal funktionieren, wenn keine Mastervorrichtung vorhanden
ist. Sie können
von ihren eigenen DEKs 67 bis 70 aus unabhängig vom Netzwerk 50 programmiert
und überwacht
werden. Sie können
nur in Reaktion auf Anforderungsnachrichten, die von dem Netzwerk
empfangen worden sind, Daten über
das Netzwerk 50 senden; sie können keine Nachrichten veranlassen.
-
In 4 ist
eine Blockdarstellung der wesentlichen Komponenten einer Dateneingabekonsole 80 gezeigt.
Eine CPU 82 hat Zugriff auf den Speicher 83, der
einen EPROM 84 und RAM 85 umfasst. Der EPROM 84 enthält das Betriebsprogramm
der Vorrichtung einschließlich
der Kommunikations- und Datenbe handlungsprotokolle. Für die Eingabe
von Daten wird eine Kleintastatur 86 benutzt, wobei auch
eine Tastatur voller Größe, eine
Masken-Kleintastatur oder eine Maus verwendet werden könnte. Die
Anzeigevorrichtung 87 wird verwendet, um Daten von einem
ausgewählten
Zeitgeber anzuzeigen, oder sie könnte
verwendet werden, um verschiedene Menüs zur Verwendung im Zusammenhang
mit einer Maus für
die Eingabe von Daten anzuzeigen. Typisch wird es zwei Kommunikationsports 88, 90 geben,
die jeweils eine UART 91, 93 und einen Treiber 92, 94 umfassen.
Der Port 88 wird benutzt, um einen Drucker oder eine andere
Datengewinnungsvorrichtung anzuschließen. Der Port 90 wird
für den
Anschluss an das Netzwerk 50 unter Verwendung einer RS-485-Halbduplexverbindung
verwendet. Es könnten
andere Spezifikationen verwendet werden, und die vorliegende Erfindung
ist nicht auf den benutzten Verbindungstyp zu beschränken. Die
Dateneingabekonsole kann für
eine direkte Anbindung an das Netzwerk 50 verwendet werden,
wodurch sie als Master-Vorrichtung 72 arbeitet, oder sie
kann für
einen bestimmten Zeitgeber für
eine individuelle Überwachung
und Steuerung nur dieser Vorrichtung entweder als ein Datenbasis-Master
oder als ein primärer
Master vorgesehen sein.
-
Die
auf einem PC basierende Dateneingabekonsole 74 hat ähnliche
Grundkomponenten wie die DEK 80, wie in 5 gezeigt
ist. Während
sie der Datenbasis-Master ist, steuert ihr Prozessor 100 die
Systemdatenbasis 102 und macht sie über ihre Netzwerkschnittstelle 104 für das Netzwerk 50 zugänglich.
Ein Anwender 106 kann auf Daten von einer Schweißsteuereinheit über ihr
Zeitgebermodul 11 auf der Grundlage ihrer individuellen
Datenstrukturen und Typen durch eingebettete Zeitgeberobjekte in
einer Schnittstelle, als T-Schnittstellenverfahren 110 bezeichnet,
das Teil des Anwenderprogramms 108 ist, zugreifen. Die
Daten können
dann von der Anzeigevorrichtung 112 durch verschiedene
graphische Verfahren, die wohl bekannt sind und nicht Gegenstand
der vorliegenden Erfindung sind, zur Anzeige gebracht werden. Das
Anwenderprogramm 108 beinhaltet objektorientierte Programmiertechniken.
Dies ermöglicht
die Verwendung von Zeitgeber-Objektmodellen, die von einem Basisklassenobjekt
in der T-Schnittstelle 110 ererbt sind, das als Elternobjekt
wirkt, um eine Datenschichtschnittstelle zwischen der Datenanzeigeschicht
und den Hardwarevorrichtungen in dem Netzwerk 50 zu schaffen.
Die Hardwarevorrichtungen in dem Netz sind als Objekte modelliert,
wobei ihre Eigenschaften und Verhaltensweisen in Datenfeldern und
Verfahren codiert sind. Dieses Verfahren, das auch als Kapselung
bekannt ist, kombiniert einen Datensatz mit Prozeduren und Funktionen,
die ihn verwenden, um das Objekt zu bilden. Sobald das Objekt in
der T-Schnittstelle 110 definiert ist, wird es verwendet,
um eine Hierarchie von Nachkommenobjekten zu schaffen, wobei die
Nachkommenobjekte den Zugriff zu allen Daten und Verfahren von ihren
Elternobjekten erben. Das System ist außerdem insofern polymorph,
als ein Name für
einen bestimmten Vorgang durch eine Objekthierarchie benutzt wird,
wobei jedes Objekt in der Hierarchie den Vorgang in einer nur für es selbst
geeigneten Weise umsetzt. Dies ermöglicht, dass von dem Anwender 106 von
der DEK 74 auf weitere und verschiedene Typen von Zeitgebern
ungeachtet des Datentyps der weiteren Zeitgeber zugegriffen werden
kann. Die besonderen Schweißzeitgeberdaten
sind für
das Zeitgeber-Objektmodell in der T-Schnittstelle 110 privat und
werden in einer separaten Gerätedatei 114 gespeichert.
Auf diese Daten kann nur mittels Verfahren zugegriffen werden, die
in der T-Schnittstelle 110 definiert sind. In der Gerätedatei 114 erfolgt
eine Konvertierung aller Daten, die vom Netzwerk 50 empfangen
worden sind. Sie enthält
alle Informationen über
die Datensätze
und Strukturen, wobei sie ihre Verfahren von der T-Schnittstellendatei 110 erbt.
Dies ermöglicht,
diese Verfahren über
alle einzelnen Gerätedateien 114 aufrechtzuerhalten,
ohne jede für besondere
Bedingungen, die auftreten könnten,
modifizieren zu müssen.
Typische Daten in diesen Dateien werden die letzten Schweißdaten,
Fehlerereignisse und andere sachdienliche Daten umfassen.
-
Da
in einer typischen Konfiguration des Netzwerks 50 mehrere
Slave-Einheiten und mehrere Master-Einheiten vorhanden sein können, gibt
es Mittel, um das Ziel, entweder ein Zeitgeber oder ein Master,
und den Absender, Master oder Slave, eines Nachrichtenpakets zu
identifizieren. Zwei Adressfelder, die aus einem einzigen Byte bestehen,
sind in einem Nachrichtenpaketkopf enthalten, der das angestrebte
Ziel und die Netzwerkvorrichtungsnummer des Absenders angibt. Diese
Adressinformationen sind in einer Konfigurationsdatei 116 gespeichert,
die während
der Installation erzeugt wird. Diese Datei gibt an, wie die Speicherabbilder
für jeden
Zeitgeber festzulegen sind. Zusätzlich
zu der Adresse des Zeitgebers ist auch sein Datentyp in der Konfigurationsdatei
aufgeführt.
-
Obwohl
das Netzwerk 50 theoretisch mit jeder Anzahl von Master-
und Slave-Einheiten
besetzt werden kann, ist die bevorzugte Anzahl von Vorrichtungs-Slave-Lasten, die
bei der RS-485-Norm zu beachten ist, 31 bei bis zu 5 Master-Vorrichtungen.
Das Netzwerkmedium kann ein geschirmtes Aderpaar sein. Die sendenden
Vorrichtungen werden als Tristate-Ausgänge aufweisend angesehen. Jedes
gesendete Zeichen umfasst ein Startbit, acht Datenbits und ein Stoppbit,
was zehn Bitintervalle für
das Senden erfordert. Eine Paritätsprüfung ist
nicht in dem Zeichen enthalten. Die Datenpakete treten in zwei Grundformen
auf, entweder als Master-Anforderung oder als Slave-Antwort.
-
Jedes
von einem Master stammende Nachrichtenpaket umfasst wenigstens drei
verschiedene Felder: Kopf, Befehl und Nachspann. Weitere Felder
sind nur vorhanden, wenn der Master Daten über einen Befehl vom Installationstyp
an den Zeitgeber sendet, was der Fall wäre, wenn der Master beispielsweise
Schweiß-Ablaufpläne herunterlädt. Sie
erscheinen wie folgt in dem Paket:
-
-
Das
Kopffeld aller von einem Master stammender Pakete besteht aus der
AS-CII-Steuersequenz DLE-STX
(Datenübertragungsumschaltung – Textbeginn),
gefolgt von der Netzwerkadresse des Ziel-Slaves/Masters oder des
Rundsendens und dann der Adresse des absendenden Masters. Die Zieladresse
ist als die physische Adresse des Empfängers definiert, und als Absenderadresse
ist die eigene physische Adresse der Vorrichtung definiert. Die
Adressfelder werden als transparenter Text behandelt, und das DLE-STX
wird als ein Literal behandelt.
-
-
Jeder
Master-Vorrichtung sind zwei physische Adressen zugewiesen. Wenn
die Vorrichtung versucht, Anschluss an das Netzwerk zu erlangen,
könnte
sie sich selbst in einen Pseudoprimärzustand befördern oder sie
könnte
in den Pseudosekundärzustand
zurückgestuft
werden, wenn sich eine Vorrichtung mit einer höheren Priorität mit dem
Netzwerk verbindet.
-
Der
Befehlsvorrat ist in verschiedene Untermengen unterteilt, die verwandte
Befehle enthalten. Jeder Befehl weist zwei Teile auf: das Datenpaket
des Anfordernden und die Antwort des Slaves. Das Datenpaket des
Anfordernden könnte
in Form von Installationsdaten (Schreibdaten) oder von Zustandsdaten
(Lesedaten) vorliegen. Das Befehlsfeld umfasst vier Bytes. Das erste
Byte enthält
den Nachrichtentransaktionscode (Vorrichtungsbefehlscode). Das zweite
Byte des vier Bytes umfassenden Befehlsfelds kann optional Schweißprogrammcode
enthalten, der durch die Befehlschicht der Anwendungsvorrichtung
definiert ist. Das dritte Byte gibt den Index der Ablaufplannummer
oder der Schrittnummer an, die auf den Befehl anwendbar ist. Das
vierte Byte ist durch die Befehlsschicht der Vorrichtung als sekundärer Ablauf
definiert. Wenn ein Feld für
den bestimmten Befehl nicht erforderlich ist, wird es auf $00 gesetzt.
-
Das
gesamte Befehlsfeld weist die Form transparenten Textes auf.
-
-
Der
Paketnachsatz ist aus der ASCII-Steuersequenz DLE-ETX (Datenübertragungsumschaltung – Ende der Übertragung)
gefolgt von dem Blockprüfzeichen
(BCC) gebildet. Die Feldlänge
des Nachsatzes beträgt
drei Bytes und wird als ein Literal behandelt. Wenn das Blockprüfzeichen
einem DLE-Wert gleich ist, wird kein zusätzliches DLE hinzugefügt:
-
-
Das
Blockprüfzeichen
ist das Zweierkomplement der Achtbitsumme (modulo 256) aller Bytes
transparenten Texts ausschließlich
der eingefügten
DLEs. Folglich erstreckt sich das Blockprüfzeichen über die tatsächlich gespeicherten
Daten der Adressen, des Befehls, der Textlänge und der Textfelder. Wenn
das Blocksteuer-Prüfsummenbyte
zu dieser Summe addiert wird (modulo 256), muss das Ergebnis null
sein.
-
Jedes
Slave-Antwort-Nachrichtenpaket umfasst wenigstens vier verschiedenen
Felder: Kopf, Befehl, Zustand und Nachspann. Weitere Felder sind
nur vorhanden, wenn Daten vorliegen. Sie könnten wie folgt in dem Paket
erscheinen:
-
-
Das
Kopffeld aller Slave-Antwort-Pakete umfasst die ASCII-Steuersequenz
DLE-SOH (Datenübertragungsumschaltung – Anfang
des Kopfes), gefolgt von der Netzwerkadresse des die Anforderung
verursachenden Masters und dann der entsprechenden Slave-Adresse.
Die Zieladresse ist als die physische Adresse des Empfängers definiert,
und die Absenderadresse ist als die physische Adresse der Vorrichtung
definiert. Die Adressfelder werden als transparenter Text behandelt,
und das DLE-SOH wird als ein Literal behandelt.
-
-
Die
Befehls- und Nachsatzfelder sind den Befehls- und Nachsatzfeldern,
die von der Mastervorrichtung gesendet werden, gleich. In jedem
Slave-Antwortpaket gibt es zwei Zustandsfelder: Zeitgeber und Fehler. Zustandsfelder
werden als transparenter Text behandelt. Der Zeitgeberzustand bezieht
sich auf das Vorhandensein bestimmter Zeitgeberelemente, wie etwa
Speicher und Koprozessoren, Betriebsbedingungen, Kommunikationsportverbindung,
Datenübertragungen,
Panikbedingungen, Einstellungen für den Betriebszustand des Herunterladens
usw. Der Fehlerzustand liefert Aussagen zu verschiedenen Betriebsbedingungen,
die eine Funktionsstörung
eines Zeitgebers verursachen könnten.
Diese Bedingungen haben vorprogrammierte Fehlercodes und umfassen
solche Elemente wie die Spannung, den Strom und Temperaturfehler,
ungültige Schweißablaufdaten
sowie beliebige andere Daten, die typisch für Schweißsteuersysteme sind.
-
-
Das
Textlängenfeld
gibt die Gesamtzahl der Bytes an, aus denen das ihm folgende Textfeld
gebildet ist, wobei die transparenten DLE-Bytes nicht eingeschlossen
sind. Wenn kein Text vorhanden ist, dann ist das Feld $0000. Die
Feldlänge
ist mit zwei Bytes auf eine ganze Zahl festgelegt, wobei sie in
Form von transparentem Text auftritt. Die durch den von dem Master
spezifizierten Befehl angeforderten Daten befinden sich in dem Textfeld.
Dieses Feld tritt ebenfalls in Form von transparentem Text auf.
-
Bestimmte
Felder in einem Nachrichtenpaket (insbesondere der Befehl, der Zustand,
die Textlänge und
die Textfelder sowie die Adressdaten in dem Kopffeld) treten in
Form von transparentem Text auf. Da das Verknüpfungsprotokoll DLE-Sequenzen
als Nachricht und Datenfeldtrennzeichen verwendet, ist es erforderlich,
zwischen dem Beginn einer Steuersequenz (DLE-Sequenz) und dem Auftreten
eines Bytes mit einem Wert, der einem DLE entspricht, in den normalen
Befehls- oder Textdatenströmen
zu unterscheiden. Diese Unterscheidung wird durch die DLE-Einfügung geschaffen,
die erfordert, dass derartigen Daten mit einem Wert, der einem DLE
entspricht, ein DLE-Vorspann vorausgeht. Folglich wird die Sequenz
DLE-DLE als ein einziges Datenbyte mit dem Wert DLE betrachtet,
wenn es in einem solchen Datenstrom auftritt, und es braucht nur
ein einziges DLE in der Konstruktion des Blockprüfzeichenfeldes enthalten zu
sein; jedes einzelne DLE, das in einem solchen Strom angetroffen
wird, wird als ein Verbindungssteuerungsvorspann interpretiert.
Alle Daten, die als vom transparenten Typ angegeben sind, sind bei
der Konstruktion des Paket-Blockprüfzeichenfeldes eingeschlossen.
-
Rundsendungen
können
an alle Vorrichtungen geschickt werden, die an das Netzwerk 50 angeschlossen
sind. Nur eine Master-Vorrichtung kann Nachrichten rundsenden. Ein
von einem Master stammendes Paket mit der Zieladresse null ($00)
wird als eine Rundsendung an alle Slave-Einheiten interpretiert,
und eine von einem Master stammende Zieladresse $80 wird als eine
Master-zu-Master-Rundsendung
interpretiert. In dem Netz kann von keiner Slave-Einheit eine Rundsendung
ausgehen. Die einzige Nachricht, die als "Rundsendung" geschickt werden sollte, ist der Fehlerlöschaktions-Sendeaufruf
(Fault Reset Action Poll). Der Zeitgeber wird keine Prüfung hinsichtlich
sachwidriger Rundsendungen ausführen,
er wird einfach nicht antworten, und der Master wird nicht erfahren,
ob von allen Zeitgebern auf die Anforderung in korrekter Weise reagiert
wurde.
-
Als
Teil der Erfordernisse der Zeitsteuerung des Netzwerks gibt es bestimmte
Bedingungen, um die Steuerung aufrechtzuerhalten. Nach einer Anforderung
von Daten muss die antwortende Vorrichtung die Antwort innerhalb
be stimmter Zeitüberwachungswerte
abschließen.
Diese variieren zwischen 100 Millisekunden für Master-zu-Master-Anforderungen
bis zu 2000 Millisekunden für
Slave-Antworten. Der Master kann in einem Intervall von weniger
als 35 Millisekunden keine Nachrichten an das Netzwerk oder an einen
beliebigen einzelnen Zeitgeber einleiten.
-
Die
drei Betriebsarten der Master-Vorrichtungsoperation sind als Datenbasis-Master 74,
primärer
Master 76 und sekundärer
Master 72 beschrieben worden. Während der Installation des
Netzwerkes werden den Master-Vorrichtungen physische Adressen zugewiesen,
die ihren Typ und ihre Priorität
in dem Netz definieren. Der Datenbasis-Master 74 ist die
einzige Vorrichtung, die auf der Grundlage eines Bearbeitungszustands selbstständig Daten
in einen Zeitgeber 62 bis 66 herunterladen kann.
Er hat die höchste
Priorität
als Netzzuteiler. In Abwesenheit eines Datenbasis-Masters wird der
primäre
Master 76 als Netzzuteiler wirksam. Ein sekundärer Master
muss für
eine Zugangsbewilligung vom derzeitigen Netzzuteiler auf Empfang
stehen, bevor er ein Nachrichtenpaket in das Netzwerk 50 einbringen
kann. Wenn es in einem Netz weder eine Datenbasis noch eine primäre Vorrichtung
gibt, nimmt die sekundäre
Vorrichtung mit der höchsten
Priorität,
die durch ihre Adresse während
des Hochfahrens definiert worden ist, die Rolle des Netzzuteilers
als eine pseudoprimäre Vorrichtung
an. Als eine pseudoprimäre
Vorrichtung könnte
sie von einer Datenbasis oder einer primären Vorrichtung zu dem Zeitpunkt,
zu dem diese wieder an das Netz angeschlossen sind, "beseitigt" und wieder als sekundäre Vorrichtung
gestartet werden.
-
Die
Kommunikation zwischen Master-Vorrichtungen umfasst einen Befehlsvorrat
wie nachfolgend definiert, der das Netzwerk 50 steuert
oder zuteilt. Eine sekundäre
Zuteilungsnachricht wird von dem Netzzuteiler nur ausgegeben, um
ein periodisches Anschließen
der physisch adressierten sekundären
Vorrichtung zu ermöglichen.
Wenn es der sekundären
Vorrichtung misslingt, innerhalb einer vorgegebenen Zeitüberwachungsperiode
eine Zuteilung zu empfangen, und es wird kein anderer Nachrichtenverkehr über dem
Netz gehört, wird
eine Netz-Neustartsequenz zur Folge haben, dass die Mastervorrichtung
mit der höchsten
Zuteilungspriorität
versucht, als Netzzuteiler die Steuerung zu übernehmen. Die periodische
Rate von Zuteilungen ist für einen
bestimmten Master durch die Anwendungsschicht bestimmt. Der Master
wird immer versuchen, einer bestimmten sekundären Vorrichtung Zugang zu dem
Netzwerk 50 zu gewähren,
selbst wenn die sekundäre Vorrichtung
nicht auf jede Zuteilung anspricht. Die sekundäre Vorrichtung, deren physische
Adresse in der letzten Zuteilungsnachricht enthalten ist, wird eine
sekundäre
Antwortnachricht senden. Wenn der Netzzuteiler keine Antwort empfängt, wird
er unter der Annahme, dass die sekundäre Vorrichtung zurzeit nicht
vorhanden ist, seinen normalen Betrieb fortsetzen. Nach dem Empfangen
einer sekundären
Antwort wird der Systemzuteiler sofort eine Secondary Go Ahead-Nachricht
an die sekundäre
Vorrichtung zurücksenden.
Wenn sie diese Nachricht hört,
nachdem sie auf eine Zuteilung geantwortet hat, übernimmt sie die zeitweilige
Steuerung des Netzwerks. Während
dieser Steuerungszeit kann sie eine beliebige Anzahl von Nachrichten
an eine beliebige Anzahl von Slaves senden, solange sie einen gültigen Netzwerk-Nachrichtenverkehr
aufrechterhält.
Sie kann jedoch keiner anderen Vorrichtung den Zugang zu dem Netz
erteilen. Nachdem sie ihre Netzwerkanforderungen abgeschlossen hat,
gibt sie die Steuerung des Netzwerks 50 durch Senden einer
Sekundärfreigabenachricht
(Secundary Release) an den Netzzuteiler zurück, um ihm zu ermöglichen,
die Steuerung des Netzes so schnell wie möglich zu übernehmen, nachdem die sekundäre Vorrichtung
ihre Netzwerkanforderungen abgeschlossen hat. Wenn diese Nachricht
jedoch von dem Zuteiler nicht empfangen wird und von dem Zuteiler
kein gültiger
Nachrichtenverkehr erfasst wird, wird er nach einer Zeitüberwachungsperiode
wieder die Steuerung des Netzes übernehmen.
-
Jedes
Mal, wenn sich eine Mastervorrichtung unter der Annahme, dass sie
den höchsten
Zuteilungsstatus besitzt, an das Netz anschließt, wird eine Master Kill Secondary-Nachricht
als Rundsendung an alle Vorrichtungen, die an das Netz angeschlossen
sind, geschickt. Bevor diese Nachricht gesendet wird, wartet die neu
angeschlossene Vorrichtung auf den Empfang eines Secondary Grant
vom derzeitig zuteilenden Master und muss sich dann als eine sekundäre Vorrichtung
an das Netzwerk anbinden. Sofort nach dem Anbinden wird sie diese
Nachricht senden. Nach dem Empfangen der Nachricht werden alle anderen
Master-Vorrichtungen einen Neustart als eine sekundäre Vorrichtung
oder als eine pseudosekundäre
Vorrichtung versuchen.
-
Eine
Nachricht Secondary Clock Sync wird von dem Netzzuteiler nur bei
einem Versuch, alle Echtzeituhren der sekundären Vorrichtungen zu synchronisieren,
gesendet. Sie kann als Rundsendung an die Zeitgeber geschickt werden,
um ihre einzelnen Impulszeitgeber 49 zu synchronisieren.
-
Der
in 6 gezeigte Ablaufplan bietet einen Überblick über die
Funktionsweise der bevorzugten Ausführungsform eines Datenbasis-Masters 74 der
vorliegenden Erfindung. Beim Start 120 wird der Datenbasis-Master
Konfigurationsdateien erzeugen, 124, die bestimmen, welche
Typen von Zeitgebern 11 (Slaves) in dem Netzwerk 50 vorhanden
sind, und er wird anwenderdefiniert ausreichend Speicher zuweisen, 122.
Diese Dateien 124 geben an, wie Speicherabbildungen in
Gerätedateien
für jede
Slave-Vorrichtung in dem Netz einzurichten sind. Der Datenbasis-Manager
wird bestimmen, ob das Hochfahren ein normales Hochfahren 130, ein
Hochladen 132 oder ein Herunterladen 134 ist.
Wenn es ein Herunterladen ist, wird er aus der Gerätedatei in
der Datenbasisdatei für
die Steuerung der Gerätedurchsicht
Daten lesen, 128. Wenn der Datenbasis-Master erst einmal
die Steuerung des Netzwerks 50 als Zuteiler innehat, wird
er auf eine Anwenderanforderung oder eine vorgegebene Zeit warten, 136,
wodurch der Datenbasis-Manager das Netz nach Zustandsänderungen oder
Datenänderungen
absuchen kann, wie sie durch das übliche zyklische Änderungsabfragen
bestimmt werden. Die Anwenderanforderung könnte in Form einer Eingabe
von einer Tastatur oder einer Mausoperation 86 in Reaktion
auf Eingabeaufforderungen von einem Graphikmenü auf der Anzeige 87 erfolgen.
Der Datenbasis-Manager 74 wird versuchen, 138,
die Nachricht durch die Kommunikations-Task 140 zu senden.
Sobald eine Antwort empfangen worden ist, 142, werden die
entsprechenden Anzeigebildschirme aktualisiert, 144, und
der Datenbasis-Manager wird bestimmen, 146, ob die empfangenen
Daten in der Systemdatenbasis gespeichert werden sollten oder nicht, 148.
Wenn von der adressierten Vorrichtung innerhalb eines vorgegebenen
Zeitraums keine Antwort empfangen wird, 150, wird der Master
entscheiden, dass die Vorrichtung nicht vorhanden ist, und eine
Art Fehlerroutine ausführen,
die vom Anwender festgelegt ist. Der Datenbasis-Manager wird dann
auf die nächste
Anforderung warten. Er kann zu diesem Zeitpunkt auch seinen Zustand
als Netzzuteiler aufgeben und andere primäre und sekundäre Master
die Steuerung als Zuteiler übernehmen
lassen, bis eine weitere Anwenderanforderung 136 empfangen
wird.
-
7 zeigt
im Einzelnen die erfindungsgemäße Kommunikations-Task 140 der
Master-Datenbasisvorrichtung. Sobald eine Anwenderanforderung 136 empfangen
und decodiert worden ist, wird die Anforderung als ein Befehl zum
Hochladen oder Herunterladen identifiziert, 152. Außerdem wird
die empfangende Vorrichtung identifiziert, 154. Anhand
dieser Informationen wird der Master das Nachrichtenpaket unter
Verwendung der Datenstruktur, die in der Gerätedatei der identifizierten
Vorrichtung in den Datenbasis-Dateien des Masters enthalten ist,
zusammenstellen, 156. Das Datenpaket wird durch die T-Schnittstellendatei 110 konstruiert,
wobei es den notwendigen Kopf-, Adressierungs- und Nachsatzcode
aufweisen wird. Wenn die Anwenderanforderung ein Befehl zum Herunterladen 158 ist,
wie etwa das Laden eines neuen Schweißablaufplans in den Zeitgeber,
wird der Master die Daten aus der Systemdatenbasis erhalten und
den speziellen Befehlscode für
ein Herunterladen des Ablaufplans in den Zeitgeber einfügen, 162.
Wenn die Anforderung ein Befehl zum Hochladen 164 ist,
wird der spezielle Befehlscode für
die angeforderten Daten wie an früherer Stelle erörtert in
das Nachrichtenpaket eingefügt.
Sobald das Nachrichtenpaket konstruiert ist, wird es über das Netzwerk 50 zu
der adressierten Vorrichtung gesendet, 168. Wenn es gesendet
ist, wird ein Antwortzeitbegrenzer die Zeitnahme starten, 170.
Wenn innerhalb einer vorgegebenen Zeit keine zurückgesendete Nachricht empfangen
wird, 172, wird der Master annehmen, dass die Vorrichtung
nicht vorhanden ist, 174, und einen Antwortzeitüberschreitungs-Merker
setzen, 176. Der Master wird dann in einen Typ von Routine
gehen, der durch das Anwenderprogramm bestimmt ist. Wenn eine Antwort
empfangen worden ist, 180, wird der Master bestimmen, ob
die empfangene Nachricht eine Hochladenachricht 182 oder
eine Herunterlade nachricht 184 ist. Außerdem wird zu diesem Zeitpunkt
ein Stoppzeichen 186 die Zeitnahme durch den Antwortzeitbegrenzer stoppen, 170.
Für einen
Hochladebefehl werden die angeforderten Daten aus dem Paket herausgezogen, 188, und
in der Gerätedatei
der antwortenden Vorrichtung gespeichert, 190. Wenn die
Antwort von einem Herunterladebefehl war, wird der Zustandscode
in dem Datenpaket gelesen, 194, um zu bestimmen, ob die
von dem Master 168 gesendeten Daten von der adressierten
Vorrichtung empfangen und akzeptiert worden sind, 196. Wenn
die Daten nicht akzeptiert worden sind, wird eine Fehlerroutine 198 gestartet.
Diese Routine kann verschiedene Formen annehmen, wobei sie von dem
Anwendungsprogramm abhängig
ist. Sie könnte
beispielsweise die Form des mehrmaligen Zurücksendens der ursprünglichen
Nachricht annehmen, bevor sie bestimmt, dass die Vorrichtung nicht
vorhanden ist, 174. Wenn die Daten akzeptiert worden sind, 196,
wird der Master bestimmen, ob die Anforderung abgeschlossen ist, 200.
Wenn gerade ein Schweißablaufplan
heruntergeladen wird, werden mehrere Befehle 202 und Durchläufe durch
die Kommunikations-Task 140 gebraucht, um das Herunterladen
abzuschließen,
da viele Nachrichtenpakete gesendet werden müssen, bevor die Anforderung
vollständig
abgearbeitet ist. Sobald die Anforderung abgeschlossen ist, werden
die Systemdatenbasisdateien mit dem aktuellen Zustand der adressierten
Zeitgeber aktualisiert, 142.
-
Die
Kommunikationsantwort der Slave-Vorrichtung ist in dem Ablaufplan
von 8 gemäß der vorliegenden
Erfindung im Einzelnen dargestellt. Die einzelnen Slave-Vorrichtungen
lauschen ständig
am Netzwerk 50 auf Nachrichten mit ihrer Adresse. Sobald
sie ihre Adresse erfasst haben, 210, werden sie den in
das Nachrichtenpaket eingebetteten Befehl decodieren, 212,
den Befehl in dem Befehlsprotokoll 59 speichern, 213,
und bestimmen, ob der empfangene Befehl für sie gültig ist, 214. Für einen
Hochladebefehl 216 werden die erforderlichen Daten aus
Dateien herausgezogen, 218, die in dem Zeitgeber resident
sind, und in das Antwortnachrichtpaket eingefügt. Der Zustandscode und die
Befehlscodes in dem Nachrichtenpaket werden ebenfalls aktualisiert, 220.
Wenn die Antwort auf einen Herunterladebefehl 222 hin erfolgt,
werden die empfangenen Daten herausgezogen, 224, und in
Dateien, die in dem Zeitgeber resident sind, gespeichert, 226.
Der Zustandscode in dem Datenpaket wird aktualisiert, 220,
um anzuzeigen, dass die von dem Master gesendeten Daten empfangen
und akzeptiert worden sind. Wenn der empfangene Befehl nicht gültig ist, 214,
wird der Befehl als ungültiger
Befehl im Befehlsprotokoll 57 gespeichert, 228,
und das Zustandsfeld des Nachrichtenpakets wird aktualisiert, 230,
um anzugeben, dass ein ungültiger
Befehl empfangen worden ist. Wenn alle Daten herausgezogen oder
gespeichert worden sind und die Zustandscodes ebenfalls aktualisiert
worden sind, wird die Vorrichtung das Antwortnachrichtpaket zusammenstellen, 232,
und das Paket zum Absender zurückschicken, 234.
-
Die 9 und 10 liefern
detaillierte Blockdiagramme, die die Kopplungen mit einem Schweißsteuer-I/O-Modul 300 gemäß der vorliegenden
Erfindung zeigen.
-
Der
Datenstrom für
das Schweißzeitgeber-I/O-Modul
lässt sich
folgendermaßen
beschreiben:
- 1. Eingabedaten von dem Kommunikationsadapter 310 werden,
nachdem sie von dem Feldbus 50 empfangen worden sind, asynchron
in den ATII-Serien-Parallel-Umsetzer 312 geladen. Unter
Verwendung einer internen Zeitbasis liest der lokale Mikroprozessor 320 diese
Eingaben und die lokalen Eingaberegister 314 in seinen
Speicher 322 ein. Auf der Grundlage der Konfigurationsüberbrückungen 324 kombiniert
die Prozessorlogik ATII-Eingaben und lokale Eingaben, um eine gemeinsame
Datenstruktur zu erzeugen, die in die Parallel-Serien-Umsetzer 326, 328 der
Zeitgeber-I/O-Schnittstelle geladen wird. Der Schweißzeitgeber schiebt
diese Daten in seinen Speicher.
- 1a. Der Prozessor kann entweder auf einen ATII- oder auf einen
lokalen Eingabezustand hin wirksam werden, indem er den Zustand
entweder der externen Ausgaben oder der lokalen Ausgaben annimmt.
- 2. Ausgabedaten werden durch den Schweißzeitgeber asynchron in den
Parallel-Serien-Umsetzer der Schweißzeitgeber-I/O-Schnittstelle
geladen. Unter Verwendung einer internen Zeitbasis werden die Serien-Parallel-Umsetzerregister
von dem Prozessor in seinen Speicher ausgelesen. Auf der Grundlage
der Konfigurationsüberbrückungen
kann der lokale Prozessor die Daten modifizieren, bevor sie in den
ATII-Parallel-Serien-Umsetzer geladen werden, um von dem Kommunikationsadapter
gelesen und mit dem gewünschten
Feldbusprotokoll über
den Feldbus gesendet zu werden.
- 2a. Der Prozessor 320 kann den Zustand der lokalen
Ausgaben auf der Grundlage der Konfigurationsüberbrückungen 324 und des
Zustands der von dem Schweißzeitgeber
empfangenen Daten sowie des Zustands der lokalen Eingaben modifizieren.
- 3. Der Prozessor zeigt den Zustand der Daten an, die dem ATII
als Ausgaben präsentiert
werden, sowie den Zustand der Daten, die von den ATII-Eingängen erhalten
werden. Außerdem
sind Anzeigen für
die lokalen I/O-Zustände
vorgesehen.
- 4. Die Konfigurationsüberbrückungen 324 ermöglichen
dem Anwender, ein Feldbus-Datenformat zu spezifizieren, das von
dem Schweißzeitgeber-I/O-Datenformat
abweicht.
-
10 zeigt
das Zusammenwirken von lokaler und vernetzter Eingabe/Ausgabe und
der Schweißsteuereinheit
gemäß der vorliegenden
Erfindung.
-
Die
oben ausführlich
beschriebenen Verfahren sind auf viele verschiedene Arten der Anwendung
mit und ohne Schweißsteuersysteme
anwendbar. Das Schweißsteuer-I/O-Modul
sorgt für
eine Netzübergangsvorrichtung
zwischen den feldbusvernetzten Eingabe- und Ausgabevorrichtungen
und zahllosen anderen Steuersystemen.
-
Obwohl
das System zur Verwendung mit einer Schweißsteuereinheit beschrieben
worden ist, könnte es
für die
Verwendung mit einem beliebigen Typ von Kommunikationssteuersystem,
das Vorrichtungen mit verschiedenen Datenstrukturen aufweist, die
miteinander kommunizieren und Daten übermitteln, angepasst werden.