JP2005149216A - 作業プログラム作成装置 - Google Patents

作業プログラム作成装置 Download PDF

Info

Publication number
JP2005149216A
JP2005149216A JP2003386969A JP2003386969A JP2005149216A JP 2005149216 A JP2005149216 A JP 2005149216A JP 2003386969 A JP2003386969 A JP 2003386969A JP 2003386969 A JP2003386969 A JP 2003386969A JP 2005149216 A JP2005149216 A JP 2005149216A
Authority
JP
Japan
Prior art keywords
work
program
tool
robot
definition data
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
JP2003386969A
Other languages
English (en)
Other versions
JP3905075B2 (ja
Inventor
Atsushi Watanabe
淳 渡邉
Koji Nishi
浩次 西
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 JP2003386969A priority Critical patent/JP3905075B2/ja
Priority to US10/988,545 priority patent/US20050107919A1/en
Priority to EP04257102.6A priority patent/EP1533087B1/en
Publication of JP2005149216A publication Critical patent/JP2005149216A/ja
Application granted granted Critical
Publication of JP3905075B2 publication Critical patent/JP3905075B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • 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/34Director, elements to supervisory
    • G05B2219/34175Overlap, between two blocks, continuous, smooth speed change, movement
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36058Modify workpiece part program without changing approach program
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36081Merge, mix original program with teached program
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36228Combine two programs to obtain new shifted positions and new processing data
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36497Select program, main and secondary program
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36499Part program, workpiece, geometry and environment, machining dependant, combine
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39105Manipulator cooperates with moving machine, like press brake
    • 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/40383Correction, modification program by detection type workpiece
    • 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
    • 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)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

【課題】 ロボットの作業プログラム作成の工数を削減する。
【解決手段】 ロボットの作業動作には、作業対象のワークの種類に関係なく各ワーク共通の作業動作(200,201,205,206等)と、作業ワークにより変わる作業動作(203等)がある。そこで、作業ワークに依存した変更を必要とする第1プログラム部と、作業ワークの種類に依存しない第2プログラム部で構成された作業プログラム定義データを設定記憶しておく。また、ワークの位置姿勢情報を示す作業部位定義データを入力記憶させる。変更前の第1プログラム部と、前記作業部位定義データに基づいて、第1プログラム部に変更を施して該第1プログラム部を完成させ、全体の作業プログラムを完成させる。新たな作業ワークに対しては、作業部位定義データを入力するだけで、作業プログラムが作成できる。よって、多品種のワークに対応し容易に作業プログラムを作成することができる。
【選択図】 図7

Description

