(57)【特許請求の範囲】
【請求項１】
外部からの指令に従って、制御対象のモータ（１０）の動作を制御する制御部（４０）と、
前記制御部（４０）の指令に従って半導体スイッチング素子（２１〜２４）を駆動することで前記モータ（１０）を動作させる駆動部（３１）と、
前記半導体スイッチング素子（２１〜２４）の動作に伴う発熱温度に応じた温度検出電圧を前記制御部（４０）に出力する過熱検出部（２５、２６、３２）と、を備えており、
前記制御部（４０）は、前記温度検出電圧に対する第１過熱検出閾値と、前記第１過熱検出閾値よりも高い第２過熱検出閾値と、を有し、前記過熱検出部（２５、２６、３２）で検出された温度検出電圧が第１過熱検出閾値を超えた場合は前記駆動部（３１）にソフトウェア過熱検出信号を出力することにより前記駆動部（３１）が現在行っている動作を完了させた後に前記モータ（１０）の動作を停止させ、前記過熱検出部（２５、２６、３２）で検出された温度検出電圧が第１過熱検出閾値を超え、かつ、第２過熱検出閾値を超えた場合は前記駆動部（３１）にハードウェア過熱検出信号を出力することにより前記モータ（１０）の動作を強制的に停止させるもので、前記過熱検出部（２５、２６、３２）から入力した単位時間当たりの前記温度検出電圧の変化に応じて前記第１過熱検出閾値を変動させるようになっており、
前記単位時間をΔｔとし、前記単位時間Δｔに変化する前記半導体スイッチング素子（２１〜２４）の温度をΔＴとし、前記単位時間Δｔに対する前記半導体スイッチング素子（２１〜２４）の温度上昇割合をＺとすると、当該温度上昇割合ＺはＺ＝ΔＴ／Δｔで表され、
前記第１過熱検出閾値をＡとし、前記第２過熱検出閾値をＢとし、さらに前記モータ（１０）が駆動する駆動対象の駆動範囲における位置に応じた単位時間をΔｔ’とすると、
前記制御部（４０）は、前記第１過熱検出閾値ＡをＡ＝Ｂ−Ｚ×Δｔ’として算出することを特徴とするモータ制御装置。
【請求項２】
前記制御部（４０）は、前記第１過熱検出閾値よりも低く設定された動作復帰閾値を有し、前記過熱検出部（２５、２６、３２）から入力した前記温度検出電圧が前記動作復帰閾値を下回る場合に前記駆動部（３１）に対して前記モータ（１０）の動作の停止を解除することを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記制御部（４０）は、前記第１過熱検出閾値の変動に応じて前記動作復帰閾値を変動させることを特徴とする請求項２に記載のモータ制御装置。
【請求項４】
前記単位時間をΔｔとし、前記単位時間Δｔに変化する前記半導体スイッチング素子（２１〜２４）の温度をΔＴとし、前記単位時間Δｔに対する前記半導体スイッチング素子（２１〜２４）の温度上昇割合をＺとすると、当該温度上昇割合ＺはＺ＝ΔＴ／Δｔで表され、
前記第１過熱検出閾値をＡとし、前記動作復帰閾値をＣとし、前記温度上昇割合Ｚに基づく補正値をαとすると、
前記制御部（４０）は、前記動作復帰閾値ＣをＣ＝Ａ−αとして算出することを特徴とする請求項３に記載のモータ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象であるモータの動作を制御するモータ制御装置に関する。
【背景技術】
【０００２】
従来より、モータのモータ発熱温度が所定の過熱検出温度となった場合にモータへの駆動電流の供給を停止する過熱保護制御を行う制御部を備えたモータ制御装置が、例えば特許文献１で提案されている。モータ発熱温度は、モータの駆動に伴う発熱温度に応じた温度検出電圧として検出される。また、モータは、制御部が制御する半導体スイッチング素子により駆動される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２４０１３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来の技術では、モータのモータ発熱温度を検出する際の検出公差（温度検出電圧のばらつき等）があるため、検出公差が大きい分、マージンを持って所定の過熱検出温度を設定しなければならない。また、半導体スイッチング素子のオン抵抗の大きさに応じて発熱温度も高くなるので、オン抵抗が小さい半導体スイッチング素子に比べてオン抵抗が高い半導体スイッチング素子の検出公差が大きくなり、過熱検出の精度が低くなってしまう。このため、オン抵抗の低い半導体スイッチング素子を採用する必要があるので、半導体スイッチング素子のチップ面積が大きくなり集積化できず、コストが上がってしまうという問題がある。
【０００５】
本発明は上記点に鑑み、チップ面積が小さくオン抵抗が高い半導体スイッチング素子を採用したとしても、高精度の過熱検出を行うことができるモータ制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、請求項１に記載の発明では、外部からの指令に従って、制御対象のモータ（１０）の動作を制御する制御部（４０）と、制御部（４０）の指令に従って半導体スイッチング素子（２１〜２４）を駆動することでモータ（１０）を動作させる駆動部（３１）と、半導体スイッチング素子（２１〜２４）の動作に伴う発熱温度に応じた温度検出電圧を制御部（４０）に出力する過熱検出部（２５、２６、３２）と、を備えている。
【０００７】
そして、制御部（４０）は、温度検出電圧に対する第１過熱検出閾値と、第１過熱検出閾値よりも高い第２過熱検出閾値と、を有し、過熱検出部（２５、２６、３２）で検出された温度検出電圧が第１過熱検出閾値を超えた場合は駆動部（３１）にソフトウェア過熱検出信号を出力することにより駆動部（３１）が現在行っている動作を完了させた後にモータ（１０）の動作を停止させ、過熱検出部（２５、２６、３２）で検出された温度検出電圧が第１過熱検出閾値を超え、かつ、第２過熱検出閾値を超えた場合は駆動部（３１）にハードウェア過熱検出信号を出力することによりモータ（１０）の動作を強制的に停止させることを特徴とする。
【０００８】
このように、モータ（１０）の動作を強制的に停止させる第２過熱検出閾値よりも低い第１過熱検出閾値を制御部（４０）に設定しているので、第２過熱検出閾値に対して半導体スイッチング素子（２１〜２４）の発熱分だけ余裕度を持たせることができる。すなわち、第２過熱検出閾値から第１過熱検出閾値を差し引いた分だけ半導体スイッチング素子（２１〜２４）の発熱を許容することができる。したがって、チップ面積が小さくオン抵抗が高い半導体スイッチング素子（２１〜２４）を採用したとしても、半導体スイッチング素子（２１〜２４）に対して高精度の過熱検出を行うことができる。
【０００９】
また、請求項１に記載の発明では、制御部（４０）は、過熱検出部（２５、２６、３２）から入力した単位時間当たりの温度検出電圧の変化に応じて第１過熱検出閾値を変動させることを特徴とする。これにより、半導体スイッチング素子（２１〜２４）の温度に応じた過熱検出を行うことができる。
【００１０】
さらに、請求項１に記載の発明では、単位時間をΔｔとし、単位時間Δｔに変化する半導体スイッチング素子（２１〜２４）の温度をΔＴとし、単位時間Δｔに対する半導体スイッチング素子（２１〜２４）の温度上昇割合をＺとすると、当該温度上昇割合ＺはＺ＝ΔＴ／Δｔで表される。そして、第１過熱検出閾値をＡとし、第２過熱検出閾値をＢとし、さらにモータ（１０）が駆動する駆動対象の駆動範囲における位置に応じた単位時間をΔｔ’とすると、制御部（４０）は、第１過熱検出閾値ＡをＡ＝Ｂ−Ｚ×Δｔ’として算出することを特徴とする。このようにして、温度検出電圧の変化に応じて変動する第１過熱検出閾値を算出することができる。
【００１１】
請求項２に記載の発明では、制御部（４０）は、第１過熱検出閾値よりも低く設定された動作復帰閾値を有し、過熱検出部（２５、２６、３２）から入力した温度検出電圧が動作復帰閾値を下回る場合に駆動部（３１）に対してモータ（１０）の動作の停止を解除することを特徴とする。これにより、再びモータ（１０）を安全に駆動させることができる。
【００１２】
請求項３に記載の発明では、制御部（４０）は、第１過熱検出閾値の変動に応じて動作復帰閾値を変動させることを特徴とする。これにより、動作復帰閾値が第１過熱検出閾値よりも大きくなって温度検出電圧が第１過熱検出閾値を超えているにもかかわらず動作復帰閾値を下回るという事態を防止することができる。
【００１３】
請求項４に記載の発明では、単位時間をΔｔとし、単位時間Δｔに変化する半導体スイッチング素子（２１〜２４）の温度をΔＴとし、単位時間Δｔに対する半導体スイッチング素子（２１〜２４）の温度上昇割合をＺとすると、当該温度上昇割合ＺはＺ＝ΔＴ／Δｔで表される。そして、第１過熱検出閾値をＡとし、動作復帰閾値をＣとし、温度上昇割合Ｚに基づく補正値をαとすると、制御部（４０）は、動作復帰閾値ＣをＣ＝Ａ−αとして算出することを特徴とする。このようにして、第１過熱検出閾値の変動に応じて変化する動作復帰閾値を算出することができる。
【００１４】
なお、この欄および特許請求の範囲で記載した各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態に係るモータ制御装置の構成図である。
【図２】温度検出電圧の変化に応じて第１過熱検出閾値を更新する内容を示したフローチャートである。
【図３】時間に対する温度と第１過熱検出閾値の変動を示した図である。
【図４】パワーウィンドウの開閉位置に応じて単位時間Δｔ’が変化することを説明するための図である。
【図５】各半導体スイッチング素子の過熱検出の内容を示したフローチャートである。
【図６】効果を説明するための図であり、（ａ）は従来の過熱検出公差を示した図、（ｂ）は本発明に係る過熱検出公差を示した図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態について図を参照して説明する。本実施形態に係るモータ制御装置は、例えば車両のパワーウィンドウを駆動するモータを制御する装置である。
【００１７】
図１は、一実施形態に係るモータ制御装置の構成図である。モータ制御装置は、モータ１０を駆動制御する装置であり、ＦＥＴ部２０と、制御ＩＣ３０と、マイクロコンピュータ４０（以下、マイコン４０という）と、を備えて構成されている。モータ１０は車両のパワーウィンドウを開閉するための手段であり、車両のドア内に配置されている。
【００１８】
ＦＥＴ部２０は、モータ１０を駆動するための複数の半導体スイッチング素子２１〜２４と、感温ダイオード２５、２６と、を備えている。
【００１９】
各半導体スイッチング素子２１〜２４はモータ１０を駆動させるための素子であり、２個の半導体スイッチング素子２１、２２が電源−ＧＮＤ間に直列に接続され、他の２個の半導体スイッチング素子２３、２４が電源−ＧＮＤ間に直列に接続されている。そして、半導体スイッチング素子２１、２２の接続点と半導体スイッチング素子２３、２４の接続点との間にモータ１０が介在されたＨブリッジのスイッチング回路が構成されている。各半導体スイッチング素子２１〜２４として、例えばＮ型とＰ型の各ＭＯＳＦＥＴが用いられている。
【００２０】
感温ダイオード２５、２６は各半導体スイッチング素子２１〜２４の動作に伴う発熱温度に応じた温度検出電圧を出力するもの、すなわち順方向電圧Ｖｆの値が変化するものである。感温ダイオード２５、２６は、各半導体スイッチング素子２１〜２４が動作することにより発生する熱に応じた順方向電圧Ｖｆを出力する。なお、順方向電圧Ｖｆは例えば２個の感温ダイオード２５、２６の平均値である。
【００２１】
制御ＩＣ３０は、マイコン４０からの指令に従ってＦＥＴ部２０の各半導体スイッチング素子２１〜２４を駆動するＩＣである。このような制御ＩＣ３０は、駆動回路３１と、過熱検出回路３２と、を備えている。
【００２２】
駆動回路３１は、マイコン４０の指令に従って各半導体スイッチング素子２１〜２４をそれぞれ駆動することでモータ１０を動作させる回路である。このため、駆動回路３１は各半導体スイッチング素子２１〜２４の各ゲートにそれぞれ接続されている。
【００２３】
過熱検出回路３２は、感温ダイオード２５、２６で検出された温度検出電圧をマイコン４０に出力する回路である。この場合、過熱検出回路３２は駆動回路３１を介して温度検出電圧の情報をマイコン４０に出力する。もちろん、過熱検出回路３２からマイコン４０に温度検出電圧の情報を直接出力する構成としても良い。
【００２４】
マイコン４０は、図示しないＣＰＵ、ＦＬＡＳＨＲＯＭ、ＲＡＭ等を備え、ＲＯＭ等に記憶されたプログラムに従って、制御対象であるモータ１０の動作を制御する制御回路である。マイコン４０は、外部からの指令（パワーウィンドウの開閉信号）に従ってモータ１０の動作を制御する。
【００２５】
また、マイコン４０は、ＦＥＴ部２０の各半導体スイッチング素子２１〜２４の温度に応じてモータ１０の駆動の許可または停止を行う。このため、マイコン４０は、温度検出電圧に対する第１過熱検出閾値と、第１過熱検出閾値よりも高い第２過熱検出閾値と、を有し、これらの閾値に基づいて駆動回路３１に対して指令を出すことにより、モータ１０の駆動の許可または停止を行う。
【００２６】
具体的に、マイコン４０は、感温ダイオード２５、２６で検出された温度検出電圧が第１過熱検出閾値を超えた場合、駆動回路３１にソフトウェア過熱検出信号を出力することにより駆動回路３１が現在行っている動作を完了させた後にモータ１０の動作を停止させる。すなわち、マイコン４０は、第１過熱検出閾値に基づいて各半導体スイッチング素子２１〜２４が高温状態であることを判定した場合、モータ１０を即停止させるのではなく、ソフトウェア制御によってまずはパワーウィンドウを安全な方向つまり開く方向に動かす。一方、マイコン４０は、感温ダイオード２５、２６で検出された温度検出電圧が第１過熱検出閾値を超え、かつ、第２過熱検出閾値を超えた場合、駆動回路３１にハードウェア過熱検出信号を出力することによりモータ１０の動作を強制的に停止させる。すなわち、各半導体スイッチング素子２１〜２４は第２過熱検出閾値を超える高温になっているので、マイコン４０はソフトウェア制御を介在させずにモータ１０を即停止させる。
【００２７】
さらに、マイコン４０は、第１過熱検出閾値よりも低く設定された動作復帰閾値を有している。過熱検出回路３２から入力した温度検出電圧が動作復帰閾値を下回る場合、マイコン４０は駆動回路３１に対してモータ１０の動作の停止を解除する。これにより、再びモータ１０を安全に駆動させることができる。以上が、本実施形態に係るモータ制御装置の全体構成である。
【００２８】
次に、マイコン４０の作動について説明する。まず、第１過熱検出閾値の設定について説明する。上述のように、マイコン４０は第１過熱検出閾値を有しているが、感温ダイオード２５、２６から入力した単位時間当たりの温度検出電圧の変化に応じて第１過熱検出閾値を変動させる。これは、各半導体スイッチング素子２１〜２４の温度に応じた過熱検出を行うためである。一方、第２過熱検出閾値は各半導体スイッチング素子２１〜２４が過熱状態であることからモータ１０自体の動作を停止させるために固定値とされている。
【００２９】
第１過熱検出閾値の変動について、具体的に図２〜図４を参照して説明する。図２は、温度検出電圧の変化に応じて第１過熱検出閾値を更新する内容を示したフローチャートである。図２に示されるフローチャートは、モータ制御装置が動作状態になるとスタートする。
【００３０】
まず、ステップ１００では、各半導体スイッチング素子２１〜２４の温度が検出される。これは、感温ダイオード２５、２６によって過熱検出回路３２で検出された温度検出電圧が各半導体スイッチング素子２１〜２４の温度情報としてマイコン４０に取得される。
【００３１】
ステップ１１０では、検出温度がマイコン４０内のメモリ部（ＦＬＡＳＨＲＯＭ等）に書き込まれる。図２に示されるフローチャートは単位時間を周期として繰り返し実行される。ここで、「単位時間」とは、モータ１０が安全側（全開側）へ回避するのに必要な時間である。そして、本ステップで検出温度のデータが書き込まれると、前回取得された検出温度と今回取得された検出温度とに基づく温度上昇勾配が算出される。
【００３２】
図３は、温度情報を単位時間ごとにプロットした図である。図２に示されるフローチャートが単位時間ごとに繰り返されてステップ１１０ごとに検出温度が記憶されると、図３に示されるように単位時間ごとに温度（図３の「●」）が変化するデータが得られる。例えば、時点Ｔ４と時点Ｔ５との間の単位時間に描かれた直線が温度上昇勾配である。
【００３３】
続いて、ステップ１２０では、温度上昇勾配が過去最大であるか否かが判定される。「過去」とは、現在から予め設定された時間だけ遡った時点までの時間範囲を指す。そして、温度上昇勾配が過去最大でない場合、ステップ１００に戻り、再び単位時間後の温度情報が取得される。
【００３４】
一方、温度上昇勾配が過去最大である場合、ステップ１３０に進む。図３の温度変化を見てみると、例えば、時点Ｔ４と時点Ｔ５との間の単位時間における温度上昇勾配は、時点Ｔ５よりも過去の温度上昇勾配よりも高く、過去最大の勾配である。このような場合はステップ１３０に進む。
【００３５】
ステップ１３０では、ステップ１２０で温度上昇勾配が過去最大であると判定された温度勾配が最大温度上昇勾配として更新される。
【００３６】
この後、ステップ１４０では、第１過熱検出閾値が算出され、更新される。具体的に、第１過熱検出閾値は、以下のように算出される。まず、単位時間をΔｔとし、単位時間Δｔに変化する半導体スイッチング素子２１〜２４の温度をΔＴとする。そして、単位時間Δｔに対する半導体スイッチング素子２１〜２４の温度上昇割合をＺとすると、当該温度上昇割合ＺはＺ＝ΔＴ／Δｔで表される。これが、ステップ１３０で更新された最大温度上昇勾配である。
【００３７】
また、第１過熱検出閾値をＡとし、第２過熱検出閾値をＢとし、さらにモータ１０が駆動する駆動対象の駆動範囲における位置に応じた単位時間をΔｔ’とする。これにより、第１過熱検出閾値ＡはＡ＝Ｂ−Ｚ×Δｔ’として算出される。
【００３８】
ここで、「モータ１０が駆動する駆動対象の駆動範囲における位置に応じた単位時間Δｔ’」は、パワーウィンドウの開き位置によって変わってくる。これについて、図４を参照して説明する。
【００３９】
図４は、パワーウィンドウの開閉位置に応じた単位時間Δｔ’を説明するための図である。図４において、「モータ１０が駆動する駆動対象」がウィンドウ５０に該当する。また、「モータ１０が駆動する駆動対象の駆動範囲」とは、ウィンドウ５０が全閉する位置から全開する位置までの移動範囲である。さらに、「駆動範囲における位置」とは、当該移動範囲内のウィンドウ５０の位置（ウィンドウ５０の開き具合）に該当する。
【００４０】
そして、図４に示されるように、モータ１０の駆動によるウィンドウ５０の位置が全閉付近（Ｃ領域）の場合、ウィンドウ５０が安全側へ回避するのに長い時間が掛かる。このため、単位時間Δｔ’は長く設定される。一方、モータ１０の駆動によるウィンドウ５０の位置が全開付近（Ａ領域）の場合、安全側へ回避する時間は短く済むので単位時間Δｔ’は短く設定される。ウィンドウ５０がＡ領域とＣ領域との間に位置する場合、単位時間Δｔ’はＡ領域における単位時間Δｔ’よりも長く、Ｃ領域における単位時間Δｔ’よりも短く設定される。このように、ウィンドウ５０の駆動範囲における位置に応じて単位時間Δｔ’が設定される。
【００４１】
なお、ウィンドウ５０の位置に応じた単位時間Δｔ’は予めマイコン４０に記憶されている。したがって、本ステップでは、現在のウィンドウ５０の位置に応じた単位時間Δｔ’が選択され、第１過熱検出閾値Ａの算出に用いられる。もちろん、マイコン４０は制御ＩＣ３０の駆動回路３１を介してモータ１０を駆動させているので、マイコン４０は「現在のウィンドウ５０の位置」の情報を持っている。
【００４２】
以上のようにして、温度検出電圧の変化に応じて変動する第１過熱検出閾値Ａが算出される。さらに、本ステップでは、第１過熱検出閾値Ａの変動に応じて動作復帰閾値を変動させる。具体的には、動作復帰閾値をＣとし、上記の温度上昇割合Ｚに基づく補正値をαとすると、動作復帰閾値ＣはＣ＝Ａ−αとして算出される。ここで、補正値αは、例えばα＝２（Ｚ×Δｔ’）とすることができる。このようにして、第１過熱検出閾値Ａの変動に応じて変化する動作復帰閾値が算出される。これにより、動作復帰閾値が第１過熱検出閾値Ａよりも大きくなって温度検出電圧が第１過熱検出閾値Ａを超えているにもかかわらず動作復帰閾値を下回るということはない。
【００４３】
ステップ１４０で新たな第１過熱検出閾値Ａが取得されると、ステップ１００に戻り、次の単位時間における温度検出が行われる。
【００４４】
上記のステップを繰り返すと、図３に示されるように、第１過熱検出閾値Ａが変動する。例えば、時点Ｔ１から時点Ｔ５にかけて検出温度が上昇していくと、最大温度上昇勾配が順次更新されるので、その度に第１過熱検出閾値Ａが算出される。時間経過と共に最大温度上昇勾配が大きくなっていくので、第２過熱検出閾値Ｂから減算されるパラメータ（Ｚ×Δｔ’）も大きくなっていく。このため、時点Ｔ１から時点Ｔ５までは第１過熱検出閾値Ａは階段状に小さくなっていく。これに伴い、動作復帰閾値Ｃも第１過熱検出閾値Ａの変動に従って階段状に小さくなっていく。このように、図２に示されるフローチャートが繰り返されることで、第１過熱検出閾値Ａおよび動作復帰閾値Ｃは随時更新されていく。
【００４５】
そして、図３に示される時点Ｔ６に達すると、時点Ｔ５から時点Ｔ６までの温度上昇勾配が時点Ｔ４から時点Ｔ５までの温度上昇勾配に対して小さいので、最大温度上昇勾配は更新されない。このため、時点Ｔ５から少なくとも時点Ｔ７（現在）まで、第１過熱検出閾値Ａおよび動作復帰閾値Ｃは変動しない。
【００４６】
なお、図３において時点Ｔ７以降に検出温度が小さくなっていくと、温度上昇勾配が負の値、すなわち検出温度が低下して傾きがマイナスになり、第１過熱検出閾値Ａは上記の算出式から第２過熱検出閾値Ｂに近づく。このように、検出温度が下がれば第１過熱検出閾値Ａは初期値に戻る。もちろん、第１過熱検出閾値Ａが第２過熱検出閾値Ｂを超えることがないように設計する。以上のように、「第１過熱検出閾値Ａを変動させる」というときの「変動」には、第２過熱検出閾値Ｂから第１過熱検出閾値Ａを遠ざける場合（検出温度上昇の場合）と、第１過熱検出閾値Ａを第２過熱検出閾値Ｂに近づける（検出温度が低下した場合）と、の両方が含まれる。
【００４７】
次に、各半導体スイッチング素子２１〜２４の過熱検出について、図５のフローチャートを参照して説明する。図５に示されるフローチャートは、モータ制御装置が動作状態になるとスタートする。なお、図５に示されるフローチャートは、図２に示されるフローチャートとは独立して実行される。
【００４８】
まず、ステップ２００では、外部からのパワーウィンドウの開閉信号に従ってモータ１０を動作させる。これにより、ウィンドウ５０を開けるまたは閉じる。
【００４９】
ステップ２１０では、検出温度が第１過熱検出閾値Ａを超えるか否かが判定される。なお、本ステップで用いられる検出温度は上記のステップ１００で取得されたものであり、第１過熱検出閾値Ａは上記のステップ１４０で算出されたものである。本ステップで、検出温度が第１過熱検出閾値Ａを超えないと判定されると、ステップ１００に戻る。一方、検出温度が第１過熱検出閾値Ａを超えると判定されるとステップ２２０に進む。
【００５０】
ステップ２２０では、ソフト過熱検出制御が行われる。これは、モータ１０が即停止される制御ではなく、マイコン４０のソフトウェア制御によってまずはウィンドウ５０を安全な方向つまり開く方向に動かす制御である。したがって、ステップ２００でウィンドウ５０が閉まる方向にモータ１０が動作していた場合、これとは逆にウィンドウ５０が開く方向にモータ１０を動作させる。ウィンドウ５０が開く方向にモータ１０が動作していた場合は引き続きウィンドウ５０が開く方向にモータ１０を動作させる。
【００５１】
この後、ステップ２３０では、検出温度が第１過熱検出閾値Ａを超えるか否かが判定される。本ステップで検出温度が第１過熱検出閾値Ａを超えないと判定されると、ステップ２４０に進む。
【００５２】
ステップ２４０では、検出温度が動作復帰閾値Ｃを超えるか否かが判定される。本ステップで検出温度が動作復帰閾値Ｃを超えないと判定されるとステップ２００に戻り、モータ動作が行われる。検出温度が動作復帰閾値Ｃを超えないという判定は、各半導体スイッチング素子２１〜２４が過熱状態になっていないということであるから、モータ１０を動作させても問題ないからである。一方、ステップ２４０で検出温度が動作復帰閾値Ｃを超えると判定されると、ステップ２３０に戻る。
【００５３】
また、ステップ２３０で検出温度が第１過熱検出閾値Ａを超えると判定されると、ステップ２５０に進む。ステップ２５０では、検出温度が第２過熱検出閾値Ｂを超えるか否かが判定される。検出温度が第２過熱検出閾値Ｂを超えないと判定されるとステップ２３０に戻る。そして、検出温度が第１過熱検出閾値Ａを超え、第２過熱検出閾値Ｂを下回る間は、ステップ２３０とステップ２５０とを繰り返すことになる。
【００５４】
一方、ステップ２５０で検出温度が第２過熱検出閾値Ｂを超えると判定されると、ステップ２６０に進む。
【００５５】
ステップ２６０では、ハード過熱検出制御が行われる。これは、モータ１０自体の動作を強制的に停止する制御である。したがって、ウィンドウ５０が開く方向または閉まる方向のいずれに動いていたとしても、モータ１０の動作が停止される。この後、ステップ２４０に進み、検出温度が動作復帰閾値Ｃを超えるか否かが判定される。
【００５６】
以上説明したように、本実施形態では、ハードウェアとソフトウェアの各過熱検出信号をマイコン４０で統括し、第１過熱検出閾値Ａをユーザの使用環境に適した値に随時更新している。そして、検出温度が第１過熱検出閾値Ａを超えた場合はソフト過熱検出制御（ステップ２２０）を行い、検出温度が第１過熱検出閾値Ａを超え、かつ、第２過熱検出閾値Ｂを超えた場合はハード過熱検出制御（ステップ２６０）を行うことが特徴となっている。
【００５７】
このように、モータ１０の動作を強制的に停止させる第２過熱検出閾値Ｂよりも低い第１過熱検出閾値Ａをマイコン４０に設定しているので、第２過熱検出閾値Ｂに対して半導体スイッチング素子２１〜２４の発熱分だけ余裕度を持たせることができる。すなわち、第２過熱検出閾値Ｂから第１過熱検出閾値Ａを差し引いた分だけ半導体スイッチング素子２１〜２４の発熱を許容することができる。これについて、図６を参照して説明する。
【００５８】
図６（ａ）は従来の過熱検出公差を示した図であり、図６（ｂ）は本発明に係る過熱検出公差を示した図である。図６（ａ）に示されるように、従来では検出公差を考慮してハードによる過熱検出の中心値をＡ℃に設定する必要があった。このため、Ｂの最大値は例えばＡ＋２５℃の温度に設定されてしまうため、Ｂを高く設定できなかった。一方、図６（ｂ）に示されるように、本発明では、ハードによる過熱検出に対して使用環境を考慮した閾値を設定しているので、発熱許容できる分だけ半導体スイッチング素子２１〜２４としてオン抵抗（Ｒｏｎ）が大きなものすなわちチップ面積が小さいものを採用することができる。
【００５９】
したがって、チップ面積が小さくオン抵抗が高い半導体スイッチング素子２１〜２４を採用したとしても、半導体スイッチング素子２１〜２４に対して高精度の過熱検出を行うことができる。
【００６０】
なお、本実施形態の記載と特許請求の範囲の記載との対応関係については、マイコン４０が特許請求の範囲の「制御部」に対応し、駆動回路３１が特許請求の範囲の「駆動部」に対応する。また、過熱検出回路３２および感温ダイオード２５、２６で構成される部分が特許請求の範囲の「過熱検出部」に対応する。
【００６１】
（他の実施形態）
上記各実施形態で示されたモータ制御装置の構成は一例であり、上記で示した構成に限定されることなく、本発明のモータ制御装置を実現できる他の構成とすることもできる。例えば、モータ１０の「駆動対象」はパワーウィンドウに限らず、自動ドア、パワステ、シートベルト、ＣＶＴ等でも良い。
【符号の説明】
【００６２】
１０        モータ
２１〜２４  半導体スイッチング素子
２５、２６  感温ダイオード
３０        制御ＩＣ
３１        駆動回路
３２        過熱検出回路
４０        マイコン
【図１】
0005810566.tif 000002
【図２】
0005810566.tif 000003
【図３】
0005810566.tif 000004
【図４】
0005810566.tif 000005
【図５】
0005810566.tif 000006
【図６】
0005810566.tif 000007