(57)【要約】【課題】本発明は、コストを抑えつつモータの位置制御を確実に処理することができるモータ制御装置の提供を目的とする。【解決手段】ブラシレスモータ１０を制御する制御部を備えるモータ制御装置４において、制御部を、ブラシレスモータ１０の回転状態を検出すべくエンコーダ信号を処理する第１制御部と、モータの実回転位置を目標回転位置に制御する制御信号を決定する第２制御部とに分割したことで、処理負荷を分散し、処理能力が低くコストが安く大きさの小さいものを第１制御部と第２制御部に使用選択できる余地が生まれるようにしたモータ制御装置。【選択図】図１
2007135368.tif 000002
【特許請求の範囲】
【請求項１】
モータを制御する制御部を備えるモータ制御装置において、
前記制御部を、モータの回転状態を検出すべくエンコーダ信号を処理する第１の制御部と、モータの実回転位置を目標回転位置に制御する制御信号を決定する第２の制御部とに分割したことを特徴とするモータ制御装置。
【請求項２】
前記第１の制御部は、回転磁界を生成するためにインバータスイッチの通電パターンを決定する処理とブラシレスモータの実回転方向を検出する処理とを行う、請求項１記載のモータ制御装置。
【請求項３】
前記第２の制御部に前記エンコーダ信号を前記第１の制御部を介さずに入力することによって、前記第２の制御部は、前記第１の制御部による前記エンコーダ信号の処理結果の異常を判定する、請求項１または２記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電動モータを制御するためのモータ制御装置に関し、より詳細には、電動モータの位置制御が可能なモータ制御装置に関する。
【背景技術】
【０００２】
従来から、インバータによりステータコイルを励磁して回転磁界を形成し、その回転磁界によってロータ（回転子）を回転させるモータの制御技術が知られている。そして、モータの位置出し制御をするには、ロータの回転をエンコーダによって検出し、検出信号をインバータにフィードバックして行われる。
【０００３】
このようなモータの位置出し制御をするためにロータの位置検出をするための検出センサをステータに設け、その検出センサの検出データを処理してインバータに制御信号を出力するマイクロプロセッサをモータ筐体に取り付けたことを特徴とするモータが知られている（例えば、特許文献１参照）。このモータは、検出センサをステータに取り付け、マイクロプロセッサをモータ筐体に取り付けることで、モータ自体に制御機能を設けつつモータ全体をコンパクトに構成しようとするものである。
【特許文献１】特開平５−１８４１１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の従来技術はインバータ制御を実行するマイクロプロセッサをモータ筐体に取り付けているため、振動対策や熱対策をする必要があり、モータ筐体にインバータ制御を実行するマイクロプロセッサを取り付けない場合に比べ、モータ制御システム全体として高価になるおそれがある。
【０００５】
そこで、本発明は、コストを抑えつつモータの位置制御を確実に処理することができるモータ制御装置の提供を目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するため、本発明の一局面によれば、
モータを制御する制御部を備えるモータ制御装置において、
前記制御部を、モータの回転状態を検出すべくエンコーダ信号を処理する第１の制御部と、モータの実回転位置を目標回転位置に制御する制御信号を決定する第２の制御部とに分割したことを特徴とするモータ制御装置が提供される。
【０００７】
本局面では、一つの制御部でモータ制御全体をまかなうのではなく、モータを制御する制御部を、エンコーダ信号の処理をする制御部と位置制御をする制御部に分割している。モータを制御するためには、エンコーダ信号を高速に割込み処理する処理負荷の高い回転処理をする必要があるため、モータを制御する制御部を上記のように分割することで、処理負荷を分散し、処理能力が低くコストが安く大きさの小さいものを分割した制御部に使用選択できる余地が生まれるという点で有利である。
【０００８】
ここで、前記第１の制御部が行う処理として、回転磁界を生成するためにインバータスイッチの通電パターンを決定する処理とブラシレスモータの実回転方向を検出する処理とがある。
【０００９】
なお、第１の制御部が誤った処理結果を第２の制御部に伝送したとしても第２の制御部はそれが誤った処理結果であるか否かを判断することができないため、前記第２の制御部に前記エンコーダ信号を前記第１の制御部を介さずに入力することによって、前記第２の制御部は、前記第１の制御部による前記エンコーダ信号の処理結果の異常を判定することが好適である。
【発明の効果】
【００１０】
本発明によれば、コストを抑えた上でモータの位置制御を確実に処理することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。図１は、本発明の実施形態であるモータ制御装置を適用したシステムの構成図の一例である。本システムの一例として、エンジンのバルブリフト量を変化させる可変バルブリフト機構を駆動するためのブラシレスモータ１０を制御するバルブリフト制御システムが挙げられる。図１に示すシステムがバルブリフト制御システムとして考えると、可変バルブリフト機構は、周知の通り、クランク部材の支軸部に固定したコントロールアームをブラシレスモータ１０で揺動させてバルブのリフト量を連続的に変化させる。モータ制御装置４がエンジン制御装置（図示せず）から送信されるエンジンのバルブリフト量の目標値（目標バルブリフト量）に基づいてブラシレスモータ１０の回転を制御することにより、バルブリフト量が可変する。
【００１２】
ブラシレスモータ１０は、モータ制御装置４の三相ブリッジ回路である駆動部３（インバータ３）に接続されている。ブラシレスモータ１０の回転状態は、３つの通電制御用センサＳ１，Ｓ２，Ｓ３と２つの位置制御用センサＳ４，Ｓ５によって検出され、その検出データ（いわゆる、エンコーダ信号）がモータ制御装置４に入力される。周知の通り、ブラシレスモータ１０の三相巻線Ａ，Ｂ，Ｃにインバータ３によって三相交流電流を流すと回転磁界が発生する。モータ制御装置４はこの回転磁界を発生させることによりブラシレスモータ１０のロータを回転制御し、ロータに接続されるシャフトが回転する。上述に一例として挙げたバルブリフト制御システムの場合、シャフトの回転運動がコントロールアームの揺動運動に変換される。
【００１３】
図２は、通電制御用センサＳ１，Ｓ２，Ｓ３と位置制御用センサＳ４，Ｓ５とブラシレスモータ１０内のロータ２０の磁極との位置関係の一例を示す図である。図２は、ブラシレスモータ１０のシャフト２１の軸方向から見た図である。通電制御用センサＳ１，Ｓ２，Ｓ３と位置制御用センサＳ４，Ｓ５は、図示しないステータに固定して設置され、シャフト２１とともにロータ２０に一体に装着されたロータマグネット２２，２３の磁力の変化を捉える。通電制御用センサＳ１，Ｓ２，Ｓ３は、８個の磁極をＮ極とＳ極で交互に配置した８極構造のロータマグネット２２の磁力変化を検出する。一方、位置制御用センサＳ４，Ｓ５は、３２個の磁極をＮ極とＳ極で交互に配置した３２極構造のロータマグネット２３の磁力変化を検出する。なお、ロータマグネット２２，２３のうち、斜線部をＮ極、空白部をＳ極とする。
【００１４】
図３は、通電制御用センサＳ１，Ｓ２，Ｓ３の出力パルスの関係を示す図である。通電制御用センサＳ１，Ｓ２，Ｓ３とロータマグネット２２との位置関係が図２に示した関係の場合、通電制御用センサＳ１，Ｓ２，Ｓ３の出力パルスは互いに図３に示される位相ずれが生じる。モータ制御装置４は、周知の通り、この位相ずれに基づいて、通電相を確定するための３つの通電制御用センサＳ１，Ｓ２，Ｓ３からブラシレスモータ１０の三相の状態を取得し、インバータ３内にある６つのＭＯＳＦＥＴなどのスイッチの通電パターンを決めることによって、ブラシレスモータ１０を回転させている。
【００１５】
また、モータ制御装置４は、図示しない外部の制御装置とＣＡＮなどの通信ライン１１を介して接続されている。外部の制御装置は、通信ライン１１を介してブラシレスモータ１０の目標回転位置をモータ制御装置４に送信する。モータ制御装置４は、その目標回転位置と２つの位置制御用センサＳ４，Ｓ５の検出信号に基づいて演算されるブラシレスモータ１０の実回転位置との偏差が零となるように、インバータ３内の６つスイッチの通電を制御する。
【００１６】
位置制御用センサＳ４，Ｓ５は、例えば、インクリメンタルエンコーダである。インクリメンタルエンコーダは、回転変位量に応じてパルス列を出力する。
【００１７】
図４は、位置制御用センサＳ４，Ｓ５の出力パルスの関係を示す図である。位置制御用センサＳ４，Ｓ５とロータマグネット２３との位置関係が図２に示した関係の場合、通電制御用センサＳ４，Ｓ５の出力パルスには図４に示される位相差がある。この位置制御用センサＳ４とＳ５の両出力パルスの位相関係からブラシレスモータ１０（ロータ２０）の回転方向を検知することができる。
【００１８】
図４の左半分で示されるように、位置制御用センサＳ４の出力パルスの立ち上がりエッジで位置制御用センサＳ５のレベルがＬｏレベル（＝０）であれば、ブラシレスモータ１０は正転しているとモータ制御装置４は判断し、図４の右半分で示されるように、位置制御用センサＳ４の出力パルスの立ち上がりエッジで位置制御用センサＳ５のレベルがＨｉレベル（＝１）であれば、ブラシレスモータ１０は逆転しているとモータ制御装置４は判断する。なお、図５の表からも明らかなように、位置制御用センサＳ４の出力パルスの立ち下がりエッジ、位置制御用センサＳ５の出力パルスの立ち上がりエッジ、位置制御用センサＳ５の出力パルスの立ち下がりエッジのうちのいずれかのエッジで、もう一方の位置制御用センサのレベルを判定しても、ブラシレスモータ１０の回転方向を検知することは可能である。
【００１９】
また、図４の下段で示されるように、回転方向が正転であれば位置制御用カウンタ値をアップし、反転であれば位置制御用カウンタ値をダウンすることにより、モータ制御装置４は基準位置からの相対的な回転位置を検知することが可能である。
【００２０】
ところで、上述のように、位置制御用センサの出力パルスの立ち下がり若しくは立ち下がりエッジで制御を行うと、エッジ毎に割込みが多く発生することになる。しかも、位置制御を行う場合は割込み間隔は一定でなく、回転速度が速くなるほど制御負荷は大きくなるが、回転速度が遅くなるほど負荷は小さくなり停止している場合には負荷は最小となるため、処理負荷にムラがある。したがって、モータ制御装置４に内蔵される演算処理装置（ＣＰＵ）には、演算処理能力の高いものが求められることが多い。しかしながら、一般に演算処理能力が高くなるほど演算処理装置のパッケージサイズは大きくなるが、車載用など冷熱条件が厳しい環境で演算処理装置を使用する場合には半田クラックが生じやすくなるため、演算処理装置のパッケージサイズが大きくなるほど不利になる。したがって、演算処理能力の高い大型のパッケージを使用するより、演算処理能力の低い小型のパッケージの演算処理装置を使用して処理負荷の分散を図ったほうが有利になる。
【００２１】
そこで、モータ制御装置４に内蔵の演算処理装置は、第１制御部であるＣＰＵ１と第２制御部であるＣＰＵ２の２つの演算処理装置を備え、ＣＰＵ１とＣＰＵ２に制御処理を分散する。ＣＰＵ１は回転処理を行い、ＣＰＵ２は位置制御を行い、互いにシリアルの通信ライン１２，１３によって接続される。
【００２２】
ＣＰＵ１は、通電制御用センサＳ１，Ｓ２，Ｓ３からブラシレスモータ１０の三相の状態を取得し、インバータ３内の６つのスイッチの通電パターンを決め、その通電パターンに従ってそれらのスイッチをＯＮさせる。インバータ３内の６つのスイッチがＭＯＳＦＥＴの場合、通電パターンに従ってＣＰＵ１からＭＯＳＦＥＴをＯＮ／ＯＦＦさせるゲート信号が出力される。なお、ＣＰＵ１にインバータ３内の６つのスイッチをＯＮ／ＯＦＦさせる駆動能力がなければ、トランジスタなどの駆動能力のあるプリドライバをＣＰＵ１とインバータ３の間に設ければよい。
【００２３】
また、ＣＰＵ１は、ＣＰＵ２が演算した後述の符号付ＰＷＭ信号を通信ライン１２を介して取得し、そのＰＷＭ信号に基づいてインバータ３内の６つのスイッチの通電を制御する。
【００２４】
また、ＣＰＵ１は、位置制御用センサＳ４，Ｓ５の出力パルス数をカウンタで計数し、その計数情報に基づいてＣＰＵ２がブラシレスモータ１０の実回転位置を演算できるようにするために、所定の通信周期で通信ライン１３を介してその計数情報をＣＰＵ２に送信する。ＣＰＵ２に送信される計数情報は、例えば、前回送信時からの位置制御用カウンタ値の変化量（差分）である（上述の図４）。位置制御用カウンタ値の差分は、正転なら正の値、逆転なら負の値となる。
【００２５】
一方、ＣＰＵ２は、通信ライン１３を介して前記計数情報をＣＰＵ１から受信する。ＣＰＵ２は、その計数情報に基づいてブラシレスモータ１０の実回転位置を演算する。なお、位置制御用センサＳ４，Ｓ５の検出信号は回転位置の絶対値ではないため、ＣＰＵ２は、ある基準とする位置で計数情報をリセットし、その基準位置からの計数情報に基づき、基準位置からの相対的な実回転位置を演算する。なお、ＣＰＵ２が基準位置を把握するためには、例えば、位置制御用センサＳ４，Ｓ５はインデックスパルスを出力すればよい。インデックスパルスはエンコーダが１回転する毎に出力されるため、ＣＰＵ２はＣＰＵ１と通信ライン１３を介してインデックスパルスを検出すると絶対的な基準位置を把握することができる。
【００２６】
また、ＣＰＵ２は、演算したブラシレスモータ１０の実回転位置と外部の制御装置から通信ライン１１を介して受信した目標回転位置との偏差が零になるような符号付のＰＷＭ信号（符号は、回転方向を示す）を演算し、算出されたＰＷＭ信号をＣＰＵ１に対し通信ライン１２を介して出力する。
【００２７】
ところで、ＣＰＵ１が故障などにより誤った回転処理結果をＣＰＵ２に通信ライン１３を介して送信したとしても、ＣＰＵ２はそれが誤った回転処理結果であるか否かを判断することができない。そこで、図１に示されるように、点線で示す信号ライン１５を介して位置制御用センサＳ４，Ｓ５の出力パルスを直接受信したＣＰＵ２は、点線で示す信号ライン１５を介して受信した出力パルスと通信ライン１３を介して受信した回転処理結果とを比較することにより、通信ライン１３を介して受信した回転処理結果が誤りでないことを判断することができる。つまり、一重故障でモータ制御が動作不安定になることを防止可能である。
【００２８】
それでは、ＣＰＵ１による回転処理結果の異常検出について、図６，７を参照しながら説明する。
【００２９】
図７は、通信ライン１３を介したシリアル入力による割込み毎のＣＰＵ２のサブルーチンである。ＣＰＵ２は、ＣＰＵ１からの受信値（例えば上述の、位置制御用カウンタ値の差分）をＣｏｕｎｔ１に代入する（ステップ２２）。ＣＰＵ２は、ＣＰＵ１からの今回の受信値Ｃｏｕｎｔ１とＣＰＵ１からの前回の受信値Ｃｏｕｎｔ１＿ｏｌｄとの差分をｄｅｌｔａＣｏｕｎｔ１に代入する（ステップ２４）。ＣＰＵ２は、今回の受信値Ｃｏｕｎｔ１をＣｏｕｎｔ１＿ｏｌｄに代入する（ステップ２６）。
【００３０】
図６は、ＣＰＵ１の回転処理結果の異常を検出するＣＰＵ２のメインルーチンである。本メインルーチンは、例えば１６ｍｓ毎のタスクとする。ＣＰＵ２は、点線で示す信号ライン１５を介して直接受信した位置制御用センサＳ４，Ｓ５の出力パルス数をカウンタで計数し、上述の図４と同様に、ＣＰＵ２独自の（ＣＰＵ１が有する位置制御用カウンタ値とは異なる）位置制御用カウンタ値をアップ若しくはダウンさせる。ＣＰＵ２は、ＣＰＵ２独自の位置制御用カウンタ値をＣｏｕｎｔ２に代入する（ステップ２）。ＣＰＵ２は、ＣＰＵ２独自の今回の位置制御用カウンタ値Ｃｏｕｎｔ２とＣＰＵ２独自の前回の位置制御用カウンタ値Ｃｏｕｎｔ２＿ｏｌｄとの差分をｄｅｌｔａＣｏｕｎｔ２に代入する（ステップ４）。ＣＰＵ２は、ｄｅｌｔａＣｏｕｎｔ２と図７のサブルーチンのステップ２４で演算したｄｅｌｔａＣｏｕｎｔ１との差分の絶対値が所定の定数ＭＡＸ＿ｎより小さいか否かを判断する（ステップ６）。ステップ６が成立する場合には、ＣＰＵ２は、ＣＰＵ１による回転処理結果に異常はないとして、Ｆａｉｌｃｏｕｎｔを０にクリアする（ステップ８）。一方、ステップ６が成立しない場合には、ＣＰＵ２は、Ｆａｉｌｃｏｕｎｔをインクリメントし（ステップ１０）、Ｆａｉｌｃｏｕｎｔが所定の定数ＭＡＸ＿ＦＡＩＬＣＯＵＮＴより大きければ（ステップ１２）、ＣＰＵ１による回転処理結果に異常があると確定し（ステップ１４）する。そして、ＣＰＵ２は、ＣＰＵ２独自の今回の位置制御用カウンタ値Ｃｏｕｎｔ２をＣｏｕｎｔ２＿ｏｌｄに代入し、零をｄｅｌｔａＣｏｕｎｔ１に代入する（ステップ１６）。
【００３１】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
【００３２】
例えば、上述の実施例では、第１制御部及び第２制御部はＣＰＵとしたが、第１制御部に関しては複雑なソフト処理がないためにＡＳＩＣのようなデジタルハード回路で実現することもできる。
【図面の簡単な説明】
【００３３】
【図１】本発明の実施形態であるモータ制御装置を適用したシステムの構成図の一例である。
【図２】通電制御用センサＳ１，Ｓ２，Ｓ３と位置制御用センサＳ４，Ｓ５とブラシレスモータ１０内のロータ２０の磁極との位置関係の一例を示す図である。
【図３】通電制御用センサＳ１，Ｓ２，Ｓ３の出力パルスの関係を示す図である。
【図４】位置制御用センサＳ４，Ｓ５の出力パルスの関係を示す図である。
【図５】ブラシレスモータ１０の回転方向と位置制御用センサＳ４とＳ５の両出力パルスとの関係を示す表である。
【図６】ＣＰＵ１の回転処理結果の異常を検出するＣＰＵ２のメインルーチンである。
【図７】通信ライン１３を介したシリアル入力による割込み毎のＣＰＵ２のサブルーチンである。
【符号の説明】
【００３４】
１  第１制御部（ＣＰＵ）
２  第２制御部（ＣＰＵ）
３  駆動部（インバータ）
４  モータ制御装置
１０  ブラシレスモータ
１１  通信ライン
２０  ロータ
２１  シャフト
２２，２３  ロータマグネット
Ｓ１，Ｓ２，Ｓ３  通電制御用センサ
Ｓ４、Ｓ５  位置制御用センサ
【図１】
2007135368.tif 000003
【図２】
2007135368.tif 000004
【図３】
2007135368.tif 000005
【図４】
2007135368.tif 000006
【図５】
2007135368.tif 000007
【図６】
2007135368.tif 000008
【図７】
2007135368.tif 000009