説明

フィードバック制御系の振動検出装置及び振動検出装置を備えたモータ制御装置

【課題】モータまたは負荷の慣性モーメントの値がずれても振動状態を精度良く検出し、素早く異常を察知して騒音や機械系の損傷等を防止することができるフィードバック制御系の振動検出装置および振動検出装置を備えたモータ制御装置を提供する。
【解決手段】負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、制御装置は、制御対象をフィードバック制御してモータを制御する制御器部と、制御装置の出力の上下限ピーク値とそれらの発生時刻に基づいて、振動の発生を判断する振動状態判断部と、を備えた。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、負荷機械をフィードバック制御するモータ制御装置における振動を検出する振動検出装置及び振動検出装置を備えたモータ制御装置に関する。
【背景技術】
【0002】
通常、フィードバック制御するモータ制御装置では、負荷位置または速度を高速高精度に目標指令に追従させるため、位置または速度制御部の調整は、徐々に該当する制御ゲインを上げ、その振動状態を監視しながら行われる。この調整の際、制御ゲインの過大設定では、機械系の共振および無駄時間などにより制御系が発振し、音が発生したり、場合によっては機械を破壊したりすることがある。そこで、安全に調整を行なうため、発振前に制御系の振動状態を早く検出することが必要になるのである。
【0003】
第1の従来技術では、速度オブザーバを構成し、実際の速度と推定速度との差信号に基づいて発振・振動状態を検出している(例えば、特許文献1参照)。
【0004】
第2の従来技術では、検出範囲内におけるトルク指令の各振動振幅値と当該振動での下限ピークと上限ピーク間の各時間を検出し、前記検出値から各振動ごとのエネルギー値を算出し、前記検出範囲におけるトルク指令の振動回数をNとし、1回目から各回数までの振動エネルギー値の各積算値を算出し、前記各積算値の総和を算出し、これを1回からN回目までの前記積算値にN/2を乗じた値と大小比較し、前記各積算値の総和の方が小さければ、発振として検出している(例えば、特許文献2参照)。
【0005】
図6は、第1の従来技術の実施例を示す制御ブロック図である。図において、101は速度制御、102はモータ及び負荷、111はオブザーバのモータ及び負荷イナーシャ分、112はオブザーバの速度制御のゲイン、114は積分、113はオブザーバの速度制御の積分、103はオブザーバの全体である。オブザーバの推定速度ωobと実際の速度ωとの差がある検出レベルを越えたことを観測すると、発振・振動を検出するものである。
【0006】
図7は、第2の従来技術の実施例を示す制御ブロック図である。図において、201は速度制御器、202は電流制御器、203はモータ、204は機械負荷、205はエンコーダ、206は微分器、207は発振検出器、208はメモリ、209は減算器であり、発振が起きるとトルク指令の振幅値は大きくなるということに着目して、振動エネルギー値をトルク指令Trefの振幅値と振幅値のピークからピークまでの時間(下限ピークから上限ピークまでの時間)で重み付けした関数en(i)で定義して発振を検出するものである。また、発振検出器207はトルク指令Trefを入力して発振検出を行ない、発振を検出すると発振信号をメモリ208に出力し、メモリ208は発振信号を入力して予め速度制御器201より保存しておいた発振前の制御パラメータを速度制御器201の制御パラメータに書き込んで変更するものである。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2004−248386号公報(第2−3頁、図3)
【特許文献2】特開2004−187439号公報(第3−5頁、図1)
【発明の概要】
【発明が解決しようとする課題】
【0008】
第1の従来技術では、制御対象のモデルを用いたオブザーバの推定速度ωobと実際速度ωとの差に基づいて振動検出を行なうので、制御対象のパラメータ、特にモータまたは負荷の慣性モーメントの値がずれると、振動が発生しなくても過渡過程におけるオブザーバの推定速度ωobと実際速度ωとの差が大きくなるため発振・振動の検出を正しくできない問題があった。ここで、慣性モーメントの値がずれるということは、同定誤差や負荷変動がある場合に生じるもので、モータを制御するモータ制御装置において、殆どの場合に存在するものである。
【0009】
第2の従来技術では、一定な検出時間範囲内における振動エネルギーの平均値を判断時点の振動エネルギーより小さいかどうかに基づいて発振状態の判断を行なう方法なので、完全に発振しないと検出できないという問題点があった。
【0010】
本発明はこのような問題点に鑑みてなされたものであり、モータまたは負荷の慣性モーメントの値がずれても振動状態を精度良く検出し、素早く異常を察知して騒音や機械系の損傷等を防止することができ、さらにはノイズが重畳している信号や発振状態にある信号に対しても正確に振動ピークを検出することができるフィードバック制御系の振動検出装置及び振動検出装置を備えたモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【0011】
上記問題を解決するため、本発明は、次のように構成したのである。
【0012】
本発明は、負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、前記振動検出装置は、 前記制御装置の出力信号の上限ピーク値の検出時刻における上限ピーク値からその直前の下限ピーク値を差し引いた値である上下限ピーク値とそれらの発生時刻に基づいて、振動の発生を判断する振動状態判断部、を備えたものである。
【0013】
また、本発明は、前記振動状態判断部が、前記出力信号の上限ピーク値の検出時刻から前記出力信号の下限ピーク値の検出時刻を差し引いた上下限ピークの発生時間に基づいて、振動の発生を判断するものである。
【0014】
また、本発明は、振動状態判断部が、前記上下限ピーク値とそれらの発生時刻に基づいて算出した振動強度値と、前記振動強度値を移動平均して算出した振動移動平均強度値と、前記振動移動平均強度値が予め設定された振動強度最小値を超えた時間幅である振動持続時間と、前記振動強度値、前記振動移動平均強度値及び前記振動持続時間のそれぞれに対応する予め設定された閾値との比較と、に基づいて前記制御装置の出力信号の振動の発生を判断するものである。
【0015】
また、本発明は、負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を、横軸を時間軸とした左側区間、右側区間とその両方の区間に含まれる中心点とにより定義し、前記中心点での前記出力信号の値が、前記左側区間及び前記右側区間における前記出力信号の値より大きいときに、前記中心点を上限ピークと判断し、振動の発生を判断するものである。
【0016】
また、本発明は、負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を、横軸を時間軸とした左側区間、右側区間とその両方の区間に含まれる中心点とにより定義し、前記中心点での前記出力信号の値が、前記左側区間及び前記右側区間における前記出力信号の値より小さいときに、前記中心点を下限ピークと判断し、振動の発生を判断するものである。
【0017】
また、本発明は、負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を、横軸を時間軸とした左側区間、右側区間とその両方の区間に含まれる中心点とにより定義し、さらに、前記中心点での出力信号値C、前記左側区間の最大値MaxL、最小値MinL、前記右側区間の最大値MaxR、最小値MinR、 前記最大値MaxLと前記最小値MinLの差ΔL、前記最大値MaxRと前記最小値MinRの差ΔRを定義し、前記ΔL、前記ΔRとも閾値より大きく、前記最大値MaxL、MaxR及び前記出力信号値Cが等しければ、前記中心点を上限ピークと判断し、前記最大値MaxL、MaxRのいずれか一方が、前記出力信号値Cより大きく、前記最小値MinL、MinR及び前記出力信号値Cが等しければ、前記中心点を下限ピークと判断し、前記出力信号値Cが前記最小値MinL、MinRのいずれにも等しくなければ、ピーク検出区間には上限ピーク及び下限ピークがないと判断し、振動の発生を判断するものである。
【0018】
また、本発明は、前記制御装置の出力信号のピーク検出区間を予めN個からなる要素の集合とし、前記集合の1つの要素であるピーク検出区間でピーク検出を実施し、前記中心点での前記出力信号の値が、上限ピークあるいは下限ピークと判断されるまで、前記N個のピーク検出区間を順次繰り返して判断し、振動の発生を判断するものである。
【発明の効果】
【0019】
本発明によると、制御対象のモデルがない場合でも、モータまたは負荷の慣性モーメントの値がずれても振動状態を精度良く検出することができる。また、機械共振による振動が大きい減衰振動および不安定振動を速やかに検出でき、更に音がする振動および制御系の遅れによる不安定振動を速やかに検出できる。また更に、ピーク間の時間間隔を用いて振動周波数を検出することができる。
また、本発明によると、完全発振に至らないうちに素早く異常を察知して騒音や機械系の損傷等を防止することができる。
【0020】
また、本発明によると、出力信号にノイズが重畳しても、出力信号に広範囲の周波数成分を含む振動成分が存在しても、正確なピーク検出ができる。
【0021】
また、本発明によると、振動検出装置による発振や振動等の発生判断に基づいて、正確に異常停止することができる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施例1におけるフィードバック系の振動検出装置の構成を示すブロック線図
【図2】実施例1における出力信号と推定出力信号との差信号を示す波形図
【図3】実施例1におけるステップ102で算出したVpp信号を示す図
【図4】実施例1におけるステップ103で算出したP信号を示す図
【図5】実施例1における振動状態を判断する処理手順を示すフローチャート
【図6】第1の従来技術の実施例を示す制御ブロック図
【図7】第2の従来技術の実施例を示す制御ブロック図
【図8】出力振動成分信号15の振幅ピークをサーチする方法を説明する図
【図9】出力振動成分信号15の振幅ピークをサーチする処理手順を示すフローチャート
【図10】本発明の実施例2におけるフィードバック系の振動検出装置の構成を示すブロック線図
【図11】振動状態時の出力信号4を示す波形図
【図12】実施例2における振動状態を判断する処理手順を示すフローチャート
【図13】出力信号4の振幅ピークVpとピーク値が出る時間tpとを示した図
【図14】実施例2におけるステップ202で算出したVppを示す図
【図15】実施例2におけるステップ203で算出したAppを示す図
【図16】ステップ205で算出したAvを示す図
【図17】ステップ207で算出したTvを示す図
【図18】本発明の実施例3におけるフィードバック系の振動検出装置の構成を示すブロック線図
【図19】実施例3における出力信号4を示す波形図
【図20】実施例3におけるピーク検出する処理手順を示すフローチャート
【図21】ステップ403で実施するピーク検出処理を示すフローチャート
【図22】ステップ503で実施するピーク判断処理を示すフローチャート
【発明を実施するための最良の形態】
【0023】
以下、本発明の実施の形態について図を参照して説明する。
【実施例1】
【0024】
図1は、本発明の実施例1におけるフィードバック系の振動検出装置の構成を示すブロック線図である。図において、1は指令信号、12はフィードバック制御装置であって、制御器2と制御対象3を備え、4は出力信号、5は出力フィードバック信号、13はフィードバック制御装置のモデル部であって、制御器2のモデル部6と制御対象3のモデル部7を備え、8は推定出力信号、9は推定出力フィードバック信号、10は出力信号4と推定出力信号8との差信号、14はローパスフィルタ、15は出力の振動成分信号、11は振動状態判断部である。すなわち、振動検出は、フィードバック制御装置12の出力信号4とフィードバック制御装置のモデル部13の推定出力信号8との差信号に基づいて行なう。
【0025】
ここで、このフィードバック系の振動検出装置のモータ制御装置への適用の際は、フィードバック制御装置12が位置制御系の場合、指令信号1は位置指令、制御器2は位置制御または速度制御器、出力信号4は位置検出信号、推定出力信号8は位置推定信号であり、フィードバック制御装置12が速度制御系の場合、指令信号1は速度指令、制御器2は速度制御器、出力信号4は速度検出信号あるいは位置差分信号、推定出力信号8は速度推定信号である。
【0026】
図2は、図1における出力信号4と推定出力信号8との差信号を示す波形図である。図において、横軸は時間軸、縦軸は信号振幅、10は出力信号4と推定出力信号8との差信号である。本波形図は、図1におけるフィードバック系の振動検出装置のモータ制御装置への適用の場合、制御ゲインの調整の際、制御器2のゲインを高く上げてモータが負荷を駆動する際にフィードバック制御装置12が振動し、差信号10にその振動状態が表れたものである。
【0027】
一般的に、フィードバック制御系が振動的な状態になるまで制御ゲインを上げた場合、指令信号1の低中周波数領域においては、出力信号4が指令信号1にほぼ追従するため、制御対象のモデル部7の誤差(例えば、モータまたは負荷の慣性モーメントの値のずれ)がある程度存在しても、この同じ指令信号1に追従する出力信号4と推定出力信号8とは、低中周波数領域における成分がほぼ同じになる。従って、差信号10は、殆ど高周波の振動成分しか含まない。また、この差信号10をローパスフィルタ14に通し、振動成分より高周波のノイズ成分をカットしてから振動状態判断部11に入力する。ここで、ローパスフィルタ14の時定数は、このフィルタのカットオフ周波数が振動周波数より高くなるように設定する。
【0028】
このように、制御対象のモデル誤差(例えば、モータまたは負荷の慣性モーメントの値のずれ)の影響を受けないためには、ある程度制御ゲインを上げた状態で、本発明の振動検出装置を用いる必要がある。なお、モータ制御装置において、制御応答の追従性の向上等から、制御ゲインを上げた状態で用いるのが一般的である。
【0029】
次に、図1における振動状態判断部11での振動状態を判断する処理手順を図5のフローチャートを用いて説明する。ただし、以下の説明は、振動状態判断部11が一定のサンプリング周期で働くことを前提とする。
【0030】
(ステップ101)
出力振動成分信号15の振幅ピークをサーチし、ステップ102に進む。
ここで、出力振動成分信号15の振幅ピークをサーチするとは、例えば、振動状態判断部11が、サンプリング周期毎にその出力信号の振幅を監視しておき、数サンプリング周期分の出力信号の振幅値から上限ピーク値または下限ピーク値を判断して検出することである。なお、具体的なサーチ方法の説明は、図9に示したフローチャートを用いて後述する。
【0031】
(ステップ102)
上限ピークが検出された時刻において、その上限ピーク値から直前の下限ピーク値を差し引いた値をVppの値とし、また、上限ピークが検出されない時刻においてはVppの値を0とし、ステップ103に進む。ただし、ノイズを除去するため、Vppの絶対値が0でなくても、ある一定の小さい値(一般的に出力信号4の検出分解能とする)より小さければVppの値を0とする。
【0032】
図3は、図2における差信号10に基づいて、ステップ102で算出した上限ピークと下限ピークとの差信号Vpp20を示す図である。一般的に振動周期が過渡時間より遥かに短いので、上限ピークと下限ピークとの差を取ることによって、更に過渡成分を除去し、振動成分を抽出することができるのである。
【0033】
(ステップ103)
一定時間Tnの間、差信号Vpp20の2乗の移動平均値Pを計算し、ステップ104に進む。ただし、Tnは振動周期の数倍、指令信号1の周期より小さい値で与える。
【0034】
図4は、図3における差信号Vpp20に基づいて、ステップ103で算出したP信号30を示す図である。P信号30は振動の密度を表し、騒音および機械破壊のレベルに密接している。
【0035】
(ステップ104)
P信号30を予め与えられた閾値Pmより小さいかどうか比較し、もし小さければ、ステップ105に進む。もし大きければ、ステップ107に進む。
【0036】
また、閾値Pmの値は、騒音と機械を壊さないことを考慮し実験あるいはシミュレーション等によって決める。
【0037】
(ステップ105)
ステップ103で作成したP信号30に基づいて、次のように振動持続時間Tvをカウンタする。P信号30がある一定の小さい値P0(予め与えられた振動最小値)より大きくなると振動持続時間Tvをカウンタし始め、小さくなると振動持続時間Tvを0にリセットする。また、P0はノイズの影響を考慮し実験あるいはシミュレーション等によって決める。
【0038】
(ステップ106)
振動持続時間Tvを予め与えられた閾値Tvmより小さいかどうか比較し、もし小さければ、ステップ101に戻る。もし大きければ、ステップ107に進む。
【0039】
一般的に、外部刺激がなくなってから、振動持続時間Tvが長くなるほど完全発振に近づいていると言える。閾値Tvmは、制御ゲインの上げ幅および安全性を考慮して決める。制御ゲインの上げ幅が大きく、しかも絶対に完全発振してはいけない場合に、Tvmを小さく設定すべきである。
【0040】
(ステップ107)
振動と判定し、制御系を安定させる行動へ進む。すなわち、例えば、制振制御等のアルゴリズムにより制御系を安定させるのである。
【0041】
このように、フィードバック制御装置の出力信号4とフィードバック制御装置のモデル部7の推定出力信号8との差信号10に基づいて、その振幅ピークをサーチし、上限ピークと下限ピークとの差信号Vpp20を計算することで、制御対象のモデル誤差(例えば、モータまたは負荷の慣性モーメントの値のずれ)および過渡特性の影響を受けず、正確に振動成分を抽出することができる。また、上限ピークと下限ピークとの差信号Vpp20から振動の密度を表す量(P信号30)を計算して振動持続時間Tvを検出し、それらの情報に基づいて振動状態を判断することによって、完全発振に至らないうちに振動状態を判断できるので、素早く異常を察知して騒音や機械系の損傷等を防止することができる。
【0042】
図8は、出力振動成分信号15の振幅ピークをサーチする方法を説明する図である。図において、横軸は時間軸、縦軸は信号振幅、15は出力振動成分信号である。図9は、出力振動成分信号15の振幅ピークをサーチする処理手順を示すフローチャートである。以下、出力振動成分信号15の振幅ピークをサーチする方法について図9に示したフローチャートを用いて説明する。
【0043】
(ステップ301)
先ず、出力振動成分信号15のデータをサンプリングする際の区間を設定する回数値をr(r=0,1,2,3,・・・)とし、r=0を初期値設定して、ステップ302に進む。
【0044】
(ステップ302)
回数値rに基づいて2p+1データ点数A=[x1+r,x2+r,・・・,x2p+1+r]の区間を設定して、ステップ303に進む。
ここで、pは予め設定した正の整数(p=1,2,3,4,・・・)であり、pが大きくなるほどピークが正しく検出される振動成分の周波数が小さくなる。
【0045】
(ステップ303)
ステップ302において設定した区間A=[x1+r,x2+r,・・・,x2p+1+r]における出力振動成分信号15の最大値と最小値を計算して、ステップ304に進む。
【0046】
(ステップ304)
ステップ302において設定した区間の中点xp+1+rの信号振幅が上限ピーク値かどうかチェックする。中点xp+1+rの信号振幅とステップ303において計算した最大値とを比較し、中点xp+1+rの信号振幅が区間の最大値である場合は、ステップ305に進む。一方、中点xp+1+rの信号振幅が区間の最大値でない場合、ステップ306に進む。
【0047】
(ステップ305)
ステップ302において設定した区間値xp+1+r(中点)の信号振幅を上限ピーク値とし、ステップ307に進む。
【0048】
(ステップ306)
ステップ302において設定した区間の中点xp+1+rの信号振幅が下限ピーク値かどうかチェックする。中点xp+1+rの信号振幅とステップ303において計算した最小値とを比較し、中点xp+1+rの信号振幅が区間の最小値である場合は、ステップ308に進む。一方、中点xp+1+rの信号振幅が区間の最小値でない場合、ステップ310に進む。
【0049】
(ステップ307)
上限ピーク出る時間(ステップ302において設定した区間の中点xp+1+rの時間)をメモリに保存し、ステップ310に進む。
【0050】
(ステップ308)
ステップ302において設定した区間値xp+1+r(中点)の信号振幅を下限ピーク値とし、ステップ309に進む。
【0051】
(ステップ309)
下限ピーク出る時間(ステップ302において設定した区間の中点xp+1+rの時間)をメモリに保存し、ステップ310に進む。
【0052】
(ステップ310)
値rに1を足して新たなrとして更新(r=r+1)し、ステップ302に進む。
【0053】
以上のように、出力振動成分信号15の上下限ピーク値が検出されるまで、ステップ302〜ステップ310を繰り返す。
【実施例2】
【0054】
図10は、本発明の実施例2におけるフィードバック系の振動検出装置の構成を示すブロック線図である。図において、図1と同一の作用を持つ構成は同一符号を付している。
実施例2が、実施例1におけるフィードバック系の振動検出装置の構成と異なる点は、図1におけるフィードバック制御装置のモデル部13とローパスフィルタ14の構成を持たず、振動検出は、フィードバック制御装置12の出力信号4とフィードバック制御装置のモデル部13の推定出力信号8との差信号に基づいて行なわない点である。
すなわち、実施例2では、フィードバック制御装置のモデル部13がない場合でも、フィードバック制御装置12の出力信号4に基づいて振動検出を行なうことができる、新たな振動状態判断部51をその構成に備えたものである。
【0055】
ここで、このフィードバック系の振動検出装置のモータ制御装置への適用の際は、フィードバック制御装置12が位置制御系の場合、指令信号1は位置指令、制御器2は位置制御または速度制御器、出力信号4は位置検出信号であり、フィードバック制御装置12が速度制御系の場合、指令信号1は速度指令、制御器2は速度制御器、出力信号4は速度検出信号あるいは位置差分信号である。
【0056】
図11は、図10における出力信号4を示す波形図である。図において、横軸は時間軸、縦軸は信号振幅、4は出力信号である。本波形図は、図10におけるフィードバック系の振動検出装置のモータ制御装置への適用の場合、制御ゲインの調整の際、制御器2のゲインを高く上げて、モータが負荷を駆動する際にフィードバック制御装置12が振動し、出力信号4にその振動状態が表れたものである。
【0057】
次に、図10における振動状態判断部51での振動状態を判断する処理手順を図12のフローチャートを用いて説明する。ただし、以下の説明は、振動状態判断部51が一定のサンプリング周期で働くことを前提とする。
【0058】
(ステップ201)
出力信号4の振幅ピークVpをサーチしてピーク値が出る時間tpをメモリ(図示しない)等に格納し、ステップ102に進む。
ここで、出力信号4の振幅ピークVpをサーチするとは、例えば、振動状態判断部51が、サンプリング周期毎に出力信号4の振幅を監視しておき、数サンプリング周期分の出力信号4の振幅値から上限ピーク値または下限ピーク値を判断して検出することである。
また、ピーク値が出る時間tpとは、前述のサーチによる上限ピーク値または下限ピーク値が検出された時刻である。
【0059】
図13は、図11における出力信号4に基づいて、ステップ201で算出した出力信号4のピーク(Vp)(上下限ピーク含める)を示す図である。図において、t1、t2、tpはピークが出る時間を示す。
【0060】
(ステップ202)
上限ピークが検出された時刻において、その上限ピーク値から直前の下限ピーク値を差し引いた値をVppの値とし、同時に上限ピークに対応する時刻から下限ピークに対応する時刻の差Tppを計算する。上限ピークが検出されない時刻においてはVppの値を0とし、ステップ203に進む。ただし、ノイズを除去するため、Vppの絶対値が0でなくても、ある一定の小さい値(一般的に出力信号4の検出分解能とする)より小さければVppの値を0とする。
図14は、図11における出力信号4に基づいて、ステップ202で算出した上限ピークから下限ピークの差信号Vppを示す図である。一般的に振動周期が過渡時間より遥かに短いので、上限ピークと下限ピークとの差を取ることによって、更に過渡成分を除去し、振動成分を抽出することができるのである。
【0061】
(ステップ203)
ゼロではない、ステップ202で算出した上限ピークから下限ピークの差信号Vpp値を、対応する上下限ピーク間の時間間隔Tppで割って得た値を振動強度Appとして計算し、ステップ104に進む。
ここで定義した振動強度Appは、出力信号4の振動状態の波形(図11)に基づいた上限ピークから下限ピークの差信号Vpp値(図14)の単位時間当たりの振幅値を、その振動の強度として表すものである。
図15は、図14における差信号Vppに基づいて、ステップ203で算出した振動強度信号Appを示す図である。
【0062】
(ステップ204)
ステップ203で得られた振動強度信号Appを予め与えられた閾値Appmと比較し、振動強度信号Appが閾値Appmより小さい場合、ステップ205に進む。逆に大きい場合、ステップ209に進む。
ここで、予め与えられた閾値Appmは、例えば、図10におけるフィードバック系の振動検出装置のモータ制御装置への適用の場合、モータ制御装置が駆動する負荷機械等が破損しないまたは騒音が大きくない値、あるいは位置決め時に許容される位置決め精度内の値などに決定すればよい。
【0063】
(ステップ205)
振動強度信号Appの移動平均値Avを計算し、ステップ206に進む。信号の移動平均に要する一定時間Taの値は、検出すべき振動の最大周期の数倍とする。
ここで、振動強度信号Appの移動平均値Avは、騒音および機械破壊のレベルを示すものであり、高周波成分強調するものである。
図16は、図15における振動強度信号Appに基づいて、ステップ205で算出した振動移動平均強度信号Avを示す図である。
【0064】
(ステップ206)
ステップ205で得られた振動移動平均強度信号Avを予め与えられた閾値Avmと比較し、振動移動平均強度信号Avが閾値Avmより小さい場合、ステップ107に進む。逆に大きい場合、ステップ209に進む。
ここで、予め与えられた閾値Avmは、例えば、図10におけるフィードバック系の振動検出装置のモータ制御装置への適用の場合、モータ制御装置が駆動する負荷機械等が破損しないまたは騒音が大きくない値、あるいは位置決め時に許容される位置決め精度内の値などに決定すればよい。
【0065】
(ステップ207)
ステップ205で得られた振動移動平均強度信号Avに基づいて、次のように振動持続時間Tvをカウンタする。振動移動平均強度信号Avが一定の小さい値P0(予め与えられた振動最小値)より大きくなると振動持続時間Tvをカウンタし始め、小さくなると振動持続時間Tvを0にリセットする。また、P0はノイズの影響を考慮し実験あるいはシミュレーション等によって決める。ここで、振動持続時間Tvは、振動移動平均強度信号Avが連続的に0でない時間である。
図17は、図16における振動移動平均強度信号Avに基づいて、ステップ207で算出した振動持続時間Tvを示す図である。
【0066】
(ステップ208)
振動持続時間Tvを予め与えられた閾値Tvmと比較し、振動持続時間Tvが閾値Tvmより小さい場合、ステップ201に進む。逆に大きい場合、ステップ209に進む。
一般的に、外部刺激がなくなってから、振動持続時間Tvが長くなるほど完全発振に近づいていると言えるため、予め与えられた閾値Tvmは、制御ゲインの上げ幅および安全性を考慮して決め、制御ゲインの上げ幅が大きく、しかも絶対に完全発振してはいけない場合に、予め与えられた閾値Tvmを小さく設定すべきである。
【0067】
(ステップ209)
振動と判定し、制御系を安定させる行動へ進む。すなわち、例えば、制振制御等のアルゴリズムにより制御系を安定させるのである。
【0068】
このように、ステップ201ないし208の処理手順を実行する振動状態判断部51を備えたので、フィードバック制御装置のモデル部13がない場合でも、フィードバック制御装置12の出力信号4に基づいて振動検出を行なうことができるのである。また、実施例1と同様、完全発振に至らないうちに振動状態を判断できるので、素早く異常を察知して騒音や機械系の損傷等を防止することができる。
【実施例3】
【0069】
図18は、本発明の実施例3におけるフィードバック系の振動検出装置の構成を示すブロック線図である。図において、図10と同一の作用を持つ構成は同一符号を付している。
実施例3が、実施例2におけるフィードバック系の振動検出装置の構成と異なる点は、図10における振動状態判断部51を新たな振動状態判断部52に置き換えた点である。
なお、振動状態判断部52は、振動状態判断部51におけるフィードバック制御装置12の出力信号4のピーク検出処理を以下に示す処理に置き換えたものである。
【0070】
図19は、図18における出力信号4を示す波形図である。図において、横軸は時間軸、縦軸は信号振幅、4は出力信号である。40は1回のピーク検出処理でピーク検出を行なう区間、41はピーク検出を行なう全体区間で区間40のN回分の区間となっている。
【0071】
図20は、フィードバック系の振動検出装置において、ピーク検出する処理手順を示すフローチャートである。この図を用いて本発明の方法を順を追って説明する。
【0072】
ピーク検出全体区間41で行われる出力信号4の上側及び下側のピーク値の検出方法について説明する。
【0073】
(ステップ401)
先ず、出力信号4のピーク検出するピーク検出全体区間41を設定するために、i=1 に初期値設定して、ステップ402に進む。
【0074】
(ステップ402)
設定されたピーク検出全体区間41でデータサンプリングを行なう。サンプリングしたデータはX=[x(i-2p(N)), x(i-2p(N)+1), …, x(i)]に格納して、ステップ403に進む。
ここで、集合P(P=[p(1), p(2), … , p(N)])はピーク検出する際の区間を設定するため予め設定した集合であり、集合Pの各要素は正の整数である。また、p (1) <p(2)<・・・<p(N)、Nは集合Pの要素の数である。
【0075】
正確にピーク検出できる振動成分の周波数fMは、検出区間のデータ点数RM、データサンプリング周期Tsとの間に(1)式の関係がある。さらに、正確にピーク検出するために必要とするデータ点数は、振動周波数により異なり、振動周波数fM、fmの必要なデータ点数をそれぞれRM、Rmとし、fM>fmとすれば、RMとRmは(2)式の関係にあるので、出力信号4に含まれる周波数成分により、振動検出区間でのサンプリングデータ点数を決定すると効果的である。
【0076】
【数1】

【0077】
(ステップ403)
ステップ402でサンプリングしたデータを用いて、ピーク検出全体区間41でのピーク検出処理を実施し、ステップ404に進む。
なお、ピーク検出全体区間41でのピーク検出処理は、図21に示したフローチャートを用いて後述する。
【0078】
(ステップ404)
ピーク検出全体区間41を更新(i=i+1)して、ステップ402に進む。
【0079】
以上のように、ステップ402〜ステップ404を繰り返し、出力信号4の上側及び下側のピーク値を検出する。
【0080】
次に、ステップ403で実施するピーク検出全体区間41でのピーク検出処理を、図21に示したフローチャートを用いて説明する。
【0081】
(ステップ501)
ステップ501において、ピーク検出区間40を第1区間に設定するために、j=1に初期化してステップ502に進む。
【0082】
(ステップ502)
値iとjに基づいて、ステップ402で格納しておいたデータXを、L=[ x(i-p(N)−p(j)), x(i-p(N)−p(j)+1), …, x(i-p(N))] の左区間とR=[x(i-p(N)), x(i-p(N)+1), …, x(i-p(N)+p(j))]の右区間に区分し、ステップ503に進む。
なお、ピーク検出全体区間41の中心点x(i-p(N))は、左区間L、右区間Rの両方に含むように区分される。
【0083】
(ステップ503)
ステップ502において区分された左右区間の共通の要素である、ピーク検出区間40の中心点x(i-p(N))がピークかどうかの判断処理を実施し、ステップ504に進む。
なお、ここで実施されるピーク判断処理は、図22に示したフローチャートを用いて後述する。
【0084】
(ステップ504)
中心点x(i-p(N))がピークとあると判断された場合は、ステップ507に進み、ピークと判断されなければ、ステップ505に進む。
【0085】
(ステップ505)
ピーク検出処理が、ピーク検出全体区間41にわたって実施されたかを値jとNを比較して判断し、N回分実施されていれば、ステップ507に進み、そうでなければ、ステップ506に進む。
【0086】
(ステップ506)
値jを更新(j=j+1)して、ステップ502に進む。
【0087】
(ステップ507)
ピーク検出処理は終了する。
以上のように、ステップ501〜ステップ506を繰り返して出力信号4のピーク検出をピーク検出全体区間41にわたって実施する。
【0088】
次に、ステップ503で実施するピーク判断処理を、図22に示したフローチャートを用いて説明する。
【0089】
(ステップ601)
ステップ502において区分された左区間L=[x(i-p(N)−p(j)), x(i-p(N)−p(j)+1), …, x(i-p(N))]と右区間R=[x(i-p(N)), x(i-p(N)+1), …, x(i-p(N)+p(j))]におけるそれぞれの最大値と最小値を計算し、ステップ602に進む。
【0090】
(ステップ602)
ステップ601で計算した値を用いて、左区間Lの最大値と最小値の差と、閾値Hとを比較し、右区間Rの最大値と最小値の差と、同じく閾値Hとを比較し、両方の差はHより大きければ、ステップ603に進み、そうでなければステップ607に進む。
なお、閾値Hの値は出力信号4に含むノイズの最大値とし、このステップの処理により、出力信号4から大きさが閾値H未満のノイズを取り除くことができる。
【0091】
(ステップ603)
ステップ502でL,Rの左右両区間に含むようにしておいたピーク検出区間40の中心点x(i-p(N)) が、上限ピークかどうかチェックする。
まず、ステップ601で計算したL区間最大値とx(i-p(N))とを比較し、同様にR区間最大値とx(i-p(N))を比較し、L、Rの左右区間の最大値がx(i-p(N))であれば、ステップ604に進み、そうでなければステップ605に進む。
【0092】
(ステップ604)
左右区間の共通の要素x(i-p(N))を上限ピークとし、ステップ608に進む。
【0093】
(ステップ605)
ステップ502でL,Rの左右両区間に含むようにしておいたピーク検出区間40の中心点x(i-p(N)) が、下限ピークかどうかチェックする。
まず、ステップ601で計算したL区間最小値とx(i-p(N))とを比較し、同様にR区間最小値とx(i-p(N))を比較し、L、Rの左右区間の最小値がx(i-p(N))であれば、ステップ606に進み、そうでなければステップ607に進む。
【0094】
(ステップ606)
左右区間の共通の要素x(i-p(N))を下限ピークとし、ステップ608に進む。
【0095】
(ステップ607)
左右区間の共通の要素x(i-p(N))はピークではないとし、ステップ608に進む。
【0096】
(ステップ608)
ここで、ピーク判断ルーチンが終了する。
以上のようにして、ピーク検出区間40の中心点x(i-p(N))は上限ピークか下限ピークか、あるいはピークではないのかを判断する。
【0097】
このように、ピーク検出する全体区間をN区間に分け、分けた1区間内での最大値、最小値を求め、その最大値、最小値がその区間でのピークであるかを判断するという処理を、ピークが検出されるまでは検出区間を変更してN区間にわたって処理を繰り返すので、出力信号のピーク値を正しく検出できる。
また、出力信号の振動検出区間の最大値と最小値の差が閾値より大きくなければ、ピークとしないようにしているので、ノイズが重畳している信号に対しても正確に振動ピークを検出できる。
【符号の説明】
【0098】
1 指令信号
2 制御器
3 制御対象
4 出力信号
5 出力フィードバック信号
6 制御器のモデル部
7 制御対象のモデル部
8 推定出力信号
9 推定出力フィードバック信号
10 出力信号と推定出力信号との差信号
11、51、52 振動状態判断部
12 フィードバック制御装置
13 フィードバック制御装置のモデル部
14 ローパスフィルタ
15 出力振動成分信号
20 上限ピークと下限ピークの差信号(Vpp)
30 信号P
40 ピーク検出区間
41 ピーク検出全体区間
S101〜S107、S201〜S209、S301〜S310、S401〜S404、S501〜S507、S601〜S608 処理
101 速度制御
102 モータ及び負荷
103 オブザーバの全体
111 オブザーバのモータ及び負荷イナーシャ分
112 オブザーバの速度制御のゲイン
113 オブザーバの速度制御の積分
114 積分
201 速度制御器
202 電流制御器
203 モータ
204 機械
205 エンコーダ
206 微分器
207 発振検出器
208 メモリ
209 減算器

【特許請求の範囲】
【請求項1】
負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、
前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、
前記振動検出装置は、
前記制御装置の出力信号の上限ピーク値の検出時刻における上限ピーク値からその直前の下限ピーク値を差し引いた値である上下限ピーク値とそれらの発生時刻に基づいて、振動の発生を判断する振動状態判断部、を備えたことを特徴とする振動検出装置。
【請求項2】
前記振動状態判断部は、前記出力信号の上限ピーク値の検出時刻から前記出力信号の下限ピーク値の検出時刻を差し引いた上下限ピークの発生時間に基づいて、振動の発生を判断することを特徴とする請求項1に記載の振動検出装置。
【請求項3】
前記振動状態判断部は、
前記上下限ピーク値とそれらの発生時刻に基づいて算出した振動強度値と、
前記振動強度値を移動平均して算出した振動移動平均強度値と、
前記振動移動平均強度値が予め設定された振動強度最小値を超えた時間幅である振動持続時間と、
前記振動強度値、前記振動移動平均強度値及び前記振動持続時間のそれぞれに対応する予め設定された閾値との比較と、
に基づいて前記制御装置の出力信号の振動の発生を判断することを特徴とする請求項1または2に記載の振動検出装置。
【請求項4】
負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、
前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、
前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を、横軸を時間軸とした左側区間、右側区間とその両方の区間に含まれる中心点とにより定義し、
前記中心点での前記出力信号の値が、前記左側区間及び前記右側区間における前記出力信号の値より大きいときに、前記中心点を上限ピークと判断し、振動の発生を判断することを特徴とする振動検出装置。
【請求項5】
負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、
前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、
前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を、横軸を時間軸とした左側区間、右側区間とその両方の区間に含まれる中心点とにより定義し、
前記中心点での前記出力信号の値が、前記左側区間及び前記右側区間における前記出力信号の値より小さいときに、前記中心点を下限ピークと判断し、振動の発生を判断することを特徴とする振動検出装置。
【請求項6】
負荷を連結したモータを制御対象とする制御装置の振動検出装置であって、
前記制御装置は、前記制御対象をフィードバック制御して前記モータを制御する制御器を備え、
前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を、横軸を時間軸とした左側区間、右側区間とその両方の区間に含まれる中心点とにより定義し、
さらに、前記中心点での出力信号値C、前記左側区間の最大値MaxL、最小値MinL、前記右側区間の最大値MaxR、最小値MinR、前記最大値MaxLと前記最小値MinLの差ΔL、前記最大値MaxRと前記最小値MinRの差ΔRを定義し、
前記ΔL、前記ΔRとも閾値より大きく、前記最大値MaxL、MaxR及び前記出力信号値Cが等しければ、前記中心点を上限ピークと判断し、
前記最大値MaxL、MaxRのいずれか一方が、前記出力信号値Cより大きく、前記最小値MinL、MinR及び前記出力信号値Cが等しければ、前記中心点を下限ピークと判断し、
前記出力信号値Cが前記最小値MinL、MinRのいずれにも等しくなければ、ピーク検出区間には上限ピーク及び下限ピークがないと判断し、
振動の発生を判断することを特徴とする振動検出装置。
【請求項7】
前記振動検出装置は、前記制御装置の出力信号のピーク検出区間を予めN個からなる要素の集合とし、
前記集合の1つの要素であるピーク検出区間でピーク検出を実施し、
前記中心点での前記出力信号の値が、上限ピークあるいは下限ピークと判断されるまで、前記N個のピーク検出区間を順次繰り返して判断し、振動の発生を判断することを特徴とする請求項4〜6のいずれか1項に記載の振動検出装置。
【請求項8】
請求項1〜7のいずれか1項に記載の振動検出装置を備え、前記モータを駆動することを特徴とするモータ制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図11】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2013−34375(P2013−34375A)
【公開日】平成25年2月14日(2013.2.14)
【国際特許分類】
【出願番号】特願2012−212527(P2012−212527)
【出願日】平成24年9月26日(2012.9.26)
【分割の表示】特願2008−27322(P2008−27322)の分割
【原出願日】平成20年2月7日(2008.2.7)
【出願人】(000006622)株式会社安川電機 (2,482)
【Fターム(参考)】