[go: up one dir, main page]

JP2009081372A - シミュレータ、シミュレーションシステムおよびプログラム - Google Patents

シミュレータ、シミュレーションシステムおよびプログラム Download PDF

Info

Publication number
JP2009081372A
JP2009081372A JP2007251055A JP2007251055A JP2009081372A JP 2009081372 A JP2009081372 A JP 2009081372A JP 2007251055 A JP2007251055 A JP 2007251055A JP 2007251055 A JP2007251055 A JP 2007251055A JP 2009081372 A JP2009081372 A JP 2009081372A
Authority
JP
Japan
Prior art keywords
unit
simulation
information
processing apparatus
substrate processing
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP2007251055A
Other languages
English (en)
Inventor
Koichi Matsuda
浩一 松田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dainippon Screen Manufacturing Co Ltd
Original Assignee
Dainippon Screen Manufacturing Co Ltd
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 Dainippon Screen Manufacturing Co Ltd filed Critical Dainippon Screen Manufacturing Co Ltd
Priority to JP2007251055A priority Critical patent/JP2009081372A/ja
Publication of JP2009081372A publication Critical patent/JP2009081372A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】基板処理装置の試験に要する負担を軽減する。
【解決手段】シミュレーションシステム1に、基板処理装置の制御ユニットの機能を有するコンピュータ4と、コンピュータ4にネットワーク9を介して接続されるシミュレータ2とを設ける。また、シミュレータ2にユニット模擬装置20とインタフェース模擬装置30とを設ける。さらに、シミュレータ2のインタフェース模擬装置30に基板処理装置を構成する実装処理ユニット14mを接続する。基板処理装置を構成する実装処理ユニットのうちインタフェース模擬装置30に接続されていない実装処理ユニットについては、その動作をシミュレータ2のユニット模擬装置20によって模擬する。
【選択図】図2

Description

