JP6136198B2 - 推定プログラム、推定装置、推定方法、および製造方法 - Google Patents

推定プログラム、推定装置、推定方法、および製造方法 Download PDF

Info

Publication number
JP6136198B2
JP6136198B2 JP2012242245A JP2012242245A JP6136198B2 JP 6136198 B2 JP6136198 B2 JP 6136198B2 JP 2012242245 A JP2012242245 A JP 2012242245A JP 2012242245 A JP2012242245 A JP 2012242245A JP 6136198 B2 JP6136198 B2 JP 6136198B2
Authority
JP
Japan
Prior art keywords
assembly
removal
parts
estimation
ease
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012242245A
Other languages
English (en)
Other versions
JP2014092887A (ja
Inventor
励 熊谷
励 熊谷
輝敏 田口
輝敏 田口
和宏 米澤
和宏 米澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012242245A priority Critical patent/JP6136198B2/ja
Priority to US14/024,922 priority patent/US20140122030A1/en
Priority to EP13185312.9A priority patent/EP2728501A3/en
Priority to KR1020130115676A priority patent/KR101529391B1/ko
Priority to CN201310470752.XA priority patent/CN103809518B/zh
Publication of JP2014092887A publication Critical patent/JP2014092887A/ja
Application granted granted Critical
Publication of JP6136198B2 publication Critical patent/JP6136198B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/18Manufacturability analysis or optimisation for manufacturability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)
  • Architecture (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Description

本発明は、推定プログラム、推定装置、および製造方法に関する。
従来、CAD(Computer Aided Design)データから、製品の組立順序を推定する技術がある。たとえば、組立モデルを形成する部品間の隣接関係と部品間の位置関係を拘束するアセンブリ拘束情報を用いて、組立順序を推定する技術がある。また、製品モデルを形成する複数の部品間の結合関係を表す結合関係情報を抽出し、結合関係情報に基づいて、ある部品が他の部品と分離可能であるか否かを判断するとともに、他の部品との干渉判定を行いながら複数の部品の組立順序を推定する技術がある。(たとえば、下記特許文献1、2を参照。)
特開2008−46924号公報 特開平10−240324号公報
しかしながら、従来技術によれば、ある部品が他の部品と分離可能であるかを判断する際に、ある部品を製品から外せるか否かの干渉判定を行うため、組立順序の推定にかかる演算量が多くなる。
1つの側面では、本発明は、組立順序の推定にかかる演算量の低減化を図る推定プログラム、推定装置、および製造方法を提供することを目的とする。
本発明の一側面によれば、ある部品を構成要素に含む組立体に関する設計データを用いた部品の取り外し易さの程度の推定プログラムにおいて、設計データを参照して、該ある部品をある方向から取り外す場合の取り外し易さの程度を、組立体をある方向から見た場合の該ある部品の面積と、該ある方向から他の部品によって視野がさえぎられない状況で見た場合の該ある部品の面積との比に基づき算出する推定プログラム、推定装置、および製造方法が提案される。
本発明の一態様によれば、組立順序の推定にかかる演算量の低減化を図るという効果を奏する。
図1は、本実施の形態にかかる推定装置の動作例を示す説明図である。 図2は、推定装置のハードウェア構成の一例を示すブロック図である。 図3は、推定装置の機能構成例を示すブロック図である。 図4は、設計データの記憶内容の一例を示す説明図である。 図5は、取り外し部品の候補の選択例を示す説明図(その1)である。 図6は、取り外し部品の候補の選択例を示す説明図(その2)である。 図7は、取り外し部品の候補一覧の一例を示す説明図である。 図8は、取り外し部品の特定における第1の判断基準を示す説明図である。 図9は、取り外し部品の特定における第2の判断基準を示す説明図である。 図10は、取り外し部品の特定における第3の判断基準を示す説明図である。 図11は、取り外し部品の特定における第4の判断基準を示す説明図である。 図12は、取り外し部品の特定の一例を示す説明図である。 図13は、締結部品の取り外しの順序を推定する例を示す説明図である。 図14は、組立順序推定処理手順の一例を示すフローチャートである。 図15は、残部品順序推定処理手順の一例を示すフローチャートである。 図16は、取り外し部品の候補選択処理手順の一例を示すフローチャート(その1)である。 図17は、取り外し部品の候補選択処理手順の一例を示すフローチャート(その2)である。 図18は、取り外し部品の特定処理手順の一例を示すフローチャート(その1)である。 図19は、取り外し部品の特定処理手順の一例を示すフローチャート(その2)である。 図20は、締結部品順序推定処理手順の一例を示すフローチャートである。
以下に添付図面を参照して、開示の推定プログラム、推定装置、および製造方法の実施の形態を詳細に説明する。
図1は、本実施の形態にかかる推定装置の動作例を示す説明図である。本実施の形態にかかる推定装置100は、ある部品を構成要素に含む組立体に関する設計データを用いた部品の取り外し易さの程度を推定するコンピュータである。作業者や作業用の製造装置は、製品を複数の部品から組み立てる際に、推定装置100によって推定された順序に基づいて、製品を組み立てる。設計データは、部品ごとに、対象の部品の位置情報と、対象の部品の形状を示す情報を含む。設計データの詳細については、図4にて後述する。ここで、組立体は、2つ以上の部品で形成されるものとする。たとえば、組立体は、PC(Personal Computer)、サーバ、携帯情報端末、自動車、家電製品などの機械製品などが挙げられる。
組立順序を推定する技術として、たとえば、以下の2つの技術がある。1つ目の技術は、アセンブリ拘束情報を用いて、組立順序を推定するものである。アセンブリ拘束情報とは、2つの部品のある同種のジオメトリ部位の相対位置関係を固定するCAD上の制約条件である。同種のジオメトリ部位となる一例は、軸と軸、平面と平面等である。しかしながら、CADデータにはアセンブリ拘束情報がないものもあるため、1つ目の技術は、汎用性が低いものとなる。
2つ目の技術は、部品間の結合関係を表す結合関係情報に基づいて、ある部品が他の部品と分離可能であるか否かを判断するとともに、他の部品との干渉判定を行って、組立順序を推定するものである。干渉判定では、ある部品のある面と他の部品のある面とが干渉するか、ある部品のある面と他の部品の別の面とが干渉するか、…というように面の組合せごとに処理を行うため、演算量が多くなる。CADデータには、結合関係情報がないものもあるため、2つ目の技術は、汎用性が低いものとなる。また、2つ目の技術は、干渉判定を行うため、演算量が多いものとなる。
そこで、汎用性を高く、演算量の低減化を図るために、推定装置100は、ある方向からある部品を見た際の面積と、他の部品を非表示とした際のある部品を見た際の面積とからある部品の取り外し易さの程度を算出する。推定装置100は、算出した取り外し易さの程度に従って、部品の取り外しの順序を推定し、特定した部品の取り外しの順序を逆順にすることにより、部品の組立順序を推定する。これにより、推定装置100は、2つの面積の比較を行うだけで済むので、組立順序の推定にかかる演算量の低減化を図ることができる。
図1の例では、推定装置100は、組立体101に含まれる部品Part1の取り外し易さの程度を推定する。組立体101は、部品Part1と部品Part2を含む。また、組立体101に含まれる各部品の形状を示す情報は、Xl軸、Yl軸、Zl軸というローカル座標系で表される座標を用いて表される。
推定装置100は、設計データを参照して、組立体101をある方向から見た場合の部品Part1の第1の面積を算出するとともに、ある方向から他の部品によって視野がさえぎられない状況で見た場合の部品Part1の第2の面積を算出する。ある方向とは、どのような方向でもよい。図1の例では、推定装置100は、ある方向として、+Xl方向と、−Xl方向とについて、部品Part1の取り外し易さの程度を推定する。
+Xl方向について、推定装置100は、組立体101を+Xl方向から見た場合の部品Part1の第1の面積を、a1_pxlと算出する。具体的な面積の算出方法は、図6にて後述する。また、推定装置100は、+Xl方向から部品Part2によって視野がさえぎられない状況で見た場合の部品Part1の第2の面積を、a2_pxlと算出する。続けて、推定装置100は、ある部品をある方向から取り外す場合の取り外し易さの程度を、第1の面積a1_pxlと第2の面積a2_pxlとの比に基づき算出する。具体的に、推定装置100は、第2の面積を基準として、第1の面積が大きいほど、取り外し易いと算出する。
また、−Xl方向について、推定装置100は、組立体101を−Xl方向から見た場合の部品Part1の第1の面積を、a1_mxlと算出する。また、推定装置100は、−Xl方向から部品Part2によって視野がさえぎられない状況で見た場合の部品Part1の第2の面積を、a2_mxlと算出する。続けて、推定装置100は、ある部品をある方向から取り外す場合の取り外し易さの程度を、第1の面積a1_mxlと第2の面積a2_mxlとの比に基づき算出する。
算出される結果として、第1の面積を基準として、第2の面積が大きいほど、取り外し易いと算出する。図1の例では、a1_pxl:a2_pxlと、a1_mxl:a2_mxlとでは、a2_pxlを基準とした時のa1_pxlは、a2_mxlを基準とした時のa1_mxlより大きくなる。したがって、推定装置100は、+Xl方向での部品Part1の取り外し易さの程度を大きく算出し、−Xl方向での部品Part1の取り外し易さの程度を小さく算出する。以降、図2〜図20を用いて、推定装置100の詳細について説明する。
(推定装置100のハードウェア)
図2は、推定装置のハードウェア構成の一例を示すブロック図である。図2において、推定装置100は、CPU(Central Processing Unit)201と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、を含む。また、推定装置100は、ディスクドライブ204と、ディスク205と、通信インターフェース206と、を含む。また、推定装置100は、ディスプレイ207と、キーボード208と、マウス209とを含む。また、CPU201〜マウス209はバス210によってそれぞれ接続される。
CPU201は、推定装置100の全体の制御を司る演算処理装置である。ROM202は、ブートプログラムなどのプログラムを記憶する不揮発性メモリである。RAM203は、CPU201のワークエリアとして使用される揮発性メモリである。
ディスクドライブ204は、CPU201の制御に従ってディスク205に対するデータのリードおよびライトを制御する制御装置である。ディスクドライブ204には、たとえば、磁気ディスクドライブ、光ディスクドライブ、ソリッドステートドライブなどを採用することができる。ディスク205は、ディスクドライブ204の制御で書き込まれたデータを記憶する不揮発性メモリである。たとえばディスクドライブ204が磁気ディスクドライブである場合、ディスク205には、磁気ディスクを採用することができる。また、ディスクドライブ204が光ディスクドライブである場合、ディスク205には、光ディスクを採用することができる。また、ディスクドライブ204がソリッドステートドライブである場合、ディスク205には、半導体素子メモリを採用することができる。
通信インターフェース206は、ネットワーク211と内部のインターフェースを司り、外部装置からのデータの入出力を制御する制御装置である。具体的に、通信インターフェース206は、通信回線を通じてネットワーク211となるLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどに接続され、ネットワーク211を介して他の装置に接続される。通信インターフェース206には、たとえば、モデムやLANアダプタなどを採用することができる。
ディスプレイ207は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する装置である。ディスプレイ207には、たとえば、CRT(Cathode Ray Tube)、TFT(Thin Film Transistor)液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
キーボード208は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う装置である。また、キーボード208は、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス209は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う装置である。マウス209は、ポインティングデバイスとして同様に機能を有するものであれば、トラックボールやジョイスティックなどであってもよい。
(推定装置100の機能)
次に、推定装置100の機能構成について説明する。図3は、推定装置の機能構成例を示すブロック図である。推定装置100は、算出部301と、特定部302と、を含む。制御部となる算出部301、特定部302は、記憶装置に記憶されたプログラムをCPU201が実行することにより、算出部301、特定部302の機能を実現する。記憶装置とは、具体的には、たとえば、図2に示したROM202、RAM203、ディスク205などである。または、通信インターフェース206を経由して他のCPUが実行することにより、算出部301、特定部302の機能を実現してもよい。
また、推定装置100は、複数の部品を含む組立体に関する設計データ311にアクセス可能である。設計データ311は、RAM203、ディスク205といった記憶装置に格納される。また、設計データは、組立体に含まれる各部品が締結部品か否かを示す情報を含めてもよい。締結部品は、複数の部品を締結する部品である。締結部品は、たとえば、ねじやナット、ワッシャなどである。締結部品によって締結される部品を、「被締結部品」と称する。
算出部301は、設計データ311を参照して、組立体をある方向から見た場合のある部品の第1の面積と、ある方向から他の部品によって視野がさえぎられない状況で見た場合のある部品の第2の面積とを算出する。そして、算出部301は、ある部品をある方向から取り外す場合の取り外し易さの程度を、第1の面積と第2の面積との比に基づき算出する。ある方向は、どのような方向でもよい。また、算出部301は、取り外し難さの程度を算出してもよい。
図1の例を用いると、たとえば、算出部301は、+Xl方向から見た場合の部品Part1の第1の面積a1_pxlと、+Xl方向から他の部品によって視野がさえぎられない状況で見た場合のある部品の第2の面積a2_pxlを算出する。そして、算出部301は、部品Part1を+Xl方向から取り外す場合の取り外し易さの程度を、第1の面積a1_pxlと第2の面積a2_pxlとの比に基づき算出する。たとえば、算出部301は、取り外し易さの程度を、第2の面積/第1の面積の算出結果で表してもよい。
また、算出部301は、複数の方向で取り外せる部品がある場合、直前に取り外した部品を取り外した方向を優先するように取り外し易さの程度を算出してもよい。たとえば、算出部301は、取り外し易さの程度を、複数の方向のうち、直前に取り外した部品を取り外した方向と同じ方向の取り外し易さの程度を大きく算出し、直前に取り外した部品を取り外した方向と異なる方向の取り外し易さの程度を小さく算出する。
また、算出部301は、取り外せる部品が複数存在する場合、直前に取り外した部品を取り外した方向で取り外せる部品を優先するように取り外し易さの程度を算出してもよい。
また、算出部301は、取り外せる部品が複数存在する場合、組立体の部品の位置から組立体から取り外せたと判定する位置までの距離が短い部品を優先するように取り外し易さの程度を算出してもよい。たとえば、2つの部品が取り外せるとする。このとき、算出部301は、1つ目の部品の位置から組立体から取り外せたと判定する位置までの距離と、2つ目の部品の位置から組立体から取り外せたと判定する位置までの距離と、を算出し、値が小さくなった部品の取り外し易さの程度を大きく算出する。また、組立体から部品が取り外せたと判定する方法としては、たとえば、組立体を覆う、Xl、Yl、Zl軸のいずれかの軸に各面が並行な直方体から部品の重心が外れた場合に部品が外れたと判断する。以下、Xl、Yl、Zl軸のいずれかの軸に各面が並行な直方体を、「バウンディングボックス」と称する。
また、算出部301は、取り外せる部品が複数存在する場合、直前に取り外した部品の位置からの距離が短い部品を優先するように取り外し易さの程度を算出してもよい。たとえば、2つの部品が取り外せるとする。このとき、算出部301は、直前に取り外した部品の位置と1つ目の部品の位置との距離と、直前に取り外した部品の位置と2つ目の部品の位置との距離と、を算出し、値が小さくなった部品の取り外し易さの程度を大きくする。なお、算出結果は、RAM203、ディスク205などの記憶領域に記憶される。
特定部302は、設計データ311を参照して、複数の部品に対して取り外し易さを算出し、算出部301によって算出された算出結果から最も取り外し易い部品を特定する。たとえば、特定部302は、1つ目の部品の取り外し易さの程度が100であり、2つ目の部品の取り外し易さの程度が80であれば、値が大きい1つ目の部品を最も取り外し易い部品として特定する。また、算出部301が、取り外し難さの程度を算出した場合、特定部302は、取り外し難さが最も小さい部品を特定する。
また、特定部302は、部品を取り外し易い順に取り外していき、部品を取り外した順とは逆順に並び替えて組立順序を特定してもよい。たとえば、特定部302は、取り外し易い順に、部品Part1、部品Part2、部品Part3という順で取り外した場合、部品Part3、部品Part2、部品Part1というように逆順に並び変えた順序を組立順序として特定する。
また、特定部302は、締結部品を、締結部品が締結する対象の部品を組立体から取り外すタイミングで取り外していき、部品を取り外した順とは逆順に並び替えて組立順序を特定してもよい。たとえば、ある締結部品が締結する対象の部品が部品Part2である場合、特定部302は、部品Part2を組立体から取り外すタイミングで取り外していくので、部品Part1、ある締結部品、部品Part2、部品Part3という順で取り外す。なお、特定結果は、RAM203、ディスク205などの記憶領域に記憶される。
図4は、設計データの記憶内容の一例を示す説明図である。図4の(A)にて設計データ311の記憶内容について説明し、図4の(B)にて、設計データ311に含まれる形状情報について説明する。設計データ311は、部品ごとに、3次元のグローバル座標系における対象の部品の位置情報と、対象の部品の形状を示す情報とを含む。図4に示す設計データ311は、レコード401−1を含む。
設計データ311は、部品名、部品の原点座標、ローカル座標系、色情報、形状情報という5つのフィールドを含む。部品名フィールドには、対象の部品の名称が格納される。部品の原点座標フィールドには、グローバル座標系における対象の部品の位置情報が格納される。ローカル座標系フィールドには、ローカル座標の各軸の方向を表す情報が格納される。ローカル座標の各軸の方向を表す情報として、本実施の形態では、グローバル座標に対して乗算することにより、グローバル座標からローカル座標に変換する変換行列が格納される。色情報フィールドには、対象の部品の色情報が格納される。色情報は、たとえば、RGB値である。形状情報フィールドには、対象の部品の形状を示す形状情報が格納される。形状情報として、本実施の形態では、ファセットを複数用いて形状情報とする。ファセットは、微細平面を特定する情報である。ファセットについて、図4の(B)を用いて説明する。
図4の(B)が示すように、部品Part1は、ファセット1〜ファセットNにより形成される。1つのファセットは、3つの頂点の座標情報と、3つの頂点により形成される微細平面の法線ベクトルを有する。たとえば、ファセットNは、3つの頂点v_N1、v_N2、v_N3と、法線ベクトルVec_Nとを有する。
たとえば、図4の(A)に示すレコード401−1は、部品Part1について、原点座標がP1(xg,yg,zg)であり、変換行列がR1であり、色情報が(r1,g1,b1)であり、ファセット1〜ファセットNを有することを示す。
(組立体からの部品の取り外し順序推定)
図5〜図13を用いて、組立体からの部品の取り外し順序推定について説明を行う。具体的には、図5〜図12を用いて、組立体に含まれる部品のうち、締結部品を除いた残部品の取り外し順序の推定について説明し、図13を用いて、締結部品の取り外し順序の推定について説明する。図5〜図12のうち、図5と図6を用いて、組立体に含まれる部品のうち、締結部品を除いた残部品の部品ごとに、該当の部品を取り外し部品の候補に選択するか否かを判断する処理について説明する。
図5は、取り外し部品の候補の選択例を示す説明図(その1)である。図5の(A)が示すように、組立体501は、部品Part1と部品Part2を含む。推定装置100は、部品Part1を処理対象部品として、取り外し部品の候補を選択するために用いる、取り外し易さの程度を算出する。図5の(B)は、部品Part1の鳥瞰図を示す。
取り外し易さの程度を算出する処理の準備として、推定装置100は、特定の大きさを有する描画領域を用意し、検証方向から見て、部品Part1を描画領域に部品Part1が収まる表示倍率で投影する。投影する際に、推定装置100は、部品Part1の色を白色とし、背景色を黒色とし、他の部品を非表示にして投影する。検証方向は、どのような方向でもよいが、本実施の形態では、+Xl方向、−Xl方向、+Yl方向、−Yl方向、+Zl方向、−Zl方向、という6方向とする。特定の大きさは、開発者によって指定される。
描画領域に投影した画像を、図5の(C)にて示す。図5の(C)は、部品Part1を、+Xl方向に投影した画像D1と、−Xl方向に投影した画像D2と、+Yl方向に投影した画像D3と、−Yl方向に投影した画像D4と、+Zl方向に投影した画像D5と、−Zl方向に投影した画像D6を示す。画像D1〜画像D6は、特定の大きさとして、縦200[画素]、横200[画素]の画像であるとする。なお、画像D1〜画像D6は、作業者が検証方向から部品Part1を他の部品によって視野がさえぎられない状況で見たときの画像となる。
投影した画像D1〜画像D6を生成後、推定装置100は、画像D1〜画像D6内の白色の画素数をカウントすることにより、部品Part1の面積を算出する。図5の(C)の例では、推定装置100は、白色の画素が、画像D1〜画像D4内にそれぞれ2000個あり、画像D5、画像D6内にそれぞれ13000個あるとカウントする。以降の処理については、図6にて説明する。
図6は、取り外し部品の候補の選択例を示す説明図(その2)である。推定装置100は、部品Part1の色を白色とし、他の部品を表示して他の部品の色を黒色とし、背景色を黒色として、各検証方向から描画領域に投影する。描画領域に投影した画像を、図6の(A)にて示す。図6の(A)は、部品Part1を、+Xl方向に投影した画像E1と、−Xl方向に投影した画像E2と、+Yl方向に投影した画像E3と、−Yl方向に投影した画像E4と、+Zl方向に投影した画像E5と、−Zl方向に投影した画像E6を示す。画像E1〜画像E6は、特定の大きさとして、縦200[画素]、横200[画素]の画像であるとする。なお、画像E1〜画像E6は、作業者が検証方向から部品Part1を見たときの画像となる。
投影した画像E1〜画像E6を生成後、推定装置100は、画像E1〜画像E6内の、白色の画素数をカウントすることにより、部品Part1の面積を算出する。図6の(A)の例では、推定装置100は、白色の画素が、画像E1、画像E3内にそれぞれ2000個あり、画像E2、画像E4内にそれぞれ1700個あり、画像E5内に9000個あり、画像E6内に9500個あるとカウントする。
続けて、推定装置100は、検証方向ごとに、他の部品を非表示にした場合の画像Dと、他の部品を表示した場合の画像Eとの白色の画素の個数の比を算出する。推定装置100は、白色の画素の個数の比に基づいて、ある部品の取り外し易さの程度を算出する。以下、取り外し易さの程度を、単に、「取り外し易さ」と称する。たとえば、推定装置100は、下記(1)式により、ある部品の取り外し易さを算出する。
取り外し易さ=他の部品を表示した場合の白色の画素の個数/他の部品を非表示にした場合の白色の画素の個数*100 …(1)
たとえば、推定装置100は、+Xl方向について、(1)式を用いて取り外し易さを算出する。
取り外し易さ=2000/2000*100=100
推定装置100は、−Xl方向〜−Zl方向も同様に、取り外し易さを算出する。算出結果を、図6の(B)にて示す。続けて、推定装置100は、算出結果に基づいて、処理対象部品を取り外し部品の候補として選択するか否かを判断する。たとえば、取り外し易さが閾値以上となった検証方向がある場合、推定装置100は、処理対象部品を取り外し部品の候補として選択する。図6の(B)では、たとえば、閾値を90として、90以上となった検証方向が+Xl方向と+Yl方向と2つあるため、推定装置100は、処理対象部品である部品Part1を取り外し部品の候補として選択する。
さらに、推定装置100は、閾値を満たした検証方向の反対方向を、取り外し方向の候補として選択する。検証方向の反対方向とする理由について説明する。取り外し易さが閾値を満たすときには、作業者を始点として、検証方向に向かって処理対象部品に到達する間には取り外しの障害となる部品が少ないため、処理対象部品を作業者の方に移動させることが容易である。ここで、処理対象部品を作業者の方に移動させる方向は、検証方向の反対方向となる。
図6の(B)の例では、閾値を満たした検証方向が+Xl方向と+Yl方向となるため、推定装置100は、取り外し部品の候補となる部品Part1と−Xl方向の組と、取り外し部品の候補となる部品Part1と−Yl方向の組とを記憶する。推定装置100は、組立体501に含まれる部品のうち、締結部品を除いた部品ごとに、図5と図6で示した処理を実行し、取り外し部品の候補と取り外し方向の候補を選択する。図7にて、選択結果となる取り外し部品の候補一覧の例について説明する。
図7は、取り外し部品の候補一覧の一例を示す説明図である。図7では、取り外し部品の候補一覧701を示す。取り外し部品の候補一覧701は、レコード701−1〜レコード701−3を含む。取り外し部品の候補一覧701は、部品名と、取り外し方向と、取り外し難さという3つのフィールドを有する。
部品名フィールドには、図6の処理にて選択された取り外し部品の候補となった部品の名称が格納される。取り外し方向フィールドには、図6の処理にて選択された取り外し部品の取り外し方向の候補となった方向の識別情報が格納される。取り外し難さフィールドには、該当の部品を取り外し方向に取り外す場合の取り外し難さの程度が格納される。取り外し難さフィールドに格納される値は、該当の部品が取り外し難い程、大きな値となる。したがって、推定装置100は、取り外し難さフィールドの値が小さい取り外し部品の候補を優先して取り外し部品として特定する。図7の段階では、レコード701−1〜レコード701−3の取り外し難さフィールドの各値は、0が格納される。続けて、図8〜図11を用いて、取り外し部品の特定を行う処理の判断基準となる、取り外し難さフィールドを更新する処理を説明する。
図8は、取り外し部品の特定における第1の判断基準を示す説明図である。図8では、取り外し部品の特定における第1の判断基準として、取り外し部品の候補のうちのある部品と、直前に取り外した部品との距離に基づいて、取り外し難さフィールドを更新する処理について説明する。また、組立体501は、直前に取り外した部品Part0を含んでいたものとする。
推定装置100は、取り外し部品の候補となったある部品と直前に取り外した部品との距離を算出し、算出した距離と係数p1を乗算して、乗算結果を取り外し難さフィールドの値に加算する。具体的に、推定装置100は、ある部品として部品Part1と部品Part0との距離d1を、部品Part1の重心の位置と、部品Part0の重心の位置との距離によって算出する。部品の重心の位置は、設計データに含まれていてもよいし、部品の形状情報から算出されてもよい。たとえば、推定装置100は、部品の形状情報に含まれる各点の座標位置の平均値を、部品の重心の位置として算出する。
図8の例では、推定装置100は、レコード701−1の取り外し難さフィールドに格納された値0にd1*p1を加算した結果であるd1*p1で、レコード701−1の取り外し難さフィールドを更新する。同様に、推定装置100は、d1*p1で、レコード701−2の取り外し難さフィールドを更新する。なお、直前に取り外した部品がない場合、推定装置100は、図8で示した処理を行わない。
図8に示す処理を行うことにより、推定装置100は、直前に取り外した部品からの距離が短い程、作業者の手の移動量が短くなり取り外しの作業が効率的となるため、効率的な取り外しの順序となる部品を優先して特定することができる。また、部品の取り外しの順序を逆順にした部品の組立順序でも、作業者の手の移動量が短くなり組立作業が効率的となるため、推定装置100は、効率的な組立順序となる部品を優先して特定することができる。
図9は、取り外し部品の特定における第2の判断基準を示す説明図である。図9では、取り外し部品の特定における第2の判断基準として、取り外し部品の候補のうちのある部品の取り外し方向の候補と、直前に取り外した部品の取り外し方向とに基づいて、取り外し難さフィールドを更新する処理について説明する。また、図9では、直前に取り外した部品Part0の取り外し方向が−Xl方向であるとする。
推定装置100は、ある部品の取り外し方向の候補と直前に取り外した部品の取り外し方向が異なれば、定数p2を取り外し部品の候補一覧701の取り外し難さフィールドに格納された値に加算する。図9で示す例では、推定装置100は、レコード701−1について、部品Part1の取り外し方向の候補と部品Part0の取り外し方向が同じ−Xl方向であるため、取り外し難さフィールドを更新しない。また、推定装置100は、レコード701−2について、部品Part1の取り外し方向の候補が−Yl方向であり部品Part0の取り外し方向が−Xl方向であり異なるため、d1*p1にp2を加算したd1*p1+p2で取り外し難さフィールドを更新する。なお、直前に取り外した部品がない場合、推定装置100は、図9で示した処理を行わない。
図9に示す処理を行うことにより、推定装置100は、同一方向に対する取り外しであれば作業者の移動が発生せず取り外しの作業が効率的となるため、効率的な取り外しの順序となる部品を優先して特定することができる。また、部品の取り外しの順序を逆順にした部品の組立順序でも、作業者の移動量が短くなり組立作業が効率的となるため、推定装置100は、効率的な組立順序となる部品を優先して特定することができる。
図10は、取り外し部品の特定における第3の判断基準を示す説明図である。図10では、取り外し部品の特定における第3の判断基準として、取り外し部品の候補のうちのある部品の取り外し方向の候補からある部品を見た場合の面積に基づいて、取り外し難さフィールドを更新する処理について説明する。また、図10では、部品Part1の色を白色、背景色を黒色とし、他の部品を非表示にして、組立体501を取り外し方向の候補−Xl方向に投影した画像1001と、組立体501を取り外し方向の候補−Yl方向に投影した画像1002と、を示す。画像1001において、部品Part1の面積は、a3_xであるとする。また、画像1002において、部品Part1の面積は、a3_yであるとする。
推定装置100は、取り外し方向の候補からある部品を見た場合の面積を算出し、算出した面積と係数p3を乗算して、乗算結果を取り外し難さフィールドの値から加算する。具体的に、推定装置100は、レコード701−1について、部品Part1を−Xl方向から見た場合の面積a3_xとp3の乗算結果a3_x*p3を、取り外し難さフィールドに格納された値から減算する。同様に、推定装置100は、レコード701−2について、部品Part1を−Yl方向から見た場合の面積a3_yとp3の乗算結果a3_y*p3を、取り外し難さフィールドに格納された値から減算する。
図10に示す処理を行うことにより、推定装置100は、大きな面積を有する部品を取り外すことにより他の部品が取り外し易くなり取り外しの作業が効率的となるため、効率的な取り外しの順序となる部品を優先して特定することができる。また、部品の取り外しの順序を逆順にした部品の組立順序でも、開発者は、組立順序に従うことにより、大きな面積を有する部品を先に組立体に取り付けた結果、小さな部品が取り付け難くなるという状況が減って組立作業が効率的に行える。したがって、推定装置100は、効率的な組立順序となる部品を優先して特定することができる。
図11は、取り外し部品の特定における第4の判断基準を示す説明図である。図11では、取り外し部品の特定における第4の判断基準として、取り外し部品の候補のうちのある部品を取り外し方向の候補に移動したとき、ある部品が組立体501から外れるまでの距離に基づいて、取り外し難さフィールドを更新する処理について説明する。
推定装置100は、ある部品を取り外し方向の候補に移動する場合の、移動前のある部品の位置から、組立体501からある部品が外れるまでの位置までの距離を算出し、算出した距離と係数p4を乗算して、乗算結果を取り外し難さフィールドの値に加算する。ある部品が組立体から外れたか否かの判断として、たとえば、推定装置100は、組立体を覆うバウンディングボックスの中から、ある部品の重心が外に出た場合、ある部品が組立体から外れたと判断する。
図11の例では、推定装置100は、レコード701−1について、部品Part1を−Xl方向に移動して、組立体501を覆うバウンディングボックスの中から、部品Part1の重心が外れるまでの距離d4_xを算出する。続けて、推定装置100は、レコード701−1の取り外し難さフィールドに格納された値にd4_x*p4を加算した値で、レコード701−1の取り外し難さフィールドを更新する。同様に、推定装置100は、レコード701−2について、部品Part1を−Yl方向に移動して、組立体501を覆うバウンディングボックスの中から、部品Part1の重心が外れるまでの距離d4_yを算出する。続けて、推定装置100は、レコード701−1の取り外し難さフィールドに格納された値にd4_y*p4を加算した値で、レコード701−2の取り外し難さフィールドを更新する。
図11に示す処理を行うことにより、推定装置100は、部品の取り外し距離が短い程、作業者の取り外し作業が容易になり取り外しの作業が効率的になるため、効率的な取り外しの順序となる部品を優先して特定することができる。また、部品の取り外しの順序を逆順にした部品の組立順序でも、作業者の組み立て作業が容易となり組立作業が効率的となるため、推定装置100は、効率的な組立順序となる部品を優先して特定することができる。
なお、p1〜p4の具体的な値は、推定装置100の開発者によって指定されてもよいし、作業者によって設定されてもよい。たとえば、作業者が作業者の移動を可能な限り減らしたいと考える場合、p2が、p1、p3、p4よりも大きい数値に指定されることにより、推定装置100は、作業者の手の移動よりも作業者の移動を少なくすることを優先した組立順序を推定することができる。
図12は、取り外し部品の特定の一例を示す説明図である。推定装置100は、図8〜図11の処理にて更新された取り外し難さフィールドの値に基づいて、取り外し部品と取り外し方向を特定する。たとえば、推定装置100は、取り外し難さフィールドの値が最も小さいレコードの部品を取り外し部品に特定し、該当のレコードの取り外し方向を、特定した取り外し部品の取り外し方向に特定する。
図12の例では、推定装置100は、レコード701−1〜レコード701−3のうち、取り外し難さフィールドの値が最も小さいレコード701−1を選択する。続けて、推定装置100は、選択したレコード701−1の部品名フィールドの値が示す部品Part1を取り外し部品として特定し、選択したレコード701−1の取り外し方向の値が示す−Xl方向を取り外し方向として特定する。
取り外し部品を特定した後、推定装置100は、組立体501から取り外し部品として特定された部品を取り除き、特定された部品の識別情報を部品の取り外し順序一覧1201の先頭に追加して、図5〜図12までの処理を繰り返す。部品の取り外し順序一覧1201は、組立体501から、部品を取り外す順序を示した情報である。図12に示す部品の取り外し順序一覧1201は、組立体501から、末尾に格納された部品の識別情報に対応する部品から順に取り外すことを示す。また、推定装置100は、追加した部品の識別情報に、特定した取り外しの方向を関連付けて記憶してもよい。
全ての部品を取り除いた後、推定装置100は、締結部品の取り外しの順序を推定する。図13を用いて、締結部品に関する取り外しの順序の設定について説明する。
図13は、締結部品の取り外しの順序を推定する例を示す説明図である。図13では、締結部品の取り外しの順序を推定する例について説明する。推定装置100は、締結部品によって締結される被締結部品を特定する。特定の動作について、図13の(A)を用いて説明する。図13の(A)は、締結部品であるSCR1と、部品Part1〜部品Part3を表示する。
具体的に、推定装置100は、締結部品を覆うバウンディングボックスに含まれる部品を被締結部品として特定する。図13の(A)を例とすると、推定装置100は、部品SCR1を覆うバウンディングボックス1301に含まれる部品を被締結部品として特定する。図13の例では、推定装置100は、バウンディングボックス1301に含まれる部品Part1と部品Part2とを被締結部品として検索する。部品Part3については、バウンディングボックス1301に含まれていないため、推定装置100は、部品Part3を被締結部品として特定しない。
次に、推定装置100は、締結部品の取り外し順序を、特定した被締結部品のうちの最初に取り外す被締結部品の直前に設定する。締結部品の取り外し順序について、図13の(B)を用いて説明する。図13の(B)は、部品の取り外し順序一覧1201を表示する。部品の取り外し順序一覧1201は、はじめに部品Part3を取り外し、次に部品Part2を取り外し、他の部品を取り外した後、部品Part1を取り外すことを示す。
具体的に、推定装置100は、部品SCR1の取り外し順序を、特定した被締結部品Part1、部品Part2のうち、最初に取り外す部品Part2の直前に設定する。推定装置100は、締結部品ごとに図13の(A)、図13の(B)で説明した処理を繰り返す。全ての締結部品に対して図13の(A)、図13の(B)で説明した処理を終了した後、推定装置100は、推定結果となる部品の取り外し順序一覧1201を逆の順序に並び替えて、部品の組立順序として出力する。
続けて、図5〜図13で示した処理を行うフローチャートについて図14〜図18を用いて説明する。
図14は、組立順序推定処理手順の一例を示すフローチャートである。組立順序推定処理は、組立体を組み立てる順序を推定する処理である。推定装置100は、組立体に含まれる各部品を、締結部品と締結部品でない残部品とに分類する(ステップS1401)。具体的には、開発者が命名規約に従って部品の名称を付与するので、推定装置100は、命名規約に基づいて、締結部品と締結部品でない残部品とに分類する。たとえば、推定装置100は、対象の部品の名称が“SCR”から始まる場合に、対象の部品を締結部品に分類し、対象の部品の名称が“SCR”から始まらない場合に、対象の部品を残部品に分類する。
次に、推定装置100は、残部品順序推定処理を実行する(ステップS1402)。残部品順序推定処理の詳細については、図15にて後述する。続けて、推定装置100は、締結部品順序推定処理を実行する(ステップS1403)。締結部品順序推定処理の詳細については、図20にて後述する。次に、推定装置100は、部品の取り外し順序一覧を逆の順序に並び替えて、部品の組立順序として出力する(ステップS1404)。ステップS1404の処理実行後、推定装置100は、組立順序推定処理を終了する。組立順序推定処理を実行することにより、推定装置100は、組立体の制作者に、効率的な部品の組立順序を通知することができる。作業者は、推定装置100によって特定された組立順序に従って組立体を製造する。
図15は、残部品順序推定処理手順の一例を示すフローチャートである。残部品順序推定処理は、締結部品でないと分類された部品の組立順序を推定する処理である。推定装置100は、残部品のうち、ある部品を処理対象部品として選択する(ステップS1501)。次に、推定装置100は、処理対象部品に対して、取り外し部品の候補選択処理を実行する(ステップS1502)。取り外し部品の候補選択処理の詳細については、図16と図17にて後述する。続けて、推定装置100は、残部品の全ての部品を処理対象部品として選択したか否かを判断する(ステップS1503)。まだ選択していない部品がある場合(ステップS1503:No)、推定装置100は、ステップS1501の処理に移行する。移行後、推定装置100は、ステップS1501の処理として、残部品のうち、まだ処理対象部品として選択されていない部品を処理対象部品として選択する。
全ての部品を処理対象部品として選択した場合(ステップS1503:Yes)、推定装置100は、取り外し部品の候補と取り外し方向の候補の組に対して、取り外し部品特定処理を実行する(ステップS1504)。取り外し部品特定処理の詳細については、図18と図19にて後述する。次に、推定装置100は、残部品から、特定した取り外し部品を取り除く(ステップS1505)。続けて、推定装置100は、取り除いた部品を、部品の取り外し順序一覧の先頭に追加する(ステップS1506)。次に、推定装置100は、残部品が0か否かを判断する(ステップS1507)。
残部品が0でない場合(ステップS1507:No)、推定装置100は、処理対象部品として選択された記録を消去する(ステップS1508)。ステップS1508の実行終了後、推定装置100は、ステップS1501の処理に移行する。移行後、推定装置100は、ステップS1501の処理として、処理対象部品を選択した記録を消去したため、残部品の全ての部品のうち、ある部品を処理対象部品として選択する。
残部品が0である場合(ステップS1507:Yes)、推定装置100は、残部品順序推定処理を終了する。残部品順序推定処理を実行することにより、推定装置100は、組立体を組み立てる作業者に、締結部品を除いた残部品の効率的な組立順序を通知することができる。
図16は、取り外し部品の候補選択処理手順の一例を示すフローチャート(その1)である。また、図17は、取り外し部品の候補選択処理手順の一例を示すフローチャート(その2)である。取り外し部品の候補選択処理は、残部品の中から、取り外し部品の候補を選択する処理である。
推定装置100は、ある検証方向を選択する(ステップS1601)。ステップS1601について、複数の検証方向がある場合には、推定装置100は、複数の検証方向から、ある検証方向を選択する。次に、推定装置100は、特定の大きさを有する描画領域を確保する(ステップS1602)。続けて、推定装置100は、描画領域の背景色を黒に設定する(ステップS1603)。次に、推定装置100は、処理対象部品を表示して、処理対象部品の色を白色に設定するとともに、残部品のうちの処理対象部品以外の他の部品を非表示に設定する(ステップS1604)。続けて、推定装置100は、選択した検証方向からの視点方向で、処理対象部品が描画領域に収まる表示倍率で処理対象部品を描画領域に投影する(ステップS1605)。次に、推定装置100は、描画領域内の白色の画素数をカウントする(ステップS1606)。ステップS1606の実行終了後、推定装置100は、図17に示すステップS1701の処理に移行する。
ステップS1606の実行終了後、推定装置100は、他の部品を表示して、他の部品の色を黒色に設定する(ステップS1701)。次に、推定装置100は、選択した検証方向からの視点方向で、処理対象部品が描画領域に収まる表示倍率で処理対象部品を描画領域に投影する(ステップS1702)。続けて、推定装置100は、描画領域内の白色の画素数をカウントする(ステップS1703)。次に、推定装置100は、取り外し易さを算出する(ステップS1704)。具体的に、推定装置100は、ステップS1703の処理で得た画素数/ステップS1606の処理で得た画素数*100を、取り外し易さとして算出する。
続けて、推定装置100は、算出した取り外し易さが閾値以上か否かを判断する(ステップS1705)。取り外し易さが閾値以上である場合(ステップS1705:Yes)、推定装置100は、処理対象部品の識別情報と検証方向の反対方向を組として記憶する(ステップS1706)。ステップS1706の実行処理後、または取り外し易さが閾値以上でない場合(ステップS1705:No)、推定装置100は、全ての検証方向に対して処理したか否かを判断する(ステップS1707)。ステップS1707内の“処理”とは、ステップS1601〜ステップS1706の処理である。処理していない検証方向がある場合(ステップS1707:No)、推定装置100は、ステップS1601の処理に移行する。移行後、推定装置100は、ステップS1601の処理として、未選択の検証方向のうち、ある検証方向を選択する。
全ての検証方向に対して処理した場合(ステップS1707:Yes)、推定装置100は、取り外し部品の候補選択処理を終了する。取り外し部品の候補選択処理を実行することにより、推定装置100は、組立体から取り外し易い部品を検索することができる。
図18は、取り外し部品の特定処理手順の一例を示すフローチャート(その1)である。また、図19は、取り外し部品の特定処理手順の一例を示すフローチャート(その2)である。推定装置100は、取り外し部品の候補と取り外し方向の候補の組を選択する(ステップS1801)。
次に、推定装置100は、直前に取り外した部品があるか否かを判断する(ステップS1802)。直前に取り外した部品がない場合とは、取り外し部品の特定処理を初めて実行する場合である。直前に取り外した部品がある場合(ステップS1802:Yes)、推定装置100は、直前に取り外した部品と取り外し部品の候補の距離を算出する(ステップS1803)。次に、推定装置100は、取り外し難さフィールドの値に、算出した値とp1との乗算結果を加算する(ステップS1804)。
続けて、推定装置100は、直前に取り外した部品の方向と、取り外し方向の候補が異なるか否かを判断する(ステップS1805)。直前に取り外した部品の方向と、取り外し方向の候補が異なる場合(ステップS1805:Yes)、推定装置100は、取り外し難さフィールドの値に、p2を加算する(ステップS1806)。
ステップS1806の実行終了後、直前に取り外した部品がない場合(ステップS1802:No)、または直前に取り外した部品の方向と、取り外し方向の候補が同じである場合(ステップS1805:No)、推定装置100は、図19で示すステップS1901の処理に移行する。
ステップS1806の実行終了後、ステップS1802:No、またはステップS1805:Noである場合、推定装置100は、取り外し部品の候補を、取り外し方向の候補から見た面積を算出する(ステップS1901)。次に、推定装置100は、取り外し難さフィールドの値に、取得した面積とp3との乗算結果を減算する(ステップS1902)。続けて、推定装置100は、取り外し部品の候補を取り外し方向の候補に移動したとき、取り外し部品の候補が組立体から外れるまでの距離を算出する(ステップS1903)。次に、推定装置100は、取り外し難さフィールドの値に、算出した値とp4との乗算結果を加算する(ステップS1904)。
続けて、推定装置100は、全ての取り外し部品の候補と取り外し方向の候補の組に対して、取り外し難さフィールドを更新したか否かを判断する(ステップS1905)。まだ更新していない組がある場合(ステップS1905:No)、推定装置100は、ステップS1801の処理に移行する。移行後、推定装置100は、ステップS1801の処理として、未選択の取り外し部品の候補と取り外し方向の候補の組を選択する。
全ての組に対して取り外し難さフィールドを更新した場合(ステップS1905:Yes)、推定装置100は、取り外し難さフィールドの値が最も低い組の取り外し部品の候補を取り外し部品に特定する(ステップS1906)。また、推定装置100は、取り外し難さフィールドの値が最も低い組の取り外し方向の候補を取り外し方向に特定する(ステップS1907)。ステップS1907の実行終了後、推定装置100は、取り外し部品の特定処理を終了する。取り外し部品の特定処理を実行することにより、推定装置100は、取り外し部品の候補と取り外し方向の候補との組が複数ある場合、作業者が効率的に取り外すことができる取り外し部品を特定することができる。
図20は、締結部品順序推定処理手順の一例を示すフローチャートである。締結部品順序推定処理は、締結部品の組立順序を推定する処理である。推定装置100は、締結部品を選択する(ステップS2001)。次に、推定装置100は、選択した締結部品に締結される被締結部品を特定する(ステップS2002)。続けて、推定装置100は、選択した締結部品の取り外し順序を、特定した被締結部品のうちの最初に取り外す被締結部品の直前に設定する(ステップS2003)。
次に、推定装置100は、全ての締結部品を選択したか否かを判断する(ステップS2004)。選択していない締結部品がある場合(ステップS2004:No)、推定装置100は、ステップS2001の処理に移行する。移行後、推定装置100は、未選択の締結部品の中から、締結部品を選択する。全ての締結部品を選択した場合(ステップS2004:Yes)、推定装置100は、締結部品順序推定処理を終了する。締結部品順序推定処理を実行することにより、推定装置100は、締結部品を除いた残部品に対して、組立体を組み立てる作業者に、締結部品の効率的な部品の組立順序を通知することができる。
以上説明したように、推定装置100によれば、ある方向から、ある部品を見た際の面積と、他の部品を非表示としてある部品を見た際の面積とからある部品の取り外し易さを算出する。これにより、推定装置100は、2つの面積の比較を行うだけで組立順序が推定でき、演算量の低減化を図ることができる。
また、推定装置100によれば、アセンブリ拘束情報や、結合関係情報といった、CADデータが有していない場合もある情報を用いずに、どのようなCADデータでも有する部品の形状情報を用いて組立順序を推定するため、汎用性を高くすることができる。また、推定装置100は、組立順序の作成を前倒しすることができるため、問題点を早期にフィードバックすることができる。また、推定装置100は、推定装置100の利用者が組立順序の経験が少なくても、組立順序を作成することができる。
また、推定装置100によれば、複数の部品に対して取り外し易さを算出し、算出結果から最も取り外し易い部品を特定してもよい。これにより、推定装置100は、作業者に、最も取り外し易い部品の情報を通知することができる。作業者は、推定装置100が通知した最も取り外し易い部品を最後に組み立てるようにすることにより、効率的な組立を行うことができる。
また、推定装置100によれば、部品を取り外し易い順に取り外していき、部品を取り外した順とは逆順に並び替えて組立順序を特定してもよい。これにより、推定装置100は、取り外し易い順序の逆順にすることにより、組立易い組立順序を作業者に通知することができる。
また、推定装置100によれば、締結部品が締結する対象の部品を取り外すタイミングで取り外して、部品を取り外した順とは逆順に並び替えて組立順序を特定してもよい。これにより、推定装置100は、締結部品の効率的な部品の組立順序を作業者に通知することができる。
また、推定装置100によれば、複数の方向で取り外せる部品がある場合、直前に取り外した部品を取り外した方向を優先してもよい。これにより、推定装置100は、作業者の移動を減らすことを図る効率的な組立順序を作業者に通知することができる。
また、推定装置100によれば、取り外せる部品が複数存在する場合、直前に取り外した部品を取り外した方向で取り外せる部品を優先してもよい。これにより、推定装置100は、作業者の移動を減らすことを図る効率的な組立順序を作業者に通知することができる。
また、推定装置100によれば、取り外せる部品が複数存在する場合、組立体の部品の位置から組立体から取り外せたと判定する位置までの距離が短い部品を優先してもよい。これにより、推定装置100は、作業者の手の移動を減らすことを図る効率的な組立順序を作業者に通知することができる。
また、推定装置100によれば、取り外せる部品が複数存在する場合、直前に取り外した部品の位置からの距離が短い部品を優先してもよい。これにより、推定装置100は、作業者の手の移動を減らすことを図る効率的な組立順序を作業者に通知することができる。
なお、本実施の形態で説明した推定方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本推定プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また本推定プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)ある部品を構成要素に含む組立体に関する設計データを用いた部品の取り外し易さの程度の推定プログラムにおいて、
前記設計データを参照して、該ある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の該ある部品の面積と、該ある方向から他の部品によって視野がさえぎられない状況で見た場合の該ある部品の面積との比に基づき算出する、
部品の取り外し易さの程度の推定プログラム。
(付記2)前記設計データを参照して、複数の部品に対して取り外し易さを算出し、算出結果から最も取り外し易い部品を特定する、
付記1に記載の部品の取り外し易さの程度の推定プログラム。
(付記3)部品を取り外し易い順に取り外していき、部品を取り外した順とは逆順に並び替えて組立順序を特定する、
付記2に記載の部品の取り外し易さの程度の推定プログラム。
(付記4)前記設計データに含まれる各部品が締結部品か否かを示す情報を含み、
前記締結部品は、前記締結部品が締結する対象の部品を取り外すタイミングで取り外す、
付記1に記載の部品の取り外し易さの程度の推定プログラム。
(付記5)複数の方向で取り外せる部品がある場合、直前に取り外した部品を取り外した方向を優先する、
付記1に記載の部品の取り外し易さの程度の推定プログラム。
(付記6)取り外せる部品が複数存在する場合、直前に取り外した部品を取り外した方向で取り外せる部品を優先する、
付記1に記載の部品の取り外し易さの程度の推定プログラム。
(付記7)取り外せる部品が複数存在する場合、前記組立体の部品の位置から前記組立体から取り外せたと判定する位置までの距離が短い部品を優先する、
付記1に記載の部品の取り外し易さの程度の推定プログラム。
(付記8)取り外せる部品が複数存在する場合、直前に取り外した部品の位置からの距離が短い部品を優先する、
付記1に記載の部品の取り外し易さの程度の推定プログラム。
(付記9)ある部品を構成要素に含む組立体に関する設計データを用いた部品の取り外し易さの程度の推定プログラムにおいて、
前記設計データを参照して、該ある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の該ある部品の面積と、該ある方向から他の部品によって視野がさえぎられない状況で見た場合の該ある部品の面積との比に基づき算出する、
処理をコンピュータに実行させる部品の取り外し易さの程度の推定プログラムを記録したことを特徴とする記録媒体。
(付記10)ある部品を構成要素に含む組立体に関する設計データを参照して、該ある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の該ある部品の面積と、該ある方向から他の部品によって視野がさえぎられない状況で見た場合の該ある部品の面積との比に基づき算出する算出部を、
有することを特徴とする推定装置。
(付記11)ある部品を構成要素に含む組立体に関する設計データを参照して、該ある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の該ある部品の面積と、該ある方向から他の部品によって視野がさえぎられない状況で見た場合の該ある部品の面積との比に基づき算出する算出部を、
有するコンピュータを含むことを特徴とする推定装置。
(付記12)ある部品を構成要素に含む組立体に関する設計データを用いた部品の取り外し易さの程度を用いる製造方法において、
前記設計データを参照して、該ある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の該ある部品の面積と、該ある方向から他の部品によって視野がさえぎられない状況で見た場合の該ある部品の面積との比に基づき算出し、
算出した取り外し易さの程度に基づいて組立順序を特定し、
特定した組立順序に従って前記組立体を製造する、
ことを特徴とする製造方法。
100 推定装置
101 組立体
301 算出部
302 特定部
311 設計データ

