Control system and substrate processing device
Patent Information
- Application Number
- KR1020267025258
- Authority / Receiving Office
- KR · KR
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-02-02
- Filing Date
- 2024-11-27
- Publication Date
- 2026-09-04
Smart Images

Figure PCT00001_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to a control system and a substrate processing device. Background Technology
[0002] Patent Document 1 discloses a control system comprising a first controller that controls a machine tool according to an NC (Numerical Control) program, a second controller that controls a target device according to a sequence program, and a support device. Paragraph 0030 of Patent Document 1 contains the description "PLC (Programmable Logic Controller)." Prior art literature
[0003] Japanese Patent Publication No. 2021-026309 The problem to be solved
[0004] PLCs control control targets such as electric motors and sensors. Computers, such as PCs (personal computers), are also sometimes used to control control targets due to their greater versatility and high functionality compared to PLCs. When controlling targets with a computer, it is necessary to configure the computer to enable communication between the computer and the control target. However, compared to communication between a PLC and the control target, the burden required for setting up communication is greater when communicating between a computer and a control target.
[0005] At least one embodiment of the present invention provides a control system and a substrate processing device that can reduce the burden required for setting up communication. means of solving the problem
[0006] One embodiment of the present invention provides a control system comprising at least one PLC (Programmable Logic Controller) that controls at least one control target, and at least one computer that stores a sequence program and controls the at least one control target in the at least one PLC by executing the sequence program.
[0007] In the above embodiment, at least one of the following features may be added to the control system.
[0008] The above at least one PLC does not store the sequence program.
[0009] The above at least one PLC is a plurality of PLCs that control a plurality of control targets, and the above at least one computer includes a main computer that stores the sequence program and executes the sequence program, and a plurality of sub-computers that store a plurality of sub-sequence programs, execute the plurality of sub-sequence programs when the main computer executes the sequence program, and control the plurality of control targets in the plurality of PLCs.
[0010] The above at least one computer stores a sequence creation application that creates the above sequence program.
[0011] Another embodiment of the present invention provides a substrate processing apparatus comprising: a plurality of processing units for processing a substrate; a conveying system for conveying the substrate to the plurality of processing units; at least one PLC for controlling a plurality of control targets formed in the plurality of processing units and the conveying system; and at least one computer for storing a sequence program and controlling the plurality of control targets in the at least one PLC by executing the sequence program.
[0012] The plurality of processing units may include two or more processing units that perform different processing on the substrate. At least one of the aforementioned features regarding the control system may be added to the substrate processing device. Brief explanation of the drawing
[0013] FIG. 1 is a block diagram showing an example of a control system related to an embodiment of the present invention. FIG. 2 is a block diagram for explaining an example of sequence control performed by the control system shown in FIG. 1. FIG. 3 is a block diagram showing another example of a control system related to one embodiment of the present invention. FIG. 4 is a schematic diagram showing an example of a substrate processing apparatus related to one embodiment of the present invention. FIG. 5 is a schematic diagram showing another example of a substrate processing apparatus related to one embodiment of the present invention. Figure 6 is a flowchart showing an example of a schedule created by the main computer. Figure 7 is a flowchart showing an example of the drug solution supply process shown in Figure 6. FIG. 8 is a block diagram for explaining an example of sequence control performed by the control system shown in FIG. 3. Specific details for implementing the invention
[0014] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0015] FIG. 1 is a block diagram showing an example of a control system CS related to an embodiment of the present invention. The control system CS is a system that enables a target device to perform a function of the target device by executing a sequence program (145). When the control system CS executes the sequence program (145), sequence control is performed by the control system CS, and the target device performs a function of the target device using at least one control target (300).
[0016] The sequence program (145) is a computer program that executes sequence control in the control system CS by using at least one control target (300) equipped in the target device in the control system CS. The sequence program (145) may be a program written in a visual programming language such as an LD (ladder diagram) language used when creating a ladder diagram, or may be a program written in a text programming language that describes the program using only one or more of characters, symbols, and numbers.
[0017] The target device may be a device that performs the function of the target device using a target object, or a device that performs the function of the target device without using a target object, such as a heater or a lamp. In the former case, the function of the target device may be a function that causes a change to the target object, a function that does not cause a change to the target object, or both. When the target device causes a change to the target object, the function of the target device may be at least one of processing and treatment of the target object, or other than these. When the target device does not cause a change to the target object, the function of the target device may be at least one of measurement, imaging, and transport of the target object, or other than these. The target object may be a tangible object or an intangible object such as data.
[0018] In the case where the target device is a device that performs the function of the target device using a target object, the target device may be a substrate processing device (1) (see FIG. 4 and FIG. 5) that processes the target object substrate W, or it may be a device other than the substrate processing device (1), such as a machine tool or an inspection device. The substrate W may be any of, for example, a semiconductor wafer, a substrate for an FPD (Flat Panel Display) such as a liquid crystal display or an organic EL (electroluminescence) display, a substrate for an optical disc, a substrate for a magnetic disc, a substrate for an optical magnetic disc, a substrate for a photomask, a ceramic substrate, and a substrate for a solar cell, or it may be any other of these. The semiconductor may be a single element (element semiconductor) or a compound (compound semiconductor). The substrate W may be a disc-shaped substrate W such as a semiconductor wafer, or a rectangular or rectangular substrate W such as a substrate for an FPD.
[0019] The target device includes at least one control target (300) used when the function of the target device is performed, and at least one PLC (Programmable Logic Controller) (200) that controls the at least one control target (300).
[0020] The control target (300) is an electronic device or an electrical device that performs at least one of transmitting and receiving an electrical signal. The control target (300) may be an input device that performs only the transmission of an electrical signal, an output device that performs only the reception of an electrical signal, or an input / output device that performs both the transmission and reception of an electrical signal. The control target (300) may be at least one of a sensor, a camera, a button, a switch, an actuator, a heater, a lamp, an electronic valve, and a buzzer, or it may be any other device. A sensor, a camera (more specifically, an image sensor of a camera), a button, and a switch are examples of input devices. An actuator, a heater, a lamp, an electronic valve, and a buzzer are examples of output devices.
[0021] An actuator is a device that converts driving energy, which represents electric, fluid, magnetic, thermal, or chemical energy, into mechanical work, that is, the motion of a fluid. Actuators include electric motors (rotary motors), linear motors, air cylinders, and other devices. If the actuator is an electric actuator such as an electric motor or a linear motor, the actuator may include a motor driver that controls the power to be supplied according to the instructions of a PLC (200), and a motor body that converts the power supplied from the motor driver into the motion of a fluid. If the motor driver is capable of supplying power to the motor body, the motor driver may be fixed to the motor body or separated from the motor body. If the actuator is an actuator other than an electric actuator (such as an air cylinder), the actuator may include an electric valve equipped with an electric actuator and an actuator body that converts the energy of the fluid passing through the electric valve into the motion of a fluid.
[0022] The control target (300) includes an automatic valve equipped with an actuator. Solenoid valves and electric valves are included in the automatic valve. The automatic valve may be an opening / closing valve that opens and closes a fluid path, or a flow control valve that changes the flow rate of a fluid. The automatic valve includes a valve body formed with an annular valve seat through which a fluid such as liquid or gas passes, a valve body movable relative to the valve seat, and an actuator that moves the valve body between a closed position where the valve body contacts the valve seat and an open position where the valve body is separated from the valve seat. The actuator of the automatic valve may be a pneumatic actuator or an electric actuator, or an actuator other than these. The opening degree of the automatic valve is changed by controlling the actuator of the automatic valve. By doing so, the opening / closing valve is opened or closed, or the opening degree of the flow control valve is changed.
[0023] A control system CS is equipped with at least one PLC (200) that controls at least one control target (300) and at least one computer (100) that controls at least one PLC (200). FIG. 1 illustrates an example in which a plurality of PLCs (200) and one computer (100) are formed. The control system CS may be equipped with an HMI (Human Machine Interface) (150). The HMI (150) is an electronic or electrical device that receives instructions from a person to the control system CS. The HMI (150) may not only receive instructions from a person to the control system CS but also transmit information generated by the control system CS to the person. FIG. 1 illustrates an example in which the HMI (150) is a touch panel display.
[0024] At least one PLC (200) is part of the target device and also part of the control system CS. The computer (100) may be part of the target device or not part of the target device. If the control system CS has multiple computers (100), less than one computer (100) may be part of the target device, and the remaining one or more computers (100) may not be part of the target device. If at least one computer (100) is part of the target device, at least one computer (100) may be fixed to the frame of the target device to which the PLC (200) is fixed.
[0025] The computer (100) communicates with the PLC (200). The PLC (200) communicates with the control target (300). The computer (100) may also communicate with the control target (300). The PLC (200) receives an electrical signal sent from the computer (100). The PLC (200) sends an electrical signal to the computer (100). In short, the computer (100) and the PLC (200) perform bidirectional communication. The communication between the PLC (200) and the control target (300) may be unidirectional communication (transmission only or reception only) or bidirectional communication.
[0026] The computer (100) may be connected to the PLC (200) via a communication network that transmits electrical signals between three or more communication devices, or it may be connected to the PLC (200) without a communication network. FIG. 1 illustrates an example of the former. In the latter case, the computer (100) may be connected to the PLC (200) by a dedicated communication line. For example, the computer (100) may be connected to the PLC (200) by a communication cable that is directly mounted on each of the computer (100) and the PLC (200). The connection between the computer (100) and the PLC (200) may be a wired connection or a wireless connection. The same applies to other connections. The computer (100), the PLC (200), and the control target (300) are all examples of communication devices.
[0027] FIG. 1 illustrates an example in which one computer (100) and multiple PLCs (200) are connected to an upper network NA. At least one computer (100) communicates with at least one PLC (200) through the upper network NA. When a control system CS is equipped with multiple computers (100), the multiple computers (100) communicate with each other through the upper network NA. The same applies when a control system CS is equipped with multiple PLCs (200). When a control system CS is equipped with an HMI (150), the HMI (150) may be connected to at least one computer (100) through the upper network NA, or it may be connected to any of the computers (100) via a dedicated communication line. FIG. 1 illustrates an example of the former.
[0028] FIG. 1 illustrates an example in which a plurality of PLCs (200) and a plurality of control targets (300) are connected to a sub-network NB. At least one PLC (200) communicates with at least one control target (300) through the sub-network NB. When a control system CS is equipped with a plurality of PLCs (200), all PLCs (200) may be connected to one sub-network NB or connected to separate sub-network NBs. The control system CS may be equipped with a plurality of PLCs (200) connected to one sub-network NB and at least one PLC (200) connected to a sub-network NB different from the sub-network NB to which the other PLCs (200) are connected.
[0029] A PLC (200) connected to a sub-network NB communicates with a control target (300) connected to this sub-network NB. When multiple PLCs (200) are connected to one sub-network NB, the multiple PLCs (200) may communicate with each other through the sub-network NB. The communication protocol used in the sub-network NB may be the same as or different from the communication protocol used in the upper network NA. The PLC (200) performs real-time communication with the control target (300) or another PLC (200) through the sub-network NB or a dedicated line. The communication period between the PLC (200) and the computer (100) may be the same as or longer than the communication period between the PLC (200) and the control target (300).
[0030] At least one computer (100), at least one PLC (200), and an upper network NA constitute the computer layer. At least one PLC (200), at least one control target (300), and a lower network NB constitute the PLC layer. The PLC layer is called a field network, and the control target (300) is also called a field device. The computer (100) and the control target (300) belong to different control layers. The computer (100) is a control computer that controls the control target (300) through the PLC (200). The PLC (200) is a subsystem that performs communication between the computer (100) and the control target (300). When connecting the control target (300) to the computer (100) without using the PLC (200), it is necessary to set up the computer (100) for each control target (300). When a control target (300) is connected to a computer (100) through a PLC (200), there is no need to perform such configuration of the computer (100). Therefore, the burden required for building a network can be reduced.
[0031] The computer (100) includes a CPU (central processing unit) (101) that performs information processing such as the execution of a program, and a memory (102) that stores information such as a program to be executed by the CPU (101). The computer (100) also includes a communication module (103) that performs at least one of sending information transmitted from the CPU (101) or memory (102) to a communication device other than the computer (100) and receiving information sent from a communication device other than the computer (100) and transmitting it to the CPU (101) or memory (102).
[0032] The computer (100) may be an industrial PC or a consumer PC, or it may be anything other than these. The computer (100) may include a general-purpose operating system (OS) such as Windows (trademark) or Linux (trademark), and at least one application (application software) that runs on the general-purpose OS. In addition to the general-purpose OS, the computer (100) may include a real-time OS used when the computer (100) performs real-time control, and at least one application that runs on the real-time OS.
[0033] The PLC (200) includes a CPU (201) that performs processing of information such as the execution of a program, and a memory (202) that stores information such as a program to be executed by the CPU (201). The PLC (200) also includes a communication module (203) that performs at least one of transmitting information transmitted from the CPU (201) or memory (202) to a communication device other than the PLC (200), and receiving information transmitted from a communication device other than the PLC (200) and transmitting it to the CPU (201) or memory (202). The communication module (203) may be at least one of an input module that performs only receiving, an output module that performs only transmitting, and an input / output module that performs both transmitting and receiving.
[0034] The communication module (103) of the computer (100) is connected to the upper network NA. The communication module (203) of the PLC (200) is connected to the upper network NA and the lower network NB. The communication module (203) of the PLC (200) may include a communication module dedicated to the upper network NA and a communication module dedicated to the lower network NB. The control target (300) includes a communication module (303) that performs at least one of transmitting information and receiving information. The communication module (303) of the control target (300) is connected to the lower network NB. The communication module (303) of the control target (300) may be any of an input module, an output module, and an input / output module.
[0035] At least one computer (100) stores a sequence program (145). Any PLC (200) has a memory (202) capable of storing a program such as a sequence program, but does not store a sequence program. The sequence program (145) includes instructions for at least one control target (300). When the at least one computer (100) executes the sequence program (145), instructions are sent from the at least one computer (100) to the at least one control target (300) through the PLC (200). As a result, the at least one control target (300) is controlled according to the sequence program (145). The PLC (200) may send instructions sent from the computer (100) to the control target (300) without changing them, or if at least one control target (300) follows the instructions of the computer (100), the instructions of the computer (100) may be changed and sent to the control target (300).
[0036] A sequence program (145) stored in at least one computer (100) may be a sequence program written by at least one computer (100), or a sequence program sent to at least one computer (100) from a computer other than the computer (100) included in the control system CS.
[0037] When at least one computer (100) creates a sequence program (145), at least one computer (100) has a sequence creation application (141) for creating the sequence program (145). In this case, at least one computer (100) may have a program part (142) which is a plurality of parts that can constitute the sequence program (145). At least one computer (100) may create the sequence program (145) by combining a plurality of parts selected from the program part (142) by executing the sequence creation application (141). The program part (142) may include at least one of a function, a class, a library, a module, a subroutine, a subprogram, and a parameter, or it may include parts other than these.
[0038] When a sequence creation application (141) is installed on at least one computer (100), when at least one computer (100) runs the sequence creation application (141), a sequence program (145) is created by the sequence creation application (141). The sequence creation instruction to create the sequence program (145) on at least one computer (100) may be input to at least one computer (100) when a user operates the HMI (150), or it may be input to at least one computer (100) from a computer different from the computer (100) included in the control system CS (such as a host computer HC described later).
[0039] When the target device is a substrate processing device (1) (see FIG. 4 and FIG. 5), the program part (142) may include at least one recipe (146). The recipe (146) is information that defines the processing content, processing conditions, and processing order of the substrate W. When a sequence creation instruction is input to at least one computer (100), the recipe (146) constituting the sequence program (145) may be input to at least one computer (100). When a sequence creation instruction is input to at least one computer (100), information identifying the recipe (146) constituting the sequence program (145) may be input to at least one computer (100).
[0040] If the program part (142) includes a recipe (146), at least one computer (100) may store process data (148), which is data assigned to a variable in the recipe (146). The process data (148) may include a log (144) generated by executing the recipe (146). At least one computer (100) stores parameters (147), which are data assigned to a variable in the sequence program (145). The process data (148) is one of the parameters (147).
[0041] When at least one computer (100) executes a sequence program (145), a log (144) is generated, which is information including the content of the event that occurred and the time at which the event occurred. The log (144) generated by at least one computer (100) is stored in at least one computer (100). The log (144) generated by the PLC (200) is sent to at least one computer (100) and stored in at least one computer (100). The log (144) generated by the control target (300) is sent to at least one computer (100) via the PLC (200) and stored in at least one computer (100). Thus, when the sequence program (145) is executed, the log (144) generated by the control system CS is aggregated and accumulated in at least one computer (100).
[0042] The analysis of the log (144) generated when the sequence program (145) is executed may be performed by at least one computer (100), or by a computer different from the computer (100) included in the control system CS. In the former case, at least one computer (100) may have a log analysis application (143) that analyzes the log (144) stored in at least one computer (100).
[0043] When at least one computer (100) runs a log analysis application (143), a log analysis file containing the analysis results of a log (144) is generated and stored in at least one computer (100). If the control system CS is equipped with a display, at least one computer (100) may display the log analysis file on the display. When at least one computer (100) creates a sequence program (145), at least one computer (100) may create the sequence program (145) based on the analysis results of the log (144) performed by the log analysis application (143).
[0044] Next, an example of sequence control performed by the control system CS shown in Fig. 1 will be described.
[0045] FIG. 2 is a block diagram for explaining an example of sequence control performed by the control system CS shown in FIG. 1. FIG. 2 shows an example in which three control targets (300) (electric motor (310), valve (320), sensor (330)) are connected to the control system CS, and one PLC (200) (PLC (210), PLC (220), PLC (230)) is formed for each control target (300). Below, sequence control is described in which, after driving the electric motor (310), the valve (320) is opened, and the flow rate of the fluid passing through the valve (320) is detected by the sensor (330).
[0046] When a user executes a sequence execution instruction to execute a sequence program (145) in a control system CS by operating the HMI (150), at least one computer (100) executes the sequence program (145), and the control system CS starts sequence control.
[0047] Specifically, at least one computer (100) sends a first instruction (i1) to drive the electric motor (310) to the PLC (210). After receiving the first instruction (i1), the PLC (210) drives the electric motor (310). That is, the first instruction (i1) is sent from the PLC (210) to the motor driver of the electric motor (310), and the electric motor (310) rotates. After the driving of the electric motor (310) is finished, the PLC (210) sends a first response (R1) to at least one computer (100) indicating that the driving of the electric motor (310) has ended. At least one computer (100) receives the first response (R1) and confirms that the driving of the electric motor (310) has ended.
[0048] Next, at least one computer (100) sends a second instruction (i2) to the PLC (220) to open the valve (320). After receiving the second instruction (i2), the PLC (220) opens the valve (320). That is, the actuator of the valve (320), which is an automatic valve, is driven according to the instruction from the PLC (220), and the valve body of the valve (320) moves from the closed position. After opening the valve (320), the PLC (220) sends a second response (R2) to at least one computer (100) to convey that the valve (320) has been opened. At least one computer (100) receives the second response (R2) and confirms that the valve (320) has been opened.
[0049] Next, at least one computer (100) sends a third instruction (i3) to the PLC (230) confirming that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value. The PLC (230) is connected to a sensor (330). The sensor (330) detects the flow rate of the fluid passing through the valve (320). The detection value of the sensor (330) is input to the PLC (230). When the valve (320) opens, the detection value of the sensor (330) changes. Based on the detection value of the sensor (330), the PLC (230) determines whether the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value.
[0050] If the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value, the PLC (230) sends a third response (R3) to at least one computer (100) that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value. At least one computer (100) receives the third response (R3) and confirms that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value. In this way, each step of the control included in the sequence program (145) proceeds in order according to a predetermined sequence.
[0051] Next, another example of a control system CS is described.
[0052] FIG. 3 is a block diagram illustrating another example of a control system CS related to an embodiment of the present invention. Similar to the control system CS shown in FIG. 1, the control system CS shown in FIG. 3 comprises at least one PLC (200) that controls at least one control target (300) and at least one computer (100) that controls at least one PLC (200). The at least one computer (100) includes a plurality of sub-computers (120) that control at least one PLC (200) and a main computer (110) that controls the plurality of sub-computers (120). The control system CS may also be equipped with an HMI (150). FIG. 3 illustrates an example in which the HMI (150) is connected to the main computer (110) and the sub-computer (120).
[0053] The main computer (110) includes a CPU (101), memory (102), and a communication module (103). The sub-computer (120) also includes a CPU (101), memory (102), and a communication module (103). The main computer (110) and the sub-computer (120) are connected to a first upper network (NA1). The sub-computer (120) and the PLC (200) are connected to a second upper network (NA2). The main computer (110), the sub-computer (120), and the PLC (200) may be connected to the same communication network. In this case, the main computer (110) may communicate with the PLC (200) without going through the sub-computer (120).
[0054] The main computer (110) stores the aforementioned sequence program (145). Any subcomputer (120) stores the sub-sequence program (149). Any PLC (200) has memory (202) capable of storing programs such as the sequence program, but does not store the sequence program and the sub-sequence program.
[0055] A sub-sequence program (149) is part of a sequence program (145). The sub-sequence program (149) is executed by executing the sequence program (145). The sub-sequence program (149) can be referred to as a function, class, library, module, subroutine, or subprogram. The contents of a sub-sequence program (149) in one sub-computer (120) may be identical to or different from the contents of a sub-sequence program (149) in another sub-computer (120). The sub-computer (120) may store multiple sub-sequence programs (149) with different contents.
[0056] The sequence program (145) stored in the main computer (110) may be a sequence program written by a computer (100) included in the control system CS, or a sequence program sent to the main computer (110) from a computer different from the computer (100) included in the control system CS. The same applies to the sub-sequence program (149) stored in the sub-computer (120).
[0057] FIG. 3 illustrates an example in which a main computer (110) creates a sequence program (145), and a sub-computer (120) stores a sub-sequence program (149) sent from a computer different from the computer (100) included in the control system CS. In this example, the main computer (110) stores a sequence creation application (141) that creates the sequence program (145). The main computer (110) may also store program parts (142), which are multiple parts capable of constituting the sequence program (145).
[0058] When the main computer (110) executes a sequence program (145), a log (144) is generated. The same applies when the sub-computer (120) executes a sub-sequence program (149). The log (144) generated by the main computer (110) is stored in the main computer (110). The log (144) generated by the sub-computer (120), the PLC (200), and the control target (300) is sent to the main computer (110) and stored in the main computer (110). Thus, when the sequence program (145) is executed, the log (144) generated by the control system CS is aggregated and accumulated in the main computer (110).
[0059] The analysis of the log (144) may be performed by the main computer (110) or by a computer different from the computer (100) included in the control system CS. FIG. 3 shows an example in which a log analysis application (143) for analyzing the log (144) stored in the main computer (110) is installed in the main computer (110). When the main computer (110) creates a sequence program (145), the main computer (110) may create the sequence program (145) based on the results of the analysis of the log (144) performed by the log analysis application (143). The main computer (110) may change the sub-sequence program (149) based on the same analysis results.
[0060] Next, a substrate processing device (1) equipped with the control system CS shown in FIG. 3 will be described.
[0061] FIGS. 4 and FIGS. 5 are schematic diagrams of a substrate processing apparatus (1) related to an embodiment of the present invention. The substrate processing apparatus (1) shown in FIGS. 4 and FIGS. 5 comprises a load port LP that holds a carrier CA that accommodates a substrate W such as a FOUP (Front-Opening Unified Pod), a plurality of processing units (2) that process the substrate W returned from the carrier CA on the load port LP, a return system TS that returns the substrate W between the carrier CA on the load port LP and the plurality of processing units (2), an outer wall (1a) that forms a sealed space accommodating the plurality of processing units (2) and the return system TS, and a control device (3) that controls the substrate processing apparatus (1).
[0062] The return system TS takes out a substrate W from a carrier CA on a load port LP and brings it into a processing unit (2). The return system TS also takes out a substrate W from the processing unit (2) and brings it into a carrier CA on a load port LP. The carrier CA into which the substrate W is brought may be the same as or different from the carrier CA from which the substrate W was taken out. The return system TS may return the substrate W from one processing unit (2) to another processing unit (2). The return system TS may be equipped with at least one return robot TR that returns one or more substrates W in a horizontal position.
[0063] The processing unit (2) may be a single-wafer processing unit (2) that processes substrate W one by one, or a batch processing unit (2) that processes multiple substrates W in batches. The processing of substrate W performed by the processing unit (2) may be one or more of cleaning, bonding, film formation, resist coating, exposure, development, etching, impurity injection, activation, resist stripping, polishing, dicing, and inspection, or it may be other than these. All processing units (2) may perform the processing of the same substrate W, or they may perform the processing of different substrates W. Two or more processing units (2) that perform processing of substrate W different from the processing of substrate W performed by other processing units (2) may be included in the plurality of processing units (2).
[0064] FIG. 4 illustrates an example in which the processing unit (2) is a single-wafer cleaning unit (2c) that supplies a processing solution, such as a chemical solution or a rinse solution, to a substrate W. FIG. 5 illustrates an example in which the processing unit (2) is a bonding unit (2b) that bonds two substrates W (first substrate W1 and second substrate W2). In the example shown in FIG. 5, the bonding unit (2b) and the cleaning unit (2c) are included in a plurality of processing units (2). The configuration of the cleaning unit (2c) shown in FIG. 5 is the same as the configuration of the cleaning unit (2c) shown in FIG. 4. Unless otherwise noted, the bonding unit (2b) described in this specification performs bonding of substrates under atmospheric pressure.
[0065] The cleaning unit (2c) shown in FIG. 4 includes a box-shaped chamber (4) having an internal space and a spin chuck (10) that rotates a substrate W horizontally within the chamber (4) around a vertical rotation axis A1 passing through the center of the substrate W. The chamber (4) includes a box-shaped partition (5) having a passage through which the substrate W passes and a door (6) that opens and closes the passage. The spin chuck (10) includes a chuck (11), which is a mechanical chuck or vacuum chuck that holds the substrate W horizontally, and a spin motor (12) that rotates the chuck (11) around a vertical rotation axis A1 passing through the center of the substrate W held in the chuck (11).
[0066] The cleaning unit (2c) shown in FIG. 4 also includes a chemical solution nozzle (31) that discharges a chemical solution toward the upper surface of a substrate W held in the spin chuck (10), and a rinse solution nozzle (33) that discharges a rinse solution, such as pure water (deionized water: DIW (Deionized Water)), toward the upper surface of a substrate W held in the spin chuck (10).
[0067] The liquid medicine nozzle (31) is connected to a liquid medicine pipe (32p) that guides the liquid medicine. When the liquid medicine valve (32v) mounted on the liquid medicine pipe (32p) is opened, the liquid medicine is continuously discharged downward from the discharge port of the liquid medicine nozzle (31). When the liquid medicine valve (32v) is opened, the flow rate of the liquid medicine flowing from the liquid medicine valve (32v) toward the liquid medicine nozzle (31) is detected by a flow meter (32m). The liquid medicine nozzle (31) is connected to a nozzle actuator (32a) that moves the liquid medicine nozzle (31) within the chamber (4). The nozzle actuator (32a) moves the liquid nozzle (31) horizontally between a processing position (position shown by a solid line) where the liquid discharged from the liquid nozzle (31) is supplied to the upper surface of the substrate W, and a standby position (position shown by a dashed line) where the liquid nozzle (31) is located around the spin chuck (10) when viewed from a plane.
[0068] The bonding unit (2b) shown in FIG. 5 includes a box-shaped chamber (4) having an internal space, a first chuck (54A) which is a vacuum chuck or electrostatic chuck for holding a first substrate W1 horizontally within the chamber (4), and a second chuck (54B) which is a vacuum chuck or electrostatic chuck for holding a second substrate W2 horizontally within the chamber (4). The chamber (4) includes a partition wall (5) having a passage through which the first substrate W1 and the second substrate W2 pass, and a door (6) for opening and closing the passage.
[0069] The bonding unit (2b) shown in FIG. 5 also includes a plurality of bonding actuators (55) that bond the first substrate W1 and the second substrate W2 by moving the first chuck (54A) and the second chuck (54B) relatively while the first chuck (54A) and the second chuck (54B) hold the first substrate W1 and the second substrate W2, and at least one camera (56) that detects the alignment of the first substrate W1 and the second substrate W2 before and after bonding the first substrate W1 and the second substrate W2 by photographing at least one of the first substrate W1 and the second substrate W2. A plurality of joint actuators (55) may include a horizontal actuator that moves the first chuck (54A) and the second chuck (54B) relatively in a horizontal direction, a vertical actuator that moves the first chuck (54A) and the second chuck (54B) relatively in a vertical direction, and a rotary actuator that rotates the first chuck (54A) and the second chuck (54B) relatively around a vertical straight line.
[0070] The conveying system TS (strictly speaking, actuators and sensors included in the conveying system TS) is included in the plurality of control targets (300). The spin motor (12), liquid valve (32v), and flow meter (32m) shown in FIG. 4 are also included in the plurality of control targets (300). The bonding actuator (55) and camera (56) shown in FIG. 5 are also included in the plurality of control targets (300). The liquid valve (32v) is an opening and closing valve (the aforementioned automatic valve) equipped with an actuator. The flow meter (32m) is a sensor that measures the flow rate of a liquid. The substrate processing device (1) shown in FIG. 4 and FIG. 5 also includes control targets (300) other than these. For example, an actuator (not shown) that opens and closes a door (6) is also included in the plurality of control targets (300).
[0071] The control device (3) corresponds to a main computer (110) that controls a control target (300) through a subcomputer (120) and a PLC (200). FIGS. 4 and 5 illustrate an example in which a subcomputer (120) is formed for each processing unit (2) and the main computer (110) controls all subcomputers (120). In this example, at least one PLC (200) is formed for each processing unit (2). At least one PLC (200) formed in a processing unit (2) is controlled by a subcomputer (120) formed in that processing unit (2). Thus, multiple processing units (2) are controlled by separate subcomputers (120). A subcomputer (120) may control multiple processing units (2).
[0072] The HMI (150) is positioned outside the outer wall (1a) in contact with the outer wall (1a) of the substrate processing device (1). The main computer (110), sub computer (120), and PLC (200) may be positioned inside the outer wall (1a) of the substrate processing device (1) or outside. The main computer (110) is connected to a host computer HC positioned outside the substrate processing device (1). The host computer HC communicates with the main computer (110). The host computer HC may be connected to the main computer (110) by the first upper network (NA1) shown in FIG. 3, or it may be connected to the main computer (110) by a communication network different from the first upper network (NA1) or by a dedicated communication line.
[0073] When a user initiates a processing start instruction to the substrate processing device (1) by operating the HMI (150) to initiate processing of the substrate W, the main computer (110) sends a message to the host computer HC requesting that the substrate W be returned to the substrate processing device (1). When the host computer HC receives this message, the host computer HC returns a carrier CA containing one or more substrates W to be processed by the substrate processing device (1) to the substrate processing device (1) via a carrier return system. Afterward, the substrate processing device (1) reads information identifying the returned carrier CA and sends this information to the host computer HC. When the host computer HC receives this information, the host computer HC sends information such as a recipe (146) to the main computer (110). If the main computer (110) stores multiple recipes (146), the host computer HC may send information identifying the recipes (146) to the main computer (110).
[0074] The processing start instruction corresponds to the sequence creation instruction described above. After the user performs the processing start instruction, when the main computer (110) receives information such as a recipe (146) from the host computer HC, the main computer (110) creates a schedule in which multiple processes to be executed by the substrate processing device (1) are arranged in a time series. The schedule corresponds to a sequence program (145). The main computer (110) creates the schedule by executing a sequence creation application (141) (see FIG. 3) corresponding to a scheduling application. After that, the main computer (110) controls multiple sub-computers (120) according to the schedule, thereby causing the substrate processing device (1) to execute multiple processes according to the schedule.
[0075] FIG. 6 illustrates an example of a schedule created by a main computer (110). In this example, the schedule includes a first return process (step S11 of FIG. 6) for returning a substrate W in a carrier CA on a load port LP to a processing unit (2), a substrate processing process (steps S12 to S14 of FIG. 6) for processing the substrate W in the processing unit (2), and a second return process (step S15 of FIG. 6) for returning the substrate W processed in the processing unit (2) to a carrier CA on a load port LP.
[0076] When the processing unit (2) is the cleaning unit (2c) shown in FIG. 4, the substrate processing process may include a chemical supply process (step S12 of FIG. 6) in which a chemical solution discharged from a chemical solution nozzle (31) is supplied to the upper surface of the substrate W while rotating the substrate W, a rinse solution supply process (step S13 of FIG. 6) in which a rinse solution discharged from a rinse solution nozzle (33) is supplied to the upper surface of the substrate W while rotating the substrate W, and a drying process (step S14 of FIG. 6) in which the substrate W is dried by removing the liquid from the substrate W by rotating the substrate W, or may include processes other than these.
[0077] FIG. 7 illustrates an example of a chemical solution supply process shown in FIG. 6. When the schedule includes the chemical solution supply process shown in FIG. 6, the chemical solution supply process may include a nozzle movement process (step S21 in FIG. 7) in which a nozzle actuator (32a) moves the chemical solution nozzle (31) from a standby position (position shown by the 2-dot dashed line in FIG. 4) to a processing position (position shown by the solid line in FIG. 4), a discharge start process (step S22 in FIG. 7) in which the chemical solution is discharged to the chemical solution nozzle (31) located at the processing position by opening the chemical solution valve (32v), and a flow rate verification process (step S23 in FIG. 7) in which the flow rate of the chemical solution discharged from the chemical solution nozzle (31) is greater than or equal to a predetermined value based on the detection value of a flow meter (32m), or may include other processes.
[0078] Next, an example of sequence control performed by the control system CS shown in Fig. 3 will be described.
[0079] FIG. 8 is a block diagram for explaining an example of sequence control performed by the control system CS shown in FIG. 3. FIG. 8 shows an example in which three control targets (300) (electric motor (310), valve (320), sensor (330)) are connected to the control system CS, and one PLC (200) (PLC (210), PLC (220), PLC (230)) is formed for each control target (300). Hereinafter, with reference to FIG. 4 and FIG. 8, sequence control in which the control system CS executes the nozzle movement process (step S21 of FIG. 7), the discharge start process (step S22 of FIG. 7), and the flow rate verification process (step S23 of FIG. 7) shown in FIG. 7 in this order will be described.
[0080] A processing start instruction that initiates processing of substrate W in the substrate processing device (1) corresponds to a sequence creation instruction and a sequence execution instruction. A schedule created by the substrate processing device (1) corresponds to a sequence program (145). When a user executes a sequence execution instruction to execute the sequence program (145) in the control system CS by operating the HMI (150), the main computer (110) executes the sequence program (145), and the control system CS starts sequence control. Specifically, the main computer (110) drives the electric motor (310) to open the valve (320) and sends a comprehensive instruction (iA) to the sub-computer (120) confirming that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value.
[0081] When the subcomputer (120) receives a comprehensive instruction (iA), the subcomputer (120) performs sequence control to drive the electric motor (310) by executing a first sub-sequence program. Specifically, the subcomputer (120) sends a first instruction (i1) to drive the electric motor (310) to the PLC (210). After receiving the first instruction (i1), the PLC (210) drives the electric motor (310). As a result, the liquid nozzle (31) moves from the standby position to the processing position. After the driving of the electric motor (310) is finished, the PLC (210) sends a first response (R1) to the subcomputer (120) to convey that the driving of the electric motor (310) has ended.
[0082] Next, the subcomputer (120) performs sequence control to open the valve (320) by executing a second sub-sequence program. Specifically, the subcomputer (120) sends a second instruction (i2) to the PLC (220) to open the valve (320). After receiving the second instruction (i2), the PLC (220) opens the valve (320). As a result, the liquid nozzle (31) located at the processing position begins to discharge the liquid. After opening the valve (320), the PLC (220) sends a second response (R2) to the subcomputer (120) to convey that the valve (320) has been opened.
[0083] Next, the subcomputer (120) performs sequence control to confirm that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value by executing a third sub-sequence program. Specifically, the subcomputer (120) sends a third instruction (i3) to the PLC (230) to confirm that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value. After receiving the third instruction (i3), the PLC (230) determines whether the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value based on the detection value of the sensor (330). In this way, whether the flow rate of the liquid discharged from the liquid nozzle (31) is greater than or equal to a predetermined value is confirmed based on the detection value of the flow meter (32m).
[0084] If the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value, the PLC (230) sends a third response (R3) to the subcomputer (120) that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value. When the subcomputer (120) receives the third response (R3), the subcomputer (120) drives the electric motor (310) and opens the valve (320), and sends a comprehensive response (RA) to the main computer (110) that confirms that the flow rate of the fluid passing through the valve (320) is greater than or equal to a predetermined value. In this way, each step of the control included in the sequence program (145) proceeds sequentially according to a predetermined order.
[0085] Next, the effects of the present embodiment will be explained.
[0086] In this embodiment, the computer (100) executes a sequence program (145). By doing so, the PLC (200) controls the control target (300). In other words, by the computer (100) controlling the PLC (200) according to the sequence program (145), the PLC (200) controls the control target (300) according to the sequence program (145). Therefore, it is not necessary to configure the computer (100) to enable communication between the computer (100) and the control target (300). Additionally, the sequence program (145) is stored in the computer (100). If the sequence program (145) is stored in the PLC (200), it is necessary to manage the sequence program (145) through the PLC (200). If the sequence program (145) is stored in the computer (100), this is not necessary. In particular, when multiple PLCs (200) are connected to one computer (100), multiple sequence programs (145) can be consolidated into the computer (100), so the burden required for managing sequence programs (145) can be reduced compared to when each PLC (200) stores sequence programs (145).
[0087] In this embodiment, the PLC (200) does not store a sequence program. In other words, the PLC (200) stores a program for communicating with the control target (300), but does not store a sequence program such as a ladder. If a sequence program is stored in the PLC (200), it is necessary to manage the sequence program through the PLC (200). Therefore, the burden required for managing the sequence program can be reduced.
[0088] In this embodiment, the main computer (110) executes a sequence program (145). Accordingly, a plurality of sub-computers (120) execute a plurality of sub-sequence programs (149) to control a plurality of control targets (300) in a plurality of PLCs (200). Therefore, the burden on the main computer (110) can be reduced compared to the case where the main computer (110) executes both the sequence program (145) and the sub-sequence program (149). Thus, even high-load control involving the simultaneous control of a plurality of control targets (300) can be executed.
[0089] In this embodiment, when a trigger such as a sequence creation instruction occurs, the computer (100) creates a sequence program (145) by executing a sequence creation application (141). The computer (100) controls a control target (300) in the PLC (200) by executing the sequence program (145) created by executing the sequence creation application (141). In this way, since the sequence program (145) to be executed by the computer (100) is automatically created by the computer (100), the burden of creating the sequence program (145) for the user can be reduced.
[0090] In this embodiment, when the computer (100) executes a sequence program (145), a plurality of processing units (2) and a plurality of control targets (300) formed in a transport system TS are controlled by at least one PLC (200). As a result, the transport system TS transports the substrate W to the processing unit (2), and the processing unit (2) processes the substrate W. Since there are not only a plurality of processing units (2) but also a transport system TS with a function different from that of the processing unit (2), the number and types of control targets (300) tend to increase. When such a plurality of control targets (300) are connected to the computer (100) without passing through the PLC (200), there may be a significant burden in establishing communication between the computer (100) and the control targets (300) or maintaining the same communication. For example, if there is an update or version upgrade of the OS installed on the computer (100), it may be necessary to retry the same settings. Therefore, by controlling the control target (300) through the PLC (200) using the computer (100), such a burden can be reduced.
[0091] In this embodiment, when the computer (100) executes a sequence program (145), a plurality of processing units (2) perform different processing on the substrate W. In this case, the number of control targets (300) formed in the plurality of processing units (2) tends to increase. When the control targets (300) are connected to the computer (100) without using the PLC (200), if there are many types of control targets (300), the burden required to establish communication between the computer (100) and the control targets (300) or to maintain the same communication tends to increase further. By controlling the control targets (300) through the PLC (200) using the computer (100), such a burden can be reduced.
[0092] Next, other embodiments are described.
[0093] If at least one control target (300) is connected to the computer (100) through the PLC (200), there may also be a control target (300) connected to the computer (100) without the PLC (200).
[0094] When the computer (100) controls a control target (300) through the PLC (200) according to a sequence program (145) stored in the computer (100), the PLC (200) may store a sequence program that is identical in content to or different from the sequence program (145) stored in the computer (100).
[0095] Two or more of all the aforementioned configurations may be combined. Two or more of all the aforementioned processes may be combined.
[0096] Although embodiments of the present invention have been described in detail, these are merely examples used to clarify the technical content of the present invention, and the present invention should not be interpreted as being limited to these examples, and the spirit and scope of the present invention are limited only by the appended claims.
[0097] This application claims priority based on Japanese patent application No. 2024-014522 filed on February 2, 2024, the full contents of which are incorporated herein by reference.
Claims
Claim 1 A control system comprising at least one PLC (Programmable Logic Controller) that controls at least one control target, and at least one computer that stores a sequence program and controls the at least one control target in the at least one PLC by executing the sequence program. Claim 2 In claim 1, the control system wherein at least one PLC does not store the sequence program. Claim 3 A control system according to claim 1 or 2, wherein the at least one PLC is a plurality of PLCs that control a plurality of control targets, and the at least one computer comprises a main computer that stores a sequence program and executes the sequence program, and a plurality of sub-computers that store a plurality of sub-sequence programs, execute the plurality of sub-sequence programs when the main computer executes the sequence program, and control the plurality of control targets in the plurality of PLCs. Claim 4 In any one of claims 1 to 3, the at least one computer is a control system that stores a sequence creation application that creates the sequence program. Claim 5 A substrate processing apparatus comprising: a plurality of processing units for processing substrates; a conveying system for conveying substrates to the plurality of processing units; at least one PLC for controlling a plurality of control targets formed in the plurality of processing units and the conveying system; and at least one computer for storing a sequence program and controlling the plurality of control targets in the at least one PLC by executing the sequence program. Claim 6 In claim 5, the substrate processing apparatus comprises two or more processing units that perform different processing on the substrate.