Control system and substrate processing device

TWI935567BActive Publication Date: 2026-08-11SCREEN HOLDINGS CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
TW113147334
Authority / Receiving Office
TW · TW
Patent Type
Patents
Current Assignee / Owner
Priority Date
2024-02-02
Filing Date
2024-12-06
Publication Date
2026-08-11
Estimated Expiration
2044-12-05

AI Technical Summary

Technical Problem

Existing control systems face challenges in efficiently configuring communication between computers and devices, particularly with personal computers (PCs) and devices, particularly in reducing the burden of network construction and devices, especially in reducing the construction burden of communication networks.

Method used

A control system comprising a programmable logic controller (PLC) and a computer that stores and executes sequential programs to control objects, with the computer reducing the need for stringent communication configurations between the PLC and the objects.

Benefits of technology

The system simplifies the setup of communication networks by enabling the computer to manage communication with multiple PLCs, reducing the burden of network construction and enhancing flexibility in controlling devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The control system comprises: at least one programmable logic controller that controls at least one controlled object; and at least one computer that stores a sequential program and executes the sequential program to enable the at least one programmable logic controller to control at least one controlled object.
Need to check novelty before this filing date? Find Prior Art

Description

Control system and substrate processing device This invention relates to a control system and a substrate processing apparatus. Patent Document 1 discloses a control system comprising: a first controller that controls a machine tool according to a numerical control program; a second controller that controls an object machine according to a sequence program; and a support device. Paragraph

