以下に、本発明の好適な実施の形態について、図面を参照しながら詳細に説明する。
なお、本発明は、下記の実施形態に何ら限定されるものではなく、本発明の特許請求の範囲に記載した構成と実質的に同一な構成を有し、且つ、同様な作用効果を奏する範囲において多様な変更が可能である。例えば、以下の実施形態では、5相のステッピングモータに対して脱調判定を行う場合について説明するが、本発明は、2相又は3相のステッピングモータに対して脱調判定を行う場合についても同様に適用することが可能である。
図1は、本実施形態におけるステッピングモータの回転駆動を制御する制御システムを模式的に示す模式図である。図2は、ステッピングモータ用ドライバの内部構成を示すブロック図であり、図3は、ドライバに設けられる脱調判定部を説明するブロック図である。
図1に示す制御システム1は、工作機械や組み立て機械などの産業用機械装置や検査装置等において、ステッピングモータ4の回転動作の制御に用いられる制御システムである。
この制御システム1は、制御プログラムを備えた制御ホスト2と、制御ホスト2との間で通信を行い、制御ホスト2からの信号を受けて指令パルスを出力するコントローラ3と、コントローラ3からの指令パルスに従ってステッピングモータ4に励磁電流を流すドライバ10と、ドライバ10に接続される5相ステッピングモータ4と、ステッピングモータ4に付設されるロータリーエンコーダ5とを有しており、本実施形態における脱調判定装置は、ドライバ10の後述する脱調判定部50と、ロータリーエンコーダ5とにより形成される。
制御ホスト2は、PC(パーソナルコンピュータ)又はPLC(プログラマブルロジックコントローラ)により形成されており、制御ホスト2で構築された制御プログラムとスレーブであるコントローラ3との間で通信を行うためのソフトウェアモジュールとなるデバイスドライバを介して、コントローラ3との間でシリアル通信によるデータの送受信を行う。
この制御ホスト2では、当該制御ホスト2に構築される制御プログラムで関数を実行することにより、コントローラ3に所定の動作を行わせて、ステッピングモータ4の回転動作を制御することができる。
また、制御ホスト2では、ユーザーによって、本実施形態の脱調判定に用いる脱調判定基準値及び補助基準値の選択や、フィルタ時間及びフィルタ回数の設定が行われ、更に、脱調判定基準値及び補助基準値の選択結果やフィルタ時間及びフィルタ回数の設定値が、コントローラ3を介して、ドライバ10の後述する脱調判定部50に送られる。
この場合、制御ホスト2において、脱調判定基準値及び補助基準値は、予め比較判定部53に登録されている複数の数値を読み出して、これらの複数の数値の中から選択するように設定されており、更に、補助基準値は、ユーザーが選択した脱調判定基準値よりも小さい数値の中から選択されるように設定されている。
コントローラ3は、様々な処理を行うCPUと、制御ホスト2との間でシリアル通信を行う通信制御部と、各種データを記憶するROMと、指令パルスを発生させる制御ロジック回路(パルスジェネレータ)と、制御ロジック回路で発生させる指令パルスの信号をドライバ10に対して出力する外部機器インターフェイス回路と、ドライバ10との間で信号の送受信を行うドライバ通信部とを有する。なお、本発明において、制御ホスト2及びコントローラ3の構成は、本実施形態の構成に限定されるものではない。
ここで、コントローラ3が出力する指令パルスには、ステッピングモータ4のロータを所定の回動位置まで時計回りに正転させるための指令パルスCWP(Clock Wise Pulse)と、所定の回動位置まで反時計回りに逆転させるための指令パルスCCWP(Counter Clock Wise Pulse)とがある。
本実施形態におけるドライバ10は、コントローラ3からの指令パルスCWP,CCWPが入力されるとともに、ステッピングモータ4をステップ駆動させるときの分解能(フルステップ角の分割数)を決定する分解能指令が入力され、更に、その入力された分解能指令に応じて指令パルスCWP,CCWPに従って、励磁電流をステッピングモータ4のコイルに流してコイルを励磁する。
また、このドライバ10は、ロータリーエンコーダ5に電力を供給するとともに、ロータリーエンコーダ5から出力される信号を受信し、その受信した信号に基づいてステッピングモータ4が実際に回転した回転角度位置を演算により求める処理を行う。
本実施形態において、ドライバ10に接続されるステッピングモータ4と、ステッピングモータ4に付設されるロータリーエンコーダ5とは、従来から一般的に用いられているものであり、従来のものと異なる特別な構造を有するものではない。
簡単に説明すると、本実施形態のステッピングモータ4には、5つのコイルがペンダゴン結線方式で接続されたHB型5相ステッピングモータが用いられる。このステッピングモータ4のロータには、50個の歯が刻まれており、ステッピングモータ4の5つのコイルに対し、ドライバ10から4相励磁方式で10パターンの励磁電流が順番に切り換えながら流れることにより、ロータを10段階のフルステップ位置(基本ステップ位置)で、0.72°ずつ歩進させるフルステップ駆動を行い、それによって、電気角一周となる7.2°を回転(正転又は逆転)させることができる。また、この10回のフルステップ位置の歩進を50回繰り返して行うことにより、ロータを360°、すなわち機械角で丁度1回転させることができる。
更に、このステッピングモータ4では、ドライバ10の分解能設定の変更や回転速度の変更等を行うことにより、ステッピングモータ4のコイルに4−5相励磁方式で励磁電流を流してロータを0.36°ずつ歩進させるハーフステップ駆動を行うことや、4相励磁における2つの2相励磁パターンの励磁割合を細分化することにより0.72°の間隔を細かく分割した角度でロータを歩進させるマイクロステップ駆動を行うことが可能である。なお、本実施形態のステッピングモータ4において、ロータを最も細かい角度でステップ駆動させることが可能なドライバ10の最高分解能は、20000P/R(パルス/回転)に設定されている。
このステッピングモータ4に付設される本実施形態のロータリーエンコーダ5は、インクリメンタル型の光学式ロータリーエンコーダである。このロータリーエンコーダ5は、ステッピングモータ4の回転軸(モータ軸)に取着され、複数のスリットが所定角度間隔で形成された回転ディスク板と、回転ディスク板を間に挟んで対向して配置される2組の第1及び第2発光部並びに第1及び第2受光部と、各受光部で検出した光を矩形波のパルス信号6に変換してドライバ10に出力するパルス信号出力部とを有する。
すなわち、このロータリーエンコーダ5では、ステッピングモータ4の回転に従って回転ディスク板が回転し、その回転する回転ディスク板のスリットを、第1及び第2発光部から出る光が通過し、その通過した光を第1及び第2受光部がそれぞれ検出することにより、パルス信号出力部がステッピングモータ4の回転に従った2相のパルス信号6を出力する。
この場合、第1発光部及び第1受光部と、第2発光部及び第2受光部とは、図4及び図5に示すように、第1受光部の検出に基づいて出力されるA−CHのパルス信号6と第2受光部の検出に基づいて出力されるB−CHのパルス信号6の位相が相互に90°ずれるように配置されている。
これにより、ドライバ10に設けられる後述の回転位置演算部51では、A−CH及びB−CHのうちの一方のパルス信号6の立ち上がり時及び立ち下がり時に、他方のパルス信号6がハイレベル状態にあるかローレベル状態にあるかを判断することによって、回転ディスク板の回転方向、すなわち、ステッピングモータ4の回転軸の回転方向がCW方向かCCW方向かを判別することができる。
例えば図4及び図5に、ステッピングモータ4がCW方向とCCW方向に回転するときのA−CH及びB−CHのパルス信号6をそれぞれ示すように、ステッピングモータ4がCW方向に回転する図4では、A−CHのパルス信号6の立ち上がり時にB−CHのパルス信号6がLowレベルにあり、A−CHのパルス信号6の立ち下がり時にB−CHのパルス信号6がHighレベルにある。
一方、ステッピングモータ4がCCW方向に回転する図5では、A−CHのパルス信号6の立ち上がり時にB−CHのパルス信号6がHighレベルにあり、A−CHのパルス信号6の立ち下がり時にB−CHのパルス信号6がLowレベルにある。このように、一方のパルス信号6の立ち上がり時及び立ち下がり時における他方のパルス信号6のHighレベル又はLowレベルの状態を判断することによって、ステッピングモータ4の回転軸の回転方向を判別することができる。
また本実施形態のロータリーエンコーダ5は、パルス信号出力部から、回転ディスク板の1回転当たり500パルスの信号(1回転当たり500回の矩形波を出す信号)が、第1受光部と第2受光部のそれぞれについて出力されるように、500Count/Turnの分解能に設計されている。すなわち、このロータリーエンコーダ5では、ステッピングモータ4が0.72°回転する毎に、A−CH及びB−CHのパルス信号6のそれぞれで1つの矩形波が出現する。
この場合、ドライバ10の後述する回転位置演算部51では、演算によってA−CH及びB−CHのパルスの立ち上がりエッジ6aと、立ち下がりエッジ6bとをカウントすることにより、ロータリーエンコーダ5の1回転当たりのパルス数「500Count/Turn」を4逓倍した「2000Count/Turn」の分解能で、ステッピングモータ4の回転角度位置を検出することができる。すなわち、回転位置演算部51では、図4及び図5に示したように、ステッピングモータ4が実際回転した回転角度位置を、0.18°単位(=360°/分解能)で検出することが可能である。
なお本実施形態では、上述したように、安価なインクリメンタル型の光学式ロータリーエンコーダ5がステッピングモータ4に付設されているが、本発明では、ロータリーエンコーダ5として、インクリメンタル型の磁気式ロータリーエンコーダや、高価なアブソリュート型のロータリーエンコーダを用いることも可能である。
本実施形態のドライバ10は、図2及び図3に示すように、指令パルスCWP又はCCWPの入力によりステッピングモータ4のコイルを励磁するための励磁パターンを出力する励磁パターン出力部20と、ステッピングモータ4の出力段チョッパ型の定電流制御を行うモータ電流制御部30と、複数のスイッチング素子(パワー素子)TR1〜TR10を有し、励磁パターン出力部20から出力される励磁パターンに従って各スイッチング素子TR1〜TR10のON/OFFを制御する出力段としてのスイッチング部40と、ロータリーエンコーダ5からの出力信号を利用してステッピングモータ4の脱調の有無を判定する脱調判定部50と、ロータリーエンコーダ5に電力を供給する図示しないエンコーダ用電源とを有する。
本実施形態の励磁パターン出力部20は、従来の5相ステッピングモータのドライバに形成される励磁パターン出力部と実質的に同様に形成されている。すなわち、本実施形態の励磁パターン出力部20は、ドライバ10のイニシャル処理を行うイニシャル処理部21と、コントローラ3から入力される指令パルスを計数して電気角位置(ステップ位置)に対応するアドレスを管理するパルスカウンタ部(電気角位置管理部)22と、指令パルスCWP,CCWPの計数によりステッピングモータ4の回転速度を管理するモータ回転速度管理部(速度計測カウンタ)23と、一定の単位励磁周期Tを管理する励磁周期カウンタ部24と、複数の励磁シーケンスを記憶する励磁パターン記憶部(メモリ)25と、励磁パターン記憶部25から励磁シーケンスを選択して、その励磁シーケンスに従って励磁パターンを単位励磁周期T毎に出力する励磁パターン選択部26と、後述するPWM定電流コントロール回路31からの信号に従って励磁信号又は非励磁信号を出力する励磁/非励磁処理部27とを有する。
なお、本実施形態では、ステッピングモータ4の電気角位置と回転速度とを、パルスカウンタ部22とモータ回転速度管理部23の別々の処理部で管理しているが、本発明では、上記2つの管理を、単一の処理部として形成されるモータ回転管理部で管理しても良い。また、その他の処理を行う部分についても、1つの処理部で形成されても良いし、複数の処理部で形成されても良い。
励磁パターン出力部20のイニシャル処理部21は、制御システム1に電源が投入されたときにコントローラ3からリセット信号が入力され、それによって、ドライバ10の各種イニシャル処理(初期化処理)を行う。
また、イニシャル処理部21は、制御ホスト2やコントローラ3からシリアル通信を介して入力される各種データの書き込み処理や設定処理を行う。例えば、ドライバ10の分解能を設定する分解能指令はイニシャル処理部21に入力され、更に、パルスカウンタ部22や励磁パターン選択部26に出力されて設定される。更に、イニシャル処理部21は、制御ホスト2やコントローラ3からのリクエストを受けて、イニシャル処理部21に設定又は保持されているデータを読み出して、制御ホスト2やコントローラ3へ出力する。
励磁パターン出力部20のパルスカウンタ部22は、コントローラ3から入力される指令パルスCWP,CCWPを計数して、ステッピングモータ4の電気角位置(指令角度位置)に対応するアドレス(指令角度規定基数)を管理している。ここで、ステッピングモータ4の電気角位置(指令角度位置)は、ステッピングモータ4に励磁電流を流すことにより位置決めされる制御上の角度位置である。
本実施形態の場合、管理されるアドレス(言い換えると、指令角度規定基数)の数は、ドライバ10の最高指令分解能(20000P/R)に対応して、「00000」〜「19999」の20000個に設定されており、管理するアドレスの数値は、ロータを歩進させるステップ角度に対応したカウント単位で、指令パルスの入力毎にカウントアップ又はカウントダウンされる。この場合、歩進させるステップ角度は、コントローラ3から入力される分解能指令に基づいて設定される。
例えばステッピングモータ4を上述したフルステップ位置で回転駆動させる場合(ステップ角度が0.72°の場合)、500回の指令パルスの入力によってステッピングモータ4が360°回転するため、指令パルスの入力毎にアドレスをカウントアップ又はカウントダウンさせるカウント単位が「40」に設定される。すなわち、指令パルスの入力毎に「40」の単位で、管理するアドレスの数値をカウントアップ又はカウントダウンする。
また、ステッピングモータ4をフルステップ位置とハーフステップ位置でステップ駆動させる場合(ステップ角度が0.36°の場合)、アドレスの数値をカウントアップ又はカウントダウンさせるカウント単位は「20」に設定され、指令パルスの入力毎に「20」の単位で、管理するアドレスの数値をカウントアップ又はカウントダウンする。
この場合、パルスカウンタ部22は、例えば指令パルスCWPが入力される毎にアドレスの数値を、設定されるカウント単位でカウントアップし、指令パルスCCWPが入力される毎にアドレスの数値を、設定されるカウント単位でカウントダウンして、その数値を管理するとともに、管理されるアドレスの数値をモータ回転速度管理部23や励磁パターン選択部26に出力する。更に、このパルスカウンタ部22は、ドライバ10の脱調判定部50にも用いられ、管理するアドレスに対応した制御上(演算上)の電気角位置(指令角度位置)の情報を、後述する偏差計測部52に出力する。
励磁パターン出力部20のモータ回転速度管理部23は、指令パルスCWP及びCCWPを計数して単位時間当たりのパルス入力数から、ステッピングモータ4の演算上の回転速度を管理するとともに、その管理する回転速度の値を励磁パターン選択部26に出力する。
励磁周期カウンタ部24は、指令パルスCWP及びCCWPとは無関係な一定の単位励磁周期Tを管理するとともに、単位励磁周期T毎に励磁切替指令を出力する。励磁周期カウンタ部24が管理する単位励磁周期Tは、後述する定電流制御においてPWMのタイミングと同期させるために、PWM定電流コントロール回路31にも出力される。
励磁パターン記憶部25には、ステッピングモータ4をステップ駆動させるための複数の励磁シーケンスが記憶されている。例えばフルステップ位置に位置決めする励磁シーケンスは、4つの相を同時に励磁することにより、各フルステップ位置に対応する4相励磁を実現する4相励磁パターンにより形成される。また、ハーフステップ位置に位置決めする励磁シーケンスは、それぞれのハーフステップ位置に対応する5相励磁を行う励磁パターンにより形成される。
また、マイクロステップ駆動に用いられる各励磁シーケンスは、対応する電気角位置にロータを位置決めすることが可能な複数の励磁パターンにより形成される。具体的に説明すると、例えば第1フルステップ位置と、その次の第2フルステップ位置との間を分割する各マイクロステップ位置に位置決めする励磁シーケンスは、第1フルステップ位置の4相励磁ABCDを実現する2つの2相励磁パターンを組み合わせた第1の組み合わせ励磁パターンBC−ADと、次の第2フルステップ位置の4相励磁BCDEを実現する2つの2相励磁パターンを組み合わせた第2の組み合わせ励磁パターンCD−BEとを、そのマイクロステップ位置に応じた割合で組み合わせて形成されている。また、励磁パターン記憶部25には、複数の励磁シーケンスが、モータ回転速度管理部23で管理される回転速度に対応して記憶されていても良い。
励磁パターン出力部20の励磁パターン選択部26は、上述した励磁パターン記憶部25に記憶されている複数の励磁シーケンスの中から、コントローラ3から入力される分解能指令と、パルスカウンタ部22で管理されるアドレス(電気角位置)とに基づいて、適切な1つの励磁シーケンスを選択し、その選択した励磁シーケンスに従って、励磁パターンを出力段であるスイッチング部40に単位励磁周期T毎に出力する処理を行う。
励磁パターン出力部20の励磁/非励磁処理部27は、モータ電流制御部30のPWM定電流コントロール回路31からの信号に従って、励磁状態と非励磁状態とを切り替えることにより、ステッピングモータ4のコイルに流れる電流を一定に制御する出力段チョッパ型の電流制御を行う。
本実施形態のモータ電流制御部30は、ステッピングモータ4のコイルを励磁する電力を供給する電源PS1と、電源PS1の電圧を平滑化するコンデンサC1と、定電流駆動を行うためにコイルに流れている電流を検出する電流検出抵抗R1と、コイルのインピーダンスに応じてコイルに対する励磁出力の時間を調節するPWM定電流コントロール回路31とを有しており、出力段チョッパ型の定電流制御を行う従来の一般的なモータ電流制御部と同様に構成されている。
本実施形態のスイッチング部(出力段)40は、ステッピングモータ4の各コイルとモータ電流制御部30の正極との導通又は遮断を制御するスイッチング素子(ハイサイドパワー素子)TR1,TR3,TR5,TR7,TR9と、各コイルとモータ電流制御部30の負極との導通又は遮断を制御するスイッチング素子(ローサイドパワー素子)TR2,TR4,TR6,TR8,TR10と、コイルが発した起電力をバイパスするダイオードD1〜D10と、励磁パターン出力部20から出力される励磁パターンに従って各スイッチング素子TR1〜TR10のON/OFFを切り替えるパワー素子駆動回路41と、ステッピングモータ4に接続される出力端子OUT1〜OUT5とを有しており、従来の一般的なスイッチング部と同様に構成されている。
本実施形態のドライバ10に設けられる脱調判定部50は、励磁パターン出力部20にも用いられるイニシャル処理部21及びパルスカウンタ部22と、ステッピングモータ4が実際に回転した回転角度位置を演算により求める回転位置演算部51と、電気角位置(指令角度位置)と回転角度位置との間の偏差角度を制御ホスト2で設定されるフィルタ時間毎に計測する偏差計測部52と、偏差計測部52で計測される偏差角度を制御ホスト2で選択される脱調判定基準値と比較するとともに、偏差角度が脱調判定基準値以上となる比較結果が、制御ホスト2で設定されるフィルタ回数で連続して得られるときに脱調と判定する比較判定部53とを有する。このようなドライバ10の脱調判定部50と、ステッピングモータ4に付設されるロータリーエンコーダ5とにより、本実施形態におけるステッピングモータ4の脱調判定装置が形成されている。
本実施形態のイニシャル処理部21は、上述したように電源の投入時に各種のイニシャル処理を行うとともに、制御ホスト2やコントローラ3に対するデータの入出力を行う。ここで、本実施形態の脱調判定では、脱調判定基準値や補助基準値として選択可能な複数の数値が、予め比較判定部53に記憶されているとともに、制御ホスト2において、脱調判定基準値及び補助基準値の選択や、フィルタ時間及びフィルタ回数の設定がユーザーによって行われる。この場合、イニシャル処理部21では、脱調判定基準値や補助基準値として選択可能な数値の候補を比較判定部53から読み出して制御ホスト2に出力し、ユーザーの選択を受け付ける。
また、制御ホスト2で選択された脱調判定基準値及び補助基準値の数値や、制御ホスト2で設定されたフィルタ時間及びフィルタ回数の設定値は、ドライバ10のイニシャル処理部21に入力され、このイニシャル処理部21において、フィルタ時間の設定値が偏差計測部52に出力されるとともに、脱調判定基準値及び補助基準値の選択結果やフィルタ回数の設定値が比較判定部53に出力される。また、イニシャル処理部21は、例えばロータリーエンコーダ5の分解能等の情報がコントローラ3から入力され、その情報を回転位置演算部51に送って設定する処理も行う。
本実施形態のパルスカウンタ部22は、ステッピングモータ4の制御上の指令角度位置を特定し、その指令角度位置の情報を偏差計測部52に出力する指令位置特定部として機能する。すなわち、このパルスカウンタ部22は、上述したように、ドライバ10の最高指令分解能(20000P/R)に対応する20000個のアドレス(指令角度規定基数)を有しており、コントローラ3から入力される分解能指令(設定ステップ角度)に基づいてカウント単位を設定するとともに、コントローラ3から入力される指令パルスを計数し、アドレスの数値を、設定したカウント単位で指令パルスの入力毎にカウントアップ又はカウントダウンすることによってアドレスの管理を行う。
更に、パルスカウンタ部22は、管理するアドレスの数値に基づいて、励磁パターン選択部26で選択される励磁シーケンスの励磁パターン(励磁指令)が位置決めを行う指令角度位置(電気角位置)を特定し、その特定した指令角度位置の情報を偏差計測部52に出力する。
脱調判定部50の回転位置演算部51は、ロータリーエンコーダ5からA−CH及びB−CHのパルス信号6が入力されることにより(図4及び図5を参照)、両方のパルス信号6に基づいて、ステッピングモータ4が実際に回転した回転方向及び回転角度位置を演算により求め、更に、その演算により求めた回転角度位置の情報を偏差計測部52に出力する。
特に、本実施形態の回転位置演算部51には、ドライバ10の最高指令分解能(20000P/R)に対応する20000個の指令角度規定基数と、ロータリーエンコーダ5からの信号に基づいてカウントアップ又はカウントダウンを行うカウント単位が設定される。この場合、20000個の各指令角度規定基数には、360°を20000で分割した角度位置がそれぞれ規定されている。
また、回転位置演算部51のカウント単位は、イニシャル処理部21から入力されるロータリーエンコーダ5の分解能に対応して設定されている。例えば本実施形態の場合、ロータリーエンコーダ5を介して検出可能な分解能は、上述したように4逓倍の「2000Count/Turn」であるため、指令角度規定基数のカウントアップ又はカウントダウンを行うカウント単位は、指令角度規定基数をロータリーエンコーダ5の分解能で除した「10」に設定される。
すなわち、本実施形態の回転位置演算部51は、規定する回転角度位置が0.018°(=360°/20000)ずつ異なる20000個の指令角度規定基数を有しており、ロータリーエンコーダ5から出力されるA−CH及びB−CHのパルス信号6の立ち上がりエッジ6aと立ち下がりエッジ6bを検出する毎に、ステッピングモータ4の回転方向に応じて、指令角度規定基数を「10」のカウント単位でカウントアップ又はカウントダウンする。これによって、ステッピングモータ4が実際に回転した回転角度位置が、0.18°単位で検出される。
なお、回転位置演算部51に設定されるカウント単位は、使用されるロータリーエンコーダ5の分解能等によって変更されるものであり、ロータリーエンコーダを介して検出可能な分解能が例えば「4000Count/Turn」である場合には、回転位置演算部51においてカウントを行うカウント単位は「5」に設定される。
脱調判定部50の偏差計測部52には、図3に示したように、イニシャル処理部21から制御ホスト2で設定されたフィルタ時間の情報が入力されて設定される。また、パルスカウンタ部22(指令位置特定部)からは、管理するアドレスの数値に基づいて特定した指令角度位置の情報が入力される。更に、回転位置演算部51からは、ロータリーエンコーダ5の出力信号(パルス信号6)に基づいて検出したステッピングモータ4の実際の回転角度位置の情報が入力される。
この偏差計測部52は、例えば制御ホスト2でフィルタ時間が16μsに設定される場合、入力される指令角度位置の情報と回転角度位置の情報とから、制御上の指令角度位置と実際の回転角度位置との間の偏差角度の大きさを、フィルタ時間である16μs間隔で継続して計測し、その計測結果(偏差角度)を比較判定部53に逐次出力する。
脱調判定部50の比較判定部53には、脱調判定基準値及び補助基準値の数値として選択可能な複数の数値が予め記憶されている。また、比較判定部53には、制御ホスト2で選択された脱調判定基準値の数値及び補助基準値の数値がイニシャル処理部21から入力されて設定されるとともに、制御ホスト2で設定されたフィルタ回数の情報もイニシャル処理部21から入力される。更に、偏差計測部52からは、その偏差計測部52で計測された偏差角度がフィルタ時間(16μs)毎に入力される。
この比較判定部53は、偏差計測部52から偏差角度が入力される度に(すなわち、16μs毎に)、その偏差角度を脱調判定基準値と順次比較し、偏差角度が脱調判定基準値以上となった場合にフラグを立てる処理を行う。また、比較判定部53では、フラグを立てた処理が連続する回数を計測し、フラグを立てる処理が、制御ホスト2で設定されたフィルタ回数分で連続して行われた時点で脱調の発生を判定するとともに、アラーム信号を出力するアラーム処理を行う。
また、比較判定部53は、上述のようにアラーム処理が行われた後に、後述するように制御ホスト2でアラームクリアが入力されると、制御ホスト2からコントローラ3を介してアラームクリア信号が入力されるため、アラーム処理の解除等のアラームクリア処理を行う。
更に、本実施形態の比較判定部53は、上述のように偏差角度と脱調判定基準値との比較処理を行うと同時に、偏差計測部52から偏差角度が入力される度に、その偏差角度を、脱調判定基準値よりも小さい補助基準値と順次比較し、その比較結果を制御ホスト2等の外部機器に出力する処理を行う。なお、本実施形態の比較判定部53は、偏差角度と補助基準値とを順次比較し、偏差角度が補助基準値以上となる比較結果が所定の回数連続して続いたときに、注意を促す信号を外部機器に出力するようにしても良い。
また、本実施形態では、偏差角度と脱調判定基準値との比較処理と、脱調の判定処理とを、単一の比較判定部53で行うように形成されているが、これらの比較処理と判定処理とは、脱調判定部50の別々の処理部で分けて行うことも可能であり、また、比較判定部53で行うその他の処理についても、脱調判定部50にその他の処理部を設けて行われても良い。
次に、上述した本実施形態の制御システム1において、ステッピングモータ4を回転駆動させるとともに、そのステッピングモータ4の脱調の発生を判定する方法について説明する。
先ず、制御システム1の電源を入れると、制御ホスト2、コントローラ3、及びドライバ10が立ち上がり、コントローラ3からリセット信号がドライバ10のイニシャル処理部21に入力される。また、リセット信号を受信したイニシャル処理部21は、各種カウンタをリセットする等のイニシャル処理(初期化処理)を行う。
続いて、制御ホスト2にて、ユーザーにより、脱調判定に必要となる情報として、脱調判定基準値及び補助基準値が、ドライバ10の比較判定部53から読み出される複数の数値からそれぞれ選択されるともに、フィルタ時間及びフィルタ回数の値が設定される。この場合、制御ホスト2では、補助基準値の選択は、ユーザーが選択した脱調判定基準値よりも小さい数値の中からでしか行えないように制限されている。
この制御ホスト2において脱調判定基準値及び補助基準値の選択と、フィルタ時間及びフィルタ回数の設定とが行われると、それらの情報は、制御ホスト2からコントローラ3を介してドライバ10のイニシャル処理部21に入力され、その後、ドライバ10のイニシャル処理部21から、図3に示したように偏差計測部52と比較判定部53とに必要な情報がそれぞれ入力されて設定される。
なお、商品出荷時のドライバ10には、所定の脱調判定基準値と補助基準値が予め選択されて設定されているとともに、所定のフィルタ時間とフィルタ回数が予め設定されている。このため、商品出荷時の条件を変更する必要がなければ、又は、前回のステッピングモータ4を駆動させたときの状態から条件を変更する必要がなければ、制御ホスト2における上述の選択や設定の作業を省略することができる。
続いて、制御ホスト2では、ユーザーからの入力に従って、制御プログラムにおいて所定の関数が実行されることにより、制御ホスト2からコントローラ3にリクエスト信号が入力され、コントローラ3では、入力されたリクエスト信号に従って、指令パルスCWP又はCCWPがドライバ10に向けて出力される。
コントローラ3からドライバ10に指令パルスが入力されると、ドライバ10のパルスカウンタ部22では、アドレスの数値を、指令パルスCWPが入力される毎に、設定されるカウント単位でカウントアップし、また、指令パルスCCWPが入力される毎に、設定されるカウント単位でカウントダウンして、そのアドレスの数値を管理し、更に、そのアドレスの数値をモータ回転速度管理部23や励磁パターン選択部26に出力する。
また、励磁パターン出力部20のモータ回転速度管理部23は、単位時間当たりの指令パルスの入力数からステッピングモータ4の回転速度を演算して管理するとともに、その管理する回転速度の数値を励磁パターン選択部26に出力する。
励磁パターン出力部20の励磁周期カウンタ部24は、指令パルスCWP,CCWPとは無関係な一定の単位励磁周期Tを管理するとともに、単位励磁周期T毎に励磁切替指令を励磁パターン選択部26及びPWM定電流コントロール回路31に出力する。
励磁パターン出力部20の励磁パターン選択部26では、励磁パターン記憶部25に記憶されている複数の励磁シーケンスの中から、モータ回転速度管理部23から出力される回転速度と、パルスカウンタ部22から出力されるアドレスの数値とに基づいて、条件に合った励磁シーケンスを選択し、その選択した励磁シーケンスに従って、励磁パターンを単位励磁周期T毎に順番に出力する。また同時に、励磁パターン出力部20の励磁/非励磁処理部27は、モータ電流制御部30のPWM定電流コントロール回路31からの信号に従って励磁状態と非励磁状態とを切り替えることにより定電流制御を行う。
励磁パターン出力部20にて上述のような処理が行われるとともに、スイッチング部40では、励磁パターン選択部26から出力される励磁パターンと、励磁/非励磁処理部27からの信号に従って、スイッチング素子TR1〜TR10のONとOFFを制御し、それによって、ステッピングモータ4の励磁電流を流すコイル(励磁相)を切り替えて、ステッピングモータ4を所望のステップ角度で回転駆動させることができる。
そして、本実施形態では、上述のようにステッピングモータ4を回転駆動させているときに、ドライバ10の脱調判定部50とロータリーエンコーダ5とからなる脱調判定装置を用いて、以下のように、ステッピングモータ4に脱調が発生しているか否かを判定する脱調判定が行われる。
先ず、ドライバ10のイニシャル処理部21では、上述したように、ドライバ10の各種初期化処理を行うとともに、制御ホスト2からコントローラ3を介して入力されたフィルタ時間を偏差計測部52に設定するとともに、入力された脱調判定基準値、補助基準値、及びフィルタ回数を比較判定部53に設定する。
なお、本実施形態では、脱調判定基準値及び補助基準値が、1.8°,2.7°,3.6°,4.5°,5.4°,6.3°の数値群から選択可能に設定されており、また、ユーザーにより、脱調判定基準値及び補助基準値として、4.5°及び3.6°がそれぞれ選択され、且つ、フィルタ時間が16μsに、フィルタ回数が100回に設定された場合について説明する。
本実施形態の脱調判定装置では、ステッピングモータ4の回転中に、ドライバ10のパルスカウンタ部22が、コントローラ3から入力される指令パルスCWP,CCWPをカウントしてアドレス管理を行うとともに、その管理するアドレスの数値から、励磁パターン選択部26で選択される励磁シーケンスに従ってコイルへの励磁電流を流したときに位置決めされるステッピングモータ4の制御上の角度位置(指令角度位置)を特定し、その特定した指令角度位置の情報を偏差計測部52に出力する。
また同時に、ステッピングモータ4に付設したロータリーエンコーダ5からは、ステッピングモータ4の回転方向及び回転移動量に応じて、図4及び図5に示すようなA−CH及びB−CHのパルス信号6が出力され、当該パルス信号6がドライバ10の回転位置演算部51に入力される。
ドライバ10の回転位置演算部51では、入力されたA−CHのパルス信号6とB−CHのパルス信号6とを比較して、ステッピングモータ4が実際に回転する回転方向を検出するとともに、A−CH及びB−CHのパルス信号6の立ち上がりエッジ6aと立ち下がりエッジ6bとを検出する。
また、回転位置演算部51では、検出した回転方向とパルスの立ち上がりエッジ6a又は立ち下がりエッジ6bに従って、回転角度位置を規定する20000個の指令角度規定基数を「10」のカウント単位でカウントアップ又はカウントダウンすることにより、ステッピングモータ4が実際に回転した回転角度位置を0.18°単位で演算により求める。そして、求めた回転角度位置の情報を偏差計測部52に出力する。
次に、制御上の指令角度位置の情報と、実際の回転角度位置の情報とが入力された偏差計測部52では、指令角度位置から回転角度位置を引き算することによって求められる偏差角度を、設定された16μsのフィルタ時間毎に計測し、その偏差角度の計測結果を逐次比較判定部53に出力する。
続いて、偏差計測部52から偏差角度の計測結果が入力される比較判定部53では、偏差計測部52から偏差角度が入力される度に(すなわち、16μs毎に)、その偏差角度を、選択された脱調判定基準値(4.5°)と順次比較する比較処理を行い、比較処理で偏差角度が4.5°以上となった場合にフラグを立てる処理を行う。
更に、16μs間隔でフラグが立てられているか否かを確認し、フラグを立てる処理が、設定された100回のフィルタ回数で連続して行われた時点で脱調の発生を判定し、それ以外の場合は、脱調無しの判定を維持する。すなわち、例えばフラグを立てる処理が16μs毎に99回連続して続いたとしても、その次の偏差角度と脱調判定基準値との比較において、偏差角度が4.5°未満となった場合にはフラグを立てないため、脱調無しの判定が維持される。
そして、比較判定部53は、脱調の発生を判定すると、アラーム信号を出力するアラーム処理を行って、脱調が発生したことを警告音等により外部に警告する。また、アラーム信号が出力されると、ドライバ10の励磁パターン出力部20は、コントローラ3からの指令パルスCWP,CCWPをマスクして、パルスカウンタ部22での指令パルスの計測を停止するとともに、励磁パターン選択部26から出力する電気的な励磁パターンの更新を停止し、コイルの励磁状態を保持する処理を行う。
これにより、ステッピングモータ4の回転駆動を停止させるとともに、ステッピングモータ4の回転位置が、その停止位置又は所定の角度位置でホールドされる。なおこの場合、励磁パターンの更新が停止して所定の励磁パターンが保持されても、ステッピングモータ4の回転軸は、慣性負荷の大きさによっては、保持される励磁パターンの角度位置から7.2°×n倍の角度でずれた角度位置で停止することもある。
また、本実施形態の比較判定部53では、上述のようなアラーム処理を行った後、発生した脱調に対する対策が講じられて制御ホスト2でアラームクリアが入力されると、制御ホスト2からコントローラ3を介してアラームクリア信号が入力される。これにより、アラームクリア信号を受信した比較判定部53は、アラーム処理の解除、ドライバ10における各種カウンタのクリア処理、フラグのクリア処理、指令パルスのマスクを外す処理等のようなドライバ10を初期値に戻すアラームクリア処理を行う。これにより、ドライバ10は、コントローラ3からの指令パルスの受け付けを開始することが可能となる。
更に、本実施形態の比較判定部53は、上述のように偏差角度と脱調判定基準値(4.5°)との比較処理を行うと同時に、偏差計測部52から偏差角度が入力される度に、その偏差角度を、脱調判定基準値よりも小さい値で設定された補助基準値(3.6°)と順次比較し、その比較結果を偏差モニタとしてコントローラ3や制御ホスト2等の外部機器に出力する処理を行う。
このように偏差角度と補助基準値との比較結果を偏差モニタとして外部機器に出力することにより、例えば、その比較結果を外部機器のモニタ画面にグラフ表示することが可能となり、それによって、ユーザーは、ステッピングモータ4の実際の回転駆動における偏差角度の状態を、リアルタイムに簡易的に確認することができる。
ユーザーがステッピングモータ4の実際の偏差角度の状態を確認できることにより、ステッピングモータ4の脱調が発生し易い状態にあるか否かを判断することができ、それによって、脱調が発生する前に脱調の兆候(危険性)を的確に検知することも可能となる。更に、偏差角度と補助基準値との比較結果(偏差モニタ)を見ることにより、例えばステッピングモータ4の駆動条件が適正であるか否かを判断してドライブ条件を見直す機会を得ることや、コントローラ3における指令パルス出力の加速割合を決めるときの判断材料にすることが可能となる。更に、実際の偏差角度の状態を長期間で調べることにより、ステッピングモータ4のメンテナンス時期を把握することも可能となる。
以上のような本実施形態の脱調判定によれば、従来のように偏差角度が1回でも基準値以上になったら脱調と判定するのではなく、フィルタ時間×フィルタ回数で規定されるフィルタ期間という概念を導入して脱調の判定を行うため、従来のような脱調の誤判定の発生を回避すること又は低減することができる。
ここで、従来の脱調検出装置を用いてステッピングモータ4の脱調を検出する場合について、図7を参照しながら説明する。通常、ドライバ10がコントローラ3からの指令パルスCWP,CCWPに従って励磁パターン出力部20から励磁シーケンスを出力することによって、ステッピングモータ4を所定の回転速度で等速で回転駆動させる場合、励磁シーケンスに従った励磁電流によって位置決めされるステッピングモータ4の指令角度位置は、時間に比例して変化する。
一方、ステッピングモータ4の回転軸が実際に回転する回転角度位置を見てみると、実際の回転角度位置は、指令角度位置の直線に対し、ジグザグ状に揺れながら少し遅れて追従するように変化する。すなわち、ステッピングモータ4では、コイルに流れる電流を切り替えてコイルの磁界の向きを変えることによってロータを磁力で回転させるため、ステッピングモータ4の実際の回転角度位置は、制御上の指令角度位置に対して遅れを生じさせる。
更にステッピングモータ4では、コイルのインダクタンス等に起因してコイルに流れる励磁電流の立ち上がりがコントローラ3の指令パルスに対して遅れてしまうため、制御上の指令角度位置に対する実際の回転角度位置の遅れがより大きくなり易い。
また、上述のような励磁電流の立ち上がりの遅れに加えて、ステッピングモータ4には、負荷の変動、振動、速度斑、機械的な誤差、慣性モーメントなどが発生するため、これらに起因して、ステッピングモータ4の実際の回転角度位置は、通常、指令角度位置の直線に対してジグザグ状に揺れるような動きを示す。
このようにステッピングモータ4が回転駆動する場合において、従来の脱調検出装置では、制御上の指令角度位置と実際の回転角度位置との差(偏差角度)が、所定の基準値(例えば4.5°)に達した時点で、たとえステッピングモータ4に脱調が生じていなくても、脱調の発生を判定し、ステッピングモータ4の回転駆動を停止させる(後述する比較例2を参照)。
また、このように従来の脱調検出装置がアラーム信号を出力してステッピングモータ4の回転駆動を停止させた時点では、ドライバ10の励磁パターン出力部20は、実際の回転角度位置よりも先の角度位置の励磁パターンを既に出力して、スイッチング部40でスイッチング素子TR1〜TR10の切り替えが行われるため、ステッピングモータ4は、アラーム信号を出力したときに励磁パターン出力部20が既に出力している励磁パターンの角度位置までステップ駆動して停止する。
このように、従来の脱調検出装置では、例えばステッピングモータ4の振動、速度斑、慣性モーメント、また、ステッピングモータ4に加えられる負荷の変動などに起因して、制御上の指令角度位置と実際の回転角度位置との間の偏差角度が瞬間的に大きくなった場合に、ステッピングモータ4に脱調が実際に発生していなくても、脱調の発生を誤って判定してしまい、ステッピングモータ4の回転駆動を停止させるという問題があった。
すなわち、従来では、ステッピングモータ4を高速で回転駆動させるときや、ステッピングモータ4の回転速度を急激に変化させるときなどに、脱調の誤判定が生じ易くなるため、実際には脱調が発生してなく、ステッピングモータ4の回転駆動を維持できるにも関わらず、ステッピングモータ4を自動的に強制的に停止させてしまい、その結果、ステッピングモータ4の高速回転動作や急加速・急減速動作を妨げるという問題があった。
これに対して、本実施形態の脱調判定においては、上述のようにフィルタ時間×フィルタ回数で規定されるフィルタ期間を用いて脱調の判定を行う(後述する実施例6を参照)。従って、例えば図6に示したように、制御上の指令角度位置と実際の回転角度位置との間の偏差角度が、脱調判定基準値以上に大きくなったときにはドライバ10の比較判定部53でフラグを立てるものの、フィルタ時間(16μs)毎に行う偏差角度と脱調判定基準値との比較処理で、フィルタ回数(100回)分だけ連続してフラグが立てられなければ脱調の発生を判定しない。このため、偏差角度が上述のように瞬間的に大きくなっても、従来のように脱調の発生を誤って判定することはなく、ステッピングモータ4の回転駆動を安定して維持することができる。
従って、本実施形態の脱調判定では、例えば脱調判定基準値を4.5°と比較的小さい値に設定しても、偏差角度が瞬間的に大きくなることに起因する脱調の誤判定を回避すること又は低減することができる。このように、本実施形態では、脱調判定基準値を過剰に大きくしなくても脱調の誤判定を生じ難くすることができるため、ステッピングモータ4の高速回転動作や急加速・急減速動作が従来のように妨げられることを抑制し、ステッピングモータ4の加減速特性をより実効的に発揮させることができる。
また、本実施形態の脱調判定において、ステッピングモータ4に実際に脱調が生じた場合には、制御上の指令角度位置と実際の回転角度位置との間の偏差角度は必然的に漸増し、ドライバ10の比較判定部53でフラグを立てる処理が連続して繰り返される。従って、ステッピングモータ4の脱調発生から、1.6ms(1600μs=フィルタ時間×フィルタ回数)という微小なフィルタ期間で、その脱調を迅速に且つ確実に判定し、ステッピングモータ4の回転駆動を停止させて回転軸の角度位置をホールドすることができる。
なお、本実施形態の脱調判定では、フィルタ時間を「16μs」に設定し、フィルタ回数を「100回」に設定しているが、例えばステッピングモータ4の用途によってステッピングモータ4の振動や速度斑が大きく生じるような場合は、フィルタ時間を長くすることや、フィルタ回数を多くすることによってフィルタ期間を長く設定すれば、脱調判定に要する時間は長くなるものの、脱調の誤判定をより生じ難くすることができる。
一方、ステッピングモータ4の振動や速度斑が小さい場合には、フィルタ時間を短くすることや、フィルタ回数を少なくすることによってフィルタ期間を短く設定すれば、脱調の判定をより迅速に行うことができる。従って、フィルタ時間及びフィルタ回数、更に脱調判定基準値については、上述した本実施形態の値に限定されるものではなく、ステッピングモータ4の用途等に応じて任意に設定することが可能である。
また、上述した本実施形態におけるドライバ10のロジック回路は、例えば現時点で機械装置等に既に組み込まれている従来のドライバがFPGAで励磁シーケンスを制御するものであれば、そのFPGA内部に組み込むことが可能である。また、ドライバの基板としては、ロータリーエンコーダ5から出力される信号を受け付けるフォトカプラ回路とコネクタを設ければ、ドライバ製品として簡単に実現することができる。
実施例として、上述した実施形態の脱調判定装置を用いて、ステッピングモータ4をハーフステップ駆動させるとともに、回転速度を3rps(3000Hz)から10rps(1000Hz)まで様々な加速割合で加速させるときのステッピングモータ4の脱調判定を、脱調判定基準値とフィルタ回数の数値を変えた12種類の条件で行った(実施例1〜12)。
ここで、加速割合とは、ステッピングモータ4の回転速度を1rps速くするために必要な時間を表す駆動加速rate(ms/rps)を言い、駆動加速rateの数値が小さくなるほど、回転速度の加速が急激になる(きつくなる)ことを表している。
なお本実施例では、ステッピングモータ4として、山洋電気株式会社製のインクリメンタル型ロータリーエンコーダ付き5相ステッピングモータ(103F7852−82XE42)を使用して、回転軸への外部慣性負荷及び外部摩擦負荷を加えずに、ステッピングモータ4の回転駆動と脱調判定を行った。この場合、ロータリーエンコーダ5は、90°の位相差を有するA−CH及びB−CHの2相のパルス信号6を出力するものであり、また、1回転当たりに500回のパルス(矩形波)を発生させるため、4逓倍して2000C/Tの分解能が得られる。
また本実施例では、ステッピングモータ4が実際に回転した回転角度位置をより正確に把握するために、上述の山洋電気株式会社製ロータリーエンコーダ5とは別に、1回転当たりに50000のパルスを発生させて4逓倍の200000C/Tの分解能を得ることが可能な検査用のインクリメンタル型ロータリーエンコーダを、ステッピングモータ4に付設し、ステッピングモータ4の実際の回転角度位置を高精度に検出した。
(実施例1〜実施例3)
脱調判定基準値として「5.4°」を選択するとともに、フィルタ回数の数値を、実施例1では「400回」、実施例2では「200回」、実施例3では「100回」に設定して、ステッピングモータ4の脱調判定を行った。
(実施例4〜実施例6)
脱調判定基準値として「4.5°」を選択するとともに、フィルタ回数の数値を、実施例4では「400回」、実施例5では「200回」、実施例6では「100回」に設定して、ステッピングモータ4の脱調判定を行った。
(実施例7〜実施例9)
脱調判定基準値として、不安定点となる「3.6°」を選択するとともに、フィルタ回数の数値を、実施例7では「400回」、実施例8では「200回」、実施例9では「100回」に設定して、ステッピングモータ4の脱調判定を行った。
(実施例10〜実施例12)
脱調判定基準値として、極めて小さな「2.7°」を選択するとともに、フィルタ回数の数値を、実施例10では「400回」、実施例11では「200回」、実施例12では「100回」に設定して、ステッピングモータ4の脱調判定を行った。
以上の実施例1〜実施例12の12種類の条件で、ステッピングモータ4の脱調判定を行ったときの脱調判定装置の判定結果を図8の表にまとめて示す。
なお、参考のために、ステッピングモータ4の実際の回転特性を見るために、上述した実施形態の脱調判定装置の機能を無効にして、回転速度を3rps(3000Hz)から10rps(1000Hz)まで様々な加速割合でステッピングモータ4を加速させて、ステッピングモータ4に実際に脱調が生じる加速割合(すなわち、加速追従性の限界値)を調査した。
その結果、本実施例で用いるステッピングモータ4は、回転速度の加速割合を1.6ms/rpsまで速くしても脱調が発生することはなく、正常回転駆動を行うこと、また、回転速度を1.4ms/rpsの加速割合で加速させると脱調が発生することが確認された。この脱調判定装置の機能を無効にしたときの脱調の発生の有無についても、図8の表に重ねて示す。
(比較例1〜比較例4)
比較のために、フィルタ時間及びフィルタ回数が設定されることのない従来の脱調判定装置を用いて、ステッピングモータ4を上述した実施例と同様の条件でステップ駆動させるときの脱調判定を行った。
この場合、脱調判定を行う基準値として、比較例1では「5.4°」(実施例1〜実施例3と同じ)に、比較例2では「4.5°」(実施例4〜実施例6と同じ)に、比較例3では「3.6°」(実施例7〜実施例9と同じ)に、比較例4では「2.7°」(実施例10〜実施例12と同じ)に設定した。また、偏差角度と基準値との比較を16μs間隔で行い、偏差角度の大きさが基準値以上になった時点で脱調の発生を判定した。
これらの比較例1〜比較例4の条件で、ステッピングモータ4の脱調判定を行ったときの脱調判定装置の判定結果についても、図8の表に重ねて示す。
図8の表に示したように、例えば脱調判定基準値を、比較的大きな「5.4°」に設定した実施例1〜3と比較例1の場合では、ステッピングモータ4が正常に回転する1.6ms/rpsまでの加速割合では、脱調の誤判定を行うことなく、また、ステッピングモータ4を1.4ms/rpsの加速割合で回転させて脱調が発生したときは、その脱調の発生を的確に判定することができた。
脱調判定基準値を上記の場合よりも小さい「4.5°」に設定した実施例4〜6の場合では、ステッピングモータ4が本来正常に回転することが可能な1.6ms/rpsまでの加速割合では、脱調の誤判定を行うことなく、ステッピングモータ4をその加速特性に従って適切に回転させることができる。特に、実施例6は、実施例4及び実施例5に比べてフィルタ回数が少ないため、脱調の有無をより迅速に且つ正確に判定することができる。
これに対して、基準値を「4.5°」に設定した比較例2の場合では、3.2ms/rpsまでの加速割合では脱調の誤判定を行うことがなかったが、加速割合が3.0ms/rpsよりも速くなると脱調の誤判定が発生した。従って、従来の脱調判定装置では、加速割合が3.0ms/rps〜1.6ms/rpsの範囲では、脱調の誤判定によりステッピングモータ4の回転駆動を強制的に停止させることが判った。
すなわち、この比較例2では、ステッピングモータ4が本来加速することが可能な1.6ms/rpsの加速割合に対して、割合が2倍緩やかとなる3.2ms/rpsの加速割合でしかステッピングモータ4を立ち上げることができないため、ステッピングモータ4が備える加速追従性を低下させる結果となった。このようなステッピングモータ4の加速追従性を低下させる傾向は、比較例3及び4との比較から明らかなように、脱調判定の基準値を小さくするほど顕著に表れる。
ここで、実施例6の設定条件で、ステッピングモータ4の加速割合を3.0ms/rpsにして脱調判定を行ったときのステッピングモータ4における指令角度位置、回転角度位置及び偏差角度の計測結果を、図9のグラフに示す。また、比較例2の設定条件で、ステッピングモータ4の加速割合を3.0ms/rpsにして脱調判定を行って脱調の誤判定が生じたときのステッピングモータ4における指令角度位置、回転角度位置及び偏差角度の計測結果を、図10のグラフに示す。
なお、これら図9及び図10のグラフや、後述する図11〜図14のグラフにおいて、1番の矢印が示すデータは、ドライバ10のパルスカウンタ部22が特定するステッピングモータ4の制御上の指令角度位置を表している。3番の矢印が示すデータは、200000C/Tの分解能を有する検査用のロータリーエンコーダ5を用いて検出されるステッピングモータ4の実際の回転角度位置を表している。更に、2番の矢印が示すデータは、1番の矢印が示す指令角度位置と3番の矢印が示す回転角度位置とから計測される偏差角度の大きさを表している。
脱調の誤判定が生じなかった図9に示す実施例6では、3番の矢印が示す実際の回転角度位置のデータが、1番の矢印が示す制御上の指令角度位置のデータに追従するように変化しているため、ステッピングモータ4が駆動を停止させずに、コントローラ3からの指令パルスに従って適切に回転していることが判る。また、2番の矢印が示す偏差角度のデータは、増大と減少とを繰り返すように変化している。この偏差角度のデータにおける繰り返しは、ステッピングモータ4の回転軸の速度斑(振動)を表している。
これに対して、図10に示す比較例2では、2番の矢印が示す偏差角度のデータが4.5°に達したときに脱調を誤判定するため、ステッピングモータ4が安定した回転駆動を維持することが可能であるにも関わらず、ステッピングモータ4の駆動を停止させた。なお、比較例2では、脱調判定装置が脱調を判定してから、ドライバ10の励磁パターン出力部20を停止させて励磁シーケンス(励磁パターン)の出力を止めるため、ステッピングモータ4は、脱調を判定したときに励磁パターン出力部20が既に出力している励磁パターンの角度位置(7.56°)付近まで回転して停止している。
次に、脱調判定基準値を不安定点となる「3.6°」に設定した実施例7〜9と比較例3を比べてみると、フィルタ回数の数値を「400回」に設定した実施例7と、「200回」に設定した実施例8とでは、脱調の誤判定が生じることなく、ステッピングモータ4をその加速特性に従って適切に回転させることができることが判った。
一方、フィルタ回数の数値を「100回」に設定した実施例9では、実施例7及び8に比べてフィルタ回数が少ないため、より迅速に脱調の有無が判定可能であるものの、加速割合が3.0ms/rps〜1.6ms/rpsの範囲で脱調の誤判定を発生させる結果となった。なお、基準値を「3.6°」に設定した比較例3では、6.8ms/rpsの加速割合から速い範囲で脱調の誤判定が生じているため、実施例9は、従来の比較例3に比べて、2倍以上速い加速割合まで脱調の誤判定を防止できることが判った。
ここで、脱調の誤判定が生じなかった実施例8の設定条件で、ステッピングモータ4の加速割合を3.0ms/rpsにして脱調判定を行ったときのステッピングモータ4における指令角度位置、回転角度位置及び偏差角度の計測結果を、図11のグラフに示す。また、実施例9の設定条件で、ステッピングモータ4の加速割合を3.0ms/rpsにして脱調判定を行って、脱調の誤判定が生じたときのステッピングモータ4における指令角度位置、回転角度位置及び偏差角度の計測結果を、図12のグラフに示す。
脱調の誤判定が生じなかった図11に示す実施例8では、2番の矢印が示す偏差角度のデータが、脱調判定基準値である「3.6°」を超えているが、フィルタ期間である3.2ms(16μs×200回)以内に、偏差角度のデータが「3.6°」を下回っているため、脱調の発生を判定せずに(脱調無しの判定を維持したまま)、ステッピングモータ4がコントローラ3からの指令パルスに従って適切に回転していることが判る。
これに対して、図12に示す実施例9では、2番の矢印が示す偏差角度のデータが、脱調判定基準値である「3.6°」以上となっている状態が、フィルタ期間である1.6ms(16μs×100回)の間継続しているため、偏差角度が3.6°以上になってから1.6ms経過した時点で脱調の発生を誤判定し、ステッピングモータ4の駆動を停止させている。
この場合、ステッピングモータ4は、脱調判定時に励磁パターン出力部20が既に出力した励磁パターンの角度位置(9.72°)付近まで回転して停止している。このように実施例9では、3.0ms/rpsより緩やかな加速割合でしかステッピングモータ4を立ち上げることができないため、結果的に、ステッピングモータ4が備える加速追従性を低下させている。
最後に、脱調判定基準値を極めて小さな「2.7°」に設定した実施例10〜12と比較例4を比べてみると、フィルタ回数の数値を「400回」に設定した実施例10では、脱調判定に要する時間は長くなるものの、脱調の誤判定が生じることなく、ステッピングモータ4をその加速特性に従って適切に回転させることができ、ステッピングモータ4の加速追従性の低下を防止できることが判った。
一方、フィルタ回数の数値を「200回」に設定した実施例11では、実施例10に比べてフィルタ回数が少ないため、より迅速に脱調の有無を判定できるものの、加速割合が3.0ms/rps〜1.6ms/rpsの範囲で脱調の誤判定が生じた。なお、フィルタ回数の数値を「200回」に設定した実施例12と比較例4では、10.0ms/rpsの加速割合でも脱調の誤判定が生じているため、実施例11は、従来の比較例4に比べて、3倍以上速い加速割合まで脱調の誤判定を防止できることが判った。また、実施例12の設定条件は、今回のステッピングモータ4に対しては実用的でないことが判った。
ここで、実施例10の設定条件で、ステッピングモータ4の加速割合を3.0ms/rpsにして脱調判定を行ったときのステッピングモータ4における指令角度位置、回転角度位置及び偏差角度の計測結果を、図13のグラフに示す。また、実施例11の設定条件で、ステッピングモータ4の加速割合を3.0ms/rpsにして脱調判定を行って、脱調の誤判定が生じたときのステッピングモータ4における指令角度位置、回転角度位置及び偏差角度の計測結果を、図14のグラフに示す。
脱調の誤判定が生じなかった図13に示す実施例10では、2番の矢印が示す偏差角度のデータが、脱調判定基準値である「2.7°」を超えているが、フィルタ期間である6.4ms(16μs×400回)以内に、偏差角度のデータが「2.7°」を下回っているため、脱調の発生を判定せずに(脱調無しの判定を維持したまま)、ステッピングモータ4がコントローラ3からの指令パルスに従って適切に回転していることが判る。
これに対して、図14に示す実施例11では、2番の矢印が示す偏差角度のデータが、脱調判定基準値である「2.7°」以上となっている状態が、フィルタ期間である3.2ms(16μs×200回)の間継続しているため、偏差角度が2.7°以上になってから3.2ms経過した時点で脱調の発生を誤判定し、ステッピングモータ4の駆動を停止させている。この場合、ステッピングモータ4は、脱調判定時に励磁パターン出力部20が既に出力した励磁パターンの角度位置(7.2°)付近まで回転して停止している。