Apparatus and method for web-based tool management
First Claim
1. A tool management method executed by a tool server apparatus coupled with a remote client system via a first network and coupled with a plurality of tools via a second network, each of the plurality of tools being physical tools used in a factory for transporting or processing semiconductor wafers, comprising:
- receiving a first request from the remote client system via the first network, the first request containing a uniform resource locator path including a function field and an object field, the object field and the function field identifying a tool object model for an identified tool, the tool object model providing a logical description for use in an automatic control environment of the factory and associated with the plurality of tools;
determining a function to be performed on the tool identified in said object field in said uniform resource locator path based on said function field in said uniform resource locator path;
in response to said first request, sending a first message to the tool identified in the object field in the uniform resource locator path via the second network, said first message is operable for initiating processing on the tool identified in the object field in the uniform resource locator path;
awaiting an initiate processing acknowledge from the tool;
upon receipt of said initiate processing acknowledge from the tool, awaiting an event report from the tool indicating completion of the action;
upon receipt of the event report, sending a message to the tool acknowledging the receipt of the event report; and
wherein the logical description provided by the tool object model enables the initiation of the processing and determination of physical parameters of the identified tool to determine when to initiate the processing;
wherein the sending of said first message is in response to execution of a first tool object method identified in said first request;
receiving a second request from the remote client system via the first network, said second request selected from the group consisting of information requests, expand requests and edit requests, wherein,in response to said information requests, an HTML page is generated using a set of selected data for a tool object corresponding to a managed tool for sending to the remote client system,in response to said edit request, an HTML page is generated having a portion operable for user entry of one or more values for modifying a tool object attribute for sending to the remote client system according to a second tool object method, andin response to said expand requests, an HTML page is generated using a set of child object names and relations to a parent object identified in said expand request for sending to the remote client system;
overriding said first or second tool object method;
wherein said overriding said first or second tool object method comprises;
parsing a script source;
determining if said script source includes a method signature matching a method signature of said first or second tool object method; and
if so, executing a corresponding portion of said script source.
8 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for web-based tool management are implemented. A tool object model provides a logical representation of the physical tool. The tool object model defines a hierarchical set of tool objects that characterize the tool, and additionally a set of method for performing actions on the tool objects. These actions also correspond to operations, which may include reporting as well as processing tasks, performed by the tool. A user may remotely control and monitor a tool using a conventional web browser. For example, a user may execute methods of the tool object model, or obtain detailed information about a tool object. User actions are passed to a server by embedding them in hypertext transfer protocol (HTTP) requests. The server receives the HTTP request, and passes the request to a corresponding page server in accordance with the action requested. Depending on the action requested, the page server may generate a web page in response, or may invoke a method of the tool object model.
93 Citations
29 Claims
-
1. A tool management method executed by a tool server apparatus coupled with a remote client system via a first network and coupled with a plurality of tools via a second network, each of the plurality of tools being physical tools used in a factory for transporting or processing semiconductor wafers, comprising:
-
receiving a first request from the remote client system via the first network, the first request containing a uniform resource locator path including a function field and an object field, the object field and the function field identifying a tool object model for an identified tool, the tool object model providing a logical description for use in an automatic control environment of the factory and associated with the plurality of tools; determining a function to be performed on the tool identified in said object field in said uniform resource locator path based on said function field in said uniform resource locator path; in response to said first request, sending a first message to the tool identified in the object field in the uniform resource locator path via the second network, said first message is operable for initiating processing on the tool identified in the object field in the uniform resource locator path; awaiting an initiate processing acknowledge from the tool; upon receipt of said initiate processing acknowledge from the tool, awaiting an event report from the tool indicating completion of the action; upon receipt of the event report, sending a message to the tool acknowledging the receipt of the event report; and wherein the logical description provided by the tool object model enables the initiation of the processing and determination of physical parameters of the identified tool to determine when to initiate the processing; wherein the sending of said first message is in response to execution of a first tool object method identified in said first request; receiving a second request from the remote client system via the first network, said second request selected from the group consisting of information requests, expand requests and edit requests, wherein, in response to said information requests, an HTML page is generated using a set of selected data for a tool object corresponding to a managed tool for sending to the remote client system, in response to said edit request, an HTML page is generated having a portion operable for user entry of one or more values for modifying a tool object attribute for sending to the remote client system according to a second tool object method, and in response to said expand requests, an HTML page is generated using a set of child object names and relations to a parent object identified in said expand request for sending to the remote client system; overriding said first or second tool object method; wherein said overriding said first or second tool object method comprises; parsing a script source; determining if said script source includes a method signature matching a method signature of said first or second tool object method; and
if so, executing a corresponding portion of said script source. - View Dependent Claims (2, 3, 4, 5, 6, 7, 14, 15, 19, 21, 22, 23, 27)
-
-
8. A data processing system comprising:
-
circuitry on a tool server, coupled with a remote client system via a first network and coupled with a plurality of tools via a second network, each of the plurality of tools being physical tools used in a factory for transporting or processing semiconductor wafers, configured to receive a first request from the remote client system via the first network, the first request containing a uniform resource locator path including a function field and an object field; the object field and the function field identifying a tool object model for an identified tool, the tool object model providing a logical description for use in an automatic control environment of the factory and associated with the plurality of tools; said circuitry configured to determine a function to be performed on the tool identified in said object field in said uniform resource locator path based on said function field contained in said uniform resource locator path; and said circuitry configured to send a first message to said tool identified in said object field in said uniform resource locator path via the second network in response to said first request, wherein said first message is operable for initiating processing on said tool identified in said object field in said uniform resource locator path; said circuitry configured to await an initiate processing acknowledge from the tool; and said circuitry configured to await an event report from the tool indicating completion of the action upon receipt of said initiate processing acknowledge from the tool; upon receipt of the event report, said circuitry configured to send a message to the tool acknowledging the receipt of the event report; wherein the logical description provided by the tool object model enables the initiation of the processing and determination of physical parameters of the identified tool to determine when to initiate the processing; wherein the sending of said first message is in response to execution of a first tool object method identified in said first request; circuitry operable for receiving a second request from the remote client system via the first network, said second request selected from the group consisting of information requests, expand requests and edit requests, wherein, in response to said information requests, an HTML page is generated using a set of selected data for a tool object corresponding to a managed tool for sending to the remote client system, in response to said edit requests, an HTML page is generated having a portion operable for user entry of one or more values for modifying a tool object attribute for sending to the remote client system according to a second tool object method, and in response to said expand requests, an HTML page is generated using a set of child object names and relations to a parent object identified in said expand request for sending the remote client system; circuitry operable for overriding said first or second tool object method; wherein said circuitry operable for overriding said first or second tool object method comprises; circuitry operable for parsing a script source; circuitry operable for determining if said script source includes a method signature matching a method signature of said first or second tool object method; and circuitry operable for executing a corresponding portion of said script source, if so. - View Dependent Claims (9, 10, 11, 12, 13, 16, 17, 18, 20, 24, 25, 26, 28)
-
-
29. A tool management method executed by a tool server apparatus coupled with a remote client system via a first network and coupled with a plurality of tools via a second network, each of the plurality of tools being physical tools used in a factory for transporting or processing semiconductor wafers, comprising:
-
receiving a first request from the remote client system via the first network, the first request containing a uniform resource locator path including a function field and an object field, the object field and the function field identifying a tool object model for an identified tool, the tool object model providing a logical description for use in an automatic control environment of the factory and associated with the plurality of tools; determining a function to be performed on the tool identified in said object field in said uniform resource locator path based on said function field in said uniform resource locator path; in response to said first request, invoking a remote processing control method, the remote processing control method sending a first message to the tool identified in the object field in the uniform resource locator path via the second network, said first message is operable for initiating processing on the tool identified in the object field in the uniform resource locator path; the remote processing control method awaiting an initiate processing acknowledge from the tool; upon receipt of said initiate processing acknowledge from the tool, the remote processing control method awaiting an event report from the tool indicating completion of the action; upon receipt of the event report, sending a message to the tool acknowledging the receipt of the event report; and wherein the logical description provided by the tool object model enables the initiation of the processing and determination of physical parameters of the identified tool to determine when to initiate the processing; receiving a second request from the remote client system via the first network, said second request selected from the group consisting of information requests, expand requests and edit requests, wherein, in response to said information requests, an HTML page is generated using a set of selected data for a tool object corresponding to a managed tool for sending to the remote client system, in response to said edit request, an HTML page is generated having a portion operable for user entry of one or more values for modifying a tool object attribute for sending to the remote client system, and in response to said expand requests, an HTML page is generated using a set of child object names and relations to a parent object identified in said expand request for sending to the remote client system; performing an override process for objects of the tool object model, the override process including;
parsing a script override attribute of a given object of the tool object model, the script override attribute containing a script source, determining if the script source contains a method having a matching signature as a default method associated with the object, and if a matching signature is found, then indicating that the default method has been overridden in an override registry list.
-
Specification