DE68907260T2 - Lichtstrahl-Positionierungssystem. - Google Patents

Lichtstrahl-Positionierungssystem.

Info

Publication number
DE68907260T2
DE68907260T2 DE89106746T DE68907260T DE68907260T2 DE 68907260 T2 DE68907260 T2 DE 68907260T2 DE 89106746 T DE89106746 T DE 89106746T DE 68907260 T DE68907260 T DE 68907260T DE 68907260 T2 DE68907260 T2 DE 68907260T2
Authority
DE
Germany
Prior art keywords
light beam
signals
target surface
signal
light
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
DE89106746T
Other languages
English (en)
Other versions
DE68907260D1 (de
Inventor
Mark A Bortnem
Bruce E Edson
Howard V Goetz
Robert M Pailthorp
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.)
Electro Scientific Industries Inc
Original Assignee
Electro Scientific Industries 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 Electro Scientific Industries Inc filed Critical Electro Scientific Industries Inc
Application granted granted Critical
Publication of DE68907260D1 publication Critical patent/DE68907260D1/de
Publication of DE68907260T2 publication Critical patent/DE68907260T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • 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
    • B23K26/00Working by laser beam, e.g. welding, cutting or boring
    • B23K26/02Positioning or observing the workpiece, e.g. with respect to the point of impact; Aligning, aiming or focusing the laser beam
    • B23K26/04Automatically aligning, aiming or focusing the laser beam, e.g. using the back-scattered light
    • 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
    • B23K26/00Working by laser beam, e.g. welding, cutting or boring
    • B23K26/02Positioning or observing the workpiece, e.g. with respect to the point of impact; Aligning, aiming or focusing the laser beam
    • B23K26/04Automatically aligning, aiming or focusing the laser beam, e.g. using the back-scattered light
    • B23K26/042Automatically aligning the laser beam
    • B23K26/043Automatically aligning the laser beam along the beam path, i.e. alignment of laser beam axis relative to laser beam apparatus
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/401Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
    • G05B19/4015Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes going to a reference at the beginning of machine cycle, e.g. for calibration

Landscapes

  • Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Engineering & Computer Science (AREA)
  • Plasma & Fusion (AREA)
  • Mechanical Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Laser Beam Processing (AREA)
  • Mounting And Adjusting Of Optical Elements (AREA)
  • Mechanical Optical Scanning Systems (AREA)
  • Control Of Position Or Direction (AREA)
  • Radiation-Therapy Devices (AREA)
  • Optical Communication System (AREA)

Description

  • Die vorliegende Erfindung betrifft Lichtstrahlpositioniersysteme und insbesondere ein solches System, welches die Fähigkeit zur Korrektur von Lichtstrahlpositionsfehlern besitzt.
  • Ein herkömmliches automatislertes Lichtstrahlpositioniersystem umfaßt typischerweise einen Lichtstrahlpositionierer und einen Systemsteuercomputer. Der Lichtstrahlpositionierer, welcher typischerweise optische Komponenten mit beweglichen lichtlenkenden Oberflächen umfaßt, empfängt Strahlpositions- und Geschwindigkeitsbefehlsdaten ("Befehlsdaten"), welche durch den Systemsteuercomputer verarbeitet werden. Die optischen Komponenten besitzen entweder reflektierende oder brechende lichtlenkende Eigenschaften. Der Lichtstrahlpositionierer legt in Antwort auf die Befehlsdaten den Propagationsweg eines einfallenden Lichtstrahls fest, um ihn zu einer vorbestimmten Stelle auf einem Werkstück zu lenken.
  • Um den Weg zu ändern, den der Lichtstrahl entlang des Werkstückes läuft, ändert der Lichtstrahlpositionierer in Antwort auf verschiedene Befehlsdaten die Orientierungen der beweglichen lichtlenkenden Oberflächen der optischen Komponenten. Ein Beispiel einer solchen Vorrichtung ist ein Galvanometer- Strahlpositionierer, welcher ein Paar von selektiv schwenkbaren Spiegeln verwendet, welche in Antwort auf die Befehlsdaten zusammenwirken, um einen einfallenden Lichtstrahl zu einer gewünschten Position auf einer Zieloberfläche zu lenken.
  • Die Figuren 1A und 1B sind Diagramme eines Lichtstrahlpositioniersystems 10 nach dem Stand der Technik, welches einen Galvanometer-Strahlpositionierer 12 verwendet, um einen einfallenden Lichtstrahl 14, welcher aus einer Laserquelle 16 austritt, zu einer gewünschten Position auf einer ebenen Zieloberfläche 18 zu lenken. Figur 1A ist ein Blockdiagramm der Datenverarbeitungseinheiten zum Steuern des Galvanometer-Strahlpositionierers 12 und Figur 1B ist ein bildliches Diagramm der optischen Bestandteile des Lichtstrahlpositioniersystems 10.
  • Bezugnehmend auf die Figuren 1A und 1B liefert ein peripheres Speichermedium 20, wie eine Magnetplatte, die Befehlsdaten zu einem Systemsteuercomputer 22. Der Systemsteuercomputer 22 führt typischerweise mehrere Aufgaben aus, von denen zumindest einige nicht einen Lichtstrahlpositioniervorgang betreffen. Die Befehlsdaten stellen "Tabellen" von Start- und Endpositionen von möglichen Wegen und den zugeordneten Geschwindigkeiten für das Wandern des Lichtstrahls entlang dem Werkstück dar. Der Systemsteuercomputer 22 erfaßt elektrische Meßdaten und wählt in Antwort auf diese Daten einen aus jedem der möglichen Wege und Geschwindigkeiten für den Lichtstrahl aus. Befehlsdaten für einen lasergestützten Widerstandstrimmer stellen zum Beispiel eine Reihe von entsprechenden Start- und Endpositionen dar, von denen aus und zu welchen sich der Laserstrahl 14 bewegt, um einen Trimmvorgang auf einem speziellen Widerstandsnetzwerk mit einen bekannten Muster auszuführen.
  • Der Systemsteuercomputer 22 liefert die Befehlsdaten an einen Positionsdatenerzeuger 24, welcher ein Digitalwortsignal für die X-Positionskoordinate ("X-Signal") und ein Digitalwortsignal für die Y-Positionskoordinate ("Y-Signal") entwickelt. Die X- und Y- Signale stellen Digitalworte dar, welche in Gleichspannungen umgewandelt werden, die an zwei verschiedene Galvanometermotoren (nicht gezeigt) abgegeben werden.
  • Ein Galvanometermotor ist ein Gleichstrommotor, dessen Welle operativ mit einem Spiegel für eine Bewegung um eine Schwenkachse verbunden ist. Der Galvanometer-Strahlpositionierer 12 verwendet ein Paar von getrennten Spiegeln 26 und 28, welche auf Trägern montiert sind, welche operativ mit den Galvanometermotoren für eine Schwenkbewegung um orthogonal ausgerichtete Schwenkachsen verbunden sind. Die Spiegel 26 und 28 empfangen den einfallenden Laserstrahl 14 und bewegen sich schwenkend um ihre entsprechenden Schwenkachsen in Antwort auf die X- und Y- Signale, um den Laserstrahl 14 zu einer gewünschten Position auf der Zieloberfläche 18 zu lenken. Der Galvanometer-Strahlpositionierer 12 umfaßt weiterhin eine F-θ-Linse zum Fokussieren des Strahls 14 und einen Spiegel 32 zum Lenken des Lichtstrahls 14 zu der Zieloberfläche 18. Die Schwenkbewegungen der Spiegel 26 und 28 beschreiben eine allgemein kreisförmige ansprechbare Bildfläche 33 auf der Zieloberfläche 18.
  • Eines der Probleme, welche mit dem Lichstrahl-Positioniersystem 10 verbunden sind, besteht darin, daß die optischen Systemkomponenten bedingen können, daß Einheitsschwenkbewegungen der Galvanometerspiegel nicht in linearen Einheitsbewegungen des Laserstrahls 14 auf der Zieloberfläche 18 resultieren. Eine Hauptquelle einer solchen nichtlinearen Strahlbewegung ist die nichtlineare Verzerrung, welche immer dann resultiert, wenn die optischen Systemkomponenten eine Schwenkbewegung nicht korrekt in eine lineare Bewegung umwandeln. Zum Beispiel leitet der Galvanometerspiegel 26 den Strahl 14 immer dann, wenn er abseits der optischen Achse positioniert ist, fehl, wenn er zu dem Galvanometerspiegel 28 und der Linse 30 läuft. Der Positionierfehler des Galvanometers resultiert in einer kissenförmigen Aberration, welche nicht äquidistante Abstände zwischen benachbarten Positionen in der Nähe des Randes der Zieloberfiäche-18-darstellt, wenn der Strahl 14 sich zu ihnen in Antwort auf entsprechende Einheits-Winkelversetzungen der Galvanometerspiegel 26 und 28 hinbewegt.
  • Figur 2 ist eine Karte eines beispielhaften ansprechbaren Felds 34, welche das Lichtstrahl-Gittermuster zeigt, welches auf der Zieloberfläche 18 durch Einheits-Winkelversetzungen der Galvanometerspiegel 26 und 28 in Antwort auf Einheitsänderungen in den Positionswerten der Befehlsdaten beschrieben wird. Zum Zwecke der folgenden Beschreibung bewegen sich die Galvanometerspiegel 26 und 28 schwenkbar um die X- bzw. Y-Achse. Figur 2 zeigt, daß das ansprechbare Feld 34 der Zieloberfläche 18 eine Kissenform mit einem äquidistantem Abstand von 2,5 mm zwischen benachbarten Positionen in der Nähe des Zentrums 36 der Zieloberfläche, eine nach außen gerichtete Außenlinie mit einer "Schlußstein-Form" an den Randbereichen 40 in der X-Richtung und eine nach innen gerichtete Außenlinie an den Randbereichen 38 in der Y-Richtung besitzt. Die resultierende Nichtlinearität des Strahlpositionierens beträgt typischerweise einige Prozent in der Nähe des Rands der Zieloberfläche.
  • Es werden verschiedene Methoden verwendet, um zu versuchen, mit dem nichtlinearen Strahlpositionieren umzugehen, welches durch die optischen Komponenten des Galvanometer-Strahlpositionierers erzeugt wird. Eine Methode besteht darin, einfach das Problem zu ignorieren und die sich ergebende kissenförmige Aberration zu tolerieren. Eine zweite Methode erfordert eine visuelle Rückkopplung, bei welcher ein Betreiber einen Joystick manuell verwendet, um den Laserstrahl an der gewünschten Startposition zu positionieren. Diese Methode leidet unter dem offensichtlichen Nachteil, daß sie arbeitsintensiv ist und das Problem der Nichtlinearität des Positionierens nicht korrigiert, welches auftritt, wenn der Laserstrahl sich von einer Startposition in der Nähe des Randes der Zieloberfläche aus bewegt. Die Verwendung von visueller Rückkopplung, um den Laserstrahl in die richtige Startposition zu lenken, kann daher nicht in einer geradlinigen Strahlpositionierung entlang der Zieloberfläche resultieren.
  • Eine dritte Methode zum Korrigieren der Strahlpositionierungsfehler erfordert das Korrigieren der Befehlsdaten, welche durch den Systemsteuercomputer 22 verarbeitet werden. Dies wird dadurch erreicht, daß in dem Systemsteuercomputer 22 eine Kalibrierungskarte in der Form einer Nachschlagetabelle vorgesehen ist, welche Korrekturdaten enthält, die den gewünschten Positionen auf der Zieloberfläche entsprechen, denen die Befehlsdaten entsprechen. Der Systemsteuercomputer 22 verwendet die Korrekturdaten zum Modifizieren der Befehlsdaten, um Strahlpositionsfehler zu beseitigen. Diese Fehlerkorrekturmethode ist nachteilhaft, weil Softwarefiles, die sich in dem Systemsteuercomputer 22 befinden, jedesmal geändert werden müssen, wenn ein anderer Strahlpositionierer 12 in Verbindung mit dem Systemsteuercomputer 22 verwendet wird. Ein weiterer Nachteil besteht darin, daß die Antwortzeit des Systemsteuercomputers auf eine Änderung in den Befehlsdaten inhärent lang ist, weil der Systemsteuercomputer 22 viele andere, damit nicht zusammenhängende Aufgaben erfüllt, denen Priorität zugewiesen ist. Möglicherweise findet die gewünschte Änderung in der Strahlposition daher statt, nachdem eine beträchtliche Zeit seit dem Empfang der Befehlsdaten verstrichen ist.
  • Eine vierte Methode zum Korrigieren von Positionierfehlern, welche von Takahashi in Patent Abstracts of Japan, Band 8, Nr. 80 (M-289) [1517] JP-A-58 224 088 (12. April 1984) beschrieben wurde, beinhaltet die Verwendung eines Rückkopplungs-Steuersystems. Nach dem Durchlaufen des Strahlpositionierers wird der Lichtstrahl in zwei Teile aufgespalten, einen Teil, welcher auf die Zieloberfläche einfällt, und einen zweiten Teil, welcher auf einen zweidimensionalen, selbstabtastenden photoelektrischen Wandler einfällt. Der photoelektrische Wandler erzeugt eine Realzeit-Rückkopplung über die Positionierung des Lichtstrahls zu einer Systemsteuerung und einem Treiber, um die Korrektur der Lichtstrahlposition zu gestatten.
  • Es ist daher eine Aufgabe der Erfindung, ein Lichtstrahlpositioniersystem zu schaffen, welches Strahlpositionsfehler korrigiert.
  • Eine weitere Aufgabe der Erfindung ist es, ein solches System zu schaffen, welches die Korrektur des Strahlpositionsfehlers in Real zeit durchführt.
  • Eine weitere Aufgabe der Erfindung ist es, ein solches System zu schaffen, welches keine Änderungen in den Softwarefiles des Systemsteuercomputers bei der Verwendung von verschiedenen Lichtstrahlpositionierern erfordert.
  • Noch eine weitere Aufgabe der Erfindung ist es, ein computergesteuertes Lichtstrahlpositioniersystem zu schaffen, welches gute Linearitätseigenschaften beim Strahlpositionieren über die gesamte ansprechbare Abbildungsfläche einer Zieloberfläche aufweist.
  • Noch eine weitere Aufgabe der Erfindung ist es, ein solches System zu schaffen, welches einen Galvanoineter-Lichtstrahlpositionierer verwendet.
  • Die vorliegende Erfindung wird lediglich beispielhaft mit Bezug auf ein lasergestütztes Widerstandstrimmersystem beschrieben, welches einen Galvanometer-Laserstrahlpositionierer verwendet. Die Erfindung korrigiert in Realzeit Positionierfehler eines Galvanometer-Laserstrahlpositionierers und besitzt daher die Fähigkeit, genau positionierte gerade Linien mit programmierten Geschwindigkeiten zwischen zwei beliebigen Punkten auf einer Zieloberfläche zu erzeugen.
  • Die Erfindung verwendet einen Fehlerkorrekturprozessor, welcher das X-Signal und das Y-Signal empfängt, welche durch einen herkömmlichen Positionsdatenerzeuger erzeugt werden, und ein kompensiertes Digitalwort-X-Signal ("Xc-Signal") bzw. ein kompensiertes Digitalwort-Y-Signal ("Yc-Signal") zur Abgabe an den Galvanometer-Strahlpositionierer erzeugt. Die Verwendung des Fehlerkorrekturprozessors in Verbindung mit dem Positionsdatenerzeuger und dem Galvanometer-Strahlpositionierer gestattet die Verwendung von gebräuchlichen Triinmposition-Datenfiles in dem Systemsteuercomputer bei Systemen, welche in der Lage sind, verschiedene Lichtstrahlpositionierer zu verwenden. Eine Einrichtung mit mehreren computergesteuerten Strahlpositioniersystemen, welche gemäß der Erfindung implementiert ist, ist daher in der Lage, dasselbe Widerstandsnetzwerk-Werkstück auf verschiedenen Strahlpositioniersystemen zu verarbeiten, welche dieselben Befehlsdaten in dem Systemsteuercomputer haben.
  • Der Fehlerkorrekturprozessor führt die Korrekturschritte in Real zeit durch und liefert dadurch die Xc- und Yc-Signale in geringerer Zeit als der Antwort zeit der schwenkbar beweglichen Galvanometerspiegel des Lichtstrahlpositionierers. Der Fehlerkorrekturprozessor kann zur Verwendung bei verschiedenen Lasertrimmsystemen desselben Models einfach dadurch angepaßt werden, daß der Fehlerkorrekturprozessor mit den passenden Korrekturfaktoren für den speziellen verwendeten Lichtstrahlpositionierer geladen wird. Eine solche Flexibilität kann ohne eine Änderung der Softwarefiles in dem Systemsteuercomputer erreicht werden.
  • Weitere Aufgaben und Vorteile der vorliegenden Erfindung werden aus der detaillierten Beschreibung einer bevorzugten Ausführungsform derselben deutlich, welche mit Bezug auf die beigefügten Zeichnungen vonstatten geht.
  • Die Figuren 1A und 1B sind ein Blockdiagrainm bzw. ein bildliches Diagramm eines coinputergesteuerten Strahlpositioniersystems nach dem Stand der Technik.
  • Figur 2 ist eine Karte eines beispielhaften ansprechbaren Felds, welches die kissenförmige Aberration der Strahlposition besitzt, die inhärent bei einem nicht fehlerkompensierten Galvanometer- Strahlpositioniersystem nach dem Stand der Technik von der in den Figuren 1A und 1B gezeigten Art ist.
  • Figur 3 ist ein Blockdiagramm eines computergesteuerten Lichtstrahlpositioniersystems mit einer Strahlpositions-Fehlerkorrektur gemäß der vorliegenden Erfindung.
  • Figur 4 ist ein Flußdiagramm der Verfahrensschritte beim Kalibrieren, welche ausgeführt werden, um Feldkorrekturkoeffizienten der Polynomialterme abzuleiten, welche die Xc- und Yc-Signale darstellen.
  • Figur 5 ist ein Diagramm, welches die Orte der dreizehn Kalibrierpunkte zeigt, die beim Ableiten der Feldkorrekturkoeffizienten gemäß dem Flußdiagramm der Figur 4 verwendet werden.
  • Figur 6A zeigt nur in der X-Richtung die kissenförmige Aberration eines ansprechbaren Feldmusters von der in Figur 2 gezeigten Art und die Figuren 6B und 6C stellen die keilförmige Komponente bzw. die parabelförmige Komponente dar, welche überlagert werden können, um das ansprechbare Feldmuster der Figur 6A zu bilden.
  • Figur 7 ist ein vereinfachtes Blockdiagramm des Fehlerkorrekturprozessors, welcher in dem System der Figur 3 implementiert ist.
  • Figur 8 ist eine Karte eines beispielhaften ansprechbaren Feldes, welches die Wirkung der Positionsfehlerkorrekturmethode der Erfindung beim Beseitigen der kissenförmigen Aberration der Strahlposition zeigt.
  • Figur 3 ist ein Blockdiagramm eines computergesteuerten Lichtstrahlpositioniersystems 50 mit einer Strahlpositionsfehlerkorrektur gemäß der vorliegenden Erfindung. Das Strahlpositioniersystem 50 wird hier nur als Beispiel so beschrieben, daß es einen Galvanometer-Laserstrahlpositionierer 12 von der Art besitzt, welche typischerweise bei Widerstandstrimmsystemen verwendet wird. Das Lichtstrahlpositioniersystem 50 ist in der Lage, Laserstrahlpositionierungsfehler zu korrigieren, welche durch verschiedene Galvanometer-Laserstrahlpositionierer 12 desselben Modells erzeugt werden. Dies kann erreicht werden, indem einem Fehlerkorrekturprozessor 52 ein Satz von Korrekturkoeffizienten zur Verfügung gestellt wird, welche die lichtlenkenden Eigenschaften des konkreten Galvanometer-Strahlpositionierers charakterisieren, der bei dem Strahlpositioniersystem verwendet wird. Das Strahlpositioniersystem 50 ist in der Lage, Fehler zu korrigieren, die aus 1) der nichtlinearen Verzerrung, welche durch die Schwenkbewegung der Spiegel und die Linseneigenschaften verursacht wird, 2) Ausrichtungsfehlern, welche durch eine Abweichung von der orthogonalen Beziehung der X-Y- Koordinatenachsen verursacht werden, 3) Skalierungsfaktoren- und Ursprungsabweichungsfehlern für die X-Achse und die Y-Achse und 4) einer Rotations-Fehlanpassung des Abbildungsfeldes bezüglich der Zieloberfläche 18 resultieren. In einer bevorzugten Ausführungsform ist die Zieloberfläche 18 planar und stellt die Arbeitsoberfläche einer lasergestützten Mikro-Materialbearbeitungsvorrichtung dar.
  • Bezugnehmend auf Figur 3 unterscheidet sich das Strahlpositioniersystem 50 teilweise von dem Strahlpositioniersystem 10 nach dem Stand der Technik dadurch, daß das erstere einen Fehlerkorrekturprozessor 52 enthält, welcher zwischen dem Positionsdatenerzeuger 24 und dem Galvanometer-Strahlpositionierer 12-angeordnet ist. Der Fehlerkorrekturprozessor 52 führt eine Korrekturformel aus, deren Resultat in einen Speicher eingeschrieben wird, um die XC- und YC-Signale zum Abgeben an den Galvanometer- Strahlpositionierer 12 zu berechnen. Der Fehlerkorrekturprozessor 52 führt die Korrekturen in Realzeit während des Lasertrimmvorgangs aus. Die Fehlerkorrekturverarbeitung wird mindestens so schnell wie die Antwortzeit des Galvanometerspiegels, der getrieben wird, durchgeführt.
  • Korrekturen zu den Befehlsdaten sind in einer Software implementiert, deren Verarbeitungsschritte die Terme in vorbestimmten Gleichungen manipulieren, welche die XC- und YC-Signale darstellen. Diese Gleichungen korrigieren die Positionsfehler jeweils in der X- und Y-Achse für jeden Befehlsdatenpunkt. Die Gleichungen werden an einen bestimmten Strahlpositionierer 12 mit Hilfe eines Kalibrierungsvorgangs angepaßt, welcher einen spezifischen Satz von Feldkorrekturkoeffizienten ("Koeffizienten") für die Terme in den Gleichungen erzeugt.
  • Der Kalibrierungsvorgang, welcher die Koeffizienten erzeugt, wird nur nach Bedarf durchgeführt, um die Langzeit-Systemdrift oder Änderungen, die aus einer Anpassung oder Reparatur resultieren, zu kompensieren. Die Koeffizienten werden in einem Kalibrierungs-Datenfile 54 abgespeichert, welches in einer Datenverbindung mit dem Systemsteuercomputer 22 eingesetzt wird, und über einen Datenbus 56 dem Fehlerkorrekturprozessor 52 jedesmal zugeführt, wenn elektrische Energie an das Strahlpositioniersystem 50 angelegt wird. Der Inhalt des Kalibrierungs-Datenfiles 54 wird durch die Seriennummer des speziellen Strahlpositioniersystems 50 identifiziert, um sicherzustellen, daß der korrekte Satz von Koeffizienten mit dem Galvanometer-Strahlpositionierer 12 assoziiert wird, der in einem solchen System verwendet wird. Es ist klar, daß die Koeffizienten ebenfalls in einem nicht- flüchtigen Speicher mit einer direkten Datenverbindung zu dem Fehlerkorrekturprozessor 52 gespeichert sein könnten.
  • Der Fehlerkorrekturprozessor 52 einpfängt die X- und Y-Signale, welche einen Befehlsdatenpunkt darstellen, und führt die erforderlichen mathematischen Operationen aus, um die XC- und Signale gemäß den folgenden Transformationsgleichungen zu berechnen:
  • XC = A&sub1; + B&sub1;X + C&sub1;X² + D&sub1;X³ + E&sub1;Y + F&sub1;Y² + G&sub1;XY + H&sub1;XY²
  • YC = A&sub2; + B&sub2;Y + C&sub2;Y² + D&sub2;Y³ + E&sub2;X + F&sub2;X² + G&sub2;YX + H&sub2;YX²
  • wobei A&sub1;, B&sub1;, CXC&sub1;D&sub1;, E&sub1;, F&sub1;, G&sub1; und H&sub1; und A&sub2;, B&sub2;, C&sub2;, D&sub2;, E&sub2;, F&sub2;, G&sub2; und H&sub2; die Koeffizienten darstellen. Die Koeffizienten werden aus einem Satz von gemessenen Daten abgeleitet, welche man durch Abtasten des Werkstücks an dreizehn vorbestimmten Stellen in einem ansprechbaren Feld erhält, das durch ein Rechteck begrenzt ist.
  • Figur 4 ist ein Flußdiagramm, welches die Kalibrierungs-Verarbeitungsschritte zum Ableiten der Koeffizienten für die XC- und YC-Signale zeigt. Der Kalibrierungsvorgang erfordert sechs Hauptbearbeitungsschritte, welche umfassen: 1) Auswählen einer regulären Anordnung von dreizehn Kalibrierungspunkten, welche in dem ansprechbaren Feld zentriert sind, 2) Bestimmen der Befehlsdaten, welche nötig sind, um den Laserstrahl genau an jedem der dreizehn ausgewählten Kalibrierungspunkte zu positionieren, 3) Ableiten der sechzehn erforderlichen Koeffizienten A&sub1;-H&sub1; und A&sub2;- H&sub2; für die jeweiligen Transformationsgleichungen XC und YC, 4) Normalisieren und Skalieren der abgeleiteten Koeffizienten, um einen numerischen Überlauf bei einer mathematischen 16-Bit-Ganzzahl-Operation zu vermeiden, welche durch den Fehlerkorrekturprozessor 52 ausgeführt wird, 5) Anpassen bestimmter Koeffizienten, um eine inhärente Division durch zwei zu kompensieren, welche immer dann durchgeführt wird, wenn eine Multiplikationsoperation ausgeführt wird, und 6) Umwandeln der Koeffizienten in ein gebrochenes binäres Format. Die folgende detaillierte Erklärung jedes der vorangehenden sechs Schritte wird mit Bezug auf Figur 4 gegeben.
  • Der Prozeßblock 60 bezeichnet die Auswahl der dreizehn Kalibrierungspunkte. Jeder der Kalibrierungspunkte wird durch ein Rechteck begrenzt, dessen Ränder ungefähr 5% innerhalb der Grenzen des ansprechbaren Feldes liegen, so daß Zentrierungsfehler und Aberrationen, welche durch die kissenförmige Aberration erzeugt werden, keinen der Kalibrierungspunkte außerhalb des ansprechbaren Felds legen. Die Kalibrierungspunkte werden hier als "unabhängige Variablen" zur Substitution in die XC- und YC-Gleichungen bezeichnet und sind in dreizehn geordneten Paaren angeordnet, die mit (IX&sub1;, IY&sub1;) bis (IX&sub1;&sub3;, IY&sub1;&sub3;) bezeichnet sind. Zum Beispiel stellen IX&sub1; und IY&sub1; die X-Koordinate bzw. die Y-Koordinate des Kalibrierungspunktes 1 dar.
  • Figur 5 ist ein Diagramm, welches die Orte der dreizehn Feldkalibrierungspunkte darstellt, welche gemäß der oben beschriebenen Notation identifiziert sind. Jedes Inkrement der Galvanometermotoren für die Galvanometerspiegel 26 und 28 steht zum Beispiel für eine Bewegung des Laserstrahls um 0,0025 mm entlang der X-Achse oder der Y-Achse der Zieloberfläche. Die Größe der Inkrementalbewegung hängt von der speziellen Implementierung des Galvanometer-Strahlpositioniers 12 ab. Die Galvanometermotor- Zählungen werden bezüglich des Zentralpunkts (IX&sub7;, IY&sub7;) des ansprechbaren Felds berechnet.
  • Die dreizehn Kalibrierungspunkte umfassen fünf Punkte, welche entlang der horizontalen (Y=0) Achse zentriert um X=0 liegen und gemäß den ungefähren Verhältnissen -10, -6, 0, 6, 10 beabstandet sind, fünf Punkte, welche auf der vertikalen (X=0) Achse um Y=0 zentriert liegen und gemäß den ungefähren Verhältnissen -10, -6, 0, 6, 10 beabstandet sind, und vier Eckpunkte des Rechtecks, welches in der bevorzugten Ausführungsforin ein Quadrat ist. Insbesondere umfassen die fünf entlang der horizontalen Achse liegenden Punkte die geordneten Paare (IX&sub5;, IY&sub5;), (IX&sub6;, IY&sub6;), (IX&sub7;, IY&sub7;), (IX&sub8;, IY&sub8;) und (IX&sub9;, IY&sub9;). Die fünf Punkte, welche entlang der vertikalen Achse liegen, umfassen die geordneten Paare (IX&sub2;, IY&sub2;), (IX&sub4;, IY&sub4;), (IX&sub4;, IY&sub4;), (IX&sub1;&sub0;, IY&sub1;&sub0;) und (IX&sub1;&sub2;, IY&sub1;&sub2;). Die vier Eckpunkte des Quadrats umfassen die geordneten Paare (IX&sub1;, IY&sub1;), (IX&sub3;, IY&sub3;), (IX&sub1;&sub1;, IY&sub1;&sub1;) und (IX&sub1;&sub3;, IY&sub1;&sub3;) . Man erkennt, daß der Zentralpunkt (IX&sub7;, IY&sub7;) den beiden Gruppen von fünf Punkten gemeinsam ist, welche entlang der horizontalen und der vertikalen Achse liegen.
  • Der Prozeßblock 62 bezeichnet die Bestimmung der X- und Y-Signale, welche nötig sind, um den Laserstrahl genau an einem der dreizehn Kalibrierungspunkte zu positionieren, welche in der Art, die mit Bezug auf Prozeßblock 60 beschrieben wurde, festgelegt worden sind. Die Messung kann zum Beispiel mit Hilfe einer Scanroutine erreicht werden, welche ein Ziel lokalisiert, das einen der dreizehn Kalibrierungspunkte darstellt. Die Ziele können entweder dreizehn Zielorte auf einer festen Kalibrierungsplatte oder ein einzelner Zielort auf einer Platte sein, welche zu dreizehn verschiedenen Positionen durch einen Repetiermechanismus bewegt werden kann. Die dreizehn gemessenen Positionen werden hier als die "abhängigen Variablen" zum Einsetzen in die XC- und YC-Transformationsgleichungen bezeichnet und werden mit (DX&sub1;, DY&sub1;) bis (DX&sub1;&sub3;, DY&sub1;&sub3;) bezeichnet. Zum Beispiel stellen DX&sub1; und DY&sub1; die entsprechenden X- und Y-Signale dar, welche dem Fehlerkorrekturprozessor 52 zugeführt werden, um den Strahl im Zentrum des Ziels 1 zu positionieren, welches sich bei (IX&sub1;, IY&sub1;) befindet.
  • Der Prozeßblock 64 bezeichnet die Ableitung der Koeffizienten aus den unabhängigen Variablen IX und IY und den abhängigen Variablen DX und DY. Der Vorgang des Ableitens sämtlicher Koeffizienten aus den unabhängigen und abhängigen Variablen erfordert sechs Unterschritte, von denen einige die Verwendung eines herkömmlichen Algorithmus zum Anpassen einer Kurve nach der Methode der kleinsten Quadrate erfordern. Die Anforderungen an den Algorithmus sind, daß er 1) hinreichend genau ist, um mindestens eine Auflösung von sechs signifikanten Stellen für Gleitkommazahlen bis hinab zu 1 x 10&supmin;¹² aufrechtzuerhalten, 2) in der Lage ist, selektiv eine Kurve entweder zweiter oder dritter Ordnung an fünf Kalibrierungspunkte anzupassen, und 3) die gewünschten Koeffizienten und eine Leistungszahl erzeugt, welche die Qualität der erreichten Anpassung angibt. Die Leistungszahl ist nützlich für Zwecke der Fehlerüberprüfung.
  • Der Unterschritt 64a bezeichnet die Ableitung der Koeffizienten A&sub1;, B&sub1;, C&sub1; und D&sub1;. Diese Ableitung wird erreicht, indem die XC- Transformationsgleichung als Funktion von X gelöst wird. Die Koeffizienten A&sub1;, B&sub1;, C&sub1; und D&sub1; werden aus den fünf Kalibrierungspunkten abgeleitet, welche sich entlang der horizontalen oder Y=0-Achse befinden und wird durch das Durchführen einer Anpassung einer Polynomialkurve dritter Ordnung nach dem Verfahren der kleinsten Quadrate an die Variablen IX&sub5; und DX&sub5;, IX&sub6; und DX&sub6;, IX&sub7; und DX&sub7;, IX&sub8; und DX&sub8;, und IX&sub9; und DX&sub9; erreicht. Die Koeffizienten, welche aus der Kurvenpassung nach dem Verfahren der kleinsten Quadrate abgeleitet sind, sind derart, daß der Koeffizient nullter Ordnung Ab wird, was äquivalent zu der Versetzung der X-Achse ist; der Koeffizient erster Ordnung wird B&sub1;, was dem Skalenfaktor der X-Achse entspricht; der Koeffizient zweiter Ordnung wird C&sub1; und der Koeffizient dritter Ordnung wird D&sub1;. Man wird einsehen, daß der Koeffizient nullter Ordnung, welcher die Versetzung der X-Achse darstellt, gleich der abhängigen Variablen DX&sub7; sein sollte. Eine Differenz zwischen A&sub1; und DX&sub7; von mehr als ungefähr fünf Galvanometermotor-Inkrementen könnte auf fragwürdige Daten hinweisen.
  • Der Unterschritt 64b bezeichnet die Ableitung der Koeffizienten E&sub1; und F&sub1;. Diese Ableitung wird erreicht, indem die XC-Transformationsgleichung als Funktion von Y gelöst wird. Die Koeffizienten E&sub1; und F&sub1; werden aus den fünf Kalibrierungspunkten -abgeleitet, welche sich entlang der vertikalen oder X=0-Achse befinden, indem eine Anpassung mit einem Polynom zweiter Ordnung nach dem Verfahren der kleinsten Quadrate an die Variablen IY&sub1;&sub2; und DY&sub1;&sub2;, IY1&sub1;&sub0; und DY&sub1;&sub0;, IY&sub7; und DY&sub7;, IY&sub4; und DY&sub4; und IY&sub2; und DY&sub2; durchgeführt wird. Die Koeffizienten, welche aus der Kurvenanpassung nach dem Verfahren der kleinsten Quadrate mit einem Polynom zweiter Ordnung abgeleitet werden, sind derart, daß der Koeffizient nullter Ordnung außer für Zwecke der Fehlerüberprüfung nicht verwendet wird, der Koeffizient erster Ordnung E&sub1; wird und der Koeffizient zweiter Ordnung F&sub1; wird. Man wird einsehen, daß der Koeffizient nullter Ordnung ungefähr gleich DX&sub7; und dem Koeffizienten A&sub1; sein sollte. Der Unterschied zwischen dem ansonsten nicht verwendeten Koeffizienten nullter Ordnung und A&sub1; (oder DX&sub7;) von mehr als ungefähr fünf Galvanometermotor-Inkrementen könnte wiederum auf fragwürdige Daten hinweisen.
  • Der Unterschritt 64c bezeichnet die Berechnung der Koeffizienten G&sub1; und H&sub1;. Die Koeffizienten G&sub1; und H&sub1; werden direkt aus sechs der gemessenen Werte gemäß den folgenden Gleichungen abgeleitet:
  • Px = DX&sub3; - DX&sub1;
  • Qx = DX&sub1;&sub3; - DX&sub1;&sub1;
  • Rx = DX&sub9; - DX&sub5;,
  • wobei Px, Qx und Rx nominal positive Zahlen sind, die in etwa gleich der horizontalen Breite des Datenfelds sind. Die Koeffizienten G&sub1; und H&sub1; können aus den vorangehenden Ausdrücken für Px, Qx und Rx wie folgt berechnet werden:
  • G&sub1; = (Px - Qx)/(4 x IX&sub3; x IY&sub3;)
  • H&sub1; = (Px + Qx - 2 x Rx)/(4 x IX&sub3; x IY&sub3; x IY&sub3;).
  • Der Koeffizient G&sub1; kann einen positiven oder negativen Wert haben und die Größe von G&sub1; wird typischerweise ungefähr kleiner als 1 x 10&supmin;&sup8; sein. Der Koeffizient H&sub1; wird immer positiv sein und die Größe von H&sub1; wird typischerweise ungefähr 5 x 10&supmin;¹¹ sein.
  • Die Gleichungen für die Koeffizienten G&sub1; und H&sub1; sind empirisch aus dem ansprechbaren Feldmuster mit einer kissenförmigen Aberration abgeleitet. Die Figur 6A stellt einen vergrößerten Teil eines unkorrigierten ansprechbaren Feldmusters von der in Figur 2 gezeigten Art dar. Figur 6A zeigt eine kissenförmige Aberration nur in der X-Richtung. Während seiner Formulierung der Fehlerkorrekturtransformationsgleichungen stellte einer der Erfinder fest, daß das Muster der Figur 6A als eine Überlagerung einer keilförmigen Komponente, welche in Figur 6B gezeigt ist, und einer parabelförmigen Komponente, welche in Figur 6C gezeigt ist, dargestellt werden kann. Figur 6B deutet darauf hin, daß die Winkelversetzung des Keils sich in Abhängigkeit von dem Abstand von der Y-Achse erhöht und Figur 6C deutet darauf hin, daß die parabolische Krümmung als Funktion des Anstands von der Y-Achse wächst.
  • Der Term G&sub1;XY in der XC-Transformationsgleichung korrigiert die in Figur 6B gezeigte Keilform. Der Term (Px-Qx) des Koeffizienten G&sub1; stellt das Vierfache der mittleren X-Achsen-Komponente der Linien dar, welche sich v6n der X-Achse zu den Punkten (DX&sub1;, DY&sub1;), (DX&sub3;, DY&sub3;), (DX&sub1;&sub1;, DY&sub1;&sub1;) und (DX&sub1;&sub3;, DY&sub1;&sub3;) erstrecken. Die Division durch vier in der Gleichung für G&sub1; ist daher nötig, um G&sub1; zu berechnen. Der Koeffizient G&sub1; wird an dem Punkt (IX&sub3;, IY&sub3;) berechnet, weil er sich in dem ersten Quadranten des ansprechbaren Feldes befindet, der Punkt (IX&sub1;, IY&sub1;) könnte aber auch benutzt werden.
  • Der Term H&sub1;XY² in der XC-Transformationsgleichung korrigiert die parabolische Form, der Term (Px + Qx - 2 x Rx) des Koeffizienten H&sub1; stellt das Vierfache der X-Achsen-Komponente der Parabeln an den Punkten (DX&sub1;, DY&sub1;), (DX&sub3;, DY&sub3;) (DX&sub1;&sub1;, DY&sub1;&sub1;) und (DX&sub1;&sub3;, DY&sub1;&sub3;) dar. Eine der Parabeln läuft durch die Punkte (DX&sub1;, DY&sub1;), (DX&sub5;, DY&sub5;) und (DX&sub1;&sub1;, DY&sub1;&sub1;) und die andere Parabel läuft durch die Gruppe von Punkten (DX&sub3;, DY&sub3;), (DX&sub9;, DY&sub9;) und (DX&sub1;&sub3;, DY&sub1;&sub3;).
  • Die Division durch vier in der Gleichung für H&sub1; ist daher nötig, um H&sub1; zu berechnen. Der Koeffizient H&sub1; wird an dem Punkt (IX&sub3;, IY&sub3;) berechnet, weil er sich in dem ersten Quadranten befindet, die Punkte (IX&sub1;, IY&sub1;), (IX&sub1;&sub1;, IY&sub1;&sub1;) und (IX&sub1;&sub3;, IY&sub1;&sub3;) könnten aber auch benutzt werden. Man wird einsehen, daß die Terme G&sub1;XY und H&sub1;XY² nichtlinear anwachsen, wenn sich die Strahlposition von der Y-Achse wegbewegt.
  • Der Unterschritt 64d bezeichnet die Ableitung der Koeffizienten A&sub2;, B&sub2;, C&sub2; und D&sub2;. Diese Ableitung wird durchgeführt, indem die YC-Transformationsgleichung als Funktion der Y-Terme darin gelöst wird. Die Koeffizienten A&sub2;, B&sub2;, C&sub2; und D&sub2; werden aus den fünf Kalibrierungspunkten abgeleitet, welche sich auf der vertikalen oder X=0-Achse befinden und wird erreicht, indem eine Kurvenanpassung mit einem Polynom dritter Ordnung nach dem Verfahren der kleinsten Quadrate an die Variablen IY&sub1;&sub2; und DY&sub1;&sub2;, IY&sub1;&sub0; und DY&sub1;&sub0;, IY&sub7; und DY&sub7;, IY&sub4; und DY&sub4; und IY&sub2; und DY&sub2; durchgeführt wird. Die Koeffizienten, welche aus der Kurvenanpassung nach dem Verfahren der kleinsten Quadrate abgeleitet werden, sind derart, daß der Koeffizient nullter Ordnung A&sub2; wird, was der Versetzung der Y-Achse entspricht. Der Koeffizient erster Ordnung wird B&sub2;, was äquivalent zu dem Skalierungsfaktor der Y-Achse ist, der Koeffizient zweiter Ordnung wird C&sub2; und der Koeffizient dritter Ordnung wird D&sub2;. Man erkennt, daß der Koeffizient nullter Ordnung, welcher die Y-Achsenversetzung darstellt, gleich der abhängigen Variable DY&sub7; sein sollte. Eine Differenz zwischen A&sub2; und DY&sub7; von mehr als ungefähr fünf Galvanometermotor-Inkrementen könnte auf fragwürdige Daten hinweisen.
  • Der Unterschritt 64e bezeichnet die Ableitungen der Koeffizienten E&sub2; und F&sub2;. Diese Ableitung wird erreicht, indem-die Transformationsgleichung als Funktion der X-Terme darin gelöst wird. Die Koeffizienten E&sub2; und F&sub2; werden aus den fünf Kalibrierungspunkten, welche sich entlang der horizontalen oder Y=0-Achse befinden, abgeleitet, indem eine Anpassung mit einem Polynom zweiter Ordnung nach dem Verfahren der kleinsten Quadrate an die Variablen IX&sub5; und DY&sub5;, IX&sub6; und DY&sub6;, IX&sub7; und DY&sub7;, IX&sub8; und DY&sub8; und IX&sub9; und DY&sub9; durchgeführt wird. Die Koeffizienten, welche aus der Kurvenanpassung mit einem Polynom zweiter Ordnung nach dem Verfahren der kleinsten Quadrate abgeleitet werden, sind derart, daß der Koeffizient nullter Ordnung außer für Zwecke der Fehlerüberprüfung nicht verwendet wird. Der Koeffizient erster Ordnung wird E&sub2; und der Koeffizient zweiter Ordnung wird F&sub2;. Man erkennt, daß der Koeffizient nullter Ordnung ungefähr gleich DY&sub7; und dem Koeffizienten A&sub2; sein sollte. Die Differenz zwischen dem ansonsten nicht verwendeten Koeffizienten nullter Ordnung und A&sub2; (oder DY&sub7;) von mehr als ungefähr fünf Galvanometermotor-Inkrementen könnte wiederum auf fragwürdige Daten hinweisen.
  • Der Unterschritt 64f bezeichnet die Berechnung der Koeffizienten G&sub2; und H&sub2;. Die Koeffizienten G&sub2; und H&sub2; werden direkt aus sechs der gemessenen Werte gemäß den folgenden Gleichungen abgeleitet:
  • Py = DY&sub3; - DY&sub1;&sub3;
  • Qy = DY&sub1; - DY&sub1;&sub1;
  • Ry = DY&sub2; - DY&sub1;&sub2;,
  • wobei Py, Qy und Ry nominal positive Zahlen sind, welche ungefähr gleich der vertikalen Breite des Datenfelds sind. Die Koeffizienten G&sub2; und H&sub2; können aus den obigen Ausdrücken für Py, Qy und Ry wie folgt berechnet werden:
  • G&sub2; = (Py - Qy)/(4 x IX&sub3; x IY&sub3;)
  • H&sub2; = (Py + Qy - 2 x Ry)/(4 x IX&sub3; x IX&sub3; x IY&sub3;).
  • Der Koeffizient G&sub2; kann einen positiven oder negativen Wert haben und die Größe von G&sub2; wird typischerweise weniger als 1 x 10&supmin;&sup8; betragen. Der Koeffizient H&sub2; wird immer negativ sein und die Größe von H&sub2; wird typischerweise ungefähr 5 x 10&supmin;¹¹ betragen. Die Gleichungen für die Koeffizienten G&sub2; und H&sub2; sind empirisch aus dem ansprechbaren Feldmuster mit einer kissenförmigen Aberration analog zu der Weise abgeleitet, welche oben mit Bezug auf die Figuren 6A bis 6C dargestellt wurde. Man erkennt, daß die Unterschritte 64a bis 64c und die Unterschritte 64d bis 64f parallel durchgeführt werden können, wie das Fluß diagramm in Figur 5 andeutet.
  • Der Prozeßblock 66 bezeichnet das Normalisieren und Vorskalieren der Koeffizienten A&sub1;-H&sub1; und A&sub2;-H&sub2;. Diese Operationen werden durchgeführt, weil die Koeffizienten entweder wesentlich kleiner oder wesentlich größer als 1 sein können. Ein weiter Bereich von möglichen Werten der Koeffizienten könnte einen Überlauf-Zustand für Terme höherer Ordnung bewirken, weil der bevorzugte Fehlerkorrekturprozessor 52 mit einer 16 Bit-Ganzzahl-Mathematik arbeitet. Um einen solchen Überlauf-Zustand zu verhindern, durchlaufen die abgeleiteten Koeffizienten einen Vorskalierungsprozeß, welcher das Multiplizieren jedes Terms in der XC- und YC-Transformationsgleichung mit (32768)n/(32768)n erfordert, wobei n die Ordnung des Terms minus 1 darstellt. Dieser Vorskalierungsprozeß ist insofern vorteilhaft, als er verhindert, daß die Terme höherer Ordnung über 16 Bits hinauswachsen, er den kleineren Koeffizienten auf eine Größe skaliert, welche größer als Null bei 16 Bits ist und dazu neigt, Zwischenprodukte auf einer Größe zu halten, welche eine maximale Anzahl von signifikanten Stellen in dem 16 Bit-Zweierkomplement-Format ergibt.
  • Die Tabelle 1 faßt die Vorskalierungsfaktoren zusammen, welche für die Koeffizienten berechnet wurden. Tabelle 1 Koeffizient Typische Werte Multiplikator Typische Ergebnisse
  • Die typischen Ergebnisse, welche in der rechten Spalte der Tabelle 1 aufgeführt sind, zeigen, daß nach dem Multiplizieren mit dem Vorskalierungsfaktor jeder der Koeffizienten in gebrochener Binärnotation eine handhabbare Größe besitzt.
  • Der Prozeßblock 68 bezeichnet die Anpassung von bestimmten Koeffizienten, um eine inhärente Division durch zwei zu kompensieren, nachdem eine Multiplikation ausgeführt worden ist. Dieser Schritt ist nötig, weil ein Problem bei der Organisation des Multiplikator/Akkumulator-IC TMC 2010 besteht, welcher durch TRW, Inc. hergestellt wird und in der bevorzugten Ausführungsform verwendet wird. Dieser integrierte Schaltkreis liefert das Ergebnis einer Multiplikations/Akkumulations-Operation als zwei getrennte 16 Bit-Wörter. Da dieser integrierte Schaltkreis gewählt wurde, um in dem gebrochenen Zweierkomplement-Rundungsmodus zu arbeiten, liefern zwei Zahlen mit 15 Bit plus einem Vorzeichenbit ein Produkt von 30-Bit und einem Vorzeichenbit. Der niederrangigere 16 Bit-Ausgang stellt die unteren 16 Bits des Ergebnisses dar und der obere 16-Bit-Ausgang stellt die oberen 14 Bits des Ergebnisses dar. Das Vorzeichenbit wird als Teil eines separaten 3-Bit-Worts geliefert. Die Wirkung dieser Bitanordnung ist, daß immer dann, wenn der höherrangige 16 Bit-Ausgang verwendet wird, zwei Zahlen mit 15 Bit plus einem Vorzeichenbit multipliziert werden, um einen Ausgang von 14 Bit plus einem Vorzeichenbit zu erzeugen. Eine Folge dieser Anordnung ist, daß das eine signifikante Bit der Auflösung jedesmal verloren wird, wenn ein Produkt geliefert wird oder zu einem Eingang zurückgeführt wird. Dieser Datenverlust ist fatal für die Genauigkeit. Das Problem könnte vermieden werden, wenn es möglich wäre, das am meisten signifikante Bit (MSB) der unteren 16 Bits in Verbindung mit den 14 Bits von den oberen 16 Bits zu verwenden. Unglücklicherweise kann dies nicht gemacht werden, wenn die "Rundungs"-Option für den Multiplikator gewählt ist, weil die "Rundungs"-Option immer eine logische 1 zu dem MSB der unteren 16 Bits addiert.
  • Eine Lösung für dieses Problem besteht darin, die höherrangigeren 15 Bits (14 Bits und 1 Vorzeichenbit) zu verwenden und dadurch eine implizite Division durch zwei beim Ausgang zu bewirken. Dies kann kompensiert werden, indem einer der Faktoren vorher einmal für jede Multiplikationsoperation, die nötig ist, um den Term zu entwickeln, mit zwei multipliziert wird In der bevorzugten Ausführungsform wird diese Vormultiplikation bei den Koeffizienten durchgeführt, vorausgesetzt, daß sie nach dem Vormultiplizieren kleiner als 1 bleiben. Die Koeffizienten A&sub1;, A&sub2;, B&sub1; und B&sub2; sind typischerweise größer als 1. Die Koeffizienten A&sub1; und B&sub1; werden als Ganzzahlen verwendet und leiden daher nicht unter dem Erfordernis, daß sie kleiner als 1 sein müssen. Die Koeffizienten B&sub1; und B&sub2; haben eine typische Größe von ungefähr 1. Der Vormultiplikationsfaktor für die Koeffizienten B&sub1; und B&sub2; ist zwei. Daher ist die Größe der Koeffizienten B&sub1; und B&sub2; ungefähr 2. Das Gewährleisten eines Wertes von weniger als 1 wird erreicht, indem die vormultiplizierten Koeffizienten B&sub1; und B&sub2; durch drei geteilt werden und die Operationen B&sub1; x X und B&sub2; x Y jeweils dreimal durchgeführt werden. Das Manipulieren der Koeffizienten B&sub1; und B&sub2; auf diese Weise gestattet unskalierte Werte solcher Koeffizienten von bis zu 1,5.
  • Ein weiterer Fall, in welchem eine implizite Division durch zwei ausgeführt wird, tritt immer dann auf, wenn der Fehlerkorrekturprozessor 52 ein vorangehendes Ergebnis aus einem "Notizblockspeicher" (scratch pad memory) abruft und das Ergebnis mit 1 multipliziert, um es an den Akkumulator abzugeben. Um den "Division durch Zwei"-Effekt zu kompensieren, ist es nötig, das Ergebnis aus dem Notizblockspeicher zweimal abzurufen, das Ergebnis jedesmal mit 1 zu multiplizieren und das Ergebnis zu dem Akkumulator zu addieren.
  • Tabelle 2 zeigt die Vormultiplikationsfaktoren, welche für jeden der Koeffizienten A&sub1;-H&sub1; und A&sub2;-H&sub2; berechnet wurden. Man wird einsehen, daß der Vormultiplikationsprozeß und der Normalisierungs- und Vorskalierungsprozeß, welche mit Bezug auf die Prozeßblöcke 66 und 68 beschrieben wurden, in einer Operation kombiniert und durchgeführt werden können. Tabelle 2 Koeffizienten Typische Werte Multiplikator Typische Ergebnisse
  • Der Prozeßblodk 70 bezeichnet die Umwandlung der Koeffizienten aus dem gebrochenen Binärformat in ein binäres Ganzzahlformat. Die Koeffizienten, welche gemäß den Vorgängen erzeugt wurden, die mit Bezug auf die Prozeßblöcke 66 und 68 beschrieben wurden, sind Zahlen, welche als gebrochene Binärzahlen durch den Multiplikator/Akkumulator interpretiert werden, aber als binäre Ganzzahlen zum Speichern in dem Speicher des Fehlerkorrekturprozessors geliefert werden müssen. Dies ist jedoch für die Koeffizienten A&sub1; und A&sub2; nicht wahr, weil sie direkt als Zweierkomplement-Ganzzahlen abgespeichert werden. Die Umwandlung der Koeffizienten B&sub1;-H&sub1; und B&sub2;-H&sub2; in ein binäres ganzzahliges Format erfordert das Multiplizieren des ausgewählten Koeffizienten mit 32768, das Runden des Resultats zu der nächsten ganzen Zahl und Speichern der Zahl als Zweierkomplement-Ganzzahl mit 16 Bits.
  • Figur 7 ist ein vereinfachtes Blockdiagramm des Fehlerkorrekturprozessors 52. Bezugnehmend auf Figur 7 empfängt der Fehlerkorrekturprozessor 52 die X- und Y-Signale in der Form von Digitalworten mit 16 parallelen Bits, welche über einen X-Eingangssignalspeicher 82 bzw. einen Y-Eingangssignalspeicher 84 übertragen werden. Die X-Signaldaten und die Y-Signaldaten werden in den entsprechenden Eingangssignalspeichern 82 und 84 zu den geeigneten Zeiten durch ein Verriegelungs- und Ausgabe-Steuersignal gespeichert, welches an einem Ausgangsleiter 86 eines Folgesteuerers 88 abgegeben wird. Der Folgesteuerer 88 erzeugt die Takt und Zeitsignale in der richtigen Abfolge, um die verschiedenen Funktionen des Prozessors 52 zu koordinieren und zu steuern, um die Terme der XC- und YC-Transformationsgleichungen zu berechnen und zu akkumulieren.
  • Ein Direktzugriffsspeicher (RAM) 90 speichert die Koeffizienten, welche durch den Datenbus 56 von dem Kalibrierungsdatenfile 54 durch den Systemsteuercomputer 22 übertragen werden (Figur 3). Die Koeffizienten werden in Antwort auf ein Lese/Schreib-Steuersignal, welches am Ausgang 92 des Folgesteuerers 88 erzeugt wird, und auf ein Adressenwort mit acht parallelen Bits, welches von dem Folgesteuerer 88 durch einen Adressbus 93 übertragen wird, in das RAM 90 ein- und aus diesem ausgelesen. Die Kalibrierungsdaten, welche aus dem RAM 90 ausgelesen werden, treten an seinen Ausgangsleitern auf und werden auf einem internen Prozessorbus 94 zu dem "R"-Eingang eines Multiplikators/Akkumulators 98 abgegeben. Der Multiplikator/Akkumulator 98 empfängt an seinem "S"-Eingang die X- und Y-Signaldaten, welche zu verschiedenen Zeiten an den Ausgängen der entsprechenden Eingangssignalspeicher 82 und 84 geliefert werden. Der Multiplikator/Akkumulator 98 arbeitet in Antwort auf die arithmetischen Funktionssteuersignale, welche an den Ausgängen 100 des Folgesteuerers 88 geliefert werden, um die Daten, die an dem "R"- und "S"-Eingang angelegt sind, zu multiplizieren und das Produkt in einem internen "Notizblock"-Speicher abzuspeichern. Das Ergebnis der arithmetischen Operationen des Multiplikators/Akkumulators 98 tritt an seinem "P"- Ausgang auf, welcher mit dem Prozessorbus 94 verbunden ist. Der "P"-Ausgang und der "R"-Eingang des Multiplikators/Akkumulators 98 sind miteinander verbunden, um einen Akkumulator- Rückführungsweg zu bilden.
  • Der Prozessorbus 94 und die Ausgänge der Eingangssignalspeicher 82 und 84 sind mit verschiedenen Eingängen eines Dreizustands-Zweiwegschalters 102 verbunden. Der Dreizustands-Schalter 102 arbeitet in Antwort auf ein Zweiwegschalter-Steuersignal, welches am Ausgang 104 des Steuerers 88 erzeugt wird, um während dem Kalibrieren X- und Y-Positionssignal-Rohdaten von den Eingangssignalspeichern 82 und 84 zu den Ausgangssignalspeichern 106 bzw. 108 abzugeben.
  • Der Folgesteuerer 88 liefert an seinen Ausgängen 86, 92, 100 und 104 Steuersignale in der richtigen Zeitabfolge, um die X- und Y-Signaldaten und die Koeffizienten dem Multiplikator/Akkumulator 98 zuzuführen und seine mathematischen Operationen so zu steuern, daß er die Multiplikations- und Additionsfunktionen durchführen kann, welche notwendig sind, um die XC- und YC-Transformationsgleichungen zu erzeugen. Zum Beispiel erzeugt der Folgesteuerer 88 die notwendigen Signale, um den Koeffizienten B&sub1; von dem RAM 90 und die X-Signalinformation vom Eingangssignalspeicher 82 zu den entsprechenden Eingängen "R" und "S" des Multiplikators/Akkumulators 98 zuzuführen, welcher sie multipliziert und das Produkt festhält. Der Folgesteuerer 88 erzeugt als nächstes die notwendigen Steuersignale, um den Koeffizienten A&sub1; von dem RAM 90 zu dem Eingang "R" des Multiplikators/Akkumulators 98 zuzuführen, welcher A&sub1; zu dem vorangehend berechneten Produkt B&sub1; x X addiert. Der Fehlerkorrekturprozessor 52 besitzt einen Notizblockspeicher, welcher einen Teil des RAM 90 bildet. Die Art, in welcher die Entwicklung der Terme der Transformationsgleichungen durchgeführt wird, und die Architektur des Fehlerkorrekturprozessors 52 erfordern, daß der Notizblockspeicher nur einen Zwischenwert speichert, welcher während der Entwicklung berechnet wird. Der Fehlerkorrekturprozessor 52 kann jedoch auch so konfiguriert sein, daß er, wenn nötig, mehr als einen Zwischenwert speichert. Alle anderen Werte werden in dem Akkumulator gespeichert.
  • Die Synthese der XC-Transformationsgleichung schreitet bei jedem Term des Polynoms in analoger Weise fort, bis jeder der Koeffizienten A&sub1;-H&sub1; aus dem RAM 90 ausgelesen worden ist und alle erforderlichen algebraischen Operationen gemäß der XC- Transformationsgleichung ausgeführt worden sind. Die Verarbeitungsabfolge der Terme während einer solchen Synthese ist diejenige, welche am effizientesten ist, ohne daß ein Überlauf über die Wertegrenzen des Multiplikators/Akkumulators 98 stattfindet. Die Synthese der YC-Transformationsgleichung wird ähnlich in analoger Weise ausgeführt.
  • Die berechneten Ergebnisse, welche an dem Ausgang "P" des Multiplikators/Akkumulators 98 auftreten, werden an die Eingänge des XC-Ausgangssignalspeichers 108 und des YC-Ausgangssignalspeichers 106 abgegeben, welche die XC- und YC-Signale in Antwort auf ein Speichersignal abspeichern, welches am Ausgang 110 des Folgesteuerers 88 geliefert wird. Die XC- und YC-Signale, welche an den Ausgängen der Ausgangssignalspeicher 106 bzw. 108 auftreten, werden an die Eingänge des Galvanometer- Strahlpositionierers 12 (Figur 3) angelegt, welcher den Laserstrahl 14 zu der befohlenen Position auf der Zieloberfläche 18 lenkt.
  • Figur 8 ist eine Karte eines beispielhaften ansprechbaren Feldes 120, welche das Lichtstrahl-Gittermuster zeigt, welches auf der Zieloberfläche 18 durch Einheits-Winkelversetzungen der Galvanometerspiegel 26 und 28 in Antwort auf Einheitsänderungen in den Positionswerten der Befehlsdaten beschrieben wird. Figur 8 zeigt, daß das ansprechbare Feld 120 der Zieloberfläche 18 einen äquidistanten Abstand von 2,5 mm zwischen benachbarten Positionen über praktisch das gesamte ansprechbare Feld aufweist. Dies steht im Gegensatz zu dem ansprechbaren Feld 34 (Figur 2), welches gemäß dem Stand der Technik erzeugt wurde. Die Wirkung des Fehlerkorrekturprozessors 52 beseitigt daher die kissenförmige Aberration und beseitigt dadurch die Nichtlinearität der Strahlpositionierung, welche charakteristisch für Lichtstrahlpositioniersysteme nach dem Stand der Technik ist.
  • Es ist für den Fachmann offensichtlich, daß viele Änderungen bei den oben beschriebenen Einzelheiten der bevorzugten Ausführungsform der vorliegenden Erfindung durchgeführt werden können, ohne von den ihr zugrundeliegenden Prinzipien abzuweichen. Der Umfang der Erfindung sollte daher nur mit Bezug auf die folgenden Ansprüche bestimmt werden.

Claims (12)

1. Lichtstrahlpositionsfehler-Korrektursystem (50), welches umfaßt:
-eine Strahlpositioniereinrichtung (12) zum Empfangen eines Lichtstrahls (14) von einer Lichtquelleneinrichtung (16), wobei die Positioniereinrichtung (12) so angeordnet ist, dar sie den Lichtstrahl (14) zu einer Stelle auf einer Zieloberfläche (18) lenkt,
-eine Positionsdaten-Erzeugungseinrichtung (24), welche von einem Systemsteuercomputer (22) Strahlpositions- Befehlsdaten empfängt, die einer vorgewählten Stelle auf der Zieloberfläche (18) entsprechen, zum Erzeugen von Positionskoordinatensignalen, um den Lichtstrahl (14) zu der vorgewählten Stelle auf der Zieloberfläche (18) zu lenken,
gekennzeichnet durch
-eine Kalibrierdaten-Fileeinrichtung (54) zur selektiven Abgabe von Kalibrierdaten bezüglich von Lichtstrahlpositionierfehlern der Strahlpositioniereinrichtung (12) und
-einen Fehlerkorrektur-Prozessor (52), welcher die Positionskoordinatensignale von der Positionsdaten- Erzeugungseinrichtung (24) und Kalibrierdaten von der Kalibrierdaten-Fileeinrichtung (54) empfängt, um kompensierte Positionskoordinatensignale zu erzeugen, die bezüglich der Lichtstrahlpositionierfehler korrigiert sind, die durch die Strahlpositioniereinrichtung (12) erzeugt werden, und welcher kompensierte Positionssteuersignale an die Strahlpositioniereinrichtung (12) abgibt, so dar die Strahlpositioniereinrichtung (12) dem Lichtstrahl (14) zu der vorgewählten Stelle auf der Zieloberfläche (18) lenkt.
2. System nach Anspruch 1, bei welchem die kompensierten Positionskoordinatensignale ein XC-Signal und ein YC- Signal umfassen und bei dem die Strahlpositioniereinrichtung (12) ein Paar aus ersten und zweiten unabhängig voneinander beweglichen lichtreflektierenden Flächen (26, 28) umfaßt, welche den Lichtstrahl empfangen, und die ersten und zweiten lichtreflektierenden Flächen (26, 28) die XC und YC-Signale empfangen, um den Lichtstrahl (14) in entsprechenden ersten und zweiten orthogonalen Richtungen auf der Zieloberfläche (18) zu bewegen, um den Lichtstrahl (14) an der vorgewählten Stelle zu positionieren.
3. System nach Anspruch 2, bei welchem die Strahlpositioniereinrichtung weiterhin eine Linse (30) enthält.
4. System nach Anspruch 3, bei welchem die Linse (30) von F-θ-Typ ist.
5. System nach Anspruch 1, bei welchem die Lichtquelle (16) einen Laser umfaßt.
6. System nach Anspruch 1, bei welchem die Positionskoordinatensignale ein X-Signal und ein Y-Signal umfassen, welche die momentane befohlene Position des Laserstrahls (14) angeben, und die kompensierten Positionskoordinatensignale ein XC-Signal und ein YC-Signal umfassen, wobei das XC-Signal eine Funktion des Polynoms
B&sub1;X + C&sub1;X² + D&sub1;X³ + E&sub1;Y + F&sub1;Y² + G&sub1;XY + H&sub1;XY²
ist und das YC-Positionssignal eine Funktion des Polynoms
B&sub2;Y + C&sub2;Y² + D&sub2;Y³ + E&sub2;X+ F&sub2;X² + G&sub2;XY + H&sub2;YX²
ist, wobei B&sub1;, C&sub1;, D&sub1;, E&sub1;, F&sub1;, G&sub1;, H&sub1;, B&sub2;, C&sub2;, D&sub2;, E&sub2;, F&sub2;, G&sub2; und H&sub2; Feldkorrekturkoeffizienten mit konstantem Wert darstellen, welche den optischen Lichtlenkeigenschaften der Strahlpositioniereinrichtung (12) entsprechen.
7. System nach Anspruch 6, bei welchem der Term A&sub1; zu dem Polynom addiert wird, von welchem XC eine Funktion ist, und der Term A&sub2; zu dem Polynom addiert wird, von welchem YC eine Funktion ist, wobei die A&sub1;- und A&sub2;-Terme den jeweiligen Versatz der X- bzw. Y-Achse in einem X-Y-Koordinatensystem darstellen.
8. System nach Anspruch 1, bei welchem die Positionskoordinatensignale ein X-Signal und eine Y-Signal umfassen, welche die momentane befohlene Position des Lichtstrahls (14) angeben, und die kompensierten Positionskoordinatensignale ein XC-Signal und ein YC-Signal umfassen, wobei die XC- und YC-Signale proportional zu Polynomen sind, die den Term G&sub1;XY bzw. G&sub2;YX zum Korrigieren der Positionsfehler, die aus der Keilwinkel-Verzerrung herrühren, und den Term H&sub1;XY² bzw. H&sub2;X²Y zum Korrigieren der Positionsfehler, die aus einer Parabelkurven-Verzerrung herrühren, enthalten.
9. System nach Anspruch 1, welches weiterhin eine Kalibrierdaten-Erzeugungseinrichtung enthält, um die vorher gewonnenen Kalibrierdaten bei der Systeminitialisierung zu erzeugen, indem eine tatsächliche Strahlposition auf der Zieloberfläche (18) und die zugehörigen Positionskoordinatensignale bestimmt werden.
10. Verfahren zum Positionieren eines Lichtstrahls (14), welches umfaßt:
- Bereitstellen von Strahlpositions-Befehlsdaten aus einem Systemcomputer (22), wobei die Strahlpositions- Befehlsdaten einer angestrebten Position entsprechen, zu welcher ein Lichtstrahl (14) auf einer Zieloberfläche (18) gelenkt werden soll,
- Konvertieren der Strahlpositions-Befehlsdaten in Positionskoordinatensignale, die der angestrebten Position auf der Zieloberfläche (18) entsprechen, so daß die Positionssignale von einem Strahlpositionierer (12) verwendet werden können,
gekennzeichnet durch
- Ermitteln von Kalibrierdaten, die charakteristisch für die optischen Eigenschaften eines Lichtstrahlpositioniersystems (12) sind, derart, daß das Ermitteln der Kalibrierdaten das Auswählen einer Gruppe von Kalibrierpunkten in einem ansteuerbaren Feld einer Zieloberfläche (18), das Abtasten des Feldes, bis der Lichtstrahl (14) jeden Kalibrierpunkt trifft, und das Bestimmen der Positionskoordinatensignale, die erforderlich sind, um den Lichtstrahl (14) an den Kalibrierpunkten zu positionieren, umfaßt,
- Speichern der Kalibrierdaten in einer Kalibrierdaten- Fileeinrichtung (54)
- Verwenden der gespeicherten Kalibrierdaten, um die Strahlpositions-Befehlsdaten in kompensierte Positionskoordinatensignale umzuwandeln, und
- Abgeben der kompensierten Positionskoordinatensignale an einen Strahlpositionierer (12) , um den Lichtstrahl (14) zu der beabsichtigten Position auf der Zieloberfläche (18) zu lenken.
11. Verfahren nach Anspruch 10, bei dem die kompensierten Positionskoordinatensignale ein XC-Signal und ein YC- Signal umfassen und bei dem der Strahlpositionierer (12) ein Paar aus ersten und zweiten unabhängig voneinander beweglichen lichtreflektierenden Flächen (26, 28) umfaßt, welche den Lichstrahl (14) empfangen, wobei die ersten und zweiten lichtreflektierenden Flächen (26, 28) die XC- und YC-Signale empfangen, um den Lichtstrahl (14) in entsprechende erste und zweite orthogonale Richtungen auf der Zieloberfläche (18) zu bewegen, um den Lichtstrahl (14) an der beabsichtigten Stelle zu positionieren.
12. Verfahren nach Anspruch 10, bei dem der Lichtstrahl (14) durch eine Laserquelle (16) erzeugt wird und bei dem die Strahlpositions-Befehlsdaten von einem ROM geliefert werden.
DE89106746T 1988-04-25 1989-04-14 Lichtstrahl-Positionierungssystem. Expired - Lifetime DE68907260T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/185,414 US4941082A (en) 1988-04-25 1988-04-25 Light beam positioning system

Publications (2)

Publication Number Publication Date
DE68907260D1 DE68907260D1 (de) 1993-07-29
DE68907260T2 true DE68907260T2 (de) 1994-02-17

Family

ID=22680870

Family Applications (1)

Application Number Title Priority Date Filing Date
DE89106746T Expired - Lifetime DE68907260T2 (de) 1988-04-25 1989-04-14 Lichtstrahl-Positionierungssystem.

Country Status (7)

Country Link
US (1) US4941082A (de)
EP (1) EP0339402B1 (de)
JP (1) JP2616990B2 (de)
KR (1) KR0156563B1 (de)
AT (1) ATE91031T1 (de)
DE (1) DE68907260T2 (de)
HK (1) HK1000354A1 (de)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK0495647T3 (da) * 1991-01-17 1997-11-03 United Distillers Plc Dynamisk mærkning med laser
JPH04283792A (ja) * 1991-03-13 1992-10-08 Pioneer Electron Corp 2次元情報表示装置
DE4200632C2 (de) * 1992-01-13 1995-09-21 Maho Ag Verfahren und Vorrichtung zum Bearbeiten von Werkstücken mittels der von einem Laser emittierten Laserstrahlung
US5737122A (en) * 1992-05-01 1998-04-07 Electro Scientific Industries, Inc. Illumination system for OCR of indicia on a substrate
US5231536A (en) * 1992-05-01 1993-07-27 Xrl, Inc. Robust, LED illumination system for OCR of indicia on a substrate
US5945985A (en) * 1992-10-27 1999-08-31 Technology International, Inc. Information system for interactive access to geographic information
US5519809A (en) * 1992-10-27 1996-05-21 Technology International Incorporated System and method for displaying geographical information
US5430666A (en) * 1992-12-18 1995-07-04 Dtm Corporation Automated method and apparatus for calibration of laser scanning in a selective laser sintering apparatus
US5400132A (en) * 1993-10-12 1995-03-21 General Scanning Rectification of a laser pointing device
JP3077539B2 (ja) * 1994-12-22 2000-08-14 松下電器産業株式会社 レーザ加工方法
US5751585A (en) * 1995-03-20 1998-05-12 Electro Scientific Industries, Inc. High speed, high accuracy multi-stage tool positioning system
US5847960A (en) * 1995-03-20 1998-12-08 Electro Scientific Industries, Inc. Multi-tool positioning system
US6190376B1 (en) * 1996-12-10 2001-02-20 Asah Medico A/S Apparatus for tissue treatment
US6025256A (en) * 1997-01-06 2000-02-15 Electro Scientific Industries, Inc. Laser based method and system for integrated circuit repair or reconfiguration
US5938657A (en) * 1997-02-05 1999-08-17 Sahar Technologies, Inc. Apparatus for delivering energy within continuous outline
US6000801A (en) * 1997-05-02 1999-12-14 General Scanning, Inc. Multi-color laser projector for optical layup template and the like
JP4298835B2 (ja) 1999-01-22 2009-07-22 本田技研工業株式会社 自動二輪車の排気装置
KR100755335B1 (ko) 2000-01-11 2007-09-05 일렉트로 싸이언티픽 인더스트리이즈 인코포레이티드 아베 에러 정정 시스템 및 방법
US6791592B2 (en) * 2000-04-18 2004-09-14 Laserink Printing a code on a product
KR100873237B1 (ko) 2000-09-21 2008-12-10 지에스아이 루모닉스 코포레이션 디지털 제어 서보 시스템
US6768100B1 (en) 2000-10-27 2004-07-27 Gsi Lumonics Corporation Continuous position calibration for servo controlled rotary system
US7062091B2 (en) * 2001-01-16 2006-06-13 Applied Precision, Llc Coordinate calibration for scanning systems
US6816294B2 (en) 2001-02-16 2004-11-09 Electro Scientific Industries, Inc. On-the-fly beam path error correction for memory link processing
US7245412B2 (en) * 2001-02-16 2007-07-17 Electro Scientific Industries, Inc. On-the-fly laser beam path error correction for specimen target location processing
US8497450B2 (en) 2001-02-16 2013-07-30 Electro Scientific Industries, Inc. On-the fly laser beam path dithering for enhancing throughput
US7160432B2 (en) 2001-03-14 2007-01-09 Applied Materials, Inc. Method and composition for polishing a substrate
JP2002321072A (ja) * 2001-04-27 2002-11-05 Sunx Ltd レーザマーキング装置
US6892337B1 (en) * 2001-08-22 2005-05-10 Cypress Semiconductor Corp. Circuit and method for testing physical layer functions of a communication network
US6706998B2 (en) 2002-01-11 2004-03-16 Electro Scientific Industries, Inc. Simulated laser spot enlargement
US7006237B2 (en) * 2002-03-26 2006-02-28 Mitsubishi Denki Kabushiki Kaisha Laser beam positioning device for laser processing equipment
KR100491308B1 (ko) * 2002-07-27 2005-05-24 주식회사 이오테크닉스 레이저 장치의 갈바노 스캐너의 드리프트 및 왜곡 보정방법
US6816535B2 (en) * 2002-09-17 2004-11-09 Northrop Grumman Corporation Co-alignment of time-multiplexed pulsed laser beams to a single reference point
US20050088510A1 (en) * 2003-10-24 2005-04-28 Shlomo Assa Low angle optics and reversed optics
US7046267B2 (en) * 2003-12-19 2006-05-16 Markem Corporation Striping and clipping correction
ATE415643T1 (de) * 2004-01-23 2008-12-15 Gsi Group Corp System und verfahren zum optimieren der zeichenmarkierungsleistung
US7241981B2 (en) * 2004-03-05 2007-07-10 Lap Laser Llc Systems and methods for displaying images and processing work pieces
US7363180B2 (en) * 2005-02-15 2008-04-22 Electro Scientific Industries, Inc. Method for correcting systematic errors in a laser processing system
US7394479B2 (en) 2005-03-02 2008-07-01 Marken Corporation Pulsed laser printing
US7315038B2 (en) * 2005-08-26 2008-01-01 Electro Scientific Industries, Inc. Methods and systems for positioning a laser beam spot relative to a semiconductor integrated circuit using a processing target as an alignment target
US7297972B2 (en) 2005-08-26 2007-11-20 Electro Scientific Industries, Inc. Methods and systems for positioning a laser beam spot relative to a semiconductor integrated circuit using a processing target as a metrology target
DE102005047217A1 (de) * 2005-10-01 2007-04-05 Carl Zeiss Jena Gmbh Verfahren zur Steuerung eines optischen Scanners und Steuereinrichtung für einen optischen Scanner
US8057463B2 (en) * 2006-04-07 2011-11-15 Amo Development, Llc. Adaptive pattern correction for laser scanners
KR100866393B1 (ko) * 2006-12-15 2008-11-03 경상대학교산학협력단 평면 스캔 입자화상속도계 기법
WO2009018857A1 (en) * 2007-08-06 2009-02-12 Stephen Hastings Method for reactive optical correction of galvano motor scanning heads
JP5247095B2 (ja) * 2007-09-18 2013-07-24 株式会社村田製作所 レーザ加工におけるレーザ照射位置の補正方法
US8426768B2 (en) 2008-02-20 2013-04-23 Aerotech, Inc. Position-based laser triggering for scanner
US20110210105A1 (en) * 2009-12-30 2011-09-01 Gsi Group Corporation Link processing with high speed beam deflection
US20120132629A1 (en) * 2010-11-30 2012-05-31 Electro Scientific Industries, Inc. Method and apparatus for reducing taper of laser scribes
US10037346B1 (en) 2012-07-25 2018-07-31 Google Llc Time reservations for ensuring consistent reads in a distributed database without logging
CN103008878B (zh) * 2012-12-13 2015-06-17 苏州天弘激光股份有限公司 振镜加工的四坐标系校正方法
US9718146B2 (en) * 2013-06-03 2017-08-01 Mitsubishi Electric Research Laboratories, Inc. System and method for calibrating laser processing machines
EP3226797B1 (de) 2014-12-05 2024-03-20 Convergent Dental, Inc. Systeme zur ausrichtung eines laserstrahls
CN105252911B (zh) * 2015-09-22 2017-04-12 深圳市创鑫激光股份有限公司 一种激光打标的校正方法和装置
US10583668B2 (en) 2018-08-07 2020-03-10 Markem-Imaje Corporation Symbol grouping and striping for wide field matrix laser marking
US11980965B2 (en) 2019-04-23 2024-05-14 General Electric Company Systems and methods for multi-laser head alignment in additive manufacturing systems

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5813916B2 (ja) * 1978-11-20 1983-03-16 日本電信電話株式会社 円弧信号発生方式
DE3046584C2 (de) * 1980-12-11 1984-03-15 Dr.-Ing. Rudolf Hell Gmbh, 2300 Kiel Optisch-mechanischer Abtaster
JPS58224088A (ja) * 1982-06-22 1983-12-26 Nec Corp レ−ザ加工装置
JPS5935892A (ja) * 1982-08-20 1984-02-27 Nec Corp レ−ザ加工装置
JPS59124318A (ja) * 1982-12-30 1984-07-18 Fujitsu Ltd 走査方式
US4711573A (en) * 1983-03-07 1987-12-08 Beckman Instruments, Inc. Dynamic mirror alignment control
FR2553910B1 (fr) * 1983-10-24 1986-03-21 Commissariat Energie Atomique Detecteur thermoelectrique d'alignement d'un faisceau laser et dispositif d'asservissement utilisant ce detecteur, pour l'alignement automatique d'un faisceau laser
DE3339318C2 (de) * 1983-10-29 1995-05-24 Trumpf Gmbh & Co Laser-Bearbeitungsmaschine
JPS61117517A (ja) * 1984-11-13 1986-06-04 Fuji Photo Film Co Ltd ガルバノメ−タの走査速度の補正方法
JPS61123492A (ja) * 1984-11-19 1986-06-11 Toshiba Corp レ−ザ加工装置
FR2580870B1 (fr) * 1985-04-23 1987-09-25 Arnaud Jean Appareil de regulation de caracteristiques d'un faisceau lumineux, notamment d'un laser de puissance
LU86037A1 (fr) * 1985-08-09 1987-03-06 Metallurg Ct Voor De Research Procede de mise en oeuvre d'un faisceau laser et dispositifs y relatife
US4641071A (en) * 1985-09-25 1987-02-03 Canon Kabushiki Kaisha System for controlling drive of a wafer stage
NL194811C (nl) * 1986-01-16 2003-03-04 Mitsubishi Electric Corp Servoschakeling.
JPS62298806A (ja) * 1986-06-18 1987-12-25 Tokico Ltd 工業用ロボツトの教示デ−タ変換方法
JPS6341025A (ja) * 1986-08-06 1988-02-22 Jeol Ltd 電子線描画装置の描画方法

