KR102315878B1 - A transfer unit controller and a substrate processing apparatus - Google Patents

A transfer unit controller and a substrate processing apparatus Download PDF

Info

Publication number
KR102315878B1
KR102315878B1 KR1020180169342A KR20180169342A KR102315878B1 KR 102315878 B1 KR102315878 B1 KR 102315878B1 KR 1020180169342 A KR1020180169342 A KR 1020180169342A KR 20180169342 A KR20180169342 A KR 20180169342A KR 102315878 B1 KR102315878 B1 KR 102315878B1
Authority
KR
South Korea
Prior art keywords
unit
object group
condition
transfer unit
transfer
Prior art date
Application number
KR1020180169342A
Other languages
Korean (ko)
Other versions
KR20200079789A (en
Inventor
이종석
Original Assignee
세메스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 세메스 주식회사 filed Critical 세메스 주식회사
Priority to KR1020180169342A priority Critical patent/KR102315878B1/en
Publication of KR20200079789A publication Critical patent/KR20200079789A/en
Application granted granted Critical
Publication of KR102315878B1 publication Critical patent/KR102315878B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/677Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations
    • H01L21/67739Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations into and out of processing chamber
    • H01L21/67742Mechanical parts of transfer devices
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67259Position monitoring, e.g. misposition detection or presence detection
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67276Production flow monitoring, e.g. for increasing throughput
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/677Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations
    • H01L21/67763Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere for conveying, e.g. between different workstations the wafers being stored in a carrier, involving loading and unloading
    • H01L21/67766Mechanical parts of transfer devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Container, Conveyance, Adherence, Positioning, Of Wafer (AREA)

Abstract

본 발명은 이송유닛제어부 및 기판처리장치에 관한 것으로서, 복수의 모듈로 기판을 이송하는 이송유닛의 동작을 제어하는 이송유닛제어부에 있어서, 상기 이송유닛제어부는, 상기 이송유닛에서 수행될 수 있는 동작들을 각각의 객체로 생성하는 객체생성부와, 상기 각각의 객체 중 상기 이송유닛의 연속된 동작에 대응되는 2이상의 실행 가능한 객체를 연결하여 각각의 객체그룹을 생성하는 객체그룹생성부와, 상기 각각의 객체의 상태를 판단하는 객체상태판단부와, 설정조건을 입력받는 조건설정부와, 상기 객체그룹의 상태 및 상기 설정조건에 기반하여 객체그룹을 갱신하는 객체그룹 갱신부와, 상기 각각의 객체그룹 중 어느 하나를 실행하는 객체그룹실행부를 포함한다.The present invention relates to a transfer unit control unit and a substrate processing apparatus, in the transfer unit control unit for controlling the operation of the transfer unit for transferring the substrate to a plurality of modules, the transfer unit control unit, the operation that can be performed in the transfer unit an object generating unit generating each of the objects as each object, and an object group generating unit generating each object group by connecting two or more executable objects corresponding to the continuous operation of the transfer unit among the respective objects; An object state determination unit for determining the state of an object of, a condition setting unit for receiving a setting condition, an object group update unit for updating an object group based on the state of the object group and the setting condition It includes an object group execution unit that executes any one of the groups.

Description

이송유닛제어부 및 기판처리장치{A TRANSFER UNIT CONTROLLER AND A SUBSTRATE PROCESSING APPARATUS}A TRANSFER UNIT CONTROLLER AND A SUBSTRATE PROCESSING APPARATUS

본 발명은 이송유닛제어부 및 그를 포함하는 기판처리장치에 관한 것으로서, 보다 구체적으로는 스케줄 순서를 변경할 수 있는 이송유닛제어부 및 그를 포함하는 기판처리장치에 관한 것이다.The present invention relates to a transfer unit control unit and a substrate processing apparatus including the same, and more particularly, to a transfer unit control unit capable of changing a schedule order and a substrate processing apparatus including the same.

일반적으로 기판처리장치는 공정을 처리할 수 있는 다수의 모듈을 포함하고, 다수의 모듈에 기판을 이송하는 이송유닛을 포함한다. 특정기판을 처리함에 있어서 특정기판에 해당하는 과정에 대응되는 레시피가 적용된다. 이송유닛 제어부는 레시피에 따라 이송유닛을 제어한다. 이송유닛을 제어함에 있어서, 이벤트 방식을 사용한다. In general, a substrate processing apparatus includes a plurality of modules capable of processing a process, and includes a transfer unit for transferring a substrate to the plurality of modules. In processing a specific substrate, a recipe corresponding to the process corresponding to the specific substrate is applied. The transfer unit control unit controls the transfer unit according to the recipe. In controlling the transfer unit, an event method is used.

도 1은 종래의 인덱스암 로봇이 이벤트 방식에 따라 기판이송을 제어하는 과정을 설명하기 위한 도면이다.1 is a view for explaining a process in which a conventional index arm robot controls substrate transfer according to an event method.

도 1을 참조하면, 인덱스암(Index Arm) 로봇은 로드포트1(LoadPort1, LP1)과 인덱스암(index arm)과 버퍼(Buffer) 사이의 기판 이송을 담당한다. Referring to FIG. 1 , the index arm robot is responsible for transferring the substrate between the load ports 1 (LoadPort1, LP1) and the index arm and the buffer.

로드포트1(LP1)에 wafer가 존재하는 경우, 인덱스암(Index Arm)은 wafer를 Arm1로 가져오도록(pick) 제어된다. 이후 버퍼(buffer)가 비어있는 경우 buffer에 wafer를 가져다 놓도록(place) 제어된다. 예를 들어, 이벤트 방식에 의하면, 로봇암은 대상 모듈에 기판이 존재하면, 기판을 즉시 가져와서 목표 모듈로 이송한다. When a wafer is present in load port 1 (LP1), the index arm is controlled to pick the wafer to Arm1. After that, if the buffer is empty, it is controlled to place the wafer in the buffer. For example, according to the event method, if there is a substrate in the target module, the robot arm immediately takes the substrate and transfers it to the target module.

그러나 이벤트 방식의 경우, 중간 스텝이 먼저 종료되면, 첫번째 스텝부터 마지막 스텝으로의 최대 이송 가능한 최대 처리량에 어긋나는 현상이 발생한다. However, in the case of the event method, if the intermediate step is completed first, a phenomenon that deviates from the maximum transferable throughput from the first step to the last step occurs.

즉, 공정 스텝 간 유닛 처리 시간이 서로 다르기 때문에, 중간 스텝이 먼저 종료되는 경우가 발생한다. 이로 인해, 이벤트 방식에 의해 제어되는 로봇암은 대기 상태에 머무르게 되어 공정성능이 저하되는 문제점이 존재한다. That is, since the unit processing time is different between the process steps, the intermediate step may be terminated first. For this reason, there is a problem that the robot arm controlled by the event method stays in a standby state, and thus process performance is deteriorated.

또한, 이벤트 방식에 따른 제어방법은 제어부 내 프로그램 형태로 저장되어 있어, 사용자의 필요에 의한 일시적 변경이 불가능하다. 이와 더불어, 반도체 제조공정이 발전함에 따라 종래의 이벤트 방식과는 다른 방식이 요구되고 있다.In addition, since the control method according to the event method is stored in the form of a program in the control unit, it is impossible to temporarily change it according to the user's need. In addition, as the semiconductor manufacturing process develops, a method different from the conventional event method is required.

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 대기시간을 감소시켜 처리량을 증대시키며, 사용자에 의해 변경이 가능한 이송유닛제어부 및 기판처리장치를 제공함에 그 목적이 있다.An object of the present invention is to provide a transfer unit control unit and a substrate processing apparatus that can be changed by a user and increase throughput by reducing waiting time to solve the above problems.

상기한 목적을 달성하기 위한 본 발명의 실시예에 따른 복수의 모듈로 기판을 이송하는 이송유닛의 동작을 제어하는 이송유닛제어부는, 설정조건을 입력받는 조건설정부와, 상기 이송유닛에서 수행될 수 있는 동작들을 각각의 객체로 생성하는 객체생성부와, 상기 각각의 객체 중 상기 이송유닛의 연속된 동작에 대응되는 2이상의 실행 가능한 객체를 연결하여 각각의 객체그룹을 생성하는 객체그룹생성부와, 상기 각각의 객체의 상태를 판단하는 객체상태판단부와, 상기 객체그룹의 상태 및 상기 설정조건에 기반하여 객체그룹을 갱신하는 객체그룹갱신부와, 상기 각각의 객체그룹 중 어느 하나를 실행하는 객체그룹실행부를 포함하는 이송유닛제어부를 포함한다.A transfer unit control unit for controlling an operation of a transfer unit for transferring a substrate to a plurality of modules according to an embodiment of the present invention for achieving the above object, a condition setting unit receiving a set condition input, and to be performed in the transfer unit An object generating unit generating possible operations as each object, and an object group generating unit generating each object group by connecting two or more executable objects corresponding to the continuous operation of the transfer unit among the respective objects; , an object state determination unit for determining the state of each object, an object group update unit for updating an object group based on the state of the object group and the setting condition, and executing any one of the respective object groups and a transfer unit control unit including an object group execution unit.

또한 실시예에 있어서, 상기 객체그룹갱신부는, 상기 설정조건 및 상기 상기 각각의 객체그룹의 상태 중 적어도 하나에 기반하여, 상기 각각의 객체그룹을 구성하는 객체의 연결을 변경 또는 해제할 수 있다. Also, in an embodiment, the object group update unit may change or release the connection of objects constituting the respective object groups based on at least one of the setting condition and the state of each of the object groups.

또한 실시예에 있어서, 상기 조건설정부는, 외부로부터 설정조건을 입력받는 조건입력부; 상기 입력되는 설정조건에 의한 처리시간의 증가 또는 감소 여부를 예상하는 조건결과예상부; 상기 예상되는 계산결과를 출력하는 조건결과출력부를 포함할 수 있다.In an embodiment, the condition setting unit includes: a condition input unit for receiving a setting condition from the outside; a condition result estimating unit for predicting whether the processing time is increased or decreased according to the input set condition; It may include a condition result output unit for outputting the expected calculation result.

또한 실시예에 있어서, 상기 객체그룹실행부는, 상기 각각의 객체에 대한 미리 설정된 우선순위 및 상기 각각의 객체에 대한 처리시간 중 적어도 하나를 고려하여 상기 각각의 객체그룹 중 어느 하나를 실행할 수 있다. Also, in an embodiment, the object group execution unit may execute any one of the respective object groups in consideration of at least one of a preset priority for each of the objects and a processing time for each of the objects.

상기한 목적을 달성하기 위한 본 발명의 실시예에 따른 기판처리장치는, 설정조건을 입력받는 조건설정부와, 상기 이송유닛에서 수행될 수 있는 동작들을 각각의 객체로 생성하는 객체생성부와, 상기 각각의 객체 중 상기 이송유닛의 연속된 동작에 대응되는 2이상의 실행 가능한 객체를 연결하여 각각의 객체그룹을 생성하는 객체그룹생성부와, 상기 각각의 객체의 상태를 판단하는 객체상태판단부와, 상기 객체그룹의 상태 및 상기 설정조건에 기반하여 객체그룹을 갱신하는 객체그룹갱신부와, 상기 각각의 객체그룹 중 어느 하나를 실행하는 객체그룹실행부를 포함하는 이송유닛제어부와, 복수의 모듈과, 상기 복수의 모듈로 기판을 이송하는 이송유닛제어부에 의해 제어되는 이송유닛을 포함한다.A substrate processing apparatus according to an embodiment of the present invention for achieving the above object comprises: a condition setting unit receiving a setting condition; an object generating unit generating operations that can be performed in the transfer unit as respective objects; An object group generating unit generating each object group by connecting two or more executable objects corresponding to the continuous operation of the transfer unit among the respective objects, an object state determining unit determining the state of each object; a transfer unit control unit including an object group update unit for updating an object group based on the state of the object group and the setting condition; and an object group execution unit for executing any one of the respective object groups; and a plurality of modules; , and a transfer unit controlled by a transfer unit control unit for transferring the substrate to the plurality of modules.

본 발명에 따른 이송유닛제어부는, 프로그램화된 이벤트 방식이 아닌, 연속된 객체가 그룹화된 객체그룹들 중 하나가 실행되는 방식을 이용하되, 조건설정부를 포함함으로써 사용자에 의한 객체그룹의 변경이 용이하다는 장점을 갖는다.The transfer unit control unit according to the present invention uses a method in which one of the object groups in which a continuous object is grouped is executed, not a programmed event method, but by including a condition setting unit, it is easy to change the object group by the user has the advantage of

또한, 본 발명에 따른 이송유닛제어부는, 갱신된 객체그룹 중 하나가 실행되는 방식을 이용함으로써, 대기시간을 감소시킬 수 있다. In addition, the transfer unit control unit according to the present invention can reduce the waiting time by using a method in which one of the updated object groups is executed.

도 1은 종래의 인덱스암 제어부가 인덱스암을 이벤트방식을 이용하여 기판이송을 제어하는 과정을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 기판처리장치의 예시도이다.
도 3은 본 발명의 실시예에 따른 이송유닛제어부의 구성을 간략히 도시한 도면이다.
도 4는 이송유닛제어부에 의해 생성된 객체그룹을 도시한 도면이다.
도 5는 도 3에 도시된 조건설정부의 구성을 간략히 도시한 도면이다.
1 is a diagram for explaining a process in which a conventional index arm controller controls substrate transfer using an index arm event method.
2 is an exemplary view of a substrate processing apparatus according to an embodiment of the present invention.
3 is a diagram schematically illustrating the configuration of a transfer unit control unit according to an embodiment of the present invention.
4 is a view showing an object group created by the transfer unit control unit.
FIG. 5 is a diagram schematically illustrating the configuration of the condition setting unit shown in FIG. 3 .

이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 더욱 상세히 설명한다. 본 발명의 실시 예는 여러 가지 형태로 변형될 수 있으며, 본 발명의 범위가 아래의 실시 예들로 한정되는 것으로 해석되어서는 안 된다. 본 실시예는 당업계에서 평균적인 지식을 가진 자에게 본 발명을 더욱 완전하게 설명하기 위해 제공되는 것이다. 따라서 도면에서의 요소의 형상은 보다 명확한 설명을 강조하기 위해 과장되었다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the accompanying drawings. Embodiments of the present invention may be modified in various forms, and the scope of the present invention should not be construed as being limited to the following embodiments. This example is provided to more completely explain the present invention to those of ordinary skill in the art. Accordingly, the shapes of elements in the drawings are exaggerated to emphasize a clearer description.

본 실시예의 설비는 반도체 웨이퍼 또는 평판 표시 패널과 같은 기판에 대해 공정을 진행하는 모든 설비에 적용될 수 있으며, 도 2에 도시된 기판처리장치에 한정되는 것은 아니다.The equipment of this embodiment may be applied to any equipment that performs a process on a substrate such as a semiconductor wafer or a flat panel display panel, and is not limited to the substrate processing apparatus illustrated in FIG. 2 .

이하 도 2를 참조하여 본 발명의 실시예에 따른 기판처리장치에 대해 알아본다.Hereinafter, a substrate processing apparatus according to an embodiment of the present invention will be described with reference to FIG. 2 .

도 2는 본 발명의 실시예에 따른 기판처리장치의 예시도이다.2 is an exemplary view of a substrate processing apparatus according to an embodiment of the present invention.

기판처리장치(10)는 인덱스부(100)와 공정처리부(200)를 포함한다.The substrate processing apparatus 10 includes an index unit 100 and a process processing unit 200 .

인덱스부(100)는 로드포트부(110)와 인덱스이송부(120)와 버퍼부(130)를 포함한다.The index unit 100 includes a load port unit 110 , an index transfer unit 120 , and a buffer unit 130 .

로드포트부(110)는 기판들이 수납된 카세트(C)가 안착되는 적어도 하나의 재치대(111)를 포함한다.The load port unit 110 includes at least one mounting table 111 on which the cassette C in which the substrates are accommodated is seated.

인덱스이송부(120)는 재치대(111)에 놓인 카세트(C)와 버퍼부(130) 간에 기판을 이송한다. The index transfer unit 120 transfers the substrate between the cassette C placed on the mounting table 111 and the buffer unit 130 .

인덱스이송부(120)는 제1 가이드레일(121)과 제1 이송유닛(122)을 포함한다. The index transfer unit 120 includes a first guide rail 121 and a first transfer unit 122 .

제1 이송유닛(122)은, 재치대(111)에 놓인 카세트(C)와 버퍼부(130) 간 기판을 이송한다. 제1 이송유닛(122)는 기판반송로봇일 수 있다. 제1 이송유닛(122)은 기판을 지지하는 포크를 복수개 포함할 수 있다. 복수개의 포크는 동시에 구동되거나 또는 개별적으로 구동될 수 있다. 제1 이송유닛(122)은 제1 이송유닛제어부(125)에 의해 제어된다. The first transfer unit 122 transfers the substrate between the cassette C placed on the mounting table 111 and the buffer unit 130 . The first transfer unit 122 may be a substrate transfer robot. The first transfer unit 122 may include a plurality of forks for supporting the substrate. The plurality of forks may be driven simultaneously or individually. The first transfer unit 122 is controlled by the first transfer unit control unit 125 .

버퍼부(130)는 인덱스부(100)와 공정처리부(200) 사이의 기판의 통로를 제공한다. 버퍼부(130)는 하나로 구성되거나 또는 입력버퍼부(131) 및 출력버퍼부(132)로 구성될 수 있다. 입력버퍼부(131)는 공정처리부(200)로 진행하는 기판이 대기하는 장소를 제공하는 유닛이고, 출력버퍼부(132)는 인덱스부(100)로 진행하는 기판이 대기하는 장소를 제공하는 유닛이다.The buffer unit 130 provides a passage for the substrate between the index unit 100 and the processing unit 200 . The buffer unit 130 may be composed of one or may be composed of an input buffer unit 131 and an output buffer unit 132 . The input buffer unit 131 is a unit that provides a place where the substrate proceeding to the process processing unit 200 waits, and the output buffer unit 132 is a unit that provides a place where the substrate proceeding to the index unit 100 waits. am.

공정처리부(200)은 적어도 하나의 공정처리모듈(210)과 공정처리이송부(220)를 포함한다.The processing unit 200 includes at least one processing module 210 and a processing transfer unit 220 .

적어도 하나의 공정처리모듈(210)은 해당 스텝의 레시피에 따라 기판을 공정처리한다. 이때 해당 스텝마다 공정처리 시간과 공정처리 방법은 서로 상이할 수 있다. 또한 적어도 하나의 공정처리모듈(210) 각각은 서로 다른 종류의 공정처리를 진행하는 모듈일 수 있고, 서로 같은 종류의 공정처리를 진행하는 모듈일 수 있다.The at least one processing module 210 processes the substrate according to the recipe of the corresponding step. In this case, the processing time and the processing method may be different for each corresponding step. In addition, each of the at least one process treatment module 210 may be a module that performs different types of process treatment, or may be a module that performs the same type of process treatment.

공정처리이송부(220)는 제2 가이드레일(221)과 제2 이송유닛(222)을 포함한다. 제2 이송유닛(222)은 기판반송로봇일 수 있다. 제2 이송유닛(222)은 기판을 지지하는 포크를 복수개 포함할 수 있다. 복수개의 포크는 동시에 구동되거나 또는 개별적으로 구동될 수 있다. 공정처리로봇(222)은 이송유닛제어부(225)에 의해 제어된다. 이때 제2 이송유닛제어부(225)는 공정처리로봇(222)을 제어한다. The process transfer unit 220 includes a second guide rail 221 and a second transfer unit 222 . The second transfer unit 222 may be a substrate transfer robot. The second transfer unit 222 may include a plurality of forks for supporting the substrate. The plurality of forks may be driven simultaneously or individually. The process processing robot 222 is controlled by the transfer unit control unit 225 . At this time, the second transfer unit control unit 225 controls the processing robot 222 .

이하 도 3 내지 도 5를 참조하여, 이송유닛제어부(1000)에 대해 상세히 알아본다.Hereinafter, with reference to FIGS. 3 to 5 , the transfer unit control unit 1000 will be described in detail.

도 3은 본 발명의 실시예에 따른 이송유닛제어부의 구성을 간략히 도시한 도면이고, 도 4는 이송유닛제어부에 의해 생성된 객체그룹을 도시한 도면이다.3 is a diagram schematically illustrating the configuration of a transfer unit control unit according to an embodiment of the present invention, and FIG. 4 is a diagram illustrating an object group created by the transfer unit control unit.

도 3에 도시된 이송유닛제어부(1000)는 도 2에 도시된 제1 이송유닛을 제어하는 제1 이송유닛제어부(125) 또는 제2 이송유닛을 제어하는 제2 이송유닛제어부(225)일 수 있다. 제1 이송유닛제어부(125) 및 제2 이송유닛제어부(225)은 하나로 결합될 수도 있다. 도 4는 도 2에 도시된 제1 이송유닛제어부에 의해 생성되는 객체그룹을 예로 들어 설명한다.The transfer unit control unit 1000 shown in FIG. 3 may be a first transfer unit control unit 125 for controlling the first transfer unit shown in FIG. 2 or a second transfer unit control unit 225 for controlling the second transfer unit. have. The first transfer unit control unit 125 and the second transfer unit control unit 225 may be combined into one. 4 is an example of the object group generated by the first transfer unit control unit shown in FIG. 2 will be described.

도 3을 참조하면, 이송유닛제어부(1000)는, 객체생성부(1100), 객체그룹생성부(1200), 객체상태판단부(1300), 조건설정부(1400), 객체그룹갱신부(1500), 객체그룹실행부(1600)을 포함한다.Referring to FIG. 3 , the transfer unit control unit 1000 includes an object generation unit 1100 , an object group generation unit 1200 , an object state determination unit 1300 , a condition setting unit 1400 , and an object group update unit 1500 . ), and an object group execution unit 1600 .

