JP2020170354A - モータ制御装置及びモータ制御用コンピュータプログラム - Google Patents

モータ制御装置及びモータ制御用コンピュータプログラム Download PDF

Info

Publication number
JP2020170354A
JP2020170354A JP2019071530A JP2019071530A JP2020170354A JP 2020170354 A JP2020170354 A JP 2020170354A JP 2019071530 A JP2019071530 A JP 2019071530A JP 2019071530 A JP2019071530 A JP 2019071530A JP 2020170354 A JP2020170354 A JP 2020170354A
Authority
JP
Japan
Prior art keywords
position deviation
motor
predetermined
dynamic characteristic
cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019071530A
Other languages
English (en)
Other versions
JP7021147B2 (ja
Inventor
勇作 於保
Yusaku Obo
勇作 於保
直人 園田
Naoto Sonoda
直人 園田
健太 山本
Kenta Yamamoto
健太 山本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019071530A priority Critical patent/JP7021147B2/ja
Priority to DE102020001993.5A priority patent/DE102020001993A1/de
Priority to US16/836,796 priority patent/US20200319616A1/en
Priority to CN202010250408.XA priority patent/CN111796610B/zh
Publication of JP2020170354A publication Critical patent/JP2020170354A/ja
Application granted granted Critical
Publication of JP7021147B2 publication Critical patent/JP7021147B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D13/00Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover
    • G05D13/62Control of linear speed; Control of angular speed; Control of acceleration or deceleration, e.g. of a prime mover characterised by the use of electric means, e.g. use of a tachometric dynamo, use of a transducer converting an electric value into a displacement
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/21Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
    • G05B19/25Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control
    • G05B19/251Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude
    • G05B19/258Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude with a combination of feedback covered by G05B19/253 - G05B19/256
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41144Element used such as low pass filter to cut resonance at non needed regions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42062Position and speed and current

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Electric Motors In General (AREA)
  • Feedback Control In General (AREA)
  • Control Of Position Or Direction (AREA)

Abstract

【課題】モータが駆動する可動部に一定の動作を繰り返させる際の位置制御精度を向上することが可能なモータの制御装置を提供する。【解決手段】制御装置は、サンプリング周期ごとに、位置指令で指定された可動部2の位置と位置検出器4による可動部2の測定位置間の位置偏差を算出し、補正量が加算された位置偏差から生成される駆動信号に、所定の周期を持つ位相信号から生成された外乱信号を加算し、外乱信号が加算された駆動信号に基づいて可動部2を駆動するモータ3を動作させる駆動信号生成部21と、位置偏差を減少させるように動特性補償フィルタを用いて補正量を算出する学習制御部24と、位置偏差の大きさに関する評価値が所定の条件を満たすように動特性補償フィルタの構成を変更する動作評価部25とを有する。【選択図】図2

Description

本発明は、例えば、モータの制御装置、及び、そのような制御装置で用いられるモータ制御用コンピュータプログラムに関する。
サーボモータを用いて駆動される可動部を有するロボットまたは工作機械といった自動機械において、ワークに対して繰り返し同じ加工を行う場合のように、所定の周期ごとに同じ動作が繰り返されることがある。このような場合に、いわゆる学習制御を適用することで、繰り返し動作中における、サーボモータにより駆動される可動部の個々の目標位置と、実際の可動部の位置間の位置偏差を減少させることが提案されている(例えば、特許文献1を参照)。
例えば、特許文献1に記載のサーボモータ駆動制御装置は、サンプリング時に求められる位置偏差とサーボモータの駆動とを同期して出力される参照位置より、その参照位置における所定位置の位置偏差を求め、その位置偏差と対応する補正データを加算しフィルタ処理してその位置に対応する、メモリ手段に記憶する対応する補正データを更新する。また、この駆動制御装置は、メモリ手段に記憶する位置に対応する補正データと参照位置によりサンプリング時の補正データを求め、その補正データを動特性補償して補正量を求めて位置偏差に加算する。
このような学習制御において、より適切なサーボモータの制御条件を設定し、または、機械特性または運転条件に適合する学習パラメータの選択を可能とする技術が提案されている(例えば、特許文献2及び3を参照)。
例えば、特許文献2に記載のサーボ制御装置は、正弦波を位置制御ループへ入力したときの位置制御ループの出力から、位置制御ループ入出力信号の利得と位相に関する、実測の周波数特性と学習制御器の周波数特性に基づいて、学習制御器付きの位置制御特性を示す評価値を計算する。そしてこの制御装置は、評価値に基づいて学習制御器を構成する帯域制限フィルタ及び動特性補償フィルタの少なくとも一方の構成を変更する。
また、特許文献3に記載の制御支援装置は、サーボシステムにおける電動機の動作をモデル化した演算モデルと、電動機の制御応答を調整するための調整パラメータについてシミュレーションを行うための模擬的な調整パラメータの条件であるシミュレーション条件とを用いて、電動機を所定の目標動作に制御する場合のシミュレーションを行った結果に基づいて調整パラメータ及び調整パラメータに関する調整条件を自動設定する。
特開2004−280772号公報 特開2017−84104号公報 特開2009−122779号公報
特許文献2に記載の技術では、正弦波からなる外乱が、位置制御ループの位置偏差取得部に入力されるので、位置偏差そのものに正弦波状の外乱が加わった場合については評価される。しかし、外乱自体が周期的であっても、位置偏差が周期的となるとは限られない場合、この技術では、その外乱による影響を抑制するように動特性補償フィルタの構成を最適化できないことがある。
また、特許文献3に記載の技術では、シミュレーションにより調整パラメータなどが設定されるので、サーボモータまたはサーボモータで駆動される可動部などの実際の機械特性または動作特性などが正確に評価されず、その結果として、調整パラメータが最適化されないことがある。
一つの側面では、モータが駆動する可動部に一定の動作を繰り返させる際の位置制御精度を向上することが可能なモータの制御装置を提供することを目的とする。
一つの実施形態によれば、周期的に動作する可動部を駆動するモータの制御装置が提供される。この制御装置は、所定の周期を持つ位相信号を生成する位相信号生成部と、位相信号に基づいて、所定の周期で繰り返される外乱信号を生成する外乱信号生成部と、所定のサンプリング周期ごとに、位置指令により指定された可動部の位置と位置検出器により測定された可動部の位置との間の位置偏差を算出し、位置偏差に対してその位置偏差を補正するための補正量を加算し、補正量が加算された位置偏差に基づいて生成される、モータを駆動するための駆動信号に外乱信号を加算し、外乱信号が加算された駆動信号に基づいてモータを動作させる駆動信号生成部と、位置偏差を減少させるように、モータの制御系の動特性を補償するための動特性補償フィルタを用いて補正量を算出する学習制御部と、所定の周期を少なくとも一つ含む繰返し周期ごとに、その繰返し周期における、所定のサンプリング周期ごとの位置偏差の大きさを表す評価値を算出し、その評価値が所定の条件を満たすように動特性補償フィルタの構成を変更する動作評価部とを有する。
他の形態によれば、一定の動作を繰り返す可動部を駆動するモータを制御するためのモータ制御用コンピュータプログラムが提供される。このモータ制御用コンピュータプログラムは、所定の周期を持つ位相信号を生成し、位相信号に基づいて、所定の周期で繰り返される外乱信号を生成し、所定のサンプリング周期ごとに、位置指令により指定された可動部の位置と位置検出器により測定された可動部の位置との間の位置偏差を算出し、位置偏差に対してその位置偏差を補正するための補正量を加算し、補正量が加算された位置偏差に基づいて生成される、モータを駆動するための駆動信号に外乱信号を加算し、外乱信号が加算された駆動信号に基づいてモータを動作させ、位置偏差を減少させるように、モータの制御系の動特性を補償するための動特性補償フィルタを用いて補正量を算出し、所定の周期を少なくとも一つ含む繰返し周期ごとに、その繰返し周期における、所定のサンプリング周期ごとの位置偏差の大きさを表す評価値を算出し、評価値が所定の条件を満たすように動特性補償フィルタの構成を変更する、ことをコンピュータに実行させるための命令を含む。
一つの側面によれば、モータが駆動する可動部に一定の動作を繰り返させる際の位置制御精度を向上することができる。
一つの実施形態によるモータ制御システム及びモータ制御システムに含まれる制御装置の概略構成図である。 学習制御処理及びキャリブレーション処理に関する、制御装置のプロセッサの機能ブロック図である。 動特性補償フィルタの変更対象となるパラメータの値の表示の一例を示す図である。 キャリブレーション処理の動作フローチャートである。
以下、図を参照しつつ、本発明の実施形態によるモータの制御装置について説明する。この制御装置は、ロボットまたは工作機械等の自動機械が有する可動部を駆動するためのモータ(例えば、サーボモータ)を制御する。特に、この制御装置は、可動部に対して一定の動作周期ごとに同じ動作を繰り返させる場合に加わる周期的な外乱に対して、モータの制御系の動特性を補償するためのフィルタ(以下、単に動特性補償フィルタと呼ぶ)を最適化する。そのために、この制御装置は、キャリブレーション処理の実行時において、周期的な外乱を疑似的に表す、所定の周期の外乱信号を生成する。そしてこの制御装置は、外乱信号を、モータの目標回転量(すなわち、モータにより駆動される可動部の目標位置)を指定する位置指令から求められる速度指令または電流指令に加えた上でモータを動作させる。その上で、この制御装置は、モータの実測位置と位置指令により指定された位置間の位置偏差の大きさを表す評価値が所定の条件を満たすよう、動特性補償フィルタの構成を最適化する。そしてこの制御装置は、最適化された動特性補償フィルタの構成を、可動部がワークに対して作業する際に適用する。
例えば、機械的共振またはバックラッシによる非線形振動により、位置偏差には外乱とは異なる周期の振動が表れることがある。また、学習制御は、繰り返し動作に同期しない外乱を増幅してしまう性質がある。上記の先行技術では、これらの事象が生じる場合に、位置偏差が抑制されないことがある。しかし、本実施形態による制御装置は、これらの事象が生じる場合でも、位置偏差を減少させることができるよう、動特性補償フィルタの構成を最適化できる。
図1は、一つの実施形態による、モータ制御システム1及びモータ制御システム1に含まれる制御装置5の概略構成図である。モータ制御システム1は、可動部2と、可動部2を駆動するサーボモータ3と、サーボモータ3の基準位置からの回転量、すなわち、可動部2の位置を測定するための位置検出器4と、制御装置5とを有する。
可動部2は、例えば、工作機械あるいはロボットに設けられる工具であり、サーボモータ3の回転軸に対して直接あるいはギヤなどを介して間接的に取り付けられる。そして可動部2は、サーボモータ3により駆動されて、個々のワーク(図示せず)に対して同一の加工を行うといった、一定の動作周期ごとに同じ動作を繰り返す。
サーボモータ3は、モータの一例であり、制御装置5から供給される駆動電流に従って回転することで可動部2を駆動する。
位置検出器4は、例えば、エンコーダあるいはレゾルバであり、サーボモータ3の回転軸に取り付けられる。そして位置検出器4は、サーボモータ3の基準位置からの回転量(すなわち、可動部2の実際の位置)を測定し、その測定値を制御装置5へ出力する。
制御装置5は、サーボモータ3を制御して、サーボモータ3に取り付けられる可動部2に所定の動作を実行させる。本実施形態では、制御装置5は、いわゆる学習制御をサーボモータ3の制御に適用することで、所定の動作の実行中における、所定のサンプリング周期ごとの可動部2の目標位置と実際の位置との位置偏差を減少させる。
そのために、制御装置5は、ユーザインターフェース11と、通信インターフェース12と、駆動回路13と、メモリ14と、プロセッサ15とを有する。
ユーザインターフェース11は、例えば、キーボードまたはマウスといった入力装置と、表示装置とを有する。あるいは、ユーザインターフェース11は、タッチパネルディスプレイといった、入力装置と表示装置とが一体化された装置を有してもよい。そしてユーザインターフェース11は、ユーザによる操作に従って、サーボモータ3の動作を開始させ、あるいは停止させるといった操作を表す操作信号を生成し、その操作信号をプロセッサ15へわたす。またユーザインターフェース11は、プロセッサ15から受け取った、各種の表示用の情報を表示する。表示用の情報には、例えば、サーボモータ3または可動部2の動作状況を表す情報、及び、キャリブレーション処理の実行時における、位置偏差の評価値と動特性補償フィルタの構成を規定するパラメータセットの各パラメータ値との関係を表す情報などが含まれる。
通信インターフェース12は、例えば、制御装置5を通信回線と接続するための通信インターフェース及び通信回線を介した信号の送受信に関する処理を実行するための回路などを含む。そして通信インターフェース12は、例えば、上位制御装置(図示せず)から、可動部2に所定の動作をさせる際のその所定の動作中の個々の目標位置を指定する一連の位置指令などを受信し、受信した位置指令をプロセッサ15へわたす。さらに、通信インターフェース12は、位置検出器4からの信号線を接続するためのインターフェースを有し、位置検出器4から可動部2の位置の測定値を受信する度に、その測定値をプロセッサ15へわたす。
駆動回路13は、サーボモータ3に対する電力を供給するための回路を有する。そして駆動回路13は、電流供給用のケーブルを介してサーボモータ3と接続され、プロセッサ15から受け取った電流指令に従って、サーボモータ3に生じさせるトルク、回転方向あるいは回転速度に応じた電力をサーボモータ3へ供給する。
メモリ14は、記憶部の一例であり、例えば、読み書き可能な半導体メモリと読み出し専用の半導体メモリとを有する。さらに、メモリ14は、半導体メモリカード、ハードディスク、あるいは光記憶媒体といった記憶媒体及びその記憶媒体にアクセスする装置を有していてもよい。
メモリ14は、制御装置5のプロセッサ15で実行される、サーボモータ3の制御用の各種コンピュータプログラムなどを記憶する。また、メモリ14は、サーボモータ3に所定の動作をさせる際の可動部2の目標位置と実際の位置間の位置偏差を補正するための補正データ、及び、モータ制御システム1により実現されるサーボモータ3の制御系の動特性を補償するための動特性補償フィルタの構成を規定するパラメータセットなどを記憶する。
プロセッサ15は、制御部の一例であり、例えば、Central Processing Unit(CPU)及びその周辺回路を有する。さらにプロセッサ15は、数値演算用のプロセッサを有していてもよい。そしてプロセッサ15は、モータ制御システム1全体を学習制御して、サーボモータ3及び可動部2に対して所定の動作を繰り返し実行させる学習制御処理を実行する。またプロセッサ15は、動特性補償フィルタをキャリブレーションするためのキャリブレーション処理を実行する。
図2は、学習制御処理及びキャリブレーション処理に関する、プロセッサ15の機能ブロック図である。プロセッサ15は、駆動信号生成部21と、位相信号生成部22と、繰返し指令生成部23と、学習制御部24と、動作評価部25とを有する。プロセッサ15が有するこれらの各部は、例えば、プロセッサ15上で実行されるコンピュータプログラムにより実現される機能モジュールである。あるいは、これらの各部は、プロセッサ15の一部に実装される専用の演算回路として実装されてもよい。なお、プロセッサ15が有するこれらの各部のうち、位相信号生成部22、繰返し指令生成部23及び動作評価部25は、キャリブレーション処理において使用される。一方、駆動信号生成部21及び学習制御部24は、キャリブレーション処理及び学習制御処理の両方で使用される。なお、以下の説明において、適用される処理が明示されない場合には、キャリブレーション処理及び学習制御処理の両方で同じ制御が行われる。なお、図2において、簡単化のために、駆動回路13の図示は省略されている。
駆動信号生成部21は、可動部2の繰り返し動作の周期(以下、動作周期と呼ぶ)よりも短い所定のサンプリング周期、すなわち、サーボモータ3を制御するための制御周期ごとに、サーボモータ3を駆動するための駆動信号を生成する。そして駆動信号生成部21は、生成した駆動信号を駆動回路13へ出力することでサーボモータ3を動作させる。そのために、駆動信号生成部21は、減算器31と、3個の加算器32〜34と、速度制御部35と、電流制御部36と、二つのスイッチ37、38とを有する。そして駆動信号生成部21は、位置ループ制御及び速度ループ制御に従って、サーボモータ3を動作させる。
減算器31は、所定のサンプリング周期ごとに、上位制御装置からの位置指令で表された可動部2の目標位置と、位置検出器4から受信した可動部2の実際の位置の測定値との差(位置偏差)を算出し、算出した位置偏差を加算器32及び学習制御部24へ出力する。
加算器32は、減算器31から位置偏差を受け取る度に、その位置偏差に学習制御部24から受け取った補正量を加算することで位置偏差を補正する。そして加算器32は、補正した位置偏差を速度制御部35へ出力する。
速度制御部35は、補正された位置偏差を受け取る度に、その補正された位置偏差にポジションゲインを乗じて速度指令を算出する。なお、速度指令は、サーボモータ3を駆動するための駆動信号の一例である。そして速度制御部35は、速度指令を加算器33へ出力する。
加算器33は、キャリブレーション処理の実行時において、スイッチ37がオンとなっている場合、速度指令を受け取る度に、速度指令で表される速度指令値に、繰返し指令生成部23により生成された外乱信号のそのサンプリング周期における値を加算することで、速度指令に周期的な外乱を加える。そして周期的な外乱が加えられた速度指令を電流制御部36へ出力する。一方、キャリブレーション処理の実行時において、スイッチ37がオフになっている場合、あるいは、学習制御処理の実行時において、加算器33は、速度指令を受け取る度に、受け取った速度指令をそのまま電流制御部36へ出力する。
電流制御部36は、速度指令を受け取る度に、速度指令で表された速度指令値とサーボモータ3の実際の速度との差である速度偏差を求め、その速度偏差に対して比例積分制御といった速度ループ制御を行うことで電流指令を算出する。なお、電流指令は、サーボモータ3を駆動するための駆動信号の他の一例である。また、サーボモータ3の実際の速度は、例えば、位置検出器4により検出されたサンプリング周期ごとのサーボモータの位置から算出される。あるいは、サーボモータ3に回転速度を検出するための回転速度センサ(図示せず)が設けられ、その回転速度センサによりサーボモータ3の実際の回転速度が測定されてもよい。電流制御部36は、電流指令を加算器34へ出力する。
加算器34は、キャリブレーション処理の実行時において、スイッチ38がオンとなっている場合、電流指令を受け取る度に、電流指令で表される電流指令値に、繰返し指令生成部23により生成された外乱信号のそのサンプリング周期における値を加算することで、電流指令に周期的な外乱を加える。そして周期的な外乱が加えられた電流指令を駆動回路13へ出力する。一方、キャリブレーション処理の実行時において、スイッチ38がオフになっている場合、あるいは、学習制御処理の実行時において、加算器34は、電流指令を受け取る度に、受け取った電流指令をそのまま駆動回路13へ出力する。
二つのスイッチ37、38の何れか一方は、キャリブレーション処理の実行時において、オンに設定され、他方はオフに設定される。その二つのスイッチのうちの何れがオンになるかは、例えば、ユーザインターフェース11を介したユーザの操作に従って、あるいは、キャリブレーション処理用のコンピュータプログラムに従って決定される。例えば、サーボモータ3の負荷が比較的大きく、電流指令に外乱を印加してもその外乱に応じた位置偏差が正確に評価されないような場合には、スイッチ37がオンにされ、外乱は速度指令に加えられる。一方、サーボモータ3の負荷が比較的小さい場合には、スイッチ38がオンにされ、外乱は電流指令に加えられる。これにより、制御装置5は、周期的な外乱に対して動特性補償フィルタをより精密に最適化できる。なお、学習制御処理が実行される場合には、二つのスイッチ37、38の何れもオフに設定される。
位相信号生成部22は、キャリブレーション処理の実行時において、所定の周期を持ち、かつ、その所定の周期における位相(例えば、0〜2π(または0°〜360°)の範囲に含まれる何れかの値)を表す位相信号を、所定の生成周期ごとに生成する。所定の周期は、例えば、可動部2がワークに対する作業を実施する際にサーボモータ3の動作に加わると想定される周期的な外乱の周期と同一とすることができ、例えば、可動部2の動作周期と同一とすることができる。また、所定の周期は、サーボモータ3に加わると想定される周期的な外乱の周期を学習制御部24が取得できる形態であれば、可動部2の動作周期と異なっていてもよい。例えば、ワークと工具を相対的に回転させる加工において、サーボモータ3が動作させる工具にワークとの相対的な回転角に応じた外乱が加わる場合には、所定の周期は、想定されるワークの回転周期と同一とすることができる。また、所定の生成周期は、上記のサンプリング周期と同一であってもよく、あるいは、異なっていてもよい。ただし、外乱信号が可動部2がワークに対する作業を実施する際に生じる周期的な外乱を正確に模擬するためには、その生成周期は、サンプリング周期よりも短いことが好ましい。
位相信号生成部22は、位相信号を生成する度に、生成した位相信号を繰返し指令生成部23及び学習制御部24へ出力する。
繰返し指令生成部23は、キャリブレーション処理の実行時において、位相信号に基づいて可動部2がワークに対する作業を実施する際に生じる周期的な外乱を模擬した外乱信号を生成する。周期的な外乱は、例えば、正弦波または三角波として表される。そして繰返し指令生成部23は、位相信号を受け取る度に、外乱信号の位相がその位相信号で表される位相となるように外乱信号を生成し、生成した外乱信号を出力する。繰返し指令生成部23から出力された外乱信号は、二つのスイッチ37、38の何れかを介して、加算器33または加算器34により、速度指令または電流指令に加えられる。
学習制御部24は、所定のサンプリング周期ごとに、位置偏差を補正するための補正量を算出する。そのために、学習制御部24は、時間角度変換部41と、加算器42と、フィルタ部43と、補正データ更新部44と、角度時間変換部45と、動特性補償部46とを有する。
時間角度変換部41は、キャリブレーション処理時において、位置偏差が入力される度に、その位置偏差を、補正データが用意される単位となる、複数の位相区間の何れかに対応付ける。例えば、位相信号の一周期0〜360°に対して、互いに等しい長さを持つm個(mは2以上の整数、例えば、72、180、360)の位相区間が設定される。時間角度変換部41は、位置偏差が入力される度に、その位置偏差が入力されたときの位相信号に表された位相が含まれる位相区間を特定し、特定された位相区間に位置偏差を対応付ける。例えば、位相信号では位相が0.1°単位で表されており(すなわち、位相は0〜3599の値で表される)、各位相区間の長さが1°である場合(すなわち、360個の位相区間が存在する場合)、時間角度変換部41は、位相信号で表された位相の値を10(=1°/0.1°)で除して得られる値により、その位相が含まれる位相区間を特定できる。
また、時間角度変換部41は、学習制御処理の実行時において、位置偏差が入力される度に、位置偏差入力時の参照位置(例えば、位置指令で指定された目標位置または位置検出器4により測定された可動部2の位置)に基づいて、複数の位相区間のうちのその位置に対応する位相区間を特定する。そして時間角度変換部41は、特定した位相区間に入力された位置偏差を対応付ける。この場合には、時間角度変換部41は、可動部2に所定の繰り返し動作を1回実行させるための位置指令の総数に対する、その動作の開始からの位置偏差入力時の位置指令の順番の比に、位相区間の数を乗じることで、対応する位相区間を特定できる。あるいは、時間角度変換部41は、サーボモータ3に所定の動作を実行させる際の可動部2の移動開始位置から移動終了位置までの移動距離に対する、移動開始位置から位置偏差入力時の参照位置までの移動距離の比に、位相区間の数を乗じることで、対応する位相区間を特定できる。また、サーボモータ3に所定の動作を実行させる際の可動部2に同期して動作する別のモータがある場合は、時間角度変換部41は、その同期して動作する別のモータに対する位置指令または測定された位置を参照位置として位相区間を特定できる。また、可動部2の所定の繰返し動作が、位置指令に対して上位制御装置が所定の位相信号を元にした繰り返し指令を重畳し、あるいは、モータ制御装置が位置指令に対して位相信号生成部22により生成される位相信号を元にした繰返し指令を重畳することで実行される際には、時間角度変換部41は、キャリブレーション処理の実行時と同様に、それら位相信号から位相区間を特定できる。また、可動部2の1回の繰り返し動作に対して、位相信号の周期(すなわち、外乱信号の周期)が複数含まれる場合には、時間角度変換部41は、メモリ14に予め記憶された、参照位置と位相区間との対応関係を表す参照テーブルを参照することで、参照位置に対応する位相区間を特定できる。あるいは、時間角度変換部41は、可動部2の移動開始位置から参照位置まで移動する間の位置指令の受信回数を、1回の位相信号の周期に相当する位置指令の受信回数で除したときの剰余となる数をもとめる。そして時間角度変換部41は、その剰余となる数に、1回の位相信号の周期に相当する位置指令の受信回数に対する位相区間の数の比を乗じることで、対応する位相区間を特定できる。
時間角度変換部41は、入力された位置偏差とともに、特定した、その位置偏差に対応する位相区間を表す情報を加算器42へ出力する。
加算器42は、位置偏差が入力される度に、入力された位置偏差に対して、その位置偏差と対応する位相区間についての、位相信号の1周期前の補正データをメモリ14から読み込んで加算する。そして加算器42は、1周期前の補正データが加算された位置偏差を、対応する位相区間を表す情報とともにフィルタ部43へ出力する。
フィルタ部43は、1周期前の補正データが加算された位置偏差が入力される度に、その位置偏差に対して高周波成分を減衰させるよう、ローパスフィルタを適用することで、更新された補正データを求める。なお、ローバスフィルタは、例えば、有限インパルス応答型(Finite Impulse Response, FIR)のフィルタとすることができる。そしてフィルタ部43は、更新された補正データを、対応する位相区間を表す情報とともに補正データ更新部44へ出力する。
補正データ更新部44は、更新された補正データを受け取る度に、その更新された補正データを対応する位相区間と関連付けてメモリ14に書き込む。
角度時間変換部45は、時間角度変換部41と同様に、位置偏差が入力されたときの位相信号または参照位置に対応する位相区間を特定する。そして角度時間変換部45は、特定された位相区間に対応する補正データをメモリ14から読み込んで動特性補償部46へわたす。
動特性補償部46は、学習制御部24に位置偏差が入力される度に、角度時間変換部45により求められた補正データに対して、動特性補償フィルタを適用することで、その位置偏差に対する補正量を算出する。そして動特性補償部46は、算出した補正量を駆動信号生成部21の加算器32へ出力する。
動特性補償部46が用いる、動特性補償フィルタは、例えば、補正データの位相遅れを補償するためのFIR型の位相進めフィルタとすることができる。さらに、動特性補償部46は、動特性補償フィルタとして、位相進めフィルタとともに、直線位相特性を持つ帯域制限用のFIR型のフィルタを使用してもよい。なお、これらのフィルタについては、例えば、井上他、「プレイバックサーボ系の高精度制御」、電気学会論文誌.C、101巻4号、p.89-96、1981年を参照されたい。詳細は後述するように、動特性補償フィルタのタップ数、各次数の重み係数または各次数の重み係数のうちの0以外の値を持つ重み係数の数といった、動特性補償フィルタの構成を規定するパラメータセットは、キャリブレーション処理において動作評価部25により最適化され、メモリ14に記憶される。そして動特性補償部46は、メモリ14から動特性補償フィルタの構成を規定するパラメータセットを読み込んで使用すればよい。
動作評価部25は、キャリブレーション処理において、位相信号が所定の周期数(例えば、1、5、10など)分生成されるごとに、すなわち、繰返し周期ごとに、その繰返し周期における、所定のサンプリング周期ごとの位置偏差の大きさを表す評価値を算出し、その評価値が所定の条件を満たすように動特性補償フィルタの構成を変更する。なお、所定の条件は、例えば、学習制御処理が実行される場合において、位置偏差が所定値以下に収束することである。
評価値は、例えば、位相信号の繰返し周期に含まれる、サンプリング周期ごとの一連の位置指令のそれぞれについて算出された位置偏差の2乗平均平方根、あるいは、位置偏差の絶対値和とすることができる。
動作評価部25は、評価値を算出する度に、動特性補償フィルタ(上記のように、例えば、位相進めフィルタまたは帯域制限フィルタ)の構成を規定するパラメータセットのうちの少なくとも一つのパラメータを変更する。述したように、動特性補償フィルタがFIR型のフィルタである場合、パラメータセットには、例えば、タップ数、各次数の重み係数及び0でない重み係数の数が含まれる。例えば、メモリ14の有する補正データの個数がタップ数と等しいとすれば、複数の位相区間のうちどの位相区間に対応する補正データを読み出すかを規定するのは、0でない重み係数の次数である。その際、動作評価部25は、例えば、ベイズ最適化法、最急降下法あるいはシミュレーティッドアニーリングといった最適化手法の何れかに従ってパラメータを変更すればよい。そして動作評価部25は、評価値の算出及びパラメータの変更を所定回数実行することで得られた各評価値のうち、所定の条件に相当する許容上限値以下となり、かつ、最小となる評価値を求め、その最小となる評価値に対応するパラメータセットを学習制御処理で使用するパラメータセットとしてメモリ14に保存する。
あるいは、動作評価部25は、評価値の算出及びパラメータの変更を所定回数実行した時点で、評価値が許容上限値以下となり、かつ、評価値が許容上限値を超えるパラメータセットまでの最短距離が最大となるときのパラメータセットを、学習制御処理で使用するパラメータセットとしてメモリ14に保存してもよい。これにより、動作評価部25は、サーボモータ3または可動部2の経時劣化により、サーボモータ3の動特性が変化しても、評価値が許容上限値を超えるほど位置偏差が大きくなるまでに要する時間を長くすることができる。
あるいはまた、動作評価部25は、評価値が許容上限値以下となった時点で、その評価値に対応するパラメータセットを、学習制御処理で使用するパラメータセットとしてメモリ14に保存してもよい。また、動作評価部25は、速度指令または電流指令が所定の許容範囲から外れると、その際のパラメータセットを使用しないようにしてもよい。
動作評価部25は、パラメータの変更を繰り返す際、評価値が所定の基準値以下となると、パラメータの値の変化量を評価値がその所定の基準値よりも大きいときの変化量よりも小さくしてもよい。なお、所定の基準値は、許容上限値以上の値に設定される。あるいは、動作評価部25は、パラメータの変更を繰り返す際、評価値が所定の基準値以下となると、パラメータの値を変化させる範囲を、評価値がその基準値よりも大きいときにおける、パラメータの値を変化させる範囲よりも狭くしてもよい。
さらに、動作評価部25は、キャリブレーション処理の実行時、または、キャリブレーション処理の終了後において、算出された評価値ごとに、その評価値を算出するために用いられた、動特性補償フィルタの変更対象となるパラメータの値を、その評価値に応じた表示態様でユーザインターフェース11が有する表示装置に表示させてもよい。
図3は、動特性補償フィルタの変更対象となるパラメータの値の表示の一例を示す図である。この例では、変更対象となるパラメータとして、0でない重み係数が二つ選択されているものとする。この場合、例えば、動特性補償フィルタGx(z)は、次式で表される。
Gx(z)=wxZx+wyZy
ここで、X,Yは、それぞれ、FIR型フィルタの次数であり、Zx、Zyは、それぞれ、次数X,Yにおける補正データの値である。そしてwx,wy(wx≠0,wy≠0,wx+wy=1)は、それぞれ、次数X,Yにおける重み係数である。図3に示される表示画面300では、横軸に補正データに所定の重み係数wxを乗じるフィルタ次数Xが示され、縦軸に補正データに所定の重み係数wyを乗じるフィルタ次数Yが示される。例としてタップ数を360、フィルタ次数を1とすると、Z1は、ある位相区間から359°前の補正データ、すなわち1°先の補正データをメモリ14から先読みすることで得られる値である。そして個々のドット301は、実際に評価値が算出された次数の組み合わせ(X,Y)を表す。また、個々のドット301は、そのドットに対応する重み係数の組み合わせについて算出された評価値に応じた表示形態で表示される。例えば、評価値が許容上限値以下である重み係数の組み合わせに相当するドット301aは緑色で表示され、一方、評価値が許容上限値より大きい重み係数の組み合わせに相当するドット301bはオレンジ色で表示される。なお、評価値に応じて、各ドットの形状、大きさまたは輝度が変更されてもよい。例えば、評価値が許容上限値以下である場合のドットの形状と、評価値が許容上限値よりも大きい場合のドットの形状とが互いに異なっていてもよい。さらに、動作評価部25が、学習制御処理で使用するために選択した重み係数の組み合わせに相当するドット301cは、他の重み係数の組み合わせに相当するドットの色とは異なる色(例えば、青色または黒色)で表示されてもよいし、点滅表示されてもよい。したがって、ユーザは、ドット301の分布を見ることで、点線302で囲まれた範囲として示されるように、評価値が許容上限値以下となる重み係数の組み合わせを視覚的に把握することができる。なお、プロセッサ15は、ユーザがマウスを用いて何れかのドットにカーソルを合わせると、そのドットに対応する重み係数の組み合わせについて算出された評価値、対応する補正データ、あるいは、位置偏差が収束するか否かを示す情報を表示装置にさらに表示させてもよい。
さらに、ユーザが、表示画面に表示されたドットの分布を参照しながら、学習制御処理で使用する動特性補償フィルタのパラメータセットを選択することが可能となっていてもよい。この場合には、ユーザインターフェース11を介して、学習制御処理で使用する動特性補償フィルタのパラメータセットを選択することを表す操作(例えば、特定の座標においてダブルクリックする操作)を実行すると、ユーザインターフェース11は、その選択を表す操作信号を生成し、その操作信号をプロセッサ15へ出力してもよい。そしてプロセッサ15は、その操作信号に従って、学習制御処理で使用する動特性補償フィルタのパラメータセットを決定し、メモリ14に保存してもよい。
なお、変更対象となるパラメータが3個以上ある場合、動作評価部25は、変更対象となるパラメータのうちの任意の二つについて、上記のような表示を表示装置に行わせてもよい。この場合には、例えば、ユーザインターフェース11を介したユーザの操作により、表示されるパラメータの組み合わせが選択されてもよい。
図4は、キャリブレーション処理の動作フローチャートである。プロセッサ15は、下記の動作フローチャートに従って、位相信号の一周期、すなわち、外乱信号の一周期ごとに、キャリブレーション処理を実行する。
位相信号生成部22は、位相信号を生成する(ステップS101)。繰返し指令生成部23は、その位相信号に基づいて周期的な外乱を表す外乱信号を生成する(ステップS102)。駆動信号生成部21は位相信号が最初の1周期目か否か判定する(ステップS103)。位相信号が最初の1周期目であれば(ステップS103−Yes)、駆動信号生成部21は、所定のサンプリング周期ごとに、外乱信号を速度指令または電流指令に加算して外乱を加えた速度指令または電流指令を生成する。そして駆動信号生成部21は、外乱が加わった速度指令または電流指令に従ってサーボモータ3を動作させるとともに、位置指令で示される可動部2の目標位置と位置検出器4により測定された可動部2の実際の位置間の位置偏差を算出する(ステップS104)。学習制御部24は、位置偏差に対してローパスフィルタを適用して、位置偏差が入力される度に、その位置偏差が入力されたときの位相信号に基づいて補正データを生成する(ステップS105)。
一方、位相信号が最初の1周期でなければ、すなわち、位相信号が2周期目以降であれば(ステップS103−No)、駆動信号生成部21は、所定のサンプリング周期ごとに、外乱信号を、学習制御部24から入力された補正量を用いて補正された速度指令または電流指令に加算して外乱を加えた速度指令または電流指令を生成する。そして駆動信号生成部21は、外乱が加わった速度指令または電流指令に従ってサーボモータ3を動作させるとともに、位置指令で示される可動部2の目標位置と位置検出器4により測定された可動部2の実際の位置間の位置偏差を算出する(ステップS106)。
学習制御部24は、位置偏差が入力される度に、その位置偏差が入力されたときの位相信号に基づいて、1周期前の同じ位相における補正データを特定し、特定した補正データをメモリ14から読み込んで位置偏差に加算する(ステップS107)。そして学習制御部24は、補正データが加算された位置偏差に対してローパスフィルタを適用して補正データを更新するとともに、更新された補正データに対して動特性補償フィルタを適用することで、入力された位置偏差に対する補正量を算出する(ステップS108)。
ステップS105またはS108の後、動作評価部25は、所定の周期数(すなわち繰り返し周期)分の位相信号が生成されたか否か判定する(ステップS109)。位相信号が所定の周期数分生成されてなければ(ステップS109−No)、プロセッサ15は、ステップS101以降の処理を繰り返す。一方、位相信号が所定の周期数分生成されていれば(ステップS109−Yes)、動作評価部25は、評価値を算出し、その評価値に基づいて動特性補償フィルタの構成を規定するパラメータセットを更新する(ステップS110)。
動作評価部25は、評価値の算出及びパラメータセットの更新の回数が所定回数に達したか否か判定する(ステップS111)。評価値の算出及びパラメータセットの更新の回数が所定回数に達していなければ(ステップS111−No)、プロセッサ15は、メモリ14に記憶されている更新前のパラメータセットによる補正量、補正データをリセットし、位相信号生成部22は位相信号の周期数(すなわち繰り返し回数)をリセットする(ステップS112)。そしてプロセッサ15は、ステップS101以降の処理を繰り返す。
一方、評価値の算出及びパラメータセットの更新の回数が所定回数に達していれば(ステップS111−Yes)、評価値の最小値に対応するパラメータセットを、学習制御処理で使用するパラメータセットとして選択する(ステップS113)。そしてプロセッサ15は、選択したパラメータセットをメモリ14に保存して、キャリブレーション処理を終了する。
なお、評価値の算出及びパラメータセットの更新の回数が所定回数に達していても、評価値の最小値が許容上限値を超えている場合には、動作評価部25は、ユーザインターフェース11を介して、評価値が許容上限値以下に収束しなかったことをユーザに通知してもよい。
以上に説明してきたように、このモータの制御装置は、周期的な外乱を模擬的に表す外乱信号をサーボモータを駆動するための速度指令または電流指令に加えた上で、位置偏差の大きさを表す評価値が最小化されるように、動特性補償フィルタの構成を規定するパラメータセットを変更する。そのため、この制御装置は、モータが駆動する可動部に一定の動作を繰り返させる際に周期的な外乱が加わっても、位置制御精度を向上することができる。
また、上記の実施形態または変形例による、制御装置5のプロセッサ15の各部の機能を実現するコンピュータプログラムは、半導体メモリ、磁気記録媒体または光記録媒体といった、コンピュータ読取可能な可搬性の記録媒体に記録された形で提供されてもよい。
ここに挙げられた全ての例及び特定の用語は、読者が、本発明及び当該技術の促進に対する本発明者により寄与された概念を理解することを助ける、教示的な目的において意図されたものであり、本発明の優位性及び劣等性を示すことに関する、本明細書の如何なる例の構成、そのような特定の挙げられた例及び条件に限定しないように解釈されるべきものである。本発明の実施形態は詳細に説明されているが、本発明の精神及び範囲から外れることなく、様々な変更、置換及び修正をこれに加えることが可能であることを理解されたい。
1 モータ制御システム
2 可動部
3 サーボモータ
4 位置検出器
5 制御装置
11 ユーザインターフェース
12 通信インターフェース
13 駆動回路
14 メモリ
15 プロセッサ
21 駆動信号生成部
22 位相信号生成部
23 繰返し指令生成部
24 学習制御部
25 動作評価部
31 減算器
32〜34 加算器
35 速度制御部
36 電流制御部
37、38 スイッチ
41 時間角度変換部
42 加算器
43 フィルタ部
44 補正データ更新部
45 角度時間変換部
46 動特性補償部

Claims (6)

  1. 可動部に一定の動作を繰り返させるよう、前記可動部を駆動するモータの制御装置であって、
    所定の周期を持つ位相信号を生成する位相信号生成部と、
    前記位相信号に基づいて、前記所定の周期で繰り返される外乱信号を生成する外乱信号生成部と、
    所定のサンプリング周期ごとに、位置指令により指定された前記可動部の位置と位置検出器により測定された前記可動部の位置との間の位置偏差を算出し、前記位置偏差を補正するための補正量を前記位置偏差に加算し、前記補正量が加算された前記位置偏差に基づいて生成される、前記モータを駆動するための駆動信号に前記外乱信号を加算し、当該外乱信号が加算された駆動信号に基づいて前記モータを動作させる駆動信号生成部と、
    前記位置偏差を減少させるよう、前記モータの制御系の動特性を補償するための動特性補償フィルタを用いて前記補正量を算出する学習制御部と、
    前記所定の周期を少なくとも一つ含む繰返し周期ごとに、当該繰返し周期における、前記所定のサンプリング周期ごとの前記位置偏差の大きさを表す評価値を算出し、当該評価値が所定の条件を満たすように前記動特性補償フィルタの構成を変更する動作評価部と、
    を有する制御装置。
  2. 前記学習制御部は、前記所定のサンプリング周期ごとに、前記位置偏差に、前記所定の周期における一周期前の位置偏差の補正量を表す補正データを加算し、当該補正データが加算された前記位置偏差に対してローパスフィルタを適用して当該サンプリング周期における補正データを求め、求めた補正データに対して前記動特性補償フィルタを適用することで前記補正量を算出する、請求項1に記載の制御装置。
  3. 前記動特性補償フィルタは、有限インパルス応答型のフィルタであり、
    前記動作評価部は、前記動特性補償フィルタのタップ数、各次数の重み係数及び各次数の重み係数のうちの0でない重み係数の数のうちの少なくとも一つである変更パラメータを、前記評価値が前記所定の条件を満たすように変更する、請求項1または2に記載の制御装置。
  4. 前記動作評価部は、前記評価値が前記所定の条件を満たす許容上限値となる前記動特性補償フィルタの前記変更パラメータの値から最も遠くなるように、当該変更パラメータの値を決定する、請求項3に記載の制御装置。
  5. 前記動作評価部は、前記所定の周期ごとの前記動特性補償フィルタの前記変更パラメータを、当該周期における前記評価値が前記所定の条件を満たすか否かの判定結果に応じた表示態様にて表示装置に表示させる、請求項3または4に記載の制御装置。
  6. 可動部に一定の動作を繰り返させるよう、前記可動部を駆動するモータを制御するためのモータ制御用コンピュータプログラムであって、
    所定の周期を持つ位相信号を生成し、
    前記位相信号に基づいて、前記所定の周期で繰り返される外乱信号を生成し、
    所定のサンプリング周期ごとに、位置指令により指定された前記可動部の位置と位置検出器により測定された前記可動部の位置との間の位置偏差を算出し、前記位置偏差を補正するための補正量を前記位置偏差に加算し、前記補正量が加算された前記位置偏差に基づいて生成される、前記モータを駆動するための駆動信号に前記外乱信号を加算し、当該外乱信号が加算された駆動信号に基づいて前記モータを動作させ、
    前記位置偏差を減少させるように、前記モータの制御系の動特性を補償するための動特性補償フィルタを用いて前記補正量を算出し、
    前記所定の周期を少なくとも一つ含む繰返し周期ごとに、当該繰返し周期における、前記所定のサンプリング周期ごとの前記位置偏差の大きさを表す評価値を算出し、当該評価値が所定の条件を満たすように前記動特性補償フィルタの構成を変更する、
    ことをコンピュータに実行させるためのモータ制御用コンピュータプログラム。
JP2019071530A 2019-04-03 2019-04-03 モータ制御装置及びモータ制御用コンピュータプログラム Active JP7021147B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019071530A JP7021147B2 (ja) 2019-04-03 2019-04-03 モータ制御装置及びモータ制御用コンピュータプログラム
DE102020001993.5A DE102020001993A1 (de) 2019-04-03 2020-03-27 Motorsteuervorrichtung und Motorsteuercomputerprogramm
US16/836,796 US20200319616A1 (en) 2019-04-03 2020-03-31 Motor control device and motor control computer program
CN202010250408.XA CN111796610B (zh) 2019-04-03 2020-04-01 马达控制装置以及计算机可读记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019071530A JP7021147B2 (ja) 2019-04-03 2019-04-03 モータ制御装置及びモータ制御用コンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2020170354A true JP2020170354A (ja) 2020-10-15
JP7021147B2 JP7021147B2 (ja) 2022-02-16

Family

ID=72518557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019071530A Active JP7021147B2 (ja) 2019-04-03 2019-04-03 モータ制御装置及びモータ制御用コンピュータプログラム

Country Status (4)

Country Link
US (1) US20200319616A1 (ja)
JP (1) JP7021147B2 (ja)
CN (1) CN111796610B (ja)
DE (1) DE102020001993A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102286929B1 (ko) * 2020-10-20 2021-08-09 한국해양과학기술원 전동기 또는 발전기의 전류를 결정하는 방법 및 디바이스

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60107774A (ja) * 1983-11-15 1985-06-13 Sharp Corp トラッキングサ−ボ制御装置
JP2002304219A (ja) * 2001-04-04 2002-10-18 Yaskawa Electric Corp モータ制御装置およびメカ特性測定方法
JP2005327191A (ja) * 2004-05-17 2005-11-24 Fanuc Ltd サーボ制御装置
JP2008225533A (ja) * 2007-03-08 2008-09-25 Fanuc Ltd サーボ制御装置
US20120306421A1 (en) * 2009-12-03 2012-12-06 Erwin Kessler Method and Device for Operating an Electric Motor
JP2017084104A (ja) * 2015-10-28 2017-05-18 ファナック株式会社 学習制御器の自動調整を行う機能を有するサーボ制御装置
WO2018163664A1 (ja) * 2017-03-10 2018-09-13 オムロン株式会社 評価装置、評価方法、および制御装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6590358B1 (en) * 2000-11-01 2003-07-08 Mitsubishi Denki Kabushiki Kaisha Servocontrol device
US8018670B1 (en) * 2008-10-28 2011-09-13 Marvell International Ltd. Evaluation apparatus
CN101753097A (zh) * 2008-12-03 2010-06-23 鸿富锦精密工业(深圳)有限公司 马达驱动装置
JP4620159B2 (ja) * 2009-05-21 2011-01-26 ファナック株式会社 周期的な往復動作を制御するサーボモータ制御装置
CN102725956B (zh) * 2010-01-27 2015-07-01 三菱电机株式会社 马达控制装置
WO2012141190A1 (ja) * 2011-04-15 2012-10-18 株式会社明電舎 周期外乱抑制装置および周期外乱抑制方法
JP5221735B2 (ja) * 2011-10-27 2013-06-26 ファナック株式会社 不感帯処理部を備えた電動機の制御装置
JP5582425B2 (ja) * 2012-08-24 2014-09-03 株式会社安川電機 モータ制御装置
TWI571043B (zh) * 2014-01-27 2017-02-11 山葉發動機股份有限公司 馬達控制裝置及該裝置之修正資料製作方法
JP6212068B2 (ja) * 2015-04-24 2017-10-11 ファナック株式会社 機械の周波数特性をオンラインで取得する機能を有するサーボ制御装置
JP6490131B2 (ja) * 2017-03-31 2019-03-27 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム、及び機械学習方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60107774A (ja) * 1983-11-15 1985-06-13 Sharp Corp トラッキングサ−ボ制御装置
JP2002304219A (ja) * 2001-04-04 2002-10-18 Yaskawa Electric Corp モータ制御装置およびメカ特性測定方法
JP2005327191A (ja) * 2004-05-17 2005-11-24 Fanuc Ltd サーボ制御装置
JP2008225533A (ja) * 2007-03-08 2008-09-25 Fanuc Ltd サーボ制御装置
US20120306421A1 (en) * 2009-12-03 2012-12-06 Erwin Kessler Method and Device for Operating an Electric Motor
JP2017084104A (ja) * 2015-10-28 2017-05-18 ファナック株式会社 学習制御器の自動調整を行う機能を有するサーボ制御装置
WO2018163664A1 (ja) * 2017-03-10 2018-09-13 オムロン株式会社 評価装置、評価方法、および制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102286929B1 (ko) * 2020-10-20 2021-08-09 한국해양과학기술원 전동기 또는 발전기의 전류를 결정하는 방법 및 디바이스
WO2022085866A1 (ko) * 2020-10-20 2022-04-28 한국해양과학기술원 전동기 또는 발전기의 전류를 결정하는 방법 및 디바이스

Also Published As

Publication number Publication date
CN111796610A (zh) 2020-10-20
CN111796610B (zh) 2024-06-18
JP7021147B2 (ja) 2022-02-16
US20200319616A1 (en) 2020-10-08
DE102020001993A1 (de) 2020-10-08

Similar Documents

Publication Publication Date Title
JP5172051B1 (ja) サーボパラメータ調整装置
US11213945B2 (en) Robot simulator, robot system and simulation method
JP6409803B2 (ja) シミュレーション装置、シミュレーション方法、制御プログラム、および記録媒体
JP6325504B2 (ja) 学習制御器の自動調整を行う機能を有するサーボ制御装置
JP6316323B2 (ja) モータ制御装置
TWI454868B (zh) 目標導向數值控制自動調校系統與方法
JP5269158B2 (ja) 制御方法及び制御装置
JP2017102617A (ja) 補正装置、補正装置の制御方法、情報処理プログラム、および記録媒体
CN107193218B (zh) 仿真装置、仿真方法、控制程序以及记录介质
JP2014136260A (ja) 制御装置
JPWO2018029910A1 (ja) パラレルリンク機構の制御装置
JP2018001393A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP7021147B2 (ja) モータ制御装置及びモータ制御用コンピュータプログラム
US11137728B2 (en) Processing device, control parameter determination method, and non-transitory recording medium storing a control parameter determination program
JPWO2018211565A1 (ja) 制御パラメータ調整装置
JP2018072224A (ja) 制御システム、その制御方法およびそのプログラム
JP5441944B2 (ja) モータ制御装置
JP6786024B1 (ja) 免振制御装置および免振制御方法
JP6008766B2 (ja) 支援装置およびコンピュータプログラム
JPWO2014064815A1 (ja) サーボ制御装置
JP2005094964A (ja) モータの制御装置及び制御方法
JP6087262B2 (ja) 数値制御装置
JP7496095B2 (ja) 制御システム、制御方法、コンピュータ、および制御プログラム
WO2022186051A1 (ja) 調整支援装置、制御システム及び調整支援方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210601

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220203

R150 Certificate of patent or registration of utility model

Ref document number: 7021147

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150