(57)【要約】【課題】より実際のジャンクション温度に近い温度を測定した上で、アクチュエータの駆動効率を極力向上させ得る状態で半導体スイッチング素子の過熱保護を行う。【解決手段】ＣＰＵのガードロジックは、複数の駆動パターンのそれぞれに従い半導体スイッチング素子に制御信号を与えてＤＣモータを駆動する前後の状態について、ＤＣモータ駆動ＩＣに内蔵したダイオードによりジャンクション温度Ｔjの上昇度合いを偏差ΔＴjとして求めると（Ｓ１１〜Ｓ１６）、偏差ΔＴjに応じてＤＣモータの駆動の可否を判定するための閾値温度Ｔsetを駆動パターン毎に求め、それらをメモリに記憶する（Ｓ１７）。ＤＣモータを駆動する前に測定されたジャンクション温度Ｔjと、対応する駆動パターンについて求められた閾値温度Ｔsetとを比較し、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能な駆動パターンに代替してＤＣモータを駆動する。【選択図】図２
2012165516.tif 000002
【特許請求の範囲】
【請求項１】
アクチュエータを駆動するための半導体スイッチング素子を１つ以上内蔵して構成されると共に温度計測用素子を内蔵し、前記温度計測用素子の出力信号をモニタすることで前記半導体スイッチング素子のジャンクション温度Ｔj（以下、単に温度Ｔjと称す）を推定可能に構成される駆動回路ＩＣを制御する制御回路において、
複数の制御条件それぞれに従い、前記半導体スイッチング素子に制御信号を与えて前記アクチュエータを駆動する前後の状態について前記温度Ｔjの偏差ΔＴjを求める温度偏差演算手段と、
前記偏差ΔＴjに応じて前記アクチュエータの駆動の可否を判定するための閾値温度Ｔsetを前記制御条件毎に求め、それらを記憶手段に記憶する閾値温度演算手段と、
前記アクチュエータを駆動する前に測定された温度Ｔjと、対応する制御条件について求められた閾値温度Ｔsetとを比較し、
Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能な制御条件で代替して前記アクチュエータを駆動する制御手段とを備えたことを特徴とする駆動回路ＩＣの制御回路。
【請求項２】
前記制御手段は、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、前記半導体スイッチング素子に与える制御信号のパターンを変更することを特徴とする請求項１記載の駆動回路ＩＣの制御回路。
【請求項３】
前記制御手段は、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、前記アクチュエータの駆動を停止してから再開するまでの待ち時間を延長することを特徴とする請求項１記載の駆動回路ＩＣの制御回路。
【請求項４】
前記閾値温度演算手段は、前記閾値温度Ｔsetを、同じ制御条件についてそれ以前に求めていた閾値温度と、前記温度の偏差ΔＴjとに基づいて求めることを特徴とする請求項１ないし３の何れかに記載の駆動回路ＩＣの制御回路。
【請求項５】
前記閾値温度演算手段は、前記制御条件をＡとして、ｎ回目に求める閾値温度ＴsetをＴset（Ａ，ｎ）とし、ｎ回目に得られた温度の偏差をΔＴj（Ａ，ｎ），定格温度をＴjmaxとすると、閾値温度Ｔset（Ａ，ｎ）を、
Ｔset（Ａ，ｎ）＝［Ｔset（Ａ，ｎ−１）＋｛Ｔjmax−ΔＴj（Ａ，ｎ）｝］／２
で求めることを特徴とする請求項４記載の駆動回路ＩＣの制御回路。
【請求項６】
アクチュエータを駆動するための半導体スイッチング素子を１つ以上内蔵して構成されると共に温度計測用素子を内蔵し、前記温度計測用素子の出力信号をモニタすることで前記半導体スイッチング素子のジャンクション温度Ｔj（以下、単に温度Ｔjと称す）を推定可能に構成される駆動回路ＩＣを制御する方法において、
複数の制御条件それぞれに従い、前記半導体スイッチング素子に制御信号を与えて前記アクチュエータを駆動する前後の状態について前記温度Ｔjの偏差ΔＴjを求め、
前記偏差ΔＴjに応じて前記アクチュエータの駆動の可否を判定するための閾値温度Ｔsetを前記制御条件毎に求め、それらを記憶手段に記憶しておき、
前記アクチュエータを駆動する前に測定された温度Ｔjと、対応する制御条件について求められた閾値温度Ｔsetとを比較し、
Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能な制御条件で代替して前記アクチュエータを駆動することを特徴とする駆動回路ＩＣの制御方法。
【請求項７】
Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、前記半導体スイッチング素子に与える制御信号のパターンを変更することを特徴とする請求項６記載の駆動回路ＩＣの制御方法。
【請求項８】
Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、前記アクチュエータの駆動を停止してから再開するまでの待ち時間を延長することを特徴とする請求項６記載の駆動回路ＩＣの制御方法。
【請求項９】
前記閾値温度Ｔsetを、同じ制御条件についてそれ以前に求めていた閾値温度と、前記温度の偏差ΔＴjとに基づいて求めることを特徴とする請求項６ないし８の何れかに記載の駆動回路ＩＣの制御方法。
【請求項１０】
前記制御条件をＡとして、ｎ回目に求める閾値温度ＴsetをＴset（Ａ，ｎ）とし、ｎ回目に得られた温度の偏差をΔＴj（Ａ，ｎ），定格温度をＴjmaxとすると、閾値温度Ｔset（Ａ，ｎ）を、
Ｔset（Ａ，ｎ）＝［Ｔset（Ａ，ｎ−１）＋｛Ｔjmax−ΔＴj（Ａ，ｎ）｝］／２
で求めることを特徴とする請求項９記載の駆動回路ＩＣの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アクチュエータを駆動するための半導体スイッチング素子を１つ以上内蔵して構成される駆動回路ＩＣについて、過熱保護を行いつつ制御する制御回路及び制御方法に関する。
【背景技術】
【０００２】
例えばエンジン内部に燃料を噴射するインジェクタや、スロットルバルブ等のアクチュエータを駆動するには、パワーＭＯＳＦＥＴ等の半導体スイッチング素子で構成した駆動回路（ドライバ）をＰＷＭ制御することで、半導体スイッチング素子を頻繁にオンオフする。すると、半導体スイッチング素子を介して駆動電流が断続的に流れるため、半導体スイッチング素子が発熱する。その発熱が過剰になると半導体スイッチング素子が破壊に至るため、一般的には、過熱保護機能を付加してアクチュエータの駆動を停止させる等の措置を講じている。
【０００３】
具体的には、例えば、評価環境等において駆動回路の周囲温度Ｔａと設定したとき、駆動回路のパッケージ部等に評価用に設定された温度センサにより検出した温度が、所定の閾値を超えないようにアクチュエータの駆動を停止し、一定の停止時間（待ち時間）が経過して発熱温度が低下した場合に駆動を再開する発熱破壊ガードを設定し、半導体スイッチング素子のジャンクション（接合）温度Ｔjが定格温度Ｔjmaxを超えないように保護をする発熱破壊ガード制御を行っている。この場合、ジャンクション温度Ｔjを直接測定することは行われておらず、通常はＩＣとして構成される駆動回路のパッケージの温度Ｔｃの測定値からＴｊを推測することが多い。
【０００４】
また、駆動回路の実装状態が異なれば放熱特性が変化するので、それがジャンクション温度Ｔjの変動要因となり、アクチュエータの消費電力が変化すれば当然にジャンクション温度Ｔjも変動する。このように様々な変動要因に対して発熱のマージンを確保する必要があることから、上述した発熱破壊ガード制御における待ち時間は、かなり冗長に設定されることが多い。その結果、実際のジャンクション温度Ｔjが定格温度Ｔjmaxに達することは殆どないにも関わらず、アクチュエータの駆動を停止して一定時間の経過待ちをする場合が多くなっており、アクチュエータの制御性や駆動効率の低下が問題となっている。
【０００５】
例えば図８は、ＥＧＲ（Exhaust Gas Recirculation）バルブ用のＤＣモータを駆動制御するものについて、（ａ）は周囲温度Ｔaが最大で１００℃となる条件で、バルブの指令開度幅（差分）に応じて設定される開閉周期を示すテーブルである。例えば、指令開度幅が２０degである場合は開閉周期を３３６ｍｓとすれば、ジャンクション温度Ｔjが定格温度Ｔjmaxを下回る状態が確実に維持できることを示している。しかしながら、実際の使用環境がＴａ＝８５℃であったとすると、それに対応するテーブルは（ｂ）になる。この場合、指令開度幅が２０degであれば開閉周期は１６０ｍｓで良いはずであるが、安全のためＴａ＝１００℃で作成したテーブルを用いている限りそのような対応はできない。すると、ＥＧＲバルブやインテークスロットルの応答性が悪化したり、インジェクタによる燃料噴射回数の制限などに繋がるため、エンジンに要求されるエミッション規定をクリアできなくなる場合がある。
【０００６】
例えば、特許文献１に開示されている技術を用いることで、ＥＣＵ（Electronic Control Unit）において、通電動作に応じて発熱する回路素子の実装位置からマイクロコンピュータに熱が伝達される経路の途中にチップサーミスタを配置し、周囲温度Ｔaをマイコン内部のＣＰＵでモニタし、周囲温度Ｔaに応じて図８（ａ）,（ｂ）に示すテーブルを切り替えて制御することが考えられている。例えば、（ａ）を用いている状態で周囲温度Ｔaが８０℃まで低下すると（ｂ）に切り替え、（ｂ）を用いている状態で周囲温度Ｔaが８５℃を超えると再び（ａ）に切り替えるように制御する。尚、（ａ），（ｂ）間を切替える温度の閾値が下降側と上昇側とで異なるのは、ヒステリシス特性を与えるためである。
【０００７】
しかしながら、この場合でも、アクチュエータを駆動する半導体素子との間に存在する熱抵抗によって熱伝達に遅れが発生したり、他の素子の発熱による影響があるためジャンクション温度Ｔjを精度良く認識できない。したがって、駆動制御時点の実際の環境に応じた最適な制御にはならず、制御性の改善に限界がある。例えば、図９に示すように、アクチュエータを駆動する以前の状態ではＴa≒Ｔjとなっているはずで、ジャンクション温度Ｔjが定格温度Ｔjmaxに達するまでは制限を加えずとも、すなわち何れの指令開度幅についても開閉周期０ｍｓで良いはずだが、特許文献１の技術によって測定した周囲温度Ｔaによってはジャンクション温度Ｔjが低下していることが把握できない。
また、特許文献２には、温度測定対象のＩＣ内部に温度検出用のダイオードを配置し、その順方向電圧の変化に基づいてジャンクション温度Ｔjを測定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０００−４５８５０号公報
【特許文献２】特開２０００−３０４６２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
例えば、特許文献２の技術を更に適用することで若干の精度の向上は望めるが、複数のテーブルを切り替えて制御すること自体に上述したようマージンを含まざるを得ないことから、やはり応答性の改善を十分に図ることができない。
本発明は上記事情に鑑みてなされたものであり、その目的は、より実際のジャンクション温度に近い温度を測定した上で、アクチュエータの駆動効率を極力向上させ得る状態で半導体スイッチング素子の過熱保護を行うことができる駆動回路ＩＣの制御回路及び駆動回路ＩＣの制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
請求項１記載の駆動回路ＩＣの制御回路によれば、温度偏差演算手段は、複数の制御条件それぞれに従い、半導体スイッチング素子に制御信号を与えてアクチュエータを駆動する前後の状態について、駆動回路ＩＣに内蔵した温度計測用素子によりジャンクション温度Ｔjの上昇度合いを偏差ΔＴjとして求める。閾値温度演算手段は、偏差ΔＴjに応じてアクチュエータの駆動の可否を判定するための閾値温度Ｔsetを制御条件毎に求め、それらを記憶手段に記憶する。そして、制御手段は、アクチュエータを駆動する前に測定された温度Ｔjと、対応する制御条件について求められた閾値温度Ｔsetとを比較し、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能な制御条件で代替してアクチュエータを駆動する。
【００１１】
すなわち、駆動回路ＩＣに内蔵した温度計測用素子によって、半導体スイッチング素子のジャンクション温度Ｔjをより正確に測定することが可能となる。そして、アクチュエータをそれぞれの制御条件で駆動した場合の温度Ｔjの偏差ΔＴに応じて閾値温度Ｔsetを設定し、実際にアクチュエータを駆動する場合は、制御条件に応じた閾値温度Ｔsetにより当該駆動の可否をリアルタイムで判定する。したがって、実際の駆動環境に極めて近い状態で閾値温度Ｔsetを決定できるので、駆動回路ＩＣの過熱保護を行いつつアクチュエータの駆動効率を従来よりも向上させることができる。
【００１２】
請求項２記載の駆動回路ＩＣの制御回路によれば、制御手段は、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、半導体スイッチング素子に与える制御信号のパターンを変更する。これにより、現状の制御条件に従いアクチュエータを駆動し続けると、過熱状態に至ることが想定される場合でも、効率の低下を極力回避した状態でアクチュエータを駆動し続けることが可能となる。
【００１３】
請求項３記載の駆動回路ＩＣの制御回路によれば、制御手段は、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、アクチュエータの駆動を停止してから再開するまでの待ち時間を延長する。これにより、現状の制御条件に従いアクチュエータを駆動し続けると、過熱状態に至ることが想定される場合でも、必要最小限の待ち時間を置いた後に、アクチュエータの駆動を再開することができる。
【００１４】
請求項４記載の駆動回路ＩＣの制御回路によれば、閾値温度演算手段は、閾値温度Ｔsetを、同じ制御条件についてそれ以前に求めていた閾値温度と、温度の偏差ΔＴjとに基づいて求める。すなわち、過去に得られている閾値温度を利用して今回の閾値温度Ｔsetを決定することで、温度ΔＴjが瞬時的に変化した場合に、閾値温度Ｔsetにばらつきが発生することを回避できる。
【００１５】
請求項５記載の駆動回路ＩＣの制御回路によれば、閾値温度演算手段は、制御条件をＡとして、ｎ回目に求める閾値温度Ｔset（Ａ，ｎ）を、ｎ回目に得られた温度の偏差をΔＴj（Ａ，ｎ），定格温度をＴjmaxとすると、
Ｔset（Ａ，ｎ）＝［Ｔset（Ａ，ｎ−１）＋｛Ｔjmax−ΔＴj（Ａ，ｎ）｝］／２
により求める。すなわち、（ｎ−１）回目に得られた閾値温度Ｔset（Ａ，ｎ−１）に、定格温度Ｔjmaxとｎ回目に得られた偏差ΔＴj（Ａ，ｎ）との差を加えて両者の平均をとる。すなわち、右辺第２項は、駆動パターンＡで駆動させた時の温度上昇分ΔＴj（Ａ，ｎ）が、定格温度Ｔjmaxに達するまでの余裕温度を示す。その余裕温度と前回の学習結果である閾値温度Ｔset（Ａ，ｎ−１）とを加算して平均をとることで、ｎ回までの実行結果にばらつきが発生することを抑制して、閾値温度Ｔset（Ａ，ｎ）を妥当な値に設定できる。
【図面の簡単な説明】
【００１６】
【図１】一実施例であり、ＣＰＵのガードロジックによる処理内容を示すフローチャート
【図２】学習ロジックの処理内容を示すフローチャート
【図３】横軸にジャンクション温度Ｔj，縦軸に待ち時間ｔ＿setをとって、２つの駆動パターンＡ，Ｂに対応するグラフを示す図
【図４】図３のグラフをマップ化したものを示す図
【図５】図３を３次元グラフで示す図
【図６】図５についての図４相当図
【図７】ＤＣモータの駆動システムを示す機能ブロック図
【図８】従来技術を説明する図（その１）
【図９】従来技術を説明する図（その２）
【発明を実施するための形態】
【００１７】
以下、一実施例について図１ないし図７を参照して説明する。図７は、ＤＣモータの駆動システムを示す機能ブロック図である。ＤＣモータ（アクチュエータ）１は、ＣＰＵ（マイクロコンピュータ，若しくはＥＣＵ（Electronic Control Unit），制御回路，制御手段）２より与えられるＰＷＭ信号により、ＤＣモータ駆動ＩＣ（駆動回路ＩＣ）３を介して駆動制御される。ＤＣモータ駆動ＩＣ３は、例えば４つのパワーＭＯＳＦＥＴ（半導体スイッチング素子）等で構成されるＨブリッジ型の駆動回路を構成しており、ＤＣモータ１の（＋）端子，（−）端子は、２組のアームの間に接続されている。尚、Ｈブリッジ型の駆動回路に限ることなく、ハイサイド型やローサイド型の駆動回路であっても良い。
【００１８】
また、ＤＣモータ駆動ＩＣ３の内部には、上記パワーＭＯＳＦＥＴのジャンクション温度Ｔjを測定するための温度検出用素子として、ダイオード４が内蔵されている。ダイオード４のアノードは、抵抗素子５を介して電源ＶＣＣにプルアップされていると共に、ＣＰＵ２の入力端子に接続されており、カソードはグランドに接続されている。ダイオード４の順方向電圧Ｖｆは、例えば−２ｍＶ／℃程度の負の温度特性を備えている。したがって、ＣＰＵ２は、ダイオード４のアノード電位をＡ／Ｄ変換して読み込むことで、ＤＣモータ駆動ＩＣ３の内部温度，すなわちパワーＭＯＳＦＥＴのジャンクション温度Ｔjを検出することができる。
尚、温度の変動に対してより大きな電圧変化を得たい場合には、ダイオード４を複数個直列に接続すれば良い。また、抵抗素子５に替えて定電流源を配置すれば、アノード電位が変化することによる検出精度の低下を防止できる。更に、アノード電位を電圧バッファや増幅回路を介してＣＰＵ２に出力しても良い。
【００１９】
ＣＰＵ２は、制御プログラムにより実現される機能としてＤＣモータ動作ガードロジック６（以下、単にガードロジックと称す）を備えている。ガードロジック６は、上述のようにダイオード４のアノード電位をＡ／Ｄ変換して読み込んで演算処理を行い、ＤＣモータ駆動ＩＣ３にＰＷＭ信号（＋）／（−）を出力する。尚、Ｈブリッジ型の場合、ＰＷＭ信号は実際には４つの素子それぞれに対して出力される。
【００２０】
次に、本実施例の作用について図１ないし図５を参照して説明する。図１は、ガードロジック（制御手段）６による処理内容を示すフローチャートであり、図２は、図１に示す処理中に並行して実行される学習ロジック（温度偏差演算手段，閾値温度演算手段）６ｓ部分の処理内容を示すフローチャートである。図１において、先ず、システムの上位側よりＣＰＵ２に対して与えられる、ＤＣモータ１の駆動指令があるか否かを判断する（ステップＳ１）。
【００２１】
ここでは、特定の駆動パターン（制御条件）Ａ（例えば、バルブの開度（差分）を５０degとする指令）についてｎ回目に発行された駆動指令か否か、とするが、実際には、複数の駆動パターンＡ，Ｂ，Ｃ，…に応じて場合分けをした上で、それぞれの駆動パターンについて同様の処理を行う。ステップＳ１において、駆動パターンＡの駆動指令が与えられなければ（ＮＯ）、バルブの開度については現状を維持して駆動指令待ちとなり（ステップＳ９）、ステップＳ１に戻る。
【００２２】
駆動パターンＡの駆動指令のｎ回目が発行されると（ステップＳ１：ＹＥＳ）、ガードロジック６は、ダイオード４のアノード電圧をＡ／Ｄ変換して読み込み、ジャンクション温度Ｔjをモニタすると（ステップＳ２）、閾値温度Ｔset（Ａ，ｎ）の学習をスタートさせる（ステップＳ３）。すると、図２に示す学習ロジック６ｓが動作を開始するが、以降、学習ロジック６ｓはガードロジック６と並行して動作する。
【００２３】
ここで、図２を参照する。学習ロジック６ｓは、ステップＳ２でモニタしたジャンクション温度Ｔj，すなわち、駆動パターンＡでｎ回目にＤＣモータ１を駆動する以前のジャンクション温度Ｔjを、Ｔj（Ａ，ｎ，０）としてメモリ（記憶手段，図示せず）に記憶する（ステップＳ１１）。それから、駆動パターンＡを出力してＤＣモータ１を駆動すると（ステップＳ１２）、その駆動によりジャンクション温度Ｔjが上昇してピークに達すると想定される時間；ｔ秒だけ待機する（ステップＳ１３）。
【００２４】
そして、再びジャンクション温度Ｔjをモニタすると（ステップＳ１４）、駆動パターンＡによる駆動後の温度Ｔj（Ａ，ｎ，ｔ）としてメモリに記憶する（ステップＳ１５）。次に、ｎ回目の駆動パターンＡによる駆動でジャンクション温度Ｔjが上昇した分を、Ｔj（Ａ，ｎ，ｔ）とＴj（Ａ，ｎ，０）との差分で求めて偏差ΔＴj（Ａ，ｎ）とすると（ステップＳ１６，温度偏差演算手段）、今回の学習結果である閾値温度Ｔset（Ａ，ｎ）を、（１）式によって求める（ステップＳ１７，閾値温度演算手段）。
Ｔset（Ａ，ｎ）＝［Ｔset（Ａ，ｎ−１）＋｛Ｔjmax−ΔＴj（Ａ，ｎ）｝］／２
…（１）
すなわち、前回の学習結果として求められた閾値温度Ｔset（Ａ，ｎ−１）に、定格温度Ｔjmaxと今回得られた偏差ΔＴj（Ａ，ｎ）との差を加えて両者の平均をとる。右辺第２項は、駆動パターンＡで駆動させた時の温度上昇分ΔＴj（Ａ，ｎ）が、定格温度Ｔjmaxに達するまでの余裕温度を示す。その余裕温度と前回の学習結果である閾値温度Ｔset（Ａ，ｎ−１）とを加算して平均をとることで、ｎ回までの実行結果にばらつきが発生することを抑制して、閾値温度Ｔset（Ａ，ｎ）を妥当な値に設定できる。そして、今回の学習結果である閾値温度Ｔset（Ａ，ｎ）は、次回の駆動パターンＡによる（ｎ＋１）回目の駆動時に使用される。
【００２５】
ここで、再び図１を参照する。ステップＳ２でスタートした閾値温度Ｔset（Ａ，ｎ）の学習は以上のようなプロセスで実行されるが、その間にガードロジック６は、ステップＳ４において、ステップＳ２でモニタしたジャンクション温度Ｔjと、前回の学習結果として求められた閾値温度Ｔset（Ａ，ｎ−１）とを比較する。ここで｛Ｔj≦Ｔset（Ａ，ｎ−１）｝であれば（ＹＥＳ）、ＤＣモータ１を駆動パターンＡで駆動しても熱的に問題は発生しないので、駆動パターンＡで駆動する（ステップＳ５）。この時点で、学習ロジック６ｓにおいては、ステップＳ１２〜Ｓ１７が実行されるので、閾値温度Ｔset（Ａ，ｎ）の学習を停止（完了）する。
【００２６】
一方、ステップＳ４において、｛Ｔj＞Ｔset（Ａ，ｎ−１）｝であれば（ＮＯ）、｛Ｔj≦Ｔset（Ａ，ｎ−１）｝となるまで待つか否かをユーザによる設定に基づいて判断する（ステップＳ６）。ユーザによる設定が「待つ」であれば（ＹＥＳ）、｛Ｔj≦Ｔset（Ａ，ｎ−１）｝となるまで駆動パターンＡの出力を行わずに待機する（待ち時間によるガード，ステップＳ７）。すなわち、与えられた指令の通りＤＣモータ１を駆動すると、ジャンクション温度Ｔjが定格温度Ｔjmaxに達する可能性が高いため、ここではジャンクション温度Ｔjが閾値温度Ｔset（Ａ，ｎ−１）を下回るまで待機して放熱を促す。
【００２７】
また、ステップＳ６においてユーザによる設定が「待たない」であれば（ＮＯ）、｛Ｔj≦Ｔset（Ｘ，Ｎ）｝を満たす駆動パターンＸでＤＣモータ１を駆動する（ステップＳ８）。すなわち、ＤＣモータ１を駆動しても、ジャンクション温度Ｔjが定格温度Ｔjmaxに達しないような駆動パターンＸで駆動する。そしてこの場合、学習ロジック６ｓは、閾値温度Ｔset（Ｘ，Ｎ）について学習を行うように切り替えて、ステップＳ１２〜Ｓ１７を実行する。以上において、ステップＳ５〜Ｓ９の処理が制御手段に対応する。
【００２８】
次に、ステップＳ５，Ｓ７，Ｓ８の処理について図３ないし図６を参照して説明する。図３は、横軸にジャンクション温度Ｔjをとり、縦軸にステップＳ７における「待ち時間」ｔ＿setをとって、２つの駆動パターンＡ，Ｂ（Ｂは例えば開度を１０degとする指令）に対応するグラフを示している。すなわち、ジャンクション温度Ｔjがある値をとる場合に、駆動パターンＡ，Ｂのそれぞれについて設定される待ち時間ｔ＿setを示すグラフである。グラフがフラットである部分｛≦Ｔset（Ａ，ｎ），≦Ｔset（Ｂ，ｎ）｝は待ち時間ｔ＿set＝０となり、待ち時間なしで駆動可能な領域（ステップＳ５）であり、グラフが立ち上って直線を成す部分が待ち時間ｔ＿setを所定値に設定する領域である（ステップＳ７）。グラフの直線部の傾きは、駆動素子のリアルタイムの放熱能力に応じて自動的に設定される。駆動パターンＡの方が、より低いジャンクション温度Ｔjでグラフが立ち上っている。
【００２９】
ここで、ジャンクション温度ＴjがＴj＿nowである場合は、駆動パターンＡであればステップＳ７で待ち時間ｔ＿set（Ｔj＿now，Ａ）を設定する必要がある。一方、駆動パターンＢであれば待ち時間ｔ＿set（Ｔj＿now，Ｂ）＝０であるから、ステップＳ８で待ち時間無く駆動することが可能となる。図３のグラフをマップ化すれば、図４に示すような待ち時間ガードマップとなる。
【００３０】
また、図５は、複数の駆動パータンを示す軸を追加することで、図３を３次元グラフで示したものである。図中に示すジャンクション温度Ｔj1の場合は、駆動パターンＡ，Ｂの何れの場合も待ち時間ｔ＿set＝０であるからステップＳ５で実行できる。ジャンクション温度Ｔjがより高いＴj2の場合は、駆動パターンＢであれば待ち時間ｔ＿set＝０でありステップＳ８で実行できるが、駆動パターンＡであれば待ち時間ｔ＿set（Ｔj2，Ａ）を要するため、ステップＳ７の実行となる。そして、ジャンクション温度Ｔjが更に高いＴj3の場合は、駆動パターンＢであっても待ち時間ｔ＿set（Ｔj3，Ｂ）を要し、駆動パターンＡであれば待ち時間ｔ＿set（Ｔj3，Ａ）を要するため、何れの場合もステップＳ７の実行となる。図６は、（ａ）Ｔj＝Ｔj1，（ｂ）Ｔj＝Ｔj2，（ｃ）Ｔj＝Ｔj3のそれぞれのケースに対応する待ち時間ガードマップを示している。
【００３１】
以上のように本実施例によれば、ＣＰＵ２のガードロジック６は、複数の駆動パターンのそれぞれに従い半導体スイッチング素子に制御信号を与えてＤＣモータ１を駆動する前後の状態について、ＤＣモータ駆動ＩＣ３に内蔵したダイオード４によりジャンクション温度Ｔjの上昇度合いを偏差ΔＴjとして求めると、偏差ΔＴjに応じてＤＣモータ１の駆動の可否を判定するための閾値温度Ｔsetを駆動パターン毎に求め、それらをメモリに記憶しておく。そして、ＤＣモータ１を駆動する前に測定されたジャンクション温度Ｔjと、対応する駆動パターンについて求められた閾値温度Ｔsetとを比較し、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能な駆動パターンに代替してＤＣモータ１を駆動する。
【００３２】
すなわち、ＤＣモータ駆動ＩＣ３に内蔵したダイオード４によって、ジャンクション温度Ｔjをより正確に測定することが可能となる。そして、ＤＣモータ駆動ＩＣ３をそれぞれの駆動パターンで駆動した場合の温度Ｔjの偏差ΔＴに応じて閾値温度Ｔsetを設定し、ＤＣモータ駆動ＩＣ３を駆動する場合は、駆動パターンに応じた閾値温度Ｔsetにより当該駆動の可否をリアルタイムで判定する。したがって、実際の駆動環境に極めて近い状態で閾値温度Ｔsetを決定できるので、ＤＣモータ駆動ＩＣ３の過熱保護を行いつつ駆動効率を従来よりも向上させることができる。
【００３３】
そして、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、半導体スイッチング素子に与える駆動パターンを変更する。これにより、現状の駆動パターンに従いＤＣモータ駆動ＩＣ３を駆動し続けると過熱状態に至ることが想定される場合でも、効率の低下を極力回避した状態でＤＣモータ駆動ＩＣ３を駆動し続けることが可能となる。
【００３４】
また、Ｔj＞Ｔsetとなることが予測されると、条件Ｔj≦Ｔsetを満たすことが可能となるように、ＤＣモータ駆動ＩＣ３の駆動を停止してから再開するまでの待ち時間を延長するので、上記と同様に過熱状態に至ることが想定される場合でも、必要最小限の待ち時間を置いた後に、ＤＣモータ駆動ＩＣ３の駆動を再開することができる。
【００３５】
更に、閾値温度Ｔset（ｎ）を、同じ駆動パターンについてそれ以前に求めていた閾値温度Ｔset（ｎ−１）と温度の偏差ΔＴj（ｎ）とに基づいて求める。すなわち、過去に得られている閾値温度Ｔset（ｎ−１）を利用して今回の閾値温度Ｔset（ｎ）を決定することで、温度ΔＴjが瞬時的に変化した場合に、閾値温度Ｔset（ｎ）にばらつきが発生することを回避できる。この場合、閾値温度Ｔset（Ａ，ｎ）を（１）式によって求めるので、ｎ回までの実行結果にばらつきが発生することを抑制して、閾値温度Ｔset（Ａ，ｎ）を妥当な値に設定できる。
【００３６】
本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変型又は拡張が可能である。
温度検出用素子はダイオード４に限らず、駆動回路ＩＣの内部に配置可能なものであれば良い。
半導体スイッチング素子はパワーＭＯＳＦＥＴに限ることなく、パワートランジスタやＩＧＢＴ等であっても良い。
閾値温度Ｔset（Ａ，ｎ）は、（１）式によって求めるものに限らず、例えば、前回の結果Ｔset（Ａ，ｎ−１）に今回の偏差ΔＴj（ｎ）を加算若しくは減算するなどして求めても良い。
ステップＳ７，Ｓ８の何れか一方のみを実行しても良い。
負荷はＤＣモータ１に限ることなく、半導体スイッチング素子を介して通電することで駆動されるアクチュエータであればどのようなものでも良い。また、エンジンのスロットルやバルブを駆動するものに限ることはない。
【符号の説明】
【００３７】
図面中、１はＤＣモータ（アクチュエータ）、２はＣＰＵ（制御回路，制御手段）、３はＤＣモータ駆動ＩＣ（駆動回路ＩＣ）、４はダイオード（温度検出用素子）、６はＤＣモータ動作ガードロジック（制御手段）、６ｓは学習ロジック（温度偏差演算手段，閾値温度演算手段）を示す。
【図１】
2012165516.tif 000003
【図２】
2012165516.tif 000004
【図３】
2012165516.tif 000005
【図４】
2012165516.tif 000006
【図５】
2012165516.tif 000007
【図６】
2012165516.tif 000008
【図７】
2012165516.tif 000009
【図８】
2012165516.tif 000010
【図９】
2012165516.tif 000011