(57)【要約】【課題】製品の組み立てにかかる時間を精度よく算出することができる設計支援装置１０を提供する。【解決手段】本発明の設計支援装置１０は、組み立ての際の部品の移動方向と重力の方向とのなす角度に応じて、組み立ての際の部品の移動に要する時間を算出する。例えば、設計支援装置１０は、設計情報保持部１０５を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向のベクトルを組付ベクトルａとして算出し、当該下位部品毎に算出した組付ベクトルａと重力ベクトルｇとの内積の値に対応する移動時間を動作時間保持部１１１から抽出し、抽出した下位部品毎の移動時間を、総組における移動時間として組付情報保持部１１２に格納する。【選択図】図１
2011008609.tif 000002
【特許請求の範囲】
【請求項１】
製品の組み立て時間を短くするための設計を支援する設計支援装置であって、
前記製品を構成するそれぞれの部品について、当該部品が他の部品に組み付けられる方向と重力の方向とのなす角度に応じて、当該製品の組み立てにおいて部品が他の部品に組み付けられる際の移動時間を算出する移動時間算出部と、
前記移動時間算出部によって算出された移動時間を用いて、前記製品の組立時間を算出する組立時間算出部と
を備えることを特徴とする設計支援装置。
【請求項２】
請求項１に記載の設計支援装置であって、
前記製品を構成する部品を示す部品ＩＤ毎に、当該部品に組み付けられる他の部品との接触面から当該他の部品へ伸びる接触面ベクトルｑ、および、当該他の部品の部品ＩＤを保持する設計情報保持部と、
部品の組み付け方向と、重力の方向とのなす角度毎に、当該部品を他に部品に組み付けるために移動させるのにかかる移動時間を保持する動作時間保持部と、
上位部品の部品ＩＤ毎に、当該上位部品に組み付けられる下位部品に対応する部品ＩＤ、当該下位部品を当該上位部品に組み付けるために移動させるのにかかる移動時間、当該下位部品を当該上位部品に移動させてから結合させるまでの保持時間、および、当該下位部品を当該上位部品に結合させるのにかかる結合時間を保持する組付情報保持部と
をさらに備え、
前記移動時間算出部は、
前記設計情報保持部を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向を組み付け方向として算出し、当該下位部品毎に算出した組み付け方向と重力の方向とのなす角度に対応する移動時間を前記動作時間保持部から抽出し、下位部品毎に抽出した移動時間を、総組における移動時間として前記組付情報保持部に格納し、
前記組立時間算出部は、
上位部品の部品ＩＤ毎に前記組付情報保持部を参照して、当該上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動時間、保持時間、および結合時間を合計して、当該上位部品の部品ＩＤ毎の組立時間を算出することを特徴とする設計支援装置。
【請求項３】
請求項２に記載の設計支援装置であって、
前記設計情報保持部は、
上位部品の部品ＩＤに対応付けて、当該上位部品の重心座標をさらに保持すると共に、当該部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に、当該下位部品が上位部品と接触する面を規定する接触面情報をさらに保持し、
前記動作時間保持部は、
組み付け方向と重力の方向とのなす角度毎に、下位部品を上位部品に組み付ける際の保持時間をさらに保持すると共に、組み付け方向と重力の方向とのなす角度が０度の場合については、下位部品の重心の座標から重力方向へ伸ばした線分が当該下位部品の接触面情報で規定される面と交わらない場合の当該下位部品の保持時間をさらに保持し、
当該設計支援装置は、
前記設計情報保持部を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品の組み付け方向と重力の方向とのなす角度が０度か否かを判定し、
当該なす角度が０度でない場合に、当該なす角度に対応する保持時間を前記動作時間保持部から抽出し、
当該なす角度が０度である場合には、前記設計情報保持部を参照し、当該下位部品の重心の座標から重力の方向へ伸ばした線分が当該下位部品の接触面情報で規定される面と交わるか否かを判定し、
当該下位部品の重心の座標から重力の方向へ伸ばした線分が当該下位部品の接触面情報で規定される面と交わる場合に、当該下位部品の保持時間を０と算出し、
当該下位部品の重心の座標から重力の方向へ伸ばした線分が当該下位部品の接触面情報で規定される面と交わらない場合に、当該下位部品の重心の座標から重力の方向へ伸ばした線分が当該下位部品の接触面情報で規定される面と交わらない場合の保持時間を前記動作時間保持部から抽出し、
算出または抽出した保持時間を合計して当該上位部品の保持時間を算出し、算出した保持時間を前記組付情報保持部に格納する保持時間算出部をさらに備えることを特徴とする設計支援装置。
【請求項４】
請求項３に記載の設計支援装置であって、
前記組付情報保持部は、
上位部品の部品ＩＤ毎に、当該上位部品が部組で組み立てられる際に当該上位部品の姿勢を変更する部組準備時間をさらに保持し、
前記移動時間算出部は、総組における移動時間を算出した後に、さらに、
それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品の組み付け方向と重力の方向とのなす角度が０度である場合の移動時間を前記動作時間保持部から抽出し、
当該下位部品毎に抽出した移動時間を合計することにより当該上位部品の部組における移動時間を算出し、
当該下位部品のいずれかの組み付け方向と重力の方向とのなす角度が０度でない場合に、当該下位部品の組み付け方向と重力の方向とのなす角度が０度である場合の移動時間を部組準備時間として前記動作時間保持部から抽出し、
当該下位部品毎に前記保持時間算出部に保持時間を算出させ、算出された保持時間を合計することにより当該上位部品の部組における保持時間を算出し、
算出した部組における移動時間、抽出した部組準備時間、および算出した部組における保持時間の合計が、前記組付情報保持部に格納されている、当該上位部品に組み付けられる下位部品の移動時間および保持時間の合計よりも短い場合に、前記組付情報保持部に格納されている当該上位部品に組み付けられる下位部品毎の総組における移動時間および保持時間を、算出した部組における移動時間および保持時間に置き換えると共に、抽出した部組準備時間を当該上位部品に対応する部品ＩＤに対応付けて前記組付情報保持部に格納することを特徴とする設計支援装置。
【請求項５】
請求項３または４に記載の設計支援装置であって、
前記設計情報保持部は、
上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に、当該下位部品を当該上位部品に結合させる場合の結合方法を識別する結合種別、および、当該結合方法の詳細を示す結合情報をさらに保持し、
当該設計支援装置は、
結合種別および結合情報の組み合わせ毎に、当該組み合わせに対応する結合動作における結合時間の算出方法を保持する結合時間算出方法保持部と、
上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に前記設計情報保持部を参照して、結合種別および結合情報を抽出し、前記結合時間算出方法保持部を参照して、抽出した結合種別および結合情報に対応する結合時間の算出方法を取得し、取得した算出方法を用いて当該下位部品の部品ＩＤ毎に結合時間を算出して前記組付情報保持部に格納する結合時間算出部と
をさらに備えることを特徴とする設計支援装置。
【請求項６】
請求項３から５のいずれか一項に記載の設計支援装置であって、
前記組付情報保持部は、
上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に、当該下位部品を当該上位部品に溶接するのにかかる溶接時間をさらに保持し、
前記設計情報保持部は、
上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に、当該下位部品を当該上位部品に結合させる場合の溶接方法を識別する溶接種別、および、当該溶接方法において指定された溶接パラメータをさらに保持し、
前記組立時間算出部は、
上位部品の部品ＩＤ毎に前記組付情報保持部を参照して、当該上位部品の部品ＩＤに対応付けられている移動時間、保持時間、結合時間、および溶接時間を合計して組立時間を算出し、
当該設計支援装置は、
溶接種別および溶接パラメータの組み合わせ毎に、１つ以上の溶接工程と、それぞれの溶接工程における溶接時間の算出方法を保持する溶接時間算出方法保持部と、
上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に前記設計情報保持部を参照して、溶接種別および溶接パラメータを抽出し、前記溶接時間算出方法保持部を参照して、抽出した溶接種別および溶接パラメータに対応する溶接時間の算出方法を取得し、取得した算出方法を用いて当該下位部品の部品ＩＤ毎に溶接時間を算出して前記組付情報保持部に格納する溶接時間算出部と
をさらに備えることを特徴とする設計支援装置。
【請求項７】
請求項３から６のいずれか一項に記載の設計支援装置であって、
前記組付情報保持部は、
上位部品の部品ＩＤに対応付けて、当該部品ＩＤに対応付けられている組み立て時間が総組の組み立て時間を示すのか部組の組み立て時間を示すのかを識別する組立種別をさらに保持すると共に、上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に、当該下位部品の移動方向、保持が必要か否かを示す保持要否、および当該下位部品の結合方法をさらに保持し、
前記設計情報保持部は、
上位部品の部品ＩＤ毎に、当該上位部品の形状を示す情報をさらに保持し、
当該設計支援装置は、
工程番号に対応付けて、上位部品の部品ＩＤを保持すると共に、当該上位部品の部品ＩＤに対応付けて、下位部品の部品ＩＤ、移動方向、保持要否、および結合種別を有する工程表を保持する工程表保持部と、
前記組付情報保持部内の移動、保持、および結合の各動作項目毎に、当該各動作を説明する説明文を保持する説明文保持部と、
前記設計情報保持部を参照して、上位の部品から順に上位部品の部品ＩＤに昇順となるように正の整数の工程番号を割り当てて前記工程表格納部に格納し、
前記組付情報保持部を参照して、前記工程表格納部に格納した上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動、保持、および結合の各動作項目の情報を抽出して前記工程表格納部に格納し、
前記工程表保持部内の工程表において、前記組付情報保持部内で組立種別として部組が対応付けられている上位部品の部品ＩＤの工程番号に−１を乗じて、工程番号の値が昇順になるように前記工程表をソートし、
前記工程表において、前記組付情報保持部内で組立種別として部組が対応付けられている工程の前に、当該工程に含まれている部品ＩＤに対応する上位部品の部組をする際の移動方向を有し、当該上位部品の部品ＩＤを下位部品の部品ＩＤとし、基準となる部品の部品ＩＤを上位部品の部品ＩＤとする工程を追加し、
前記工程表において、工程番号毎に、当該工程番号に対応付けられている部品ＩＤに対応する上位部品および下位部品の形状を示す情報を前記設計情報保持部から抽出して、当該工程番号における組み立てを説明するための組立図を作成し、
前記工程表において、工程番号毎に、当該工程番号に対応付けられている各動作項目毎の説明文を前記説明文保持部から抽出し、
工程番号毎に、作成した画像と抽出した説明文とを対応付けて組立手順書を作成し、作成した組立手順書を出力する組立手順書作成部と
をさらに備えることを特徴とする設計支援装置。
【請求項８】
請求項５に記載の設計支援装置であって、
結合種別および結合情報の組み合わせ毎に、改善指針を示す情報を保持する改善指針保持部と、
前記設計情報格納部を参照して、上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に結合種別および結合方法を抽出し、抽出した結合種別および結合情報に対応付けられている改善指針を前記改善指針保持部から抽出し、前記組立時間算出部によって算出された上位部品の部品ＩＤ毎の組立時間が長いものから優先的に、当該上位部品の部品ＩＤに対応する組立時間、および、上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に抽出した改善指針を出力する改善指針出力部と
をさらに備えることを特徴とする設計支援装置。
【請求項９】
請求項６に記載の設計支援装置であって、
溶接種別および溶接パラメータの組み合わせ毎に、改善指針を示す情報を保持する改善指針保持部と、
前記設計情報格納部を参照して、上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に溶接種別および溶接パラメータを抽出し、抽出した溶接種別および溶接パラメータに対応付けられている改善指針を前記改善指針保持部から抽出し、前記組立時間算出部によって算出された上位部品の部品ＩＤ毎の組立時間が長いものから優先的に、当該上位部品の部品ＩＤに対応する個別組立時間、および、上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎に抽出した改善指針を出力する改善指針出力部と
をさらに備えることを特徴とする設計支援装置。
【請求項１０】
組立物に関する情報を生成する設計支援装置であって、
３Ｄ−ＣＡＤあるいは設計図面に記載された設計情報を入力として、
部品名称、員数、外形寸法などの部品表情報と
部品の鉛直方向に対する姿勢、重心位置、部品間の係合面情報などの形状情報と
ねじなどの結合部品や溶接方法などの結合手段情報を
取得あるいは入力する手段と、
形状情報から組立時間を最短にする部品の組付姿勢および組付順序を生成する手段と、
組付姿勢および組付順序と結合手段情報から組付動作を生成する手段と、
これらを出力する出力手段と
を備えることを特徴とする設計支援装置。
【請求項１１】
製品の組み立て時間を短くするための設計を支援する設計支援装置における設計支援方法であって、
前記設計支援装置は、
前記製品を構成する部品を示す部品ＩＤ毎に、当該部品に組み付けられる他の部品との接触面から当該他の部品へ伸びる接触面ベクトルｑ、および、当該他の部品の部品ＩＤを保持する設計情報保持部と、
部品の組み付け方向と、重力の方向とのなす角度毎に、当該部品を他の部品に組み付けるために移動させるのにかかる移動時間を保持する動作時間保持部と、
上位部品の部品ＩＤ毎に、当該上位部品に組み付けられる下位部品に対応する部品ＩＤ、当該下位部品を当該上位部品に組み付けるために移動させるのにかかる移動時間、当該下位部品を当該上位部品に移動させてから結合させるまでの保持時間、および、当該下位部品を当該上位部品に結合させるのにかかる結合時間を保持する組付情報保持部と
を備え、
前記設計情報保持部を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向を組み付け方向として算出し、当該下位部品毎に算出した組み付け方向と重力の方向とのなす角度に対応する移動時間を前記動作時間保持部から抽出し、抽出した下位部品毎の移動時間を、総組における移動時間として前記組付情報保持部に格納する移動時間算出ステップと、
上位部品の部品ＩＤ毎に前記組付情報保持部を参照して、当該上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動時間、保持時間、および結合時間を合計して、当該上位部品の部品ＩＤ毎の組立時間を算出する組立時間算出ステップと
を実行することを特徴とする設計支援方法。
【請求項１２】
コンピュータを、製品の組み立て時間を短くするための設計を支援する設計支援装置として機能させるプログラムであって、
前記コンピュータに、
前記製品を構成する部品を示す部品ＩＤ毎に、当該部品に組み付けられる他の部品との接触面から当該他の部品へ伸びる接触面ベクトルｑ、および、当該他の部品の部品ＩＤを管理する設計情報管理機能、
部品の組み付け方向と、重力の方向とのなす角度毎に、当該部品を他の部品に組み付けるために移動させるのにかかる移動時間を管理する動作時間管理機能、
上位部品の部品ＩＤ毎に、当該上位部品に組み付けられる下位部品に対応する部品ＩＤ、当該下位部品を当該上位部品に組み付けるために移動させるのにかかる移動時間、当該下位部品を当該上位部品に移動させてから結合させるまでの保持時間、および、当該下位部品を当該上位部品に結合させるのにかかる結合時間を管理する組付情報管理機能、
前記設計情報管理機能を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向を組み付け方向として算出し、当該下位部品毎に算出した組み付け方向と重力の方向とのなす角度に対応する移動時間を前記動作時間管理機能から抽出し、抽出した下位部品毎の移動時間を、総組における移動時間として前記組付情報管理機能に管理させる移動時間算出機能、および
上位部品の部品ＩＤ毎に前記組付情報管理機能を参照して、当該上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動時間、保持時間、および結合時間を合計して、当該上位部品の部品ＩＤ毎の組立時間を算出する組立時間算出機能
を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製品の組み立て時間を短くするための設計を支援する技術に関する。
【背景技術】
【０００２】
下記の特許文献１には、複数の分解シーケンスのそれぞれを逆に辿ることにより、それぞれの分解シーケンスに対応する組立順番や組立方向・姿勢を含む組立シーケンスを算出し、製品の組立時間を自動的に算出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−４６９２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、組立作業において部品を移動させる場合、重力に逆らって移動させる場合と、重力の方向に沿って移動させる場合とでは、移動にかかる時間が異なる場合が多い。しかし、上記特許文献１に開示されている技術では、組み立て動作において重力の方向が考慮されていないため、実際の組立時間に対する誤差が大きい場合がある。
【０００５】
本発明は上記事情を鑑みてなされたものであり、本発明の目的は、製品の組み立てにかかる時間を精度よく算出することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本発明では、組み立ての際の部品の移動方向と重力の方向とのなす角度に応じて、組み立ての際の部品の移動に要する時間を算出する。
【０００７】
例えば、本発明の第一の態様は、製品の組み立て時間を短くするための設計を支援する設計支援装置であって、
前記製品を構成する部品を示す部品ＩＤ毎に、当該部品に組み付けられる他の部品との接触面から当該他の部品へ伸びる接触面ベクトルｑ、および、当該他の部品の部品ＩＤを保持する設計情報保持部と、
部品の組み付け方向と、重力の方向とのなす角度毎に、当該部品を他の部品に組み付けるために移動させるのにかかる移動時間を保持する動作時間保持部と、
上位部品の部品ＩＤ毎に、当該上位部品に組み付けられる下位部品に対応する部品ＩＤ、当該下位部品を当該上位部品に組み付けるために移動させるのにかかる移動時間、当該下位部品を当該上位部品に移動させてから結合させるまでの保持時間、および、当該下位部品を当該上位部品に結合させるのにかかる結合時間を保持する組付情報保持部と、
前記設計情報保持部を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向を組み付け方向として算出し、当該下位部品毎に算出した組み付け方向と重力の方向とのなす角度に対応する移動時間を前記動作時間保持部から抽出し、抽出した下位部品毎の移動時間を、総組における移動時間として前記組付情報保持部に格納する移動時間算出部と、
上位部品の部品ＩＤ毎に前記組付情報保持部を参照して、当該上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動時間、保持時間、および結合時間を合計して、当該上位部品の部品ＩＤ毎の組立時間を算出する組立時間算出部と
を備えることを特徴とする設計支援装置を提供する。
【０００８】
また、本発明の第二の態様は、製品の組み立て時間を短くするための設計を支援する設計支援装置における設計支援方法であって、
前記設計支援装置は、
前記製品を構成する部品を示す部品ＩＤ毎に、当該部品に組み付けられる他の部品との接触面から当該他の部品へ伸びる接触面ベクトルｑ、および、当該他の部品の部品ＩＤを保持する設計情報保持部と、
部品の組み付け方向と、重力の方向とのなす角度毎に、当該部品を他の部品に組み付けるために移動させるのにかかる移動時間を保持する動作時間保持部と、
上位部品の部品ＩＤ毎に、当該上位部品に組み付けられる下位部品に対応する部品ＩＤ、当該下位部品を当該上位部品に組み付けるために移動させるのにかかる移動時間、当該下位部品を当該上位部品に移動させてから結合させるまでの保持時間、および、当該下位部品を当該上位部品に結合させるのにかかる結合時間を保持する組付情報保持部と
を備え、
前記設計情報保持部を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向を組み付け方向として算出し、当該下位部品毎に算出した組み付け方向と重力の方向とのなす角度に対応する移動時間を前記動作時間保持部から抽出し、抽出した下位部品毎の移動時間を、総組における移動時間として前記組付情報保持部に格納する移動時間算出ステップと、
上位部品の部品ＩＤ毎に前記組付情報保持部を参照して、当該上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動時間、保持時間、および結合時間を合計して、当該上位部品の部品ＩＤ毎の組立時間を算出する組立時間算出ステップと
を実行することを特徴とする設計支援方法を提供する。
【０００９】
また、本発明の第三の態様は、コンピュータを、製品の組み立て時間を短くするための設計を支援する設計支援装置として機能させるプログラムであって、
前記コンピュータに、
前記製品を構成する部品を示す部品ＩＤ毎に、当該部品に組み付けられる他の部品との接触面から当該他の部品へ伸びる接触面ベクトルｑ、および、当該他の部品の部品ＩＤを管理する設計情報管理機能、
部品の組み付け方向と、重力の方向とのなす角度毎に、当該部品を他の部品に組み付けるために移動させるのにかかる移動時間を管理する動作時間管理機能、
上位部品の部品ＩＤ毎に、当該上位部品に組み付けられる下位部品に対応する部品ＩＤ、当該下位部品を当該上位部品に組み付けるために移動させるのにかかる移動時間、当該下位部品を当該上位部品に移動させてから結合させるまでの保持時間、および、当該下位部品を当該上位部品に結合させるのにかかる結合時間を管理する組付情報管理機能、
前記設計情報管理機能を参照して、それぞれの部品ＩＤに対応する上位部品について、当該上位部品に組み付けられる下位部品毎に、当該下位部品と接触する上位部品の面の接触面ベクトルの反対方向を組み付け方向として算出し、当該下位部品毎に算出した組み付け方向と重力の方向とのなす角度に対応する移動時間を前記動作時間管理機能から抽出し、抽出した下位部品毎の移動時間を、総組における移動時間として前記組付情報管理機能に管理させる移動時間算出機能、および
上位部品の部品ＩＤ毎に前記組付情報管理機能を参照して、当該上位部品の部品ＩＤに対応付けられている下位部品の部品ＩＤ毎の移動時間、保持時間、および結合時間を合計して、当該上位部品の部品ＩＤ毎の組立時間を算出する組立時間算出機能
を実現させることを特徴とするプログラムを提供する。
【発明の効果】
【００１０】
本発明によれば、製品の組み立てにかかる時間を精度よく算出することができる。
【図面の簡単な説明】
【００１１】
【図１】第１の実施形態における設計支援装置１０の機能構成の一例を示すブロック図である。
【図２】本実施形態で対象となる製品の構造の一例を示す概念図である。
【図３】設計情報保持部１０５が保持するデータの構造の一例を示す図である。
【図４】接触面ベクトルｑを説明するための概念図である。
【図５】接触関係表２０のデータの構造の一例を示す図である。
【図６】組付情報保持部１１２が保持するデータの構造の一例を示す図である。
【図７】姿勢ベクトルｐを説明するための概念図である。
【図８】組付ベクトルａを説明するための概念図である。
【図９】動作時間保持部１１１が保持するデータの構造の一例を示す図である。
【図１０】下位部品を上位部品に組み付ける場合に保持が必要か否かを説明するための概念図である。
【図１１】結合時間算出方法保持部１０３が保持するデータの構造の一例を示す図である。
【図１２】溶接時間算出方法保持部１０４が保持するデータの構造の一例を示す図である。
【図１３】説明文保持部１０１が保持するデータの構造の一例を示す図である。
【図１４】説明文保持部１０１が保持するデータの構造の一例を示す図である。
【図１５】説明文保持部１０１が保持するデータの構造の一例を示す図である。
【図１６】説明文保持部１０１が保持するデータの構造の一例を示す図である。
【図１７】工程表保持部１００が保持する工程表１０００の構造の一例を示す図である。
【図１８】第１の実施形態における設計支援装置１０の動作の一例を示すフローチャートである。
【図１９】移動・保持時間算出処理（Ｓ２００）の一例を示すフローチャートである。
【図２０】総組時間算出処理（Ｓ２０００）の一例を示すフローチャートである。
【図２１】組付情報保持部１１２が保持するデータの変化を説明するための概念図である。
【図２２】総組による組み付けを示す概念図である。
【図２３】部組時間算出処理（Ｓ２１００）の一例を示すフローチャートである。
【図２４】部組による組み付けを示す概念図である。
【図２５】結合時間算出処理（Ｓ３００）の一例を示すフローチャートである。
【図２６】溶接時間算出処理（Ｓ４００）の一例を示すフローチャートである。
【図２７】工程表作成処理（Ｓ５００）の一例を示すフローチャートである。
【図２８】工程表１０００の内容の変化の過程を説明するための概念図である。
【図２９】工程表１０００の内容の変化の過程を説明するための概念図である。
【図３０】工程表１０００の内容の変化の過程を説明するための概念図である。
【図３１】組立手順書作成処理（Ｓ６００）の一例を示すフローチャートである。
【図３２】組立手順書３０の一例を示す図である。
【図３３】第２の実施形態における設計支援装置１０の機能構成の一例を示すブロック図である。
【図３４】改善指針保持部１１４が保持するデータの構造の一例を示す図である。
【図３５】改善指針保持部１１４が保持するデータの構造の一例を示す図である。
【図３６】強度算出方法保持部１１６が保持するデータの構造の一例を示す図である。
【図３７】強度算出方法保持部１１６が保持するデータの構造の一例を示す図である。
【図３８】強度算出方法保持部１１６が保持するデータの構造の一例を示す図である。
【図３９】第２の実施形態における設計支援装置１０の動作の一例を示すフローチャートである。
【図４０】改善指針出力処理（Ｓ７００）の一例を示すフローチャートである。
【図４１】改善指針抽出処理（Ｓ７１０）の一例を示すフローチャートである。
【図４２】改善指針出力結果４０の一例を示す図である。
【図４３】改善指針出力結果４０に従って構造を変更した製品の一例を示す概念図である。
【図４４】設計支援装置１０の機能を実現するコンピュータ５０の構成の一例を示すハードウェア構成図である。
【発明を実施するための形態】
【００１２】
まず、本発明の第１の実施形態について説明する。
【００１３】
図１は、第１の実施形態における設計支援装置１０の機能構成の一例を示すブロック図である。本実施形態における設計支援装置１０は、工程表保持部１００、説明文保持部１０１、設計情報登録部１０２、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、組立手順書作成部１０６、移動時間算出部１０７、保持時間算出部１０８、結合時間算出部１０９、溶接時間算出部１１０、動作時間保持部１１１、組付情報保持部１１２、および組立時間算出部１１３を備える。
【００１４】
ここで、製品に用いられる各部品の関係を分かり易くするために、本実施形態では例えば図２に示すような製品を対象として説明を行なう。製品は、作業台Ｘ上で組み立てられる。部品Ａには、部品Ｂおよび部品Ｃがそれぞれ２箇所ずつ座金が部組みされたねじで締結される。また、部品Ｃには、部品Ｄおよび部品Ｅが、それぞれ、100mmおきに20mmずつ６箇所にすみ肉溶接される。
【００１５】
設計情報保持部１０５は、例えば図３に示すように、それぞれの部品を識別する部品ＩＤ１０５０に対応付けて、当該部品の員数１０５１、当該部品の形状情報１０５２、当該部品の重心１０５３、および製品の完成図面において当該部品に接触する他の部品の部品ＩＤ１０５４を保持する。形状情報１０５２には、対応する部品の形状を示す３次元モデルのデータが含まれている。
【００１６】
また、それぞれの部品ＩＤ１０５４には、当該部品ＩＤ１０５４に対応する部品の員数１０５５、当該部品ＩＤ１０５４に対応する部品の部品ＩＤ１０５０に対応する部品に対する接触面ベクトル１０５６、当該部品ＩＤ１０５４に対応する部品と部品ＩＤ１０５０に対応する部品との接触面を規定する接触面ベクトル１０５７、当該部品ＩＤ１０５４に対応する部品と部品ＩＤ１０５０に対応する部品とが結合される場合の結合種別１０５８、結合の詳細を示す結合情報１０６６、当該部品ＩＤ１０５４に対応する部品と部品ＩＤ１０５０に対応する部品とが溶接される場合の溶接種別１０６３、および、溶接に関する溶接パラメータ１０６７が対応付けられている。
【００１７】
結合情報１０６６には、ねじ種別１０５９、ねじの本数１０６０、ねじの締結方向を示す結合ベクトルｆ１０６１、座金の有無を示す座金１０６２が含まれる。溶接パラメータ１０６７には、溶接長１０６４および溶接数１０６５が含まれる。設計情報保持部１０５内の情報は、設計情報登録部１０２が、ＣＡＤ（Computer Aided Design）等の外部機器から、あるいは、設計支援装置１０のユーザから取得して設計情報保持部１０５に格納する。
【００１８】
ここで、接触面ベクトルｑとは、例えば図４に示すように、対象となる部品と他の部品との接触面より、当該対象となる部品から当該他の部品の方向へ伸びる単位ベクトルである。図４に示す例では、接触面ベクトルｑAXは、対象となる部品Ａと作業台Ｘとの接触面より、部品Ａから作業台Ｘの方向へ伸びるベクトルである。
【００１９】
なお、図２に示した製品を構成する複数の部品は、基準となる部品（本実施形態では「作業台Ｘ」）を最上位の部品とし、最上位の部品に接触する部品から順に木構造で表される。当該木構造の情報は、設計情報保持部１０５内のデータから、移動時間算出部１０７によって例えば図５に示すような接触関係表２０として作成される。図５に示すように、製品を構成する複数の部品は、作業台Ｘを基準として、作業台Ｘの下位部品が部品Ａ、部品Ａの下位部品が部品Ｂおよび部品Ｃ、部品Ｃの下位部品が部品Ｄおよび部品Ｅとして表される。なお、本実施形態において、上位部品には複数の下位部品が組み付けられる場合があるが、１つの下位部品は複数の上位部品に組み付けられることはないものとする。
【００２０】
組付情報保持部１１２は、例えば図６に示すように、上位部品を識別する上位ＩＤ１１２０に対応付けて、当該上位部品に下位部品が組み付けられる工程が総組なのか部組なのかを示す組付種別１１２１、部組において部品を準備するための時間である部組準備時間１１２２、部組において部品を移動させる方向を示す移動方向１１２３、上位ＩＤ１１２０に対応する部品の姿勢ベクトル１１２４、および当該上位ＩＤ１１２０に対応する上位部品に組み付けられる下位部品の下位ＩＤ１１２５を保持する。
【００２１】
ここで、本実施形態において、総組とは、製品を構成する各部品を、最上位の部品から順番に、製品の完成状態を示す図面上の座標の位置に移動させるようにして製品を組み立てていく組み立て方法を指し、部組とは、製品の完成状態を示す図面の座標の位置とは無関係に、再下位の部品から順番に製品を組み立てていく組み立て方法を指す。
【００２２】
また、姿勢ベクトルｐnとは、下位部品である部品ｎにおいて、上位部品と接触する面の接触面ベクトルｑと同一の単位ベクトルで表される。図７に示す例では、姿勢ベクトルｐAは、下位部品である部品Ａにおいて、上位部品（図７の例では「作業台Ｘ」）と接触する面の接触面ベクトルｑAX＝(0 0 -1)Tと同一の単位ベクトルで表される。
【００２３】
また、組付情報保持部１１２において、それぞれの下位ＩＤ１１２５には、組付ベクトル１１２６、下位ＩＤ１１２５に対応する下位部品を上位ＩＤ１１２０に対応する上位部品に組み付ける際の移動方向１１２７、下位ＩＤ１１２５に対応する下位部品を上位ＩＤ１１２０に対応する上位部品に組み付ける際の移動時間１１２８、下位ＩＤ１１２５に対応する下位部品を上位ＩＤ１１２０に対応する上位部品に組み付ける際に当該下位部品を保持する必要があるか否かを示す保持要否１１２９、下位ＩＤ１１２５に対応する下位部品を保持する際の保持時間１１３０、下位ＩＤ１１２５に対応する下位部品を上位ＩＤ１１２０に対応する上位部品に結合させる場合の結合種別１１３１、結合情報１１３２、結合時間１１３３、下位ＩＤ１１２５に対応する下位部品を上位ＩＤ１１２０に対応する上位部品に溶接する場合の溶接種別１１３４、溶接パラメータ１１３５、溶接時間１１３６、および、下位ＩＤ１１２５に対応する下位部品を上位ＩＤ１１２０に対応する上位部品に組み付けるのにかかる時間を示す組立時間１１３７が対応付けられる。
【００２４】
また、組付ベクトルａnとは、下位部品である部品ｎにおいて、上位部品と接触する面における当該上位部品の接触面ベクトルｑの反対方向の単位ベクトルで表される。図８に示す例では、組付ベクトルａCは、下位部品である部品Ｃにおいて、上位部品（図８の例では「部品Ａ」）と接触する面の接触面ベクトルｑAC＝(0 0 1)Tの反対方向の単位ベクトル=(0 0 -1)Tで表される。
【００２５】
動作時間保持部１１１は、例えば図９に示すように、組付ベクトルａと重力方向を示す単位ベクトルである重力ベクトルｇとの内積１１１０の値に対応付けて、保持フラグ１１１１、保持にかかる時間を示す保持時間１１１２、および、移動にかかる時間を示す移動時間１１１３を保持する。保持フラグ１１１１は、内積１１１０の値が１であるが保持が必要である場合に１が格納され、内積１１１０の値が１であり保持が不要である場合に０が格納される。動作時間保持部１１１内の情報は、設計支援装置１０の管理者等によって予め登録される。
【００２６】
ここで、例えば、図１０（ａ）に示すように、部品Ｃの重心から重力方向へ伸ばした線分が、部品Ｃの上位部品である部品Ａとの接触面と交わる場合には、当該部品Ｃは結合または溶接されるまで保持されていなくても自らの姿勢を保つことができる。この場合、部品Ｃの保持フラグは０となる。一方、図１０（ｂ）に示すように、部品Ｅの重心から重力方向へ伸ばした線分が、部品Ｅの上位部品である部品Ｃとの接触面と交わらない場合には、当該部品Ｅは結合または溶接されるまで保持されていなければ自らの姿勢を保つことができない。この場合、部品Ｅの保持フラグは１となる。
【００２７】
結合時間算出方法保持部１０３は、例えば図１１に示すように、結合種別１０３０毎にテーブル１０３１を保持する。それぞれのテーブル１０３１には、ねじ種別１０３２、本数１０３３、結合ベクトルｆと重力ベクトルｇの内積１０３４の値、および、座金の有無を示す座金１０３５の組み合わせ毎に、結合時間を算出するための算出式１０３６が格納されている。結合時間算出方法保持部１０３内の情報は、設計支援装置１０の管理者等によって予め登録される。
【００２８】
溶接時間算出方法保持部１０４は、例えば図１２に示すように、溶接種別１０４０毎にテーブル１０４１を保持する。それぞれのテーブル１０４１には、溶接長１０４２および溶接数１０４３に対応付けて、溶接の各工程１０４４毎に、溶接時間を算出するための算出式１０４５が格納されている。溶接時間算出方法保持部１０４内の情報は、設計支援装置１０の管理者等によって予め登録される。
【００２９】
説明文保持部１０１は、例えば図１３に示すように、組付の作業項目１０１０毎に、テーブルを保持する。移動の作業項目に対応付けられたテーブル１０１１には、部品の移動方向１０１２毎に、移動の動作を説明するための説明文１０１３が格納されている。保持の作業項目に対応付けられたテーブル１０１４には、例えば図１４に示すように、保持動作を説明するための説明文が格納されている。
【００３０】
結合の作業項目に対応付けられたテーブル１０１５には、例えば図１５に示すように、結合種別１０１６、ねじ種別１０１７、本数１０１８、結合ベクトルｆと重力ベクトルｇの内積１０１９の値、および座金１０２０の組み合わせ毎に、結合の動作を説明するための説明文１０２１が格納されている。溶接の作業項目に対応付けられたテーブル１０２２には、例えば図１６に示すように、溶接種別１０２３、溶接長１０２４、および溶接数１０２５の組み合わせ毎に、溶接の動作を説明するための説明文１０２６が格納されている。なお、説明文保持部１０１内の情報は、設計支援装置１０の管理者等によって予め登録される。
【００３１】
工程表保持部１００は、例えば図１７に示す工程表１０００を保持する。工程表１０００には、それぞれの作業工程の実行順番を示す工程番号１００００に対応付けて、上位ＩＤ１０００１、組付種別１０００２、および下位ＩＤ１０００３が格納される。さらに、それぞれの下位ＩＤ１０００３には、移動方向１０００４、保持要否１０００５、結合種別１０００６、結合情報１０００７、溶接種別１０００８、溶接パラメータ１０００９、および組立時間１００１０が格納される。
【００３２】
次に、本実施形態における設計支援装置１０の動作について、図１８を参照して説明する。図１８は、第１の実施形態における設計支援装置１０の動作の一例を示すフローチャートである。設計支援装置１０は、入力装置１１を介して、ユーザから組立手順書の作成を指示された場合に、本フローチャートに示す動作を開始する。
【００３３】
まず、設計情報登録部１０２は、ＣＡＤ等の外部機器またはユーザから、製品の設計情報を取得して設計情報保持部１０５に格納する（Ｓ１００）。次に、移動時間算出部１０７は、設計情報保持部１０５が保持する設計情報を参照して、製品を構成する複数の部品について、図５で説明した接触関係表２０を作成する（Ｓ１０１）。次に、移動時間算出部１０７、保持時間算出部１０８、および組立時間算出部１１３は、後述する移動・保持時間算出処理を実行する（Ｓ２００）。次に、結合時間算出部１０９は、後述する結合時間算出処理を実行する（Ｓ３００）。次に、溶接時間算出部１１０は、後述する溶接時間算出処理を実行する（Ｓ４００）。
【００３４】
次に、組立時間算出部１１３は、組付情報保持部１１２に格納された移動時間、保持時間、結合時間、および溶接時間を、上位ＩＤ毎に合計して組立時間を算出し、算出した組立時間の合計で当該上位ＩＤに対応付けて組付情報保持部１１２に格納されている組立時間を書き換える（Ｓ１０２）。次に、組立手順書作成部１０６は、後述する工程表作成処理を実行する（Ｓ５００）。次に、組立手順書作成部１０６は、後述する組立手順書作成処理を実行し（Ｓ６００）、設計支援装置１０は、本フローチャートに示した動作を終了する。
【００３５】
図１９は、移動・保持時間算出処理（Ｓ２００）の一例を示すフローチャートである。
【００３６】
まず、移動時間算出部１０７は、接触関係表２０を参照して、基準となる部品の部品ＩＤ（本実施形態では「作業台Ｘ」）以外の上位ＩＤ毎に、当該上位ＩＤに対応する部品の姿勢ベクトルｐを算出し、算出した姿勢ベクトルｐを、当該上位ＩＤ対応付けて組付情報保持部１１２に格納する（Ｓ２０１）。
【００３７】
そして、移動時間算出部１０７は、接触関係表２０を参照して、下位ＩＤ毎に、当該下位ＩＤに対応する部品の組付ベクトルａを算出し、算出した組付ベクトルａを、当該下位ＩＤおよび当該下位ＩＤが対応付けられている上位ＩＤに対応付けて組付情報保持部１１２に格納する（Ｓ２０１）。例えば、図５に示した接触関係表２０において、下位ＩＤとして「部品Ｃ」を選択した場合、当該「部品Ｃ」の上位ＩＤは「部品Ａ」なので、移動時間算出部１０７は、当該「部品Ｃ」について算出した組付ベクトルａを、組付情報保持部１１２において、上位ＩＤが「部品Ａ」であり、かつ、下位ＩＤが「部品Ｃ」の欄に格納する。
【００３８】
次に、移動時間算出部１０７は、接触関係表２０において、基準となる部品の部品ＩＤ以外の上位ＩＤの中で、未選択の上位ＩＤを１つ選択する（Ｓ２０３）。そして、移動時間算出部１０７、保持時間算出部１０８、および組立時間算出部１１３は、後述する総組時間算出処理を実行し（Ｓ２０００）、引き続いて、後述する部組時間算出処理を実行する（Ｓ２１００）。
【００３９】
次に、移動時間算出部１０７は、接触関係表２０において、基準となる部品の部品ＩＤ以外の上位ＩＤを全て選択したか否かを判定する（Ｓ２０４）。基準となる部品の部品ＩＤ以外の上位ＩＤの中で、未選択の上位ＩＤが存在する場合（Ｓ２０４：Ｎｏ）、移動時間算出部１０７は、再びステップＳ２０３に示した処理を実行する。一方、基準となる部品の部品ＩＤ以外の上位ＩＤを全て選択した場合（Ｓ２０４：Ｙｅｓ）、移動時間算出部１０７および保持時間算出部１０８は、本フローチャートに示した移動・保持時間算出処理を終了する。
【００４０】
図２０は、総組時間算出処理（Ｓ２０００）の一例を示すフローチャートである。
【００４１】
まず、移動時間算出部１０７は、接触関係表２０において、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤを１つ選択する（Ｓ２００１）。そして、移動時間算出部１０７は、ステップＳ２００１で選択した下位ＩＤに対応付けられている組付ベクトルａを組付情報保持部１１２から抽出し、抽出した組付ベクトルａと重力ベクトルｇの内積を計算する（Ｓ２００２）。
【００４２】
次に、移動時間算出部１０７は、算出した内積の値に対応付けられている移動時間を動作時間保持部１１１から抽出する。そして、移動時間算出部１０７は、組付ベクトルａと重力ベクトルｇの内積の値が１であれば下方向、−１より大きく１未満であれば横方向、−１であれば上方向を移動方向として、抽出した移動時間と共に、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２００１で選択した下位ＩＤとに対応付けて組付情報保持部１１２に登録する（Ｓ２００３）。
【００４３】
次に、保持時間算出部１０８は、ステップＳ２００２において移動時間算出部１０７が算出した内積の値が１か否かを判定する（Ｓ２００４）。内積の値が１である場合（Ｓ２００４：Ｙｅｓ）、保持時間算出部１０８は、ステップＳ２００１において選択された下位ＩＤに対応する下位部品の重心の座標、および、図１９のＳ２０３で選択した上位ＩＤに対応する部品とステップＳ２００１において選択された下位ＩＤに対応する部品との接触面情報を設計情報保持部１０５から抽出する。そして、保持時間算出部１０８は、図１０を用いて説明したように、下位ＩＤに対応する部品の重心から重力方向へ伸ばした線分が、上位ＩＤに対応する上位部品での接触面と交わるか否か、即ち、保持が不要か否かを判定する（Ｓ２００５）。
【００４４】
保持が不要な場合（Ｓ２００５：Ｙｅｓ）、保持時間算出部１０８は、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２００１で選択した下位ＩＤとに対応付けて、保持要否に「不要」を、保持時間に「０」を、それぞれ組付情報保持部１１２に登録し（Ｓ２００６）、移動時間算出部１０７は、ステップＳ２００９に示す処理を実行する。
【００４５】
一方、保持が必要な場合（Ｓ２００５：Ｎｏ）、保持時間算出部１０８は、内積が１であり、かつ、保持フラグが１に対応付けられている保持時間を動作時間保持部１１１から抽出する。そして、保持時間算出部１０８は、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２００１で選択した下位ＩＤとに対応付けて、保持要否に「要」を、保持時間に動作時間保持部１１１から抽出した保持時間（図９の例では「３」）を、それぞれ組付情報保持部１１２に登録し（Ｓ２００７）、移動時間算出部１０７は、ステップＳ２００９に示す処理を実行する。
【００４６】
また、ステップＳ２００４において、内積の値が１でない場合（Ｓ２００４：Ｎｏ）、保持時間算出部１０８は、内積の値に対応付けられている保持時間を動作時間保持部１１１から抽出する。そして、保持時間算出部１０８は、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２００１で選択した下位ＩＤとに対応付けて、保持要否に「要」を、保持時間に動作時間保持部１１１から抽出した保持時間（図９の例では「３」）を、それぞれ組付情報保持部１１２に登録する（Ｓ２００８）。
【００４７】
次に、移動時間算出部１０７は、接触関係表２０において、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択したか否かを判定する（Ｓ２００９）。図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤが存在する場合（Ｓ２００９：Ｎｏ）、移動時間算出部１０７は、再びステップＳ２００１に示した処理を実行する。
【００４８】
一方、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択した場合（Ｓ２００９：Ｙｅｓ）、組立時間算出部１１３は、下位ＩＤ毎の移動時間および保持時間を合計して総組における組立時間を算出し、算出した組立時間を組付情報保持部１１２に格納し（Ｓ２０１０）、移動時間算出部１０７および保持時間算出部１０８は、本フローチャートに示した総組時間算出処理を終了する。
【００４９】
例えば、上位ＩＤが「部品Ｃ」の部品について本フローチャートに示した総組時間算出処理が実行された場合、ステップＳ２０１０が終了した時点での組付情報保持部１１２内のデータの内容は、例えば図２１（ａ）に示すようになる。なお、総組時間算出処理では、結合時間および溶接時間は算出されないため、組付情報保持部１１２内の組立時間は、この時点では移動時間と保持時間の合計となっている。また、総組の場合、部品Ｄおよび部品Ｅは、例えば図２２に示すように部品Ｃに組み付けられる。
【００５０】
図２３は、部組時間算出処理（Ｓ２１００）の一例を示すフローチャートである。
【００５１】
まず、移動時間算出部１０７は、接触関係表２０において、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤを１つ選択する（Ｓ２１０１）。そして、移動時間算出部１０７は、ステップＳ２１０１で選択した下位ＩＤに対応付けられている組付ベクトルａを組付情報保持部１１２から抽出し、抽出した組付ベクトルａと重力ベクトルｇの内積を計算する（Ｓ２１０２）。
【００５２】
次に、移動時間算出部１０７は、内積の値が１か否かを判定する（Ｓ２１０３）。内積の値が１である場合（Ｓ２１０３：Ｙｅｓ）、移動時間算出部１０７は、ステップＳ２１０６に示す処理を実行する。一方、内積の値が１でない場合（Ｓ２１０３：Ｎｏ）、移動時間算出部１０７は、ステップＳ２１０１で選択した下位ＩＤに対応付けられている組付ベクトルａについてｇ＝Ｒａを満たす回転行列Ｒを算出する（Ｓ２１０４）。例えば、組付ベクトルがａ＝(-1 0 0)Tである場合、重力ベクトルはｇ＝(0 0 -1)Tなので、回転行列Ｒは、下記の（１）式を満たし、（２）式のように算出される。
【００５３】
【数１】
2011008609.tif 000003
【００５４】
【数２】
2011008609.tif 000004
【００５５】
次に、移動時間算出部１０７は、ステップＳ２１０１で選択した下位ＩＤに対応付けられている組付ベクトルａを組付情報保持部１１２から抽出し、抽出した組付ベクトルａに、ステップＳ２１０４で算出した回転行列Ｒを乗じて、姿勢変更後の組付ベクトルａ’を算出する（Ｓ２１０５）。そして、移動時間算出部１０７は、ａ・ｇ＝１に対応する移動時間を動作時間保持部１１１から取得し、下方向の移動方向と共に、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２１０１で選択した下位ＩＤとに対応付けて組立時間算出部１１３へ送り、組立時間算出部１１３は、受け取ったデータを保持する（Ｓ２１０６）。
【００５６】
次に、保持時間算出部１０８は、ステップＳ２１０１において選択された下位ＩＤに対応する下位部品の重心の座標、および、図１９のＳ２０３で選択した上位ＩＤに対応する部品とステップＳ２００１において選択された下位ＩＤに対応する部品との接触面情報を設計情報保持部１０５から抽出して、図１０を用いて説明したように、下位ＩＤに対応する部品の重心から重力方向へ伸ばした線分が、上位ＩＤに対応する上位部品での接触面と交わるか否か、即ち、保持が不要か否かを判定する（Ｓ２１０７）。
【００５７】
保持が不要である場合（Ｓ２１０７：Ｙｅｓ）、保持時間算出部１０８は、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２００１で選択した下位ＩＤとに対応付けて、保持要否として「不要」を、保持時間として「０」を、それぞれ保持し（Ｓ２１０８）、移動時間算出部１０７は、ステップＳ２１１０に示す処理を実行する。
【００５８】
一方、保持が必要である場合（Ｓ２１０７：Ｎｏ）、保持時間算出部１０８は、内積が１であり、かつ、保持フラグが１に対応付けられている保持時間を動作時間保持部１１１から抽出する。そして、保持時間算出部１０８は、図１９のＳ２０３で選択した上位ＩＤと、ステップＳ２００１で選択した下位ＩＤとに対応付けて、保持要否として「要」を、保持時間として動作時間保持部１１１から抽出した保持時間（図９の例では「３」）を組立時間算出部１１３へ送り、組立時間算出部１１３は受け取ったデータを保持する。
【００５９】
次に、移動時間算出部１０７は、接触関係表２０において、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択したか否かを判定する（Ｓ２１１０）。図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤが存在する場合（Ｓ２１１０：Ｎｏ）、移動時間算出部１０７は、再びステップＳ２１０１に示した処理を実行する。
【００６０】
一方、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択した場合（Ｓ２１１０：Ｙｅｓ）、組立時間算出部１１３は、下位ＩＤ毎に保持している移動時間および保持時間を合計して部組における組立時間を算出して保持する（Ｓ２１１１）。例えば、上位ＩＤが「部品Ｃ」について本フローチャートに示した部組時間算出処理が実行された場合、ステップＳ２１１１が終了した時点で、組立時間算出部１１３は、例えば図２１（ｂ）に示すようなデータを保持している。なお、部組時間算出処理では、結合時間および溶接時間は算出されないため、組立時間算出部１１３が算出する組立時間は、移動時間と保持時間の合計となっている。また、部組の場合、部品Ｄおよび部品Ｅは、例えば図２４に示すように部品Ｃに組み付けられる。
【００６１】
次に、組立時間算出部１１３は、図１９のＳ２０３で選択した上位ＩＤに対応付けられている下位ＩＤの組付ベクトルａの中で、重力ベクトルｇとの内積の値が１となる組付ベクトルａが存在するか否かを判定する（Ｓ２１１２）。重力ベクトルｇとの内積の値が１となる組付ベクトルａが存在しない場合（Ｓ２１１２：Ｎｏ）、組立時間算出部１１３は、ステップＳ２１１４に示す処理を実行する。一方、重力ベクトルｇとの内積の値が１となる組付ベクトルａが存在するか否かを判定する（Ｓ２１１２：Ｙｅｓ）、組立時間算出部１１３は、ａ・ｇ＝１、即ち、下移動に対応する移動時間を姿勢変更時間として動作時間保持部１１１から取得し、取得した姿勢変更時間を、ステップＳ２１１１で算出した部組における組立時間に加算する（Ｓ２１１３）。
【００６２】
次に、組立時間算出部１１３は、組付情報保持部１１２を参照して、図１９のＳ２０３で選択された上位ＩＤに対応付けられている総組における組立時間が、ステップＳ２１１３において算出した部組における組立時間以下か否かを判定する（Ｓ２１１４）。図１９のＳ２０３で選択された上位ＩＤに対応付けられて組付情報保持部１１２に格納されている総組における組立時間が、ステップＳ２１１３において算出した部組における組立時間よりも大きい場合（Ｓ２１１４：Ｎｏ）、組立時間算出部１１３は、組付情報保持部１１２に登録されている情報を、図２１（ｂ）に示した部組における情報に置き換え（Ｓ２１１５）、設計支援装置１０は、本フローチャートに示した部組時間算出処理を終了する。一方、図１９のＳ２０３で選択された上位ＩＤに対応付けられて組付情報保持部１１２に格納されている総組における組立時間が、ステップＳ２１１３において算出した部組における組立時間以下の場合（Ｓ２１１４：Ｙｅｓ）、設計支援装置１０は、本フローチャートに示した部組時間算出処理を終了する。
【００６３】
図２５は、結合時間算出処理（Ｓ３００）の一例を示すフローチャートである。
【００６４】
まず、結合時間算出部１０９は、移動時間算出部１０７が作成した接触関係表２０において、基準となる部品の部品ＩＤ以外の上位ＩＤの中で、未選択の上位ＩＤを１つ選択し（Ｓ３０１）、選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤを１つ選択する（Ｓ３０２）。そして、結合時間算出部１０９は、設計情報保持部１０５を参照して、選択した下位ＩＤに対応付けられている結合種別の欄にデータが登録されているか否かを判定する（Ｓ３０３）。結合種別の欄にデータが登録されていない場合（Ｓ３０３：Ｎｏ）、結合時間算出部１０９は、ステップＳ３０６に示す処理を実行する。
【００６５】
一方、結合種別の欄にデータが登録されている場合（Ｓ３０３：Ｙｅｓ）、結合時間算出部１０９は、当該結合種別に対応付けられている結合情報を設計情報保持部１０５から抽出し、結合種別および抽出した結合情報に対応する結合時間の算出式を結合時間算出方法保持部１０３から取得する（Ｓ３０４）。そして、結合時間算出部１０９は、抽出した結合情報を、取得した算出式にあてはめて結合時間を算出し、算出した結合時間を、結合種別および結合情報と共に、ステップＳ３０１で選択した上位ＩＤと、ステップＳ３０２で選択した下位ＩＤとに対応付けて、組付情報保持部１１２に登録する（Ｓ３０５）。
【００６６】
次に、結合時間算出部１０９は、接触関係表２０において、ステップＳ３０１で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択したか否かを判定する（Ｓ３０６）。ステップＳ３０１で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤが存在する場合（Ｓ３０６：Ｎｏ）、結合時間算出部１０９は、再びステップＳ３０２に示した処理を実行する。
【００６７】
一方、ステップＳ３０１で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択した場合（Ｓ３０６：Ｙｅｓ）、結合時間算出部１０９は、接触関係表２０内の上位ＩＤを全て選択したか否かを判定する（Ｓ３０７）。接触関係表２０内の上位ＩＤの中で、未選択の上位ＩＤが存在する場合（Ｓ３０７：Ｎｏ）、結合時間算出部１０９は、再びステップＳ３０１に示した処理を実行する。一方、接触関係表２０内の上位ＩＤを全て選択した場合（Ｓ３０７：Ｙｅｓ）、結合時間算出部１０９は、本フローチャートに示した結合時間算出処理を終了する。
【００６８】
図２６は、溶接時間算出処理（Ｓ４００）の一例を示すフローチャートである。
【００６９】
まず、溶接時間算出部１１０は、移動時間算出部１０７が作成した接触関係表２０において、基準となる部品の部品ＩＤ以外の上位ＩＤの中で、未選択の上位ＩＤを１つ選択し（Ｓ４０１）、選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤを１つ選択する（Ｓ４０２）。そして、溶接時間算出部１１０は、設計情報保持部１０５を参照して、選択した下位ＩＤに対応付けられている溶接種別の欄にデータが登録されているか否かを判定する（Ｓ４０３）。溶接種別の欄にデータが登録されていない場合（Ｓ４０３：Ｎｏ）、溶接時間算出部１１０は、ステップＳ４０７に示す処理を実行する。
【００７０】
一方、溶接種別の欄にデータが登録されている場合（Ｓ４０３：Ｙｅｓ）、溶接時間算出部１１０は、当該溶接種別に対応付けられている溶接パラメータを設計情報保持部１０５から抽出し、溶接種別および抽出した溶接パラメータに対応する溶接時間の算出式を溶接時間算出方法保持部１０４から取得する（Ｓ４０４）。そして、溶接時間算出部１１０は、抽出した溶接パラメータを、取得した算出式にあてはめて溶接工程毎の作業時間を算出する（Ｓ４０５）。そして、溶接時間算出部１１０は、算出した溶接工程毎の作業時間を合計して溶接時間を算出し、算出した溶接時間を、溶接種別および溶接パラメータと共に、ステップＳ４０１で選択した上位ＩＤと、ステップＳ４０２で選択した下位ＩＤとに対応付けて、組付情報保持部１１２に登録する（Ｓ４０６）。
【００７１】
次に、溶接時間算出部１１０は、接触関係表２０において、ステップＳ４０１で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択したか否かを判定する（Ｓ４０７）。ステップＳ４０１で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤが存在する場合（Ｓ４０７：Ｎｏ）、溶接時間算出部１１０は、再びステップＳ４０２に示した処理を実行する。
【００７２】
一方、ステップＳ４０１で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択した場合（Ｓ４０７：Ｙｅｓ）、溶接時間算出部１１０は、接触関係表２０内の上位ＩＤを全て選択したか否かを判定する（Ｓ４０８）。接触関係表２０内の上位ＩＤの中で、未選択の上位ＩＤが存在する場合（Ｓ４０８：Ｎｏ）、溶接時間算出部１１０は、再びステップＳ４０１に示した処理を実行する。一方、接触関係表２０内の上位ＩＤを全て選択した場合（Ｓ４０８：Ｙｅｓ）、溶接時間算出部１１０は、本フローチャートに示した結合時間算出処理を終了する。
【００７３】
図２７は、工程表作成処理（Ｓ５００）の一例を示すフローチャートである。
【００７４】
まず、組立手順書作成部１０６は、組付情報保持部１１２を参照して、最上位の部品を示す上位ＩＤから順に、小さい工程番号を割り当て、割り当てた工程番号と共に、当該工程番号を割り当てた上位ＩＤ、当該上位ＩＤに対応付けて組付情報保持部１１２に登録されている組付種別、下位ＩＤ、移動方向、保持要否、結合種別、結合情報、溶接種別、溶接パラメータ、および組立時間の情報を工程表１０００に登録する（Ｓ５０１）。ステップＳ５０１において、組立手順書作成部１０６は、工程番号として例えば正の奇数を割り当てる。例えば、組付情報保持部１１２に図６に示すデータが登録されている場合、ステップＳ５０１が実行された段階では、工程表１０００には、例えば図２８のようなデータが登録されている。
【００７５】
次に、組立手順書作成部１０６は、工程表１０００内の各工程番号に「−１」をかけ（Ｓ５０２）、工程番号が昇順になるように工程表１０００内のデータをソートする（Ｓ５０３）。そして、組立手順書作成部１０６は、組付種別に「部組」が格納されている工程の前に、当該工程の工程番号よりも１小さい工程番号を有する部組の部品を準備する工程を追加する（Ｓ５０４）。
【００７６】
追加される工程には、組立時間として部組の工程に含まれている上位ＩＤに対応付けられて組付情報保持部１１２に格納されている部組準備時間、下位ＩＤとして部組の工程に含まれている上位ＩＤ、上位ＩＤとして基準となる部品（本実施形態では「作業台Ｘ」）の部品ＩＤ、組付種別として「部組」、下位部品の移動方向として「下」が、それぞれ格納される。ステップＳ５０４が実行された段階では、工程表１０００には、例えば図２９のようなデータが登録されている。
【００７７】
次に、組立手順書作成部１０６は、工程表１０００において、工程番号が小さいものから順に、順番を示す数値を割り当て（Ｓ５０５）、組立手順書作成部１０６は、本フローチャートに示した工程表作成処理を終了する。工程表作成処理を終了した段階では、工程表１０００には、例えば図３０のようなデータが登録されている。
【００７８】
図３１は、組立手順書作成処理（Ｓ６００）の一例を示すフローチャートである。
【００７９】
まず、組立手順書作成部１０６は、変数ｎを１に初期化し（Ｓ６０１）、工程表１０００を参照して、工程ｎに含まれている下位ＩＤの中で未選択の下位ＩＤを１つ選択する（Ｓ６０２）。そして、組立手順書作成部１０６は、ステップＳ６０２で選択した下位ＩＤに対応付けられている移動方向に基づいて、移動に関する説明文を説明文保持部１０１から取得する（Ｓ６０３）。
【００８０】
次に、組立手順書作成部１０６は、工程表１０００を参照して、ステップＳ６０２で選択した下位ＩＤに対応付けられている保持要否に「要」が対応付けられているか否かを判定することにより、当該下位ＩＤに対応する部品の保持が必要か否かを判定する（Ｓ６０４）。部品の保持が不要である場合（Ｓ６０４：Ｎｏ）、組立手順書作成部１０６は、ステップＳ６０６に示す処理を実行する。一方、部品の保持が必要である場合（Ｓ６０４：Ｙｅｓ）、組立手順書作成部１０６は、保持に関する説明文を説明文保持部１０１から取得する（Ｓ６０５）。
【００８１】
次に、組立手順書作成部１０６は、工程表１０００を参照して、ステップＳ６０２で選択した下位ＩＤに対応付けられている結合種別にデータが対応付けられているか否かを判定することにより、当該下位ＩＤに対応する部品の結合が必要か否かを判定する（Ｓ６０６）。部品の結合が不要である場合（Ｓ６０６：Ｎｏ）、組立手順書作成部１０６は、ステップＳ６０８に示す処理を実行する。一方、部品の結合が必要である場合（Ｓ６０６：Ｙｅｓ）、組立手順書作成部１０６は、ステップＳ６０２で選択した下位ＩＤに対応付けられて工程表１０００に格納されている結合種別および結合情報に基づいて、結合に関する説明文を説明文保持部１０１から取得する（Ｓ６０７）。
【００８２】
次に、組立手順書作成部１０６は、工程表１０００を参照して、ステップＳ６０２で選択した下位ＩＤに対応付けられている溶接種別にデータが対応付けられているか否かを判定することにより、当該下位ＩＤに対応する部品の溶接が必要か否かを判定する（Ｓ６０８）。部品の溶接が不要である場合（Ｓ６０８：Ｎｏ）、組立手順書作成部１０６は、ステップＳ６１０に示す処理を実行する。一方、部品の溶接が必要である場合（Ｓ６０８：Ｙｅｓ）、組立手順書作成部１０６は、ステップＳ６０２で選択した下位ＩＤに対応付けられて工程表１０００に格納されている溶接種別および溶接パラメータに基づいて、溶接に関する説明文を説明文保持部１０１から取得する（Ｓ６０９）。
【００８３】
次に、組立手順書作成部１０６は、工程表１０００を参照して、工程ｎに対応付けられている下位ＩＤを全て選択したか否かを判定する（Ｓ６１０）。工程ｎに対応付けられている下位ＩＤの中で、未選択の下位ＩＤが存在する場合（Ｓ６１０：Ｎｏ）、組立手順書作成部１０６は、再びステップＳ６０２に示した処理を実行する。一方、工程ｎに対応付けられている下位ＩＤを全て選択した場合（Ｓ６１０：Ｙｅｓ）、組立手順書作成部１０６は、設計情報保持部１０５を参照して、工程ｎに含まれている上位ＩＤおよび下位ＩＤに対応する部品の形状を示す情報をそれぞれ取得して、工程ｎにおける組立図を作成する（Ｓ６１１）。
【００８４】
次に、組立手順書作成部１０６は、変数ｎに１を加え（Ｓ６１２）、工程表１０００内に工程ｎが存在するか否かを判定する（Ｓ６１３）。工程表１０００内に工程ｎが存在する場合（Ｓ６１３：Ｙｅｓ）、組立手順書作成部１０６は、再びステップＳ６０２に示した処理を実行する。一方、工程表１０００内に工程ｎが存在しない場合（Ｓ６１３：Ｎｏ）、組立手順書作成部１０６は、工程毎に、工程毎に、工程番号、組立図、説明文、および組立時間を対応付けた組立手順書を作成する。組立手順書３０は、例えば図３２に示すような構成である。組立手順書作成部１０６は、作成した組立手順書を出力装置１２に出力し（Ｓ６１４）、組立手順書作成部１０６は、本フローチャートに示した組立手順書作成処理を終了する。
【００８５】
以上、本発明の第１の実施形態について説明した。
【００８６】
上記説明から明らかなように、本実施形態の設計支援装置１０によれば、製品の組み立てにかかる時間を精度よく算出することができる。また、設計支援装置１０は、精度の高い組立時間を含む組立手順書を自動作成するため、製品の組立工程を効率よく検証することができる。
【００８７】
次に、本発明の第２の実施形態について説明する。
【００８８】
図３３は、第２の実施形態における設計支援装置１０の機能構成の一例を示すブロック図である。本実施形態における設計支援装置１０は、設計情報登録部１０２、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、移動時間算出部１０７、保持時間算出部１０８、結合時間算出部１０９、溶接時間算出部１１０、動作時間保持部１１１、組付情報保持部１１２、組立時間算出部１１３、改善指針保持部１１４、改善指針出力部１１５、および強度算出方法保持部１１６を備える。なお、以下に説明する点を除き、図３３において、図１と同じ符号を付した構成は、図１における構成と同一または同様の機能を有するため説明を省略する。
【００８９】
改善指針保持部１１４は、例えば図３４に示すように、組付種別１１４０毎にテーブル１１４２を保持している。それぞれのテーブル１１４２には、結合種別１１４１毎にテーブル１１４３が格納されている。例えば組付種別１１４０が「結合」であり、結合種別１１４１が「ねじ締結」であるテーブル１１４３には、ねじ種別１１４４、本数１１４５、結合ベクトルｆと重力ベクトルｇとの内積１１４６の値、座金の有無を示す座金１１４７、着脱が必要か否かを示す着脱要否１１４８、および代替手段１１４９の組み合わせ毎に、改善指針１１５０が格納されている。
【００９０】
また、例えば組付種別１１４０が「溶接」であり、溶接種別１１５１が「すみ肉溶接」であるテーブル１１５３には、例えば図３５に示すように、溶接長１１５４、溶接数１１５５、および代替手段１１５６に対応付けて、改善指針１１５７が格納されている。
【００９１】
強度算出方法保持部１１６は、例えば図３６に示すように、組付種別１１６０毎に、テーブル１１６１を保持する。例えば組付種別１１４０が「ねじ締結」であるテーブル１１６１には、ねじ種別１１６２および本数１１６３毎に、本数１１６３に対応する本数で、ねじ種別１１６２に対応するねじによりねじ締結された場合の結合強度の算出式１１６４が格納されている。
【００９２】
また、組付種別１１４０が「ブラインドリベット」であるテーブル１１６１には、例えば図３７に示すように、ブラインドリベットの直径を示すφの値１１６５および本数１１６６毎に、本数１１６６に対応する本数で、φの値１１６５に対応するブラインドリベットにより結合された場合の結合強度の算出式１１６７が格納されている。
【００９３】
また、組付種別１１４０が「すみ肉溶接」であるテーブル１１６１には、例えば図３８に示すように、溶接長１１６８および溶接数１１６９毎に、当該溶接長１１６８で当該溶接数１１６９分溶接した場合溶接強度の算出式１１７０が格納されている。
【００９４】
次に、本実施形態における設計支援装置１０の動作について、図３９を参照して説明する。図３９は、第２の実施形態における設計支援装置１０の動作の一例を示すフローチャートである。設計支援装置１０は、入力装置１１を介して、ユーザから改善指針の出力を指示された場合に、本フローチャートに示す動作を開始する。なお、以下に説明する点を除き、図３９において、図１８と同じ符号を付した処理は、図１８における処理と同一であるため説明を省略する。
【００９５】
組立時間算出部１１３がステップＳ１０２に示した処理を実行した後、改善指針出力部１１５は、後述する改善指針出力処理を実行し（Ｓ７００）、設計支援装置１０は、本フローチャートに示した動作を終了する。
【００９６】
図４０は、改善指針出力処理（Ｓ７００）の一例を示すフローチャートである。
【００９７】
まず、改善指針出力部１１５は、移動時間算出部１０７が作成した接触関係表２０において、基準となる部品の部品ＩＤ以外の上位ＩＤの中で、未選択の上位ＩＤを１つ選択し（Ｓ７０１）、選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤを１つ選択する（Ｓ７０２）。そして、改善指針出力部１１５は、後述する改善指針抽出処理を実行する（Ｓ７１０）。
【００９８】
次に、改善指針出力部１１５は、組付情報保持部１１２において、ステップＳ７０１で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択したか否かを判定する（Ｓ７０３）。ステップＳ７０１で選択した上位ＩＤに対応付けられている下位ＩＤの中で、未選択の下位ＩＤが存在する場合（Ｓ７０３：Ｎｏ）、改善指針出力部１１５は、再びステップＳ７０２に示した処理を実行する。
【００９９】
一方、ステップＳ７０１で選択した上位ＩＤに対応付けられている下位ＩＤを全て選択した場合（Ｓ７０３：Ｙｅｓ）、改善指針出力部１１５は、組付情報保持部１１２内の上位ＩＤを全て選択したか否かを判定する（Ｓ７０４）。組付情報保持部１１２内の上位ＩＤの中で、未選択の上位ＩＤが存在する場合（Ｓ７０４：Ｎｏ）、改善指針出力部１１５は、再びステップＳ７０１に示した処理を実行する。一方、組付情報保持部１１２内の上位ＩＤを全て選択した場合（Ｓ７０４：Ｙｅｓ）改善指針出力部１１５は、上位ＩＤ、下位ＩＤ、組立時間、および着脱要否の組み合わせ毎の改善指針を、組立時間が長い順にソートして出力装置１２に出力し（Ｓ７０５）、改善指針出力部１１５は、本フローチャートに示した改善指針出力処理を終了する。
【０１００】
図４１は、改善指針抽出処理（Ｓ７１０）の一例を示すフローチャートである。
【０１０１】
まず、改善指針出力部１１５は、組付情報保持部１１２を参照して、図４０のステップＳ７０２で選択した下位ＩＤに対応付けられている結合種別の欄にデータが登録されているか否かを判定する（Ｓ７１１）。結合種別の欄にデータが登録されている場合（Ｓ７１１：Ｙｅｓ）、改善指針出力部１１５は、当該結合種別が「ねじ締結」か否かを判定する（Ｓ７１２）。
【０１０２】
結合種別が「ねじ締結」である場合（Ｓ７１２：Ｙｅｓ）、改善指針出力部１１５は、図４０のステップＳ７０２で選択した下位ＩＤに対応付けられている結合種別および結合情報を組付情報保持部１１２から抽出し、抽出した結合種別および結合情報に対応する結合強度の算出式を強度算出方法保持部１１６から抽出する。そして、改善指針出力部１１５は、抽出した結合情報を、抽出した結合強度の算出式にあてはめて結合強度を算出する（Ｓ７１３）。
【０１０３】
次に、改善指針出力部１１５は、強度算出方法保持部１１６を参照して、ステップＳ７１３で算出した結合強度以上の強度となる他の結合方法を特定する（Ｓ７１４）。そして、改善指針出力部１１５は、特定した他の結合方法のそれぞれについて、結合時間算出方法保持部１０３を参照して結合時間を算出する。そして、改善指針出力部１１５は、特定した他の結合方法の中で、ステップＳ７１３で結合強度を算出した結合方法における結合時間以下の結合時間となるものを抽出する（Ｓ７１５）。
【０１０４】
次に、改善指針出力部１１５は、改善指針保持部１１４を参照して、組付種別が「結合」であり、結合種別が「ねじ締結」のテーブルの中で、着脱要否が「不要」であり、ステップＳ７１５で抽出した他の結合方法が代替手段として対応付けられている改善指針を抽出する（Ｓ７１６）。そして、改善指針出力部１１５は、改善指針保持部１１４を参照して、組付種別が「結合」であり、結合種別が「ねじ締結」のテーブルの中で、着脱要否が「要」である改善指針を抽出する（Ｓ７１７）。そして、改善指針出力部１１５は、抽出した改善指針の中で、着脱不要の組み付けに関する改善指針に一体化を提案する改善指針を追加し（Ｓ７１８）、本フローチャートに示した改善指針抽出処理を終了する。
【０１０５】
また、ステップＳ７１２において、結合種別が「ねじ締結」でない場合（Ｓ７１２：Ｎｏ）、改善指針出力部１１５は、図４０のステップＳ７０２で選択した下位ＩＤに対応付けられている結合種別および結合情報を組付情報保持部１１２から抽出し、抽出した結合種別および結合情報に対応する結合強度の算出式を強度算出方法保持部１１６から抽出する。そして、改善指針出力部１１５は、抽出した結合情報を、抽出した結合強度の算出式にあてはめて結合強度を算出する（Ｓ７１９）。
【０１０６】
次に、改善指針出力部１１５は、強度算出方法保持部１１６を参照して、ステップＳ７１９で算出した結合強度以上の強度となる他の結合方法を特定する（Ｓ７２０）。そして、改善指針出力部１１５は、特定した他の結合方法のそれぞれについて、結合時間算出方法保持部１０３を参照して結合時間を算出する。そして、改善指針出力部１１５は、特定した他の結合方法の中で、ステップＳ７１９で結合強度を算出した結合方法における結合時間以下の結合時間となるものを抽出する（Ｓ７２１）。
【０１０７】
次に、改善指針出力部１１５は、改善指針保持部１１４を参照して、組付種別が「結合」であり、結合種別が「ねじ締結」以外のテーブルの中で、ステップＳ７２１で抽出した他の結合方法が代替手段として対応付けられている改善指針を、着脱不要の組み付けに関する改善指針として抽出し（Ｓ７２２）、ステップＳ７１８に示した処理を実行する。
【０１０８】
また、ステップＳ７１１において、結合種別の欄にデータが登録されていない場合（Ｓ７１１：Ｎｏ）、改善指針出力部１１は、組付情報保持部１１２を参照して、図４０のステップＳ７０２で選択した下位ＩＤに対応付けられている溶接種別の欄にデータが登録されているか否かを判定する（Ｓ７２３）。溶接種別の欄にデータが登録されていない場合（Ｓ７２３：Ｎｏ）、改善指針出力部１１５は、本フローチャートに示した改善指針抽出処理を終了する。
【０１０９】
一方、溶接種別の欄にデータが登録されている場合（Ｓ７２３：Ｙｅｓ）、改善指針出力部１１は、図４０のステップＳ７０２で選択した下位ＩＤに対応付けられている溶接種別および溶接パラメータを組付情報保持部１１２から抽出し、抽出した溶接種別および溶接パラメータに対応する溶接強度の算出式を強度算出方法保持部１１６から抽出する。そして、改善指針出力部１１５は、抽出した溶接パラメータを、抽出した溶接強度の算出式にあてはめて溶接強度を算出する（Ｓ７２４）。
【０１１０】
次に、改善指針出力部１１５は、強度算出方法保持部１１６を参照して、ステップＳ７２４で算出した溶接強度以上の強度となる他の溶接方法を特定する（Ｓ７２５）。そして、改善指針出力部１１５は、特定した他の溶接方法のそれぞれについて、溶接時間算出方法保持部１０４を参照して溶接時間を算出する。そして、改善指針出力部１１５は、特定した他の溶接方法の中で、ステップＳ７１９で溶接強度を算出した溶接方法における溶接時間以下の溶接時間となるものを抽出する（Ｓ７２６）。
【０１１１】
次に、改善指針出力部１１５は、改善指針保持部１１４を参照して、組付種別が「溶接」であるそれぞれの溶接種別のテーブルの中で、ステップＳ７２６で抽出した他の溶接方法が代替手段として対応付けられている改善指針を、着脱不要の組み付けに関する改善指針として抽出し（Ｓ７２７）、ステップＳ７１８に示した処理を実行する。
【０１１２】
以上の処理によって出力される改善指針出力結果４０は、例えば図４２のような構造である。図４２に示した改善指針出力結果４０に基づいて、製品の構造を変更することにより、ユーザは、図２に示した製品を、例えば図４３に示すような構造に変更して組立時間の短縮化を図ることができる。
【０１１３】
以上、本発明の第２の実施形態について説明した。
【０１１４】
本実施形態の設計支援装置１０においても、製品の組み立てにかかる時間を精度よく算出することができる。また、設計支援装置１０は、精度の高い組立時間に基づいて組立時間を短くする製品の構造を提案することができ、製品の設計をより効率よく遂行することができる。
【０１１５】
なお、上記した第１または第２の実施形態における設計支援装置１０は、例えば図４４に示すような構成のコンピュータ５０によって実現される。コンピュータ５０は、ＣＰＵ（Central Processing Unit）５１、ＲＡＭ（Random Access Memory）５２、ＲＯＭ（Read Only Memory）５３、ＨＤＤ（Hard Disk Drive）５４、通信インターフェイス（Ｉ／Ｆ）５５、入力インターフェイス（Ｉ／Ｆ）５６、出力インターフェイス（Ｉ／Ｆ）５７、およびメディアインターフェイス（Ｉ／Ｆ）５８を備える。
【０１１６】
ＣＰＵ５１は、ＲＯＭ５３またはＨＤＤ５４に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ５３は、コンピュータ５０の起動時にＣＰＵ５１によって実行されるブートプログラムや、コンピュータ５０のハードウェアに依存するプログラム等を格納する。
【０１１７】
ＨＤＤ５４は、ＣＰＵ５１によって実行されるプログラムおよび当該プログラムによって使用されるデータ等を格納する。通信インターフェイス５５は、通信回線を介して他の機器からデータを受信してＣＰＵ５１へ送ると共に、ＣＰＵ５１が生成したデータを、通信回線を介して他の機器へ送信する。
【０１１８】
ＣＰＵ５１は、入力インターフェイス５６を介して、キーボードやマウス等の入力装置１１を制御し、入力インターフェイス５６を介して入力装置１１からデータを取得する。また、ＣＰＵ５１は、出力インターフェイス５７を介して、ディスプレイたプリンタ等の出力装置１２を制御し、生成したデータを出力インターフェイス５７を介して出力装置１２へ出力する。
【０１１９】
メディアインターフェイス５８は、記録媒体５９に格納されたプログラムまたはデータを読み取り、ＲＡＭ５２を介してＣＰＵ５１に提供する。ＣＰＵ５１は、当該プログラムを、メディアインターフェイス５８を介して記録媒体５９からＲＡＭ５２上にロードし、ロードしたプログラムを実行する。記録媒体５９は、例えばＤＶＤ（Digital Versatile Disk）、ＰＤ（Phase change rewritable Disk）等の光学記録媒体、ＭＯ（Magneto-Optical disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１２０】
コンピュータ５０が第１の実施形態における設計支援装置１０として機能する場合、コンピュータ５０のＣＰＵ５１は、ＲＡＭ５２上にロードされたプログラムを実行することにより、工程表保持部１００、説明文保持部１０１、設計情報登録部１０２、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、組立手順書作成部１０６、移動時間算出部１０７、保持時間算出部１０８、結合時間算出部１０９、溶接時間算出部１１０、動作時間保持部１１１、組付情報保持部１１２、および組立時間算出部１１３の各機能を実現する。ＨＤＤ５４には、工程表保持部１００、説明文保持部１０１、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、動作時間保持部１１１、および組付情報保持部１１２内のデータが格納される。
【０１２１】
コンピュータ５０が第２の実施形態における設計支援装置１０として機能する場合、コンピュータ５０のＣＰＵ５１は、ＲＡＭ５２上にロードされたプログラムを実行することにより、設計情報登録部１０２、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、移動時間算出部１０７、保持時間算出部１０８、結合時間算出部１０９、溶接時間算出部１１０、動作時間保持部１１１、組付情報保持部１１２、組立時間算出部１１３、改善指針保持部１１４、改善指針出力部１１５、および強度算出方法保持部１１６の各機能を実現する。ＨＤＤ５４には、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、動作時間保持部１１１、組付情報保持部１１２、改善指針保持部１１４、および強度算出方法保持部１１６内のデータが格納される。
【０１２２】
コンピュータ５０のＣＰＵ５１は、これらのプログラムを、記録媒体５９から読み取って実行するが、他の例として、他の装置から、通信媒体を介してこれらのプログラムを取得してもよい。通信媒体とは、通信回線、または、当該通信回線を伝搬するディジタル信号もしくは搬送波を指す。
【０１２３】
なお、本発明は、上記した実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【０１２４】
例えば、上記した各実施形態において、図９に示した動作時間保持部１１１は、組付ベクトルと重力ベクトルの内積の値に対応付けて、保持フラグ、保持時間、および、移動時間を保持するが、本発明はこれに限られず、動作時間保持部１１１は、組み付け方向と重力の方向とのなす角度に対応付けて、保持フラグ、保持時間、および、移動時間を保持するようにしてもよい。
【０１２５】
また、上記した第１の実施形態において、設計支援装置１０は、予め格納されたデータを元に組立手順書を出力したが、本発明はこれに限られない。例えば、設計支援装置１０を通信回線に接続し、通信回線を介してクライアントの端末から提供された説明文、結合時間算出方法、溶接時間算出方法、設計情報、および動作時間を、それぞれ、説明文保持部１０１、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、および動作時間保持部１１１に登録し、作成した組立手順書を通信回線を介してクライアントの端末へ出力するようにしてもよい。
【０１２６】
同様に、上記した第２の実施形態では、設計支援装置１０は、予め設定されたデータを元に改善指針を出力したが、本発明はこれに限られない。例えば、設計支援装置１０を通信回線に接続し、通信回線を介してクライアントの端末から提供された結合時間算出方法、溶接時間算出方法、設計情報、動作時間、および改善指針を、それぞれ、結合時間算出方法保持部１０３、溶接時間算出方法保持部１０４、設計情報保持部１０５、動作時間保持部１１１、改善指針保持部１１４、および強度算出方法保持部１１６に登録し、作成した改善指針を通信回線を介してクライアントの端末へ出力するようにしてもよい。
【０１２７】
また、上記した各実施形態において、動作時間保持部１１１は、組付ベクトルａと重力ベクトルｇとの内積の値を３通りにわけて、それぞれの値における保持時間および移動時間を保持するが、本発明はこれに限られず、動作時間保持部１１１は、より細かく、４通り以上に分けて、それぞれの内積の値における保持時間および移動時間を保持するようにしてもよい。
【０１２８】
また、上記した各実施形態では、設計支援装置１０が１つの装置として実現される構成を例に説明したが、本発明はこれに限られず、複数のコンピュータのそれぞれに、設計支援装置１０内の各機能を分散させ、当該複数のコンピュータを協調動作させて設計支援装置１０の機能を実現させるようにしてもよい。
【０１２９】
また、上記した各実施形態における設計支援装置１０内の各構成要素は、実施形態の説明を容易にするために、主な処理内容に応じて機能別に区分したものである。そのため、構成要素の区分方法やその名称によって、本願発明が制限されることはない。各実施形態における設計支援装置１０内の構成要素は、処理内容に応じてさらに多くの構成要素に区分することもできるし、１つの構成要素がさらに多くの処理を実行するように区分することもできる。
【符号の説明】
【０１３０】
１０・・・設計支援装置、１１・・・入力装置、１２・・・出力装置、１００・・・工程表保持部、１０００・・・工程表、１０１・・・説明文保持部、１０２・・・設計情報登録部、１０３・・・結合時間算出方法保持部、１０４・・・溶接時間算出方法保持部、１０５・・・設計情報保持部、１０６・・・組立手順書作成部、１０７・・・移動時間算出部、１０８・・・保持時間算出部、１０９・・・結合時間算出部、１１０・・・溶接時間算出部、１１１・・・動作時間保持部、１１２・・・組付情報保持部、１１３・・・組立時間算出部、１１４・・・改善指針保持部、１１５・・・改善指針出力部、１１６・・・強度算出方法保持部、２０・・・接触関係表、３０・・・組立手順書、４０・・・改善指針出力結果、５０・・・コンピュータ、５１・・・ＣＰＵ、５２・・・ＲＡＭ、５３・・・ＲＯＭ、５４・・・ＨＤＤ、５５・・・通信インターフェイス、５６・・・入力インターフェイス、５７・・・出力インターフェイス、５８・・・メディアインターフェイス、５９・・・記録媒体
【図１】
2011008609.tif 000005
【図２】
2011008609.tif 000006
【図３】
2011008609.tif 000007
【図４】
2011008609.tif 000008
【図５】
2011008609.tif 000009
【図６】
2011008609.tif 000010
【図７】
2011008609.tif 000011
【図８】
2011008609.tif 000012
【図９】
2011008609.tif 000013
【図１０】
2011008609.tif 000014
【図１１】
2011008609.tif 000015
【図１２】
2011008609.tif 000016
【図１３】
2011008609.tif 000017
【図１４】
2011008609.tif 000018
【図１５】
2011008609.tif 000019
【図１６】
2011008609.tif 000020
【図１７】
2011008609.tif 000021
【図１８】
2011008609.tif 000022
【図１９】
2011008609.tif 000023
【図２０】
2011008609.tif 000024
【図２１】
2011008609.tif 000025
【図２２】
2011008609.tif 000026
【図２３】
2011008609.tif 000027
【図２４】
2011008609.tif 000028
【図２５】
2011008609.tif 000029
【図２６】
2011008609.tif 000030
【図２７】
2011008609.tif 000031
【図２８】
2011008609.tif 000032
【図２９】
2011008609.tif 000033
【図３０】
2011008609.tif 000034
【図３１】
2011008609.tif 000035
【図３２】
2011008609.tif 000036
【図３３】
2011008609.tif 000037
【図３４】
2011008609.tif 000038
【図３５】
2011008609.tif 000039
【図３６】
2011008609.tif 000040
【図３７】
2011008609.tif 000041
【図３８】
2011008609.tif 000042
【図３９】
2011008609.tif 000043
【図４０】
2011008609.tif 000044
【図４１】
2011008609.tif 000045
【図４２】
2011008609.tif 000046
【図４３】
2011008609.tif 000047
【図４４】
2011008609.tif 000048