Claims (11)

  1. 立体に関する設計データを用いた部品の取り外し易さの程度を算出する推定プログラムにおいて、
    前記設計データを参照して、前記組立体に含まれるある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の前記ある部品の面積と、前記組立体を前記ある方向から前記組立体に含まれる他の部品を非表示にした状況で見た場合の前記ある部品の面積との比に基づき算出する、
    処理をコンピュータに実行させることを特徴とする推定プログラム。
  2. 前記設計データを参照して、複数の部品に対して取り外し易さを算出し、算出結果から最も取り外し易い部品を特定する、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の推定プログラム。
  3. 部品を取り外し易い順に取り外していき、部品を取り外した順とは逆順に並び替えて組立順序を特定する、
    処理を前記コンピュータに実行させることを特徴とする請求項2に記載の推定プログラム。
  4. 前記設計データに含まれる各部品が締結部品か否かを示す情報を含み、
    前記締結部品は、前記締結部品が締結する対象の部品を取り外すタイミングで取り外す、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の推定プログラム。
  5. 複数の方向で取り外せる部品がある場合、直前に取り外した部品を取り外した方向を優先する、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の推定プログラム。
  6. 取り外せる部品が複数存在する場合、直前に取り外した部品を取り外した方向で取り外せる部品を優先する、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の推定プログラム。
  7. 取り外せる部品が複数存在する場合、前記組立体の部品の位置から前記組立体から取り外せたと判定する位置までの距離が短い部品を優先する、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の推定プログラム。
  8. 取り外せる部品が複数存在する場合、直前に取り外した部品の位置からの距離が短い部品を優先する、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の推定プログラム。
  9. 立体に関する設計データを参照して、前記組立体に含まれるある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の前記ある部品の面積と、前記組立体を前記ある方向から前記組立体に含まれる他の部品を非表示にした状況で見た場合の前記ある部品の面積との比に基づき算出する算出部を、
    有することを特徴とする推定装置。
  10. 組立体に関する設計データを用いた部品の取り外し易さの程度を算出する推定方法において、
    前記設計データを参照して、前記組立体に含まれるある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の前記ある部品の面積と、前記組立体を前記ある方向から前記組立体に含まれる他の部品を非表示にした状況で見た場合の前記ある部品の面積との比に基づき、算出する、
    処理をコンピュータが実行することを特徴とする推定方法。
  11. 組立体に関する設計データを用いた部品の取り外し易さの程度を用いる製造方法において、
    前記設計データを参照して、前記組立体に含まれるある部品をある方向から取り外す場合の取り外し易さの程度を、前記組立体を前記ある方向から見た場合の前記ある部品の面積と、前記組立体を前記ある方向から前記組立体に含まれる他の部品を非表示にした状況で見た場合の前記ある部品の面積との比に基づき、算出し、
    算出した取り外し易さの程度に基づいて組立順序を特定し、
    特定した組立順序に従って前記組立体を製造する、
    ことを特徴とする製造方法。