[0030] of Patent Document 1 describes a "PLC (Programmable Logic Controller)". [Prior Art Documents] [Patent Documents] [Patent Document 1] Japanese Patent Application Publication No. 2021-026309. [Problem to be Solved by the Invention] Programmable logic controllers (PLCs) are used to control objects such as electric motors and sensors. Compared to PLCs, personal computers (PCs) are more versatile and powerful, and therefore, computers are also used to control objects. In cases where a computer controls an object, the computer needs to be configured to enable communication between the computer and the object. However, compared to communication between a PLC and the object, the configuration requirements for communication between a computer and the object are more stringent. At least one embodiment of the present invention provides a control system and a substrate processing apparatus that can reduce the burden of setting up communication. [Means for solving the problem] One embodiment of the present invention is a control system comprising: at least one programmable logic controller that controls at least one controlled object; and at least one computer that stores a sequential program and executes the sequential program to enable the at least one programmable logic controller to control the at least one controlled object. In the implementation described above, at least one of the following features may also be added to the control system described above. At least one of the aforementioned programmable logic controllers does not memorize the aforementioned sequential program. The aforementioned at least one programmable logic controller is a plurality of programmable logic controllers used to control a plurality of controlled objects; the aforementioned at least one computer includes: a main computer, which stores the aforementioned sequential program and executes the aforementioned sequential program; and a plurality of sub-computers, which store a plurality of sub-sequential programs and execute the aforementioned sub-sequential programs when the aforementioned main computer executes the aforementioned sequential program, so that the aforementioned plurality of programmable logic controllers control the aforementioned plurality of controlled objects. At least one of the aforementioned computer systems remembers: sequentially creating application software, which is the process of creating the aforementioned sequential program. Another embodiment of the present invention is 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 programmable logic controller for controlling a plurality of control objects disposed in the plurality of processing units and the transport system; and at least one computer for storing a sequential program and executing the sequential program to enable the at least one programmable logic controller to control the plurality of control objects. The aforementioned plurality of processing units may also include two or more processing units for performing different processes on the aforementioned substrate. At least one of the features described above related to the control system may also be added to the substrate processing apparatus described above. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Figure 1 is a block diagram showing an example of a control system CS according to one embodiment of the present invention. The control system CS is a system that executes a sequential program 145, thereby enabling the target device to perform its function. When the control system CS executes the sequential program 145, the target device performs its function by using at least one controlled object 300 through sequential control. Sequential program 145 is a computer program used to enable the control system CS to use at least one controlled object 300 of the object device and to enable the control system CS to perform sequential control. Sequential program 145 may be a program written in a visual programming language such as the ladder diagram language used to create ladder diagrams; sequential program 145 may also be a program written in a text programming language that uses only one or more of text, symbols, and numbers. An object device can be a device that uses an object and performs the function of an object device, or it can be a device such as a heater or a lamp that performs the function of an object device without using an object. In the former case, the function of the object device can be to impart change to the object, or it can be to not impart change to the object, or it can have both of the functions described above. When the object device imparts change to the object, the function of the object device can be at least one of the processing and handling of the object, or it can be other functions. When the object device does not impart change to the object, the function of the object device can be at least one of the measurement, photography, and handling of the object, or it can be other functions. An object can be a tangible object or an intangible object such as data. In cases where the target device is an apparatus that uses and performs the functions of the target object, the target device may be a substrate processing apparatus 1 (see Figures 4 and 5) for processing a substrate W belonging to the target object, or it may be an apparatus other than a substrate processing apparatus 1 such as a machine tool or inspection apparatus. The substrate W may be any of the following: a substrate for a flat panel display (FPD) such as a semiconductor wafer, a liquid crystal display device, or an organic EL (electroluminescence) display device; a substrate for an optical disc; a substrate for a magnetic disk; a substrate for a photomask; a ceramic substrate; or a substrate for a solar cell; or it may be any other substrate. The semiconductor may be a monomer (elemental semiconductor) or a compound (compound semiconductor). The substrate W may be a disc-shaped substrate W such as a semiconductor wafer, or a square or rectangular substrate W such as an FPD substrate. The object device includes: at least one control object 300 used to perform the functions of the object device; and at least one PLC (Programmable Logic Controller) 200 for controlling at least one control object 300. The controlled object 300 is an electronic or electrical machine used for at least one of transmitting and receiving electrical signals. The controlled object 300 can be an input machine for transmitting electrical signals only, an output machine for receiving electrical signals only, or an input / output machine for both transmitting and receiving electrical signals. The controlled object 300 can also be at least one of a sensor, camera, button, switch, actuator, heater, lamp, solenoid valve, and buzzer, or other control objects. A sensor, camera (more specifically, an imaging sensor of a camera), button, and switch are examples of input machines. An actuator, heater, lamp, solenoid valve, and buzzer are examples of output machines. An actuator is a device used to convert driving energy into mechanical operation, that is, a device used to convert driving energy into the motion of a physical object; driving energy can be electrical, fluid, magnetic, thermal, or chemical energy. Actuators include electric motors (rotary motors), linear motors, air cylinders, and other devices. In the case of an electric actuator, such as an electric motor or linear motor, the actuator may also include: a motor driver that controls the power supplied in response to instructions from the PLC200; and a motor body that converts the power supplied by the motor driver into the motion of a physical object. As long as the motor driver can supply power to the motor body, the motor driver can be fixed to the motor body or detached from the motor body. In the case of an actuator other than an electric actuator (such as an air cylinder), the actuator may also include: an electric valve equipped with an electric actuator; and an actuator body that converts the energy of the fluid that has passed through the electric valve into the motion of a physical object. The controlled object 300 includes: an automatic valve equipped with an actuator. Solenoid valves and electric valves are included in the automatic valve. The automatic valve can be an on / off valve for opening and closing a flow path, or a flow regulating valve for changing the flow rate of a fluid. The automatic valve system includes: a valve body with an annular valve seat for the passage of fluids such as liquids or gases; a valve body movable relative to the valve seat; and a brake that moves the valve body between a closed position and an open position, the closed position being the position where the valve body contacts the valve seat, and the open position being the position where the valve body has moved away from the valve seat. The actuator of the automatic valve can be a pneumatic actuator, an electric actuator, or other actuators. The opening degree of the automatic valve is changed by controlling the actuator of the automatic valve. This allows the on / off valve to be opened or closed, or the opening degree of the flow regulating valve to be changed. The control system CS includes: at least one PLC 200, which controls at least one controlled object 300; and at least one computer 100, which controls at least one PLC 200. Figure 1 shows an example with a plurality of PLCs 200 and one computer 100. The control system CS may also include a Human Machine Interface (HMI) 150. The HMI 150 is an electronic or electrical machine used to receive human instructions to the control system CS. The HMI 150 not only receives human instructions to the control system CS, but also transmits information generated by the control system CS to humans. Figure 1 shows an example of the HMI 150 as a touch panel display. At least one PLC 200 is part of the target device and also part of the control system CS. A computer 100 may or may not be part of the target device. In the case where the control system CS has a plurality of computers 100, one or more computers 100 (but not all) may be part of the target device, while the remaining computers 100 may not be part of the target device. In the case where at least one computer 100 is part of the target device, at least one computer 100 may also be fixed to the frame of the target device on which the PLC 200 is already fixed. Computer 100 communicates with PLC 200. PLC 200 communicates with the controlled object 300. Computer 100 can also communicate with the controlled object 300. PLC 200 receives electrical signals transmitted from Computer 100. PLC 200 transmits electrical signals back to Computer 100. That is, Computer 100 and PLC 200 communicate bidirectionally. The communication between PLC 200 and the controlled object 300 can be unidirectional (sending only or receiving only) or bidirectional. Computer 100 can be connected to PLC 200 via a communication network for transmitting electrical signals among three or more communication devices, or it can be connected to PLC 200 without a communication network. Figure 1 shows an example of the former. In the latter case, computer 100 can also be connected to PLC 200 via a dedicated communication line. For example, computer 100 can also be connected to PLC 200 via communication cables directly installed on both computer 100 and PLC 200. The connection between computer 100 and PLC 200 can be wired or wireless. The same applies to other connections. Computer 100, PLC 200, and controlled object 300 are all examples of communication devices. Figure 1 illustrates an example of a computer 100 connected to a plurality of PLCs 200 via an upper-level network (NA). At least one computer 100 communicates with at least one PLC 200 via the NA. In the case where the control system CS has a plurality of computers 100, the plurality of computers 100 communicate with each other via the NA. The same applies when the control system CS has a plurality of PLCs 200. In the case where the control system CS has a human-machine interface 150, the human-machine interface 150 can be connected to at least one computer 100 via the NA, or it can be connected to any computer 100 via a dedicated communication line. Figure 1 illustrates the former example. Figure 1 illustrates an example of multiple PLCs 200 and multiple controlled objects 300 connected to a lower level network NB. At least one PLC 200 communicates with at least one controlled object 300 via the lower level network NB. In the case where the control system CS has multiple PLCs 200, all PLCs 200 can be connected to one lower level network NB, or they can be connected to multiple lower level network NBs. The control system CS may also have: multiple PLCs 200 connected to one lower level network NB; and at least one PLC 200 connected to a lower level network NB different from the lower level network NB connected to the other PLCs 200. A PLC 200 connected to a lower-level network NB communicates with a controlled object 300 connected to that lower-level network NB. In the case where multiple PLCs 200 are connected to a lower-level network NB, the multiple PLCs 200 can also communicate with each other via the lower-level network NB. The communication protocol used on the lower-level network NB can be the same as or different from the communication protocol used on the upper-level network NA. The PLC 200 communicates in real-time with the controlled object 300 or other PLCs 200 via the lower-level network NB or a dedicated line. The communication cycle between the PLC 200 and the computer 100 can be the same as or longer than the communication cycle between the PLC 200 and the controlled object 300. At least one computer 100, at least one PLC 200, and an upper-level network NA constitute the computer layer. At least one PLC 200, at least one controlled object 300, and a lower-level network NB constitute the programmable logic controller (PLC) layer. The PLC layer is also called a field network, and the controlled object 300 is also called a field machine. Computer 100 and controlled object 300 belong to different control layers. Computer 100 is the control computer, used to control controlled object 300 via PLC 200. PLC 200 is a secondary system used for communication between computer 100 and controlled object 300. When connected to computer 100 without PLC 200, computer 100 needs to be configured for each controlled object 300. However, when connected to computer 100 via PLC 200, this configuration of computer 100 is unnecessary. Therefore, the burden of network construction is reduced. Computer 100 includes: a CPU (central processing unit) 101, which processes information such as program execution; and memory 102, which stores information such as programs to be executed by the CPU 101. Computer 100 further includes a communication module 103, which performs at least one of the following actions: a sending action, which transmits information from the CPU 101 or memory 102 to a communication device outside the computer 100; and a receiving action, which receives information transmitted from a communication device outside the computer 100 and transmits it to the CPU 101 or memory 102. Computer 100 can be an industrial personal computer, a consumer personal computer, or any other type of computer. Computer 100 may also include: a general-purpose operating system (OS), such as Windows (registered trademark) or Linux (registered trademark); and at least one application program that runs on the general-purpose operating system. In addition to the general-purpose operating system, Computer 100 may further include: a real-time operating system used when Computer 100 performs real-time control; and at least one application program that runs on the real-time operating system. The PLC 200 includes: a CPU 201, which processes information such as program execution; and a memory 202, which stores information such as the program to be executed by the CPU 201. The PLC 200 further includes a communication module 203, which performs at least one of the following actions: a transmitting action, which transmits information from the CPU 201 or memory 202 to a communication device outside the PLC 200; and a receiving action, which receives information transmitted from a communication device outside the PLC 200 and transmits it to the CPU 201 or memory 202. The communication module 203 may also be at least one of an input module for receiving only, an output module for transmitting only, or an input / output module for both transmitting and receiving. The communication module 103 of computer 100 is connected to the upper-layer network NA. The communication module 203 of PLC 200 is connected to both the upper-layer network NA and the lower-layer network NB. The communication module 203 of PLC 200 may also include a communication module dedicated to the upper-layer network NA and a communication module dedicated to the lower-layer network NB. The controlled object 300 includes a communication module 303, which is at least one of the means for transmitting and receiving information. The communication module 303 of the controlled object 300 is connected to the lower-layer network NB. The communication module 303 of the controlled object 300 may also be any of an input module, an output module, or an input / output module. At least one computer 100 stores a sequential program 145. All PLCs 200 have a memory 202 capable of storing programs such as sequential programs, but they do not store the sequential program itself. Sequential program 145 contains instructions for at least one controlled object 300. When at least one computer 100 executes sequential program 145, instructions are transmitted from at least one computer 100 to at least one controlled object 300 via PLC 200. Thus, at least one controlled object 300 is controlled according to sequential program 145. PLC 200 can also transmit instructions from computer 100 to controlled object 300 without altering them; or, as long as at least one controlled object 300 follows the instructions of computer 100, PLC 200 can modify the instructions of computer 100 and transmit them to controlled object 300. The sequential program 145 stored in at least one computer 100 can be a sequential program created by at least one computer 100, or a sequential program transferred from a computer different from the computer included in the control system CS to at least one computer 100. In the case where at least one computer 100 creates a sequential program 145, the at least one computer 100 stores sequential creation application software 141 for creating the sequential program 145. In this case, the at least one computer 100 may also store program parts 142, which are a plurality of components capable of constituting the sequential program 145. The at least one computer 100 may also execute the sequential creation application software 141, thereby combining the plurality of components selected from the program parts 142 and creating the sequential program 145. The program parts 142 may include at least one of functions, classes, libraries, modules, subroutines, subroutines, and parameters, and may also include other components. When the sequential application creation software 141 is installed on at least one computer 100, when the at least one computer 100 executes the sequential application creation software 141, a sequential program 145 is created by the sequential application creation software 141. The sequential creation instructions for the at least one computer 100 to create the sequential program 145 can also be input to the at least one computer 100 by the user operating the human-machine interface 150, or can be input to the at least one computer 100 from a computer different from the computer 100 included in the control system CS (such as the host computer HC described later). In the case where the object device is a substrate processing apparatus 1 (refer to Figures 4 and 5), the program component 142 may also include at least one recipe 146. Recipe 146 is information used to specify the processing content, processing conditions, and processing sequence of the substrate W. Alternatively, when a sequence creation instruction is input to at least one computer 100, the recipe 146 used to construct the sequence program 145 may also be input to at least one computer 100. Alternatively, when a sequence creation instruction is input to at least one computer 100, information for identifying recipe 146 may also be input to at least one computer 100, and this recipe 146 is used to construct the sequence program 145. In the case where program component 142 includes prescription 146, at least one computer 100 may also store process data 148, which is data of variables substituted into prescription 146. Process data 148 may also include log 144 generated by executing prescription 146. At least one computer 100 stores parameters 147, which are data of variables substituted into sequential program 145. Process data 148 is one of parameters 147. When at least one computer 100 executes sequential program 145, a log 144 is generated. Log 144 contains information about what happened and the time of the event. Log 144 generated in at least one computer 100 is stored in at least one computer 100. Log 144 generated in PLC 200 is transmitted to at least one computer 100 and stored in at least one computer 100. Log 144 generated in the controlled object 300 is transmitted to at least one computer 100 via PLC 200 and stored in at least one computer 100. Therefore, the log 144 generated in the control system CS when executing sequential program 145 is collected and stored in at least one computer 100. The analysis of the log 144 generated during the execution of the sequential program 145 can 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 stores log analysis application software 143, which is used to analyze the log 144 stored on at least one computer 100. When at least one computer 100 executes the log analysis application software 143, it generates a log analysis file containing the analysis results of log 144 and stores it in at least one computer 100. If the control system CS has a display, at least one computer 100 can also display the log analysis file on the display. If at least one computer 100 creates a program 145, at least one computer 100 can also create the program 145 based on the analysis results of log 144 performed by the log analysis application software 143. Next, an example of sequential control performed by the control system CS shown in Figure 1 will be described. Figure 2 is a block diagram illustrating an example of sequential control performed by the control system CS shown in Figure 1. Figure 2 shows an example where three controlled objects 300 (electric motor 310, valve 320, and sensor 330) are connected to the control system CS, and each controlled object 300 is equipped with a PLC 200 (PLC 210, PLC 220, PLC 230). The sequential control is described below: after the electric motor 310 is driven, the valve 320 is opened, and the flow rate of the fluid that has passed through the valve 320 is detected by the sensor 330. When a user operates the human-machine interface 150 to give instructions for the sequential execution of the sequence program 145 to the control system CS, at least one computer 100 executes the sequence program 145 and the control system CS begins sequential control. Specifically, at least one computer 100 transmits a first instruction i1 to the PLC 210 to drive the electric motor 310. Upon receiving the first instruction i1, the PLC 210 drives the electric motor 310. That is, the PLC 210 transmits the first instruction i1 to the motor driver of the electric motor 310, causing the electric motor 310 to rotate. After the driving of the electric motor 310 has ended, the PLC 210 transmits a first response R1 to the at least one computer 100, which conveys the intention that the driving of the electric motor 310 has ended. The at least one computer 100 receives the first response R1 to confirm that the driving of the electric motor 310 has ended. Next, at least one computer 100 transmits a second instruction i2 to PLC 220, which is used to open valve 320. Upon receiving the second instruction i2, PLC 220 opens valve 320. That is, the actuator of valve 320, which is an automatic valve, is driven in response to the instruction from PLC 220, and the valve system of valve 320 moves from the closed position. After opening valve 320, PLC 220 transmits a second response R2 to at least one computer 100, which is used to convey the intention that valve 320 has been opened. At least one computer 100 receives the second response R2 to confirm that valve 320 has been opened. Next, at least one computer 100 transmits a third instruction i3 to the PLC 230. The third instruction i3 is used to confirm whether the flow rate of the fluid that has passed through valve 320 is above a predetermined value. The PLC 230 is connected to sensor 330. Sensor 330 detects the flow rate of the fluid that has passed through valve 320. The detection value of sensor 330 is input to PLC 230. When valve 320 opens, the detection value of sensor 330 changes. PLC 230 determines whether the flow rate of the fluid that has passed through valve 320 is above a predetermined value based on the detection value of sensor 330. If the flow rate of the fluid passing through valve 320 is above a predetermined value, PLC 230 transmits a third response R3 to at least one computer 100. This third response R3 conveys the intention that the flow rate of the fluid passing through valve 320 is above a predetermined value. At least one computer 100 receives the third response R3 and confirms that the flow rate of the fluid passing through valve 320 is above a predetermined value. Thus, the various stages of control included in sequence program 145 are performed sequentially according to a pre-defined order. Next, another example of a control system CS will be described. Figure 3 is a block diagram showing another example of a control system CS according to one embodiment of the present invention. Similar to the control system CS shown in Figure 1, the control system CS shown in Figure 3 includes: at least one PLC 200 controlling at least one controlled object 300; and at least one computer 100 controlling at least one PLC 200. The at least one computer 100 includes: a plurality of sub-computers 120 controlling at least one PLC 200; and a main computer 110 controlling the plurality of sub-computers 120. The control system CS may also include a human-machine interface 150. Figure 3 shows an example of the human-machine interface 150 connected to the main computer 110 and the sub-computers 120. The main computer 110 includes a CPU 101, memory 102, and a communication module 103. The secondary computer 120 also includes a CPU 101, memory 102, and a communication module 103. The main computer 110 and the secondary computer 120 are connected to the first upper-layer network NA1. The secondary computer 120 and the PLC 200 are connected to the second upper-layer network NA2. The main computer 110, the secondary computer 120, and the PLC 200 are connected to the same communication network. In this configuration, the main computer 110 can also communicate with the PLC 200 without going through the secondary computer 120. The main computer 110 stores the sequential program 145 described above. All secondary computers 120 store the secondary sequential program 149. Although all PLCs 200 have a memory 202 that can store programs such as sequential programs, they do not store sequential programs or secondary sequential programs. Sub-sequence 149 is part of sequence 145. Sub-sequence 149 is executed by executing sequence 145. Sub-sequence 149 may also be called a function, hierarchy, program library, module, subroutine, or subprogram. The content of sub-sequence 149 in a certain secondary computer 120 may be the same as or different from the content of sub-sequence 149 in other secondary computers 120. Secondary computer 120 may also store multiple sub-sequence 149s with different contents. The sequential program 145 stored in the main computer 110 can be a sequential program created by the computer 100 included in the control system CS, or a sequential program transferred to the main computer 110 from a computer different from the computer 100 included in the control system CS. The same applies to the secondary sequential program 149 stored in the secondary computer 120. Figure 3 illustrates the following example: the main computer 110 creates program 145, and the secondary computer 120 stores a secondary program 149 transferred from a computer different from the computer 100 included in the control system CS. In this example, the main computer 110 stores program creation application software 141, which is used to create program 145. The main computer 110 may also store program components 142, which are multiple components capable of constituting program 145. When at least one computer 100 executes sequential program 145, log 144 is generated. The same applies when the secondary computer 120 executes secondary sequential program 149. Log 144 generated in the main computer 110 is stored in the main computer 110. Log 144 generated in the secondary computer 120, PLC 200, and controlled object 300 is transmitted to and stored in the main computer 110. Therefore, log 144 generated in the control system CS during the execution of sequential program 145 is collected and stored in the main computer 110. The analysis of log 144 can be performed by the main computer 110 or by a computer different from the computer 100 included in the control system CS. Figure 3 shows an example where log analysis application software 143 is loaded onto the main computer 110 to analyze log 144 stored on the main computer 110. In the case where the main computer 110 creates program 145, the main computer 110 can also create program 145 based on the analysis results of log 144 performed by log analysis application software 143. The main computer 110 can also modify sub-program 149 based on the same analysis results. Next, the substrate processing apparatus 1, which includes the control system CS shown in FIG3, will be described. Figures 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 for holding a carrier CA such as a front-opening unified pod (FOUP), which holds a substrate W; a plurality of processing units 2 for processing the substrate W transported from the carrier CA on the load port LP; a transport system TS for transporting the substrate W between the carrier CA on the load port LP and the plurality of processing units 2; an outer wall 1a forming a sealed space that houses the plurality of processing units 2 and the transport system TS; and a control device 3 for controlling the substrate processing apparatus 1. The transport system TS removes substrate W from carrier CA on loading port LP and moves it into processing unit 2. The transport system TS further removes substrate W from processing unit 2 and moves it into carrier CA on loading port LP. The carrier CA moved into substrate W may be the same as or different from the carrier CA from which substrate W has already been removed. The transport system TS can also transport substrate W from one processing unit 2 to another. The transport system TS may also include at least one transport robot TR, which transports one or more substrates W in a horizontal posture. Processing unit 2 can be a blade-type processing unit 2 for processing substrates W one by one, or a batch-type processing unit 2 for processing multiple substrates W in total. The processing of substrates W performed by processing unit 2 can be one or more of the following: cleaning, bonding, film formation, resist coating, exposure, development, etching, impurity implantation, activation, resist stripping, polishing, dicing, and inspection, or other processes. All processing units 2 can perform the same processing of substrates W, or they can perform individual processing of substrates W. Alternatively, multiple processing units 2 may include two or more processing units 2 that perform processing of substrates W different from the processing performed by other processing units 2. Figure 4 shows an example where the processing unit 2 is a blade-type cleaning unit 2c, which supplies a processing liquid such as a chemical solution or rinsing solution to the substrate W. Figure 5 shows an example where the processing unit 2 is a bonding unit 2b, which is used to bond two substrates W (a first substrate W1 and a second substrate W2). In the example shown in Figure 5, a plurality of processing units 2 include bonding units 2b and cleaning units 2c. The configuration of the cleaning unit 2c shown in Figure 5 is the same as that shown in Figure 4. Unless otherwise specified, the bonding unit 2b described in this specification performs substrate bonding under atmospheric pressure. The cleaning unit 2c shown in Figure 4 includes: a box-shaped chamber 4 with an internal space; and a spin chuck 10, which holds a substrate W horizontally within the chamber 4 while rotating the substrate W about a vertical axis of rotation A1 passing through the center of the substrate W. The chamber 4 includes: a box-shaped partition 5 with a passage for the substrate W to pass through; and a door 6 for opening and closing the passage. The spin chuck 10 includes: a clamp 11, which is a machine clamp or a vacuum clamp, for horizontally holding the substrate W; and a spin motor 12 for rotating the clamp 11 about a vertical axis of rotation A1 passing through the center of the substrate W held by the clamp 11. The cleaning unit 2c shown in Figure 4 further includes: a medicine nozzle 31, which sprays medicine toward the upper surface of the substrate W held by the rotating clamp 10; and a cleaning liquid nozzle 33, which sprays cleaning liquid such as pure water (deionized water (DIW)) toward the upper surface of the substrate W held by the rotating clamp 10. The liquid nozzle 31 is connected to a liquid pipe 32p for guiding the liquid. When the liquid valve 32v installed on the liquid pipe 32p is opened, the liquid continuously sprays downward from the outlet of the liquid nozzle 31. When the liquid valve 32v is opened, the flow rate of the liquid flowing from the liquid valve 32v toward the liquid nozzle 31 is detected by a flow meter 32m. The liquid nozzle 31 is connected to a nozzle actuator 32a, which is used to move the liquid nozzle 31 within the chamber 4. The nozzle actuator 32a moves the liquid nozzle 31 horizontally between a processing position (the position shown by the solid line) and a standby position (the position shown by the two-point chain line). The processing position is where the liquid sprayed from the liquid nozzle 31 is supplied to the upper surface of the substrate W, and the standby position is where the liquid nozzle 31 is located around the rotating fixture 10 when viewed from above. The bonding unit 2b shown in Figure 5 includes: a box-shaped chamber 4 having an internal space; a first clamp 54A, which is a vacuum clamp or an electrostatic clamp, horizontally holding the first substrate W1 within the chamber 4; and a second clamp 54B, which is a vacuum clamp or an electrostatic clamp, horizontally holding the second substrate W2 within the chamber 4. The clamp 4 includes: a partition wall 5 having a passage for the first substrate W1 and the second substrate W2 to pass through; and a door 6 for opening and closing the passage. The bonding unit 2b shown in Figure 5 further includes: a plurality of bonding actuators 55, which, while the first clamp 54A and the second clamp 54B are holding the first substrate W1 and the second substrate W2, cause the first clamp 54A and the second clamp 54B to move relative to each other, thereby bonding the first substrate W1 and the second substrate W2; and at least one camera 56, which photographs at least one of the first substrate W1 and the second substrate W2, thereby detecting the alignment of the first substrate W1 and the second substrate W2 in at least one of the following situations: before bonding the first substrate W1 and the second substrate W2 and after bonding the first substrate W1 and the second substrate W2. The plurality of engagement actuators 55 may also include: a horizontal actuator for moving the first clamp 54A and the second clamp 54B relative to each other in a horizontal direction; a vertical actuator for moving the first clamp 54A and the second clamp 54B relative to each other in a vertical direction; and a rotary actuator for rotating the first clamp 54A and the second clamp 54B relative to each other about a vertical line. The transport system TS (strictly speaking, the actuators and sensors included in the transport system TS) is included in a plurality of control objects 300. The self-rotating motor 12, the liquid valve 32v, and the flow meter 32m shown in Figure 4 are also included in a plurality of control objects 300. The engagement actuator 55 and the camera 56 shown in Figure 5 are also included in a plurality of control objects 300. The liquid valve 32v is an on / off valve equipped with an actuator (the automatic valve described above). The flow meter 32m is a sensor used to measure the flow rate of the liquid. The substrate processing device 1 shown in Figures 4 and 5 is also included in the other control objects 300. For example, the actuator (not shown) used to open and close the door 6 is also included in a plurality of control objects 300. The control device 3 is equivalent to a main computer 110, which controls the controlled object 300 via a secondary computer 120 and a PLC 200. Figures 4 and 5 show an example where a secondary computer 120 is provided in each processing unit 2, and the main computer 110 controls all the secondary computers 120. In this example, at least one PLC 200 is provided in each processing unit 2. The at least one PLC 200 provided in a certain processing unit 2 is controlled by the secondary computer 120 provided in that processing unit 2. Therefore, a plurality of processing units 2 are controlled by a respective secondary computer 120. The secondary computer 120 can also control a plurality of processing units 2. The human-machine interface 150 contacts the outside of the outer wall 1a of the substrate processing device 1 while in contact with the outer wall 1a. The main computer 110, the secondary computer 120, and the PLC 200 can be disposed inside or outside the outer wall 1a of the substrate processing device 1. The main computer 110 is connected to the host computer HC, which is disposed outside the substrate processing device 1. The host computer HC communicates with the main computer 110. The host computer HC can be connected to the main computer 110 via the first upper-layer network NA1 shown in FIG. 3, or via a different communication network or a dedicated communication line. When a user operates the human-machine interface 150 to give a start processing instruction to the substrate processing apparatus 1 to begin processing the substrate W, the main computer 110 transmits a message requesting the transfer of the substrate W to the host computer HC. Upon receiving this message, the host computer HC causes the carrier transport system to transfer 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 the information used to identify the transferred carrier CA and transmits this information to the host computer HC. Upon receiving this information, the host computer HC transmits information such as prescription 146 to the main computer 110. If the main computer 110 has multiple prescriptions 146 stored, the host computer HC can also transmit information used to identify the prescription 146 to the main computer 110. The start processing instruction is equivalent to the sequence creation instruction described above. After the user issues the start processing instruction, when the main computer 110 receives information such as prescription 146 from the host computer HC, the main computer 110 creates a schedule that configures a plurality of processes to be performed by the board processing device 1 in a time sequence. The schedule is equivalent to the sequential program 145. The main computer 110 executes the sequential creation application software 141 (see Figure 3), which is equivalent to the scheduling application software, to create the schedule. Afterward, the main computer 110 controls a plurality of secondary computers 120 according to the schedule, thereby causing the board processing device 1 to perform a plurality of processes according to the schedule. Figure 6 is a flowchart showing an example of a schedule created by the main computer 110. In this example, the schedule includes: a first transport step (step S11 in Figure 6), which transports the substrate W in the carrier CA on the loading port LP to the processing unit 2; a substrate processing step (steps S12 to S14 in Figure 6), which processes the substrate W by the processing unit 2; and a second transport step (step S15 in Figure 6), which transports the substrate W processed by the processing unit 2 to the carrier CA on the loading port LP. In the case where the processing unit 2 is the cleaning unit 2c shown in FIG4, the substrate processing process may include the following processes: a liquid supply process (step S12 in FIG6), in which liquid sprayed from the liquid nozzle 31 is supplied to the upper surface of the substrate W while the substrate W is rotated; a cleaning liquid supply process (step S13 in FIG6), in which cleaning liquid sprayed from the cleaning liquid nozzle 33 is supplied to the upper surface of the substrate W while the substrate W is rotated; and a drying process (step S14 in FIG6), in which liquid is removed from the substrate W by rotating the substrate W, thereby drying the substrate W; the substrate processing process may also include other processes. Figure 7 is a flowchart showing an example of the liquid medicine supply process shown in Figure 6. In the case where the scheduling includes the liquid medicine supply process shown in Figure 6, the liquid medicine supply process includes the following steps: a nozzle moving step (step S21 in Figure 7), in which the nozzle actuator 32a moves the liquid medicine nozzle 31 from the standby position (the position shown by the two-dot chain line in Figure 4) to the processing position (the position shown by the solid line in Figure 4); a start spraying step (step S22 in Figure 7), in which the liquid medicine valve 32v is opened, thereby causing the liquid medicine nozzle 31 located in the processing position to start spraying liquid medicine; and a flow rate confirmation step (step S23 in Figure 7), in which the flow rate of the liquid medicine sprayed from the liquid medicine nozzle 31 is confirmed to be above a predetermined value based on the detection value of the flow meter 32m; the liquid medicine supply process may also include other steps. Next, an example of scheduling control performed by the control system CS shown in Figure 3 will be described. Figure 8 is a block diagram illustrating an example of sequential control performed by the control system CS shown in Figure 3. Figure 8 shows an example where three controlled objects 300 (electric motor 310, valve 320, sensor 330) are connected to the control system CS, and each controlled object 300 is equipped with a PLC 200 (PLC 210, PLC 220, PLC 230). The sequential control is described below with reference to Figures 4 and 8: The control system CS sequentially executes the nozzle movement process shown in Figure 7 (step S21 of Figure 7), the start of spraying process (step S22 of Figure 7), and the flow confirmation process (step S23 of Figure 7). The start processing instruction used to cause the substrate processing apparatus 1 to begin processing the substrate W is equivalent to a schedule creation instruction and a schedule execution instruction. The schedule created by the substrate processing apparatus 1 is equivalent to the sequence program 145. When the user operates the human-machine interface 150 to issue a sequence execution instruction to cause the control system CS to execute the sequence program 145, the main computer 110 executes the sequence program 145, and the control system CS begins sequential control. Specifically, the main computer 110 transmits a inclusion indicator iA to the secondary computer 120; the inclusion indicator iA is used to: drive the electric motor 310, open the valve 320, and confirm that the flow rate of the fluid that has passed through the valve 320 is above a predetermined value. When the secondary computer 120 receives the instruction iA, it executes a first sequential program to perform sequential control for driving the electric motor 310. Specifically, the secondary computer 120 transmits the first instruction i1 for driving the electric motor 310 to the PLC 210. Upon receiving the first instruction i1, the PLC 210 drives the electric motor 310. This moves the liquid nozzle 31 from the standby position to the processing position. After ending the driving of the electric motor 310, the PLC 210 transmits a first response R1 to the secondary computer 120, which conveys the intention that the driving of the electric motor 310 has ended. Next, the secondary computer 120 executes a second sequential program to perform sequential control for opening valve 320. Specifically, the secondary computer 120 transmits a second instruction i2 to PLC 220 to open valve 320. Upon receiving the second instruction i2, PLC 220 opens valve 320. At this point, the liquid nozzle 31 at the processing position begins to spray liquid. After opening valve 320, PLC 220 transmits a second response R2 to the secondary computer 120, which conveys the intention that valve 320 has been opened. Next, the secondary computer 120 executes a third sequential program to perform sequential control to confirm that the flow rate of the fluid that has passed through valve 320 is above a predetermined value. Specifically, the secondary computer 120 transmits a third instruction i3 to the PLC 230, which confirms that the flow rate of the fluid that has passed through valve 320 is above a predetermined value. After receiving the third instruction i3, the PLC 230 determines whether the flow rate of the fluid that has passed through valve 320 is above a predetermined value based on the detection value of sensor 330. Therefore, it confirms whether the flow rate of the liquid sprayed from the liquid nozzle 31 is above a predetermined value based on the detection value of flow meter 32m. If the flow rate of the fluid passing through valve 320 is above a predetermined value, PLC 230 transmits a third response R3 to the secondary computer 120. This third response R3 conveys the intention that the flow rate of the fluid passing through valve 320 is above a predetermined value. When the secondary computer 120 receives the third response R3, it transmits a comprehensive response RA to the primary computer 110. This comprehensive response RA conveys the following intention: drive the electric motor 310, open valve 320, and confirm that the flow rate of the fluid passing through valve 320 is above a predetermined value. Thus, the various stages of control included in the sequence program 145 are performed sequentially according to a pre-defined order. Next, the effects of this embodiment will be explained. In this embodiment, computer 100 executes sequential program 145. Through this, PLC 200 controls the controlled object 300. In other words, computer 100 controls PLC 200 according to sequential program 145, and PLC 200 controls the controlled object 300 according to sequential program 145. Therefore, it is not necessary to configure computer 100 to communicate with the controlled object 300. Furthermore, sequential program 145 is stored in computer 100. When sequential program 145 is stored in PLC 200, PLC 200 is needed to manage sequential program 145. When sequential program 145 is stored in computer 100, PLC 200 is not needed to manage sequential program 145. In particular, when multiple PLCs 200 are connected to a computer 100, since multiple sequential programs 145 can be aggregated in the computer 100, the burden of managing the sequential programs 145 can be reduced compared to the case where each PLC 200 stores the sequential programs 145. In this embodiment, PLC200 does not store sequential programs. In other words, although PLC200 stores programs used for communication with the controlled object 300, it does not store sequential programs such as ladder diagrams. When PLC200 does not store sequential programs, the sequential programs need to be managed by PLC200. Therefore, the burden of managing sequential programs can be reduced. In this embodiment, the main computer 110 executes sequential program 145. Correspondingly, multiple secondary computers 120 execute multiple secondary sequential programs 149, enabling multiple PLCs 200 to control multiple controlled objects 300. Therefore, compared to the situation where the main computer 110 executes both sequential program 145 and secondary sequential program 149, the burden on the main computer 110 is reduced. This allows even high-load control, such as simultaneously controlling multiple controlled objects 300, to be performed. In this embodiment, when a sequence creation instruction or similar trigger occurs, the computer 100 executes the sequence creation application software 141, thereby creating a sequence program 145. The computer 100 executes the sequence program 145 created by the execution of the sequence creation application software 141, thereby enabling the PLC 200 to control the controlled object 300. Thus, since the computer 100 automatically creates the sequence program 145 that should be executed by the computer 100, the burden of creating the sequence program 145 is reduced for the user. In this embodiment, when the computer 100 executes the sequential program 145, at least one PLC 200 controls a plurality of control objects 300 configured in a plurality of processing units 2 and a transport system TS. 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 but also a transport system TS with functions different from the processing units 2, the number and types of control objects 300 can easily increase. In the case where such a plurality of control objects 300 are connected to the computer 100 without using the PLC 200, establishing and maintaining communication between the computer 100 and the control objects 300 would require a greater burden. For example, when there are updates or version upgrades to the operating system installed on the computer 100, the same settings need to be re-performed. Therefore, controlling the control objects 300 via the PLC 200 and the computer 100 alleviates this burden. In this embodiment, when the computer 100 executes the sequential program 145, the plurality of processing units 2 perform different processes on the substrate W. In this case, the variety of control objects 300 provided in the plurality of processing units 2 tends to increase. When the control objects 300 are connected to the computer 100 without via the PLC 200, the burden of establishing and maintaining communication between the computer 100 and the control objects 300 increases more easily when there are many types of control objects 300. By controlling the control objects 300 via the PLC 200 and the computer 100, this burden can be alleviated. Next, we will explain the other implementation forms. As long as at least one control object 300 is connected to the computer 100 via the PLC 200, there may also be control objects 300 that are connected to the computer 100 without being connected via the PLC 200. As long as the computer 100 controls the controlled object 300 through the PLC 200 according to the sequence program 145 stored in the computer 100, the PLC 200 can also store a sequence program whose content is the same as or different from the sequence program 145 stored in the computer 100. It is also possible to combine two or more of the components described above. It is also possible to combine two or more of the processes described above. Although embodiments of the present invention have been described in detail, these embodiments are merely specific examples used to illustrate the technical content of the present invention, and the present invention should not be construed as being limited to these specific examples. The present invention is limited only to the appended claims. This application asserts priority to Japanese Patent Application No. JP2024-014522, filed on February 2, 2024, and incorporates the entire disclosure of Japanese Patent Application No. JP2024-014522 into this application. 1: Substrate processing device 1a: Outer wall 2: Processing unit 2b: Bonding unit 2c: Cleaning unit 3: Control device 4: Chamber 5: Partition wall 6: Door 10: Rotating fixture 11: Fixture 12: Rotating motor 31: Chemical nozzle 32a: Nozzle actuator 32m: Flow meter 32p: Chemical piping 32v: Chemical valve 33: Cleaning fluid nozzle 54A: First fixture 54B: Second fixture 55: Bonding actuator 56: Camera 100: Computer 101, 201: CPU 102, 202: Memory; 103, 203, 303: Communication Module; 110: Main Computer; 120: Secondary Computer; 141: Sequential Programming Application Software; 142: Program Components; 143: Log Analysis Application Software; 144: Log; 145: Sequential Program; 146: Prescription; 147: Parameters; 148: Process Data; 150: Human-Machine Interface; 200, 210, 220, 230: PLC 300: Controlled object; 310: Electric motor; 320: Valve; 330: Sensor; A1: Rotation axis; CA: Carrier; CS: Control system; HC: Host computer; i1: First indication; i2: Second indication; i3: Third indication; iA: General indication; LP: Loading port; NA: Upper network; NA1: First upper network; NA2: Second upper network; NB: Lower network; R1: First response; R2: Second response; R3: Third response; RA: General response; S11 to S15, S21 to S23: Steps; TR: Handling robot; TS: Handling system; W: Baseboard; W1: First baseboard; W2: Second baseboard. [Figure 1] is a block diagram showing an example of a control system according to one embodiment of the present invention. [Figure 2] is a block diagram illustrating an example of sequential control performed by the control system shown in Figure 1. [Figure 3] is a block diagram showing another example of a control system according to one embodiment of the present invention. [Figure 4] is a schematic diagram showing an example of a substrate processing apparatus according to one embodiment of the present invention. [Figure 5] is a schematic diagram showing another example of a substrate processing apparatus according to one embodiment of the present invention. [Figure 6] is a flowchart showing an example of a schedule created by a host computer. [Figure 7] is a flowchart showing an example of a liquid supply process shown in Figure 6. [Figure 8] is a block diagram illustrating an example of sequential control performed by the control system shown in Figure 3. 100: Computer 101,201: CPU 102,202: Memory 103, 203, 303: Communication modules 141: Sequential Application Creation 142: Program Parts 143: Log Analysis Application Software 144: Log 145: Sequential Programs 146: Prescription 147: Parameters 148: Process Data 150: Human-Computer Interface 200: PLC 300: Control Object CS: Control System NA: Upper Network NB: Subnet

