JP2005149182A - モータ制御装置 - Google Patents

モータ制御装置 Download PDF

Info

Publication number
JP2005149182A
JP2005149182A JP2003386421A JP2003386421A JP2005149182A JP 2005149182 A JP2005149182 A JP 2005149182A JP 2003386421 A JP2003386421 A JP 2003386421A JP 2003386421 A JP2003386421 A JP 2003386421A JP 2005149182 A JP2005149182 A JP 2005149182A
Authority
JP
Japan
Prior art keywords
pulse
interpolation
motor control
control device
pulses
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
JP2003386421A
Other languages
English (en)
Other versions
JP3797998B2 (ja
Inventor
Tsutomu Tomita
努 富田
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.)
Cosmotec KK
Original Assignee
Cosmotec KK
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=34694108&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2005149182(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Cosmotec KK filed Critical Cosmotec KK
Priority to JP2003386421A priority Critical patent/JP3797998B2/ja
Publication of JP2005149182A publication Critical patent/JP2005149182A/ja
Application granted granted Critical
Publication of JP3797998B2 publication Critical patent/JP3797998B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)

Abstract

【課題】移動対象物の移動量に相当する速度指令パルス数を容易に求めることを可能にするモータ制御装置を提供する。
【解決手段】補間制御部240は、パルス発生部230から入力される速度指令パルス231に基づいて、X軸用及びY軸用の駆動パルス241a,241bを生成する。総パルス数カウント部250は、速度指令パルス231のパルス数をカウントする。終点検出部270が補間終了位置に達したことを検出し終点検出信号271を出力すると、総パルス数カウント部250は、速度指令パルス231のカウントを終了し、その時点でのカウント値を、各種レジスタ群210のうちの所定のレジスタにセットする。上位CPU110は、補間動作が終了したことを割り込み等によって知ると、各種レジスタ群210から、総パルス数カウント部250がカウントしたカウント値、すなわち、移動対象物を所望の移動経路に沿って移動させるのに必要な総パルス数を読み出す。
【選択図】図2

Description

本発明は、パルスモータ(ステッピングモータ)やパルス列入力型サーボモータの制御を行うモータ制御装置に関する。
数値制御(NC)工作機械や搬送機器等における位置制御には、パルスモータ(ステッピングモータ)やパルス列入力型サーボモータ等、駆動回路に入力されるパルス数に応じた回転量が得られるモータ(以下、パルス列入力型モータという)が利用されている。例えば、XY平面上を移動対象物(例えば、工具)を移動させるためには、X軸用及びY軸用の2個のパルス列入力型モータが利用される。
パルス列入力型モータでは、パルス1個あたりの回転角である最小回転角が決まっているので、パルス列入力型モータによって制御される移動対象物の移動量は連続的に変化させることはできず、前記最小回転角で決まる最小移動量が存在する。したがって、所定の移動経路が与えられた場合であっても、実際は、実現可能な近似的な経路に置き換えて、移動対象物の移動が行われる。与えられた移動経路に対して、実現可能な近似的な経路を算出することを補間という。現在、直線及び円弧に対する補間を自動的に行う機能を備えたモータ制御用LSI(例えば、補間制御専用LSIや、補間機能付きモータコントロールLSI)が存在する。このようなモータ制御LSIを利用する場合、基本経路(例えば、直線及び円弧)を組み合わせることで所望の移動経路を実現する。
上記モータ制御用LSIにおいて、XY2軸の直交座標系で円弧に沿った軌道上を移動対象物が動くようにモータを制御(円弧補間)する場合、円弧の開始位置及び終了位置の座標を指定する必要がある。開始位置及び終了位置の指定は、例えば、上位コントローラが、モータ制御用LSI内部のレジスタに座標パラメータを書き込むことによって行われる。開始位置及び終了位置を指定後、上位コントローラによって円弧補間動作が指示されると、モータ制御用LSIは、パルスジェネレータが発生する速度指令パルスに基づいて、円弧(近似経路)上を移動対象物が開始位置から終了位置まで移動するように、X軸用モータ駆動パルス及びY軸用モータ駆動パルスを適宜出力する。なお、上記パルスジェネレータは、上位CPUからの指示に従って速度指令パルスを発生するものであり、上記モータ制御用LSIが補間制御専用LSIの場合は、通常、独立した専用LSIとして実装されたものが用いられ、また、上記モータ制御用LSIが補間機能付きモータコントロールLSIの場合は、通常、当該モータコントロールLSI内に実装される。
移動対象物を移動開始位置から移動終了位置まで移動させる際、移動開始時及び移動停止時における急激な速度変化による移動対象物への影響(例えば、振動の発生)を低減させるため、直線加減速制御やS字状加減速制御が行われる。このような加減速制御は、通常、上記パルスジェネレータが、上位コントローラからの指示に従って速度指令パルス列の周波数を変化させることで実現される。
このような加減速制御を実現するためには、減速開始位置を自動検出するか、手動で指定する必要があるが、この減速開始位置を求めるためには、移動対象物を移動開始位置から移動終了位置まで移動させるのに必要な速度指令パルスのパルス数(移動開始位置から移動終了位置までの移動量に相当)を求める必要がある。この移動量に相当する総パルス数がわかれば、例えば、パルスジェネレータにおいて、加速時に要したパルス数をカウントし、加速と減速は対称であると仮定することによって、減速開始位置を自動検出することが可能になる。
しかしながら、この総パルス数の算出は必ずしも容易ではない。例えば、所望の経路が円弧補間で実現される場合、円弧の位置や角度などに応じた計算をする必要があり、手間がかかる。更に、所望の経路が複数の円弧補間や直線補間などを連続的に実行することで実現される場合は、総パルス数の算出に非常に手間がかかることになる。
なお、特開平8−190419号公報(特許文献1)には、円弧補間等の曲線補間の場合に、補間終了位置までの総移動量の計算が複雑になることに鑑み、総移動量を計算することなく減速開始位置を簡単に決定できるようにした2軸補間制御装置の加減速制御法が開示されている。具体的には、所定の加速が終了したあと、開始位置と加速終了位置までの直線距離AFPを算出し、現在位置と終了位置までの直線距離DFPが前記直線距離AFP以下となった位置を減速開始位置と決定することによって、予め総移動量距離を計算する必要をなくしている。
しかしながら、特許文献1記載の方法では、例えば、所望の移動経路が複数の円弧で構成される場合であって、最初の円弧と最後の円弧の半径が異なる場合等に、適切な減速開始位置を求めることができない。
特開平8−190419号公報
本発明の目的は、移動対象物の総移動量に相当する速度指令パルス数を容易に求めることを可能にするモータ制御装置を提供することにある。
本発明に係るモータ制御装置は、複数のパルス列入力型モータを駆動するため、各パルス列入力型モータ用の駆動パルスを出力するモータ制御装置であって、速度指令パルスに基づいて補間処理を行い、前記駆動パルスを生成する補間制御部と、補間開始位置から補間終了位置まで、前記速度指令パルスのパルス数をカウントする総パルス数カウント部とを備えたことを特徴とする。
この場合において、前記補間終了位置に達したことを検出する終点検出部を更に備え、前記総パルス数カウント部は、前記終点検出部が前記補間終了位置を検出するまで、前記速度指令パルスのパルス数をカウントするようにしてもよい。更に、前記終点検出部は、複数の補間動作が連続して指示された場合、一番最後の補間動作についての補間終了位置に達したことを検出し、前記総パルス数カウント部は、前記終点検出部が前記一番最後の補間動作についての補間終了位置を検出するまで、前記速度指令パルスのパルス数をカウントするようにしてもよい。
また、以上の場合において、前記駆動パルスをモータ制御装置の外部へ出力するか否かを制御するパルス出力制御部を更に備えるようにしてもよい。更に、動作モードとして、総パルス数を求めるためのトレースモードと実動作のための通常動作モードとを有し、前記パルス出力制御部は、前記トレースモード時には、前記駆動パルスをモータ制御装置の外部へ出力せず、前記通常動作モード時には、前記駆動パルスをモータ制御装置の外部へ出力するようにしてもよい。
また、以上の場合において、前記総パルス数カウント部のカウント値をモータ制御装置の外部から読み出すためのインタフェース部を更に備えるようにしてもよい。また、前記補間終了位置に到達したときの前記総パルス数カウント部のカウント値を格納する記憶部(例えば、レジスタ)を更に備えるようにしてもよい。更に、前記記憶部を複数備えるようにしてもよい。また、前記速度指令パルスを生成するパルス発生部を更に備え、当該パルス発生部は、前記記憶部に格納されたカウント値に基づいて、減速開始位置を自動検出するようにしてもよい。
一方、本発明に係るモータ制御システムは、前記モータ制御装置と、複数のパルス列入力型モータと、前記モータ制御装置が出力する駆動パルスに基づいて、前記複数のパルス列入力型モータを駆動する複数のモータドライバとを備えたことを特徴とする。
本発明によれば、補間開始位置から補間終了位置まで、総パルス数カウント部が速度指令パルスをカウントするので、繁雑な計算等をすることなく容易に、総移動量に相当する速度指令パルス数を求めることができる。
以下、本発明の実施の形態について、図面を参照しつつ詳細に説明する。
≪第一実施形態≫
図1は、本発明によるモータ制御システム100の構成を示すブロック図である。モータ制御システム100は、XY平面上における移動対象物(不図示)の位置制御を行うものである。
同図に示すように、モータ制御システム100は、上位CPU110と、補間機能付きモータコントロールLSI120と、X軸用及びY軸用モータドライバ130a,130bと、X軸用及びY軸用モータ140a,140bとを備える。
上位CPU110は、CPUバス111を介して補間機能付きモータコントロールLSI120と接続され、補間機能付きモータコントロールLSI120の動作を制御する上位コントローラである。具体的には、上位CPU110は、補間機能付きモータコントロールLSI120に対して、各種パラメータを設定し、所望の動作(直線補間や円弧補間等)を指示する。
補間機能付きモータコントロールLSI(以下、単にモータコントロールLSIという)120は、本発明が適用されるモータ制御装置であって、上位CPU110からの指示に従って、X軸用及びY軸用駆動パルス121a,121bを発生させる。モータコントロールLSI120の内部構成については後述する。
モータドライバ130aは、モータコントロールLSI120から出力される駆動パルス121aに基づいて、モータ140aを駆動する。同様に、モータドライバ130bは、モータコントロールLSI120から出力される駆動パルス121bに基づいて、モータ140bを駆動する。
モータ140aは、モータドライバ130aによって駆動されるX軸用のパルスモータであり、モータドライバ130aに入力されるパルス数に応じた回転を行う。同様に、モータ140bは、モータドライバ130bによって駆動されるY軸用のパルスモータであり、モータドライバ130bに入力されるパルス数に応じた回転を行う。モータ140aは、移動対象物のX軸方向の移動を制御し、モータ140bは、移動対象物のY軸方向の移動を制御する。
次に、モータコントロールLSI120の内部構成について説明する。
図2は、モータコントロールLSI120の内部構成を示すブロック図である。
同図に示すように、モータコントロールLSI120は、CPUインタフェース部200と、各種レジスタ群210と、主制御部220と、パルス発生部230と、補間制御部240と、総パルス数カウント部250と、パルス出力制御部260と、終点検出部270とを備える。なお、各部は外部から入力される基準クロックに同期して動作する。
CPUインタフェース部200は、外部とのデータのやり取りを可能にするもので、具体的には、上位CPU110が各種レジスタ群210に対して読み書きをすることを可能にする。
各種レジスタ群210は、モータコントロールLSI120の動作を制御するためのレジスタ群であって、上位CPU110がコマンドを書き込むためのコマンドレジスタや、動作モードを設定するためのモードレジスタ等、各種パラメータを設定するための書き込み用レジスタや、各種ステータスを読み出すための読み出し用レジスタなど、複数のレジスタから構成される。
主制御部220は、モータコントロールLSI120の各構成要素の制御を行うもので、具体的には、上位CPU110によって書き込まれるコマンドを解釈し、指定されたコマンドに応じた動作をパルス発生部230や補間制御部240などに行わせる。
パルス発生部230は、上位CPU110によって設定された各種パラメータ(初速度、駆動速度、加減速度等)に従って、速度指令パルス231を生成する。
補間制御部240は、上位CPU110によって設定された各種パラメータ(補間開始位置座標、補間終了位置座標等)に従って、パルス発生部230によって生成された速度指令パルス231に対して所定の補間処理を行い、X軸用及びY軸用の駆動パルス241a,241bを生成する。なお、補間制御部240は、必要に応じて、1軸のみの駆動時と複数軸同時の駆動時とで合成速度が一定になるような制御(合成速度一定制御)も行う。
終点検出部270は、補間制御部240から出力されるX軸用及びY軸用駆動パルス241a,241bの数をカウントし、当該カウント値(現在位置を表す)と、上位CPU110によって設定された補間終了位置座標値とを比較して、補間終了位置に達したか否かを判定する。パルス列入力型モータの場合、通常、1パルスあたりの距離を決めておき(例えば、1パルスが1μm)、位置座標についてはパルス数で指定するようにするので、X軸用及びY軸用駆動パルス241a,241bのカウント値と補間終了位置座標値とは直接比較することができる。終点検出部270は、補間終了位置に達したことを検出すると、終点検出信号271を出力する。なお、1個の補間コマンド(補間動作の開始を指示するコマンド)を実行している間に、次の補間コマンドが指示された場合、すなわち、連続補間処理の場合は、1個の補間コマンドについて設定された補間終了位置に達した場合であっても、終点検出信号271を出力することなく、次の補間コマンドについて設定されたパラメータに基づいて、次の補間コマンドについての補間終了位置の検出を開始し、連続補間処理が終了した時点、すなわち、一番最後の補間コマンドについて設定された補間終了位置に達した時点で、終点検出信号271を出力する。
総パルス数カウント部250は、パルス発生部230が生成した速度指令パルス231のカウント(計数)を行う。総パルス数カウント部250は、速度指令パルス231の入力が開始されてから、終点検出部270が終点検出信号271を出力するまで、速度指令パルス231のカウントを行う。総パルス数カウント部250は、終点検出信号271が入力されると、その時点でのカウント値を、各種レジスタ群210のうちの所定のレジスタ(以下、総パルス数カウント値レジスタという)に設定する。総パルス数カウント部250は、カウント値の総パルス数カウント値レジスタへの格納が済むと、カウント値をゼロにリセットする。なお、カウント値のリセットは、他の適当なタイミング、例えば、主制御部220によって動作開始が指示された時点で行うようにしてもよい。
パルス出力制御部260は、補間制御部240によって生成された駆動パルス241a,241bを、モータコントロールLSI120外部に出力するか否かを制御する。すなわち、通常動作モードの時は、補間制御部240によって生成された駆動パルス241a,241bを、そのまま駆動パルス121a,121bとしてLSI外部に出力する。一方、トレースモードの時は、補間制御部240によって生成された駆動パルス241a,241bがLSI外部に出力されないようにする。トレースモード及び通常動作モードについては後述する。
次に、モータ制御システム100の動作について説明する。ここでは、移動対象物を、図3(a)に示すような経路に沿って、同図(b)に示すような加減速制御のもと、移動させる場合について説明する。同図(a)に示す経路は、2つの円弧301,302から構成されており、2個の円弧補間コマンドによって実現される。また、同図(b)に示す加減速制御は、直線加減速モードでの所定パルス数の駆動(定量駆動)により実現される。なお、同図(b)に示すように、加速と減速は対称であるので、減速開始位置については、自動検出するものとする。このような加減速制御を実現するためには、同図(a)に示すような経路に沿って移動対象物を点Aから点Cまで移動させるために必要な速度指令パルスの総パルス数を求める必要がある。
まず、トレースモードにおいて、総パルス数をカウントする動作について説明する。トレースモードとは、移動対象物の移動開始位置から移動終了位置までの移動量に相当する総パルス数のカウントを行うための動作モードである。
トレースモードにおいては、モータコントロールLSI120は、内部的には、通常動作モード時と同様の動作を行うが、X軸用及びY軸用駆動パルスは外部に出力されない。つまり、トレースモードにおいては、実際にモータによって駆動される機械系の動作は行われない。このため、加減速制御は必ずしも必要ではなくなる。そこで、トレースモードにおいては、加減速制御は行わず、図3(c)に示すように、開始位置から終了位置まで一定の駆動速度で駆動する一定速(連続)駆動動作を行う。加減速制御を行わないことにより、総パルス数のカウントに要する時間を短縮させることができる。更に、トレースモードでは、実際に機械系の動作は行われないため、駆動速度を実動作時より速くすることも可能である。したがって、モータコントロールLSI120に設定する速度パラメータ(駆動速度)を設定可能な最大値に設定することで、総パルス数のカウントに要する時間を更に短縮させることができる。図3(c)の場合も、加減速制御を行わず、かつ、駆動速度として同図(b)の場合より大きな値を設定することで、同図(b)の場合に比べて、移動対象物を点Aから点Cまで移動させる時間、すなわち、総パルス数のカウントに要する時間が短縮されている。
上位CPU110は、まず、モータコントロールLSI120の動作モードを、トレースモードにするため、CPUインタフェース部200を介して、各種レジスタ群210のうちのモードレジスタに対して所定のビットパターンを書き込む。
次に、上位CPU110は、所望の動作に必要なパラメータを設定するため、CPUインタフェース部200を介して、各種レジスタ群210に所定のデータを書き込む。具体的には、最初の円弧301についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Aの座標)、終了位置座標(点Bの座標)、補間動作の種類(時計回り円弧補間)等を設定する。ここでは、円弧補間の場合、開始位置座標及び終了位置座標は、円弧の中心(円弧301の場合、点O)を原点(0,0)とした場合の座標を指定するものとする。すなわち、円弧301の場合、補間開始位置座標は(−2000,0)で、補間終了位置座標は(2000,0)となる。また、一定速・連続駆動動作のために必要なパラメータとして、駆動速度を設定する。
上位CPU110は、必要なパラメータ等の設定が終わると、モータコントロールLSI120に時計回りの円弧補間動作及び一定速・連続駆動動作を行わせるため、各種レジスタ群210のうちのコマンドレジスタに対して、該当するコマンドを書き込む。当該コマンドの書き込みに応じてモータコントロールLSI120の動作が開始されると、上位CPU110は、続けて、第二の円弧302についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Oを原点とした場合の点Bの座標(−3000,0))、終了位置座標(点Oを原点とした場合の点Cの座標(3000,0))、補間動作種類(反時計回り円弧補間)等を設定し、モータコントロールLSI120に反時計回りの円弧補間動作を行わせるため、コマンドレジスタに対して、該当するコマンドを書き込む。当該コマンドは、最初のコマンドについての処理が終了した後に、続けて処理される(連続補間処理)。
モータコントロールLSI120では、コマンドレジスタにコマンドが書き込まれると、主制御部220がコマンドを解釈して、指示されたコマンドに応じた動作をするため、パルス発生部230や補間制御部240等に対して動作開始を指示する。
パルス発生部230は、動作開始が指示されると、設定されたパラメータに基づいて、所定の速度指令パルス列を発生させる。すなわち、パルス発生部230は、図3(c)に示すように、駆動速度として指定された速度(パルス周波数)の速度指令パルス231の発生を開始し、終点検出部270が補間終了位置を検出するまで、速度指令パルス231を発生し続ける。
補間制御部240は、パルス発生部230から入力される速度指令パルス231と、上位CPU110によって各種レジスタ群210に設定されたパラメータに基づいて、X軸用及びY軸用の駆動パルス241a,241bを生成する。一方、総パルス数カウント部250は、パルス発生部230によって生成された速度指令パルス231のパルス数をカウントする。
パルス出力制御部260は、現在の動作モードがトレースモードであるので、補間制御部240から入力されるX軸用及びY軸用駆動パルス241a,241bをマスクして、LSI外部に出力されないようにする。
終点検出部270は、補間終了位置(図3の点C)に達したことを検出すると、終点検出信号271を出力する。なお、最初の円弧補間コマンドについての補間終了位置(図3の点B)に達した時点では、次の補間コマンドが指示されているので、終点検出信号271を出力することはない。
総パルス数カウント部250は、終点検出部270から終点検出信号271が出力されると、速度指令パルス231のカウントを終了し、その時点でのカウント値を、総パルス数カウント値レジスタにセットする。
上位CPU110は、補間動作が終了したことを割り込み等によって知ると、総パルス数カウント値レジスタに対してアクセスして、総パルス数カウント部250がカウントしたカウント値、すなわち、移動対象物を所望の移動経路(図3(a))に沿って移動させるのに必要な総パルス数を読み出す。
以上のようにして、上位CPU110は、移動対象物を所望の移動経路に沿って移動させるのに必要な総パルス数を得ることができる。
次に、実際に移動対象物を所望の移動経路に沿って移動させるために、以上のようにして得られた総パルス数を使って、所定パルス数の駆動(定量駆動)を行う動作について説明する。
上位CPU110は、まず、モータコントロールLSI120の動作モードを、トレースモードから通常動作モードに変えるため、CPUインタフェース部200を介して、各種レジスタ群210のうちのモードレジスタに対して所定のビットパターンを書き込む。
次に、上位CPU110は、所望の動作に必要なパラメータを設定するため、CPUインタフェース部200を介して、各種レジスタ群210に所定のデータを書き込む。具体的には、最初の円弧301についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Oを原点(0,0)とした場合の点Aの座標(−2000,0))、終了位置座標(点Oを原点(0,0)とした場合の点Bの座標(2000,0))、補間動作種類(時計回り円弧補間)等を設定する。また、直線加減速・定量駆動動作のために必要なパラメータとして、初速度、駆動速度、加減速度及び前述したようにして得られた総パルス数を設定する。
上位CPU110は、必要なパラメータ等の設定が終わると、モータコントロールLSI120に時計回りの円弧補間動作及び定量駆動動作を行わせるため、コマンドレジスタに対して、該当するコマンドを書き込む。当該コマンドの書き込みに応じてモータコントロールLSI120の動作が開始されると、上位CPU110は、続けて、第二の円弧302についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Oを原点とした場合の点Bの座標(−3000,0))及び終了位置座標(点Oを原点とした場合の点Cの座標(3000,0))、補間動作種類(反時計回り円弧補間)等を設定し、モータコントロールLSI120に反時計回りの円弧補間動作を行わせるため、コマンドレジスタに対して、該当するコマンドを書き込む。当該コマンドは、最初のコマンドについての処理が終了した後に、続けて処理される(連続補間処理)。
モータコントロールLSI120では、コマンドレジスタにコマンドが書き込まれると、主制御部220がコマンドを解釈して、各コマンドに応じた動作をするため、パルス発生部230や補間制御部240などに対して動作開始を指示する。
パルス発生部230は、動作開始が指示されると、設定されたパラメータに基づいて、所定の速度指令パルス列を発生させる。すなわち、パルス発生部230は、まず、初速度として指定された速度(パルス周波数)の速度指令パルス列231を発生させ、指定された加減速度で速度指令パルス列231のパルス周波数を増加させていき、指定された駆動速度に達した後は、そのまま指定された駆動速度のパルス列を発生し続ける。また、パルス発生部230は、加速時に要したパルス数をカウントし、指定された駆動速度に達した時点で、当該カウント値と設定された総パルス数とに基づいて減速開始位置を算出する。そして、指定された駆動速度のパルス列を発生し続けている間に、減速開始位置に達したことを検出すると、指定された加減速度で速度指令パルス列231のパルス周波数を減少させていく。このようにして、自動減速停止が行われる。
補間制御部240は、パルス発生部230から入力される速度指令パルス231と、上位CPU110によって各種レジスタ群210に設定されたパラメータに基づいて、X軸用及びY軸用の駆動パルス241a,241bを生成する。
パルス出力制御部260は、現在の動作モードが通常動作モードであるので、補間制御部240から入力されるX軸用及びY軸用駆動パルス241a,241bをそのままLSI外部に出力する。
終点検出部270は、補間終了位置(図3の点C)に達したことを検出すると、終点検出信号271を出力する。なお、前述したように、図3の点Bに達した時点では、終点検出信号271を出力することはない。
総パルス数カウント部250は、通常動作モード時においてもトレースモード時と同様に速度指令パルス231のカウントを行い、終点検出部270から終点検出信号271が出力されると、速度指令パルス231のカウントを終了する。但し、その時点でのカウント値は特に必要ないので、当該カウント値の総パルス数カウント値レジスタへの格納は行わない。
以上のようにして、移動対象物を、図3(a)に示すような経路に沿って、同図(b)に示すような加減速制御のもと、移動させることができる。
なお、上述した実施形態では、パルス出力制御部260を設けて、トレースモード時には、X軸用及びY軸用駆動パルスを出力しないようにしていたが、総パルス数のカウントを行う際に、機械系を実際に動作させても問題がないような応用例の場合は、パルス出力制御部260を省略することも可能である。
また、上述した実施形態では、モータコントロールLSI120の動作モードをトレースモードにするのに、モードレジスタに対して所定のビットパターンを書き込むことで行っていたが、通常動作のために必要なコマンドに対応させてトレースモード専用のコマンドを用意するようにしてもよい。この場合、モータコントロールLSI120は、トレースモード専用のコマンドを実行している間は、上述したトレースモード時の動作と同様の動作を行い、通常動作用のコマンドを実行している間は、上述した通常動作モード時の動作と同様の動作を行うことになる。
また、上述した実施形態では、トレースモードでの動作を行った後に、上位CPU110が、総パルス数カウント値レジスタから、移動対象物を所望の移動経路に沿って移動させるのに必要な総パルス数を読み出し、上位CPU110が、改めて、当該総パルス数をモータコントロールLSI120の所定のレジスタに設定するようにしていたが、上位CPU110から所定の補間動作が指示された場合に、パルス発生部230が総パルス数カウント値レジスタの値を自動的に読み出して、定量駆動動作や自動減速停止動作等を行うようにしてもよい。
また、この場合、総パルス数カウント部250がカウントしたカウント値を格納する総パルス数カウント値レジスタを複数設けるようにしてもよい。総パルス数カウント値レジスタを複数設けることにより、例えば、複数種類の経路を切り替えながら利用する場合などに、パルス発生部230は、各経路に対応する総パルス数カウント値レジスタを自動的に読み出して、定量駆動動作等を行うことが可能になる。
≪第二実施形態≫
図4は、本発明による別のモータ制御システム400の構成を示すブロック図である。モータ制御システム400も、モータ制御システム100と同様に、XY平面上における移動対象物(不図示)の位置制御を行うものである。
同図に示すように、モータ制御システム400は、上位CPU410と、パルスジェネレータ420と、補間制御用LSI425と、X軸用及びY軸用モータドライバ430a,430bと、X軸用及びY軸用モータ440a,440bとを備える。
上位CPU410は、CPUバス411を介してパルスジェネレータ420及び補間制御用LSI425と接続され、パルスジェネレータ420及び補間制御用LSI425の動作を制御する上位コントローラである。具体的には、上位CPU110は、パルスジェネレータ420に対して、各種パラメータを設定し、所定の速度指令パルス列421の生成を指示する。また、上位CPU110は、補間制御用LSI425に対して、各種パラメータを設定し、所望の動作(直線補間や円弧補間等)を指示する。
パルスジェネレータ420は、上位CPU410からの指示に基づいて、所定の速度指令パルス列421を生成する。
補間制御用LSI425は、本発明が適用されるモータ制御装置であって、上位CPU410からの指示に従って、速度指令パルス421からX軸用及びY軸用駆動パルス426a,426bを発生させる。補間制御用LSI425の内部構成については後述する。
モータドライバ430aは、補間制御用LSI425から出力される駆動パルス426aに基づいて、モータ440aを駆動する。同様に、モータドライバ430bは、補間制御用LSI425から出力される駆動パルス426bに基づいて、モータ440bを駆動する。
モータ440aは、モータドライバ430aによって駆動されるX軸用のパルスモータであり、モータドライバ430aに入力されるパルス数に応じた回転を行う。同様に、モータ440bは、モータドライバ430bによって駆動されるY軸用のパルスモータであり、モータドライバ430bに入力されるパルス数に応じた回転を行う。
次に、補間制御用LSI425の内部構成について説明する。
図5は、補間制御用LSI425の内部構成を示すブロック図である。
同図に示すように、補間制御用LSI425は、CPUインタフェース部500と、各種レジスタ群510と、主制御部520と、補間制御部540と、総パルス数カウント部550と、パルス出力制御部560と、終点検出部570とを備える。なお、各部は外部から入力される基準クロックに同期して動作する。
CPUインタフェース部500は、外部とのデータのやり取りを可能にするもので、具体的には、上位CPU410が各種レジスタ群510に対して読み書きをすることを可能にする。
各種レジスタ群510は、補間制御用LSI425の動作を制御するためのレジスタ群であって、上位CPU410がコマンドを書き込むためのコマンドレジスタや、動作モードを設定するためのモードレジスタ等、各種パラメータを設定するための書き込み用レジスタや、各種ステータスを読み出すための読み出し用レジスタなど、複数のレジスタから構成される。
主制御部520は、補間制御用LSI425の各構成要素の制御を行うもので、具体的には、上位CPU410によって書き込まれるコマンドを解釈し、指定されたコマンドに応じた動作を補間制御部540などに行わせる。
補間制御部540は、上位CPU410によって設定された各種パラメータ(補間開始位置座標、補間終了位置座標等)に従って、パルスジェネレータ420から入力される速度指令パルス421に対して所定の補間処理を行い、X軸用及びY軸用の駆動パルス541a,541bを生成する。なお、補間制御部540は、必要に応じて、合成速度一定制御も行う。
終点検出部570は、補間制御部540から出力されるX軸用及びY軸用駆動パルス541a,541bの数をカウントし、当該カウント値(現在位置を表す)と、上位CPU410によって設定された補間終了位置座標値とを比較して、補間終了位置に達したか否かを判定する。終点検出部570は、補間終了位置に達したことを検出すると、終点検出信号571を出力する。なお、連続補間処理の場合は、最初の補間コマンドについて設定された補間終了位置に達した場合であっても、終点検出信号571を出力することなく、次の補間コマンドについて設定されたパラメータに基づいて、次の補間コマンドについての補間終了位置の検出を開始し、連続補間処理が終了した時点で、終点検出信号571を出力する。
総パルス数カウント部550は、パルスジェネレータ420から入力される速度指令パルス421のカウント(計数)を行う。総パルス数カウント部550は、補間動作の開始が指示されると、速度指令パルス421のカウントを開始し、終点検出部570から終点検出信号571が入力されまで、速度指令パルス421のカウントを行う。総パルス数カウント部550は、終点検出信号571が入力されると、その時点でのカウント値を、各種レジスタ群510のうちの所定のレジスタ(以下、総パルス数カウント値レジスタという)に設定する。総パルス数カウント部550は、カウント値の総パルス数カウント値レジスタへの格納が済むと、カウント値をゼロにリセットする。なお、カウント値のリセットは、他の適当なタイミング、例えば、主制御部520によって動作開始が指示された時点で行うようにしてもよい。
パルス出力制御部560は、補間制御部540によって生成された駆動パルス541a,541bを、補間制御用LSI425外部に出力するか否かを制御する。すなわち、通常動作モードの時は、補間制御部540によって生成された駆動パルス541a,541bを、そのまま駆動パルス426a,426bとしてLSI外部に出力する。一方、トレースモードの時は、補間制御部540によって生成された駆動パルス541a,541bがLSI外部に出力されないようにする。
次に、モータ制御システム400の動作について説明する。ここでは、モータ制御システム100の場合と同様に、移動対象物を、図3(a)に示すような経路に沿って、同図(b)に示すような加減速制御のもと、移動させる場合について説明する。
まず、トレースモードにおいて、総パルス数をカウントする動作について説明する。
トレースモードにおいては、補間制御用LSI425は、モータコントロールLSI120と同様に、内部的には、通常動作モード時と同様の動作を行うが、X軸用及びY軸用駆動パルスは外部に出力されない。
上位CPU410は、まず、補間制御用LSI425の動作モードを、トレースモードにするため、CPUインタフェース部500を介して、各種レジスタ群510のうちのモードレジスタに対して所定のビットパターンを書き込む。
次に、上位CPU410は、所望の動作に必要なパラメータを設定するため、CPUインタフェース部500を介して、各種レジスタ群510に所定のデータを書き込む。具体的には、最初の円弧301についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Oを原点(0,0)とした場合の点Aの座標(−2000,0))及び終了位置座標(点Oを原点(0,0)とした場合の点Bの座標(2000,0))を設定する。また、上位CPU410は、パルスジェネレータ420に一定速・連続駆動動作を行わせるため、パルスジェネレータ420内の所定のレジスタにアクセスして、駆動速度を設定する。
上位CPU410は、必要なパラメータ等の設定が終わると、補間制御用LSI425に時計回りの円弧補間動作を行わせるため、各種レジスタ群510のうちのコマンドレジスタに対して、該当するコマンドを書き込む。続けて、上位CPU410は、パルスジェネレータ420に対して、一定速・連続駆動動作の開始を指示する。
パルスジェネレータ420は、動作開始が指示されると、設定されたパラメータに基づいて、所定の速度指令パルス列421を発生させる。すなわち、パルスジェネレータ420は、図3(c)に示すように、駆動速度として指定された速度(パルス周波数)の速度指令パルス421の発生を開始し、上位CPU410によって動作停止が指示されるまで、速度指令パルス421を発生し続ける。
第一の円弧301についての円弧補間コマンドの書き込み及び速度指令パルス421の入力に応じて補間制御用LSI425の動作が開始されると、上位CPU410は、続けて、補間制御用LSI425に対して、第二の円弧302についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Oを原点(0,0)とした場合の点Bの座標(−3000,0))及び終了位置座標(点Oを原点(0,0)とした場合の点Cの座標(3000,0))を設定する。上位CPU410は、必要なパラメータ等の設定が終わると、補間制御用LSI425に反時計回りの円弧補間動作を行わせるため、コマンドレジスタに対して、該当するコマンドを書き込む。当該コマンドは、最初のコマンドについての処理が終了した後に、続けて処理される(連続補間処理)。
補間制御用LSI425では、コマンドレジスタにコマンドが書き込まれると、主制御部520がコマンドを解釈して、指示されたコマンドに応じた動作をするため、補間制御部240等に対して動作開始を指示する。
補間制御部540は、パルスジェネレータ420から入力される速度指令パルス421と、上位CPU410によって各種レジスタ群510に設定されたパラメータに基づいて、X軸用及びY軸用の駆動パルス541a,541bを生成する。一方、総パルス数カウント部550は、パルスジェネレータ420から入力される速度指令パルス421のパルス数をカウントする。
パルス出力制御部560は、現在の動作モードがトレースモードであるので、補間制御部540から入力されるX軸用及びY軸用駆動パルス541a,541bをマスクして、LSI外部に出力されないようにする。
終点検出部570は、補間終了位置(図3の点C)に達したことを検出すると、終点検出信号571を出力する。なお、最初の円弧補間コマンドについての補間終了位置(図3の点B)に達した時点では、次の補間コマンドが指示されているので、終点検出信号571を出力することはない。
総パルス数カウント部550は、終点検出部570から終点検出信号571が入力されると、速度指令パルス421のカウントを終了し、その時点でのカウント値を、総パルス数カウント値レジスタにセットする。
上位CPU410は、補間動作が終了したことを割り込み等によって知ると、総パルス数カウント値レジスタに対してアクセスして、総パルス数カウント部550がカウントしたカウント値、すなわち、移動対象物を所望の移動経路(図3(a))に沿って移動させるのに必要な総パルス数を読み出す。
以上のようにして、上位CPU410は、移動対象物を所望の移動経路に沿って移動させるのに必要な総パルス数を得ることができる。
次に、実際に移動対象物を所望の移動経路に沿って移動させるために、以上のようにして得られた総パルス数を使って、所定パルス数の駆動(定量駆動)を行う動作について説明する。
上位CPU410は、まず、補間制御用LSI425の動作モードを、トレースモードから通常動作モードに変えるため、CPUインタフェース部500を介して、各種レジスタ群510のうちのモードレジスタに対して所定のビットパターンを書き込む。
次に、上位CPU410は、所望の動作に必要なパラメータを設定するため、CPUインタフェース部500を介して、各種レジスタ群510に所定のデータを書き込む。具体的には、最初の円弧301についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Aの座標)及び終了位置座標(点Bの座標)を設定する。また、上位CPU410は、パルスジェネレータ420に直線加減速・定量駆動動作を行わせるため、パルスジェネレータ420内の所定のレジスタにアクセスして、初速度、駆動速度、加減速度及び前述したようにして得られた総パルス数を設定する。
上位CPU410は、必要なパラメータ等の設定が終わると、補間制御用LSI425に時計回りの円弧補間動作を行わせるため、コマンドレジスタに対して、該当するコマンドを書き込む。次に、上位CPU410は、パルスジェネレータ420に対して、定量駆動動作の開始を指示する。
パルスジェネレータ420は、動作開始が指示されると、設定されたパラメータに基づいて、所定の速度指令パルス列を発生させる。すなわち、パルスジェネレータ420は、まず、初速度として指定された速度(パルス周波数)の速度指令パルス列421を発生させ、指定された加減速度で速度指令パルス列421のパルス周波数を増加させていき、指定された駆動速度に達した後は、そのまま指定された駆動速度のパルス列を発生し続ける。また、パルスジェネレータ420は、加速時に要したパルス数をカウントし、指定された駆動速度に達した時点で、当該カウント値と設定された総パルス数とに基づいて減速開始位置を算出する。そして、指定された駆動速度のパルス列を発生し続けている間に、減速開始位置に達したことを検出すると、指定された加減速度でパルス列のパルス周波数を減少させていく。このようにして、自動減速停止が行われる。
第一の円弧301についての円弧補間コマンドの書き込み及び速度指令パルス421の入力に応じて補間制御用LSI425の動作が開始されると、上位CPU410は、続けて、補間制御用LSI425に対して、第二の円弧302についての円弧補間動作のために必要なパラメータとして、開始位置座標(点Bの座標)及び終了位置座標(点Cの座標)を設定する。上位CPU410は、必要なパラメータ等の設定が終わると、補間制御用LSI425に反時計回りの円弧補間動作を行わせるため、コマンドレジスタに対して、該当するコマンドを書き込む。当該コマンドは、最初のコマンドについての処理が終了した後に、続けて処理される(連続補間処理)。
補間制御用LSI425では、コマンドレジスタにコマンドが書き込まれると、主制御部520がコマンドを解釈して、各コマンドに応じた動作をするため、補間制御部540に対して動作開始を指示する。
補間制御部540は、速度指令パルス421と、上位CPU410によって各種レジスタ群510に設定されたパラメータに基づいて、X軸用及びY軸用の駆動パルス541a,541bを生成する。
パルス出力制御部560は、現在の動作モードが通常動作モードであるので、補間制御部540から入力されるX軸用及びY軸用駆動パルス541a,541bをそのままLSI外部に出力する。
終点検出部570は、補間終了位置(図3の点C)に達したことを検出すると、終点検出信号571を出力する。なお、前述したように、最初の円弧補間コマンドについての補間終了位置(図3の点B)に達した時点では、終点検出信号571を出力することはない。
総パルス数カウント部550は、通常動作モード時においてもトレースモード時と同様に速度指令パルス421のカウントを行い、終点検出部570から終点検出信号571が出力されると、速度指令パルス531のカウントを終了する。但し、その時点でのカウント値は特に必要ないので、当該カウント値の総パルス数カウント値レジスタへの格納は行わない。
以上のようにして、移動対象物を、図3(a)に示すような経路に沿って、同図(b)に示すような加減速制御のもと、移動させることができる。
なお、上述した実施形態では、パルス出力制御部560を設けて、トレースモード時には、X軸用及びY軸用駆動パルスを出力しないようにしていたが、総パルス数のカウントを行う際に、機械系を実際の動作させても問題がないような応用例の場合は、パルス出力制御部560を省略することも可能である。
また、上述した実施形態では、補間制御用LSI425の動作モードをトレースモードにするのに、モードレジスタに対して所定のビットパターンを書き込むことで行っていたが、通常動作のために必要なコマンドに対応させてトレースモード専用のコマンドを用意するようにしてもよい。この場合、補間制御用LSI425は、トレースモード専用のコマンドを実行している間は、上述したトレースモード時の動作と同様の動作を行い、通常動作用のコマンドを実行している間は、上述した通常動作モード時の動作と同様の動作を行うことになる。
なお、上述した2つの実施形態では、本発明に係るモータ制御装置をLSIとして実装した場合について説明したが、当然のことながらこれに限られず、本発明に係るモータ制御装置には、上記したようなLSI等を備えたモータ制御用ボードやモータ制御用ユニット等も含まれる。
本発明によるモータ制御システム100の構成を示すブロック図である。 モータコントロールLSI120の内部構成を示すブロック図である。 モータ制御システムの動作を説明するための図である。 本発明による別のモータ制御システム400の構成を示すブロック図である。 補間制御用LSI425の内部構成を示すブロック図である。
符号の説明
100 モータ制御システム
110 上位CPU
111 CPUバス
120 補間機能付きモータコントロールLSI
121a X軸用駆動パルス
121b Y軸用駆動パルス
130a X軸用モータドライバ
130b Y軸用モータドライバ
140a X軸用モータ
140b Y軸用モータ
200 CPUインタフェース部
210 各種レジスタ群
220 主制御部
230 パルス発生部
231 速度指令パルス
240 補間制御部
241a X軸用駆動パルス
241b Y軸用駆動パルス
250 総パルス数カウント部
260 パルス出力制御部
270 終点検出部
271 終点検出信号
301,302 円弧
400 モータ制御システム
410 上位CPU
411 CPUバス
420 パルスジェネレータ
421 速度指令パルス
425 補間制御用LSI
426a X軸用駆動パルス
426b Y軸用駆動パルス
430a X軸用モータドライバ
430b Y軸用モータドライバ
440a X軸用モータ
440b Y軸用モータ
500 CPUインタフェース部
510 各種レジスタ群
520 主制御部
540 補間制御部
541a X軸用駆動パルス
541b Y軸用駆動パルス
550 総パルス数カウント部
560 パルス出力制御部
570 終点検出部
571 終点検出信号

Claims (10)

  1. 複数のパルス列入力型モータを駆動するため、各パルス列入力型モータ用の駆動パルスを出力するモータ制御装置であって、
    速度指令パルスに基づいて補間処理を行い、前記駆動パルスを生成する補間制御部と、
    補間開始位置から補間終了位置まで、前記速度指令パルスのパルス数をカウントする総パルス数カウント部と
    を備えたことを特徴とするモータ制御装置。
  2. 前記補間終了位置に達したことを検出する終点検出部を更に備え、
    前記総パルス数カウント部は、前記終点検出部が前記補間終了位置を検出するまで、前記速度指令パルスのパルス数をカウントする
    ことを特徴とする請求項1に記載のモータ制御装置。
  3. 前記終点検出部は、複数の補間動作が連続して指示された場合、一番最後の補間動作についての補間終了位置に達したことを検出し、
    前記総パルス数カウント部は、前記終点検出部が前記一番最後の補間動作についての補間終了位置を検出するまで、前記速度指令パルスのパルス数をカウントする
    ことを特徴とする請求項2に記載のモータ制御装置。
  4. 前記駆動パルスをモータ制御装置の外部へ出力するか否かを制御するパルス出力制御部を更に備えた
    ことを特徴とする請求項1〜3のいずれか一項に記載のモータ制御装置。
  5. 動作モードとして、総パルス数を求めるためのトレースモードと実動作のための通常動作モードとを有し、
    前記パルス出力制御部は、前記トレースモード時には、前記駆動パルスをモータ制御装置の外部へ出力せず、前記通常動作モード時には、前記駆動パルスをモータ制御装置の外部へ出力する
    ことを特徴とする請求項4に記載のモータ制御装置。
  6. 前記総パルス数カウント部のカウント値をモータ制御装置の外部から読み出すためのインタフェース部を更に備えた
    ことを特徴とする請求項1〜5のいずれか一項に記載のモータ制御装置。
  7. 前記補間終了位置に到達したときの前記総パルス数カウント部のカウント値を格納する記憶部を更に備えた
    ことを特徴とする請求項1〜6のいずれか一項に記載のモータ制御装置。
  8. 前記記憶部を複数備えた
    ことを特徴とする請求項7に記載のモータ制御装置。
  9. 前記速度指令パルスを生成するパルス発生部を更に備え、
    当該パルス発生部は、前記記憶部に格納されたカウント値に基づいて、減速開示位置を自動検出する
    ことを特徴とする請求項7又は請求項8に記載のモータ制御装置。
  10. 請求項1〜9のいずれか一項に記載のモータ制御装置と、
    複数のパルス列入力型モータと、
    前記モータ制御装置が出力する駆動パルスに基づいて、前記複数のパルス列入力型モータを駆動する複数のモータドライバと
    を備えたことを特徴とするモータ制御システム。
