(57)【特許請求の範囲】
【請求項１】
減速装置を介して開閉パネルに連結されたアーマチュア軸を有するモータと、
開閉パネルを開方向に移動させる開指令信号を発生する開スイッチと、
開閉パネルを閉方向に移動させる閉指令信号を発生する閉スイッチと、
開スイッチからの開指令信号に応じて開駆動信号を発生し、閉スイッチからの閉指令信号に応じて閉駆動信号を発生する制御手段と、
制御手段からの開駆動信号に応じて開閉パネルの開方向に相当する回転を与える駆動電流をモータに供給し、閉駆動信号に応じて開閉パネルの閉方向に相当する回転を与える駆動電流をモータに供給する駆動手段と、
モータのアーマチュア軸の回転に応じて位相差を有するパルス信号を発生するモータ回転検出手段を備えたサンルーフ制御装置において、
制御手段は、モータ回転検出手段から発生するパルス信号に基いてモータの単位時間当たりの出力軸回転数を算出する出力軸回転数算出ブロックと、
出力軸回転数算出ブロックからの出力軸回転数を所定数だけ保存する積分補正前出力軸回転数メモリブロックと、
モータ回転検出手段から発生するパルス信号数をカウントして開閉パネルの現在位置データを出力するパネル位置カウンタと、
出力軸回転数算出ブロックからの出力軸回転数を積分処理して補正回転数データを得る積分補正ブロックと、
積分補正ブロックに積分フィルタ定数の収束値を与える積分フィルタ定数データブロックと、
積分補正ブロックに積分フィルタ定数に設定されるべき値を与える積分フィルタ定数データＲＯＭと、
積分補正ブロックに積分フィルタ定数から積分演算毎に所定値だけ減算される値を与える積分フィルタ定数減算値データＲＯＭと、
積分補正ブロックで算出した出力軸回転数を所定数だけ保存する積分補正後出力軸回転数メモリブロックを備え、
積分補正ブロックは、モータの駆動開始直後において、出力軸回転数算出ブロックで算出した出力軸回転数と、積分補正後出力軸回転数メモリブロックに保存されている前回計算した出力軸補正回転数と、その時点での積分フィルタ定数と、予め設定した計算間隔またはモータ回転検出手段からのパルス信号に基づいて、パネル位置カウンタからの現在位置データに対応して、データＲＯＭから積分フィルタ定数を読み込んで積分補正を行うことにより補正した出力軸回転数を算出することを特徴とする車両用開閉パネルの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、自動車のサンルーフ装置やパワーウインド装置等の開閉装置において、とくに開閉パネルをモータにより閉方向に作動させる際に用いられる車両用開閉パネルの制御装置に関するものである。
【０００２】
【従来の技術】
自動車のサンルーフ装置やパワーウインド装置等の開閉装置において、開閉パネルの駆動用のモータには、電流供給停止後のアーマチュアの惰性回転と開閉パネルの惰性移動のずれによって生じる負荷や、開閉パネルが全閉位置や全開位置で拘束された場合に受ける荷重を吸収するために、モータの出力ギヤと出力軸の間に樹脂やゴム製のダンパが設けてあることから、モータが回転を始めた直後には、ダンパの戻りや、その後の捩れ、あるいは温度変化などによって、モータの回転に乱れが生じることがあり、とくに、回転数が通常よりも高くオーバーシュートした変動となる。
【０００３】
そこで、モータの回転数（回転速度）を監視し、開閉パネルが閉方向に移動している際に回転数が減少したことを検出した場合に、挟み込み発生と判断して開閉パネルを反転（開方向駆動）するような制御を行う挟み込み防止機能を備えた従来の開閉装置には、駆動開始直後においてモータの回転数がオーバーシュートしてから通常の値まで低下した際に、回転数の低下を異物の挟み込みと誤判断しないように、モータの起動直後の一定時間、あるいはモータが起動したのち開閉パネルが所定の距離だけ移動するまでの間は、上記の挟み込み検出をマスクする制御を行うものがあった。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記したような従来の車両用開閉パネルの制御装置では、モータの動作開始直後に挟み込み検出のマスク領域を設けていることから、万一マスク領域で挟み込みが発生すると、当然のことながら反転制御が行われず、これにより大きな挟み込み荷重が発生する恐れがあることから、挟み込み防止機能をより完全なものにするうえでの改善が望まれていた。
【０００５】
【発明の目的】
本発明は、上記従来の状況に鑑みて成されたもので、車両用開閉パネルの制御装置において、駆動用モータの動作開始直後のマスク領域を短くすることができると共に、誤反転や挟み込みを防止することができる車両用開閉パネルの制御装置を提供することを目的としている。
【０００６】
【課題を解決するための手段】
本発明に係わる車両用開閉パネルの制御装置は、請求項１に記載しているように、減速装置を介して開閉パネルに連結されたアーマチュア軸を有するモータと、開閉パネルを開方向に移動させる開指令信号を発生する開スイッチと、開閉パネルを閉方向に移動させる閉指令信号を発生する閉スイッチと、開スイッチからの開指令信号に応じて開駆動信号を発生し、閉スイッチからの閉指令信号に応じて閉駆動信号を発生する制御手段と、制御手段からの開駆動信号に応じて開閉パネルの開方向に相当する回転を与える駆動電流をモータに供給し、閉駆動信号に応じて開閉パネルの閉方向に相当する回転を与える駆動電流をモータに供給する駆動手段と、モータのアーマチュア軸の回転に応じて位相差を有するパルス信号を発生するモータ回転検出手段を備えたサンルーフ制御装置において、制御手段は、モータ回転検出手段から発生するパルス信号に基いてモータの単位時間当たりの出力軸回転数を算出する出力軸回転数算出ブロックと、出力軸回転数算出ブロックからの出力軸回転数を所定数だけ保存する積分補正前出力軸回転数メモリブロックと、モータ回転検出手段から発生するパルス信号数をカウントして開閉パネルの現在位置データを出力するパネル位置カウンタと、出力軸回転数算出ブロックからの出力軸回転数を積分処理して補正回転数データを得る積分補正ブロックと、積分補正ブロックに積分フィルタ定数の収束値を与える積分フィルタ定数データブロックと、積分補正ブロックに積分フィルタ定数に設定されるべき値を与える積分フィルタ定数データＲＯＭと、積分補正ブロックに積分フィルタ定数から積分演算毎に所定値だけ減算される値を与える積分フィルタ定数減算値データＲＯＭと、積分補正ブロックで算出した出力軸回転数を所定数だけ保存する積分補正後出力軸回転数メモリブロックを備え、積分補正ブロックは、モータの駆動開始直後において、出力軸回転数算出ブロックで算出した出力軸回転数と、積分補正後出力軸回転数メモリブロックに保存されている前回計算した出力軸補正回転数と、その時点での積分フィルタ定数と、予め設定した計算間隔またはモータ回転検出手段からのパルス信号に基づいて、パネル位置カウンタからの現在位置データに対応して、データＲＯＭから積分フィルタ定数を読み込んで積分補正を行うことにより補正した出力軸回転数を算出することを特徴としている。
【０００７】
【発明の作用】
図１は、本発明に係わる車両用開閉パネルの制御装置の動作原理を示すものであって、閉方向に向けて作動を開始した時の開閉パネルの移動位置と、モータの出力軸の単位時間当たり回転数（回転速度）およびその変動の関係を図示したものである。なお、モータの出力軸回転数および回転変動については、例えばモータのアーマチュア軸に取付けた回転センサから発生するパルス信号の周期およびその変動を測定することによって把握することができ、開閉パネルの位置については、上記パルス信号のエッジ数を回転方向に応じてインクリメントあるいはデクリメントするカウンタによって把握することができる。
【０００８】
モータの出力軸回転数は、閉スイッチのオン操作後、急速に上昇して安定したものとなるが、モータが回転を始めた直後には、ダンパの戻りや、その後の捩れ、あるいは温度変化などによって、モータの回転に乱れが生じることがあり、とくに実線で示すように、回転数が通常よりも高くオーバーシュートした変動となる場合がある。このため、開閉パネルを閉方向に作動させた場合、出力回転数がオーバーシュート状態から通常回転に向けて低下する際に、その出力軸回転数の低下を挟み込みと誤判断することがある。なお、従来では長いマスク領域を設けることで誤判断を防止していた。
【０００９】
そこで、本発明に係わる車両用開閉パネルの制御装置では、開閉パネルを閉方向に作動させた際に、モータの駆動開始直後から出力軸回転数を積分フィルタ処理し、図１において、出力軸回転数が急激に上昇しているとき、すなわち開閉パネルの移動距離がＭＰ１以内であるときには、きわめて低い積分フィルタ定数ＸＢ１を設定し、出力軸回転数がオーバーシュート領域で増加しているとき、すなわち開閉パネルの移動距離がＭＰ１とＭＰ２の間であるときには、高い積分フィルタ定数ＸＢ２を設定し、出力軸回転数がオーバーシュート領域で減少した後、すなわち開閉パネルの移動距離がＭＰ２を超えた後には、低い積分フィルタ定数ＸＢ３を設定する。これにより、図１中に点線で示すように、オーバーシュート領域の出力軸回転数が補正されることとなり、この補正した出力軸回転数に基づいて制御を行うことにより、モータの起動直後の誤反転を防止すると共に、マスク領域を短いものにして挟み込み防止機能をより確実なものにする。
【００１０】
【実施例】
図２は、本発明に係わる車両用開閉パネルの制御装置の一例としてサンルーフ制御装置の構成を示すブロック図である。図に示すサンルーフ制御装置１は、開スイッチ２と、閉スイッチ３と、駆動用のモータ４を備えたアクチュエータＡＣから、主として構成されており、アクチュエータＡＣには、２つのホールＩＣ、ＩＣ１およびＩＣ２からなるモータ回転検出手段５と、出力回路（駆動手段）６と、制御手段ＭＣＵ（microprogram control unit）が組込まれている。
【００１１】
制御手段ＭＣＵには、エッジ検出ブロック７、出力軸回転数算出ブロック８、積分補正前出力軸回転数メモリブロック９、計算間隔タイマ１０、パネル位置カウンタ１１、積分フィルタ定数データブロック１２、積分フィルタ定数データＲＯＭ１３、積分フィルタ定数減算値データＲＯＭ１４、積分補正後出力軸回転数メモリブロック１５、積分補正ブロック１６、入力ブロック１７、制御ブロック１８および出力ブロック１９が内蔵されている。
【００１２】
開スイッチ２は、サンルーフ装置における開閉パネルであるリッドＬを開ける（スライド開）ときにオン操作され、オン操作により開指令信号を発生する。また、閉スイッチ３は、リッドＬを閉じる（スライド閉）ときにオン操作され、これによって閉指令信号を発生する。これらスイッチ２，３の操作によって発生した開指令信号あるいは閉指令信号は、制御手段ＭＣＵの入力ブロック１７に供給される。
【００１３】
駆動用モータ４は、アーマチュア軸４ａを有し、アーマチュア軸４ａはウオームおよびウオームホイールからなる減速機構を介して出力軸４ｂに連結され、出力軸４ｂには、図示しない駆動機構を介してリッドＬが連結されており、モータ４への駆動電流の供給に基くアーマチュア軸４ａおよび出力軸４ｂの正逆回転によって、リッドＬが開閉作動する。
【００１４】
モータ回転検出手段６は、上記したように２つのホールＩＣからなり、これらホールＩＣ１およびＩＣ２は、アーマチュア軸４ａに取付けられたマグネットの周辺部に、非接触にして９０度相対して配置されている。
【００１５】
モータ回転検出手段５のホールＩＣ１およびＩＣ２は、モータ４のアーマチュア軸４ａの回転に応じて、互いに９０度の位相差を持つパルス信号をそれぞれ発生する。これらホールＩＣ１およびホールＩＣ２が発生したパルス信号は、それぞれ制御手段ＭＣＵのエッジ検出ブロック７に供給される。
【００１６】
エッジ検出ブロック７は、モータ回転検出手段５のホールＩＣ１およびホールＩＣ２からの入力信号より、その立ち上り／立ち下がりエッジを検出し、出力軸回転数算出ブロック８に対して、モータ４の出力軸４ｂの回転数の計算開始を促す。
【００１７】
出力軸回転数算出ブロック８は、エッジ検出ブロック７からのホールＩＣ信号の立ち上り／立ち下がり信号に基き、エッジが検出される度毎にエッジ間の時間を測定してアーマチュア軸４ａの回転数を算出し（すなわち、この実施例においては、モータ回転検出手段５から発生する２つのパルス信号エッジ間の時間データ４個でアーマチュア軸１回転の時間に相当することになる）、アーマチュア軸４ａと出力軸４ｂとの減速比を乗じて単位時間当たりの出力軸４ｂの回転数（回転速度）を算出する。当該出力軸回転数算出ブロック８０による算出結果は、積分補正ブロック１６および積分補正前出力軸回転数メモリブロック９に与えられる。
【００１８】
積分補正前出力軸回転数メモリブロック９は、出力軸回転数算出ブロック８からの出力軸回転数を所定数保存する。また、計算間隔タイマ１０は、一定時間毎に積分補正ブロックに信号を出力する。
【００１９】
パネル位置カウンタ１１は、エッジ検出ブロック７からのホールＩＣ信号のパルス信号の立ち上り／立ち下がり信号をカウントし、アーマチュア軸４ａがリッドＬの開方向に回転するとカウント値をインクリメントし、閉方向に回転するとカウント値をデクリメントする。なお、パネル位置カウンタ１１のカウント値ＧＰＣは、リッドＬが前閉位置にあるときに「０」値をとるように設定してあり、当該カウント値ＧＰＣはリッドＬの現在位置を示すことになる。また、パネル位置カウンタ１１のカウントデータＧＰＣは、積分補正ブロック１６および制御ブロック１８に与えられる。
【００２０】
積分フィルタ定数データブロック１２は、積分補正ブロック１６に対して積分フィルタ定数ＦＴの収束値Ｘを与える。積分フィルタ定数データＲＯＭ１３は、積分補正ブロック１６に対して積分フィルタ定数ＦＴに設定されるべき値ＸＢ１，ＸＢ２を与える。積分フィルタ定数減算値データＲＯＭ１４は、積分補正ブロック１６に対して積分フィルタ定数ＦＴから積分演算値毎に所定値だけ減算される値ＳＵＢｎを与える。積分補正後出力軸回転数メモリブロック１５は、積分補正ブロック１６で算出された出力軸回転数を所定数だけ保存する。
【００２１】
積分補正ブロック１６は、出力軸回転数算出ブロック８で算出された出力軸回転数Ｒｉｎ（ｎ）と、積分補正後出力軸回転数メモリブロック１５に保存されている前回計算した出力軸補正回転数Ｒｏ（ｎ−１）と、その時点での積分フィルタ定数ＦＴと、予め設定した計算間隔Ｔｓまたはモータ回転検出手段からのパルス信号と、パネル位置カウンタ１１からの現在位置データに基づいて、データＲＯＭ１３，１４から積分フィルタ定数を読み込んで積分補正を行う。
【００２２】
入力ブロック１７は、開スイッチ２からの開指令信号、あるいは閉スイッチ３からの閉指令信号の入力に基いて、これら入力信号にフィルタ処理、禁止処理などを行った上で制御ブロック１８に送る。
【００２３】
制御ブロック１８は、システム全体の動作をコントロールする。すなわち、入力ブロック１７を介して開スイッチ２から入力された開指令信号に基いて、出力ブロック１９により開駆動信号を出力回路７に供給する。また、入力ブロック１７を介して閉スイッチ３から閉指令信号が入力されると、出力ブロック１９を介して閉駆動信号を出力回路６に供給し、リッドＬを閉方向に作動させる。
【００２４】
出力ブロック１９は、制御ブロック１８からの出力信号を受けて、モータ４を正逆転させるための開駆動信号あるいは閉駆動信号を出力回路６に供給する。
【００２５】
出力回路６は、リレーまたはトランジスタを含んでおり、出力ブロック１９から与えられた開駆動信号あるいは閉駆動信号に応じて、モータ４を正逆転させてリッドＬを開閉作動させるための駆動電流をモータ４に供給し、あるいは供給を停止する。
【００２６】
このような構造を有するサンルーフ制御装置１においては、図３に示す通常動作ルーチン（メインルーチン）、図４に示す回転変動判定サブルーチン、図５に示す出力軸回転数計算サブルーチン、および図６に示す出力軸回転数補正サブルーチンに基いてリッドＬの動きが制御される。
【００２７】
図３に示すメインルーチンにおいて、ステップ１１３〜１２０については、このような制御手段ＭＣＵを備えたアクチュエータＡＣをサンルーフ制御装置本体と共に車両に搭載したときに行う初期設定に係わるものであって、リッドＬが全閉位置にあるときのパネル位置カウンタ１１のカウント値ＧＰＣを「０」に正確に調整するためのものである。
【００２８】
上記のサンルーフ制御装置１を車両に搭載した状態で、バッテリー電源に接続すると、ステップ１０１において初期動作フラグFG_INITをセットした後、ステップ１０５において挟み込みが発生したことを示すフラグFG_SAFEが立っているかどうかが判定される。この時点では、リッドＬは実質的にまだ作動しておらず、上記フラグはセットされていない（ＮＯ）ので、ステップ１０５から１０６に移行し、スライド閉スイッチ３からの入力の有無が判定され、スイッチ操作がなされるまでは、ステップ１０５〜１１１のループが繰り返される。
【００２９】
ここで、閉スイッチ３をオン操作すると（ＹＥＳ）、制御はステップ１１２に進み、ここで初期動作フラグFG_INITの状態が判定される。初期動作フラグFG_INITは、ステップ１０１でセットされていることが読込まれている（ＹＥＳ）ので、ステップ１１３に進み、このステップ１１３においてパネル位置カウンタ１１のカウント値ＧＰＣをクリア（ＧＰＣ←０）した後、ステップ１１４においてモータロックかどうか、すなわちリッドＬが全閉位置に到達したかどうかが判定される。
【００３０】
モータロックされていなければ（ＮＯ）、ステップ１１５に移行してモータ４にスライド閉方向の駆動電流が供給され、リッドＬが全閉位置に向けて移動し、全閉位置に到達して、ステップ１１４においてモータロックが検出されるまで、ステップ１０５、１０６、１１２〜１１５、１１０、１１６、１１７、出力軸回転数計算サブルーチン４００、ステップ１１８、１１９、出力軸回転数補正サブルーチン５００、ステップ１０５のループが繰り返され、ステップ１１４でモータロックが検出されると、ステップ１２０で初期動作フラグFG_INITがリセットされる。
【００３１】
そして、この間ステップ１１９においてパネル位置カウンタ１１がデクリメントされるが、ステップ１１３を通るたびにパネル位置カウンタ１１がクリアされるので、リッドＬが全閉位置にあるときのパネル位置カウンタ１１のカウント値ＧＰＣが「０」に設定され、初期設定が終了する。
【００３２】
また、開スイッチ２をオン操作するとステップ１０７（ＹＥＳ）からステップ１２２に移行し、当該ステップでモータ４にスライド開方向の駆動電流が供給され、リッドＬが全開位置に向けて移動を開始する。そして、リッドＬが全開位置に到達してモータロックされるまで、ステップ１２２、１１０、１１６、１１７、出力軸回転数計算サブルーチン４００、ステップ１１８、１２３、出力軸回転数補正サブルーチン５００、ステップ１０５〜１０７、１２２のループが繰り返され、この間、ステップ１２３を通る度にパネル位置カウンタ１１がインクリメントされる。
【００３３】
リッドＬが全開位置に到達している状態で、閉スイッチ３をオン操作すると、制御はステップ１０６（ＹＥＳ）からステップ１１２に進み、ここで初期動作フラグFG_INITの状態が判定されるが、初期動作フラグFG_INITは、ステップ１０１においてリセット状態が読込まれているので、ステップ１１２（ＮＯ）から回転変動判定サブルーチン３００に移行する。
【００３４】
回転変動判定サブルーチン３００から戻ったステップ１２４においては、反転動作フラグFG_SAFEの状態が判定される。ここでは、回転変動判定サブルーチンのステップ３０８においてリセットされている（ＮＯ）ので、ステップ１１５に移行し、閉駆動信号に基づく駆動電流によってモータ４がリッドＬのスライド閉方向に作動する。
【００３５】
モータ４の回転に基づいてモータ回転検出手段６のホールＩＣ１，ホールＩＣ２にエッジ入力が生じると、ステップ１１０、１１６、１１７、出力軸回転数計算サブルーチン４００、ステップ１１８、１１９、出力軸回転数補正サブルーチン５００１０５、１０６、１１２、回転変動判定サブルーチン３００、ステップ１２４、１１５、１１０のループが繰り返され、リッドＬが全閉位置に向けて移動し、これに伴ってパネル位置カウンタのカウント値ＧＰＣが減少して行く。この間、回転変動判定サブルーチン３００においては、ステップ３０１〜３０６、３０８のループが繰り返される。
【００３６】
次に、当該サンルーフ制御装置１の通常運転時の制御について説明する。サンルーフリッドＬが閉じた状態において、車両のキースイッチを入れると、図３に示すメインルーチンの制御が開始されるが、既にステップ１０５以下のループ処理が成されている。
【００３７】
ステップ１０５では挟み込みが発生したことを示すフラグFG_SAFEの状態が判定されるが、この時点では、リッドＬは全閉位置にあり、実質的にまだ作動していないため、上記フラグはセットされておらず（ＮＯ）、ステップ１０５からステップ１０６および１０７に移行し、スライド閉スイッチ３あるいはスライド開スイッチ２からの入力の有無が判定される。
【００３８】
開スイッチ２および閉スイッチ３がいずれも操作されていない場合には、ステップ１０６（ＮＯ）およびステップ１０７（ＮＯ）からステップ１０８に移行し、ステップ１０８において、モータ起動直後からパルス割り込みの回数を計数するモータ起動後パルスカウンタのカウント値ＭＰＣをクリアした後、ステップ１１９においてモータ出力（この場合には最初から出力されていない）を停止し、さらにステップ１１０に移行する。
【００３９】
ステップ１１０においては、ホールＩＣ１，ホールＩＣ２にエッジ入力の有無が判定されるが、この場合にはまだモータ４が回転しておらず、エッジ入力はない（ＮＯ）ので、ステップ１１１に移行してエッジ入力フラグFG_EDGEをリセットし、ステップ１０５に戻る。そして、スライド開スイッチ２がオン操作されるまで、上記ステップ１０５〜１１１、および出力軸回転数補正サブルーチン５００のループが繰り返し実行される。
【００４０】
出力軸回転数補正サブルーチンでは、ステップ５０１において、計算間隔を測定する計算間隔タイマ１０のカウント値INT_TMが積分計算を一定時間毎に行うための待ち時間TCALを超えたか否かを判定し、この場合にはモータ４が回転していないと共に、カウント値INT_TMは待ち時間TCAを超えていないので、そのままメインルーチンに移行する。
【００４１】
スライド開スイッチ２がオン操作されると、ステップ１０７においてスイッチ入力有り（ＹＥＳ）と判定されて、ステップ１２２に移行して出力回路６に対して開駆動信号が出力され、出力回路６からの駆動電流によってモータ４がリッドＬをスライド開方向に作動させる。そして、モータ４の回転に基づいてモータ回転検出手段５のホールＩＣ１，ホールＩＣ２にエッジ入力が生じると、ステップ１１０（ＹＥＳ）からステップ１１６に移行してエッジ入力フラグFG_EDGEをセットした後、ステップ１１７においてモータ起動後パルスカウンタをインクリメントし、出力軸回転数計算サブルーチン４００に移行する。
【００４２】
出力軸回転数計算サブルーチンでは、ステップ４０１においてモータ４が動作中であるかを判定し、モータ４が動作中ではない場合には、ステップ４０２においてエッジ信号間のカウント値ＰＴ１〜ＰＴ４を初期値にセットした後、ステップ１１８に移行する。また、モータ４が動作中である場合には、ステップ４０３に移行し、モータ回転検出手段６からエッジ入力が生じるまでは、ステップ４０３（ＮＯ）からメインルーチンに戻り、閉駆動信号の出力が維持される。
【００４３】
また、ステップ４０３においてモータ回転検出手段５からエッジ入力が生じる（ＹＥＳ）とステップ４０４に移行する。ステップ４０４においては、出力軸回転数算出ブロック８に内蔵され、モータ回転検出手段５のホールＩＣ１，ホールＩＣ２から出力された２つのパルス信号のエッジ間の時間を測定するタイマーPLS_TMのカウント値をＰＴ４としてロードし、ステップ４０５において前記パルス幅タイマーPLS_TMをクリアし、ステップ４０６に移行する。
【００４４】
ステップ４０６においては、エッジ間時間値ＰＴ４に、前回、前々回および３回前のエッジ検出時にロードした時間値ＰＴ３、ＰＴ２およびＰＴ１を加算することによってアーマチュア軸４ａの１回転に要する時間ＡＴを算出する。そして、ステップ４０７において、ステップ４０６で求めた１回転の時間ＡＴに、アーマチュア軸４ａと出力軸４ｂの減速比ＲＡＴを乗じた積で６０を除すことにより、単位時間（１分）当たりの出力軸４ｂの回転数Ｒin（ｎ）を算出し、次いで、ステップ４０８で上記時間値ＰＴ１〜ＰＴ４のシフト操作が行われる。
【００４５】
出力軸回転数計算サブルーチンから戻ったステップ１１８では、ホールＩＣ１およびＩＣ２から出力される両パルス信号のエッジ方向（一方のパルス信号に立ち上りエッジが検出されたときの他方のパルス信号がＨかＬか）に基づいてリッドＬの移動方向が判定される。
【００４６】
この場合、リッドＬはスライド開方向に移動している（ＮＯ）ので、ステップ１２３に移行してパネル位置カウンタ１１をインクリメントする。こうして、スライド開スイッチ２がオン操作されている間、ステップ１０５〜１０７、１２２、１１０、１１６、１１７、出力軸回転数計算サブルーチン４００、ステップ１１８、１２３、出力軸回転数補正サブルーチン５００、ステップ１０５のループが繰り返され、リッドＬが全開位置に向けて移動を続け、モータ起動後パルスカウンタのカウント値ＭＰＣおよびルーフ位置カウンタのカウント値ＧＰＣが増加する。
【００４７】
スライド開スイッチ２から指を離せば（オフ操作）、ステップ１０７（ＮＯ）からステップ１０８に移行して起動後パルスカウンタをクリアした後、ステップ１０９において、開駆動信号が中止され、モータ４への電流供給を停止するので、リッドＬを所望の位置で停止させることができる。そして、ホールＩＣ１，２からのパルス信号のエッジ入力がなくなれば、ステップ１１０（ＮＯ）からステップ１１１に移行し、エッジ入力フラグFG_EDGEをリセットしてステップ１０５に戻る。
【００４８】
そして、リッドＬが十分に開いた状態において、スライド閉スイッチ３を押す（オン操作）と、ステップ１０５（ＮＯ）からステップ１０６を経て、ステップ１１２に移行して初期動作フラグFG_INITの状態が判定される。初期動作フラグFG_INITは、ステップ１０１においてリセットされていることが読込まれているので、ステップ１１２（ＮＯ）から回転変動判定サブルーチン３００に移行する。
【００４９】
回転変動判定サブルーチンでは、ステップ３０１において、モータ起動後パルスカウンタのそのときのカウント値ＭＰＣを参照して、しきい値データＲＯＭ内のＲＯＭテーブルから４パルスカウント差用のしきい値が読み込まれる。例えば、パルスカウンタのカウント値ＭＰＣが０〜１０の場合には「２５５」、カウント値ＭＰＣが１１〜２０の場合には「１５」、カウント値ＭＰＣが２１以上の場合には「５」がそれぞれ読み込まれる。
【００５０】
そして、ステップ３０２において、比較期間が４パルスカウントのときの回転数差ＲＥＶ（４）−ＲＥＶ（０）が計算され、しきい値ＢＲＤ（４）とが比較される。この４パルスカウント回転数差ＲＥＶ（４）−ＲＥＶ（０）がしきい値ＢＲＤ（４）を超えていなければ（ＮＯ）、ステップ３０３に移行し、同様にそのときのモータ起動後パルスカウンタのカウント値ＭＰＣを参照して、しきい値データＲＯＭ内のＲＯＭテーブルから８パルスカウント差用のしきい値が読み込まれる。例えば、カウント値ＭＰＣが０〜１０の場合には「２５５」、カウント値ＭＰＣが１１〜２０の場合には「２５」、カウント値ＭＰＣが２１〜８０の場合には「１５」、カウント値ＭＰＣが８１以上の場合には「１０」がそれぞれ読み込まれ、同様に「０」を加算することによって、ＲＯＭテーブルから読み出されたままのデータが８パルスカウント差用のしきい値ＢＲＤ（８）としてセットされる。
【００５１】
ステップ３０４においては、比較期間が８パルスカウントのときの回転数差ＲＥＶ（８）−ＲＥＶ（０）が計算され、これと上記８パルスカウント差用のしきい値ＢＲＤ（８）とが比較される。この８パルスカウント回転数差ＲＥＶ（８）−ＲＥＶ（０）がしきい値ＢＲＤ（８）を超えていなければ（ＮＯ）、図示しないステップに移行し、そのときのモータ起動後パルスカウンタのカウント値ＭＰＣに基づいて、しきい値データＲＯＭ内のＲＯＭテーブルから１６パルスカウント差用のしきい値ＢＲＤが読み込まれ、同様に１６パルスカウント差用のしきい値ＢＲＤ（１６）とされ、図示しないステップにおいて、比較期間が１６パルスカウントのときの回転数差ＲＥＶ（１６）−ＲＥＶ（０）が計算され、これと上記しきい値ＢＲＤ（１６）とが同様に比較される。
【００５２】
この１６パルスカウント回転数差ＲＥＶ（１６）−ＲＥＶ（０）がしきい値ＢＲＤ（１６）を超えていなければ（ＮＯ）、ステップ３０５に移行し、そのときのモータ起動後パルスカウンタのカウント値ＭＰＣに応じて、ＲＯＭテーブルから３２（＝Ｍ）パルスカウント差用のしきい値が読み込まれる。例えば、パルスカウンタ１２のカウント値ＭＰＣが０〜１０の場合には「２５５」、カウント値ＭＰＣが１１〜２０の場合には「４０」、カウント値ＭＰＣが２１〜１２０の場合には「２５」、カウント値ＭＰＣが１２１〜１５０の場合には「２０」、カウント値ＭＰＣが１５１以上の場合には「１７」がそれぞれ読み込まれ、同様にＲＯＭテーブルから読み出されたままのデータが３２パルスカウント差用のしきい値ＢＲＤ（３２）としてセットされたのち、ステップ３１９に移行する。
【００５３】
ステップ３０６における判定において、比較期間が３２パルスカウントのときの回転数差ＲＥＶ（３２）−ＲＥＶ（０）が計算され、これと上記しきい値ＢＲＤ（３２）とが同様に比較され、回転数差ＲＥＶ（３２）−ＲＥＶ（０）がしきい値ＢＲＤ（３２）を超えていなければ（ＮＯ）、ステップ３０８に移行し、挟み込みの発生がないものとして反転動作フラグFG_SAFEをリセットして、メインルーチンに戻る。
【００５４】
回転変動判定サブルーチン３００から戻ったステップ１２４においては、反転動作フラグFG_SAFEの状態が判定される。ここでは、回転変動判定サブルーチンのステップ３０８においてリセットされている（ＮＯ）ので、ステップ１１５に移行し、出力回路６に対して閉駆動信号が出力され、出力回路６からの駆動電流によってモータ４がリッドＬのスライド閉方向に作動する。
【００５５】
モータ４が作動を開始しても、アーマチュア軸４ａが１／４回転以上回転して、モータ回転検出手段５を構成するホールＩＣ１，ホールＩＣ２からエッジ入力が生じるまでは、ステップ１１０からステップ１１１および出力軸回転数補正サブルーチン５００を経てステップ１０５に戻り、ステップ１０５、１０６、１１２を経て、回転変動判定サブルーチン３００が再度実行される。
【００５６】
回転変動判定サブルーチン３００から戻ったステップ１２４において、反転動作フラグFG_SAFEの状態が判定され、同フラグFG_SAFEがセットされていない場合にはステップ１１５に移行し、出力回路６に対する閉駆動信号出力が維持され、モータ４はサンルーフリッドＬのスライド閉方向の移動を継続する。
【００５７】
そして、ステップ１１０を経て（ＹＥＳ）ステップ１１６に進み、該ステップ１１６においてエッジ入力フラグFG_EDGEをセット状態を保持し、ステップ１１７においてモータ起動後パルスカウンタをインクリメントしたのち、出力軸回転数計算サブルーチン４００、ステップ１１８（ＹＥＳ）からステップ１１９に移行し、ステップ１１９においてパネル位置カウンタ１１をデクリメントしたのち、出力軸回転数補正サブルーチン５００を経てステップ１０５に戻る。
【００５８】
このようにして、スライド閉スイッチ３のオン操作が続けば、ステップ１０５、１０６、１１２、回転変動判定サブルーチン３００、ステップ１２４、１１５、１１０、１１６、１１７、出力軸回転数計算サブルーチン４００、ステップ１１８、１１９、出力軸回転数補正サブルーチン５００、ステップ１０５の実行が繰り返され、リッドＬの作動が何らかの障害によって拘束されて、回転変動判定サブルーチンのステップ３０２、３０４のいずれかの判定においてモータ４の回転速度が低下した（ＹＥＳ）と判定されない限り、モータ４の閉駆動回転が継続し、リッドＬが全閉位置に向けて移動する。もちろん、リッドＬが所望の位置となったときに、閉スイッチ３の操作を中断（オフ）すれば、ステップ１０６（ＮＯ）、ステップ１０７（ＮＯ）からステップ１０８に移行して、起動後パルスカウンタをクリアした後、ステップ１０９において閉駆動信号出力を停止するので、その位置でリッドＬが停止することになる。
【００５９】
何らかの原因でサンルーフリッドＬの動きが拘束されて、モータ４の円滑な回転が妨げられ、回転変動判定サブルーチン３００のステップ３０２、３０５あるいは３０６のいずれかの判定において、モータ４の回転速度が低下した（ＹＥＳ）と判定されると、挟み込み発生と判断してステップ３０７に移行し、反転動作フラグFG_SAFEをセットする。
【００６０】
回転変動判定サブルーチン３００から戻った後のステップ１２４において、反転動作フラグFG_SAFEの状態が判定され、この場合にはサブルーチンのステップ３０７において反転動作フラグFG_SAFEがセットされているので（ＹＥＳ）、制御はステップ１０８に移行する。そして、ステップ１０８においてモータ起動後パルスカウンタをクリアし、ステップ１０９において閉駆動信号の出力を停止し、モータ４への駆動電流の供給を中止する。
【００６１】
モータ４の回転が停止し、モータ回転検出手段５のホールＩＣからエッジ入力がなくなると、ステップ１１０（ＮＯ）からステップ１１１に移行してエッジ入力フラグFG_EDGEをリセットしたのち、出力軸回転数補正サブルーチン５００を経てステップ１０５に戻る。
【００６２】
ステップ１０５においては、反転動作フラグFG_SAFEがセットされている（ＹＥＳ）と判定されて、ステップ１２６に移行し、ステップ１２６においてパネル位置カウンタ１１のそのときのカウント値ＧＰＣが予め定められたパネル位置データXSAFEと比較される。位置データXSAFEは、全開位置に近い比較的大きな値に設定してあるので、ステップ１２６（ＮＯ）からステップ１２２に移行し、ステップ１２２において開駆動信号が出力回路６に供給されるので、モータ４がサンルーフリッドＬの開方向に回転を始める。
【００６３】
モータ４の回転に基づいて、モータ回転検出手段５からのパルス信号にエッジ入力が検出されると、ステップ１１０（ＹＥＳ）から、ステップ１１６〜１１８（ＮＯ）を経てステップ１２３に移行し、パネル位置カウンタ１１がインクリメントされたのち、出力軸回転数補正サブルーチン５００を経てステップ１０５に戻る。そして、パネル位置カウンタ１１のカウント値ＧＰＣが位置データXSAFEを超え、リッドＬが十分に開放されると、ステップ１２６（ＹＥＳ）からステップ１２７に移行し、ステップ１２７においてスライド開スイッチ２あるいは閉スイッチ３の操作が確認される。
【００６４】
閉スイッチ３がまだオン操作されたまま、あるいはモータ４が開方向に作動している間に開スイッチ２が押し直された場合には、ステップ１２７（ＹＥＳ）からステップ１０８および１０９に移行して、モータ起動後パルスカウンタをクリアしたのち、出力回路６に対する開駆動信号の出力が停止されるので、サンルーフが十分に開放された状態でリッドＬが停止する。
【００６５】
そして、閉スイッチ３および開スイッチ２から指を離すと、ステップ１２８において反転動作フラグFG_SAFEがリセットされ、挟み込み検出および反転作動制御が終了してステップ１０５に戻り、閉スイッチ３が再度操作された場合には、新たに挟み込み検出が開始される。
【００６６】
ここで、図６に示す出力軸回転数補正サブルーチンでは、ステップ５０１において、計算間隔を測定する計算間隔タイマ１０のカウント値INT_TMが積分計算を一定時間毎に行うための待ち時間TCALを超えたか否かを判定し、カウント値INT_TMが待ち時間TCAを超えると、ステップ５０２に移行して前回の積分計算からの計算間隔Ｔｓに上記カウント値INT_TMをセットし、続くステップ５０３においてカウント値INT_TMをクリアするとともに再スタートを行う。
【００６７】
そして、ステップ５０４において、モータ起動後パルスカウンタのカウント値ＭＰＣと、リッドＬの移動距離毎のしきい値を設定するために距離ＲＯＭデータに記憶された距離データ値ＭＰ１とを比較し、カウント値ＭＰＣが距離データＭＰ１を超えていない場合（ＮＯ）には、ステップ５０５に移行して積分フィルタ定数ＦＴをＸＢ１とする。
【００６８】
その後、ステップ５１１において、前回の補正後回転数Ｒｏ（ｎ−１）を今回の補正後回転数Ｒｏ（ｎ）とし、ステップ５１２において、積分補正後の出力軸回転数Ｒｏ（ｎ）を算出し、ステップ５１３において、補正後の出力軸回転数のシフト操作が行われる。すなわち、積分補正後出力軸回転数メモリブロック１５における回転数ＲＡＭ領域内に前回までに保存された回転数データＲＥＶ（０）〜ＲＥＶ（Ｍ）をそれぞれ１個づつシフトし、ステップ５１２で算出された積分補正後の出力軸回転数Ｒｏ（ｎ）を最新データ位置の回転数データＲＥＶ（０）に保存する。こののち、メインルーチンのステップ１０５に戻る。
【００６９】
また、ステップ５０４でカウント値ＭＰＣが距離データＭＰ１を超えている場合（ＹＥＳ）には、ステップ５０６において、上記カウント値ＭＰＣと次の距離データ値ＭＰ２を比較し、カウント値ＭＰＣが距離データＭＰ２を超えていない場合（ＮＯ）には、ステップ５０７に移行して積分フィルタ定数ＦＴをＸＢ２とし、ステップ５１１〜５１３を経てメインルーチンのステップ１０５に戻る。
【００７０】
さらに、ステップ５０６でカウント値ＭＰＣが距離データＭＰ２を超えている場合（ＹＥＳ）には、ステップ５０８において出力軸回転数計算サブルーチン４００で算出された最新の出力軸回転数Ｒｉｎ（ｎ）が減速中であるかを判定し、減速中ではない場合（ＮＯ）には、ステップ５０９に移行して積分フィルタ定数ＦＴをＸＢ３とし、ステップ５１１〜５１３をい経てメインルーチンのステップ１０５に戻る。
【００７１】
そしてさらに、ステップ５０８で最新の出力軸回転数Ｒｉｎ（ｎ）が減速中である場合（ＹＥＳ）には、ステップ５１０に移行して積分フィルタ定数ＦＴに最小値XB_DECを設定し、ステップ５１１〜５１３を経てメインルーチンのステップ１０５に戻る。
【００７２】
すなわち、積分補正ブロック１６では、上記出力軸回転数補正サブルーチンにしたがって処理を行っており、モータ４の駆動開始直後において、出力軸回転数算出ブロック８で算出した出力軸回転数と、積分補正後出力軸回転数メモリブロック１５に保存されている前回計算した出力軸補正回転数と、その時点での積分フィルタ定数ＦＴと、予め設定した計算間隔Ｔｓまたはモータ回転検出手段５からのパルス信号に基づいて、パネル位置カウンタ１１からの現在位置データに対応して、データＲＯＭ１３から積分フィルタ定数ＸＢ１〜ＸＢ３、XB_DECを読み込んで積分補正を行うことにより補正した出力軸回転数を算出する。
【００７３】
より具体的には、リッドＬを閉方向に作動させた際に、モータ４の駆動開始直後から出力軸回転数が積分フィルタ処理され、図１に示すように、出力軸回転数が急激に上昇しているとき、すなわちリッドＬの移動距離がＭＰ１以内であるときには、きわめて低い積分フィルタ定数ＸＢ１を設定し、出力軸回転数がオーバーシュート領域で増加しているとき、すなわちリッドＬの移動距離がＭＰ１とＭＰ２の間であるときには、高い積分フィルタ定数ＸＢ２を設定し、出力軸回転数がオーバーシュート領域で減少した後、すなわちリッドＬの移動距離がＭＰ２を超えた後には、低い積分フィルタ定数ＸＢ３を設定する。
【００７４】
これにより、図１中に点線で示すように、オーバーシュート領域の出力軸回転数が補正されることとなり、この補正した出力軸回転数に基づいて制御を行うことにより、モータの起動直後の誤反転を防止すると共に、マスク領域を短いものにして挟み込み防止機能をより確実なものにする。
【００７５】
なお、上記実施例ではサンルーフ制御装置を例に挙げて説明したが、本発明に係わる車両用開閉パネルの制御装置は、パワーウインドの制御装置にも当然適用可能である。
【００７６】
【発明の効果】
本発明に係わる車両用開閉パネルの制御装置によれば、開閉パネルを閉方向に作動させているときに、開閉パネルを開閉駆動する駆動用モータの回転数が所定のしきい値を超えて低下した際に駆動用モータを反転させて開閉パネルを開方向に作動させる車両用開閉パネルの制御装置において、モータの出力軸回転数を補積分補正することにより、モータの駆動開始直後に出力軸回転数がオーバーシュート状態になったとしても、そのオーバーシュート領域を補正して、開閉パネルの誤反転を防止することができ、これにより、モータの動作開始直後のマスク領域を短くしたうえで、挟み込み防止機能を著しく高めることができる。
【図面の簡単な説明】
【図１】本発明に係わる車両用開閉パネルの制御装置の動作原理を概略的に示す説明図である。
【図２】本発明に係わる制御装置の構成を示すブロック図である。
【図３】図２に示した制御装置における制御のメインルーチンを示すフローチャートである。
【図４】図２に示した制御装置の制御における回転変動判定サブルーチンを示すフローチャートである。
【図５】図２に示した制御装置の制御における出力軸回転数計算サブルーチンを示すフローチャートである。
【図６】図２に示した制御装置の制御における出力軸回転数補正サブルーチンを示すフローチャートである。
【符号の説明】
１        サンルーフ制御装置
２        開スイッチ
３        閉スイッチ
４        モータ
４ａ      アーマチュア軸
４ｂ      出力軸
５        モータ回転検出手段
６        出力回路（駆動手段）
８        出力軸回転数算出ブロック
９        積分補正前出力軸回転数メモリブロック
１１      パネル位置カウンタ
１２      積分フィルタ定数データブロック
１３      積分フィルタ定数データＲＯＭ
１４      積分フィルタ定数減算値データＲＯＭ
１５      積分補正後出力軸回転数メモリブロック
１６      積分補正ブロック
Ｌ        リッド（開閉パネル）
ＭＣＵ    制御手段
【図１】
0003803744.tif 000002
【図２】
0003803744.tif 000003
【図３】
0003803744.tif 000004
【図４】
0003803744.tif 000005
【図５】
0003803744.tif 000006
【図６】
0003803744.tif 000007