[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE69028298T2 - Verfahren zum automatischen hochgeschwindigkeitsschweissen - Google Patents

Verfahren zum automatischen hochgeschwindigkeitsschweissen

Info

Publication number
DE69028298T2
DE69028298T2 DE69028298T DE69028298T DE69028298T2 DE 69028298 T2 DE69028298 T2 DE 69028298T2 DE 69028298 T DE69028298 T DE 69028298T DE 69028298 T DE69028298 T DE 69028298T DE 69028298 T2 DE69028298 T2 DE 69028298T2
Authority
DE
Germany
Prior art keywords
welding
status
speed
output
card
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69028298T
Other languages
English (en)
Other versions
DE69028298D1 (de
Inventor
Brian Laing
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CRC Pipeline International Inc
Original Assignee
CRC Pipeline International Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CRC Pipeline International Inc filed Critical CRC Pipeline International Inc
Application granted granted Critical
Publication of DE69028298D1 publication Critical patent/DE69028298D1/de
Publication of DE69028298T2 publication Critical patent/DE69028298T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K9/00Arc welding or cutting
    • B23K9/12Automatic feeding or moving of electrodes or work for spot or seam welding or cutting

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Plasma & Fusion (AREA)
  • Mechanical Engineering (AREA)
  • Butt Welding And Welding Of Specific Article (AREA)
  • Arc Welding Control (AREA)
  • Lining Or Joining Of Plastics Or The Like (AREA)

Description

    GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein Schweißverfahren und insbesondere ein Verfahren zum Betrieb einer automatischen Schweißvorrichtung.
  • HINTERGRUND DER ERFINDUNG
  • Bei der Herstellung von Pipelines ist es erforderlich, an den Pipelineverbindungen sowohl innen als auch außen eine Schweißnaht vorzusehen. Bei der äußeren Schweißnaht ist der Zugriff kein Problem, das Erzeugen der inneren Schweißnaht stellt jedoch ein sehr wesentliches Problem dar. Da in den meisten Fällen ein manueller Zugriff nicht möglich ist, wurden zur Durchführung dieses Schweißvorgangs automatische Innenschweißvorrichtungen entwickelt. Eine derartige Innenschweißvorrichtung ist in der US-A-3, 612,808 gezeigt. Eine automatische Innenschweißvorrichtung ist in der US-A-4,525,616 beschrieben.
  • Die nächstkommenden Schweißverfahren gemäß Stand der Technik sind in der US-A-4,283,617 und in der JP-A-58-70971 offenbart, bei denen die Einleitung des Schweißvorgangs beginnt, indem der Lichtbogenstrom und das Schweißen gestartet wird, bevor die automatischen Schweißeinrichtungen sich zu bewegen beginnen. Wenn das elektrische Schweißen beginnt, wird die Schweißeinrichtung automatisch entlang des Spaltes bewegt, um so eine durchgehend gute Schweißnaht zu erzeugen. Die Parameter der Schweißeinrichtungen werden am Endpunkt so gesteuert, daß der Lichtbogenstrom, die Spannung sowie die Drahtzufuhr in zeitlicher Abstimmung vermindert werden.
  • Obwohl Innenschweißeinrichtungen beim Herstellen von Pipelines weltweit weit verbreitet sind, haben diese Schweißeinrichtungen Nachteile, die ihre Effizienz begrenzen und die Betriebskosten erhöhen. Bei der Verwendung einer automatischen Schweißeinrichtung ist eine spezifische Grenze, die insbesondere bei Innenschweißeinrichtungen auftritt, die Geschwindigkeit mit der die Schweißnaht erzeugt wird. Bei einem Innenschweißvorgang ist es schwierig und teuer, an schadhaften Schweißnähten Reparaturen durchzuführen. Es ist daher erforderlich, daß die Einrichtung bei einem sehr hohen Prozentsatz an Schweißvorgängen sauber arbeitet. Dies führt jedoch zu einer Verminderung der Effizienz. Bei geringeren Bewegungsgeschwindigkeiten der automatischen Schweißeinrichtungen besteht eine höhere Wahrscheinlichkeit, daß der Lichtbogen zündet und sauber startet. Wenn höhere Bewegungsgeschwindigkeiten gewählt werden, wird die Wahrscheinlichkeit einer sauberen Zündung des Lichtbogens vermindert. Da die Zuverlässigkeit von größter Bedeutung ist, wird bei automatischen Innenschweißeinrichtungen die Bewegungsgeschwindigkeit auf einen relativ geringen Wert eingestellt, um eine saubere Lichtbogenzündung sicherzustellen. Die geringe Geschwindigkeit, die für eine hohe Zuverlässigkeit der Lichtbogenzündung erforderlich ist, führt jedoch dazu, daß der gesamte Schweißvorgang sehr viel Zeit in Anspruch nimmt. Daher besteht ein Hauptnachteil der herkömmlichen automatischen Schweißeinrichtungen und insbesondere der automatischen Innenschweißeinrichtungen darin, daß für Schweißnähte von hoher Qualität eine geringe Bewegungsgeschwindigkeit erforderlich ist.
  • Eine weitere Grenze bei der Verwendung von Innenschweißeinrichtungen besteht in dem komplizierten und teuren elektronischen Steuerungssystem, das zum Betreiben der Schweißeinrichtungen erforderlich ist. Zum Betreiben einer Innenschweißvorrichtung müssen eine große Zahl von mechanischen und elektrischen Funktionen durchgeführt werden. Diese Schritte umfassen das Bewegen der Vorrichtung entlang der Pipeline, das genaue Ausrichten der Vorrichtung am Ende der Rohrverbindung, das Arretieren der Vorrichtung an einer Rohrverbindung und dann an der nachfolgenden Rohrverbindung, das Positionieren der Innenschweißeinrichtungen an den richtigen Stellen zum Starten und Anhalten des Schweißvorgangs, das Arretieren der Vorrichtung in den Röhren, das Einleiten des Schweißvorgangs zusammen mit dem Starten der Bewegung der Schweißeinrichtungen, das Zuführen von Schweißdraht und das Zuführen von Schutzgas. Weiterhin muß der Lichtbogen bei jeder der Schweißeinrichtungen ständig überwacht werden, und es müssen Vorkehrungen getroffen werden, um die Schweißeinrichtungen an den richtigen Stellen zu starten und anzuhalten. Nahezu alle diese Funktionen müssen durch die elektronischen Einrichtungen gestartet, überwacht und beendet werden. Jedoch muß eine Innenschweißvorrichtung auch unter ungünstigen Bedingungen funktionieren. Sie muß unter schlechten Wetterbedingungen mit extremen Temperaturen, Feuchtigkeit und dem Auftreten von Dampf und Rauch verwendet werden können. Die Vorrichtung ist auch Gegenstand extremer physikalischer Belastungen und einer rauhen Handhabung. Das elektronische Steuerungssystem ist außerdem aufgrund von statischen Aufladungen, Spannungsstößen und hohen Strömen, die durch das Lichtbogenschweißen entstehen, einer ungünstigen elektrischen Umgebung ausgesetzt. Die extrem hohen Stromwerte, die beim Schweißen verwendet werden, erzeugen hohe Magnetfelder, die die Funktion der elektronischen Komponenten negativ beeinflussen können. Außerdem werden solche Schweißvorrichtungen häufig in entlegenen Gebieten verwendet, und es ist schwierig, Wartungsarbeiten durchzuführen und Ersatzteile bereitzuhalten. Daher ist für das Steuerungssystem die einfache Konstruktion und eine minimale Anzahl von Teilen von großer Wichtigkeit.
  • Außerdem führt die große Anzahl von Steuerfunktionen, die zum Betreiben einer Innenschweißvorrichtung erforderlich sind, zur Bildung eines großen Kabelbündels mit zahlreichen Leitungen zum Ansteuern der großen Anzahl von Elektromagneten, Schaltern und anderen elektronischen Komponenten. Ein Kabelbündel dieses Typs kann in großen Innenschweißvorrichtungen untergebracht werden, aber bei kleineren Einheiten, wie zum Beispiel bei Innenschweißvorrichtungen mit einer Größe von 20 Zoll oder weniger, ist ein derartiges Kabelbündel nur sehr schwer unterzubringen. Es kann beim Betrieb mit der Innenschweißvorrichtung zusammentreffen und ist daher während des Betriebes immer Gegenstand von Beschädigungen. Daher ist es erforderlich, für automatisierte Schweißvorgänge ein verbessertes elektronisches Steuerungssystem zu schaffen, und es ist insbesondere erforderlich, für eine Innenschweißvorrichtung ein zuverlässigeres, weniger kompliziertes und kleineres Steuerungssystem zu schaffen.
  • ZUSAMMENFASSUNGDER ERFINDUNG
  • Die vorliegende Erfindung betrifft gemäß Anspruch 1 ein Verfahren zum Zusammenschweißen von zwei Rohrverbindungsstücken, die gegeneinander anliegen und an der Verbindungsstelle der Rohrverbindungsstücke einen Spalt bilden. Der Schweißvorgang wird unter Verwendung einer Schweißeinrichtung durchgeführt, die am Spalt entlangbewegt wird und mit Hilfe eines in den Spalt geführten Schweißdrahtes einen Lichtbogen erzeugt. Das Verfahren beginnt mit dem Schritt, daß für eine Schweißnaht entlang des Spaltes ein Anfangspunkt und ein Endpunkt bestimmt wird. Anschließend wird die Schweißeinrichtung am Anfangspunkt des Spaltes positioniert. Am Anfangspunkt wird die Zufuhr eines Schweißdrahtes in den Spalt und das Zünden eines Lichtbogens eingeleitet. Nachdem der Lichtbogen gezündet ist, wird die Bewegungsgeschwindigkeit der Schweißeinrichtung an dem Spalt entlang von einer ersten Geschwindigkeit am Anfangspunkt auf eine zweite Geschwindigkeit erhöht. Nach dem Zünden des Lichtbogens wird auch die Zuführ geschwindigkeit des Drahtes in den Spalt erhöht, bis die Draht- Zuführgeschwindigkeit einen vorbestimmten Wert erreicht. Für den Schweißvorgang wird dann die Schweißeinrichtung mit der zweiten Geschwindigkeit an dem Spalt in Richtung auf den Endpunkt entlangbewegt.
  • Gemäß eines weiteren Aspektes der vorliegenden Erfindung werden die Bewegungsgeschwindigkeit der Schweißeinrichtung und die Zuführgeschwindigkeit des Drahtes schlagartig auf Null vermindert, wenn die Schweißeinrichtung den Endpunkt der Schweißnaht erreicht.
  • Gemäß eines weiteren Aspektes der vorliegenden Erfindung hat die Lichtbogenspannung beim Zünden des Lichtbogens einen ersten Spannungswert, und die Lichtbogenspannung wird von diesem ersten Spannungswert auf einen zweiten Spannungswert erhöht, und zwar entsprechend des Anstiegs der Geschwindigkeit der Schweißeinrichtung von der ersten Bewegungsgeschwindigkeit auf die zweite Bewegungsgeschwindigkeit.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Zum besseren Verständnis der vorliegenden Erfindung und deren Vorteile wird nun auf die folgende Beschreibung Bezug genommen, und zwar zusammen mit den beiliegenden Zeichnungen, wobei:
  • FIGUR 1 ist eine Seitensicht, teilweise im Querschnitt, eines Trägergestells für Innenschweißeinrichtungen, das zusammen mit der vorliegenden Erfindung verwendet wird,
  • FIGUR 2 ist eine Seitenansicht einer Innenschweißeinrichtung, die zusammen mit der vorliegenden Erfindung verwendet werden kann,
  • FIGUR 3 ist ein Blockdiagramm, in dem die Anordnung und Verbindungen der elektronischen Funktionseinheiten dargestellt sind, die das Steuerungssystem der vorliegenden Erfindung bilden,
  • FIGUR 4 ist ein Blockdiagramm, in dem die Funktionseinheiten des Steuerungssystems der vorliegenden Erfindung, die Schaltkreis-Karten, durch die jede Funktionseinheit gebildet ist, die Verbindungen der Funktionseinheiten und die Bedienungskonsolen für zwei der Funktionseinheiten dargestellt sind,
  • FIGUR 5 ist eine Darstellung einer Bedienungskonsole für das vordere Ende einer Innenschweißvorrichtung, wie in FIGUR 4 gezeigt,
  • FIGUR 6 ist eine Darstellung einer Bedienungskonsole für eine Zuführstange der Innenschweißvorrichtung, wie sie in FIGUR 4 gezeigt ist,
  • FIGUR 7 ist eine Darstellung der Funktion der Innenschweißeinrichtungen, die zusammen mit der vorliegenden Erfindung verwendet werden,
  • FIGUR 8 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten CPU-Karte,
  • FIGUR 9 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Stromversorgungskarte,
  • FIGUR 10 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Konsolen-Interface-Karte,
  • FIGUR 11 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Analog-Eingabe-Karte,
  • FIGUR 12 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Analog-Ausgabe-Karte,
  • FIGUR 13 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Motor-Encoderkarte,
  • FIGUR 14 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Dual-EMF-Motorkarte,
  • FIGUR 15 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Gleichspannungs-Eingabekarte,
  • FIGUR 16 ist ein detailliertes Blockdiagramm der in FIGUR 4 gezeigten Gleichspannungs-Ausgabekarte,
  • FIGUR 17 ist eine graphische Darstellung, in der die Bewegungsgeschwindigkeit der Innenschweißeinrichtung, die Lichtbogenspannung für den Schweißvorgang und die Drahtzuführgeschwindigkeit als Funktionen der Position der Innenschweißeinrichtung gezeigt ist,
  • FIGUR 18 ist ein Flußdiagramm, das die ersten Funktionsschritte des Software-Programms in jeder der CPUs zeigt,
  • FIGUR 19 ist ein Flußdiagramm, das die Funktion des Auswählens der Anwendungsfunktionen für jede der CPUs zeigt,
  • FIGUR 20 ist ein Flußdiagramm, in dem die Funktion der CPU-1- Anwendungen gezeigt ist,
  • FIGUR 21 ist ein Flußdiagramm, in dem die Funktion der CPU-2- Anwendungen gezeigt ist,
  • FIGUR 22 ist ein Flußdiagramm, in dem die Funktion der CPU-3- Anwendungen gezeigt ist,
  • FIGUR 23 ist ein Flußdiagramm, in dem die Funktion der CPU-4- Anwendungen gezeigt ist,
  • FIGUR 24 ist ein Flußdiagramm, das die Funktion einer Kommuni kationsunterbrechung für jede der CPUs zeigt,
  • FIGUR 25 ist ein Schweißsystem, das die vorliegende Erfindung beinhaltet und eine Außenschweißvorrichtung, einen Drucker, eine Hand-Programmiereinheit und eine Hand- Trainingseinheit aufweist, und
  • FIGUR 26 ist ein Rahmen-Schweißsystem, das die vorliegende Erfindung beinhaltet und mehrere Schweißstationen aufweist, die durch ein gemeinsames Steuerungssystem gesteuert werden.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • In FIGUR 1 ist eine Querschnittsansicht einer Innenschweißvorrichtung 30 gezeigt, die zusammen mit der vorliegenden Erfindung verwendet wird. Die Komponenten und die Funktion dieser Vorrichtung sind detailliert in der U.S.P.N. 3,612,808, Nelson, erläutert, die am 4. Juni 1969 angemeldet wurde, wobei dieses Patent hier als Druckschrift eingeführt wird. FIGUR 2 ist eine Darstellung einer Innenschweißeinrichtung 140, die zusammen mit der Innenschweißvorrichtung 30 verwendet wird.
  • Eine weitere Innenschweißvorrichtung, die zusammen mit der vorliegenden Erfindung verwendet werden kann, ist in der U.S.P.N. 3,632,959, Nelson et al., gezeigt, die am 4. Januar 1972 veröffentlicht wurde und hier als Druckschrift eingeführt wird.
  • Bezogen auf FIGUR 1 ist die Innenschweißvorrichtung 30 in einer Rohrverbindung 32 angeordnet. Die Vorrichtung 30 enthält eine Antriebseinrichtung 34 mit einem Motor 35 zum Antreiben eines Antriebsrades 36. Die Antriebseinrichtung enthält außerdem Vorderräder 38 und ein Gegenrad 40. Eine Betätigungseinrichtung 42 bewegt das Gegenrad 40 gegen die obere Innenwand der Rohrverbindung 32.
  • Eine flexible Verbindung 44 ist zwischen dem vorderen Abschnitt der Vorrichtung 30 und der Antriebseinrichtung 34 vorgesehen, um eine Fehlausrichtung zwischen Komponenten der Vorrichtung 30 zu verhindern, wenn diese am Ende der Rohrverbindung 32 arretiert wird. Die Vorrichtung 30 enthält außerdem eine vordere Arretiereinrichtung 52 und eine hintere Arretiereinrichtung 54. Durch diese Einrichtungen werden zugehörige vordere und hintere Schuhe der Vorrichtung 30 betrieben. Zwischen der Arretiereinrichtungen 52 und 54 befindet sich eine Schweißanordnung 56. Die Schweißanordnung 56 enthält die Schweißeinrichtungen, die zugehörige Verbrauchsmittelzuführung und mechanische Funktionseinrichtungen, um zwischen aneinander anstoßenden Rohrverbindungen 32 und 33 eine Schweißnaht zu erzeugen. Die aneinander anliegenden Enden der Verbindungen 32 und 33 sind so gearbeitet, um sowohl an der inneren als auch an der äußeren Fläche einen Schweißspalt zu bilden. Die Innenschweißeinrichtung 140 zur Durchführung des Innenschweißvorgangs, die Teil der Anordnung 56 ist, ist unter Bezugnahme auf FIGUR 2 beschrieben.
  • Es sind Ausrichtungseinrichtungen 58 vorgesehen, um die Innenschweißvorrichtung am Ende der Rohrverbindung 32 auszurichten, bevor die Rohrverbindung 33 in Position gebracht wird. Um den Umfang der Vorrichtung 30 ist eine Anzahl der Ausrichtungseinrichtungen 58 vorgesehen. Die Ausrichtungseinrichtungen 58 werden durch pneumatischen Druck nach außen bewegt, und wenn die Innenschweißvorrichtung 30 in die Rohrverbindung 32 zurückbewegt wird, greifen die Ausrichtungseinrichtungen 58 mit dem Ende der Rohrverbindung 32 ein, um so die Innenschweißeinrichtungen der Anordnung 56 an der Verbindungsstelle der Rohrverbindungen 32 und 33 zu positionieren.
  • Die Innenschweißvorrichtung 30 enthält außerdem einen Tank 60, der Druckluft oder ein anderes geeignetes Gas zur Betätigung der Arretiereinrichtungen 52 und 54 sowie der Betätigungseinrichtung 42 und der Ausrichtungs-Betätigungseinrichtungen enthält. Die Vorrichtung 30 enthält außerdem den Tank 62 zur Aufnahme eines Schutzgases für den Schweißlichtbogen.
  • Eine Batterie 50 versorgt die Antriebseinrichtung 34 und das elektrische Steuerungssystem mit elektrischer Energie.
  • Die elektrische Energie für das Lichtbogenschweißen wird der Vorrichtung 30 durch ein Stromkabel 64 zugeführt, das um Seilscheiben 66 und 68 gewickelt ist, die durch eine Feder 70, die wiederum mit einer Seilscheibe 72 verbunden ist, unter Zugspannung gehalten werden. Diese Federanordnung bewirkt eine Zugentlastung für das Stromkabel 64 und schützt es vor Belastungen.
  • Das Stromkabel 64 ist an einen Verteilerkasten 74 angeschlossen, der seinerseits mit einem Schweißstromanschluß (nicht gezeigt) verbunden ist, um den Schweißeinrichtungen Strom zuzuführen.
  • Die Vorrichtung 30 hat an ihrem vorderen Ende einen röhrenförmigen Rahmen 80, der dazu dient, die in ihm enthaltenen Komponenten zu schützen und zu halten. Eine hohle Zuführstange 82 ist mit einem Ende an dem vorderen Ende des Rahmens 80 angebracht und an dem gegenüberliegenden Ende mit einem Steuerungskasten 84 für die Zuführstange verbunden. Schutzgas für die Schweißlichtbögen wird durch die Zuführstange 82 zugeführt und in dem Tank 62 gespeichert.
  • Die Innenschweißvorrichtung 30 hat ein dezentral aufgebautes elektronisches Steuerungssystem, das eine Anzahl von Mikroprozessor-Steuerungseinheiten aufweist. Diese umfassen eine Steuerungseinheit 92 für das hintere Ende, eine Steuerungseinheit 94 für das vordere Ende, eine Steuerungseinheit 96 für die Zuführstange und eine Steuerungseinheit 98 für die Stromversorgung. Jede dieser Steuerungseinheiten ist parallel mit einer gemeinsamen seriellen Kommunikationsleitung 100 verbunden.
  • Ein zweiadriges Stromkabel 102 ist mit der Batterie 50 verbunden, um jeder der Mikroprozessor-Steuerungseinheiten 92, 94, 96 und 98 Strom zuzuführen.
  • Die Vorrichtung 30 weist außerdem eine Anzahl von Innenschweißeinrichtungen auf, wie beispielsweise in FIGUR 2 gezeigt, die an einem Drehring montiert sind, wie nachfolgend beschrieben wird. Der Ring wird durch einen Motor 110 angetrieben, der mit einem Positions-Encoder 112 versehen ist. Der Encoder 112 erzeugt ein digitales Datensignal, das die relative Position des Ringes angibt, an dem die Schweißeinrichtungen montiert sind (siehe FIGUR 7).
  • Die Stromversorgungs-Steuerungseinheit 98 ist geschaltet, um den Betrieb der Stromversorgung 104 zu steuern. Eine übliche Stromversorgung ist ein Modell R35-400, hergestellt von der Lincoln Electronic Co.
  • Das Kommunikationsprotokoll für die Leitung 100 ist ein Vielfachzugriff mit Leitungsüberwachung sowie Kollisionserkennung (CSMA/CD) und ist in IEEE-Standard 802.3 beschrieben.
  • Die Steuerungseinheit für das vordere Ende hat eine Bedienungs- und Anzeigekonsole 118 (siehe FIGUR 5), und der Zuführstangen- Steuerkasten 84 hat eine Anzeige- und Bedienungskonsole 120 (siehe FIGUR 6).
  • Beim Betrieb der Vorrichtung 30 ist es erforderlich, die Positionen der Innenschweißeinrichtungen einzustellen. Dies wird mit einer mit der Mikroprozessor-Steuerungseinheit 94 verbundenen Hand-Trainingseinheit 126 durchgeführt, bevor die Rohrverbindung 33 in die gezeigte Position gebracht wird, so daß der Bediener auf die Konsole 118 Zugriff hat. Die Einheit 94 umfaßt eine Anzeige, um die Ausgabe des Encoders 112 anzuzeigen. Die Einheit 126 hat Knöpfe zum Definieren der Ausgangs-, Anfangs- und Endpositionen für die Schweißvorgange in Uhrzeiger- und in Gegenuhrzeigerrichtung. Der Bediener positioniert die Innenschweißeinrichtungen an geeigneten Stellen und drückt den entsprechenden Knopf, um eine Position zu definieren. Diese Positionen, die vom Encoder 112 erfaßt werden, werden in der Steuerungseinheit 94 gespeichert und beim Schweißvorgang verwendet, um die Bewegung der Innenschweißeinrichtungen zu steuern.
  • Nachfolgend wird auf FIGUR 2 Bezug genommen, in der eine Innenschweißeinrichtung 140 gezeigt ist, die zusammen mit der vorliegenden Erfindung verwendet werden kann. Es sei angemerkt, daß eine detaillierte Beschreibung des Aufbaus und der Funktionsweise der Innenschweißeinrichtung in der U.S.P.N. 3,612,808 zu finden ist. Die Schweißeinrichtung 140 weist eine Patrone 142 auf, um Schweißdraht 144 als eine Schweißelektrode durch eine Röhre 146 zu einer Schweißdüse 150 zu führen.
  • Der Schweißdraht 144 ist um eine Elektrodenspule 152 gewickelt. Der Schwenkarm 154 wird durch eine Feder 156 gegen die Spule 152 gedrückt, wenn sich die Spule zu drehen beginnt.
  • Die Düse 150 ist schwenkbar an einem Träger 158 montiert. Die Schweißdüse 150 wird durch Arme 160 gehalten, die durch einen Stift 162 mit dem Träger 158 verbunden sind. Der Arm 160 ist außerdem durch einen Stift 164 an einem Arm 166 befestigt, der mit einer Betätigungseinrichtung 168 verbunden ist. Um den Arm 166 herum ist eine Feder 170 vorgesehen. Die Feder 170 drückt die Schweißdüse 150 von ihrer Schweißposition weg, und daher ist es notwendig, die Betätigungseinrichtung 168 mit unter Druck stehendem Gas zu versorgen, um die Düse 150 in ihre Schweißposition zu bewegen. Die Zugkraft der Feder dient dazu, die Düsen in eine Schutzposition zu bewegen, wenn die nächste Rohrverbindung über die Einrichtung 52 in Position gebracht wird. Die Elektrode 144 wird der Düse 150 durch einen Mechanismus zugeführt, der einen Motor 180 aufweist, der ein Rad 182 antreibt, welches elastisch gegen ein Lager 184 gedrückt wird. Wenn das Rad 182 angetrieben wird, wird der Draht 144 in die Düse 150 geleitet.
  • Durch die Röhren 186 und 188 wird der Düse 150 Schutzgas zugeführt.
  • Unter Bezugnahme auf FIGUR 2 wurde eine Innenschweißeinrichtung 140 beschrieben. Es kann eine bestimmte Innenschweißeinrichtung, wie sie in dem US-Patent Nr. 4,525,616, Slavens, gezeigt ist, verwendet werden, wobei dieses Patent hier als Druckschrift eingeführt wird. Diese Innenschweißeinrichtung weist eine oszillierende Düse auf, mit der dem Spalt zwischen den aneinander anstoßenden Rohrverbindungen automatisch gefolgt werden kann, indem während der Düsen-Oszillationen die Amplitude des Stromes überwacht wird.
  • Nun wird auf FIGUR 3 Bezug genommen, in der ein schematisches Blockdiagramm des Steuerungssystems für die Schweißvorrichtung 30 gezeigt ist. Es sei angemerkt, daß jede der Mikrocomputer- Steuerungseinheiten 92, 94, 96 und 98 mit der Kommunikationsleitung 100 verbunden ist. Die Steuerungseinheit 98 und die Schweißstromversorgung 104 sind normalerweise mit einem Abstand von über 100 Fuß von der Zuführstangen-Steuerungseinheit 96 angeordnet.
  • Nachfolgend wird auf FIGUR 4 Bezug genommen, in der in Form eines Blockdiagramms das Steuerungssystem für die Vorrichtung 30 gezeigt ist. Die Mikroprozessor-Steuerungseinheiten 92, 94, 96 und 98 sind durch die Kommunikationsleitung 100 parallel verbunden. Den Steuerungseinheiten wird über ein zweiadriges Stromkabel 102 von der Batterie 50 Strom zugeführt. Dies ist eine 24 Volt-Leitung.
  • Die Mikroprozessor-Steuerungseinheiten 92-98 enthalten jeweils eine Anzahl von Leiterplattenkarten, um die erforderlichen Funktionen der Steuerungseinheit auszuführen. Jeder der Steuerungseinheiten weist eine Computer-Karte (CPU) und eine Stromversorgungskarte auf. Der Aufbau jeder der Steuerungseinheiten ist wie folgt:
  • Steuerungseinheit 92
  • 1. CPU-Karte
  • 2. Stromversorgungskarte
  • 3. Gleichspannungs-Ausgabekarte
  • 4. Motor-Encoderkarte
  • Steuerungseinheit 94
  • 1. CPU-Karte
  • 2. Stromversorgungskarte
  • 3. Konsolen-Interface-Karte
  • 4. Analog-Eingabe-Karte
  • 5. Gleichspannungs-Ausgabekarte
  • 6. Dual-EMF-Motorkarte
  • 7. Dual-EMF-Motorkarte
  • 8. Gleichspannungs-Eingabekarte
  • Steuerungseinheit 96
  • 1. CPU-Karte
  • 2. Stromversorgungskarte
  • 3. Konsolen-Interface-Karte
  • Steuerungseinheit 98
  • 1. CPU-Karte
  • 2. Stromversorgungskarte
  • 3. Analog-Ausgabe-Karte
  • 4. Gleichspannungs-Ausgabekarte
  • Die Leiterplattenkarten, die in den Mikroprozessor-Steuerungseinheiten verwendet werden, enthalten eine CPU-Karte 202, eine Stromversorgungskarte 204, eine Konsolen-Interface-Karte 206, eine Analog-Eingabe-Karte 210, eine Analog-Ausgabe-Karte 212, eine Motor-Encoderkarte 214, eine Dual-EMF-Motorkarte 216, eine Gleichspannungs-Eingabekarte 218 und eine Gleichspannungs-Ausgabekarte 220.
  • Jede der CPU-Karten ist durch die zugehörige Stromversorgungskarte mit der Kommunikationsleitung 100 verbunden. Das Stromkabel 102 ist bei jeder der Steuerungseinheiten mit der Stromversorgungskarte 204 verbunden. In jeder der Steuerungseinheiten sind die Karten durch einen 16-Bit Daten-/Adreßbus verbunden, wie nachfolgend beschrieben wird.
  • Die Mikroprozessor-Steuerungseinheit 92 hat eine Motor-Encoderkarte 214, die eine Ring-Encoder-Ausgabe von dem Encoder 112 empfängt und dem Motor 110 Antriebssignale zuführt. Eine Gleichspannungs-Ausgabekarte 220 in der Steuerungseinheit 92 erzeugt Ausgaben zur Steuerung der Funktionen: Räder-Auf, Räder-Ab, Bremse, Vorrichtung 30 nach vorne bewegen, Vorrichtung 30 nach hinten bewegen, hintere Schuhe vorschieben und hintere Schuhe zurückziehen. Die Steuerungseinheit 94 hat zwei Dual-EMF-Motorkarten 216, von denen eine den Uhrzeigerrichtung-1- (CW1) und den Gegenuhrzeigerrichtung-1-Drahtzuführmotor (CCW1) und die andere den Uhrzeigerrichtung-2- (CW2) und den Gegenuhrzeigerrichtung-2-Drahtzuführmotor (CCW2) der Innenschweißeinrichtungen steuert. Eine dritte und eine vierte Dual-EMF-Motorkarte 216 steuern die Schweißbrenner-Oszillationsmotoren, falls diese vorgesehen sind. Die Gleichspannungs-Ausgabekarte 220 steuert die Ein/Aus-Funktionen der Uhrzeigerrichtung- und der Gegenuhrzeigerrichtung-Schutzgaszufuhr, die der Ausrichtungseinrichtungen 58 und der vorderen Schuhe. Eine Gleichspannungs-Eingabekarte 218 erfaßt den Zustand des Rohrende-Grenzschalters, des Zuführstangen-Knickgrenzschalters, des Maximum-Grenzschalters der Ausrichtungeinrichtungen und des Schuhdruck-Schalters. Die Einheit 94 hat außerdem eine Analog-Eingabe-Karte 210, die die Lichtbogenspannung der Schweißeinrichtung 1 und der Schweißeinrichtung 2 erfaßt. Die Einheit 94 hat außerdem eine Konsolen- Interface-Karte 206, die die Zustände der Schalter und Druckknöpfe der Bedienungskonsole 118 erfaßt und die Siebensegmentanzeigen ansteuert.
  • Die Steuerungseinheit 96 hat zusätzlich zur CPU-Karte 202 und zur Stromversorgungskarte 204 eine Konsolen-Interface-Karte 206.
  • Die Steuerungseinheit 98 hat zusätzlich zu der CPU-Karte 202 und zur Stromversorgungskarte 204 eine Gleichspannungs-Ausgabekarte 220 und eine Analog-Ausgabe-Karte 212.
  • Die Bedienungskonsole 118 für die Innenschweißeinrichtungen ist in FIGUR 5 gezeigt. Diese Konsole hat einen Kipphebelschalter 230 mit einer oberen und einer unteren Stellung, um die Ausrichtungseinrichtungen 58 anzuheben und abzusenken. Der Kipphebelschalter 232 hat ebenfalls eine obere und eine untere Stellung für die hinteren Schuhe. Die Räder 34 und 38 werden durch zugehörigen Knöpfe 234 und 236 in oberen und unteren Positionen bewegt.
  • Ein Kipphebelschalter 238 hat eine Ein- und eine Aus-Stellung für die Bremse, die durch die Einrichtung 48 realisiert ist.
  • Ein Kipphebelschalter 240 hat eine Vorwärts- und eine Rückwärtsstellung für die Funktion, die Bewegung der Vorrichtung 30 durch das Rohr zu bewirken.
  • Die Konsole 118 hat außerdem eine Anzeige 242, die 16 Stellen hat und dazu verwendet wird, Hilfsmeldungen und Zählerstände des Encoders 112 anzuzeigen. Durch einen Kipphebelschalter 244 wird dem Motor 35 entweder eine Spannung von 24 Volt oder von 36 Volt zugeführt. Die 36 Volt-Spannungsquelle bewirkt eine höhere Geschwindigkeit der Vorrichtung 30, wenn dies erforderlich ist.
  • Das Vorhandensein von Energie für das System wird durch eine Glühlampe 250 angezeigt.
  • Eine Schweißdraht-Anhalte-Funktion wird bewirkt, indem ein Knopf 252 gedrückt wird, wodurch bei allen vier Schweißeinrichtungen gleichzeitig der Schweißdraht angehalten wird.
  • Eine Drehung des Ringes 344 (siehe FIGUR 7) in Uhrzeigerrichtung wird bewirkt, indem ein Knopf 254 gedrückt wird. Eine Drehung des Ringes 344 in Gegenuhrzeigerrichtung wird bewirkt, indem ein Knopf 256 gedrückt wird.
  • Die vordere Arretiereinrichtung 52 wird durch einen Kipphebelschalter 258 aktiviert und deaktiviert.
  • Durch einen Kipphebelschalter 260 wird das Schutzgas für die sich in Uhrzeigerrichtung drehenden Innenschweißeinrichtungen ein- und ausgeschaltet.
  • Durch einen Kipphebelschalter 262 wird das Schutzgas für die sich in Gegenuhrzeigerrichtung drehenden Innenschweißeinrichtungen ein- und ausgeschaltet.
  • Die Drahtzufuhr für die sich in Uhrzeigerrichtung drehende Innenschweißeinrichtung 340 mit der Nummer 1 wird bewirkt, indem ein Knopf 266 gedrückt wird. Die Drahtzufuhr für die sich in Uhrzeigerrichtung drehende Innenschweißeinrichtung 342 mit der Nummer 2 wird bewirkt, indem der Knopf 268 gedrückt wird. Die Drahtzufuhr für die sich in Gegenuhrzeigerrichtung drehende Innenschweißeinrichtung 338 mit der Nummer 1 wird bewirkt, indem ein Knopf 270 gedrückt wird. Ähnlich wird die Drahtzufuhr für die sich in Gegenuhrzeigerrichtung drehende Innenschweißeinrichtung 336 mit der Nummer 2 bewirkt, indem ein Knopf 272 gedrückt wird.
  • Die Knöpfe 254 und 256 sowie die Kipphebelschalter 258, 260 und 262 sind mit Schutzabdeckungen versehen, um eine unabsichtigte Betätigung zu verhindern. Die durch diese Knöpfe und Kipphebelschalter bewirkten Funktionen werden eher bei einem Wartungsbetrieb als beim Routinebetrieb benötigt.
  • Die Bedienungskonsole 120 für die Zuführstange ist in FIGUR 6 gezeigt. Durch den Hauptbetriebsschalter 280 wird die Schrittfolge für jeden Betriebszyklus gesteuert. Der Schalter 280 hat eine Aus-Stellung 282. In einer Stellung 284 für die vorderen Schuhe bewirkt der Schalter 280, daß die vorderen Schuhe nach außen gedrückt werden.
  • In einer Stellung 286 ist der Schalter 280 eingestellt, um einen Schweißvorgang in Uhrzeigerrichtung durchzuführen. Der Vorgang wird durch Drücken des Schweißstartknopfes 306 gestartet. Durch eine Glühlampe 288 wird angezeigt, wann dieser Vorgang stattfindet.
  • In einer Stellung 290 ist der Schalter 280 eingestellt, um einen Schweißvorgang in Gegenuhrzeigerrichtung durchzuführen. Der Vorgang wird durch Drücken des Schweißstartknopfes 306 gestartet. Wenn dieser Vorgang stattfindet, leuchtet die Glühlampe 292.
  • In einer Stellung 294 bewirkt der Steuerschalter 280, daß sich der Ring 344 (FIGUR 7) in die Ausgangsposition 354 dreht, die die Position ist, von der aus der nächste Schweißzyklus beginnt.
  • Eine Glühlampe 296 leuchtet auf, um anzuzeigen, daß sich der Ring 344 aus seiner Ausgangsposition herausgedreht hat. Wenn der Schalter 280 in eine Stellung 298 gebracht wird, werden die Schuhe zurückgezogen, um zu ermöglichen, daß die Vorrichtung 30 entlang des Inneren der Pipeline bewegt werden kann.
  • Wenn sich der Schalter 280 in einer Stellung 300 befindet, kann sich die Vorrichtung 30 beim Drücken eines Automatik-Vorschub- Knopfes 302 bewegen. Die Betätigung des Knopfes 302 wird durch die Glühlampe 304 angezeigt.
  • In der Stellung 286 für das Schweißen in Uhrzeigerrichtung und in der Stellung 290 für das Schweißen in Gegenuhrzeigerrichtung wird der mögliche Schweißvorgang eingestellt, jedoch wird der eigentliche Schweißvorgang durch den Knopf 306 eingeleitet.
  • Durch einen Tastschalter 308 wird, falls er gedrückt wird, der gesamte Schweißvorgang unterbrochen, falls von einen Bediener ein Problem bemerkt wird.
  • Durch Drücken eines Knopfes 310 wird eine Drehung der Innenschweißeinrichtungen in Uhrzeigerrichtung bewirkt, und durch Drücken eines Knopfes 312 wird eine Drehung in Gegenuhrzeigerrichtung bewirkt.
  • Ein Kipphebelschalter 316 wird dazu verwendet, um während eines Schweißvorgangs die Drahtzufuhr zu den Drahtzuführungen CW1 und CCW1 zu unterbrechen. Die Drahtzufuhr für CW2 und CCW2 kann während eines Schweißvorgangs durch einen Kipphebelschalter 318 unterbrochen werden. Die Kipphebelschalter 316 und 318 sind mit Schutzabdeckungen versehen, um eine unbeabsichtigte Betätigung zu verhindern.
  • Eine Glühlampe 320 wird aktiviert, wenn die Schütze der Schweißstromzuführung geschlossen sind und den Schweißeinrichtungen Strom zugeführt wird.
  • Ein Knopf 322 wird gedrückt, um einen Lichtbogenspannungs-Test durchzuführen. Wenn dieser Knopf gedrückt wird, werden die Schütze der Schweißstromzuführung geschlossen, und die Lichtbogenspannungen der Schweißeinrichtungen werden auf den Anzeigen 326 und 328 angezeigt.
  • Die Lichtbogenspannungen für die Schweißeinrichtung Nummer 1 und für die Schweißeinrichtung Nummer 2 werden für jede Schweißnaht durch Drehpotentiometer 330 und 332 eingestellt.
  • In FIGUR 7 ist schematisch die Positionierung und die Drehung der Innenschweißeinrichtungen dargestellt. Die Innenschweißeinrichtungen 336, 338, 340 und 342 sind an einem Antriebsring 344 montiert. Der Motor 110 treibt den Ring 344 an, und die Wellenposition des Motors 110 wird durch den Encoder 112 erfaßt. Das Positionssignal des Motor-Encoders 112 wird zur Motor-Encoderkarte 214 in der Mikrocomputer-Steuerungseinheit 92 übertragen. Diese Einheit erzeugt die Steuerungssignale zum Antreiben des Motors 110. Der Motor 110 kann den Ring 344 entweder in Uhrzeigerrichtung oder in Gegenuhrzeigerrichtung antreiben, und er kann den Ring mit verschiedenen Geschwindigkeiten antreiben.
  • Die Positionen 346 und 348 bilden die oberste Position und die unterste Position der Rohrverbindung 32. Die Positionen 350 und 352 bilden die Mittelpositionen zwischen der obersten Position und der untersten Position. Die Ausgangsposition 354 ist bezüglich der obersten Position etwas versetzt. Die Schweißeinrichtungen 340 und 342 sind relativ zueinander um 90º versetzt, ebenso wie die Schweißeinrichtungen 336 und 338. Die Schweißeinrichtungen 338 und 340 sind jedoch um weniger als 90º gegeneinander versetzt.
  • Es ist außerdem ein mechanischer Anschlag 358 vorgesehen, um an einer Innenschweißeinrichtung einen Grenzschalter zu öffnen, falls sich diese über die gewünschte Endposition hinausbewegen sollte. Dieses ist eine Sicherheitseinrichtung.
  • Die Hand-Einheit 126 wird verwendet, um die Ausgangs-, Anfangsund Endposition zu definieren. Dies erfolgt, indem der Bediener die Konsole 118 bedient. Durch Steuerung dieser Konsole kann der Bediener den Ring 344 steuern, um die Innenschweißeinrichtungen zu positionieren. Der Bediener steuert den Motor 110 an, um die Schweißeinrichtung 340 an der Ausgangs-, Anfangs- und Endposition zu positionieren, und an der jeweiligen Position drückt er einen entsprechenden Knopf an der Einheit 126. Die Steuerungseinheit 92 speichert jede der Positionen in einer Datei, um sie beim automatischen Schweißbetrieb zu verwenden.
  • Beim Betrieb wird der Ring 344 durch den Motor 110 angetrieben. Wenn nicht geschweißt wird, befindet sich der Ring in einer Position, in der sich die Schweißeinrichtung 340 in der Ausgangsposition 354 befindet. Der gesamte Schweißvorgang wird in zwei Schritten durchgeführt. Der erste Schritt ist ein gleichzeitiger Schweißvorgang in Uhrzeigerrichtung mit den Schweißeinrichtungen 340 und 342, auf den unter Verwendung der Schweißeinrichtungen 336 und 338 ein zweiter Schweißvorgang in Gegenuhrzeigerrichtung folgt. Bei dieser Schweißanordnung wird vorzugsweise mit einer nach unten gerichteten Bewegung gearbeitet.
  • Beim ersten Schweißvorgang befindet sich die Schweißeinrichtung 340 zunächst in der Ausgangsposition 354. Zu Beginn des Schweißvorgangs werden die Schütze für die Gaszuführung und für die Stromzuführung eingeschaltet, und der Ring 344 wird gedreht, um die Schweißeinrichtung 340 mit der Anfangsposition 346 und die Schweißeinrichtung 342 mit der Position 352 auszurichten, oder um die Bewegung der Schweißeinrichtungen an diesen Positionen vorbei fortzusetzen. In dieser Position wird die Drahtzufuhr zu den Schweißeinrichtungen gestartet. An beiden Schweißeinrichtungen 340 und 342 wird dann ein Lichtbogen gezündet. Dabei wird der Antriebsmotor 110 entweder wieder aktiviert oder weiterhin angesteuert, um die Schweißeinrichtungen mit einer geringen Winkelgeschwindigkeit zu bewegen. Kurz nach Beginn des Schweißvorgangs wird der Motor 110 angesteuert, um die Antriebsgeschwindigkeit zu erhöhen, so daß die Schweißeinrichtungen 340 und 342 entlang der Schweißnaht mit einer hohen Bewegungsgeschwindigkeit bewegt werden. Wenn die Schweißeinrichtung 340 den Punkt 352 und die Schweißeinrichtung 342 den Punkt 348 erreicht, wird bei jeder der Schweißeinrichtungen 340 und 342 der Drahtzuführmotor abgebremst, und der Motor 110 wird auf ähnliche Weise abgebremst, um die Schweißeinrichtungen an den Endpunkten anzuhalten. Gleichzeitig wird die Gaszufuhr unterbrochen, und der Schütz der Schweißstromzuführung wird geöffnet, um den Schweißstrom abzuschalten.
  • Zu diesem Zeitpunkt hat sich die Schweißeinrichtung 338 bis zur Position 356 gedreht. Die vorstehend beschriebene Abfolge wird in Gegenuhrzeigerrichtung wiederholt, um die Schweißnaht an der linken Seite der Rohrverbindung fertigzustellen. Die der vorliegenden Erfindung entsprechenden Werte für die Bewegungsgeschwindigkeit, die Lichtbogenspannung und für die Drahtzufuhrgeschwindigkeit sind in FIGUR 17 dargestellt.
  • In FIGUR 8 ist ein detailliertes Blockdiagramm der CPU-Karte 202 dargestellt. Die Karte 202 enthält einen Mikroprozessor 380, vorzugsweise das Modell 80C152 von der Intel Corporation. Die Kommunikationsleitung 100, die als GSC (Global Serial Channel) bezeichnet wird, ist mit Hilfe eines R5485-Schaltkreis 382 angeschlossen. Auf ähnliche Art ist ein R5232-Kommunikationsschaltkreis 384 mit dem Mikroprozessor 380 verbunden, um eine nachfolgend beschriebene Hand-Konsole 920 anzuschließen.
  • Ein 24 Volt-Spannungseingang zu der Karte 202 ist durch einen Optokoppler 386 mit einem Leistungsüberwachungsschaltkreis 388 gekoppelt. Der Ausgang des Schaltkreises 388 ist ebenfalls mit dem Mikroprozessor 380 verbunden. Auf ähnliche Weise ist ein DIP-Schalter 390 mit dem Mikroprozessor 380 verbunden.
  • Die CPU-Karte 202 enthält einen parallelen Daten-/Adreßbus 400, über den der Mikroprozessor 380 mit einem RAM 402, einem ROM 404, einem Dreifach-Zeitgeber 406, einem Puffer 408 und einem Decoder 410 verbunden ist. Eine Interrupt-Leitung 407 verläuft von dem Zeitgeber 406 zum Mikroprozessor 380. Ein Oszillator 409 erzeugt ein Taktsignal für den Zeitgeber 406. Der Dekoder 410 gibt eine Gruppe von Kartenauswahlsignalen auf die Leitungen 411 aus. Mit Hilfe der Kartenauswahlleitungen wird es ermöglicht, daß jeweils nur eine externe Karte über den parallelen Daten/Adreßbus 400 mit der CPU-Karte kommunizieren kann. Der Zeitgeber 406 ist durch eine Interrupt-Leitung 407 mit dem Mikroprozessor 380 verbunden.
  • Auf der Karte 202 ist eine Gruppe von Stromleitungen 412 vorgesehen, um eine positive 24 Volt-Spannung, eine positive 15 Volt-Spannung, eine negative 15 Volt-Spannung und eine positive 5 Volt-Spannung zu liefern.
  • Ein Blockdiagramm der Stromversorgungskarte 204 ist in FIGUR 9 dargestellt. Die von der Batterie 50 ausgehende 24 Volt-Stromleitung 102 ist mit der Karte 204 verbunden und auf der Karte an einen Niederspannungs-Trennschalter 420 angeschlossen. Die Kommunikationsleitung 100, ein verdrilltes Aderpaar, ist mit der Karte 204 verbunden und geht wieder aus der Karte heraus, um an andere Steuerungseinheiten angeschlossen zu werden. Eine weitere Verbindung auf der Karte 204 verbindet die Leitung 100 mit der CPU-Karte der zugehörigen Steuerungseinheit.
  • Das Signal auf der Stromleitung 102 läuft durch den Schalter 420 zu einem Spannungswandler 422, der eine 5 Volt-Spannung, eine positive 15 Volt-Spannung und eine negative 15 Volt-Spannung erzeugt, und diese werden zusammen mit der 24 Volt-Spannung auf Leitung 102 auf einer Anzahl von Leitungen 412 weitergeleitet. Diese Stromleitungen werden allen anderen Karten jeder Mikroprozessor-Steuerungseinheit zugeführt.
  • Die Konsolen-Interface-Karte 206 wird in FIGUR 10 beschrieben. Die Stromleitungen 412 werden auf ähnlich Weise der Karte 206 zugeführt, um die Karte mit einer Betriebsspannung zu versorgen.
  • Der Adreßbus 400 von der CPU-Karte 202 ist ebenfalls mit der Karte 206 verbunden. Dieser Bus verläuft zu einem Anzeigetreiber 430, einem Analog/Digital-Wandler 432, einem Signalspeicher 434 und zu einem Signalspeicher 436.
  • Der Anzeigetreiber 430 speist Steuerleitungen 430a und 430b, um Anzeigen auf einer Konsole zu anzusteuern, wie beispielsweise auf den in FIGUREN 5 und 6 gezeigten Konsolen 118 und 120.
  • Eine Anzahl analoger Eingangsleitungen 442 von verschiedenen Sensoren und Schaltern werden dem Multiplexer 438 zugeführt, der einen der Eingänge zu dem Analog/Digital-Wandler 432 leitet. Das Analogsignal auf einer der Eingangsleitungen wird dann in ein digitales Wort umgewandelt, das über den Bus 400 der CPU-Karte 202 zugeführt wird.
  • Der Signalspeicher 434 speichert die Zustände für eine Anzahl von LED-Ausgängen. Diese Zustände werden einem Treiber 440 zugeführt, der eine Anzahl von LED-Ausgangsleitungen 444 ansteuert, die verschiedene LED-Elemente oder Glühlampen an den Anzeigen der Konsolen aktivieren. Die Auswahl der angesteuerten Lampen wird vom Mikroprozessor 380 bestimmt, der einen entsprechenden Befehl über die Busleitung 400 zum Signalspeicher 434 überträgt.
  • Eine Anzahl von Schaltereingangsleitungen 446 wird einem Signalspeicher 436 zugeführt, der den Zustand jedes Schaltereingangs speichert. Dieser wird dem Bus 400 als ein digitales Wort zugeführt und zurück zur CPU-Karte 202 übertragen.
  • Die Analog-Eingabe-Karte 210 ist in einem detaillierten Blockdiagramm in FIGUR 11 dargestellt. Diese Karte ist mit den Stromleitungen 412 und dem Daten-/Adreßbus 400 verbunden. Sie enthält außerdem Analog-Eingabeleitungen 450 und 452. Die Leitung 450 ist mit einem Trennverstärker 454 verbunden, der die Eingabe zu einem Abtast-Halte-Glied 456 weiterleitet Auf ähnliche Weise wird das Signal auf der Eingabeleitung 452 über einen Trennverstärker 458 einem Abtast-Halte-Glied 460 zugeführt. Beide Ausgänge der Abtast-Halte-Glieder 456 und 460 werden einem Multiplex-Schaltkreis 462 zugeführt, der wahlweise einen Ausgang zu einem Analog/Digital-Wandlerschaltkreis 464 leitet. Der Ausgang vom Schaltkreis 464 wird über einen Bus 466 Signalspeichern 468, 470, 472 und 474 zugeführt. Der Ausgang von jedem dieser vier Signalspeicher ist mit dem Daten-/Adreßbus 400 verbunden.
  • Der sequentielle Betrieb der Abtast-Halte-Glieder 456 und 460, des Multiplex-Schaltkreises 462, des Analog/Digital-Wandlers 464 und der Signalspeicher 468-474 wird durch einen programmierbaren Feldlogikschaltkreis (PAL) 476 gesteuert. Der Betrieb des PAL wird durch Befehle gesteuert, die diesem von der CPU-Karte über den Bus 400 zugeführt werden.
  • Beim Betrieb empfängt die Analog-Eingabe-Karte 210 auf jeder der Eingabeleitungen 450 und 452 analoge Signale. Dieses sind die Lichtbogensignale der sich zu diesem Zeitpunkt in Betrieb befindlichen Innenschweißeinrichtungen. Diese Signale werden durch die Glieder 456 und 460 abgetastet, und diese analogen Abtastwerte werden durch den Multiplex-Schaltkreis 462 wechselweise dem Analog/Digital-Wandler 464 zugeführt, der für jeden der analogen Abtastwerte ein digitales Wort erzeugt. Diese digitalen Wörter werden dann in den Signaispeichern 468-474 gespeichert und über den Bus 400 der CPU-Karte der Steuerungseinheit 94 zugeführt. Die CPU überträgt die Werte über die GSC-Kommunikationsleitung 100 an die CPU der Steuerungseinheit 98 für die Schweißstromzufuhr. Diese digitalen Wörter werden dann mittels der Analog-Ausgabe-Karte 212 zurück in analoge Signale umgewandelt. Durch die Ausgabe der Karte 212 wird die Ausgangsspannung der Schweißstromzufuhr gesteuert, um sicherzustellen, daß für jeden der Lichtbögen die erforderliche Schweißspannung vorhanden ist.
  • Die Analog-Ausgabe-Karte 212 ist als ein Blockdiagramm in FIGUR 12 beschrieben. Die Karte 212 empfängt die Stromleitungen 412 und den Daten-/Adreßbus 400. Digitale Datenwörter werden über den Bus 400 zu jedem von einer Gruppe von Schieberegistern 490, 492, 494 und 496 übertragen. Ein Oszillator 498 erzeugt ein Taktsignal für die Schieberegister 490 und 494. Die Ausgabe von dem Register 490 wird in das Register 492 übertragen, und die Ausgabe von dem Register 494 wird in das Schieberegister 496 übertragen. Das digitale Wort in dem Schieberegister 492 wird über einen Optokoppler 500 einem Digital/Analog-Wandler 502 zugeführt. Die Ausgabe des Schieberegisters 496 wird über einen Optokoppler 504 einem Digital/Analog-Wandler 506 zugeführt.
  • Die Ausgabe von dem Oszillator 498 wird ebenfalls über einen Optokoppler 508 übertragen, um den Digital/Analog-Wandler 502 zu takten, und die Ausgabe von dem Oszillator 498 wird über einen Optokoppler 510 übertragen, um den Digital/Analog-Wandler 506 zu takten. Der Wandler 502 erzeugt eine analoges Ausgabesignal auf einer Leitung 512, und der Digital/Analog-Wandler 506 erzeugt ein analoges Ausgangssignal auf einer Leitung 514.
  • Beim Betrieb empfängt die Karte 212 die digitalen Wörter der Lichtbogenspannung, die von der Analog-Eingabe-Karte 210 erzeugt werden. Diese digitalen Wörter werden durch die Schieberegister 490-496 übertragen, optisch gekoppelt und durch die Wandler 502 und 506 in analoge Spannungen umgewandelt, die dazu verwendet werden, um die Lichtbogenstromversorgung 104 zu steuern.
  • Die Motor-Encoderkarte 214 ist in Form eines Blockdiagramms in FIGUR 13 beschrieben. An dieser Karte sind die Stromleitungen 412 und der Daten-/Adreßbus 400 angeschlossen. Der Encoder 112 für den Motor 110 erzeugt Ausgangssignale auf den Leitungen 524 (Phase A) und 526 (Phase B). Die Leitungen 524 und 526 werden einem Gegenphasen-Erfassungsschaltkreis 528 zugeführt. Der Schaltkreis 528 erfaßt, ob eine inkrementale Drehung des Rades des Encoders 112 stattgefunden hat. Eine inkrementale Drehung in Uhrzeigerrichtung wird durch ein Signal angezeigt, das über eine Leitung 530 dem Zähler Nr. 1 des Dreifach-Zeitgeberschaltkreises 532 zugeführt wird. Eine inkrementale Drehung des Encoderrades in Gegenuhrzeigerrichtung wird als ein Signal über die Leitung 534 zum Zähler Nr. 2 des Dreifach-Zeitgeberschaltkreises 532 geleitet. Der dritte Zähler des Dreifach-Zeitgeberschaltkreises 532 wird dazu verwendet, um einen Referenzwert zu teilen, der über den Ausgang eines Oszillators 536 zur Verfügung gestellt wird. Durch Auslesen der Zähler 1 und 2 des Zeitgebers ist die CPU in der Lage, die Drehposition des Motor-Encoders und dadurch die Drehposition des Ringes 344 zu bestimmen. Indem in den Dividierzähler, nämlich den Zähler Nr. 3, Zahlen geschrieben werden, kann die CPU verschiedene Impulsausgabewerte erzeugen, die einem Phasendetektor 540 zugeführt werden. Durch eine Leitung 541 ist der Zähler Nr. 3 des Zeitgeberschaltkreises 532 mit dem Phasendetektor 540 verbunden.
  • Die Motor-Encoderkarte 214 enthält außerdem einen Phasendetektor 540, der die Ausgabe von einem ODER-Glied 542 empfängt. Die Eingänge zu dem Glied 542 sind die Encodersignale der Phase A und der Phase B auf den Leitungen 524 und 526. Eine weitere Phaseneingabe zu dem Decoder 540 ist die Ausgabe des Dreifach- Zeitgeberschaltkreises 532. Die Ausgabe des Phasendetektors 540 wird durch einen Verstärker 544 geleitet und einem ersten Eingang eines Differenzverstärkers 546 zugeführt. Ein Sägezahn- Generator 548 erzeugt die zweite Eingabe für den Differenzverstärker 546. Die Ausgabe des Differenzverstärkers 546 wird über einen Optokoppler 550 geleitet, um den Antriebs-Feldeffekttransistoren 552 ein Steuersignal zuzuführen. Die Transistoren 552 erzeugen auf einer Leitung 554 ein Steuersignal zum Antreiben des Ringmotors 110.
  • Durch den Schaltkreis 214 wird ein Rückführungs-Steuerungssystem zum Antreiben des Motors 110 gebildet, um den Motor genau zu positionieren und seine Bewegungsgeschwindigkeit zu bestimmen. Wenn die Frequenz der Impulse, die von dem Encoder ausgehen, größer ist als der Referenzwert, der von dem dritten Dreifach- Zeitgeber ausgegeben wird, so wird die Ausgabe des Phasendetektors kleiner. Dadurch wird bewirkt, daß die Ausgabe des Differenzverstärkers so klein ist, daß die FETs nicht eingeschaltet werden und der Motor langsamer läuft. Wenn die Frequenz der Impulse vom Encoder zu klein ist, steigt die Ausgabe des Phasendetektors, wodurch bewirkt wird, daß die Ausgabe des Differenzverstärkers ansteigt, wodurch die FETs eingeschaltet werden und der Motor schneller läuft. Bei einer angepaßten Geschwindigkeit erzeugt der Phasendetektor eine Impulsausgabe, deren Mittelwert bewirkt, daß der Differenzverstärker den FETs Impulse zuführt. Durch die Impulsausgabe der FETs wird dem Motor eine Leistung zugeführt, die der jeweiligen Belastung entspricht.
  • Die Dual-EMF-Motorkarte 216 ist in einem funktionalen Blockdiagramm in FIGUR 14 beschrieben. Auch an dieser Karte sind die Stromleitungen 412 und der Daten-/Adreßbus 400 angeschlossen.
  • Der Bus 400 ist mit dem Eingang eines Zweifach-Digital/Analog- Wandlers 560 verbunden. Dieser Wandler empfängt digitale Wörter und erzeugt aus diesen analoge Signale auf den Leitungen 562 und 564. Das analoge Signal auf Leitung 562 wird dem ersten Eingang eines Differenzverstärkers 566 zugeführt, dessen Ausgang dem Eingang eines Differenzverstärkers 568 zugeführt wird. Das analoge Signal auf Leitung 564 wird dem ersten Eingang eines Differenzverstärkers 570 zugeführt, dessen Ausgang dem ersten Eingang eines Differenzverstärkers 572 zugeführt wird.
  • Ein Sägezahn-Generator 574 erzeugt ein Sägezahn-Signal, das dem zweiten Eingang der Differenzverstärker 568 und 572 zugeführt wird. Die Ausgabe des Differenzverstärkers 568 wird über einen Optokoppler 576 einer Gruppe von Antriebs-Feldeffekttransistoren 578 zugeführt. Die Transistoren 578 erzeugen auf einer Leitung 580 ein Drahtzufuhr-Steuersignal das dem Drahtzuführungsmotor Nummer 1 der Innenschweißeinrichtung 340 zugeführt wird. Die Ausgabe des Differenzverstärkers 572 wird über einen Optokoppler 582 einer Gruppe von Feldeffekttransistoren 584 zugeführt, die auf Leitung 586 ein Motorsteuersignal erzeugen, um den Drahtzuführungsmotor Nummer 2 der Innenschweißeinrichtung 342 anzutreiben.
  • Die Leitung 580 dient ebenfalls dazu, die vom Drahtzuführungsmotor rückgeführte elektromotorische Kraft (EMF) zu überwachen und dieses Signal über einen Verstärker 588 einem Abtast-Halte- Glied 590 zuzuführen. Das abgetastete Signal wird über einen Verstärker 592 dem zweiten Eingang des Differenzverstärkers 566 zugeführt. Auf eine ähnliche Weise wird das rückgeführte EMF- Signal vom Drahtzuführungsmotor Nummer 2 auf Leitung 586 über einen Verstärker 594 einem Abtast-Halte-Glied 596 zugeführt. Das abgetastete Signal wird über einen Verstärker 598 dem zweiten Eingang des Differenzverstärkers 570 zugeführt.
  • Beim Betrieb empfängt die Karte 216 auf einer Leitung, wie zum Beispiel 580, ein rückgeführtes EMF-Signal, und dieses Signal wird mit Hilfe des Differenzverstärkers 566 mit dem gewünschten Antriebssignal verglichen, das auf Leitung 562 empfangen wird.
  • Die durch den Schaltkreis 566 erzeugte Differenz wird mit einem Sägezahn-Signal verglichen, das von dem Generator 574 geliefert wird. Die Zeitdauer der Ausgabe vorn Differenzverstärker 568 ist eine Funktion der Amplitude des Signals am Ausgang des Differenzverstärkers 566. Das Antriebssignal wird über den Optokoppler 576 übertragen und als Antriebssignal für die Feldeffekttransistoren 578 verwendet. Der Motor wird durch Impulse von den Transistoren 578 angetrieben. Dieser gesamte Schaltkreis ist ein Rückführungs-Steuerungsschaltkreis, durch den gewährleistet ist, daß die Drahtzuführungsmotoren mit nahezu der genauen erforderlichen Geschwindigkeit angetrieben werden, die durch ein digitales Wort bestimmt wird, das dem dualen DAC 560 über den Bus 400 zugeführt wird. Der zweite Motor wird durch einen ähnlichen Schaltkreis angetrieben.
  • Die Gleichspannungs-Eingabekarte 218 ist in einem in FIGUR 15 gezeigten Blockdiagramm beschrieben. Die Stromleitungen 412 und der Daten-/Adreßbus 400 werden zu den Komponenten auf der Karte 218 geführt. Signalspeicher 608 und 610 sind jeweils mit dem Daten-/Adreßbus 400 verbunden, um über den Bus digitale Wörter zu übertragen. Eine Gruppe von acht Eingangsleitungen 612 ist mit einem Optokoppler 614 verbunden. Die Ausgänge des Optokopplers 614 sind zum Signalspeicher 608 geführt. Eine Gruppe von acht Eingangsleitungen 616 ist einem Optokoppier 618 zugeführt. Die Ausgänge des Optokopplers 618 sind auf ähnliche Art und Weise zum Signalspeicher 610 geführt. Diese Eingänge sind Eingänge von Schaltern. Durch Auslesen der Signalspeicher über den Datenbus 400 kann der Computer bestimmen, welche Eingänge eingeschaltet und welche ausgeschaltet sind.
  • Die Gleichspannungs-Ausgabekarte 220 ist in einem funktionalen Blockdiagramm in FIGUR 16 beschrieben. Die Karte 220 empfängt die Stromleitungen 412 und den Daten-/Adreßbus 400. Die Funktion dieser Karte besteht darin, einer Gruppe von acht Ausgangsleitungen 630 Ein/Aus-Signale zuzuführen. Ein Signalspeicher 632 ist mit dem Bus 400 verbunden, um von diesem digitale Wörter zu empfangen. Die vom Signalspeicher 632 empfangenen Bits werden durch einen Optokoppler 634 geleitet, um einer Gruppe von Feldeffekttransistoren 636 die acht Ein/Aus-Zustände zuzuführen. Die Transistoren 636 dienen als Treiber für jede der Leitungen 630. Diese Leitungen dienen dazu, Elektromagnete anzusteuern für Gaszufuhr in Uhrzeigerrichtung, Gaszufuhr in Gegenuhrzeigerrichtung, die Ausrichtungseinrichtungen, die vorderen Schuhe, Räder vorschieben, Räder zurückziehen, die Bremse, Vorschub nach vorn, Vorschub nach hinten, hintere Schuhe vorschieben und hintere Schuhe zurückziehen.
  • Der Betrieb der Innenschweißeinrichtungen wird nun unter Bezugnahme auf FIGUREN 7 und 17 beschrieben. Die Schweißeinrichtungen 336, 338, 340 und 342 sind an dem Ring 344 montiert, der durch einen Motor 110 angetrieben wird. Die Winkelposition des Motors 110 wird vom Encoder 112 bestimmt, der das Steuerungssystem mit einem Impulssignal versorgt, wie weiter unten beschrieben ist. 20 In FIGUR 17 sind Kurven gezeigt, die die Drahtzuführgeschwindigkeit, die Lichtbogenspannung und die Bewegungsgeschwindigkeit für einen repräsentativen Schweißvorgang darstellen. Bei dem Betrieb wird eine Schweißnaht in Uhrzeigerrichtung und eine andere Schweißnaht in Gegenuhrzeigerrichtung erzeugt.
  • Wie in FIGUR 7 gezeigt, werden die Innenschweißeinrichtungen 340 und 342 beim Schweißvorgang in Uhrzeigerrichtung für die rechte Hälfte der Schweißnaht der Pipeline-Verbindung benutzt. Der Ring 344 wird gedreht, um die Innenschweißeinrichtung 340 in die obere Position 346 zu bringen und um dadurch die Innenschweißeinrichtung 342 in die Position 352 zu bringen. Der Ring wird für die Schweißnaht in Uhrzeigerrichtung um 90º gedreht.
  • Der Ring 344 wird für eine Schweißnaht in Gegenuhrzeigerrichtung so positioniert, daß sich die Schweißeinrichtung 338 in Position 346 befindet. Der Ring 344 wird um einen Vierteikreis in Gegenuhrzeigerrichtung gedreht&sub1; um die Schweißnaht an der linken Seite der Rohrverbindung fertigzustellen.
  • In einem ersten Betriebsverfahren wird der Ring 344 durch den Motor 110 angetrieben, um die Innenschweißeinrichtüng 340 in der Ausgangsposition 354 zu positionieren. Während des Schweißvorgangs wird von jeder der Schweißeinrichtungen 340 und 342 für die Schweißnaht ein Elektrodendraht in den Spalt der Rohrverbindung geführt. Die Geschwindigkeit mit der dieser Draht der Verbindung zugeführt wird, ist in FIGUR 17 als Kurve 644 dargestellt. Die Lichtbogenspannung, die an jedem der Drähte anliegt, ist durch die Kurve 646 dargestellt. Die Bewegungsgeschwindigkeit der Innenschweißeinrichtungen ist durch Kurve 648 dargestellt.
  • In einem bevorzugten Ausführungsbeispiel beginnt die Drahtzuführgeschwindigkeit mit einer Geschwindigkeit von 6096 mm pro Minute (240 Zoll pro Minute (IPM)) und steigt bis auf eine maximale Geschwindigkeit von 13970 mm pro Minute (550 IPM). Die Lichtbogenspannung beginnt bei einem Wert von 19,0 Volt und steigt bis auf einen Wert von 21,0 Volt. Die Bewegungsgeschwindigkeit der Innenschweißeinrichtungen beginnt im ersten Ausführungsbeispiel bei 0 und steigt für eine Bewegung über den Großteil der Schweißnaht auf 1397 mm pro Minute an (55 Zoll pro Minute (IPM)). Bei einem fliegenden Start liegt die Bewegungsgeschwindigkeit bei 508 mm pro Minute (20 Zoll pro Minute).
  • Beim Betrieb eines Steuerungssystems, das nachfolgend detaillierter beschrieben ist, wird die Innenschweißeinrichtung 340 in der Ausgangsposition 354 positioniert, und ein Knopf an einer Hand- Trainingseinheit 126 wird gedrückt, um diese Position als die Ausgangsposition zu definieren. Der Ring 344 wird dann durch Ansteuerung des Motors 110 gedreht, um die Innenschweißeinrichtung 340 in der Position 346 zu positionieren. Dann wird ein Knopf der Hand-Trainingseinheit 126 gedrückt, um diese Position als die Anfangsposition der Schweißnaht zu definieren. Der Ring 344 wird dann in Uhrzeigerrichtung gedreht, um die Innenschweißeinrichtung 340 an Position 352 zu positionieren, und ein Knopf an der Hand-Trainingseinheit 126 wird gedrückt, um diese Position für den automatischen Schweißvorgang als Endposition zu bestimmen. Die gleiche Prozedur wird durchgeführt, um für die Innenschweißeinrichtung 338 die Anfangs- und Endposition für den Schweißvorgang in Gegenuhrzeigerrichtung zu bestimmen.
  • Zur Durchführung des Schweißvorgangs wird die Innenschweißeinrichtung 340 in der Ausgangsposition 354 positioniert. In dieser Position wird die automatische Abfolge des Schweißvorgangs eingeleitet. In einem Ausführungsbeispiel wird die automatische Schweißeinrichtung neu positioniert und in Position 346 angehalten. In dieser Position wird die Drahtzufuhr des Elektrodendrahtes mit der obengenannten Geschwindigkeit eingeleitet. Auch wird die Zufuhr des Schutzgases gestartet. Der Lichtbogen wird gezündet, und eine Lichtbogenspannung von 19,0 Volt wird zur Verfügung gestellt. Gleichzeitig wird die Innenschweißeinrichtung 340 gestartet und solange entlang der Naht beschleunigt, bis die endgültige Bewegungsgeschwindigkeit von etwa 1397 mm pro Minute (55 IPM) erreicht ist. Gleichzeitig mit dem Erhöhen der Bewegungsgeschwindigkeit wird die Drahtzuführungsgeschwindigkeit auf eine Geschwindigkeit von 13970 mm pro Minute (550 IPM) und die Lichtbogenspannung bis auf maximal 21 Volt erhöht. Für das beschriebene Ausführungsbeispiel beträgt die Anstiegszeit ungefähr 4 Sekunden. Die Bewegung mit hoher Geschwindigkeit wird während etwa 85 % des Schweißvorgangs beibehalten. Wenn die Innenschweißeinrichtung 340 die Position 352 erreicht, wird der Motor 110 dynamisch abgebremst, um seine Geschwindigkeit so schnell wie möglich zu vermindern. Gleichzeitig wird die Drahtzuführgeschwindigkeit bis auf Null verlangsamt, und die Lichtbogenspannung wird auf Null reduziert. Die Gaszufuhr wird unterbrochen. Wenn die Innenschweißeinrichtung 340 an Position 352 zum Stillstand kommt, betragen die Parameter für die Drahtzuführgeschwindigkeit, die Lichtbogenspannung und die Bewegungsgeschwindigkeit Null. Das Absinken dieser Parameter am Ende des Schweißvorgangs erfolgt sehr schnell. Die in FIGUR 17 gezeigten Gefälle sind aus Gründen der Darstellung des Endbetriebes auseinandergezogen.
  • Die von der Innenschweißeinrichtung 342 ausgeführten Operationen sind gleich denen der oben beschrieben Innenschweißeinrichtung 340. Die Innenschweißeinrichtung 342 bewegt sich von Position 352 zur Endposition 348. Die Drahtzuführungsgeschwindigkeit, die Lichtbogenspannung und die Bewegungsgeschwindigkeit der Innenschweißeinrichtung 342 sind gleich denen der Innenschweißeinrichtung 340.
  • Bei einem optionalen Betriebsverfahren durchlaufen die Innenschweißeinrichtungen 340 und 342 die Bewegungsgeschwindigkeit, die durch den durchgezogenen Linienabschnitt 650 dargestellt ist, der in FIGUR 17 gezeigt ist. Dies wird als "fliegender Start" bezeichnet. Bei diesem Betriebsverfahren werden die Innenschweißeinrichtungen 340 und 342 nach Verlassen die Ausgangsposition 354 der Schweißeinrichtung 340 auf eine Anfangsgeschwindigkeit gebracht, die ungefähr 508 mm pro Minute (20 IPM) beträgt. Wenn die Innenschweißeinrichtung 340 die Position 346 durchläuft, startet die Drahtzufuhr mit der angezeigten Geschwindigkeit. Beim Erreichen der Position 346 und beim Zünden des Lichtbogens wird die Drahtzuführgeschwindigkeit erhöht, die Lichtbogenspannung wird erhöht, und die Bewegungsgeschwindigkeit der Innenschweißeinrichtung wird erhöht, wie in FIGUR 17 gezeigt ist. Von diesem Punkt bis zum Ende des Schweißvorgangs sind die Zustände gleich denen, die oben beschrieben wurden.
  • Nachdem der Schweißvorgang in Uhrzeigerrichtung beendet ist, wie oben beschrieben, wird die Innenschweißeinrichtung 338 in Position 356 positioniert. Von dieser Position wird der Schweißvorgang in Gegenuhrzeigerrichtung auf die gleiche Art und Weise durchgeführt, wie oben für den Schweißvorgang in Uhrzeigerrichtung beschrieben wurde. In diesem Fall kann die Innenschweißeinrichtung 338 zur Anfangsposition 346 bewegt und dort angehalten werden, oder sie kann weiterlaufen und sich in einem "fliegenden Start" über die Position 346 hinwegbewegen. Auf gleiche Art und Weise, wie oben beschrieben, führt die Innenschweißeinrichtung 336 die Funktion der Schweißeinrichtung 338 durch, so daß durch Verwendung der beiden Schweißeinrichtungen in Gegenuhrzeigerrichtung eine Hälfte der Schweißnaht fertiggestellt wird.
  • Obwohl in FIGUR 7 vier Innenschweißeinrichtungen gezeigt sind, können gleichzeitig mehrere dieser Innenschweißeinrichtungen verwendet werden. Für ein größeres Rohr ist es praktisch, in einem System zum Beispiel sechs oder acht Innenschweißeinrichtungen zu verwenden.
  • Die Funktion des Steuerungssystems für die Innenschweißeinrichtungen zur Durchführung der in FIGUR 17 gezeigten Funktionen sind nachfolgend detaillierter in den Flußdiagrammen für die Funktionen der Mikroprozessor-Steuerungseinheiten dargestellt.
  • Das Steuerungssystem für die Innenschweißvorrichtung 30 enthält eine dezentral angeordnete Gruppe von einzelnen Prozessoren, die durch eine serielle Kommunikationsleitung 100 miteinander verbunden sind. Dies sind Mikroprozessor-Steuerungseinheiten 92, 94, 96 und 98. Die gesamte Software für das Steuerungssystem der Vorrichtung 30 ist in jedem der ROMs 404 in jeder der Computer- Karten 202 gespeichert. Wenn die Software geändert werden soll, wird in jeder der CPU-Karten 202 ein vollständig neues Software- Paket gespeichert. Dadurch wird die Handhabung mehrerer Prozessoren wesentlich vereinfacht, und es besteht keine Möglichkeit, in einer CPU-Karte die falsche Software zu installieren. Durch die Kompatibilität der Karten in dem Steuerungssystem ist es möglich, eine Karte von einer Stelle gegen eine Karte von einer anderen Stelle auszutauschen, und der Bedarf an Austauschteilen wird vermindert.
  • Jede der Mikrocomputer-Steuerungseinheiten 92, 94, 96 und 98 hat eine CPU-Karte 202. In der nachfolgenden Software-Beschreibung bezieht sich der Begriff "CPU" auf die CPU-Karte.
  • Im folgenden wird auf FIGUR 18 Bezug genommen, in der die ersten Funktionsschritte des Programms in jeder der CPU-Karten 202 dargestellt ist. Das Programm beginnt mit einem Strom-Ein-Start 650. In einem ersten Funktionsblock 652 liest der Mikroprozessor den für die CPU typischen Schalter 390 aus, um den CPU-Typ der CPU-Karte zu bestimmen. Es gibt vier CPU-Typen, 1, 2, 3 und 4. Die Mikrocomputer-Steuerungseinheit 92 ist CPU-Typ 1, die Steuerungseinheit 94 ist CPU-Typ 2, die Steuerungseinheit 96 ist CPU- Typ 3 und die Steuerungseinheit 98 ist CPU-Typ 4.
  • Vom Block 652 geht das Programm zum Funktionsblock 654 weiter, in dem die PROM-Tabellen aus dem PROM 404 und der CPU-Typ aus dem Schalter 390 ausgelesen werden, um einen Satz von Eingabe-/ Ausgabe-Adressen aufzubauen. Mit Hilfe dieser Tabelle wird die Adresse für jede Funktion in dem System bestimmt. Wenn zum Beispiel der CPU-Typ 1 erkannt wird und wenn für eine Schweißeinrichtung ein Satz von Drahtzuführeinrichtungen eingeschaltet werden muß, so erkennt die Tabelle, daß die Drahtzufuhrfunktion in CPU-Typ 2 enthalten ist. Wenn dann der Befehl zum Aktivieren der Drahtzufuhr an den CPU-Typ 1 geleitet wird, so erkennt der CPU-Typ 1, daß er einen Befehl für diese Funktion zum CPU-Typ 2 weiterleiten muß. Dies geschieht durch Verwendung einer geeigneten Adresse für den CPU-Typ 2. Die CPU-Karte erkennt ebenfalls ihre eigenen Funktionen, so daß diese direkt adressiert werden und nicht über die Kommunikationsleitung 100.
  • Im nächsten Funktionsblock 656 wird die CPU-Typ-Nummer dazu verwendet, um für jede der anderen Mikroprozessor-Steuerungseinheiten einen Satz von globalen seriellen Kanaladressen (GSC) zu erzeugen. Dadurch wird es dem jeweils arbeitenden CPU-Karten-Mikroprozessor ermöglicht, seine eigene GSC-Adresse bestimmen, so daß er weiß, welche Befehle und Daten er empfangen soll. Andere Adressen werden ignoriert.
  • Nach dem Funktionsblock 656 geht das Programm zur Funktion 658 weiter, um den Zeitgeber zu starten. Dies ist der Zeitgeber 406 auf der CPU-Karte 202. Der Zeitgeber 406 unterbricht den Mikroprozessor 380 jede viertel Millisekunde. Die Software kann eingestellt werden, um bei jeder Anzahl n von Unterbrechungen eine Funktion durchzuführen. In einem Abfrageblock 660 wird eine Abfrage getätigt, um zu bestimmen, ob die Zeit für eine digitale Schnellerfassung (HSDAQ) erreicht ist. Dies passiert einmal bei jeder periodischen Unterbrechung, wie beispielsweise bei der achten Unterbrechung. Dies entspricht einem Intervall von zwei Millisekunden. Wenn diese Zeit verstrichen ist, geht es über den Ja-Ausgang weiter zu einem Abfrageblock 662, wo eine Abfrage erfolgt, um zu bestimmen, ob der gerade arbeitende Prozessor ein CPU-Typ 2 ist. Wenn dies der Fall ist, geht es über den Ja-Ausgang weiter zum Funktionsblock 664, der einen Befehl erzeugt, um die Analog/Digital-Wandler in der Analog-Eingabekarte 210 auszulesen, die mit der arbeitenden Mikroprozessor-Steuerungseinheit in Beziehung stehen.
  • Wenn die digitalen Abtastwerte erzeugt sind, werden diese Werte über die GSC-Leitung 100 von Einheit 94 zu Einheit 98 und über den Bus 400 vom Mikroprozessor 380 in Einheit 98 zur Analog- Ausgabekarte 212 übertragen. Dies geschieht, indem für diese Karte eine geeignete Adresse zur Verfügung gestellt wird.
  • Die Nein-Ausgänge der Abfrageblöcke 660 und 662 sowie der Ausgang des Funktionsblocks 666 fuuhren zu einem Abfrageblock 668. In diesem Abfrageblock wird eine Abfrage durchgeführt, um zu bestimmen, ob eine Zeitgeber-Sequenz erreicht ist, bei der die Eingänge zur gerade arbeitenden Mikroprozessor-Steuerungseinheit abgetastet werden müssen, um zu bestimmen, ob Eingänge vorliegen, bei denen Funktionen erforderlich sind. Dies erfolgt auch bei einem periodisch auftretenden Zeitpunkt. Es geschieht mit einem 100 Millisekunden-Intervall, d.h., alle 400 Zeitgeber- Unterbrechungen. Das wird durch den zweiten Zähler in dem Dreifachzähler 406 durchgeführt. Wenn die Antwort in dem Abfrageblock 668 ja ist, geht weiter zum Funktionsblock 670, um einen geeigneten Anwendung-Code auszuführen, der in FIGUR 19 gezeigt ist. Wenn die Antwort auf die Abfrage im Abfrageblock 668 Null ist, wird der Nein-Ausgang genommen, der zurück zum Eingang des Abfrageblocks 660 führt, um wieder die Zeitgeber zu prüfen, um zu bestimmen, welche Funktion ausgeführt werden soll.
  • Es muß angemerkt werden, daß immer wenn ein Befehl oder Daten über die Kommunikationsleitung 100 von einer der Mikroprozessor- Steuerungseinheiten empfangen werden, durch den Kommunikationsempfang eine Unterbrechung bewirkt wird, die wiederum bewirkt, daß der Mikroprozessor die Funktion durchführt, die von dem empfangenen Befehl oder den Daten gefordert wird.
  • Der Code für die in FIGUR 18 gezeigten Funktionen ist nachfolgend aufgelistet. Der Code für jedes der anderen Flußdiagramme ist nach der Beschreibung aufgeführt. Sie sind in der Sprache C geschrieben, einer in der Industrie weit verbreiteten Programmiersprache. Die speziellen Anwendungsfunktionen, wie beispielsweise "AUSLESEN A/D-WANDLER", ist vorzugsweise in der Maschinensprache für den bestimmten Mikroprozessor geschrieben. Die speziellen Maschinensprache-Routinen können einfach von einem Fachmann erstellt werden.
  • /*
  • DANAL.C
  • /*
  • /* Common DANAL data */
  • extern int CPUTYPE;
  • extern char RESTARTIP;
  • void danal ()
  • {
  • /* The function of the data analysis task in this location */
  • /* ist to call on assembly language programs to configure */
  • /* the stack of cards as a Back Ende, Front End, Reach Rod */
  • /* Control Box, or Power Supply Junction box, to set up the */
  • /* global serial cornmuncations channel addrcssing, to */
  • /* initialize all system variables, and to start the system */
  • /* interrupt timer. */
  • if (RESTARTIP) /* If this is a power on restart */
  • {
  • config (CPUTYPE); /* Make sure the correct types of input and output cards are attached for this type of CPU. (Back End, Front End, etc.) */
  • gscinit (CPUTYPR); /* Set up the global serial adresses that this CPU will respond to. */
  • sysinit (CPUTYPE); /* Perform all other system initialization */
  • timerinit (); /* Start the system interupt timer */
  • }
  • if (RESTARTIP) /* If this is a power on restart */
  • RESTARTIP = O; /* dear RESTARTIP flag */
  • } /* end of danal */
  • void systeminterrupt ()
  • {
  • /* When the timer causes an interrupt, this routine checks to see if it ist time to transmit a digitized sample of the arc voltages and checks to see if it is time to scan the system inputs. */
  • BASE_HS_DAQ + = 1
  • if (BASE_HS_DAQ > 4)
  • {
  • -BASE_HS_DAQ = 0;
  • if (CPUTYPE = 2)
  • {
  • readanalogs ();
  • xmitanalogs ();
  • }
  • }
  • BASE_SCAN_INP + 1;
  • if (BASE_SCAN_INP > 400)
  • {
  • BASE_SCAN_INP = 0;
  • danal0 (CPUTYPE);
  • }
  • } /* end of systeminterrupt */
  • Der Anwendungscode, der durch Funktionsblock 670 in FIGUR 18 dargestellt ist, ist in FIGUR 19 gezeigt. Dieser Anwendungscode beginnt bei einem Start 680. In einem ersten Funktionsblock 682 erfaßt das System den Status und die Konsoleneingänge. Die beiden Karten, die die Eingaben erzeugen, sind die Konsolen-Interface-Karte 206, die acht analoge Eingänge und acht Schaltereingänge hat, und die Gleichspannungs-Eingabekarte, die insgesamt 16 mögliche Gleichspannungs-Eingänge hat. Diese Gleichspannungssignale stammen von Quellen, wie zum Beispiel von Begrenzungsschaltern, Druckschaltern und von fünf Schaltern auf der Hand- Trainingseinheit 126. Die Gleichspannung-Eingabekarte 218 liegt lediglich als CPU-Typ 2 vor. Die Konsolen-Interface-Karte 206 empfängt Eingänge von der Bedienungskonsole 118 für das vordere Ende in Einheit 94 und von der Bedienungskonsole 120 für die Zuführstange in Einheit 96. Immer wenn für eines dieser Signale eine Eingabe vorliegt, wird eine zugehörige Ausgabe erzeugt. Wenn beispielsweise der in FIGUR 5 gezeigte Kipphebelschalter 230 in die Rauf-Stellung geschaltet wird, werden die Ausrichtungseinrichtungen 58 (in FIGUR 3 gezeigt) angehoben.
  • In der nächsten Reihe von Abfragen, die in FIGUR 19 gezeigt sind, bestimmt die arbeitende Software ihren CPU-Typ und führt den entsprechenden Anwendungscode aus.
  • In einem Abfrageblock 684 wird eine Abfrage getätigt, um zu bestimmen, ob die CPU vorn Typ 1 ist. Wenn die Antwort ja ist, geht es weiter zum Funktionsblock 686, um den in FIGUR 20 gezeigten Code für den CPU-Typ 1 auszuführen.
  • Wenn die Antwort im Abfrageblock 684 nein ist, geht das System zu einem Abfrageblock 688, um zu bestimmen, ob die CPU vom Typ 2 ist. Wenn die Antwort im Abfrageblock 688 "Ja" ist, geht es bei einem Funktionsblock 690 weiter, um den in FIGUR 21 gezeigten Code für den CPU-Typ 2 auszuführen.
  • Wenn die Antwort im Abfrageblock 688 "nein" ist, geht es bei einem Abfrageblock 692 weiter, um zu bestimmen, ob die CPU vom Typ 3 ist. Wenn dies der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 694 genommen, um den in FIGUR 22 gezeigten Code für den CPU-Typ 3 auszuführen.
  • Wenn die Antwort im Abfrageblock 692 negativ ist, geht es weiter zu einem Abfrageblock 696, um zu bestimmen, ob die CPU vom Typ 4 ist. Wenn ja, geht das System zu einem Funktionsblock 698, um den in FIGUR 23 gezeigten Code für den CPU-Typ 4 auszuführen.
  • Wenn die Antwort im Abfrageblock 696 nein ist, geht es weiter bei einem Abfrageblock 700. Die Ausgaben der Funktionsblöcke 686, 690, 694 und 698 führen zum Abfrageblock 700. Im Abfrageblock 700 erfolgt eine Abfrage, um zu bestimmen, ob mit der CPU ein Terminal in Verbindung steht. Eine solche Verbindung wird durch den RS232-Schaltkreis 384 erreicht. Wenn ein solches Terminal angeschlossen ist, wird von dem Block 700 der Ja-Ausgang genommen, der zu einem Funktionsblock 702 führt. An diesem Punkt führt das System den Terminal-Code aus. Nach Block 702 geht das System zu einem Return 704. Dieser Return führt zurück zum Eingang des Abfrageblocks 660, der in FIGUR 18 gezeigt ist.
  • Wie in FIGUR 19 gezeigt, können alle Ausführungscodes, die für jeden der vier Typen von Prozessoren erforderlich sind, von jedem Mikroprozessor verwendet werden. Durch diese Technik wird es ermöglicht, daß die gleiche Software in jedem der Mikroprozessoren verwendet werden kann, ohne daß zwischen den einzelnen Mikroprozessoren unterschieden werden muß. Die Unterscheidung wird von der Software durchgeführt, die die Einstellung der Dip-Schalter auf der CPU-Karte 202 ausliest.
  • Der Code für FIGUR 19 ist nachfolgend aufgelistet.
  • /*
  • DANALO.C
  • /*
  • /* Common DANAL data */
  • extern char Q_TERM_ATTACHED;
  • void danal0 ()
  • {
  • /* The function of die data analysis task in this location */
  • /* is to scan the input cards and then run the appropriate */
  • /* routine based on die CPUTYPE. Before exiting, this code */
  • /* checks to see if die Q-Term 15 attached and, if it is, */
  • /* calls on the Q-Term code. */
  • scan_panels ();
  • scan_dc_inputs ();
  • switch (CPUTYPE)
  • {
  • case 1: /* Ifthe CPUTYPE == 1 */
  • danal1 (); /* Execute the code for the Back End Controller */ break;
  • case 2: /* If the CPUTYPE = = 2 */
  • danal2 (); /* Execute the code for die Front End Controller */ break;
  • case 3: /* If die CPUTYPE = = 3 */
  • danal3 (); /* Execute the code for the Reach Rod Control Box */ break;
  • case 4: /* If the CPUTYPE = = 4 */
  • danal4 (); /* Execute the code for die Power Supply Junction Box */ break;
  • default:
  • break;
  • }
  • if (Q_TERM_ATTACHED)
  • opter (); /* Execute the operator interface routine */
  • } /* end of danal0 */
  • Der Ausführungscode für eine CPU vom Typ 1 ist in FIGUR 20 dargestellt. Wie oben angemerkt, befindet sich die CPU vom Type 1 in der Mikroprozessor-Steuerungseinheit 92 bei der Steuerungseinheit für das hintere Ende der Innenschweißvorrichtung. Die Steuerungseinheit 92 steuert direkt die Bewegung der Schweißeinrichtungen 336, 338, 340 und 342 und steuert indirekt auch die Funktion der Schweißeinrichtungen und der Stromversorgungsschütze. Diese Mikroprozessor-Steuerungseinheit bewirkt die Funktionen für die Drahtzuführgeschwindigkeit, die Lichtbogenspannung und die Bewegungsgeschwindigkeit, wie in FIGUR 17 gezeigt ist.
  • Der CPU-Typ 1 Code beginnt mit einem Start 714. Dann folgt ein Funktionsblock 716, um den Encoder 112 auszulesen. Dies wird durch die Motor-Encoderkarte 214 bewirkt, die das Encoder-Signal über die Leitungen 524 und 526 empfängt. Vor diesem Punkt in der Funktion wurde das System "trainiert", und verschiedene Positionen, die in FIGUR 7 gezeigt sind, wurden in dem Programm gespeichert. Diese sind die Ausgangsposition 354, die Uhrzeigerrichtung-Anfangsposition 346, die Uhrzeigerrichtung-Endposition 352, die Gegenuhrzeigerrichtung-Anfangsposition 346, und die Gegenuhrzeigerrichtung-Endposition 350.
  • Vom Funktionsblock 716 geht das Programm zu einem Abfrageblock 718, um zu bestimmen, ob sich die Schweißeinrichtungen in Uhrzeigerrichtung (CW) drehen. Wenn dies der Fall ist, wird der Ja-Ausgang zu einem Abfrageblock 720 genommen. In dem Block 720 erfolgt eine Überprüfung des Encoder-Wertes, um zu bestimmen, ob er kleiner ist als die Uhrzeigerrichtung-Anfangsposition. Wenn dies der Fall ist, befindet sich die Schweißeinrichtung nicht in der geeigneten Position, um einen Schweißvorgang zu beginnen, und es wird der Ja-Ausgang zu einem Return 722 genommen. Dieser Return führt das System zurück zum Eingang des Abfrageblocks 700 in FIGUR 19.
  • Wenn die Antwort im Abfrageblock 720 nein ist, geht es weiter zu einem Abfrageblock 724, um zu bestimmen, ob der Encoder-Wert größer ist als die Uhrzeigerrichtung-Endposition. Wenn dies der Fall ist, wird der Ja-Ausgang zu einem Abfrageblock 726 genommen, um zu bestimmen, ob der Schweißvorgang gerade durchgeführt wird. Wird der Schweißvorgang gerade durchgeführt, ist die End- Position erreicht, und der Vorgang muß abgebrochen werden. Von dem Block 726 wird der Ja-Ausgang zu einem Funktionsblock 728 genommen, der bewirkt, daß der Lichtbogen und die Bewegung der Schweißeinrichtung abgebrochen wird. Nach Block 728 geht das System zu dem Return 722 weiter.
  • Wenn der Schweißvorgang noch nicht angefangen hat, was in dem Abfrageblock 726 bestimmt wird, wird der Nein-Ausgang zu dem Return 722 genommen.
  • Wenn der Encoder-Wert im Abfrageblock 724 kleiner ist als die Uhrzeigerrichtung-Endposition, wird der Nein-Ausgang zu einem Abfrageblock 730 genommen. In dem Block 730 wird eine Abfrage gemacht, um zu bestimmen, ob der Schweißvorgang bereits begonnen hat. Wenn dies der Fall ist, wird der Ja-Ausgang zum Abfrageblock 732 genommen. Dieser Block bestimmt, ob die Geschwindigkeit des Drahtes und die Bewegung der Schweißeinrichtung den maximalen Wert hat und ob die Lichtbogenspannung den maximalen Wert hat. Wenn dies der Fall ist, wird der Ja-Ausgang zu dem Return 722 genommen. Falls nicht, geht das System zum Funktionsblock 734 weiter, um die Drahtzuführgeschwindigkeit, die Bewegungsgeschwindigkeit und Lichtbogenspannung zu erhöhen. Dieser Schritt der Geschwindigkeitserhöhung entspricht der Steigung der Drahtzuführgeschwindigkeit und der Bewegungsgeschwindigkeit, wie in FIGUR 17 gezeigt ist. Nach dem Funktionsblock 734 geht das System weiter zum Return 722.
  • Wenn die Antwort in dem Abfrageblock 730 nein ist, d.h., daß der Schweißvorgang noch nicht begonnen hat, wird der Nein-Ausgang zu einem Abfrageblock 736 genommen, um zu festzustellen, ob ein Schweißvorgang angefordert wurde. Eine solche Abfrage erfolgt durch Überwachung des in FIGUR 6 gezeigten Schweißstartknopfes 306. Dieses Signal wird, wie oben beschrieben, durch eine der Konsolen-Interface-Karten 206 zu dem arbeitenden Mikroprozessor übertragen. Wenn ein Schweißvorgang angefordert wurde, wird von dem Abfrageblock 736 der Ja-Ausgang zu einem Funktionsblock 738 genommen, der die Drahtzufuhr für beide Innenschweißeinrichtungen 340 und 342 und die Schweißstromversorgungsschütze einschaltet. Nach Block 738 geht das System zum Return 722. Wenn kein Schweißvorgang angefordert wurde, wird vom Abfrageblock 736 der Nein-Ausgang zum Return 722 genommen.
  • Wie in der oberen Hälfte von FIGUR 20 gezeigt, bewirken diese Schritte bei der Drehung der Schweißeinrichtungen in Uhrzeigerrichtung den Rampenanstieg der Parameter und die Bewegung zum Ende der Schweißnaht, wo die Schweißparameter auf Null gesetzt werden.
  • Die untere Hälfte von FIGUR 20 zeigt eine identische Folge von Funktionen für eine Drehung in Gegenuhrzeigerrichtung. Durch den Abfrageblock 718 wird bestimmt, ob sich die Schweißeinrichtungen in Gegenuhrzeigerrichtung drehen. Wenn nicht, wird der Nein-Ausgang zu dem Abfrageblock 744 genommen, um zu bestimmen, ob eine Drehung in Gegenuhrzeigerrichtung angefordert wurde. Wenn die Antwort nein ist, geht das System zu dem Return 722. Wenn die Antwort ja ist, geht das System zu einem Abfrageblock 746. In dem Block 748 wird bestimmt, ob der Encoder-Wert größer ist als der Gegenuhrzeigerrichtung-Anf angswert. Wenn ja, geht das System zu dem Return 722. Wenn nein, geht das System zu einem Abfrageblock 748. Vom Abfrageblock 748 gehen ein Abfrageblock 750, ein Funktionsblock 752, ein Abfrageblock 754, ein Abfrageblock 756, ein Funktionsblock 758, ein Abfrageblock 760 und ein Funktionsblock 762 aus. Die Blöcke 746 - 762 entsprechen jeweils den Blöcken 720 - 738, die vorstehend unter Bezugnahme auf FIGUR 20 beschrieben wurden.
  • Der C-Code für FIGUR 20 ist nachfolgend aufgelistet.
  • /*
  • DANAL1.C
  • /*
  • /* Assembly routine - Located in ENCODER1 */
  • extern int rdencoder();
  • #include < danal.def>
  • #include < inputl.def>
  • void danal1 ()
  • /* On every pass, 10 times 1 second, update enccount by invoking */
  • /* rdencoder (). This routine returns a new value of enccount. */
  • rdencoder (enccount);
  • /* Check to see if the cw_rotate or ccw_rotate system status bits */
  • /* are set. If they are, invoke the cw or ccw start/stop tests. */
  • if (systemstatus & cw_rotate)
  • {
  • if !(enccount < cwstart)
  • {
  • if !(enccount ( cwstop)
  • {
  • if (welding)
  • {
  • turnoff (weld_contactor1);
  • turnoff (weld_contactor2);
  • turnoff (CW_wirefeed 1);
  • turnoff (CW_wirefeed 2);
  • turnoff (ring_travel);
  • }
  • }
  • else if (welding)
  • {
  • if !(tvlspeed > maxtvl)
  • {
  • tvlspeed + = 1;
  • CW_wirspeed1 + = 1;
  • CW_wirspeed2 + = 1;
  • }
  • }
  • else if (start_weld)
  • {
  • tnrn on (weld_contactor 1);
  • turn on (weld_contactor 2);
  • turn on (CW_wirefeed1);
  • turn on (CW_wirefeed2);
  • }
  • }
  • }
  • else if (systemstatus & ccw_rotate)
  • {
  • if !(enccount > ccwstart)
  • {
  • if (enccount > ccwstop)
  • {
  • if (welding)
  • {
  • turnoff (weld_contactor1);
  • turnoff (weld_conactor2);
  • turnoff (CCW_wirefeed 1);
  • turnoff (CCW_wirefeed 2);
  • turnoff (ring_travel);
  • }
  • }
  • else if (welding)
  • {
  • if ! (tvlspeed > maxtvl)
  • {
  • tvlspeed + = 1;
  • wirspeed1 + = 1;
  • wirspeed2 + = 1;
  • }
  • }
  • else if (start_weld)
  • {
  • turnon (CCW_wirefeed 1);
  • turnon (CCW_wirefeed 2);
  • turnon (CCW_wirefeed 1);
  • turnon (CCW_wirefeed 2);
  • }
  • }
  • }
  • } /* end of danal1 */
  • Der Funktionscode für die CPU vom Typ 2 wird unter Bezugnahme auf FIGUR 21 beschrieben. Wie vorstehend angemerkt, ist die CPU vom Typ 2 in der Mikroprozessor-Steuerungseinheit 94 enthalten, die am vorderen Ende der Innenschweißervorrichtung 30 angeordnet ist. Diese CPU-Karte in der Steuerungseinheit für das vordere Ende steuert viele der mechanischen Funktionen der Innenschweißvorrichtung 30. Sie tut dies in Reaktion auf Befehle, die von den in FIGUR 5 bzw. 6 gezeigten Konsolen 118 und 120 empfangen werden. Die Befehle von der Konsole 118 werden direkt von der Mikroprozessor-Steuerungseinheit 94 über deren Konsolen-Interface-Karte 206 empfangen. Die Befehle von der Konsole 120 der Zuführstange werden der Mikroprozessor-Steuerungseinheit 96 über deren zugehörige Konsolen-Interface-Karte 206 zugeführt und dann durch die Steuerungseinheit 96 über die Kommunikationsleitung 100 zur CPU-Karte 202 der Mikroprozessor-Steuerungseinheit 94 übertragen.
  • Die Eingaben von den Knöpfen und Schaltern der Konsolen 118 und 120 werden periodisch durch die Konsolen-Interface-Karten 216 überwacht. Diese Eingaben werden zum zugehörigen Mikroprozessor als ein Satz von Status-Bits übertragen. Das System hat drei Sätze von Status-Bits. Diese sind (1) die empfangenen Status- Bits, (2) die bearbeiteten Status-Bits und (3) die veränderten Status-Bits. Die veränderten Status-Bits sind die empfangenen Bits, die sich von den entsprechenden Bits in dem Satz unterscheiden, der bearbeitet wurde. Die veränderten Status-Bits zeigen daher Funktionen an, die einen Vorgang erfordern.
  • Bezogen auf FIGUR 21 erfolgt der Beginn des Codes der CPU-Typ 2 beim Start 770. Die Funktionen, die in der CPU-Typ 2 ausgeführt werden, bestehen darin, Eingaben zu überwachen, um zu bestimmen, ob bei dieser Eingabe eine Veränderung des Status stattgefunden hat. Wenn eine Veränderung des Status stattgefunden hat, werden die entsprechenden Funktionen ausgeführt, um die mechanische Funktion von ihrem aktuellen Zustand in einen anderen Zustand zu überführen. Vom Start 770 geht das System zu einem Abfrageblock 772, in dem abgefragt wird, ob eine Veränderung der Eingabe für die Ausrichtungseinrichtungen 58 stattgefunden hat. Diese wird durch den Kipphebelschalter 230 an der Konsole 118 bewirkt. Wenn der Schalter umgelegt wird, wird der Ja-Ausgang zu einem Funktionsblock 774 genommen, der einen Befehl erzeugt, um die Position der Ausrichtungseinrichtungen 58 zu verändern.
  • Wenn die Eingabe für die Ausrichtungseinrichtungen keine Veränderung erfahren hat, wird von dem Abfrageblock 772 der Nein- Ausgang zu einem Abfrageblock 776 genommen. In diesem Block wird eine Überprüfung der Eingabe für die hinteren Schuhe in der Einrichtung 54 vorgenommen. Diese Eingabe wird vom Kipphebelschalter 232 an der Konsole 118 erzeugt. Wenn eine Veränderung stattgefunden hat, wird vom Abfrageblock 776 der Ja-Ausgang genommen, wodurch die hinteren Schuhe abhängig von der Veränderung, die zu diesem Weg geführt hat, durch den Funktionsblock 778 angehoben oder abgesenkt werden. Die Befehle werden dann ausgegeben, um die Position der hinteren Schuhe in der Einrichtung 54 zu verändern. Wenn die Schuhe vorgeschoben sind, werden sie zurückgezogen. Wenn die Schuhe zurückgezogen sind, werden sie vorgeschoben.
  • Wenn die Antwort auf die Abfrage im Block 776 nein ist, wird der Nein-Ausgang zu einem Abfrageblock 780 genommen. Durch den Block 780 wird bestimmt, ob eine Veränderung der Eingabe für die Räder 36 und 38 stattgefunden hat. Diese Eingaben kommen von den Knöpfen 234 und 236 der Konsole 118. Wenn eine Veränderung stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 782 genommen, der einen Befehl zur Veränderung der Position der Räder 38 erzeugt.
  • Wenn die in Abfrageblock 780 erfolgte Abfrage negativ ist, wird der Nein-Ausgang zu einem Abfrageblock 784 genommen, um dort zu bestimmen, ob eine Veränderung des Status der Bremsen-Eingabe stattgefunden hat, die vom Kipphebelschalter 238 der Konsole 118 erzeugt wird. Wenn eine Veränderung stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 786 genommen, der die Erzeugung von Signalen bewirkt, um eine Veränderung der Position der Bremsenarme 46 durch Aktivierung des Zylinders 48 zu bewirken.
  • Wenn bei der Bremsen-Eingabe in Block 784 keine Veränderung stattgefunden hat, wird der Nein-Ausgang zu einem Abfrageblock 788 genommen. Dieser fragt ab, ob bei der Innenschweißvorrichtung 30 eine Veränderung der Vorwärts-/Rückwärts-Bewegungsrichtung stattgefunden hat. Wenn dies der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 790 genommen, in dem Befehle erzeugt werden, um die Polarität der Verbindung der Batterie 50 zum Motor 35 zu vertauschen.
  • Wenn im Abfrageblock 788 keine Veränderung stattgefunden hat, wird der Nein-Ausgang zu einem Abfrageblock 792 genommen, um zu bestimmen, ob der Knopf 252 zum Anhalten des Drahts sein Status- Bit geändert hat. Wenn das der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 794 genommen, um durch das in FIGUR 2 dargestellte Betätigungsglied 168 die Drahtanhaltefunktion zu aktivieren. Wenn der Knopf 252 gedrückt wird, wird der Draht in den Spalt geführt. Wenn er nicht gedrückt wird, wird die zuführung unterbrochen.
  • Wenn die Antwort im Abfrageblock 792 nein ist, geht das System zu einem Abfrageblock 796, um zu bestimmen, ob eine Veränderung des Status des Knopfes 254 für die Drehung in Uhrzeigerrichtung stattgefunden hat. Wenn das der Fall ist, geht das System zu einem Funktionsblock 798, um den Status der Drehung in Uhrzeigerrichtung zu verändern. Wenn der Knopf gedrückt wird, wird der Ring 344 durch den Motor 110 in Uhrzeigerrichtung angetrieben. Wenn der Knopf nicht gedrückt wird, wird die Drehung in Uhrzeigerrichtung unterbrochen.
  • Wenn die Antwort im Abfrageblock 796 nein ist, geht das System zu einem Abfrageblock 800, um zu bestimmen, ob an der Konsole 118 eine Veränderung des Knopfes 256 für die Drehung in Gegenuhrzeigerrichtung stattgefunden hat. Wenn eine Veränderung stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 802 genommen. Wie vorstehend beschrieben, handelt es sich hier um die Veränderung des Status der Drehung in Gegenuhrzeigerrichtung. Wenn der Motor 110 für eine Drehung in Gegenuhrzeigerrichtung aktiviert ist, so wird er deaktiviert. Wenn er nicht aktiviert ist, dann wird er für eine Drehung in Gegenuhrzeigerrichtung aktiviert.
  • Wenn von dem Abfrageblock 800 der Nein-Ausgang genommen wird, geht das System zum Abfrageblock 804.
  • Im Abfrageblock 804 erfolgt eine Abfrage des Status der Eingabe der vorderen Schuhe, also des in FIGUR 5 gezeigten Kipphebelschalters 258. Wenn eine Veränderung dieses Schalters vorliegt, wird der Ja-Ausgang zu einem Funktionsblock 806 genommen, um die Position der vorderen Schuhe der Einrichtung 52 zu verändern. Die Position der Schuhe wird zwischen der vorgeschobenen und der zurückgezogenen Position verändert, indem pneumatische Betätigungseinrichtungen angesteuert werden.
  • Wenn die Antwort im Abfrageblock 804 nein ist, geht das System zu einem Abfrageblock 808, um zu bestimmen, ob eine Veränderung des in FIGUR 5 gezeigten Kipphebelschalters 260 für die Gaszufuhr in Uhrzeigerrichtung stattgefunden hat. Wenn eine solche Veränderung stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 810 genommen, um die Gaszufuhr zu den Schweißeinrichtungen zu verändern. Die Gaszufuhr wird entweder ein- oder ausgeschaltet.
  • Wenn die Antwort im Abfrageblock 808 nein ist, geht das System zu einem Abfrageblock 812, um eine ähnliche Abfrage des Schalters 262 für die Gaszufuhr in Gegenuhrzeigerrichtung zu bewirken. Wenn eine Veränderung dieses Schalters stattgefunden hat, wird der Ja-Ausgang zu dem Funktionsblock 814 genommen, um den Befehl zu erzeugen, der erforderlich ist, um den Status des Ventils zu verändern, durch welches Gas für den Schweißvorgang in Gegenuhrzeigerrichtung zugeführt wird.
  • Wenn die Antwort auf die Abfrage in Block 812 nein ist, geht das System zu einem Abfrageblock 816, um zu bestimmen, ob eine Veränderung des Drahtzufuhr-Schalters 226 für die sich in Uhrzeigerrichtung bewegende Schweißeinrichtung 1 stattgefunden hat. Wenn eine Veränderung dieses Schalters stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 818 genommen, um den Status der Drahtzufuhr zu der sich in Uhrzeigerrichtung bewegenden Innenschweißeinrichtung 1 zu verändern. Dabei wird entweder die Drahtzufuhr eingeleitet oder unterbrochen.
  • Wenn die Antwort im Abfrageblock 816 nein ist, geht es bei einem Abfrageblock 820 weiter, um zu bestimmen, ob der Schalter 268 an der Konsole 118 gedrückt ist, um die Drahtzufuhr zu der sich in Uhrzeigerrichtung drehenden Innenschweißeinrichtung Nummer 2 zu aktivieren. Wenn die Antwort ja ist, geht es weiter zu einem Funktionsblock 822, um den Status der Drahtzufuhr zu der sich in Uhrzeigerrichtung drehenden Schweißeinrichtung Nummer 2 zu verändern.
  • Wenn die Antwort im Abfrageblock 820 nein ist, geht es weiter zu einem Abfrageblock 824, um zu bestimmen, ob eine Veränderung des Status des Schalters 270 an der Konsole 118 für die Drahtzufuhr zu der sich in Gegenuhrzeigerrichtung drehenden Schweißeinrichtung Nummer 1 stattgefunden hat. Wenn das der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 826 genommen, um dem Status der Drahtzufuhr zu der sich in Gegenuhrzeigerrichtung drehenden Schweißeinrichtung Nummer 1 zu verändern.
  • Wenn im Abfrageblock 824 eine Nein-Antwort erfolgt, geht das System zu einem Abfrageblock 828 weiter, um dem Status des Schalters 272 abzufragen, um zu bestimmen, ob eine Veränderung des Status der Drahtzufuhr für die sich in Gegenuhrzeigerrichtung drehende Schweißeinrichtung Nummer 2 erfolgen soll. Wenn das der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 830 genommen, der die Befehle erzeugt, um die Drahtzufuhr zu der sich in Gegenuhrzeigerrichtung drehenden Schweißeinrichtung Nummer 2 entweder abzubrechen oder zu starten.
  • Wenn die Antwort im Abfrageblock 828 negativ ist, geht es weiter zum Abfrageblock 832, um zu bestimmen, ob eine Veränderung des Schalters 244 für eine schnelle und langsame Bewegung der Innenschweißvorrichtung 30 stattgefunden hat. Wenn eine Veränderung stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 834 genommen, wo die Batterieverbindung zwischen der Batterie 50 und dem Motor 35 verändert wird, um die jeweils andere Spannung anzulegen. Wenn keine Veränderung des Schalters 234 erfolgt ist, wird der Nein-Ausgang zu dem Return 836 genommen.
  • Von jedem der Funktionsblöcke 774, 778, 782, 786, 790, 794, 798, 802, 806, 810, 814, 818, 822, 826, 830 und 834 geht es zu dem Return 836 weiter.
  • Nachfolgend ist das Programm für FIGUR 231 aufgeführt.
  • /*
  • DANAL2.C
  • */
  • extern char *STATUSBUFFER;
  • extern char *PIBBUFFER;
  • /* Common DANAL data - Located in DANAL0 */
  • extern char local status[];
  • extern char processed_staus[];
  • extern char changed_status[];
  • extern char *pointer;
  • extern char RESTARTIP;
  • #include < danal.def>
  • #include < input2.def>
  • void danal2 ()
  • {
  • char status_mask;
  • /* Get the current status reading for the CPU */
  • pointer = STATUSBUFFER; /* address the status buffer */
  • local_status[0] = *pointer; /* get status byte 1 pts 1-7 */
  • pointer + = 1;
  • local_status[1] = *pointer; /* get status byte 2 pts 9-16 */
  • pointer = PIBBUFFER; /* Address PIB buffer */
  • local_status[2] = *pointer /* get status byte 3 */
  • local_status[3] = *pointer /* get status byte 4 */
  • local_status[4] = *pointer /* get status byte 5 */
  • /* Compare the Internal Welder Input2.def local-status [0] byte with */
  • /* the present version of the processed_status [0] byte. If */
  • /* local_status [0] varies from processed_status [0], update */
  • /* processed_status [0] by invoking the appropriate routine(s). */
  • if (processed_status[0] ! = local_status[0] )
  • {
  • /* Isolate those bits where local_status [0] has changed. */
  • changed_status [0] = processed_status [0] ^local_status [0];
  • /* If the controlling status bit has changed, */
  • /* invoke the function for this bit changing. */
  • if (changed_status[0] & TVL_MOTOR_LS) chg_tvl_motor ();
  • if (changed_status[0] & ALIGNERS-UP_LS) chg_aligners_up_ls ();
  • if (changed_status[0] & BRAKE_LS) chg_brake_ls ();
  • if (changed_status[0] & SHOES_PRESSURE_SW) chg_shoes-pressure_sw ();
  • } /* end of digital status[0] change process */
  • /* Update processed_status [1] only if the local_status [1] */
  • /* varies from the old processed_status [1]. */
  • if (processed-status[1] ! = local_status[1] )
  • {
  • /* Isolate those bits where status [1] has changed. */
  • changed_status[1 = processed_status[1] local_statust 11
  • /* if the controlling status bit has changed, */
  • /* invoke the function for this bit changing. */
  • if (changed_status[1] & TEACH_HOME_BUTTON) chg_teach_home_button ();
  • if (changed_status[1] & TEACH_CWSTART_BUTTON) chg_teach_cwstart_button ();
  • if (changed_status[1] & TEACH_CWSTOP_BUTTON) chg_teach_cwstopbutton ();
  • if (changed_status[1] & TEACH_CCWSTART_BUTTON) chg_teach_ccwstart_button ();
  • if (changed_status[1] & TEACH_CCWSTOP_BUTTON) chg_teach_ccwstopbutton ();
  • } /* end of digital status[1J change process */
  • /* Look at the Internal Welder front end control panel. */
  • /* Update processed_status [2] only if the local_status [2] */
  • /* varies from the old processed_status [2]. */
  • if (processed_status[2] ! = local_status[2])
  • /* Isolate those bits where status[2] has changed. */
  • changed_status[2] = processed_status[2] local_status[2];
  • /* If the controlling status bit has changed, */
  • /* involke the function for this bit changing. */
  • if (changed_status[2] & FAST_TRAVEL_REQ) chg_fast_travel_req ();
  • if (changed_status[2] & CCW2_WIRE_PB_REQ) chg_ccw2_wire_pb_req ();
  • if (changed_status[2] & CCW1_WIRE_PB_REQ) chg_ccw1_wire_pb_req ();
  • if (changed_status[2] & CW2_WIRE_PB_REQ) chg_cw2_wire_pb_req ();
  • if (changed_status[2] & CW1_WIRE_PB_REQ) chg_cw1_wire_pb_req ();
  • if (changed-status[2] & CCW_GAS_REQ) chg_ccw_gas_req ();
  • if (changed_status[2] & CW_GAS_REQ) chg_cw_gas_req ();
  • if (changed_status[2] & FRONT_SHOES_EXTEND_REQ) chg_front_shoes_extend-req ();
  • } /* end of digital status [2] change process */
  • /* Look at the Internal Welder front end control panel. */
  • /* Update processed_status [3] only if the local_status [3] */
  • /* varies from the old processed_status [3]. */
  • if (processed_status[3] ! = local_status[3])
  • /* Isolate those bits where status[3] has changed. */
  • changed_status[3] = processed_status[3] ^local_status[3];
  • /* If the controlling status bit has changed. */
  • /* involke the function for this bit changing. */
  • if (changed_status[3] & ALIGNERS_UP_REQ) chg_aligners_up_req ();
  • if (changed_status[3] & REAR_SHOES_UP_REQ) chg_rear_shoes_up_req ();
  • if (changed_status[3] & REAR_SHOES_DOWN_REQ) chg_rear_shoes_down_req ();
  • if (changed_status[3] & DRIVE_WHEEL_DOWN_REQ) chg_drive_wheel_down_req ();
  • if (changed_status[3] & DRIVE_WHEEL_UP_REQ) chg_drive_wheel_up_req ();
  • if (changed_status[3] & BRAKE_OFF_REQ) chg_break_off_req ();
  • if (changed_status[3] & TRAVEL_FWD_REQ) chg_travel_fwd_req ();
  • if (changed_status[3] & TRAVEL_REV_REQ) chg_travel_rev_req ();
  • } /* end of digital status[3] change process */
  • /* Look at the Internal Welder front end control panel. */
  • /* Update processed_status [4] only if the local_status [4] */
  • /* varies from the old processed_status [4]. */
  • if (processed_status[4] ! = local_status[4])
  • {
  • /* Isolate those bits where status[4] has changed. */
  • changed_status[4] = processed_status[4] ^local_status[4];
  • /* If the controlling status bit has changed, */
  • /* involke the function for this bit changing. */
  • if (changed_status[4] & WIRE_CLEAR_REQ) chg_wire_clear_req ();
  • if (changed_status[4] & CW_ROTATE_REQ) chg_cw_rotate_req ();
  • if (changed_status[4] & CCW_ROTATE_REQ) chg_ccw_rotate_req ();
  • } /* end of digital status[4] change process */
  • if (RESTARTIP)
  • {
  • ioerror = turnon (&PILOT_LAMP); RESTARTIP = 0;
  • }
  • } end of danal2 */
  • Die Funktionen der CPU vom Typ 3 werden unter Bezugnahme auf FIGUR 22 beschrieben. Die CPU Nummer 3 befindet sich in der Mikroprozessor-Steuerungseinheit 96 an dem Zuführstangen-Steuerungskasten 84.
  • Die von der CPU-Typ 3 durchgeführten Funktionen bestehen im wesentlichen darin, auf Eingaben zum Zuführstangen-Steuerungskasten zu reagieren, der die Bedienungskonsole 120 enthält. Die Eingaben werden von der Konsolen-Interface-Karte 206 empfangen, die mit der Mikroprozessor-Steuerungseinheit 96 in Verbindung steht. Es sei angemerkt, daß die Einheit 96 nicht direkt angeschlossen ist, um die mechanischen oder elektrischen Funktionen des Schweißvorgangs oder mit diesem in Beziehung stehende Funktionen zu steuern. Daher müssen alle Steuerfunktionen durch die Erzeugung von Befehlen erfolgen, die über die Kommunikationsleitung 100 zu den entsprechenden Mikroprozessor-Steuerungen übertragen werden, und zwar vornehmlich zu den Steuerungseinheiten 92 und 94. Wie oben angemerkt, ist jede spezielle Funktion zuvor in einem programmierbaren ROM-Speicher definiert worden, so daß die Mikroprozessor-Steuerungseinheit eine geeignete GSC-Adresse und den entsprechenden Befehl auswählen kann, um beim Empfang einer Eingabe die erforderlichen Funktionen ausführen zu können.
  • Unter Bezugnahme auf FIGUR 22 beginnt das Programm für die CPU vom Typ 3 mit einem Start 844. Von diesem Start geht das System zu einem Abfrageblock 846, um festzustellen, ob eine Veränderung des Status-Bits des Modus für den vorderen Schuh stattgefunden hat, was an der in FIGUR 6 gezeigten Konsole 120 der Stellung 284 entspricht. Wenn ein Veränderung dieses Status-Bits erfolgt ist, wird der Ja-Ausgang zu einem Funktionsblock 848 genommen, um die für die vorderen Schuhe erforderlichen Funktionen durchzuführen. Diese sind von der Einrichtung 52 umfaßt und werden durch pneumatischen Druck aktiviert, der von einem Elektromagneten erzeugt wird. Wenn der Befehl von der Konsole darin besteht, die Schuhe anzuheben, wird ein Befehlssignal zum Elektromagneten übertragen, um die Schuhe anzuheben, wenn aber das Signal darin besteht, die Schuhe abzusenken, so wird ein geeignetes Befehlssignal zu dem Elektromagneten gesendet, um die vorderen Schuhe abzusenken.
  • Wenn kein Veränderung des Modus der vorderen Schuhe vorliegt, wird von dem Abfrageblock 846 der Nein-Ausgang zu einem Abfrageblock 850 genommen, um zu bestimmen, ob eine Veränderung des Status-Bits des Modus für den Schweißvorgang in Uhrzeigerrichtung (CW-WELD) stattgefunden hat, was an der Konsole 120 der Stellung 286 entspricht. Wenn die Antwort ja ist, geht es zu einem Funktionsblock 852, der bewirkt, daß die Befehle erzeugt werden, um die Gaszufuhr für die Uhrzeigerrichtung einzuschalten und den Schweißvorgang in Uhrzeigerrichtung vorzubereiten. Der eigentliche Schweißvorgang wird nicht eingeleitet, bis nicht der Schweißstartknopf 306 gedrückt ist.
  • Wenn vom Abfrageblock 850 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 854, um zu bestimmen, ob eine Veränderung des Gegenuhrzeigerrichtung-Schweißmodus stattgefunden hat. Das entspricht an der Konsole 120 der Stellung 290 des Schalters 280. Wenn eine Veränderung dieses Modus stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 856 genommen, in dem Befehle erzeugt werden, um die Gaszufuhr für die Gegenuhrzeigerrichtung einzuschalten und den Schweißvorgang in Gegenuhrzeigerrichtung vorzubereiten. Jedoch wird der Schweißvorgang nicht eingeleitet, bis nicht der Schweißstartknopf 306 gedrückt ist.
  • Wenn vom Abfrageblock 854 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 858, um zu bestimmen, ob eine Veränderung des Status-Bits für den Ausgangsmodus stattgefunden hat, was Stellung 293 des Schalters 280 entspricht. Wenn die Antwort ja ist, wird der Ja-Ausgang zu einem Funktionsblock 860 genommen, um den Ring 344 zu drehen, um die Schweißeinrichtung 340 in die Ausgangsposition 354 zu bringen.
  • Wenn die Antwort im Abfrageblock 858 nein ist, wird der Nein- Ausgang zu einem Abfrageblock 862 genommen, der bestimmt, ob eine Veränderung des Schuh-Rückzieh-Modus stattgefunden hat, was Stellung 298 des Schalters 280 entspricht. Wenn die Antwort ja ist, d.h., daß eine Veränderung dieses Status-Bits stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 864 genommen, der die Befehle zum Zurückziehen der vorderen und der hinteren Schuhe erzeugt, was den Einrichtungen 52 und 54 entspricht. Dies erfolgt durch ein elektrisches Signal, das einen Elektromagneten ansteuert, um für diese Einrichtungen pneumatische Ventile zu aktivieren.
  • Wenn vom Abfrageblock 862 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 866, um zu bestimmen, ob eine Veränderung des Status-Bits des Knopfes 310 an der Konsole 120 für die Drehung in Uhrzeigerrichtung stattgefunden hat. Wenn dies der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 868 genommen, um den Zustand des Status-Bits für die Drehung in Uhrzeigerrichtung zu überprüfen. In diesem Block werden Befehle erzeugt, um zu bewirken, daß sich der Ring 344, falls der Befehl so lautet, in Uhrzeigerrichtung dreht.
  • Wenn vom Abfrageblock 866 der Nein-Ausgang genommen wird, geht es bei einem Funktionsblock 870 weiter, in dem bestimmt wird, ob an der Konsole 120 eine Veränderung des Status-Bits des Knopfes 312 für die Drehung in Gegenuhrzeigerrichtung stattgefunden hat. Wenn dies der Fall ist, geht es weiter bei einem Funktionsblock 872, um den Status des Status-Bits für die Drehung in Gegenuhrzeigerrichtung zu überprüfen. Wenn der Knopf gedrückt ist, wird eine Drehung des Ringes 344 in Gegenuhrzeigerrichtung eingeleitet. Wenn der Knopf 312 nicht gedrückt ist, wird die Drehung des Ringes 344 unterbrochen.
  • Wenn vom Abfrageblock 870 der Nein-Ausgang genommen wird, geht es weiter bei einem Abfrageblock 874, um zu bestimmen, ob an der Konsole 120 eine Veränderung des Status-Bits des Unterbrechungsknopfes 308 stattgefunden hat. Wenn eine Veränderung des Status stattgefunden hat, geht es weiter bei einem Funktionsblock 876, um die Unterbrechungs-Funktion zu ändern. Wenn der Knopf 308 gedrückt ist, wie durch das entsprechende Status-Bit angezeigt, wird der gerade stattfindende Schweißvorgang unterbrochen.
  • Wenn von dem Abfrageblock 874 der Nein-Ausgang genommen wird, geht es weiter bei einem Abfrageblock 878, um zu bestimmen, ob eine Veränderung des Draht-Status-Bit stattgefunden hat, was dem an der Konsole 120 dem Kipphebelschalter 316 entspricht. Wenn sich der Schalter 316 in der Aus-Stellung befindet, wird die Drahtzufuhr zu der Schweißeinrichtung Nummer 1 (336 oder 340) unterbrochen, wenn er sich jedoch in der Ein-Position befindet, wird die Drahtzufuhr zu der Schweißeinrichtung Nummer 1 wieder eingeleitet. Wenn vom Abfrageblock 878 der Ja-Ausgang genommen wird, geht es weiter zu einem Funktionsblock 880, wo die Drahtzufuhr Nummer 1 unterbrochen wird, wenn der Schalter 360 in der Aus-Stellung ist. Die Drahtzufuhr wird wieder eingeleitet, wenn der Schalter 316 in der Ein-Stellung ist.
  • Wenn von dem Abfrageblock 878 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 882, um zu bestimmen, ob eine Veränderung des Status-Bit für die Drahtzufuhr zur Schweißeinrichtung Nummer 2 (338 oder 342) stattgefunden hat, was dem Schalter 318 entspricht. Wenn ja, wird der Ja-Ausgang zu einem Funktionsblock genommen, der eine Unterbrechung der Drahtzufuhr zur Schweißeinrichtung Nummer 2 bewirkt, wenn sich der Schalter in der Aus-Stellung befindet. Wenn sich der Schalter in der Ein- Stellung befindet, wird die Drahtzufuhr zur Schweißeinrichtung Nummer 2 wieder eingeleitet.
  • Wenn vom Abfrageblock 882 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 886. In diesem Block erfolgt eine Abfrage, um zu bestimmen, ob sich das Status-Bit für den Vorwärts/Rückwärts-Schalter 324 verändert hat. Durch diesen Schalter wird die Bewegungsrichtung der Vorrichtung 30 in der Pipeline bestimmt. Wenn sich dieses Status-Bit verändert hat, geht es weiter bei einem Funktionsblock 888, um entsprechend der Stellung des Schalters 324 die Befehle zum Andern der Bewegungsrichtung der Vorrichtung 30 zu erzeugen.
  • Wenn von dem Abfrageblock 886 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 890, um zu bestimmen, ob an der Konsole 120 eine Veränderung des Status-Bit für den Lichtbogentestknopf 322 stattgefunden hat. Wenn eine solche Veränderung stattgefunden hat, wird der Ja-Ausgang zu einem Funktionsblock 892 genommen, um den Lichtbogentest einzuleiten, wenn der Knopf 322 gedrückt ist, und um die Lichtbogenspannung zu unterbrechen, wenn der Knopf nicht gedrückt ist. Das Ergebnis des Lichtbogentests wird auf den Anzeigen 326 und 328 der Konsole 120 dargestellt.
  • Es geht weiter zum Abfrageblock 894, wenn vom Abfrageblock 890 der Nein-Ausgang genommen wird. Diese Abfrage bestimmt, ob eine Veränderung des Status-Bit des Schweißstartknopfes 306 stattgefunden hat. Wenn sich der Status verändert hat und der Knopf 306 gedrückt ist, um einen Schweißvorgang einzuleiten, wird der Ja-Ausgang zu einem Abfrageblock 896 genommen. In dem Block 896 wird bestimmt, ob der Schweißmodus in Uhrzeigerrichtung vorbereitet wurde. Dies erfolgt bezüglich der Funktionen, die in dem Funktionsblock 852 durchgeführt wurden. Wenn die Antwort positiv ist, wird der Ja-Ausgang zum Funktionsblock 898 genommen, der die Befehle erzeugt, um den Schweißvorgang in Uhrzeigerrichtung zu starten, wie vorstehend beschrieben wurde.
  • Wenn von dem Abfrageblock 896 der Nein-Ausgang genommen wird, geht es weiter zu einem Abfrageblock 900, um zu bestimmen, ob der Schweißmodus in Gegenuhrzeigerrichtung vorbereitet wurde. Dies wurde durch den Funktionsblock 856 durchgeführt. Wenn dies der Fall ist, wird der Ja-Ausgang zu einem Funktionsblock 902 genommen, der den Schweißvorgang in Gegenuhrzeigerrichtung einleitet. Bei einer Nein-Antwort im Abfrageblock 900 geht das System zu einem Return 910 weiter.
  • Wieder bezugnehmend auf den Abfrageblock 894 geht es bei einer negativen Antwort bei einem Abfrageblock 904 weiter, um dort zu bestimmen, ob eine Veränderung des Status-Bit für den automatischen Vorschub stattgefunden hat, was auf der Konsole 120 der Stellung 300 des Schalters 280 entspricht. Wenn eine Veränderung des Status-Bit stattgefunden hat, wird der Ja-Ausgang zu einem Abfrageblock 906 genommen, um zu bestimmen, ob eine Veränderung des Status-Bit des Schalters 302 der Konsole 120 für den automatischen Vorschub stattgefunden hat. Wenn dies der Fall ist, geht es weiter zu einem Funktionsblock 908, um durch Ansteuerung der Antriebsmotoren den automatischen Vorschub der Vorrichtung einzuleiten.
  • Die Nein-Ausgänge der Abfrageblöcke 904 und 906 führen jeweils zum Return 910.
  • Von jedem der Funktionsblöcke 848, 852, 856, 860, 864, 868, 872, 876, 880, 884, 888, 892, 898, 902 und 908 geht es weiter zu dem Return 910.
  • Die Funktion der CPU vom Typ 3 der Mikroprozessor-Steuerungseinheit wurde unter Bezugnahme auf FIGUR 22 allgemein beschrieben, wobei das System jedes der Status-Bits für die in den Abfrageblöcken genannten Funktionen erfaßt. Wenn keine Veränderung eines Status-Bits vorliegt, geht das System weiter zum Return 910 und startet erneut die Funktion. Wenn jedoch der Schweißvorgang aktiviert wurde, entweder durch die Funktionsblöcke 852 oder 856, und wenn der Schweißstartknopf 806 gedrückt ist, wird der Schweißvorgang in Gegenuhrzeigerrichtung eingeleitet.
  • Nachfolgend ist das Programm für FIGUR 22 aufgelistet.
  • /*
  • DANAL3.C
  • */
  • extern char *PIBBUFFER;
  • extern char turnon ();
  • extern char turnoff ();
  • extern char local_status [];
  • extern char processed_staus [];
  • extern char changed_status [];
  • extern int bg_analogs [];
  • #include < danal.def>
  • #include < input3.def>
  • /* WORK VALUES */
  • extern char *pointer;
  • extern unsigned char mode_reading;
  • extern char mode;
  • extern char current_mode;
  • void danal3 ()
  • {
  • char i;
  • char status_mask;
  • /* Get the current status reading for the CPU */
  • pointer = PIBBUFFER; /* Address PIB buffer */
  • local_status [0] = *pointer; /* get status byte 1 */
  • local_status [1] = *pointer; /* get status byte 2 */
  • {
  • void cpu3_mode ()
  • {
  • switch (mode)
  • {
  • case 1: /* Auto Travel */
  • if (current_mode = = 6)
  • turnoff (&REAR_SHOES_RET);
  • else if (current_mode = = 2) /*if front shoes ext. */
  • turnoff (&FRONT_SHOES);
  • break;
  • case 2: /* Front Shoes */
  • if (current_mode = = 1)
  • {
  • turnoff (&TRAVEL_FWD);
  • turnoff (&FAST_TRAVEL);
  • turnoff (&AUTO_TRAVEL_LAMP);
  • /* Before turning on the front shoes, insure that the aligners up signal ist not on. */
  • if (systemstatus & aligners_up)
  • showerror (operr203);
  • else
  • turnon (&FRONT_SHOES);
  • }
  • else if (current_mode = = 3)
  • turnoff (&CW_GAS);
  • else
  • showerror (operr214);
  • break;
  • case 3: /* CW Weld */
  • if (current_mode = = 2)
  • {
  • turnon (&CW_GAS);
  • }
  • else if (current_mode = = 4)
  • {
  • turnoff (&CCWGAS);
  • turnon (&CWGAS);
  • }
  • else
  • showerror (operr214);
  • break;
  • case 4: /* CCW Weld */
  • if (current_mode = = 3)
  • {
  • if ((systemstatus & cw_welding = = 0)
  • {
  • turnoff (&CW_GAS);
  • turnon (&CCW_GAS);
  • }
  • else
  • showerror (operr220);
  • }
  • else if (current_mode = = 5)
  • {
  • txcmdoff (rotate_to_home); /* Turn off rotate to home command */
  • turnon (&CCW_GAS);
  • else
  • showerror (operr214);
  • break;
  • case 5: /* Causes the ring to rotate to the home position. */
  • if (current_mode = = 4)
  • {
  • turnoff (&CCW_GAS);
  • if ((systemstatus & at_home) = = 0) /* if not at the home position */
  • txcmdon (rotate_to_home): /* Send rotation command */
  • break;
  • }
  • else if (current_mode = = 6)
  • {
  • if ((systemstatus & at_home) = = 0) /* if not at the home position */
  • txcmdon (rotate_to_home); /* Turn on rotate to home command */
  • turnon (&FRONT_SHOES);
  • turnoff (&REAR_SHOES_RET);
  • }
  • else
  • showerror (operr214);
  • break;
  • case 6: /* Front and Rear Shoe Retract */
  • if (current_mode = = 5)
  • {
  • txcmdoff (rotate_to_home); /* Turn off rotate to home command */
  • turnoff (&FRONT_SHOES);
  • turnon (&REAR_SHOES_RET);
  • }
  • else if (current_mode = 1)
  • {
  • turnoff (&TRAVEL_FWD);
  • turnoff (&FAST_TRAVEL);
  • turnoff (&AUTO_TRAVEL_LAMP);
  • }
  • else
  • showerror (operr214);
  • break;
  • default:
  • showerror (operr216);
  • }
  • } /* end ofcpu3_mode */
  • /* Compare the Internal Welder Input3.def local_status (0) byte with */
  • /* the present version of the processed_status [0J byte. If */
  • /* local_status [0] varies from processed_status [0], update */
  • /* processed_status [0] by invoking the appropriate routine(s). */
  • /* Look at the reach rod control panel signals */
  • if (processed_status [0]! = localstatus [0])
  • changed_status [0] = processed_status [0] ^local_status [0];
  • if (changed_status [0] & CW_ROTATE_PB)
  • chg_cw_rotate_pb ();
  • if (changed_status [0] & CCW_ROTATE_PB)
  • chg_ccw_rotate_pb ();
  • if (changed_status [0] & HOLD_OUT_PB)
  • chg_hold_out_pb ();
  • if (changed_status [0] & WIRE_1_ENABLE)
  • chg_wire_1_enable ();
  • if (changed_status [0] & WIRE_2_ENABLE
  • chg_wire_2_enable ();
  • if (changed_status [1] & TRAVEL_FWD_TS)
  • chg_travel_fwd_ts ();
  • if (changed_status [1] & TRAVEL_REV_TS)
  • chg_travel_rev_ts ();
  • if (changed_status [0] & ARC_TEST_PB)
  • chg_arc_test_pb ();
  • } /* end to digital staus [0] change process */
  • /* Look at the remaining reach control panel signals. */
  • if (processed_status [1]! =local_status [1])
  • {
  • /* Isolate those bits where status [1] has changed. */
  • changed_status [1] = processed_status [1] ^local_status [1];
  • {
  • if (changed_status [0] & WELD_START_PB)
  • {
  • if (local_status [0] & WELD_START_PB) /* If the bit is now on, */
  • {
  • if (current_mode = = 3) /* Test to see what mode we are in */
  • txcmdon (cw_weld);
  • else
  • {
  • if (current_mode = = 4)
  • txcmdon (ccw_weld);
  • else
  • show_error (operr217); /* ERROR - Not mode 3 or 4 */
  • }
  • }
  • /* however, if the bit is now off, */
  • else
  • {
  • /* Test to see what mode we are in */
  • if (current_mode = = 3)
  • txcmdoff (cw_weld);
  • else
  • {
  • if (current_mode = = 4)
  • txcmdoff (ccw_weld);
  • else
  • show_error (operr217); /* ERROR - Not mode 3 or 4 */
  • }
  • processed_status [0] = processed_status [0] & andnot (WELD_START_PB);
  • }
  • } /* end of chg_weld_start_pb */
  • {
  • if (changed_status [0] & AUTO_TRAVEL_PB)
  • {
  • /* If the bit is now on, */
  • if (local_status [0] & AUTO_TRAVEL_PB)
  • {
  • if ((system_status & pipe) = = 0)
  • showerror (operr204);
  • else
  • {
  • if (current_mode = = 1)
  • {
  • turnon (&TRAVEL_FWD);
  • turnon (&FAST_TRAVEL);
  • turnon (&AUTO_TRAVEL_LAMP);
  • }
  • else
  • showerror (operr205); /* not in the autotravel position */
  • }
  • processed_status [0] = processed_status [0] AUTO_TRAVEL_PB;
  • }
  • /* however, if the bit is now off, */
  • else
  • proccssed_status [0] = processed_status [0]
  • & andnot (AUTO_TRAVEL_PB);
  • } /* end of chg_auto_travel_pb */
  • } /* end of digital status [1] change process */
  • } /* end of danal3 */
  • Die Funktion einer Mikroprozessor-Steuerungseinheit vom Typ 4 ist in FIGUR 23 gezeigt. In dem bevorzugten Ausführungsbeispiel führt die Steuerungseinheit 98 vom CPU-Typ 4 nur eine Empfangsfunktion durch und erzeugt ein analoges Signal zur Steuerung der Stromversorgung 104. Daher wird diese Funktion nur in Reaktion auf eine Kommunikationsunterbrechung durchgeführt, d.h, wenn die Steuerungseinheit über die Kommunikationsleitung 102 eine Übertragung eines digitalen Lichtbogenspannungssignals empfängt. Ein Start 911 führt zu einem Return 912, der die Funktion zum Block 700 in FIGUR 19 weiterleitet
  • FIGUR 24 zeigt eine Kommunikationsunterbrechungsfunktion, die in vielen der Steuerungseinheiten bei Empfang einer Übertragung an die Steuerungseinheit von der Leitung 100 durchgeführt wird. Bei Empfang einer Kommunikationsunterbrechung 913 wird entsprechend der empfangenen Kommunikationssignale eine Funktion ausgeführt, wie beispielsweise in Funktionsblock 914 gezeigt ist. Diese Beispiele sind das Einschalten des Motors, Aktivierung des Elektromagneten, Lesen eines Status-Bits, etc.
  • Die entsprechende Programmauflistung für FIGUR 24 lautet wie folgt.
  • /*
  • DANAL4.C
  • */
  • void danal4 ()
  • {
  • }
  • Die in FIGUR 24 gezeigte Unterbrechungsroutine ist in Maschinensprache geschrieben.
  • In FIGUR 25 ist eine Erweiterung des in FIGUR 1 dargestellten Schweißsystems gezeigt. Zusätzlich zu der in FIGUR 1 gezeigten Vorrichtung ist eine Außenschweißeinrichtung 916 vorgesehen, wie in den US-Patenten 3,718,798, Randolph et al., veröffentlicht am 27. Februar 1973, und 3,806,694, Nelson et al., veröffentlicht am 23. April 1974, die hier beide als Druckschriften eingeführt werden. Die Schweißeinrichtung 916 ist mit einer Mikroprozessor- Steuerungseinheit 918 versehen, die mit der Kommunikationsleitung 100 verbunden ist. Die Einheit 918 enthält eine CPU-Karte 202, eine Stromversorgungs-Karte 204, eine Analog-Eingabe-Karte 210, eine Motor-Encoderkarte 214 und eine Dual-EMF-Motorkarte 216. Das sind die Karten, die für die automatische Steuerung der Funktion der Außenschweißeinrichtung 916 erforderlich sind. Bei dieser Schweißeinrichtung ist auf ähnliche Weise am Antriebsmotor ein Encoder vorgesehen, um die Position der Schweißeinrichtung zu erfassen.
  • Die Außenschweißeinrichtung 916 hat eine Antriebseinrichtung 919, die an einer Schiene 921 montiert ist, die die Rohrverbindung 33 umgibt und mit dieser verbunden ist. Die Antriebseinrichtung 919 wird durch die Mikroprozessor-Steuerungseinheit 918 gesteuert, um die Schweißeinrichtung 916 an dem Spalt der Verbindungsstelle der Rohrverbindungen 32 und 33 zu positionieren. Schweißeinrichtungen, die diese Funktion ausführen können, sind in den US-Patenten 3,193,656, Bell et al., veröffentlicht am 6. Juli 1965, 3,974,356, Nelson et al., veröffentlicht am 10. August 1976, 4,151,395, Kushner et al., veröffentlicht am 24. April 1979, gezeigt, wobei jedes dieser Patente hier als Druckschrift eingeführt wird.
  • Die Parameter für die automatischen Schweißfunktionen, die vorstehend beschrieben sind, werden in das Steuerungssystem über ein Hand-Terminal 920 eingegeben, das mit dem RS232-Anschluß von jeder Mikroprozessor-Steuerungseinheit verbunden ist. Die Parameter werden über das Terminal 920 eingegeben und in einer Parameter-Datei in dem Speicher für den Mikroprozessor gespeichert. Die gleiche Datei ist in allen Steuerungseinheiten 92, 94, 96, 98 und 918 enthalten. Wenn ein Mikroprozessor aktualisiert oder verändert wird, wird die veränderte Datei über die Leitung 100 allen anderen Steuerungseinheiten zugeführt, so daß alle Parameter-Dateien den gleichen Inhalt haben. Die Parameter, die über das Terminal 920 eingegeben werden, enthalten die gewünschte Anfangs- und Endbewegungsgeschwindigkeiten für die Innen- und Außenschweißeinrichtungen, die Anfangs- und Enddrahtzuführgeschwindigkeiten, die Anfangs- und Endlichtbogenspannungen und die schrittweisen Änderungsgeschwindigkeiten der jeden dieser Parameter.
  • Ein ausgewähltes Ausführungsbeispiel des Terminals 920 ist ein "QTerm"-Terminal, das von der QSI Corporation in Logan, Utah, hergestellt wird.
  • 20 Das in FIGUR 25 gezeigte System enthält ferner einen Computer 922 mit einem Bildschirm 924, einer Tastatur 926 und mit einem Drucker 928. Der Computer 922 ist mit der Kommunikationsleitung 100 verbunden. Mittels dieser Verbindung kann ein Bediener des Computers 922 alle Funktionen überwachen und steuern, die von dem Schweißsteuerungssystem durchgeführt werden. Eine spezielle Anwendung des Computers 922 besteht darin, die Parameter für jede von den Innen- und Außenschweißeinrichtungen erzeugte Schweißnaht zu überwachen und aufzuzeichnen. Diese Parameter können die Zeit des Schweißvorgangs, dessen Dauer, die Lichtbogenspannung, die Verbindungsstellen und weitere Parameter umfassen, die überwacht werden sollen. Ein solcher Datensatz der Schweißvorgänge kann als eine Qualitätsüberwachung und als eine Referenz für weitere Verwendungen dienen, sofern ein Rückblick auf jeden Schweißvorgang erforderlich ist.
  • Die Funktion der Außenschweißeinrichtung 916 kann mit der der Innenschweißeinrichtungen koordiniert werden, um die Qualität und Produktivität zu verbessern. Durch die Kommunikationsleitung 100 kann die Außenschweißeinrichtung der Schweißposition der zugehörigen Innenschweißeinrichtung folgen, so daß die Außenschweißeinrichtung mit der durch die Innenschweißeinrichtung erzeugten Hitze arbeitet. Es können mehrere Außenschweißeinrichtungen 916 verwendet werden, wie zum Beispiel eine Außenschweißeinrichtung für jede Innenschweißeinrichtung. Alle diese Funktionen können durch das beschriebene Schweißsteuerungssystem koordiniert werden.
  • Zusätzliche Mikroprozessor-Steuerungseinheiten können zu dem oben beschriebenen Schweißsteuerungssystem hinzugefügt werden, indem sie mit der Kommunikationsleitung 100 verbunden werden. Durch diese zusätzlichen Einheiten kann Verarbeitungsleistung für Berechnungen, die mechanische Steuerung, Bedienereingaben und Datensammlung geschaffen werden.
  • Bezogen auf FIGUR 26 ist ein Rahmen-Schweißsystem 940 gezeigt, das unter Verwendung der vorliegenden Erfindung arbeitet. Dieses System enthält eine Innenschweißvorrichtung 942, wie in FIGUR 1 gezeigt, und eine Anzahl von Außenschweißeinrichtungen 944, 946, 948 und 950, die jeweils der in FIGUR 25 gezeigten Außenschweißeinrichtung 916 entsprechen. Die Außenschweißeinrichtungen 944, 946, 948 und 950 haben zugehrige Mikroprozessor-Steuerungseinheiten 945, 947, 949 und 951. Jede dieser Mikroprozessor-Steuerungseinheiten ist angeschlossen, um die Funktionen der zugehörigen Außenschweißeinrichtungen zu steuern.
  • Das gezeigte System 940 bearbeitet drei Rohrverbindungen 952, 954 und 956. Diese Rohrverbindungen werden durch eine Anzahl von Rollenhalterungen gehalten, wie zum Beispiel der Halterung 958.
  • Das System 940 umfaßt Schweißstationen 960 und 962. Die Station 960 hat eine Halterahmeneinrichtung 964, die eine Schiene 966 enthält. Eine Antriebseinrichtung 968 ist montiert, um entlang der Schiene 966 bewegt zu werden, und enthält einen Motor, um einen Ring 970 zu drehen, an dem die Außenschweißeinrichtungen 944 und 946 gehalten sind. Eine Mikroprozessor-Steuerungseinheit 972 ist an der Antriebseinrichtung 968 angebracht, um die darin enthaltenen Motoren zu steuern. Die Kommunikationsleitung 100 und die Stromleitungen 102 sind auf ähnliche Art mit der Mikroprozessor-Steuerungseinheit 972 verbunden. Diese Steuerungseinheit ist den zuvor beschriebenen Mikroprozessor-Steuerungseinheiten 92, 94, 96 und 98 ähnlich. In Reaktion auf Befehle, die über die Kommunikationsleitung 100 empfangen werden, wird die Antriebseinrichtung 968 aktiviert, um die Außenschweißeinrichtungen 944 in Längsrichtung entlang der Rohrverbindung 956 zu positionieren und sie an der Rohrverbindung 956 in die richtige Position zu drehen. Die Einrichtung dient ebenfalls dazu, die Außenschweißeinrichtungen 944 und 946 um die Rohrverbindung 956 zu drehen.
  • Die Schweißstation 962 hat eine ähnliche Rahmeneinrichtung 982, die eine Schiene 982 aufweist. Eine Antriebseinrichtung 984 ist an der Schiene 982 montiert und hat einen Motor, um die Einrichtung 984 entlang der Schiene 982 zu positionieren. Die Antriebseinrichtung 984 hat außerdem einen Antriebsmotor, um einen Ring 986 zu drehen, an dem die Außenschweißeinrichtungen 948 und 950 gehalten sind. Eine Mikroprozessor-Steuerungseinheit 988 ist an der Antriebseinrichtung 984 montiert, um die darin enthaltenen Motoren zu steuern. Die Steuerungseinheit 988 ist auf ähnliche Weise mit der Kommunikationsleitung 100 und den Stromleitungen 102 verbunden. Die Mikroprozessor-Steuerungseinheit 988 ist den oben beschriebenen Mikroprozessor-Steuerungseinheiten 92, 94, 96 und 98 ähnlich.
  • Das Steuerungssystem für das Rahmenschweißsystem 940 enthält die gleichen Merkmale, die vorstehend unter Bezugnahme auf FIGUR 17 beschrieben sind. Die Bewegungsgeschwindigkeit, die Lichtbogenspannung und die Drahtzuführgeschwindigkeit kann für jede der Innen- und Außenschweißeinrichtungen gesteuert werden, um eine Hochgeschwindigkeitsschweißung durchzuführen. Die Schweißfunktionen können durchgeführt werden, indem das oben beschriebene Steuerungssystem so erweitert wird, daß es die Außenschweißeinrichtungen und die Antriebseinrichtungen 968 und 984 umfaßt, durch die die Außenschweißeinrichtungen positioniert werden. In einer typischen Funktion erzeugt die Innenschweißvorrichtung 942 an der Verbindung zwischen den Rhrverbindungen 952 und 954 die erforderlichen Innenschweißnähte, während die Außenschweißeinrichtungen 948 und 950 die erste Außenschweißnaht bzw. Schweißnähte erzeugen. Gleichzeitig erzeugen die Außenschweißeinrichtungen 944 und 946 an der Verbindung zwischen den Rohrverbindungen 954 und 956 die äußeren Abschlußschweißnähte.
  • Wenn diese Funktionen beendet sind, werden die Rohrverbindungen um einen Rohrlängenabschnitt nach links bewegt, so daß die Funktionsabfolge wiederholt werden kann. Bei der zweiten Einstellung erzeugten die Außenschweißeinrichtungen 944 und 946 alle erforderlichen weiteren Außenschweißnähte, um die äußere Schweißnaht an der Verbindung zwischen den Rohrverbindungen 952 und 954 fertigzustellen. Gleichzeitig erzeugen die Außenschweißeinrichtungen 948 und 950 die ersten Außenschweißnähte für die nächste Rohrverbindung, während die Innenschweißeinrichtung 942 die Innenschweißnähte an der neuen Rohrverbindung erzeugt.
  • Die Funktion der Innenschweißeinrichtung 942 kann bezüglich ihrer Position mit der der Außenschweißeinrichtungen 948 und 950 koordiniert werden, damit die Außenschweißeinrichtungen in der durch die Innenschweißeinrichtungen erzeugten Hitze arbeiten können. Durch diese Koordination kann eine bessere Verbindung erzeugt und die Betriebsgeschwindigkeit des gesamten Schweißvorgangs erhöht werden.
  • Zusammenfassend kann festgestellt werden, daß die vorliegende Erfindung ein Schweißverfahren darstellt, durch das ein relativ langsamen aber sehr zuverlässigen Start erzeugt wird, auf den ein Hochgeschwindigkeitsschweißvorgang mit einer erhöhten Bewegungsgeschwindigkeit der Schweißeinrichtungen, einer schnelleren Drahtzuführgeschwindigkeit und einer eventuell höheren Lichtbogenspannung folgt.
  • Das Terminal 920 wird verwendet, um die Anfangsbedingungen für eine große Anzahl von Pipeline-Schweißvorgängen einzugeben, und ist normalerweise beim Routinebetrieb nicht angeschlossen. Der Computer 922 kann verwendet werden, um alle Funktionen in dem System 940 zu überwachen oder zu steuern. Er kann ferner verwendet werden, um für alle Schweißvorgänge einen Datensatz zur Qualitätskontrolle und Datenspeicherung vorzunehmen.

Claims (6)

1. Verfahren zum Zusammenschweißen von zwei Werkstücken (32, 33), die aneinander anliegen und an der Verbindungsstelle der Werkstücke (32, 33) einen Spalt ausbilden, wobei der Schweißvorgang unter Verwendung einer von einem Prozessor (380) gesteuerten Schweißvorrichtung (30) durchgeführt wird, die sich an dem Spalt entlangbewegt und durch einen dem Spalt zugeführten Schweißdraht (144) einen Lichtbogen erzeugt, wobei das Verfahren durch die Schritte gekennzeichnet ist:
Bewegen von zumindest einem Schweißkopf (340) unter Steuerung des Prozessors (380) an dem Spalt entlang von einer Anfangsposition (346) zu einer Endposition (352) ohne zu Schweißen, und Aufzeichnen der Anfangsposition (346) und der Endposition (352) in dem Speicher (402) des Prozessors;
Zurückbewegen des Schweißkopfes (340) zu einer sich vor der Anfangsposition (346) befindlichen Ausgangsposition (354), so daß der Schweißkopf (340) für einen Schweißvorgang mit fliegendem Start vorbereitet ist; und
Bewegen des Schweißkopfes (340) von der Ausgangsposition (354) zur Anfangsposition (346) mit einer ersten Bewegungsgeschwindigkeit ohne zu Schweißen, und Erhöhen der Drahtzuführgeschwindigkeit (644) und Einleiten eines Lichtbogens (646), wenn sich der Schweißkopf (340) an der Anfangsposition vorbeibewegt, und danach Bewegen des Schweißkopfes (340) zur Endposition und Erhöhen der Geschwindigkeit des Schweißkopfes (340) auf eine zweite Bewegungsgeschwindigkeit.
2. Schweißverfahren nach Anspruch 1, mit den weiteren Schritten: Vermindern sowohl der Bewegungsgeschwindigkeit (348) des Schweißkopfes (340) als auch der Drahtzuführgeschwindigkeit, wenn sich der Schweißkopf (340) der Endposition (352) nähert, so daß die Bewegungsgeschwindigkeit (648) und die Drahtzuführgeschwindigkeit (644) Null beträgt, wenn der Schweißkopf (340) die Endposition (352) am Spalt erreicht.
3. Schweißverfahren nach Anspruch 1, mit dem weiteren Schritt: Einleiten des Lichtbogens mit einer ersten Spannung und Erhöhen der Spannung des Lichtbogens von der ersten Spannung auf eine zweite Spannung während einer Zeit, die im wesentlichen der Zeit entspricht, in der die Geschwindigkeit des Schweißkopfes (340) von der ersten Bewegungsgeschwindigkeit auf die zweite Bewegungsgeschwindigkeit erhöht wird.
4. Schweißverfahren nach Anspruch 1, mit dem weiteren Schritt: Erhöhen der Geschwindigkeit des Schweißdrahts (144) von einer ersten Drahtzuführgeschwindigkeit auf eine zweite Drahtgeschwindigkeit in dem gleichen Zeitraum, in dem die Bewegungsgeschwindigkeit des Schweißkopfes (340) von einer ersten Bewegungsgeschwindigkeit an der Anfangsposition (346) auf eine zweite Bewegungsgeschwindigkeit erhöht wird.
5. Schweißverfahren nach Anspruch 4, mit dem weiteren Schritt: Erhöhen der Spannung des Lichtbogens von der ersten Spannung auf eine zweite Spannung in dem gleichen Zeitraum, in dem die Bewegungsgeschwindigkeit des Schweißkopfes (340) erhöht wird.
6. Schweißverfahren nach Anspruch 1, mit den weiteren Schritten: Verwenden von vier Schweißköpfen (340, 342, 336, 338), um jeweils einen Bereich von 90º eines kreisförmigen Spaltes zu verschweißen, und Bewegen von zwei Schweißköpfen (340, 342) in einem ersten Schweißvorgang in Uhrzeigerrichtung, um nach unten gerichtete Schweißungen durchzuführen, und anschließend Bewegen der Schweißköpfe (336, 338) in einem zweiten Schweißvorgang in Gegenuhrzeigerrichtung, um nach unten gerichtete Schweißungen durchzuführen, um eine kreisförmige Schweißnaht um den Spalt herum von 360º fertigzustellen.
DE69028298T 1990-01-04 1990-01-04 Verfahren zum automatischen hochgeschwindigkeitsschweissen Expired - Lifetime DE69028298T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1990/000021 WO1991009700A1 (en) 1990-01-04 1990-01-04 Method of operation for high speed automatic welding

Publications (2)

Publication Number Publication Date
DE69028298D1 DE69028298D1 (de) 1996-10-02
DE69028298T2 true DE69028298T2 (de) 1997-03-13

Family

ID=22220601

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69028298T Expired - Lifetime DE69028298T2 (de) 1990-01-04 1990-01-04 Verfahren zum automatischen hochgeschwindigkeitsschweissen

Country Status (9)

Country Link
US (1) US5059765A (de)
EP (1) EP0461203B1 (de)
JP (1) JP2939658B2 (de)
AU (1) AU635735B2 (de)
CA (1) CA2047704C (de)
DE (1) DE69028298T2 (de)
RU (1) RU2120845C1 (de)
UA (1) UA40566C2 (de)
WO (1) WO1991009700A1 (de)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06179077A (ja) * 1992-12-11 1994-06-28 Fanuc Ltd 溶接ロボットにおけるアーク溶接制御方法
US5528010A (en) * 1994-05-20 1996-06-18 The Miller Group, Ltd. Method and apparatus for initiating electric arc spraying
US5593605A (en) * 1994-10-11 1997-01-14 Crc-Evans Pipeline International, Inc. Internal laser welder for pipeline
JP3959552B2 (ja) * 1996-06-03 2007-08-15 忠弘 大見 配管施工の締付の管理方法
US5796069A (en) * 1997-01-10 1998-08-18 Crc-Evans Pipeline International, Inc. Arc and laser welding process for pipeline
US6051810A (en) 1998-01-09 2000-04-18 Lincoln Global, Inc. Short circuit welder
US5961863A (en) * 1998-01-09 1999-10-05 Lincoln Global, Inc. Short circuit pipe welding
US6002104A (en) * 1998-04-17 1999-12-14 Lincoln Global, Inc. Electric arc welder and controller therefor
AT409731B (de) * 1998-10-16 2002-10-25 Fronius Schweissmasch Prod Regelvorrichtung für ein schweissgerät
GB9828727D0 (en) 1998-12-24 1999-02-17 Saipem Spa Apparatus and method for welding pipes together
GB2345016B (en) 1998-12-24 2003-04-02 Saipem Spa Method and apparatus for welding pipes together
CA2379124A1 (en) 1999-07-21 2001-02-01 Teresio Signaroldi Improvements in and relating to underwater pipe-laying
CA2322736A1 (en) 2000-10-10 2002-04-10 O. J. Pipelines Canada External pipe welding apparatus
EP1328374B1 (de) 2000-10-24 2006-12-27 Saipem S.p.A. Verfahren und vorrichtung zum verschweissen von rohren
US7160061B2 (en) * 2000-12-04 2007-01-09 Battelle Energy Alliance, Llc Subterranean barriers including at least one weld
GB2373750A (en) 2001-03-27 2002-10-02 Saipem Spa Welding pipe-in-pipe pipelines
FR2837612B1 (fr) * 2002-03-22 2004-07-16 Framatome Anp Procede et dispositif de remplacement et procede de reparation d'un troncon d'une canalisation du circuit primaire d'un reacteur nucleaire
US6915943B2 (en) * 2002-11-27 2005-07-12 Crc-Evans Pipeline International, Inc. Tetherless internal line-up unit for pipeline welding
US7138601B2 (en) * 2004-01-22 2006-11-21 Illinois Tool Works Inc. Method and apparatus for arc welding with arc control
US8658942B2 (en) * 2004-12-16 2014-02-25 Illinois Tool Works Inc. Method and system of welding with auto-determined startup parameters
US7772524B2 (en) * 2005-01-21 2010-08-10 Lincoln Global, Inc. Integrating sensors over a digital link
US8525077B2 (en) * 2006-05-09 2013-09-03 Lincoln Global, Inc. Touch screen waveform design apparatus for welders
DE102009020146B3 (de) * 2009-04-08 2010-06-10 V & M Deutschland Gmbh Verfahren und Vorrichtung zum Verbinden der Enden von Rohren aus Stahl mittels Orbitalschweißen in Hybridtechnik
US8969764B2 (en) 2011-11-09 2015-03-03 Lincoln Global, Inc. Apparatus and method for short circuit welding with AC waveform
US11767934B2 (en) 2013-05-23 2023-09-26 Crc-Evans Pipeline International, Inc. Internally welded pipes
US11458571B2 (en) 2016-07-01 2022-10-04 Crc-Evans Pipeline International, Inc. Systems and methods for use in welding pipe segments of a pipeline
CN109848595A (zh) * 2017-11-03 2019-06-07 金门建筑有限公司 焊接系统及方法
JP7530892B2 (ja) * 2018-11-02 2024-08-08 エサブ・アーベー ワイヤフィーダ
CN111843370B (zh) * 2020-07-30 2021-11-12 浙江双森金属科技股份有限公司 一种不锈钢管批量化智能焊接机及焊接工艺
CN112139694A (zh) * 2020-09-17 2020-12-29 潘治霖 一种高空作业平台底板生产用的焊接工具及其使用方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3555239A (en) * 1966-11-16 1971-01-12 William J Kerth Welding machine with digital pulse control
US3838244A (en) * 1968-10-29 1974-09-24 Gen Dynamics Corp Electrical system for automatic arc welding
US4194106A (en) * 1975-01-27 1980-03-18 Secheron Soudure S.A. Methods and devices for cutting, eroding, welding and depositing metallic and non-metallic materials by means of an electric arc
US4283617A (en) * 1976-02-03 1981-08-11 Merrick Welding International, Inc. Automatic pipe welding system
US4368375A (en) * 1976-02-03 1983-01-11 The Merrick Corporation Welding torch oscillating mechanical apparatus
US4188525A (en) * 1976-02-03 1980-02-12 Merrick Welding International Welding torch oscillation apparatus
US4145593A (en) * 1976-02-03 1979-03-20 Merrick Welding International, Inc. Automatic pipe welding system
JPS5330947A (en) * 1976-09-03 1978-03-23 Hitachi Ltd Method of controlling remoteecontrolled automatic welder
US4163886A (en) * 1976-09-16 1979-08-07 Hitachi, Ltd. Control apparatus for an automatic pipe welder
JPS5577974A (en) * 1978-12-11 1980-06-12 Tanaka Seisakusho:Kk Operation control system of tracing device
US4288681A (en) * 1979-01-30 1981-09-08 General Electric Company Apparatus for fabricating isolated phase bus
DE2951073C2 (de) * 1979-12-19 1982-06-03 Messer Griesheim Gmbh, 6000 Frankfurt Antriebseinrichtung für einen Schweißbrenner, insbesondere zum Schweißen von Rundnähten
IN155236B (de) * 1981-03-20 1985-01-12 Gould Inc
US4390954A (en) * 1981-04-13 1983-06-28 Merrick Engineering, Inc. Override control apparatus and method for parameter adjustment of digitally based welding process programmers
JPS5870971A (ja) * 1981-10-22 1983-04-27 Ishikawajima Harima Heavy Ind Co Ltd Tig溶接始動方法
JPS60121077A (ja) * 1983-10-07 1985-06-28 Mitsubishi Electric Corp 円周自動熔接装置
JPS60227973A (ja) * 1984-04-27 1985-11-13 Mitsubishi Electric Corp 円周自動溶接装置

Also Published As

Publication number Publication date
CA2047704A1 (en) 1991-07-05
WO1991009700A1 (en) 1991-07-11
AU5424690A (en) 1991-07-24
US5059765A (en) 1991-10-22
AU635735B2 (en) 1993-04-01
EP0461203A1 (de) 1991-12-18
JPH04505286A (ja) 1992-09-17
UA40566C2 (uk) 2001-08-15
JP2939658B2 (ja) 1999-08-25
CA2047704C (en) 1999-06-01
DE69028298D1 (de) 1996-10-02
EP0461203B1 (de) 1996-08-28
EP0461203A4 (en) 1992-09-02
RU2120845C1 (ru) 1998-10-27

Similar Documents

Publication Publication Date Title
DE69028298T2 (de) Verfahren zum automatischen hochgeschwindigkeitsschweissen
DE69030253T2 (de) Verteiltes steuerungssystem für automatische schweissarbeiten
DE69220409T2 (de) Werkzeugsteueranlage bestehend aus einer Schweisszange zur Durchführung von bestimmten Arbeiten an Werkstücken und aus einem automatischen Positionierungsystem zur Steuerung der relativen Bewegung der Schweisszange in Beziehung zu diesem Werkstück
DE3806966C2 (de)
EP1119434B1 (de) Regelvorrichtung für ein schweissgerät
DE2640257A1 (de) Selbstanpassendes bearbeitungszentrum fuer programmierbare automation
AT411880B (de) Steuervorrichtung für ein schweissgerät
DE69601567T2 (de) Vorrichtung und verfahren zum steuern der bewegung eines roboters
DE3208435C2 (de) Steuerungsvorrichtung zum Führen eines Lichtbogenschweißautomaten
DE69322724T2 (de) Vorrichtung zum Abheben eines Zylinders
CH668036A5 (de) Verfahren zur steuerung einer presse und vorrichtung zur durchfuehrung des verfahrens.
WO1999012696A1 (de) Schweissautomat
DE3144843A1 (de) Verfahren zum betreiben eines als schweissroboter arbeitenden manipulators und dementsprechende steuerung
DE68924999T2 (de) Verfahren zum Zusammenbau eines Fahrzeugaufbaus.
DE69023836T2 (de) Folgensteuerungsgerät mit separatem Folgespeicher und Blockierungs-Bedingungsspeicher.
DE3800752A1 (de) Verfahren zur steuerung der werkstuecksguete
DE68926292T2 (de) Roboterbetriebsverfahren, das manuell korrigiert werden kann
DE69927226T2 (de) Schweissgerät
DE60000619T2 (de) Elektronische bauteile-bestückungsvorrichtung, und energieversorgungssteuerverfahren, welches von einer elektronischen bauteile-bestückungsvorrichtung ausgeführt wird
DE69818152T2 (de) Abstechverfahren für Drehautomaten und Drehautomat
DE69505073T2 (de) Laserbehandlungsvorrichtung
DE19754857A1 (de) Vorrichtung zum Bestimmen der Position des Schweißdrahtes oder der Elektrode eines Roboters
DE19625638A1 (de) Drahtbondingverfahren und -kopf
EP1522004B1 (de) Werkzeugmaschine und verfahren zum betreiben einer solchen
DE69330057T2 (de) Verfahren und Gerät zur Steuerung eines Fertigungssystems

Legal Events

Date Code Title Description
8364 No opposition during term of opposition