JP2003386421A 2003-11-17 2003-11-17 モータ制御装置 Expired - Lifetime JP3797998B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003386421A JP3797998B2 (ja) 2003-11-17 2003-11-17 モータ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003386421A JP3797998B2 (ja) 2003-11-17 2003-11-17 モータ制御装置

Publications (2)

Publication Number Publication Date
JP2005149182A true JP2005149182A (ja) 2005-06-09
JP3797998B2 JP3797998B2 (ja) 2006-07-19

Family

ID=34694108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003386421A Expired - Lifetime JP3797998B2 (ja) 2003-11-17 2003-11-17 モータ制御装置

Country Status (1)

Country Link
JP (1) JP3797998B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014032024A (ja) * 2012-08-01 2014-02-20 Fujitsu Ltd 故障診断支援装置、故障診断支援方法、および故障診断支援プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014032024A (ja) * 2012-08-01 2014-02-20 Fujitsu Ltd 故障診断支援装置、故障診断支援方法、および故障診断支援プログラム

Also Published As

Publication number Publication date
JP3797998B2 (ja) 2006-07-19

Similar Documents

Publication Publication Date Title
US9424646B2 (en) Control system and control method
JP5317532B2 (ja) 数値制御装置
JP6598454B2 (ja) 教示データの作成方法、作成装置、及び作成プログラム
JP2004314137A (ja) レーザ加工ロボット
US11656600B2 (en) Simulation apparatus
JP2010170435A (ja) モーション制御用指令システム、モーション制御用指令方法およびモーション制御システム
CN113168155B (zh) 数控装置及数控方法
JP2008046899A (ja) 数値制御装置
JP2009523279A (ja) 軸方向での相対位置及び/又は相対運動を制御するための方法、並びに、工作機械
KR20190112644A (ko) 로봇 제어 장치, 로봇 제어 방법, 프로그램
JP3797998B2 (ja) モータ制御装置
US20180203433A1 (en) Numerical controller
JP4277747B2 (ja) レーザ加工装置
JP5875740B1 (ja) 数値制御装置
JP2017204955A (ja) モータ制御用パルス出力ロジック回路及びモータ制御用コントローラユニット
JP2006178832A (ja) モータ駆動用パルス出力ic、および電子カム制御システム
WO2020136899A1 (ja) 数値制御装置および機械学習装置
JP4682907B2 (ja) モータ制御装置
JP4670911B2 (ja) レーザ加工装置
JP2012137990A (ja) 数値制御装置、移動制御方法、移動制御プログラム及び記憶媒体
JP4560191B2 (ja) 数値制御装置
JP7175340B2 (ja) 工作機械、情報処理装置および情報処理プログラム
JP4318121B2 (ja) モータ駆動用パルス出力ic
JP2000231412A (ja) インポジションチェック方法及びその装置
JP2007164260A (ja) モータ制御装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050712

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060418

R150 Certificate of patent or registration of utility model

Ref document number: 3797998

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100428

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120428

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120428

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120428

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130428

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term