(57)【特許請求の範囲】
【請求項１】
複数の部品のそれぞれの配置と、前記部品ごとの他の部品との近接関係の情報を所定の記憶部から取得し前記複数の部品が近接する部品と干渉しない分解順序を探索する分解順序探索部と、
前記分解順序探索部で生成した分解順序に対して類似する部品構成を備える他の分解順序をナレッジ記憶部から読み出して適用し前記分解順序を変更する分解順序ナレッジ適用部と、
前記分解順序を逆にした組立動作と、組立動作を観察するカメラ視点と、を生成するアニメーションコード生成部と、
を備える順序決定支援装置。
【請求項２】
請求項１に記載の順序決定支援装置であって、
前記分解順序ナレッジ適用部が変更した分解順序に対してさらに修正を受け付け、受け付けた修正に基づき前記分解順序を変更する分解順序修正部、
を備える順序決定支援装置。
【請求項３】
請求項１に記載の順序決定支援装置であって、
前記分解順序ナレッジ適用部が変更した分解順序に対してさらに修正を受け付け、受け付けた修正に基づき前記分解順序を変更する分解順序修正部と、
前記分解順序修正部により修正された前記分解順序を前記修正に係る部品構成と関連付けて前記ナレッジ記憶部に格納するナレッジ登録部と、
を備える順序決定支援装置。
【請求項４】
請求項１に記載の順序決定支援装置であって、
前記アニメーションコード生成部は、前記カメラ視点に基づく前記組立動作を画面上に表示するアニメーションを表示する、
ことを特徴とする順序決定支援装置。
【請求項５】
請求項１に記載の順序決定支援装置であって、
前記分解順序ナレッジ適用部は、前記他の分解順序を適用する処理において、前記部品同士の異形度が所定よりも小さい部品同士を類似部品であるとして、前記他の分解順序を特定する、
ことを特徴とする順序決定支援装置。
【請求項６】
順序決定支援装置を用いた順序決定支援方法であって、
前記順序決定支援装置は、制御部と、ナレッジ記憶部と、を備え、
前記制御部は、
複数の部品のそれぞれの配置と、前記部品ごとの他の部品との近接関係の情報を所定の記憶部から取得し前記複数の部品が近接する部品と干渉しない分解順序を探索する分解順序探索ステップと、
前記分解順序探索ステップで生成した分解順序に対して類似する部品構成を備える他の分解順序を前記ナレッジ記憶部から読み出して適用し前記分解順序を変更する分解順序ナレッジ適用ステップと、
前記分解順序を逆にした組立動作と、組立動作を観察するカメラ視点と、を生成するアニメーションコード生成ステップと、
を実行する順序決定支援方法。
【請求項７】
請求項６に記載の順序決定支援方法であって、
前記分解順序ナレッジ適用ステップにおいて変更された分解順序に対してさらに修正を受け付け、受け付けた修正に基づき前記分解順序を変更する分解順序修正ステップ、
を実行することを特徴とする順序決定支援方法。
【請求項８】
請求項６に記載の順序決定支援方法であって、
前記分解順序ナレッジ適用ステップにおいて変更された分解順序に対してさらに修正を受け付け、受け付けた修正に基づき前記分解順序を変更する分解順序修正ステップと、
前記分解順序修正ステップにより修正された前記分解順序を前記修正に係る部品構成と関連付けて前記ナレッジ記憶部に格納するナレッジ登録ステップと、
を実行することを特徴とする順序決定支援方法。
【請求項９】
請求項６に記載の順序決定支援方法であって、
前記アニメーションコード生成ステップでは、前記カメラ視点に基づく前記組立動作を画面上に表示するアニメーションを表示する、
ことを特徴とする順序決定支援方法。
【請求項１０】
請求項６に記載の順序決定支援方法であって、
前記分解順序ナレッジ適用ステップでは、前記他の分解順序を適用する処理において、前記部品同士の異形度が所定よりも小さい部品同士を類似部品であるとして、前記他の分解順序を特定する、
ことを特徴とする順序決定支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、順序決定支援装置および順序決定支援方法の技術に関する。
【背景技術】
【０００２】
本技術分野の背景技術として、特開２０１２−１４５６９号公報（特許文献１）がある。この公報には、「組立品を構成する複数の部品を順次組み立てる組立シーケンスを生成する組立シーケンス生成システムであって、前記複数の部品のそれぞれの配置と他の部品との近接関係の情報をＣＡＤから取得する部品配置・近接関係取得部と、前記複数の部品の組立単位を設定する組立単位設定部と、前記部品配置・近接関係取得部で取得した部品配置、部品近接関係と前記組立単位設定部で設定した組立単位とから、前記複数の部品の組立シーケンスを近接する部品と干渉しないようにして生成する組立シーケンス生成部と、該組立シーケンス生成部で生成した組立シーケンスから前記複数の部品の組立の動作と該組立の動作を観察するカメラ視点とを生成する組立アニメ生成部とを備えたことを特徴とする組立シーケンス生成システム」と記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１４５６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記技術では、配置規則に従った干渉を抑えた組立順序を生成することが可能となるが、経験則を考慮した最適な組立順序を得られるまでには至らない。
【０００５】
本発明は、上記問題点を解決するためになされたものであり、経験則を考慮した組立順序を得ることを目的とする。
【課題を解決するための手段】
【０００６】
本願は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下のとおりである。上記課題を解決すべく、本発明に係る順序決定支援装置は、複数の部品のそれぞれの配置と、上記部品ごとの他の部品との近接関係の情報を所定の記憶部から取得し上記複数の部品が近接する部品と干渉しない分解順序を探索する分解順序探索部と、上記分解順序探索部で生成した分解順序に対して類似する部品構成を備える他の分解順序をナレッジ記憶部から読み出して適用し上記分解順序を変更する分解順序ナレッジ適用部と、上記分解順序を逆にした組立動作と、組立動作を観察するカメラ視点と、を生成するアニメーションコード生成部とを備える。
【発明の効果】
【０００７】
本発明によると、経験則を考慮した組立順序を得ることができる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係る順序決定支援装置の構成例を示す図である。
【図２】モデル情報記憶部のデータ構造を示す図である。
【図３】分解順序記憶部のデータ構造を示す図である。
【図４】組立順序記憶部のデータ構造を示す図である。
【図５】アニメーション記憶部のデータ構造を示す図である。
【図６】分解順序ナレッジ記憶部のデータ構造を示す図である。
【図７】順序決定支援装置のハードウェアの構成を示す図である。
【図８】ナレッジ登録処理の処理フローを示す図である。
【図９】ナレッジ適用処理の処理フローを示す図である。
【図１０】分解順序の並べ替え方法の例を示す図である。
【図１１】部品が異なる場合の並べ替え方法の例を示す図である。
【図１２】組立アニメーション表示画面の例を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本発明に係る実施形態を適用した順序決定支援装置１００の例について、図面を参照して説明する。
【００１０】
図１は、本発明に係る第一の実施形態を適用した順序決定支援装置１００の構成例を示す図である。
【００１１】
なお、本実施形態において、順序決定支援装置１００は、例えばサーバー装置、パーソナルコンピューター装置、スマートフォン端末、いわゆるタブレット端末等、独立して動作可能な機器全般を含む。
【００１２】
順序決定支援装置１００は、制御部１２０と、記憶部１３０と、入力受付部１４０と、出力処理部１５０と、を含む。制御部１２０は、分解順序探索部１２１と、分解順序ナレッジ適用部１２２と、分解順序ＧＵＩ修正部１２３と、アニメーションコード生成部１２４と、類似部位検索部１２５と、ナレッジ登録部１２６と、を含む。記憶部１３０は、モデル情報記憶部１３１と、分解順序記憶部１３２と、組立順序記憶部１３３と、アニメーション記憶部１３４と、分解順序ナレッジ記憶部１３５と、を含む。
【００１３】
図２は、モデル情報記憶部１３１のデータ構造を示す図である。モデル情報記憶部１３１には、部品識別子１３１ａと、部品名１３１ｂと、エッジ数１３１ｃと、重量比１３１ｄと、評価点１３１ｅと、が含まれる。なお、モデル情報記憶部１３１は、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）等により用いることのできるデータを格納することを想定しており、部品の配置と、部品ごとの他の部品との近接関係の情報を含むものであるとする。
【００１４】
部品識別子１３１ａは、部品を特定する情報である。部品名１３１ｂは、部品識別子１３１ａにて特定される部品の名称である。なお、部品識別子は部品を特定する情報であるのに対し、部品名は部品の位置づけや特徴的な形状を名称化したものである。例えば、部品名は、「ケース」、「ブロック」あるいは「スクリュー」等の情報である。
【００１５】
エッジ数１３１ｃは、部品識別子１３１ａにて特定される部品が有するエッジの数を特定する情報である。エッジとは、部品をノードと見立てた場合に、所定の結合関係を有する場合にそのノード間の関係のことである。例えば、部品二つをねじ止めする場合、ねじは、部品のそれぞれとエッジを有し、エッジ数は２となる。
【００１６】
重量比１３１ｄは、複数の部品から成る一つの部品ブロック内で最も重量の重いものを分母とした場合等の、各部品の重量の比の値である。
【００１７】
評価点１３１ｅは、エッジ数に、ノードの重量比を加えた値である。すなわち、評価点は、エッジ数が大きい部品程、高い点数を得る値である。また、評価点は、同じエッジ数であれば、ノードの重量比が大きい程、高い点数を得る値であるともいえる。
【００１８】
図３は、分解順序記憶部１３２のデータ構造を示す図である。分解順序記憶部１３２には、分解順序１３２ａと、部品識別子１３２ｂと、部品名１３２ｃと、が含まれる。
【００１９】
分解順序１３２ａは、複数の部品から成る部品ブロックが一つまたは複数含まれる完成品において、部品ごとの分解順序を特定する情報である。部品識別子１３２ｂは、部品を特定する情報である。部品名１３２ｃは、部品識別子１３２ｂにて特定される部品の名称である。
【００２０】
図４は、組立順序記憶部１３３のデータ構造を示す図である。組立順序記憶部１３３には、組立順序１３３ａと、部品識別子１３３ｂと、部品名１３３ｃと、が含まれる。
【００２１】
組立順序１３３ａは、複数の部品から成る部品ブロックが一つまたは複数含まれる完成品において、部品ごとの組立順序を特定する情報である。部品識別子１３３ｂは、部品を特定する情報である。部品名１３３ｃは、部品識別子１３３ｂにて特定される部品の名称である。
【００２２】
図５は、アニメーション記憶部１３４のデータ構造を示す図である。アニメーション記憶部１３４には、経過時間１３４ａと、部品１３４ｂと、位置１３４ｃと、動作１３４ｄと、が含まれる。
【００２３】
経過時間１３４ａは、アニメーションの開始時点からの経過時間を特定する情報である。あるいは、例えばフレームレートを特定する情報であってもよい。
【００２４】
部品１３４ｂは、動作対象となる部品を特定する情報である。例えば、部品１３４ｂには、部品識別子が格納される。位置１３４ｃは、部品１３４ｂで特定される部品を表示する位置を特定する情報である。例えば、新たなねじを組みつけるアニメーションにおいては、組み付け前のねじのアニメーション上の発生位置を特定する３Ｄ空間上の位置を特定する情報である。動作１３４ｄは、部品１３４ｂで特定される部品のアニメーション上の動作を特定する情報である。例えば、動作１３４ｄが「発生」であれば、位置１３４ｃで特定される位置に、部品１３４ｂで特定される部品を所定の視点から見た形状で発生させる動作である。また例えば、動作１３４ｄが「移動」であれば、位置１３４ｃで特定される位置に、部品１３４ｂで特定される部品を所定の視点から見た形状で移動させる動作である。
【００２５】
図６は、分解順序ナレッジ記憶部１３５のデータ構造を示す図である。分解順序ナレッジ記憶部１３５には、ノード１３５ａと、初回１３５ｂと、「修正１」１３５ｃと、「修正２」１３５ｄと、「修正３」１３５ｅと、が含まれる。
【００２６】
ノード１３５ａは、ノードを特定する情報、すなわち部品を特定する情報である。初回１３５ｂは、分解順序の設定に関する初回の設定値の情報である。「修正１」１３５ｃは、初回１３５ｂに設定された設定値を初めて修正した際の修正内容を特定する履歴情報である。「修正２」１３５ｄは、初回１３５ｂあるいは「修正１」１３５ｃに設定された設定値を修正した際の修正内容を特定する履歴情報である。「修正３」１３５ｅは、初回１３５ｂ、「修正１」１３５ｃあるいは「修正２」１３５ｄに設定された設定値を修正した際の修正内容を特定する履歴情報である。
【００２７】
初回１３５ｂ、「修正１」１３５ｃ、「修正２」１３５ｄ、「修正３」１３５ｅのそれぞれには、モジュール属性、分解順番、分解ベクトルを特定する情報が含まれる。モジュール属性とは、同時に分解する部品に共通させて対応付ける情報である。例えば、モジュール属性が同じ部品は、同時に分解を行う部品であるといえる。
【００２８】
分解順番とは、分解を行うべき順番であり、他の部品と干渉しない分解の順序を特定する情報である。分解ベクトルとは、分解時に部品を移動させる方向を特定するベクトル情報である。例えば、分解ベクトルとは、鉛直方向下向きに埋めこまれている部品を分解する際には、鉛直方向上向きに部品を移動させる必要があり、その方向を特定する情報である。
【００２９】
なお、分解順序ナレッジ記憶部１３５の初回１３５ｂと、「修正１」１３５ｃと、「修正２」１３５ｄと、「修正３」１３５ｅと、は、それぞれの修正が行われた日時を特定する情報が関連付けられていてもよい。
【００３０】
図１の説明に戻る。分解順序探索部１２１は、モデル情報記憶部１３１に格納された情報を用いて、複数の部品が近接する部品と干渉しない部品の分解順序を探索する。図示しないが、分解順序探索部１２１は、組み立てモデルの構成部品の隣接する２面間の幾何学的拘束関係に基づいて、干渉せずに各部品を分解することができる方向を各部品に特定することで部品の分解可能部品を特定し、分解可能なノードとして特定する。なお、当該部品を分解することができる方向を特定するために、分解順序探索部１２１は、グラフィック処理上のカメラ視点を分解ベクトル方向軸上に置き、分解方向の部品の長手寸法だけ離した位置にカメラの原点を設定し、部品の全景がカメラ視野に収まる倍率を設定し、目的の部品の写り込む範囲が他の部品に阻害されることなくとらえられれば、干渉しないものと判定する。
【００３１】
そして、分解順序探索部１２１は、分解可能なノードの分解順序を、完全グラフにおける経路探索により得られる評価値を用いて特定する。具体的には、分解順序探索部１２１は、評価値をノード（部品）ごとに重量比にエッジ数を加えた値として算出し、ダイクストラ法等による評価値の計算を行い、評価値が低いものがより分解順序を早いものとして探索する。そして、分解順序探索部１２１は、分解順序が決定された部品を除外した状態を対象として上述の評価値の計算を再び行い、分解順序を順次探索する。
【００３２】
分解順序ナレッジ適用部１２２は、分解順序探索部１２１が探索した分解順序を対象として、分解順序ナレッジ記憶部１３５に格納されている分解順序を用いて置換し、経験則を反映した分解順序へと再構成する。具体的には、分解順序ナレッジ適用部１２２は、分解順序ナレッジ記憶部１３５に含まれる部品構成と、分解順序に含まれる部品構成と、を比較して、相互に類似する部品群を特定し、該部品群の分解順序に対して分解順序ナレッジ記憶部１３５に含まれる順序を適用する。そして、分解順序ナレッジ適用部１２２は、残りの部分の分解順序を再構成する。言い換えると、分解順序ナレッジ適用部１２２は、分解順序に対して類似する部品構成を備える他の分解順序をナレッジ記憶部から読み出して適用し上記分解順序を変更するものであるといえる。
【００３３】
例えば、分解順序ナレッジ適用部１２２は、分解順序ナレッジ記憶部１３５に格納された過去の分解順序の修正履歴から、組立対象の部品の質量、大きさ、慣性主軸等の属性値を有する多次元ベクトルを検索キーとして、類似する部品に関して行われた分解順序の修正履歴を検索するよう類似部位検索部１２５に指示する。分解順序ナレッジ適用部１２２は、検索された結果得られた分解順序の修正履歴を用いて、分解順序を修正する。
【００３４】
分解順序ＧＵＩ修正部１２３は、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）により、分解順序に従って部品の分解モデルを３Ｄ表示し、その分解順序において分解する対象の部品と、分解順序と、分解の運動方向に対する変更を受け付けて、分解順序に反映させる。すなわち、分解順序ＧＵＩ修正部１２３は、分解順序ナレッジ適用部１２２が変更した分解順序に対してさらに修正を受け付け、受け付けた修正に基づき分解順序を変更するものであるといえる。
【００３５】
アニメーションコード生成部１２４は、分解順序ＧＵＩ修正部１２３により修正があった場合には、その分解順序を、修正が無い場合には分解順序ナレッジ適用部１２２により経験則を考慮した分解順序を対象として、アニメーションコードを生成する。その際、アニメーションコード生成部１２４は、分解順序を逆順にすることで、組立順序とする。また、アニメーションコード生成部１２４は、組立動作を観察するカメラ視点についても組立対象に応じて生成し、カメラ視点に基づく組立動作を画面上に表示するアニメーションを生成し表示させる。
【００３６】
類似部位検索部１２５は、分解順序ナレッジ適用部１２２からの指示に基づき、分解順序ナレッジ記憶部１３５に含まれる部品の多次元ベクトルの差を異形度として指標化し、異形度が所定以下である部品を類似部品として特定し、その部品を含む分解単位をモジュール属性に応じて特定し、分解順番と分解ベクトルとを特定する。類似部位検索部１２５は、比較対象の部品の質量、バウンディングボックス、慣性主軸を含む多次元ベクトルを比較し差を算出することで異形度を求める。なお、差が無い場合には、比較対象の部品は同一である可能性が高く、差が大きい程、両者の部品は類似していないといえる。
【００３７】
ナレッジ登録部１２６は、分解順序ＧＵＩ修正部１２３により修正された分解順について、修正内容をナレッジとして分解順序ナレッジ記憶部１３５に格納する。
【００３８】
入力受付部１４０は、利用者からの入力情報を受け付ける。
【００３９】
出力処理部１５０は、利用者に対する出力である画面情報等の出力情報を生成する。
【００４０】
なお、記憶部１３０は、図示しないネットワークを介して接続される他の装置に設けられ、制御部１２０は通信部を介して記憶部１３０が格納する情報にアクセスするものであってもよい。
【００４１】
以上が、順序決定支援装置１００の構成である。
【００４２】
図７は、順序決定支援装置１００のハードウェア構成を示す図である。順序決定支援装置１００は、キーボード等の入力装置１６１、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｓｅｓｓｉｎｇ  Ｕｎｉｔ）１６２、ディスプレイ等の出力装置１６３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１６４、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の補助記憶装置１６５を含んで構成される。
【００４３】
入力装置１６１は、タッチパネル、キーボード、マウス等であり、ユーザーからの指示を受け付ける。
【００４４】
ＣＰＵ１６２は、ＲＡＭ１６４上にロードされるプログラムに従い演算を行う制御ユニットである。
【００４５】
出力装置１６３は、ディスプレイ等の表示装置であり、ＣＰＵ１６２による処理の結果を表示する。
【００４６】
ＲＡＭ１６４は、補助記憶装置１６５に記憶されているプログラムをロードする記憶装置である。また、ＲＡＭ１６４は、データを一時的に保存する。
【００４７】
補助記憶装置１６５は、プログラムで利用する各種データを記憶する記憶装置である。
【００４８】
上記した順序決定支援装置１００の制御部１２０は、ＣＰＵ１６２に処理を行わせるプログラムによって実現される。このプログラムは、補助記憶装置１６５に記憶され、実行にあたってＲＡＭ１６４上にロードされ、ＣＰＵ１６２により実行される。
【００４９】
以上が、本実施形態における順序決定支援装置１００のハードウェア構成例である。しかし、これに限らず、その他の同様のハードウェアを用いて構成されるものであってもよい。
【００５０】
［動作の説明］次に、本実施形態におけるナレッジ登録処理における動作を、図８を用いて説明する。
【００５１】
図８は、ナレッジ登録処理の処理内容を示す図である。ナレッジ登録処理は、順序決定支援装置１００において、順序が手動で修正されると開始される。
【００５２】
まず、分解順序ＧＵＩ修正部１２３は、分解順番のループ変数ｉ（ｉは整数）を、「１」で初期化する（ステップＳ００１）。そして、分解順序ＧＵＩ修正部１２３は、分解対象物のｉ番目の分解アニメーションを実行して表示させる（ステップＳ００２）。
【００５３】
そして、分解順序ＧＵＩ修正部１２３は、分解単位を変更する指示を受け付けたか否かを判定する（ステップＳ００３）。具体的には、分解順序ＧＵＩ修正部１２３は、分解単位に属する部品をＧＵＩにおいて表示させている状態で、所定の操作指示を受け付けたか否かを判定する。
【００５４】
分解単位の変更を受け付けなかった場合（ステップＳ００３にて「Ｎｏ」の場合）には、分解順序ＧＵＩ修正部１２３は、分解部品を変更する指示を受け付けたか否かを判定する（ステップＳ００４）。具体的には、分解順序ＧＵＩ修正部１２３は、分解単位に属する部品をＧＵＩにおいて表示させている状態で、所定の操作指示を受け付けたか否かを判定する。
【００５５】
分解部品の変更を受け付けなかった場合（ステップＳ００４にて「Ｎｏ」の場合）には、分解順序ＧＵＩ修正部１２３は、分解運動を変更する指示を受け付けたか否かを判定する（ステップＳ００５）。具体的には、分解順序ＧＵＩ修正部１２３は、分解単位に属する部品をＧＵＩにおいて表示させている状態で、所定の操作指示を受け付けたか否かを判定する。
【００５６】
分解運動の変更を受け付けなかった場合（ステップＳ００５にて「Ｎｏ」の場合）には、分解順序ＧＵＩ修正部１２３は、ループ変数であるｉが上限未満であるか否かを判定する（ステップＳ００６）。
【００５７】
ループ変数ｉが上限未満でない場合（ステップＳ００６にて「Ｎｏ」の場合）には、分解順序ＧＵＩ修正部１２３は、変更内容を分解順序ナレッジ記憶部１３５へ格納する（ステップＳ００７）。
【００５８】
そして、アニメーションコード生成部１２４は、組立アニメーションを生成する（ステップＳ００８）。具体的には、アニメーションコード生成部１２４は、分解順番の先頭から最後尾までについて、分解アニメーションを逆順にして組立アニメーションとする。
【００５９】
分解単位の変更指示がある場合（ステップＳ００３にて「Ｙｅｓ」の場合）には、分解順序ＧＵＩ修正部１２３は、分解単位に属する部品のクリックあるいはタップ選択を受け付ける（ステップＳ００９）。
【００６０】
そして、分解順序ＧＵＩ修正部１２３は、モジュール属性を変更する（ステップＳ０１０）。具体的には、分解順序ＧＵＩ修正部１２３は、選択を受け付けた部品を同じモジュール属性として、分解順序ナレッジ記憶部１３５に修正情報を記録する。
【００６１】
そして、分解順序ＧＵＩ修正部１２３は、分解運動ベクトルを算出する（ステップＳ０１１）。具体的には、分解順序ＧＵＩ修正部１２３は、モジュール属性の変更に伴って、各部品の分解運動を再算出する。そして、分解順序ＧＵＩ修正部１２３は、制御をステップＳ００５へ進める。
【００６２】
分解部品の変更指示がある場合（ステップＳ００４にて「Ｙｅｓ」の場合）には、分解順序ＧＵＩ修正部１２３は、分解部品のクリックあるいはタップ選択を受け付ける（ステップＳ０１２）。
【００６３】
そして、分解順序ＧＵＩ修正部１２３は、分解順番を変更する（ステップＳ０１３）。具体的には、分解順序ＧＵＩ修正部１２３は、選択を受け付けた部品の分解順を強制的に当該ｉにおける分解に変更して、分解順序ナレッジ記憶部１３５に修正情報を記録する。そして、分解順序ＧＵＩ修正部１２３は、制御をステップＳ０１１へ進める。
【００６４】
分解運動の変更指示がある場合（ステップＳ００５にて「Ｙｅｓ」の場合）には、分解順序ＧＵＩ修正部１２３は、分解部品のクリック選択を受け付ける（ステップＳ０１４）。具体的には、分解順序ＧＵＩ修正部１２３は、部品とその分解運動の方向の変更を受け付ける。
【００６５】
そして、分解順序ＧＵＩ修正部１２３は、運動ベクトルを変更する（ステップＳ０１５）。具体的には、分解順序ＧＵＩ修正部１２３は、選択を受け付けた部品の運動ベクトルを変更して、分解順序ナレッジ記憶部１３５に修正情報を記録し、ステップＳ００６へ制御を進める。
【００６６】
ループ変数ｉが上限未満である場合（ステップＳ００６にて「Ｙｅｓ」の場合）には、分解順序ＧＵＩ修正部１２３は、ループ変数ｉをインクリメントする（ステップＳ０１６）。インクリメント後、分解順序ＧＵＩ修正部１２３は、制御をステップＳ００２に戻す。
【００６７】
以上が、ナレッジ登録処理の処理フローである。ナレッジ登録処理によれば、ナレッジが適用された分解順序について、分解ステップごとに進めながら、分解単位と、分解部品と、分解運動と、についての修正を受け付けてナレッジとして登録することができる。
【００６８】
図９は、ナレッジ適用処理についての処理フローである。ナレッジ適用処理によれば、類似部品が用いられている場合に、分解順序ナレッジ記憶部１３５に登録されたナレッジを適用した分解順序へと最適化することができる。
【００６９】
まず、分解順序ナレッジ適用部１２２は、組立モデルＢの入力を受け付ける（ステップＳ１０１）。具体的には、分解順序ナレッジ適用部１２２は、分解順序ナレッジの適用対象となる組立モデルのモデル詳細情報を、モデル情報記憶部１３１から特定して読み出す。
【００７０】
そして、分解順序ナレッジ適用部１２２は、分解順序探索部１２１にモデルＢの分解順序探索を依頼する（ステップＳ１０２）。具体的には、分解順序探索部１２１は、組み立てモデルの構成部品の隣接する２面間の幾何学的高速関係に基づいて、干渉せずに各部品を分解することができる方向を各部品に特定することで部品の分解可能部品を特定し、分解可能なノードとして特定する。
【００７１】
そして、分解順序ナレッジ適用部１２２は、類似部位検索部１２５に依頼して、ナレッジに含まれる部位と類似する部位をモデルＢにおいて検索し表示する（ステップＳ１０３）。なお、当該類似する部位の検索においては、上述の異形度を用いた類似判定を行うことで、類似部位を特定するものとする。
【００７２】
そして、分解順序ナレッジ適用部１２２は、類似部位の流用を行うか否かの入力を受け付ける（ステップＳ１０４）。具体的には、分解順序ナレッジ適用部１２２は、ステップＳ１０３において表示した類似部位について、分解順序のナレッジの適用を受けるか否かを問い合わせる表示を行い、入力に応じて適用を受ける部位を特定する。類似部位の流用を受け付けない場合には、分解順序ナレッジ適用部１２２は、ナレッジ適用処理を終了させる。
【００７３】
類似部位の流用を受け付ける場合（ステップＳ１０４において「Ｙｅｓ」の場合）には、分解順序ナレッジ適用部１２２は、類似部位の分解順序を入れ替え、当該類似部位が分解された以降の分解順序を再探索する（ステップＳ１０５）。
【００７４】
そして、分解順序ナレッジ適用部１２２は、ナレッジ登録部１２６にナレッジ登録処理と同様の処理を行わせる（ステップＳ１０６）。すなわち分解順序ナレッジ適用部１２２は、ナレッジ登録部１２６に対して、変更のあった分解順序を反映させて分解単位と、分解部位と、分解運動と、についての修正を受け付けて、分解順序ナレッジ記憶部１３５へ格納させる。
【００７５】
以上が、ナレッジ適用処理の処理フローである。ナレッジ適用処理によれば、ナレッジとして部品に対応付けられている分解順序について、ナレッジを適用させる対象の完成品に含まれる部品の構成が類似する場合に、分解順序を流用することが可能となる。
【００７６】
図１０は、分解順序の並べ替え方法の例を示す図である。図１０においては、部品ｓ２００が、部品ａ２０１と、部品ｂ２０２と、部品ｃ２０３と、部品ｄ２０４と、により構成されるものとする例である。部品ｓ２００の組み立てにおいて、部品ａ２０１を分解した後、部品ｂ２０２を分解する順序が分解順序探索部１２１により探索された場合に、ナレッジとして類似の構成部品ｓ２００´において部品ａ２０１´よりも部品ｂ２０２´を先に分解するナレッジが含まれるものとする。この場合、分解順序探索部１２１は、部品ａ２０１と部品ｂ２０２との分解順序を入れ替える場合に、部品ａ２０１の評価点を、部品ｂ２０２の次に分解する順序にある部品ｃ２０３との間の値へと強制的に変更する。
【００７７】
図１１は、部品が異なる場合の並べ替え方法の例を示す図である。図１１においては、部品Ａを構成する部品は、部品ａ３００と、部品ｂ３０１と、部品ｃ３０２と、部品ｄ３０３とを含むものであるとする。また、類似する部位Ａ´は、部品ａ´３００´と、部品ｂ´３０１´と、部品ｅ´３０４と、を含むものとする。この場合には、部品の構成が一致しないが、部品ａ３００と部品ａ´３００´とが所定以上類似する関係にあり、部品ｂ３０１と部品ｂ´３０１´とが所定以上類似する関係にあるとすると、分解順序探索部１２１は、類似する部品の順序を再現するように分解順序を上述の方法で調整し、それ以外の部品の分解順序についてはそのままとする。
【００７８】
図１２は、組立アニメーション表示画面の例を示す図である。組立アニメーション表示画面６００は、組立アニメーション表示領域６０１と、アニメーションの進行度合いを示す進行バー表示領域６０２と、アニメーションの巻き戻し、再生、一時停止、早送り等の操作指示を受け付ける操作指示アイコン表示領域６０３と、を含む。組立アニメーション表示領域６０１においては、組立対象の部品が表示され、次に組立動作に用いる部品が経時に応じて表示され、組み立てる位置に移動するアニメーションが表示され、組み立てられた状態を示すアニメーション表示がなされる。
【００７９】
以上、本発明に係る実施形態について説明した。この実施形態によれば、経験則を考慮した最適な組立順序を得られる。また、その組立順序について、アニメーション表示を行うことができる。
【００８０】
本発明に係る実施形態では、アニメーションを構成する情報がアニメーション記憶部１３４に格納されているが、アニメーションを構成する情報の構造は、当該構造に限られない。例えば、カメラ位置を固定した二次元のアニメーションを示す情報の構造としても良いし、三次元のアニメーションを示す情報の構造として、当該構造とは異なる別の構造を用いるものとしてもよい。
【００８１】
なお、上述した本発明に係る実施形態にかかる制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えても良い。
【００８２】
また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記した実施形態の技術的要素は、単独で適用されてもよいし、プログラム部品とハードウェア部品のような複数の部分に分けられて適用されるようにしてもよい。
【００８３】
以上、本発明について、実施形態を中心に説明した。
【符号の説明】
【００８４】
１００・・・順序決定支援装置、１２０・・・制御部、１２１・・・分解順序探索部、１２２・・分解順序ナレッジ適用部、１２３・・・分解順序ＧＵＩ修正部、１２４・・・アニメーションコード生成部、１２５・・・類似部位検索部、１２６・・・ナレッジ登録部、１３０・・・記憶部、１３１・・・モデル情報記憶部、１３２・・・分解順序記憶部、１３３・・・組立順序記憶部、１３４・・・アニメーション記憶部、１３５・・・分解順序ナレッジ記憶部、１４０・・・入力受付部、１５０・・・出力処理部
【図１】
0006318080.tif 000002
【図２】
0006318080.tif 000003
【図３】
0006318080.tif 000004
【図４】
0006318080.tif 000005
【図５】
0006318080.tif 000006
【図６】
0006318080.tif 000007
【図７】
0006318080.tif 000008
【図８】
0006318080.tif 000009
【図９】
0006318080.tif 000010
【図１０】
0006318080.tif 000011
【図１１】
0006318080.tif 000012
【図１２】
0006318080.tif 000013