以下に、本発明の実施の形態にかかる制御パラメータ調整装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明の実施の形態1にかかる制御パラメータ調整装置の構成例を示す図である。図1には、実施の形態1にかかる制御パラメータ調整装置1aとともに、制御パラメータ調整装置1aにより制御パラメータが設定されるサーボ制御部3および指令値生成部4と、サーボ制御部3により制御されるモータ2と、モータ2の回転トルクTmによって駆動される機械装置5とも、図示している。
指令値生成部4は、モータ2の位置指令Xrを生成し、生成した位置指令Xrをサーボ制御部3に送信する。サーボ制御部3は、位置指令Xrとモータ2の位置を示す情報であるフィードバック位置Xfbとに基づきフィードバック制御を行い、フィードバック制御において生成されたモータ駆動電流Irを、モータ2へ送信する。指令値生成部4およびサーボ制御部3は、モータ2を介して機械装置5を数値制御し複数の機能を有する制御装置の一例である。また、指令値生成部4およびサーボ制御部3が、1つの制御装置を構成してもよい。
モータ2は、アクチュエータであり、具体的には、回転モータである。モータ2には、制御パラメータ調整装置1aにより制御されるサーボ制御部3の制御対象の被駆動体である機械装置5が接続されている。モータ2は、モータ駆動電流Irに従って回転し、回転トルクTmにより機械装置5を駆動する。
指令値生成部4およびサーボ制御部3は、摩擦の影響によって発生する運動誤差を補正する機能、機械構造の振動発生要因となる加減速パターンを調整する機能といった補正機能をはじめとした制御に関わる機能を、複数有する。各機能を実現する際には、機械装置5の特性などに対応して所望の性能が得られるように、制御パラメータが調整される。
制御パラメータ調整装置1aは、駆動軸を有する機械装置5の制御を行う制御装置である指令値生成部4およびサーボ制御部3の制御パラメータを調整する。制御パラメータ調整装置1aは、図1に示すように、パラメータ入力部11、調整機能選択部12、調整実行部13および記憶部14を備える。受付部であるパラメータ入力部11は、機械装置5の特性を特徴づける設計パラメータの入力を受け付ける。設計パラメータは、機械装置5の構造を特徴づける構造パラメータCmと機械装置5の駆動軸を構成する構成部品を特徴づける駆動軸パラメータCdとのうちの少なくとも1つを含む。パラメータ入力部11によって受け付けられた構造パラメータCmおよび駆動軸パラメータCdを、以下、入力パラメータと呼ぶ。
調整機能選択部12は、受付部であるパラメータ入力部11により受け付けられた設計パタメータ、すなわち構造パラメータCmおよび駆動軸パラメータCdのうちの少なくとも1つに基づいて、指令値生成部4およびサーボ制御部3により実現可能な機能に対応した制御パラメータから、調整対象とする制御パラメータを選択する。調整機能選択部12は、選択した制御パラメータPaを調整実行部13へ通知する。すなわち、調整機能選択部12は、受付部であるパラメータ入力部11により受け付けられた構造パラメータCmおよび駆動軸パラメータCdに基づいて、指令値生成部4およびサーボ制御部3の有する機能に対応した制御パラメータのなかから調整対象とする制御パラメータを選択する選択部である。指令値生成部4およびサーボ制御部3により実現可能な機能は、指令値生成部4だけに制御パラメータを設定すればよい第1の機能、サーボ制御部3だけに制御パラメータを設定すればよい第2の機能、指令値生成部4およびサーボ制御部3の両方に制御パラメータを設定する必要がある第3の機能のうちのいずれか1つ以上を含む。
調整実行部13は、調整対象として選択された制御パラメータPaの調整を、サーボ制御部3から受け取った機械装置5の運動情報に基づいて実行する。すなわち、調整実行部13は、調整機能選択部12により選択された制御パラメータの調整を実行する実行部である。調整実行部13は、調整結果に基づいて制御パラメータを指令値生成部4およびサーボ制御部3のうち少なくとも一方に送信し、後述する運転プログラムXcを指令値生成部4へ送信する。機械装置5の運動情報とは、機械装置5の状態を示す情報であり、例えば、機械装置5における指令値と実際の機械装置5の状態との差を示す誤差Dmである。誤差Dmは、例えば、応答誤差、速度偏差である。応答誤差は、例えば、象限突起量、オーバシュート量である。機械装置5の運動情報は、誤差自体ではなく、誤差を算出可能な情報であってもよい。機械装置5の運動情報は、実際の位置、実際の速度、モータ駆動電流などであってもよい。記憶部14には、後述する制御パラメータ選択情報が格納される。
次に、本実施の形態のハードウェア構成について説明する。図2は、実施の形態1にかかる制御パラメータ調整装置1aのハードウェア構成例を示す図である。制御パラメータ調整装置1aは、演算処理を行うCPU(Central Processing Unit)をはじめとしたプロセッサである演算装置41と、演算装置41がワークエリアに用いるメモリ42と、プログラム、情報などを記憶可能な記憶装置43と、外部との通信機能を有する通信装置44と、作業者からの入力を受け付ける入力装置45と、表示装置46と、を備える。入力装置45は、キーボード、マウスが例示され、表示装置46は、モニタ、ディスプレイが例示される。なお、入力装置45と表示装置46とが一体化されて、タッチパネルなどにより実現されてもよい。
図1に示したパラメータ入力部11、調整機能選択部12および調整実行部13は、演算装置41が記憶装置43に格納されたプログラムを実行することにより実現される。また、演算装置41によりパラメータ入力部11が実現される際には、入力装置45および表示装置46が用いられる。また、演算装置41により調整実行部13が実現される際に、通信装置44が用いられてもよい。記憶部14は、記憶装置43により実現される。
図3は、実施の形態1にかかる制御パラメータ調整装置1aの制御対象である機械装置5における機械構成の一例を示す図である。機械装置5は、水平に置かれたベッド89と、ベッド89に固定される案内機構86aおよび案内機構86bと、案内機構86aおよび案内機構86bによって支持され、可動方向が制限されたテーブル84とを備える。また、機械装置5は、テーブル84の裏面に設けられた図示しないナットとテーブル84とからなる可動部が組みつけられたボールねじ82と、ボールねじ82を保持するボールフロントベアリング87aおよびリアベアリング87bと、を備える。
モータ2の回転軸にはリジッドカプリング88を介してボールねじ82が連結されている。ここでは、軸受の方式として、ボールフロントベアリング87aはアンギュラコンタクト玉軸受で固定され、リアベアリング87bは深溝玉軸受で支持されるシングルアンカ方式が用いられる。
テーブル84は、案内機構86aおよび案内機構86bによって支持されることにより、可動方向以外の運動は制約されている。ここでは、案内機構86aおよび案内機構86bは、鋼球を転動体としグリスで潤滑される直動転がり案内機構であるとする。
図3に示すように、モータ2にはモータ位置検出器81が取り付けられている。モータ位置検出器81の具体例は、ロータリエンコーダである。制御対象であるテーブル84の位置を測定するためにテーブル位置検出器85が設けられている。テーブル位置検出器85の具体例は、リニアエンコーダである。サーボ制御部3には、モータ位置検出器81により検出されたモータ2の位置、およびテーブル位置検出器85により検出されたテーブル位置のうち少なくとも一方が入力される。
なお、テーブル位置検出器85は、テーブル84の移動距離を測定できるのに対して、モータ位置検出器81において直接検出される位置はモータ2の回転角度である。しかし、この回転角度にモータ2の1回転あたりのテーブル移動距離であるボールねじリードを乗じてモータ1回転の角度2π[rad]で除することで、サーボ制御部3は、モータ2の回転角度をテーブル84の移動方向の長さに換算することができる。
図1で示したフィードバック位置Xfbは、モータ位置検出器81により検出されたモータ2の位置、およびテーブル位置検出器85により検出されたテーブル位置のうち少なくとも一方である。なお、図1では、モータ2がモータ位置検出器81を備える前提で、モータ位置検出器81により検出されたモータ位置をフィードバック位置Xfbとした例を図示している。図1のフィードバック位置Xfbは一例であり、モータ位置検出器81はモータ2の構成要素でなくてもよく、また、上述したとおり、フィードバック位置Xfbはテーブル位置検出器85により検出されたテーブル位置でもよい。
フィードバック位置Xfbとして、モータ位置検出器81により検出された結果を用いるフィードバック制御をセミクローズドループ制御と呼ぶ。フィードバック位置Xfbとして、モータ位置検出器81により検出された結果とテーブル位置検出器85により検出された結果との両方、またはテーブル位置検出器85により検出された結果のみを使用するフィードバック制御を、フルクローズドループ制御と呼ぶ。
以上述べた機械装置5の構成は一例であり、機械装置5の構成は図3に示した例に限定されない。後述するように、本実施の形態の制御パラメータ調整装置1aは、複数の機械装置5を制御対象とすることが可能である。
次に、指令値生成部4の動作を説明する。指令値生成部4は、調整実行部13から受信した運転プログラムXcに基づき、サーボ制御部3への位置指令Xrを生成する。ここでは、運転プログラムXcは、機械装置5の制御対象の指令位置と指令速度とがGコードで記述されたNCプログラムであり、サーボ制御部3への指令Xrは、運転プログラムXcに加減速処理およびフィルタリング処理を行い生成した時系列の位置指令であるとする。ここでGコードとは、数値制御で用いられる命令コードの1つであり、制御対象物の位置決め、直線補間、円弧補間、平面指定などを行う際に記述される指令コードである。NCプログラムは、数値制御用のプログラムである。
次に、サーボ制御部3の構成例および動作について説明する。図4は、実施の形態1のサーボ制御部3の構成例を示す図である。サーボ制御部3は、図4に示すように、位置指令Xrと応答位置であるフィードバック位置Xfbとの差である応答誤差を求める加減算部30aと、加減算部30aが求めた偏差を受け付ける位置制御部31と、微分演算を実行する微分演算部33と、を備える。サーボ制御部3は、さらに、位置制御部31で求められた速度指令と微分演算部33で求められた実速度との偏差を求める加減算部30bと、駆動指令であるトルク指令Trを出力する速度制御部34と、制御パラメータ調整装置1aから受信した制御パラメータPsを対応する各部へ設定するパラメータ設定部35と、誤差Dmを制御パラメータ調整装置1aへ送信する誤差送信部36と、トルク指令Trに基づきモータ駆動電流Irを出力する駆動回路37と、を備える。
加減算部30aは、位置指令Xrとフィードバック位置Xfbとの偏差である位置偏差を求め、位置制御部31へ出力する。位置制御部31は、加減算部30aから入力される位置偏差を小さくするように、比例制御などの位置制御処理を実行し、位置偏差を小さくする速度指令を出力する。また、微分演算部33では、フィードバック位置Xfbを微分してフィードバック速度が求められる。ただし、フルクローズドループ制御において機械装置5の位置とモータ2の位置の両方を用いる場合は、微分演算部33にモータ位置検出器81の検出値を入力し、テーブル位置検出器85の検出値を加減算部30aに入力する。
また、加減算部30bは、位置制御部31にて求められた速度指令と微分演算部33にて求められた実速度との偏差である速度偏差を求め、速度制御部34へ出力する。速度制御部34では、加減算部30bから入力される速度偏差を小さくするように、比例積分制御などの速度制御処理が行われ、トルク指令Trが算出され、トルク指令Trが駆動回路37に出力される。駆動回路37は、トルク指令Trに基づきモータ2へモータ駆動電流Irを出力する。パラメータ設定部35および誤差送信部36の動作の詳細については後述する。
次に、本実施の形態のパラメータ調整方法について説明する。上述したように、パラメータ入力部11は、機械装置5の構造を特徴づける構造パラメータCmの入力を受け付ける。図5は、構造パラメータCmの入力を受け付ける入力画面70の一例を示す図である。パラメータ入力部11は、表示装置46へ図5に示した入力画面70を表示して、作業者からの入力を待機する。入力画面70は、機械の種別が入力される機械種別入力欄71と、駆動軸の数が入力される駆動軸数入力欄72と、駆動軸の配置場所が入力される駆動軸配置場所入力欄73と、構造の名称が入力される構造名称入力欄74と、機械寸法が入力される機械寸法入力欄75と、機械質量が入力される機械質量入力欄76とを有する。図5に示した例では、構造パラメータCmは、機械の種別、駆動軸の数、駆動軸の配置場所、構造の名称、機械寸法および機械質量を含む。図5に示した構造パラメータCmは一例であり、構造パラメータCmは図5に示した例に限定されない。
機械種別入力欄71には、ロボット、ターニングセンタ、マシニングセンタ、搬送機、送り系といった機械装置5の種別が入力される。駆動軸数入力欄72は、機械装置5が有する駆動軸の数が入力される。駆動軸配置場所入力欄73には、機械装置5の駆動軸が配置される場所を示す情報であり、例えば、水平、垂直のような配置場所、または数値制御工作機械における機構コードX−YZのような軸配置を示す情報が入力される。構造名称入力欄74には、Cコラム構造、横形、立ち型、門型、水平関節、垂直関節、単軸など、機械装置5の構造の名称が入力される。
作業者は、入力装置45を操作することにより、図5に示された入力画面70における各入力欄に対応する値を入力する。パラメータ入力部11は、入力装置45が操作されることにより入力された情報を受け付け、受け付けた情報が入力画面70の対応する入力欄に表示されるよう表示装置46を制御する。
例えば、図3に示した機械装置5は、駆動軸は1つであり水平に設定されている。また、機械装置5の構造名称は単軸であり、機械の種別は送り系である。また、機械装置5は、寸法が500mm×200mm×150mm、質量が40kgであるとする。
図6は、図3に示した機械装置5に対応した構造パラメータCmが作業者により入力された後の入力画面70の一例を示す図である。図6に示すように、各構造パラメータCmに対応する情報が作業者により入力されると、パラメータ入力部11は、表示装置46にこれらの情報を表示する。
同様に、パラメータ入力部11は、機械装置5の駆動軸を構成する構成部品を特徴づける駆動軸パラメータCdの入力を受け付ける。図7は、駆動軸パラメータCdの入力を受け付ける入力画面170の一例を示す図である。入力画面70で駆動軸数入力欄72に入力された軸数分、パラメータ入力部11は、入力画面170を表示することが可能である。例えば、パラメータ入力部11は、駆動軸の名称が入力される駆動軸入力欄181を、プルダウンメニュー表示により、選択可能な欄としておく。そして、各プルダウンメニューに、「第1軸:」、「第2軸:」といった駆動軸を識別する情報を表示し、プルダウンメニューにより駆動軸を選択可能であるとする。プルダウンメニューにより駆動軸が選択された後は、駆動軸入力欄181には、駆動軸の名称が入力可能となり、また他の入力欄への入力も可能となる。
例えば、入力画面70で駆動軸数入力欄72に入力された軸数が1の場合には、第1軸だけが表示され、入力画面70で駆動軸数入力欄72に入力された軸数が2の場合には、「第1軸:」および「第2軸:」がプルダウンメニューに表示され、どちらかを選択可能となる。パラメータ入力部11は、「第1軸:」が選択された場合には、入力画面170においては第1軸に対応する情報の入力を受け付け、「第2軸:」が選択された場合には、入力画面170においては第2軸に対応する情報の入力を受け付ける。このようにして、パラメータ入力部11は、駆動軸数分入力画面170を表示する。なお、駆動軸数分の駆動軸パラメータCdの入力を受けつける方法は、この例に限定されず、駆動軸数分の入力画面170を一度に同時に表示するなどとしてもよい。
入力画面170は、駆動軸入力欄181の他に、駆動軸の種別が入力される駆動軸種別入力欄171と、駆動軸の駆動に用いられるアクチュエータの数が入力されるアクチュエータ数入力欄172と、案内機構の種別が入力される案内機構種別入力欄173と、動力伝達機構種別が入力される動力伝達機構種別入力欄174とを有する。さらに、入力画面170は、減速機構の種別が入力される減速機構種別入力欄175と、構造の種別が入力される構造種別入力欄176と、制御種別が入力される制御種別入力欄177と、負荷質量が入力される負荷質量入力欄178と、ストロークが入力されるストローク入力欄179と、軸受の種別が入力される軸受種別入力欄180とを備える。
駆動軸種別入力欄171は、回転軸、直進軸、パラレルリンク軸のように駆動軸の種別が入力される。アクチュエータ数入力欄172は、各駆動軸に用いられるアクチュエータの数が入力される。タンデム軸のように複数のアクチュエータで1つの駆動軸を駆動する場合はアクチュエータ数には2以上の値が設定される。案内機構種別入力欄173には、直動ボールガイド、直動ローラガイド、すべり案内、ニードルローラ案内、V溝ころ案内、空気静圧案内、油静圧案内のような案内機構の種別が入力される。
動力伝達機構種別入力欄174には、ダイレクトすなわち動力伝達機構なし、ボールねじ、OSB予圧ボールねじ、オフセット予圧ボールねじ、ラックアンドピニオン、ウォームギアのような動力伝達機構の種別が入力される。減速機構種別入力欄175には、減速機構なし、ギア比5:1のように減速機構の種別が入力される。アクチュエータ種別入力欄176には、同期モータ、IPM(Interior Permanent Magnet)モータ、誘導モータ、リニアモータ、圧電素子、シャフトモータ、ボイスコイルモータのようなアクチュエータの種別が入力される。制御種別入力欄177には、フルクローズドループ制御、セミクローズドループ制御、デュアルフィードバック制御のような制御方式の種別が入力される。負荷質量入力欄178には、負荷質量が入力され、ストローク入力欄179にはストロークが入力される。軸受種別入力欄180には、シングルアンカ、ダブルアンカ、アンギュラコンタクト、深溝玉のような軸受の種別が入力される。
なお、各入力欄への入力方法は、どのような方法が用いられてもよく、直接、数値または文字が入力されるように設定されてもよいし、プルダウンメニューなどを用いることにより複数の選択肢のなかから作業者が選択する方法が用いられてもよい。
図8は、図3に示した機械装置5に対応した駆動軸パラメータCdが作業者により入力された後の入力画面170の一例を示す図である。
構造パラメータCmは、機械装置の機械の種別、駆動軸の配置場所、駆動軸数、構造の種別、機械寸法および機械質量のうちの1つ以上を用いることができるが、構造パラメータCmはこれらに限定されない。また、駆動軸パラメータCdは、駆動軸の種別、アクチュエータ数、案内機構の種別、動力伝達機構の種別、構造の種別、制御の種別、負荷質量、ストロークのうちの1つ以上を用いることができるが、駆動軸パラメータCdはこれらに限定されない。
以上のように、パラメータ入力部11は、構造パラメータCmおよび駆動軸パラメータCdの入力を受け付けると、入力された構造パラメータCmおよび駆動軸パラメータCdすなわち入力パラメータを調整機能選択部12へ通知する。調整機能選択部12は、入力パラメータに基づいて、調整対象とする制御パラメータを選択する。
図9は、調整機能選択部12における制御パラメータの選択処理手順の一例を示すフローチャートである。まず、調整機能選択部12は、駆動軸を示す変数であるiを0に初期化する(ステップS1)。次に、調整機能選択部12は、機械装置5に共通して使用する制御パラメータを、入力パラメータのうちの構造パラメータCmに基づいて選択する(ステップS2)。詳細には、調整機能選択部12は、入力パラメータのうちの構造パラメータCmと記憶部14に格納されている制御パラメータ選択情報とに基づいて、機械装置5に共通して使用する制御パラメータを選択する。
図10は、実施の形態1の制御パラメータ選択情報の一例を示す図である。制御パラメータ選択情報は、図10に示すように、マトリクス状の情報であり、図10に示した例では、縦方向に、構造パラメータCmおよび駆動軸パラメータCdを示し、横方向に制御パラメータを示している。図10では、構造パラメータCmおよび駆動軸パラメータCdとして入力された情報ごとに、選択される制御パラメータを丸印で示している。
図9の説明に戻り、次に、調整機能選択部12は、i=i+1とし(ステップS3)、第i軸に対して、制御パラメータを、入力パラメータのうちの第i軸に対応する駆動軸パラメータCdに基づいて選択する(ステップS4)。詳細には、調整機能選択部12は、入力パラメータのうちの第i軸に対応する駆動軸パラメータCdに基づいて、制御パラメータを選択する。例えば、第i軸に対応する駆動軸パラメータCdとして入力された情報に直進軸が含まれている場合、制御パラメータとして位置比例ゲイン、速度比例ゲインおよび速度積分ゲインが選択される。
次に、調整機能選択部12は、全ての軸すなわち全ての駆動軸で制御パラメータの選択が終了したか否かを判断し(ステップS5)、全ての駆動軸で制御パラメータの選択が終了した場合(ステップS5 Yes)、制御パラメータの選択処理を終了する。制御パラメータの選択が終了していない駆動軸がある場合(ステップS5 No)、調整機能選択部12は、処理をステップS3に戻す。以上の処理により選択された制御パラメータが調整対象の制御パラメータとなる。また、調整対象の制御パラメータが決定されることにより、機械装置5を数値制御する制御装置、すなわち指令値生成部4およびサーボ制御部3が実現可能な複数の機能のうち、有効とする機能が選択されたことになる。
なお、制御パラメータ選択情報に含まれる構造パラメータCmおよび駆動軸パラメータCdの数と制御パラメータの数とは変更可能であってもよい。制御パラメータ選択情報に含まれる構造パラメータCmおよび駆動軸パラメータCdの数と制御パラメータの数とを変更する場合には、制御パラメータ調整装置1aは、この変更に合わせて、上述した入力画面70および入力画面170で表示される内容も変更する。
次に、調整実行部13における制御パラメータ調整処理について説明する。調整実行部13は、調整機能選択部12により選択された制御パラメータの調整を行う。この際に、制御パラメータの調整を行う順番は、全ての制御パラメータに対して、あらかじめ調整の優先順位を割り振っておいてもよいし、入力装置45を介して作業者により優先順位を設定されてもよい。調整実行部13は、制御パラメータの優先順位に従ってパラメータを調整する。
図11は、調整実行部13における制御パラメータ調整処理手順の一例を示すフローチャートである。まず、調整実行部13は、調整対象となる制御パラメータに対して、制御パラメータの設定範囲と増分値を設定する(ステップS11)。制御パラメータの設定範囲と増分値は、あらかじめ制御パラメータごとに設定されていてもよいし、入力装置45を介して作業者により設定されてもよい。
調整実行部13は、制御パラメータの設定範囲と増分値に基づいて、制御パラメータ値を決定して、決定した制御パラメータ値に応じた制御を実行することにより駆動軸を動かし、発生する誤差を計測する(ステップS12)。具体的には、調整実行部13は、調整対象となる制御パラメータ毎に対応する運転プログラムパターンの一覧を保有しており、決定した制御パラメータに応じて調整に使用する運転プログラムXcを決定する。そして、調整実行部13は、決定した運転プログラムXcと決定した制御パラメータのうち指令生成に関わる制御パラメータであるパラメータPcとを指令値生成部4へ送信する。また、調整実行部13は、決定した制御パラメータのうちサーボ制御に関わる制御パラメータである制御パラメータPsをサーボ制御部3へ送信する。ここで、運転プログラムXcは、調整対象とする制御パラメータごとにあらかじめ設定されていてもよいし、調整対象となる制御パラメータごとに入力装置45を介して作業者により設定されてもよい。指令値生成部4は、受信した運転プログラムXcおよびパラメータPcに基づいて動作し、サーボ制御部3のパラメータ設定部35は、受信したパラメータPsを対応する各部へ設定する。そして、サーボ制御部3の誤差送信部36は、各部から指令値と実際の値との差である誤差を取得して、誤差の測定結果を制御パラメータ調整装置1aへ送信する。このようにして、誤差の計測が行われる。また、誤差Dmとして象限突起量、オーバシュート量などが用いられる場合、サーボ制御部3は、象限突起量、オーバシュート量なども算出する、またはこれらを算出するために必要な情報を送信する。例えば、位置制御部31が、象限突起量を算出して誤差送信部36へ出力してもよいし、位置制御部31は象限突起量を算出するために必要な情報である指令値と実際の位置との時系列データを誤差送信部36へ出力してもよい。誤差送信部36は、これら各部により算出された誤差を制御パラメータ調整装置1aへ送信する。誤差の算出に必要な情報が送信された場合、制御パラメータ調整装置1aが、これらの情報に基づいて誤差を算出する。
次に、調整実行部13は、ステップS12で決定した制御パラメータ値と誤差の測定結果とを対応付けて測定情報として記憶部14に記録する(ステップS13)。次に、調整実行部13は、ステップS11で設定した制御パラメータの設定範囲の全ての測定が終了したか否かを判断し(ステップS14)、終了していない場合(ステップS14 No)、制御パラメータの値を変更して(ステップS15)、再びステップS12以降を実行する。
調整実行部13は、ステップS11で設定した制御パラメータの設定範囲の全ての測定が終了したと判断した場合(ステップS14 Yes)、記録されている測定情報に基づいて、誤差が最小となる制御パラメータの値を採用し(ステップS16)、パラメータ調整処理を終了する。
図12は、ステップS13で記録された測定情報の一例を示す図である。図12に示すように、調整実行部13は、ステップS12で決定した制御パラメータ値とサーボ制御部3から受信した測定結果すなわち誤差とを記録する。なお、図12において、αは、ステップS11で設定した制御パラメータの設定範囲のうちの最小値を示し、Δαは増分値を示す。E1は、図11に示したフローチャートにおいて初回のステップS13で記録された誤差を示す。E2は、図11に示したフローチャートにおいて、ステップS15を経由して2回目のステップS13によって記録された誤差を示す。同様に、ステップS13が実施されるごとに、測定情報にステップS12で決定した制御パラメータ値と誤差とが追加されていく。調整実行部13は、ステップS16では、この測定情報を参照して、誤差が最小となる制御パラメータ値を採用する。このように、調整実行部13は、制御装置であるサーボ制御部3から取得した情報に基づいて、制御パラメータの調整を実行する。
なお、ここでは、制御パラメータの設定範囲のうち最小値から順にステップS12の誤差の計測を実行する例を示しているが、制御パラメータの設定範囲のうち最大値から順にステップS12の誤差の計測を実施してもよい。この場合、最大値から一定量ずつ制御パラメータ値を減少させてステップS12の誤差の計測を実施することになる。
調整実行部13は、採用する制御パラメータ値を決定すると、該制御パラメータ値を、指令値生成部4およびサーボ制御部3のうち少なくとも一方へ送信する。制御パラメータ値は、指令値の生成に関わるものであれば指令値生成部4に送信され、サーボ制御に関わるものであれば、指令値生成部4に送信され、指令値の生成にもサーボ制御にも関わるものであれば指令値生成部4およびサーボ制御部3に送信される。
調整実行部13は、図11を用いて説明した制御パラメータ調整処理を、制御パラメータの選択処理により選択された制御パラメータごとに実施する。ただし、制御パラメータによっては、他の制御パラメータの設定値によって最適値が異なるものがある。すなわち、互いに干渉する2つ以上の制御パラメータが存在する場合もある。このような場合、これら互いに干渉する2つ以上の制御パラメータに対して、調整の順番を定める優先順位を同じ値に設定しておき、調整実行部13は、これら2つ以上の制御パラメータをまとめて調整する。
例えば、制御パラメータ#1,制御パラメータ#2の2つの制御パラメータをまとめて調整する場合、調整実行部13は、ステップS11では制御パラメータ#1,制御パラメータ#2の両方の設定範囲と増分値を決定する。そして、これら2つの制御パラメータ#1,制御パラメータ#2の値を変更してマトリクス状に誤差を計測する。
図13は、制御パラメータ#1,制御パラメータ#2をまとめて調整した場合の測定情報の一例を示す図である。図13において、αは、ステップS11で設定した制御パラメータ#1の設定範囲のうちの最小値を示し、Δαは制御パラメータ#1の増分値を示す。また、図13において、βは、ステップS11で設定した制御パラメータ#2の設定範囲のうちの最小値を示し、Δβは制御パラメータ#2の増分値を示す。E11,E12などは、制御パラメータ#1および制御パラメータ#2の値に応じた誤差を示す。例えば、E11は、制御パラメータ#1の値がαに設定され、制御パラメータ#2の値がβに設定された場合に、ステップS13で記録された誤差である。このように、2つの制御パラメータがまとめて調整された場合、測定情報はマトリクス状の情報となる。調整実行部13は、ステップS16では、このマトリクス状の測定情報を参照して、誤差が最小となる制御パラメータ#1および制御パラメータ#2の値を採用する。
調整実行部13は、3つ以上の制御パラメータをまとめて調整する場合も、同様に、3つ以上の制御パラメータをそれぞれ変更して多次元のマトリクス状の測定情報を得て、測定情報に基づいて各制御パラメータの値を決定する。
以上のように、本実施の形態の制御パラメータ調整装置1aは、構造パラメータCmおよび駆動軸パラメータCdと制御パラメータとの対応を示す制御パラメータ選択情報を保持し、入力された構造パラメータCmおよび駆動軸パラメータCdと制御パラメータ選択情報とに基づいて、調整対象の制御パラメータを選択して設定するようにした。このため、作業者は、調整対象の制御パラメータを設定する際に、構造パラメータCmおよび駆動軸パラメータCdを入力するだけでよく、調整対象とする制御パラメータを選択する必要がない。このため、非熟練の作業者であっても、複数の機能に対応した制御装置に対して適切に調整対象の制御パラメータを設定することができる。
また、制御パラメータのなかには、互いに干渉する制御パラメータも存在する。このような場合、機械装置5を数値制御する制御装置、すなわち指令値生成部4およびサーボ制御部3によって実現される複数の機能のうち、互いに干渉する制御パラメータを含む機能を同時に使用してしまうと、ある性能を満たすために設定された制御パラメータが別の機能の性能を劣化させてしまう可能性がある。これに対し、本実施の形態では、互いに干渉する制御パラメータをまとめて調整して誤差が最小となる制御パラメータ値を設定するため、性能の劣化を抑制することができる。
また、効果が干渉する制御パラメータが存在する場合、それぞれの機能に対応した制御パラメータを機能ごとに調整すると、制御パラメータ調整の手戻りが頻繁に発生する。ある制御におけるパラメータの最適値が、他の制御の影響を受けることを効果の干渉と呼ぶ。例えば、フィードバック制御の制御パラメータの設定値が、最適な摩擦補正制御パラメータに影響するということがある。例えば、位置ループゲイン、速度ループゲイン、積分ゲイン、外乱オブザーバを使用する場合は、オブザーバゲイン、カットオフ周波数などが他の機能からの干渉の影響を受ける。機械構造が決まれば、その機械構造特有の摩擦特性は決まるので複数ある摩擦補正機能のどれを使えばよいかは一意に決まるが、最適な摩擦補正パラメータは位置ループゲインの設定値、外乱オブザーバなどの設定値によって変動する。これに対し、本実施の形態では、互いに干渉する制御パラメータをまとめて調整して誤差が最小となる制御パラメータ値を設定するため、制御パラメータの調整の手戻りを抑制することができる。
また、作業者が、調整対象の制御パラメータを選択する場合、調整の容易さなど、個人の好みなどによって選択する可能性がある。これに対し、本実施の形態では、構造パラメータCmおよび駆動軸パラメータCdと制御パラメータという客観的な情報と、あらかじめ定められた制御パラメータ選択情報とに基づいて、制御パラメータが選択されるため、物理的に適切なすなわち機械装置5の性能を満たすために適切な制御パラメータを、調整対象として選択することができる。
また、本実施の形態では、機能ごとに制御パラメータを設定するのではなく、構造パラメータCmおよび駆動軸パラメータCdに応じて制御パラメータを選択しているため、機能間で重複する制御パラメータは1回で調整される。このため、機能ごとに制御パラメータの調整を行う場合に比べ、調整の時間が短縮される。また、類似の機能で似たような効果を発揮する機能を分離できるのでより高精度に調整が完了するという効果を奏する。
実施の形態2.
図14は、本発明の実施の形態2にかかる制御パラメータ調整装置1aと指令値生成部4およびサーボ制御部3との接続例を示す図である。制御パラメータ調整装置1a、サーボ制御部3、指令値生成部4および機械装置5の構成は実施の形態1と同様である。本実施の形態では、制御パラメータ調整装置1aと指令値生成部4および機械装置5とはネットワーク6を介して接続される。以下、実施の形態1と異なる点を主に説明し、重複する説明を省略する。
本実施の形態の制御パラメータ調整装置1aは、機械装置5から物理的に離れた場所に設置されてもよい。例えば、機械装置5、モータ2、サーボ制御部3および指令値生成部4が工場の製造エリアに設置され、制御パラメータ調整装置1aが工場内ネットワークであるネットワーク6により接続された工場のサーバ室にあるサーバコンピュータに実装されてもよい。また、指令値生成部4は工場の製造エリアでなく、ネットワーク6により接続されたコンピュータにより実装されてもよい。
または、ネットワーク6はインターネット回線のネットワークであってもよい。この場合、制御パラメータ調整装置1aが、クラウドコンピュータ上に実装されてもよい。
本実施の形態では、制御パラメータ調整装置1aの通信装置44は、ネットワーク6における通信プロトコルに対応した通信処理を実施する。調整実行部13は、この通信装置44の機能により、実施の形態1と同様に、指令値生成部4およびサーボ制御部3への制御パラメータの送信、誤差の受信などを実施することができる。
また、本実施の形態では、制御パラメータ調整装置1aを、サーバ室などに設置することができるため、制御パラメータ調整装置1aが、複数の制御システムを制御することも可能である。制御システムは、機械装置と該機械装置を制御する制御装置であり、図14に示した構成例では、指令値生成部4、サーボ制御部3、モータ2および機械装置5により制御システムが構成される。
制御パラメータ調整装置1aが、複数の制御システムを制御する場合、制御パラメータ調整装置1aは、制御システムごとに、制御パラメータ選択情報を保持する。そして、構造パラメータCmの入力を受け付ける際には、図5に示した入力画面70に、機械装置の固有名称、機械の型番などの制御システムを構成する機械装置を識別するための識別情報の入力を受け付ける入力欄を追加する。また、駆動軸パラメータCdの入力を受け付ける際には、図7に示した入力画面170に、機械装置を識別するための識別情報の表示を追加する。
以上のように、実施の形態2にかかる制御パラメータ調整装置1aにより、遠隔地にいる作業者であっても、実施の形態1と同様に、容易に機械装置5の制御パラメータの調整を行うことができる。また、固有の機械および新しい構成部品に対しても適切な制御パラメータの組合せを選択できるという効果を奏する。
実施の形態3.
図15は、本発明の実施の形態3にかかる制御パラメータ調整装置の構成例を示す図である。制御パラメータ調整装置1bの制御対象となるサーボ制御部3、指令値生成部4および機械装置5は実施の形態1と同様である。
図15に示すように、実施の形態3の制御パラメータ調整装置1bは、実施の形態1の制御パラメータ調整装置1aに優先度設定部15を追加し、調整実行部13の替わりに調整実行部16を備える以外は、実施の形態1の制御パラメータ調整装置1aと同様である。以下、実施の形態1と同様の機能を有する構成要素は実施の形態1と同一の符号を付して重複する説明を省略する。以下、実施の形態1と異なる点を主に説明する。
本実施の形態の優先度設定部15および調整実行部16は、図2に示した演算装置41が記憶装置43に格納されたプログラムを実行することにより実現される。また、優先度設定部15の実現には、記憶装置43も用いられる。
本実施の形態では、優先度設定部15が、機械装置5の性能の項目すなわち性能項目ごとに数値目標と優先度とを目標情報として記憶装置43に保持し、調整実行部16が、優先度に応じて制御パラメータを調整する。図15では、優先度をCaと記載している。性能項目は、例えば、象限突起量、オーバシュート量、軌跡精度、最大加速度、周波数応答帯域、位置偏差、移動時間、振動振幅および消費エネルギーのうちのいずれか1つ以上である。
機械装置5が達成する性能が、目標とする性能よりも高い場合、制御パラメータを調整する必要はない。そこで、本実施の形態では、優先度設定部15が、性能項目ごとに、達成すべき数値目標を調整実行部16に設定する。調整実行部16は、調整機能選択部12により実施の形態1で述べた制御パラメータの選択処理が行われた後、調整対象の制御パラメータに値を設定して、図11に示した制御パラメータ調整処理におけるステップS12およびステップS13を実施する。すなわち、調整対象の全ての制御パラメータに対して、誤差の計測を1回行う。なお、この際に設定される制御パラメータの値は、例えば、実施の形態1のステップS11で設定される設定範囲内の任意の値である。
調整対象の全ての制御パラメータに対して誤差の計測を1回ずつ実施した後、調整実行部16は、数値目標および優先度に基づいて、制御パラメータ調整処理を実施する。図16は、実施の形態3の調整実行部16における制御パラメータ調整処理手順の一例を示すフローチャートである。調整実行部16は、誤差の計測結果に基づいて、全ての性能項目が数値目標を満たすか否かを判断する(ステップS21)。具体的には、調整実行部16は、優先度設定部15から通知された目標情報に基づいて、性能項目ごとに、誤差の計測結果と、数値目標とを比較し、数値目標を満たすか否かを判断する。なお、ここでいう全ての性能項目は、実施の形態1で述べた制御パラメータの選択処理により選択された制御パラメータに対応する性能項目である。
図17は、目標情報の一例を示す図である。図17に示すように、目標情報は、性能項目ごとの数値目標および優先度を含む。目標情報は、あらかじめ設定されてもよいし作業者から入力装置45を介して入力されてもよい。なお、性能項目と制御パラメータは1対1に対応していてもよいし、多対1に対応していてもよいし、1対多に対応していてもよいが、性能項目と制御パラメータとの対応は別途記憶部14に保持されているとする。なお、目標情報に制御パラメータの欄を追加し、制御パラメータ調整装置1bが、各性能項目に対応する制御パラメータを目標情報により管理してもよい。
全ての数値目標を満たす場合(ステップS21 Yes)、調整実行部16は、パラメータ調整処理を終了する。数値目標を満たさない性能項目がある場合(ステップS21 No)、数値目標を満たさない制御パラメータ、すなわち数値目標を満たさない性能項目に対応する制御パラメータを、調整対象の制御パラメータに選択する(ステップS22)。
そして、選択された制御パラメータに対して、それぞれ制御パラメータの調整を行う(ステップS23)。選択された制御パラメータとは、初回のステップS23では、ステップS22で選択された制御パラメータであり、2回目以降のステップS23では、後述するステップS25で選択された制御パラメータである。具体的には、ステップS23では、選択された制御パラメータに対して、制御パラメータごとに、実施の形態1の図11に示した処理を実施する。
次に、調整実行部16は、選択された全ての性能項目が数値目標を満たすか否かを判断する(ステップS24)。選択された性能項目とは、後述するステップS25で優先度に基づいて選択された性能項目である。なお、初回のステップS24では、ステップS25が実施されていないため、選択された全ての性能項目は、ステップS21における全ての性能項目と同様である。選択された全ての性能項目が数値目標を満たす場合(ステップS24 Yes)、調整実行部16は、パラメータ調整処理を終了する。
選択された性能項目のうち、数値目標を満たさないものがある場合(ステップS24 No)、調整実行部16は、優先度に応じて性能項目を選択し、対応する制御パラメータを選択し(ステップS25)、ステップS23からの処理を再度実施する。具体的には、調整実行部16は、優先度の高い性能項目を選択する。例えば、優先度は、1が最も優先度が高く、数値が増えるごとに優先度が低くなるように設定されているとした場合、優先度1の性能項目、優先度2の性能項目および優先度3の性能項目がある場合、調整実行部16は、ステップS25では、優先度1の性能項目および優先度2の性能項目を選択する。この例では、優先度の最も低い性能項目が選択されないようにしたが、優先度に基づく、性能項目の選択方法はこの例に限定されない。
また、ステップS23の制御パラメータの調整が一定回数以上行われても、制御パラメータ調整処理が終了しない場合、制御パラメータ調整処理を終了するようにしてもよい。
上述したように、本実施の形態の調整実行部16は、性能項目ごとに設定された数値目標に基づいて、制御パラメータの調整を実行する。また、調整実行部16は、数値目標を満たさない性能項目がある場合、性能項目ごとに設定された優先度に基づいて、調整対象の制御パラメータを選択する。なお、以上の例では、調整実行部16が、性能項目ごとに設定された優先度に基づいて、調整対象の制御パラメータを選択するようにしたが、これに限らず、調整機能選択部12が、性能項目ごとに設定された優先度に基づいて、調整対象の制御パラメータを選択するようにしてもよい。この場合、優先度は、調整実行部16ではなく調整機能選択部12に入力される。また、調整実行部16は、ステップS24で、数値目標を満たさないものがあると判断した場合、対応する性能項目を調整機能選択部12へ通知し、調整機能選択部12は通知された性能項目から、優先度に応じて性能項目を選択し、選択した性能項目に対応する制御パラメータを調整実行部16へ通知する。これにより、調整実行部16は、性能項目ごとに設定された数値目標に基づいて、制御パラメータの調整を実行することになる。
以上の処理を実施することにより、制御パラメータの調整を行っても、数値目標を満たさない数値項目がある場合、優先度に応じて調整対象の制御パラメータを順次しぼりこんでいくことができる。機械装置の条件によっては、制御パラメータをいくら調整しても全ての性能項目について数値目標を達成できない場合がある。このような場合、全ての性能項目について数値目標を達成するまでパラメータの調整を続けると、パラメータの調整処理が終了しないことになる。本実施の形態では、優先度に基づいて、優先する性能項目を選択するため、パラメータの調整処理を効率良く実施することができる。
また、精度と速度のように、トレードオフ関係がある性能目標では、いずれかが目標性能を満たさない場合、どちらの性能を優先すべきかの指標がないと制御パラメータを調整できない。本実施の形態では、このような場合も、優先する性能項目を選択するため、パラメータの調整処理を実施することができる。なお、選択されなかった性能項目に対応する制御パラメータについては、実施の形態1と同様に誤差の最も少ない値を設定すればよい。
また、類似の効果を発揮する制御パラメータ、および効果が干渉する制御パラメータが存在する場合、最適な制御パラメータが一意に決まらず、調整作業が収束しないことがある。本実施の形態では、このような場合も、優先する性能項目を選択するため、パラメータの調整処理を実施することができる。
また、現実世界で起こっている物理現象を完全にモデル化することは困難であるため、各制御装置が実施する補正機能により達成できる性能には限界がある。このため、要求される性能が、機械装置の再現性を超える場合、または未知の物理現象による誤差が発生する場合などには、制御装置が保有する機能の制御パラメータをいくら調整しても目標の性能は達成できない。このような場合、制御装置が保有する機能を用いて可能な限り要求性能を達成する組み合わせを探索する必要がある。しかしながら、作業者が、制御装置が保有する機能の限界を知ることは難しく、どこまで探索を行うかを決定することは難しい。本実施の形態では、性能項目ごとに優先度を設定しておけば、上述のように、優先度に応じて性能項目が選択されるため、効率的に制御パラメータを設定することができる。
なお、本実施の形態では、実施の形態1で述べた構成において、制御パラメータ調整装置1bを用いる例を説明したが、実施の形態2と同様に、制御パラメータ調整装置1bがネットワークを介して指令値生成部4およびサーボ制御部3と接続されるようにしてもよい。
実施の形態4.
図18は、本発明の実施の形態4にかかる制御パラメータ調整装置の構成例を示す図である。実施の形態4にかかる制御パラメータ調整装置1cの制御対象となるサーボ制御部3、指令値生成部4および機械装置5は実施の形態1と同様である。
図18に示すように、実施の形態4の制御パラメータ調整装置1cは、実施の形態3の制御パラメータ調整装置1bに調整データ記録部17を追加し、調整データ記録部17により記録された情報をパラメータ入力部11、調整機能選択部12および調整実行部16が参照できるように構成される以外は、実施の形態3の制御パラメータ調整装置1bと同様である。以下、実施の形態3と同様の機能を有する構成要素は実施の形態3と同一の符号を付して重複する説明を省略する。以下、実施の形態3と異なる点を主に説明する。
調整データ記録部17は、図2に示した演算装置41が記憶装置43に格納されたプログラムを実行することにより実現される。また、調整データ記録部17の実現には、記憶装置43も用いられる。
調整データ記録部17は、実施の形態3で述べた制御パラメータの調整が完了した後に、入力パラメータ、性能項目、優先度、最終的に設定された制御パラメータとその値、調整日時および調整者名の情報を記憶装置43に記録する。調整データ記録部17は、制御パラメータの調整が行われた後に設定された制御パラメータの値と受け付けた設計パラメータとのうち少なくとも一方を記録する記録部である。図19は、調整データ記録部17により記録される情報の一例を示す図である。なお、記録される情報は、これらのうちの全てではなく一部であってもよい。入力パラメータは、パラメータ入力部11が受け付けた設計パラメータである。
調整データ記録部17により記録された情報のうちの入力パラメータは、次回のパラメータ調整時に、初期値として入力画面70および入力画面170に表示されてもよい。また、調整実行部16は、調整データ記録部17により記録された情報を用いて、誤差の計測における制御パラメータの値を設定してもよい。
さらに、別の制御パラメータ調整装置1cの調整データ記録部17に記録されたデータをネットワーク経由で取得できるようにしてもよい。
以上に説明した実施の形態4に係る制御パラメータ調整装置1cにより、構造パラメータCm、駆動軸パラメータCdに不明箇所がある場合に、作業者は、既に保存されている情報を活用することで、効率的に制御パラメータの調整を実施できる。また、実施の形態4に係る制御パラメータ調整装置1cは、構造パラメータCm、駆動軸パラメータCdの入力に要する時間を短縮し、設定ミスを低減できるという効果を奏する。
なお、実施の形態1、または実施の形態2の制御パラメータ調整装置1aに、同様に、調整データ記録部17を追加してもよい。
実施の形態5.
図20は、本発明の実施の形態5にかかる制御パラメータ調整装置の構成例を示す図である。実施の形態5にかかる制御パラメータ調整装置1dの制御対象となるサーボ制御部3、指令値生成部4および機械装置5は実施の形態1と同様である。
図20に示すように、実施の形態5の制御パラメータ調整装置1dは、実施の形態4の制御パラメータ調整装置1cに駆動軸パラメータ推定部18を追加する以外は、実施の形態4の制御パラメータ調整装置1cと同様である。以下、実施の形態4と同様の機能を有する構成要素は実施の形態4と同一の符号を付して重複する説明を省略する。以下、実施の形態4と異なる点を主に説明する。
駆動軸パラメータ推定部18は、図2に示した演算装置41が記憶装置43に格納されたプログラムを実行することにより実現される。
実施の形態5の制御パラメータ調整装置1dは、構造パラメータCmおよび駆動軸パラメータCdのうち、作業者が把握していない不明なパラメータが存在するすなわち入力されないパラメータが存在する場合、作業者からの入力装置45の操作によりパラメータ推定動作の実施の指示を受け付ける。これにより、駆動軸パラメータ推定部18は、記憶部14に保持している構成部品推定情報と調整実行部16がサーボ制御部3から取得したデータに基づいて不明なパラメータを推定するパラメータ推定動作を実施する。
構成部品推定情報は、あらかじめ設定されてもよいし、作業者により入力されてもよい。図21は、構成部品推定情報の一例を示す図である。構成部品推定情報は、構造パラメータCmおよび駆動軸パラメータCdとパラメータの状態量への依存性との対応を示すマトリクス状の情報である。図21に示した例では、縦方向に構造パラメータCmおよび駆動軸パラメータCdが示され、横方向に状態量への依存性が示されている。
例えば、図21に示したように、直進軸は、状態量への依存性として加速度依存性を有する。加速度依存性を有する場合には、駆動軸パラメータ推定部18は、調整実行部16を介して、サーボ制御部3から様々な誤差を取得する。そして、駆動軸パラメータ推定部18は、取得した誤差に基づいて、構造パラメータCmおよび駆動軸パラメータCdを推定する。駆動軸パラメータ推定部18で用いられるパラメータの推定方法はどのような方法を用いてもよいが、例えば、モータ2にランダム信号またはサインスイープ信号を印加した場合のモータ2の応答から周波数応答を計算し、部分空間法などの方法で振動特性を決定するパラメータを推定する方法を用いることができる。または、パラメータの推定方法として、モータ電流とモータ位置のグラフより、最小二乗法を用いて摩擦特性を決定するパラメータを推定する方法を用いることができる。または、特許第5996127号公報に開示されている摩擦パラメータ推定法を用いることができる。
駆動軸パラメータ推定部18は、推定結果を調整データ記録部17へ渡す。調整データ記録部17は、受け取った推定結果を実施の形態4の入力パラメータと同様に記録するとともに、推定結果を調整機能選択部12へ渡す。これにより、調整機能選択部12は、入力された構造パラメータCmおよび駆動軸パラメータCdと推定結果とを用い、制御パラメータ選択情報を参照して、実施の形態1から実施の形態4と同様に、制御パラメータを選択することができる。以降、実施の形態4と同様に、制御パラメータの調整が行われる。
以上のように、パラメータ推定部である駆動軸パラメータ推定部18は、制御装置であるサーボ制御部3から取得した情報に基づいて、構造パラメータCmおよび駆動軸パラメータCdのうちの少なくとも1つを推定する。
以上に説明した実施の形態5にかかる制御パラメータ調整装置1dは、駆動軸パラメータ推定部18が、作業者が把握していない不明なパラメータを推定するようにした。このため、構造パラメータCmおよび駆動軸パラメータCdのうち不明なものがあっても、実施の形態4と同様の効果を奏することができる。
なお、実施の形態1から実施の形態3のいずれかの制御パラメータ調整装置に駆動軸パラメータ推定部18を追加して、同様に不明なパラメータを推定するようにしてもよい。
実施の形態6.
図22は、本発明の実施の形態6にかかる制御パラメータ調整装置の構成例を示す図である。実施の形態6にかかる制御パラメータ調整装置1eの制御対象となるサーボ制御部3、指令値生成部4および機械装置5は実施の形態1と同様である。機械装置5には、センサ21が取り付けられている。
図22に示すように、実施の形態6の制御パラメータ調整装置1eは、実施の形態3の制御パラメータ調整装置1bにセンサ信号入力部19を追加する以外は、実施の形態3の制御パラメータ調整装置1bと同様である。以下、実施の形態3と同様の機能を有する構成要素は実施の形態3と同一の符号を付して重複する説明を省略する。以下、実施の形態3と異なる点を主に説明する。
センサ信号入力部19には、機械装置5にとりつけられたセンサ21の信号が入力される。センサ21は、機械装置5の状態を測定する。センサ21は、例えば、制御対象であるテーブルまたはハンドの先に取り付けられた加速度センサ、工具先端の運動を計測する座標測定機、レーザ干渉計、ドップラ振動計である。制御パラメータの中には、制御対象位置での振動または位置決め誤差を補正するパラメータが存在する。このような誤差は、サーボ制御部3が制御する信号には直接表れない。そのため、このような誤差を補正するための制御パラメータを調整する際には、制御対象を直接測定することが必要となる。このため、本実施の形態では、センサ信号入力部19は、センサ21により測定された制御対象位置での振動または位置決め誤差などを示す情報を取得する。
調整実行部16は、センサ信号入力部19から制御対象の誤差である測定結果を受け取り、この測定結果に基づいて、実施の形態3と同様に、パラメータ調整を実行する。
以上に説明した実施の形態6にかかる制御パラメータ調整装置1eは、実施の形態3と同様の効果を奏するとともに、サーボ制御部3から受け取った信号だけでは調整することができない制御パラメータの調整も可能となるという効果を奏する。
なお、実施の形態1、実施の形態2、実施の形態4または実施の形態5の制御パラメータ調整装置にセンサ信号入力部19を追加して、機械装置5にセンサ21を取り付けることにより、センサ21を用いた制御パラメータの調整を実施するようにしてもよい。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
上述した課題を解決し、目的を達成するために、本発明にかかる制御パラメータ調整装置は、駆動軸を有する機械装置の制御を行う制御装置の制御パラメータを調整する制御パラメータ調整装置であって、機械装置の特性を特徴づける設計パラメータの入力を受け付ける受付部と、設計パラメータと調整対象として選択されるべき制御パラメータとの対応を示す制御パラメータ選択情報を記憶する記憶部と、を備える。また、本発明にかかる制御パラメータ調整装置は、受付部により受け付けられた設計パラメータと制御パラメータ選択情報とに基づいて制御装置の有する機能に対応した制御パラメータのなかから調整対象とする制御パラメータを選択する選択部と、選択部により選択された制御パラメータの調整を実行する実行部と、を備える。
また、作業者が、調整対象の制御パラメータを選択する場合、調整の容易さなど、個人の好みなどによって選択する可能性がある。これに対し、本実施の形態では、構造パラメータCmおよび駆動軸パラメータCdという客観的な情報と、あらかじめ定められた制御パラメータ選択情報とに基づいて、制御パラメータが選択されるため、物理的に適切なすなわち機械装置5の性能を満たすために適切な制御パラメータを、調整対象として選択することができる。