(57)【要約】【課題】軸１の状態を基にして軸２への指令を作成する場合、軸１の状態が軸２への指令に反映されるまでの遅れがないモーションコントローラとその指令方法を提供する。【解決手段】プログラムメモリ部１１と、プログラムメモリ部１１のアプリケーションプログラムを実行しオプションモジュール２との間で入出力データＳ１を授受するＣＰＵ１０とを備えたＰＬＣモジュール１と、設定パラメータ領域２１とをもつ共有メモリ２０と、サーボドライバからの応答を取り込んで応答パラメータとして作成しまたモーション制御処理を行うＣＰＵ２３とを備えたオプションモジュールと、から構成されるモーションコントローラが、前記応答領域に格納されたパラメータへのリンク情報を各軸の指令設定領域にもち、自軸の指令パラメータとして他軸あるいは自軸の応答パラメータを参照するようにした。【選択図】図１
2007241744.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムを格納したプログラムメモリ部（１１）と、前記プログラムメモリ部（１１）のアプリケーションプログラムをサンプリング周期毎に実行しオプションモジュール（２）との間で入出力データ（Ｓ１）を授受するＣＰＵ（１０）と、を備えたＰＬＣモジュール（１）と、
前記ＰＬＣモジュールからサーボドライバ（３）へのモーション指令を設定するための設定パラメータ領域（２１）とサーボドライバ（３）からの応答・状態を格納するためのモニタパラメータ領域（２２）とを持ち、前記ＰＬＣモジュール（１）との入出力データ（Ｓ１）の授受を行う共有メモリ（２０）と、サーボドライバ（３）からの応答を取り込んで応答パラメータとして作成しモーション制御処理を行うＣＰＵ（２３）と、前記ＣＰＵ（２３）の処理したモーション制御処理結果をサーボドライバ（３）へ指令するとともに前記サーボドライバ（３）からの応答を受け取るサーボドライバＩ／Ｆ（インターフェース）（２４）と、を備えたオプションモジュールと、
から構成されるモーションコントローラにおいて、
前記モニタパラメータ領域の応答領域に格納されたパラメータへのリンク情報を前記設定パラメータ領域の各種の指令設定領域にもっていることを特徴とするモーションコントローラ。
【請求項２】
アプリケーションプログラムを格納したプログラムメモリ部（１１）と、前記プログラムメモリ部（１１）のアプリケーションプログラムをサンプリング周期毎に実行しオプションモジュール（２）との間で入出力データ（Ｓ１）を授受するＣＰＵ（１０）と、を備えたＰＬＣモジュール（１）と、前記ＰＬＣモジュール（１）からサーボドライバ（３）へのモーション指令を設定するための設定パラメータ領域（２１）とサーボドライバ（３）からの応答・状態を格納するためのモニタパラメータ領域（２２）とを持ち、前記ＰＬＣモジュール（１）との入出力データ（Ｓ１）の授受を行う共有メモリ（２０）と、サーボドライバ（３）からの応答を取り込んで応答パラメータとして作成しモーション制御処理を行うＣＰＵ（２３）と、前記ＣＰＵ（２３）の処理したモーション制御処理結果をサーボドライバ（３）へ指令するとともに前記サーボドライバ（３）からの応答を受け取るサーボドライバＩ／Ｆ（インターフェース）（２４）と、を備えたオプションモジュールと、
から構成され、前記モニタパラメータ領域の応答領域に格納されたパラメータへのリンク情報を前記設定パラメータ領域の各種の指令設定領域にもっているモーションコントローラの指令方法において、
前記応答領域に格納されたパラメータへのリンク情報を用いて、自軸の指令パラメータとして他軸あるいは自軸の応答パラメータを参照することを特徴とするモーションコントローラの指令方法。
【請求項３】
前記モーションコントローラのシステムソフトウェアにてあらかじめ準備されている前記応答パラメータを使用した複数の指令作成方法の中から、所望の動作を実現するための使用方法を選択することを特徴とする請求項２記載のモーションコントローラの指令方法。
【請求項４】
前記応答パラメータの使用方法を指令パラメータとして持つことを特徴とする請求項２記載のモーションコントローラの指令方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のサーボドライバを制御する機能を有するモーションコントローラとその指令方法に関する。
【背景技術】
【０００２】
図７は特許文献１の実施例で開示された従来のモーションコントローラの例である。図７において、１０１はＰＬＣモジュールで、プログラマブルコントローラとしての機能を有している。一般にプログラマブルコントローラは、外部の信号を取り込むための入力部１１０と、外部へ信号を出力するための出力部１１１と、データメモリ部１１２と、ユーザプログラムを記憶しているプログラムメモリ部１１４と、前記プログラムメモリ部に格納された制御プログラムに従って演算する演算部１１３から構成される。一般に演算部（ＣＰＵ）は水晶発振子１１５からのクロック信号で動作する。１１６はサンプリング周期発生回路で、モーションモジュールの通信周期発生回路２３の出力である割込信号Ｓ３をもとにその整数倍の周期が生成されてＣＰＵに入力され、プログラマブルコントローラの入力、出力および演算を実行する周期となる。サンプリング周期発生回路１１６において、割込信号Ｓ３の何倍をサンプリング周期にするかは、ソフトウェアまたはハードウェアで設定できるようになっている。１０２は、モーションモジュールで、ＰＬＣモジュールがセットした位置データを自モジュール内に格納するためのメモリ１２５と、ＰＬＣモジュールからの位置データＳ１と、位置データＳ１をメモリ１２５に格納した時にＰＬＣモジュールに位置データの取り込みが完了したことを知らせる位置データ格納完了Ｓ２を格納するための共有メモリ１２０と、共有水晶発振子１２４で動作するＣＰＵ１２１と、サーボドライバに位置データを送信するためのデータ送受信回路１２２と、モーションモジュールとサーボドライバ間の通信周期を生成する通信周期発生回路１２３から構成される。通信周期発生回路１２３からの出力が割込信号として、モーションモジュールのＣＰＵ１２１と、ＰＬＣモジュールのサンプリング周期発生回路に同時に入力されるというものである。
また、一般にモジュール型のモーションコントローラ装置は図４のような構成をしている。図４において、１はＰＬＣモジュールであり、プログラムメモリ部１１に格納されたアプリケーションプログラムをサンプリング周期毎に実行し、オプションモジュール２との間でバスを通して入出力データＳ１を授受する。
【０００３】
オプションモジュール２は、ＰＬＣモジュールとの入出力データＳ１の授受を行なうための共有メモリ２０を持つ。共有メモリ２０には、サーボドライバ３へのモーション指令を設定するための設定パラメータ領域２１と、サーボドライバ３からの応答、状態を格納するためのモニタパラメータ領域２２がある。ＰＬＣモジュールからのモーション指令は、設定パラメータ領域２１に設定され、ＣＰＵ２３にて、モーション制御処理を行い、サーボドライバＩ／Ｆ２４を経由して、サーボドライバ３へ指令される。サーボドライバからの応答は、サーボドライバＩ／Ｆ２４を経由して取り込まれ、ＣＰＵ２３にて応答パラメータとして作成され、モニタパラメータ領域２２に格納される。
【０００４】
サーボドライバＩ／Ｆとしては、速度/トルク指令をアナログ電圧指令として出力するアナログタイプのものと、ネットワークを介して位置／速度／トルクを指令するネットワークタイプのものがある。
【０００５】
図５は、共有メモリ２０の設定パラメータ領域、モニタパラメータ領域の詳細を示すものである。設定パラメータ領域は、軸ごとに独立した構成となっており、それぞれ指令用のパラメータが格納されている。モニタパラメータ領域も軸ごとに独立した構成となっており、軸の動作状態を示すパラメータが格納されている。
【０００６】
図６は、ＰＬＣモジュールとオプションモジュールの処理のタイミングを示すものである。ＰＬＣモジュール、オプションモジュールは共に一定のサンプリング周期で同期して動作している。ＰＬＣモジュールのサンプリング周期処理は、サンプリング周期毎の割込みにより起動され、オプションモジュールとのデータ入出力処理を行なった後、アプリケーションプログラムの実行を行なう。アプリケーションプログラム実行によるオプションモジュールへの指令は、共有メモリにセットされる。
オプションモジュールのサンプリング周期処理は、サンプリング周期毎のＰＬＣモジュールからの割込みにより起動され、共有メモリを経由してＰＬＣモジュールとのデータ入出力を行なった後、モーション制御処理を行なう。モーション制御処理は、割り付けられている軸ごとに順番に行なわれ、全軸の処理が完了したところで、指令が出力される。
【特許文献１】特開平１１−３３８５１６号公報（図１）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
軸１の状態を元に、軸２への指令を作成するような用途においては、上述のようなモーションコントローラ装置では、軸１のモニタパラメータをＰＬＣモジュールで読み込み、アプリケーションプログラム処理にて、モニタした情報を利用して軸２への指令を作成し、その指令をオプションモジュールに設定するという手順で指令が実行される。この場合、軸１の状態が、軸２の指令に反映されるまでには、２サンプリング周期を要する。
例えば、２軸目の指令位置を、１軸目のフィードバック位置とするアプリケーションを実現しようとすると、オプションモジュールが実際にサーボドライバに指令する指令位置は２サンプリング周期前のフィードバック位置であり、十分な応答性が得られないという問題があった。
【０００８】
また、サンプリング周期はアプリケーションプログラムの処理内容の増大や、制御する軸数の増加によって、サンプリング周期設定値が長くなる。その結果、サンプリング周期の延びにより、モニタ情報を参照するタイミングが遅くなり、要求される制御性能が得られないという問題があった。
【０００９】
本発明はこのような問題点に鑑みてなされたものであり、ＰＬＣモジュールとオプションモジュール間のデータ授受の遅れに影響を受けることなく、また、サンプリング周期設定に影響を受けることなく十分な応答特性をもつモーションコントローラとその指令方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記問題を解決するため、本発明は、次のようにしたのである。
請求項１に記載の発明は、モーションコントローラにかかわり、アプリケーションプログラムを格納したプログラムメモリ部１１と、前記プログラムメモリ部１１のアプリケーションプログラムをサンプリング周期毎に実行しオプションモジュール２との間で入出力データＳ１を授受するＣＰＵ１０と、を備えたＰＬＣモジュール１と、前記ＰＬＣモジュールからサーボドライバ３へのモーション指令を設定するための設定パラメータ領域２１とサーボドライバ３からの応答・状態を格納するためのモニタパラメータ領域２２とを持ち、前記ＰＬＣモジュール１との入出力データＳ１の授受を行う共有メモリ２０と、サーボドライバからの応答を取り込んで応答パラメータとして作成しモーション制御処理を行うＣＰＵ２３と、前記ＣＰＵ２３の処理したモーション制御処理結果をサーボドライバ３へ指令するとともに前記サーボドライバからの応答を受け取るサーボドライバＩ／Ｆ（インターフェース）２４と、を備えたオプションモジュールと、から構成されるモーションコントローラにおいて、前記モニタパラメータ領域の応答領域に格納されたパラメータへのリンク情報を前記設定パラメータ領域の各種の指令設定領域にもっていることを特徴としている。
請求項２に記載の発明は、アプリケーションプログラムを格納したプログラムメモリ部１１と、前記プログラムメモリ部１１のアプリケーションプログラムをサンプリング周期毎に実行しオプションモジュール２との間で入出力データＳ１を授受するＣＰＵ１０と、を備えたＰＬＣモジュール１と、前記ＰＬＣモジュールからサーボドライバ３へのモーション指令を設定するための設定パラメータ領域２１とサーボドライバ３からの応答・状態を格納するためのモニタパラメータ領域２２とを持ち、前記ＰＬＣモジュール１との入出力データＳ１の授受を行う共有メモリ２０と、サーボドライバからの応答を取り込んで応答パラメータとして作成しモーション制御処理を行うＣＰＵ２３と、前記ＣＰＵ２３の処理したモーション制御処理結果をサーボドライバ３へ指令するとともに前記サーボドライバからの応答を受け取るサーボドライバＩ／Ｆ（インターフェース）２４と、を備えたオプションモジュールと、から構成され、前記モニタパラメータ領域の応答領域に格納されたパラメータへのリンク情報を前記設定パラメータ領域の各種の指令設定領域にもっているモーションコントローラの指令方法において、前記応答領域に格納されたパラメータへのリンク情報を用いて、自軸の指令パラメータとして他軸あるいは自軸の応答パラメータを参照することを特徴とする。
請求項３に記載の発明は、請求項２記載のモーションコントローラの指令方法において、モーションコントローラのシステムソフトウエアにてあらかじめ準備されている前記応答パラメータを使用した複数の指令作成方法の中から、所望の動作を実現するための使用方法を選択することを特徴とする。
請求項４記載の発明は、請求項２記載のモーションコントローラの指令方法において、前記応答パラメータの使用方法を指令パラメータとして持つことを特徴している。
【発明の効果】
【００１１】
請求項１および２に記載の発明によると、他軸の応答パラメータを同サンプリング周期内で参照し、自軸の指令作成に使用するので、十分な応答特性をもつモーションコントローラとその指令方法を提供することができる。
請求項３に記載の発明によると、参照した他軸応答パラメータの使用方法を設定することができる。
請求項４に記載の発明によると、使用用途に応じ、参照した他軸応答パラメータの使用方法をアプリケーションにて切り替えることができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明のモーションコントローラとその指令方法の具体的実施例について、図に基づいて説明する。
【実施例１】
【００１３】
図１は、本発明のモーションコントローラとその指令方法を実施する共有メモリ上の設定パラメータ、モニタパラメータ、モーション制御処理部の関係を示す図である。図１において、設定パラメータは目標位置、速度指令設定値、トルク指令設定値、モニタパラメータへのリンク設定、使用方法設定などにより構成され、モニタパラメータは機械座標系指令位置、フィードバック位置、フィードバック速度、トルク指令モニタなどにより構成され、モーション制御処理には、指令位置作成、加減速パターン作成、指令速度作成などの処理がある。
設定パラメータの中には、モニタパラメータへのリンク設定があり、他軸、あるいは自軸のモニタパラメータ領域のパラメータを設定することができる。パラメータの設定方法としては、レジスタを指定する方法や、軸番号とパラメータ番号を指定する方法が考えられる。
また、設定パラメータの中には、使用方法設定の項目があり、指定したモニタパラメータの使用方法を選択することができる。使用方法設定も設定パラメータであるため、アプリケーションプログラムからの設定の切り替えが可能である。使用方法としては、モニタパラメータを指令位置として使用する、モニタパラメータと自軸フィードバック位置の差分を指令位置に加算する、あるいは、モニタパラメータをトルク指令値に加算するなど、指令値として直接使用したり、補償量として使用する方法が考えられる。これらは、オプションモジュールのシステムソフトウェアにあらかじめ組み込まれている。
【００１４】
図２は、１軸目のフィードバック位置を２軸目の指令位置として使用する場合の設定を示したものである。２軸目設定パラメータのモニタパラメータへのリンク設定には、１軸目のフィードバック位置が設定されており、使用方法設定には、モニタパラメータを指令位置として使用するように設定されている。
【００１５】
図３は、この設定でのＰＬＣモジュールとオプションモジュールの処理のタイミングを示すものである。ＰＬＣモジュール、オプションモジュールは共に一定のサンプリング周期で同期して動作している。ＰＬＣモジュールのサンプリング周期処理は、サンプリング周期毎の割込みにより起動され、オプションモジュールとのデータ入出力処理を行なった後、アプリケーションプログラムの実行を行なう。アプリケーションプログラム実行によるオプションモジュールへの指令は、共有メモリにセットされる。
オプションモジュールのサンプリング周期処理は、サンプリング周期毎のＰＬＣモジュールからの割込みにより起動され、共有メモリを経由してＰＬＣモジュールとのデータ入出力を行なった後、モーション制御処理を行なう。モーション制御処理は、軸ごとに順番に行なわれ、全軸の処理が完了したところで、指令が出力される。
２軸目の処理を実行するタイミングで、１軸目のモニタ情報は更新されているため２軸目のモーション制御処理では、同サンプリング周期での１軸目フィードバック位置を参照できる。これを指令位置として使用するため、遅れが生じることなく、またサンプリング周期設定の影響を受けることなく、１軸目のフィードバック位置を指令位置として使用することができるのである。
【図面の簡単な説明】
【００１６】
【図１】本発明の方法を適用する共有メモリ上の設定パラメータ、モニタパラメータ、モーション制御処理部の関係を示す図である。
【図２】本発明の実施例を示す図である。
【図３】本発明の実施例での動作説明図である。
【図４】モーションコントローラ装置の概略構成図である。
【図５】共有メモリ上の設定パラメータ、モニタパラメータの概略構成図である。
【図６】従来の動作説明図である。
【図７】従来の構成を示すブロック図。
【符号の説明】
【００１７】
１  ＰＬＣモジュール
２  オプションモジュール
３  サーボドライバ
１０、２３  ＣＰＵ
１１  プログラムメモリ部
２０  共有メモリ
２１  設定パラメータ領域
２２  モニタパラメータ領域
２４  サーボドライバＩ／Ｆ
【図１】
2007241744.tif 000003
【図２】
2007241744.tif 000004
【図３】
2007241744.tif 000005
【図４】
2007241744.tif 000006
【図５】
2007241744.tif 000007
【図６】
2007241744.tif 000008
【図７】
2007241744.tif 000009