객체생성부(1100)는 이송유닛에서 수행될 수 있는 동작들을 각각의 객체로 생성하고, 객체그룹생성부(1200)는 연속된 2 이상의 객체를 각각의 객체그룹으로 생성한다. 그리고 객체상태판단부(1300)는 생성된 각각의 객체그룹의 상태를 판단하고, 조건설정부(1400)는 사용자로부터 설정조건을 입력받거나 또는 미리 설정된 조건을 갖는다. 그리고 객체그룹갱신부(1500)는 객체그룹의 상태 및 상기 설정조건에 기반하여 객체그룹을 갱신하고, 객체그룹실행부(1600)는 각각의 객체그룹 중 어느 하나를 실행한다.The object generating unit 1100 generates operations that can be performed in the transfer unit as each object, and the object group generating unit 1200 creates two or more consecutive objects as each object group. In addition, the object state determination unit 1300 determines the state of each created object group, and the condition setting unit 1400 receives a setting condition from the user or has a preset condition. The object group update unit 1500 updates the object group based on the state of the object group and the set condition, and the object group execution unit 1600 executes any one of each object group.

예를 들어 도 4를 참조하면, 객체생성부(1100)는 이송유닛에서 수행될 수 있는 동작들을 각각의 객체(ㅇ1, ㅇ2, ㅇ3,…로 생성한다. 객체생성부(1100)는 이송유닛이 수행할 수 있는 동작들인 Move LP1(Load Port 1)을 객체 ㅇ1로, Pick Arm1 LP1를 객체 ㅇ2로, Pick Arm2 LP1를 객체 ㅇ3로, Place Arm1 LP1를 객체 ㅇ4로, Place Arm2 LP1을 객체 ㅇ5로, Place Arm1 Buffer1-1을 객체 ㅇ6로, Place Arm2 Buffer1-2를 객체 ㅇ7으로, Pick Arm1 Buffer2-1을 객체 ㅇ8로, Pick Arm2 Buffer2-2을 객체 ㅇ9로 나타낼 수 있다. For example, referring to Fig. 4, the object generating unit 1100 generates operations that can be performed in the transfer unit as respective objects o1, o2, o3, .... The object generating unit 1100 is Actions that the transfer unit can perform Move LP1 (Load Port 1) to object ㅇ1, Pick Arm1 LP1 to object ㅇ2, Pick Arm2 LP1 to object ㅇ3, Place Arm1 LP1 to object ㅇ4, Place Arm2 LP1 into object o5, Place Arm1 Buffer1-1 into object o6, Place Arm2 Buffer1-2 into object o7, Pick Arm1 Buffer2-1 into object o8, Pick Arm2 Buffer2-2 into object o9 can be expressed as

객체그룹생성부(1200)는 생성된 각각의 객체 중 연속될 수 있는 동작에 대응되는 2이상의 실행 가능한 객체를 연결하여 각각의 객체그룹(G1, G2, G3,…을 생성한다. 객체그룹생성부(1200)는 연속된 객체를 연결하여 객체그룹을 생성하며, 연속되지 않은 객체를 연결하지는 않는다. 즉, 객체그룹생성부(1200)는 연속된 동작이 아닌 Pick Arm1 LP1(ㅇ2)을 직접 Pick Arm1 Buffer2-1(ㅇ8)과 연결시키지 않는다. 객체 ㅇ2가 실행되면 Arm1은 기판(W)을 가지고 있게 되므로, Buffer2-1에서 다른 기판(W)을 Pick할 수 없기 때문이다.The object group generation unit 1200 connects two or more executable objects corresponding to a continuous operation among the generated objects to create each object group G1, G2, G3, ... Object group generation unit 1200 connects consecutive objects to create an object group, and does not connect non-continuous objects, that is, the object group generator 1200 directly picks Pick Arm1 LP1 ( o 2 ) rather than continuous operation. Do not connect Arm1 with Buffer2-1 (ㅇ8), because when object ㅇ2 is executed, Arm1 has the board (W), so it is not possible to pick up another board (W) from Buffer2-1.

객체그룹생성부(1200)는 2이상의 객체를 연결하여 객체그룹을 생성하며, 하나의 객체그룹에 포함되는 객체의 수는 서로 상이할 수도 있고, 정해진 수로 생성될 수도 있다. The object group generator 1200 connects two or more objects to create an object group, and the number of objects included in one object group may be different from each other or may be created in a predetermined number.

예로 들어, 객체그룹생성부(1200)는 ㅇ1-ㅇ2-ㅇ6을 객체그룹 G1으로 설정하고, ㅇ1-ㅇ2-ㅇ3-ㅇ6-ㅇ7을 객체그룹 G2로 설정하고, ㅇ1-ㅇ3-ㅇ6을 객체그룹 G3로 설정하고, ㅇ1-ㅇ3-ㅇ7을 객체그룹 G4로 설정하고, ㅇ1-ㅇ4-ㅇ8을 객체그룹 G5으로 설정하고, ㅇ1-ㅇ5-ㅇ6를 객체그룹 G6 등으로 생성할 수 있다. 이외에도 객체그룹생성부(1200)는 시작점이 객체 ㅇ1이 아닌 다른 객체로부터 시작되는 객체들을 연결하여 객체그룹을 설정할 수도 있다. 또한 LP2(Loar Port2)에도 카세트가 올려진 경우라면, 객체그룹의 시작점은 객체 Move LP2(미도시)로부터도 시작되는 객체그룹을 생성할 수 있다. 그리고 객체그룹의 시작점은 LP1, LP2에 대응되는 객체가 아닌 특정 유닛, 예를 들어 Buffer2-1로부터 시작될 수도 있으며, 시작점이 다른 객체그룹들이 동시에 존재할 수 있다. Place Arm1 Buffer1-1 동작을 행하는 객체 ㅇ6를 객체그룹의 시작점으로 하는 다수의 객체그룹과 Move LP1 동작을 행하는 객체 ㅇ1을 객체그룹의 시작점으로 하는 다수의 객체그룹이 동시에 존재할 수도 있다. 또한, 연결선이 없는 부분에서도 연결될 수 있으며, 연결선의 화살표 방향이 반대방향 또는 양방향으로 생성될 수도 있다. 각각의 객체그룹을 구성하는 객체 수는 서로 동일할 수도 있지만, 상이할 수도 있다. For example, the object group generator 1200 sets ㅇ1-ㅇ2-ㅇ6 as object group G1, sets ㅇ1-ㅇ2-ㅇ3-ㅇ6-ㅇ7 as object group G2, and ㅇ Set 1-ㅇ3-ㅇ6 as object group G3, set ㅇ1-ㅇ3-ㅇ7 as object group G4, set ㅇ1-ㅇ4-ㅇ8 as object group G5, and set ㅇ1- ㅇ5-ㅇ6 can be created as object group G6, etc. In addition, the object group generating unit 1200 may establish an object group by connecting objects starting from an object other than the object o1 as the starting point. In addition, if the cassette is loaded on LP2 (Loar Port2), the object group can be created with the starting point of the object group starting from the object Move LP2 (not shown). In addition, the starting point of the object group may start from a specific unit, for example, Buffer2-1, not the object corresponding to LP1 or LP2, and object groups with different starting points may exist simultaneously. Place Arm1 Buffer1-1 Multiple object groups with object ㅇ6 as the starting point of the object group and multiple object groups with object ㅇ1 performing Move LP1 as the starting point of the object group may exist simultaneously. In addition, the connection line may be connected even in a portion where there is no connection line, and the arrow direction of the connection line may be generated in the opposite direction or in both directions. The number of objects constituting each object group may be the same or different.

객체상태판단부(1300)는 각각의 객체 상태를 판단한다. 객체의 상태는 객체의 실행가능 여부를 의미할 수 있다. 예를 들어, 객체가 실행 불가능한 경우는 객체의 대상 유닛에 알람이 발생하였거나, 또는 객체대상 유닛이 메인터넌스(maintanence) 모드로 변경되었거나, 조건설정부(1400)에 의해 조건에 의해 변경된 경우를 의미할 수 있다. The object state determination unit 1300 determines the state of each object. The state of the object may mean whether the object is executable or not. For example, when the object is not executable, it means that an alarm has occurred in the target unit of the object, or the target unit of the object is changed to maintenance mode, or is changed by the condition by the condition setting unit 1400. can

예를 들어, 객체의 대상 유닛은 객체 Move LP1(ㅇ1)-Pick Arm1 LP1(ㅇ2)-Place Arm1 Buffer1-1(ㅇ6)를 포함하는 객체그룹G1의 경우, Buffer1-1이 메인터넌스(maintanence) 모드로 변경된 경우라면, 객체 Place Arm1 Buffer1-1(ㅇ6)가 실행불가 상태인 것으로 판단할 수 있다. 또한 조건설정부(1400)에 의해 객체 Place Arm1 Buffer1-1(ㅇ6)가 제외되는 것으로 설정된 경우, 객체 Place Arm1 Buffer1-1(ㅇ6)는 실행불가 상태인 것으로 판단할 수 있다.For example, the target unit of the object is object Move LP1(ㅇ1)-Pick Arm1 LP1(ㅇ2)-Place Arm1 For object group G1 including Buffer1-1(ㅇ6), Buffer1-1 is maintenance (maintanence) ) mode, it can be determined that the object Place Arm1 Buffer1-1 (ㅇ6) is in an unexecutable state. In addition, when the object Place Arm1 Buffer1-1 ( o 6 ) is set to be excluded by the condition setting unit 1400 , it can be determined that the object Place Arm1 Buffer1-1 ( o 6 ) is in an unexecutable state.

객체상태판단부(1300)는 각 유닛에서 진행되는 각 객체에서의 처리가 완료될 때마다, 공정진행이 완료될 때마다 또는, 알람 발생할 때마다 또는, 주기적으로 객체상태를 판단할 수 있다. 객체상태의 판단결과는, 조건설정부(1400)에 설정된 조건과 함께, 객체그룹갱신부(1500)에서 객체그룹갱신의 판단근거가 된다.The object state determination unit 1300 may determine the object state whenever processing of each object in each unit is completed, whenever a process is completed, whenever an alarm occurs, or periodically. The determination result of the object state, together with the condition set in the condition setting unit 1400 , becomes the basis for determining the object group update in the object group update unit 1500 .

도 5는 조건설정부의 구성을 간략히 도시한 도면이다. 도 5를 참조하면, 조건설정부(1400)는, 사용자로부터 설정조건을 입력받는 조건입력부(1410)와, 입력되는 설정조건에 의한 처리시간의 증가 또는 감소 여부를 예상하는 조건결과예상부(1420)와, 예상되는 계산결과를 출력하는 조건결과출력부(1430)를 포함한다. 5 is a diagram schematically illustrating the configuration of a condition setting unit. Referring to FIG. 5 , the condition setting unit 1400 includes a condition input unit 1410 that receives a setting condition input from the user, and a condition result prediction unit 1420 that predicts whether the processing time is increased or decreased according to the input setting condition. ) and a condition result output unit 1430 for outputting an expected calculation result.

조건입력부(1410)는 미리 설정된 설정조건을 저장하고 있거나 또는 사용자에 의해 설정조건을 입력 받는다. 사용자에 의해 입력되는 설정조건은 유닛 또는 객체의 제외, 변경, 추가 여부일 수 있다. The condition input unit 1410 stores a preset condition or receives a set condition input by a user. The setting condition input by the user may be whether to exclude, change, or add a unit or object.

조건결과예상부(1420)는 사용자에 의해 입력되는 설정조건에 따른 처리시간의 증가 또는 감소 여부를 예상한다. 이때 각각의 객체에 대응되는 동작을 수행하는 데에 필요한 시간은 미리 측정되어 결정되며, 각 객체그룹의 시간은 각 객체에 동작을 수행하는 데에 필요한 시간의 합으로 나타낼 수 있다. The condition result prediction unit 1420 predicts whether the processing time is increased or decreased according to the set condition input by the user. In this case, the time required to perform the operation corresponding to each object is measured and determined in advance, and the time of each object group may be expressed as the sum of the time required to perform the operation on each object.

예를 들어, 조건입력부(1410)에 의해 입력된 조건이 객체 ㅇ7인 Place Arm2 Buffer1-2의 사용불가인 경우, 조건입력 전의 경우인 Buffer1-1 및 Buffer1-2로 기판(W)을 전달할 때 소모되는 제1 시간과 조건입력 후의 경우인 Buffer1-1로만 기판(W)을 전달할때 필요한 제2 시간을 계산하여, 제1 시간과 제2 시간의 차이를 계산하여 처리시간의 증가 또는 감소시간을 예상할 수 있다.For example, when the condition input by the condition input unit 1410 is unusable of Place Arm2 Buffer1-2, which is object ㅇ7, when transferring the substrate W to Buffer1-1 and Buffer1-2, which is the case before condition input By calculating the first time consumed and the second time required to transfer the substrate W only to Buffer1-1, which is the case after condition input, the difference between the first time and the second time is calculated to increase or decrease the processing time. It can be expected.

한편, 조건입력부(1410)에 입력되는 설정조건에는 각 객체에 대한 우선순위가 포함될 수 있다. 특히 미세공정에서는 특정유닛 내 대기시간이 일정시간 이상이 되는 경우, 공정불량이 발생할 수 있다. 따라서 객체그룹들 중 처리시간이 긴 객체그룹이라고 하더라도 우선순위가 높은 객체그룹을 우선적으로 실행함으로써 공정불량을 방지할 수 있다.Meanwhile, the setting condition input to the condition input unit 1410 may include a priority for each object. In particular, in microprocessing, when the waiting time in a specific unit exceeds a certain time, process defects may occur. Therefore, even if it is an object group with a long processing time among object groups, process defects can be prevented by executing the object group with high priority first.

조건표시부(1430)는 조건입력 결과를 사용자에게 표시하여 사용자가 조건입력 시 그에 따른 결과를 인지하게 할 수 있다. The condition display unit 1430 may display the condition input result to the user so that the user can recognize the result when the condition is input.

이에 따라, 사용자로부터 조건입력부(1410)에 조건이 입력하는 경우, 조건입력 결과에 따른 공정처리시간의 증가 또는 감소 여부가 조건결과예상부(1420)에 의해 계산되며, 사용자에게 계산결과를 출력하여 인지하게 할 수 있다. Accordingly, when a condition is input to the condition input unit 1410 from the user, whether the process processing time is increased or decreased according to the condition input result is calculated by the condition result prediction unit 1420, and the calculation result is output to the user. can make you aware