本発明は、基板処理装置を試験する技術に関する。
半導体デバイスの製造工程においては、半導体デバイスの元となる半導体ウエハ(以下、基板と称する)に対して処理を行う基板処理装置が用いられる。一般に基板処理装置は、コンピュータに類似した機能を有する制御ユニットやオペレータの操作を受け付ける操作ユニット、個々に基板に対する所定の処理を実行する複数の実装処理ユニット、これらのユニットをネットワークに接続する機能を提供するインタフェースユニット等を備えた複合装置として構成されている。
このように、基板処理装置は、制御ユニットによって複数の実装処理ユニットを制御して、これら複数の実装処理ユニットが基板に対してそれぞれ決められた処理を行うことにより、当該基板に対する一連の処理を実行する。
基板に対して実行すべき処理は、半導体デバイスの製造段階や製造する半導体デバイスの種類等に応じて異なる。したがって、基板処理装置に要求される実装処理ユニットの数および種類は状況に応じて様々に変化する。すなわち、実装処理ユニットの数および種類に応じてハードウェア構成の異なる様々なバリエーションの基板処理装置が存在することとなる。
一方、基板処理装置に限らず何らかの装置を開発する場合には、様々な動作試験が行われる。このような動作試験では、実際のハードウェアを試験機として準備して行うことが好ましい。この場合、試験の対象となるユニットのみならず、基板処理装置を構成する全てのハードウェアを試験機として準備することが好ましい。しかし、基板処理装置の個々の実装処理ユニットは、比較的大型かつ高価な装置であるため、様々なバリエーションの基板処理装置を随時試験機として準備することは事実上不可能である。
そこで従来より、基本構成の基板処理装置を試験機として組み立て、これを用いて個々の試験を行っていた。
特開2003−345624号公報
ところが、従来、試験において使用される基本構成の基板処理装置といえども大型かつ高価であるため、充分な台数を確保することがスペースおよびコストの両面において困難であり、試験が充分に行えないという問題があった。また、実際に基板を処理する際に動作させるハードウェア構成と、試験機のハードウェア構成とが必ずしも一致しないために、試験内容が限定されるという問題があった。
また、動作試験は基板処理装置の開発段階にのみ行われるものではなく、例えば、出荷時にも行われる。しかし、従来は、基板処理装置を構成する全てのハードウェアを工場内に搬入して組み立てた後にしか動作試験を行うことができないという問題があった。
このように、従来の技術では、基板処理装置の動作試験における負担が大きいという問題があった。
本発明は、上記課題に鑑みなされたものであり、基板処理装置の試験に要する負担を軽減することを目的とする。
上記の課題を解決するため、請求項1の発明は、基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とする。
また、請求項2の発明は、基板処理装置を試験するシミュレーションシステムであって、前記基板処理装置のプログラムが動作することにより前記基板処理装置の制御ユニットの機能を有するコンピュータと、前記コンピュータに接続されるシミュレータとを備え、前記シミュレータは、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とする。
また、請求項3の発明は、基板処理装置を試験するシミュレーションシステムであって、前記基板処理装置の制御ユニットと、前記制御ユニットに接続されるシミュレータとを備え、前記シミュレータは、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とする。
また、請求項4の発明は、コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、前記インタフェース部によって、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬するシミュレータとして機能させることを特徴とする。
基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、制御装置から得られる制御情報に基づいて、分類情報において仮想装置として分類された実装処理ユニットの動作を、基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部とを備え、インタフェース部は、インタフェース部に接続された実装処理ユニットと制御装置との間のデータ通信を仲介するとともに、制御装置とユニット模擬部との間で、基板処理装置における制御ユニットとユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬する。これにより、仮想装置として模擬される実装処理ユニットと、外部装置として実際にハードウェアが接続される実装処理ユニットとをシミュレーションにおいて混在させることができる。したがって、全ての実装処理ユニットを用意することなく、シミュレーションを実行でき、基板処理装置の試験に要する負担が軽減される。
以下、本発明の好適な実施の形態について、添付の図面を参照しつつ、詳細に説明する。
<1. 第1の実施の形態>
図1は、基板処理装置10の基本構成を示す図である。図2は、第1の実施の形態におけるシミュレーションシステム1と情報処理装置6とを示す図である。
一般に、基板処理装置には、実装可能な複数の処理ユニットが製品のラインナップとして準備されており、これらのうちからユーザの要望等に応じて必要な処理ユニットが選択されて、組み合わされる。すなわち、基板処理装置は、複数の処理ユニットの組合せで構成され、カスタマイズによって様々なバリエーションが存在する。
しかし、以下の説明では、シミュレーションシステム1が基板処理装置10を試験する例について説明する。すなわち、シミュレーションシステム1は、基板処理装置10を想定した試験を行うものとして説明する。また、製品ラインナップとして準備されている様々なハードウェアを単に「処理ユニット」と称し、処理ユニットのうち基板処理装置10を構成するために選択されたものを「実装処理ユニット」と称する。
基板処理装置10は、制御ユニット11、インタフェースユニット12、操作ユニット13、およびn個(nは自然数)の実装処理ユニット141,142,・・・,14nを備えている。なお、以下の説明において、便宜上、実装処理ユニット141,142,・・・,14nを「実装処理ユニット14」と総称する場合がある。
制御ユニット11は、ネットワーク9を介してインタフェースユニット12と接続され、詳細は説明しないが一般的なパーソナルコンピュータを構成するハードウェアを備えている。制御ユニット11は、基板処理装置10用のプログラムに従って動作し、ネットワーク9およびインタフェースユニット12を介して、実装処理ユニット14を制御する。
インタフェースユニット12は、実装処理ユニット14をネットワーク9に接続する機能を有する。これにより、実装処理ユニット141,142,・・・,14nにおけるデータ通信が個々に異なるプロトコルであったり、あるいは直接ネットワーク9に接続できないプロトコルであっても、制御ユニット11との間でデータの送受信を行うことができる。
操作ユニット13は、インタフェースユニット12に接続され、オペレータが基板処理装置10を操作するのに必要な指示を入力するために使用される。操作ユニット13をインタフェースユニット12に接続するための端子(コネクタ)は、一般には実装処理ユニット14の周辺に設けられている。
実装処理ユニット14は、基板に対して何らかの処理を行うユニットであって、具体的には、洗浄ユニット、搬送ユニット、乾燥ユニット、加熱ユニット、冷却ユニット、塗布ユニット、露光ユニット、現像ユニット、検査ユニット、除去(剥離)ユニット等が相当する。ただし、実装処理ユニット14はこれらに限定されるものではなく、直接的に基板に対する処理を行わない液供給ユニットや空調ユニットのようなユニットも含まれる。
また、実装処理ユニット14は、複数のハードウェアを有するものに限定されるものではなく、制御可能で、かつ所定の動作を行うハードウェアであれば、個々のランプやセンサ、ブザー、モータ等の単体のハードウェアであってもよい。ただし、説明の都合上、実装処理ユニット14は、制御ユニット11、インタフェースユニット12および操作ユニット13を含まないものとする。
図2に示すシミュレーションシステム1は、シミュレータ2と、コンピュータ4と、操作ユニット5とを備える。シミュレーションシステム1において、シミュレータ2とコンピュータ4とは、ネットワーク9を介して接続される。
また、シミュレーションシステム1(主にシミュレータ2のユニット模擬装置20)は、情報処理装置6との間で、記憶媒体90を介してデータのやりとりを行う。ただし、シミュレータ2と情報処理装置6との間のデータのやりとりは、これに限られるものではなく、例えば、シミュレーションシステム1と情報処理装置6とをネットワークで接続し、通信によってデータのやりとりを行ってもよい。
さらに、図2に示すように、シミュレーションシステム1(シミュレータ2)には、基板処理装置10に搭載可能な任意の実装処理ユニット14m(mはn以下の自然数)が接続可能となっている。詳細は後述するが、オペレータは、基板処理装置10を構成する実装処理ユニット141,142,・・・,14nから任意の実装処理ユニット14mを選択して、シミュレーションシステム1に接続し、動作試験を行うことが可能とされている。
なお、図2では、1台の実装処理ユニット14mのみがシミュレーションシステム1に接続されている例を図示しているが、接続される実装処理ユニット14の数や種類は1つに限定されるものではない。例えば、同種の実装処理ユニット14が複数台並列して接続されてもよいし、異なる実装処理ユニット14が複数台接続されてもよい。あるいは、実装処理ユニット14を1台も接続しなくてもよい。ただし、実装処理ユニット14が接続されない場合とは、シミュレーションシステム1が、主にソフトウェアについての動作試験を行うことを意味する。
ネットワーク9は、一般的なコンピュータを相互に接続するネットワークである。本実施の形態では、ネットワーク9として、図1に示す基板処理装置10において、制御ユニット11とインタフェースユニット12との間で採用される種類のネットワークを採用する。
シミュレーションシステム1のシミュレータ2は、ユニット模擬装置20およびインタフェース模擬装置30を備える。そして、ユニット模擬装置20は、ネットワーク9を介してインタフェース模擬装置30と接続される。
図3は、第1の実施の形態におけるユニット模擬装置20の構成を示す図である。
図3に示す定義リスト221は、様々なパラメータや定義式、設定等の情報を含む情報の集合体であり、本発明における定義情報に相当する。定義リスト221は、本実施の形態では主に情報処理装置6において作成され、記録媒体90を介してユニット模擬装置20に取得される。
定義リスト221には、少なくとも実装処理ユニット14m以外の実装処理ユニット14について、模擬動作を定義する情報(振る舞い定義ファイル)や入力される情報のデフォルト値を定義する情報(デフォルト定義ファイル)等が含まれる。なお、定義リスト221には、製品ラインナップとして存在する全ての処理ユニット(デバイス)に関する情報が含まれていてもよい。
また、分類情報222は、シミュレーションシステム1に実際に外部装置として接続される実装処理ユニット14mを示す情報と、実装処理ユニット14m以外の実装処理ユニット14を示す情報とが含まれる。なお、実装処理ユニット14m以外の実装処理ユニット14とは、すなわち、基板処理装置10を構成する複数の実装処理ユニット14のうち、シミュレーションシステム1に接続されない実装処理ユニット14(仮想装置)である。したがって、分類情報222は、基板処理装置10を構成する複数の実装処理ユニット14のリストを構成しており、さらに各実装処理ユニット14について、当該実装処理ユニット14が外部装置であるか仮想装置であるかを識別する情報が付加されている。
ユニット模擬装置20は、CPU21、記憶装置22、操作部23、表示部24、ディスク装置25および通信部26を備え、一般的なパーソナルコンピュータとしての機能を有している。
CPU21は、記憶装置22に記憶されているプログラム220に従って動作するとともに、必要に応じて定義リスト221および分類情報222を参照することにより、ユニット模擬装置20の各構成を制御する。
記憶装置22は、図示しないROM、RAMおよびハードディスク等から構成され、各種データを適宜記憶する。特に、本実施の形態における記憶装置22は、プログラム220、定義リスト221および分類情報222を記憶する。
操作部23は、各種ボタン類やキーボードおよびマウス等から構成され、ユニット模擬装置20に必要なデータを入力するために、オペレータによって使用される。例えば、操作部23は、表示部24に表示される画面(GUI)に従ってデータを入力する際や、試験情報225(図4参照)を作成する場合にも、必要な指示情報を入力するために使用される。
表示部24は、例えば、一般的な液晶ディスプレイ装置であって、CPU21からの制御に従って、各種データを画面に表示する。先述のように、表示部24は、ユニット模擬装置20の動作状況(シミュレーション結果を含む)や、定義リスト221の内容、オペレータの入力を補助するGUI画面等を表示する。オペレータは、表示部24に表示される動作状況を確認することによって、シミュレーションされる状況を容易にモニタリングできる。
ディスク装置25は、可搬性の記憶媒体90からデータを読み取る装置である。本実施の形態では、記憶媒体90に記憶された定義リスト221および分類情報222がディスク装置25によって読み取られ、記憶装置22に転送され記憶される。ディスク装置25としては、例えば、FDドライブ装置、CD−ROMドライブ装置およびDVDドライブ装置等が該当する。なお、ディスク装置25は、各種データを記憶媒体90に記憶させる(書き込む)機能を有していてもよい。
通信部26は、ユニット模擬装置20をネットワーク9に接続する機能を有し、インタフェース模擬装置30との間でデータ通信を行う機能を有している。
シミュレーションシステム1では、コンピュータ4とインタフェース模擬装置30とを接続するネットワーク9を、ユニット模擬装置20とインタフェース模擬装置30とを接続するネットワークとしても使用する。このようにネットワーク9を兼用することにより、ユニット模擬装置20とインタフェース模擬装置30とを接続するためのネットワークを別途構築する必要がない。
また、基板処理装置10におけるインタフェースユニット12と実装処理ユニット14との間で採用される個々のプロトコルにかかわらず、本実施の形態における通信部26は、インタフェース模擬装置30との間で、ネットワーク9を用いるプロトコルでデータ通信を行う。このように、ユニット模擬装置20とインタフェース模擬装置30との間で、一般的なプロトコルを採用することにより、シミュレータ2は、ユニット模擬装置20のハードウェアとして市販のパーソナルコンピュータを採用することができ、装置コストを抑制できる。
また、ユニット模擬装置20が基板処理装置10において互いに異なるプロトコルを用いる複数の実装処理ユニット14を模擬する場合であっても、ユニット模擬装置20とインタフェース模擬装置30との間では1つのプロトコルでデータ通信を行うこととなる。したがって、シミュレータ2のプログラム220等がいたずらに複雑化することがない。
なお、図1から明らかなように、基板処理装置10において、実装処理ユニット14はネットワーク9に直接接続されておらず、直接的な通信相手はインタフェースユニット12に固定されている。すなわち、基板処理装置10では、実装処理ユニット14は、直接的にはインタフェースユニット12のみとデータ通信を行い、制御ユニット11との間で直接的なデータ通信は行わない。
一方、シミュレーションシステム1において、ユニット模擬装置20の通信部26はネットワーク9に接続されている。すなわち、制御ユニット11としての機能を有するコンピュータ4と、実装処理ユニット14として振る舞うユニット模擬装置20との間でインタフェース模擬装置30を介することなく、直接的なデータ通信が可能である。
しかし、基板処理装置10におけるデータ通信を、より忠実に再現するために、ユニット模擬装置20の通信部26は、ネットワーク9を使用しつつも、直接的にはインタフェース模擬装置30のみと通信を行う。すなわち、シミュレーションシステム1では、ユニット模擬装置20とコンピュータ4との間のデータ通信は、インタフェース模擬装置30を介して行われる。
図4は、第1の実施の形態におけるユニット模擬装置20の機能ブロックを示す図である。図4に示すデータ転送部210、ユニット模擬部211、表示制御部213および情報生成部214は、主にCPU21がプログラム220に従って動作することにより実現される機能ブロックである。
図4に示す、入力情報223は、基板処理装置10において各実装処理ユニット14に与えられる情報に相当する情報のうち、シミュレーションシステム1に接続されていない実装処理ユニット14に向けて送信される情報である。入力情報223には、コンピュータ4から得られる制御情報のみならず、操作ユニット5によって生成された操作情報や他の実装処理ユニット14から得られる情報が含まれていてもよい。
なお、基板処理装置10において各実装処理ユニット14に与えられる情報に相当する情報のうち、シミュレーションシステム1にも接続されている実装処理ユニット14(実装処理ユニット14m)に向けて送信される情報は、シミュレーションシステム1においても該当する実装処理ユニット14mに向けて送信される。したがって、ユニット模擬装置20は、このような情報を入力情報223として受け取る(受信する)ことはない。
出力情報224は、基板処理装置10において各実装処理ユニット14から送信(出力)される情報に相当する情報のうち、シミュレーションシステム1に接続されていない実装処理ユニット14から送信される情報である。
なお、基板処理装置10において各実装処理ユニット14から送信(出力)される情報に相当する情報のうち、シミュレーションシステム1にも接続されている実装処理ユニット14(実装処理ユニット14m)から送信される情報は、シミュレーションシステム1においても実装処理ユニット14mから送信される。したがって、ユニット模擬装置20は、このような情報を出力情報224として送信することはない。
試験情報225は、シミュレーションシステム1においてシミュレーションを行うにあたっての条件を設定するための情報であり、予めオペレータによって作成される。試験情報225に含まれる情報としては、例えば、基板処理装置10が動作する際に想定される周囲の環境データや各ハードウェアの状態(故障等)を示すデータ、あるいは実際の基板処理装置10に入力されるレシピデータ等であるが、もちろんこれに限定されるものではない。本実施の形態では、シミュレーションを行うオペレータが操作部23を操作することにより、シミュレーションに先立って情報生成部214が予め試験情報225を生成する。
データ転送部210は、通信部26がインタフェース模擬装置30から受信した情報を入力情報223として記憶装置22に転送する。また、データ転送部210は、出力情報224のうち、コンピュータ4(あるいは操作ユニット5や実装処理ユニット14m)に送信すべき情報を通信部26に伝達してインタフェース模擬装置30に向けて送信させる。
ユニット模擬部211は、複数のデバイス模擬部212(第1模擬部2121、第2模擬部2122、・・・、第x模擬部212x(xはn以上の自然数))を備えている。ユニット模擬部211は、分類情報222と定義リスト221とを参照することにより、シミュレーションシステム1に接続されていない実装処理ユニット14(仮想装置)を構成するデバイスを、第1模擬部2121、第2模擬部2122、・・・、第x模擬部212xのいずれかに一対一で割り当てる。詳細は後述するが、デバイスを割り当てられたデバイス模擬部212は、それぞれが割り当てられたデバイスの動作を個々に模擬する。
処理ユニットは、通常、1つ以上のデバイスから構成される。そして、この処理ユニットが、実装処理ユニット14として基板処理装置10に搭載されると、当該実装処理ユニット14を構成するすべてのデバイスが基板処理装置10に搭載されることとなる。
したがって、仮想装置を構成するすべてのデバイスをそれぞれデバイス模擬部212に割り当て、各デバイス模擬部212が割り当てられたデバイスの動作を個々に模擬することによって、全体としてユニット模擬部211は仮想装置の動作を模擬することが可能となる。
先述のように、仮想装置に分類されている実装処理ユニット14に向けて送信される情報は、主に入力情報223としてユニット模擬装置20に与えられる。したがって、ユニット模擬部211は、当該実装処理ユニット14に搭載されている各デバイスに割り当てられたデバイス模擬部212に、入力情報223のうちの必要な情報を伝達する。
また、各デバイス模擬部212からの出力に基づいて出力情報224を生成し、記憶装置22に記憶させる。なお、各デバイス模擬部212から出力される情報のうち、デバイス模擬部212に割り当てられているデバイスに向けて出力される情報は、ユニット模擬部211によって該当するデバイスが割り当てられているデバイス模擬部212に伝達される(すなわち、ユニット模擬部211内で処理される)。したがって、このような情報は、本実施の形態においては出力情報224に含まれない。しかし、このような情報も、一旦出力情報224として生成した後、改めてユニット模擬部211がデバイス模擬部212に伝達するように構成してもよい。
さらに、ユニット模擬部211(各デバイス模擬部212)は、定義リスト221や試験情報225を参照するとともに、表示制御部213から伝達される指示情報(後述)に基づいて仮想装置に分類されている実装処理ユニット14(各デバイス)の動作を模擬する。
表示制御部213は、表示部24にデータを表示させる機能を有する。これにより、表示制御部213は、シミュレーションの状況(シミュレーション結果)を表示させる機能、およびシミュレーションシステム1におけるGUIを提供する。
シミュレーションの状況を表示させる機能として、例えば、表示制御部213は、デバイスが割り当てられたデバイス模擬部212に対して、表示部24の所定の表示領域を割り当てる。そして、ユニット模擬部211からこれらデバイス模擬部212の状況に関する情報を取得して、表示部24に表示させる。このとき、デバイス模擬部212の状況を文字情報として表示するだけでなく、デバイス模擬部212に対応するデバイスの特性に応じて、その表示形式を変えることも可能である。
例えば、デバイス模擬部212によって模擬するデバイスが「ランプ」である場合、このランプを模擬的に表した画像を表示領域に表示させ、これを擬似的に点滅させることによってデバイス模擬部212の状況を表示させる。すなわち、デバイスが何らかの表示デバイスである場合、表示部24にその表示を模擬させる。
これにより、オペレータは、より実機に近い状態で、シミュレーションの状況をモニタリングできる。なお、表示部24によって表示状態が模擬されるハードウェア(デバイス)としては、「ランプ」だけに限られるものではなく、例えば、「ゲージ」や「メータ」「パネル」等であってもよい。
また、表示制御部213は、操作部23からオペレータの指示情報を受け取り、表示部24の表示(表示領域)を切り替える。これにより、オペレータは注目しているデバイス(実装処理ユニット14)についての状況を容易に確認できる。なお、表示部24に表示される情報(表示領域)は切り替えられるだけではなく、それらが同時に表示されてもよい。
表示制御部213のGUI提供機能としては、表示部24にGUI画面を表示させるとともに、GUIに従ってオペレータによって入力された指示情報を操作部23から受け取り、主にユニット模擬部211に伝達する。このようにして入力される指示情報として、例えば定義リスト221に定義されている内容を変更する情報がある。例えば、このような指示情報の入力があった場合は、入力された情報を定義リスト221に定義されている情報に優先するように伝達することにより、シミュレータ2は、試験内容(シミュレート条件)を変更できる。
具体例を挙げると、液漏れ検出センサの動作(出力)は、液漏れのない状態を想定して、通常はデフォルト値として「OFF」がデフォルト定義ファイル(定義リスト221)に設定されている。しかし、このデフォルト値をオペレータが「ON」に変更することにより、液漏れが発生している状態を擬似的に作り出して試験を行うことができる。
このように、表示制御部213がシミュレータ2のGUI機能を提供し、操作部23からの指示情報をユニット模擬部211に伝達する機能を有しているため、オペレータは任意の条件で試験を行うことができる。
さらに、表示制御部213は、情報生成部214により生成された試験情報225に応じて、オペレータからの指示情報が入力された場合と同様に、ユニット模擬部211を制御する。
情報生成部214は、操作部23が受け付けた指示情報に基づいて、基板処理装置10のプログラムに対する試験内容を規定する試験情報225を予め生成する。
図5は、インタフェース模擬装置30の構成を示す図である。図5に示すように、インタフェース模擬装置30は、CPU31、記憶装置32、第1通信部33、第2通信部34および第3通信部35を備えている。
インタフェース模擬装置30は、ネットワーク9に接続され、インタフェース模擬装置30に接続された実装処理ユニット14mとコンピュータ4(制御装置)との間のデータ通信を仲介する。また、インタフェース模擬装置30は、コンピュータ4とユニット模擬装置20との間で、基板処理装置10における制御ユニット11とユニット模擬装置20によって模擬される実装処理ユニット14との間のデータ通信を模擬する。
インタフェース模擬装置30のCPU31は、記憶装置32に記憶されているプログラム320に従って動作することにより、インタフェース模擬装置30の各構成を制御する。
記憶装置32は、図示しないROMやRAMから構成され、各種データを適宜記憶する。特に、記憶装置32は、プログラム320を記憶する。
第1通信部33、第2通信部34および第3通信部35は、ネットワーク階層モデルにおける下位層(いわゆる物理層)に相当し、具体的には端子やケーブル等のハードウェアである。
第1通信部33は、インタフェース模擬装置30をネットワーク9に接続する。これにより、コンピュータ4とインタフェース模擬装置30との間のデータ通信およびユニット模擬装置20とインタフェース模擬装置30との間のデータ通信が可能となる。
先述のように、シミュレーションシステム1では、コンピュータ4とインタフェース模擬装置30との間のデータ通信には、基板処理装置10における制御ユニット11とインタフェースユニット12との間のデータ通信に用いられるプロトコルを採用する。本実施の形態に示す基板処理装置10は、制御ユニット11とインタフェースユニット12との間で、TCP/IPプロトコルにてデータ通信を行う。したがって、本実施の形態における第1通信部33は、TCP/IPプロトコルに準拠したハードウェアインタフェースとなっている。
第1通信部33は、先述のように、ユニット模擬装置20とインタフェース模擬装置30とを接続する機能も有する。しかし、基板処理装置10におけるインタフェースユニット12と各実装処理ユニット14とを接続するプロトコル(以下、「ローカルプロトコル」と称する)は、TCP/IPプロトコルには限られない。むしろ、TCP/IPプロトコルはローカルプロトコルとして採用されていない。
ローカルプロトコルは、個々の実装処理ユニット14を構成するハードウェアの特性に応じて適切なプロトコルが採用されるため、実装処理ユニット14ごとに異なる場合もある。このようなローカルプロトコルとして、基板処理装置10は、例えば、I/Oポートによるプロトコル、シリアル通信ポートによるプロトコル、およびモータドライバによるプロトコル等を採用する。
すなわち、インタフェース模擬装置30における第1通信部33は、コンピュータ4との間では制御ユニット11とインタフェースユニット12との間のプロトコルをそのまま再現する一方で、ユニット模擬装置20との間では個々のローカルプロトコルをすべてTCP/IPプロトコルによって模擬する。
第2通信部34は、インタフェース模擬装置30と操作ユニット5とを接続する。第2通信部34は、基板処理装置10におけるインタフェースユニット12と操作ユニット13との間のデータ通信に用いられるプロトコルを採用する。これにより、基板処理装置10の操作ユニット13と同等の操作ユニット5をインタフェース模擬装置30にそのまま接続できる。本実施の形態では、第2通信部34として、RS232Cを採用するが、もちろんこれに限定されるものではない。
第3通信部35は、インタフェース模擬装置30と実装処理ユニット14mとを接続する。言い換えれば、インタフェース模擬装置30が第3通信部35を備えていることにより、シミュレーションシステム1には実装処理ユニット14mを接続することが可能とされている。
なお、図5では詳細を図示していないが、本実施の形態における第3通信部35は、複数の接続ポートから構成されており、基板処理装置10を構成する複数の実装処理ユニット14のうちの全てを接続することが可能とされている。すなわち、第3通信部35は、インタフェースユニット12が実装処理ユニット14用に備える全ての接続ポートを備えている。したがって、シミュレーションを実行するオペレータは、シミュレーションシステム1(シミュレータ2)に、基板処理装置10を構成する複数の実装処理ユニット14のうちの任意の実装処理ユニット14を実装処理ユニット14mとして接続することが可能である。
図6は、インタフェース模擬装置30の機能ブロックを示す図である。図6に示すデータ転送部310,311,312,313は、主にCPU31がプログラム320に従って動作することにより実現される機能ブロックである。すなわち、データ転送部310,311,312,313はいずれもCPU31とプログラム320とが協働することによって実現される機能ブロックである。
データ転送部310,311,312はネットワーク階層モデルにおける中位層に相当し、例えばミドルウェアやドライバによって実現される。また、データ転送部313はネットワーク階層モデルにおける上位層に相当し、例えばアプリケーションソフトウェアで実現される。
データ転送部310は、データ転送部313から受け取った情報を、ネットワーク9に適したデータフォーマット(本実施の形態ではTCP/IPプロトコルに準拠したデータフォーマット)に変換して第1通信部33に受け渡す。言い換えれば、操作ユニット5または実装処理ユニット14mから送信された情報のうち、コンピュータ4またはユニット模擬装置20を宛先とする情報を、ネットワーク9に適したデータフォーマットに加工して、第1通信部33に伝達し、ネットワーク9上に送信させる。
また、データ転送部310は、第1通信部33から受け取った情報のうち、コンピュータ4とユニット模擬装置20との間で転送される情報(コンピュータ4またはユニット模擬装置20宛ての情報であって、主には入力情報223または出力情報224)についても、ネットワーク9に適したデータフォーマットに加工して、第1通信部33に伝達し、ネットワーク9上に送信させる。
このようにしてデータ転送部310によって加工され、第1通信部33からネットワーク9上に送信された情報は、コンピュータ4またはユニット模擬装置20によって受信される。
さらに、データ転送部310は、第1通信部33から受け取った情報のうち、操作ユニット5または実装処理ユニット14m宛ての情報については、データ転送部313に受け渡す。このようにしてデータ転送部310からデータ転送部313に転送された情報は、データ転送部313によって、データ転送部311またはデータ転送部312に転送される。
データ転送部311は、第2通信部34とデータ転送部313との間で情報の受け渡しを行う。すなわち、操作ユニット5から第2通信部34が受信した情報は、データ転送部311によってデータ転送部313に転送される。
一方、データ転送部311には、操作ユニット5に向けて送信される情報がデータ転送部313から転送される。データ転送部311は、データ転送部313から転送された情報を第2通信部34と操作ユニット5との間のプロトコルに適したデータフォーマットに変換し、第2通信部34に転送する。
データ転送部312は、実装処理ユニット14mが送信した情報を第3通信部35から受け取り、データ転送部313に転送する。なお、インタフェース模擬装置30に複数の実装処理ユニット14mが接続されている場合には、第3通信部35が実装処理ユニット14mから受信した情報のうち、他の実装処理ユニット14mを宛先としない情報のみがデータ転送部313に転送される。そして、他の実装処理ユニット14mを宛先とする情報は、当該他の実装処理ユニット14mと第3通信部35との間のプロトコルに適したデータフォーマットに変換された後、第3通信部35に転送され、当該他の実装処理ユニット14mに向けて送信される。
一方、データ転送部312には、実装処理ユニット14mに向けて送信される情報がデータ転送部313から転送される。データ転送部312は、データ転送部313から転送された情報を第3通信部35と宛先の実装処理ユニット14mとの間のプロトコルに適したデータフォーマットに変換し、第3通信部35に転送する。
データ転送部313は、データ転送部310,311,312の間の情報の転送を行う。すなわち、データ転送部310,311,312のいずれかからデータ転送部313が受け取った情報は、データ転送部313によって宛先に応じてデータ転送部310,311,312のいずれかに転送される。具体的には、ユニット模擬装置20またはコンピュータ4が宛先となっている情報はデータ転送部310に転送され、操作ユニット5が宛先となっている情報はデータ転送部311に転送され、実装処理ユニット14mが宛先となっている情報はデータ転送部312に転送される。
図7は、コンピュータ4の構成を示す図である。コンピュータ4は、CPU41、記憶装置42、操作部43、表示部44、ディスク装置45および通信部46を備え、基板処理装置10の制御ユニット11が備えるハードウェアと同等のハードウェアを備えている。また、コンピュータ4は、一般的なパーソナルコンピュータとしての機能を有している。
CPU41は、設定ファイル421を参照しつつプログラム420に従って動作することにより、各種データの演算や制御信号の生成を行い、コンピュータ4の各構成を制御する。
ここで、プログラム420は、後述する設定ファイル421と同様に基板処理装置10に搭載される「製品」であり、実装処理ユニット14mと同様にシミュレーションシステム1の試験(デバッグ)の対象となる。プログラム420は、基板処理装置10を設計・開発する際に、オペレータ(プログラマ)によって作成され、制御ユニット11にインストールされる。
設定ファイル421は、基板処理装置10に搭載される実装処理ユニット14に応じて生成される情報であり、基板処理装置10を動作させるために必要な情報である。例えば、基板処理装置10の制御ユニット11は、設定ファイル421を参照することによって、製品ラインナップとして提供されている多くの処理ユニットのうち、実際に搭載されている実装処理ユニット14を識別する(基板処理装置10の装置構成を知得する)。したがって、設定ファイル421は、プログラム420と共に基板処理装置10のソフトウェアの一部であり、基板処理装置10の制御ユニット11にインストールされる。
このように、コンピュータ4は、制御ユニット11にインストールされるプログラム420および設定ファイル421を記憶しており、当該プログラム420および設定ファイル421に基づいて、制御ユニット11と同等のハードウェアを制御することにより、制御ユニット11としての機能を発揮する。
例えば、CPU41は、実装処理ユニット14に対する制御情報を生成し、生成した制御情報を、インタフェースユニット12を介して実装処理ユニット14に向けて送信するように通信部46を制御する。ただし、シミュレーションシステム1では、通信部46から送信される情報は、インタフェースユニット12ではなく、ネットワーク9に接続されたインタフェース模擬装置30に向けて送信される。そして、さらにインタフェース模擬装置30を介してユニット模擬装置20または実装処理ユニット14mに向けて送信される。
また、CPU41は、シミュレータ2(インタフェース模擬装置30)からネットワーク9を介して通信部46が受信した情報に基づいて、新たな制御情報を生成したり、あるいは必要な情報を表示部44に表示させる機能も有している。
記憶装置42は、図示しないROM、RAMおよびハードディスク等から構成され、必要に応じて各種データを記憶する。特に、本実施の形態における記憶装置42は、図7に示すように、プログラム420および設定ファイル421を記憶する。
操作部43は、各種ボタン類やキーボードおよびマウス等から構成され、オペレータがコンピュータ4を操作するためのデータを入力するために使用される。なお、シミュレーションシステム1が基板処理装置10のシミュレートを行っているとき、コンピュータ4を操作するために入力されるデータとは、主に基板処理装置10を操作するために入力されるデータに相当する。
また、表示部44は、各種データを画面に表示する。表示部44は、基板処理装置10の制御ユニット11において表示されるデータを表示する機能を有している。
コンピュータ4は、特に操作部43および表示部44について、実際の基板処理装置10に搭載される制御ユニット11と同等のハードウェアを採用する。これにより、コンピュータ4は、基板処理装置10の制御ユニット11と同じマンマシンインタフェース(特に表示部44に表示されるGUI)を提供できる。したがって、オペレータは、シミュレーションの実行中において、実際の制御ユニット11(基板処理装置10)を操作している感覚でコンピュータ4を操作できる。
ディスク装置45は、可搬性の記憶媒体91を読み取る装置である。本実施の形態におけるコンピュータ4では、記憶媒体91に記憶されたプログラム420および設定ファイル421がディスク装置45によって読み取られ、記憶装置42に転送され記憶される。ディスク装置45としては、例えば、FDドライブ装置、CD−ROMドライブ装置およびDVDドライブ装置等が該当する。なお、ディスク装置45は、各種データを記憶媒体91に記憶させる(書き込む)機能を有していてもよい。
通信部46は、コンピュータ4をネットワーク9に接続する。これにより、コンピュータ4とシミュレータ2との間でネットワーク9を介したデータ通信が可能となる。ただし、通信部46の直接の通信相手先は、先述のようにシミュレータ2のインタフェース模擬装置30に固定されており、通信部46はインタフェース模擬装置30を介さずにユニット模擬装置20との間でデータ通信することはできないようにされている。すなわち、コンピュータ4とユニット模擬装置20との間のデータ通信は、必ずインタフェース模擬装置30を介して行われるように構成されている。
図8は、操作ユニット5の構成を示す図である。操作ユニット5は、CPU51、記憶装置52、操作部53、表示部54および通信部56を備え、比較的小型で可搬性あるユニットである。
一般に基板処理装置10は大型の装置であるため、基板処理装置10の制御ユニット11を操作するオペレータにとって、制御ユニット11の位置から各実装処理ユニット14の様子や表示状況(ランプやメータ等)を完全に把握することは難しい。
そこで、基板処理装置10には、予め様々な位置にコネクタ(接続ポート)が設けられており、これに操作ユニット13を接続できるように設計されている。すなわち、基板処理装置10は、オペレータが任意の位置にあるコネクタまで操作ユニット13を持参することにより、基板処理装置10を任意の位置で操作できるように構成されている。
シミュレーションシステム1は、操作ユニット13と同じ構成の操作ユニット5を用いることにより、操作ユニット13を用いた場合の基板処理装置10のシミュレーションも行えるよう構成されている。
本来、操作ユニット13は、基板処理装置10のバリエーションにかかわらず、ほぼ共通に用いられるユニットである。すなわち、基板処理装置10のバリエーションに応じて、シミュレーションシステム1の操作ユニット5をいくつも準備しておいて取り替える必要はない。したがって、シミュレーションシステム1において、操作ユニット13をそのまま操作ユニット5として採用したとしても、実装処理ユニット14において生じるような問題は発生しない。
なお、操作ユニット13をユニット模擬装置20によって模擬することも可能であり、その場合、シミュレーションシステム1において操作ユニット13のハードウェアは不要となる。しかし、その場合は、シミュレーションシステム1における基板処理装置10のマンマシンインタフェース(特にハードウェアに依存する部分)の再現性が低下することとなる。
CPU51は、プログラム520に従って動作することにより、各種データの演算や制御信号を生成する。なお、プログラム520は、基板処理装置10の操作ユニット13に搭載されるものと同じプログラムである。
記憶装置52は、図示しないROMやRAM等から構成され、プログラム520の他、各種データを記憶する。
操作部53は、オペレータが指示を入力するために使用される。また、表示部54は、適宜、情報(例えばGUI)を画面に表示する。
以上がシミュレーションシステム1の構成および機能の説明である。次に、情報処理装置6について説明する。
図9は、情報処理装置6の構成を示す図である。図9に示すように、情報処理装置6は、CPU61、記憶装置62、操作部63、表示部64およびディスク装置65を備え、一般的なパーソナルコンピュータとしての機能を有している。
本実施の形態における情報処理装置6は、記憶装置62に記憶された設定ファイル421および基礎ファイル621に基づいて、シミュレータ2が仮想装置の動作を模擬するための定義リスト221と、基板処理装置10を構成する実装処理ユニット141,142,・・・,14nのそれぞれについてシミュレーションにおいて外部装置であるか仮想装置であるかを示す分類情報222とを生成する。
なお、基礎ファイル621とは、複数のファイルの集合体であって、処理ユニットの仕様書(あるいは設計書)とも言える情報を含む。すなわち、基礎ファイル621は、すべての処理ユニットについて、個々の処理ユニットを設計・開発する段階で、オペレータ(開発担当)によって予め作成される情報である。
図10は、基礎ファイル621に含まれるアドレス基礎ファイル622を例示する図である。アドレス基礎ファイル622には、各シンボルに対して「振る舞い定義式」と呼ばれる模擬動作を定義する式が個々に関連付けられている。
また、図11は、基礎ファイル621に含まれる温調器基礎ファイル623を例示する図である。さらに、図12は、基礎ファイル621に含まれる干渉判定基礎ファイル624を例示する図である。
CPU61は、プログラム620に従って動作することにより、情報処理装置6の各構成を制御する。なお、CPU61の主な動作については後述する。
記憶装置62は、図示しないROM、RAMおよびハードディスク等から構成され、プログラム620や各種データを記憶する。特に、記憶装置62は、ディスク装置65によって取得された設定ファイル421および基礎ファイル621を記憶する。また、情報処理装置6が生成した定義リスト221や分類情報222も、一旦、記憶装置62に記憶される。
操作部63はキーボードやマウス等から構成され、オペレータが情報処理装置6に必要な情報を入力するために使用する。特に、本実施の形態における情報処理装置6では、操作部63が操作されることによって分類情報222が生成される。
表示部64は、例えば一般的なディスプレイ装置であって、CPU61からの指示に従って、各種データを画面に表示する。例えば、表示部64は、オペレータが分類情報222を生成する際には、実装処理ユニット14のリストを表示する。
本実施の形態における情報処理装置6では、ディスク装置65が記憶媒体90に記憶されている設定ファイル421および基礎ファイル621を読み取ることにより、基板処理装置10の構成を規定する基礎情報を取得する。
また、ディスク装置65は、情報処理装置6により生成された定義リスト221および分類情報222を記憶媒体90に書き込む(出力する)機能を有しており、記憶媒体90に出力された定義リスト221および分類情報222は、シミュレータ2(ディスク装置25:図3)によって読み取られる。
以上の構成を有する情報処理装置6において、定義リスト221および分類情報222が作成される様子について説明する。
図13は、定義リスト221において模擬動作を定義する例を示す図である。本実施の形態における情報処理装置6は、デバイス(ハードウェア)ごとにCSV形式で模擬動作を定義することにより予め定義リスト221を作成する。
図13に示す例は、「バルブ開出力」がONにされると、1sec後に「バルブ開確認入力」をONにするという「純水回収バルブ」の模擬動作を定義している。これをシミュレータ2のユニット模擬部211が参照することにより、ユニット模擬部211は、「純水回収バルブ」を、例えば第1模擬部2121に割り当てる。
なお、同じデバイスであっても、模擬動作は複数定義される(例えばバルブ開動作とバルブ閉動作)。したがって、ユニット模擬部211は、定義リスト221において同一のデバイスについて模擬動作が複数回定義されている場合、当該デバイスのデバイス模擬部212への割り当てを一回だけ行い、その後は、新たな割り当ては行わない。
上記説明では、ユニット模擬部211は複数のデバイス模擬部212を備えていると説明したが、より詳しくは、ユニット模擬部211は、予め第1模擬部2121、第2模擬部2122、・・・、第x模擬部212xを備えているのではなく、定義リスト221を参照することにより、新たに割り当てが必要なデバイスを発見したときに、新たなデバイス模擬部212を生成して、これに当該デバイスを割り当てる。
このように、記憶装置22に定義リスト221が予め記憶されているので、ユニット模擬部211は、仮想装置に搭載されるすべてのデバイス(模擬する必要があるデバイス)を、デバイス模擬部212に割り当てることができる。
図14および図15は、情報処理装置6が定義リスト221を作成する動作を示す流れ図である。なお、情報処理装置6では、オペレータが定義リスト221を作成する処理を選択することにより、上記処理が開始される。
定義リスト221を作成する処理が開始されると、CPU61は、まず、設定ファイル421を参照して(ステップS11)、基板処理装置10の実装処理ユニット14を判定する。本実施の形態では、設定ファイル421に含まれるファイル名に基づいて、基板処理装置10を構成する実装処理ユニット14を判定する。ただし、設定ファイル421に、例えば、実装処理ユニット14の識別子(型式番号等)を格納したファイルを含めるようにして判定してもよい。
基板処理装置10を構成する実装処理ユニット14が判明すると、CPU61は、これに応じて定義リスト221を作成するために必要な基礎ファイル名を取得する(ステップS12)。これにより、基礎ファイル621に含まれる複数のファイルの中から参照されるファイルが確定する。すなわち、CPU61は、設定ファイル421を参照することにより、基礎ファイル621の中から定義リスト221を作成するために必要なファイル(情報)を特定する。
次に、実装処理ユニット14に応じて必要な定義ファイルを作成することにより、定義リスト221を生成する(ステップS13)。ただし、この時点では、定義リスト221を構成する複数の定義ファイルが作成されるだけであり、必要な情報は未だ個々の定義ファイルに格納されない。
必要な定義ファイルを作成すると、CPU61は、ステップS12で取得した基礎ファイル名に基づいて、そのうちから参照する基礎ファイルを1つ特定する(ステップS14)。さらに、特定した基礎ファイルを開いて、定義リスト221に必要な情報を抽出し(ステップS15)、定義リスト221の必要な定義ファイルに所定の形式で出力する(ステップS16)。さらに、ステップS15,S16の処理を、基礎ファイルの最後まで繰り返す(ステップS17)。
本実施の形態におけるステップS14ないしS17の処理を、図10に示すアドレス基礎ファイル622を例に説明する。
まず、ステップS14においてアドレス基礎ファイル622を特定すると、CPU61は、アドレス基礎ファイル622を開いて、各レコードに格納されている情報をシンボルごとに順次取得する。
図10に示す例では、一つ目には、デフォルト値「1」が格納されているので、定義リスト221に含まれるデフォルト定義ファイルに、例えば、「CHB/InLevelLeakageDetection,1」のように出力する。また、一つ目のレコードは最終レコードではなく、未だアドレス基礎ファイル622に含まれる全レコードについて処理を終了していないので、ステップS17においてNoと判定し、ステップS15に戻る。
次に、二つ目のレコードには、振る舞い定義式、デフォルト値およびアナログ値のいずれにおいても「−」が格納されているので、定義リスト221に必要のない情報とみなして、当該レコードに格納されている情報は抽出しない。
さらに、三つ目のレコードには、振る舞い定義式に「$Level>=4」と格納されているので、定義リスト221に含まれる振る舞い定義ファイルに、例えば、「InLevelFixedDetection,$Level>=4,"定量OFF"」のように出力する。
このようにして処理を繰り返すことにより、アドレス基礎ファイル622の全レコード(全シンボル)について処理が終了すると、CPU61は、ステップS17においてYesと判定する。すなわち、ステップS17においてYesと判定されるごとに、1つの基礎ファイルについての処理が終了する。
なお、温調器基礎ファイル623および干渉判定基礎ファイル624についても、同様に、各レコードごとに所定の書式で定義リスト221に出力される。
次に、CPU61は、ステップS14において特定した基礎ファイル(ステップS17において処理が終了した基礎ファイル)から振る舞い定義ファイルが作成されている場合、当該振る舞い定義ファイルにおいて、定義式の異なる同一のシンボルが複数あるか否かを判定する(ステップS21)。
複数の同一のシンボルにおいて、定義式が異なっていた場合、シミュレータ2は、当該シンボルにおいて、どのように模擬動作を実行すればよいか決定できない。したがって、この場合(ステップS21においてYesと判定した場合)は、CPU61は、エラーログを出力し(ステップS22)、情報処理装置6は処理を継続する。
このように、定義リスト221にエラーが発生した場合であっても、一旦処理を継続することにより、必要な定義リスト221をひとまず完成できる。すなわち、1つのエラーのために、他のファイルの作成が阻害されることが防止できる。なお、エラーログが生成された場合、後に、オペレータがその内容を確認し、エディタ等を用いて手動で定義リスト221を修正する。
一方、ステップS21においてNoと判定した場合、CPU61は、エラーログを出力せず、情報処理装置6は、ステップS22をスキップして処理を継続する。なお、複数の同一のシンボルについて定義式が存在したとしても、それらの定義式が同一である場合には、CPU61がその一方をファイルから消去し、情報処理装置6は、ステップS22をスキップする。
次に、CPU61は、作成された定義リスト221のデータチェックにおいて不整合があるか否かを判定する(ステップS23)。不整合の具体例としては、例えば、同一のシンボルについて異なるデフォルト値が設定されている場合や、設定ファイル421と基礎ファイル621が矛盾する場合、あるいは、振る舞い定義式の「AND」や「OR」等の演算子で複数のシンボルが定義されており、その中に基板処理装置10に存在しないシンボル(搭載されていない処理ユニットに関するシンボル)が使用されている場合等である。
ステップS23において、不整合がない場合、情報処理装置6はステップS24ないしS26をスキップする。
一方、ステップS23において、不整合があった場合、CPU61は、さらにその不整合が修正可能か否かを判定する(ステップS24)。そして、修正可能であった場合は、CPU61が定義リスト221の不整合箇所を修正する(ステップS25)。例えば、作成した振る舞い定義ファイルの振る舞い定義式において、「InDiwPress,"OR(OutInDIWValve,OutOutDIWValve) ? 1140:0","純水圧力"」と定義されている場合において、OutInDIWValveは定義されているが、OutOutDIWValveについては定義がない場合、CPU61は、定義リスト221の定義式を「InDiwPress,"OutInDIWValve ? 1140:0","純水圧力"」のように修正する。なお、修正可能でない不整合が発生している場合(ステップS24においてNo)、CPU61は、ステップS26を実行することにより、ステップS22と同様にエラーログを出力する。
次に、CPU61は、ステップS12において取得した基礎ファイル名に基づいて、全ての基礎ファイル621について処理を終了したか否かを判定し(ステップS27)、まだ未処理の基礎ファイル621が残っている場合はステップS14に戻って処理を繰り返す。
一方、全ての基礎ファイル621について処理を終了した場合、情報処理装置6は、表示部64に終了メッセージを表示して(ステップS28)、処理を終了する。
以上のようにして、情報処理装置6は、基板処理装置10を設計する際に生成される基礎情報(設定ファイル421および基礎ファイル621)に基づいて、定義リスト221を予め作成する。すなわち、ユーザの要望に応じて、新たな基板処理装置10が設計されると(ハードウェア構成が決定されると)、それに応じて情報処理装置6が定義リスト221を作成する。
基板処理装置10は、非常に多くのハードウェア(デバイス)を搭載しているため、定義リスト221において定義すべき情報は非常に多量である。例えば、オペレータが240〜300時間程度かかって作成する定義リスト221を、情報処理装置6によって作成すると0.5時間程度で作成できる。
なお、定義リスト221を作成するためには、設定ファイル421および基礎ファイル621を作成する必要がある。しかし、設定ファイル421は製品であるため、基板処理装置10を製造する限り、必ず作成しなければならない情報であり、定義リスト221のために作成するものではない(すなわち、工数は増加しない)。また、基礎ファイル621は、1回作成すれば、どのような構成の基板処理装置10にも適用可能な情報である。したがって、基板処理装置10ごとに定義リスト221をオペレータが作成することに比べれば、基礎ファイル621を一度作成する方がオペレータの負担は軽減される。
以上が、情報処理装置6において定義リスト221を作成する処理の説明である。次に、情報処理装置6において分類情報222を作成する処理について説明する。
情報処理装置6では、オペレータが分類情報222を作成する処理を選択することによって、上記処理が開始される。
分類情報222を作成する処理が開始されると、CPU61は設定ファイル421を参照し、基板処理装置10を構成する処理ユニットのリスト(すなわち、実装処理ユニット14のリスト)を表示部64に表示させる。さらに、当該リストとともに、表示部64に各実装処理ユニット14ごとにチェックボックスを表示させる。
オペレータは、各実装処理ユニット14について、シミュレーションシステム1(インタフェース模擬装置30)に接続するか否かを確認しつつ、インタフェース模擬装置30に接続する実装処理ユニット14については、当該実装処理ユニット14用に設けられたチェックボックスに対して入力を行う(チェックする)。これにより、実装処理ユニット14m(外部装置)に分類される実装処理ユニット14についてはチェックされることとなる。一方、インタフェース模擬装置30に接続しない実装処理ユニット14については、当該実装処理ユニット14用に設けられたチェックボックスに対して入力を行わない(チェックしない)。
全ての実装処理ユニット14について確認作業が終了すると、オペレータは分類情報222を作成する処理を終了する旨を入力する。これに従って、CPU61は、該当するチェックボックスがチェックされている実装処理ユニット14を外部装置として分類し、該当するチェックボックスがチェックされていない実装処理ユニット14を仮想装置として分類して分類情報222を作成する。
以上が、情報処理装置6において分類情報222を作成する処理の説明である。
なお、オペレータは、基板処理装置10のシミュレーション作業に先立って、情報処理装置6によって生成された定義リスト221および分類情報222を、ディスク装置65に装着した記憶媒体90に記憶させる。さらに、オペレータは、当該記憶媒体90を、シミュレータ2のディスク装置25に読み込ませて、定義リスト221および分類情報222を記憶装置22に記憶させる。
以上が、情報処理装置6についての説明である。次に、シミュレーションシステム1を用いてシミュレーションを実行する方法について説明する。
図16は、シミュレーションシステム1を用いてシミュレーションを実行する方法を示す流れ図である。シミュレーションシステム1によってシミュレーションを行う前に、まず、準備工程が行われる(ステップS31)。
準備工程とは、シミュレーションシステム1を動作させるために必要な準備を行うための工程であり、例えば、オペレータによる必要なファイル(定義リスト221や分類情報222等)の転送や、実装処理ユニット14mの接続等を含む工程である。すなわち、準備工程が終了した時点において、必要なハードウェアの電源がすべて投入されており、かつ、必要なプログラムやファイルの転送(インストール)が完了した状態となる。
ただし、本実施の形態では、試験情報225はシミュレーションシステム1において生成されるので、ステップS31の準備工程が終了した状態では、未だ試験情報225の生成はされていないものとする。準備工程が終了した状態において、シミュレーションシステム1は、一旦、オペレータからの所定の指示があるまで待機する状態となる。
待機状態において、オペレータが、操作部23を操作することにより、シナリオ作成を選択する指示情報を入力すると、シミュレーションシステム1は、ステップS32においてYesと判定し、シナリオを作成する(ステップS33)。
ステップS33の処理は、シミュレーションに先立って、情報生成部214が試験情報225を予め生成する処理である。以下に、ステップS33の処理について詳細に説明する。
図17ないし図24は、試験情報225を作成する間に、表示部24に表示されるGUI画面240の例である。GUI画面240は、操作部23からの指示情報に応じて、表示制御部213が表示部24に表示させる。
まず、作成する試験情報225の区分が選択される。図17に示すように、「区分ボックス」に設けられたプルダウンボタンを操作することにより、選択可能な区分がプルダウンメニューに一覧表示される。ここに示す例では、「テスト操作」を選択する。
次に、順次実行するコマンドを選択する。図18に示すように、「コマンドボックス」に設けられたプルダウンボタンを操作することにより、シミュレータ2において選択可能なコマンドがプルダウンメニューに一覧表示される。オペレータは、表示された一覧から所望するコマンドを選択するだけで、容易に所望するコマンドを入力できる。
コマンドとは、シミュレーションシステム1に対するオペレータの命令を模擬するものであり、予め定義され準備されている。なお、予め定義されているコマンドの種類等は定義リスト221にファイルとして含まれていてもよい。また、ここに示す例では、シミュレータ2のIOポートのデフォルト値(デフォルト定義ファイル)を変更するコマンド(SIM-IOChange)を選択する。
コマンドが選択されると、図19に示すように、コマンドボックスに選択されたコマンド(ここに示す例では、「SIM-IOChange」)が入力されるとともに、当該コマンドに対して必要な数の「引数ボックス」がアクティブ化され、その引数の名称が表示される。アクティブ化された「引数ボックス」には、プルダウンボタンが設けられ、引数を入力することが可能となる。
図19に示す例では、「引数1および引数2のボックス」がアクティブ化されている。これによって、選択されたコマンド「SIM-IOChange」に対して、2つの引数が必要であり、引数3ないし引数5は入力不要であることが容易にわかる。また、引数1として入力しなければならない引数は「接点名称」であり、引数2として入力しなければならない引数は「設定値」であることも容易に理解できる。
オペレータが、「引数1のボックス」に設けられたプルダウンボタンを操作することにより、図20に示すように、引数1(ここに示す例では、「接点名称」)として入力可能な引数がプルダウンメニューに一覧表示される。オペレータは、一覧表示された引数から、所望する引数を選択することにより、容易に引数1を入力できる。
なお、「接点名称」として選択可能なシンボル(基板処理装置10ごとに異なる)の名称は、例えば、表示制御部213が定義リスト221を参照することにより取得できる。また、ここに示す例では、引数「/ONB_T4/InShowerFlowLowerLimit」を選択する。
引数1が選択されると、図21に示すように、引数1のボックスに選択された引数(ここに示す例では、「/ONB_T4/InShowerFlowLowerLimit」)が入力される。
オペレータが、「引数2のボックス」に設けられたプルダウンボタンを操作することにより、図21に示すように、引数2(ここに示す例では、「設定値」)として入力可能な引数がプルダウンメニューに一覧表示される。オペレータは、一覧表示された引数から、所望する引数を選択することにより、容易に引数2を入力できる。ここに示す例では、引数「ON」を選択する。
引数2が選択されると、図22に示すように、引数2のボックスに選択された引数(ここに示す例では、「ON」)が入力される。
選択されたコマンドに対して、必要な引数が全て入力されると、オペレータがGUI画面240に設けられている「行追加ボタン」を操作することにより、図22に示すように、入力された内容(ここに示す例では、「T,SIM-IOChange,/ONB_T4/InShowerFlowLowerLimit,ON」)が「試験内容表示ボックス」に追加される。
このようにして、コマンドが繰り返し入力されることにより、図23に示すように、一連の試験内容(テストシナリオ)が完成する。
オペレータがGUI画面240に設けられている「保存ボタン」を操作すると、情報生成部214が記憶装置22上にファイルを作成し、「試験内容表示ボックス」に表示されている内容(オペレータが入力した指示情報)を当該ファイルに保存する。このようにして生成されるファイルが試験情報225である。
情報生成部214によって試験情報225が作成されると、シミュレーションシステム1は、ステップS33を終了する。以上が、図16に示すステップS33の処理の説明である。
図16に戻って、待機状態において、オペレータが、操作部23を操作することにより、シミュレーション開始を選択する指示情報を入力すると、シミュレーションシステム1(シミュレータ2)は、ステップS34においてYesと判定し、シミュレーションシステム1はシミュレーションを実行する(ステップS35)。
シミュレーションシステム1は、シミュレーション(試験)を開始するときに、まず、マニュアルモードで試験を行うか、オートモードで試験を行うかを決定する。この選択は、オペレータからの指示により決定するが、例えば、試験情報225の有無によって決定してもよい。
なお、マニュアルモードとは、シミュレーションの条件等をオペレータが、操作部23を操作して指示情報を入力することにより行うモードである。マニュアルモードでは、オペレータがその場で自由に指示情報を入力できるので柔軟性に富むが、シミュレーションを行う際に、すべての情報を誤り無く入力しなければならないため、正確性および再現性に劣る。マニュアルモードは、必要に応じてオペレータがシミュレーションシステム1に指示情報を入力し、この指示情報に応じてシミュレーションシステム1が動作するだけの処理であるので、ここでは詳細な説明を省略する。
一方、オートモードとは、すでに準備されている試験情報225に基づいてシミュレーションを行うモードである。オートモードでは、シミュレーションが開始されると、自動的に試験が実行されるので、例えば、シミュレーションをモニタリングしながら適切なタイミングで指示情報を入力する必要がないので、オペレータの負担が軽減される。また、試験情報225を共通化することにより、試験の正確性および再現性が向上する。
以下に、オートモードにおけるシミュレーションシステム1の動作を説明する。
図25ないし図29は、オートモードにおいて表示部24に表示されるGUI画面241を例示する図である。
オートモードが選択されると、表示制御部213は、表示部24にGUI画面241を表示させる。図25に示すGUI画面241には、「テストシナリオ実行ファイルボックス」が設けられており、所望のファイルを指定できるようになっている。
オペレータが「テストシナリオ実行ファイルボックス」に設けられている「選択ボタン」を操作すると、図26に示すように、所定のフォルダが開かれ、選択可能なファイルが表示される。ここに示す例では、「TEST_DEMO.tef」を選択する。
ファイルが選択されると、図27に示すように、「テストシナリオ実行ファイルボックス」に選択されたファイル(ここに示す例では「TEST_DEMO.tef」)が入力される。これにより、シミュレーションにおいて参照される試験情報225が指定される。
試験情報225の指定が終了すると、オペレータは、GUI画面241に設けられている「実行ボタン」を操作して、シミュレーションを開始させる。「実行ボタン」が操作されると、シミュレーションシステム1はオートモードで試験を開始する。
シミュレーション中において、表示制御部213は、適宜、試験情報225を参照し、図28に示すように、「テストシナリオ実行履歴ボックス」にその内容を表示する。なお、図28に示すGUI画面242は、GUI画面241とともに表示部24に表示される画面であって、シミュレーションの状況(模擬動作の状況)を示す画面である。GUI画面242は、オートモードに限らず、マニュアルモードで動作する場合にも表示部24に表示される。
このように、シミュレーションが実行されると、GUI画面242が表示されることにより、オペレータは、実装処理ユニット14mおよびユニット模擬部211の動作状況を容易にモニタリングできる。したがって、基板処理装置10を構成する全ての実装処理ユニット14(ハードウェア)を用意しなくても、接続されている実装処理ユニット14mやプログラムの試験を行うことができる。
また、オートモードでは、GUI画面241も表示されるので、これによっても状況をモニタリングできる。特に、GUI画面242は、通常、リアルタイムにその表示内容が変化するため、オペレータはシミュレート中、常にモニタリングしていなければならない。しかし、GUI画面241は実行順に表示され、過去の状況も表示されたまま残るので、過去の状況も把握できる。
シミュレーションが終了すると、図29に示すように、「テストシナリオ実行履歴ボックス」に「シナリオ終了」と表示し、ステップS35の処理を終了する。
図16に戻って、待機状態において、オペレータが、操作部23を操作することにより、処理を終了する指示情報を入力すると、シミュレーションシステム1は、ステップS36においてYesと判定し、処理を終了する。
以上のように、本実施の形態におけるシミュレーションシステム1は、基板処理装置10を構成する全ての処理ユニット(実装処理ユニット14)を用意することなく、シミュレーションを実行できる。
また、実際に基板を処理する際に動作させるハードウェア構成(基板処理装置10の実際の構成)と、試験機のハードウェア構成(シミュレーションシステム1と実装処理ユニット14mからなる構成)とを一致させて、動作試験を行うことが可能である。
また、シミュレーションシステム1には実装処理ユニット14mを外部装置として接続することが可能とされているので、ソフトウェアの試験のみならず、ハードウェアに対する試験も可能である。すなわち、実装処理ユニット14についての単体試験も可能であり、柔軟な試験を行うことができる。
また、従来は、出荷時において、基板処理装置を構成する全てのハードウェアを工場内に搬入して組み立てた後にしか動作試験を行うことができなかったが。シミュレーションシステム1では、既に搬入された実装処理ユニット14mについて、他の実装処理ユニット14の搬入を待たずに動作試験を行うことが可能である。
このように、シミュレーションシステム1では、オペレータの負担やコストを増大させることなく、充分に動作試験を行えるので、基板処理装置10の品質が向上する。
<2. 第2の実施の形態>
第1の実施の形態では、基板処理装置10を構成する複数の実装処理ユニット14をシミュレータ2に接続する実装処理ユニット14m(外部装置)とそれ以外の実装処理ユニット14(仮想装置)とに分類する情報(分類情報222)を、情報処理装置6においてオペレータが必要な情報を入力することにより作成していた。
図30は、第2の実施の形態におけるシミュレーションシステム1aを示す図である。なお、第1の実施の形態と同様の構成については同一の符号を付し、適宜説明を省略する。
シミュレーションシステム1aは、シミュレータ2の代わりにシミュレータ2aを備えている点が第1の実施の形態におけるシミュレーションシステム1と異なっている。また、シミュレータ2aは、ユニット模擬装置20の代わりにユニット模擬装置20aを備えている点が第1の実施の形態におけるシミュレータ2と異なっている。
図31は、第2の実施の形態におけるユニット模擬装置20aの機能ブロックを示す図である。なお、図31において、第1の実施の形態におけるユニット模擬装置20と同様の構成については、適宜、図示を省略している。
ユニット模擬装置20aは、分類情報222を生成する検出部215を備えている点が、第1の実施の形態におけるユニット模擬装置20と異なっている。
検出部215は、基板処理装置10を構成する全ての実装処理ユニット14がインタフェース模擬装置30に接続されているものと仮定して、シミュレーションが実行される前に、通信部26およびインタフェース模擬装置30を介して全ての実装処理ユニット14に対して問い合わせを行う。そして、この問い合わせに対して応答した実装処理ユニット14については、実際にインタフェース模擬装置30に接続されていると判断して外部装置として分類し、分類情報222を生成する。一方、問い合わせに対して応答のなかった実装処理ユニット14については仮想装置に分類し、分類情報222を生成する。
すなわち、検出部215は、インタフェース模擬装置30(第3通信部35)に接続されている実装処理ユニット14を検出する機能を有しており、この検出結果に応じて分類情報222を生成する。
なお、インタフェース模擬装置30に接続されている実装処理ユニット14mを検出部215が自動的に検出する場合、実装処理ユニット14が接続されているにもかかわらず、当該実装処理ユニット14が故障等により応答できなくても、当該実装処理ユニット14の動作がユニット模擬装置20aによって模擬されてしまう。この場合、オペレータは、当該実装処理ユニット14(ハードウェア)が正常に動作したものと誤認する可能性がある。
したがって、本実施の形態におけるユニット模擬装置20aでは、自動検出により作成された分類情報222を表示制御部213が参照して表示部24に表示させる。これにより、オペレータは、インタフェース模擬装置30に接続した実装処理ユニット14が、正しく検出されているか否かを確認できる。
分類情報222が検出部215によって生成され記憶装置22に記憶された後は、第1の実施の形態と同様であるので、説明を省略する。
以上のように、第2の実施の形態におけるシミュレーションシステム1aは、シミュレーションシステム1aに接続されている実装処理ユニット14mを検出する検出部215を備えることにより、オペレータが情報処理装置6を操作して分類情報222を生成する必要がない。したがって、オペレータの負担を軽減できる。
なお、本実施の形態では、ユニット模擬装置20aがインタフェース模擬装置30に接続されている実装処理ユニット14の検出を行うとして説明したが、このような検出処理はインタフェース模擬装置30が行って、その結果をユニット模擬装置20,20aに送信するように構成してもよい。すなわち、インタフェース模擬装置30が、第3通信部35に実装処理ユニット14mが接続されているか否かを検出してもよい。
<3. 第3の実施の形態>
第1の実施の形態では、基板処理装置10の制御ユニット11を、一般的なパーソナルコンピュータであるコンピュータ4によって模擬していた。しかし、制御ユニット11は、必ずしも模擬されなくてもよい。
図30は、第3の実施の形態におけるシミュレーションシステム1bを示す図である。第3の実施の形態におけるシミュレーションシステム1bは、コンピュータ4の代わりに制御ユニット4aを備える点がシミュレーションシステム1と異なる。
本来、制御ユニット11はネットワーク9に接続する機能を有している。したがって、コンピュータ4の代わりに、制御ユニット11と同じ制御ユニット4aをネットワーク9に接続することも可能である。
制御ユニット11は、操作ユニット13と同様に、基板処理装置10のバリエーションにかかわらず、共通に用いられるユニットである。すなわち、シミュレーションシステム1bにおいて制御ユニット4aを用いるように構成したとしても、基板処理装置10のバリエーションに応じて、制御ユニット4aをいくつも準備しておいて取り替える必要はない。したがって、シミュレーションシステム1bのように、制御ユニット11をそのまま制御ユニット4aとして採用したとしても、実装処理ユニット14のような問題は発生しない。
以上のように、第3の実施の形態におけるシミュレーションシステム1bは、シミュレータ2に接続する制御装置として、基板処理装置10の制御ユニット4aを用いることにより、第1の実施の形態におけるシミュレーションシステム1と同様の効果を得ることができる。
また、コンピュータ4の代わりに制御ユニット4aを用いることにより、第3の実施の形態におけるシミュレーションシステム1bは、第1の実施の形態におけるシミュレーションシステム1に比べて、より実機に近い環境で試験を行うことができる。
<4. 変形例>
以上、本発明の実施の形態について説明してきたが、本発明は上記実施の形態に限定されるものではなく様々な変形が可能である。
例えば、上記実施の形態では、制御ユニット11の機能を有するコンピュータ4(または制御ユニット4a)と、ユニット模擬装置20とを別々のコンピュータで実現していたが、これを1台のコンピュータで実現することも可能である。
また、ユニット模擬装置20とインタフェース模擬装置30との間のネットワークは、ネットワーク9を兼用しなくてもよい。すなわち、ユニット模擬装置20とインタフェース模擬装置30とを別途ケーブルで接続してもよい。あるいは、インタフェース模擬装置30をユニット模擬装置20に収納可能なインタフェースボードとして構成し、シミュレータ2を一体化された装置として構成することも可能である。その場合は、シミュレータ2を小型化でき、しいてはシミュレーションシステム1を小型化できる。
また、上記実施の形態に示す各工程は例示であって、これらに限定されるものではない。例えば、同様の効果が得られるのであれば、各工程の内容および順序等が適宜変更されてもよい。
基板処理装置の基本構成を示す図である。 第1の実施の形態におけるシミュレーションシステムと情報処理装置とを示す図である。 第1の実施の形態におけるユニット模擬装置の構成を示す図である。 第1の実施の形態におけるユニット模擬装置の機能ブロックを示す図である。 インタフェース模擬装置の構成を示す図である。 インタフェース模擬装置の機能ブロックを示す図である。 コンピュータの構成を示す図である。 操作ユニットの構成を示す図である。 情報処理装置の構成を示す図である。 基礎ファイルに含まれるアドレス基礎ファイルを例示する図である。 基礎ファイルに含まれる温調器基礎ファイルを例示する図である。 基礎ファイルに含まれる干渉判定基礎ファイルを例示する図である。 定義リストにおいて模擬動作を定義する例を示す図である。 情報処理装置が定義リストを作成する動作を示す流れ図である。 情報処理装置が定義リストを作成する動作を示す流れ図である。 シミュレーションシステムを用いてシミュレーションを実行する方法を示す流れ図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 試験情報を作成する間に、表示部に表示されるGUI画面を例示する図である。 オートモードにおいて表示部に表示されるGUI画面を例示する図である。 オートモードにおいて表示部に表示されるGUI画面を例示する図である。 オートモードにおいて表示部に表示されるGUI画面を例示する図である。 オートモードにおいて表示部に表示されるGUI画面を例示する図である。 オートモードにおいて表示部に表示されるGUI画面を例示する図である。 第2の実施の形態におけるシミュレーションシステムを示す図である。 第2の実施の形態におけるユニット模擬装置の機能ブロックを示す図である。 第3の実施の形態におけるシミュレーションシステムを示す図である。
符号の説明
1,1a,1b シミュレーションシステム
10 基板処理装置
11 制御ユニット
12 インタフェースユニット
13 操作ユニット
14,141,142,14m,14n 実装処理ユニット
2,2a シミュレータ
20,20a ユニット模擬装置
210 データ転送部
211 ユニット模擬部
212 デバイス模擬部
213 表示制御部
214 情報生成部
215 検出部
22 記憶装置
220,320 プログラム
221 定義リスト
222 分類情報
223 入力情報
224 出力情報
225 試験情報
25 ディスク装置
26 通信部
30 インタフェース模擬装置
310,311,312,313 データ転送部
32 記憶装置
4 コンピュータ
421 設定ファイル
4a 制御ユニット
5 操作ユニット
6 情報処理装置

