(57)【特許請求の範囲】
【請求項１】
サーボコントローラ部によって制御されるサーボモータで駆動される複数軸を備えた産業用機械を実動作速度より小さい速度で動作させてその動作軌跡を確認する産業用機械の動作確認方法において、
前記実動作速度に基づく各軸動作指令値ωｊを前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータに入力し、前記シミュレータからの出力ωｓｊを、所定の正の実数Ｐで除した量ωｓｊ／Ｐを各軸動作指令値とし、前記サーボコントローラ部にＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）指令することを特徴とする産業用機械の動作確認方法。
【請求項２】
サーボコントローラ部によって制御されるサーボモータで駆動される複数軸を備えた産業用機械を実動作速度より小さい速度で動作させてその動作軌跡を確認する産業用機械の動作確認方法において、
前記実動作速度に基づく各軸動作指令値ωｊを所定の正の実数Ｐで除した量ωｊ／Ｐを前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータにＮ回（ただしＮは前記実数Ｐを越えない最大の自然数）入力し、前記シミュレータからの出力ωｓｉｊを各軸動作指令値として、前記サーボコントローラ部に指令することを特徴とする産業用機械の動作確認方法。
【請求項３】
前記実動作速度が所定の値より小さいときは、前記実数Ｐの値を１．０とすることを特徴とする請求項１または請求項２に記載の産業用機械の動作確認方法。
【請求項４】
前記シミュレータからの各軸指令ωｓｊがあらかじめ軸ごとに決められた値より小さいときは、前記実数Ｐの値を１．０とすることを特徴とする請求項１または請求項２に記載の産業用機械の動作確認方法。
【請求項５】
前記各軸動作指令値ωｊがあらかじめ軸ごとに決められた値より小さいときは、前記実数Ｐの値を１．０とすることを特徴とする請求項１または請求項２に記載の産業用機械の動作確認方法。
【請求項６】
サーボコントローラ部によって制御されるサーボモータで駆動される複数軸を備えた産業用機械を実動作速度より小さい速度で動作させてその動作軌跡を確認する産業用機械の動作確認方法において、
前記産業機械を実動作速度で動作させてその動作軌跡を所定のサンプリングタイム毎の前記産業機械の位置をｎ＋１個（ただしｎは自然数）の点列として記憶する段階と、前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換する段階と、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令することを特徴とする産業用機械の動作確認方法。
【請求項７】
前記産業機械のサーボコントローラ部に状態推定オブザーバを接続して、前記産業機械を実動作速度で動作させてその動作軌跡を前記状態推定オブザーバで推定することを特徴とする請求項６に記載の産業用機械の動作確認方法。
【請求項８】
前記サーボモータに与える電流指令値を入力して、前記産業用機械の動作を求めるメカシミュレーション部を前記産業機械のサーボコントローラ部に接続して、前記産業機械が実動作速度で動作する時の動作軌跡を前記メカシミュレーション部で作成することを特徴とする請求項６に記載の産業用機械の動作確認方法。
【請求項９】
前記サーボモータで駆動される軸の回転角度指令を入力して、前記産業用機械の動作を求めるサーボ・メカシミュレーション部を前記産業機械のサーボコントローラ部に接続して、前記産業機械が実動作速度で動作する時の動作軌跡を前記サーボ・メカシミュレーション部で作成することを特徴とする請求項６に記載の産業用機械の動作確認方法。
【請求項１０】
サーボモータで駆動される複数軸を備えた産業用機械の動作プログラムを記憶し再生する動作指令データ記憶部と、前記動作指令データ記憶部の指令を受けて、前記複数軸の各軸の動作指令を作成する軸動作指令作成部と、前記軸動作指令作成部の各軸動作指令を受けて前記サーボモータに駆動電流を供給するサーボコントローラを備えた産業機械の制御装置において、
前記軸動作指令作成部とサーボコントローラ部の間に、前記各軸動作指令を受けて前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータと、前記シミュレータの出力ωｓｊを、所定の正の実数Ｐで除した値を前記サーボコントローラ部にＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）指令する低速指令変換部を備えたことを特徴とする産業機械の制御装置。
【請求項１１】
サーボモータで駆動される複数軸を備えた産業用機械の動作プログラムを記憶し再生する動作指令データ記憶部と、前記動作指令データ記憶部の指令を受けて、前記複数軸の各軸の動作指令を作成する軸動作指令作成部と、前記軸動作指令作成部の各軸動作指令を受けて前記サーボモータに駆動電流を供給するサーボコントローラを備えた産業機械の制御装置において、
前記軸動作指令作成部とサーボコントローラ部の間に、前記各軸動作指令を所定の正の実数Ｐで除した値をＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）出力する低速指令変換部と、前記低速指令変換部の出力を受けて前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータを備えたことを特徴とする産業機械の制御装置。
【請求項１２】
サーボモータで駆動される複数軸を備えた産業用機械の動作プログラムを記憶し再生する動作指令データ記憶部と、前記動作指令データ記憶部の指令を受けて、前記複数軸の各軸の動作指令を作成する軸動作指令作成部と、前記軸動作指令作成部の各軸動作指令を受けて前記サーボモータに駆動電流を供給するサーボコントローラを備えた産業機械の制御装置において、
前記サーボコントローラ部に接続されて前記産業機械の位置を推定する状態推定オブザーバと、前記状態推定オブザーバによって推定された前記産業機械の位置を一定周期で記憶して前記産業機械の動作軌跡をｎ＋１個の点列として記憶する動作結果記憶部と、前記動作結果記憶部に記憶された前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換し、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令する低速指令変換部を備えたことを特徴とする産業機械の制御装置。
【請求項１３】
サーボモータで駆動される複数軸を備えた産業用機械の動作プログラムを記憶し再生する動作指令データ記憶部と、前記動作指令データ記憶部の指令を受けて、前記複数軸の各軸の動作指令を作成する軸動作指令作成部と、前記軸動作指令作成部の各軸動作指令を受けて前記サーボモータに駆動電流を供給するサーボコントローラを備えた産業機械の制御装置において、
前記サーボコントローラ部に接続されて、前記サーボモータに与える電流指令値を入力して前記産業用機械の動作を求めるメカシミュレーション部と、前記メカシミュレーション部によって推定された前記産業機械の位置を一定周期で記憶して前記産業機械の動作軌跡をｎ＋１個の点列として記憶する動作結果記憶部と、前記動作結果記憶部に記憶された前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換し、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令する低速指令変換部を備えたことを特徴とする産業機械の制御装置。
【請求項１４】
サーボモータで駆動される複数軸を備えた産業用機械の動作プログラムを記憶し再生する動作指令データ記憶部と、前記動作指令データ記憶部の指令を受けて、前記複数軸の各軸の動作指令を作成する軸動作指令作成部と、前記軸動作指令作成部の各軸動作指令を受けて前記サーボモータに駆動電流を供給するサーボコントローラを備えた産業機械の制御装置において、
前記サーボモータで駆動される軸の回転角度指令を入力して、前記産業用機械の動作を求めるサーボ・メカシミュレーション部と、前記サーボ・メカシミュレーション部によって推定された前記産業機械の位置を一定周期で記憶して前記産業機械の動作軌跡をｎ＋１個の点列として記憶する動作結果記憶部と、前記動作結果記憶部に記憶された前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換し、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令する低速指令変換部を備えたことを特徴とする産業機械の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、動作プログラムに従って、サーボモータで駆動される複数軸を持つ産業用機械の実動作軌跡を低速で確認する場合の動作確認方法および、前記確認方法の実施に適した制御装置に関する。
【０００２】
【従来の技術】
通常、複数軸を持つ産業用機械（産業用ロボットやマシニングセンタ）で作業（溶接や切削など）をさせる場合、あらかじめ、動作プログラムを作成し、そのプログラムに書かれている動作指令を順次読み込むことによって指令どおりに動作させるようにしている。
【０００３】
図１３は従来の産業用機械の制御装置の基本的な構成を示す構成図である。図において、１は産業用機械の制御装置であり、制御装置１は動作指令データ記憶部２と軸動作指令作成部３とサーボコントローラ部４から構成されている。また５は制御対象の産業用機械を駆動するサーボモータである。
動作指令データ記憶部２はあらかじめ作成した動作プログラムを記憶し、再生する装置である。動作プログラムの実行に当たっては動作指令データ記憶部２から指令データが軸動作指令作成部３に順次読み込まれる。指令データは制御対象の産業用機械の制御点、つまり産業用ロボットならばエンドイフェクタ取付け部、マシンニングセンタならば工具取付けの基準とされる点の位置と速度であり、位置P ｉ（ｉ＝０〜Ｎ−１；Ｎは全動作点数）と速度V ｔｉ（Ｐｉ〜Ｐｉ＋１までの動作速度）が軸動作指令作成部３に順次読み込まれる。
軸動作指令作成部３ではこの指令データを各軸のサーボモータ５の動作指令（単位時間あたりの動作量）ωｊ（ｊ＝１、、、Ｍ；Ｍは軸数）に変換する。
この動作は、一般の産業用ロボットでは逆変換、マシニングセンタ等で使われるＮＣ装置では、パルス分配と呼ばれている。ここで作成された各軸動作指令ωｊは、サーボコントローラ部４へ送られ、サーボコントローラ部４では、指令ωｊどおりにサーボモータ５の各軸が動作するように制御している。
【０００４】
このような構成を持つ産業用機械では、実際の作業（溶接や切削など）を行う前に動作プログラムが意図したとおりにできているか動作確認する必要がある。つまり産業用機械の制御点が意図した通りの軌跡を描いて動作するか否かを確認するのである。その際、動作プログラムで指令した速度（以下、実動作指令速度）どおりにすると、もし、プログラムが不適切であった場合には、作業対象ワークや治具が破損するばかりでなく、作業者が危険である。そのため、実動作指令速度でなく、それより遅い速度で動作させることが行われている。
産業用機械を低速で動作させるために、図１４に示すように、動作指令データ記憶部２から読み出された実動作指令速度Ｖｔｉを軸動作指令作成部３へ送る前に低速指令変換部６をとおすことが行われている。低速指令変換部６では、あらかじめ指定された割合α（０＜α＜１）まで指令速度が減少される。つまり、V ｉａ=Vｔｉ* αをあらたな指令速度として軸動作指令作成部３へ送られる。
【０００５】
【発明が解決しようとする課題】
ところが、この従来の制御装置で動作確認を行おうとすると次のような問題があった。図１５は従来の制御装置による産業用機械の動作確認方法の問題を説明する動作軌跡の比較図である。図において、Ｐ０は産業用機械の制御点の初期位置である。今制御点が点Ｐ０から点Ｐ１に一定速度で進み、次に点Ｐ１から点Ｐ２へ一定速度で進む逆Ｌ字型の経路をたどる動作プログラムを組んだ時、低速指令変換部を通さない実作業時の動作軌跡はＣ０のように、点Ｐ１を通らず大きく内側にカーブを描く。これはいわゆるサーボ遅れに起因する内回りと呼ばれる現象であり、速度が大いほど大きなカーブになる。一方、低速指令変換部を通して速度を小さくすると動作軌跡はＣ１のように、動作軌跡Ｃ０の外側に小さなカーブを描く。つまり低速で動作確認するときの動作軌跡は、実動作速度での動作軌跡を再現しないという問題があった。
そこで、本発明は、動作プログラムの修正作業の効率を高めるため、動作確認時（ティーチモード）と実作業時（プレイモード）での動作軌跡が、できるだけ同一になるような動作確認方法を提供することを目的とする。また、そのための制御装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記問題を解決するため、
請求項１に記載の発明は、サーボコントローラ部によって制御されるサーボモータで駆動される複数軸を備えた産業用機械を実動作速度より小さい速度で動作させてその動作軌跡を確認する産業用機械の動作確認方法において、
前記実動作速度に基づく各軸動作指令値ωｊを前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータに入力し、前記シミュレータからの出力ωｓｊを、所定の正の実数Ｐで除した量ωｓｊ／Ｐを各軸動作指令値として、前記サーボコントローラ部にＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）指令するものである。
【０００７】
また請求項２に記載の発明は、  前記実動作速度に基づく各軸動作指令値ωｊを所定の正の実数Ｐで除した量ωｊ／Ｐを前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータにＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）入力し、前記シミュレータからの出力ωｓｉｊを各軸動作指令値として、前記サーボコントローラ部に指令するものである。
【０００８】
また請求項４に記載の発明は、前記実動作速度が所定の値より小さいときは、前記実数Ｐの値を１．０とするものである。
また請求項４に記載の発明は、前記シミュレータからの各軸指令ωｓｊがあらかじめ軸ごとに決められた値より小さいときは、前実数Ｐの値を１．０とするものである。
【０００９】
また請求項５に記載の発明は、前記各軸動作指令値ωｊがあらかじめ軸ごとに決められた値より小さいときは、前記実数Ｐの値を１．０とするものである。
【００１０】
また請求項６に記載の発明は、前記産業機械を実動作速度で動作させてその動作軌跡を所定のサンプリングタイム毎の前記産業機械の位置をｎ＋１個（ただしｎは自然数）の点列として記憶する段階と、前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換する段階と、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令するものである。
【００１１】
また請求項７に記載の発明は、前記産業機械のサーボコントローラ部に状態推定オブザーバを接続して、前記産業機械を実動作速度で動作させてその動作軌跡を前記状態推定オブザーバで推定するものである。
【００１２】
また請求項８に記載の発明は前記サーボモータに与える電流指令値を入力して、前記産業用機械の動作を求めるメカシミュレーション部を前記産業機械のサーボコントローラ部に接続して、前記産業機械が実動作速度で動作する時の動作軌跡を前記メカシミュレーション部で作成するものである。
【００１３】
また請求項９に記載の発明は、前記産業機械のサーボコントローラ部に、前記サーボモータで駆動される軸の回転角度指令を入力して前記産業用機械の動作を求めるサーボ・メカシミュレーション部を接続して、前記産業機械が実動作速度で動作する時の動作軌跡を前記サーボ・メカシミュレーション部で作成するものである。
【００１４】
また請求項１０に記載の発明は、サーボモータで駆動される複数軸を備えた産業用機械の動作プログラムを記憶し再生する動作指令データ記憶部と、前記動作指令データ記憶部の指令を受けて、前記複数軸の各軸の動作指令を作成する軸動作指令作成部と、前記軸動作指令作成部の各軸動作指令を受けて前記サーボモータに駆動電流を供給するサーボコントローラを備えた産業機械の制御装置において、前記軸動作指令作成部とサーボコントローラ部の間に、前記各軸動作指令を受けて前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータと、前記シミュレータの出力ωｓｊを、所定の正の実数Ｐで除して前記サーボコントローラ部にＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）指令する低速指令変換部を備えるものである。
【００１５】
また請求項１１に記載の発明は、前記軸動作指令作成部とサーボコントローラ部の間に、前記各軸動作指令を所定の正の実数Ｐで除した値をＮ回（ただし、Ｎは前記実数Ｐを越えない最大の自然数）出力する低速指令変換部と、前記低速指令変換部の出力を受けて前記産業用機械の実動作速度におけるサーボ制御ループを再現するシミュレータを備えるものである。
【００１６】
また請求項１２に記載の発明は、前記サーボコントローラ部に接続されて前記産業機械の位置を推定する状態推定オブザーバと、前記状態推定オブザーバによって推定された前記産業機械の位置を一定周期で記憶して前記産業機械の動作軌跡をｎ＋１個の点列として記憶する動作結果記憶部と、前記動作結果記憶部に記憶された前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換し、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令する低速指令変換部を備えるものである。
【００１７】
また請求項１３に記載の発明は、前記サーボコントローラ部に接続されて前記サーボモータに与える電流指令値を入力して前記産業用機械の動作を求めるメカシミュレーション部と、前記メカシミュレーション部によって推定された前記産業機械の位置を一定周期で記憶して前記産業機械の動作軌跡をｎ＋１個の点列として記憶する動作結果記憶部と、前記動作結果記憶部に記憶された前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換し、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令する低速指令変換部を備えるものである。
【００１８】
また請求項１４に記載の発明は、前記サーボモータで駆動される軸の回転角度指令を入力して、前記産業用機械の動作を求めるサーボ・メカシミュレーション部と、前記サーボ・メカシミュレーション部によって推定された前記産業機械の位置を一定周期で記憶して前記産業機械の動作軌跡をｎ＋１個の点列として記憶する動作結果記憶部と、前記動作結果記憶部に記憶された前記点列の隣接する点の間をあらかじめ設定された自然数Ｎで分割して補間することにより前記動作軌跡をＮ・（ｎ＋１）個の点列に変換し、前記Ｎ・（ｎ＋１）個の点列に対応する各軸の位置指令を順次前記サーボコントローラ部に指令する低速指令変換部を備えるものである。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態について図に基づいて説明する。なお、従来技術と共通する構成要素については同一の記号を付して、説明を省略する。図１は、本発明の第１の実施例を示す制御装置の構成図である。図において７はメカシミュレータ付き低速指令変換部であり、軸動作指令作成部３とサーボコントローラ部４の間に挿入されている。
ここで、メカシミュレータ付き低速指令変換部７の働きを図２を参照しながら説明する。
図２において、軸動作指令作成部３からの指令があればステップS100へ処理が行き、メカシミュレータ付き低速指令変換部７の動作が開始される。
S101では、軸動作指令作成部で作成された各軸動作指令値ωｊを読みこむ。
S102はメカシミュレータ付き低速指令変換部７のメカシミュレータに相当するステップであり、サーボコンントローラ部と多軸産業用機械の動作をシミュレートする働きをするものである。この構成は、各種あるが、例えば、一番簡単には、図３に示すような、１次遅れフィルタとするものがある。ここで、Kpは位置ループゲインである。また、２慣性バネ系に位置Ｐ制御、速度Ｐ制御の制御器を持つものでは、図４に示すような構成をとればよい。図４において、K ｖは速度ループゲイン、Ｊｍはモータイナーシャ、ＪＬは負荷イナーシャ、Ｋｓはバネ定数である。この他、垂直多関節ロボットのようなメカが対象の場合は各軸の干渉を考慮した多軸モデルを利用することも可能である。このメカシミュレータの出力をωｓｊとする。
S103では、後のステップで使用される分割数N を決定する。
この決定法は各種あるが、第１の決定法としては、実動作指令速度Ｖｉをあらかじめ決められた速度Ｖｃと比較し、小さければ、N=１とする。実動作指令速度が小さければ、さらに低速にする必要がないからである。ＶｉがＶｃより大きければ、N の値を１より大きくする。
また、別な決定法では、各軸指令ωｓｊをあらかじめ軸ごとに決められた速度ωｊｃと比較し、すべての軸についてωｓｊがωｊｃよりも小さければ、N=１とする。一つの軸でも大きければ、N の値を１より大きくする。
S104はメカシミュレータ付き低速指令変換部７の低速指令変換部に相当するステップであり、S103で指定されたＮでωｓｊを分割し、ωｉｊ＝ωｓｊ／Ｎとして各軸低速動作指令を作成する。
S105では、ｉ＝０として初期化する。
S106では、ｉをインクリメントする。
S107では、S104で作ったωijをサーボコントローラ部へ払い出す。払い出されたωijは通常の指令と解釈され、サーボコントーラ部で使われる。
S108では、ｉとＮを比較し、ｉがＮに達するまで同じωijを払い出すようにする。もし、ｉがＮに達したら、動作はS109で終了し、再び軸動作指令作成部からの指令があればステップS100へ処理がいき各軸動作指令値ωｊの読み込みが開始される。なければ、あるまで待機する。
以上のような処理の結果を図５に示す。図５（ａ）は、実動作速度指令を示すタイムチャートであり、図５（ｂ）は低速指令変換後の動作指令速度を示すタイムチャートである。この低速動作指令ωij（j=x,y ）がサーボコントローラ部４へ出力されて、産業用機械が動作する。その動作結果がωj （j=x,y ）である。図５（ｂ）に示すように低速動作指令ωijと動作結果ωj のずれ量は小さい。なぜなら、本発明では、速度ωijは小さく、かつ、軌跡のずれ量は、第１次近似では、よく知られているように（ωｉｊ／Kp）＾２に比例するからである。また、もし機械が弾性要素をもった場合でも、低速では、ほとんど振動が誘発されず、メカシミュレータで動作した通りの動作が実現される。
図６に本実施例の方法による動作軌跡Ｃ２と実動作速度による動作軌跡Ｃ０の比較を示す。動作軌跡Ｃ２はこのように、動作軌跡Ｃ０とほぼ一致する。
【００２０】
本発明の第２の実施例を示すメカシミュレータ付き低速指令変換部７の働きを図７を参照しながら説明する。
図７において、軸動作指令作成部３からの指令があればステップS140へ処理がいきメカシミュレータ付き低速指令変換部７の動作が開始される。
S141、S142は、それぞれ、第１の実施例におけるS101、S103と同じである。
S143では、S142で指定されたＮでS141で読み込まれたωｊを分割し、ωｉｊ＝ωｊ／Ｎとして各軸低速動作指令を作成する。
S144、S145は、それぞれ、第１の実施例におけるS105、S106と同じである。
S146では、S143で分割した指令値ωｉｊをメカシミュレータに通す。その結果をωｓｉｊとする。
S147 では、S107で同様で、サーボコントローラへωsij を払いだす。
S148 、S149は、それぞれ、第１の実施例におけるS108、S109と同じである。
この第２の実施例の方法によっても、第1 の実施例と同様に低速動作時の動作軌跡と実動作速度の動作軌跡をほぼ一致させることができる。
なお、図２および図７で示したメカシミュレータ付き低速指令変換部７は、一般には、制御装置１内部のＣＰＵにより実行されるソフトウェアして用意される。なお、第１および第２の実施例では、N が自然数の値をとる場合について述べたが、N が自然数でなく、正の実数である場合にも、余り分は保存し次回の指令として利用する等の処理を加えることにより簡単に拡張できることは、言うまでもない。
【００２１】
次に本発明の第３の実施例について説明する。図８は、第３の実施例を示す制御装置の構成図である。図において、１１は状態推定オブザーバ、１２は動作結果記憶部、１３は低速指令変換部である。この制御装置１の機能を図８を参照しながら説明する。
まず、切替えスイッチSW１をA 、切替えスイッチSW２をC に入れ、動作指令データ記憶部２から指令データを読み込み実作業速度で動作させる（以下、動作記憶モードと呼ぶ）。このとき、動作自体は通常の動作であり、アクチュエータ（例えば、モータ）の位置や機械の動作は、実作業速度で動作する。このとき、サーボコントローラ部４はセミクローズド制御が一般的である。つまり、フィードバックするのは、モータの信号で、実際の作業を行う機械先端位置θL は観測していない。そこで、ここでは、よく知られた状態推定オブザーバ１１を使ってθL を推定する。状態推定オブザーバ１１は、例えば、伊東、木村、細江著、「線形制御系の設計理論」、ｐ１１７（１９７８）に解説があり、その形はさまざま可能である。ここでは、図９に示すようなブロック線図を持つ全次元オブザーバとする方法を例示する。ここで、機械１軸を２慣性系とモデル化し、JLはモデル機械負荷イナーシャ、Jmは１次側イナーシャ、Ｋｃは、ばね定数、E はオブザーバの固有値を決める適当に選ぶパラメータである。
この構成の状態推定オブザーバを使うと、位置θL の推定値としてθLobsが得られる。
このオブザーバで観測したメカ側の位置θLobsがＲＡＭ、ハードディスク、フロッピーディスク等の記憶装置からなる動作結果記憶部１２であらかじめ決められたサンプリング時間Ts毎に記憶される。このとき記憶された位置を、P ０、P １、P ２、、、、P ｉ、、PN（動作時間はN ・ Ts）とする。ただし、Pk＝Pk（θk １、θk ２、θk ３、、、θk Ｍ）（Ｍは機械の軸数）とし、モータ軸換算の位置とする。あるいは、位置の増分値として、V0、V1、V2、、、V ｉ、、VN（動作時間はN ・ Ts）として記憶してもよい。（ただし、V ｋ＝V ｋ（ωｋ１、ωｋ２、ωｋ３、、、、ωｋM ）（Ｍは機械の軸数））
ここまでで動作記憶モードが終了する。
次に動作確認モードについて説明する。
ここでは、実際に動いた軌跡を低速で確認すために、動作記憶モードで記憶したデータを各モータ位置の指令とみなし、かつ、速度を遅くして、サーボ系に払い出す。
まず、切替えスイッチSW１をＢ、切替えスイッチSW２をオープン（ＯＦＦ）にする。そして、動作結果記憶部１２に記憶された位置が順次低速指令変換部１３へ払い出される。
低速指令変換部１２では、従来例で示した方法と同様な考え方で、あらかじめ指定された割合α（０＜α＜１）まで速度が減少される。ここでは、例として、α＝１／３、動作記憶モード時のサンプリング時間Tsがサーボコントローラへ払い出される周期Ｔseg と同じ場合、つまり動作記憶モードで求めたＮ＋１個の点列の隣接する点の間を３分割してその間の点を補間する場合について、低速指令変換部１２の動作を、図１０に示すフローチャートを使って説明する。なお、前記の隣接する点の間の分割は任意の自然数を選べばよい。つまり前記割合αは、１／２，１／３，１／４，１／５，……などの値を選べるわけである。
図において、S801は、低速指令変換部の開始であり、制御装置内のモードが動作確認モードになるとこの処理が開始される。
S802では、ｋ＝０として初期化する。
S803では、ｋに１が加算される。
S804では、ｋとＮ＋１を比較し、ｋが小さければ、まだ、記憶された点の最終点に到達していないと判断し、S805の処理へ移る。そうでない場合は、すでに最終点に到達していると判断し、S814へ処理が移る。つまり動作が終了する。
S805では動作記憶部に記憶されているP ｋを読み込む。
S806は、ｉ＝０として初期化する。
S807では、ｉに１が加算される。
S808は、j ＝０として初期化する。
S809では、j に１が加算される。
S810では、今回の払い出し時刻に払い出される位置指令の値θijが計算される。ここで、α＝１／３とおいたので、θijは式（１）で与えられる。
【００２２】
θij＝（１／３）・ i ・ （θej−θsj）＋θsj          式（１）
【００２３】
ここで、θsj＝θｋｊ、θej＝θｋ+1ｊである。
S811では、位置指令θijがサーボコントローラ部４へ払い出される。
あるいは、位置指令ではなく、単位時間Tsegの位置増分値ωijとして、式（２）の形式で払い出される。
【００２４】
ωij＝（１／３）・ i ・ （θej−θsj）                式（２）
【００２５】
また、動作記憶部が位置増分値で記憶されていればそのまま、以下の式（３）を使ってもよい。
【００２６】
ωij＝（１／３）・ i ・ ωｋｊ                          式（３）
【００２７】
式（１）〜式（３）のいずれを使うかは、サーボコントローラ部の仕様で決まるものであり、本発明にはなんら影響しない。以下では（２）を採用したとする。
また、払い出しは、一定時間Tsegごとに行われるように、タイマーで管理される。このことは、従来例と同様である。
S812では、ｊと軸数M が比較され、もし、ｊがM に達してなければ、S809は戻り、ｊがM に達して全軸分サーボコントローラへ位置指令が払い出されれば、S813へ処理が移る。
S813ではｉと３が比較され、３に達してなければ、S807に戻り、ｉが３になったら、処理がS803に戻り、動作記憶部で記憶されている点を読み込む。ここでα＝１／３としたので３回でθij＝θejに到達するのであり、この３はαによって変化する。
【００２８】
次に、本発明の第４の実施例について説明する。
図１１は、本実施例を示す制御装置の構成図である。図において、２１はメカシミュレーション部である。メカシミュレーション部２１はサーボモータに与える電流指令値を入力して産業用機械の動作軌跡を出力するシミュレータである。
動作記憶モード時は、切替えスイッチSW１をA 、切替えスイッチSW３をD に入れ、動作指令データ記憶部２から指令データを読み込み実作業速度で動作させる。このとき、サーボコントローラ部４は通常の動作をするが、サーボモータ５は動作しない。その代わりにメカシミュレーション部２１が動作する。メカシミュレーション部２１ではモータ電流からメカの動作までをシミュレートする。その結果得られた産業用機械の動作軌跡が動作結果記憶部１２であらかじめ決められたサンプリング時間Ts毎に記憶される。ここまでで動作記憶モードが終了する。
動作確認モードでは、SW1 がB 、SW３がE に入れられる。そして、動作結果記憶部１２に記憶された位置が順次低速指令変換部１３へ払い出される方法については、第３の実施例とまったく同様である。このようにすると、動作記憶モードでは、実機械の動作が不要なので、安全な動作確認が可能となる。
【００２９】
次に、本発明の第５の実施例について説明する。
図１２は、本実施例を示す制御装置の構成図である。図において３１はサーボ・メカシミュレーション部であり、サーボ・メカシミュレーション部３１は産業用機械のサーボモータで駆動される軸の回転角度指令を入力して産業用機械の動作軌跡を出力するシミュレータである。
動作記憶モード時は、切替えスイッチSW１をA 、切替えスイッチSW４をF に入れ、動作指令データ記憶部２から指令データを読み込み実作業速度で動作させるが、サーボコントローラ部４、サーボモータ５は動作しない。その代わりにサーボ・メカシミュレーション部３１が動作する。サーボ・メカシミュレーション部３１では各軸指令からメカの動作までがシミュレートされる。その結果得られた産業用機械の動作軌跡が動作結果記憶部１２であらかじめ決められたサンプリング時間Ts毎に記憶される。ここまでで動作記憶モードが終了する。
動作確認モードでは、SW1 がB 、SW４がG に入れられる。そして、動作結果記憶部１２に記憶された位置が順次低速指令変換部へ払い出される方法については、第３の実施例とまったく同様である。第３の実施例と同様に、実作業動作と同等な軌跡が動作確認可能となり、作業効率が上がる。また、動作記憶モード時にサーボ部・メカ部も動作させないでよいので安全である。
【発明の効果】
以上述べたように、本発明によれば、メカシミュレータ付き低速指令変換部を設けたので、実動作軌跡と動作確認時の軌跡がほとんどほとんど同じものになり、動作確認作業が効率的になるという効果がある。
【図面の簡単な説明】
【図１】本発明の第１の実施例を示す制御装置の構成図である。
【図２】本発明の第１の実施例を示すフローチャートである。
【図３】本発明の第１の実施例を示すメカシミュレータの構成図である。
【図４】本発明の第１の実施例を示すメカシミュレータの別の構成図である。
【図５】本発明の第１の実施例を示すタイムチャートであり、（ａ）は実動作速度指令を示し、（ｂ）は低速指令変換後の動作速度指令を示す。
【図６】本発明の第１の実施例を示す動作軌跡の比較図である。
【図７】本発明の第２の実施例を示すフローチャートである。
【図８】本発明の第３の実施例を示す制御装置の構成図である。
【図９】本発明の第３の実施例を示す状態推定オブザーバの図であり、（ａ）は周辺装置との接続図であり、（ｂ）は内部の制御ブロック図である。
【図１０】本発明の第３の実施例を示すフローチャートである。
【図１１】本発明の第４の実施例を示す制御装置の構成図である。
【図１２】本発明の第５の実施例をを示す制御装置の構成図である。
【図１３】従来技術の例を示す制御装置の構成図である。
【図１４】従来技術の別の例を示す制御装置の構成図である。
【図１５】従来技術の例を示す動作軌跡の比較図である。
【符号の説明】
１：制御装置  ２：動作指令データ記憶部  ３：軸動作指令作成部
４：サーボコントローラ部  ５：サーボモータ部  ６：低速指令変換部
７：メカシミュレータ付き低速指令変換部
１１：状態推定オブザーバ  １２：動作結果記憶部  １３：低速指令変換部
２１：メカシミュレーション部
３１：サーボ・メカシミュレーション部
【図１】
0004203696.tif 000002
【図２】
0004203696.tif 000003
【図３】
0004203696.tif 000004
【図４】
0004203696.tif 000005
【図５】
0004203696.tif 000006
【図６】
0004203696.tif 000007
【図７】
0004203696.tif 000008
【図８】
0004203696.tif 000009
【図９】
0004203696.tif 000010
【図１０】
0004203696.tif 000011
【図１１】
0004203696.tif 000012
【図１２】
0004203696.tif 000013
【図１３】
0004203696.tif 000014
【図１４】
0004203696.tif 000015
【図１５】
0004203696.tif 000016