(57)【要約】      （修正有）【課題】デジタルの角度データをエンコードしてマイコンへ伝送するよう構成されたシステムにおいて、受信側のマイコンとして安価な汎用のマイコンを使用できるようにする。【解決手段】モータ１を制御する制御マイコン２０は、レゾルバ７から入力される検出信号Ｓｓ，Ｓｃに基づいてモータ１の回転角θを生成する角度検出部２５と、回転角θをエンコードするエンコーダ２７とを備える。エンコーダ２７は、回転角θに基づき、回転角θが増加する毎にパルスが発生するような正転信号ＦＤ、回転角θが減少する毎にパルスが発生するような逆転信号ＲＤ、および回転角θが基準角度（例えばθ＝０）になる毎にパルスが発生するような基準角度信号ＮＭを生成して、監視マイコン３０へ伝送する。監視マイコン３０は、制御マイコン２０から受信した各信号ＦＤ、ＲＤ、ＮＭを回転角φに変換するデコーダ３１等を備える。【選択図】図１
2014017932.tif 000002
【特許請求の範囲】
【請求項１】
モータ（１）を制御するマイクロコンピュータ（２０）において、前記モータの制御に用いられる前記モータの回転角度を示す所定ビットの角度データを、そのビット数よりも少ない数の二値信号からなる角度情報に変換して他のマイクロコンピュータ（３０）へ伝送する角度情報伝送方法であって、
前記角度データがｎＬＳＢ（ｎは自然数）増加する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である正転信号と、
前記角度データが前記ｎＬＳＢ減少する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である逆転信号と、
前記角度データが予め決められた基準角度になる毎に少なくとも１つのエッジ変化が生じるようなパルス信号である基準角度信号と、
を生成し、これら３つの信号を前記角度情報として前記他のマイクロコンピュータへ伝送する
ことを特徴とする角度情報伝送方法。
【請求項２】
モータを制御するモータ制御用マイクロコンピュータ（２０）を含む複数のマイクロコンピュータを備え、前記モータ制御用マイクロコンピュータから少なくとも１つの他のマイクロコンピュータ（３０）へ前記モータの回転角度を示す角度情報を伝送するよう構成された角度情報伝送システムであって、
前記モータ制御用マイクロコンピュータは、
前記モータの回転角度を検出するための外部の回転角度検出部（７）から入力される検出信号に基づいて、前記モータの回転角度を示す所定ビットの角度データを生成する角度データ生成手段（２５）と、
前記角度データ生成手段により生成された前記角度データに基づいて、前記角度情報として、前記角度データがｎＬＳＢ（ｎは自然数）増加する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である正転信号、前記角度データが前記ｎＬＳＢ減少する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である逆転信号、および前記角度データが予め決められた基準角度になる毎に少なくとも１つのエッジ変化が生じるようなパルス信号である基準角度信号、を生成して前記他のマイクロコンピュータへ伝送する角度情報伝送手段（２７）と、
を備え、
前記他のマイクロコンピュータは、前記モータ制御用マイクロコンピュータから受信した前記角度情報を前記角度データに変換する角度データ変換手段（３１，３５）を備える
ことを特徴とする角度情報伝送システム。
【請求項３】
請求項２に記載の角度情報伝送システムであって、
前記角度情報伝送手段は、
前記角度データが増加している場合には前記モータが正方向に回転しているものと判定し、前記角度データが減少している場合には前記モータが逆方向に回転しているものと判定する回転方向判定手段（４７）と、
前記回転方向判定手段により判定されている回転方向が正方向であるときに、前記角度データが前記ｎＬＳＢ増加する毎に１つのパルスが発生するように前記正転信号を生成する正転信号生成手段（４４）と、
前記回転方向判定手段により判定されている回転方向が逆方向であるときに、前記角度データがｎビット変化する毎に１つのパルスが発生するように前記逆転信号を生成する逆転信号生成手段（４５）と、
前記角度データが前記基準角度になる毎に１つのパルスが発生するように前記基準角度信号を生成する基準角度信号生成手段（４８）と、
を備えることを特徴とする角度情報伝送システム。
【請求項４】
請求項２又は請求項３に記載の角度情報伝送システムであって、
前記角度データ変換手段は、
前記正転信号に基づいて前記モータの回転角度が前記ｎＬＳＢ分増加したことを検出し、そのｎＬＳＢ分増加を検出する毎にカウント値をｎＬＳＢずつカウントアップするよう構成された第１のカウンタ（５１）と、
前記逆転信号に基づいて前記モータの回転角度が前記ｎＬＳＢ分減少したことを検出し、そのｎＬＳＢ分減少を検出する毎にカウント値をｎＬＳＢずつカウントアップするよう構成された第２のカウンタ（５２）と、
前記基準角度信号に基づいて前記モータの回転角度が前記基準角度になったことを検出し、その基準角度になったことを検出する毎に前記各カウンタのカウント値を初期化する初期化手段（５３，３５，Ｓ２１０）と、
前記第１のカウンタのカウント値と前記第２のカウンタのカウント値との差を演算することにより前記角度データを算出する角度データ算出手段（３５，Ｓ１２０）と、
を備えることを特徴とする角度情報伝送システム。
【請求項５】
請求項２〜請求項４の何れか１項に記載の角度情報伝送システムであって、
当該角度情報伝送システムは車両に搭載され、
前記モータは、前記車両における走行用の動力源として用いられる
ことを特徴とする角度情報伝送システム。
【請求項６】
請求項５に記載の角度情報伝送システムであって、
前記他のマイクロコンピュータのうち少なくとも１つは、前記モータ制御用マイクロコンピュータから伝送される前記角度情報に基づいて前記モータ制御用マイクロコンピュータの動作を監視する監視手段（３７）を備える
ことを特徴とする角度情報伝送システム。
【請求項７】
請求項６に記載の角度情報伝送システムであって、
前記モータ制御用マイクロコンピュータは、前記角度データ生成手段により生成された角度データおよび外部から入力されるトルク指令に基づいて前記モータを制御するよう構成されており、
前記監視手段は、
前記角度データ変換手段により変換された角度データおよび前記モータに流れている電流に基づいて前記モータが実際に出力しているトルクである実トルクを計算する実トルク計算手段（Ｓ３１０）と、
前記実トルク計算手段により計算された実トルクと前記トルク指令との差に基づいて、前記モータ制御用マイクロコンピュータによる前記モータの制御が正常に行われているか否かを判定する制御状態判定手段（Ｓ３３０〜Ｓ３５０）と、
を備えることを特徴とする角度情報伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御用のマイクロコンピュータから他のマイクロコンピュータへモータの角度情報を伝送する角度情報伝送方法、およびこの角度情報伝送方法によりマイコン間で角度情報の伝送が行われるよう構成された角度情報伝送システムに関する。
【背景技術】
【０００２】
電気自動車やハイブリッド自動車、電車などのように走行用の動力源としてモータを備えた車両は、一般に、モータの回転角（回転方向の角度）を検出するための回転角検出装置を備えている。この回転角検出装置により検出される回転角は、主に、モータへの通電を制御するために用いられる。また、モータへの通電制御が正常に行われているかどうか監視する目的で用いられる場合もある。
【０００３】
回転角検出装置の具体例として、モータの回転軸に取り付けられたレゾルバ、及びそのレゾルバからのアナログの出力信号をデジタルの角度情報に変換するＲＤＣ（Resolver to Digital Converter ；レゾルバ・デジタルコンバータ）からなるものが知られており、近年の電気自動車やハイブリッド自動車等で多用されている（例えば、特許文献１参照）。
【０００４】
従来のＲＤＣは、角度情報としてＡ相信号、Ｂ相信号、およびＺ相信号の３つの信号を出力するよう構成されたものが一般的である。これら各相信号は、周知のいわゆるインクリメンタル型ロータリエンコーダが出力するＡ，Ｂ，Ｚ各相信号と同じ性質のものである。即ち、Ａ，Ｂ各相信号から角度を検出でき、Ａ，Ｂ各相信号の位相差から回転方向を検出でき、Ｚ相信号から基準角度を検出できる。
【０００５】
ＲＤＣは、一般に、モータを制御するためのＥＣＵ（以下「モータ制御ＥＣＵ」という）に搭載される。一般的なＲＤＣは、レゾルバからの出力信号を所定ビットの角度データ（回転角θ）に変換する角度検出部と、その回転角θをＡ，Ｂ，Ｚ各相信号にエンコード（変調）して出力するための専用のハードウェアであるエンコーダとを備えている。ＲＤＣからのＡ，Ｂ，Ｚ各相信号は、同じモータ制御ＥＣＵ内における、モータ制御用のマイコン（制御マイコン）に伝送される。
【０００６】
なお、ＲＤＣから制御マイコンへデジタルの回転角θを直接伝送することも不可能ではないが、シリアル通信ではソフトウェアでの処理が必要となってその処理等に時間がかかってしまうため、モータ制御における早い周期での各種演算に間に合わない。一方、パラレル通信では、データのビット数だけ信号線が必要となってしまう。例えば１０ビットの回転角θをパラレル伝送しようとすると１０本もの伝送線が必要となる。そのため、ＲＤＣにおいてＡ，Ｂ，Ｚ各相信号にエンコードした上で、３本の伝送線にて制御マイコンへ角度信号を伝送するようにしている。
【０００７】
制御マイコンは、Ａ，Ｂ，Ｚ各相信号をデジタルの角度データ（回転角φ）にデコード（復調）するための専用のハードウェアであるデコーダを備え、そのデコードされた回転角φを用いてモータを制御する。具体的には、制御マイコンは、モータの電流と回転角φから、インバータを駆動するためのドライバ駆動信号を生成してインバータへ出力することで、モータの制御を行う。
【０００８】
近年、モータ制御ＥＣＵの低コスト化やＥＣＵ内プリント板の省面積化の観点から、ＲＤＣの機能がマイコンに内蔵化される動向にある。上述した従来のモータ制御ＥＣＵの構成（ＲＤＣと制御マイコンが別体）に対し、ＲＤＣを制御マイコンに内蔵した場合、ＲＤＣの角度情報は制御マイコン内部で用いられることから、ＲＤＣから制御マイコンへの伝送は不要となる。
【０００９】
そのため、ＲＤＣを制御マイコンに内蔵した場合、回転角θをＡ，Ｂ，Ｚ各相信号に変換するエンコーダ、およびＡ，Ｂ，Ｚ各相信号を回転角φにデコードするデコーダをいずれも省略することができ、それによりモータ制御ＥＣＵのコストダウンが可能となる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特許第４８０３２８６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかし近年、機能安全の観点より、制御マイコンの動作を他のマイコンで監視する必要性が生じてきている。監視用のマイコン（以下「監視マイコン」という）における具体的監視方法としては、例えば上位マイコンからの目標トルクと監視マイコンで算出した実際のトルクを比較するという方法が考えられる。監視マイコンで実際のトルクを計算するためには、制御マイコンと同様にリアルタイムに近い角度情報が必要となる。そのため、制御マイコン内のＲＤＣから監視マイコンへ角度情報を伝送する必要がある。
【００１２】
この場合、制御マイコン内のＲＤＣで生成されたデジタルの回転角θをそのまま監視マイコンへ伝送しようとすると、シリアル通信およびパラレル通信のいずれも上述した問題が生じるため、現実的ではない。そのため、従来同様、制御マイコン内で回転角をＡ，Ｂ，Ｚ各相信号にエンコードした上で監視マイコンへ伝送する構成が現実的である。
【００１３】
しかし、そのような構成をとると、制御マイコンにおいてエンコーダを省略することができないだけでなく、監視マイコンにおいてもデコーダ（専用のハードウェア）が必要となる。そのため、監視マイコンとして汎用のマイコンを使用することはできない。
【００１４】
レゾルバからの出力信号を監視マイコンに取り込んで監視マイコン内で処理する方法も考えられるが、その場合、監視マイコン内にレゾルバ出力信号をデジタルの角度データに変換する角度検出部が必要となってしまうため、監視マイコンとして汎用のマイコンを使用することができない。
【００１５】
このように、制御マイコンだけでなく監視マイコンとしても、汎用のマイコンを使用できずに専用のハードウェアを備えたマイコンを用いなければならない。その結果、モータ制御ＥＣＵ全体のコストアップや実装面積の増加などといった問題が生じる。この問題は、監視マイコンに限らず、角度情報を必要とするマイコンが増えれば増えるほど大きくなる。
【００１６】
本発明は上記課題に鑑みなされたものであり、デジタルの角度データをエンコードしてマイコンへ伝送するよう構成されたシステムにおいて、受信側のマイコンとして安価な汎用のマイコンを使用できるようにすることを目的とする。
【課題を解決するための手段】
【００１７】
上記課題を解決するためになされた本発明の角度情報伝送方法は、モータ（１）を制御するマイクロコンピュータ（２０）において、前記モータの制御に用いられる前記モータの回転角度を示す所定ビットの角度データを、そのビット数よりも少ない数の二値信号からなる角度情報に変換して他のマイクロコンピュータ（３０）へ伝送する方法であって、角度データがｎＬＳＢ（ｎは自然数）増加する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である正転信号と、角度データがｎＬＳＢ減少する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である逆転信号と、角度データが予め決められた基準角度になる毎に少なくとも１つのエッジ変化が生じるようなパルス信号である基準角度信号とを生成し、これら３つの信号を上記角度情報として他のマイクロコンピュータへ伝送する。
【００１８】
なお、エッジ変化とは、信号レベルが変化すること、即ち、ＬｏｗレベルからＨｉｇｈレベルへ変化、またはＨｉｇｈレベルからＬｏｗレベルへ変化することを意味する。
このような角度情報伝送方法によりモータの角度情報を伝送することで、この角度情報を受信する他のマイクロコンピュータは、伝送されてきた正転信号、逆転信号、および基準角度信号を、簡素な構成のハードウェアを用いて角度データに変換することができる。これにより、他のマイクロコンピュータとして、角度データに変換するための専用のハードウェアを備えたマイクロコンピュータを用いる必要はなく、例えばカウンタ等を備えたごく一般的な汎用のマイクロコンピュータを用いることができる。そのため、受信側の他のマイクロコンピュータとして安価な汎用のものを使用することができる。
【００１９】
また、上記課題を解決するためになされた本発明の角度情報伝送システムは、モータを制御するモータ制御用マイクロコンピュータ（２０）を含む複数のマイクロコンピュータを備え、モータ制御用マイクロコンピュータから少なくとも１つの他のマイクロコンピュータ（３０）へモータの回転角度を示す角度情報を伝送するよう構成されたものであり、モータ制御用マイクロコンピュータは、角度データ生成手段（２５）と、角度情報伝送手段（２７）とを備える。
【００２０】
角度データ生成手段は、モータの回転角度を検出するための外部の回転角度検出部（７）から入力される検出信号に基づいて、モータの回転角度を示す所定ビットの角度データを生成する。
【００２１】
角度情報伝送手段は、角度データ生成手段により生成された角度データに基づいて、角度情報として、角度データがｎＬＳＢ（ｎは自然数）増加する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である正転信号、角度データがｎＬＳＢ減少する毎に少なくとも１つのエッジ変化が生じるようなパルス信号である逆転信号、および角度データが予め決められた基準角度になる毎に少なくとも１つのエッジ変化が生じるようなパルス信号である基準角度信号を生成して他のマイクロコンピュータへ伝送する。
【００２２】
そして、他のマイクロコンピュータは、モータ制御用マイクロコンピュータから受信した角度情報を角度データに変換する角度データ変換手段（３１，３５）を備える。
このように構成された本発明の角度情報伝送システムによれば、本発明の角度情報伝送方法が採用され、正転信号、逆転信号、および基準角度信号が角度情報として他のマイクロコンピュータへ伝送される。これにより、他のマイクロコンピュータにおいて、角度データ変換手段を実現するために専用のハードウェアを設ける必要はなく、例えばカウンタ等を備えたごく一般的な汎用のマイクロコンピュータによって角度データ変換手段を容易に実現できる。そのため、受信側の他のマイクロコンピュータとして安価な汎用のものを使用することができる。
【００２３】
なお、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００２４】
【図１】実施形態の電気自動車のモータ制御システムを表す構成図である。
【図２】制御マイコンが備えるエンコーダの概略構成を表すブロック図である。
【図３】監視マイコンが備えるデコーダの概略構成を表すブロック図である。
【図４】監視マイコン（角度計算部）が実行する角度計算処理を表すフローチャートである。
【図５】監視マイコン（角度計算部）が実行するＮＭエッジ検出割込処理を表すフローチャートである。
【図６】制御マイコンおよび監視マイコンの各種動作のうち角度情報に関する動作例を表す説明図である。
【図７】監視マイコン（異常判定部）が実行する監視制御処理を表すフローチャートである。
【発明を実施するための形態】
【００２５】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
本実施形態では、本発明を電気自動車に適用した例について説明する。図１に示すように、本実施形態の電気自動車には、走行用モータ（以下単に「モータ」という）１と、インバータ３と、モータ制御ＥＣＵ５とが搭載されている。
【００２６】
モータ１は、電気自動車の走行用駆動力を発生させる動力源であって、公知の交流同期モータ（永久磁石型同期モータ）からなるものである。モータ１の出力軸は、ディファレンシャルギヤ等を介して左右の駆動輪に連結されている。
【００２７】
インバータ３は、図示しない高圧バッテリの直流電圧を三相交流に変換し、その変換したＵ相、Ｖ相及びＷ相の三相交流電流Ｉｕ，Ｉｖ，Ｉｗによってモータ１を駆動する。具体的には、本実施形態のインバータ３は、例えばＩＧＢＴ（絶縁ゲート型バイポーラトランジスタ）等からなる６個のスイッチング素子と、それらスイッチング素子を駆動する駆動回路とを備える。その駆動回路が、モータ制御ＥＣＵ５から入力されるＵ，Ｖ，Ｗ各相のパルス幅変調信号に基づいて上記各スイッチング素子をオン／オフさせることにより、高圧バッテリの直流を三相交流に変換する。
【００２８】
なお、高圧バッテリは、充放電可能な周知の２次電池（例えばニッケル水素２次電池）であり、モータ１の駆動に必要な所定の直流電圧（例えば２８８Ｖ）をインバータ３を介してモータ１へ供給する。
【００２９】
モータ１の出力軸には、モータ１の回転角度（詳しくは、モータ１のロータの回転角度）を検出するためのセンサとして、レゾルバ７が設けられている。尚、本実施形態でいう回転角度とは、特に断りのない限り、モータ１の機械的な回転角度ではなく、電気的な角度（いわゆる電気角）を意味するものとする。
【００３０】
レゾルバ７は、モータの出力軸の回転と共に回転するロータ、及びステータを備え、ロータの位置によるロータとステータとの間のリラクタンスの変化に応じた（即ちモータの回転角度に応じた）回転検出信号を出力する、周知の回転角度検出用のセンサである。
【００３１】
レゾルバ７からは、モータ１の回転角度（以下単に「回転角」ともいう）θに応じて正弦波状に振幅が変わると共に位相が電気角で９０°ずれた２つの回転検出信号Ｓｓ，Ｓｃが出力される。即ち、レゾルバ７において、レゾルバの一次コイルに一定周波数の励磁信号ｒｅｆ（＝ｓｉｎωｔ）が供給されることで、二次コイルの各々から、モータ１の回転角θに応じた回転検出信号として、励磁信号ｒｅｆをｓｉｎθで振幅変調した波形の回転検出信号Ｓｓ（＝ｒｅｆ・ｓｉｎθ）と、励磁信号ｒｅｆをｃｏｓθで振幅変調した波形の回転検出信号Ｓｃ（＝ｒｅｆ・ｃｏｓθ）とが出力される。
【００３２】
なお、θは、モータ１の実際の機械的回転角度をｍ倍（ｍは１以上の整数）した角度であり、レゾルバ７の電気角（モータ１の電気角）を示すものでもある。また、ｍは、モータ１の一回転あたりにθが回転する回数（即ち、機械角に対する電気角の倍速比）であり、一般には軸倍角と呼ばれる。
【００３３】
インバータ３からモータ１への電流供給線９には、各相の電流を検出する電流センサ１１が配設されている。電流センサ１１にて検出された各相の電流（電流検出信号）は、モータ制御ＥＣＵ５に入力される。なお、電流供給線９は、実際には、Ｕ，Ｖ，Ｗ各相毎に配設されているのだが、図１では、説明の簡略化のためこれらをまとめて１つの電流供給線９として図示している。電流センサ１１についても同様であり、実際にはＵ，Ｖ，Ｗ各相の電流供給線にそれぞれ配設されていて各電流センサから各相の電流検出信号がそれぞれモータ制御ＥＣＵ５に入力されるのだが、図１では説明の簡略化のためにこられをまとめて１つの電流センサ１１として図示している。
【００３４】
モータ制御ＥＣＵ５は、主に、インバータ３を介してモータ１を制御するマイクロコンピュータ（以下「マイコン」と略す）である制御マイコン２０と、この制御マイコン２０の動作を監視するマイコンである監視マイコン３０と、ドライバ１３と、を備えている。
【００３５】
制御マイコン２０は、ＲＤＣ２１と、モータ制御部２３とを備えている。このうちモータ制御部２３は、その実態はＣＰＵであり、ＣＰＵが各種プログラムを実行することによりモータ制御部２３として機能する。その他、図示は省略したものの、制御マイコン２０は、ＲＯＭ、ＲＡＭ、Ｉ／Ｏなどの、一般的なマイコンが通常備えている周知の構成要素を備えている。
【００３６】
ＲＤＣ２１は、レゾルバ７からの各回転検出信号Ｓｓ，Ｓｃをデジタルの角度データ（回転角θ）に変換するハードウェアであり、角度検出部２５とエンコーダ２７とを備える。即ち、ＲＤＣ２１は、レゾルバ７に励磁信号ｒｅｆを供給する。そして、その励磁信号ｒｅｆに対してレゾルバ７から出力される各回転検出信号Ｓｓ，Ｓｃを入力し、角度検出部２５が、その各回転検出信号Ｓｓ，Ｓｃから、モータ１の回転角を示すデジタルデータ（回転角θ）を生成する。
【００３７】
本実施形態のＲＤＣ２１は、デジタルトラッキング方式のＲＤＣである。デジタルトラッキング方式のＲＤＣによる角度データ変換方法はよく知られているため、ここでは詳細説明を省略する。
【００３８】
また、本実施形態のＲＤＣ２１は、角度分解能Ｍ［ｂｉｔ］が１２ｂｉｔである。即ち、図６（ａ）に例示するように、モータ１が正方向に回転（正転）しているときは、角度検出部２５からの回転角θは、一回転中に０から４０９５まで上昇していき、一回転すると４０９５から再び０に戻る。逆に、モータ１が逆方向に回転（逆転）しているときは、図６（ａ）に例示するように、角度検出部２５からの回転角θは４０９５から０まで減少していき、一回転すると０から４０９５に再び戻る。
【００３９】
モータ制御部２３は、ＲＤＣ２１からの回転角θを入力し、例えばその回転角θの単位時間あたりの変化分から、モータ１の回転数（回転速度）を算出する。そして、モータ制御部２３は、モータ１の回転情報である回転角θ及び上記算出した回転数、電流センサ１１からの各相電流検出信号、図示しない他のＥＣＵからの目標トルクＴｏなどに基づいて、ドライバ１３を介してインバータ３を駆動することにより、車両の運転状態に応じた所望のトルクをモータ１に発生させる。なお、他のＥＣＵとは、例えば当該電気自動車の制御全体の階層においてモータ制御ＥＣＵ５よりも上位に位置するＥＣＵであり、以下これを「上位ＥＣＵ」という。
【００４０】
モータ制御部２３によるモータ１の制御自体は公知のものであるが、簡単に説明しておく。即ち、モータ制御部２３は、上位ＥＣＵから入力される目標トルクＴｏに基づいて、その目標トルクＴｏが示すトルクをモータ１に発生させるための制御信号を、ドライバ１３に出力する。このとき、モータ制御部２３は、電流センサ１１からの各相電流検出信号のうちの少なくとも２つ（例えば、Ｕ相とＷ相）に基づいて、モータ１に流れる三相の各電流が目標トルクＴｏに応じた目標値となるように、ドライバ１３への制御信号（延いては、ドライバ１３からインバータ３へのパルス幅変調信号）をフィードバック制御する。
【００４１】
より具体的には、このフィードバック制御における演算は、ｄｑ軸回転座標系にて行われる。即ち、入力される目標トルクＴｏに応じたｄ・ｑ各軸の電流指令値を演算する一方、電流センサ１１からの各相電流検出信号を２相（ｄ・ｑ軸）の実電流値に座標変換する。そして、座標変換後の電流指令値と実電流値とに基づくフィードバック制御により、ドライバ１３への制御信号を生成する。上述した座標変換の際、さらにはフィードバック制御による制御信号生成の際に、モータ１の回転角θや回転数が必要となる。
【００４２】
ドライバ１３は、制御マイコン２０からの制御信号に従って、三相交流電流の各相に対応したパルス幅変調信号を生成し、それら各パルス幅変調信号をインバータ３に出力する。これにより、インバータ３からモータ１へ、Ｕ相、Ｖ相及びＷ相の三相交流電流が供給される。
【００４３】
モータ１の回転角を示す情報（角度情報）は、制御マイコン２０だけでなく、監視マイコン３０においても必要となる。そのため、ＲＤＣ２１には、角度検出部２５にて生成された１２ｂｉｔの回転角θを正転信号ＦＤ、逆転信号ＲＤ、および基準角度信号ＮＭの３つの信号に変換（エンコード）するエンコーダ２７が備えられている。そして、それら３つの信号ＦＤ、ＲＤ、ＮＭが、モータ１の角度情報として、監視マイコン３０へ伝送される。
【００４４】
正転信号ＦＤは、図６（ｆ）に例示するように、正転時には回転角θの変化周期でパルスが発生し、逆転時にはパルスが発生せず常時Ｌ（Ｌｏｗ）レベルとなるような信号である。逆転信号ＲＤは、図６（ｇ）に例示するように、逆転時には回転角θの変化周期でパルスが発生し、正転時にはパルスが発生せず常時Ｌレベルとなるような信号である。基準角度信号ＮＭは、図６（ｈ）に例示するように、回転角θが０になる毎にその０になっている期間中にパルスが発生するような信号である。
【００４５】
エンコーダ２７は、より具体的には、図２に示すように、最下位ｂｉｔ検出部４１と、両エッジ検出部４２と、パルス出力部４３と、第１ＡＮＤ回路４４と、第２ＡＮＤ回路４５と、角度差分計算部４６と、正転・逆転判定部４７と基準角度信号生成部４８とを備える。
【００４６】
最下位ｂｉｔ検出部４１は、回転角θの最下位ｂｉｔの値の変化を検出する。そして、図６（ｂ）に例示するように、最下位ｂｉｔが０のときはＬレベル、最下位ｂｉｔが１のときはＨ（Ｈｉｇｈ）レベルとなるようなパルス信号を出力する。
【００４７】
両エッジ検出部４２は、最下位ｂｉｔ検出部４１からのパルス信号の立ち上がりエッジおよび立ち下がりエッジを検出し、検出する毎にその検出結果をパルス出力部４３へ伝える。
【００４８】
パルス出力部４３は、図６（ｄ）に例示するように、両エッジ検出部４２にてエッジが検出される毎に、パルス信号（両エッジ検出パルス）を生成・出力する。この両エッジ検出パルスのパルス幅は、モータ１が定格上の最大回転数で回転しているときに回転角θの最下位ｂｉｔが変化する時間より短い時間に設定されている。
【００４９】
角度差分計算部４６は、入力される回転角θが１ＬＳＢ変化する毎に、その変化後の新たな回転角θ（今回値）と、その変化前の回転角θ（前回値）との差分を計算し、その計算結果を角度差分として出力する。角度差分の具体例は図６（ｃ）に例示する通りである。モータ１が正転している場合は、回転角θは１ｂｉｔ（１ＬＳＢ）ずつ変化（増加）していくため、角度差分は基本的には１（＋１ＬＳＢ）である。ただし例外があり、回転角θが４０９５から０に変化したときは、角度差分は−４０９５となる。一方、モータ１が逆転している場合は、回転角θは１ｂｉｔ（１ＬＳＢ）ずつ変化（減少）していくため、角度差分は基本的には−１（−１ＬＳＢ）である。ただしこの場合も例外があり、回転角θが０から４０９５に変化したときは、角度差分は４０９５となる。
【００５０】
正転・逆転判定部４７は、角度差分計算部４６からの角度差分に基づいて、モータ１の回転方向を判定する。具体的には、角度差分が１または−４０９５であれば正転、角度差分が−１または４０９５であれば逆転と判定する。そして、正転・逆転判定部４７は、その判定結果に基づき、図６（ｅ）に例示するように、正転時は１（Ｈレベル）、逆転時には０（Ｌレベル）となるような二値の回転方向信号を出力する。なお、モータ１が回転していないときは、回転が停止する直前の回転方向に対応した値（信号レベル）を保持する。
【００５１】
第１ＡＮＤ回路４４は、パルス出力部４３からの両エッジ検出パルスと正転・逆転判定部４７からの回転方向信号が入力され、これら両者の論理積を演算する。そして、その論理積を正転信号ＦＤとして出力する。そのため、正転信号ＦＤは、図６（ｆ）に例示するように、モータ１の正転時にモータ１の回転角θの変化と同期して出力されるパルス信号となる。
【００５２】
第２ＡＮＤ回路４５は、パルス出力部４３からの両エッジ検出パルスと正転・逆転判定部４７からの回転方向信号が入力される。そして、両エッジ検出パルスと、回転方向信号の逆論理の信号との論理積を演算する。そして、その論理積を逆転信号ＲＤとして出力する。そのため、逆転信号ＲＤは、図６（ｇ）に例示するように、モータ１の逆転時にモータ１の回転角θの変化と同期して出力されるパルス信号となる。
【００５３】
基準角度信号生成部４８は、角度検出部２５から入力される回転角θに基づいて基準角度信号ＮＭを生成し、出力する。具体的には、通常時は０（Ｌレベル）で、回転角θが０の間は１（Ｈレベル）となるような二値の基準角度信号ＮＭを出力する。図６（ｈ）は、正転時において回転角θが０となっている期間に基準角度信号ＮＭがＨレベルとなる例が示されている。つまり、この基準角度信号ＮＭは、モータ１が１回転（電気角で一回転）する毎にパルスが出力されるような信号であり、周知のインクリメンタル型ロータリエンコーダが出力するＺ相信号と同じ性質のものである。
【００５４】
このように、エンコーダ２７は、角度検出部２５からの回転角θに基づいて、正転信号ＦＤ、逆転信号ＲＤ、および基準角度信号ＮＭを生成する。そして、これら各信号ＦＤ、ＲＤ、ＮＭが、モータ１の回転角を示す角度情報として、監視マイコン３０へ伝送される。
【００５５】
監視マイコン３０は、デコーダ３１と、監視制御部３３とを備えている。このうち監視制御部３３は、その実態はＣＰＵであり、ＣＰＵが各種プログラムを実行することにより監視制御部３３として機能する。その他、図示は省略したものの、監視マイコン３０は、ＲＯＭ、ＲＡＭ（ＳＲＡＭ）、Ｉ／Ｏなどの、一般的なマイコンが通常備えている周知の構成要素を備えている。
【００５６】
デコーダ３１は、制御マイコン２０から伝送されてきた角度情報（ＦＤ、ＲＤ、ＮＭ）を、Ｍビット（本例では１２ｂｉｔ）の角度データ（回転角φ）に変換（デコード）する。デコーダ３１は、より具体的には、図３に示すように、ＦＤエッジカウンタ５１と、ＲＤエッジカウンタ５２と、ＮＭエッジ検出器５３とを備える。
【００５７】
ＦＤエッジカウンタ５１は、正転信号ＦＤの立ち上がりエッジを検出し、検出する毎にカウントアップするよう構成されたカウンタである。また、ＦＤエッジカウンタ５１のカウンタ値（ＦＤエッジカウンタ値Ｋｆｄ）は、監視制御部３３からのＦＤリセット信号によって０にリセットされる。このリセットされるタイミングは、後述するように、基準角度信号ＮＭのエッジ立ち上がりタイミングである。
【００５８】
そのため、ＦＤエッジカウンタ値Ｋｆｄは、図６（ｊ）に例示するように、モータ１が正転している間、回転角θが１ｂｉｔ変化する毎に１（１ＬＳＢ）ずつカウントアップされていき、基準角度信号ＮＭのパルスが立ち上がる毎に０にリセットされる。
【００５９】
ＲＤエッジカウンタ５２は、逆転信号ＲＤの立ち上がりエッジを検出し、検出する毎にカウントアップするよう構成されたカウンタである。また、ＲＤエッジカウンタ５２のカウンタ値（ＲＤエッジカウンタ値Ｋｒｄ）は、監視制御部３３からのＲＤリセット信号によって０にリセットされる。このリセットされるタイミングも、ＦＤエッジカウンタ値Ｋｆｄと同様、基準角度信号ＮＭのエッジ立ち上がりタイミングである。
【００６０】
そのため、ＲＤエッジカウンタ値Ｋｒｄは、図６（ｋ）に例示するように、モータ１が逆転している間、回転角θが１ｂｉｔ変化する毎に１（１ＬＳＢ）ずつカウントアップされていく。また、基準角度信号ＮＭのパルスが立ち上がる毎に０にリセットされる。
【００６１】
ＦＤエッジカウンタ５１およびＲＤエッジカウンタ５２はいずれも、パルスエッジを検出してカウントアップするカウンタであり、このようなカウンタは、一般的な汎用マイコンにおいて標準的に内蔵されている汎用のカウンタ（タイマ）を用いて容易に実現できる。
【００６２】
ＮＭエッジ検出器５３は、基準角度信号ＮＭの立ち上がりエッジを検出する。そして、立ち上がりエッジを検出した場合、ＮＭエッジ検出割込信号を監視制御部３３に送信する。このＮＭエッジ検出器５３についても、入力パルスのエッジを検出して割込信号を出力するものであり、一般的な汎用マイコンに内蔵されるハードウェアとしては標準的なものである。
【００６３】
つまり、デコーダ３１は、汎用マイコンがもともと備えているハードウェアを利用して十分に実現できるものであり、よって、監視マイコン３０として汎用のマイコンを用いることができるのである。
【００６４】
監視制御部３３は、制御マイコン２０が正常に動作しているかどうか、即ちモータ制御部２３による上記フィードバック制御が正常に行われているかどうかを監視するものであり、図１に示すように、角度計算部３５と異常判定部３７とを備える。既述の通り、監視制御部３３の実体はＣＰＵであり、角度計算部３５および異常判定部３７の機能はいずれもＣＰＵによるソフトウェア処理により実現されるものである。
【００６５】
即ち、角度計算部３５は、ＣＰＵが図４の角度計算処理および図５のＮＭエッジ検出割込処理を実行することにより実現される。
図４の角度計算処理は、角度計算部３５（ＣＰＵ）が所定周期で繰り返し実行する処理である。この角度計算処理が実行される周期・タイミングは、異常判定部３７が図７の監視制御処理を実行する周期・タイミングと同じである。つまり、所定周期毎に、角度計算部３５が回転角φを計算し、その計算結果を用いて異常判定部３７が制御マイコン２０の異常の有無を判定するのである。
【００６６】
角度計算部３５は、この角度計算処理を開始すると、まずＳ１１０にて、デコーダ３１から入力されているＦＤエッジカウンタ値ＫｆｄとＲＤエッジカウンタ値Ｋｒｄを読み取る。そして、Ｓ１２０にて、両者の差であるＫｆｄ−Ｋｒｄを演算し、その演算結果を、モータ１の回転角を示すデジタルの回転角φ（１２ｂｉｔ）として出力する。
【００６７】
また、角度計算部３５は、デコーダ３１からＮＭエッジ検出割込信号が入力される毎に、図５のＮＭエッジ検出割込処理を実行する。具体的には、ＮＭエッジ検出割込信号が入力されると、図５に示すように、Ｓ２１０にて、ＦＤリセット信号およびＲＤリセット信号をデコーダ３１に出力する。
【００６８】
角度計算部３５により計算される回転角φの数値例を図６（ｍ）に示す。図６（ｍ）からも明らかなように、ＦＤエッジカウンタ値ＫｆｄとＲＤエッジカウンタ値Ｋｒｄとの差が、回転角φとして算出されている。このように、角度計算部３５により、制御マイコン２０からの角度情報（ＦＤ、ＲＤ、ＮＭ）に基づいて回転角φをリアルタイムに計算できるのである。
【００６９】
なお、両者の差が負になった場合は、４０９６（＝２12）にその負の数を加えたものを回転角φとして算出する。また、回転角φの初期値については、監視制御部３３の起動直後に制御マイコン２０から送信してもらうことで得ることが可能である。ただし、基準角度信号ＮＭを一度検出しさえすれば、正しい回転角φをＦＤ、ＲＤ、ＮＭから得ることができる。そのため、回転角φの初期値の要・不要は適宜選択すればよい。
【００７０】
異常判定部３７は、所定周期で図７の監視制御処理を実行することで、制御マイコン２０の監視、即ち制御マイコン２０によるモータ１の制御が正常に行われているか否かの判定を行う。
【００７１】
異常判定部３７は、図７の監視制御処理を開始すると、まずＳ３１０にて、角度計算部３５で計算された回転角φと、電流センサ１１により検出された各相の検出電流に基づいて、モータ１の実際のトルクである実トルクＴｒを計算する。次に、Ｓ３２０にて、上位ＥＣＵから目標トルクＴｏを受信する。
【００７２】
ここで、上位ＥＣＵについて簡単に説明する。上位ＥＣＵは、当該電気自動車の制御全体を統括するＥＣＵであり、モータ制御ＥＣＵ５がモータ１を制御するために必要な各種指令、信号等を生成してモータ制御ＥＣＵ５へ出力する。具体的には、上位ＥＣＵは、アクセルセンサ（図示略）から入力されるアクセル開度を示す信号や、シフトスイッチ（図示略）から入力されるシフト位置を示す信号、車速センサ（図示略）から入力される車速（車両速度）を示す信号などの、車両状態を示す各種信号に基づいて、当該電気自動車における各種の制御を行う。その制御の１つに、目標トルクＴｏの生成がある。即ち、上位ＥＣＵは、上述した各種信号に基づき、例えばトルクマップ等を用いて、モータ１が出力すべき必要な駆動トルクを決定する。そして、その駆動トルクを示す目標トルクＴｏをモータ制御ＥＣＵ５へ出力する。
【００７３】
Ｓ３２０で目標トルクＴｏを受信すると、Ｓ３３０にて、トルク偏差Ｔｘを計算する。具体的には、実トルクＴｒと目標トルクＴｏの差の絶対値を計算してこれをトルク偏差Ｔｘとする。
【００７４】
そしてＳ３４０にて、トルク偏差Ｔｘが所定の閾値以上であるか否かを判断する。制御マイコン２０においてモータ１の制御が正常に行われていれば、トルク偏差Ｔｘは小さい値となるはずである。逆に制御マイコン２０に異常が生じてモータ１の制御が正常に行われていない場合、トルク偏差Ｔｘが大きい値になる可能性がある。そこで、制御マイコン２０が正常であるか否かを判定するための閾値を適宜設定して、その閾値とトルク偏差Ｔｘとを比較判断することにより、制御マイコン２０の異常判定を行う。
【００７５】
トルク偏差Ｔｘが所定の閾値以上でなければ（Ｓ３４０：ＮＯ）、制御マイコン２０は正常であるものと判定して、Ｓ３１０に戻る。一方、トルク偏差Ｔｘが所定の閾値以上ならば（Ｓ３４０：ＹＥＳ）、Ｓ３５０にて、その閾値以上の状態が一定時間以上継続しているか否かを判断する。そして、一定時間以上経過していなければ（Ｓ３５０：ＮＯ）、Ｓ３１０に戻るが、一定時間以上経過していれば（Ｓ３５０：ＹＥＳ）、Ｓ３６０に進む。
【００７６】
Ｓ３６０では、上位ＥＣＵへ、異常判定信号を出力する。つまり、トルク偏差Ｔｘが所定の閾値以上の状態が一定時間以上継続したことから、制御マイコン２０が異常であるものと判定して、その旨を上位ＥＣＵへ通知するのである。
【００７７】
以上説明した本実施形態のモータ制御システムによれば、制御マイコン２０から監視マイコン３０へ、角度情報として正転信号ＦＤ、逆転信号ＲＤ、および基準角度信号ＮＭを伝送することで、監視マイコン３０は、簡素な構成のハードウェア（デコーダ３１）を用いて回転角φを生成することができる。
【００７８】
即ち、デコーダ３１として専用のハードウェアを用いる必要はなく、ごく一般的な汎用マイコンが通常備えているハードウェア（カウンタ等）を用いて容易にデコーダ３１を構成できる。そして、このデコーダ３１とＣＰＵによるソフトウェア処理とにより、容易に回転角φを生成することができる。
【００７９】
そのため、監視マイコン３０として安価なマイコン（汎用マイコン）を使用することができる。また、監視マイコン３０として安価な汎用マイコンを使用できるため、モータ制御ＥＣＵ５における監視マイコン３０の実装面積も低減することができる。そのため、Ａ，Ｂ，Ｚ各相信号を伝送する場合に比べて、モータ制御ＥＣＵ５の小型化、低コスト化も可能となる。
【００８０】
特に本実施形態では、車両（電気自動車）において本発明が適用され、これにより車両内のＥＣＵの小型化、低コスト化が実現できる。車両という限られたスペースの中でこのようにＥＣＵの小型化が可能となることは特に効果的である。
【００８１】
また、監視マイコン３０において、回転角φへのデコードを行うにあたり、その一部はＣＰＵによるソフトウェア処理を用いているものの、ＦＤ、ＲＤ、ＮＭ各信号のエッジ検出やそのカウント等についてはハードウェア（デコーダ３１）を用いて行っている。そのため、監視マイコン３０は、角度情報を高速でリアルタイムに得ることができる。
【００８２】
一般に、電気自動車やハイブリッド自動車における駆動用モータの制御においては、短い制御周期でモータ制御を行う必要があり、監視マイコン３０も短い制御周期で角度情報を取得して監視を行う必要がある。
【００８３】
これに対し、本実施形態の監視マイコン３０は、回転角φをデコードするにあたってＦＤ、ＲＤのエッジカウントやＮＭ検出割込はハードウェアにより実現しているため、短い制御周期での角度情報の変化が反映された回転角φを生成することができる。そのため、短い制御周期でリアルタイム且つ高精度に制御マイコン２０の監視を行うことができ、制御マイコン２０に異常が生じた場合にはこれを高精度且つ迅速に検出することができる。
【００８４】
［変形例］
以上、本発明の実施の形態について説明したが、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【００８５】
例えば、上記実施形態では、正転信号ＦＤおよび逆転信号ＲＤとして、回転角θが１ＬＳＢ変化する毎に１つのパルスが発生するような信号を採用したが（図６参照）、これら各信号ＦＤ、ＲＤの具体的形態は図６に例示した形態の信号に限定されるものではない。例えば、回転角θが１ＬＳＢ変化する毎にエッジ変化（レベル変化）が生じるようなパルス（図６（ｂ）の最下位ｂｉｔパルス参照）であってもよい。つまり、最下位ｂｉｔ検出部４１からのパルスをそのまま各ＡＮＤ回路４４，４５に入力するようにしてもよい。その場合、監視マイコン３０側のＦＤエッジカウンタ５１およびＲＤエッジカウンタ５２は、入力される正転信号ＦＤまたは逆転信号ＲＤに対し、そのエッジが変化する毎にカウントアップを行うようにすればよい。
【００８６】
つまり、正転信号ＦＤについては、正転中の角度変化がわかるような（１ＬＳＢ正転する毎にそのことが受信側でわかるような）信号である限り、また逆転信号についても、逆転中の角度変化がわかるような（１ＬＳＢ逆転する毎にそのことが受信側でわかるような）信号である限り、それぞれの具体的な信号形態は特に限定されるものではない。
【００８７】
また、上記実施形態では、回転角θが１ＬＳＢ変化する毎に正転信号ＦＤまたは逆転信号ＲＤのパルスが発生する構成であったが、ｎＬＳＢ（ｎは２以上の自然数）変化する毎にパルス或いはエッジ変化が生じるように各信号ＦＤ、ＲＤを生成するようにしてもよい。ただし、高精度の（分解能の高い）角度情報を監視マイコン３０に伝送するためには、上記実施形態のように１ＬＳＢ変化する毎にパルス或いはエッジ変化が生じるような各信号ＦＤ、ＲＤを生成するのが好ましい。
【００８８】
また、エンコーダ２７およびデコーダ３１の具体的構成は図２，図３に示した構成に限定されるものではなく、それぞれ所望の機能を実現できる限り、その具体的構成は種々考えられる。特に監視マイコン３０については、デコーダ３１（ハードウェア）と角度計算部３５（ソフトウェア処理）によって回転角φを得る構成としたが、どの演算をハードウェアで処理させてどの演算をソフトウェア処理とするかについても適宜決めることができる。つまり、汎用マイコンで実現できる限り、回転角φを生成する具体的構成は種々考えられる。
【００８９】
また、上記実施形態では、伝送されてきた角度情報（ＦＤ、ＲＤ、ＮＭ）を伝送元のマイコンの監視に用いる例を示したが、受信側マイコンにおける角度情報の使用目的はこれに限定されるものではない。
【００９０】
また、角度情報（ＦＤ、ＲＤ、ＮＭ）を伝送する伝送先のマイコンは複数あってもよい。また、本発明は車両への適用に限定されるものではない。
【符号の説明】
【００９１】
１…モータ、３…インバータ、５…モータ制御ＥＣＵ、７…レゾルバ、９…電流供給線、１１…電流センサ、１３…ドライバ、２０…制御マイコン、２１…ＲＤＣ、２３…モータ制御部、２５…角度検出部、２７…エンコーダ、３０…監視マイコン、３１…デコーダ、３３…監視制御部、３５…角度計算部、３７…異常判定部、４１…最下位ｂｉｔ検出部、４２…両エッジ検出部、４３…パルス出力部、４４…第１ＡＮＤ回路、４５…第２ＡＮＤ回路、４６…角度差分計算部、４７…正転・逆転判定部、４８…基準角度信号生成部、５１…ＦＤエッジカウンタ、５２…ＲＤエッジカウンタ、５３…ＮＭエッジ検出器
【図１】
2014017932.tif 000003
【図２】
2014017932.tif 000004
【図３】
2014017932.tif 000005
【図４】
2014017932.tif 000006
【図５】
2014017932.tif 000007
【図６】
2014017932.tif 000008
【図７】
2014017932.tif 000009