Claims (4)

  1. 基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、
    前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
    前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
    前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
    を備え、
    前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とするシミュレータ。
  2. 基板処理装置を試験するシミュレーションシステムであって、
    前記基板処理装置のプログラムが動作することにより前記基板処理装置の制御ユニットの機能を有するコンピュータと、
    前記コンピュータに接続されるシミュレータと、
    を備え、
    前記シミュレータは、
    前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
    前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
    前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
    を備え、
    前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とするシミュレーションシステム。
  3. 基板処理装置を試験するシミュレーションシステムであって、
    前記基板処理装置の制御ユニットと、
    前記制御ユニットに接続されるシミュレータと、
    を備え、
    前記シミュレータは、
    前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
    前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
    前記コンピュータから得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
    を備え、
    前記インタフェース部は、前記インタフェース部に接続された実装処理ユニットと前記コンピュータとの間のデータ通信を仲介するとともに、前記コンピュータと前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬することを特徴とするシミュレーションシステム。
  4. コンピュータ読み取り可能なプログラムであって、前記プログラムの前記コンピュータによる実行は、前記コンピュータを、基板処理装置の制御ユニットとしての機能を有する制御装置に接続されるシミュレータであって、
    前記基板処理装置を構成する複数の実装処理ユニットを外部装置と仮想装置とに分類する分類情報を記憶する記憶部と、
    前記分類情報において外部装置として分類された実装処理ユニットが接続されるインタフェース部と、
    前記制御装置から得られる制御情報に基づいて、前記分類情報において仮想装置として分類された実装処理ユニットの動作を、前記基板処理装置を構成する複数の実装処理ユニットの模擬動作を定義する定義情報を参照しつつ、模擬するユニット模擬部と、
    を備え、
    前記インタフェース部によって、前記インタフェース部に接続された実装処理ユニットと前記制御装置との間のデータ通信を仲介するとともに、前記制御装置と前記ユニット模擬部との間で、前記基板処理装置における前記制御ユニットと前記ユニット模擬部によって模擬される実装処理ユニットとの間のデータ通信を模擬するシミュレータとして機能させることを特徴とするプログラム。
JP2007251055A 2007-09-27 2007-09-27 シミュレータ、シミュレーションシステムおよびプログラム Pending JP2009081372A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007251055A JP2009081372A (ja) 2007-09-27 2007-09-27 シミュレータ、シミュレーションシステムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007251055A JP2009081372A (ja) 2007-09-27 2007-09-27 シミュレータ、シミュレーションシステムおよびプログラム

Publications (1)

Publication Number Publication Date
JP2009081372A true JP2009081372A (ja) 2009-04-16

Family

ID=40655879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007251055A Pending JP2009081372A (ja) 2007-09-27 2007-09-27 シミュレータ、シミュレーションシステムおよびプログラム

Country Status (1)

Country Link
JP (1) JP2009081372A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015191600A (ja) * 2014-03-28 2015-11-02 川崎重工業株式会社 探索システム
JP2019144700A (ja) * 2018-02-16 2019-08-29 Necプラットフォームズ株式会社 試験システム、試験方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015191600A (ja) * 2014-03-28 2015-11-02 川崎重工業株式会社 探索システム
JP2019144700A (ja) * 2018-02-16 2019-08-29 Necプラットフォームズ株式会社 試験システム、試験方法およびプログラム

Similar Documents

Publication Publication Date Title
CN109597374B (zh) 用于调试的i/o虚拟化
CN104007957B (zh) 在编辑期间显示实时数据的改进图形用户界面编辑器
US7392165B2 (en) Simulation system for multi-node process control systems
KR102430283B1 (ko) 소프트웨어 애플리케이션 프로그래밍 인터페이스(api)로 자동화된 시험 특징의 사용자 제어 기법
EP2169541B1 (en) Method, system and graphical user interface for configuring a simulator to simulate a plurality of devices
JP5863949B2 (ja) 空調機試験システム、空調システムシミュレータ及びプログラム
CN107491061A (zh) 一种商用车obd诊断设备的网络自动化测试系统及其方法
JP2004509425A (ja) テストコントローラアクセスデータを用いて回路をテスト及び/または診断する方法及びシステム
CN101226564A (zh) 用于轮机控制仿真的系统和方法
US8793668B2 (en) Protocol independent programming environment
JP2002535773A (ja) 組み込み型のオペーレティングシステムを有する装置をテストして妥当性を検査するためのシステム及び方法
WO2009096322A1 (ja) プログラムテスト装置、およびプログラム
CN106094750A (zh) 分布式控制系统的模拟调试方法
CN109901830B (zh) 一种用于scada系统开发的信号配置方法与系统
JP2009081372A (ja) シミュレータ、シミュレーションシステムおよびプログラム
CN113612651A (zh) IO-Link设备测试装置
RU2294015C2 (ru) Способ автоматического моделирования системы управления процессом и система управления процессом
CN113924532A (zh) 用于监测驱动器的状况的方法和系统
CN102317879A (zh) 用于操纵技术设备的至少一部分的自动化的方法和系统
CN116679662A (zh) 一种测试系统及方法
JP2005069859A (ja) 検査装置及び波形表示装置
JP2008090394A (ja) シミュレータ、シミュレーションシステムおよびプログラム
JP2008090393A (ja) シミュレータ、シミュレーションシステムおよびプログラム
US20080263523A1 (en) Method for testing engineering software
JP2008084073A (ja) 情報処理装置およびプログラム