Also Published As

Publication number Publication date
JP2616990B2 (ja) 1997-06-04
EP0339402B1 (de) 1993-06-23
US4941082A (en) 1990-07-10
JPH0222617A (ja) 1990-01-25
HK1000354A1 (en) 1998-03-06
EP0339402A1 (de) 1989-11-02
KR890016408A (ko) 1989-11-29
KR0156563B1 (ko) 1998-12-15
DE68907260D1 (de) 1993-07-29
ATE91031T1 (de) 1993-07-15

Similar Documents

Publication Publication Date Title
DE68907260T2 (de) Lichtstrahl-Positionierungssystem.
DE69103871T2 (de) Eichsystem für einen optischen sensor.
DE102010032840B4 (de) Vorrichtung und Verfahren zum Messen der Position eines Werkzeugmittelpunktes eines Roboters
DE69105476T2 (de) Verfahren zum kalibrieren eines optischen sensors.
DE3936949A1 (de) Kalibrier-verfahren fuer laser-trimmer
DE102012202609A1 (de) Electronic system and method for compensating the dimensional accuracy of a 4-axis cnc machining system using global and local offsets
DE102015219141A1 (de) Verfahren und Vorrichtung zur Vermessung einer numerisch gesteuerten Werkzeugmaschine
JPH0621902B2 (ja) ビームポジショナ
DE3615906A1 (de) Bildinformationserkennungsgeraet
DE102020126816A1 (de) Verfahren zum steuern einer formmessvorrichtung
DE3688187T2 (de) Verfahren zur bearbeitung eines gebietes.
DE112008003863B4 (de) Verfahren zum Erzeugen eines Antriebsmusters für ein Galvano-Scannersystem
DE102018113454A1 (de) Verfahren zum Kalibrieren eines optischen Abtasters und Vorrichtungen davon
EP0484576B1 (de) Vorrichtung zur Unterteilung von analogen periodischen Signalen
DE69206648T2 (de) Verfahren und System zum Abgleich der Einrichtungen an Bord eines Fahrzeugs, unter Verwendung von Mitteln zur Messung des irdischen Schwerefelds
EP4061585B1 (de) Kalibrierung einer impendanzregelung eines robotermanipulators
EP1251329B2 (de) Verfahren zur Arbeitspunktstabilisierung bei berührungsloser 3D-Positionserkennung eines Objektes mittels Digitalkameras
DE102009040194B4 (de) Verfahren zur Kraftregelung
DE4102688A1 (de) Numerisch gesteuertes vorschubgeraet und verfahren zum ausfuehren einer vorschubtaetigkeit
DE102019205679B4 (de) Linearisierung von Eingangssignalen
DE102017203084B4 (de) Verfahren zur Ermittlung von Korrekturdaten zur Korrektur von temperaturabhängigen Messdaten eines optischen Sensors
DE102012206503B4 (de) Verfahren zur Kraftregelung
DE1944929A1 (de) Verfahren und Vorrichtung zum Verschieben eines Elements in UEbereinstimmung mit zwei Variablen
DE102022116153A1 (de) Verfahren zur Korrektur von optischen Weglängenmessfehlern eines Mess-Scanners an einer Laserbearbeitungsoptik
DE102022116899A1 (de) Bearbeitungsvorrichtung und Verfahren

Legal Events

Date Code Title Description
8364 No opposition during term of opposition