JP2008152733A - ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体 - Google Patents

ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体 Download PDF

Info

Publication number
JP2008152733A
JP2008152733A JP2006342985A JP2006342985A JP2008152733A JP 2008152733 A JP2008152733 A JP 2008152733A JP 2006342985 A JP2006342985 A JP 2006342985A JP 2006342985 A JP2006342985 A JP 2006342985A JP 2008152733 A JP2008152733 A JP 2008152733A
Authority
JP
Japan
Prior art keywords
robot
machine tool
hand
program
work
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.)
Granted
Application number
JP2006342985A
Other languages
English (en)
Other versions
JP4271232B2 (ja
Inventor
Yoshiharu Nagatsuka
嘉治 長塚
Kozo Inoue
幸三 井上
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2006342985A priority Critical patent/JP4271232B2/ja
Priority to EP07024622.8A priority patent/EP1936458B1/en
Priority to EP11005946.6A priority patent/EP2381325B1/en
Priority to US11/960,995 priority patent/US8155789B2/en
Priority to CN2007101991887A priority patent/CN101204813B/zh
Publication of JP2008152733A publication Critical patent/JP2008152733A/ja
Application granted granted Critical
Publication of JP4271232B2 publication Critical patent/JP4271232B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40387Modify without repeating teaching operation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40394Combine offline with online information to generate robot actions
    • 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

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

【課題】工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、容易かつ正確に実施できる安価なオフラインプログラミング装置を提供する。
【解決手段】オフラインプログラミング装置10は、対象物W、Tをハンド16で把持するときの対象物とハンドとの相対位置関係データD1を指定するハンド位置指定部20と、工作機械14に与えられるワーク加工プログラムに含まれる、対象物の位置を特定する指令Cに基づき、ロボット18がハンドリング作業(供給、取出、位置変更等)を実行するときの、工作機械に搭載される対象物の位置及び姿勢データD2を求める第1演算部22と、相対位置関係データD1と位置及び姿勢データD2とに基づき、ハンドリング作業実行時のロボットの位置及び姿勢データD3を求める第2演算部24と、位置及び姿勢データD3を用いて作業プログラムPを生成する作業プログラム生成部26とを備える。
【選択図】図1

Description

本発明は、ロボットのプログラミング技術に関し、特に、工作機械に対するワークや工具のハンドリング作業をロボットに実行させる作業プログラムをオフラインで作成するための、オフラインプログラミング装置及びオフラインプログラミング方法に関する。本発明はまた、工作機械に対するワークや工具のハンドリング作業をロボットに実行させる作業プログラムをオフラインで作成するための、プログラム及び記録媒体に関する。
ロボット(特に産業用ロボット)を用いた生産システムにおいて、工作機械に対し、ワークや工具等の加工関連対象物を、テーブルや刃物台等の所定の搭載部に供給したり、それら所定の搭載部から取り出したり、また搭載部上での位置や姿勢を変更したりするハンドリング作業を、ロボットに実行させる構成は知られている。このシステム構成では、実際のロボット及び工作機械を用いないオフラインプログラミング法により、ハンドリング作業をロボットに教示することができる。一般にオフラインプログラミング法では、コンピュータにロボット及びその作業環境のモデルを持たせ、表示画面上でロボットモデルに所望のロボット動作を模擬的に遂行させることで、実際のロボットに教示すべき位置/姿勢情報及び動作順序情報を得ている。このとき、ロボット動作のシミュレーションにより、教示情報の妥当性を確認できるので、最適な作業プログラムを作成することができる。
しかし、工作機械に搭載されるワークや工具等の加工関連対象物の、搭載部に対するハンドリング作業実行時の位置及び姿勢は、当該工作機械で遂行されるワーク加工プログラムの内容によって変化する場合がある。例えば、工作機械のテーブルに対するワーク供給時及びワーク取出時の、テーブル上でのワークの位置は、当該ワークに対する加工プログラムにおいて、プログラム開始及びプログラム終了に際してのワーク位置としてそれぞれ指令されている。また、そのようなワークハンドリング時のワークの姿勢は、工作機械に設定されている固有のワーク座標系(通常はテーブルや刃物台の送り軸を座標軸とする座標系)の姿勢(すなわち座標軸の方向)として決定される。このように、ワークハンドリング時のワークの位置及び姿勢は、ワーク加工プログラムに記述されるワーク位置指令値と工作機械の固有の機械構成とによって決まり、故に、未加工ワークや加工済ワークの形状や寸法の変更に応じた加工プログラムの変更に従って、多様に変化する傾向がある。このような状況は、工作機械の刃物台に対する工具のハンドリング作業においても、同様に生じ得る。
上記した実状に対処するべく、従来、工作機械及びロボットを含む生産システムにおいて、オフラインプログラミング法で作成したハンドリング作業プログラムに従ってロボットを動作させる場合には、一般に、工作機械に与えられるワーク加工プログラムが変更される都度、オペレータが手作業でハンドリング作業プログラムを修正(すなわち再教示)している。作業プログラムの修正に際しては、ワークや工具等の加工関連対象物を、変更後のワーク加工プログラムに従い、工作機械の所定の搭載部上で実際のハンドリング時の位置及び姿勢に置き、当該加工関連対象物に対しオペレータがロボットを手動操作して、ロボットと加工関連対象物との実際の相対位置関係を測定する。このようにして相対位置の実測値を得た後は、ハンドリング作業プログラムにおける位置/姿勢情報が、実測値に基づいて自動修正される。なお、ロボットと加工関連対象物との相対位置関係の測定手法としては、加工関連対象物にロボットのエンドエフェクタ領域を近接させて相対位置をロボットの複数の異なる姿勢で測定する手法(例えば特許文献1参照)や、ロボットに仮装着した視覚センサによって複数の異なる位置で加工関連対象物を三次元計測する手法(例えば特許文献2参照)が採用されている。
また、工作機械におけるワークの変更(すなわちワーク加工プログラムの変更)に伴いロボットの動作を修正する他の手法として、例えば特許文献3に開示されるように、工作機械のコントローラ及びロボットのコントローラの双方を統合的に制御する上位コンピュータを生産システムに配備し、ワーク変更時には、上位コンピュータからロボットコントローラに新規ワークに対応した動作制御データを送ることで、ロボットに新規ワークのハンドリング作業を実行させる手法が知られている。この手法によれば、ロボットに与える作業プログラムの手作業による修正(すなわち再教示)が不要になる。
特許第2654206号公報 特開2005−138223号公報 特開平5−324034号公報
工作機械に対するワークや工具のハンドリング作業をロボットが実行する生産システムにおいて、ワーク加工プログラムの変更に対応して、オペレータが手作業でハンドリング作業プログラムを修正する従来の手法では、プログラム修正に必要な実データを得るための測定作業に起因して、生産システムの稼働率が低下する懸念がある。また、修正後の作業プログラムに従うロボットの動作精度を安定して確保するためには、上記測定作業に関するオペレータの熟練度が要求されるので、人的コストが上昇することが危惧される。特に、前述した特許文献2に記載されるような、視覚センサによる三次元計測を用いる手法では、視覚センサ及び画像処理装置の装備により、設備コストが上昇することも危惧される。
他方、前述した特許文献3に記載されるような、生産システムに上位コンピュータを配備する構成では、設備コストが上昇することに加えて、新規ワークに対応した動作制御データに関し、シミュレーションによるロボット動作の最適化が行われないので、生産システムの効率、安全性及び信頼性を向上させることが困難である。
本発明の目的は、工作機械に対するワークや工具のハンドリング作業をロボットに実行させる作業プログラムを作成するためのオフラインプログラミング装置であって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、オペレータの熟練度に依存することなく容易かつ正確に実施でき、しかも、設備コストの上昇を抑制できるとともに、生産システムの効率、安全性及び信頼性の向上を実現できるオフラインプログラミング装置を提供することにある。
本発明の他の目的は、工作機械に対するワークや工具のハンドリング作業をロボットに実行させる作業プログラムを作成するためのオフラインプログラミング方法であって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、オペレータの熟練度に依存することなく容易かつ正確に実施でき、しかも、設備コストの上昇を抑制できるとともに、生産システムの効率、安全性及び信頼性の向上を実現できるオフラインプログラミング方法を提供することにある。
本発明のさらに他の目的は、工作機械に対するワークや工具のハンドリング作業をロボットに実行させる作業プログラムをオフラインで作成するためのプログラム及び記録媒体であって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、オペレータの熟練度に依存することなく容易かつ正確に実施でき、しかも、設備コストの上昇を抑制できるとともに、生産システムの効率、安全性及び信頼性の向上を実現できるように、コンピュータを機能させることができるプログラム、及び同プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することにある。
上記目的を達成するために、請求項1に記載の発明は、ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムを作成するための、オフラインプログラミング装置において、対象物をハンドで把持するときの、対象物とハンドとの相対位置関係を指定するハンド位置指定部と、工作機械に与えられるワーク加工プログラムに含まれる、対象物の位置を特定する指令に基づき、ロボットがハンドリング作業を実行するときの、工作機械に搭載される対象物の位置及び姿勢を求める第1演算部と、ハンド位置指定部で指定した対象物とハンドとの相対位置関係と、第1演算部で求めた対象物の位置及び姿勢とに基づき、ロボットがハンドリング作業を実行するときの、ハンドで対象物を把持するロボットの位置及び姿勢を求める第2演算部と、第2演算部で求めたロボットの位置及び姿勢を用いて、作業プログラムを生成する作業プログラム生成部と、を具備することを特徴とするオフラインプログラミング装置を提供する。
請求項2に記載の発明は、請求項1に記載のオフラインプログラミング装置において、第1演算部は、ワーク加工プログラムの開始時の対象物の位置を特定する指令に基づき、ハンドリング作業により工作機械に供給されるときの対象物の位置及び姿勢を求め、それに基づいて、第2演算部は、ハンドリング作業により対象物を工作機械に供給するときのロボットの位置及び姿勢を求める、オフラインプログラミング装置を提供する。
請求項3に記載の発明は、請求項1又は2に記載のオフラインプログラミング装置において、第1演算部は、ワーク加工プログラムの終了時の対象物の位置を特定する指令に基づき、ハンドリング作業により工作機械から取り出されるときの対象物の位置及び姿勢を求め、それに基づいて、第2演算部は、ハンドリング作業により対象物を工作機械から取り出すときのロボットの位置及び姿勢を求める、オフラインプログラミング装置を提供する。
請求項4に記載の発明は、請求項1〜3のいずれか1項に記載のオフラインプログラミング装置において、ハンド位置指定部は、対象物及びハンドをそれぞれにモデル化した対象物モデル及びハンドモデルを用いて、対象物とハンドとの相対位置関係を指定する、オフラインプログラミング装置を提供する。
請求項5に記載の発明は、請求項1〜4のいずれか1項に記載のオフラインプログラミング装置において、工作機械が、ワークを支持して移動するテーブルを備え、第1演算部は、テーブルの位置を特定する指令と、工作機械に設定されるテーブルの送り軸方向とに基づき、ロボットがハンドリング作業を実行するときの、テーブルに搭載されるワークの位置及び姿勢を求め、第2演算部は、テーブルに搭載されるワークをハンドで把持するロボットの位置及び姿勢を求める、オフラインプログラミング装置を提供する。
請求項6に記載の発明は、請求項1〜4のいずれか1項に記載のオフラインプログラミング装置において、工作機械が、工具を支持して移動する刃物台を備え、第1演算部は、刃物台の位置を特定する指令と、工作機械に設定される刃物台の送り軸方向とに基づき、ロボットがハンドリング作業を実行するときの、刃物台に搭載される工具の位置及び姿勢を求め、第2演算部は、刃物台に搭載される工具をハンドで把持するロボットの位置及び姿勢を求める、オフラインプログラミング装置を提供する。
請求項7に記載の発明は、請求項1〜6のいずれか1項に記載のオフラインプログラミング装置において、作業プログラム生成部で生成した作業プログラムを、工作機械及びロボットを含む生産システムに適用する際に、工作機械とロボットとの相対位置関係の誤差に対応して作業プログラムを修正する作業プログラム修正部をさらに具備する、オフラインプログラミング装置を提供する。
請求項8に記載の発明は、請求項1〜7のいずれか1項に記載のオフラインプログラミング装置において、ワーク加工プログラムがNCプログラムであり、第1演算部は、NCプログラムから指令を取得する、オフラインプログラミング装置を提供する。
請求項9に記載の発明は、ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムを作成するための、オフラインプログラミング方法において、対象物をハンドで把持するときの、対象物とハンドとの相対位置関係を指定するハンド位置指定ステップと、工作機械に与えられるワーク加工プログラムに含まれる、対象物の位置を特定する指令に基づき、ロボットがハンドリング作業を実行するときの、工作機械に搭載される対象物の位置及び姿勢を求める第1演算ステップと、ハンド位置指定ステップで指定した対象物とハンドとの相対位置関係と、第1演算ステップで求めた対象物の位置及び姿勢とに基づき、ロボットがハンドリング作業を実行するときの、ハンドで対象物を把持するロボットの位置及び姿勢を求める第2演算ステップと、第2演算ステップで求めたロボットの位置及び姿勢を用いて、作業プログラムを生成する作業プログラム生成ステップと、を具備することを特徴とするオフラインプログラミング方法を提供する。
請求項10に記載の発明は、請求項9に記載のオフラインプログラミング方法において、作業プログラム生成ステップで生成した作業プログラムを、工作機械及びロボットを含む生産システムに適用する際に、工作機械とロボットとの相対位置関係の誤差に対応して作業プログラムを修正する作業プログラム修正ステップをさらに具備する、オフラインプログラミング方法を提供する。
請求項11に記載の発明は、請求項10に記載のオフラインプログラミング方法において、作業プログラム修正ステップは、工作機械及びロボットをそれぞれにモデル化した工作機械モデル及びロボットモデルを用意するステップと、工作機械モデルに、ワーク加工プログラムを実行可能な機械座標系モデルを設定するステップと、生産システムに、ロボットに対し既知の位置関係の下に配置される位置検出器を用意するステップと、工作機械モデル上での機械座標系モデルの原点の位置に対応する工作機械上の基準位置に、位置検出器が検出可能な目標物を設けるステップと、位置検出器により目標物の基準位置を検出するステップと、基準位置から目標物を、機械座標系モデルの座標軸に対応する工作機械の送り軸に沿って所定の参照位置へ移動して、位置検出器により目標物の参照位置を検出するステップと、位置検出器が検出した目標物の基準位置と参照位置とに基づき、ワーク加工プログラムを実行するための工作機械の機械座標系を求めるステップと、ロボットモデルに対する機械座標系モデルの位置関係と、ロボットに対する機械座標系の位置関係との差に従って、作業プログラムを修正するステップとを具備する、オフラインプログラミング方法を提供する。
請求項12に記載の発明は、請求項9〜11のいずれか1項に記載のオフラインプログラミング方法において、ワーク加工プログラムがNCプログラムであり、第1演算ステップは、NCプログラムから指令を取得するステップを含む、オフラインプログラミング方法を提供する。
請求項13に記載の発明は、ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムを作成するための、オフラインプログラミング方法において、工作機械及びロボットを含む生産システムに作業プログラムを適用する際に、工作機械とロボットとの相対位置関係の誤差に対応して作業プログラムを修正する作業プログラム修正ステップを具備し、作業プログラム修正ステップは、工作機械及びロボットをそれぞれにモデル化した工作機械モデル及びロボットモデルを用意するステップと、工作機械モデルに、ワーク加工プログラムを実行可能な機械座標系モデルを設定するステップと、生産システムに、ロボットに対し既知の位置関係の下に配置される位置検出器を用意するステップと、工作機械モデル上での機械座標系モデルの原点の位置に対応する工作機械上の基準位置に、位置検出器が検出可能な目標物を設けるステップと、位置検出器により目標物の基準位置を検出するステップと、基準位置から目標物を、機械座標系モデルの座標軸に対応する工作機械の送り軸に沿って所定の参照位置へ移動して、位置検出器により目標物の参照位置を検出するステップと、位置検出器が検出した目標物の基準位置と参照位置とに基づき、ワーク加工プログラムを実行するための工作機械の機械座標系を求めるステップと、ロボットモデルに対する機械座標系モデルの位置関係と、ロボットに対する機械座標系の位置関係との差に従って、作業プログラムを修正するステップとを具備すること、を特徴とするオフラインプログラミング方法を提供する。
請求項14に記載の発明は、ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムをオフラインで作成するために、コンピュータを、対象物をハンドで把持するときの、対象物とハンドとの相対位置関係を指定するハンド位置指定部、工作機械に与えられるワーク加工プログラムに含まれる、対象物の位置を特定する指令に基づき、ロボットがハンドリング作業を実行するときの、工作機械に搭載される対象物の位置及び姿勢を求める第1演算部、ハンド位置指定部で指定した対象物とハンドとの相対位置関係と、第1演算部で求めた対象物の位置及び姿勢とに基づき、ロボットがハンドリング作業を実行するときの、ハンドで対象物を把持するロボットの位置及び姿勢を求める第2演算部、及び第2演算部で求めたロボットの位置及び姿勢を用いて、作業プログラムを生成する作業プログラム生成部、として機能させるためのオフラインプログラミング用プログラムを提供する。
請求項15に記載の発明は、ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムをオフラインで作成するために、コンピュータを、対象物をハンドで把持するときの、対象物とハンドとの相対位置関係を指定するハンド位置指定部、工作機械に与えられるワーク加工プログラムに含まれる、対象物の位置を特定する指令に基づき、ロボットがハンドリング作業を実行するときの、工作機械に搭載される対象物の位置及び姿勢を求める第1演算部、ハンド位置指定部で指定した対象物とハンドとの相対位置関係と、第1演算部で求めた対象物の位置及び姿勢とに基づき、ロボットがハンドリング作業を実行するときの、ハンドで対象物を把持するロボットの位置及び姿勢を求める第2演算部、及び第2演算部で求めたロボットの前記位置及び姿勢を用いて、作業プログラムを生成する作業プログラム生成部、として機能させるためのオフラインプログラミング用プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。
請求項1に記載の発明によれば、工作機械に与えられるワーク加工プログラムに含まれる、対象物の位置を特定する指令に基づいて、ハンドリング作業実行時の工作機械上での対象物の位置及び姿勢を求め、この対象物の位置及び姿勢に対し、予め設定した相対位置関係の下に、ハンドリング作業実行時のロボットの位置及び姿勢を求めることで、作業プログラムを生成するようにしたから、工作機械に与えられるワーク加工プログラムが変更されたときにも、オペレータの手作業による作業プログラムの修正(すなわち再教示)を行うことなく、変更後のワーク加工プログラムに正確に適合する作業プログラムに従って、ロボットに所要のハンドリング作業を高精度に実行させることができる。また、対象物(ワーク、工具等)の三次元計測を行う必要が無いから、視覚センサや画像処理装置等の、比較的高価な設備が不要になる。しかも、オフラインプログラミング法の利点である動作シミュレーションを実行することにより、最適な作業プログラムを生成することができる。したがって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正が、オペレータの熟練度に依存することなく容易かつ正確に実施され、しかも、設備コストの上昇が抑制されるとともに、生産システムの効率、安全性及び信頼性の向上が実現される。
請求項2に記載の発明によれば、ロボットが対象物を工作機械に供給するための作業プログラムを、正確かつ容易に作成することができる。
請求項3に記載の発明によれば、ロボットが対象物を工作機械から取り出すための作業プログラムを、正確かつ容易に作成することができる。
請求項4に記載の発明によれば、対象物とハンドとの相対位置関係を、正確かつ容易に指定することができる。
請求項5に記載の発明によれば、工作機械のテーブルに搭載されるワークをロボットがハンドリングするための作業プログラムを、正確かつ容易に作成することができる。
請求項6に記載の発明によれば、工作機械の刃物台に搭載される工具をロボットがハンドリングするための作業プログラムを、正確かつ容易に作成することができる。
請求項7に記載の発明によれば、生産システムの現場における工作機械とロボットとの相対位置関係に誤差が含まれる場合にも、そのような誤差を考慮した適正な作業プログラムを、正確かつ容易に作成することができる。
請求項8に記載の発明によれば、ワーク加工プログラムの内容を容易に把握できるので、第1演算部による処理内容を容易に理解できる。
請求項9に記載の発明によれば、請求項1に記載の発明と同等の作用効果を奏するオフラインプログラミング方法であって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、オペレータの熟練度に依存することなく容易かつ正確に実施でき、しかも、設備コストの上昇を抑制できるとともに、生産システムの効率、安全性及び信頼性の向上を実現できるオフラインプログラミング方法が提供される。
請求項10に記載の発明によれば、請求項7に記載の発明と同等の作用効果が奏される。
請求項11に記載の発明によれば、生成した作業プログラムを、現場での工作機械とロボットとの相対位置関係の誤差に対応して修正するキャリブレーションに際し、ロボットを動作させることなく、工作機械上で目標物を固有の送り軸に沿って移動させることで、工作機械とロボットとの実際の相対位置関係を測定できるので、オペレータの熟練を必要とせず、また高価な三次元計測用の設備を要することなく、高精度のキャリブレーションを安価に実施できる。
請求項12に記載の発明によれば、請求項8に記載の発明と同等の作用効果が奏される。
請求項13に記載の発明によれば、請求項11に記載の発明と同等の作用効果が奏される。
請求項14に記載の発明によれば、請求項1に記載の発明と同等の作用効果を奏するプログラムであって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、オペレータの熟練度に依存することなく容易かつ正確に実施でき、しかも、設備コストの上昇を抑制できるとともに、生産システムの効率、安全性及び信頼性の向上を実現できるように、コンピュータを機能させることができるプログラムが提供される。
請求項15に記載の発明によれば、請求項1に記載の発明と同等の作用効果を奏する記録媒体であって、工作機械に与えられるワーク加工プログラムの変更に対応した作業プログラムの修正を、オペレータの熟練度に依存することなく容易かつ正確に実施でき、しかも、設備コストの上昇を抑制できるとともに、生産システムの効率、安全性及び信頼性の向上を実現できるように、コンピュータを機能させることができるプログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
以下、添付図面を参照して、本発明の実施の形態を詳細に説明する。全図面に渡り、対応する構成要素には共通の参照符号を付す。
図面を参照すると、図1は、本発明に係るオフラインプログラミング装置10の基本構成を機能ブロック図で示す。また図2は、オフラインプログラミング装置10を組み込んだ生産システム12の一構成例を概略で示す。オフラインプログラミング装置10は、ワークW及び工具Tの少なくとも一方を含む加工関連対象物の、工作機械14に対するハンドリング作業(供給、取出、位置変更等)を、ハンド16を装着したロボット18に実行させる作業プログラムPを、オフラインで作成するものであって、例えばパーソナルコンピュータ等の電算機に所要のソフトウェアをインストールすることにより構成できる。
オフラインプログラミング装置10は、加工関連対象物(W、T)をハンド16で把持するときの、対象物(W、T)とハンド16との相対位置関係のデータD1を指定するハンド位置指定部20と、工作機械14に与えられるワーク加工プログラムに含まれる、対象物(W、T)の位置を特定する指令Cに基づき、ロボット18がハンドリング作業を実行するときの、工作機械14に搭載される対象物(W、T)の位置及び姿勢のデータD2を求める第1演算部22と、ハンド位置指定部20で指定した対象物(W、T)とハンド16との相対位置関係データD1と、第1演算部22で求めた対象物(W、T)の位置及び姿勢データD2とに基づき、ロボット18がハンドリング作業を実行するときの、ハンド16で対象物(W、T)を把持するロボット18の位置及び姿勢のデータD3を求める第2演算部24と、第2演算部24で求めたロボット18の位置及び姿勢データD3を用いて、作業プログラムPを生成する作業プログラム生成部26とを備えて構成される。ハンド位置指定部20、第1演算部22、第2演算部24及び作業プログラム生成部26は、例えばパーソナルコンピュータ等の電算機のCPU(中央処理装置)によって構成できる。
図2に示すように、生産システム12は、ワークW及び工具Tのそれぞれの搭載部であるテーブル28及び刃物台30を有する工作機械14と、例えば多関節型の構成を有し、アーム先端にエンドエフェクタとしてのハンド16が取り付けられるロボット(機構部)18と、工作機械14の動作を制御する機械コントローラ(例えばNC装置)32と、ロボット18の動作を制御するロボットコントローラ34と、LAN等の通信ネットワーク36を介してロボットコントローラ34に接続されるオフラインプログラミング装置10とを備える。ロボット18は、オフラインプログラミング装置10で作成した作業プログラムP(図1)に従い、ロボットコントローラ34による制御下で動作して、工作機械14に対し、ワークWや工具T等の加工関連対象物を、テーブル28や刃物台30等の所定の搭載部に供給したり、それら所定の搭載部から取り出したりするハンドリング作業を実行する。
上記構成を有するオフラインプログラミング装置10では、まず、ロボット18がワークWや工具T等の加工関連対象物をハンド16で把持するときの、対象物W、Tとハンド16との最適な相対位置関係のデータD1が、ハンド16の機構、対象物W、Tの形状等の既知データに基づいて、ハンド位置指定部20で指定される。この相対位置関係データD1は、ハンド16及び対象物W、Tの構成に対応した最適な位置及び姿勢に関するデータとして略一義的に決まるものであるから、一般にオペレータの熟練を要することなく、正確に指定できる。なお、本願における「相対位置関係」という用語は、特に断りの無い限り、位置及び姿勢の双方の相対的関係を意味するものとする。
また、ロボット18が加工関連対象物(ワークW、工具T等)を工作機械14の搭載部(テーブル28、刃物台30等)に対しハンドリング(供給、取出、位置変更等)するときの、搭載部上での対象物W、Tの実際の位置を示すデータが、工作機械14に与えられるワーク加工プログラムに含まれる指令Cから取得される。この指令Cは、例えば第1演算部22が通信ネットワーク36を介して機械コントローラ32から入手する(図1に破線で示す)か、或いは必要に応じてオペレータがオフラインプログラミング装置10に入力することで第1演算部22に与えられる。
他方、上記ハンドリング時の搭載部上での対象物W、Tの実際の姿勢を示すデータは、例えば、工作機械14に設定されている固有のワーク座標系(例えばテーブル28や刃物台30の送り軸を座標軸とする直交座標系)の姿勢(すなわち座標軸の方向)のデータ(すなわち工作機械14の構造によって決まる既知データ)として、第1演算部22に与えられる。このワーク座標系の姿勢データは、例えばオフラインプログラミング装置10に予め記憶されているか、或いは必要に応じてオペレータによりオフラインプログラミング装置10に入力される。
そして、第1演算部22は、ワーク加工プログラムに記述される指令Cとワーク座標系の姿勢データとを、ロボット18に予め設定される基準座標系(例えばワールド座標系)におけるデータに変換する。それにより、ロボット18がハンドリング作業を実行するときに必要となる、搭載部上での対象物W、Tの実際の位置及び姿勢データD2が、極めて正確に求められる。さらに、第2演算部24は、ハンド位置指定部20で指定した相対位置関係データD1で示される対象物W、Tとハンド16との相対位置関係を、第1演算部22で求めた位置及び姿勢データD2に適用する。それにより、ロボット18がハンドリング作業を実行するときの、ハンド16で対象物W、Tを把持する(つまり、既に把持している(供給時等)か、或いはこれから把持する(取出時等))ロボット18の実際の位置及び姿勢データD3が、極めて正確に求められる。
上記した対象物W、Tの位置及び姿勢データD2は、ワーク加工プログラムに記述される指令Cとワーク座標系の姿勢データとに基づいて求められるものであるから、未加工ワークや加工済ワークの形状や寸法の変更に応じてワーク加工プログラムが変更されたときにも、その変更に正確に呼応して、第1演算部22により自動的に(つまりオペレータの手作業が介在せずに)適正値に修正される。そして、第2演算部24は、修正された対象物W、Tの位置及び姿勢データD2に基づき、変更後のワーク加工プログラムに記述される対象物W、Tを適正にハンドリングするための、ロボット18(ハンド16を含む)の位置及び姿勢データD3を求める。作業プログラム生成部26は、このようにして求めた位置及び姿勢データD3を使用するとともに、必要に応じて、ロボット18及びその作業環境(工作機械14を含む)のモデルにより所要のロボット動作を模擬的に遂行することで教示情報(位置及び姿勢データD3を含む)の妥当性を確認しながら、最適な作業プログラムPを生成する。
このように、オフラインプログラミング装置10によれば、工作機械14及びロボット18を含む生産システム12において、工作機械14に与えられるワーク加工プログラムが変更された場合にも、オペレータの手作業による作業プログラムの修正(すなわち再教示)を行うことなく、変更後のワーク加工プログラムに正確に適合する作業プログラムPに従って、ロボット18に所要のハンドリング作業を高精度に実行させることができる。また、加工関連対象物(ワークW、工具T等)の三次元計測を行う必要が無いから、視覚センサや画像処理装置等の、比較的高価な設備が不要になる。しかも、オフラインプログラミング法の利点である動作シミュレーションを実行することにより、最適な作業プログラムPを生成することができる。したがって、オフラインプログラミング装置10によれば、工作機械14に与えられるワーク加工プログラムの変更に対応した作業プログラムPの修正が、オペレータの熟練度に依存することなく容易かつ正確に実施され、しかも、設備コストの上昇が抑制されるとともに、生産システム12の効率、安全性及び信頼性の向上が実現される。
上記構成を有するオフラインプログラミング装置10において、ハンド位置指定部20は、加工関連対象物(ワークW、工具T等)及びハンド16をそれぞれにモデル化した対象物モデル及びハンドモデルを用いて、対象物W、Tとハンド16との相対位置関係のデータD1を指定することができる。この場合、図3に例示するように、CAD(コンピュータ支援設計)等の設計機能を有する外部装置によって作成した図面データに基づき、オフラインプログラミング装置10に付設される表示装置(図示せず)の画面に対象物モデルM1及びハンドモデルM2を表示し(図3(a))、対象物モデルM1に対する把持動作をハンドモデルM2に模擬的に遂行させる(図3(b))ことで、相対位置関係データD1を指定するように構成することが有利である。
図示の例では、対象物(ワーク)モデルM1の環状部L1にハンドモデルM2の3本の爪L2を挿入し、それら爪L2を開くことで、ハンドモデルM2が対象物(ワーク)モデルM1を適正に把持している(図3(b))。このときの対象物(ワーク)モデルM1とハンドモデルM2との構造上最適な相対位置関係が、ハンド位置指定部20により図面データから読み取られて、相対位置関係データD1として指定され、記憶される。このような構成によれば、相対位置関係データD1を、オペレータの熟練によらず、一層容易かつ正確に指定できる。なお、外部装置を用いる代わりに、オフラインプログラミング装置10にCAD(コンピュータ支援設計)等の設計機能を付加して、オフラインプログラミング装置10自体が図面データを作成する構成としてもよい。
また、オフラインプログラミング装置10において、第1演算部22は、ワーク加工プログラムの開始時の加工関連対象物(ワークW、工具T等)の位置を特定する指令Cに基づき、ハンドリング作業により外部から工作機械14に供給されるときの対象物W、Tの位置及び姿勢のデータD2を求めることができる。そしてそれに基づいて、第2演算部24は、ハンドリング作業によりハンド16で把持した対象物W、Tを工作機械14に供給するときの、ロボット18(ハンド16を含む)の位置及び姿勢のデータD3を求めることができる。
同様に、第1演算部22は、ワーク加工プログラムの終了時の加工関連対象物(ワークW、工具T等)の位置を特定する指令Cに基づき、ハンドリング作業により工作機械14から外部に取り出されるときの、対象物W、Tの位置及び姿勢のデータD2を求めることができる。そしてそれに基づいて、第2演算部24は、ハンドリング作業により対象物W、Tをハンド16で把持して工作機械14から取り出すときの、ロボット18(ハンド16を含む)の位置及び姿勢のデータD3を求めることができる。
工作機械14が、ワークWを支持して移動するテーブル28を備える構成では、第1演算部22は、テーブル28の位置を特定する指令Cと、工作機械14に設定されるテーブル28の送り軸方向(例えば図2に矢印X1及びY1で示す直交2軸方向)とに基づき、ロボット18がハンドリング作業(供給、取出、位置変更等)を実行するときの、テーブル28に搭載されるワークWの位置及び姿勢のデータD2を求めることができる。そしてそれに基づいて、第2演算部24は、テーブル28に搭載されるワークWをハンド16で把持するロボット18の位置及び姿勢のデータD3を求めることができる。
また、工作機械14が、工具Tを支持して移動する刃物台30を備える構成では、第1演算部22は、刃物台30の位置を特定する指令Cと、工作機械14に設定される刃物台30の送り軸方向(例えば図2に矢印X2、Y2及びZ2で示す直交3軸方向)とに基づき、ロボット18がハンドリング作業(供給、取出、位置変更等)を実行するときの、刃物台30に搭載される工具Tの位置及び姿勢のデータD2を求めることができる。そしてそれに基づいて、第2演算部24は、刃物台30に搭載される工具Tをハンド16で把持するロボット18の位置及び姿勢のデータD3を求めることができる。
次に、図4を参照して、オフラインプログラミング装置10によるハンドリング作業プログラム作成手順の具体例を説明する。以下の説明では、工作機械14に与えられるワーク加工プログラムがNCプログラムであり、第1演算部22は、NCプログラムから指令Cを取得するものとする。このような構成によれば、未熟なオペレータであっても、ワーク加工プログラムの内容を容易に把握できるので、オフラインプログラミング装置10(特に第1演算部22)による処理内容を容易に理解できる。なお、説明を簡単にするために、工作機械14の構造及びワーク加工プログラムの内容が、極めて単純化された事例を以下に挙げる。
まず、例として以下のNCプログラム(1ブロック)を想定する。
G92 X150,Y100;
G90;
X−100.0 Y−100.0;
X100.0 Y−100.0;
X100.0 Y100.0;
X−100.0 Y100.0;
X−100.0 Y−150.0;
M30;
上記プログラムの1行目は、工作機械14におけるワーク座標系を設定する命令であり、任意の基準点に対するXY座標値でワーク座標系の原点Oの位置が指示されている。同2行目は、アブソリュートディメンション指定であって、ディメンションワードの数値が座標値を示すことが指定されている。同3〜7行目は、前述した搭載部(テーブル28又は刃物台30)への移動位置指令であって、ワーク座標系原点Oに対するXY座標値で5つの移動位置a〜eが順次指示されている。同8行目は当該ブロックのプログラム終了命令である。
上記NCプログラムに従い、ワークWが工具Tにより、図4に示す正方形輪郭に切削される。ここで図示の例では、工作機械14は、ワークWを搭載するテーブル28(図2)がX軸及びY軸の直交2軸方向へ移動する一方、工具Tを搭載する刃物台30(図2)は移動しない構造を有するものとする。したがって、上記NCプログラムでは、ワーク座標系における工具Tの位置がa〜eで指令されているが、実際には、工具TをワークWに対して位置a〜eに順次相対移動させるように、テーブル28(すなわちワークW)が移動する。なお、NCプログラムにおける位置指令の記述方法は、工作機械14の構造に対応して多様に設定できる。
上記構成を有する工作機械14に対し、上記NCプログラムに従い加工工程が完了したワークWを、ロボット18(図2)がハンドリング作業によりテーブル28から取り出すための作業プログラムPを作成する場合には、工具Tが位置eに到達したとき(すなわちワーク加工プログラム終了時)の指令C(X−100.0 Y−150.0;)に基づき、第1演算部22(図1)が、テーブル28から取り出されるときのワークWの位置及び姿勢データD2を求める。ここでは、工具Tが位置eに到達したときのワーク座標系原点O(すなわちワークWの幾何学的中心点)の位置が、ロボット18の基準座標系におけるワークWの位置に変換される。また、工作機械14に設定されるテーブル28の送り軸方向(すなわちワーク座標系のX軸及びY軸の方向)が、ロボット18の基準座標系におけるワークWの姿勢として扱われる。
第2演算部24(図1)は、このようにして求めたワークWの位置及び姿勢データD2と、前述したCADを用いて設定したワークWとハンド16との最適な相対位置関係(図3(b))のデータD1とに基づいて、ワークWをハンド16で把持してテーブル28から取り出すときの、ロボット18(ハンド16を含む)の位置及び姿勢のデータD3を求める。作業プログラム生成部26は、このようにして求めた位置及び姿勢データD3をロボット18の基準座標系における教示点とし、さらに、当該教示点に対するハンド16の所定の接近点及び逃げ点を追加するとともに、ハンド16の開閉等に要する入出力指令を追加して、作業プログラムPを生成する。
上記した具体例において、ロボット18(図2)がハンドリング作業により未加工のワークWをテーブル28に供給するための作業プログラムPを作成する場合には、ワーク加工プログラム開始時のワークWの位置を特定する指令Cが必要になる。上記NCプログラムでは、工具Tが位置eに置かれているワーク加工プログラム終了時の状態で、次のワークWに対する加工プログラムが開始されることを想定しているので、位置eの指令C(X−100.0 Y−150.0;)をプログラム開始時の指令として扱って、第1演算部22(図1)が、テーブル28に供給されるときのワークWの位置及び姿勢データD2を求める。以下、上記手順と同様にして、作業プログラムPが作成される。
他方、上記した工作機械14に代えて、工具Tを搭載する刃物台30(図2)がX軸、Y軸及びZ軸の直交3軸方向へ移動する一方、ワークWを搭載するテーブル28(図2)は移動しない構造を有する工作機械14に対し、ロボット18が工具Tをハンドリングするための作業プログラムPの作成手順は、以下に説明するように、上記した手順と同様のものとなる。この場合、工作機械14においては、上記NCプログラムの指令に従い、工具TをワークWに対して位置a〜e(ワーク座標系)に順次移動させるように、刃物台30(すなわち工具T)が移動する。
この工作機械14に対し、上記NCプログラムに従い加工工程が完了した工具Tを、ロボット18(図2)がハンドリング作業により刃物台30から取り出すための作業プログラムPを作成する場合には、工具Tが位置eに到達したとき(すなわちワーク加工プログラム終了時)の指令C(X−100.0 Y−150.0;)に基づき、第1演算部22(図1)が、刃物台30から取り出されるときの工具Tの位置及び姿勢データD2を求める。ここでは、工具Tの位置eが、ロボット18の基準座標系における工具Tの位置に変換される。また、工作機械14に設定される刃物台30の送り軸方向(すなわちワーク座標系のX軸、Y軸及びZ軸の方向)が、ロボット18の基準座標系における工具Tの姿勢として扱われる。
第2演算部24(図1)は、このようにして求めた工具Tの位置及び姿勢データD2と、前述したCADを用いて設定した工具Tとハンド16との最適な相対位置関係(図示せず)のデータD1とに基づいて、工具Tをハンド16で把持して刃物台30から取り出すときの、ロボット18(ハンド16を含む)の位置及び姿勢のデータD3を求める。作業プログラム生成部26は、このようにして求めた位置及び姿勢データD3をロボット18の基準座標系における教示点とし、さらに、当該教示点に対するハンド16の所定の接近点及び逃げ点を追加するとともに、ハンド16の開閉等に要する入出力指令を追加して、作業プログラムPを生成する。
上記構成例において、ロボット18(図2)がハンドリング作業により新たな工具Tを刃物台30に供給するための作業プログラムPを作成する場合には、ワーク加工プログラム開始時の工具Tの位置を特定する指令Cが必要になる。上記NCプログラムでは、工具Tが位置eに置かれているワーク加工プログラム終了時の状態で、刃物台30に対する工具Tの脱着が行われるとともに次のワークWに対する加工プログラムが開始されることを想定しているので、位置eの指令C(X−100.0 Y−150.0;)をプログラム開始時の指令として扱って、第1演算部22(図1)が、刃物台30に供給されるときの工具Tの位置及び姿勢データD2を求める。以下、上記手順と同様にして、作業プログラムPが作成される。
なお、工作機械14が、テーブル28と刃物台30との双方を適当に動作させてワークWを加工できる機械構成を有する場合には、上記具体例を適当に組み合わせることで、オフラインプログラミング装置10により、ロボット18がテーブル28及び刃物台30に対しワークW及び工具Tを所要時期にハンドリングする作業プログラムPを作成できることが理解されよう。
このように、本発明は、ワークW及び工具Tの少なくとも一方を含む加工関連対象物の、工作機械14に対するハンドリング作業を、ハンド16を装着したロボット18に実行させる作業プログラムPを作成するための、オフラインプログラミング方法として規定することもできる。すなわち、本発明に係るオフラインプログラミング方法は、加工関連対象物(W、T)をハンド16で把持するときの、対象物(W、T)とハンド16との相対位置関係を指定するハンド位置指定ステップと、工作機械14に与えられるワーク加工プログラムに含まれる、対象物(W、T)の位置を特定する指令Cに基づき、ロボット18がハンドリング作業を実行するときの、工作機械14に搭載される対象物(W、T)の位置及び姿勢を求める第1演算ステップと、ハンド位置ステップで指定した対象物(W、T)とハンド16との相対位置関係と、第1演算ステップで求めた対象物(W、T)の位置及び姿勢とに基づき、ロボット18がハンドリング作業を実行するときの、ハンド16で対象物(W、T)を把持するロボット18の位置及び姿勢を求める第2演算ステップと、第2演算ステップで求めたロボット18の位置及び姿勢を用いて、作業プログラムPを生成する作業プログラム生成ステップとを備えて構成される。
上記構成を有するオフラインプログラミング装置10及びオフラインプログラミング方法は、生産システム12における工作機械14とロボット18との相対位置関係が不変である場合(つまり工作機械14に設定されたワーク座標系とロボット18に設定された基準座標系とが一定の関係を有する場合)に、作業プログラム生成部26で生成した作業プログラムPをそのままロボット18に与えて、適正なハンドリング作業を遂行させることができる。しかし、生産システム12における工作機械14とロボット18との実際の相対位置関係が、ある一定の相対位置関係(以下、基準相対位置関係と称する)からの誤差を含む場合には、基準相対位置関係を前提に作成した作業プログラムPを、実際の相対位置関係の誤差に対応して適当に修正することが要求される。
一般に、オフラインプログラミング法で作成したロボット作業プログラムを現場に適用する際には、コンピュータに設定したロボットの作業環境モデルと実際のロボットの作業環境との間での、機構寸法上の誤差や設定座標の誤差を補正するための、キャリブレーションと称する予備的処理を作業プログラムに施している。例えば上記したように、生産システム12における工作機械14とロボット18との実際の相対位置関係が基準相対位置関係からの誤差を含む場合、従来のキャリブレーションの手法では、既述の特許文献1及び2に記載されるような方法により、工作機械14とロボット18との実際の相対位置関係を測定することになる。このようなキャリブレーション手法では、結局のところ、上記測定作業に関するオペレータの熟練度が要求されたり、或いは高価な装備により設備コストが上昇したりする問題が生じる。
図5は、キャリブレーションにおける上記問題を解決可能な、本発明の一実施形態による作業プログラム修正機能付きのオフラインプログラミング装置40の構成を、機能ブロック図で示す。オフラインプログラミング装置40は、作業プログラム修正機能を付加した点以外は、図1のオフラインプログラミング装置10の基本構成を有するものであるから、対応する構成要素には共通の符号を付してその説明を省略する。
すなわち、オフラインプログラミング装置40は、前述した基本構成に加えて、作業プログラム生成部26で生成した作業プログラムPを生産システム12に適用する際に、工作機械14とロボット18との相対位置関係の誤差に対応して作業プログラムPを修正する作業プログラム修正部42をさらに備える。作業プログラム修正部42は、例えばパーソナルコンピュータ等の電算機のCPU(中央処理装置)によって構成できる。以下、図6及び図7を参照して、作業プログラム修正部42による作業プログラム修正手順を説明する。
まず、オフラインプログラミング装置40において、作業プログラムPを適用する生産システム12における工作機械14及びロボット18を、それぞれにモデル化した工作機械モデル44及びロボットモデル46を用意する。これら工作機械モデル44及びロボットモデル46は、予め設定したロボットモデル46の基準座標系において、オフラインプログラミング装置40に付設される表示装置48の画面に、実際の生産システム12での工作機械14とロボット18との相対位置関係に近似する所定の基準相対位置関係で表示される(図6(a))。
なお、図示の例では、工作機械14は、ワークWを支持して移動するテーブル28を備えて構成されるものとし、工作機械モデル44として、テーブル28に対応するテーブル部分のみが表示されている。そして、このようなモデル構成に対し、オフラインプログラミング装置40は、ロボット18がテーブル28に対してワークWのハンドリング作業(供給、取出、位置変更等)を実行するための、作業プログラムPを作成するものとする。
次に、用意した工作機械モデル44に、実際のワーク加工プログラムを実行可能な機械座標系モデル50を設定する。機械座標系モデル50は、ロボットモデル46から見た(つまりロボットモデル46の基準座標系における)原点及び座標軸を含む座標系である。
他方、生産システム12には、ロボット18に対し既知の位置関係の下に配置される位置検出器(例えばCCDカメラ)52を用意する(図6(b))。図示の例では、ロボット18のハンド16(図2)に隣接して、位置検出器52が設置される。或いは、ロボット18に対する位置関係が既知であることを前提に、ロボット18から離れた位置に固定的に位置検出器52を設置することもできる。いずれの場合も、オフラインプログラミング装置40の作業プログラム修正部42(図5)は、位置検出器52から検出データを入手する。
次に、工作機械モデル44上での機械座標系モデル50の原点の位置に対応する実際の工作機械14(特にテーブル28)上の基準位置Sに、位置検出器52が検出可能な目標物54を設ける(図6(b))。目標物54は、平面的な目印でも立体的な物体でも良い。そして、位置検出器52により、目標物54の基準位置Sの座標(つまりロボット18の基準座標系における位置)を検出する。検出した基準位置Sは、オフラインプログラミング装置40の作業プログラム修正部42に送られる。
次に、工作機械14上で、目標物54(すなわちテーブル28)を、基準位置Sから、機械座標系モデル50の座標軸に対応する工作機械14の実際の送り軸(図ではテーブル28のX軸)に沿って、予め定めた第1の参照位置R1へ移動する(図7(a))。その状態で、位置検出器52により、目標物54の参照位置R1の座標(つまりロボット18の基準座標系における位置)を検出する。検出した参照位置R1は、オフラインプログラミング装置40の作業プログラム修正部42に送られる。
続いて、工作機械14上で、目標物54(すなわちテーブル28)を、第1の参照位置R1から、機械座標系モデル50の他の座標軸に対応する工作機械14の実際の送り軸(図ではテーブル28のY軸)に沿って、予め定めた第2の参照位置R2へ移動する(図7(b))。その状態で、位置検出器52により、目標物54の参照位置R2の座標(つまりロボット18の基準座標系における位置)を検出する。検出した参照位置R2は、オフラインプログラミング装置40の作業プログラム修正部42に送られる。
次に、作業プログラム修正部42は、位置検出器52が検出した目標物54の基準位置Sと第1及び第2の参照位置R1、R2とに基づき、ワーク加工プログラムを実行するための工作機械14の機械座標系56(すなわちロボット18の基準座標系における原点及び座標軸を含む座標系)を求める。すなわち、機械座標系56は、基準位置Sを原点とし、基準位置Sと第1及び第2の参照位置R1、R2とを結ぶ軸をそれぞれX軸及びY軸とするものである。なお、テーブル28が1つの送り軸(例えばX軸)のみを有する場合には、1つの参照位置(例えばR1)のみを検出することで、機械座標系を求めることができる。
続いて、次式(i)に従い、機械座標系モデル50と実際の機械座標系56との間の差Tを求める。
=T −1・T・・・(i)
ここで、Tは、機械座標系モデル50の位置及び姿勢を表す行列であり、Tは、機械座標系56の位置及び姿勢を表す行列である。
式(i)で求めた差Tは、ロボットモデル46に対する機械座標系モデル50の位置関係と、ロボット18に対する機械座標系56の位置関係との差と見做すことができる。そこで、作業プログラム修正部42は、差Tを用いて、次式(ii)に従い、作業プログラムPを修正する。
′(n)=T(n)・T・・・(ii)
ここで、T(n)は、作業プログラム生成部26が生成した作業プログラムPにおける教示点(n個)の位置及び姿勢を表す行列であり、T′(n)は、作業プログラム修正部42が修正した作業プログラムP′(図5)における教示点(n個)の位置及び姿勢を表す行列である。
上記構成を有するオフラインプログラミング装置40及びオフラインプログラミング方法によれば、作業プログラム生成部26で生成した作業プログラムPを、生産システム12の現場における工作機械14とロボット18との実際の相対位置関係の誤差に対応して修正するキャリブレーションに際し、ロボット18を動作させることなく、工作機械14が有する可動部(図示実施形態ではテーブル28)を固有の送り軸に沿って移動させることで、工作機械14とロボット18との実際の相対位置関係を測定することができる。工作機械14の可動部を固有の送り軸に沿って目標位置へ移動させることは、オペレータの熟練によらず、単純な指示で高精度の位置決めの下に遂行可能であるから、人的コストを削減できる。また、位置検出器52を使用しているが、高価な三次元計測用の設備を要しないので、設備コストの上昇も抑制できる。
なお、上記した作業プログラム修正ステップを含むオフラインプログラミング方法は、図1を参照して説明した作業プログラム生成ステップを含むオフラインプログラミング方法に限らず、汎用的に利用することもできる。すなわち、本発明は、ワークW及び工具Tの少なくとも一方を含む対象物の、工作機械14に対するハンドリング作業を、ハンド16を装着したロボット18に実行させる作業プログラムを作成するための、オフラインプログラミング方法において、工作機械14及びロボット18を含む生産システム12に作業プログラムPを適用する際に、工作機械14とロボット18との相対位置関係の誤差に対応して作業プログラムPを修正する作業プログラム修正ステップを具備するオフラインプログラミング方法を提供する。作業プログラム修正ステップは、工作機械14及びロボット18をそれぞれにモデル化した工作機械モデル44及びロボットモデル46を用意するステップと、工作機械モデル44に、ワーク加工プログラムを実行可能な機械座標系モデル50を設定するステップと、生産システム12に、ロボット18に対し既知の位置関係の下に配置される位置検出器52を用意するステップと、工作機械モデル44上での機械座標系モデル50の原点の位置に対応する工作機械14上の基準位置Sに、位置検出器52が検出可能な目標物54を設けるステップと、位置検出器52により目標物54の基準位置Sを検出するステップと、基準位置Sから目標物54を、機械座標系モデル50の座標軸に対応する工作機械14の送り軸に沿って所定の参照位置R1、R2へ移動して、位置検出器52により目標物54の参照位置R1、R2を検出するステップと、位置検出器52が検出した目標物54の基準位置Sと参照位置R1、R2とに基づき、ワーク加工プログラムを実行するための工作機械14の機械座標系56を求めるステップと、ロボットモデル46に対する機械座標系モデル50の位置関係と、ロボット18に対する機械座標系56の位置関係との差に従って、作業プログラムPを修正するステップとを含む。
以上、本発明の基本構成及び好適な実施形態を説明したが、オフラインプログラミング装置10、40をパーソナルコンピュータで構成できることから、上記説明に則して、本発明を下記のように規定することもできる。
すなわち、本発明は、ワークW及び工具Tの少なくとも一方を含む加工関連対象物の、工作機械14に対するハンドリング作業を、ハンド16を装着したロボット18に実行させる作業プログラムPをオフラインで作成するために、コンピュータを、加工関連対象物(W、T)をハンド16で把持するときの、対象物(W、T)とハンド16との相対位置関係D1を指定するハンド位置指定部20、工作機械14に与えられるワーク加工プログラムに含まれる、対象物(W、T)の位置を特定する指令Cに基づき、ロボット18がハンドリング作業を実行するときの、工作機械14に搭載される対象物(W、T)の位置及び姿勢D2を求める第1演算部22、ハンド位置指定部20で指定した対象物(W、T)とハンド16との相対位置関係D1と、第1演算部22で求めた対象物(W、T)の位置及び姿勢D2とに基づき、ロボット18がハンドリング作業を実行するときの、ハンド16で対象物(W、T)を把持するロボット18の位置及び姿勢D3を求める第2演算部24、並びに、第2演算部24で求めたロボット18の位置及び姿勢D3を用いて、作業プログラムPを生成する作業プログラム生成部26、として機能させるためのオフラインプログラミング用プログラムである。
また本発明は、ワークW及び工具Tの少なくとも一方を含む加工関連対象物の、工作機械14に対するハンドリング作業を、ハンド16を装着したロボット18に実行させる作業プログラムPをオフラインで作成するために、コンピュータを、加工関連対象物(W、T)をハンド16で把持するときの、対象物(W、T)とハンド16との相対位置関係D1を指定するハンド位置指定部20、工作機械14に与えられるワーク加工プログラムに含まれる、対象物(W、T)の位置を特定する指令Cに基づき、ロボット18がハンドリング作業を実行するときの、工作機械14に搭載される対象物(W、T)の位置及び姿勢D2を求める第1演算部22、ハンド位置指定部20で指定した対象物(W、T)とハンド16との相対位置関係D1と、第1演算部22で求めた対象物(W、T)の位置及び姿勢D2とに基づき、ロボット18がハンドリング作業を実行するときの、ハンド16で対象物(W、T)を把持するロボット18の位置及び姿勢D3を求める第2演算部24、並びに、第2演算部24で求めたロボット18の位置及び姿勢D3を用いて、作業プログラムPを生成する作業プログラム生成部26、として機能させるためのオフラインプログラミング用プログラムを記録したコンピュータ読み取り可能な記録媒体である。
本発明に係るオフラインプログラミング装置の基本構成を示す機能ブロック図である。 図1のオフラインプログラミング装置を組み込んだ生産システムの一例を概略で示す図である。 図1のオフラインプログラミング装置によるオフラインプログラミング方法の1ステップを例示する図で、(a)ハンドモデルによる対象物モデルの把持前の状態、及び(b)適正把持状態を示す。 図1のオフラインプログラミング装置で使用可能なワーク加工プログラムを説明する図である。 本発明の一実施形態によるオフラインプログラミング装置の構成を示す機能ブロック図である。 図5のオフラインプログラミング装置によるオフラインプログラミング方法の主要ステップを概略で例示する図で、(a)オフラインプログラミング装置におけるモデル設定ステップ、及び(b)生産システムにおける基準位置検出ステップを示す。 図6のステップに続く主要ステップを概略で例示する図で、(a)生産システムにおける第1参照位置検出ステップ、及び(b)生産システムにおける第2参照位置検出ステップを示す。
符号の説明
10、40 オフラインプログラミング装置
12 生産システム
14 工作機械
16 ハンド
18 ロボット
20 ハンド位置指定部
22 第1演算部
24 第2演算部
26 作業プログラム生成部
28 テーブル
30 刃物台
42 作業プログラム修正部
44 工作機械モデル
46 ロボットモデル
50 機械座標系モデル
52 位置検出器
54 目標物
56 機械座標系

Claims (15)

  1. ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムを作成するための、オフラインプログラミング装置において、
    前記対象物を前記ハンドで把持するときの、該対象物と該ハンドとの相対位置関係を指定するハンド位置指定部と、
    前記工作機械に与えられるワーク加工プログラムに含まれる、前記対象物の位置を特定する指令に基づき、前記ロボットが前記ハンドリング作業を実行するときの、該工作機械に搭載される該対象物の位置及び姿勢を求める第1演算部と、
    前記ハンド位置指定部で指定した前記対象物と前記ハンドとの前記相対位置関係と、前記第1演算部で求めた前記対象物の前記位置及び姿勢とに基づき、前記ロボットが前記ハンドリング作業を実行するときの、前記ハンドで該対象物を把持する該ロボットの位置及び姿勢を求める第2演算部と、
    前記第2演算部で求めた前記ロボットの前記位置及び姿勢を用いて、前記作業プログラムを生成する作業プログラム生成部と、
    を具備することを特徴とするオフラインプログラミング装置。
  2. 前記第1演算部は、前記ワーク加工プログラムの開始時の前記対象物の位置を特定する前記指令に基づき、前記ハンドリング作業により前記工作機械に供給されるときの該対象物の前記位置及び姿勢を求め、それに基づいて、前記第2演算部は、該ハンドリング作業により該対象物を該工作機械に供給するときの前記ロボットの前記位置及び姿勢を求める、請求項1に記載のオフラインプログラミング装置。
  3. 前記第1演算部は、前記ワーク加工プログラムの終了時の前記対象物の位置を特定する前記指令に基づき、前記ハンドリング作業により前記工作機械から取り出されるときの該対象物の前記位置及び姿勢を求め、それに基づいて、前記第2演算部は、該ハンドリング作業により該対象物を該工作機械から取り出すときの前記ロボットの前記位置及び姿勢を求める、請求項1又は2に記載のオフラインプログラミング装置。
  4. 前記ハンド位置指定部は、前記対象物及び前記ハンドをそれぞれにモデル化した対象物モデル及びハンドモデルを用いて、該対象物と該ハンドとの前記相対位置関係を指定する、請求項1〜3のいずれか1項に記載のオフラインプログラミング装置。
  5. 前記工作機械が、ワークを支持して移動するテーブルを備え、前記第1演算部は、該テーブルの位置を特定する前記指令と、該工作機械に設定される該テーブルの送り軸方向とに基づき、前記ロボットが前記ハンドリング作業を実行するときの、該テーブルに搭載されるワークの位置及び姿勢を求め、前記第2演算部は、該テーブルに搭載される該ワークを前記ハンドで把持する該ロボットの前記位置及び姿勢を求める、請求項1〜4のいずれか1項に記載のオフラインプログラミング装置。
  6. 前記工作機械が、工具を支持して移動する刃物台を備え、前記第1演算部は、該刃物台の位置を特定する前記指令と、該工作機械に設定される該刃物台の送り軸方向とに基づき、前記ロボットが前記ハンドリング作業を実行するときの、該刃物台に搭載される工具の位置及び姿勢を求め、前記第2演算部は、該刃物台に搭載される該工具を前記ハンドで把持する該ロボットの前記位置及び姿勢を求める、請求項1〜4のいずれか1項に記載のオフラインプログラミング装置。
  7. 前記作業プログラム生成部で生成した前記作業プログラムを、前記工作機械及び前記ロボットを含む生産システムに適用する際に、該工作機械と該ロボットとの相対位置関係の誤差に対応して該作業プログラムを修正する作業プログラム修正部をさらに具備する、請求項1〜6のいずれか1項に記載のオフラインプログラミング装置。
  8. 前記ワーク加工プログラムがNCプログラムであり、前記第1演算部は、該NCプログラムから前記指令を取得する、請求項1〜7のいずれか1項に記載のオフラインプログラミング装置。
  9. ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムを作成するための、オフラインプログラミング方法において、
    前記対象物を前記ハンドで把持するときの、該対象物と該ハンドとの相対位置関係を指定するハンド位置指定ステップと、
    前記工作機械に与えられるワーク加工プログラムに含まれる、前記対象物の位置を特定する指令に基づき、前記ロボットが前記ハンドリング作業を実行するときの、該工作機械に搭載される該対象物の位置及び姿勢を求める第1演算ステップと、
    前記ハンド位置指定ステップで指定した前記対象物と前記ハンドとの前記相対位置関係と、前記第1演算ステップで求めた前記対象物の前記位置及び姿勢とに基づき、前記ロボットが前記ハンドリング作業を実行するときの、前記ハンドで該対象物を把持する該ロボットの位置及び姿勢を求める第2演算ステップと、
    前記第2演算ステップで求めた前記ロボットの前記位置及び姿勢を用いて、前記作業プログラムを生成する作業プログラム生成ステップと、
    を具備することを特徴とするオフラインプログラミング方法。
  10. 前記作業プログラム生成ステップで生成した前記作業プログラムを、前記工作機械及び前記ロボットを含む生産システムに適用する際に、該工作機械と該ロボットとの相対位置関係の誤差に対応して該作業プログラムを修正する作業プログラム修正ステップをさらに具備する、請求項9に記載のオフラインプログラミング方法。
  11. 前記作業プログラム修正ステップは、
    前記工作機械及び前記ロボットをそれぞれにモデル化した工作機械モデル及びロボットモデルを用意するステップと、
    前記工作機械モデルに、前記ワーク加工プログラムを実行可能な機械座標系モデルを設定するステップと、
    前記生産システムに、前記ロボットに対し既知の位置関係の下に配置される位置検出器を用意するステップと、
    前記工作機械モデル上での前記機械座標系モデルの原点の位置に対応する前記工作機械上の基準位置に、前記位置検出器が検出可能な目標物を設けるステップと、
    前記位置検出器により前記目標物の前記基準位置を検出するステップと、
    前記基準位置から前記目標物を、前記機械座標系モデルの座標軸に対応する前記工作機械の送り軸に沿って所定の参照位置へ移動して、前記位置検出器により該目標物の該参照位置を検出するステップと、
    前記位置検出器が検出した前記目標物の前記基準位置と前記参照位置とに基づき、前記ワーク加工プログラムを実行するための前記工作機械の機械座標系を求めるステップと、
    前記ロボットモデルに対する前記機械座標系モデルの位置関係と、前記ロボットに対する前記機械座標系の位置関係との差に従って、前記作業プログラムを修正するステップとを具備する、
    請求項10に記載のオフラインプログラミング方法。
  12. 前記ワーク加工プログラムがNCプログラムであり、前記第1演算ステップは、該NCプログラムから前記指令を取得するステップを含む、請求項9〜11のいずれか1項に記載のオフラインプログラミング方法。
  13. ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムを作成するための、オフラインプログラミング方法において、
    前記工作機械及び前記ロボットを含む生産システムに前記作業プログラムを適用する際に、該工作機械と該ロボットとの相対位置関係の誤差に対応して該作業プログラムを修正する作業プログラム修正ステップを具備し、
    前記作業プログラム修正ステップは、
    前記工作機械及び前記ロボットをそれぞれにモデル化した工作機械モデル及びロボットモデルを用意するステップと、
    前記工作機械モデルに、ワーク加工プログラムを実行可能な機械座標系モデルを設定するステップと、
    前記生産システムに、前記ロボットに対し既知の位置関係の下に配置される位置検出器を用意するステップと、
    前記工作機械モデル上での前記機械座標系モデルの原点の位置に対応する前記工作機械上の基準位置に、前記位置検出器が検出可能な目標物を設けるステップと、
    前記位置検出器により前記目標物の前記基準位置を検出するステップと、
    前記基準位置から前記目標物を、前記機械座標系モデルの座標軸に対応する前記工作機械の送り軸に沿って所定の参照位置へ移動して、前記位置検出器により該目標物の該参照位置を検出するステップと、
    前記位置検出器が検出した前記目標物の前記基準位置と前記参照位置とに基づき、前記ワーク加工プログラムを実行するための前記工作機械の機械座標系を求めるステップと、
    前記ロボットモデルに対する前記機械座標系モデルの位置関係と、前記ロボットに対する前記機械座標系の位置関係との差に従って、前記作業プログラムを修正するステップとを具備すること、
    を特徴とするオフラインプログラミング方法。
  14. ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムをオフラインで作成するために、コンピュータを、
    前記対象物を前記ハンドで把持するときの、該対象物と該ハンドとの相対位置関係を指定するハンド位置指定部、
    前記工作機械に与えられるワーク加工プログラムに含まれる、前記対象物の位置を特定する指令に基づき、前記ロボットが前記ハンドリング作業を実行するときの、該工作機械に搭載される該対象物の位置及び姿勢を求める第1演算部、
    前記ハンド位置指定部で指定した前記対象物と前記ハンドとの前記相対位置関係と、前記第1演算部で求めた前記対象物の前記位置及び姿勢とに基づき、前記ロボットが前記ハンドリング作業を実行するときの、前記ハンドで該対象物を把持する該ロボットの位置及び姿勢を求める第2演算部、及び
    前記第2演算部で求めた前記ロボットの前記位置及び姿勢を用いて、前記作業プログラムを生成する作業プログラム生成部、
    として機能させるためのオフラインプログラミング用プログラム。
  15. ワーク及び工具の少なくとも一方を含む対象物の、工作機械に対するハンドリング作業を、ハンドを装着したロボットに実行させる作業プログラムをオフラインで作成するために、コンピュータを、
    前記対象物を前記ハンドで把持するときの、該対象物と該ハンドとの相対位置関係を指定するハンド位置指定部、
    前記工作機械に与えられるワーク加工プログラムに含まれる、前記対象物の位置を特定する指令に基づき、前記ロボットが前記ハンドリング作業を実行するときの、該工作機械に搭載される該対象物の位置及び姿勢を求める第1演算部、
    前記ハンド位置指定部で指定した前記対象物と前記ハンドとの前記相対位置関係と、前記第1演算部で求めた前記対象物の前記位置及び姿勢とに基づき、前記ロボットが前記ハンドリング作業を実行するときの、前記ハンドで該対象物を把持する該ロボットの位置及び姿勢を求める第2演算部、及び
    前記第2演算部で求めた前記ロボットの前記位置及び姿勢を用いて、前記作業プログラムを生成する作業プログラム生成部、
    として機能させるためのオフラインプログラミング用プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2006342985A 2006-12-20 2006-12-20 ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体 Active JP4271232B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2006342985A JP4271232B2 (ja) 2006-12-20 2006-12-20 ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体
EP07024622.8A EP1936458B1 (en) 2006-12-20 2007-12-19 Device, method, program and recording medium for robot offline programming
EP11005946.6A EP2381325B1 (en) 2006-12-20 2007-12-19 Method for robot offline programming
US11/960,995 US8155789B2 (en) 2006-12-20 2007-12-20 Device, method, program and recording medium for robot offline programming
CN2007101991887A CN101204813B (zh) 2006-12-20 2007-12-20 用于执行机器人离线编程的装置、方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006342985A JP4271232B2 (ja) 2006-12-20 2006-12-20 ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2008152733A true JP2008152733A (ja) 2008-07-03
JP4271232B2 JP4271232B2 (ja) 2009-06-03

Family

ID=39199975

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006342985A Active JP4271232B2 (ja) 2006-12-20 2006-12-20 ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体

Country Status (4)

Country Link
US (1) US8155789B2 (ja)
EP (2) EP1936458B1 (ja)
JP (1) JP4271232B2 (ja)
CN (1) CN101204813B (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218036A (ja) * 2009-03-13 2010-09-30 Fanuc Ltd ロボットオフラインプログラミング装置
WO2013046356A1 (ja) * 2011-09-28 2013-04-04 株式会社安川電機 ロボットシステムおよび加工物作製方法
DE102015015094A1 (de) 2014-11-28 2016-06-02 Fanuc Corporation Kooperationssystem mit Werkzeugmaschine und Roboter
WO2022131173A1 (ja) * 2020-12-15 2022-06-23 ファナック株式会社 数値制御システム及び産業機械の制御方法
JP7423851B1 (ja) 2023-10-31 2024-01-29 株式会社ダイヘン 端末装置

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5448326B2 (ja) * 2007-10-29 2014-03-19 キヤノン株式会社 把持装置および把持装置制御方法
JP4347386B2 (ja) * 2008-01-23 2009-10-21 ファナック株式会社 加工用ロボットプラグラムの作成装置
US8185240B2 (en) * 2008-08-29 2012-05-22 Williams Robotics, Llc Automated apparatus for constructing assemblies of building components
JP5715809B2 (ja) * 2010-03-29 2015-05-13 株式会社ダイヘン ロボットの作業プログラム作成方法、ロボットの作業プログラム作成装置、及びロボット制御システム
SE1050763A1 (sv) * 2010-07-08 2010-07-12 Abb Research Ltd En metod för att kalibrera en mobil robot
CN102338624B (zh) * 2010-07-19 2014-07-09 鸿富锦精密工业(深圳)有限公司 应用机械手臂测试物体的系统及方法
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
DE112011103794B4 (de) * 2010-11-17 2019-01-24 Mitsubishi Electric Corporation Aufnehmervorrichtung für Werkstücke
JP5744587B2 (ja) 2011-03-24 2015-07-08 キヤノン株式会社 ロボット制御装置、ロボット制御方法、プログラム及び記録媒体
US9566710B2 (en) 2011-06-02 2017-02-14 Brain Corporation Apparatus and methods for operating robotic devices using selective state space training
DE102012112900A1 (de) * 2011-12-22 2013-06-27 Fanuc Robotics America Corp. Numerische Steuerungsprogrammausrichtung durch Roboter
JP5426722B2 (ja) * 2012-05-24 2014-02-26 ファナック株式会社 ロボットプログラム変更装置
US9764468B2 (en) 2013-03-15 2017-09-19 Brain Corporation Adaptive predictor apparatus and methods
JP6147038B2 (ja) * 2013-03-15 2017-06-14 キヤノン株式会社 位置検出装置、レンズ装置、撮像システム、および、工作装置
US9242372B2 (en) 2013-05-31 2016-01-26 Brain Corporation Adaptive robotic interface apparatus and methods
CN103302669A (zh) * 2013-06-09 2013-09-18 无锡市华牧机械有限公司 计算机控制机械手到达指定位置的方法
US9314924B1 (en) 2013-06-14 2016-04-19 Brain Corporation Predictive robotic controller apparatus and methods
US9384443B2 (en) 2013-06-14 2016-07-05 Brain Corporation Robotic training apparatus and methods
US9792546B2 (en) 2013-06-14 2017-10-17 Brain Corporation Hierarchical robotic controller apparatus and methods
US9436909B2 (en) 2013-06-19 2016-09-06 Brain Corporation Increased dynamic range artificial neuron network apparatus and methods
US20150032258A1 (en) * 2013-07-29 2015-01-29 Brain Corporation Apparatus and methods for controlling of robotic devices
US9296101B2 (en) 2013-09-27 2016-03-29 Brain Corporation Robotic control arbitration apparatus and methods
US9579789B2 (en) 2013-09-27 2017-02-28 Brain Corporation Apparatus and methods for training of robotic control arbitration
JP6240463B2 (ja) * 2013-10-21 2017-11-29 川崎重工業株式会社 ダイヤル回転操作方法
US9597797B2 (en) 2013-11-01 2017-03-21 Brain Corporation Apparatus and methods for haptic training of robots
US9463571B2 (en) 2013-11-01 2016-10-11 Brian Corporation Apparatus and methods for online training of robots
US9248569B2 (en) 2013-11-22 2016-02-02 Brain Corporation Discrepancy detection apparatus and methods for machine learning
US9358685B2 (en) 2014-02-03 2016-06-07 Brain Corporation Apparatus and methods for control of robot actions based on corrective user inputs
US9387589B2 (en) * 2014-02-25 2016-07-12 GM Global Technology Operations LLC Visual debugging of robotic tasks
US9346167B2 (en) 2014-04-29 2016-05-24 Brain Corporation Trainable convolutional network apparatus and methods for operating a robotic vehicle
US9630318B2 (en) 2014-10-02 2017-04-25 Brain Corporation Feature detection apparatus and methods for training of robotic navigation
US9881349B1 (en) 2014-10-24 2018-01-30 Gopro, Inc. Apparatus and methods for computerized object identification
CN104714473B (zh) * 2014-12-04 2017-11-24 北京航空航天大学 一种管路柔性装焊的导管余量切割位置计算方法
US9717387B1 (en) 2015-02-26 2017-08-01 Brain Corporation Apparatus and methods for programming and training of robotic household appliances
DE102015216659A1 (de) * 2015-09-01 2017-03-02 Siemens Aktiengesellschaft Vorrichtung zur Anbindung an einen Roboter
CN105205292B (zh) * 2015-11-03 2018-11-09 北京宝沃汽车有限公司 一种仿真计算汽车分总成公差的方法
WO2017096605A1 (en) * 2015-12-11 2017-06-15 Abb Schweiz Ag Robot off-line programming method and appartus using the same
CN105619407A (zh) * 2016-01-28 2016-06-01 上海交通大学 基于刀位源文件的工业机器人离线编程方法
US20190217437A1 (en) * 2016-09-09 2019-07-18 Makino J Co., Ltd. Machining system
JP6850102B2 (ja) * 2016-10-06 2021-03-31 川崎重工業株式会社 ロボットシステム及びその運転方法
JP6356845B1 (ja) * 2017-02-13 2018-07-11 ファナック株式会社 検査システムの動作プログラムを生成する装置および方法
JP6514252B2 (ja) * 2017-03-02 2019-05-15 ファナック株式会社 ロボットのデータ設定システム、データ設定方法及びプログラム
JP2018167334A (ja) * 2017-03-29 2018-11-01 セイコーエプソン株式会社 教示装置および教示方法
CN107363183A (zh) * 2017-07-24 2017-11-21 东莞市中泰模具股份有限公司 用于在无资料情况下检测机械手和冲床之间干涉情况的计算机可读存储介质
JP6633584B2 (ja) * 2017-10-02 2020-01-22 ファナック株式会社 ロボットシステム
JP6806757B2 (ja) * 2018-11-16 2021-01-06 ファナック株式会社 動作プログラム作成装置
JP7060540B2 (ja) * 2019-04-03 2022-04-26 ファナック株式会社 加工制御システム及び加工システム
WO2023044614A1 (en) * 2021-09-22 2023-03-30 Abb Schweiz Ag Method and electronic device for calibrating robot
CN115847488B (zh) * 2023-02-07 2023-05-02 成都秦川物联网科技股份有限公司 用于协作机器人监测的工业物联网系统及控制方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3920972A (en) * 1974-07-16 1975-11-18 Cincinnati Milacron Inc Method and apparatus for programming a computer operated robot arm
GB8401973D0 (en) 1984-01-25 1984-02-29 Thorn Emi Ferguson Circuit board testing
JPS62232006A (ja) * 1986-04-02 1987-10-12 Yokogawa Electric Corp ロボツト・システム
JP2654206B2 (ja) 1989-11-27 1997-09-17 ファナック株式会社 タッチアップ方法
JPH0763923B2 (ja) 1989-12-15 1995-07-12 富士電機株式会社 Nc加工装置における原点補正方法
JPH05324034A (ja) 1992-05-20 1993-12-07 Meidensha Corp ロボットの制御方法
US5625576A (en) * 1993-10-01 1997-04-29 Massachusetts Institute Of Technology Force reflecting haptic interface
JP4014662B2 (ja) * 1995-09-18 2007-11-28 ファナック株式会社 ロボット教示操作盤
IT1283019B1 (it) * 1996-05-16 1998-04-03 Salvagnini Italia Spa Metodo di gestione di un'isola di lavoro comprendente un robot asser- vito ad una pressa piegatrice per lavorazione di fogli di lamiera.
US6489741B1 (en) * 1998-08-25 2002-12-03 Genmark Automation, Inc. Robot motion compensation system
DE19924511A1 (de) * 1999-05-28 2000-12-21 Bernd Scheibner Vermessungverfahren für eine Handhabungsvorrichtung
IT1313346B1 (it) * 1999-09-06 2002-07-23 Abb Ricerca Spa Metodo per eseguire la programmazione fuori linea di un robotindustriale.
JP3965841B2 (ja) 1999-11-11 2007-08-29 村田機械株式会社 プログラム作成装置
US20020069045A1 (en) * 2000-09-29 2002-06-06 Walacavage J. G. Method of logical modeling of operator interaction with programmable logic controller logical verification system
DE10124044B4 (de) * 2001-05-16 2011-12-01 Kuka Systems Gmbh Verfahren zum Kalibrieren eines Bahnprogramms
JP2003117863A (ja) * 2001-10-16 2003-04-23 Fanuc Ltd ロボットシミュレーション装置
EP1535706A1 (en) * 2002-07-18 2005-06-01 Kabushiki Kaisha Yaskawa Denki Robot controller and robot system
JP2005138223A (ja) 2003-11-06 2005-06-02 Fanuc Ltd ロボット用位置データ修正装置
JP4168002B2 (ja) * 2004-04-07 2008-10-22 ファナック株式会社 オフラインプログラミング装置
US7346478B2 (en) * 2004-09-21 2008-03-18 Ford Motor Company Method of embedding tooling control data within mechanical fixture design to enable programmable logic control verification simulation
JP2006099260A (ja) * 2004-09-28 2006-04-13 Fanuc Ltd ロボットプログラム作成装置
JP2007144524A (ja) * 2005-11-24 2007-06-14 Denso Wave Inc ロボットの干渉回避方法およびロボット

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218036A (ja) * 2009-03-13 2010-09-30 Fanuc Ltd ロボットオフラインプログラミング装置
WO2013046356A1 (ja) * 2011-09-28 2013-04-04 株式会社安川電機 ロボットシステムおよび加工物作製方法
JPWO2013046356A1 (ja) * 2011-09-28 2015-03-26 株式会社安川電機 ロボットシステムおよび加工物作製方法
DE102015015094A1 (de) 2014-11-28 2016-06-02 Fanuc Corporation Kooperationssystem mit Werkzeugmaschine und Roboter
JP2016101640A (ja) * 2014-11-28 2016-06-02 ファナック株式会社 工作機械及びロボットを備えた協働システム
US9895810B2 (en) 2014-11-28 2018-02-20 Fanuc Corporation Cooperation system having machine tool and robot
DE102015015094B4 (de) * 2014-11-28 2018-11-15 Fanuc Corporation Kooperationssystem mit Werkzeugmaschine und Roboter
WO2022131173A1 (ja) * 2020-12-15 2022-06-23 ファナック株式会社 数値制御システム及び産業機械の制御方法
JP7423851B1 (ja) 2023-10-31 2024-01-29 株式会社ダイヘン 端末装置

Also Published As

Publication number Publication date
CN101204813B (zh) 2010-06-02
EP1936458A2 (en) 2008-06-25
CN101204813A (zh) 2008-06-25
US8155789B2 (en) 2012-04-10
JP4271232B2 (ja) 2009-06-03
EP2381325A1 (en) 2011-10-26
EP1936458B1 (en) 2013-09-04
EP2381325B1 (en) 2017-03-08
US20080154428A1 (en) 2008-06-26
EP1936458A3 (en) 2009-05-27

Similar Documents

Publication Publication Date Title
JP4271232B2 (ja) ロボットのオフラインプログラミングを実行するための装置、方法、プログラム及び記録媒体
JP6223640B2 (ja) キャリブレーション装置およびこれを用いたロボットシステム
US9895810B2 (en) Cooperation system having machine tool and robot
JP4171488B2 (ja) オフラインプログラミング装置
JP4347386B2 (ja) 加工用ロボットプラグラムの作成装置
JP2006048244A (ja) 加工プログラム作成装置
US10406688B2 (en) Offline programming apparatus and method having workpiece position detection program generation function using contact sensor
JPWO2018092243A1 (ja) 作業位置補正方法および作業ロボット
JP2004094399A (ja) 多関節マニピュレータの制御方法及びその制御プログラム、並びにその制御システム
EP1886771B1 (en) Rotation center point calculating method, rotation axis calculating method, program creating method, operation method, and robot apparatus
CN110154043B (zh) 基于加工结果进行学习控制的机器人系统及其控制方法
JP2019089201A (ja) 教示データ作成装置、教示データ作成装置の制御方法及びロボットシステム
JP6912529B2 (ja) 視覚誘導ロボットアームの補正方法
JP2014018878A (ja) ロボットシステム並びにロボット制御装置及び方法
JP2015222196A (ja) 三次元測定機、及びこれを用いた形状測定方法
JP2015100874A (ja) ロボットシステム
JP2021186929A (ja) 多軸ロボットの制御方法
JP2014180726A (ja) 多関節ロボットのバネ定数補正装置
JP3507032B2 (ja) ロボットの機差導出方法
JP2002215211A (ja) 数値制御装置
WO2023073959A1 (ja) 作業支援装置及び作業支援方法
JPWO2023047574A5 (ja) 作業教示方法、及び作業教示システム
CN117733849A (zh) 四轴机器人的工具坐标定位方法、机器人及存储介质
JPH0916259A (ja) ロボット制御装置
JP2005332001A (ja) 多関節作業ロボットの駆動制御システム

Legal Events

Date Code Title Description
A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20080417

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080905

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20080903

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080916

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081117

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: 20090210

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090224

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4271232

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140306

Year of fee payment: 5