(57)【要約】【課題】制御動作の高速化を保持しながら素子の使用者の欲する機能の追加／削除の自由度を向上したモータ制御素子および電気機器を提供する。【解決手段】電流制御部４、ｄｑ／αβ座標変換器５、αβ／ＵＶＷ座標変換器６、ＰＷＭ形成部７、電流検出部８、Ａ／Ｄ変換部９、ＵＶＷ／αβ座標変換器１０、αβ／ｄｑ座標変換器１１、ＳＩＮ／ＣＯＳ演算部１３がハードウェアＨにより構成されており、処理の高速化を保持できる。位置推定部１２、速度制御部３がソフトウェアにより構成されているため、モータ御制御素子２の使用者は容易に改変することができる。【選択図】図１
2011087456.tif 000002
【特許請求の範囲】
【請求項１】
指令ｄ軸電圧、指令ｑ軸電圧を生成する指令電圧生成部と、
前記指令電圧生成部による指令ｄ軸電圧、指令ｑ軸電圧に基づいて、スイッチング素子から構成されモータを駆動するためのインバータに対し通電信号を出力する電圧演算処理部と、
前記電圧演算処理部がインバータに通電信号を出力することにより前記モータの巻線に流れる電流を検出する電流検出部と、
前記電流検出部の検出電流に基づいて励磁成分電流であるｄ軸電流とトルク成分電流であるｑ軸電流とを求める入力電流演算部と、
モータ定数、前記指令電圧生成部のｄ軸電圧、ｑ軸電圧、前記入力電流演算部のｄ軸電流、ｑ軸電流のうちの少なくとも何れか一つのパラメータに基づいて前記モータの回転速度を推定、又は前記モータの回転速度を検出し回転速度信号を出力する速度情報生成部と、
前記速度情報生成部が出力した回転速度信号に基づいて回転子の位置情報を出力する位置情報生成部と、を備えてなる複数の機能部が設けられ、前記インバータを介して前記モータを駆動制御するように構成されたモータ制御素子であって、
使用者または製造者等により提供された制御ソフトウェアを実行するプロセッサと、
前記複数の機能部のうち少なくとも一部がハードウェアにより構成されると共に、前記ハードウェアにより構成された機能部は、入力用レジスタ、出力用レジスタ、内部変数レジスタ、内部定数レジスタなどの少なくとも一つのパラメータ保持部を備え、
前記パラメータ保持部は、前記プロセッサから読出／書込可能に構成され、
前記ハードウェアにより構成された機能部は、予め設定されたシーケンスに沿って動作するように構成されていることを特徴とするモータ制御素子。
【請求項２】
前記複数の機能部は、前記プロセッサから動作の有効／無効を切換可能に構成されていることを特徴とする請求項１記載のモータ制御素子。
【請求項３】
前記機能部は前記プロセッサが制御ソフトウェアを実行することにより実現可能な構成であって、
前記プロセッサが制御ソフトウェアを実行することにより実現可能な機能部は、前記ハードウェア内に構成された機能部と切換可能に構成されていることを特徴とする請求項１または２記載のモータ制御素子。
【請求項４】
前記複数の機能部のうち、少なくとも前記電圧演算処理部はハードウェアにより構成され、
前記電圧演算処理部は、前記パラメータ保持部として１シャント駆動電流検出方式、３シャント駆動電流検出方式を切換設定可能なフラグを保持する駆動切換レジスタを備え、前記プロセッサから前記駆動切換レジスタに直接書込可能に構成されており、前記駆動切換レジスタの設定値に応じて、１シャント駆動時および３シャント駆動時のそれぞれにおける電流検出のタイミングを切り換えることを特徴とする請求項１ないし３の何れかに記載のモータ制御素子。
【請求項５】
前記指令電圧生成部は、前記モータの回転速度が外部から与えられる指令回転速度に一致するように指令ｄ軸電流および指令ｑ軸電流を生成する速度制御部と、前記入力電流演算部により求められた前記ｄ軸電流および前記ｑ軸電流が前記速度制御部が生成した前記指令ｄ軸電流および前記指令ｑ軸電流にそれぞれ一致するように指令ｑ軸電圧および指令ｑ軸電圧を生成する電流制御部とを備え、
前記電流制御部は、前記ハードウェアとして構成され、前記パラメータ保持部として指令ｄ軸電流値および指令ｑ軸電流値を保持する電流値入力レジスタを備え、前記プロセッサから電流値入力レジスタに当該指令値を直接書込可能に構成されていることを特徴とする請求項１ないし４の何れかに記載のモータ制御素子。
【請求項６】
前記電圧演算処理部は、前記ハードウェアとして構成され前記パラメータ保持部として指令ｄ軸電圧値および指令ｑ軸電圧値を保持する電圧値入力レジスタを備え、前記プロセッサから電圧値入力レジスタに当該指令値を直接書込可能に構成されていることを特徴とする請求項１ないし５の何れかに記載のモータ制御素子。
【請求項７】
前記プロセッサが前記機能部のハードウェアのパラメータ保持部に制御に応じた指令値を書込むことにより複数の制御動作を選択可能に構成されていることを特徴とする請求項１ないし６の何れかに記載のモータ制御素子。
【請求項８】
前記電圧演算処理部は、前記指令ｄ軸電圧および前記指令ｑ軸電圧をα−β座標系で表した値に変換するｄｑ／αβ座標変換器と、前記ｄｑ／αβ座標変換器によりα−β座標系で表された値を固定子の各相指令電圧に変換するαβ／ＵＶＷ座標変換器と、前記αβ／ＵＶＷ座標変換器により変換された各相指令電圧を入力し、指令ｄ軸電圧および指令ｑ軸電圧に一致する電圧を供給するためのパルス幅変調されたゲート駆動信号を形成し前記インバータに通電信号として出力するＰＷＭ信号形成部とを含んだ前記ハードウェアにより構成され、
前記電流検出部は、前記モータに流れる電流値をＡ／Ｄ変換するＡ／Ｄ変換部を含んだ前記ハードウェアにより構成され、
前記プロセッサは、停止状態において、前記ＰＷＭ信号形成部、および、前記Ａ／Ｄ変換部を含む前記電流検出部の制御動作を有効にすると共に、前記ｄｑ／αβ座標変換器および前記αβ／ＵＶＷ座標変換器の制御動作を無効とする制御動作指令を前記ハードウェアに設定し、
フィードバック制御動作およびゼロ電流検出動作を無効とし位相補間を不許可とする設定を前記ハードウェアに行いＰＷＭ制御動作を停止することを特徴とする請求項１ないし７の何れかに記載のモータ制御素子。
【請求項９】
前記電圧演算処理部は、前記指令ｄ軸電圧および前記指令ｑ軸電圧をα−β座標系で表した値に変換するｄｑ／αβ座標変換器と、前記ｄｑ／αβ座標変換器によりα−β座標系で表された値を固定子の各相指令電圧に変換するαβ／ＵＶＷ座標変換器と、前記αβ／ＵＶＷ座標変換器により変換された各相指令電圧を入力し、指令ｄ軸電圧および指令ｑ軸電圧に一致する電圧を供給するためのパルス幅変調されたゲート駆動信号を形成し前記インバータに通電信号として出力するＰＷＭ信号形成部とを含んだハードウェアにより構成され、
前記電流検出部は、前記モータに流れる電流値をＡ／Ｄ変換するＡ／Ｄ変換部を含んだハードウェアにより構成され、
前記プロセッサは、ゼロ電流検出状態において、前記ＰＷＭ信号形成部、および、前記Ａ／Ｄ変換部を含む前記電流検出部の制御動作を有効とし、前記ｄｑ／αβ座標変換器、および、前記αβ／ＵＶＷ座標変換器の制御動作を無効とする制御動作指令を前記ハードウェアに設定し、
フィードバック制御動作を無効とし、位相補間を許可し、ゼロ電流検出動作を有効とする設定を前記ハードウェアに行いゼロ電流検出することを特徴とする請求項１ないし８の何れかに記載のモータ制御素子。
【請求項１０】
前記電圧演算処理部、前記電流検出部、前記入力電流演算部は、共にハードウェアにより構成され、
前記プロセッサは、位置決め状態において、前記電圧演算処理部、前記電流検出部、前記入力電流演算部の制御動作を有効とする制御動作指令を前記ハードウェアに設定することで前記電圧演算処理部、前記電流検出部、前記入力電流演算部によるシーケンス処理を有効とし、
フィードバック制御動作を有効とし、ゼロ電流検出動作を無効とし、位相補間を不許可とする設定を前記ハードウェアに行い前記モータの回転子の位置をゼロ付近に固定させることを特徴とする請求項１ないし９の何れかに記載のモータ制御素子。
【請求項１１】
前記電圧演算処理部、前記電流検出部、前記入力電流演算部は、共にハードウェアにより構成され、
前記プロセッサは、強制転流ステージにおいて、前記電圧演算処理部、前記電流検出部、前記入力電流演算部の制御動作を有効とする制御動作指令を前記ハードウェアに設定することで前記電圧演算処理部、前記電流検出部、前記入力電流演算部によるシーケンス処理を有効とし、
フィードバック制御動作を有効とし、ゼロ電流検出動作を無効とし、位相補間を許可とする設定を前記ハードウェアに行うことで強制的に回転磁界を与えることによって回転子がそれに追随して回転することを特徴とする請求項１ないし１０の何れかに記載のモータ制御素子。
【請求項１２】
前記電圧演算処理部、前記電流検出部、前記入力電流演算部は、共にハードウェアにより構成され、
前記プロセッサは、強制定常切り替えステージにおいて、前記電圧演算処理部、前記電流検出部、前記入力電流演算部の制御動作を有効とする制御動作指令を前記ハードウェアに設定することで前記電圧演算処理部、前記電流検出部、前記入力電流演算部によるシーケンス処理を有効とし、
フィードバック制御動作を有効とし、ゼロ電流検出動作を無効とし、位相補間を不許可とする設定を前記ハードウェアに行い前記モータを回転子の位置に合わせた駆動を行うことで強制的な回転磁界を与えないようにして定常状態に移行させることを特徴とする請求項１ないし１１の何れかに記載のモータ制御素子。
【請求項１３】
前記電圧演算処理部、前記電流検出部、前記入力電流演算部は、共にハードウェアにより構成され、
前記プロセッサは、強制定常切り替えステージにおいて、前記電圧演算処理部、前記電流検出部、前記入力電流演算部の制御動作を有効とする制御動作指令を前記ハードウェアに設定することで前記電圧演算処理部、前記電流検出部、前記入力電流演算部によるシーケンス処理を有効とし、
フィードバック制御動作を有効とし、ゼロ電流検出動作を無効とし、位相補間を不許可とする設定を前記ハードウェアに行い前記モータを回転子の位置に合わせて駆動を行うことで定常的に駆動させることを特徴とする請求項１ないし１２の何れかに記載のモータ制御素子。
【請求項１４】
ソフトウェアにより構成された速度制御部と、
前記ハードウェアにより構成された電流制御部とを備え、
前記プロセッサは、前記速度制御部および前記電流制御部の動作を無効化し、前記指令ｄ軸電圧および指令ｑ軸電圧のパラメータ設定値を共に０として前記パラメータ保持部としての電圧値入力レジスタに書込み設定することで短絡ブレーキ制御することを特徴とする請求項１ないし１３の何れかに記載のモータ制御素子。
【請求項１５】
前記指令電圧生成部は、
ソフトウェアにより構成されると共に指令ｄ軸電流および指令ｑ軸電流を生成する速度制御部と、
前記ハードウェアにより構成されると共に前記速度制御部の指令ｄ軸電流および指令ｑ軸電流に基づいて前記指令ｄ軸電圧および前記指令ｑ軸電圧を生成する電流制御部とを含み、
前記プロセッサは、
前記速度制御部および前記電流制御部の動作を共に無効化し、前記指令ｄ軸電圧および前記指令ｑ軸電圧のパラメータ設定値を調整して前記パラメータ保持部としての電圧値入力レジスタに書込み設定することで前記モータを回生ブレーキ制御することを特徴とする請求項１ないし１４の何れかに記載のモータ制御素子。
【請求項１６】
前記指令電圧生成部は、
指令ｄ軸電流および指令ｑ軸電流を生成する速度制御部と、
前記ハードウェアにより構成されると共に前記指令ｄ軸電流および前記指令ｑ軸電流に基づいて前記指令ｄ軸電圧および前記指令ｑ軸電圧を生成する電流制御部を含み、
前記プロセッサは、
前記速度制御部の動作を無効化し、前記指令ｄ軸電流および前記指令ｑ軸電流のパラメータ設定値を共に直接０として前記パラメータ保持部としての電流値入力レジスタに書込み設定することで前記電流制御部を動作させることにより前記モータをフリーランさせることを特徴とする請求項１ないし１５の何れかに記載のモータ制御素子。
【請求項１７】
少なくとも前記電圧演算処理部、前記電流検出部、前記入力電流演算部はハードウェアにより構成され、
前記速度情報生成部、前記位置情報生成部、前記指令電圧生成部は、前記プロセッサが実行する制御ソフトウェアにより構成可能であることを特徴とする請求項１ないし１６の何れかに記載のモータ制御素子。
【請求項１８】
前記ハードウェアが複数の同一回路を備えることで複数チャンネルを備え、複数のモータを制御可能に構成されていることを特徴とする請求項１ないし１７の何れかに記載のモータ制御素子。
【請求項１９】
前記ハードウェアで構成された機能部は、予め設定されたシーケンスに沿って動作したときに前記プロセッサに割込み信号を発生し、
前記プロセッサは前記発生した割込み信号を受け付けると所定の制御ソフトウェアを起動して処理することを特徴とする請求項１ないし１８の何れかに記載のモータ制御素子。
【請求項２０】
モータ、インバータおよび請求項１ないし１９のいずれかに記載のモータ制御素子を備えた電気機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータを駆動制御するためのモータ制御素子およびこのモータ制御素子を使用した電気機器に関する。
【背景技術】
【０００２】
従来、モータを駆動制御するためには、マイクロプロセッサやＤＳＰ（Digital  Signal Processor）が用いられている。マイクロプロセッサやＤＳＰを用いてソフトウェアをコーディングした場合、ソフトウェアの設計者は、ベクトル制御に関する数々の機能ブロックをソフトウェア化する必要があるため熟練技術を必要とし、開発日数や仕様要求の達成度は、技術者の技量、ソフトウェアのプログラミング、コーディングの経験値によって左右されることになってしまう。
このような問題を解決するため、モータの制御シーケンスを全てハードウェア化した技術が開発されている（例えば、特許文献１参照）。この特許文献１記載の技術によれば、複数の動作制御モジュールがｚ変換によるディジタルハードウェアにより構成されており、これらの動作制御モジュールなどを設定された順序でシーケンサに実行させることによってモータを制御している。この場合、ソフトウェアを開発する必要がなく、設定パラメータが少なくなるため、モータを簡便に制御することができ、しかもソフトウェアで構成するよりも高速実行することができる。
【０００３】
しかしながら、特許文献１の技術では、制御動作を行うためのモジュールがハードウェア化されているため、素子を使用するユーザが欲する特有の機能を追加することができず、特有の処理が必要な製品に用いることが困難になってしまう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１６８２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、上記事情に鑑みてなされたもので、その目的は、制御動作の高速化を保持しながら素子の使用者の欲する機能の追加／削除の自由度を向上することを可能としたモータ制御素子とこのモータ制御素子を利用した電気機器を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の実施形態のモータ制御素子は、指令ｄ軸電圧、指令ｑ軸電圧を生成する指令電圧生成部と、前記指令電圧生成部による指令ｄ軸電圧、指令ｑ軸電圧に基づいて、スイッチング素子から構成されモータを駆動するためのインバータに対し通電信号を出力する電圧演算処理部と、前記電圧演算処理部がインバータに通電信号を出力することにより前記モータの巻線に流れる電流を検出する電流検出部と、前記電流検出部の検出電流に基づいて励磁成分電流であるｄ軸電流とトルク成分電流であるｑ軸電流とを求める入力電流演算部と、モータ定数、前記指令電圧生成部のｄ軸電圧、ｑ軸電圧、前記入力電流演算部のｄ軸電流、ｑ軸電流のうちの少なくとも何れか一つのパラメータに基づいて前記モータの回転速度を推定、又は前記モータの回転速度を検出し回転速度信号を出力する速度情報生成部と、前記速度情報生成部が出力した回転速度信号に基づいて回転子の位置情報を出力する位置情報生成部と、を備えてなる複数の機能部が設けられ、前記インバータを介して前記モータを駆動制御するように構成されたモータ制御素子であって、使用者または製造者等により提供された制御ソフトウェアを実行するプロセッサと、前記複数の機能部のうち少なくとも一部がハードウェアにより構成されると共に、前記ハードウェアにより構成された機能部は、入力用レジスタ、出力用レジスタ、内部変数レジスタ、内部定数レジスタなどの少なくとも一つのパラメータ保持部を備え、前記パラメータ保持部は、前記プロセッサから読出／書込可能に構成され、前記ハードウェアにより構成された機能部は、予め設定されたシーケンスに沿って動作するように構成されていることを特徴としている。前記において、モータ定数とはモータ抵抗値、インダクタンス値、誘起電圧係数のことを示している。
【発明の効果】
【０００７】
本発明によれば、高速化を維持しながら素子の使用者の欲する機能の追加／削除の自由度が向上する。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１実施形態を示すモータ制御システムの機能ブロック図
【図２】３シャント検出方式による電流検出部の電気的構成図
【図３】モータ制御ステージの状態遷移図
【図４】制御動作指令と動作処理例を示すテーブル
【図５】制御動作指令の設定例を示すテーブル
【図６】入出力処理とそのシーケンスを示す図
【図７】制御ソフトウェアのメイン処理を示すフローチャート
【図８】制御ソフトウェアの割り込み処理を示すフローチャート
【図９】本発明の第２実施形態を示す図１相当図
【図１０】本発明の第３実施形態を示す図１相当図
【図１１】１シャント検出方式による電流検出部の電気的構成図
【図１２】電圧ベクトルと通電パターンと直流電流との制御対応を示す図
【図１３】αβ座標系における電圧ベクトルの説明図
【図１４】３シャント検出方式と１シャント検出方式の切換処理を示すフローチャート
【図１５】本発明の第４実施形態を示すブロック図
【図１６】動作説明図
【発明を実施するための形態】
【０００９】
（第１実施形態）
以下、本発明の第１実施形態について図１ないし図８を参照しながら説明する。
図１は、モータの回転をベクトル制御するモータ制御システムの構成を機能ブロックにより示している。モータ１は、例えば三相ＩＰＭ（Interior Permanent Magnet）モータにより構成される。ベクトル制御では、電機子巻線に流れる電流を、永久磁石の磁束方向と、それに直交する方向とに分離してそれらを独立に調整し磁束と発生トルクとを制御する。電流制御では、モータ１の回転子と共に回転するｄｑ座標系で表されたｄ軸電流（励磁電流）、ｑ軸電流（トルク成分電流）が用いられる。
【００１０】
図１に示すように、モータ制御素子２は、機能的には、速度制御部３、電流制御部４、ｄｑ／αβ座標変換器５、αβ／ＵＶＷ座標変換器６、ＰＷＭ形成部７、電流検出部８、Ａ／Ｄ変換部９、ＵＶＷ／αβ座標変換器１０、αβ／ｄｑ座標変換器１１、位置推定部１２、ＳＩＮ／ＣＯＳ演算部１３を備えており、定常状態においてはこの符号番順にシーケンス制御動作が行われる。尚、プロセッサＰが実行する制御ソフトウェアによって実現される構成部は図中点線で示しており、ハードウェアＨにより構成される構成部は図中実線で示されている。速度制御部３は、減算器１４とこの減算器１４の減算結果をＰＩＤ制御するＰＩＤ制御器１５を接続して構成されており、ＰＩＤ制御器１５は指令ｄ軸電流Ｉｄｒｅｆ、指令ｑ軸電流Ｉｑｒｅｆを出力する。
【００１１】
また、電流制御部４は、減算器１６ｄ、１６ｑ、ＰＩＤ制御器１７ｄ、１７ｑにより構成されている。減算器１６ｄは、速度制御部３から与えられる指令ｄ軸電流Ｉｄｒｅｆからｄ軸電流Iｄを減算してｄ軸電流偏差ΔIｄを求める。減算器１６ｑは、速度制御部３から与えられる指令ｑ軸電流Ｉｑｒｅｆからｑ軸電流Iｑを減算し、ｑ軸電流偏差ΔIｑを求める。ＰＩＤ制御部１７ｄは、ｄ軸電流偏差ΔＩｄに対するＰＩＤ演算を実行し、ｄ−ｑ座標系で表される指令ｄ軸電圧Ｖｄを生成する。また、ＰＩＤ制御部１７ｑは、ｑ軸電流偏差ΔＩｑに対するＰＩＤ演算を実行し、ｄ−ｑ座標系で表される指令ｑ軸電圧Ｖｑを生成する。
【００１２】
指令ｄ軸電圧Ｖｄおよび指令ｑ軸電圧Ｖｑは、ｄｑ／αβ座標変換器５によりα−β座標系で表した値に変換され、さらにαβ／ＵＶＷ座標変換器６により固定子の各相指令電圧Ｖｕ、Ｖｖ、Ｖｗに変換される。なお、ｄｑ／αβ座標変換器５における座標変換の計算には、回転子の推定回転角度θｅが用いられる。尚、αβ／ＵＶＷ座標変換器６には後述するインバータ回路２０のＤＣ電源電圧Ｖｄｃも与えられており、この電源電圧Ｖｄｃも考慮し各相指令電圧Ｖｕ、Ｖｖ、Ｖｗを出力するようになっている。
【００１３】
各相指令電圧Ｖｕ、Ｖｖ、ＶｗはＰＷＭ形成部７に入力される。ＰＷＭ形成部７は、指令電圧Ｖｄ、Ｖｑに一致する電圧を供給するためのパルス幅変調されたゲート駆動信号が形成される。
【００１４】
モータ制御素子２は、このゲート駆動信号をインバータ回路２０に印加することでモータ１を駆動する。図２は電流検出部の電気的構成を概略的に示している。この図２に示すように、インバータ回路２０は、ＩＧＢＴ２１（２１ｕｕ、２１ｕｄ、２１ｖｕ、２１ｖｄ、２１ｗｕ、２１ｗｄ）（スイッチング素子）を３相ブリッジ回路のハードウェアＨａとして構成した電圧形インバータであり、下アーム側のＩＧＢＴ２１ｕｄ、２１ｖｄ、２１ｗｄと、負側の直流電源線との間にはシャント抵抗Ｒｕ、Ｒｖ、Ｒｗがそれぞれ構成されている。各ＩＧＢＴ２１には還流ダイオードＤがそれぞれ逆並列接続されている。
【００１５】
本実施形態では、各シャント抵抗Ｒｕ、Ｒｖ、Ｒｗの端子電圧Ｖｄｃに応じてモータ１の各相（Ｕ相、Ｖ相、Ｗ相）に流れる電流Ｉｕ、Ｉｖ、Ｉｗが検出されるようになっており、これにより３シャント形の電流検出部８（符号Ａ３）を構成している。
【００１６】
ＰＷＭ形成部７で形成されたゲート駆動信号は、インバータ回路２０を構成する各ＩＧＢＴ２１のゲートに与えられ、それにより各相指令電圧Ｖｕ、Ｖｖ、Ｖｗに一致するＰＷＭ変調された三相交流電圧が生成されモータ１の電機子巻線に印加される。
【００１７】
電流検出部８が電流Ｉｕ、Ｉｖ、Ｉｗを検出するが、Ａ／Ｄ変換部９はこれらの電流Ｉｕ、Ｉｖ、ＩｗをＡ／Ｄ変換し、ＵＶＷ／αβ座標変換器１０がＡ／Ｄ変換後の電流Ｉｕ、Ｉｖ、Ｉｗを２相電流Ｉα、Ｉβに変換する。αβ／ｄｑ座標変換器１１は、これらの２相電流Ｉα、Ｉβをｄ軸電流Ｉｄ、ｑ軸電流Ｉｑに変換する。α、βは、モータ１の固定子に固定された２軸座標系の座標軸を表している。このαβ／ｄｑ座標変換器１１の座標変換の計算を行うときには、後述する回転子の推定回転角度θｅ（α軸とｄ軸の位相差の推定値）を用いる。
【００１８】
位置推定部１２は、回転角推定ルーチン１８、位置推定ルーチン１９にその機能が分けられており、ｄ軸電流Ｉｄ、ｑ軸電流Ｉｑおよび指令ｄ軸電圧Ｖｄが入力され、この入力値を用いて回転子の回転角度θ（回転位置）の推定値である推定回転角度θｅ（推定回転位置）と、回転速度ωの推定値である推定回転速度ωｅとを推定する。位置推定部１２には、モータ１の回路定数である電機子巻線のｄ軸インダクタンスＬｄ、ｑ軸インダクタンスＬｑおよび巻線抵抗値Ｒの各値が記憶されている。
【００１９】
位置推定部１２の回転角推定ルーチン１８は、これら入力値および回路定数を用いて、ｄ軸方向の誘起電圧推定値Ｅｄを下記（１）式に基づいてソフトウェアにより計算する。
Ｅｄ＝Ｖｄ−Ｒ・Ｉｄ−Ｌｄ・ｓ・Ｉｄ＋ωｅ・Ｌｑ・Ｉｑ      …（１）
ここで、ｓは微分演算子である。位置推定部１２の回転角推定ルーチン１８は、この誘起電圧推定値Ｅｄに対するＰＩＤ演算を実行し、回転子の推定回転速度ωｅ（回転速度信号に相当）を出力する。この推定方法によれば、ｄ軸方向の誘起電圧推定値Ｅｄはゼロに収束する。位置推定ルーチン１９は積分ルーチンによるソフトウェアで構成されており、求められた推定回転速度ωｅを積分し推定回転角度θｅ（回転子の位置情報に相当）を出力する。推定回転速度ωｅは速度制御部３に与えられ、推定回転角度θｅはＳＩＮ／ＣＯＳ演算部１３に出力される。ＳＩＮ／ＣＯＳ演算部１３では、推定回転角度θｅに対応した三角関数演算を行うか、もしくは、三角関数テーブルを参照し、当該三角関数値をｄｑ／αβ座標変換器５およびαβ／ｄｑ座標変換器１１に印加し、フィードバック制御を行う。
【００２０】
速度制御部３には、外部の制御装置（図示せず）から出力される指令回転速度ωrefが与えられている。減算器１４は、指令回転速度ωrefから位置推定部１２により推定された推定回転速度ωｅを減算して速度偏差Δωを求めＰＩＤ制御器１５に与える。ＰＩＤ制御器１５は、速度偏差Δωに対するＰＩＤ演算を実行して指令ｑ軸電流Ｉqrefを生成する。これらの指令ｄ軸電流Ｉdref、指令ｑ軸電流Ｉqrefは、電流制御部４に与えられる。電流制御部４は、モータ１のｄ軸電流Ｉｄおよびｑ軸電流Ｉｑが指令ｄ軸電流Ｉdref、指令ｑ軸電流Ｉqrefにそれぞれ一致するように制御する。以上のような制御が行われた結果、推定回転速度ωｅが指令回転速度ωrefに一致する。
【００２１】
上記構成において、減算器１６ｄ、１６ｑおよびＰＩＤ制御器１７ｄ、１７ｑによるＰＩＤ演算によってフィードバック制御が行われる。これにより、ｄ軸電流Ｉｄ、ｑ軸電流Ｉｑは、それぞれ指令ｄ軸電流Ｉdref、指令ｑ軸電流Ｉqrefに一致するように制御される。
【００２２】
これらのうち速度制御部３、位置検出部１２はプロセッサＰが制御ソフトウェアを実行することによりその動作を行い、その他の電流制御部４、ｄｑ／αβ座標変換器５、αβ／ＵＶＷ座標変換器６、ＰＷＭ形成部７、電流検出部８、Ａ／Ｄ変換部９、ＵＶＷ／αβ座標変換器１０、αβ／ｄｑ座標変換器１１、ＳＩＮ／ＣＯＳ演算部１３はハードウェアＨにより構成されている。またインバータ回路２０（インバータ）はモータ制御素子２とは別のハードウェアＨａにより構成されている。
【００２３】
ハードウェアＨは、論理回路を変更、改変可能なＰＬＤ、ＦＰＧＡなどを用いてハードウェア記述言語などの記述によって設計され、量産時においてはソフトウェアによる制御アルゴリズム改変不能な半導体デバイスとしてハードウェア化される。またこのハードウェアＨはプロセッサＰからパラメータ設定やトリガ設定（開始指示、停止指示）がなされること以外は必要に応じて独立して動作可能に構成されている。
【００２４】
モータ制御素子２の製造者は、その使用者がオリジナリティを発揮しやすいブロックや将来的に設計変更が伴いやすい機能部について、プロセッサＰが実現可能なソフトウェアで構築可能にして提供している。特にベクトル制御処理を入力対出力が１対１、多対多等の関係で行う機能部であって使用者のノウハウが考慮できない機能部についてはハードウェア化すると良い。
【００２５】
ハードウェアＨの各機能部Ａ１〜Ａ４を構成する構成部４〜１１、１３内には、図示しないがプロセッサＰからアクセス（読出／書込）可能なレジスタが確保されており、当該レジスタはプロセッサＰとハードウェアＨとの間の入出力パラメータや、各構成部４〜１１、１３が内部的に用いる内部定数や内部変数を保持可能になっている。
【００２６】
なお、速度制御部３、電流制御部４が指令電圧生成部Ａ１を構成している。ｄｑ／αβ座標変換器５、αβ／ＵＶＷ座標変換器６、ＰＷＭ形成部７が電圧演算処理部Ａ２を構成している。ＵＶＷ／αβ座標変換器１０、αβ／ｄｑ座標変換器１１が入力電流演算部Ａ４を構成している。回転角推定ルーチン１８が速度情報生成部Ａ５を構成しており、位置推定ルーチン１９が位置情報生成部Ａ６を構成している。これらのブロックＡ１〜Ａ６はそれぞれ本発明の機能部に相当している。なお、本実施形態では電流検出部８が電流検出部Ａ３として構成されているが、Ａ／Ｄ変換部９もまた電流検出部Ａ３として考慮しても入力電流演算部Ａ４として考慮しても良い。
【００２７】
以下、本実施形態のモータ制御素子の使用例として、モータの停止状態から定常回転状態に移行するまでの制御の流れについて図３ないし図８を参照しながら説明する。なお、モータ制御素子２の使用者は、この制御方法を用いることでモータ１を定常駆動できるが、ハードウェアＨを利用しながら制御ソフトウェアを自由に改変可能に構成されているため、多彩な応用例に適用することができる。
【００２８】
図３は、モータが停止状態から定常回転状態に至るまでの状態遷移図を示しており、モータ制御素子２の応用例を示している。モータ１を初期動作させるためには、モータ１の動作を監視しモータ１の状態に従って必要な処理を行う必要がある。そこでモータ１の初期動作を複数のステージに分割して制御を行う。これはモータの制御ステージごとに必要な処理が異なるためである。図３に示す状態遷移図では、停止／ゼロ電流検出ステージ、位置決めステージ、強制転流ステージ、強制定常切替ステージ、定常ステージに分けられている。各ステージでは、当該ステージに対応したソフトウェアとハードウェアＨの動作処理のみが実行される。
【００２９】
停止／ゼロ電流検出ステージではモータ１が停止する。このステージでは停止状態中連続して電流ゼロ時のＡ／Ｄ変換結果を求め、モータ１の電流のオフセット値とする（ゼロ電流検出）。次の位置決めステージではモータ１のコイルに電流を流し回転子の位置をゼロ付近に固定させる。位置決め時間が経過すると次のステージに移行する。
【００３０】
強制転流ステージでは回転子を回転させる。このステージではベクトル制御によるフィードバック処理ではなく、強制的に回転磁界を与え、回転子がそれに追随し回転する。角速度指令値が最低周波数に到達して場合に次のステージに移行する。
【００３１】
強制定常切り替えステージでは、モータ１が強制転流から定常状態へ切り替わり処理を行う。回転子の位置に関わらず駆動していたモータ１を回転子の位置に合わして駆動する。強制定常切り替え時間が経過した場合に次の定常ステージに移行する。
【００３２】
図４は、制御動作指令と動作処理例をテーブルにより示している。図４に示すように、制御動作指令は複数に分けられており、この指令に応じてプロセッサＰによる制御動作およびハードウェアＨの制御動作の有効／無効を切換可能になっている。なお、この図４に示す制御動作指令のうち、トリガ生成部は入出力処理を管理するために用いられるトリガを生成するものであり、ソフトウェアまたはハードウェアＨにより実現されている。
【００３３】
制御動作指令０は、各機能部のシーケンス処理を無効とし各機能部が独立して動作するモードを指令可能なコマンドとなっている。制御動作指令１は、全ての機能部の制御動作を有効とし各機能部のシーケンス処理を有効とするモードを指令可能なコマンドとなっている。
【００３４】
制御動作指令２は、前述説明した機能部のうち電流制御部４の制御動作のみを無効とすると共にその他の機能部のシーケンス処理を有効とするモードを指令可能なコマンドとなっている。制御動作指令３は、ＰＷＭ形成部７、Ａ／Ｄ変換部９（電流検出部８）の制御動作のみを有効とするモードを指令可能なコマンドとなっている。
【００３５】
図５は、制御動作指令の設定例をテーブルにより示している。
図５に示すように、停止状態／ゼロ電流検出状態では制御動作指令３、その後の位置決め状態、強制転流状態、強制定常切替状態、定常状態では制御動作指令１をコマンドとして用いることを示している。図５には、出力制御動作（フィードバック制御動作）の有効／無効、ゼロ電流検出動作の有効／無効、位相補間許可／不許可の設定例も示している。
【００３６】
停止状態／ゼロ電流検出状態では出力制御動作（フィードバック制御動作）を無効化することで、ＰＷＭ制御動作をオフする。また、ゼロ電流検出状態でのみゼロ電流検出を有効化し、強制転流状態でのみ位相補間を許可するように設定する。この図４および図５のような制御動作設定テーブルが制御ソフトウェアが参照するメモリ内に記憶されており、プロセッサＰが制御ソフトウェアからモータ１の動作状態を監視しながら制御動作設定テーブルを参照してモータ１の動作を制御することができる。
【００３７】
図６は、動作処理とその遷移について概略的な流れを示している。
図６に示すように、各動作は出力処理および入力処理に割り振られており、これらの処理が実行される。出力処理としては、電流制御処理、ＳＩＮ／ＣＯＳ演算処理、出力座標軸変換処理、出力相変換処理、出力制御処理、トリガ生成処理、の６つが設けられている。入力処理としては、Ａ／Ｄ変換処理、入力相変換処理、入力座標軸変換処理、の３つが設けられている。これらの動作は、制御動作指令で無効設定された動作を除いて決められた順番に従って実行される。
【００３８】
＜トリガ発生割り込み処理＞
トリガ発生割り込み処理の概要を説明する。上記した処理は制御動作指令のコマンドで有効設定された動作から開始し、出力関連の動作が全て終了すると、入力処理を実行するための起動トリガを待機する。入力処理の起動トリガが発生すると、入力処理についてＡ／Ｄ変換処理から順に実行する。入力処理は起動トリガで動作開始する。その後、出力処理が制御動作指令のコマンドで実行されるようになる。こうして制御動作が繰り返されることになる。
【００３９】
図７および図８のフローチャートは、主に制御ソフトウェアの処理の概要を示している。
＜メイン処理＞
図７に示すメインルーチンでは一定時間ごとに制御を繰り返す（Ｔ１〜Ｔ６）。この一定時間とは割り込み処理時間（割込処理回数×割込間隔）によって設定される。この一定時間の経過ごとに、ユーザにより作成された制御ソフトウェアの動作（Ｔ３）や、ステージの切替（Ｔ４）や共通処理（Ｔ５）、ステージ処理（Ｔ６）を実行する。このステージ処理は、停止／ゼロ電流検出処理、位置決め処理、強制転流処理、強制定常切替処理、定常処理の何れかの処理である。
＜割り込み処理＞
図８に示す割り込み処理は本実施形態ではＰＷＭ周期ごとに発生するようになっている。この割り込み処理では、割り込み処理回数をインクリメントし（Ｕ１）、最新のＡ／Ｄ変換結果をレジスタに代入する（Ｕ２）。次に、プロセッサＰが、角度計算処理（Ｕ３）や速度制御処理（Ｕ４）など制御ソフトウェアを実行することによって処理する。
【００４０】
各ステージ処理では当該ステージ処理であるか否かを判定し（Ｕ５〜Ｕ９）、当該ステージ処理に応じた制御動作指令をコマンドとして設定セットする（Ｕ１０〜Ｕ１５）。プロセッサＰは制御動作指令をコマンドとしてセットした後、出力処理指令をオンとし（Ｕ１６）、ハードウェアＨに動作の開始指令を与える。すると、ハードウェアＨは指定された入出力処理を実行する（Ｕ１７）。ハードウェアＨが入出力処理を実行した後、割り込み要求をクリアする（Ｕ１８）。
【００４１】
以下、ハードウェアＨに設定するパラメータ設定の応用例を示す。
＜応用例１：短絡ブレーキ制御、回生ブレーキ制御＞
短絡ブレーキを実現するためには、指令ｄ軸電圧Ｖｄ、指令ｑ軸電圧Ｖｑを０とする必要がある。この場合、プロセッサＰからソフトウェアによる速度制御部３、ハードウェアＨによる電流制御部４の動作を無効化し、指令ｄ軸電圧Ｖｄ、指令ｑ軸電圧Ｖｑのパラメータ設定値を共に直接０として当該電圧値入力レジスタに設定する。すると、ハードウェアＨはインバータ回路２０を直接駆動制御することで短絡ブレーキを実現することができる。同様に指令ｄｑ軸電圧Ｖｄ、Ｖｑのパラメータ設定値を調整することで回生ブレーキを実現することができる。
【００４２】
＜応用例２：フリーラン＞
フリーランを実現するためには、指令ｄ軸電流Ｉｄｒｅｆ、指令ｑ軸電流Ｉｑｒｅｆを共に０とする必要がある。この場合、プロセッサＰからソフトウェアによる速度制御部３の動作を無効化し、指令ｄ軸電流Ｉｄｒｅｆ、指令ｑ軸電流Ｉｑｒｅｆのパラメータ設定値を共に直接０として電流値入力レジスタに設定する。すると、ハードウェアＨからインバータ回路２０を介してモータ１をフリーランさせることができる。
【００４３】
このような応用例１、応用例２に示すように、プロセッサＰが指令ｄ軸電流Ｉｄｒｅｆを指令ｄ軸電流値、指令ｑ軸電流Ｉｑｒｅｆを指令ｑ軸電流値として電流値入力レジスタに、指令ｄ軸電圧Ｖｄを指令ｄ軸電圧値、指令ｑ軸電圧Ｖｑを指令ｑ軸電圧値として電圧値入力レジスタにそれぞれ書込むことができるため、簡単に様々な機能（例えば、短絡ブレーキ、回生ブレーキ、フリーランなど）を実現することができる。
【００４４】
以上、説明したように本実施形態によれば、電流制御部４、ｄｑ／αβ座標変換器５、αβ／ＵＶＷ座標変換器６、ＰＷＭ形成部７、電流検出部８、Ａ／Ｄ変換部９、ＵＶＷ／αβ座標変換器１０、αβ／ｄｑ座標変換器１１、ＳＩＮ／ＣＯＳ演算部１３がハードウェアＨにより構成されている。このハードウェアＨは、使用者に共通の固定処理部分として構成されており、これにより高速化できる。しかも位置推定部１２、速度制御部３がソフトウェアにより構成されているため、モータ御制御素子２の使用者は容易に改変することができ使用者による制御方法の自由度を向上できる。使用者はハードウェアＨの動作を補償するように制御ソフトウェアを構成することによってモータ１を制御できるため、使用者は様々な応用を利かせたモータ制御装置（電気機器）を構成できる。
【００４５】
プロセッサＰからハードウェアＨの各部分の動作の有効／無効を切換可能になっているため、使用者は様々な制御ソフトウェアを容易に構成することができる。
プロセッサＰがハードウェアＨのレジスタに制御に応じた指令値を書き込むことにより複数の制御動作を選択可能になっているため、プロセッサＰは簡単に制御動作を指令することができる。
【００４６】
従来より、モータ１の制御処理は、所定周波数（例えば８ｋＨｚ、１６ｋＨｚ）、所定秒（例えば６４マイクロ秒）の間に所定処理を全て実行できないと、正確で且つ精密な制御を行うことが困難であった。モータ１の駆動制御の技術分野では基本的な制御処理のみで大半の時間（例えば４０マイクロ秒程度）を消耗してしまう。しかも、スイッチング周波数が低い場合には耳障りなノイズを発生しやすくなってしまうため、前記所定周波数を高周波数化することが望まれている。
【００４７】
例えばハードウェアＨの処理を行うことなく制御ソフトウェアのみで前述のハードウェアＨの処理をも構築し、使用者が製品固有のアプリケーションを付加して製品として提供しようとすると、残り少ない時間でアプリケーションを付加するには限界を生じていた。また、この不具合を避けるため前記所定周波数を低くすると耳障りなモータ駆動音を発してしまう要因となる。
【００４８】
本実施形態によれば、ハードウェアＨにより構成された機能部は、予め設定されたシーケンス（動作番号順）に動作するように構成されているため高速化できる。
本実施形態によれば、プロセッサＰの他にハードウェアＨを用いて構成しているため、処理時間を大幅に短縮することができ、使用者が所望のアプリケーションを付加して製品として提供できるようになる。これにより、モータの制御分解能を大幅に向上することができ、耳障りなモータ駆動音を発することなくモータ１を駆動制御しやすくなる。
【００４９】
本実施形態によれば、モータ制御素子２の機能部Ａ１〜Ａ６のうち一部をハードウェアＨ、その他の部分をプロセッサＰが実行するソフトウェアとして構成しているため、プロセッサＰがハードウェアＨにパラメータを設定することにより、ハードウェアＨとプロセッサＰが実行するソフトウェアとを同時に動作させることができる。
【００５０】
すなわち、全ての機能部Ａ１〜Ａ６をプロセッサＰが実行するソフトウェア、または、ハードウェアＨにより構成してしまうと、所定の流れに従ったシーケンス処理を行うことになってしまい、結果的に処理時間を必要以上に要してしまう。
【００５１】
本実施形態に示すように、モータ制御素子２のうち一部をハードウェアＨ、その他をプロセッサＰが実行するソフトウェアにより構成したので、ベクトル制御演算処理を同時に行うことができるようになり、処理を高速化することができる。すなわち処理の高速化を維持しつつ使用者の機能追加の自由度が向上する。これは以下に述べる実施形態を含む実施形態共通の効果である。
【００５２】
（第２実施形態）
図９は、本発明の第２実施形態を示すもので、前述実施形態と異なるところは、電流制御部をハードウェアＨとして設けず、プロセッサＰが実行可能なソフトウェアで構成したところにある。尚、モータ制御素子の構成が前述実施形態とは変更されているため、図面中の符号は前述実施形態のモータ制御素子２に代えてモータ制御素子２２としている。
【００５３】
前述実施形態では速度制御部３と位置推定部１２のみをプロセッサＰが実行する制御ソフトウェアにより実現していたが、本実施形態では電流制御部４もソフトウェアとして構成可能にしている。これは、電流制御部４を用いると高速回転動作に制御が追従困難となることもあるためであり、プロセッサＰが直接指令ｄ、ｑ軸電圧Ｖｄ、Ｖｑを制御ソフトウェアにより設定可能とすることによって高速回転動作に制御を追従させることが容易となる。
【００５４】
また、電流制御部４の構成方法にも使用者の使用用途に応じたノウハウが含まれる場合があるためであり、電流制御部４のハードウェアＨとしての供給を必要としないユーザの要求を満たすためである。つまり、速度制御部３、電流制御部４は、使用用途に応じて使用者のノウハウなどが発揮される機能部となっている。本実施形態によれば電流制御部４もソフトウェアにより構成可能にしたので、ユーザの設計自由度が向上する。
【００５５】
（第３実施形態）
図１０ないし図１４は、本発明の第３実施形態を示すもので、前述実施形態と異なるところは、３シャント検出方式と１シャント検出方式とを切換可能に構成し、ソフトウェアから切換設定可能に構成したところにある。前述実施形態と同一部分については同一符号を付して説明を省略し、以下異なる部分を中心に説明する。
【００５６】
本実施形態では、図１０に示すように、モータ制御素子２に代わるモータ制御素子３０を設けている。この図１０に示すように、３シャント形の電流検出部８に代えて１シャント形検出方式と３シャント形検出方式の電流検出方式の両方式を備え当該両方式で電流を検出可能な電流検出部２５、および、この電流検出部２５の検出結果をＡ／Ｄ変換するＡ／Ｄ変換部２９を設けている。
【００５７】
また、両検出方式に対応した駆動方式を適用した信号生成部２３をαβ／ＵＶＷ座標変換器６に代えて設けている。１シャント形と３シャント形の駆動方式を切り換える切換器２３ａが信号生成部２３に指示信号を与えるように構成されており、当該切換器２３ａが信号生成部２３に切換指示することで信号生成部２３が１シャント形と３シャント形を切り換えて各相指令電圧Ｖｕ、Ｖｖ、ＶｗをＰＷＭ形成部２４に出力する。ＰＷＭ形成部２４はＰＷＭ形成部７と同様の機能を備えている。３シャント形の機能については前述実施形態の説明に代えて説明を省略する。
【００５８】
図１１は、１シャント形検出方式の電流検出方式について概略的な電気的構成図を示しており、以下１シャント形検出方式について概略的に説明する。この図１２に示すように、前述実施形態の電流検出用抵抗Ｒｕ、Ｒｖ、Ｒｗに代えて、ＧＮＤ電源ノードに直列にシャント抵抗Ｒａを配置している。
【００５９】
信号生成部２３の１シャント形の駆動部は、所謂空間ベクトル法によりＰＷＭ周期ごとに電圧指令ベクトルＶｒを構成する基本ベクトルとゼロベクトルとを選択し、ＰＷＭ補正処理を実行しＰＷＭ生成部２４に信号を出力する。ＰＷＭ生成部２４では信号生成部２３から信号を入力しインバータ回路２０の各ゲートに与える駆動信号を生成する。
【００６０】
各相ごとに上アーム側のＩＧＢＴ２１ｕｕ，２１ｖｕ，２１ｗｕがオンしている駆動状態を１で表し、下アーム側のＩＧＢＴ２１ｕｄ，２１ｖｄ，２１ｗｄがオンしている駆動状態を０で表し、それをＵ相、Ｖ相、Ｗ相の順に並べることにより、インバータ回路２０が出力可能な２つのゼロベクトルと６つの基本電圧ベクトルを表すことができる。
【００６１】
図１２には、６つの基本電圧ベクトル（１００）、（０１１）、（０１０）、（１０１）、（００１）、（１１０）と、ゼロベクトル（１１１）、（０００）の合計８つの通電パターンを考慮している。尚、図１３に示すように、６つの基本電圧ベクトルは、αβ座標において互いに６０°の位相差を有している。
【００６２】
このとき、図１１に示す電流Ｉｕ、Ｉｖ、Ｉｗの矢印方向を正方向と定義すると、８つの通電パターンの通電時において検出用抵抗Ｒａに流れる直流電流は、図１２に示すようになる。この図１２から明らかなように、ＩＧＢＴ２１のオンとオフとの組み合わせに応じて決定される８つの駆動状態のうち６つの基本ベクトルに対応した駆動状態のときには、＋Ｉｕ、−Ｉｕ、＋Ｉｖ、−Ｉｖ、＋Ｉｗ、−Ｉｗの何れかに等しい電流が抵抗Ｒａに流れる。したがって、プロセッサＰでは、電流検出部２５により検出された電流と現在のインバータ回路２０の駆動状態とに基づいて図１２に示す相電流を検出することができる。
【００６３】
ＰＷＭ形成部２４は、空間ベクトル法によりＰＷＭ周期ごとに、２つの隣り合う位相差６０°の基本電圧ベクトルと１つのゼロベクトルとを選択し、それらをスイッチング回数が少なくなるように組み合わせてインバータ回路２０に信号出力する。あるＰＷＭ周期において全相の電流Ｉｕ、Ｉｖ、Ｉｗを検出するためには、当該周期中に同位相又は逆位相の関係とならない２種類の基本ベクトルに対応した駆動期間が存在することが必要となる、これにより、各基本ベクトルに対応して異なる２相の電流を検出することができ、残る一相の電流はＩｕ＋Ｉｖ＋Ｉｗ＝０の関係式から演算により求めることができる。この検出方式は、前述実施形態にて説明した３シャント検出方式に比較してハードウェアの回路構成が簡素となるため望ましいものとなる。
【００６４】
図１４は、１シャント検出方式と３シャント検出方式の切換えシーケンスを表しており、Ａ／Ｄ変換のトリガ割込みが行われた後の処理を概略的に示している。
図１４に示すように、Ａ／Ｄ変換のトリガ割込みがかかると、電流検出部２５が電流検出処理を行い、位置検出部１２が角度計算処理を行い、速度制御部３が速度制御を行う（Ｖ１〜Ｖ３）。その後、電流制御部４が電流制御処理を行い、ＳＩＮ／ＣＯＳ演算部１３が演算を行い、ｄｑ／αβ変換部５がｄｑ／αβ変換処理を行う（Ｖ４〜Ｖ６）。その後、ハードウェアＨ内では切換部２３ａが１シャント駆動電流検出方式であるか３シャント駆動電流検出方式であるか駆動切換レジスタを参照することによって判定し（Ｖ７）、信号生成部２３が当該方式に合わせたαβ／ＵＶＷ変換処理を行い（Ｖ８、Ｖ９）、ＰＷＭ形成部２４にその結果を出力する。
【００６５】
その後、ＰＷＭ形成部２４がＰＷＭ信号を生成し（Ｖ１０）、インバータ回路２０にＰＷＭ信号を出力する。次に、トリガ生成部がトリガを生成して出力し（Ｖ１１）割込みがあると、Ａ／Ｄ変換部２９（電流検出部２５）がシャント駆動電流検出方式であるか３シャント駆動電流検出方式であるか駆動切換レジスタを参照することによって判定し（Ｖ１２）、当該方式に合わせたＡ／Ｄ変換処理を行う（Ｖ１３、Ｖ１４）。続いて、ＵＶＷ／αβ座標変換部１０がＵＶＷ／αβ変換処理を行い（Ｖ１５）、αβ／ｄｑ座標変換部１１がαβ／ｄｑ変換処理を行い（Ｖ１６）、前述の制御が繰り返される。
【００６６】
信号生成部２３、Ａ／Ｄ変換部２９（電流検出部２５）は、このハードウェアＨ内の駆動切換レジスタを参照することで、それぞれ１シャント駆動電流検出方式、３シャント駆動電流検出方式を切換えて駆動、電流検出することができる。
【００６７】
本実施形態によれば、プロセッサＰから駆動切換レジスタに書込み、信号生成部２３、Ａ／Ｄ変換部２９がこの駆動切換レジスタに応じた駆動電流検出方式に切り換えて駆動、電流検出することができるようになり、駆動方式、電流検出方式を容易に切り換えることができる。
【００６８】
（第４実施形態）
図１５および図１６は、本発明の第４実施形態を示すもので、前述実施形態と異なるところは、モータ制御素子が複数の同一回路を備えることによって複数の制御チャンネルを備え、複数のモータを複数のチャンネルにて管理可能にしているところにある。前述実施形態と同一部分については同一符号を付して説明を省略し異なる部分を中心に説明する。
【００６９】
図１５は、複数のモータをモータ制御素子の出力に接続した接続形態を示している。この図１５に示すように、モータ制御素子２に代わるモータ制御素子２６は、マルチチャンネル機能を有し、複数の出力回路（駆動回路ＭＤ０、ＭＤ１、ＭＤ２（ＭＤ：Motor Driver））および複数の入力回路（Ａ／Ｄ変換部ＡＤ０、ＡＤ１、ＡＤ２）を備える。これらの複数の駆動回路は、それぞれ入出力インタフェースを備え前述実施形態にて示したハードウェア構成（例えば図１のハードウェアＨの構成）を複数備えている。つまり同一構成のハードウェアＨを複数備えている。
【００７０】
また、プロセッサＰ２側にはメモリが搭載されており当該メモリには複数の制御ソフトウェアＳｏｆｔ０，Ｓｏｆｔ１、Ｓｏｆｔ２が記憶されている。プロセッサＰ２が制御ソフトウェアＳｏｆｔ０，Ｓｏｆｔ１、Ｓｏｆｔ２の何れかを実行できるようになっている。図１６に示すように、プロセッサＰ２が１つの制御ソフトウェアＳｏｆｔ０を実行することで、複数の駆動回路ＭＤ０、ＭＤ１、ＭＤ２を選択的に駆動制御し、さらに１つの駆動回路ＭＤ０で複数のモータ１，１…を選択的に駆動制御することができる。
【００７１】
具体的には、前述実施形態にて説明したトリガ発生割り込み処理において、出力処理が終了してから入力処理が開始されるまで待機時間が発生する。そこで、この空き時間を利用して他チャンネルの入出力処理をマルチに実行させることができる。
【００７２】
本実施形態によれば、ハードウェアＨ２が複数の同一の駆動回路ＭＤ０、ＭＤ１、ＭＤ２を備えることで複数の制御チャンネルを備え、複数のモータ１、１…を制御できるためモータ制御時間の短縮化を図ることができ、また汎用性も向上する。
【００７３】
以下、具体的に挙げる。電気機器はマイクロコンピュータを２つ又はそれ以上用いているものがある。例えば、洗濯機は洗濯槽を回転させるモータとコンプレッサ用のモータを用いており、エアコンディショナはコンプレッサ用のモータと室外機用のファンモータなどを用いる場合がある。このような電気機器では、一般にモータ制御素子として２つ以上の制御素子を設ける必要があったが、本実施形態の構成を適用するとモータ制御素子２６が単独で複数のモータ１、１…を駆動制御することができる。
【００７４】
＜制御動作指令のパラメータ、参照用のパラメータの例＞
以下、制御動作指令のパラメータと、参照用パラメータの一例を示す。これらのパラメータ設定値は、前述実施形態で適用可能なパラメータもあれば、後述する他の実施形態に示すように外付け部品（エンコーダなど）を接続することで設定または参照可能なパラメータもあることに留意する。
【００７５】
プロセッサＰが制御ソフトウェアで用いる変数パラメータとしては、メイン周期タイミングカウンタ、リセット待機時間カウンタ、リセットパラメータ、ＡＤ入力値、駆動回転速度、回転位置指令値、モータ制御指令値、前回モータ制御指令値、始動ｄ軸電流指令値、始動ｑ軸電流指令値、強制転流時の駆動回転数加減速リミット、定常時の駆動回転数加速リミット、定常時の駆動回転数減速リミット、直流励磁時間の長さ、強制定常切替待機時間、初期モータ位置、モータステージ、モータステージ履歴、モータステージ遷移、ステージ内カウンタ、割り込み処理モータステージ、コマンド（モータオンオフフラグ、角速度のＰＩ演算フラグ、エンコーダ入力フラグ）、モータ角速度指令値、指令ｄ軸電流値Ｉｄｒｅｆ、指令ｑ軸電流値Ｉｑｒｅｆ、回転位置指令値、モータステータス（ＥＭＧ状態、過電流状態、Ｖｄｃ電圧状態）、ｄ軸電流基準値、ｑ軸電流基準値、ｑ軸電流指令値（積分値）、モータ角速度、モータ角速度積分値、モータ角速度偏差、モータ電気角、モータ角速度、モータ電気角、エンコーダカウンタ値、エンコーダカウンタ値保存、エンコーダカウント値偏差、などモータ１の動作に関係するパラメータを用意している。
【００７６】
また、プロセッサＰが制御ソフトウェアで用いる定数パラメータとしては、マスタークロック、始動ｑ軸電流指令値、始動ｄ軸電流指令値、モータ巻線抵抗、モータｑ軸インダクタンス、モータｄ軸インダクタンス、モータ誘起電圧、モータ極数、最大入力電流値、電流エラー値、ｄ軸電流リミット値、ｑ軸電流リミット値、最大始動電流値、ＰＷＭ周期、ＰＷＭキャリア周波数、ＤＣ最大電圧、ＤＣ電圧リミット、最大周波数、リミット周波数、最小周波数、ドライバー制御期間、周波数制御比例ゲイン、周波数制御比例積分ゲイン、レゾルバ軸倍角、エンコーダパルス数、パルスカウント、強制転流時の加速減速リミット、定常時の加速リミット、定常時の減速リミット、直流励磁時間の長さ、強制定常切り替え後待機時間の長さ、処理間隔、メイン関数ループ処理、正転／反転、リセット後ウェイトタイム、などモータ１の動作に関係するパラメータを用意している。
【００７７】
また、ハードウェアＨがレジスタに記憶し外部から読出または／および書込可能な変数パラメータとしては、動作制御モード、動作指定、動作処理選択、回転速度、指令ｄ軸電流値（電流値入力レジスタ）、指令ｑ軸電流値（電流値入力レジスタ）、ｄ軸電流値、ｑ軸電流値、指令ｄ軸電圧値（電圧値入力レジスタ）、指令ｑ軸電圧値（電圧値入力レジスタ）、モータ位相、ｄ軸基準値、ｑ軸基準値、ＣＰＵ起動トリガ選択、Ｕ相電流Ａ／Ｄ変換結果、Ｖ相電流Ａ／Ｄ変換結果、Ｗ相電流Ａ／Ｄ変換結果、ＤＣ電源電圧値Ｖｄｃ、などを用意している。
【００７８】
また、ハードウェアＨがレジスタに記憶し外部から読出または／および書込可能な定数パラメータとしては、モータ制御チャネルモード選択レジスタ、ポート出力モードレジスタ、ＭＤ制御レジスタ、モード選択レジスタ、ＭＤ出力設定レジスタ、トリガ制御レジスタ、トリガ出力モード設定レジスタ、緊急（ＥＭＧ）解除レジスタ、緊急制御レジスタ、デッドタイムレジスタ、ハードウェアの有効／無効、ＭＤ出力制御（ＭＤＯＵＴ）、フロー制御、ＰＷＭ周期レート、ＰＷＭ周期、ＰＷＭ周期レジスタ、処理繰り返し回数、起動トリガモード、エラー割り込みの許可／禁止、強制終了、ｄ軸電流制御ＰＩＤ積分項係数、ｄ軸電流制御ＰＩＤ比例項係数、ｄ軸電流制御ＰＩＤ微分項係数、ｑ軸電流制御ＰＩＤ積分項係数、ｑ軸電流制御ＰＩＤ比例項係数、ｑ軸電流制御ＰＩＤ微分項係数、２相変調でシフトＰＷＭ許可時の切り替え速度、最小パルス幅、モニタ制御、Ａ／Ｄ変換時間、ＭＤ制御：ＥＭＧ復帰、ソフトプログラムレジスタ、Ａ／Ｄモード設定レジスタ、ＭＤトリガ用プログラム番号選択レジスタ、ＭＤトリガ用プログラムレジスタ、ＭＤトリガ用割り込み選択レジスタ、などを用意している。
【００７９】
これらの変数、定数パラメータは、使用者が必要に応じて前述実施形態もしくは後述する他の実施形態にて使用可能なパラメータであり、ハードウェアの組み換え、仕様変更などに即座に対応可能に構成されており、制御ソフトウェアにより設定または／および参照可能とされていることが望ましい。
【００８０】
（他の実施形態）
本発明は、上記実施形態に限定されるものではなく例えば以下に示す変形または拡張が可能である。
複数の機能部Ａ１〜Ａ６（構成部４〜１５、１６ｄ，１６ｑ，１７ｄ，１７ｑ）のうち少なくとも一部がハードウェアＨにより構成されていれば良い。
位置推定部１２がソフトウェアとして組み込まれた実施形態を示したが、このモータ制御素子２の使用者は、位置推定部１２に代えてレゾルバ、ロータリエンコーダなどの各種角度センサを外付けして位置検出部として使用しても良い。ホールＩＣを位置検出部として設けても良い。この場合、使用者は位置推定部１２を作成する必要がない。また、これらはモータアプリケーションの用途に合わせて選択することができるため、使用者の設計自由度が向上する。これは、位置推定部１２がモータ制御素子２内にハードウェアとして設けられていない理由の一つである。
【００８１】
すなわち、使用者がモータ１に角度センサをモータ制御素子２に外付けで設ける場合や、素子の使用者毎に位置推定ノウハウが異なる場合もあるため、速度情報生成部Ａ５、位置情報生成部Ａ６はモータ制御素子２内部にハードウェアによって構成することなくプロセッサＰが実行可能な制御ソフトウェアにより実現できるように構成しても良い。
【００８２】
ハードウェアＨにより構成された機能部が予め設定されたシーケンスに沿って動作したときにプロセッサＰに割込み信号を発生し、プロセッサＰは発生した割込み信号を受け付けると所定の制御ソフトウェアを起動して処理するようにしても良い。このように構成することで、ハードウェアＨとプロセッサＰが実行するソフトウェアとを同時に動作させることができる。
【００８３】
例えば、位置推定部１２に代わる位置検出部を角度センサによりハードウェアで構成した場合、ハードウェアＨで構成された電流検出部８がＰＷＭ割込み信号を発生したり、Ａ／Ｄ変換部９がＡＤ変換終了割込みを発生し、プロセッサＰが当該割込み信号を受け付けたときに速度演算部３の機能をソフトウェアにより実現させる。すると、ＵＶＷ／αβ座標変換器１０およびｄｑ／αβ座標変換器１１のハードウェアＨによる演算処理と、速度演算部３のソフトウェアによる演算処理とを同時に処理することができ、ベクトル制御を高速化できる。
【００８４】
また、指令電圧生成部Ａ１についても、指令ｄ軸電圧Ｖｄ、指令ｑ軸電圧Ｖｑの出力方法は使用者のノウハウが存在することもあるためハードウェアによって構成することなく制御ソフトウェアにより実現できるように構成しても良い。
【００８５】
前述の機能部Ａ１〜Ａ６の何れかの機能が、プロセッサＰが制御ソフトウェアを実行することにより実現可能な機能である場合であって、当該機能部Ａ１〜Ａ６がハードウェアＨでも構成されている場合には、当該機能部Ａ１〜Ａ６は、ハードウェアＨ内に構成された機能部Ａ１〜Ａ６と切換可能に構成されていても良い。
【００８６】
具体的には、電流制御部４がハードウェアＨによって構成されている場合が挙げられる。前述実施形態に示したように電流制御部４はハードウェアＨ内にも制御ソフトウェアでも構成可能であるが、制御ソフトウェアでもハードウェアＨでも当該機能をモータ制御素子２内に構成し、スイッチなどで切り替えるか又はサブルーチンなどを選択することによって切り換えるように構成する。例えば、高調波抑制電流制御などを構成するようにしても良い。これにより使用者の設計自由度が向上する。
【００８７】
また、指令ｄ軸電圧Ｖｄ、指令ｑ軸電圧Ｖｑの電圧値入力レジスタに対する設定値は、プロセッサＰが制御ソフトウェアから書き込むようにしている実施形態を示したが、プロセッサＰが電流制御部４の動作を無効化し、電流制御部４がｄｑ／αβ座標変換器５に指令ｄ軸電圧Ｖｄ、指令ｑ軸電圧Ｖｑを出力するのを停止させ、ＰＩＤ制御部１５の構成ルーチン（制御ソフトウェア）を適用して指令ｄ軸電圧Ｖｄ、指令ｑ軸電圧Ｖｑを電圧値入力レジスタに書き込むようにしても良い。
【００８８】
第１および第２実施形態では、ｄｑ／αβ座標変換器５、αβ／ＵＶＷ座標変換器６、ＰＷＭ形成部７を電圧演算処理部Ａ２とし全てハードウェアＨにして構成しているが、このうちの一部がハードウェア化されていても良い。同様に、電流検出部Ａ３、入力電流演算部Ａ４では構成部８〜１１のうち一部がハードウェア化されていても良い。
【００８９】
第３実施形態では、ｄｑ／αβ座標変換器５、信号生成部２３、ＰＷＭ形成部２４を電圧演算処理部Ａ２とし全てハードウェアＨにして構成しているが、このうちの一部がハードウェア化されていても良い。同様に、電流検出部Ａ３、入力電流演算部Ａ４では構成部２５、９〜１１のうち一部がハードウェア化されていても良い。
【符号の説明】
【００９０】
図面中、Ａ１は指令電圧生成部（機能部）、Ａ２は電圧演算処理部（機能部）、Ａ３は電流検出部（機能部）、Ａ４は入力電流演算部（機能部）、Ａ５は速度情報生成部（機能部）、Ａ６は位置情報生成部（機能部）、Ｐ、Ｐ２はプロセッサ、Ｈ、Ｈａ、Ｈ２はハードウェアを示す。
【図１】
2011087456.tif 000003
【図２】
2011087456.tif 000004
【図３】
2011087456.tif 000005
【図４】
2011087456.tif 000006
【図５】
2011087456.tif 000007
【図６】
2011087456.tif 000008
【図７】
2011087456.tif 000009
【図８】
2011087456.tif 000010
【図９】
2011087456.tif 000011
【図１０】
2011087456.tif 000012
【図１１】
2011087456.tif 000013
【図１２】
2011087456.tif 000014
【図１３】
2011087456.tif 000015
【図１４】
2011087456.tif 000016
【図１５】
2011087456.tif 000017
【図１６】
2011087456.tif 000018