(57)【要約】【課題】モータが発振しているか否かを、モータに対して行われている制御内容に依らず、良好に検出できるモータ駆動装置を提供する。【解決手段】モータ駆動装置は、モータに駆動電流を供給することで前記モータを駆動するモータ制御部と、前記駆動電流の電流値が単位時間内に発振振幅閾値を超える回数をカウントし、前記回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したと判定する発振検出部と、前記モータ制御部に設定されているパラメータの値に基づき前記単位時間として使用されるべき時間を算出し、算出した時間を前記単位時間として前記発振検出部に設定する設定部と、を備える。【選択図】図１
2019161844.tif 000002
【特許請求の範囲】
【請求項１】
モータに駆動電流を供給することで前記モータを駆動するモータ制御部と、
前記駆動電流の電流値が単位時間内に発振振幅閾値を超える回数をカウントし、前記回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したと判定する発振検出部と、
前記モータ制御部に設定されているパラメータの値に基づき前記単位時間として使用されるべき時間を算出し、算出した時間を前記単位時間として前記発振検出部に設定する設定部と、
を備えることを特徴とするモータ駆動装置。
【請求項２】
前記設定部は、位置比例ゲイン、速度比例ゲイン、トルク指令用ローパスフィルタの遮断周波数のいずれかについての前記モータ制御部の設定値に基づき前記単位時間として使用されるべき時間を算出し、算出した時間を前記単位時間として前記発振検出部に設定する、
ことを特徴とする請求項１に記載のモータ駆動装置。
【請求項３】
前記発振回数閾値及び前記発振振幅閾値の少なくとも一方の値を、前記モータ制御部の動作状態に応じた値に変更する閾値変更部を、さらに備える、
ことを特徴とする請求項１又は２に記載のモータ駆動装置。
【請求項４】
前記モータ制御部は、前記モータを駆動するための複数の制御モードを有し、
前記モータ制御部の前記動作状態が、前記モータ制御部の制御モードである、
ことを特徴とする請求項３に記載のモータ駆動装置。
【請求項５】
前記モータ制御部の前記動作状態が、前記モータ制御部への指令の入力の有無である、
ことを特徴とする請求項３又は４に記載のモータ駆動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ駆動装置に関する。
【背景技術】
【０００２】
モータ駆動装置により駆動されているモータが発振しているか否かを判定する技術として、モータ駆動電流の電流値が単位時間内に発振振幅閾値を超える回数をカウントし、当該回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したと判定する技術（例えば、特許文献１参照）が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平３−２８４１８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記技術は、単位時間が適切に設定されていないと、検出したい周波数の発振を検出できない場合や、モータの意図した動作が発振として誤認定される場合があるものとなっている。さらに、適切な単位時間は、モータに対して行われている制御内容によって変化するため、上記技術で、各種の制御が行われ得るモータの発振を検出することは困難であった。
【０００５】
本発明は、上記問題に鑑みてなされたものであり、モータが発振しているか否かを、モータに対して行われている制御内容に依らず、良好に検出できるモータ駆動装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の一観点に係るモータ駆動装置は、モータに駆動電流を供給することで前記モータを駆動するモータ制御部と、前記駆動電流の電流値が単位時間内に発振振幅閾値を超える回数をカウントし、前記回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したと判定する発振検出部と、前記モータ制御部に設定されているパラメータの値に基づき前記単位時間として使用されるべき時間を算出し、算出した時間を前記単位時間として前記発振検出部に設定する設定部と、を備える。
【０００７】
すなわち、本発明の上記観点に係るモータ駆動装置は、モータ制御部に設定されているパラメータの値から適切な単位時間を算出して『前記駆動電流の電流値が単位時間内に発振振幅閾値を超える回数をカウントし、前記回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したことを示す発振検出信号を出力する発振検出部』に設定する構成を有する。従って、このモータ制御装置によれば、モータが発振しているか否かを、モータに対して行われている制御内容に依らず、良好に検出することができる。
【０００８】
モータ駆動装置の設定部は、位置比例ゲイン、速度比例ゲイン、トルク指令用ローパスフィルタの遮断周波数のいずれかについての前記モータ制御部の設定値に基づき前記単位時間として使用されるべき時間を算出し、算出した時間を前記単位時間として前記発振検出部に設定するものであっても良い。
【０００９】
モータ駆動装置に、前記発振回数閾値及び前記発振振幅閾値の少なくとも一方の値を、前記モータ制御部の動作状態に応じた値に変更する閾値変更部を付加しておいても良い。
なお、この閾値変更部における“モータ制御部の動作状態”としては、モータ制御部の制御モードや、モータ制御部への指令の入力の有無を採用することが出来る。
【発明の効果】
【００１０】
本発明によれば、モータが発振しているか否かを、モータに対して行われている制御内容に依らず、良好に検出できるモータ駆動装置を提供することが出来る。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明の第１実施形態に係るモータ駆動装置の構成及び使用形態の説明図である。
【図２】図２は、第１実施形態に係るモータ駆動装置内の発振検出部の機能ブロック図である。
【図３Ａ】図３Ａは、単位時間が適切ではない場合における発振検出部の動作の説明図である。
【図３Ｂ】図３Ｂは、発振回数閾値／位置比例ゲインが単位時間として使用されている場合における発振検出部の動作の説明図である。
【図４】図４は、第１実施形態に係るモータ駆動装置内の発振検出部が実行する発振検出処理の流れ図である。
【図５】図５は、第２実施形態に係るモータ駆動装置内の発振検出部の機能ブロック図である。
【図６】図６は、第２実施形態に係るモータ駆動装置内の発振検出部が実行する第２発振検出処理の流れ図（その１）である。
【図７】図７は、第２実施形態に係るモータ駆動装置内の発振検出部が実行する第２発振検出処理の流れ図（その２）である。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて、本発明の実施の形態を説明する。
【００１３】
《第１実施形態》
図１に、本発明の第１実施形態に係るモータ駆動装置２０の概略構成及び使用形態を示す。本実施形態に係るモータ駆動装置２０は、モータ４１を駆動するための装置であり、モータ駆動回路２２と制御部２３とを備える。
【００１４】
モータ駆動回路２２は、制御部２３の制御下、モータ４１に駆動電流を供給する回路である。
【００１５】
制御部２３は、プロセッサ（マイクロコントローラ、ＣＰＵ等）とその周辺素子から構成されたユニットである。この制御部２３は、モータ制御部２５と発振検出部２６として機能するように構成（プログラミング）されている。
【００１６】
モータ制御部２５は、ＰＬＣ等の外部装置から入力される指令、またはモータ駆動装置内で生成する指令に従って、各種制御モード（位置制御モード、速度制御モード、トルク制御モード）でモータ４１（モータ駆動回路２２）を制御するユニット（機能ブロック）である。このモータ制御部２５は、位置検出器４３によるモータ４１の位置の検出結果を用いて、モータ４１（モータ駆動回路２２）を制御する。
【００１７】
発振検出部２６は、モータ４１に振動が発生しているか否かを検出するためのユニットである。
【００１８】
以下、発振検出部２６について具体的に説明する。
図２に、発振検出部２６の機能ブロック図を示す。
【００１９】
図示してあるように、発振検出部２６は、タイマー３１、発振回数計数部３２、発振判断部３３及び設定部３４を備える。
【００２０】
タイマー３１は、経過時間を計数するためのユニットである。発振回数計数部３２は、モータ駆動電流値と、設定部３４（詳細は後述）が算出・設定する単位時間と、予め設定されている発振振幅閾値と、タイマー３１による計測時間とに基づき、モータ駆動電流値が単位時間内に発振振幅閾値を超える回数を計数するユニットである。なお、モータ駆動電流値とは、モータ制御部２５によって周期的に測定されているモータ駆動電流の電流値のことである。
【００２１】
発振回数計数部３２は、モータ駆動電流値が、正の発振振幅閾値及び負の発振振幅閾値のいずれかを超える回数を計数するものであっても、モータ駆動電流値が、正又は負の発振振幅閾値を超える回数だけを計数するものであっても良い。
【００２２】
発振判断部３３は、発振回数計数部３２による上記回数の計数結果が、予め定められている発振回数閾値以上となったときに、モータ４１が発振していることを示す発振検出信号を出力するユニットである。設定部３４は、モータ制御部２５のゲイン設定Ｇｒｅｆの逆数と発振回数閾値との乗算結果を算出し、算出結果を発振回数計数部３２に単位時間として使用させるユニットである。なお、モータ制御部２５のゲイン設定Ｇｒｅｆとしては、位置比例ゲイン、速度比例ゲイン、トルク指令用ローパスフィルタの遮断周波数のいずれかを採用しておくことが好ましい。
【００２３】
以上の説明から明らかなように、発振検出部２６は、基本的には、モータ駆動電流値が単位時間内に発振振幅閾値を超える回数をカウントし、当該回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したと判定するユニットである。ただし、発振検出部２６は、単位時間を、ゲイン設定Ｇｒｅｆの逆数と発振回数閾値との乗算結果に変更する機能を有している。
【００２４】
そして、ゲイン設定Ｇｒｅｆの逆数と発振回数閾値との乗算結果は、単位時間としての使用に適した値となる。
【００２５】
具体的には、１［Ｈｚ］の動作指令に対する応答波形に１０［Ｈｚ］の発振が含まれている場合を考える。なお、位置比例ゲイン＝５［Ｈｚ］、発振振幅閾値＝５［％］、発振回数閾値＝４［回］であるとする。
【００２６】
上記場合において、単位時間＝０．１［ｓｅｃ］であった場合には、図３Ａに示したように、発振回数カウント値が変化する。従って、発振検出部２６（発振判断部３３）は、発振を検出することが出来ない。一方、単位時間を、位置比例ゲインの逆数と発振回数閾値との乗算結果（この場合、０．８［ｓｅｃ］）とすれば、図３Ｂに示したように、発振回数カウント値が変化することになるため、適切に発振を検出することが出来る。
【００２７】
最後に、発振検出部２６の各部により行われる処理（以下、発振検出処理と表記する）の内容を、流れ図を用いて説明しておくことにする。
【００２８】
図４に、発振検出処理の流れ図を示す。
図示してあるように、この発振検出処理を開始した発振検出部２６は、まず、モータ制御部２５の現在のゲイン設定を把握する（ステップＳ１０１）。次いで、発振検出部２６は、ゲイン設定が前回把握したゲイン設定と同じであるか否かを判断する（ステップＳ１
０２）。そして、発振検出部２６は、ゲイン設定が変わっていなかった場合（ステップＳ１０２；ＹＥＳ）には、現ゲイン設定から単位時間を算出する（ステップＳ１０４）。なお、ゲイン設定が変わっていなかった場合（ステップＳ１０２；ＹＥＳ）、ステップＳ１０４の処理にて、前回算出されたものと同じ単位時間が算出されることになる。
【００２９】
発振検出部２６は、ゲイン設定が変わっていた場合（ステップＳ１０２；ＮＯ）には、発振回数カウント値及びタイマーを“０”リセット（ステップＳ１０３）してから、現ゲイン設定から単位時間を算出する（ステップＳ１０４）。すなわち、ゲイン設定が変わっていた場合（ステップＳ１０２；ＮＯ）には、単位時間が変更される（ステップＳ１０４）。そのため、変更後の単位時間で発振回数がはじめからカウントされるようにするために、発振回数カウント値及びタイマーが“０”リセットされる（ステップＳ１０３）。
【００３０】
ステップＳ１０４の処理を終えた発振検出部２６は、タイマーをカウントアップする（ステップＳ１０５）。その後、発振検出部２６は、前回にモータ駆動電流値（図４では、電流値）が発振振幅閾値を超えておらず、且つ、今回にモータ駆動電流値が発振振幅閾値を超えているかを判断する（ステップＳ１０６）。この発振検出閾値は、例えば正の閾値と負の閾値というように２つの発振振幅閾値を取ることもできる。その場合は、それぞれの閾値で、または、その閾値の組み合わせでステップＳ１０６の処理を行う。そして、発振検出部２６は、前回にモータ駆動電流値が発振振幅閾値を超えている、または、今回にモータ駆動電流値が発振振幅閾値を超えていない場合（ステップＳ１０６；ＮＯ）には、ステップＳ１０１以降の処理を再び開始する。
【００３１】
一方、前回にモータ駆動電流値が発振振幅閾値を超えておらず、且つ、今回にモータ駆動電流値が発振振幅閾値を超えている場合（ステップＳ１０６；ＹＥＳ）、発振検出部２６は、発振回数カウント値をカウントアップ（ステップＳ１０７）してから、タイマーによる計測時間が単位時間を超えているか否かを判断する（ステップＳ１０８）。
【００３２】
発振検出部２６は、タイマーによる計測時間が単位時間を超えていなかった場合（ステップＳ１０８；ＮＯ）には、ステップＳ１０１に戻る。また、発振検出部２６は、計測時間が単位時間を超えていた場合（ステップＳ１０８；ＹＥＳ）には、発振回数カウント値が発振回数閾値以上となっているか否かを判断する（ステップＳ１０９）。
【００３３】
発振回数カウント値が発振回数閾値以上となっていなかった場合（ステップＳ１０９；ＮＯ）、発振検出部２６は、発振回数カウント値及びタイマーを“０”リセット（ステップＳ１１０）してから、ステップＳ１０１に戻る。また、発振検出部２６は、発振回数カウント値が発振回数閾値以上となっていた場合（ステップＳ１０９；ＹＥＳ）には、所定の発振検出信号を出力（ステップＳ１１１）してから、この発振検出処理を終了する。
【００３４】
《第２実施形態》
以下、第１実施形態のモータ駆動装置２０の説明時に用いたものと同じ符号を用いて、第２実施形態に係るモータ駆動装置２０の構成及び動作を、第１実施形態のモータ駆動装置２０と異なる部分を中心に説明する。なお、説明の便宜上、以下では、第Ｎ（Ｎ＝１，２）実施形態に係るモータ駆動装置２０、当該モータ駆動装置２０内の発振検出部２６のことを、それぞれ、第Ｎモータ駆動装置２０、第Ｎ発振検出部２６とも表記する。
【００３５】
第２モータ駆動装置２０（第２実施形態に係るモータ駆動装置２０）は、第１モータ駆動装置２０の第１発振検出部２６を、第２発振検出部２６に置き換えた装置である。
【００３６】
図５に、第２発振検出部２６の機能ブロック図を示す。
この図５と図２とを比較すれば明らかなように、第２発振検出部２６は、第１発振検出
部２６（図２）に変更部３５を追加した構成を有している。
【００３７】
変更部３５は、モータ制御部２５の制御モードや、モータ制御部２５への指令の入力の有無により、発振回数閾値及び発振振幅閾値の値を変更するユニットである。
【００３８】
以下、流れ図を用いて、変更部３５の機能を説明する。
図６及び図７に、第２発振検出部２６の各部により行われる第２発振検出処理の流れ図を示す。
【００３９】
この第２発振検出処理のステップＳ２１１〜Ｓ２２０の処理は、それぞれ、発振検出処理（図４）のステップＳ１０２〜Ｓ１１１の処理と同じ処理である。第２発振検出処理のステップＳ２０１の処理では、発振検出処理（図４）のステップＳ１０１と同様に、モータ制御部２５の現在のゲイン設定が把握される。ただし、ステップＳ２０１の処理では、モータ制御部２５の現在の制御モードも把握される。また、モータ制御部２５への指令の入力の有無も把握（判定）される。
【００４０】
変更部３５は、第２発振検出処理のステップＳ２０２〜Ｓ２０７の処理を担当するユニットである。
【００４１】
すなわち、第２発振検出部２６は、ステップＳ２０１の処理後、変更部３５としての動作を開始する。そして、変更部３５としての動作を開始した第２発振検出部２６は、モータ制御部２５の制御モードが前回把握した制御モードと同じであるか否かを判断する（ステップＳ２０２）。
【００４２】
発振検出部２６は、制御モードが変わっていた場合（ステップＳ２０２；ＮＯ）には、発振回数カウント値及びタイマーを“０”リセットする（ステップＳ２０３）。そして、発振検出部２６は、発振回数閾値及び発振振幅閾値の値を、現制御モード用のものとして用意されている値に変更（ステップＳ２０４）してから、指令の入力の有無が前回と同じであるか否かを判断する（ステップＳ２０５）。
【００４３】
また、発振検出部２６は、制御モードが変わっていなかった場合（ステップＳ２０２；ＹＥＳ）には、ステップＳ２０３及びＳ２０４の処理を行うことなく、ステップＳ２０５の判断を行う。
【００４４】
指令の入力の有無が前回と同じであった場合（ステップＳ２０５；ＹＥＳ）、発振検出部２６は、ステップＳ２１１以降の処理を開始する。一方、指令の入力の有無が前回と同じではなかった場合（ステップＳ２０５；ＮＯ）、すなわち、指令の入力が再開された場合や指令の入力が停止された場合、発振検出部２６は、発振回数カウント値及びタイマーを“０”リセットする（ステップＳ２０６）。そして、発振検出部２６は、発振回数閾値及び発振振幅閾値の値を、各状況（指令入力無し、指令入力有り）用のものとして用意されている値に変更（ステップＳ２０７）してから、ステップＳ２１１以降の処理を開始する。
【００４５】
以上、説明したように、本実施形態に係るモータ駆動装置２０は、単位時間を変更する機能に加えて、発振回数閾値及び発振振幅閾値の値を、モータ制御部２５の動作状態（制御モード、モータ制御部２５への指令入力の有無）に応じた値に変更する機能を有している。そして、発振回数閾値及び発振振幅閾値の適正値は、モータ制御部２５の動作状態によって変化するのであるから、本実施形態に係るモータ駆動装置２０によれば、上記した第１実施形態に係るモータ駆動装置２０よりも良好にモータ４１の発振を検出することが可能となる。
【００４６】
《変形形態》
上記した各実施形態に係るモータ駆動装置２０は、各種の変形を行えるものである。例えば、第２実施形態に係るモータ駆動装置２０から、ステップＳ２０２〜Ｓ２０４の処理を実行する機能や、ステップＳ２０５〜Ｓ２０６の処理を実行する機能を取り除いておいても良い。第２実施形態に係るモータ駆動装置２０を、発振回数閾値及び発振振幅閾値の中のいずれか一方のみの値を変更する装置に変形しても良い。
【００４７】
《付記》
モータ（４１）に駆動電流を供給することで前記モータ（４１）を駆動するモータ制御部（２５）と、
前記駆動電流の電流値が単位時間内に発振振幅閾値を超える回数をカウントし、前記回数のカウント結果が発振回数閾値以上であった場合に、発振を検出したと判定する発振検出部（３２，３３）と、
前記モータ制御部に設定されているパラメータの値に基づき前記単位時間として使用されるべき時間を算出し、算出した時間を前記単位時間として前記発振検出部に設定する設定部（３４）と、
を備えることを特徴とするモータ駆動装置（２０）。
【符号の説明】
【００４８】
２０  モータ駆動装置
２２  モータ駆動回路
２３  制御部
２５  モータ制御部
２６  発振検出部
３２  発振回数計数部
３３  発振判断部
３４  設定部
３５  変更部
４１  モータ
４３  位置検出器
【図１】
2019161844.tif 000003
【図２】
2019161844.tif 000004
【図３Ａ】
2019161844.tif 000005
【図３Ｂ】
2019161844.tif 000006
【図４】
2019161844.tif 000007
【図５】
2019161844.tif 000008
【図６】
2019161844.tif 000009
【図７】
2019161844.tif 000010