(57)【要約】【課題】リアルタイム性が保証出来ないようなローコストなモーションコントローラを使ってもモーションコントロールシステムを構築できるようにする。【解決手段】サーボドライブ５０、６０がデータチェック処理をするとき、通信エラーを検出しても、その検出回数がパラメータ格納部５０５、６０５に設定した許容エラー回数まではエラー処理部５０６、６０６の処理を実行させず、指令データの平均化処理を行う。【選択図】図１
2006227719.tif 000002
【特許請求の範囲】
【請求項１】
モーションプログラムを解析して位置指令データを生成し、その位置指令データを出力するモーションコントローラと、前記位置指令データに従い、モータ・負荷を駆動する複数のサーボドライブと、前記モーションコントローラと前記複数のサーボドライブを接続する高速ネットワークからなるモーションコントロールシステムにおいて、
前記サーボドライブは、通信エラーを検出してその回数が予め設定された回数をこえるとエラー処理をするデータチェック処理機能と、位置指令データを平均化するデータ平均化処理機能とを備えていることを特徴とするモーションコントロールシステム。
【請求項２】
前記モーションコントローラは、ウォッチドグ処理機能を備えていることを特徴とする請求項１記載のモーションコントロールシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モーションコントローラとサーボドライブが高速ネットワークで接続されたモーションコントロールシステムに関する。
【背景技術】
【０００２】
従来技術について図を用いて説明する。
図４は従来のモーションコントロールシステムの構成を示すブロック図であり、モーションコントローラ１０と複数のサーボドライブ２０，３０が高速ネットワーク１１で接続されている。１０２は移動指令生成部であり、モーションプログラム１０１を解析して位置指令データを生成する。１０３はデータ出力部であり、生成された位置指令データを高速ネットワーク１１を介してサーボドライブ２０，３０へ出力する。２０１、３０１はサーボドライブ２０，３０のデータ入力部であり、データ出力部１０３が出力した位置指令データを受け取る。２０２、３０２はサーボ制御部であり、データ入力部２０１、３０１で受け取った位置指令データに従い、モータ・負荷２１、３１をサーボ制御する。
図５は、従来のモーションコントロールシステムの正常時のタイミングチャートである。図のように、モーションコントローラ１０は一定周期Ｔ毎に移動指令生成Ａｉとデータ出力Ｂｉを図の順で繰り返し、サーボドライブ（Ｘ軸）２０は一定周期Ｔｘ毎にデータ入力Ｃｘｉとサーボ制御Ｄｘｉを図の順で繰り返し、サーボドライブ（Ｙ軸）３０は一定周期Ｔｙ毎にデータ入力部Ｃｙｉとサーボ制御部Ｄｙｉを図の順で繰り返す。
【０００３】
また、第２の従来技術として、通信コントローラとモータドライバがシリアル通信で接続された通信システムがある。この通信システムでは、通信エラーが発生しても予め定めた時間内のエラー回数が所定のエラー許容回数以内であれば通信を停止せず、信号が受信できなくなると脱調しない限度内の変化率によりモータを減速させてモータが制御不能になるのを防ぐようになっている。（例えば特許文献１参照）。
【特許文献１】特開２００１−２１１６９２号（第６−７頁、第３図、第５図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、前述した従来技術でモータ・負荷を制御するときは、一定周期Ｔ、Ｔｘ、Ｔｙは完全に同期している必要がある。また、モーションコントローラのリアルタイム性が確保出来ていなければ、図６に示す様に割り込み処理による遅れにより、一定周期ＴがＴ’に伸びることがあり、データ出力処理Ｂ２で出力された位置指令データは本来データ入力処理Ｃｘ３、Ｃｙ３で受け取られるべきであるが、一定周期分遅れて次のデータ入力処理Ｃｘ４、Ｃｙ４で受け取られる事となる。
これとは逆に、図７に示す様に一定周期ＴがＴ”に縮むことがあり、データ出力処理Ｂ１で出力された位置指令データは本来データ入力処理Ｃｘ２、Ｃｙ２で受け取られるべきであるが、Ｂ１の出力データはＢ２の出力データに上書きされてしまい、Ｂ２の出力データがデータ入力処理Ｃｘ２、Ｃｙ２で受け取られる事となる。
完全に同期がとれていなければ、サーボドライブに渡されるデータが途中で途切れたり、抜けたりするので、位置指令データが不連続となり、モータに急激な速度変動が発生して機械的ショックが発生したり軌跡がずれたりする。このためコントローラとサーボドライブ間で位置指令データに加えてウォッチドグデータを使い、ウォッチドグ処理によってその出力データが更新されていることが確認される。ウォッチドグエラーとなった場合はエラー処理Ｅｘｉ、Ｅｙｉを行い直ちにシステムの動作を停止する。このようなウォッチドグエラーを発生させない為に、モーションコントローラは数μｓｅｃの精度で定周期処理が動作するようにリアルタイムＯＳや高性能ハードウエアを採用するので、高価なシステムになるという問題があった。
【０００５】
また、第２の従来技術によると、ウォッチドグエラーとなった場合にエラー処理として直ちにシステムの動作を停止しないものの、サーボドライブに渡されるデータが途中で途切れたり、抜けたりするので、機械的ショックが発生したり軌跡がずれたりするという問題があった。
そこで本発明は、リアルタイム性が保証出来ないようなローコストのモーションコントローラを用いても、機械的ショックや軌跡ずれを低減することができるモーションコントロールシステムを構築することを目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するために、本発明は、モーションプログラムを解析して位置指令データを生成し、その位置指令データを出力するモーションコントローラと、前記位置指令データに従い、モータ・負荷を駆動する複数のサーボドライブと、前記モーションコントローラと前記複数のサーボドライブを接続する高速ネットワークからなるモーションコントロールシステムにおいて、
前記サーボドライブは、通信エラーを検出してその回数が予め設定された回数をこえるとエラー処理をするデータチェック処理機能と、位置指令データを平均化するデータ平均化処理機能とを備えていることを特徴とし、前記モーションコントローラは、ウォッチドグ処理機能を備えていることを特徴としている。
【発明の効果】
【０００７】
本発明のモーションコントロールシステムによると、通信エラーを検出しても直ちにエラー処理を行わず、位置指令データを平均化し、位置指令データの不連続性で発生する機械的ショックや軌跡ずれを低減できるので、リアルタイムＯＳや高性能ハードウエアを採用した高価なシステムを必要とせず、リアルタイム性が補償出来ないローコストのモーションコントローラが使用できて、コストダウンが図れるという効果がある。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施の形態について図を用いて説明する。
【実施例】
【０００９】
図１は本実施例にかかるモーションコントロールシステムのブロック図である。図４に示した従来のモーションコントロールシステムと異なるのは、モーションコントローラにあるデータ出力部４０３の処理とサーボドライブの構成であり次のようになっている。モーションコントローラ４０は、モーションプログラム４０１を解析して位置指令データを生成する移動指令生成部４０２と、生成された位置指令データとカウントアップしたウォッチドグデータを高速ネットワーク４１を介してサーボドライブ５０，６０へ出力するデータ出力部４０３を備えており、データ出力部４０３がウォッチドグデータを出力する点が従来と異なっている。
サーボドライブ５０、６０はそれぞれ、位置指令データとウォッチドグデータを受け取るデータ入力部５０１、６０１と、受け取ったウォッチドグデータをチェックするデータチェック部５０２、６０２と、チェックしたデータが正しければ、位置指令データを平均化して今回位置指令値を作成するデータ平均化部５０３、６０３と、正しくなければ、エラー処理を行うエラー処理部５０６、６０６と、今回位置指令データに従ってモータ・負荷５１、６１をサーボ制御するサーボ制御部５０４、６０４と、データチェック部とデータ平均化部で使用される連続エラー回数と平均化回数Ｎが設定されているパラメータ格納部５０５、６０５とを備えており、データチェック部５０２、６０２、データ平均化部５０３、６０３、パラメータ格納部５０５、６０５、エラー処理部５０６、６０６を備えた点が従来と異なっている。
【００１０】
次に動作について説明する。
図２はモーションコントローラ４０の動作手順を示すフローチャートであり、次のステップで処理される。
（Ｓ１）移動指令生成部４０２がモーションプログラム４０１を解析し、各軸の位置指令を生成して、データ出力部４０３へ出力する。
（Ｓ２）データ出力部４０３が、ウォッチドグデータをカウントアップする。
（Ｓ３）データ出力部４０３が、高速ネットワーク４１を介して位置指令データとウォッチドグデータをサーボドライブ５０,６０へ出力する。
以上のステップを定周期に繰り返す。この時一定周期Ｔは、図５、図６に示したＴ’、Ｔ”の様に変化する場合がある。
【００１１】
図３はサーボドライブ（Ｘ）５０の動作手順を示すフローチャートであり、次のステップを定周期で繰り返す。
（Ｓ１）データ入力部５０１が位置指令データとウォッチドグデータを取り込みデータチェック部５０２に出力する。
（Ｓ２）データチェック部５０２がウォッチドグデータを受け取ると前回値から正しく更新されているかどうかをチェックし、正しければ（Ｓ３）へ移行し、正しくなければ（Ｓ４）へ移行する。
（Ｓ３）連続エラー回数をクリアし、（Ｓ９）へ移行する。
（Ｓ４）連続エラー回数を更新する。
（Ｓ５）ウォッチドグデータが前回から更新されていなければ（Ｓ６）へ移行し、更新されていれば（Ｓ７）へ移行する。
（Ｓ６）前回位置指令データを今回位置指令データとする。
（Ｓ７）連続エラー回数がパラメータ格納部５０５に設定してある連続エラー許容回数をオーバしているかどうかをチェックし、オーバしていれば（Ｓ８）へ移行し、オーバしていなければ（Ｓ９）へ移行する。
（Ｓ８）エラー処理部５０６がエラー処理を実行して直ちにシステムを停止する。
（Ｓ９）データ平均化部５０３がパラメータ格納部５０５に設定してある平均化回数Ｎを使い、Ｎ回前までの位置指令データに今回位置指令データを加えた値の平均を取って今回位置指令値とする。
（Ｓ１０）サーボ制御部５０４が受け取った今回位置指令値に従いモータ・負荷５１を駆動する。
このような手順をとっているので、通信エラーが検出されても直ちにエラー処理がされることはなく、位置データが平均化されてサーボ制御処理される。従って、ローコストのモーションコントローラを使っていても位置指令データの不連続性で生じる機械的ショックを低減することができるのである。
なお、上記の動作手順はサーボドライブ（Ｘ軸）５０について説明したが、サーボドライブ（Ｙ軸）６０も同様の処理を行う。
また、連続エラー許容回数と平均化回数は、モーションシステムの精度とショックの大きさに影響をおよぼすため、予めモーションシステムを適用する機械システムの要求性能に応じて適当な値を設定しておくのが望ましい。
【産業上の利用可能性】
【００１２】
本発明によれば、ローコストでモーションコントロールシステムが構築できるので、一般産業用機械、半導体製造装置、ロボット、などの用途にも適用できる。
【図面の簡単な説明】
【００１３】
【図１】本発明のモーションコントロールシステムの構成を示すブロック図
【図２】本発明のモーションコントローラの動作手順を示すフローチャート
【図３】本発明のサーボドライブの動作手順を示すフローチャート
【図４】従来のモーションコントロールシステムの構成を示すブロック図
【図５】モーションコントロールシステムの正常時のタイミングチャート
【図６】モーションコントロールシステムの異常時のタイミングチャート１
【図７】モーションコントロールシステムの異常時のタイミングチャート２
【符号の説明】
【００１４】
１０、４０  モーションコントローラ、１１、４１  高速ネットワーク、
１０１、４０１  モーションプログラム、１０２、４０２  移動指令生成部、
１０３、４０３  データ出力部、
２０、５０  サーボドライブ（Ｘ軸）、
２１、５１  Ｘモータ・負荷、
２０１、３０１、５０１、６０１  データ入力部、
２０２、３０２、５０４、６０４  サーボ制御部、
３０、６０  サーボドライブ（Ｙ軸）、３１、６１  Ｙモータ・負荷、
５０２、６０２  データチェック処理、５０３、６０３  データ平均化部、
５０５、６０５  パラメータ格納部、５０６、６０６  エラー処理部
【図１】
2006227719.tif 000003
【図２】
2006227719.tif 000004
【図３】
2006227719.tif 000005
【図４】
2006227719.tif 000006
【図５】
2006227719.tif 000007
【図６】
2006227719.tif 000008
【図７】
2006227719.tif 000009