종래 이벤트 방식에 따른 제어방법은 이송유닛제어부 내에 프로그램으로 저장되어 있어 이송유닛의 상세동작에 대한 사용자에 의한 변경은 용이하지 않다는 문제가 존재한다. 하지만, 본 발명의 실시예에 따른 이송유닛제어부(1000)에 따르면, 프로그램화된 이벤트 방식이 아닌 연속된 객체를 그룹화한 객체그룹을 기반으로 실행되며, 조건설정부를 포함함으로써 사용자에 의한 객체그룹의 생성, 해제 등의 변경이 용이하다는 장점을 갖는다.Since the control method according to the conventional event method is stored as a program in the transfer unit control unit, there is a problem in that it is not easy for the user to change the detailed operation of the transfer unit. However, according to the transfer unit control unit 1000 according to the embodiment of the present invention, it is executed based on an object group grouping consecutive objects rather than a programmed event method, and by including a condition setting unit, the object group by the user is It has the advantage of being easy to change, such as creation and cancellation.

특히, 특정유닛의 상태가 정상적인 구동상태이지만 점검이 필요한 상태인 경우, 특정유닛으로의 기판 입력을 차단할 때 또는, 새로운 공정 레시피의 설정에 따라 변경이 필요한 경우에 용이하다.In particular, it is easy when the state of a specific unit is a normal driving state but requires inspection, when a substrate input to a specific unit is blocked, or when a change is required according to the setting of a new process recipe.

객체그룹갱신부(1500)는 상기 객체그룹의 상태을 기반으로 또는 설정조건부(1400)로부터 설정된 설정조건에 기반하여 객체그룹을 갱신한다. 구체적으로 객체상태판단부에 의해 판단되는 객체(ㅇ1, ㅇ2, ㅇ3, …)의 객체상태 또는 설정조건부(1400)에서 설정된 설정조건을 기반으로 객체그룹갱신부(1500)는 객체그룹을 해제, 생성, 또는 변경한다.The object group update unit 1500 updates the object group based on the state of the object group or based on the setting condition set by the setting condition unit 1400 . Specifically, based on the object state of the object ( o1, o2, o3, ...) determined by the object state determining unit or the setting condition set in the setting condition unit 1400, the object group update unit 1500 selects the object group. Release, create, or modify.

예를 들어, Place Arm2 Buffer1-2동작인 ㅇ7 객체가 수행불가한 경우, 객체그룹갱신부(1500)는 점선으로 표시된 ㅇ7 객체를 포함하는 객체그룹인, 객체ㅇ1-ㅇ2-ㅇ3-ㅇ6-ㅇ7을 포함하는 객체그룹G2와, 객체ㅇ1-ㅇ3-ㅇ7을 포함하는 객체그룹 G4를 해제할 수 있다. 객체그룹실행부(1600)는 G2, G4를 제외한 객체그룹 중 각 객체그룹을 실행하는 데 필요한 처리시간 또는 각 객체의 우선순위를 고려하여 객체그룹을 선택하여 실행할 수 있다. For example, if the o7 object, which is the Place Arm2 Buffer1-2 action, cannot be performed, the object group update unit 1500 is an object group including the o7 object indicated by a dotted line, object ㅇ1-ㅇ2-ㅇ3 Object group G2 including -ㅇ6-ㅇ7 and object group G4 including object ㅇ1-ㅇ3-ㅇ7 can be released. The object group execution unit 1600 may select and execute an object group in consideration of the processing time required to execute each object group or the priority of each object among object groups except for G2 and G4.

객체그룹실행부(1600)는 우선순위를 고려하여 객체그룹을 선택하여 실행하며, 우선순위가 같은 객체그룹들 중 처리시간이 적은 객체그룹을 선택하여 실행할 수 있다. 예를 들어 액처리 유닛에서 액처리된 기판은 베이크 유닛에서 빠른 처리를 요하는 경우, 액처리 유닛에서 베이크 유닛으로의 기판 이송에 대응되는 객체(미도시)는 높은 우선순위를 갖게 되고, 그 외의 경우에 대응되는 객체의 경우는 낮은 우선순위를 갖게 될 수 있다. 높은 우선순위를 갖는 객체를 포함하는 객체그룹의 경우 우선 실행될 수 있다. 우선순위가 같은 경우, 객체그룹실행부(1600)는 처리시간이 적은 순서로 객체그룹을 실행할 수 있다. 객체그룹실행부(1600)가 처리시간을 근거로 객체그룹을 선택하여 실행하는 경우, 각 객체그룹을 실행하는데 필요한 처리시간은 각 객체그룹의 동일한 객체수를 기반으로 계산될 수 있다. 상술한 예에서, G2를 제외하고는 각 객체그룹은 3개의 객체를 포함한다. 이때 ㅇ1-ㅇ2-ㅇ3-ㅇ6-ㅇ7으로 구성되는 객체그룹인 G2를 실행하는데 필요한 처리시간은 ㅇ1-ㅇ2-ㅇ3을 실행하는 처리시간으로 계산되어 질 수 있다. 이외에도 공지된 계산방법을 이용할 수도 있다. The object group execution unit 1600 selects and executes an object group in consideration of the priority, and may select and execute an object group having a short processing time among object groups having the same priority. For example, when a substrate liquid-processed in the liquid processing unit requires rapid processing in the bake unit, an object (not shown) corresponding to the transfer of the substrate from the liquid processing unit to the bake unit has a high priority, and other The object corresponding to the case may have a lower priority. In the case of an object group including an object having a high priority, it may be executed first. When the priorities are the same, the object group execution unit 1600 may execute the object groups in the order of the smallest processing time. When the object group execution unit 1600 selects and executes an object group based on the processing time, the processing time required to execute each object group may be calculated based on the same number of objects in each object group. In the above example, except for G2, each object group includes three objects. In this case, the processing time required to execute G2, which is an object group composed of ㅇ1-ㅇ2-ㅇ3-ㅇ6-ㅇ7, can be calculated as the processing time for executing ㅇ1-ㅇ2-ㅇ3. In addition, a known calculation method may be used.

종래의 이벤트 방식에 의하면, Buffer1-2에 기판이 놓여져 있어 Place Arm2 Buffer1-2 동작이 수행불가한 경우에도 이송유닛은 LP1에서 Pick Arm2 동작을 수행할 수 있다. 이 경우, buffer1-2에 기판이 빠져나갈때 까지 Arm2가 점유되므로, 다른 동작을 할 수 없어 대기시간이 발생하여 처리시간 손실이 발생할 수 있다. 하지만 본 발명에 따르면, 연속된 2이상의 객체를 객체그룹화한 후, 객체그룹갱신부(1500)에 의해 객체그룹들을 갱신하여 실행가능한 객체그룹을 실행함으로써써 상기와 같은 문제를 방지할 수 있다. According to the conventional event method, even when the Place Arm2 Buffer1-2 operation cannot be performed because the substrate is placed on Buffer1-2, the transfer unit can perform the Pick Arm2 operation on LP1. In this case, since Arm2 is occupied until the substrate is removed from buffer1-2, other operations cannot be performed, resulting in waiting time and processing time loss. However, according to the present invention, after object grouping of two or more consecutive objects, the object group update unit 1500 updates the object groups to execute the executable object group, thereby preventing the above problem.

