(57)【要約】【課題】サーボオフして楕走で移動している制御軸をサーボオンして位置、速度の制御を開始するとき速度変化を少なくし滑らかに移行できるようにする。【解決手段】サーボモータ３に電流を流さないサーボオフの状態で該サーボモータ（制御軸）３が楕走して回転しているとき、サーボオンしてサーボモータに電流を流し、位置、速度制御を開始する。位置・速度検出器４よりサーボオン時の実速度を速度取得手段１３で取得し、位置指令手段１２は、この実速度を初速度として指令移動量を求める。この実速度に応じた位置偏差量を算出し（１４）、指令移動量、位置偏差量、サーボオン時の位置偏差カウンタ２１に残る位置偏差量の符号を反転した値を加算し（１５，１６）、位置偏差カウンタ２１への指令量とする。これにより、サーボオン時の楕走速度を初速度として位置、速度の制御が開始され、速度変化なく滑らかに位置、速度制御が開始できる。【選択図】図１
2007172394.tif 000002
【特許請求の範囲】
【請求項１】
指令位置と検出した実際の位置に基づいて位置偏差カウンタで位置偏差を求め、位置ループ制御を行って制御軸を駆動制御するサーボモータを制御する数値制御装置において、
前記制御軸の実速度を取得する実速度取得手段と、
前記サーボモータに電流を流さない状態から電流を流す状態に切り換えた時点における前記実速度取得手段により取得した実速度を初速度とし、指令移動量を求め、該指令移動量を前記位置偏差カウンタに出力する位置指令手段と、
前記切り換え時点の最初の移動指令出力周期に前記初速度に応じた位置偏差量を前記位置偏差カウンタに出力する手段と、
を有することを特徴とする数値制御装置。
【請求項２】
指令位置と検出した実際の位置に基づいて位置偏差カウンタで位置偏差を求め、位置ループ制御を行って制御軸を駆動制御するサーボモータを制御する数値制御装置において、
前記制御軸の実速度を取得する実速度取得手段と、
前記サーボモータに電流を流さない状態での前記実速度取得手段で取得された実速度を所定周期毎記憶する記憶手段と、
前記記憶手段で記憶した過去の１もしくは複数の実速度データにより、電流を流す状態に切り換えた時点の実速度を計算により予測する手段と、
電流を流す状態に切り換えた時点において前記予測された実速度を初速度とし、指令移動量を求め、該指令移動量を前記位置偏差カウンタに出力する位置指令手段と、
前記切り換え時点の最初の移動指令出力周期に前記初速度に応じた位置偏差量を前記位置偏差カウンタに出力する手段と、
を有することを特徴とする数値制御装置。
【請求項３】
サーボモータに電流を流す状態に切り換えるのは、外部からの信号入力によることを特徴とする請求項１又は請求項２に記載の数値制御装置。
【請求項４】
サーボモータに電流を流す状態への切り換えは、任意に設定した条件が成立した時点であることを特徴とする請求項１又は請求項２に記載の数値制御装置。
【請求項５】
指令位置と検出した実際の位置に基づいて位置偏差カウンタで位置偏差を求め、位置ループ制御を行って制御軸を駆動制御するサーボモータを制御する数値制御装置において、
前記制御軸の実速度を取得する実速度取得手段と、
前記サーボモータに電流を流さない状態で、前記実速度取得手段で取得された実速度が最高速度近傍に達したことを検出しサーボモータに電流を流す状態への切り換え指令を出力する最高速度検出手段と、
電流を流す状態に切り換える時点において前記最高速度検出手段で検出された実速度を初速度とし、指令移動量を求め、該指令移動量を前記位置偏差カウンタに出力する位置指令手段と、
前記切り換え時点の最初の移動指令出力周期に前記初速度に応じた位置偏差量を前記位置偏差カウンタに出力する手段と、
を有することを特徴とする数値制御装置。
【請求項６】
前記速度取得手段で取得した実速度を平均化して求める平均化手段を備え、前記最高速度検出手段は、この平均化された実速度が最高速度近傍に達したことを検出するようにした請求項５に記載の数値制御装置。
【請求項７】
前記最高速度検出手段の代わりに、前記サーボモータに電流を流さない状態で、前記実速度取得手段で取得された実速度が設定速度に達したことを検出しサーボモータに電流を流す状態へのに切り換え指令を出力する切換速度検出手段を備えた請求項５又は請求項６に記載の数値制御装置。
【請求項８】
前記切り換えた時点に位置偏差カウンタに残っている位置偏差量の符号を反転させて、前記切り換え時点の最初の移動指令出力周期に前記位置偏差カウンタに出力する手段を有することを特徴とした請求項１乃至７の内いずれか１項に記載の数値制御装置。
【請求項９】
前記実速度を初速度とする位置指令手段において、目標速度を実速度とすることにより、サーボモータに電流を流す状態にした時点の速度を保つことを特徴とした請求項１乃至８の内いずれか１項に記載の数値制御装置。
【請求項１０】
前記サーボモータを複数備え、該複数のサーボモータでそれぞれの前記制御軸を駆動し、１つの可動部を同期して駆動するタンデム制御を行う数値制御装置である請求項１乃至９の内いずれか１項に記載の数値制御装置。
【請求項１１】
安全条件が満たされていないときは、サーボモータに電流を流す状態に切り換えを行わないようにした請求項１乃至１０の内いずれか１項に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータの位置又は該サーボモータで駆動制御される制御軸の位置の制御に関し、特に、サーボモータに電流を流さない状態でサーボモータ（可動部）が楕走しているとき、サーボモータに電流を流し位置制御を開始するときの位置制御に特徴を有する数値制御装置に関する。
【背景技術】
【０００２】
機械等の可動部等の制御軸をサーボモータで駆動し、制御軸の位置を制御する数値制御装置においては、通常、位置ループ制御を行って、その位置の制御を行っている。  
又、制御装置によりサーボモータを駆動制御して被制御体の位置を目標位置まで位置制御を行い、その後、制御装置により被制御体の位置制御以外の制御を行うとき、制御装置は被制御体の指令位置と実際の位置との偏差を記憶する偏差カウンタに目標位置をセットし、この偏差カウンタにより目標位置の保持を行い（実質的な位置制御を行い）、制御装置は被制御体の位置制御以外の動作制御を行うようにしたものも知られている（特許文献１参照）。
【０００３】
又、ダイキャストマシンやプレス機械において、サーボモータによって可動側金型（制御軸）を駆動して金型の開閉を行う方式のものにおいては、金型を開くとき、大きな力を必要とすることから、可動側金型を駆動するサーボモータへの通電を遮断し電流を流さない状態（この状態を以下サーボオフという）とし、固定側金型側から油圧等でワーク及び可動側金型を突き上げ、金型が開き、可動側金型が楕走しているとき、サーボモータに電流を流す状態（以下この状態をサーボオンという）とし、可動側金型（制御軸）の位置制御を行うようにした方式も公知である。
【０００４】
【特許文献１】特公平６−６７５７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
サーボオフとして、サーボモータ及び可動部が楕走している状態で、サーボオンとして位置制御を開始すると、位置制御で用いられる位置偏差カウンタ（位置偏差）の影響により、サーボモータ及び制御軸は、一旦急減速してその後加速され、滑らかな移動ができないという問題がある。
【０００６】
図１２は、このサーボオフの状態において、サーボモータ（制御軸）が楕走している状態で、サーボオンとして位置制御を開始したときのサーボモータの速度変化を表したものである。サーボオフとされサーボモータに電流が流されないときは、サーボモータに対して位置の制御はなされない。そのため、サーボモータ等に取り付けられた位置検出器からの位置フィードバック信号のみが指令位置と実際の位置との位置偏差を記憶する位置偏差カウンタに入力され、該位置偏差カウンタはサーボモータの楕走による移動量が記憶されることになる。例えば、サーボオフになったとき、外力によってサーボモータが正方向に突き出され正方向に移動しているとすると、位置フィードバック信号は位置偏差カウンタの値を減算するように作用するから、負の位置偏差が増大することになる。
【０００７】
そして、サーボオンして再び位置制御を開始すると、この位置偏差カウンタに記憶された負の位置偏差によって、正方向に楕走中のサーボモータは負方向に駆動されることになり、急激に減速されることになる。若しくは、逆回転することになる。その後位置制御による位置指令により、サーボモータは加速されることになる。その結果、図１２に示すように、サーボオフからサーボオンして位置制御を開始した時点で、急激な減速、その後の加速という、急激な速度変化が生じ滑らかな移動ができないという問題がある。なお、フォローアップ処理によって、位置偏差カウンタの値は周期的に「０」にクリアされるとしても、サーボオンのタイミングによって、位置偏差カウンタに位置偏差が残り、上述したような速度変化が生じる。  
本発明は、このような従来技術の問題点を改善することを目的とするものである。
【課題を解決するための手段】
【０００８】
指令位置と検出した実際の位置に基づいて位置偏差カウンタで位置偏差を求め、位置ループ制御を行って制御軸を駆動制御するサーボモータを制御する数値制御装置において、請求項１に係る発明は、前記制御軸の実速度を取得する実速度取得手段と、前記サーボモータに電流を流さない状態から電流を流す状態に切り換えた時点における前記実速度取得手段により取得した実速度を初速度とし、指令移動量を求め、該指令移動量を前記位置偏差カウンタに出力する位置指令手段と、前記切り換え時点の最初の移動指令出力周期に前記初速度に応じた位置偏差量を前記位置偏差カウンタに出力する手段とを備え、サーボオフ状態からサーボオン状態に切り換えた時、その時の制御軸の楕走速度を初速度と制御し、滑らかな移行を可能とした。
【０００９】
又、請求項２に係る発明は、サーボモータに電流を流さない状態での前記実速度取得手段で取得された実速度を所定周期毎記憶する記憶手段と、前記記憶手段で記憶した過去の１もしくは複数の実速度データにより、電流を流す状態に切り換えた時点の実速度を計算により予測する手段と、電流を流す状態に切り換えた時点において前記予測された実速度を初速度とし、指令移動量を求め、該指令移動量を前記位置偏差カウンタに出力する位置指令手段と、前記切り換え時点の最初の移動指令出力周期に前記初速度に応じた位置偏差量を前記位置偏差カウンタに出力する手段とを備えて、遅れを考慮して制御軸の実速度を予測し、この予測した実速度に基づいて制御するようにした。
【００１０】
請求項３に係る発明は、サーボモータに電流を流す状態への切り換えを、外部からの信号入力によるものとし、請求項４に係る発明は、任意に設定した条件が成立した時点とした。
【００１１】
さらに、請求項５に係る発明は、サーボモータに電流を流さない状態で、前記実速度取得手段で取得された実速度が最高速度近傍に達したことを検出しサーボモータに電流を流す状態へ切り換え指令を出力する最高速度検出手段と、電流を流す状態に切り換える時点において前記最高速度検出手段で検出された実速度を初速度とし、指令移動量を求め、該指令移動量を前記位置偏差カウンタに出力する位置指令手段と、前記切り換え時点の最初の移動指令出力周期に前記初速度に応じた位置偏差量を前記位置偏差カウンタに出力する手段とを備え、制御軸が楕走しているときの最高速度近傍でサーボモータに電流を流し、位置、速度の制御を開始するようにした。さらに、請求項６に係る発明は、前記速度取得手段で取得した実速度を平均化して求める平均化手段を備え、前記最高速度検出手段は、この平均化された実速度が最高速度近傍に達したことを検出するようにした。
【００１２】
請求項７に係る発明は、前記最高速度検出手段の代わりに、前記サーボモータに電流を流さない状態で、前記実速度取得手段で取得された実速度が設定速度に達したことを検出しサーボモータに電流を流す状態へ切り換え指令を出力する切換速度検出手段を備えるものとした。又、請求項８に係る発明は、前記切り換えた時点に位置偏差カウンタに残っている位置偏差量の符号を反転させて、前記切り換え時点の最初の移動指令出力周期に前記位置偏差カウンタに出力する手段を有するものとし、切換時に位置偏差カウンタに残った位置偏差の影響がでないようにした。
【００１３】
また、請求項９に係る発明は、前記実速度を初速度とする位置指令手段において、目標速度を実速度とすることにより、サーボモータに電流を流す状態にした時点の速度を保つことを特徴とした。さらに、請求項１０に係る発明は、サーボモータを複数備え、該複数のサーボモータでそれぞれの前記制御軸を駆動し、１つの可動部を同期して駆動するタンデム制御を行う数値制御装置とした。又、請求項１１に係る発明は、安全条件が満たされていないときは、サーボモータに電流を流す状態に切り換えを行わないようにした。
【発明の効果】
【００１４】
サーボモータに電流を流さない状態で該サーボモータで駆動制御される制御軸が楕走している状態から、該制御軸の位置、速度を制御するためにサーボモータに電流を流して位置、速度制御状態に切り換えるとき、速度変化をなくし、滑らかな移動で切り換えることができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態を図面と共に説明する。  
図１は、本発明の第１の実施形態のブロック図である。  
従来の数値制御装置と同様に、数値制御部１とサーボ制御部２で構成され、数値制御部１から指令された移動指令に基づいて、サーボ制御部２はサーボモータ３の位置、速度、さらには電流ループ制御を行いサーボモータ（該サーボモータで駆動される制御軸）の位置、速度を制御する。従来の数値制御装置と相違する点は、数値制御部１において、速度取得手段１３、実速度に応じた位置偏差量算出手段１４及び加減算器１５，１６が追加して設けられている点、さらに、移動指令を出力する位置指令手段１２において、サーボオン時に現在の実速度を初速度として移動指令の分配処理を行う点で従来と相違するものである。
【００１６】
サーボモータ（該サーボモータで駆動される制御軸）３の位置制御を行うときには、位置指令手段１２は、従来と同様に、ＮＣプログラムで指令された移動指令や作業員が指令した移動指令に基づいて、移動指令の分配処理を行い、所定分配周期（移動指令出力周期）毎の分配指令移動量ＭＣＭＤを求め、加減算器１６を介してサーボ制御部２の位置偏差カウンタ２１に出力する。この場合、加減算器１５からの指令、フォローアップ手段１１からの指令はないので、位置指令手段１２で求められた指令移動量ＭＣＭＤがそのまま位置偏差カウンタ２１に加算される。
【００１７】
位置偏差カウンタ２１は、分配移動量ＭＣＭＤを加算すると共に、位置・速度検出器４からの位置フィードバック量を減算して位置偏差を求める。位置制御部２２では、この位置偏差に位置ループゲインを乗じて速度指令を求める。
【００１８】
加減算器２３は、この速度指令から位置・速度検出器４からフィードバックされる速度フィードバック量を減じて速度偏差を求め、速度制御部２４は、ＰＩ制御（比例積分制御）等の速度ループ制御を行いトルク指令（電流指令）を求め、加減速器２５は、トルク指令からアンプ２７に設けられた電流検出器からフィードバックされてくる電流フィードバック量を減じて電流偏差を求め、電流制御部２６で電流ループ制御を行い、アンプ２７を介して、サーボモータ３を駆動制御する。
【００１９】
上述した位置制御動作については、従来の数値制御装置における位置制御動作と変わりはない。
【００２０】
サーボモータ３の動力源をオフとして、サーボモータ３に電流を流さないサーボオフとしたとき、サーボモータ３は自由に回転可能となる。そのため、外力の油圧等で該サーボモータ３で駆動される制御軸（ダイキャストマシンやプレス機械において可動側金型等）が突き出されたとき、可動部及びサーボモータは楕走することになる。数値制御部１は、この楕走中のサーボモータ３の位置（制御軸の位置）を把握するためにフォローアップ手段１１を備え、サーボオフ時にはこのフォローアップ手段１１が作動する。
【００２１】
サーボモータ３の楕走に伴って、位置・速度検出器４からの位置フィードバック信号は位置偏差カウンタ２１に入力される。例えば、サーボモータ３がプラス方向に楕走しているとすると、位置偏差カウンタ２１には負の値が増加することになる。数値制御部のフォローアップ手段１１は、所定周期毎この位置偏差カウンタ２１の値を読み出し、該読み出した値によって、サーボモータ（可動部）３の現在位置を記憶する現在位置レジスタの値を更新すると共に、位置偏差カウンタ２１が「０」となるように、読み出した値の符号を反転した値を加減算器１６を介して位置偏差カウンタ２１に出力し、位置偏差カウンタを「０」とする。なお、このサーボオフ時には、位置指令手段１２からの指令、加減算器１５からの指令はない。  
以下、サーボオフの状態中は、フォローアップ手段１１が動作を繰り返し実行し、サーボモータの現在位置を更新しながら位置偏差カウンタを「０」にする。
【００２２】
こうしたサーボオフの状態から、サーボオフを解除しサーボモータ３を動力源に接続し、サーボモータ３に電流を流すサーボオン状態に切り換えると、位置制御が開始される。可動側金型（制御軸）がサーボモータで駆動されるダイキャストマシンやプレス機械等においては、可動側金型（制御軸）が油圧等の外力で固定側金型から突き出され、金型が開いたとき、サーボオンとされて位置制御が開始される。  
このサーボオンとなったとき、数値制御部１の速度取得手段１３は、位置・速度検出器４で検出しフィードバックされてくる実速度を取得し、この取得した実速度を位置指令手段１２に出力する。位置指令手段１２は、この実速度を初速度として分配指令移動量を求め出力する。又、実速度に応じた位置偏差量算出手段１４は、サーボオンとなった最初の分配周期のみ、速度取得手段１３で取得したこの実速度に応じた位置偏差量を算出する。加減算器１５では、この算出された位置偏差量と位置偏差カウンタに残る位置偏差量の符号を反転した値を加算する。この加算した値と、位置指令手段１２から出力される指令移動量を加減算器１６で加算し、位置偏差カウンタ２１に出力する。
【００２３】
実速度に応じた位置偏差量算出手段１４で求める実速度に応じた位置偏差量は、次のようにして求められる。
【００２４】
位置偏差量＝速度／位置ループゲイン
であるから、
サーボオン時の位置・速度検出器４で検出される実速度をＶ0、サーボオン時の実速度に相当する位置偏差量をＥＲＲｖ0とすると、
ＥＲＲｖ0＝Ｖ0／位置ループゲイン
となり、サーボオン時の実速度Ｖ0と位置ループゲインによって求められる。
【００２５】
又、位置指令手段１２で実速度を初速度として求めたサーボオン時の最初の分配周期の指令移動量をＭＣＭＤｖ0とし、サーボオン時に位置偏差カウンタ２１に残る位置偏差量をＥＲＲsvonとすると、
サーボオン時の最初の分配周期で位置偏差カウンタ２１に出力される指令値は
ＭＣＭＤｖ0＋ＥＲＲｖ0−ＥＲＲsvon
となる。そして、その後の分配周期では、位置指令手段１２で実速度を初速度としてプログラムや作業員が指令した移動指令に応じて求められた分配指令移動量が位置偏差カウンタ２１に出力されることになる。
【００２６】
図２は、このサーボオン時の指令移動量の変化を示す図である。
【００２７】
サーボオフでサーボモータ３が楕走している状態で、サーボオンされると、該サーボオン後の最初の分配周期では、上述したように「ＭＣＭＤｖ0＋ＥＲＲｖ0−ＥＲＲsvon」の指令値が位置偏差カウンタ２１に出力され、その後の周期では、位置指令手段１２で求められるプログラムや作業員が指令した移動指令に基づいて、速度取得手段１３で取得した実速度を初速度として、加減速処理された指令移動量が指令されることになる。
【００２８】
サーボオン時の最初の分配周期では「ＭＣＭＤｖ0＋ＥＲＲｖ0−ＥＲＲsvon」の移動指令量が出力されるが、まず、サーボオン時に位置偏差カウンタ２１に残る位置偏差量ＥＲＲsvonの符号を逆転した「−ＥＲＲsvon」が位置偏差カウンタ２１に加算されることによって、この位置偏差カウンタ２１に残っていた残移動量がクリアされる。又、サーボモータ３が今回の移動指令を出力するまでの時間、すなわち１分配周期間に移動している移動量（その時の実速度に対応する移動量）を示す「ＥＲＲｖ0」が位置偏差カウンタ２１に加算されるが、この値は、位置フィードバック量によって減算されることになるから、結局、位置偏差カウンタ２１に残る量は、位置指令手段１２で求め出力された指令移動量「ＭＣＭＤｖ0」となり、サーボモータ３はこの指令移動量「ＭＣＭＤｖ0」＝位置偏差量によって駆動されることになり、サーボオン時に楕走していた速度で駆動開始されることになり、図２に示すように、サーボモータ３の速度はサーボオン時に、急激に減速されるようなことはなく滑らかに駆動開始されることになる。
【００２９】
なお、上述した実施形態では、サーボオン時に位置偏差カウンタ２１に残る位置偏差量をＥＲＲsvonをサーボオン時の最初の分配周期に、その符号を逆転して位置偏差カウンタ２１に加算するようにしたが、サーボオンのタイミングをフォローアップ手段１１が位置偏差カウンタ２１を「０」にクリアするタイミングで行うようにすれば、この位置偏差量ＥＲＲsvonは、「０」となり、加減算器１５は必要なくこの位置偏差量ＥＲＲsvonをサーボオン時の最初の分配周期時に付勢する必要はなくなる。又、サーボオン時に位置偏差カウンタ２１に残る位置偏差量ＥＲＲsvonが無視できる程度の場合には、同様に、位置偏差量ＥＲＲsvonの符号を反転させて位置偏差カウンタ２１に加算する必要もなく加減算器１５は必要でなくなる。この場合におけるサーボオン時の指令移動量（サーボモータの速度）を図３に示す。
【００３０】
こうして駆動されたサーボモータは、図４に示すように、サーボオン時におけるサーボモータの楕走速度を初速度とし、その後、加速されてプログラムや作業員が指定した目標速度に制御されることになる。  
又、サーボオン時に取得した実速度を初速度及び目標速度とすることによって、図５に示すような、サーボオン後の速度を一定にする制御もできる。
【００３１】
図６は、サーボオフの状態から、サーボオンしたときの数値制御部１のプロセッサが所定分配周期毎実施する処理のフローチャートである。  
ＮＣプログラム若しくは作業員が指令した終点まで制御軸（サーボモータ３）が達したか判断し（ステップＳ１）、達してなければサーボオンした最初の周期か判断し（ステップＳ２）、最初の周期である場合には、位置・速度検出器４から出力される実速度Ｖ0を読み取り（ステップＳ３）、該実速度Ｖ0に相当する位置偏差ＥＲＲｖ0を計算する（ステップＳ４）。
【００３２】
ＥＲＲｖ0＝Ｖ0／位置ループゲイン
次に、この時点（サーボオン時）で位置偏差カウンタ２１に記憶する位置偏差量ＥＲＲsvonを読み取る（ステップＳ５）。又、ステップＳ３で読み出した実速度Ｖ0を初速度とし、該実速度Ｖ0に応じた分配移動指令量ＭＣＭＤｖ0を算出する（ステップＳ６）。  
このステップＳ６で求めた分配移動指令量ＭＣＭＤｖ0と、ステップＳ４で求めた実速度Ｖ0に相当する位置偏差ＥＲＲｖ0を加算し、かつ、ステップＳ５で求めた位置偏差量ＥＲＲsvonの符号を反転して加算し指令移動量Ｐoutを求める（ステップＳ９）。
【００３３】
Ｐout＝ＭＣＭＤｖ0＋ＥＲＲｖ0−ＥＲＲsvon
求められた指令移動量Ｐoutを位置偏差カウンタ２１に出力し、当該周期の移動指令の分配処理は終了する。
【００３４】
次の周期では、サーボオン直後の周期ではないので、ステップＳ２からステップＳ９に移行しＮＣプログラム又は作業員が指令した指令速度に基づいてサーボオン時の実速度Ｖ0を初速度として、分配移動指令量ＭＣＭＤを求める。そして、この分配移動指令量ＭＣＭＤを指令移動量Ｐoutとして設定し（ステップＳ１０）、ステップＳ８に移行し、該指令移動量Ｐoutを位置偏差カウンタ２１に出力し、当該周期の移動指令の分配処理は終了する。
【００３５】
サーボ制御部２は、こうして位置偏差カウンタ２１に入力された指令移動量に基づいて、従来と同様に、位置、速度、電流のループ制御を実施し、サーボモータ（制御軸）３の位置、速度を制御する。
【００３６】
図７は、本発明の第２の実施形態の要部ブロック図である。この第２の実施形態では、速度取得手段１３で取得した実速度を記憶する記憶手段１７と、該記憶手段１７に記憶された実速度より当該分配周期における実際の速度を予測する速度予測手段１８が追加された点で第１の実施形態と相違する。他は第１の実施形態と同様である。
【００３７】
制御軸（サーボモータ）の実速度は、位置・速度検出器４で検出されるものであるが、通常遅延が存在するために、得られた実速度は過去の情報である。定常状態で速度変化がない場合には、検出速度が実際の速度として使用しても問題はないが、サーボオフした状態で、制御軸（可動部）を外力で突き出したような場合、制御軸は過度状態であり、速度は常に変化しており、位置・速度検出器４で検出された実速度と実際のサーボオン時の速度が乖離していることが考えられ、この遅れを無視できない場合がある。
【００３８】
そこで、この第２の実施形態では、今回得られた実速度と前回得られた実速度より、実際にサーボオンする時点での実速度を予測することで、制御の精度を向上させたものである。  
この予測を一次式を用いて行うとすると、実速度の予測値Ｖ’0は、今周期での実速度と前周期の実速度から次の一次式を演算することによって予測する。
【００３９】
Ｖ’0＝（今周期の実速度−前周期の実速度）＋今周期の実速度
なお、この実速度の予測は、必要に応じて２次式や任意の関数を用いて予測するようにしてもよいことはもちろんである。
【００４０】
上述した一次式で実速度を予測する場合には、記憶手段１７に、少なくとも前周期において取得した実速度を記憶するようにし、速度予測手段１８は、この記憶手段１７に記憶した前周期の実速度と当該周期において取得した実速度に基づいて、上述した一次式の演算を行なうことによって予測実速度Ｖ’0を求め、位置指令手段１２及び実速度に応じた位置偏差量算出手段１４に出力するようにする。その後の処理は第１の実施形態と同じである。
【００４１】
なお、この第２の実施形態では、サーボオフ状態時には、位置・速度検出器４で検出で検出される実速度を所定周期毎読み取り順次記憶し、サーボオン時には、図６に示す処理を開始するが、ステップＳ３の処理が、記憶した前回の実速度と今回の実速度より予測実速度Ｖ’0を求める処理に代わり、又ステップＳ４，Ｓ６の処理も実速度Ｖ0の代わりにこの予測実速度Ｖ’0に変わる点が相違するのみである。
【００４２】
図８は、本発明の第３の実施形態の要部ブロック図である。この第３の実施形態は、第１の実施形態と比較し、取得した実速度を平均化する平均化手段１９，及び最高速度検出手段２０を備えている点、及び、該最高速度検出手段２０がサーボオン信号を出力するようにしている点で、第１の実施形態と相違する。他の構成は第１の実施形態と同一である。
【００４３】
ダイキャストマシンやプレス機械において、型開き時に、サーボオフして固定側金型側からサーボモータで駆動される可動側金型（制御軸）及びワークを油圧装置等で突き出し、突き出されて楕走している状態でサーボオンして可動側金型（制御軸）の位置を制御する場合等においては、可動側金型（制御軸）がその楕走で最高速度に達した状態でサーボオンすることが望ましい。
【００４４】
そこで、この第３の実施形態では、フィルタ等の平均化手段１９と最高速度検出手段２０を第１の実施形態に追加している。この第３の実施形態では、速度取得手段１３で所定周期毎取得した実速度を平均化手段１９で、現時点よりも過去複数回の取得実速度を記憶しておき、その平均値を求め、最高速度検出手段２０に出力する。最高速度検出手段２０では、前回の平均実速度と今回の平均実速度を比較し、今回の平均実速度が低い場合には、最高速度検出とする。すなわち、この処理によって最高速度近傍の速度を検出することができる。そして、このときの平均実速度を位置指令手段１２及び実速度に応じた位置偏差量算出手段１４に出力すると共に、サーボオン信号を出力し、サーボモータ３を動力源に接続し電流を流し、サーボモータ３の位置制御を開始する。以後の動作は、第１の実施形態と同じである。
【００４５】
なお、この第３の実施形態では、フィルタ等の平均化手段１９を設けたが、これは、制御軸（可動側金型等のサーボモータで駆動制御される制御軸）が楕走で移動しているとき、その速度が必ずしも単調に増加するとは限らないことから、平均を取って平滑したものであり、必ずしもこの平均化手段１９を設ける必要はない。  
図９は、この第３の実施形態におけるサーボモータ（制御軸）の速度変化を示す一例であり、楕走中の最高速度近傍でサーボオンとされ、位置制御が開始され、目標速度まで、駆動されている。
【００４６】
又、実験等によって予めサーボオンに切り換える最適速度を求め、この速度をサーボオン切換速度として検出する切換速度検出手段を最高速度検出手段の代わりに設けておき、該切換速度検出手段が平均化手段１９の出力又は速度取得手段１３の出力が設定されたサーボオン切換速度以上に達したとき、サーボオン信号を出力し、位置指令手段１２，実速度に応じた位置偏差量算出手段１４にその時の速度（平均化手段１９から出力される平均速度又は速度取得手段１３から出力される実速度）を出力するようにする。
【００４７】
この第３の実施形態での数値制御部１のプロセッサが実施する処理は、サーボオフの状態時に図８における速度取得手段１３，平均化手段１９、最高速度検出手段２０の処理を実行することになる。すなわち、所定周期毎位置・速度検出器４からフィードバックされる実速度を読み取り、該実速度と過去複数回の実速度との平均を求め該平均値が前回より小さくなったか判断し、小さくなったとき、その時の速度を最高速度（の近傍の値）と判断し、サーボオン信号を出力し、図６に示す処理を実行することになるが、このとき、ステップＳ３（さらにはステップＳ４、Ｓ６）での現在速度Ｖ0を最高速度として判断した速度に置き換える点が相違するのみで、他は図６に示す処理と同じである。
【００４８】
前述した第１，第２の実施形態では、サーボオフの状態からサーボオンに切り換えるタイミングについては、述べなかったが、第１、第２の実施形態では、サーボオフ状態からサーボオン状態に切り換えるタイミングは任意に設定できるものであり、リミットスイッチ等により制御軸（可動側金型等のサーボモータで駆動される可動部）の位置を検出し、このリミットスイッチ等の外部信号に基づいてサーボオンとしてもよく、又、フォローアップ手段によって、位置偏差カウンタの値を読み出し、現在位置レジスタを更新し、制御軸（サーボモータ）の現在位置を更新記憶していることから、この現在位置記憶レジスタに記憶された現在位置が設定位置に達したときサーボオンとすればよいものである。
【００４９】
なお、サーボオンとしてサーボモータに電流を流すタイミングは、上述したように、制御軸（サーボモータ）が設定された位置に到達したとき、外部からの信号、さらには第３の実施形態のように、最高速度近傍に達した時としたが、安全性を考慮すると、これらの条件が成立しても、サーボオンに移行しない方が安全であることがある。例えば、安全柵が開いて、この数値制御装置が制御するダイキャストマシンやプレス機械等の近傍に人間が立ち入っている可能性があり、危険なとき、又は扉が開いており、このままサーボオンしサーボモータを駆動すると危険な場合などの安全条件が満たされていないときには、サーボオンしてサーボモータに電流を流さないように、サーボオン信号をブロックするようにする。
【００５０】
上述した各実施形態は、１つの可動部を１つのサーボモータで駆動する例であるが、可動部が大型になったときでは、２以上のサーボモータによってこの大型の可動部を駆動制御するタンデム制御が採用される。本発明は、このタンデム制御にも適用できるものであり、図１０は、このタンデム制御を行う本発明の第４の実施形態のブロック図である。
【００５１】
この実施形態では第１と第２の２つのサーボモータ３，３’で可動部を駆動制御する例を示している。第１、第２のサーボモータ３，３’を駆動制御するサーボ制御系は、ほぼ同じであるが、第２のサーボモータ３’に対して移動指令を出力する数値制御部１の構成に、位置指令手段１２に代えて、実速度に応じた指令移動量を算出する位置指令算出手段３０とスイッチ３１が設けられている点で相違するものである。
【００５２】
１つの可動部を駆動するために第１，第２のサーボモータ３，３’は同期して駆動されるため、通常は同一の移動指令が各サーボモータ３，３’の各サーボ制御部２，２’に出力される。しかし、サーボオフからサーボオンにしたとき、最初の分配周期では、各サーボモータ３，３’の速度、及び各位置偏差カウンタ２１，２１’の値に基づいた移動指令がそれぞれのサーボ制御部２，２に出力されることから、位置指令算出手段３０とスイッチ３１が設けられているものである。
【００５３】
サーボオンして通常の動作制御を行う場合には、スイッチ３１は、位置指令手段１２側に接続されており、サーボ制御部２，２’には分配周期毎に同一の指令移動量が出力され、第１，第２のサーボモータ３，３’は同期して駆動される。  
一方、サーボオフとされると、第１，第２のサーボモータ３，３’はそれぞれ楕走することになる。また、このサーボオフの間は、前述したようにフォローアップ手段１１、１１’によって各位置偏差カウンタ２１，２１’は順次「０」にクリアする処理がなされる。
【００５４】
次に、サーボオンとされたとき、第１のサーボ制御部２に対しては、第１の実施形態と同一の処理がなされ、サーボオンの最初の分配周期には、前述したように、位置偏差カウンタ２１には、「ＭＣＭＤｖ0＋ＥＲＲｖ0−ＥＲＲsvon」の指令が入力され、その後は、位置指令手段で求められた分配周期毎の移動量が入力されることになる。
【００５５】
一方、サーボオンの最初の分配周期には、スイッチ３１が位置指令算出手段３０側に接続される。該位置指令算出手段３０は、速度取得手段１３’で取得したこの第２のサーボモータ３’の実速度に基づいてこの最初の分配周期での指令移動量ＭＣＭＤｖ0’を求める。この位置指令算出手段３０から出力される指令移動量ＭＣＭＤｖ0’と、位置偏差量算出手段１４’で求めた第２のサーボモータ３’の実速度に応じた位置偏差量ＥＲＲｖ0’と、位置偏差カウンタ２１’に残る位置偏差量の符号を反転した値−ＥＲＲsvon’を加算した値の指令「ＭＣＭＤｖ0’＋ＥＲＲｖ0’−ＥＲＲsvon’」が位置偏差カウンタ２１’に出力され、次の分配周期からはスイッチ３１は位置指令手段１２側に接続され、位置指令手段１２から出力される移動移動量が位置偏差カウンタ２１’に入力されることになる。
【００５６】
図１１は、この第４の実施形態におけるサーボオフの状態から、サーボオンしたときの数値制御部１のプロセッサが所定分配周期毎実施する処理のフローチャートである。この処理は第１の実施形態と同様（ステップＳ１’〜ステップＳ１０’はステップＳ１〜ステップＳ１０に対応する）であるが、第２のサーボモータ３’に対する移動指令をも出力するようにした点が相違するもので、第２のサーボモータ３の実速度Ｖ0’を求める点（ステップ３）、第２サーボモータ３用の位置偏差ＥＲＲＶ0’（ステップＳ４）、サーボオン時の第２のサーボモータ３’用の位置偏差カウンタ２１’の値ＥＲＲsvon’を読み取る点（ステップＳ５）、第２のサーボモータ３’の実速度Ｖ0’に応じた分配移動量ＭＣＭＤＶ0’を計算する点（ステップＳ６）、第２のサーボモータ３’用の指令移動量Ｐout’を求め出力する点（ステップＳ７，Ｓ８）が追加されたこと、及びサーボオンした周期の次の周期からは求められた分配移動量ＭＣＭＤを第１，第２のサーボモータ３、３’用の指令移動量Ｐout、Ｐout’にする点で相違するのみであり、処理動作は同等であるから、詳細の説明は省略する。
【００５７】
複数のサーボモータで１つの可動部を同期して駆動する場合、サーボオフとしても各サーボモータは、可動部で連結されているからほぼ同期して楕走することになる。そのため、上述した第４の実施形態において、位置指令算出手段３０及びスイッチ３１を設けずに位置指令手段１２の出力を加減算器１６’に直接入力するようにしてもよい。この場合、第１のサーボモータ３の実速度に応じた指令移動量が第２のサーボモータ３’に出力されることになるが、第１、第２のサーボモータ３、３’の実速度には大きな差がないから、第２のサーボモータ３’の速度がサーボオン時に急激に変化することはない。なお、この場合、図１１に示す処理ではステップＳ６’では第２のサーボモータ３用の分配移動指令量ＭＣＭＤＶ0’は求められず、ステップＳ７’では、分配移動指令量ＭＣＭＤＶ0’の代わりに第１のサーボモータ３用の分配移動指令量ＭＣＭＤＶ0が用いられて指令移動量Ｐout’が求められる。
【００５８】
又、第２、第３の実施形態で示した速度を予測する方法、最高速度付近でサーボオンさせる方法もこのタンデム制御に適用できるものである。ただし、第３の実施形態で示した最高速度近傍を検出してサーボオンさせる方法は、同一可動部を同期して駆動するサーボモータのいずれか１つの最高速度近傍を検出し、その時の速度に基づいて各サーボモータに対する移動指令値を求めるようにする。即ち、１つのサーボモータに対してのみ図８における最高速度検出手段２０を設ければよいものである。
【００５９】
又、タンデム制御として、複数のサーボモータで駆動される可動部の位置速度を検出する位置・速度検出器を設けるか、又は１つのサーボモータのみに１つ設けて、この位置・速度検出器からフィードバックされる位置、速度に基づいて各サーボモータをフィードバック制御して駆動制御する場合には、図１に示した加減算器１６の出力を各サーボモータのサーボ制御部にそれぞれ出力すればよいものとなる。又、トルクタンデム制御の場合には、位置、速度フィードバック処理は共通でトルク指令値が各サーボモータの電流制御部に出力されることになるから、このトルクタンデム制御の場合は、図１において、速度制御部２４で求められたトルク指令が、同一可動部を駆動する他のサーボモータの電流制御部へも出力されることになる点で相違するのみとなる。
【産業上の利用可能性】
【００６０】
本発明は、可動側金型をサーボモータで駆動し、型開閉を行うダイキャストマシンやプレス機械等において、型開き時に、サーボオフして可動側金型を固定側金型側から油圧機構等の外力により突き出し、型開きさせ、その後、可動金型がこの突き出しによって楕走している途中で、サーボオンしてサーボモータに電流を流し可動側金型の位置、速度を制御するようにしたものに適用できるものである。これ以外にも、サーボオフして楕走している制御軸をサーボオンして該制御軸を駆動するサーボモータに電流を流し、該制御軸の位置、速度を制御する場合に適用するものである。
【図面の簡単な説明】
【００６１】
【図１】本発明の第１の実施形態のブロック図である。
【図２】同第１の実施形態におけるサーボオン時の指令移動量の変化を示す図である。
【図３】同第１の実施形態において、サーボオン時に位置偏差量が無視できる場合における指令移動量の変化を示す図である。
【図４】同第１の実施形態においてサーボオン前後のサーボモータの速度を示す図である。
【図５】同第１の実施形態において、サーボオン時に取得した実速度を初速度及び目標速度としたときのサーボモータの速度を示す図である。
【図６】同第１の実施形態において、サーボオンしたときの数値制御部のプロセッサが所定分配周期毎実施する処理のフローチャートである。
【図７】本発明の第２の実施形態の要部ブロック図である。
【図８】本発明の第３の実施形態の要部ブロック図である。
【図９】同第３の実施形態において、サーボオン前後のサーボモータの速度を示す図である。
【図１０】本発明の第４の実施形態の要部ブロック図である。
【図１１】同第４の実施形態において、サーボオンしたときの数値制御部のプロセッサが所定分配周期毎実施する処理のフローチャートである。
【図１２】従来技術において、サーボオフの状態からサーボオンとして位置制御を開始したときのサーボモータの速度変化を表したものである。
【符号の説明】
【００６２】
１  数値制御部
２  サーボ制御部
３  サーボモータ
４  位置・速度検出器
【図１】
2007172394.tif 000003
【図２】
2007172394.tif 000004
【図３】
2007172394.tif 000005
【図４】
2007172394.tif 000006
【図５】
2007172394.tif 000007
【図６】
2007172394.tif 000008
【図７】
2007172394.tif 000009
【図８】
2007172394.tif 000010
【図９】
2007172394.tif 000011
【図１０】
2007172394.tif 000012
【図１１】
2007172394.tif 000013
【図１２】
2007172394.tif 000014