(57)【要約】【課題】ロータ位置の算出に係る演算の負荷が小さいモータ制御装置を提供する。【解決手段】マイコンは、モータのロータの回転による磁界の変化に基づく正弦波状の信号をデジタル化して得た矩形波状の信号であるセンサ入力のエッジ９６Ｇとエッジ９６Ｈとの間の時間をロータが電気角で１８０度回転する電気角１８０度時間Ｔｃとして算出する。また、マイコンは、算出した電気角１８０度時間Ｔｃを２のべき乗である所定の数で除算して得られた時間を、ロータが電気角１８０度を前述の所定の数で除算して予め得られた単位電気角で回転する単位電気角時間Ｔｕとして算出し、かつセンサ入力に新たにエッジが発生したときから単位電気角時間Ｔｕ毎でのカウントを開始し、カウントした値に単位電気角を乗算して得られた角度を、センサ入力に新たにエッジが発生したときを基準としたロータの回転位置とする。【選択図】図２
2015142394.tif 000002
【特許請求の範囲】
【請求項１】
モータのロータの回転に伴って変化する磁界を検知すると共に、検知した磁界の変化に応じた信号を出力する磁界検知部と、
前記磁界検知部が出力した信号を、所定の電気角毎にエッジを有する矩形波状の信号に変換する信号変換部と、
前記信号変換部が変換した矩形波状の信号のエッジ間の時間を所定のビットで表現すると共に、該所定のビットで表現された前記矩形波状の信号のエッジ間の時間から、該所定のビットのビット数と１０進法で２のべき乗となる所定の数の該べき数との差に相当する数の上位ビットを抽出することにより、前記所定の電気角を前記所定の数で徐算して予め得られた単位電気角を前記ロータが回転する時間である単位電気角時間を算出し、かつ前記矩形波状の信号に新たなエッジが発生したときから前記単位電気角時間毎でのカウントを開始し、該カウントした値に前記単位電気角を乗算することにより、前記矩形波状の信号に新たなエッジが発生したときを基準としてロータの回転位置を算出する制御部と、
を備えたモータ制御装置。
【請求項２】
前記制御部は、前記矩形波状の信号に新たなエッジが発生したときの前記矩形波状の信号のレベルの高低に応じて、該エッジが発生したときのロータの位置の電気角を算出すると共に、該算出した電気角に前記新たなエッジが発生したときを基準としたロータの回転位置を加算することにより、前記ロータの位置を算出する請求項１に記載のモータ制御装置。
【請求項３】
前記所定の電気角は、１８０度である請求項１又は２に記載のモータ制御装置。
【請求項４】
前記所定の数は、１０進法で２の８乗に相当する２５６である請求項１〜３のいずれか１項に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置に係り、特に、ＰＷＭ制御方式によるＤＣブラシレスモータのモータ制御装置に関する。
【背景技術】
【０００２】
一般に、車両用エアコンの送風を行うブロワモータ等の、ＤＣブラシレスモータ（以下、「モータ」と称する）がある。かかるモータの制御装置では、半導体素子をオン、オフさせてモータのステータ各相に整流した矩形波状の電圧を印加することにより、ステータ各相に、いわゆる回転磁界を生じさせ、永久磁石で構成されたモータのロータを回転させている。
【０００３】
ロータを回転させ得る回転磁界を生じさせるには、ロータを構成する永久磁石のＳ極又はＮ極の位置（以下、「ロータの位置」と称する）を把握する必要がある。ＤＣブラシレスモータでは、例えば、半導体であるホール素子を使用したホールセンサでロータの磁界を検知し、当該磁界の極性及び強度に応じた電圧を信号として出力する。
【０００４】
図７は、モータが各相に備えるホールセンサが出力した電圧のアナログ波形９２Ｕ，９２Ｖ，９２Ｗの概略の一例及びアナログ波形９２Ｕ，９２Ｖ，９２Ｗをコンパレータ等の回路を介して得たデジタル波形９４Ｕ，９４Ｖ，９４Ｗの概略の一例を示す図である。デジタル波形９４Ｕ，９４Ｖ，９４Ｗでは、電圧の変化がエッジ９６Ａ，９６Ｂ，９６Ｃ，９６Ｄ，９６Ｅ，９６Ｆとして示される。これらエッジ９６Ａ，９６Ｂ，９６Ｃ，９６Ｄ，９６Ｅ，９６Ｆを検出することで、ロータの位置を図７の横軸に示した電気角として把握できる。
【０００５】
しかしながら、モータを円滑に回転させるには、エッジとエッジとの間においてもロータの位置を把握する必要がある。特許文献１には、デジタル波形のエッジ間でのロータの角速度を算出し、算出した角速度を用いて、エッジ間におけるロータの位置を算出している。具体的には、直前にエッジが発生した時間からの経過時間に算出した角速度を乗算することにより、直前に検出されたエッジからの電気角の変化量を算出し、算出した電気角の変化量を直前に検出されたエッジの電気角に加算してロータの位置を算出している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−１０４０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載の技術では、ロータの角速度の算出に除算及びガード処理に係る演算が必要で、かかる演算は、低性能のマイコンでは負荷が大きいという問題点があった。
【０００８】
本発明は、上記に鑑みてなされたもので、ロータ位置の算出に係る演算の負荷が小さいモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１に記載のモータ制御装置は、モータのロータの回転に伴って変化する磁界を検知すると共に、検知した磁界の変化に応じた信号を出力する磁界検知部と、前記磁界検知部が出力した信号を、所定の電気角毎にエッジを有する矩形波状の信号に変換する信号変換部と、前記信号変換部が変換した矩形波状の信号のエッジ間の時間を所定のビットで表現すると共に、該所定のビットで表現された前記矩形波状の信号のエッジ間の時間から、該所定のビットのビット数と１０進法で２のべき乗となる所定の数の該べき数との差に相当する数の上位ビットを抽出することにより、前記所定の電気角を前記所定の数で徐算して予め得られた単位電気角を前記ロータが回転する時間である単位電気角時間を算出し、かつ前記矩形波状の信号に新たなエッジが発生したときから前記単位電気角時間毎でのカウントを開始し、該カウントした値に前記単位電気角を乗算することにより、前記矩形波状の信号に新たなエッジが発生したときを基準としてロータの回転位置を算出する制御部と、を備える。
【００１０】
請求項１に記載のモータ制御装置は、ロータが所定の電気角で進角する時間である矩形波状の信号のエッジ間の時間を２のべき乗の数で除算して得られた時間を、ロータが単位電気角で進角する単位電気角時間として算出している。
【００１１】
２進数で演算処理を行うノイマン方式の計算機において、任意の１０進数を除数とする除算処理は当該計算機の負荷が高い。しかしながら、除数が２のべき乗であれば、２進数で表現した被除数から当該除数のべき数に相当する桁数を除外することで除算でき、低性能のマイコンでも前述の単位電気角時間を容易に算出できる。すなわち、所定のビットで表現したエッジ間の時間から上位のビットを抽出するという、ノイマン方式の計算機において負荷が軽い処理によって単位電気角時間を算出することにより、ロータ位置の算出に係る演算の負荷を低減できる。
【００１２】
請求項２に記載のモータ制御装置は、請求項１に記載のモータ制御装置において、前記制御部は、前記矩形波状の信号に新たなエッジが発生したときの前記矩形波状の信号のレベルの高低に応じて、該エッジが発生したときのロータの位置の電気角を算出すると共に、該算出した電気角に前記新たなエッジが発生したときを基準としたロータの回転位置を加算することにより、前記ロータの位置を算出する。
【００１３】
請求項２のモータ制御装置によれば、矩形波上の信号がハイレベルか否かによって、エッジが発生したときのロータの位置を算出すると共に、エッジが発生したときのロータの位置と新たなエッジが発生したときを基準としたロータの回転位置とを加算することにより、ロータの位置を軽微な計算負荷で算出することができる。
【００１４】
請求項３に記載のモータ制御装置は、請求項１又は請求項２に記載のモータ制御装置において、前記所定の電気角は、１８０度である。
【００１５】
請求項３の記載のモータ制御装置によれば、ＤＣブラシレスモータのロータの位置を示す信号として一般的な電気角１８０度毎にエッジを有する矩形波上の信号を用いて、ロータの位置を算出することができる。
【００１６】
請求項４に記載のモータ制御装置は、請求項１〜３のいずれか１項に記載のモータ制御装置において、前記所定の数は、１０進法で２の８乗に相当する２５６である。
【００１７】
請求項４に記載のモータ制御装置によれば、電気角１８０度を２５６で乗算して予め得られた０．７０３度を単位電気角とすることができ、ロータの位置算出の精度の維持を図ると共に、ロータの位置算出の演算の負荷を抑制することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態に係るモータ制御装置の構成の一例の概略を示すブロック図である。
【図２】本発明の実施の形態に係るモータ制御装置において、ホールセンサから出力された信号をデジタル化した波形であるセンサ入力を１６ビットタイマでカウントすることにより、センサ入力のエッジ間の時間である電気角１８０度時間をカウントした場合の一例を示す概略図である。
【図３】本発明の実施の形態に係るモータ制御装置における、単位電気角時間の算出の概念図である。
【図４】本発明の実施の形態に係るモータ制御装置における、単位電気角時間をコンペアマッチ値としてセンサ入力のエッジ間でのロータの位置を算出する一例を示す概念図である。
【図５】本発明の実施の形態に係るモータ制御装置における、ロータの位置の算出の処理の一例を示すフローチャートである。
【図６】本発明の実施の形態に係るモータ制御装置において、ホールセンサから出力された信号をデジタル化した波形であるセンサ入力を１６ビットタイマでカウントすることにより、電気角０度のエッジから電気角３６０のエッジまでの時間をカウントした場合の一例を示す概略図である。
【図７】モータが各相に備えるホールセンサが出力した電圧のアナログ波形の概略の一例及びアナログ波形をコンパレータ等の回路を介して得たデジタル波形の概略の一例を示す図である。
【発明を実施するための形態】
【００１９】
図１は、本実施の形態に係るモータ制御装置１０の構成の一例の概略を示すブロック図である。図１に示したモータ制御装置１０は、一例として、車載エアコンの送風に用いられる、いわゆるブロアモータの一種であるモータ１６を制御するものである。また、図１示したモータ１６は、一例として、三相６極のＤＣブラシレスモータである。
【００２０】
モータ１６のロータ２４は、各々３つのＳ極及びＮ極の永久磁石で構成されている。ロータ２４の磁界は、ホールセンサ５２によって検知される。ホールセンサ５２は、ロータのシャフトと同軸に固定されたセンサマグネットの磁界を検知してもよい。
【００２１】
ホールセンサ５２は、ロータ２４又はセンサマグネットにより形成された磁界を検出することにより、ロータ２４の位置を検出するためのセンサである。ホールセンサ５２は、Ｕ、Ｖ、Ｗの各相に対応する３つのホール素子を含んでいる。ホールセンサ５２は、ロータ２４の回転によって生じた磁界の変化を、図７に示した正弦波に近似したアナログ波形の電圧の変化の信号として出力する。
【００２２】
ホールセンサ５２が出力した信号は、制御回路であるマイコン４０に入力される。マイコン４０は、集積回路であり、スタンバイ回路６０によって電源８０から供給される電力が制御されている。
【００２３】
ホールセンサ５２からマイコン４０に入力されたアナログ波形の信号は、マイコン４０内にある、コンパレータ等のアナログ信号をデジタル信号に変換する回路を備えたホールセンサエッジ検出部６６に入力される。ホールセンサエッジ検出部６６では、入力されたアナログ波形９２Ｕ，９２Ｖ，９２Ｗを、図７に示したデジタル波形９４Ｕ，９４Ｖ，９４Ｗに変換し、デジタル波形９４Ｕ，９４Ｖ，９４Ｗからエッジ９６Ａ，９６Ｂ，９６Ｃ，９６Ｄ，９６Ｅ，９６Ｆを検出する。
【００２４】
デジタル波形９４Ｕ，９４Ｖ，９４Ｗ及びエッジ９６Ａ，９６Ｂ，９６Ｃ，９６Ｄ，９６Ｅ，９６Ｆの情報はモータ位置推定部６４に入力され、ロータ２４の位置が算出される。算出されたロータ２４の位置の情報は、通電制御部６８に入力される。
【００２５】
また、マイコン４０の指令値算出部６２には、車載エアコンの電子制御ユニットであるエアコンＥＣＵ７８を介してモータ１６（ロータ２４）の回転速度を指示するための信号が入力される。エアコンＥＣＵ７８から入力された信号からモータ１６の回転速度に係る指令を抽出して、通電制御部６８に入力する。
【００２６】
通電制御部６８は、モータ位置推定部６４で算出されたロータ２４の位置及びエアコンＥＣＵ７８により指示されたロータ２４の回転速度に基づいて駆動デューティ値を決定する。また、通電制御部６８は、駆動デューティ値に応じたパルス信号であるＰＷＭ信号を生成して電圧供給部５０に出力するＰＷＭ制御を行う。
【００２７】
電圧供給部５０は、三相（Ｕ相、Ｖ相、Ｗ相）インバータにより構成されている。図２に示すように、電圧供給部５０は、各々が上段スイッチング素子としての３つのＮチャンネル電界効果トランジスタ（ＭＯＳＦＥＴ）７４Ｕ、７４Ｖ、７４Ｗ（以下、「ＦＥＴ７４Ｕ、７４Ｖ、７４Ｗ」と言う）、各々が下段スイッチング素子としての３つのＮチャンネル電界効果トランジスタ（ＭＯＳＦＥＴ）７６Ｕ、７６Ｖ、７６Ｗ（以下、「ＦＥＴ７６Ｕ、７６Ｖ、７６Ｗ」と言う）とを備えている。なお、ＦＥＴ７４Ｕ、７４Ｖ、７４Ｗ及びＦＥＴ７６Ｕ、７６Ｖ、７６Ｗは、各々、個々を区別する必要がない場合は「ＦＥＴ７４」、「ＦＥＴ７６」と総称し、個々を区別する必要がある場合は、「Ｕ」、「Ｖ」、「Ｗ」の符号を付して称する。
【００２８】
ＦＥＴ７４、ＦＥＴ７６のうち、ＦＥＴ７４Ｕのソース及びＦＥＴ７６Ｕのドレインは、コイル３０Ｕの端子に接続されており、ＦＥＴ７４Ｖのソース及びＦＥＴ７６Ｖのドレインは、コイル３０Ｖの端子に接続されており、ＦＥＴ７４Ｗのソース及びＦＥＴ７６Ｗのドレインは、コイル３０Ｗの端子に接続されている。
【００２９】
ＦＥＴ７４及びＦＥＴ７６のゲートは通電制御部６８に接続されており、ＰＷＭ信号が入力される。ＦＥＴ７４及びＦＥＴ７６は、ゲートにＨレベルのＰＷＭ信号が入力するとオン状態になり、ドレインからソースに電流が流れる。また、ゲートにＬレベルのＰＷＭ信号が入力されるとオフ状態になり、ドレインからソースへ電流が流れない状態になる。
【００３０】
また、本実施の形態のモータ制御装置１０には、電源８０、ノイズ防止コイル８２、及び平滑コンデンサ８４Ａ、８４Ｂ等が構成されている。電源８０、ノイズ防止コイル８２、及び平滑コンデンサ８４Ａ、８４Ｂは略直流電源を構成している。
【００３１】
続いて、図２〜４を用いて、本発明の実施の形態に係るモータ制御装置１０における、ロータ２４の位置の算出について説明する。本実施の形態では、ホールセンサ５２は、モータ１６のＵ相、Ｖ相、Ｗ相に各々対応した３つのホール素子を備えているので、図２〜４を用いた説明は、Ｕ相、Ｖ相、Ｗ相の各々において行われる。しかしながら、ロータ２４の位置の算出はＵ相、Ｖ相、Ｗ相のいずれも同様なので、以下、図２〜４を用いた説明では、Ｕ相、Ｖ相、Ｗ相に共通する事項について説明する。
【００３２】
図２は、本実施の形態に係るモータ制御装置１０において、ホールセンサ５２から出力された信号をデジタル化した波形であるセンサ入力を１６ビットタイマであるタイマＣでカウントすることにより、センサ入力のエッジ間の時間である電気角１８０度時間Ｔｃをカウントした場合の一例を示す概略図である。センサ入力は、所定の電気角（例えば電気角１８０度）毎にエッジが発生するが、本実施の形態では、所定の電気角が、例えば１８０度であるとして、以下のように矩形波上の信号のエッジ間の時間である電気角１８０度時間Ｔｃをカウントする。
【００３３】
タイマＣは、例えば、マイコン４０に内蔵されたタイマであって、マイコン４０のベースクロックを１６ビット毎にカウントし、カウント値を積算することで時間を算出する。図２では、一例として、センサ入力のエッジ９６Ｇの発生と共にタイマＣはマイコン４０のベースクロックを１６ビット毎にカウントしてカウントＣ値とし、カウントＣ値を積算していく。そして、センサ入力のエッジ９６Ｈが発生した時までのカウントＣ値の積算値であるインプットタイマ値から電気角１８０度時間Ｔｃを算出する。
【００３４】
算出した電気角１８０度時間Ｔｃは、所定の数で除算して、所定の電気角で進角（回転）する時間である単位電気角時間Ｔｕを算出する。所定の電気角は、任意に設定できるが、一例として略１度程度とする。略１度程度であれば、ロータ２４の位置検出の精度として妥当な水準だからである。また、所定の数は、２のべき乗であることを要する。マイコン４０がノイマン方式の計算機であれば、２のべき乗を除数とする除算処理が容易だからである。
【００３５】
本実施の形態では、一例として、電気角１８０度時間Ｔｃを２５６＝２の８乗で除算して得た、０．７０３度を所定の電気角とし、かかる０．７０３度進角する時間を単位電気角時間Ｔｕとする。マイコン４０の演算負荷がさほど問題にならないのであれば、所定の数を、例えば、１０２４＝２の１０乗又は５１２＝２の９乗とし、所定の電気角を各々０．１７６度又は０．３５２度とすることで、ロータ２４の位置の算出の精度を上げてもよい。マイコン４０の演算負荷を低減させたいのであれば、所定の電気角を、例えば、１２８＝２の７乗とし、所定の電気角を１．４１度としてもよい。
【００３６】
図３は、本実施の形態に係るモータ制御装置における単位電気角時間Ｔｕの算出の概念図である。本実施の形態では、図３（Ａ）に示したように電気角１８０度時間Ｔｃを１６ビットで表現し、図３（Ｂ）の示したように、上位８ビットを単位電気角時間Ｔｕとして抽出する。
【００３７】
マイコン４０がノイマン方式であれば、内部処理は２進数で行われる。したがって、電気角１８０度時間Ｔｃを、例えば１６桁の２進数で表現し、その上位８桁を抽出、言い換えれば、下位８桁を切り捨てることで、結果的には、１０進数の電気角１８０度時間Ｔｃを１０進数の２５６で除算したことと同じになる。
【００３８】
マイコン４０における演算で、除算は負荷が高い処理であるが、１６ビットの上位８ビットを抽出する処理は、ノイマン方式の計算機であるマイコン４０での処理の負荷は軽い。したがって、図３に示した演算処理であれば、マイコン４０の性能がさほど高くなくても、単位電気角時間Ｔｕを算出することができる。また、所定の数を、２５６以外の、１２８、５１２又は１０２４にした場合は、１６ビットの下位の７ビット、９ビット又は１０ビットを各々切り捨てることにより、１６ビットの上位の９ビット、７ビット又は６ビットを各々抽出する。かかる抽出は、１０進数の電気角１８０度時間Ｔｃを１０進数の１２８、５１２又は１０２４で除算したことと同義である。
【００３９】
また、電気角１８０度時間Ｔｃは、２４ビット又は３２ビット等のように、１６ビット以外のビットで表現してもよい。前述のように所定の数も２５６以外の２のべき乗とするのであれば、単位電気角時間Ｔｕを算出する処理は、以下のようになる。
【００４０】
例えば、１６ビット以外の所定のビットで表現された電気角１８０度時間から、当該所定のビットのビット数と２のべき乗である所定の数のべき数との差に相当する数の上位ビットを抽出することで、単位電気角時間Ｔｕを算出することができる。
【００４１】
図４は、本実施の形態に係るモータ制御装置における、単位電気角時間Ｔｕをコンペアマッチ値としてセンサ入力のエッジ間での時間を算出する一例を示す概念図である。マイコン４０等のプロセッサは、多くの場合、１６ビットカウンタに加えて８ビットカウンタを備えているので、かかる８ビットカウンタをコンペアタイマであるカウンタＡとし、カウンタＡのコンペアマッチ値に、単位電気角時間Ｔｕ、すなわちロータ２４が電気角で０．７０３度進角する時間を設定する。カウンタＡは、マイコン４０のベースクロックを８ビット毎にカウントし、８ビット毎のカウント値をコンペアマッチ値まで積算する。
【００４２】
また、本実施の形態では、８ビットカウンタをフリーランカウンタであるカウンタＢとして用いる。カウンタＢは、センサ入力において新たなエッジ、例えば電気角０度のエッジが発生したときから、カウンタＡがコンペアマッチ値までカウントした回数をタイマ値として積算していく。
【００４３】
コンペアマッチ値は、前述のように、電気角１８０度の１／２５６の角度でロータ２４が進角する時間である。したがって、ロータ２４の回転速度が変化しなければ、センサ入力に電気角０度のエッジが発生したときにタイマ値を０からカウントした場合であれば、タイマ値を２５５までカウントしたときにセンサ入力の電気角１８０度のエッジが発生するタイミングと一致する。
【００４４】
したがって、本実施の形態では、センサ入力にエッジが発生したときを基準としたロータ２４の回転位置は、任意のタイミングでのカウンタＢのタイマ値（カウンタＢ値）に０．７０３度を乗算して得られた電気角として、下記の式（１）によって算出される。
エッジ発生時を基準としたロータの回転位置
＝カウンタＢ値×０．７０３  ・・・（１）
図４は、電気角０度でのエッジ発生時を基準としたロータ２４の回転位置を算出する場合を示したが、電気角１８０度でのエッジ発生時を基準としたロータ２４の回転位置も、上記と同様にして、算出することができる。
【００４５】
また、ロータ２４の位置は、上記の式（１）を用いて算出したエッジ発生時を基準としたロータ２４の回転位置に、当該エッジが発生したときのロータの位置を示す電気角を加算することによって得られる。
【００４６】
センサ入力は、図２に示したように、電気角１８０度毎にエッジを有する矩形波状の信号であり、電気角１８０度毎に信号のレベルの高低が変化する。例えば、電気角０度から電気角１８０度の間でセンサ入力がハイレベルであれば、電気角１８０度から電気角３６０度の間ではセンサ入力はローレベルとなる。なお、図２の横軸に記した電気角は、センサ入力において電気角１８０度毎にエッジが発生することを分かりやすくするための便宜的なものである。
【００４７】
本実施の形態では、新たなエッジが発生したときのセンサ入力がハイレベルかローレベルかによって、新たなエッジが発生したときのロータ２４の位置を算出する。ただし、センサ入力においてエッジは図２に示したように電気角１８０度の周期で発生するが、ロータ２４の絶対的な位置を示す電気角に対するエッジの位置は、Ｕ相、Ｖ相、Ｗ相によって、さらにはホールセンサ５２のホール素子の設置位置によっても変化し得る。
【００４８】
例えば、矩形波上の信号であるセンサ入力とロータ２４の絶対的な位置を示す電気角との関係が図７に示したような場合であれば、センサ入力に新たなエッジが発生したときのロータの電気角は、以下のようになる。Ｕ相において新たなエッジが発生したときのデジタル波形（センサ入力）がハイレベルの場合であれば、新たなエッジが検出したときのロータ２４の電気角は２１０度となる。また、Ｖ相において新たなエッジが発生したときのデジタル波形（センサ入力）がハイレベルの場合であれば、新たなエッジが検出したときのロータ２４の電気角は３３０度となる。さらに、Ｗ相において新たなエッジが発生したときのデジタル波形（センサ入力）がハイレベルの場合であれば、新たなエッジが検出したときのロータ２４の電気角は９０度となる。
【００４９】
本実施の形態では、上述のようにしてセンサ入力に新たなエッジが発生したときのロータ２４の電気角を算出する。そして、新たなエッジが発生したときのロータ２４の電気角に、上記の式（１）の算出値を加算した値をロータ２４の位置とする。
【００５０】
なお、カウンタＡ又はカウンタＢには１６ビットカウンタを用いることもできる。しかしながら、カウンタＡには、８ビットカウンタを用いた方が、ロータ２４の位置の算出の精度が高くなる。
【００５１】
図５は、本実施の形態に係るモータ制御装置１０における、ロータ２４の位置の算出の処理の一例を示すフローチャートである。ステップ５００では、図２に示したタイマＣにマイコン４０のベースクロックが入力されているか否かを判定し、肯定判定の場合には、ステップ５０２でカウントＣ値をカウントする。ステップ５００で否定判定の場合には、ステップ５０２の処理をスキップする。
【００５２】
ステップ５０４では、センサ入力に図２に示したようなエッジ９６Ｇ又は９６Ｈが発生しているか否かを判定し、肯定判定の場合には、センサ入力のエッジ９６Ｇからエッジ９６ＨまでのカウントＣ値の積算値をインプットタイマ値として、電気角１８０度時間Ｔｃを算出する。ステップ５０８では、電気角１８０度時間Ｔｃであるインプットタイマ値の上位８ビットをカウンタＡのコンペア値として抽出する。
【００５３】
ステップ５１０ではカウンタＡの値をクリアし、ステップ５１２ではカウンタＢの値をクリアし、ステップ５１４ではタイマＣのカウントＣ値をクリアする。なお、ステップ５０４で否定判定の場合には、ステップ５０６〜５１４の処理をスキップする。
【００５４】
ステップ５１６では、図４に示したカウンタＡにマイコン４０のベースクロックが入力されているか否かを判定し、肯定判定の場合には、ステップ５１８でカウンタＡ値をカウントする。ステップ５１６で否定判定の場合には、ステップ５１８の処理をスキップする。
【００５５】
ステップ５２０では、カウンタＡがコンペアマッチ値に達したか否かを判定し、肯定判定の場合には、ステップ５２２でカウンタＢ値を積算する。ステップ５２４では、カウンタＢ値が２５６に達したか否かを判定し、肯定判定の場合には、ステップ５２６でカウンタＢ値をクリアする。これは、モータの回転速度が変動して、カウンタＢ値がオーバーフローした場合の処理である。
【００５６】
なお、ステップ５２０で否定判定の場合には、ステップ５２２〜５２６の処理をスキップする。また、ステップ５２４で否定判定の場合には、カウンタＢ値はオーバーフローしていないので、ステップ５２６の処理をスキップする。
【００５７】
ステップ５２８では、任意のタイミングか否かを判定し、肯定判定の場合には、モニタした任意のタイミングでのカウンタＢ値を抽出し、手順をステップ５００に戻す。ステップ５３０で抽出したカウンタＢ値に、所定の電気角である０．７０３度を乗算した値が、センサ入力でのエッジ発生時を基準としたロータ２４の回転位置となる。
【００５８】
以上説明したように、本実施の形態によれば、例えば、ロータ２４が電気角０度から電気角１８０度に進角するまでの時間を電気角１８０度時間Ｔｃとして算出する。また、電気角１８０度時間Ｔｃを２のべき乗である所定の数で除算して得られた時間を、ロータ２４が電気角１８０度を当該所定の数で除算して得られた単位電気角に進角する単位電気角時間とする。さらに、当該単位電気角時間に達する毎にカウントし、当該カウント値に単位電気角を乗算して得られた角度を、エッジ発生時を基準としたロータ２４の回転位置とすることで、ロータ２４の位置の算出に係る演算の負荷を低減できる。
【００５９】
なお、図２に示したタイマＣは、電気角０度のエッジから電気角１８０度のエッジまでの時間、及び電気角１８０度のエッジから電気角３６０度のエッジまでの時間をカウントした。しかしながら、図６に示したように、電気角０度から電気角３６０までの時間をカウントしてもよい。電気角０度から電気角３６０度までの時間の上位８ビットを抽出した場合、ロータ２４の位置算出の単位である所定の電気角は、３６０／２５６≒１．４１度となる。
【００６０】
図６の場合であれば、図４に示したカウンタＢ値に上記の電気角１．４１度を乗算した値が、エッジ発生時を基準としたロータ２４の回転位置となる。
【符号の説明】
【００６１】
１０…モータ制御装置、１６…モータ、２４…ロータ、３０（３０Ｕ，３０Ｖ，３０Ｗ）…コイル、４０…マイコン、５０…電圧供給部、５２…ホールセンサ、６０…スタンバイ回路、６２…指令値算出部、６４…モータ位置推定部、６６…ホールセンサエッジ検出部、６８…通電制御部、７４（７４Ｕ，７４Ｖ，７４Ｗ）…ＦＥＴ、７６（７６Ｕ，７６Ｖ，７６Ｗ）…ＦＥＴ、７８…エアコンＥＣＵ、８０…電源、８２…ノイズ防止コイル、８４Ａ，８４Ｂ…平滑コンデンサ、９２Ｕ，９２Ｖ，９２Ｗ…アナログ波形、９４Ｕ，９４Ｖ，９４Ｗ…デジタル波形（センサ入力）、９６Ａ，９６Ｂ，９６Ｃ，９６Ｄ，９６Ｅ，９６Ｆ，９６Ｇ，９６Ｈ…エッジ、Ｔｃ…電気角１８０度時間、Ｔｕ…単位電気角時間
【図１】
2015142394.tif 000003
【図２】
2015142394.tif 000004
【図４】
2015142394.tif 000005
【図５】
2015142394.tif 000006
【図６】
2015142394.tif 000007
【図７】
2015142394.tif 000008
【図３】
2015142394.tif 000009