(57)【要約】【課題】  モータの制御方法の切り替え時に発生するトルク振動を抑制できる。【解決手段】  一実施形態に係るモータ制御装置は、第１の制御方法に依存する第１の電流指令値及び第２の制御方法に依存する第２の電流指令値に基づいて、モータを制御するモータ制御装置であって、前記モータの制御方法を前記第１の制御方法から前記第２の制御方法に切り替える際、前記第２の電流指令値を所定の切替期間の間に段階的に第１の目標値まで遷移させ、前記第１の電流指令値を段階的に第２の目標値まで遷移させる指令値切替部を備える。【選択図】  図１
2018007533.tif 000002
【特許請求の範囲】
【請求項１】
第１の制御方法に依存する第１の電流指令値及び第２の制御方法に依存する第２の電流指令値に基づいて、モータを制御するモータ制御装置であって、
前記モータの制御方法を前記第１の制御方法から前記第２の制御方法に切り替える際、前記第２の電流指令値を所定の切替期間の間に段階的に第１の目標値まで遷移させ、前記第１の電流指令値を段階的に第２の目標値まで遷移させる指令値切替部を備える
モータ制御装置。
【請求項２】
前記指令値切替部は、前記切替期間の間に前記モータに供給される電流の振幅と、前記第２の電流指令値に応じて前記モータに供給される電流の振幅と、が等しくなるように、前記第１の電流指令値及び前記第２の電流指令値を遷移させる
請求項１に記載のモータ制御装置。
【請求項３】
前記第１の制御方法は、前記モータの角度及び速度の少なくとも一方をフィードバックすることより算出した前記第１の電流指令値によって前記モータを制御するクローズドループ制御であり、
前記第２の制御方法は、予め設定された前記第１の目標値で前記モータを制御するオープンループ制御である
請求項１又は請求項２に記載のモータ制御装置。
【請求項４】
前記モータに供給された電流に基づいて、前記モータの角度及び速度の少なくとも一方を推定する推定部を更に備える
請求項１乃至請求項３のいずれか１項に記載のモータ制御装置。
【請求項５】
前記指令値切替部は、前記モータの減速中に前記制御方法を切り替える
請求項１乃至請求項４のいずれか１項に記載のモータ制御装置。
【請求項６】
請求項１乃至請求項５のいずれか１項に記載の前記モータ制御装置と、
前記モータ制御装置の出力に応じて前記モータを駆動するインバータと、
を備えるモータ駆動装置。
【請求項７】
前記モータと、
請求項６に記載の前記モータ駆動装置と、
を備えるモータ駆動システム。
【請求項８】
請求項７に記載の前記モータ駆動システムを備える画像形成装置。
【請求項９】
請求項７に記載の前記モータ駆動システムを備える搬送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置、モータ駆動装置、モータ駆動システム、画像形成装置、及び搬送装置に関する。
【背景技術】
【０００２】
従来、モータのセンサレス制御方法として、オープンループ制御と、クローズドループ制御と、が知られている。オープンループ制御は、制御結果であるモータの位置や速度など（以下、「位置等」という）をフィードバックせずに、所定の論理に従ってモータを制御する制御方法である。オープンループ制御によれば、簡易な方法で、モータを駆動することができる。一方、クローズドループ制御は、モータの位置等をフィードバックし、モータの位置等が所望の制御値に一致するように、モータを制御する制御方法である。クローズドループ制御によれば、モータを高精度に制御することができる。
【０００３】
センサレス制御の場合、モータの位置等をセンサにより検出できないため、モータの位置等は、モータに供給された電流などに基づいて推定される。モータの位置等を推定する方法として、モータの駆動により生じる誘起電圧を利用する方法が知られている。この推定方法は、誘起電圧が大きいモータの高速駆動時には好適に利用できるが、誘起電圧が小さいモータの低速駆動時には利用が困難である。
【０００４】
そこで、高速駆動時には誘起電圧による推定を利用したクローズドループ制御を実行し、停止〜低速駆動時にはオープンループ制御を実行する、というように、モータの駆動速度に応じて制御方法を切り替えることが提案されている。この方法によれば、モータが減速すると、所定のタイミングで、モータの制御方法がクローズドループ制御からオープンループ制御に切り替えられる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の方法では、制御方法の切り替え時に、モータの駆動電流の電気角が不連続となり、トルク振動が発生することがあった。トルク振動は、異音や脱調の原因となるため、問題であった。
【０００６】
本発明は、上記の課題に鑑みてなされたものであり、第１の制御方法から第２の制御方法への切り替え時に発生するトルク振動を抑制することを目的とする。
【課題を解決するための手段】
【０００７】
一実施形態に係るモータ制御装置は、第１の制御方法に依存する第１の電流指令値及び第２の制御方法に依存する第２の電流指令値に基づいて、モータを制御するモータ制御装置であって、前記モータの制御方法を前記第１の制御方法から前記第２の制御方法に切り替える際、前記第２の電流指令値を所定の切替期間の間に段階的に第１の目標値まで遷移させ、前記第１の電流指令値を段階的に第２の目標値まで遷移させる指令値切替部を備える。
【発明の効果】
【０００８】
本発明の各実施形態によれば、モータの制御方法の切り替え時に発生するトルク振動を抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】第１実施形態に係るモータ駆動システムの一例を示す図。
【図２】インバータの一例を示す図。
【図３】電流検出器の一例を示す図。
【図４】モータの制御に利用される座標系を模式的に示す図。
【図５】指令値切替部の位一例を示す図。
【図６】モータ駆動システムの動作の一例を示すフローチャート。
【図７】モータ制御のシミュレーション結果を示す図。
【図８】画像形成装置の一例を示す図。
【図９】搬送装置の一例を示す図。
【図１０】第２実施形態に係るモータ駆動システムの一例を示す図。
【図１１】制御方法切替部の一例を示す図。
【図１２】第３実施形態に係るモータ駆動システムの一例を示す図。
【図１３】図１２のモータ駆動システムの変形例を示す図。
【発明を実施するための形態】
【００１０】
以下、本発明の各実施形態について、添付の図面を参照しながら説明する。なお、各実施形態に係る明細書及び図面の記載に関して、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重畳した説明を省略する。
【００１１】
＜第１実施形態＞
第１実施形態に係るモータ駆動システムについて、図１〜図９を参照して説明する。本実施形態に係るモータ駆動システムは、モータ駆動装置によりモータをセンサレス制御するシステムである。本実施形態において、モータは、オープンループ制御と、クローズドループ制御と、の２つの制御方法により制御される。各制御方法について、詳しくは後述する。
【００１２】
（モータ駆動システムの構成）
図１は、本実施形態に係るモータ駆動システムの一例を示す図である。図１のモータ駆動システムは、モータ１と、インバータ２と、電流検出器３と、モータ制御装置４と、を備える。インバータ２、電流検出器３、及びモータ制御装置４は、モータ１を駆動するモータ駆動装置を構成する。
【００１３】
モータ１は、２相のステッピングモータ（ＳＴＭ）である。モータ１の各相を、Ａ相及びＢ相と称する。モータ１は、Ａ相及びＢ相のコイル（固定子）と、回転子と、を備える。回転子は、Ｓ極及びＮ極が交互に並んだ永久磁石により構成され、ｐ個の極ペア（Ｓ極及びＮ極のペア）を有する。
【００１４】
以下では、回転子の１回転を１周期とする角度を機械角と称し、回転子の１回転をｐ周期とする角度を電気角と称する。電気角は、機械角のｐ倍に相当する。以降、断りのない限り、回転子の角度（位置）及び速度（角速度）を電気角で表す。
【００１５】
モータ１は、インバータ２から供給された電流によって駆動される。具体的には、モータ１は、インバータ２からＡ相及びＢ相のコイルにそれぞれ電流ＩＡ，ＩＢを供給される。モータ１の回転子は、電流ＩＡ，ＩＢに応じてＡ相及びＢ相のコイルが発生させた磁界に従って回転する。
【００１６】
インバータ２は、モータ制御装置４が出力した電圧指令値Ｖａ＊，Ｖｂ＊に応じた電流ＩＡ，ＩＢをモータ１に供給し、モータ１を駆動する。以下、＊を付された値は、指令値（制御値）を示すものとする。電圧指令値Ｖａ＊，Ｖｂ＊は、Ａ相及びＢ相のコイルにそれぞれ印加する電圧の指令値である。
【００１７】
図２は、インバータ２の一例を示す図である。図２のインバータ２は、ＰＷＭ（Pulse Width Modulation）回路２１と、駆動回路２２と、を備える。
【００１８】
ＰＷＭ回路２１（制御信号生成部）は、電圧指令値Ｖａ＊をパルス幅変調して、Ａ相の制御信号（ＡＰＨ，ＡＰＬ，ＡＭＨ，ＡＭＬ）を生成し、出力する。また、ＰＷＭ回路２１は、電圧指令値Ｖｂ＊をパルス幅変調して、Ｂ相の制御信号（ＢＰＨ，ＢＰＬ，ＢＭＨ，ＢＭＬ）を生成し、出力する。図２の例では、制御信号は、Ｈｉｇｈ及びＬｏｗからなるパルス信号である。ＰＷＭ回路２１が出力した制御信号は、駆動回路２２に入力される。
【００１９】
駆動回路２２は、Ａ相の駆動回路２２Ａと、Ｂ相の駆動回路２２Ｂと、を備える。駆動回路２２Ａは、Ａ相のコイルの一端に電圧を印加する駆動回路２２ＡＰと、Ａ相のコイルの他端に電圧を印加する駆動回路２２ＡＭと、を備える。駆動回路２２ＡＰ，２２ＡＭは、電源（Ｖｃｃ）と出力端子との間に接続されたスイッチング素子と、出力端子と接地線（ＧＮＤ）との間に接続されたスイッチング素子と、各スイッチング素子に並列に接続されたダイオードと、によりそれぞれ構成される。図２の例では、スイッチング素子は、ＭＯＳＦＥＴ（Metal Oxide Semiconductor Field Effect Transistor）であるが、バイポーラトランジスタでもよい。
【００２０】
駆動回路２２ＡＰの出力端子は、Ａ相のコイルの一端に接続される。駆動回路２２ＡＰの各スイッチング素子は、ＰＷＭ回路２１が出力したＡ相の制御信号（ＡＰＨ，ＡＰＬ）を入力される。また、駆動回路２２ＡＭの出力端子は、Ａ相のコイルの他端に接続される。駆動回路２２ＡＰの各スイッチング素子は、ＰＷＭ回路２１が出力したＡ相の制御信号（ＡＭＨ，ＡＭＬ）を入力される。入力された制御信号に従って各スイッチング素子がオンオフすることにより、電圧指令値Ｖａ＊に応じた電流ＩＡが、Ａ相のコイルに供給される。
【００２１】
なお、駆動回路２２Ｂの構成は、駆動回路２２Ａと同様であるため、説明を省略する。また、インバータ２は、図２に限られない。例えば、ＰＷＭ回路２１は、モータ制御装置４に設けられていてもよい。インバータ２として、電圧指令値Ｖａ＊，Ｖｂ＊に応じた電流ＩＡ，ＩＢを供給可能な任意の回路を利用できる。
【００２２】
電流検出器３は、モータ１に供給された電流ＩＡ，ＩＢの電流値Ｉａ，Ｉｂを検出し、出力する。電流検出器３が出力した電流値Ｉａ，Ｉｂは、モータ制御装置４に入力される。
【００２３】
図３は、電流検出器３の一例を示す図である。図３の電流検出器３は、Ａ相の電流検出器３Ａと、Ｂ相の電流検出器３Ｂと、を備える。電流検出器３Ａは、シャント抵抗３１ａと、差動アンプ３２ａと、ＡＤ変換器３３ａと、を備える。
【００２４】
シャント抵抗３１ａは、駆動回路２２Ａの出力端子と、Ａ相のコイルと、の間に接続される。駆動回路２２Ａが電流ＩＡをコイルに供給すると、電流ＩＡがシャント抵抗３１ａに流れ、シャント抵抗３１の抵抗値に応じた電圧降下が生じる。
【００２５】
差動アンプ３２ａは、シャント抵抗３１ａの両端に差動入力端子を接続され、シャント抵抗３１ａで生じた電圧降下（シャント抵抗３１ａの両端子間の電位差）を、所定の利得で増幅し、出力する。
【００２６】
ＡＤ変換器３３ａは、差動アンプ３２ａの出力信号をＡＤ（Analog to Digital）変換し、得られたデジタル値を出力する。このデジタル値は、電流値Ｉａとしてモータ制御装置４に入力される。
【００２７】
なお、電流検出器Ｂの構成は、電流検出器３Ａと同様であるため、説明を省略する。また、電流検出器３は図３に限られない。電流検出器３として、電流値Ｉａ，Ｉｂを検出可能な任意の回路を利用できる。
【００２８】
モータ制御装置４は、プロセッサと、メモリと、により構成される。プロセッサは、例えば、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）などである。プロセッサは、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）、ＰＬＤ（Programmable Logic Device）などであってもよい。プロセッサは、メモリに格納されたプログラムを実行する。
【００２９】
メモリは、ＤＲＡＭ（Dynamic Random Access Memory）、ＳＲＡＭ（Static RAM）、ＭＲＡＭ（Magnetic RAM）、フラッシュメモリなどである。メモリは、プロセッサが実行するプログラムを格納する。
【００３０】
モータ制御装置４は、プロセッサ及びメモリを、それぞれ１つ備えてもよいし、複数備えてもよい。モータ制御装置４は、例えば、ＩＣチップにより実現される。この場合、ＩＣチップには、インバータ２及び電流検出器３の少なくとも一方が含まれてもよい。このモータ制御装置４は、クローズドループ制御（第１の制御方法）と、オープンループ制御（第２の制御方法）と、の２つの制御方法により、モータ１を制御する。
【００３１】
クローズドループ制御は、モータ１の角度及び速度をフィードバックすることにより算出した電流指令値によってモータ１を制御する制御方法である。クローズドループ制御では、制御結果であるモータ１の角度及び速度がフィードバックされ、フィードバックされた角度及び速度が、角度及び速度の指令値にそれぞれ一致するように、電流指令値が算出される。
【００３２】
本実施形態のように、モータ１をセンサレス制御する場合、モータ１の角度及び速度を直接的に取得することはできない。このため、本実施形態では、モータ１の角度及び速度の推定値がフィードバックされる。クローズドループ制御によれば、モータ１を高精度に制御することができる。
【００３３】
なお、以下では、モータ１の角度及び速度の両方をフィードバックしながらモータ１を制御するモータ制御装置４について説明するが、モータ制御装置４は、角度又は速度のいずれか一方だけをフィードバックしながらモータ１を制御することも可能である。
【００３４】
オープンループ制御は、予め設定された電流指令値によってモータ１を制御する制御方法である。オープンループ制御では、クローズドループ制御とは異なり、制御結果であるモータ１の角度及び速度がフィードバックされない。オープンループ制御によれば、簡易な方法でモータ１を制御することができる。
【００３５】
図１に示すように、モータ制御装置４は、機能構成として、位置制御部４１と、速度制御部４２と、指令値切替部４３と、電流制御部４４と、第１座標変換部４５と、第２座標変換部４６と、推定部４７と、選択部４８と、を備える。これらの各機能構成は、メモリに格納されたプログラムをプロセッサが実行することにより実現される。
【００３６】
位置制御部４１は、角度指令値θ＊と、角度推定値θｅｓｔと、に基づいて、角度誤差θｅｒｒを計算する。角度指令値θ＊は、回転子の角度（位置）の指令値であり、外部（例えば、上位のアプリケーション）から入力される。角度推定値θｅｓｔは、回転子の角度の推定値であり、推定部４７から入力される。角度誤差θｅｒｒは、角度指令値θ＊と、角度推定値θｅｓｔと、の差である。
【００３７】
位置制御部４１は、Ｐ（Proportional）制御やＰＩ（Proportional Integral）制御によって、角度誤差θｅｒｒが０に追従するように、速度指令値ω＊を出力する。速度指令値ω＊は、回転子の速度（角速度）の指令値である。位置制御部４１が出力した速度指令値ω＊は、速度制御部４２に入力される。
【００３８】
速度制御部４２は、速度指令値ω＊と、速度推定値ωｅｓｔと、に基づいて、速度誤差ωｅｒｒを計算する。速度推定値ωｅｓｔは、回転子の速度の推定値であり、推定部４７から入力される。速度誤差ωｅｒｒは、速度指令値ω＊と、速度推定値ωｅｓｔと、の差である。
【００３９】
速度制御部４２は、Ｐ制御やＰＩ制御によって、速度誤差ωｅｒｒが０に追従するように、電流指令値Ｉｑｃｖ＊を出力する。電流指令値Ｉｑｃｖ＊は、クローズドループ制御の場合にモータ１に供給するｑｃ軸電流の指令値である。速度制御部４２が出力した電流指令値Ｉｑｃｖ＊は、指令値切替部４３に入力される。
【００４０】
ここで、モータ１の制御のために利用される座標系について説明する。図４は、モータ１の制御のために利用される座標系を模式的に示す図である。図４において、実線はａｂ座標系、破線はｄｑ座標系、点線はｄｃｑｃ座標系、太線はＵＶＷ座標系を示している。各座標系は、原点を共有する。
【００４１】
ａｂ座標系は、直交するａ軸及びｂ軸からなる固定座標系である。ａ軸はモータ１のＡ相に対応し、ｂ軸はモータ１のＢ相に対応する。すなわち、Ａ相のコイルに供給される電流ＩＡの電流値Ｉａは、モータ１に供給される電流のａ軸成分であり、Ｂ相のコイルに供給される電流Ｉｂの電流値Ｉｂは、モータ１に供給される電流のｂ軸成分である。
【００４２】
ｄｑ座標系は、直交するｄ軸及びｑ軸からなる回転座標系である。ａ軸に対するｄ軸の角度は、角度指令値θ＊に相当する。すなわち、ｄｑ座標系は、回転子の理想的な位置を基準とした座標系である。
【００４３】
ｄｃｑｃ座標系は、直交するｄｃ軸及びｑｃ軸からなる回転座標系である。ａ軸に対するｄｃ軸の角度は、回転子の角度推定値θｅｓｔに相当し、ｄｃ軸に対するｄ軸の角度は角度誤差θｅｒｒに相当する。すなわち、ｄｃｑｃ座標系は、モータ制御装置４が推定した回転子の位置を基準とした座標系である。クローズドループ制御では、角度誤差θｅｒｒが０に追従するように、モータ１に電流が供給される。上述のｑｃ軸電流とは、モータ１に供給される電流のｑｃ軸成分のことである。
【００４４】
ＵＶＷ座標系は、それぞれ１２０度の位相差を有するＵ軸、Ｖ軸、及びＷ軸からなる固定座標系である。Ｕ軸、Ｖ軸、及びＷ軸は、それぞれ３相モータにおけるＵ相、Ｖ相、及びＷ相に対応する。以下では、図４に示すように、Ｕ軸とａ軸とは一致するものとする。ＵＶＷ座標系は、後述する実施形態において利用される。
【００４５】
指令値切替部４３は、選択信号ｓｅｌに応じて、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を切り替える。選択信号ｓｅｌは、オープンループ制御又はクローズドループ制御のいずれかを指定する信号である。本実施形態において、選択信号ｓｅｌは、外部から入力される。
【００４６】
電流指令値Ｉｄｃ＊（第１の電流指令値）は、モータ１に供給する電流のｄｃ軸成分であるｄｃ軸電流の指令値である。電流指令値Ｉｑｃ＊（第２の電流指令値）は、モータ１に供給する電流のｑｃ軸成分であるｑｃ軸電流の指令値である。指令値切替部４３が出力した電流指令値Ｉｄｃ＊，Ｉｑｃ＊は、電流制御部４４に入力される。
【００４７】
指令値切替部４３は、選択信号ｓｅｌによりクローズドループ制御を指定されている間、電流指令値Ｉｄｃ＊として０を出力し（Ｉｄｃ＊＝０）する。また、指令値切替部４３は、選択信号ｓｅｌによりクローズドループ制御を指定されている間、電流指令値Ｉｑｃ＊として電流指令値Ｉｑｃｖ＊を出力する（Ｉｑｃ＊＝Ｉｑｃｖ＊）。
【００４８】
指令値切替部４３は、選択信号ｓｅｌによりオープンループ制御を指定されている間、切替期間を除き、電流指令値Ｉｄｃ＊として電流指令値ＯｐｅｎＩｄｃ＊（第１の目標値）を出力する（Ｉｄｃ＊＝ＯｐｅｎＩｄｃ＊）。また、指令値切替部４３は、選択信号ｓｅｌによりオープンループ制御を指定されている間、切替期間を除き、電流指令値Ｉｑｃ＊として０（第２の目標値）を出力する（Ｉｑｃ＊＝０）。電流指令値ＯｐｅｎＩｄｃ＊は、オープンループ制御の場合にモータ１に供給するｄｃ軸電流の指令値として予め設定される。
【００４９】
切替期間とは、選択信号ｓｅｌが指定する制御方法が切り替えられてから所定の期間のことである。この切替期間の間に、指令値切替部４３は、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を、切替前の制御方法（クローズドループ制御）の電流指令値Ｉｄｃ＊，Ｉｑｃ＊から、切替後の制御方法（オープンループ制御）の電流指令値Ｉｄｃ＊，Ｉｑｃ＊の目標値まで段階的に遷移させる。
【００５０】
具体的には、制御方法がクローズドループ制御からオープンループ制御に切り替えられた場合、指令値切替部４３は、切替期間の間に、電流指令値Ｉｄｃ＊を０からＯｐｅｎＩｄｃ＊まで段階的に遷移させる。すなわち、ＯｐｅｎＩｄｃ＊は、制御方法の切替時における、電流指令値Ｉｄｃ＊の目標値に相当する。また、指令値切替部４３は、切替期間の間に、電流指令値Ｉｑｃ＊をＩｑｃｖ＊から０まで段階的に遷移させる。すなわち、０は、制御方法の切替時における、電流指令値Ｉｑｃ＊の目標値に相当する。なお、電流指令値Ｉｑｃ＊の目標値（第２の目標値）は、ＯｐｅｎＩｄｃ＊に比べて十分小さい微小値であってもよい。この際、指令値切替部４３は、切替中にモータ１に供給される電流の振幅と、切替後にモータ１に供給される電流の振幅と、が等しくなるように、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を出力する。
【００５１】
モータ１に供給される電流の振幅は、（Ｉｄｃ＊２＋Ｉｑｃ＊２）１／２であるから、切替後にモータ１に供給される電流の振幅は、ＯｐｅｎＩｄｃ＊となる。したがって、指令値切替部４３は、切替中にモータ１に供給される電流の振幅が、ＯｐｅｎＩｄｃ＊となるように、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を出力する。
【００５２】
このように、指令値切替部４３が電流指令値Ｉｄｃ＊，Ｉｑｃ＊を段階的に遷移させることにより、切替前の制御方法で利用される電流指令値Ｉｄｃ＊，Ｉｑｃ＊を、切替後の制御方法で利用される電流指令値Ｉｄｃ＊，Ｉｑｃ＊に、切り替えることができる。指令値切替部４３について、詳しくは後述する。
【００５３】
電流制御部４４は、電流指令値Ｉｄｃ＊及び電流値Ｉｄｃに基づいて、電流誤差Ｉｄｃｅｒｒを計算する。電流誤差Ｉｄｃｅｒｒは、電流指令値Ｉｄｃ＊と、電流値Ｉｄｃと、の差である。電流値Ｉｄｃは、第２座標変換部４６から入力される。
【００５４】
また、電流制御部４４は、電流指令値Ｉｑｃ＊及び電流値Ｉｑｃに基づいて、電流誤差Ｉｑｃｅｒｒを計算する。電流誤差Ｉｑｃｅｒｒは、電流指令値Ｉｑｃ＊と、電流値Ｉｑｃと、の差である。電流値Ｉｑｃは、第２座標変換部４６から入力される。
【００５５】
電流制御部４４は、Ｐ制御やＰＩ制御によって、電流誤差Ｉｄｃｅｒｒ，Ｉｑｃｅｒｒが０に追従するように、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を出力する。電圧指令値Ｖｄｃ＊は、モータ１に印加する電圧のｄｃ軸成分であるｄｃ軸電圧の指令値である。電圧指令値Ｖｑｃ＊は、モータ１に印加する電圧のｑｃ軸成分であるｑｃ軸電圧の指令値である。電流制御部４４が出力した電圧指令値Ｖｄｃ＊，Ｖｑｃ＊は、第１座標変換部４５に入力される。また、電流制御部４４が出力した電圧指令値Ｖｄｃ＊は、推定部４７に入力される。
【００５６】
第１座標変換部４５は、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を、ｄｃｑｃ座標系からａｂ座標系に座標変換することにより、電圧指令値Ｖａ＊，Ｖｂ＊を生成し、出力する。第１座標変換部４５が出力した電圧指令値Ｖａ＊，Ｖｂ＊は、インバータ２に入力される。電圧指令値Ｖａ＊，Ｖｂ＊は、以下の式で表される。
【００５７】
【数１】
2018007533.tif 000003
【００５８】
式（１）に右辺第１項は、座標変換のための変換行列である。θは、選択部４８から入力される角度であり、オープンループ制御の場合、角度指令値θ＊、クローズドループ制御の場合、角度推定値θｅｓｔである。
【００５９】
第２座標変換部４６は、電流値Ｉａ，Ｉｂを、ａｂ座標系からｄｃｑｃ座標系に座標変換することにより、電流値Ｉｄｃ，Ｉｑｃを生成し、出力する。第２座標変換部４６が出力した電流値Ｉｄｃ，Ｉｑｃは、電流制御部４４及び推定部４７に入力される。電流値Ｉｄｃ，Ｉｑｃは、以下の式で表される。
【００６０】
【数２】
2018007533.tif 000004
【００６１】
式（２）に右辺第１項は、座標変換のための変換行列である。θは、選択部４８から入力される角度であり、オープンループ制御の場合、角度指令値θ＊、クローズドループ制御の場合、角度推定値θｅｓｔである。
【００６２】
推定部４７は、電圧指令値Ｖｄｃ＊及び電流値Ｉｄｃ，Ｉｑｃに基づいて、回転子の角度及び速度を推定し、出力する。すなわち、推定部４７は、角度推定値θｅｓｔ及び速度推定値ωｅｓｔを計算し、出力する。推定部４７が出力した速度推定値ωｅｓｔは速度制御部４２に入力される。推定部４７が出力した角度推定値θｅｓｔは位置制御部４１及び選択部４８に入力される。推定部４７は、角度及び速度の推定方法として、既存の任意の推定方法を利用できる。
【００６３】
以下では、推定部４７が誘起電圧を利用して角度及び速度を推定する場合を例に説明する。モータ１には以下の電圧方程式が成り立つ。
【００６４】
【数３】
2018007533.tif 000005
【００６５】
式（３）〜式（５）において、Ｒはコイルの巻線抵抗、ｐは微分演算子、Ｌｄはｄ軸インダクタンス、Ｌｑはｑ軸インダクタンス、ｅｄｃはｄｃ軸誘起電圧、ｅｑｃはｑｃ軸誘起電圧である。また、Ｉｄはｄ軸電流、Ｉｑはｑ軸電流、ωｒｅは回転子の実際の速度である実速度、θｒｅは回転子の実際の角度である実角度、Ψａは電気子鎖磁束数である。
【００６６】
式（３）より、以下の式が成り立つ。
【００６７】
【数４】
2018007533.tif 000006
【００６８】
ωｅｓｔ≒ωｒｅとすると、式（４）及び式（６）より、以下の式が成り立つ。
【００６９】
【数５】
2018007533.tif 000007
【００７０】
また、回転子が等速回転中とすると、Ｉｄは０、Ｉｑは一定となるため、式（５）は以下のように書き換えられる。
【００７１】
【数６】
2018007533.tif 000008
【００７２】
Ｉｄが０、Ｉｑが一定の場合、Ｉｄｃも一定となる。したがって、式（７）及び式（８）より、以下の式が成り立つ。
【００７３】
【数７】
2018007533.tif 000009
【００７４】
クローズドループ制御では、実角度θｒｅを角度指令値θ＊と一致させるために、角度推定値θｅｓｔが実角度θｒｅと一致するように制御される。そこで、左辺を０とすると、以下の式が成り立つ。
【００７５】
【数８】
2018007533.tif 000010
【００７６】
推定部４７は、式（１０）を満たす実速度ωｒｅを、速度推定値ωｅｓｔとして出力する。推定部４７は、速度推定値ωｅｓｔを積分することにより、角度推定値θｅｓｔを計算できる。
【００７７】
選択部４８は、角度指令値θ＊及び角度推定値θｅｓｔを入力され、選択信号ｓｅｌに応じて、いずれか一方を選択し、出力する。本実施形態において、選択信号ｓｅｌは、外部から入力される。選択部４８が出力した角度指令値θ＊又は角度推定値θｅｓｔは、第１座標変換部４５及び第２座標変換部４６に入力される。
【００７８】
選択部４８は、選択信号ｓｅｌによりオープンループ制御を指定された場合、角度指令値θ＊を選択し、出力する。選択部４８は、選択信号ｓｅｌによりクローズドループ制御を指定された場合、角度推定値θｅｓｔを選択し、出力する。
【００７９】
図５は、指令値切替部４３の一例を示す図である。図５の指令値切替部４３は、トリガ生成部４３１（ｔｒｉｇ）と、積分部４３２と、第１選択部４３３と、切替判定部４３４と、電流指令値生成部４３５（Ｉｄｃ１＊）と、第２選択部４３６と、第３選択部４３７と、第４選択部４３８と、を備える。
【００８０】
トリガ生成部４３１は、選択信号ｓｅｌを入力される。トリガ生成部４３１は、選択信号ｓｅｌにより指定された制御方法がクローズドループ制御からオープンループ制御に切り替わると、トリガ信号を出力する。トリガ信号の出力タイミングは、切替期間の開始タイミングに相当する。トリガ生成部４３１が出力したトリガ信号は、積分部４３２に入力される。
【００８１】
積分部４３２は、電流指令値Ｉｑｃｖ＊と、電流値−ΔＩｑｃと、トリガ信号と、を入力される。積分部４３２は、トリガ信号を入力されると、その時点で入力されている電流指令値Ｉｑｃｖ＊を保持するとともに、電流値−ΔＩｑｃの積分を開始する。そして、積分部４３２は、電流指令値Ｉｑｃｖ＊に、電流値−ΔＩｑｃの積分値を加算した値を、電流指令値Ｉｑｃ１＊として出力する。電流指令値Ｉｑｃ１＊は、トリガ信号が入力された時点の電流指令値Ｉｑｃｖ＊を初期値として、サンプリング時間ごとに電流値ΔＩｑｃずつ小さくなる。積分部４３２が出力した電流指令値Ｉｑｃ１＊は、切替判定部４３４、電流指令値生成部４３５、及び第３選択部４３７に入力される。
【００８２】
第１選択部４３３は、電流指令値Ｉｑｃｖ＊と、０と、選択信号ｓｅｌと、を入力される。第１選択部４３３は、選択信号ｓｅｌに従って、電流指令値Ｉｑｃｖ＊又は０を、電流指令値Ｉｑｃ２＊として出力する。
【００８３】
第１選択部４３３は、選択信号ｓｅｌによりクローズドループ制御が指定されている場合、電流指令値Ｉｑｃ２＊として、電流指令値Ｉｑｃｖ＊を出力する。第１選択部４３３は、選択信号ｓｅｌによりオープンループ制御が指定されている場合、電流指令値Ｉｑｃ２＊として、０を出力する。第１選択部４３３が出力した電流指令値Ｉｑｃ２＊は、第３選択部４３７に入力される。
【００８４】
切替判定部４３４は、選択信号ｓｅｌと、電流指令値Ｉｑｃ１＊と、を入力される。切替判定部４３４は、選択信号ｓｅｌ及び電流指令値Ｉｑｃ１＊に基づいて、電流指令値Ｉｄｃ＊，Ｉｑｃ＊の切替期間中であるか否か判定する。切替判定部４３４は、選択信号ｓｅｌによりオープンループ制御が指定され、かつ、電流指令値Ｉｑｃ１＊が０以上である場合、切替期間中であると判定し、他の場合、切替期間中ではないと判定する。
【００８５】
切替判定部４３４は、判定結果に応じた切替信号を出力する。以下では、切替判定部４３４は、切替期間中であると判定した場合、切替信号としてＨを出力し、切替判定中ではないと判定した場合、切替信号としてＬを出力するものとする。切替判定部４３４が出力した切替信号は、第３選択部４３７及び第４選択部４３８に入力される。
【００８６】
電流指令値生成部４３５は、電流指令値Ｉｑｃ１＊に基づいて、電流指令値Ｉｄｃ１＊を生成し、出力する。電流指令値Ｉｄｃ１＊は、以下の式により生成される。
【００８７】
【数９】
2018007533.tif 000011
【００８８】
式（１１）からわかるように、電流指令値生成部４３５は、制御方法の切替前後でモータ１に供給する電流の振幅が変わらないように、電流指令値Ｉｄｃ１＊を生成する。このような電流指令値Ｉｄｃ１＊の生成が可能なように、電流指令値ＯｐｅｎＩｄｃ＊は、Ｉｑｃ１＊の最大値、すなわち、電流指令値Ｉｑｃｖ＊の最大値より大きく設定されるのが好ましい。電流指令値生成部４３５が出力した電流指令値Ｉｄｃ１＊は、第４選択部４３８に入力される。
【００８９】
第２選択部４３６は、電流指令値ＯｐｅｎＩｄｃ＊と、０と、選択信号ｓｅｌと、を入力される。第２選択部４３６は、選択信号ｓｅｌに従って、電流指令値ＯｐｅｎＩｄｃ＊又は０を、電流指令値Ｉｄｃ２＊として出力する。
【００９０】
第２選択部４３６は、選択信号ｓｅｌによりクローズドループ制御が指定されている場合、電流指令値Ｉｄｃ２＊として、０を出力する。第２選択部４３６は、選択信号ｓｅｌによりオープンループ制御が指定されている場合、電流指令値Ｉｑｃ２＊として、電流指令値ＯｐｅｎＩｄｃ＊を出力する。第２選択部４３６が出力した電流指令値Ｉｄｃ２＊は、第４選択部４３８に入力される。
【００９１】
第３選択部４３７は、電流指令値Ｉｑｃ１＊，Ｉｑｃ２＊と、切替信号と、を入力される。第３選択部４３７は、切替信号に従って、電流指令値Ｉｑｃ１＊又は電流指令値Ｉｑｃ２＊を、電流指令値Ｉｑｃ＊として出力する。
【００９２】
第３選択部４３７は、切替信号としてＨを入力された場合、すなわち、切替期間中である場合、電流指令値Ｉｑｃ＊として、電流指令値Ｉｑｃ１＊を出力する。第３選択部４３７は、切替信号としてＬを入力された場合、すなわち、切替期間中でない場合、電流指令値Ｉｑｃ＊として、電流指令値Ｉｑｃ２＊を出力する。
【００９３】
第４選択部４３８は、電流指令値Ｉｄｃ１＊，Ｉｄｃ２＊と、切替信号と、を入力される。第４選択部４３８は、切替信号に従って、電流指令値Ｉｄｃ１＊又は電流指令値Ｉｄｃ２＊を、電流指令値Ｉｄｃ＊として出力する。
【００９４】
第４選択部４３８は、切替信号としてＨを入力された場合、すなわち、切替期間中である場合、電流指令値Ｉｄｃ＊として、電流指令値Ｉｄｃ１＊を出力する。第４選択部４３８は、切替信号としてＬを入力された場合、すなわち、切替期間中でない場合、電流指令値Ｉｄｃ＊として、電流指令値Ｉｄｃ２＊を出力する。
【００９５】
以上のような構成により、指令値切替部４３は、選択信号ｓｅｌによりクローズドループ制御を指定されている間、電流指令値Ｉｑｃ＊として、電流指令値Ｉｑｃｖ＊を出力し、電流指令値Ｉｄｃ＊として、０を出力する。また、指令値切替部４３は、切替期間中、電流指令値Ｉｑｃ＊として、電流指令値Ｉｑｃ１＊を出力し、電流指令値Ｉｄｃ＊として、電流指令値Ｉｄｃ１＊を出力する。また、指令値切替部４３は、選択信号ｓｅｌによりオープンループ制御を指定され、かつ、切替期間の終了後、電流指令値Ｉｑｃ＊として、０を出力し、電流指令値Ｉｄｃ＊として、電流指令値ＯｐｅｎＩｄｃ＊を出力する。
【００９６】
上述の通り、電流指令値Ｉｄｃ１＊は、モータ１に供給される電流の振幅が電流指令値ＯｐｅｎＩｄｃ＊となるように生成される。したがって、切替期間中にモータ１に供給される電流の振幅は、ＯｐｅｎＩｄｃ＊となる。結果として、指令値切替部４３により、切替中にモータ１に供給される電流の振幅と、切替後にモータ１に供給される電流の振幅と、が一定になるように、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を出力することができる。
【００９７】
なお、指令値切替部４３は、図５の構成に限られず、上記のように電流指令値Ｉｄｃ＊，Ｉｑｃ＊を遷移可能な任意の構成とすることができる。また、図５の例では、指令値切替部４３は、電流指令値Ｉｑｃ１＊を直線的に小さくしたが、電流指令値Ｉｑｃ１＊を小さくする方法はこれに限られない。例えば、指令値切替部４３は、電流指令値Ｉｄｃ１＊を０からＯｐｅｎＩｄｃ＊まで直線的に大きくし、電流指令値Ｉｄｃ１＊の変化に応じて電流指令値Ｉｑｃ１＊を小さくしてもよい。
【００９８】
（モータ駆動システムの動作）
図６は、本実施形態に係るモータ駆動システムの動作の一例を示すフローチャートである。モータ制御装置４は、選択信号ｓｅｌによりクローズドループ制御を指定されている場合（ステップＳ１０１のＹＥＳ）、モータ１をクローズドループ制御する。クローズドループ制御は、図６のステップＳ１０２〜Ｓ１１０に相当する。モータ制御装置４は、選択信号ｓｅｌによりオープンループ制御を指定されている場合（ステップＳ１０１のＮＯ）、モータ１をオープンループ制御する。オープンループ制御は、図６のステップＳ１１１〜Ｓ１１８に相当する。以下、クローズドループ制御及びオープンループ制御について、それぞれ説明する。
【００９９】
（クローズドループ制御）
まず、クローズドループ制御について説明する。選択信号ｓｅｌによりクローズドループ制御が指定されると、位置制御部４１は、角度指令値θ＊と、角度推定値θｅｓｔと、に基づいて、角度誤差θｅｒｒを計算し、角度誤差θｅｒｒが０に追従するように、速度指令値ω＊を出力する（ステップＳ１０２）。速度指令値ω＊は、速度制御部４２に入力される。
【０１００】
速度制御部４２は、速度指令値ω＊と、速度推定値ωｅｓｔと、に基づいて、速度誤差ωｅｒｒを計算し、速度誤差ωｅｒｒが０に追従するように、電流指令値Ｉｑｃｖ＊を出力する（ステップＳ１０３）。電流指令値Ｉｑｃｖ＊は、指令値切替部４３に入力される。
【０１０１】
指令値切替部４３は、電流指令値Ｉｑｃ＊として電流指令値Ｉｑｃｖ＊を出力し、電流指令値Ｉｄｃ＊として０を出力する（ステップＳ１０４）。指令値切替部４３が出力した電流指令値Ｉｄｃ＊，Ｉｑｃ＊は、電流制御部４４に入力される。
【０１０２】
電流制御部４４は、電流指令値Ｉｄｃ＊，Ｉｑｃ＊と、電流値Ｉｄｃ，Ｉｑｃと、に基づいて、電流誤差Ｉｄｃｅｒｒ，Ｉｑｃｅｒｒを計算する。そして、電流制御部４４は、電流誤差Ｉｄｃｅｒｒ，Ｉｑｃｅｒｒが０に追従するように、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を出力する（ステップＳ１０５）。電流制御部４４が出力した電圧指令値Ｖｄｃ＊，Ｖｑｃ＊は、第１座標変換部４５に入力される。また、電流制御部４４が出力した電圧指令値Ｖｄｃ＊は、推定部４７に入力される。
【０１０３】
第１座標変換部４５は、選択部４８から入力された角度推定値θｅｓｔに基づいて、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を座標変換し、電圧指令値Ｖａ＊，Ｖｂ＊を出力する（ステップＳ１０６）。第１座標変換部４５が出力した電圧指令値Ｖａ＊，Ｖｂ＊は、インバータ２に入力される。
【０１０４】
インバータ２は、電圧指令値Ｖａ＊，Ｖｂ＊に応じた電流ＩＡ，ＩＢを、モータ１のＡ相及びＢ相のコイルにそれぞれ供給する（ステップＳ１０７）。これにより、モータ１は、回転子の実角度θｒｅが角度指令値θ＊に追従するように駆動される。
【０１０５】
電流検出器３は、モータ１に供給された電流ＩＡ，ＩＢの電流値Ｉａ，Ｉｂを検出し、出力する（ステップＳ１０８）。電流検出器３が出力した電流値Ｉａ，Ｉｂは、第２座標変換部４６に入力される。
【０１０６】
第２座標変換部４６は、選択部４８から入力された角度推定値θｅｓｔに基づいて、電流値Ｉａ，Ｉｂを座標変換し、電流値Ｉｄｃ，Ｉｑｃを出力する（ステップＳ１０９）。第２座標変換部４６が出力した電流値Ｉｄｃ，Ｉｑｃは、電流制御部４４及び推定部４７に入力される。
【０１０７】
推定部４７は、電圧指令値Ｖｄｃ＊と、電流値Ｉｄｃ，Ｉｑｃと、に基づいて、速度推定値ωｅｓｔ及び角度推定値θｅｓｔを計算し、出力する（ステップＳ１１０）。速度推定値ωｅｓｔ及び角度推定値θｅｓｔの計算方法は、上述の通りである。推定部４７が出力した速度推定値ωｅｓｔは、速度制御部４２に入力される。推定部４７が出力した角度推定値θｅｓｔは、位置制御部４１及び選択部４８に入力される。
【０１０８】
以降、クローズドループ制御が指定されている間、モータ１の駆動を終了するまで（ステップＳ１１９のＮＯ）、モータ駆動システムは、ステップＳ１０２〜Ｓ１１０の処理を繰り返す。
【０１０９】
（オープンループ制御）
次に、オープンループ制御について説明する。選択信号ｓｅｌによりオープンループ制御が指定されると、指令値切替部４３は、切替期間中であるか否か判定する（ステップＳ１１１）。この判定は、図５の切替判定部４３４により行われる。
【０１１０】
切替期間中である場合（ステップＳ１１１のＹＥＳ）、指令値切替部４３は、電流指令値Ｉｑｃ＊としてＩｑｃ１＊を出力し、電流指令値Ｉｄｃ＊として電流指令値Ｉｄｃ１＊を出力する（ステップＳ１１２）。一方、切替期間中ではない場合（ステップＳ１１１のＮＯ）、指令値切替部４３は、電流指令値Ｉｑｃ＊として０を出力し、電流指令値Ｉｄｃ＊として電流指令値ＯｐｅｎＩｄｃ＊を出力する（ステップＳ１１３）。指令値切替部４３が出力した電流指令値Ｉｄｃ＊，Ｉｑｃ＊は、電流制御部４４に入力される。
【０１１１】
電流制御部４４は、電流指令値Ｉｄｃ＊，Ｉｑｃ＊と、電流値Ｉｄｃ，Ｉｑｃと、に基づいて、電流誤差Ｉｄｃｅｒｒ，Ｉｑｃｅｒｒを計算する。そして、電流制御部４４は、電流誤差Ｉｄｃｅｒｒ，Ｉｑｃｅｒｒが０に追従するように、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を出力する（ステップＳ１１４）。電流制御部４４が出力した電圧指令値Ｖｄｃ＊，Ｖｑｃ＊は、第１座標変換部４５に入力される。
【０１１２】
第１座標変換部４５は、選択部４８から入力された角度指令値θ＊に基づいて、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を座標変換し、電圧指令値Ｖａ＊，Ｖｂ＊を出力する（ステップＳ１１５）。第１座標変換部４５が出力した電圧指令値Ｖａ＊，Ｖｂ＊は、インバータ２に入力される。
【０１１３】
インバータ２は、電圧指令値Ｖａ＊，Ｖｂ＊に応じた電流ＩＡ，ＩＢを、モータ１のＡ相及びＢ相のコイルにそれぞれ供給する（ステップＳ１１６）。これにより、モータ１が駆動される。
【０１１４】
電流検出器３は、モータ１に供給された電流ＩＡ，ＩＢの電流値Ｉａ，Ｉｂを検出し、出力する（ステップＳ１１７）。電流検出器３が出力した電流値Ｉａ，Ｉｂは、第２座標変換部４６に入力される。
【０１１５】
第２座標変換部４６は、選択部４８から入力された角度指令値θ＊に基づいて、電流値Ｉａ，Ｉｂを座標変換し、電流値Ｉｄｃ，Ｉｑｃを出力する（ステップＳ１１８）。第２座標変換部４６が出力した電流値Ｉｄｃ，Ｉｑｃは、電流制御部４４に入力される。
【０１１６】
以降、オープンループ制御が指定されている間、モータ１の駆動を終了するまで（ステップＳ１１９のＮＯ）、モータ駆動システムは、ステップＳ１１１〜Ｓ１１８の処理を繰り返す。
【０１１７】
なお、オープンループ制御を実行している間、モータ制御装置４の位置制御部４１、速度制御部４２、及び推定部４７の少なくとも１つは、動作していてもよいし、停止していてもよい。位置制御部４１、速度制御部４２、及び推定部４７を停止させることにより、モータ制御装置４の消費電力を低減できる。位置制御部４１、速度制御部４２、及び推定部４７の停止及び起動は、例えば、指令値切替部４３が、選択信号ｓｅｌに応じて行えばよい。
【０１１８】
図７は、本実施形態に係るモータ駆動システムによるモータ制御のシミュレーション結果を示す図である。図７において、上側のグラフは速度指令値ω＊及び実速度ωｒｅを示し、下側のグラフは電流指令値Ｉｄｃ＊，Ｉｑｃ＊を示す。また、図７において、左側のグラフは切替期間Ｔがない場合のシミュレーション結果を示し、右側のグラフは切替期間Ｔを有する本実施形態に係るモータ駆動システムによるシミュレーション結果を示す。
【０１１９】
図７は、モータ１を、停止、加速、定速、減速、停止という順番に制御している。各過程で、モータ１にはプルアウト相当の負荷がかけられている。また、減速を開始した時点で、制御方法がクローズドループ制御からオープンループ制御に切り替えられている。
【０１２０】
図７の左下のグラフに示すように、切替期間Ｔがない場合、制御方法が切り替えられると、電流指令値Ｉｄｃ＊は０からＯｐｅｎＩｄｃ＊に、電流指令値Ｉｑｃ＊はその時点の値から０に、瞬間的に切り替えられる。このように、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を瞬間的に切り替えると、モータ１に供給される電流の電気角が、切替の前後で不連続となり、モータ１に大きなトルク振動が発生する。
【０１２１】
結果として、図７の左上のグラフに示すように、モータ１の実速度ωｒｅは、速度指令値ω＊に十分に追従せず、速度指令値ω＊に対して振動する。実速度ωｒｅの振動は、モータ１の異音や脱調の原因となる。
【０１２２】
これに対して、本実施形態に係るモータ駆動システムによれば、図７の右下のグラフに示すように、制御方法が切り替えられると、電流指令値Ｉｄｃ＊は０からＯｐｅｎＩｄｃ＊に、電流指令値Ｉｑｃ＊はその時点の値から０に、切替期間Ｔの間に段階的に遷移する。このように、電流指令値Ｉｄｃ＊，Ｉｑｃ＊を段階的に遷移させると、モータ１に供給される電流の電気角の不連続が緩和され、モータ１に発生するトルク振動が抑制される。結果として、図７の右上のグラフに示すように、モータ１の実速度ωｒｅが速度指令値ω＊に追従する。
【０１２３】
以上説明した通り、本実施形態に係るモータ駆動システムによれば、モータ１の制御方法の切替に伴う電流指令値Ｉｄｃ＊，Ｉｑｃ＊の切替により発生する、モータ１のトルク振動を抑制することができる。これにより、モータ１の異音や脱調を抑制することができる。
【０１２４】
図８は、画像形成装置の一例を示す図である。図８の画像形成装置５は、プリンタ機能を備える。画像形成装置５は、スキャナ機能やＦＡＸ機能などを備えてもよい。画像形成装置５は、給紙ローラ５１や紙搬送ローラ５２などのローラを備える。本実施形態に係るモータ駆動システムは、これらのローラを駆動するためのモータの駆動システムとして利用できる。
【０１２５】
図９は、搬送装置の一例を示す図である。図９の搬送装置６は、紙、紙幣、プリプレグなどのシート状の対象物を搬送する任意の装置である。搬送装置６は、画像形成装置５に搭載されていてもよい。搬送装置６は、対象物を搬送するための搬送ローラ６１を備える。本実施形態に係るモータ駆動システムは、これらのローラを駆動するためのモータの駆動システムとして利用できる。
【０１２６】
なお、本実施形態に係るモータ駆動システムは、画像形成装置５や搬送装置６に限られず、自動車、ロボット、アミューズメント機器など、ステッピングモータを搭載した任意の装置に適用可能である。
【０１２７】
＜第２実施形態＞
第２実施形態に係るモータ駆動システムについて、図１０及び図１１を参照して説明する。図１０は、本実施形態に係るモータ駆動システムの一例を示す図である。図１０に示すように、本実施形態において、モータ制御装置４は、機能構成として、制御方法切替部４９を備える。制御方法切替部４９は、メモリに格納されたプログラムをプロセッサが実行することにより実現される。他の構成は、第１実施形態と同様である。
【０１２８】
制御方法切替部４９は、推定部４７から速度推定値ωｅｓｔを入力される。制御方法切替部４９は、速度推定値ωｅｓｔに基づいて、制御方法を選択し、選択した制御方法を指定する選択信号ｓｅｌを出力する。制御方法切替部４９が出力した選択信号ｓｅｌは、第１実施形態と同様に、指令値切替部４３及び選択部４８に入力される。
【０１２９】
制御方法切替部４９は、例えば、速度推定値ωｅｓｔが閾値以上である場合、クローズドループ制御を選択し、速度推定値ωｅｓｔが閾値未満である場合、オープンループ制御を選択する。これにより、モータ１の速度に応じて、制御方法を切り替えることができる。また、モータ１の高速駆動時に、誘起電圧を利用したクローズドループ制御を実行することにより、モータ１を高精度に制御することができる。なお、クローズドループ制御からオープンループ制御に切り替える際に利用する速度推定値ωｅｓｔの閾値と、オープンループ制御からクローズドループ制御に切り替える際に利用する速度推定値ωｅｓｔの閾値と、は同一であってもよいし、異なってもよい。
【０１３０】
また、制御方法切替部４９は、速度推定値ωｅｓｔの変化（加速度の推定値）に基づいて、制御方法を選択してもよい。これにより、減速中、加速中、定速駆動などの、モータ１の状態に応じて、制御方法を切り替えることができる。この選択方法を、上記の選択方法と組み合わせることも可能である。
【０１３１】
図１１は、制御方法切替部４９の一例を示す図である。図１１の制御方法切替部４９は、速度推定値ωｅｓｔとその変化とに基づいて、制御方法を選択する。図１１の制御方法切替部４９は、微分部４９１と、減速判定部４９２と、速度判定部４９３と、制御方法選択部４９４と、を備える。
【０１３２】
微分部４９１は、速度推定値ωｅｓｔを微分し、得られた微分値を出力する。この微分値は、回転子の加速度の推定値に相当する。微分部４９１が出力した微分値は、減速判定部４９２に入力される。
【０１３３】
減速判定部４９２は、微分値に基づいて、回転子が減速中であるか判定し、判定結果を出力する。減速判定部４９２は、微分値が０未満である場合、モータ１は減速中と判定する。減速判定部４９２が出力した判定結果は、制御方法選択部４９４に入力される。
【０１３４】
速度判定部４９３は、速度推定値ωｅｓｔが、速度の閾値ωｒｅｆ未満であるか判定し、判定結果を出力する。速度判定部４９３が出力した判定結果は、制御方法選択部４９４に入力される。
【０１３５】
制御方法選択部４９４は、減速判定部４９２及び速度判定部４９３から入力された判定結果に基づいて、制御方法を選択し、選択した制御方法を指定する選択信号ｓｅｌを出力する。制御方法選択部４９４は、モータ１が減速中であり、かつ、速度推定値ωｅｓｔが閾値ωｒｅｆ未満である場合、オープンループ制御を選択し、他の場合、クローズドループ制御を選択する。
【０１３６】
以上説明した通り、本実施形態に係るモータ駆動システムによれば、モータ１の速度推定値ωｅｓｔに応じて、自動的に制御方法を切り替えることができる。
【０１３７】
＜第３実施形態＞
第３実施形態に係るモータ駆動システムについて、図１２及び図１３を参照して説明する。図１２は、本実施形態に係るモータ駆動システムの一例を示す図である。以下、第１実施形態との相違点を中心に説明する。
【０１３８】
モータ１は、３相ブラシレスＤＣモータ（ＢＬＤＣＭ）である。モータ１の各相をＵ相、Ｖ相、及びＷ相と称する。モータ１は、Ｕ相、Ｖ相、及びＷ相のコイル（固定子）と、回転子と、を備える。回転子は、Ｓ極及びＮ極が交互に並んだ永久磁石により構成され、ｐ個の極ペア（Ｓ極及びＮ極のペア）を有する。
【０１３９】
モータ１は、インバータ２から供給された電流によって駆動される。具体的には、モータ１は、インバータ２からＵ相、Ｖ相、及びＷ相のコイルにそれぞれ電流ＩＵ，ＩＶ，ＩＷを供給される。モータ１の回転子は、電流ＩＵ，ＩＶ，ＩＷに応じてＵ相、Ｖ相、及びＷ相のコイルが発生させた磁界に従って回転する。
【０１４０】
インバータ２は、モータ制御装置４が出力した電圧指令値Ｖｕ＊，Ｖｖ＊，Ｖｗ＊に応じた電流ＩＵ，ＩＶ，ＩＷをモータ１に供給し、モータ１を駆動する。本実施形態において、インバータ２は、電圧指令値Ｖｕ＊，Ｖｖ＊，Ｖｗ＊から３相の制御信号を生成するＰＷＭ回路と、３相の駆動回路と、により構成することができる。
【０１４１】
電流検出器３は、モータ１に供給された電流ＩＵ，ＩＶ，ＩＷの電流値Ｉｕ，Ｉｖ，Ｉｗのうち、少なくとも２つの電流値を検出し、出力する。図１２の例では、電流検出器３は、電流値Ｉｕ，Ｉｖを検出している。電流検出器３が出力した電流値Ｉｕ，Ｉｖは、モータ制御装置４に入力される。電流検出器３の構成は、第１実施形態と同様である。
【０１４２】
第１座標変換部４５は、電圧指令値Ｖｄｃ＊，Ｖｑｃ＊を、ｄｃｑｃ座標系からＵＶＷ座標系に座標変換することにより、電圧指令値Ｖｕ＊，Ｖｖ＊，Ｖｗ＊を生成し、出力する。第１座標変換部４５が出力した電圧指令値Ｖｕ＊，Ｖｖ＊，Ｖｗ＊は、インバータ２に入力される。電圧指令値Ｖｕ＊，Ｖｖ＊，Ｖｗ＊は、以下の式で表される。
【０１４３】
【数１０】
2018007533.tif 000012
【０１４４】
式（１２）に右辺第１項は、座標変換のための変換行列である。θは、選択部４８から入力される角度であり、オープンループ制御の場合、角度指令値θ＊、クローズドループ制御の場合、角度推定値θｅｓｔである。
【０１４５】
第２座標変換部４６は、電流値Ｉｕ，Ｉｖ，Ｉｗを、ＵＶＷ座標系からｄｃｑｃ座標系に座標変換することにより、電流値Ｉｄｃ，Ｉｑｃを生成し、出力する。第２座標変換部４６が出力した電流値Ｉｄｃ，Ｉｑｃは、電流制御部４４及び推定部４７に入力される。電流値Ｉｄｃ，Ｉｑｃは、以下の式で表される。
【０１４６】
【数１１】
2018007533.tif 000013
【０１４７】
式（１３）に右辺第１項は、座標変換のための変換行列である。θは、選択部４８から入力される角度であり、オープンループ制御の場合、角度指令値θ＊、クローズドループ制御の場合、角度推定値θｅｓｔである。
【０１４８】
本実施形態におけるモータ駆動システムの他の構成は、第１実施形態と同様である。以上のような構成により、本実施形態に係るモータ駆動装置は、第１実施形態と同様に、３相ブラシレスＤＣモータを駆動することができる。すなわち、モータ１の制御方法の切替に伴う電流指令値Ｉｄｃ＊，Ｉｑｃ＊の切替により発生する、モータ１のトルク振動を抑制し、モータ１の異音や脱調を抑制することができる。
【０１４９】
なお、図１３に示すように、本実施形態に係るモータ駆動システムに、第２実施形態で説明した制御方法切替部４９を追加することも可能である。これにより、３相ブラシレスＤＣモータの制御方法を自動的に切り替えることができる。
【０１５０】
また、本実施形態に係るモータ駆動システムは、画像形成装置５、搬送装置６、自動車、ロボット、アミューズメント機器など、３相ブラシレスＤＣモータを搭載した任意の装置に適用可能である。
【０１５１】
なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせなど、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０１５２】
１：モータ
２：インバータ
３：電流検出器
４：モータ制御装置
５：画像形成装置
６：搬送装置
２１：ＰＷＭ回路
２２：駆動回路
３１：シャント抵抗
３２：差動アンプ
３３：ＡＤ変換器
４１：位置制御部
４２：速度制御部
４３：指令値切替部
４４：電流制御部
４５：第１座標変換部
４６：第２座標変換部
４７：推定部
４８：選択部
４９：制御方法切替部
【先行技術文献】
【特許文献】
【０１５３】
【特許文献１】特許第４６２５１１６号公報
【図１】
2018007533.tif 000014
【図２】
2018007533.tif 000015
【図３】
2018007533.tif 000016
【図４】
2018007533.tif 000017
【図５】
2018007533.tif 000018
【図６】
2018007533.tif 000019
【図７】
2018007533.tif 000020
【図８】
2018007533.tif 000021
【図９】
2018007533.tif 000022
【図１０】
2018007533.tif 000023
【図１１】
2018007533.tif 000024
【図１２】
2018007533.tif 000025
【図１３】
2018007533.tif 000026