Claims

1. A control system comprising: at least one programmable logic controller (PLC) for controlling at least one controlled object; and at least one computer for storing a sequential program and executing the sequential program to enable the at least one programmable logic controller to control the at least one controlled object; wherein the at least one programmable logic controller is a plurality of programmable logic controllers for controlling a plurality of controlled objects; wherein the at least one computer comprises: a main computer for storing and executing the sequential program; and a plurality of secondary computers for storing a plurality of secondary sequential programs and executing the plurality of secondary sequential programs when the main computer executes the sequential program, thereby enabling the plurality of programmable logic controllers to control the plurality of controlled objects.

2. The control system described in claim 1, wherein at least one of the aforementioned programmable logic controllers does not memorize the aforementioned sequential program.

3. The control system described in request item 1 or 2, wherein at least one of the aforementioned computers remembers: sequentially creating application software, which is the sequential program for creating the aforementioned application software.

4. 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 programmable logic controller for controlling a plurality of control objects disposed in the plurality of processing units and the transport system; and at least one computer for storing a sequential program and executing the sequential program to enable the at least one programmable logic controller to control the plurality of control objects; wherein the at least one programmable logic controller is a plurality of programmable logic controllers for controlling the plurality of control objects; wherein the at least one computer comprises: a main computer for storing and executing the sequential program; and a plurality of secondary computers for storing a plurality of secondary sequential programs and executing the plurality of secondary sequential programs when the main computer executes the sequential program, thereby enabling the plurality of programmable logic controllers to control the plurality of control objects.

5. The substrate processing apparatus as described in claim 4, wherein the plurality of processing units includes two or more processing units for performing different processing on the substrate.

Citation Information

Patent Citations

  • Multicore processor fault detection for safety critical software applications

    CN105683919A

  • Enginnering tool, program editing device and program editing system

    TW201606463A

  • Program verification system, control apparatus and program verification method

    TW201905613A

  • Voice actuated industrial machine control system

    TW202001871A

  • Control device, safety shutdown program of same, and storage medium

    TW202225876A