(57)【特許請求の範囲】
【請求項１】
所定の制御値に基づいて駆動手段に所定の動作を実行させるための一種類又は複数種類の実行動作テーブルと、前記制御値として使用される所定の変数の値を設定するための一種類又は複数種類の制御値設定動作テーブルとを含む複数の動作テーブルを登録可能に構成され且つそれら登録された動作テーブルから選択されたひとつ又は複数の前記制御値設定動作テーブルといずれかひとつの前記実行動作テーブルとに対応する処理を所定順序で実行することにより前記駆動手段を制御する駆動制御手段に対する動作指令方法であって、前記制御値設定動作テーブルは、前記所定の変数に対して所定の演算値により所定の算術処理を行って得られた値を元の変数に代入する変数演算代入タイプの動作テーブルを少なくとも含んでおり、前記演算値が異なる複数種類の前記変数演算代入タイプを含む複数種類の制御値設定動作テーブルと、少なくともひとつの前記実行動作テーブルとを含む複数の動作テーブルを前記駆動制御手段に予め登録しておき、前記駆動手段の動作を指定する動作指定情報が所定の入力手段から入力されることに基づいて、前記制御値が前記動作指定情報に対応する値となるように、ひとつ又は複数の前記変数演算代入タイプの動作テーブルを含む前記制御値設定動作テーブルと、ひとつの前記実行動作テーブルとを選択し、それら選択された動作テーブルとその実行順序とを指定する動作指令を前記駆動制御手段側に出力することを特徴とする駆動制御手段に対する動作指令方法。
【請求項２】
前記変数演算代入タイプの制御値設定動作テーブルは、前記所定の変数に所定の加算値を加算して得られた値を元の変数に代入する変数加算代入タイプの制御値設定動作テーブルを含み、該変数加算代入タイプの制御値設定動作テーブルは、前記加算値の桁数が異なる複数種類があり、更にその種類毎に、前記加算値の最上位以外の値が全て０で最上位の値のみを異ならせた複数種類があることを特徴とする請求項１に記載の駆動制御手段に対する動作指令方法。
【請求項３】
前記動作指定情報を構成する所定の入力値から桁毎の値を取得し、その各桁の値と、対応する桁数の前記加算値を有する複数種類の前記変数加算代入タイプの制御値設定動作テーブルとを対応させてそれら複数種類の前記変数加算代入タイプの制御値設定動作テーブルのうちのひとつを選択することを特徴とする請求項２に記載の駆動制御手段に対する動作指令方法。
【請求項４】
前記制御値設定動作テーブルとして、前記動作指定情報を構成する所定の入力値に対応する第１変数を生成するための第１の制御値設定動作テーブルと、前記第１変数に所定の演算を行うことにより前記制御値に使用される第２変数に変換するための第２の制御値設定動作テーブルとが前記駆動制御手段に登録され、前記第２変数が前記動作指定情報に対応する値となるように、それら第１の制御値設定動作テーブルと第２の制御値設定動作テーブルとを夫々選択することを特徴とする請求項１〜３の何れかに記載の駆動制御手段に対する動作指令方法。
【請求項５】
複数種類の前記制御値に基づいて前記駆動手段が制御される場合に、それら各制御値に対応するように前記第２の制御値設定動作テーブルを前記駆動制御手段に複数種類登録したことを特徴とする請求項４に記載の駆動制御手段に対する動作指令方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーボモータの駆動制御を行うサーボアンプ等、所定の駆動手段の駆動制御を行う駆動制御手段に対する動作指令方法に関するものである。
【背景技術】
【０００２】
例えばモータの駆動制御を行うサーボアンプは、ひとつの基本制御動作に対応する動作テーブルを予め一種類又は複数種類登録しておき、シーケンサからの指令通りに、ひとつ又は複数の動作テーブルに対応する基本動作プログラムを順次実行することによりモータを制御するように構成されたものが一般的である（例えば特許文献１参照）。
【０００３】
この種のサーボアンプで用いられる動作テーブルには、所定の制御値に基づいてモータに所定の動作を実行させるための実行動作テーブル、この実行動作テーブルの制御値として使用される所定の変数の値を設定するための制御値設定動作テーブル等があり、例えば制御値設定動作テーブルを実行して所定の変数に所定の回転速度に対応する値を設定し、その変数を制御値として実行動作テーブルを実行することにより、その回転速度で所定方向に所定回転させるようにモータを制御することが可能となっている。
【０００４】
ところで、従来のサーボアンプでは、不適切な値が変数に設定されることにより制御が不安定となることを防止する等の理由により、動作テーブルの変数にシーケンサ側から任意の値をセットすることはできない仕様となっているのが通常である。即ち、制御値設定動作テーブルで変数に対して行う演算処理の内容を含め、各動作テーブルの設定内容はサーボアンプへ登録する時点で全て確定し、シーケンサ側からはその登録された動作テーブルの選択と実行順序とが指定できるにすぎない。
【０００５】
従って、例えばユーザ側が複数の回転速度、例えば５０，５５，６０ｒｐｍの３種類の回転速度の何れかを選択できるようにする場合、サーボアンプ側には、変数に回転速度を設定する制御値設定動作テーブルを、５０ｒｐｍ用、５５ｒｐｍ用、６０ｒｐｍ用の３種類登録しておき、シーケンサ側は、ユーザの選択操作に基づいてサーボアンプ側にそれら３種類の制御値設定動作テーブルのうちのひとつを含む動作テーブルの実行を指令するように構成していた。
【特許文献１】特開平１０−１４２７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
例えばワークの検査装置に用いるモータでは、ワークの種類や客先からの指定に応じて検査時のワークの回転速度を変える必要があるため、ユーザが設定可能な回転速度の種類は多ければ多いほどよい。しかしながら、サーボアンプ側の動作テーブルの登録数には上限があるため、サーボアンプ側に回転速度毎の制御値設定動作テーブルを登録しておく従来の方法では、設定可能な回転速度の種類数を十分に確保しておくことができない問題があった。
【０００７】
即ち、例えば１０〜８０ｒｐｍの範囲で０．１ｒｐｍ刻みで回転速度を設定可能にしようとする場合、従来の方法であれば回転速度毎の制御値設定動作テーブルだけで約７００個必要となるため、動作テーブルの上限登録数が例えば６４程度のサーボアンプでは到底実現不可能である。
【０００８】
もちろん、予め登録された回転速度以外の回転速度に設定することも可能であるが、その場合にはサーボアンプ側の動作テーブルそのものを変更する必要があり、多大な時間と手間を要してしまう。
【０００９】
本発明は、このような従来の問題点に鑑み、動作テーブルの登録数に限りある中で、設定可能な駆動動作の種類数を十分に大きくすることが可能な駆動制御手段に対する動作指令方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、所定の制御値に基づいて駆動手段に所定の動作を実行させるための一種類又は複数種類の実行動作テーブルと、前記制御値として使用される所定の変数の値を設定するための一種類又は複数種類の制御値設定動作テーブルとを含む複数の動作テーブルを登録可能に構成され且つそれら登録された動作テーブルから選択されたひとつ又は複数の前記制御値設定動作テーブルといずれかひとつの前記実行動作テーブルとに対応する処理を所定順序で実行することにより前記駆動手段を制御する駆動制御手段に対する動作指令方法であって、前記制御値設定動作テーブルは、前記所定の変数に対して所定の演算値により所定の算術処理を行って得られた値を元の変数に代入する変数演算代入タイプの動作テーブルを少なくとも含んでおり、前記演算値が異なる複数種類の前記変数演算代入タイプを含む複数種類の制御値設定動作テーブルと、少なくともひとつの前記実行動作テーブルとを含む複数の動作テーブルを前記駆動制御手段に予め登録しておき、前記駆動手段の動作を指定する動作指定情報が所定の入力手段から入力されることに基づいて、前記制御値が前記動作指定情報に対応する値となるように、ひとつ又は複数の前記変数演算代入タイプの動作テーブルを含む前記制御値設定動作テーブルと、ひとつの前記実行動作テーブルとを選択し、それら選択された動作テーブルとその実行順序とを指定する動作指令を前記駆動制御手段側に出力するようになっている。
【発明の効果】
【００１１】
本発明は上記のように構成されているため、限られた少数の動作テーブルの組み合わせにより多種類の制御動作を実現でき、駆動制御手段における動作テーブルの登録数に限りある中で、設定可能な駆動動作の種類数を十分に大きくすることが可能である。またこれにより、駆動制御手段側の動作テーブルの変数に任意の値をセットすることができない仕様であるにもかかわらず、動作テーブルの変数に任意の値をセットするのと略同様の処理が可能となる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態を図面に基づいて詳述する。図１〜図７は本発明の第１の実施形態を例示している。図１は、本発明の動作指令方法を実施可能な検査装置１０１のブロック図である。
【００１３】
検査装置１０１は、ワークＷを一定速度で回転させつつ精度検査等の所定の検査を行うもので、ワークＷを回転させるサーボモータ（駆動手段）１０２、ユーザがサーボモータ１０２の回転速度、回転量（回転回数）等の動作指定情報を入力可能な操作盤（入力手段）１０３、この操作盤１０３から入力された動作指定情報に基づいて動作指令を出力するシーケンサ１０４、このシーケンサ１０４からの動作指令に基づいてサーボモータ１０２を制御するサーボアンプ（駆動制御手段）１０５等を備えている。
【００１４】
サーボアンプ１０５は、所定の基本動作プログラムを実行することによりサーボモータ１０２の駆動制御を行うように構成されているが、この基本動作プログラムの実行内容は、ひとつの基本制御動作に対応する動作テーブルをひとつ又は複数組み合わせることにより任意に設定することが可能である。なお、サーボアンプ１０５は、この動作テーブルを所定数、例えば６４個を上限として登録可能となっている。
【００１５】
動作テーブルは、複数種類の基本制御動作に対応して複数種類用意されており、図２に示すように、例えば「実行動作テーブル」、「制御値設定動作テーブル」等に分類できる。また、各動作テーブルは、その種類毎に固有の設定項目が設けられており、それら設定項目毎に任意の値等を指定することによって制御動作の具体的な内容を設定することが可能となっている。
【００１６】
「実行動作テーブル」は、所定の制御値に基づいてサーボモータ１０２に所定の動作を実行させるためのもので、原点に対する絶対位置による位置決め移動を行わせる「絶対位置決め移動」、現在位置に対する相対位置による位置決め移動を行わせる「相対位置決め移動」等のタイプがある。
【００１７】
これら「絶対位置決め移動」、「相対位置決め移動」の各実行動作テーブルには、図３に示すように、回転速度に関する制御値としての「回転速度制御値」、回転量に関する制御値としての「回転量制御値」等の設定項目が設けられている。
【００１８】
ここで、本実施形態のサーボモータ１０２は、３６００００パルスで１回転するように設定されており、「回転速度制御値」には１秒当たりのパルス数を、「回転量制御値」にはその回転量（回転回数）に対応する総パルス数に回転方向に応じて＋１又は−１を掛けた値を、夫々設定するようになっている。即ち、例えば６０ｒｐｍで＋方向に２０回転させる場合には、「回転速度制御値」に３６００００を、「回転量制御値」に７２０００００を夫々設定すればよく、また例えば５５ｒｐｍで−方向に１０回転させる場合には、「回転速度制御値」に３３００００を、「回転量制御値」に−３６０００００を夫々設定すればよい。
【００１９】
「制御値設定動作テーブル」は、「実行動作テーブル」の制御値として使用される所定の変数の値を設定するためのもので、例えば所定の変数に対して所定の演算処理を行う  「変数演算」タイプ等がある。
【００２０】
この「変数演算」タイプの制御値設定動作テーブルは、図３に示すように、例えば直接代入、単項演算代入、二項演算代入等の演算種別を指定する「演算種別」、代入される変数を指定する「被代入変数」、演算代入を行う場合の演算子を指定する「演算子」、演算代入を行う場合に演算される変数を指定する「被演算変数」等の設定項目が設けられている。
【００２１】
そして、「変数演算」タイプの制御値設定動作テーブルは、それら設定項目の指定内容の違いにより、図２に示すように、所定の変数に所定の値を直接代入する「変数直接代入」、所定の変数に対して所定の演算値により所定の算術処理を行い、得られた値を元の変数又はそれとは異なる変数に代入する「変数演算代入」等のタイプに分類でき、更にその「変数演算代入」タイプの制御値設定動作テーブルは、所定の変数に所定の加算値を加算して元の変数（又はそれとは異なる変数）に代入する「変数加算代入」、所定の変数に所定の乗算値を乗算して元の変数と異なる変数（又は元の変数）に代入する「変数乗算代入」等のタイプに分類できる。
【００２２】
図４に、サーボアンプ１０５に登録される動作テーブルの一覧を示す。この図４に示す動作テーブルは、０．０〜１９９．９ｒｐｍの範囲内の回転速度を０．１ｒｐｍ刻みで指定可能としたものである。なお、回転量については＋２０回転、−２０回転の何れかのみ指定可能であるとする。
【００２３】
動作テーブル０１は変数直接代入タイプの制御値設定動作テーブルで、変数Ａに０を代入する処理、即ち変数Ａをゼロクリアする処理を行うものである。
【００２４】
動作テーブル０２は変数乗算代入タイプの制御値設定動作テーブルで、変数Ａに、０．１ｒｐｍの場合の１秒当たりのパルス数である６００（＝３６００００／６００）を掛けて得られた値を、「回転速度制御値」として使用される変数Ｂに代入する処理を行うものである。後述する動作テーブル０５〜３３により、この動作テーブル０２の処理を行う時点で変数Ａに回転速度を０．１ｒｐｍの倍数で表した値が設定されるようにすれば、この動作テーブル０２の処理を行うことにより、変数Ａの値は１秒当たりのパルス数に変換されて変数Ｂにセットされる。
【００２５】
なお、この動作テーブル０２が、第１変数（変数Ａ）に所定の演算（乗算）を行うことにより制御値（回転速度制御値）に使用される第２変数（変数Ｂ）を生成するための第２の制御値設定動作テーブルの一例である。
【００２６】
動作テーブル０３は相対位置決め移動タイプの実行動作テーブルで、動作テーブル０２により得られた変数Ｂの値を「回転速度制御値」に、−７２０００００を「回転量制御値」に夫々設定して、現在位置から変数Ｂに対応する回転速度で−方向に２０回転させる処理を行うものである。また、動作テーブル０４も相対位置決め移動タイプの実行動作テーブルで、動作テーブル０３とは回転方向が＋方向である点のみが異なる。
【００２７】
動作テーブル０５〜３３は、変数Ａに所定の加算値を加算して元の変数Ａに代入する変数加算代入タイプの制御値設定動作テーブルで、各動作テーブルは夫々加算値の値が異なっている。
【００２８】
即ち、まず動作テーブル０５は、変数Ａに０を加算して元の変数Ａに代入するものである。また、動作テーブル０６〜１４は、変数Ａに１桁の加算値を加算して元の変数Ａに代入するもので、その加算値は夫々異なる値、即ち１，２，３，…，８，９に設定されている。
【００２９】
動作テーブル１５〜２３は、変数Ａに２桁の加算値を加算して元の変数Ａに代入するもので、その加算値は夫々その最上位の値のみが０以外の互いに異なる値、即ち１０，２０，３０，…，８０，９０に設定されている。
【００３０】
動作テーブル２４〜３２は、変数Ａに３桁の加算値を加算して元の変数Ａに代入するもので、その加算値は夫々その最上位の値のみが０以外の互いに異なる値、即ち１００，２００，３００，…，８００，９００に設定されている。
【００３１】
動作テーブル３３は、変数Ａに４桁の加算値を加算して元の変数Ａに代入するもので、その加算値は１０００に設定されている。
【００３２】
このように、動作テーブル０５〜３３は、変数Ａに加算する加算値の桁数が異なる複数種類（４種類）があり、それらの加算値は最上位以外の値は全て０となっており、更に加算値の桁数が１〜３桁の動作テーブル０６〜３２については、加算値の最上位の値のみを異ならせた複数種類（各９種類）が設けられている。
【００３３】
これら動作テーブル０５〜３３の中のひとつ又は複数の処理を連続的に実行することにより、変数Ａには回転速度を０．１ｒｐｍの倍数で表した値を設定することができる。例えば、回転速度を３２．８ｒｐｍに設定する場合には、動作テーブル１３，１６，２６の処理を順次実行することにより、変数Ａには３２．８ｒｐｍを０．１ｒｐｍの倍数で表した３２８が代入される。
【００３４】
なお、動作テーブル０５〜３３が、動作指定情報を構成する所定の入力値（回転速度）に対応する第１変数（変数Ａ）を生成するための第１の制御値設定動作テーブルの一例である。
【００３５】
回転速度毎に夫々その回転速度を設定する動作テーブルを記憶させておく従来の方法で、本実施形態と同様に０．０〜１９９．９ｒｐｍの範囲内の回転速度を０．１ｒｐｍ刻みで指定できるようにしようとすると、例えば各回転速度を設定するための変数直接代入タイプの制御値設定動作テーブルだけで約２０００個登録しておく必要があり、動作テーブルの登録数の上限が６４個程度のサーボアンプ１０５では到底実現不可能であるが、本実施形態の方法であれば、実行動作テーブルを含めて図４に示す３３種類の動作テーブルを登録するだけでよく、動作テーブルの登録数の上限が６４個もあれば十分に実現可能である。
【００３６】
操作盤１０３は、例えばタッチパネル式その他の入力手段により構成された回転速度入力部１０３ａ及び回転量入力部１０３ｂ等を備えており、回転速度入力部１０３ａによりサーボモータ１０２の回転速度として０．０〜１９９．９ｒｐｍ（０．１ｒｐｍ刻み）の範囲内の何れかを、回転量入力部１０３ｂによりサーボモータ１０２の回転量として＋２０回転、−２０回転の何れかを、夫々選択入力可能となっている。
【００３７】
シーケンサ１０４は、例えば小型の産業用コンピュータにより構成され、入力側に操作盤１０３が、出力側にサーボアンプ１０５が夫々接続されており、メモリシステム上に格納されている動作指令プログラムをＣＰＵ上で実行することにより、操作盤１０３から回転速度、回転量等の動作指定情報が入力されたときに、その動作指定情報に基づいて、ひとつ又は複数の変数演算代入タイプの動作テーブルを含む制御値設定動作テーブルと、ひとつの実行動作テーブルとを選択し、それら選択された動作テーブルとその実行順序とを指定する動作指令をサーボアンプ１０５側に出力するようになっている。
【００３８】
このシーケンサ１０４上での動作指令プログラムによる動作指令処理の手順を、操作盤１０３から回転速度として３２．８ｒｐｍが、回転量として＋２０回転が夫々入力された場合の具体例を交えながら図５及び図６に基づいて説明する。なお、本実施形態では、選択された動作テーブルを一旦動作テーブル列に順次格納し、全ての動作テーブルが選択された後でその動作テーブル列に基づいて動作指令を送信するものとするが、動作テーブルが選択される毎にその動作テーブルに対応する動作指令をサーボアンプ１０５側に順次送信するようにしてもよい。
【００３９】
動作指令処理が開始されると、図５に示すように、操作盤１０３からの動作指令情報  （回転速度及び回転量）の入力の監視状態となる（Ｓ１）。そして、操作盤１０３から動作指令情報が入力されると（Ｓ１：Ｙｅｓ）、動作テーブル列がリセットされた後（Ｓ２）、回転速度指定処理（Ｓ３）が実行される。なお、この動作テーブル列には所定のメモリ領域が割り当てられており、動作テーブルを特定する情報（ここでは動作テーブル番号）を複数記憶可能となっている。
【００４０】
回転速度指定処理（Ｓ３）は、例えば図６に示すような手順で行われる。即ち、まず動作テーブル列の先頭に、動作テーブル０１を特定する情報、例えば動作テーブル番号０１がセットされる（Ｓ３１）。
【００４１】
そして、入力された回転速度の値から桁毎の値が取得され（Ｓ３２）、桁毎の値に基づいて次のＳ３３〜Ｓ３６の処理が行われる。即ち、まず０．１ｒｐｍの桁の値０〜９と動作テーブル０５〜１４とを対応させるように動作テーブル０５〜１４の何れかが選択され、動作テーブル列の最後尾に追加される（Ｓ３３）。例えば回転速度３２．８ｒｐｍの場合、０．１ｒｐｍの桁の値は「８」であるため、動作テーブル１３が選択される。
【００４２】
同様に、１ｒｐｍの桁の値０〜９と動作テーブル０５，１５〜２３とを対応させるように動作テーブル０５，１５〜２３の何れかが選択され、１０ｒｐｍの桁の値０〜９と動作テーブル０５，２４〜３２とを対応させるように動作テーブル０５，２４〜３２の何れかが選択され、夫々動作テーブル列の最後尾に追加される（Ｓ３４，Ｓ３５）。更に、１００ｒｐｍの桁の値０，１と動作テーブル０５，３３とを対応させるように動作テーブル０５，３３の何れかが選択され、動作テーブル列の最後尾に追加される（Ｓ３６）。
【００４３】
回転速度３２．８ｒｐｍの場合、０．１，１，１０，１００ｒｐｍの桁の値が夫々「８」「２」「３」「０」であるため、動作テーブル１３，１６，２６，０５が夫々選択され、例えばその番号がその順序で動作テーブル列に追加される。
【００４４】
なお、３２．８ｒｐｍのように１００ｒｐｍの桁の値が０の場合、それに対応する動作テーブル０５は選択しないようにしても結果は同じである。同様に、他の桁についても、その桁の値が０の場合、それに対応する動作テーブル０５は選択しないようにしてもよい。このような処理を行う場合、動作テーブル０５は省略できる。また、Ｓ３３〜Ｓ３６の処理はどのような順序で実行してもよい。
【００４５】
最後に動作テーブル０２が動作テーブル列の最後尾に追加され（Ｓ３７）、回転速度指定処理は終了する。
【００４６】
回転速度指定処理（Ｓ３）が終了すると、続いて、入力された回転量の値に応じて、動作テーブル０３，０４の何れかが選択され、動作テーブル列の最後尾に追加される（Ｓ４）。即ち、回転量の入力値が−２０回転であれば動作テーブル０３が、＋２０回転であれば動作テーブル０４が選択される。
【００４７】
最後に、動作テーブル列に従って、その動作テーブルに設定された各動作テーブルを指定する動作指令がサーボアンプ１０５側に出力される（Ｓ５）。例えば、動作テーブル列に設定された動作テーブル番号に対応する指令信号が順次サーボアンプ１０５側に送信される。
【００４８】
回転速度として３２．８ｒｐｍが、回転量として＋２０回転が夫々入力された場合、動作テーブル列は例えば「０１，１３，１６，２６，０５，０２，０４」となっているため、動作テーブル番号０１，１３，…、０２，０４の順序で指令信号が順次サーボアンプ１０５側に送信される。
【００４９】
サーボアンプ１０５側では、シーケンサ１０４側から入力された動作指令に基づいて、指定された動作テーブルに対応する処理を指定された順序で実行することにより、サーボモータ１０２を制御する。例えば、動作指令として、動作テーブル番号０１，１３，１６，２６，０５，０２，０４の順序で指令信号を受信した場合、次のような制御動作が実行される（図７参照）。
【００５０】
即ち、まず動作テーブル０１が実行され、変数Ａがゼロクリアされる。そして、動作テーブル１３，１６，２６，０５が順次実行されることにより、変数Ａには８，２０，３００，０が順次加算されて、変数Ａの値は、回転速度３２．８ｒｐｍを０．１ｒｐｍの倍数で表した３２８となる。
【００５１】
続いて、動作テーブル０２が実行されることにより、変数Ａに０．１ｒｐｍの場合の１秒当たりのパルス数である６００が掛けられ、１秒当たりのパルス数に変換されて１９６８００となり、その値が変数Ｂに代入される。
【００５２】
そして最後に、「回転速度制御値」として変数Ｂの値である１９６８００が、「回転量制御値」として７２０００００が夫々設定された状態で動作テーブル０４が実行されることにより、サーボモータ１０２は、１秒当たりのパルス数が１９６８００となる回転速度、即ち３２．８ｒｐｍで現在位置から＋方向に２０回転する。
【００５３】
以上説明したように、本実施形態では、複数種類の変数演算代入タイプを含む複数種類の制御値設定動作テーブルと、少なくともひとつの実行動作テーブルとを含む複数の動作テーブルをサーボアンプ１０５に予め登録しておき、操作盤１０３から入力された動作指定情報に基づいて、ひとつ又は複数の変数演算代入タイプの動作テーブルを含む制御値設定動作テーブルと、ひとつの実行動作テーブルとを選択し、それら選択された動作テーブルとその実行順序とを指定する動作指令をサーボアンプ（駆動制御手段）１０５側に出力するため、限られた少数の動作テーブルの組み合わせにより多種類の制御動作を実現でき、動作テーブルの登録数に限りある中で、設定可能な駆動動作の種類数を十分に大きくすることが可能である。
【００５４】
これにより、サーボアンプ１０５側の動作テーブルの変数にシーケンサ１０４側から任意の値をセットすることができない仕様であるにもかかわらず、動作テーブルの変数にシーケンサ１０４側から任意の値をセットするのと略同様の処理が可能となる。
【００５５】
また、変数演算代入タイプの制御値設定動作テーブルは、変数Ａ（所定の変数）に所定の加算値を加算して得られた値を元の変数Ａに代入する変数加算代入タイプの制御値設定動作テーブルを含み、この変数加算代入タイプの制御値設定動作テーブルは、加算値の桁数が異なる複数種類があり、更にその種類毎に、加算値の最上位以外の値が全て０で最上位の値のみを異ならせた複数種類があり、動作指定情報を構成する回転速度（入力値）から桁毎の値を取得し、その各桁の値と、対応する桁数の加算値を有する複数種類の変数加算代入タイプの制御値設定動作テーブルとを対応させてそれら複数種類の変数加算代入タイプの制御値設定動作テーブルのうちのひとつを選択するため、少ない動作テーブルで広範囲の動作指定情報の値に対応可能であると共に、動作指令プログラムによる動作指令処理の手順を簡略化できる利点がある。
【００５６】
また、制御値設定動作テーブルとして、動作指定情報を構成する回転速度（入力値）に対応する変数Ａ（第１変数）を生成するための動作テーブル０５〜３３（第１の制御値設定動作テーブル）と、その変数Ａ（第１変数）に６００を掛ける（所定の演算）ことにより回転速度制御値（制御値）に使用される変数Ｂ（第２変数）を生成するための動作テーブル０２（第２の制御値設定動作テーブル）とがサーボアンプ（駆動制御手段）１０５に登録され、動作指定情報に基づいて、それら第１の制御値設定動作テーブルと第２の制御値設定動作テーブルとを選択するため、第１の制御値設定動作テーブルはそのままで、第２の制御値設定動作テーブルの演算値を変えるだけで、実行動作テーブルの各種の制御値に対応できる。
【００５７】
なお、図４に示した動作テーブルの例では、上記実施形態のようにひとつの動作テーブルの使用回数を１回までとする場合には、対応する回転速度の指定範囲は上述した０．０〜１９９．９ｒｐｍ（０．１ｒｐｍ刻み）となるが、ひとつの動作テーブルを２回以上用いるようにすれば、登録する動作テーブルはそのままで、更に広い範囲の回転速度の指定に対応可能である。例えば、動作テーブル３３を２回以上用いれば、２００ｒｐｍ台、３００ｒｐｍ台又はそれ以上の回転速度にも対応可能である。
【００５８】
また、このようにひとつの動作テーブルを２回以上用いるようにすれば、動作テーブル０５〜３３のうちのひとつ又は複数を省略しても同様の制御内容を実現可能である。例えば、動作テーブル０６を３２８回繰り返せば３２．８ｒｐｍを表すことができるため、極端に言えば、動作テーブル０５〜３３のうち、動作テーブル０６だけがあれば、０．１ｒｐｍ刻みであればどのような回転速度にも対応可能である。しかしながら、このように変数加算代入動作テーブルの種類数を少なくすればするほど、実行すべき動作テーブルの数が多くなり、サーボアンプ１０５側での演算負荷が大きくなる点に留意すべきである。即ち、変数加算代入動作テーブルは、動作テーブルの登録数の上限を超えない範囲でなるべく多くの種類を登録しておくことが望ましい。
【００５９】
図８〜図１１は本発明の第２の実施形態を例示し、回転速度だけでなく回転量についても、ユーザがより広い範囲で任意に設定可能とした例を示している。
【００６０】
図８は、サーボアンプ１０５に設定された動作テーブルの一覧を示す。この図８に示す動作テーブルが第１の実施形態の動作テーブル（図４）と異なるのは動作テーブル０３，０４のみであるため、他の動作テーブルについての説明は省略する。
【００６１】
動作テーブル０３は変数乗算代入タイプの制御値設定動作テーブルで、変数Ａに、０．１回転当たりのパルス数である３６０００（＝３６００００／１０）を掛けて得られた値を、「回転量制御値」として使用される変数Ｃに代入する処理を行うものである。動作テーブル０５〜３３により、この動作テーブル０３の処理を行う時点で、変数Ａに回転量  （回転回数）を０．１回転の倍数で表した値を設定するようにすれば、この動作テーブル０３の処理を行うことにより、変数Ａの値はその回転量（回転回数）に対応する総パルス数に変換されて変数Ｃにセットされる。
【００６２】
この動作テーブル０３も、動作テーブル０２と同様、第１変数（変数Ａ）に所定の演算（乗算）を行うことにより制御値（回転量制御値）に使用される第２変数（変数Ｃ）を生成するための第２の制御値設定動作テーブルの一例である。
【００６３】
動作テーブル０３は相対位置決め移動タイプの実行動作テーブルで、動作テーブル０２により得られた変数Ｂの値を「回転速度制御値」に、動作テーブル０３により得られた変数Ｃの値を「回転量制御値」に夫々設定して、現在位置から変数Ｂに対応する回転速度で＋方向に変数Ｃに対応する回数だけ回転させる処理を行うものである。
【００６４】
図９及び図１０は、シーケンサ１０４上で実行される動作指令プログラムによる動作指令処理手順を示している。以下、この動作指令プログラムによる動作指令処理の手順を、操作盤１０３から回転速度として３２．８ｒｐｍが、回転量として１２回転が夫々入力された場合の具体例を交えながら説明する。なお、図９に示す動作指令処理手順が第１の実施形態の動作指令処理手順と異なるのはＳ４ａ，Ｓ４ｂのみであるため、それより上流側のＳ１〜Ｓ３についての説明は省略する。
【００６５】
回転速度指定処理（Ｓ３）が終了すると、続いて回転量指定処理（Ｓ４ａ）が実行される。この回転量指定処理（Ｓ４ａ）は、例えば図１０に示すような手順で行われる。なお、本実施形態では、回転量を０〜９９回転（１回転刻み）の範囲で設定可能であるとする。
【００６６】
回転量指定処理では、まず動作テーブル０１が動作テーブル列に追加される（Ｓ４１）。そして、入力された回転量の値から桁毎の値が取得され（Ｓ４２）、桁毎の値に基づいて次のＳ４３，Ｓ４４の処理が行われる。
【００６７】
即ち、まず１桁目の値０〜９と動作テーブル０５，１５〜２３とを対応させるように動作テーブル０５，１５〜２３の何れかが選択され、動作テーブル列の最後尾に追加される（Ｓ４３）。同様に、２桁目の値０〜９と動作テーブル０５，２４〜３２とを対応させるように動作テーブル０５，２４〜３２の何れかが選択され、動作テーブル列の最後尾に追加される（Ｓ４４）。なお、Ｓ４３とＳ４４はどのような順序で実行してもよい。
【００６８】
回転量が１２回転の場合、１桁目、２桁目の値が夫々「２」「１」であるため、動作テーブル１６，２４が夫々選択され、例えばその番号がその順序で動作テーブル列に追加される。
【００６９】
そして、動作テーブル０３が動作テーブル列の最後尾に追加され（Ｓ４５）、回転量指定処理は終了する。
【００７０】
続いて、動作テーブル０４が動作テーブルに追加され（Ｓ４ｂ）、最後に動作テーブル列に従ってサーボアンプ１０５側に動作指令が出力される（Ｓ５）。例えば、動作テーブル列に設定された動作テーブル番号に対応する指令信号が順次サーボアンプ１０５側に送信される。
【００７１】
回転速度として３２．８ｒｐｍが、回転量として１２回転が夫々入力された場合、動作テーブル列は例えば「０１，１３，１６，２６，０５，０２，０１，１６，２４，０３，０４」となっているため、動作テーブル番号０１，１３，…、０３，０４の順序で指令信号が順次サーボアンプ１０５側に送信される。
【００７２】
サーボアンプ１０５側では、動作指令として、動作テーブル番号０１，１３，１６，２６，０５，０２，０１，１６，２４，０３，０４の順序で指令信号を受信した場合、次のような制御動作が実行される（図１１参照）。
【００７３】
即ち、まず動作テーブル０１が実行され、変数Ａがゼロクリアされる。そして、動作テーブル１３，１６，２６，０５が順次実行されることにより、変数Ａには８，２０，３００，０が順次加算されて、この時点での変数Ａの値は、回転速度３２．８ｒｐｍを０．１ｒｐｍの倍数で表した３２８となる。
【００７４】
そして、動作テーブル０２が実行されることにより、変数Ａに０．１ｒｐｍの場合の１秒当たりのパルス数である６００が掛けられ、１秒当たりのパルス数に変換されて１９６８００となり、変数Ｂに代入される。
【００７５】
続いて、再度動作テーブル０１が実行され、変数Ａがゼロクリアされる。そして、動作テーブル１６，２４が順次実行されることにより、変数Ａには２０，１００が順次加算されて、この時点での変数Ａの値は、回転量１２回転を０．１回転の倍数で表した１２０となる。
【００７６】
そして、動作テーブル０３が実行されることにより、変数Ａに０．１回転当たりのパルス数である３６０００が掛けられ、回転量に対応する総パルス数に変換されて４３２００００となり、変数Ｃに代入される。
【００７７】
最後に、「回転速度制御値」として変数Ｂの値である１９６８００が、「回転量制御値」として変数Ｃの値である４３２００００が夫々設定された状態で動作テーブル０４が実行されることにより、サーボモータ１０２は、１秒当たりのパルス数が１９６８００となる回転速度、即ち３２．８ｒｐｍで、総パルス数が４３２００００となる回転量、即ち＋方向に１２回転される。
【００７８】
以上のように、実行動作テーブルの制御値が複数設けられている場合、それら各制御値に対応するように第２の制御値設定動作テーブル（動作テーブル０２，０３）をサーボアンプ１０５に複数種類登録すれば、１種類の第１の制御値設定動作テーブル（動作テーブル０５〜３３）で複数種類の制御値に対応することができ、サーボアンプ１０５側に登録する動作テーブルの数を少なくできる。
【００７９】
以上、本発明の実施形態について例示したが、本発明はこの実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で種々の変更が可能である。例えば、動作指定情報を構成する所定の入力値に対応する第１変数を生成するための第１の制御値設定動作テーブルは、実施形態のように変数加算代入タイプのみで構成する必要はなく、変数加算代入タイプに、変数乗算代入タイプや変数減算代入タイプ、変数除算代入タイプ等を組み合わせて構成してもよい。
【００８０】
第１変数に所定の演算を行うことにより制御値に使用される第２変数に変換するための第２の制御値設定動作テーブルについても、変数乗算代入タイプ以外の例えば変数除算代入タイプの制御値設定動作テーブルを用いてもよい。
【００８１】
実施形態では、第１の制御値設定動作テーブルで得られた変数Ａを第２の制御値設定動作テーブルにより変数Ｂ等に変換し、この変換後の変数Ｂ等を実行動作テーブルの制御値として用いるようにしたが、第１の制御値設定動作テーブルで得られた変数Ａ等をそのまま実行動作テーブルの制御値として用いるようにしてもよい。例えば図４の例の場合、動作テーブル０６〜３３の各加算値（１，２，３，…，１０，２０，…）として予め６００倍した値を用い、動作テーブル０３，０４の回転速度制御値として変数Ａを設定すれば、第２の制御値設定動作テーブルとしての動作テーブル０２を省略できる。
【００８２】
但し、第２の実施形態のような場合にこれを行うと、動作テーブル０６〜３３のような第１の制御値設定動作テーブルを制御値毎に登録する必要があり、動作テーブルの登録数が増加する欠点がある。
【００８３】
実施形態では実行動作テーブルの制御値として回転速度、回転量（回転回数）を用いた例を示したが、それ以外にも各加速度、原点オフセット量、位置整定幅、最大速度、トルク制限値等、種々の制御値を用いることが可能である。
【００８４】
また、制御対象の駆動手段は、ＤＤモータ、ＡＣモータ等の各種サーボモータの他、駆動制御が可能な駆動手段であればどのようなものでも対応可能である。
【図面の簡単な説明】
【００８５】
【図１】本発明の第１の実施形態を示す検査装置の概略構成図である。
【図２】本発明の第１の実施形態を示す動作テーブルの種類及びタイプの一例である。
【図３】本発明の第１の実施形態を示す動作テーブルの設定項目及びその内容の一例である。
【図４】本発明の第１の実施形態を示すサーボアンプに登録される動作テーブルの一例である。
【図５】本発明の第１の実施形態を示す動作指令処理のフローチャートである。
【図６】本発明の第１の実施形態を示す回転速度指定処理のフローチャートである。
【図７】本発明の第１の実施形態を示す動作指令に基づくサーボアンプ側での制御処理の一例である。
【図８】本発明の第２の実施形態を示すサーボアンプに登録される動作テーブルの一例である。
【図９】本発明の第２の実施形態を示す動作指令処理のフローチャートである。
【図１０】本発明の第２の実施形態を示す回転量指定処理のフローチャートである。
【図１１】本発明の第２の実施形態を示す動作指令に基づくサーボアンプ側での制御処理の一例である。
【符号の説明】
【００８６】
１０２  サーボモータ（駆動手段）
１０３  操作盤（入力手段）
１０５  サーボアンプ（駆動制御手段）
【図１】
0004417315.tif 000002
【図２】
0004417315.tif 000003
【図３】
0004417315.tif 000004
【図４】
0004417315.tif 000005
【図５】
0004417315.tif 000006
【図６】
0004417315.tif 000007
【図７】
0004417315.tif 000008
【図８】
0004417315.tif 000009
【図９】
0004417315.tif 000010
【図１０】
0004417315.tif 000011
【図１１】
0004417315.tif 000012