(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-07-02
(45)【発行日】2024-07-10
(54)【発明の名称】加工システム、工作機械システム、および、ワーク加工方法
(51)【国際特許分類】
G05B 19/18 20060101AFI20240703BHJP
G05B 19/404 20060101ALI20240703BHJP
B23Q 15/20 20060101ALI20240703BHJP
G05B 19/416 20060101ALI20240703BHJP
B23Q 7/04 20060101ALI20240703BHJP
【FI】
G05B19/18 C
G05B19/404 K
B23Q15/20
G05B19/416 F
B23Q7/04 M
(21)【出願番号】P 2024513344
(86)(22)【出願日】2023-08-30
(86)【国際出願番号】 JP2023031487
【審査請求日】2024-02-28
【早期審査対象出願】
(73)【特許権者】
【識別番号】000114787
【氏名又は名称】ヤマザキマザック株式会社
(74)【代理人】
【識別番号】100196003
【氏名又は名称】石川 太郎
(72)【発明者】
【氏名】丸田 和正
(72)【発明者】
【氏名】松田 達哉
(72)【発明者】
【氏名】馬場 博崇
【審査官】小川 真
(56)【参考文献】
【文献】国際公開第2020/070969(WO,A1)
【文献】特開2000-084794(JP,A)
【文献】特開2008-049459(JP,A)
【文献】特開2019-003646(JP,A)
【文献】特開平08-190433(JP,A)
【文献】特開2017-024095(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18、19/404、19/4155、19/416
B23Q 7/04、15/20
B23B 15/00
B25J 9/22、13/00
(57)【特許請求の範囲】
【請求項1】
ワークを工作機械に搬入し、前記ワークを加工することにより形成される製品を前記工作機械から搬出するロボットと、
前記ワークの重量を第1重量と定義し、前記製品の重量を第2重量と定義するとき、前記第1重量を示すワーク重量データを前記ロボットの制御パラメータの1つとして設定し、前記ワーク重量データが反映された前記制御パラメータと、前記ワークの搬入経路を特定する搬入経路データとに基づいて、前記ロボットの搬入動作を制御し、前記第2重量を示す製品重量データを前記ロボットの前記制御パラメータの1つとして設定し、前記製品重量データが反映された前記制御パラメータと、前記製品の搬出経路を特定する搬出経路データとに基づいて、前記ロボットの搬出動作を制御するロボット制御装置と、
前記ワーク重量データ、または、前記第1重量を算出するための第1基礎データを前記ロボット制御装置に送り、加工プログラムを実行することにより動作指令を生成し、前記製品重量データ、または、前記第2重量を算出するための第2基礎データを前記ロボット制御装置に送る数値制御装置と、
前記動作指令に基づいて、前記ワークを前記製品に加工する前記工作機械と
を具備する
加工システム。
【請求項2】
前記数値制御装置は、前記ワーク重量データを前記ロボット制御装置に送り、
前記ロボット制御装置は、前記数値制御装置から取得する前記ワーク重量データを、前記制御パラメータの1つとして設定する
請求項1に記載の加工システム。
【請求項3】
前記ワークの体積を第1体積と定義し、前記ワークを構成する材料の密度を第1密度と定義するとき、前記ロボット制御装置、および、前記数値制御装置のうちの少なくとも一方は、前記第1体積を示すワーク体積データおよび前記第1密度を示すワーク密度データに基づいて、前記第1重量を算出する第1算出モードを実行可能である
請求項1に記載の加工システム。
【請求項4】
前記数値制御装置は、前記加工プログラムの生成に使用される前記ワークの形状データに基づいて、前記第1体積を算出する第2算出モードを実行可能である
請求項3に記載の加工システム。
【請求項5】
前記数値制御装置は、加工シミュレーションの実行によって生成される前記ワークの形状データに基づいて、前記第1体積を算出する第2算出モードを実行可能である
請求項4に記載の加工システム。
【請求項6】
前記数値制御装置は、前記ワークの前記形状データと、加工工具の種類を特定するデータと、加工範囲を特定するデータと、加工速度を特定するデータとに基づいて、前記加工プログラムを生成する加工プログラム生成モードを実行可能である
請求項4または5に記載の加工システム。
【請求項7】
前記製品の体積を第2体積と定義し、前記製品を構成する材料の密度を第2密度と定義するとき、前記ロボット制御装置、および、前記数値制御装置のうちの少なくとも一方は、前記第2体積を示す製品体積データおよび前記第2密度を示す製品密度データに基づいて、前記第2重量を算出する第3算出モードを実行可能である
請求項1に記載の加工システム。
【請求項8】
前記数値制御装置は、前記ワークを仮想的に加工する加工シミュレーションを実行可能であり、
前記数値制御装置は、前記加工シミュレーションに基づいて、前記第2体積を算出する第4算出モードを実行可能である
請求項7に記載の加工システム。
【請求項9】
前記ロボットは、前記工作機械への前記ワークの搬入と、前記工作機械からの前記製品との搬出とを並列的に実行可能であり、
前記ロボット制御装置は、前記第1重量を示す前記ワーク重量データ、および、前記第2重量を示す前記製品重量データの各々を、前記制御パラメータの1つとして設定し、
前記ロボットが前記ワークおよび前記製品の両方を支持している時、前記ロボット制御装置は、前記ワーク重量データおよび前記製品重量データの両方が反映された前記制御パラメータと、前記搬入経路データまたは前記搬出経路データとに基づいて、前記ロボットの動作を制御する
請求項1に記載の加工システム。
【請求項10】
前記ロボットは、先端アームを含む複数のアームと、前記先端アームに取り付けられ前記ワークを把持する把持体と、を有し、
前記工作機械は、前記ワークを支持するワーク支持装置と、前記ワークおよび前記製品が通過可能な開口部が形成された壁と、前記開口部を開閉するドアと、前記ドアを移動させるドア移動装置と、を有し、
前記数値制御装置は、前記ドアが前記開口部を閉じる閉位置から前記開口部を開放する開位置に移動するように、前記ドア移動装置を制御し、前記ロボット制御装置は、前記ワークが、前記開口部を介して前記ワーク支持装置に移送されるよう、前記ワーク重量データが反映された前記制御パラメータと、前記搬入経路データとに基づいて、複数の前記アームの動作を制御する
請求項1に記載の加工システム。
【請求項11】
前記ロボットは、前記製品を、前記ワークが通過した前記開口部を介して前記工作機械から搬出する
請求項10に記載の加工システム。
【請求項12】
ロボット制御装置によって制御されるロボットからワークを受け取り、数値制御装置から受け取る動作指令に基づいて、前記ワークを製品に加工する工作機械と、
前記ワークの重量を第1重量と定義し、前記製品の重量を第2重量と定義するとき、前記第1重量を示すワーク重量データが前記ロボットの搬入動作を制御するための制御パラメータの1つとして設定されるよう、前記ワーク重量データ、または、前記第1重量を算出するための第1基礎データを前記ロボット制御装置に送り、加工プログラムを実行することにより前記動作指令を生成し、前記第2重量を示す製品重量データが前記ロボットの搬出動作を制御するための制御パラメータの1つとして設定されるよう、前記製品重量データ、または、前記第2重量を算出するための第2基礎データを前記ロボット制御装置に送る前記数値制御装置と
を具備する
工作機械システム。
【請求項13】
前記ワークの体積を第1体積と定義し、前記ワークを構成する材料の密度を第1密度と定義するとき、前記数値制御装置は、
前記加工プログラムの生成に使用される前記ワークの形状データ、または、加工シミュレーションの実行によって生成される前記ワークの形状データに基づいて、前記第1体積を算出する第2算出モードと、
前記第1体積を示すワーク体積データおよび前記第1密度を示すワーク密度データに基づいて前記第1重量を算出する第1算出モードと
を実行可能であり、
前記数値制御装置は、前記ロボット制御装置に、前記ワーク重量データを送る
請求項12に記載の工作機械システム。
【請求項14】
前記数値制御装置は、シミュレーション装置、および、CAD/CAMシステムのうちの少なくとも一方と通信可能であり、
前記ワークの体積を第1体積と定義するとき、前記数値制御装置は、前記シミュレーション装置、および、前記CAD/CAMシステムのうちの少なくとも一方から、前記加工プログラムと、前記第1体積を示すワーク体積データ、および、前記ワーク重量データのうちの少なくとも一方と、を受け取る
請求項12に記載の工作機械システム。
【請求項15】
ロボット制御装置、数値制御装置、シミュレーション装置、および、CAD/CAMシステムのうちの少なくとも一つが、ワークの形状データに基づいて、前記ワークの体積を算出する工程と、
前記ロボット制御装置、前記数値制御装置、前記シミュレーション装置、および、前記CAD/CAMシステムのうちの少なくとも一つが、算出された前記ワークの体積と、前記ワークを構成する材料の密度を示すワーク密度データとに基づいて、前記ワークの重量を算出する工程と、
算出された前記ワークの重量を、前記ロボット制御装置が、ロボットの制御パラメータの1つとして設定する工程と、
前記ロボット制御装置が、前記制御パラメータと、搬入経路データとに基づいて、搬入動作指令を生成する工程と、
前記搬入動作指令を受け取る前記ロボットが、前記ワークを工作機械に搬入する工程と、
前記数値制御装置が、前記ワークに関連付けられた加工プログラムを実行することにより動作指令を生成する工程と、
前記動作指令を受け取る前記工作機械が、前記ワークを製品に加工する工程と、
前記数値制御装置、前記シミュレーション装置、および、前記CAD/CAMシステムのうちの少なくとも一つが、前記製品の形状データまたは加工シミュレーションに基づいて、前記製品の体積を算出する工程と、
前記ロボット制御装置、前記数値制御装置、前記シミュレーション装置、および、前記CAD/CAMシステムのうちの少なくとも一つが、算出された前記製品の体積と、前記製品を構成する材料の密度を示す製品密度データとに基づいて、前記製品の重量を算出する工程と、
算出された前記製品の重量を、前記ロボット制御装置が、前記ロボットの前記制御パラメータの1つとして設定する工程と、
前記ロボット制御装置が、前記制御パラメータと、搬出経路データとに基づいて、搬出動作指令を生成する工程と、
前記搬出動作指令を受け取る前記ロボットが、前記製品を前記工作機械から搬出する工程と
を具備する
ワーク加工方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、加工システム、工作機械システム、および、ワーク加工方法に関する。
【背景技術】
【0002】
ロボットを用いて工作機械にワークを搬入する技術が知られている。
【0003】
関連する技術として、特許文献1には、ロボット・ローダ制御装置が開示されている。特許文献1に記載のロボット・ローダ制御装置は、予めワークの動作経路を動作パタンとして記憶する動作パタン記憶部と、判定条件により動作パタンを判定する動作パタン判定部とを備える。ロボット・ローダ制御装置は、加工機から受信するワークデータと、機械及びロボット・ローダにおける基準位置データと、所定の判定条件とに基づいて、ワーク動作位置経路として適切な動作パタンを自動判定する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、ロボット制御装置にワーク重量データを設定する際の作業負担を低減可能な加工システム、工作機械システム、および、ワーク加工方法を提供することである。
【課題を解決するための手段】
【0006】
いくつかの実施形態における加工システムは、ワークを工作機械に搬入するロボットと、前記ワークの重量を第1重量と定義するとき、前記第1重量を示すワーク重量データを前記ロボットの制御パラメータの1つとして設定し、前記制御パラメータと、前記ワークの搬入経路を特定する搬入経路データとに基づいて、前記ロボットの搬入動作を制御するロボット制御装置と、前記ワーク重量データ、または、前記第1重量を算出するための第1基礎データを前記ロボット制御装置に送り、加工プログラムを実行することにより動作指令を生成する数値制御装置と、前記動作指令に基づいて、前記ワークを製品に加工する前記工作機械と、を具備する。
【0007】
いくつかの実施形態における工作機械システムは、ロボット制御装置によって制御されるロボットからワークを受け取り、数値制御装置から受け取る動作指令に基づいて、前記ワークを製品に加工する工作機械と、前記ワークの重量を第1重量と定義するとき、前記第1重量を示すワーク重量データが前記ロボットの制御パラメータの1つとして設定されるよう、前記ワーク重量データ、または、前記第1重量を算出するための第1基礎データを前記ロボット制御装置に送り、加工プログラムを実行することにより前記動作指令を生成する前記数値制御装置と、を具備する。
【0008】
いくつかの実施形態におけるワーク加工方法は、ロボット制御装置、数値制御装置、シミュレーション装置、および、CAD/CAMシステムのうちの少なくとも一つが、ワークの形状データに基づいて、前記ワークの体積を算出する工程と、前記ロボット制御装置、前記数値制御装置、前記シミュレーション装置、および、前記CAD/CAMシステムのうちの少なくとも一つが、算出された前記ワークの体積と、前記ワークを構成する材料の密度を示すワーク密度データとに基づいて、前記ワークの重量を算出する工程と、
算出された前記ワークの重量を、前記ロボット制御装置が、ロボットの制御パラメータの1つとして設定する工程と、前記ロボット制御装置が、前記制御パラメータと、搬入経路データとに基づいて、搬入動作指令を生成する工程と、前記搬入動作指令を受け取る前記ロボットが、前記ワークを工作機械に搬入する工程と、前記数値制御装置が、前記ワークに関連付けられた加工プログラムを実行することにより動作指令を生成する工程と、前記動作指令を受け取る前記工作機械が、前記ワークを製品に加工する工程と、を具備する。
【発明の効果】
【0009】
本発明により、ロボット制御装置にワーク重量データを設定する際の作業負担を低減可能な加工システム、工作機械システム、および、ワーク加工方法を提供することができる。
【図面の簡単な説明】
【0010】
【
図1】
図1は、第1の実施形態における加工システムを模式的に示す図である。
【
図2】
図2は、第1の実施形態における加工システムを模式的に示す図である。
【
図3】
図3は、制御パラメータの一例を示す図である。
【
図4】
図4は、数値制御装置からロボット制御装置に、ワーク重量データが送られる様子を模式的に示す図である。
【
図5】
図5は、数値制御装置からロボット制御装置に、ワークの重量を算出するための第1基礎データが送られる様子を模式的に示す図である。
【
図6】
図6は、数値制御装置が、制御対象機器を制御可能な様子を模式的に示す図である。
【
図7】
図7は、第1の実施形態における加工システムを模式的に示す図である。
【
図8】
図8は、第1の実施形態における加工システムを模式的に示す図である。
【
図9】
図9は、制御パラメータの一例を示す図である。
【
図11】
図11は、数値制御装置からロボット制御装置に、製品重量データが送られる様子を模式的に示す図である。
【
図12】
図12は、数値制御装置からロボット制御装置に、製品の重量を算出するための第2基礎データが送られる様子を模式的に示す図である。
【
図13】
図13は、第1の実施形態における加工システムを模式的に示す図である。
【
図16】
図16は、数値制御装置が、ロボット制御装置と通信可能な様子を模式的に示す図である。
【
図17】
図17は、ロボット制御装置が、ロボットを制御可能な様子を模式的に示す図である。
【
図18】
図18は、数値制御装置の一例を模式的に示す図である。
【
図19】
図19は、数値制御装置の一例を模式的に示す図である。
【
図20】
図20は、数値制御装置が、シミュレーション装置からデータを受信可能な様子を模式的に示す図である。
【
図21】
図21は、シミュレーション装置の一例を模式的に示す図である。
【
図22】
図22は、数値制御装置が、シミュレーション装置からデータを受信可能な様子を模式的に示す図である。
【
図23】
図23は、数値制御装置が、シミュレーション装置からデータを受信可能な様子を模式的に示す図である。
【
図24】
図24は、数値制御装置が、CAD/CAMシステムからデータを受信可能な様子を模式的に示す図である。
【
図25】
図25は、CAD/CAMシステムの一例を模式的に示す図である。
【
図26】
図26は、数値制御装置によって、ワーク重量データが導出される手順の一例を模式的に示す図である。
【
図27】
図27は、複数の材料と複数の材料の密度とを関連付ける関連付けデータを模式的に示すテーブルである。
【
図28】
図28は、ワークの形状データが入力される様子を模式的に示す図である。
【
図29】
図29は、加工プログラムを生成するためのデータが入力される様子を模式的に示す図である。
【
図30】
図30は、加工プログラムを生成するためのデータが入力される様子を模式的に示す図である。
【
図31】
図31は、数値制御装置によって、製品重量データが導出される手順の一例を模式的に示す図である。
【
図32】
図32は、CAD/CAMシステムの一例を模式的に示す図である。
【
図33】
図33は、数値制御装置の一例を模式的に示す図である。
【
図34】
図34は、数値制御装置の一例を模式的に示す図である。
【
図35】
図35は、工作機械が、ワーク支持装置と、第2ワーク支持装置とを有する様子を模式的に示す図である。
【
図36】
図36は、第2の実施形態における工作機械システムを模式的に示す図である。
【
図37】
図37は、数値制御装置が、制御対象機器を制御可能な様子を模式的に示す図である。
【
図38】
図38は、第3の実施形態におけるワーク加工方法の一例を示すフローチャートである。
【
図39】
図39は、第3の実施形態におけるワーク加工方法の一例を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、図面を参照して、実施形態における加工システム100、工作機械システム1、および、ワーク加工方法について説明する。なお、以下の実施形態の説明において、同一の機能を有する部位、部材については同一の符号を付し、同一の符号が付された部位、部材についての繰り返しとなる説明は省略する。
【0012】
(用語の定義)
本明細書において、ワークEの重量を第1重量w1と定義し、ワークEの体積を第1体積v1と定義し、ワークEを構成する材料の密度(換言すれば、ワークEを構成する材料の単位体積当たりの重量)を第1密度d1と定義する。
【0013】
本明細書において、製品Pには、工作機械6によって加工されることにより形成される全ての物体が包含される。製品Pは、最終製品に限定されない。製品Pは、半製品であってもよい。
【0014】
本明細書において、製品Pの重量を第2重量w2と定義し、製品Pの体積を第2体積v2と定義し、製品Pを構成する材料の密度(換言すれば、製品Pを構成する材料の単位体積当たりの重量)を第2密度d2と定義する。第2密度d2は、通常、第1密度d1と同一である。しかし、工作機械6によって行われる加工が、ワークEに新たな材料を付加することを含む場合等には、第2密度d2は、第1密度d1と異なっていてもよい。
【0015】
(第1の実施形態)
図1乃至
図35を参照して、第1の実施形態における加工システム100について説明する。
図1および
図2は、第1の実施形態における加工システム100を模式的に示す図である。
図3は、制御パラメータQの一例を示す図である。
図4は、数値制御装置5からロボット制御装置3に、ワーク重量データW1が送られる様子を模式的に示す図である。
図5は、数値制御装置5からロボット制御装置3に、ワークの重量を算出するための第1基礎データA1が送られる様子を模式的に示す図である。
図6は、数値制御装置5が、制御対象機器を制御可能な様子を模式的に示す図である。
図7および
図8は、第1の実施形態における加工システム100を模式的に示す図である。
図9および
図10は、制御パラメータQの一例を示す図である。
図11は、数値制御装置5からロボット制御装置3に、製品重量データW2が送られる様子を模式的に示す図である。
図12は、数値制御装置5からロボット制御装置3に、製品の重量を算出するための第2基礎データA2が送られる様子を模式的に示す図である。
図13は、第1の実施形態における加工システム100を模式的に示す図である。
図14および
図15は、制御パラメータQの一例を示す図である。
図16は、数値制御装置5が、ロボット制御装置3と通信可能な様子を模式的に示す図である。
図17は、ロボット制御装置3が、ロボット2を制御可能な様子を模式的に示す図である。
図18および
図19は、数値制御装置5の一例を模式的に示す図である。
図20は、数値制御装置5が、シミュレーション装置8からデータを受信可能な様子を模式的に示す図である。
図21は、シミュレーション装置8の一例を模式的に示す図である。
図22および
図23は、数値制御装置5が、シミュレーション装置8からデータを受信可能な様子を模式的に示す図である。
図24は、数値制御装置5が、CAD/CAMシステム9からデータを受信可能な様子を模式的に示す図である。
図25は、CAD/CAMシステム9の一例を模式的に示す図である。
図26は、数値制御装置5によって、ワーク重量データW1が導出される手順の一例を模式的に示す図である。
図27は、複数の材料と複数の材料の密度とを関連付ける関連付けデータr1を模式的に示すテーブルである。
図28は、ワークの形状データSDが入力される様子を模式的に示す図である。
図29は、加工プログラムを生成するためのデータが入力される様子を模式的に示す図である。
図30は、加工プログラムを生成するためのデータが入力される様子を模式的に示す図である。
図31は、数値制御装置5によって、製品重量データW2が導出される手順の一例を模式的に示す図である。
図32は、CAD/CAMシステム9の一例を模式的に示す図である。
図33および
図34は、数値制御装置5の一例を模式的に示す図である。
図35は、工作機械6が、ワーク支持装置62と、第2ワーク支持装置65とを有する様子を模式的に示す図である。
【0016】
図1に例示されるように、第1の実施形態における加工システム100は、ロボット2と、ロボット制御装置3と、数値制御装置5と、工作機械6と、を備える。
【0017】
図1に記載の例では、工作機械6は、工具Tを保持する加工ヘッド61(例えば、タレット61T)と、ワークを支持するワーク支持装置62と、加工ヘッド61をワーク支持装置62に対して相対移動させる移動装置63と、を有する。工作機械6は、ワークEおよび/または製品が通過可能な開口部OPが形成された壁67と、当該開口部OPを開閉するドア68と、ドア68を移動させるドア移動装置69と、を有していてもよい。
【0018】
図2に例示されるように、ロボット2は、ワークEを工作機械6に搬入する。より具体的には、ロボット2は、ワークEを、開口部OPを介して工作機械6に搬入する。ロボット2は、ワークEを、ワーク支持装置62に受け渡し可能であってもよい。
【0019】
図2に記載の例では、ロボット2は、先端アーム21eを含む複数のアーム21と、ワークEを把持する把持体23(例えば、ロボットハンド230)と、を有する。
図2に記載の例では、把持体23は、先端アーム21eに取り付けられている。
【0020】
図2に記載の例では、ロボット2は、第2把持体24(例えば、第2のロボットハンド240)を有する。第2把持体24は、先端アーム21eに取り付けられている。ロボット2が有する把持体の数は、1つであってもよいし、2つであってもよいし、3つ以上であってもよい。換言すれば、ロボット2から第2把持体24が省略されてもよいし、ロボット2は、把持体23および第2把持体24に加えて、他の把持体を有していてもよい。
【0021】
ロボット制御装置3は、ワークEの重量(換言すれば、第1重量w1)を示すワーク重量データW1を、ロボット2の制御パラメータQの1つとして設定する。制御パラメータQには、例えば、ワーク重量データW1と、先端アーム21eに取り付けられる構造物の各々の重量データとが含まれる。
図3に記載の例では、ロボット制御装置3は、ワーク重量データW1を、ロボット2の制御パラメータQの1つとして設定し、把持体23の重量データ23w(例えば、ロボットハンド230の重量データ)を、ロボット2の制御パラメータQの他の1つとして設定し、第2把持体24の重量データ24w(例えば、第2のロボットハンド240の重量データ)を、ロボット2の制御パラメータQの更に他の1つとして設定する。なお、制御パラメータQに含まれるデータの数は、先端アーム21eに取り付けられる構造物の数等に応じて変化する。
【0022】
ロボット制御装置3は、把持体23がワークEを把持する際に(より具体的には、把持体23がワークEの把握動作を開始する直前から把持体23がワークEの把握動作を完了する直後までの期間の任意のタイミングで)、制御パラメータQのうちの1つであるワーク重量データW1の状態を非アクティブ状態からアクティブ状態に切り替える。こうして、制御パラメータQにワーク重量データW1が反映される。ロボット制御装置3は、制御パラメータQ(より具体的には、ワーク重量データW1がアクティブ化された状態の制御パラメータQ)と、ワークEの搬入経路を特定する搬入経路データ326とに基づいて、ロボット2の搬入動作を制御する。
図4、
図5に記載の例では、制御パラメータQ、および、搬入経路データ326の両方が、ロボット制御装置3のメモリに記憶されている。
【0023】
図4に記載の例では、数値制御装置5は、第1重量w1を示すワーク重量データW1を、ロボット制御装置3に送る。また、ロボット制御装置3は、数値制御装置5から取得するワーク重量データW1を、ロボット2の制御パラメータQの1つとして設定する。
【0024】
代替的に、
図5に例示されるように、数値制御装置5は、ワークEの重量(換言すれば、第1重量w1)を算出するための第1基礎データA1をロボット制御装置3に送ってもよい。第1基礎データA1は、例えば、ワークEの体積を示すワーク体積データV1を含む。第1基礎データA1は、ワーク体積データV1と、ワークEを構成する材料の密度を示すワーク密度データD1と、を含んでいてもよい。
【0025】
図5に記載の例では、ロボット制御装置3は、少なくとも、第1基礎データA1に基づいて、ワーク重量データW1を導出し、導出されたワーク重量データW1を、制御パラメータQの1つに設定する。より具体的には、ロボット制御装置3は、ワーク体積データV1と、ワーク密度データD1とに基づいて、ワーク重量データW1を導出する。また、ロボット制御装置3は、導出されたワーク重量データW1を、制御パラメータQの1つに設定する。
【0026】
図6に記載の例では、数値制御装置5は、ワークEに関連付けられた加工プログラムPMを実行することにより動作指令Cを生成する。工作機械6は、動作指令Cに基づいて、ワークEを製品に加工する。
【0027】
本明細書において、数値制御装置5が、加工プログラムPMを実行することには、数値制御装置5が、加工演算プログラム529を介して加工プログラムPMを実行することが包含される。換言すれば、数値制御装置5が、加工演算プログラム529を実行することにより、数値制御装置5によって加工プログラムPMが処理(換言すれば、解釈)されてもよい。数値制御装置5は、当該処理に基づいて(換言すれば、当該解釈に基づいて)、工作機械6の複数の制御対象機器の各々に送信する動作指令Cを生成する。
【0028】
第1の実施形態における加工システム100では、ロボット2の制御パラメータQに、ワーク重量データW1が反映される。よって、ロボット制御装置3は、ワークEの位置制御をより正確に実行することができる。例えば、ワークEの重量に起因するアーム21の歪等を考慮して、ロボット制御装置3は、アーム21の動作を制御することができる。また、制御パラメータQがより適切に設定されるため、ワークEを搬入中のロボット2と他の物体との衝突の検知に関し、誤検知が生じにくい。
【0029】
更に、第1の実施形態における加工システム100では、ワーク重量データW1、または、ワークEの重量を算出するための第1基礎データA1が、数値制御装置5からロボット制御装置3に送られる。よって、オペレータは、ワークEの重量を、ロボット制御装置3にマニュアル入力する必要がない。例えば、オペレータは、ワークEの種類が切り替えられる毎に、切り替え後のワークEの重量をロボット制御装置3にマニュアル入力する必要がない。よって、オペレータの作業負担が低減される。
【0030】
(任意付加的な構成)
続いて、
図1乃至
図35を参照して、第1の実施形態における加工システム100において採用可能な任意付加的な構成について説明する。
【0031】
(製品Pの搬出)
図8に記載の例において、ロボット2は、製品Pを工作機械6から搬出可能である。より具体的には、ロボット2は、製品Pを、ワーク支持装置62から受け取る。また、ロボット2は、製品Pを、開口部OPを介して工作機械6から搬出する。
【0032】
図9に記載の例において、ロボット制御装置3は、製品Pの重量(換言すれば、第2重量w2)を示す製品重量データW2を、ロボット2の制御パラメータQの1つとして設定する。制御パラメータQには、例えば、製品重量データW2と、先端アーム21eに取り付けられる構造物の各々の重量データとが含まれる。
図9に記載の例では、ロボット制御装置3は、製品重量データW2を、ロボット2の制御パラメータQの1つとして設定し、把持体23の重量データ23w(例えば、ロボットハンド230の重量データ)を、ロボット2の制御パラメータQの他の1つとして設定し、第2把持体24の重量データ24w(例えば、第2のロボットハンド240の重量データ)を、ロボット2の制御パラメータQの更に他の1つとして設定する。なお、制御パラメータQに含まれるデータの数は、先端アーム21eに取り付けられる構造物の数等に応じて変化する。
【0033】
ロボット制御装置3は、把持体23が製品Pを把持する際に(より具体的には、把持体23が製品Pの把握動作を開始する直前から把持体23が製品Pの把握動作を完了する直後までの期間の任意のタイミングで)、制御パラメータQのうちの1つである製品重量データW2の状態を非アクティブ状態(
図9を参照。)からアクティブ状態(
図10を参照。)に切り替える。こうして、制御パラメータQに製品重量データW2が反映される。なお、本明細書において、データがアクティブ状態であることは、当該データが制御パラメータQに反映される状態を意味する。また、本明細書において、データが非アクティブ状態であることは、当該データが制御パラメータQに反映されない状態を意味する。
【0034】
ロボット制御装置3は、製品重量データW2を含む制御パラメータQ(より具体的には、製品重量データW2がアクティブ化された状態の制御パラメータQ)と、製品Pの搬出経路を特定する搬出経路データ327とに基づいて、ロボット2の搬出動作を制御する。
図11に記載の例では、制御パラメータQ、および、搬出経路データ327の両方が、ロボット制御装置3のメモリに記憶されている。
【0035】
図13に例示されるように、ロボット2は、工作機械6へのワークEの搬入と、工作機械6からの製品Pとの搬出とを並列的に実行可能であってもよい。
図13に記載の例では、第2把持体24がワークEを把持している状態で、把持体23は製品Pを把持することができる。
【0036】
この場合、
図14に例示されるように、ロボット制御装置3は、ワーク重量データW1および製品重量データW2の各々を、制御パラメータQの1つとして設定する。また、ロボット2がワークEおよび製品Pの両方を支持している時、ロボット制御装置3は、ワーク重量データW1および製品重量データW2の両方が反映された制御パラメータQ(換言すれば、ワーク重量データW1および製品重量データW2の両方がアクティブ化された状態の制御パラメータQ)と、搬入経路データ326または搬出経路データ327とに基づいて、ロボット2の動作を制御する。
【0037】
例えば、ロボット制御装置3は、ロボット2がワークEを受け取る際に、ワーク重量データW1をアクティブ化する。また、ロボット制御装置3は、ワーク重量データW1がアクティブ化され、製品重量データW2が非アクティブ化された状態の制御パラメータQ(
図15を参照。)と、搬入経路データ326とに基づいて、ロボット2の搬入動作を制御する。その後、ロボット制御装置3は、ワークEを支持するロボット2が製品Pを受け取る際に、製品重量データW2をアクティブ化する。また、ロボット制御装置3は、ワーク重量データW1および製品重量データW2の両方がアクティブ化された状態の制御パラメータQ(
図14を参照。)と、搬入経路データ326または搬出経路データ327とに基づいて、ロボット2の動作を制御する。更にその後、ロボット制御装置3は、ロボット2がワークEをワーク支持装置62に受け渡す際に、ワーク重量データW1を非アクティブ化する。また、ロボット制御装置3は、ワーク重量データW1が非アクティブ化され、製品重量データW2がアクティブ化された状態の制御パラメータQ(
図10を参照。)と、搬出経路データ327とに基づいて、ロボット2の搬出動作を制御する。
【0038】
図11に記載の例では、数値制御装置5は、第2重量w2を示す製品重量データW2を、ロボット制御装置3に送る。また、ロボット制御装置3は、数値制御装置5から取得する製品重量データW2を、ロボット2の制御パラメータQの1つとして設定する。
【0039】
代替的に、
図12に例示されるように、数値制御装置5は、製品Pの重量(換言すれば、第2重量w2)を算出するための第2基礎データA2をロボット制御装置3に送ってもよい。第2基礎データA2は、例えば、製品Pの体積を示す製品体積データV2を含む。第2基礎データA2は、製品体積データV2と、製品Pを構成する材料の密度を示す製品密度データD2と、を含んでいてもよい。なお、製品密度データD2は、通常、ワーク密度データD1と同一である。
【0040】
図12に記載の例では、ロボット制御装置3は、少なくとも、第2基礎データA2に基づいて、製品重量データW2を導出し、導出された製品重量データW2を、制御パラメータQの1つに設定する。より具体的には、ロボット制御装置3は、製品体積データV2と、製品密度データD2とに基づいて、製品重量データW2を導出する。また、ロボット制御装置3は、導出された製品重量データW2を、制御パラメータQの1つに設定する。
【0041】
図11、
図12に記載の例では、ロボット2の制御パラメータQに、製品重量データW2が反映される。よって、ロボット制御装置3は、製品Pの位置制御をより正確に実行することができる。例えば、製品Pの重量に起因するアーム21の歪等を考慮して、ロボット制御装置3は、アーム21の動作を制御することができる。また、制御パラメータQがより適切に設定されるため、製品Pを搬出中のロボット2と他の物体との衝突の検知に関し、誤検知が生じにくい。
【0042】
更に、
図11、
図12に記載の例では、製品重量データW2、または、製品Pの重量を算出するための第2基礎データA2が、数値制御装置5からロボット制御装置3に送られる。よって、オペレータは、製品Pの重量を、ロボット制御装置3にマニュアル入力する必要がない。例えば、オペレータは、製品Pの種類が切り替えられる毎に、切り替え後の製品Pの重量をロボット制御装置3にマニュアル入力する必要がない。よって、オペレータの作業負担が低減される。
【0043】
(数値制御装置5)
1つのコンピュータが数値制御装置5として機能してもよいし、複数のコンピュータが協働して数値制御装置5として機能してもよい。
図16に例示されるように、数値制御装置5は、ハードウェアプロセッサ50(以下、単に、「プロセッサ50」という。)と、メモリ52と、通信回路55と、入力装置56と、ディスプレイ57と、を備える。
図16に記載の例では、プロセッサ50と、メモリ52と、通信回路55と、入力装置56と、ディスプレイ57とが、バス58を介して互いに接続されている。
図16に記載の例では、ディスプレイ57は、入力装置56としても機能するタッチパネル付きディスプレイ572である。
【0044】
メモリ52は、数値制御装置5のプロセッサ50によって読み取り可能な記憶媒体である。メモリ52は、例えば、RAM、ROM、フラッシュメモリ等の不揮発性または揮発性の半導体メモリであってもよいし、磁気ディスクであってもよいし、その他の形式のメモリであってもよい。メモリ52は、データ、および、プログラムを記憶する。メモリ52は、複数箇所に分散配置されていてもよい。
【0045】
図6に例示されるように、通信回路55は、工作機械6の制御対象機器(例えば、加工ヘッド61、ワーク支持装置62、移動装置63、ドア移動装置69等)に、動作指令Cを送信する。また、
図4、
図5に例示されるように、通信回路55は、ロボット制御装置3に、ワーク重量データW1、または、ワークEの重量を算出するための第1基礎データA1等のデータを送信する。
図4、
図5に記載の例では、工作機械6の制御対象機器に動作指令を送信する通信回路55aが、ロボット制御装置3にデータを送信する通信回路55bとは、別の回路である。代替的に、工作機械6の制御対象機器に動作指令を送信する通信回路55aは、ロボット制御装置3にデータを送信する通信回路55bと同じ回路であってもよい。また、ロボット制御装置3と数値制御装置5との間におけるデータの送受は、バスを介して行われてもよい。
【0046】
入力装置56は、タッチパネル付きディスプレイ572に限定されない。例えば、数値制御装置5は、ボタン、スイッチ、レバー、ポインティングデバイス、キーボード等の入力装置と、当該入力装置に入力されたデータ、あるいは、その他の情報を表示するディスプレイと、を備えていてもよい。
【0047】
(ロボット制御装置3)
1つのコンピュータがロボット制御装置3として機能してもよいし、複数のコンピュータが協働してロボット制御装置3として機能してもよい。
図16に例示されるように、ロボット制御装置3は、プロセッサ(以下、数値制御装置5のプロセッサ50と区別するために、「第2プロセッサ30」という。)と、メモリ(以下、数値制御装置5のメモリ52と区別するために、「第2メモリ32」という。)と、通信回路(以下、数値制御装置5の通信回路55と区別するために、「第2通信回路35」という。)と、入力装置(以下、数値制御装置5の入力装置56と区別するために「第2入力装置36」という。)と、ディスプレイ(以下、数値制御装置5のディスプレイ57と区別するために「第2ディスプレイ37」という。)と、を備える。
図16に記載の例では、第2プロセッサ30と、第2メモリ32と、第2通信回路35と、第2入力装置36と、第2ディスプレイ37とが、バス(以下、数値制御装置5のバス58と区別するために「第2バス38」という。)を介して互いに接続されている。
【0048】
第2メモリ32は、第2プロセッサ30によって読み取り可能な記憶媒体である。第2メモリ32は、例えば、RAM、ROM、フラッシュメモリ等の不揮発性または揮発性の半導体メモリであってもよいし、磁気ディスクであってもよいし、その他の形式のメモリであってもよい。第2メモリ32は、データ、および、プログラムを記憶する。第2メモリ32は、複数箇所に分散配置されていてもよい。
【0049】
図17に例示されるように、第2通信回路35は、ロボット2に、搬送動作指令Jを送信する。また、
図4、
図5に例示されるように、第2通信回路35は、数値制御装置5から、ワーク重量データW1、または、ワークEの重量を算出するための第1基礎データA1等のデータを受信する。
図4、
図5に記載の例では、数値制御装置5からデータを受信する第2通信回路35aが、ロボット2に搬送動作指令を送信する第2通信回路35bとは、別の回路である。代替的に、数値制御装置5からデータを受信する第2通信回路35aは、ロボット2に搬送動作指令を送信する第2通信回路35bと同じ回路であってもよい。
【0050】
第2入力装置36は、例えば、タッチパネル付きディスプレイ、ボタン、スイッチ、レバー、ポインティングデバイス、キーボード等である。
【0051】
(加工シミュレーション)
図18に例示されるように、数値制御装置5は、ワークEを仮想的に加工する加工シミュレーションを実行可能であってもよい。数値制御装置5によって加工シミュレーションが実行されることにより、ワークEが仮想的に加工される。
【0052】
図18に記載の例において、数値制御装置5は、メモリ52に記憶された加工プログラムPMを仮想的に実行することにより、加工シミュレーションを実行する。なお、本明細書において、数値制御装置5が、加工プログラムPMを仮想的に実行することには、数値制御装置5が、第2演算プログラムPG2を介して加工プログラムPMを実行することが包含される。換言すれば、数値制御装置5が、第2演算プログラムPG2を実行することにより、数値制御装置5によって加工プログラムPMが処理(換言すれば、解釈)されてもよい。数値制御装置5は、当該処理に基づいて(換言すれば、当該解釈に基づいて)、ディスプレイ57上で、工作機械6の複数の制御対象機器を仮想的に動作させる。
【0053】
図18に記載の例では、数値制御装置5は、加工プログラムPMを仮想的に実行することにより、ワークEの3次元形状データSH1を生成する。また、数値制御装置5は、加工プログラムPMを仮想的に実行することにより、ディスプレイ57上で、ワークEに対して工具T(例えば、切削工具T1)を相対移動させる。
図19に記載の例では、数値制御装置5は、加工プログラムPMを仮想的に実行することにより、製品Pの3次元形状データSH2を生成する。
【0054】
代替的に、
図20に例示されるように、第1の実施形態における数値制御装置5は、数値制御装置5とは別に設けられるシミュレーション装置8と通信可能に構成されていてもよい。
【0055】
図21に記載の例では、シミュレーション装置8は、第3プロセッサ80と、第3メモリ82と、第3通信回路85と、第3入力装置86と、第3ディスプレイ87と、を備える。第3メモリ82は、第3プロセッサ80によって読み取り可能な記憶媒体である。
【0056】
図22に例示されるように、シミュレーション装置8は、ワークEを仮想的に加工する加工シミュレーションを実行可能である。シミュレーション装置8によって加工シミュレーションが実行されることにより、ワークEが仮想的に加工される。
【0057】
図21に記載の例において、シミュレーション装置8は、第3メモリ82に記憶された加工プログラムPMを仮想的に実行することにより、加工シミュレーションを実行する。なお、本明細書において、シミュレーション装置8が、加工プログラムPMを仮想的に実行することには、シミュレーション装置8が、第2演算プログラムPG2を介して加工プログラムPMを実行することが包含される。換言すれば、シミュレーション装置8が、第2演算プログラムPG2を実行することにより、シミュレーション装置8によって加工プログラムPMが処理(換言すれば、解釈)されてもよい。シミュレーション装置8は、当該処理に基づいて(換言すれば、当該解釈に基づいて)、第3ディスプレイ87上で、工作機械6の複数の制御対象機器を仮想的に動作させる。
【0058】
図21に記載の例では、シミュレーション装置8は、加工プログラムPMを仮想的に実行することにより、ワークEの3次元形状データSH1を生成する。また、シミュレーション装置8は、加工プログラムPMを仮想的に実行することにより、ディスプレイ57上で、ワークEに対して工具T(例えば、切削工具T1)を相対移動させる。
図23に記載の例では、シミュレーション装置8は、加工プログラムPMを仮想的に実行することにより、製品Pの3次元形状データSH2を生成する。
【0059】
(CAD/CAMシステム9)
図24に例示されるように、数値制御装置5は、CAD/CAMシステム9と通信可能に構成されていてもよい。本明細書において、「CAD/CAMシステム」とは、数値制御装置5とは別に設けられ、コンピュータによる支援を受けてワークの形状データおよびNCデータを作成するシステムを意味するものとする。付加的に、CAD/CAMシステム9は、製品の形状データを作成してもよい。
【0060】
図25に記載の例では、CAD/CAMシステム9は、第4プロセッサ90と、第4メモリ92と、第4通信回路95と、第4入力装置96と、第4ディスプレイ97と、を備える。第4メモリ92は、第4プロセッサ90によって読み取り可能な記憶媒体である。
【0061】
(第1重量w1の算出)
ワークEの重量(換言すれば、第1重量w1)の算出は、ロボット制御装置3によって行われてもよいし、数値制御装置5によって行われてもよいし、数値制御装置5と通信可能な任意のコンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)によって行われてもよい。第1重量w1の算出は、ワークEの体積(換言すれば、第1体積v1)と、ワークEを構成する材料の密度(換言すれば、第1密度d1)と、に基づいて行われる。より具体的には、第1重量w1は、第1体積v1と第1密度d1との乗算によって求められる。なお、ワークEを構成する材料が第1材料と第2材料とを含む場合、第1重量w1は、第1材料によって構成される部分の体積と、第1材料の密度と、第2材料によって構成される部分の体積と、第2材料の密度とに基づいて、算出される。
【0062】
(第1重量w1の算出が、ロボット制御装置3によって行われる場合)
図5に例示されるように、第1重量w1の算出が、ロボット制御装置3によって行われる場合、ロボット制御装置3は、数値制御装置5から第1重量w1を算出するための第1基礎データA1を受け取る。
【0063】
ロボット制御装置3が数値制御装置5から受け取る第1基礎データA1には、第1体積v1を示すワーク体積データV1が含まれていてもよい。この場合、ロボット制御装置3は、数値制御装置5から受け取るワーク体積データV1と、第2メモリ32に記憶されたワーク密度データD1とに基づいて、第1重量w1を算出する。
【0064】
ロボット制御装置3が数値制御装置5から受け取る第1基礎データA1には、ワーク体積データV1およびワーク密度データD1が含まれていてもよい。この場合、ロボット制御装置3は、数値制御装置5から受け取るワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1を算出する。
【0065】
ロボット制御装置3が数値制御装置5から受け取る第1基礎データA1には、ワークEの形状データが含まれていてもよい。この場合、ロボット制御装置3は、ワークEの形状データに基づいて、ワーク体積データV1を導出する。また、ロボット制御装置3は、ワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1を算出する。
【0066】
(第1重量w1の算出が、数値制御装置5によって行われる場合)
図4に例示されるように、第1重量w1の算出が、数値制御装置5によって行われる場合、数値制御装置5は、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出する。また、数値制御装置5は、第1重量w1を示すワーク重量データW1を、ロボット制御装置3に送る。
【0067】
(第1重量w1の算出が、数値制御装置5およびロボット制御装置3以外の任意のコンピュータによって行われる場合)
第1重量w1の算出が、数値制御装置5およびロボット制御装置3以外の任意のコンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)によって行われる場合、当該コンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)は、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出する。数値制御装置5は、当該コンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)から第1重量w1を示すワーク重量データW1を受け取る。また、数値制御装置5は、第1重量w1を示すワーク重量データW1を、ロボット制御装置3に送る。
【0068】
(第2重量w2の算出)
製品Pの重量(換言すれば、第2重量w2)の算出は、ロボット制御装置3によって行われてもよいし、数値制御装置5によって行われてもよいし、数値制御装置5と通信可能な任意のコンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)によって行われてもよい。第2重量w2の算出は、製品Pの体積(換言すれば、第2体積v2)と、製品Pを構成する材料の密度(換言すれば、第2密度d2)と、に基づいて行われる。より具体的には、第2重量w2は、第2体積v2と第2密度d2との乗算によって求められる。なお、第2密度d2は、通常、第1密度d1(換言すれば、ワークEを構成する材料の密度)と同一である。製品Pを構成する材料が第1材料と第2材料とを含む場合、第2重量w2は、第1材料によって構成される部分の体積と、第1材料の密度と、第2材料によって構成される部分の体積と、第2材料の密度とに基づいて、算出される。
【0069】
(第2重量w2の算出が、ロボット制御装置3によって行われる場合)
図12に例示されるように、第2重量w2の算出が、ロボット制御装置3によって行われる場合、ロボット制御装置3は、数値制御装置5から第2重量w2を算出するための第2基礎データA2を受け取る。
【0070】
ロボット制御装置3が数値制御装置5から受け取る第2基礎データA2には、製品体積データV2が含まれていてもよい。この場合、ロボット制御装置3は、数値制御装置5から受け取る製品体積データV2と、第2メモリ32に記憶された製品密度データD2とに基づいて、第2重量w2を算出する。なお、製品密度データD2は、通常、ワーク密度データD1と同一である。
【0071】
ロボット制御装置3が数値制御装置5から受け取る第2基礎データA2には、製品体積データV2および製品密度データD2が含まれていてもよい。この場合、ロボット制御装置3は、数値制御装置5から受け取る製品体積データV2と、数値制御装置5から受け取る製品密度データD2とに基づいて、第2重量w2を算出する。
【0072】
ロボット制御装置3が数値制御装置5から受け取る第2基礎データA2には、製品Pの形状データが含まれていてもよい。この場合、ロボット制御装置3は、製品Pの形状データに基づいて、製品体積データV2を導出する。また、ロボット制御装置3は、製品体積データV2および製品密度データD2に基づいて、第2重量w2を算出する。
【0073】
(第2重量w2の算出が、数値制御装置5によって行われる場合)
図11に例示されるように、第2重量w2の算出が、数値制御装置5によって行われる場合、数値制御装置5は、製品体積データV2と、製品密度データD2とに基づいて、第2重量w2を算出する。また、数値制御装置5は、第2重量w2を示す製品重量データW2を、ロボット制御装置3に送る。なお、製品密度データD2は、通常、ワーク密度データD1と同一である。
【0074】
(第2重量w2の算出が、数値制御装置5およびロボット制御装置3以外の任意のコンピュータによって行われる場合)
第2重量w2の算出が、数値制御装置5およびロボット制御装置3以外の任意のコンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)によって行われる場合、当該コンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)は、製品体積データV2と、製品密度データD2とに基づいて、第2重量w2を算出する。数値制御装置5は、当該コンピュータ(例えば、シミュレーション装置8、または、CAD/CAMシステム9等)から第2重量w2を示す製品重量データW2を受け取る。また、数値制御装置5は、第2重量w2を示す製品重量データW2を、ロボット制御装置3に送る。
【0075】
(第1算出モードM1)
図4に記載の例では、数値制御装置5は、第1体積v1を示すワーク体積データV1および第1密度d1を示すワーク密度データD1に基づいて、第1重量w1を算出する第1算出モードM1を実行可能である。
【0076】
図4に記載の例では、メモリ52は、ワーク体積データV1と、ワーク密度データD1とを記憶している。また、メモリ52は、プロセッサ50によって実行される演算プログラムPGを記憶している。
図4に記載の例において、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、ワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1を算出する。より具体的には、演算プログラムPGを実行するプロセッサ50は、第1体積v1と第1密度d1とを乗算することにより、第1重量w1を算出する。算出された第1重量w1は、ワーク重量データW1としてメモリ52に記憶される。
【0077】
図26に記載の例では、メモリ52は、ワーク体積データV1と、複数の材料と複数の材料の密度とを、それぞれ、関連付ける関連付けデータr1(
図27を参照。)と、ワークEを構成する材料を特定するデータm1と、を記憶している。
図28に例示されるように、数値制御装置5は、ワークEを構成する材料を特定するデータm1を、入力装置56を介して取得してもよい。換言すれば、ワークEを構成する材料を特定するデータm1は、入力装置56を介して、オペレータによって数値制御装置5に入力されてもよい。代替的に、ワークEを構成する材料を特定するデータm1を、数値制御装置5が、他のコンピュータから取得してもよい。
【0078】
図26に記載の例では、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、ワークEを構成する材料を特定するデータm1と、複数の材料と複数の材料の密度とをそれぞれ関連付ける関連付けデータr1とに基づいて、ワークEを構成する材料の密度(換言すれば、第1密度d1)を導出する。導出された第1密度d1は、ワーク密度データD1としてメモリ52に記憶される。また、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、ワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1を算出する。より具体的には、演算プログラムPGを実行するプロセッサ50は、第1体積v1と第1密度d1とを乗算することにより、第1重量w1を算出する。算出された第1重量w1は、ワーク重量データW1としてメモリ52に記憶される。
【0079】
数値制御装置5が、ワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1を算出する第1算出モードM1を実行可能である場合、オペレータには、ワークEの重量を測定する作業負担が発生しない。
【0080】
図4、
図26では、数値制御装置5のプロセッサ50が、演算プログラムPGを実行することにより、数値制御装置5によって第1重量w1が算出される例が説明された。代替的に、ロボット制御装置3の第2プロセッサ30、シミュレーション装置8の第3プロセッサ80、または、CAD/CAMシステム9の第4プロセッサ90が、演算プログラムPGを実行することにより、ロボット制御装置3、シミュレーション装置8、または、CAD/CAMシステム9によって第1重量w1が算出されてもよい。換言すれば、「(第1算出モードM1)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」、「入力装置56」は、それぞれ、「ロボット制御装置3」、「第2プロセッサ30」、「第2メモリ32」、「第2入力装置36」に読み替え可能である。また、「(第1算出モードM1)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」、「入力装置56」は、それぞれ、「シミュレーション装置8」、「第3プロセッサ80」、「第3メモリ82」、「第3入力装置86」に読み替え可能である。また、「(第1算出モードM1)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」、「入力装置56」は、それぞれ、「CAD/CAMシステム9」、「第4プロセッサ90」、「第4メモリ92」、「第4入力装置96」に読み替え可能である。
【0081】
(第2算出モードM2)
図4に記載の例では、数値制御装置5は、加工プログラムPMの生成に使用されるワークの形状データSDに基づいて、第1体積v1を算出する第2算出モードM2を実行可能である。
【0082】
図28に例示されるように、数値制御装置5は、加工プログラムPMの生成に使用されるワークEの形状データSDを、入力装置56を介して取得してもよい。換言すれば、加工プログラムPMの生成に使用されるワークEの形状データSDは、入力装置56を介して、オペレータによって数値制御装置5に入力されてもよい。代替的に、加工プログラムPMの生成に使用されるワークEの形状データSDを、数値制御装置5が、他のコンピュータから取得してもよい。数値制御装置5によって取得されたワークEの形状データSDは、メモリ52に記憶される。
【0083】
図28に例示されるように、ワークEが中空丸棒である場合には、ワークEの形状データSDは、ワークEの外径SD1と、ワークEの内径SD2と、ワークEの高さSD3と、を含む。
【0084】
図28に記載の例において、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、ワークEの形状データSDに基づいて、第1体積v1を算出する。例えば、ワークEが中空丸棒である場合には、数値制御装置5は、ワークEの外径SD1と、ワークEの内径SD2と、ワークEの高さSD3とに基づいて、第1体積v1を算出する。より具体的には、数値制御装置5は、「第1体積v1=π×高さSD3×(外径SD1×外径SD1-内径SD2×内径SD2)/4」の数式を用いて第1体積v1を算出する。算出された第1体積v1は、ワーク体積データV1としてメモリ52に記憶される。
【0085】
なお、ワークEが中空丸棒以外の形状である場合、第1体積v1を算出するアルゴリズムが上述のアルゴリズムと異なることは言うまでもない。ワークEの形状データSDに基づいて、ワークEの体積(換言すれば、第1体積v1)を算出するアルゴリズムとしては、公知の任意のアルゴリズムを採用可能である。
【0086】
図4、
図28では、数値制御装置5のプロセッサ50が、演算プログラムPGを実行することにより、数値制御装置5によって第1体積v1が算出される例が説明された。代替的に、シミュレーション装置8の第3プロセッサ80が、演算プログラムPGを実行することにより、シミュレーション装置8によって第1体積v1が算出されてもよい。換言すれば、「(第2算出モードM2)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」、「入力装置56」は、それぞれ、「シミュレーション装置8」、「第3プロセッサ80」、「第3メモリ82」、「第3入力装置86」に読み替え可能である。
【0087】
代替的に、
図18、
図22に例示されるように、数値制御装置5またはシミュレーション装置8は、加工シミュレーションの実行によって生成されるワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1を算出する第2算出モードM2を実行可能であってもよい。より具体的には、数値制御装置5またはシミュレーション装置8は、加工プログラムPMを仮想的に実行することにより、ワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)を生成する。また、数値制御装置5またはシミュレーション装置8は、演算プログラムPGを実行することにより、ワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、ワークEの体積(換言すれば、第1体積v1)を算出する。算出された第1体積v1は、ワーク体積データV1としてメモリ52(または、第3メモリ82)に記憶される。
【0088】
数値制御装置5、または、シミュレーション装置8が、第2算出モードM2を実行可能である場合、数値制御装置5、または、シミュレーション装置8は、加工プログラムPMの生成に使用されるワークEの形状データSD、または、加工シミュレーションの実行によって生成されるワークEの形状データに基づいて、第1体積v1を算出することができる。よって、第1体積v1を算出する目的のためだけに、オペレータに、追加のデータ入力が要求されることがない。
【0089】
更に代替的に、CAD/CAMシステム9が、ワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1を算出する第2算出モードM2を実行可能であってもよい。
【0090】
図25に記載の例において、CAD/CAMシステム9は、第4メモリ92に記憶された描画プログラム928を実行することにより、第4入力装置96または第4通信回路95を介して入力されるデータに基づいて、ワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)を作成する。CAD/CAMシステム9(より具体的には、第4プロセッサ90)は、演算プログラムPGを実行することにより、ワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、ワークEの体積(換言すれば、第1体積v1)を算出する。算出された第1体積v1は、ワーク体積データV1として第4メモリ92に記憶される。
【0091】
第1体積v1が、シミュレーション装置8またはCAD/CAMシステム9によって算出される場合、第1体積v1を示すワーク体積データV1は、数値制御装置5に送信される。代替的に、シミュレーション装置8またはCAD/CAMシステム9は、第1体積v1を示すワーク体積データV1およびワーク密度データD1に基づいて、ワーク重量データW1を導出してもよい。この場合、第1重量w1を示すワーク重量データW1が、シミュレーション装置8またはCAD/CAMシステム9から、数値制御装置5に送信される。
【0092】
第2算出モードM2において算出される第1体積v1は、上述の第1算出モードM1が実行される際に、ロボット制御装置3、数値制御装置5、シミュレーション装置8、および、CAD/CAMシステム9のうちの少なくとも一つによって利用される。例えば、数値制御装置5は、第2算出モードM2の実行により算出された第1体積v1と、ワーク密度データD1とに基づいて、第1重量w1を算出する。
【0093】
(加工プログラム生成モードMA)
数値制御装置5は、加工プログラムPMを生成する加工プログラム生成モードMAを実行可能である。
【0094】
図29に記載の例では、数値制御装置5(より具体的には、プロセッサ50)は、ワークEの形状データSD(
図28を参照。)と、加工工具の種類を特定するデータDA2と、加工範囲を特定するデータDA3と、加工速度を特定するデータDA4とに基づいて、加工プログラムPMを生成する加工プログラム生成モードMAを実行可能である。数値制御装置5によって生成された加工プログラムPMは、メモリ52に記憶される。
【0095】
加工工具の種類を特定するデータDA2は、例えば、加工工具が、旋削工具であるのか、ミル工具であるのか、その他の工具であるのかを特定するデータを含む。加工範囲を特定するDA3は、例えば、切込み量を特定するデータ、切込み始点を特定するデータ、および、切込み終点を特定するデータを含む。加工速度を特定するデータDA4は、工具の送り速度を特定するデータを含んでいてもよいし、ミル工具の回転速度を特定するデータを含んでいてもよいし、ワークEを回転させる回転速度を特定するデータを含んでいてもよい。
【0096】
図29では、数値制御装置5によって、加工プログラムPMが生成される例が説明された。代替的に、シミュレーション装置8によって、加工プログラムPMが生成されてもよい。換言すれば、「(加工プログラム生成モードMA)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」は、それぞれ、「シミュレーション装置8」、「第3プロセッサ80」、「第3メモリ82」に読み替え可能である。シミュレーション装置8によって生成された加工プログラムPMは、数値制御装置5に送信される。
【0097】
代替的に、
図30に例示されるように、CAD/CAMシステム9(より具体的には、第4プロセッサ90)が、ワークEの形状データSDと、加工工具の種類を特定するデータDA2と、加工範囲を特定するデータDA3と、加工速度を特定するデータDA4とに基づいて、加工プログラム(より具体的には、EIAプログラムPM1)を生成する加工プログラム生成モードMAを実行可能であってもよい。CAD/CAMシステム9によって生成された加工プログラム(より具体的には、EIAプログラムPM1)は、数値制御装置5に送信される。
【0098】
(第3算出モードM3)
図11に記載の例では、数値制御装置5は、第2体積v2を示す製品体積データV2および第2密度d2を示す製品密度データD2に基づいて、第2重量w2を算出する第3算出モードM3を実行可能である。
【0099】
図11に記載の例では、メモリ52は、製品体積データV2と、製品密度データD2とを記憶している。また、メモリ52は、プロセッサ50によって実行される演算プログラムPGを記憶している。
図11に記載の例において、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、製品体積データV2および製品密度データD2に基づいて、第2重量w2を算出する。より具体的には、演算プログラムPGを実行するプロセッサ50は、第2体積v2と第2密度d2とを乗算することにより、第2重量w2を算出する。算出された第2重量w2は、製品重量データW2としてメモリ52に記憶される。
【0100】
図31に記載の例では、メモリ52は、製品体積データV2と、複数の材料と複数の材料の密度とを、それぞれ、関連付ける関連付けデータr1(
図27を参照。)と、製品Pを構成する材料を特定するデータm2と、を記憶している。なお、製品Pを構成する材料を特定するデータm2は、通常、ワークEを構成する材料を特定するデータm1と同一である。
【0101】
図31に記載の例では、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、製品Pを構成する材料と特定するデータm2と、複数の材料と複数の材料の密度とをそれぞれ関連付ける関連付けデータr1とに基づいて、製品Pを構成する材料の密度(換言すれば、第2密度d2)を導出する。導出された第2密度d2は、製品密度データD2としてメモリ52に記憶される。なお、製品密度データD2がワーク密度データD1と同一である場合には、製品Pを構成する材料の密度を導出する工程(換言すれば、第2密度d2を導出する工程)は、省略される。
【0102】
図31に記載の例では、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、製品体積データV2および製品密度データD2に基づいて、第2重量w2を算出する。より具体的には、演算プログラムPGを実行するプロセッサ50は、第2体積v2と第2密度d2とを乗算することにより、第2重量w2を算出する。算出された第2重量w2は、製品重量データW2としてメモリ52に記憶される。
【0103】
数値制御装置5が、製品体積データV2および製品密度データD2に基づいて、第2重量w2を算出する第3算出モードM3を実行可能である場合、オペレータには、製品Pの重量を測定する作業負担が発生しない。
【0104】
図11、
図31では、数値制御装置5のプロセッサ50が、演算プログラムPGを実行することにより、数値制御装置5によって第2重量w2が算出される例が説明された。代替的に、ロボット制御装置3の第2プロセッサ30、シミュレーション装置8の第3プロセッサ80、または、CAD/CAMシステム9の第4プロセッサ90が、演算プログラムPGを実行することにより、ロボット制御装置3、シミュレーション装置8、または、CAD/CAMシステム9によって第2重量w2が算出されてもよい。換言すれば、「(第3算出モードM3)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」は、それぞれ、「ロボット制御装置3」、「第2プロセッサ30」、「第2メモリ32」に読み替え可能である。また、「(第3算出モードM3)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」は、それぞれ、「シミュレーション装置8」、「第3プロセッサ80」、「第3メモリ82」に読み替え可能である。また、「(第3算出モードM3)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」は、それぞれ、「CAD/CAMシステム9」、「第4プロセッサ90」、「第4メモリ92」に読み替え可能である。
【0105】
(第4算出モードM4)
図19に記載の例では、数値制御装置5は、加工シミュレーションに基づいて、製品Pの体積(換言すれば、第2体積v2)を算出する第4算出モードM4を実行可能である。
【0106】
例えば、数値制御装置5(より具体的には、プロセッサ50)は、加工プログラムPMを仮想的に実行することにより、ワークEのうち切削工具に接触することとなる部分を除去部分として特定する。また、数値制御装置5(より具体的には、プロセッサ50)は、加工プログラムPMを仮想的に実行することにより、ワークEから当該除去部分が除去された製品Pの3次元形状データSH2を生成する。また、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、製品Pの3次元形状データSH2に基づいて、製品Pの体積(換言すれば、第2体積v2)を算出する。算出された第2体積v2は、製品体積データV2としてメモリ52に記憶される。
【0107】
代替的に、数値制御装置5(より具体的には、プロセッサ50)は、加工プログラムPMを仮想的に実行することにより、ワークEのうち切削工具に接触することとなる部分を除去部分として特定する。また、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、当該除去部分の体積を除去体積として算出する。更に、数値制御装置5(より具体的には、プロセッサ50)は、演算プログラムPGを実行することにより、ワークEの体積(換言すれば、第1体積v1)から、当該除去部分の体積を減算することにより、製品Pの体積(換言すれば、第2体積v2)を算出する。算出された第2体積v2は、製品体積データV2としてメモリ52に記憶される。
【0108】
図19では、数値制御装置5が、加工シミュレーションに基づいて、第2体積v2を算出する例が説明された。代替的に、
図23に例示されるように、シミュレーション装置8が、加工シミュレーションに基づいて、第2体積v2を算出してもよい。換言すれば、「(第4算出モードM4)」の説明において、「数値制御装置5」、「プロセッサ50」、「メモリ52」は、それぞれ、「シミュレーション装置8」、「第3プロセッサ80」、「第3メモリ82」に読み替え可能である。
【0109】
図23に例示されるように、シミュレーション装置8によって導出された製品体積データV2を含む第2基礎データA2(または、製品体積データV2および製品密度データD2に基づいて導出される製品重量データW2)は、数値制御装置5に送信される。
【0110】
数値制御装置5、または、シミュレーション装置8が、第4算出モードM4を実行可能である場合、数値制御装置5、または、シミュレーション装置8は、加工シミュレーションに基づいて、第2体積v2を算出することができる。よって、第2体積v2を算出する目的のためだけに、オペレータに、追加のデータ入力が要求されることがない。
【0111】
代替的に、CAD/CAMシステム9が、製品Pの形状データ(より具体的には、製品Pの3次元形状データSH2)に基づいて、第2体積v2を算出する第4算出モードM4を実行可能であってもよい。
【0112】
図32に記載の例において、CAD/CAMシステム9は、第4メモリ92に記憶された描画プログラム928を実行することにより、第4入力装置96または第4通信回路95を介して入力されるデータに基づいて、製品Pの形状データ(より具体的には、製品Pの3次元形状データSH2)を作成する。また、CAD/CAMシステム9(より具体的には、第4プロセッサ90)は、演算プログラムPGを実行することにより、製品Pの形状データ(より具体的には、製品Pの3次元形状データSH2)に基づいて、製品Pの体積(換言すれば、第2体積v2)を算出する。算出された第2体積v2は、製品体積データV2として第4メモリ92に記憶される。
【0113】
図32に例示されるように、CAD/CAMシステム9によって導出された製品体積データV2を含む第2基礎データA2(または、製品体積データV2および製品密度データD2に基づいて導出される製品重量データW2)は、数値制御装置5に送信される。
【0114】
第4算出モードM4において算出される第2体積v2は、上述の第3算出モードM3が実行される際に、ロボット制御装置3、数値制御装置5、シミュレーション装置8、および、CAD/CAMシステム9のうちの少なくとも一つによって利用される。例えば、数値制御装置5は、第4算出モードM4の実行により算出された第2体積v2と、メモリ52に記憶された製品密度データD2とに基づいて、第2重量w2を算出する。
【0115】
(数値制御装置5からロボット制御装置3に送られるデータ)
図4に記載の例では、数値制御装置5は、ロボット制御装置3に、第1重量w1を示すワーク重量データW1を送る。代替的に、
図5に例示されるように、数値制御装置5は、ロボット制御装置3に、第1重量w1を算出するための第1基礎データA1を送ってもよい。
【0116】
ロボット制御装置3は、第1重量w1を示すワーク重量データW1を、ロボット2の制御パラメータQの1つとして設定する(例えば、
図3を参照。)。ロボット2の制御パラメータQにワーク重量データW1が反映される場合、ロボット制御装置3は、ワークEの位置制御をより正確に実行することができる。例えば、ワークEの重量に起因するアーム21の歪等を考慮して、ロボット制御装置3は、アーム21の動作を制御することができる。また、制御パラメータQがより適切に設定されるため、ワークEを搬入中のロボット2と他の物体との衝突の検知に関し、誤検知が生じにくい。
【0117】
制御パラメータQは、ロボット2と障害物との衝突を検知する衝突判定パラメータのうちの1つとして設定されてもよい。例えば、
図4に記載の例では、ロボット2は加速度センサ25を有する。加速度センサ25は、アーム21に配置されてもよいし、把持体23に配置されてもよい。ロボット制御装置3は、加速度センサ25から受け取る信号と、ワーク重量データW1が反映された制御パラメータQを含む衝突判定パラメータとに基づいて、ロボット2あるいはワークEと、障害物(例えば、オペレータあるいは物品)との間の衝突の有無を判定する。また、ロボット2あるいはワークEと、障害物とが衝突したと判定される場合に、ロボット制御装置3は、ロボット2の動作を停止させる。制御パラメータQにワーク重量データW1が反映されていない場合、衝突の誤検知が生じやすくなる。例えば、加速度センサ25によって示される加速度が変化した場合に、ロボット制御装置3は、当該変化が、衝突に起因するのか、ワークE等の慣性に起因するのかを正確に判断することができない。
【0118】
図11に記載の例では、数値制御装置5は、ロボット制御装置3に、第2重量w2を示す製品重量データW2を送る。代替的に、
図12に記載に例示されるように、数値制御装置5は、ロボット制御装置3に、第2重量w2を算出するための第2基礎データA2を送ってもよい。
【0119】
ロボット制御装置3は、第2重量w2を示す製品重量データW2を、ロボット2の制御パラメータQの1つとして設定する(例えば、
図10を参照。)。ロボット2の制御パラメータQに製品重量データW2が反映される場合、ロボット制御装置3は、製品Pの位置制御をより正確に実行することができる。例えば、製品Pの重量に起因するアーム21の歪等を考慮して、ロボット制御装置3は、アーム21の動作を制御することができる。また、制御パラメータQがより適切に設定されるため、製品Pを搬出中のロボット2と他の物体との衝突の検知に関し、誤検知が生じにくい。製品重量データW2が反映された制御パラメータQは、ロボット2と障害物との衝突を検知する衝突判定パラメータのうちの1つとして設定されてもよい。
【0120】
図33に例示されるように、数値制御装置5は、ロボット制御装置3に、ワークの外形寸法を特定する第1データDT1、および/または、工作機械の構成要素の外形寸法を特定する第2データDT2を送ってもよい。付加的に、数値制御装置5は、ロボット制御装置3に、ワークEが取り付けられる支持装置を識別する第3データDT3を送ってもよい。
図33に記載の例では、第1データDT1は、ワークEの高さ寸法h1、ワークEの掴み高さh2を含む。第2データDT2は、爪の高さ寸法h3を含む。また、第3データDT3は、ワーク支持装置62を特定する識別データhd1を含む。
【0121】
ロボット制御装置3は、例えば、第1データDT1、第2データDT2、および、第3データDT3に基づいて、搬入経路データ326を設定する。また、ロボット制御装置3は、ワーク重量データW1が反映された制御パラメータQと、搬入経路データ326とに基づいて、ロボット2の搬入動作(換言すれば、ロボット2がワークEを工作機械6に搬入する動作)を制御する。
【0122】
図34に例示されるように、数値制御装置5は、ロボット制御装置3に、製品Pの外形寸法を特定する第4データDT4、および/または、工作機械の構成要素の外形寸法を特定する第5データDT5を送ってもよい。付加的に、数値制御装置5は、ロボット制御装置3に、製品Pが取り外される支持装置を識別する第6データDT6を送ってもよい。
図34に記載の例では、第4データDT4は、製品Pの高さ寸法h4、製品Pの掴み高さh5を含む。第5データDT5は、爪の高さ寸法h6を含む。また、第6データDT6は、第2ワーク支持装置65を特定する識別データhd2を含む。
【0123】
ロボット制御装置3は、例えば、第4データDT4、第5データDT5、および、第6データDT6に基づいて、搬出経路データ327を設定する。また、ロボット制御装置3は、製品重量データW2が反映された制御パラメータQと、搬出経路データ327とに基づいて、ロボット2の搬出動作(換言すれば、ロボット2が製品Pを工作機械6から搬出する動作)を制御する。
【0124】
図35に記載の例では、(1)ロボット2によって工作機械6に搬入されるワークEが、ワーク支持装置62に取り付けられ、(2)一部に加工が施されたワークEが、ワーク支持装置62から第2ワーク支持装置65に移載され、(3)第2ワーク支持装置65によって支持されたワークEが製品Pに加工され、(4)第2ワーク支持装置65によって支持された製品Pが、ロボット2に受け渡される手順が、想定されている。この場合、上述の第6データDT6は、上述の第3データDT3とは異なる。他方、
図13に記載の例では、ワーク支持装置62によって支持された製品Pが、ロボット2に受け渡される手順が、想定されている。この場合、上述の第6データDT6は、上述の第3データDT3と同一である。
【0125】
(第2の実施形態)
図1乃至
図37を参照して、第2の実施形態における工作機械システム1について説明する。
図36は、第2の実施形態における工作機械システム1を模式的に示す図である。
図37は、数値制御装置5が、制御対象機器を制御可能な様子を模式的に示す図である。
【0126】
第2の実施形態では、第1の実施形態と異なる点を中心に説明する。他方、第2の実施形態では、第1の実施形態で説明済みの事項についての繰り返しとなる説明は省略する。したがって、第2の実施形態において、明示的に説明をしなかったとしても、第1の実施形態において説明済みの事項を第2の実施形態に適用できることは言うまでもない。逆に、第2の実施形態で説明される全ての事項は、第1の実施形態に適用可能である。
【0127】
図36に例示されるように、第2の実施形態における工作機械システム1は、工作機械6と、数値制御装置5と、を備える。
【0128】
図36に記載の例では、工作機械6は、工具Tを保持する加工ヘッド61(例えば、タレット61T)と、ワークを支持するワーク支持装置62と、加工ヘッド61をワーク支持装置62に対して相対移動させる移動装置63と、を有する。工作機械6は、ワークおよび/または製品が通過可能な開口部OPが設けられた壁67と、当該開口部OPを開閉するドア68と、ドア68を移動させるドア移動装置69と、を有していてもよい。また、工作機械6は、ワーク支持装置62とは別に設けられる第2ワーク支持装置65を有していてもよい。
【0129】
図35に例示されるように、工作機械6は、ロボット制御装置3によって制御されるロボット2からワークEを受け取る。また、
図37に例示されるように、工作機械6は、数値制御装置5から受け取る動作指令Cに基づいて、ワークEを製品に加工する。
【0130】
図4に記載の例では、第1重量w1を示すワーク重量データW1がロボット2の制御パラメータQの1つとして設定されるよう、数値制御装置5は、ワーク重量データW1を、ロボット制御装置3に送る。ワーク重量データW1を受け取るロボット制御装置3は、当該ワーク重量データW1を、ロボット2の制御パラメータQの1つとして設定する(例えば、
図3を参照。)。
【0131】
代替的に、
図5に記載の例では、第1重量w1を示すワーク重量データW1がロボット2の制御パラメータQの1つとして設定されるよう、数値制御装置5は、第1重量w1を算出するための第1基礎データA1を、ロボット制御装置3に送る。第1基礎データA1は、例えば、ワーク体積データV1を含む。第1基礎データA1は、ワーク体積データV1と、ワーク密度データD1と、を含んでいてもよい。
【0132】
第1基礎データA1を受け取るロボット制御装置3は、第1基礎データA1に基づいてワーク重量データW1を導出し、当該ワーク重量データW1を、ロボット2の制御パラメータQの1つとして設定する(例えば、
図3を参照。)。
【0133】
図33に記載の例では、数値制御装置5は、ワークの外形寸法を特定する第1データDT1、工作機械の構成要素の外形寸法を特定する第2データDT2、および/または、ワークEが取り付けられる支持装置を識別する第3データDT3を、ロボット制御装置3に送る。ロボット制御装置3は、例えば、第1データDT1、第2データDT2、第3データDT3、および、工作機械の構成要素の位置データ(例えば、ワーク支持装置62の位置データ、および、開口部OPの位置データ)に基づいて、ワークの搬入経路を特定する搬入経路データ326を設定する。
【0134】
図37に例示されるように、数値制御装置5は、ワークEに関連付けられた加工プログラムPMを実行することにより動作指令Cを生成する。生成された動作指令Cは、数値制御装置5から工作機械6に送信され、工作機械6は、数値制御装置5から受け取る動作指令Cに基づいて、ワークEを製品に加工する。
【0135】
工作機械6、数値制御装置5、ロボット2、および、ロボット制御装置3については、第1の実施形態において説明済みであるため、工作機械6、数値制御装置5、ロボット2、および、ロボット制御装置3についての繰り返しとなる説明は省略する。
【0136】
第2の実施形態における工作機械システム1は、第1の実施形態における加工システム100と同様の効果を奏する。
【0137】
図35に例示されるように、工作機械6は、ロボット制御装置3によって制御されるロボット2に製品Pを受け渡し可能に構成されてもよい。
【0138】
図11に記載の例では、製品重量データW2がロボット2の制御パラメータQの1つとして設定されるよう、数値制御装置5は、製品重量データW2を、ロボット制御装置3に送る。製品重量データW2を受け取るロボット制御装置3は、当該製品重量データW2を、ロボット2の制御パラメータQの1つとして設定する(例えば、
図10を参照。)。
【0139】
代替的に、
図12に記載の例では、製品重量データW2がロボット2の制御パラメータの1つとして設定されるよう、数値制御装置5は、第2重量w2を算出するための第2基礎データA2を、ロボット制御装置3に送る。第2基礎データA2は、例えば、製品体積データV2を含む。第2基礎データA2は、製品体積データV2と、製品密度データD2と、を含んでいてもよい。なお、製品密度データD2は、通常、ワーク密度データD1と同一である。
【0140】
第2基礎データA2を受け取るロボット制御装置3は、第2基礎データA2に基づいて製品重量データW2を導出し、当該製品重量データW2を、ロボット2の制御パラメータQの1つとして設定する(例えば、
図10を参照。)。
【0141】
図34に記載の例では、数値制御装置5は、製品Pの外形寸法を特定する第4データDT4、工作機械の構成要素の外形寸法を特定する第5データDT5、および/または、製品Pが取り外される支持装置を識別する第6データDT6を、ロボット制御装置3に送る。ロボット制御装置3は、例えば、第4データDT4、第5データDT5、第6データDT6、および、工作機械の構成要素の位置データ(例えば、第2ワーク支持装置65の位置データ、および、開口部OPの位置データ)に基づいて、製品の搬出経路を特定する搬出経路データ327を設定する。
【0142】
(任意付加的な構成)
続いて、
図1乃至
図37を参照して、第2の実施形態における工作機械システム1(または、第1の実施形態における加工システム100)において採用可能な任意付加的な構成について説明する。
【0143】
(動作指令C)
図37に記載の例では、数値制御装置5は、加工プログラムPMを実行することにより第1動作指令C1を生成する。数値制御装置5から第1動作指令C1を受け取るドア移動装置69は、ドア68を、閉位置(換言すれば、開口部OPを閉じる位置)から、開位置(換言すれば、開口部OPを開放する位置)に移動させる。ロボット制御装置3は、ワークEが、開口部OPを介してワーク支持装置62に移送されるよう、ワーク重量データW1が反映された制御パラメータQと、搬入経路データ326とに基づいて、ロボット2の搬入動作を制御する。
【0144】
図37に記載の例では、数値制御装置5は、加工プログラムPMを実行することにより第2動作指令C2を生成する。数値制御装置5から第2動作指令C2を受け取るドア移動装置69は、ドア68を、開位置(換言すれば、開口部OPを開放する位置)から、閉位置(換言すれば、開口部OPを閉じる位置)に移動させる。
【0145】
図37に記載の例では、数値制御装置5は、加工プログラムPMを実行することにより第3動作指令C3を生成する。数値制御装置5から第3動作指令C3を受け取るワーク支持装置62は、ワークEを支持する支持体(例えば、ワークEを把持する爪)を、第1軸AXまわりに回転させる。また、数値制御装置5は、加工プログラムPMを実行することにより第4動作指令C4を生成する。数値制御装置5から第4動作指令C4を受け取る移動装置63は、工具TがワークEに接触するよう、加工ヘッド61をワーク支持装置62に対して相対移動させる。こうして、ワークEが工具Tによって切削される。数値制御装置5は、加工プログラムPMを実行することにより第5動作指令C5を生成してもよい。数値制御装置5から第5動作指令C5を受け取る加工ヘッド61は、工具T2を工具の中心軸まわりに回転させる。こうして、ワークEが工具T2によってミル加工される。
【0146】
数値制御装置5は、加工プログラムPMを実行することにより移載指令を生成してもよい。移載指令を受信する工作機械6は、ワーク支持装置62から第2ワーク支持装置65にワークEを移載する。当該移載は、ワーク支持装置62および第2ワーク支持装置65自体によって行われてもよいし、ワーク支持装置62および第2ワーク支持装置65とは別に設けられる移載装置によって行われてもよい。
【0147】
図37に記載の例では、数値制御装置5は、加工プログラムPMを実行することにより第6動作指令C6を生成する。数値制御装置5から第6動作指令C6を受け取るドア移動装置69は、ドア68を、閉位置(換言すれば、開口部OPを閉じる位置)から、開位置(換言すれば、開口部OPを開放する位置)に移動させる。ロボット制御装置3は、製品Pが、開口部OPを介して工作機械6から取り出されるよう、製品重量データW2が反映された制御パラメータQと、搬出経路データ327とに基づいて、ロボット2の搬出動作を制御する。
【0148】
(ロボット制御装置3)
図35に記載の例では、数値制御装置5は、ロボット制御装置3と通信可能に接続されている。数値制御装置5とロボット制御装置3とは、有線によって接続されてもよいし、無線によって接続されてもよい。数値制御装置5とロボット制御装置3とが1つのユニット内に組み込まれる場合には、数値制御装置5とロボット制御装置3とがバスによって通信可能に接続されてもよい。
【0149】
(シミュレーション装置8)
図20に記載の例では、数値制御装置5は、シミュレーション装置8と通信可能に接続されている。数値制御装置5とシミュレーション装置8とは、有線によって接続されてもよいし、無線によって接続されてもよい。
【0150】
(CAD/CAMシステム9)
図24に記載の例では、数値制御装置5は、CAD/CAMシステム9と通信可能に接続されている。数値制御装置5とCAD/CAMシステム9とは、有線によって接続されてもよいし、無線によって接続されてもよい。
【0151】
(第2算出モードM2)
図28に記載の例では、数値制御装置5は、加工プログラムPMの生成に使用されるワークの形状データSDに基づいて、第1体積v1(換言すれば、ワークEの体積)を算出する第2算出モードM2を実行可能である。また、
図18に記載の例では、数値制御装置5は、加工シミュレーションの実行によって生成されるワークの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1(換言すれば、ワークEの体積)を算出する第2算出モードM2を実行可能である。第2算出モードM2の実行により算出された第1体積v1は、ワーク体積データV1としてメモリ52に記憶される。
【0152】
代替的に、
図22に例示されるように、シミュレーション装置8が、加工プログラムPMの生成に使用されるワークの形状データSD、または、加工シミュレーションの実行によって生成されるワークの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1(換言すれば、ワークEの体積)を算出する第2算出モードM2を実行可能であってもよい。更に代替的に、
図25に例示されるように、CAD/CAMシステム9が、ワークの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1(換言すれば、ワークEの体積)を算出する第2算出モードM2を実行可能であってもよい。
【0153】
シミュレーション装置8、または、CAD/CAMシステム9によって第2算出モードM2が実行される場合、数値制御装置5は、ワーク体積データV1、または、ワーク重量データW1(より具体的には、ワーク体積データV1およびワーク密度データD1に基づいて導出されるワーク重量データW1)を、シミュレーション装置8、または、CAD/CAMシステム9から受け取るように構成される。
【0154】
第2算出モードM2については、第1の実施形態において説明済みであるため、第2算出モードM2についての繰り返しとなる説明は省略する。
【0155】
(第1算出モードM1)
図4に記載の例では、数値制御装置5は、ワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1(換言すれば、ワークEの重量)を算出する第1算出モードM1を実行可能である。第1算出モードM1の実行により算出された第1重量w1は、ワーク重量データW1としてメモリ52に記憶される。また、数値制御装置5は、当該ワーク重量データW1を、ロボット制御装置3に送る。
【0156】
代替的に、シミュレーション装置8、または、CAD/CAMシステム9が、ワーク体積データV1およびワーク密度データD1に基づいて、第1重量w1(換言すれば、ワークEの重量)を算出する第1算出モードM1を実行可能であってもよい。この場合、数値制御装置5は、第1重量w1を示すワーク重量データW1を、シミュレーション装置8、または、CAD/CAMシステム9から受け取るように構成される。
【0157】
第1算出モードM1については、第1の実施形態において説明済みであるため、第1算出モードM1についての繰り返しとなる説明は省略する。
【0158】
図19に記載の例では、数値制御装置5は、加工シミュレーションに基づいて、製品Pの体積(換言すれば、第2体積v2)を算出する第4算出モードM4を実行可能である。第4算出モードM4の実行により算出された第2体積v2は、製品体積データV2としてメモリ52に記憶される。
【0159】
代替的に、
図23に例示されるように、シミュレーション装置8が、加工シミュレーションに基づいて、製品Pの体積(換言すれば、第2体積v2)を算出する第4算出モードM4を実行可能であってもよい。更に代替的に、
図32に例示されるように、CAD/CAMシステム9が、製品Pの形状データ(より具体的には、製品Pの3次元形状データSH2)に基づいて、第2体積v2を算出する第4算出モードM4を実行可能であってもよい。
【0160】
シミュレーション装置8、または、CAD/CAMシステム9によって第4算出モードM4が実行される場合、数値制御装置5は、製品体積データV2、または、製品重量データW2(より具体的には、製品体積データV2および製品密度データD2に基づいて導出される製品重量データW2)を、シミュレーション装置8、または、CAD/CAMシステム9から受け取るように構成される。
【0161】
第4算出モードM4については、第1の実施形態において説明済みであるため、第4算出モードM4についての繰り返しとなる説明は省略する。
【0162】
(第3算出モードM3)
図11に記載の例では、数値制御装置5は、製品体積データV2および製品密度データD2に基づいて、第2重量w2(換言すれば、製品Pの重量)を算出する第3算出モードM3を実行可能である。第3算出モードM3の実行により算出された第2重量w2は、製品重量データW2としてメモリ52に記憶される。また、数値制御装置5は、当該製品重量データW2を、ロボット制御装置3に送る。なお、製品密度データD2は、通常、ワーク密度データD1と同一である。
【0163】
代替的に、シミュレーション装置8、または、CAD/CAMシステム9が、製品体積データV2および製品密度データD2に基づいて、第2重量w2(換言すれば、製品Pの重量)を算出する第3算出モードM3を実行可能であってもよい。この場合、数値制御装置5は、第2重量w2を示す製品重量データW2を、シミュレーション装置8、または、CAD/CAMシステム9から受け取るように構成される。
【0164】
第3算出モードM3については、第1の実施形態において説明済みであるため、第3算出モードM3についての繰り返しとなる説明は省略する。
【0165】
(加工プログラム生成モードMA)
図29に記載の例では、数値制御装置5は、加工プログラムPMを生成する加工プログラム生成モードMAを実行可能である。加工プログラム生成モードMAの実行により生成された加工プログラムPMは、メモリ52に記憶される。
【0166】
代替的に、シミュレーション装置8が、加工プログラムPMを生成する加工プログラム生成モードMAを実行可能であってもよい。更に代替的に、CAD/CAMシステム9が、加工プログラム(より具体的には、EIAプログラムPM1)を生成する加工プログラム生成モードMAを実行可能であってもよい。
【0167】
加工プログラムが、シミュレーション装置8、または、CAD/CAMシステム9によって生成される場合、数値制御装置5は、当該加工プログラムを、シミュレーション装置8、または、CAD/CAMシステム9から受け取るように構成される。
【0168】
加工プログラム生成モードMAについては、第1の実施形態において説明済みであるため、加工プログラム生成モードMAについての繰り返しとなる説明は省略する。
【0169】
(第3の実施形態)
図1乃至
図39を参照して、第3の実施形態におけるワーク加工方法について説明する。
図38および
図39は、第3の実施形態におけるワーク加工方法の一例を示すフローチャートである。
【0170】
第3の実施形態におけるワーク加工方法は、第1の実施形態における加工システム100を用いて行われてもよいし、他の加工システムを用いて行われてもよい。加工システム100については、第1の実施形態において説明済みであるため、加工システム100についての繰り返しとなる説明は省略する。第3の実施形態におけるワーク加工方法は、第2の実施形態における工作機械システム1を用いて行われてもよいし、他の工作機械システムを用いて行われてもよい。工作機械システム1については、第2の実施形態において説明済みであるため、工作機械システム1についての繰り返しとなる説明は省略する。
【0171】
第1ステップST1において、ワークEの体積が算出される。第1ステップST1は、ワーク体積算出工程である。ワーク体積算出工程において、ロボット制御装置3、数値制御装置5、シミュレーション装置8、および、CAD/CAMシステム9のうちの少なくとも一つは、ワークEの形状データに基づいて、第1体積v1(換言すれば、ワークEの体積)を算出する。
【0172】
図28に記載の例では、ワーク体積算出工程(第1ステップST1)は、数値制御装置5(または、シミュレーション装置8)が、加工プログラムPMの生成に使用されるワークの形状データSDに基づいて、第1体積v1を算出することを含む。
【0173】
図28に例示されるように、加工プログラムPMの生成に使用されるワークEの形状データSDは、入力装置56を介して、オペレータによって数値制御装置5に入力されてもよい。代替的に、他のコンピュータから、通信回路55を介して、加工プログラムPMの生成に使用されるワークEの形状データSDが、数値制御装置5に入力されてもよい。
【0174】
代替的に、
図18、
図22に例示されるように、ワーク体積算出工程(第1ステップST1)は、数値制御装置5(または、シミュレーション装置8)が、加工シミュレーションの実行によって生成されるワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1を算出することを含んでいてもよい。より具体的には、ワーク体積算出工程(第1ステップST1)は、(1)数値制御装置5(または、シミュレーション装置8)が、加工プログラムPMを仮想的に実行することにより、ワークEの3次元形状データSH1を生成することと、(2)数値制御装置5(または、シミュレーション装置8)が、演算プログラムPGを実行することにより、ワークEの3次元形状データSH1に基づいて、第1体積v1を算出することと、を含む。
【0175】
更に代替的に、
図25に例示されるように、ワーク体積算出工程(第1ステップST1)は、CAD/CAMシステム9が、ワークEの形状データ(より具体的には、ワークEの3次元形状データSH1)に基づいて、第1体積v1を算出することを含んでいてもよい。
【0176】
第1体積v1の算出が数値制御装置5によって行われる場合、第1体積v1を示すワーク体積データV1は、数値制御装置5のメモリ52に記憶される。第1体積v1の算出がロボット制御装置3によって行われる場合、第1体積v1を示すワーク体積データV1は、ロボット制御装置3の第2メモリ32に記憶される。第1体積v1の算出がシミュレーション装置8によって行われる場合、第1体積v1を示すワーク体積データV1は、シミュレーション装置8の第3メモリ82に記憶される。第1体積v1の算出がCAD/CAMシステム9によって行われる場合、第1体積v1を示すワーク体積データV1は、CAD/CAMシステム9の第4メモリ92に記憶される。
【0177】
第1体積v1の算出がシミュレーション装置8またはCAD/CAMシステム9によって行われる場合、第1体積v1を示すワーク体積データV1は、シミュレーション装置8またはCAD/CAMシステム9から、数値制御装置5に送信されてもよい。この場合、ワーク体積データV1は、数値制御装置5のメモリ52に記憶される。ワーク体積データV1は、数値制御装置5からロボット制御装置3に送信されてもよい(後述の第3ステップST3を参照。)。この場合、ワーク体積データV1は、ロボット制御装置3の第2メモリ32に記憶される。
【0178】
第2ステップST2において、第1重量w1(換言すれば、ワークEの重量)が算出される。第2ステップST2は、ワーク重量算出工程である。ワーク重量算出工程において、ロボット制御装置3、数値制御装置5、シミュレーション装置8、および、CAD/CAMシステム9のうちの少なくとも一つは、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出する。
【0179】
図4に記載の例では、数値制御装置5のメモリ52には、ワーク体積データV1と、ワーク密度データD1とが記憶されている。この場合、ワーク重量算出工程(第2ステップST2)は、演算プログラムPGを実行する数値制御装置5が、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出することを含んでいてもよい。
【0180】
図26に記載の例では、数値制御装置5のメモリ52には、ワーク体積データV1と、複数の材料と複数の材料の密度とを、それぞれ、関連付ける関連付けデータr1(
図27を参照。)と、ワークEを構成する材料を特定するデータm1とが記憶されている。この場合、ワーク重量算出工程(第2ステップST2)は、演算プログラムPGを実行する数値制御装置5が、ワーク体積データV1と、上述の関連付けデータr1と、ワークEを構成する材料を特定するデータm1とに基づいて、第1重量w1を算出することを含んでいてもよい。より具体的には、ワーク重量算出工程(第2ステップST2)は、(1)上述の関連付けデータr1と、ワークEを構成する材料を特定するデータm1とに基づいて、数値制御装置5が、ワーク密度データD1を導出することと、(2)導出されたワーク密度データD1と、ワーク体積データV1とに基づいて、数値制御装置5が第1重量w1を算出することと、を含んでいてもよい。
【0181】
図21に記載の例では、シミュレーション装置8の第3メモリ82には、ワーク体積データV1と、ワーク密度データD1とが記憶されている。この場合、ワーク重量算出工程(第2ステップST2)は、演算プログラムPGを実行するシミュレーション装置8が、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出することを含んでいてもよい。
【0182】
図21に記載の例では、シミュレーション装置8の第3メモリ82には、ワーク体積データV1と、複数の材料と複数の材料の密度とを、それぞれ、関連付ける関連付けデータr1(
図27を参照。)と、ワークEを構成する材料を特定するデータm1とが記憶されている。この場合、ワーク重量算出工程(第2ステップST2)は、演算プログラムPGを実行するシミュレーション装置8が、ワーク体積データV1と、上述の関連付けデータr1と、ワークEを構成する材料を特定するデータm1とに基づいて、第1重量w1を算出することを含んでいてもよい。
【0183】
図5に記載の例では、ロボット制御装置3の第2メモリ32には、ワーク体積データV1と、ワーク密度データD1とが記憶されている。この場合、ワーク重量算出工程(第2ステップST2)は、演算プログラムPGを実行するロボット制御装置3が、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出することを含んでいてもよい。
【0184】
図25に記載の例では、CAD/CAMシステム9の第4メモリ92には、ワーク体積データV1と、ワーク密度データD1とが記憶されている。この場合、ワーク重量算出工程(第2ステップST2)は、演算プログラムPGを実行するCAD/CAMシステム9が、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出することを含んでいてもよい。
【0185】
第1重量w1の算出が数値制御装置5によって行われる場合、第1重量w1を示すワーク重量データW1は、数値制御装置5のメモリ52に記憶される。第1重量w1の算出がロボット制御装置3によって行われる場合、第1重量w1を示すワーク重量データW1は、ロボット制御装置3の第2メモリ32に記憶される。第1重量w1の算出がシミュレーション装置8によって行われる場合、第1重量w1を示すワーク重量データW1は、シミュレーション装置8の第3メモリ82に記憶される。第1重量w1の算出がCAD/CAMシステム9によって行われる場合、第1重量w1を示すワーク重量データW1は、CAD/CAMシステム9の第4メモリ92に記憶される。
【0186】
第1重量w1の算出がシミュレーション装置8またはCAD/CAMシステム9によって行われる場合、第1重量w1を示すワーク重量データW1は、シミュレーション装置8またはCAD/CAMシステム9から、数値制御装置5に送信される。この場合、ワーク重量データW1は、数値制御装置5のメモリ52に記憶される。第1重量w1の算出がロボット制御装置3以外によって行われる場合、ワーク重量データW1は、数値制御装置5からロボット制御装置3に送信される(後述の第3ステップST3を参照。)。この場合、ワーク重量データW1は、ロボット制御装置3の第2メモリ32に記憶される。
【0187】
第3ステップST3において、数値制御装置5から、ロボット制御装置3に、データが送信される。第3ステップST3は、データ送信工程である。
【0188】
データ送信工程(第3ステップST3)は、第1重量w1を算出するための第1基礎データA1(
図5を参照。)、および、ワーク重量データW1(
図4を参照。)のうちの少なくとも一方を、数値制御装置5から、ロボット制御装置3に送信することを含む。なお、ワーク体積算出工程(第1ステップST1)、および、ワーク重量算出工程(第2ステップST2)の両方がロボット制御装置3によって行われる場合には、第1基礎データA1、および、ワーク重量データW1のうちの少なくとも一方を、数値制御装置5からロボット制御装置3に送信する工程は省略されてもよい。
【0189】
第1基礎データA1は、例えば、ワーク体積データV1を含む。第1基礎データA1が、数値制御装置5からロボット制御装置3に送信される場合、データ送信工程(第3ステップST3)は、ワーク重量算出工程(第2ステップST2)の前に実行される。また、ワーク重量算出工程(第2ステップST2)において、ロボット制御装置3は、ワーク体積データV1と、ワーク密度データD1とに基づいて、第1重量w1を算出する。
【0190】
ワーク重量データW1が、数値制御装置5からロボット制御装置3に送信される場合、データ送信工程(第3ステップST3)は、ワーク重量算出工程(第2ステップST2)の後に実行される。
【0191】
図33に例示されるように、データ送信工程(第3ステップST3)は、数値制御装置5から、ロボット制御装置3に、ワークの外形寸法を特定する第1データDT1、および/または、工作機械の構成要素の外形寸法を特定する第2データDT2を送信することを含んでいてもよい。付加的に、データ送信工程(第3ステップST3)は、数値制御装置5から、ロボット制御装置3に、ワークEが取り付けられる支持装置を識別する第3データDT3を送信することを含んでいてもよい。
【0192】
データ送信工程(第3ステップST3)は、ロボット制御装置3から数値制御装置5に対してデータ要求信号が送信されることをトリガーとして実行されてもよい。代替的に、データ送信工程(第3ステップST3)は、ロボット制御装置3からのリクエストの有無に関係なく、数値制御装置5によって実行されてもよい。
【0193】
第4ステップST4において、ロボット制御装置3は、ロボット2の搬入動作を制御するためのデータを設定する。第4ステップST4は、第1設定工程である。
【0194】
図3に記載の例では、第1設定工程(第4ステップST4)は、ロボット制御装置3が、ワーク重量データW1をロボット2の制御パラメータQの1つとして設定することを含む。
図3に例示されるように、制御パラメータQには、先端アーム21eに取り付けられる構造物の各々の重量データが含まれていてもよい。
【0195】
第1設定工程(第4ステップST4)は、ロボット制御装置3が、上述の第1データDT1、上述の第2データDT2、および、上述の第3データDT3に基づいて、搬入経路データ326を設定することを含んでいてもよい。
【0196】
第5ステップST5において、搬入動作指令が生成される。第5ステップST5は、第1の指令生成工程である。第1の指令生成工程(第5ステップST5)は、ロボット制御装置3が、ワーク重量データW1が反映された制御パラメータQと、搬入経路データ326とに基づいて、搬入動作指令を生成することを含む。第1の指令生成工程(第5ステップST5)は、把持体23がワークEを把持する際に(より具体的には、把持体23がワークEの把握動作を開始する直前から把持体23がワークEの把握動作を完了する直後までの期間の任意のタイミングで)、ロボット制御装置3が、制御パラメータQのうちの1つであるワーク重量データW1の状態を非アクティブ状態からアクティブ状態に切り替えることを含んでいてもよい。ワーク重量データW1の状態がアクティブ状態に切り替えられた後、ロボット制御装置3は、ワーク重量データW1がアクティブ化された状態の制御パラメータQと、ワークEの搬入経路を特定する搬入経路データ326とに基づいて、ロボット2の搬入動作指令を生成する。
【0197】
第6ステップST6において、ワークEが工作機械6に搬入される。第6ステップST6は、搬入工程である。搬入工程(第6ステップST6)は、搬入動作指令を受け取るロボット2が、ワークEを工作機械6に搬入することを含む。搬入工程(第6ステップST6)は、第1の指令生成工程(第5ステップST5)と並列的に実行されてもよい。より具体的には、ロボット制御装置3が、ロボット2の搬入動作指令の一部を生成することと、当該搬入動作指令の一部に基づいて、ロボット2がワークEを工作機械6に搬入する動作の一部を実行することとが、ワークEの搬入開始からワークEの搬入完了までの間に段階的に繰り返し実行されてもよい。
【0198】
搬入工程(第6ステップST6)は、(1)ドア移動装置69がドア68を閉位置から開位置に移動させることと、(2)搬入動作指令を受け取るロボット2が、ワークEを工作機械6に搬入することと、(3)ワークEが工作機械6に搬入された後、ドア移動装置69がドア68を開位置から閉位置に移動させること、とを含んでいてもよい。
【0199】
第7ステップST7において、工作機械6を制御するための動作指令C(
図6を参照。)が生成される。第7ステップST7は、第2の指令生成工程である。第2の指令生成工程(第7ステップST7)は、数値制御装置5が、ワークEに関連付けられた加工プログラムPMを実行することにより動作指令Cを生成することを含む。第2の指令生成工程(第7ステップST7)は、例えば、移動装置63を制御する移動動作指令(C4)を生成することを含む。
【0200】
第8ステップST8において、ワークEが製品Pに加工される。第8ステップST8は、加工工程である。加工工程(第8ステップST8)は、動作指令Cを受け取る工作機械6が、ワークEを製品Pに加工することを含む。加工工程(第8ステップST8)は、例えば、移動動作指令(C4)を受け取る移動装置63が、工具TがワークEに接触するよう、加工ヘッド61をワーク支持装置62に対して相対移動させることを含む。工具TがワークEに接触することにより、工具TによってワークEが加工される。
【0201】
第3の実施形態におけるワーク加工方法では、ロボット2の制御パラメータQに、ワーク重量データW1が反映される。よって、ロボット制御装置3は、ワークEの位置制御をより正確に実行することができる。例えば、ワークEの重量に起因するアーム21の歪等を考慮して、ロボット制御装置3は、アーム21の動作を制御することができる。また、制御パラメータQがより適切に設定されるため、ワークEを搬入中のロボット2と他の物体との衝突の検知に関し、誤検知が生じにくい。
【0202】
更に、第3の実施形態におけるワーク加工方法では、オペレータは、ワークEの重量を、ロボット制御装置3にマニュアル入力する必要がない。例えば、オペレータは、ワークEの種類が切り替えられる毎に、切り替え後のワークEの重量をロボット制御装置3にマニュアル入力する必要がない。よって、オペレータの作業負担が低減される。
【0203】
付加的に、第3の実施形態におけるワーク加工方法は、ロボット2が、製品Pを工作機械6から搬出する工程(より具体的には、以下の第9ステップST9乃至第14ステップST14)を有していてもよい。
【0204】
第9ステップST9において、製品Pの体積が算出される。第9ステップST9は、製品体積算出工程である。製品体積算出工程において、数値制御装置5、シミュレーション装置8、および、CAD/CAMシステム9のうちの少なくとも一つは、製品Pの形状データ、または、加工シミュレーションに基づいて、第2体積v2(換言すれば、製品Pの体積)を算出する。
【0205】
図19、
図23に記載の例では、製品体積算出工程(第9ステップST9)において、数値制御装置5(または、シミュレーション装置8)が、加工シミュレーションに基づいて、第2体積v2(換言すれば、製品Pの体積)を算出する。
【0206】
より具体的には、製品体積算出工程(第9ステップST9)は、(1)加工プログラムPMを仮想的に実行する数値制御装置5またはシミュレーション装置8が、ワークEのうち切削工具に接触することとなる部分を除去部分として特定することと、(2)加工プログラムPMを仮想的に実行する数値制御装置5またはシミュレーション装置8が、ワークEから当該除去部分が除去された製品Pの3次元形状データSH2を生成することと、(3)演算プログラムPGを実行する数値制御装置5またはシミュレーション装置8が、製品Pの3次元形状データSH2に基づいて、第2体積v2(換言すれば、製品Pの体積)を算出することと、を含む。
【0207】
代替的に、製品体積算出工程(第9ステップST9)は、(1)加工プログラムPMを仮想的に実行する数値制御装置5またはシミュレーション装置8が、ワークEのうち切削工具に接触することとなる部分を除去部分として特定することと、(2)演算プログラムPGを実行する数値制御装置5またはシミュレーション装置8が、当該除去部分の体積を除去体積として算出することと、(3)演算プログラムPGを実行する数値制御装置5またはシミュレーション装置8が、第1体積v1(換言すれば、ワークEの体積)から、当該除去部分の体積を減算することにより、第2体積v2(換言すれば、製品Pの体積)を算出することと、を含む。
【0208】
更に代替的に、
図32に例示されるようには、製品体積算出工程(第9ステップST9)は、CAD/CAMシステム9が、製品Pの形状データ(より具体的には、製品Pの3次元形状データSH2)に基づいて、第2体積v2を算出することを含んでいてもよい。
【0209】
第2体積v2の算出が数値制御装置5によって行われる場合、第2体積v2を示す製品体積データV2は、数値制御装置5のメモリ52に記憶される。第2体積v2の算出がシミュレーション装置8によって行われる場合、第2体積v2を示す製品体積データV2は、シミュレーション装置8の第3メモリ82に記憶される。第2体積v2の算出がCAD/CAMシステム9によって行われる場合、第2体積v2を示す製品体積データV2は、CAD/CAMシステム9の第4メモリ92に記憶される。
【0210】
第2体積v2の算出がシミュレーション装置8またはCAD/CAMシステム9によって行われる場合、第2体積v2を示す製品体積データV2は、シミュレーション装置8またはCAD/CAMシステム9から、数値制御装置5に送信されてもよい。この場合、製品体積データV2は、数値制御装置5のメモリ52に記憶される。製品体積データV2は、数値制御装置5からロボット制御装置3に送信されてもよい(後述の第11ステップST11を参照。)。この場合、製品体積データV2は、ロボット制御装置3の第2メモリ32に記憶される。
【0211】
第10ステップST10において、第2重量w2(換言すれば、製品Pの重量)が算出される。第10ステップST10は、製品重量算出工程である。製品重量算出工程において、ロボット制御装置3、数値制御装置5、シミュレーション装置8、および、CAD/CAMシステム9のうちの少なくとも一つは、製品体積データV2と、製品密度データD2とに基づいて、第2重量w2を算出する。なお、製品密度データD2は、通常、ワーク密度データD1と同一である。
【0212】
第2重量w2の算出が数値制御装置5によって行われる場合、第2重量w2を示す製品重量データW2は、数値制御装置5のメモリ52に記憶される。第2重量w2の算出がロボット制御装置3によって行われる場合、第2重量w2を示す製品重量データW2は、ロボット制御装置3の第2メモリ32に記憶される。第2重量w2の算出がシミュレーション装置8によって行われる場合、第2重量w2を示す製品重量データW2は、シミュレーション装置8の第3メモリ82に記憶される。第2重量w2の算出がCAD/CAMシステム9によって行われる場合、第2重量w2を示す製品重量データW2は、CAD/CAMシステム9の第4メモリ92に記憶される。
【0213】
第2重量w2の算出がシミュレーション装置8またはCAD/CAMシステム9によって行われる場合、第2重量w2を示す製品重量データW2は、シミュレーション装置8またはCAD/CAMシステム9から、数値制御装置5に送信される。この場合、製品重量データW2は、数値制御装置5のメモリ52に記憶される。第2重量w2の算出がロボット制御装置3以外によって行われる場合、製品重量データW2は、数値制御装置5からロボット制御装置3に送信される(後述の第11ステップST11を参照。)。この場合、製品重量データW2は、ロボット制御装置3の第2メモリ32に記憶される。
【0214】
なお、製品体積算出工程(第9ステップST9)、製品重量算出工程(第10ステップST10)は、それぞれ、ワーク体積算出工程(第1ステップST1)、ワーク重量算出工程(第10ステップST10)が実行されるタイミングに近いタイミングで実行されてもよい。例えば、製品体積算出工程(第9ステップST9)、および、製品重量算出工程(第10ステップST10)は、データ送信工程(第3ステップST3)の前に実行されてもよい。
【0215】
第11ステップST11において、数値制御装置5から、ロボット制御装置3に、データが送信される。第3ステップST3は、第2のデータ送信工程である。
【0216】
第2のデータ送信工程(第11ステップST11)は、第2重量w2を算出するための第2基礎データA2(
図12を参照。)、および、製品重量データW2(
図11を参照。)のうちの少なくとも一方を、数値制御装置5から、ロボット制御装置3に送信することを含む。
【0217】
第2基礎データA2は、例えば、製品体積データV2を含む。第2基礎データA2が、数値制御装置5からロボット制御装置3に送信される場合、第2のデータ送信工程(第11ステップST11)は、製品重量算出工程(第10ステップST10)の前に実行される。また、製品重量算出工程(第11ステップST11)において、ロボット制御装置3は、製品体積データV2と、製品密度データD2とに基づいて、第2重量w2を算出する。
【0218】
製品重量データW2が、数値制御装置5からロボット制御装置3に送信される場合、第2のデータ送信工程(第11ステップST11)は、製品重量算出工程(第10ステップST10)の後に実行される。
【0219】
図34に例示されるように、第2のデータ送信工程(第11ステップST11)は、数値制御装置5から、ロボット制御装置3に、製品の外形寸法を特定する第4データDT4、および/または、工作機械の構成要素の外形寸法を特定する第5データDT5を送信することを含んでいてもよい。付加的に、第2のデータ送信工程(第11ステップST11)は、数値制御装置5から、ロボット制御装置3に、製品Pが取り外される支持装置を識別する第6データDT6を送信することを含んでいてもよい。
【0220】
第2のデータ送信工程(第11ステップST11)は、データ送信工程(第3ステップST3)の後に行われてもよいし、データ送信工程(第3ステップST3)と同じタイミングで行われてもよい。例えば、第2データ送信工程(第11ステップST11)が、データ送信工程(第3ステップST3)に含まれていてもよい。この場合、データ送信工程(第3ステップST3)において、ワーク重量データW1、製品重量データW2、第1データDT1、第2データDT2、第3データDT3、第4データDT4、第5データDT5、および、第6データDT6を含むデータが、数値制御装置5からロボット制御装置3に送信されてもよい。
【0221】
第12ステップST12において、ロボット制御装置3は、ロボット2の搬出動作を制御するためのデータを設定する。第12ステップST12は、第2設定工程である。
【0222】
図10に記載の例では、第2設定工程(第12ステップST12)は、ロボット制御装置3が、製品重量データW2をロボット2の制御パラメータQの1つとして設定することを含む。
図10に例示されるように、制御パラメータQには、先端アーム21eに取り付けられる構造物の各々の重量データが含まれていてもよい。
【0223】
第2設定工程(第12ステップST12)は、ロボット制御装置3が、上述の第4データDT4、上述の第5データDT5、および、上述の第6データDT6に基づいて、搬出経路データ327を設定することを含んでいてもよい。
【0224】
第2設定工程(第12ステップST12)は、第1設定工程(第4ステップST4)の後に行われてもよいし、第1設定工程(第4ステップST4)と同じタイミングで行われてもよい。例えば、第1設定工程(第4ステップST4)において、ワーク重量データW1をロボット2の制御パラメータQの1つとして設定することと、製品重量データW2をロボット2の制御パラメータQの1つとして設定することとの両方が行われてもよい。
【0225】
第13ステップST13において、搬出動作指令が生成される。第13ステップST13は、第3の指令生成工程である。第3の指令生成工程(第13ステップST13)は、ロボット制御装置3が、製品重量データW2が反映された制御パラメータQと、搬出経路データ327とに基づいて、搬出動作指令を生成することを含む。第3の指令生成工程(第13ステップST13)は、把持体23が製品Pを把持する際に(より具体的には、把持体23が製品Pの把握動作を開始する直前から把持体23が製品Pの把握動作を完了する直後までの期間の任意のタイミングで)、ロボット制御装置3が、制御パラメータQのうちの1つである製品重量データW2の状態を非アクティブ状態からアクティブ状態に切り替えることを含んでいてもよい。製品重量データW2の状態がアクティブ状態に切り替えられた後、ロボット制御装置3は、製品重量データW2がアクティブ化された状態の制御パラメータQと、製品Pの搬出経路を特定する搬出経路データ327とに基づいて、ロボット2の搬出動作指令を生成する。
【0226】
第14ステップST14において、製品Pが工作機械6から搬出される。第14ステップST14は、搬出工程である。搬出工程(第14ステップST14)は、搬出動作指令を受け取るロボット2が、製品Pを工作機械6から搬出することを含む。搬出工程(第14ステップST14)は、第3の指令生成工程(第13ステップST13)と並列的に実行されてもよい。より具体的には、ロボット制御装置3が、ロボット2の搬出動作指令の一部を生成することと、当該搬出動作指令の一部に基づいて、ロボット2が製品Pを工作機械6から搬出する動作の一部を実行することとが、製品Pの搬出開始から製品Pの搬出完了までの間に段階的に繰り返し実行されてもよい。
【0227】
本発明は上記各実施形態または各変形例に限定されず、本発明の技術思想の範囲内において、各実施形態または各変形例は適宜変形又は変更され得ることは明らかである。また、各実施形態または各変形例で用いられる種々の技術は、技術的矛盾が生じない限り、他の実施形態または他の変形例にも適用可能である。さらに、各実施形態または各変形例における任意付加的な構成は、適宜省略可能である。
【0228】
例えば、実施形態において、ロボット2は、非自走型のロボットであってもよいし、自走型のロボットであってもよい。また、実施形態において、工作機械6の種類に特に制限はない。工作機械6は、旋盤であってもよいし、マシニングセンタであってもよいし、複合加工機であってもよい。工作機械6は、付加製造装置を含んでいてもよい。
【符号の説明】
【0229】
1…工作機械システム、2…ロボット、3…ロボット制御装置、5…数値制御装置、6…工作機械、8…シミュレーション装置、9…CAD/CAMシステム、21…アーム、21e…先端アーム、23…把持体、23w…把持体の重量データ、24…第2把持体、24w…第2把持体の重量データ、25…加速度センサ、30…第2プロセッサ、32…第2メモリ、35、35a、35b…第2通信回路、36…第2入力装置、37…第2ディスプレイ、38…第2バス、50…ハードウェアプロセッサ、52…メモリ、55、55a、55b…通信回路、56…入力装置、57…ディスプレイ、58…バス、61…加工ヘッド、61T…タレット、62…ワーク支持装置、63…移動装置、65…第2ワーク支持装置、67…壁、68…ドア、69…ドア移動装置、80…第3プロセッサ、82…第3メモリ、85…第3通信回路、86…第3入力装置、87…第3ディスプレイ、90…第4プロセッサ、92…第4メモリ、95…第4通信回路、96…第4入力装置、97…第4ディスプレイ、100…加工システム、230…ロボットハンド、240…第2のロボットハンド、326…搬入経路データ、327…搬出経路データ、529…加工演算プログラム、572…タッチパネル付きディスプレイ、928…描画プログラム、A1…第1基礎データ、A2…第2基礎データ、C…動作指令、C1…第1動作指令、C2…第2動作指令、C3…第3動作指令、C4…第4動作指令、C5…第5動作指令、C6…第6動作指令、D1…ワーク密度データ、D2…製品密度データ、DA2…加工工具の種類を特定するデータ、DA3…加工範囲を特定するデータ、DA4…加工速度を特定するデータ、DT1…ワークの外形寸法を特定する第1データ、DT2…工作機械の構成要素の外形寸法を特定する第2データ、DT3…支持装置を識別する第3データ、DT4…製品の外形寸法を特定する第4データ、DT5…工作機械の構成要素の外形寸法を特定する第5データ、DT6…支持装置を識別する第6データ、E…ワーク、J…搬送動作指令、M1…第1算出モード、M2…第2算出モード、M3…第3算出モード、M4…第4算出モード、MA…加工プログラム生成モード、OP…開口部、P…製品、PG…演算プログラム、PG2…第2演算プログラム、PM…加工プログラム、PM1…EIAプログラム、Q…制御パラメータ、SD…形状データ、SD1…ワークの外径、SD2…ワークの内径、SD3…ワークの高さ、SH1…ワークの3次元形状データ、SH2…製品の3次元形状データ、T…工具、T1…切削工具、T2…工具、V1…ワーク体積データ、V2…製品体積データ、W1…ワーク重量データ、W2…製品重量データ、m1…ワークを構成する材料を特定するデータ、m2…製品を構成する材料を特定するデータ、r1…複数の材料と複数の材料の密度とを関連付ける関連付けデータ
【要約】
加工システムは、ワークを工作機械に搬入するロボットと、ロボット制御装置と、数値制御装置と、工作機械と、を具備する。ワークの重量を第1重量と定義するとき、ロボット制御装置は、第1重量を示すワーク重量データをロボットの制御パラメータの1つとして設定し、制御パラメータと、ワークの搬入経路を特定する搬入経路データとに基づいて、ロボットの搬入動作を制御する。数値制御装置は、ワーク重量データ、または、第1重量を算出するための第1基礎データをロボット制御装置に送り、加工プログラムを実行することにより動作指令を生成する。工作機械は、動作指令に基づいて、ワークを製品に加工する。