-
Halbleiterfertigungseinrichtungen (Mikrochip-Fabriken, FABs) sind Fabriken, in denen integrierte Chips hergestellt werden. Die Herstellung von integrierten Chips wird durchgeführt, indem ein Halbleiterwafer mehreren Fertigungsprozessen (z.B. Ätzschritten, Strukturierungsschritten, Abscheidungsschritten, Implantationsschritten usw.) unterzogen wird, um Millionen oder Milliarden von Halbleitervorrichtungen auf oder innerhalb des Halbleiterwafers auszubilden.
-
Währen solcher Fertigungsprozesse wird der Kontakt zwischen einem integrierten Chip und der Außenwelt minimiert, um Kontaminationsstoffe, die in Kontakt mit dem integrierten Chip geraten, zu minimieren und dadurch die Ausbeute zu verbessern. Zum Beispiel werden integrierte Chips in Reinräumen gefertigt, die sehr geringe Mengen an Kontaminationspartikeln (z.B. Staub) aufweisen, die für einen integrierten Chip schädlich sein könnten. Außerdem wird menschlicher Kontakt mit einem integrierten Chip während Fertigungsprozessen minimiert, indem Wafertransportroboter zum Transport von Halbleitersubstraten von einem Ort zu einem anderen (z.B. zwischen einer Wafer-Kassette und einem Verarbeitungswerkzeug oder umgekehrt) verwendet werden.
-
Die
DE 600 35 164 T2 beschreibt die Bestimmung einer Positionsänderung eines Wafers in Bezug auf eine gewünschte Waferanordnung auf einem Roboter.
Die
DE 696 15 929 T2 beschreibt ein Verfahren zum Kalibrieren eines Transferarms eines Roboters.
Die
EP 1 062 687 B1 befasst sich mit der Positionskalibrierung eines Roboter.
US 2009/0062959 A1 beschreibt ein Verfahren zum Kalibrieren eines Roboters mithilfe einer Kalibriereinrichtung, die relativ zu einem Target (z.B. ein Wafer-Chuck) bewegt wird, um einen Versatz zwischen der Kalibriereinrichtung und dem Zentrum des Targets zu ermitteln. Weiterer Stand der Technik ist beschrieben in der
US 2009/0279989 A1 und in der JP H11-243131 A.
Die Erfindung stellt sich die Aufgabe, ein EFEM-Roboter benutzerfreundlicher zu gestalten. Die Erfindung sieht ein Verfahren gemäß Anspruch 1, ein Verfahren gemäß Anspruch 14, und ein EFEM-Element gemäß Anspruch 16 vor. Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
-
Aspekte der vorliegenden Offenbarung werden am besten aus der nachstehenden ausführlichen Beschreibung verstanden, wenn sie zusammen mit den begleitenden Figuren gelesen wird. Es ist zu beachten, dass gemäß dem Standardverfahren in der Branche verschiedene Merkmale nicht maßstabsgetreu gezeichnet sind. Vielmehr können die Abmessungen der verschiedenen Merkmale zur Klarheit der Erörterung beliebig vergrößert oder verkleinert sein.
- 1 veranschaulicht eine Querschnittsansicht einiger Ausführungsformen eines Blockdiagramms eines Halbleiterverarbeitungssystems, das ein Einrichtungs-Front-End-Modul (equipment front end module; EFEM) umfasst, welches einen EFEM-Roboter aufweist.
- 2A bis 2B veranschaulichen Blockdiagramme, die einige Ausführungsformen des Betriebs des Halbleiterverarbeitungssystems von 1 vor nach einem Auftreten eines Ereignisses zeigen, das eine Position eines EFEM-Roboters modifiziert.
- 3 veranschaulicht ein Blockdiagramm einiger Ausführungsformen eines Elements zum automatischen Anlernen, das ausgelegt ist, um Positionsparameter zu bestimmen, die eine Position eines EFEM-Roboters beschreiben.
- 4A bis 4B veranschaulichen einige Ausführungsformen einer Anwendung des Elements zum automatischen Anlernen von 3, um Positionsparameter, die eine Position eines EFEM-Roboters beschreiben, zu bestimmen.
- 5A bis 5B veranschaulichen einige Ausführungsformen eines EFEM, in dem ein Element zum automatischen Anlernen an verschiedenen Stellen auf einem EFEM-Roboter angeordnet ist.
- 6 veranschaulicht eine Draufsicht auf einige zusätzliche Ausführungsformen eines Halbleiterverarbeitungssystems, das einen EFEM-Roboter innerhalb eines EFEM aufweist, das mehrere Ladestationen und Halbleiterwerkzeuge aufweist.
- 7 veranschaulicht ein Ablaufdiagramm einiger Ausführungsformen eines Verfahrens zum Generieren eines Satzes Bewegungsbefehle, um Positionsänderungen eines EFEM-Roboters zu berücksichtigen.
- 8A bis 8D veranschaulichen einige Ausführungsformen von Blockdiagrammen, die ein Verfahren zum Verwenden eines tragbaren Elements zum automatischen Anlernen zeigen, um einen EFEM-Roboter automatisch neu zu programmieren, um Positionsänderungen des EFEM-Roboters zu berücksichtigen.
-
9 veranschaulicht ein Ablaufdiagramm einiger Ausführungsformen eines Verfahrens zum Verwenden eines tragbaren Elements zum automatischen Anlernen, um einen EFEM-Roboter automatisch neu zu programmieren, um Positionsänderungen des EFEM-Roboters zu berücksichtigen.
-
Die nachstehende Offenbarung stellt viele verschiedene Ausführungsformen, oder Beispiele, zum Implementieren verschiedener Merkmale des vorliegenden Gegenstands bereit. Konkrete Beispiele von Komponenten und Anordnungen sind nachstehend beschrieben, um die vorliegende Offenbarung zu vereinfachen. Diese sind selbstverständlich lediglich Beispiele und sind nicht im beschränkenden Sinne gedacht. Zum Beispiel kann das Ausbilden eines ersten Merkmals über oder auf einem zweiten Merkmal in der nachstehenden Beschreibung Ausführungsformen umfassen, in denen das erste und das zweite Merkmal in direktem Kontakt ausgebildet werden, und kann ebenfalls Ausführungsformen umfassen, in denen zusätzliche Merkmale zwischen dem ersten und dem zweiten Merkmal ausgebildet werden können, so dass das erste und das zweite Merkmal möglicherweise nicht in direktem Kontakt stehen. Außerdem kann die vorliegende Offenbarung Bezugsnummern und/oder -buchstaben in den verschiedenen Beispielen wiederholen. Diese Wiederholung geschieht zum Zweck der Einfachheit und Klarheit und sie schreibt an sich keine Beziehung zwischen den verschiedenen besprochenen Ausführungsformen und/oder Ausgestaltungen vor.
-
Außerdem können hierin Begriffe, die sich auf räumliche Relativität beziehen, wie z.B. „unterhalb“, „unter“, „unterer“, „oberhalb“, „oberer“ und dergleichen, zur Erleichterung der Besprechung verwendet werden, um die Beziehung eines Elements oder Merkmals zu einem anderen Element oder Merkmal (zu anderen Elementen oder Merkmalen), wie in den Figuren dargestellt, zu beschreiben. Die Begriffe, die räumliche Relativität betreffen, sollen verschiedene Ausrichtungen der verwendeten oder betriebenen Vorrichtung zusätzlich zu der in den Figuren dargestellten Ausrichtung umfassen. Die Vorrichtung kann auf eine andere Weise ausgerichtet sein (um 90 Grad gedreht oder anders ausgerichtet) und die hier verwendeten Bezeichnungen, die räumliche Relativität betreffen, können gleichermaßen dementsprechend ausgelegt werden.
-
Um eine Kontaminierung von integrierten Chips zu verhindern, werden häufig Substrattransportroboter verwendet, um Halbleitersubstrate innerhalb von Halbleiterverarbeitungssystemen zu bewegen. Ein Typ eines Substrattransportroboters ist ein Einrichtungs-Front-End-Modul-Roboter (EFEM-Roboter). EFEM-Roboter werden innerhalb eines EFEM angeordnet und sind ausgelegt, um Halbleitersubstrate und/oder Fotomasken innerhalb von Halbleiterverarbeitungssystemen zu transferieren. Zum Beispiel kann ein EFEM-Roboter ein Halbleitersubstrat zwischen einem Aufbewahrungsträger (z.B. einer Pod-Casette, einem FOUP usw.) und einer Vielzahl von Verarbeitungs-, Mess- und/oder Prüfwerkzeugen transportieren. EFEM-Roboter werden im Allgemeinen für jedes Werkzeug in einer Mikrochip-Fabrik installiert, so dass sich in einer großen Mikrochip-Fabrik die Anzahl von EFEM-Robotern auf Hunderte (z.B. 500 oder mehr) belaufen kann.
-
Im Laufe der Zeit werden EFEM-Roboter einer vorbeugenden Wartung unterzogen, um einen zuverlässigen Betrieb aufrechtzuerhalten. EFEM-Roboter werden auch Reparaturen unterzogen, wenn sie nicht ordnungsgemäß funktionieren. Eine vorbeugende Wartung und Reparaturen können eine Position eines EFEM-Roboters innerhalb einer EFEM-Kammer ändern. Da die Bewegungen eines EFEM-Roboters in Bezug auf eine Position des EFEM-Roboters festgelegt sind, können solche Positionsänderungen zu Substratschäden führen, da sie auch den Weg ändern, entlang dessen der EFEM-Roboter Substrate bewegt. Um solche Schäden zu vermeiden, muss ein EFEM-Roboter neu programmiert werden, nachdem eine Positionsänderung aufgetreten ist. Der Neuprogrammierungsprozess besteht typischerweise darin, dass ein Ingenieur einen EFEM-Roboter bedient, um ein Substrat langsam zu bewegen, um neue Bewegungsbefehle zu finden, die einen Weg des EFEM-Roboters definieren. Jedoch kann das Neuprogrammieren von Hunderten von EFEM-Robotern innerhalb einer Mikrochip-Fabrik einen kostspieligen Vorgang darstellen. Zum Beispiel erfordert ein Neuprogrammieren oft einen beträchtlichen Zeitaufwand (z.B. jeweils zwei oder mehr Stunden) eines oder mehrerer Ingenieure. Außerdem lässt das Neuprogrammieren menschliche Fehler zu, die zu Schäden von Halbleitersubstraten führen können.
-
Die vorliegende Offenbarung betrifft in einigen Ausführungsformen ein Verfahren zum automatischen Neuprogrammieren eines EFEM-Roboters, um Positionsänderungen des EFEM-Roboters zu berücksichtigen, und eine zugehörige Vorrichtung. Das Verfahren umfasst ein Bestimmen einer Ausgangsposition eines EFEM-Roboters. Wenn er sich in der Ausgangsposition befindet, ist der EFEM-Roboter derart ausgelegt, dass er gemäß einem Satz Anfangsbewegungsbefehle arbeitet, die mehrere erste Schritte, die in Bezug auf die Ausgangsposition festgelegt sind, definieren. Die mehreren ersten Schritte bewegen den EFEM-Roboter entlang eines Weges, der sich zwischen einer ersten und einer zweiten Position erstreckt. Nachdem sich eine Position des EFEM-Roboters geändert hat, werden Positionsparameter bestimmt. Die Positionsparameter beschreiben eine Änderung zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters, die von der Ausgangsposition verschieden ist. Ein Satz neue Bewegungsbefehle wird auf der Grundlage der Positionsparameter generiert und definiert mehrere zweite Schritte, die in Bezug auf die neue Position festgelegt sind. Der EFEM-Roboter wird konfiguriert, um gemäß dem Satz neue Bewegungsbefehle zu arbeiten, um sich entlang des Weges zwischen der ersten Position und der zweiten Position zu bewegen. Durch Generieren neuer Bewegungsbefehle auf der Grundlage der Positionsparameter, können Positionsänderungen eines EFEM-Roboters (z.B. zwischen der Ausgangsposition und der neuen Position) berücksichtigt werden, ohne das ein Neuprogrammieren durch einen Menschen notwendig ist, wodurch Zeit gespart wird und Schäden an Substraten vermieden werden.
-
1 veranschaulicht eine Querschnittsansicht einiger Ausführungsformen eines Blockdiagramms eines Halbleiterverarbeitungssystems 100, das einen EFEM-Roboter aufweist.
-
Das Halbleiterverarbeitungssystem 100 umfasst ein Halbleiterwerkzeug 102, das mit einem EFEM (Einrichtungs-Front-End-Modul) 103 gekoppelt ist. Das Halbleiterwerkzeug 102 ist derart ausgelegt, dass es eine Operation an einem Substrat durchführt. Zum Beispiel kann in verschiedenen Ausführungsformen das Halbleiterwerkzeug 102 ein Verarbeitungswerkzeug (z.B. ein Ätzwerkzeug, ein Lithografie-Werkzeug usw.), das derart ausgelegt ist, dass es einen Fertigungsvorgang (z.B. einen Ätz-, einen Strukturierungsvorgang usw.) an einem Substrat durchführt, ein Messwerkzeug, das ausgelegt ist, um einen Messvorgang an einem Substrat durchzuführen, und/oder ein Prüfwerkzeug, das derart ausgelegt ist, dass es einen Prüfvorgang an einem Substrat durchführt, sein. Das EFEM 103 umfasst eine EFEM-Kammer 104 und einen EFEM-Roboter 112. Die EFEM-Kammer 104 umfasst ein geschlossenes Gehäuse, das mit dem Halbleiterwerkzeug 102 in Kommunikation steht. Die EFEM-Kammer 104 ist mit einer Ladestation 106 gekoppelt, die ausgelegt ist, um einen Träger 108, der ein oder mehrere Substrate 110 hält, aufzunehmen. In verschiedenen Ausführungsformen kann der Träger 108 einen FOUP (Front Opening Unified Pod, einen nach vorn öffnenden Einheitsbehälter), eine Wafer-Cassette oder dergleichen umfassen. In einigen Ausführungsformen kann das eine oder die mehreren Substrate 110 Halbleiterwafer (z.B. 200-mm-Wafer, 300-mm-Wafer, 450-mm-Wafer usw.) umfassen.
-
Der EFEM-Roboter 112 wird innerhalb der EFEM-Kammer 104 angeordnet. Der EFEM-Roboter 112 umfasst einen Roboterarm 114, der ein Substrataufnahmeelement 116 (z.B. ein Waferblatt) aufweist, welches zum Halten eines von dem einen oder den mehreren Substraten 110 ausgelegt ist. Der Roboterarm 114 ist mit einer Steuerung 118 gekoppelt, die eine Bewegung des Roboterarms 114 innerhalb der EFEM-Kammer 104 steuert. Die Steuerung 118 ist derart ausgelegt, dass sie das Substrataufnahmeelement 116 entlang einer Folge von Schritten 119, die einen Weg 120 zwischen einer ersten Position und einer zweiten Position definieren, bewegt. In einigen Ausführungsformen erstreckt sich der Weg 120 zwischen dem Träger 108 und einem Einlass 122 des Halbleiterwerkzeugs 102. Die Folge von Schritten 119 ist in Bezug auf den EFEM-Roboter 112 festgelegt. Da die Folge von Schritten 119 in Bezug auf den EFEM-Roboter 112 festgelegt ist, verursacht eine Positionsänderung des EFEM-Roboters 112 eine Änderung des durch die Folge von Schritten 119 definierten Wegs 120. In einigen Ausführungsformen ist die Folge von Schritten 119 durch eine Folge von Bewegungsbefehlen definiert, die die Steuerung 118 betätigen, um den Roboterarm 114 zu bewegen.
-
Ein Element zum automatischen Anlernen 124 wird ebenfalls innerhalb der EFEM-Kammer 104 angeordnet. Das Element zum automatischen Anlernen 124 umfasst einen oder mehrere Sensoren, die ausgelegt sind, um Positionsparameter zu bestimmen, die eine Änderung der Position des EFEM-Roboters 112 zwischen einer Ausgangsposition und einer neuen Position beschreiben. In einigen Ausführungsformen können die Positionsparameter die Änderung der Position des EFEM-Roboters 112 beschreiben, indem eine Änderung einer Position einer selben Komponente des EFEM-Roboters 112 in Bezug auf eine Position einer an der EFEM-Kammer 104 angeordneten Justiermarke 126 bestimmt wird.
-
Die Positionsparameter können verwendet werden, um die Schritte 119, die den Weg 120 definieren, auf eine Weise anzupassen, die Änderungen der Position des EFEM-Roboters 112 (z.B. aufgrund von Zusammenstößen, einer vorbeugenden Wartung usw.) berücksichtigt. Zum Beispiel können die Positionsparameter verwendet werden, um eine Folge von Bewegungsbefehlen, die die Schritte 119 definieren, anzupassen, um die Positionsänderungen zu berücksichtigen. Durch Verwenden der Positionsparameter zum Anpassen der Schritte 119, die den Weg 120 definieren, kann der EFEM-Roboter 112 automatisch neu programmiert werden, um Positionsänderungen des EFEM-Roboters 112 zu berücksichtigen, ohne die Zeitressourcen zu erweitern und/oder Produktschäden, die mit dem Neuprogrammieren des EFEM-Roboters 112 durch einen Menschen assoziiert sind, zu riskieren.
-
2A bis 2B veranschaulichen Blockdiagramme, die einige Ausführungsformen des Betriebs des Halbleiterverarbeitungssystems 100 von 1 vor nach einem Auftreten eines Ereignisses zeigen, das eine Position eines EFEM-Roboters modifiziert.
-
2A veranschaulicht ein Blockdiagramm 200, das einen Betrieb eines EFEM-Roboters 112 vor dem Auftreten eines Ereignisses, das eine Position des EFEM-Roboters 112 modifiziert (z.B. eines Zusammenstoßes, eines Erdbebens, einer vorbeugenden Wartung usw.), zeigt. Wie im Blockdiagramm 200 dargestellt, ist der EFEM-Roboter 112 beim Betrieb derart ausgelegt, dass er ein Substrat 110 (z.B. einen Halbleiterwafer) entlang eines Weges 120 bewegt, der sich zwischen einer ersten Position 202 und einer zweiten Position 204 erstreckt, die in Bezug auf einen an eine EFEM-Kammer 104 geknüpften festgelegten Referenzpunkt (0, 0) festgelegt sind.
-
In einigen Ausführungsformen ist der EFEM-Roboter 112 derart ausgelegt, dass er das Substrat 110 gemäß einer Folge von Anfangsbewegungsbefehlen bewegt, die einen Roboterarm 114 des EFEM-Roboters 112 entlang mehrerer erster Schritte 206 bewegen, die in Bezug auf eine Position 201 auf dem EFEM-Roboter 112 festgelegt sind. Wenn zum Beispiel der EFEM-Roboter 112 eine Ausgangsposition 208 (x0 , z0 ) in Bezug auf den festgelegten Referenzpunkt (0, 0) aufweist, veranlasst die Folge von Anfangsbewegungsbefehlen den EFEM-Roboter 112 dazu, den Roboterarm 114 entlang mehrerer ersten Schritte 206 zu bewegen, die in Bezug auf die Ausgangsposition (xo , z0 ) festgelegt sind. In einigen Ausführungsformen empfängt während eines ersten der mehreren ersten Schritte 206 der EFEM-Roboter 112 das Substrat 110 an einer ersten Position (x1 , z1 ). Während eines zweiten der mehreren ersten Schritte 206 bewegt der EFEM-Roboter 112 das Substrat 110 an eine zweite Position (x2 , z1 ). Die erste Position (x1 , z1 ) ist von der Ausgangsposition (x0 , z0 ) um einen ersten Abstand von (x1-x0 , z1-z0 ) getrennt und die zweite Position (x2 , z1 ) ist von der Ausgangsposition 208 (x0 , z0 ) um einen zweiten Abstand (x2-x0 , z1-z0 ) getrennt. In einigen Ausführungsformen bewegen die mehreren ersten Schritte 206 das Substrat 110 entlang des Wegs 120 vom Träger 108, der an der ersten Position 202 (x1 , z1 ) angeordnet ist, zu einem Einlass 122 eines Halbleiterwerkzeugs 102, das an der zweiten Position 204 (x5 , z2 ) angeordnet ist, ohne das Substrat 110 zu beschädigen (z.B. das Substrat zu kratzen).
-
2B veranschaulicht ein Blockdiagramm 210 des EFEM-Roboters 112, nachdem ein Ereignis eine Position des EFEM-Roboters 112 von der Ausgangsposition (x0 , z0 ) zu einer neuen Position (x0+δ, z0) änderte. Die Folge von Anfangsbewegungsbefehlen ist weiterhin derart ausgelegt, dass sie den EFEM-Roboter 112 dazu veranlasst, den Roboterarm 114 des EFEM-Roboters 112 entlang der mehreren ersten Schritte 206 zu bewegen, die in Bezug auf die Position 201 auf dem EFEM-Roboter 112 festgelegt sind. Da sich jedoch die Position des EFEM-Roboters 112 geändert hat, bewegt die Folge von Anfangsbewegungsbefehlen das Substrat 110 nicht mehr entlang des Wegs 120, der sich zwischen der ersten Position 202 (x1 , z1 ) und der zweiten Position 204 (x5 , z2 ) erstreckt. Wenn sich der EFEM-Roboter 112 in der neuen Position 212 (x0+δ, z0) befindet, veranlasst die Folge von Anfangsbewegungsbefehlen den EFEM-Roboter 112 vielmehr dazu, ein Substrat 110 entlang eines Weges zu bewegen, der sich zwischen (x0 , z0 ) und (x0+δ, z0) erstreckt, wodurch sie zu einem Fehler in der Bewegung des Substrats 110 führt. Der Fehler kann kostspielige Schäden (z.B. Kratzen) an dem Substrat 110 verursachen.
-
Um diesen Fehler zu berücksichtigen, ist ein Element zum automatischen Anlernen 124 derart ausgelegt, dass es Positionsparameter bestimmt, die eine Änderung zwischen der Ausgangsposition (208 von 2A) und der neuen Position 212 des EFEM-Roboters 112 beschreiben. Das Element zum automatischen Anlernen 124 ist ferner ausgelegt, um die Positionsparameter zum Generieren einer Folge neuer Bewegungsbefehle zu verwenden. In einigen Ausführungsformen kann das Element zum automatischen Anlernen 124 außerdem die Ausgangsposition (208 von 2A) des EFEM-Roboters 112 verwenden, um die Folge neuer Bewegungsbefehle zu generieren. Die Folge neuer Bewegungsbefehle berücksichtigt Positionsänderungen des EFEM 112, um Trennungen (d.h. Abstände) zwischen dem Punkt 201 auf dem EFEM-Roboter 112 und Schritten des EFEM-Roboters 112 zu ändern.
-
In einigen Ausführungsformen kann die Folge von Anfangsbewegungsbefehlen die mehreren ersten Schritte 206 definieren, die vom Punkt 201 des EFEM-Roboters, der die Ausgangsposition 208 (xo , z0 ) aufweist, durch mehrere erste Abstände getrennt sind, während die Folge neuer Bewegungsbefehle mehrere zweite Schritte 214 definieren kann, die vom Punkt 201 des EFEM-Roboters 112, der die neue Position (x0+δ, z0 ) aufweist, um mehrere zweite Abstände, die von den mehreren ersten Abständen verschieden sind, getrennt sind. Die Änderungen der Trennung zwischen dem Punkt 201 auf dem EFEM-Roboter 112 und den Schritten veranlassen, dass sie mehreren zweiten Schritte 214 das Substrat 110 entlang des Weges 120 bewegen, der das Substrat 110 nicht beschädigt.
-
Zum Beispiel empfängt während eines ersten der mehreren zweiten Schritte 214 der EFEM-Roboter 112 das Substrat 110 an der ersten Position 202 (x1 , z1 ). Die erste Position 202 (x1 , z1 ) ist von der neuen Position 212 (x0+δ, z0) durch einen ersten Abstand (x1-(x0+δ), z1-z0) = (x1-x0-δ, z1-z0) getrennt. Während eines zweiten der mehreren zweiten Schritte 214 bewegt der EFEM-Roboter 112 das Substrat 110 an eine zweite Position 204 (x2 , z1 ). Die zweite Position 204 ist von der neuen Position 212 (x0+δ, z0) durch einen zweiten Abstand (x2-(x0+δ), z1-z0) = (x2-x0-δ, z1-z0) getrennt.
-
Durch Betreiben des Elements zum automatischen Anlernen 124, um Positionsänderungen des EFEM-Roboters 112 zu bestimmen, ist daher das Element zum automatischen Anlernen 124 in der Lage, einen Satz neuer Bewegungsbefehle automatisch (d.h. ohne eine manuelle Anpassung) zu generieren, die in der Lage sind, den Betrieb des EFEM-Roboters 112 zu ändern, um Änderungen, die während eines Ereignisses, das eine Position des EFEM-Roboters 112 modifiziert, auftreten können, zu berücksichtigen.
-
3 veranschaulicht ein Blockdiagramm einiger Ausführungsformen eines Elements zum automatischen Anlernen 300 (das z.B. dem Element zum automatischen Anlernen 124 entspricht), das ausgelegt ist, um Positionsparameter zu bestimmen, die eine Position eines EFEM-Roboters beschreiben.
-
Das Element zum automatischen Anlernen 300 umfasst ein Gehäuse 302, das eine Positionsmesseinheit 303 umgibt, die ausgelegt ist, um Messungen vorzunehmen, die Positionen eines EFEM-Roboters (z.B. 112 von 1) an verschiedenen Positionen innerhalb einer EFEM-Kammer (z.B. 104 von 1) beschreiben. Die Messungen können verwendet werden, um eine Ausgangsposition des EFEM-Roboters innerhalb der EFEM-Kammer und Positionsparameter, die eine Änderung zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters innerhalb der EFEM-Kammer beschreiben, zu bestimmen.
-
In einigen Ausführungsformen kann die Positionsmesseinheit 303 eine Abbildungsvorrichtung 304 und eine Entfernungsmessvorrichtung 306 umfassen. Die Abbildungsvorrichtung 304 ist derart ausgelegt, dass sie ein oder mehrere Bilder erfasst, die der EFEM-Kammer von verschiedenen Positionen des EFEM-Roboters innerhalb der EFEM-Kammer entsprechen. Aus diesen Bildern können ein erster Positionsparameter p1 und ein zweiter Positionsparameter p2 bestimmt werden. Der erste Positionsparameter p1 beschreibt eine Änderung der Position des EFEM-Roboters in einer ersten Richtung (z.B. in einer x-Koordinate). Der zweite Positionsparameter p2 beschreibt eine Änderung der Position des EFEM-Roboters in einer zweiten Richtung (z.B. in einer z-Koordinate). Die erste Richtung ist senkrecht zur zweiten Richtung.
-
Die Entfernungsmessvorrichtung 306 ist derart ausgelegt, dass sie ein oder mehrere Abstände zwischen der Entfernungsmessvorrichtung 306 und der EFEM-Kammer an verschiedenen Positionen des EFEM-Roboters innerhalb der EFEM-Kammer misst. Aus dem einen oder den mehreren Abständen kann ein dritter Positionsparameter p3 bestimmt werden, um eine Positionsänderung des EFEM-Roboters in einer dritten Richtung (z.B. in einer y-Koordinate), die zur ersten Richtung und zur zweiten Richtung senkrecht ist, zu beschreiben. In einigen Ausführungsformen kann ein vierter Positionsparameter p4 , der eine Änderung einer Ausrichtung des EFEM-Roboters beschreibt, auch aus dem einen oder den mehreren Abständen bestimmt werden. In anderen Ausführungsformen kann das Element zum automatischen Anlernen 300 eine Ausrichtungsmessvorrichtung (nicht dargestellt) umfassen, die innerhalb des Gehäuses 302 angeordnet ist und die von der Entfernungsmessvorrichtung 306 getrennt und verschieden ist.
-
In einigen Ausführungsformen kann die Abbildungsvorrichtung 304 eine CCD-Kamera (Charge Coupled Device) umfassen. In einigen Ausführungsformen kann die Entfernungsmessvorrichtung 306 ein Paar Laser 308a und 308b und zugehörige Sensoren 310a und 310b umfassen. Das Paar Laser umfasst einen ersten Laser 308a und einen zweiten Laser 308b, die ausgelegt sind, um Laserstrahlen zu erzeugen, die sich entlang der dritten Richtung erstrecken. Der erste Laser 308a und er zweite Laser 308b sind entlang der ersten Richtung und/oder der zweiten Richtung getrennt.
-
In einigen Ausführungsformen kann das Element zum automatischen Anlernen 300 ferner ein Speicherelement 312 und ein Verarbeitungselement 314 umfassen. Das Speicherelement 312 ist derart ausgelegt, dass es Daten speichert, die eine oder mehrere Positionen des EFEM-Roboters beschreiben. In einigen Ausführungsformen kann das Speicherelement 312 Daten speichern, die eine Ausgangsposition des EFEM-Roboters und/oder eine neue Position des EFEM-Roboters beschreiben. In verschiedenen Ausführungsformen kann das Speicherelement 312 einen flüchtigen Speicher (z.B. SRAM, DRAM usw.) und/oder einen nicht flüchtigen Speicher (z.B. Flach usw.) umfassen.
-
Das Verarbeitungselement 314 ist derart ausgelegt, dass es die Bilder von der Abbildungsvorrichtung 304, die Abstände von der Entfernungsmessvorrichtung 306 und/oder die Daten, die die Ausgangsposition des EFEM-Roboters beschreiben, von dem Speicherelement 312 empfängt. Das Verarbeitungselement 314 ist derart ausgelegt, dass es aus den Bildern, den Abständen und/oder den Daten die Positionsparameter p1 bis p4 bestimmt. Das Verarbeitungselement 314 ist ferner derart ausgelegt, dass es einen neuen Satz Bewegungsbefehle auf der Grundlage der Positionsparameter p1 bis p4 generiert. Der neue Satz Bewegungsbefehle wird verwendet, um den Betrieb des EFEM-Roboters zu modifizieren, um Änderungen der Position des EFEM-Roboters zu berücksichtigen. In einigen Ausführungsformen kann der neue Satz Bewegungsbefehle generiert werden, indem der Satz Anfangsbewegungsbefehle auf der Grundlage der Positionsparameter modifiziert wird. In einigen Ausführungsformen kann der neue Satz Bewegungsbefehle aus der Ausgangsposition und den Positionsparameter generiert werden.
-
Der Satz neue Bewegungsbefehle kann mehrere neue Schritte beschreiben, die einen Weg zwischen einer ersten Position (z.B. Träger 108 von 1) und einer zweiten Position (z.B. Einlass 122 des Halbleiterwerkzeugs 102 von 1) definieren. In einigen Ausführungsformen kann der Satz neue Bewegungsbefehle durch eine Kommunikationsschnittstelle 316 an eine Steuerung (z.B. Steuerung 118 von 1) bereitgestellt werden, die zum Steuern einer Bewegung des EFEM-Roboters ausgelegt ist. In anderen Ausführungsformen kann der Satz neue Bewegungsbefehle durch die Kommunikationsschnittstelle 316 an ein Programmierhandgerät bereitgestellt werden, das für eine Verbindung mit der Steuerung ausgelegt ist. In einigen Ausführungsformen kann die Kommunikationsschnittstelle 316 eine drahtlose Schnittstelle sein, die ein Transceiverelement aufweist, das zum drahtlosen Übertragen von Daten ausgelegt ist. In einigen Ausführungsformen kann das Element zum automatischen Anlernen 300 ferner ein Kopplungselement 318 umfassen, das zum Koppeln des Gehäuses 302 mit einer Fläche einer EFEM-Kammer ausgelegt ist.
-
Obwohl das Element zum automatischen Anlernen 300 von 3 derart beschrieben wurde, dass es ein Verarbeitungselement 314 aufweist, welches zum Generieren der Positionsparameter und/oder Bewegungsbefehle ausgelegt ist, können in anderen Ausführungsformen die Positionsparameter und/oder Bewegungsbefehle durch ein Verarbeitungselement bestimmt werden, das sich außerhalb des Elements zum automatischen Anlernen 300 befindet. Zum Beispiel kann in einigen alternativen Ausführungsformen das Element zum automatischen Anlernen 300 derart ausgelegt sein, dass es das Bild und den einen oder die mehreren Abstände an ein Programmierhandgerät oder eine Steuerung bereitstellt, die zum Bestimmen des neuen Satzes Bewegungsbefehle daraus ausgelegt sind. In solchen Ausführungsformen kann das Programmierhandgerät oder die Steuerung ein Speicherelement umfassen, das zum Speichern von Daten ausgelegt ist, die die Ausgangsposition des EFEM-Roboters beschreiben.
-
4A bis 4B veranschaulichen Diagramme 400 und 406, die einige Ausführungsformen einer Anwendung des Elements zum automatischen Anlernen von 3 zum Bestimmen von Positionsparametern eines EFEM-Roboters zeigen
-
Wie in Diagramm 400 von 4A dargestellt, umfasst ein Element zum automatischen Anlernen 300 eine Abbildungsvorrichtung 304, die zum Erfassen von Bildern einer EFEM-Kammer 104 ausgelegt ist. In einigen Ausführungsformen ist die Abbildungsvorrichtung 304 derart ausgelegt, dass sie die Bilder aus einer Richtung, die senkrecht zu einer Fläche der EFEM-Kammer 104, auf der sich eine Justiermarke befindet, ist, erfasst, was zu einer Draufsicht auf die Justiermarke innerhalb einer sich in x-Richtung und z-Richtung erstreckenden Ebene führt. Innerhalb der Draufsicht auf die Justiermarke kann ein Bild, das eine Position der Justiermarke 402 an einer Ausgangsposition eines EFEM-Roboters (in Bezug auf die EFEM-Kammer 104) zeigt, mit einem Bild verglichen werden, das die Justiermarke 404 an einer neuen Position des EFEM-Roboters (in Bezug auf die EFEM-Kammer 104') zeigt, um einen ersten Positionsparameter p1 , der eine Änderung der Position des EFEM-Roboters entlang der x-Richtung beschreibt, und einen zweiten Positionsparameter p2 , der eine Änderung der Position des EFEM-Roboters entlang der z-Richtung beschreibt, zu bestimmen.
-
Wie in Diagramm 406 von 4B dargestellt, umfasst das Element zum automatischen Anlernen 300 ferner eine Entfernungsmessvorrichtung 306, die zum Messen von Abständen d1 und d2 entlang einer y-Richtung ausgelegt ist. Abstände zwischen dem Element zum automatischen Anlernen 300 und der EFEM-Kammer 104 an einer Ausgangsposition des EFEM-Roboters (in Bezug auf die EFEM-Kammer 104) können mit Abständen zwischen dem Element zum automatischen Anlernen 300 und der EEFEM-Kammer 104 an einer neuen Position des EFEM-Roboters (in Bezug auf die EFEM-Kammer 104') verglichen werden, um einen dritten Positionsparameter p3 zu bestimmen, der eine Änderung der Position des EFEM-Roboters entlang der y-Richtung beschreibt.
-
In einigen Ausführungsformen kann die Entfernungsmessvorrichtung 306 einen ersten Laser 308a umfassen, der von einem zweiten Laser 308b durch eine Trennung s getrennt ist. In solchen Ausführungsformen ist der erste Laser 308a derart ausgelegt, dass er einen ersten Laserstrahl 309a sendet, der auf die EFEM-Kammer 104 auftrifft, wenn sich der EFEM-Roboter in einer ersten Position befindet. Der erste Laserstrahl 309a wird von der EFEM-Kammer 104 an einen ersten Sensor 310a reflektiert, der ausgelegt ist, um einen ersten Abstand d1 von der EFEM-Kammer 104 zu bestimmen. Der zweite Laser 308b ist ausgelegt, um einen zweiten Laserstrahl 309b zu senden, der auf die EFEM-Kammer 104 auftrifft, wenn sich der EFEM-Roboter in einer zweiten Position befindet. Der zweite Laserstrahl 309b wird von der EFEM-Kammer 104 an einen zweiten Sensor 310b reflektiert, der ausgelegt ist, um einen zweiten Abstand d2 von der EFEM-Kammer 104 zu bestimmen.
-
Außerdem impliziert ein Unterschied zwischen dem ersten Abstand d1 und dem zweiten Abstand d2 , dass sich der EFEM-Roboter gedreht hat (was als eine relative Ausrichtung Θ der EFEM-Kammer dargestellt ist). Daher kann in einigen Ausführungsformen eine Ausrichtung Θ des EFEM-Roboters als eine Funktion des ersten Abstands d1 und des zweiten Abstands d2 berechnet werden. Wenn zum Beispiel der erste Abstand d1 einem zweiten Abstand d2 gleicht, ist der EFEM-Roboter in einer Ausrichtung Θ = 0° ausgerichtet. Wenn ein Unterschied des ersten Abstands d1 und des zweiten Abstands d2 der Trennung s gleicht, ist der EFEM-Roboter 112 in einer Ausrichtung of Θ = 45 ° ausgerichtet. In einigen Ausführungsformen kann die Ausrichtung Θ gleich tan-1(d1-d2/s) sein.
-
In verschiedenen Ausführungsformen kann das Element zum automatischen Anlernen ausgelegt sein, um an verschiedenen Positionen in der EFEM-Kammer und/oder auf dem EFEM-Roboter angeordnet zu werden. 5A bis 5B zeigen einige Beispiele von Positionen, an denen das Element zum automatischen Anlernen auf einem EFEM-Roboter angeordnet werden kann. Es versteht sich, dass die in 5A bis 5B gezeigten Position nicht beschränkend sind, sondern lediglich Beispiele der vielen Positionen darstellen, an denen das Element zum automatischen Anlernen auf einem EFEM-Roboter angeordnet werden kann.
-
5A bis 5B veranschaulichen einige Ausführungsformen eines Halbleiterverarbeitungssystems 500, bei dem das Element zum automatischen Anlernen auf einem EFEM-Roboter angeordnet ist.
-
Das Halbleiterverarbeitungssystem 500 umfasst einen EFEM-Roboter 112 innerhalb einer EFEM-Kammer 104. Der EFEM-Roboter 112 weist einen Roboterarm 114 auf, der mit einer Steuerung 118 gekoppelt ist. Der Roboterarm 114 weist mehrere Armsegmente 504a bis 504c auf, die zum Bewegen um mehrere verschiedene Achsen 506a bis 506c ausgelegt sind. Zum Beispiel kann sich ein erstes Armsegment 504a entlang einer ersten Achse 506a bewegen, während sich ein zweites Armsegment 504b entlang einer zweiten Achse 506b, die von der ersten Achse 506a versetzt ist, bewegen kann. Die mehreren Armsegmente 504a bis 504c sind mit einer Basis 502 gekoppelt, die zum Bewegen entlang der z-Richtung ausgelegt ist.
-
Eine Justiermarke 126 ist auf einer Innenfläche der EFEM-Kammer 104 angeordnet. In verschiedenen Ausführungsformen kann das Element zum automatischen Anlernen 124 entlang eines Bodens, einer Seitenwand oder einer Decke der EFEM-Kammer 104 angeordnet sein. Das Element zum automatischen Anlernen 124 ist auf dem EFEM-Roboter 112 angeordnet und weist zur Justiermarke 126 auf der EFEM-Kammer 104 hin. In verschiedenen Ausführungsformen kann das Element zum automatischen Anlernen 124 an verschiedenen Stellen auf dem EFEM-Roboter 112 angeordnet werden. Zum Beispiel kann in einigen in 5A dargestellten Ausführungsformen das Element zum automatischen Anlernen 124 auf einem Substrataufnahmeelement 116 (z.B. einem Waferblatt) des EFEM-Roboters 112 angeordnet sein. In anderen in 5B dargestellten Ausführungsformen kann das Element zum automatischen Anlernen 124 auf einem der mehreren Armsegmente 504a bis 504c des EFEM-Roboters 112 angeordnet sein. In einer noch anderen Ausführungsform (nicht dargestellt) kann das Element zum automatischen Anlernen 124 auf der Steuerung 118 des EFEM-Roboters 112 angeordnet sein.
-
Obwohl 1 bis 5B das Element zum automatischen Anlernen derart beschrieben haben, dass es Bewegungsbefehle für einen einzelnen Substratweg anpasst, versteht es sich, dass das Element zum automatischen Anlernen derart ausgelegt sein kann, dass es Bewegungsbefehle für mehrere Wege innerhalb eine einzelnen EFEM-Kammer anpasst. Zum Beispiel veranschaulicht 6 eine Draufsicht auf einige zusätzliche Ausführungsformen eines Halbleiterverarbeitungssystems, das einen EFEM-Roboter aufweist, der zum Bewegen von Substraten entlang mehrerer Wege, die sich zwischen verschiedenen Halbleiterwerkzeugen und Ladestationen erstrecken, ausgelegt ist.
-
Das Halbleiterverarbeitungssystem 600 umfasst mehrere Halbleiterwerkzeuge 102a bis 102b, die mit einer EFEM-Kammer 104 gekoppelt sind, welche mehrere Ladestationen 106a bis 106c aufweist, die jeweils zum Aufnehmen eines von mehreren Trägern 108a bis 108c, die ein oder mehrere Substrate 110 halten, ausgelegt sind. Ein EFEM-Roboter 112 wird innerhalb der EFEM-Kammer 104 angeordnet. Der EFEM-Roboter 112 ist derart ausgelegt, dass er das eine oder die mehreren Substrate 110 entlang verschiedener Wege 120a bis 120c bewegt, die sich zwischen den mehreren Trägern 108a bis 108c und mehreren Halbleiterwerkzeugen 102a bis 102b erstrecken. Zum Beispiel kann der EFEM-Roboter 112 derart ausgelegt sein, dass er Substrate entlang eines ersten Wegs 120a, der sich zwischen einem ersten Träger 108a und einem ersten Halbleiterwerkzeug 102a erstreckt, eines zweiten Weges 120b, der sich zwischen einem zweiten Träger 108b und dem ersten Halbleiterwerkzeug 102a erstreckt, und/oder eines dritten Weges 120c, der sich zwischen einem dritten Träger 108c und einem zweiten Halbleiterwerkzeug 102b erstreckt, bewegt.
-
Die verschiedenen Wege 102a bis 102c werden durch verschiedene Sätze Bewegungsbefehle definiert. Zum Beispiel wird der erste Weg 120a durch einen ersten Satz Bewegungsbefehle definiert, der zweite Weg 120b wird durch einen zweiten Satz Bewegungsbefehle definiert, der von dem ersten Satz Bewegungsbefehle verschieden ist, und der dritte Weg 120c wird durch einen dritten Satz Bewegungsbefehle definiert, der von dem ersten Satz oder dem zweiten Satz Bewegungsbefehle verschieden ist. Die verschiedenen Sätze Bewegungsbefehle definieren jeweils eine Folge von Schritten, die in Bezug auf eine Position des EFEM-Roboters 112 festgelegt ist.
-
Das Element zum automatischen Anlernen 124 ist derart ausgelegt, dass es Positionsparameter bestimmt, die Positionsänderungen des EFEM-Roboters 112 beschreiben. Die Positionsparameter können verwendet werden, um den ersten Satz Bewegungsbefehle, die den Weg 120 definieren, anzupassen, um Positionsänderungen des EFEM-Roboters 112 (z.B. Aufgrund von Zusammenstößen, einer vorbeugenden Wartung usw.) zu berücksichtigen. Die Positionsparameter können auch verwendet werden, um den zweiten Satz Bewegungsbefehle, die den zweiten Weg 120b definieren, und den dritten Satz Bewegungsbefehle, die den dritten Weg 120c definieren, anzupassen, um Positionsänderungen des EFEM-Roboters 112 zu berücksichtigen.
-
7 veranschaulicht ein Ablaufdiagramm einiger Ausführungsformen eines Verfahrens 700 zum Generieren eines Satzes Bewegungsbefehle, um Positionsänderungen eines EFEM-Roboters zu berücksichtigen.
-
Obwohl die offenbarten Verfahren (z.B. Verfahren 700 und 900) als eine Reihe von Vorgängen oder Ereignissen hier veranschaulicht und beschrieben werden, versteht es sich, dass die dargestellte Reihenfolge derartiger Vorgänge und Ereignisse nicht in beschränkendem Sinne ausgelegt werden soll. Neben jenen hier dargestellten und/oder beschriebenen können zum Beispiel einige Vorgänge in anderen Reihenfolgen und/oder gleichzeitig mit anderen Vorgängen oder Ereignissen stattfinden. Außerdem können nicht dargestellte Vorgänge erforderlich sein, um einen oder mehrere Aspekte oder Ausführungsformen der vorliegenden Beschreibung zu implementieren. Ferner können einer oder mehrere der hier beschriebenen Vorgänge in einem oder in mehreren getrennten Vorgängen und/oder Phasen durchgeführt werden.
-
Bei 702 wird eine Ausgangsposition eines EFEM-Roboters bestimmt. Die Ausgangsposition entspricht einem Satz Anfangsbewegungsbefehle, die mehreren ersten Schritten entsprechen, welche einen Weg zwischen einer ersten Position und einer zweiten Position definieren. Die mehreren ersten Schritte sind in Bezug auf die Ausgangsposition festgelegt. 2A veranschaulicht eine Querschnittsansicht einiger Ausführungsformen eines Blockdiagramms 200, die eine Ausgangsposition eines EFEM-Roboters zeigen, die mehreren ersten Schritten entspricht, welche einen Weg zwischen einer ersten und einer zweiten Position gemäß Vorgang 702 definieren.
-
Bei 704 werden Positionsparameter bestimmt. Die Positionsparameter beschreiben Positionsänderungen zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters 2A bis 2B veranschaulichen Querschnittsansichten einiger Ausführungsformen von Blockdiagrammen 200 und 210, die einen Unterschied zwischen einer Ausgangs- und einer neuen Position eines EFEM-Roboters zeigen.
-
In einigen Ausführungsformen können die neuen Positionsparameter auf der Grundlage von Vorgängen 706 bis 710 bestimmt werden.
-
Bei 706 werden ein erster und ein zweiter Positionsparameter aus einem Justiermarkenversatz (d.h. einem Versatz zwischen einer mit der Ausgangsposition assoziierten Justiermarke und einer mit der neuen Position assoziierten Justiermarke) bestimmt. In einigen Ausführungsformen können der erste und der zweite Positionsparameter Positionsänderungen in x-Richtung und z-Richtung beschreiben. 4B veranschaulicht ein Diagramm, das einige Ausführungsformen zum Bestimmen eines ersten und eines zweiten Positionsparameters aus einem Justiermarkenversatz gemäß Vorgang 706 zeigt.
-
Bei 708 wird ein dritter Positionsparameter aus mehreren Abstandsversätzen (d.h. Versätzen zwischen Abständen, die mit der Ausgangsposition assoziiert sind, und Abständen, die mit der neuen Position assoziiert sind) bestimmt. In einigen Ausführungsformen kann der dritte Positionsparameter Positionsänderungen in y-Richtung beschreiben. 4B veranschaulicht ein Diagramm, das einige Ausführungsformen zum Bestimmen eines dritten Positionsparameters aus mehreren Abstandversätzen gemäß Vorgang 708 zeigt.
-
Bei 710 wird ein Unterschied eines vierten Positionsparameters aus den mehreren Abstandsversätzen bestimmt. In einigen Ausführungsformen können die vierten Positionsparameter eine Änderung der Ausrichtung des EFEM-Roboters beschreiben. 4B veranschaulicht ein Diagramm, das einige Ausführungsformen zum Bestimmen eines vierten Positionsparameters aus mehreren Abstandversätzen gemäß Vorgang 710 zeigt.
-
Bei 712 werden mehrere zweite Schritte aus den Positionsparametern bestimmt. In einigen Ausführungsformen können auch die mehreren zweiten Schritte aus der Ausgangsposition bestimmt werden. Die mehreren zweiten Schritte, erstrecken sich entlang des Weges zwischen der ersten und der zweiten Position und sind in Bezug auf die neue Position festgelegt. 2B veranschaulicht eine Querschnittsansicht einiger Ausführungsformen eines Blockdiagramms 210, die mehrere zweite Schritte innerhalb des Wegs zwischen einer ersten und einer zweiten Position gemäß Vorgang 712 zeigen.
-
In einigen Ausführungsformen kann das Element zum automatischen Anlernen eine tragbare Vorrichtung sein, die zwischen verschiedenen EFEMs bewegt werden kann. In solchen Ausführungsformen kann das Element zum automatischen Anlernen verwendet werden, um verschiedene EFEM-Roboter innerhalb verschiedener EFEMs neu zu programmieren. In einigen Ausführungsformen kann das Element zum automatischen Anlernen verwendet werden, um verschiedene Typen von EFEM-Robotern (z.B. verschiedene, durch verschiedene Hersteller gefertigte EFEM-Roboter) innerhalb der verschiedenen EFEMs neu zu programmieren. Durch Verwenden von Positionsparametern, die durch das Element zum automatischen Anlernen bestimmt werden, um ein Neuprogrammieren des EFEM-Roboters durchzuführen, können die verschiedenen Typen von EFEM-Robotern ohne zusätzlichen Aufwand neu programmiert werden.
-
8A bis 8D veranschaulichen Blockdiagramme einiger Ausführungsformen eines Verfahrens zum Verwenden eines tragbaren Elements zum automatischen Anlernen, um Positionsänderungen eines EFEM-Roboters zu berücksichtigen.
-
8A veranschaulicht ein Blockdiagramm einer Querschnittsansicht 800 einiger Ausführungsformen eines Halbleiterverarbeitungssystems während eines ersten Zeitrahmens, der einen ersten und einen zweiten Zeitpunkt (d.h. t1 bis t2) umfasst.
-
Wie in der Querschnittsansicht 800 von 8A dargestellt, ist Element zum automatischen Anlernen 124 an einer ersten Stelle 802 auf einem EFEM-Roboter 112 innerhalb einer EFEM-Kammer 104 zum ersten Zeitpunkt t1 angeordnet. Das Element zum automatischen Anlernen 124 wird zum zweiten Zeitpunkt t2 betrieben, um eine Ausgangsposition 208 (x1 , 0) des EFEM-Roboters 112 in Bezug auf einen festgelegten Referenzpunkt (z.B. einen festgelegten Referenzpunkt (0, 0)), der an die EFEM-Kammer 104 verknüpft ist, zu bestimmen.
-
8B veranschaulicht ein Blockdiagramm einer Querschnittsansicht 804 einiger Ausführungsformen eines Halbleiterverarbeitungssystems während eines zweiten Zeitrahmens, der einen dritten und einen vierten Zeitpunkt (d.h. t3 bis t4 ) umfasst.
-
Wie in der Querschnittsansicht 804 von 8B dargestellt, wird das Element zum automatischen Anlernen 124 aus der EFEM-Kammer 104 zum dritten Zeitpunkt t3 entfernt. Der EFEM-Roboter 112 wird anschließend betrieben, um sich entlang eines Weges 120 zu bewegen, der sich zwischen einer ersten Position 202 innerhalb eines Trägers 108 und einer zweiten Position 204 innerhalb eines Halbleiterwerkzeugs 102 zum vierten Zeitpunkt t4 erstreckt. Der Weg 120 wird durch mehrere Schritte 206 definiert, die in Bezug auf die Ausgangsposition 208 (x1 , 0) des EFEM-Roboters 112 festgelegt sind.
-
8C veranschaulicht ein Blockdiagramm einer Querschnittsansicht 806 einiger Ausführungsformen eines Halbleiterverarbeitungssystems während eines dritten Zeitrahmens, der einen fünften, einen sechsten und einen siebten Zeitpunkt (d.h. t5 bis t7 ) umfasst.
-
Wie in der Querschnittsansicht 806 von 8C dargestellt, ist, nachdem sich der EFEM-Roboter von der Ausgangsposition 208 (x1 , 0) zu einer neuen Position 212 (x1+δ, 0) bewegte, das Element zum automatischen Anlernen 124 an der ersten Stelle 802 auf dem EFEM-Roboter 112 zum fünften Zeitpunkt t5 angeordnet. Das Element zum automatischen Anlernen 124 wird zum sechsten Zeitpunkt t6 betrieben, um die neue Position (x1+8, 0) des EFEM-Roboters 112 in Bezug auf den festgelegten Referenzpunkt (z.B. einen festgelegten Referenzpunkt (0, 0)) zu bestimmen. Das Element zum automatischen Anlernen 124 verwendet anschließend die Ausgangsposition (x1 , 0) und die neue Position (x1+8, 0), um Positionsparameter zu bestimmen, die die Positionsänderung des EFEM-Roboters 112 beschreiben. Das Element zum automatischen Anlernen ist derart ausgelegt, dass es aus den Positionsparametern einen Satz neue Bewegungsbefehle zum siebten Zeitpunkt t7 generiert. Der Satz neue Bewegungsbefehle wird an den EFEM-Roboter 112 bereitgestellt.
-
8D veranschaulicht ein Blockdiagramm einer Querschnittsansicht 808 einiger Ausführungsformen eines Halbleiterverarbeitungssystems während eines vierten Zeitrahmens, der einen achten und einen neunten Zeitpunkt (d.h. ts bis t9 ) umfasst.
Wie in der Querschnittsansicht 808 von 8D dargestellt, wird das Element zum automatischen Anlernen 124 aus der EFEM-Kammer 104 zum achten Zeitpunkt ts entfernt. Der EFEM-Roboter 112 wird anschließend betrieben, um sich entlang des Weges 120 gemäß dem Satz neue Bewegungsbefehle zum neunten Zeitpunkt t9 zu bewegen. Der Weg 120 wird durch mehrere zweite Schritte 214, die in Bezug auf die neue Position (x1+8, 0) des EFEM-Roboters 112 festgelegt sind, definiert und erstreckt sich zwischen dem Träger 108 und dem Halbleiterwerkzeug 102.
-
9 veranschaulicht ein Ablaufdiagramm einiger Ausführungsformen eines Verfahrens 900 zum Verwenden eines Elements zum automatischen Anlernen, um einen EFEM-Roboter automatisch neu zu programmieren um Positionsänderungen des EFEM-Roboters zu berücksichtigen.
-
Bei 902 wird das Element zum automatischen Anlernen auf einem EFEM-Roboter innerhalb einer EFEM-Kammer angeordnet. In einigen Ausführungsformen wird das Element zum automatischen Anlernen an einer ersten Stelle auf dem EFEM-Roboter angeordnet. 8A veranschaulicht eine Querschnittsansicht 800 eines Blockdiagramms, die ein Element zum automatischen Anlernen zeigt, welches an einer ersten Stelle innerhalb einer EFEM-Kammer angeordnet ist, gemäß einigen Ausführungsformen von Vorgang 902.
-
Bei 904 wird das Element zum automatischen Anlernen betrieben, um eine Ausgangsposition eines EFEM-Roboters innerhalb des EFEM-Kammer zu messen. Wenn sich der EFEM-Roboter in der Ausgangsposition befindet, ist der EFEM-Roboter derart ausgelegt, dass er sich entlang mehrerer erster Schritte bewegt, die in Bezug auf die Ausgangsposition festgelegt sind und die sich entlang eines Weges zwischen einer ersten Position und einer zweiten Position erstrecken.
-
Bei 906 wird das Element zum automatischen Anlernen aus der EFEM-Kammer entfernt. 8B veranschaulicht eine Querschnittsansicht 802 eines Blockdiagramms, die zeigt, dass ein Element zum automatischen Anlernen aus der Ausrichtungskammer entfernt ist, gemäß einigen Ausführungsformen von Vorgang 906.
-
Bei 908 wird der EFEM-Roboter gemäß einem Satz Anfangsbewegungsbefehle betrieben, um sich entlang mehrerer erster Schritte zu bewegen, die in Bezug auf die Ausgangsposition festgelegt sind und sich zwischen einer ersten Position und einer zweiten Position erstrecken. 8B veranschaulicht eine Querschnittsansicht 804 eines Blockdiagramms, die zeigt, dass sich ein EFEM-Roboter entlang mehrerer erster Schritte bewegt, gemäß einigen Ausführungsformen von Vorgang 908.
-
Bei 910 wird das Element zum automatischen Anlernen auf dem EFEM-Roboter angeordnet, nachdem der EFEM-Roboter gemäß dem Satz Anfangsbewegungsbefehle betrieben wurde. In einigen Ausführungsformen wird das Element zum automatischen Anlernen an der ersten Stelle auf dem EFEM-Roboter angeordnet. 8C veranschaulicht eine Querschnittsansicht 806 eines Blockdiagramms, die das Element zum automatischen Anlernen zeigt, welches an der ersten Stelle innerhalb eines EFEM angeordnet ist, gemäß einigen Ausführungsformen von Vorgang 910.
-
Bei 912 wird das Element zum automatischen Anlernen betrieben, um Positionsparameter zu bestimmen, die einen Unterschied zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters beschreiben.
-
Bei 914 wird ein Satz neue Bewegungsbefehle auf der Grundlage der Positionsparameter generiert. In einigen Ausführungsformen kann der Satz neue Bewegungsbefehle auch auf der Grundlage der Ausgangsposition generiert werden. Der Satz neue Bewegungsbefehle definiert mehrere zweite Schritte innerhalb des Wegs zwischen einer ersten und einer zweiten Position in Bezug auf die neuen Positionsparameter.
-
Bei 916 wird das Element zum automatischen Anlernen aus der EFEM-Kammer entfernt. 8C veranschaulicht eine Querschnittsansicht 806 eines Blockdiagramms, die zeigt, dass ein Element zum automatischen Anlernen aus der Ausrichtungskammer gemäß einigen Ausführungsformen von Vorgang 916 entfernt ist.
-
Bei 918 wird der EFEM-Roboter gemäß einem Satz neue Bewegungsbefehle betrieben, um sich entlang mehrerer zweiter Schritte zu bewegen, die in Bezug auf die neue Position festgelegt sind und sich zwischen einer ersten Position und einer zweiten Position erstrecken. 8D veranschaulicht eine Querschnittsansicht 808 eines Blockdiagramms, die zeigt, dass sich ein EFEM-Roboter entlang mehrerer zweiter Schritte gemäß Vorgang 918 bewegt.
-
Obwohl das Verfahren 900 das Neuprogrammieren eines einzelnen EFEM-Roboters beschreibt, versteht es sich, dass das Verfahren angewendet werden kann, um eine selbe Anlernvorrichtung (die z.B. eine tragbare Einheit umfasst) zu verwenden, um verschiedene EFEM-Roboter, die mit verschiedenen EFEMs assoziiert sind, automatisch neu zu programmieren. Zum Beispiel kann, nachdem das Element zum automatischen Anlernen aus der EFEM-Kammer zum sechsten Zeitpunkt entfernt wird, das Element zum automatischen Anlernen innerhalb einer zusätzlichen EFEM-Kammer angeordnet werden, wobei das Element zum automatischen Anlernen ausgelegt ist, um eine zusätzliche Position eines zusätzlichen EFEM-Roboters innerhalb der zusätzlichen EFEM-Kammer zu bestimmen.
-
Dementsprechend betrifft in verschiedenen Ausführungsformen die vorliegende Offenbarung ein Verfahren zum automatischen Programmieren eines EFEM-Roboters, um Positionsänderungen des EFEM-Roboters zu berücksichtigen, und eine zugehörige Vorrichtung.
-
In einigen Ausführungsformen betrifft die vorliegende Offenbarung ein Verfahren zum Programmieren eines EFEM-Roboters. Das Verfahren umfasst: Bestimmen einer Ausgangsposition eines EFEM-Roboters innerhalb einer EFEM-Kammer, wobei der EFEM-Roboter in der Ausgangsposition ausgelegt ist, um sich entlang mehrerer erster Schritte zu bewegen, die in Bezug auf die Ausgangsposition festgelegt sind und sich entlang eines Weges zwischen einer ersten Position und einer zweiten Position erstrecken; Bestimmen von Positionsparametern, die eine Änderung zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters innerhalb der EFEM-Kammer, die von der Ausgangsposition verschieden ist, beschreiben; und Bestimmen mehrerer zweiter Schritte auf der Grundlage der Positionsparameter, wobei der EFEM-Roboter in der neuen Position ausgelegt ist, um sich entlang der mehreren zweiten Schritte zu bewegen, die in Bezug auf die neue Position definiert sind und sich entlang des Weges zwischen der ersten Position und der zweiten Position erstrecken. In einigen Ausführungsformen umfassen die Positionsparameter einen ersten Positionsparameter, der einen ersten Unterschied zwischen der Ausgangsposition und der neuen Position entlang einer ersten Richtung beschreibt, einen zweiten Positionsparameter, der einen zweiten Unterscheid zwischen der Ausgangsposition und der neuen Position entlang einer zweiten Richtung, die zur ersten Richtung senkrecht ist, beschriebt, einen dritten Positionsparameter, der einen dritten Unterschied zwischen der Ausgangsposition und der neuen Position entlang einer dritten Richtung, die zur ersten Richtung und zur zweiten Richtung senkrecht ist, beschreibt, und einen vierten Positionsparameter, der eine Änderung einer Ausrichtung des EFEM-Roboters zwischen der Ausgangsposition und der neuen Position beschreibt. In einigen Ausführungsformen umfasst das Bestimmen der Positionsparameter ein Bestimmen des ersten Positionsparameters und des zweiten Positionsparameters auf der Grundlage eines Versatzes einer Justiermarke, die mit der EFEM-Kammer gekoppelt ist, zwischen der Ausgangsposition und der neuen Position, wobei die Justiermarke entlang einer Ebene angeordnet ist, die sich in der ersten Richtung und der zweiten Richtung erstreckt. In einigen Ausführungsformen wird der Versatz der Justiermarke bestimmt, indem ein erstes Bild der Justiermarke, das der Ausgangsposition entspricht, und ein zweites Bild der Justiermarke, das der neuen Position entspricht, verglichen werden. In einigen Ausführungsformen sind ein oder mehrere der Positionsparameter ein Abstandsversatz entlang der dritten Richtung zwischen der Ausgangsposition und der neuen Position, der unter Verwendung eines oder mehrerer Laser bestimmt wird. In einigen Ausführungsformen werden ein oder mehrere der Positionsparameter als eine Funktion eines ersten Abstands, der unter Verwendung eines ersten Lasers gemessen wird, und eines zweiten Abstands, der unter Verwendung eines zweiten Lasers gemessen wird, berechnet. In einigen Ausführungsformen sind ein oder mehrere der Positionsparameter eine Ausrichtung des EFEM-Roboters, die als eine Funktion eines ersten Abstands, der unter Verwendung eines ersten Lasers gemessen wird, und eines zweiten Abstands, der unter Verwendung eines zweiten Lasers gemessen wird, berechnet wird. In einigen Ausführungsformen ist der EFEM-Roboter derart ausgelegt, dass er gemäß einem Satz Anfangsbewegungsbefehle arbeitet, die den EFEM-Roboter entlang der mehreren ersten Schritte bewegen. In einigen Ausführungsformen umfasst das Verfahren ferner ein Generieren eines Satzes neue Bewegungsbefehle auf der Grundlage der Positionsparameter, wobei der EFEM-Roboter ausgelegt ist, um gemäß dem Satz neue Bewegungsbefehle zu arbeiten, um den EFEM-Roboter entlang der mehreren zweiten Schritte zu bewegen. In einigen Ausführungsformen umfasst das Verfahren ferner ein Bereitstellen des Satzes neue Bewegungsbefehle an eine Steuerung, die ausgelegt ist, um den EFEM-Roboter gemäß dem Satz neue Bewegungsbefehle zu betreiben, um den EFEM-Roboter entlang der mehreren zweiten Schritte zu bewegen. In einigen Ausführungsformen umfasst das Verfahren ferner ein Anordnen eines Elements zum automatischen Anlernen innerhalb der EFEM-Kammer, wobei das Element zum automatischen Anlernen ausgelegt ist, um die Positionsparameter zu bestimmen; und Entfernen des Elements zum automatischen Anlernen aus der EFEM-Kammer vor dem Verwenden eines mit der EFEM-Kammer gekoppelten Halbleiterwerkzeugs, um einen Fertigungsprozess an einem Substrat durchzuführen. In einigen Ausführungsformen umfasst das Verfahren ferner ein Anordnen des Elements zum automatischen Anlernen innerhalb einer zusätzlichen EFEM-Kammer nach dem Entfernen des Elements zum automatischen Anlernen aus der EFEM-Kammer, wobei das Element zum automatischen Anlernen ausgelegt ist, um eine zusätzliche Position eines zusätzlichen EFEM-Roboters innerhalb der zusätzlichen EFEM-Kammer zu bestimmen. In einigen Ausführungsformen sind die mehreren ersten Schritte von einem Punkt auf dem EFEM-Roboter durch mehrere erste Abstände getrennt, und die mehreren zweiten Schritte sind von dem Punkt auf dem EFEM-Roboter durch mehrere zweite Abstände, die von den mehreren ersten Abständen verschieden sind, getrennt.
-
In anderen Ausführungsformen betrifft die vorliegende Offenbarung ein Verfahren zum Programmieren eines EFEM-Roboters. Das Verfahren umfasst: Bestimmen einer Ausgangsposition eines EFEM-Roboters, wobei der EFEM-Roboter an der Ausgangsposition ausgelegt ist, um gemäß einem Satz Anfangsbewegungsbefehle zu arbeiten, um sich entlang mehrerer erster Schritte zu bewegen, die in Bezug auf die Ausgangsposition definiert sind und sich zwischen einer ersten Position und einer zweiten Position erstrecken; Bestimmen von Positionsparametern, die eine Änderung zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters, die von der Ausgangsposition verschieden ist, beschreiben; und Generieren eines Satzes neue Bewegungsbefehle auf der Grundlage der Positionsparameter, wobei der EFEM-Roboter in der neuen Position ausgelegt ist, um gemäß dem neuen Satz Bewegungsbefehle zu arbeiten, um sich entlang mehrerer zweiter Schritte zu bewegen, die in Bezug auf die neue Position definiert sind und sich zwischen der ersten Position und der zweiten Position erstrecken. In einigen Ausführungsformen sind Abstände zwischen den mehreren ersten Schritten und der Ausgangsposition von Abständen zwischen den mehreren zweiten Schritten und der neuen Position verschieden.
-
In noch anderen Ausführungsformen betrifft die vorliegende Offenbarung ein Element zum automatischen Anlernen eines EFEM-Roboters. Das Element zum automatischen Anlernen umfasst: eine Positionsmesseinheit, die zum Bestimmen einer Ausgangsposition eines EFEM-Roboters innerhalb einer EFEM-Kammer und einer neuen Position des EFEM-Roboters innerhalb der EFEM-Kammer, die von der Ausgangsposition verschieden ist, ausgelegt ist; und ein Verarbeitungselement, das zum Bestimmen von Positionsparametern, die einen Unterscheid zwischen der Ausgangsposition und der neuen Position beschreiben, und ferner zum Bestimmen mehrerer zweiter Schritte aus den Positionsparametern, die den EFEM-Roboter entlang eines Wegs bewegen, der sich zwischen einer ersten Position und einer zweiten Position erstreckt, ausgelegt ist. In einigen Ausführungsformen ist der EFEM-Roboter derart ausgelegt, dass er sich entlang mehrerer erster Schritte bewegt, die in Bezug auf die Ausgangsposition festgelegt sind und die sich entlang des Weges zwischen der ersten Position und der zweiten Position erstrecken. In einigen Ausführungsformen sind die mehreren ersten Schritte von einem Punkt auf dem EFEM-Roboter durch mehrere erste Abstände getrennt, und die mehreren zweiten Schritte sind von dem Punkt auf dem EFEM-Roboter durch mehrere zweite Abstände, die von den mehreren ersten Abständen verschieden sind, getrennt In einigen Ausführungsformen ist das Verarbeitungselement ferner ausgelegt, um einen Satz neue Bewegungsbefehle, die den Weg beschreiben, auf der Grundlage der Positionsparameter zu bestimmen,. In einigen Ausführungsformen umfasst das Element zum automatischen Anlernen ferner eine Kommunikationsschnittstelle, die ausgelegt ist, um den Satz neue Bewegungsbefehle an den EFEM-Roboter bereitzustellen, um den Betreib des EFEM-Roboters zu ändern.
-
In noch anderen Ausführungsformen betrifft die vorliegende Offenbarung ein Verfahren zum Programmieren eines EFEM-Roboters. Das Verfahren umfasst: Anordnen eines Elements zum automatischen Anlernen innerhalb einer EFEM-Kammer zu einem ersten Zeitpunkt; Bertreiben des Elements zum automatischen Anlernen zu einem zweiten Zeitpunkt, nach dem ersten Zeitpunkt, um eine Ausgangsposition eines EFEM-Roboters innerhalb der EFEM-Kammer zu messen; Entfernen des Elements zum automatischen Anlernen aus der EFEM-Kammer zu einem dritten Zeitpunkt nach dem zweiten Zeitpunkt; Anordnen des Elements zum automatischen Anlernen in der EFEM-Kammer zu einem vierten Zeitpunkt nach dem dritten Zeitpunkt; Betreiben des Elements zum automatischen Anlernen zu einem fünften Zeitpunkt, nach dem vierten Zeitpunkt, um Positionsparameter zu messen, die einen Unterschied zwischen der Ausgangsposition und einer neuen Position des EFEM-Roboters innerhalb der EFEM-Kammer beschreiben; und Bestimmen mehrerer zweiter Schritte auf der Grundlage der Positionsparameter, wobei der EFEM-Roboter ausgelegt ist, um sich entlang der mehreren zweiten Schritte zu bewegen, die sich entlang eines Weges zwischen einer ersten Position und einer zweiten Position erstreckt. In einigen Ausführungsformen umfasst das Verfahren ferner ein Anordnen des Elements zum automatischen Anlernen an einer ersten Stelle innerhalb der EFEM-Kammer zum ersten Zeitpunkt, und ein Anordnen des Elements zum automatischen Anlernen an der ersten Stelle innerhalb der EFEM-Kammer zum vierten Zeitpunkt. In einigen Ausführungsformen umfasst das Verfahren ferner ein Anordnen des Elements zum automatischen Anlernen innerhalb einer zusätzlichen EFEM-Kammer nach dem Entfernen des Elements zum automatischen Anlernen aus der EFEM-Kammer, wobei das Element zum automatischen Anlernen ausgelegt ist, um eine zusätzliche Position eines zusätzlichen EFEM-Roboters innerhalb der zusätzlichen EFEM-Kammer zu bestimmen. In einigen Ausführungsformen ist der EFEM-Roboter derart ausgelegt, dass er sich entlang mehrerer erster Schritte zwischen dem dritten Zeitpunkt und dem vierten Zeitpunkt bewegt, die sich entlang des Wegs zwischen der ersten Position und der zweiten Position erstrecken, und wobei Abstände zwischen den mehreren ersten Schritten und der Ausgangsposition von Abständen zwischen den mehreren zweiten Schritten und der neuen Position verschieden sind. In einigen Ausführungsformen ist der EFEM-Roboter derart ausgelegt, dass er gemäß einem Satz Anfangsbewegungsbefehle arbeitet, die den EFEM-Roboter entlang der mehreren ersten Schritte zwischen dem dritten Zeitpunkt und dem vierten Zeitpunkt bewegen. In einigen Ausführungsformen umfasst das Verfahren ferner ein Generieren eines Satzes neue Bewegungsbefehle auf der Grundlage der Positionsparameter, wobei der EFEM-Roboter ausgelegt ist, um gemäß dem Satz neue Bewegungsbefehle zu arbeiten, um den EFEM-Roboter entlang der mehreren zweiten Schritte nach dem fünften Zeitpunkt zu bewegen. In einigen Ausführungsformen befindet sich die erste Position innerhalb eines Trägers, der zum Halten eines oder mehrerer Substrate ausgelegt ist, und die zweite Position befindet sich innerhalb eines Halbleiterwerkzeugs.
-
In noch anderen Ausführungsformen betrifft die vorliegende Offenbarung ein Element zum automatischen Anlernen eines EFEM-Roboters. Das Element zum automatischen Anlernen umfasst: ein Speicherelement, das ausgelegt ist, um Daten zu speichern, die eine Ausgangsposition eines EFEM-Roboters innerhalb einer EFEM-Kammer beschreiben; eine Positionsmesseinheit, die ausgelegt ist, um Messungen vorzunehmen, die eine neue Position des EFEM-Roboters innerhalb der EFEM-Kammer, die von der Ausgangposition des EFEM-Roboters verschieden ist, beschreiben; und ein Verarbeitungselement, das ausgelegt ist, um einen Satz neue Bewegungsbefehle, die einen Weg des EFEM-Roboters beschreiben, auf der Grundlage der Daten, die die Ausgangsposition des EFEM-Roboters beschreiben, und der Messungen zu bestimmen. In einigen Ausführungsformen umfasst das Element zum automatischen Anlernen ferner ein Gehäuse, das die Positionsmesseinheit, das Speicherelement und das Verarbeitungselement umgibt. In einigen Ausführungsformen umfasst das Element zum automatischen Anlernen ferner ein Kopplungselement, das an dem Gehäuse befestigt und ausgelegt ist, um das Gehäuse mit einer Fläche des EFEM-Roboters zu koppeln. In einigen Ausführungsformen umfasst das Element zum automatischen Anlernen ferner eine Kommunikationsschnittstelle, die ausgelegt ist, um den Satz neue Bewegungsbefehle an eine Steuerung bereitzustellen, die ausgelegt ist, um eine Bewegung eines Roboterarms des EFEM-Roboters oder eines Programmierhandgeräts in Kommunikation mit der Steuerung zu steuern. In einigen Ausführungsformen umfasst die Positionsmesseinheit eine Abbildungsvorrichtung, die ausgelegt ist, um ein Bild einer Justiermarke, die auf der EFEM-Kammer angeordnet ist, zu erfassen, und eine Entfernungsmessvorrichtung, die ausgelegt ist, um einen ersten Abstand und einen zweiten Abstand zwischen dem Element zum automatischen Anlernen und der EFEM-Kammer zu messen. In einigen Ausführungsformen umfasst die Abbildungsvorrichtung eine CCD-Kamera. In einigen Ausführungsformen umfasst die Entfernungsmessvorrichtung einen oder mehrere Laser. In einigen Ausführungsformen umfasst die Entfernungsmessvorrichtung: einen ersten Laser, der ausgelegt ist, um einen ersten Laserstrahl zu erzeugen, der sich in einer dritten Richtung erstreckt; einen zweiten Laser, der ausgelegt ist, um einen zweiten Laserstrahl zu erzeugen, der sich in der dritten Richtung erstreckt, wobei der erste Laser von dem zweiten Laser entlang einer ersten Richtung oder einer zweiten Richtung durch einen von null verschiedenen Abstand getrennt ist; einen ersten Sensor, der ausgelegt ist, um eine Reflexion des ersten Laserstrahls von der EFEM-Kammer zu empfangen und den ersten Abstand zwischen dem ersten Laser und der EFEM-Kammer zu bestimmen; und einen zweiten Sensor, der ausgelegt ist, um eine Reflexion des zweiten Laserstrahls von der EFEM-Kammer zu empfangen und den zweiten Abstand zwischen dem zweiten Laser und der EFEM-Kammer zu bestimmen.
-
In noch anderen Ausführungsformen betrifft die vorliegende Offenbarung ein Element zum automatischen Anlernen eines EFEM-Roboters. Das Element zum automatischen Anlernen umfasst: eine Abbildungsvorrichtung, die ausgelegt ist, um Bilder einer Justiermarke, die auf einer EFEM-Kammer angeordnet ist, an einer Ausgangsposition und einer neuen Position eines EFEM-Roboters (112) zu erfassen, wobei die Bilder einem ersten Positionsparameter, der eine erste Positionsänderung des EFEM-Roboters in einer ersten Richtung beschreibt, und einem zweiten Positionsparameter, der eine zweite Positionsänderung des EFEM-Roboters in einer zweiten Richtung beschreibt, entsprechen; und eine Entfernungsmessvorrichtung , die ausgelegt ist, um Abstände zwischen der Entfernungsmessvorrichtung und der EFEM-Kammer an der Ausgangsposition und der neuen Position zu messen, wobei die Abstände einem dritten Positionsparameter, der eine dritte Positionsänderung des EFEM-Roboters in einer dritten Richtung beschreibt, und einem vierten Positionsparameter, der eine Änderung der Ausrichtung des EFEM-Roboters beschreibt, entsprechen. In einigen Ausführungsformen umfasst das Element zum automatischen Anlernen ferner ein Verarbeitungselement, das ausgelegt ist, um Bilder von der Abbildungsvorrichtung und den ersten Abstand und den zweiten Abstand von der Entfernungsmessvorrichtung zu empfangen, wobei das Verarbeitungselement ausgelegt ist, um den ersten Positionsparameter und den zweiten Positionsparameter aus den Bildern zu bestimmen und den dritten Positionsparameter und den vierten Positionsparameter aus dem ersten Abstand und dem zweiten Abstand zu bestimmen. In einigen Ausführungsformen ist das Verarbeitungselement derart ausgelegt, dass es einen Satz neue Bewegungsbefehle, die einen Weg beschreiben, entlang dessen sich der EFEM-Roboter zwischen einer ersten Position und einer zweiten Position bewegt, auf der Grundlage des ersten Positionsparameters, des zweiten Positionsparameters, des dritten Positionsparameters und des vierten Positionsparameters bestimmt. In einigen Ausführungsformen umfasst das Element zum automatischen Anlernen ferner ein Speicherelement, das ausgelegt ist, um Daten zu speichern, die eine Ausgangsposition des EFEM-Roboters beschreiben, wobei der erste Positionsparameter die erste Positionsänderung zwischen der Ausgangsposition des EFEM-Roboters und der neuen Position des EFEM-Roboters beschreibt. In einigen Ausführungsformen umfasst die Entfernungsmessvorrichtung: einen ersten Laser, der ausgelegt ist, um einen ersten Laserstrahl zu erzeugen, der sich in der dritten Richtung erstreckt; einen zweiten Laser, der ausgelegt ist, um einen zweiten Laserstrahl zu erzeugen, der sich in der dritten Richtung erstreckt, wobei der erste Laser von dem zweiten Laser entlang der ersten Richtung oder der zweiten Richtung durch einen von null verschiedenen Abstand getrennt ist; einen ersten Sensor, der ausgelegt ist, um eine Reflexion des ersten Laserstrahls von der EFEM-Kammer zu empfangen und den ersten Abstand aus der Reflexion zu bestimmen; und einen zweiten Sensor, der ausgelegt ist, um eine Reflexion des zweiten Laserstrahls von der EFEM-Kammer zu empfangen und den zweiten Abstand aus der Reflexion zu bestimmen, wobei der erste Sensor von dem zweiten Sensor entlang der ersten Richtung oder der zweiten Richtung getrennt ist.