Control system and substrate processing apparatus

The integration of PLCs and computers in a control system simplifies communication setup by allowing computers to control objects through PLCs, reducing configuration efforts.

WO2025164061A1PCT designated stage Publication Date: 2025-08-07SCREEN HOLDINGS CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/041947
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-02
Filing Date
2024-11-27
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

Setting up communication between a computer and a controlled object requires greater effort compared to communication between a Programmable Logic Controller (PLC) and the controlled object, increasing the burden in controlling systems.

Method used

A control system comprising at least one PLC and at least one computer that stores and executes sequence programs to control control objects, with the PLCs not storing the sequence program, allowing for reduced configuration efforts in setting up communications.

Benefits of technology

Reduces the burden of configuring networks by enabling communication between computers and controlled objects through PLCs, simplifying the setup process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024041947_07082025_PF_FP_ABST
    Figure JP2024041947_07082025_PF_FP_ABST
Patent Text Reader

Abstract

This control system includes at least one PLC for controlling at least one object to be controlled, and at least one computer that stores a sequence program and causes the at least one PLC to control the at least one object by executing the sequence program.
Need to check novelty before this filing date? Find Prior Art

Description

Control system and substrate processing apparatus

[0001] The present invention relates to a control system and a substrate processing apparatus.

[0002] Japanese Patent Application Laid-Open No. 2006-129994 discloses a control system including 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 the patent document 1 mentions a "PLC (Programmable Logic Controller)."

[0003] Japanese Patent Application Laid-Open No. 2021-026309

[0004] PLCs control controlled objects such as electric motors and sensors. Computers such as personal computers (PCs) are more versatile and powerful than PLCs, and so are sometimes used to control controlled objects. When using a computer to control a controlled object, the computer must be configured to enable communication between the computer and the controlled object. However, communication between a computer and a controlled object requires a greater effort to set up the communication than communication between a PLC and the controlled object.

[0005] At least one embodiment of the present invention provides a control system and a substrate processing apparatus that can reduce the burden required for setting up communications.