JP2012242245A 2012-11-01 2012-11-01 推定プログラム、推定装置、推定方法、および製造方法 Active JP6136198B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2012242245A JP6136198B2 (ja) 2012-11-01 2012-11-01 推定プログラム、推定装置、推定方法、および製造方法
US14/024,922 US20140122030A1 (en) 2012-11-01 2013-09-12 Computer product, estimating apparatus, and manufacturing method
EP13185312.9A EP2728501A3 (en) 2012-11-01 2013-09-20 Estimating program, estimating apparatus, and manufacturing method
KR1020130115676A KR101529391B1 (ko) 2012-11-01 2013-09-27 부품 제거 용이도를 추정하는 프로그램이 기록된 기록 매체, 추정 장치 및 제조 방법
CN201310470752.XA CN103809518B (zh) 2012-11-01 2013-10-10 估计方法、估计设备以及制造方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012242245A JP6136198B2 (ja) 2012-11-01 2012-11-01 推定プログラム、推定装置、推定方法、および製造方法

Publications (2)

Publication Number Publication Date
JP2014092887A JP2014092887A (ja) 2014-05-19
JP6136198B2 true JP6136198B2 (ja) 2017-05-31

Family

ID=49231313

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012242245A Active JP6136198B2 (ja) 2012-11-01 2012-11-01 推定プログラム、推定装置、推定方法、および製造方法

Country Status (5)

Country Link
US (1) US20140122030A1 (ja)
EP (1) EP2728501A3 (ja)
JP (1) JP6136198B2 (ja)
KR (1) KR101529391B1 (ja)
CN (1) CN103809518B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7447588B2 (ja) 2020-03-18 2024-03-12 富士通株式会社 ネジの締結状態判定プログラム、ネジの締結状態判定方法および情報処理システム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07112383A (ja) * 1993-08-23 1995-05-02 Mazda Motor Corp 物品の位置認識方法並びに物品の移載制御方法及び移載制御装置
US5523960A (en) * 1994-08-10 1996-06-04 Samsung Electronics Co., Ltd. Evaluation method of assembly sequences
JPH10240324A (ja) * 1997-02-27 1998-09-11 Toshiba Corp 組立順序抽出方法及びその装置
JP3559154B2 (ja) * 1997-11-10 2004-08-25 富士通株式会社 三次元モデル作成装置及び方法並びに三次元モデル作成プログラムを記録したコンピュータ読み取り可能な記録媒体
US5980084A (en) * 1997-11-24 1999-11-09 Sandia Corporation Method and apparatus for automated assembly
JP2000141152A (ja) * 1998-11-09 2000-05-23 Sanyo Electric Co Ltd 組立性評価装置及び方法
US6665423B1 (en) * 2000-01-27 2003-12-16 Eastman Kodak Company Method and system for object-oriented motion-based video description
JP2001334431A (ja) * 2000-05-30 2001-12-04 Mitsubishi Heavy Ind Ltd 組み立て手順生成装置
US6826500B2 (en) * 2001-06-29 2004-11-30 General Electric Company Method and system for automated maintenance and training instruction generation and validation
JP4505277B2 (ja) * 2004-07-22 2010-07-21 シャープ株式会社 作業指図書作成装置、作業指図書作成方法、作業指図書作成プログラム及び作業指図書作成プログラムを記録したコンピュータ読み取り可能な記録媒体
DE102005020822A1 (de) * 2005-04-13 2006-10-19 Daimlerchrysler Ag Verfahren zur Untersuchung eines Systems auf Zerlegbarkeit
JP4603459B2 (ja) * 2005-10-14 2010-12-22 富士通株式会社 カードユニット
JP4859590B2 (ja) 2006-08-17 2012-01-25 株式会社日立製作所 組立物情報生成装置
JP2008112430A (ja) * 2006-10-02 2008-05-15 Sharp Corp 工程図及び組立分解図作成システム、工程図及び組立分解図作成方法、工程図及び組立分解図作成プログラム、並びに記録媒体
JP2010039932A (ja) * 2008-08-07 2010-02-18 Ricoh Co Ltd 画像処理装置、画像処理方法及びプログラム
US8477385B2 (en) * 2009-07-14 2013-07-02 Fuji Xerox Co., Ltd. Image reading apparatus with substrate support, image forming apparatus with substrate support
JP5533094B2 (ja) * 2010-03-18 2014-06-25 株式会社リコー パーツカタログ作成装置、パーツカタログ作成方法及びパーツカタログ作成プログラム
JP2012018514A (ja) * 2010-07-07 2012-01-26 Mitsubishi Electric Engineering Co Ltd アセンブリ構成ファイル生成システム及びアセンブリ生成システム
US8401687B2 (en) * 2010-11-24 2013-03-19 Sap Ag Visual assembly tool
JP5899792B2 (ja) * 2011-10-20 2016-04-06 富士通株式会社 情報生成プログラム、情報生成方法、および情報生成装置
JP6000602B2 (ja) * 2012-03-30 2016-09-28 キヤノン株式会社 体検出方法及び物体検出装置
AU2012244276A1 (en) * 2012-10-30 2014-05-15 Canon Kabushiki Kaisha Method, apparatus and system for detecting a supporting surface region in an image

Also Published As

Publication number Publication date
EP2728501A3 (en) 2018-03-21
US20140122030A1 (en) 2014-05-01
KR20140055983A (ko) 2014-05-09
JP2014092887A (ja) 2014-05-19
KR101529391B1 (ko) 2015-06-16
CN103809518B (zh) 2017-05-17
EP2728501A2 (en) 2014-05-07
CN103809518A (zh) 2014-05-21

Similar Documents

Publication Publication Date Title
JP6098120B2 (ja) 組立順序生成プログラム、組立順序生成装置、および製造方法
CN105740497B (zh) 对工件的加工进行仿真
JP5062884B2 (ja) 画像検索装置、画像検索方法及びプログラム
JP4821000B2 (ja) オブジェクト表示処理装置、オブジェクト表示処理方法、およびオブジェクト表示処理用プログラム
JP5039950B2 (ja) オブジェクト移動制御システム、オブジェクト移動制御方法、サーバ及びコンピュータプログラム
KR20110050382A (ko) 컴퓨터-지원 디자인 시스템에서 오브젝트들의 어셈블리를 디자인하는 방법 및 시스템
CN109202895B (zh) 设计支持装置、设计支持方法及存储设计支持程序的介质
KR20110050383A (ko) 컴퓨터-지원 디자인 시스템에서 오브젝트들의 어셈블리를 디자인하는 방법 및 시스템
JP2014100773A (ja) 組立作業性評価計算装置、および組立作業性評価方法
US10921779B2 (en) Process and system for providing a machining method for manufacturing a feature in a part
JP4693454B2 (ja) 3次元形状比較プログラム及び3次元類似形状検索プログラム
Giri et al. Generating complete disassembly sequences by utilising two-dimensional views
CN111195906A (zh) 用于预测机器人的运动轨迹的方法和系统
US10394967B2 (en) Method and apparatus for automatically assembling components in a computer-aided design (CAD) environment
JP7017852B2 (ja) 記述子を用いた3dオブジェクトの位置特定
JP6136198B2 (ja) 推定プログラム、推定装置、推定方法、および製造方法
JP5915129B2 (ja) データ処理プログラム、データ処理方法、およびデータ処理装置
JP5955485B1 (ja) ポケットのソリッドモデルでのブレンドのモデリング
JP4726465B2 (ja) 3次元形状処理方法および装置
JP2016212613A (ja) プラント建設工程変更影響評価装置
JP2010039932A (ja) 画像処理装置、画像処理方法及びプログラム
WO2012046436A1 (ja) 文書分析装置、文書分析方法および文書分析プログラム
JP2016014933A (ja) 表示プログラム、表示方法、および表示装置
Lehtinen Automatic Label Placement for Technical Drawings
JP6467879B2 (ja) 引出線配置位置決定プログラム、引出線配置位置決定方法および引出線配置位置決定装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160913

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170417

R150 Certificate of patent or registration of utility model

Ref document number: 6136198

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150