(57)【要約】【課題】低コストで、より高い回転数まで制御可能なモータ制御装置を提供する。【解決手段】ロータ（１００ａ）の回転位置信号を出力する位置検出手段（１１）と、回転位置信号に基づいて、ロータが所定電気角回転するごとにキャプチャ信号を生成する位置検出部（２５）と、キャプチャ信号に基づいて決定されるタイミングで、割り込みトリガ信号を生成するタイマ部（２６）と、割り込みトリガ信号により割り込み処理を実行し、ＰＷＭデューティを算出する演算部（２４）と、算出されたＰＷＭデューティに基づいてＰＷＭ信号を出力するＰＷＭ出力部（２７）とを備える。タイマ部は、割り込み処理が、所定電気角に対応する時間内で終了しない場合、割り込みトリガ信号の生成周期が、所定電気角のｎ倍（ｎは２以上の整数）に対応する時間となるように、割り込みトリガ信号の生成タイミングを変更機能を有する。【選択図】図５
2014007894.tif 000002
【特許請求の範囲】
【請求項１】
ロータ（１００ａ）と多相巻線を設けたステータとを備えるモータ（１００）を、ＰＷＭ制御するモータ制御装置であって、
前記ロータの回転位置信号を出力する位置検出手段（１１）と、
前記回転位置信号に基づいて、前記ロータが所定電気角回転するごとにキャプチャ信号を生成する位置検出部（２５）と、
前記キャプチャ信号に基づいて決定されるタイミングで、割り込みトリガ信号を生成するタイマ部（２６）と、
前記割り込みトリガ信号により割り込み処理を実行し、ＰＷＭデューティを算出する演算部（２４）と、
算出された前記ＰＷＭデューティに基づいてＰＷＭ信号を出力するＰＷＭ出力部（２７）と、を備え、
前記タイマ部は、前記演算部での割り込み処理が、前記所定電気角に対応する時間内で終了しない場合、前記割り込みトリガ信号の生成周期が、前記所定電気角のｎ倍（ｎは２以上の整数）に対応する時間となるように、前記割り込みトリガ信号を生成するタイミングを変更する機能を有することを特徴とするモータ制御装置。
【請求項２】
前記タイマ部は、
前記キャプチャ信号に基づいて、前記所定電気角回転するのに要する回転時間を算出するとともに、算出した前記回転時間と、前記演算部の割り込み処理時間に応じて予め設定された基準時間とを比較し、
前記回転時間が前記基準時間よりも長い場合、前記生成周期が前記所定電気角に対応する時間となるように、前記割り込みトリガ信号を生成し、
前記回転時間が前記基準時間よりも短い場合、前記生成周期が、前記所定電気角のｎ倍（ｎは２以上の整数）に対応する時間となるように、前記割り込みトリガ信号を生成することを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記演算部は、前記割り込み処理の終了にともなって処理終了タイミング信号を出力し、
前記タイマ部は、
前記キャプチャ信号に基づいて、前記所定電気角回転するのに要する回転時間を算出するとともに、前記処理終了タイミング信号に基づいて、前記演算部での割り込み処理時間を算出して、前記回転時間と前記割り込み処理時間とを比較し、
前記割り込み処理時間と前記回転時間との差分が、予め設定された閾値よりも大きい場合、前記生成周期が前記所定電気角に対応する時間となるように、前記割り込みトリガ信号を生成し、
前記差分が前記閾値よりも小さい場合、前記生成周期が前記所定電気角のｎ倍（ｎは２以上の整数）に対応する時間となるように、前記割り込みトリガ信号を生成することを特徴とする請求項１に記載のモータ制御装置。
【請求項４】
前記演算部は、前記割り込み処理の実行中、及び、前記割り込み処理が終了し、次の前記割り込み処理が実行されるまでの待機中、のいずれであるかを示す状態信号を出力し、
前記タイマ部は、
待機中を示す前記状態信号が入力された状態で、前記キャプチャ信号が入力されると、前記割り込みトリガ信号を生成することを特徴とする請求項１に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロータと多相巻線を設けたステータとを備えるモータを、ＰＷＭ制御するモータ制御装置に関するものである。
【背景技術】
【０００２】
従来、例えば特許文献１に記載のように、ロータと多相巻線を設けたステータとを備えるモータを、ＰＷＭ制御するモータ制御装置が知られている。
【０００３】
このモータ制御装置では、位置検出回路によって、所定電気角（例えば電気角６０度）ごとにロータの回転位置が検出される。そして、回転位置検出のタイミングで、ＰＷＭデューティの算出など、マイコンによる割り込み処理（ソフト処理）が実行される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１１１３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、マイコンの割り込み処理は、上記した所定電気角の回転時間内に終了されなければならない。このため、従来、マイコンの性能は、マイコンの割り込み処理に要する時間が、モータの最高回転時における所定電気角の回転時間よりも短くなるように決定される。したがって、標準使用回転域と最高回転数がかけ離れており、不定期で高回転域が用いられるような場合にも、高性能ＣＰＵを有するマイコンを用いなければならず、コストが高くなるという問題があった。
【０００６】
また、同一仕様のモータ制御装置により、最高回転数のより高いモータの制御を行う場合、マイコンの割り込み処理が所定電気角の回転時間内に終了しないという問題が起こりえる。
【０００７】
本発明は上記問題点に鑑み、低コストで、より高い回転数まで制御することができるモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、ロータ（１００ａ）と多相巻線を設けたステータとを備えるモータ（１００）を、ＰＷＭ制御するモータ制御装置であって、ロータの回転位置信号を出力する位置検出手段（１１）と、回転位置信号に基づいて、ロータが所定電気角回転するごとにキャプチャ信号を生成する位置検出部（２５）と、キャプチャ信号に基づいて決定されるタイミングで、割り込みトリガ信号を生成するタイマ部（２６）と、割り込みトリガ信号により割り込み処理を実行し、ＰＷＭデューティを算出する演算部（２４）と、算出されたＰＷＭデューティに基づいてＰＷＭ信号を出力するＰＷＭ出力部（２７）と、を備え、タイマ部は、演算部での割り込み処理が、所定電気角に対応する割り込み間隔内で終了しない場合、割り込みトリガ信号の生成周期が所定電気角のｎ倍（ｎは２以上の整数）に対応する時間となるように、割り込みトリガ信号を生成するタイミングを変更する機能を有することを特徴とする。
【０００９】
タイマ部は、所定電気角に対応する時間（以下、第１回転時間と示す）内で割り込み処理が終了する場合、第１回転時間を生成周期として割り込みトリガ信号を生成する。換言すれば、キャプチャ信号ごとに割り込みトリガ信号を生成する。一方、モータが高回転となり、第１回転時間内で割り込み処理が終了しない場合、所定電気角のｎ倍（ｎは２以上の整数）に対応する時間（以下、第２回転時間と示す）を生成周期として割り込みトリガ信号を生成する。換言すれば、キャプチャ信号ごとではなく、例えばキャプチャ信号ひとつおきに割り込みトリガ信号を生成する。このように、割り込みトリガ信号を生成するタイミングを変更することができるので、高性能ＣＰＵを有するマイコンを用いなくとも、より高い回転数まで制御することができる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係るモータ制御装置が適用されたモータ制御システムの概略構成を示す図である。
【図２】モータとホール素子の配置を示す図である。
【図３】モータ制御装置のうち、タイマ部の概略構成を示す図である。
【図４】タイマ部のうち、時間比較制御部の概略構成を示す図である。
【図５】ＰＷＭ出力において実行される処理を示すフローチャートである。
【図６】キャプチャ信号及び割り込みトリガ信号の生成タイミング、ソフト処理部の処理タイミングを示すタイミングチャートである。
【図７】第２実施形態に係るモータ制御装置のうち、タイマ部の概略構成を示す図である。
【図８】タイマ部のうち、時間比較制御部の概略構成を示す図である。
【図９】ＰＷＭ出力において実行される処理のうち、特徴部分を示すフローチャートである。
【図１０】キャプチャ信号、処理終了タイミング信号、及び割り込みトリガ信号の生成タイミング、ソフト処理部の処理タイミングを示すタイミングチャートである。
【図１１】第３実施形態に係るモータ制御装置のうち、タイマ部の概略構成を示す図である。
【図１２】ＰＷＭ出力において実行される処理のうち、特徴部分を示すフローチャートである。
【図１３】キャプチャ信号、状態信号、及び割り込みトリガ信号の生成タイミング、ソフト処理部の処理タイミングを示すタイミングチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態を図に基づいて説明する。なお、各実施形態において、共通乃至関連する要素には同一の符号を付与するものとする。
【００１２】
（第１実施形態）
図１及び図２に示すように、モータ１００は、例えば永久磁石を有するロータ１００ａと、３相巻線を設けたステータ１００ｂと、を有する。このようなモータ１００をＰＷＭ制御するモータ制御装置１０は、位置検出手段としてのホール素子１１と、マイクロコンピュータ１２（以下、マイコン１２と示す）を有している。
【００１３】
ホール素子１１は、ロータ１００ａの回転位置を検出するため、モータ１００に取り付けられている。本実施形態では、図２に示すようにホール素子１１を３つ有しており、３つのホール素子１１が、ロータ１００ａの回転中心に対し、１２０度ごとに配置されている。
【００１４】
なお、位置検出手段としては、ホール素子１１に限定されるものではなく、周知の他の手段、例えばモータ１００の各相の誘起電圧を演算処理する回路を採用することもできる。また、ホール素子１１の個数は上記例に限定されるものではない。
【００１５】
マイコン１２は、図１に示すように、ＣＰＵ２０、ＲＯＭ２１、ＲＡＭ２２、モータ制御回路２３、及び図示しないアドレスバス・データバスを有している。ＣＰＵ２０は、ＲＯＭ２１に格納された制御プログラムに従ってＲＡＭ２２を用い、ソフト処理を実行する。すなわち、ＣＰＵ２０、ＲＯＭ２１、及びＲＡＭ２２は、ソフト処理部２４として機能する。このソフト処理部２４は、特許請求の範囲に記載の演算部に相当する。また、ＣＰＵ２０は、アドレスバス・データバスを介して、モータ制御回路２３を制御する。
【００１６】
モータ制御回路２３は、キャプチャ信号を生成する位置検出部２５、割り込みトリガ信号を生成するタイマ部２６、及びＰＷＭ信号を出力するＰＷＭ出力部２７と、を備えている。
【００１７】
位置検出部２５は、ホール素子１１の出力する回転位置信号に基づいて、ロータ１００ａが所定電気角回転するごとに、キャプチャ信号を生成し、タイマ部２６に出力する。本実施形態では、図２に示すようにロータ１００ａの磁極が２極であり、ホール素子１１が１２０度ごとに配置されているため、周知のように電気角６０度ごとにキャプチャ信号を生成する。なお、位置検出部２５からタイマ部２６に出力される信号は、「０」又は「１」であり、上記キャプチャ信号とは「１」である。また、位置検出部２５は、ホール素子１１の出力する回転位置信号に基づいて、通電タイミング生成信号を生成し、ＰＷＭ出力部２７に出力する。この通電タイミング生成信号は、転流タイミングを示すものであり、キャプチャ信号同様、電気角６０度ごとに生成される。位置検出部２５からＰＷＭ出力部２７に出力される信号は、「０」又は「１」であり、上記通電タイミング信号とは「１」である。
【００１８】
タイマ部２６は、キャプチャ信号に基づいて決定されるタイミングで、割り込みトリガ信号を生成し、ソフト処理部２４に出力する。本実施形態に係るモータ制御装置１０は、このタイマ部２６に特徴があり、その詳細については後述する。
【００１９】
ソフト処理部２４は、割り込みトリガ信号により割り込み処理を実行し、ＰＷＭデューティを算出する。具体的には、割り込みトリガ信号から回転速度を算出する。そして、算出した回転速度と設定速度との偏差でＰＩ制御を行い、ＰＷＭデューティを算出する。
【００２０】
ＰＷＭ出力部２７は、算出されたＰＷＭデューティに基づいてＰＷＭ信号を出力する。位置検出部２５から出力された通電タイミング生成信号を基準として、ＰＷＭ信号の出力、すなわち３相巻線への通電パターンの切替がなされる。このＰＷＭ信号は、ゲートドライバ１０１を介してインバータ１０２に入力される。
【００２１】
次に、タイマ部２６について、図３及び図４を用いて説明する。
【００２２】
図３に示すように、タイマ部２６は、キャプチャ制御部３０、タイマカウンタ３１、時間比較制御部３２、記憶部３３を有する。キャプチャ制御部３０は、タイマカウンタ３１（例えばフリーランタイマ）のタイマカウント値から、キャプチャ信号が入力されてから次のキャプチャ信号が入力されるまでの時間を算出する。上記したように、キャプチャ信号は電気角６０度ごとに生成されるため、キャプチャ制御部３０で算出される時間は、ロータ１００ａが電気角６０度回転するのに要する時間である。以下、この時間を６０度回転時間と示す。そして、時間比較制御部３２は、算出された６０度回転時間と、記憶部３３に予め設定された基準時間とを比較し、比較結果に応じて、割り込みトリガ信号を選択的に生成・出力する。なお、基準時間は、ソフト処理部２４によるソフト処理時間（ＰＷＭデューティ算出時間）に所定のマージンを加味して設定されている。
【００２３】
時間比較制御部３２は、時間比較器４０、ＮＯＴゲート４１、割り込みマスク制御部４２、及びＯＲゲート４３を有する。時間比較器４０は、キャプチャ制御部３０で算出された６０度回転時間と、記憶部３３から読みだした基準時間とを比較し、６０度回転時間が基準時間よりも長い場合、「１」を出力する。一方、６０度回転時間が基準時間よりも短い場合、「０」を出力する。この判定信号は、ＯＲゲート４３に入力されるとともに、ＮＯＴゲート４１を介して割り込みマスク制御部４２に入力される。
【００２４】
時間比較器４０から「１」が出力されると、割り込みマスク制御部４２には「０」が入力され、割り込みマスク制御部４２は、ＯＲゲート４３に対して「０」を出力する。このため、ＯＲゲート４３、すなわちタイマ部２６から、「１」が出力される。すなわち、割り込みトリガ信号が生成・出力される。
【００２５】
一方、時間比較器４０から「０」が出力されると、割り込みマスク制御部４２には「１」が入力される。割り込みマスク制御部４２は、入力信号を累算し、その値が１を超えると、１を出力する。すなわち、１回目の「１」が入力されると、累算値は「１」となり、割り込みマスク制御部４２から「０」が出力される。このため、ＯＲゲート４３への入力は、ともに「０」となり、ＯＲゲート４３（タイマ部２６）から「０」が出力される。すなわち、割り込みトリガ信号が生成されない。２回目の「１」が入力されると、累算値は「２」となり１を超えるため、割り込みマスク制御部４２から「１」が出力される。このため、ＯＲゲート４３（タイマ部２６）から「１」が出力される。すなわち、割り込みトリガ信号が生成・出力される。また、割り込みマスク制御部４２は、「０」が入力される、又は、累算値が「２」となり、「１」を出力すると、累算値をリセットする。換言すれば、ＯＲゲート４３から「１」が出力される、すなわち割り込みトリガゲート信号が出力されると、累算値はリセットされる。
【００２６】
このように、本実施形態では、６０度回転時間が基準時間よりも長いと、６０度回転時間を生成周期として割り込みトリガ信号を生成する。また、６０度回転時間が基準時間よりも短くなると、割り込みトリガ信号の生成タイミングを１回分マスクし、１２０度回転時間を生成周期として割り込みトリガ信号を生成する。
【００２７】
また、割り込みマスク制御部４２は、「１」を出力するとともに、１回分マスクしたことを示すマスク信号を、ソフト処理部２４に出力する。したがって、ソフト処理部２４は、マスク信号が入力されると、１２０度回転時間として、回転速度を算出する。
【００２８】
次に、図５を用いて、ＰＷＭ出力において実行される処理について説明する。
【００２９】
モータ制御装置１０は、イグニッションスイッチがオンされて電力が供給されると、動作を開始して図５の処理を実行する。そして、電力が供給された状態で、以下に示す処理を繰り返し実行する。
【００３０】
先ず、ホール素子１１が、ロータ１００ａの回転位置を検出し、回転位置信号を出力する（ステップＳ１０）。この回転位置信号はマイコン１２に入力され、位置検出部２５は、回転位置信号の変化タイミングから、ロータ１００ａが電気角６０度回転するごとにキャプチャ信号を生成する（ステップＳ１１）。また、位置検出部２５は、回転位置信号の変化タイミングから、通電タイミング生成信号を生成する（ステップＳ１２）。
【００３１】
次いで、タイマ部２６は、上記したように、キャプチャ信号に基づいて６０度回転時間を生成する（ステップＳ１３）。そして、生成した６０度回転時間と基準時間とを比較する（ステップＳ１４）。その結果、６０度回転時間が基準時間よりも長い場合は、割り込みトリガ信号を生成する（ステップＳ１６）。
【００３２】
一方、ステップＳ１４にて、６０度回転時間が基準時間よりも短い場合は、上記した累算値が１より大きいか否かを判定する（ステップＳ１５）。すなわち、割り込みトリガ信号の生成のマスクが１回目なのか否かを判定する。そして、ステップＳ１５において、累算値が「１」、すなわちマスクが１回目の場合に限り、ステップ１０に戻って、ステップＳ１０〜ステップＳ１４を繰り返す。そして、ステップＳ１４において、６０度回転時間が基準時間よりも長い場合は、割り込みトリガ信号を生成する（ステップＳ１６）。この場合、１２０度回転時間を生成周期として、割り込みトリガ信号が生成される。なお、ステップＳ１５において、累算値が「２」の場合も、割り込みトリガ信号を生成する（ステップＳ１６）。この場合も、１２０度回転時間を生成周期として、割り込みトリガ信号が生成される。
【００３３】
上記したように、割り込みトリガ信号の生成とともに、タイマ部２６（割り込みマスク制御部４２）は累算値をリセットする（ステップＳ１７）。そして、ソフト処理部２４は、割り込みトリガ信号及び上記したマスク信号により、上記したソフト処理を実行する。すなわちＰＷＭディーティを算出する（ステップＳ１８）。また、算出されたＰＷＭデューティ及び通電タイミング生成信号に基づいて、ＰＷＭ出力部２７は、ゲートドライバ１０１に対してＰＷＭ信号を出力する。
【００３４】
なお、ソフト処理部２４によるソフト処理（ステップＳ１８）は、上記したように、ＣＰＵ２０が制御プログラムに従って行うソフトウェア処理であり、それ以外の処理は、マイコン２の内部に構成されているモータ制御回路２３（ハードウェアロジック）により行われる処理である。
【００３５】
次に、本実施形態に係るモータ制御装置１０の特徴部分の効果について説明する。
【００３６】
タイマ部２６は、６０度回転時間が基準時間よりも長い場合、すなわち６０度回転時間内でソフト処理部２４のソフト処理が終了する場合、６０度回転時間を生成周期として割り込みトリガ信号を生成する。換言すれば、キャプチャ信号ごとに割り込みトリガ信号を生成する。
【００３７】
一方、モータ１００が高回転となり、６０度回転時間が基準時間よりも短くなる、すなわち、６０度回転時間内でソフト処理が終了しない場合、図２及び図６に示すように、１２０度回転時間を生成周期として割り込みトリガ信号を生成する。このように、割り込みトリガ信号を生成するタイミングを変更することができるので、高性能ＣＰＵを有するマイコンを用いなくとも、より高い回転数まで制御することができる。
【００３８】
なお、本実施形態では、割り込みトリガ信号の生成タイミングを１回分マスクする例を示した。しかしながら、マスク回数は１回に限定されるものではない。例えば２回としても良い。この場合、１８０度回転時間を生成周期として、割り込みトリガ信号が生成されることとなる。
【００３９】
（第２実施形態）
本実施形態において、上記実施形態に示したモータ制御装置１０と共通する部分についての説明は割愛する。
【００４０】
本実施形態の特徴は、ソフト処理部２４がソフト処理の処理終了タイミング信号を出力する。そして、タイマ部２６が、図７に示すように、処理終了タイミング信号に基づいてソフト処理部２４でのソフト処理時間を算出して、６０度回転時間とソフト処理時間を用いて、割り込みトリガ信号の生成タイミングを決定することにある。
【００４１】
図７に示すように、タイマ部２６は、キャプチャ制御部３０、タイマカウンタ３１、時間比較制御部３２を有する。キャプチャ制御部３０は、第１実施形態同様、タイマカウンタ３１のタイマカウント値から６０度回転時間を生成する。また、処理終了タイミング信号と割り込みトリガ信号に基づいて、ソフト処理部２４でのソフト処理時間を算出する。
【００４２】
時間比較制御部３２は、図８に示すように、時間比較器４０、ＮＯＴゲート４１、割り込みマスク制御部４２、ＯＲゲート４３、及び記憶部４４を有する。時間比較器４０は、キャプチャ制御部３０で算出された６０度回転時間及びソフト処理時間の差分（ソフト処理時間−６０度回転時間）と、記憶部４４から読みだした閾値とを比較し、差分が閾値よりも大きい場合、「１」を出力する。一方、差分が閾値よりも小さい場合、「０」を出力する。この判定信号は、ＯＲゲート４３に入力されるとともに、ＮＯＴゲート４１を介して割り込みマスク制御部４２に入力される。なお、閾値は、ソフト処理部２４のソフト処理時間に対するマージンが設定されている。
【００４３】
時間比較器４０から「１」が出力されると、割り込みマスク制御部４２には「０」が入力され、割り込みマスク制御部４２は、ＯＲゲート４３に対して「０」を出力する。このため、ＯＲゲート４３、すなわちタイマ部２６から、「１」が出力される。すなわち、割り込みトリガ信号が生成・出力される。
【００４４】
一方、時間比較器４０から「０」が出力されると、割り込みマスク制御部４２には「１」が入力される。割り込みマスク制御部４２は、入力信号を累算し、その値が１を超えると、１を出力する。すなわち、１回目の「１」が入力されると、累算値は「１」となり、割り込みマスク制御部４２から「０」が出力される。このため、ＯＲゲート４３への入力は、ともに「０」となり、ＯＲゲート４３（タイマ部２６）から「０」が出力される。すなわち、割り込みトリガ信号が生成されない。２回目の「１」が入力されると、累算値は「２」となり１を超えるため、割り込みマスク制御部４２から「１」が出力される。このため、ＯＲゲート４３（タイマ部２６）から「１」が出力される。すなわち、割り込みトリガ信号が生成・出力される。また、割り込みマスク制御部４２は、「０」が入力される、又は、累算値が「２」となり、「１」を出力すると、累算値をリセットする。換言すれば、ＯＲゲート４３から「１」が出力される、すなわち割り込みトリガゲート信号が出力されると、累算値はリセットされる。
【００４５】
このように、本実施形態では、ソフト処理時間と６０度回転時間の差分が閾値よりも大きいと、６０度回転時間を生成周期として割り込みトリガ信号を生成する。また、差分が閾値より小さくなると、割り込みトリガ信号の生成タイミングを１回分マスクし、１２０度回転時間を生成周期として割り込みトリガ信号を生成する。
【００４６】
また、割り込みマスク制御部４２は、「１」を出力するとともに、１回分マスクしたことを示すマスク信号を、ソフト処理部２４に出力する。したがって、ソフト処理部２４は、マスク信号が入力されると、１２０度回転時間として、回転速度を算出する。
【００４７】
次に、図９を用いて、ＰＷＭ出力において実行される処理について説明する。本実施形態における処理は、第１実施形態に示した処理（図５参照）とほぼ同じであるので、異なる点のみを説明する。
【００４８】
ステップＳ２０からステップＳ２３までは、第１実施形態に示したステップＳ１０からステップＳ１３と同じである。ステップＳ２３に次いで、タイマ部２６は、上記したように、処理終了タイミング信号に基づいて、ソフト処理部２４のソフト処理時間を算出する（ステップＳ２４）。そして、ソフト処理時間と６０度回転時間との差分と、閾値とを比較する（ステップＳ２５）。その結果、差分が閾値より大きい場合は、割り込みトリガ信号を生成する（ステップＳ２７）。
【００４９】
一方、ステップＳ２５にて、差分が閾値より小さい場合は、上記した累算値が１より大きいか否かを判定する（ステップＳ２６）。すなわち、割り込みトリガ信号の生成のマスクが１回目なのか否かを判定する。そして、ステップＳ２６において、累算値が「１」、すなわちマスクが１回目の場合に限り、ステップ２０に戻って、ステップＳ２０〜ステップＳ２５を繰り返す。そして、ステップＳ２５において、６０度回転時間が基準時間よりも長い場合は、割り込みトリガ信号を生成する（ステップＳ２７）。この場合、１２０度回転時間を生成周期として、割り込みトリガ信号が生成される。なお、ステップＳ２６において、累算値が「２」の場合も、割り込みトリガ信号を生成する（ステップＳ２７）。この場合も、１２０度回転時間を生成周期として、割り込みトリガ信号が生成される。
【００５０】
ステップ２８からステップ３０は、第１実施形態に示したステップＳ１７からステップＳ１９と同じであるため、説明は割愛する。
【００５１】
次に、本実施形態に係るモータ制御装置１０の特徴部分の効果について説明する。
【００５２】
タイマ部２６は、差分が閾値より大きい場合、すなわち６０度回転時間内でソフト処理部２４のソフト処理が終了する場合、６０度回転時間を生成周期として割り込みトリガ信号を生成する。換言すれば、キャプチャ信号ごとに割り込みトリガ信号を生成する。
【００５３】
一方、モータ１００が高回転となり、差分が閾値よりも小さくなる、すなわち、６０度回転時間内でソフト処理が終了しない場合、図１０に示すように、１２０度回転時間を生成周期として割り込みトリガ信号を生成する。このように、割り込みトリガ信号を生成するタイミングを変更することができるので、高性能ＣＰＵを有するマイコンを用いなくとも、より高い回転数まで制御することができる。
【００５４】
本実施形態においても、割り込みトリガ信号の生成タイミングを１回分マスクする例を示した。しかしながら、マスク回数は１回に限定されるものではない。例えば２回としても良い。この場合、１８０度回転時間を生成周期として、割り込みトリガ信号が生成されることとなる。
【００５５】
また、ソフト処理部２４のソフト処理時間に対するマージンを閾値とする例を示した。しかしながら、差分をとる６０度回転時間の、１つ前の６０度回転時間の例えば１０％を閾値としても良い。
【００５６】
（第３実施形態）
本実施形態において、上記実施形態に示したモータ制御装置１０と共通する部分についての説明は割愛する。
【００５７】
本実施形態の特徴は、ソフト処理部２４が、ソフト処理の実行中、及び、ソフト処理が終了し、次のソフト処理が実行されるまでの待機中、のいずれであるかを示す状態信号を出力する。そして、タイマ部２６は、待機中を示す状態信号が入力された状態で、キャプチャ信号が入力されると、割り込みトリガ信号を生成することにある。
【００５８】
図１１に示すように、タイマ部２６は、ＡＮＤゲート３４、及び、マスク回数計数部３５を有する。ＡＮＤゲート３４には、キャプチャ信号と状態信号が入力される。状態信号として、ソフト処理の実行中には「０」、待機中には「１」が入力される。したがって、待機中においてキャプチャ信号が入力されると、ＡＮＤゲート３４は「１」、すなわち割り込みトリガ信号を生成・出力する。
【００５９】
マスク回数計数部３５には、状態信号とキャプチャ信号が入力される。マスク回数計数部３５は、状態信号が「０」となってから、キャプチャ信号が何回入力されたかをカウントする。このカウント値は、キャプチャ信号が入力されたのに割り込みトリガ信号が生成されなかったマスク回数であるので、このカウント値をマスク信号として、ソフト処理部２４に出力する。ソフト処理部２４は、割り込みトリガ信号とこのマスク信号とにより、回転速度を算出する。なお、カウント値は、マスク回数計数部３５に「１」が入力されると、すなわち待機中を示す状態信号が入力されるとリセットされる。
【００６０】
次に、図１２を用いて、ＰＷＭ出力において実行される処理について説明する。本実施形態における処理は、第１実施形態に示した処理と同じ部分についての説明は割愛する。
【００６１】
ステップＳ４０からステップＳ４２までは、第１実施形態に示したステップＳ１０からステップＳ１２と同じである。次に、ステップＳ４３において、タイマ部２６を構成するＡＮＤゲート３４に、状態信号として待機中を示す信号「１」が入力されており、さらに、ステップＳ４４において、ＡＮＤゲート３４にキャプチャ信号が入力された場合のみ、タイマ部２６（ＡＮＤゲート３４）は割り込みトリガ信号を生成・出力する。
【００６２】
ステップＳ４３において、状態信号がソフト処理中を示す信号「０」の場合、割り込みトリガ信号の生成をマスクするため、ステップＳ４０に戻る。また、ステップＳ４４において、待機中を示す信号が入力されているにもかかわらず、キャプチャ信号の入力がない場合は、ステップＳ４３に戻る。
【００６３】
ステップＳ４６，Ｓ４７は、第１実施形態に示したステップＳ１８，Ｓ１９と同じであるため、説明は割愛する。
【００６４】
次に、本実施形態に係るモータ制御装置１０の特徴部分の効果について説明する。
【００６５】
本実施形態のタイマ部２６は、図１３に示すように、待機中を示す状態信号が入力された状態で、キャプチャ信号が入力されると、割り込みトリガ信号を生成する。一方、ソフト処理中を示す状態信号が入力された状態では、キャプチャ信号が入力されても、割り込みトリガ信号を生成しない。これによれば、６０度回転時間内でソフト処理が終了する場合、６０度回転時間を生成周期として割り込みトリガ信号を生成することができる。一方、モータ１００が高回転となり、６０度回転時間内でソフト処理が終了しない場合、ソフト処理時間に応じて、所定電気角のｎ倍（ｎは２以上の整数）に対応する時間を生成周期として割り込みトリガ信号を生成することができる。このように、割り込みトリガ信号を生成するタイミングを変更することができるので、高性能ＣＰＵを有するマイコンを用いなくとも、より高い回転数まで制御することができる。
【００６６】
特に本実施形態によれば、マスク回数の制限はないため、モータ１００の回転数に応じて、割り込みトリガ信号を生成するタイミング（換言すれば生成周期）を変更することができる。
【００６７】
以上、本発明の好ましい実施形態について説明したが、本発明は上述した実施形態になんら制限されることなく、本発明の主旨を逸脱しない範囲において、種々変形して実施することが可能である。
【符号の説明】
【００６８】
１０・・・モータ制御装置、１１・・・ホール素子（位置検出手段）、１２・・・マイクロコンピュータ、２０・・・ＣＰＵ、２１・・・ＲＯＭ、２２・・・ＲＡＭ、２３・・・モータ制御回路、２４・・・ソフト処理部（演算部）、２５・・・位置検出部、２６・・・タイマ部、２７・・・ＰＷＭ出力部、３０・・・キャプチャ制御部、３１・・・タイマカウンタ、３２・・・時間比較制御部、３３・・・記憶部、３４・・・ＡＮＤゲート、３５・・・マスク回数計数部、４０・・・時間比較器、４１・・・ＮＯＴゲート、４２・・・割り込みマスク制御部、４３・・・ＯＲゲート、４４・・・記憶部、１００・・・モータ、１００ａ・・・ロータ、１００ｂ・・・ステータ、１０１・・・ゲートドライバ、１０２・・・インバータ
【図１】
2014007894.tif 000003
【図２】
2014007894.tif 000004
【図３】
2014007894.tif 000005
【図４】
2014007894.tif 000006
【図５】
2014007894.tif 000007
【図６】
2014007894.tif 000008
【図７】
2014007894.tif 000009
【図８】
2014007894.tif 000010
【図９】
2014007894.tif 000011
【図１０】
2014007894.tif 000012
【図１１】
2014007894.tif 000013
【図１２】
2014007894.tif 000014
【図１３】
2014007894.tif 000015