(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-05
(45)【発行日】2024-11-13
(54)【発明の名称】モータ駆動装置
(51)【国際特許分類】
H02P 29/032 20160101AFI20241106BHJP
H02P 29/68 20160101ALI20241106BHJP
【FI】
H02P29/032
H02P29/68
(21)【出願番号】P 2021086363
(22)【出願日】2021-05-21
【審査請求日】2023-11-08
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【氏名又は名称】矢作 和行
(74)【代理人】
【識別番号】100121991
【氏名又は名称】野々部 泰平
(74)【代理人】
【識別番号】100145595
【氏名又は名称】久保 貴則
(72)【発明者】
【氏名】山本 貴靖
【審査官】三島木 英宏
(56)【参考文献】
【文献】特開2014-057475(JP,A)
【文献】特開2017-055533(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H02P 29/032
H02P 29/68
(57)【特許請求の範囲】
【請求項1】
モータを駆動する駆動部(20)と、
前記駆動部を介して前記モータを駆動制御するものであり、前記駆動部が過熱状態となった場合は、前記過熱状態を解消するように、前記駆動部を介して前記モータをディレーティング制御する制御部(10)と、を備え、
前記制御部は、
前記駆動部の温度に相関する情報を取得する取得部(S20,S21,S31,S41)と、
前記ディレーティング制御を行う際に、前記情報を用いて、前記モータの駆動制御に相関する設定値を動的に決定する決定部(S33,S44,S225,S227)と、
前記情報に基づいて、前記情報が前記ディレーティング制御の開始温度に達すると前記過熱状態とみなして、前記ディレーティング制御を開始する開始判定部(S12,S14,S15)と、
前記情報に基づいて、所定時間後における前記駆動部の予測温度を算出し、前記予測温度が所定値に達していると、前記駆動部が急激に温度上昇すると予測する温度予測部(S221)と、を備え、
前記決定部は、前記ディレーティング制御を行っていない場合の前記設定値として、少なくとも前記開始温度を動的に決定するものであり、前記駆動部の急激な温度上昇が予測されると、前記開始温度を初期値よりも低い温度に決定するモータ駆動装置。
【請求項2】
前記決定部は、前記ディレーティング制御中の前記設定値として、前記モータの回転数に相関する値を動的に決定するものであり、前記情報が目標値を超えている場合は、前記情報が前記目標値を超えていない場合よりも前記回転数が低くなる値とする請求項
1に記載のモータ駆動装置。
【請求項3】
前記決定部は、前記ディレーティング制御中の前記設定値として、前記モータの減速度合を動的に決定する請求項
2に記載のモータ駆動装置。
【請求項4】
前記設定値として、前記ディレーティング制御を行っている場合の前記モータの印加電圧を動的に決定する請求項
2に記載のモータ駆動装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、モータ駆動装置に関する。
【背景技術】
【0002】
モータ駆動装置の一例として、特許文献1に開示された車両用ブロアモータ制御装置がある。車両用ブロアモータ制御装置は、モータまたは回路の過熱状態を検知する。車両用ブロアモータ制御装置は、モータの回転速度を制御中に、過熱状態を検知した場合、モータの回転速度を過熱状態が解消するまで所定の減速度で段階的に低下させる。つまり、車両用ブロアモータ制御装置は、ディレーティング制御を行う。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、モータ駆動装置は、ユーザに回転数低下を気付かせないために緩やかなディレーティング制御を行うこと、もしくは、高負荷時にも確実に温度を低下させるために急激なディレーティング制御を行うことが考えられる。しかしながら、モータ駆動装置は、これらを両立できておらず、適切にディレーティング制御ができない可能性がある。
【0005】
開示される一つの目的は、適切なディレーティング制御ができるモータ駆動装置を提供することである。
【課題を解決するための手段】
【0006】
ここに開示されたモータ駆動装置は、
モータを駆動する駆動部(20)と、
駆動部を介してモータを駆動制御するものであり、駆動部が過熱状態となった場合は、過熱状態を解消するように、駆動部を介してモータをディレーティング制御する制御部(10)と、を備え、
制御部は、
駆動部の温度に相関する情報を取得する取得部(S20,S21,S31,S41)と、
ディレーティング制御を行う際に、情報を用いて、モータの駆動制御に相関する設定値を動的に決定する決定部(S33,S44,S225,S227)と、
情報に基づいて、情報がディレーティング制御の開始温度に達すると過熱状態とみなして、ディレーティング制御を開始する開始判定部(S12,S14,S15)と、
情報に基づいて、所定時間後における駆動部の予測温度を算出し、予測温度が所定値に達していると、駆動部が急激に温度上昇すると予測する温度予測部(S221)と、を備え、
決定部は、ディレーティング制御を行っていない場合の設定値として、少なくとも開始温度を動的に決定するものであり、駆動部の急激な温度上昇が予測されると、開始温度を初期値よりも低い温度に決定する。
【0007】
このように、モータ駆動装置は、ディレーティング制御を行うため、駆動部の過熱状態が継続することを抑制できる。また、モータ駆動装置は、ディレーティング制御を行う際に、情報を用いて設定値を動的に決定する。このため、モータ駆動装置は、適切なディレーティング制御によって駆動部の過熱状態を解消できる。
【0008】
この明細書において開示された複数の態様は、それぞれの目的を達成するために、互いに異なる技術的手段を採用する。請求の範囲およびこの項に記載した括弧内の符号は、後述する実施形態の部分との対応関係を例示的に示すものであって、技術的範囲を限定することを意図するものではない。この明細書に開示される目的、特徴、および効果は、後続の詳細な説明、および添付の図面を参照することによってより明確になる。
【図面の簡単な説明】
【0009】
【
図1】実施形態におけるモータ制御装置の概略構成を示すブロック図である。
【
図2】実施形態におけるモータ制御装置の基本動作を示すフローチャートである。
【
図3】実施形態におけるモータ制御装置の開始温度決定処理を示すフローチャートである。
【
図4】実施形態におけるモータ制御装置の開始温度決定処理を示すフローチャートである。
【
図5】実施形態におけるモータ制御装置の目標回転数設定処理を示すフローチャートである。
【
図6】実施形態におけるモータ制御装置のディレーティング制御中の処理動作を示すフローチャートである。
【
図7】実施形態におけるモータ制御装置のディレーティング制御中の処理動作を示すタイムチャートである。
【
図8】変形例1におけるモータ制御装置のディレーティング制御中の処理動作を示すフローチャートである。
【
図9】変形例1におけるモータ制御装置のディレーティング制御中の処理動作を示すタイムチャートである。
【発明を実施するための形態】
【0010】
以下において、図面を参照しながら、本開示を実施するための複数の形態を説明する。各形態において、先行する形態で説明した事項に対応する部分には同一の参照符号を付して重複する説明を省略する場合がある。各形態において、構成の一部のみを説明している場合は、構成の他の部分については先行して説明した他の形態を参照し適用することができる。
【0011】
本実施形態では、一例として、本開示のモータ制御装置を車両用のブロアモータ制御装置100に適用した例を採用する。ブロアモータ制御装置100は、車載エアコンの送風に用いられる、所謂ブロアモータを制御するものである。よって、以下におけるモータ30は、ブロアモータを示している。ブロアモータ制御装置100は、単にECUと簡略化して記載することもある。しかしながら、本開示のモータ制御装置は、ブロアモータとは異なるモータを制御するものであってもよい。このモータとしては、外圧によって高負荷となるものを採用できる。
【0012】
ブロアモータ制御装置100は、少なくともマイコン10とインバータ回路20を備えている。しかしながら、本実施形態では、一例として、マイコン10とインバータ回路20に加えて、ホール素子40、分圧回路50、電流センサ60、チョークコイル71、逆接防止FET72などの回路要素を備えた構成を採用している。なお、マイコン10とインバータ回路20は、モータ駆動装置に相当するともいえる。
【0013】
ブロアモータ制御装置100は、モータ30、バッテリ200、エアコンECU300と電気的に接続されている。ブロアモータ制御装置100は、モータ30と一体的に構成されていてもよい。ブロアモータ制御装置100とモータ30とが一体化された構造体は、モータユニットともいえる。モータユニットは、例えば、ブロアモータ制御装置100を収容するケースに、モータ30が取り付けられている。しかしながら、ブロアモータ制御装置100は、これに限定されず、モータ30と別体に設けられていてもよい。
【0014】
<インバータ回路>
インバータ回路20は、モータ30のステータ31のコイルに供給する電力をスイッチングする。例えば、インバータFET21A,21Dは、U相のコイル31Uに、インバータFET21B,21EはV相のコイル31Vに、インバータFET21C,21FはW相のコイル31Wに、各々供給する電力のスイッチングを行う。
【0015】
インバータFET21A,21B,21Cの各々のドレインは、ノイズ除去用のチョークコイル71を介して車載のバッテリ200の正極に接続されている。また、インバータFET21D,21E,21Fの各々のソースは、逆接防止FET72を介してバッテリ200の負極に接続されている。インバータ回路20は、駆動部に相当する。
【0016】
<モータ>
図1に示すように、モータ30は、ステータ31、ロータマグネット32を備えている。また、モータ30は、これらの他に、ロータ、ロータマグネット、シャフト、ファンなどを備えている。モータ30は、三相モータである。
【0017】
ステータ31は、コア部材にコイル31U,31V,31Wが巻かれた電磁石であって、U相、V相、W相の三相を構成している。ステータ31のU相、V相、W相の各々は、ブロアモータ制御装置100の制御により、電磁石で発生する磁界の極性が切り替えられることで回転磁界を発生する。
【0018】
ロータマグネット32は、ロータの内側に設けられている。ロータマグネット32は、ステータ31で生じた回転磁界に対応することにより、ロータを回転させる。ロータには、シャフトが設けられている。シャフトは、ロータと一体になって回転する。シャフトには、所謂シロッコファン等のファンが設けられている。車載エアコンは、ファンがシャフトとともに回転することにより送風が可能となる。
【0019】
<検出部>
ホール素子40は、シャフトと同軸に設けられたロータマグネット32の磁界を検出する。分圧回路50は、サーミスタ51Aと抵抗51Bとを有している。サーミスタ51Aは、回路の基板の温度に応じて抵抗値が変化するので、分圧回路50が出力する信号の電圧は基板の温度に応じて変化する。電流センサ60は、シャント抵抗60Aとシャント抵抗60Aの両端の電位差を増幅するアンプ60Bとを有している。
【0020】
<マイコン>
マイコン10は、上記各回路要素とともに、基板に実装されている。マイコン10は、CPU、ROM、RAM、入出力インターフェース、およびこれらを接続するバス等を備えたマイクロコンピュータである。マイコン10は、インバータ回路20、ホール素子40、分圧回路50、電流センサ60、バッテリ200、エアコンECU300と電気的に接続されている。マイコン10は、制御部に相当する。
【0021】
ROMは、CPUによって行される種々のプログラムを格納している。CPUは、プログラムを実行することで、RAMに記憶されたデータや入出力インターフェースで取得した信号を用いて演算を実行する。マイコン10は、CPUがプログラムを実行することで処理動作を行う。なお、マイコン10は、メモリ14を参照可能に構成されている。マイコン10は、メモリ14の記憶内容を演算に用いてもよい。
【0022】
ROMには、例えば、インバータ回路20を介してモータ30を駆動制御するためのプログラムが記憶されている。よって、マイコン10は、プログラムを実行することで、インバータ回路20を介してモータ30を駆動制御する。
【0023】
また、ROMには、例えば、過熱状態の場合にモータ30の回転速度(回転数)を低下させるためのプログラムが記憶されている。マイコン10は、ブロアモータ制御装置100が過熱状態となった場合は、過熱状態を解消するように、インバータ回路20を介してモータ30の回転数を低下させる。過熱状態を解消するためにモータ30の回転数を低下させる制御は、ディレーティング制御ともいえる。ディレーティング制御は、温度ディレーティングともいえる。なお、モータ30の回転数とは、モータ30におけるロータの回転数と同意である。
【0024】
マイコン10は、ホール素子40により検出された磁界に基づいてロータの回転数および位置(回転位置)を検出する。そして、マイコン10は、ロータの回転数および回転位置に応じてインバータ回路20のスイッチングの制御を行う。
【0025】
マイコン10は、分圧回路50から出力される信号の電圧の変化に基づいて、基板の温度を算出する。本実施形態では、便宜上、分圧回路50から出力される信号をサーミスタ51Aの検知結果に基づく信号とする。また、本実施形態では、サーミスタ51Aの検知結果に基づいて算出された基板の温度を、サーミスタ51Aが検知した基板の温度とする。マイコン10は、アンプ60Bが出力した信号に基づいて、インバータ回路20の電流値を算出する。
【0026】
ところで、基板の温度は、ブロアモータ制御装置100の温度とみなすことができる。また、ブロアモータ制御装置100は、主にインバータ回路20が動作することで温度が上昇する。よって、基板の温度やブロアモータ制御装置100の温度は、インバータ回路20の温度、または、インバータ回路20の温度に相関する温度とみなすことができる。このように、マイコン10は、サーミスタ51Aの検知結果に基づいて、インバータ回路20の温度に相関する温度を取得する。以下においては、ブロアモータ制御装置100の温度(基板の温度)をECU温度とも称する。ECU温度は、情報に相当する。また、ECU温度や情報は、温度に相関するため温度情報ともいえる。
【0027】
マイコン10は、例えばブロアモータ制御装置100が過熱状態であるか否かを判定するために、サーミスタ51Aの検知結果に基づいて算出された基板の温度を算出する。なお、過熱状態とは、ブロアモータ制御装置100の温度が所定値以上となった状態である。また、過熱状態とは、インバータ回路20の過熱状態ともいえる。また、ブロアモータ制御装置100の過熱状態は、ブロアモータ制御装置100が高負荷の状態ともいえる。以下、ブロアモータ制御装置100が過熱状態を単に過熱状態と称する。
【0028】
ブロアモータ制御装置100は、例えば、車両が高速でトンネルを走行しているときに、モータ30に外圧が印加されるため高負荷となる。同様に、ブロアモータ制御装置100は、車両の窓が開いた状態で高速で走行しているときも高負荷となる。つまり、ブロアモータ制御装置100は、ラム圧が高くなると高負荷となる。
【0029】
本実施形態では、一例として、ECU温度を用いて、過熱状態であるか否かを判定する例を採用している。言い換えると、過熱状態であるか否かを判定するためのモニタリング結果としてECU温度を用いている。
【0030】
マイコン10には、エアコンのスイッチ操作に対応してエアコンを制御するエアコンECU300からの回転数の指令値を含む制御信号が入力される。エアコンのスイッチ操作には種々の場合がある。モータ30の回転を低下させる操作には、エアコンの風量を低下させる操作およびエアコンの設定温度を高くする操作等がある。例えば、エアコンの風量を低下させるスイッチ操作およびエアコンの設定温度を高くするスイッチ操作が行われると、エアコンECU300は、モータ30の回転数を低下させる指令をマイコン10に出力する。なお、回転数の指令値は、モータ30におけるロータの回転数に相関する値である。制御信号は、ロータの回転速度に係る速度指令値を含んでいてもよい。
【0031】
また、マイコン10は、機能ごとに表すことができる。つまり、マイコン10は、機能ブロックとして、温度保護制御部11、速度制御部12、PWM出力部13を備えている。
【0032】
温度保護制御部11には、サーミスタ51Aからの信号、電流センサ60が出力した信号、およびホール素子40が出力した信号が入力される。温度保護制御部11は、各々入力された信号に基づいて基板の温度、インバータ回路20の電流値、およびロータの回転数等を算出する。温度保護制御部11には、電源であるバッテリ200が接続されている。温度保護制御部11は、バッテリ200の電圧を電源電圧として検知する。
【0033】
また、温度保護制御部11は、基板の温度、ロータの回転数およびブロアモータ制御装置100の回路要素の負荷に基づいて、速度制御部12が算出したデューティ比を補正して、速度制御部12にフィードバックする。回路要素の負荷は、例えば、インバータ回路20の電流値、電源電圧値、またはインバータ回路20が生成した電圧のデューティ比である。
【0034】
本実施形態では、インバータ回路20が生成した電圧のデューティ比は、PWM出力部13がインバータ回路20に生成させる電圧のデューティ比と同じである。PWM出力部13がインバータ回路20に生成させる電圧のデューティ比を示す信号は、温度保護制御部11にも入力されているPWMは、Pulse Width Modulationの略称である。
【0035】
速度制御部12には、エアコンECU300からの制御信号が入力される。速度制御部12には、ホール素子40が出力した信号も入力される。速度制御部12は、エアコンECU300からの制御信号並びにホール素子40からの信号に基づくロータの回転数および回転位置に基づいて、インバータ回路20のスイッチングの制御に係るPWM制御のデューティ比を算出する。速度制御部12が算出したデューティ比を示す信号は、PWM出力部13と温度保護制御部11とに入力される。
【0036】
速度制御部12は、温度保護制御部11による補正を、例えばPI制御等によって自身が算出したデューティ比にフィードバックし、フィードバックを行ったデューティ比を示す信号をPWM出力部13に出力する。PWM出力部13は、入力された信号が示すデューティ比の電圧を生成するようにインバータ回路20のスイッチングを制御する。PIは、Proportional Integralの略称である。
【0037】
<処理動作>
ここで、
図2を用いて、ブロアモータ制御装置100の処理動作に関して説明する。
図2のフローチャートは、主にマイコン10の処理動作である。マイコン10は、電力が供給されると
図2のフローチャートに示す処理を開始する。
【0038】
ステップS10では、初期化処理を行う。マイコン10は、自身の初期設定を行う。また、マイコン10は、変数の初期化など、プログラムの初期設定を行う。このとき、マイコン10は、温度ディレーティングをオフに設定する。つまり、温度ディレーティングは、デフォルトの状態でオフの設定になっている。
【0039】
ステップS11では、ECU温度を取得する。マイコン10は、サーミスタ51Aの検知結果に基づいてECU温度を取得する。
【0040】
ステップS12では、ECU温度<ディレーティング解除温度であるか否かを判定する(解除判定部)。マイコン10は、ECU温度<ディレーティング解除温度と判定すると、温度ディレーティングが必要ないとみなしてステップS13へ進む。また、マイコン10は、ECU温度<ディレーティング解除温度と判定しないと、温度ディレーティングが必要である可能性があるとみなしてステップS14へ進む。なお、ステップS12は、特許請求の範囲の開始判定部に含まれる。
【0041】
このように、ディレーティング解除温度は、温度ディレーティングを解除するか否かを判定するための閾値である。マイコン10は、ECU温度がディレーティング解除温度よりも低い場合に、温度ディレーティングを解除する。また、ディレーティング解除確定時間を採用してもよい。この場合、マイコン10は、ECU温度がディレーティング解除温度よりも低い状態での経過時間がディレーティング解除確定時間に達した場合に、温度ディレーティングを解除する。
【0042】
ステップS14では、ECU温度≧ディレーティング開始温度であるか否かを判定する(開始判定部)。マイコン10は、ECU温度≧ディレーティング開始温度と判定すると、温度ディレーティングが必要とみなしてステップS15へ進む。また、マイコン10は、ECU温度≧ディレーティング開始温度と判定しないと、前回のディレーティング状態を維持するとみなしてステップS16へ進む。なお、ディレーティング開始温度は、動的に設定されるものである。ディレーティング開始温度は、開始温度に相当する。この点に関しては、後ほど詳しく説明する。
【0043】
このように、ディレーティング開始温度は、温度ディレーティングを開始するか否かを判定するための閾値である。マイコン10は、ECU温度がディレーティング開始温度以上の場合に、温度ディレーティングを開始する。また、ディレーティング開始確定時間を採用してもよい。この場合、マイコン10は、ECU温度がディレーティング開始温度以上の状態での経過時間がディレーティング開始確定時間に達した場合に、温度ディレーティングを開始する。
【0044】
ステップS15では、温度ディレーティングをオンする(開始判定部)。マイコン10は、温度ディレーティングをオンする。つまり、マイコン10は、温度ディレーティングをオフからオンに切り替える。このように、マイコン10は、ECU温度に基づいて、インバータ回路20の温度がディレーティング開始温度に達すると過熱状態とみなして、ディレーティング制御を開始する。
【0045】
ステップS13では、温度ディレーティングをオフする。マイコン10は、温度ディレーティングをオフする。
【0046】
ステップS16では、目標回転数設定処理を行う。目標回転数設定処理に関しては、
図5を用いて説明する。ステップS161では、上位ECUからの指令回転数を取得する。マイコン10は、エアコンECU300からの回転数の指令値である指令回転数を取得する。
【0047】
ステップS162では、実回転数を計算する。実回転数は、モータ30におけるロータの実際の回転数である。マイコン10は、ホール素子40により検出された磁界に基づいてロータの実回転数を算出(検出)する。
【0048】
ステップS163では、温度ディレーティングがオフであるか否かを判定する。マイコン10は、温度ディレーティングのオンオフなどによって、目標回転数を異なる値に設定するためにステップS163を行う。マイコン10は、温度ディレーティングがオフ設定であると判定するとステップS164へ進む。また、マイコン10は、温度ディレーティングがオフ設定であると判定しない、すなわち、オン設定であると判定するとステップS165へ進む。
【0049】
ステップS164では、目標回転数を指令回転数に設定する。マイコン10は、温度ディレーティングがオフの場合、目標回転数を指令回転数に設定する。
【0050】
ステップS165では、指令回転数<実回転数であるか否かを判定する。マイコン10は、指令回転数<実回転数であると判定するとステップS164へ進む。指令回転数<実回転数の場合は、実回転数を指定回転数まで下げることで、過熱状態を解消できる可能性がある。よって、マイコン10は、温度ディレーティングオンであっても、指令回転数<実回転数の場合はステップS164へ進む。
【0051】
一方、マイコン10は、指令回転数<実回転数であると判定しないとステップS166へ進む。ステップS166では、ディレーティング中用回転数を計算する。ディレーティング中用回転数は、指令回転数よりも少ない回転数である。ディレーティング中用回転数は、例えば、回転数とECU温度とが関連付けられたマップなどを用いて計算することができる。
【0052】
ステップS167では、目標回転数をディレーティング中用回転数に設定する。マイコン10は、実回転数が指令回転数よりも少ない場合は、目標回転数として、ディレーティング中用回転数を設定する。
【0053】
【0054】
ステップS17では、目標回転数>0であるか否かを判定する。マイコン10は、ステップS16で設定した目標回転数が0を超えているか否かを判定する。マイコン10は、目標回転数>0であると判定するとステップS18へ進む。また、マイコン10は、目標回転数>0であると判定しないとステップS19へ進む。なお、マイコン10は、ステップS16で設定した目標回転数をRAMなどに記憶しておくことで確認することができる。
【0055】
ステップS18では、モータ駆動を更新する。マイコン10は、モータ出力PWMデューティ比を調整する。つまり、マイコン10は、目標回転数に応じて、PWM出力部13がインバータ回路20に生成させる電圧のデューティ比を調整する。
【0056】
ステップS19では、モータを停止する。マイコン10は、モータ出力PWMデューティ比を0%とする。つまり、マイコン10は、PWM出力部13がインバータ回路20に生成させる電圧のデューティ比を0%とする。
【0057】
ここで、
図3を用いて、ディレーティング開始温度の設定処理に関して説明する。詳述すると、マイコン10は、ディレーティング開始温度を動的に設定する。よって、
図3は、ディレーティング開始温度を動的に設定するための処理といえる。
【0058】
ステップS20では、ECU温度を取得して記憶する(取得部)。マイコン10は、上記のようにECU温度を取得して、RAMなどに記憶する。ここで取得したECU温度は、現在のECU温度であり、現在温度とも称する。
【0059】
ステップS21では、10s後の予測温度を予測する(取得部)。マイコン10は、10秒後に到達するECU温度を予測する。マイコン10は、所定時間ごとに、ECU温度を記憶しておく。そして、マイコン10は、記憶した過去のECU温度の推移から、10秒後のECU温度を予測する。なお、本実施形態では、所定時間の一例として10秒を採用している。
【0060】
ステップS22では、ディレーティング開始温度の決定処理を行う。ディレーティング開始温度の決定処理に関しては、後ほど
図4を用いて、詳しく説明する。
【0061】
ステップS23では、1sウェイト処理を行う。マイコン10は、処理の実行を1秒間待機する。これは、マイコン10で実行する処理がディレーティング開始温度の設定処理で占有されることを抑制するためである。マイコン10は、ステップS23を行わないものであっても採用できる。
【0062】
なお、ステップS21やステップS23での時間は、上記に限定されない。さらに、以下で記載する具体的な時間に関しても同様に、本実施形態に記載の時間に限定されない。
【0063】
ここで、
図4を用いて、ディレーティング開始温度の決定処理に関して説明する。マイコン10は、温度ディレーティングがオフの場合のみ、
図4のフローチャートに示す処理を実行する。なお、本実施形態では、一例として、ディレーティング開始温度の有効範囲を100℃~107℃とする。ここでの有効範囲とは、ディレーティング開始温度を動的に変更できる温度の範囲である。また、本実施形態では、一例として、ディレーティング開始温度のデフォルト値(初期値)を108℃とする。このように、有効範囲の上限値は、デフォルト値よりも低い値である。上限値は、範囲上限ともいえる。なお、本実施形態で記載する具体的な温度は、一例であり、その温度に限定されない。
【0064】
ステップS221では、10s後の予測温度≧現在温度+3℃であるか否かを判定する(温度予測部)。マイコン10は、ステップS20で取得した現在温度と、ステップS21で取得した10秒後の予測温度を用いてステップS221を実行する。
【0065】
マイコン10は、10s後の予測温度≧現在温度+3℃であると判定するステップS223へ進む。つまり、マイコン10は、10秒後のECU温度が現在温度よりも3℃上昇している場合、ECU温度が急激に温度上昇するとみなしてステップS223へ進む(温度予測部)。ECU温度の急激な温度上昇は、インバータ回路20の急激が温度上昇とみなすことができる。また、10秒後の予測温度は、所定時間後におけるインバータ回路20の予測温度に相当する。
【0066】
なお、現在温度+3℃は、所定値に相当する。+3℃は、急激な温度上昇とみなすことができる温度の一例である。しかしながら、本開示は、これに限定されず、ECU温度が急激に温度上昇するとみなせる温度であれば採用できる。
【0067】
一方、マイコン10は、10s後の予測温度≧現在温度+3℃であると判定しないとステップS222へ進む。つまり、マイコン10は、10秒後のECU温度が現在温度よりも3℃上昇していない場合、ECU温度が急激に温度上昇しないとみなしてステップS222へ進む。
【0068】
ステップS222では、ディレーティング開始温度をデフォルト値に設定する。マイコン10は、ECU温度が急激に温度上昇していないため、ディレーティング開始温度をデフォルト値に設定(決定)する。
【0069】
マイコン10は、ECU温度の急激な温度上昇と判定すると、ディレーティング開始温度を動的に設定するためにステップS223以降の処理を行う。ステップS223では、ディレーティング開始温度を現在温度+3℃に設定する。ここで設定するディレーティング開始温度は、仮の値(暫定値)である。マイコン10は、仮のディレーティング開始温度が有効範囲内であるか否かによっても、実際のディレーティング開始温度を設定する。
【0070】
ステップS224では、ディレーティング開始温度<範囲下限であるか否かを判定する。マイコン10は、ステップS223で設定したディレーティング開始温度が有効範囲の下限(範囲下限)よりも低いか否かを判定する。マイコン10は、ディレーティング開始温度<範囲下限であると判定するとステップS225へ進む。また、マイコン10は、ディレーティング開始温度<範囲下限であると判定しないとステップS226へ進む。
【0071】
ステップS225では、ディレーティング開始温度を範囲下限に設定する(決定部)。マイコン10は、ディレーティング開始温度を範囲下限(100℃)に設定する。つまり、マイコン10は、ステップS223で設定したディレーティング開始温度が有効範囲の下限よりも低い場合は、ディレーティング開始温度を有効範囲で最も低い温度に設定する。
【0072】
ステップS226では、ディレーティング開始温度≧範囲上限であるか否かを判定する。マイコン10は、ステップS223で設定したディレーティング開始温度が有効範囲の上限(範囲上限)以上であるか否かを判定する。マイコン10は、ディレーティング開始温度≧範囲上限であると判定しないと
図4のフローチャートを終了する。このように、マイコン10は、ステップS223で設定したディレーティング開始温度が有効範囲内であれば、ステップS223で設定した値をディレーティング開始温度に設定する。
【0073】
一方、マイコン10は、ディレーティング開始温度≧範囲上限であると判定するとステップS227へ進む。ステップS227では、ディレーティング開始温度を範囲上限に設定する(決定部)。マイコン10は、ディレーティング開始温度を範囲下限(107℃)に設定する。つまり、マイコン10は、ステップS223で設定したディレーティング開始温度が有効範囲の上限以上の場合は、ディレーティング開始温度を有効範囲で最も高い温度に設定する。
【0074】
ところで、ディレーティング開始温度は、ディレーティング制御を開始するか否かを判定するための温度である。よって、ディレーティング開始温度は、モータ30の駆動制御に相関する設定値に相当する。このため、マイコン10は、ディレーティング開始温度は、ディレーティング制御を行う際に、ECU温度に応じて、モータ30の駆動制御に相関するディレーティング開始温度を動的に決定する。また、マイコン10は、設定値として、少なくともディレーティング開始温度を動的に決定するといえる。そして、マイコン10は、インバータ回路20の急激な温度上昇が予測されると、ディレーティング開始温度をデフォルト値よりも低い温度に決定する。
【0075】
これによって、マイコン10は、インバータ回路20の急激な温度上昇が予測されると、ディレーティング制御の開始を早めることができる。マイコン10は、ディレーティング開始温度として固定値を用いるよりも、ディレーティング制御の開始を早めることができる。
【0076】
なお、ディレーティング開始温度は、通常時における、モータ30の駆動制御に相関する設定値といえる。通常時とは、モータ30の駆動制御を行っており、かつ、ディレーティング制御を行っていないときである。ディレーティング開始温度は、ディレーティング制御を行っていない場合の設定値に相当する。ディレーティング制御を行っていない場合の設定値は、通常時設定値ともいえる。
【0077】
次に、
図6、
図7を用いて、ディレーティング制御中の処理動作に関して説明する。マイコン10は、ディレーティング制御を開始すると、
図6のフローチャートに示す処理を開始する。そして、マイコン10は、ディレーティング制御を終了するまで、
図6のフローチャートに示す処理を行う。なお、ステップS34は、ステップS23と同様である。
【0078】
例えば、マイコン10は、ECU温度がディレーティング開始温度以上で、かつ、開始確定時間経過した場合にディレーティング制御を開始する。そして、マイコン10は、ECU温度がディレーティング解除温度以下で、解除確定時間経過した場合にディレーティング制御を停止する。
【0079】
ステップS30では、電流値の目標低下量および電流値の目標低下レート(-OR[A/s])を決定する(取得部)。マイコン10は、ディレーティング開始時に、現在のECU温度と現在の電流値から、電流値の目標低下レート(目標電流値、目標値)を決定する。マイコン10は、所定時間内に、現在のECU温度から過熱状態ではないECU温度にするために目標低下レートを決定する。まず、マイコン10は、現在の電流値と、過熱状態ではないECU温度にするための下限電流値との差異である電流値の目標低下量を算出する。そして、マイコン10は、所定時間内に、現在の電流値から目標低下量だけ電流値を小さくするための目標低下レートを算出する。なお、
図7は、実電流値を実線で示し、目標電流値を破線で示している。過熱状態ではないECU温度は、ディレーティング解除温度といえる。
【0080】
ステップS31では、現在の電流値を取得する(取得部)。マイコン10は、電流センサ60から出力された信号に基づいて、インバータ回路20の電流値を取得する。この電流値は、実電流値に相当する。
【0081】
ステップS32では、目標低下レートに対する電流値の差異を計算する。マイコン10は、ステップS31で決定した目標低下レートと、ステップS32で取得した電流値との差異を計算する。
【0082】
ステップS33では、電流値の差異を減速レートに反映する(決定部)。減速レートは、モータ30の回転を減速させる際のレートである。マイコン10は、ステップS32で計算した差異を減速レートに反映させる。
図7の範囲r1では、実電流値が目標電流値より高いので減速を強める。
図7の範囲r2では、実電流値が目標電流値より低いので減速を弱める。
【0083】
(効果)
このように、ブロアモータ制御装置100は、ディレーティング制御を行うため、過熱状態が継続することを抑制できる。また、ブロアモータ制御装置100は、ディレーティング制御を行う際に、ECU温度に応じて減速レートを動的に決定する。このため、ブロアモータ制御装置100は、適切なディレーティング制御によってインバータ回路20の過熱状態を解消できる。
【0084】
ブロアモータ制御装置100(マイコン10)は、インバータ回路20の急激な温度上昇が予測されると、ディレーティング制御の開始を早めることができる。よって、ブロアモータ制御装置100は、インバータ回路20の急激な温度上昇が予測される場合に、モータ30の回転数が高い急激なディレーティング制御とすることができる。一方、ブロアモータ制御装置100は、インバータ回路20の急激な温度上昇が予測されない場合に、モータ30の回転数が低い緩やかなディレーティング制御とすることができる。このように、ブロアモータ制御装置100は、急激なディレーティング制御と緩やかなディレーティング制御の両立が可能となる。
【0085】
なお、ブロアモータ制御装置100は、緩やかなディレーティング制御を行うことで、ディレーティング制御時の回転数低下をユーザが気づきにくくすることができる。一方、ブロアモータ制御装置100は、急激なディレーティング制御を行うことで、確実にECU温度を低下させることができる。
【0086】
マイコン10は、ディレーティング制御を行っている場合、ECU温度の目標値に達するように、減速レートを動的に決定する。本実施形態では、一例として、モータ30の回転数に相関する値を動的に決定するマイコン10を採用している。さらに、マイコン10は、温度情報としての電流値が目標値を超えている場合は、電流値が目標値を超えていない場合よりもモータ30の回転数が低くなる値とする。このため、ブロアモータ制御装置100は、ディレーティング制御中においても、急激なディレーティング制御と緩やかなディレーティング制御の両立が可能となる。ここでの回転数が高い低いは、相対的な回転数差を示している。
【0087】
なお、減速レートは、ディレーティング制御中の設定値に相当する。減速レートは、ディレーティング制御時における、モータ30の駆動制御に相関する設定値といえる。また、減速レートは、モータ30の回転数に相関する値である。ディレーティング制御中の設定値は、制御時設定値ともいえる。減速レートは、減速度合に相当する。
【0088】
ディレーティング制御中の設定値は、減速レートに限定されない。しかしながら、マイコン10は、ディレーティング制御時の設定値として減速レートを動的に決定することで、他の値を用いる場合よりも、回転数変動を滑らかにすることができる。なお、設定値の他の値に関しては、後ほど変形例で説明する。なお、通常時設定値および制御時設定値は、ディレーティング制御中に所定の温度低下量を保障でき、且つ回転数低下を極力抑えられる値を用いる。
【0089】
以上、本開示の好ましい実施形態について説明した。しかしながら、本開示は、上記実施形態に何ら制限されることはなく、本開示の趣旨を逸脱しない範囲において、種々の変形が可能である。以下に、本開示のその他の形態として、変形例に関して説明する。上記実施形態および変形例は、それぞれ単独で実施することも可能であるが、適宜組み合わせて実施することも可能である。本開示は、実施形態において示された組み合わせに限定されることなく、種々の組み合わせによって実施可能である。
【0090】
(変形例)
図8、
図9を用いて変形例に関して説明する。変形例2では、制御時設定値として、モータ印加電圧を採用する。なお、
図9は、目標印加電圧を破線で示している。
【0091】
ステップS40では、モータ印加電圧の目標低下レート(-OR[V/s])と下限電圧を決定(算出)する。マイコン10は、ディレーティング開始時に、現在のECU温度と現在のモータ印加電圧から、モータ印加電圧の目標低下レート(目標印加電圧)と下限電圧を決定する。マイコン10は、所定時間内に、現在のECU温度から過熱状態ではないECU温度にするために目標低下レートを決定する。まず、マイコン10は、現在のモータ印加電圧と、過熱状態ではないECU温度にするための下限電圧を算出する。そして、マイコン10は、所定時間内に、現在のモータ印加電圧から下限電圧まで小さくするための目標低下レートを算出する。
【0092】
ステップS41では、電源電圧を取得する(取得部)。マイコン10は、例えば、バッテリ200の電源電圧Vb[V]をAD入力部より取得する。
【0093】
ステップS42では、目標低下レートに沿ったモータ印加電圧を計算する。マイコン10は、ステップS30で決定した目標低下レートに沿ったモータ印加電圧を計算する。ただし、ここでは、下限電圧を下回らない値である。モータ印加電圧を用いる場合、マイコン10は、急激なディレーティング制御が好ましい状況ではモータ印加電圧を低い値とし、緩やかなディレーティング制御が好ましい状況ではモータ印加電圧を高い値とする。
【0094】
ステップS43では、モータ印加電圧からモータ出力のPWMDutyを計算する。PWMデューティ比[%]は、モータ印加電圧Vm[V]/電源電圧Vb[V]×100で計算することができる。
【0095】
ステップS44では、モータ駆動を更新する(決定部)。マイコン10は、モータ出力のPWMデューティ比を調整する。
【0096】
変形例のブロアモータ制御装置100は、上記実施形態と同様の効果を奏することができる。
【0097】
(その他変形例)
本開示は、インバータ回路20の温度に相関する温度情報を取得して、ディレーティング制御を行う際に、温度情報に応じて、モータ30の駆動制御に相関する設定値を動的に決定(設定)するものであれば採用できる。言い換えれば、本開示は、インバータ回路20の温度に相関する温度情報をモニタリングして、モニタリング結果を用いて、モータ30の出力に影響を与えるパラメータを動的に設定するものであれば採用できる。
【0098】
温度情報は、上記ECU温度やインバータ回路20の電流値に限定されない。温度情報は、モータ30への印加電圧、モータ30の出力トルク、モータ30の回転数であっても採用できる。ECU温度、インバータ回路20の電流値、モータ30への印加電圧、モータ30の出力トルク、モータ30の回転数は、モニタリング結果といえる。
【0099】
つまり、マイコン10は、これらのモニタリング結果の少なくとも一つを用いて設定値を動的に決定する。例えば、温度情報としてモータ30の回転数を用いる場合、マイコン10は、回転数が目標値回転数に達していない場合にECU温度が急激に上昇していると判定する。そして、マイコン10は、回転数が目標値回転数に達していない場合よりもディレーティング開始温度をさげる。なお、マイコン10は、外圧によりモータ30に高い負荷がかかると、目標回転数に到達させようとモータ駆動電圧を高める。しかしながら、モータ30に最大トルク以上の外圧がかかっている場合、出力を最大(電圧のデューティ比100%)にしても、目標回転数に到達しない。このような場合、ECU温度が急激に上昇する。
【0100】
ブロアモータ制御装置100は、複数のモニタリング結果を用いてディレーティング制御の開始を判定することで、開始判定の精度を高めることができる。言い換えると、ブロアモータ制御装置100は、開始判定の誤判定を低減できる。また、ブロアモータ制御装置100は、複数のモニタリング結果を用いて急激な温度上昇を予測することで、予測精度を高めることができる。例えば、ブロアモータ制御装置100は、急激な温度上昇を予測する際にECU温度と電流値を用いることで、より正確な予測温度を得ることができる。
【0101】
また、設定値は、ディレーティング開始温度、減速レート、モータ印加電圧に限定されない。通常時設定値は、ディレーティング開始確定時間であっても採用できる。ブロアモータ制御装置100は、ディレーティング制御を早めに開始させるために、通常時設定値として、ディレーティング開始温度やディレーティング開始確定時間を採用する。
【0102】
制御時設定値は、下限回転数、ディレーティング解除温度、ディレーティング解除確定時間、モータ出力トルクなどであっても採用できる。つまり、マイコン10は、上記モニタリング結果を用いて、これらの設定値の少なくとも一つを動的に決定する。
【0103】
下限回転数を用いる場合、マイコン10は、急激なディレーティング制御が好ましい状況では下限回転数を小さい値とし、緩やかなディレーティング制御が好ましい状況では下限回転数を大きい値とする。急激なディレーティング制御が好ましい状況は、温度情報が目標値を超えている状況である。一方、緩やかなディレーティング制御が好ましい状況は、温度情報が目標値を下回っている状況である。なお、温度情報が目標値を超えている状況は、モータ30の高負荷時とみなすことができる。
【0104】
ディレーティング解除温度を用いる場合、マイコン10は、急激なディレーティング制御が好ましい状況ではディレーティング解除温度を小さい値とし、緩やかなディレーティング制御が好ましい状況ではディレーティング解除温度を大きい値とする。急激なディレーティング制御が好ましい状況は、温度情報が目標値を超えている状況である。一方、緩やかなディレーティング制御が好ましい状況は、温度情報が目標値を下回っている状況である。
【0105】
ディレーティング解除確定時間を用いる場合、マイコン10は、急激なディレーティング制御が好ましい状況ではディレーティング解除確定時間を短い時間とする。一方、マイコン10は、緩やかなディレーティング制御が好ましい状況ではディレーティング解除確定時間を長い時間とする。
【0106】
モータ出力トルクを用いる場合、マイコン10は、急激なディレーティング制御が好ましい状況ではモータ出力トルクを低い値とし、緩やかなディレーティング制御が好ましい状況ではモータ出力トルクを高い値とする。
【0107】
ディレーティング制御中に早くモータ30の回転数を下げることを目的とした場合、制御時設定値として減速レート、モータ印加電圧、モータ出力トルクを採用することが好ましい。なお、早くモータ30の回転数を下げることで、モータ30に高い負荷がかかっていても、ECU温度を確実に低下させることができる。
【0108】
また、ディレーティング制御中にモータ30を低い回転数で維持することを目的とした場合、制御時設定値として下限回転数、ディレーティング解除温度、ディレーティング解除確定時間を採用することが好ましい。なお、モータ30を低い回転数で維持することで、モータ30に高い負荷がかかっていても、ECU温度を確実に低下させることができる。また、ユーザが回転数低下を気づきにくくすることができる。
【0109】
ブロアモータ制御装置100は、複数の設定値を用いることで、ディレーティング制御時の回転数低下を可能な限りユーザに気付かせず、かつ、ディレーティング制御によって確実のECU温度を低下させることができる。また、ブロアモータ制御装置100は、ディレーティング制御の過剰実施を抑制できる。
【0110】
本開示は、実施形態に準拠して記述されたが、本開示は当該実施形態や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態が本開示に示されているが、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範畴や思想範囲に入るものである。
【0111】
マイコンやICが手段および/または機能を提供する例を示したが、これに限定されない。各手段および/または機能は、コンピュータプログラムを実行するプロセッサを含む専用コンピュータにより、実現されてもよい。また、専用ハードウェア論理回路を用いて実現されてもよい。
【0112】
さらに、コンピュータプログラムを実行するプロセッサと一つ以上のハードウェア論理回路との組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に格納されていてもよい。
【0113】
手段および/または機能は、実体的なメモリ装置に記録されたソフトウェアおよびそれを実行するコンピュータ、ソフトウェアのみ、ハードウェアのみ、あるいはそれらの組合せによって提供できる。たとえばプロセッサが備える機能の一部または全部はハードウェアとして実現されてもよい。
【0114】
或る機能をハードウェアとして実現する態様には、一つ以上のICなどを用いて実現する態様が含まれる。プロセッサは、CPUの代わりに、MPUやGPU、DFPを用いて実現されていてもよい。プロセッサは、CPUや、MPU、GPUなど、複数種類の演算処理装置を組み合せて実現されていてもよい。プロセッサは、システムオンチップ(SoC)として実現されていてもよい。
【0115】
さらに、各種処理部は、FPGAや、ASICを用いて実現されていてもよい。各種プログラムは、非遷移的実体的記録媒体に格納されていればよい。プログラムの保存媒体としては、HDDやSSD、フラッシュメモリ、SDカードなど、多様な格納媒体を採用可能であるDFPは、Data Flow Processorの略称である。SoCは、System on Chipの略称である。FPGAは、Field Programmable Gate Arrayの略称である。ASICは、Application Specific Integrated Circuitの略称である。HDDは、Hard disk Driveの略称である。SDは、Solid State Driveの略称である。SDは、Secure Digitalの略称である。
【符号の説明】
【0116】
10…マイコン、11…温度保護制御部、12…速度制御部、13…PWM出力部、14…メモリ、20…インバータ回路、21A~21F…インバータFET、30…モータ、31…ステータ、31U,31V,31W…コイル、32…ロータマグネット、40…ホール素子、50…分圧回路、51A…サーミスタ、51B…抵抗、60…電流センサ、60A…シャント抵抗、60B…アンプ、71…チョークコイル、72…逆接防止FET、100…ブロアモータ制御装置、200…バッテリ、300…エアコンECU