JPWO2002091096A1 - 制御装置内蔵型シリンダサーボモータ - Google Patents
制御装置内蔵型シリンダサーボモータ Download PDFInfo
- Publication number
- JPWO2002091096A1 JPWO2002091096A1 JP2002565152A JP2002565152A JPWO2002091096A1 JP WO2002091096 A1 JPWO2002091096 A1 JP WO2002091096A1 JP 2002565152 A JP2002565152 A JP 2002565152A JP 2002565152 A JP2002565152 A JP 2002565152A JP WO2002091096 A1 JPWO2002091096 A1 JP WO2002091096A1
- Authority
- JP
- Japan
- Prior art keywords
- servo motor
- data
- correction
- rotation
- operation mode
- 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
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/404—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/41—Servomotor, servo controller till figures
- G05B2219/41036—Position error in memory, lookup table for correction actual position
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position Or Direction (AREA)
Abstract
補正データ作成時の運転指令は制御装置内部で生成し、外部測長器の測定データを入力部より入力して、シリンダサーボモータの制御装置内で推定位置と比較し、その誤差を補正メモリに記録する。また、通常運転時には外部測長器を取り外して該入力部へ移動指令を入力し、補正メモリに記録された誤差で移動指令を補正し、予想される誤差を打ち消し運転する。
Description
技術分野
この発明は、サーボモータ部、このサーボモータ部を制御する制御部、サーボモータ部の回転角度を検出する検出器、サーボモータ部の回転動作を直線動作に変換する回転直線変換機構等を一体化した制御装置内蔵型シリンダサーボモータ(以下シリンダサーボモータと称する)に関するものである。
背景技術
シリンダサーボモータの従来例を第24図に示す。
なお、第24図に示すものは発明者等が提案したもので、PCT出願(出願番号:PCT/JP00/01117)されている。
図において、1はサーボモータ部で、ロータ2、ステータ3から構成されている。4はロータ2と負荷側で結合されたボールナット、5はボールナット4と螺合され、軸方向に移動する出力軸となるボールネジで、ボールナット4とともに回転直線変換機構を構成している。7はロータ2の回転量を検出する回転検出器で、センサ部7a及び信号処理部7bを有している。なお、信号処理部7bは回転検出器制御部8、補正メモリ9及び加減算回路10で構成されている。6はサーボモータ部1の制御部、11はボールネジ5の先端に取付けられた反射ミラー11aの移動距離を測定する測長器、19は外部指令装置、12は第1の入力部13、第2の入力部14、差分回路15、制御部16、メモリ17及びメモリライタ18を有する試験装置である制御装置、100は外部指令装置16と制御部6との間でデータのやり取りを行うために必要な第1の入出力部、101は制御装置12と補正メモリ9との間でデータのやり取りを行うために必要な第2の入出力部である。
そしてこのシリンダサーボモータは、外部指令装置19より第1の入出力部100を介して制御部6に指令が出力されると、制御部6を通じてサーボモータ部1のロータ2が回転し、ボールナット4とボールネジ5により、ロータ2の回転運動が直線運動に変換されることによりボールネジ5が往復動運転する。
ところで、本シリンダサーボモータは、使用前(工場出荷時)に、位置決め誤差(シリンダサーボモータの部品精度、回転検出器の精度等に起因する)を補正するための補正データを取得し、この取得した位置決め誤差データを補正メモリ9に記憶させる作業を行う。
即ち、ボールネジ5の先端に反射ミラー11aを取付けるとともに、この反射ミラー11aと対向する位置にレーザ測長器11を設置し、且つ試験設備である制御装置12を用意する。
次に外部指令装置19より指令を与えることにより、シリンダサーボモータを運転してボールネジ5を往復運動させ、このボールネジ5の移動距離を、反射ミラー11aを通じて測長器11で測定する。そしてこの測定データを、第2の入力部14を介して制御装置12の制御部16へ入力する。一方、センサ部7aで検出された角度データを、制御部6へ出力すると同時に第2の入出力部101、第1の入力部13を介して制御部16へ入力し、制御部16で回転検出器7の検出データにボールネジリードを乗算してボールネジ先端の推定位置を得る。そして、制御部16で演算したボールネジ先端の推定位置と測長器11の測定データとを差分回路15に送り、この差分回路15でボールネジ先端の推定位置と測長器11との間の位置決め誤差を演算させる。差分回路15で演算した誤差を、制御部16を介してメモリ17に格納し、上記誤差の計測が終了した後、メモリ17に記録された誤差を、メモリライタ18により第2の入出力部101を介して補正メモリ9に書込む。本シリンダサーボモータは、以上説明したように、使用前(工場出荷時)に、位置決め誤差を補正する補正データを補正メモリ9に記憶させる作業を行う。
また、通常運転時には、反射ミラー11a、測長器11及び試験装置である制御装置12を取り外し、ボールネジ5の先端が正確な位置に位置決めされるように、回転検出器7の検出データに補正メモリ9に記録された補正データを補正した値を制御部6へ出力する。制御部6は入力した値を考慮してサーボモータ部1をサーボ制御する。
従来のシリンダサーボモータは、測長器11を使用して出力軸であるボールネジ5の位置決め精度を予め計測し、回転検出器7のデータを補正して正確な位置決めを実現可能とするものであるが、補正データ演算のため、測長器11以外に補正データ演算や補正メモリ9への書込みを行うための制御装置12を必要とする。このため、保守や修理のためにシリンダサーボモータを分解すると、その都度、試験設備である制御装置12を用意して補正データを再作成する必要があった。
また、従来のシリンダサーボモータは、外部指令装置16とシリンダサーボモータとの間でデータのやり取りを行うために必要な入出力部100以外に、制御装置12とシリンダサーボモータとの間でデータのやり取りを行うために必要な入出力部101を必要とした。
また、従来のシリンダサーボモータは温度変動やバックラッシュ、応力歪等による位置決め精度の悪化について考慮されていなかったので、このシリンダサーボモータを運転すると、温度変動やバックラッシュ、応力歪等による誤差が発生し、位置決め精度が悪化する恐れがあった。
因みに、温度変動やバックラッシュ、応力歪等による誤差を補正するためにサーミスタや、速度センサ、力センサ等を機械装置に付加することが考えられるが、センサの他に配線等も必要となるため、コストアップや工数の増大、整備性の低下を招く恐れがある。また、上記センサの検出データを外部指令装置19で処理すると、外部指令装置19の計算負荷が増大する等の問題が発生する恐れがある。
発明の開示
この発明は上記のような問題点を解決するためのもので、位置決め誤差補正データ等の作成を容易に実施できるシリンダサーボモータを得ることを目的とする。
またこの発明は、外部指令装置や測長器等の外部装置との間でデータのやり取りに使用する入出力部の数を減少させることができるシリンダサーボモータを得ることを目的とする。
またこの発明は、温度変動やバックラッシュ、応力歪等による位置決め精度の悪化を防止できるシリンダサーボモータを得ることを目的とする。
またこの発明は、予め記憶された位置決め誤差補正データを容易に校正できるシリンダサーボモータを得ることを目的とする。
この発明は上記目的を達成させるためになされたもので、回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、前記サーボモータ部の電流を検出する電流検出器と、前記サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、前記サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、前記制御部に、前記サーボモータ部に対する位置決め誤差測定用の指令を記憶した指令メモリと、この指令メモリに記憶された指令に基づいて動作する前記回転直線変換機構における出力軸の位置を測長する測長器の測定結果及び外部指令装置の指令を入力する入力手段と、制御装置内蔵型シリンダサーボモータを通常運転モード及びテスト運転モードの何れかのモードに切替える運転モード切替手段と、この運転モード切替手段にてテスト運転モードに切替えられたとき、前記回転検出器が検出した検出角度に基づいて前記回転直線変換機構における出力軸の推定位置を演算するとともに、この演算された出力軸の推定位置と前記入力手段を通じて入力された前記測長器の測定結果とに基づいて位置決め誤差補正データを演算する位置決め誤差補正データ演算手段と、この位置決め誤差補正データ演算手段にて演算された位置決め誤差補正データを記憶する補正メモリと、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶された位置決め誤差補正データに基づいて前記サーボモータ部を位置決め誤差補正して制御する手段とを設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶されたデータ、前記回転検出器の検出データ及び電流検出器の検出データに基づいてバックラッシュ補正データを演算する手段と、この演算手段にて演算されたバックラッシュ補正データに基づいて前記サーボモータ部をバックラッシュ誤差補正して制御する手段とを設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にてテスト運転モードに切替えられたとき、前記バックラッシュ補正データ演算に使用するデータを作成し、この作成したデータを前記補正メモリに記憶させる手段を設けたものである。
またこの発明は、前記回転直線変換機構の温度を検出する温度検出器を備え、且つ前記制御部に、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶されたデータ及び前記温度検出器の検出データに基づいて温度誤差補正データを演算する演算手段と、この演算手段にて演算された温度誤差補正データに基づいて前記サーボモータ部を温度誤差補正して制御する手段とを設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にてテスト運転モードに切替えられたとき、温度誤差補正データ演算に使用するデータを作成し、この作成したデータを前記補正メモリに記憶させる手段を設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記電流検出器の検出データに基づいて前記回転直線変換機構の出力軸の推力を演算するとともに、この演算した推力に基づいて前記回転直線変換機構の出力軸の応力歪データを演算する応力歪演算手段と、この応力歪演算手段にて演算された応力歪データに基づいて前記サーボモータ部を応力歪補正して制御する手段とを設けたものである。
またこの発明は、回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、前記サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、前記サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、前記制御部に、前記回転検出器が検出する検出角度に対応して複数の位置決め誤差補正データを予め記憶したメモリと、制御装置内蔵型シリンダサーボモータを機械装置に組み込んだ状態で前記回転直線変換機構の出力軸をストロークエンド位置まで移動させた時における前記出力軸のストロークエンド推定位置を演算するとともに、この演算された出力軸のストロークエンド推定位置と機械装置固有のストロークエンド位置とを比較し、両者の間に差がある場合、その差に基づいて、位置決め誤差補正時に、前記メモリに記憶された複数の位置決め誤差補正データ中から前記差に基づく位置決め誤差を修正できる特定の位置決め誤差補正データを呼び出すデータ、または前記メモリに予め記憶された複数の位置決め誤差補正データそのものを修正するデータを演算する演算手段とを設けたものである。
発明を実施するための最良の形態
実施の形態1.
以下この発明の実施の形態1を、第1図〜第14図を用いて説明する。
第1図は実施の形態1におけるシリンダサーボモータの構成図である。なお、この図は通常運転モード時の構成を示す。
図において、1はサーボモータ部で、ロータ2、ステータ3から構成されている。4はロータ2と負荷側で結合されたボールナット、5はボールナット4と螺合され、軸方向に移動する出力軸となるボールネジで、ボールナット4とともに回転直線変換機構を構成している。また20は制御部、21はサーボモータ部1をサーボ制御する、組み込み型マイコン等で構成される制御回路、22は後述するテスト運転モード時に使用される指令メモリ、23はシリンダサーボモータの位置決め精度向上のための各種補正データを記録するための補正メモリであり、後述するように複数のパラメータやピッチエラー、バックラッシュ、温度等の補正データを記録する。42は後述するテスト運転モード時に使用される一時メモリ、25はサーボモータ部1を駆動するインバータ回路、26は外部指令装置19や測長器11との通信に用いる入出力部、27はサーボモータ部1の電流検出し、制御回路21へ出力する電流検出器、28はサーボモータ部1の回転を検出し、制御回路21へ出力する回転検出器、31はボールネジ5及びボールナット4の温度計測を行い、制御回路21へ出力する温度検出器である。
ところで、このシリンダサーボモータは、大きく分類して、通常運転モードとテスト運転モードの2つの運転モードを有している。第3図は各運転モード選択時の動作内容を示すブロック図である。この2つの運転モードは、補正データを計算するためのテスト運転モード62と通常運転モード61とに分かれ、更にテスト運転モード62は、ピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64及び温度補正データ作成モード65の3つの運転モードに分かれる。また、補正メモリ23に記録された運転モードパラメータに従って制御モード切替え回路36がスイッチ37〜40を切替え、通常運転モード61、またはピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64、温度補正データ作成モード65の何れかを選択実行する。運転モードパラメータは通常運転時に外部指令装置19により書き換えられ、再電源投入時に運転モードパラメータの内容に従ってテスト運転モードを起動する。なお、第3図中、入出力部26及び補正メモリ23以外の回路は、制御回路21に実装されるソフトウェアプログラムで構成される。
また、上記運転モードパラメータは4bitで構成され、各bitには連続テスト運転モード(ピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64及び温度補正データ作成モード65の3つの運転モードを順に実行する)と3つの単体でのテスト運転モードが割り当てられる。テスト運転モードを実行する場合は、事前に通常運転モードで外部指令装置19の指令に従って制御回路21が該当パラメータを0から1に変更し、電源を切る。再電源投入時に制御モード切替え回路36がテスト運転モードを示す4つのパラメータを参照し、1となっているbitに該当するテスト運転モードを選択し、同時に該パラメータを0にクリアする。また、電源オン時に全てのパラメータが0のとき通常運転が選択される。
以上の動作をフローチャートにまとめると第4図となる。ここでは、bit0が1の時に連続テスト運転モード、bit1が1の時にピッチエラー補正データ作成モード63、bit2が1の時にバックラッシュ補正データ作成モード64、bit3が1の時に温度補正データ作成モード65を実行する。なお、バックラッシュ補正データ作成モード64は事前にピッチエラー補正データ作成モード63が実行される必要があるため、bit2が1のときは、ピッチエラー補正データ作成モード63及びバックラッシュ補正データ作成モード64が順に実行される。
電源オン後、制御モード切替え回路36は、運転モードパラメータを参照してbit0に1が入力されているか否かを判断し(S1)、bit0に1が入力されている場合、運転モードパラメータの全bitを0クリアし(S2)、スイッチ38〜40を順次切り換えて、ピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64、温度補正データ作成モード65を実行する。
即ち、ステップS3でスイッチ38をオンしてピッチエラー補正データ作成モード63を実行し(S4)、次にステップS5でスイッチ39をオンしてバックラッシュ補正データ作成モード64を実行し(S6)、最後にステップS7でスイッチ40をオンして温度補正データ作成モード65を実行する(S8)。
なおこのとき、ステップS1で全てのパラメータが0にクリアされるので、次回電源投入時には通常運転モード61が実行される。
また、電源投入時にbit0に0が入力されている場合、bit1に1が入力されているか否かを判断し(S9)、bit1に1が入力されている場合、制御モード切替え回路36はbit1を0にクリアし(S10)、スイッチ38をオンして(S11)ピッチエラー補正データ作成モードを実行する(S12)。このとき、bit2またはbit3に1が入力されている場合、次回電源投入時にはバックラッシュ補正データ作成モード64、温度補正データ作成モード65が実行される。またbit2及びbit3が双方とも0であれば次回電源投入時には通常運転モード61が実行される。
また、電源投入時にbit0及びbit1が0が入力されている場合、bit2に1が入力されているか否かを判断し(S13)、bit2に1が入力されている場合、制御モード切替え回路36はbit2を0クリアし(S14)、スイッチ38をオンして(S15)ピッチエラー補正データ作成モードを実行(S16)後、スイッチ39をオンして(S17)バックラッシュ補正データ作成モード64を実行する(S18)。なおこのとき、bit3に1が入力されている場合、次回電源投入時には温度補正データ作成モード65が選択され、bit3が0であれば次回電源投入時には通常運転モード61が実行される。
また、bit0、bit1、bit2が全て0である場合、bit3に1が入力されているか否かを判断し(S19)、bit3に1が入力されている場合、制御モード切替え回路36はbit2を0にクリアし(S20)、スイッチ40をオンして(S21)、温度補正データ作成モード65を実行する(S22)。
なおこのとき、全てのパラメータが0であるので、次回電源投入時には通常運転モード61が実行される。
また、bit0、bit1、bit2、bit3が全て0の場合、制御モード切替え回路36はスイッチ37をオンし(S23)、通常運転モード61を実行する(S24)。
次に、各テスト運転モードの詳細について説明する。その構成図を第2図に示す。
即ち、ボールネジ5の先端に反射ミラー11aを固定し、この反射ミラー11aに対向するように測長器11を設置するとともに、測長器11の出力部を入出力部26に接続する。そして測長器11が反射ミラー11aの位置からボールネジ5の先端位置を測定し、この測定結果を制御部20の入出力部26から制御回路21へ送る。また、指令メモリ22に記録された運転パターンが指令として制御回路21へ送られ、回転検出器28が検出したサーボモータ部1の回転量も制御回路21へ送られ、フィードバック制御によりインバータ回路25を駆動してサーボモータ部1を運転する。
上記において、シリンダサーボモータは上位コントローラから移動指令を入力する必要が無いため、入出力部26のためのコネクタは測長器11の測定データを入力するために使用され、一つのコネクタを装備すればよい。
ピッチエラー補正データ作成モード63では、シリンダサーボモータの部品(回転直線変換機構等)の精度や検出器の精度に起因する誤差(ピッチエラー誤差)のテーブル(以下 位置決め誤差テーブルと称する)を作成する。第2図では制御回路21が、測長器11が検出した反射ミラー11aの位置、即ちボールネジ先端位置と、サーボモータ部1の回転量とボールネジ5のリード長との積で推定されるボールネジ先端位置との差分を計算し、補正メモリ23へ位置決め誤差テーブルとして記録する。
このときの動作を第5図の制御ブロック図を用いて説明する。図中、灰色で塗りつぶされた回路は第1図、第2図の同一符号のものと同一品を示し、差分回路41、ボールネジリード乗算回路53a及び平均処理部45は、第1図、第2図の制御回路21に実装されるソフトウェアプログラムで構成される。
即ち、指令メモリ22に記録されている運転パターンに従って移動指令を生成し、差分回路41及びコントローラ43によって構成されるフィードバック制御によりインバータ回路25を駆動し、サーボモータ部1を運転する。なお、指令メモリ22に記録されている運転パターンは往復運動とし、誤差データを前進1回、後退1回の計2回計測して平均を補正メモリ23に記録する。
回転検出器28が検出した検出角度θ(モータ回転量)にボールネジリードLをボールネジリード乗算回路53aで乗算して推定したボールネジ先端の推定位置と、測長器11が測定したボールネジ先端位置の差分を差分回路24で演算し、演算結果を回転検出器28が検出した前記θとともに仮位置決め誤差として一時メモリ42に記録する。
サーボモータ部1を反転運転するときにも同様に、回転検出器28が検出した前記θにボールネジリードLをボールネジリード乗算回路53aで乗算して推定したボールネジ先端の推定位置と、測長器11が測定したボールネジ先端位置の差分を差分回路24で演算し、更に、平均処理部45では、正転運転時に一時メモリ42に記録した仮位置決め誤差を呼び出し、反転時の位置決め誤差と平均を取って前記θとともに、補正メモリ23に位置決め誤差テーブルとして記録する。
同時に後述のバックラッシュ補正のため、正転時の位置決め誤差と反転時の位置決め誤差の差をバックラッシュ仮データとして一時メモリ42に記録する。
以上の動作をまとめると第6図のフローチャートとなる。
先ず、指令メモリ22から制御回路21に正転指令を与え、インバータ回路25を通じてサーボモータ部1のロータ2を正転させる(S25)。サーボモータ部1が回転すると、サーボモータ部1が回転するにつれて回転検出器28が検出角度θ(モータ回転量)を検出し(S26)、この検出したθにボールネジリード5のリード長Lをボールネジリード乗算回路53aで乗じてボールネジ先端の推定位置を演算する(S27)。一方サーボモータ部1を正転させることによりボールネジ5が軸方向に移動するが、この移動に伴うボールネジ先端位置を測長器11で測定する(S28)。そして差分回路24にて、ステップS27で推定した推定位置と測長器11で測定したボールネジ先端位置の誤差を取り(S29)、この誤差データを一時メモリ42の前記θに対応するアドレス位置に記録する(S30)。なお、具体的な一時メモリ42への記録方法は、該誤差データを、前記θを使って読み出せるように、次式で表現されるアドレスに誤差データを格納する。なお、補正メモリ23への記録も同様である。
上式中、floorは小数点以下を切り捨てる関数、Nは分割数、Offsetは先頭アドレスを指定するためのオフセットを示す。
第8図にその具体例を示す。図中左が前記θと前記誤差データのプロット図で、横軸下の符号が上式第1項に対応し、図右のアドレスマップに示されるアドレスへ格納される。本例ではオフセット(A)が位置決め誤差データの先頭アドレスを示す。θに対応したデータを読み出す必要があるものは位置決め誤差データ以外にも存在するが、同様に先頭アドレス(オフセット)を変えて記録する。例えば後述するバックラッシ
差データと同様にオフセット(B)及びオフセット(C)を使って第8図に示すようなメモリマップとする。
一時メモリ42への記録は正転計測が完了するまで継続し、正転計測終了と判断されると(S31)、指令メモリ22から制御回路21に逆転指令を与え、S25〜S28と同様の動作を行わせる(S32〜S35)。そして差分回路24にて、回転検出器28が検出した検出角度θ(モータ回転量)にボールネジリード5のリード長Lをボールネジリード乗算回路53aで乗じたボールネジ先端推定位置と、測長器11で計測したボールネジ先端位置の誤差を取り(S36)、ステップS30で一時メモリ42に記録した誤差データと平均を取ってこれを補正メモリ23の前記θに対応するアドレス位置へ記録する(S37)。これは、正転逆転双方の誤差データからバックラッシュ相当の誤差を除去するためのものである。また、ステップS30で一時メモリ42に記録した誤差データとS32〜S36で計測した誤差データの差をバックラッシュ仮データとして、一時メモリ42の前記θに対応するアドレス位置へ記録する(S38)。これは、無負荷時のバックラッシュの大きさに相当し、後述するバックラッシュ補正データ作成モード64で使用するため一時メモリ42に記録するものである。
最後に逆転計測が完了すれば(S39)、ピッチエラー補正データ作成モード63が終了する。
なお、ステップS30で一時メモリ42に記録したデータは以後使用しないので、該当部のメモリ領域は解放してよい。
次にバックラッシュ補正データ作成モード64について第2図、第7図及び第9図を用いて説明する。本モードでは、シリンダサーボモータのバックラッシュに起因する誤差を得、これを補正メモリ23に上記θとともに記録する。
バックラッシュ量はボールネジ5の負荷状態により定まると考えられ、ボールネジ5の負荷はサーボモータ部1のトルクに比例し、かつサーボモータ部1のトルクはサーボモータ部1の電流に比例するため、次式の様に推定できる。
ただし、θはサーボモータ部1の回転検出器28が検出した検出角度を表し、iは電流、gはサーボモータ部1の回転量および電流からバックラッシュ量を計算するための関数を示す。
ここで、関数g(θ,i)を1次でテイラー展開すると、
と近似する。
バックラッシュ補正データ作成モード64ではバックラッシュ補正
ド63において一時メモリ42にバックラッシュ仮データを記録しているが、その半分が無負荷時のバックラッシュ係数g(θ,0)である。即ち
と計算できる。
更に、第2図の推力受け29に負荷をかけ、サーボモータ部1の回転量θにおいて、測長器11がボールネジ先端位置L1を検出し、電流検出器27が電流iを検出し、ボールネジリードをL、サーボモータ部1の回転量θにおけるピッチエラー誤差をεとすると、負荷時のバックラ
より求めることができる。
なお、上式中{}内がピッチエラー誤差補正と無負荷時のバックラッシュ補正を施した推定位置を示している。
以上のバックラッシュ補正係数演算部60は第2図の制御回路21にソフトウェアプログラムとして実装される。
このときの動作を、第7図を用いて説明する。即ち、第2図の推力受け29へ負荷をかけつつ指令メモリ22に記録されている運転パターンに従って移動指令を生成し、差分回路41及びコントローラ43によって構成されるフィードバック制御によりインバータ回路25を駆動し、サーボモータ部1を運転する。測長器11が測定したボールネジ5の先端位置L1と、回転検出器28が検出した検出角度θ(回転量)にボールネジ5のリードLをボールネジリード乗算回路53aで乗じて推定されるボールネジ先端位置と、前記ピッチエラー補正データ作成モード63で補正メモリ23に記録した回転量θにおけるピッチエラー誤差εと、一時メモリ42に記録した前記バックラッシュ仮データと、電流検出器27が検出した電流iを補正データ演算部60に入力する。補正データ演算部60は第2図の制御回路21にソフトウェアプログラムとして実装され、上述した式(2)、(3)を用いてバックラッシュ係数
し、バックラッシュ補正係数テーブルを作成する。
以上の動作をまとめると第9図のフローチャートとなる。まず、推力受け29(第2図)に推力負荷をかけ(S40)、指令メモリ22から制御回路21に指令を与え、サーボモータ部1のロータ2を正転させる(S41)。そして回転検出器28で検出角度θ(回転量)を検出し(S42)、このθとボールネジリード長Lをボールネジリード乗算回路53a(第7図)で乗算し(S43)、同時に前記θに対応したピッチエラー誤差εを補正メモリ23から読み出し(S44)、また前記θに対応したバックラッシュ仮データを一時メモリ42から読み出す(S45)。また、測長器11(第2図)でボールネジ5の先端位置を計測し(S46)、電流検出器27でサーボモータ部1の電流を検出する(S47)。そしてS42〜S47で得られたデータから補正データ演算部60(第7図)を使って補正係
を補正メモリ23へ記録する(S49)。補正データ演算部60は制御回路21に実装されたバックラッシュ補正データ作成用プログラムで、式
る。補正メモリ23のアドレス指定は、前記ピッチエラー補正データ作成モード63と同様である。
なお、バックラッシュは負荷が正のときと負のときで一致しない可能性もあり、その場合はそれぞれの状態を個別に計測し補正する必要がある。このため、S51〜S61のステップを実施することにより逆方向の負荷がかかる際の補正係数を計算する。
即ち、正転完了した後(S50)、推力受け29にステップS40と逆方向に負荷をかけ(S51)、指令メモリ22から制御回路21に逆転指令を与えてサーボモータ部1のロータ2を逆転させる(S52)。そして回転検出器28で検出角度θ(回転量)を検出し(S53)、このθとボールネジリード長Lをボールネジリード乗算回路53a(第7図)で乗算し(S54)、同時に前記θに対応したピッチエラー誤差εを補正メモリ23から読み出し(S55)、また前記θに対応したバックラッシュ仮データを一時メモリ42から読み出す(S56)。また、測長器11(第2図)でボールネジ5の先端位置を計測し(S57)、電流検出器27でサーボモータ部1の電流を検出する(S58)。そしてS53〜S58で得られたデー
へ記録する(S60)。
最後に逆転計測が終了すれば(S61)、バックラッシュ補正データ作成モード64が終了する。
なお、第6図のフローチャートS38で一時メモリ42に記録したバックラッシュ仮データは、S60以後使用しないので、該当部のメモリ領域は解放してよい。
次に温度補正データ作成モード65について第2図、第10図及び第11図を用いて説明する。この温度補正データ作成モード65では、温度変動に伴うボールネジ・ナット等の熱膨張・収縮を補正するためのデータを得、これを補正メモリ23に記録する。ボールネジ5等の熱膨張は、ボールネジ形状および材質から理論計算することも可能であるが、この実施の形態では次の手法によりボールネジ5の熱膨張を計測する。
まず、シリンダサーボモータの出力軸であるボールネジ5を最大限押し出し、測長器11のデータを入力すると同時に上記位置決め誤差運転作成時の温度を第2図の温度検出器31を使って検出して、温度T1での位置Lmax(測長器11のデータ)を記録する。その後、シリンダサーボモータの動作保証最高温度T2まで加熱し、温度T2を検出した時点のボールネジ先端位置Lmax’を測長器11で計測する。そして補正係数εTを、
と計算し、補正メモリ23へ記録する。
このときの動作を、第10図を用いて説明する。図中、サンプリング回路47、補正データ演算部48、サンプリング指令部49及び微分回路72は、制御回路21に実装されるソフトウェアプログラムで構成される。微分回路72は回転検出器28の出力θを時間微分して回転速度を計算し、サンプリング指令部49へ出力する。サンプリング指令部49は、特定の温度またはモータ回転数でサンプリング回路47へ指令を出力する。本例では、回転速度0と温度T2のいずれかを検出した時点でサンプリング回路47を駆動する指令を出力する。サンプリング回路47は、サンプリング指令部49の指令を検出すると入力されたデータをサンプリングし、補正メモリ23または一時メモリ42へ出力する。補正データ演算部48は、前記の式(6)に従って補正係数εTを計算する。
まず、あらかじめ指令メモリ22に記録されている運転パターンに従って移動指令を生成し、シリンダサーボモータに内蔵されたサーボモータ部1を、ボールネジ5を最大限伸長させるように運転する(第10図には図示せず)。上記運転が完了すると、微分回路72が出力するサーボモータ部1(第2図)の回転速度が0となるため、これをサンプリング指令部49が検出してサンプリング回路47を動作させ、入出力部26から入力したボールネジ先端位置の測定データをサンプリングし、Lmaxとして一時メモリ42へ出力し、同時に温度検出器(サーミスタ)31が検出した温度T1を補正メモリ23に記録する。次に恒温槽(図示せず)等によりシリンダサーボモータを加熱し、温度検出器31が温度T2を検出したときサンプリング指令49がサンプリング回路47を動作させ、入出力部26(第2図)を通して入力された測長器11(第2図)が測定したボールネジ先端位置Lmax’を一時メモリ42へ出力する。補正データ演算部48は制御回路21に実装された温度補正データ作成用プログラムで、一時メモリ42に記録されたLmax、Lmax’、補正メモリ23に記録された温度T1及び温度T2から、前述の式(6)を用いて補正係数εTを計算し、補正メモリ23へ記録する。
以上の動作をまとめると第11図のフローチャートとなる。まず、指令メモリ22から制御回路21に指令を与え、サーボモータ部1を回転させてボールネジ5を最大限伸長させる(S62)。サーボモータ部1が停止したときが、ボールネジ5が最大限伸長したときであるので、回転検出器28が零速度を検出すると(S63)、測長器11により計測したボールネジ先端位置をLmaxとして一時メモリ42へ記録する(S64)(S65)。同時に温度検出器31で検出した温度T1を補正メモリ23へ記録する(S66)(S67)。次に、シリンダサーボモータを加熱し(S68)、温度検出器31が温度T2を検出した時点(S69)で測長器11が計測したボールネジ先端位置をLmax’として一時メモリ42に記録する(S70)(S71)。次に、補正データ演算部48が一時メモリ42及び補正メモリ23に記録された上記計測データ(Lmax、Lmax’、T1)及び温度T2を使って式(6)により補正係数εTを計算し(S72)、この計算結果である補正係数εTを補正メモリ23に記録する(S73)。最後に指令メモリ22から制御回路21に指令を与え、ボールネジ5をスタート位置まで戻るようにサーボモータ部1を回転させ(S74)、温度補正データ作成モード65を終了させる。なお、ステップS65及びS71で一時メモリ42に記録されたデータ(Lmax、Lmax’)はステップS72以後は使用しないため、一時メモリ42の該当メモリ領域は解放してよい。
次に通常運転モード61について第1図、第12図〜第14図を用いて説明する
通常運転モード61でのシリンダサーボモータの構成図は第1図となる。図において、外部指令装置19より出力される指令位置を入出力部26から制御回路21へ入力する。制御回路21は補正メモリ23に記録されたデータを使って誤差を補正し、インバータ回路25を駆動してサーボモータ部1をサーボ制御運転する。サーボモータ部1の回転は回転自在で軸方向に固定されたボールナット4を回転させ、ボールナット4の回転により軸方向に移動自在で回転を拘束されたボールネジ5を前後に動作させる。ボールネジ5の移動距離は、ボールナット4の回転量を、ロータ2を介して一体に回転する回転検出器28が検出し、制御回路21へ出力する。
次に通常運転モードの動作を第12図の制御ブロック図を用いて説明する。外部指令装置19から入力される指令位置は、位置決め誤差推定部30で推定される誤差を差分回路50で差分修正し、誤差を考慮した指令位置を作成する。本修正指令位置をボールネジリード除算回路53bでサーボモータ回転指令へ変換し、差分回路41及びコントローラ43で構成されるフィードバック制御によりインバータ回路25を制御し、サーボモータ部1を駆動する。一方、外部指令装置19へ出力する現在位置データは、ボールネジリード乗算回路53aにて、回転検出器28が検出した検出角度θにボールネジリード長を乗じ、位置決め誤差推定部30で推定される誤差を加算回路51で加算修正して出力する。なお、第12図中、灰色で塗りつぶされた回路は第1図の同一符号のものと同等品を示し、また補正メモリ23を除く部分の位置決め誤差推定部30、差分回路50、ボールネジ除算回路53b、差分回路41、ボールネジ乗算回路53a及び加算回路51は、第1図に示す制御回路21に実装されるソフトウェアプログラムで構成される。また、位置決め誤差テーブル及びバックラッシュ補正係数テーブルは補正メモリ23に記録された補正データである。
次に位置決め誤差推定部30の動作について説明する。
部品精度や検出器の精度に起因する誤差の補正(ピッチエラー補正)は、回転検出器28が検出したサーボモータ部1の検出角度θから補正メモリ23に記録された位置決め誤差テーブルの該当誤差を読み出し、加算回路52に出力する。
温度変動によるボールネジの収縮は、温度検出器31の検出温度、回転検出器28が検出したサーボモータ部1の回転角度θ及び補正メモリ23に記録されている補正係数εTを温度補正演算部55へ入力し、演算結果を加算回路52へ出力する。温度補正演算部55では、ボールネジのリードをL、ロータ9の回転角度をθ、θ=0での位置をL0、温度T1(補正メモリ23に記録された温度補正データ作成時の初期温度)と検出温度の差Tを使って、熱膨張による補正量を
と計算する。
バックラッシュ補正は、回転検出器28が検出した検出角度θに対応したバックラッシュ補正係数を補正メモリ28のバックラッシュ補正係数テーブルから読み出し、また電流検出器27で検出した電流iをバックラッシュ補正演算部56へ入力してバックラッシュ量を計算し、計算結果を加算回路52へ出力する。バックラッシュ補正演算部56は式(3)の計算を実行するソフトウェアプログラムで構成され、制御回路21に実装される。
また、ボールネジ5が推力を発生すると応力歪により出力軸先端の位置に誤差が生じる。応力歪は推力に比例し、推力はサーボモータ部1のトルクに比例し、サーボモータ部1のトルクはサーボモータ部1に流す電流に比例する。また、ボールネジ5を構成する材質のヤング率およびボールネジの径は一定と考えることができるので、ボールネジ5のバネ定数(弾性係数)はボールナット4からボールネジ5の先端までの距離に比例すると考えることができる。即ち、サーボモータ部1のトルク定数をkT、ボールネジ5の材質のヤング率とボールネジ断面積を乗じたた値をk、サーボモータ回転角度θ、ボールネジリードL、ボールネジ効率η、θ=0でのボールナットからボールネジ先端までの距離をL0、電流検出器27が検出した電流をiとすると,
と計算できる。なお、上式中、分子はアンプ内蔵シリンダサーボモータ部1の推力、分母はバネ定数を示す。
即ち、第12図では電流検出器27が検出した電流iを応力歪演算部57に入力し、この応力歪演算部57では式(8)を用いて応力歪を演算し、この演算結果を加算回路52へ出力する。
最後に通常運転時の補正動作について、第13図のフローチャートを用いて第1図及び第12図も参照しながら説明する。第13図において、電源オン(S75)後、回転検出器28からサーボモータ部1の回転角度θを検出し、また温度検出器31から温度Tを検出するとともに、電流検出器27から電流iを検出する(S76)。次に補正メモリ23に記録した位置決め誤差テーブルから回転角度θに該当する位置決め誤差を読み出し(S77)、同時に温度T及び回転角度θ等から温度上昇に伴う熱膨張を温度補正演算部55(式(7))で計算し(S78)、推力の発生により生じる応力歪を電流i、回転角度θ等から応力歪演算部57(式(8))にて計算し(S79)、回転角度θと電流I等からバックラッシュ補正演算部56(式(3))にてバックラッシュ量を計算する(S80)。そして以上の総和を補正データとして第12図の加算回路52で加算する(S81)。なお、ステップS77〜S81は上述した第12図の位置決め誤差推定部30の処理内容である。次に、ステップS81の計算結果を用いて第12図の差分回路50により入力指令を修正し(S82)、サーボモータ部1をフィードバック運転する(S83)。また、運転結果はモニタ精度を向上させるため、第12図の加算回路51の修正(S84)を経て、外部指令装置19へ現在位置として出力(送信)する(S85)。
なお、第13図中、S76〜S81、S82〜S83及びS84〜S85の各ステップは、第14図に示すように非同期に実施することもできる。即ち、一般的にはステップS83のフィードバック運転は高速に実行し、補正演算のステップS76〜S81や上位コントローラ(外部指令装置)への出力S84〜S85は比較的低速に実行することにより、S76〜S81、S82〜S83及びS84〜S85の各ステップを非同期に実施することもできる。
実施の形態2.
次に実施の形態2を第15図〜第21図を用いて説明する。
即ち、この実施の形態2は、シリンダサーボモータを機械装置に組み込んだ後に、経年変化や分解補修等によりシリンダサーボモータに誤差が発生した際に、シリンダサーボモータを機械装置より取り外すことなく簡易的に位置決め誤差(ピッチエラー誤差)を補正するデータを修正するものである。
第15図はその補正データを修正するための処理を示すフローチャート、第16図はその制御ブロック図であり、先ず、サーボモータ部1を、指令メモリ22からの正転指令により、差分回路41、コントローラ43及び電流制限回路77にてトルク制限しながらサーボ制御運転を行う(S87)。このとき微分回路74は回転検出器28の検出角度を時間微分して回転速度を計算し、サンプルリング指令部73へ出力する。またこのとき、ボールネジリード乗算回路53aにて、検出角度にボールネジのリード長Lを乗じ(S88)、これに位置決め誤差推定部30(但しピッチエラー誤差補正を除く)の誤差を加算回路51にて補正し(S89)、この補正したものをサンプリング回路75に出力している。そしてサンプルリング指令部73が回転検出器28、微分回路74を通じてサーボモータ部1の回転の停止を検出すると(S90)、サーボモータ部1のボールネジ5がストロークエンドに達したものとして、サンプリング回路75に指令を与える。サンプリング回路75はサンプルリング指令部73からの指令により、このときの前記検出角度にリード長Lを乗じたものに位置決め誤差推定部30の誤差を補正したものを、ストロークエンド推定位置として、前記検出角度とともに一時メモリ42に記憶する(S91)。また、サンプリング指令部73の指令は指令メモリ22にも出力されるので、正転後、前記と同様にサーボモータ部1を逆転し、反対側のストロークエンド位置でのストロークエンド推定位置を検出角度とともに一時メモリ42に記憶する。(S92〜S96)。次に、修正係数演算回路76にて、一時メモリ42に記憶した経年変化や分解修理等の後のストロークエンド推定位置と、補正メモリ23に記憶されている実際(稼動当初)のストロークエンド位置(機械装置固有で既知。以下、L0及びL1とする。第17図参照)とを比較し(S97)、誤差があれば、補正メモリ23の位置決め誤差テーブルに予め記録されている検出角度に対応したピッチエラー誤差(=ピッチエラー誤差の補正データ)の修正係数(位置決め誤差テーブルに予め記憶されている検出角度に対応したピッチエラー誤差を、ピッチエラー補正時に呼び出す際、各ピッチエラー誤差に対応する検出角度に補正を加えるためのもので、ピッチエラー補正時には、その補正を加えた検出角度に対応するピッチエラー誤差を呼び出すことになる。その詳細については第17図〜第23図を用いて説明する)を演算し(S98)、補正メモリ23に記録する(S99)。即ち、修正係数演算回路76は、実際のストロークエンド位置L1−正転時のストロークエンド推定位置=誤差、実際のストロークエンド位置L0−逆転時のストロークエンド推定位置=誤差を夫々演算し、これらの演算した誤差と補正メモリ23に予め記憶されている実際のストロークエンド位置L0、L1のピッチエラー誤差とを夫々比較し、両者の差が0であれば、経年変化や分解修理等の後であっても前記修正係数の演算は不要と判断し、また両者の間に差があれば、前記修正係数の演算は必要と判断して前記修正係数を演算し、補正メモリ23に記録する。
なお、第16図において、電流制限回路77、サンプリング指令部73、サンプリング回路75、微分回路74及び修正係数演算回路76は、第2図の制御回路21上で実行されるソフトウェアプログラムにより構成されている。
次に位置決め誤差テーブルに予め記憶されている検出角度に対応したピッチエラー誤差(=ピッチエラー補正データ)を、ピッチエラー補正時に呼び出す際、ピッチエラー誤差に対応する検出角度に補正を加えるための修正係数、及びこの修正係数を演算する修正係数演算回路76について説明する。
即ち、補正メモリ23に記録されたピッチエラー誤差は、第18図に示すように、回転検出器28が検出するボールネジ5の検出角度xを横軸に、ピッチエラー誤差を縦軸にとり、補正メモリ23に記録されたピッチエラー誤差を検出角度xに対応してプロットすれば、e=f(x)とする関数により表現することができる。補正メモリ23に記録されたピッチエラー誤差に対応する検出角度に修正を加え、ピッチエラー補正時に、この修正を加えた検出角度に対応するピッチエラー誤差を呼び出すことは、関数f(x)を修正することと同義である。以下、関数f(x)及びe=f(x)をグラフ化した際の誤差波形を使って、修正係数及びこの修正係数を演算する修正係数演算回路76について説明する。
なお、本修正では温度補正、バックラッシュ補正及び応力歪補正は変動しないと仮定し、以下ではピッチエラー補正を除く補正(温度補正、バックラッシュ補正、応力歪補正)後を前提として説明する。
即ち、ストロークエンド位置と、出荷当初の機械装置に組みつけられた直後の回転検出器28の検出角度、再測定時(経年変化や分解補修等により誤差が発生したとき)の回転検出器28の検出角度を次表のように定義する。
第17図は上記数値を、モデルを使って説明した図である。図左の(a)が出荷当初の機械装置に組みつけられた直後の状態、図右の(b)が再測定時(経年変化や分解補修等により誤差が発生したとき)の状態を示し、図上が、ボールネジ5の先端に固定されたバー66がストロークエンド位置L0でストッパー67の一方に接触した状態を、また図下が、ボールネジ5の先端に固定されたバー66がストロークエンド位置L1でストッパー67の他方に接触した状態を示している。なお、バー66とストッパー67は、本シリンダサーボモータが組みつけられた機械のストロークを図示するためのモデルである。また、図中、x1、x0、x1+ε′、x0+εは、ボールネジ5の先端部が各ストロークエンド位置L0、L1にあるときの、回転検出器28の検出角度を示す。
そしてストッパー67の位置は変動しないと仮定しているため、ストロークエンド位置は、図左上と図右上では同じL1であるが、回転検出器28の検出角度はε′の誤差を生じている。図左下と図右下も同様の関係にあり、ストロークエンド位置はL0であるが、回転検出器28の検出角度はεの誤差を生じている。
誤差を補正するためのデータは、ストロークエンド位置L0とL1の2点しか得ることが出来ないが、2点間の誤差波形は当初測定した誤差波形と相似であると推定される。ここで、誤差波形グラフe=f(x)が変動したため、既存の誤差波形e=f(x)による補正では上表の再測定時の検出角度でεまたはε’で示すような誤差を生じると考えることができる。
第18図〜第20図にその様子を図示する。
第18図はe=f(x)を示すグラフで、横軸は回転検出器28の検出角度、縦軸はピッチエラー誤差である。点線は誤差波形e=f(x)で、位置決め誤差はピッチエラー誤差に一致するため、検出角度x1の位置(=ストロークエンド位置L1)でpのピッチエラー誤差が存在し、また検出角度x0の位置(=ストロークエンド位置L0)でp‘のピッチエラー誤差が存在する。なお図中の定義域とは、当初のシリンダサーボモータ単体での動作範囲で、動作範囲で示した範囲(x0〜x1)が機械取付け時の動作範囲(=ストロークエンド位置L1−ストロークエンド位置L0)である。
経年変化や分解補修等による変動により、位置決め誤差位置68、69が位置決め誤差位置70、71へ変動した場合を示した図が、第19図である。本実施の形態では、この変動は経年変化や分解補修等により誤差波形e=f(x)が変動したものと考えて実線で示すように誤差波形e=f(x)を平行移動したと仮定して、誤差波形e=f(x)(即ちピッチエラー補正データ)を修正するものであり、第19図では矢印で示す方向へ平行移動している。
第20図は、第19図に詳細説明を加えた図である。シリンダサーボモータ単体の動作範囲は修正前の定義域と一致するが、誤差波形の修正を施した後の定義域は、第20図に示すように修正前に比較して左へずれているため、シリンダサーボモータ単体の動作範囲内ではあるがピッチエラー補正データの領域を越えた補正できない領域(図中補正不能領域)が発生する。しかし、実際の使用領域は図中の動作範囲(修正後)で示す領域のため、実用上問題はない。
次に、上記誤差波形グラフの変動を誤差波形グラフe=f(x)がe=f(x−a)+bの位置に平行移動したと仮定して、修正係数aおよびbを求める手法の一例について説明する。第18図〜第20図の例では、位置決め誤差位置70、71は修正後の誤差波形グラフe=f(x−a)+b上にあるが、実際には誤差波形グラフe=f(x)を平行移動で修正しても位置決め誤差位置70、71の2点を同時かつ完全に補正する修正係数a、bは存在しない場合が多い。そこで、aおよびbは小さい校正量(誤差波形グラフの平行移動量)で、かつ校正後のストロークエンド位置の推定誤差が小さくなるように決定する。
例えば、最小2乗法を用いて係数を決定するには、
とし、評価関数Jを最小とするa、bを計算する。なお、式(9)の第1項は真のストロークエンド位置L0と誤差波形グラフe=f(x−a)+bによるサーボモータ回転量からの推定位置との誤差の大きさを示し、第2項は真のストロークエンド位置L1と誤差波形グラフe=f(x−a)+bによるサーボモータ回転量からの推定位置との誤差の大きさを示し、第3項が平行移動距離を示す。また、ωは重みで、平行移動量a、bとストロークエンドでの推定位置精度のバランスを決定する。ωが小さい場合は校正後の精度より、校正量を少なくする事に重点を置く事を意味し、ωが大きい場合は校正後のストロークエンド推定位置の精度を重視する計算結果を得られる。上記手法で計算したa、bを用いて誤差関数f(x−a)+bを校正後の誤差関数f(x)とする。なお、通常、a、bを陽関数の形で直接求める事は出来ないため、繰り返し計算で、以下の式(10)(11)のa、bを計算し、上記評価関数Jが最小となるa、bを求める。なおaは横軸方向の平行移動可能範囲で
を満たす範囲にある。ただし、X0、X1は制御装置内蔵シリンダサーボモータ単体でのストロークエンド位置を示し、X0 <x0 <x1 <X1とする。即ちaが式(10)の範囲にあれば、x0 <x<x1を満たすxにおいてf(x−a)+bを計算可能である。(実施の形態1の位置決め誤差テーブル作成運転ではX0 <x<X1においてf(x)のデータを取得しているため)
なお上式において、hは関数f(x)の刻み幅、iは計算中に現れるカウント数(負でない整数)である。また、式(13)は、式(10)のaの範囲を表す式に式(11)を代入したものである。また、式(12)は、aを固定したときのストロークエンド位置と、校正位置決め誤差テーブルで補正した推定ストロークエンド位置の誤差の和が±0となるようにbを定めるものである。以上の計算は修正係数演算回路76で行われる。
また、この計算をフローチャートにまとめたものが、第21図である。
第21図において、まず、初期値iを設定し(S96)、Jminに初期値を設定する(S97)。式(9)(11)(12)よりa、b、Jを計算後(S98〜S100)、JminとJを比較し(S101)、Jmin>Jであれば、a、b、Jを(amin、bmin、Jminとして保存し(S102)、またJmin>Jでなければ、ステップS103に移行する。次にiを1つカウントアップし(S103)、iが式(13)を満たすか否かを判断し(S104)、iが式(13)を満たさないときは、以上の手法で得られたamin、bminを修正係数a、bとして、補正メモリ23に記録して(S105)終了する。またiが式(13)を満たすときはS98へ戻り、S98〜S103を繰り返す。
上記手法で計算された修正係数a、bは、補正メモリ23に記録され、通常運転時には次式により修正係数a、bを使用してピッチエラー補正データを計算するのに用いられる。
即ち、アドレスiのデータをd[i]とすると角度θのピッチエラー誤差は式(1)から
て
いられる。
実施の形態3.
なお、修正係数の求め方として、実施の形態2で説明したような求め方により求めることなく、簡易的に
または
と求めてもよい。前者は制御装置内蔵シリンダサーボの分解等により検出器と出力軸の相対位置に誤差が発生した場合の校正式であり、例えば回転直線変換機構を分解し、ロータとナットや出力軸の取付け角度が変化した場合に発生する。これは第23図に相当し、横軸方向に平行移動して誤差波形e=f(x)を修正する。後者はストロークエンド位置の誤差をオフセットとして差分修正するもので磨耗等によるボールネジ長の変動修正に相当する。これは第22図に相当し、縦軸方向に平行移動して誤差波形e=f(x)を修正する。
実施の形態4.
また、上記実施の形態2,3においては、位置決め誤差テーブルに予め記憶されている検出角度に対応したピッチエラー誤差(=ピッチエラー補正データ)を、ピッチエラー補正時に呼び出す際、ピッチエラー誤差に対応する検出角度に補正を加えるための修正係数を求め、この補正係数に基づいて補正された検出角度に対応する位置のピッチエラー誤差を補正メモリ23より呼び出してピッチエラー補正を行うものについて説明した。即ち、経年変化や分解補修等により誤差が発生したときであっても、補正メモリ23に予め記憶されている検出角度に対応したピッチエラー誤差データそのものを修正することなく、その誤差を修正できるものについて説明したが、これとは相対的に、上記修正係数に基づいて前記ピッチエラー誤差データそのものを修正しておき、回転検出器28にて検出される検出角度には修正を加えないで上記誤差を修正するように構成してもよい。
以上のように、この発明によれば、回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、サーボモータ部の電流を検出する電流検出器と、サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、制御部に、サーボモータ部に対する位置決め誤差測定用の指令を記憶した指令メモリと、この指令メモリに記憶された指令に基づいて動作する回転直線変換機構における出力軸の位置を測長する測長器の測定結果及び外部指令装置の指令を入力する入力手段と、制御装置内蔵型シリンダサーボモータを通常運転モード及びテスト運転モードの何れかのモードに切替える運転モード切替手段と、この運転モード切替手段にてテスト運転モードに切替えられたとき、回転検出器が検出した検出角度に基づいて回転直線変換機構における出力軸の推定位置を演算するとともに、この演算された出力軸の推定位置と入力手段を通じて入力された測長器の測定結果とに基づいて位置決め誤差補正データを演算する位置決め誤差補正データ演算手段と、この位置決め誤差補正データ演算手段にて演算された位置決め誤差補正データを記憶する補正メモリと、運転モード切替手段にて通常運転モードに切替えられたとき、補正メモリに記憶された位置決め誤差補正データに基づいてサーボモータ部を位置決め誤差補正して制御する手段とを設けたので、シリンダサーボモータの位置決め誤差補正データの作成に際し、測長器以外の試験装置を必要とせず、よって出荷工場以外での保守点検、修理等による再補正データ作成を容易に実施できる。また、出荷工場における誤差補正データ作成においても特別な試験装置を必要としないため試験装置の製作や設置の費用を削減することが出来る。
また、入力手段として、測長器の測定結果を入力する入力手段と外部指令装置の指令を入力する入力手段とを兼用しているため、入力のためのコネクタや通信のための回路を一つ用意すればよく、部品点数の削減やコストダウンが可能である。
またこの発明によれば、制御部に、運転モード切替手段にて通常運転モードに切替えられたとき、補正メモリに記憶されたデータ、回転検出器の検出データ及び電流検出器の検出データに基づいてバックラッシュ補正データを演算する手段と、この演算手段にて演算されたバックラッシュ補正データに基づいてサーボモータ部をバックラッシュ誤差補正して制御する手段とを設けたので、高精度のバックラッシュ補正を掛けることができる。また、バックラッシュ補正演算はシリンダサーボモータの制御部で演算されるため、外部指令装置がバックラッシュ量を計算する場合と異なり、通信による無駄時間が無くリアルタイムでバックラッシュ量を推定できる。
またこの発明によれば、制御部に、運転モード切替手段にてテスト運転モードに切替えられたとき、バックラッシュ補正データ演算に使用するデータを作成し、この作成したデータを補正メモリに記憶させる手段を設けたので、シリンダサーボモータのバックラッシュ補正データ演算に使用するデータの作成に際し、測長器以外の試験装置を必要とせず、データ作成を容易に実施できる。
またこの発明によれば、回転直線変換機構の温度を検出する温度検出器を備え、且つ前記制御部に、運転モード切替手段にて通常運転モードに切替えられたとき、補正メモリに記憶されたデータ及び前記温度検出器の検出データに基づいて温度誤差補正データを演算する演算手段と、この演算手段にて演算された温度誤差補正データに基づいてサーボモータ部を温度誤差補正して制御する手段とを設けたので、ユーザーや外部指令装置を介在させることなく発熱による温度上昇を、シリンダサーボモータ単体で補正することができる。また、温度検出器もシリンダサーボモータ内に持つため、機械側で温度検出器の設置や、温度検出器のデータを伝達するためのケーブル及び処理回路を設計・製作する必要がないため、機械装置全体でのコスト削減や小形化を実現できる。更に、温度検出器と制御部の距離を短くできるため、温度検出器から制御部のAD変換器間の信号劣化を防ぎ、高精度の補正が可能である。
またこの発明によれば、制御部に、前記運転モード切替手段にてテスト運転モードに切替えられたとき、温度誤差補正データ演算に使用するデータを作成し、この作成したデータを補正メモリに記憶させる手段を設けたので、シリンダサーボモータの温度補正データ演算に使用するデータの作成に際し、測長器以外の試験装置を必要とせず、データ作成を容易に実施できる。
またこの発明によれば、制御部に、運転モード切替手段にて通常運転モードに切替えられたとき、電流検出器の検出データに基づいて回転直線変換機構の出力軸の推力を演算するとともに、この演算した推力に基づいて回転直線変換機構の出力軸の応力歪データを演算する応力歪演算手段と、この応力歪演算手段にて演算された応力歪データに基づいてサーボモータ部を応力歪補正して制御する手段とを設けたので、高精度の応力歪補正を掛けることができる。また、補正演算はシリンダサーボモータの制御部で演算されるため、外部指令装置が応力歪を計算する場合と異なり、通信による無駄時間が無くリアルタイムで応力歪補正を掛けることができる。
またこの発明によれば、制御部に、回転検出器が検出する検出角度に対応して複数の位置決め誤差補正データを予め記憶したメモリと、制御装置内蔵型シリンダサーボモータを機械装置に組み込んだ状態で回転直線変換機構の出力軸をストロークエンド位置まで移動させた時における出力軸のストロークエンド推定位置を演算するとともに、この演算された出力軸のストロークエンド推定位置と機械装置固有のストロークエンド位置とを比較し、両者の間に差がある場合、その差に基づいて、位置決め誤差補正時に、メモリに記憶された複数の位置決め誤差補正データ中から差に基づく位置決め誤差を修正できる特定の位置決め誤差補正データを呼び出すデータ、またはメモリに予め記憶された複数の位置決め誤差補正データそのものを修正するデータを演算する演算手段とを設けたので、測長器を使用せず、機械装置に取付けたままで特別な装置を使用することなく位置決め誤差補正データを校正することができる。
また、上記各発明は温度検出器の設置を除き、シリンダサーボモータに追加的な機構や部品を必要とせず、制御部のS/W変更のみで対応する事が可能なため、シリンダサーボモータをコストアップすることなく実現する事が可能である。
産業上の利用可能性
以上のように、この発明にかかる制御装置内蔵型シリンダサーボモータは、油圧シリンダまたは空圧シリンダを使用する機械装置において、油圧シリンダまたは空圧シリンダの代替品として用いられるのに適している。
【図面の簡単な説明】
第1図はこの発明の実施の形態1に係るシリンダサーボモータの通常運転時の構成図である。
第2図はこの発明の実施の形態1に係るシリンダサーボモータのテスト運転時の構成図である。
第3図はこの発明の実施の形態1に係る各運転モード選択時の動作内容を示すブロック図である。
第4図はこの発明の実施の形態1に係る各運転モード選択時の動作内容を示すフローチャートである。
第5図はこの発明の実施の形態1に係る位置決め誤差補正データ作成時の制御ブロック図である。
第6図はこの発明の実施の形態1に係る位置決め誤差補正データ作成時の動作内容を示すフローチャートである。
第7図はこの発明の実施の形態1に係るバックラッシュ補正データ作成時の制御ブロック図である。
第8図はこの発明の実施の形態1に係るメモリマップを示す図である。
第9図はこの発明の実施の形態1に係るバックラッシュ補正データ作成時の動作内容を示すフローチャートである。
第10図はこの発明の実施の形態1に係る温度補正データ作成時の制御ブロック図である。
第11図はこの発明の実施の形態1に係る温度補正データ作成時の動作内容を示すフローチャートである。
第12図はこの発明の実施の形態1に係る通常運転時の制御ブロック図である。
第13図はこの発明の実施の形態1に係る通常運転時の動作内容を示すフローチャートである。
第14図はこの発明に係る実施の形態1の変形例を示すフローチャートである。
第15図はこの発明の実施の形態2に係る動作を示すフローチャートである。
第16図はこの発明の実施の形態2に係る動作を示す制御ブロック図である。
第17図はこの発明の実施の形態2に係るストロークエンド位置と回転検出器の検出角度との関係を説明するための図である。
第18図はこの発明の実施の形態2に係るピッチエラー誤差と回転検出器の検出角度との関係を説明するための図である。
第19図はこの発明の実施の形態2に係るピッチエラー誤差の修正を説明するための図である。
第20図はこの発明の実施の形態2に係るピッチエラー誤差の修正をより詳細に説明するための図である。
第21図はこの発明の実施の形態2に係るピッチエラー誤差の修正係数を得るための動作を示すフローチャートである。
第22図はこの発明の実施の形態3に係るピッチエラー誤差の修正を説明するための図である。
第23図はこの発明の実施の形態3に係る他のピッチエラー誤差の修正を説明するための図である。
第24図は従来例を説明するための構成図である。
この発明は、サーボモータ部、このサーボモータ部を制御する制御部、サーボモータ部の回転角度を検出する検出器、サーボモータ部の回転動作を直線動作に変換する回転直線変換機構等を一体化した制御装置内蔵型シリンダサーボモータ(以下シリンダサーボモータと称する)に関するものである。
背景技術
シリンダサーボモータの従来例を第24図に示す。
なお、第24図に示すものは発明者等が提案したもので、PCT出願(出願番号:PCT/JP00/01117)されている。
図において、1はサーボモータ部で、ロータ2、ステータ3から構成されている。4はロータ2と負荷側で結合されたボールナット、5はボールナット4と螺合され、軸方向に移動する出力軸となるボールネジで、ボールナット4とともに回転直線変換機構を構成している。7はロータ2の回転量を検出する回転検出器で、センサ部7a及び信号処理部7bを有している。なお、信号処理部7bは回転検出器制御部8、補正メモリ9及び加減算回路10で構成されている。6はサーボモータ部1の制御部、11はボールネジ5の先端に取付けられた反射ミラー11aの移動距離を測定する測長器、19は外部指令装置、12は第1の入力部13、第2の入力部14、差分回路15、制御部16、メモリ17及びメモリライタ18を有する試験装置である制御装置、100は外部指令装置16と制御部6との間でデータのやり取りを行うために必要な第1の入出力部、101は制御装置12と補正メモリ9との間でデータのやり取りを行うために必要な第2の入出力部である。
そしてこのシリンダサーボモータは、外部指令装置19より第1の入出力部100を介して制御部6に指令が出力されると、制御部6を通じてサーボモータ部1のロータ2が回転し、ボールナット4とボールネジ5により、ロータ2の回転運動が直線運動に変換されることによりボールネジ5が往復動運転する。
ところで、本シリンダサーボモータは、使用前(工場出荷時)に、位置決め誤差(シリンダサーボモータの部品精度、回転検出器の精度等に起因する)を補正するための補正データを取得し、この取得した位置決め誤差データを補正メモリ9に記憶させる作業を行う。
即ち、ボールネジ5の先端に反射ミラー11aを取付けるとともに、この反射ミラー11aと対向する位置にレーザ測長器11を設置し、且つ試験設備である制御装置12を用意する。
次に外部指令装置19より指令を与えることにより、シリンダサーボモータを運転してボールネジ5を往復運動させ、このボールネジ5の移動距離を、反射ミラー11aを通じて測長器11で測定する。そしてこの測定データを、第2の入力部14を介して制御装置12の制御部16へ入力する。一方、センサ部7aで検出された角度データを、制御部6へ出力すると同時に第2の入出力部101、第1の入力部13を介して制御部16へ入力し、制御部16で回転検出器7の検出データにボールネジリードを乗算してボールネジ先端の推定位置を得る。そして、制御部16で演算したボールネジ先端の推定位置と測長器11の測定データとを差分回路15に送り、この差分回路15でボールネジ先端の推定位置と測長器11との間の位置決め誤差を演算させる。差分回路15で演算した誤差を、制御部16を介してメモリ17に格納し、上記誤差の計測が終了した後、メモリ17に記録された誤差を、メモリライタ18により第2の入出力部101を介して補正メモリ9に書込む。本シリンダサーボモータは、以上説明したように、使用前(工場出荷時)に、位置決め誤差を補正する補正データを補正メモリ9に記憶させる作業を行う。
また、通常運転時には、反射ミラー11a、測長器11及び試験装置である制御装置12を取り外し、ボールネジ5の先端が正確な位置に位置決めされるように、回転検出器7の検出データに補正メモリ9に記録された補正データを補正した値を制御部6へ出力する。制御部6は入力した値を考慮してサーボモータ部1をサーボ制御する。
従来のシリンダサーボモータは、測長器11を使用して出力軸であるボールネジ5の位置決め精度を予め計測し、回転検出器7のデータを補正して正確な位置決めを実現可能とするものであるが、補正データ演算のため、測長器11以外に補正データ演算や補正メモリ9への書込みを行うための制御装置12を必要とする。このため、保守や修理のためにシリンダサーボモータを分解すると、その都度、試験設備である制御装置12を用意して補正データを再作成する必要があった。
また、従来のシリンダサーボモータは、外部指令装置16とシリンダサーボモータとの間でデータのやり取りを行うために必要な入出力部100以外に、制御装置12とシリンダサーボモータとの間でデータのやり取りを行うために必要な入出力部101を必要とした。
また、従来のシリンダサーボモータは温度変動やバックラッシュ、応力歪等による位置決め精度の悪化について考慮されていなかったので、このシリンダサーボモータを運転すると、温度変動やバックラッシュ、応力歪等による誤差が発生し、位置決め精度が悪化する恐れがあった。
因みに、温度変動やバックラッシュ、応力歪等による誤差を補正するためにサーミスタや、速度センサ、力センサ等を機械装置に付加することが考えられるが、センサの他に配線等も必要となるため、コストアップや工数の増大、整備性の低下を招く恐れがある。また、上記センサの検出データを外部指令装置19で処理すると、外部指令装置19の計算負荷が増大する等の問題が発生する恐れがある。
発明の開示
この発明は上記のような問題点を解決するためのもので、位置決め誤差補正データ等の作成を容易に実施できるシリンダサーボモータを得ることを目的とする。
またこの発明は、外部指令装置や測長器等の外部装置との間でデータのやり取りに使用する入出力部の数を減少させることができるシリンダサーボモータを得ることを目的とする。
またこの発明は、温度変動やバックラッシュ、応力歪等による位置決め精度の悪化を防止できるシリンダサーボモータを得ることを目的とする。
またこの発明は、予め記憶された位置決め誤差補正データを容易に校正できるシリンダサーボモータを得ることを目的とする。
この発明は上記目的を達成させるためになされたもので、回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、前記サーボモータ部の電流を検出する電流検出器と、前記サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、前記サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、前記制御部に、前記サーボモータ部に対する位置決め誤差測定用の指令を記憶した指令メモリと、この指令メモリに記憶された指令に基づいて動作する前記回転直線変換機構における出力軸の位置を測長する測長器の測定結果及び外部指令装置の指令を入力する入力手段と、制御装置内蔵型シリンダサーボモータを通常運転モード及びテスト運転モードの何れかのモードに切替える運転モード切替手段と、この運転モード切替手段にてテスト運転モードに切替えられたとき、前記回転検出器が検出した検出角度に基づいて前記回転直線変換機構における出力軸の推定位置を演算するとともに、この演算された出力軸の推定位置と前記入力手段を通じて入力された前記測長器の測定結果とに基づいて位置決め誤差補正データを演算する位置決め誤差補正データ演算手段と、この位置決め誤差補正データ演算手段にて演算された位置決め誤差補正データを記憶する補正メモリと、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶された位置決め誤差補正データに基づいて前記サーボモータ部を位置決め誤差補正して制御する手段とを設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶されたデータ、前記回転検出器の検出データ及び電流検出器の検出データに基づいてバックラッシュ補正データを演算する手段と、この演算手段にて演算されたバックラッシュ補正データに基づいて前記サーボモータ部をバックラッシュ誤差補正して制御する手段とを設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にてテスト運転モードに切替えられたとき、前記バックラッシュ補正データ演算に使用するデータを作成し、この作成したデータを前記補正メモリに記憶させる手段を設けたものである。
またこの発明は、前記回転直線変換機構の温度を検出する温度検出器を備え、且つ前記制御部に、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶されたデータ及び前記温度検出器の検出データに基づいて温度誤差補正データを演算する演算手段と、この演算手段にて演算された温度誤差補正データに基づいて前記サーボモータ部を温度誤差補正して制御する手段とを設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にてテスト運転モードに切替えられたとき、温度誤差補正データ演算に使用するデータを作成し、この作成したデータを前記補正メモリに記憶させる手段を設けたものである。
またこの発明は、前記制御部に、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記電流検出器の検出データに基づいて前記回転直線変換機構の出力軸の推力を演算するとともに、この演算した推力に基づいて前記回転直線変換機構の出力軸の応力歪データを演算する応力歪演算手段と、この応力歪演算手段にて演算された応力歪データに基づいて前記サーボモータ部を応力歪補正して制御する手段とを設けたものである。
またこの発明は、回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、前記サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、前記サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、前記制御部に、前記回転検出器が検出する検出角度に対応して複数の位置決め誤差補正データを予め記憶したメモリと、制御装置内蔵型シリンダサーボモータを機械装置に組み込んだ状態で前記回転直線変換機構の出力軸をストロークエンド位置まで移動させた時における前記出力軸のストロークエンド推定位置を演算するとともに、この演算された出力軸のストロークエンド推定位置と機械装置固有のストロークエンド位置とを比較し、両者の間に差がある場合、その差に基づいて、位置決め誤差補正時に、前記メモリに記憶された複数の位置決め誤差補正データ中から前記差に基づく位置決め誤差を修正できる特定の位置決め誤差補正データを呼び出すデータ、または前記メモリに予め記憶された複数の位置決め誤差補正データそのものを修正するデータを演算する演算手段とを設けたものである。
発明を実施するための最良の形態
実施の形態1.
以下この発明の実施の形態1を、第1図〜第14図を用いて説明する。
第1図は実施の形態1におけるシリンダサーボモータの構成図である。なお、この図は通常運転モード時の構成を示す。
図において、1はサーボモータ部で、ロータ2、ステータ3から構成されている。4はロータ2と負荷側で結合されたボールナット、5はボールナット4と螺合され、軸方向に移動する出力軸となるボールネジで、ボールナット4とともに回転直線変換機構を構成している。また20は制御部、21はサーボモータ部1をサーボ制御する、組み込み型マイコン等で構成される制御回路、22は後述するテスト運転モード時に使用される指令メモリ、23はシリンダサーボモータの位置決め精度向上のための各種補正データを記録するための補正メモリであり、後述するように複数のパラメータやピッチエラー、バックラッシュ、温度等の補正データを記録する。42は後述するテスト運転モード時に使用される一時メモリ、25はサーボモータ部1を駆動するインバータ回路、26は外部指令装置19や測長器11との通信に用いる入出力部、27はサーボモータ部1の電流検出し、制御回路21へ出力する電流検出器、28はサーボモータ部1の回転を検出し、制御回路21へ出力する回転検出器、31はボールネジ5及びボールナット4の温度計測を行い、制御回路21へ出力する温度検出器である。
ところで、このシリンダサーボモータは、大きく分類して、通常運転モードとテスト運転モードの2つの運転モードを有している。第3図は各運転モード選択時の動作内容を示すブロック図である。この2つの運転モードは、補正データを計算するためのテスト運転モード62と通常運転モード61とに分かれ、更にテスト運転モード62は、ピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64及び温度補正データ作成モード65の3つの運転モードに分かれる。また、補正メモリ23に記録された運転モードパラメータに従って制御モード切替え回路36がスイッチ37〜40を切替え、通常運転モード61、またはピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64、温度補正データ作成モード65の何れかを選択実行する。運転モードパラメータは通常運転時に外部指令装置19により書き換えられ、再電源投入時に運転モードパラメータの内容に従ってテスト運転モードを起動する。なお、第3図中、入出力部26及び補正メモリ23以外の回路は、制御回路21に実装されるソフトウェアプログラムで構成される。
また、上記運転モードパラメータは4bitで構成され、各bitには連続テスト運転モード(ピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64及び温度補正データ作成モード65の3つの運転モードを順に実行する)と3つの単体でのテスト運転モードが割り当てられる。テスト運転モードを実行する場合は、事前に通常運転モードで外部指令装置19の指令に従って制御回路21が該当パラメータを0から1に変更し、電源を切る。再電源投入時に制御モード切替え回路36がテスト運転モードを示す4つのパラメータを参照し、1となっているbitに該当するテスト運転モードを選択し、同時に該パラメータを0にクリアする。また、電源オン時に全てのパラメータが0のとき通常運転が選択される。
以上の動作をフローチャートにまとめると第4図となる。ここでは、bit0が1の時に連続テスト運転モード、bit1が1の時にピッチエラー補正データ作成モード63、bit2が1の時にバックラッシュ補正データ作成モード64、bit3が1の時に温度補正データ作成モード65を実行する。なお、バックラッシュ補正データ作成モード64は事前にピッチエラー補正データ作成モード63が実行される必要があるため、bit2が1のときは、ピッチエラー補正データ作成モード63及びバックラッシュ補正データ作成モード64が順に実行される。
電源オン後、制御モード切替え回路36は、運転モードパラメータを参照してbit0に1が入力されているか否かを判断し(S1)、bit0に1が入力されている場合、運転モードパラメータの全bitを0クリアし(S2)、スイッチ38〜40を順次切り換えて、ピッチエラー補正データ作成モード63、バックラッシュ補正データ作成モード64、温度補正データ作成モード65を実行する。
即ち、ステップS3でスイッチ38をオンしてピッチエラー補正データ作成モード63を実行し(S4)、次にステップS5でスイッチ39をオンしてバックラッシュ補正データ作成モード64を実行し(S6)、最後にステップS7でスイッチ40をオンして温度補正データ作成モード65を実行する(S8)。
なおこのとき、ステップS1で全てのパラメータが0にクリアされるので、次回電源投入時には通常運転モード61が実行される。
また、電源投入時にbit0に0が入力されている場合、bit1に1が入力されているか否かを判断し(S9)、bit1に1が入力されている場合、制御モード切替え回路36はbit1を0にクリアし(S10)、スイッチ38をオンして(S11)ピッチエラー補正データ作成モードを実行する(S12)。このとき、bit2またはbit3に1が入力されている場合、次回電源投入時にはバックラッシュ補正データ作成モード64、温度補正データ作成モード65が実行される。またbit2及びbit3が双方とも0であれば次回電源投入時には通常運転モード61が実行される。
また、電源投入時にbit0及びbit1が0が入力されている場合、bit2に1が入力されているか否かを判断し(S13)、bit2に1が入力されている場合、制御モード切替え回路36はbit2を0クリアし(S14)、スイッチ38をオンして(S15)ピッチエラー補正データ作成モードを実行(S16)後、スイッチ39をオンして(S17)バックラッシュ補正データ作成モード64を実行する(S18)。なおこのとき、bit3に1が入力されている場合、次回電源投入時には温度補正データ作成モード65が選択され、bit3が0であれば次回電源投入時には通常運転モード61が実行される。
また、bit0、bit1、bit2が全て0である場合、bit3に1が入力されているか否かを判断し(S19)、bit3に1が入力されている場合、制御モード切替え回路36はbit2を0にクリアし(S20)、スイッチ40をオンして(S21)、温度補正データ作成モード65を実行する(S22)。
なおこのとき、全てのパラメータが0であるので、次回電源投入時には通常運転モード61が実行される。
また、bit0、bit1、bit2、bit3が全て0の場合、制御モード切替え回路36はスイッチ37をオンし(S23)、通常運転モード61を実行する(S24)。
次に、各テスト運転モードの詳細について説明する。その構成図を第2図に示す。
即ち、ボールネジ5の先端に反射ミラー11aを固定し、この反射ミラー11aに対向するように測長器11を設置するとともに、測長器11の出力部を入出力部26に接続する。そして測長器11が反射ミラー11aの位置からボールネジ5の先端位置を測定し、この測定結果を制御部20の入出力部26から制御回路21へ送る。また、指令メモリ22に記録された運転パターンが指令として制御回路21へ送られ、回転検出器28が検出したサーボモータ部1の回転量も制御回路21へ送られ、フィードバック制御によりインバータ回路25を駆動してサーボモータ部1を運転する。
上記において、シリンダサーボモータは上位コントローラから移動指令を入力する必要が無いため、入出力部26のためのコネクタは測長器11の測定データを入力するために使用され、一つのコネクタを装備すればよい。
ピッチエラー補正データ作成モード63では、シリンダサーボモータの部品(回転直線変換機構等)の精度や検出器の精度に起因する誤差(ピッチエラー誤差)のテーブル(以下 位置決め誤差テーブルと称する)を作成する。第2図では制御回路21が、測長器11が検出した反射ミラー11aの位置、即ちボールネジ先端位置と、サーボモータ部1の回転量とボールネジ5のリード長との積で推定されるボールネジ先端位置との差分を計算し、補正メモリ23へ位置決め誤差テーブルとして記録する。
このときの動作を第5図の制御ブロック図を用いて説明する。図中、灰色で塗りつぶされた回路は第1図、第2図の同一符号のものと同一品を示し、差分回路41、ボールネジリード乗算回路53a及び平均処理部45は、第1図、第2図の制御回路21に実装されるソフトウェアプログラムで構成される。
即ち、指令メモリ22に記録されている運転パターンに従って移動指令を生成し、差分回路41及びコントローラ43によって構成されるフィードバック制御によりインバータ回路25を駆動し、サーボモータ部1を運転する。なお、指令メモリ22に記録されている運転パターンは往復運動とし、誤差データを前進1回、後退1回の計2回計測して平均を補正メモリ23に記録する。
回転検出器28が検出した検出角度θ(モータ回転量)にボールネジリードLをボールネジリード乗算回路53aで乗算して推定したボールネジ先端の推定位置と、測長器11が測定したボールネジ先端位置の差分を差分回路24で演算し、演算結果を回転検出器28が検出した前記θとともに仮位置決め誤差として一時メモリ42に記録する。
サーボモータ部1を反転運転するときにも同様に、回転検出器28が検出した前記θにボールネジリードLをボールネジリード乗算回路53aで乗算して推定したボールネジ先端の推定位置と、測長器11が測定したボールネジ先端位置の差分を差分回路24で演算し、更に、平均処理部45では、正転運転時に一時メモリ42に記録した仮位置決め誤差を呼び出し、反転時の位置決め誤差と平均を取って前記θとともに、補正メモリ23に位置決め誤差テーブルとして記録する。
同時に後述のバックラッシュ補正のため、正転時の位置決め誤差と反転時の位置決め誤差の差をバックラッシュ仮データとして一時メモリ42に記録する。
以上の動作をまとめると第6図のフローチャートとなる。
先ず、指令メモリ22から制御回路21に正転指令を与え、インバータ回路25を通じてサーボモータ部1のロータ2を正転させる(S25)。サーボモータ部1が回転すると、サーボモータ部1が回転するにつれて回転検出器28が検出角度θ(モータ回転量)を検出し(S26)、この検出したθにボールネジリード5のリード長Lをボールネジリード乗算回路53aで乗じてボールネジ先端の推定位置を演算する(S27)。一方サーボモータ部1を正転させることによりボールネジ5が軸方向に移動するが、この移動に伴うボールネジ先端位置を測長器11で測定する(S28)。そして差分回路24にて、ステップS27で推定した推定位置と測長器11で測定したボールネジ先端位置の誤差を取り(S29)、この誤差データを一時メモリ42の前記θに対応するアドレス位置に記録する(S30)。なお、具体的な一時メモリ42への記録方法は、該誤差データを、前記θを使って読み出せるように、次式で表現されるアドレスに誤差データを格納する。なお、補正メモリ23への記録も同様である。
上式中、floorは小数点以下を切り捨てる関数、Nは分割数、Offsetは先頭アドレスを指定するためのオフセットを示す。
第8図にその具体例を示す。図中左が前記θと前記誤差データのプロット図で、横軸下の符号が上式第1項に対応し、図右のアドレスマップに示されるアドレスへ格納される。本例ではオフセット(A)が位置決め誤差データの先頭アドレスを示す。θに対応したデータを読み出す必要があるものは位置決め誤差データ以外にも存在するが、同様に先頭アドレス(オフセット)を変えて記録する。例えば後述するバックラッシ
差データと同様にオフセット(B)及びオフセット(C)を使って第8図に示すようなメモリマップとする。
一時メモリ42への記録は正転計測が完了するまで継続し、正転計測終了と判断されると(S31)、指令メモリ22から制御回路21に逆転指令を与え、S25〜S28と同様の動作を行わせる(S32〜S35)。そして差分回路24にて、回転検出器28が検出した検出角度θ(モータ回転量)にボールネジリード5のリード長Lをボールネジリード乗算回路53aで乗じたボールネジ先端推定位置と、測長器11で計測したボールネジ先端位置の誤差を取り(S36)、ステップS30で一時メモリ42に記録した誤差データと平均を取ってこれを補正メモリ23の前記θに対応するアドレス位置へ記録する(S37)。これは、正転逆転双方の誤差データからバックラッシュ相当の誤差を除去するためのものである。また、ステップS30で一時メモリ42に記録した誤差データとS32〜S36で計測した誤差データの差をバックラッシュ仮データとして、一時メモリ42の前記θに対応するアドレス位置へ記録する(S38)。これは、無負荷時のバックラッシュの大きさに相当し、後述するバックラッシュ補正データ作成モード64で使用するため一時メモリ42に記録するものである。
最後に逆転計測が完了すれば(S39)、ピッチエラー補正データ作成モード63が終了する。
なお、ステップS30で一時メモリ42に記録したデータは以後使用しないので、該当部のメモリ領域は解放してよい。
次にバックラッシュ補正データ作成モード64について第2図、第7図及び第9図を用いて説明する。本モードでは、シリンダサーボモータのバックラッシュに起因する誤差を得、これを補正メモリ23に上記θとともに記録する。
バックラッシュ量はボールネジ5の負荷状態により定まると考えられ、ボールネジ5の負荷はサーボモータ部1のトルクに比例し、かつサーボモータ部1のトルクはサーボモータ部1の電流に比例するため、次式の様に推定できる。
ただし、θはサーボモータ部1の回転検出器28が検出した検出角度を表し、iは電流、gはサーボモータ部1の回転量および電流からバックラッシュ量を計算するための関数を示す。
ここで、関数g(θ,i)を1次でテイラー展開すると、
と近似する。
バックラッシュ補正データ作成モード64ではバックラッシュ補正
ド63において一時メモリ42にバックラッシュ仮データを記録しているが、その半分が無負荷時のバックラッシュ係数g(θ,0)である。即ち
と計算できる。
更に、第2図の推力受け29に負荷をかけ、サーボモータ部1の回転量θにおいて、測長器11がボールネジ先端位置L1を検出し、電流検出器27が電流iを検出し、ボールネジリードをL、サーボモータ部1の回転量θにおけるピッチエラー誤差をεとすると、負荷時のバックラ
より求めることができる。
なお、上式中{}内がピッチエラー誤差補正と無負荷時のバックラッシュ補正を施した推定位置を示している。
以上のバックラッシュ補正係数演算部60は第2図の制御回路21にソフトウェアプログラムとして実装される。
このときの動作を、第7図を用いて説明する。即ち、第2図の推力受け29へ負荷をかけつつ指令メモリ22に記録されている運転パターンに従って移動指令を生成し、差分回路41及びコントローラ43によって構成されるフィードバック制御によりインバータ回路25を駆動し、サーボモータ部1を運転する。測長器11が測定したボールネジ5の先端位置L1と、回転検出器28が検出した検出角度θ(回転量)にボールネジ5のリードLをボールネジリード乗算回路53aで乗じて推定されるボールネジ先端位置と、前記ピッチエラー補正データ作成モード63で補正メモリ23に記録した回転量θにおけるピッチエラー誤差εと、一時メモリ42に記録した前記バックラッシュ仮データと、電流検出器27が検出した電流iを補正データ演算部60に入力する。補正データ演算部60は第2図の制御回路21にソフトウェアプログラムとして実装され、上述した式(2)、(3)を用いてバックラッシュ係数
し、バックラッシュ補正係数テーブルを作成する。
以上の動作をまとめると第9図のフローチャートとなる。まず、推力受け29(第2図)に推力負荷をかけ(S40)、指令メモリ22から制御回路21に指令を与え、サーボモータ部1のロータ2を正転させる(S41)。そして回転検出器28で検出角度θ(回転量)を検出し(S42)、このθとボールネジリード長Lをボールネジリード乗算回路53a(第7図)で乗算し(S43)、同時に前記θに対応したピッチエラー誤差εを補正メモリ23から読み出し(S44)、また前記θに対応したバックラッシュ仮データを一時メモリ42から読み出す(S45)。また、測長器11(第2図)でボールネジ5の先端位置を計測し(S46)、電流検出器27でサーボモータ部1の電流を検出する(S47)。そしてS42〜S47で得られたデータから補正データ演算部60(第7図)を使って補正係
を補正メモリ23へ記録する(S49)。補正データ演算部60は制御回路21に実装されたバックラッシュ補正データ作成用プログラムで、式
る。補正メモリ23のアドレス指定は、前記ピッチエラー補正データ作成モード63と同様である。
なお、バックラッシュは負荷が正のときと負のときで一致しない可能性もあり、その場合はそれぞれの状態を個別に計測し補正する必要がある。このため、S51〜S61のステップを実施することにより逆方向の負荷がかかる際の補正係数を計算する。
即ち、正転完了した後(S50)、推力受け29にステップS40と逆方向に負荷をかけ(S51)、指令メモリ22から制御回路21に逆転指令を与えてサーボモータ部1のロータ2を逆転させる(S52)。そして回転検出器28で検出角度θ(回転量)を検出し(S53)、このθとボールネジリード長Lをボールネジリード乗算回路53a(第7図)で乗算し(S54)、同時に前記θに対応したピッチエラー誤差εを補正メモリ23から読み出し(S55)、また前記θに対応したバックラッシュ仮データを一時メモリ42から読み出す(S56)。また、測長器11(第2図)でボールネジ5の先端位置を計測し(S57)、電流検出器27でサーボモータ部1の電流を検出する(S58)。そしてS53〜S58で得られたデー
へ記録する(S60)。
最後に逆転計測が終了すれば(S61)、バックラッシュ補正データ作成モード64が終了する。
なお、第6図のフローチャートS38で一時メモリ42に記録したバックラッシュ仮データは、S60以後使用しないので、該当部のメモリ領域は解放してよい。
次に温度補正データ作成モード65について第2図、第10図及び第11図を用いて説明する。この温度補正データ作成モード65では、温度変動に伴うボールネジ・ナット等の熱膨張・収縮を補正するためのデータを得、これを補正メモリ23に記録する。ボールネジ5等の熱膨張は、ボールネジ形状および材質から理論計算することも可能であるが、この実施の形態では次の手法によりボールネジ5の熱膨張を計測する。
まず、シリンダサーボモータの出力軸であるボールネジ5を最大限押し出し、測長器11のデータを入力すると同時に上記位置決め誤差運転作成時の温度を第2図の温度検出器31を使って検出して、温度T1での位置Lmax(測長器11のデータ)を記録する。その後、シリンダサーボモータの動作保証最高温度T2まで加熱し、温度T2を検出した時点のボールネジ先端位置Lmax’を測長器11で計測する。そして補正係数εTを、
と計算し、補正メモリ23へ記録する。
このときの動作を、第10図を用いて説明する。図中、サンプリング回路47、補正データ演算部48、サンプリング指令部49及び微分回路72は、制御回路21に実装されるソフトウェアプログラムで構成される。微分回路72は回転検出器28の出力θを時間微分して回転速度を計算し、サンプリング指令部49へ出力する。サンプリング指令部49は、特定の温度またはモータ回転数でサンプリング回路47へ指令を出力する。本例では、回転速度0と温度T2のいずれかを検出した時点でサンプリング回路47を駆動する指令を出力する。サンプリング回路47は、サンプリング指令部49の指令を検出すると入力されたデータをサンプリングし、補正メモリ23または一時メモリ42へ出力する。補正データ演算部48は、前記の式(6)に従って補正係数εTを計算する。
まず、あらかじめ指令メモリ22に記録されている運転パターンに従って移動指令を生成し、シリンダサーボモータに内蔵されたサーボモータ部1を、ボールネジ5を最大限伸長させるように運転する(第10図には図示せず)。上記運転が完了すると、微分回路72が出力するサーボモータ部1(第2図)の回転速度が0となるため、これをサンプリング指令部49が検出してサンプリング回路47を動作させ、入出力部26から入力したボールネジ先端位置の測定データをサンプリングし、Lmaxとして一時メモリ42へ出力し、同時に温度検出器(サーミスタ)31が検出した温度T1を補正メモリ23に記録する。次に恒温槽(図示せず)等によりシリンダサーボモータを加熱し、温度検出器31が温度T2を検出したときサンプリング指令49がサンプリング回路47を動作させ、入出力部26(第2図)を通して入力された測長器11(第2図)が測定したボールネジ先端位置Lmax’を一時メモリ42へ出力する。補正データ演算部48は制御回路21に実装された温度補正データ作成用プログラムで、一時メモリ42に記録されたLmax、Lmax’、補正メモリ23に記録された温度T1及び温度T2から、前述の式(6)を用いて補正係数εTを計算し、補正メモリ23へ記録する。
以上の動作をまとめると第11図のフローチャートとなる。まず、指令メモリ22から制御回路21に指令を与え、サーボモータ部1を回転させてボールネジ5を最大限伸長させる(S62)。サーボモータ部1が停止したときが、ボールネジ5が最大限伸長したときであるので、回転検出器28が零速度を検出すると(S63)、測長器11により計測したボールネジ先端位置をLmaxとして一時メモリ42へ記録する(S64)(S65)。同時に温度検出器31で検出した温度T1を補正メモリ23へ記録する(S66)(S67)。次に、シリンダサーボモータを加熱し(S68)、温度検出器31が温度T2を検出した時点(S69)で測長器11が計測したボールネジ先端位置をLmax’として一時メモリ42に記録する(S70)(S71)。次に、補正データ演算部48が一時メモリ42及び補正メモリ23に記録された上記計測データ(Lmax、Lmax’、T1)及び温度T2を使って式(6)により補正係数εTを計算し(S72)、この計算結果である補正係数εTを補正メモリ23に記録する(S73)。最後に指令メモリ22から制御回路21に指令を与え、ボールネジ5をスタート位置まで戻るようにサーボモータ部1を回転させ(S74)、温度補正データ作成モード65を終了させる。なお、ステップS65及びS71で一時メモリ42に記録されたデータ(Lmax、Lmax’)はステップS72以後は使用しないため、一時メモリ42の該当メモリ領域は解放してよい。
次に通常運転モード61について第1図、第12図〜第14図を用いて説明する
通常運転モード61でのシリンダサーボモータの構成図は第1図となる。図において、外部指令装置19より出力される指令位置を入出力部26から制御回路21へ入力する。制御回路21は補正メモリ23に記録されたデータを使って誤差を補正し、インバータ回路25を駆動してサーボモータ部1をサーボ制御運転する。サーボモータ部1の回転は回転自在で軸方向に固定されたボールナット4を回転させ、ボールナット4の回転により軸方向に移動自在で回転を拘束されたボールネジ5を前後に動作させる。ボールネジ5の移動距離は、ボールナット4の回転量を、ロータ2を介して一体に回転する回転検出器28が検出し、制御回路21へ出力する。
次に通常運転モードの動作を第12図の制御ブロック図を用いて説明する。外部指令装置19から入力される指令位置は、位置決め誤差推定部30で推定される誤差を差分回路50で差分修正し、誤差を考慮した指令位置を作成する。本修正指令位置をボールネジリード除算回路53bでサーボモータ回転指令へ変換し、差分回路41及びコントローラ43で構成されるフィードバック制御によりインバータ回路25を制御し、サーボモータ部1を駆動する。一方、外部指令装置19へ出力する現在位置データは、ボールネジリード乗算回路53aにて、回転検出器28が検出した検出角度θにボールネジリード長を乗じ、位置決め誤差推定部30で推定される誤差を加算回路51で加算修正して出力する。なお、第12図中、灰色で塗りつぶされた回路は第1図の同一符号のものと同等品を示し、また補正メモリ23を除く部分の位置決め誤差推定部30、差分回路50、ボールネジ除算回路53b、差分回路41、ボールネジ乗算回路53a及び加算回路51は、第1図に示す制御回路21に実装されるソフトウェアプログラムで構成される。また、位置決め誤差テーブル及びバックラッシュ補正係数テーブルは補正メモリ23に記録された補正データである。
次に位置決め誤差推定部30の動作について説明する。
部品精度や検出器の精度に起因する誤差の補正(ピッチエラー補正)は、回転検出器28が検出したサーボモータ部1の検出角度θから補正メモリ23に記録された位置決め誤差テーブルの該当誤差を読み出し、加算回路52に出力する。
温度変動によるボールネジの収縮は、温度検出器31の検出温度、回転検出器28が検出したサーボモータ部1の回転角度θ及び補正メモリ23に記録されている補正係数εTを温度補正演算部55へ入力し、演算結果を加算回路52へ出力する。温度補正演算部55では、ボールネジのリードをL、ロータ9の回転角度をθ、θ=0での位置をL0、温度T1(補正メモリ23に記録された温度補正データ作成時の初期温度)と検出温度の差Tを使って、熱膨張による補正量を
と計算する。
バックラッシュ補正は、回転検出器28が検出した検出角度θに対応したバックラッシュ補正係数を補正メモリ28のバックラッシュ補正係数テーブルから読み出し、また電流検出器27で検出した電流iをバックラッシュ補正演算部56へ入力してバックラッシュ量を計算し、計算結果を加算回路52へ出力する。バックラッシュ補正演算部56は式(3)の計算を実行するソフトウェアプログラムで構成され、制御回路21に実装される。
また、ボールネジ5が推力を発生すると応力歪により出力軸先端の位置に誤差が生じる。応力歪は推力に比例し、推力はサーボモータ部1のトルクに比例し、サーボモータ部1のトルクはサーボモータ部1に流す電流に比例する。また、ボールネジ5を構成する材質のヤング率およびボールネジの径は一定と考えることができるので、ボールネジ5のバネ定数(弾性係数)はボールナット4からボールネジ5の先端までの距離に比例すると考えることができる。即ち、サーボモータ部1のトルク定数をkT、ボールネジ5の材質のヤング率とボールネジ断面積を乗じたた値をk、サーボモータ回転角度θ、ボールネジリードL、ボールネジ効率η、θ=0でのボールナットからボールネジ先端までの距離をL0、電流検出器27が検出した電流をiとすると,
と計算できる。なお、上式中、分子はアンプ内蔵シリンダサーボモータ部1の推力、分母はバネ定数を示す。
即ち、第12図では電流検出器27が検出した電流iを応力歪演算部57に入力し、この応力歪演算部57では式(8)を用いて応力歪を演算し、この演算結果を加算回路52へ出力する。
最後に通常運転時の補正動作について、第13図のフローチャートを用いて第1図及び第12図も参照しながら説明する。第13図において、電源オン(S75)後、回転検出器28からサーボモータ部1の回転角度θを検出し、また温度検出器31から温度Tを検出するとともに、電流検出器27から電流iを検出する(S76)。次に補正メモリ23に記録した位置決め誤差テーブルから回転角度θに該当する位置決め誤差を読み出し(S77)、同時に温度T及び回転角度θ等から温度上昇に伴う熱膨張を温度補正演算部55(式(7))で計算し(S78)、推力の発生により生じる応力歪を電流i、回転角度θ等から応力歪演算部57(式(8))にて計算し(S79)、回転角度θと電流I等からバックラッシュ補正演算部56(式(3))にてバックラッシュ量を計算する(S80)。そして以上の総和を補正データとして第12図の加算回路52で加算する(S81)。なお、ステップS77〜S81は上述した第12図の位置決め誤差推定部30の処理内容である。次に、ステップS81の計算結果を用いて第12図の差分回路50により入力指令を修正し(S82)、サーボモータ部1をフィードバック運転する(S83)。また、運転結果はモニタ精度を向上させるため、第12図の加算回路51の修正(S84)を経て、外部指令装置19へ現在位置として出力(送信)する(S85)。
なお、第13図中、S76〜S81、S82〜S83及びS84〜S85の各ステップは、第14図に示すように非同期に実施することもできる。即ち、一般的にはステップS83のフィードバック運転は高速に実行し、補正演算のステップS76〜S81や上位コントローラ(外部指令装置)への出力S84〜S85は比較的低速に実行することにより、S76〜S81、S82〜S83及びS84〜S85の各ステップを非同期に実施することもできる。
実施の形態2.
次に実施の形態2を第15図〜第21図を用いて説明する。
即ち、この実施の形態2は、シリンダサーボモータを機械装置に組み込んだ後に、経年変化や分解補修等によりシリンダサーボモータに誤差が発生した際に、シリンダサーボモータを機械装置より取り外すことなく簡易的に位置決め誤差(ピッチエラー誤差)を補正するデータを修正するものである。
第15図はその補正データを修正するための処理を示すフローチャート、第16図はその制御ブロック図であり、先ず、サーボモータ部1を、指令メモリ22からの正転指令により、差分回路41、コントローラ43及び電流制限回路77にてトルク制限しながらサーボ制御運転を行う(S87)。このとき微分回路74は回転検出器28の検出角度を時間微分して回転速度を計算し、サンプルリング指令部73へ出力する。またこのとき、ボールネジリード乗算回路53aにて、検出角度にボールネジのリード長Lを乗じ(S88)、これに位置決め誤差推定部30(但しピッチエラー誤差補正を除く)の誤差を加算回路51にて補正し(S89)、この補正したものをサンプリング回路75に出力している。そしてサンプルリング指令部73が回転検出器28、微分回路74を通じてサーボモータ部1の回転の停止を検出すると(S90)、サーボモータ部1のボールネジ5がストロークエンドに達したものとして、サンプリング回路75に指令を与える。サンプリング回路75はサンプルリング指令部73からの指令により、このときの前記検出角度にリード長Lを乗じたものに位置決め誤差推定部30の誤差を補正したものを、ストロークエンド推定位置として、前記検出角度とともに一時メモリ42に記憶する(S91)。また、サンプリング指令部73の指令は指令メモリ22にも出力されるので、正転後、前記と同様にサーボモータ部1を逆転し、反対側のストロークエンド位置でのストロークエンド推定位置を検出角度とともに一時メモリ42に記憶する。(S92〜S96)。次に、修正係数演算回路76にて、一時メモリ42に記憶した経年変化や分解修理等の後のストロークエンド推定位置と、補正メモリ23に記憶されている実際(稼動当初)のストロークエンド位置(機械装置固有で既知。以下、L0及びL1とする。第17図参照)とを比較し(S97)、誤差があれば、補正メモリ23の位置決め誤差テーブルに予め記録されている検出角度に対応したピッチエラー誤差(=ピッチエラー誤差の補正データ)の修正係数(位置決め誤差テーブルに予め記憶されている検出角度に対応したピッチエラー誤差を、ピッチエラー補正時に呼び出す際、各ピッチエラー誤差に対応する検出角度に補正を加えるためのもので、ピッチエラー補正時には、その補正を加えた検出角度に対応するピッチエラー誤差を呼び出すことになる。その詳細については第17図〜第23図を用いて説明する)を演算し(S98)、補正メモリ23に記録する(S99)。即ち、修正係数演算回路76は、実際のストロークエンド位置L1−正転時のストロークエンド推定位置=誤差、実際のストロークエンド位置L0−逆転時のストロークエンド推定位置=誤差を夫々演算し、これらの演算した誤差と補正メモリ23に予め記憶されている実際のストロークエンド位置L0、L1のピッチエラー誤差とを夫々比較し、両者の差が0であれば、経年変化や分解修理等の後であっても前記修正係数の演算は不要と判断し、また両者の間に差があれば、前記修正係数の演算は必要と判断して前記修正係数を演算し、補正メモリ23に記録する。
なお、第16図において、電流制限回路77、サンプリング指令部73、サンプリング回路75、微分回路74及び修正係数演算回路76は、第2図の制御回路21上で実行されるソフトウェアプログラムにより構成されている。
次に位置決め誤差テーブルに予め記憶されている検出角度に対応したピッチエラー誤差(=ピッチエラー補正データ)を、ピッチエラー補正時に呼び出す際、ピッチエラー誤差に対応する検出角度に補正を加えるための修正係数、及びこの修正係数を演算する修正係数演算回路76について説明する。
即ち、補正メモリ23に記録されたピッチエラー誤差は、第18図に示すように、回転検出器28が検出するボールネジ5の検出角度xを横軸に、ピッチエラー誤差を縦軸にとり、補正メモリ23に記録されたピッチエラー誤差を検出角度xに対応してプロットすれば、e=f(x)とする関数により表現することができる。補正メモリ23に記録されたピッチエラー誤差に対応する検出角度に修正を加え、ピッチエラー補正時に、この修正を加えた検出角度に対応するピッチエラー誤差を呼び出すことは、関数f(x)を修正することと同義である。以下、関数f(x)及びe=f(x)をグラフ化した際の誤差波形を使って、修正係数及びこの修正係数を演算する修正係数演算回路76について説明する。
なお、本修正では温度補正、バックラッシュ補正及び応力歪補正は変動しないと仮定し、以下ではピッチエラー補正を除く補正(温度補正、バックラッシュ補正、応力歪補正)後を前提として説明する。
即ち、ストロークエンド位置と、出荷当初の機械装置に組みつけられた直後の回転検出器28の検出角度、再測定時(経年変化や分解補修等により誤差が発生したとき)の回転検出器28の検出角度を次表のように定義する。
第17図は上記数値を、モデルを使って説明した図である。図左の(a)が出荷当初の機械装置に組みつけられた直後の状態、図右の(b)が再測定時(経年変化や分解補修等により誤差が発生したとき)の状態を示し、図上が、ボールネジ5の先端に固定されたバー66がストロークエンド位置L0でストッパー67の一方に接触した状態を、また図下が、ボールネジ5の先端に固定されたバー66がストロークエンド位置L1でストッパー67の他方に接触した状態を示している。なお、バー66とストッパー67は、本シリンダサーボモータが組みつけられた機械のストロークを図示するためのモデルである。また、図中、x1、x0、x1+ε′、x0+εは、ボールネジ5の先端部が各ストロークエンド位置L0、L1にあるときの、回転検出器28の検出角度を示す。
そしてストッパー67の位置は変動しないと仮定しているため、ストロークエンド位置は、図左上と図右上では同じL1であるが、回転検出器28の検出角度はε′の誤差を生じている。図左下と図右下も同様の関係にあり、ストロークエンド位置はL0であるが、回転検出器28の検出角度はεの誤差を生じている。
誤差を補正するためのデータは、ストロークエンド位置L0とL1の2点しか得ることが出来ないが、2点間の誤差波形は当初測定した誤差波形と相似であると推定される。ここで、誤差波形グラフe=f(x)が変動したため、既存の誤差波形e=f(x)による補正では上表の再測定時の検出角度でεまたはε’で示すような誤差を生じると考えることができる。
第18図〜第20図にその様子を図示する。
第18図はe=f(x)を示すグラフで、横軸は回転検出器28の検出角度、縦軸はピッチエラー誤差である。点線は誤差波形e=f(x)で、位置決め誤差はピッチエラー誤差に一致するため、検出角度x1の位置(=ストロークエンド位置L1)でpのピッチエラー誤差が存在し、また検出角度x0の位置(=ストロークエンド位置L0)でp‘のピッチエラー誤差が存在する。なお図中の定義域とは、当初のシリンダサーボモータ単体での動作範囲で、動作範囲で示した範囲(x0〜x1)が機械取付け時の動作範囲(=ストロークエンド位置L1−ストロークエンド位置L0)である。
経年変化や分解補修等による変動により、位置決め誤差位置68、69が位置決め誤差位置70、71へ変動した場合を示した図が、第19図である。本実施の形態では、この変動は経年変化や分解補修等により誤差波形e=f(x)が変動したものと考えて実線で示すように誤差波形e=f(x)を平行移動したと仮定して、誤差波形e=f(x)(即ちピッチエラー補正データ)を修正するものであり、第19図では矢印で示す方向へ平行移動している。
第20図は、第19図に詳細説明を加えた図である。シリンダサーボモータ単体の動作範囲は修正前の定義域と一致するが、誤差波形の修正を施した後の定義域は、第20図に示すように修正前に比較して左へずれているため、シリンダサーボモータ単体の動作範囲内ではあるがピッチエラー補正データの領域を越えた補正できない領域(図中補正不能領域)が発生する。しかし、実際の使用領域は図中の動作範囲(修正後)で示す領域のため、実用上問題はない。
次に、上記誤差波形グラフの変動を誤差波形グラフe=f(x)がe=f(x−a)+bの位置に平行移動したと仮定して、修正係数aおよびbを求める手法の一例について説明する。第18図〜第20図の例では、位置決め誤差位置70、71は修正後の誤差波形グラフe=f(x−a)+b上にあるが、実際には誤差波形グラフe=f(x)を平行移動で修正しても位置決め誤差位置70、71の2点を同時かつ完全に補正する修正係数a、bは存在しない場合が多い。そこで、aおよびbは小さい校正量(誤差波形グラフの平行移動量)で、かつ校正後のストロークエンド位置の推定誤差が小さくなるように決定する。
例えば、最小2乗法を用いて係数を決定するには、
とし、評価関数Jを最小とするa、bを計算する。なお、式(9)の第1項は真のストロークエンド位置L0と誤差波形グラフe=f(x−a)+bによるサーボモータ回転量からの推定位置との誤差の大きさを示し、第2項は真のストロークエンド位置L1と誤差波形グラフe=f(x−a)+bによるサーボモータ回転量からの推定位置との誤差の大きさを示し、第3項が平行移動距離を示す。また、ωは重みで、平行移動量a、bとストロークエンドでの推定位置精度のバランスを決定する。ωが小さい場合は校正後の精度より、校正量を少なくする事に重点を置く事を意味し、ωが大きい場合は校正後のストロークエンド推定位置の精度を重視する計算結果を得られる。上記手法で計算したa、bを用いて誤差関数f(x−a)+bを校正後の誤差関数f(x)とする。なお、通常、a、bを陽関数の形で直接求める事は出来ないため、繰り返し計算で、以下の式(10)(11)のa、bを計算し、上記評価関数Jが最小となるa、bを求める。なおaは横軸方向の平行移動可能範囲で
を満たす範囲にある。ただし、X0、X1は制御装置内蔵シリンダサーボモータ単体でのストロークエンド位置を示し、X0 <x0 <x1 <X1とする。即ちaが式(10)の範囲にあれば、x0 <x<x1を満たすxにおいてf(x−a)+bを計算可能である。(実施の形態1の位置決め誤差テーブル作成運転ではX0 <x<X1においてf(x)のデータを取得しているため)
なお上式において、hは関数f(x)の刻み幅、iは計算中に現れるカウント数(負でない整数)である。また、式(13)は、式(10)のaの範囲を表す式に式(11)を代入したものである。また、式(12)は、aを固定したときのストロークエンド位置と、校正位置決め誤差テーブルで補正した推定ストロークエンド位置の誤差の和が±0となるようにbを定めるものである。以上の計算は修正係数演算回路76で行われる。
また、この計算をフローチャートにまとめたものが、第21図である。
第21図において、まず、初期値iを設定し(S96)、Jminに初期値を設定する(S97)。式(9)(11)(12)よりa、b、Jを計算後(S98〜S100)、JminとJを比較し(S101)、Jmin>Jであれば、a、b、Jを(amin、bmin、Jminとして保存し(S102)、またJmin>Jでなければ、ステップS103に移行する。次にiを1つカウントアップし(S103)、iが式(13)を満たすか否かを判断し(S104)、iが式(13)を満たさないときは、以上の手法で得られたamin、bminを修正係数a、bとして、補正メモリ23に記録して(S105)終了する。またiが式(13)を満たすときはS98へ戻り、S98〜S103を繰り返す。
上記手法で計算された修正係数a、bは、補正メモリ23に記録され、通常運転時には次式により修正係数a、bを使用してピッチエラー補正データを計算するのに用いられる。
即ち、アドレスiのデータをd[i]とすると角度θのピッチエラー誤差は式(1)から
て
いられる。
実施の形態3.
なお、修正係数の求め方として、実施の形態2で説明したような求め方により求めることなく、簡易的に
または
と求めてもよい。前者は制御装置内蔵シリンダサーボの分解等により検出器と出力軸の相対位置に誤差が発生した場合の校正式であり、例えば回転直線変換機構を分解し、ロータとナットや出力軸の取付け角度が変化した場合に発生する。これは第23図に相当し、横軸方向に平行移動して誤差波形e=f(x)を修正する。後者はストロークエンド位置の誤差をオフセットとして差分修正するもので磨耗等によるボールネジ長の変動修正に相当する。これは第22図に相当し、縦軸方向に平行移動して誤差波形e=f(x)を修正する。
実施の形態4.
また、上記実施の形態2,3においては、位置決め誤差テーブルに予め記憶されている検出角度に対応したピッチエラー誤差(=ピッチエラー補正データ)を、ピッチエラー補正時に呼び出す際、ピッチエラー誤差に対応する検出角度に補正を加えるための修正係数を求め、この補正係数に基づいて補正された検出角度に対応する位置のピッチエラー誤差を補正メモリ23より呼び出してピッチエラー補正を行うものについて説明した。即ち、経年変化や分解補修等により誤差が発生したときであっても、補正メモリ23に予め記憶されている検出角度に対応したピッチエラー誤差データそのものを修正することなく、その誤差を修正できるものについて説明したが、これとは相対的に、上記修正係数に基づいて前記ピッチエラー誤差データそのものを修正しておき、回転検出器28にて検出される検出角度には修正を加えないで上記誤差を修正するように構成してもよい。
以上のように、この発明によれば、回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、サーボモータ部の電流を検出する電流検出器と、サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、制御部に、サーボモータ部に対する位置決め誤差測定用の指令を記憶した指令メモリと、この指令メモリに記憶された指令に基づいて動作する回転直線変換機構における出力軸の位置を測長する測長器の測定結果及び外部指令装置の指令を入力する入力手段と、制御装置内蔵型シリンダサーボモータを通常運転モード及びテスト運転モードの何れかのモードに切替える運転モード切替手段と、この運転モード切替手段にてテスト運転モードに切替えられたとき、回転検出器が検出した検出角度に基づいて回転直線変換機構における出力軸の推定位置を演算するとともに、この演算された出力軸の推定位置と入力手段を通じて入力された測長器の測定結果とに基づいて位置決め誤差補正データを演算する位置決め誤差補正データ演算手段と、この位置決め誤差補正データ演算手段にて演算された位置決め誤差補正データを記憶する補正メモリと、運転モード切替手段にて通常運転モードに切替えられたとき、補正メモリに記憶された位置決め誤差補正データに基づいてサーボモータ部を位置決め誤差補正して制御する手段とを設けたので、シリンダサーボモータの位置決め誤差補正データの作成に際し、測長器以外の試験装置を必要とせず、よって出荷工場以外での保守点検、修理等による再補正データ作成を容易に実施できる。また、出荷工場における誤差補正データ作成においても特別な試験装置を必要としないため試験装置の製作や設置の費用を削減することが出来る。
また、入力手段として、測長器の測定結果を入力する入力手段と外部指令装置の指令を入力する入力手段とを兼用しているため、入力のためのコネクタや通信のための回路を一つ用意すればよく、部品点数の削減やコストダウンが可能である。
またこの発明によれば、制御部に、運転モード切替手段にて通常運転モードに切替えられたとき、補正メモリに記憶されたデータ、回転検出器の検出データ及び電流検出器の検出データに基づいてバックラッシュ補正データを演算する手段と、この演算手段にて演算されたバックラッシュ補正データに基づいてサーボモータ部をバックラッシュ誤差補正して制御する手段とを設けたので、高精度のバックラッシュ補正を掛けることができる。また、バックラッシュ補正演算はシリンダサーボモータの制御部で演算されるため、外部指令装置がバックラッシュ量を計算する場合と異なり、通信による無駄時間が無くリアルタイムでバックラッシュ量を推定できる。
またこの発明によれば、制御部に、運転モード切替手段にてテスト運転モードに切替えられたとき、バックラッシュ補正データ演算に使用するデータを作成し、この作成したデータを補正メモリに記憶させる手段を設けたので、シリンダサーボモータのバックラッシュ補正データ演算に使用するデータの作成に際し、測長器以外の試験装置を必要とせず、データ作成を容易に実施できる。
またこの発明によれば、回転直線変換機構の温度を検出する温度検出器を備え、且つ前記制御部に、運転モード切替手段にて通常運転モードに切替えられたとき、補正メモリに記憶されたデータ及び前記温度検出器の検出データに基づいて温度誤差補正データを演算する演算手段と、この演算手段にて演算された温度誤差補正データに基づいてサーボモータ部を温度誤差補正して制御する手段とを設けたので、ユーザーや外部指令装置を介在させることなく発熱による温度上昇を、シリンダサーボモータ単体で補正することができる。また、温度検出器もシリンダサーボモータ内に持つため、機械側で温度検出器の設置や、温度検出器のデータを伝達するためのケーブル及び処理回路を設計・製作する必要がないため、機械装置全体でのコスト削減や小形化を実現できる。更に、温度検出器と制御部の距離を短くできるため、温度検出器から制御部のAD変換器間の信号劣化を防ぎ、高精度の補正が可能である。
またこの発明によれば、制御部に、前記運転モード切替手段にてテスト運転モードに切替えられたとき、温度誤差補正データ演算に使用するデータを作成し、この作成したデータを補正メモリに記憶させる手段を設けたので、シリンダサーボモータの温度補正データ演算に使用するデータの作成に際し、測長器以外の試験装置を必要とせず、データ作成を容易に実施できる。
またこの発明によれば、制御部に、運転モード切替手段にて通常運転モードに切替えられたとき、電流検出器の検出データに基づいて回転直線変換機構の出力軸の推力を演算するとともに、この演算した推力に基づいて回転直線変換機構の出力軸の応力歪データを演算する応力歪演算手段と、この応力歪演算手段にて演算された応力歪データに基づいてサーボモータ部を応力歪補正して制御する手段とを設けたので、高精度の応力歪補正を掛けることができる。また、補正演算はシリンダサーボモータの制御部で演算されるため、外部指令装置が応力歪を計算する場合と異なり、通信による無駄時間が無くリアルタイムで応力歪補正を掛けることができる。
またこの発明によれば、制御部に、回転検出器が検出する検出角度に対応して複数の位置決め誤差補正データを予め記憶したメモリと、制御装置内蔵型シリンダサーボモータを機械装置に組み込んだ状態で回転直線変換機構の出力軸をストロークエンド位置まで移動させた時における出力軸のストロークエンド推定位置を演算するとともに、この演算された出力軸のストロークエンド推定位置と機械装置固有のストロークエンド位置とを比較し、両者の間に差がある場合、その差に基づいて、位置決め誤差補正時に、メモリに記憶された複数の位置決め誤差補正データ中から差に基づく位置決め誤差を修正できる特定の位置決め誤差補正データを呼び出すデータ、またはメモリに予め記憶された複数の位置決め誤差補正データそのものを修正するデータを演算する演算手段とを設けたので、測長器を使用せず、機械装置に取付けたままで特別な装置を使用することなく位置決め誤差補正データを校正することができる。
また、上記各発明は温度検出器の設置を除き、シリンダサーボモータに追加的な機構や部品を必要とせず、制御部のS/W変更のみで対応する事が可能なため、シリンダサーボモータをコストアップすることなく実現する事が可能である。
産業上の利用可能性
以上のように、この発明にかかる制御装置内蔵型シリンダサーボモータは、油圧シリンダまたは空圧シリンダを使用する機械装置において、油圧シリンダまたは空圧シリンダの代替品として用いられるのに適している。
【図面の簡単な説明】
第1図はこの発明の実施の形態1に係るシリンダサーボモータの通常運転時の構成図である。
第2図はこの発明の実施の形態1に係るシリンダサーボモータのテスト運転時の構成図である。
第3図はこの発明の実施の形態1に係る各運転モード選択時の動作内容を示すブロック図である。
第4図はこの発明の実施の形態1に係る各運転モード選択時の動作内容を示すフローチャートである。
第5図はこの発明の実施の形態1に係る位置決め誤差補正データ作成時の制御ブロック図である。
第6図はこの発明の実施の形態1に係る位置決め誤差補正データ作成時の動作内容を示すフローチャートである。
第7図はこの発明の実施の形態1に係るバックラッシュ補正データ作成時の制御ブロック図である。
第8図はこの発明の実施の形態1に係るメモリマップを示す図である。
第9図はこの発明の実施の形態1に係るバックラッシュ補正データ作成時の動作内容を示すフローチャートである。
第10図はこの発明の実施の形態1に係る温度補正データ作成時の制御ブロック図である。
第11図はこの発明の実施の形態1に係る温度補正データ作成時の動作内容を示すフローチャートである。
第12図はこの発明の実施の形態1に係る通常運転時の制御ブロック図である。
第13図はこの発明の実施の形態1に係る通常運転時の動作内容を示すフローチャートである。
第14図はこの発明に係る実施の形態1の変形例を示すフローチャートである。
第15図はこの発明の実施の形態2に係る動作を示すフローチャートである。
第16図はこの発明の実施の形態2に係る動作を示す制御ブロック図である。
第17図はこの発明の実施の形態2に係るストロークエンド位置と回転検出器の検出角度との関係を説明するための図である。
第18図はこの発明の実施の形態2に係るピッチエラー誤差と回転検出器の検出角度との関係を説明するための図である。
第19図はこの発明の実施の形態2に係るピッチエラー誤差の修正を説明するための図である。
第20図はこの発明の実施の形態2に係るピッチエラー誤差の修正をより詳細に説明するための図である。
第21図はこの発明の実施の形態2に係るピッチエラー誤差の修正係数を得るための動作を示すフローチャートである。
第22図はこの発明の実施の形態3に係るピッチエラー誤差の修正を説明するための図である。
第23図はこの発明の実施の形態3に係る他のピッチエラー誤差の修正を説明するための図である。
第24図は従来例を説明するための構成図である。
Claims (7)
- 回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、前記サーボモータ部の電流を検出する電流検出器と、前記サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、前記サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、前記制御部に、前記サーボモータ部に対する位置決め誤差測定用の指令を記憶した指令メモリと、この指令メモリに記憶された指令に基づいて動作する前記回転直線変換機構における出力軸の位置を測長する測長器の測定結果及び外部指令装置の指令を入力する入力手段と、制御装置内蔵型シリンダサーボモータを通常運転モード及びテスト運転モードの何れかのモードに切替える運転モード切替手段と、この運転モード切替手段にてテスト運転モードに切替えられたとき、前記回転検出器が検出した検出角度に基づいて前記回転直線変換機構における出力軸の推定位置を演算するとともに、この演算された出力軸の推定位置と前記入力手段を通じて入力された前記測長器の測定結果とに基づいて位置決め誤差補正データを演算する位置決め誤差補正データ演算手段と、この位置決め誤差補正データ演算手段にて演算された位置決め誤差補正データを記憶する補正メモリと、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶された位置決め誤差補正データに基づいて前記サーボモータ部を位置決め誤差補正して制御する手段とを設けたことを特徴とする制御装置内蔵型シリンダサーボモータ。
- 前記制御部は、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶されたデータ、前記回転検出器の検出データ及び電流検出器の検出データに基づいてバックラッシュ補正データを演算する手段と、この演算手段にて演算されたバックラッシュ補正データに基づいて前記サーボモータ部をバックラッシュ誤差補正して制御する手段とを有することを特徴とする請求の範囲第1項に記載の制御装置内蔵型シリンダサーボモータ。
- 前記制御部は、前記運転モード切替手段にてテスト運転モードに切替えられたとき、前記バックラッシュ補正データ演算に使用するデータを作成し、この作成したデータを前記補正メモリに記憶させる手段を有することを特徴とする請求の範囲第2項に記載の制御装置内蔵型シリンダサーボモータ。
- 前記回転直線変換機構の温度を検出する温度検出器を備え、且つ前記制御部は、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記補正メモリに記憶されたデータ及び前記温度検出器の検出データに基づいて温度誤差補正データを演算する演算手段と、この演算手段にて演算された温度誤差補正データに基づいて前記サーボモータ部を温度誤差補正して制御する手段とを有することを特徴とする請求の範囲第1項に記載の制御装置内蔵型シリンダサーボモータ。
- 前記制御部は、前記運転モード切替手段にてテスト運転モードに切替えられたとき、温度誤差補正データ演算に使用するデータを作成し、この作成したデータを前記補正メモリに記憶させる手段を有することを特徴とする請求の範囲第4項に記載の制御装置内蔵型シリンダサーボモータ。
- 前記制御部は、前記運転モード切替手段にて通常運転モードに切替えられたとき、前記電流検出器の検出データに基づいて前記回転直線変換機構の出力軸の推力を演算するとともに、この演算した推力に基づいて前記回転直線変換機構の出力軸の応力歪データを演算する応力歪演算手段と、この応力歪演算手段にて演算された応力歪データに基づいて前記サーボモータ部を応力歪補正して制御する手段とを有することを特徴とする請求の範囲第1項に記載の制御装置内蔵型シリンダサーボモータ。
- 回転子を有するサーボモータ部と、このサーボモータ部の回転軸に設けられ、回転軸の回転動作を直線動作に変換する回転直線変換機構と、前記サーボモータ部の回転角度を検出する回転検出器と、前記サーボモータ部を制御する制御部とを備え、前記サーボモータ部と制御部とを機械的に一体化した制御装置内蔵型シリンダサーボモータにおいて、前記制御部に、前記回転検出器が検出する検出角度に対応して複数の位置決め誤差補正データを予め記憶したメモリと、制御装置内蔵型シリンダサーボモータを機械装置に組み込んだ状態で前記回転直線変換機構の出力軸をストロークエンド位置まで移動させた時における前記出力軸のストロークエンド推定位置を演算するとともに、この演算された出力軸のストロークエンド推定位置と機械装置固有のストロークエンド位置とを比較し、両者の間に差がある場合、その差に基づいて、位置決め誤差補正時に、前記メモリに記憶された複数の位置決め誤差補正データ中から前記差に基づく位置決め誤差を修正できる特定の位置決め誤差補正データを呼び出すデータ、または前記メモリに予め記憶された複数の位置決め誤差補正データそのものを修正するデータを演算する演算手段とを設けたことを特徴とする制御装置内蔵型シリンダサーボモータ。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2001/003636 WO2002091096A1 (fr) | 2001-04-26 | 2001-04-26 | Servomoteur de type verin a dispositif de commande integree |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2002091096A1 true JPWO2002091096A1 (ja) | 2004-08-26 |
Family
ID=11737280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002565152A Pending JPWO2002091096A1 (ja) | 2001-04-26 | 2001-04-26 | 制御装置内蔵型シリンダサーボモータ |
Country Status (4)
Country | Link |
---|---|
US (1) | US6979971B2 (ja) |
EP (1) | EP1302830A1 (ja) |
JP (1) | JPWO2002091096A1 (ja) |
WO (1) | WO2002091096A1 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7015670B2 (en) * | 2004-05-14 | 2006-03-21 | Moog Inc. | Method of controlling a high-friction electro-mechanical servo-mechanism to minimize the power needed to hold a loaded output member |
FR2873514B1 (fr) * | 2004-07-20 | 2006-11-17 | Virax Sa | Actionneur portatif lineaire et procede de limitation de l'effort maximal d'un moteur d'un tel actionneur |
JP4590968B2 (ja) * | 2004-07-27 | 2010-12-01 | パナソニック株式会社 | 便座装置 |
US7252026B2 (en) * | 2005-07-06 | 2007-08-07 | Johns Manville | Strand oscillator assembly for choppers and method |
PL1989019T3 (pl) * | 2006-03-02 | 2009-12-31 | Mikron Agie Charmilles Ag | Sposób i urządzenie do korekcji przemieszczenia dla obrabiarki |
JP4559982B2 (ja) * | 2006-03-02 | 2010-10-13 | 株式会社東海理化電機製作所 | 回転角度検出装置及びその初期設定方法 |
US7821220B2 (en) * | 2006-09-29 | 2010-10-26 | Rockwell Automation Technologies, Inc. | Motor having integral programmable logic controller |
JP2008225780A (ja) * | 2007-03-12 | 2008-09-25 | Okuma Corp | 工作機械における旋回軸のバックラッシ補正方法 |
GB0706524D0 (en) * | 2007-04-04 | 2007-05-09 | Goodrich Actuation Systems Ltd | Actuator arrangement |
EP2003526A1 (en) * | 2007-06-13 | 2008-12-17 | Carl Zeiss SMT Limited | Method and device for controlling and monitoring a position of a holding element |
US8324848B2 (en) * | 2009-02-05 | 2012-12-04 | Asm Assembly Automation Ltd | System for maintaining thermal stability of a motion stage |
CN101860123B (zh) * | 2009-04-13 | 2012-03-21 | 中山大洋电机股份有限公司 | 一种电机 |
US8318030B2 (en) * | 2009-07-13 | 2012-11-27 | Seagate Technology Llc | Magnetic device definition with uniform biasing control |
US20110095718A1 (en) * | 2009-10-26 | 2011-04-28 | Chin-Shiong Tsai | Servo motor system and operating method of the same |
JP2013023176A (ja) * | 2011-07-26 | 2013-02-04 | Mitsuba Corp | モータ制御装置 |
WO2015079499A1 (ja) * | 2013-11-26 | 2015-06-04 | 富士機械製造株式会社 | 機械装置の設計改善作業を支援する方法及び装置 |
JP6514034B2 (ja) * | 2015-05-27 | 2019-05-15 | オークマ株式会社 | 位置制御装置 |
EP3255385B1 (en) * | 2016-06-09 | 2019-01-30 | ams AG | A controller to reduce integral non-linearity errors of a magnetic rotary encoder |
JP6370866B2 (ja) * | 2016-12-01 | 2018-08-08 | ファナック株式会社 | サーボモータ制御装置、サーボモータ制御方法、及びサーボモータ制御用プログラム |
EP3438773B1 (de) * | 2017-08-04 | 2020-09-30 | Siemens Aktiengesellschaft | Bearbeitung von werkstücken mit modellgestützter fehlerkompensation |
US11385139B2 (en) | 2018-11-21 | 2022-07-12 | Martin E. Best | Active backlash detection methods and systems |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5981705A (ja) | 1982-11-02 | 1984-05-11 | Fanuc Ltd | Nc工作機械における補正方法 |
JPS61168005A (ja) | 1985-01-21 | 1986-07-29 | Mitsubishi Electric Corp | 数値制御装置 |
JPS62150405A (ja) | 1985-12-23 | 1987-07-04 | Omron Tateisi Electronics Co | 産業用ロボツト制御装置 |
JPS636604A (ja) | 1986-06-26 | 1988-01-12 | Mitsubishi Electric Corp | 数値制御システム |
JP2512727B2 (ja) * | 1986-11-25 | 1996-07-03 | 株式会社 アマダメトレツクス | サ−ボ制御装置 |
JPH03260708A (ja) * | 1990-03-09 | 1991-11-20 | Toshiba Mach Co Ltd | 位置誤差補正方法 |
JPH04142604A (ja) * | 1990-10-04 | 1992-05-15 | Fanuc Ltd | サーボモータの制御方式 |
JPH04169914A (ja) * | 1990-11-01 | 1992-06-17 | Fujitsu Ltd | サーボモータの速度制御装置 |
JPH0744222A (ja) * | 1993-07-28 | 1995-02-14 | Kubota Corp | 作業車の制御機構 |
JP3143310B2 (ja) * | 1994-02-25 | 2001-03-07 | 三菱電機株式会社 | 位置検出装置、補正機能付位置検出装置、位置検出方法、および、位置検出装置の補正方法 |
JPH0839399A (ja) | 1994-07-27 | 1996-02-13 | Okuma Mach Works Ltd | 工作機械の熱変位補正装置 |
JP3234177B2 (ja) * | 1997-07-01 | 2001-12-04 | ファナック株式会社 | 位置制御装置 |
JP4014719B2 (ja) * | 1998-02-19 | 2007-11-28 | 東芝機械株式会社 | Nc工作機械の制御装置および位置決め制御方法 |
JPH11305839A (ja) * | 1998-04-21 | 1999-11-05 | Fanuc Ltd | 複数のサーボモータの制御方法 |
EP1189331A1 (en) | 2000-02-25 | 2002-03-20 | Mitsubishi Denki Kabushiki Kaisha | Cylinder servomotor |
-
2001
- 2001-04-26 JP JP2002565152A patent/JPWO2002091096A1/ja active Pending
- 2001-04-26 WO PCT/JP2001/003636 patent/WO2002091096A1/ja not_active Application Discontinuation
- 2001-04-26 EP EP01925967A patent/EP1302830A1/en not_active Withdrawn
- 2001-04-26 US US10/297,434 patent/US6979971B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2002091096A1 (fr) | 2002-11-14 |
US6979971B2 (en) | 2005-12-27 |
EP1302830A1 (en) | 2003-04-16 |
US20030184252A1 (en) | 2003-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2002091096A1 (ja) | 制御装置内蔵型シリンダサーボモータ | |
JP5198514B2 (ja) | ロボット制御装置 | |
US6701212B2 (en) | Lost motion correction system and lost motion correction method for numerical control machine tool | |
JP5657633B2 (ja) | 移動体が反転するときの位置誤差を補正するサーボ制御装置 | |
EP1505463A2 (en) | Position control device and position control method for machine tools | |
JP4650062B2 (ja) | ロボット制御装置およびロボットの位置決め精度補正方法 | |
CN107263543A (zh) | 一种机器人关节的校准方法和计算装置 | |
US11126149B2 (en) | Control parameter adjusting device and adjusting method using machine learning | |
CN109562518B (zh) | 并联连杆机构的控制装置 | |
JP6457569B2 (ja) | サーボモータ制御装置、サーボモータ制御方法、及びサーボモータ制御用プログラム | |
JPH0722873B2 (ja) | 送り軸の位置制御装置 | |
JP2008041011A (ja) | 工作機械における位置補正方法 | |
WO2021124603A1 (ja) | モータ制御装置、モータ制御方法 | |
CN115373433B (zh) | 转台运动补偿方法、装置、设备及存储介质 | |
JP2001175313A (ja) | 数値制御システムおよびそれに用いられる位置指令値補正装置 | |
JP7003454B2 (ja) | 制御装置、位置制御システム、位置制御方法、および、位置制御プログラム | |
CN108803490A (zh) | 伺服电动机控制装置以及伺服电动机控制系统 | |
US11146191B2 (en) | Simulation device, simulation method, and simulation program for a motor control device | |
JPH10323070A (ja) | モータ制御装置 | |
JP7466801B1 (ja) | 制御装置、工作機械システム、および加工方法 | |
CN114310882B (zh) | 执行器电机端的位置确定方法、装置、设备及存储介质 | |
JP3291902B2 (ja) | サーボ制御装置 | |
CN115437238B (zh) | 直流电机驱动单杆系统的变长度pd型迭代学习控制方法 | |
JP4259961B2 (ja) | 制御対象モデルの物理特性算出式導出方法、制御対象モデルの物理特性算出方法 | |
JP2005292898A (ja) | サーボモータによる絶対位置決め装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20040709 |