(57)【特許請求の範囲】
【請求項１】
部品の動作の種類を表す動作パターンと前記部品の動作を特定するための条件を表す動作条件とを記憶する第１記憶部と、
前記部品の動作パターンと動作条件の関係と、前記部品に対する作業の名称を表す作業名との対応関係を記憶する第２記憶部と、
前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係を記憶する第３記憶部と、
処理対象の作業における前記部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、前記第１記憶部に記憶された動作パターン及び動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求める動作解析部と、
前記第２記憶部に記憶された前記対応関係に基づいて、前記動作解析部が求めた前記動作パターンと動作条件の関係に対応する作業名を求める名称演算部と、
前記第３記憶部に記憶された前記対応関係に基づいて、前記名称演算部が求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業工程構築部と、
を備える作業内容生成装置。
【請求項２】
前記アニメーション情報は、処理対象の作業における前記部品の位置を含む動作情報を含み、
前記動作解析部は、前記アニメーション情報の前記動作情報に含まれる前記部品の位置に基づいて前記動作パターンと動作条件の関係を求める
請求項１に記載の作業内容生成装置。
【請求項３】
前記アニメーション情報は、前記部品に関係づけた前記部品名を含む部品属性を含み、
前記第２記憶部は、前記部品に関係づけた前記部品名を含む部品属性と前記作業名との対応関係を記憶し、
前記名称演算部は、前記動作解析部で求めた前記動作パターンと動作条件の関係及び前記アニメーション情報の前記部品属性に含まれる前記部品名に基づいて前記作業名を求める
請求項１または請求項２に記載の作業内容生成装置。
【請求項４】
前記アニメーション情報は、前記部品に対する作業を補足する内容を表す注記情報を含み、
前記第２記憶部は、前記部品に対する作業を補足する内容と前記作業名との対応関係を記憶し、
前記名称演算部は、前記動作解析部で求めた前記動作パターンと動作条件の関係及び前記アニメーション情報の前記注記情報に含まれる前記部品の動作を補足する内容に基づいて作業名を求める
請求項１〜請求項３の何れか１項に記載の作業内容生成装置。
【請求項５】
前記名称演算部は、
前記動作解析部で求めた前記動作パターンと動作条件の関係に基づいて第１の作業名候補を求めると共に前記アニメーション情報の前記部品属性に含まれる前記部品名に基づいて第２の作業名候補を求めるアニメ化工程算出部
を含み、
前記アニメ化工程算出部で求めた前記第１の作業名候補、及び第２の作業名候補から作業名を求める
請求項３に記載の作業内容生成装置。
【請求項６】
前記名称演算部は、
前記動作解析部で求めた前記動作パターンと動作条件の関係に基づいて第１の作業名候補を求めるアニメ化工程算出部と、
前記アニメーション情報に含まれ前記部品に対する作業を補足する内容を表す注記情報に基づいて第２の作業名候補を求める付帯工程算出部と
を含み、
前記アニメ化工程算出部で求めた前記第１の作業名候補、及び前記付帯工程算出部で求めた第２の作業名候補から作業名を求める
請求項４に記載の作業内容生成装置。
【請求項７】
入力される物品の３次元空間内での動きを示すアニメーション情報を、前記物品の含まれる部品の３次元空間内での動きを示す部分アニメーション情報に分解し、分解した部分アニメーション情報を、名称を有する部品の３次元空間内での動きを示すアニメーション情報として出力する分解部と、
請求項１〜請求項６の何れか１項に記載の作業内容生成装置を備えた作業内容生成部と、
前記作業内容生成部で生成された作業内容に基づいて前記作業内容を作業の順序に従って配列した作業フローを生成する作業フロー生成部と、
を備える作業フロー生成装置。
【請求項８】
処理対象の作業における部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、第１記憶部に記憶された前記部品の動作の種類を表す動作パターン及び前記部品の動作を特定するための条件を表す動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求める動作解析ステップと、
第２記憶部に記憶された前記部品の動作パターンと前記部品に対する作業の名称を表す作業名との対応関係に基づいて、前記求めた部品の動作パターンと動作条件の関係に対応する作業名を求める名称演算ステップと、
第３記憶部に記憶された前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係に基づいて、前記求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業工程構築ステップと、
を備える作業内容生成方法。
【請求項９】
入力される物品の３次元空間内での動きを示すアニメーション情報を、前記物品の含まれる部品の３次元空間内での動きを示す部分アニメーション情報に分解し、分解した部分アニメーション情報を、名称を有する部品の３次元空間内での動きを示すアニメーション情報として出力する分解ステップと、
処理対象の作業における部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、第１記憶部に記憶された前記部品の動作の種類を表す動作パターン及び前記部品の動作を特定するための条件を表す動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求め、第２記憶部に記憶された前記部品の動作パターンと前記部品に対する作業の名称を表す作業名との対応関係に基づいて、前記求めた部品の動作パターンと動作条件の関係に対応する作業名を求め、第３記憶部に記憶された前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係に基づいて、前記求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業内容生成ステップと、
前記作業内容生成ステップで求めた作業内容に基づいて前記作業内容を作業の順序に従って配列した作業フローを生成する作業フロー生成ステップと、
を備える作業フロー生成方法。
【請求項１０】
コンピュータに、
前記コンピュータを、処理対象の作業における部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、第１記憶部に記憶された前記部品の動作の種類を表す動作パターン及び前記部品の動作を特定するための条件を表す動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求める動作解析ステップと、
第２記憶部に記憶された前記部品の動作パターンと前記部品に対する作業の名称を表す作業名との対応関係に基づいて、前記求めた部品の動作パターンと動作条件の関係に対応する作業名を求める名称演算ステップと、
第３記憶部に記憶された前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係に基づいて、前記求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業工程構築ステップと、
を含む処理を実行させるための作業内容生成プログラム。
【請求項１１】
コンピュータに、
前記コンピュータを、入力される物品の３次元空間内での動きを示すアニメーション情報を、前記物品の含まれる部品の３次元空間内での動きを示す部分アニメーション情報に分解し、分解した部分アニメーション情報を、名称を有する部品の３次元空間内での動きを示すアニメーション情報として出力する分解ステップと、
処理対象の作業における部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、第１記憶部に記憶された前記部品の動作の種類を表す動作パターン及び前記部品の動作を特定するための条件を表す動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求め、第２記憶部に記憶された前記部品の動作パターンと前記部品に対する作業の名称を表す作業名との対応関係に基づいて、前記求めた部品の動作パターンと動作条件の関係に対応する作業名を求め、第３記憶部に記憶された前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係に基づいて、前記求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業内容生成ステップと、
前記作業内容生成ステップで求めた作業内容に基づいて前記作業内容を作業の順序に従って配列した作業フローを生成する作業フロー生成ステップと、
を含む処理を実行させるための作業フロー生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示の技術は、作業内容生成装置、作業フロー生成装置、作業内容生成方法、作業フロー生成方法、作業内容生成プログラム、及び作業フロー生成プログラムに関する。
【背景技術】
【０００２】
単一部品または複数部品を含む部品群を用いて製品を製造する場合には、単一部品または部品群の各部品に対する作業について、作業内容と作業順序が明確にされている。一例としては、製造ラインの検討などを実施する場合、単一部品または部品群の各部品に対する作業について、作業内容と作業順序が明確にされる。これにより、作業に対する作業内容と作業順序から作業に要する工数等を求めることができ、製造ラインにおける作業に要する工数等を評価することができる。
【０００３】
作業内容と作業順序を設定する方法の一例としては、手動で作業内容と作業順序を設定する技術が知られている。しかし、作業内容及び作業順序を手動で設定する場合、製品の組立作業に必要な作業内容及び作業順序の理解は個人スキルに依存する。個人スキルの相違は、作業内容及び作業順序の設定漏れ等を招く場合があり、設定された作業内容及び作業順序にバラツキが発生することがある。また、個人スキルの相違により、設定された作業内容及び作業順序の理解に要する時間に大きなバラツキが発生することがある。
【０００４】
一方、作業内容と作業順序を手動で設定することに代えて、作業内容等を自動的に抽出する技術が知られている。一例としては、製品の部品構成を示すＣＡＤデータに含まれる部品の属性データや過去に実施された作業内容等の設定データから作業内容等を自動的に抽出する技術が知られている。しかし、製品の部品に関する属性データや過去の設定データを利用して作業内容等を自動抽出する場合、抽出漏れや過抽出が生じることがある。これは過去に自動抽出した作業内容等に類似した自動設定のパターンが採用されるためである。このため自動的に抽出された作業内容や作業順序を、手動により検証する必要がある。
【０００５】
また、生産ラインにおける作業検証のために作業標準の作成と工数設定を支援する技術が知られている。一例としては、物品の動きを示すアニメーションに基づいて作業者の動作分析を行い、作業の工数を設定し、一連の作業に対する作業単位を決定する技術が知られている。作業標準の作成では、作業内容に対応する要素作業をシステム内に標準ライブラリとして保有し、ユーザは標準ライブラリより要素作業を選択して当該システムに入力している。しかし、標準ライブラリに登録されている要素作業を作業者が自ら判断して選択したり、入力したりすることは、個人スキルに依存することになる。従って、作業内容等にバラツキが発生することがある。
【０００６】
また、複数部品を含む製品の組立手順を表す製造フローを生成する技術が知られている。一例としては、基本構成の部品による製品の製造フローから、部品構成が異なるカスタマイズ構成による製品の製造フローを作成する技術が知られている。カスタマイズ構成による製品の製造フローを作成するにあたっては、カスタマイズ構成の部品を取り出して実装できるかどうかの判定を組立アニメーションにて判定し、部品の作業順序を入れ替え全体の製造フローを作成している。しかし、カスタマイズ構成の製造フローを生成するためには、予め用意された基本構成による製造フローが入力として必要である。基本構成による製造フローを予め用意することは、個人スキルに依存することになる。従って、作業内容等にバラツキが発生することがある。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−２０７５１１号公報
【特許文献２】特開２００４−３２６３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、個人スキルに依存する作業内容等の設定は、製造ラインの評価に影響する。つまり、同一の製造ラインを複数の作業者が評価した場合、評価を実施した作業者により評価結果が相違することがある。製造ラインの評価について、個人スキルに依存した属人的な作業となることを排除することが求められており、特定の専門家または多人数で評価結果をすり合わせする等の時間を要する作業等によって製造ライン検討が行われている。
【０００９】
１つの側面では、経験やスキルに依存することなく作業内容を決定することを目的とする。
【課題を解決するための手段】
【００１０】
開示の技術は、名称を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品について該部品の動きを部品の動作として該部品の動作範囲を求める。また、求めた動作範囲内における部品の動作に対して予め対応付けられた部品の動作の種類を動作パターンとして求める。次に、求めた動作パターンに対して予め対応付けられた作業名を求めると共に、部品の名称から部品名を求める。そして、求めた作業名及び部品名に対して予め対応付けられた作業内容を部品に対する作業を示す作業内容として求めることにより、作業内容を生成する。
【発明の効果】
【００１１】
１つの実施態様では、経験やスキルに依存することなく作業内容を決定できる、という効果を有する。
【図面の簡単な説明】
【００１２】
【図１】実施形態に係る作業フロー生成装置の概略構成を示すブロック図である。
【図２】フロー生成装置として機能するコンピュータの概略ブロック図である。
【図３】動作パターンデータベースの一例を示すイメージ図である。
【図４】動作条件データベースの一例を示すイメージ図である。
【図５】作業−動作データベースの一例を示すイメージ図である。
【図６】作業−部品データベースの一例を示すイメージ図である。
【図７】作業−作業キーワードデータベースの一例を示すイメージ図である。
【図８】作業内容データベースの一例を示すイメージ図である。
【図９】（Ａ）はアニメーション情報を示し、（Ｂ）は作業フローを示し、（Ｃ）は作業内容を追加したイメージ図である。
【図１０】アニメーション情報のイメージ図である。
【図１１】作業フロー生成処理の流れの一例を示すフローチャートである。
【図１２】作業内容生成処理の流れを示すフローチャートである。
【図１３】作業内容生成処理の流れを示すフローチャートである。
【図１４】作業内容生成処理の流れを示すフローチャートである。
【図１５】作業内容生成処理の流れを示すフローチャートである。
【図１６】作業内容生成処理の流れを示すフローチャートである。
【図１７】作業フロー情報の出力結果を示すイメージ図である。
【図１８】アニメーション情報を示すイメージ図である。
【図１９】作業フロー情報の出力結果を示すイメージ図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
【００１４】
（第１実施形態）
図１には、本実施形態に係る作業フロー生成装置１０が示されている。作業フロー生成装置１０は３次元空間内で物体の動きを示すアニメーション情報から物体の一部に含まれる部品に対する作業内容や作業フローを生成する処理を行う。作業フロー生成装置１０は分解部１２、作業内容生成装置１４、及び作業フロー構築部１６を備えている。作業内容生成装置１４は、動作解析部２０、名称演算部２６、及び作業工程構築部２８を備えている。また作業内容生成装置１４は、動作パターンデータベース（以下、データベースをＤＢと略記する。）３０、動作条件ＤＢ３２を記憶する第１記憶部３４を備えている。また作業内容生成装置１４は、作業−動作ＤＢ３６と作業−作業キーワードＤＢ３８と作業−部品ＤＢ４０とを記憶する第２記憶部４２と、作業内容ＤＢ４４を記憶する第３記憶部４６と、を備えている。また名称演算部２６は、アニメ化工程算出部２２及び付帯工程算出部２４を備えている。
【００１５】
作業フロー生成装置１０は、例えば図２に示すコンピュータ８０で実現することができる。コンピュータ８０はＣＰＵ５０、メモリ５２、不揮発性の記憶部５４、キーボード５８、マウス５９、ディスプレイ５７を備え、これらはバス５６を介して互いに接続されている。なお、記憶部５４はＨＤＤ(Hard Disk Drive)やフラッシュメモリ等によって実現できる。記録媒体としての記憶部５４には、コンピュータ８０を作業フロー生成装置１０として機能させるための作業フロー生成プログラム６２が記憶されている。また、記憶部５４には、動作パターンＤＢ３０、動作条件ＤＢ３２、作業−動作ＤＢ３６、作業−作業キーワードＤＢ３８、作業−部品ＤＢ４０、作業内容ＤＢ４４が各々記憶されている。ＣＰＵ５０は、作業フロー生成プログラム６２を記憶部５４から読み出してメモリ５２に展開し、作業フロー生成プログラム６２が有するプロセスを順次実行する。
【００１６】
作業フロー生成プログラム６２は、分解プロセス６４、作業内容生成プロセス６６、及び作業フロー構築プロセス７８を有する。ＣＰＵ５０は、分解プロセス６４を実行することで、図１に示す分解部１２として動作する。作業フロー生成装置１０がコンピュータ８０で実現され、分解プロセス６４を実行することでコンピュータ８０は分解部１２（図１）として動作される。この場合、メモリ５２の一部領域は分解部１２の処理で求められた部分アニメーション情報を格納する領域として用いられる。またＣＰＵ５０は、作業内容生成プロセス６６を実行することで、図１に示す作業内容生成装置１４として動作する。またＣＰＵ５０は、作業フロー構築プロセス７８を実行することで、図１に示す作業フロー構築部１６として動作する。作業フロー生成装置１０がコンピュータ８０で実現され、作業フロー構築プロセス７８を実行することでコンピュータ８０は作業フロー構築部１６（図１）として動作される。この場合、メモリ５２の一部領域は作業フロー構築部１６の処理で求められた作業フロー情報を格納する領域として用いられる。これにより、作業フロー生成プログラム６２を実行したコンピュータ８０が、作業フロー生成装置１０として機能することになる。
【００１７】
なお、作業フロー生成プログラム６２は開示の技術における作業フロー生成プログラムの一例であり、作業フロー生成プログラム６２に含まれる作業内容生成プロセス６６は開示の技術における作業内容生成プログラムの一例である。つまり、作業内容生成プロセス６６はコンピュータ８０を作業内容生成装置１４として機能させるための作業内容生成プログラムの一例である。
【００１８】
作業内容生成プログラム（作業内容生成プロセス６６）は、動作解析プロセス６８、名称演算プロセス７０、及び作業工程構築プロセス７６を有する。ＣＰＵ５０は、動作解析プロセス６８を実行することで、図１に示す動作解析部２０として動作する。またＣＰＵ５０は、名称演算プロセス７０、を実行することで、図１に示す名称演算部２６として動作する。またＣＰＵ５０は、作業工程構築プロセス７６を実行することで、図１に示す作業工程構築部２８として動作する。なお、名称演算プロセス７０には、アニメ化工程プロセス７２及び付帯工程プロセス７４が含まれる。ＣＰＵ５０は、アニメ化工程プロセス７２を実行することで図１に示すアニメ化工程算出部２２として動作し、付帯工程プロセス７４を実行することで図１に示す付帯工程算出部２４として動作する。
【００１９】
作業フロー生成装置１０がコンピュータ８０で実現される場合、動作パターンＤＢ３０及び動作条件ＤＢ３２を記憶する記憶部５４は第１記憶部３４として用いられる。また、メモリ５２の一部領域は動作解析部２０の処理で求められた動作パターンを格納する領域として用いられる。また、作業−動作ＤＢ３６，作業−作業キーワードＤＢ３８及び作業−部品ＤＢ４０を記憶する記憶部５４は第２記憶部４２として用いられ、メモリ５２の一部領域は名称演算部２６の処理で求められた作業名または作業名候補を格納する領域として用いられる。また、作業内容ＤＢ４４を記憶する記憶部５４は第３記憶部４６として用いられ、メモリ５２の一部領域は２８の処理で求められた作業内容を格納する記憶領域として用いられる。これにより、作業内容生成プログラムを実行したコンピュータ８０が、作業内容生成装置１４として機能することになる。
【００２０】
作業フロー生成装置１０の分解部１２は、入力される３次元空間内で物体の動きを示すアニメーション情報から物体の一部に含まれる部品に対し、次のように部分アニメーション分解を行う。作業フロー生成装置１０には、例えば製品の組立について時系列で表した動作記録情報がアニメーション情報として入力される。分解部１２は、動きのある部品、例えば製品に含まれる１部品または複数部品を含む部品群の単位でアニメーション情報を分解する。これにより、アニメーション情報は、分解された部品または部品群を単位とする複数の部分的な動作記録情報（複数の部分アニメーション情報）に分解される。
【００２１】
アニメーション情報の一例は、３ＤＣＡＤやデジタルモックアップ等により構築された仮想空間において、仮想空間上に配置された物体を表す図形を移動させることや回転させることにより、物体の動きを記録した情報がある。本実施形態では、製品の組立や分解等の作業を指示するために作成されたアニメーション情報を一例として説明する。動きを伴う物体すなわち動作する物体は製品の部品から表現でき、動作情報、部品属性および注記情報を含むことができる。
【００２２】
動作情報は、仮想三次元空間上で部品（または複数部品によるアセンブリ等の部品群を含む）を動作させるための情報である。例えば、動作情報の一例には、動いている部品の例えば位置に関する情報、部品組立完成時の配置座標の情報、動いている部品の名称や図面番号を示す情報、組み立て作業指示などの注記が一例としてある。動作情報の動いている部品の位置に関する情報には、移動始点から移動終点の座標。例えば動きの開始座標と終了座標がある。なお、動作途中に注記や停止時間等で部品の動作が停止しているように見えても、当該部品外の動作が無ければ連続した動きとすることができる。また、動作情報は、部品または部品群の動作に関係する情報でもある。すなわち動いている部品または部品群の情報と動作内容を示す情報を含むことができる。部品属性は、部品に関連付けられた情報である。例えば、部品の名称を表す情報や、図面番号を表す情報がある。また、部品属性には、部品の体積、重量、材料、密度、最大外形などの形状に関する情報を含むことができる。注記情報は、作業を補足する情報である。例えば、ツメ嵌合箇所を表す情報や、エアブロー洗浄などを表す情報がある。また、注記情報には、動作中又は動作停止中に表示される注記の文字列と表示のタイミングを表す情報を含むことができる。なお、動作情報は、部品の部品属性や注記情報を共有することができる。例えば、動作情報の動いている部品の名称や図面番号を示す情報は、部品属性として部品に関連付けられた情報と共通の場合がある。また、動作情報の組み立て作業指示などの注記は、注記情報として作業を補足する情報と共通の場合がある。
【００２３】
本実施形態では、動作とは、部品または部品群の動作開始から動作終了までの動きを動作とする。本実施形態では、動作開始〜動作終了を一つの単位として動作範囲とする。なお、部品または部品群が同じ位置に位置した場合でも一つの動作とみなすことがある。動作開始は、新しく表示された部品または、表示されている部品が移動を開始したときとする。また、動作終了とは、動作開始の第１部品と違う第２部品が動作開始する直前の第１部品の位置にあるとき、または第１部品の動作が終了した最終動作完了位置にあるときとする。また、本実施形態では、動作パターンは動作の種類を示す。一例には、動作開始位置が部品の初期位置と同じ、動作終了位置が部品の初期位置と同じなどの内容が対応する。
【００２４】
また、本実施形態では、部品名は、部品の名称と対応づけられた部品名称の総称とする（例えば、コネジ、タッピンネジは名称：ネジとなる）。また、作業名は、作業を表す名称（取付、貼付など）とする。また、作業内容は、名称と作業名を含む作業の内容を表す名称（保護シート貼付、フロントカバー取付など）とする。つまり、作業内容とは、その作業内容から作業にかかる工数を一意に決められるものをいう。また、本実施形態では、作業内容と部品属性、工数などが定義されたものを工程という。また、作業工程は部品に対する作業を示す作業内容と、工数などの付加情報を含む情報とする。しかし、作業工程は、作業内容が必須の情報であるので付加情報の有無は問わないものとする。
【００２５】
作業内容生成装置１４は、作業フロー生成装置１０の分解部１２によってアニメーション情報が分解された部分アニメーション情報を用いて、後述するように部品の作業内容を生成する。作業内容生成装置１４は開示の技術における作業内容生成部の一例として機能する。なお、作業内容生成装置１４による処理の詳細内容については後述する。作業フロー構築部１６は、作業内容生成装置１４によって生成された部品の作業内容の結果に基づき、作業内容を作業順序に従って整列させた作業フロー情報を生成する。作業フロー構築部１６は開示の技術における作業フロー構築部の一例として機能する。
【００２６】
作業内容生成装置１４の動作解析部２０は、分解部１２によって分解された部分アニメーション情報を用いて、以下のような動作解析を行う。すなわち、動作解析部２０は、部分アニメーション情報から、仮想三次元空間上における部品または部品群の動作について、動作パターンＤＢ３０に登録された動作パターンの内容で動作条件ＤＢ３２に登録された動作条件に合致する動作パターンを求める。動作解析部２０は開示の技術における動作解析部の一例として機能する。
【００２７】
動作パターンＤＢ３０には、一例として図３に示すように「番号」及び「動作パターン」の各情報が対応付けて各々登録されている。図３に示す「動作パターン」の情報は動作パターンの内容を示す情報であり、「番号」の情報は動作パターンの内容を識別するための情報である。例えば図３では、「番号」の情報として記号「Ｄ」に通し番号が連続する番号で対応され、「動作パターン」の情報として動作パターンの内容を示す情報そのもので対応されている。図３の動作パターンＤＢ３０における対応関係の一例では、番号「Ｄ００１」に動作パターン「動作開始位置が部品の初期位置と同じ」が設定されている。なお、図３には動作パターンのうちの一部のみを示したものであり、図３に示す動作パターンＤＢ３０の対応関係のみに限定されるものではない。
【００２８】
動作条件ＤＢ３２には、一例として図４に示すように「番号」及び「動作条件」の各情報が対応付けて各々登録されている。図４に示す「動作条件」の情報は動作条件の内容を示す情報であり、「番号」の情報は動作条件の内容を識別するための情報である。例えば図４では、「番号」の情報として記号「ＤＪ」に通し番号が連続する番号が対応され、「動作条件」の情報として動作条件の内容を示す情報そのものが対応されている。図４の動作条件ＤＢ３２における対応関係の一例では、番号「ＤＪ００１」に動作条件「動作パターンＤ００１、Ｄ００４、Ｄ００５，及びＤ０１２を全て満たす」が設定されている。なお、図４には動作条件のうちの一部のみを示したものであり、図４に示す動作条件ＤＢ３２の対応関係のみに限定されるものではない。
【００２９】
なお、本実施形態では、動作パターンＤＢ３０及び動作条件ＤＢ３２が第１記憶部３４に予め記憶されている態様を説明する。しかし、動作パターンＤＢ３０及び動作条件ＤＢ３２は、例えば、外部の情報処理装置から通信によって受信されてメモリ５２に記憶される構成であってもよい。また、動作パターンＤＢ３０及び動作条件ＤＢ３２は、第１記憶部３４又はメモリ５２に一纏めに記憶されることに限られるものではない。例えば動作パターンＤＢ３０及び動作条件ＤＢ３２は、個々のデータベースが独立した記憶部に記憶されてもよく、インターネット等のコンピュータネットワーク上に分散されて記憶されていてもよい。
【００３０】
作業内容生成装置１４の名称演算部２６は、動作解析部２０の解析結果である動作パターンに対応し作業−動作ＤＢ３６に登録されている作業名を作業−動作ＤＢ３６から抽出して、作業名を特定する。名称演算部２６は開示の技術における名称演算部の一例として機能する。また名称演算部２６は、アニメ化工程算出部２２で候補の作業名を抽出すると共に付帯工程算出部２４で候補の作業名を抽出し、抽出した候補の作業名から作業名を特定することができる。すなわち、名称演算部２６のアニメ化工程算出部２２は動作解析部２０の解析結果である動作パターンに対応し作業−動作ＤＢ３６に登録されている作業名を第１作業名候補として作業−動作ＤＢ３６から抽出する。次に、部分アニメーション情報に含まれ作業−部品ＤＢ４０に登録されている対象部品の部品名に対応する作業名を第２作業名候補として作業−部品ＤＢ４０または作業−作業キーワードＤＢ３８から抽出する。または名称演算部２６はの付帯工程算出部２４は、作業−作業キーワードＤＢ３８に登録されている文字に該当する注記情報に対応する作業名を第２作業名候補として作業−部品ＤＢ４０または作業−作業キーワードＤＢ３８から抽出する。名称演算部２６は、第１作業名候補と第２作業名候補に基づいて作業名を特定する。アニメ化工程算出部２２は開示の技術におけるアニメ工程算出部の一例として機能する。付帯工程算出部２４は開示の技術における付帯工程算出部の一例として機能する。
【００３１】
作業−動作ＤＢ３６には、一例として図５に示すように、「ＩＤ」、「条件名」及び「作業名」の各情報が対応付けて各々登録されている。図５に示す「条件名」の情報は動作条件に合致する動作パターンを表す情報であり、「作業名」の情報は作業の名称を表す情報である。「ＩＤ」の情報は「条件名」及び「作業名」の対応関係を識別するための情報である。例えば図５では「ＩＤ」の情報として記号「Ｊ」に通し番号が連続する番号が対応されている。「条件名」の情報は動作条件ＤＢ３２の「番号」の情報が格納され、「条件名」の情報に対応する作業の名称を示す情報が「作業名」の情報として格納される。図５の作業−動作ＤＢ３６における対応関係の一例では、ＩＤ「Ｊ００１」として条件名「ＤＪ０００」及び作業名「加圧」が設定されている。なお、図５には条件名と作業名の対応関係のうちの一部のみを示したものであり、図５に示す作業−動作ＤＢ３６の対応関係のみに限定されるものではない。
【００３２】
作業−部品ＤＢ４０には、一例として図６に示すように、「ＩＤ」、「作業名」及び「部品属性」の各情報が対応付けて各々登録されている。図６に示す「作業名」の情報は作業の名称を表す情報であり、「部品属性」の情報は、例えば部品名を表す情報や図面番号を表す情報のように、動作させる部品に関連付けられた情報である。「ＩＤ」の情報は「作業名」及び「部品属性」の対応関係を識別するための情報である。例えば図６では「ＩＤ」の情報として記号「ＳＡ」に通し番号が連続する番号が対応されている。「作業名」の情報は作業の名称を示す情報が格納され、「部品属性」の情報は作業名に対応する固有の部品の部品属性を示す情報が格納される。図６の作業−部品ＤＢ４０における対応関係の一例では、ＩＤ「ＳＡ００１」として作業名「取る」及び部品属性「」（空欄）が設定されている。なお、図６には作業名と部品属性の対応関係のうちの一部のみを示したものであり、図６に示す作業−部品ＤＢ４０の対応関係のみに限定されるものではない。
【００３３】
作業−作業キーワードＤＢ３８には、一例として図７に示すように、「ＩＤ」、「作業名」及び「文字列」の各情報が対応付けて各々登録されている。図７に示す「作業名」の情報は作業の名称を表す情報であり、「文字列」の情報は例えば注記情報に含まれる作業を補足する情報の一部のキーワードを表す情報である。「ＩＤ」の情報は「作業名」及び「文字列」の対応関係を識別するための情報である。例えば図７では「ＩＤ」の情報として記号「ＳＴ」に通し番号が連続する番号が対応されている。「作業名」の情報は作業の名称を示す情報が格納され、「文字列」の情報は作業名に対応する作業を補足する情報が格納される。図７の作業−作業キーワードＤＢ３８における対応関係の一例では、ＩＤ「ＳＴ００１」として作業名「取る」及び文字列「」（空欄）が設定されている。なお、図７には作業名と文字列の対応関係のうちの一部のみを示したものであり、図７に示す作業−作業キーワードＤＢ３８の対応関係のみに限定されるものではない。
【００３４】
なお、本実施形態では、作業−動作ＤＢ３６、作業−部品ＤＢ４０及び作業−作業キーワードＤＢ３８が第２記憶部４２に予め記憶されている態様を説明する。しかし、作業−動作ＤＢ３６、作業−部品ＤＢ４０及び作業−作業キーワードＤＢ３８は、例えば、外部の情報処理装置から通信によって受信されてメモリ５２に記憶される構成であってもよい。また、作業−動作ＤＢ３６、作業−部品ＤＢ４０及び作業−作業キーワードＤＢ３８は、第２記憶部４２又はメモリ５２に一纏めに記憶されることに限られるものではない。例えば作業−動作ＤＢ３６、作業−部品ＤＢ４０及び作業−作業キーワードＤＢ３８は、個々のデータベースが独立した記憶部に記憶されてもよく、インターネット等のコンピュータネットワーク上に分散されて記憶されていてもよい。
【００３５】
作業内容生成装置１４の作業工程構築部２８は、名称演算部２６によって決定された作業名を示す情報を用いて、作業工程の構築を行う。すなわち、作業工程構築部２８は、作業名及び部品名を表す情報から、仮想三次元空間上における部品または部品群の動作についての作業内容を示す情報を、作業内容ＤＢ４４に登録された作業内容から求める。作業工程構築部２８は開示の技術における作業工程構築部の一例として機能する。
【００３６】
作業内容ＤＢ４４には、一例として図８に示すように、「番号」、「作業内容」、「部品名」、「作業名」及び「作業工数」の各情報が対応付けて各々登録されている。図８に示す「作業内容」の情報は作業の内容を表す情報であり、「部品名」の情報は部品の名称を表す情報であり、「作業名」の情報は作業の名称を表す情報である。「番号」の情報は「作業内容」、「部品名」、「作業名」の対応関係を識別するための情報である。また、「作業工数」の情報は、「作業内容」、「部品名」および「作業名」で設定される作業に必要とする作業工数を示す情報である。作業工数は予め求めた時間等が格納される。例えば図８では「番号」の情報として記号「ＳＮ」に通し番号が連続する番号が対応されている。図８の作業内容ＤＢ４４における対応関係の一例では、番号「ＳＮ０００１」として作業内容「コテイアセンブリを取る」、部品名「コテイアセンブリ」、作業名「取る」及び作業工数「０．１」が設定されている。なお、図８には作業内容と部品名と作業名との対応関係のうちの一部のみを示したものであり、図８に示す作業内容ＤＢ４４の対応関係のみに限定されるものではない。本実施形態の作業内容ＤＢ４４では、作業内容ＤＢ４４に「作業工数」が必須項目であることを要求しない。すなわち、作業内容ＤＢ４４は、「作業工数」の項目を省略することができる。
【００３７】
なお、本実施形態では、作業内容ＤＢ４４が第３記憶部４６に予め記憶されている態様を説明するが、作業内容ＤＢ４４は、例えば、外部の情報処理装置から通信によって受信されてメモリ５２に記憶される構成であってもよい。また、作業内容ＤＢ４４は、第３記憶部４６又はメモリ５２に記憶されることに限られるものではない。例えば作業内容ＤＢ４４は、インターネット等のコンピュータネットワーク上に設置された外部の記憶部に記憶されていてもよい。
【００３８】
次に本実施形態の作用を説明する。
例えば、製造ライン検討では、まず作業フローに含まれる作業内容を設定し、その作業内容に工数等の評価用パラメータを付加して工数等の評価を行うことが一般的である。しかし評価用のパラメータを付加する作業内容を、作業者が自ら判断して決めることでは、作業者の経験や保有スキルの違いによって結果が異なる。本実施形態では、１つの側面では、製造ラインの評価において、短時間で誰が行っても同じ結果が得られるように、作業者の経験・スキルに依存する作業内容を自動的に決定するプロセスを提供する。ところで、製品の組立や分解についての作業を表すアニメーション情報から作業内容を作業順序で並べた作業フローを自動的に生成するにあたって作業フローの精度を確保するためには、製品の組立や分解の過程における作業を特定する精度の向上が重要である。製品の組立や分解の過程における作業を特定するためには、アニメーション情報に含まれる製品の一部を構成する部品または部品群に対する作業内容を生成する作業内容生成の精度の向上が重要である。しかし、部品または部品群に対する作業は、部品間の関係ではなく、部品等の動作に起因することが多く、部品等の動作により作業内容を決定することが好ましい。
【００３９】
上記に基づき、本実施形態では、動作パターンＤＢ３０，動作条件ＤＢ３２，作業−動作ＤＢ３６，作業−部品ＤＢ４０，作業−作業キーワードＤＢ３８，作業内容ＤＢ４４を設けている。そして、本実施形態では以下に説明するように場面に応じてデータベースを参照しつつアニメーション情報から作業内容を作業順序で並べた作業フローを自動的に生成する。但し、本実施形態ではアニメーション情報から少なくとも作業内容を決定するために、アニメーション情報には、３次元空間上で部品を動作させるための情報として動作情報が含まれているものとする。また、アニメーション情報には、動作させる部品に関連づけられた情報として部品属性、及び作業を補足する情報として注記情報が含まれることが好ましい。
【００４０】
以下、まず図９を参照し、作業内容生成装置１４を含む作業フロー生成装置１０によって実現される作業フロー生成処理の概要を説明する。図９（Ａ）は、アニメーション情報のイメージを示した図である。図９（Ｂ）はアニメーション情報から部品構成のみを抽出した作業フローを示す図である。図９（Ｃ）はアニメーション情報から作業内容を抽出して作業フローに追加したイメージを示す図である。
【００４１】
図９（Ａ）に示すアニメーション情報は、製品の組立に関する作業として、部品Ａと部品Ｂを備えたアセンブリＡＢに部品Ｃを貼り付けるまでの作業を表している。すなわち図９（Ａ）では、アセンブリＡＢを準備した状態９１、Ｃを準備した状態９２、装置Ａが完成した状態９３までの過程を示している。また、状態９２のときは、部品Ｃに関係する注記情報として「端子に触れないこと」が関係付けられており、アセンブリＡＢに関係する注記情報として「剥離紙を剥がすこと」が関係付けられている。なお、図９の例では、部品Ｃのみを作業の対象の部品として、動きのある部品Ｃに関係する部分的なアニメーション情報を表している。作業フロー生成装置１０の分解部１２は、アニメーション情報を部分アニメーション情報に分解するが、ここでは図９（Ａ）に示すアニメーション情報をそのまま出力する。
【００４２】
作業内容生成装置１４は、以下のように作業名を生成する。まず、動作解析部２０は第１記憶部３４の動作パターンＤＢ３０および動作条件ＤＢ３２を参照して動作パターンを求める。動作解析部２０は、「部品Ｃ」の動作範囲を抽出する。動作範囲は、アニメーション情報の部品Ｃに対応する動作情報に含まれる部品Ｃの位置（例えば動作開始座標、動作終了座標）から求めることができる。図９の例では、部品Ｃの動作開始位置９０から動作終了位置９２の間を動作範囲として求める。なお、姿勢（例えば動作開始姿勢、動作終了姿勢）により位置が相違する場合には姿勢を含めても良い。抽出した部品Ｃの動作範囲内における部品Ｃの動作について、動作条件と動作パターンを求める。ここでは、動作パターンＤＢ３０のＤ００２、Ｄ００３，Ｄ００７，Ｄ０１２が該当し、動作条件ＤＢ３２のＤＪ００３が該当することになる。
【００４３】
次に名称演算部２６は、作業−動作ＤＢ３６を参照して動作解析部２０により決定された動作パターンと動作条件の関係に対応する作業名の候補を抽出する。ここでは動作解析部２０により決定された動作パターンと動作条件の関係がＤＪ００３なので、作業名と対応付けられた「押込」「挿入」「締める」「カシメ」「貼付」・・・、の作業名が第１作業名候補として抽出される。また、名称演算部２６は、「部品Ｃ」の動作範囲内に含まれる注記情報から文字列を抽出する。ここでは「端子に触れないこと」および「剥離紙を剥がすこと」の文字列が抽出される。次に作業−作業キーワードＤＢ３８に登録された文字列が前記抽出した文字列に含まれている対応関係を定め、定めた対応関係の作業名を作業名の候補として抽出する。ここでは、ＳＴ０２９の「貼付」の作業名が第２作業名候補として抽出される。次に、名称演算部２６は、第１作業名候補と第２作業名候補で合致する作業名候補「貼付」を作業の作業名として決定する。なお、注記情報から文字列を抽出する場合、言葉の揺らぎが生じるので、言葉の揺らぎを解消するため、類義語や活用形（助詞）等を複数備えた辞書を備えて当該辞書を参照して文字列を単一語句に変換するようにしててもよい。
【００４４】
次に作業工程構築部２８は、作業内容ＤＢ４４を参照して名称演算部２６により決定された作業名及び部品名に対応する作業内容を求める。ここではＳＮ００４１が該当し「貼付」の作業内容が求められ、作業工程構築部２８は部品名を連続させた「部品Ｃ貼付」を作業内容に決定する。
【００４５】
作業フロー生成装置１０の作業フロー構築部１６は、作業内容生成装置１４で求められた作業内容をもとにして作業フロー情報を構築する。まず、アニメーション情報に含まれる部品の構成を作業順序で並べた情報を生成する。図９（Ａ）のアニメーション情報では、図９（Ｂ）に示すように、部品を表す記号（図９では逆三角形記号で示した。以下、部品記号という。）９６が部品名と共にアニメーション情報に出現する順に連続する情報が生成される。次に、作業フロー構築部１６は、図９（Ｃ）に示すように、作業を表す記号（図９では白丸記号で示した。以下、作業記号という。）９７を作業内容生成装置１４で求めた作業内容を示す情報と共にアニメーション情報上の作業の位置に挿入（作業工程９８）することにより作業フロー情報を生成する。
【００４６】
以上作業フロー生成処理の概要を説明したが、以下、図１０〜図１６を参照して作業フロー生成処理の詳細をさらに説明する。
【００４７】
図１０は、アニメーション情報のイメージを示した図である。図１０に示すアニメーション情報は、製品の組立に関する作業として、作業対象の本体３００に組付部品３０２を組み付けるまでの作業を表している。すなわち図１０では、本体３００が表示された状態３１０、組付部品３０２が表示された状態３１２、第１の作業過程が表示された状態３１４、第２の作業過程が表示された状態３１６、組付作業が終了し装置が完成した状態３１８までの過程を示している。状態３１０では、本体３００に関係する情報として「コテイアセンブリ：図面番号Ｇ０」の文字列が注記又は注記情報として表示された場合を示している。また、状態３１２では、組付部品３０２に関係する情報として「コテイカバー：図面番号Ｇ１」の文字列が注記又は注記情報として表示された場合を示している。また、状態３１４では、組付部品３０２に関係する情報として「コテイカバー内側をエア洗浄し、異物を除去すること」及び「エアー圧力：Ｐ１〜Ｐ２」の文字列が注記又は注記情報として表示された場合を示している。また、状態３１６では、組付部品３０２に関係する注記情報として「カバーツメ嵌め込み」の文字列が注記又は注記情報として表示された場合を示している。
【００４８】
作業フロー生成処理では図１１に示す処理ルーチンが実行され、ステップ１００において、作業者が指示した作業フロー生成対象のアニメーション情報を取得する。取得したアニメーション情報は、作業フロー生成装置１０の分解部１２に入力される。次のステップ１０２において分解部１２は、部分アニメーションに分解する。分解部１２は、動作している部品の部品属性と動作情報を取得する。すなわち、動作している部品の部品属性と動作情報を取得する。まず動作範囲を求めて、当該動作範囲に含まれる情報を取得する。動作範囲に含まれる情報の一例には、動作開始位置、動作終了位置、動作開始位置の姿勢、動作終了位置の姿勢、初期位置、初期位置の姿勢がある。また動作範囲に含まれる情報の他例には、部品属性（部品名、図番）、現動作以降の動作、現動作以前の動作、初めて表示される部品、動作番号（動作の順番）、動作範囲内の注記などがある。
【００４９】
具体的には、ステップ１０２では、動作範囲として、動作開始〜動作終了の１つの動作を計算する。動作開始は、新しく表示された部品または、表示されている部品が移動した時であり、動作終了は、動作開始から違う部品が動作開始する直前の位置または最終動作完了位置である。ここでは、最初に本体３００であるコテイアセンブリが表示されたときを動作開始とし、表示されたときの座標から動作開始座標、動作開始の姿勢の情報を取得する。次に動作を進め、他の部品（ここでは組付部品３０２であるコテイカバー）が表示された時を動作終了とし、コテイカバーが表示されたときのコテイアセンブリの座標から動作終了座標、動作終了の姿勢の情報を取得する。取得内容の一例を次に示す。なお、動作について以下の処理で識別可能とするために、動作番号を付与する。最初の動作の場合は「１」を付与する。
＜取得内容＞
動作番号      ：1
動作開始座標  ：X＝1.5  Y＝−123.6  Z＝190.7
動作終了座標  ：X＝1.5  Y＝−123.6  Z＝190.7
動作開始の姿勢：X＝0°Y＝0°Z＝0°
動作終了の姿勢：X＝0°Y＝0°Z＝0°
【００５０】
またステップ１０２では、動作している部品の初期位置を抽出する。部品の初期位置は作業対象の部品に関係する上位の部品または部品群（ここでは１階層上のアセンブリ）からの相対座標を示すものとする。なお、上位の部品または部品群が無い場合には、アニメーション情報の最初に表示される部品または部品群からの全体座標を用いればよい。
＜初期位置＞
初期位置      ：X＝1.5  Y＝−123.6  Z＝190.7
初期位置の姿勢：X＝0°Y＝0°Z＝0°
【００５１】
またステップ１０２では、動作している部品の部品属性を取得する。ここでは、「部品名：コテイアセンブリ」、「図面番号：Ｇ１」が取得される。次に、初めて表示する部品であるかを確認する。つまり、動作番号１の動作から先頭の動作まで戻し、表示されているかを確認する。ここでは、動作番号１の動作より前にコテイアセンブリが表示されていないので初めて表示する部品であると確認される。
【００５２】
またステップ１０２では、現在の動作以外に動作があるかを確認する。つまり、動作番号１の動作から先頭の動作まで戻し、コテイアセンブリの動作が有るかを確認すると共に、動作番号１の動作から最後の動作まで進め、コテイアセンブリの動作が有るかを確認する。ここでは、現在の動作以前に動作が無く、かつ現在の動作以降に動作が無いと確認される。
【００５３】
次にステップ１０４において、初めて表示する部品であるか否かを判定し、肯定されるとステップ１０６へ進み、否定されるとステップ１１４へ進む。ここでは、ステップ１０２で初めて表示する部品であると確認されているので、ステップ１０４で肯定され、ステップ１０６において部品記号フラグを有効（部品記号フラグ：Yes）にする。部品記号フラグは、作業フロー情報に部品記号（図９（Ｂ），（Ｃ）では逆三角形記号）を出力可能とするための設定値を格納するフラグである。
【００５４】
次のステップ１０８では初めて表示される部品であるために、作業名を一例として「取る」に設定する。すなわち、初めて表示される部品は、例えば製造ラインから作業台に部品を移動させる作業が伴うために作業名の一例を「取る」に設定している。次のステップ１１０では、作業内容ＤＢ４４を参照して、部品名と作業名が合致する作業内容を取得する。ここでは部品名が「コテイアセンブリ」で作業名が「取る」であるので、番号「SN0001」が合致する。従って、作業内容には「コテイアセンブリ取る」が決定される。なお、部品名が該当しない場合、部品名「」、作業名「取る」とし、作業内容「取る」にしても良い。
【００５５】
次のステップ１１４で作業内容生成装置１４は、作業内容生成処理を実行する。作業内容生成装置１４が実行する作業内容生成処理（ステップ１１４）は、図１２〜図１６に示す処理が実行される。作業内容生成装置１４は、図１２のステップ２００において動作パターンを取得する。すなわち作業内容生成装置１４の動作解析部２０は図１１のステップ１０２で取得した情報による動作範囲の動作により動作パターンに合致する動作条件を取得する。具体的には、部品の動作範囲の動作について動作パターンＤＢ３０の動作パターンの内容に該当し、動作条件ＤＢ３２の動作条件に合致する番号（DJ000〜DJ003の何れか）を特定する。ここでは、動作条件ＤＢ３２のＤＪ０００が該当する。
【００５６】
作業内容生成装置１４は、ステップ２０２において過去に動作開始位置と動作終了位置が同じ作業の部品があり、その情報がメモリに格納されているかを確認する。メモリに格納済みの情報があるときは（ステップ２０２で肯定）、ステップ２０４において格納済みの情報を抽出してステップ２０６へ進む。ステップ２０４で抽出する情報には、注記情報や作業内容の情報がある。一方、ステップ２０２で否定されるとそのままステップ２０６へ進む。なお、ステップ２０４の処理は名称演算部２６のアニメ化工程算出部２２で実行される機能である。
【００５７】
次に名称演算部２６のアニメ化工程算出部２２は、ステップ２０６において動作番号１の動作開始から動作終了までに表示される注記の文字列を全て抽出する。ここでは、文字列「コテイアセンブリ：部品番号Ｇ０」が抽出される。アニメ化工程算出部２２はステップ２０８で、ステップ２０６において文字列が抽出されたか否かを判別し、否定されるとステップ２１０〜２２０をスキップし、ステップ２２２（図１３）へ進む。一方、アニメ化工程算出部２２のステップ２０８で肯定されるとステップ２１０で、抽出した文字列に、作業−作業キーワードＤＢ３８の文字列の情報が含まれる対応関係を探索する。アニメ化工程算出部２２は、探索結果の対応関係にある作業名を作業名候補として抽出する。次にステップ２１２で作業−部品ＤＢ４０の部品属性と現在の動作の部品名の文字列が部分一致するものを探索し、作業名候補を抽出する。次に付帯工程算出部２４は、ステップ２１４において、作業−動作ＤＢ３６から動作条件の番号「DJ000」の作業名を候補として抽出する。次に名称演算部２６はステップ２１６においてアニメ化工程算出部２２で抽出した作業名候補と付帯工程算出部２４で抽出した作業名候補とで合致する作業名を抽出する。次のステップ２１８では、ステップ２１６の結果で合致する作業名の有無を判断し、否定されるとステップ２２０をスキップし、ステップ２２２へ進む。ここでは合致する作業名が無のため、ステップ２２２へ進む。一方、合致する作業名の有あるときはステップ２２０へ進む。作業工程構築部２８は、ステップ２２０で作業内容ＤＢ４４から作業名に対応する作業内容を抽出する。
【００５８】
作業内容生成装置１４は、ステップ２２２において部品の動作開始位置と動作終了位置が相違するか否かを確認する。ここでは、動作開始位置と動作終了位置が一致するので、ステップ２２２で否定され、ステップ２３６において現在の動作に作業内容があるか否かを確認する。動作番号１ではステップ１０８で「コテイアセンブリ取る」の作業内容があるため、ステップ２３６で肯定され、作業工程構築部２８は上述の処理で抽出した順序で作業内容を並び直す。現在の処理は、動作番号１であり、作業内容が１個であるので、「1番：コテイアセンブリ取る」となる。
【００５９】
次に作業工程構築部２８は、部品の動作開始位置と動作終了位置が同じかを確認する。現在の処理は、動作番号１であり、動作開始座標と動作終了座標が一致するので、ステップ２４０で肯定され、作業工程構築部２８はステップ２４２においてメモリに情報を格納する。部品名は「コテイアセンブリ」、動作開始位置は「X＝1.5  Y＝−123.6  Z＝190.7」、注記の文字列は「コテイアセンブリ：図面番号Ｇ０」及び作業内容は「コテイアセンブリ取る」の各情報がメモリに格納される。次に作業工程構築部２８は、ステップ２４６において作業フロー構築部１６へ作業内容の情報を出力する。なお、作業工程構築部２８はメモリに格納されたステップ２４２の各情報を出力することができる。
【００６０】
作業工程構築部２８のステップ２４６での処理により動作番号１についての作業内容生成処理が終了し、図１１のステップ１１６へ進む。作業フロー構築部１６は、ステップ１１６において作業内容ＤＢ４４を参照して作業内容と紐付いた工数を抽出する。なお、作業フロー構築部１６によるステップ１１６の処理はスキップしてもよい。次に作業フロー構築部１６は、ステップ１１８において作業工程を作成する。具体的には、作業工程の名称を作業内容に設定する。なお、部品属性と工数を設定してもよい。現在の動作番号１に対しては、作業工程の名称である「コテイアセンブリ取る」を作業名とする。また、部品名を「コテイアセンブリ」、工数を「0.1」、動作の順番を表す追番である動作番号を「１」、作業工程の順番を表す追番である作業工程番号を「１」に設定することができる。
【００６１】
次に作業フロー構築部１６は、取得した作業内容の作業工程を全て作成したか否かをステップ１２０で判断し、肯定されるまで、ステップ１１６とステップ１１８を繰り返し処理する。ステップ１２０で肯定されると、作業フロー生成装置１０は他に動作する部品がないか否かを判断する。他に動作する部品が残存する場合は、ステップ１０２へ戻り、残存する動作の処理をする。一方、他に動作する部品がない場合は、ステップ１２２で肯定されてステップ１２４への処理へ移行する。
【００６２】
以上のようにして動作番号１に対する処理が完了し、次の動作に対する処理へと移行する。すなわち、分解部１２のステップ１０２では、動作番号２として、動作範囲を計算する。動作番号２の動作は、コテイカバーが表示されたときを動作開始とし、次に動作を進めたときコテイカバー動作終了後に他の動作が無いのでコテイカバーの動作終了とし、動作開始座標と動作開始の姿勢及び動作終了座標と動作終了の姿勢を取得する。また、動作番号２で動作している部品の初期位置及び初期位置の姿勢を抽出すると共に、部品の部品属性を取得する。ここでは、部品名が「コテイカバー」であり、図面番号が「Ｇ１」の情報が取得される。
【００６３】
動作番号２の部品である「コテイカバー」は初めて表示する部品であるので（ステップ１０４で肯定）、部品記号フラグを有効にする。そして、作業名に「取る」を設定すると共に、作業内容ＤＢ４４より作業内容の情報「コテイカバー取る」を取得する（ステップ１０６〜１１０）。作業内容生成装置１４では、動作番号２の部品について、過去に動作開始位置と動作終了位置が同じものがあり、その情報がメモリに格納されているが、メモリに格納された情報と動作番号２の動作情報が相違する。すなわち、メモリ内の部品名は「コテイアセンブリ」であり、動作番号２の部品名は「コテイカバー」であるためにステップ２０２で否定され、動作番号2の動作開始から動作終了までに表示される注記の文字列を全て抽出する（ステップ２０６）。抽出した注記の文字列は「コテイカバー：図面番号Ｇ１」「コテイカバー内部をエア洗浄し、異物を除去すること」「エアー圧力Ｐ１〜Ｐ２」「カバーツメ嵌め込み」である。
【００６４】
文字列が抽出されたので（ステップ２０８で肯定）、抽出した文字列に作業−作業キーワードＤＢ３８の文字列が含まれるものを探し、作業名候補として抽出する。抽出した注記に含まれる文字列「エア洗浄」と、作業−作業キーワードＤＢ３８のＩＤ「ST014」の文字列「エア洗浄」が合致する。また、抽出した注記に含まれる文字列「ツメ」と、作業−作業キーワードＤＢ３８のST032の「ツメ」が合致する。また、抽出した注記に含まれる文字列「嵌め込み」と、作業−作業キーワードＤＢ３８のST031の「嵌め込み」が合致する。従って、作業−作業キーワードＤＢ３８の作業名「エア洗浄」、「嵌め込み」が作業名候補として設定される（ステップ２１０）。
【００６５】
次に、作業−部品ＤＢ４０の部品属性に動作番号２の動作の部品名（コテイカバー）が部分一致するものがないので、作業名は空欄とし（ステップ２１２）、作業−動作ＤＢ３６の条件名DJ000の作業名を作業名候補として抽出する（ステップ２１４）。作業名候補の文字列「エア洗浄」が合致するので（ステップ２１８で肯定）、作業内容ＤＢ４４から作業内容を探索する（ステップ２２０）。作業内容ＤＢ４４には部品名が「コテイカバー」で作業名が「エア洗浄」の条件に合致するものは無いため、部品名：“”、作業名「エア洗浄」で再度探索すると、番号SN0031が合致する。番号SN0031で合致した作業内容「エア洗浄」を作業名に決定する。
【００６６】
次に、動作番号２の動作では動作開始位置と動作終了位置は相違するので（ステップ２２２で肯定）、ステップ２２４において第１条件（DJ001）を満たしているか判断する。対象の動作が第１条件を満たしているときには（ステップ２２４で肯定）、ステップ２２６の第１条件処理を実行した後にステップ２３６へ進む。動作番号２の動作では動作開始位置が部品の初期位置と相違する。また、動作終了位置が部品の初期位置と一致する。動作開始位置の姿勢が部品の初期位置の姿勢と相違する。従って、動作条件DJ001の内容を満たしていないため、ステップ２２８へ移行する。
【００６７】
対象の動作が第１条件を満たしているときには（ステップ２２４で肯定）、ステップ２２６の第１条件処理（図１４）を実行する。
【００６８】
図１４のステップ２５０では作業−動作ＤＢ３６より、第１条件を示す条件名DJ001の作業名を抽出する。次のステップ２５２では、作業−動作ＤＢ３６より抽出した作業名と作業−部品ＤＢ４０より抽出した作業名とで合致する作業名を抽出する。次のステップ２５４では、ステップ２５２で合致した作業名が抽出されたか否かを判別することで、合致した作業名があるか否かを判断する。合致した作業名があるときは（ステップ２５４で肯定）、ステップ２５６において部品名と作業名から作業内容を抽出し、第１条件処理を終了する。一方、合致作業名がないときは（ステップ２５４で否定）、ステップ２５６をスキップする。
【００６９】
対象の動作が第１条件を満たしていないときには（ステップ２２４で否定）、ステップ２２８において第２条件（DJ002）を満たしているか判断する。動作番号２の動作が第２条件を満たしているときには（ステップ２２８で肯定）、ステップ２３０の第２条件処理を実行した後にステップ２３６へ進む。動作番号２の動作では動作終了位置が部品の初期位置と相違する。また、動作終了座標が初期位置と一致する。また、動作番号２の動作以降に動作はない。従って、動作条件DJ002の内容を満たしていないため、ステップ２３２へ移行する。
【００７０】
対象の動作が第２条件を満たしているときには（ステップ２２８で肯定）、ステップ２３０の第２条件処理（図１５）を実行する。
【００７１】
図１５のステップ２６０では作業−動作ＤＢ３６より、第２条件を示す条件名DJ002の作業名を抽出する。次のステップ２６２では、対象の動作の動作開始から動作終了までに表示される注記の文字列を全て抽出する。次のステップ２６４では、ステップ２６２で抽出した文字列が作業−作業キーワードＤＢ３８の文字列に含まれるＩＤを探し、該当するＩＤの作業名を抽出する。次のステップ２６６では、ステップ２６０で抽出した作業名とステップ２６４で抽出した作業名で合致する作業名を抽出する。次のステップ２６８では、ステップ２６６で合致した作業名が抽出されたか否かを判別することで、合致作業名があるか否かを判断する。合致作業名があるときは（ステップ２６８で肯定）、ステップ２７２において部品名と作業名から作業内容を抽出し、第２条件処理を終了する。一方、合致作業名がないときは（ステップ２６８で否定）、ステップ２７０において作業名を「移動」に設定し、ステップ２７２へ進む。
【００７２】
動作番号２の動作が第２条件を満たしていないときには（ステップ２２８で否定）、
ステップ２３２において第３条件（DJ003）を満たしているか判断する。動作番号２の動作が第３条件を満たしているときには（ステップ２３２で肯定）、ステップ２３４の第３条件処理を実行した後にステップ２３６へ進む。一方、動作番号２の動作が第３条件を満たしていないときには（ステップ２３２で否定）、図１６のステップ２９４へ移行する。動作番号２の動作では動作開始位置が部品の初期位置と相違する。また、動作終了位置が部品の初期位置と一致する。また、動作終了位置の姿勢が部品の初期位置の姿勢と一致する。また、現在の動作以降に動作は無い。従って、動作条件DJ003の内容を満たしている。
【００７３】
対象の動作が第３条件を満たしているときには（ステップ２３２で肯定）、アニメ化工程算出部２２でステップ２３４の第３条件処理（図１６）を実行する。
【００７４】
図１６のステップ２７４では作業−動作ＤＢ３６より、第３条件を示す条件名DJ003の作業名を抽出する。動作番号２の動作では、作業名：押込、挿入、締める、カシメ、貼付、嵌め込み、取付、移動が抽出される。次のステップ２７６では、作業−部品ＤＢ４０より作業名を抽出する。すなわち、対象の動作の部品名に該当する作業−部品ＤＢ４０の部品属性に対応付けられた作業名を抽出する。動作番号２の動作では、部品名が「コテイカバー」であり、作業−部品ＤＢ４０の部品属性の情報には合致するものが無い。従って、作業名は空欄（“”）とする。次のステップ２７８では、ステップ２７４で抽出した作業名と、ステップ２７６で抽出した作業名で合致する作業名を抽出し、ステップ２８０へ進む。
【００７５】
ステップ２８０ではステップ２７８で合致した作業名が抽出されたか否かを判別することで、合致した作業名があるか否かを判断する。合致した作業名があるときは（ステップ２８０で肯定）、ステップ２８２において部品名と作業名から作業内容を抽出し、第３条件処理を終了する。一方、合致した作業名がないときは（ステップ２８０で否定）、ステップ２８４へ進む。動作番号２の動作では、合致する作業名がないので、ステップ２８４へ進む。
【００７６】
ステップ２８４では、対象の動作の動作開始から動作終了までに表示される注記の文字列を全て抽出する。動作番号２の動作では、文字列：「コテイカバー：図面番号Ｇ１」、「コテイカバー内部をエア洗浄し、異物を除去すること」、「エアー圧力Ｐ１〜〜Ｐ２」「カバーツメ嵌め込み」が抽出される。次のステップ２８６では、ステップ２８４で抽出した文字列が作業−作業キーワードＤＢ３８の文字列に含まれるＩＤを探し、該当するＩＤの作業名を抽出する。動作番号２の動作では、ＩＤがST014の作業名「エア洗浄」、ＩＤがST031およびST032の作業名「嵌め込み」が抽出される。なお、重複する場合は重複したものは削除することが好ましい。次のステップ２８８では、ステップ２７４で抽出した作業名とステップ２８６で抽出した作業名で合致する作業名を抽出する。動作番号２の動作では、作業名「嵌め込み」が抽出される。
【００７７】
次のステップ２９０ではステップ２８８において合致した作業名が抽出されたか否かを判断し、肯定されるとステップ２９６へ進む。一方。ステップ２８８において合致した作業名が抽出されずにステップ２９０で否定されると、ステップ２９２において作業名を「取付」に定めてステップ２９６へ進む。なお、ステップ２９４では作業名を「移動」に定めてステップ２９６へ進む。動作番号２の動作では、ステップ２９０で肯定され、ステップ２９６へ進む。
【００７８】
ステップ２９６では対象の動作の部品に対する部品属性から部品名を抽出し、次のステップ２９８においてステップ２９６で抽出した部品名に該当する作業内容を作業内容ＤＢ４４から抽出して第３条件処理を終了する。動作番号２の動作では、部品名が「コテイカバー」、作業名が「嵌め込み」で、作業内容ＤＢ４４の番号SN0005における作業内容「コテイカバー嵌め込み」が抽出される。
【００７９】
上述のようにして第１条件処理〜第３条件処理の何れかが終了すると、ステップ２３６（図１３）において、現在対象としている動作について作業内容が設定されているか否かが判断される。ステップ２３６で否定されると、ステップ２３８の処理をスキップする。ステップ２３６で肯定されると、作業工程構築部２８はステップ２３８において抽出した順序で作業内容を整列させてステップ２４０へ移行する。動作番号２の動作では、動作番号２の動作に対して作業内容があるので（ステップ２３６で肯定）、ステップ２３８において、作業内容が配列される。
【００８０】
動作番号２の動作に対して、作業内容は、「コテイカバー取る」、「エア洗浄」、「コテイカバー嵌め込み」が抽出されている。これらの作業内容を注記の順番に並び替える。
1番  作業内容：コテイカバー取る
2番  作業内容：エア洗浄
3番  作業内容：コテイカバー嵌め込み
【００８１】
作業工程構築部２８は対象の動作番号の動作開始位置と動作終了位置が一致するときはメモリに情報を格納する（ステップ２４０、２４２）。動作番号２の動作では、不一致である。
【００８２】
作業内容生成処理が終了すると、作業フロー構築部１６は、作業内容ＤＢ４４を参照して作業内容と紐付いた工数を抽出して作業工程を作成する（図１１のステップ１１６、１１８）。ここでは、作業工程名「コテイカバー取る」、部品名「コテイカバー」、工数「0.1」、動作番号「２」、作業工程番号「1」である。次に作業フロー構築部１６は、取得した作業内容の作業工程を全て作成するまで、ステップ１１６とステップ１１８を繰り返し処理する。これにより、動作番号２の動作では、作業工程名「エア洗浄」、部品名「」、工数「0.8」、動作番号「２」、作業工程番号「２」の情報を取得する。次に、作業工程名「コテイカバー嵌め込み」、部品名「コテイカバー」、工数「0.1」、動作番号「２」、作業工程番号「３」の情報を取得する。
【００８３】
次に、作業フロー生成装置１０は作業フロー構築部１６によるステップ１２４において動作番号の順序で部品記号を作成し、ステップ１２６において動作番号と同じ作業工程を部品記号の下流に追加する。例えば、部品記号で動作番号が１の下流に動作番号が１の作業工程を作業工程番号の順番で追加する。ステップ１２４、１２６の処理は、全ての動作番号に対応する部品記号が作成されるまで（ステップ１２８で肯定されるまで）繰り返し実行される。全動作番号に対応する部品記号が作成されると、ステップ１３０において装置完成の部品記号を追加し、装置全体の部品属性より、部品名を抽出する。次に部品記号フラグがNoのものは作業フローに不要のため、部品記号を削除し、再番したのちに、ステップ１３４で作業フロー情報として出力する。図１７には、作業フロー情報の出力結果をイメージとして示した。
【００８４】
（第２実施形態）
次に、第２実施形態を説明する。本実施形態は、上記実施形態とほぼ同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。本実施形態は、動きのある部品の動作途中で他の部品が動作を開始するアニメーション情報を用いて作業フローを生成するものである。
【００８５】
次に本実施形態の作用を説明する。
【００８６】
以下、まず図１８を参照し、本実施形態にかかるアニメーション情報について説明する。本実施形態では、アニメーション情報は、製品の組立に関する作業として、作業対象の本体３３０に組付部品３３２を組み付けるまでの作業を表している。すなわち図１８では、状態３４０〜状態２５０までの過程を示している。状態３４０また、本体３３０が表示された状態を示し、状態３４２は組付部品３３２が表示された状態を示している。また、状態３４４は第１の注記が表示された状態を示し、状態３４６は他の部品が動作を伴った状態を示し、状態３４８は第２の注記が表示された状態を示し、状態３５０は組付作業が終了し装置が完成した状態３５０を示している。状態３４０では、図示は省略したが、本体３３０に関係する情報として「コテイアセンブリ：図面番号Ｇｘ」の文字列が注記又は注記情報として有しているものとする。また、状態３４２では、組付部品３３２に関係する情報として「テンキーパッド：図面番号Ｇ２」の文字列が注記又は注記情報として表示された場合を示している。また、状態３４４では、作業の指示として「ゼツエンシートを剥がす」の文字列が注記又は注記情報として表示された場合を示している。また、状態３４６では、組付部品３０２の他の部品３３４の作業を補足する情報として「ゼツエンシートを剥がす」の文字列が注記又は注記情報として表示された場合を示している。また、状態３４８では、組付部品３０２の作業を補足する情報として「浮きがないよう貼り付ける」の文字列が注記又は注記情報として表示された場合を示している。
【００８７】
本実施形態の作業フロー生成処理では、作業者が指示した作業フロー生成対象のアニメーション情報を取得し、作業フロー生成装置１０の分解部１２において部分アニメーションに分解される（ステップ１００、１０２）。具体的には、動作範囲として、動作開始〜動作終了の１つの動作を計算する。最初に本体３３０であるコテイアセンブリが表示されたときを動作開始とし、表示されたときの座標から動作開始座標、動作開始の姿勢の情報を取得する。次に動作を進め、他の部品（ここでは組付部品３３２であるテンキーバッド）が表示された時を動作終了とし、テンキーパッドが表示されたときのコテイアセンブリの座標から動作終了座標、動作終了の姿勢の情報を取得する。また、最初の動作であるので、動作番号「１」が付与される。
【００８８】
また、動作している部品の初期位置を抽出、及び部品の部品属性を取得（ここでは、「部品名：コテイアセンブリ」、「図面番号：Ｇｘ」）し、ここでは、初めて表示する部品であるので部品記号フラグを有効に設定する（ステップ１０４、１０６）。次に作業名を「取る」に設定し、作業内容ＤＢ４４を参照して、部品名と作業名が合致する作業内容を取得する（ステップ１０８、１１０）。ここでは部品名が「コテイアセンブリ」で作業名が「取る」であるので、番号「SN0001」が合致し、作業内容には「コテイアセンブリ取る」が決定される。
【００８９】
次に作業内容生成装置１４は、上述のようにして作業内容生成処理を実行する（ステップ１１４）。作業工程構築部２８は、動作番号１、作業工程番号１であり、作業内容が「コテイアセンブリ取る」であるの情報を生成し、作業フロー構築部１６へ作業内容の情報を出力する。動作番号１に対する処理が完了し、次の動作に対する処理、すなわち動作番号２の処理へと移行する。
【００９０】
動作番号２の処理では、まず動作範囲、初期位置及び初期位置の姿勢を抽出すると共に、部品の部品属性として部品名が「テンキーパッド」であり、図面番号が「Ｇ２」の情報が取得される。対象部品の「テンキーパッド」は初めて表示する部品であるので、部品記号フラグを有効にし、作業名に「取る」を設定すると共に、作業内容ＤＢ４４より作業内容の情報「テンキーパッド取る」を取得する（ステップ１０２〜１１０）。次に、上述のようにして作業内容生成処理を実行する（ステップ１１４）。作業工程構築部２８は、動作番号２、作業工程番号１であり、作業内容が「テンキーパッド取る」の情報を生成し、作業フロー構築部１６へ作業内容の情報を出力する。動作番号２に対する処理が完了し、次の動作に対する処理、すなわち動作番号３の処理へと移行する。
【００９１】
動作番号３の処理では、動作範囲、初期位置及び初期位置の姿勢、及び部品属性を抽出する。具体的には、ゼツエンシートが動き出したときを動作開始とし、動き出したときの座標から動作開始座標、動作開始の姿勢の情報を取得する。次に動作を進め、他の部品（ここではテンキーパッド）が動作するときを動作終了とし、テンキーパッドが動作されたときのゼツエンシートの座標から動作終了座標、動作終了の姿勢の情報を取得する。また、最初の動作であるので、動作番号「３」が付与される。部品属性は、部品名が「ゼツエンシート」の情報が取得される。なお、図面番号が「Ｇ３」の情報が付与されている場合には図面番号の情報も取得される。対象部品の「ゼツエンシート」は初めて表示する部品ではないので、部品記号フラグを無効にし（ステップ１１２）、作業内容生成処理を実行する（ステップ１１４）。
【００９２】
作業内容生成装置１４では、動作番号３の部品の情報と、メモリに格納された情報とを比較する。動作番号３の部品名は「ゼツエンシート」であり、メモリに格納された部品名は「コテイアセンブリ」、「テンキーパッド」と情報が相違するため、動作番号３の動作開始から動作終了までに表示される注記の文字列を全て抽出する（ステップ２０２〜２０６）。次に、抽出した文字列に作業−作業キーワードＤＢ３８の文字列が含まれるものを探し、作業名候補として抽出する。抽出した注記に含まれる文字列「剥離紙」と、作業−作業キーワードＤＢ３８のＩＤ「ST029」の文字列「剥離紙」が合致する。このため、作業−作業キーワードＤＢ３８ののＩＤ「ST029」作業名「貼付」が作業名候補として設定される（ステップ２０８，２１０）。
【００９３】
次に、作業−部品ＤＢ４０の部品属性の文字列に動作番号３の動作の部品名（ゼツエンシート）が部分一致するものを探す。これにより、動作番号３の動作の部品名（ゼツエンシート）と、作業−部品ＤＢ４０のＩＤ「SA016」の部品属性に含まれる文字列「シート」が合致する。これにより、作業名はＩＤ「SA016」の「剥がす」を抽出する（ステップ２１２）。次に作業−動作ＤＢ３６の条件名DJ000の作業名を作業名候補として抽出したもののなかに、作業−部品ＤＢ４０から抽出した作業名「剥がす」を探索すると、該当するものがないので、作業名を空欄とし（ステップ２１４，２１６）、ステップ２２２へ進む。
【００９４】
次に、動作番号３の動作では動作開始位置と動作終了位置は相違するので（ステップ２２２で肯定）、第１条件（DJ001）を満たしているか判断する（ステップ２２４）。対象の動作番号３の動作は第１条件を満たしている（ステップ２２４で肯定）。すなわち、動作開始位置が一致しかつ動作終了位置が相違しかつ開始位置の姿勢が一致する。そこで、第１条件処理を実行して作業内容を抽出する（ステップ２２６）。
【００９５】
対象の動作が第１条件を満たしているときには（ステップ２２４で肯定）、ステップ２２６の第１条件処理（図１４）を実行する。
【００９６】
作業−動作ＤＢ３６から第１条件を示す条件名DJ001の作業名を抽出し、作業−動作ＤＢ３６より抽出した作業名と作業−部品ＤＢ４０より抽出した作業名とで合致する作業名を抽出する（ステップ２５０、２５２）。対象の動作では、動作番号３の動作の部品名（ゼツエンシート）と、作業−部品ＤＢ４０のＩＤ「SA016」の部品属性に含まれる文字列「シート」が合致し、ＩＤ「SA016」の「剥がす」を作業名として抽出する。次に作業−動作ＤＢ３６の条件名DJ001の作業名を作業名候補として抽出したもののなかに、作業−部品ＤＢ４０から抽出した作業名「剥がす」が条件名J013の作業名に該当するので、作業名を「剥がす」とする。次に、合致した作業名があるので（ステップ２５４で肯定）、作業内容ＤＢ４４により部品名と作業名から作業内容を抽出し（ステップ２５６）、第１条件処理を終了する。対象の動作では、作業内容ＤＢ４４における番号SN0034が合致し、番号SN0034の「剥がす」を作業内容として抽出する。
【００９７】
次に、現在対象としている動作について作業内容が設定されているので、作業工程構築部２８は抽出した順序で作業内容を整列させ、作業内容を出力する（ステップ２３６〜２４６）。作業内容生成処理が終了すると、作業フロー構築部１６は、作業内容ＤＢ４４を参照して作業内容と紐付いた工数を抽出して作業工程を作成する（ステップ１１６、１１８）。現在対象としている動作では、作業名である作業工程名は「剥がす」、部品名「ゼツエンシート」、工数「0.3」、動作番号「３」、作業工程番号「1」である。
【００９８】
次に作業フロー構築部１６は、取得した作業内容の作業工程を全て作成し、他の動作部品がないので（ステップ１２０で肯定、ステップ１２２で否定）、動作番号３に対する処理が完了し、次の動作に対する処理、すなわち動作番号４の処理へと移行する。
【００９９】
次の動作番号４に対する処理は、分解部１２において動作範囲を計算する。つまり動作開始座標と動作開始の姿勢及び動作終了座標と動作終了の姿勢を取得し、また動初期位置及び初期位置の姿勢を抽出すると共に、部品属性を取得する（ステップ１０２）。ここでは、部品名が「テンキーパッド」であり、図面番号が「Ｇ２」の情報が取得される。
【０１００】
動作番号４の部品である「テンキーパッド」は初めて表示する部品ではないので部品記号フラグを無効にし（ステップ１１２）、作業内容生成装置１４による作業内容生成処理へ移行する（ステップ１１４）。作業内容生成装置１４では、動作番号４の部品について、過去に動作開始位置と動作終了位置が同じものがあり、その情報がメモリに格納されており、メモリに格納された情報と動作番号４の動作情報が合致することを確認する。すなわち、以前に記憶させたメモリ内の部品名に「テンキーパッド」があり、動作番号４の部品名は「テンキーパッド」であるため（ステップ２０２で否定）、動作番号４の動作開始から動作終了までに表示される注記の文字列を全て抽出する（ステップ２０６）。抽出した注記の文字列は「テンキーパッド：図面番号Ｇ２」「浮きがないよう貼り付ける」である。
【０１０１】
抽出した注記に含まれる文字列「剥離紙」と、作業−作業キーワードＤＢ３８のＩＤ「ST029」の文字列「剥離紙」が合致する。このため、作業−作業キーワードＤＢ３８のＩＤ「ST029」作業名「貼付」が作業名候補として設定される（ステップ２０８，２１０）。
【０１０２】
次に、作業−部品ＤＢ４０の部品属性の文字列に動作番号４の動作の部品名（テンキーパッド）が部分一致するものを探すと、動作番号４の動作の部品名（テンキーパッド）に一部一致する、作業−部品ＤＢ４０の部品属性に含まれる文字列はない。これにより、作業名は空欄とする（ステップ２１２）。次に作業−動作ＤＢ３６の条件名DJ000の作業名を作業名候補として抽出したもののなかに、作業−部品ＤＢ４０から抽出した作業名「“”」を探索すると、該当するものがないので、作業名を空欄とする（ステップ２１４，２１６）。
【０１０３】
次に、動作番号４の動作では動作開始位置と動作終了位置を比較すると、相違するので（ステップ２２２で肯定）、第１条件（DJ001）を満たしているか判断する（ステップ２２４）。動作番号４の動作では動作開始位置が部品の初期位置と相違し、動作終了位置が部品の初期位置と一致し、動作開始位置の姿勢が部品の初期位置の姿勢と一致する。従って、対象の動作番号４の動作は第１条件を満たしていないので（ステップ２２４で否定）、第２条件（DJ002）を満たしているか判断する（ステップ２２８）。動作番号４の動作では動作終了位置が部品の初期位置と一致する。また、動作番号２の動作以降に動作はない。従って、動作条件DJ002の内容を満たしていないため、第３条件（DJ003）を満たしているか判断する（ステップ２３２）。動作番号４の動作では動作開始位置が部品の初期位置と相違する。また、動作終了位置が部品の初期位置と一致する。また、動作終了位置の姿勢が部品の初期位置の姿勢と一致する。また、現在の動作以降に動作は無い。従って、動作条件DJ003の内容を満たしている。
【０１０４】
第３条件処理は、アニメ化工程算出部２２により実行される（ステップ２３４）。まず、作業−動作ＤＢ３６より、第３条件を示す条件名DJ003の作業名を抽出する。動作番号４の動作では、動作番号２と同様に、作業名：押込、挿入、・・・が抽出され、作業−部品ＤＢ４０より作業名が抽出される（ステップ２７４、２７６）。動作番号４の動作では、部品名が「テンキーパッド」であり、作業−部品ＤＢ４０の部品属性の情報には合致するものが無い。従って、作業名は空欄とする。次に、動作番号４の動作では、作業−動作ＤＢ３６より抽出した作業名に、作業名がないので（ステップ２８０で否定）、対象の動作の動作開始から動作終了までに表示される注記の文字列を全て抽出する。動作番号４の動作では、文字列：「テンキーパッド：図面番号Ｇ２」「浮きがないよう貼り付ける」である。次に、ステップ２８４で抽出した文字列が作業−作業キーワードＤＢ３８の文字列に含まれるＩＤを探し、該当するＩＤの作業名を抽出する（ステップ２８６）。動作番号４の動作では、ＩＤがST029の作業名「貼付」が抽出される。次に、ステップ２７４で抽出した作業名とステップ２８６で抽出した作業名で合致する作業名を抽出する（ステップ２８８）。動作番号４の動作では、作業名「貼付」が抽出される。
【０１０５】
次に、ステップ２８８において合致した作業名が抽出されたか否かを判断する（ステップ２９０）。動作番号４の動作では、合致した作業名があるので、ステップ２９６では対象の動作の部品に対する部品属性から部品名を抽出する。次に、ステップ２９８においてステップ２９６で抽出した部品名に該当する作業内容を作業内容ＤＢ４４から抽出して第３条件処理を終了する（ステップ２９６，２９８）。動作番号４の動作では、部品名が「テンキーパッド」、作業名が「貼付」で、作業内容ＤＢ４４の番号SN0008における作業内容「テンキーパッド貼付」が抽出される。
【０１０６】
上述のようにして動作番号４の動作について作業内容が抽出されると、現在対象としている動作について作業内容が設定されているとき、作業工程構築部２８は注記を抽出した順序で作業内容を整列させる（ステップ２３８）。動作番号４の動作に対しては、作業内容は、「テンキーパッド貼付」が抽出されている。次に、作業工程構築部２８は対象の動作番号の動作開始位置と動作終了位置が一致するときはメモリに情報を格納する（ステップ２４０、２４２）。動作番号４の動作では、不一致である。
【０１０７】
作業内容生成処理が終了すると、作業フロー構築部１６は、作業内容ＤＢ４４を参照して作業内容と紐付いた工数を抽出して作業工程を作成する（ステップ１１６、１１８）。ここでは、作業工程名「テンキーパッド貼付」、部品名「テンキーパッド」、工数「0.5」、動作番号「４」、作業工程番号「1」である。次に作業フロー構築部１６は、取得した作業内容の作業工程を全て作成しかつ他に動作する備品がないか否かを判断する（ステップ１２０、１２２）。ここでは、作業内容の作業工程を全て作成しかつ他に動作する備品がないので、共に肯定される。
【０１０８】
次に、作業フロー生成装置１０は作業フロー構築部１６によって動作番号の順序で全ての動作番号に対応する部品記号を作成し、動作番号と同じ作業工程を部品記号の下流に追加する（ステップ１２４〜１２８）。全動作番号に対応する部品記号が作成されると、装置完成の部品記号を追加し（ステップ１３０）、装置全体の部品属性より、部品名を抽出する。次に部品記号フラグがＮＯのものは作業フローに不要のため、部品記号を削除し、再番したのちに、作業フロー情報として出力する（ステップ１３４）。図１９には、作業フロー情報の出力結果をイメージとして示した。
【０１０９】
なお、上記では作業フロー生成装置をコンピュータにより実現する一例を説明した。しかし、これらの構成に限定されるものではなく、上記説明した要旨を逸脱しない範囲において、各種の改良及び変更を行っても良いのはもちろんである。
【０１１０】
また、上記ではプログラムが記憶部に予め記憶（インストール）されている態様説明したが、これに限定されるものではない。例えば、開示の技術における作業フロー生成プログラムまたは作業内容生成プログラムは、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ等の記録媒体に記録されている形態で提供することも可能である。
【０１１１】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【０１１２】
以上の実施形態に関し、更に以下の付記を開示する。
【０１１３】
(付記１)
前記アニメーション情報は、前記部品に関係づけた前記部品名を含む部品属性を含み、
前記名称演算部は、前記アニメーション情報の前記部品属性に含まれる部品名を前記部品名に用いる
請求項１〜請求項３の何れか１項に記載の作業内容生成装置。
【０１１４】
(付記２)
コンピュータに、
処理対象の作業における部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、第１記憶部に記憶された前記部品の動作の種類を表す動作パターン及び前記部品の動作を特定するための条件を表す動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求める動作解析ステップと、
第２記憶部に記憶された前記部品の動作パターンと前記部品に対する作業の名称を表す作業名との対応関係に基づいて、前記求めた部品の動作パターンと動作条件の関係に対応する作業名を求める名称演算ステップと、
第３記憶部に記憶された前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係に基づいて、前記求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業工程構築ステップと、
を含む処理を実行させるための作業内容生成プログラムを記憶した記憶媒体。
【０１１５】
(付記３)
コンピュータに、
入力される物品の３次元空間内での動きを示すアニメーション情報を、前記物品の含まれる部品の３次元空間内での動きを示す部分アニメーション情報に分解し、分解した部分アニメーション情報を、名称を有する部品の３次元空間内での動きを示すアニメーション情報として出力する分解ステップと、
処理対象の作業における部品名を有する部品の３次元空間内での動きを示すアニメーション情報から、動きのある部品を動作を伴う部品として該部品の動作範囲を求め、第１記憶部に記憶された前記部品の動作の種類を表す動作パターン及び前記部品の動作を特定するための条件を表す動作条件に基づいて、前記動作範囲内における前記部品の動作パターンと動作条件の関係を求め、第２記憶部に記憶された前記部品の動作パターンと前記部品に対する作業の名称を表す作業名との対応関係に基づいて、前記求めた部品の動作パターンと動作条件の関係に対応する作業名を求め、第３記憶部に記憶された前記作業名及び前記部品の名称である部品名と、前記部品に対する作業の内容を表す作業内容との対応関係に基づいて、前記求めた前記作業名及び前記部品名に対応する作業内容を前記部品に対する作業の作業内容として求める作業内容生成ステップと、
前記生成された作業内容に基づいて前記作業内容を作業の順序に従って配列した作業フローを生成する作業フロー生成ステップと、
を含む処理を実行させるための作業フロー生成プログラムを記憶した記憶媒体。
【符号の説明】
【０１１６】
１０    作業フロー生成装置
１２    分解部
１４    作業内容生成装置
１６    作業フロー構築部
２０    動作解析部
２２    アニメ化工程算出部
２４    付帯工程算出部
２６    名称演算部
２８    作業工程構築部
３０    動作パターンＤＢ
３２    動作条件ＤＢ
３４    第１記憶部
３６    作業−動作ＤＢ
３８    作業−作業キーワードＤＢ
４０    作業−部品ＤＢ
４２    第２記憶部
４４    作業内容ＤＢ
４６    第３記憶部
５２    メモリ
５４    記憶部
８０    コンピュータ
【図１】
0005948896.tif 000002
【図２】
0005948896.tif 000003
【図３】
0005948896.tif 000004
【図４】
0005948896.tif 000005
【図５】
0005948896.tif 000006
【図６】
0005948896.tif 000007
【図７】
0005948896.tif 000008
【図８】
0005948896.tif 000009
【図９】
0005948896.tif 000010
【図１０】
0005948896.tif 000011
【図１１】
0005948896.tif 000012
【図１２】
0005948896.tif 000013
【図１３】
0005948896.tif 000014
【図１４】
0005948896.tif 000015
【図１５】
0005948896.tif 000016
【図１６】
0005948896.tif 000017
【図１７】
0005948896.tif 000018
【図１８】
0005948896.tif 000019
【図１９】
0005948896.tif 000020