JP2004174613A - ロボット制御装置の再開動作制御方法 - Google Patents
ロボット制御装置の再開動作制御方法 Download PDFInfo
- Publication number
- JP2004174613A JP2004174613A JP2002340225A JP2002340225A JP2004174613A JP 2004174613 A JP2004174613 A JP 2004174613A JP 2002340225 A JP2002340225 A JP 2002340225A JP 2002340225 A JP2002340225 A JP 2002340225A JP 2004174613 A JP2004174613 A JP 2004174613A
- Authority
- JP
- Japan
- Prior art keywords
- counter
- command
- robot
- command position
- storage area
- 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.)
- Pending
Links
Images
Abstract
【課題】緊急停止後のロボット再開動作において、決められた動作軌跡に対するショートカットをしないようなロボット制御装置の再開動作制御方法を提供する。
【解決手段】教示データに基づいて指令位置を生成する指令位置生成部1と、指令位置に基づいてロボット6の関節軸駆動用のサーボモータを制御するサーボ制御部3と、指令位置生成部1が生成した指令位置及びサーボモータが具備するエンコーダより得られたロボット6の実際の位置に基づいてこのロボット6の実際の位置に最も近い指令位置としての推測位置を算出する位置推測部2と、を有するロボット制御装置において、位置推測部2に実位置確認領域を設け、この実位置確認領域に指令位置生成部1が逐次生成した指令位置を順次格納し、格納された指令位置のどの指令位置にまでロボット6が実際に到達しているのかを推測し、この推測位置に基づいてロボット6の再開動作を行う。
【選択図】図4
【解決手段】教示データに基づいて指令位置を生成する指令位置生成部1と、指令位置に基づいてロボット6の関節軸駆動用のサーボモータを制御するサーボ制御部3と、指令位置生成部1が生成した指令位置及びサーボモータが具備するエンコーダより得られたロボット6の実際の位置に基づいてこのロボット6の実際の位置に最も近い指令位置としての推測位置を算出する位置推測部2と、を有するロボット制御装置において、位置推測部2に実位置確認領域を設け、この実位置確認領域に指令位置生成部1が逐次生成した指令位置を順次格納し、格納された指令位置のどの指令位置にまでロボット6が実際に到達しているのかを推測し、この推測位置に基づいてロボット6の再開動作を行う。
【選択図】図4
Description
【0001】
【発明の属する技術分野】
本発明は、位置教示データに基づいてサーボモータを位置制御するロボット制御方法に関し、特に非常停止後の再開動作時の制御方法に関する。
【0002】
【従来の技術】
サーボモータを駆動源とする産業用ロボットの制御装置においては、サーボモータを位置制御し、位置教示データを順次サーボモータに指令してプレイバック動作を行わせることにより、ロボットに多様な動作を行わせることを可能にしている。このようなロボット制御装置においては、一般に、安全上の理由から、非常停止スイッチのようにハードウエアにて動力回路を遮断するスイッチを備えている。通常、サーボ制御においては、サーボモータは指令に対して常に遅れをもった状態で動作するので、前述のスイッチがプレイバック動作中に入力されると、ハードウエアにて動力回路が遮断され、この時点でサーボモータの制御が不可能な状態になる。そのため、動力回路が遮断された後の再開動作時には、遮断時のサーボモータの遅れ分の情報を消失したまま、遮断時での指令位置から動作が再開されることになる。
【0003】
ここで、前述した動力回路が遮断された後の再開動作時の動作について、図1及び図2を参照して説明する。ここでは、図1に示すように、位置教示データに基づく教示点に向かってロボットが移動する場合を想定する。ロボットは教示点に向かって移動するが、前述したようにサーボモータは指令に対して常に遅れをもった状態で動作するので、ロボットの実際の位置は指令位置の手前の位置になる。
【0004】
このことを考慮に入れた上で、図2に示すように、教示点1の直前でロボットが緊急停止した場合を想定する。このとき、ロボットの実際の位置は教示点1の手前にあるが、緊急停止時にサーボモータに対して出された最終の指令位置は既に教示点1を過ぎ、教示点1と次の教示点2との間にある。この場合、ロボットの動作を再開させると、ロボット制御装置は最終の指令位置から教示点2に向けて指令位置を出力することになるが、ロボットの実際の位置は教示点1へ到達していないので、ロボットは緊急停止時の位置すなわち教示点1の手前の位置から教示点1を経由することなく教示点2に向けて、図2に点線で示したように、所謂ショートカットして動作することになる。このショートカットの経路上に周辺装置などが存在していたならば、この周辺装置やロボット本体の破損を招くことになり、場合によっては作業者にも危害が及ぶことになる。そのため、従来は、例えば特許文献1に開示されているように、ロボットの動作遅れの時間より先にサーボモータへの動力が遮断された場合は、サーボモータへの動力が遮断された時の位置を保持し、この位置から再開動作をさせるようにしていた。
【0005】
【特許文献1】特開平11−77570号公報
【0006】
【発明が解決しようとする課題】
ところで、ロボットを停止させる手段として、ロボットのアーム保持用電磁ブレーキを使用することもある。この場合、緊急停止時には、サーボモータへの動力が遮断される前に、アーム保持用電磁ブレーキが作動し、これによりロボットが停止してしまうこともある。サーボモータへの動力が遮断されるタイミングやアーム保持用電磁ブレーキが作動するタイミングは、サーボモータやブレーキ等のハードウエアの性能に依存するため、この性能の違いによりロボットが停止する実際の位置は大きく変化することになる。そして、この場合は、前述した引用文献1に開示されているような方法を用いたとしても、前述したようなショートカットが発生する。すなわち、図3に示すように、ロボットの実際の位置は教示点1の手前であるにもかかわらず、引用文献1に開示されている方法により算出されたサーボ電源遮断時のロボットの推測位置は教示点1を過ぎたものとなる。
【0007】
本発明は、前述した従来技術の課題を解決するためになされたものであり、アーム保持用電磁ブレーキを使用する場合も含めて、いかなる状況下においても、緊急停止後のロボット再開動作において、決められた動作軌跡に対するショートカットをしないようなロボット制御装置の再開動作制御方法を提供することを目的とする。
【0008】
【課題を解決するための手段】
前述した目的を達成するために、本発明は、教示データに基づいて指令位置を生成する指令位置生成部と、指令位置生成部が生成した指令位置に基づいてロボットの関節軸駆動用のサーボモータを制御するサーボ制御部と、指令位置生成部が生成した指令位置及びサーボモータが具備するエンコーダより得られたロボットの実際の位置に基づいてこのロボットの実際の位置に最も近い指令位置としての推測位置を算出する位置推測部と、を有するロボット制御装置において、以下の手順によりロボットの再開動作を制御するようにした。なお、以下の手順の記載において、「S*」(*は正数)の記述はステップ番号を示しており、発明の実施の形態の記載及び図5に示したフローチャートの記載に対応している。
【0009】
すなわち、位置推測部には実位置確認領域が設けられ、この実位置確認領域には格納領域を示すカウンタ番号が付された各格納領域毎に指令位置生成部が逐次生成した指令位置が順次格納されるとともに、「フィルタ結果のカウンタ」及び「位置データ確認済カウンタ」が設定されている(S1〜S2)。まず、位置推測部が入力した最新の指令位置に対してフィルタ処理を行った結果の位置が、このときの「フィルタ結果のカウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にあるときには、「フィルタ結果のカウンタ」を示すカウンタ番号を1つアップする(S3〜S6)。
【0010】
次に、「フィルタ結果のカウンタ」のカウンタ番号と「位置データ確認済カウンタ」のカウンタ番号とを比較する(第1の比較)(S7)。この第1の比較において、「フィルタ結果のカウンタ」のカウンタ番号の方が大きくない場合は、「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を推測位置とする(S8、S12)。一方、この第1の比較において、「フィルタ結果のカウンタ」のカウンタ番号の方が大きい場合は、位置推測部が入力した最新のロボットの実際の位置とこのときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置とを比較する(第2の比較)(S8〜S9)。
【0011】
この第2の比較において、位置推測部が入力した最新のロボットの実際の位置が、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にないときには、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を推測位置とする(S10、S12)。一方、この第2の比較において、位置推測部が入力した最新のロボットの実際の位置が、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にあるときには、「位置データ確認済カウンタ」を示すカウンタ番号を1つアップし、このアップ後の「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を推測位置とする(S10〜S12)。そして、ロボットの再開動作時には、指令位置生成部は前記推測位置に基づいてサーボ制御部へ指令位置を出力するようにする。
【0012】
位置推測部内の実位置確認領域には、格納領域を示すカウンタ番号が付された各格納領域毎に、指令位置生成部が逐次生成した指令位置が順次格納されることになるが、前述した本発明に係る処理を実行することにより、「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置に、ロボットの実際の位置が既に到達していることになる。言い換えれば、教示データ等により予め決められた動作軌跡に基づいて指令位置生成部が逐次生成した指令位置のどの指令位置にまで、ロボットが実際に到達しているのかが推測できることになる。したがって、係る処理の実行後に、「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置をロボットが実際に到達していると思われる位置すなわち推測位置と判断し、この推測位置に基づいてロボットの再開動作を行うようにすれば、従来技術のように予め決められた動作軌跡に対してショートカットをするようなことはなくなり、サーボモータやブレーキ等のハードウエアの性能に依存することなく、ロボットは決められた動作軌跡を動作することになる。
【0013】
【発明の実施の形態】
以下、本発明の一実施形態について、図面を参照して説明する。図4は、本発明に係る再開動作制御方法が適用されるロボット制御装置を含むロボットシステム全体のブロック図である。図4において、1〜5がロボット制御装置を構成する装置であり、1は指令位置生成部、2は位置推測部、3はサーボ制御部、4はブレーキ制御部、5はサーボ電源である。また、6はロボット本体である。指令位置生成部1は、教示データ等に基づいて指令位置を生成し、この指令位置をサーボ制御部3及び位置推測部2へ出力している。サーボ制御部3は、サーボ電源5から電源供給されており、指令位置生成部1から入力した指令位置に基づいてロボット本体6が具備する関節軸駆動用のサーボモータを制御している。ブレーキ制御部4は、非常停止スイッチが押されるなどしてサーボモータへの動力が遮断された場合は、ロボット本体6が具備する関節軸駆動用のサーボモータに装備された電磁ブレーキに対してブレーキ動作を指示する。
【0014】
次に、位置推測部2で行われる処理について説明する。図5は、位置推測部2で行われる処理の詳細な流れを示すフローチャートである。なお、このフローチャート及び以下の文中において、「S*」(*は正数)の記述はステップ番号を示している。
【0015】
位置推測部2は指令位置生成部1の演算周期と同じ周期で実行される。位置推測部2は指令位置生成部1から演算周期毎に出力された指令位置を受信すると(S1)、この指令位置データを位置推測部2内に設けられたバッファとしての実位置確認領域に逐次格納する(S2)。この実位置確認領域には、図6に示すように、格納領域を示すカウンタ番号が付けられており、演算周期毎に逐次受信した指令位置データがカウンタ番号に対応する格納領域毎に順次格納される。ここでは、カウンタ番号が大きい格納領域ほど先の時間の指令位置データが格納される。例えば、ロボット本体6が教示点1から教示点2に移動している場合は、カウンタ番号が大きい格納領域ほど教示点2に近い指令位置データが格納されることになる。また、この実位置確認領域には、推測位置を判断するための後述する「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」が存在する。
【0016】
ここで、指令位置生成部1から最新の指令位置を受信した場合の処理について説明する。このとき受信した指令位置は、図6に示すようにカウンタ番号34の格納領域に格納されるが、これと同時にフィルタ処理も施される(S3)。このフィルタ処理された指令位置と実位置確認領域の「フィルタ結果のカウンタ」(例えば図6においてはカウンタ番号15)が示す格納領域の指令位置データとを比較する(S4)。具体的には、実位置確認領域の「フィルタ結果のカウンタ」が示す格納領域の指令位置データの所定の範囲内に、前述のフィルタ処理された指令位置が到達しているか否かを判断する(S5)。
【0017】
そして、実位置確認領域の「フィルタ結果のカウンタ」が示す格納領域の指令位置データの所定の範囲内にフィルタ処理された指令位置が到達していた場合は、「フィルタ結果のカウンタ」を1つ進め(S6)、S7に移行する。例えば、図6に示す状態においては、「フィルタ結果のカウンタ」を15から16に1つ進めた後、S7に移行することになる。これにより、カウンタ番号16の格納領域に格納されている指令位置データが、「フィルタ結果のカウンタ」の指令位置データということになる。一方、実位置確認領域の「フィルタ結果のカウンタ」が示す格納領域の指令位置データの所定の範囲内にフィルタ処理された指令位置が到達していなかった場合は、「フィルタ結果のカウンタ」を進めることなく(例えば図6においては「フィルタ結果のカウンタ」を15のままで)、S7に移行する。
【0018】
次に、実位置確認領域の「フィルタ結果のカウンタ」のカウンタ番号と「位置データ確認済カウンタ」のカウンタ番号とを比較する(S7)。ここで、「フィルタ結果のカウンタ」のカウンタ番号が「位置データ確認済カウンタ」のカウンタ番号よりも大きくない場合、具体的には「フィルタ結果のカウンタ」のカウンタ番号と「位置データ確認済カウンタ」のカウンタ番号が等しい場合は(S8No)、このときの「位置データ確認済カウンタ」が示す格納領域の指令位置データを、ロボット本体6が到達していると思われる位置すなわち推測位置と判断する(S12)。一方、「フィルタ結果のカウンタ」のカウンタ番号が「位置データ確認済カウンタ」のカウンタ番号よりも大きい場合は(S8Yes)、S9以降の処理を行う。
【0019】
なお、このS8において両カウンタのカウンタ番号の比較を行う理由としては、後述するS10における「位置データ確認済カウンタ」が示す格納領域の位置データとロボット本体6の実際の位置との比較においては、「フィルタ結果のカウンタ」が「位置データ確認済カウンタ」よりも大きいことが前提になるからである。これは、実際のロボット制御においては、ロボット本体6の移動量が0または小さいときに、「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」が同じになることに対処したものである。
【0020】
S8において、「フィルタ結果のカウンタ」のカウンタ番号が「位置データ確認済カウンタ」のカウンタ番号よりも大きい場合は(S8Yes)、「位置データ確認済カウンタ」が示す格納領域の指令位置データとロボット本体6の実際の位置とを比較する(S9)。具体的には、実位置確認領域の「位置データ確認済カウンタ」が示す格納領域の指令位置データの所定の範囲内に、ロボット本体6の実際の位置が到達しているか否かを判断する(S10)。なお、ロボット本体6の実際の位置は、例えばロボット本体6が具備している図示しないサーボモータが装備しているエンコーダにより検出する。
【0021】
S10において、実位置確認領域の「位置データ確認済カウンタ」が示す格納領域の指令位置データの所定の範囲内に、ロボット本体6の実際の位置が到達していなかった場合は、このときの「位置データ確認済カウンタ」が示す格納領域の指令位置データを、ロボット本体6が到達していると思われる位置すなわち推測位置と判断する(S12)。一方、実位置確認領域の「位置データ確認済カウンタ」が示す格納領域の指令位置データの所定の範囲内に、ロボット本体6の実際の位置が到達していた場合は、「位置データ確認済カウンタ」を1つ進め(S11)、例えば、図6に示す状態においては、「位置データ確認済カウンタ」を11から12に1つ進め、S12に移行することになる。これにより、カウンタ番号12の格納領域に格納されている指令位置データが、「位置データ確認済カウンタ」の指令位置データということになる。そして、このときの「位置データ確認済カウンタ」が示す格納領域の指令位置データを、ロボット本体6が到達していると思われる位置すなわち推測位置と判断する(S12)。
【0022】
以上、位置推測部2で行われる処理について説明した。以上の処理は、非常停止スイッチ等が押されたような緊急停止時だけでなく、指令位置生成部1が指令位置を生成している状態にあるときには常に行われる。なお、通常動作時においては、「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」は、ほぼ一致しながら動作する。また、「フィルタ結果のカウンタ」及び「位置データ確認済カウンタ」のそれぞれのカウンタ番号の初期値は1である。また、実位置確認領域は、例えば256個の指令位置データを格納可能なバッファである場合、すなわちカウンタ番号が1から256まであるものの場合は、カウンタ番号256に指令位置データが格納されると、次は再度カウンタ番号1に戻って指令位置データが順次格納されていくようになっている。
【0023】
前述したように、従来技術においては、ロボット本体6が動作中に、前述の図2に示したような状態、すなわちロボット本体6が教示点1を経由して教示点2へ向かう際に教示点1の手前で緊急停止した状態においては、ブレーキ制御部4とサーボ電源5のバラツキにより、ロボット本体6が実際には教示点1に到達していないにもかかわらず、ロボット制御装置がロボット本体6は教示点1に到達しているものと誤認し、その結果、ロボット本体6が緊急停止した教示点1の手前の位置から教示点2に向けてショートカットする現象が生じていた。
【0024】
しかし、本実施形態においては、図5に示したフローチャートのS10において、ロボット本体6の実際の位置が「位置データ確認済カウンタ」に格納されている指令位置に到達していない場合は「位置データ確認済カウンタ」がカウントアップしないので、ロボット緊急停止後などには「位置データ確認済カウンタ」がカウントアップすることはない。
【0025】
具体的にいうと、前述した図6に示した状態において緊急停止した場合は、再開動作時には例えば図7に示したような状態になる。詳細には、緊急停止直前の実位置確認領域は、図6に示したように、最新の指令位置がカウンタ番号34に入力され、そのときの教示点1の指令位置データはカウンタ番号20に入力されており、さらに「フィルタ結果のカウンタ」はカウンタ番号15、「位置データ確認済カウンタ」はカウンタ番号11になっている。すなわち、「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」のいずれも、教示点1の指令位置データの格納領域の手前になっている。
【0026】
一方、再開動作時の実位置確認領域は、図7に示すように、最新の指令位置がカウンタ番号37に入力され、そのときの教示点1の指令位置データはカウンタ番号20と変わらないが、「フィルタ結果のカウンタ」はカウンタ番号31に、「位置データ確認済カウンタ」はカウンタ番号16になっている。すなわち、「フィルタ結果のカウンタ」は教示点1の指令位置データの格納領域よりも先にあるが、「位置データ確認済カウンタ」は教示点1の指令位置データの格納領域よりも手前にある。これは、前述した図5に示したフローチャートのS10において、ロボット本体6の実際の位置が「位置データ確認済カウンタ」に格納されている指令位置に到達していない場合は、「位置データ確認済カウンタ」がカウントアップしないことによるものである。
【0027】
したがって、ロボット緊急停止後の再開動作時には、このときに「位置データ確認済カウンタ」に格納されている指令位置データを取り出し利用するようにすれば、ロボット本体6が教示点1に到達していないことや、教示点1までの残距離や残時間などが判断できることになる。そして、「位置データ確認済カウンタ」に格納されている指令位置データをロボット本体6が到達していると思われる推測位置とし、この推測位置を指令位置生成部1にフィードバックすれば、指令位置生成部1は教示点1へ向かうようにサーボ制御部3に対して指令位置を送信することになる。これにより、ロボット本体6が緊急停止した教示点1の手前の位置から教示点2に向けてショートカットすることなく、ロボット本体6を動作制御することが可能となる。
【0028】
【発明の効果】
本発明によれば、教示データ等により予め決められた動作軌跡に基づいて指令位置生成部が逐次生成した指令位置のどの指令位置にまで、ロボットが実際に到達しているのかが推測できることになるので、アーム保持用電磁ブレーキを使用する場合も含めて、いかなる状況下においても、緊急停止後のロボット再開動作において、決められた動作軌跡に対するショートカットをすることはなくなる。したがって、決められた動作軌跡に対するショートカットに起因して発生する、周辺装置やロボット本体の破損を招くこともなくなる。
【図面の簡単な説明】
【図1】位置教示データに基づく教示点に向かってロボットが移動する場合における、教示点、指令位置、及びロボットの実際の位置の関係を示す図である。
【図2】緊急停止時におけるロボットの実際の位置が教示点1の直前であった場合における、再開動作時のショートカットについて示す図である。
【図3】引用文献1における再開動作時のショートカットについて示す図である。
【図4】本発明に係る再開動作制御方法が適用されるロボット制御装置を含むロボットシステム全体のブロック図である。
【図5】本発明の一実施形態における位置推測部2で行われる処理の詳細な流れを示すフローチャートである。
【図6】本発明の一実施形態における位置推測部2内に設けられた実位置確認領域に関する説明図であり、緊急停止時直前のものである。
【図7】本発明の一実施形態における位置推測部2内に設けられた実位置確認領域に関する説明図であり、緊急停止後の再開動作時のものである。
【符号の説明】
1 指令位置生成部
2 位置推測部
3 サーボ制御部
4 ブレーキ制御部
5 サーボ電源
6 ロボット本体
【発明の属する技術分野】
本発明は、位置教示データに基づいてサーボモータを位置制御するロボット制御方法に関し、特に非常停止後の再開動作時の制御方法に関する。
【0002】
【従来の技術】
サーボモータを駆動源とする産業用ロボットの制御装置においては、サーボモータを位置制御し、位置教示データを順次サーボモータに指令してプレイバック動作を行わせることにより、ロボットに多様な動作を行わせることを可能にしている。このようなロボット制御装置においては、一般に、安全上の理由から、非常停止スイッチのようにハードウエアにて動力回路を遮断するスイッチを備えている。通常、サーボ制御においては、サーボモータは指令に対して常に遅れをもった状態で動作するので、前述のスイッチがプレイバック動作中に入力されると、ハードウエアにて動力回路が遮断され、この時点でサーボモータの制御が不可能な状態になる。そのため、動力回路が遮断された後の再開動作時には、遮断時のサーボモータの遅れ分の情報を消失したまま、遮断時での指令位置から動作が再開されることになる。
【0003】
ここで、前述した動力回路が遮断された後の再開動作時の動作について、図1及び図2を参照して説明する。ここでは、図1に示すように、位置教示データに基づく教示点に向かってロボットが移動する場合を想定する。ロボットは教示点に向かって移動するが、前述したようにサーボモータは指令に対して常に遅れをもった状態で動作するので、ロボットの実際の位置は指令位置の手前の位置になる。
【0004】
このことを考慮に入れた上で、図2に示すように、教示点1の直前でロボットが緊急停止した場合を想定する。このとき、ロボットの実際の位置は教示点1の手前にあるが、緊急停止時にサーボモータに対して出された最終の指令位置は既に教示点1を過ぎ、教示点1と次の教示点2との間にある。この場合、ロボットの動作を再開させると、ロボット制御装置は最終の指令位置から教示点2に向けて指令位置を出力することになるが、ロボットの実際の位置は教示点1へ到達していないので、ロボットは緊急停止時の位置すなわち教示点1の手前の位置から教示点1を経由することなく教示点2に向けて、図2に点線で示したように、所謂ショートカットして動作することになる。このショートカットの経路上に周辺装置などが存在していたならば、この周辺装置やロボット本体の破損を招くことになり、場合によっては作業者にも危害が及ぶことになる。そのため、従来は、例えば特許文献1に開示されているように、ロボットの動作遅れの時間より先にサーボモータへの動力が遮断された場合は、サーボモータへの動力が遮断された時の位置を保持し、この位置から再開動作をさせるようにしていた。
【0005】
【特許文献1】特開平11−77570号公報
【0006】
【発明が解決しようとする課題】
ところで、ロボットを停止させる手段として、ロボットのアーム保持用電磁ブレーキを使用することもある。この場合、緊急停止時には、サーボモータへの動力が遮断される前に、アーム保持用電磁ブレーキが作動し、これによりロボットが停止してしまうこともある。サーボモータへの動力が遮断されるタイミングやアーム保持用電磁ブレーキが作動するタイミングは、サーボモータやブレーキ等のハードウエアの性能に依存するため、この性能の違いによりロボットが停止する実際の位置は大きく変化することになる。そして、この場合は、前述した引用文献1に開示されているような方法を用いたとしても、前述したようなショートカットが発生する。すなわち、図3に示すように、ロボットの実際の位置は教示点1の手前であるにもかかわらず、引用文献1に開示されている方法により算出されたサーボ電源遮断時のロボットの推測位置は教示点1を過ぎたものとなる。
【0007】
本発明は、前述した従来技術の課題を解決するためになされたものであり、アーム保持用電磁ブレーキを使用する場合も含めて、いかなる状況下においても、緊急停止後のロボット再開動作において、決められた動作軌跡に対するショートカットをしないようなロボット制御装置の再開動作制御方法を提供することを目的とする。
【0008】
【課題を解決するための手段】
前述した目的を達成するために、本発明は、教示データに基づいて指令位置を生成する指令位置生成部と、指令位置生成部が生成した指令位置に基づいてロボットの関節軸駆動用のサーボモータを制御するサーボ制御部と、指令位置生成部が生成した指令位置及びサーボモータが具備するエンコーダより得られたロボットの実際の位置に基づいてこのロボットの実際の位置に最も近い指令位置としての推測位置を算出する位置推測部と、を有するロボット制御装置において、以下の手順によりロボットの再開動作を制御するようにした。なお、以下の手順の記載において、「S*」(*は正数)の記述はステップ番号を示しており、発明の実施の形態の記載及び図5に示したフローチャートの記載に対応している。
【0009】
すなわち、位置推測部には実位置確認領域が設けられ、この実位置確認領域には格納領域を示すカウンタ番号が付された各格納領域毎に指令位置生成部が逐次生成した指令位置が順次格納されるとともに、「フィルタ結果のカウンタ」及び「位置データ確認済カウンタ」が設定されている(S1〜S2)。まず、位置推測部が入力した最新の指令位置に対してフィルタ処理を行った結果の位置が、このときの「フィルタ結果のカウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にあるときには、「フィルタ結果のカウンタ」を示すカウンタ番号を1つアップする(S3〜S6)。
【0010】
次に、「フィルタ結果のカウンタ」のカウンタ番号と「位置データ確認済カウンタ」のカウンタ番号とを比較する(第1の比較)(S7)。この第1の比較において、「フィルタ結果のカウンタ」のカウンタ番号の方が大きくない場合は、「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を推測位置とする(S8、S12)。一方、この第1の比較において、「フィルタ結果のカウンタ」のカウンタ番号の方が大きい場合は、位置推測部が入力した最新のロボットの実際の位置とこのときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置とを比較する(第2の比較)(S8〜S9)。
【0011】
この第2の比較において、位置推測部が入力した最新のロボットの実際の位置が、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にないときには、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を推測位置とする(S10、S12)。一方、この第2の比較において、位置推測部が入力した最新のロボットの実際の位置が、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にあるときには、「位置データ確認済カウンタ」を示すカウンタ番号を1つアップし、このアップ後の「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を推測位置とする(S10〜S12)。そして、ロボットの再開動作時には、指令位置生成部は前記推測位置に基づいてサーボ制御部へ指令位置を出力するようにする。
【0012】
位置推測部内の実位置確認領域には、格納領域を示すカウンタ番号が付された各格納領域毎に、指令位置生成部が逐次生成した指令位置が順次格納されることになるが、前述した本発明に係る処理を実行することにより、「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置に、ロボットの実際の位置が既に到達していることになる。言い換えれば、教示データ等により予め決められた動作軌跡に基づいて指令位置生成部が逐次生成した指令位置のどの指令位置にまで、ロボットが実際に到達しているのかが推測できることになる。したがって、係る処理の実行後に、「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置をロボットが実際に到達していると思われる位置すなわち推測位置と判断し、この推測位置に基づいてロボットの再開動作を行うようにすれば、従来技術のように予め決められた動作軌跡に対してショートカットをするようなことはなくなり、サーボモータやブレーキ等のハードウエアの性能に依存することなく、ロボットは決められた動作軌跡を動作することになる。
【0013】
【発明の実施の形態】
以下、本発明の一実施形態について、図面を参照して説明する。図4は、本発明に係る再開動作制御方法が適用されるロボット制御装置を含むロボットシステム全体のブロック図である。図4において、1〜5がロボット制御装置を構成する装置であり、1は指令位置生成部、2は位置推測部、3はサーボ制御部、4はブレーキ制御部、5はサーボ電源である。また、6はロボット本体である。指令位置生成部1は、教示データ等に基づいて指令位置を生成し、この指令位置をサーボ制御部3及び位置推測部2へ出力している。サーボ制御部3は、サーボ電源5から電源供給されており、指令位置生成部1から入力した指令位置に基づいてロボット本体6が具備する関節軸駆動用のサーボモータを制御している。ブレーキ制御部4は、非常停止スイッチが押されるなどしてサーボモータへの動力が遮断された場合は、ロボット本体6が具備する関節軸駆動用のサーボモータに装備された電磁ブレーキに対してブレーキ動作を指示する。
【0014】
次に、位置推測部2で行われる処理について説明する。図5は、位置推測部2で行われる処理の詳細な流れを示すフローチャートである。なお、このフローチャート及び以下の文中において、「S*」(*は正数)の記述はステップ番号を示している。
【0015】
位置推測部2は指令位置生成部1の演算周期と同じ周期で実行される。位置推測部2は指令位置生成部1から演算周期毎に出力された指令位置を受信すると(S1)、この指令位置データを位置推測部2内に設けられたバッファとしての実位置確認領域に逐次格納する(S2)。この実位置確認領域には、図6に示すように、格納領域を示すカウンタ番号が付けられており、演算周期毎に逐次受信した指令位置データがカウンタ番号に対応する格納領域毎に順次格納される。ここでは、カウンタ番号が大きい格納領域ほど先の時間の指令位置データが格納される。例えば、ロボット本体6が教示点1から教示点2に移動している場合は、カウンタ番号が大きい格納領域ほど教示点2に近い指令位置データが格納されることになる。また、この実位置確認領域には、推測位置を判断するための後述する「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」が存在する。
【0016】
ここで、指令位置生成部1から最新の指令位置を受信した場合の処理について説明する。このとき受信した指令位置は、図6に示すようにカウンタ番号34の格納領域に格納されるが、これと同時にフィルタ処理も施される(S3)。このフィルタ処理された指令位置と実位置確認領域の「フィルタ結果のカウンタ」(例えば図6においてはカウンタ番号15)が示す格納領域の指令位置データとを比較する(S4)。具体的には、実位置確認領域の「フィルタ結果のカウンタ」が示す格納領域の指令位置データの所定の範囲内に、前述のフィルタ処理された指令位置が到達しているか否かを判断する(S5)。
【0017】
そして、実位置確認領域の「フィルタ結果のカウンタ」が示す格納領域の指令位置データの所定の範囲内にフィルタ処理された指令位置が到達していた場合は、「フィルタ結果のカウンタ」を1つ進め(S6)、S7に移行する。例えば、図6に示す状態においては、「フィルタ結果のカウンタ」を15から16に1つ進めた後、S7に移行することになる。これにより、カウンタ番号16の格納領域に格納されている指令位置データが、「フィルタ結果のカウンタ」の指令位置データということになる。一方、実位置確認領域の「フィルタ結果のカウンタ」が示す格納領域の指令位置データの所定の範囲内にフィルタ処理された指令位置が到達していなかった場合は、「フィルタ結果のカウンタ」を進めることなく(例えば図6においては「フィルタ結果のカウンタ」を15のままで)、S7に移行する。
【0018】
次に、実位置確認領域の「フィルタ結果のカウンタ」のカウンタ番号と「位置データ確認済カウンタ」のカウンタ番号とを比較する(S7)。ここで、「フィルタ結果のカウンタ」のカウンタ番号が「位置データ確認済カウンタ」のカウンタ番号よりも大きくない場合、具体的には「フィルタ結果のカウンタ」のカウンタ番号と「位置データ確認済カウンタ」のカウンタ番号が等しい場合は(S8No)、このときの「位置データ確認済カウンタ」が示す格納領域の指令位置データを、ロボット本体6が到達していると思われる位置すなわち推測位置と判断する(S12)。一方、「フィルタ結果のカウンタ」のカウンタ番号が「位置データ確認済カウンタ」のカウンタ番号よりも大きい場合は(S8Yes)、S9以降の処理を行う。
【0019】
なお、このS8において両カウンタのカウンタ番号の比較を行う理由としては、後述するS10における「位置データ確認済カウンタ」が示す格納領域の位置データとロボット本体6の実際の位置との比較においては、「フィルタ結果のカウンタ」が「位置データ確認済カウンタ」よりも大きいことが前提になるからである。これは、実際のロボット制御においては、ロボット本体6の移動量が0または小さいときに、「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」が同じになることに対処したものである。
【0020】
S8において、「フィルタ結果のカウンタ」のカウンタ番号が「位置データ確認済カウンタ」のカウンタ番号よりも大きい場合は(S8Yes)、「位置データ確認済カウンタ」が示す格納領域の指令位置データとロボット本体6の実際の位置とを比較する(S9)。具体的には、実位置確認領域の「位置データ確認済カウンタ」が示す格納領域の指令位置データの所定の範囲内に、ロボット本体6の実際の位置が到達しているか否かを判断する(S10)。なお、ロボット本体6の実際の位置は、例えばロボット本体6が具備している図示しないサーボモータが装備しているエンコーダにより検出する。
【0021】
S10において、実位置確認領域の「位置データ確認済カウンタ」が示す格納領域の指令位置データの所定の範囲内に、ロボット本体6の実際の位置が到達していなかった場合は、このときの「位置データ確認済カウンタ」が示す格納領域の指令位置データを、ロボット本体6が到達していると思われる位置すなわち推測位置と判断する(S12)。一方、実位置確認領域の「位置データ確認済カウンタ」が示す格納領域の指令位置データの所定の範囲内に、ロボット本体6の実際の位置が到達していた場合は、「位置データ確認済カウンタ」を1つ進め(S11)、例えば、図6に示す状態においては、「位置データ確認済カウンタ」を11から12に1つ進め、S12に移行することになる。これにより、カウンタ番号12の格納領域に格納されている指令位置データが、「位置データ確認済カウンタ」の指令位置データということになる。そして、このときの「位置データ確認済カウンタ」が示す格納領域の指令位置データを、ロボット本体6が到達していると思われる位置すなわち推測位置と判断する(S12)。
【0022】
以上、位置推測部2で行われる処理について説明した。以上の処理は、非常停止スイッチ等が押されたような緊急停止時だけでなく、指令位置生成部1が指令位置を生成している状態にあるときには常に行われる。なお、通常動作時においては、「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」は、ほぼ一致しながら動作する。また、「フィルタ結果のカウンタ」及び「位置データ確認済カウンタ」のそれぞれのカウンタ番号の初期値は1である。また、実位置確認領域は、例えば256個の指令位置データを格納可能なバッファである場合、すなわちカウンタ番号が1から256まであるものの場合は、カウンタ番号256に指令位置データが格納されると、次は再度カウンタ番号1に戻って指令位置データが順次格納されていくようになっている。
【0023】
前述したように、従来技術においては、ロボット本体6が動作中に、前述の図2に示したような状態、すなわちロボット本体6が教示点1を経由して教示点2へ向かう際に教示点1の手前で緊急停止した状態においては、ブレーキ制御部4とサーボ電源5のバラツキにより、ロボット本体6が実際には教示点1に到達していないにもかかわらず、ロボット制御装置がロボット本体6は教示点1に到達しているものと誤認し、その結果、ロボット本体6が緊急停止した教示点1の手前の位置から教示点2に向けてショートカットする現象が生じていた。
【0024】
しかし、本実施形態においては、図5に示したフローチャートのS10において、ロボット本体6の実際の位置が「位置データ確認済カウンタ」に格納されている指令位置に到達していない場合は「位置データ確認済カウンタ」がカウントアップしないので、ロボット緊急停止後などには「位置データ確認済カウンタ」がカウントアップすることはない。
【0025】
具体的にいうと、前述した図6に示した状態において緊急停止した場合は、再開動作時には例えば図7に示したような状態になる。詳細には、緊急停止直前の実位置確認領域は、図6に示したように、最新の指令位置がカウンタ番号34に入力され、そのときの教示点1の指令位置データはカウンタ番号20に入力されており、さらに「フィルタ結果のカウンタ」はカウンタ番号15、「位置データ確認済カウンタ」はカウンタ番号11になっている。すなわち、「フィルタ結果のカウンタ」と「位置データ確認済カウンタ」のいずれも、教示点1の指令位置データの格納領域の手前になっている。
【0026】
一方、再開動作時の実位置確認領域は、図7に示すように、最新の指令位置がカウンタ番号37に入力され、そのときの教示点1の指令位置データはカウンタ番号20と変わらないが、「フィルタ結果のカウンタ」はカウンタ番号31に、「位置データ確認済カウンタ」はカウンタ番号16になっている。すなわち、「フィルタ結果のカウンタ」は教示点1の指令位置データの格納領域よりも先にあるが、「位置データ確認済カウンタ」は教示点1の指令位置データの格納領域よりも手前にある。これは、前述した図5に示したフローチャートのS10において、ロボット本体6の実際の位置が「位置データ確認済カウンタ」に格納されている指令位置に到達していない場合は、「位置データ確認済カウンタ」がカウントアップしないことによるものである。
【0027】
したがって、ロボット緊急停止後の再開動作時には、このときに「位置データ確認済カウンタ」に格納されている指令位置データを取り出し利用するようにすれば、ロボット本体6が教示点1に到達していないことや、教示点1までの残距離や残時間などが判断できることになる。そして、「位置データ確認済カウンタ」に格納されている指令位置データをロボット本体6が到達していると思われる推測位置とし、この推測位置を指令位置生成部1にフィードバックすれば、指令位置生成部1は教示点1へ向かうようにサーボ制御部3に対して指令位置を送信することになる。これにより、ロボット本体6が緊急停止した教示点1の手前の位置から教示点2に向けてショートカットすることなく、ロボット本体6を動作制御することが可能となる。
【0028】
【発明の効果】
本発明によれば、教示データ等により予め決められた動作軌跡に基づいて指令位置生成部が逐次生成した指令位置のどの指令位置にまで、ロボットが実際に到達しているのかが推測できることになるので、アーム保持用電磁ブレーキを使用する場合も含めて、いかなる状況下においても、緊急停止後のロボット再開動作において、決められた動作軌跡に対するショートカットをすることはなくなる。したがって、決められた動作軌跡に対するショートカットに起因して発生する、周辺装置やロボット本体の破損を招くこともなくなる。
【図面の簡単な説明】
【図1】位置教示データに基づく教示点に向かってロボットが移動する場合における、教示点、指令位置、及びロボットの実際の位置の関係を示す図である。
【図2】緊急停止時におけるロボットの実際の位置が教示点1の直前であった場合における、再開動作時のショートカットについて示す図である。
【図3】引用文献1における再開動作時のショートカットについて示す図である。
【図4】本発明に係る再開動作制御方法が適用されるロボット制御装置を含むロボットシステム全体のブロック図である。
【図5】本発明の一実施形態における位置推測部2で行われる処理の詳細な流れを示すフローチャートである。
【図6】本発明の一実施形態における位置推測部2内に設けられた実位置確認領域に関する説明図であり、緊急停止時直前のものである。
【図7】本発明の一実施形態における位置推測部2内に設けられた実位置確認領域に関する説明図であり、緊急停止後の再開動作時のものである。
【符号の説明】
1 指令位置生成部
2 位置推測部
3 サーボ制御部
4 ブレーキ制御部
5 サーボ電源
6 ロボット本体
Claims (1)
- 教示データに基づいて指令位置を生成する指令位置生成部と、
該指令位置生成部が生成した指令位置に基づいてロボットの関節軸駆動用のサーボモータを制御するサーボ制御部と、
前記指令位置生成部が生成した指令位置及び前記サーボモータが具備するエンコーダより得られたロボットの実際の位置に基づいてこのロボットの実際の位置に最も近い指令位置としての推測位置を算出する位置推測部と、を有するロボット制御装置の再開動作制御方法において、
前記位置推測部には実位置確認領域が設けられ、
該実位置確認領域には格納領域を示すカウンタ番号が付された各格納領域毎に前記指令位置生成部が逐次生成した指令位置が順次格納されるとともに、「フィルタ結果のカウンタ」及び「位置データ確認済カウンタ」が設定され、
前記位置推測部が入力した最新の指令位置に対してフィルタ処理を行った結果の位置がこのときの前記「フィルタ結果のカウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にあるときには「フィルタ結果のカウンタ」を示すカウンタ番号を1つアップし、
前記「フィルタ結果のカウンタ」のカウンタ番号と前記「位置データ確認済カウンタ」のカウンタ番号とを比較し(第1の比較)、
該第1の比較において「フィルタ結果のカウンタ」のカウンタ番号の方が大きくない場合は、前記「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を前記推測位置とし、
一方、前記第1の比較において「フィルタ結果のカウンタ」のカウンタ番号の方が大きい場合は、前記位置推測部が入力した最新の前記ロボットの実際の位置とこのときの前記「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置とを比較し(第2の比較)、
該第2の比較において前記位置推測部が入力した前記最新のロボットの実際の位置がこのときの前記「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にないときには、このときの「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を前記推測位置とし、
一方、前記第2の比較において前記位置推測部が入力した前記最新のロボットの実際の位置がこのときの前記「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置の所定の範囲内にあるときには、「位置データ確認済カウンタ」を示すカウンタ番号を1つアップし、このアップ後の「位置データ確認済カウンタ」の示す格納領域に格納されている指令位置を前記推測位置とし、
ロボットの再開動作時には前記指令位置生成部は前記推測位置に基づいて前記サーボ制御部へ指令位置を出力するようにしたことを特徴とするロボット制御装置の再開動作制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002340225A JP2004174613A (ja) | 2002-11-25 | 2002-11-25 | ロボット制御装置の再開動作制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002340225A JP2004174613A (ja) | 2002-11-25 | 2002-11-25 | ロボット制御装置の再開動作制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004174613A true JP2004174613A (ja) | 2004-06-24 |
Family
ID=32702908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002340225A Pending JP2004174613A (ja) | 2002-11-25 | 2002-11-25 | ロボット制御装置の再開動作制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004174613A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112462765A (zh) * | 2020-11-23 | 2021-03-09 | 北京配天技术有限公司 | 机器人及其控制方法、装置以及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01292505A (ja) * | 1988-05-20 | 1989-11-24 | Hitachi Seiko Ltd | サーボ制御装置 |
JPH056213A (ja) * | 1990-11-20 | 1993-01-14 | Daikin Ind Ltd | 産業用ロボツト制御方法およびその装置 |
JPH07306706A (ja) * | 1994-05-11 | 1995-11-21 | Toyota Autom Loom Works Ltd | ロボットの軌道修正装置及びその軌道修正方法 |
JPH08305429A (ja) * | 1995-04-28 | 1996-11-22 | Fanuc Ltd | ロボット急停止後の再開方法 |
-
2002
- 2002-11-25 JP JP2002340225A patent/JP2004174613A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01292505A (ja) * | 1988-05-20 | 1989-11-24 | Hitachi Seiko Ltd | サーボ制御装置 |
JPH056213A (ja) * | 1990-11-20 | 1993-01-14 | Daikin Ind Ltd | 産業用ロボツト制御方法およびその装置 |
JPH07306706A (ja) * | 1994-05-11 | 1995-11-21 | Toyota Autom Loom Works Ltd | ロボットの軌道修正装置及びその軌道修正方法 |
JPH08305429A (ja) * | 1995-04-28 | 1996-11-22 | Fanuc Ltd | ロボット急停止後の再開方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112462765A (zh) * | 2020-11-23 | 2021-03-09 | 北京配天技术有限公司 | 机器人及其控制方法、装置以及计算机可读存储介质 |
CN112462765B (zh) * | 2020-11-23 | 2023-06-06 | 北京配天技术有限公司 | 机器人及其控制方法、装置以及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2372478B1 (en) | Motor driving system and motor controller | |
US10695909B2 (en) | Robot system and robot control method | |
JP3288250B2 (ja) | ロボット制御装置 | |
JP2013011937A (ja) | 同期制御装置、同期制御方法、同期制御プログラム、および同期制御プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP6386516B2 (ja) | 学習機能を備えたロボット装置 | |
US20200189100A1 (en) | Technique for Providing Reliable Control in a Cloud Robotics System | |
JPH0360986A (ja) | 産業用ロボットシステム及びその制御方法 | |
JP6447141B2 (ja) | ロボットの非常停止方法、ロボットの制御装置 | |
JP2008171025A (ja) | 数値制御装置及び数値制御装置を用いた同期制御方法 | |
JP2007172068A (ja) | 数値制御装置 | |
JP6457778B2 (ja) | 数値制御装置 | |
JP5030628B2 (ja) | 干渉チェックシステム | |
JP2004174613A (ja) | ロボット制御装置の再開動作制御方法 | |
JP2009262275A (ja) | ロボット制御装置 | |
US20180207801A1 (en) | Robot program modification device, robot control device, robot simulation device, and robot program modification method | |
US10915093B2 (en) | Numerical controller | |
JP2001216008A (ja) | ロボット制御方法 | |
JP2005103674A (ja) | ロボット制御装置及び制御方法 | |
JP6612866B2 (ja) | サーボモータ駆動装置 | |
JP2006170946A (ja) | ロータリテーブル制御装置 | |
JP4671171B2 (ja) | モータ制御装置 | |
JP5678746B2 (ja) | ロボットの制御方法およびロボットの制御装置 | |
CN112462694B (zh) | 基于总线伺服控制系统实现速度前馈补偿处理的方法、系统、装置、处理器及存储介质 | |
JP2019069494A (ja) | 制御装置 | |
JP2001154719A (ja) | 自由曲線補間方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051125 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070511 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070529 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071009 |