(57)【要約】【課題】製品の組立手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる場合であっても、その製品を組み立てる工程を設計する。【解決手段】工程設計装置１は、手順データ中の各作業工程（ＰＰ）について、特殊工程（ＳＰ）であるかを判定し、特殊工程（ＳＰ）と判定した作業工程（ＰＰ）を強調表示して、ユーザに、その作業工程（ＰＰ）を実行させる設備（Ｒ）を決定させる。【選択図】図１
2019106043.tif 000002
【特許請求の範囲】
【請求項１】
製品を組み立て、または、分解する作業手順に含まれる複数の作業工程の各々について、前記作業工程を実行する実行主体を対応付ける工程設計装置であって、
各々が、少なくとも１つの設備により実行可能な作業工程である、複数の標準工程を定義した標準工程データを取得する標準工程取得部と、
前記設備ごとに、前記設備が実行可能な作業工程を定義した設備データを取得する設備取得部と、
前記製品ごとに、前記製品を組み立て、または、分解するための複数の作業工程を、実行順序と共に定義した手順データを取得する手順取得部と、
前記手順データにおいて定義されている前記複数の作業工程の各々について、前記標準工程データに含まれているかを判定する工程判定部と、
前記手順データの表示画面において、前記工程判定部により前記標準工程データに含まれていないと判定された作業工程である特殊工程を強調表示する表示制御部と、を備えることを特徴とする工程設計装置。
【請求項２】
前記表示制御部により強調表示された前記特殊工程について、前記特殊工程を実行させる設備を設定するユーザ操作を受け付ける受付部と、
前記手順データにおいて実行順序と共に定義されている前記複数の作業工程のうち、（１）前記工程判定部により前記標準工程データに含まれていると判定された作業工程に、前記設備データにおいて前記作業工程を実行可能な設備として定義されている設備を、実行主体として対応付け、（２）前記特殊工程に、前記ユーザ操作により設定された設備を、実行主体として対応付けた、設計工程データを生成する設定部と、をさらに備えることを特徴とする請求項１に記載の工程設計装置。
【請求項３】
前記設備データにおいて、設備と作業工程との組合せごとに、前記設備に前記作業工程を実行させるために予め値を設定しておく必要のある項目が定義され、
前記設計工程データにおける前記設備と前記作業工程との組合せについて、前記設備データにおいて前記組合せに対して定義されている前記項目に値が設定されているかを判定する項目判定部をさらに備え、
前記表示制御部は、前記項目判定部により値が未設定だと判定された項目に対して値の設定を促す情報を表示し、
前記受付部は、前記項目に値を入力するユーザ操作を受け付け、
前記設定部は、前記ユーザ操作により入力された値を設定した前記項目を、前記設計工程データにおける前記組合せに対応付けることを特徴とする請求項２に記載の工程設計装置。
【請求項４】
前記設備データにおいて、前記設備ごとに、少なくとも（Ａ）前記設備の初期状態と、（Ｂ）前記設備が実行可能な作業工程を前記設備が実行している状態である実行状態と、（Ｃ）前記実行状態において実行される作業工程を前記設備が実行可能な状態である待機状態と、（Ｄ）前記初期状態、前記実行状態、および、前記待機状態の間の遷移関係と、を記述した状態遷移情報が定義され、
前記設計工程データにおける前記設備と前記作業工程との組合せについて、前記設備に前記作業工程を実行させる時点で、前記設備が、前記設備の前記状態遷移情報において定義されている前記作業工程の待機状態にあるかを判定する状態判定部と、
前記状態判定部により前記待機状態にないと判定された組合せの作業工程について、前記設備の前記状態遷移情報において、前記初期状態または前記作業工程の実行状態から、前記作業工程の待機状態へと遷移するまでに、前記設備が至る状態において実行される作業工程である準備工程を取得する準備工程取得部と、
前記準備工程取得部により取得された前記準備工程を、前記状態判定部により前記待機状態にないと判定された組合せの作業工程の前に前記設備が実行すべき作業工程として、前記設計工程データに追加する準備工程追加部と、をさらに備えることを特徴とする請求項２または３に記載の工程設計装置。
【請求項５】
前記設備データにおいて、設備および作業工程の組合せごとに、前記設備が前記作業工程を実行する際に必要な入力要素が定義され、
前記設計工程データにおける前記設備と前記作業工程との組合せについて、前記設備に前記作業工程を実行させる時点で、前記設備に、前記設備データにおいて前記組合せに対して定義されている入力要素が供給されているかを判定する部品判定部と、
前記部品判定部により前記入力要素が供給されていないと判定された組合せの作業工程の前に実行されるべき作業工程として、前記入力要素を前記設備に供給する作業工程である供給工程を、前記設計工程データに追加する供給工程追加部と、をさらに備えることを特徴とする請求項２から４のいずれか１項に記載の工程設計装置。
【請求項６】
請求項１から５のいずれか１項に記載の工程設計装置により取得される前記手順データをユーザが生成するのを支援する手順生成装置であって、
前記製品ごとに、前記製品の３次元形状、および、前記製品を構成する１つ以上のワークの各々の３次元形状をユーザに提示する形状提示部と、
前記標準工程データにおいて定義されている複数の標準工程の各々をユーザに提示する工程提示部と、を備えることを特徴とする手順生成装置。
【請求項７】
製品を組み立て、または、分解する作業手順に含まれる複数の作業工程の各々について、前記作業工程を実行する実行主体を対応付ける工程設計装置の制御方法であって、
各々が、少なくとも１つの設備により実行可能な作業工程である、複数の標準工程を定義した標準工程データを取得する標準工程取得ステップと、
前記設備ごとに、前記設備が実行可能な作業工程を定義した設備データを取得する設備取得ステップと、
前記製品ごとに、前記製品を組み立て、または、分解するための複数の作業工程を、実行順序と共に定義した手順データを取得する手順取得ステップと、
前記手順データにおいて定義されている前記複数の作業工程の各々について、前記標準工程データに含まれているかを判定する工程判定ステップと、
前記手順データの表示画面において、前記工程判定ステップにて前記標準工程データに含まれていないと判定された作業工程である特殊工程を強調表示する表示制御ステップと、を含むことを特徴とする制御方法。
【請求項８】
請求項１から５のいずれか１項に記載の工程設計装置としてコンピュータを機能させるための情報処理プログラムであって、前記各部としてコンピュータを機能させるための情報処理プログラム。
【請求項９】
請求項８に記載の情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製品を組み立て、または、分解する作業手順に含まれる複数の作業工程の各々について、前記作業工程を実行する実行主体を対応付ける工程設計装置等に関する。
【背景技術】
【０００２】
従来、製品の設計情報等から、当該製品を組み立てるための複数の作業工程、各作業工程の実行順序、および、各作業工程の実行主体等を検討し、製品を組み立てるのに最適な工程を設計しようとする工程設計装置について、研究が進められている。
【０００３】
例えば、下掲の特許文献１には、工程設計支援装置が、ロボットシミュレータにより計算される組立・分解作業コストだけでなく、作業者がルール化して定義する、工程全体を最適化するための最適化工程分割情報を用いることが開示されている。
【０００４】
また、特許文献２には、作業要素の惹起条件と作業完了後の出力先を含む作業要素情報と、設備要素と作業要素とのリンク情報と、を記憶している生産システムシミュレーション装置が開示されている。この装置は、第１の設備要素とリンク情報でリンクされている第１の作業要素の作業要素情報の惹起条件の充足に応じて、第１の設備要素が作業を実行し、第１の作業要素の作業要素情報の作業完了後の出力先に出力するようにしてシミュレーションを実行する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−４４５４７号公報（２００３年２月１４日公開）
【特許文献２】特開２０１５−４９８１９号公報（２０１５年３月１６日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述のような従来技術は、「実際の製品の組立には、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる」という視点を欠いているという問題がある。すなわち、特許文献１の技術は、ユーザが定義する「組立・分解工程全体を最適化するためのルール」に従って、工程全体を、予め定義されている工程に分割するのであり、つまり、工程は予め定義されていることが前提となっている。また、特許文献２の技術は、作業要素情報において、製品の生産に係る全ての作業要素について、各作業要素の惹起条件、作業完了後の出力内容、および、標準作業時間が事前に定義されていなければ、シミュレーションを実行することができない。
【０００７】
本発明の一態様は、製品の組立手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる場合であっても、その製品を組み立てる工程を設計することのできる工程設計装置等を実現することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本発明の一態様に係る工程設計装置は、製品を組み立て、または、分解する作業手順に含まれる複数の作業工程の各々について、前記作業工程を実行する実行主体を対応付ける工程設計装置であって、各々が、少なくとも１つの設備により実行可能な作業工程である、複数の標準工程を定義した標準工程データを取得する標準工程取得部と、前記設備ごとに、前記設備が実行可能な作業工程を定義した設備データを取得する設備取得部と、前記製品ごとに、前記製品を組み立て、または、分解するための複数の作業工程を、実行順序と共に定義した手順データを取得する手順取得部と、前記手順データにおいて定義されている前記複数の作業工程の各々について、前記標準工程データに含まれているかを判定する工程判定部と、前記手順データの表示画面において、前記工程判定部により前記標準工程データに含まれていないと判定された作業工程である特殊工程を強調表示する表示制御部と、を備えることを特徴としている。
【０００９】
前記の構成によれば、前記工程設計装置は、前記手順データにおいて定義されている前記複数の作業工程の各々について、前記標準工程データに含まれているかを判定し、前記標準工程データに含まれていないと判定した作業工程を特殊工程として強調表示する。
【００１０】
ここで、実際の製品の組立および分解に際しては、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれていることが通常である。
【００１１】
前記工程設計装置は、そのような「予め定義しておくことが困難な、その製品固有の特殊な作業工程」が、つまり、前記標準工程データにおいて定義されている標準工程ではない作業工程が、前記手順データに含まれているかを判定する。そして、前記工程設計装置は、前記手順データに含まれている「予め定義しておくことが困難な、その製品固有の特殊な作業工程」を、特殊工程として強調表示してユーザに通知し、そのような作業工程についての検討をユーザに促す。
【００１２】
したがって、前記工程設計装置は、製品の組立等の手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる場合にも、ユーザにそのような作業工程に対する検討を促し、その製品の組立等の工程を設計できるとの効果を奏する。
【００１３】
本発明の一態様に係る工程設計装置は、前記表示制御部により強調表示された前記特殊工程について、前記特殊工程を実行させる設備を設定するユーザ操作を受け付ける受付部と、前記手順データにおいて実行順序と共に定義されている前記複数の作業工程のうち、（１）前記工程判定部により前記標準工程データに含まれていると判定された作業工程に、前記設備データにおいて前記作業工程を実行可能な設備として定義されている設備を、実行主体として対応付け、（２）前記特殊工程に、前記ユーザ操作により設定された設備を、実行主体として対応付けた、設計工程データを生成する設定部と、をさらに備えていてもよい。
【００１４】
前記の構成によれば、前記工程設計装置は、前記手順データにおいて実行順序と共に定義されている前記複数の作業工程のうち、（１）前記標準工程に、前記設備データに定義されている設備を対応付け、（２）前記特殊工程に、ユーザにより設定された設備を対応付けた、設計工程データを生成する。
【００１５】
前記工程設計装置は、「予め定義しておくことが困難な、その製品固有の特殊な作業工程」を含む作業手順についても、その作業手順中の各作業工程に対して実行主体を対応付けた設計工程データを生成する。
【００１６】
したがって、前記工程設計装置は、製品の組立等の手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる場合にも、手順中の各作業工程に対して実行主体を対応付けた工程を設計することができるとの効果を奏する。
【００１７】
本発明の一態様に係る工程設計装置は、前記設備データにおいて、設備と作業工程との組合せごとに、前記設備に前記作業工程を実行させるために予め値を設定しておく必要のある項目が定義され、前記設計工程データにおける前記設備と前記作業工程との組合せについて、前記設備データにおいて前記組合せに対して定義されている前記項目に値が設定されているかを判定する項目判定部をさらに備え、前記表示制御部は、前記項目判定部により値が未設定だと判定された項目に対して値の設定を促す情報を表示し、前記受付部は、前記項目に値を入力するユーザ操作を受け付け、前記設定部は、前記ユーザ操作により入力された値を設定した前記項目を、前記設計工程データにおける前記組合せに対応付けてもよい。
【００１８】
前記の構成によれば、前記工程設計装置は、前記設備に前記作業工程を実行させるために予め値を設定しておく必要のある項目に値が設定されているかを判定し、前記項目に値が設定されていないと判定すると、値の設定をユーザに促す。そして、前記工程設計装置は、ユーザが入力した値を前記項目に設定して、前記設備が前記作業工程を実行できるようにする。
【００１９】
したがって、前記工程設計装置は、製品の組立等の手順中に含まれる各作業工程を各作業工程の実行主体として対応付けた設備に実行させるために必要な前記項目への値の設定を行ない、各作業工程を、各作業工程に対応付けた設備に実行させることができるとの効果を奏する。
【００２０】
本発明の一態様に係る工程設計装置は、前記設備データにおいて、前記設備ごとに、少なくとも（Ａ）前記設備の初期状態と、（Ｂ）前記設備が実行可能な作業工程を前記設備が実行している状態である実行状態と、（Ｃ）前記実行状態において実行される作業工程を前記設備が実行可能な状態である待機状態と、（Ｄ）前記初期状態、前記実行状態、および、前記待機状態の間の遷移関係と、を記述した状態遷移情報が定義され、前記設計工程データにおける前記設備と前記作業工程との組合せについて、前記設備に前記作業工程を実行させる時点で、前記設備が、前記設備の前記状態遷移情報において定義されている前記作業工程の待機状態にあるかを判定する状態判定部と、前記状態判定部により前記待機状態にないと判定された組合せの作業工程について、前記設備の前記状態遷移情報において、前記初期状態または前記作業工程の実行状態から、前記作業工程の待機状態へと遷移するまでに、前記設備が至る状態において実行される作業工程である準備工程を取得する準備工程取得部と、前記準備工程取得部により取得された前記準備工程を、前記状態判定部により前記待機状態にないと判定された組合せの作業工程の前に前記設備が実行すべき作業工程として、前記設計工程データに追加する準備工程追加部と、をさらに備えてもよい。
【００２１】
前記の構成によれば、前記工程設計装置は、前記設備に前記作業工程を実行させる時点で、前記設備が、前記作業工程の待機状態にあるかを判定する。そして、前記工程設計装置は、前記作業工程を実行させる時点で、前記設備が待機状態にないと判定すると、待機状態へと遷移するまでに前記設備が至る状態において実行される作業工程である準備工程を取得する。前記工程設計装置は、取得した前記準備工程を、前記待機状態にないと判定した作業工程の前に前記設備が実行すべき作業工程として、前記設計工程データに追加する。
【００２２】
したがって、前記工程設計装置は、製品の組立等の手順中に含まれる各作業工程について、各設備が各作業工程を実行する前に実行しておくべき準備工程を各設備に実行させることにより、各作業工程を、各作業工程に対応付けた設備に実行させることができるとの効果を奏する。
【００２３】
本発明の一態様に係る工程設計装置は、前記設備データにおいて、設備および作業工程の組合せごとに、前記設備が前記作業工程を実行する際に必要な入力要素が定義され、前記設計工程データにおける前記設備と前記作業工程との組合せについて、前記設備に前記作業工程を実行させる時点で、前記設備に、前記設備データにおいて前記組合せに対して定義されている入力要素が供給されているかを判定する部品判定部と、前記部品判定部により前記入力要素が供給されていないと判定された組合せの作業工程の前に実行されるべき作業工程として、前記入力要素を前記設備に供給する作業工程である供給工程を、前記設計工程データに追加する供給工程追加部と、をさらに備えてもよい。
【００２４】
前記の構成によれば、前記工程設計装置は、前記設備に前記作業工程を実行させる時点で、前記設備に、前記入力要素が供給されているかを判定する。そして、前記工程設計装置は、前記入力要素が供給されていないと判定された作業工程の前に実行されるべき作業工程として、前記入力要素を前記設備に供給する作業工程である供給工程を、前記設計工程データに追加する。
【００２５】
したがって、前記工程設計装置は、製品の組立等の手順中に含まれる各作業工程について、各設備が各作業工程を実行する前に各設備に供給されておくべき入力要素を前記供給工程において供給することにより、各作業工程を、各作業工程に対応付けた設備に実行させることができるとの効果を奏する。
【００２６】
本発明の一態様に係る手順生成装置は、前記の工程設計装置により取得される前記手順データをユーザが生成するのを支援する手順生成装置であって、前記製品ごとに、前記製品の３次元形状、および、前記製品を構成する１つ以上のワークの各々の３次元形状をユーザに提示する形状提示部と、前記標準工程データにおいて定義されている複数の標準工程の各々をユーザに提示する工程提示部と、を備えてもよい。
【００２７】
前記の構成によれば、前記手順生成装置は、（１）前記製品ごとの、前記製品の３次元形状、および、前記製品を構成する１つ以上のワークの各々の３次元形状と、（２）標準工程と、をユーザに提示する。
【００２８】
したがって、前記手順生成装置は、ユーザが、製品等の３次元形状を参照しながら、前記標準工程に即して、前記手順データを生成するのを支援することができるとの効果を奏する。
【００２９】
上記の課題を解決するために、本発明の一態様に係る制御方法は、製品を組み立て、または、分解する作業手順に含まれる複数の作業工程の各々について、前記作業工程を実行する実行主体を対応付ける工程設計装置の制御方法であって、各々が、少なくとも１つの設備により実行可能な作業工程である、複数の標準工程を定義した標準工程データを取得する標準工程取得ステップと、前記設備ごとに、前記設備が実行可能な作業工程を定義した設備データを取得する設備取得ステップと、前記製品ごとに、前記製品を組み立て、または、分解するための複数の作業工程を、実行順序と共に定義した手順データを取得する手順取得ステップと、前記手順データにおいて定義されている前記複数の作業工程の各々について、前記標準工程データに含まれているかを判定する工程判定ステップと、前記手順データの表示画面において、前記工程判定ステップにて前記標準工程データに含まれていないと判定された作業工程である特殊工程を強調表示する表示制御ステップと、を含むことを特徴としている。
【００３０】
前記の方法によれば、前記制御方法は、前記手順データにおいて定義されている前記複数の作業工程の各々について、前記標準工程データに含まれているかを判定し、前記標準工程データに含まれていないと判定した作業工程を特殊工程として強調表示する。
【００３１】
ここで、実際の製品の組立および分解に際しては、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれていることが通常である。
【００３２】
前記制御方法は、そのような「予め定義しておくことが困難な、その製品固有の特殊な作業工程」が、つまり、前記標準工程データにおいて定義されている標準工程ではない作業工程が、前記手順データに含まれているかを判定する。そして、前記制御方法は、前記手順データに含まれている「予め定義しておくことが困難な、その製品固有の特殊な作業工程」を、特殊工程として強調表示してユーザに通知し、そのような作業工程についての検討をユーザに促す。
【００３３】
したがって、前記制御方法は、製品の組立等の手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる場合にも、ユーザにそのような作業工程に対する検討を促し、その製品の組立等の工程を設計できるとの効果を奏する。
【発明の効果】
【００３４】
本発明の一態様によれば、製品の組立手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程が含まれる場合であっても、その製品を組み立てる工程を設計することができるとの効果を奏する。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施形態１に係る工程設計装置などの要部構成等を示すブロック図である。
【図２】図１の工程設計装置を含む生産シュミレーションシステムの全体概要を示す図である。
【図３】図１の工程設計装置が実行する処理の概要を説明する図である。
【図４】標準工程データベースの概要を説明する図である。
【図５】設備データベースの概要を説明する図である。
【図６】設備データ中の要設定項目のうち、入出力要素から独立した項目の一例を示す図である。
【図７】設備データ中の要設定項目のうち、入出力要素に係る項目の一例を示す図である。
【図８】設備データ中の要設定項目のうち、入出力要素に係る項目の、図７に示したのとは別の項目の一例を示す図である。
【図９】設備データ中の要設定項目のうち、入出力要素に係る項目の、図７および図８に示したのとは別の項目の一例を示す図である。
【図１０】設備データ中の状態マシン図の一例を示す図である。
【図１１】図１０に例示した状態マシン図における状態について、状態ごとに、内容、および、その状態において呼出可能なサービスを説明する表である。
【図１２】図２に例示した生産シュミレーションシステムの全体において実行される処理の概要を説明するフロー図である。
【図１３】設備レイアウトの作成方法の一例を説明する図である。
【図１４】製品ごとの手順データを作成する方法の一例を説明する図である。
【図１５】手順データにおける各作業工程の記述例を示す図である。
【図１６】製品ごとの手順データに含まれる標準工程および特殊工程の一例を示す図である。
【図１７】図１の工程設計装置が実行する処理の一部を例示するフロー図である。
【図１８】図１の工程設計装置が実行する処理の、図１７に例示したのとは異なる部分を例示するフロー図である。
【図１９】図１の工程設計装置が実行する処理の、図１７および図１８に例示したのとは異なる部分を例示するフロー図である。
【図２０】図１の工程設計装置が処理実行中に表示装置に表示させる画面である工程設計画面の一例を示す図である。
【図２１】図２０の工程設計画面におけるシーケンス記述欄の表示例および表示内容を説明する図である。
【図２２】図２０の工程設計画面における特殊工程の表示例を示す図である。
【図２３】図２０の工程設計画面において、特殊工程への作業主体の対応付けをユーザに求める表示例を示す図である。
【図２４】図１８のＳ３−１０のユーザ操作を受け付けた後の、図２０の工程設計画面の表示例を示す図である。
【図２５】未設定の要設定項目について、ユーザに入力を促す画面の一例を示す図である。
【図２６】手順データにおける作業工程に、準備工程および供給工程の少なくとも一方を追加する前後のシーケンス記述欄の一例を示す図である。
【図２７】設備レイアウト上のユーザ操作から、要設定項目に値を設定する例を示す図である。
【発明を実施するための形態】
【００３６】
〔実施形態１〕
以下、本発明の一側面に係る実施の形態（以下、「本実施形態」とも表記する）を、図１から図２７に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本発明の一態様に係る工程設計装置１についての理解を容易にするため、先ず、工程設計装置１を含む生産シュミレーションシステムＳｙｓの概要を、図２を用いて説明する。
【００３７】
§１．適用例
（本実施形態に係る生産シュミレーションシステムの概要）
製造要求が、従来までの同一製品の大量生産から、多品種少量生産、マスカスタマイズ生産へと、近年変化している。新興国の人件費の高騰と国内人口減少による人材確保の難しさとから、様々な作業工程ＰＰに対応できるロボットなどを利用した設備要素（ロボット利用生産設備）に期待が寄せられている。
【００３８】
このような多品種少量生産、マスカスタマイズ生産向けのロボット利用生産設備では、新しい製品の生産に対応するための、物理的な設備構成の変更、および、そのための追加投資は少ない。しかしながら、ロボット利用生産設備においては、依然として、ロボット利用生産設備を動作させる制御ソフトウェアの変更には大きな労力を必要とする。
【００３９】
そこで、生産シュミレーションシステムＳｙｓにおいては、ライブラリ（つまり、データベース）に複数の設備コンポーネント（設備Ｒに対応する仮想設備）を予め用意しておく。そして、任意の設備コンポーネントを仮想生産空間上にレイアウトする（配置する）ことにより、容易に生産設備のレイアウト案を作成することができる。
【００４０】
また、生産シュミレーションシステムＳｙｓは、「嵌め合せ」「ねじ締め」といった「製品の生産手順上一般的に必要とされる各作業工程（標準工程ＣＰ）」を実現するための制御プログラムを、ライブラリにおいて、設備コンポーネントに対応付けている。さらに、生産シュミレーションシステムＳｙｓは、そのような各作業工程についての諸元リストを標準定義している。生産シュミレーションシステムＳｙｓは、設備コンポーネント（より正確には、設備Ｒを定義した設備データＤｒ）、および、製品の生産手順データ（手順データＤｐ）を、そのような「標準定義された作業工程（標準工程ＣＰ）」と、組み合わせて利用する。
【００４１】
生産シュミレーションシステムＳｙｓは、設備コンポーネント（より正確には、設備データＤｒ）と、製品の生産手順データ（手順データＤｐ）と、を照合する。生産シュミレーションシステムＳｙｓは、両者を照合することにより、実現したい製品の生産手順に必要とされる生産設備レイアウトと、その生産設備レイアウトにその生産手順を実行させる制御プログラムと、を容易に作成することができる。そして、生産シュミレーションシステムＳｙｓは、その生産設備レイアウト（より正確には、その生産設備レイアウト中の設備コンポーネント）をその制御プログラムに従って動作させてシミュレーションを実施し、生産設備のレイアウト案を検証することができる。
【００４２】
ここで、実際の製品の組立においては、通常、標準定義された作業工程（標準工程ＣＰ）では対応できない、「その製品固有の特殊な作業工程（特殊工程ＳＰ）」が含まれている。そこで、生産シュミレーションシステムＳｙｓにおいては、そのような特殊工程ＳＰについても、ユーザが、システムの指示に従って効率的に必要な制御プログラムを追加することができるようにしている。
【００４３】
（本実施形態に係る工程設計装置が実現する動作の一例）
ロボットを含む複数の設備要素（設備Ｒ）が狭い空間内で動作する組立セル等では、設備要素間の干渉回避のため、設備要素（例えば、ロボットなどの設備Ｒ）の動作軌跡を頻繁に調整する必要がある。しかしながら、設備要素の動作軌跡を変更した場合、前記組立セルが所望の成果を実現するのに要する作業時間は、大きく変動する傾向がある。
【００４４】
そのため、設備要素間の干渉の発生有無および生産能力を把握するには、具体的な制御プログラムをロボットエミュレータなどの具体的な設備シミュレータ／エミュレータ（例えば、生産シミュレーション装置７）において実行させてみることが必要となる。
【００４５】
従来、ライブラリ内の設備要素について、１つ以上の標準的な作業工程（標準工程ＣＰ）の各々を実行させるための１つ以上の制御プログラムを事前定義しておき、それらを組み合わせることで迅速に正確な挙動シミュレーションを行う試みがなされている。
【００４６】
しかしながら、実際の製品の組立工程には、標準工程ＣＰ以外の作業工程（具体的には、事前定義しておくことが困難な、その製品固有の特殊な作業工程（特殊工程ＳＰ））が、含まれることが一般的である。すなわち、製品を構成する部品は、製品ごとに形状および材質が千差万別であり、これらの部品を用いて実際の製品を組み立てる（生産する）ための組立作業手順には、標準工程ＣＰだけではなく、特殊工程ＳＰが含まれていることが多い。具体的には、実際の製品の組立作業手順には、「ねじ止め」、「重ね合せ」のような一般的な作業工程（標準工程ＣＰ）だけではなく、その製品に固有の特殊な作業工程である特殊工程ＳＰが含まれることが多い。
【００４７】
そのため、ライブラリの設備要素に事前定義された挙動（標準工程ＣＰ）だけでは、実際の製品を組み立てるための制御プログラムを生成することが困難である。そこで、生産シュミレーションシステムＳｙｓにおいて工程設計装置１は、生産システムシミュレーションに必要な情報を、ユーザとの対話等も利用しながら収集する。そして、生産シミュレーション装置７は、工程設計装置１により収集された情報等を用いて、所望の設備Ｒにより所望の製品を製造する生産シミュレーションを実行する。
【００４８】
（各作業工程を実行する作業主体の設定）
具体的には、工程設計装置１は、製品の組立作業手順に含まれる各作業工程ＰＰの作業主体を設定する。工程設計装置１は、各作業工程ＰＰの作業主体の設定に際して先ず、製品の組立作業手順に含まれる各作業工程ＰＰについて、「標準工程ＣＰであるか、それとも、特殊工程ＳＰであるのか」を判定する。作業手順に含まれる作業工程ＰＰは、標準工程ＣＰまたは特殊工程ＳＰである。
【００４９】
（標準工程を実行する作業主体の設定）
工程設計装置１は、製品の組立作業手順に含まれる作業工程ＰＰのうち、標準工程ＣＰであると判定した作業工程ＰＰについては、ライブラリに格納されている（つまり、設備データＤｒにおいて定義されている）設備Ｒを対応付ける。工程設計装置１は、標準工程ＣＰであると判定した作業工程ＰＰについては、「設備データＤｒにおいて定義されている設備Ｒのうち、仮想生産空間上にレイアウトされた設備Ｒ」を、その作業工程ＰＰの実行主体として、優先的に対応付けるようにしてもよい。
【００５０】
ここで、前述の通り、設備データＤｒにおいては、「設備Ｒと、その設備Ｒが実行可能な作業工程（標準工程ＣＰ）との組合せ」に、「その設備Ｒにその標準工程ＣＰを実行させる制御プログラム」が対応付けられている。
【００５１】
そこで、工程設計装置１は、標準工程ＣＰであると判定した作業工程ＰＰについて、その作業工程ＰＰの実行主体として「設備データＤｒにおいて定義されている設備Ｒ（つまり、標準工程ＣＰである作業工程ＰＰを実行可能な設備Ｒ）」を対応付ける。さらに、工程設計装置１は、「標準工程ＣＰであると判定した作業工程ＰＰと、設備Ｒと、の組合せ」に、「その設備Ｒにその作業工程ＰＰを実行させる制御プログラム」を対応付ける。
【００５２】
（特殊工程を実行する作業主体の設定）
工程設計装置１は、製品の組立作業手順に含まれる作業工程ＰＰのうち、標準工程ＣＰではないと判定した作業工程ＰＰについては、つまり、特殊工程ＳＰであると判定した作業工程ＰＰについては、特殊工程ＳＰである旨をユーザに通知する。そして、工程設計装置１は、その特殊工程ＳＰを実行させる設備Ｒの決定と、その特殊工程ＳＰを実現する制御プログラムの設備Ｒ（設備コンポーネント）への追加実装と、をユーザに促す。ユーザは、例えば、特殊工程ＳＰの実行主体として選択した設備Ｒに対し、その特殊工程ＳＰについてのオフライン・ティーチングを実施する。工程設計装置１は、ユーザによるオフライン・ティーチングにより生成された制御プログラムを、「その設備Ｒにその特殊工程ＳＰを実行させる制御プログラム」として、読み込む。
【００５３】
（各作業主体に各作業工程を実行させるのに必要な作業工程等の設定）
工程設計装置１は、手順データＤｐ中の各作業工程ＰＰについて、その実行主体として各設備Ｒを割り付けると、さらに、その各作業工程ＰＰの前に実行すべき作業工程ＰＰとして、以下の作業工程ＰＰを追加したり、追加をユーザに促したりする。すなわち、工程設計装置１は、各作業工程ＰＰの実行のために事前に実行が必要な作業工程ＰＰ（準備工程ＲＰ）、および、各作業工程ＰＰの実行のために必要な部品を各設備Ｒに供給する作業工程ＰＰ（供給工程ＩＰ）を追加したり、追加をユーザに促したりする。
【００５４】
（各作業主体に各作業工程を実行させるのに必要な項目への値の設定）
工程設計装置１は、手順データＤｐ中の各作業工程ＰＰの実行を割り付けられた各設備Ｒについて、その設備Ｒにその作業工程ＰＰを実行させるために不足している情報（要設定項目Ｉｔ）を検出する。工程設計装置１は、そのような情報を追加で設定・ティーチングするように促し、また、必要な制御プログラミングの追加読込等を促す。
【００５５】
なお、工程設計装置１は、パーソナルコンピュータ（ＰＣ）のような情報処理装置を用いて実現することができる。すなわち、情報処理装置を工程設計装置１として動作させるアプリケーション・ソフトウェアをインストールしたＰＣとして、工程設計装置１を実現することができる。
【００５６】
§２．構成例
（生産シュミレーションシステムの構成例）
図２は、工程設計装置１を含む生産シュミレーションシステムＳｙｓの全体概要を示す図である。図２に例示する生産シュミレーションシステムＳｙｓには、工程設計装置１、標準工程データベース２、設備データベース３、手順データベース４、手順生成装置５、レイアウト作成装置６、および、生産シミュレーション装置７が含まれている。
【００５７】
工程設計装置１は、製品ごとに、その製品を組み立てる作業手順（組立作業手順）に含まれる複数の作業工程ＰＰの各々に対し、その作業工程ＰＰの実行主体等を設定する。工程設計装置１は、さらに、各作業工程ＰＰの実行主体として設定した各設備Ｒに各作業工程ＰＰを実行させる制御プログラムを管理していてもよい。工程設計装置１は、そのような制御プログラムを生産シミュレーション装置７に出力して、生産シミュレーション装置７に、各作業工程ＰＰの実行主体として設定した各設備Ｒに各作業工程ＰＰを実行させるシミュレーションを実行させることができる。
【００５８】
（標準工程データ関連）
標準工程データベース２には、複数の標準工程ＣＰの各々を定義した標準工程データＤｄが格納され、例えば、製品の組立に必要な各作業工程ＰＰの種別と諸元とを定義する情報が格納されている。標準工程ＣＰの各々は、少なくとも１つの設備Ｒにより実行可能な作業工程ＰＰである。
【００５９】
（設備データ関連）
設備データベース３には、設備データＤｒが格納され、例えば、各設備Ｒについて、形状、各種諸元、各設備Ｒが実行可能な固有動作を実現する制御プログラム、および、その固有動作によって実現可能な作業工程ＰＰ（特に、標準工程ＣＰ）が格納されている。言い換えれば、設備データＤｒは、設備Ｒごとに、その設備Ｒが実行可能な標準工程ＣＰ、その設備Ｒにその標準工程ＣＰを実行させる制御プログラム、その設備Ｒにその標準工程ＣＰを実行させるために値の設定が必要な要設定項目Ｉｔなどを定義している。
【００６０】
例えば、設備データＤｒは、設備Ｒごとに、（１）その設備Ｒが実行可能な作業工程ＰＰ（特に、標準工程ＣＰ）を、定義している。設備データＤｒは、さらに、（２）各設備Ｒの３次元形状、（３）各設備Ｒが作業工程ＰＰ（特に、標準工程ＣＰ）を実行するための制御プログラム等、（４）各設備Ｒの状態マシン図を定義している。また、設備データＤｒは、（５）実行可能な作業工程ＰＰ（特に、標準工程ＣＰ）に係る、各設備Ｒの工程実行能力、（６）各設備Ｒに実行させる作業工程ＰＰ（特に、標準工程ＣＰ）の入出力要素、（７）各設備Ｒが各作業工程ＰＰ（特に、各標準工程ＣＰ）を実行するための要設定項目Ｉｔを定義している。なお、「３次元」は、以下の説明においては「３Ｄ」と略記することがある。設備データＤｒの詳細については、図５から図１１を用いて後述する。
【００６１】
（手順データ関連）
レイアウト作成装置６は、ライブラリに格納されている（つまり、設備データＤｒにおいて定義されている）設備データＤｒをユーザに提示して、ユーザが設備レイアウトを構築するのを支援する。例えば、レイアウト作成装置６は、設備データＤｒにおいて定義されている設備Ｒの一覧をユーザに提示する。ユーザは、設備データＤｒにおいて定義されている設備Ｒの一覧中から設備Ｒ（１）、Ｒ（２）、Ｒ（３）、・・・Ｒ（ｎ）を選択し、選択した設備Ｒ（１）、Ｒ（２）、Ｒ（３）、・・・Ｒ（ｎ）を、レイアウト作成装置６が提供する仮想生産空間上に配置する。レイアウト作成装置６は、仮想生産空間上に配置された設備Ｒ（１）、Ｒ（２）、Ｒ（３）、・・・Ｒ（ｎ）を、仮想生産空間上の配置位置情報などと共に、工程設計装置１に通知する。
【００６２】
また、レイアウト作成装置６は、設備データＤｒにおいて「設備Ｒと、その設備Ｒが実行可能な標準工程ＣＰと、の組合せ」ごとに定義されている入出力要素（ワーク、例えば、製品、製品の部品、仕掛かり製品、半製品）の３次元形状をユーザに提示する。ユーザは、選択した設備Ｒ（１）、Ｒ（２）、Ｒ（３）、・・・Ｒ（ｎ）が用いたり、出力したりするワークを、設備Ｒ（１）、Ｒ（２）、Ｒ（３）、・・・Ｒ（ｎ）を配置した仮想生産空間上に配置する。レイアウト作成装置６は、「仮想生産空間上に配置されたワークを特定する情報」を、「仮想生産空間上のワークの配置位置情報」などと共に、工程設計装置１に通知する。
【００６３】
なお、レイアウト作成装置６を用いた生産設備のレイアウト案の作成（言い換えれば、仮想生産空間への設備Ｒの配置）の詳細については、図１３を用いて後述する。
【００６４】
手順データベース４には、製品ごとの組立作業手順または分解作業手順を示すデータである手順データＤｐが格納されている。手順データＤｐは、製品ごとに、その製品を組み立て、または、分解する複数の作業工程ＰＰを、実行順序と共に定義している。手順データＤｐにおいて定義されている複数の作業工程ＰＰは、標準工程ＣＰおよび特殊工程ＳＰの少なくとも一方を複数含んでいる。
【００６５】
手順生成装置５は、製品ごとに、その製品の３次元形状、および、その製品を構成する１つ以上の部品の各々の３次元形状をユーザに提示する。また、手順生成装置５は、標準工程データＤｄにおいて定義されている複数の標準工程ＣＰの各々をユーザに提示する。手順生成装置５は、製品および部品の３次元形状、および、標準工程データＤｄにおいて定義されている複数の標準工程ＣＰをユーザに提示して、ユーザが手順データＤｐを生成するのを支援する。生産シュミレーションシステムＳｙｓにおいて、手順データＤｐ（製品の組立手順）は、例えば、ユーザが自分で考えて生成する。なお、手順生成装置５を用いた手順データＤｐの作成の詳細については、図１４等を用いて後述する。
【００６６】
生産シミュレーション装置７は、ロボットを含む各種の設備Ｒの挙動を動的に再現する。前述の通り、生産シミュレーション装置７は、工程設計装置１から、作業手順（組立作業手順）に含まれる複数の作業工程ＰＰの各々を各設備Ｒに実行させる制御プログラムを取得して、各設備Ｒに各作業工程ＰＰを実行させるシミュレーションを実行することができる。生産シミュレーション装置７は、例えば、工程設計装置１から取得した制御プログラムを実際にエミュレータ上で動作させて、所望の製品の組立作業時間を算出する。
【００６７】
（各実施形態において用いる用語の定義）
生産シュミレーションシステムＳｙｓについての理解を正確にするため、生産シュミレーションシステムＳｙｓの説明において用いる各種用語を以下の通り定義しておく。
【００６８】
「設備要素（＝設備Ｒ）」とは、各種ロボット、周辺機器、エンドエフェクタ、架台など、生産設備を構成する物理的な構成要素の総称である。
【００６９】
「設備コンポーネント」とは、単一または複数の設備要素を組み合わせて、設備構築支援ソフトウェア（＝レイアウト作成装置６）によって再利用可能な形に整備されたソフトウェアモジュールの呼称である。設備コンポーネントは、３Ｄ設備シミュレータなどのために、設備要素の３次元形状・機構情報に加え、０〜ｎ個の「工程実行サービス」を実現する設備要素の制御プログラムを含んでいる。設備コンポーネントを、レイアウト作成装置６が提供する仮想生産空間（設備レイアウト）上にインスタンス化して配置位置を確定すると、その設備コンポーネントが提供する工程実行サービスが呼び出し可能となる。例えば、レイアウト作成装置６は、仮想生産空間上に配置された設備Ｒ（配置済設備ＲＲ）を、その設備Ｒが実行可能な作業工程ＰＰを実行する設備Ｒとして、工程設計装置１に通知する。
【００７０】
同一の設備コンポーネントを複数インスタンス化することもできるし、インスタンスごとに既定の設備諸元（例えば、ベルトコンベアであれば、長さ、高さ、幅など）をユーザが実際に保有している設備Ｒに合わせて変更することができる。内部で他の設備コンポーネントを参照し、利用していることもある。
【００７１】
「ライブラリ（＝設備データベース３）」とは、設備レイアウトの作成に利用可能な設備コンポーネントを集めて、ユーザが簡単に選択・利用することができるようにしたライブラリである。
【００７２】
「設備レイアウト」とは、３Ｄ設備シミュレータ（＝レイアウト作成装置６）の提供する仮想生産空間において、設備コンポーネントをインスタンス化してワールド座標系に配置することにより作成した仮想生産設備をいう。単一のセルを表現している場合もあれば、複数セルから構成されたラインを表現している場合もある。
【００７３】
「セル（装置）」とは、ラインを構成する、一定レベルの独立性をもった生産設備の構成単位をいう。内部で複雑な機構動作が実現され隠蔽されており、この単位で装置ベンダからエンドユーザに提供されることが多い。多くの場合、製造実行系上位システム向けのインタフェースとして、運転モード／運転状態の概念を持っており、また、オペレータ向けインタフェースとしてパトランプ、ＨＭＩ（Human Machine Interface）、セーフティボタンなどを備えている。前後工程を担うセルとのインタフェースとして、材料ワークの搬入口と作業済みワーク搬出口とをもち、タクトタイムの概念がある。
【００７４】
「ライン」とは、複数のセルの入出力ワークが、直接または各種の搬送系（コンベヤ、ＡＧＶ（Automated Guided Vehicle）、人など）によって接続された生産システムの構成単位をいう。搬送経路は１次元的であるとは限らず、分岐、ネットワーク形状の搬送経路をもつことがある。
【００７５】
「工程定義情報（＝標準工程データＤｄ）」とは、「ネジ締付」、「嵌め合い」など、生産における各標準工程ＣＰについて、各標準工程ＣＰを一意に特定する工程ＩＤとともに、各標準工程ＣＰに対する諸元リストを定義した情報をいう。標準工程ＣＰに対する諸元は、例えば、製品の設計上、要求されることが多いと想定できる諸元であり、例えば、ネジのサイズ、および、締付トルクなどである。工程定義情報は、設備要素（設備コンポーネント）の工程実行能力を表現するためのテンプレートとして利用されたり、手順データＤｐ中の各作業工程ＰＰの要求諸元を記述する際の辞書として利用されたりすることができる。
【００７６】
「工程実行能力」とは、各設備コンポーネントが提供することのできる工程実行サービスの対応可能な諸元の範囲を、工程定義に従って記述したものをいう。ライブラリ内の設備コンポーネントは、自分の備えている工程実行サービスの工程実行能力の宣言を、例えばヘッダ情報に、格納している。
【００７７】
「工程実行サービス」とは、設備レイアウト上にインスタンス化された設備コンポーネントが提供する、「ねじの挿入・締付」などの作業工程の実現サービスをいう。製品が要求する諸元を工程実行サービスのパラメータに与えて呼び出すことで、設備レイアウトで製品に必要な工程が実行される。
【００７８】
「工程実行シーケンス」とは、製品の組立手順に従い、設備レイアウトの各設備コンポーネントの各工程実行サービスを適切なパラメータ設定で順次呼び出す手順を記述した制御シーケンスプログラムをいう。なお、「手順データＤｐ中の各作業工程ＰＰに対し、その実行主体としての設備Ｒを対応付けた情報（設計工程データ６１）」を、「工程実行シーケンス」と称することもある。
【００７９】
（工程設計装置の概要）
これまでに生産シュミレーションシステムＳｙｓの全体概要を説明したので、次に、工程設計装置１および手順生成装置５などの詳細を説明していく。工程設計装置１および手順生成装置５などについての理解を容易にするため、工程設計装置１および手順生成装置５などの概要を整理しておけば以下の通りである。
【００８０】
すなわち、工程設計装置１は、製品を組み立て、または、分解する作業手順（手順データＤｐ）に含まれる複数の作業工程ＰＰの各々について、作業工程ＰＰを実行する実行主体を対応付ける工程設計装置１である。工程設計装置１は、「各々が、少なくとも１つの設備Ｒにより実行可能な作業工程ＰＰである、複数の標準工程ＣＰ」を定義した標準工程データＤｄを取得する標準工程取得部１１と、「設備Ｒごとに、設備Ｒが実行可能な作業工程ＰＰ（標準工程ＣＰ）」を定義した設備データＤｒを取得する設備取得部１３と、「製品ごとに、製品を組み立て、または、分解するための複数の作業工程ＰＰを、実行順序と共に定義した手順データＤｐ」を取得する手順取得部１２と、手順データＤｐにおいて定義されている複数の作業工程ＰＰの各々について、標準工程データＤｄに含まれているかを判定する工程判定部２０と、手順データＤｐの表示画面（工程設計画面）において、工程判定部により標準工程データＤｄに含まれていないと判定された作業工程ＰＰである特殊工程ＳＰを強調表示する表示制御部３０と、を備えている。
【００８１】
前記の構成によれば、工程設計装置１は、手順データＤｐにおいて定義されている複数の作業工程ＰＰの各々について、標準工程データＤｄに含まれているかを判定し、標準工程データＤｄに含まれていないと判定した作業工程ＰＰを、特殊工程ＳＰとして強調表示する。
【００８２】
ここで、実際の製品の組立および分解に際しては、予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰが、つまり、特殊工程ＳＰが、含まれていることが通常である。
【００８３】
工程設計装置１は、そのような「予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰ」が、つまり、標準工程データＤｄにおいて定義されている標準工程ＣＰではない作業工程ＰＰが、手順データＤｐに含まれているかを判定する。そして、工程設計装置１は、手順データＤｐに含まれている「予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰ」を、特殊工程ＳＰとして強調表示してユーザに通知し、そのような作業工程ＰＰについての検討をユーザに促す。
【００８４】
したがって、工程設計装置１は、製品の組立等の手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰが含まれる場合にも、ユーザにそのような作業工程ＰＰに対する検討を促し、その製品の組立等の工程を設計できるとの効果を奏する。
【００８５】
工程設計装置１は、表示制御部３０により強調表示された特殊工程ＳＰについて、特殊工程ＳＰを実行させる設備Ｒを設定するユーザ操作を受け付ける受付部４０と、手順データＤｐにおいて実行順序と共に定義されている複数の作業工程ＰＰのうち、（１）「工程判定部２０により標準工程データＤｄに含まれていると判定された作業工程ＰＰ」に、「設備データＤｒにおいて、作業工程ＰＰを実行可能な設備Ｒとして定義されている設備Ｒ」を、実行主体として対応付け、（２）特殊工程ＳＰに、「ユーザ操作により設定された設備Ｒ」を、実行主体として対応付けた、設計工程データ６１を生成する設定部（第１設定部５１および第２設定部５２）と、をさらに備えている。
【００８６】
前記の構成によれば、工程設計装置１は、手順データＤｐにおいて実行順序と共に定義されている複数の作業工程ＰＰのうち、（１）標準工程ＣＰに、「設備データＤｒに定義されている設備Ｒ」を対応付け、（２）特殊工程ＳＰに、「ユーザにより設定された設備Ｒ」を対応付けた、設計工程データ６１を生成する。
【００８７】
工程設計装置１は、「予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰ」を含む作業手順（手順データＤｐ）についても、その作業手順中の各作業工程ＰＰに対して実行主体を対応付けた設計工程データ６１を生成する。
【００８８】
したがって、工程設計装置１は、製品の組立等の手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰが含まれる場合にも、手順中の各作業工程ＰＰに対して実行主体を対応付けた工程を設計することができるとの効果を奏する。
【００８９】
工程設計装置１は、設備データＤｒにおいて、設備Ｒと作業工程ＰＰとの組合せごとに、「設備Ｒに作業工程ＰＰを実行させるために、予め値を設定しておく必要のある要設定項目Ｉｔ（項目）」が定義され、設計工程データ６１における設備Ｒと作業工程ＰＰとの組合せについて、設備データＤｒにおいて前記組合せに対して定義されている要設定項目Ｉｔに値が設定されているかを判定する項目判定部７７をさらに備え、表示制御部３０は、項目判定部７７により値が未設定だと判定された要設定項目Ｉｔに対して値の設定を促す情報を表示し、受付部４０は、要設定項目Ｉｔに値を入力するユーザ操作を受け付け、設定部（第１設定部５１および第２設定部５２）は、ユーザ操作により入力された値を設定した要設定項目Ｉｔを、前記設計工程データ６１における前記組合せに対応付ける。
【００９０】
前記の構成によれば、工程設計装置１は、「設備Ｒに作業工程ＰＰを実行させるために予め値を設定しておく必要のある要設定項目Ｉｔ」に値が設定されているかを判定し、要設定項目Ｉｔに値が設定されていないと判定すると、値の設定をユーザに促す。そして、工程設計装置１は、ユーザが入力した値を要設定項目Ｉｔに設定して、設備Ｒが作業工程ＰＰを実行できるようにする。
【００９１】
したがって、工程設計装置１は、「『製品の組立等の手順中に含まれる各作業工程ＰＰ』を、『各作業工程ＰＰの実行主体として対応付けた設備Ｒ』に実行させる」ために必要な要設定項目Ｉｔに値を設定し、各作業工程ＰＰを、各作業工程ＰＰに対応付けた設備Ｒに実行させることができるとの効果を奏する。
【００９２】
工程設計装置１は、設備データＤｒにおいて、設備Ｒごとに、少なくとも（Ａ）設備Ｒの初期状態と、（Ｂ）「設備Ｒが実行可能な作業工程ＰＰ」を、設備Ｒが実行している状態である実行状態と、（Ｃ）前記実行状態において実行される作業工程ＰＰを設備Ｒが実行可能な状態である待機状態と、（Ｄ）前記初期状態、前記実行状態、および、前記待機状態の間の遷移関係と、を記述した状態遷移情報（状態マシン図）が定義され、設計工程データ６１における設備Ｒと作業工程ＰＰとの組合せについて、「『設備Ｒに作業工程ＰＰを実行させる時点』で、設備Ｒが、『設備Ｒの状態遷移情報において定義されている、作業工程ＰＰの待機状態』にあるか」を判定する状態判定部７１と、状態判定部７１により「待機状態にない」と判定された組合せの作業工程ＰＰについて、「設備Ｒの状態遷移情報において、『前記初期状態または前記作業工程ＰＰの実行状態』から、『前記作業工程ＰＰの待機状態』へと遷移するまでに、設備Ｒが至る状態」において実行される作業工程ＰＰである準備工程ＲＰを取得する準備工程取得部７２と、「『準備工程取得部７２により取得された準備工程ＲＰ』を、『状態判定部７１により待機状態にないと判定された組合せの作業工程ＰＰ』の前に設備Ｒが実行すべき作業工程ＰＰとして、設計工程データ６１に追加する」準備工程追加部と、をさらに備えている。
【００９３】
前記の構成によれば、工程設計装置１は、設備Ｒに作業工程ＰＰを実行させる時点で、設備Ｒが、作業工程ＰＰの待機状態にあるかを判定する。そして、工程設計装置１は、作業工程ＰＰを実行させる時点で、設備Ｒが待機状態にないと判定すると、待機状態へと遷移するまでに設備Ｒが至る状態において実行される作業工程ＰＰである準備工程ＲＰを取得する。工程設計装置１は、取得した準備工程ＲＰを、「『待機状態にない』と判定した作業工程ＰＰ」の前に設備Ｒが実行すべき作業工程ＰＰとして、設計工程データ６１に追加する。
【００９４】
したがって、工程設計装置１は、製品の組立等の手順中に含まれる各作業工程ＰＰについて、各設備Ｒが各作業工程ＰＰを実行する前に実行しておくべき準備工程ＲＰを各設備Ｒに実行させることにより、各作業工程ＰＰを、各作業工程ＰＰに対応付けた設備Ｒに実行させることができるとの効果を奏する。
【００９５】
工程設計装置１は、設備データＤｒにおいて、設備Ｒおよび作業工程ＰＰの組合せごとに、「設備Ｒが作業工程ＰＰを実行する際に必要な入力要素（ワーク）」が定義され、「設計工程データ６１における設備Ｒと作業工程ＰＰとの組合せ」について、「『設備Ｒに作業工程ＰＰを実行させる時点』で、設備Ｒに、『設備データＤｒにおいて前記組合せに対して定義されている入力要素』が供給されているか」を判定する部品判定部７４と、「『部品判定部７４により前記入力要素が供給されていないと判定された組合せ』の作業工程ＰＰの前に実行されるべき作業工程ＰＰとして、『前記入力要素を設備Ｒに供給する作業工程ＰＰである供給工程ＩＰ』を、設計工程データ６１に追加する」供給工程追加部７６と、をさらに備えている。
【００９６】
前記の構成によれば、工程設計装置１は、設備Ｒに作業工程ＰＰを実行させる時点で、設備Ｒに、前記入力要素が供給されているかを判定する。そして、工程設計装置１は、「前記入力要素が供給されていないと判定された作業工程ＰＰ」の前に実行されるべき作業工程ＰＰとして、「前記入力要素を設備Ｒに供給する作業工程ＰＰである供給工程ＩＰ」を、設計工程データ６１に追加する。
【００９７】
したがって、工程設計装置１は、製品の組立等の手順中に含まれる各作業工程ＰＰについて、各設備Ｒが各作業工程ＰＰを実行する前に各設備Ｒに供給されておくべき入力要素を供給工程ＩＰにおいて供給することにより、各作業工程ＰＰを、各作業工程ＰＰに対応付けた設備Ｒに実行させることができるとの効果を奏する。
【００９８】
手順生成装置５は、工程設計装置１により取得される手順データＤｐをユーザが生成するのを支援する手順生成装置であって、製品ごとに、製品の３次元形状、および、製品を構成する１つ以上のワークの各々の３次元形状をユーザに提示する形状提示部と、標準工程データＤｄにおいて定義されている複数の標準工程ＣＰの各々をユーザに提示する工程提示部と、を備えている。
【００９９】
前記の構成によれば、手順生成装置５は、（１）製品ごとの、製品の３次元形状、および、製品を構成する１つ以上のワークの各々の３次元形状と、（２）標準工程ＣＰと、をユーザに提示する。
【０１００】
したがって、手順生成装置５は、ユーザが、製品等の３次元形状を参照しながら、標準工程ＣＰに即して、手順データＤｐを生成するのを支援することができるとの効果を奏する。
【０１０１】
（工程設計装置の詳細）
図１は、工程設計装置１などの要部構成等を示すブロック図である。図１に例示した工程設計装置１は、標準工程取得部１１、手順取得部１２、設備取得部１３、工程判定部２０、表示制御部３０、受付部４０、第１設定部５１、第２設定部５２、記憶部６０、および、検証部７０を備えている。
【０１０２】
なお、記載の簡潔性を担保するため、本実施の形態に直接関係のない構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、工程設計装置１は、当該省略された構成を備えてもよい。図１に例示した標準工程取得部１１、手順取得部１２、設備取得部１３、工程判定部２０、表示制御部３０、受付部４０、第１設定部５１、第２設定部５２、および、検証部７０は、例えば、プロセッサ（ＣＰＵ、central processing unit）等が、ＲＯＭ（read only memory）、ＮＶＲＡＭ（non-Volatile random access memory）等で実現された不揮発性（記憶部６０）に記憶されているプログラムを、ＲＡＭ等により実現されるメインメモリに読み出して実行することで実現することができる。以下、工程設計装置１における各機能ブロックについて説明する。
【０１０３】
（記憶部以外の機能ブロック）
標準工程取得部１１は、標準工程データベース２から標準工程データＤｄを取得し、取得した標準工程データＤｄを、工程判定部２０に出力する。
【０１０４】
手順取得部１２は、手順データベース４から手順データＤｐを取得し、取得した手順データＤｐを、工程判定部２０に出力する。
【０１０５】
設備取得部１３は、設備データベース３から設備データＤｒを取得する。また、設備取得部１３は、レイアウト作成装置６から、「設備データＤｒにおいて定義されている設備Ｒのうち、仮想生産空間に配置された設備Ｒ（以下、「配置済設備ＲＲ」と略記することがある）」を取得する。設備取得部１３は、取得した設備データＤｒにおいて定義されている設備Ｒ、および、配置済設備ＲＲを、第１設定部５１に出力する。
【０１０６】
工程判定部２０は、手順取得部１２から取得した手順データＤｐにおいて定義されている各作業工程ＰＰについて、標準工程取得部１１から取得した標準工程データＤｄに含まれるかを判定する。そして、（１）工程判定部２０は、手順取得部１２から取得した手順データＤｐ中の作業工程ＰＰのうち、標準工程データＤｄに含まれると判定した作業工程ＰＰを、つまり、標準工程ＣＰと判定した作業工程ＰＰを、第１設定部５１に出力する。また、（２）工程判定部２０は、手順取得部１２から取得した手順データＤｐ中の作業工程ＰＰのうち、標準工程データＤｄに含まれないと判定した作業工程ＰＰを、つまり、特殊工程ＳＰと判定した作業工程ＰＰを、第２設定部５２に出力する。さらに、（３）工程判定部２０は、特殊工程ＳＰと判定した作業工程ＰＰを、表示制御部３０に出力する。
【０１０７】
表示制御部３０は、手順データＤｐおよび記憶部６０の設計工程データ６１に格納されている情報等を表示する画面である工程設計画面を、表示装置８に表示させ、また、工程設計画面に係る表示内容を制御する。例えば、表示制御部３０は、工程判定部２０により「標準工程データＤｄに含まれない」と判定された作業工程ＰＰを、工程設計画面において強調表示させる。また、例えば、表示制御部３０は、項目判定部７７により「設備Ｒに作業工程ＰＰを実行させる時点で、設備Ｒが作業工程ＰＰを実行するのに必要な値が設定されていない」と判定された要設定項目Ｉｔへの値を促す情報を、工程設計画面において強調表示させる。
【０１０８】
受付部４０は、ユーザ操作を受け付け、受け付けたユーザ操作に対応する処理を、第２設定部５２に通知するとともに、受け付けたユーザ操作に従って、記憶部６０の設計工程データ６１に格納されている情報を更新する。
【０１０９】
受付部４０は、例えば、工程設計画面において強調表示されている特殊工程ＳＰについて、「その特殊工程ＳＰを実行させる設備Ｒを設定するユーザ操作」を受け付ける。受付部４０は、ユーザ操作によって特殊工程ＳＰの実行主体として設定された設備Ｒを、第２設定部５２に通知する。
【０１１０】
また、受付部４０は、例えば、「設備Ｒに作業工程ＰＰを実行させるために予め値を設定しておく必要のある要設定項目Ｉｔ」に値を入力するユーザ操作を受け付け、受け付けたユーザ操作に対応する情報を、設計工程データ６１に格納する。すなわち、受付部４０は、ユーザ操作により入力された値を設定した要設定項目Ｉｔを、設計工程データ６１における「設備Ｒと作業工程ＰＰとの組合せ」に対応付ける。
【０１１１】
なお、受付部４０は、ユーザ操作により入力された値を設定した要設定項目Ｉｔを、第１設定部５１または第２設定部５２に通知してもよい。そして、第１設定部５１または第２設定部５２が、値が設定された要設定項目Ｉｔを、設計工程データ６１における「設備Ｒと作業工程ＰＰとの組合せ」に対応付けてもよい。
【０１１２】
第１設定部５１は、「手順データＤｐ中の作業工程ＰＰのうち、工程判定部２０により標準工程ＣＰと判定された作業工程ＰＰ」に、つまり、「手順データＤｐ中の標準工程ＣＰ」に、その作業工程ＰＰの実行主体として、設備Ｒを対応付ける。そして、第１設定部５１は、手順データＤｐ中の標準工程ＣＰに設備Ｒを対応付けたデータを、記憶部６０の設計工程データ６１に格納する。
【０１１３】
第１設定部５１は、「手順データＤｐ中の標準工程ＣＰ」に、その標準工程ＣＰの実行主体として、「設備データＤｒにおいて、その標準工程ＣＰを実行することができると定義されている設備Ｒ」を対応付ける。第１設定部５１は、「手順データＤｐ中の標準工程ＣＰ」に、「設備データＤｒにおいて、その標準工程ＣＰを実行することができると定義されている設備Ｒ」のうち、配置済設備ＲＲを、優先的に対応付ける。言い換えると、配置済設備ＲＲ中に「手順データＤｐ中の標準工程ＣＰ」を実行可能な設備Ｒがあると、第１設定部５１は、その設備Ｒを、その「手順データＤｐ中の標準工程ＣＰ」に、優先的に対応付ける。
【０１１４】
第２設定部５２は、「手順データＤｐ中の作業工程ＰＰのうち、工程判定部２０により特殊工程ＳＰと判定された作業工程ＰＰ」に、つまり、「手順データＤｐ中の特殊工程ＳＰ」に、その作業工程ＰＰの実行主体として、設備Ｒを対応付ける。そして、第２設定部５２は、手順データＤｐ中の特殊工程ＳＰに設備Ｒを対応付けたデータを、記憶部６０の設計工程データ６１に格納する。
【０１１５】
第２設定部５２は、「手順データＤｐ中の特殊工程ＳＰ」に、受付部４０から通知された設備Ｒを、つまり、ユーザによって「その特殊工程ＳＰの実行主体として設定された設備Ｒ」を、対応付ける。
【０１１６】
第１設定部５１および第２設定部５２により、手順データＤｐ中の各作業工程ＰＰは、その実行順序と共に、その各作業工程ＰＰの実行主体としての各設備Ｒと対応付けられて、設計工程データ６１に格納される。
【０１１７】
検証部７０は、状態判定部７１、準備工程取得部７２、準備工程追加部７３、部品判定部７４、供給工程取得部７５、供給工程追加部７６、および、項目判定部７７を含んでいる。
【０１１８】
状態判定部７１は、設計工程データ６１に格納されている設備Ｒと作業工程ＰＰとの組合せについて、その設備Ｒにその作業工程ＰＰを実行させる時点で、その設備Ｒが、その作業工程ＰＰの待機状態にあるかを、設備データＤｒを用いて判定する。
【０１１９】
前述の通り、設備データＤｒには、設備Ｒごとに、その設備Ｒの状態マシン図が、つまり、その設備Ｒの状態遷移情報が、定義されている。状態判定部７１は、或る設備Ｒに或る作業工程ＰＰを実行させる時点で、その設備Ｒが、その作業工程ＰＰの待機状態にあるかを、設備データＤｒにおける、その設備Ｒの状態遷移情報を用いて判定する。
【０１２０】
状態判定部７１は、設計工程データ６１に格納されている設備Ｒと作業工程ＰＰとの組合せについて、その設備Ｒにその作業工程ＰＰを実行させる時点で、その設備Ｒが、その作業工程ＰＰの待機状態にないと判定した組合せを、準備工程取得部７２に通知する。
【０１２１】
準備工程取得部７２は、状態判定部７１から通知された「設備Ｒと作業工程ＰＰとの組合せ」の作業工程ＰＰについて、設備データＤｒに定義されている「その設備Ｒの状態マシン図（つまり、状態遷移情報）」を用いて、準備工程ＲＰを取得する。つまり、準備工程取得部７２は、状態判定部７１により、「設備Ｒに作業工程ＰＰを実行させる時点で、その設備Ｒが、その作業工程ＰＰの待機状態にない」と判定された作業工程ＰＰについて、その設備Ｒの状態遷移情報を用いて、準備工程ＲＰを取得する。
【０１２２】
例えば、準備工程取得部７２は、設備Ｒの状態遷移情報において、初期状態またはその作業工程ＰＰの実行状態から、その作業工程ＰＰの待機状態へと遷移するまでに、その設備Ｒが至る状態において実行される作業工程ＰＰである準備工程ＲＰを取得する。
ここで、設備Ｒの状態遷移情報には、初期状態、設備Ｒが実行可能な作業工程ＰＰ（具体的には、標準工程ＣＰ）の実行状態、および、実行状態において実行される作業工程ＰＰ（具体的には、標準工程ＣＰ）の待機状態が記述されている。そこで、準備工程取得部７２は、設備Ｒの状態遷移情報を参照して、先ず、初期状態またはその作業工程ＰＰの実行状態から、その作業工程ＰＰの待機状態へと遷移するまでに、その設備Ｒが至る状態である中間状態を取得する。次に、準備工程取得部７２は、取得した中間状態が、何らかの作業工程ＰＰの実行状態である場合、その中間状態において実行される作業工程ＰＰを、準備工程ＲＰとして取得する。
【０１２３】
準備工程取得部７２は、設備データＤｒを参照して、具体的には、状態判定部７１から通知された「設備Ｒと作業工程ＰＰとの組合せ」の設備Ｒの状態遷移情報を参照して、準備工程ＲＰを取得し、取得した準備工程ＲＰを、準備工程追加部７３に通知する。
【０１２４】
準備工程追加部７３は、準備工程取得部７２から通知された準備工程ＲＰを、状態判定部７１から通知された「設備Ｒと作業工程ＰＰとの組合せ」の作業工程ＰＰの前にその設備Ｒが実行すべき作業工程ＰＰとして、設計工程データ６１に追加する。つまり、準備工程追加部７３は、準備工程取得部７２から通知された準備工程ＲＰを、「『状態判定部７１が待機状態にないと判定した組合せ』の作業工程ＰＰの前に、その組合せの設備Ｒが実行すべき」作業工程ＰＰとして、設計工程データ６１に追加する。準備工程追加部７３により、設計工程データ６１の「状態判定部７１により待機状態にないと判定された、設備Ｒと作業工程ＰＰとの組合せ」の前には、その組合せの設備Ｒと準備工程ＲＰとの組合せが、追加される。
【０１２５】
部品判定部７４は、設計工程データ６１に格納されている設備Ｒと作業工程ＰＰとの組合せについて、その設備Ｒにその作業工程ＰＰを実行させる時点で「その設備Ｒがその作業工程ＰＰを実行するのに必要な入力要素」がその設備Ｒに供給されているかを判定する。先ず、部品判定部７４は、設計工程データ６１に格納されている設備Ｒと作業工程ＰＰとの組合せについて、「設備データＤｒにおいて、その設備Ｒとその作業工程ＰＰ（標準工程ＣＰ）との組合せに対して定義されている、入力要素（ワーク）」を取得する。次に、部品判定部７４は、取得した入力要素が、その設備Ｒにその作業工程ＰＰを実行させる時点で、その設備Ｒに供給されているかを判定する。
【０１２６】
部品判定部７４は、「その設備Ｒにその作業工程ＰＰを実行させる時点で、その設備Ｒに入力要素が供給されていない」と判定した「設備Ｒと作業工程ＰＰとの組合せ」を、供給工程取得部７５に通知する。
【０１２７】
供給工程取得部７５は、先ず、部品判定部７４から通知された「設備Ｒと作業工程ＰＰとの組合せ」について、「『その組合せの設備Ｒが、その組合せの作業工程ＰＰを実行するのに必要な入力要素』を、設備Ｒに供給する」作業工程である供給工程ＩＰを取得する。供給工程取得部７５は、例えば、標準工程データＤｄにおいて定義されている標準工程ＣＰの中から、「『設備Ｒが作業工程ＰＰを実行するのに必要な入力要素』を、設備Ｒに供給する」作業工程ＰＰを、供給工程ＩＰとして取得する。
【０１２８】
次に、供給工程取得部７５は、取得した供給工程ＩＰが標準工程ＣＰであるかを、つまり、供給工程ＩＰが標準工程データＤｄに含まれるかを、判定する。
【０１２９】
供給工程ＩＰが標準工程ＣＰであると判定すると、供給工程取得部７５は、供給工程ＩＰの実行主体として、「設備データＤｒにおいて、その供給工程ＩＰを実行することができると定義されている設備Ｒ」を対応付ける。供給工程取得部７５は、配置済設備ＲＲ中にその供給工程ＩＰを実行可能な設備Ｒがあると、その設備Ｒを、その供給工程ＩＰに、優先的に対応付ける。
【０１３０】
供給工程ＩＰが特殊工程ＳＰであると判定すると、供給工程取得部７５は、判定結果を表示制御部３０に通知して、特殊工程ＳＰであると判定した供給工程ＩＰを、工程設計画面において強調表示させる。受付部４０が、特殊工程ＳＰであると判定された供給工程ＩＰを実行させる設備Ｒを設定するユーザ操作を受け付けると、供給工程取得部７５は、ユーザ操作によって供給工程ＩＰの実行主体として設定された設備Ｒを、その供給工程ＩＰに対応付ける。
【０１３１】
供給工程取得部７５は、実行主体として設備Ｒを対応付けた供給工程ＩＰを、つまり、「供給工程ＩＰと、その供給工程ＩＰの実行主体である設備Ｒと、の組合せ」を、供給工程追加部７６に通知する。
【０１３２】
供給工程追加部７６は、供給工程追加部７６から通知された「供給工程ＩＰと、その供給工程ＩＰの実行主体である設備Ｒと、の組合せ」を、設計工程データ６１に追加する。すなわち、供給工程追加部７６は、供給工程追加部７６から通知された供給工程ＩＰを、部品判定部７４が「入力要素が供給されていない」と判定した組合せの作業工程ＰＰの前に実行されるべき作業工程ＰＰとして、設計工程データ６１に追加する。また、供給工程追加部７６は、供給工程追加部７６から通知された「供給工程ＩＰの実行主体である設備Ｒ」を、供給工程ＩＰと対応付けて、設計工程データ６１に格納する。
【０１３３】
項目判定部７７は、設計工程データ６１に格納されている設備Ｒと作業工程ＰＰとの組合せについて、以下の判定を実行する。すなわち、項目判定部７７は、その設備Ｒにその作業工程ＰＰを実行させるために予め値を設定しておく必要のある要設定項目Ｉｔに、その設備Ｒにその作業工程ＰＰを実行させる時点で、値が設定されているかを判定する。
【０１３４】
前述の通り、設備データＤｒにおいて、設備Ｒと作業工程ＰＰ（標準工程ＣＰ）との組合せには、その設備Ｒにその標準工程ＣＰを実行させるために予め値を設定しておく必要のある要設定項目Ｉｔが定義されている。
【０１３５】
そこで、項目判定部７７は、設計工程データ６１に格納されている設備Ｒと作業工程ＰＰとの組合せについて、「設備データＤｒにおいて、その設備Ｒとその作業工程ＰＰ（標準工程ＣＰ）との組合せに対して定義されている要設定項目Ｉｔ」を取得する。次に、項目判定部７７は、その設備Ｒにその作業工程ＰＰを実行させる時点で、取得した要設定項目Ｉｔに値が設定されてかを判定する。
【０１３６】
要設定項目Ｉｔに値が設定されていないと判定すると、項目判定部７７は、判定結果を表示制御部３０に通知して、値が設定されていないと判定した要設定項目Ｉｔについて、値の設定を促す情報を表示させる。
【０１３７】
（記憶部の詳細）
記憶部６０は、工程設計装置１が使用する各種データを格納する記憶装置である。記憶部６０は、工程設計装置１が実行する（１）制御プログラム、（２）ＯＳプログラム、（３）工程設計装置１が有する各種機能を実行するためのアプリケーションプログラム、および、（４）該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。記憶部６０はさらに、設計工程データ６１を格納している。また、記憶部６０には、標準工程取得部１１が取得した標準工程データＤｄと、手順取得部１２が取得した手順データＤｐと、設備取得部１３が取得した「設備データＤｒ、および、仮想生産空間に配置された設備Ｒ」とが格納されてもよい。
【０１３８】
設計工程データ６１には、手順データＤｐ中の複数の作業工程ＰＰが、その実行主体としての設備Ｒと、実行順序などと共に、格納される。例えば、手順データＤｐにおいて、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として定義されている場合、設計工程データ６１には、以下の作業工程ＰＰが格納される。すなわち、設計工程データ６１には、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として格納される。
【０１３９】
また、作業工程ＰＰ（１）の実行主体として設備Ｒ（１）が、作業工程ＰＰ（２）の実行主体として設備Ｒ（２）が、作業工程ＰＰ（３）の実行主体として設備Ｒ（３）が、作業工程ＰＰ（４）の実行主体として設備Ｒ（４）が、設定されると、設計工程データ６１には、以下の対応が格納される。すなわち、設計工程データ６１において、作業工程ＰＰ（１）には設備Ｒ（１）が、作業工程ＰＰ（２）には設備Ｒ（２）が、作業工程ＰＰ（３）には設備Ｒ（３）が、作業工程ＰＰ（４）には設備Ｒ（４）が、対応付けられて、格納される。
【０１４０】
設計工程データ６１には、作業工程ＰＰと設備Ｒとの組合せごとに、その設備Ｒにその作業工程ＰＰを実行させる制御プログラムが格納されてもよい。さらに、設計工程データ６１には、作業工程ＰＰと設備Ｒとの組合せごとに、その設備Ｒにその作業工程ＰＰを実行させるために予め値を設定しておく必要のある要設定項目Ｉｔと、その要設定項目Ｉｔに設定されている値と、が格納されてもよい。
【０１４１】
§３．動作例
図３は、工程設計装置１が実行する処理の概要を説明する図である。図３に示すように、工程設計装置１は、手順データベース４に格納されている手順データＤｐと、標準工程データベース２に格納されている標準工程データＤｄと、を用いて、判定処理を実行する。すなわち、工程設計装置１は、手順データベース４に格納されている手順データＤｐにおいて定義されている複数の作業工程ＰＰの各々について、標準工程データベース２に格納されている標準工程データＤｄに含まれるかを判定する。言い換えれば、工程設計装置１は、手順データＤｐ中の複数の作業工程ＰＰの各々について、標準工程ＣＰであるかを判定する。
【０１４２】
設備データベース３に格納されている設備データＤｒは、設備Ｒごとに、その設備Ｒが実行可能な標準工程ＣＰと、その設備Ｒにその標準工程ＣＰを実行させる制御プログラムと、を定義している。
【０１４３】
工程設計装置１は、手順データＤｐに含まれる作業工程ＰＰのうち、標準工程ＣＰであると判定した作業工程ＰＰに、設備データＤｒに定義されている設備Ｒを対応付ける（対応付け処理）。さらに、工程設計装置１は、手順データＤｐに含まれる作業工程ＰＰのうち、標準工程ＣＰであると判定した作業工程ＰＰに、「その作業工程ＰＰに対応付けた設備Ｒに、その作業工程ＰＰを実行させる」制御プログラムを対応付ける。
【０１４４】
工程設計装置１は、手順データＤｐに含まれる作業工程ＰＰのうち、特殊工程ＳＰであると判定した作業工程ＰＰを、工程設計画面において強調表示させる（強調表示処理）。工程設計装置１は、強調表示させている特殊工程ＳＰについて、その特殊工程ＳＰを実行させる設備Ｒを設定するユーザ操作を受け付ける（受付処理）。また、工程設計装置１は、設備Ｒに特殊工程ＳＰを実行させる制御プログラムを入力するユーザ操作を受け付ける。工程設計装置１は、特殊工程ＳＰに、ユーザ操作によって設定された設備Ｒを対応付け、また、ユーザ操作によって入力された制御プログラムを対応付ける。
【０１４５】
したがって、工程設計装置１は、手順データＤｐ中に特殊工程ＳＰが含まれる場合にも、手順データＤｐ中の各作業工程ＰＰに対して、実行主体としての設備Ｒを対応付けたデータを生成することができる。また、工程設計装置１は、「手順データＤｐ中の各作業工程ＰＰに、『その作業工程ＰＰに対応付けた設備Ｒに、その作業工程ＰＰを実行させる』制御プログラムを、対応付けた」データを生成することができる。生産シュミレーションシステムＳｙｓにおいて、工程設計装置１は、特殊工程ＳＰと判定した作業工程ＰＰの制御プログラムを、ユーザから必要な情報を補完しながら、生成する。
【０１４６】
工程設計装置１についての理解を正確にするため、次に、生産シュミレーションシステムＳｙｓにおいて工程設計装置１が利用するデータ等について、その詳細を、図４から図１１を用いて説明する。
【０１４７】
（工程設計装置が利用するデータの概要）
（標準工程データの概要）
図４は、標準工程データベース２の概要を説明する図である。標準工程データベース２（「工程定義情報データベース」とも称する）には、標準工程データＤｄが格納されており、つまり、製品の組立等を実現するために必要な様々な標準工程ＣＰの定義情報が格納されている。標準工程データＤｄ、つまり、各作業工程の工程定義情報には、作業工程ＰＰ（作業工程ＰＰの種別）を一意に特定する工程定義ＩＤとともに、その作業工程ＰＰに対する諸元リストが定義されている。作業工程ＰＰに対する諸元リストは、例えば、製品設計上、一般的に要求される諸元リストであり、製品設計情報（手順データＤｐ）を参照して与えられてもよい。ライブラリ内の設備コンポーネント、つまり、設備データＤｒにおいて定義されている設備Ｒは、各設備Ｒが備える工程実行能力を、この工程定義情報（標準工程データＤｄ）に基づいて宣言する。また、製品の組立手順を定義する手順データＤｐには、この工程定義情報を参照して生成された「組立工程への要求諸元」が記述される。
【０１４８】
（設備データの概要）
図５は、設備データベース３の概要を説明する図である。設備データベース３（＝ライブラリ）には、生産設備レイアウトの作成時等に利用可能な「設備コンポーネントの定義情報（＝設備データＤｒ）」が格納されている。設備データＤｒには、以下の情報が含まれている。
【０１４９】
（各設備の３次元形状）
すなわち、設備データＤｒには、設備Ｒごとに、各設備Ｒの３次元機構モデル（形状、および、形状間の拘束条件、センサ・アクチュエータの配置位置など）に係る情報が含まれている。
【０１５０】
（各設備が作業工程を実行するための制御プログラム等）
設備データＤｒには、設備Ｒごとに、各設備Ｒが実行可能な標準工程ＣＰ（作業工程ＰＰ）の識別情報である工程ＩＤが、含まれている。また、設備データＤｒには、設備Ｒごとに、各設備Ｒが提供する「工程実行サービス群（＝各設備Ｒが実行可能な標準工程ＣＰ）」の呼出しインタフェースに係る情報が含まれている。さらに、設備データＤｒには、設備Ｒごとに、各設備Ｒが実行可能な標準工程ＣＰを、各設備Ｒに実行させるための制御プログラムが、含まれている。
【０１５１】
（各設備の状態マシン図）
設備データＤｒには、設備Ｒごとに、状態マシン、および、「状態マシン中の各状態におけるサービス実行可否（つまり、各状態において、どの標準工程ＣＰ（作業工程ＰＰ）を実行することができるかを示す情報）」が含まれている。
【０１５２】
各設備Ｒの状態マシン図においては、「その設備Ｒがとり得る複数の状態」と、「各状態における標準工程ＣＰの実行可否、および、実行可能である場合、実行可能な標準工程ＣＰの識別情報」と、「状態の間の遷移関係」と、が記述されている。言い換えれば、各設備Ｒの状態マシン図には、「その設備Ｒがとり得る複数の状態」間の状態遷移情報が、定義されている。
【０１５３】
例えば、各設備Ｒの状態マシン図には、少なくとも、以下の３つの状態と、それら３つの状態の間の遷移関係と、が記述されている。すなわち、各設備Ｒの状態マシン図には、（１）その設備Ｒの初期状態が、つまり、その設備Ｒに電源を投入した直後の状態が、記述されている。また、各設備Ｒの状態マシン図には、（２）その設備Ｒが実行可能な作業工程ＰＰ（具体的には、標準工程ＣＰ）を、その設備Ｒが実行している状態である実行状態が記述されている。さらに、各設備Ｒの状態マシン図には、（３）実行状態において実行される作業工程ＰＰ（具体的には、標準工程ＣＰ）を、その設備Ｒが実行可能な状態である待機状態が記述されている。なお、待機状態と初期状態とは同じであってもよい。
【０１５４】
（実行可能な作業工程に係る、各設備の能力＝工程実行能力）
設備データＤｒには、設備Ｒごとに、「どの標準工程ＣＰ（作業工程ＰＰ）を、どういった諸元レンジで実行可能であるか」を記述した工程実行能力を定義した情報が含まれている。設備Ｒと標準工程ＣＰ（作業工程ＰＰ）との組合せに対する工程実行能力は、標準工程データＤｄ（＝各標準工程ＣＰの工程定義情報）を参照して、記述されていてもよい。すなわち、各標準工程ＣＰ（作業工程ＰＰ）に対し各設備コンポーネント（＝設備Ｒ）が備える工程実行能力は、その設備Ｒがその各標準工程ＣＰを実行するのに際して備える能力の範囲（各工程実行サービスの受け入れ可能なパラメータレンジ）を示している。そして、工程実行能力は、標準工程データＤｄ（＝各標準工程ＣＰの工程定義情報）に定義されている諸元リストに基づいて記述されてもよい。
【０１５５】
（各設備が実行可能な作業工程についての入出力要素）
設備データＤｒには、設備Ｒと標準工程ＣＰ（作業工程ＰＰ）との組合せごとに、入出力要素（ワーク）を定義した情報が含まれている。すなわち、或る設備Ｒに或る標準工程ＣＰを実行させるために、その標準工程ＣＰの実行前にその設備Ｒに供給しておくべき入力要素（入力ワーク）、および、その設備Ｒがその標準工程ＣＰの実行により出力する出力要素（出力ワーク）が、定義されている。
【０１５６】
（各設備が各作業工程を実行するための要設定項目）
設備データＤｒには、設備Ｒと標準工程ＣＰ（作業工程ＰＰ）との組合せごとに、「その設備Ｒにその標準工程ＣＰを実行させるために予め値を設定しておく必要のある項目（＝要設定項目Ｉｔ）」を定義した情報が含まれている。この「その設備Ｒにその標準工程ＣＰを実行させるために予め値を設定しておく必要のある」要設定項目Ｉｔは、例えば、以下の２種類の項目に大別されてもよい。
【０１５７】
（１）設備データＤｒにおいて、設備Ｒと標準工程ＣＰとの組合せには、その設備Ｒがその標準工程ＣＰを実行する前に値の設定を必要とする「入力要素（ワーク）についての要設定項目Ｉｔ（＝入力要素ごとに値を設定しておくべき項目）」が、対応付けられている。また、設備データＤｒにおいて、設備Ｒと標準工程ＣＰとの組合せには、その設備Ｒがその標準工程ＣＰを実行する前に値の設定を必要とする「出力要素（ワーク）についての要設定項目Ｉｔ（＝出力要素ごとに値を設定しておくべき項目）」が、対応付けられている。
【０１５８】
このような要設定項目Ｉｔとしては、例えば、「ネジを拾い上げる標準工程ＣＰについて、ピックアップすべきネジが、ピックアップ前に置かれている位置を示す項目」、および、「作業工程ＰＰの実行により生成した出力要素の出力位置」を挙げることができる。
【０１５９】
ネジＳ１を拾い上げる場合のネジＳ１の位置、および、作業工程ＰＰの出力要素の出力位置などのように、設備Ｒと標準工程ＣＰとの組合せには、その設備Ｒがその標準工程ＣＰを実行する際の入出力要素ごとに値を設定すべき要設定項目Ｉｔが対応付けられている。
【０１６０】
（２）設備データＤｒにおいて、設備Ｒと標準工程ＣＰとの組合せには、その設備Ｒがその標準工程ＣＰを実行する際に必要とする入出力要素には依存しない要設定項目Ｉｔが、対応付けられている。このような要設定項目Ｉｔとしては、例えば、「所定のトルクでネジを締め付けるのに必要な、ドライバビットのねじ頭への押し付け力を示す項目」を挙げることができる。すなわち、所定のトルクでネジを締め付けるためには、締め付けるネジがネジＳ１であるかネジＳ２であるかに依存せずに、「ドライバビットが、ネジＳ１またはネジＳ２のねじ頭の印加する押し付け力」を予め設定しておく必要がある。
【０１６１】
なお、「所定のトルクでネジを締め付けるのに必要な、ドライバビットのねじ頭への押し付け力を示す項目」は、入出力要素ごとに値を設定すべき要設定項目Ｉｔとしてもよい。「ドライバビットのねじ頭への押し付け力」は、必要な締付トルクに比例させて決定してもよく、例えば、強く締め付ける際には、「ドライバビットのねじ頭への押し付け力」を強く（＝大きく）してもよい。また、ネジ穴素材が柔らかく、軽いトルクで締めつけないといけないネジについては、「ドライバビットのねじ頭への押し付け力」を、弱く（＝小さく）してもよい。
【０１６２】
入出力要素には依存しない要設定項目Ｉｔとして、「ドライバビットのねじ頭への押し付け力」を挙げたのは単に例示であり、「ドライバビットのねじ頭への押し付け力」は、入出力要素ごとに値を設定すべき要設定項目Ｉｔとしてもよい。「ドライバビットのねじ頭への押し付け力」に限られず、設備データＤｒにおいて、設備Ｒと標準工程ＣＰとの組合せには、その設備Ｒがその標準工程ＣＰを実行する際に必要とする入出力要素には依存しない要設定項目Ｉｔが、対応付けられている。
【０１６３】
（要設定項目の一例：入出力要素から独立した要設定項目）
図６は、設備データＤｒ中の要設定項目Ｉｔのうち、入出力要素から独立した要設定項目Ｉｔの一例を示す図である。図５を用いて説明したように、設備データＤｒには、設備Ｒに標準工程ＣＰを実行させるための要設定項目Ｉｔとして、入出力要素ごとの要設定項目Ｉｔと、入出力要素に依存しない（＝入出力要素から独立した）要設定項目Ｉｔと、が定義される。
【０１６４】
例えば、設備データＤｒにおいて、「ネジ締付コンポーネント（「ネジの締付」という標準工程ＣＰ（ｘ））」を実行可能な設備Ｒ（設備コンポーネント）には、図６に例示するような、入出力要素から独立した要設定項目Ｉｔが対応付けられる。すなわち、「ネジ締付コンポーネント（設備Ｒ（ｘ））」に「ネジの締付」という標準工程ＣＰ（ｘ）（サービス）を実行させる（利用する）ための要設定項目Ｉｔとして、「スラスト軸バッファ機構の諸元」という要設定項目Ｉｔ（ｘ）が対応付けられる。
【０１６５】
工程設計装置１は、設備データＤｒにおいて定義されている「スラスト軸バッファ機構の諸元」という要設定項目Ｉｔ（ｘ）について、以下の判定を行なう。すなわち、工程設計装置１は、「ネジ締付コンポーネント（設備Ｒ（ｘ））」に「ネジの締付」という標準工程ＣＰ（ｘ）（サービス）を実行させる（利用する）前に、「スラスト軸バッファ機構の諸元（要設定項目Ｉｔ（ｘ））」に対し、値が設定されているかを判定する。工程設計装置１は、「スラスト軸バッファ機構の諸元（要設定項目Ｉｔ（ｘ））」に値が設定されていないと判定すると、要設定項目Ｉｔ（ｘ）への値の設定をユーザに求める。工程設計装置１は、ユーザによる「要設定項目Ｉｔ（ｘ）への値の入力」を受け付けると、ユーザに入力された値を設定した要設定項目Ｉｔ（ｘ）を、設計工程データ６１における「設備Ｒ（ｘ）と標準工程ＣＰ（ｘ）との組合せ」に対応付ける。
【０１６６】
ここで、「ネジ締め（標準工程ＣＰ（ｘ））」において、ネジの回転と締付トルク管理とは、電動ドライバによって実現される。その際、ドライバビットがネジ頭から離れて空転しないように、ネジ込み量に対してドライバの位置を追従してするように、ロボット手先位置は制御される必要がある。
【０１６７】
「ネジ締付コンポーネント（設備Ｒ（ｘ））」において、電動ドライバは、「スラスト軸バッファ機構」を介して、ロボット手先に固定される。「スラスト軸バッファ機構」は、ドライバの軸方向に対して自由度を持つスプリングが入った、簡易なスライド機構であり、バッファの変位検出センサを備え、バッファ変位が設定された閾値以下になると信号を発生する。そして、指定トルクでのネジ締付に必要な「ドライバビットのネジ頭への押し付け力」を生み出すためのバッファ変位が維持されるように、ドライバの位置が制御される。
【０１６８】
この「ドライバの位置の制御」を実現するために、「スラスト軸バッファ機構」に係る諸元（要設定項目Ｉｔ）への値の設定が、「ネジ締付コンポーネント（設備Ｒ（ｘ））」によるサービス提供前に、必要となる。言い換えれば、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が「ネジ締付コンポーネント（標準工程ＣＰ（ｘ））」を実行するためには、実行前に、「スラスト軸バッファ機構」に係る要設定項目Ｉｔに、値が設定される必要がある。
【０１６９】
（要設定項目の一例：入出力要素ごとの要設定項目）
図７は、設備データＤｒ中の要設定項目Ｉｔのうち、入出力要素に係る項目の一例を示す図である。例えば、設備データＤｒにおいて、「ネジのピック」という標準工程ＣＰ（ｙ）を実行可能な設備Ｒ（設備コンポーネント）には、図７に例示するような、入出力要素ごとの（＝入出力要素に係る）要設定項目Ｉｔが対応付けられる。すなわち、「ネジ締付コンポーネント（設備Ｒ（ｘ））」に「ネジのピック」という標準工程ＣＰ（ｙ）（サービス）を実行させる（利用する）ための要設定項目Ｉｔとして、「ScrewPosition（ネジ供給位置）」という要設定項目Ｉｔ（ｙ）が対応付けられる。
【０１７０】
例えば、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が実行可能な「ネジのピック」という標準工程ＣＰ（ｙ）（サービス）は、以下のような動作である。すなわち、「ネジ吸着能力をもったドライバビット先端を、指定されたネジの供給位置へと移動させ、ドライバのビット先端によりネジを１つピックアップする（拾い上げる）」という動作である。ここで、「指定されたネジの供給位置」は、「ScrewPosition（ネジ供給位置）」という要設定項目Ｉｔ（ｙ）に設定されている値によって特定される。
【０１７１】
なお、このサービスは、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が、図１０において説明する所定の状態（具体的には、「AwaitingWithScrewOnBiit」状態）にある場合にのみ実行することができる。このサービスの実行完了後、「ネジ締付コンポーネント（設備Ｒ（ｘ））」の状態は、図１０において後述する「AwaitingWithScrewOnBiit」状態へと、遷移する。なお、図７に例示する各パラメータは、このサービス呼出し時に引数として指定することができる。
【０１７２】
図８は、設備データＤｒ中の要設定項目Ｉｔのうち、入出力要素に係る項目の、図７に示したのとは別の項目の一例を示す図である。例えば、設備データＤｒにおいて、「ネジの挿入後締付」という標準工程ＣＰ（ｚ））を実行可能な設備Ｒ（設備コンポーネント）には、図８に例示するような、入出力要素ごとの（＝入出力要素に係る）要設定項目Ｉｔが対応付けられる。すなわち、「ネジ締付コンポーネント（設備Ｒ（ｘ））」に「ネジの挿入後締付」という標準工程ＣＰ（ｚ）（サービス）を実行させる（利用する）ための要設定項目Ｉｔとして、「ScrewHoleCenterPosition（ワーク表面ネジ穴中心）」という要設定項目Ｉｔ（ｚ）が対応付けられる。
【０１７３】
例えば、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が実行可能な「ネジの挿入後締付」という標準工程ＣＰ（ｚ）（サービス）は、以下のような動作である。すなわち、「ビット先端にネジ吸着済みのドライバを用いて、指定されたネジ穴位置にネジを挿入し、ドライバが設定されたトルク条件で締付完了信号を送るまで締付を行う」という動作である。ここで、「指定されたネジ穴位置」は、「ScrewHoleCenterPosition（ワーク表面ネジ穴中心）」という要設定項目Ｉｔ（ｚ）に設定されている値によって特定される。
【０１７４】
なお、このサービスは、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が、図１０において説明する所定の状態（具体的には、「AwaitingWithScrewOnBit（ドライバ先端にネジ吸着済）」状態）にある場合にのみ実行できる。このサービスの実行中は、「ネジ締付コンポーネント（設備Ｒ（ｘ））」の状態は、図１０の「ExecutingServiceWithAScrew」状態に遷移し、他のサービスの実行は拒否される（つまり、設備Ｒ（ｘ）が他の作業工程を実行することはできない）。このサービスの実行完了後、「ネジ締付コンポーネント（設備Ｒ（ｘ））」の状態は、図１０の「AwaitingWioutScrewOnBit（ドライバ先端にネジなし）」状態に遷移する。なお、図８に例示する各パラメータは、このサービス呼出し時に引数として指定することができる。
【０１７５】
図９は、設備データＤｒ中の要設定項目Ｉｔのうち、入出力要素に係る項目の、図７および図８に示したのとは別の項目の一例を示す図である。例えば、設備データＤｒにおいて、「ネジの増し締め」という標準工程ＣＰ（ｗ）を実行可能な設備Ｒ（設備コンポーネント）には、図９に例示するような、入出力要素ごとの（＝入出力要素に係る）要設定項目Ｉｔが対応付けられる。すなわち、「ネジ締付コンポーネント（設備Ｒ（ｘ））」に「ネジの増し締め」という標準工程ＣＰ（ｗ）（サービス）を実行させる（利用する）ための要設定項目Ｉｔとして、「ScrewHoleCenterPosition（ワーク表面ネジ穴中心）」という要設定項目Ｉｔ（ｚ）が対応付けられる。
【０１７６】
例えば、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が実行可能な「ネジの増し締め」という標準工程ＣＰ（ｗ）（サービス）は、以下のような動作である。すなわち、「ビット先端にネジが付いていないドライバを用いて、指定されたネジ穴位置に挿入済み（軽くネジ締め済み）のネジを増し締めする。」という動作である。ここで、「指定されたネジ穴位置」は、「ScrewHoleCenterPosition（ワーク表面ネジ穴中心）」という要設定項目Ｉｔ（ｚ）に設定されている値によって特定される。
【０１７７】
なお、このサービスは、「ネジ締付コンポーネント（設備Ｒ（ｘ））」が、図１０において説明する所定の状態（具体的には、「AwaitingWioutScrewOnBit（ドライバ先端にネジなし）」状態にあるときにのみ実行することができる。このサービスの実行中は、図１０の「ExecutingServiceWithoutScrew」状態となり、他のサービスの実行は拒否される。そして、このサービスの実行完了後、「AwaitingWioutScrewOnBit（ドライバ先端にネジなし）」状態に遷移する。なお、図９に例示する各パラメータは、このサービス呼出し時に引数として指定することができる。
【０１７８】
（状態マシン図の一例）
図１０は、設備データＤｒ中の状態マシン図の一例を示す図である。設備データＤｒには、設備Ｒ（設備コンポーネント）の状態マシンを含み、状態マシン中の各状態において、「サービス（標準工程ＣＰ）の実行可否」、および、「実行可能な場合、実行可能な標準工程ＣＰ」が定義されている。
【０１７９】
図１０には、「ネジ締付コンポーネント」という設備Ｒの状態マシン図が例示されている。図１０に例示する状態マシン図には、（１）「初期状態（Initializing）」、および、（２）作業工程ＰＰ（具体的には、標準工程ＣＰ）を実行している状態である「実行状態」が定義されている。また、図１０に例示する状態マシン図には、各実行状態において実行される作業工程ＰＰ（具体的には、標準工程ＣＰ）を、その設備Ｒが実行可能な状態である「待機状態」が定義されている。
【０１８０】
図１１は、図１０に例示した状態マシン図における状態について、状態ごとに、内容、および、その状態において呼出可能なサービスを説明する表である。図１１において定義されているように、図１０の「PickingAScrew」は「実行状態」であり、具体的には、「ネジ締付コンポーネント」という設備Ｒが「ネジのピック」という標準工程ＣＰ（ｙ）（サービス）を実行している状態である。
【０１８１】
図１０の「ExecutingServiceWithoutScrew」は「実行状態」であり、具体的には、「ネジ締付コンポーネント」という設備Ｒが、ネジを用いないサービス（例えば、「ネジの増し締め」という標準工程ＣＰ（ｗ））を実行している状態である。
【０１８２】
図１０の「ExecutingServiceWithAScrew」は「実行状態」であり、具体的には、「ネジ締付コンポーネント」という設備Ｒが、ネジを消費するサービス（例えば、「ネジの挿入後締付」という標準工程ＣＰ（ｚ））を実行している状態である。
【０１８３】
図１０の「AwaitingWithoutScrewOnBit」は「待機状態」であり、具体的には、「ネジ締付コンポーネント」という設備Ｒが、「PickingAScrew」において実行される標準工程ＣＰ（ｙ）を実行可能な状態である。また、「AwaitingWithoutScrewOnBit」は、「ネジ締付コンポーネント」という設備Ｒが、「ExecutingServiceWithoutScrew」において実行される標準工程ＣＰ（例えば、標準工程ＣＰ（ｗ））を実行可能な状態である。
【０１８４】
図１０の「AwaitingWithAScrewOnBit」は「待機状態」であり、具体的には、「ネジ締付コンポーネント」という設備Ｒが、「ExecutingServiceWithAScrew」において実行される標準工程ＣＰ（例えば、標準工程ＣＰ（ｚ））を実行可能な状態である。
【０１８５】
（システムにおいて実行される処理フローの概要）
図１２は、図２に例示した生産シュミレーションシステムＳｙｓの全体において実行される処理の概要を説明するフロー図である。設備データベース３には設備データＤｒが格納されており、レイアウト作成装置６は、設備データベース３から、設備データＤｒを取得する。ユーザは、レイアウト作成装置６を用いて、ライブラリ内の設備コンポーネント（つまり、設備データＤｒにおいて定義されている設備Ｒ）を組み合わせて、生産設備レイアウトを作成する（Ｓ１）。
【０１８６】
レイアウト作成装置６は、ユーザにより作成された生産設備レイアウトについての情報である生産設備レイアウトデータ（例えば、仮想生産空間に配置された設備Ｒである、配置済設備ＲＲを特定する情報など）を、工程設計装置１に出力する。
【０１８７】
ユーザは、手順生成装置５を用いて、実現したい製品（製品群）の組立手順を記述し、すなわち、手順生成装置５を用いて、実現したい製品（群）の手順データＤｐを生成する。手順生成装置５は、実現したい製品（生産対象製品）の３次元ＣＡＤ（Computer Aided Design）データを取得し、取得した３次元ＣＡＤデータをユーザに提示する。また、手順生成装置５は、標準工程データベース２から標準工程データＤｄを取得し、取得した標準工程データＤｄにおいて定義されている複数の標準工程ＣＰの各々をユーザに提示する。
【０１８８】
ユーザが、手順生成装置５を用いて、実現したい製品（製品群）の組立手順（手順データＤｐ）を記述すると（Ｓ２）、手順生成装置５は、記述された手順データＤｐを、工程設計装置１に出力し、または、手順データベース４に格納する。
【０１８９】
工程設計装置１は、手順生成装置５または手順データベース４から、「製品の組立手順データ（手順データＤｐ）」を取得する。工程設計装置１は、取得した手順データＤｐの要求する作業工程ＰＰを、与えられた生産設備レイアウト等により実現するための工程実行シーケンス（＝設計工程データ６１）を作成する（Ｓ３）。すなわち、工程設計装置１は、手順データＤｐにおいて実行順序と共に定義されている複数の作業工程ＰＰの各々に対し、レイアウト作成装置６から取得した生産設備レイアウトデータにおいて定義されている配置済設備ＲＲ等を、実行主体として対応付ける。工程設計装置１は、手順データＤｐ中の各作業工程ＰＰに対して実行主体としての設備Ｒを対応付けた工程実行シーケンス（＝設計工程データ６１）を生成し、生成した工程実行シーケンスを生産シミュレーション装置７に出力する。
【０１９０】
生産シミュレーション装置７は、工程設計装置１から取得した「工程実行シーケンス（＝設計工程データ６１）」を実行し、動作結果をユーザに表示する（Ｓ４）。すなわち、生産シミュレーション装置７は、設計工程データ６１において実行順序と共に定義されている各作業工程ＰＰを、設計工程データ６１において各作業工程ＰＰに対応付けられている設備Ｒに実行させるシミュレーションを実行する。そして、生産シミュレーション装置７は、シミュレーションの実行結果をユーザに表示する。
【０１９１】
（生産設備レイアウトの作成例）
図１３は、図１２のＳ１に対応する設備レイアウトの作成方法の一例を説明する図である。図１３に例示するように、ユーザは、レイアウト作成装置６を用いて、ライブラリ内の（つまり、設備データベース３に定義された）設備コンポーネント（＝設備Ｒ）を組み合わせて、生産設備のレイアウト案を作成する。具体的には、ユーザは、ライブラリから設備コンポーネントを仮想生産空間に配置し、つまり、レイアウト作成装置６が提示する設備Ｒの一覧から任意の設備Ｒを選択して、仮想生産空間上にレイアウトする。
【０１９２】
ライブラリ内の設備コンポーネントが仮想生産空間に配置されることにより、その設備コンポーネントが提供する工程実行サービスは、呼び出し可能になる。つまり、レイアウト作成装置６は、仮想生産空間上に配置された設備Ｒ（配置済設備ＲＲ）を、その設備Ｒが実行可能な作業工程ＰＰを実行する設備Ｒとして、工程設計装置１に通知する。特に、レイアウト作成装置６は、「配置済設備ＲＲを特定する情報、および、仮想生産空間における配置済設備ＲＲの配置位置情報などを含む」生産設備レイアウトデータを、工程設計装置１に通知する。
【０１９３】
レイアウト作成装置６は、配置済設備ＲＲについて、「配置済設備ＲＲを特定する情報、および、仮想生産空間における配置済設備ＲＲの配置位置情報」以外の情報も、生産設備レイアウトデータとして、工程設計装置１に通知してもよい。すなわち、レイアウト作成装置６は、配置済設備ＲＲについて、「各設備Ｒが実行可能な標準工程ＣＰ（作業工程ＰＰ）の識別情報である工程ＩＤ」、および、「各設備Ｒが実行可能な標準工程ＣＰについての、工程実行能力」を生産設備レイアウトデータに含めてもよい。また、レイアウト作成装置６は、配置済設備ＲＲについて、「各設備Ｒが実行可能な標準工程ＣＰを、各設備Ｒに実行させるための制御プログラム」等を、生産設備レイアウトデータに含めてもよい。言い換えれば、レイアウト作成装置６は、設備データベース３において各配置済設備ＲＲについて定義されている各種情報を、生産設備レイアウトデータに含めて、工程設計装置１に出力してもよい。
【０１９４】
（手順データの作成例）
図１４は、図１２のＳ２に対応する「製品ごとの手順データＤｐ」を作成する方法の一例を説明する図である。ユーザは、「製品の３次元ＣＡＤデータ」および「標準工程データＤｄにおいて定義されている複数の標準工程ＣＰの各々」をユーザに提示する手順生成装置５を用いて、製品ごとの手順データＤｐを記述する（作成する）。手順生成装置５がユーザに提示する３次元ＣＡＤデータには、製品の部品構成と、各部品の形状・材質と、組立後の位置関係と、が電子的に記述されている。
【０１９５】
例えば、図１４において、ユーザは、第１に、手順生成装置５により提示される「部品Ａの３次元ＣＡＤデータ」および「部品Ｂの３次元ＣＡＤデータ」について、「部品Ａ上に部品Ｂを重ね合せる」という作業工程ＰＰ（１）の実行が必要であることを記述している。
【０１９６】
第２に、ユーザは、手順生成装置５により提示される「部品Ａ上に部品Ｂが重ねられた仕掛り製品の３次元ＣＡＤデータ」および「ネジの３次元ＣＡＤデータ」について、「ネジ挿入締付という作業工程ＰＰ（２）の実行が必要である」ことを記述している。
【０１９７】
手順生成装置５は、作業工程ＰＰ（２）の実行結果として、すなわち、作業工程ＰＰ（２）の出力として、「部品Ａに部品Ｂがネジ止めされた製品の３次元ＣＡＤデータ」を、ユーザに提示する。
【０１９８】
図１４に示すようにして、ユーザは、手順生成装置５を用いて、「製品ごとの手順データＤｐ」を作成する。図１４に示す例で作成される「製品ごとの手順データＤｐ」には、実行順序が１位である作業工程ＰＰ（１）と、実行順序が２位である作業工程ＰＰ（２）と、が定義されることになる。手順生成装置５は、ユーザにより記述された、「実行順序が１位である作業工程ＰＰ（１）、および、実行順序が２位である作業工程ＰＰ（２）」を含む手順データＤｐを、工程設計装置１に出力し、または、手順データベース４に格納する。
【０１９９】
図１５は、手順データＤｐにおける各作業工程ＰＰの記述例を示す図である。手順データＤｐの各作業工程ＰＰには、製品の組立手順に対する要求諸元値が標準工程ＣＰ等に基づき記述される。前述の通り、手順生成装置５は、ユーザに、「製品の３次元ＣＡＤデータ」に加えて、「標準工程データＤｄにおいて定義されている複数の標準工程ＣＰの各々」を、提示する。
【０２００】
例えば、図４に例示した「ネジ挿入締付」という標準工程ＣＰには、「ネジ諸元」、「ワークピース側ネジ穴諸元」、「締付トルク」、「締付トルク許容誤差」、「ネジ挿入／着座時速度の許容範囲」、「ビット押し付け力の許容範囲」、および、「タクトタイム要求値」などが定義されている。「ネジ諸元」には、「ヘッド形状／サイズ」、「単位系」、「ネジ山のピッチと条数（ピッチ×条数＝リード）」、「ネジ首元からネジ頭頂点までの長さ」、「ネジ首元からネジ頭ビット先端接触点までの長さ」、「ネジ首元からネジ先端までの長さ」、および、「幾何情報の公差」などが含まれる。「ワークピース側ネジ穴諸元」には、「ネジ山諸元は製品設計としてネジに適合する前提」、「単位系」、「ネジ穴ワーク表面中心点」、「ワーク表面から着座面までの深さ」、「ネジ穴全体深さ」、および、「幾何情報の公差」などが含まれる。
【０２０１】
これに対応して、図１５に例示するように、ユーザは、手順データＤｐにおける「ネジ挿入締付」という作業工程ＰＰについて、「ネジ諸元」、「ワークピース側ネジ穴諸元」、「締付トルク」、「締付トルク許容誤差」、「ネジ挿入／着座時速度の許容範囲」、「ビット押し付け力の許容範囲」、および、「タクトタイム要求値」を定義する。さらに、「ネジ諸元」には、「ヘッド形状／サイズ」、「ピッチと条数」、「ネジ首元からネジ頭頂点までの長さ」、「ネジ首元からネジ頭ビット先端接触点までの長さ」、「ネジ首元からネジ先端までの長さ」、および、「幾何情報の公差」などを定義する。また、「ワークピース側ネジ穴諸元」には、「ネジ穴ワーク表面中心点」、「ワーク表面から着座面までの深さ」、「ネジ穴全体深さ」、および、「幾何情報の公差」などを定義する。
【０２０２】
図１６は、製品ごとの手順データＤｐに含まれる標準工程ＣＰおよび特殊工程ＳＰの一例を示す図である。具体的には、図１６は、「スイッチング電源背面へのＤＩＮレール取り付けプレートのネジ止め作業」中に含まれる標準工程ＣＰおよび特殊工程ＳＰの例を示している。
【０２０３】
「スイッチング電源背面へのＤＩＮレール取り付けプレートのネジ止め作業」には、以下の３つの作業工程が、この順を実行順序として、含まれている。すなわち、「右プレートをボディ上に置く」との作業工程ＰＰ（１）と、「右プレート上の指定位置を押し下げながらスライドさせ、ボディの固定爪に右プレートを嵌め込む」との作業工程ＰＰ（２）と、「右プレート上部の指定位置に、ねじを挿入し締付する」との作業工程ＰＰ（３）と、が含まれている。
【０２０４】
作業工程ＰＰ（１）は「Place（配置する）」との標準工程ＣＰ（１）に対応し、作業工程ＰＰ（３）は「InsertAndScrew（ねじを挿入し締付する）」との標準工程ＣＰ（２）に対応する。しかしながら、作業工程ＰＰ（２）は、標準工程データベース２に格納されている標準工程データＤｄにおいて定義されている標準工程ＣＰではなく、この製品に固有な特殊工程ＳＰであり、「Slide-in」と称されるような特殊工程ＳＰである。
【０２０５】
（工程設計装置が実行する処理フロー例）
図１７は、工程設計装置１が実行する処理の一部を例示するフロー図であり、図１２のＳ３において工程設計装置１が実行する処理（工程実行シーケンス生成処理）の詳細を説明する図である。
【０２０６】
工程設計装置１は、工程実行シーケンス生成処理を開始し（Ｓ３−１）、先ず、レイアウト作成装置６からの、「配置済設備ＲＲを特定する情報、および、仮想生産空間における配置済設備ＲＲの配置位置情報などを含む」生産設備レイアウトデータを読み込む。また、工程設計装置１は、設備データベース３から、設備データＤｒを取得する。
【０２０７】
工程設計装置１は、読み込んだ生産設備レイアウトデータに含まれる設備コンポーネント（配置済設備ＲＲ）から、配置済設備ＲＲを実行主体とする「空の工程実行シーケンス」を作成する（Ｓ３−２）。「工程実行シーケンス」とは、「製品ごとの手順データＤｐ」中の複数の作業工程ＰＰを、その実行主体、および、その実行順序と対応付けたデータである。
【０２０８】
なお、工程設計装置１がレイアウト作成装置６から取得する生産設備レイアウトデータには、「配置済設備ＲＲを特定する情報、および、仮想生産空間における配置済設備ＲＲの配置位置情報」以外の情報が含まれていてもよい。例えば、工程設計装置１が取得する生産設備レイアウトデータには、各配置済設備ＲＲについて設備データベース３において定義されている各種情報が含まれていてもよい。具体的には、生産設備レイアウトデータには、「各配置済設備ＲＲが実行可能な標準工程ＣＰ（作業工程ＰＰ）の識別情報である工程ＩＤ」、および、「各配置済設備ＲＲが実行可能な標準工程ＣＰについての工程実行能力」などが含まれていてもよい。
【０２０９】
また、工程設計装置１は、生産設備レイアウトデータに含まれる「配置済設備ＲＲを特定する情報」から、設備データベース３を参照して、各配置済設備ＲＲについて設備データベース３の設備データＤｒにおいて定義されている各種情報を取得してもよい。
【０２１０】
工程設計装置１は、手順生成装置５または手順データベース４から取得した「製品の組立手順データ（手順データＤｐ）」を読み込む。工程設計装置１は、読み込んだ手順データＤｐにおいて定義されている複数の作業工程ＰＰの各々について、実行主体として対応付けるべき設備Ｒを、生産設備レイアウト内の配置済設備ＲＲの中から検索する（Ｓ３−３）。具体的には、工程設計装置１は、「手順データＤｐの各作業工程ＰＰの、工程ＩＤ（＝各作業工程ＰＰの識別情報）、および、要求諸元を満たす工程実行能力」を備えた設備コンポ―ネント（設備Ｒ）を、配置済設備ＲＲの中から検索する。
【０２１１】
すなわち、工程設計装置１は、手順データＤｐの各作業工程ＰＰのＩＤと、各配置済設備ＲＲの「実行可能な作業工程ＰＰのＩＤ」と、が一致するかを判定する。そして、例えば、「手順データＤｐ中の作業工程ＰＰ（ｎ）のＩＤ：ＰＰ０１」と、「配置済設備ＲＲ（１）の実行可能な作業工程ＰＰ（ｍ）のＩＤ：ＰＰ０１」とが一致すると判定すると、工程設計装置１は、さらに、以下の判定を実行する。すなわち、「作業工程ＰＰ（ｎ）の要求諸元」を、「配置済設備ＲＲ（１）の、作業工程ＰＰ（ｍ）についての工程実行能力」が満たしているかを判定する。例えば、工程設計装置１は、「配置済設備ＲＲ（１）の、作業工程ＰＰ（ｍ）についての『ネジ諸元』などについて定義されている工程実行能力」が、「作業工程ＰＰ（ｎ）の『ネジ諸元』などについて定義されている要求」を満たすかを判定する。工程設計装置１は、「作業工程ＰＰ（ｎ）の要求諸元」を、「配置済設備ＲＲ（１）の、作業工程ＰＰ（ｍ）についての工程実行能力」が満たしていると判定すると、作業工程ＰＰ（ｎ）に、配置済設備ＲＲ（１）を対応付ける。
【０２１２】
工程設計装置１は、製品の組立手順データ（手順データＤｐ）中の全ての作業工程ＰＰについて、「実行主体としての設備コンポーネント（設備Ｒ）を割り当てたか（＝対応付けたか）」を判定する（Ｓ３−４）。工程設計装置１は、手順データＤｐ中の全ての作業工程ＰＰについて、「設備コンポーネントを割り当てた」と判定すると（Ｓ３−４でＹｅｓ）、図１９のＳ３−１３に遷移する。
【０２１３】
「設備コンポーネントを割り当てていない」と判定した作業工程ＰＰが手順データＤｐ中に残っていると（Ｓ３−４でＮｏ）、工程設計装置１は以下の判定を実行する。すなわち、工程設計装置１は、手順データＤｐ中の各作業工程ＰＰについて、「要求諸元を満たす工程実行能力を備える設備コンポーネント（設備Ｒ）が、配置済設備ＲＲの中に１つ以上存在するか」を判定する（Ｓ３−５）。
【０２１４】
工程設計装置１は、手順データＤｐ中の作業工程ＰＰのうち、「要求諸元を満たす工程実行能力を備える設備Ｒが、配置済設備ＲＲの中に１つ以上存在する」と判定した（Ｓ３−５でＹｅｓ）作業工程ＰＰについて、図１８のＳ３−６の処理を実行する。また、工程設計装置１は、手順データＤｐ中の作業工程ＰＰのうち、「要求諸元を満たす工程実行能力を備える設備Ｒが、配置済設備ＲＲの中に存在しない」と判定した（Ｓ３−５でＮｏ）作業工程ＰＰについて、図１８のＳ３−７の処理を実行する。
【０２１５】
図１８は、図１の工程設計装置が実行する処理の、図１７に例示したのとは異なる部分を例示するフロー図であり、具体的には、図１７に例示した処理の後に実行される処理を示すフロー図である。
【０２１６】
工程設計装置１は、手順データＤｐ中の作業工程ＰＰのうち、「要求諸元を満たす工程実行能力を備える設備Ｒが、配置済設備ＲＲの中に１つ以上存在する」と判定した（Ｓ３−５でＹｅｓ）作業工程ＰＰについて、ユーザに実行主体を選択させる。すなわち、工程設計装置１は、Ｓ３−５でＹｅｓと判定した作業工程ＰＰについて、ユーザに、「どの設備コンポーネントに割り付けるか（具体的には、どの配置済設備ＲＲを対応付けるか）」を決定させる。そして、工程設計装置１は、その作業工程ＰＰに、ユーザによりその作業工程ＰＰの実行主体として決定された配置済設備ＲＲを、対応付ける。工程設計装置１は、その作業工程ＰＰに、さらに、その作業工程ＰＰの実行サービス呼出し処理と、入出力要素（入力・出力ワーク）と、を対応付けて、工程実行シーケンスに追記する（Ｓ３−６）。言い換えれば、工程設計装置１は、その作業工程ＰＰに、実行主体としての配置済設備ＲＲ、その作業工程ＰＰの実行サービス呼出し処理、および、入出力要素を対応付けたデータを、記憶部６０の設計工程データ６１に格納する。工程設計装置１は、Ｓ３−６の処理を実行した後、Ｓ３−３に戻る。
【０２１７】
工程設計装置１は、手順データＤｐ中の作業工程ＰＰのうち、「要求諸元を満たす工程実行能力を備える設備Ｒが、配置済設備ＲＲの中に存在しない」と判定した（Ｓ３−５でＮｏ）作業工程ＰＰについて、以下の情報をユーザに通知する。すなわち、工程設計装置１は、「設備レイアウトに配置された設備（つまり、配置済設備ＲＲ）の中には、必要な工程実行能力を持つ設備コンポーネント（つまり、設備Ｒ）が見つからない」旨を、ユーザに表示する（Ｓ３−７）。
【０２１８】
工程設計装置１の工程判定部２０は、「要求諸元を満たす工程実行能力を備える設備Ｒが、配置済設備ＲＲの中に存在しない」と判定した作業工程ＰＰについて、標準工程データベース２の標準工程データＤｄに含まれているかを判定する（Ｓ３−８）。すなわち、工程判定部２０は、その作業工程ＰＰが標準工程ＣＰであるかを判定する。
【０２１９】
工程判定部２０により標準工程ＣＰでないと判定された（Ｓ３−８でＮｏ）作業工程ＰＰについて、表示制御部３０は、表示装置８に「特殊工程ＳＰである」旨を表示させる。また、工程判定部２０により標準工程ＣＰでないと判定された作業工程ＰＰについて、表示制御部３０は、「製品の組立手順データ（手順データＤｐ）中の、当該作業工程ＰＰに関する詳細情報」を表示装置８に表示させる（Ｓ３−９）。
【０２２０】
ユーザは、設備レイアウト内の設備コンポーネント（＝配置済設備ＲＲ）、または、設備データＤｒにおいて定義されている設備Ｒに、特殊工程ＳＰの実行を手動で割り当てる。つまり、ユーザは、工程判定部２０により「標準工程ＣＰでない（＝特殊工程ＳＰである）」と判定され、表示制御部３０により強調表示されている作業工程ＰＰに、実行主体としての配置済設備ＲＲまたは設備Ｒを対応付ける。
【０２２１】
工程設計装置１の受付部４０は、「特殊工程ＳＰに、実行主体としての配置済設備ＲＲまたは設備Ｒを対応付ける」ユーザ操作を受け付け、表示制御部３０は、対応付けられた配置済設備ＲＲまたは設備Ｒの工程実行シーケンスを表示させる。
【０２２２】
また、工程設計装置１の受付部４０は、「特殊工程ＳＰに対応付けた配置済設備ＲＲまたは設備Ｒに、特殊工程ＳＰを実行させる」制御プログラムを入力するユーザ操作を受け付ける。表示制御部３０は、受付部４０が受け付けたユーザ操作により入力された制御プログラムを、置済設備ＲＲまたは設備Ｒの工程実行シーケンス内に表示させる。
【０２２３】
すなわち、工程設計装置１は、「ユーザに選択された置済設備ＲＲまたは設備Ｒ」を実行主体とする工程実行サービスのスケルトンに、ユーザにより入力された「特殊工程ＳＰを実現する制御プログラム」を記述する（Ｓ３−１０）。工程設計装置１は、Ｓ３−１０の処理を実行した後、Ｓ３−３に戻る。
【０２２４】
工程判定部２０により標準工程ＣＰであると判定された（Ｓ３−８でＹｅｓ）作業工程ＰＰは、Ｓ３−５で、「要求諸元を満たす工程実行能力を備える設備Ｒが、配置済設備ＲＲの中に存在しない」と判定されている。「標準工程ＣＰである」と判定され、かつ、「その作業工程ＰＰの要求諸元を満たす工程実行能力を持った設備コンポーネント（配置済設備ＲＲ）が無い」と判定された作業工程ＰＰについて、工程設計装置１は、以下の処理を実行する。すなわち、工程設計装置１は、設備データベース３を参照して、その作業工程ＰＰについて必要な工程実行能力を持つ設備コンポ―ネント（設備Ｒ）を検索し、検索した設備Ｒを、ユーザに提示する（Ｓ３−１１）。
【０２２５】
ユーザは、図１２のＳ１に戻って、設備レイアウトに配置した設備Ｒを、Ｓ３−１１で提示された設備Ｒへ入れ替える。すなわち、ユーザは、工程設計装置１により「標準工程ＣＰである」と判定され、かつ、「その作業工程ＰＰの要求諸元を満たす工程実行能力を持った設備コンポーネント（配置済設備ＲＲ）が無い」と判定された作業工程ＰＰについて、実行主体の再設定を行なう。具体的には、ユーザは、その作業工程ＰＰの要求諸元を満たす工程実行能力を備える設備Ｒを、設備レイアウト中の配置済設備ＲＲと入れ替える（Ｓ３−１２）。
【０２２６】
工程設計装置１は、Ｓ３−１２の処理が実行されると、Ｓ３−１２で入れ替えられた、「その作業工程ＰＰの要求諸元を満たす工程実行能力を備える設備Ｒ」を含む生産設備レイアウトデータを、レイアウト作成装置６から取得する。そして、工程設計装置１は、その作業工程ＰＰに対し、新たに取得した生産設備レイアウトデータ中の配置済設備ＲＲを対応付け、Ｓ３−３に戻る。
【０２２７】
図１９は、図１の工程設計装置が実行する処理の、図１７および図１８に例示したのとは異なる部分を例示するフロー図であり、具体的には、図１７および図１８に例示した処理の後に実行される処理を示すフロー図である。
【０２２８】
工程設計装置１は、利用されている設備コンポーネント（＝設備Ｒ）の工程実行サービス（＝作業工程ＰＰ）のうち、詳細追加指示が必要なものについて、ユーザに追加指示を促す（Ｓ３−１３）。つまり、工程設計装置１は、その設備Ｒにその作業工程ＰＰを実行させるに際して必要な詳細情報等の追加を促す。なお、「利用されている設備コンポーネント（＝設備Ｒ）の工程実行サービス（＝作業工程ＰＰ）」とは、「手順データＤｐ中の各作業工程ＰＰ」であって、「実行主体として各設備Ｒが対応付けられた作業工程ＰＰ」を指している。
【０２２９】
具体的には、工程設計装置１の項目判定部７７は、利用されている設備Ｒと作業工程ＰＰとの組合せについて、「設備データＤｒにおいて、その設備Ｒとその作業工程ＰＰ（標準工程ＣＰ）との組合せに対して定義されている要設定項目Ｉｔ」を取得する。次に、項目判定部７７は、その設備Ｒにその作業工程ＰＰを実行させる時点で、取得した要設定項目Ｉｔに値が設定されてかを判定する。項目判定部７７により「値が設定されていない」と判定された要設定項目Ｉｔについて、表示制御部３０は、その要設定項目Ｉｔに値の設定を促す情報を、表示装置８に表示させる。システム（つまり、工程設計装置１）からの指示に従って、ユーザが追加指示を行う（Ｓ３−１４）。
【０２３０】
工程設計装置１は、以下の２つの工程実行サービス（＝作業工程ＰＰ）を工程実行シーケンスに追加する（Ｓ３−１５）。
【０２３１】
すなわち、工程設計装置１は、（Ａ）利用されている設備コンポーネント（＝設備Ｒ）の工程実行サービス（＝作業工程ＰＰ）が、事前事後条件として必要とする工程実行サービス（例えば、準備工程ＲＰ）を工程実行シーケンスに追加する。具体的には、状態判定部７１は、「利用されている設備Ｒに、利用されている作業工程ＰＰを実行させる時点で、その設備Ｒが、その作業工程ＰＰの待機状態にあるか」を、設備データＤｒにおけるその設備Ｒの状態遷移情報（状態マシン図）を用いて判定する。状態判定部７１により「待機状態にない」と判定された組合せの設備Ｒについて、準備工程取得部７２は、設備データＤｒにおけるその設備Ｒの状態遷移情報を用いて、準備工程ＲＰを取得し、取得した準備工程ＲＰを準備工程追加部７３に通知する。準備工程追加部７３は、通知された準備工程ＲＰを、状態判定部７１により「待機状態にない」と判定された組合せの作業工程ＰＰの前に実行すべき作業工程ＰＰとして、設計工程データ６１に追加する。
【０２３２】
また、工程設計装置１は、（Ｂ）ワーク（部品）のマテリアルフローが補完するために必要な工程実行サービス（例えば、供給工程ＩＰ）を工程実行シーケンスに追加する。具体的には、部品判定部７４は、「利用されている設備Ｒに、利用されている作業工程ＰＰを実行させる」時点で、「その設備Ｒが、その作業工程ＰＰを実行するのに必要な」入力要素が、その設備Ｒに供給されているかを判定する。供給工程追加部７６は、「『部品判定部７４により供給されていないと判定された』入力要素を、その設備Ｒに供給する」供給工程ＩＰを、利用されている作業工程ＰＰの前に実行すべき作業工程ＰＰとして、設計工程データ６１に追加する。
【０２３３】
工程設計装置１は、工程実行サービス呼出し間で出力／入力として受け渡されるワークについて、生産設備レイアウト内での位置をユーザに決定させる（Ｓ３−１６）。具体的には、項目判定部７７は、利用されている設備Ｒと作業工程ＰＰとの組合せについて、「設備データＤｒにおいて、その組合せに対して定義されている要設定項目Ｉｔ」のうち、「その組合せの作業工程ＰＰの入出力要素ごとの要設定項目Ｉｔ」を取得する。「設備データＤｒにおいて、その組合せに対して定義されている要設定項目Ｉｔ」のうち、「その組合せの作業工程ＰＰの入出力要素ごとの要設定項目Ｉｔ」とは、例えば、その設備Ｒにその作業工程ＰＰを実行させるのに必要な入力要素の位置に係る項目である。
【０２３４】
次に、項目判定部７７は、その設備Ｒにその作業工程ＰＰを実行させる時点で、取得した要設定項目Ｉｔに値が設定されてかを判定する。項目判定部７７により「値が設定されていない」と判定された要設定項目Ｉｔについて、表示制御部３０は、その要設定項目Ｉｔに値の設定を促す情報を、表示装置８に表示させる。
【０２３５】
ユーザは、例えば、生産設備レイアウト内での入出力要素（ワーク）の位置を特定し、つまり、レイアウト作成装置６がユーザに提示する仮想生産空間における入出力要素（ワーク）の位置を決定する。レイアウト作成装置６は、仮想生産空間における入出力要素（ワーク）の位置を、工程設計装置１に通知する。
【０２３６】
工程設計装置１は、工程実行サービス呼出し間で出力／入力として受け渡されるワークの生産設備レイアウト内での位置から、工程実行サービスの入力となる目標点の位置情報を取得して、工程実行シーケンスに記述する（Ｓ３−１７）。すなわち、工程設計装置１は、「工程実行シーケンス（＝設計工程データ６１）中の複数の作業工程ＰＰの間でやり取りされるワーク」の位置を、「レイアウト作成装置６がユーザに提示する仮想生産空間における」ワークの位置から、特定する。「工程実行シーケンス（＝設計工程データ６１）中の複数の作業工程ＰＰの間でやり取りされるワーク」は、設備データＤｒにおいて各作業工程ＰＰに対し入出力要素として定義されている。工程設計装置１は、Ｓ３−１７の処理を実行した後、工程実行シーケンス生成処理を完了する（Ｓ３−１８）。
【０２３７】
これまでに図１７、図１８、および、図１９を用いて説明してきた、工程設計装置１の実行する処理は、以下のように整理することができる。すなわち、工程設計装置１の実行する制御方法は、製品を組み立て、または、分解する作業手順（手順データＤｐ）に含まれる複数の作業工程ＰＰの各々について、作業工程ＰＰを実行する実行主体を対応付ける工程設計装置１の制御方法である。工程設計装置１の実行する制御方法は、「各々が、少なくとも１つの設備Ｒにより実行可能な作業工程ＰＰである、複数の標準工程ＣＰ」を定義した標準工程データＤｄを取得する標準工程取得ステップと、「設備Ｒごとに、設備Ｒが実行可能な作業工程ＰＰを定義した設備データＤｒ」を取得する設備取得ステップ（Ｓ３−２）と、「製品ごとに、製品を組み立て、または、分解するための複数の作業工程ＰＰを、実行順序と共に定義した手順データＤｐ」を取得する手順取得ステップ（Ｓ３−３）と、「手順データＤｐにおいて定義されている複数の作業工程ＰＰの各々について、標準工程データＤｄに含まれているか」を判定する工程判定ステップ（Ｓ３−８）と、手順データＤｐの表示画面（工程設計画面）において、「工程判定ステップにて『標準工程データＤｄに含まれていない』と判定された」作業工程ＰＰである特殊工程ＳＰを強調表示する表示制御ステップ（Ｓ３−９）と、を含んでいる。
【０２３８】
前記の方法によれば、前記制御方法は、手順データＤｐにおいて定義されている複数の作業工程ＰＰの各々について、標準工程データＤｄに含まれているかを判定し、標準工程データＤｄに含まれていないと判定した作業工程ＰＰを特殊工程ＳＰとして強調表示する。
【０２３９】
ここで、実際の製品の組立および分解に際しては、予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰが含まれていることが通常である。
【０２４０】
前記制御方法は、そのような「予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰ」が、つまり、標準工程データＤｄにおいて定義されている標準工程ＣＰではない作業工程ＰＰが、手順データＤｐに含まれているかを判定する。そして、前記制御方法は、前記手順データＤｐに含まれている「予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰ」を、特殊工程ＳＰとして強調表示してユーザに通知し、そのような作業工程ＰＰについての検討をユーザに促す。
【０２４１】
したがって、前記制御方法は、製品の組立等の手順中に、予め定義しておくことが困難な、その製品固有の特殊な作業工程ＰＰが含まれる場合にも、ユーザにそのような作業工程ＰＰに対する検討を促し、その製品の組立等の工程を設計できるとの効果を奏する。
【０２４２】
（工程設計画面の概要）
図２０は、工程設計装置１が処理実行中に表示装置８に表示させる画面である工程設計画面の一例を示す図である。工程設計装置１は、表示装置８に、図２０に例示する工程設計画面を表示させ、特に、工程設計装置１の表示制御部３０は、工程設計画面における各種表示内容を制御する。
【０２４３】
表示制御部３０は、工程設計画面の略中央に、「製品の組立手順データ（手順データＤｐ）」表示欄、および、「工程実行シーケンス（＝設計工程データ６１）」表示欄（以下、「シーケンス記述欄」とも称する）を、表示させる。
【０２４４】
表示制御部３０は、「製品の組立手順データ」表示欄において、手順データＤｐ中の各作業工程ＰＰを、実行順序が早い作業工程ＰＰが上側に配置されるように表示させる。また、表示制御部３０は、「工程実行シーケンス」表示欄に、手順データＤｐ中の各作業工程ＰＰを、その実行主体としての各設備Ｒと対応付けて、工程実行シーケンスとして表示させる。表示制御部３０は、「工程実行シーケンス」表示欄において、工程実行シーケンス中の各作業工程ＰＰを、実行順序が早い作業工程ＰＰが上側に配置されるように表示させる。
【０２４５】
表示制御部３０は、「工程実行シーケンス」表示欄に、レイアウト作成装置６から読み込んだ生産設備レイアウトデータに含まれる設備コンポーネント（配置済設備ＲＲ）を実行主体とする「空の工程実行シーケンス」行を表示させる。そして、表示制御部３０は、手順データＤｐ中の各作業工程ＰＰを、その作業工程ＰＰに対応付けられた設備Ｒを実行主体とする「工程実行シーケンス」行に、配置して表示させる。
【０２４６】
図２１は、図２０の工程設計画面におけるシーケンス記述欄（「工程実行シーケンス」表示欄）の表示例および表示内容を説明する図である。図２１の（Ａ）に例示するように、「工程実行シーケンス」表示欄において、縦のレーンは、「工程実行シーケンス」行であり、つまり、生産設備レイアウトデータ中の各配置済設備ＲＲを実行主体とする「工程実行シーケンス」を示している。図２１の（Ｂ）に例示するように、「工程実行シーケンス」表示欄の各レーン内の角丸四角は、設備コンポーネントが提供する工程実行サービスの呼出しを示しており、つまり、各配置済設備ＲＲが実行する作業工程ＰＰを示している。また、「工程実行シーケンス」表示欄における四角（角が丸くない四角）は、ワーク（部品、仕掛かり製品、半製品）を示している。「工程実行シーケンス」表示欄において、角丸四角と四角とをつなぐ矢印は、複数の工程実行サービスの間で、ワークが受け渡されることを示している。さらに、工程実行サービスの呼出しを表す角丸四角の上側に配置されているピンは、その工程実行サービスへのワーク（部品等）の入力を示しており、角丸四角の紙面下側に配置されているピンは、その工程実行サービスからのワークの出力を示している。
【０２４７】
つまり、表示制御部３０は、「工程実行シーケンス」表示欄において、実行主体としての設備Ｒごとに、その設備Ｒが実行する作業工程ＰＰを、その設備Ｒを実行主体とする「工程実行シーケンス」行に、角丸四角形状で表示させる。また、表示制御部３０は、各設備Ｒが実行する作業工程ＰＰについて、その設備Ｒとその作業工程ＰＰとの組合せに対して設備データＤｒおいて定義されている入出力要素（ワーク）を、四角形状（角が丸くない四角の形状）で表示させる。
【０２４８】
そして、表示制御部３０は、その設備Ｒを実行主体とする「工程実行シーケンス」行において、その設備Ｒとその作業工程ＰＰとの組合せに対して定義されている入力要素の入力を、その作業工程ＰＰを示す角丸四角の上側に配置されるピンとして、表示させる。また、表示制御部３０は、その設備Ｒを実行主体とする「工程実行シーケンス」行において、その設備Ｒとその作業工程ＰＰとの組合せに対して定義されている出力要素の出力を、その作業工程ＰＰを示す角丸四角の下側に配置されるピンとして、表示させる。
【０２４９】
（特殊工程の強調表示）
図２２は、図２０の工程設計画面における特殊工程ＳＰの表示例を示す図であり、図１８におけるＳ３−９に対応する処理を実行する工程設計装置１が表示する工程設計画面の一例を示している。工程設計装置１の表示制御部３０は、手順データＤｐ中の作業工程ＰＰのうち、工程判定部２０により特殊工程ＳＰと判定された作業工程ＰＰを、強調表示する。例えば、表示制御部３０は、図２２において、「SlideInLeftPlate」との作業工程ＰＰが特殊工程ＳＰである旨をユーザに通知する。具体的には、表示制御部３０は、「『SlideInLeftPlate』との作業工程ＰＰは、標準工程ＣＰではありません。」との情報をユーザに通知している。
【０２５０】
表示制御部３０は、工程判定部２０により特殊工程ＳＰと判定された作業工程ＰＰについて、さらに、追加教示（例えば、実行主体の設定、設定した実行主体にその作業工程ＰＰを実行させるための制御プログラムの入力など）をユーザに要求する。例えば、表示制御部３０は、図２２において、「手順データＤｐ内の詳細情報を参照して、この作業工程を実行させる設備コンポーネント（設備Ｒ）を指定してください。」との旨をユーザに通知している。
【０２５１】
なお、「SlideInLeftPlate」との作業工程ＰＰは、図１６における「Slide-in」との特殊工程ＳＰの一例である。「SlideInLeftPlate」との作業工程ＰＰは、例えば、「ボディ上の所定位置に置かれた左側プレートの指定個所を押し下げながら前方にスライドさせることで、プレートをボディの爪にはめ込む」という、この製品に固有な特殊工程ＳＰである。「SlideInLeftPlate」との作業工程ＰＰは、「ネジ締付」や「重ね合せ」のような標準工程ＣＰではないため、ライブラリ内には、この「SlideInLeftPlate」との特殊工程ＳＰを実行可能な設備コンポーネント（＝設備Ｒ）は存在しない。したがって、工程設計装置１は、「この特殊工程ＳＰを、どの設備コンポーネントに実行させるか」をユーザに決めさせ、つまり、ユーザに、この特殊工程ＳＰに対応付ける設備Ｒを決定させる。
【０２５２】
ユーザが、「手順データＤｐの当該工程を開く」との選択を実行すると、表示制御部３０は、手順データＤｐ中の「SlideInLeftPlate」との作業工程ＰＰの詳細を表示させる。
【０２５３】
（特殊工程への実行主体の設定）
図２３は、図２０の工程設計画面において、特殊工程ＳＰへの作業主体の対応付けをユーザに求める表示例を示す図であり、図１８のＳ３−１０において、ユーザが特殊工程ＳＰに設備Ｒを対応付ける処理を行なう際の工程設計画面の一例を示している。
【０２５４】
表示制御部３０は、例えば工程設計画面の左側（図２３の紙面左側）に、設備レイアウト内の設備コンポーネント（＝配置済設備ＲＲ）と、各設備コンポーネントが提供する工程実行サービス（および、動作プログラム）を一覧表示させる。すなわち、表示制御部３０は、各配置済設備ＲＲについて、「設備データＤｒにおいて、その配置済設備ＲＲに対して定義されている標準工程ＣＰ、および、その配置済設備ＲＲにその標準工程ＣＰを実行させるための制御プログラム」の一覧を表示させる。
【０２５５】
ここで、図２２を用いて説明したように、工程設計装置１の表示制御部３０は、図１８におけるＳ３−９に対応する処理として、特殊工程ＳＰと判定した「SlideInLeftPlate」との作業工程ＰＰを強調表示（エラー表示）する。また、表示制御部３０は、手順データＤｐ中の「SlideInLeftPlate」との作業工程ＰＰの詳細を表示させる。
【０２５６】
ユーザは図２２におけるエラー指示等に従って、手順データＤｐに含まれている特殊工程ＳＰ：「SlideInLeftPlate」の内容を確認し、その特殊工程ＳＰを実現できそうな設備コンポーネント：「PlateHandlingSubsystem（設備Ｒ（ｘ））」を、手動で、その特殊工程ＳＰに割り付ける（対応付ける）。
【０２５７】
ユーザが特殊工程ＳＰへの設備コンポーネント（設備Ｒ（ｘ））の割付を行うと、工程設計装置１は、その割付に対応した工程実行サービスのスケルトンを自動生成する。「工程実行サービスのスケルトン」は、インタフェース定義のみを持った空のプログラムであり、工程設計装置１は、スケルトン内部の制御プログラムの実装・ティーチングが必要である旨を表示させる（エラー表示させる）。
【０２５８】
図２４は、図１８のＳ３−１０のユーザ操作を受け付けた後の、図２０の工程設計画面の表示例を示す図である。ユーザは、エラー表示に従って工程実行サービスのスケルトンを開き、「ボディ上の所定位置に置かれた左側プレートの指定個所を押し下げながら前方にスライドさせることで、プレートをボディの爪にはめ込む」という動作をオフラインプログラミングする。工程設計装置１は、オフラインプログラミングによって生成された制御プログラムを読込むことによって、エラー表示を解消する。
【０２５９】
以上に説明した通り、工程設計装置１は、製品の組立作業手順に含まれる（つまり、手順データＤｐ中の）作業工程ＰＰのうち、標準工程ＣＰではないと判定した作業工程ＰＰを、つまり、特殊工程ＳＰであると判定した作業工程ＰＰを、強調表示させる。そして、工程設計装置１は、その特殊工程ＳＰを実行させる設備Ｒの決定と、その特殊工程ＳＰを実現する制御プログラムの設備Ｒ（設備コンポーネント）への追加実装と、をユーザに促す。ユーザは、例えば、特殊工程ＳＰの実行主体として選択した設備Ｒに対し、その特殊工程ＳＰについてのオフライン・ティーチングを実施する。工程設計装置１は、ユーザによるオフライン・ティーチングにより生成された制御プログラムを、その設備Ｒにその特殊工程ＳＰを実行させる制御プログラムとして、読み込む。
【０２６０】
工程設計装置１は、ライブラリ（設備データベース３）に事前定義された設備Ｒとその制御プログラムとを利用して、手順データＤｐ中の標準工程ＣＰに対して所望の設備Ｒを対応付け、また、その設備に標準工程ＣＰを実行させる制御プログラムを生成する。
工程設計装置１は、手順データＤｐ中の特殊工程ＳＰについても、ユーザと協調して、特殊工程ＳＰの実行主体を設定し、さらに、設定した実行主体にその特殊工程ＳＰを実現する制御プログラムを生成する。したがって、工程設計装置１は、効率的に、製造のためのシミュレーションを、生産シミュレーション装置７に実行させることができる。
【０２６１】
（未入力項目の取得および追加の一例）
図２５は、未設定の要設定項目Ｉｔについて、ユーザに入力を促す画面の一例を示す図であり、図１９におけるＳ３−１３に対応する処理を実行する工程設計装置１が表示する工程設計画面の一例を示している。工程設計装置１の表示制御部３０は、設備コンポーネントが提供するサービスを利用するにあたり、事前にユーザが設定しなければならない要設定項目Ｉｔの設定ダイアログ／ウィザードを、解説とともに表示させる。すなわち、表示制御部３０は、設備コンポーネントの提供するサービスを利用可能な状態にするために必要な追加教示／設定を強調表示させる。
【０２６２】
例えば、工程実行シーケンス（＝設計工程データ６１）に、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として格納されているとする。そして、工程実行シーケンス中の各作業工程ＰＰには、その作業工程ＰＰの実行主体として、以下の設備Ｒが対応付けられているとする。すなわち、工程実行シーケンスにおいて、作業工程ＰＰ（１）には設備Ｒ（１）が、作業工程ＰＰ（２）には設備Ｒ（２）が、作業工程ＰＰ（３）には設備Ｒ（３）が、作業工程ＰＰ（４）には設備Ｒ（４）が、対応付けられているとする。
【０２６３】
この場合、先ず、項目判定部７７が、設備Ｒ（１）と作業工程ＰＰ（１）との組合せについて、「設備データＤｒにおいて、設備Ｒ（１）と作業工程ＰＰ（１）（標準工程ＣＰ（１））との組合せに対して定義されている、要設定項目Ｉｔ（１−１）〜Ｉｔ（１−ｘ）」を取得する。次に、部品判定部７４は、設備Ｒ（１）に作業工程ＰＰ（１）を実行させる時点で、要設定項目Ｉｔ（１−１）〜Ｉｔ（１−ｘ）の各々に値が設定されているかを判定する。
【０２６４】
また、項目判定部７７は、設備Ｒ（２）と作業工程ＰＰ（２）との組合せについて、「設備データＤｒにおいて、設備Ｒ（２）と作業工程ＰＰ（２）（標準工程ＣＰ（２））との組合せに対して定義されている、要設定項目Ｉｔ（２−１）〜Ｉｔ（２−ｘ）」を取得する。次に、部品判定部７４は、設備Ｒ（２）に作業工程ＰＰ（２）を実行させる時点で、要設定項目Ｉｔ（２−１）〜Ｉｔ（２−ｘ）の各々に値が設定されているかを判定する。同様に、項目判定部７７は、設備Ｒ（３）と作業工程ＰＰ（３）との組合せについて、「設備データＤｒにおいて、設備Ｒ（３）と作業工程ＰＰ（３）（標準工程ＣＰ（３））との組合せに対して定義されている、要設定項目Ｉｔ（３−１）〜Ｉｔ（３−ｘ）」を取得する。次に、部品判定部７４は、設備Ｒ（３）に作業工程ＰＰ（３）を実行させる時点で、要設定項目Ｉｔ（３−１）〜Ｉｔ（３−ｘ）の各々に値が設定されているかを判定する。また、項目判定部７７は、設備Ｒ（４）と作業工程ＰＰ（４）との組合せについて、「設備データＤｒにおいて、設備Ｒ（４）と作業工程ＰＰ（４）（標準工程ＣＰ（４））との組合せに対して定義されている、要設定項目Ｉｔ（４−１）〜Ｉｔ（４−ｘ）」を取得する。次に、部品判定部７４は、設備Ｒ（４）に作業工程ＰＰ（４）を実行させる時点で、要設定項目Ｉｔ（４−１）〜Ｉｔ（４−ｘ）の各々に値が設定されているかを判定する。
【０２６５】
例えば、項目判定部７７は、設備Ｒ（３）に作業工程ＰＰ（３）を実行させる時点で、要設定項目Ｉｔ（３−１）に値が設定されていないと判定すると、判定結果を表示制御部３０に通知して、要設定項目Ｉｔ（３−１）について、値の設定を促す情報を表示させる。
【０２６６】
受付部４０は、要設定項目Ｉｔ（３−１）に値を入力するユーザ操作を受け付け、ユーザ操作により入力された値を設定した要設定項目Ｉｔ（３−１）を、設計工程データ６１における「設備Ｒ（３）と作業工程ＰＰ（３）（標準工程ＣＰ（３））との組合せ」に対応付ける。
【０２６７】
なお、前述の通り、受付部４０は、ユーザ操作により入力された値を設定した要設定項目Ｉｔ（３−１）を、第１設定部５１または第２設定部５２に通知してもよい。そして、第１設定部５１または第２設定部５２が、値が設定された要設定項目Ｉｔ（３−１）を、設計工程データ６１における「設備Ｒ（３）と作業工程ＰＰ（３）との組合せ」に対応付けてもよい。
【０２６８】
（準備工程および供給工程の取得および追加の一例）
図２６は、手順データＤｐにおける作業工程に、準備工程ＲＰおよび供給工程ＩＰの少なくとも一方を追加する前後のシーケンス記述欄の一例を示す図である。すなわち、図２６の（Ａ）は、図１９におけるＳ３−１５に対応する処理を工程設計装置１が実行する前の工程設計画面の一例を、図２６の（Ｂ）は、Ｓ３−１５に対応する処理を工程設計装置１が実行した後の工程設計画面の一例を、示している。
【０２６９】
（Ａ．準備工程の取得および追加の一例）
例えば、工程設計装置１の状態判定部７１は、「ねじ締付コンポーネント（設備Ｒ（ｘ））」の持つ状態マシンから、「ねじの挿入締付」サービス（作業工程ＰＰ（ｘ））の実行の前に、「ねじピックアップ」サービス（準備工程ＲＰ（ｘ））の実行が必要であると判定する。
【０２７０】
状態判定部７１による上記判定結果を受けて、準備工程追加部７３は、「ねじの挿入締付」サービス（作業工程ＰＰ（ｘ））の実行の前に実行すべきサービスとして、「ねじピックアップ」サービス（準備工程ＲＰ（ｘ））を、工程実行シーケンスに追加する。以下、工程設計装置１が実行する「準備工程ＲＰの取得および追加」処理の詳細を説明する。
【０２７１】
例えば、工程実行シーケンス（＝設計工程データ６１）に、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として格納されているとする。そして、工程実行シーケンス中の各作業工程ＰＰには、その作業工程ＰＰの実行主体として、以下の設備Ｒが対応付けられているとする。すなわち、工程実行シーケンスにおいて、作業工程ＰＰ（１）には設備Ｒ（１）が、作業工程ＰＰ（２）には設備Ｒ（２）が、作業工程ＰＰ（３）には設備Ｒ（３）が、作業工程ＰＰ（４）には設備Ｒ（４）が、対応付けられているとする。
【０２７２】
この場合、先ず、状態判定部７１が、作業工程ＰＰ（１）と設備Ｒ（１）との組合せ、作業工程ＰＰ（２）と設備Ｒ（２）との組合せ、作業工程ＰＰ（３）と設備Ｒ（３）との組合せ、および、作業工程ＰＰ（４）と設備Ｒ（４）との組合せについて、以下の判定を行なう。すなわち、状態判定部７１は、「設備Ｒ（１）に作業工程ＰＰ（１）を実行させる時点で、設備Ｒ（１）が、作業工程ＰＰ（１）の待機状態にあるか」を、設備データＤｒにおける設備Ｒ（１）の状態遷移情報を用いて判定する。また、状態判定部７１は、「設備Ｒ（２）に作業工程ＰＰ（２）を実行させる時点で、設備Ｒ（２）が、作業工程ＰＰ（２）の待機状態にあるか」を、設備データＤｒにおける設備Ｒ（２）の状態遷移情報を用いて判定する。同様に、状態判定部７１は、「設備Ｒ（３）に作業工程ＰＰ（３）を実行させる時点で、設備Ｒ（３）が、作業工程ＰＰ（３）の待機状態にあるか」を設備Ｒ（３）の状態遷移情報を用いて判定する。また、状態判定部７１は、「設備Ｒ（４）に作業工程ＰＰ（４）を実行させる時点で、設備Ｒ（４）が、作業工程ＰＰ（４）の待機状態にあるか」を設備Ｒ（４）の状態遷移情報を用いて判定する。
【０２７３】
例えば、状態判定部７１は、設備Ｒ（３）に作業工程ＰＰ（３）を実行させる時点で、設備Ｒ（３）が、作業工程ＰＰ（３）の待機状態にないと判定すると、「設備Ｒ（３）と作業工程ＰＰ（３）との組合せ」を、準備工程取得部７２に通知する。
【０２７４】
準備工程取得部７２は、状態判定部７１から通知された「設備Ｒ（３）と作業工程ＰＰ（３）との組合せ」の作業工程ＰＰ（３）について、設備データＤｒに定義されている「設備Ｒ（３）の状態遷移情報」を用いて、準備工程ＲＰを取得する。例えば、準備工程取得部７２は、設備Ｒ（３）の状態遷移情報を参照して、先ず、「初期状態または作業工程ＰＰ（３）の実行状態」から、「作業工程ＰＰ（３）の待機状態」へと遷移するまでに、設備Ｒ（３）が至る状態である中間状態を取得する。次に、準備工程取得部７２は、取得した中間状態が、何らかの作業工程ＰＰの実行状態である場合、その中間状態において実行される作業工程ＰＰを、準備工程ＲＰとして取得する。準備工程取得部７２は、取得した準備工程ＲＰを、準備工程追加部７３に通知する。
【０２７５】
準備工程追加部７３は、準備工程取得部７２から通知された準備工程ＲＰを、状態判定部７１から通知された「設備Ｒ（３）と作業工程ＰＰ（３）との組合せ」の作業工程ＰＰ（３）の前に実行すべき作業工程ＰＰとして、設計工程データ６１に追加する。
【０２７６】
準備工程追加部７３による上述のデータの追加によって、設計工程データ６１には、以下のデータが格納される。すなわち、設計工程データ６１には、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、準備工程ＲＰと、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として格納される。また、設計工程データ６１において、作業工程ＰＰ（１）には設備Ｒ（１）が、作業工程ＰＰ（２）には設備Ｒ（２）が、準備工程ＲＰおよび作業工程ＰＰ（３）には設備Ｒ（３）が、作業工程ＰＰ（４）には設備Ｒ（４）が、各作業工程ＰＰの実行主体として対応付けられる。
【０２７７】
（Ｂ．供給工程の取得および追加の一例）
部品判定部７４は、「ねじピックアップ」サービス（準備工程ＲＰ（ｘ））の実行前に、入力として、「どこかに供給されたネジを取りにいく必要がある」と判定する。部品判定部７４による上記判定結果を受けて、供給工程取得部７５は、「『ネジ共有』工程実行能力を持った設備コンポーネント（設備Ｒ）に、ネジを取りに行かせる必要がある」と判定する。
【０２７８】
供給工程取得部７５は、設備レイアウト内の設備コンポーネント（＝配置済設備ＲＲ）の中で唯一、「ねじフィーダ」コンポーネント（設備Ｒ（ｚ））が供給能力を備えていることを確認すると、以下の処理を追加する。すなわち、供給工程取得部７５は、「ねじピックアップ」サービス（準備工程ＲＰ（ｘ））の関連サービス（供給工程ＩＰ（ｚ））として、「ねじフィーダ」コンポーネント（設備Ｒ（ｚ））による「ネジ供給」サービス（供給工程ＩＰ（ｚ））を取得する。供給工程追加部７６は、工程実行シーケンス（＝設計工程データ６１）における「準備工程ＲＰ（ｘ）と準備工程ＲＰ（ｘ）の実行主体：設備Ｒ（ｘ）との組合せ」の前に、「供給工程ＩＰ（ｚ）と設備Ｒ（ｚ）との組合せ」を、追加する。
【０２７９】
「ねじピックアップ」サービス（準備工程ＲＰ（ｘ））の実行のために、「ネジ位置（ネジ取得位置）：要設定項目Ｉｔ（ｗ）」について、予め値を設定しておく必要がある場合、供給工程取得部７５は、さらに以下の情報を取得する。すなわち、供給工程取得部７５は、「ねじフィーダ」コンポーネント（設備Ｒ（ｚ））の「ネジ供給」サービス（供給工程ＩＰ（ｚ））に対して定義されている「ネジ位置（ネジ供給位置）：要設定項目Ｉｔ（ｚ）」に設定されている値を取得する。そして、供給工程追加部７６は、「ネジ供給位置：要設定項目Ｉｔ（ｚ）」に設定されている値を、「ネジ取得位置：要設定項目Ｉｔ（ｗ）」に設定する。以下、工程設計装置１が実行する「供給工程ＩＰの取得および追加」処理の詳細を説明する。
【０２８０】
例えば、工程実行シーケンス（＝設計工程データ６１）に、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として格納されているとする。そして、工程実行シーケンス中の各作業工程ＰＰには、その作業工程ＰＰの実行主体として、以下の設備Ｒが対応付けられているとする。すなわち、工程実行シーケンスにおいて、作業工程ＰＰ（１）には設備Ｒ（１）が、作業工程ＰＰ（２）には設備Ｒ（２）が、作業工程ＰＰ（３）には設備Ｒ（３）が、作業工程ＰＰ（４）には設備Ｒ（４）が、対応付けられているとする。
【０２８１】
この場合、先ず、部品判定部７４が、設備Ｒ（１）と作業工程ＰＰ（１）との組合せについて、「設備データＤｒにおいて、設備Ｒ（１）と作業工程ＰＰ（１）（標準工程ＣＰ（１））との組合せに対して定義されている、入力要素（ワーク）」を取得する。次に、部品判定部７４は、取得した入力要素が、設備Ｒ（１）に作業工程ＰＰ（１）を実行させる時点で、設備Ｒ（１）に供給されているかを判定する。
【０２８２】
また、部品判定部７４は、設備Ｒ（２）と作業工程ＰＰ（２）との組合せについて、設備データＤｒを参照して、設備Ｒ（２）に作業工程ＰＰ（２）を実行させる時点で、設備Ｒ（２）が作業工程ＰＰ（２）を実行するのに必要な入力要素が設備Ｒ（２）に供給されているかを判定する。同様に、部品判定部７４は、設備Ｒ（３）と作業工程ＰＰ（３）との組合せについて、設備データＤｒを参照して、設備Ｒ（３）に作業工程ＰＰ（３）を実行させる時点で、設備Ｒ（３）が作業工程ＰＰ（３）を実行するのに必要な入力要素が設備Ｒ（３）に供給されているかを判定する。また、部品判定部７４は、設備Ｒ（４）と作業工程ＰＰ（４）との組合せについて、設備データＤｒを参照して、設備Ｒ（４）に作業工程ＰＰ（４）を実行させる時点で、設備Ｒ（４）が作業工程ＰＰ（４）を実行するのに必要な入力要素が設備Ｒ（４）に供給されているかを判定する。
【０２８３】
例えば、部品判定部７４は、設備Ｒ（３）に作業工程ＰＰ（３）を実行させる時点で、設備Ｒ（３）が作業工程ＰＰ（３）を実行するのに必要な入力要素が設備Ｒ（３）に供給されていないと判定すると、「設備Ｒ（３）と作業工程ＰＰ（３）との組合せ」を、供給工程取得部７５に通知する。
【０２８４】
供給工程取得部７５は、先ず、部品判定部７４から通知された「設備Ｒ（３）と作業工程ＰＰ（３）との組合せ」について、「『設備Ｒ（３）が作業工程ＰＰ（３）を実行するのに必要な入力要素』を、設備Ｒ（３）に供給する」作業工程である供給工程ＩＰを取得する。供給工程取得部７５は、例えば、標準工程データＤｄにおいて定義されている標準工程ＣＰの中から、「『設備Ｒ（３）が作業工程ＰＰ（３）を実行するのに必要な入力要素』を、設備Ｒ（３）に供給する」作業工程ＰＰを、供給工程ＩＰとして取得する。
【０２８５】
供給工程取得部７５は、取得した供給工程ＩＰが標準工程ＣＰであるかを判定し、供給工程ＩＰが標準工程ＣＰであると判定すると、供給工程ＩＰに、「設備データＤｒにおいて供給工程ＩＰを実行することができると定義されている設備Ｒ（ｘ）」を対応付ける。また、供給工程ＩＰが特殊工程ＳＰであると判定すると、供給工程取得部７５は、供給工程ＩＰに、「ユーザにより、供給工程ＩＰの実行主体として設定された設備Ｒ（ｘ）」を対応付ける。供給工程取得部７５は、実行主体として設備Ｒ（ｘ）を対応付けた供給工程ＩＰを、つまり、「供給工程ＩＰと、その供給工程ＩＰの実行主体である設備Ｒ（ｘ）と、の組合せ」を、供給工程追加部７６に通知する。
【０２８６】
供給工程追加部７６は、供給工程追加部７６から通知された「供給工程ＩＰと、その供給工程ＩＰの実行主体である設備Ｒ（ｘ）と、の組合せ」を、設計工程データ６１に追加する。すなわち、供給工程追加部７６は、供給工程追加部７６から通知された供給工程ＩＰを、作業工程ＰＰ（３）の前に実行されるべき作業工程ＰＰとして、設計工程データ６１に追加する。また、供給工程追加部７６は、供給工程追加部７６から通知された「供給工程ＩＰの実行主体である設備Ｒ（ｘ）」を、供給工程ＩＰと対応付けて、設計工程データ６１に格納する。
【０２８７】
供給工程追加部７６による上述のデータの追加によって、設計工程データ６１には、以下のデータが格納される。すなわち、設計工程データ６１には、作業工程ＰＰ（１）と、作業工程ＰＰ（２）と、供給工程ＩＰと、作業工程ＰＰ（３）と、作業工程ＰＰ（４）と、がこの順を実行順序として格納される。また、設計工程データ６１において、作業工程ＰＰ（１）には設備Ｒ（１）が、作業工程ＰＰ（２）には設備Ｒ（２）が、供給工程ＩＰには設備Ｒ（ｘ）が、作業工程ＰＰ（３）には設備Ｒ（３）が、作業工程ＰＰ（４）には設備Ｒ（４）が、各作業工程ＰＰの実行主体として対応付けられる。
【０２８８】
（ユーザからの教示と未設定項目への値設定の一例）
図２７は、設備レイアウト上のユーザ操作から、要設定項目Ｉｔに値を設定する例を示す図であり、図１９におけるＳ３−１６およびＳ３−１７に対応する処理を実行する工程設計装置１が表示する工程設計画面の一例を示している。
【０２８９】
工程設計装置１の表示制御部３０は、「工程実行シーケンス」表示欄において、設備Ｒと作業工程ＰＰとの組合せに対して設備データＤｒおいて定義されている入出力要素（ワーク）を、四角形状（角が丸くない四角の形状）で表示させる。「工程実行シーケンス」表示欄において四角形状で表現されるワークは、そのワークの３次元形状および２次元形状についての情報に加え、レイアウト作成装置６が提供する仮想生産空間（３次元設備レイアウト）における絶対位置情報も含んでいる。工程設計装置１は、レイアウト作成装置６から「ワークの絶対位置情報」を取得し、取得した「ワークの絶対位置情報」を、工程実行サービスの入力情報として利用する。
【０２９０】
前述の通り、設備データＤｒにおいて、設備Ｒと作業工程ＰＰ（標準工程ＣＰ）との組合せには要設定項目Ｉｔが定義されており、要設定項目Ｉｔは、入出力要素（ワーク）に係る要設定項目Ｉｔを含んでいる。そこで、工程設計装置１は、入出力要素（ワーク）に係る要設定項目Ｉｔに、特に、入出力要素の位置についての要設定項目Ｉｔに、レイアウト作成装置６から取得する「ワークの絶対位置情報」を、設定する。
【０２９１】
§４．変形例
（分解作業手順への適用）
これまでに説明してきた実施形態においては、工程設計装置１が、製品ごとに、「その製品を組み立てる作業手順（組立作業手順）」に含まれる複数の作業工程ＰＰの各々に対し、その作業工程ＰＰの実行主体（設備Ｒ）等を設定する例を説明してきた。しかしながら、工程設計装置１は、製品ごとに、「その製品を分解する作業手順（分解作業手順）」に含まれる複数の作業工程ＰＰの各々に対し、その作業工程ＰＰの実行主体（設備Ｒ）等を設定してもよい。
【０２９２】
（ユーザにより追加された制御プログラム等の追加登録）
工程設計装置１は、特殊工程ＳＰを、新たな「標準工程ＣＰ」として、標準工程データＤｄに追加できてもよい。また、工程設計装置１は、ユーザが追加した「特殊工程ＳＰを設備Ｒ（ｘ）に実現させるための制御プログラム」を、設備データＤｒに追加してもよい。すなわち、工程設計装置１は、特殊工程ＳＰと設備Ｒ（ｘ）との組合せに対して「特殊工程ＳＰを設備Ｒ（ｘ）に実現させるための制御プログラム」を対応付けたデータを、設備データＤｒに追加してもよい。これによって、ユーザは、特殊工程ＳＰを標準工程ＣＰとして利用することが可能となる。
【０２９３】
工程設計装置１が一度作成した「特殊工程ＳＰを、設備Ｒ（ｘ）に実行させる制御プログラム」を設備データベース３に登録することによって、生産シミュレーション装置７は、類似の製品組立のシミュレーションにおいて、その制御プログラムを利用できるようになる。
【０２９４】
〔ソフトウェアによる実現例〕
工程設計装置１、手順生成装置５、レイアウト作成装置６、および、生産シミュレーション装置７の制御ブロックは、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ソフトウェアによって実現してもよい。例えば、工程設計装置１の標準工程取得部１１、手順取得部１２、設備取得部１３、工程判定部２０、表示制御部３０、受付部４０、第１設定部５１、第２設定部５２、および、検証部７０は、集積回路等に形成された論理回路によって実現してもよいし、ソフトウェアによって実現してもよい。
【０２９５】
後者の場合、工程設計装置１、手順生成装置５、レイアウト作成装置６、および、生産シミュレーション装置７は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば１つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばＣＰＵ（Central Processing Unit）を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ＲＯＭ（Read Only Memory）等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するＲＡＭ（Random Access Memory）などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０２９６】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【０２９７】
１      工程設計装置
５      手順生成装置
Ｄｄ      標準工程データ
Ｄｐ      手順データ（作業手順）
Ｄｒ      設備データ
ＲＰ      準備工程
ＩＰ      供給工程
Ｉｔ      要設定項目（項目）
１１      標準工程取得部
１２      手順取得部
１３      設備取得部
２０      工程判定部
３０      表示制御部
４０      受付部
５１      第１設定部（設定部）
５２      第２設定部（設定部）
６１      設計工程データ
７１      状態判定部
７２      準備工程取得部
７３      準備工程追加部
７４      部品判定部
７６      供給工程追加部
７７      項目判定部
Ｓ３−２  設備取得ステップ
Ｓ３−３  手順取得ステップ
Ｓ３−８  工程判定ステップ
Ｓ３−９  表示制御ステップ
【図１】
2019106043.tif 000003
【図２】
2019106043.tif 000004
【図３】
2019106043.tif 000005
【図４】
2019106043.tif 000006
【図５】
2019106043.tif 000007
【図６】
2019106043.tif 000008
【図７】
2019106043.tif 000009
【図８】
2019106043.tif 000010
【図９】
2019106043.tif 000011
【図１０】
2019106043.tif 000012
【図１１】
2019106043.tif 000013
【図１２】
2019106043.tif 000014
【図１３】
2019106043.tif 000015
【図１４】
2019106043.tif 000016
【図１５】
2019106043.tif 000017
【図１６】
2019106043.tif 000018
【図１７】
2019106043.tif 000019
【図１８】
2019106043.tif 000020
【図１９】
2019106043.tif 000021
【図２０】
2019106043.tif 000022
【図２１】
2019106043.tif 000023
【図２２】
2019106043.tif 000024
【図２３】
2019106043.tif 000025
【図２４】
2019106043.tif 000026
【図２５】
2019106043.tif 000027
【図２６】
2019106043.tif 000028
【図２７】
2019106043.tif 000029