이때 객체그룹실행부(1600)는 우선순위가 높은 객체를 포함하는 객체그룹을 선택하여 실행하거나 또는, 처리시간 또는 대기시간이 짧은 객체그룹을 선택하여 실행할 수 있다. In this case, the object group execution unit 1600 may select and execute an object group including an object having a high priority, or may select and execute an object group having a short processing time or a short waiting time.

본 발명에 따른 이송유닛제어부에 의한 제어방법은 컴퓨터 프로그램 상으로 실행될 수 있다. 즉, 기판처리장치를 관리하는 메인 컴퓨터의 CPU를 이용하여 메모리에 저장된 제어방법을 실행할 수 있다.The control method by the transfer unit control unit according to the present invention may be executed on a computer program. That is, the control method stored in the memory can be executed using the CPU of the main computer that manages the substrate processing apparatus.

특히, 이송유닛이 복수개인 경우, 이송유닛제어부1의 객체그룹들과, 이송유닛제어부2의 객체그룹을 고려하여 우선순위가 높거나 또는 처리시간 또는 대기시간이 짧은 순서로 객체그룹을 선택하여 실행할 수 있다. In particular, when there are a plurality of transfer units, the object groups of the transfer unit controller 1 and the object groups of the transfer unit controller 2 are selected and executed by selecting the object groups in the order of high priority or short processing time or waiting time. can

본 발명에 따른 이송유닛제어부는, 프로그램화된 이벤트 방식이 아닌, 연속된 객체가 그룹화된 객체그룹들 중 하나가 실행되는 방식을 이용하되, 조건설정부를 포함함으로써 사용자에 의한 객체그룹의 변경이 용이하다는 장점을 갖는다.The transfer unit control unit according to the present invention uses a method in which one of the object groups in which a continuous object is grouped is executed, not a programmed event method, but by including a condition setting unit, it is easy to change the object group by the user has the advantage of

또한, 본 발명에 따른 이송유닛제어부는, 갱신된 객체그룹 중 하나가 실행되는 방식을 이용함으로써, 대기시간을 감소시킬 수 있다. In addition, the transfer unit control unit according to the present invention can reduce the waiting time by using a method in which one of the updated object groups is executed.

본 발명의 실시 형태에 대하여 설명하였지만, 상술한 발명의 실시 형태는, 본 발명의 이해를 용이하게 하기 위한 것이고, 본 발명을 한정하는 것은 아니다. 본 발명은 그 취지를 일탈하지 않고, 변경, 개량될 수 있음과 함께, 본 발명에는 그 등가물이 포함되는 것은 물론이다. 또한, 상술한 과제의 적어도 일부를 해결할 수 있는 범위, 또는, 효과의 적어도 일부를 발휘하는 범위에서, 특허 청구 범위 및 명세서에 기재된 각 구성 요소의 임의의 조합, 또는 생략이 가능하다.Although the embodiment of the present invention has been described, the above-described embodiment of the present invention is for facilitating the understanding of the present invention and does not limit the present invention. It goes without saying that the present invention can be modified and improved without departing from the spirit thereof, and that equivalents thereof are included in the present invention. In addition, within the range which can solve at least a part of the above-mentioned subject, or the range which exhibits at least a part of an effect, arbitrary combinations or omission of each component described in a claim and the specification are possible.

10: 기판처리장치 100: 인덱스부
110: 로드포트부 120: 인덱스이송부
121: 제1 가이드레일 122: 제1 이송유닛
125: 제1 이송유닛제어부 130: 버퍼부
200: 공정처리부 210: 공정처리모듈
220: 공정처리이송부 221: 제1 가이드레일
222: 제2 이송유닛 225: 제2 이송유닛제어부
1000: 이송유닛제어부 1100: 객체생성부
1200: 객체그룹생성부 1300: 객체상태판단부
1400: 조건설정부 1500: 객체그룹갱신부
1600: 객체그룹실행부
10: substrate processing apparatus 100: index unit
110: load port unit 120: index transfer unit
121: first guide rail 122: first transfer unit
125: first transfer unit control unit 130: buffer unit
200: process processing unit 210: process processing module
220: process transfer unit 221: first guide rail
222: second transfer unit 225: second transfer unit control unit
1000: transfer unit control unit 1100: object generation unit
1200: object group generation unit 1300: object state determination unit
1400: condition setting unit 1500: object group update unit
1600: object group execution unit

Claims (5)

