外部からの指令に従って、制御対象のモータ10の動作を制御する制御部40と、前記制御部40の指令に従って半導体スイッチング素子21~24を駆動することで前記モータ10を動作させる駆動部31と、前記半導体スイッチング素子21~24の動作に伴う発熱温度に応じた温度検出電圧を前記制御部40に出力する過熱検出部25、26、32と、を備えており、前記制御部40は、前記温度検出電圧に対する第1過熱検出閾値と、前記第1過熱検出閾値よりも高い第2過熱検出閾値と、を有し、前記過熱検出部25、26、32で検出された温度検出電圧が第1過熱検出閾値を超えた場合は前記駆動部31にソフトウェア過熱検出信号を出力することにより前記駆動部31が現在行っている動作を完了させた後に前記モータ10の動作を停止させ、前記過熱検出部25、26、32で検出された温度検出電圧が第1過熱検出閾値を超え、かつ、第2過熱検出閾値を超えた場合は前記駆動部31にハードウェア過熱検出信号を出力することにより前記モータ10の動作を強制的に停止させることを特徴とするモータ制御装置。前記制御部40は、前記過熱検出部25、26、32から入力した単位時間当たりの前記温度検出電圧の変化に応じて前記第1過熱検出閾値を変動させることを特徴とする請求項1に記載のモータ制御装置。前記単位時間をΔtとし、前記単位時間Δtに変化する前記半導体スイッチング素子21~24の温度をΔTとし、前記単位時間Δtに対する前記半導体スイッチング素子21~24の温度上昇割合をZとすると、当該温度上昇割合ZはZ=ΔT/Δtで表され、前記第1過熱検出閾値をAとし、前記第2過熱検出閾値をBとし、さらに前記モータ10が駆動する駆動対象の駆動範囲における位置に応じた単位時間をΔt’とすると、前記制御部40は、前記第1過熱検出閾値AをA=B-Z×Δt’として算出することを特徴とする請求項2に記載のモータ制御装置。前記制御部40は、前記第1過熱検出閾値よりも低く設定された動作復帰閾値を有し、前記過熱検出部25、26、32から入力した前記温度検出電圧が前記動作復帰閾値を下回る場合に前記駆動部31に対して前記モータ10の動作の停止を解除することを特徴とする請求項2または3に記載のモータ制御装置。前記制御部40は、前記第1過熱検出閾値の変動に応じて前記動作復帰閾値を変動させることを特徴とする請求項4に記載のモータ制御装置。前記単位時間をΔtとし、前記単位時間Δtに変化する前記半導体スイッチング素子21~24の温度をΔTとし、前記単位時間Δtに対する前記半導体スイッチング素子21~24の温度上昇割合をZとすると、当該温度上昇割合ZはZ=ΔT/Δtで表され、前記第1過熱検出閾値をAとし、前記動作復帰閾値をCとし、前記温度上昇割合Zに基づく補正値をαとすると、前記制御部40は、前記動作復帰閾値CをC=A-αとして算出することを特徴とする請求項5に記載のモータ制御装置。しかしながら、上記従来の技術では、モータのモータ発熱温度を検出する際の検出公差温度検出電圧のばらつき等があるため、検出公差が大きい分、マージンを持って所定の過熱検出温度を設定しなければならない。また、半導体スイッチング素子のオン抵抗の大きさに応じて発熱温度も高くなるので、オン抵抗が小さい半導体スイッチング素子に比べてオン抵抗が高い半導体スイッチング素子の検出公差が大きくなり、過熱検出の精度が低くなってしまう。このため、オン抵抗の低い半導体スイッチング素子を採用する必要があるので、半導体スイッチング素子のチップ面積が大きくなり集積化できず、コストが上がってしまうという問題がある。本発明は上記点に鑑み、チップ面積が小さくオン抵抗が高い半導体スイッチング素子を採用したとしても、高精度の過熱検出を行うことができるモータ制御装置を提供することを目的とする。上記目的を達成するため、請求項1に記載の発明では、外部からの指令に従って、制御対象のモータ10の動作を制御する制御部40と、制御部40の指令に従って半導体スイッチング素子21~24を駆動することでモータ10を動作させる駆動部31と、半導体スイッチング素子21~24の動作に伴う発熱温度に応じた温度検出電圧を制御部40に出力する過熱検出部25、26、32と、を備えている。そして、制御部40は、温度検出電圧に対する第1過熱検出閾値と、第1過熱検出閾値よりも高い第2過熱検出閾値と、を有し、過熱検出部25、26、32で検出された温度検出電圧が第1過熱検出閾値を超えた場合は駆動部31にソフトウェア過熱検出信号を出力することにより駆動部31が現在行っている動作を完了させた後にモータ10の動作を停止させ、過熱検出部25、26、32で検出された温度検出電圧が第1過熱検出閾値を超え、かつ、第2過熱検出閾値を超えた場合は駆動部31にハードウェア過熱検出信号を出力することによりモータ10の動作を強制的に停止させることを特徴とする。このように、モータ10の動作を強制的に停止させる第2過熱検出閾値よりも低い第1過熱検出閾値を制御部40に設定しているので、第2過熱検出閾値に対して半導体スイッチング素子21~24の発熱分だけ余裕度を持たせることができる。すなわち、第2過熱検出閾値から第1過熱検出閾値を差し引いた分だけ半導体スイッチング素子21~24の発熱を許容することができる。したがって、チップ面積が小さくオン抵抗が高い半導体スイッチング素子21~24を採用したとしても、半導体スイッチング素子21~24に対して高精度の過熱検出を行うことができる。請求項2に記載の発明では、制御部40は、過熱検出部25、26、32から入力した単位時間当たりの温度検出電圧の変化に応じて第1過熱検出閾値を変動させることを特徴とする。これにより、半導体スイッチング素子21~24の温度に応じた過熱検出を行うことができる。請求項3に記載の発明では、単位時間をΔtとし、単位時間Δtに変化する半導体スイッチング素子21~24の温度をΔTとし、単位時間Δtに対する半導体スイッチング素子21~24の温度上昇割合をZとすると、当該温度上昇割合ZはZ=ΔT/Δtで表される。そして、第1過熱検出閾値をAとし、第2過熱検出閾値をBとし、さらにモータ10が駆動する駆動対象の駆動範囲における位置に応じた単位時間をΔt’とすると、制御部40は、第1過熱検出閾値AをA=B-Z×Δt’として算出することを特徴とする。このようにして、温度検出電圧の変化に応じて変動する第1過熱検出閾値を算出することができる。請求項4に記載の発明では、制御部40は、第1過熱検出閾値よりも低く設定された動作復帰閾値を有し、過熱検出部25、26、32から入力した温度検出電圧が動作復帰閾値を下回る場合に駆動部31に対してモータ10の動作の停止を解除することを特徴とする。これにより、再びモータ10を安全に駆動させることができる。請求項5に記載の発明では、制御部40は、第1過熱検出閾値の変動に応じて動作復帰閾値を変動させることを特徴とする。これにより、動作復帰閾値が第1過熱検出閾値よりも大きくなって温度検出電圧が第1過熱検出閾値を超えているにもかかわらず動作復帰閾値を下回るという事態を防止することができる。請求項6に記載の発明では、単位時間をΔtとし、単位時間Δtに変化する半導体スイッチング素子21~24の温度をΔTとし、単位時間Δtに対する半導体スイッチング素子21~24の温度上昇割合をZとすると、当該温度上昇割合ZはZ=ΔT/Δtで表される。そして、第1過熱検出閾値をAとし、動作復帰閾値をCとし、温度上昇割合Zに基づく補正値をαとすると、制御部40は、動作復帰閾値CをC=A-αとして算出することを特徴とする。このようにして、第1過熱検出閾値の変動に応じて変化する動作復帰閾値を算出することができる。なお、この欄および特許請求の範囲で記載した各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。以下、本発明の一実施形態について図を参照して説明する。本実施形態に係るモータ制御装置は、例えば車両のパワーウィンドウを駆動するモータを制御する装置である。図1は、一実施形態に係るモータ制御装置の構成図である。モータ制御装置は、モータ10を駆動制御する装置であり、FET部20と、制御IC30と、マイクロコンピュータ40以下、マイコン40というと、を備えて構成されている。モータ10は車両のパワーウィンドウを開閉するための手段であり、車両のドア内に配置されている。FET部20は、モータ10を駆動するための複数の半導体スイッチング素子21~24と、感温ダイオード25、26と、を備えている。各半導体スイッチング素子21~24はモータ10を駆動させるための素子であり、2個の半導体スイッチング素子21、22が電源-GND間に直列に接続され、他の2個の半導体スイッチング素子23、24が電源-GND間に直列に接続されている。そして、半導体スイッチング素子21、22の接続点と半導体スイッチング素子23、24の接続点との間にモータ10が介在されたHブリッジのスイッチング回路が構成されている。各半導体スイッチング素子21~24として、例えばN型とP型の各MOSFETが用いられている。感温ダイオード25、26は各半導体スイッチング素子21~24の動作に伴う発熱温度に応じた温度検出電圧を出力するもの、すなわち順方向電圧Vfの値が変化するものである。感温ダイオード25、26は、各半導体スイッチング素子21~24が動作することにより発生する熱に応じた順方向電圧Vfを出力する。なお、順方向電圧Vfは例えば2個の感温ダイオード25、26の平均値である。制御IC30は、マイコン40からの指令に従ってFET部20の各半導体スイッチング素子21~24を駆動するICである。このような制御IC30は、駆動回路31と、過熱検出回路32と、を備えている。駆動回路31は、マイコン40の指令に従って各半導体スイッチング素子21~24をそれぞれ駆動することでモータ10を動作させる回路である。このため、駆動回路31は各半導体スイッチング素子21~24の各ゲートにそれぞれ接続されている。過熱検出回路32は、感温ダイオード25、26で検出された温度検出電圧をマイコン40に出力する回路である。この場合、過熱検出回路32は駆動回路31を介して温度検出電圧の情報をマイコン40に出力する。もちろん、過熱検出回路32からマイコン40に温度検出電圧の情報を直接出力する構成としても良い。マイコン40は、図示しないCPU、FLASHROM、RAM等を備え、ROM等に記憶されたプログラムに従って、制御対象であるモータ10の動作を制御する制御回路である。マイコン40は、外部からの指令パワーウィンドウの開閉信号に従ってモータ10の動作を制御する。また、マイコン40は、FET部20の各半導体スイッチング素子21~24の温度に応じてモータ10の駆動の許可または停止を行う。このため、マイコン40は、温度検出電圧に対する第1過熱検出閾値と、第1過熱検出閾値よりも高い第2過熱検出閾値と、を有し、これらの閾値に基づいて駆動回路31に対して指令を出すことにより、モータ10の駆動の許可または停止を行う。具体的に、マイコン40は、感温ダイオード25、26で検出された温度検出電圧が第1過熱検出閾値を超えた場合、駆動回路31にソフトウェア過熱検出信号を出力することにより駆動回路31が現在行っている動作を完了させた後にモータ10の動作を停止させる。すなわち、マイコン40は、第1過熱検出閾値に基づいて各半導体スイッチング素子21~24が高温状態であることを判定した場合、モータ10を即停止させるのではなく、ソフトウェア制御によってまずはパワーウィンドウを安全な方向つまり開く方向に動かす。一方、マイコン40は、感温ダイオード25、26で検出された温度検出電圧が第1過熱検出閾値を超え、かつ、第2過熱検出閾値を超えた場合、駆動回路31にハードウェア過熱検出信号を出力することによりモータ10の動作を強制的に停止させる。すなわち、各半導体スイッチング素子21~24は第2過熱検出閾値を超える高温になっているので、マイコン40はソフトウェア制御を介在させずにモータ10を即停止させる。さらに、マイコン40は、第1過熱検出閾値よりも低く設定された動作復帰閾値を有している。過熱検出回路32から入力した温度検出電圧が動作復帰閾値を下回る場合、マイコン40は駆動回路31に対してモータ10の動作の停止を解除する。これにより、再びモータ10を安全に駆動させることができる。以上が、本実施形態に係るモータ制御装置の全体構成である。次に、マイコン40の作動について説明する。まず、第1過熱検出閾値の設定について説明する。上述のように、マイコン40は第1過熱検出閾値を有しているが、感温ダイオード25、26から入力した単位時間当たりの温度検出電圧の変化に応じて第1過熱検出閾値を変動させる。これは、各半導体スイッチング素子21~24の温度に応じた過熱検出を行うためである。一方、第2過熱検出閾値は各半導体スイッチング素子21~24が過熱状態であることからモータ10自体の動作を停止させるために固定値とされている。第1過熱検出閾値の変動について、具体的に図2~図4を参照して説明する。図2は、温度検出電圧の変化に応じて第1過熱検出閾値を更新する内容を示したフローチャートである。図2に示されるフローチャートは、モータ制御装置が動作状態になるとスタートする。まず、ステップ100では、各半導体スイッチング素子21~24の温度が検出される。これは、感温ダイオード25、26によって過熱検出回路32で検出された温度検出電圧が各半導体スイッチング素子21~24の温度情報としてマイコン40に取得される。ステップ110では、検出温度がマイコン40内のメモリ部FLASHROM等に書き込まれる。図2に示されるフローチャートは単位時間を周期として繰り返し実行される。ここで、単位時間とは、モータ10が安全側全開側へ回避するのに必要な時間である。そして、本ステップで検出温度のデータが書き込まれると、前回取得された検出温度と今回取得された検出温度とに基づく温度上昇勾配が算出される。図3は、温度情報を単位時間ごとにプロットした図である。図2に示されるフローチャートが単位時間ごとに繰り返されてステップ110ごとに検出温度が記憶されると、図3に示されるように単位時間ごとに温度図3の●が変化するデータが得られる。例えば、時点T4と時点T5との間の単位時間に描かれた直線が温度上昇勾配である。続いて、ステップ120では、温度上昇勾配が過去最大であるか否かが判定される。過去とは、現在から予め設定された時間だけ遡った時点までの時間範囲を指す。そして、温度上昇勾配が過去最大でない場合、ステップ100に戻り、再び単位時間後の温度情報が取得される。一方、温度上昇勾配が過去最大である場合、ステップ130に進む。図3の温度変化を見てみると、例えば、時点T4と時点T5との間の単位時間における温度上昇勾配は、時点T5よりも過去の温度上昇勾配よりも高く、過去最大の勾配である。このような場合はステップ130に進む。ステップ130では、ステップ120で温度上昇勾配が過去最大であると判定された温度勾配が最大温度上昇勾配として更新される。この後、ステップ140では、第1過熱検出閾値が算出され、更新される。具体的に、第1過熱検出閾値は、以下のように算出される。まず、単位時間をΔtとし、単位時間Δtに変化する半導体スイッチング素子21~24の温度をΔTとする。そして、単位時間Δtに対する半導体スイッチング素子21~24の温度上昇割合をZとすると、当該温度上昇割合ZはZ=ΔT/Δtで表される。これが、ステップ130で更新された最大温度上昇勾配である。また、第1過熱検出閾値をAとし、第2過熱検出閾値をBとし、さらにモータ10が駆動する駆動対象の駆動範囲における位置に応じた単位時間をΔt’とする。これにより、第1過熱検出閾値AはA=B-Z×Δt’として算出される。ここで、モータ10が駆動する駆動対象の駆動範囲における位置に応じた単位時間Δt’は、パワーウィンドウの開き位置によって変わってくる。これについて、図4を参照して説明する。図4は、パワーウィンドウの開閉位置に応じた単位時間Δt’を説明するための図である。図4において、モータ10が駆動する駆動対象がウィンドウ50に該当する。また、モータ10が駆動する駆動対象の駆動範囲とは、ウィンドウ50が全閉する位置から全開する位置までの移動範囲である。さらに、駆動範囲における位置とは、当該移動範囲内のウィンドウ50の位置ウィンドウ50の開き具合に該当する。そして、図4に示されるように、モータ10の駆動によるウィンドウ50の位置が全閉付近C領域の場合、ウィンドウ50が安全側へ回避するのに長い時間が掛かる。このため、単位時間Δt’は長く設定される。一方、モータ10の駆動によるウィンドウ50の位置が全開付近A領域の場合、安全側へ回避する時間は短く済むので単位時間Δt’は短く設定される。ウィンドウ50がA領域とC領域との間に位置する場合、単位時間Δt’はA領域における単位時間Δt’よりも長く、C領域における単位時間Δt’よりも短く設定される。このように、ウィンドウ50の駆動範囲における位置に応じて単位時間Δt’が設定される。なお、ウィンドウ50の位置に応じた単位時間Δt’は予めマイコン40に記憶されている。したがって、本ステップでは、現在のウィンドウ50の位置に応じた単位時間Δt’が選択され、第1過熱検出閾値Aの算出に用いられる。もちろん、マイコン40は制御IC30の駆動回路31を介してモータ10を駆動させているので、マイコン40は現在のウィンドウ50の位置の情報を持っている。以上のようにして、温度検出電圧の変化に応じて変動する第1過熱検出閾値Aが算出される。さらに、本ステップでは、第1過熱検出閾値Aの変動に応じて動作復帰閾値を変動させる。具体的には、動作復帰閾値をCとし、上記の温度上昇割合Zに基づく補正値をαとすると、動作復帰閾値CはC=A-αとして算出される。ここで、補正値αは、例えばα=2Z×Δt’とすることができる。このようにして、第1過熱検出閾値Aの変動に応じて変化する動作復帰閾値が算出される。これにより、動作復帰閾値が第1過熱検出閾値Aよりも大きくなって温度検出電圧が第1過熱検出閾値Aを超えているにもかかわらず動作復帰閾値を下回るということはない。ステップ140で新たな第1過熱検出閾値Aが取得されると、ステップ100に戻り、次の単位時間における温度検出が行われる。上記のステップを繰り返すと、図3に示されるように、第1過熱検出閾値Aが変動する。例えば、時点T1から時点T5にかけて検出温度が上昇していくと、最大温度上昇勾配が順次更新されるので、その度に第1過熱検出閾値Aが算出される。時間経過と共に最大温度上昇勾配が大きくなっていくので、第2過熱検出閾値Bから減算されるパラメータZ×Δt’も大きくなっていく。このため、時点T1から時点T5までは第1過熱検出閾値Aは階段状に小さくなっていく。これに伴い、動作復帰閾値Cも第1過熱検出閾値Aの変動に従って階段状に小さくなっていく。このように、図2に示されるフローチャートが繰り返されることで、第1過熱検出閾値Aおよび動作復帰閾値Cは随時更新されていく。そして、図3に示される時点T6に達すると、時点T5から時点T6までの温度上昇勾配が時点T4から時点T5までの温度上昇勾配に対して小さいので、最大温度上昇勾配は更新されない。このため、時点T5から少なくとも時点T7現在まで、第1過熱検出閾値Aおよび動作復帰閾値Cは変動しない。なお、図3において時点T7以降に検出温度が小さくなっていくと、温度上昇勾配が負の値、すなわち検出温度が低下して傾きがマイナスになり、第1過熱検出閾値Aは上記の算出式から第2過熱検出閾値Bに近づく。このように、検出温度が下がれば第1過熱検出閾値Aは初期値に戻る。もちろん、第1過熱検出閾値Aが第2過熱検出閾値Bを超えることがないように設計する。以上のように、第1過熱検出閾値Aを変動させるというときの変動には、第2過熱検出閾値Bから第1過熱検出閾値Aを遠ざける場合検出温度上昇の場合と、第1過熱検出閾値Aを第2過熱検出閾値Bに近づける検出温度が低下した場合と、の両方が含まれる。次に、各半導体スイッチング素子21~24の過熱検出について、図5のフローチャートを参照して説明する。図5に示されるフローチャートは、モータ制御装置が動作状態になるとスタートする。なお、図5に示されるフローチャートは、図2に示されるフローチャートとは独立して実行される。まず、ステップ200では、外部からのパワーウィンドウの開閉信号に従ってモータ10を動作させる。これにより、ウィンドウ50を開けるまたは閉じる。ステップ210では、検出温度が第1過熱検出閾値Aを超えるか否かが判定される。なお、本ステップで用いられる検出温度は上記のステップ100で取得されたものであり、第1過熱検出閾値Aは上記のステップ140で算出されたものである。本ステップで、検出温度が第1過熱検出閾値Aを超えないと判定されると、ステップ100に戻る。一方、検出温度が第1過熱検出閾値Aを超えると判定されるとステップ220に進む。ステップ220では、ソフト過熱検出制御が行われる。これは、モータ10が即停止される制御ではなく、マイコン40のソフトウェア制御によってまずはウィンドウ50を安全な方向つまり開く方向に動かす制御である。したがって、ステップ200でウィンドウ50が閉まる方向にモータ10が動作していた場合、これとは逆にウィンドウ50が開く方向にモータ10を動作させる。ウィンドウ50が開く方向にモータ10が動作していた場合は引き続きウィンドウ50が開く方向にモータ10を動作させる。この後、ステップ230では、検出温度が第1過熱検出閾値Aを超えるか否かが判定される。本ステップで検出温度が第1過熱検出閾値Aを超えないと判定されると、ステップ240に進む。ステップ240では、検出温度が動作復帰閾値Cを超えるか否かが判定される。本ステップで検出温度が動作復帰閾値Cを超えないと判定されるとステップ200に戻り、モータ動作が行われる。検出温度が動作復帰閾値Cを超えないという判定は、各半導体スイッチング素子21~24が過熱状態になっていないということであるから、モータ10を動作させても問題ないからである。一方、ステップ240で検出温度が動作復帰閾値Cを超えると判定されると、ステップ230に戻る。また、ステップ230で検出温度が第1過熱検出閾値Aを超えると判定されると、ステップ250に進む。ステップ250では、検出温度が第2過熱検出閾値Bを超えるか否かが判定される。検出温度が第2過熱検出閾値Bを超えないと判定されるとステップ230に戻る。そして、検出温度が第1過熱検出閾値Aを超え、第2過熱検出閾値Bを下回る間は、ステップ230とステップ250とを繰り返すことになる。一方、ステップ250で検出温度が第2過熱検出閾値Bを超えると判定されると、ステップ260に進む。ステップ260では、ハード過熱検出制御が行われる。これは、モータ10自体の動作を強制的に停止する制御である。したがって、ウィンドウ50が開く方向または閉まる方向のいずれに動いていたとしても、モータ10の動作が停止される。この後、ステップ240に進み、検出温度が動作復帰閾値Cを超えるか否かが判定される。以上説明したように、本実施形態では、ハードウェアとソフトウェアの各過熱検出信号をマイコン40で統括し、第1過熱検出閾値Aをユーザの使用環境に適した値に随時更新している。そして、検出温度が第1過熱検出閾値Aを超えた場合はソフト過熱検出制御ステップ220を行い、検出温度が第1過熱検出閾値Aを超え、かつ、第2過熱検出閾値Bを超えた場合はハード過熱検出制御ステップ260を行うことが特徴となっている。このように、モータ10の動作を強制的に停止させる第2過熱検出閾値Bよりも低い第1過熱検出閾値Aをマイコン40に設定しているので、第2過熱検出閾値Bに対して半導体スイッチング素子21~24の発熱分だけ余裕度を持たせることができる。すなわち、第2過熱検出閾値Bから第1過熱検出閾値Aを差し引いた分だけ半導体スイッチング素子21~24の発熱を許容することができる。これについて、図6を参照して説明する。図6aは従来の過熱検出公差を示した図であり、図6bは本発明に係る過熱検出公差を示した図である。図6aに示されるように、従来では検出公差を考慮してハードによる過熱検出の中心値をA°Cに設定する必要があった。このため、Bの最大値は例えばA25°Cの温度に設定されてしまうため、Bを高く設定できなかった。一方、図6bに示されるように、本発明では、ハードによる過熱検出に対して使用環境を考慮した閾値を設定しているので、発熱許容できる分だけ半導体スイッチング素子21~24としてオン抵抗Ronが大きなものすなわちチップ面積が小さいものを採用することができる。したがって、チップ面積が小さくオン抵抗が高い半導体スイッチング素子21~24を採用したとしても、半導体スイッチング素子21~24に対して高精度の過熱検出を行うことができる。なお、本実施形態の記載と特許請求の範囲の記載との対応関係については、マイコン40が特許請求の範囲の制御部に対応し、駆動回路31が特許請求の範囲の駆動部に対応する。また、過熱検出回路32および感温ダイオード25、26で構成される部分が特許請求の範囲の過熱検出部に対応する。他の実施形態上記各実施形態で示されたモータ制御装置の構成は一例であり、上記で示した構成に限定されることなく、本発明のモータ制御装置を実現できる他の構成とすることもできる。例えば、モータ10の駆動対象はパワーウィンドウに限らず、自動ドア、パワステ、シートベルト、CVT等でも良い。