(57)【特許請求の範囲】
【請求項１】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、
前記モータの電流値を検出する電流検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記電流検出部によって検出された前記電流値を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項２】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、
前記モータの電圧を検出する電圧検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記電圧検出部によって検出された前記電圧を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項３】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、
前記モータの電流値を検出する電流検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記電流検出部によって検出された電流値から換算した負荷を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項４】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、
前記モータの電流値を検出する電流検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記電流検出部によって検出された電流値から換算した温度を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項５】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、
前記モータの電圧を検出する電圧検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記電圧検出部によって検出された前記電圧から換算した温度を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項６】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記第一処理で求めた前記回転位置を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項７】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、
前記モータ又はその周辺の温度を検出する温度検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、
前記温度検出部によって検出された前記温度を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項８】
前記制御部が、前記記憶部に記憶された前記初期位置データを前記第四処理で求めた差又は和に書き換える、請求項１から７の何れか一項に記載のモータ制御装置。
【請求項９】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップを記憶した記憶部と、
前記モータの電流値を検出する電流検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、
前記電流検出部によって検出された前記電流値を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項１０】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップを記憶した記憶部と、
前記モータの電圧を検出する電圧検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、
前記電圧検出部によって検出された前記電圧を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項１１】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップを記憶した記憶部と、
前記モータの電流値を検出する電流検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、
前記電流検出部によって検出された電流値から換算した負荷を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項１２】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップを記憶した記憶部と、
前記モータの電流値を検出する電流検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、
前記電流検出部によって検出された電流値から換算した温度を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項１３】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップを記憶した記憶部と、
前記モータの電圧を検出する電圧検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、
前記電圧検出部によって検出された前記電圧から換算した温度を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項１４】
駆動されると電流信号に周期的なリプルを発生させるモータと、
前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、
前記パルス信号を入力するとともに、前記モータを制御する制御部と、
入力値と出力値との関係を表した補正マップを記憶した記憶部と、
前記モータ又はその周辺の温度を検出する温度検出部と、を備え、
前記制御部が、
前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、
前記温度検出部によって検出された前記温度を前記モータの状況データとして取得する第二処理と、
前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、
前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する、モータ制御装置。
【請求項１５】
前記制御部が、前記第四処理で求めた差又は和を前記記憶部に書き込む、請求項９から１４の何れか一項に記載のモータ制御装置。
【請求項１６】
前記制御部が、前記第一処理の前に前記モータの回転向きを決定するとともに、その決定した回転向きに従って、前記第四処理における前記補正値と前記回転位置の演算を加算と減算の中から選択する、請求項１から１５の何れか一項に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータ制御装置に関する。
【背景技術】
【０００２】
車両用シート、電動ドアミラー、パワーウィンドウ等には可動部が設けられ、可動部がモータによって駆動される。可動部の位置や速度を制御装置によって正確に制御するためには、動作中のモータの回転位置を検出する必要がある。モータの回転位置を検出するべく、センサが用いられる。つまり、センサ（例えば、ホール素子、エンコーダ、リードスイッチセンサ）がモータ等に設けられ、動作中のモータの回転に同期した信号がセンサによって出力され、センサの出力信号が抽出回路（例えば、コンパレータやＡＤ変換器）を介して制御装置に入力される。
【０００３】
ところが、センサを用いると、コストアップの要因になってしまう。そこで、センサを用いずに、モータの電流信号を利用して、モータの後段回路によってモータの回転位置を検出する技術が提案されている（例えば、特許文献１、特許文献２参照）。モータが動作している際には、モータの電流信号には直流成分、低周波成分及び高周波ノイズ等が含まれており、更に、モータの回転に同期した脈動（以下、リプル（ripple）という。）成分も含まれている。特許文献１、特許文献２に記載の技術では、モータの電流信号を後段回路によって処理することによってリプル成分を抽出する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−９５８５号公報
【特許文献２】特開２００８−２８３７６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところが、モータの起動の直後や停止の直後等において、モータが回転しているにも関わらず、可動部が摩擦、遊び、誤差、慣性力等の原因で動作しなかったり、逆にモータが停止したにも関わらず、可動部が動作し続けたりすることがある。その場合、可動部の位置を正確に検出することできなかった。
そこで、本発明が解決しようとする課題は、可動部の位置を正確に検出できるようにすることである。
【課題を解決するための手段】
【０００６】
以上の課題を解決するための請求項１に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、前記モータの電流値を検出する電流検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記電流検出部によって検出された前記電流値を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
請求項９に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップを記憶した記憶部と、前記モータの電流値を検出する電流検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、前記電流検出部によって検出された前記電流値を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【０００７】
請求項２に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、前記モータの電圧を検出する電圧検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記電圧検出部によって検出された前記電圧を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
請求項１０に係る発明によれば、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップを記憶した記憶部と、前記モータの電圧を検出する電圧検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、前記電圧検出部によって検出された前記電圧を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【０００８】
請求項３に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、前記モータの電流値を検出する電流検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記電流検出部によって検出された電流値から換算した負荷を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
請求項１１に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップを記憶した記憶部と、前記モータの電流値を検出する電流検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、前記電流検出部によって検出された電流値から換算した負荷を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【０００９】
請求項４に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、前記モータの電流値を検出する電流検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記電流検出部によって検出された電流値から換算した温度を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
請求項１２に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップを記憶した記憶部と、前記モータの電流値を検出する電流検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、前記電流検出部によって検出された電流値から換算した温度を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【００１０】
請求項５に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、前記モータの電圧を検出する電圧検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記電圧検出部によって検出された前記電圧から換算した温度を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
請求項１３に係る発明によれば、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップを記憶した記憶部と、前記モータの電圧を検出する電圧検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、前記電圧検出部によって検出された前記電圧から換算した温度を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【００１１】
請求項６に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記第一処理で求めた前記回転位置を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【００１２】
請求項７に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップと、前記モータの初期位置データとを記憶した記憶部と、前記モータ又はその周辺の温度を検出する温度検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求めて、前記初期位置データにその回転量を加算し、又は前記初期位置データからその回転量を減算することで前記モータの回転位置を求める第一処理と、前記温度検出部によって検出された前記温度を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転位置に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転位置から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
請求項１４に係る発明によれば、モータ制御装置が、駆動されると電流信号に周期的なリプルを発生させるモータと、前記モータの前記電流信号からリプル成分を抽出して、そのリプル成分をパルス化したパルス信号を出力する抽出回路と、前記パルス信号を入力するとともに、前記モータを制御する制御部と、入力値と出力値との関係を表した補正マップを記憶した記憶部と、前記モータ又はその周辺の温度を検出する温度検出部と、を備え、前記制御部が、前記パルス信号のパルス数を計数することで前記モータの回転量を求める第一処理と、前記温度検出部によって検出された前記温度を前記モータの状況データとして取得する第二処理と、前記第二処理で取得した前記状況データを前記補正マップの入力値に当てはめて、それに対応する出力値を補正値として求める第三処理と、前記第一処理で求めた前記回転量に前記第三処理で求めた前記補正値を加算し、又は前記第一処理で求めた前記回転量から前記第三処理で求めた前記補正値を減算する第四処理と、を実行する。
【００１３】
請求項８に係る発明によれば、請求項１から７の何れか一項において、前記制御部が、前記記憶部に記憶された前記初期位置データを前記第四処理で求めた差又は和に書き換える。
【００１４】
請求項１５に係る発明によれば、請求項９から１４の何れか一項において、前記制御部が、前記第四処理で求めた差又は和を前記記憶部に書き込む。
【００１７】
請求項１６に係る発明によれば、請求項１から１５の何れか一項において、
前記制御部が、前記第一処理の前に前記モータの回転向きを決定するとともに、その決定した回転向きに従って、前記第四処理における前記補正値と前記回転位置の演算を加算と減算の中から選択する。
【発明の効果】
【００１８】
請求項１〜８に係る発明によれば、モータによって駆動される可動部とモータとの間でずれが生じた場合でも、可動部の位置やモータの回転位置を正確に検出することができる。また、補正マップを用いたから、モータのあらゆる状況に対しても、可動部の位置やモータの回転位置を正確に検出することができる。
【００１９】
請求項８に係る発明によれば、モータを停止させて再び起動させる場合でも、可動部の位置やモータの回転位置を正確に検出することができる。
【００２０】
請求項９〜１５に係る発明によれば、モータによって駆動される可動部とモータとの間でずれが生じた場合でも、可動部の移動量やモータの回転量を正確に検出することができる。また、補正マップを用いたから、モータのあらゆる状況に対しても、可動部の移動量やモータの回転量を正確に検出することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態に係るシート本体を示した側面図である。
【図２】同実施形態に係るモータ制御装置を示したブロック図である。
【図３】同実施形態に係るモータ制御装置を示したブロック図である。
【図４】モータの電流信号の波形を示したタイミングチャートである。
【図５】モータの電流信号の波形を示したタイミングチャートである。
【図６】電流電圧変換器、ハイパスフィルタ、バンドパスフィルタ、フィルタと差動増幅器、増幅器及び波形整形部の入力信号及び出力信号の波形を示した図である。
【図７】フィルタの周波数特性を示したグラフである。
【図８】フィルタと差動増幅器を示した回路図である。
【図９】フィルタと差動増幅器の入力信号及び出力信号の波形を示したタイミングチャートである。
【図１０】補正マップの一例を示した図面である。
【図１１】補正マップの別の一例を示した図面である。
【図１２】補正マップの別の一例を示した図面である。
【図１３】モータを起動させる処理の流れを示したフローチャートである。
【図１４】モータの動作中にモータの回転量及び回転位置を検出する処理の流れを示したフローチャートである。
【図１５】モータを停止させる処理の流れを示したフローチャートである。
【図１６】モータの回転量及び回転位置を補正する処理の流れを示したフローチャートである。
【図１７】フィルタの周波数特性を示したグラフである。
【図１８】フィルタの周波数特性を示したグラフである。
【発明を実施するための形態】
【００２２】
以下に、本発明を実施するための形態について図面を用いて説明する。但し、以下に述べる実施形態には、本発明を実施するために技術的に好ましい種々の限定が付されているが、本発明の範囲を以下の実施形態及び図示例に限定するものではない。
【００２３】
図１は、車両用シート装置のシート本体９０の側面図である。
図１に示すように、この車両用シート装置は、乗員が座るシート本体９０を備える。シート本体９０は、複数の可動部を有する。シート本体９０の可動部としては、バックレスト９３、シートボトム９２、ヘッドレスト９４、アームレスト９５及びレッグレスト９６がある。シート本体９０の可動部について詳細に説明する。
【００２４】
シートボトム９２がレール９１の上に搭載され、シートボトム９２がレール９１よって前後方向にする。シートボトム９２の前部が昇降する。シートボトム９２の後部も昇降する。バックレスト９３がリクライニング機構によってシートボトム９２の後端部に連結され、バックレスト９３がリクライニング機構によってその下端部を中心にして前後に回転する。ヘッドレスト９４がバックレスト９３の上端部に連結され、ヘッドレスト９４がバックレスト９３に対して相対的に上下動する。また、ヘッドレスト９４がバックレスト９３に対して相対的に前後に起伏する。アームレスト９５がバックレスト９３の側面に連結され、アームレスト９５がバックレスト９３とアームレスト９５の連結部を中心にして水平状態から垂直状態に及びその逆に回転する。レッグレスト９６がシートボトム９２の前端部に連結され、レッグレスト９６がシートボトム９２とレッグレスト９６との連結部を中心にして跳ね上げ状態から垂下状態に及びその逆に移動する。
【００２５】
図２は、車両用シート装置のモータ制御装置１のブロック図である。この車両用シート装置は、図２に示すようなモータ制御装置１を備える。モータ制御装置１は、モータ２Ａ〜２Ｈ、抽出回路３Ａ〜３Ｈ、モータドライバ６Ａ〜６Ｈ、Ａ／Ｄコンバータ７Ａ〜７Ｈ、Ａ／Ｄコンバータ８Ａ〜８Ｈ、制御部４及び記憶部５を備える。
【００２６】
制御部４は、ＣＰＵ４ａ及びＲＡＭ４ｂ等を有するコンピュータである。ＣＰＵ４ａは、数値計算、情報処理、機器制御等の各種処理を行う。ＲＡＭ４ｂは、一時記憶領域としての作業領域をＣＰＵ４ａに提供する。
【００２７】
記憶部５は、制御部４に接続されている。記憶部５は、不揮発性メモリ、ハードディスクといった読み書き可能な記憶媒体である。記憶部５は、一つの記憶媒体からなるものでもよいし、複数の記憶媒体を組み合わせたものでもよい。
【００２８】
記憶部５には、制御部４にとって読み取り可能なプログラム５Ｚが格納されている。制御部４は、プログラム５Ｚを読み込んでそのプログラム５Ｚに従った処理を行ったり、そのプログラム５Ｚによって各種機能を実現したりする。なお、記憶部５が複数の記憶媒体を組み合わせたものである場合、プログラム５Ｚが記憶部５のＲＯＭに格納されていてもよい。
【００２９】
図１に示すように、モータ２Ａ〜２Ｈはシート本体９０に設けられている。モータ２Ａ〜２Ｈは、シート本体９０の複数の可動部をそれぞれ駆動する。
【００３０】
モータ２Ａは、リクライニング用モータであって、バックレスト９３を前後に回転させる。モータ２Ｂは、前後スライド用モータであって、シートボトム９２を前後に移動させる。モータ２Ｃは、前部昇降用モータであって、シートボトム９２の前部を上下動させる。モータ２Ｄは、後部昇降用モータであって、シートボトム９２の後部を上下動させる。モータ２Ｅは、レッグレスト用モータであって、レッグレスト９６を回転させる。モータ２Ｆは、アームレスト用モータであって、アームレスト９５を回転させる。モータ２Ｇは、ヘッドレスト昇降用モータであって、モータ２Ｇはヘッドレスト９４を上下動させる。モータ２Ｈは、ヘッドレスト傾動用モータである。モータ２Ｈはヘッドレスト９４を前後に傾動させる。
【００３１】
モータ２Ａは、直流モータである。電流がモータ２Ａに流れると、モータ２Ａが回転するとともに、モータ２Ａが周期的なリプル（ripple）を電流に発生させる。モータ２Ａの電流信号について図４及び図５を参照して説明する。図４は、モータ２Ａが駆動される際にモータ２Ａに流れる電流のレベルの変化を示したチャートである。図５は、図４に示されたＡ部における時間及び電流のスケールを大きくして示したチャートである。
【００３２】
図４において、時刻Ｔ１はモータ２Ａが起動したタイミングであり、時刻Ｔ２はモータ２Ａが安定的に動作し始めるタイミングである。時刻Ｔ３は、モータ２Ａによって駆動される可動部がストッパ等に当接して、モータ２Ａの動力をバックレスト９３に伝える伝動機構が拘束され始めるタイミングである。時刻Ｔ４は、モータ２Ａが停止するタイミングである。
図４及び図５に示すように、モータ２Ａの電流信号は直流成分、リプル成分及び一又は複数の周波成分（交流成分）を含み、周波成分及びリプル成分が直流成分に重畳している。モータ２Ａの電流信号のうち、電流のレベルが急激に変化した高周波成分はノイズである（例えば、符号ｎ参照）。なお、図５は、高周波ノイズ成分がないものとして図示されている。
【００３３】
時刻Ｔ１から時刻Ｔ２までの期間Ｐ１では、リプル成分ｒ１と、リプル成分ｒ１よりも周波数が低い低周波成分とが直流成分に重畳している。期間Ｐ１のうちモータ２Ａの起動直後では、慣性力の影響により低周波成分の電流レベルが大きく、その後、低周波成分の電流レベルが時間の経過に伴って緩やかに減少する。また、モータ２Ａの起動直後では、低周波成分よりも周波数が高いリプル成分ｒ１の振幅が大きく、その後、リプル成分ｒ１の周波数が時間の経過に伴って漸増するとともに、リプル成分ｒ１の振幅が時間の経過に伴って漸減する。
時刻Ｔ２から時刻Ｔ３までの期間Ｐ２では、リプル成分ｒ２と、リプル成分ｒ２よりも周波数が低い低周波成分とが直流成分に重畳し、直流成分がほぼ一定で安定し、低周波成分の周波数及び振幅が安定し、リプル成分ｒ２の周波数及び振幅が安定している。リプル成分ｒ２の周波数が低周波成分の周波数よりも高くなるのは、モータ２Ａに内蔵された複数のコイルが巻き線抵抗に差を有するためである。
時刻Ｔ３から時刻Ｔ４までの期間Ｐ３では、モータの電流信号のうち低周波成分の周波数が低くなり、低周波成分の電流レベルが時間の経過とともに漸増する。期間Ｐ３では、モータの電流信号のうちリプル成分ｒ３の周波数が時間の経過に伴って漸減し、リプル成分ｒ３の振幅が時間の経過に伴って漸増する。
【００３４】
モータ２Ａの電流信号のうち低周波成分及びリプル成分の周波数及び振幅は、様々な環境（例えば、モータ２Ａに対する負荷、環境温度、モータ２Ａの電源電圧等）の影響を受ける。そのため、環境が変化すれば、低周波成分及びリプル成分の周波数及び振幅が変化する。
【００３５】
抽出回路３Ａは、以上のようなモータ２Ａの電流信号からリプル成分を抽出して、リプル成分をパルス化し、リプル成分がパルス化されてなるパルス信号を制御部４に出力する。抽出回路３Ａについて具体的に説明する。
【００３６】
図３に示すように、抽出回路３Ａは、電流電圧変換器１０、ハイパスフィルタ（High-pass Filter）２０、バンドパスフィルタ（Band-pass Filter）３０、フィルタ４０、差動増幅器５０、増幅器６０及び波形整形部７０を備える。図６は、電流電圧変換器１０、ハイパスフィルタ２０、バンドパスフィルタ３０、フィルタ４０と差動増幅器５０、増幅器６０及び波形整形部７０の入力信号及び出力信号を説明するための図である。図６において、電流電圧変換器１０、ハイパスフィルタ２０及びバンドパスフィルタ３０の入力信号と出力信号が示されている期間は、図４における時刻Ｔ１から期間Ｐ２の初期にかけてである。フィルタ４０と差動増幅器５０、増幅器６０及び波形整形部７０の入力信号及び出力信号が示されている期間は、図４における期間Ｐ２の一部である。
【００３７】
電流電圧変換器１０は、モータ２Ａの電流信号を入力する。電流電圧変換器１０は、入力したモータ２Ａの電流信号を電圧信号に変換する。具体的には、電流電圧変換器１０が抵抗器１１を有し、抵抗器１１がグランドとモータ２Ａの間に接続され、モータ２Ａの電流信号が抵抗器１１とモータ２Ａの間における電圧信号に変換される。電流電圧変換器１０は、変換した電圧信号をハイパスフィルタ２０及びバンドパスフィルタ３０を介してフィルタ４０及び差動増幅器５０に出力する。なお、電流電圧変換器１０は、オペアンプを用いたもの（例えば、負帰還型電流電圧変換器）でもよい。
【００３８】
ハイパスフィルタ２０は、電流電圧変換器１０によって変換された電圧信号（電流電圧変換器１０の出力信号）を入力する。ハイパスフィルタ２０は、電流電圧変換器１０によって変換された電圧信号（電流電圧変換器１０の出力信号）のうち高周波成分を通過させ、低周波成分を減衰させる。つまり、ハイパスフィルタ２０は、電流電圧変換器１０によって変換された電圧信号のうち直流成分を除去する。ハイパスフィルタ２０は、バンドパスフィルタ３０を介して、低周波成分が減衰した信号をフィルタ４０及び差動増幅器５０に出力する。
ハイパスフィルタ２０は、オペアンプを用いたもの（例えば、負帰還型ハイパスフィルタ、正帰還型ハイパスフィルタ）又は抵抗器・キャパシタを用いたもの（例えば、ＣＲハイパスフィルタ）である。
【００３９】
バンドパスフィルタ３０は、電流電圧変換器１０によって変換された電圧信号をハイパスフィルタ２０を介して入力する。バンドパスフィルタ３０は、電流電圧変換器１０によって変換された電圧信号（ハイパスフィルタ２０の出力信号）のうち所定周波数帯域の成分を通過させ、その所定周波数帯域外の成分を減衰させる。つまり、バンドパスフィルタ３０は、電流電圧変換器１０によって変換された電圧信号（ハイパスフィルタ２０の出力信号）のうち高周波ノイズ成分を除去するとともに、ハイパスフィルタ２０によって除去しきれなかった低周波成分を除去する。バンドパスフィルタ３０は、所定周波数帯域外の成分を減衰させた信号をフィルタ４０及び差動増幅器５０に出力する。
バンドパスフィルタ３０は、オペアンプを用いたもの（例えば、多重負帰還型バンドパスフィルタ、多重正帰還型バンドパスフィルタ）又は抵抗器・キャパシタを用いたものである。
【００４０】
フィルタ４０は、電流電圧変換器１０によって変換された電圧信号をハイパスフィルタ２０及びバンドパスフィルタ３０を介して入力し、その信号を濾波する。フィルタ４０は、濾波した信号を差動増幅器５０に出力する。
【００４１】
図７は、フィルタ４０の周波数特性を示したグラフである。
図７に示すように、フィルタ４０は、バンドパスフィルタである。フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうち、低カットオフ周波数ｆｃ１から高カットオフ周波数ｆｃ２までの間の中間周波数帯域の成分を通過させる。低カットオフ周波数ｆｃ１＜高カットオフ周波数ｆｃ２である。なお、カットオフ周波数とは、出力電力が入力電力の1/2となる周波数を指す。つまり、ゲインＧが−3dbとなる周波数がカットオフ周波数である。
また、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうち、低カットオフ周波数ｆｃ１を下回る低周波域の成分を減衰させる。具体的には、低カットオフ周波数ｆｃ１を下回る低周波域において、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）に含まれる成分の周波数が低いほど減衰率がより高くなるように、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）の低周波域成分を減衰させる。
また、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうち、高カットオフ周波数ｆｃ２を超える高周波域の成分を減衰させる。具体的には、高カットオフ周波数ｆｃ２を超える高周波域において、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）に含まれる成分の周波数が低いほど減衰率がより低くなるように、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）の高周波域成分を減衰させる。
【００４２】
図４及び図５に示したように、モータ２Ａの電流信号は、リプル成分と、そのリプル成分よりも周波数が低い低周波成分とを重畳したものである。リプル成分の周波数は実験・測定等によって予め調べられ、フィルタ４０の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、フィルタ４０の高カットオフ周波数ｆｃ２がリプル成分の周波数（例えば、常温時の周波数）よりも低く設定されている。従って、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうちリプル成分を低周波成分（低周波成分はリプル成分よりも周波数が低い。）よりも高い減衰率で減衰させる。つまり、フィルタ４０は、リプル成分を低周波成分よりも効率的に除去する。従って、フィルタ４０は、リプル成分を除去した信号を差動増幅器５０に出力する。
【００４３】
差動増幅器５０は、電流電圧変換器１０によって変換された電圧信号をハイパスフィルタ２０及びバンドパスフィルタ３０を介して入力するとともに、フィルタ４０の出力信号を入力する。差動増幅器５０は、入力したフィルタ４０の出力信号と、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）の差分を取って、その差分を増幅する。差動増幅器５０は、その差分を表す差分信号を増幅器６０に出力する。
【００４４】
図８は、フィルタ４０と差動増幅器５０の一例を示した回路図である。図９（ａ）は図８に示されたＡ部における電圧信号の波形を示したタイミングチャートであり、図９（ｂ）は図８に示されたＢ部における電圧信号の波形を示したタイミングチャートであり、図９（ｃ）は図８に示されたＣ部における電圧信号の波形を示したタイミングチャートである。
【００４５】
図８に示すように、フィルタ４０は、ハイパスフィルタ４１、ローパスフィルタ４２及びハイパスフィルタ４３を有する。バンドパスフィルタ３０の出力がハイパスフィルタ４１の入力に接続され、ハイパスフィルタ４１の出力がローパスフィルタ４２の入力に接続され、ローパスフィルタ４２の出力がハイパスフィルタ４３の出力に接続される。
【００４６】
ハイパスフィルタ４１は、二次のＣＲハイパスフィルタである。つまり、ハイパスフィルタ４１は、キャパシタ４１ａ、抵抗器４１ｂ、キャパシタ４１ｃ及び抵抗器４１ｄを有する。なお、ハイパスフィルタ４１が一つのキャパシタ及び抵抗器からなる一次のＣＲハイパスフィルタであってもよい。また、ハイパスフィルタ４１が三次以上のＣＲハイパスフィルタでもよい。
ローパスフィルタ４２は、二次のＲＣローパスフィルタである。つまり、ローパスフィルタ４２は、抵抗器４２ａ、キャパシタ４２ｂ、抵抗器４２ｃ及びキャパシタ４２ｄを有する。なお、ローパスフィルタ４２が一つの抵抗器及びキャパシタからなる一次のＲＣローパスフィルタであってもよい。また、ローパスフィルタ４２が三次以上のＲＣローパスフィルタでもよい。
ハイパスフィルタ４３は、キャパシタ４３ａからなる。
【００４７】
差動増幅器５０は抵抗器５１，５２、オペアンプ５３、カップリングコンデンサ５４及びバイアス回路５５等を有する。オペアンプ５３の出力端子が抵抗器５２を介してオペアンプ５３の反転入力端子に接続され、負帰還がオペアンプ５３にかけられている。フィルタ４０の出力信号（ハイパスフィルタ４３の出力信号）が抵抗器５１を介してオペアンプ５３の反転入力端子に入力され、バンドパスフィルタ３０の出力信号がカップリングコンデンサ５４及びバイアス回路５５を介してオペアンプ５３の非反転入力端子に入力される。カップリングコンデンサ５４は、バンドパスフィルタ３０の出力信号の直流成分を除去する。バイアス回路５５は、電源電圧とグランドの間に直列された抵抗器５６，５７を有する。バイアス回路５５は、カップリングコンデンサ５４によって直流成分を除去されたバンドパスフィルタ３０の出力信号にバイアス電圧をかけて、バンドパスフィルタ３０の出力信号の基準レベルを引き上げる。なお、カップリングコンデンサ５４及びバイアス回路５５を省略してもよい。
【００４８】
差動増幅器５０によって出力された差分信号は、電流電圧変換器１０によって変換された電圧信号のうちリプル成分である。差動増幅器５０によって出力された差分信号が、バンドパスフィルタ３０の出力信号とフィルタ４０の出力信号との差分を表すからこそ、モータ２Ａの電流信号の各成分の周波数が環境変化によって変化しても、モータ２Ａの電流信号に含まれるリプルを高精度に検出することができる。
【００４９】
図３、図８に示すように、増幅器６０は、差動増幅器５０によって出力された差分信号（オペアンプ５３の出力信号）を入力する。増幅器６０は、差動増幅器５０によって出力された差分信号を増幅して、それを波形整形部７０に出力する。増幅器６０は、例えば負帰還型増幅器である。
【００５０】
波形整形部７０は、差動増幅器５０によって出力された差分信号（オペアンプ５３の出力信号）を増幅器６０を介して入力する。波形整形部７０は、差動増幅器５０によって出力された差分信号（増幅器６０の出力信号）の波形を矩形波に整形する。具体的には、波形整形部７０がコンパレータを有し、該コンパレータが、差動増幅器５０によって出力された差分信号（増幅器６０の出力信号）を基準電圧と比較することによって、差動増幅器５０によって出力された差分信号（増幅器６０の出力信号）をパルス信号に変換する。波形整形部７０は、矩形波に整形されたパルス信号を制御部４に出力する。
【００５１】
モータ２Ａの動作中では、モータ２Ａの電流信号のリプル成分が周期的であるから、制御部４に入力されるパルス信号も周期的な信号である。制御部４に入力されたパルス信号のパルス数が、モータ２Ａの回転量に換算されるとともに、モータ２Ａによって駆動されるバックレスト９３の移動量に換算される。具体的には、一パルス当たりのモータ２Ａの回転量にパルス信号のパルス数を乗じて得られた値が、モータ２Ａの回転量であり、一パルス当たりのバックレスト９３の単位移動量にパルス信号のパルス数を乗じて得られた値が、バックレスト９３の移動量である。
【００５２】
制御部４は、抽出回路３Ａの波形整形部７０によって出力されたパルス信号を入力する。制御部４は、入力したパルス信号のパルス数を計数することによって、モータ２Ａの回転量及びバックレスト９３の移動量を計数する。
【００５３】
制御部４は、起動指令、回転向き指令及び停止指令をモータドライバ６Ａに出力する。例えば、図２に示すように、一又は複数の押しボタンスイッチ等を有した入力部９ｃが操作された場合に、入力部９ｃが操作内容に応じた信号を制御部４に入力し、制御部４がその信号に応じた指令をモータドライバ６Ａに出力する。また、制御部４が各種処理（例えば、シーケンス処理）を行って所定の条件を充足した場合に、制御部４がその条件に応じた指令をモータドライバ６Ａに出力する。
【００５４】
モータドライバ６Ａは、制御部４からの指令に従ってモータ２Ａを駆動する。つまり、モータドライバ６Ａは、制御部４から起動指令及び回転向き指令を受けたら、モータ２Ａをその回転向きに起動させる。モータドライバ６は、制御部４から停止指令を受けたら、モータ２Ａを停止する。
【００５５】
Ａ／Ｄコンバータ７Ａは、電圧検出部である。つまり、Ａ／Ｄコンバータ７Ａは、モータ２Ａの電圧を検出して、その電圧信号をデジタル信号に変換して、デジタル化した電圧データを制御部４に出力する。Ａ／Ｄコンバータ７Ａによって出力される電圧データは、モータ２Ａの状況データの一種である。制御部４は、Ａ／Ｄコンバータ７Ａによって出力される電圧データを入力する。
【００５６】
Ａ／Ｄコンバータ８Ａは、電流検出部である。つまり、Ａ／Ｄコンバータ８Ａは、モータ２Ａの電流値を検出して、その電流信号をデジタル信号に変換して、デジタル化した電流データを制御部４に出力する。ここで、電流電圧変換器１０の出力信号がモータ２Ａの電流を表すので、Ａ／Ｄコンバータ８Ａは電流電圧変換器１０の出力信号をデジタル信号に変換して、それを制御部４に出力する。Ａ／Ｄコンバータ８Ａによって出力される電流データは、モータ２Ａの状況データの一種である。制御部４は、Ａ／Ｄコンバータ７Ａによって出力される電流データを入力する。
【００５７】
モータ２Ａの負荷は、モータ２Ａの電流に依存する。例えば、モータ２Ａの負荷が高くにつれて、モータ２Ａの電流が高くなる。そのため、モータ２Ａの負荷は、モータ２Ａの電流から換算される。従って、Ａ／Ｄコンバータ８Ａによって出力される電流データは、モータ２Ａの負荷データでもあって、モータ２Ａの状況データの一種である。
【００５８】
モータ制御装置１の周辺の環境温度は、モータ２Ａの電流若しくは電圧又はこれらの両方に依存する。そのため、モータ制御装置１の環境温度は、モータ２Ａの電流若しくは電圧又は電流・電圧から換算される。従って、Ａ／Ｄコンバータ７Ａによって出力される電圧データ若しくはＡ／Ｄコンバータ８Ａによって出力される電流データ又はこれらの組み合わせは、周辺の環境温度データでもあって、モータ２Ａの状況データの一種である。
【００５９】
以上にモータ２Ａ、抽出回路３Ａ、モータドライバ６Ａ、Ａ／Ｄコンバータ７Ａ及びＡ／Ｄコンバータ８Ａについて説明した。モータ２Ｂ〜２Ｈはモータ２Ａと同様であり、抽出回路３Ｂ〜３Ｈは抽出回路３Ａと同様であり、モータドライバ６Ｂ〜６Ｈはモータドライバ６Ａと同様であり、Ａ／Ｄコンバータ７Ｂ〜７ＨはＡ／Ｄコンバータ７Ａと同様であり、Ａ／Ｄコンバータ８Ｂ〜８ＨはＡ／Ｄコンバータ８Ａと同様である。なお、抽出回路３Ｂ〜３Ｈ、モータドライバ６Ｂ〜６Ｈ及びＡ／Ｄコンバータ７Ｂ〜７Ｈを省略し、抽出回路３Ａ、モータドライバ６Ａ及びＡ／Ｄコンバータ７Ａをモータ２Ａ〜２Ｈに共用してもよい。この場合、リレー回路が設けられ、そのリレー回路が制御部４からの指令に従ってモータ２Ａ〜２Ｈの何れかを選択する。そのリレー回路は、モータ２Ａ〜２Ｈの中から選択したものを抽出回路３Ａ、モータドライバ６Ａ、Ａ／Ｄコンバータ７Ａ及びＡ／Ｄコンバータ８Ａに接続し、他を抽出回路３Ａ、モータドライバ６Ａ、Ａ／Ｄコンバータ７Ａ及びＡ／Ｄコンバータ８Ａから遮断する。
【００６０】
図１に示すように、温度センサ９ｂがインターフェース９ａを介して制御部４に接続されている。温度センサ９ｂは、温度を検出して、インターフェース９ａを通じて温度データを制御部４に出力する。制御部４は、温度センサ９ｂによって出力された温度データを入力する。温度センサ９ｂから制御部４に出力される温度データは、モータ２Ａの状況データの一種である。
【００６１】
温度センサ９ｂについて具体的に説明する。温度センサ９ｂの数が複数であり、温度センサ９ｂがモータ２Ａ〜２Ｈにそれぞれ取り付けられ、モータ２Ａ〜２Ｈの温度をそれぞれ検出する。或いは、温度センサ９ｂはモータ制御装置１の周辺に設けられ、温度センサ９ｂがモータ制御装置１の周辺の環境温度を検出する。或いは、温度センサ９ｂはシート本体９０が取り付けられる車室内に配置され、温度センサ９ｂが車室の温度を検出する。或いは、温度センサ９ｂはシート本体９０が取り付けられる車室のカーエアコンに内蔵された温度センサであり、その温度センサ９ｂが車室の温度を検出する。
【００６２】
記憶部５には、初期位置データ５Ａ〜５Ｈが格納されている。
初期位置データ５Ａは、モータ２Ａが動作する前のモータ２Ａの初期の回転位置及びバックレスト９３の初期位置を表す。具体的には、図１に示すように、初期位置データ５Ａは、所定の原点位置Ｏから初期位置Ｉまでの距離を換算したパルス信号のパルス数によって表されている。初期位置データ５Ａは、予め設定されたデフォルト値であるか、又は以前にモータ２Ａが動作した際に書き込まれた値である。仮にバックレスト９３の初期位置Ｉが原点位置Ｏであれば、初期位置データ５Ａを表すパルス数はゼロである。
【００６３】
初期位置データ５Ｂは、モータ２Ｂが動作する前のモータ２Ｂの初期の回転位置及びシートボトム９２の初期の前後位置を表す。初期位置データ５Ｃは、モータ２Ｃが動作する前のモータ２Ｃの初期の回転位置及びシートボトム９２の前部の上下位置を表す。初期位置データ５Ｄは、モータ２Ｄが動作する前のモータ２Ｄの初期の回転位置及びシートボトム９２の前部の上下位置を表す。初期位置データ５Ｅは、モータ２Ｅが動作する前のモータ２Ｅの初期の回転位置及びシートボトム９２の後部の上下位置を表す。初期位置データ５Ｆは、モータ２Ｆが動作する前のモータ２Ｆの初期の回転位置及びアームレスト９５の初期位置を表す。初期位置データ５Ｇは、モータ２Ｇが動作する前のモータ２Ｇの初期の回転位置及びヘッドレスト９４の初期の上下位置を表す。初期位置データ５Ｈは、モータ２Ｈが動作する前のモータ２Ｈの初期の回転位置及びヘッドレスト９４の初期の傾きを表す。
【００６４】
モータ２Ａが動作すれば、制御部４が、抽出回路３Ａによって出力されたパルス信号のパルス数を計数することによって、モータ２Ａの回転量及びバックレスト９３の移動量を計数する。制御部４が計数値（モータ２Ａの回転量、バックレスト９３の移動量、パルス信号のパルス数）を初期位置データ５Ａに加算するか、又は計数値を初期位置データ５Ａから減算する。その差又は和が、移動後のモータ２Ａの回転位置やバックレスト９３の位置であり、モータ２Ａの状況データの一種である。以下、その差又は和を“移動後位置データ”という。モータ２Ｂ〜２Ｈの回転位置やモータ２Ｂ〜２Ｈによって移動される部材の位置についても同様である。
【００６５】
記憶部５には、入力値と出力値との関係を表した補正マップ１０５Ａ〜１０５Ｈが格納されている。
【００６６】
補正マップ１０５Ａ〜１０５Ｈは、補正ルックアップテーブル又は補正関数である。補正ルックアップテーブルは、入力値のデータ列と出力値のデータ列を対応づけたデータテーブルである。補正関数は、入力値と出力値の関係を数式で表したものである。
【００６７】
補正マップ１０５Ａ〜１０５Ｈは、入力値の数が複数となる複入力補正マップ（複入力ルックアップテーブル又は複入力関数）であってもよいし、入力値の数が単数となる単入力補正マップ（単入力ルックアップテーブル又は単入力関数）であってもよい。
【００６８】
補正マップ１０５Ａはモータ２Ａ用の補正マップであり、モータ２Ａの状況データが補正マップ１０５Ａの入力値に当てはめられる。つまり、Ａ／Ｄコンバータ７Ａから制御部４に入力される電圧データ（その電圧データから換算された環境温度データ）、Ａ／Ｄコンバータ８Ａから制御部４に入力される電流データ（その電流データから換算されたモータ２Ａの負荷データや環境温度データ）、温度センサ９ｂから制御部４に入力される温度データ又は“移動後位置データ”が、補正マップ１０５の入力値に当てはめられる。
【００６９】
補正マップ１０５Ａが単入力補正マップである場合、Ａ／Ｄコンバータ７Ａから制御部４に入力される電圧データと、Ａ／Ｄコンバータ８Ａから制御部４に入力される電流データと、温度センサ９ｂから制御部４に入力される温度データと、“移動後位置データ”とのうち何れか一つが、補正マップ１０５の入力値に当てはめられる。
【００７０】
補正マップ１０５Ａが複入力補正マップである場合、Ａ／Ｄコンバータ７Ａから制御部４に入力される電圧データ（その電圧データから換算された環境温度データ）と、Ａ／Ｄコンバータ８Ａから制御部４に入力される電流データ（その電流データから換算されたモータ２Ａの負荷データや環境温度データ）と、温度センサ９ｂから制御部４に入力される温度データと、“移動後位置データ”とのうち何れか二つ、三つ又は全てが、補正マップ１０５の入力値に当てはめられる。
【００７１】
補正マップ１０５Ａの出力値は、補正値である。
【００７２】
図１０には、補正マップ１０５Ａが単入力補正マップである場合の補正マップ１０５Ａの一例が示されている。図１０に示すように、補正マップ１０５Ａは、入力値としての負荷と、出力値としての補正値との関係を表した補正関数又は補正ルックアップテーブルである。入力値には、Ａ／Ｄコンバータ８Ａによって出力される電流データがモータ２Ａの負荷データに換算されて当てはめられる。
【００７３】
図１１には、補正マップ１０５Ａが単入力補正マップである場合の補正マップ１０５Ａの別の例が示されている。図１１に示すように、補正マップ１０５Ａは、入力値としての温度と、出力値としての補正値との関係を表した補正関数又は補正ルックアップテーブルである。入力値には、温度センサ９ｂから制御部４に入力される温度データが当てはめられるか、又はＡ／Ｄコンバータ７Ａによって出力される電圧データが換算されて当てはめられるか、又はＡ／Ｄコンバータ８Ａによって出力される電流データが換算されて当てはめられるか、Ａ／Ｄコンバータ７Ａ，８Ａによって出力される電圧データ・電流データが換算されて当てはめられる。
【００７４】
図１２には、補正マップ１０５Ａが単入力補正マップである場合の補正マップ１０５Ａの別の例が示されている。図１２に示すように、補正マップ１０５Ａは、入力値としての移動後位置と、出力値としての補正値との関係を表した補正関数又は補正ルックアップテーブルである。入力値には、制御部４によって計数されたパルス信号のパルス数と初期位置データ５Ａの差又は和（“移動後位置データ”）が当てはめられる。
【００７５】
補正マップ１０５Ｂ〜１０５Ｈはそれぞれモータ２Ｂ〜２Ｈ用の補正マップである。補正マップ１０５Ｂ〜１０５Ｈは補正マップ１０５Ａと同様なので、補正マップ１０５Ｂ〜１０５Ｈの詳細な説明を省略する。
【００７６】
プログラム５Ｚに基づく制御部４の処理の流れについて説明するとともに、制御部４の処理に伴うモータ制御装置１及び車両用シート装置の動作について説明する。
【００７７】
まず、図１３に示すように、制御部４がモータ２Ａ〜２Ｈの中から起動するモータを選択し、その起動するモータをＲＡＭ又は記憶部５に書き込む（ステップＳ１１）。例えば、ユーザが入力部９ｃを操作した場合、制御部４が入力部９ｃの入力信号に従ってモータ２Ａ〜２Ｈの中から起動するモータを選択する。又は、制御部４によって実行された処理（例えば、シーケンス処理）で所定の条件が満たされた場合に、制御部４はその条件に従ってモータ２Ａ〜２Ｈの中から起動するモータを選択する。以下では、制御部４がモータ２Ａを選択したとして説明する。
【００７８】
次に、制御部４は、モータ２Ａの回転の向き（正回転か逆回転）を決定し、その回転の向きをＲＡＭ又は記憶部５に書き込む（ステップＳ１２）。
【００７９】
次に、制御部４は、ステップＳ１２で決定した向きにモータ２Ａを起動させる（ステップＳ１３）。つまり、制御部４は、ステップＳ１２で決定した向きに従った回転向き指令をステップＳ１１で選択したモータ２Ａのモータドライバ６Ａに出力するとともに、起動指令をそのモータドライバに出力する。これにより、モータ２Ａが起動し、モータ２Ａによってバックレスト９３が移動する。例えば、ステップＳ１２で決定された回転向きが正回転である場合には、図１の側面図でバックレスト９３が時計回りに回転し、ステップＳ１３で決定された回転向きが正回転である場合には、図１の側面図でバックレスト９３が反時計回りに回転する。
【００８０】
モータ２Ａの動作中は、抽出回路３Ａがモータ２Ａの電流信号からリプル成分を抽出（検出）して、リプル成分をパルス化する。そして、抽出回路３Ａは、リプル成分がパルス化されてなるパルス信号を制御部４に出力する。
【００８１】
モータ２Ａが起動すると、制御部４は、抽出回路３Ａから入力したパルス信号に基づいて、モータ２Ａの回転量、モータ２Ａの回転位置、バックレスト９３の移動量及びバックレスト９３の位置を算出する。より具体的には、制御部４が図１４に示す処理を実行することによってモータ２Ａの回転量、モータ２Ａの回転位置、バックレスト９３の移動量及びバックレスト９３の位置を算出する。
【００８２】
図１４に示す処理について具体的に説明する。
制御部４は、Ａ／Ｄコンバータ７Ａから入力した電圧データと、Ａ／Ｄコンバータ８Ａから入力した電流データとのうち一方又は両方を所定の閾値と比較する（ステップＳ２１）。上述のように制御部４がモータ２Ａを起動させると（ステップＳ１３）、モータ２Ａに電流が通電するから、制御部４は電圧データと電流データとのうち一方又は両方が所定の閾値を上回った判定して、モータ２Ａの通電・起動を検出する（ステップＳ２１：Ｙｅｓ）。そして、制御部４が記憶部５から初期位置データ５Ａを読み込んで、制御部４の処理がステップＳ２２に移行する。
【００８３】
電流がモータ２Ａに通電すると、制御部４は抽出回路３Ａから入力したパルス信号のパルス数を計数するとともに、そのパルス数及び初期位置データ５Ａからモータ２Ａの回転位置やバックレスト９３の位置を求める（ステップＳ２２，Ｓ２３，Ｓ２４、Ｓ２５）。具体的には、まず、制御部４は、計数値Ｎをゼロにリセットする（ステップＳ２２）。その後、制御部４は、抽出回路３Ａによって出力されたパルス信号のパルスを入力するごとに（ステップＳ２３：Ｙｅｓ）、計数値Ｎに１を加算することで計数値Ｎを更新するとともに（ステップＳ２４）、読み込んだ初期位置データ５Ａに更新後の計数値Ｎを加算するか、又は読み込んだ初期位置データ５Ａから更新後の計数値Ｎを減算する（ステップＳ２５）。制御部４は、ステップＳ２５の演算をステップＳ１２で決定した向きに従って決定する。例えば、ステップＳ１２で決定した回転の向きが正回転である場合には、制御部４がステップＳ２５で加算を行い、ステップＳ１２で決定した回転の向きが逆回転である場合には、制御部４がステップＳ２５で減算を行う。勿論、回転の向きと演算の関係が逆であってもよい。
【００８４】
ステップＳ２４において更新された計数値Ｎが、制御部４によって計数されたパルス数である。制御部４によって計数されたパルス数（計数値Ｎ）は、モータ２Ａの回転量やバックレスト９３の移動量を表す。また、ステップＳ２５において求められた差や和が、モータ２Ａの回転位置やバックレスト９３の位置であって、“移動後位置データ”である。
【００８５】
制御部４は、モータ２Ａの電流の遮断を検出するまでステップＳ２３〜ステップＳ２６の処理を繰り返す（ステップＳ２６：Ｎｏ）。つまり、制御部４は、ステップＳ２５の処理の後に、Ａ／Ｄコンバータ７Ａから入力した電圧データと、Ａ／Ｄコンバータ８Ａから入力した電流データとのうち一方又は両方を所定の閾値と比較する（ステップＳ２６）。そして、電圧データと電流データとのうち一方又は両方が所定の閾値を上回っている場合には（ステップＳ２６：Ｎｏ）、制御部４の処理がステップＳ２３に戻り、電圧データと電流データとのうち一方又は両方が所定の閾値を下回っている場合には（ステップＳ２６：ｙｅｓ）、制御部４は図１４に示す処理を終了する。
【００８６】
制御部４が動作中のモータ２Ａを停止させる処理について図１５を参照して説明する。
所定の条件が満たされた場合に、制御部４が図１５に示す処理を実行する。例えば、ユーザが入力部９ｃを操作した場合、制御部４が入力部９ｃから停止信号を入力すると、制御部４が図１５に示す処理を実行する。又は、制御部４によって実行された処理（例えば、シーケンス処理）で所定の条件が満たされた場合に、制御部４が図１５に示す処理を実行する。又は、上述のステップＳ２５において求めた“移動後位置データ”が所定の値になったら、制御部４が図１５に示す処理を実行する。又は、上述のステップＳ２４において更新した計数値Ｎが所定の値になったら、制御部４が図１５に示す処理を実行する。
【００８７】
まず、制御部４は、モータ２Ａの状況データを取得する（ステップＳ３１）。以下、モータ２Ａの状況データの〔例Ａ〕〜〔例Ｇ〕について説明する。
〔例Ａ〕  制御部４は、Ａ／Ｄコンバータ８Ａから入力されたモータ２Ａの電流データをＲＡＭ又は記憶部５に一時的に記憶する。
〔例Ｂ〕  制御部４は、Ａ／Ｄコンバータ８Ａから入力されたモータ２Ａの電流データを負荷データに換算し、換算した負荷データをＲＡＭ又は記憶部５に一時的に記憶する。
〔例Ｃ〕  制御部４は、Ａ／Ｄコンバータ７Ａから入力されたモータ２Ａの電圧データをＲＡＭ又は記憶部５に一時的に記憶する。
〔例Ｄ〕  制御部４は、Ａ／Ｄコンバータ８Ａから入力されたモータ２Ａの電流データを温度データに換算し、換算した温度データをＲＡＭ又は記憶部５に一時的に記憶する。
〔例Ｅ〕  制御部４は、Ａ／Ｄコンバータ７Ａから入力されたモータ２Ａの電圧データから温度データを換算し、換算した温度データをＲＡＭ又は記憶部５に一時的に記憶する。
〔例Ｆ〕  制御部４は、Ａ／Ｄコンバータ８Ａから入力されたモータ２Ａの電流データと、Ａ／Ｄコンバータ７Ａから入力されたモータ２Ａの電圧データとから温度データを換算し、換算した温度データをＲＡＭ又は記憶部５に一時的に記憶する。
〔例Ｇ〕  制御部４は、温度センサ９ｂから入力された温度データをＲＡＭ又は記憶部５に一時的に記憶する。
【００８８】
モータ２Ａの状況データの取得後、制御部４は、モータドライバ６Ａに停止指令を出力して、モータ２Ａを停止させる（ステップＳ３２）。
【００８９】
制御部４がモータ２Ａを停止させると、モータ２Ａの電流が遮断されるので、図１４に示すように、制御部４がモータ２Ａの電流の遮断を検出し（ステップＳ２６：Ｙｅｓ）、制御部４は図１４に示す処理を終了する。なお、制御部４は、図１４に示すステップＳ２３〜ステップＳ２６の処理を繰り返している際に最後のステップＳ２５において求めた“移動後位置データ”をモータ２Ａの状況データとしてＲＡＭ又は記憶部５に一時的に記憶する（以下、この状況データを例Ｈとする）。
【００９０】
補正処理について図１６を参照して説明する。
制御部４は、モータドライバ６Ａに停止指令に停止指令を出力したら（ステップＳ３２）、図１６に示す補正処理を実行する。
制御部４は、モータ２Ａの電流の遮断を検出したら（ステップＳ４１）、モータ２Ａの状況データを入力値として補正マップ１０５Ａに当てはめる（ステップＳ４２）。補正マップ１０５Ａが単入力補正マップである場合、制御部４によって当てはめられる状況データは、〔例Ａ〕に記載の電流データ、〔例Ｂ〕に記載の負荷データ、〔例Ｃ〕に記載の電圧データ、〔例Ｄ〕に記載の温度データ、〔例Ｅ〕に記載の温度データ、〔例Ｆ〕に記載の温度データ、〔例Ｇ〕に記載の温度データ又〔例Ｈ〕に記載の“移動後位置データ”である。補正マップ１０５Ａが複入力補正マップである場合には、制御部４によって当てはめられる状況データは、これらの群より選択される２以上の状況データである。なお、補正マップ１０５Ａの入力値に当てはめる状況データが〔例Ｈ〕に記載の“移動後位置データ”のみである場合には、上述のステップＳ３１の処理を省略してもよい。
【００９１】
制御部４は、モータ２Ａの状況データを補正マップ１０５Ａの入力値に当てはめることによって、それに対応する出力値を補正値として求める（ステップＳ４２）。
【００９２】
次に、制御部４は、最後のステップＳ２５で求めた値（“移動後位置データ”）に補正値を加算するか、又は最後のステップＳ２５で求めた値（“移動後位置データ”）から補正値を減算する（ステップＳ４３）。制御部４は、ステップＳ４３の演算をステップＳ１２で決定した向きに従って決定する。例えば、ステップＳ１２で決定した回転の向きが正回転である場合には、制御部４がステップＳ４３で加算を行い、ステップＳ１２で決定した回転の向きが逆回転である場合には、制御部４がステップＳ４３で減算を行う。勿論、回転の向きと演算の関係が逆であってもよい。
【００９３】
制御部４がステップＳ４３で求めた差や和は、モータ２Ａの補正後の回転位置及びバックレスト９３の補正後の位置を表す。
【００９４】
次に、制御部４は、ステップＳ４３で求めた和や差を記憶部５に書き込む（ステップＳ４４）。具体的には、制御部４は、初期位置データ５ＡをステップＳ４３で求めた和や差に書き換える。そして、制御部４の処理が終了する。
【００９５】
更新された初期位置データ５Ａは、再びモータ２Ａが起動された際に利用される。
【００９６】
以上の動作説明では、モータ２Ａが駆動されるものとしたが、モータ２Ｂ〜２Ｈが駆動される際も同様である。モータ２Ｂ〜２Ｈが駆動される際には、補正マップ１０５Ｂ〜１０５Ｈがそれぞれ利用されるとともに、初期位置データ５Ｂ〜５Ｈがそれぞれ利用される。
【００９７】
本発明の実施の形態は、以下のような効果を奏する。
(1)  モータ２Ａが回転し始めたにも関わらず、バックレスト９３が移動しなかった場合や、モータ２Ａが停止したにも関わらず、バックレスト９３が移動し続けた場合でも、バックレスト９３の位置及びモータ２Ａの回転位置を正確に検出することができる。
(2)  補正値が定数ではなく、補正マップ１０５Ａを利用してモータ２Ａの状況データから求められたものであるから、モータ２Ａのあらゆる状況に対しても、バックレスト９３の位置及びモータ２Ａの回転位置を正確に検出することができる。
(3)  例えば、バックレスト９３の傾きによって負荷の大きさが異なる。つまり、バックレスト９３が伏した場合と、バックレスト９３が立った場合とでは、負荷の大きさが異なる。そこで、ステップＳ４２の処理において“移動後位置データ”を補正マップ１０５Ａの入力値に当てはめれば、その位置に応じた補正値が求められる。そのため、バックレスト９３の位置及びモータ２Ａの回転位置を正確に検出することができる。
(4)  補正マップ１０５Ａ〜１０５Ｈがモータ２Ａ〜２Ｈごとに準備されているから、何れのモータ２Ａ〜２Ｈが駆動されても、位置を正確に検出することができる。
(5)  モータ２Ａ〜２Ｈの回転量や回転位置を検出するためのロータリーエンコーダ等を利用していないから、コスト削減を図ることができる。
(6)  抽出回路３Ａ〜３Ｈは、モータ２Ａ〜２Ｈの電流信号に含まれるリプル成分を利用して、パルス信号を生成するものである。一方、モータ２Ａ〜２Ｈの通電・遮断に対してモータ２Ａ〜２Ｈの動作の応答が僅かに遅れるから、実際のモータ２Ａ〜２Ｈの回転位置・移動量等と、抽出回路３Ａ〜３Ｈのパルス信号に基づき算出された回転位置・移動量等との間には僅かな誤差が生じやすい。そのような場合でも、補正マップ１０５Ａ〜１０５Ｈを利用して、抽出回路３Ａ〜３Ｈのパルス信号に基づき算出された回転位置・移動量等が補正されるから、そのような誤差を解消することができる。
(7)  フィルタ４０の回路設計においてフィルタ４０の高カットオフ周波数ｆｃ２がリプル成分の周波数よりも低く設定されているから、フィルタ４０によってリプル成分を除去することができる。
(8)  差動増幅器５０が、バンドパスフィルタ３０の出力信号（電流電圧変換器１０によって変換された電圧信号のうち直流成分及び高周波ノイズ成分等が除去されたもの）と、フィルタ４０の出力信号（電流電圧変換器１０によって変換された電圧信号のうち直流成分、高周波ノイズ成分及びリプル成分等が除去されたもの）の差分を取って、それを差分信号として出力する。そのため、差動増幅器５０の出力信号は、電流電圧変換器１０によって変換された電圧信号のうちリプル成分である。差動増幅器５０の出力信号が差分信号であるからこそ、モータ２Ａの電流信号の各成分の周波数が環境変化によって変動しても、リプル成分が正確に抽出されて、モータ２Ａの電流信号中のリプルを高精度に検出することができる。
(9)  図7に示す周波数特性のうち、高カットオフ周波数ｆｃ２よりも高い領域の傾斜部分を利用したからこそ、リプル成分の周波数が温度変化により変動したものとしても、差動増幅器５０の出力信号がリプル成分として正確に抽出される。
(10)  フィルタ４０の周波数特性を利用して、フィルタ４０と差動増幅器５０によってリプル成分を抽出したから、フィルタ４０にカットオフ周波数可変型フィルタを用いなくても済む。そのため、フィルタ４０のコストを削減することができる。
(11)  抽出回路３Ａ〜３Ｈがフィードバック制御回路のような閉ループ回路でないから、モータ２の電流信号の各成分の周波数が過渡的に又は急激に変化したものとしても、リプルを正確に検出することができる。
(12)  フィルタ４０が抵抗器４１ｂ，４１ｄ，４１ａ，４１ｃ及びキャパシタ４１ａ，４１ｃ，４１ｂ，４１ｄ，４３ａからなるフィルタであるから、フィルタ４０の構成がシンプルであり、フィルタ４０のコストアップを抑えることができる。
(13)  フィルタ４０の周波数特性を利用して、フィルタ４０と差動増幅器５０によってリプル成分を抽出したから、ハイパスフィルタ２０やバンドパスフィルタ３０にカットオフ周波数可変型フィルタを用いなくても済む。そのため、ハイパスフィルタ２０やバンドパスフィルタ３０のコストアップを抑えることができる。
(14)  電流電圧変換器１０によって変換された電圧信号のうち直流成分がハイパスフィルタ２０によって除去されるから、そのハイパスフィルタ２０の後段のバンドパスフィルタ３０、フィルタ４０及び差動増幅器５０の処理が正確に行われる。
(15)  電流電圧変換器１０によって変換された電圧信号のうち所定周波数帯域外の成分がバンドパスフィルタ３０によって減衰するから、そのバンドパスフィルタ３０の後段のフィルタ４０や差動増幅器５０の処理が正確に行われる。
【００９８】
〔変形例〕
なお、本発明を適用可能な実施形態は、上述した実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。以下、変形例について説明する。以下に挙げる変形例は可能な限り組み合わせてもよい。
【００９９】
〔変形例１〕
上述のステップＳ２２において、制御部４は、計数値Ｎをゼロにリセットするのではなく、計数値Ｎを初期位置データ１０５Ａに設定してもよい。この場合、ステップＳ２５における処理が省略される。更に、ステップＳ２４においては、制御部４が、抽出回路３Ａによって出力されたパルス信号のパルスを入力するごとに、計数値Ｎに１を加算し又は減算することで計数値Ｎを更新する。制御部４は、ステップＳ２４の演算をステップＳ１２で決定した向きに従って決定する。従って、ステップＳ２４で更新した計数値Ｎが、“移動後位置データ”を表す。
【０１００】
この場合、ステップＳ４３において、制御部４が、最後のステップＳ２４で更新した計数値Ｎ（“移動後位置データ”）に補正値を加算するか、又は最後のステップＳ２４で更新した計数値Ｎ（“移動後位置データ”）から補正値を減算する。この際、制御部４は、演算を加算とするかそれとも減算とするかを、ステップＳ１２で決定した向きに従って決定する。制御部４が求めた差や和は、モータ２Ａの補正後の回転位置及びバックレスト９３の補正後の位置を表す。
【０１０１】
〔変形例２〕
ステップＳ４２の処理の後であって図１６に示す処理が終了する前に、制御部４が、最後のステップＳ２４で更新した計数値Ｎに補正値を加算するか、又は最後のステップＳ２４で更新した計数値Ｎから補正値を減算する。制御部４が求めた差や和は、計数したパルス数を補正したものであって、モータ２Ａの補正後の移動量及びバックレスト９３の補正後の移動量を表す。
その後、制御部４は、求めた差や和を記憶部５に新たに書き込む。
【０１０２】
変形例２では、バックレスト９３の位置及びモータ２Ａの回転位置に加えて、バックレスト９３の移動量およびモータ２Ａの回転量を正確に検出することができる。
【０１０３】
〔変形例３〕
検出回路３Ａ〜３Ｈは一例であり、上述の実施形態の回路に限るものではない。例えば、フィルタ４０及び差動増幅器５０を省略してもよい。その場合、リプル成分の周波数が変化しても、リプル成分を正確に抽出できるようにするために、スイッチト・キャパシタ・フィルタをバンドパスフィルタ３０の後段であって増幅器６０の前段に設けることが好ましい。スイッチト・キャパシタ・フィルタのカットオフ周波数が可変であり、リプル成分や低周波成分の周波数が変化した場合でも、スイッチト・キャパシタ・フィルタは、低周波成分を減衰させ、リプル成分を通過させる。
【０１０４】
〔変形例４〕
フィルタ４０の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、図７に示すフィルタ４０の低カットオフ周波数ｆｃ１がリプル成分の周波数（例えば、常温時の周波数）よりも高く設定されている。従って、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうちリプル成分を高周波成分（高周波成分はリプル成分よりも周波数が高い。）よりも高い減衰率で減衰させる。つまり、フィルタ４０は、リプル成分を高周波成分よりも効率的に除去する。従って、フィルタ４０は、リプル成分を除去した信号を差動増幅器５０に出力する。
【０１０５】
この場合、モータ２Ａの電流信号やフィルタ４０及び差動増幅器５０の入力信号は、リプル成分と、そのリプル成分よりも周波数が高い高周波成分とを重畳したものである。
【０１０６】
〔変形例５〕
フィルタ４０がバンドパスフィルタではなく、図１７に示すような周波数特性を有したローパスフィルタであってもよい。フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうちカットオフ周波数ｆｃ３以下の成分を通過させ、カットオフ周波数ｆｃ３を超える成分を減衰させる。具体的には、カットオフ周波数ｆｃ３を超える高周波域において、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）に含まれる成分の周波数が低いほど減衰率がより低くなるように、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）を減衰させる。
【０１０７】
フィルタ４０の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、図１７に示すフィルタ４０のカットオフ周波数ｆｃ３がリプル成分の周波数（例えば、常温時の周波数）よりも低く設定されている。従って、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうちリプル成分を低周波成分（低周波成分はリプル成分よりも周波数が低い。）よりも高い減衰率で減衰させる。つまり、フィルタ４０は、リプル成分を低周波成分よりも効率的に除去する。従って、フィルタ４０は、リプル成分を除去した信号を差動増幅器５０に出力する。
【０１０８】
この場合、モータ２Ａの電流信号やフィルタ４０及び差動増幅器５０の入力信号は、リプル成分と、そのリプル成分よりも周波数が低い低周波成分とを重畳したものである。
【０１０９】
フィルタ４０がローパスフィルタである場合、図８に示すハイパスフィルタ４１，４３が省略され、バンドパスフィルタ３０の出力がローパスフィルタ４２の入力に接続され、ローパスフィルタ４２の出力が抵抗器５１を介してオペアンプ５３の反転入力端子に接続される。
【０１１０】
〔変形例６〕
フィルタ４０がバンドパスフィルタではなく、図１８に示すような周波数特性を有したハイパスフィルタであってもよい。フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうちカットオフ周波数ｆｃ４以上の成分を通過させ、カットオフ周波数ｆｃ４を下回る成分を減衰させる。具体的には、カットオフ周波数ｆｃ４を下回る低周波域において、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）に含まれる成分の周波数が低いほど減衰率がより高くなるように、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）を減衰させる。
【０１１１】
フィルタ４０の回路設計において、温度変化によるリプル成分の周波数の変動も考慮しつつ、図１８に示すフィルタ４０のカットオフ周波数ｆｃ４がリプル成分の周波数（例えば、常温時の周波数）よりも高く設定されている。従って、フィルタ４０は、電流電圧変換器１０によって変換された電圧信号（バンドパスフィルタ３０の出力信号）のうちリプル成分を高周波成分（高周波成分はリプル成分よりも周波数が高い。）よりも高い減衰率で減衰させる。つまり、フィルタ４０は、リプル成分を高周波成分よりも効率的に除去する。従って、フィルタ４０は、リプル成分を除去した信号を差動増幅器５０に出力する。
【０１１２】
フィルタ４０がハイパスフィルタである場合、図８に示すローパスフィルタ４２が省略され、バンドパスフィルタ３０の出力がハイパスフィルタ４１の入力に接続されている。
【０１１３】
〔変形例７〕
フィルタ４０がバンドパスフィルタではなく、バンドストップフィルタであってもよい。
【０１１４】
〔変形例８〕
ハイパスフィルタ２０とバンドパスフィルタ３０の一方又は両方を省略してもよい。ハイパスフィルタ２０を省略した場合には、電流電圧変換器１０の出力がバンドパスフィルタ３０の入力に接続される。バンドパスフィルタ３０を省略した場合には、ハイパスフィルタ２０の出力がフィルタ４０の入力及び差動増幅器５０の入力に接続される。ハイパスフィルタ２０とバンドパスフィルタ３０の両方が省略されている場合には、電流電圧変換器１０の出力がフィルタ４０の入力及び差動増幅器５０の入力に接続される。
【０１１５】
〔変形例９〕
モータ制御装置１が電動ドアミラー装置に組み込まれ、電動ドアミラー装置の可動部（例えば、ドアに対してミラーハウジングの格納及び展開をする格納機構、ミラーハウジングに対してミラーを上下に振るチルト機構、ミラーハウジングに対してミラーを左右に振るパン機構）がモータ制御装置１のモータ２Ａによって駆動されてもよい。モータ制御装置１がパワーウィンドウ装置に組み込まれ、パワーウィンドウ装置の可動部（例えば、ウィンドウレギュレター）がモータ２Ａによって駆動されてもよい。
【０１１６】
〔変形例１０〕
フィルタ４０がオペアンプを用いたもの（例えば、負帰還型ローパスフィルタ、正帰還型ローパスフィルタ、多重負帰還型バンドパスフィルタ、多重正帰還型バンドパスフィルタ）でもよい。
【符号の説明】
【０１１７】
１  モータ制御装置
２Ａ〜２Ｈ  モータ
３  抽出装置
４  制御部
５  記憶部
５Ａ〜５Ｈ  初期位置データ
７Ａ〜７Ｈ  Ａ／Ｄコンバータ（電圧検出部）
８Ａ〜８Ｈ  Ａ／Ｄコンバータ（電流検出部）
１０５Ａ〜１０５Ｈ  補正マップ
【図１】
0005749527.tif 000002
【図２】
0005749527.tif 000003
【図４】
0005749527.tif 000004
【図５】
0005749527.tif 000005
【図６】
0005749527.tif 000006
【図７】
0005749527.tif 000007
【図８】
0005749527.tif 000008
【図９】
0005749527.tif 000009
【図１０】
0005749527.tif 000010
【図１１】
0005749527.tif 000011
【図１２】
0005749527.tif 000012
【図１３】
0005749527.tif 000013
【図１４】
0005749527.tif 000014
【図１５】
0005749527.tif 000015
【図１６】
0005749527.tif 000016
【図１７】
0005749527.tif 000017
【図１８】
0005749527.tif 000018
【図３】
0005749527.tif 000019