복수의 모듈로 기판을 이송하는 이송유닛의 동작을 제어하는 이송유닛제어부에 있어서,
상기 이송유닛제어부는,
상기 이송유닛에서 수행될 수 있는 동작들을 각각의 객체로 생성하는 객체생성부와,
상기 각각의 객체 중 상기 이송유닛의 연속된 동작에 대응되는 2이상의 실행 가능한 객체를 연결하여 각각의 객체그룹을 생성하는 객체그룹생성부와,
상기 각각의 객체의 상태를 판단하는 객체상태판단부와,
설정조건을 입력받는 조건설정부와,
상기 객체그룹의 상태 및 상기 설정조건에 기반하여 객체그룹을 갱신하는 객체그룹갱신부와,
상기 각각의 객체그룹 중 어느 하나를 실행하는 객체그룹실행부를 포함하고,
상기 조건설정부는,
외부로부터 각각의 객체에 대한 우선순위를 포함하는 설정조건을 입력받는 조건입력부;
상기 입력되는 설정조건에 의한 처리시간의 증가 또는 감소 여부를 예상하는 조건결과예상부; 및
상기 예상되는 계산결과를 출력하는 조건결과출력부를 포함하고,
상기 객체그룹실행부는, 상기 각각의 객체에 대해 설정된 우선순위 및 상기 각각의 객체에 대한 처리시간을 고려하여 상기 각각의 객체그룹 중 어느 하나를 실행하되, 우선순위가 높은 객체를 포함하는 객체그룹을 우선 실행하고,
상기 우선순위는, 이송지연에 의해 공정불량을 발생시킬 수 있는 특정 유닛에 관련된 객체에 대해 높게 설정되는 것을 특징으로 하는 이송유닛제어부.
In the transfer unit control unit for controlling the operation of the transfer unit for transferring the substrate to a plurality of modules,
The transfer unit control unit,
An object generating unit for generating the operations that can be performed in the transfer unit as each object;
an object group generating unit for creating each object group by connecting two or more executable objects corresponding to the continuous operation of the transfer unit among the respective objects;
an object state determination unit for determining the state of each object;
a condition setting unit that receives setting conditions;
an object group update unit for updating an object group based on the state of the object group and the set condition;
an object group execution unit executing any one of the respective object groups;
The condition setting unit,
a condition input unit for receiving a setting condition including a priority for each object from the outside;
a condition result estimating unit for predicting whether the processing time is increased or decreased according to the input set condition; and
and a condition result output unit for outputting the expected calculation result,
The object group execution unit executes any one of the respective object groups in consideration of the priority set for each of the objects and the processing time for each of the objects, the object group including the high-priority object run first,
The priority is a transfer unit control unit, characterized in that set high for an object related to a specific unit that may cause a process defect due to transfer delay.
제1항에 있어서,
상기 객체그룹갱신부는,
상기 설정조건 및 상기 각각의 객체그룹의 상태 중 적어도 하나에 기반하여, 상기 각각의 객체그룹을 구성하는 객체의 연결을 변경 또는 해제하는 것을 특징으로 하는 이송유닛제어부.
According to claim 1,
The object group update unit,
Based on at least one of the setting condition and the state of each object group, the transfer unit control unit, characterized in that for changing or releasing the connection of the objects constituting the respective object groups.
삭제delete 삭제delete 복수의 모듈;
복수의 모듈로 기판을 이송하는 이송유닛; 및
상기 이송유닛을 제어하는 이송유닛제어부를 포함하고,
상기 이송유닛제어부는,
상기 이송유닛에서 수행될 수 있는 동작들을 각각의 객체로 생성하는 객체생성부와,
상기 각각의 객체 중 상기 이송유닛의 연속된 동작에 대응되는 2이상의 실행 가능한 객체를 연결하여 각각의 객체그룹을 생성하는 객체그룹생성부와,
상기 각각의 객체의 상태를 판단하는 객체상태판단부와,
상기 각각의 객체에 대한 우선순위를 포함하는 설정조건을 입력받는 조건설정부와,
상기 객체그룹의 상태 및 상기 설정조건에 기반하여 객체그룹을 갱신하는 객체그룹갱신부와,
상기 각각의 객체그룹 중 어느 하나를 실행하는 객체그룹실행부를 포함하고,
상기 조건설정부는,
외부로부터 각각의 객체에 대한 우선순위를 포함하는 설정조건을 입력받는 조건입력부;
상기 입력되는 설정조건에 의한 처리시간의 증가 또는 감소 여부를 예상하는 조건결과예상부; 및
상기 예상되는 계산결과를 출력하는 조건결과출력부를 포함하고,
상기 객체그룹실행부는, 상기 각각의 객체에 대해 설정된 우선순위 및 상기 각각의 객체에 대한 처리시간을 고려하여 상기 각각의 객체그룹 중 어느 하나를 실행하되, 우선순위가 높은 객체를 포함하는 객체그룹을 우선 실행하고,
상기 우선순위는, 이송지연에 의해 공정불량을 발생시킬 수 있는 특정 유닛에 관련된 객체에 대해 높게 설정되는 것을 특징으로 하는 기판처리장치.
a plurality of modules;
a transfer unit for transferring the substrate to a plurality of modules; and
It includes a transfer unit control unit for controlling the transfer unit,
The transfer unit control unit,
An object generating unit for generating the operations that can be performed in the transfer unit as each object;
an object group generating unit for creating each object group by connecting two or more executable objects corresponding to the continuous operation of the transfer unit among the respective objects;
an object state determination unit for determining the state of each object;
a condition setting unit for receiving a setting condition including a priority for each object;
an object group update unit for updating an object group based on the state of the object group and the set condition;
an object group execution unit executing any one of the respective object groups;
The condition setting unit,
a condition input unit for receiving a setting condition including a priority for each object from the outside;
a condition result estimating unit for predicting whether the processing time is increased or decreased according to the input set condition; and
and a condition result output unit for outputting the expected calculation result,
The object group execution unit executes any one of the respective object groups in consideration of the priority set for each object and the processing time for each object, the object group including the high-priority object run first,
The priority is set high for an object related to a specific unit that may cause a process defect due to a transfer delay.
KR1020180169342A 2018-12-26 2018-12-26 A transfer unit controller and a substrate processing apparatus KR102315878B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180169342A KR102315878B1 (en) 2018-12-26 2018-12-26 A transfer unit controller and a substrate processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180169342A KR102315878B1 (en) 2018-12-26 2018-12-26 A transfer unit controller and a substrate processing apparatus

Publications (2)

Publication Number Publication Date
KR20200079789A KR20200079789A (en) 2020-07-06
KR102315878B1 true KR102315878B1 (en) 2021-10-21

Family

ID=71571487

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180169342A KR102315878B1 (en) 2018-12-26 2018-12-26 A transfer unit controller and a substrate processing apparatus

Country Status (1)

Country Link
KR (1) KR102315878B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322762A (en) 2004-05-10 2005-11-17 Hitachi Kokusai Electric Inc Substrate processing apparatus

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3592861B2 (en) * 1996-10-23 2004-11-24 大日本スクリーン製造株式会社 Substrate processing equipment
JP6178791B2 (en) * 2011-09-02 2017-08-09 ブルックス オートメーション インコーポレイテッド Time-optimal trajectory of robot transfer device
JP6002532B2 (en) * 2012-10-10 2016-10-05 株式会社日立ハイテクノロジーズ Vacuum processing apparatus and vacuum processing method
KR20180005843A (en) * 2016-07-07 2018-01-17 인베니아 주식회사 Substrate processing apparatus and scheduling method of the said

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322762A (en) 2004-05-10 2005-11-17 Hitachi Kokusai Electric Inc Substrate processing apparatus

Also Published As

Publication number Publication date
KR20200079789A (en) 2020-07-06

Similar Documents

Publication Publication Date Title
US11308453B2 (en) Method and system for scheduling pieces of materials based on real-time device status
US5841677A (en) Method and apparatus for dispatching lots in a factory
KR100689125B1 (en) Method and system for dispatching semiconductor lots to manufacturing equipment for fabrication
US5696689A (en) Dispatch and conveyer control system for a production control system of a semiconductor substrate
JP4908304B2 (en) Substrate processing method, substrate processing system, and computer-readable storage medium
EP2733558A1 (en) Processing indicating device, processing indicating method, computer program and processing device
KR19980086695A (en) Process control system and its process data transmission control method
KR102315878B1 (en) A transfer unit controller and a substrate processing apparatus
JP4845553B2 (en) Substrate processing apparatus schedule execution method and program thereof
JP6279343B2 (en) Substrate processing apparatus, program, and substrate processing method
JPH0950948A (en) System coping with failure of semiconductor manufacturing apparatus
JP5352390B2 (en) Substrate processing apparatus schedule creation method and program thereof
JP3934275B2 (en) Substrate processing apparatus, simulation apparatus for substrate processing apparatus, and computer-readable recording medium recording simulation program for substrate processing apparatus
JP6373143B2 (en) Substrate processing apparatus, control method, and computer program
JP2010251507A (en) System and method for control of semiconductor manufacturing apparatus
JP5125918B2 (en) Transport system, vehicle allocation management device, and computer program
JP7548666B2 (en) Semiconductor manufacturing equipment, substrate transport method and program
KR20070037901A (en) Semiconductor manufacturing equipment and method for scheduling thereof
JP6611647B2 (en) Substrate production management device, substrate production device, and substrate production line
JP5189534B2 (en) Substrate processing apparatus schedule creation method and program thereof
JP5829073B2 (en) Control apparatus and method
JPH0956068A (en) Method and device for controlling operation of a plurality of power using systems
JP5432654B2 (en) Substrate processing apparatus schedule creation method and program thereof
US20210011763A1 (en) Substrate processing device and determination method
KR100223961B1 (en) Accumulation control system and method in the semiconductor manufacture

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right