(57)【要約】【課題】安定したモータ制御を実現しつつ起動時間の短縮を可能とする。【解決手段】モータを制御するモータ制御装置は、モータに流れる電流を検出する検出手段と、検出手段により検出した電流からモータの回転速度を推定する推定手段と、強制転流制御によりモータを駆動する第１の駆動手段と、推定手段により推定されたモータの回転速度に基づいてベクトル制御によりモータを駆動する第２の駆動手段と、を有する。検出手段による検出及び推定手段による推定の実行頻度に関して、第１の駆動手段による駆動から第２の駆動手段による駆動に切り替えてからの第２の期間における第１の実行頻度が、当該第２の期間に後続する第３の期間における第２の実行頻度より高くなるよう制御する。【選択図】図１
2019187233.tif 000002
【特許請求の範囲】
【請求項１】
モータを制御するモータ制御装置であって、
前記モータに流れる電流を検出する検出手段と、
前記検出手段により検出した電流から前記モータの回転速度を推定する推定手段と、
強制転流制御により前記モータを駆動する第１の駆動手段と、
前記推定手段により推定された前記モータの回転速度に基づいてベクトル制御により前記モータを駆動する第２の駆動手段と、
前記モータの制御開始からの第１の期間が経過するまでの間は前記第１の駆動手段により前記モータを駆動するよう制御し、該第１の期間の経過した後は前記第２の駆動手段により前記モータを駆動するよう制御する第１の制御手段と、
前記検出手段及び前記推定手段の実行頻度を制御する第２の制御手段と、
を有し、
前記第２の制御手段は、前記検出手段による検出及び前記推定手段による推定の実行頻度に関して、前記第１の駆動手段による駆動から前記第２の駆動手段による駆動に切り替えてからの第２の期間における第１の実行頻度が、該第２の期間に後続する第３の期間における第２の実行頻度より高くなるよう制御する
ことを特徴とするモータ制御装置。
【請求項２】
前記第１の期間は、前記モータの制御開始から前記モータの回転速度が所定の閾値速度に到達するまでの期間である
ことを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記第２の期間は、前記第２の駆動手段による駆動に切り替えてから前記モータの回転速度が目標速度に到達するまでの期間である
ことを特徴とする請求項１又は２に記載のモータ制御装置。
【請求項４】
前記第３の期間は、前記モータが目標速度で回転している期間である
ことを特徴とする請求項１乃至３の何れか１項に記載のモータ制御装置。
【請求項５】
前記第２の駆動手段は、前記推定手段により推定した前記モータの回転速度と目標速度との差分に応じて前記ベクトル制御を行う
ことを特徴とする請求項１乃至４の何れか１項に記載のモータ制御装置。
【請求項６】
前記第１の実行頻度は、前記第２の駆動手段における１制御周期にＮ回（Ｎは２以上の整数）の頻度であり、
前記第２の実行頻度は、前記第２の駆動手段における１制御周期に１回の頻度である
ことを特徴とする請求項１乃至５の何れか１項に記載のモータ制御装置。
【請求項７】
前記第２の制御手段は、前記第２の期間において、前記ベクトル制御以外の処理の負荷状況に基づき、前記第１の実行頻度を高くするか否かを決定する
ことを特徴とする請求項１乃至６の何れか１項に記載のモータ制御装置。
【請求項８】
前記第２の制御手段は、前記第２の期間において、前記ベクトル制御以外の処理よりも前記ベクトル制御の優先度を上げることにより、前記第１の実行頻度を高くする
ことを特徴とする請求項１乃至７の何れか１項に記載のモータ制御装置。
【請求項９】
モータを制御するモータ制御装置の制御方法であって、
前記モータ制御装置は、
前記モータに流れる電流を検出する検出手段と、
前記検出手段により検出した電流から前記モータの回転速度を推定する推定手段と、
強制転流制御により前記モータを駆動する第１の駆動手段と、
前記推定手段により推定された前記モータの回転速度に基づいてベクトル制御により前記モータを駆動する第２の駆動手段と、
を有し、
前記制御方法は、
前記モータの制御開始からの第１の期間が経過するまでの間は前記第１の駆動手段により前記モータを駆動するよう制御し、該第１の期間の経過した後は前記第２の駆動手段により前記モータを駆動するよう制御する第１の制御工程と、
前記検出手段による検出及び前記推定手段による推定の実行頻度に関して、前記第１の駆動手段による駆動から前記第２の駆動手段による駆動に切り替えてからの第２の期間における第１の実行頻度が、該第２の期間に後続する第３の期間における第２の実行頻度より高くなるよう制御する第２の制御工程と、
を含むことを特徴とするモータ制御装置の制御方法。
【請求項１０】
コンピュータを、請求項１乃至８の何れか１項に記載のモータ制御装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータの制御に関するものである。
【背景技術】
【０００２】
レーザビームプリンタでは感光ドラムや転写ベルトの駆動にブラシレスＤＣモータなどが使用されている。一般的に、ブラシレスＤＣモータにはＵ相、Ｖ相、Ｗ相の三相のステータがあり、これらに印加する電圧を制御することでモータを回転させる。この時、負荷等に応じて変化する回転速度を検知し、制御にフィードバックする事で安定した回転速度を実現している。
【０００３】
従来はホールセンサ等を用いて回転速度を測定していたが、近年はセンサを用いずに三相の電流値から回転速度を推定しベクトル制御する方式（センサレスベクトル制御）が広く用いられるようになってきている（例えば特許文献１）。ただし、センサレスで回転速度を推定するためには、モータがある程度高い回転数で回転し十分な誘導電流が発生している必要がある。そこで、起動時からある程度回転数が高まるまでの期間は、転流（各ステータに電圧を印加し回転磁界をつくる動作）により強制的にモータを回転させる方法（強制転流モード）が用いられている（例えば特許文献２）。そして、モータがある程度高い回転数に到達した後、強制転流モードからベクトル制御に切り替える。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−２１３３９８号公報
【特許文献２】特開２０１６−１８１９４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、強制転流制御は、オープンループ制御にて電圧をモータの各相に印加する方式であるため、結果として消費電流が大きく長時間使用することは電力効率の観点から好ましくない。そのため、起動時においては、強制転流制御から電力効率の良いＳＦＯＣへ早目に切替えることが望ましい。ただし、強制転流制御からＳＦＯＣへの切替えた直後は、一般に速度推定の誤差が大きく、モータ速度が安定的に収束するまでには時間を要するという課題があった。
【０００６】
本発明は、このような問題に鑑みてなされたものであり、安定したモータ制御を実現しつつ起動時間の短縮を可能とする技術を提供することを目的としている。
【課題を解決するための手段】
【０００７】
上述の問題点を解決するため、本発明に係るモータ制御装置は以下の構成を備える。すなわち、モータを制御するモータ制御装置は、
前記モータに流れる電流を検出する検出手段と、
前記検出手段により検出した電流から前記モータの回転速度を推定する推定手段と、
強制転流制御により前記モータを駆動する第１の駆動手段と、
前記推定手段により推定された前記モータの回転速度に基づいてベクトル制御により前記モータを駆動する第２の駆動手段と、
前記モータの制御開始からの第１の期間が経過するまでの間は前記第１の駆動手段により前記モータを駆動するよう制御し、該第１の期間の経過した後は前記第２の駆動手段により前記モータを駆動するよう制御する第１の制御手段と、
前記検出手段及び前記推定手段の実行頻度を制御する第２の制御手段と、
を有し、
前記第２の制御手段は、前記検出手段による検出及び前記推定手段による推定の実行頻度に関して、前記第１の駆動手段による駆動から前記第２の駆動手段による駆動に切り替えてからの第２の期間における第１の実行頻度が、該第２の期間に後続する第３の期間における第２の実行頻度より高くなるよう制御する。
【発明の効果】
【０００８】
本発明によれば、安定したモータ制御を実現しつつ起動時間の短縮を可能とする技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】モータ制御装置のブロック図である。
【図２】モータ速度推定部の詳細ブロック図である。
【図３】強制転流からＳＦＯＣに移行した際のモータの回転速度の変化を例示的に示す図である。
【図４】定常状態におけるＳＦＯＣにおける処理タイミングを示す図である。
【図５】ＳＦＯＣに切り替えた直後における処理タイミングを示す図である。
【図６】制御モード切替え処理のフローチャートである。
【図７】制御モード切替え処理の効果を例示的に示す図である。
【図８】定常状態におけるＳＦＯＣ及びエンジン制御の処理タイミングを示す図である。
【図９】ＳＦＯＣに切り替えた直後におけるＳＦＯＣ及びエンジン制御の処理タイミングを示す図である。
【図１０】第２実施形態における制御モード切替え処理のフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでするものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【００１１】
（第１実施形態）
本発明に係るモータ制御装置の第１実施形態として、三相ブラシレスモータを制御するモータ制御装置を例に挙げて以下に説明する。
【００１２】
＜装置構成＞
図１は、第１実施形態に係るモータ制御装置のブロック図である。モータ制御装置は、コントローラとエンジン部とを含む。
【００１３】
エンジン部は、モータ１００と、モータドライバ１０６と、モータ電流検出部１０１とを含む。ここでは、モータ１００は、三相ブラシレスモータである。モータドライバ１０６は、モータ１００の各コイル端にパルス電圧を印加して電流を流す。モータ電流検出部１０１は、モータ１００の各相（ここでは３相（Ｕ、Ｖ、Ｗ））に流れるコイル電流を検出する。
【００１４】
コントローラは、統括制御部１１０とＳＦＯＣ（Sensorless Field Oriented Control）部とを含む。統括制御部１１０は、エンジン部とＳＦＯＣ部とを統括して管理する。
【００１５】
ＳＦＯＣ部は、モータ速度推定部１０２と起動制御部１０３とＰＩ制御部１０４とＰＷＭ制御部１０５とを含む。モータ速度推定部１０２は、モータ電流検出部１０１によって検出した「３相電流値」とモータの各コイル端に印加した「３相駆動電圧値」の２つの入力値からモータの電気角や回転速度を推定する。起動制御部１０３は、モータ電流検出部１０１に対してモータ電流の検出を指示し、モータ速度推定部１０２に対して推定演算を指示する。ＰＩ制御部１０４は、モータ速度推定部１０２により推定したモータの回転速度に基づいて比例積分演算処理を行う。ＰＷＭ制御部１０５は、ＰＩ制御部１０４からの指令に基づいてモータ１００の各コイル端に印加するパルス電圧を制御する。
【００１６】
なお、ここでは、プロセッサ（ＣＰＵ）がプログラムを実行することでＳＦＯＣ部をソフトウェアにより実現することを想定する。ただし、一部または全部をＦＰＧＡやカスタムＬＳＩなどのハードウェアにより実現するよう構成してもよい。
【００１７】
図２は、モータ速度推定部１０２の詳細ブロック図である。モータ速度推定部１０２は、３相２相変換部１２０と、誘起電圧演算部１３０と、位置演算部１４０と、速度演算部１５０と、を含む。
【００１８】
３相２相変換部１２０は、モータ電流検出部１０１によって検出された３相電流値（ｉｕ、ｉｖ、ｉｗ）とＰＷＭ制御部１０５によって出力した３相駆動電圧値（Ｖｕ、Ｖｖ、Ｖｗ）を入力とし、それぞれを２相成分に変換し出力する。２相成分に変換したものを、それぞれ、２相駆動電圧（Ｖａ、Ｖｂ）、２相電流値（ｉａ、ｉｂ）とする。
【００１９】
誘起電圧演算部１３０は、２相駆動電圧（Ｖａ、Ｖｂ）と２相電流値（ｉａ、ｉｂ）とからＡ相誘起電圧（Ｅａ）とＢ相誘起電圧（Ｅｂ）とを算出する。これを具体的に式で表すと以下のようになる。
Ｅａ＝Ｖａ−Ｒ×ｉａ−Ｌ×ｄｉａ／ｄｔ
Ｅｂ＝Ｖｂ−Ｒ×ｉｂ−Ｌ×ｄｉｂ／ｄｔ
【００２０】
ここで、Ｒは巻線レジスタンス、Ｌは巻線インダクタンスであり、それぞれ固有の値を持っているものとする。また、ｄｉａ／ｄｔおよびｄｉｂ／ｄｔは、ある時間における電流変化の割合を示している。
【００２１】
位置演算部１４０は、Ａ相誘起電圧（Ｅａ）とＢ相誘起電圧（Ｅｂ）の比に対して逆正接を求めることにより、位置（θ）を算出する。これを具体的に式で表すと以下のようになる。
θ＝ｔａｎ−１（−Ｅｂ／Ｅａ）
【００２２】
速度演算部１５０は、ある時間における位置（θ）の変化の割合を求めることにより、速度推定値（ω）を算出する。これを具体的に式で表すと以下のようになる。
ω＝ｄθ／ｄｔ
【００２３】
図３は、強制転流からＳＦＯＣに移行した際のモータの回転速度の変化を例示的に示す図である。具体的には、単純に強制転流モードによる制御（強制転流制御）からＳＦＯＣに切り替える従来技術におけるモータ１００の回転速度を示している。横軸は時間（ｔ）、縦軸はモータ回転速度（ｒｐｍ）を示している。
【００２４】
起動時、まずは速度０（ゼロ）から所定の閾値速度までは強制転流モード２０３にてモータを駆動する。図３においては、所定の閾値速度は制御切り替え速度２０２である。モータが所定の速度に到達したら、強制転流制御からＳＦＯＣに制御を切り替える。更にその後、モータの速度が目標速度２０１に到達したら加速命令を中断する。その後は、目標速度が変更されるまで一定速度でモータを駆動し続ける。
【００２５】
背景技術で参照した強制転流モードによる制御について簡単に説明しておく。強制転流モードとは、オープンループ制御にてモータ各相に電圧をかける方式である。強制転流モードは、消費電流が大きいため、あまり長い時間使用することは望ましくない。そのため、起動時において、強制転流モードから電力効率の良いＳＦＯＣへの切替えをなるべく早めに行うことが好ましい。しかしながら、強制転流モードからＳＦＯＣへの切替え直後は、一般に速度推定の誤差が大きい。そのため、起動特性２１０の曲線に示されるようにモータ速度が目標速度に収束するまでには時間がかかることになる。
【００２６】
そこで、第１実施形態では、ＳＦＯＣへの切替え直後において速度推定（及び速度推定に必要となる電流検出）の実行頻度を高くすることにより、速度推定の誤差を早期に小さくすることを考える。
【００２７】
図４は、定常状態におけるＳＦＯＣにおける処理タイミングを示す図である。定常状態とは、例えば、モータ１００が目標速度２０１で安定的に動作している状態である。ここでは、ＰＷＭ制御周期の２周期分の処理タイミングを示している。
【００２８】
なお、図４において、「ＰＷＭ」は、モータに電流を流すための直交流変換の処理を示している。「ＡＤＣ」は、モータ電流を検出するためのアナログデジタル変換処理を示している。「ＳＦＯＣ」は、モータ制御に係るものを示している。例えば、センサレスベクトル制御に必要な座標変換（三相二相変換および回転座標変換）と速度推定、速度制御、電流制御、逆座標変換（静止座標変換および二相三相変換）の処理に係る制御を実行する。「ＰＷＭ  ｄａｔａ  ｓｅｔ」は、ＰＷＭデータ出力処理を示している。
【００２９】
最初に、モータ電流検出部１０１による電流検出処理３０１を行う。次に、モータ速度推定部１０２は、検出した電流値に基づいてモータの速度を推定するモータ速度推定処理３０２を行う。その後、ＰＩ制御部１０４は、推定された速度に基づくＰＩ制御処理３０３を行い、ＰＩ制御結果に基づくデータをＰＷＭ制御部１０５に出力するＰＷＭデータ出力処理３０４を実施している。
【００３０】
図５は、ＳＦＯＣに切り替えた直後におけるＳＦＯＣにおける処理タイミングを示す図である。上述したように、図５に示される動作は第１実施形態に特有のものである。図４においては、１制御周期内において、電流検出処理３０１及びモータ速度推定処理３０２はそれぞれ１回実行される。一方、図５においては、１制御周期内において、電流検出処理３０１及びモータ速度推定処理３０２はそれぞれ２回実行される。
【００３１】
最初に、時間ｔ１においてモータ電流検出部１０１による電流検出処理５１０を行う。次に、モータ速度推定部１０２は、検出した電流値に基づいてモータの速度（ω１）を推定するモータ速度推定処理５１１を行う。
【００３２】
その後、時間ｔ２においてモータ電流検出部１０１による電流検出処理５２０を行う。次に、モータ速度推定部１０２は、検出した電流値に基づいてモータの速度（ω２）を推定するモータ速度推定処理５２１を行う。その後、ＰＩ制御部１０４は、推定された速度（ω２）に基づくＰＩ制御処理３０３を行い、ＰＩ制御結果に基づくデータをＰＷＭ制御部１０５に出力するＰＷＭデータ出力処理３０４を実施している。
【００３３】
なお上述の説明においては、電流検出と速度推定演算の頻度を２倍に上げている例を示しているが、次の制御周期が始まる前にＰＷＭデータ出力処理３０４まで完了できる範囲で、電流検出と速度推定の実行頻度を更に上げることが出来る。
【００３４】
図６は、第１実施形態における制御モード切替え処理のフローチャートである。Ｓ６０１では、統括制御部１１０は、強制転流モードによるモータ制御を開始する。また、モータ１００の回転速度の取得を開始する。なお、モータ１００の回転速度は、ＳＦＯＣ部のモータ速度推定部１０２を動作させることにより取得してもよいし、別途のエンコーダを用いて取得するようにしてもよい。Ｓ６０２では、統括制御部１１０は、モータ１００の回転速度がＳＦＯＣへの切替え速度（制御切り替え速度２０２）に到達したか否かを判断し、切替え速度に到達したらＳ６０３へ進む。
【００３５】
Ｓ６０３では、統括制御部１１０は、ＳＦＯＣによるモータ制御に切り替える。Ｓ６０４では、統括制御部１１０は、電流検出及び速度推定の頻度を上げる。例えば、１制御周期あたり２回の電流検出及び速度推定を行うように制御する。
【００３６】
Ｓ６０５では、統括制御部１１０は、モータ１００の回転速度が目標速度２０１に到達したか否かを判断し、目標速度２０１に到達したらＳ６０６へ進む。Ｓ６０６では、統括制御部１１０は、電流検出及び速度推定の周期を下げる。例えば、１制御周期あたり１回の電流検出及び速度推定を行うように制御する。
【００３７】
図７は、制御モード切替え処理の効果を例示的に示す図である。具体的には、図３に対してＳＦＯＣによる制御開始後（制御切り替え速度２０２に到達後）において図５に示す制御を行うようにした場合のモータ１００の回転速度を示している。図３と同様に、横軸が時間（ｔ）、縦軸がモータ速度（ｒｐｍ）を示している。
【００３８】
起動時、まずは速度０（ゼロ）から所定の速度までは強制転流モード２０３にてモータ１００を駆動する。モータが所定の閾値速度である制御切替え速度２０２に到達したら、強制転流モードからＳＦＯＣに制御を切り替える。ＳＦＯＣに制御が切り替えた直後は、図５に示すように電流検出及び速度推定の頻度を高める。それにより制御周期よりも短い時間間隔にて目標速度との差分を補正する。その結果、起動特性７１０の曲線に示されるように、目標速度２０１に対して速度追従性が向上する。更にその後、モータの速度が目標速度２０１に到達したら加速命令を中断する。また、図４に示すように電流検出及び速度推定の頻度を低くする。その後は、目標速度が変更されるまで一定速度でモータを駆動し続ける。
【００３９】
以上説明したとおり第１実施形態によれば、モータ制御において、起動時に強制転流モードによるモータ駆動を行いＳＦＯＣによるモータ駆動に切り替える。また、ＳＦＯＣに切り替えた直後は電流検出及び速度推定の実行頻度を高くする。これにより、ＳＦＯＣへの切替え直後のモータ速度の推定誤差を小さく抑えることが可能となり、安定したモータ制御を実現しつつ起動時間の短縮が可能となる。
【００４０】
（変形例）
上述の第１実施形態においては、モータの回転速度が所定の閾値速度に到達したことをトリガにＳＦＯＣによる制御に切り替える構成としたが、他のトリガに基づいてＳＦＯＣによる制御に切り替えてもよい。例えば、モータの制御開始から第１の期間（例えば所定数の制御周期）が経過後にＳＦＯＣに切り替えるよう構成してもよい。
【００４１】
また、上述の第１実施形態においては、モータの回転速度が目標速度に到達したことをトリガに電流検出及び速度推定の実行頻度を下げるよう構成したが、他のトリガに基づいて電流検出及び速度推定の実行頻度を下げてもよい。例えば、ＳＦＯＣに移行後の第２の期間（例えば所定数の制御周期）が経過後に後続する第３の期間に電流検出及び速度推定の頻度を下げるよう構成してもよい。ＳＦＯＣに切り替えた直後の少なくとも１制御周期において電流検出及び速度推定の頻度を高めるようにすれば足りる。
【００４２】
また、ＳＦＯＣに切り替えた直後の電流検出及び速度推定を１制御周期で２回行う例について説明したが、Ｎ回（Ｎは２以上の整数）としてもよい。その場合、１制御周期での回数を徐々に減らすよう構成してもよい。例えば、ＳＦＯＣによる制御に移行した直後は３回実行し、所定の時間経過後２回の実行に減らし、目標速度に到達した後１回の実行に減らすよう構成してもよい。
【００４３】
（第２実施形態）
第１実施形態ではＳＦＯＣに切り替えた直後は電流検出及び速度推定の実行頻度を高くし、目標速度に到達した後は電流検出及び速度推定の実行頻度を元に戻す設定をしていた。第２実施形態においては、ＳＦＯＣに切り替えた直後の電流検出及び速度推定の実行頻度の制御を、他のエンジン制御処理の状況に応じて行う例について説明する。
【００４４】
ここでの他のエンジン制御処理とは、例えばレーザビームプリンタにおいては、帯電、露光、現像、転写、定着といった各種プロセスを制御する処理等が考えられる。これらエンジン制御処理は、ＳＦＯＣの制御周期とは非同期で実施され、あるトリガ（例えば、搬送紙が所定の位置に到達したことを示す割り込み通知など）から所定の時間内に実施完了すればよいという性質の制御である。
【００４５】
なお、エンジン制御処理とＳＦＯＣ処理とを一つのＣＰＵで処理する場合は、時間を区切って切り替えて時分割処理することになる。エンジン制御処理は、ＳＦＯＣと同様に統括制御部１１０によって管理、実施される。
【００４６】
図８は、定常状態におけるＳＦＯＣ及びエンジン制御の処理タイミングを示す図である。定常状態とは、例えば、モータ１００が目標速度２０１で安定的に動作している状態である。ここでは、図４と同様にＰＷＭ制御周期の２周期分の処理タイミングを示している。
【００４７】
電流検出処理３０１、モータ速度推定処理３０２、ＰＩ制御処理３０３、ＰＷＭデータ出力処理３０４は図４と同様の為、説明は省略する。「エンジン制御処理」は、上記で説明した通り、レーザビームプリンタにおける各種プロセスを制御する処理等を示しており、制御周期３００内でエンジン制御処理８０１を実施している。
【００４８】
また、「エンジン制御処理」の処理時間および実施に関しては、統括制御部１１０によって管理され、ＰＷＭデータ出力処理３０４と並行して実施される。「エンジン制御処理」は統括制御部１１０によって管理、実施されるが、「ＰＷＭデータ出力処理」はＰＷＭモジュール（ハードウエア）によって管理、実施されるため、並行して処理を進めることが可能となっている。
【００４９】
図９は、ＳＦＯＣに切り替えた直後におけるＳＦＯＣ及びエンジン制御の処理タイミングを示す図である。図８においては、１制御周期内において、電流検出処理及びモータ速度推定処理はそれぞれ１回実行される。一方、図９においては、１制御周期内において、電流検出処理及びモータ速度推定処理はそれぞれ２回実行される。
【００５０】
まず、最初に時間ｔ１において制御周期３００内での電流検出と速度推定演算の頻度を上げることが出来るか否かの判断を行う。判断の基準としては、例えば、まずは制御周期３００内において実施すべきエンジン制御があるか/無いかの判定をする。ある場合は、制御すべきエンジン制御処理の処理時間を予測、分割し、１制御周期内において電流検出処理及びモータ速度推定処理の頻度を上げても分割したエンジン制御処理９０２まで実施可能かどうかで判断する。また、制御周期３００内に制御すべきエンジン制御が無い場合は、第１実施形態と同様に１制御周期内において電流検出処理及びモータ速度推定処理の頻度を上げてもＰＷＭデータ出力処理３０４まで実施可能かどうかで判断する。
【００５１】
制御周期３００内において実施すべきエンジン制御がある場合で、電流検出処理及びモータ速度推定処理の頻度を上げられるかの判定を式で表現すると、例えば以下のようになる。
（ｔ２−ｔ１）  ＞  Ｔａ    ・・・（１）
（ｔ３−ｔ２）  ＞  Ｔｂ    ・・・（２）
【００５２】
ここで、
Ｔａ：電流検出５１０と、速度推定５１１と、分割したエンジン制御処理９０１と、の合計予想処理時間（一つ前の制御周期や、ある一定期間の履歴から予想するため、少なく見積もってしまうことはない）
Ｔｂ：電流検出５２０と、速度推定５２１と、ＰＩ制御３０３と、分割したエンジン制御処理９０２とＰＷＭデータ出力処理３０４とのどちらか処理時間が長い方と、の合計予想処理時間（一つ前の制御周期や、ある一定期間の履歴から予想するため、少なく見積もってしまうことはない）
である。
【００５３】
式（１）と式（２）が同時に成り立つことが電流検出と速度推定演算の頻度を上げることが出来る条件となる。なお、式（１）と式（２）のどちらか一方が成り立たない場合、式（１）と式（２）が成り立つように、エンジン制御処理９０１とエンジン制御処理９０２との分割比率を調整してもよい。（図９は、電流検出処理及びモータ速度推定処理の頻度を上げられると判断し、１つの制御周期に２回の電流検出と速度推定演算を実施している例を示している。）
【００５４】
上記判断の後の処理を順番に説明する。モータ電流検出部１０１は、電流検出処理５１０を行う。次に、モータ速度推定部１０２は、検出した電流値に基づいてモータの速度（ω１）を推定するモータ速度推定処理５１１を行う。モータ速度推定処理５１１が終了したら、分割したエンジン制御処理９０１を実施する。
【００５５】
その後、時間ｔ２においてモータ電流検出部１０１は、電流検出処理５２０を行う。次に、モータ速度推定部１０２は、検出した電流値に基づいてモータの速度（ω２）を推定するモータ速度推定処理５２１を行う。その後、ＰＩ制御部１０４は、推定された速度（ω２）に基づくＰＩ制御処理３０３を行い、ＰＩ制御結果に基づくデータをＰＷＭ制御部１０５に出力するＰＷＭデータ出力処理３０４を実施する。また、ＰＷＭデータ出力処理３０４と並行して、分割したもう片方のエンジン制御処理９０２を実施する。（既に説明した通り、エンジン制御処理とＰＷＭデータ出力処理とは並行処理が可能である。）
【００５６】
なお、上述の説明においては、電流検出と速度推定演算の頻度を２倍に上げている例を示しているが、２倍以外の頻度としてもよい。次の制御周期が始まる前に、分割したエンジン制御処理とＰＷＭデータ出力処理３０４のどちらか処理時間が長い方まで完了できる範囲で、電流検出と速度推定の実行頻度を更に上げることも出来る。
【００５７】
図１０は、第２実施形態における制御モード切替え処理のフローチャートである。Ｓ６０１〜Ｓ６０３は図６と同様のため説明は省略する。
【００５８】
Ｓ１０００では、図９のｔ１において、統括制御部１１０は、制御周期３００内で制御すべきエンジン制御処理が有るか／無いかを判定する。有る場合はＳ１００１へ、無い場合はＳ６０４へ進む。
【００５９】
Ｓ１００１では、図９のｔ１において、統括制御部１１０は、制御周期３００内で制御すべきエンジン制御処理の処理時間を予測する。処理時間の予測方法としては、一つ前の制御周期内で実施された処理を元に処理時間を予測してもよいし、ある一定期間の制御周期内で実施された処理を元に処理時間を予測する方法でもよい。一つ前の制御周期や、ある一定期間の履歴から予想するため、少なく見積もってしまうことはない。
【００６０】
Ｓ１００２では、統括制御部１１０は、予測したエンジン制御処理を分割する。エンジン制御処理の分割方法は等分割でもよいし、制御周期３００における処理の優先度に合わせて不等分割でもよい。また、分割しなくてもよい。
【００６１】
また、ＳＦＯＣへの切り替えた直後に関しては、エンジン制御処理の優先度を落として、意図的にエンジン制御処理にかかる処理時間を短くする方法でもよい。また上述したように、もし、式（１）と式（２）のどちらか一方が成り立たない場合、式（１）と式（２）が成り立つように、エンジン制御処理９０１とエンジン制御処理９０２の分割比率を調整してもよい。
【００６２】
Ｓ１００３では、統括制御部１１０は、電流検出と速度推定演算の周期を上げることが出来るか否かの判断を行う。具体的には、上述の式（１）と式（２）が同時に成り立つことが電流検出と速度推定演算の周期を上げられる条件となる。条件が成立したらＳ６０４へ進み、条件が成立しなければＳ６０５へ進む。以降、Ｓ６０４〜Ｓ６０６は図６と同様のため説明は省略する。なお、時間ｔ１において、電流検出と速度推定演算の頻度を上げることが出来ないと判断した場合は図８に示した処理タイミングとなる。
【００６３】
以上説明したとおり、第２実施形態によれば、モータ制御において、起動時に強制転流モードによるモータ駆動を行いＳＦＯＣによるモータ駆動に切り替える。特に、ＳＦＯＣに切り替えた直後の電流検出及び速度推定の実行頻度を、他のエンジン制御処理（つまりベクトル制御以外の処理）の負荷状況に応じて決定する。これにより、ＳＦＯＣ処理と他のエンジン制御処理を一つのＣＰＵにて行う場合においても、電流検出及び速度推定の実行頻度を効率よく変更することができる。
【００６４】
これにより、ＳＦＯＣへの切替え直後のモータ速度の推定誤差を小さく抑えることが可能となり、安定したモータ制御を実現しつつ起動時間の短縮が可能となる。
【００６５】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００６６】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【００６７】
１００  モータ；  １０１  モータ電流検出部；  １０２  モータ速度推定部；  １０３  起動制御部；  １０４  ＰＩ制御部；  １０５  ＰＷＭ制御部；  １０６  モータドライバ；  １１０  統括制御部
【図１】
2019187233.tif 000003
【図２】
2019187233.tif 000004
【図３】
2019187233.tif 000005
【図４】
2019187233.tif 000006
【図５】
2019187233.tif 000007
【図６】
2019187233.tif 000008
【図７】
2019187233.tif 000009
【図８】
2019187233.tif 000010
【図９】
2019187233.tif 000011
【図１０】
2019187233.tif 000012