JP3823938B2 - Program creation device - Google Patents

Program creation device Download PDF

Info

Publication number
JP3823938B2
JP3823938B2 JP2003112652A JP2003112652A JP3823938B2 JP 3823938 B2 JP3823938 B2 JP 3823938B2 JP 2003112652 A JP2003112652 A JP 2003112652A JP 2003112652 A JP2003112652 A JP 2003112652A JP 3823938 B2 JP3823938 B2 JP 3823938B2
Authority
JP
Japan
Prior art keywords
data
instruction
command
character string
speed
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.)
Expired - Fee Related
Application number
JP2003112652A
Other languages
Japanese (ja)
Other versions
JP2003288208A (en
Inventor
太郎 播磨
隆志 長野
摂子 後藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003112652A priority Critical patent/JP3823938B2/en
Publication of JP2003288208A publication Critical patent/JP2003288208A/en
Application granted granted Critical
Publication of JP3823938B2 publication Critical patent/JP3823938B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、プログラムの作成、編集、検証及び修正等を行うプログラム作成装置にかかるものである。
【0002】
【従来の技術】
従来一般に、図8に示す様に、ロボット2を制御するための、命令データ及びその命令データに対応する位置データからなる制御プログラムの作成及び編集は、文字列の挿入、追加、削除、移動、検索などの操作を機能としてもつコンピュータアプリケーションソフトウエア(以下エディタという。)によって、コンピュータ1上において行われている。そして、エディタで作成されたロボットの制御プログラムは、エディタが動作しているコンピュータ1とロボット2に設けられたロボット制御装置の間を、例えば、RS−232C規格の通信、磁気記憶媒体、光記憶媒体等を介して、ロボット制御装置へ転送され、その作成された制御プログラムに基づいてロボット2が制御される。
【0003】
また、ロボット制御装置に蓄えられている制御プログラムを可読性のある文字列の形式で、エディタが動作しているコンピュータ1とロボット制御装置の間の例えば、RS−232C規格の通信、磁気記憶媒体、光記憶媒体等を介して、ロボット制御装置からエディタが動作しているコンピュータ1へ転送されて、その制御プログラムの編集がおこなわれる。
【0004】
次に制御プログラムの編集に関する作業について説明する。一般にロボットのプログラム言語では、移動命令、速度命令、接点命令等において、命令に基づく移動位置、速度データ、接点情報等は、命令の引き数として移動位置、速度データ、接点情報等の情報が格納されているエリアを参照する番号や記号で与えられ、それら情報が格納されているエリアは、ロボットの動作を記述しているプログラムファイルとは別か、あるいは制御プログラムの動作記述とは別の部位例えば最終部分におかれている。
【0005】
例えば、産業用ロボットにおける移動を示すムーブ命令「MO」により、ポジション番号20で示されるエリア(位置)に格納されている移動位置へ移動させる命令は、「MO 20」という命令テキストで表現され、引き数として位置を参照するポジション番号「20」をもつ。そして、このポジション番号と位置の座標値の参照関係を設定するポジション・デファイン命令「PD」においては、例えば「PD 20,50,320,70,50,40,30,R,A,N,O」という命令テキストで表現され、引き数として、「ポジション番号、X座標、Y座標、Z座標、A回転、B回転、C回転、Right/Left構造定義フラグ、Above/Below 構造定義フラグ、Nonflip/Flip構造定義フラグ、ハンド状態フラグ」をもつ。一般に、ロボットの制御プログラムにおいてムーブ命令「MO」などの移動命令のテキストは、制御プログラムの前半におかれ、ポジション・デファイン命令などの参照定義命令のテキストはプログラムの後半におかれる。
【0006】
上述のように構成された制御プログラムの編集作業は、例えば編集対象となる「MO 20」などの命令テキストの編集を行う際に、ポジション番号「20」に対応するエリアに格納される移動位置のデータが必ず必要となるので、操作者は引き数であるポジション番号が参照する移動位置の座標の一覧を表わした資料を手元に持つか、あるいは複数の表示ウインドウを表示できるエディタを用いて、編集の対象としている制御プログラムの動作記述の部位とポジション番号の参照記述の部位を別個に表示して、編集対象としている移動命令の位置番号を資料もしくは表示ウインドウから、検索していた。
【0007】
【発明が解決しようとする課題】
一般に制御プログラムを編集作業する際に、その編集対象となる制御プログラムは、上述のように、制御プログラムの前半に「MO」などの移動命令のテキストが格納され、制御プログラムの後半または別の部分に、ポジション・デファイン命令などの参照定義命令のテキストが格納され、従来のエディタをもちいたロボットのプログラミングでは、エディタがロボットの制御プログラムを文字列としてのみ扱うため、エディタ上に「MO 20」と制御プログラムが表示されたとしても、エディタ自身は、その「MO」「20」で示される文字列の意味を解釈することができなかった。そのため、上述したようにポジション番号で参照されるエリアを参照する際に、操作者は引き数であるポジション番号が参照する移動位置の座標の一覧を表わした資料を手元に持ちながら、そのポジション番号に対応する移動位置の座標を読み取らなければならず、制御プログラム編集作業の作業性が悪かった。
【0008】
また、複数の表示ウインドウを表示できるエディタを用いて、編集の対象としている制御プログラムの動作記述の部位とポジション番号の参照記述の部位を別個に表示したとしても、編集対象としている移動命令の位置番号を表示ウインドウから、検索しなければならず、作業性が悪かった。
【0009】
本発明は、上述した問題点を解決するためになされたもので、第1の目的は、指定した命令内容に応じてその命令内容に対応する数値データを同一表示画面に表示させることにより、制御プログラムの編集作業を効率よく行うことができるプログラム作成装置を得るものである。また、第2の目的は、数値データを修正する際に、その数値データの設定可能な範囲を容易に把握することができるプログラム作成装置を得るものである。
【0010】
この発明に係るロボットのプログラム作成装置は、命令内容を示す命令文字列及びパラメータ番号を有する命令データを入力、編集するプログラム作成装置において、上記命令データの上記パラメータ番号に対応し、パラメータ番号とは異なる単位量の数値データを、パラメータ番号毎に予め複数格納すると共に、予め特定命令文字列を設定記憶する記憶手段と、上記命令データの入力或いは読込を受け、該命令データ中の命令文字列が上記記憶手段に記憶されている特定命令文字列と同一であるか否かを解釈する命令解釈手段と、この命令解釈手段により、入力或いは読込を受けた命令データの命令文字列が、特定命令文字列と同一と解釈された際に、入力或いは読込を受けた命令データのパラメータ番号で特定される数値データを上記記憶手段から読み出すデータ管理手段と、このデータ管理手段により読み出された、入力或いは読込を受けた命令データのパラメータ番号で特定された数値データを、上記予め格納された複数のパラメータ番号及び数値データが対応づけられたグラフ上に、プロット或いは数値表示させると共に、入力或いは読込を受けた命令データを同時に表示する表示制御手段と、を備えたものである。
【0011】
また、表示制御手段により、前記グラフ表示する際に、入力或いは読込を受けた命令データの命令文字列で設定可能な数値データ範囲を、上記パラメータ番号に対応づけてグラフ表示するものである。
【0012】
【発明の実施の形態】
実施形態1.
図1は、この発明の一実施形態によるロボットのプログラム作成装置の構成を示した全体構成図である。図1において、1Aはプログラム作成装置であり、ロボット2と通信を行う通信装置20と、キーボード21と、外部記憶装置22と、表示装置23と、キーボード21もしくは外部記憶装置22から入力された、命令内容を示す命令文字列及びその命令内容に対応する数値データのパラメータ番号を示すパラメータ文字列を有する命令データを記憶する記憶手段の一部である命令データ記憶手段24と、キーボード21もしくは外部記憶装置22から入力された命令データに対応する数値データの一部である位置データを記憶する記憶手段の一部である位置データ記憶手段25と、予め特定の命令文字列を設定格納した記憶手段の一部であるテーブルを示す命令参照テーブル26と、表示装置23に描画する文字、画像、ウインドウを制御する表示制御手段27と、命令データを命令参照テーブル26の内容を参照して命令を解釈する命令解釈手段28と、この命令解釈手段28により上記命令文字列が命令参照テーブル26に予め設定記憶されている命令文字列と同一であると判断された際に、その命令文字列を有する命令データの上記パラメータ番号に基づいて、その命令データに対応する位置データを位置データ記憶手段25から読み出すデータ管理手段29とから構成される。
【0013】
図2は、プログラム作成装置1Aの電気接続を示す回路図であり、図2において、CPU内部に表示制御手段27、命令解釈手段28、データ管理手段29が含まれている。また、メモリ内部には命令データ記憶手段24、位置データ記憶手段25、命令参照テーブル26が含まれている。
【0014】
図3は、本実施形態における表示装置23が表示する表示画面を示した図であり、図3において、23Aは表示画面、231は命令データを表示する命令ウインドウ、232は位置データを表示する位置ウインドウ、2311は操作者が注目している命令データの命令行である。
【0015】
次に、本実施形態1の動作をメモリに記憶された図4のプログラムを示すフローチャートを用いて説明する。キーボード21よりプログラミングの対象となる制御プログラムの所在を入力すると、ステップS1では、その制御プログラムがどこから入力されるのか(入力対象)に対応して以降の実行が決定される。
【0016】
このステップS1において、新たに入力される新規のロボット2の制御プログラムを編集対象とする場合はステップS2に実行を移し、キーボード21より操作者が新規のプログラムデータを入力する。
【0017】
一方、外部記憶装置22に格納されたロボット2の制御プログラムを編集対象とする場合は、ステップS3へ実行を移し、データ管理手段29により、外部記憶装置22より制御プログラムを読み込み、そして、ロボットのプログラムデータより命令データを命令データ記憶手段24へ格納するとともに位置データを位置データ記憶手段25に格納する。その後、ステップS4に移行して、データ管理手段29が保持する読込ポインタを第一行に設定する。
【0018】
また、ロボット2に格納された制御プログラムを編集対象とする場合は、ステップS5へ実行を移し、データ管理手段29により、通信装置20を通じてロボット2より制御プログラムを読み込む。そして、ロボット2のプログラムデータの命令データを命令データ記憶手段24へ格納し、位置データを位置データ記憶手段25に格納する。その後、ステップS6に移行して、データ管理手段29が保持する読込ポインタを第一行に設定する。
【0019】
制御プログラムの入力が終了すると、ステップS7において、表示制御手段27は表示装置23の表示画面23A上に命令ウインドウ231が開かれているかを確認する。開かれていない場合はステップS8へ実行を移し、表示画面23A上に命令ウインドウ231を表示させ、ステップS9に移行する。また、表示画面23A上に命令ウインドウ231が開かれている場合は、そのままステップS9に移行する。
【0020】
ステップS9では、表示制御手段27により表示装置23の表示画面23A上に表示されている命令ウインドウ231の内容をクリアして、新しく命令ウインドウ231に表示される命令データの表示準備を行い、ステップS10に移行する。
【0021】
ステップS10において、データ管理手段29は命令データ記憶手段24より命令データを読込み、表示制御手段27へ送り込む。命令データを受け取った表示制御手段27は、表示装置23の表示画面23Aに命令ウインドウ231に命令データを表示する。そして、データ管理手段29が保持する読込ポインタの示す命令行2311を反転表示や着色表示等によって強調表示する。その後、ステップS11において、データ管理手段29は読込ポインタの示す命令行2311の内容を命令データ記憶手段24より読み出して、命令解釈手段28へ送り、ステップS12に移行する。
【0022】
ステップS12において、命令解釈手段28は、データ管理手段29より受け取った命令データの命令部分を、命令参照テーブル26に記憶されている命令群とその内容(表1参照)をもとに、命令データの命令部分(表1における第1列に相当)を検索する。例えば、命令データが「MO 20」の場合は、命令部分の文字列は「MO」となり、表1との比較により、第1行に相当する命令と一致する。次に、その命令データの命令部分は、移動命令であるか否かを表1に基づき判定(表1における命令部分が一致した行の第2列目を参照)し、命令を解釈する。例えば、上述した命令データ「MO 20」は、表1より移動命令か否かの項目(表1の2列目)が“true”となっているので、移動命令と判断することができる。
【0023】
【表1】

Figure 0003823938
【0024】
その後、ステップS13において、データ管理手段29より受け取った命令データが、移動命令であった場合はステップS14へ実行を移し、そうでない場合はステップS20へ実行を移す。ステップS14において、命令データ中の「移動命令のパラメータ移動位置(ポジション番号)」を解釈して、ステップS15に移行し、データ管理手段29に位置データ記憶手段22よりその「移動命令のパラメータ移動位置(ポジション番号)」に対応した位置データの読み出しを命じる。
【0025】
そして、ステップS16において、表示制御手段27は、表示装置23の表示画面23Aに命令ウインドウ231とは別の位置ウインドウ232が開かれているかを確認する。表示装置23の表示画面23Aに位置ウインドウ232が開かれていない場合はステップS17へ実行を移して、表示制御手段27により表示装置23の表示画面23Aに位置ウインドウ232を開き、ステップS18へ移行する。一方、表示装置23の表示画面23Aに位置ウインドウ232が開かれている場合はステップS18へ実行を移す。
【0026】
ステップS18において、表示制御手段27は、表示装置23の表示画面23Aにおける位置ウインドウ232の内容をクリアして、新しい位置データの表示の準備をして、ステップS19に移行する。ステップS19では、データ管理手段29が、位置データ記憶手段25より読み出した位置データを表示制御手段27へ送り、表示制御手段27に対して表示装置23における表示画面23Aの位置ウインドウ232上に位置データを表示させる。
【0027】
その後、ステップS20において、データ管理手段29はキーボード21からの作成、編集、修正等の何れかの入力を確認して、ステップS21に移行する。ステップS21において、キーボード21からの入力が、編集実行の指示であった場合はステップS22へ実行を移し、キーボード21からの入力にもとづいて、データ管理手段29は命令データと位置データの少なくともどちらか一方を編集し、ステップS23で、その編集内容を命令データ記憶手段24と位置データ記憶手段25に収納して反映させる。一方、キーボード21からの入力が、編集実行の指示でなければ、ステップS24に移行して、外部記憶装置22への保存の指示かどうかを判断し、保存の指示ならばデータ管理手段29は、命令データ記憶手段24と位置データ記憶手段25に収納されているロボットの制御プログラムを外部記憶装置22に保存する。
【0028】
ステップS24の判断の結果、保存のキーボード21からの入力が保存の指示でなければ、ステップS26に移行して、その入力がロボット2へのダウンロードであるかどうかを判断する。ステップS26での判断の結果、ロボット2へのダウンロードの指示であれば、ステップS27に移行して、データ管理手段29が、命令データ記憶手段24と位置データ記憶手段25に収納されているロボット2の制御プログラムを通信装置20を通じてロボット2へ送信する。
【0029】
しかし、ステップS26での判断の結果、ロボット2へのダウンロードの指示でなければ、ステップS28に移行し、終了の指示かどうかを判断する。ここで、キーボード21から指示が、終了の指示があった場合は終了する。一方、終了の指示でなければ、ステップS29へ実行を移し、データ管理手段29は、キーボード21からカーソルの移動指示を読み込み、ステップS30に移行して、カーソルの移動指示に基づいて現在の読込ポインタを設定する。
【0030】
また、ステップS23、ステップS25、ステップS27、ステップS30の後は、ステップS11へ実行を移し、上述した動作を繰り返す。
【0031】
本実施形態によれば、入力された命令データを解析し、その命令データの中の「移動命令のパラメータ移動位置(ポジション番号)」に基づく、位置データを必要に応じて自動的に同一表示画面上に出力することができるようにしたので、位置データを参照しながらでないと制御プログラムの編集等が行えない場合に、位置データを参照するために編集作業を中断することなく、効率よく編集等の作業を行うことができ、作業効率が向上する。また、命令データに対応する位置データを表示するので、位置データの読み間違いをなくすことができ、正確な制御プログラムの編集作業を行うことができる。
【0032】
実施形態2.
図5は、この発明の他の実施形態によるロボットのプログラム作成装置の構成を示した全体構成図である。図5において、1Bはプログラム作成装置であり、ロボット2と通信を行う通信装置20と、キーボード21と、外部記憶装置22と、表示装置23と、キーボード21もしくは外部記憶装置22から入力された、命令内容を示す命令文字列及びその命令内容に対応する数値データのパラメータ番号を示すパラメータ文字列を有する命令データを記憶する記憶手段の一部である命令データ記憶手段24と、キーボード21もしくは外部記憶装置22から入力された位置データを記憶する記憶手段の一部である位置データ記憶手段25と、予め特定の命令文字列を設定格納した記憶手段の一部であるテーブルを示す命令参照テーブル26と、表示装置23に描画する文字、画像、ウインドウを制御する表示制御手段27と、命令データを命令参照テーブル26の内容を参照して命令を解釈する命令解釈手段28と、この命令解釈手段28により上記命令文字列が命令参照テーブル26に予め設定記憶されている命令文字列と同一であると判断された際に、その命令文字列を有する命令データの上記パラメータ番号に基づいて、その命令データに対応する数値データを読み出すデータ管理手段29と、速度と速度命令の対応データを格納した速度テーブル30と、速度テーブル30の内容を参照して速度命令の速度パラメータを速度に変換する速度データ変換手段31とから構成される。
【0033】
図6は、本実施形態2における表示装置23が表示する表示画面を示した図であり、図6において。23Aは表示画面、231は命令データを表示する命令ウインドウ、233は速度データを表示する速度ウインドウ、2311は操作者が注目している命令データの命令行である。
【0034】
次に、本実施形態2の動作をメモリに記憶された図7のプログラムを示すフローチャートを用いて説明する。図7において、ステップS1からステップS11までは、上述した実施形態1と同様であるので説明は省略する。
【0035】
ステップS12bにおいて、命令解釈手段28は、データ管理手段29より受け取った命令データの命令部分を、命令参照テーブル26に記憶されている命令群とその内容(表1参照)をもとに、命令データの命令部分(表1における第1列に相当)を検索する。例えば、命令データが「SP 20」の場合は、命令部分は「SP」となり、表1との比較により、第1行に相当する命令と一致する。次に、その命令データの命令部分は、速度命令であるか否かを表1に基づき判定(表1における命令部分が一致した行の第3列目を参照)し、命令を解釈する。例えば、上述した命令データ「SP 20」は、表1より速度命令か否かの項目(表1の3列目)が“true”となっているので、速度命令と判断することができる。
【0036】
その後、ステップS13bにおいて、データ管理手段29より受け取った命令データが、速度命令であった場合はステップS14bへ実行を移し、そうでない場合はステップS20へ実行を移す。ステップS14bにおいて、命令データ中の「速度命令のパラメータ(例えば高速、中速、低速などの表記や、1、2、‥‥といった指示値)」を解釈して、ステップS15bに移行する。
【0037】
ステップS15bでは、速度テーブル30内部に記憶されている、表2に示されるような速度命令のパラメータとそのパラメータに基づく速度データとを参照して、命令データ中に指定されたパラメータに対応する速度を検索し、その速度データの値を速度データ変換手段31が読み出し、データ管理手段29に出力する。例えば、命令データが「SP 20」の場合は、速度命令に対応するパラメータ部分が「20」であるので、速度データ変換手段31はパラメータ「20」に対応する速度データを検索し、その速度データの値“29.8mm/sec”をmm/secの単位で読み出す。
【0038】
【表2】
Figure 0003823938
【0039】
そして、ステップS16bにおいて、表示制御手段27は表示装置23の表示画面23Aに命令ウインドウ231とは別の速度ウインドウ233が開かれているかを確認する。表示装置23の表示画面23Aに速度ウインドウ233が開かれていない場合はステップS17bへ実行を移して、表示制御手段27により表示装置23の表示画面23Aに速度ウインドウ233を開き、ステップS18bへ移行する。一方、表示装置23の表示画面23Aに速度ウインドウ233が開かれている場合はステップS18bへ直接移行する。
【0040】
ここで、この速度ウインドウ233は、横軸に速度パラメータの値をとり、縦軸にその速度パラメータに対応する速度データをとることによりグラフ表示し、その速度パラメータ対速度曲線の上に点で、速度命令のパラメータが示している速度を表示(プロット、または数値の表示)することによって、速度パラメータの実際の速度への影響を直観的に把握することが可能となっている。
【0041】
ステップS18bにおいて、表示制御手段27は表示装置23の表示画面23Aにおける速度ウインドウ233の内容をクリアして、新しい速度データの表示の準備をして、ステップS19bに移行する。ステップS19bでは、データ管理手段29が、速度テーブル30から読み出した速度データを表示制御手段27へ送り、表示制御手段27に対して表示装置23における表示画面23Aの速度ウインドウ233上に速度データを表示させる。その後のステップS120からステップS130は、上述した実施形態1におけるステップS20からステップS30と同様であるので説明は省略する。
【0042】
本実施形態によれば、入力された命令データを解析し、その命令データの中の「速度命令のパラメータ」に対応する速度データを設定可能な速度データ範囲とともにグラフ化して自動的に同一表示画面上に出力することができるようにしたので、その速度データを参照しながらでないと制御プログラムの編集等が行えない場合に、速度データを参照するために編集作業を中断することなく、その速度データを視覚的、直感的に把握しつつ効率よく編集等の作業を行うことができるとともに、速度データ範囲を容易に確認することができ、作業効率が向上する。
【0043】
【発明の効果】
この発明は、以上説明したように構成されているので、以下に示すような効果を奏する。
【0044】
入力或いは読込を受けた命令データのパラメータ番号で特定された数値データを、上記予め格納された複数のパラメータ番号及び数値データが対応づけられたグラフ上に、プロット或いは数値表示させると共に、入力或いは読込を受けた命令データを同時に表示するので、作業者は命令データ及びその命令データに対応する数値データを見ながら作業することができ、対応する数値データか記載されたメモ等を参酌することなく制御プログラムの編集作業を効率よく行うことができ、作業効率が向上する。
【0045】
また、数値データを修正する際に、その数値データの設定可能な範囲を容易に把握することができ、メモ等を参酌して数値データの設定範囲を入力する必要がなくなり、制御プログラムの編集作業を効率よく行うことができ、作業効率が向上する。
【図面の簡単な説明】
【図1】 この発明によるロボットのプログラム作成装置の全体構成図である。
【図2】 本発明のプログラム作成装置の電機接続を示す回路図である。
【図3】 表示装置の表示画面を示した図である。
【図4】 プログラム作成装置の動作を示すフローチャートである。
【図5】 他の発明によるロボットのプログラム作成装置の全体構成図である。
【図6】 表示装置の表示画面を示した図である。
【図7】 プログラム作成装置の動作を示すフローチャートである。
【図8】 従来のロボットのプログラミングに係る装置の構成図である。
【符号の説明】
1 プログラム作成装置、2 ロボット、20 通信装置、21 キーボード、22 外部記憶装置、23 表示装置、24 命令データ記憶手段、25 位置データ記憶手段、26 命令参照テーブル、27 表示制御手段、28 命令解釈手段 、29 データ管理手段、30 速度テーブル。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a program creation device for creating, editing, verifying, and correcting a program.
[0002]
[Prior art]
Conventionally, as shown in FIG. 8, the creation and editing of a control program comprising command data and position data corresponding to the command data for controlling the robot 2 includes insertion, addition, deletion, movement of character strings, It is performed on the computer 1 by computer application software (hereinafter referred to as an editor) having an operation such as search as a function. The robot control program created by the editor is, for example, communication between RS-232C standard, magnetic storage medium, optical storage between the computer 1 on which the editor is operating and the robot control device provided in the robot 2. The data is transferred to the robot controller via a medium or the like, and the robot 2 is controlled based on the created control program.
[0003]
In addition, the control program stored in the robot control device is in the form of a readable character string, for example, RS-232C standard communication between the computer 1 on which the editor is operating and the robot control device, a magnetic storage medium, The data is transferred from the robot controller to the computer 1 on which the editor is operating via an optical storage medium or the like, and the control program is edited.
[0004]
Next, operations related to editing of the control program will be described. In general, in the robot programming language, the movement position, speed data, contact information, etc. based on the command in the movement command, speed command, contact command, etc., stores information such as the movement position, speed data, contact information, etc. as command arguments. The area where the information is stored is different from the program file describing the robot operation or the operation description of the control program. For example, in the final part.
[0005]
For example, a command to move to a moving position stored in an area (position) indicated by a position number 20 by a move command “MO” indicating movement in an industrial robot is expressed by a command text “MO 20”. It has a position number “20” referring to the position as an argument. In the position-definition command “PD” for setting the reference relationship between the position number and the position coordinate value, for example, “PD 20, 50, 320, 70, 50, 40, 30, R, A, N, O” ”And the arguments are“ position number, X coordinate, Y coordinate, Z coordinate, A rotation, B rotation, C rotation, Right / Left structure definition flag, Above / Below structure definition flag, Nonflip / Flip structure definition flag, hand state flag ". Generally, in a robot control program, the text of a movement command such as a move command “MO” is placed in the first half of the control program, and the text of a reference definition command such as a position / define command is placed in the second half of the program.
[0006]
For example, when editing a command text such as “MO 20” to be edited, the editing operation of the control program configured as described above is performed on the movement position stored in the area corresponding to the position number “20”. Since the data is always required, the operator can use the editor that can display a list of the coordinates of the moving position referenced by the position number as an argument or use an editor that can display multiple display windows. The part of the operation description of the control program that is the target of the display and the part of the reference description of the position number are displayed separately, and the position number of the movement command that is the target of editing is retrieved from the data or the display window.
[0007]
[Problems to be solved by the invention]
In general, when editing a control program, the control program to be edited is stored in the first half of the control program, such as “MO”, in the first half of the control program. The text of the reference definition command such as the position / define command is stored in the robot, and in the robot programming using the conventional editor, the editor handles the robot control program only as a character string, so that “MO 20” is displayed on the editor. Even if the control program is displayed, the editor itself cannot interpret the meaning of the character string indicated by “MO” “20”. Therefore, when referring to the area referred to by the position number as described above, the operator holds the material representing the list of the coordinates of the moving position referred to by the position number as an argument while holding the position number. The coordinates of the movement position corresponding to the above must be read, and the workability of the control program editing work was poor.
[0008]
In addition, using an editor that can display a plurality of display windows, even if the part of the operation description of the control program to be edited and the part of the reference description of the position number are separately displayed, the position of the movement command to be edited The number had to be searched from the display window, and workability was poor.
[0009]
The present invention has been made to solve the above-described problems. The first object is to display numerical data corresponding to the designated instruction content on the same display screen in accordance with the designated instruction content. It is an object of the present invention to provide a program creation device that can efficiently perform a program editing operation. The second object is to obtain a program creation device that can easily grasp a settable range of numerical data when the numerical data is corrected.
[0010]
The robot program creation device according to the present invention is a program creation device for inputting and editing command data having a command character string indicating a command content and a parameter number, and corresponds to the parameter number of the command data. A plurality of numerical data of different unit quantities are stored in advance for each parameter number, and a storage means for setting and storing a specific instruction character string in advance and receiving or inputting the instruction data, the instruction character string in the instruction data is Instruction interpreting means for interpreting whether or not the specific command character string stored in the storage means is the same, and the instruction character string of the command data input or read by the command interpreting means is the specific command character The numerical data specified by the parameter number of the command data input or read when it is interpreted as the same as the column is described above. The data management means read from the means, and the numerical data specified by the parameter number of the instruction data read or input read by the data management means, the plurality of previously stored parameter numbers and numerical data are Display control means for displaying plot data or numerical values on the associated graph and simultaneously displaying the command data input or read .
[0011]
Further, when the graph is displayed by the display control means, a numerical data range that can be set by the command character string of the command data that has been input or read is displayed in a graph in association with the parameter number.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Embodiment 1. FIG.
FIG. 1 is an overall configuration diagram showing the configuration of a robot program creation device according to an embodiment of the present invention. In FIG. 1, reference numeral 1A denotes a program creation device, which is input from the communication device 20 that communicates with the robot 2, the keyboard 21, the external storage device 22, the display device 23, and the keyboard 21 or the external storage device 22. Instruction data storage means 24, which is part of storage means for storing instruction data having instruction character strings indicating instruction contents and parameter character strings indicating parameter numbers of numerical data corresponding to the instruction contents, and keyboard 21 or external storage A position data storage unit 25 that is a part of a storage unit that stores position data that is a part of numerical data corresponding to command data input from the device 22, and a storage unit that stores a specific command character string in advance. A command reference table 26 indicating a part of the table and a character, an image, and a window to be drawn on the display device 23 are controlled. Display control means 27, instruction interpretation means 28 for interpreting instructions by referring to the contents of the instruction reference table 26 for instruction data, and the instruction character string is preset and stored in the instruction reference table 26 by the instruction interpretation means 28. Data management for reading position data corresponding to the instruction data from the position data storage means 25 based on the parameter number of the instruction data having the instruction character string when it is determined that the instruction character string is the same Means 29.
[0013]
FIG. 2 is a circuit diagram showing the electrical connection of the program creation apparatus 1A. In FIG. 2, the CPU includes a display control means 27, an instruction interpretation means 28, and a data management means 29. The memory includes a command data storage unit 24, a position data storage unit 25, and a command reference table 26.
[0014]
FIG. 3 is a diagram showing a display screen displayed by the display device 23 in this embodiment. In FIG. 3, 23A is a display screen, 231 is a command window for displaying command data, and 232 is a position for displaying position data. A window 2311 is a command line of command data focused on by the operator.
[0015]
Next, the operation of the first embodiment will be described with reference to a flowchart showing the program of FIG. 4 stored in the memory. When the location of the control program to be programmed is input from the keyboard 21, in step S1, the subsequent execution is determined according to where the control program is input (input target).
[0016]
In this step S1, when the control program of the new robot 2 to be newly input is to be edited, the execution proceeds to step S2, and the operator inputs new program data from the keyboard 21.
[0017]
On the other hand, when the control program of the robot 2 stored in the external storage device 22 is to be edited, the execution proceeds to step S3, the control program is read from the external storage device 22 by the data management means 29, and the robot The command data is stored in the command data storage means 24 from the program data, and the position data is stored in the position data storage means 25. Thereafter, the process proceeds to step S4, where the read pointer held by the data management means 29 is set in the first line.
[0018]
When the control program stored in the robot 2 is to be edited, the execution proceeds to step S5, and the control program is read from the robot 2 through the communication device 20 by the data management means 29. Then, the command data of the program data of the robot 2 is stored in the command data storage unit 24, and the position data is stored in the position data storage unit 25 . Thereafter, the process proceeds to step S6, and the read pointer held by the data management means 29 is set in the first row.
[0019]
When the input of the control program is completed, in step S7, the display control means 27 confirms whether the command window 231 is opened on the display screen 23A of the display device 23. If it is not opened, execution is transferred to step S8, an instruction window 231 is displayed on the display screen 23A, and the process proceeds to step S9. If the command window 231 is open on the display screen 23A, the process proceeds to step S9.
[0020]
In step S9, the display control means 27 clears the contents of the instruction window 231 displayed on the display screen 23A of the display device 23, and prepares to display instruction data newly displayed in the instruction window 231. Step S10 Migrate to
[0021]
In step S 10, the data management means 29 reads the instruction data from the instruction data storage means 24 and sends it to the display control means 27. The display control means 27 that has received the command data displays the command data on the command window 231 on the display screen 23 </ b> A of the display device 23. Then, the instruction line 2311 indicated by the reading pointer held by the data management means 29 is highlighted by reverse display or coloring display. Thereafter, in step S11, the data management means 29 reads the content of the instruction line 2311 indicated by the read pointer from the instruction data storage means 24, sends it to the instruction interpretation means 28, and proceeds to step S12.
[0022]
In step S12, the instruction interpretation unit 28 converts the instruction part of the instruction data received from the data management unit 29 into the instruction data based on the instruction group stored in the instruction reference table 26 and its contents (see Table 1). Are searched for (corresponding to the first column in Table 1). For example, when the instruction data is “MO 20”, the character string of the instruction portion is “MO”, which matches the instruction corresponding to the first line by comparison with Table 1. Next, it is determined based on Table 1 whether or not the instruction part of the instruction data is a movement instruction (see the second column of the row in which the instruction part matches in Table 1), and the instruction is interpreted. For example, the above-described command data “MO 20” can be determined to be a move command since the item of whether or not it is a move command (second column of Table 1) is “true” from Table 1.
[0023]
[Table 1]
Figure 0003823938
[0024]
Thereafter, in step S13, if the command data received from the data management means 29 is a move command, the execution is transferred to step S14, and if not, the execution is transferred to step S20. In step S14, the “parameter movement position (position number) of the movement command” in the command data is interpreted, and the process proceeds to step S15. The data management unit 29 stores the “parameter movement position of the movement command” in the position data storage unit 22. Command to read position data corresponding to (position number) ”.
[0025]
In step S <b> 16, the display control unit 27 confirms whether a position window 232 different from the command window 231 is opened on the display screen 23 </ b> A of the display device 23. If the position window 232 is not opened on the display screen 23A of the display device 23, the execution proceeds to step S17, the display control means 27 opens the position window 232 on the display screen 23A of the display device 23, and the process proceeds to step S18. . On the other hand, if the position window 232 is opened on the display screen 23A of the display device 23, the process proceeds to step S18.
[0026]
In step S18, the display control means 27 clears the contents of the position window 232 on the display screen 23A of the display device 23, prepares to display new position data, and proceeds to step S19. In step S19, the data management means 29 sends the position data read from the position data storage means 25 to the display control means 27, and the position data is displayed on the position window 232 of the display screen 23A in the display device 23 with respect to the display control means 27. Is displayed.
[0027]
Thereafter, in step S20, the data management unit 29 confirms any input such as creation, editing, and correction from the keyboard 21, and proceeds to step S21. In step S21, if the input from the keyboard 21 is an instruction to execute editing, the execution proceeds to step S22, and based on the input from the keyboard 21, the data management means 29 selects at least one of command data and position data. One of them is edited, and the edited contents are stored in the command data storage means 24 and the position data storage means 25 and reflected in step S23. On the other hand, if the input from the keyboard 21 is not an instruction to execute editing, the process proceeds to step S24 to determine whether or not it is an instruction to save to the external storage device 22, and if it is an instruction to save, the data management means 29 The robot control program stored in the command data storage unit 24 and the position data storage unit 25 is stored in the external storage device 22.
[0028]
If it is determined in step S24 that the input from the save keyboard 21 is not a save instruction, the process proceeds to step S26 to determine whether the input is a download to the robot 2 or not. If the result of determination in step S <b> 26 is a download instruction to the robot 2, the process proceeds to step S <b> 27 and the data management means 29 is stored in the command data storage means 24 and the position data storage means 25. Is transmitted to the robot 2 through the communication device 20.
[0029]
However, if the result of determination in step S <b> 26 is not a download instruction to the robot 2, the process proceeds to step S <b> 28 to determine whether it is an end instruction. If the instruction is given from the keyboard 21 and the end is instructed, the process ends. On the other hand, if the instruction is not an end instruction, the process proceeds to step S29, where the data management means 29 reads a cursor movement instruction from the keyboard 21, proceeds to step S30, and based on the cursor movement instruction, reads the current read pointer. Set.
[0030]
In addition, after step S23, step S25, step S27, and step S30, execution is shifted to step S11, and the above-described operation is repeated.
[0031]
According to the present embodiment, the input command data is analyzed, and the position data based on the “parameter movement position (position number) of the movement command” in the command data is automatically displayed as needed. Since it is possible to output the above, if the control program cannot be edited without referring to the position data, the editing can be efficiently performed without interrupting the editing work to refer to the position data. The work efficiency can be improved. Further, since the position data corresponding to the command data is displayed, it is possible to eliminate misreading of the position data, and an accurate control program editing operation can be performed.
[0032]
Embodiment 2. FIG.
FIG. 5 is an overall configuration diagram showing the configuration of a robot program creation device according to another embodiment of the present invention. In FIG. 5, reference numeral 1B denotes a program creation device, which is input from the communication device 20 that communicates with the robot 2, the keyboard 21, the external storage device 22, the display device 23, and the keyboard 21 or the external storage device 22. Instruction data storage means 24, which is part of storage means for storing instruction data having instruction character strings indicating instruction contents and parameter character strings indicating parameter numbers of numerical data corresponding to the instruction contents, and keyboard 21 or external storage A position data storage means 25 which is a part of the storage means for storing the position data input from the device 22, and an instruction reference table 26 indicating a table which is a part of the storage means in which a specific instruction character string is set and stored in advance. Display control means 27 for controlling characters, images, and windows to be drawn on the display device 23; The instruction interpreting means 28 for interpreting the instruction with reference to the contents of the table 26, and the instruction interpreting means 28 determine that the instruction character string is the same as the instruction character string preset and stored in the instruction reference table 26. Data management means 29 for reading numerical data corresponding to the instruction data based on the parameter number of the instruction data having the instruction character string, and a speed table 30 storing the correspondence data of the speed and the speed instruction, The speed data conversion means 31 converts the speed parameter of the speed command into a speed by referring to the contents of the speed table 30.
[0033]
FIG. 6 is a diagram showing a display screen displayed by the display device 23 according to the second embodiment. 23A is a display screen, 231 is a command window for displaying command data, 233 is a speed window for displaying speed data, and 2311 is a command line of command data focused by the operator.
[0034]
Next, the operation of the second embodiment will be described using a flowchart showing the program of FIG. 7 stored in the memory. In FIG. 7, steps S1 to S11 are the same as those in the first embodiment described above, and a description thereof will be omitted.
[0035]
In step S12b, the instruction interpretation unit 28 converts the instruction part of the instruction data received from the data management unit 29 into the instruction data based on the instruction group stored in the instruction reference table 26 and its contents (see Table 1). Are searched for (corresponding to the first column in Table 1). For example, when the instruction data is “SP 20”, the instruction part is “SP”, which matches the instruction corresponding to the first row by comparison with Table 1. Next, it is determined based on Table 1 whether or not the instruction part of the instruction data is a speed instruction (see the third column of the row in which the instruction part in Table 1 matches), and the instruction is interpreted. For example, the command data “SP 20” described above can be determined as a speed command because the item of whether or not it is a speed command (third column in Table 1) is “true” from Table 1.
[0036]
Thereafter, in step S13b, if the command data received from the data management means 29 is a speed command, execution is transferred to step S14b, and otherwise, execution is transferred to step S20. In step S14b, “speed command parameters (for example, notations such as high speed, medium speed, low speed, and instruction values such as 1, 2,...)” In the instruction data are interpreted, and the process proceeds to step S15b.
[0037]
In step S15b, the speed command parameter stored in the speed table 30 as shown in Table 2 and the speed data based on the parameter are referred to, and the speed corresponding to the parameter specified in the command data is stored. The speed data conversion means 31 reads the value of the speed data and outputs it to the data management means 29. For example, when the command data is “SP 20”, since the parameter portion corresponding to the speed command is “20”, the speed data conversion means 31 searches for the speed data corresponding to the parameter “20” and the speed data. The value “29.8 mm / sec” is read out in units of mm / sec.
[0038]
[Table 2]
Figure 0003823938
[0039]
In step S <b> 16 b, the display control unit 27 confirms whether a speed window 233 different from the command window 231 is opened on the display screen 23 </ b> A of the display device 23. When the speed window 233 is not opened on the display screen 23A of the display device 23, the execution proceeds to step S17b, the display control means 27 opens the speed window 233 on the display screen 23A of the display device 23, and the processing proceeds to step S18b. . On the other hand, when the speed window 233 is opened on the display screen 23A of the display device 23, the process directly proceeds to step S18b.
[0040]
Here, the speed window 233 takes a value of the speed parameter on the horizontal axis and takes a speed data corresponding to the speed parameter on the vertical axis, and displays it as a graph. By displaying the speed indicated by the parameter of the speed command (plotting or displaying numerical values), it is possible to intuitively understand the influence of the speed parameter on the actual speed.
[0041]
In step S18b, the display control means 27 clears the content of the speed window 233 on the display screen 23A of the display device 23, prepares to display new speed data, and proceeds to step S19b. In step S19b, the data management means 29 sends the speed data read from the speed table 30 to the display control means 27, and displays the speed data on the speed window 233 of the display screen 23A of the display device 23 to the display control means 27. Let Subsequent steps S120 to S130 are the same as steps S20 to S30 in the above-described first embodiment, and a description thereof will be omitted.
[0042]
According to the present embodiment, the input command data is analyzed, and the speed data corresponding to the “speed command parameter” in the command data is graphed together with the settable speed data range and automatically displayed on the same display screen. Since it is possible to output the above data, it is possible to edit the control program without referring to the speed data without referring to the speed data without interrupting the editing operation. Can be efficiently edited while grasping the image visually and intuitively, the speed data range can be easily confirmed, and the work efficiency is improved.
[0043]
【The invention's effect】
Since the present invention is configured as described above, the following effects can be obtained.
[0044]
The numerical data specified by the parameter number of the command data that has been input or read is plotted or numerically displayed on the graph in which the plurality of previously stored parameter numbers and numerical data are associated, and the input or read The received instruction data is displayed at the same time, so the operator can work while looking at the instruction data and the numerical data corresponding to the instruction data, and control without referring to the corresponding numerical data or written notes. Program editing work can be performed efficiently, and work efficiency is improved.
[0045]
In addition, when modifying numeric data, the settable range of the numeric data can be easily grasped, and it is no longer necessary to enter the numeric data setting range with reference to a memo etc. Can be performed efficiently, and work efficiency is improved.
[Brief description of the drawings]
1 is an overall configuration diagram of a robot program creation device according to the present invention;
FIG. 2 is a circuit diagram showing electrical connection of the program creation device of the present invention.
FIG. 3 is a diagram showing a display screen of the display device.
FIG. 4 is a flowchart showing the operation of the program creation device.
FIG. 5 is an overall configuration diagram of a robot program creation device according to another invention.
FIG. 6 is a diagram showing a display screen of the display device.
FIG. 7 is a flowchart showing the operation of the program creation device.
FIG. 8 is a configuration diagram of an apparatus related to programming of a conventional robot.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Program creation apparatus, 2 Robot, 20 Communication apparatus, 21 Keyboard, 22 External storage device, 23 Display apparatus, 24 Instruction data storage means, 25 Position data storage means, 26 Instruction reference table, 27 Display control means, 28 Instruction interpretation means 29 Data management means, 30 Speed table.

Claims (2)

命令内容を示す命令文字列及びパラメータ番号を有する命令データを入力、編集するプログラム作成装置において、In a program creation device for inputting and editing instruction data having an instruction character string and a parameter number indicating instruction contents,
上記命令データの上記パラメータ番号に対応し、パラメータ番号とは異なる単位量の数値データを、パラメータ番号毎に予め複数格納すると共に、予め特定命令文字列を設定記憶する記憶手段と、Storage means for storing a plurality of numerical data of unit amounts corresponding to the parameter numbers of the command data in advance and for each parameter number, and setting and storing a specific command character string in advance.
上記命令データの入力或いは読込を受け、該命令データ中の命令文字列が上記記憶手段に記憶されている特定命令文字列と同一であるか否かを解釈する命令解釈手段と、Command interpreting means for receiving input or reading of the command data and interpreting whether the command character string in the command data is the same as the specific command character string stored in the storage means;
この命令解釈手段により、入力或いは読込を受けた命令データの命令文字列が、特定命令文字列と同一と解釈された際に、入力或いは読込を受けた命令データのパラメータ番号で特定される数値データを上記記憶手段から読み出すデータ管理手段と、  Numerical data specified by the parameter number of the input or read instruction data when the instruction character string of the input or read instruction data is interpreted as the same as the specific instruction character string by this instruction interpretation means Data management means for reading from the storage means;
このデータ管理手段により読み出された、入力或いは読込を受けた命令データのパラメータ番号で特定された数値データを、上記予め格納された複数のパラメータ番号及び数値データが対応づけられたグラフ上に、プロット或いは数値表示させると共に、入力或いは読込を受けた命令データを、同時に表示する表示制御手段と、  The numerical data specified by the parameter number of the instruction data read or inputted by the data management means is displayed on the graph in which the plurality of previously stored parameter numbers and numerical data are associated with each other. Display control means for displaying plots or numerical values and simultaneously displaying input or read command data;
を備えたことを特徴とするプログラム作成装置。A program creation device comprising:
表示制御手段により、前記グラフ表示する際に、入力或いは読込を受けた命令データの命令文字列で設定可能な数値データ範囲を、上記パラメータ番号に対応づけてグラフ表示することを特徴とする請求項1に記載のプログラム作成装置。 The numerical value range that can be set by a command character string of command data that has been input or read is displayed by the display control means in association with the parameter number when the graph is displayed. The program creation device according to 1.
JP2003112652A 2003-04-17 2003-04-17 Program creation device Expired - Fee Related JP3823938B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003112652A JP3823938B2 (en) 2003-04-17 2003-04-17 Program creation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003112652A JP3823938B2 (en) 2003-04-17 2003-04-17 Program creation device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP00475796A Division JP3435954B2 (en) 1996-01-16 1996-01-16 Program creation device

Publications (2)

Publication Number Publication Date
JP2003288208A JP2003288208A (en) 2003-10-10
JP3823938B2 true JP3823938B2 (en) 2006-09-20

Family

ID=29244560

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003112652A Expired - Fee Related JP3823938B2 (en) 2003-04-17 2003-04-17 Program creation device

Country Status (1)

Country Link
JP (1) JP3823938B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7180158B2 (en) * 2018-07-13 2022-11-30 オムロン株式会社 Program development device and controller

Also Published As

Publication number Publication date
JP2003288208A (en) 2003-10-10

Similar Documents

Publication Publication Date Title
JP5702811B2 (en) Operation program creation device
JP4390093B2 (en) Automatic programming and simulation equipment
JP4329248B2 (en) NC machining simulation equipment
WO2003071368A1 (en) Robot control device
JPH03154105A (en) Nc program generating device
JP2017102766A (en) Numerical control device
JP3823938B2 (en) Program creation device
JP2001266171A (en) Plotting device and computer-readable recording medium with plotting program recorded thereon
JPH07311612A (en) Method and device for editing machining program of numerical controller
JP2004259084A (en) Method and device for input support of program
JP4322780B2 (en) Screen creation device, screen creation program and recording medium
JP2006244106A (en) Information processing apparatus and processing method
JP3435954B2 (en) Program creation device
JPH09258808A (en) Motion controller programming system
JPH1049211A (en) Method and device for displaying name of numerical control program for machining
JP2003039357A (en) Teaching device for robot
JPH07302107A (en) Numerical controller
JPH0392907A (en) Numerical controller
JP2009211283A (en) Cursor management device and computer program
JPS6330976A (en) Macrocommand editing system
JPH11194810A (en) Nc information editing device
JP3808430B2 (en) DATA TRANSFER DEVICE, DATA TRANSFER SYSTEM, DATA TRANSFER METHOD, DATA TRANSFER PROGRAM, AND RECORDING MEDIUM CONTAINING THE DATA TRANSFER PROGRAM
JP2754533B2 (en) Flow chart creation device
JP2997600B2 (en) Display control device
JPH05313708A (en) Sequence program editing system

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060314

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060515

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060619

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

Free format text: PAYMENT UNTIL: 20100707

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100707

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110707

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110707

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120707

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120707

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130707

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees