(57)【要約】【課題】人が設計した値とは異なるパラメータを用いて認証を行うモータモジュール等を提供する。【解決手段】本開示のモータモジュールは、実施形態において、可動子を有するモータと、モータを制御するモータ制御装置と、モータの製造ばらつきによって変動するモータに固有のモータ指紋情報が記録されている記憶装置とを備えている。【選択図】図２７
2020018168.tif 000002
【特許請求の範囲】
【請求項１】
可動子を有するモータと、
前記モータを制御するモータ制御装置と、
前記モータの製造ばらつきによって変動する前記モータに固有のモータ指紋情報が記録されている記憶装置と、
を備えている、モータモジュール。
【請求項２】
前記記憶装置は、
前記モータ指紋情報が記録されている不揮発性メモリを含む、請求項１に記載のモータモジュール。
【請求項３】
前記モータ指紋情報は、
前記可動子が一定速度で回転するときにセンサが出力した信号に基づいて決定されている、請求項１または２に記載のモータモジュール。
【請求項４】
前記センサは、
ホール素子またはホールＩＣを含む複数の磁気センサである、請求項１から３のいずれかに記載のモータモジュール。
【請求項５】
前記モータ指紋情報は、
前記可動子が一定速度で回転しているときに計測された前記可動子の回転量であって、前記複数の磁気センサから出力された複数の信号のうちのいずれか２個の信号が互いに交差する交差点によって区分される各セグメントに対応する前記可動子の回転量を、全てのセグメントに対応づける測定データである、請求項４に記載のモータモジュール。
【請求項６】
前記複数の磁気センサは、複数の磁極を有する可動子の前記複数の磁極が形成する磁界を検出して、
それぞれが検出した磁界の強さに応じた大きさを持つ検出信号を出力するＮ個（Ｎは３以上の整数）のセンサであって、
前記Ｎ個の検出信号の位相が３６０度／Ｎの角度ずつずれるように配置されている、請求項５に記載のモータモジュール。
【請求項７】
前記モータ指紋情報は、出荷前に前記記憶装置に記録されている、請求項１から６のいずれかに記載にモータモジュール。
【請求項８】
前記モータ指紋情報は、出荷後に前記記憶装置に記録されている、請求項１から６のいずれかに記載のモータモジュール。
【請求項９】
可動子を有するモータと、
前記モータを制御するモータ制御装置と、
を備え、
前記モータ制御装置は、
外部と通信を行うインタフェースと、
認証のための鍵情報が記録されている記憶装置と
を備え、
前記鍵情報は、前記モータの製造ばらつきによって変動する前記モータに固有の複数の値を含んでいる、モータモジュール。
【請求項１０】
前記記憶装置は、
前記鍵情報が記録されている不揮発性メモリを含む、請求項９に記載のモータモジュール。
【請求項１１】
前記モータ制御装置は、
外部から認証要求を受けると、前記鍵情報を入力値に含む関数による演算の結果を、前記インタフェースを介して外部に送出する、請求項９または１０に記載のモータモジュール。
【請求項１２】
前記関数は非公開関数またはハッシュ関数である、請求項１１に記載のモータモジュール。
【請求項１３】
前記モータ制御装置は、
外部との通信接続を開始するとき、外部に認証要求を送出する、請求項９から１２のいずれかに記載のモータモジュール。
【請求項１４】
前記可動子の回転に応じて信号を出力するセンサを備えており、
前記鍵情報は、
前記可動子が特定の条件で回転するときに、前記センサが出力した信号と関連付けられている、請求項９から１３のいずれかに記載のモータモジュール。
【請求項１５】
前記センサは、
ホール素子、ホールＩＣ、ロータリエンコーダ、またはレゾルバである、請求項１４に記載のモータモジュール。
【請求項１６】
前記センサは、複数の磁気センサを含み、
前記鍵情報は、前記可動子が一定速度で回転しているときに計測された前記可動子の回転量であって、前記複数の磁気センサから出力された複数の信号のうちのいずれか２個の信号が互いに交差する交差点によって区分される各セグメントに対応する前記可動子の回転量を、全てのセグメントに対応づける測定データである、請求項１５に記載のモータモジュール。
【請求項１７】
前記複数の磁気センサは、複数の磁極を有する可動子の前記複数の磁極が形成する磁界を検出して、
それぞれが検出した磁界の強さに応じた大きさを持つ検出信号を出力するＮ個（Ｎは３以上の整数）のセンサであって、
前記Ｎ個の検出信号の位相が３６０度／Ｎの角度ずつずれるように配置されている、請求項１６に記載のモータモジュール。
【請求項１８】
前記鍵情報は、出荷前に前記記憶装置に記録されている、請求項９から１７のいずれかに記載のモータモジュール。
【請求項１９】
前記鍵情報は、出荷後に前記記憶装置に記録されている、請求項９から１７のいずれかに記載のモータモジュール。
【請求項２０】
モータモジュールと外部装置との間で認証を行うモータ認証方法であって、
前記モータモジュールのモータに固有のモータ指紋情報であって、前記モータの製造ばらつきによって変動するモータ指紋情報を前記外部装置から前記モータモジュールに送信すること、および、
前記モータ指紋情報と、前記モータモジュールの記憶装置内に記録されているモータ指紋情報との照合による認証の結果を前記モータモジュールから受け取ること、
を含む、モータ認証方法。
【請求項２１】
モータモジュールと外部装置との間で認証を行うモータ認証方法であって、
前記モータモジュールのモータに固有のモータ指紋情報であって、前記モータの製造ばらつきによって変動するモータ指紋情報を前記モータモジュールが有する記憶装置から読み出すこと、
前記モータ指紋情報と、前記外部装置から前記モータモジュールに送られてきたモータ指紋情報との照合を行うこと、および
前記照合による認証の結果を前記モータモジュールから前記外部装置に送信すること、
を含む、モータ認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、モータモジュールおよびモータ認証方法に関する。
【背景技術】
【０００２】
国際公開ＷＯ２０１６／１０４３７８号の全体をここに援用する。
【０００３】
モータ制御装置のパラメータには、例えば位置ループゲイン、速度ループゲイン、イナーシャ比などが含まれる。これらのパラメータは、モータおよびモータを含むシステムの性能を規定するため、モータの制御パラメータと呼ばれ、設計者によって最適化される。制御パラメータは、モータ制御装置内のメモリに保存される。第三者がモータ制御装置内のメモリにアクセスして、そのメモリ内の制御パラメータの値を自由に読み出すことができるならば、第三者によるモータの特性コピーが可能になり、設計者によって最適化されたモータの性能優位性が失われてしまう。
【０００４】
特開２０１３−１４９１２３４号公報は、モータ制御装置への外部からの自由なアクセスを制限するため、モータ制御装置内の制御パラメータの値自体をパスワードとして用いることを開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−１４９１２３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特開２０１３−１４９１２３４号公報に開示されている技術によれば、パスワードとして利用されるパラメータは人が設計した値によって規定される。このため、一般的には類推が容易であり、必ずしもセキュリティの強度が高いとは言えない。
【０００７】
本開示によれば、人が設計した値とは異なるパラメータを用いて認証を行うモータモジュールの実施形態が提供される。
【課題を解決するための手段】
【０００８】
本開示のモータモジュールは、例示的な実施形態において、可動子を有するモータと、前記モータを制御するモータ制御装置と、前記モータの製造ばらつきによって変動する前記モータに固有のモータ指紋情報が記録されている記憶装置とを備えている。
【０００９】
本開示のモータモジュールは、他の例示的な実施形態において、可動子を有するモータと、前記モータを制御するモータ制御装置とを備え、前記モータ制御装置は、外部と通信を行うインタフェースと、認証のための鍵情報が記録されている記憶装置とを備え、前記鍵情報は、前記モータの製造ばらつきによって変動する前記モータに固有の複数の値を含んでいる。
【００１０】
本開示のモータ認証方法は、例示的な実施形態において、モータモジュールと外部装置との間で認証を行うモータ認証方法であって、前記モータモジュールのモータに固有のモータ指紋情報であって、前記モータの製造ばらつきによって変動するモータ指紋情報を前記外部装置から前記モータモジュールに送信すること、および、前記モータ指紋情報と、前記モータモジュールの記憶装置内に記録されているモータ指紋情報との照合による認証の結果を前記モータモジュールから受け取ることを含む。
【００１１】
本開示のモータ認証方法は、他の例示的な実施形態において、モータモジュールと外部装置との間で認証を行うモータ認証方法であって、前記モータモジュールのモータに固有のモータ指紋情報であって、前記モータの製造ばらつきによって変動するモータ指紋情報を前記モータモジュールが有する記憶装置から読み出すこと、前記モータ指紋情報と、前記外部装置から前記モータモジュールに送られてきたモータ指紋情報との照合を行うこと、および、前記照合による認証の結果を前記モータモジュールから前記外部装置に送信することを含む。
【発明の効果】
【００１２】
本発明の実施形態によれば、モータの製造ばらつきによって変動するモータに固有のモータ指紋情報がモータモジュールの記憶装置に記録されているので、人が設計したり、任意に設定した値とは異なる固有情報を用いて認証を行うことが可能になる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施形態に係る位置検出装置の構成を示す概略図である。
【図２】第１の実施形態に係るモータの概略構成図である。
【図３】第１の実施形態に係る増幅部が出力する検出信号Ｈｕ０、Ｈｖ０、Ｈｗ０の一例を説明する図である。
【図４】第１の実施形態に係る位置推定部が行う処理の手順のフローチャートである。
【図５】第１の実施形態に係るＡＤ変換部が出力する検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の一例を説明する図である。
【図６Ａ】第１の実施形態に係る３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係の組み合わせ、交差点、ゼロクロス点、分割信号について説明する図である。
【図６Ｂ】第１の実施形態に係る電気角１周期分の分割信号の接続について説明する図である。
【図７】第１の実施形態に係る機械角１周期分の分割信号の接続について説明する図である。
【図８】第２の実施形態に係る本実施形態に係るモータ制御システムの構成を示す概略図である。
【図９】第２の実施形態に係る位置演算部が行う処理の手順のフローチャートである。
【図１０】第２の実施形態に係る第１補正の処理の手順のフローチャートである。
【図１１】第２の実施形態に係る第１補正を行った結果の一例の波形図である。
【図１２】第２の実施形態に係る第２補正を行った結果の一例の波形図である。
【図１３】第２の実施形態に係るオフセット補正値と正側ゲイン補正値と負側ゲイン補正値との算出処理のフローチャートである。
【図１４】第２の実施形態に係る電気角１周期分の角度の分割信号を結合した波形図である。
【図１５】第２の実施形態に係る本実施形態に係る第３補正を行った結果の一例の波形図である。
【図１６】第３の実施形態に係るモータ制御システムの構成を示す概略図である。
【図１７】第３の実施形態に係る分割信号の正規化を説明する図である。
【図１８】第３の実施形態に係る正規化係数の算出を説明する図である。
【図１９】第３の実施形態に係る機械角度の算出を説明する図である。
【図２０】第３の実施形態に係るロータＲの初期位置の推定処理の手順のフローチャートである。
【図２１】第４の実施形態に係るモータ制御システムの構成を示す概略図である。
【図２２】本実施形態におけるロータリエンコーダ１３Ａの構成例を模式的に示す図である。
【図２３Ａ】本実施形態におけるレゾルバ１３Ｂの構成例を模式的に示す図である。
【図２３Ｂ】レゾルバ１３Ｂの励磁コイル１３Ｇ、検出コイル１３Ｈ、１３Ｋを流れる電流の波形を示す図である。
【図２４】モータモジュールと外部装置(オペレータ)との間で行われる認証プロセスの一例を示す図である。
【図２５】チャレンジ／レスポンス認証方式に従い、モータ指紋情報のハッシュ値を外部装置からモータモジュールに送信する例を示す図である。
【図２６】モータ指紋情報のハッシュ値を外部装置からモータモジュールに送信する例を示す図である。
【図２７】本開示によるモータモジュールの構成の一例を示すブロック図である。
【図２８】本開示によるモータモジュールの構成の一例をより詳細に示すブロック図である。
【発明を実施するための形態】
【００１４】
本開示によるモータモジュールは、非限定の例示的な実施形態において、可動子（典型的にはロータ）を有するモータと、モータを制御するモータ制御装置と、モータの製造ばらつきによって変動するモータに固有のモータ指紋情報が記録されている記憶装置とを備えている。
【００１５】
本開示の実施形態における「モータ指紋情報」は、人が設定したパラメータではなく、個々のモータが有する物理的な個体差を反映したパラメータである。このため、このモータ指紋情報は、認証の鍵情報として有効である。
【００１６】
後述する実施形態において、記憶装置は、モータ指紋情報が記録されている不揮発性メモリを含む。このようなモータ指紋情報は、例えばロータが一定速度で回転するときにセンサが出力した信号に基づいて決定され得る。より詳細には、ロータが一定速度で回転しているときに、複数の磁気センサから出力された複数の信号のうちのいずれか２個の信号が互いに交差する交差点によって区分されるロータの回転量（可動子の移動量）が測定される。こうして、各セグメントに対応するロータの回転量を全てのセグメントに対応づける測定データが取得される。このような測定データは、後に詳しく説明するように、「モータ指紋情報」として使用することができる。このような測定データは、例えば７２個の数値の列であり得る。１セグメントを２バイトで表現した場合、６極対モータのモータ指紋情報のサイズは７２バイトである。このような数値列は、モータに取り付けられたセンサによって取得され、個々のモータに固有である。
【００１７】
出荷前に取得された測定データによるモータ指紋情報を「出荷時モータ指紋」と称することができる。出荷時モータ指紋は、モータ出荷時から不揮発性メモリに記録されている。モータを修理した場合、モータ指紋の内容は変更されてもよい。モータの修理の前後においては、前述の「測定データ」の内容が一定に維持されないことがあり得るからである。このため、モータを修理した後、モータ指紋の内容は変更または更新され得る。
【００１８】
モータ指紋は、出荷後にモータモジュールの記憶装置内に記録されても良い。
【００１９】
「モータ指紋」の基礎となる測定データは、後述する実施形態では、モータ制御のために利用される。そのような実施形態における測定データは、個々のモータの制御に必要なデータであるため、他のデータを用いて個々のモータを正常に駆動することはできない。したがって、あるモータＭ１のモータ指紋(測定データ)を用いて、他のモータＭ２になりすましても、モータＭ１の測定データを用いてモータＭ２は正常に駆動されない。このため、オペレータとして機能する外部装置（上位システムにおけるマイクロコントローラなど）が予め有しているモータ指紋により、制御対象であるモータが正式に登録されたモータであると認証できない場合は、その制御対象のモータは正常に動作しない。
【００２０】
製造ばらつきとは、例えば、ホール素子にあっては、感度のばらつき、モータにおけるロータ磁石の保持力の違い、ホール素子の組立誤差等が要因となる。そのため、ホール素子のセンサの出力は、モータそれぞれにおいて、完全に一致するものではない。また、後述するように、光学式エンコーダ・レゾルバにあっては、スリットの幅の製造誤差、シャフトの同軸ずれ等が製造ばらつきの要因となる。上述のように、「モータ指紋」の基礎となる測定データは、同じ製造工程を得たモータにおいても、各種部品の製造ばらつきにより、モータの個体差を反映したものとなる。
【００２１】
図２４を参照して、認証プロセスの一例を説明する。図２４は、出荷されたモータモジュールと、このモータモジュールに指令を送出する外部装置(オペレータ)との間で行われる認証プロセスの一例を示している。モータモジュールは、モータ指紋情報をモータモジュール内部における不揮発性メモリ、典型的にはフラッシュメモリ内に保持している。また、外部装置は、このモータモジュールのモータ指紋情報を記憶した記憶装置を有している。この外部装置は、認証プロセスを開始するため、モータ指紋情報をモータモジュールに送信する。認証プロセスの開始は、例えば、モータモジュールと外部装置とが物理的に接続されたとき、または、モータモジュールおよび外部装置の両方が起動したときに実行され得る。認証プロセスの開始は、モータモジュールおよび外部装置の一方が他方に認証を要求することによって開始されても良い。
【００２２】
モータモジュールは、外部装置からモータ指紋情報を受け取ったとき、上記の不揮発性メモリに保持されているモータ指紋をメモリから読み出し、外部装置から送信されてきたモータ指紋情報とを照合する。両者が一致するか否かに応じて、認証の判断を行う。モータモジュールは、認証判断の結果を外部装置に送信する。
【００２３】
上記の例において、モータ指紋情報を平文ではなくハッシュ化した値(ハッシュ値)を送受信してもよい。図２５は、チャレンジ／レスポンス認証方式に従い、モータ指紋情報のハッシュ値を外部装置からモータモジュールに送信する例を示している。この例において、外部装置は、まず、認証要求をモータモジュールに送信する。認証要求をモータモジュールに送信する。認証要求を受信したモータモジュールはランダムな数値列(チャレンジコード)を生成し外部装置へ返信する。外部装置はチャレンジコードおよびハッシュ関数を用いて、モータ指紋情報のハッシュ化を実行する。外部装置は、モータ指紋情報のハッシュ値をモータモジュールに送信する。モータモジュールは、モータ指紋情報のハッシュ値を受け取ると、先に生成したチャレンジコードとモータモジュール内のハッシュ関数とを用いて、モータモジュール内にあるモータ指紋情報のハッシュ化を実行する。こうして得たハッシュ値と、外部装置から受信したハッシュ値と照合し、認証の判定を行う。モータモジュールは、認証結果を外部装置に送信する。
【００２４】
図２６は、外部装置からモータモジュールに対してハッシュ値とカウンタ値を送信する例を示す図である。図２５に示す例(チャレンジ／レスポンス認証方式)に限定されず、多様な認証方式を採用することが可能である。
【００２５】
このようにモータ指紋情報のハッシュ値を用いることにより、モータ指紋情報の漏えいを抑止できる。また、チャレンジ／レスポンス認証方式を併用することにより、ハッシュ値が漏えいした場合でも、ハッシュ値はチャレンジコードにより変化するためモータ指紋情報の内容は秘匿される。
【００２６】
上記の例では、ハッシュ関数を用いてモータ指紋情報をハッシュ化したが、ハッシュ関数の代わりに、他の非公開関数を用いてもよい。モータ指紋情報を入力値に含む関数による演算の結果をハッシュ値に代えて用いても良い。
【００２７】
図２７は、本開示によるモータモジュールの構成の一例を示すブロック図である。
【００２８】
図示されているモータモジュールは、ロータＲを有するモータＭと、モータＭを制御するモータ制御装置１０００とを備えている。モータ制御装置１０００は、外部装置２０００と通信を行うインタフェース（通信Ｉ／Ｆ）１１２０と、認証のための鍵情報が記録されている記憶装置１１４０とを備えている。インタフェース１１２０は、ネットワークに接続する装置である。インタフェース１１２０は、接続するネットワークの種類に応じて異なる複数のインタフェース回路を有していても良い。鍵情報は、モータＭの製造ばらつきによって変動するモータＭに固有の複数の値（モータ指紋情報）を含んでいる。鍵情報は、典型的には、記憶装置１１４０の少なくとも一部を構成している不揮発性メモリ内に記録されている。
【００２９】
図２７の例において、モータ制御装置１０００は信号処理回路１１６０を備えている。信号処理回路１１６０は、インタフェース１１２０および記憶装置１１４０に接続されている。信号処理回路１１６０、インタフェース１１２０および記憶装置１１４０は、１個または複数個のマイクロコントローラによって実現され得る。信号処理回路１１６０、インタフェース１１２０および記憶装置１１４０は、それぞれ、異なる半導体チップまたはパッケージによって実現されていてもよいし、少なくとも一部が同一の半導体チップまたはパッケージによって実現されていても良い。
【００３０】
この例において、モータＭの状態（不図示のステータ巻線を流れる電流、およびロータＲの回転位置など）を示す信号が検出装置１３００から出力され、モータ制御装置１０００に入力される。検出装置１３００の例は、電流センサ、ホール素子もしくはホールＩＣなどの磁気センサ、ロータリエンコーダ、またはレゾルバを含む。検出装置１３００は、モータＭの動作に必要な情報を取得する。また、モータＭが特定の条件で動作しているときに検出装置１３００によって取得される情報の少なくとも一部は、モータＭの製造ばらつきによって変動するモータＭに固有の複数の値（モータ指紋情報）として利用される。
【００３１】
図２８は、図２７の例の構成をより詳細に示す図である。図２８のモータ制御装置１０００は、制御回路１１００と駆動部１２００を有している。制御回路１１００は、上述したインタフェース１１２０、記憶装置１１４０、および信号処理回路１１６０とともに、ＰＷＭ回路１１８０を有している。駆動部１２００は、モータＭに電力を供給するインバータ１２２０と、インバータ１２２０のスイッチング動作を制御するゲートドライバ１２４０とを有している。ゲートドライバ１２４０は、制御回路１１００のＰＷＭ回路１１８０からの信号に応答して、インバータ１２２０のスイッチング動作を制御するゲート信号を出力する。駆動部１２００の構成は任意であり、図示される構成の例は本開示の実施形態をなんら制限しない。
【００３２】
モータ制御装置１０００は、インタフェース１１２０を介して、外部装置２０００からトルク指令および速度指令などの指令を受け取る。インタフェース１１２０は、無線または有線により、外部との間で信号またはデータの通信を実行する。
【００３３】
通信の接続を開始するため、本開示のモータモジュールでは、記憶装置１１４０に記録されている鍵情報を利用して認証を行う。認証が確立した場合、外部装置２０００とモータ制御装置１０００との間で通信が開始する。外部装置２０００からの指令に応じてモータ制御装置１０００はモータＭを駆動する。一方、認証が確立しなかった場合、外部装置２０００とモータ制御装置１０００との間で通信は開始しない。この場合、モータ制御装置１０００は、例えば「異常」を示す情報を、インタフェース１１２０または不図示の他のインタフェースを介して、外部に送出する。
【００３４】
以下、適宜図面を参照しながら、本開示による実施の形態を詳細に説明する。ただし、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。本発明者らは、当業者が本開示を十分に理解するために添付図面及び以下の説明を提供する。これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。
【００３５】
［第１の実施形態］
図１は、本実施形態に係るモータ制御システム１の構成の一例を示す概略図である。
【００３６】
図１に示すように、本実施形態におけるモータ制御システム１は、モータＭ、検出部１０、増幅部２０、位置推定部３０、減算器４０、制御部（制御回路）５０、および駆動部（駆動回路）６０を備える。モータ制御システム１には、外部装置７０から、位置指令値Θ*が入力される。なお、上付きの＊は、指令値を表している。また、上付き＾は、推定値を表す。本発明の実施形態において、ＣＷ回転とは、出力軸側から見て時計方向の回転である。
【００３７】
モータ制御システム１は、製品に取り付けられて使用される。製品は、例えば、プリンタ、スキャナ、ファクシミリなどの機能を有する複合機、電動パワーステアリング、アンテナチルト、ファン等である。モータ制御システム１は、複合機に用いられる場合、例えば、紙送り機能部等の機構部に取り付けられて使用される。
【００３８】
なお、以下において、モータＭがロータＲを備える場合を一例として説明するが、これに限られない。モータＭは、リニアモータであってもよい。モータＭがリニアモータの場合、モータＭは、ロータＲに代えて、直線的に運動する可動子（ｍｏｖｅｒまたはｍｏｖａｂｌｅ  ｅｌｅｍｅｎｔ）を備えている。すなわち、本発明の実施形態は、回転運動を行う可動子（ロータ）を制御してもよく、直線運動を行う可動子を制御してもよい。したがって、回転運動であるか直線運動であるかを問わず可動子であればよい。なお、本願において、可動子の用語は、外部から力を受けて回転または移動を行う駆動子（ｄｒｉｖｅｄ  ｅｌｅｍｅｎｔ）を意味する。
【００３９】
モータＭは、ロータＲを備える。モータＭは、例えば、永久磁石モータである。モータＭには、不図示の基板が取り付けられている。基板上には、検出部１０、増幅部２０、位置推定部３０、減算器４０、制御部５０、および駆動部６０が取り付けられている。
【００４０】
検出部１０は、センサ１１〜センサ１３を備える。センサ１１〜センサ１３それぞれは、モータＭに発生する磁界を電気信号に変換して出力する非接触の磁気センサである。センサ１１〜センサ１３それぞれは、例えばホール素子である。検出部１０は、検出した差動センサ信号を増幅部２０に出力する。本実施形態におけるモータ制御システム１の動作は、信号検出手順を有する。信号検出手順では、Ｎ個（Ｎは３以上の整数）の検出部それぞれは、可動子の位置に応じた磁界を検出して、電気信号である検出信号を出力し、それぞれの検出信号は、３６０度をＮで除算した角度ずつ位相がずれている。このようなセンサの個数がＮ個（Ｎは３以上の整数）であるとき、複数の磁極が形成する磁界を検出して、それぞれが検出した磁界の強さに応じた大きさを持つ検出信号を出力する。Ｎ個のセンサは、Ｎ個の検出信号の位相が３６０度／Ｎの角度ずつずれるように配置されている。検出信号の位相が３６０度／Ｎの角度ずつずれている状態とは、３６０度×整数±３６０度／Ｎの電気角だけ位相がずれている状態を含む。検出信号の位相が例えば１２０度（＝３６０度／３）の角度ずつずれている状態は、３つの検出信号の位相が２４０度（＝３６０度−１２０度）の電気角だけずれている状態を含む。
【００４１】
増幅部２０は、差動増幅器２１〜差動増幅器２３を備える。増幅部２０は、検出部１０から入力される差動センサ信号に基づいて検出信号Ｈｕ０、検出信号Ｈｖ０、および検出信号Ｈｗ０を生成する。増幅部２０は、生成した検出信号Ｈｕ０、検出信号Ｈｖ０、および検出信号Ｈｗ０を位置推定部３０に出力する。なお、検出信号Ｈｕ０、検出信号Ｈｖ０、および検出信号Ｈｗ０それぞれは、アナログ信号である。
【００４２】
位置推定部３０は、増幅部２０から入力された検出信号Ｈｕ０、検出信号Ｈｖ０、および検出信号Ｈｗ０に基づいて、ロータＲの回転位置を推定する。位置推定部３０は、推定した回転位置に基づいて機械角度Θ＾を生成し、生成した機械角度Θ＾を減算器４０に出力する。
【００４３】
減算器４０には、位置推定部３０から機械角度Θ＾が入力され、外部装置７０から位置指令値Θ*が入力される。減算器４０は、位置指令値Θ*と機械角度Θ＾との偏差を算出し、算出した偏差を制御部５０に出力する。
【００４４】
制御部５０は、減算器４０から入力された偏差に基づいてモータＭを駆動するための電圧指令を生成し、生成した電圧指令を駆動部６０に出力する。
【００４５】
駆動部６０は、制御部５０から入力された電圧指令に基づいて駆動信号を生成し、生成した駆動信号によってモータＭを駆動する。駆動部６０の典型例の一つは、インバータ回路である。インバータ回路は、電圧指令を受けてパルス幅変調（ＰＷＭ）信号を出力するＰＷＭ回路と、ＰＷＭに基づいてゲート駆動信号を出力するプリドライバ回路と、ゲート駆動信号を受けてスイッチングするインバータ出力回路とを備えることができる。
【００４６】
制御部５０と、駆動部６０の一部（例えばＰＷＭ回路）とは、１個の集積回路パッケージによって実現されていても良い。そのような集積回路パッケージは、汎用的なモータ制御用マイクロコンピュータとして入手可能である。また、駆動回路６０のインバータ出力回路は、パワーモジュールと呼ばれることがある。そのようなインバータ出力回路は、電圧指令に応じた大きさの電圧をモータＭの各コイルに印加し、モータＭを駆動することができる。
【００４７】
以上のように、モータ制御システム１は、外部装置７０から位置指令値Θ*を受け取り、位置指令値Θ*と機械角度Θ＾との偏差をフィードバックすることで制御を行う。ここで、モータ制御システム１は、検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０が互いに交差する交差点を逐次検出し、検出した交差点から、当該交差点に隣り合う他の交差点までの検出信号Ｈｕ０、Ｈｖ０、またはＨｗ０の一部（分割された線分）を分割信号として検出する（図６Ａ参照）。
【００４８】
位相が１２０度ずつ異なる３個の検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０のうち、交差点から当該交差点に隣り合う他の交差点までを接続または連結する部分は、検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０の中で中間のレベルを持ついずれか一つの信号Ｈｕ０、Ｈｖ０、またはＨｗ０の一部である。図６Ａに示されるように、交差点から当該交差点に隣り合う他の交差点までを接続する部分は、基準値のレベルと交差する。言い換えると、交差点から当該交差点に隣り合う他の交差点までを接続する部分は、基準値よりも大きな部分と、基準値よりも小さな部分とを有している。後述するように、交差点から当該交差点に隣り合う他の交差点までを接続する部分を、１個の「分割信号」として処理することもできるし、２個の「分割信号」として処理することできる。後者の場合、交差点から当該交差点に隣り合う他の交差点までを接続する部分は、基準値に交差するゼロクロス点によって二分される。交差点から当該交差点に隣り合う他の交差点までを接続する部分は、３個以上の「分割信号」に分けられても良い。
【００４９】
モータ制御システム１は、検出した分割信号を、可動子の移動方向に応じて、逐次接続させて、接続させた複数の分割信号に基づいて可動子の位置を推定して位置推定値信号を生成する（図６Ｂ、図７参照）。なお、位置推定値は電流制御系、速度制御系、位置制御系、これらを組み合わせた制御系にフィードバック値として使用できる。位置演算部３２および制御部５０は「位置制御装置」として機能する。
【００５０】
次に、モータＭの概略構成について説明する。
【００５１】
図２は、本実施形態に係るモータＭの概略構成図である。
【００５２】
図２に示す例において、モータＭは、永久磁石モータである。磁極ｐ１〜ｐ１２は、永久磁石モータの磁極（ポール）である。極数は、モータＭにおける磁極の数を表し、図２に示す例では１２である。また、極対数は、Ｎ極とＳ極の組数であり、図２に示す例では６である。また、スロットｓｌ１〜ｓｌ９は、コイルが巻かれている電機子であり、スロット（ティース）の数であるスロット数は９である。例えば、磁極ｐ１〜ｐ１２は、ロータＲ（図１参照）の一部である。図２におけるモータＭは、アウターロータ型のモータを示している。
【００５３】
次に、センサ１１〜センサ１３の動作について説明する。
【００５４】
センサ１１〜センサ１３それぞれは、隣接するＮ極とＳ極の１組による磁界を検出して、１周期分の信号を出力する。これが電気角１周期分に相当する。センサ１１〜センサ１３それぞれは、検出した電気角１周期分の電気信号を、差動センサ信号として、増幅部２０に出力する。この１周期分の差動センサ信号が、電気角１周期分に相当する。
【００５５】
ここで、センサ１１〜センサ１３それぞれは、電気角１２０度ずつ位相がずれた電気信号を検出し、対応する差動増幅器２１〜差動増幅器２３に出力する。すなわち、検出部１０に含まれるセンサが３個であり、３つの検出信号の位相が、１２０度ずつずれている。ある具体例において、センサ１１〜センサ１３は、機械角４０度（電気角２４０度）ずつ位相がずれた電気信号を検出する。
【００５６】
本実施形態では、センサ１１が検出した電気信号をＵ相とする。センサ１２が検出した電気信号をＶ相とする。センサ１３が検出した電気信号をＷ相とする。センサ１１が出力する差動センサ信号は、差動センサ信号Ｕ０＋とＵ０−とであり、互いに反転関係にある。センサ１２が出力する差動センサ信号は、差動センサ信号Ｖ０＋とＶ０−とであり、互いに反転関係にある。センサ１３が出力する差動センサ信号は、検出信号Ｗ０＋とＷ０−とであり、互いに反転関係にある。
【００５７】
次に、増幅部２０が出力する検出信号について、図１を参照して説明する。
【００５８】
差動増幅器２１は、センサ１１から入力されたＵ相の検出信号Ｕ０−とＵ０＋との電圧差を増幅し、増幅した検出信号Ｈｕ０を位置推定部３０に出力する。
【００５９】
差動増幅器２２は、センサ１２から入力されたＶ相の検出信号Ｖ０−とＶ０＋との電圧差を増幅し、増幅した検出信号Ｈｖ０を位置推定部３０に出力する。
【００６０】
差動増幅器２３は、センサ１３から入力されたＷ相の検出信号Ｗ０−とＷ０＋との電圧差を増幅し、増幅した検出信号Ｈｗ０を位置推定部３０に出力する。
【００６１】
次に、増幅部２０が出力する検出信号Ｈｕ０、Ｈｖ０、Ｈｗ０の一例ついて説明する。図３は、本実施形態に係る増幅部２０が出力する検出信号Ｈｕ０、Ｈｖ０、Ｈｗ０の一例を説明する図である。図３において、横軸はロータ角［ｄｅｇ］を表す。縦軸は、信号の大きさを表す。
【００６２】
図３に示す例において、ロータ角θ１０１〜ロータ角θ１１３の区間Ｅ１は、電気角１周期分を表している。ロータ角θ１１３〜ロータ角θ１１４の区間Ｅ２、ロータ角θ１１４〜ロータ角θ１１５の区間Ｅ３、ロータ角θ１１５〜ロータ角θ１１６の区間Ｅ４、ロータ角θ１１６〜ロータ角θ１１７の区間Ｅ５、およびロータ角θ１１７〜ロータ角θ１１８の区間Ｅ６それぞれは、電気角１周期分を表している。そして、区間Ｅ１〜区間Ｅ６の区間Ｋ１は、機械角１周期分を表している。すなわち、電気角１周期分の区間は、機械角１周期分の区間を極対数で除算した区間である。
【００６３】
また、図３に示す例では、検出信号Ｈｕ０の極大値はＡ３［Ｖ］である。検出信号Ｈｗ０の極大値は、Ａ３の電圧値より小さいＰｅａｋＨｗ［Ｖ］である。検出信号Ｈｖ０の極大値は、ＰｅａｋＨｗの電圧値より小さいＰｅａｋＨｖ［Ｖ］である。このように、センサ１１〜１３の取り付け誤差や、センサごとの感度の違いによって、検出信号Ｈｕ０、Ｈｖ０、Ｈｗ０それぞれは、振幅にばらつきがある。また、信号Ｈｕ０、Ｈｖ０、Ｈｗ０それぞれは、各信号の中心電圧値が異なっている。すなわち、信号Ｈｕ０、Ｈｖ０、Ｈｗ０それぞれは、オフセット成分を有している。
【００６４】
次に、位置推定部３０の詳細な構成について、図１を参照して説明する。
【００６５】
位置推定部３０は、ＡＤ変換部３１、位置演算部３２、および記憶部３３を備える。ＡＤ変換部３１は、増幅部２０から入力されたアナログ信号の検出信号を、デジタル信号の検出信号に変換し、変換したデジタル信号の検出信号を位置演算部３２に出力する。より具体的には、ＡＤ変換回路３１１、ＡＤ変換回路３１２、およびＡＤ変換回路３１３を備える。ＡＤ変換回路３１１は、アナログ信号の検出信号Ｈｕ０を、デジタル信号の検出信号Ｈｕ０’に変換して位置演算部３２に出力する。ＡＤ変換回路３１２は、アナログ信号の検出信号Ｈｖ０を、デジタル信号の検出信号Ｈｖ０’に変換して位置演算部３２に出力する。ＡＤ変換回路３１３は、アナログ信号の検出信号Ｈｗ０を、デジタル信号の検出信号Ｈｗ０’に変換して位置演算部３２に出力する。記憶部３３は、オンライン処理で用いられる情報を記憶する。オンライン処理とは、ロータＲが回転しているときにリアルタイムで行われる処理である。なお、記憶部３３に記憶される情報については、後述する。
【００６６】
上述のように検出信号を位置演算部３２での処理に適した信号に変換することを「前処理」と呼ぶことができる。ＡＤ変換部３１は、前処理を行う回路の一例である。位置演算部３２の中に、他の前処理を行う回路が設けられていても良い。
【００６７】
ＡＤ変換部３１によって変換後のデジタル信号の検出信号Ｈｕ０’・Ｈｖ０’・Ｈｗ０’において、横軸はロータ角［ｄｅｇ］を表す。縦軸は、デジタル値の大きさを表す。位置演算部３２は、交差位置検出部３２１、分割検出部３２２、および線分接続部３２３を備える。交差位置検出部３２１は、検出信号どうしの交差点と、検出信号と基準値とのゼロクロス点を検出する。すなわち、交差位置検出部３２１は、交差点から交差点に隣り合う他の交差点までの間において、交差点から検出信号の電位が基準電圧と交差するゼロクロス点を逐次検出する。基準値とは、デジタル値が０を示す値である。交差位置検出部３２１は、検出した交差点の座標を示す情報とゼロクロス点の座標を示す情報とを分割検出部３２２に出力する。ここで、交差点およびゼロクロス点の座標を示す情報とは、ロータ角とデジタル値の大きさとによって表される情報である。分割検出部３２２は、交差位置検出部３２１から入力された交差点の座標を示す情報とゼロクロス点の座標を示す情報とを用いて交差点とゼロクロス点との間の検出信号を分割信号として検出する。分割検出部３２２は、検出した分割信号を示す情報を線分接続部３２３に出力する。線分接続部３２３は、分割検出部３２２から入力された分割信号を示す情報を用いて、分割信号を逐次接続する。ここで、分割信号を示す情報とは、検出信号の一部である分割信号の開始位置から終了位置まで、ロータ角とデジタル値の大きさとによって表される情報である。
【００６８】
上述のように、本実施形態におけるモータ制御システム１の動作は、交差位置検出手順と、分割検出手順と、線分接続手順と、を有する。交差位置検出手順では、交差位置検出部３２１が、信号検出手順によって出力されたそれぞれの検出信号が互いに交差する交差点を逐次検出する。分割検出手順では、分割検出部３２２が、検出信号のうちの交差点から当該交差点に隣り合う他の交差点まで接続する部分を、１個または複数個の分割信号として検出する。線分接続手順では、線分接続部３２３が、分割信号を、逐次接続させて、接続させた複数の分割信号に基づいて可動子の位置を推定して位置推定値信号を生成する。
【００６９】
次に、位置推定部３０が行う処理の流れの概要を説明した後、位置推定部３０が行う処理の流れの詳細について説明する。まず、図４を参照して、位置推定部３０が行う処理の流れの概要を説明する。図４は、本実施形態に係る位置推定部３０が行う処理の手順のフローチャートである。なお、位置推定部３０は、以下の処理をオンライン処理で行う。
（ステップＳ１０１）交差位置検出部３２１は、ＡＤ変換部３１から入力された検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’を取得する。
（ステップＳ１０２）交差位置検出部３２１は、ステップＳ１０１で取得した検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’それぞれが示す値を用いて、交差点とゼロクロス点とを、逐次検出する。次に、交差位置検出部３２１は、検出した交差点およびゼロクロス点の座標を示す情報と、入力された検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’とを、順次、分割検出部３２２に出力する。
（ステップＳ１０３）分割検出部３２２は、交差点から当該交差点と隣り合うゼロクロス点までの検出信号の一部、すなわち検出信号のうちの交差点から当該交差点と隣り合うゼロクロス点までの検出信号の部分、を第１の分割信号として検出する。または、分割検出部３２２は、ゼロクロス点から当該ゼロクロス点と隣り合う交差点までの検出信号の一部、すなわち検出信号のうちのゼロクロス点から当該ゼロクロス点と隣り合う交差点までの部分、を第２の分割信号として検出する。
（ステップＳ１０４）線分接続部３２３は、ロータＲがＣＷ回転の場合、分割検出部３２２から入力された分割信号を、機械角１周期分、逐次、順方向に接続する。
（ステップＳ１０５）位置推定部３０は、線分接続部３２３によって接続された分割信号に基づいて機械位置の推定を行うことで機械角度Θ＾を推定する。
【００７０】
位置推定部３０は、ステップＳ１０１〜ステップＳ１０５の処理を、制御周期毎に繰り返す。制御周期とは、例えば、電流（トルク）、速度または位置制御の各制御周期のうち、いずれか１つの周期である。なお、以下の説明では、図４におけるステップＳ１０２〜Ｓ１０５の処理を１つにまとめて、ステップＳ１１０の処理という場合がある。
【００７１】
次に、位置推定部３０が行う処理の流れの詳細について説明する。まず、図４を参照して、交差位置検出部３２１が、ステップＳ１０１で行う処理について説明する。
【００７２】
交差位置検出部３２１は、ロータＲが回転しているとき、ＡＤ変換回路３１１〜ＡＤ変換回路３１３それぞれから入力された検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’を取得する。ＡＤ変換部３１が出力する検出信号Ｈｕ０’、検出信号Ｈｖ０’、および検出信号Ｈｗ０’について図５を参照して説明する。
【００７３】
図５は、本実施形態に係るＡＤ変換部３１が出力する検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の一例を説明する図である。図５において、横軸はロータ角［ｄｅｇ］を表す。縦軸は、デジタル値を表す。図５に示す各波形Ｈｕ０’、Ｈｖ０’、Ｈｗ０’は、ＡＤ変換回路３１１〜ＡＤ変換回路３１３によってデジタル信号に変換された検出信号を表した波形図である。例えば、ＡＤ変換部３１のビット数が１２ビットの場合、デジタル信号値の範囲は、＋２０４７〜−２０４８である。また、図５において、ロータ角θ１０１〜ロータ角θ１１３の区間Ｅ１は、電気角１周期分である。
【００７４】
図４に戻り、交差位置検出部３２１が、ステップＳ１０２で行う交差点とゼロクロス点との検出処理について詳細に説明する。
【００７５】
交差位置検出部３２１は、ＡＤ変換部３１が出力する検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’を取得する。交差位置検出部３２１は、取得した検出信号どうしの交差点を、サンプリングした２点間の座標から算出することで、逐次検出する。また、交差位置検出部３２１は、取得した検出信号と基準値とのゼロクロス点を逐次検出する。この交差点及びゼロクロス点は、横軸がロータ角、縦軸がデジタル値よって、その座標を示すことができる。交差位置検出部３２１は、交差点の座標を検出して、検出した交差点の座標を示す情報を、分割検出部３２２に出力する。また、交差位置検出部３２１は、ゼロクロス点の座標を検出して、検出したゼロクロス点の座標を示す情報を、分割検出部３２２に出力する。また、交差位置検出部３２１は、取得した検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’を、分割検出部３２２に出力する。
【００７６】
次に、分割検出部３２２が、図４のステップＳ１０３で行う分割信号の抽出処理について詳細に説明する。
【００７７】
分割検出部３２２は、交差位置検出部３２１から入力された交差点の座標を示す情報と、ゼロクロス点の座標を示す情報と、検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’とを、順次取得する。分割検出部３２２は、取得した検出信号のうち、交差点から当該交差点と隣り合うゼロクロス点までの検出信号を第１の分割信号として検出する。分割検出部３２２は、取得した検出信号のうち、ゼロクロス点から当該ゼロクロス点と隣り合う交差点までの検出信号を第２の分割信号として検出する。分割検出部３２２は、検出した分割信号を順次、線分接続部３２３に出力する。ここで、分割検出部３２２は、第１の分割信号を示す情報として、交差点から当該交差点と隣り合うゼロクロス点までのデジタル値の偏差およびロータ角の偏差の情報を検出している。
【００７８】
次に、交差点、ゼロクロス点、分割信号の具体例を順に説明する。
【００７９】
まず、交差位置検出部３２１が検出する交差点とゼロクロス点との具体例について、図６Ａを参照して説明する。
【００８０】
図６Ａは、本実施形態に係る３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係、交差点、ゼロクロス点、分割信号について説明する図である。図６Ａにおいて、横軸はロータ角［ｄｅｇ］を表す。縦軸は、デジタル値を表す。また、図６Ａは、図５のロータ角θ１０１〜ロータ角θ１１３の区間Ｅ１を拡大した図である。
【００８１】
図６Ａにおいて、点ｃｐ１〜点ｃｐ７それぞれは、交差点を表している。ここで交差点とは、２つの検出信号が交差する点である。例えば、ロータ角θ１０１における交差点ｃｐ１は、検出信号Ｈｕ０’と検出信号Ｈｖ０’とが交差する点である。
【００８２】
また、点ｚｃ１〜点ｚｃ６それぞれは、ゼロクロス点を表している。ここで、ゼロクロス点とは、検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’のいずれかと、デジタル値の基準値とが交差する点である。例えば、ロータ角θ１０２におけるゼロクロス点ｚｃ１は、検出信号Ｈｕ０’と基準値とが交差する点である。
【００８３】
次に、分割検出部３２２が検出する分割信号の具体例について、図６Ａを参照して説明する。以下において、セグメントとは、分割信号ひとつひとつのことである。セグメントの区間とは、分割信号ごとの始点から終点までに相当する。セグメントは、電気角１周期分において、１２区間になる。モータＭの極対数が６であるとき、電気角６周期分は、機械角１周期分に相当する。したがって、セグメントは、機械角１周期分では、７２区間となる。セクションとは、電気角１周期分における１〜１２の分割信号の番号である。分割信号とは、図６Ａにおいて、交差点ｃｐ（ｎ）から当該交差点ｃｐ（ｎ）と隣り合うゼロクロス点ｚｃ（ｍ）までの検出信号である。または、ゼロクロス点ｚｃ（ｍ）から当該ゼロクロス点ｚｃ（ｍ）と隣り合う交差点ｃｐ（ｎ＋１）までの検出信号である。なお、ｎは１〜７の整数である。また、ｍは１〜６の整数である。具体的には、例えば、交差点ｃｐ１からゼロクロス点ｚｃ１までの検出信号Ｈｕ０’の一部が、分割信号ｓｇ１０１である。また、ゼロクロス点ｚｃ１から交差点ｃｐ２までの検出信号Ｈｕ０’の一部が、分割信号ｓｇ１０２である。図６Ａにおいて、θ１０１〜θ１０２の区間、すなわち分割信号ｓｇ１０１の区間が、セグメントの番号１の区間に相当する。また、分割信号ｓｇ１０２〜ｓｇ１１２それぞれの区間が、セグメントの番号２〜１２の区間に相当する。
【００８４】
なお、図６Ａに示す例において検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’が正弦波であるため、分割信号ｓｇ１０１〜ｓｇ１１２は、正弦波のうち、他の部分より直線に近い範囲の信号である。
【００８５】
ここで、３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係について、図６Ａを参照して説明する。
【００８６】
例えば、セグメント１とセグメント２の区間であるロータ角θ１０１〜θ１０３の区間において、検出信号Ｈｗ０’のデジタル値は、３つの検出信号の中で、最も大きい。検出信号Ｈｗ０’の次にデジタル値が大きいのは、検出信号Ｈｕ０’である。最もデジタル値が小さいのは、検出信号Ｈｖ０’である。また、検出信号Ｈｕ０’のデジタル値は、セグメント１の区間であるロータ角θ１０１〜θ１０２の区間において、基準値より小さい。検出信号Ｈｕ０’のデジタル値は、セグメント２の区間であるロータ角θ１０２〜θ１０３の区間において、基準値より大きい。
【００８７】
セグメント３〜セグメント１２についても、セグメント毎に３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係の組み合わせが記憶部３３に記憶されている。
【００８８】
このように、電気角１周期分について、セグメント毎に３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係の組み合わせおよび基準値との大小関係が記憶部３３に記憶されている。
【００８９】
次に、線分接続部３２３が、図４のステップＳ１０４で行う分割信号の接続処理について詳細に説明する。
【００９０】
線分接続部３２３は、分割検出部３２２の分割信号を、逐次接続させる。ここで、線分接続部３２３は、交差点又はゼロクロス点と検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係および基準値との大小関係に応じて、分割信号を、デジタル値の正負について一定方向に接続する。
【００９１】
具体的には、線分接続部３２３は、セグメント毎に、検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’のデジタル値の大小関係において、順位が真ん中（図６Ａの例では、大きい方（小さい方）から２番目）となる検出信号（中間信号とも称する）を抽出する。線分接続部３２３は、抽出した中間信号のデジタル値それぞれと、直前の交差点又はゼロクロス点における検出信号のデジタル値（クロス点信号値とも称する）の大小関係を比較する。ここで、直前の交差点又はゼロクロス点とは、中間信号に対して、ロータ角方向で直前となるものであり、例えば、図６Ａの例では、分割信号ｓｇ１０１に対して交差点ｃｐ１、分割信号ｓｇ１０２に対してゼロクロス点ｚｃ１である。
【００９２】
分割信号ｓｇ１０２を考えると、中間信号ｓｇ１０２のデジタル値が直前のクロス点信号値ｚｃ１以上と判断した場合、線分接続部３２３は、中間信号ｓｇ１０２のデジタル値から直前のクロス点信号値ｚｃ１を差し引いた値を直前のクロス点信号値ｚｃ１に加算する。一方、中間信号ｓｇ１０２のデジタル値が直前のクロス点信号値ｚｃ１より小さいと判断した場合、線分接続部３２３は、直前のクロス点信号値ｚｃ１から中間信号ｓｇ１０２のデジタル値を差し引いた値を加算する。線分接続部３２３は、ロータ角の小さい方から、順に、この加算を繰りかえす。これにより、線分接続部３２３は、デジタル値の正方向へ、分割信号を接続できる（図６Ｂ参照）。
【００９３】
なお、線分接続部３２３は、中間信号のデジタル値と直前のクロス点信号値の差分、つまり、絶対値を加算してもよい。
【００９４】
なお、モータＭが６極対であるため、分割信号ｓｇ１１２’の終点は、機械角の６０［ｄｅｇＭ］に相当する。分割信号ｓｇ１２４’の終点は、機械角の１２０［ｄｅｇＭ］に相当する。分割信号ｓｇ１３６’の終点は、機械角の１８０［ｄｅｇＭ］に相当する。分割信号ｓｇ１４８’の終点は、機械角の２４０［ｄｅｇＭ］に相当する。分割信号ｓｇ１６０’の終点は、機械角の３００［ｄｅｇＭ］に相当する。分割信号ｓｇ１７２’の終点は、機械角の３６０［ｄｅｇＭ］に相当する。
【００９５】
線分接続部３２３による、電気角１周期分の分割信号の接続の具体例について説明する。
【００９６】
図６Ｂは、本実施形態に係る電気角１周期分の分割信号の接続について説明する図である。また、図６Ｂは、図６Ａの区間Ｅ１の分割信号ｓｇ１０１’〜ｓｇ１１２’を接続した図である。図６Ｂにおいて、横軸はロータ角［ｄｅｇＥ］を表す。縦軸は、デジタル値を表す。また、図６Ｂに示す例は、ロータＲがＣＷ回転している場合の例である。また、図６Ｂにおいて、分割信号ｓｇ１０１’〜ｓｇ１１２’は、図６Ａの分割信号ｓｇ１０１〜ｓｇ１１２が線分接続部３２３によって接続された信号である。また、点ｐ１０１〜ｐ１１３は、図６Ａの交差点ｃｐ１〜ｃｐ７およびゼロクロス点ｚｃ１〜ｚｃ６が置き換えられた点である。また、曲線ｇ１３２は、分割信号ｓｇ１０１’〜ｓｇ１１２’を接続した曲線である。
【００９７】
以下において、順方向とは、ロータ角の増加に従って、デジタル値が増加する方向である。線分接続部３２３は、例えば、交差点ｃｐ１を、点ｐ１０１に置き換える。線分接続部３２３は、分割信号ｓｇ１０１’を順方向に接続する。具体的には、線分接続部３２３は、図６Ａの分割信号ｓｇ１０１を、点ｐ１０１を開始点とし、点ｐ１０２を終了点とする分割信号ｓｇ１０１’に置き換える。また、線分接続部３２３は、ゼロクロス点ｚｃ１を点ｐ１０２に置き換える。
【００９８】
また、線分接続部３２３は、分割信号ｓｇ１０２’を順方向に接続する。具体的には、図６Ａの分割信号ｓｇ１０１は、点ｐ１０２を開始点とし、点ｐ１０３を終了点とする分割信号ｓｇ１０２’に置き換える。また、線分接続部３２３は、交差点ｃｐ２を点ｐ１０３に置き換える。
【００９９】
図６Ｂの曲線ｇ１３２に示すように、線分接続部３２３は、図６Ａに示した分割信号ｓｇ１０１’〜ｓｇ１１２’を、逐次、順方向に接続する。この結果、ロータ角θ１０１における交差点ｃｐ１は、デジタル値０に置き換えられる。また、線分接続部３２３は、ロータ角θ１１３における交差点ｃｐ７をデジタル値１２００に置き換える。なお、図６Ｂにおいて、デジタル値の１２０００は、電気角１周期分の３６０［ｄｅｇＥ］に相当する。
【０１００】
線分接続部３２３による動作の分割信号の機械角１周期分の接続についての具体例を、図７を参照して説明する。
【０１０１】
第１の周期Ｅ１において、線分接続部３２３は、図６Ａの分割信号ｓｇ１０１〜分割信号ｓｇ１１２を、電気角１周期分、逐次順方向に接続する。この結果、図６Ｂの分割信号ｓｇ１０１’〜分割信号ｓｇ１１２’に示すように、図６Ａの分割信号ｓｇ１０１〜〜分割信号ｓｇ１１２が接続される。
【０１０２】
次に、第２の周期Ｅ２において、線分接続部３２３は、分割信号ｓｇ１１２’の終点に、第２の周期Ｅ２の分割信号ｓｇ１１３’の始点を接続する。続けて、線分接続部３２３は、電気角１周期分の分割信号ｓｇ１１３〜分割信号ｓｇ１２４を順方向に接続する。この結果、図７の分割信号ｓｇ１１３’〜分割信号ｓｇ１２４’に示すように、分割信号ｓｇ１１３〜分割信号ｓｇ１２４が接続される。
【０１０３】
以下、線分接続部３２３は、第２の周期Ｅ２の分割信号ｓｇ１２４’の終点に、第３の周期Ｅ３の分割信号ｓｇ１２５’の始点を接続する。次に、線分接続部３２３は、第３の周期Ｅ３の分割信号ｓｇ１３６’の終点に、第４の周期Ｅ４の分割信号ｓｇ１３７’の始点を接続する。次に、線分接続部３２３は、第４の周期Ｅ４の分割信号ｓｇ１４８’の終点に、第５の周期Ｅ５の分割信号ｓｇ１４９’の始点を接続する。次に、線分接続部３２３は、第５の周期Ｅ５の分割信号ｓｇ１６０’の終点に、第６の周期Ｅ６の分割信号ｓｇ１６１’の始点を接続する。
【０１０４】
図７は、本実施形態に係る機械角１周期分の分割信号の接続結果の一例について説明する図である。図７に示すように、電気角１周期分それぞれは、１２個の分割信号を含む。第１の周期Ｅ１は、分割信号ｓｇ１０１’〜分割信号ｓｇ１１２’を含む。第２の周期Ｅ２は、分割信号ｓｇ１１３’〜分割信号ｓｇ１２４’を含む。第３の周期Ｅ３は、分割信号ｓｇ１２５’〜分割信号ｓｇ１３６’を含む。第４の周期Ｅ４は、分割信号ｓｇ１３７’〜分割信号ｓｇ１４８’を含む。第５の周期Ｅ５は、分割信号ｓｇ１４９’〜分割信号ｓｇ１６０’を含む。第６の周期Ｅ６は、分割信号ｓｇ１６１’〜分割信号ｓｇ１７２’を含む。
【０１０５】
このため、機械角１周期分の周期Ｋ１では、７２個の分割信号ｓｇ１０１’〜分割信号ｓｇ１７２’を含む。
【０１０６】
次に、位置推定部３０が、図４のステップＳ１０５で行う機械角度の生成処理について説明する。ここで、ｓｇ１０２’における任意の点の機械角度を考える。ｓｇ１０２’の機械角度位置は、図７におけるＥ１の区間に位置しており、Ｅ１の区間の拡大図が図６Ｂである。線分接続部３２３は、中間信号のデジタル値から直前のクロス点信号値ｚｃ１を差し引いた値を直前のクロス点信号値ｚｃ１に加算する。また、上述のように、線分接続部３２３は、クロス点信号値ｚｃ１を点ｐ１０２に置き換える。そして、線分接続部３２３は、点ｐ１０２に対して、中間信号のデジタル値から直前のクロス点信号値ｚｃ１を差し引いた値を加算する。位置推定部３０は、線分接続部３２３によって接続された分割信号の線分の長さに基づいて、ロータの機械角度位置を推定する。
【０１０７】
記憶部３３に記憶される情報の具体例について説明する。
【０１０８】
記憶部３３は、極対数とセクションとセグメントとの関係を記憶する。また、記憶部３３は、３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係をセクション毎に記憶している。３つの検出信号Ｈｕ０’、Ｈｖ０’、Ｈｗ０’の大小関係および基準値との大小関係は、セクションの番号を判定するために用いられる。
【０１０９】
本実施形態の位置推定方法では、ゼロクロス点を境に検出信号を２つのセグメントに分けている。これにより、機械角の１周分は、７２個の分割信号を有する。この結果、本実施形態の位置推定方法では、１つの分割信号の長さが短くなる。その結果、結合した分割信号は、より理想的な角度に比例した直線信号に近くなる。そして、本実施形態の位置推定方法では、直線に近い形状の分割信号に基づいて、ロータＲの角度情報である位置を得ることができる。このようにして接続された線分を用いて、位置推定部３０がロータＲの位置を推定するため、本実施形態では、精度の高い光学式エンコーダを必要とすることなく、高精度な位置検出を行うことができる。
【０１１０】
モータ制御システム１は、このように推定された機械角度Θ＾を用いて、位置制御を行うことができる。この結果、本実施形態の位置推定方法では、ロータＲの位置を検出する検出部は、環境に影響されやすいエンコーダを使用する必要がない。その結果、モータを小型化することができ、粉塵等の環境によって、位置制御の精度が左右されづらい。
【０１１１】
［変形例］
なお、本実施形態では、交差点とゼロクロス点とを検出し、交差点とゼロクロス点の間の検出信号を分割信号として検出する例を説明したが、これに限られない。
【０１１２】
例えば、分割検出部３２２は、交差点から当該交差点と隣り合う交差点までの検出信号を分割信号として抽出するようにしてもよい。そして、分割検出部３２２は、抽出した分割信号を、交差点から当該交差点と隣り合う交差点との間にあるゼロクロス点を境に、２つの分割信号に分割するようにしてもよい。
【０１１３】
なお、本実施形態において、位置演算部３２は、デジタル信号に変換された検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’に対して各処理を行う例を説明したが、これに限られない。例えば、位置演算部３２は、アナログ信号の検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０に対して各処理を行うようにしてもよい。
【０１１４】
また、本実施形態において、モータＭの駆動方式は、例えばベクトル制御手法、その他駆動手法であってもよい。他の駆動方法とは、例えば１２０度矩形波、正弦波を用いた駆動手法であってもよい。
【０１１５】
また、本実施形態では、１２極のモータＭの例を説明したが、これに限られない。モータＭの極数は、例えば、２極、４極、８極等であってもよい。例えば、８極モータの場合、機械角１周期分は、４つの電気角１周期分の分割信号を有する。このとき、検出部が、３相の検出信号を出力する場合、１つの電気角１周期分は、１２個の分割信号を有する。このため、機械角１周期分は、４８（＝１２×４）個の分割信号を含む。８極モータの場合、線分接続部３２３は、ロータＲがＣＷ回転の場合、機械角１周期分の４８個の分割信号について、順方向に逐次結合させるようにしてもよい。
【０１１６】
なお、ロータＲがＣＣＷ回転の場合、図４のステップＳ１０４において、線分接続部３２３は、機械角１周期分の分割信号を逆方向に接続するようにしてもよい。ここで、ＣＣＷとは、出力軸側から見て反時計方向の回転である。また、逆方向とは、ロータ角の増加に従ってデジタル値が減少する方向である。線分接続部３２３は、接続された機械角１周期分の分割信号を、ロータ角の増加に応じて、３６０［ｄｅｇＭ］から０［ｄｅｇＭ］に減少する方向に、逐次接続するようにしてもよい。この場合、位置推定部３０は、記憶部３３に記憶されている３つの検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’の大小関係が変化したとき、ロータＲがＣＷ回転であるかＣＣＷ回転であるかを判別する。
【０１１７】
これにより、本実施形態によれば、ロータＲがＣＷ回転していてもＣＣＷ回転していても、ロータＲの位置を精度良く推定することができる。
【０１１８】
回転方向と検出信号との関係を、図６Ａを参照して説明する。
【０１１９】
ロータ角θ１０５とθ１０７との間に現在位置がある場合、位置推定部３０は、例えば、現在の位置における縦軸のデジタル値と、１つ前の交差点であるロータ角θ１０５の縦軸のデジタル値を記憶部３３に記憶させる。
【０１２０】
ロータＲがＣＷ回転の場合、ロータＲの位置は、ロータ角θ１０７とθ１０９の間に移動する。位置推定部３０は、ロータ角θ１０５とθ１０７の間の大小関係から、ロータ角θ１０７とθ１０９の間の大小関係に変化したとき及び検出信号Ｈｖ０’から検出信号Ｈｕ０’への中間信号の切り替わり、及び切り替わり後の中間信号の基準値に対する正負を判別し、ロータＲがＣＷ回転であると判別する。続けて、位置推定部３０は、ロータ角θ１０７とθ１０９の間の分割信号ｓｇ１０７とｓｇ１０８とを、分割信号ｓｇ１０６に順方向に接続する。
【０１２１】
一方、ロータＲがＣＣＷ回転の場合、ロータＲの位置は、ロータ角θ１０３とθ１０５の間に移動する。位置推定部３０は、ロータ角θ１０５とθ１０７の間の大小関係から、ロータ角θ１０３とθ１０５の間の大小関係に変化したとき及び検出信号Ｈｖ０’から検出信号Ｈｗ０’への中間信号の切り替わり、及び切り替わり後の中間信号の基準値に対する正負を判別し、ロータＲがＣＣＷ回転であると判別する。続けて、位置推定部３０は、ロータ角θ１０３とθ１０５の間の分割信号ｓｇ１０３とｓｇ１０４とを、分割信号ｓｇ１０５に逆方向に接続する。
【０１２２】
なお、本実施形態では、検出部１０のセンサとして、ホール素子を例に説明したが、これに限られない。検出部１０に用いるセンサは、検出信号が正弦波、または正弦波に高調波を含む出力信号であってもよい。例えば、検出部１０のセンサは、磁気抵抗効果を用いたセンサであってもよい。
【０１２３】
なお、本実施形態では、交差点から当該交差点と隣り合うゼロクロス点まで、またはゼロクロス点から当該ゼロクロス点と隣り合う交差点までの検出信号の一部を分割信号として抽出する例を説明したが、これに限られない。分割検出部３２２は、交差点から当該交差点と隣り合うゼロクロス点まで、またはゼロクロス点から当該ゼロクロス点と隣り合う交差点までの線分を生成することで、分割信号を抽出するようにしてもよい。線分は、例えば直線であってもよく、正弦波の一部であってもよい。
【０１２４】
また、本実施形態において、図２にアウターロータの例を示したが、これに限られない。モータＭは、スロットがロータＲの一部となるブラシ付きモータであってもよい。
【０１２５】
さらに、モータＭは、リニアモータであってもよい。モータＭがリニアモータの場合、ロータＲは、例えば、磁石を有する可動子であってもよい。
【０１２６】
また、本実施形態では、検出部１０の位相が１２０度ずつずれている３つのセンサ１１〜センサ１３の例を説明したが、これに限られない。検出部１０が備えるセンサの数は、３個に限られない。この場合、各センサの出力は、センサの総数で除算した位相ずつずれていればよい。
【０１２７】
また、本実施形態では、交差位置検出部３２１が交差点とゼロクロス点とを検出する例を説明したが、これに限られない。交差位置検出部３２１は、交差点のみ検出するようにしてもよい。この場合、分割検出部３２２は、交差点から当該交差点と隣り合う交差点までの検出信号の一部を分割信号として、逐次検出するようにしてもよい。この場合において、電気角１周期分の分割信号の個数は６個になる。また、モータＭの極対数が６の場合、機械角１周期分の分割信号の個数は３６個になる。
【０１２８】
［第２の実施形態］
本実施形態では、第１の実施形態の位置推定部３０が、補正部をさらに備えている例を説明する。
【０１２９】
図８は、本実施形態に係るモータ制御システム１Ａの構成を示す概略図である。
【０１３０】
図８に示すようにモータ制御システム１Ａは、位置推定部３０に代えて位置推定部３０Ａを備える。
【０１３１】
位置推定部３０Ａは、位置演算部３２に代えて位置演算部３２Ａを備え、記憶部３３に代えて記憶部３３Ａを備える。
【０１３２】
位置演算部３２Ａは、さらに補正部３２４を備える。
【０１３３】
補正部３２４は、第１補正部３２４１、第２補正部３２４２、および第３補正部３２４３を備える。ＡＤ変換部３１に加え、補正部３２４も、前処理回路の一部として機能する。
【０１３４】
第１補正部３２４１は、ロータＲが回転しているとき、各相の検出信号が有する同相ノイズを補正し、補正した検出信号を第２補正部３２４２に出力する。なお、同相ノイズとは、各相の検出信号が有するノイズ成分である。
【０１３５】
図３を用いて説明したように、検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０は、オフセット成分を有している。また、図３を用いて説明したように、検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０のピーク値には、ばらつきがある。なお、ピーク値とは、検出信号の極大値と極小値とである。位置演算部３２Ａは、デジタル信号の検出信号に対して各処理を行っている。第２補正部３２４２は、位置演算部３２Ａのダイナミックレンジを有効に使用するために行われる。ロータＲが回転しているとき、検出信号の振幅のばらつきとオフセット成分を補正し、補正した検出信号を第３補正部３２４３に出力する。
【０１３６】
第３補正部３２４３は、分割信号の略Ｓ字の形状を直線に補正するために行われる。分割信号は、検出信号の一部であるため、略Ｓ字の形状をしている。このため、第３補正部３２４３の補正を行うことで、補正した検出信号を交差位置検出部３２１に出力する。
【０１３７】
記憶部３３Ａは、補正部３２４が補正に使用する補正式、補正に用いる補正値および係数を、さらに記憶する。なお、補正式と係数については、後述する。
【０１３８】
次に、位置演算部３２Ａが行う補正処理の手順を説明する。
【０１３９】
本実施形態におけるモータ制御システム１の動作は、第１補正手順と、第２補正手順と、第３補正手順とを含む。
【０１４０】
図９は、本実施形態に係る位置演算部３２Ａが行う処理の手順のフローチャートである。また、図９に示す例において、補正部３２４が、第１補正〜第３補正の全てを行う例を説明する。また、図７で説明した処理と同じ処理については、同じ符号を用いて説明を省略する。なお、位置推定部３０Ａは、以下の処理を行う。
（ステップＳ２０１）第１補正部３２４１は、第１補正を行う。なお、第１補正については、後述する。
（ステップＳ２０２）第２補正部３２４２は、第１補正後、第２補正を行う。なお、第２補正については、後述する。
（ステップＳ２０３）第３補正部３２４３は、第２補正後、第３補正を行う。なお、第３補正については、後述する。
【０１４１】
ステップＳ２０３の処理後、補正部３２４は、ステップＳ１１０の処理を行う。
【０１４２】
以上で、位置演算部３２Ａが行う処理を終了する。
【０１４３】
＜第１補正の説明＞
次に、第１補正部３２４１が図９のステップＳ２０１で行う第１補正の処理の手順について説明する。
【０１４４】
図１０は、本実施形態に係る第１補正の処理の手順のフローチャートである。
（ステップＳ２０１１）第１補正部３２４１は、Ｕ相、Ｖ相、およびＷ相の検出信号のうち１つを逐次選択する。
（ステップＳ２０１２）第１補正部３２４１は、選択した検出信号に対応する補正式を用いて第１補正を行う。補正式は、後述する式（１）〜式（３）である。例えば、ステップＳ２０１１でＵ相の検出信号を選択した場合、第１補正部３２４１は、式（１）を用いて第１補正を行う。
（ステップＳ２０１３）第１補正部３２４１は、全て相の検出信号に対して、ステップＳ２０１２の処理が終了したか否かを判別する。第１補正部３２４１は、全ての相の検出信号に対して、ステップＳ２０１２の処理が終了したと判別した場合（ステップＳ２０１３；ＹＥＳ）、処理を終了する。第１補正部３２４１は、全ての相の検出信号に対して、ステップＳ２０１２の処理が終了していないと判別した場合（ステップＳ２０１３；ＮＯ）、ステップＳ２０１４の処理に進む。
（ステップＳ２０１４）第１補正部３２４１は、まだ選択されていない相の検出信号を選択し、ステップＳ２０１２の処理に戻す。
【０１４５】
次に、第１補正部３２４１が行う第１補正について詳細に説明する。
【０１４６】
第１補正部３２４１は、３つの検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’に対して、次式（１）〜次式（３）を用いて第１補正を行う。
Ｈｉｕ０’＝Ｈｕ０’−（Ｈｖ０’＋Ｈｗ０’）／２  …（１）
Ｈｉｖ０’＝Ｈｖ０’−（Ｈｕ０’＋Ｈｗ０’）／２  …（２）
Ｈｉｗ０’＝Ｈｗ０’−（Ｈｕ０’＋Ｈｖ０’）／２  …（３）
【０１４７】
式（１）において、Ｈｉｕ０’は、検出信号Ｈｕ０’に対して第１補正を行った補正値である。式（２）において、Ｈｉｖ０’は、検出信号Ｈｖ０’に対して第１補正を行った補正値である。式（３）において、Ｈｉｗ０’は、検出信号Ｈｗ０’に対して第１補正を行った補正値である。上述のように、第１補正手順では、補正部３２４が、検出信号のうち１つを順次選択し、選択した検出信号から、選択されていない他の検出信号の平均値を減算することにより、選択した検出信号を補正した検出信号を検出信号それぞれについて生成する。
【０１４８】
次に、第１補正による効果を説明する。
【０１４９】
図１１は、本実施形態に係る第１補正を行った結果の一例の波形図である。図１１に示す波形図は、図３に示した波形をデジタル信号に変換した後、式（１）〜式（３）を用いて、第１補正部３２４１によって補正された後の波形である。図１１において、横軸はロータ角［ｄｅｇ］を表す。縦軸はデジタル値を表す。また、ＡＤ変換部３１のビット数が１２ビットの場合、Ｂ２は、２０４７である。また、−Ｂ２は、−２０４８である。図１１に示したように、第１補正部３２４１は、第１補正によって、検出信号のデジタル値方向の変動を低減することができる。これにより、第１補正部３２４１は、第１補正によって、同相ノイズを低減することができる。
【０１５０】
ここで、同相ノイズを低減することができる理由について説明する。
【０１５１】
同相ノイズ信号をＨｎ０’とすると、同相ノイズ信号Ｈｎ０’は、３つの検出信号にそれぞれ生じている。同相ノイズ信号Ｈｎ０’を考慮した式（１）の補正後の検出値Ｈｉｕ０’は、次式（４）で表される。
Ｈｉｕ０’＝（Ｈｕ０’＋Ｈｎ０’）−｛（Ｈｖ０’＋Ｈｎ０’）＋（Ｈｗ０’＋Ｈｎ０’）｝／２
＝（Ｈｕ０’＋Ｈｎ０’）−｛Ｈｎ０’＋（Ｈｖ０’＋Ｈｗ０’）／２｝
＝Ｈｕ０’−（Ｈｖ０’＋Ｈｗ０’）／２  …（４）
【０１５２】
式（４）に示すように、各相の検出信号が有する同相ノイズＨｎ０’は、式（１）の補正によって、打ち消される。これにより、第１補正では、同相ノイズを低減することができる。
【０１５３】
同様に、式（２）によって、検出信号Ｈｖ０’の同相ノイズを低減することができる。また、式（３）によって、検出信号Ｈｗ０’の同相ノイズを低減することができる。
【０１５４】
なお、モータＭが、例えば４相の場合、第１補正部３２４１は、４つの相の検出信号から１つを選択する。ここで、４相の検出信号は、Ｕ相、Ｖ相、Ｗ相、およびＺ相である。次に、第１補正部３２４１は、選択した検出信号に対応する補正式を用いて第１補正を行う。すなわち、第１補正部３２４１は、４相のモータＭの場合、相毎の４つの補正式を用いて、第１補正を行う。例えば、Ｕ相の検出信号に対する補正式は、次式（５）である。
Ｈｉｕ０’＝Ｈｕ０’−（Ｈｖ０’＋Ｈｗ０’＋Ｈｚ０’）／３  …（５）
【０１５５】
第１補正部３２４１は、検出部から出力される検出信号が４相のモータであっても、相毎の４つの補正式を用いて、第１補正を行うことによって、同相ノイズを低減することができる。すなわち、本実施形態によれば、相の数に応じた補正式を用いて第１補正を行うことで、同相ノイズを低減することができる。
【０１５６】
＜第２補正の説明＞
次に、第２補正部３２４２が図９のステップＳ２０２で行う第２補正の処理の手順について説明する。
【０１５７】
第２補正部３２４２は、電気角１周期において、Ｕ相、Ｖ相、およびＷ相の検出信号のうち１つを逐次選択する。次に、第２補正部３２４２は、選択した相の検出信号に対して、記憶部３３Ａに記憶されている補正値と、選択した相の検出信号に対応する補正式を用いて第２補正を行う。なお、補正式は、後述する式（６）〜式（１１）である。例えば、Ｕ相の検出信号を選択した場合、第２補正部３２４２は、式（６）および式（７）を用いて第２補正を行う。
【０１５８】
次に、各検出信号の極大値と、極小値について、図１１を参照して説明する。
【０１５９】
以下において、点Ｈｉｕ＿ｍａｘはＵ相の極大値の例である。点Ｈｉｖ＿ｍａｘはＶ相の極大値の例である。点Ｈｉｗ＿ｍａｘはＷ相の極大値の例である。点Ｈｉｕ＿ｍｉｎはＵ相の極小値の例である。点Ｈｉｖ＿ｍｉｎはＶ相の極小値の例である。点Ｈｉｗ＿ｍｉｎはＷ相の極小値の例である。ｂｕ、ｂｖ、およびｂｗそれぞれは、記憶部３３Ａに記憶されている各相のオフセット補正値である。
【０１６０】
次に、第２補正部３２４２が行う第２補正について詳細に説明する。
【０１６１】
第２補正部３２４２は、各相の検出信号について、デジタル値が正側であるか負側であるかを判別する。ここで、正側のデジタル値とは、図１１においてデジタル値が０より大きい値である。また、負側のデジタル値とは、図１１においてデジタル値が０より小さい値である。第２補正部３２４２は、振幅の範囲を所定の最大値Ｂ２および所定の最小値−Ｂ２の範囲に均一化する補正を行う。
【０１６２】
第２補正部３２４２は、補正後の検出信号Ｈｉｕ０’の正側のデジタル値に対して、記憶部３３Ａに記憶されている情報を用いて次式（６）によって第２補正を行う。また、第２補正部３２４２は、補正後の検出信号Ｈｉｕ０’の負側のデジタル値に対して、記憶部３３Ａに記憶されている情報を用いて次式（７）によって第２補正を行う。
【０１６３】
第２補正部３２４２は、補正後の検出信号Ｈｉｖ０’の正側のデジタル値に対して、記憶部３３Ａに記憶されている情報を用いて次式（８）によって第２補正を行う。また、第２補正部３２４２は、補正後の検出信号Ｈｉｖ０’の負側のデジタル値に対して、記憶部３３Ａに記憶されている情報を用いて次式（９）によって第２補正を行う。
【０１６４】
第２補正部３２４２は、補正後の検出信号Ｈｉｗ０’の正側のデジタル値に対して、記憶部３３Ａに記憶されている情報を用いて次式（１０）によって第２補正を行う。また、第２補正部３２４２は、補正後の検出信号Ｈｉｗ０’の負側のデジタル値に対して、記憶部３３Ａに記憶されている情報を用いて次式（１１）によって第２補正を行う。
Ｈｉｕ１（ｐｐｎ）’＝ａｕ＿ｍａｘ（ｐｐｎ）×（Ｈｉｕ０’（ｐｐｎ）＋ｂｕ）  …（６）
Ｈｉｕ１（ｐｐｎ）’＝ａｕ＿ｍｉｎ（ｐｐｎ）×（Ｈｉｕ０’（ｐｐｎ）＋ｂｕ）  …（７）
Ｈｉｖ１（ｐｐｎ）’＝ａｖ＿ｍａｘ（ｐｐｎ）×（Ｈｉｖ０’（ｐｐｎ）＋ｂｖ）  …（８）
Ｈｉｖ１（ｐｐｎ）’＝ａｖ＿ｍｉｎ（ｐｐｎ）×（Ｈｉｖ０’（ｐｐｎ）＋ｂｖ）  …（９）
Ｈｉｗ１（ｐｐｎ）’＝ａｗ＿ｍａｘ（ｐｐｎ）×（Ｈｉｗ０’（ｐｐｎ）＋ｂｗ）  …（１０）
Ｈｉｗ１（ｐｐｎ）’＝ａｗ＿ｍｉｎ（ｐｐｎ）×（Ｈｉｗ０’（ｐｐｎ）＋ｂｗ）  …（１１）
【０１６５】
式（６）および式（７）において、Ｈｉｕ１’は、Ｕ相の検出信号に対して第２補正を行った補正値である。式（８）および式（９）において、Ｈｉｖ１’は、Ｖ相の検出信号に対して第２補正を行った補正値である。式（１０）および式（１１）において、Ｈｉｗ１’は、Ｗ相の検出信号に対して第２補正を行った補正値である。
【０１６６】
また、式（６）〜式（１１）において、ｐｐｎは、１〜６の整数であり、磁極対を表す値である。式（６）、式（８）、および式（１０）において、ａｕ＿ｍａｘ（ｐｐｎ）、ａｖ＿ｍａｘ（ｐｐｎ）、およびａｗ＿ｍａｘ（ｐｐｎ）それぞれは、記憶部３３Ａに記憶されている各磁極対に対応する電気角１周期分の正側のデジタル値に対する正側ゲイン補正値である。式（７）、式（９）、および式（１１）において、ａｕ＿ｍｉｎ（ｐｐｎ）、ａｖ＿ｍｉｎ（ｐｐｎ）、およびａｗ＿ｍｉｎ（ｐｐｎ）それぞれは、記憶部３３Ａに記憶されている各磁極対に対応する電気角１周期分の負側のデジタル値に対する負側ゲイン補正値である。式（６）〜式（１１）において、ｂｕ、ｂｖ、およびｂｗそれぞれは、記憶部３３Ａに記憶されている各相のオフセット補正値である。
【０１６７】
なお、ａｕ＿ｍａｘ（ｐｐｎ）、ａｖ＿ｍａｘ（ｐｐｎ）、ａｗ＿ｍａｘ（ｐｐｎ）、ａｕ＿ｍｉｎ（ｐｐｎ）、ａｖ＿ｍｉｎ（ｐｐｎ）、およびａｗ＿ｍｉｎ（ｐｐｎ）それぞれは、極対毎の補正値である。このため、正側ゲイン補正値の個数は、１８個（＝３相×６極対数）である。同様に、負側ゲイン補正値の個数は、１８個である。
【０１６８】
次に、第２補正による効果を説明する。
【０１６９】
図１２は、本実施形態に係る第２補正を行った結果の一例の波形図である。図１２に示す波形図は、第２補正後に、第２補正部３２４２によって補正された後の波形である。図１２において、横軸はロータ角［ｄｅｇ］を表す。縦軸はデジタル値を表す。
【０１７０】
図１２に示したように、第２補正によって、検出信号のオフセット成分の補正が行われている。また、第２補正によって、振幅の範囲が、＋Ｂ２〜−Ｂ２の範囲に、ほぼ均一化される。この補正によって、位置推定部３０Ｂは、各部の使用可能なデジタル信号値の範囲を有効に利用することができる。
【０１７１】
以上のように、第２補正によって、検出信号Ｈｉｕ０’、Ｈｉｖ０’およびＨｉｗ０’の各相のオフセット成分を低減し、各相の各極の振幅を整えることができる。
【０１７２】
＜オンライン処理による補正の説明＞
なお、本実施形態では、正側ゲイン補正値、負側ゲイン補正値、およびオフセット補正値が記憶部３３Ａに記憶されている例を説明したが、これに限られない。第２補正部３２４２が、正側ゲイン補正値、負側ゲイン補正値、およびオフセット補正値をオンライン処理で算出するようにしてもよい。例えば、第２補正部３２４２は、１つ前の機械角１周期分の検出信号を用いて、正側ゲイン補正値、負側ゲイン補正値、およびオフセット補正値を算出するようにしてもよい。
【０１７３】
次に、第２補正部３２４２が行うオフセット補正値と正側ゲイン補正値と負側ゲイン補正値との算出手順について説明する。
【０１７４】
図１３は、本実施形態に係るオフセット補正値と正側ゲイン補正値と負側ゲイン補正値との算出処理のフローチャートである。
（ステップＳ２０２１）第２補正部３２４２は、電気角６周期分の各相の極大値と極小値とを検出する。
（ステップＳ２０２２）第２補正部３２４２は、電気角６周期分の区間において、各相のオフセット補正値を算出する。具体的には、第２補正部３２４２は、電気角６周期分の各相の振幅最大値と振幅最小値の平均を算出する。各相における求めた振幅最大値の平均値と振幅最小値の平均値とから算出される最大最小平均値を算出する。算出された最大最小平均値は、相毎のオフセット補正値ｂｕ、ｂｖ、ｂｗとする。ここで、電気角６周期分とは、逐次入手した最新の電気角６周期分の平均値である。なお、電気角６周期分の平均値でなくてもよく、少なくとも２周期分以上の電気角１周期毎の振幅最大値と振幅最小値によって算出すればよい。次に、第２補正部３２４２は、算出した各相のオフセット補正値を記憶部３３Ａに記憶させる。
（ステップＳ２０２３）第２補正部３２４２は、電気角１周期分の区間において、相毎および極対毎に、正側ゲイン補正値と負側ゲイン補正値とを算出する。続けて、第２補正部３２４２は、算出した相毎および極対毎に、正側ゲイン補正値と負側ゲイン補正値とを記憶部３３Ａに記憶させる。
【０１７５】
第２補正部３２４２は、ステップＳ２０２１〜ステップＳ２０２３の処理によって記憶部３３Ａに記憶された補正値と、対応する式（６）〜式（１１）によって、例えば次の電気角１周期分の検出信号に対して第２補正を行う。
【０１７６】
なお、モータＭが、例えば４相の場合、第２補正部３２４２は、相毎にオフセット補正値と正側ゲイン補正値と負側ゲイン補正値とを算出するようにしてもよい。モータＭが４相の場合、オフセット補正値の個数は４個である。また、正側ゲイン補正値および負側ゲイン補正値の個数は、各々２４個（＝４相×６極対）ずつである。上述のように、本実施形態におけるモータ制御システム１の動作は、極大極小検出手順と、平均算出手順と、オフセット算出手順と、第１ゲイン算出手順と、第２ゲイン算出手順と、を含む。
【０１７７】
＜第３補正の説明＞
次に、第３補正部３２４３が、図９のステップＳ２０３で行う第３補正について説明する。
【０１７８】
まず、第３補正を行う理由を説明する。
【０１７９】
図１４は、本実施形態に係る電気角１周期分の角度の分割信号を結合した波形図である。横軸は推定角度［ｄｅｇ］を表す。縦軸は角度真値［ｄｅｇ］を表す。
【０１８０】
図１４において、曲線ｇ２１１は、電気角６周期分の角度の分割信号を接続した波形である。また、直線ｇ２１２は、理想的な直線である。また、直線ｇ２２１と直線ｇ２２２とは、曲線ｇ２１１のばらつきの範囲を示している。
【０１８１】
なお、図１４に示した曲線ｇ２１１は、補正部３２４による第１補正〜第３補正後に、第１の実施形態で説明した分割検出部３２２による分割信号を、線分接続部３２３によって接続させた後の波形である。これらの補正および処理を行うことで、位置検出の精度は、直線ｇ２２１と直線ｇ２２２とが示すように、約±α［ｄｅｇ］になる。
【０１８２】
前述したように、分割信号は、略Ｓ字の形状をしている。第３の補正を行わない場合、曲線ｇ２１１のばらつきの範囲が、図１４に示した例より大きくなる。すなわち、位置検出の精度は±α［ｄｅｇ］より大きな値になる。このため、第３補正部３２４３は、分割信号の略Ｓ字の形状を直線に補正することで第３補正を行う。この結果、第３補正によって、位置検出の精度をさらに向上させることができる。
【０１８３】
なお、図１４における符号ｇ３１１、ｇ３１２、ｘ１、およびｘ２については、第３実施形態で説明する。
【０１８４】
次に、第３補正について詳細に説明する。
【０１８５】
第３補正部３２４３は、各相の検出信号に対して、記憶部３３Ａに記憶されている値を係数として用いることで、検出信号のスケールを変更する第３補正を行う。
【０１８６】
第３補正を行うことで、各分割信号の略Ｓ字状の形状を直線化することができる。ここで、記憶部３３Ａに記憶されている値とは予め設計された値である。
【０１８７】
この第３補正は、予め設計された値を用いて、二次関数、三次関数、三角関数等の補正式により計算処理を行う。
【０１８８】
なお、以下の説明では、第２補正後の検出信号Ｈｉｕ１’、Ｈｉｖ２’およびＨｉｗ１’に対して、第３補正を行う例を説明する。
【０１８９】
Ｈｉｕ２’は、第２補正後のＵ相の検出信号に対して第３補正を行った補正値である。Ｈｉｖ２’は、第２補正後のＶ相の検出信号に対して第３補正を行った補正値である。Ｈｉｗ２’は、第２補正後のＷ相の検出信号に対して第２補正を行った補正値である。
【０１９０】
次に、第３補正による効果を説明する。
【０１９１】
図１５は、本実施形態に係る第３補正を行った結果の一例の波形図である。図１５に示す波形図は、第２補正後に第３補正を行った後の波形である。図１５において、横軸はロータ角［ｄｅｇ］を表す。縦軸はデジタル値を表す。
【０１９２】
図１５の符号ｇ２０１が示す領域の波形は、符号ｇ２００が示す領域の波形を拡大した波形である。符号ｇ２０１が示す領域の波形において、曲線Ｈｉｕ１（１）’は、第１補正後に第２補正を行った後の検出信号Ｈｉｕ１（１）’の波形の一部である。また、曲線Ｈｉｕ２’は、第１補正後に第２補正を行った後、さらに第３補正を行った後の検出信号Ｈｉｕ２’の波形の一部である。
【０１９３】
交差点ｃｐ１０１’〜ｃｐ１０２’の区間の曲線Ｈｉｕ１（１）’と比較して、交差点ｃｐ１０１〜ｃｐ１０２の区間の曲線Ｈｉｕ２’は、交差点間の検出信号の直線性が向上している。
【０１９４】
このように、第３補正によれば、検出信号Ｈｉｕ２’、Ｈｉｖ２’、およびＨｉｗ２’は、図１２に示した検出信号Ｈｉｕ１（ｐｐｎ）’、Ｈｉｖ１（ｐｐｎ）’、およびＨｉｗ１（ｐｐｎ）’と比較して、直線性が向上し角度に比例した信号を得ることができる。
【０１９５】
なお、第３補正部３２４３は、第３補正処理を検出信号の波形の形状に応じた補正式によって計算処理する。
【０１９６】
また、第３補正部３２４３は、予め設計された値に代えて第２補正と同様に、１つ前の機械角１周期分の検出信号に基づいて、逐次算出した値を用いてもよい。そして、第３補正部３２４３は、算出した値を係数として記憶部３３Ａに記憶させるようにしてもよい。
【０１９７】
なお、上述した例において、補正部３２４が、第１補正〜第３補正の全てを行う例を説明したが、これに限られない。例えば、補正部３２４は、検出信号に対して第１補正〜第３補正のうち、少なくとも１つの補正を行うようにしてもよい。
【０１９８】
以上のように、本実施形態の位置推定方法では、第１補正によって、検出信号の同相ノイズを低減することができる。また、本実施形態では、第２補正によって、複数の検出信号の相互ばらつきを補正することができる。ここで、複数の信号の相互ばらつきとは、例えば、検出信号の振幅およびオフセット成分のばらつきである。さらに、本実施形態では、第３補正によって、波形の曲線部分を直線化することができる。特に、第２補正を行うことで分割信号の長さが均一化されるため、第３補正において、すべての分割信号に一律の計算処理を適用しやすい。したがって、第２補正は、第３補正の前工程で行うことにより、より波形の曲線部分を直線化することができる。
【０１９９】
この結果、本実施形態では、位置情報に必要な信号部分がより直線化し、位置推定値と真値の差を小さくすることができるので、高精度な位置検出を行うことができる。
【０２００】
なお、本実施形態において、補正部３２４が、デジタル信号に変換された検出信号を補正する例を説明したが、これに限られない。補正部３２４は、増幅部２０とＡＤ変換部３１との間に設けられていてもよい。この場合、補正部３２４は、アナログ信号である検出信号Ｈｕ０、Ｈｖ０、およびＨｗ０を補正するようにしてもよい。また、本実施形態においても、検出部１０が備えるセンサの数は、３個に限られない。この場合、各センサの出力は、センサの総数で除算した位相ずつずれていればよい。
【０２０１】
モータ制御システム１は、上述のように、補正された検出信号を用いることで、より精度の高い位置制御を行うことができる。例えば、ロータＲの回転位置の検出を従来技術のように光学式のエンコーダを用いて行う場合、検出精度は、エンコーダの分解能に依存する。ここで、光学式のエンコーダは、例えば、フォトインタラプタとエンコーダディスクとを有している。エンコーダディスクには、円周上に等間隔で形成されたスリットを有する。例えば、分解能が４００パルスのエンコーダの検出精度は、約±０．９度である。一方で、本実施形態の位置推定方法を用いた位置推定部３０では、光学式エンコーダの検出精度と同等の精度を実現することができる。
【０２０２】
［第３の実施形態］
第１の実施形態の位置推定部３０が、正規化部をさらに備えている例を説明する。
【０２０３】
図１６は、本実施形態に係るモータ制御システム１Ｂの構成を示す概略図である。
【０２０４】
図１６に示すように、モータ制御システム１Ｂは、位置推定部３０に代えて位置推定部３０Ｂを備える。
【０２０５】
位置推定部３０Ｂは、位置演算部３２に代えて位置演算部３２Ｂを備え、記憶部３３に代えて記憶部３３Ｂを備える。
【０２０６】
位置演算部３２Ｂは、さらに正規化部３２５を備える。正規化部３２５は、分割検出部３２２によって検出された分割信号の線分の傾きを均一化する補正を行い、補正した検出信号を線分接続部３２３に出力する。
【０２０７】
記憶部３３Ｂは、セグメント毎の正規化係数を、さらに記憶する。なお、正規化係数については、後述する。
【０２０８】
＜正規化の説明＞
まず、正規化を行う理由について、図１４を参照して説明する。
【０２０９】
センサ１１〜センサ１３のそれぞれの検出感度及び取り付け位置の誤差等に応じて、センサ１１〜センサ１３の検出信号の形状は、理想的な同一形状とはならない。また、検出信号の位相は、理想的な位相のずれとはならない。その結果、検出信号の形状の違い等は、検出信号の交差位置およびゼロクロス点に影響する。すると、それぞれの分割信号の線分の傾きは一定ではなくなる。ここで、正規化とは、分割信号の線分の傾きを均一にする補正である。
【０２１０】
図１４を例とすると、角度真値が６０［ｄｅｇ］に対して、推定角度はｘ１、約４０［ｄｅｇ］である。また、角度真値が１２０［ｄｅｇ］に対して、推定角度はｘ２、約１００［ｄｅｇ］である。図１４に示す例では、角度真値が０［ｄｅｇ］〜６０［ｄｅｇ］の間の線分ｇ３１１の傾きと、角度真値が６０［ｄｅｇ］〜１２０［ｄｅｇ］の間の線分ｇ３１２の傾きとが異なっている。
【０２１１】
検出信号の線分の傾きが異なっている場合は、分割信号ｓｇ３１１と分割信号ｓｇ３１２を接続させ、接続された線分の傾きから機械角の角度を求めると、線分の傾きの差異によって、位置推定の結果に誤差が生じてしまうことがある。
【０２１２】
このため、本実施形態では、分割信号を正規化することで、位置推定の結果の誤差を低減する。
【０２１３】
図１７は、本実施形態に係る分割信号の正規化を説明する図である。図１７において、横軸は機械角度［ｄｅｇ］を表す。縦軸は、デジタル値を表す。図１７では、説明を簡略化するために、２個の分割信号のみを示している。
【０２１４】
図１７の符号ｇ３２１が示す波形は、分割信号ｓｇ３４１’と分割信号ｓｇ３４２’とが接続された波形である。分割信号ｓｇ３４１’の機械角度は、Θ［１］’である。分割信号ｓｇ３４１’のデジタル値はΔＸ［１］である。また、分割信号ｓｇ３４２’の機械角度は、Θ［２］’である。また、分割信号ｓｇ３４２’のデジタル値はΔＸ［２］である。
【０２１５】
正規化部３２５は、記憶部３３Ｂに記憶されているセグメント毎の正規化係数ｋ［ｉ］および分割信号毎のデジタル値ΔＸ［ｉ］を用いて、次式（１２）によって、機械角Θ［ｉ］’を算出する。なお、ｉはセグメントの番号であり、１〜７２の整数である。
Θ［ｉ］’＝ΔＸ［ｉ］×ｋ［ｉ］  …（１２）
【０２１６】
また、正規化部３２５は、図１７に示した前回記憶した交差位置もしくはゼロクロス点から現時刻における機械角度の偏差ΔΘ［ｎ］を、次式（１３）を用いて算出する。
ΔΘ［ｎ］＝Ｘ［ｎ］×ｋ［ｉ］  …（１３）
式（１３）において、ｎは現時点での不定数を示す。
【０２１７】
正規化部３２５は、分割信号の縦軸のＸ［ｎ］に正規化係数ｋ［ｉ］を乗算し、乗算した結果を線分接続部３２３に出力する。
【０２１８】
本実施形態では、分割信号を正規化して接続することで、分割信号毎の線分の傾きを、ほぼ均一化することができる。この結果、本実施形態によれば、検出部の取り付け精度のばらつき、検出部の信号のばらつきが生じている場合であっても、位置の検出精度を、さらに向上することができる。
【０２１９】
＜正規化係数ｋ［ｉ］のオフライン処理での算出＞
ここで、上式（１３）における正規化係数ｋ［ｉ］のオフライン処理での算出方法を説明する。オフライン処理とは、例えば、出荷前に予め行う処理、または、モータ制御システム１Ｂを実際に使用する前に行う処理である。正規化係数をオンライン処理で算出する場合、位置演算部３２Ｂの演算負荷が増す。このため、正規化部３２５が、正規化係数をオフライン処理で算出して記憶部３３Ｂに記憶させておくようにしてもよい。また、以下の処理は、外部装置７０からの位置指令値Θ*に応じて、モータ制御システム１Ｂが、ロータＲを一定回転速度で回転させて行う。図１８は、本実施形態に係る正規化係数の算出を説明する図である。図１８に示される信号は、オフライン処理によって求められた分割信号の値を示している。図１８において、横軸は機械角度の真値［ｄｅｇ］を表す。縦軸は、デジタル値を表す。図１８では、説明を簡略化するために、２個の分割信号のみを示している。
【０２２０】
正規化部３２５は、モータＭが所定の回転数で回転しているとき、機械角１周期分の分割信号毎の交差点からゼロクロス点までの経過時間ｔ［ｉ］と、機械角１周期分の分割信号毎の交差点からゼロクロス点までのデジタル値の偏差ΔＸｎｏｒｍ［ｉ］とを測定する。
【０２２１】
次に、正規化部３２５は、測定した分割信号毎の各経過時間から機械角の真値Θｎｏｒｍ［ｉ］を、次式（１４）を用いて算出する。
Θｎｏｒｍ［ｉ］＝｛ｔ［ｉ］／（ｔ［１］＋…．＋ｔ［７２］）｝×３６０［ｄｅｇ］        …（１４）
式（１４）において、ｉはセグメントの番号であり、１〜７２の整数である。
【０２２２】
図１８の符号ｇ３３１が示す波形は、分割信号ｓｇ３４１と分割信号ｓｇ３４２とが接続された波形である。分割信号ｓｇ３４１の機械角度の真値は、Θｎｏｒｍ［１］である。また、分割信号ｓｇ３４１のデジタル値はΔＸｎｏｒｍ［１］である。
【０２２３】
正規化部３２５は、分割信号毎、すなわちセグメント毎に、式（１４）によって求めた機械角度の真値Θｎｏｒｍ［ｉ］を用いて、次式（１５）から、正規化係数ｋ［ｉ］を算出する。算出した正規化係数ｋ［ｉ］を記憶部３３Ｂに記憶させる。
ｋ［ｉ］＝Θｎｏｒｍ［ｉ］／ΔＸｎｏｒｍ［ｉ］  …（１５）
【０２２４】
以上のように、オフライン処理を行うことで、式（１５）から求めた正規化係数ｋ［ｉ］を算出することができる。上述のように、この正規化係数ｋ［ｉ］を、オンライン時における機械角度Θ［ｉ］’式（１２）または、ΔΘ［ｎ］式（１３）の導出に用いる。その結果、分割信号毎の線分の傾きのばらつきを補正した機械位置の推定が可能となる。すなわち、本発明の位置推定方法の一つの態様は、正規化部が、所定の回転数で可動子が回転しているとき、分割信号毎の時間と、可動子が１周することに要する時間と、分割信号毎の時間において増加した信号値または分割信号の線分の長さと、を計測する計測手順と、正規化部が、計測手順によって計測された分割信号毎の時間と、可動子が一周することに要する時間に基づいて分割信号毎の機械角度を算出する機械角度算出手順と、正規化部が、機械角度算出手順によって算出された機械角度を、計測手順によって計測された信号値または線分の長さで除算することにより、分割信号毎の正規化係数を算出する正規化係数算出手順と、正規化部が、分割信号毎に、正規化係数算出手順によって算出された正規化係数に、新たに検出された分割信号の信号値または線分の長さを乗算して正規化を行うことにより機械角度を補正する正規化手順と、を含む。
【０２２５】
＜Θｏｆｆｓｅｔ［ｉ］のオフライン処理での算出＞
図１９は、本実施形態に係る機械角度位置の算出を説明する図である。図１９に示す例では、極対番号は１について説明する図である。
【０２２６】
図１９において、求めたい機械位置が、セクションｓｃ２からΔΘ［ｎ］の位置であるとする。ΔΘ［ｎ］は、１つ前の交差点およびゼロクロス位置から現時刻ｎまでのロータＲの角度である。
【０２２７】
ここで、機械位置の角度が０［ｄｅｇＭ］の位置をΘｏｆｆｓｅｔ［１］とする。Θｎｏｒｍ［１］後の位置をΘｏｆｆｓｅｔ［２］とする。機械位置の角度が０［ｄｅｇＭ］の位置からΘｎｏｒｍ［２］後の位置をΘｏｆｆｓｅｔ［３］とする。したがって、機械位置の角度が０［ｄｅｇＭ］の位置からΘｎｏｒｍ［ｉ］後の位置をΘｏｆｆｓｅｔ［ｉ］とする。
【０２２８】
Θｏｆｆｓｅｔ［ｉ］は、次式（１６）のように表される。
Θｏｆｆｓｅｔ［ｉ］＝Σ（Θｎｏｒｍ［ｉ−１］）  …（１６）
ただし、ｉ＝１〜７２、Θｎｏｒｍ［０］＝０である。
【０２２９】
このとき、オフライン処理で算出されたΘｏｆｆｓｅｔ［ｉ］は、記憶部３３Ｂに保存される。
【０２３０】
＜機械角度Θ［ｎ］の算出＞
このため、現在の位置、すなわち現時刻のロータＲの機械角度Θ［ｎ］は、次式（１７）のように表される。
Θ［ｎ］＝Θｏｆｆｓｅｔ［ｉ］＋Ｘ［ｎ］×ｋ［ｉ］
＝Θｏｆｆｓｅｔ［ｉ］＋ΔΘ［ｎ］  …（１７）
式（１７）で示すように、Θｏｆｆｓｅｔ［ｉ］は、現時刻のロータＲの機械角度Θ［ｎ］の算出する場合において、記憶部３３Ｂから呼び出される。
【０２３１】
ここで、オンライン処理において、現時刻のロータＲの機械角度Θ［ｎ］を算出することを考える。オンライン処理で算出されるΘｏｆｆｓｅｔ［ｉ］で示した機械角度の位置が、オフライン処理で算出したΘｏｆｆｓｅｔ［ｉ］の機械角度の位置と異なる場合がある。この誤差は、現時刻のロータＲの機械角度Θ［ｎ］の算出誤差となる。その結果、この誤差によって、ロータＲが機械角一周期分回転した後に、同じ機械角度の位置に戻らないことがある。
【０２３２】
そこで、オフライン処理で算出したΘｏｆｆｓｅｔ［ｉ］を用いる。式（１７）で示したように、ΔΘ［ｎ］の一つ前の交差位置またはゼロクロス点までの機械角度の位置を基準として、ΔΘ［ｎ］を算出する。この方法により、Θｏｆｆｓｅｔ［ｉ］より前の区間で生じている誤差が累積することなく、ΔΘ［ｎ］を算出することができる。すなわち、機械角度算出手順では、正規化部が、可動子が一周することに要する区間、正規化手順によって補正された機械角度を、新たに検出された分割信号１つ前の前記機械角度に加算して現在の前記機械角度を算出する。
【０２３３】
上述したオフライン処理によって取得されたデータを、本明細書では「測定データ」と称する。測定データは、各セグメントに対応する可動子の移動量を全てのセグメントに対応づけたデータである。セグメントの個数が７２個である場合、セグメント１からセグメント７２のそれぞれについて、測定によって取得された機械角度（セグメントの始点から終点までの機械角度の真値）が割り当てられ得る。このような測定データは、例えば情報テーブルとして記憶部３３、３３Ａ、３３Ｂに記憶され、保存される。測定データを記憶部３３、３３Ａ、３３Ｂから読み出して参照すれば、セグメントの番号から、その番号によって指定されるセグメントの機械角度、あるいは、その機械角度に付随する他の情報を読み出すことができる。
【０２３４】
例えば、セグメント１、セグメント２、・・・、セグメント７２は、それぞれ、４．１度、４．９度、・・・、５．３度の機械角度を有していることがオフライン処理によって取得されたとする。こうして得られた測定データは、テーブルとして記録装置に格納されているとする。この場合、検出されたセグメントの番号から、測定データを参照すれば、そのセグメントに対応する機械角度（真値）が得られる。このような機械角度の数値の列は、個々のモータに固有であり、モータのいわゆる「指紋」として機能し得る。前述したように、このモータ指紋は、認証のための鍵情報として用いられ得る。このような鍵情報は、モータの製造ばらつきによって変動するモータに固有の複数の値を含んでいるため、セキュリティの高い認証の鍵として多様な場面で利用され得る。
【０２３５】
モータ指紋の内容を規定する上記の測定データは、典型的には出荷前に記憶部に保持されるが、その後に更新されてもよい。オフライン処理で学習した正規化係数ｋ［ｉ］の値が、経時的に変化することもあり得る。このため、定期的または不定期的にオフライン処理を行い、測定データのとり直しを実行してもよい。したがって、認証に使用され得るモータ指紋情報は、モータモジュールの出荷前に取得されて記憶装置内に記録されていてもよいし、モータモジュールの出荷後に取得されて記憶装置内に記録されていてもよい。
【０２３６】
なお、測定データは、インターネットまたは他の通信回線を介して集められ、クラウド上のストレージ装置に格納されても良い。上記のように測定データが更新された場合、クラウド上のストレージ装置における測定データも更新される。更新された測定データの内容に基づいて、モータＭを診断することも可能である。
【０２３７】
＜機械位置の特定＞
次に、機械位置の初期位置の特定方法について説明する。
【０２３８】
本実施形態におけるモータ制御システム１の動作は、記憶手順と、セクション判別手順と、誤差算出手順と、評価手順と、位置特定手順と、判別手順と、を含む。電源再投入後はセグメントｉの情報が初期化される。このためオフライン処理で学習した正規化係数ｋ［ｉ］を正しく適用できない。このため電源再投入後は、機械位置（セグメントまたは極対番号）の特定が必要となる。ここで、セグメントまたは極対番号は、セグメントの番号＝１２×極対番号＋セクションの番号という式で表される。そのため、極対番号を特定することでセグメントの番号（機械位置）を特定することができる。
【０２３９】
図２０は、本実施形態に係るロータＲの初期位置の特定処理の手順のフローチャートである。
（ステップＳ７０１）正規化部３２５は、モータＭ、またはモータＭを組み込んだ製品の出荷時に、ロータＲを速度一定にして回転させたときの各分割信号における機械角度の真値Θｎｏｒｍ［ｉ］を記憶部３３Ｂに逐次記憶させる。電源再投入後において、記憶部３３Ｂに記憶された保存情報は、フラッシュＲＯＭからＲＡＭへと呼び出される。このように、正規化部３２５は、ロータＲを速度一定にして回転させたときの各分割信号における機械角度の真値Θｎｏｒｍ［ｉ］を記憶部３３Ｂに逐次記憶させることで、学習を行う。
（ステップＳ７０２）位置推定部３０Ｂは、記憶部３３Ｂに記憶されている検出信号Ｈｕ０’、Ｈｖ０’、およびＨｗ０’の大小関係の組み合わせに基づいて、ロータＲのセクションの番号を判別する。
（ステップＳ７０３）位置推定部３０Ｂは、セクション毎に、機械角度の真値Θｎｏｒｍ［ｉ］と機械角度Θ［ｉ］との誤差を算出する。
（ステップＳ７０４）位置推定部３０Ｂは、ステップＳ７０３で算出した誤差の累積評価を行う。
（ステップＳ７０５）位置推定部３０Ｂは、誤差が上限に達した極対番号（セグメント）の候補を順次破棄する。
（ステップＳ７０６）位置推定部３０Ｂは、所定時間内に全ての候補が誤差上限に達したか否かを判別する。位置推定部３０Ｂは、所定時間内に全ての候補が誤差上限に達していないと判別した場合（ステップＳ７０６；ＮＯ）、ステップＳ７０７の処理に進む。位置推定部３０Ｂは、所定時間内に全ての候補が誤差上限に達していると判別した場合（ステップＳ７０６；ＹＥＳ）、ステップＳ７０８の処理に進む。
（ステップＳ７０７）最後まで残った極対番号（セグメント）の候補から、セグメントを特定することで、ロータＲの初期位置を特定する。そして、セグメントの番号の特定処理を終了する。
（ステップＳ７０８）位置推定部３０Ｂは、受け取った検出信号をもとに、正規化を行ったモータＭと異なっていると判別する。
【０２４０】
以上で、ロータＲの初期位置の特定処理を終了する。なお、（ステップＳ７０１）において、記憶部３３Ｂに記憶される保存情報は、機械角度の真値Θｎｏｒｍ［ｉ］に限らない。例えば、分割信号毎にデジタル値または分割信号毎の線分の長さ等を記憶部３３Ｂに記憶してもよい。また、記憶部３３Ｂに記憶される保存情報には、正規化係数ｋ［ｉ］、補正式（１）〜（３）、（６）〜（１１）、第３補正に用いられる補正式、正側ゲイン補正値、負側ゲイン補正値、各相のオフセット補正値、予め設計された値が含まれてもよい。すなわち、（ステップＳ７０１）の記憶手順は、計測手順または機械角度算出手順によって算出された保存情報を予め記憶部３３Ｂに記憶している。（ステップＳ７０３）の誤差算出手順においては、機械角度の真値Θｎｏｒｍ［ｉ］と機械角度Θ［ｉ］との誤差を算出する場合に限らない。例えば、保存情報の分割信号毎のデジタル値または分割信号毎の線分の長さと、オンライン処理における分割信号毎のデジタル値または分割信号毎の線分の長さであってもよい。以上のように、本実施形態の位置推定方法では、各分割信号の機械角と正規化係数を記憶部３３Ｂに記憶することにより、電源を再投入した後にも現在機械位置を特定することができる。また、本実施形態の位置推定方法では、所定時間内に全ての候補が誤差上限に達した場合、検出信号が正規化を行ったモータＭと異なっていると判別することができる。
【０２４１】
なお、本実施形態では、位置演算部３２Ｂが、第２の実施形態で説明した補正部３２４をさらに備えていてもよい。これにより、さらに位置検出精度を向上させることができる。
【０２４２】
また、位置演算部３２Ｂが補正部３２４をさらに備える位置演算部３２Ｂまたは位置演算部３２Ａは、記憶部３３Ｂが記憶する情報を、オフライン処理時に取得して学習させて記憶部３３Ｂまたは記憶部３３Ａに記憶させるようにしてもよい。ここで、記憶部３３Ｂまたは記憶部３３Ａが記憶する保存情報とは、補正式（１）〜（３）、（６）〜（１１）、第３補正に用いられる補正式、正側ゲイン補正値、負側ゲイン補正値、各相のオフセット補正値、予め設計された値である。
【０２４３】
例えば、第２補正で用いる補正値をオンライン処理で算出する場合、位置演算部３２の演算負荷が増す。このため、第２補正部３２４２が、第２の補正で用いる補正値をオフライン処理で算出して記憶部３３Ａに記憶させておくようにしてもよい。記憶部３３が、例えばフラッシュＲＯＭとＲＡＭとから構成されている場合、第２補正部３２４２は、フラッシュＲＯＭに記憶されている補正値を、位置演算部３２の電源がオン状態にされたとき、ＲＡＭに移動して使用するようにしてもよい。第３補正の補正値についても、第３補正部３２４３は、オフライン処理で記憶部３３に記憶させるようにしてもよい。
【０２４４】
本発明の各実施形態において、基準値をデジタル値が０を示す値として説明したが、これに限られない。例えば、検出信号をＡＤ変換せず、アナログ信号で本発明を行う場合、基準値は必ずしも０を示す値でなくともよい。また、デジタル信号とする場合であっても、基準値は、０でなくてもよい。
【０２４５】
本発明の各実施形態において、交差位置およびゼロクロス点並びに分割信号を『検出する』とは、位置推定部が交差位置及びゼロクロス点並びに分割信号を算出することによって求めた結果、交差位置及びゼロクロス点を検出することができればよい。
【０２４６】
なお、本発明の各実施形態における位置推定部（３０、３０Ａ、３０Ｂ）の機能を実現するためのプログラムを不図示のコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理の手順を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０２４７】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【０２４８】
［第４の実施形態］
上記の各実施形態に係る位置推定部３０、３０Ａ、３０Ｂは、信号処理回路と、この信号処理回路の動作を制御するコンピュータプログラムを格納した記録媒体とを用いて実現され得る。以下、このような実施形態を説明する。
【０２４９】
図２１は、本実施形態に係るモータ制御システム１の構成例を示す概略図である。本実施形態のモータ制御システム１は、図２１に示すように、モータＭ、検出部１０、増幅部２０、位置推定装置３００、ゲートドライバ４５０、インバータ４６０、およびコントローラ５００を備える。
【０２５０】
検出部１０は、ロータＲが有する複数の磁極が形成する磁界を検出して、それぞれが検出した磁界の強さに応じた大きさを持つ検出信号を出力するＮ個（Ｎは３以上の整数）のセンサを備えている。Ｎ個のセンサは、Ｎ個の検出信号の位相が３６０度／Ｎの角度ずつずれるように配置されている。図示されている例では、Ｎは３であり、検出部１０はセンサ１１、１２、１３を有している。本実施形態におけるモータＭ、検出部１０、および増幅部２０の構成および動作は、他の実施形態について説明した通りであるので、ここでは詳細な説明は繰り返さない。
【０２５１】
本実施形態における位置推定装置３００は、Ｎ個の検出信号からＮ個の補正検出信号を生成する前処理回路３５０と、Ｎ個の補正検出信号に基づいて可動子の位置推定値を示す信号を生成し、出力する信号処理回路４００とを備えている。
【０２５２】
本実施形態における信号処理回路４００は、例えば中央演算処理装置（ＣＰＵ）、デジタル信号処理プロセッサなどの集積回路（ＩＣ）チップであり得る。位置推定装置３００は、信号処理回路４００の動作を制御するコンピュータプログラムを格納した記録媒体を備えている。この記録媒体は、例えばフラッシュＲＯＭなどの不揮発性メモリ４２０であり、信号処理回路４００に接続されている。
【０２５３】
本実施形態では、前処理回路３５０から出力されたＮ個の補正検出信号は、ＲＡＭ４１０に変数として、随時、格納される。
【０２５４】
前処理回路３５０は、前述したＡＤ変換部３１を有しており、必要に応じて、補正部を有していても良い。前処理回路３５０により、検出信号はデジタル信号に変換され、種々の補正処理を受け得る。ここでは、このような前処理を受けた検出信号を「補正検出信号」と称する。
【０２５５】
信号処理回路４００は、コンピュータプログラムの指令に従って、以下のステップを実行する。
【０２５６】
まず、信号処理回路４００は、ＲＡＭ４１０から補正検出信号を読み出す。次に、Ｎ個の補正検出信号のうちのいずれか２個の信号が互いに交差する交差点を逐次検出する。
【０２５７】
信号処理回路４００は、交差点から、交差点に隣り合う他の交差点までを連結する補正検出信号を、１個または複数個のセグメントに分割し、各セグメントを分割信号として検出する。
【０２５８】
信号処理回路４００は、各セグメントに対応する可動子の移動量を全てのセグメントに対応づけた測定データを記憶装置から読み出す。この記憶装置は、上述したコンピュータプログラムを格納している記録媒体であってもよいし、メモリカードなどの他の記憶装置であっても良い。本実施形態では、不揮発性メモリ４２０に測定データが保存されており、不揮発性メモリ４２０から測定データが読み出される。前述したように、この測定データは、出荷前のオフライン処理によって取得され、記憶媒体に保存されている。出荷後において、測定データは更新され得る。
【０２５９】
信号処理回路４００は、この測定データを参照して、Ｎ個の補正検出信号の関係および分割信号に基づいて、ロータＲの現在位置に対応するセグメントを特定する。
【０２６０】
前述したように、ある態様においては、ｉを１以上の整数、ｎを現在時刻を規定する整数、特定されたセグメントの番号をｉ、特定されたセグメントの始点におけるロータＲの位置をΘｏｆｆｓｅｔ［ｉ］、セグメントの始点における分割信号の値と当該分割信号の現在値との差分をＸ［ｎ］、ロータＲの位置推定値をΘ［ｎ］、比例係数をｋ［ｉ］とするとき、Θ［ｎ］＝Θｏｆｆｓｅｔ［ｉ］＋ｋ［ｉ］×Ｘ［ｎ］の関係が成立する。この関係から、ロータＲの位置推定値が決定される。
【０２６１】
ロータＲの位置推定値を示す信号は、基準位置からのロータＲの移動量に比例して直線的に増加する値を持つ。好ましい態様において、ロータＲの位置推定値を示す信号は、Θに比例するデジタル値またはアナログ値を持つ。
【０２６２】
このように、信号処理回路４００は、特定されたセグメントに基づいて、分割信号のレベルから可動子の位置推定値を決定し、位置推定値を示す信号を出力する。位置推定信号は、デジタル値の状態でコントローラ５００のフィードバック（Ｆ／Ｂ）端子に入力されてもよい。位置推定信号は、シリアルデータとして外部に出力されたり、ＤＡ変換回路（ＤＡＣ）４４０によってアナログ値に変換されてから出力されたりしてもよい。例えばメンテナンスに際して、アナログ値に変換された信号をオシロスコープによって観測することにより、位置指令値と位置推定値とを比較することが可能である。
【０２６３】
位置推定装置３００は、信号処理回路４００からの指示に応答して、パルス状のＺ相信号を出力する回路を備えていても良い。各機能ブロックを、信号処理回路４００によって実現することもできる。
【０２６４】
信号処理回路４００内の前処理回路３５０が、前述した第１補正手順、第２補正手順、および第３補正手順から選択されたいずれかの補正手順を実行して補正検出信号を生成するようにプログラムが構成されていても良い。このようなプログラムに従って信号処理回路４００が動作するとき、第１補正手順は、検出信号のうち１つを順次選択し、選択した検出信号から、選択されていない他の検出信号の平均値を減算することにより、選択した検出信号を補正し、補正検出信号を生成する。第２補正手順は、各相の検出信号について、極対毎の極大値と極小値および少なくとも２周期分の電気角１周期毎の振幅最大値と振幅最小値を検出すること、補正部が、各相の検出信号について、振幅最大値の平均と振幅最小値の平均を算出すること、振幅最大値の平均と振幅最小値の平均から算出される最大最小平均値をオフセット補正値とすること、それぞれの検出信号について、極大値を所定の最大値とする磁極対毎の正側ゲイン補正値を算出すること、各相の検出信号について、極小値を所定の最小値とする磁極対毎の負側ゲイン補正値を算出すること、各相の検出信号について、オフセット補正値を加算し、磁極対毎の正側の信号値に正側ゲイン補正値を乗算し、磁極対毎の負側の信号値に負側ゲイン補正値を乗算することを含む。第３補正手順は、検出信号のそれぞれに対して、検出信号の波形の状態に基づいて、予め定められた係数を乗算することを含む。
【０２６５】
なお、信号処理回路４００が実行する動作として、各セグメントに対応する可動子の移動量を全てのセグメントに対応づけた測定データを記憶装置から読み出すこと、測定データを参照して、Ｎ個の補正検出信号の関係および分割信号に基づいて、可動子の現在位置に対応するセグメントを特定することは、本発明にとって不可欠の動作ではない。これらの動作を実行する代わりに、信号処理回路４００は、分割信号を逐次接続させて接続させた複数の分割信号に基づいて、分割信号のレベルから可動子の位置推定値を決定し、位置推定値を示す信号を出力しても良い。
【０２６６】
信号処理回路４００は、上述した位置推定処理を実行することに加えて、モータ駆動に必要な演算を実行するようにプログラムされていてもよい。信号処理回路４００が実行する各種の処理には、１つのＩＣチップによって実行される必要はない。第１から第３の実施形態に係る位置推定部３０、３０Ａ、および３０Ｂ、ならびに制御部５０が実行する機能の一部または全部は、デジタル信号の処理によって実現され得る。したがって、複数の演算処理ユニットまたはデジタルシグナルプロセッサ（ＤＳＰ）が、位置推定部３０、３０Ａ、および３０Ｂの各機能ブロックが実行する異なる処理を分担してもよい。また、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）のようなプログラマブルロジックデバイスを用いて本実施形態の信号処理回路４００を実現することもできる。
【０２６７】
本実施形態では、ロータＲの位置推定値に基づいて、モータ制御に必要な電圧指令値を信号処理回路４００が算出してパルス幅変調（ＰＷＭ）回路４３０に与える。パルス幅変調回路４３０は、この電圧指令値に基づいて、ゲートドライバ４５０にＰＷＭ信号を与える。ゲートドライバ４５０はＰＷＭ信号に基づいてインバータ４６０内のスイッチングトランジスタを開閉し、必要な電圧および電流をモータＭに供給する。
【０２６８】
オフライン時に測定データを取得または更新するとき、信号処理回路４００は、コンピュータプログラムの指令に従って、一定速度でロータＲが移動（回転）する。そして、セグメント毎のロータＲの移動（回転）時間を測定し、各セグメントに対応するロータＲの移動量（機械角度）を全てのセグメントに対応づけるデータを作成する。信号処理回路４００は、このデータを測定データとして不揮発性メモリ４２０に記憶させる。
【０２６９】
システムが温度検出素子を備えている場合、測定データを取得したときの温度を基準温度として記憶装置に記憶させることができる。周囲温度によって検出信号の振幅が変化する場合、記憶装置から基準温度を読み出し、温度検出素子から取得した現在の温度と基準温度に基づいて検出信号を補正してもよい。
【０２７０】
［他の実施形態］
上記の各実施形態は、ロータの回転に応じて信号を出力するセンサとして磁気センサを備えており、ロータが特定の条件で回転するときに磁気センサが出力した信号から「測定データ」を取得している。認証のための鍵情報に関連付けられる測定データは、ホール素子またはホールＩＣなどの磁気センサが出力した信号に基づく必要はなく、他のセンサ、例えば、光学式ロータリエンコーダまたはレゾルバから出力した信号であってもよい。以下、ロータの回転に応じて信号を出力するセンサとして、ロータリエンコーダ、またはレゾルバを用いる例を説明する。
【０２７１】
図２２は、本実施形態におけるロータリエンコーダ１３Ａの構成例を模式的に示す図である。この例におけるロータリエンコーダ１３Ａは、モータＭのロータＲとともに回転するディスク１３０Ａと、ディスク１３０Ａを挟んで対向する光源１３０Ｂおよび複数の受光素子１３０Ｃとを備えている。ディスク１３０Ａには、円周に沿って配列された多数の開口孔（回転スリット）１３０Ｄを有している。光源１３０Ｂから放射された光は、回転するディスク１３０Ａの開口孔１３０Ｄを通過して各受光素子１３０Ｃに入射する。ディスク１３０Ａと各受光素子１３０Ｃとの間には、固定スリット１３０Ｅが配置されている。
【０２７２】
受光素子１３０Ｃは、回転するディスク１３０Ａの開口孔１３０Ｄおよび固定スリット１３０Ｅを通過してきた光を受けたとき、例えばＨｉｇｈの信号を出力し、そのような光を受けていないときはＬｏｗの信号を出力する。これらの信号１３０Ｆは、ロータＲの回転に応じたパルス列を含む。パルス列をカウントすることにより、ロータＲの回転位置を求めることが可能になる。
【０２７３】
ディスク１３０Ａの開口孔１３０Ｄの形状およびサイズは、設計寸法を中心としてばらつき（製造誤差）を有している。同様に、固定スリット１３０Ｅの形状およびサイズも、設計寸法を中心としてばらつき（製造誤差）を有している。更に、ディスク１３０Ａの軸の位置および方向も、通常、何らかのアライメントずれ、軸ずれまたは偏心を有している。このようなロータリエンコーダ１３Ａを構成する各要素が持ち得る形状、サイズ、および位置のばらつきは、人が決定できない値を持つ。その結果、ロータリエンコーダ１３Ａから出力される信号１３０Ｆに含まれる個々のパルスの幅および位置は、ロータリエンコーダ１３Ａによって異なる。したがって、信号Ｆに基づいて測定される各種の数値は、このようなロータリエンコーダ１３Ａを備えるモータモジュールに固有のパラメータであり、「モータ指紋」として認証のための鍵情報に利用できる。
【０２７４】
図２３Ａは、レゾルバ１３Ｂの構成例を模式的に示す図である。この例におけるレゾルバ１３Ｂは、励磁コイル１３Ｇと、検出コイル１３Ｈ、１３Ｋとを備えている。検出コイル１３Ｈ、１３Ｋは、相互に直交するように配置されている。検出コイル１３Ｈ、１３Ｋのそれぞれは、ロータＲを介して、励磁コイル１３Ｇに磁気的に結合する。励磁コイル１３Ｇには、図２３Ｂに示されるように、波形１３Ｇを持つ励磁電流が流れる。検出コイル１３Ｈ、１３Ｋには、それぞれ、図２３Ｂに示されるように、波形１３Ｈ１、１３Ｋ１を持つ検出電流が流れる。検出コイル１３Ｈ、１３Ｋに誘起される電圧は、励磁電流およびロータＲの位置に応じて変動する。不図示の回路により、検出コイル１３Ｈ、１３Ｋを流れる電流を検出すれば、ロータＲの回転位置を推定することができる。
【０２７５】
検出コイル１３Ｈ、１３Ｋを流れる電流の波形１３Ｈ１、１３Ｋ１の具体的な形状は、レゾルバ１３Ｂが備える励磁コイル１３Ｇ、検出コイル１３Ｈ、１３Ｋの形状および位置のばらつきによって個々のレゾルバ１３Ｂに固有である。したがって、レゾルバ１３Ｂから出力される信号に基づいて測定される各種の数値も、このようなレゾルバ１３Ｂを備えるモータモジュールに固有のパラメータであり、「モータ指紋」として認証のための鍵情報に利用できる。
【０２７６】
なお、上記のロータリエンコーダ１３Ａおよびレゾルバ１３Ｂの構成は、それぞれ、公知のロータリエンコーダおよびレゾルバの一例にすぎず、本開示における実施形態を限定しない。モータの構造およびセンサの構造が備える物理的な個体差を反映した信号を出力できるセンサであれば、認証の鍵情報(モータ指紋)に関連付ける測定データを取得することが可能である。
【符号の説明】
【０２７７】
１、１Ａ、１Ｂ、１Ｃ…モータ制御システム、１０…検出部、１１、１２、１３…センサ、２０…増幅部、２１、２２、２３…差動増幅器、３０、３０Ａ、３０Ｂ…位置推定部、３１…ＡＤ変換部、３１１、３１２、３１３…ＡＤ変換回路、３２１…交差位置検出部、３２２…分割検出部、３２３…線分接続部、３２４…補正部、３２４１…第１補正部、３２４２…第２補正部、３２４３…第３補正部、３２５…正規化部、３３、３３Ａ、３３Ｂ…記憶部、４０…減算器、５０…制御部、６０…駆動部、Ｍ…モータ
【図１】
2020018168.tif 000003
【図２】
2020018168.tif 000004
【図３】
2020018168.tif 000005
【図４】
2020018168.tif 000006
【図５】
2020018168.tif 000007
【図６Ａ】
2020018168.tif 000008
【図６Ｂ】
2020018168.tif 000009
【図７】
2020018168.tif 000010
【図８】
2020018168.tif 000011
【図９】
2020018168.tif 000012
【図１０】
2020018168.tif 000013
【図１１】
2020018168.tif 000014
【図１２】
2020018168.tif 000015
【図１３】
2020018168.tif 000016
【図１４】
2020018168.tif 000017
【図１５】
2020018168.tif 000018
【図１６】
2020018168.tif 000019
【図１７】
2020018168.tif 000020
【図１８】
2020018168.tif 000021
【図１９】
2020018168.tif 000022
【図２０】
2020018168.tif 000023
【図２１】
2020018168.tif 000024
【図２２】
2020018168.tif 000025
【図２３Ａ】
2020018168.tif 000026
【図２３Ｂ】
2020018168.tif 000027
【図２４】
2020018168.tif 000028
【図２５】
2020018168.tif 000029
【図２６】
2020018168.tif 000030
【図２７】
2020018168.tif 000031
【図２８】
2020018168.tif 000032
【手続補正書】
【提出日】令和1年12月10日(2019.12.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
通信回線と、
前記通信回線に接続されたモータモジュールと、
前記通信回線に接続されたストレージ装置と
を備えたモータ認証システムであって、
前記モータモジュールは、
可動子を有するモータと、
前記可動子の回転に応じて信号を出力するセンサと、
前記モータを制御するモータ制御装置と、
を備え、
前記センサは、複数の磁気センサを含み、
前記モータ制御装置は、
外部装置と通信を行うインタフェースと、
認証のための第１鍵情報が記録されている記憶装置と  
を備え、
前記第１鍵情報は、前記モータの製造ばらつきによって定まる前記モータに固有の複数の値を含み、
前記第１鍵情報は、前記可動子が特定の第１条件で回転するときに、前記複数の磁気センサが出力した信号と関連付けられており、
前記ストレージ装置は、前記通信回線を介して集められた前記第１鍵情報である測定データを格納し、
前記測定データは、前記可動子が一定速度で回転しているときに計測された前記可動子の回転量であって、前記複数の磁気センサから出力された複数の信号のうちのいずれか２個の信号が互いに交差する交差点によって区分される各セグメントに対応する前記可動子の回転量を、全てのセグメントに対応づけるデータであり、
前記複数の信号の各々には、前記複数の磁気センサの各々の製造ばらつきに起因する位相および／または振幅のずれが含まれており、
前記モータが修理されたときにおいて、前記記憶装置は、前記第１鍵情報を、前記モータの修理によって変動した、修理後の前記モータに固有の第２鍵情報に更新し、
前記第２鍵情報は、前記可動子が特定の第２条件で回転するときに、前記複数の磁気センサが出力した信号と関連付けられており、
前記モータモジュールの記憶装置において、前記第１鍵情報がモータの修理後に前記第２鍵情報に書き換えられると、前記ストレージ装置は前記通信回線を介して前記第２鍵情報である測定データを取得し、更新する、モータ認証システム。
【請求項２】
前記センサは、ホール素子またはホールＩＣである、請求項１に記載のモータ認証システム。
【請求項３】
前記モータ制御装置は、
前記外部装置から認証要求を受けると、
前記外部装置にチャレンジコードを生成して前記インタフェースを介して前記外部装置に送出し、
前記インタフェースを介して、前記チャレンジコードに応答した前記外部装置からレスポンスコードを受信し、
前記第２鍵情報および前記チャレンジコードを入力値に含む関数による演算の結果と前記レスポンスコードとを比較する、請求項１または２に記載のモータ認証システム。
【請求項４】
前記モータ制御装置は、
前記外部装置との通信接続を開始するとき、前記外部装置に認証要求を送出する、請求項１から３のいずれかに記載のモータ認証システム。
【請求項５】
前記第１鍵情報は、前記モータモジュールの出荷前に前記記憶装置に記録されている、請求項１から４のいずれかに記載のモータ認証システム。
【請求項６】
前記第１鍵情報は、前記モータモジュールの出荷後に前記記憶装置に記録される、請求項１から４のいずれかに記載のモータ認証システム。
【請求項７】
モータモジュールと外部装置との間で認証を行うモータ認証方法であって、
前記モータモジュールのモータに固有のモータ指紋情報であって、前記モータの製造ばらつきによって定まるモータ指紋情報を前記外部装置から前記モータモジュールに送信すること、
前記モータ指紋情報と、前記モータモジュールの記憶装置内に記録されているモータ指紋情報との照合による認証の結果を、前記外部装置が前記モータモジュールから受け取ること、
を含み、
前記モータが修理された場合には、少なくとも、前記記憶装置内及び前記外部装置に記録されていた、修理前の前記モータに固有の第１モータ指紋情報を、前記モータの修理によって変動した、修理後の前記モータに固有の第２モータ指紋情報に更新すること
をさらに包含する、モータ認証方法。
【請求項８】
モータモジュールと外部装置との間で認証を行うモータ認証方法であって、
前記モータモジュールのモータに固有のモータ指紋情報であって、前記モータの製造ばらつきによって定まるモータ指紋情報を前記モータモジュールが有する記憶装置から読み出すこと、
前記モータ指紋情報と、前記外部装置から前記モータモジュールに送られてきたモータ指紋情報との照合を行うこと、および
前記照合による認証の結果を前記モータモジュールから前記外部装置に送信すること、を含み、
前記モータが修理された場合には、少なくとも、前記記憶装置内及び前記外部装置に記録されていた、修理前の前記モータに固有の第１モータ指紋情報を、前記モータの修理によって変動した、修理後の前記モータに固有の第２モータ指紋情報に更新すること
をさらに包含する、モータ認証方法。
【請求項９】
前記第１モータ指紋情報および前記第２モータ指紋情報は、
前記可動子が一定速度で回転するときにセンサが出力した信号に基づいて決定されている、請求項７または８に記載のモータ認証方法。
【請求項１０】
前記センサは、ホール素子またはホールＩＣを含む複数の磁気センサである、請求項９に記載のモータ認証方法。
【請求項１１】
前記第１モータ指紋情報および前記第２モータ指紋情報は、
前記可動子が一定速度で回転しているときに計測された前記可動子の回転量であって、前記複数の磁気センサから出力された複数の信号のうちのいずれか２個の信号が互いに交差する交差点によって区分される各セグメントに対応する前記可動子の回転量を、全てのセグメントに対応づける測定データであり、
前記複数の信号の各々には、前記複数の磁気センサの各々の製造ばらつきに起因する位相および／または振幅のずれが含まれる、請求項１０に記載のモータ認証方法。
【請求項１２】
前記第１モータ指紋情報は、前記モータモジュールの出荷前または出荷後に前記記憶装置に記録される、請求項７から１１のいずれかに記載のモータ認証方法。