JP2009181506A - 生産管理装置を備えた生産システム - Google Patents

生産管理装置を備えた生産システム Download PDF

Info

Publication number
JP2009181506A
JP2009181506A JP2008022027A JP2008022027A JP2009181506A JP 2009181506 A JP2009181506 A JP 2009181506A JP 2008022027 A JP2008022027 A JP 2008022027A JP 2008022027 A JP2008022027 A JP 2008022027A JP 2009181506 A JP2009181506 A JP 2009181506A
Authority
JP
Japan
Prior art keywords
production system
work
program
robot
workpiece
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
JP2008022027A
Other languages
English (en)
Other versions
JP4465012B2 (ja
Inventor
Koji Nishi
浩次 西
Atsushi Mizuno
水野  淳
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=40591852&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2009181506(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2008022027A priority Critical patent/JP4465012B2/ja
Priority to EP08022200.3A priority patent/EP2088490B1/en
Priority to US12/340,784 priority patent/US8073567B2/en
Priority to CN200810190541XA priority patent/CN101498922B/zh
Publication of JP2009181506A publication Critical patent/JP2009181506A/ja
Application granted granted Critical
Publication of JP4465012B2 publication Critical patent/JP4465012B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41815Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • 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/31From computer integrated manufacturing till monitoring
    • G05B2219/31078Several machines and several buffers, storages, conveyors, robots
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50362Load unload with robot
    • 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)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Factory Administration (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

【課題】生産システムの状態に応じてロボットの作業プログラム等を呼び出すことにより、プログラムを変更すると共に、エラーからの復旧を容易にする。
【解決手段】生産システム(1)の生産管理装置(10)は、ワーク(W)についてのワーク情報とロボット(11〜13)の複数の作業プログラムおよび加工機械(21、22)の複数の加工プログラムについてのプログラム情報とにより構成される生産システムモデル(4)を予め記憶する記憶手段(3)と、ロボットおよび加工機械の実行状態を表す実行状態信号と検出器(311、321)からのワーク信号とに基づいて生産システムモデルを更新する更新手段(5)と、更新後の生産システムモデルに基づいて一つの作業プログラムおよび一つの加工プログラムを選択すると共に選択された作業プログラムおよび作業プログラムの実行を前記ロボットおよび加工機械にそれぞれ指示する指示手段(6)とを備える。
【選択図】図7

Description

本発明は、産業用ロボットと加工機械と生産管理装置とを備えた生産システムに関する。
産業用ロボット(以下、ロボットと略称する。)と加工機械とから構成される生産システムでは、その振る舞いはロボットと加工機械の連携動作によって定義される。この連携とは、例えば、ロボットが未加工のワークを加工機にセットした後で加工機械が加工すること、加工機械による加工が終わったらロボットが加工済みのワークを取り出すこと、などである。このような単純な連携に加えて、連携動作は、加工機械が加工している時間を利用して、ロボットが次に加工するべきワークを搬送する、といった並列の動作も含む。
これらの連携を実現するために、ロボットと加工機械とは何らかの形態で通信できるようになっている。ロボットと加工機械とを直接通信させるという形態もありうるし、ロボットと加工機械とをそれぞれPLCに接続して、PLCを介して接続してもよい。
いずれの形態においても、前述したロボットと加工機械との連携を実現するためには、この連携を把握する生産管理装置が必要である。もっとも単純な形態においては、ロボットが生産管理装置の役割を果たす。この場合には、ロボットがワークを加工機械にセットした後で、ロボットが加工機械に対して加工を指示し、加工機械での加工プログラムが終了するのを待ち、その後、ワークを取り出すということができる。また、加工機械が生産管理装置の役割を果たす場合には、加工機械がロボットに対して、加工済みワークの取り出しと、未加工ワークのセットを指示して、ロボットの作業が終わったら、加工を開始する。
しかし、ロボットが生産管理装置の役割を果たす場合には、ロボットの作業プログラムがロボット自体に対する作業と加工機械に対する指令とを含むので、ロボットの作業プログラムは複雑になり、その変更が難しくなる。加工機械が生産管理装置となる場合も同様に、ロボットの作業プログラムは簡単になるものの、加工機械の加工プログラムはその分だけ複雑になる。
そこで、複雑な振る舞いを実現するためには、独立した生産管理装置を準備し、生産管理装置がロボットと加工機とに対して指示を出す形態を取るのが好ましい。これにより、ロボットの作業プログラムと、加工機械の加工プログラムとの両方は簡単になる。
1台のロボットと1台の加工機械とから構成される生産システムですら、ロボットと加工機械とが同時に動作可能であるために、ロボットおよび加工機械の振る舞いを一つのプログラムとして表現することは難しい。
複数のロボットと複数の加工機械とから構成される一般的な生産システムにおいては、それらの振る舞いを記述することはより困難になる。これは、複数のロボットおよび複数の加工機械が同時に動作可能な生産システムにおいては、生産システム全体としての状態の数が、個々のロボットの状態の数および個々の加工機械の状態の数の組み合わせで表されるので、生産システム全体としての状態の数が膨大になるからである。
この問題を解決するために、特許文献1ではロボットの作業プログラムを或る単位で分割し、生産システムの状況に応じて適切な作業プログラムが起動されるようにしている。この方法では、ある単一の作業プログラムに対してこの作業プログラムが起動されるための条件を関連づけるために、生産システム全体としての状態の総数を把握する必要がない。従って、既存の生産システムに対して、作業プログラムを新規に追加することや、作業プログラムを変更することが容易になる。
特開2006−343828号公報
しかしながら、プログラムと、そのプログラムが実行可能な条件を関連づけるという特許文献1の方式では、生産システムを構成するロボットおよび加工機械の状態を把握できるようにするだけでは不十分である。この場合には、ロボットおよび加工機械の状態だけでなく、ワークを把持する治具およびロボットハンドの状態を把握する必要がある。さらに特に重要なことにワークが生産システムの中をどのように流れているかということを把握する必要がある。
生産システムでエラーが起きた場合において、ワークの流れを把握する重要性について説明する。
例えば、二つのロボットからなる生産システムで、ロボット1aがワークをテーブルAからテーブルBに運び、ロボット2aがワークをテーブルBからテーブルCに運ぶという動作があったとしてみる。ロボット1aが正しくワークをテーブルAからテーブルBに搬送したならば、ワークはテーブルBに存在しているはずである。
しかし、ロボット1aの搬送の後、なんらかの原因でワークがテーブルBから落下してしまうということが起こりうる。そのような場合には、ロボット2aは当然だがこのワークを運ぶことはできないから、この状態はエラーになる。
しかし、ワークの流れを把握していない生産システムでは、ワークがテーブルBに存在しているはずという情報を最初からもっていないために、ワークがテーブルBから落下したとしてもこれを認識せず、ロボット2aが、存在しないワークをテーブルBに取得するよう移動する。
仮にテーブルBに何らかのセンサがついており、ワークがテーブルBに存在していればロボット2aがワークを取りに行くというプログラムの関連づけをしてあったとすると、ロボット2aが存在しないワークを取得するよう動作することはない。ただし、この場合には、ワークがテーブルBに存在しないために生産システムはそこで動作を停止してしまう。このとき、生産システムはエラー状態にあるにもかかわらず、2台のロボットはいずれも正常に動作している。つまり、ロボットの状態を把握しているだけでは、生産システムでエラーが起きているのかどうかを把握することはできない。
さらに、このようなワークが期待する場所に存在しないことに基づくエラーが発生した場合、ワークの流れを把握できない生産システムではそのエラーを解消するための手段は明確ではない。前述した例においては、ワークがテーブルBから落下していることがエラーの原因であることは明らかである。そして、ワークをテーブルBに置きなおせばよいのか、ワークを取り除いてしまうのがよいか、あるいはワークをテーブルAに戻すのが良いか、といった選択肢が、この原因に対して存在する。
ワークをテーブルBに置きなおすという選択肢が最良であると考えられるが、テーブルBへのワークの置き方によってはロボット2aがワークを把持できない可能性がある。また、ワークを取り除くか、またはワークをテーブルAに戻すという選択肢の場合には、ワークの流れを把握していない生産システムでは、ワークがロボット以外の何者かによって移動するということを把握しておらず、従って、その後に生産システムが正常に稼動するのかどうかは不明である。
本発明の目的は、生産システムの状態をワークの流れまでも含めて把握し、その状態に応じてロボットの作業プログラムおよび/または加工機械の加工プログラムを選択することにより、プログラムの変更や、エラーからの復旧が容易となる生産システムを提供することにある。
前述した目的を達成するために1番目の発明によれば、生産システム内の生産工程を管理する生産管理装置と、複数の加工プログラムを含んでいてワークを加工する少なくとも一つの加工機械と、複数の作業プログラムを含んでいて前記加工機械に対してワークを供給すると共に前記加工機械から前記ワークを搬出する少なくとも一つのロボットと、前記ワークを配置可能な少なくとも一つの仮置き台と、前記ワークが前記仮置き台に存在するか否かを表すワーク信号を出力する少なくとも一つの検出器と、前記生産管理装置、前記ロボット、前記加工機械、および前記検出器をそれぞれ接続する通信手段とを備えた生産システムにおいて、前記生産管理装置は、前記ワークについてのワーク情報と、前記少なくとも一つのロボットの前記複数の作業プログラムおよび前記少なくとも一つの加工機械の前記複数の加工プログラムについてのプログラム情報とにより構成される生産システムモデルを予め記憶する記憶手段と、前記通信手段により受信された、前記ロボットおよび前記加工機械の実行状態を表す実行状態信号と前記検出器により出力されたワーク信号とに基づいて、前記記憶手段に記憶された前記生産システムモデルに含まれるワーク情報及びプログラム情報を更新する更新手段と、前記更新手段により更新された生産システムモデルに基づいて、前記ロボットの前記複数の作業プログラムから一つの作業プログラムおよび前記加工機械の前記複数の加工プログラムから一つの加工プログラムを選択すると共に、選択された作業プログラムおよび作業プログラムの実行を前記通信手段を通じて前記ロボットおよび前記加工機械にそれぞれ指示する指示手段と、を備えている生産システムが提供される。
2番目の発明によれば、1番目の発明において、前記生産システムが、複数の前記ロボットと、複数の前記加工機械とを含んでおり、前記指示手段は、さらに、前記更新手段により更新された生産システムモデルに基づいて、前記複数のロボットのうちの一つのロボットおよび前記複数の加工機械のうちの一つの加工機械を選択すると共に、前記作業プログラムおよび加工プログラムの実行を前記通信手段を通じて、選択された前記ロボットおよび前記加工機械にそれぞれ指示するようにした。
3番目の発明によれば、1番目または2番目の発明において、前記生産システムがエラーにより停止した場合には、前記生産管理装置は、前記生産システムモデルにおける前記プログラム情報が、前記通信手段により受信された最新の実行状態信号と整合すると共に、前記生産システムモデルにおける前記ワーク情報が、前記通信手段により受信された最新のワーク信号と整合した場合にのみ、前記生産システムを再び作動させるようにした。
4番目の発明によれば、3番目の発明において、前記生産管理装置は、前記生産システムモデルにおける前記プログラム情報と前記最新の実行状態信号とが整合しない場合にはこれら実行状態信号を表示すると共に、前記生産システムモデルにおける前記ワーク情報と前記最新のワーク信号とが整合しない場合にはこれらワーク信号を表示する表示手段を備える。
5番目の発明によれば、3番目または4番目の発明において、前記生産管理装置は、前記生産システムモデルを変更する変更手段を備えており、前記変更手段によって、前記生産システムモデルにおける前記プログラム情報と前記最新の実行状態信号とが整合すると共に、前記生産システムモデルにおける前記ワーク情報と前記最新のワーク信号とが整合する場合には、前記生産システムを再び作動させるようにした。
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
生産システムモデルについて
本発明の実施形態を説明する前に、生産システムの振る舞いを表現するための記法である生産システムモデルについて説明しておく。振る舞いとは、生産システムがどのように動くかということを示すものである。生産システムは、それらを構成するロボットに内蔵される複数の作業プログラム、加工機械に内蔵される複数の加工プログラム、生産管理装置に内蔵されるプログラムによって動作する。従って、生産システムの振る舞いを決定しているのはそれらプログラムであり、生産システムの振る舞いを表現するとは、プログラムの動作を表現することである。
具体的には、生産システムモデルは、加工機械によって加工されるべきワークについてのワーク情報と、少なくとも一つのロボットの複数の作業プログラムおよび少なくとも一つの加工機械の複数の加工プログラムについてのプログラム情報とにより構成される。ここで、ワーク情報は、ワークの種類、個数、および加工状態を含んでいる。また、プログラム情報は、複数の作業プログラムおよび複数の加工プログラムの実行の順番を含んでいる。
図1に、生産システムを構成する生産管理装置、ロボット、加工機械の一例を示す。この生産システム1は、ワークWを搬送するための三つのロボット11〜13、ワークWを加工するための二つの加工機械21、22、これらの連携を管理するための生産管理装置10を含んでいる。
それぞれのロボット11〜13には、ロボットの動作を記述する複数のプログラムA1〜An、B1〜Bn、C1〜Cnがそれぞれ保存されている。これらプログラムを、本発明では作業プログラムと呼ぶ。同様に、加工機械21、22はワークWを加工するための複数の加工プログラムD1〜Dn、E1〜Enがそれぞれ保存されている。作業プログラムおよび加工プログラムはいずれも生産システム1の作成者が作成するものである。
それぞれのロボット11〜13、それぞれの加工機械21、22と生産管理装置10とは通信手段60により相互に通信可能である。この通信手段60によって、生産管理装置10はロボット11〜13および加工機械21、22に対して作業プログラムまたは加工プログラムの実行を指示することができる。逆に、ロボット11〜13および加工機械21、22から生産管理装置10に対しては、その時点でのロボットや加工機械の実行状態の信号を通知することと、作業プログラムまたは加工プログラムの実行結果の信号を通知することとを行うことができる。なお、簡潔にする目的で、図2および図3においては、通信手段60の参照符号を省略している。
生産システム1は、種々の周辺機器と、生産システム1によって処理されるワークWとをさらに含む。図2は、図1に例示した生産システムの周辺機器を示すものである。ロボット11〜13には周辺機器として二つのハンド14〜19がそれぞれ接続されている。そして、加工機械21、22にはそれぞれ治具23、24が取り付けられている。
図示されるようにハンド14〜19および治具23、24にはセンサ141〜191、231、241がそれぞれ取り付けられている。これらセンサによって、ハンド14〜19がワークWを把持しているのかいないのか、治具23、24がワークWを把持しているのかいないのかということが検出できる。これらのセンサは、通常はロボット11〜13や加工機械21、22に接続されている。この生産システム1では、これらのセンサの信号は、ロボット11〜13または加工機械21、22を経由して、生産管理装置10が受信できるようになっている。
図2には、さらに、2つの仮置き台31、32と4つのパレット置き場41、42、51、52とが示されている。仮置き台31、32は、複数のロボットの間でワークWを受け渡しするときに、ワークWを一時的におく場所である。これら仮置き台31、32にはセンサ311、312がそれぞれ取り付けられている。これらセンサ311、312によって、生産管理装置10は、仮置き台31、32にワークWが置かれているかいないのかを信号(ワーク信号)として受信する。センサ311、312は生産管理装置10に接続されており、生産管理装置10は仮置き台31、32のそれぞれにおけるワークWの有無を把握できる。
生産システムにおいて供給されると共に排出されるワークWは、パレットやコンテナといったなんらかの入れ物に納められていることが普通である。図2には、例として、ワークWを供給するためのパレットを配置する二つの供給パレット置き場41、42、およびワークを排出するためのパレットを配置する二つの排出パレット置き場51、52が示されている。これらパレット置き場41、42にもセンサ411、421がそれぞれ取り付けられている(図3参照)。生産管理装置10は、パレット置き場41、42、51、52にパレットが置かれているのかどうかを検出することができる。
ワークWに相当する要素も、生産システム1を構成する。これまでに示した生産システム1にワークWを追加した図を、図3に示した。図3においては、ワークW1とワークW2とが収容される供給パレット40は供給パレット置き場41に置かれており、排出パレット置き場51には空の排出パレット50が置かれている。
ここで、供給パレット40および排出パレット50は本発明においてはワークWに相当するものとして扱う。これらパレット40、50は単にワークWの入れ物であり加工の対象にはならない。しかしながら、生産システム1を、入力された要素に何かの処理をして出力するものとして捉えると、パレット40、50も入出力されるので、パレット40、50をワークWに相当する要素として扱うことが可能である。一方、パレット置き場41、42、51、52および治具23、24は入出力されないので生産システム1の一部であるとみなす。
ここまでは、或る生産システム1の構成要素を解説してきた。次に、この生産システムの動的な側面、つまり生産システムの振る舞いを解説する。図1から図3より分かるように、生産システム1の振る舞いは、供給パレット40によって供給されたワークW1、W2をロボット11〜13により加工機械21、22にセットし、加工機械21、22がワークW1、W2を加工し、加工されたワークW1、W2をロボットが取り出し、これを排出パレット置き場51、52に置くというものである。また、供給パレット40が空になった場合には、ロボットが供給パレット40を排出パレット50として供給パレット置き場51まで移動させる。排出パレット50がワークで満載された場合には、排出パレット50を排出パレット置き場52へ排出するという振る舞いもある。図4は、このような振る舞いをより正確に表している。
図4は、ワークに相当する要素が、生産システムの中でどのように動いていくかということを示している。図4における円は、ワークに相当する要素の置き場所を示しており、矢印がワークに相当する要素の動きを示している。
例えば、供給パレット置き場41には、供給パレット40があり、供給パレット40には、ワークW1、ワークW2が収容されている。図4を参照すると、ワークW1およびワークW2は、ロボット11のハンド14まで移動し、次に仮置き台31に移動し、ロボット12のハンド16から治具23または治具24へ移動し、さらにロボット12のハンド17から仮置き台32へ移動し、最終的にロボット13のハンド18から排出パレット50まで移動する。
また、図4においては、供給パレット40がロボット11のハンド15を通じて供給パレット置き場41から供給パレット置き場42へ移動し、また排出パレット50は、排出パレット置き場51からロボット13のハンド19へ移動し、次にハンドハンド19から排出パレット置き場52へと移動することも示されている。
実際にはワークW1、W2はロボットにより移動されるが、理解を容易にする目的で、図4にはロボットは示されていない。また、同じ目的で、図4には、ワークW1やワークW2は加工機械21、22によって加工されるということが示されていない。
このことを図示したものが図5である。本発明では、図5の内容を生産システムモデルと称する。図5において、ワークに相当する要素が置かれる場所は円で示されている。ワークに相当する要素が置かれる場所としては、仮置き台31、32に加えて、ロボットのハンド14〜19および治具23、24が該当する。
図5においてワーク自体に相当する要素は、黒丸またはパレットの形態で示されている。黒丸はワークWを示しており、パレット40、50は、その内部に個別要素としてのワークW配置できる。図5における矩形は、ロボット11〜13で実行される作業プログラム、または加工機械21、22で実施される加工プログラムを示している。図5における矢印は、作業プログラムや加工プログラムを実行するための実行条件と、作業プログラムや加工プログラムが終了したときに実現される実行結果を表している。
ワーク
図5において黒丸はワークWを表している。ワークWは、本発明では次の属性を持つことができる。
(1).. ClassID: 種類を表す数字
(2).. InstanceID: ワークを一意に特定する数字
(3).. Status: 状態を表す数字(加工されたか、されていないか、など)
ClassIDは、ワークの種類を表す番号である。図5では1種類のワークしか表現していないが、生産システムが複数の種類のワークを入力として扱うことができるならば、それらのワークはClassIDで区別される。
InstanceIDは、ある特定の種類のワーク群(同じClassIDをもつワーク群)の中で、一意にワークを特定する番号である。これは必須の属性ではない。
Statusは、生産システムのなかでの、ワークの状態遷移を表すための番号である。本発明で例示している生産システムは、ワークを加工するという生産システムであるため、入力の時点ではワークは未加工であり、出力されるワークは加工済みになるはずである。このことを、未加工のワークはStatus=1、加工済みのワークはStatus=2という形で記述することができる。仮に、1つのワークを2回加工する必要があるならば、Status=2を第1工程加工済み、Status=3を第2工程加工済みとして扱えばよい。このようなワークの状態管理が不要ならば、Statusという属性は使わなくても構わない。
ワークの置き場所
図5において円またはパレットの形で示す要素は、その内部にワークWを置くことができる。ワークの置き場所には、そのワークの置き場所に置かれるワークWの数およびワークの種類などの条件が付随する。例えば、ハンド14は、ワークW1またはワークW2を把持する。ハンド14により把持可能なワークWの最大数は1である。さらに、把持可能なワークの種類も限定されており、ハンド14は、ワークW1やワークW2と同じ種類のワークしか把持できない。このような条件を、ワークの置き場所に付随する属性として記述しておく。記述方法はどのような形式でも構わないが、本発明では、つぎのような形式で記述する。
Count in 0..1
ClassID=2
上の表現では、ワークは0個、または1個置くことができること、かつ、ClassID=2でなくてはならないということが記述されている。この条件のことを本発明ではワーク条件と称する。
ワークの置き場所にセンサがついている場合には、このセンサからの信号と、生産システムモデルにおけるワークの置き場所に含まれるワークの個数や種類とを関連づけることができる。例えば、ハンド14に取り付けられたセンサがRC1.RI[1]という名前で参照できるとき、そのセンサが単純にワークの有無をOn/Offという信号で伝えてくる場合は、次のように、センサの信号とワークの置き場所に含まれるワークの数を関連づけられる。
RC1.RI[1]=ON −> Count >0
RC1.RI[1]=OFF −> Count =0
上の式は、RC1.RI[1]=ONであるならば、ワークの置き場所に含まれるワークの数は0より大きくなければならないということを記述している。下の式は、RC1.RI[1]=OFFならば、ワークの数は0でなくてはならないということを意味している。このような式のことを、本発明では、ワーク条件補完式と称する。
ここで注意しておきたいのは、この関連づけは信号の値に基づいてワークの個数や種類を求めるためのものではなく、信号の値とワークの個数や種類とが満たすべき条件を示しているということである。RC1.RI[1]=OFFになった瞬間に、生産システムモデルにおいてワークの置き場所に含まれるワークの数が0になるわけではなく、RC1.RI[1]=OFFであるならば、ワークの数が0でなくてはならないという条件を示しているだけであり、RC1.RI[1]=OFFであっても、生産システムモデル上のハンド14に含まれるワークの数が1であるという状況が起きることはありうる。
また、センサが表すことのできる情報は限られていることが多い。例えば、上の例であればハンド14がワークを把持しているか、いないかは検出できるが、把持しているワークの種類はわからない。従って、センサの信号は、生産システムモデルのワークの置き場所が持っているワークの種類や個数の情報を、補完するものとして用いる。
プロセス
図5においては、ロボット11〜13の作業プログラムおよび加工機械21、22の加工プログラムが矩形で表されている。これらを本発明ではプロセスと称する。プロセスは、以下の属性を持つ。
(1).. プロセスが実行されるロボット11〜13または加工機械21、22を特定する文字列
(2).. プロセスの名称
(3).. 実行状態
(4).. 終了状態および戻り値
例えば、作業プログラムA1が、ロボット11で実行されるPNS0011というプログラムに相当するものであり、現在実行中ではないならば、次のように表現できる。
Controller = Robot11
ProgramID = PNS0011
Status = idle
実行状態は、idle,running,pause,finishedの4つの状態を持つ。これらはそれぞれ、プログラムを起動していない状態、起動中、プログラムの一時停止中、プログラムが完了した状態、を示している。
また、作業プログラムおよび加工プログラムは、プログラム終了時に次の2つの値を返すものとする。
(1).. 正常終了か異常終了かを示す値 (終了状態)
(2).. 戻り値
終了状態は、作業プログラムまたは加工プログラムが正常に終了したかまたは異常終了したかを表している。ここで正常終了とは、プログラムが最後まで実行されて終了した場合、もしくは、あらかじめプログラム内に記述されたプログラムを終了させる命令によって終了した場合のいずれかを示す。異常終了とは、プログラムが本来終了するべきではない行で終了させられた場合を示す。
本発明では、作業プログラムおよび加工プログラムの終了時に、何らかの数値を返すことができるものとする。これを戻り値と呼ぶ。戻り値は生産システムモデルにとって必須ではない。使い方は後述する。
実行条件、実行結果
図5には2種類の矢印が含まれている。その一つは、ワークの置き場所からプロセスに向かう矢印であり、他の一つは、プロセスからワークの置き場所に向かう矢印である。ワークの置き場所からプロセスに向かう矢印は、プロセスを実行するためには何が必要であるか(実行条件)を示す。プロセスからワークの置き場所に向かう矢印は、プロセスの実行後に起きる変化(実行結果)を表す。
図6は実行条件と実行結果の例を示す図である。図6は、図5からロボット12の持つ作業プログラムB1に関係のある箇所を抽出したものである。以下、図6を例として、作業プログラムと、その実行条件と実行結果について解説する。
図6に示される、仮置き台31から作業プログラムB1に向かう矢印は、作業プログラムB1を実行するために必要な条件(実行条件)を示すものである。この実行条件には以下のことを記述可能である。
(1)..プログラムを実行することによって、仮置き台31にあるワークWの数、種類、状態におきる変化(例えばワークの移動)
(2)..プログラムを実行するために必要なロボット、加工機械、周辺機器の状態(事前条件)
作業プログラムB1は、仮置き台31からClassID=1をもつワークを取るというものだとすると、実行条件に含まれるワークの移動は次のように記述される。
Count = 1
ClassID = 1
これら式は、仮置き台31にワークが1つあることを示しているのではなく、作業プログラムB1が、ClassID=1であるワークを一つ必要としていることを意味している。つまり、仮置き台31にClassID=1であるワークが一つ以上ある場合には、作業プログラムB1の実行条件を満たす。そして、作業プログラムB1が実行されると、ClassID=1であるワークは、Countで指定された数だけ仮置き台31から消費される。つまり、前述した例においては、仮置き台31からワークが一つ減ることになる。
実行条件には、ワークWの移動だけでなく、事前条件も記述可能である。例えば、このプログラムを実行するためには、ロボット12がそのホームポジションにいる必要がある。ロボット12がホームポジションにいることが、仮にRC2.UO[7]という信号に出力されているならば、事前条件は次のように記述される。
RC2.UO[7]=ON
次に、この作業プログラムB1の実行結果を説明する。作業プログラムB1は、仮置き台31からワークWをロボット12のハンド16により取出すというものである。従って、その実行結果は、ハンド16にClassID=1をもつワークが一つ存在するというものである。これを記述すると次のようになる。
Count = 1
ClassID = 1
これら式の示すことは、作業プログラムB1が終了すると、矢印の先端に位置するハンド16に対して、ClassID=1であるワークを一つ追加するということである。この矢印も、ハンド16の状態を示すものではなく、ワークの移動を示すものであることに注意されたい。すなわち、この矢印は、ハンド16にClassID=1であるワークが一つあるという状態になることを意味する物ではない。
実行結果に対しても、ワークの移動だけでなく、ロボット、加工機械、周辺機器の状態を記述することができる。これを事後条件と称する。例えば、作業プログラムB1が終了したときに、ロボット12がホームポジションに戻っている必要があるならば、次のように記述する。
RC2.UO[7]=ON
なお、作業プログラムB1の終了時には、当然ハンド16に取り付けられたセンサがONになっているはずである。このことを事後条件に記述しても良いが、ワーク置き場としてのハンド16のワーク条件補完式に記述することがより望ましい。
作業プログラムおよび加工プログラムは、プログラムが正常終了したか、異常終了したかを示す値と、戻り値とを有している。戻り値は、実行結果におけるワーク移動式に使用することができる。例えば、ロボットに取り付けられた視覚センサによりワークの個数を測定する作業プログラムでは、その戻り値としてワークWの個数を返し、これをワーク条件式に次のように代入する。
Count= ReturnValue
これまでに述べた実行結果に関する説明は、すべて作業プログラムおよび加工プログラムの終了状態が正常である場合にのみ適用される。作業プログラムおよび加工プログラムの終了状態が異常であった場合、実行結果におけるワーク条件式に記述されたワークの移動は実行されない。
プロセスの実行
ここで、図6が表す情報をまとめてみる。まず、仮置き台31は、その場所にどのようなワークをいくつ置けるのかという情報を保持している。実行条件(矢印)は、作業プログラムB1が実行するのに必要なワークWの種類と数を表している。作業プログラムB1は、その実行の主体となるロボットと実際に実行されるプログラム名を保持している。
実行結果(矢印)は、作業プログラムB1が実行された後に出力されるワークWの種類と数を示している。そして、ハンド16は、ハンド16に置くことのできるワークWの種類と数の条件を保存している。
これらを総合すると、作業プログラムB1が実際に実行されるためには以下のことが満たされる必要がある。
(1).. 作業プログラムB1を仮に実行したとして、その後に仮置き台31に置かれているワークの種類と数が、ワークの種類と数に関する仮置き台31の条件を満たしていること。
(2).. 作業プログラムB1を仮に実行したとして、その後のハンド16に置かれているワークWの種類と数が、ワークの種類と数に関するハンド16の条件を満たしていること。
例えば、ハンド16に、Count in 0..1という条件が付随していた場合には、ハンド16にワークWが存在しているときに、作業プログラムB1を実行できない。その理由は、作業プログラムB1を実行すると、ハンド16にはワークWが一つ追加されてCount=2になり、このことがハンド16の条件を満たさないからである。
同様に、仮置き台31にワークWが存在していないときに、作業プログラムB1を仮に実行した場合には、仮置き台31に含まれるワークは「−1個」になり、これは仮置き台31の条件を満たさない。プロセスの実行には、そのプロセスに対応する作業プログラムおよび加工プログラムをそれぞれ保持するロボットおよび加工機械が、そのプログラムを実行可能であることが必要である。
例えば、作業プログラムB1は、ロボット12によって実行されるプログラムであるものの、ロボット12で他の作業プログラムを実行しているときには作業プログラムB1を実行することはできない。このことは自明な条件であるので、生産システムモデルに記述する必要はない。
実行条件および実行結果には、プロセスによって移動するワークに関する条件と、そのプロセスに対応するプログラムを実行するロボットや加工機械がそれを実行可能であるかという条件に加えて、ロボット、加工機械および周辺機器の状態を追加することができる。例えば、作業プログラムB1を実行するためには、事前にロボットが或る特定の位置(ここではホームポジションと称する)に在る必要がある。ロボットがホームポジションにいるということを示す信号が利用可能であるならば、このことを実行条件に追加することができる。また、生産システムに存在する他のロボットが動作中であるかないかが信号によって検出可能であるならば、これを実行条件に追加することもできる。
まとめ
以上をまとめると、図5で表される生産システムモデルは、生産システムにおける作業プログラムおよび加工プログラムと、それらのプログラムによってワークがどのように移動されるのか、ならびにそれらのプログラムはワークがどこにあるときに実行されるのか、ということを示すものであるといえる。このような生産システムモデルにより、生産システムの振る舞いを表現できる。また、ロボット、加工機械および周辺機器に取り付けられたセンサなどからの信号を、作業プログラムおよび加工プログラムの実行条件に追加することや、ワークの置き場所におけるワークの配置(数、種類)などを検証するための条件として追加することができる。
生産システムモデルで定義されている条件は、次の3つである。
(1).. ワークの置き場所は、ワーク条件とワーク条件補完式を持つ。
(2).. 実行条件は、ワーク移動式と事前条件を持つ。
(3).. 実行結果は、ワーク移動式と事後条件を持つ。
生産システムモデルの実装
次に、これまでに述べた生産システムモデルを使って生産システムを管理する生産管理装置10の実現方法を述べる。図5に示される生産システムモデルで表現された生産システムを管理するのが、生産管理装置10である。図7に示すように、生産管理装置10は、生産システムモデル4とそれを記憶する記憶手段3、エラー検出部2、情報収集部5、プログラム管理部6、およびユーザインタフェース部7を含んでいる。ユーザインタフェース部7は表示編集部8およびエラー表示部9を備えている。
まず、図7に示す生産システムモデル4は、前述したように生産システム1の状態を表現するものであり、図5の内容を生産管理装置が扱える形式で表現した生産システムモデル4が記憶手段3に保存されている。生産システムモデル4の形式はどのような形式でも構わないが、本発明では、XML形式で保存している。
情報収集部5は、ロボット11〜13、加工機械21、22および周辺機器に付けられたセンサと通信して受信されたロボットおよび加工機械の実行状態を表す実行状態信号およびセンサ、例えばセンサ311、321からのワークの有無を表すワーク信号とに基づいて、生産システムモデル4を更新する。プログラム管理部6は、生産システムモデル4を参照して実行可能な作業プログラムおよび加工プログラムがあればそれらプログラムを起動し、起動されたプログラムの実行状態を監視する。エラー検出部2は、生産システムモデル4に含まれるワークの置き場所や実行条件、実行結果に関連付けられた条件を監視し、条件が成り立っているかどうかを通知する役割を持つ。
プログラム管理部の動作
プログラム管理部6の詳細を述べる。図8は、プログラム管理部6の動作を示す。プログラム管理部6は、生産システムモデル4を参照し、実行可能なプログラムがあるかどうかを監視し続ける。実行可能なプログラムが存在した場合、プログラム管理部6はプログラム管理タスク6aを生成する。生成されたプログラム管理タスク6aは、ロボットおよび加工機械と通信してその実行可能なプログラムの起動を指示し、起動された作業プログラムや加工プログラムが終了するまで待機し、終了処理の後、自分自身を消滅させる。なお、生産システム1が複数のロボット11〜13および/または複数の加工機械21、22を備えている場合には、プログラム管理部6は実行可能なプログラムを備えたロボットおよび/または加工機械を複数のロボット11〜13および/または複数の加工機械21、22から選択することも行う。
実行可能なプログラムがあるかどうかの判断は、前述したように、そのプログラムを仮に実行したとして、その結果が入力となるワーク置き場、および出力となるワーク置き場に関連づけられた条件を満たすか、ということと、ロボット自身がそのプログラムを実行可能な状態になるかということと、ロボットや加工機械、周辺機器に取り付けられたセンサからの信号が実行条件に関連づけられた条件を満たしているかということとの3つで判定される。
プログラム管理タスク6aにおける起動処理では、次のことが行われる。
(1).. プログラムの実行条件に従い、生産システムモデル4において、入力となるワーク置き場からワークを削除する。
(2).. プログラムを実行するロボットもしくは加工機械に対して、プログラムの起動を指示する。
プログラム管理タスク6aが生成される時点では、選択されたプログラムが実行条件を満たすことがプログラム管理部6により既に確認されているので、プログラム管理タスク6aはプログラムの実行条件を調べる必要はない。
プログラム管理タスク6aにおける終了処理では、次のことが行われる。
(1).. プログラムを実行するロボットもしくは加工機械から、プログラムの終了を示す信号を受け取る。
(2).. プログラムの実行結果に従い、生産システムモデル4において出力となっているワーク置き場に対して、ワークを追加する。
この動きを、図6を用いて説明する。まず、仮置き台31には、ClassID=1であるワークWが一つ存在している。ハンド16にはワークが存在しておらず、かつ、ロボット12は何れの作業プログラムを実行していない状態だったとする。このとき、作業プログラムB1を実行できるので、プログラム管理部6は作業プログラムB1を実行するために、プログラム管理タスク6aを生成する。
プログラム管理タスク6aは、起動処理を行い、まず生産システムモデル4における仮置き台31から、ワークWを一つ取り除く。これにより、生産システムモデル4において、仮置き台31に置かれているワークWはゼロになる。次にプログラム管理タスク6aは、ロボット12と通信して、作業プログラムの実行を指示する。なお、この瞬間、現実の生産システムでは、仮置き台31に置かれたワークWは移動していないのは言うまでもない。
ロボット12におけるプログラムの実行状態がrunningからfinishedになったときに、プログラム管理タスク6aはプログラムの終了状態を取得する。図9に示されるように、終了状態が正常であれば、プログラム管理タスク6aはさらに戻り値を取得する。そして、プログラム管理タスク6aは、生産システムモデル4のハンド16に対して、ワークを1個追加して(図9における「ワークの移動」に相当する)、プログラムの状態をfinishedからidleに変更する。これにより、生産システムモデル4のハンド21には、ワークが1個置かれることになる。
事後条件が定義されていた場合は、図9に示されるように、プログラム管理タスク6aは、この直後に現在の生産システムの状態と事後条件との整合性を評価する。そして、整合がとれている場合には、プログラム管理タスク6aは消滅する。
一方、終了状態が異常であった場合には、図9に示されるようにプログラム管理タスク6aは戻り値を取得せず、またプログラムの状態をfinishedにしたままとする。さらに、事後条件を評価せず、またプログラム管理タスク6a自体も消滅しない。この場合には操作者が表示編集部8を用いて手動でエラーを解消した場合にのみ、事後条件の評価が行われる(図9を参照されたい)。
プログラム管理タスク6aは、同時に複数個生成可能である。つまり、複数のプロセスが実行可能であれば、その数だけプログラム管理タスク6aを生成して作業プログラムおよび/または加工プログラムを実行することができる。図1に示すように、ここで例示している生産システム1には三つのロボット11〜13および二つの加工機械21、22が存在しているので、条件が満たすならば最大で5つのプロセスが並列して実行されることになる。
情報収集部の動作
情報収集部5は単純な構成である。図10に示されるように、情報収集部5は、生産管理装置10の起動時に生産システムモデル4を読み込み、そのなかの条件に記述された信号の一覧表を作成する。前述したように、生産システムモデル4の中で信号を条件として記述できるのは、ワーク置き場の条件と、プロセスの実行条件、プロセスの実行結果の3種類である。生産システムモデル4に記述された全てのワーク置き場と全てのプロセスから、生産システムモデル4が監視する必要のある信号を抽出する。この信号の一覧表は、たとえば、次のようなものになる。
(1).. 仮置き台31のワークWの有無を示すセンサ311の信号
(2).. 仮置き台32のワークWの有無を示すセンサ321の信号
(3).. ハンド14のワークWの有無を示すセンサ141の信号
(4).. その他の信号
これらセンサが取り付けられたそれぞれの装置において、各センサは独自の文字列によって参照可能である。例えば、ロボット11のハンド14に取り付けられたセンサは、ロボット11においてRI[1]という文字列で参照可能であるとすれば、生産管理装置10ではこの信号を、Robot1.RI[1]という文字列によって参照することになる。なお、生産管理装置10とロボット11〜13、生産管理装置10と加工機械21、22との間の信号のやりとりは種々の方法で容易に実現可能であるので、その具体的な方法の説明を省略する。
エラー検出部の動作
エラー検出部2は、生産システムモデル4に定義された条件を周期的に評価し、次の2つの場合にエラーを通知する(図11)。
(1)..ワーク条件が、ワーク条件補完式を満たさない。
(2)..正常に終了していないプロセスがある(終了状態が異常である場合と、実行結果に含まれる事後条件が満たされていない場合)
前者は、生産システムモデル4で定義されたワークの移動と、生産システムに取り付けられたセンサからの信号が一致しないことを示し、後者はワークの移動とは関係なく生産システムの状態が所望の結果と異なることを示している。
ワーク条件がワーク条件補完式を満たさない場合の例は、例えば以下の通りである。図6において作業プログラムB1が実行されて、生産システムモデル4上ではワークがハンド16にあるはずであるが、現実にはロボット12がワークを途中で落としていて、ハンド16に取り付けられたセンサ161の信号がOFFになっている場合である。
また、プロセスの終了状態が異常であるときも、エラーとなる。このことの例は、例えば図6における作業プログラムB1の実行の途中で、何らかの原因で作業プログラムB1を終了させた場合である。この原因としては、ロボット12が予期せぬ障害物と衝突した状況、または、生産システムの操作者がロボット12を途中で手動で停止させたなどの状況が考えられる。
実行結果の一部である事後条件が満たされていない場合の例は、例えば図6において、作業プログラムB1が終了したときに、ロボット12がホームポジションにいない場合である。
なお、事前条件が満たされないために作業プログラムまたは加工プログラムが実行されないという場合もありうる。これは異常ではないが、生産システムが期待通りに動作していない状況である。この状況を、生産システムの操作者に示すために、生産管理装置10は任意の作業プログラムや加工プログラムに対して、事前条件の不一致をエラー表示部9に表示することができる。エラー表示部9の例を示す図13においては、信号”PLC.DO[3]”がONであるべきなのに、実際にはOFFになっていることを示している。生産システムの操作者は、この画面を見て、障害解決の糸口とすることができる。なお、図13における文字A〜Gのそれぞれは、図5に示される作業プログラムまたは加工プログラムを示している。
ユーザインタフェース部の動作
ユーザインタフェース部7は、生産システムモデル4を表示、編集するための表示編集部8と、エラーが発生したときにその原因を示すエラー表示部9とから構成される。
表示編集部8では、生産システムモデル4のワークの置き場所に含まれるワークの個数、種類、状態を手動で変更することができる。また、表示編集部8においては、プロセス(プログラム)の実行結果が異常であったときに、操作者は異常を手動で正常に戻すことができる。エラー表示部9は、図13を参照して既に示したように、プロセスの事前条件、事後条件やワーク条件とワーク条件補完式との整合性を表示する。
生産システムの運転
これまでに述べてきた生産システムモデル4を備えた生産管理装置10を使った生産システム1の典型的な運転方法を述べる。
ワークの投入
この生産システムが動作するためには、まずワークが必要であり、ワークが生産システムモデル4のなかのワークの置き場所に存在することがスタートとなる。生産システムモデル4にワークを投入するには、次の2つの方法がある。
(1).. 生産管理装置の手動編集部の有する機能を使って、生産システムモデル4上のワークの置き場所に、ワークを追加する。
(2).. 何らかの周辺装置によって、ワークの置き場所に存在するワークの数や種類を検出可能な場合には、ワークを投入する機能を持ったプログラムを実行させる。
前者がもっとも簡単な方法であり、この方法においては、生産システムの操作者が手動で生産システムモデル4上の任意のワークの置き場所にワークを投入するという操作をするだけである。しかし、この方法は手動の操作になるので、無人運転の生産システムには使えない。
生産システムを無人で運転するためには、周辺装置やPLCなどからワークの数や種類といった情報を取得できるようにしておかなければならない。このような生産システムであれば、これらの情報を取得するという作業プログラムを実行することで、ワークを生産システムモデル4上に投入できる。例えば、倉庫と連動した生産システムを考える。この例では、倉庫と生産システムはつぎのように信号をやり取りするものとする。
(1).. 倉庫は、生産システムに対して、ワークを供給するときに、ワークの個数を示す信号を送出する。
(2).. 倉庫は、生産システムに対して、ワークを供給するときに、ワーク供給を示す信号をONにする。
(3).. 生産システムから、倉庫に対して、ワークの数を取得したことを示す信号がONになると、倉庫からワーク供給を示す信号はOFFになる。
このような倉庫に対して、生産システム側ではワークの個数を取得する作業プログラムを用意し、倉庫が生産システムに対してワークを供給する供給場所を、生産システムモデル4においてワークの置き場所として示しておく(図12を参照されたい)。このとき、生産システムモデル4では、倉庫からの信号がONのときに、倉庫からワークの個数を取得するというプログラムを実行するように定義しておく。倉庫からの信号がPLC.DI[1]という文字列で表現できるとき、この条件は、作業プログラムの実行条件として次のように記述できる。
ワーク移動式 無し
事前条件 PLC.DI[1]= ON
この作業プログラムは、その内部でワークの個数を倉庫から取得して、倉庫に対してワークの個数を取得したという信号を送る。ワークの個数は戻り値として返す。このとき、実行結果は次の式で表される。
ワーク移動式 Count = ReturnValue
事後条件 PLC.DI[1] = OFF
これにより、倉庫から信号がきたときに、ワークの個数を取得するという振る舞いが実現される。
通常運転
生産システムモデル4においてワークが投入されると、プログラム管理部6により実行可能な作業プログラムおよび加工プログラムが起動され、作業プログラムおよび加工プログラムを実行した結果として、ワークが生産システムモデル4内を移動していく。この動作は、実行可能な作業プログラムおよび加工プログラムが存在しなくなるまで続く。通常、実行可能なプログラムが存在しない状態はワークに対する作業がすべて終了して、ワークがすべて排出場所まで移動した状態である。
ワークの排出
ワークの排出は、ワークの供給とほぼ同様に、手動で生産システムモデル4から取り除くか、あるいは同じ働きをするプログラムを実行することで実現される。
エラーの発生と検出
本発明で述べる生産システムでは、次のエラーが検出できる。
(1).. 作業プログラムおよび加工プログラムが正常に終了していない場合
(A) 作業プログラムおよび加工プログラムが異常終了した場合
(B) 作業プログラムおよび加工プログラムは正常終了したが、生産システムモデル4において、作業プログラムおよび加工プログラムの実行結果の事後条件が整合しない場合
(2).. 生産システムモデル4において、ワークの置き場所に関連づけられたワーク条件と、ワーク条件補完式とが整合しない場合
作業プログラムおよび加工プログラムが正常に終了していないというエラーは、作業プログラムおよび加工プログラムの実行の結果が、期待する状況にならなかったということを示す。このエラーにおいては、エラーが発生するタイミングはプログラムの終了時である。
生産システムモデル4においてワークの置き場所に関連づけられたワーク条件とワーク条件補完式とが整合しないというエラーは、生産システムのモデルである生産システムモデル4と実際の生産システムの状況が一致していないことを示す。このエラーは、常時発生する可能性がある。
本発明の特徴は、生産システム管理装置が生産システムモデル4というモデルを持ち、このモデルと実際の生産システムの状態とを比較することでエラーを検出するというものである。このモデルと実際の生産システムとを比較するという方式により、ワークの流れまでも把握してエラーを検出することができるようになっており、また後述するように、エラー状態からの復旧を容易にすることができる。
なお、上記の2つのエラー(1)、(2)以外にも、作業プログラムおよび加工プログラムの動作中にアラームが発生する場合があるが、この時点では本発明ではエラーとして扱わない。例えば、或るロボットにおいて、作業プログラムの実行中に何らかの障害物に衝突してアラームが発生し、作業プログラムが一時停止状態になったとする。この状態は、単に生産システムモデル4において、該当する作業プログラムの実行状態がrunningからpausedに代わるだけである。この状態は、障害物を取り除き作業プログラムを再開すれば、生産システムが動作を続けることができるので、本発明ではエラーとは扱わない。しかし、この状態で作業プログラムを終了した場合には、異常終了ということになり、本発明におけるエラーの定義の内のひとつに該当する。
エラー状態からの復旧
本発明に従う生産システムでエラーが発生した場合、次の手順で復旧する。作業プログラムまたは加工プログラムが正常に終了していない場合のエラーを最初に対処する必要がある。作業プログラムまたは加工プログラムの異常終了は、例えば操作者が途中終了を指示した場合に生じる。あるいは、作業プログラムまたは加工プログラムの異常終了は、プログラムの実行中にロボットまたは加工機械の電源が落ちることによりプログラムが途中で停止してその後実行を継続できない場合に生じる。
いずれの場合においても操作者によるエラー復旧作業は、異常終了したプログラムの実行結果の事後条件を満たすようにロボットまたは加工機械を手動で操作することである。例えば、ロボットが何からの障害物に衝突して作業プログラムが異常終了した場合には、ロボットのアームの位置は当然正常終了した場合の位置とは異なるので、事後条件を満たさない。そこで、操作者はロボットを手動で操作して、プログラムが正常に終了した場合の位置まで移動させる。この復旧作業によって、ロボットの作業プログラムまたは加工機械の加工プログラムが正常終了した場合と同じ状態になる。
次いで、ワークの配置が、モデルと実際のシステムとで異なっている場合には、このエラーを復旧しなくてはならない。このエラーからは二つの復旧方法が存在する。一つの復旧方法は、生産システムモデル4におけるワーク情報、つまりワークの種類、個数、および加工状態を、実際の生産システムにおけるワークの状態と一致させることである。他の復旧方法は、実際の生産システムの状態を変更し、それにより、実際の生産システムの状態と生産システムモデル4とを一致させることである。どちらの手段であっても、モデルと実際の状態とを単に一致させればよい。
エラー状態では、生産システムの操作者は、モデルと実際の生産システムとが一致していないのはどれであるかをエラー表示部9に表示することができる。この画面には次の情報が含まれる。
(1).. 異常終了となったプロセスがあれば、そのプロセスの名前
(2).. 生産システムモデル4において、作業プログラムおよび加工プログラムの実行結果の事後条件が整合しない部分
(3).. ワークの置き場所に関連づけられたワーク条件と、ワーク条件補完式の整合しない部分
具体的には、エラー標示部9は、プロセスが異常終了しているのであればそのプロセスの名前を示し、また、プロセスが正常終了しているにもかかわらず生産システムモデルが定義するプロセスの事後条件と、通信手段60を通じて受信された最新の実行状態信号とが整合しない場合にはこれら実行状態信号を表示する。さらに、エラー標示部9は、プロセスの結果によって更新された生産システムモデル4のワーク情報が、通信手段60を通じて受信された最新のワーク信号によるワーク条件補完式を満たさない場合にはこれらワーク信号を表示する。
例えば、図6は仮置き台31からロボット12がハンド16でワークを取得するというプログラムである。このプログラムを実行した結果、プログラムは正常終了したが、その後ワークがハンド16から落下した場合を仮定する。このとき、生産システムモデル4上ではワークがハンド16に把持されていることになっているものの、このことは実際とは異なっており、生産システムモデルにおけるワーク情報が、最新のワーク信号によるワーク条件補完式を満たさないということによってエラーとして検出される。生産管理装置10は、そこでハンド16において生産システムモデルと実際の生産システムとが一致していないことを生産システムの操作者に通知する。
ここで、実際のシステムを生産システムモデル4に合わせるとすれば、生産システムの操作者がワークを拾ってハンド16に把持させれば良い。これにより、生産システムモデルと実際の生産システムとが一致する。
生産システムモデル4を現実の生産システムに合わせる場合には、生産システムモデル4のハンド16におけるワークを削除してもよい。あるいは実際のシステムでワークを仮置き台31上に置き直して、生産システムモデル4上でもワークをハンド16から仮置き台31に移動させるということもできる。どの方法でももっとも簡単な方法を選ぶことが可能である。
復旧後の再開
エラーが発生すると、プログラム管理部6はプログラム選択動作を停止する。しかし、この状態でも、情報収集部5は動作を続けるため、生産管理装置は、生産システムがエラー状態になったままか、それともエラー状態が解消されたのかを監視しつづけている。前述の例では、ハンド21におけるモデルと実際の生産システムとの間の不一致が解消されるまでは生産管理装置10は、生産システムの操作者からの再開の指示を受けつけない。
すなわち、生産管理装置10は、生産システムモデル4におけるプロセスが正常に終了した状態になっていることが、通信手段60を通じて受信された最新の実行状態信号によって確認されると共に、前記生産システムモデル4におけるワーク情報が、通信手段60により受信された最新のワーク信号によって確認された場合にのみ、生産システム1を再び作動させるようにしている。
生産システムの操作者がモデルと実際を一致させるように作業して、エラー状態が解消されると、生産管理装置10は再開の指示を受け付け、プログラム管理部6がプログラムの選択動作を再開する。前述の例において、落としたワークをハンド16に把持させた場合には、その状態から実行可能なプログラムが起動されることになる。あるいは、ワークを仮置き台31に置いた場合には、再度、仮置き台31からワークを取得するという作業プログラムB1が実行されることになる。あるいは、生産管理装置10の表示編集部8を用いて、操作者が異常(エラー状態)を手動で正常に戻すようにしてもよい。
一般の生産システムにおいては、生産システムに対して何らかの手動介入があった後の運転再開には注意が必要である。その理由は、手動介入の結果、生産システムが期待する状態になっているかどうかを判定する手段がないからである。これに対して、本発明の生産システムでは、作業プログラム(または加工プログラム)が実行できるかどうかは実行条件によって判定されている。従って、本発明の生産システムにおいては、手動介入の有無に関わらず、生産システムが期待する状態になっていなければプログラムは呼び出されない。従って、エラーからの復旧といった手動介入の後でも、生産システムを安全に運転再開することができる。
生産システムを構成する生産管理装置、ロボット、加工機械を示す略図である。 生産システムを構成する周辺機器を示す図である。 生産システムが扱うワークを含んだ生産システムを示す図である。 ワークの流れを示す図である。 生産システムモデルを示す図である。 実行条件と実行結果の例を示す図である。 生産管理装置の機能モジュールを示す図である。 プログラム管理部の動作を示す図である。 終了処理の詳細を示す図である。 情報取得部の動作を示す図である。 アラーム通知部の動作を示す図である。 ワークの供給を示す図である。 条件の不一致の表示内容を示す図である。
符号の説明
1 生産システム
2 エラー検出部
3 記憶手段
4 生産システムモデル
5 情報収集部(更新手段)
6 プログラム管理部(指示手段)
6a プログラム管理タスク
7 ユーザインタフェース部
8 表示編集部(変更手段)
9 エラー表示部
10 生産管理装置
11〜13 ロボット
14〜19 ハンド
21、22 加工機械
23、24 治具
31、32 仮置き台
40 供給パレット
41、42 供給パレット置き場
50 排出パレット
51、52 排出パレット置き場
60 通信手段
141〜191、231、241、411、421、511、521 センサ
A1〜An、B1〜Bn、C1〜Cn 作業プログラム
D1〜Dn、E1〜En 加工プログラム
W、W1、W2 ワーク

Claims (5)

  1. 生産システム内の生産工程を管理する生産管理装置と、複数の加工プログラムを含んでいてワークを加工する少なくとも一つの加工機械と、複数の作業プログラムを含んでいて前記加工機械に対してワークを供給すると共に前記加工機械から前記ワークを搬出する少なくとも一つのロボットと、前記ワークを配置可能な少なくとも一つの仮置き台と、前記ワークが前記仮置き台に存在するか否かを表すワーク信号を出力する少なくとも一つの検出器と、前記生産管理装置、前記ロボット、前記加工機械、および前記検出器をそれぞれ接続する通信手段とを備えた生産システムにおいて、
    前記生産管理装置は、前記ワークについてのワーク情報と、前記少なくとも一つのロボットの前記複数の作業プログラムおよび前記少なくとも一つの加工機械の前記複数の加工プログラムについてのプログラム情報とにより構成される生産システムモデルを予め記憶する記憶手段と、
    前記通信手段により受信された、前記ロボットおよび前記加工機械の実行状態を表す実行状態信号と前記検出器により出力されたワーク信号とに基づいて、前記記憶手段に記憶された前記生産システムモデルに含まれるワーク情報及びプログラム情報を更新する更新手段と、
    前記更新手段により更新された生産システムモデルに基づいて、前記ロボットの前記複数の作業プログラムから一つの作業プログラムおよび前記加工機械の前記複数の加工プログラムから一つの加工プログラムを選択すると共に、選択された作業プログラムおよび作業プログラムの実行を前記通信手段を通じて前記ロボットおよび前記加工機械にそれぞれ指示する指示手段と、を備えている生産システム。
  2. 前記生産システムが、複数の前記ロボットと、複数の前記加工機械とを含んでおり、
    前記指示手段は、さらに、前記更新手段により更新された生産システムモデルに基づいて、前記複数のロボットのうちの一つのロボットおよび前記複数の加工機械のうちの一つの加工機械を選択すると共に、前記作業プログラムおよび加工プログラムの実行を前記通信手段を通じて、選択された前記ロボットおよび前記加工機械にそれぞれ指示するようにした請求項1に記載の生産システム。
  3. 前記生産システムがエラーにより停止した場合には、前記生産管理装置は、前記生産システムモデルにおける前記プログラム情報が、前記通信手段により受信された最新の実行状態信号と整合すると共に、前記生産システムモデルにおける前記ワーク情報が、前記通信手段により受信された最新のワーク信号と整合した場合にのみ、前記生産システムを再び作動させるようにした請求項1または2に記載の生産システム。
  4. 前記生産管理装置は、前記生産システムモデルにおける前記プログラム情報と前記最新の実行状態信号とが整合しない場合にはこれら実行状態信号を表示すると共に、前記生産システムモデルにおける前記ワーク情報と前記最新のワーク信号とが整合しない場合にはこれらワーク信号を表示する表示手段を備える、請求項3に記載の生産システム。
  5. 前記生産管理装置は、前記生産システムモデルを変更する変更手段を備えており、
    前記変更手段によって、前記生産システムモデルにおける前記プログラム情報と前記最新の実行状態信号とが整合すると共に、前記生産システムモデルにおける前記ワーク情報と前記最新のワーク信号とが整合する場合には、前記生産システムを再び作動させるようにした、請求項3または4に記載の生産システム。
JP2008022027A 2008-01-31 2008-01-31 搬入/搬出ロボットと協調動作する加工ラインシステム Expired - Fee Related JP4465012B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2008022027A JP4465012B2 (ja) 2008-01-31 2008-01-31 搬入/搬出ロボットと協調動作する加工ラインシステム
EP08022200.3A EP2088490B1 (en) 2008-01-31 2008-12-19 Production system provided with a production control apparatus
US12/340,784 US8073567B2 (en) 2008-01-31 2008-12-22 Production system provided with a production control apparatus
CN200810190541XA CN101498922B (zh) 2008-01-31 2008-12-30 具有生产管理装置的生产系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008022027A JP4465012B2 (ja) 2008-01-31 2008-01-31 搬入/搬出ロボットと協調動作する加工ラインシステム

Publications (2)

Publication Number Publication Date
JP2009181506A true JP2009181506A (ja) 2009-08-13
JP4465012B2 JP4465012B2 (ja) 2010-05-19

Family

ID=40591852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008022027A Expired - Fee Related JP4465012B2 (ja) 2008-01-31 2008-01-31 搬入/搬出ロボットと協調動作する加工ラインシステム

Country Status (4)

Country Link
US (1) US8073567B2 (ja)
EP (1) EP2088490B1 (ja)
JP (1) JP4465012B2 (ja)
CN (1) CN101498922B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010191602A (ja) * 2009-02-17 2010-09-02 Fanuc Ltd 工作機械と組み合わせて使用するロボットの制御装置
KR101398215B1 (ko) 2013-03-05 2014-05-26 한국기계연구원 오류 복구 기능을 갖는 양팔 로봇 제어장치 및 그 복구방법
US10747199B2 (en) 2017-09-28 2020-08-18 Fanuc Corporation Operation management device

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009050646A1 (de) * 2009-10-26 2011-04-28 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Steuern einer Mehrmaschinenanordnung
JP4837118B2 (ja) * 2010-04-16 2011-12-14 ファナック株式会社 多系統プログラムの自動プログラミング方法及びその装置
KR101975840B1 (ko) * 2011-12-23 2019-05-10 두산공작기계 주식회사 이기종 수치제어장치를 위한 공작기계 정보 관리 장치 및 그 방법
CN103984283A (zh) * 2013-02-08 2014-08-13 西门子公司 用于数控机床的成本分析装置和数控系统
JP5970415B2 (ja) * 2013-05-16 2016-08-17 株式会社神戸製鋼所 産業用ロボットおよび周辺装置の動作を制御する制御システムおよび制御方法
JP5850003B2 (ja) * 2013-07-26 2016-02-03 株式会社安川電機 ロボットシステム、ロボットシステムのロボット管理コンピュータ及びロボットシステムの管理方法
US9114537B2 (en) * 2013-10-31 2015-08-25 Apex Brands, Inc. Tooling system with electronic signal maintenance
US9841749B2 (en) 2014-04-01 2017-12-12 Bot & Dolly, Llc Runtime controller for robotic manufacturing system
US9701018B2 (en) 2014-04-01 2017-07-11 Bot & Dolly, Llc Software interface for authoring robotic manufacturing process
US9278449B1 (en) 2014-05-21 2016-03-08 Bot & Dolly, Llc Closed-loop control system for robotic operation
US9555545B2 (en) 2014-05-21 2017-01-31 Bot & Dolly, Llc Systems and methods for time-based parallel robotic operation
US9308647B2 (en) 2014-06-03 2016-04-12 Bot & Dolly, Llc Systems and methods for instructing robotic operation
DE202014007115U1 (de) 2014-09-01 2014-09-22 Maschinenfabrik Berthold Hermle Ag Vorrichtung zur computergestützten Steuerung von Bearbeitungszentren für Fräs-, Bohr- und/oder Drehbearbeitung
JP6479032B2 (ja) * 2014-10-07 2019-03-06 シチズン時計株式会社 工作機械の制御装置
US20160214261A1 (en) * 2015-01-22 2016-07-28 GM Global Technology Operations LLC Collaborative robot system and method
WO2016128057A1 (en) * 2015-02-12 2016-08-18 Siemens Aktiengesellschaft Device for use in production and method for establishing a production interaction
GB201509341D0 (en) 2015-05-29 2015-07-15 Cambridge Medical Robotics Ltd Characterising robot environments
JP6096872B1 (ja) 2015-11-30 2017-03-15 ファナック株式会社 製造ラインの生産実績情報を管理する生産管理装置及び生産システム
JP6328675B2 (ja) * 2016-02-26 2018-05-23 ファナック株式会社 エリア毎または工程毎の製造機械の異常発生状況を表示するセル制御装置
WO2018045463A1 (en) 2016-09-08 2018-03-15 Fives Line Machines Inc. Machining station, workpiece holding system, and method of machining a workpiece
EP3543812B1 (en) * 2016-11-16 2023-12-20 Makino Milling Machine Co., Ltd. Machine tool system
WO2018180004A1 (ja) * 2017-03-30 2018-10-04 シチズン時計株式会社 工作機械の制御装置
CN109213079B (zh) * 2017-06-29 2020-10-23 深圳模德宝科技有限公司 一种自动化生产的控制方法及其装置
JP7198833B2 (ja) * 2018-10-31 2023-01-04 株式会社牧野フライス製作所 生産支援システム
EP3838504A1 (de) * 2019-12-19 2021-06-23 FRONIUS INTERNATIONAL GmbH Verfahren und vorrichtung zur überwachung eines bearbeitungsprozesses und bearbeitungsmaschine mit einer solchen vorrichtung
US11755003B2 (en) * 2021-09-30 2023-09-12 Hitachi, Ltd. Autonomous task management industrial robot

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0538664A (ja) * 1991-08-02 1993-02-19 Mitsubishi Electric Corp 機械加工部品生産方法
JP2004157985A (ja) * 2002-09-09 2004-06-03 Nisshin Seisakusho:Kk 自動機械加工システムの加工セルおよび自動ホーニングシステム
JP2005222258A (ja) * 2004-02-04 2005-08-18 Nissan Motor Co Ltd 生産設備の稼動状況再現方法およびその装置
JP2006031311A (ja) * 2004-07-15 2006-02-02 Fanuc Ltd ロボット制御装置及びロボットシステム
JP2006343828A (ja) * 2005-06-07 2006-12-21 Fanuc Ltd ロボット制御装置及びロボット制御方法
WO2007148640A1 (ja) * 2006-06-19 2007-12-27 Hitachi Kokusai Electric Inc. 基板処理システムおよび動作検証方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1216343A (en) * 1983-05-02 1987-01-06 Tomohiro Murata Method and apparatus for controlling an operation sequence of a machinery
JPH0310780A (ja) * 1989-06-05 1991-01-18 Mitsubishi Electric Corp 産業用ロボツト装置
JPH07129418A (ja) * 1993-11-08 1995-05-19 Fanuc Ltd マルチタスク環境でのプログラム制御方式
JPH09244730A (ja) * 1996-03-11 1997-09-19 Komatsu Ltd ロボットシステムおよびロボットの制御装置
US5984499A (en) * 1997-09-12 1999-11-16 Manufacturing Data Systems, Inc. Method and apparatus for a numerical control system for processing multiple job streams
EP1563348A2 (en) * 2002-08-21 2005-08-17 Neal E. Solomon Systems, methods and apparatus for organizing groups of self-configurable mobile robotic agents in a multi-robotic system
JP3905075B2 (ja) * 2003-11-17 2007-04-18 ファナック株式会社 作業プログラム作成装置
US7617017B2 (en) * 2005-02-18 2009-11-10 Gm Global Technology Operations, Inc. System and method for resource reallocation based on ambient condition data
JP2007030087A (ja) * 2005-07-26 2007-02-08 Fanuc Ltd 物流トラッキング装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0538664A (ja) * 1991-08-02 1993-02-19 Mitsubishi Electric Corp 機械加工部品生産方法
JP2004157985A (ja) * 2002-09-09 2004-06-03 Nisshin Seisakusho:Kk 自動機械加工システムの加工セルおよび自動ホーニングシステム
JP2005222258A (ja) * 2004-02-04 2005-08-18 Nissan Motor Co Ltd 生産設備の稼動状況再現方法およびその装置
JP2006031311A (ja) * 2004-07-15 2006-02-02 Fanuc Ltd ロボット制御装置及びロボットシステム
JP2006343828A (ja) * 2005-06-07 2006-12-21 Fanuc Ltd ロボット制御装置及びロボット制御方法
WO2007148640A1 (ja) * 2006-06-19 2007-12-27 Hitachi Kokusai Electric Inc. 基板処理システムおよび動作検証方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010191602A (ja) * 2009-02-17 2010-09-02 Fanuc Ltd 工作機械と組み合わせて使用するロボットの制御装置
JP4598865B2 (ja) * 2009-02-17 2010-12-15 ファナック株式会社 工作機械と組み合わせて使用するロボットの制御装置
KR101398215B1 (ko) 2013-03-05 2014-05-26 한국기계연구원 오류 복구 기능을 갖는 양팔 로봇 제어장치 및 그 복구방법
US10747199B2 (en) 2017-09-28 2020-08-18 Fanuc Corporation Operation management device

Also Published As

Publication number Publication date
US8073567B2 (en) 2011-12-06
EP2088490A3 (en) 2011-12-21
JP4465012B2 (ja) 2010-05-19
CN101498922A (zh) 2009-08-05
EP2088490B1 (en) 2014-01-22
EP2088490A2 (en) 2009-08-12
CN101498922B (zh) 2012-06-13
US20090198370A1 (en) 2009-08-06

Similar Documents

Publication Publication Date Title
JP4465012B2 (ja) 搬入/搬出ロボットと協調動作する加工ラインシステム
JP4210270B2 (ja) ロボット制御装置及びロボット制御方法
JP4220979B2 (ja) 制御装置の表示システム
JP5863857B2 (ja) ワークの供給と排出を行うロボットを制御するロボット制御装置
JP2013012050A (ja) ブロック実行順表示装置
JP2012194680A (ja) 制御装置、制御システム、ツール装置および収集指示プログラム
CN112015589B (zh) 机器人管理系统及机器人管理系统的控制方法
JP2004086311A (ja) 加工装置
EP2733613B1 (en) Controller and program
JP2019016134A (ja) 生産支援システムおよび生産支援方法
CN110666797A (zh) 一种机器人控制系统及方法
KR102626306B1 (ko) 제어장치, 및 물품의 제조방법
CN110780656B (zh) 生产系统和生产物品的方法
JP5764081B2 (ja) プラント監視制御システム
JP6453078B2 (ja) 検体処理システム
JP5365875B2 (ja) 産業用コントローラ
EP3722053A1 (en) Control device, workpiece operation device, workpiece operation system, and control method
JP2007185748A (ja) 工作機械の再起動方法
JP6460639B2 (ja) ロボットシステムの制御方法、プログラム、記録媒体、及びロボットシステム
CN110253587B (zh) 一种机器人控制方法、系统、存储介质及机器人
JPH07164285A (ja) 障害発生時の復帰方法及びその装置
EP3843514B1 (en) Mobile work device, mobile work management system, mounting system, and management method
JP4651295B2 (ja) ジョブスケジューリングシステムの監視方法
JP5962086B2 (ja) Plcシステム、情報表示方法、plc、および保守装置
JPH0991018A (ja) ロボット制御装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100118

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

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

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

Free format text: PAYMENT UNTIL: 20130226

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4465012

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

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees