以下、実施形態について、図面を参照しつつ詳細に説明する。説明において、同一要素又は同一機能を有する要素には同一の符号を付し、重複する説明を省略する。
〔電力変換装置〕
図1に示す電力変換装置1は、機器2に駆動電力を供給する装置である。機器2は、モータ5と、モータ5による駆動対象4とを有し、電力変換装置1はモータ5に駆動電力を供給する。機器2の具体例としては、冷却用又は換気用等のファンが挙げられる。ファンにおいては、回転羽根が駆動対象4に相当する。機器2は、モータ5と、モータ5による駆動対象4とを有する限りいかなるものであってもよく、ファンには限られない。他の機器2の具体例としては、ポンプが挙げられる。モータ5は、回転電動機である。モータ5は、誘導電動機であってもよいし、同期電動機であってもよい。
電力変換装置1は、電源3の電力(一次側電力)を駆動電力(二次側電力)に変換してモータ5に供給する。電源3の電力は、交流電力であってもよく、直流電力であってもよい。駆動電力は交流電力である。一例として、電源3の電力及び駆動電力は、いずれも三相交流電力である。例えば電力変換装置1は、電力変換回路10と、制御回路100とを有する。
電力変換回路10は、一次側電力を二次側電力に変換してモータ5に供給する。電力変換回路10は、例えば電圧形インバータであり、電圧指令に従った駆動電圧をモータ5に印加する。
例えば電力変換回路10は、コンバータ回路11と、平滑コンデンサ12と、インバータ回路13と、電流センサ14とを有する。コンバータ回路11は、例えばダイオードブリッジ回路又はPWMコンバータ回路であり、上記電源電力を直流電力に変換する。平滑コンデンサ12は、上記直流電力を平滑化する。インバータ回路13は、上記直流電力と上記駆動電力との間の電力変換を行う。例えばインバータ回路13は、複数のスイッチング素子15を有し、複数のスイッチング素子15のオン・オフを切り替えることによって上記電力変換を行う。スイッチング素子15は、例えばパワーMOSFET(Metal Oxide Semiconductor Field Effect Transistor)又はIGBT(Insulated Gate Bipolar Transistor)等であり、ゲート駆動信号に応じてオン・オフを切り替える。
電流センサ14は、インバータ回路13とモータ5との間に流れる電流を検出する。例えば電流センサ14は、三相交流の全相(U相、V相及びW相)の電流を検出するように構成されていてもよいし、三相交流のいずれか2相の電流を検出するように構成されていてもよい。零相電流が生じない限り、U相、V相、及びW相の電流の合計はゼロなので、2相の電流を検出する場合にも全相の電流の情報が得られる。
以上に示した電力変換回路10の構成はあくまで一例であり、モータ5に駆動電力を供給し得る限りにおいていかようにも変更可能である。例えば電力変換回路10は、電流形インバータであってもよい。電流形インバータは、電流指令に従った駆動電流をモータ5に出力する。電力変換回路10は、直流化を経ることなく電源電力と駆動電力との双方向の電力変換を行うマトリクスコンバータ回路であってもよい。電源電力が直流電力である場合に、電力変換回路10はコンバータ回路11を有していなくてもよい。
制御回路100は、モータ5に駆動電力を供給するように電力変換回路10を制御する。例えば制御回路100は、電圧指令に従った駆動電圧をモータ5に印加するように電力変換回路10を制御する。電圧指令は、例えば電圧指令ベクトルの大きさと位相とを含む。制御回路100は、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出することと、モータ5の回転速度推定値を出力することと、回転速度推定値に基づいて機器2の慣性トルクを算出することと、発生トルクと慣性トルクとに基づいて、モータ5の回転軸6に作用する負荷トルクを算出することと、負荷トルクに基づいて機器2に異常があるかを診断することと、を更に実行するように構成されている。
機器2の慣性トルクは、上記回転軸6を含むモータ5のロータの慣性トルクと、駆動対象4の慣性トルクとを含む。負荷トルクは、駆動対象4からモータ5に作用する反力トルクと、モータ5の回転軸6の軸受7から回転軸6に作用するメカロストルクとを含む。反力トルクの大きさは、モータ5から駆動対象4に作用する駆動トルクの大きさに等しい。メカロストルクは、潤滑剤の粘性に起因する粘性トルクを含む。
例えば制御回路100は、機能上の構成(以下、「機能ブロック」という。)として、速度制御部111と、PWM制御部112と、電流情報取得部113と、発生トルク算出部114と、速度推定部115と、速度記憶部116と、慣性トルク算出部117と、負荷トルク算出部118と、異常診断部119とを有する。
速度制御部111は、モータ5の動作速度を、目標速度に追従させるように上記電圧指令を生成する。速度制御部111は、例えば上位コントローラ200から目標速度(例えば周波数指令)を取得する。上位コントローラ200の具体例としては、プログラマブルロジックコントローラが挙げられる。速度制御部111は、予め定められた目標速度を保持していてもよい。
例えば速度制御部111は、V/f方式にて電圧指令を生成する。具体的に速度制御部111は、モータ5の回転速度(周波数)と電圧振幅との関係を定めたV/fプロファイルと、目標速度とに基づいて電圧指令ベクトルの大きさを算出し、目標速度に基づいて電圧指令ベクトルの位相を算出する。速度制御部111は、電圧指令ベクトルの算出を所定の制御周期で繰り返し実行する。
PWM制御部112は、速度制御部111により算出された電圧指令に従った駆動電圧をモータ5に印加するように電力変換回路10を制御する。例えばPWM制御部112は、電圧指令ベクトルに一致した駆動電圧をモータ5に印加するように、インバータ回路13の複数のスイッチング素子15のオン・オフを切り替える。
速度制御部111は、モータ5の起動後にモータ5の回転速度を目標速度まで上昇させ、モータ5の停止指令に応じてモータ5の回転速度をゼロまで低下させるように構成されていてもよい。例えば、速度制御部111は、ゼロから上記目標速度(以下、「定常時目標速度」という。)まで徐々に上昇する加速時目標速度にモータ5の回転速度を追従させるように電圧指令を生成する。ここで、徐々に変化させることは2以上の段階を経て階段状に変化させることを含む。また、速度制御部111は、モータ5の回転速度を定常時目標速度に維持するように電力変換回路10を制御する。例えば電流情報取得部113は、上記V/fプロファイルと定常時目標速度とに基づいて電圧指令ベクトルの大きさを算出し、定常時目標速度に基づいて電圧指令ベクトルの位相を算出する。また、速度制御部111は、モータ5の回転速度を低下させ、モータ5を停止させる。例えば速度制御部111は、定常時目標速度からゼロまで徐々に低下する減速時目標速度にモータ5の回転速度を追従させるように電圧指令を生成する。例えば速度制御部111は、上記V/fプロファイルと減速時目標速度とに基づいて電圧指令ベクトルの大きさを算出し、減速時目標速度に基づいて電圧指令ベクトルの位相を算出する。
なお、電圧指令の生成方式はV/f方式に限られない。例えば速度制御部111は、加速時目標速度、定常時目標速度又は減速時目標速度とモータ5の回転速度との偏差を算出し、当該偏差を縮小するように電圧指令を生成してもよい。一例として、速度制御部111は、上記偏差に比例演算、比例・積分演算、又は比例・積分・微分演算等を施して電流指令を生成し、上記駆動電流を電流指令に追従させるように電圧指令を生成してもよい。
電流情報取得部113は、電流センサ14から電流情報を取得する。例えば電流情報取得部113は、電流センサ14から取得した電流情報に対し、3相2相変換と、座標変換とを施して、回転座標系における電流ベクトルを算出する。一例として、電流情報取得部113は、モータ5の誘起電圧ベクトルに平行な座標軸(δ軸)方向の電流成分であるδ軸電流と、δ軸に垂直な座標軸(γ軸)方向の電流成分であるγ軸電流とを算出する。なお、上述したV/f方式において、誘起電圧ベクトルは電圧指令ベクトルと等しくてもよい。電圧指令の生成に上記誘起電圧オブザーバが用いられる場合、誘起電圧ベクトルは誘起電圧オブザーバにより算出される。
座標変換には、固定座標系に対する回転座標系の位相が必要となる。例えば電流情報取得部113は、回転座標系の位相として、速度制御部111が算出した電圧指令ベクトルの位相を用いる。電流情報取得部113は、電流情報の取得と、δ軸電流及びγ軸電流の算出とを、上記制御周期で繰り返し実行する。
発生トルク算出部114は、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出する。例えば発生トルク算出部114は、電流情報取得部113が算出したδ軸電流にモータ5のトルク定数を乗算することによって発生トルクを算出する(次式参照)。
T1=Kt・Iδ・・・(1)
T1:発生トルク
Kt:トルク定数
Iδ:δ軸電流
発生トルク算出部114は、発生トルクの算出を上記制御周期で繰り返し実行する。
速度推定部115は、モータ5の回転速度推定値を出力する。例えば速度推定部115は、電力変換回路10がモータ5に印加する駆動電圧と、モータ5の特性を表す少なくとも一つのパラメータと、上記駆動電流とに基づいてモータ5の回転速度推定値を算出する。速度推定部115は、上記駆動電圧を示す情報として、上記電圧指令を用いてもよい。一例として、電圧指令の生成方式が上記V/f方式である場合、速度推定部115は次式によりモータ5の回転速度推定値を算出する。
ωm=2・(Vδ−R・Iδ−ω・Lγ・Iγ)/Ke/P・・・(2)
ωm:回転速度推定値
Vδ:電圧指令ベクトルのδ軸成分
R:モータ5の巻き線抵抗
ω:目標速度
Lγ:γ軸電流に対するモータ5のインダクタンス
Ke:モータ5の逆起電力定数
P:モータ5の極数
電圧指令の生成に誘起電圧オブザーバが用いられる場合、速度推定部115は、誘起電圧オブザーバが算出する誘起電圧ベクトルに基づいてモータ5の回転速度推定値を算出してもよい。速度推定部115は、回転速度推定値の算出を上記制御周期で繰り返し実行する。速度記憶部116は、速度推定部115が算出した回転速度推定値を時系列で記憶する。
慣性トルク算出部117は、回転速度推定値に基づいて機器2の慣性トルクを算出する。例えば慣性トルク算出部117は、速度記憶部116が記憶する最新の回転速度推定値の時間変化に基づいて機器2の慣性トルクを算出する。一例として、慣性トルク算出部117は、次式により慣性トルクを算出する。
T2=(ωm[n]−ωm[n−1])・(Jm+Jb)/Δt・・・(3)
T2:慣性トルク
ωm[n]:速度記憶部116が記憶する最新の回転速度推定値
ωm[n−1]:速度記憶部116が記憶する1制御周期前の回転速度推定値
Jm:モータ5のロータの慣性モーメント
Jb:駆動対象4の慣性モーメント
Δt:サンプリング時間
慣性トルク算出部117は、慣性トルクの算出を上記制御周期で繰り返し実行する。
負荷トルク算出部118は、上記発生トルクと上記慣性トルクとに基づいて、モータ5の回転軸6に作用する負荷トルクを算出する。例えば負荷トルク算出部118は、次式により負荷トルクを算出する。
T3=T1−T2・・・(4)
T3:負荷トルク
負荷トルク算出部118は、負荷トルクの算出を上記制御周期で繰り返し実行する。
異常診断部119は、負荷トルクに基づいて機器2に異常があるかを診断し、診断結果を出力する。例えば異常診断部119は、診断結果を表示デバイス(例えば後述の表示デバイス300)に表示させてユーザに報知する。異常診断部119は、診断結果を上位コントローラ200に出力してもよい。負荷トルクに基づいて機器2に異常があるかを診断することは、負荷トルクに直接的に基づいて機器2の異常を診断することと、負荷トルクに間接的に基づいて機器2に異常があるかを検知することとを含む。
負荷トルクに直接的に基づいて機器2の異常を検知する場合、異常診断部119は、例えば負荷トルクが所定のトルクレベル(以下、「負荷トルク上限レベル」という。)を超えた場合に機器2に異常があると診断する。負荷トルク上限レベルは、実機試験又はシミュレーション等に基づいて予め設定される。制御回路100は、機器2に異常が生じていない場合に算出した複数の負荷トルクに対し統計処理を施すことで負荷トルク上限レベルを自動設定するように構成されていてもよい。例えば負荷トルク上限レベルは、複数の負荷トルクの標準偏差に所定倍率(例えば3倍)を乗算した値を、複数の負荷トルクの平均値に加算することで算出可能である。
負荷トルクに間接的に基づいて機器2に異常があるかを診断する場合、異常診断部119は、駆動対象4の駆動トルクを負荷トルクから減算したトルク偏差に基づいて機器2に異常があるかを診断してもよい。なお、駆動トルクが上記メカロストルクを含まない場合、トルク偏差はメカロストルクに相当する。
例えば制御回路100は、図2に示すように、トルク記憶部131と、駆動トルク算出部132と、トルク偏差算出部133とを更に有する。トルク記憶部131は、モータ5の回転速度と、駆動対象4の駆動トルクとの関係を表す駆動トルクプロファイルを記憶する。トルク記憶部131は、モータ5の回転速度と駆動対象4の駆動トルクとをそれぞれが含む複数の駆動トルクデータセットを駆動トルクプロファイルとして記憶してもよい。トルク記憶部131は、モータ5の回転速度と駆動対象4の駆動トルクとの関係を表す関数(以下、「駆動トルク関数」という。)を駆動トルクプロファイルとして記憶してもよい。駆動トルク関数の具体例としては、上記複数の駆動トルクデータセットに基づく近似関数等が挙げられる。
駆動トルク算出部132は、回転速度推定値と駆動トルクプロファイルとに基づいて駆動対象4の駆動トルクを算出する。例えば駆動トルクプロファイルが複数の駆動トルクデータセットである場合、駆動トルク算出部132は、複数の駆動トルクデータセットの補間(例えば線形補間)によって、回転速度推定値に対応する駆動トルクを算出する。駆動トルクプロファイルが上記駆動トルク関数である場合、駆動トルク算出部132は、駆動トルク関数に回転速度推定値を代入することによって、回転速度推定値に対応する駆動トルクを算出する。駆動トルク算出部132は、駆動トルクの算出を上記制御周期で繰り返し実行する。
トルク偏差算出部133は、負荷トルクと駆動トルクとに基づいて、上記トルク偏差を算出する。例えばトルク偏差算出部133は、次式によりトルク偏差を算出する。
Td=T3−Tb・・・(5)
Td:トルク偏差
Tb:駆動トルク
トルク偏差算出部133は、トルク偏差の算出を上記制御周期で繰り返し実行する。
異常診断部119は、トルク偏差が所定のトルクレベル(以下、「トルク偏差上限レベル」という。)を超えた場合に機器2に異常があると診断する。トルク偏差上限レベルは、実機試験又はシミュレーション等に基づいて予め設定される。制御回路100は、機器2に異常が生じていない場合に算出した複数のトルク偏差に対し統計処理を施すことでトルク偏差上限レベルを自動設定するように構成されていてもよい。例えばトルク偏差上限レベルは、複数のトルク偏差の標準偏差に所定倍率(例えば3倍)を乗算した値を、複数のトルク偏差の平均値に加算することで算出可能である。
異常診断部119は、トルク偏差にフィルタ処理を施した値に基づいて機器2に異常があるかを診断してもよい。例えば制御回路100は、第1フィルタ処理部134を更に有する。第1フィルタ処理部134は、トルク偏差にローパス型の第1フィルタ処理を施す。第1フィルタ処理のカットオフ周波数は、例えば1Hz以下である。
異常診断部119は、第1フィルタ処理が施されたトルク偏差(以下、「第1フィルタ後トルク」という。)に基づいて機器2に異常があるかを診断する。例えば異常診断部119は、第1フィルタ後トルクが所定のトルクレベル(以下、「第1トルク上限レベル」という。)を超えた場合に機器2に異常があると診断する。第1トルク上限レベルは、実機試験又はシミュレーション等に基づいて予め設定される。
制御回路100は、機器2に異常が生じていない場合に算出した複数の第1フィルタ後トルクに対し統計処理を施すことで第1トルク上限レベルを自動設定するように構成されていてもよい。例えば第1トルク上限レベルは、複数の第1フィルタ後トルクの標準偏差に所定倍率(例えば3倍)を乗算した値を、複数の第1フィルタ後トルクの平均値に加算することで算出可能である。
制御回路100は、第2フィルタ処理部135を更に有する。第2フィルタ処理部135は、トルク偏差にバンドパス型の第2フィルタ処理を施す。第2フィルタ処理部135は、第2フィルタ処理の下側のカットオフ周波数及び上側のカットオフ周波数をモータ5の回転速度に応じて変化させてもよい。
異常診断部119は、第2フィルタ処理が施されたトルク偏差(以下、「第2フィルタ後トルク」という。)に更に基づいて機器2に異常があるかを診断する。例えば異常診断部119は、第1フィルタ後トルクが上記第1トルク上限レベルを超えた場合に機器2に異常があると診断し、第2フィルタ後トルクが所定のトルクレベル(以下、「第2トルク上限レベル」という。)を超えた場合にも機器2に異常があると診断する。
第2トルク上限レベルは、実機試験又はシミュレーション等に基づいて予め設定される。制御回路100は、機器2に異常が生じていない場合に算出した複数の第2フィルタ後トルクに対し統計処理を施すことで第2トルク上限レベルを自動設定するように構成されていてもよい。例えば第2トルク上限レベルは、複数の第2フィルタ後トルクの標準偏差に所定倍率(例えば3倍)を乗算した値を、複数の第2フィルタ後トルクの平均値に加算することで算出可能である。
異常診断部119は、電力変換回路10とモータ5との間に生じる無効電力に更に基づいて機器2に異常があるかを診断してもよい。例えば制御回路100は、無効電力算出部141を更に有する。無効電力算出部141は、駆動電流と電力変換回路10がモータ5に印加する駆動電圧とに基づいて、上記無効電力を算出する。例えば無効電力算出部141は、駆動電流と電圧指令とに基づいて上記無効電力を算出する。一例として、無効電力算出部141は、次式により上記無効電力を算出する。
Q=Vδ・iγ−Vγ・iδ・・・(6)
Vγ:電圧指令ベクトルのγ軸成分
異常診断部119は、無効電力算出部141が算出した無効電力に更に基づいて機器2に異常があるかを診断する。例えば異常診断部119は、トルク偏差が上記トルク偏差上限レベルを超えた場合に機器2に異常があると診断し、無効電力が所定の電力レベル(以下、「無効電力上限レベル」という。)を超えた場合にも機器2に異常があると診断し、トルク偏差がトルク偏差上限レベル未満であり且つ無効電力が無効電力上限レベル未満である場合には機器2に異常がないと診断する。
無効電力上限レベルは、実機試験又はシミュレーション等に基づいて予め設定される。制御回路100は、機器2に異常が生じていない場合に算出した複数の無効電力に対し統計処理を施すことで無効電力上限レベルを自動設定するように構成されていてもよい。例えば無効電力上限レベルは、複数の無効電力の標準偏差に所定倍率(例えば3倍)を乗算した値を、複数の無効電力の平均値に加算することで算出可能である。
異常診断部119は、トルク偏差がトルク偏差上限レベルを超え、且つ無効電力が無効電力上限レベルを超えた場合に機器2に異常があると診断し、トルク偏差がトルク偏差上限レベル未満である場合には機器2に異常はないと診断し、無効電力が無効電力上限レベル未満である場合にも機器2に異常はないと診断してもよい。
異常診断部119は、トルク偏差には基づかずに、無効電力に基づいて機器2に異常があるかを診断してもよい。例えば異常診断部119は、無効電力が無効電力上限レベルを超えた場合に機器2に異常があると診断し、無効電力が無効電力上限レベル未満である場合には機器2に異常はないと診断してもよい。
ここで、負荷トルクが増加した場合の無効電力は次式により表される。
Q=Vδ・(iγ+Δiγ)−Vγ・(iδ+Δiδ)・・・(7)
Δiγ:負荷トルクの増加に伴うγ軸電流の変化
Δiδ:負荷トルクの増加に伴うδ軸電流の変化
γ軸電流に対するインダクタンスLγと、δ軸電流に対するインダクタンスLδとが等しい場合、式(7)は、電圧電流方程式に基づいて次のように変形される。
Q=ω・L(iγ2+iδ2)
+ω・Ke・iγ・cosΔθ−ω・Ke・iδ・sinΔθ
+R・iδ・Δiγ−R・iγ・Δiδ
+ω・L・iγ・Δiγ+ω・L・iδ・Δiδ
+ω・Ke・Δiγ・cosΔθ−ω・Ke・Δiδ・sinΔθ・・・(8)
L=Lγ=Lδ・・・(9)
Δθ:γ軸と、モータ5の磁極方向とのなす角
式(8)において、Δiγ、Δiδを含む方向は全て正の値となる。このため、無効電力は、負荷トルクの増加に伴って増加するといえる。このため、無効電力に基づけば、負荷トルクの増加を高い感度で検知することが可能となる。
異常診断部119は、発生トルクに基づいて機器2の異常を検知する第1診断処理と、少なくともトルク偏差又は無効電力に基づいて機器2の異常を検知する第2診断処理とを選択的に実行してもよい。例えば異常診断部119は、より細分化された機能ブロックとして、第1診断部151と、第2診断部152とを有する。
第1診断部151は、速度制御部111がモータ5の目標速度を上昇させている期間において、発生トルクに基づいて機器2に異常があるかを診断する。第2診断部152は、速度制御部111がモータ5の回転速度を定常時目標速度に維持している期間において、上述のように少なくともトルク偏差又は無効電力に基づいて機器2に異常があるかを診断する。
第1診断部151は、加速期間における発生トルクのピーク値に基づいて機器2に異常があるかを診断してもよい。また、第1診断部151は、上記ピーク値の変化(経時変化)に基づいて機器2に異常があるかを診断してもよい。更に、第1診断部151は、上記ピーク値の変化の積算値に基づいて機器2に異常があるかを診断してもよい。
例えば制御回路100は、ピーク検出部161と、ピーク値記憶部162と、ピーク変化積算部163とを更に有する。ピーク検出部161は、加速期間における発生トルクのピーク値を検出する。例えばピーク検出部161は、モータ5の起動後における発生トルクの上昇が減少に転じた際に、減少直前の発生トルクを上記ピーク値として検出する。ピーク検出部161は、モータ5の起動後、所定のピーク予測時間が経過した時点の発生トルクを上記ピーク値として検出してもよい。ピーク予測時間は、実機試験又はシミュレーション等に基づいて予め設定されている。
ピーク値記憶部162は、モータ5の目標速度が上昇する度に、ピーク検出部161が算出したピーク値を記憶することで、複数のピーク値を時系列で記憶する。ピーク変化積算部163は、ピーク値記憶部162が記憶する最新のピーク値の変化の積算値(以下、「ピーク変化積算値」という。)を算出する。例えばピーク変化積算部163は、ピーク値記憶部162が記憶する最新のピーク値と、当該ピーク値の1つ前のピーク値との差分を積算することでピーク変化積算値を算出する。
第1診断部151は、ピーク変化積算値が所定の変化レベル(以下、「変化上限レベル」という。)を超えた場合に機器2に異常があると診断する。変化上限レベルは、実機試験又はシミュレーション等に基づいて予め設定される。
第1診断部151は、速度制御部111がモータ5の目標速度を下降させている減速期間においても、発生トルクに基づいて機器2に異常があるかを診断してもよい。この場合第1診断部151は、減速期間における負の発生トルクのピーク値(以下、「負のピーク値」という。)に基づいて機器2に異常があるかを診断してもよい。また、第1診断部151は、負のピーク値の変化に基づいて機器2に異常があるかを診断してもよい。更に、第1診断部151は、負のピーク値の変化の積算値に基づいて機器2に異常があるかを診断してもよい。この場合、ピーク検出部161は、減速期間に負のピーク値を更に検出する。ピーク値記憶部162は、モータ5の目標速度が下降する度に、ピーク検出部161が算出した負のピーク値を記憶することで、複数の負のピーク値を時系列で記憶する。ピーク変化積算部163は、ピーク値記憶部162が記憶する最新の負のピーク値の変化の積算値(以下、「負のピーク変化積算値」という。)を算出する。例えば負のピーク変化積算部163は、ピーク値記憶部162が記憶する最新の負のピーク値と、当該ピーク値の1つ前の負のピーク値との差分を積算することで負のピーク変化積算値を算出する。第1診断部151は、負のピーク変化積算値が所定の変化レベルを超えた場合に機器2に異常があると診断する。
なお、以上に例示した各機能ブロックは制御回路100の構成要素であるから、各機能ブロックが上述した処理内容を実行することは、制御回路100が上述した処理内容を実行することに相当する。
図3は、制御回路100のハードウェア構成を例示するブロック図である。図3に示すように、制御回路100は、一つ又は複数のプロセッサ191と、メモリ192と、ストレージ193と、通信ポート194と、入出力ポート195と、スイッチング制御回路196とを含む。ストレージ193は、例えば不揮発性の半導体メモリ等、コンピュータによって読み取り可能な記憶媒体を有する。ストレージ193は、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出することと、モータ5の回転速度推定値を出力することと、回転速度推定値に基づいて機器2の慣性トルクを算出することと、発生トルクと慣性トルクとに基づいて、モータ5の回転軸6に作用する負荷トルクを算出することと、負荷トルクに基づいて機器2に異常があるかを診断することと、を電力変換装置1に実行させるプログラムを記憶している。
メモリ192は、ストレージ193の記憶媒体からロードしたプログラム及びプロセッサ191による演算結果を一時的に記憶する。プロセッサ191は、メモリ192と協働して上記プログラムを実行することで、制御回路100の各機能ブロックを構成する。通信ポート194は、プロセッサ191からの指令に従って、上位コントローラ200との間で情報通信を行う。入出力ポート195は、プロセッサ191からの指令に従って、電流センサ14、表示デバイス300及び入力デバイス400との間で電気信号の入出力を行う。スイッチング制御回路196は、プロセッサ191からの指令に従って、電力変換回路10に、スイッチング素子15のオン・オフを切り替えるための駆動信号を出力する。
表示デバイス300及び入力デバイス400は、電力変換装置1のユーザインタフェースとして機能する。表示デバイス300は、例えば液晶モニタ等を含み、ユーザに対する情報表示に用いられる。入力デバイス400は、例えばキーパッド等であり、ユーザによる入力情報を取得する。表示デバイス300及び入力デバイス400は、所謂タッチパネルのように一体化されていてもよい。表示デバイス300及び入力デバイス400は、電力変換装置1に接続される外部機器に設けられていてもよいし、電力変換装置1に組み込まれていてもよい。
なお、制御回路100は、必ずしもプログラムにより各機能を構成するものに限られない。例えば制御回路100は、専用の論理回路又はこれを集積したASIC(Application Specific Integrated Circuit)により少なくとも一部の機能を構成してもよい。
〔電力変換手順〕
続いて、電力変換方法の一例として、制御回路100が実行する電力変換回路10の制御手順と、制御回路100が実行する機器2の異常診断手順(診断方法)とを例示する。
(制御手順)
図4に示すように、制御回路100は、ステップS01,S02,S03を実行する。ステップS01では、速度制御部111が、モータ5の起動後に、モータ5の回転速度を目標速度まで上昇させる。ステップS02では、速度制御部111が、モータ5の回転速度を定常時目標速度に維持するように電力変換回路10を制御する。ステップS03では、速度制御部111が、モータ5の回転速度を低下させ、モータ5を停止させる。以下、各手順を詳細に例示する。
図5は、ステップS01におけるモータ5の加速手順を例示するフローチャートである。この加速手順において、制御回路100は、モータ5の目標速度を上記定常時目標速度まで段階的に上昇させる。以下においては、1段階分の速度の上昇量を「1ピッチ」という。1ピッチの値は、制御周期と加速時間の設定値とに基づいて定まる。
図5に示すように、制御回路100は、まずステップS11,S12,S13,S14を実行する。ステップS11では、速度制御部111が、目標速度をゼロに設定する。ステップS12では、速度制御部111が、目標速度に1ピッチを加算する。ステップS13では、速度制御部111が、モータ5の回転速度を目標速度に追従させるように電圧指令を生成する。ステップS14では、PWM制御部112が、速度制御部111により算出された電圧指令に従った駆動電圧をモータ5に印加するように、複数のスイッチング素子15のオン・オフ切り替えを開始する。ステップS15では、目標速度が定常時目標速度であるかを速度制御部111が確認する。
ステップS15において目標速度が定常時目標速度でないと判定した場合、制御回路100は、ステップS16を実行する。ステップS16では、速度制御部111が制御周期の経過を待機する。その後、制御回路100は処理をステップS12に戻す。以後、目標速度が定常時目標速度となるまで、目標速度への1ピッチの加算と、モータ5の回転速度を目標速度に追従させるように電力変換回路10を制御することとが繰り返される。ステップS15において目標速度が定常時目標速度であると判定した場合、ステップS01の加速手順が完了する。
図6は、ステップS02におけるモータ5の定常速度制御手順を例示するフローチャートである。図6に示すように、制御回路100は、まずステップS21,S22,S23を実行する。ステップS21では、速度制御部111が、モータ5の回転速度を定常時目標速度に追従させるように電圧指令を生成する。ステップS22では、PWM制御部112が、速度制御部111により算出された電圧指令に従った駆動電圧をモータ5に印加するように、複数のスイッチング素子15のオン・オフ切り替えを開始する。ステップS23では、停止指令が入力されたかを速度制御部111が確認する。停止指令は、例えば入力デバイス400に入力される。ステップS23において停止指令が入力されていないと判定した場合、制御回路100はステップS24を実行する。ステップS24では、速度制御部111が制御周期の経過を待機する。その後、制御回路100は処理をステップS21に戻す。以後、停止指令が入力されるまで、モータ5の回転速度を定常時目標速度に追従させるように電力変換回路10を制御することが繰り返される。ステップS24において停止指令が入力されたと判定した場合、ステップS02の定常速度制御手順が完了する。
図7は、ステップS03におけるモータ5の減速手順を例示するフローチャートである。この減速手順において、制御回路100は、モータ5の目標速度をゼロまで段階的に低下させる。以下においては、1段階分の速度の下降量を「1ピッチ」という。1ピッチの値は、制御周期と減速時間の設定値とに基づいて定まる。
図7に示すように、制御回路100は、まずステップS31,S32,S33,S34を実行する。ステップS31では、速度制御部111が、現在の目標速度から1ピッチを減算して次の目標速度を算出する。ステップS32では、速度制御部111が、モータ5の回転速度を目標速度に追従させるように電圧指令を生成する。ステップS33では、PWM制御部112が、速度制御部111により算出された電圧指令に従った駆動電圧をモータ5に印加するように、複数のスイッチング素子15のオン・オフ切り替えを開始する。ステップS34では、目標速度がゼロであるかを速度制御部111が確認する。
ステップS34において目標速度がゼロでないと判定した場合、制御回路100はステップS35を実行する。ステップS35では、速度制御部111が制御周期の経過を待機する。その後、制御回路100は処理をステップS31に戻す。以後、目標速度がゼロとなるまで、目標速度からの1ピッチの減算と、モータ5の回転速度を目標速度に追従させるように電力変換回路10を制御することとが繰り返される。ステップS34において目標速度がゼロであると判定した場合、ステップS03の減速手順が完了する。
(異常診断手順)
異常診断手順は、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出することと、モータ5の回転速度推定値を出力することと、回転速度推定値に基づいて機器2の慣性トルクを算出することと、発生トルクと慣性トルクとに基づいて、モータ5の回転軸6に作用する負荷トルクを算出することと、負荷トルクに基づいて機器2の異常を検知することと、を含む。
図8に示すように、制御回路100は、発生トルクに基づく上記第1診断処理(ステップS41)と、少なくともトルク偏差又は無効電力に基づく上記第2診断処理(ステップS42)とを順に実行する。以下、各診断処理の手順を例示する。
図9は、第1診断処理手順を例示するフローチャートである。図9に示すように、制御回路100は、まずステップS51,S52,S53,S54を実行する。ステップS51では、第1診断部151がモータ5の起動を待機する。例えば第1診断部151は、速度制御部111がモータ5の加速を開始するのを待機する。ステップS52では、電流情報取得部113が、電流センサ14から電流情報を取得する。ステップS53では、発生トルク算出部114が、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出する。ステップS54では、モータ5の起動後における発生トルクの上昇が減少に転じたかをピーク検出部161が確認する。例えばピーク検出部161は、ステップS53において算出された発生トルクが前回算出された発生トルクよりも低いか否かを確認する。
ステップS54において発生トルクの上昇が減少に転じていないと判定した場合、制御回路100はステップS55,S56を実行する。ステップS55では、ピーク検出部161が、ステップS52において算出された発生トルクをピーク値として保持する。ステップS56では、電流情報取得部113が、制御周期の経過を待機する。その後、制御回路100は処理をステップS52に戻す。以後、ステップS54において発生トルクの上昇が減少に転じるまでは、発生トルクを算出し、算出結果をピーク値として保持することが繰り返される。
ステップS54において発生トルクの上昇が減少に転じたと判定した場合、制御回路100はステップS61,S62,S63を実行する。ステップS61では、ピーク検出部161がピーク値をピーク値記憶部162に記憶させる。ステップS62では、ピーク値記憶部162が記憶する最新のピーク値の変化の積算値(上記ピーク変化積算値)をピーク変化積算部163が算出する。ステップS63では、ピーク変化積算値が上記変化上限レベルを超えたか否かを第1診断部151が確認する。
ステップS63においてピーク変化積算値が変化上限レベルを超えたと判定した場合、制御回路100はステップS64を実行する。ステップS64では、第1診断部151が、機器2に異常があると診断し、診断結果を表示デバイス300又は上位コントローラ200等に出力する。以上で、制御回路100は第1診断処理を完了する。ステップS63においてピーク変化積算値が変化上限レベルを超えていないと判定した場合、制御回路100はステップS64を実行することなく第1診断処理を完了する。
図10は、第2診断処理手順を例示するフローチャートである。図10に示すように、制御回路100は、まずステップS71,S72,S73,S74,S75,S76,S77,S78,S79,S81,S82,S83を実行する。ステップS71では、速度制御部111が電力変換回路10の制御を開始するのを第2診断部152が待機する。ステップS72では、電流情報取得部113が、電流センサ14から電流情報を取得する。ステップS73では、発生トルク算出部114が、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出する。
ステップS74では、速度推定部115が、モータ5の回転速度推定値を出力する。例えば速度推定部115は、上記電圧指令と、上記駆動電流とに基づいてモータ5の回転速度推定値を算出し、速度記憶部116に保存する。ステップS75では、慣性トルク算出部117が、回転速度推定値に基づいて機器2の慣性トルクを算出する。例えば慣性トルク算出部117は、速度記憶部116が記憶する最新の回転速度推定値の時間変化に基づいて機器2の慣性トルクを算出する。
ステップS76では、負荷トルク算出部118が、上記発生トルクと上記慣性トルクとに基づいて、モータ5の回転軸6に作用する負荷トルクを算出する。ステップS77では、駆動トルク算出部132が、ステップS74で算出された回転速度推定値と上記駆動トルクプロファイルとに基づいて駆動対象4の駆動トルクを算出する。ステップS78では、トルク偏差算出部133が、負荷トルクと駆動トルクとに基づいて、トルク偏差を算出する。
ステップS79では、第1フィルタ処理部134が、トルク偏差にローパス型の第1フィルタ処理を施す。以下、トルク偏差に第1フィルタ処理を施した結果を「第1フィルタ値」という。また、ステップS79では、第2フィルタ処理部135が、トルク偏差にバンドパス型の第2フィルタ処理を施す。以下、トルク偏差に第2フィルタ処理を施した結果を「第2フィルタ値」という。
ステップS81では、駆動電流と電力変換回路10がモータ5に印加する駆動電圧とに基づいて、無効電力算出部141が無効電力を算出する。例えば無効電力算出部141は、駆動電流と電圧指令とに基づいて無効電力を算出する。ステップS82では、第2診断部152が、第1フィルタ値、第2フィルタ値及び無効電力に基づいて、機器2に異常があるかを診断する。ステップS82の具体的な処理内容については後述する。ステップS83では、速度制御部111による電力変換回路10の制御が開始されたかを第2診断部152が確認する。
ステップS83において速度制御部111による電力変換回路10の制御が開始されていないと判定した場合、制御回路100はステップS84を実行する。ステップS84では、電流情報取得部113が制御周期の経過を待機する。その後、制御回路100は処理をステップS72に戻す。以後、速度制御部111による電力変換回路10の制御が開始されるまでは、第1フィルタ値、第2フィルタ値及び無効電力に基づいて機器2に異常があるかを診断することが繰り返される。ステップS83において速度制御部111による電力変換回路10の制御が開始されたと判定した場合、制御回路100は第2診断処理を完了する。
なお、ステップS71〜S84の実行順序は適宜変更可能である。例えば、ステップS74における回転速度推定値の出力と、ステップS75における慣性トルクの算出とを、ステップS73における発生トルクの算出よりも前に実行してもよいし、発生トルクの算出と並行して実行してもよい。また、ステップS77における駆動トルクの算出を、ステップS76における負荷トルクの算出よりも前に実行してもよいし、ステップS75における慣性トルクの算出よりも前に実行してもよい。また、駆動トルクの算出を、少なくとも負荷トルクの算出又は慣性トルクの算出と並行して実行してもよい。更に、ステップS81における無効電力の算出は、ステップS72における電流情報の取得と、ステップS82における診断処理との間であればいずれのタイミングで実行してもよい。
図11は、ステップS82における診断手順を例示するフローチャートである。図11に示すように、制御回路100は、まずステップS91を実行する。ステップS91では、第1フィルタ値が上記第1トルク上限レベルを超えているかを第2診断部152が確認する。
ステップS91において第1フィルタ値が第1トルク上限レベルを超えていないと判定した場合、制御回路100はステップS92を実行する。ステップS92では、第2フィルタ値が上記第2トルク上限レベルを超えているかを第2診断部152が確認する。ステップS92において第2フィルタ値が第2トルク上限レベルを超えていないと判定した場合、制御回路100はステップS93を実行する。ステップS93では、無効電力が上記無効電力上限レベルを超えているかを第2診断部152が確認する。
ステップS91において第1フィルタ値が第1トルク上限レベルを超えていると判定した場合、ステップS92において第2フィルタ値が第2トルク上限レベルを超えていると判定した場合、及びステップS93において無効電力が無効電力上限レベルを超えていると判定した場合、制御回路100はステップS94を実行する。ステップS94では、第2診断部152が、機器2に異常があると診断し、診断結果を表示デバイス300又は上位コントローラ200等に出力する。以上で、制御回路100は診断処理を完了する。ステップS93において無効電力が無効電力上限レベルを超えていないと判定した場合、制御回路100はステップS94を実行することなく診断処理を完了する。
なお、以上においては、第1フィルタ値、第2フィルタ値、無効電力の順で確認を行う例を示したが、確認順序はこれに限られない。また、第2診断部152は、少なくとも第1フィルタ値が第1トルク上限レベルを超え又は第2フィルタ値が第2トルク上限レベルを超え、且つ無効電力が無効電力上限レベルを超えた場合に機器2に異常があると診断してもよい。
この場合、例えば図12に示すように、制御回路100は、まずステップS101を実行する。ステップS101では、第1フィルタ値が上記第1トルク上限レベルを超えているかを第2診断部152が確認する。ステップS101において第1フィルタ値が第1トルク上限レベルを超えていないと判定した場合、制御回路100はステップS102を実行する。ステップS102では、第2フィルタ値が上記第2トルク上限レベルを超えているかを第2診断部152が確認する。
ステップS101において第1フィルタ値が第1トルク上限レベルを超えていると判定した場合及びステップS102第2フィルタ値が第2トルク上限レベルを超えていると判定した場合、制御回路100はステップS103を実行する。ステップS103では、無効電力が上記無効電力上限レベルを超えているかを第2診断部152が確認する。
ステップS103において無効電力が無効電力上限レベルを超えていると判定した場合、制御回路100はステップS104を実行する。ステップS104では、第2診断部152が、機器2に異常があると診断し、診断結果を表示デバイス300又は上位コントローラ200等に出力する。以上で、制御回路100は診断処理を完了する。ステップS102において第2フィルタ値が第2トルク上限レベルを超えていないと判定した場合及びステップS103において無効電力が無効電力上限レベルを超えていないと判定した場合、制御回路100はステップS94を実行することなく診断処理を完了する。
なお、以上においても、第1フィルタ値、第2フィルタ値、無効電力の順で確認を行う例を示したが、確認順序はこれに限られない。
〔本実施形態の効果〕
以上に説明したように、電力変換装置1は、モータ5と、モータ5による駆動対象4とを有する機器2のモータ5に対し、駆動電力を供給する電力変換回路10と、電力変換回路10とモータ5との間に流れる駆動電流に基づいてモータ5の発生トルクを算出する発生トルク算出部114と、モータ5の回転速度推定値を出力する速度推定部115と、回転速度推定値に基づいて機器2の慣性トルクを算出する慣性トルク算出部117と、発生トルクと慣性トルクとに基づいて、モータ5の回転軸6に作用する負荷トルクを算出する負荷トルク算出部118と、負荷トルクに基づいて機器2に異常があるかを診断する異常診断部119と、を備える。
電力変換装置1によれば、駆動電流に基づいて、発生トルクが算出され、モータ5の回転速度推定値に基づいて慣性トルクが算出され、発生トルクと慣性トルクとに基づいて負荷トルクが算出される。これにより、負荷センサを用いることなく負荷トルクが適切に算出される。負荷トルクが算出されると、算出結果に基づいて機器の異常が検知される。機器2の異常は、負荷トルクの値に現れ易いので、適切に算出された負荷トルクに基づくことによって、機器2の異常を適切に検知できる。このように、負荷センサを用いることなく、駆動電流と回転速度推定値とに基づいて機器2の異常が適切に検知されるので、本電力変換装置1は、異常診断性能の向上と、システム構成の簡素化との両立に有効である。
電力変換装置1は、モータ5の回転速度と、駆動対象4の駆動トルクとの関係を表す駆動トルクプロファイルを記憶するトルク記憶部131と、回転速度推定値と駆動トルクプロファイルとに基づいて駆動対象の駆動トルクを算出する駆動トルク算出部132と、負荷トルクと駆動トルクとのトルク偏差を算出するトルク偏差算出部133と、を更に備え、異常診断部119は、トルク偏差に基づいて機器2に異常があるかを診断してもよい。機器2の異常は、主として摺動部(例えば軸受7)又は回転伝達部等に生じ易い。摺動部又は回転伝達部等の異常は、メカロストルクに変化を生じるため、上記トルク偏差に現れやすいので、トルク偏差に基づくことによって機器2に異常があるかをより適切に診断できる。
電力変換装置1は、駆動電流と電力変換回路10がモータ5に印加する駆動電圧とに基づいて、電力変換回路10とモータ5との間に流れる無効電力を算出する無効電力算出部141を更に備え、異常診断部119は、無効電力に更に基づいて機器に異常があるかを診断してもよい。機器2の異常は無効電力にも現れやすい。このため、トルク偏差と無効電力の両方に基づいて機器2の異常を検知することによって、機器2に異常があるかをより適切に検知できる。
異常診断部119は、トルク偏差が所定のトルクレベルを超えた場合に機器2に異常があると診断し、無効電力が所定の電力レベルを超えた場合にも機器2に異常があると診断してもよい。この場合、機器2に異常があるかをより高い感度で診断できる。
異常診断部119は、トルク偏差が所定のトルクレベルを超え、且つ無効電力が所定の電力レベルを超えた場合に機器2に異常があると診断してもよい。この場合、機器2に異常があるかをより高い信頼性で検知できる。
電力変換装置1は、トルク偏差にローパス型の第1フィルタ処理を施す第1フィルタ処理部134を更に備え、異常診断部119は、第1フィルタ処理が施されたトルク偏差に基づいて機器2に異常があるかを診断してもよい。この場合、定常的な摩擦上昇をより高い信頼性で検知できる。
電力変換装置1は、トルク偏差にバンドパス型の第2フィルタ処理を施す第2フィルタ処理部135を更に備え、異常診断部119は、第2フィルタ処理が施されたトルク偏差に更に基づいて機器2に異常があるかを診断してもよい。この場合、定常的な摩擦上昇によるメカロストルク増加に至る前のトルク偏差の脈動に基づくことによって、機器2の異常をより早期に検知できる。
異常診断部119は、速度制御部111がモータ5の目標速度が変化する期間において、発生トルクに基づいて機器2に異常があるかを診断する第1診断部151と、速度制御部111がモータ5の回転速度を目標速度に維持している期間において、トルク偏差に基づいて機器2に異常があるかを診断する第2診断部152とを有していてもよい。この場合、トルク偏差に基づくメカロストルク変化の推定精度が低下する加速中には、トルク偏差に代えて発生トルクに基づき異常を検知することによって、異常の誤検知を抑制しつつ、加速中においても異常を検知することができる。
第1診断部151は、速度制御部111がモータ5の目標速度が変化する期間における発生トルクのピーク値に基づいて機器2に異常があるかを診断してもよい。この場合、発生トルクに基づく異常検知の信頼性を更に向上させることができる。
電力変換装置1は、モータ5の目標速度が変化する度に、発生トルクのピーク値を記憶することで、複数のピーク値を時系列で記憶するピーク値記憶部162を更に備え、第1診断部151は、ピーク値記憶部162が記憶する最新のピーク値の変化に基づいて機器2に異常があるかを診断してもよい。この場合、発生トルクに基づく異常検知の信頼性を更に向上させることができる。
第1診断部151は、最新のピーク値の変化の積算値に基づいて機器2に異常があるかを診断してもよい。この場合、発生トルクに基づく異常検知の信頼性を更に向上させることができる。
以上、実施形態について説明したが、本開示は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。例えば、以上においては、発生トルク算出部114と、速度推定部115と、慣性トルク算出部117と、負荷トルク算出部118と、異常診断部119とを備える診断装置が電力変換装置1に組み込まれた例を示したが、必ずしもこれに限られない。例えば、診断装置は、電力変換装置1とは別体の他の装置に組み込まれていてもよい。例えば診断装置は、上位コントローラ200に組み込まれていてもよい。