[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 object, and at least one computer that stores a sequence program and executes the sequence program to cause the at least one PLC to control the at least one control object.

[0007] In the embodiment, at least one of the following features may be added to the control system:

[0008] The at least one PLC does not store the sequence program.

[0009] The at least one PLC is a plurality of PLCs that control a plurality of control objects, and the at least one computer includes a main computer that stores the sequence program and executes the sequence program, and a plurality of sub-sequence programs that store the sub-sequence programs and execute the sub-sequence programs when the main computer executes the sequence program, causing the plurality of PLCs to control the plurality of control objects.

[0010] The at least one computer stores a sequence creation application for creating the sequence program.

[0011] Another embodiment of the present invention provides a substrate processing apparatus comprising: a plurality of processing units for processing substrates; a transport system for transporting the substrates to the plurality of processing units; at least one PLC for controlling a plurality of control objects provided in the plurality of processing units and the transport system; and at least one computer that stores a sequence program and executes the sequence program to cause the at least one PLC to control the plurality of control objects.

[0012] The plurality of processing units may include two or more processing units that perform different processes on the substrate. At least one of the above-described features relating to a control system may be added to the substrate processing apparatus.

[0013] Fig. 1 is a block diagram showing an example of a control system according 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 according to an embodiment of the present invention. Fig. 4 is a schematic diagram showing an example of a substrate processing apparatus according to an embodiment of the present invention. Fig. 5 is a schematic diagram showing another example of a substrate processing apparatus according to an embodiment of the present invention. Fig. 6 is a flowchart showing an example of a schedule created by a main computer. Fig. 7 is a flowchart showing an example of the chemical liquid supply process shown in Fig. 6. Fig. 8 is a block diagram for explaining an example of sequence control performed by the control system shown in Fig. 3.

[0014] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

[0015] 1 is a block diagram showing an example of a control system CS according to an embodiment of the present invention. The control system CS is a system that causes a target device to perform its function 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 its function using at least one control target 300.

[0016] The sequence program 145 is a computer program that causes the control system CS to use at least one control target 300 provided in a target device and execute sequence control in the control system CS. The sequence program 145 may be a program written in a visual programming language such as the ladder diagram (LD) language used to create ladder diagrams, or may be a program written in a text programming language that describes a program using only one or more of letters, symbols, and numbers.

[0017] The target device may be a device that uses an object to perform its function, or may be a device that performs its function without using an object such as a heater or lamp. In the former case, the function of the target device may be a function that causes a change to the object, a function that does not cause a change to the object, or both. If the target device causes a change to the object, the function of the target device may be at least one of processing and treating the object, or may be other than these. If the target device does not cause a change to the object, the function of the target device may be at least one of measuring, photographing, and transporting the object, or may be other than these. The object may be a tangible object or an intangible object such as data.

[0018] When the target device is a device that performs its function using an object, the target device may be a substrate processing apparatus 1 (see FIGS. 4 and 5 ) that processes the target substrate W, or may be a device other than the substrate processing apparatus 1, such as a machine tool or an inspection device. The substrate W may be, for example, a semiconductor wafer, a substrate for an FPD (Flat Panel Display) such as a liquid crystal display device or an organic electroluminescence (EL) display device, a substrate for an optical disk, a substrate for a magnetic disk, a substrate for a magneto-optical disk, a substrate for a photomask, a ceramic substrate, or a substrate for a solar cell, or may be any of these. The semiconductor may be an elemental semiconductor or a compound semiconductor. The substrate W may be a disk-shaped substrate W such as a semiconductor wafer, or a square or rectangular substrate W such as an FPD substrate.

[0019] The target device includes at least one control object 300 that is 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 object 300.

[0020] The control target 300 is an electronic or electrical device that transmits and / or receives electrical signals. The control target 300 may be an input device that only transmits electrical signals, an output device that only receives electrical signals, or an input / output device that both transmits and receives electrical signals. The control target 300 may be at least one of a sensor, a camera, a button, a switch, an actuator, a heater, a lamp, a solenoid valve, and a buzzer, or may be something other than these. The sensor, the camera (more specifically, the image sensor of the camera), the button, and the switch are examples of input devices. The actuator, the heater, the lamp, the solenoid valve, and the buzzer are examples of output devices.

[0021] An actuator is a device that converts driving energy, such as electrical, fluid, magnetic, thermal, or chemical energy, into mechanical work, i.e., the movement of a tangible object. Actuators include electric motors (rotary motors), linear motors, air cylinders, and other devices. When the actuator is an electric actuator, such as an electric motor or linear motor, the actuator may include a motor driver that controls the power to be supplied in accordance with instructions from the PLC 200 and a motor body that converts the power supplied from the motor driver into the movement of a tangible object. As long as the motor driver can supply power to the motor body, the motor driver may be fixed to the motor body or may be separate from the motor body. When 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 a fluid passing through the electric valve into the movement of a tangible object.

[0022] The controlled object 300 includes an automatic valve equipped with an actuator. Solenoid valves and electric valves are examples of automatic valves. An automatic valve may be an on-off valve that opens and closes a flow path, or a flow control valve that changes the flow rate of a fluid. An automatic valve includes a valve body with an annular valve seat through which a fluid such as a liquid or gas passes, a valve element that is movable relative to the valve seat, and an actuator that moves the valve element between a closed position where the valve element contacts the valve seat and an open position where the valve element is separated from the valve seat. The actuator of the automatic valve may be a pneumatic actuator, an electric actuator, or another type of actuator. The aperture of the automatic valve is changed by controlling the actuator of the automatic valve. This opens and closes the on-off valve, or changes the aperture of the flow control valve.

[0023] The control system CS includes at least one PLC 200 that controls at least one control target 300, and at least one computer 100 that controls the at least one PLC 200. FIG. 1 shows an example in which a plurality of PLCs 200 and one computer 100 are provided. The control system CS may also include 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 not only receives instructions from a person to the control system CS, but may also convey information generated by the control system CS to a person. FIG. 1 shows 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 or may not be part of the target device. When the control system CS includes multiple computers 100, one or more computers 100 (less than all of the computers 100) may be part of the target device, and the remaining one or more computers 100 may not be part of the target device. When at least one computer 100 is part of the target device, the at least one computer 100 may be fixed to a 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 controlled object 300. The computer 100 may also communicate with the controlled object 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 other words, the computer 100 and the PLC 200 perform bidirectional communication. The communication between the PLC 200 and the controlled object 300 may be unidirectional communication (only transmission or only reception) or bidirectional communication.

[0026] The computer 100 may be connected to the PLC 200 via a communication network that transmits electrical signals among three or more communication devices, or may be connected to the PLC 200 without a communication network. FIG. 1 shows an example of the former. In the latter case, the computer 100 may be connected to the PLC 200 via a dedicated communication line. For example, the computer 100 may be connected to the PLC 200 via a communication cable that is directly attached to 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 controlled object 300 are all examples of communication devices.

[0027] FIG. 1 shows an example in which one computer 100 and multiple PLCs 200 are connected to a host network NA. At least one computer 100 communicates with at least one PLC 200 via the host network NA. When a control system CS includes multiple computers 100, the multiple computers 100 communicate with each other via the host network NA. The same applies when the control system CS includes multiple PLCs 200. When the control system CS includes an HMI 150, the HMI 150 may be connected to at least one computer 100 via the host network NA, or may be connected to any of the computers 100 via a dedicated communication line. FIG. 1 shows an example of the former.

[0028] 1 illustrates an example in which a plurality of PLCs 200 and a plurality of control targets 300 are connected to a lower network NB. At least one PLC 200 communicates with at least one control target 300 via the lower network NB. When the control system CS includes a plurality of PLCs 200, all of the PLCs 200 may be connected to a single lower network NB, or may be connected to separate lower networks NB. The control system CS may include a plurality of PLCs 200 connected to a single lower network NB and at least one PLC 200 connected to a lower network NB different from the lower network NB to which the other PLCs 200 are connected.

[0029] A PLC 200 connected to a certain lower network NB communicates with a control target 300 connected to this lower network NB. When multiple PLCs 200 are connected to one lower network NB, the multiple PLCs 200 may communicate with each other via the lower network NB. The communication protocol used in the lower 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 via the lower network NB or a dedicated line. The cycle of communication between the PLC 200 and the computer 100 may be equal to or longer than the cycle of communication between the PLC 200 and the control target 300.

[0030] At least one computer 100, at least one PLC 200, and upper network NA constitute a computer layer. At least one PLC 200, at least one control object 300, and lower network NB constitute a PLC layer. The PLC layer is also called a field network, and the control object 300 is also called a field device. The computer 100 and the control object 300 belong to different control layers. The computer 100 is a control computer that controls the control object 300 via the PLC 200. The PLC 200 is a subsystem that communicates between the computer 100 and the control object 300. When connecting the control object 300 to the computer 100 without using the PLC 200, it is necessary to configure the computer 100 for each control object 300. However, when connecting the control object 300 to the computer 100 via the PLC 200, there is no need to configure the computer 100 in this way. This reduces the burden of building a network.

[0031] The computer 100 includes a CPU (central processing unit) 101 that processes information such as executing a program, and a memory 102 that stores information such as programs to be executed by the CPU 101. The computer 100 further includes a communication module 103 that performs at least one of the following functions: transmitting information transmitted from the CPU 101 or the memory 102 to a communication device other than the computer 100; and receiving information transmitted from a communication device other than the computer 100 and transmitting the information to the CPU 101 or the memory 102.

[0032] The computer 100 may be an industrial PC, a consumer PC, or other type of PC. The computer 100 may include a general-purpose operating system (OS) such as Windows (registered trademark) or Linux (registered trademark) and at least one application (application software) running on the general-purpose OS. In addition to the general-purpose OS, the computer 100 may also include a real-time OS used when the computer 100 performs real-time control and at least one application running on the real-time OS.

[0033] PLC 200 includes CPU 201 that processes information such as executing a program, and memory 202 that stores information such as a program to be executed by CPU 201. PLC 200 further includes communication module 203 that performs at least one of a transmission function that sends information transmitted from CPU 201 or memory 202 to a communication device other than PLC 200, and a reception function that receives information transmitted from a communication device other than PLC 200 and transmits the information to CPU 201 or memory 202. Communication module 203 may be at least one of an input module that performs only reception, an output module that performs only transmission, and an input / output module that performs both transmission and reception.

[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 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 an input module, an output module, or an input / output module.

[0035] At least one computer 100 stores a sequence program 145. Each PLC 200 has a memory 202 capable of storing a program such as a sequence program, but does not store the sequence program. The sequence program 145 includes instructions for at least one control object 300. When at least one computer 100 executes the sequence program 145, the instructions are sent from the at least one computer 100 to the at least one control object 300 via the PLC 200. As a result, the at least one control object 300 is controlled in accordance with the sequence program 145. The PLC 200 may send the instructions sent from the computer 100 to the control object 300 without changing them, or may change the instructions of the computer 100 and send them to the control object 300, as long as the at least one control object 300 follows the instructions of the computer 100.

[0036] The sequence program 145 stored in at least one computer 100 may be a sequence program created by at least one computer 100, or may be 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, the at least one computer 100 stores a sequence creation application 141 that creates the sequence program 145. In this case, the at least one computer 100 may store program parts 142, which are multiple components that can constitute the sequence program 145. The at least one computer 100 may execute the sequence creation application 141 to combine multiple components selected from the program parts 142 to create the sequence program 145. The program parts 142 may include at least one of a function, a class, a library, a module, a subroutine, a subprogram, and a parameter, or may include other components.

[0038] If the sequence creation application 141 is installed in at least one computer 100, when the at least one computer 100 executes the sequence creation application 141, a sequence program 145 is created by the sequence creation application 141. A sequence creation instruction that causes the at least one computer 100 to create the sequence program 145 may be input to the at least one computer 100 when a user operates the HMI 150, or may be input to the at least one computer 100 from a computer (such as a host computer HC described below) other than the computer 100 included in the control system CS.

[0039] When the target apparatus is the substrate processing apparatus 1 (see FIGS. 4 and 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 procedure for the substrate W. When a sequence creation instruction is input to the at least one computer 100, the recipe 146 that constitutes the sequence program 145 may be input to the at least one computer 100. When a sequence creation instruction is input to the at least one computer 100, information that identifies the recipe 146 that constitutes the sequence program 145 may be input to the at least one computer 100.

[0040] When the program part 142 includes a recipe 146, the at least one computer 100 may store process data 148, which is data to be substituted into variables in the recipe 146. The process data 148 may include a log 144 generated by executing the recipe 146. The at least one computer 100 stores parameters 147, which are data to be substituted into variables in the sequence program 145. The process data 148 is one of the parameters 147.

[0041] When at least one computer 100 executes the sequence program 145, a log 144 is generated, which is information including the content of an event that occurred and the time when the event occurred. The log 144 generated by at least one computer 100 is stored in the at least one computer 100. The log 144 generated by the PLC 200 is sent to at least one computer 100 and stored in the 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 the at least one computer 100. Therefore, the log 144 generated by the control system CS when the sequence program 145 is executed is aggregated and accumulated in the 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 may be performed by a computer other than the computer 100 included in the control system CS. In the former case, the at least one computer 100 may store a log analysis application 143 that analyzes the log 144 stored in the at least one computer 100.

[0043] When the at least one computer 100 executes the log analysis application 143, a log analysis file including the analysis results of the log 144 is generated and stored in the at least one computer 100. If the control system CS has a display, the at least one computer 100 may display the log analysis file on the display. If the at least one computer 100 creates the sequence program 145, the 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 provided for each control target 300. Below, a sequence control will be 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 operates the HMI 150 to issue a sequence execution instruction to cause the control system CS to execute the sequence program 145, at least one computer 100 executes the sequence program 145, and the control system CS starts sequence control.

[0047] Specifically, the at least one computer 100 sends a first instruction i1 to the PLC 210 to drive the electric motor 310. 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 a motor driver of the electric motor 310, causing the electric motor 310 to rotate. After driving of the electric motor 310 ends, the PLC 210 sends a first response R1 to the at least one computer 100, notifying the end of driving of the electric motor 310. The at least one computer 100 receives the first response R1 and confirms that driving of the electric motor 310 has ended.

[0048] Next, the 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 in response to the instruction from the PLC 220, and the valve disc of the valve 320 moves from the closed position. After opening the valve 320, the PLC 220 sends a second response R2 to the at least one computer 100, notifying the at least one computer 100 that the valve 320 has been opened. The at least one computer 100 receives the second response R2 and confirms that the valve 320 has been opened.

[0049] Next, the at least one computer 100 sends a third instruction i3 to the PLC 230 to confirm that the flow rate of the fluid passing through the valve 320 is equal to or greater than 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 detected value of the sensor 330 is input to the PLC 230. When the valve 320 is opened, the detected value of the sensor 330 changes. The PLC 230 determines whether the flow rate of the fluid passing through the valve 320 is equal to or greater than a predetermined value based on the detected value of the sensor 330.

[0050] If the flow rate of the fluid passing through the valve 320 is equal to or greater than the predetermined value, the PLC 230 sends a third response R3 to the at least one computer 100, notifying the at least one computer 100 that the flow rate of the fluid passing through the valve 320 is equal to or greater than the predetermined value. The 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 equal to or greater than the predetermined value. In this way, the control steps included in the sequence program 145 are sequentially performed in a predetermined order.

[0051] Next, another example of the control system CS will be described.

[0052] Fig. 3 is a block diagram showing another example of a control system CS according 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 includes at least one PLC 200 that controls at least one control target 300 and at least one computer 100 that controls the at least one PLC 200. The at least one computer 100 includes multiple sub-computers 120 that control the at least one PLC 200 and a main computer 110 that controls the multiple sub-computers 120. The control system CS may also include an HMI 150. Fig. 3 shows 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, a memory 102, and a communication module 103. The sub-computer 120 also includes a CPU 101, a memory 102, and a communication module 103. The main computer 110 and the sub-computer 120 are connected to a first higher-level network NA1. The sub-computer 120 and the PLC 200 are connected to a second higher-level 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 above-mentioned sequence program 145. Each of the sub-computers 120 stores a sub-sequence program 149. Each of the PLCs 200 has a memory 202 capable of storing a program such as a sequence program, but does not store a sequence program or a sub-sequence program.

[0055] The subsequence program 149 is part of the sequence program 145. The subsequence program 149 is executed by executing the sequence program 145. The subsequence program 149 can also be called a function, a class, a library, a module, a subroutine, or a subprogram. The content of the subsequence program 149 in one subcomputer 120 may be the same as or different from the content of the subsequence program 149 in another subcomputer 120. The subcomputer 120 may store multiple subsequence programs 149 with different contents.

[0056] The sequence program 145 stored in the main computer 110 may be a sequence program created by the computer 100 included in the control system CS, or may be a sequence program sent to the main computer 110 from a computer other than 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] 3 shows an example in which the main computer 110 creates a sequence program 145, and the sub-computer 120 stores a sub-sequence program 149 sent from a computer other than 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 components that can make up the sequence program 145.

[0058] When the main computer 110 executes the sequence program 145, a log 144 is generated. The same is true when the sub-computer 120 executes the sub-sequence program 149. The log 144 generated by the main computer 110 is stored in the main computer 110. The logs 144 generated by the sub-computer 120, the PLC 200, and the controlled object 300 are sent to the main computer 110 and stored in the main computer 110. Therefore, the logs 144 generated by the control system CS when the sequence program 145 is executed are aggregated and accumulated in the main computer 110.

[0059] The analysis of the log 144 may be performed by the main computer 110, or may be performed by a computer other than the computer 100 included in the control system CS. Fig. 3 shows an example in which a log analysis application 143 that analyzes the log 144 stored in the main computer 110 is installed in the main computer 110. When the main computer 110 creates the 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 also modify the subsequence program 149 based on the results of the analysis.

[0060] Next, the substrate processing apparatus 1 including the control system CS shown in FIG. 3 will be described.

[0061] 4 and 5 are schematic diagrams of a substrate processing apparatus 1 according to an embodiment of the present invention. The substrate processing apparatus 1 shown in Figures 4 and 5 includes a load port LP that holds carriers CA that accommodate substrates W, such as FOUPs (Front-Opening Unified Pods), a plurality of processing units 2 that process substrates W transferred from the carriers CA on the load port LP, a transfer system TS that transfers the substrates W between the carriers CA on the load port LP and the plurality of processing units 2, an outer wall 1a that forms an enclosed space accommodating the plurality of processing units 2 and the transfer system TS, and a control device 3 that controls the substrate processing apparatus 1.

[0062] The transport system TS unloads the substrate W from a carrier CA on the load port LP and loads it into a processing unit 2. The transport system TS further unloads the substrate W from the processing unit 2 and loads it into a carrier CA on the load port LP. The carrier CA into which the substrate W is loaded may be the same as or different from the carrier CA from which the substrate W was unloaded. The transport system TS may transport the substrate W from one processing unit 2 to another processing unit 2. The transport system TS may include at least one transport robot TR that transports one or more substrates W in a horizontal position.

[0063] The processing unit 2 may be a single-wafer processing unit 2 that processes substrates W one by one, or a batch processing unit 2 that processes multiple substrates W at once. The processing of substrates W performed by the processing unit 2 may be one or more of cleaning, bonding, film formation, resist coating, exposure, development, etching, impurity implantation, activation, resist stripping, polishing, dicing, and inspection, or may be other than these. All the processing units 2 may process the same substrate W, or may process different substrates W. The multiple processing units 2 may include two or more processing units 2 that perform processing of substrates W that is different from the processing of substrates W performed by other processing units 2.

[0064] Fig. 4 shows an example in which the processing unit 2 is a single-wafer cleaning unit 2c that supplies processing liquids such as chemical liquids and rinse liquids to the substrates W. Fig. 5 shows an example in which the processing unit 2 is a bonding unit 2b that bonds two substrates W (a first substrate W1 and a second substrate W2). In the example shown in Fig. 5, the bonding unit 2b and the cleaning unit 2c are included in the multiple 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 specified, the bonding unit 2b described in this specification bonds substrates under atmospheric pressure.

[0065] 4 includes a box-shaped chamber 4 having an internal space and a spin chuck 10 that holds one substrate W horizontally in the chamber 4 and rotates the substrate W about a vertical rotation axis A1 passing through the center of the substrate W. The chamber 4 includes a box-shaped partition 5 that has a passage opening through which the substrate W passes, and a door 6 that opens and closes the passage opening. The spin chuck 10 includes a chuck 11, which is a mechanical chuck or a vacuum chuck that holds the substrate W horizontally, and a spin motor 12 that rotates the chuck 11 about the vertical rotation axis A1 passing through the center of the substrate W held by the chuck 11.

[0066] The cleaning unit 2c shown in Figure 4 further includes a chemical nozzle 31 that sprays a chemical solution toward the upper surface of the substrate W held on the spin chuck 10, and a rinse liquid nozzle 33 that sprays a rinse liquid such as pure water (deionized water: DIW) toward the upper surface of the substrate W held on the spin chuck 10.

[0067] The chemical nozzle 31 is connected to a chemical pipe 32p that guides the chemical. When a chemical valve 32v attached to the chemical pipe 32p is opened, the chemical is continuously discharged downward from the discharge port of the chemical nozzle 31. When the chemical valve 32v is opened, the flow rate of the chemical flowing from the chemical valve 32v toward the chemical nozzle 31 is detected by a flow meter 32m. The chemical nozzle 31 is connected to a nozzle actuator 32a that moves the chemical nozzle 31 within the chamber 4. The nozzle actuator 32a moves the chemical nozzle 31 horizontally between a processing position (position indicated by a solid line) where the chemical discharged from the chemical nozzle 31 is supplied to the upper surface of the substrate W, and a standby position (position indicated by a two-dot chain line) where the chemical nozzle 31 is positioned around the spin chuck 10 in a plan view.

[0068] 5 includes a box-shaped chamber 4 having an internal space, a first chuck 54A which is a vacuum chuck or an electrostatic chuck that holds the first substrate W1 horizontally within the chamber 4, and a second chuck 54B which is a vacuum chuck or an electrostatic chuck that holds the second substrate W2 horizontally within the chamber 4. The chamber 4 includes a partition wall 5 provided with a passage opening through which the first substrate W1 and the second substrate W2 pass, and a door 6 that opens and closes the passage opening.

[0069] 5 further includes a plurality of bonding actuators 55 that bond the first substrate W1 and the second substrate W2 by relatively moving the first chuck 54A and the second chuck 54B while they 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 at least 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. The multiple bonding actuators 55 may include a horizontal actuator that relatively moves the first chuck 54A and the second chuck 54B in the horizontal direction, a vertical actuator that relatively moves the first chuck 54A and the second chuck 54B in the vertical direction, and a rotational actuator that relatively rotates the first chuck 54A and the second chuck 54B about a vertical line.

[0070] The transfer system TS (strictly speaking, the actuators, sensors, etc. included in the transfer system TS) is included in the plurality of control objects 300. The spin motor 12, the chemical liquid valve 32v, and the flow meter 32m shown in FIG. 4 are also included in the plurality of control objects 300. The bonding actuator 55 and the camera 56 shown in FIG. 5 are also included in the plurality of control objects 300. The chemical liquid valve 32v is an opening / closing valve (the aforementioned automatic valve) equipped with an actuator. The flow meter 32m is a sensor that measures the flow rate of the liquid. The substrate processing apparatus 1 shown in FIGS. 4 and 5 also includes other control objects 300. For example, an actuator (not shown) that opens and closes the door 6 is also included in the plurality of control objects 300.

[0071] The control device 3 corresponds to the main computer 110 that controls the control target 300 via the sub-computers 120 and the PLC 200. FIGS. 4 and 5 show an example in which a sub-computer 120 is provided for each processing unit 2, and the main computer 110 controls all of the sub-computers 120. In this example, at least one PLC 200 is provided for each processing unit 2. At least one PLC 200 provided in a certain processing unit 2 is controlled by the sub-computer 120 provided in that processing unit 2. Therefore, multiple processing units 2 are controlled by different sub-computers 120. The sub-computer 120 may control multiple processing units 2.

[0072] The HMI 150 is disposed outside the outer wall 1a of the substrate processing apparatus 1 while being in contact with the outer wall 1a. The main computer 110, the sub-computer 120, and the PLC 200 may be disposed inside or outside the outer wall 1a of the substrate processing apparatus 1. The main computer 110 is connected to a host computer HC disposed outside the substrate processing apparatus 1. The host computer HC communicates with the main computer 110. The host computer HC may be connected to the main computer 110 via a first higher-level network NA1 shown in FIG. 3 , or may be connected to the main computer 110 via a communication network or a dedicated communication line separate from the first higher-level network NA1.

[0073] When a user operates the HMI 150 to issue a processing start instruction to the substrate processing apparatus 1 to start processing a substrate W, the main computer 110 sends a message to the host computer HC requesting that the substrate processing apparatus 1 transport a substrate W. When the host computer HC receives this message, the host computer HC causes the carrier transport system to transport a carrier CA containing one or more substrates W to be processed in the substrate processing apparatus 1 to the substrate processing apparatus 1. The substrate processing apparatus 1 then reads information identifying the transported 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 recipe 146 to the main computer 110.

[0074] The process start instruction corresponds to the sequence creation instruction described above. After the user issues the process start instruction, the main computer 110 receives information such as a recipe 146 from the host computer HC, and then creates a schedule that chronologically arranges multiple processes to be performed by the substrate processing apparatus 1. 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 ), which corresponds to a scheduling application. Thereafter, the main computer 110 controls multiple sub-computers 120 in accordance with the schedule, thereby causing the substrate processing apparatus 1 to perform multiple processes in accordance with the schedule.

[0075] 6 shows an example of a schedule created by the main computer 110. In this example, the schedule includes a first transfer step (step S11 in FIG. 6) of transporting a substrate W in a carrier CA on a load port LP to a processing unit 2, a substrate processing step (steps S12 to S14 in FIG. 6) of processing the substrate W in the processing unit 2, and a second transfer step (step S15 in FIG. 6) of transporting the substrate W processed in the processing unit 2 to a carrier CA on the load port LP.

[0076] When the processing unit 2 is the cleaning unit 2c shown in Figure 4, the substrate processing process may include a chemical liquid supply process (step S12 in Figure 6) in which a chemical liquid ejected from the chemical liquid nozzle 31 is supplied to the upper surface of the substrate W while rotating the substrate W, a rinse liquid supply process (step S13 in Figure 6) in which a rinse liquid ejected from the rinse liquid nozzle 33 is supplied to the upper surface of the substrate W while rotating the substrate W, and a drying process (step S14 in Figure 6) in which the liquid is removed from the substrate W by rotating the substrate W, thereby drying the substrate W, or may include other processes.

[0077] Fig. 7 shows an example of the chemical solution supplying process shown in Fig. 6. When the schedule includes the chemical solution supplying process shown in Fig. 6, the chemical solution supplying process may include a nozzle moving process (step S21 in Fig. 7) in which nozzle actuator 32a moves chemical solution nozzle 31 from a standby position (the position shown by the two-dot chain line in Fig. 4) to a processing position (the position shown by the solid line in Fig. 4), a discharge start process (step S22 in Fig. 7) in which chemical solution valve 32v is opened to cause chemical solution nozzle 31 located at the processing position to start discharging the chemical solution, and a flow rate confirmation process (step S23 in Fig. 7) in which it is confirmed based on the detection value of flow meter 32m that the flow rate of the chemical solution discharged from chemical solution nozzle 31 is equal to or greater than a predetermined value, 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 objects 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 provided for each control object 300. Below, with reference to Figs. 4 and 8, a sequence control in which the control system CS executes the nozzle movement process (step S21 in Fig. 7), the discharge start process (step S22 in Fig. 7), and the flow rate confirmation process (step S23 in Fig. 7) shown in Fig. 7 in this order will be described.

[0080] The processing start instruction for causing the substrate processing apparatus 1 to start processing the substrate W corresponds to a sequence creation instruction and a sequence execution instruction. The schedule created by the substrate processing apparatus 1 corresponds to a sequence program 145. When a user operates the HMI 150 to issue a sequence execution instruction for causing the control system CS to execute the sequence program 145, the main computer 110 executes the sequence program 145, and the control system CS starts sequence control. Specifically, the main computer 110 sends a comprehensive instruction iA to the sub-computer 120 to drive the electric motor 310, open the valve 320, and confirm that the flow rate of the fluid passing through the valve 320 is equal to or greater than a predetermined value.

[0081] When sub-computer 120 receives comprehensive instruction iA, sub-computer 120 executes a first sub-sequence program to perform sequence control for driving electric motor 310. Specifically, sub-computer 120 sends a first instruction i1 to PLC 210 to drive electric motor 310. After receiving first instruction i1, PLC 210 drives electric motor 310. This moves chemical solution nozzle 31 from the standby position to the treatment position. After driving electric motor 310 has finished, PLC 210 sends a first response R1 to sub-computer 120 to notify that driving of electric motor 310 has finished.

[0082] Next, sub-computer 120 executes a second sub-sequence program to perform sequence control to open valve 320. Specifically, sub-computer 120 sends a second instruction i2 to PLC 220 to open valve 320. After receiving second instruction i2, PLC 220 opens valve 320. As a result, chemical nozzle 31 located at the processing position starts discharging the chemical solution. After opening valve 320, PLC 220 sends a second response R2 to sub-computer 120 to notify that valve 320 has been opened.

[0083] Next, sub-computer 120 executes a third sub-sequence program to perform sequence control to confirm that the flow rate of the fluid passing through valve 320 is equal to or greater than a predetermined value. Specifically, sub-computer 120 sends a third instruction i3 to PLC 230 to confirm that the flow rate of the fluid passing through valve 320 is equal to or greater than a predetermined value. After receiving third instruction i3, PLC 230 determines whether the flow rate of the fluid passing through valve 320 is equal to or greater than a predetermined value based on the detection value of sensor 330. As a result, whether the flow rate of the chemical liquid discharged from chemical liquid nozzle 31 is equal to or greater than a predetermined value is confirmed based on the detection value of flow meter 32m.

[0084] If the flow rate of the fluid passing through valve 320 is equal to or greater than the predetermined value, PLC 230 sends a third response R3 to sub-computer 120, indicating that the flow rate of the fluid passing through valve 320 is equal to or greater than the predetermined value. When sub-computer 120 receives third response R3, sub-computer 120 drives electric motor 310 to open valve 320, and sends a comprehensive response RA to main computer 110 indicating that it has confirmed that the flow rate of the fluid passing through valve 320 is equal to or greater than the predetermined value. In this way, each step of control included in sequence program 145 is performed sequentially in a predetermined order.

[0085] Next, the effects of this embodiment will be described.

[0086] In this embodiment, the computer 100 executes the sequence program 145. This causes the PLC 200 to control the control target 300. In other words, the computer 100 controls the PLC 200 according to the sequence program 145, and 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. Furthermore, 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, if multiple PLCs 200 are connected to one computer 100, multiple sequence programs 145 can be consolidated into the computer 100. This reduces the burden of managing the sequence program 145 compared to when each PLC 200 stores the sequence program 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 diagram. If a sequence program were stored in the PLC 200, it would be necessary to manage the sequence program through the PLC 200. This reduces the burden of managing the sequence program.

[0088] In this embodiment, the main computer 110 executes the sequence program 145. In response to this, the multiple sub-computers 120 execute multiple sub-sequence programs 149, causing the multiple PLCs 200 to control multiple control targets 300. This reduces the burden on the main computer 110 compared to when the main computer 110 executes both the sequence program 145 and the sub-sequence program 149. This makes it possible to execute high-load control of multiple control targets 300 simultaneously.

[0089] In this embodiment, when a trigger such as a sequence creation instruction occurs, the computer 100 executes the sequence creation application 141 to create a sequence program 145. The computer 100 executes the sequence program 145 created by executing the sequence creation application 141, thereby causing the PLC 200 to control the control target 300. In this way, the sequence program 145 to be executed by the computer 100 is automatically created by the computer 100, thereby reducing the burden on the user of creating the sequence program 145.

[0090] In this embodiment, when the computer 100 executes the sequence program 145, the plurality of processing units 2 and the plurality of control targets 300 provided in the 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. Because there are not only the plurality of processing units 2 but also the transport system TS, which has functions different from the processing units 2, the number and types of control targets 300 tend to be large. If such a plurality of control targets 300 are connected to the computer 100 without the PLC 200, establishing and maintaining communication between the computer 100 and the control targets 300 may require a significant burden. For example, if the OS installed on the computer 100 is updated or upgraded, the settings may need to be redone. Therefore, by having the computer 100 control the control targets 300 via the PLC 200, such a burden can be reduced.

[0091] In this embodiment, when the computer 100 executes the sequence program 145, the plurality of processing units 2 perform different processes on the substrate W. In this case, the number of types of control targets 300 provided in the plurality of processing units 2 is likely to increase. When the control targets 300 are connected to the computer 100 without going through the PLC 200, the greater the number of types of control targets 300, the greater the burden required to establish communication between the computer 100 and the control targets 300 and to maintain and manage that communication. By controlling the control targets 300 by the computer 100 via the PLC 200, this burden can be reduced.

[0092] Next, another embodiment will be described.

[0093] As long as at least one control target 300 is connected to the computer 100 via the PLC 200 , there may be a control target 300 that is connected to the computer 100 without going through the PLC 200 .

[0094] If computer 100 controls control object 300 via PLC 200 in accordance with sequence program 145 stored in computer 100, PLC 200 may store a sequence program whose contents are the same as or different from those of sequence program 145 stored in computer 100.

[0095] Any two or more of the above-described configurations may be combined. Any two or more of the above-described steps may be combined.

[0096] Although the embodiments of the present invention have been described in detail, these are merely examples used to clarify the technical contents of the present invention, and the present invention should not be construed as being limited to these examples. The spirit and scope of the present invention are limited only by the appended claims.

[0097] This application claims priority from Japanese Patent Application No. 2024-014522 filed on February 2, 2024, the entire contents of which are incorporated herein by reference.

Claims

1. A control system comprising: at least one PLC (Programmable Logic Controller) that controls at least one control object; and at least one computer that stores a sequence program and executes the sequence program to cause the at least one PLC to control the at least one control object.

2. The control system according to claim 1, wherein said at least one PLC does not store said sequence program.

3. The 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 objects, and the 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 and execute the sub-sequence programs when the main computer executes the sequence program, causing the plurality of PLCs to control the plurality of control objects.

4. A control system according to any one of claims 1 to 3, wherein the at least one computer stores a sequence creation application for creating the sequence program.

5. A substrate processing apparatus comprising: a plurality of processing units for processing substrates; a transport system for transporting the substrates to the plurality of processing units; at least one PLC for controlling a plurality of control objects provided in the plurality of processing units and the transport system; and at least one computer that stores a sequence program and executes the sequence program to cause the at least one PLC to control the plurality of control objects.

6. The substrate processing apparatus according to claim 5, wherein the plurality of processing units include two or more processing units that perform different processes on the substrate.

Citation Information

Patent Citations

  • Control system and control method

    JP2010061193A

  • Substrate processing device

    JP2012104699A

  • Control system, host controller, and mounting / demounting method of sub controller

    JP2017151646A

  • Control system and control unit

    JP2019067046A

  • Motion controller and motor control system

    WO2013099032A1