(57)【要約】【課題】モータをスムーズに回転させることができるモータ制御回路を提供する。【解決手段】一実施形態によれば、モータ制御回路は、回転位置デコード部と、回転位置判定部と、モータ駆動信号生成部と、を備える。前記モータ制御回路は、センサで検出されたモータの回転位置に応じて当該モータを制御する。前記回転位置デコード部は、前記センサから供給されたセンサ信号に応じて、前記モータの回転位置を表す回転位置信号を生成する。前記回転位置判定部は、前記回転位置信号に基づいて前記モータの現在の回転位置を記憶して、前記回転位置信号が、記憶された当該現在の回転位置の次の回転位置を表した時に、記憶された当該現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号を生成する。前記モータ駆動信号生成部は、前記モータ制御信号に応じて、前記モータを駆動するモータ駆動信号を生成する。【選択図】図１
2013070524.tif 000002
【特許請求の範囲】
【請求項１】
センサで検出されたモータの回転位置に応じて当該モータを制御するモータ制御回路であって、
前記センサから供給されたセンサ信号に応じて、前記モータの回転位置を表す回転位置信号を生成し、前記センサ信号が異常である場合、異常を表す前記回転位置信号を生成する回転位置デコード部と、
前記回転位置信号に基づいて前記モータの現在の回転位置を記憶して、前記回転位置信号が、記憶された当該現在の回転位置の次の回転位置を表した時に、記憶された当該現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号を生成する回転位置判定部と、
前記モータ制御信号に応じて、前記モータを駆動するモータ駆動信号を生成するモータ駆動信号生成部と、を備え、
前記回転位置判定部は、前記回転位置信号が記憶された前記現在の回転位置の次の回転位置以外のある回転位置を表している第１の期間と、前記現在の回転位置が記憶されていない場合に前記回転位置信号がある回転位置を表している第２の期間と、前記回転位置信号が異常を表している第３の期間とに、計時を行うタイマー部を有し、
前記回転位置判定部は、前記タイマー部が前記第１の期間に予め定められた設定時間まで計時した場合、前記第１の期間に表された回転位置を表す前記モータ制御信号を生成し、前記タイマー部が前記第２の期間に前記設定時間まで計時した場合、前記第２の期間に表された回転位置を表す前記モータ制御信号を生成し、前記タイマー部が前記第３の期間に前記設定時間まで計時した場合、異常を表す前記モータ制御信号を生成する
ことを特徴とするモータ制御回路。
【請求項２】
センサで検出されたモータの回転位置に応じて当該モータを制御するモータ制御回路であって、
前記センサから供給されたセンサ信号に応じて、前記モータの回転位置を表す回転位置信号を生成する回転位置デコード部と、
前記回転位置信号に基づいて前記モータの現在の回転位置を記憶して、前記回転位置信号が、記憶された当該現在の回転位置の次の回転位置を表した時に、記憶された当該現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号を生成する回転位置判定部と、
前記モータ制御信号に応じて、前記モータを駆動するモータ駆動信号を生成するモータ駆動信号生成部と、を備える
ことを特徴とするモータ制御回路。
【請求項３】
前記回転位置判定部は、前記回転位置信号が、記憶された前記現在の回転位置の次の回転位置以外のある回転位置を表している第１の期間に計時を行うタイマー部を有し、
前記回転位置判定部は、前記タイマー部が前記第１の期間に予め定められた設定時間まで計時した場合、前記第１の期間に表された回転位置を表す前記モータ制御信号を生成する
ことを特徴とする請求項２に記載のモータ制御回路。
【請求項４】
前記タイマー部は、前記現在の回転位置が記憶されていない場合に前記回転位置信号がある回転位置を表している第２の期間に計時を行い、
前記回転位置判定部は、前記タイマー部が前記第２の期間に前記設定時間まで計時した場合、前記第２の期間に表された回転位置を表す前記モータ制御信号を生成する
ことを特徴とする請求項３に記載のモータ制御回路。
【請求項５】
前記回転位置デコード部は、前記センサ信号が異常である場合、異常を表す前記回転位置信号を生成し、
前記タイマー部は、前記回転位置信号が異常を表している第３の期間に計時を行い、
前記回転位置判定部は、前記タイマー部が前記第３の期間に前記設定時間まで計時した場合、異常を表す前記モータ制御信号を生成する
ことを特徴とする請求項３に記載のモータ制御回路。
【請求項６】
モータと、
前記モータの回転位置を検出してセンサ信号を出力するセンサと、
前記センサ信号に応じて、前記モータの回転位置を表す回転位置信号を生成する回転位置デコード部と、
前記回転位置信号に基づいて前記モータの現在の回転位置を記憶して、前記回転位置信号が、記憶された当該現在の回転位置の次の回転位置を表した時に、記憶された当該現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号を生成する回転位置判定部と、
前記モータ制御信号に応じて、前記モータを駆動するモータ駆動信号を生成するモータ駆動信号生成部と、を備える
ことを特徴とするモータ制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、モータ制御回路及びモータ制御システムに関する。
【背景技術】
【０００２】
ブラシレスモータを制御するモータ制御システムでは、センサで検出されたモータの回転位置に応じて当該モータを制御している。センサから出力されるセンサ信号はノイズやチャタリングを含んでいるため、フィルタを用いてノイズやチャタリングを除去している。そして、フィルタの出力信号に応じてモータの回転位置を表す回転位置信号を生成し、この回転位置信号に基づいて、モータを駆動するモータ駆動信号を生成している。
【０００３】
このように、フィルタを用いるため、回転位置信号は本来生成されるべきタイミングからの遅延時間を有している。従って、モータ駆動信号を生成するための信号処理を遅延時間だけ遅れて開始することになる。
【０００４】
しかし、フィルタで除去できない大きなノイズが発生した場合、このノイズがモータ駆動信号に含まれてしまう。そのため、モータに異常電流が流れたり、異常回転が発生したりすることで、モータのスムーズな回転を妨げる恐れがある。
【０００５】
一方、大きなノイズを除去可能なフィルタを用いる場合、回転位置信号の遅延時間が更に長くなるため、モータの回転に合わせた信号処理が困難となる。特に、モータの回転速度が高い場合には、信号処理が間に合わなくなり、モータのスムーズな回転を妨げる恐れがある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１１５６４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、モータをスムーズに回転させることができるモータ制御回路及びモータ制御システムを提供することにある。
【課題を解決するための手段】
【０００８】
一実施形態によれば、モータ制御回路は、回転位置デコード部と、回転位置判定部と、モータ駆動信号生成部と、を備える。前記モータ制御回路は、センサで検出されたモータの回転位置に応じて当該モータを制御する。前記回転位置デコード部は、前記センサから供給されたセンサ信号に応じて、前記モータの回転位置を表す回転位置信号を生成する。前記回転位置判定部は、前記回転位置信号に基づいて前記モータの現在の回転位置を記憶して、前記回転位置信号が、記憶された当該現在の回転位置の次の回転位置を表した時に、記憶された当該現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号を生成する。前記モータ駆動信号生成部は、前記モータ制御信号に応じて、前記モータを駆動するモータ駆動信号を生成する。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に係るモータ制御システムの概略的な構成を示すブロック図である。
【図２】第１の実施形態に係るモータ制御システムの信号を示す波形図である。
【図３】第１の実施形態に係る回転位置判定部の構成を示すブロック図である。
【図４】第１の実施形態に係る回転位置判定部の信号を示す波形図である。
【図５】第１の実施形態に係る１／６角判定部の構成を示すブロック図である。
【図６】第１の実施形態に係る回転位置異常判定部の構成を示すブロック図である。
【図７】第１の実施形態に係るチャタリングの除去を説明するための波形図である。
【図８】第１の実施形態に係るノイズの除去を説明するための波形図である。
【図９】第１の実施形態に係るモータ始動時等の動作を説明するための波形図である。
【図１０】第１の実施形態に係る異常時の動作を説明するための波形図である。
【図１１】第２の実施形態に係る回転位置判定部の構成を示すブロック図である。
【図１２】第２の実施形態に係る１／６角判定部の構成を示すブロック図である。
【図１３】第２の実施形態に係る回転位置異常判定部の構成を示すブロック図である。
【図１４】比較例に係るモータ制御システムの概略的な構成を示すブロック図である。
【図１５】比較例に係るモータ制御システムの信号を示す波形図である。
【発明を実施するための形態】
【００１０】
以下に、図面を参照して本発明の実施形態について説明する。これらの実施形態は、本発明を限定するものではない。
【００１１】
（第１の実施形態）
図１は、第１の実施形態に係るモータ制御システムの概略的な構成を示すブロック図である。図１に示すように、モータ制御システムは、モータ１００と、３つのセンサ１０１と、３つのセンサ信号入力端子１０２と、回転位置デコード部１０４と、回転位置判定部１０５と、モータ駆動信号生成部１０６と、を備える。回転位置デコード部１０４、回転位置判定部１０５、及び、モータ駆動信号生成部１０６は、モータ制御回路として機能する。
【００１２】
モータ１００は、三相ブラシレスモータであり、モータ駆動信号生成部１０６から供給される三相のモータ駆動信号によって回転動作する。
【００１３】
３つのセンサ１０１は、モータ１００の回転位置、即ちモータ１００の巻線と回転子との相対位置を検出する。センサ１０１は、例えばホールセンサ等の磁気センサであり、回転子の周囲に等間隔で配置されている。各センサ１０１は、モータ１００の回転位置に応じて対応するセンサ信号Ｓ１〜Ｓ３を発生して、対応するセンサ信号入力端子１０２に供給する。
【００１４】
モータ制御回路は、以下の構成により、センサ１０１で検出されたモータ１００の回転位置に応じて当該モータ１００を制御する。
【００１５】
回転位置デコード部１０４は、センサ１０１からセンサ信号入力端子１０２を介して供給された３つのセンサ信号Ｓ１〜Ｓ３をデコードして、モータ１００の回転位置を表す回転位置信号（デコード信号）phi1dec〜phi6dec, phi78decを生成する。具体的には、７つの回転位置信号phi1dec〜phi6dec, phi78decのうちの何れか１つがハイレベル（以下、“Ｈ”と称す）になる。６つの回転位置信号phi1dec〜phi6decは、それぞれモータ１００の回転位置に対応して“Ｈ”にされる。従って、６つの回転位置信号phi1dec〜phi6decのうちのどの信号が“Ｈ”であるかによって、モータ１００の回転位置を特定できる。
【００１６】
また、回転位置デコード部１０４は、正常回転時にはありえないセンサ信号Ｓ１〜Ｓ３の組み合わせ時、即ちセンサ信号Ｓ１〜Ｓ３が異常である場合、異常を表す回転位置信号phi1dec〜phi6dec, phi78decを生成する。具体的には、回転位置信号phi78decのみが“Ｈ”になる。
【００１７】
回転位置判定部１０５は、入力された回転位置信号phi1dec〜phi6dec, phi78decに基づいてモータ１００の現在の回転位置を記憶している。そして、回転位置判定部１０５は、回転位置信号phi1dec〜phi6dec, phi78decが、記憶された当該現在の回転位置の次の回転位置を表した時に、記憶された当該現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号dc1cw〜dc6cwを生成する。
【００１８】
つまり、回転位置判定部１０５は、回転位置信号phi1dec〜phi6dec, phi78decにより、モータ１００の回転位置が正しい回転順序の正しい回転位置か否か判定し、正しい回転位置の時のみに６つのモータ制御信号dc1cw〜dc6cwのうちの当該正しい回転位置に対応したモータ制御信号を“Ｈ”にする。モータ制御信号dc1cw〜dc6cwのうちのどの信号が“Ｈ”になっているかによって、モータ１００の回転位置を特定できる。本実施形態では、６０度毎の回転位置を特定できる。
【００１９】
モータ駆動信号生成部１０６は、モータ制御信号dc1cw〜dc6cwに応じて、モータ１００を駆動する三相のモータ駆動信号を生成する。モータ駆動信号生成部１０６は、トランジスタ等の複数のスイッチング素子を含んでいて、モータ駆動信号はこれらのスイッチング素子から出力される。モータ駆動信号は、例えば、ＰＷＭ信号である。
【００２０】
図２は、第１の実施形態に係るモータ制御システムの信号を示す波形図である。図２は、３つのセンサ信号Ｓ１〜Ｓ３と、６つの回転位置信号phi1dec〜phi6decと、６つのモータ制御信号dc1cw〜dc6cwとを示している。
【００２１】
センサ信号Ｓ１〜Ｓ３は、ハイレベルからローレベル（以下、“Ｌ”と称す）又は“Ｌ”から“Ｈ”に切り替わるときにチャタリング６を含んでいる。チャタリング６は、細かいパルスからなる。図２の例においてチャタリング６が無い理想的な場合を考えると、センサ信号Ｓ１は、時刻ｔ２に“Ｌ”から“Ｈ”に切り替わり、時刻ｔ５に“Ｌ”に切り替わる。センサ信号Ｓ２は、時刻ｔ４に“Ｌ”から“Ｈ”に切り替わり、時刻ｔ７に“Ｌ”に切り替わる。センサ信号Ｓ３は、時刻ｔ６に“Ｌ”から“Ｈ”に切り替わり、時刻ｔ９に“Ｌ”に切り替わる。このように、センサ信号Ｓ１〜Ｓ３は、互いに位相が１２０°ずれている。つまり、時刻ｔ２からｔ４（矢印Ａ）、ｔ４からｔ６（矢印Ｂ）、及び、ｔ６からｔ８（矢印Ｃ）において、それぞれ１２０°位相がずれている。即ち、例えば、時刻ｔ２からｔ８において、３６０°位相がずれている（モータ１００が１回転する）。
【００２２】
また、センサ信号Ｓ１，Ｓ３は、ノイズ７を含んでいる。
【００２３】
三相モータの場合６０度毎の回転位置を知る必要がある。そのため、前述のように、センサ信号Ｓ１〜Ｓ３をもとに、モータ１００の回転位置１／６角（６０度）ごとに1つだけ有効（“Ｈ”）となる回転位置信号phi1dec〜phi6decを回転位置デコード部１０４で生成する。図示した例では、センサ信号Ｓ１，Ｓ２，Ｓ３がこの順に“Ｌ，Ｌ，Ｈ”の時に回転位置信号phi1decが“Ｈ”になる。同様に、センサ信号Ｓ１，Ｓ２，Ｓ３がこの順に、“Ｈ，Ｌ，Ｈ”の時に回転位置信号phi2dec、“Ｈ，Ｌ，Ｌ”の時に回転位置信号phi3dec、“Ｈ，Ｈ，Ｌ”の時に回転位置信号phi4dec、“Ｌ，Ｈ，Ｌ”の時に回転位置信号phi5dec、“Ｌ，Ｈ，Ｈ”の時に回転位置信号phi6decが、“Ｈ”になる。後述するように、センサ信号Ｓ１〜Ｓ３が全て“Ｈ”又は全て“Ｌ”の時に、回転位置信号phi78decが“Ｈ”になる。また、チャタリング６やノイズ７が伝達されることにより、回転位置信号phi1dec〜phi6decには、チャタリング１３やノイズ１４などモータの制御に好ましくない信号が含まれている。
【００２４】
前述のように、回転位置判定部１０５は、現在の回転位置を記憶しており、現在の回転位置の次の回転位置を表す回転位置信号が有効になった時、即座に記憶した回転位置を更新すると共に次の回転位置に対応したモータ制御信号dc1cw〜dc6cwを生成する。このようにして、例えば、回転位置信号phi1decが“Ｈ”になった時刻ｔ１においてモータ制御信号dc6cwは“Ｌ”になると共にモータ制御信号dc1cwは“Ｈ”になり、回転位置信号phi2decが“Ｈ”になった時刻ｔ２においてモータ制御信号dc1cwは“Ｌ”になると共にモータ制御信号dc1cwが“Ｈ”になる。以降も同様である。つまり、チャタリングの影響を受けずに、理想的なタイミングでモータ制御信号dc1cw〜dc6cwを生成できる。
【００２５】
なお、後述するように、モータ制御信号dc1cw〜dc6cwの遷移は遅延時間３１を有するが、この遅延時間３１は図２の時間軸では図示できない程度の長さである。
【００２６】
また、後述するように、モータ１００の始動時や再始動時において現在の回転位置が記憶されていない時、あるいはノイズ７以外の要因（例えば回転位置がずれた場合）で次の回転位置以外の回転位置を表す回転位置信号が有効になった時、回転位置判定部１０５は、記憶された回転位置を即座に更新しない。そして、回転位置判定部１０５は、ノイズ７で誤動作しない様に設定された設定時間以上継続して回転位置信号が有効であった場合に、記憶された回転位置を更新する。
【００２７】
以下に、回転位置判定部１０５の構成の一例及び動作をより詳しく説明する。
【００２８】
図３は、第１の実施形態に係る回転位置判定部１０５の構成を示すブロック図である。図３に示すように、回転位置判定部１０５は、判定クリア部１１０と、６つの１／６角判定部１１１−１〜１１１−６と、回転位置異常判定部１１２と、を有する。
【００２９】
１／６角判定部１１１−１〜１１１−６は、それぞれ、信号beforin＝“Ｈ”の時に信号phi_en＝“Ｈ”になると、信号clrout及び信号dcwを“Ｈ”にする。これ以降、信号clrout=“Ｈ”と信号dcw=“Ｈ”は記憶される。その後、信号rsclr=“Ｈ”になると、信号clrout=“Ｌ”且つ信号dcw=“Ｌ”になる。これ以外は、信号clrout=“Ｌ”且つ信号dcw=“Ｌ”である。
【００３０】
１／６角判定部１１１−１は、回転位置信号phi1decが信号phi_enとして入力され、回転位置クリア信号rsclr1が信号rsclrとして入力され、クリア信号clrout6が信号beforinとして入力され、信号clroutをクリア信号clrout1として出力し、信号dcwをモータ制御信号dc1cwとして出力する。
【００３１】
１／６角判定部１１１−２は、回転位置信号phi2decが信号phi_enとして入力され、回転位置クリア信号rsclr2が信号rsclrとして入力され、クリア信号clrout1が信号beforinとして入力され、信号clroutをクリア信号clrout2として出力し、信号dcwをモータ制御信号dc2cwとして出力する。
【００３２】
１／６角判定部１１１−３は、回転位置信号phi3decが信号phi_enとして入力され、回転位置クリア信号rsclr3が信号rsclrとして入力され、クリア信号clrout2が信号beforinとして入力され、信号clroutをクリア信号clrout3として出力し、信号dcwをモータ制御信号dc3cwとして出力する。
【００３３】
１／６角判定部１１１−４は、回転位置信号phi4decが信号phi_enとして入力され、回転位置クリア信号rsclr4が信号rsclrとして入力され、クリア信号clrout3が信号beforinとして入力され、信号clroutをクリア信号clrout4として出力し、信号dcwをモータ制御信号dc4cwとして出力する。
【００３４】
１／６角判定部１１１−５は、回転位置信号phi5decが信号phi_enとして入力され、回転位置クリア信号rsclr5が信号rsclrとして入力され、クリア信号clrout4が信号beforinとして入力され、信号clroutをクリア信号clrout5として出力し、信号dcwをモータ制御信号dc5cwとして出力する。
【００３５】
１／６角判定部１１１−６は、回転位置信号phi6decが信号phi_enとして入力され、回転位置クリア信号rsclr6が信号rsclrとして入力され、クリア信号clrout5が信号beforinとして入力され、信号clroutをクリア信号clrout6として出力し、信号dcwをモータ制御信号dc6cwとして出力する。
【００３６】
このように、１／６角判定部１１１−１〜１１１−６はリング状に接続されている。
【００３７】
判定クリア部１１０は、１／６角判定部１１１−１〜１１１−６及び回転位置異常判定部１１２からのクリア信号clrout1〜clrout6, clrout78に基づいて回転位置クリア信号rsclr1〜rsclr6, rsclr78を生成して、１／６角判定部１１１−１〜１１１−６及び回転位置異常判定部１１２へ出力する。具体的には、あるクリア信号clrout1〜clrout6が“Ｈ”になると、判定クリア部１１０は、対応する回転位置クリア信号を“Ｌ”にすると共に、他の回転位置クリア信号を“Ｈ”にする。つまり、例えば、クリア信号clrout1が“Ｈ”の時、対応する回転位置クリア信号rsclr1を“Ｌ”にすると共に他の回転位置クリア信号rsclr2〜rsclr6, rsclr78を“Ｈ”にして、１／６角判定部１１１−２〜１１１−６及び回転位置異常判定部１１２をクリアする。また、クリア信号clrout78が“Ｈ”になると、判定クリア部１１０は、対応する回転位置クリア信号rsclr78を“Ｌ”にすると共に、他の回転位置クリア信号rsclr1〜rsclr6を“Ｈ”にして、１／６角判定部１１１−１〜１１１−６をクリアする。
【００３８】
回転位置異常判定部１１２は、回転位置信号phi1dec〜phi6dec, phi78decが所定の時間継続して異常であるか否か判定する。具体的には、回転位置異常判定部１１２は、信号phi_en＝“Ｈ”（回転位置信号phi78dec=“Ｈ”）が所定の時間継続すると、異常であると判定して、信号clroutを“Ｈ”にする。これ以降、信号clrout=“Ｈ”は記憶される。その後、信号rsclr=“Ｈ”になると、信号clrout=“Ｌ”になる。
【００３９】
図４は、第１の実施形態に係る回転位置判定部１０５の信号を示す波形図である。図４は、図２の波形図に回転位置信号phi78dec、クリア信号clrout1〜clrout6, clrout78、及び、回転位置クリア信号rsclr1〜rsclr6， rsclr78を追加した上で、時刻ｔ１３以降の波形も追加した波形図である。時刻ｔ１３以降、センサ信号Ｓ１〜Ｓ３は、正常回転時にはありえない全て“Ｌ”になる状態３５と全て“Ｈ”になる状態３６とを含んでいる。
【００４０】
回転位置判定部１０５において、モータ回転中は、回転位置１／６角（６０°）ごとに１／６角判定部１１１−１から１／６角判定部１１１−６の方向に制御が移行していく。つまり、図４に矢印３２で示されるようにクリア信号clrout1〜clrout6が順次“Ｈ”になる。１／６角判定部１１１−６に移行後、その次は１／６角判定部１１１−１にリング状に制御が移行する。判定クリア部１１０からの回転位置クリア信号rsclr1〜rsclr6、rsclr78により、１／６角判定部１１１−１〜１１１−６を排他的にクリアして、クリア信号clrout1〜clrout6のうちの1つだけが“Ｈ”となる。移行する条件は、移行前の１／６角判定部からの信号clrout=“Ｈ”かつ信号phi_en=“Ｈ”である。また、後述するように、移行前の１／６角判定部からのclroutが“Ｌ”でも予め定められた設定時間の間phi_en=“Ｈ”であれば、その１／６角判定部が有効になる。
【００４１】
図５は、第１の実施形態に係る１／６角判定部１１１−１の構成を示すブロック図である。１／６角判定部１１１−１〜１１１−６は同一の構成を有しているため、１／６角判定部１１１−１について説明する。図５に示すように、１／６角判定部１１１−１は、予想不一致検出部１２０と、不一致タイマー部１２１と、回転位置記憶判定部１２２と、現在位置記憶部１２３と、Ｄフリップフロップ１２４と、論理積回路１２５と、を含む。
【００４２】
予想不一致検出部１２０は、自身の信号clrout=“Ｌ”、信号beforin=“Ｌ”（即ち、移行前の１／６角判定部の信号clrout=“Ｌ”）、且つ、信号phi_en=“Ｈ”の時のみタイマーイネーブル信号tm_en=“Ｈ”となり、これにより不一致タイマー部１２１のタイマーをスタートさせる。それ以外では、タイマーイネーブル信号tm_en=“Ｌ”となる。
【００４３】
不一致タイマー部１２１は、タイマーイネーブル信号tm_en=“Ｈ”の時のみカウントアップを行い、設定したカウント値に達した時（設定時間まで計時した時）にタイマー出力信号timer_out=“Ｈ”とする。タイマーイネーブル信号tm_en=“Ｌ”のときはカウンタ値をクリアする。
【００４４】
回転位置記憶判定部１２２は、タイマー出力信号timer_out=“Ｈ”の時、又は、信号beforin=“Ｈ”且つ信号phi_en=“Ｈ”の時に、信号clrout=“Ｈ”を出力する。あるいは、信号df2out=“Ｈ”且つ信号rsclr=“Ｈ”であれば信号clrout=“Ｌ”を出力する。それ以外では、信号clroutは保持される。
【００４５】
現在位置記憶部１２３は、信号clroutを記憶する。
【００４６】
Ｄフリップフロップ１２４は、信号clroutが入力端子ｄに入力され、クロック信号clockがクロック端子ｃｋに入力され、出力端子ｑから信号df2outを出力する。論理積回路１２５は、信号clroutと信号df2outの論理積を信号dcwとして出力する。
【００４７】
図６は、第１の実施形態に係る回転位置異常判定部１１２の構成を示すブロック図である。図６に示すように、回転位置異常判定部１１２は、予想不一致検出部１２０’と、不一致タイマー部１２１と、回転位置記憶判定部１２２’と、現在位置記憶部１２３と、を含む。不一致タイマー部１２１と現在位置記憶部１２３は、１／６角判定部１１１−１のものと同一である。
【００４８】
予想不一致検出部１２０’は、自身の信号clrout=“Ｌ”、且つ、信号phi_en=“Ｈ”の時のみタイマーイネーブル信号tm_en=“Ｈ”となり、これにより不一致タイマー部１２１のタイマーをスタートさせる。それ以外では、タイマーイネーブル信号tm_en=“Ｌ”となる。
【００４９】
回転位置記憶判定部１２２’は、不一致タイマー部１２１が設定値までカウントした場合に、信号clrout=“Ｈ”を出力する。具体的には、回転位置記憶判定部１２２’は、タイマー出力信号timer_out=“Ｈ”の時に信号clrout=“Ｈ”を出力する。信号clrout=“Ｈ”は、現在位置記憶部１２３に記憶される。
【００５０】
次に、チャタリングの除去動作を詳細に説明する。
【００５１】
図７は、第１の実施形態に係るチャタリングの除去を説明するための波形図である。図７は、図４の時刻ｔ９からｔ１０付近を拡大して表すと共に、主に１／６角判定部１１１−３の各部の信号を示している。
【００５２】
図７に示すように、センサ信号Ｓ３は時刻ｔ９にて”Ｌ”になるが、その後センサ信号Ｓ３にチャタリング６ａが発生している。これにより、時刻ｔ９にて“Ｈ”になった回転位置信号phi3dec（即ち１／６角判定部１１１−３の信号phi_en）にも、チャタリング１３が発生している。
【００５３】
時刻ｔ９において、１／６角判定部１１１−３の回転位置記憶判定部１２２は、信号beforin=“Ｈ”（前段の１／６角判定部１１１−２のクリア信号clrout2=“Ｈ”）であるため、回転位置信号phi3dec（信号phi_en）の立ち上りを即時受付し、時刻ｔ９ａにて信号clrout=“Ｈ”（クリア信号clrout3=“Ｈ”）となる。これにより、クロック信号clockの次のパルスにより、時刻ｔ９ｂにて信号df2out=“Ｈ”になると共に信号dcw=“Ｈ”（モータ制御信号dc3cw=“Ｈ”）になる。つまり、モータ制御信号dc3cwは、時刻ｔ９から遅延時間３１後に“Ｈ”になる。
【００５４】
また、時刻ｔ９ａで信号clrout=“Ｈ”（クリア信号clrout3=“Ｈ”）になると、判定クリア部１１０により、その後時刻ｔ９ｂで信号rsclr=“Ｌ”（回転位置クリア信号rsclr3=“Ｌ”）になると共に回転位置クリア信号rsclr2=“Ｈ”（図４参照）になる。そのため、１／６角判定部１１１−２は時刻ｔ９ｂでクリアされてクリア信号clrout2=“Ｌ”になる。つまり、信号clrout=“Ｈ”（クリア信号clrout3=“Ｈ”）になってから期間３７の後、クリア信号clrout2=“Ｌ”になる。このように、もし信号clrout（クリア信号clrout3）をそのまま信号dcw（モータ制御信号dc3cw）として出力すると、前段の１／６角判定部１１１−２の信号clrout（クリア信号clrout2）と“Ｈ”期間が重なる期間３７がある。Ｄフリップフロップ１２４と論理積回路１２５は、その期間３７を回避するための信号dcwのタイミング調整用の回路である。
【００５５】
次に、ノイズの除去動作を詳細に説明する。
【００５６】
図８は、第１の実施形態に係るノイズの除去を説明するための波形図である。図８は、図４の時刻ｔ９からｔ１０付近を拡大して表すと共に、主に１／６角判定部１１１−２の各部の信号を示している。
【００５７】
図８に示すように、また前述のように、センサ信号Ｓ３は時刻ｔ９からのチャタリング６ａが収まった後、“Ｌ”を保つが、その後、時刻ｔ９ｃにて“Ｈ”になる。つまり、時刻ｔ９ｃから、センサ信号Ｓ３にノイズ７が発生している。これにより、回転位置信号phi2dec（即ち１／６角判定部１１１−２の信号phi_en）も、時刻ｔ９ｃにて“Ｈ”になる（ノイズ１４）。
【００５８】
ノイズ１４により、時刻ｔ９ｃにおいて、１／６角判定部１１１−２では、信号beforin=“Ｌ”（クリア信号clrout1=“Ｌ”）かつ信号phi_en=“Ｈ”（回転位置信号phi2dec=“Ｈ”）である。そのため、１／６角判定部１１１−２において、タイマーイネーブル信号tm_en=“Ｈ”となり不一致タイマー部１２１のタイマーをスタートさせる。しかし、タイマーイネーブル信号tm_en=“Ｈ”の期間３３（即ちノイズ７の発生期間）が、不一致タイマー部１２１の設定時間より短く、タイマー出力信号timer_out=“Ｈ”となる前にタイマーイネーブル信号tm_en=“Ｌ”となる。そのため、ノイズ７は無視され、時刻ｔ９ｃ以前と同じ信号clrout=“Ｌ”（クリア信号clrout2=“Ｌ”）のままとなる。従って、モータ制御信号dc1cw〜dc6cwに対するノイズ７の影響はない（状態１５）。
【００５９】
なお、不一致タイマー部１２１の設定時間は、ノイズを無視できるように、実験やシミュレーションによって適宜決定すればよい。
【００６０】
このように、タイマー部（回転位置判定部１０５の７つの不一致タイマー部１２１）は、回転位置信号phi1dec〜phi6dec, phi78decが、記憶された現在の回転位置の次の回転位置以外のある回転位置を表している第１の期間に計時を行う。そして、回転位置判定部１０５は、タイマー部が第１の期間に設定時間まで計時した場合、第１の期間に表された回転位置を表すモータ制御信号dc1cw〜dc6cwを生成する。
【００６１】
次に、モータ始動時や再始動時の現在の回転位置が記憶されていない状態の動作を詳細に説明する。
【００６２】
図９は、第１の実施形態に係るモータ始動時等の動作を説明するための波形図である。図９は、主に１／６角判定部１１１−３の各部の信号を示している。また、図９は、図４とは異なる状態を示し、時刻ｔ２０以前において、モータ制御信号dc1cw〜dc6cw及びクリア信号clrout1〜clrout6が全て“Ｌ”であり、即ち現在の回転位置が記憶されていない。
【００６３】
時刻ｔ２０から始まるセンサ信号Ｓ３のチャタリング６ａにより、回転位置信号phi3decにもチャタリング１３が発生する。しかし、１／６角判定部１１１−３において信号beforin=“Ｌ”（クリア信号clrout2=“Ｌ”）であるため、回転位置信号phi3decの変化は無視され、信号dcw（モータ制御信号dc3cw）は“Ｌ”のまま変化しない。チャタリング６ａが収まった後は、時刻ｔ２０ａ以降、信号phi_en=“Ｈ”（回転位置信号phi3dec=“Ｈ”）が継続する。これにより、タイマーイネーブル信号tm_en=“Ｈ”も期間３４の間継続する。そのため、時刻ｔ２０ｂにて不一致タイマー部１２１が設定時間まで計時してタイマー出力信号timer_out=“Ｈ”となる。これにより信号clrout=“Ｈ”（クリア信号clrout3=“Ｈ”）となった後で信号dcw（モータ制御信号dc3cw）も“Ｈ”になる。
【００６４】
時刻ｔ２１以降は、前述した通常動作の通り、１／６角判定部１１１−４、１／６角判定部１１１−５、１／６角判定部１１１−６、１／６角判定部１１１−１等の順番でループ状に制御が移行していく。
【００６５】
このように、タイマー部は、現在の回転位置が記憶されていない場合に回転位置信号phi1dec〜phi6dec, phi78decがある回転位置を表している第２の期間に計時を行う。そして、回転位置判定部１０５は、タイマー部が第２の期間に設定時間まで計時した場合、第２の期間に表された回転位置を表すモータ制御信号dc1cw〜dc6cwを生成する。
【００６６】
次に、正常回転時にはありえないセンサ信号Ｓ１〜Ｓ３の組み合わせが発生した異常時の動作を説明する。
【００６７】
図１０は、第１の実施形態に係る異常時の動作を説明するための波形図である。図１０は、図４の時刻ｔ１４〜ｔ１５付近を拡大して表すと共に、主に回転位置異常判定部１１２の各部の信号を示している。
【００６８】
時刻ｔ１４からｔ１５において、ノイズ以外の要因でセンサ信号Ｓ３が“Ｌ”になり、その結果、正常回転時にはありえない、センサ信号Ｓ１〜Ｓ３が全て“Ｌ”の状態３５になっている。これにより、この時刻ｔ１４からｔ１５で回転位置信号phi78dec=“Ｈ”となる。よって、回転位置異常判定部１１２の予想不一致検出部１２０’では、自身の信号clrout=“Ｌ”且つ信号phi_en=“Ｈ”（回転位置信号phi78dec=“Ｈ”）であるため、時刻ｔ１４にてタイマーイネーブル信号tm_en=“Ｈ”となり、不一致タイマー部１２１のタイマーをスタートする。タイマーイネーブル信号tm_en=“Ｈ”は期間３４の間継続する。そのため、時刻ｔ１４ｂにて不一致タイマー部１２１が設定時間まで計時してタイマー出力信号timer_out=“Ｈ”となる。これにより信号clrout=“Ｈ”（クリア信号clrout78=“Ｈ”）となるため、判定クリア部１１０により、１／６角判定部１１１−１〜１１１−６をクリアする回転位置クリア信号rsclr1〜rsclr6が“Ｈ”となる（図４参照）。従って、モータ制御信号dc1cw〜dc6cw及びクリア信号clrout1〜clrout6が全て“Ｌ”となる（図４参照）。
【００６９】
その後、時刻ｔ１５においてセンサ信号Ｓ１〜Ｓ３が正常に復帰した時は、前述したモータ始動時や再始動時の現在の回転位置が記憶されていない状態の動作を経て、正常回転動作に復帰する。
【００７０】
また、図４を参照すると、時刻ｔ１５以降に、ノイズ以外の要因でセンサ信号Ｓ２が“Ｈ”になり、その結果、正常回転時にはありえない、センサ信号Ｓ１〜Ｓ３が全て“Ｈ”の状態３６になっている。これにより、回転位置信号phi78dec=“Ｈ”となる。これ以降の動作は、上述した状態３５の動作と同様である。
【００７１】
このように、タイマー部は、回転位置信号phi1dec〜phi6dec, phi78decが異常を表している第３の期間に計時を行う。そして、回転位置判定部１０５は、タイマー部が第３の期間に設定時間まで計時した場合、異常を表す全て“Ｌ”のモータ制御信号dc1cw〜dc6cwを生成する。
【００７２】
このような制御により、センサ信号Ｓ１〜Ｓ３が異常な状態が設定時間続いた時にモータ制御信号dc1cw〜dc6cwが全て“Ｌ”となるため、モータ１００に異常電流が流れることや、モータ１００が異常回転することを防止できる。
【００７３】
以上で説明したように、本実施形態によれば、モータ１００の現在の回転位置を記憶して、回転位置信号phi1dec〜phi6dec, phi78decが、記憶された現在の回転位置の次の回転位置（予測された回転位置）を表した時に、記憶された現在の回転位置を当該次の回転位置に更新すると共に、当該次の回転位置を表すモータ制御信号dc1cw〜dc6cwを生成するようにしている。従って、モータ１００の回転位置が現在の回転位置の次の回転位置、即ち、予測された正しい回転位置になった時に、センサ信号Ｓ１〜Ｓ３のチャタリング６を無視して、即座に次の回転位置を表すモータ制御信号dc1cw〜dc6cwを生成できる。よって、チャタリング６の影響を受けにくい上、遅延時間３１を短くできる。遅延時間３１を短くできるので、モータ１００の回転速度が高い場合であってもモータ駆動信号生成部１０６における信号処理を確実に行うことができる。
【００７４】
また、回転位置信号phi1dec〜phi6dec, phi78decが次の回転位置以外のある回転位置を表している第１の期間に計時を行い、設定時間まで計時した場合、その回転位置を表すモータ制御信号dc1cw〜dc6cwを生成するようにしている。従って、上記設定時間以下の発生期間のノイズ７がセンサ信号Ｓ１〜Ｓ３に加わった場合では、上記設定時間まで計時されないため、このノイズ７に対応したモータ制御信号dc1cw〜dc6cwは生成されない。即ち、このようなノイズは無視されるので、ノイズの影響を受けにくい。上記設定時間を長くしても遅延時間３１の長さには影響しないため、遅延時間３１を短く保った上で大きな（発生期間の長い）ノイズを除去できる。
【００７５】
以上より、ノイズやチャタリングの影響を受けにくくして、モータ１００をスムーズに回転させることができる。
【００７６】
（第２の実施形態）
本実施形態では、現在位置記憶部及び不一致タイマー部を１つずつ有するようにしている。
【００７７】
図１１は、第２の実施形態に係る回転位置判定部１０５ａの構成を示すブロック図である。図１２は、第２の実施形態に係る１／６角判定部１１１ａ−１の構成を示すブロック図であり、図１３は、第２の実施形態に係る回転位置異常判定部１１２ａの構成を示すブロック図である。
【００７８】
図１１に示すように、回転位置判定部１０５ａは、判定クリア部１１０と、１／６角判定部１１１ａ−１〜１１１ａ−６と、回転位置異常判定部１１２ａと、不一致タイマー部１２１ａと、現在位置記憶部１２３ａと、を有する。第1の実施形態と同一の構成要素に同一の符号を付して説明を省略し、第１の実施形態と異なる部分のみについて以下に説明する。
【００７９】
図１２に示すように、１／６角判定部１１１ａ−１は、第１の実施形態の１／６角判定部１１１−１から現在位置記憶部１２３と不一致タイマー部１２１を取り除いた構成を有している。つまり、予想不一致検出部１２０からのタイマーイネーブル信号tm_enは、１／６角判定部１１１ａ−１から出力される。１／６角判定部１１１ａ−１に入力されたタイマー出力信号timer_outは、回転位置記憶判定部１２２に供給される。１／６角判定部１１１ａ−２〜１１１ａ−６は、この１／６角判定部１１１ａ−１と同一の構成を有している。
【００８０】
同様に、図１３に示すように、回転位置異常判定部１１２ａは、第１の実施形態の回転位置異常判定部１１２から現在位置記憶部１２３と不一致タイマー部１２１を取り除いた構成を有している。
【００８１】
図１１に示すように、クリア信号clrout1〜clrout6, clrout78は、現在位置記憶部１２３ａにも供給されている。現在位置記憶部１２３ａは、例えば、３ビットのレジスタを有し、クリア信号clrout1〜clrout6, clrout78のうちの何れが“Ｈ”になっているかを記憶する。
【００８２】
１／６角判定部１１１ａ−１〜１１１ａ−６及び回転位置異常判定部１１２ａは、それぞれ対応するタイマーイネーブル信号tm_en1〜tm_en6, tm_en78を出力し、これらの信号は不一致タイマー部１２１ａに供給されている。不一致タイマー部１２１ａは、タイマー出力信号timer_out1〜timer_out6, timer_out78を出力し、各信号は対応する１／６角判定部１１１ａ−１〜１１１ａ−６及び回転位置異常判定部１１２ａに供給されている。不一致タイマー部１２１ａは、１つのタイマーを有し、タイマーイネーブル信号tm_en1〜tm_en6, tm_en78の何れかが“Ｈ”になると計時を開始する。そして、第１の実施形態と同様に、設定時間まで計時すると、“Ｈ”になっているタイマーイネーブル信号tm_en1〜tm_en6, tm_en78に対応して、タイマー出力信号timer_out1〜timer_out6, timer_out78の何れかを“Ｈ”にする。
【００８３】
このように、本実施形態によれば、１／６角判定部１１１ａ−１〜１１１ａ−６及び回転位置異常判定部１１２ａは、１つの現在位置記憶部１２３ａ及び１つの不一致タイマー部１２１ａを共用している。従って、第１の実施形態より回路規模を縮小できる。
【００８４】
また、第１の実施形態と同様の効果も得られる。
【００８５】
以上で説明した各実施形態によれば、モータ１００をスムーズに回転させることができる。
【００８６】
（比較例）
ここで、発明者等が知得する比較例のモータ制御システムについて、上述してきた第１及び第２の実施形態のモータ制御システムと比較して説明する。
【００８７】
図１４は、比較例に係るモータ制御システムの概略的な構成を示すブロック図である。図１４に示すように、このモータ制御システムは、モータ１００と、３つのセンサ１０１と、３つのフィルタ１０３と、回転位置デコード部１０４と、モータ駆動信号生成部１０６と、を備える。即ち、第１及び第２の実施形態のモータ制御システムから、回転位置判定部１０５を除去すると共に、フィルタ１０３を加えて構成されている。
【００８８】
フィルタ１０３は、例えばアナログフィルタであり、対応するセンサ信号Ｓ１〜Ｓ３からチャタリング及びノイズを除去して、対応するフィルタ出力信号Ｆ１〜Ｆ３を回転位置デコード部１０４に供給する。
【００８９】
図１５は、比較例に係るモータ制御システムの信号を示す波形図である。図１５は、図２の第１の実施形態の波形図に対応する。即ち、センサ信号Ｓ１〜Ｓ３は、図２に示したものと同一である。
【００９０】
センサ信号Ｓ１〜Ｓ３のチャタリング６は、フィルタ３で除去される。従って、フィルタ出力信号Ｆ１〜Ｆ３は、チャタリングを含まないが、遅延時間１０を有している。例えば、センサ信号Ｓ１は時刻ｔ２において“Ｈ”になっているが、フィルタ出力信号Ｆ１は時刻ｔ２から遅延時間１０だけ遅れて“Ｈ”になる。これにより、回転位置信号phi1dec〜phi6decも、遅延時間１０と同等の遅延時間１１を有することになる。例えば、遅延時間１１は約１００μｓである。
【００９１】
しかし、センサ信号Ｓ１及びＳ３に発生したノイズ７は、フィルタ３で除去できず、ノイズ８としてフィルタ出力信号Ｆ１及びＦ３に伝達している。そして、このノイズ８は、ノイズ９として回転位置信号phi1dec〜phi3decに伝達している。
【００９２】
このように、比較例によれば、第１及び第２の実施形態と異なり、図１５に示したようなフィルタ３で除去できない大きな（発生期間の長い）ノイズ７が発生した場合、モータ駆動信号である回転位置信号phi1dec〜phi6decにノイズ９が含まれてしまう。そのため、モータ１００に異常電流が流れたり、異常回転が発生したりすることで、モータ１００のスムーズな回転を妨げる恐れがある。一方、このような大きなノイズを除去可能なフィルタ３を用いる場合、遅延時間１１が長くなるため、モータ駆動信号生成部１０６においてモータ１００の回転に合わせた信号処理が困難となる。
【００９３】
これに対して、本実施形態によれば、ノイズを除去した上で遅延時間３１を例えば数μｓに改善できる。
【００９４】
（変形例）
以上の説明では、三相モータを用いたモータ制御回路及びモータ制御システムについて説明したが、これに限られない。各実施形態は、四相モータ等の三相以外のモータにも適用できる。
【００９５】
また、センサ１０１の数や、回転位置信号及びモータ駆動信号の数も、上記実施形態の例に限られない。
【００９６】
また、以上で説明したハイレベルとローレベルを逆にしてもよい。
【００９７】
上述した実施形態で説明したモータ制御回路の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、モータ制御回路の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００９８】
また、モータ制御回路の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００９９】
以上、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０１００】
１００  モータ
１０１  センサ
１０２  センサ信号入力端子
１０４  回転位置デコード部
１０５，１０５ａ  回転位置判定部
１０６  モータ駆動信号生成部
１１０  判定クリア部
１１１−１〜１１１−６，１１１ａ−１〜１１１ａ−６  １／６角判定部
１１２，１１２ａ  回転位置異常判定部
１２０，１２０’  予想不一致検出部
１２１，１２１ａ  不一致タイマー部（タイマー部）
１２２，１２２’  回転位置記憶判定部
１２３，１２３ａ  現在位置記憶部
１２４  Ｄフリップフロップ
１２５  論理積回路
【図１】
2013070524.tif 000003
【図２】
2013070524.tif 000004
【図３】
2013070524.tif 000005
【図４】
2013070524.tif 000006
【図５】
2013070524.tif 000007
【図６】
2013070524.tif 000008
【図７】
2013070524.tif 000009
【図８】
2013070524.tif 000010
【図９】
2013070524.tif 000011
【図１０】
2013070524.tif 000012
【図１１】
2013070524.tif 000013
【図１２】
2013070524.tif 000014
【図１３】
2013070524.tif 000015
【図１４】
2013070524.tif 000016
【図１５】
2013070524.tif 000017