In-line machine vision system for part tracking of substrate processing system
Patent Information
- Application Number
- TW111122805
- Authority / Receiving Office
- TW · TW
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-06-24
- Filing Date
- 2022-06-20
- Publication Date
- 2026-10-11
- Estimated Expiration
- 2042-06-19
AI Technical Summary
In semiconductor wafer processing, consumable parts like edge rings are often damaged due to harsh conditions and need frequent replacement, but manual or automated replacement methods are prone to errors, leading to incorrect installation and potential wafer rejection, which affects processing quality and efficiency.
A machine vision system is used to track and verify the identity of consumable parts by capturing and processing a code on the part, ensuring correct installation in processing modules through a robot-assisted process that aligns the code with an image capture system for authentication against a database.
This system reduces human error in consumable part installation, ensuring the right parts are used in the right modules, thereby improving processing quality and reducing wafer rejection, thus enhancing manufacturing efficiency and reducing costs.
Smart Images

Figure TWG2TB001914870_001 
Figure TWG2TB001914870_002 
Figure TWG2TB001914870_003
Abstract
Description
[Technical Field]
[0001] Embodiments of the present invention relate to semiconductor wafer processing, and more particularly to consumable components for tracking processing modules provided to a substrate processing system. [Previous Technology]
[0002] A typical manufacturing system comprises multiple clusters of equipment components or processing stations. Each processing station in semiconductor wafer manufacturing processes consists of one or more processing modules, each used to perform a specific manufacturing operation. Some manufacturing operations performed within different processing modules include etching, deposition, rinsing, drying, etc. The processing chemicals, processing conditions, and processes used in the processing modules can damage certain hardware components that are constantly exposed to the harsh conditions within the processing modules. These damaged or worn hardware components need to be periodically and rapidly replaced to ensure that the damaged hardware components do not expose other hardware components in the processing modules to harsh conditions and to ensure the quality of the semiconductor wafer. Some hardware components that may be damaged due to their location and continuous exposure to harsh chemicals and the processes performed within the processing modules include edge rings, cover rings, etc., surrounding the wafer. After a certain number of processing cycles, the edge rings may become corroded and need to be rapidly replaced to ensure that the corroded edge rings do not expose underlying hardware components such as chucks, grounding rings, etc., to harsh processing conditions. In this paper, replaceable hardware components are referred to as consumable components.
[0003] Consumable components such as edge rings are highly critical to processing efficiency. These consumable components are typically replaced manually and require emptying the processing module to exchange edge rings. Alternatively, consumable components can be replaced using an automated process involving: loading new edge rings into a buffer station (such as a FORP (Front Open Ring Container – Edge Ring Exchange Station), which is similar to a Front Open Unified Container (FOUP) (Wafer Exchange Station) for buffering wafers; transferring edge rings from the FORP to the device interface of the processing station; and using a system robot to remove old edge rings from the processing module and install new edge rings. The replacement of consumable components is performed under vacuum in a manner similar to transferring wafers in and out of the processing module. Edge rings can be transferred from the buffer station via a Factory Automated Material Handling System (AMHS) used to transfer wafers from the wafer exchange station. A single buffer station can be used to store new edge rings and worn edge rings removed by the processing module, or different buffer stations can be used to store new edge rings and used edge rings separately. Worn edge rings need to be disposed of quickly, and when completely worn, new edge rings must be installed.
[0004] The exact shape and height of the edge rings are optimized based on the processing application. Therefore, multiple different edge rings are used and these edge rings must be managed efficiently. The differences between different types of edge rings are usually minimal and imperceptible to the naked eye. Furthermore, once the edge rings are located in the buffer station, it is almost impossible to distinguish between different edge rings. In a manufacturing environment, an edge ring buffer station may contain a single type of edge ring, more than one type of edge ring, or a combination of a single type or multiple types of edge rings with other consumable parts. Edge rings are usually manually loaded into different slots in the buffer station and the loaded edge rings are registered on the system computer. There is room for error during the manual installation / registration process. For example, the user may load the edge ring into the wrong slot (e.g., load the edge ring into slot 2 instead of slot 1). Or, the user may enter incorrect information (e.g., serial number, part number, slot number, size, etc.) for the edge ring loaded into a specific slot in the buffer station. Such errors may result in incorrect edge rings being sent to the processing module within the cluster equipment. For example, an incorrect edge ring may be accidentally installed into the processing module, resulting in rejected wafers. Such problems may go undetected for a long time and can severely impact the quality of wafers being processed, thereby significantly impacting the net profit margins of semiconductor manufacturers. Currently, there is no efficient way to automatically verify the correct edge ring being loaded into the FORP or to determine its position (i.e., slot number) within the device.
[0005] The embodiments of the present invention are produced in this context. [Summary of the Invention]
[0006] Embodiments of the present invention include a system and method for tracking edge rings and verifying their identity so that the correct edge ring can be delivered to the correct processing module within a substrate processing system. Tracking is accomplished using a machine vision system and an alignment member, which is mounted on the arm of a robot used within the substrate processing system (i.e., a clustering device). The substrate processing system or clustering device includes an atmospheric transfer module (ATM) coupled to a vacuum transfer module (VTM) via one or more load interlocking devices, and a VTM coupled to one or more processing modules. Robots using the ATM and VTM move wafers between a wafer buffer station and one or more processing modules. The ATM robot is equipped with an alignment member for aligning the wafers before delivery to the processing module. The aligned wafers are then received on the surface of the substrate for processing, and robots using the ATM and VTM move consumable components between the processing module and a consumable component station for storing consumable components. An identifier is provided on each consumable component. In some embodiments, the identifier may be a code (such as a machine-readable code) disposed on the top surface, bottom surface, both the top and bottom surfaces, or somewhere between the top and bottom surfaces of the consumable component. In some embodiments, the machine vision system is used to capture an image of the code disposed on the consumable component and process the image to identify the consumable component, and a robot alignment tool is used to align the code on the consumable component above the machine vision system so that the image of the code can be captured by a camera or the image capture device of the machine vision system. In some embodiments, the image of the code is verified against a consumable component database to determine whether the consumable component intended to be delivered to the processing module is suitable for the processing module. Once the identity of the consumable component is successfully verified, the consumable component is delivered to the processing module for installation.
[0007] Machine vision systems provide additional verification of consumable components to prevent incorrect consumable components from being supplied to processing modules within the substrate processing system due to human-introduced errors. Given the wide variation in the types of consumable components available in different processing modules, it is crucial to continuously track the different types of consumable components (such as edge rings) used in different processing modules and to deliver the correct types of consumable components (multiple components) to each processing module in different processing stations in order to optimize the processing performed within the modules. Machine vision systems automate this verification, thereby saving considerable time and costs.
[0008] To assist in tracking consumable components such as edge rings, in some embodiments, a code is defined on the consumable component and the consumable component is tracked by verifying the code against a consumable component database. When retrieving a consumable component for transport to a processing module, the consumable component is identified and then verified before being transported to the processing module. In some embodiments, a machine vision system is used to capture an image of the code and process the captured image to identify the code and generate an identifier for the consumable component as part of the verification. The consumable component identifier is verified against a consumable component database containing information related to different types of consumable components and different processing modules within the manufacturing facility, which uses each type of consumable component. Upon successful verification, the consumable component is then transported to the processing module by robots using ATM and VTM. Continuously track each consumable component to ensure the correct consumable component is delivered to each processing module, thereby eliminating any loading errors (such as incorrect information recorded for consumable components during loading, or consumable components being incorrectly loaded into the slots of the consumable component station). Tracking and verification ensure that incorrect consumable components are not incorrectly loaded into processing modules, thereby avoiding unnecessary wafer scrap caused by such errors.
[0009] In one embodiment, a machine vision system for tracking and verifying consumable components in a substrate processing system is disclosed. In some embodiments, the machine vision system includes a mounting housing, an image capture system, a processor (such as an edge processor), and a controller. The mounting housing has a consumable component station for storing a plurality of consumable components therein. The mounting housing has an opening facing a device front-end module (EFEM) of the substrate processing system, allowing a robot in the EFEM to retrieve a consumable component from the consumable component station. The image capture system is used to capture an image of a code on the consumable component. The image capture system includes a camera and a light source. The image capture system is located near the opening of the mounting housing and is oriented towards the opening. The processor is communicatively connected to the image capture system and the controller of the substrate processing system. The processor is used to process and analyze the image of the code captured by the image capture system and generate an identifier for the consumable component returned to the controller. The controller is used to issue a command to move the consumable component from the consumable component station through the opening in the mounting housing, so as to place the code of the consumable component within the field of view of the image capture system. The controller is also used to verify whether the consumable component is suitable for continuous operation in response to the identifier provided by the processor.
[0010] In one embodiment, the processor is configured to interact with: (a) an image enhancement module for enhancing the image of the code captured by the image capture system; (b) a decoder for decoding the enhanced image and generating a string identifying the consumable component; and (c) a communication module for communicating with the controller to identify the string identifying the consumable component for verification.
[0011] In one embodiment, the controller is used to provide multiple signals to the processor to activate the light source and start the camera to capture the image of the code and to verify the consumable component using the string delivered by the processor.
[0012] In one embodiment, the light source includes a plurality of optical elements, the positions of which are defined to illuminate the code and provide an overlapping area, wherein when the consumable component is placed in a read orientation, the overlapping area covers at least an area on one surface of the consumable component where the code is located.
[0013] In one embodiment, the robot includes an alignment member for aligning the consumable component to the reading orientation.
[0014] In one embodiment, the alignment member is used to detect a reference mark disposed on the consumable component, wherein the reference mark is disposed at a predetermined angle relative to the code on the consumable component. The robot moves the consumable component based on multiple commands from the controller. The multiple commands from the controller specify the predetermined angle, and the consumable component moves relative to the reference mark at the predetermined angle to align the code into the field of view of the camera of the image capture system, which is used to capture the image of the code illuminated by the light source.
[0015] In one embodiment, the read bit is defined to correspond to an open area of the consumable component not covered by one of the robot's end effectors, so as to provide an unobstructed view of the code for the camera used to capture the image.
[0016] In one embodiment, the image capture system includes a transparent cover defined in a top facing the opening of the mounting housing. The transparent cover is used to shield the camera and the light source of the image capture system.
[0017] In one embodiment, the camera of the image capture system is positioned at a first distance from the surface of the consumable component on which the code is provided, and the light source includes a plurality of optical elements, wherein each of the plurality of optical elements is separated from each other by a second distance.
[0018] In one embodiment, the first distance system is proportional to the second distance and is defined between approximately 1:1.3 and approximately 1:1.7.
[0019] In one embodiment, the image capture system includes a diffuser, a polarizer, or both a diffuser and a polarizer. The light source is a pair of light-emitting diodes. When the diffuser is present, each diffuser is positioned in front of each or both of the pair of light-emitting diodes at a predetermined first distance. Similarly, when the polarizer is present, each polarizer is positioned in front of one or both of the pair of light-emitting diodes at a predetermined second distance, or in front of the camera lens at a predetermined third distance, or in front of both the camera lens and the pair of light-emitting diodes at the predetermined second and third distances.
[0020] In one embodiment, the consumable component station has an outer side wall that is oriented opposite to the opening of the mounting housing. The outer side wall has a second opening for receiving the consumable component station for loading and unloading the consumable component.
[0021] In one embodiment, the consumable component in the consumable component station is made of two components, and the code is disposed on a surface of each of the two components. A first code in one of the two components is separated from a second code in a second component by a predetermined distance. The robot moves the consumable component based on a plurality of instructions from the controller. The plurality of instructions provided to the robot includes a first set of instructions and a second set of instructions. The first set of instructions is used to move the consumable component so that the first code disposed on the first component falls into the field of view of the image capture system and simultaneously activate the light source to illuminate the first code and cause the camera to capture an image of the first code. The second set of instructions is used to move the consumable component so that the second code disposed on the second component falls into the field of view of the image capture system and simultaneously activate the light source to illuminate the second code and cause the camera to capture an image of the second code.
[0022] In one embodiment, the light source is a pair of light-emitting diodes, which are arranged to illuminate the code tangentially.
[0023] In one embodiment, the first component and the second component of the two consumable components are made of the same material, wherein the material is quartz or silicon carbide.
[0024] In one embodiment, the first component and the second component of the two consumable components are made of different materials, wherein the first component of the two consumable components is made of quartz and the second component is made of silicon carbide.
[0025] In one embodiment, the processor is an edge processor. The edge processor is used to store the image of the code, process the image, analyze the image, generate the string identifying the consumable component, and transmit the string to the controller for verification. The edge processor is connected to the controller via an Ethernet switch.
[0026] In one embodiment, the consumable component is an edge ring that is disposed adjacent to a wafer received on a wafer support surface within the processing module of the substrate processing system.
[0027] In one embodiment, a robot for tracking consumable components in a substrate processing system is disclosed. The robot includes an end effector and an alignment member. The end effector is defined on an arm of the robot and designed to support a carrier plate for supporting the consumable component. The alignment member is disposed on the arm. The alignment member is used to rotate the carrier plate and the consumable component along an axis. The alignment member has a sensor to track a reference mark defined on a surface of the consumable component and to provide the offset coordinates of the reference mark to a controller of the substrate processing system. The robot is used to receive a set of instructions from the controller to move the consumable component supported on the carrier plate from the consumable component station to a reading orientation relative to the reference mark, wherein the reading orientation is defined such that a code disposed on the surface of the consumable component falls within the field of view of an image capture system of the substrate processing system so that the image capture system can capture an image of the code. The image of the code captured by the image capture system is processed to generate an identifier for the consumable component. The controller uses this identifier to verify the consumable component.
[0028] In one embodiment, the image capture system is communicatively connected to the controller. The image capture system receives a second set of instructions from the controller. The second set of instructions includes a first instruction and a second instruction. The first instruction is used to activate a light source disposed within the image capture system to illuminate the code, and the second instruction is used to activate a camera of the image capture system to initiate the capture of the image of the code.
[0029] In one embodiment, the reference mark is an optical mark defined on the surface of the consumable component, at a predetermined angle to the clip. The reading orientation is defined to an open area of the consumable component, the open area falling outside an area covered by the extension of the plurality of arms of the carrier plate.
[0030] In one embodiment, the sensor of the alignment member is either a laser sensor or a reference LED fiber optic sensor having a padding curtain on the fiber.
[0031] In one embodiment, the robot is disposed within a device front-end module (EFEM) of the substrate processing system. The EFEM provides access to a consumable component stored in a consumable component station of a mounting housing of the substrate processing system. Access to the consumable component is provided to the robot through an opening defined by the EFEM.
[0032] In one embodiment, the controller delivers the image of the offset coordinates of the reference mark and the code to the image capture system via the processor. The processor interacts with an image enhancement processor to enhance the image of the code captured by the image capture system, interacts with a decoder to decode the image of the code and generate a string identifying the consumable component, and interacts with a communication module to communicate the string with the controller for verification of the consumable component.
[0033] In one embodiment, the robot's end effector is used to move the consumable component from the consumable component station and to move a wafer from a wafer station to deliver the wafer to a processing module within the substrate processing system. The robot's alignment member is used to detect a notch in the wafer and control the wafer's orientation relative to the notch before delivering the wafer to the processing module.
[0034] In one embodiment, the consumable component is made of two components. A first code is disposed on a surface of the first component and a second code is disposed on a surface of the second component. The first code of the first component is separated from the second code of the second component by a predetermined distance. The set of instructions provided to the robot includes a third instruction and a fourth instruction. The third instruction is used to move the consumable component so that the first code disposed on the first component reaches the reading orientation relative to the reference mark to capture an image of the first code. The fourth instruction is used to move the consumable component so that the second code disposed on the second component reaches the reading orientation relative to the reference mark to capture an image of the second code disposed on the second component.
[0035] In a further embodiment, a machine vision system for tracking and verifying consumable components in a substrate processing system is disclosed. The machine vision system includes a mounting housing, a controller, an image capture system, and a processor. The mounting housing has a consumable component station for storing the consumable component therein. The mounting housing has an opening facing a device front-end module (EFEM) of the substrate processing system, allowing a robot in the EFEM to retrieve a consumable component from the consumable component station. The controller is used to enable the robot in the EFEM to move the consumable component from the consumable component station through the opening of the mounting housing and place a code of the consumable component within the field of view of the image capture system. The image capture system is used to capture an image of the code on the consumable component. The image capture system includes at least a camera and a light source. The image capture system is disposed near the opening of the mounting housing. The camera and the light source are oriented towards the opening of the mounting housing. The processor is communicatively connected to the image capture system and the controller. The processor is used to process and analyze the image of the code captured by the image capture system and to verify whether the consumable component is suitable for continuous operation.
[0036] The advantage of tracking consumable components is that it ensures that the consumable components retrieved from the consumable component station are the correct consumable components for the processing module within the substrate processing system. The information obtained from self-tracking can be used to continuously track when consumable components are supplied to the processing module and the usage history of the consumable components, thus determining when consumable components in the processing module reach the end of their service life and when they should be replaced. Those skilled in the art will understand these and other advantages discussed below upon reading the specification, illustrations, and requests.
Implementation Method
[0060] Numerous specific details are set forth in the following description to provide a complete understanding of the features of the invention. However, it will be understood that those skilled in the art may practice the invention without some or all of these specific details. In other instances, conventional processing operations are not described in detail to avoid unnecessarily obscuring the invention.
[0061] Embodiments of the present invention provide a method for tracking details of consumable components, such as edge rings, using identifiers, such as codes disposed on the surface of consumable components. The codes may be disposed on the bottom or top surface of the consumable component; or the codes may be disposed on both the top and bottom surfaces of the consumable component, with the codes on the top surface overlapping those on the bottom surface; or the codes may be embedded within the consumable component. The codes may be data matrix types, such as Quick Response (QR) codes, or barcodes or printed character codes, or any other type of data matrix or identification mark that can be used to identify consumable components (such as edge rings). Tracking is achieved using a machine vision system including an image capture system, which illuminates and captures an image of the code. The processor enhances the image, decodes the code, and generates a string identifying the consumable component. The string identifier is then delivered to a controller for verification. The controller controls various parameters for the successful functioning of the board processing system. The controller verifies information against a consumable component database to determine the identity of the consumable component and the type of processing module using the consumable component.
[0062] When a processing module needs to replace an edge ring, for example, a robot of the substrate processing system retrieves the edge ring from a consumable component station that stores consumable components. These consumable components are used in different processing modules of the substrate processing system. The consumable component station provides temporary storage for consumable components (i.e., storage before the consumable component is transported to the processing module and storage after the consumable component is retrieved from the processing module), and therefore, this type of storage may be referred to herein as a "buffer." Processing modules within a substrate processing system and processing modules within different substrate processing systems within a manufacturing facility use different types of consumable components, each of which may differ slightly or substantially from other types of consumable components. In some cases, consumable components may be multi-component consumable components (such as stacked consumable components), where multiple components are interlocked or can lean against each other. In this case, each component in a multi-component consumable component may have a code set on the surface of the corresponding component, and the machine vision system is used to detect the number of components in the consumable component and capture the image of the code of each component to identify the consumable component as a whole.
[0063] In some embodiments, a robot in the substrate processing system moves a consumable component so that the position of the code is aligned within the field of view and depth of field of an image capture system, enabling the image capture system to capture an image of the code. The image capture system of the machine vision system includes an image capture device, such as a camera (with a lens), for capturing an image of the code on the consumable component, and at least one light source, such as a light-emitting diode, for illuminating the area on the consumable component where the code is located, so that the image captured by the camera is a clear image and can be easily decoded. The controller generates a signal to the processor to capture an image of the code located on the consumable component in response to the detection that the consumable component is aligned with the image capture system. In response, the processor sends a signal to (a) activate a light source (such as a light-emitting diode) to illuminate the area on the consumable component with the code aligned with the image capture system; and (b) activate the camera so that the camera can capture an image of the code located on the consumable component.
[0064] Next, the captured image is analyzed and decoded to determine the identification information contained therein. A string (also called a "string identifier") that identifies the consumable component is generated using the decoded information. The string identifier is delivered to the controller for verification. The controller includes software for verifying consumable components, which determines the identity of the consumable component and the type of processing module using the consumable component by querying a consumable component database. After successful verification of the consumable component by the software, the software then instructs the robot to move the consumable component for delivery to the processing module. The tracking and verification of consumable components ensures that the correct consumable component is delivered to the appropriate processing module, thereby eliminating the risk of incorrect consumable components being delivered to the processing module. After gaining a general understanding of the above embodiments, various specific details will be explained with reference to various figures.
[0065] Figure 1 illustrates a simplified block diagram of an exemplary substrate processing system 100 in one embodiment, wherein consumable components such as edge ring systems used in various processing modules are stacked. The substrate processing system shown may be part of a manufacturing facility in which multiple such substrate processing systems may be used. The substrate processing system 100 includes multiple modules such as a device front-end module (EFEM – also referred to herein as an atmospheric transport module or ATM) 102, one or more load interlocks 110, a vacuum transport module (VTM) 104, and one or more processing modules 112-116, which may be controlled by signals from a controller 108. The EFEM 102 is maintained under atmospheric conditions and includes one or more load interfaces 106 defined on a first side for receiving one or more wafer stations. Wafer stations on the load interfaces 106 may be accessed via openings controlled by one or more isolation valves. The wafer station buffers multiple wafers (i.e., semiconductor substrates), which are then supplied to processing modules 112-116 for processing to define semiconductor devices. The robot of EFEM 102 (also referred to as ATM robot 102a) retrieves wafers from the wafer station. ATM robot 102a includes an arm on which an end effector is mounted. The end effector supports the wafer retrieved from the wafer station and transports it to loading interlock 110 for forward transport to the processing modules (112-116). ATM robot 102a also supports a carrier plate on which consumable components can be supported. Using a carrier plate allows the same end effector of ATM robot 102a used for wafer transport to also transport consumable components to loading interlock 110 for forward transport to processing modules 112-116 without requiring redesign of the end effector.
[0066] In the embodiment shown in FIG. 1, the substrate processing system 100 includes a pair of loading interlocks 110-L and 110-R, which are coupled to EFEM 102 on one side and VTM 104 on the other side. The loading interlocks 110-L and 110-R function as an intermediate module between EFEM 102, which is maintained under atmospheric conditions, and VTM 104, which is maintained under vacuum (i.e., in a controlled environment). The loading interlocks 110-L and 110-R are disposed on a second side of EFEM 102. In one embodiment, the second side is defined as opposite to the first side. In another embodiment, the second side is defined as adjacent to the first side. Each of the load interlocks 110-L and 110-R includes a first isolation valve (not shown) on the side coupled to EFEM 102 and a second isolation valve (not shown) on the side coupled to VTM 104. When a wafer is to be transported from the wafer station to a load interlock (such as 110-L), the first isolation valve of load interlock 110-L is opened while the second isolation valve line remains closed. Once the wafer has been transported to load interlock 110-L, the first isolation valve is closed. The load interlock is then pumped to a vacuum while simultaneously keeping both the first and second isolation valves closed. Once load interlock 110-L reaches a vacuum, the second isolation valve is opened, and then the VTM robot 104a of VTM 104 moves the wafer from the load interlock to the appropriate processing modules 112-116 for processing.
[0067] When it is necessary to replace a consumable component 122, such as an edge ring, in processing modules 112-116, a process similar to wafer transport is followed. In the case of consumable component 122, the ATM robot 102a of EFEM 102 retrieves the consumable component from consumable component station 120 and transports it to loading interlocks 110-L or 110-R for forward transport to processing modules 112-116. In one embodiment, consumable component station 120 is located on the same side as loading interlocks 110-L and 110-R and is defined above loading interlocks 110-L and 110-R. Consumable component station 120 may include a plurality of slots in which consumable component 122 is buffered or stored. An end effector provided on the arm 102a of the ATM robot reaches consumable component station 120 to retrieve a carrier plate (not shown). After retrieving the carrier plate, the ATM robot 102a then retrieves the consumable component 122 from one of the multiple slots of the consumable component station 120 and balances the consumable component 122 on the carrier plate. The consumable component 122 is then removed from the consumable component station 120 and moved into the EFEM 102.
[0068] The replacement of consumable components 122 in the processing module can be performed based on signals from the operator, signals from a controller that continuously tracks various parameters of the substrate processing system, or signals from the processing module. Signals can be generated based on the remaining lifespan of the consumable component. For example, the processing module can automatically generate a signal if a consumable component has reached the end of its lifespan or has a lifespan shorter than the time required for one processing cycle of the processing performed within the processing module. Alternatively, the controller can generate a signal or the operator can manually initiate a signal to replace the consumable component in the processing module. The controller can respond to the signal by sending a set of instructions to the ATM robot 102a to retrieve consumable components stored in the consumable component station 120 and move the consumable component out of the consumable component station 120 and into the EFEM 102. In one embodiment, the controller can query a consumable component database to identify the type of consumable component used in the processing module. The consumable parts database is a knowledge base of all consumable parts used in various equipment within the manufacturing facility where the substrate processing system is located. In addition to the types of consumable parts used, the database maintains the usage history of different types of consumable parts used in different processing modules. For example, the database maintains a list and status (new, used, remaining service life, type, processing module using each type of consumable part, etc.) of consumable parts loaded into different slots of the consumable parts station. During the loading of consumable parts into the consumable parts station, whether manually or by an automated system (such as a robot or an automated consumable parts handling system), operators can provide a list of consumable parts. For example, operators or robots can load new consumable parts into slots 1-5 (e.g., slots within the new parts section) of the consumable parts station, while used consumable parts removed from automated processing modules can be loaded into slots 6-10 (e.g., slots within the used parts section). The controller can query the consumable parts database to identify the slot number from which the consumable part is to be retrieved, for the consumable part to be transported to the processing station in response to a signal for replacing consumable parts in the processing module. The controller can provide the slot number provided in this set of instructions to the ATM robot 102a. The end effector of the ATM robot 102a enters the consumable parts station and retrieves the consumable part from the identified slot in response to the instruction. Before transporting the consumable part to the processing module, the retrieved consumable part 122 is verified to ensure that the consumable part details registered in the consumable parts database actually correspond to the consumable part retrieved from the identified slot. It should be noted that the term "consumable part" as used in this application may include any alternative part used in the processing module.
[0069] Each of the consumable components 122 in the consumable component station 120 is provided with an identifier such as a Quick Response (QR) code 125 (FIG. 1A). In some embodiments, in addition to the QR code 125, a reference mark 123 is also provided on the consumable component 122. FIG. 1A illustrates such an embodiment in which an edge ring (i.e., a consumable component) 122 includes the reference mark 123 and the QR code 125. The reference mark 123 may be an optical mark, which is positioned at a predetermined angle to the QR code 125 and is used to align the consumable component 122. When the end effector of ATM robot 102a retrieves consumable part 122 from consumable part station 120, it aligns the consumable part 122 using an alignment tool (not shown) mounted on the arm of ATM robot 102a in the following manner: by aligning the consumable part 122 relative to and following a tracking reference mark 123, the QR code 125 is aligned above the field of view and depth of field of the image capture system 130 mounted in EFEM 102. In one embodiment, the image capture system 130 is mounted below an opening in EFEM 102 and enters the consumable part station 120. The image capture system 130 is not limited to being mounted below an opening; it may also be mounted above an opening or in any other location within EFEM 102 that ensures a clear image of the QR code 125 on the consumable part 122 is captured. Since the consumable component is aligned above the image capture system 130, an active light source, such as a pair of light-emitting diodes, illuminates the QR code area of the consumable component 122 and activates the image capture device (such as a camera) to capture the image of the QR code 125.
[0070] A processor 128 coupled to the image capture system 130 processes the captured images to obtain information related to a QR code 125 containing identification information of consumable components 122. In one embodiment, the processor processing the captured images is an edge processor. An edge processor is defined as a computing device located at the edge of a processing network, used to perform operations of capturing, storing, processing, and analyzing data near where the data is generated / captured (i.e., at the edge of the processing network). In the present embodiment, the image data captured by the image capture system is locally processed, stored, and analyzed at the edge processor where the image data is captured (i.e., collected), generating a string representing an identifier of a consumable component. The edge processor is used to perform basic calculations on the data collected by the image capture system and transmit minimal data (i.e., the result of the calculation – the string identifier of the consumable component) to the controller, thereby reducing the amount of bandwidth consumed during data transmission to the controller (i.e., the central computing device). Because most of the data is filtered and processed locally at the edge processor rather than transmitted to the controller and / or central computing device for processing and storage, this results in optimal bandwidth consumption. The advantages of using edge processors (i.e., edge computing) include speed of data processing (i.e., more data is processed locally and less data is transmitted to other computing devices), optimal bandwidth usage, security, scalability, flexibility, and reliability. It should be noted that although this application defines the capture, storage, and analysis of image data as being accomplished using an "edge processor," various embodiments are not limited to the use of edge processors, and other types of processors are also foreseeable, where some processing is performed locally but the remainder is performed at the controller or other computing device (including cloud computing devices).
[0071] Next, the identification information of the consumable component 122 embedded in the string is delivered to the software 126 for further processing. The software 126 may be a discrete processor coupled to the controller 108, or it may be implemented on the controller 108. The controller 108 may be part of a local computing device of the board processing system 100, or it may be a computing device coupled to a remote computing device such as a cloud computing device via a network such as the Internet or WiFi. The software 126 uses the identification information of the consumable component 122 contained in the string to query the consumable component database available to the controller 108 to verify that the consumable component 122 retrieved from the consumable component station 120 is a valid consumable component used in the board processing system 100 and the specifications of the processing modules (multiple modules) (112-116) using the consumable component. Upon successful verification, the consumable component 122 is moved to the loading interlock 110 for forward transmission to the processing modules 112-116. In addition to verifying consumable component 122, software 126 can also issue commands to processor 128. The software configured in processor 128 activates / deactivates light source 134, adjusts the light intensity of light source 134, activates / deactivates camera 136, enhances the image quality of the image captured by camera 136, decodes the captured image, generates a string to identify consumable component 122, and communicates the string to identify consumable component 122 to controller 108 for verification, in response to commands from software 126 in controller 108.
[0072] It should be noted that Figure 1 is an example of a substrate processing system in which an image capture system is provided to track and verify consumable components used within the substrate processing system. The embodiments are not limited to the substrate processing system of Figure 1, and other types of substrate processing systems with different configurations or different modules may also be considered for configuring an image capture system to track and verify consumable components used within the substrate processing system.
[0073] Figure 2 illustrates a simplified block diagram of a machine vision system 132 used in one embodiment to track and verify consumable component 122 before it is delivered to a processing module. The machine vision system 132 includes an image capture system 130 and an edge computing device (or edge processor) 128. The image capture system includes a camera (with a lens) and a pair of light-emitting diodes (LEDs) (134a, 134b). The camera is used to capture images of codes on the consumable component 122, and the pair of LEDs (134a, 134b) is used to illuminate a desired location of the camera 136 to capture an image of the target of interest. In the present embodiment, the desired location may be an area on the surface of the consumable component 122 where a target of interest (such as a code, for example, a QR code) 125 is defined. Only the number of LEDs used to illuminate the desired location (i.e., a pair) is provided as an example; it may include additional numbers of LEDs, such as 3, 4, 5, 6, 8, etc. The surface of the consumable component 122, which defines the QR code 125, can be a top surface or a bottom surface. In one embodiment, the consumable component 122 can be made of a transparent material, and the QR code 125 can be defined on both the top and bottom surfaces, with the QR code 125 on the top surface overlapping the QR code 125 on the bottom surface. The camera is powerful enough to capture an image of the QR code 125 from below.
[0074] The image capture system 130 is coupled to the edge processor 128. The image of the code captured by the image capture system 130 is delivered to the edge processor 128. The edge processor 128 processes the code to obtain identification information of the consumable component 122 contained in the QR code 125. The identification information of the consumable component 122 is used to generate a string identifier to identify the consumable component. The string identifier is delivered to the controller 108, which verifies the consumable component 122 and identifies the processing modules (multiple modules) 112-116 that use the consumable component 122. Upon successful verification, the consumable component 122 is delivered to the processing modules (112-116). In one embodiment, in addition to verifying that the consumable component 122 is a consumable component used in the processing module of the substrate processing system 100, the identification information can also be used to determine whether the consumable component 122 is a new consumable component or a used consumable component, and / or the remaining service life of the consumable component 122. Generally, when consumable component 122 reaches the end of its service life, the used consumable component is removed from the processing module. Therefore, the additional verification that the consumable component retrieved from consumable component station 120 is a new consumable component ensures that the consumable components arranged for processing modules 112-116 have a sufficient service life.
[0075] Figure 3 illustrates a simplified block diagram in one embodiment, showing some components of a controller 108 and an edge processor 128 for tracking consumable components 122. The controller 108 and edge processor 128 are part of a substrate processing system 100. The controller 108 includes a processor for controlling the operation of various components of the substrate processing system 100. The controller may be a standalone computing device or may be part of a network of computing devices (such as part of a cloud system). The controller 108 is connected to various components of the substrate processing system 100, such as the Atmospheric Transport Module (ATM) 102, the ATM robot 102a of ATM 102, the Vacuum Transport Module (VTM) 104, the robot of VTM 104a, the loading interlock 110, the processing modules 112-116, the isolation valve (not shown) defined at the loading interface 106, the consumable component station 120, the wafer station (not shown), the loading interlock 110, VTM 104, etc., power supplies (multiple power supplies), chemical sources (multiple chemical sources), etc. The controller 108 includes a software module (or simply "software") 126 for providing the necessary logic to generate appropriate commands and appropriate processing parameters. The commands are used to control the operation of various components, and the processing parameters are used to perform various processes within the different processing modules 112-116 of the substrate processing system 100. Software 126 is further used to query the consumable component database 108a available to controller 108 to obtain details of consumable component 122 for verification of consumable component 122 and for identification of processing modules (112-116). Each consumable component 122 buffered in consumable component station 120 is used in processing modules (112-116).
[0076] In addition to the controller 108 connected to various components of the substrate processing system 100, the controller 108 is also connected to the edge processor 128. In one embodiment, the edge processor 128 is coupled to the controller 108 by a switch 150, which may be via a wired connection. For example, a first cable (such as an Ethernet or Ethernet control automation technology cable, or other type of cable) may be used to connect the controller 108 to the switch 150, and a second similar or different type of cable may be used to connect the switch 150 to the edge processor 128. In other embodiments, the connection between the controller 108 and the edge processor 128 may be achieved via a wireless connection. In some embodiments, the switch 150 is coupled to a plurality of edge processors (such as EP1 128a, EP2 128b, EP3 128c, EP4 128d, etc.) using separate cables, each edge processor (EP1, EP2, EP3, EP4, etc.) performing a different function related to the operation of the substrate processing system 100. Switch 150 has Ethernet functionality, connecting multiple edge processors (such as 128a-128d) together and connecting them to controller 108 to form a network of computing devices (such as a local area network (LAN), wide area network (WAN), metropolitan area network (MAN), or as part of a cloud system). In some embodiments, switch 150 can connect controller 108 and edge processor 128 to a cloud system. One of the edge processors EP1 128a is used to track consumable components (122). Tracking is accomplished by capturing an image of a code (125) set on the consumable component (122), processing the image to decode the code (125) to generate a string identifying the consumable component (122), and delivering the generated string to controller 108 for verification.
[0077] To facilitate the capture of images of codes (125) on consumable components (122), an edge processor 128 is coupled to an image capture system 130, wherein the coupling is accomplished via a wired (i.e., cable) or wireless means. In some embodiments, the processor (such as the edge processor) 128 is located near the image capture system 130 and the software configured in the processor 128 is used to: receive images of codes (125) of different consumable components (122); decode the codes captured in the images to generate strings that identify the corresponding consumable components (122); and deliver the string identifiers of the consumable components (122) to the controller 108 for verification. The edge processor (multiple processors) 128 and the image capture system 130 together constitute a machine vision system (132).
[0078] In some embodiments, in addition to being coupled to the edge processor 128, the controller 108 is also coupled to a robot (also referred to herein as "ATM robot" 102a) within the EFEM (102), wherein the coupling may be performed via wired or wireless means. The controller 108 generates commands to control the functions of the ATM robot 102a within the EFEM (102). Some exemplary commands generated by controller 108 may include: a first pick-up command for picking up a wafer from the wafer station and conveying the wafer to the loading interlock device (110) for forward transmission to the processing modules (112-116) for processing; a second pick-up command for retrieving the processed wafer from the loading interlock device (110) and sending the processed wafer back to the wafer station; a third pick-up command for picking up a new consumable component (122) from the consumable component station (120) and conveying the new consumable component (122) to the loading interlock device for installation in the processing module; a fourth pick-up command for retrieving a used consumable component (122) from the loading interlock device and sending the used consumable component (122) back to the consumable component station (120), etc. Of course, the aforementioned list of commands generated by controller 108 and sent to ATM robot 102a is provided only as an example and should not be considered exclusive.
[0079] When it is necessary to track a consumable component (122), the software 126 of the controller 108 issues a command to the ATM robot 102a within the EFEM (102) to retrieve the consumable component (122) from a slot in the consumable component station (120) and align the consumable component (122) with the reading orientation, aligning the code on the surface of the consumable component (122) above the field of view of the image capture system 130 and, in some embodiments, with the depth of field of the image capture system 130, which is disposed on the inner sidewall of the EFEM (102). In some embodiments, the image capture system 130 is located near an opening in the mounting housing having the consumable component station. The opening of the mounting housing is defined to face the EFEM (102). The opening allows the robot of the EFEM 102 to retrieve the consumable component from the consumable component station 120. The image capture system includes a light source (such as LED 134) and a camera 136, the light source and camera 136 being oriented toward the opening of the mounting housing. A mounting housing with a consumable component station (120) is disposed on the outer wall (also referred to as the outer wall) of the EFEM (102). In some embodiments, the consumable component station (120) is disposed on the same side and above a pair of load interlocks (110) defined between the EFEM (102) and the vacuum transfer module (104) of the substrate processing system (100). In some embodiments, the side of the EFEM (not shown) coupled to the pair of load interlocks (110) and the consumable component station (120) is opposite to a first side that defines a plurality of load interfaces (not shown). The load interfaces are defined on the outer wall of the first side of the EFEM and are designed to receive wafer stations for storing processed wafers in the processing module. In other embodiments, a second side defining the consumable component station and the load interlocks may be adjacent to the first side. The location of the consumable component station (120) is provided, therefore, the opening of the consumable component station (120) relative to the EFEM 102, for example, is not limited to being defined above the loading interlock (110) but can be located on other sides of the EFEM (102). Thus, the location of the image capture system 130 can depend on which side of the EFEM (102) the opening of the mounting housing having the consumable component station (120) is defined on. Similarly, the location of the image capture system 130 is not limited to below the opening but can be defined above the opening, or in any other position / orientation relative to the opening, as long as the image capture system 130 can capture a complete, clear image of the code on the consumable component (122).
[0080] According to some embodiments, an end effector defined on the arm of the ATM robot 102a reaches and retrieves a carrier plate 162 housed in a consumable parts station 120 in response to a command from software 126. The end effector carrying the supported carrier plate 162 then reaches and enters a slot in the consumable parts station 120 to retrieve a consumable part 122 placed thereon. In some embodiments, the source slot for retrieving the consumable part may be provided based on a signal from a controller. The ATM robot 102a then retracts the end effector into an EFEM 102, where the consumable part 122 is aligned using an alignment member (not shown) provided on the arm of the ATM robot 102a. The alignment of the consumable part 122 is completed by a code 125 located in an open section not covered by any part of the carrier plate 162 (including the plurality of arm extensions). The consumable component 122 can be aligned using a reference mark 123 defined on it. The reference mark 123 is separate from the code 125 and forms a predetermined angle with it. This predetermined angle can be orthogonal (i.e., + / - 90°) or 180° or any angle in between, provided the code is located within an open section of the consumable component and is not covered by the multiple arm extensions of the carrier plate 162. The position of the code 125 within the open section ensures an unobstructed view of the code 125 for the LED 134 and the camera 136 of the image capture system 130. The LED 134 of the image capture system 130 is used to illuminate the code, and the camera 136 is used to capture an image of the code.
[0081] Edge processor 128, communicatively connected to controller 108, receives commands from controller 108. Different software applications configured in various edge processors (128a-128d) generate relevant signals to different components located within or coupled to edge processors (128a-128d), instructing the components to perform different functions and returning relevant data (if any) to controller 108 in response to commands from controller 108. Figure 3 shows some components of edge processor 128a in an exemplary embodiment, which can be controlled by software applications configured in edge processor 128a for tracking consumable components 122. In another embodiment, edge processor 128a can be programmable to interact with various components and provide necessary signals to enable different functions. Components that can be controlled by signals generated by software applications configured in edge processor 128a or by programs defined within edge processor 128a may include image enhancer 138, communication server 140, camera driver 142, recorder 144, decoder (such as QR decoder) 146, and LED driver 148. The foregoing list of components controlled by edge processor 128a is provided as an example and should not be considered exclusive. Edge processor 128a may include additional components to perform various functions related to tracking consumable components 122. In some embodiments, the software application configured in edge processor 128a is an image processing application, and the various components and their dependencies operate in a container such as a Docker container 141, thus allowing the image processing application to be launched automatically and consistently on any edge processing platform.
[0082] The communication server 140 within the edge processor 128a receives commands from the software 126 of the controller 108 and delivers the commands to a software application (such as an image processing application). Commands from the controller can be used to capture and provide identification information of a code 125 set on the surface of the consumable component 122. In one embodiment, the command from the controller may be a scan command. The scan command may be generated by the controller in response to the ATM robot 102a having moved the consumable component with the code defined on its surface to a reading position (i.e., within the field of view of the image capture system). The ATM robot 102a may move the consumable component to a reading position in response to a command delivered to the ATM robot 102a from the controller, wherein the command may be automatically generated by the controller based on the remaining lifespan of the consumable component or based on communication from a processing module configured with the consumable component, or the command delivered to the ATM robot 102a may be generated based on a command from an operator.
[0083] For example, a software application configured in edge processor 128a generates a first signal sent to LED driver 148 and a second signal sent to camera driver 142 in response to a scan command from controller 108. The first signal instructs LED driver 148 to activate a light source (such as a pair of LEDs 134 or other types or numbers of light sources), and the second signal instructs camera driver 142 to activate camera 136. LEDs 134 and camera 136 (with a lens) together represent image capture system 130. Activating the light source (i.e., LEDs 134) illuminates the code and activates the camera in response to the signal from the software application. The activated camera 136 captures an image of code 125 illuminated by LEDs 134 and brought to the reading position by ATM robot 102a. In the various embodiments discussed herein, code 125 is considered a QR code. However, embodiments are not limited to QR codes but may include other types of data matrix codes, barcodes, printed text codes, or any other type of identification mark that can be captured in an image and used to obtain identification information.
[0084] The image captured by camera 136 can capture a segment of a consumable component containing the intrinsic material and a code (such as a QR code) 125 etched / engraved / printed into the intrinsic material. In some embodiments, the code 125 is etched onto the top or bottom surface of the consumable component using a laser (such as laser etching). In other embodiments, the code 125 may be defined in other ways. In some embodiments, the etched code 125 is identified by judging the contrast between the intrinsic material and the etched surface containing the code. Judging the contrast between the etched surface and the surface containing the intrinsic material can be difficult because the contrast is minimal. To correctly decode the code, the contrast between the etched surface and the intrinsic material surface must be increased. To improve the contrast, a software application delivers the image captured by the camera to an image enhancement module 138 for image enhancement. The image enhancement module 138 acquires the raw image provided by camera 136 and processes the image to eliminate image noise, increase contrast, and improve the overall quality of the image. The software application delivers the enhanced image from the image enhancement module 138 to a decoder (e.g., a QR decoder) 146 to analyze the image of the code, decode the information contained in the image, and generate a string (i.e., a string identifier) that identifies the consumable component 122. It should be noted that the code 125 captured in the image can be a QR code, a data matrix code, a printable text code, a barcode, etc. Therefore, in one embodiment, a single decoder can be used to analyze images containing any other type of code 125, including QR codes, and generate appropriate string identifiers for the consumable component 122. In other embodiments, the edge processor 128 may include corresponding decoders to analyze each type of code 125 used on the consumable component 122 and generate appropriate string identifiers for the code 125. The decoder 146 decodes the details contained in the image of the code 125 and generates a string identifier that identifies the consumable component as part of the analysis. The software application delivers the string identifiers generated by the decoder 146 to the communication server 140 of the edge processor 128 for verification by the forward transmission controller 108. Furthermore, the string identifiers of the codes and the corresponding enhanced images are delivered to the recorder 144 for storage. The recorder 144 maintains the history of images of different codes captured by the image capture system, the decoded QR codes decoded by the decoder 146, the corresponding string identifiers of different consumable components, and consumable component errors, etc.
[0085] In one embodiment, the communication server 140 delivers a string identifier containing details of a consumable component to the software 126 of the controller 108. The software 126 receives the string identifier of the consumable component and verifies the details contained in the string identifier relative to the details of the consumable component stored in the consumable component database 108a, which is available to the software 126 of the controller 108. The consumable component database 108a is a knowledge base that stores detailed information on each type of consumable component used in the manufacturing facility where the substrate processing system 100 is located, identifying each type of consumable component. Verification can be used to ensure that the consumable component 122 associated with the code 125 scanned and captured by the camera of the image capture system 130 is a valid consumable component 122 for use in one or more processing modules of the manufacturing facility, and verification can be used to obtain the identity of the processing module using the consumable component. After successfully verifying the consumable component 122 retrieved from the consumable component station 120, the software 126 can send a command to the ATM robot 102a, indicating successful verification and moving the consumable component 122 to the relevant processing module where the consumable component is to be installed. On the other hand, if the verification fails, an error message is generated and displayed on the display screen associated with the controller. The edge processor 128a captures and processes the image of the code on the consumable component, generates a string identifier for the consumable component, and delivers only the string identifier to the controller 108 for verification, thereby reducing or limiting the amount of data transmitted to the controller 108.
[0086] Figure 4 illustrates specific elements of a machine vision system 132 in one embodiment and various parameters associated with specific elements considered for use in the tracking substrate processing system 100. In one embodiment, the machine vision system 132 includes an image capture system having a camera (with a lens) 136 and a light source (such as an LED) 134, and an edge processor 128. The machine vision system 132 may include additional elements besides the image capture system and the edge processor 128. Various parameters associated with the machine vision system 132 need to be considered to obtain a clear image of the object of interest (such as code 125 (i.e., a QR code)) so that the edge processor 128 can detect finer details contained in the image and use those details to decode the information contained in the code to identify the consumable component 122. In the embodiments shown in Figures 4 and 5, the main elements of the machine vision system 132 and various parameters associated with each main element are displayed. For example, the main components of a machine vision system may include an illumination source 134, an object of interest (such as a QR code 125), a lens 136a, an edge processor (for image / video processing) 128, and a camera 136. The foregoing components are provided as examples and should not be considered limiting. Fewer or more components may be considered when designing the machine vision system 132. In some embodiments, the lens 136a is separate from the camera 136. In such embodiments, different lenses with different specifications such as focal length, field of view, depth of field, and resolution can be mounted on the camera. In some embodiments, the lens 136a may be part of the camera 136.
[0087] In the case of illumination source 134, certain relevant parameters of illumination source 134 associated with a clear image of captured code 125 include the position, angle of incidence, number, intensity, spectrum / color, viewing angle, diffuser, and / or polarizer of the illumination source. In one embodiment, the illumination source is defined as a pair of LEDs. The LEDs must be positioned relative to the camera to ensure that the light energy from the LEDs provides optimal illumination to the area containing the consumable component of the code, enabling the camera to capture finer details of the image of the code without shadows or glare. Shadows or glare may blur the details of the code captured by the camera. In one embodiment, a pair of LEDs is used to illuminate the code on the consumable component. The number of LEDs (i.e., quantity) is determined to ensure that the code is adequately illuminated. In some other embodiments, a small ring of LEDs may be placed near the camera instead of a pair of LEDs. The embodiments are not limited to a pair or a ring of LEDs, but may include additional LEDs as needed (e.g., 4, 6, 8, etc. (i.e., more than a pair)), and the various parameters to be considered for the pair of LEDs are also related to the single or additional LEDs. In some embodiments, the LEDs may be programmed according to color, intensity, etc., to ensure that sufficient illumination is provided without excessive light saturating the image.
[0088] In some embodiments, the position of the LEDs within the image capture system 130 includes, for example, the separation length between two LEDs. In addition to the separation length of the LEDs, the separation height (depth of field of view) of the LEDs and camera unit from the surface of the consumable component with the code (i.e., the object of interest) 125 is also defined. In one embodiment, the separation length of the two LEDs is proportional to the separation height between the pair of LEDs and the code. In an exemplary embodiment, the ratio is defined between approximately 1:1.3 and approximately 1:1.7 to create an overlapping illumination area covering the surface area of the consumable component with the code. In some embodiments, depending on the surface polish and transparency of the consumable component, illumination techniques such as bright areas, dark areas, dome lighting, on-axis lighting (DOAL), or backlighting can be used to clearly identify all features of the code. It should be noted that the aforementioned illumination techniques are provided as examples and should not be considered exclusive; other types of illumination techniques may also be used. The illumination intensity and the area of light overlap are defined so that the image captured by the camera includes finer details of the code. An incident angle must be defined to provide optimal illumination to the consumable component containing the code. When using a pair of LEDs, the incident angle may need to be defined such that the light cone originating from one of the LEDs overlaps with the light cone of the other LED in the pair, and the overlapping area at least covers the size of the code. The number of LEDs (i.e., quantity) must be determined to ensure that the area on the consumable component containing the code is adequately illuminated. The intensity and spectrum / color of the LEDs must also be considered to ensure that the consumable component containing the code is adequately illuminated to ensure image capture without any shadows or glare (or with a reasonable / acceptable amount of shadow and / or glare that does not obstruct the sharpness of the captured image). Similarly, the viewing angle of the LEDs must be considered to ensure that the code is fully illuminated for the camera to capture an image. In one embodiment, a diffuser and / or polarizer may need to be provided to prevent the illumination provided by the LEDs in the image from causing glare in the image. In one embodiment, when a diffuser is present, the diffuser may be positioned at a predetermined distance in front of each LED. In some embodiments, one or more polarizers may be provided in addition to a diffuser, or one or more polarizers may be provided instead of a diffuser. When a polarizer is present, it can be positioned in front of one or more LEDs and / or the lens of a camera at a predetermined distance from the LEDs and / or the lens.
[0089] In one embodiment, when determining various parameters of other components of the machine vision system 132, it may be necessary to consider features and parameters related to the object of interest (i.e., code 125 (such as a QR code)). For example, when determining illumination position, illumination intensity, camera resolution, etc., it may be necessary to consider the size of the code, the size of various feature portions within the code, the geometric features of the code, and the geometric features of the feature portions within the code.
[0090] When defining various parameters of the components of a machine vision system, the materials used to manufacture consumable parts must also be considered. For example, due to different surface properties, different materials may reflect light in different ways, and images are captured based on the amount of light reflected from different parts of the surface of the consumable part. Therefore, when determining the characteristics of the LED, camera, and lens used to capture the image of code 125, the amount of light transmitted by the different materials used in the consumable part, the type of material used (i.e., transparent or opaque material), the color of the material, and the surface polish (i.e., surface texture) must be considered. Furthermore, code 125, such as a QR code, can be laser-etched onto the top or bottom surface of the consumable part 122. Therefore, the surface characteristics of the consumable part may vary in the area where the code is defined due to laser etching, including the portion of the surface of the intrinsic material exhibiting different surface characteristics (such as light reflectivity, light reflectance) than the portion containing the laser-etched code.
[0091] In addition to defining a code on the surface of the consumable component, a reference mark can also be defined on the consumable component. The reference mark can be an optical mark located on the top surface, the bottom surface, or both of the top and bottom surfaces of the consumable component. When the reference mark is located on both the top and bottom surfaces, the reference mark on the top surface overlaps with the reference mark on the bottom surface. The reference mark is separated from the code by a predetermined distance. The reference mark functions as a reference point from which the position of the code can be determined. The reference mark can be a lifting mark or an etched surface that can be detected by a sensor located in the arm of the ATM robot. The sensor can be a laser sensor and can be part of an alignment element defined on the arm of the ATM robot. In other embodiments, the sensor can be a contrast-type LED sensor. In one embodiment, the sensor can be an analog-contrast type LED fiber optic sensor with a padded curtain on an optical fiber. An alignment mechanism can be used to rotate a consumable component along an axis (such as a horizontal axis) and to rotate a sensor. The sensor detects the position (coordinates) of a reference marker relative to a specific point on the alignment mechanism mounted on the ATM robot's arm. Once the coordinates of the reference marker are determined, the alignment mechanism can be used to rotate the consumable component along the horizontal axis by a predetermined angle in a clockwise or counterclockwise direction. This aligns the code with the field of view and depth of field of the image capture system, providing LED illumination to the area containing the code on the consumable component and allowing the camera to capture an image of the code. This alignment method places the code in an open area of the carrier plate on which the consumable component is received, thus providing the camera with an unobstructed view of the code.
[0092] Various characteristics of the lens 136a used in the camera 136 are affected by the object of interest (such as code 125), the LED 134, and the characteristics of the camera. For example, the focal length of the lens is essential for capturing the features of tiny codes (such as QR codes). For example, a QR code may have a size of 3 x 3 mm or 4 x 4 mm, and each element (such as a dot, line, square, rectangle, etc.) may have a size of approximately 100 micrometers. Therefore, selecting the correct focal length enables the camera to capture the minute details of the QR code. When selecting an appropriate lens, depth of field is another parameter that must be considered. For example, when an ATM robot brings consumable parts to the image capture system, the distance at which the consumable parts with codes are placed may not be 100% accurate, and there may be some variation in the depth of alignment. In such cases, selecting a lens with a higher depth of field helps the robot capture the image. In one embodiment, the camera lens may be fixed to the housing of the image capture system using a locking ring. In other embodiments, the lens may be designed to move up and down within the housing. In this embodiment, due to the limited space within the EFEM, the degree of lens mobility may need to be predefined. When selecting a camera lens, the lens mounting type must be considered. Different types of lens mounts exist, and choosing the correct mount for the camera lens is crucial. For example, some mount types include C-mounts, S-mounts, and CS-mounts. S-mounts are for smaller lenses, while C-mounts and CS-mounts are for larger lenses. Larger lenses offer better optical performance. In some embodiments, due to space and size limitations, S-mount lenses may be considered because S-mount lenses are significantly smaller than C-mount and CS-mount lenses. The effective scanning area of a lens can depend on the amount of distortion / aberration experienced in different segments of the image; the outer edges of the image typically experience higher distortion / aberration, while the inner segments have less. Therefore, when selecting a camera lens, the amount of distortion that may exist on the code must be considered, and this distortion may be based on the material of consumable components, the type of technology used to define the code on consumable components, etc. The size of the lens depends on the type of mount, which in turn depends on the amount of space available for the image capture system within the EFEM.
[0093] When selecting a camera 136 for an image capture system, certain characteristics that must be considered include frame rate, global / roll shutter speed, quantum efficiency, and interface, as well as resolution, sensor size, shutter speed, pixel size, dark noise, monochrome / color, size, and mounting. In one embodiment, the capture of images coded by a camera with a 1-megapixel resolution can be selected. In another embodiment, the capture of images coded by a camera with a 5-megapixel resolution can be selected. In one embodiment, the frame rate may be less important when the captured image is a still image rather than video. In another embodiment, the frame rate can be considered when capturing coded images. Similarly, a global / roll shutter can be used to capture moving images, but since the captured image is a still image, the shutter type may be less important. In other embodiments, the camera used to capture coded images can consider global / roll shutter speed as a camera parameter.
[0094] For image / video processing, the edge processor 128 is positioned near the image capture system of the machine vision system 132 to process the image captured by the image capture system locally, generate a string that can identify consumable components using the processed information, and provide the string identifier of the consumable components to the controller of the baseboard processing system for identification by the consumable components. In one embodiment, the edge processor 128 may be a central processing unit (CPU) based device. In another embodiment, the edge processor 128 may be a graphics processing unit (GPU) based device. GPUs can generally process images faster than CPUs. However, high-end CPUs can process images faster than low-end GPUs. Therefore, depending on the type of processing the image must undergo and the processing speed of the CPU or GPU, the edge processor may be a CPU-based or GPU-based device. Regardless of the type of processor, the edge processor 128 is selected to have the ability to perform parallel computing, image processing such as color filtering, edge detection, background removal, contrast enhancement, binarization, and shape transformation. Similarly, the software system, as part of the controller, receives a string identifier transmitted by the edge processor and queries the consumable component database to verify consumable components before issuing a command to the ATM robot to transfer consumable components to the loading interlock device for forward transport to the processing module. As shown in Figure 4, various parameters of different components are selected or configured to accurately track and verify consumable components. Therefore, only consumable components that pass verification are transported to the processing module in the substrate processing system.
[0095] Figures 5A-5D illustrate different isometric views of the image capture system 130 in some embodiments. Figure 5A illustrates a top isometric view of the image capture system 130, Figure 5B illustrates a side isometric view of the image capture system 130, Figure 5C illustrates a rear isometric view of the image capture system 130, and Figure 5D illustrates a top perspective view of the image capture system 130. Referring also to Figures 5A-5D, the image capture system 130 includes a housing 156 (Figure 5D), in which a camera 136 and a pair of LEDs 134a and 134b are mounted. The housing 156, which houses the camera 136 and the LEDs 134a and 134b, is attached to the inner sidewall of the EFEM using a pair of brackets. The image capture system shows that the pair of LEDs 134a and 134b are disposed on either side of the camera 136. The pair of LEDs (134a and 134b) are shown to be separated by a length L1. In one embodiment, the defined length L1 is between approximately 70 mm and approximately 80 mm. The housing extension length L2 of the pair of brackets is excluded. In one embodiment, the defined length L2 is between approximately 90 mm and approximately 110 mm. The total housing extension length L3 includes the pair of brackets. In one embodiment, the defined length L3 is between approximately 130 mm and approximately 150 mm. The housing extension width W1 is defined. In one embodiment, the defined width W1 is between approximately 32 mm and approximately 38 mm. The pair of brackets includes a left bracket 152-L and a right bracket 152-R, each of which has an opening to accommodate a fixing / coupling device for attaching the image capture system 130 to the inner sidewall of the EFEM (not shown). In one embodiment, the height H1 of the right bracket 152-R is defined as between approximately 50 mm and approximately 60 mm. The height H2 of the left bracket 152-L is defined to be between approximately 30 mm and approximately 40 mm. In one embodiment, the top of the housing includes an outer cover 154. The outer cover 154 can be used to shield the LEDs and other components of the image capture system from any contamination. In some embodiments, the camera 136 may be positioned such that the bottom surface of the camera is separated from the bottom surface of the housing 156 by a separation distance H3 (e.g., depth of field). In one embodiment, the separation distance H3 is defined to be between approximately 5 mm and approximately 9 mm. It should be understood that the dimensions provided for the various features of the image capture system 130 are merely examples and the various dimensions may vary based on the amount of available space on the sidewall below the opening of the consumable component station to the EFEM.
[0096] Figure 6 illustrates a view of an arm 166 of an ATM robot 102a used to move consumable components between an ATM and a consumable component station in one embodiment. The arm 166 of the ATM robot 102a is shown in a folded position, connected at one end to the body of the ATM robot 102a and at the second end to an end effector 164. The end effector 164 is used to support the carrier plate 162 and the consumable component 122 when the consumable component 122 needs to move between the consumable component station and the loading interlock of the substrate processing system. The end effector 164 is also used to support the wafer when the wafer needs to move between the wafer station and the loading interlock of the substrate processing system. The arm 166 of the ATM robot 102a also includes an alignment member 158, which is used to rotate the consumable component 122 along an axis (such as a horizontal axis) so that an alignment sensor 160 mounted on the alignment member 158 can detect the position of a code disposed on the surface of the consumable component 122. A reference mark 123 can be used to assist in positioning the code on the surface of the consumable component 122. The reference mark 123 can be an optical mark different from the code 125 and can be at a predetermined angle to the code 125. The end effector carries the consumable component 122 received on the carrier plate 162, and the rotor chuck (not shown, simply referred to as the "rotor") moves upward to lift the carrier plate containing the consumable component away from the end effector. Once the carrier plate is lifted, the end effector moves to avoid obstruction. The alignment component then rotates the rotor and the carrier plate, while the alignment component sensor 160 (such as a laser sensor) detects the reference mark 123 defined on the consumable component as the reference mark passes below the alignment component sensor 160.
[0097] Upon detecting the reference mark 123, the alignment sensor 160 identifies the coordinates of the reference mark 123. The ATM robot arm 166 is provided with the offset coordinates of the code 125 relative to the reference mark 123, wherein the offset coordinates are calculated using the coordinates of the reference mark and a predetermined angle of the code relative to the reference mark 123. The alignment device 158 then rotates the consumable component 122 clockwise or counterclockwise along an axis to compensate for the offset, so that the code 125 falls above the field of view of the image capture system when the arm 166 of the ATM robot 102a retracts from the consumable component station. The camera of the image capture system captures an image of the aligned code and uses it to determine the string identifier of the consumable component 122. The code 125 may be a QR code, etc., and in various embodiments, the code 125 may also be interchangeably referred to as QR code 125. It should be noted that the code 125 is not limited to a QR code but may also include barcodes or other types of markings used to identify the consumable component 122.
[0098] Figures 7A and 7B illustrate certain examples of the position of code 125 relative to a reference mark 123 defined on the surface of a consumable component. Figure 7A illustrates a top view of a consumable component 122 having reference marks 123 and code 125 defined on a top surface in one embodiment. It should be noted that the surfaces (multiple surfaces) defining the reference marks may be based on the material type used for the consumable component. In some embodiments, when the consumable component is made of a transparent material (such as quartz), the top and bottom surfaces have sufficient texture to disperse LED light. In such embodiments, the reference marks can be defined on both the bottom and top surfaces using laser polishing, such that the reference marks defined on the top surface overlap with the reference marks defined on the bottom surface. Such double-surface etching can be used to ensure that the reference marks can be adequately detected. When the consumable component has flame polishing on the top surface, the reference marks are defined on the bottom surface (because the top surface has been polished). The surfaces defining the reference marks are determined to ensure that the reference marks can be distinguished from the inherent surfaces. The display code 125 is defined orthogonally to the reference mark 123 in a clockwise direction. Figure 7A shows a partial unfolded view of a consumable component 122 in the center, illustrating the reference mark 123 and the code (such as a QR code) 125 defined on the top surface of the consumable component. Figure 7B illustrates a bottom view of the consumable component 122 in another embodiment, showing the relative position of the QR code 125 with respect to the reference mark 123. In this embodiment, the QR code 125 is defined orthogonally to the reference mark 123 in a counter-clockwise direction. An alignment element is used to align the QR code 125 based on the detected reference mark 123, ensuring that the QR code 125 is aligned within the field of view of the camera of the image capture system.
[0099] Figures 8A and 8B illustrate, in one embodiment, the consumable component 122 is retrieved from the consumable component station 120 to the EFEM 102 before being used in a processing module (not shown), and the code on the consumable component 122 is placed above the image capture system 130 for verification. The consumable component 122 is retrieved from the consumable component station 120 using an ATM robot 102a. In one embodiment, the consumable component station 120 provides a housing (i.e., a buffer) for a plurality of consumable components and includes a plurality of slots arranged vertically for receiving the consumable components 122. A separate housing is provided for the carrier plate 162. The housing may define the carrier plate 162 on top of the bottom surface, or on the underside of the top surface, or on top of a separate plate between the top and bottom surfaces of the consumable component station 120. In one embodiment, the controller (not shown) of the substrate processing system issues a first command to the ATM robot 102a to retrieve a consumable component 122 located in the consumable component station 120 and a second command to the edge processor (not shown) to identify the consumable component 122. The ATM robot 102a extends its arm 166, equipped with an end effector 164, into the consumable component station 120 via an opening on its front side 120f (i.e., the side of the consumable component station 120 coupled to the EFEM 102 at the opening) to retrieve the consumable component from the slot, in response to the first command from the controller. The ATM robot 102 first retrieves the carrier plate 162 from the carrier plate housing (not shown), and then moves the carrier plate 162 to the slot in the consumable component station 120 to retrieve the consumable component 122 contained in the slot. Consumable components are manually loaded into the consumable component station 120 through an opening in the outer wall of the back side, so that reference marks 123 defined on consumable components 122 are aligned with each other and with a specific mark defined on consumable component station 120. In one embodiment, the consumable component 122 is loaded such that the orientation of the reference marks 123 is aligned with the center of the transparent window defined in the top surface of the consumable component station 120. Display codes (such as QR codes) 125 are orthogonally positioned relative to the reference marks 123 in a clockwise direction. The retrieved consumable component is then aligned with the image capture system 130. Furthermore, the alignment of consumable component 122 is completed so that the reference marks 123 and QR codes 125 are outside the area covered by the arm extension 163 of the carrier plate 162. This alignment is used to ensure that the QR codes 125 are visible to the camera and are not obstructed by any part of the carrier plate 162. In the embodiments shown in Figures 8A and 8B, the dimensions of the reference mark 123 and the QR code 125 are exaggerated for illustrative purposes; in reality, their dimensions are much smaller (e.g., about 80-120 micrometers).
[0100] The consumable component 122 is retrieved from the slot and balanced on the end effector 164. The end effector 164, carrying the consumable component 122 on the carrier plate 162, is then retracted from the consumable component station 120 to deliver the consumable component 122 into the EFEM 102. In the EFEM 102, the consumable component 122 is aligned using an alignment member 158 (FIG. 6) mounted on the arm 166 of the ATM robot 102a, so that when the consumable component 122 is positioned above the image capture system 130, the QR code 125 of the consumable component 122 is aligned within the field of view and depth of field (i.e., the reading position) of the camera of the image capture system 130. FIG. 8B shows that when the arm 166 with the end effector 164 places the aligned consumable component 122 in the reading position above the image capture system 130, the QR code 125 is aligned within the field of view defined above the camera 130 of the image capture system.
[0101] Upon detecting a consumable component positioned above the image capture system 130 (such as a controller that receives signals from one or more sensors located near an opening and / or within the image capture system 130), the controller issues a second command to the edge controller to capture an image of the QR code 125. The edge controller responds to the second command by issuing a first signal to the LED driver to activate the LED and a second signal to the camera driver to activate the camera. The LED driver activates the LED to illuminate the area above the LED containing the consumable component with the QR code 125, in response to the first signal. Similarly, the camera driver activates the camera to capture an image of the area containing the QR code 125, in response to the second signal.
[0102] Figures 9A-9C illustrate the area illuminated by the LED and the field of view of the lens of the camera 136 in one embodiment. Figure 9A illustrates an isometric view of a portion of a consumable component having the QR code 125 aligned above the image capture system 130. An LED 134 disposed on either side of the camera 136 illuminates that portion of the consumable component having the QR code 125, such that the cone of light from the first LED 134a (i.e., illumination area IA1) overlaps with the cone of light from the second LED 134b (i.e., illumination area IA2). The separation distance between the two LEDs 134a and 134b is defined by L1. The separation distance L1 between the LEDs 134a and 134b is defined such that the overlapping area defined by IA1 and IA2 at least covers the size of the QR code 125. Furthermore, the separation distance L1 is defined to ensure that the light from the LEDs is neither too little, resulting in shadows, nor too much, causing glare in the area of the captured QR code 125. The separation distance between the surface of the consumable component 122 with QR code 125 and the camera 136 is defined by SD1. The separation distance SD1 is proportional to L1. In some embodiments, to achieve the highest effective field of view of the camera used to capture the image of QR code 125, the optimized distance between L1 and SD1 can be defined to be between about 1:1.3 and about 1:1.7. When the consumable component with QR code 125 is within the field of view and optimized depth of field of the image capture system, the overlapping area CA1 covers the area with QR code 125. The camera 136 captures the image of QR code 125 illuminated by the pair of LEDs (134a, 134b). Figure 9B illustrates a two-dimensional representation of the area illuminated by the pair of LEDs and the overlapping area relative to QR code 125. The overlapping of the illumination area IA1 of LED 134a and the illumination area IA2 of LED 134b defines the coverage area CA1 that covers the area with QR code 125.
[0103] The image enhancement module (Fig. 3-138) receives the image captured by the camera 136 for further enhancement. The enhanced image is fed forward to a decoder (such as a QR decoder (136)), where the enhanced image is analyzed and decoded to identify details of each feature of the QR code 125. Details of each feature of the QR code 125 are used to generate a string identifier for a consumable component. Fig. 9C illustrates an example of a feature 125f1 identified from the enhanced image of the QR code 125. As can be seen from the magnified image of the QR code 125, the QR code 125 contains a plurality of features, wherein the features have different shapes and sizes. The shapes and sizes of the features can be interpreted to identify different details of the QR code 125. Details of the QR code 125 are used to generate a string that can identify a consumable component. Figs. 9D-1 to 9E-2 illustrate the surface characteristics of the QR code 125 etched onto the surface of the consumable component 122 in some embodiments. In one embodiment, FIG9D-1 illustrates the surface characteristics of a portion of a consumable component made of quartz material, wherein the QR code 125 shown in FIG9D-2 is laser-etched onto a surface. In another embodiment, FIG9E-1 illustrates the surface characteristics of a portion of a consumable component made of silicon carbide material, wherein the QR code 125 in FIG9E-2 is laser-etched onto the surface of consumable component 122. The left-hand side (LHS) of FIG9D-1 shows the laser-etched surface, while the right-hand side (RHS) of FIG9D-1 shows the intrinsic material (i.e., quartz material). The laser-etched surface is smooth, but the un-laser-etched surface (i.e., the intrinsic material) has surface characteristics (i.e., roughness). Due to the variation in surface texture, incident light from LED 134 can be reflected in different ways.
[0104] The variation in surface texture (i.e., relative roughness) between the etched and unetched surfaces can be in the range of micrometers. The camera captures the variation in light reflection from different surfaces, where the light reflection in the rough (i.e., textured) intrinsic material segments is much greater than the light reflection in the segments defined by the electro-etched QR code 125. The images of different segments are enhanced using the image enhancement module 138 and used to identify different features contained in features 125f1 (shown in FIG. 9C) that are only a few micrometers in size. The LHS in FIG. 9E-1 shows the laser-etched surface, while the RHS in FIG. 9E-2 shows the intrinsic material. The surface texture of the etched surface of the consumable part 122 made of silicon carbide is different from that of the etched surface of the consumable part made of quartz, and the camera can capture the variation in light reflection from different surfaces. Different modules of the edge processor enhance and analyze images to identify features based on the materials used in the consumable component and the type of technology used to define codes on the surface of the consumable component. Various features of the QR code 125 are combined to determine the details of the consumable component 122 that defines a string that identifies the consumable component. The string identifier of the consumable component is delivered to the controller for verification. Once the consumable component 122 is verified as a valid consumable component to be used in a specific processing module within the board processing system, the controller then issues a command to the ATM robot, causing the ATM robot to transfer the consumable component to the loading interlock for forward transfer to the specific processing module for installation.
[0105] Figures 10A-10C illustrate different designs of consumable components, such as edge rings, used in processing modules within a substrate processing system in some embodiments. The consumable component, such as an edge ring, can be a single ring or a group of rings. In the case of a group of rings, the rings can interlock with each other or be stacked on top of each other. Each ring in the group can be made of a single material or different materials. Depending on the type of material used for the consumable component, the code is defined on the bottom surface, on the top surface, or on both the top and bottom surfaces, with the code on the top surface overlapping the code on the bottom surface. Figure 10A illustrates a consumable component 122 in one embodiment, which is a one-piece consumable component made of quartz material. The QR code 125 used for the consumable component 122 can be defined on the top surface, or the bottom surface, or both the top and bottom surfaces. In Figure 10A, the QR code 125 is defined on the bottom surface of the consumable component 122. When aligned using the alignment tool of the ATM robot, the orientation of the QR code 125 is such that it falls within the overlapping area shown in CA1 of Figure 10A. The overlapping area CA1 is defined by the illumination area IA1 of LED 134a and the illumination area IA2 of LED 134b. The overlapping area CA1 provides sufficient illumination for the camera 136 of the image capture system 130 to capture the image of the QR code 125, but does not provide too much light to cause glare or too little light to cause shadows. The material used to manufacture the consumable part is not limited to quartz but can be silicon carbide or other similar materials.
[0106] Figures 10B-1 and 10B-2 illustrate alternative embodiments of a consumable component made of a pair of rings, wherein the rings are interlocked with each other. Each ring in the pair is made of the same material (e.g., quartz) and has its own code on the surface of each ring. The codes on each ring are defined at different locations. In the embodiment of Figure 10B, the interlocking of the rings results in the top surface of the first ring 122a being coplanar with the top surface of the second ring 122b. The first code 125a of the first ring 122a and the second code 125b of the second ring 122b are defined on the bottom surfaces of the first and second rings, respectively. In this embodiment, an ATM robot is instructed to read the first code 125a and the second code 125b, respectively. Therefore, as shown in Figure 10B-1, the ATM robot receives a first instruction and a second instruction. The first instruction causes the ATM robot to align the first code 125a of the first ring 122a into the camera's field of view. The second instruction causes the ATM robot to move a consumable component in a clockwise or counterclockwise direction to align the second code 125b of the second ring 122b with the camera. In the example shown in Figure 10B-2, the second instruction is used to move the consumable component clockwise by a distance driven by the separation distance between the first and second codes. To assist the ATM robot in alignment, the controller provides the coordinates of the first code 125a of the first ring 122a and the second code 125b of the second ring 122b via an edge processor. Similarly, a first instruction and a second instruction (i.e., a command) are provided to the edge computer. The first instruction activates the LED to illuminate the area of the consumable component having the first code 125a and activates the camera to capture an image of the first code 125a of the first ring 122a. The second instruction activates the LED to illuminate the area of the second code 125b of the second ring 122b and activates the camera to capture an image of the second code 125b. In some embodiments, once the camera has captured an image of the first code 125a, the camera and LED are deactivated, and the camera and LED are reactivated by the second instruction. Therefore, the LED illuminates an area near one code at a time instead of illuminating two codes simultaneously. Furthermore, the LED illuminates the code tangentially to avoid any shadows.
[0107] Figures 10C-1 and 10C-2 illustrate another alternative embodiment of a consumable component made of two parts (i.e., a pair of edge rings). Furthermore, each part (i.e., each ring) of the pair of rings is made of a different material. For example, the first ring (i.e., the first part) 122a is made of quartz, and the second ring (i.e., the second part) 122b is made of silicon carbide. Also, the second ring 122b is stacked on top of the first ring 122a. Therefore, the first code 125a of the first ring 122a and the second code 125b' of the second ring 122b' are disposed at different depths, and the two codes are defined on the bottom surface of each ring (122a, 122b'). Using the embodiments defined with reference to Figures 10B-1 and 10B-2, coordinates for two codes 125a and 125b' are provided to the ATM robot to assist it in aligning the two codes into the field of view of the image capture system's camera. In addition to providing coordinates, depth details for the two codes 125a and 125b' are also provided to the ATM robot, enabling the camera to capture images of the two codes sequentially. Using the embodiments of Figures 10B-1 and 10B-2, the ATM robot aligns the first code 125a of the first ring 122a into the field of view of the image capture system's camera, activating the LED and the camera in response to commands from the controller via the edge processor. As shown in Figure 10C-1, the camera captures the image of the first code 125a. As shown in Figure 10C-2, once the image 125a of the first code is captured, a second command from the controller causes the ATM robot to align the second code 125b' of the second ring 122b' within the field of view of the image capture system's camera, activating the LED and the camera so that the camera can capture the image of the second code 125b'. The difference between Figures 10B-2 and 10C-2 is that the depth of field of the camera and the illumination area of the LED in Figure 10C-2 are larger than those in Figure 10B-2, due to the depth difference between codes 125b and 125b'. The lens used in the camera is selected so that it can capture the image of the first code at the first depth and the image of the second code at the second depth.
[0108] Figure 10D illustrates a cross-sectional view of a consumable component (such as an edge ring) in one embodiment, the consumable component having a pocket defining an inner diameter. In this embodiment, the top surface of the consumable component is highly polished (i.e., nearly optically clean). Therefore, the code must be defined on a different surface other than the top surface. This is because high polishing results in low reflectivity on the top surface. When the code is defined on such a highly polished surface, the reflectivity variation between the segment of the consumable component with the code and the segment without the code is minimal. To ensure that the image of the code can be properly captured and read, the code is defined on the bottom surface (125-1) or in the pocket (125-2) at the inner diameter on the bottom. The code defined on such a surface can be easily determined based on the reflectivity variation of light from such surfaces. In some embodiments, the inner diameter pocket is defined in the consumable component to provide support for the wafer when receiving the wafer in a processing module having the consumable component. Alignment elements used for aligning consumable components are also used for aligning wafers when receiving wafers in a substrate processing system. In the case of consumable components, the alignment element is used to detect reference marks. In the case of wafers, the alignment element can be used to detect notches in the wafer to align the wafer before it is transported to the processing module. Reference marks on the consumable component are detected before the wafer is received on the consumable component. Furthermore, in some embodiments, aligning consumable components to be transported to the processing module includes aligning the reference marks of the consumable component with the notches of the wafer.
[0109] Figures 10E and 10F illustrate the orientation of a reference mark relative to a code in some embodiments. Figure 10E shows a top view of a reference mark defined on a consumable component, and Figure 10F shows a bottom view. As shown in the images captured in Figures 10E and 10F, the reference mark is more clearly detectable when it is formed on the top surface of the consumable component compared to when it is formed on the bottom surface. Furthermore, the mark on the top surface provides visibility to the operator during manual loading to and unloading from the consumable component station, thus allowing proper alignment of the consumable component within the consumable component station. In the top view of Figure 10E, a shaded area defining the reference mark is shown. The shaded area shown in the top view extends only to a specific depth of the consumable component, where the shaded area can be used as an indicator of the presence of the reference mark. The reference mark can be defined as a portion that is etched away, where that portion is not completely etched through the depth of the consumable component. The bottom view also shows the shade. However, the intensity of the shade in the bottom view is less than the intensity of the shade in the top view. The lower intensity of the shadow may be due to the fact that the reference mark is not fully defined by the depth of the consumable component. In some embodiments, the alignment sensor is a contrast-type LED fiber optic sensor with a padded curtain on the fiber or a simple laser sensor, which can detect the intensity of the shadow to determine where the reference mark is defined on the consumable component. Areas with reference marks have more light transmission than areas without reference marks. The alignment sensor can detect this variation and associate it with the presence of the reference mark. After detecting the presence of the reference mark, the ATM robot associates the coordinates of the reference mark. The coordinates of the reference mark are related to a reference point on the alignment component. The position of the code is then determined using the coordinates of the reference mark, and the coordinates of the reference mark are also used to align the consumable component when transporting it to the processing module for installation. The method of detecting the reference mark on the consumable component is similar to detecting a notch on a wafer used in the processing module.
[0110] Figures 11A-11C illustrate a consumable component station, which is used to buffer consumable components used in different processing modules of a substrate processing system. An opening 120f on the front side of the consumable component station 120 opens into an EFEM. The consumable component station 120 may be coupled to the outer wall of an EFEM on one side defining a pair of loading interlocks. In some embodiments, the loading interlocks are defined between the EFEM and a vacuum transfer module. In one embodiment, the sidewall defining the EFEM and the loading interlocks may be opposite a second side defining a set of loading interfaces. The loading interfaces are defined on the outer wall of the second side. The loading interfaces are used to receive a wafer station and include an opening for buffering wafers processed in the processing modules of the substrate processing system, the opening allowing the wafers to move in and out of the wafer station. In other embodiments, the consumable component station may be defined on one side adjacent to the side defining the loading interlocks or the wafer station. In some embodiments, the consumable component station includes a plurality of slots defined along a vertical orientation for receiving and buffering consumable components used in the processing module. In some embodiments, the consumable component station also accommodates a carrier plate 162 for supporting the consumable components when they need to move between the consumable component station and the processing module. The carrier plate may be accommodated on a bottom surface, the bottom surface of a top surface, or a separate plate defined between the top and bottom surfaces. The consumable component station also includes a second opening defined on an outer side wall (i.e., a side wall defined on the rear side) for loading consumable components into the consumable component station. Figure 11A shows an isometric view of the interior of the consumable component station 120, with the rear door of the consumable component station 120 removed to reveal the second opening. The consumable component station 120 also includes a transparent or see-through window 120W on the top surface to provide a view of the interior of the consumable component station 120. In one embodiment, the transparent window 120W is made of plexiglass. In one embodiment, consumable components are loaded into consumable component station 120 such that a reference mark is aligned with the back of the consumable component station within a tolerance range (e.g., + / - 5°), allowing the alignment mechanism on the ATM robot to perform finer alignment. When the ATM robot wants to remove the consumable component from the consumable component station, the ATM robot reaches and passes through the front opening (not shown) of consumable component station 120 and removes the consumable component 122, supported on carrier plate 162, from the consumable component station and into the EFEM. Because consumable component 122 is removed from consumable component station 120, the front opening is designed to provide sufficient clearance between the edge of the front opening and consumable component 122. In some embodiments, the clearance is between approximately 3 mm and approximately 7 mm. In other embodiments, the clearance is less than or greater than the aforementioned range.
[0111] Figure 11B shows a top view of the top surface of a consumable component station 120 in one embodiment. The top surface shows a transparent (i.e., see-through) window 120W defined near a rear opening 120b (i.e., a second opening defined in the outer sidewall of the rear side of the consumable component station 120), which is used to load and unload consumable components into and from the consumable component station. The window 120W functions as a viewing window, providing a view of the interior of the consumable component station 120. Consumable components are loaded so that a reference mark is aligned with the center of the back of the window 120W. During installation (e.g., manual or mechanical loading), the reference mark 123 of the consumable component may not be perfectly aligned and there may be an alignment deviation from the desired position. Figure 11C shows a downward view of the stack of consumable components (e.g., edge rings) received in the consumable component station. The consumable components are aligned so that, when loaded into the consumable component station, the reference marks 123 of the various consumable components fall within an acceptable alignment deviation margin. In one embodiment, the acceptable alignment deviation margin may be + / - 5° to the center of window 120W. An acceptable alignment deviation margin limit is provided as an example; other ranges may also be considered. Maintaining alignment during consumable component loading facilitates rapid alignment of the code above the image capture system when the consumable components are moved above the image capture system. Rapid alignment results in faster image capture and processing, as well as faster identification and verification of consumable components.
[0112] Figures 12A-12D illustrate the alignment of reference marks relative to codes on consumable parts and relative to consumable part stations in some embodiments. The reference marks are aligned outside the area of the consumable parts covered by the carrier plate 162 and the multiple arm extensions of the carrier plate 162. As described with reference to Figures 11A-11C, when a consumable part is loaded into a consumable part station, the consumable part is aligned such that the reference marks are aligned relative to a predetermined position defined on the back side of the consumable part station. In some cases, the consumable part may not be perfectly aligned with the predetermined position but may deviate within a tolerance limit (e.g., + / - 5°). Figure 12A illustrates a top view of a consumable part received above the carrier plate 162, which is supported on the end effector (not shown) of an ATM robot. Figure 12A also shows the positions of reference mark 123 and code 125 relative to reference mark 123 in one embodiment. In this embodiment, code 125 is orthogonal to reference mark 123 in a clockwise direction (i.e., at 90°). The consumable component is aligned such that both the code and the reference mark are located in an area not covered by any part of the carrier plate 162 including arm extension 163, thereby providing the camera with a clear view of the code for capturing its image. Figure 12B illustrates the relative orientation of the reference mark within the consumable component station 120. As described, the reference mark is aligned with the back of the consumable component station 120 and outside the area containing the arm extension 163 of the carrier plate 162. Figure 12C illustrates other positions of code 125 on the consumable component 122 relative to reference mark 123. Code 125 may be orthogonal to reference mark 123 in a clockwise (position 1) or counter-clockwise (position 3) direction, or it may be located opposite the reference mark (position 2). In some embodiments, code 125 may be at a predetermined radial angle (e.g., 90°, 180°, 270°, etc.) to a reference mark in a clockwise or counterclockwise direction. In some embodiments, code 125 is not orthogonal to or opposite to reference mark 123, but rather at an angle to reference mark 123 such that both code 125 and reference mark 123 are located in a region of consumable component 122 without being obstructed by any part of carrier plate 162. Figure 12D illustrates the scanning area (i.e., field of view) of the camera of the image capture system when capturing an image of code 125. QR code 125 may have a small size (e.g., about 3-5 mm), therefore it needs to be captured with high precision to capture the details of QR code 125. Therefore, the camera is used to capture details on the surface of a portion of the consumable component containing the QR code. In the embodiment shown in Figure 12D, depending on the radius of the QR code location, the camera captures a scanning area of approximately + / - 1° to approximately + / - 1.3°, which is shifted from the edge of the QR code to a margin of approximately + / - 3.5 mm. For example, if the size of QR code 125 is approximately 4 mm square, the scanning area captured in the image then covers approximately + / - 3.5 mm for a total scanning area of approximately 11 mm.Figure 12D shows the area covered by QR code 125 and the scanning area surrounding QR code 125. Therefore, the image of QR code 125 captured by the camera on a consumable component includes not only the area of QR code 125 but also the area surrounding it. The characteristic features of the QR code can be determined by detecting differences in the surface characteristics of different parts of the scanning area.
[0113] The various embodiments described herein provide methods for tracking and verifying consumable components before they are transferred to a processing module. Verification can prevent the incorrect consumable component from being sent to the processing module or the consumable component from being sent to the wrong processing module. Regardless of the material used for the consumable component, the number of components constituting the consumable component, or the size and geometry of the code defined on the consumable component, an online camera system (i.e., an image capture system) as part of a substrate processing system can capture images of the QR code defined on the surface of the consumable component. The various embodiments are discussed using QR codes, but can be extended to other types of codes (such as barcodes, other data matrix codes).
[0114] The foregoing descriptions are provided for illustrative and exemplary purposes, but are not intended to exclude or limit the invention. Individual elements or features of a particular embodiment are generally not limited to that particular embodiment but are interchangeable in the application and can be used in a selected embodiment, and may be varied in many ways even if not specifically shown or described herein. Such variations should not be considered as departing from the invention, and it is intended that all such modifications be included within the scope of the invention.
[0115] Although the foregoing embodiments have been described in detail to some extent for the purpose of clearly understanding the object of the present invention, it should be understood that certain changes and modifications may be made within the scope of the claims. Therefore, the embodiments of the present invention should be regarded as illustrative and non-limiting, and the embodiments are not limited to the details listed herein, but may be modified within the scope of the claims and their equivalents. [Simplified Explanation of the Diagram]
[0037] FIG1 illustrates a simplified block diagram of a substrate processing system in one embodiment, wherein a machine vision system for tracking consumable components is applied in the substrate processing system. FIG1A illustrates an unfolded view of consumable components used in the substrate processing system.
[0038] Figure 2 illustrates a simplified diagram of a machine vision system in one embodiment, the machine vision system including an image capture system for capturing images of codes disposed on consumable components.
[0039] Figure 3 illustrates a simplified diagram of the various components of a processor in a machine vision system for identifying consumable parts in one embodiment.
[0040] Figure 4 illustrates an overview of a machine vision system for tracking consumable components in one embodiment.
[0041] Figures 5A-5D illustrate different views of an image capture system in one embodiment, which is used to capture images of codes set on consumable components.
[0042] Figure 6 illustrates a portion of a robot arm with an alignment sensor in an atmospheric transport module in one embodiment. The alignment sensor is used to detect reference marks set on the surface of consumable parts.
[0043] Figure 7A illustrates a top view of a consumable component in one embodiment, showing the relative position of a reference mark with respect to a code used to track the consumable component.
[0044] Figure 7B illustrates a bottom view of a consumable component in one embodiment, showing the relative position of a reference mark with respect to a code.
[0045] Figure 8A illustrates a consumable component balanced on a carrier plate before alignment above the image capture system in one embodiment, the carrier plate being supported on a robot arm within the consumable component station.
[0046] Figure 8B illustrates, in one embodiment, a consumable component having a code is aligned above an image capture system to cause the code to be captured.
[0047] Figure 9A illustrates a simplified representation of an image capture system in one embodiment, which captures an image illuminated by a pair of light-emitting diodes and aligned above a camera.
[0048] Figure 9B illustrates a two-dimensional representation of the illumination area of a light-emitting diode in one embodiment of an image capture system, with the code on the consumable component illuminating the light-emitting diode in the image capture system.
[0049] Figure 9C illustrates a sample of the code of a consumable component detected from an image of the code captured by the image capture system in one embodiment.
[0050] FIG9D-1 illustrates the variation of surface characteristics when the code is set on a consumable part made of a first material in one embodiment, and FIG9D-2 illustrates a sample code set on the surface of the consumable part.
[0051] FIG9E-1 illustrates the variation in surface characteristics when the code is set on a consumable part made of a second material in another embodiment, and FIG9E-2 illustrates a sample code set on the surface of the consumable part.
[0052] Figure 10A illustrates an example of a consumable part made of a particular material in one embodiment and the position of a code on the surface of the consumable part captured by an image capture system.
[0053] Figures 10B-1 and 10B-2 illustrate an example of a consumable component made of a first component and a second component in one embodiment, wherein a first code is located on the surface of the first component and a second code is located on the second component, wherein the first component and the second component are made of the same particular material.
[0054] Figures 10C-1 and 10C-2 illustrate an example of a consumable component made of a first component and a second component in one embodiment, wherein a first code is located on the surface of the first component and a second code is located on the surface of the second component, wherein the first component and the second component are made of different materials and the setting depth of the first code is different from the setting depth of the second code.
[0055] Figure 10D illustrates a cross-sectional view of a consumable component (such as an edge ring) in one embodiment, the display code of which may be set on different surfaces.
[0056] FIG10E illustrates a top view of an image of a reference mark detected on the surface of a consumable component in one embodiment, and FIG10F illustrates a bottom view of an image of a reference mark defined on a consumable component.
[0057] FIG11A illustrates a rear view (i.e., back side view) of a consumable component station in one embodiment, the consumable component station being used to buffer consumable components used in a substrate processing system.
[0058] FIG11B illustrates a top view of the consumable component station shown in FIG11A in one embodiment, and FIG11C shows an unfolded view of a top window defined on the top surface of the consumable component station, which provides a view of the interior of the consumable component station.
[0059] Figures 12A-12D illustrate, in one embodiment, the image of a code disposed on the surface of a consumable component relative to a reference mark is captured, the consumable component being supported on a carrier plate.
Claims
1. A machine vision system for tracking and verifying consumable components in a substrate processing system, comprising: a mounting housing having a consumable component station for storing a plurality of consumable components therein, the mounting housing having an opening facing a device front-end module (EFEM) of the substrate processing system such that a robot in the EFEM can retrieve a consumable component from the consumable component station; and an image capture system for responding to the robot moving the consumable component to place a code on the consumable component within a field of view of the image capture system, and capturing an image of the code, the image capture system including a camera and a light source, the image capture system being located near the opening of the mounting housing, wherein the camera and the light source are oriented toward the opening of the mounting housing; A processor is communicatively connected to the image capture system and a controller. The processor is used to process and analyze the image of the code captured by the image capture system and generate an identifier for the consumable component to be returned to the controller. The controller issues instructions to the robot to move the consumable component from the consumable component station to a processing module through the opening of the mounting housing.
2. The machine vision system for tracking and verifying consumable components in a substrate processing system as described in claim 1, wherein the processor is configured to interact with: an image enhancement module for enhancing the image; a decoder for decoding the enhanced image and generating a string identifying the consumable component; and a communication module for communicating with the controller to identify the string of the consumable component for verification.
3. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 2, wherein the controller is configured to: provide multiple signals to the processor to activate the light source and initiate the capture of the image of the code; and verify the consumable component using the string delivered by the processor.
4. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the light source includes a plurality of optical elements whose positions are defined to illuminate the code and provide an overlapping area, wherein when the consumable component is placed in a reading orientation, the overlapping area at least covers an area on the surface of the consumable component where the code is present.
5. The machine vision system for tracking and verifying consumable components in a substrate processing system as described in claim 4, wherein the robot includes an alignment member for aligning the consumable component to the reading orientation.
6. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 5, wherein the alignment member is used to detect a reference mark set on the consumable component, wherein the reference mark is set at a predetermined angle relative to the code on the consumable component, wherein the robot moves the consumable component based on a plurality of instructions from the controller, the plurality of instructions specifying the predetermined angle to move the consumable component relative to the reference mark so as to align the code into the field of view of the camera of the image capture system, the image capture system being used to capture the image of the code illuminated by the light source.
7. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 4, wherein the reading orientation is defined to correspond to an open area of the consumable component not covered by one of the robot's end effectors, so as to provide an unobstructed field of view for the camera used to capture the image.
8. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the image capture system includes a transparent cover defined in a top of the opening facing the mounting housing, the transparent cover being used to shield the camera and the light source of the image capture system.
9. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the camera of the image capture system is disposed at a first distance from the surface of the consumable component on which the code is provided, and the light source comprises a plurality of optical elements, wherein each of the plurality of optical elements is separated from each other by a second distance.
10. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 9, wherein the first distance is proportional to the second distance and is defined between approximately 1:1.3 and approximately 1:1.
7.
11. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the image capture system includes a diffuser, or a polarizer, or both a diffuser and a polarizer, wherein the light source is a pair of light-emitting diodes, and wherein each of the diffusers, when present, is positioned in front of one or both of the pair of light-emitting diodes at a predetermined first distance, and wherein each of the polarizers, when present, is positioned in front of one or both of the pair of light-emitting diodes at a predetermined second distance, or in front of the lens of a camera at a predetermined third distance, or in front of the lens of the camera at the predetermined second distance and in front of one or both of the pair of light-emitting diodes at the predetermined third distance.
12. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the consumable component station has an outer side wall facing opposite to the opening of the mounting housing, the outer side wall having a second opening for receiving the consumable component station for loading and unloading the consumable component.
13. A machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the consumable component in the consumable component station is made of two components, and the code is disposed on a surface of each of the two components, wherein a first code in one of the two components is separated from a second code in a second component by a predetermined distance, and wherein the robot moves the consumable component based on a plurality of instructions from the controller, the plurality of instructions including a first set of instructions and a second set of instructions, the first set of instructions being used to move the consumable component so that the first code disposed on the first component falls into the field of view of an image capture system and simultaneously activate the light source to illuminate the first code and enable the camera to capture an image of the first code, the second set of instructions being used to move the consumable component so that the second code disposed on the second component falls into the field of view of the image capture system and simultaneously activate the light source to illuminate the second code and enable the camera to capture an image of the second code disposed on the second component.
14. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 13, wherein the first and second components of the two consumable components are made of the same material, wherein the material is either quartz or silicon carbide.
15. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 13, wherein the first component and the second component of the two consumable components are made of different materials, wherein the first component of the two consumable components is made of quartz and the second component is made of silicon carbide.
16. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the light sources are arranged to illuminate the code in a tangential manner.
17. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the processor is an edge processor, the edge processor being used to store the image of the code, process the image, analyze the image, generate a string identifying the consumable component, and transmit the string to the controller for verification, and wherein the edge processor is connected to the controller via an Ethernet switch.
18. The machine vision system for tracking and verifying consumable components in a substrate processing system as claimed in claim 1, wherein the consumable component is an edge ring disposed adjacent to a wafer received on a wafer support surface within a processing module of the substrate processing system.
19. A robot for tracking consumable components in a substrate processing system, comprising: an end effector defined on an arm and designed to support a carrier plate for supporting the consumable component, the consumable component being a hardware element that is periodically replaced due to damage; and an alignment member disposed on the arm and configured to rotate the carrier plate and the consumable component along an axis, the alignment member having a sensor for tracking a reference mark defined on a surface of the consumable component and providing the offset coordinates of the reference mark to a controller of the substrate processing system, wherein the robot is configured to receive a set of instructions from the controller to move the consumable component supported on the carrier plate from a consumable component station to a reading orientation relative to the reference mark, wherein the reading orientation is defined such that a code disposed on the surface of the consumable component falls within the field of view of an image capture system of the substrate processing system, such that the image capture system can capture an image of the code. The image captured by the image capture system is processed to generate an identifier for the consumable component. The controller uses the identifier to verify the consumable component for replacement in the substrate processing system.
20. A robot for a consumable component in the tracking board processing system of claim 19, wherein the image capture system is communicatively connected to the controller, the image capture system receives a second set of instructions from the controller, wherein the second set of instructions includes a first instruction and a second instruction, the first instruction being used to activate a light source disposed within the image capture system to illuminate the code, and the second instruction being used to activate a camera within the image capture system to initiate the capture of the image of the code.
21. A robot for a consumable component in a tracking substrate processing system as claimed in claim 19, wherein the reference mark is an optical mark defined on the surface of the consumable component at a predetermined angle to the clip, and wherein the reading orientation is defined to correspond to an open area of the consumable component, the open area being located outside an area covered by the extension of the plurality of arms of the carrier plate.
22. A robot for a consumable component in a tracking substrate processing system as claimed in claim 19, wherein the sensor of the alignment member is either a laser sensor or a reference LED fiber optic sensor, the reference LED fiber optic sensor having a padding curtain on the fiber optic cable.
23. A robot for tracking consumable components in a substrate processing system as claimed in claim 19, wherein the robot is disposed within a device front-end module (EFEM) of the substrate processing system, the EFEM providing access to the consumable components stored in a consumable component station of a mounting housing of the substrate processing system, the access to the consumable components in the consumable component station of the mounting housing being provided to the robot via an opening defined toward the EFEM.
24. A robot for a consumable component in a tracking substrate processing system as claimed in claim 19, wherein the offset coordinates of the reference marker and the image of the code are delivered to the image capture system via a processor by the controller, the processor interacting with an image enhancement module to enhance the image of the code captured by the image capture system, interacting with a decoder to decode, analyze the image and generate a string representing the identifier of the consumable component, and interacting with a communication module to communicate the string with the controller for verification of the consumable component.
25. A robot for a consumable component in a substrate processing system as claimed in claim 19, wherein the end effector of the robot for moving the consumable component from the consumable component station is for moving a wafer from a wafer station to deliver the wafer to a processing module within the substrate processing system, and the alignment member of the robot is for detecting a notch in the wafer and controlling the orientation of the wafer relative to the notch before delivering the wafer to the processing module.
26. A robot for a consumable component in a tracking substrate processing system as claimed in claim 19, wherein the consumable component is made of a first component and a second component, a first code is disposed on a surface of the first component and a second code is disposed on a surface of the second component, wherein the first code of the first component is separated from the second code of the second component by a predetermined distance, and wherein the set of instructions provided to the robot includes a third instruction and a fourth instruction, the third instruction being for moving the consumable component so that the first code disposed on the first component can reach the reading orientation relative to the reference mark to allow the capture of an image of the first code, and the fourth instruction being for moving the consumable component so that the second code disposed on the second component can reach the reading orientation relative to the reference mark to allow the capture of an image of the second code disposed on the second component.
27. A machine vision system for tracking and verifying consumable components in a substrate processing system, comprising: a mounting housing having a consumable component station for storing the consumable component therein, the mounting housing having an opening facing a device front-end module (EFEM) of the substrate processing system such that a robot in the EFEM can retrieve a consumable component from the consumable component station, the consumable component being a hardware component that is periodically replaced due to damage; and a controller for causing the robot in the EFEM to move the consumable component from the consumable component station through the opening of the mounting housing and place a code of the consumable component within the field of view of an image capture system. The image capture system is used to capture an image of the code on the consumable component. The image capture system includes at least a camera and a light source. The image capture system is disposed near the opening of the mounting housing, wherein the camera and the light source are oriented toward the opening of the mounting housing. A processor is communicatively connected to the image capture system and the controller. The processor is used to process and analyze the image of the code captured by the image capture system and verify whether the consumable component is suitable for replacement in the substrate processing system.
Citation Information
Patent Citations
Method and apparatus for inspecting semiconductor wafer
KR1020040040737A
Apparatus for optically recognizing wafer indentification code
KR1020090076439A
Integrated hardware-software computer vision system for autonomous control and inspection of substrate processing systems
TW202123353A
Using identifiers to map edge ring part numbers onto slot numbers
US20200075430A1
Automated transfer of edge ring requiring rotational alignment
WO2020247146A1