本発明は、ロボットが行う作業を指示する作業プログラムを作成する作業プログラム作成装置に関する。
産業用ロボットは、スポット溶接、アーク溶接、組み立て作業といった多くの生産システムで利用されている。一般的に産業用ロボットは、作業ツールをロボットの手首先端に取り付け、作業ツールを用いてロボットが作業する対象となる作業ワークに対して特定の作業を行う。スポット溶接の場合には、作業ツールはスポット溶接ガンであり、スポット溶接の一般的な作業ワークとしては自動車の車体等である。アーク溶接の場合には、作業ツールとしてはアーク溶接トーチであり、作業ワークとしては溶接される複数の板金等である。組み立て作業の場合には、作業ツールとしては把持ハンドやナットランナーであり、作業ワークとしては組立される機械部品や精密部品である。そして、産業用ロボットの動作は作業プログラムにより指示される。従って、産業用ロボットは、作業ツールや作業ワーク、作業内容に合わせた作業プログラムを用意することによって様々な作業をなすことができ、汎用性を有するものである。
例えば、スポット溶接を考えると、溶接する車体が新規に追加された場合には、車体の溶接個所に合わせて、追加された車体の溶接作業用のプログラムを新たに用意すればよい。車体の溶接個所が既存のスポット溶接ガンの形状では、治具やワークに干渉してしまう場合には、作業ツールであるスポット溶接ガンを新規に作成し、ツールチェンジャーにてロボットに取り付けることにより、車体に合わせてスポット溶接ガンを取り替えることで、複数の作業ワークに対応することができる。この場合、新規の車体と新規のスポット溶接ガンを使うような作業プログラムを新たに作成する必要がある。
作業プログラムを作成する場合、ロボットの各軸を手動にて低速移動させて、作業ツールを作業ワークの実際に作業したい部位に移動し、この位置を教示点として入力し、このときのロボットの各軸値をロボットは作業ワークの作業部位として記憶する。この教示作業を行うことによってロボットに作業動作を教示することになる。スポット溶接の場合を例にとると、作業部位とはスポット溶接を行う車体位置のことであり、スポット溶接ガンにおいて、実際にスポット溶接を行うチップ先端を、溶接ガンを持ったロボットの各軸を手動で移動することにより、車体のスポット溶接個所まで正確に移動し、この際のロボットの各軸値を記憶させる作業が教示作業となる。また、ロボットを実際に移動させずに、自動プログラミング装置により、オフラインで作業プログラムを作成する方法もある。
このように、産業用ロボットは作業ワークが新規追加になった場合でもこれに合わせて、作業ツールや作業プログラムを新規に用意することで、ロボット自身を再設計せずとも新規作業ワークに対応することができるという柔軟性を持っている。作業部位を変更する場合にも教示作業にて、教示点を変更・追加するだけでよい。この柔軟性が、特定の作業ツールを用いて、特定の作業ワークに対してのみ作業するように設計された専用機械と比較したとき、産業用ロボットの有利な点である。そのため、多品種少量生産のための生産装置として欠かせないものとなっている。
産業用ロボットの柔軟性は、作業ツールを作業ワークや作業内容に合わせて変更可能であること、作業プログラムの内容によって作業内容を変更可能であること、作業ワークの作業部位を教示作業によってロボットに記憶させることができること、などによって実現されている。作業ワークの新種がそれほど多くない場合には、産業用ロボットの従来の柔軟性で十分であった。しかし、今日工業製品を消費する消費者ニーズは多様化しており、これに対応して製品を生産する工場の生産システムの対応が困難な状態となっている。人手に頼らない高度な自動化システムの場合において、製造品種追加の場合には、生産ラインを見直し、治具、機械、搬送装置といったハードウェアの再設計や、加工機械の加工プログラムや、産業用ロボットの作業プログラム、プログラマブルロジックコントローラ(PLC)や生産管理装置のシーケンスラダーや生産管理プログラムといった、各種ソフトウェアの準備に多大な工数を必要とする。そのため、新規製造品種を追加する際の工数削減が自動化製造システムにおける重要な課題となっている。この自動化製造システムに用いられる産業用ロボットに対しても、品種追加のための作業プログラムの作成作業や教示作業にかかる工数も大きく、この点においても工数の削減が望まれている。
そこで、本発明の目的は、ロボットの作業プログラム作成の工数を削減することができる作業プログラム作成装置を提供することにある。
本願請求項1に係わる発明は、ロボットに作業指示を与える作業プログラムの作成装置であって、作業対象となる作業ワークに依存した変更を必要とするプログラム部と、作業ワークの種類に依存しないプログラム部からなる作業プログラム定義データ、及びワークの位置姿勢情報を示す作業部位定義データを記憶する記憶手段を備え、さらに、前記作業部位定義データに基づいて、前記作業対象となる作業ワークに依存した変更を必要とするプログラム部に前記変更を施して作業プログラムを完成させる手段とを備え、作業ワークの種類の変更に対して作業部位定義データを変えるだけで作業プログラムを完成できるようにしたものである。
又、請求項2に係わる発明は、ロボットに作業指示を与える作業プログラムの作成装置であって、作業対象となる作業ワークに依存した変更を必要とする第1プログラム部と、前記変更後の第1プログラム部との経路接続に伴う位置・姿勢の変更以外は、対象ワークの種類に依存しない第2プログラム部からなる作業プログラム定義データ、及びワークの位置姿勢情報を示す作業部位定義データを記憶する記憶手段を備えると共に、第1プログラム部と第2プログラム部の移動経路を接続するための所定ルールを記憶する手段を備え、さらに、前記変更前の第1プログラム部と、前記作業部位定義データに基づいて、第1プログラム部に前記変更を施して該第1プログラム部を完成させる手段と、前記所定ルールに基づいて第2プログラム部に記述された位置データを修正し、前記完成した第1プログラム部と第2プログラム部の移動経路を接続する手段とを備え、作業ワークの種類によって変わる作業動作と変わらない作業動作の接続部の作業動作を修正できるようにしたものである。
また、請求項3に係わる発明は、前記作業部位定義データを、作業ワークの図面データから作成するようにしたものであり、請求項4に係わる発明は、前記作業部位定義データを、作業ワークをカメラで撮像した画像から作成するようにしたものである。
本発明は、作業ワークの種類に依存して変わるロボット作業動作の部分のデータを入力するだけで良いものであるから、新規の作業ワークに対する産業用ロボットの作業プログラムの作成が極めて容易になる。そのため、産業用ロボットを用いた生産システムが、多品種に対応しやすくなり、自動化が困難と思われていたことから人手に頼った生産を強いられていた生産システムにも、自動化・ロボット化の道を開くことが可能となる。
図1は本発明の一実施形態における作業プログラム作成装置により作成する作業プログラムを適用するロボットを用いた生産システムの全体概要図である。符号1は産業用ロボットである。産業用ロボット1の手首先端には、作業ツール2が取り付けられている。符号P1,P2,P3,P4はワークW1,W2を置くためのパレットである。パレットP1上には、作業ワークW1が複数個置かれている。パレットP2上には、作業ワークW1とは種類の異なる作業ワークW2が置かれている。ロボット1は走行軸3上に設置されており、走行軸3上を移動し、パレットP1上の作業ワークW1もしくは、パレットP2上の作業ワークW2を、作業ツール2を用いて把持し、これを一旦仮置き台4に置く。加工機械5が加工中でない場合には、仮置き台4に置かれた作業ワークW1もしくはW2をロボット1が作業ツール2によって把持し、加工機械5に取り付ける。ロボット1は加工機械5に対して加工開始命令を発行する。加工機械5は、ロボット1からの加工命令により、ワークの加工を始める。加工が完了すると、加工機械5はロボット1に対して、加工完了信号を出す。加工完了信号を受け取ったロボット1は、加工済みの作業ワークW1もしくはW2を加工機械5から取り出して、作業ワークがW1の場合には、パレットP3上に置き、作業ワークがW2の場合には、パレットP4上に置く。ロボット1及び走行軸3は、通信ケーブル10及び11により制御装置6と接続されており、ロボット1及び走行軸3の動作は制御装置6により制御が行われている。制御装置6は、ネットワークケーブル12により、作業プログラム作成装置7に接続されている。ロボット1の手首先端には、カメラ9が装着されており、カメラケーブル13を経由して、画像処理装置8に接続されている。画像処理装置8は、ネットワークケーブル14と15によって、制御装置6と作業プログラム作成装置7と接続している。仮置き台4には、パレットP1から取り出した作業ワーク(W1)用の位置決め治具4aとパレットP2から取り出した作業ワーク(W2)用の位置決め治具4bが取り付けられている。位置決め治具4aおよび4bはディジタル信号入出力ケーブルによって、制御装置6と接続されている。
図2は、このロボットを用いた生産システムの種に制御系の要部ブロック図である。制御装置6には、バス21で接続されたCPU20、メモリ22、ネットワークインタフェース23、ディジタル信号入出力回路24、操作盤インタフェース25,サーボインターフェース26を備えている。メモリ22には、CPU20により実行され、制御装置全体を制御する制御プログラム22aと、作業プログラム22bおよび22cが格納されている。作業プログラム22bは、作業ワークW1に関する作業をロボット1が作業ツール2を用いて行うためのものであり、作業プログラム22cは、作業ワークW2に関する作業をロボット1が作業ツール2を用いて行うためのものである。作業プログラム22b及び22cは、いずれも制御プログラム22aを用いて解釈され、ロボット1及び作業ツール2の動きに変換される。作業プログラム22bおよび22cはいずれも作業プログラム作成装置7によって作成されたものである。
ネットワークインタフェース23には、ネットワークケーブル12を用いて作業プログラム作成装置7が接続されていると共に、ネットワークケーブル14を用いて画像処理装置8も接続されている。またディジタル信号入出力回路24を介して制御装置6は、ディジタル信号入出力ケーブル17及び18を用いて加工機械5及びロボット1に取り付けられた作業ツール2に接続されている。更に、ディジタル信号入出力ケーブル16によって、仮置き台4の治具4a,4bと接続されている。
また、操作盤インタフェース25には操作盤ケーブル19によって、教示操作盤27が接続されている。教示操作盤27には表示器27aと入力ボタン27bを備えており、この教示操作盤27を作業者が操作することにより、制御装置6を介してロボット1を操作することができる。
また、サーボインターフェース26には、通信ケーブル10,11を介してロボットの各軸及び走行軸3のサーボモータ等に接続されている。
作業プログラム作成装置7は、ハードディスク装置40を備え、作業プログラム定義データ、作業部位定義データが格納されている。この実施形態では、パレットP1上の作業ワークをロボット1で取り出し、仮置き台4の位置決め治具4aで位置決めし、その後加工機械5に取り付けて加工した後、該加工後の作業ワークを取り出し、パレットP3上に載置する第1の作業経路Raと、パレットP2上の作業ワークをロボット1で取り出し、仮置き台4の位置決め治具4bで位置決めし、その後加工機械5に取り付けて加工した後、該加工後の作業ワークを取り出し、パレットP4上に載置する第2の作業経路Rbとの2つの作業経路を有している。この作業経路Ra,Rb毎に作業プログラム定義データ41a,41bが格納されている。また、加工するワークW1,W2,W3…毎に作業部位定義データ42-1,42-2(図2では2つのワーク分のデータ)が記憶されている。更に、作業ワークW1,W2の図面データ43-1,43-2も記憶されている。
作業プログラム定義データ41a,41bは、ロボット1の作業対象の作業ワークが変わるとその作業ワークに依存して作業動作が変わる第1のプログラム部と、作業ワークが変わっても作業動作に変化がない第2のプログラムで構成され、作業ワークに依存する第1のプログラム部は、作業対象ワーク毎に格納された作業部位定義データに基づいて変更されて、ロボット動作プログラムが完成するように構成されている。
なお、この作業プログラム定義データ41a,41b、各作業ワークに対する作業部位定義データについての詳細は後述する。
又、画像処理装置8にはハードディスク装置30が接続されており、作業対象の作業ワークを検出するための基準となる作業ワークの画像データが格納されている。この実施形態では、作業ワークW1,W2に対して作業するものとして、この作業ワークW1,W2のロボット1の手首先端に取り付けられたカメラ9を使って、作業ワークW1及びW2を撮影することにより得た作業ワークW1用の画像データ31-1、作業ワークW2用の画像データ31-2が格納されている。
図3は、このロボットシステムによって行う作業の作業手順の流れ図である。まず、
作業ワークの位置決め治具4aとして、パレットP1から取り出した作業ワーク用のためのものをセットし(第1の作業経路Ra用)、位置決め治具4bはパレットP2から取り出した作業ワーク用のためのものをセットし(第2の作業経路Rb用)、また、加工機械5には、各作業経路Ra,Rbからの加工指令に対しては、それぞれの作業ワークを加工するための加工プログラムを選択し実行するよう設定される。以下の説明では、パレットP1に作業ワークW1を載置し、第1の作業経路Raに基づいて作業ワークを搬送、加工する場合を例として説明する。この場合、ワーク仮置き台4には、作業ワークW1の位置決め用治具が配置され、加工機械5には、第1の作業経路Raからの加工指令に対しては、作業ワークW1の加工を行う加工プログラムが選択されるように設定される。
走行軸3を動作させることにより、ロボット1はパレットP1に近づき、パレットP1の上空にカメラ9を移動し、パレットP1を撮影する(ステップ100)。
撮影された画像は画像処理装置8により作業ワークW1の基準画像データ31-1に基づいて作業ワークW1が存在するか解析され(ステップ101)、作業ワークW1が検出されなければ、撮影された画像と作業ワークW2の基準画像データ31-2と比較され作業ワークが存在するか解析され(ステップ102)、撮影画像内に作業ワークW1の画像データが検出されたならば、ロボット1をパレットP2に近づけ、カメラ9によりパレットP2を撮影する(ステップ103)。そして、撮影された画像を画像処理装置8により解析し、撮影画像内に画像データ31-1に対応する作業ワークW1の画像が存在するか判断され(ステップ104)、検出されなければ、画像データ31-2に対応する作業ワークW2の画像が存在するか判断され(ステップ105)、存在しなければ、「作業ワークは存在しません」という旨のメッセージ等のアラームを制御装置の表示装置又は、教示操作盤27の表示器27aに表示してこの作業を終了する(ステップ106)。
ステップ101で、パレットP1上に作業ワークW1が存在すると判断されたときには、第1の作業経路Raにより作業ワークW1に対する作業を開始する(ステップ107)。また、ステップ102で、パレットP1上に作業ワークW2が存在すると判断されたときには、第1の作業経路Raにより作業ワークW2に対する作業を開始する(ステップ108)。同様に、ステップ104で、パレットP2上に作業ワークW1が存在すると判断されたときには、第2の作業経路Rbにより作業ワークW1に対する作業を開始する(ステップ109)。ステップ105で、パレットP2上に作業ワークW2が存在すると判断されたときには、第2の作業経路Rbにより作業ワークW2に対する作業を開始する(ステップ110)。
図4〜図6は、ステップ107での第1の作業経路Raにより作業ワークW1の搬送、加工の作業を行う手順動作の流れ図である。
走行軸3を移動することで、パレットP1の正面に、ロボット1を移動する(ステップ200)。
ロボット1のアームを旋回し、作業ツール2をパレットP1の真上に移動する(ステップ201)。
ディジタル信号入出力回路24を使って、作業ツール2に対して“ハンドを開け”を意味するディジタル信号を出力することで、作業ツール2の爪先を開く(ステップ202)。
作業ツール2を作業ワークW1の掴み位置に移動する。この場合、必ず作業ワークW1の掴み位置より少し上の位置に一旦移動後に、真下に向かって掴み位置に移動する。なお、パレットP1から作業ワークを取り出す位置は、従来と同様に、基準となる位置が教示されており、作業ワークをとり出す毎にカウントするカウンタの値によって、この基準位置からのシフト量が決められており、このカウンタの値に基づいてパレットP1から作業ワークが順次取り出されることになる(ステップ203)。
ディジタル信号入出力回路24を使って、作業ツール2に対して“ハンドを閉じろ”を意味するディジタル信号を出力することで、作業ツール2の爪先を閉じ、作業ワークW1を掴む(ステップ204)。
作業ツール2を上にあげ、作業ワークW1を持ち上げる。この際、一旦作業ツール2を低速で少しだけ上げた後、速度を上げてさらに上方に作業ワークW1を持ち上げる(ステップ205)。
ロボット1のアームをロボット左側から右側に旋回すると同時に、走行軸3を動作させて、ロボット1を仮置き台4の正面に移動する(ステップ206)。
作業ツール2を位置決め治具4aの真上に移動する(ステップ207)。
作業ツール2を下方に移動し、作業ワークW1を位置決め治具4aに取り付ける。この際、一旦作業ワークW1を位置決め治具4aの少し上方に移動した後、真下にまっすぐに低速で位置決め治具4aに作業ワークW1を取り付ける(ステップ208)。
ディジタル信号入出力回路24を使って、作業ツール2に対して“ハンドを開け”を意味するディジタル信号を出力することで、作業ツール2の爪先を開く。これにより、作業ツール2は作業ワークW1を放す(ステップ209)。
作業ツール2を真上に少し移動して、位置決め治具4aから離れる(ステップ210)。
ディジタル信号入出力回路24を使って、位置決め治具4aに“クランプ閉じろ”を意味するディジタル信号を出力することで、位置決め治具4aのクランプを閉じて、治具に装着された作業ワークW1を正確に位置決めする(ステップ211)。
作業ツール2を真下に下げて、作業ワークW1が掴める位置に移動する(ステップ212)。
作業ツール2の爪先を閉じて、作業ワークW1を掴む(ステップ213)。
位置決め治具4aのクランプを開く(ステップ214)。
作業ツール2を上にあげて、作業ワークW1を持ち上げる。この際、位置決め治具4aの突き当て面に対して、低速で斜め上に少し作業ワークW1を移動した後、真上に少し移動し、速度を上げてさらに上方に移動する(ステップ215)。
ロボット1のアームを旋回して、加工機械5のドア正面に作業ツール2を移動する(ステップ216)。
加工機械5のドア開口部から、加工機械5の内部に作業ツール2を進入させる。この場合は、加工機械内部に作業ツール2と作業ワークW1が接触しないように、ロボット1のアームがまっすぐに進入するようにする(ステップ217)。
加工機械5のチャックに作業ワークW1を装着する。この際チャックの少し手前の位置で一旦停止した後、低速でチャックに作業ワークW1を装着する。装着後、ディジタル信号入出力回路24によって、加工機械5に“チャック閉じろ”を意味する信号を出力することで、加工機械5にチャックを閉じさせる(ステップ218)。
作業ツール2の爪先を開いて、作業ワークW1を放す(ステップ219)。
作業ツール2を低速にて、作業ワークW1から少しだけ離れる(ステップ220)。
加工機械5の内部から作業ツール2を引き出す。この場合、加工機械5の内部に作業ツール2を接触させないように、ロボット1のアームをまっすぐにして、加工機械5のドア開口部から引き出すようにする(ステップ221)。
加工機械5に対して、第1の作業経路Raからの指令として“作業ワークW1の加工を開始せよ”を意味するディジタル信号を出力する(ステップ222)。
加工機械5から、“作業ワークW1の加工が完了した”を意味するディジタル信号が制御装置6に入力されるまで待つ(ステップ223)。
加工機械5の内部に作業ツール2を侵入させる(ステップ224)。
加工済みの作業ワークW1の把持位置に作業ツール2を移動させる(ステップ225)。
作業ツール2の爪先を閉じて、作業ワークW1を掴む(ステップ226)。
加工機械5に対して“チャックを開け”を意味するディジタル信号を出力して、加工機械5のチャックを開く(ステップ227)。
作業ツール2を少し移動して、加工機械5のチャックから作業ワークW1を取り出す。この際、チャックから真っ直ぐに作業ワークW1を取り出す必要がある(ステップ228)。
作業ツール2を加工機械5の内部から退避する(ステップ229)。
ロボット1のアームをロボットの右側に旋回すると同時に、走行軸3を移動してパレットP3の正面にロボット1を移動させる(ステップ230)。
パレットP3の真上に作業ツール2を移動する(ステップ231)。
パレットP3の置き位置に作業ワークW1を置く。この場合、作業ツール2を一旦置き位置の少し上方で停止し、低速にて真っ直ぐに下方に移動して作業ワークW1をパレットP3上におくが、作業ワークの種類によって、このパレットP3に載置するときの姿勢が決まるので、この動作は作業ワークの種類に依存する作業動作となる。また、載置する位置は、パレットから取り出す場合と同様に、カウンタで作業ワークの載置数をカウントし、このカウント値に基づいて基準位置からのシフト量が決められて、その位置に載置されることになる(ステップ232)。
作業ツール2の爪先を開いて、作業ワークW1を放す(ステップ233)。
作業ツール2を真上に移動する。これは低速にて一旦少し上方に移動した後、速度を上げてさらに上方に移動する(ステップ234)。
、ロボット1のアームをロボット正面に旋回すると同時に走行軸3を移動して、ロボット1を待機位置に移動する(ステップ235)。
以上が第1の作業経路Raによる作業ワークに対する作業プログラム22bの作業手順である。
図7〜図9は、上述したステップ200〜ステップ235までの作業におけるロボット1の作業ツール2の動作経路を示したものである。このうち作業ワークに依存する動作経路は、ステップ203とステップ232による動作経路のみであり、これ以外の動作経路は作業ワークの種類に依存しないものである。例えば、パレットP1に作業ワークW2が載置されている場合でも、上記ステップ203とステップ232による動作経路以外は、同様の動作経路となる。
パレットP1によって搬入される作業ワークは、第1の作業経路Raにより、該パレットP1から取り出され、仮置き第4の位置決め治具4aで位置決めされた後、加工機械に搬入されて加工され、加工後の作業ワークはパレットP3に載置される経路を移動するものである。この場合、仮置き第4の位置決め治具4aには、パレットP1に載置された作業ワークに対応する治具がセットされ、加工機械5には、第1の作業経路Raによる動作処理中のロボットの制御装置6から指令される加工指令に対しては、パレットP1に載置された作業ワークを加工する加工プログラムが選択されるようにセットしておくものである。よって、ロボットの作業動作が作業ワークの種類により依存する動作はステップ203、232のパレットP1から作業ワークを把持して取り出すときの位置姿勢、及びパレットP3に加工後の作業ワークを載置するときの位置姿勢が、作業ワークの種類に依存することになる。
そこで、本実施形態では、作業ワークの種類に依存しない作業動作は、作業ワークの種類が変わっても、作業動作は変わらない点の作業のプログラムは固定し、作業ワークの種類に依存して変化する作業動作の部分は、作業するワークに対応して変更できるように、第1の作業経路Raにおける作業プログラム定義データ41aとして作業プログラム作成装置7に入力し、そのハードディスク装置40に格納しておく。同様に、パレットP2によって搬入された作業ワークを取り出し、仮置き台4の位置決め治具4bで位置決めした後、加工機械5に搬入し、加工した後、パレットP4に載置する第2の動作経路Rbに対する作業に対しても、ワークの種類に依存しない作業動作と作業ワークの種類に依存して変化する作業動作とにわけ、作業ワークの種類に依存して変化する部分は変更可能にして、第2の作業経路Rbにおける作業プログラム定義データ41bとして作業プログラム作成装置7に入力し、そのハードディスク装置40に格納しておく。
図10,図11は、ステップ201とステップ203における動作経路が作業ワークW1及びW2において、どのように異なるかを示したものである。図10は作業ワークW1の場合のステップ201とステップ203の動作経路を表わし、図11は、作業ワークW2の場合のステップ201とステップ203の動作経路を表わしたものである。作業ツール2は2指の把持ハンドである。
図10において、作業ワークW1において作業ツール2が把持可能な位置は51で表わす。把持可能な位置51は通常作業ワーク上にワークの座標系Σ93を定め、この座標系Σ93における3次元位置として表わされるのが一般的である。また作業ワークW1のパレットP1上の置き位置を71で表わす。置き位置71も同様に、パレットP1上にパレットの座標系Σ92を定め、この座標系Σ92における3次元位置として表わされる。図10、図11において、ステップ201とステップ203における作業ツール2の位置をツール位置61,62,63,64,65,66で表わした。作業ツール2の各位置は、通常ロボットの機構部における特定の位置を原点として定められたワールド座標系Σ90における3次元位置として表わされる。ロボット1の作業ツール2は、まずステップ200により、ツール位置61に位置する。次にステップ201により、ツール位置62に移動する。ツール位置62は、パレットP1から十分に離れた上空の位置として意味付けられており、作業ワークの種類にはよらない。また、後述するように、このときの作業ツール2の姿勢は、予め設定されたルールによって、変えられる場合があり、図10、図11に示す例では、姿勢が変えられない状態を破線で、又、次の作業状態における作業ツール2の姿勢に変更されたときの例を実線で表している。図10において、ステップ203は、作業ワークW1の十分近づいた真上のツール位置64へ移動するステップ203−1と、さらに作業ワークを作業ツールの把持位置51に接近したツール位置64へ移動するステップ203−2の2つの手順を含んでいる。ステップ203は作業ワークの種類に依存するものである。
図11では、ステップ201とステップ203での作業ワークW2に対するの動作経路を表わす。作業ワークW2の把持位置52も、ワーク上に定められた座標系Σ94における3次元位置として表わされる。作業ワークW2のパレットP1上の置き位置72は、パレット上の座標系Σ92における3次元座標位置として表わされる。作業ワークW1の場合と同様に、ステップ201によりツール位置61からツール位置62に移動し、ステップ203によりツール位置65からツール位置66に移動する。この場合、ツール位置61からツール位置62への動作経路はツールの種類には依存せず共通のものであり、図10に示す位置と変わりはない。又図10においては、ツール位置62からツール位置63,64への動作経路となっていたが、これは作業ワークW1の場合だけに必要な動作経路であり、作業ワークW1の把持位置51と置き位置71を元に作成されなければならないものである。図11においては、ツール位置62からツール位置65,66への動作経路は作業ワークW2の場合だけに必要な動作経路であり、作業ワークW2の把持位置52、置き位置72を元に作成されなければならないものである。
しかしながら、ツール位置62における作業ツール2は図10と図11において、位置は同じながらもツールの姿勢は異なっている。これは、ツール位置63およびツール位置65におけるツール姿勢と同じ姿勢を既にツール位置62において取っておく必要があるからである。ツール位置61からツール位置62への比較的長い距離を移動する間に、ツールの姿勢を変化させることで姿勢変化の速度をゆるやかにすることができる。これに対し、ツール位置62で姿勢変化を行わず(破線で示す状態)、ツール位置63もしくはツール位置65への距離の短い移動の際に作業ツール2の姿勢を変化させる場合には、姿勢変化の速度が急激となってしまう。姿勢変化の速度がロボット1の動作速度を超えてしまった場合には、ツール位置63及びツール位置65において、正しいツール姿勢に達しないまま、作業ワークへの把持位置であるツール位置64及びツール位置66に移動してしまい、作業ワークと作業ツールが衝突してしまう。そのため、作業ワークの種類に依存しないステップ201の動作経路と、作業ワークの種類に依存するステップ203の動作経路を接続するためには、ツール位置62におけるツール姿勢の位置データを作業ワークに合わせて修正する必要がある。
そこで、この実施形態では、作業ワークの種類に依存しない動作経路から作業ワークの種類に依存する動作経路に移行するときの繋ぎ目において、他の物との干渉やロボットのストロークリミットを越えるような事態、さらには、ロボットの最大動作速度を越えるような事態が発生しないように、作業ワークの種類に依存する作業ツール2の姿勢に障害なく移行できるように、所定のルールを決め予め作業プログラム作成装置7に設定し、記憶手段に記憶させているものである。このルールの一例として、ステップ201とステップ203−1の移動距離が等しい場合には、ツール位置62の姿勢は、ツール位置61とツール位置63(又はツール位置65)の姿勢の中間を取ることで、緩やかに姿勢変化となるようなルールを適用するほうが望ましい。そこで、この実施形態では、第一のルールとして、ツール位置62からツール63又は65への作業ツール2姿勢の変化量、つまりロボット手首軸のW,P,Rの変化量と動作速度から、毎秒当りのW,P,Rの変化量を計算し、W,P,Rの変化量のうち、ロボットの最大動作速度を超えるものが一つでもある場合には、図10,図11のツール位置62における作業ツールの姿勢を実線で示すように作業ワークを把持するときの姿勢(ツール位置63,65の姿勢)にする。また、第二のルールとして、第一のルールを適用しない場合で、かつ、ツール位置63又は65の姿勢とツール位置61での姿勢の変化量、つまりW,P,Rのうち、一つでも180deg以上変化するものがある場合には、ツール位置62の姿勢を、ツール位置63又は65とツール位置61の中間姿勢を取るように変更する。これら以外の場合には、図10,図11で破線で示すように、姿勢の変化がないツール位置61のツール姿勢と同一の姿勢とする。
また、作業対象のワークによっては、作業ワークに依存しない一律的に決まったツール位置62から、作業ワークによって決まるツール位置63又はツール位置65に移動する際、その移動経路の途中に障害物があったり、移動経路の途中でロボット1の動作範囲外になってしまうことがある。例えば、一般的に作業ワークへの接近を開始するツール位置63,65は、作業ワークよりも少し上方に取る必要があるが、このツール位置63,65に接続するツール位置62はツール位置63,65よりもさらに高い位置に取らなければ、作業ワークと接触してしまう可能性がある。そのため、ツール位置63,65のZ座標とツール位置62のZ座標を比較し、ツール位置62のZ座標がツール位置63,65のZ座標より小さい場合には、ツール位置62のZ座標をツール位置63,65のZ座標値と等しくなるように変更を行うというルールをも設けるようにする。
次に、上述した第1の作業経路Raで作業ワークを搬送し、加工しする作業プログラム定義データの例の一部を以下に示す。この例はステップ200からステップ203までの作業プログラムのための定義データである。
1:カクジク イチ[1] 100% ナメラカ100
2:カクジク イチ[2] 100% ナメラカ100
3:RDO[1]=オン
4:タイキ RDI[1]=オン
5:チョクセン %WorkApproachPos% 1000mm/sec イチギメ
6:チョクセン %WorkGripPos% 200mm/sec イチギメ
7:イチ[1]{
X=1688.40mm,Y=30.30mm,Z=1331.45mm,
W=64.62deg,P=−85.60deg,R=116.35deg
};
8:イチ[2]{
X=1679.51mm,Y=−17.91mm,Z=1316.07mm,
W=64.62deg,P=−85.60deg,R=116.35deg
};
各行の「:」の前の数字は行数を表わす。1行目はステップ200のための定義データであり、最高速の100%で滑らかに(位置決めせずに)次の位置へ移動する指令である。2行目はステップ201のための同様な移動の定義データである。3行目と4行目はステップ202のための定義データであり、作業ツールのハンドを開いて、その開き終わりを待つ指令である。5行目はステップ203−1、6行目はステップ203−2のための定義データであり、作業ワークを把持する指令でありワークの種類によって変えられる部分である。7行目はステップ200における作業ツール2の目標位置を表わすもので、図10、図11におけるツール位置61のことであり、X,Y,Zは作業ツール位置を表し、W,P,Rは、ロボットの手首軸の回転角を示し作業ツールの姿勢を表すものである。8行目はステップ201における作業ツール2の目標位置を表わすもので、図10、図11におけるツール位置62のことである。作業プログラム定義データ中で「%」と「%」で囲まれた部分は、この作業プログラム定義データ中では未定義なデータを表わし、「%」と「%」で囲まれた未定義データは、作業ワークの種類に依存する部分で作業ワーク毎に用意される作業部位定義データ42-1,42-2によって定義される部分である。
この、作業部位定義データ42-1(42-2)としては、例えば、下記のようなものが作業プログラム作成装置7に接続されたハードディスク装置40内に格納されている。
%WorkApproachPos%{
X=1679.51mm,Y=−17.91mm,Z=1416.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg

%WorkGripPos%{
X=1679.51mm,Y=−17.91mm,Z=1316.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg

%WorkApproachPos%は、図10におけるツール位置63を意味し、%WorkGripPos%は、図10におけるツール位置64を表わす。
作業プログラム作成装置7は、作業プログラム定義データ41aのうち、作業ワークに依存しないプログラム部分のみの作成を行い、次の作業プログラムを得る。
カクジク イチ[1] 100% ナメラカ100
カクジク イチ[2] 100% ナメラカ100
RDO[1]=オン
タイキ RDI[1]=オン
イチ[1]{
X=1688.40mm,Y=30.30mm,Z=1331.45mm,
W=64.62deg,P=−85.60deg,R=116.35deg
};
イチ[2]{
X=1679.51mm,Y=−17.91mm,Z=1316.07mm,
W=64.62deg,P=−85.60deg,R=116.35deg
};
次に作業プログラム定義データ41aのうち、作業ワークに依存するプログラム部分の作成を行うが、この際、ステップ101で検出した作業ワークW1に対する作業部位定義データ42-1が参照され、以下の作業プログラムを得る。
チョクセン イチ[3] 1000mm/sec イチギメ
チョクセン イチ[4] 200mm/sec イチギメ
イチ[3]{
X=1679.51mm,Y=−17.91mm,Z=1416.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg

イチ[4]{
X=1679.51mm,Y=−17.91mm,Z=1316.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg

得られた二つの作業プログラムを一つに結合して、作業プログラムを完成させる。この際、前述したルールに従って、動作経路のつなぎ目の位置であるイチ[2]において、ツール姿勢、高さ位置等を変える処理がなされ、以下の作業プログラムが得られる。この例では、イチ[2]のツール姿勢W,P,Rの値をイチ[3]と同じにする変更処理がなされた例を示す。
カクジク イチ[1] 100% ナメラカ100
カクジク イチ[2] 100% ナメラカ100
RDO[1]=オン
タイキ RDI[1]=オン
チョクセン イチ[3] 1000mm/sec イチギメ
チョクセン イチ[4] 200mm/sec イチギメ
イチ[1]{
X=1688.40mm,Y=30.30mm,Z=1331.45mm,
W=64.62deg,P=−85.60deg,R=116.35deg
};
イチ[2]{
X=1679.51mm,Y=−17.91mm,Z=1316.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg
};
イチ[3]{
X=1679.51mm,Y=−17.91mm,Z=1416.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg

イチ[4]{
X=1679.51mm,Y=−17.91mm,Z=1316.07mm,
W=29.18deg,P=−88.69deg,R=150.21deg

以上のように、作業ワークの種類に依存して変化する動作プログラム部分を変更可能な形で作業動作を定義した作業プログラム定義データ41a,41bが作業プログラム作成装置7に接続されたハードディスク装置40内に格納され、この作業ワークの種類に依存して変化する部分は、作業部位定義データ42-1,42-2として作業ワーク毎に格納される。
この作業部位定義データは、作業ワークの種類に依存してそのロボットの作業動作が決まる部分において、1つ1つ、作業ツールの位置、姿勢を入力、格納するようにしてもよいが、作業ワークのCADデータや画像データに基づいて自動的に作業プログラム作成装置7が作成するようにしてもよい。
作業ワークW1,W2等の図面データを、一般的な2次元/3次元CADにより作成し、作業プログラム作成装置7に入力する。この作業ワーク図面データは、例えばAutoCADで用いられているDXFファイルフォーマットなどがある。作業ワーク図面データには作業ワークW1の把持位置51及び作業ワークW2の把持位置52および、作業ワークW1の置き位置71および作業ワークW2の置き位置72の情報は、DXFファイルにおけるエンティティとして作成される。エンティティとは点、線、面などの図面データの構成要素を表わすもので、IDや名前を持つことができる。ここでは、把持位置51および52を表わすエンティティには、WorkGripPosという名前をつけ、作業ワークの置き位置71及び72を表わすエンティティには、WorkCenterPosという名前をつける。これらエンティティの座標はDXFファイルが持つ座標系、つまりワーク座標系Σ93,Σ94で表わされている。作業プログラム作成装置7は作業ワーク図面データを読み込む際、WorkGripPosおよびWorkCenterPosという名前のエンティティを検索する。これらエンティティが図面データ内に検出された場合、ワールド座標系Σ90における作業ワークの位置、つまりワーク座標系Σ93およびΣ94の、ワールド座標系Σ90での位置を作業プログラム作成装置7において入力する。これによりワールド座標系Σ90におけるWorkGripPosおよびWorkCenterPosのエンティティの位置が求まる。予め作業ツール2のおけるツール座標系Σ91におけるツール先端点2a与えられており、ツール先端点2aを作業ワークの把持位置51又は52と一致するように、ロボットの位置と姿勢を求めることができる。このロボットの位置と姿勢を、作業部位定義データ42-1及び42-2における%WorkGripPos%とする。作業部位定義データ42-1及び42-2における%WorkApproachPos%は、%WorkGripPosと同じ姿勢で、Z方向に一定距離だけ離れた位置とする。
作業プログラム作成装置7において、ワーク座標系Σ93およびΣ94のワールド座標系Σ90での位置を入力するかわりに、画像処理装置8により、パレット上に置かれた作業ワークをカメラ9により撮像し、これにより作業ワークの中心位置を求める。つまりこれは作業ワークW1またはW2における置き位置71および72の位置であり、これは作業ワークW1及び作業ワークW2の図面データ43-1及び43-2により与えられたWorkCenterPosのエンティティの位置ということになり、これからワールド座標系Σ90におけるワーク座標系Σ93及びΣ94の位置を求め、これから作業部位定義データ42-1及び42-2における%WorkApproachPos%および%WorkGripPos%を求めることができる。
この実施形態では、パレットP1から作業ワークを取り出し加工した後パレットP3に載置する第1の作業経路RaとパレットP2から作業ワークを取り出し加工した後パレットP4に載置する第2の作業経路Rbがあり、この第1,第2の作業経路Ra,Rbに合わせて、作業プログラム定義データ41a,41bを作業プログラム作成装置7のハードディスク装置40に格納しておき、この実施形態のシステムで取り扱う作業ワーク毎に上述した作業部位定義データ42-1,42-2を作業プログラム作成装置7のハードディスク装置40に格納すればよい。作業プログラム定義データ41a,41bは一度格納しておけば、作業経路に変更がない限り新たに作成及び格納する必要はない。そして新たな作業ワークが発生する毎に作業部位定義データを作成して格納すればよく、
そして、例えば、図3において、ステップ107で第1の作業経路Raで作業ワークW1のための作業が選択された場合、作業プログラム定義データ41aと作業部位定義データ42-1とにより作業ワークW1に対する作業プログラムが作成されることになる。また、ステップ108で、第1の作業経路Raで作業ワークW2のための作業が選択された場合、作業プログラム定義データ41aと作業部位定義データ42-2とにより作業ワークW2に対する作業プログラムが作成され、ステップ109で、第2の作業経路Rbで作業ワークW1のための作業が選択された場合、作業プログラム定義データ41bと作業部位定義データ42-1とにより作業ワークW1に対する作業プログラムが作成され、ステップ110で、第2の作業経路Rbで作業ワークW2のための作業が選択された場合、作業プログラム定義データ41bと作業部位定義データ42-2とにより作業ワークW2に対する作業プログラムが作成されることになる。
なお、上記、実施形態ではロボットハンドにより作業ワークを把持する作業に関する説明を行っているが,ロボットが行う作業がアーク溶接である場合には、図面データにより、溶接開始位置の点エンティティと、溶接経路を線分で表わした形状データの両方が必要となる。溶接経路を線分で表わすかわりに、経路上の複数の点エンティティにより溶接経路を表わすこともできる。またロボットで行う作業がバフがけ作業の場合には、図面データにより、バフがけ作業を行うための面エンティティを表わす形状データのみを与えるだけでよい。
本発明の一実施形態の作業プログラム作成装置により作成する作業プログラムを適用するロボットを用いた生産システムの全体概要図である。 同システムの制御系のブロック図である。 同システムにおける作業動作の流れ図である。 同流れ図におけるステップ107の詳細な作業動作の流れ図である。 図4の続きの流れ図である。 図5の続きの流れ図である。 ロボット1動作の一例における作業ツール2の動作経路の一部を説明する説明図である。 作業ツール2の動作経路における図7の続きの説明図である。 作業ツール2の動作経路における図8の続きの説明図である。 作業ワークをパレットから取り出す作業時における作業ツールの位置姿勢の説明図である。 別の作業ワークをパレットから取り出す作業時における作業ツールの位置姿勢の説明図である。
符号の説明
1 ロボット
2 作業ツール
3 走行軸
4 仮置き台
4a,4b 作業ワークの位置決め用治具
5 加工機械
6 制御装置
7 作業プログラム作成装置
8 画像処理装置
9 カメラ
P1,P2,P3,P4 パレット
W1,W2 作業ワーク

Claims (4)

  1. ロボットに作業指示を与える作業プログラムの作成装置において、
    作業対象となる作業ワークに依存した変更を必要とするプログラム部と、作業ワークの種類に依存しないプログラム部からなる作業プログラム定義データ、及びワークの位置姿勢情報を示す作業部位定義データを記憶する記憶手段と、
    前記作業部位定義データに基づいて、前記作業対象となる作業ワークに依存した変更を必要とするプログラム部に前記変更を施して作業プログラムを完成させる手段と、
    を備えた作業プログラム作成装置。
  2. ロボットに作業指示を与える作業プログラムの作成装置において、
    作業対象となる作業ワークに依存した変更を必要とする第1プログラム部と、前記変更後の第1プログラム部との経路接続に伴う位置・姿勢の変更以外は、対象ワークの種類に依存しない第2プログラム部からなる作業プログラム定義データ、及びワークの位置姿勢情報を示す作業部位定義データを記憶する記憶手段と、
    第1プログラム部と第2プログラム部の移動経路を接続するための所定ルールを記憶する手段と、
    前記変更前の第1プログラム部と、前記作業部位定義データに基づいて、第1プログラム部に前記変更を施して該第1プログラム部を完成させる手段と、
    前記所定ルールに基づいて第2プログラム部に記述された位置データを修正し、前記完成した第1プログラム部と第2プログラム部の移動経路を接続する手段と、
    を備えた作業プログラム作成装置。
  3. 前記作業部位定義データは、作業ワークの図面データから作成することを特徴とする請求項1又は請求項2に記載の作業プログラム作成装置。
  4. 前記作業部位定義データは、作業ワークをカメラで撮像した画像から作成することを特徴とする請求項1又は請求項2に記載の作業プログラム作成装置。
JP2003386969A 2003-11-17 2003-11-17 作業プログラム作成装置 Expired - Fee Related JP3905075B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003386969A JP3905075B2 (ja) 2003-11-17 2003-11-17 作業プログラム作成装置
US10/988,545 US20050107919A1 (en) 2003-11-17 2004-11-16 Operation program preparation device
EP04257102.6A EP1533087B1 (en) 2003-11-17 2004-11-16 Operation program preparation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003386969A JP3905075B2 (ja) 2003-11-17 2003-11-17 作業プログラム作成装置

Publications (2)

Publication Number Publication Date
JP2005149216A true JP2005149216A (ja) 2005-06-09
JP3905075B2 JP3905075B2 (ja) 2007-04-18

Family

ID=34431524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003386969A Expired - Fee Related JP3905075B2 (ja) 2003-11-17 2003-11-17 作業プログラム作成装置

Country Status (3)

Country Link
US (1) US20050107919A1 (ja)
EP (1) EP1533087B1 (ja)
JP (1) JP3905075B2 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007159703A (ja) * 2005-12-12 2007-06-28 Kyoei Seiko Kk アタッチメント動作装置
JP2010046752A (ja) * 2008-08-21 2010-03-04 Kobe Steel Ltd ロボット走行台車の移動経路の決定方法及びその決定方法を実施可能なロボットシステム
JP2011518015A (ja) * 2008-04-22 2011-06-23 ネステク ソシエテ アノニム 飲料生成装置のモジュール組み立て
JP5414948B1 (ja) * 2013-03-29 2014-02-12 三菱電機株式会社 数値制御装置
US8915177B2 (en) 2008-08-08 2014-12-23 Nestec S.A. Beverage machine with carrying handle and configurable appearance and side functions
DE102015003436A1 (de) 2014-03-24 2015-09-24 Fanuc Corporation Robotersteuereinrichtung mit einer Funktion zum Vorhersagen des Bearbeitungsabschlusszeitpunkts einer Werkzeugmaschine
US9398829B2 (en) 2007-10-04 2016-07-26 Nestec S.A. Integrated heater for a beverage preparation device
US9439533B2 (en) 2007-10-04 2016-09-13 Nestec S.A. Heating device with an integrated thermoblock for a beverage preparation machine
KR20200037253A (ko) * 2017-07-27 2020-04-08 컨버전트 인포메이션 테크놀로지스 게엠베하 서로 다른 변형들을 갖는 작업편들을 처리하기 위한 로봇들의 효율적인 프로그래밍
JP7011700B1 (ja) * 2020-11-13 2022-01-27 株式会社大気社 変換方法および変換アプリケーション
WO2023073958A1 (ja) * 2021-10-29 2023-05-04 ファナック株式会社 プログラム作成装置、制御装置、及び機械システム

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990383B2 (en) * 2003-02-03 2006-01-24 Deere & Company Infinitely variable, order specific, holistic assembly process control system
JP4137927B2 (ja) * 2005-08-04 2008-08-20 ファナック株式会社 ロボットプログラミング装置
JP4235214B2 (ja) * 2006-07-04 2009-03-11 ファナック株式会社 ロボットプログラムを作成するための装置、プログラム、記録媒体及び方法
US20080058990A1 (en) * 2006-08-31 2008-03-06 General Electric Company Robotic programming control using multiple binary input
JP4726241B2 (ja) * 2007-02-16 2011-07-20 シュンク・ジャパン株式会社 産業用ロボットのロボットハンド
DE102007027617B4 (de) * 2007-06-12 2015-06-25 Rehau Ag + Co. Verfahren zur Lackierung von Bauteilen durch Verwendung eines Lackierroboters
JP4465012B2 (ja) * 2008-01-31 2010-05-19 ファナック株式会社 搬入/搬出ロボットと協調動作する加工ラインシステム
US8457791B2 (en) * 2009-03-10 2013-06-04 GM Global Technology Operations LLC Method for dynamically controlling a robotic arm
JP4621789B2 (ja) * 2009-06-02 2011-01-26 ファナック株式会社 物品搬送ロボットシステム
JP5675393B2 (ja) * 2011-01-31 2015-02-25 武蔵エンジニアリング株式会社 動作プログラムの自動生成プログラムおよび装置
JP5459255B2 (ja) * 2011-04-08 2014-04-02 株式会社安川電機 ロボットシステム
JP5426722B2 (ja) * 2012-05-24 2014-02-26 ファナック株式会社 ロボットプログラム変更装置
JP5702811B2 (ja) 2013-01-30 2015-04-15 ファナック株式会社 動作プログラム作成装置
US9724795B2 (en) * 2013-11-07 2017-08-08 Apex Brands, Inc. Tooling system with visual identification of attached component
CN105792996B (zh) * 2013-11-28 2017-07-25 三菱电机株式会社 机器人系统以及机器人系统的控制方法
US20170072513A1 (en) * 2014-02-24 2017-03-16 Howon Co., Ltd. Hybrid welder
WO2015166574A1 (ja) * 2014-05-01 2015-11-05 本田技研工業株式会社 多関節ロボットのティーチングデータ作成装置及び作成方法
JP6114361B1 (ja) 2015-11-02 2017-04-12 ファナック株式会社 オフラインのロボットプログラミング装置
JP6348149B2 (ja) * 2016-07-08 2018-06-27 ファナック株式会社 ロボットを用いてレーザ加工を行うレーザ加工ロボットシステム
JP6464213B2 (ja) * 2017-02-09 2019-02-06 ファナック株式会社 レーザ加工ヘッドおよび撮影装置を備えるレーザ加工システム
CN107096727B (zh) * 2017-06-19 2019-11-29 苏州诚晟信息技术有限公司 一种智能化加工系统
JP6595558B2 (ja) * 2017-10-30 2019-10-23 ファナック株式会社 レーザ加工システム
JP6705793B2 (ja) * 2017-11-28 2020-06-03 ファナック株式会社 加工システム
US20220402127A9 (en) * 2019-11-26 2022-12-22 Teradyne, Inc. Multi-angle end effector
CN114845843A (zh) * 2020-01-16 2022-08-02 欧姆龙株式会社 程序生成装置、程序生成方法以及生成程序
US20220117209A1 (en) * 2020-10-16 2022-04-21 Verdant Robotics, Inc. Precision fluid delivery system
US20230241773A1 (en) * 2022-01-28 2023-08-03 Intrinsic Innovation Llc Category-level manipulation from visual demonstration

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS642882A (en) * 1987-06-25 1989-01-06 Omron Tateisi Electron Co Robot control method
JPS6464016A (en) 1987-09-03 1989-03-09 Nec Corp Robot teaching system
JP2942812B2 (ja) * 1994-04-25 1999-08-30 オークマ株式会社 変種変量生産プログラムの作成装置
US5740327A (en) * 1994-12-27 1998-04-14 Nec Corporation Method of and apparatus for robot tip trajectory control
US6167328A (en) 1995-09-19 2000-12-26 Kabushiki Kaisha Yaskawa Denki Robot language processing apparatus
WO2002099549A2 (en) * 2001-06-07 2002-12-12 Siemens Aktiengesellschaft Tiered control architecture for material handling
DE10148519A1 (de) * 2001-10-01 2003-04-24 Siemens Ag Programmierverfahren zur Erstellung eines Steuerungsprogramms einer industriellen Maschine

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007159703A (ja) * 2005-12-12 2007-06-28 Kyoei Seiko Kk アタッチメント動作装置
US9398829B2 (en) 2007-10-04 2016-07-26 Nestec S.A. Integrated heater for a beverage preparation device
US10413115B2 (en) 2007-10-04 2019-09-17 Societe Des Produits Nestle S.A. Heating device with an integrated thermoblock for a beverage preparation machine
US10413116B2 (en) 2007-10-04 2019-09-17 Societe Des Produits Nestle S.A. Heating device with an integrated thermoblock for a beverage preparation machine
US9439533B2 (en) 2007-10-04 2016-09-13 Nestec S.A. Heating device with an integrated thermoblock for a beverage preparation machine
JP2014158948A (ja) * 2008-04-22 2014-09-04 Nestec Sa 飲料生成装置のモジュール組み立て
US8850957B2 (en) 2008-04-22 2014-10-07 Nestec S.A. Modular assembly of a beverage preparation machine
JP2011518015A (ja) * 2008-04-22 2011-06-23 ネステク ソシエテ アノニム 飲料生成装置のモジュール組み立て
US8915177B2 (en) 2008-08-08 2014-12-23 Nestec S.A. Beverage machine with carrying handle and configurable appearance and side functions
JP2010046752A (ja) * 2008-08-21 2010-03-04 Kobe Steel Ltd ロボット走行台車の移動経路の決定方法及びその決定方法を実施可能なロボットシステム
US9846424B2 (en) 2013-03-29 2017-12-19 Mitsubishi Electric Corporation Numerical control apparatus
JP5414948B1 (ja) * 2013-03-29 2014-02-12 三菱電機株式会社 数値制御装置
DE102015003436B4 (de) * 2014-03-24 2017-10-26 Fanuc Corporation Robotersteuereinrichtung mit einer Funktion zum Vorhersagen des Bearbeitungsabschlusszeitpunkts einer Werkzeugmaschine
US9715227B2 (en) 2014-03-24 2017-07-25 Fanuc Corporation Robot controller having function of predicting processing completion time of machine tool
DE102015003436A1 (de) 2014-03-24 2015-09-24 Fanuc Corporation Robotersteuereinrichtung mit einer Funktion zum Vorhersagen des Bearbeitungsabschlusszeitpunkts einer Werkzeugmaschine
KR20200037253A (ko) * 2017-07-27 2020-04-08 컨버전트 인포메이션 테크놀로지스 게엠베하 서로 다른 변형들을 갖는 작업편들을 처리하기 위한 로봇들의 효율적인 프로그래밍
KR102532843B1 (ko) 2017-07-27 2023-05-15 컨버전트 인포메이션 테크놀로지스 게엠베하 서로 다른 변형들을 갖는 작업편들을 처리하기 위한 로봇들의 효율적인 프로그래밍
JP7011700B1 (ja) * 2020-11-13 2022-01-27 株式会社大気社 変換方法および変換アプリケーション
WO2023073958A1 (ja) * 2021-10-29 2023-05-04 ファナック株式会社 プログラム作成装置、制御装置、及び機械システム

Also Published As

Publication number Publication date
US20050107919A1 (en) 2005-05-19
EP1533087A3 (en) 2008-08-20
JP3905075B2 (ja) 2007-04-18
EP1533087B1 (en) 2016-04-06
EP1533087A2 (en) 2005-05-25

Similar Documents

Publication Publication Date Title
JP3905075B2 (ja) 作業プログラム作成装置
JP4235214B2 (ja) ロボットプログラムを作成するための装置、プログラム、記録媒体及び方法
EP2993542B1 (en) Teaching system, robot system, and teaching method
JP4676544B2 (ja) 工作機械に対してワークの供給及び取り出しを行うロボットを制御するロボット制御装置
JP5160700B1 (ja) Nc工作機械システム
CN108942880B (zh) 机器人系统
JP6010776B2 (ja) ロボットシステムの制御方法およびロボットシステム
US7129664B2 (en) Robot controller
US20090125146A1 (en) Method of and Apparatus for Automated Path Learning
CN110914020B (zh) 具有机器人的操纵装置以及方法和计算机程序
WO2004108365A1 (ja) 多関節ロボットのティーチングデータ作成方法
US20190314992A1 (en) Method of operating robot, computer program, and robot system
JP5807337B2 (ja) ロボット搬送装置
CN110788861B (zh) 机器人翻转折弯的方法及折弯机器人
JP2023037769A (ja) システム、及び自動搬送車
Jinno et al. Teaching-less robot system for finishing workpieces of various shapes using force control and computer vision
Daeinabi et al. Seam tracking of intelligent arc welding robot.
Yin et al. Path planning algorithm for bending robots
WO2024008257A1 (en) Method and control system for generating a path for a robot arm and a tool attached to the robot arm
JP5089530B2 (ja) ロボット走行台車の移動経路の決定方法及びその決定方法を実施可能なロボットシステム
CN115922132A (zh) 旋转类结构件多点拼焊方法、系统和存储介质
Kang et al. Development of multi welding robot system for sub assembly in shipbuilding
JP2005144615A (ja) 自動機械の制御装置
CN117921712A (zh) 机器人控制器
Sairam et al. Path planning of robot assisted sheet metal bending to improve productivity

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060718

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061031

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061124

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070110

R150 Certificate of patent or registration of utility model

Ref document number: 3905075

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140119

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees