以下に添付図面を参照して、本発明に係る制御システムの実施例を詳細に説明する。まず、実施例の詳細な説明に先立ち、本願に係る制御手法の概要について図1を用いて説明する。図1は、本願に係る制御手法の概要を示す図である。なお、図1の(A)には、第1の制御装置および第2の制御装置が実行する処理手順を、図1の(B)には、第1の制御装置および第2の制御装置間の通信線に通信異常が発生した場合の従来例を、図1の(C)には、本願に係る制御手法を、それぞれ示している。
図1の(A)に示すように、本願に係る制御手法では、第1の制御装置と第2の制御装置とが協働して電源供給の停止処理を行うことで、第1の制御装置および第2の制御装置の電源オフのタイミングの同期を取っている。
具体的には、第1の制御装置と第2の制御装置とは、所定の通信線を介して相互に接続されており、かかる所定の通信線を用いて相互に通信を行いながら電源供給停止処理を進める。より詳細には、第1の制御装置と第2の制御装置の少なくとも一方の制御装置が、通信線を介して通信を行うことで第1の制御装置と第2の制御装置との間で処理同期をとりながら、制御装置に対する電源供給の停止処理を行うことによって、制御システムを低消費電力状態に制御する。「低消費電力状態」は、消費電力がゼロの場合(完全停止する場合)も含むものとする。また、以下において「電源オフ」は、「低消費電力状態」へ移行した状態も含むものとする。
このようにすることで、たとえば、一方の制御装置が独自の判断で電源供給を停止させた場合に、他方の制御装置が、所定の通信線に異常が発生したと誤認識してしまうことを防止することができる。なお、所定の通信線は、たとえば、CAN(Controller Area Network)バス等である。
ところが、図1の(B)に示すように、第1の制御装置と第2の制御装置とを接続する所定の通信線には、通信異常が発生する可能性がある(図1の(B)の(1)参照)。通信異常が発生した場合、第1の制御装置および第2の制御装置間で同期を取ることができなくなり、その結果、電源をオフすることができない状態に陥る可能性があった(図1の(B)の(2)参照)。
そこで、本願に係る制御手法では、図1の(C)に示すように、所定の通信線に通信異常が発生した場合には(図1の(C)の(1)参照)、まず、各制御装置が通信異常を検出する(図1の(C)の(2)参照)。具体的には、制御装置は、通信線を介してのデータの受信が異常検出時間以上の間なかった場合に通信異常を検出する。そして、通信異常が検出された場合、各制御装置は、通信線を介して通信を行うことによる処理同期をとらず、つまり、他方の制御装置と同期を取ることなく、個別に電源供給停止処理を実行する(図1の(C)の(3)参照)。
これにより、第1の制御装置および第2の制御装置は、所定の通信線に異常が発生した場合であっても、電源供給停止処理を完了することができる。したがって、本願に係る制御手法によれば、電源をオフすることができない状態に陥ることを回避することができる。
なお、第2の制御装置は、第1の制御装置が起動したことを条件として起動するように構成される場合がある。このような場合において、各制御装置が個別に電源供給停止処理を実行した結果、第2の制御装置が第1の制御装置よりも先に電源供給停止処理を完了させてしまった場合、第1の制御装置がまだ起動中であるため、第2の制御装置が再起動してしまう可能性がある。
そこで、本願に係る制御手法では、第1の制御装置への電源供給状態を検出する状態検出手段を第2の制御装置に対して設け、第1の制御装置への電源供給が停止したことが検出された後に、第2の制御装置の電源供給を停止させるようにしてもよい。このようにすることで、第2の制御装置の再起動を防止することができる。
以下では、本願に係る制御手法を適用した制御システムについての実施例を詳細に説明する。なお、以下の実施例では、制御システムの一例として、車載ECU間における制御システムを用いて説明する。
まず、本実施例に係る制御システムの構成例について図2を用いて説明する。図2は、本実施例に係る制御システム100の構成を示すブロック図である。
制御システム100は、たとえば、プラグインハイブリッド車に搭載される制御システムである。プラグインハイブリッド車とは、車両の外部に設けられた電源、例えば、家に設けられた家庭用電源や充電施設に設けられた急速充電器等のコンセントからの充電が可能なハイブリッド車のことである。また、制御システム100は、「充電モード」および「走行モード」の2つの動作モードを備える。「充電モード」は、主に外部電源から充電池への充電処理を行う際に実行される動作モードである。また、「走行モード」は、主に車両の走行中に実行される動作モードである。
図2に示すように、制御システム100は、PLG−ECU1と、PM−ECU2と、補機バッテリ3と、IGPリレー4と、IG2リレー5と、IGCTリレー6と、充電器7と、充電池8と、システムメインリレー9とを含む。
PLG−ECU1は、本実施例において第1の制御装置に相当するECUである。PLG−ECU1は、サブCPU11と、メインCPU12と、DMA(Direct Memory Access)通信線13と、OR回路14とを備える。
また、PM−ECU2は、本実施例において第2の制御装置に相当するECUである。PM−ECU2は、サブCPU21と、メインCPU22と、DMA通信線23と、OR回路24と、電源統合IC(Integrated Circuit)25とを備える。
PLG−ECU1は、主に、充電モードの開始を検知してPM−ECU2へ通知するECUである。サブCPU11は、充電用のプラグ(以下、「充電プラグ」と記載する)がコンセントへ挿入された場合に、スリープ状態(省電力動作状態)から通常の動作状態に復帰して、充電モードの開始をPM−ECU2へ通知する処理等を実行する。
なお、サブCPU11は、充電プラグから入力される信号である「SW1」および「PLT」に基づき、充電プラグの挿抜状態を判定する。「SW1」は、充電プラグの挿抜状態(充電プラグがコンセントへ挿入された状態またはコンセントから抜かれた状態)を示す信号である。また、「PLT」は、接続先の外部電源の電圧や位相等の情報を示すパイロット信号である。
また、サブCPU11は、メインCPU12への電源供給ラインへ設けられるIGPリレー4をオンすることによって停止状態のメインCPU12を起動させ、メインCPU12による充電処理を実行させる。
具体的には、サブCPU11は、充電モードの開始を検知すると、OR回路14に対して信号「MRL_S」を出力する。「MRL_S」がOR回路14へ入力されると、OR回路14からIGPリレー4に対して信号「MRL」が出力され、IGPリレー4がオンされる。これにより、停止状態のメインCPU12に対して補機バッテリ3から電源が供給され、メインCPU12が起動する。なお、IGPリレー4がオンされると、PM−ECU2に対して信号「PIM」が入力される。
メインCPU12は、充電モードが開始された場合に、充電器7を制御して充電池8への充電を行う充電処理を実行する。また、メインCPU12は、充電処理が終了した場合に、PM−ECU2のメインCPU22との間で、充電モード終了処理等を実行したりもする。PLG−ECU1のサブCPU11およびメインCPU12の具体的な動作については、後述する。
DMA通信線13は、サブCPU11およびメインCPU12間での通信に用いられる通信線である。なお、サブCPU11およびメインCPU12は、DMA通信線13以外の通信線であってもよい。すなわち、サブCPU11およびメインCPU12間のデータ転送は、必ずしもDMA転送であることを要しない。
OR回路14は、サブCPU11からの出力信号である「MRL_S」またはメインCPU12からの出力信号である「MRL_M」のいずれか一方が入力された場合に、IGPリレー4に対して信号「MRL」を出力する論理回路である。
PM−ECU2は、PLG−ECU1と共に充電モードや走行モードにおける充電処理等を実行するECUである。PM−ECU2のサブCPU21は、「PIM」がオン状態にされることで、PLG−ECU1から充電モードの開始が通知された場合に、スリープ状態から通常の動作状態に復帰するとともに、停止状態のメインCPU22を起動させて、メインCPU22に対して充電処理等の処理を実行させる。
具体的には、サブCPU21は、補機バッテリ3からIGPリレー4経由で「PIM」が入力されると、OR回路24に対して信号「PIMD」を出力する。「PIMD」がOR回路24へ入力されると、OR回路24からIGCTリレー6に対して信号「MRL」が出力され、IGCTリレー6がオンされる。これにより、停止状態のメインCPU22に対して補機バッテリ3から電源が供給され、メインCPU22が起動する。
なお、サブCPU21は、たとえばイグニッションスイッチ等の電源スイッチが操作された場合(すなわち、ユーザが車両に乗り込んで電源をオンにした場合であり、主に、ユーザが車両の走行を開始しようとしている場合)に出力される信号「SW2」が入力されると、電源統合IC25に対して信号「IG2D」を出力する。
メインCPU22は、PLG−ECU1とともに充電処理や充電終了処理等を実行するCPUである。たとえば、メインCPU22は、充電モードが開始された場合に、充電器7と充電池8との間に設けられたシステムメインリレー9をオンすることによって、充電池8への充電が可能な状態にする。
また、メインCPU22は、充電池8の充電状況を監視し、充電が完了した場合には、PLG−ECU1のメインCPU12に対して充電モード終了処理の開始を指示したりもする。PM−ECU2が備えるサブCPU21およびメインCPU22の具体的な動作については、後述する。
DMA通信線23は、サブCPU21およびメインCPU22間での通信に用いられる通信線である。なお、PLG−ECU1の場合と同様、サブCPU21およびメインCPU22は、DMA通信線23以外の通信線であってもよい。
OR回路24は、サブCPU21からの信号「PIMD」、メインCPU22からの信号「MRL_M」またはIG2リレー5からの信号「IG2」のいずれかが入力された場合に、IG2リレー5に対して信号「MRL」を出力する論理回路である。
電源統合IC25は、サブCPU21から「IG2D」が入力された場合に、IG2リレー5に対して信号「IG2D」を出力して、IG2リレー5をオンするICである。IG2リレー5がオンされることによって、OR回路24に対して信号「IG2」が入力される。OR回路24に対して信号「IG2」が入力されると、OR回路24からIGCTリレー6に対して信号「MRL」が出力され、IGCTリレー6がオンされる。
PLG−ECU1のメインCPU12およびPM−ECU2のメインCPU22は、ローカルバス51で相互に接続されており、このローカルバス51を用いて充電モード処理、充電モード終了処理、電源供給停止処理等に必要な情報の送受信を行う。このローカルバス51は、たとえば、CANバスである。
なお、PLG−ECU1およびPM−ECU2は、CANバス52によっても相互に接続される。CANバス52は、イグニッション系のECU同士を接続するCANバスである。また、PM−ECU2は、CANバス53やローカルバス54等によって他のECUと接続される。
補機バッテリ3は、主に車両に搭載される補機類を駆動させるために用いられるバッテリであり、車両の走行等に用いるメインバッテリである充電池8とは別に設けられ、充電池8よりも低電圧のバッテリである。補機バッテリ3からの電源は、PLG−ECU1のサブCPU11およびPM−ECU2のサブCPU21に対して常時供給される。
一方、補機バッテリ3からの電源は、PLG−ECU1のメインCPU12およびPM−ECU2のメインCPU22に対しては、それぞれIGPリレー4およびIGCTリレー6を介して供給される。すなわち、補機バッテリ3からの電源は、それぞれIGPリレー4およびIGCTリレー6がオンされることによって、PLG−ECU1のメインCPU12およびPM−ECU2のメインCPU22へ供給される。
IGPリレー4は、PLG−ECU1のメインCPU12と補機バッテリ3との間に設けられたリレー回路である。このIGPリレー4は、PLG−ECU1のOR回路14から「MRL」が入力されることでオンされる。
IG2リレー5は、PM−ECU2のメインCPU22と補機バッテリ3との間に設けられたリレー回路である。このIG2リレー5は、SW2がオン状態となると、サブCPU21から電源統合IC25を経由して「IG2D」が入力されることでオンされる。なお、IG2リレー5は、主に、ユーザが車両に乗り込んで電源をオンした場合に接続されるリレーである。
IG2リレー5と同様、IGCTリレー6も、PM−ECU2のメインCPU22と補機バッテリ3との間に設けられたリレー回路である。このIGCTリレー6は、PM−ECU2のOR回路24から「MRL」が入力されることでオンされる。
充電器7は、充電池8への充電を行うための充電器である。充電池8は、充電器7およびシステムメインリレー9を介して外部電源から供給される電気を蓄える電池である。システムメインリレー9は、充電器7と充電池8との間に設けられたリレー回路であり、PM−ECU2のメインCPU22によってオン・オフが制御される。
このように、制御システム100には、制御システム100の電源供給経路として、PLG−ECU1に対する電源供給を行うIGP(第1の電源経路)と、PM−ECU2に対する電源供給を行うIGCT(第2の電源経路)とが設けられている。
次に、PLG−ECU1およびPM−ECU2の構成について説明する。図3は、PLG−ECU1およびPM−ECU2の構成を示すブロック図である。
図3に示すように、PLG−ECU1のサブCPU11は、モード制御部11aを備え、メインCPU12は、異常検出部12aと、停止制御部12eとを備える。また、停止制御部12eは、終了処理部12bと、電源停止処理部12cとを備える。
一方、PM−ECU2サブCPU21は、起動制御部21aを備え、メインCPU22は、異常検出部22aと、停止制御部22eを備える。また、停止制御部22eは、終了処理部22bと、電源停止処理部22cと、状態検出部22dとを備える。
PLG−ECU1のモード制御部11aは、充電モード終了処理の開始をPM−ECU2のメインCPU22から指示された場合に、充電モードでの動作時に接続していたIGPリレー4をオフするために「IGP信号」をオフする処理部である。
異常検出部12aは、自装置を含む制御システム100の異常を検出する処理部である。たとえば、異常検出部12aは、PM−ECU2からローカルバス51を介して定期的に送信されてくるデータを、前回受信してから所定時間が経過しても受信しなかった場合に、ローカルバス51の通信異常を検出する。このように、異常検出部12aは、通信線を介してのデータの受信が異常検出時間以上の間なかった場合に通信異常を検出する。
PLG−ECU1の停止制御部12eは、通信線を介して通信を行うことでPM−ECU2と処理同期をとりながら、電源供給の停止処理を行うことによって低消費電力状態に移行する処理を行う処理部であり、終了処理部12bと、電源停止処理部12cとを備える。
終了処理部12bは、電源供給停止処理に先立って行われる充電モード終了処理を実行する前処理部である。
具体的には、終了処理部12bは、充電モード終了処理に含まれる各手順のうちの充電終了処理まで完了した場合に、充電終了処理が完了した旨を示す完了通知「PLG側電源保持要求」オフをPM−ECU2へ送信する。PM−ECU2は、「PLG側電源保持要求」オフを受信することで、PLG−ECU1が充電処理を完了させたことを認識することができる。なお、充電モード終了処理の具体的な手順については、図4Aを用いて後述する。
電源停止処理部12cは、PM−ECU2の電源停止処理部22cから電源供給の停止が許可された場合に、自装置への電源供給を停止する電源停止処理を行う処理部である。具体的には、電源停止処理部12cは、PM−ECU2の電源停止処理部22cから後述する「MRL保持集約結果」オフを受信した場合に、電源停止処理を行う。
PM−ECU2の起動制御部21aは、じか線で入力されるPIMがオン状態になったことを検出した場合に、スリープ状態から通常動作状態に復帰する処理(起動処理)を行う処理部である。
このように、起動制御部21aは、IGCT(第2の電源経路)が非接続状態にあるときに、PIM(第1の電源経路)の接続状態が接続状態になったことを検出すると、IGCT(第2の電源経路)を接続状態にする起動制御を行う。
なお、電源オフ処理時に、PLG−ECU1とPM−ECU2とが電源オフ(スリープ状態への移行)のタイミングを同期させる処理を行わない場合、電源オフ→起動→電源オフ→…といった電源オフと起動を繰り返してしまう現状が生じる可能性がある。
たとえば、PLG−ECU1よりもPM−ECU2が先に電源オフ状態に移行した場合、PM−ECU2のサブCPU21はスリープ状態となるが、PLG−ECU1の電源オフ処理が完了していないと、IGPリレーがまだ接続状態であることから、PIMオンがPM−ECU2のサブCPUに入力される状態となるため、PM−ECU2のサブCPUはPLG−ECU1から起動要求があったと判断して、起動処理を行い、通常の処理状態に復帰してしまう。復帰後、すぐに起動しておく必要はないと判断して終了処理を開始するが、また、終了処理時に上記したような状況に陥る。
PM−ECU2の異常検出部22aは、自装置を含む制御システムの異常を検出する処理部である。異常検出部22aによるローカルバス51の通信異常の検出方法は、PLG−ECU1の異常検出部12aと同様であり、通信線を介してのデータの受信が異常検出時間以上の間なかった場合に通信異常を検出する。
PM−ECU2の終了処理部22bは、PM−ECU1の終了処理部12bとの間で充電モード終了処理を実行する処理部である。電源停止処理部22cは、充電モード終了処理の各手順のうち充電終了処理まで完了し、かつ、PLG−ECU1から「PLG側電源保持要求」オフを受け取った場合に、PLG−ECU1に対して電源供給の停止を許可する電源停止処理を行う処理部である。
状態検出部22dは、PLG−ECU1の電源供給状態を検出する処理部である。具体的には、状態検出部22dは、補機バッテリ3からIGPリレー4経由で入力される信号「PIM」のオン・オフに応じてPLG−ECU1の電源供給状態を検出する。すなわち、状態検出部22dは、「PIM」がオフされた場合に、PLG−ECU1への電源供給が停止したことを検出する。また、「PIM」がオンされた場合に、PLG−ECU1が起動されたことを検出する。
次に、充電モード終了処理が正常に行われた場合の例について図4Aを用いて説明する。図4Aは、充電モード終了処理が正常に行われた場合の例を示すシーケンス図である。
なお、充電モード終了処理の開始時において、PLG−ECU1のメインCPU12およびPM−ECU2のメインCPU22は、ともに起動した状態である。すなわち、PLG−ECU1のサブCPU11およびメインCPU12からOR回路14へそれぞれ「MRL_S」および「MRL_M」がオン出力され、IGPリレー4がオンされた状態となっている。また、PM−ECU2のサブCPU21およびメインCPU22からOR回路24へそれぞれ「PIMD」および「MRL_M」がオン出力され、IGCTリレー6がオンされた状態となっている。なお、IG2リレー5についてはオフする制御状態にあることとする。
図4Aに示すように、PM−ECU2のメインCPU22は、充電池8への充電が終了したと判定すると(ステップS11)、「IGPオフ要求」をオンする(ステップS12)。また、PM−ECU2のメインCPU22は、「IGPオフ要求」オンを、ローカルバス51を介してPLG−ECU1のメインCPU12へ送信する(ステップS13)。この「IGPオフ要求」のオンが、充電終了処理の開始指示に相当する。
つづいて、PLG−ECU1のメインCPU12は、ローカルバス51を介してPM−ECU2から「IGPオフ要求」オンを受け取ると、「IGPオフ要求」オンを、DMA通信線13を介してサブCPU11へ送信する(ステップS14)。PLG−ECU1のサブCPU11は、「IGPオフ要求」オンを受信すると、充電モードに対応するモード信号である「IGP信号」をオフするとともに(ステップS15)、「MRL_S」をオフする(ステップS16)。また、サブCPU11は、「IGP信号」オフをメインCPU12へ送信する(ステップS17)。
なお、図2に示すように、「MRL_S」がオフされても、PLG−ECU1のOR回路14にはメインCPU12から「MRL_M」がオン入力されているため、この時点ではIGPリレー4はオフされない。
サブCPU11から「IGP信号」オフを受信すると、PLG−ECU1のメインCPU12は、「IGP信号」オフを、ローカルバス51を介してPM−ECU2のメインCPU22へ送信する(ステップS18)。
PM−ECU2のメインCPU22は、PLG−ECU1のメインCPU12から「IGP信号」オフを受信すると、充電終了処理を開始する(ステップS19)。また、PLG−ECU1のメインCPU12も、「IGP信号」オフをPM−ECU2のメインCPU22へ送信した後、充電終了処理を開始する(ステップS20)。
つづいて、PM−ECU2のメインCPU22は、充電終了処理が完了すると、「PM側電源保持要求」をオフする(ステップS21)。また、PLG−ECU1のメインCPU12は、充電終了処理が完了すると、「PLG側電源保持要求」をオフした後(ステップS22)、「PLG側電源保持要求」オフをPM−ECU2のメインCPU22へ送信する(ステップS23)。そして、PM−ECU2のメインCPU22は、「PM側電源保持要求」がオフされ、かつ、PLG−ECU1から「PLG側電源保持要求」オフを受信すると、「MRL保持集約結果」をオフする(ステップS24)。この「MRL保持集約結果」がオフされることによって、電源供給停止処理への移行が可能な状態となる。
なお、ここでは、PM−ECU2のメインCPU22が、「PM側電源保持要求」をオフした後に、PLG−ECU1から「PLG側電源保持要求」オフを受信する場合の例を示したが、これに限ったものではない。すなわち、PM−ECU2のメインCPU22は、「PM側電源保持要求」をオフする前に、PLG−ECU1から「PLG側電源保持要求」オフを受信する場合もある。
次に、電源供給停止処理が正常に行われた場合の例について図4Bを用いて説明する。図4Bは、電源供給停止処理が正常に行われた場合の例を示すシーケンス図である。電源供給停止処理は、図4Aに示す充電モード終了処理に引き続き実行される。
図4Bに示すように、PM−ECU2のメインCPU22は、「MRL保持集約結果」オフを、ローカルバス51を介してPLG−ECU1のメインCPU12へ送信する(ステップS31)。そして、「MRL保持集約結果」オフを受信すると、PLG−ECU1のメインCPU12は、「MRL_M」をオフする(ステップS32)。
PM−ECU2のメインCPU22は、「MRL保持集約結果」オフをPLG−ECU1へ送信した後、ローカルバス51を停止させる(ステップS33)。同様に、PLG−ECU1のメインCPU12も、「MRL_M」をオフした後、ローカルバス51を停止させる(ステップS34)。これにより、PLG−ECU1およびPM−ECU2間の通信が切断された状態となる。
また、PLG−ECU1のメインCPU12によって「MRL_M」がオフされると(図4Bの(1)参照)、「MRL_S」と「MRL_M」がともにオフされた状態となるため、OR回路14からの信号「MRL」がオフされ、IGPリレー4がオフされる。この結果、PLG−ECU1のメインCPU12への電源供給量が低下することとなる(図4Bの(2)参照)。そして、PLG−ECU1のメインCPU12への電源供給が停止すると、メインCPU12は停止状態となる(図4Bの(3)参照)。また、IGPリレー4を介する経路の電圧低下を検出する等の方法で、メインCPU12が停止したと判断すると、サブCPU11は、スリープ状態へ移行する(ステップS35)。
一方、IGPリレー4がオフされ、PLG−ECU1のメインCPU12への電源供給が停止すると、「PIM」がオフされる(図4Bの(4)参照)。「PIM」がオフされたことを検出すると、PM−ECU2のサブCPU21は「PIMD」をオフし(ステップS36)、メインCPU22は「MRL_M」をオフする(ステップS37)。
このように、制御システム100では、まず、PLG−ECU1において、MRL_SとMRL_Mの出力状態をオフ状態にし、MRLをオフ状態にすることで、PM−ECU2に入力されるPIMをオフ状態とし、PM−ECU2において、PIMがオフ状態になったことを検出した後に、PM−ECU2における電源オフ(リレーオフ)処理を行うようにしている。
これは、PM−ECU2における電源オフ状態(スリープ状態)からの復帰トリガーが、PIMのオン入力であるためであり、電源オフ→起動→電源オフ→…といった電源オフと起動を繰り返してしまう現象が発生しないように、同期をとった電源オフ処理として、PLG−ECU1→PM−ECU2の順序で電源オフ(リレーオフ)処理を行うようにするとともに、PM−ECU2の電源オフ処理は、PLG−ECU1でリレーのオフがされたこと(PIMオフ)を検出した後に行うようにしている。
本実施例において示した例では、最終的にじか線(PIM)の入力状態を検出することで同期を取っているが、その前段階の同期を取る処理で通信バスを用いており、上記の電源オフ→起動→電源オフ→…といった電源オフと起動を繰り返してしまう現象の発生を回避する手段としても通信バスが用いられている。
「PIMD」および「MRL_M」がともにオフされると、「IG2」はもともとオフ状態であるので、OR回路24からの「MRL」がオフされ、IGCTリレー6がオフされる。この結果、PM−ECU2のメインCPU22への電源供給量が低下することとなる(図4Bの(5)参照)。PM−ECU2のメインCPU22への電源供給が停止すると、メインCPU22は停止状態となる(図4Bの(6)参照)。また、IGCTリレー6を介する経路の電圧低下を検出する等の方法で、メインCPU22が停止したと判断すると、サブCPU21は、スリープ状態へ移行する(ステップS38)。
このように、PLG−ECU1およびPM−ECU2は、充電モード終了処理および電源供給停止処理を協働して行うことにより、電源オフのタイミングの同期を取ることとしている。これは、たとえば、一方のECUが独自の判断で電源供給を停止させると、他方のECUが、ローカルバス51に異常が発生したと誤認識してしまうおそれがあるためである。また、たとえば、2つのECUが同期を取らずに電源オフすると、一方のECUが電源オフ状態となった後に、他方のECUから起動要求があったと誤判断して起動を始めてしまうことを繰り返すことで、電源オフ状態に移行できない現象が生じるおそれがあるためである。
ところが、従来技術では、ローカルバスに実際に通信異常が発生した場合、PLG−ECUおよびPM−ECU間で同期を取ることができなくなり、その結果、電源をオフすることができない状態に陥る可能性があった。ここでは、一例として、充電モード終了処理中に通信異常が発生した場合の従来例について図5を用いて説明する。図5は、充電モード終了処理中に通信異常が発生した場合の従来例を示すシーケンス図である。
図5に示すように、たとえば、PM−ECUのメインCPUがステップS11の充電終了判定を行った後に、ローカルバスの通信異常が発生したとする(図5の(1)参照)。
かかる場合、PM−ECUのメインCPUは、「IGPオフ要求」をオンし(ステップS12)、PLG−ECUに対して「IGPオフ要求」オンを送信する。しかし、PLG−ECUのメインCPUは、ローカルバスに異常が発生しているため、「IGPオフ要求」オンを受信することができない(図5の(2)参照)。
このため、PLG−ECUのメインCPUは、PM−ECUから「IGPオフ要求」オンの受信を待ち続ける状態となる(図5の(3)参照)。また、PLG−ECUは、PM−ECUから「IGPオフ要求」オンを受信しなければ「IGP信号」をオフせず、「IGP信号」をオフしなければPM−ECUに対して「IGP信号」オフを送信しない。したがって、PM−ECUのメインCPUは、PLG−ECUから「IGP信号」オフの受信を待ち続ける状態となり、電源供給停止処理への移行が不可能となる(図5の(4)参照)。
この結果、PLG−ECUおよびPM−ECUは、電源をオフすることができず、補機バッテリのバッテリ上がりに陥る可能性がある(図5の(5)参照)。
そこで、本実施例に係る制御システム100では、ローカルバス51の通信異常が異常検出部12a,22aによって検出された場合に、PLG−ECU1およびPM−ECU2が個別に電源供給停止処理を実行することとした。
具体的には、電源供給の停止処理を個別に行う場合、PLG−ECU1の停止制御部12eは、PIM(第1の電源経路)を非接続状態にする制御を行い、PM−ECU2の停止制御部22eは、PIMの接続状態を検出し、当該接続状態が非接続状態になったことを検出すると、IGCT(第2の電源経路)を非接続状態にする制御を行う。
かかる点について図6Aおよび図6Bを用いて具体的に説明する。図6Aおよび図6Bは、本実施例に係る制御システム100において充電モード終了処理中に通信異常が発生した場合の例を示すシーケンス図である。
図6Aおよび図6Bには、図5と同様に、PM−ECU2のメインCPU22が充電終了判定を行った後に、ローカルバス51の通信異常が発生した場合の例について示している(図6Aの(1)参照)。また、図6Bには、図6Aの処理に引き続き行われる処理手順について示している。
図6Aに示すように、ローカルバス51に異常が発生すると、PM−ECU2のメインCPU22は、通信異常を検出する(ステップS41)。そして、PM−ECU2のメインCPU22は、通信異常を検出すると、PLG−ECU1から「IGP信号」オフを受信したか否かにかかわらず(図4AのステップS18参照)、充電終了処理を開始する(ステップS42)。
また、ローカルバス51に異常が発生すると、PLG−ECU1のメインCPU12は、通信異常を検出する(ステップS43)。通信異常の検出の行い方としては、たとえば、所定時間以上、ローカルバス51でのデータ受信がない場合に通信異常と判断する方法がある。つづいて、PLG−ECU1のメインCPU12は、「通信異常」を、DMA通信線13を介してサブCPU11へ送信した後(ステップS44)、サブCPU11から「IGP信号」オフを受信することなく充電終了処理を開始する(ステップS45)。
また、PLG−ECU1のサブCPU11は、メインCPU12から「通信異常」を受信すると、充電モードに対応するモード信号である「IGP信号」をオフするとともに(ステップS46)、「MRL_S」をオフする(ステップS47)。
このように、メインCPU12の終了処理部12bは、異常検出部12aによってローカルバス51の異常が検出された場合には、PM−ECU2から「IGPオフ要求」を受信しなくとも充電終了処理を開始する。これにより、充電モード終了処理中にローカルバス51の通信異常が発生した場合であっても、充電モード終了処理を完了して、電源供給停止処理へ移行することが可能となる。
図6Bに示すように、PLG−ECU1のメインCPU12は、充電終了処理が完了すると、PM−ECU2から「MRL保持集約結果」オフを受信したか否かにかかわらず(図4BのステップS31参照)、「MRL_M」をオフする(ステップS51)。
PLG−ECU1のメインCPU12によって「MRL_M」がオフされると、「MRL_S」と「MRL_M」がともにオフされた状態となるため、OR回路14からの信号「MRL」がオフされ、IGPリレー4がオフされる。この結果、PLG−ECU1のメインCPU12への電源供給量が低下することとなる(図6Bの(1)参照)。そして、PLG−ECU1のメインCPU12への電源供給が停止すると、メインCPU12は停止状態となる(図6Bの(2)参照)。また、メインCPU12が停止すると、サブCPU11は、スリープ状態へ移行する(ステップS52)。
一方、PM−ECU2のメインCPU22は、充電終了処理が完了すると、「PM側電源保持要求」をオフする(ステップS53)。そして、PM−ECU2のメインCPU22は、状態検出部22dによってPLG−ECU1への電源供給が停止したことを検出した後、電源停止処理を行う。
具体的には、PLG−ECU1のメインCPU12への電源供給ラインに設けられたIGPリレー4がオフされると、信号「PIM」がオフされる。PM−ECU2では、「PIM」がオフされたことを条件として(図6Bの(3)参照)、サブCPU21が「PIMD」をオフし(ステップS54)、メインCPU22が「MRL_M」をオフする(ステップS55)。
「PIMD」および「MRL_M」がともにオフされると、OR回路24からの「MRL」がオフされ、IGCTリレー6がオフされる。この結果、PM−ECU2のメインCPU22への電源供給量が低下することとなる(図6Bの(4)参照)。PM−ECU2のメインCPU22への電源供給が停止すると、メインCPU22は停止状態となる(図6Bの(5)参照)。また、メインCPU22が停止すると、サブCPU21は、スリープ状態へ移行する(ステップS56)。
このように、PLG−ECU1およびPM−ECU2は、ローカルバス51の異常を検出する異常検出部12a,22aを備え、異常検出部12a,22aによってローカルバス51の異常が検出された場合には、電源供給停止処理を個別に行うこととした。
具体的には、PLG−ECU1は、異常検出部12aによってローカルバス51の異常が検出された場合には、PM−ECU2からローカルバス51を介して「MRL保持集約結果」オフを受信しなくとも自装置の電源供給の停止処理を開始する。また、PM−ECU2は、異常検出部22aによってローカルバス51の異常が検出された場合には、「MRL保持集約結果」オフをPLG−ECU1へ送信することなく、自装置の電源供給の停止処理を開始することとした。
これにより、ローカルバス51に異常が発生した場合であっても、PLG−ECU1およびPM−ECU2の電源をオフすることができる。
また、本実施例では、PM−ECU2が、状態検出部22dをさらに備え、状態検出部22dによってPLG−ECU1への電源供給が停止したことが検出された後に、自装置の電源供給を停止させることとした。
すなわち、PM−ECU2は、PLG−ECU1よりも先に電源をオフしてしまうと、「PIM」が入力されて再び起動してしまうおそれがある。また、PM−ECU2は、再び起動した後に、ローカルバス51の異常を再度検出し、電源供給の停止処理を行って電源供給を再び停止させる。このように、PM−ECU2は、PLG−ECU1よりも先に電源をオフしてしまうと、電源オフおよび電源オンを繰り返してしまうおそれがある。
このため、本実施例のように、PLG−ECU1への電源供給が停止したことが検出された後に、PM−ECU2の電源供給を停止させることとすることにより、PM−ECU2が電源オフおよび電源オンを繰り返す事態を回避することができる。
ところで、これまでは、PM−ECU2のメインCPU22が充電終了判定を行った後に、ローカルバス51の通信異常が発生した場合の例について説明してきた。しかし、ローカルバス51の通信異常が発生するタイミングは、これに限ったものではない。そこで、以下では、充電モード終了処理中に通信異常が発生した場合の他の従来例について図7を用いて説明する。図7は、充電モード終了処理中に通信異常が発生した場合の他の従来例を示すシーケンス図である。
図7に示すように、たとえばPLG−ECUのサブCPUが「IGP信号」オフをメインCPUへ送信した後、PLG−ECUのメインCPUが「IGP信号」オフをPM−ECUのメインCPUへ送信する前に、通信異常が発生したとする(図7の(1)参照)。
かかる場合、PLG−ECUのメインCPUは、PM−ECUのメインCPUに対して「IGP信号」オフを送信しようとする。しかし、PM−ECUのメインCPUは、ローカルバスに異常が発生しているため、「IGP信号」オフを受信することができない(図7の(2)参照)。このため、PM−ECUのメインCPUは、「IGP信号」オフの受信を待ち続ける状態となり、電源供給停止処理への移行が不可能となる(図7の(3)参照)。
一方、PLG−ECUのメインCPUは、充電終了処理を行い(ステップS20)、「PLG側電源保持要求」をオフした後(ステップS22)、PM−ECUに対して「PLG側電源保持要求」オフを送信する。しかし、PM−ECUのメインCPUは、ローカルバスに異常が発生しているため、「PLG側電源保持要求」オフを受信することができない(図7の(4)参照)。
また、PLG−ECUのメインCPUは、PM−ECUから「MRL保持集約結果」オフが送信されないため、「MRL保持集約結果」オフの受信を待ち続けることとなる(図7の(5)参照)。
この結果、PLG−ECUおよびPM−ECUは、電源をオフすることができず、補機バッテリのバッテリ上がりに陥る可能性がある(図7の(6)参照)。
つづいて、本実施例に係る制御システム100において充電モード終了処理中に通信異常が発生した場合の他の例について図8を用いて説明する。図8は、本実施例に係る制御システム100において充電モード終了処理中に通信異常が発生した場合の他の例を示すシーケンス図である。
図8には、図7と同様に、PLG−ECU1のサブCPU11が「IGP信号」オフをメインCPU12へ送信した後に、ローカルバス51の異常が発生した場合の例について示している(図8の(1)参照)。
図8に示すように、ローカルバス51に異常が発生すると、PM−ECU2のメインCPU22は、通信異常を検出する(ステップS61)。そして、PM−ECU2のメインCPU22は、通信異常を検出すると、PLG−ECU1から「IGP信号」オフを受信したか否かにかかわらず、充電終了処理を開始する(ステップS62)。
また、ローカルバス51に異常が発生すると、PL−ECU1のメインCPU12は、通信異常を検出する(ステップS63)。つづいて、PL−ECU1のメインCPU12は、「通信異常」をDMA通信線13を介してサブCPU11へ送信した後(ステップS64)、サブCPU11から「IGP信号」オフを受信することなく充電終了処理を開始する(ステップS65)。
また、PLG−ECU1のサブCPU11は、メインCPU12から「通信異常」を受信すると、充電モードに対応するモード信号である「IGP信号」をオフするとともに(ステップS66)、「MRL_S」をオフする(ステップS67)。
その後、PLG−ECU1およびPM−ECU2は、図6Bに示した処理手順と同様の処理手順を実行する。これにより、PLG−ECU1およびPM−ECU2は、ローカルバス51に異常が発生した場合であっても、電源をオフすることができる。
次に、PM−ECU2の具体的動作について図9を用いて説明する。図9は、PM−ECU2が実行する処理手順を示すフローチャートである。なお、図9には、充電処理を開始してから電源供給を停止するまでの処理手順について示している。
図9に示すように、PM−ECU2では、メインCPU22が、充電処理を行った後(ステップS101)、異常検出部22aによってローカルバス51の通信異常が検出されたか否かを判定する(ステップS102)。このとき、ローカルバス51の通信異常が検出されていなければ(ステップS102,No)、メインCPU22は、「充電終了要求」を受けたか否かを判定する(ステップS103)。なお、メインCPU22は、たとえば、充電池8への充電が完了した場合、あるいは、PLG−ECU1から充電処理を終了すべき旨の要求を受けた場合に、「充電終了要求」を受けたと判定する。
ステップS103においてメインCPU22は、「充電終了要求」を受けたと判定すると(ステップS103,Yes)、「IGPオフ要求」をオンし、「IGPオフ要求」オンをPLG−ECU1へ送信する(ステップS104)。なお、ステップS103において「充電終了要求」を受けていない場合(ステップS103,No)、メインCPU22は、処理をステップS101へ戻す。
つづいて、PM−ECU2では、メインCPU22が、異常検出部22aによってローカルバス51の通信異常が検出されたか否かを判定する(ステップS105)。このとき、ローカルバス51の通信異常が検出されていなければ(ステップS105,No)、メインCPU22は、「IGP信号」オフを受信したか否かを判定する(ステップS106)。
この処理において「IGP信号」オフを受信したと判定した場合(ステップS106,Yes)、メインCPU22は、充電終了処理を実行した後(ステップS107)、「PM側電源保持要求」をオフする(ステップS108)。なお、ステップS106において「IGP信号」オフを受信していない場合(ステップS106,No)、メインCPU22は、処理をステップS105へ戻す。
つづいて、PM−ECU2では、メインCPU22が、異常検出部22aによってローカルバス51の通信異常が検出されたか否かを判定する(ステップS109)。このとき、ローカルバス51の通信異常が検出されていなければ(ステップS109,No)、メインCPU22は、「PLG側電源保持要求」オフを受信したか否かを判定する(ステップS110)。
そして、メインCPU22は、「PLG側電源保持要求」オフを受信したと判定すると(ステップS110,Yes)、「MRL保持集約結果」をオフし(ステップS111)、「MRL保持集約結果」オフをPLG−ECU1へ送信する(ステップS112)。なお、「PLG側電源保持要求」オフを受信していない場合(ステップS110,No)、メインCPU22は、処理をステップS109へ戻す。
一方、ステップS102またはステップS105においてローカルバス51の通信異常が検出されたと判定した場合(ステップS102,YesまたはステップS105,Yes)、メインCPU22は、充電終了処理を実行する(ステップS113)。このように、メインCPU22は、「充電要求」を受けたか否かにかかわらず、また、「IGP信号」オフを受信したか否かにかかわらず、充電終了処理を実行する。充電終了処理を実行すると、メインCPU22は、「PM側電源保持要求」をオフする(ステップS114)。
ステップS114の処理を終えた後、あるいは、ステップS109においてローカルバス51の通信異常が検出されたと判定した場合(ステップS109,Yes)、メインCPU22は、「MRL保持集約結果」をオフする(ステップS115)。このように、メインCPU22は、「PLG側電源保持要求」オフを受信したか否かにかかわらず、「MRL保持集約結果」をオフする。ステップS112またはステップS115の処理を終えると、メインCPU22は、ローカルバス51を停止する(ステップS116)。
つづいて、PM−ECU2では、メインCPU22が、「PIM」がオフされたか否かを判定する(ステップS117)。そして、PM−ECU2では、「PIM」がオフされたと判定した場合に(ステップS117,Yes)、サブCPU21が「PIMD」をオフするとともに、メインCPU22が「MRL_M」をオフし(ステップS118)、処理を終える。なお、メインCPU22は、「PIM」がオフされていない場合には(ステップS117,No)、「PIM」がオフされるまでステップS117の判定処理を繰り返す。
次に、PLG−ECU1の具体的動作について図10を用いて説明する。図10は、PLG−ECU1が実行する処理手順を示すフローチャートである。なお、図10には、充電処理を開始してから電源供給を停止するまでの処理手順について示している。
図10に示すように、PLG−ECU1では、メインCPU12が、充電処理を行った後(ステップS201)、異常検出部12aによってローカルバス51の通信異常が検出されたか否かを判定する(ステップS202)。このとき、ローカルバス51の通信異常が検出されていなければ(ステップS202,No)、メインCPU12は、「IGPオフ要求」オンを受信したか否かを判定する(ステップS203)。
PLG−ECU1では、「IGPオフ要求」オンを受信したと判定すると(ステップS203,Yes)、サブCPU11が、「IGP信号」をオフし(ステップS204)、「MRL_S」をオフする(ステップS205)。そして、PLG−ECU1では、メインCPU12が、「IGP信号」オフをPM−ECU2へ送信する(ステップS206)。なお、ステップS203において「IGPオフ要求」オンを受信していない場合(ステップS203,No)、メインCPU12は、処理をステップS201へ戻す。
つづいて、PLG−ECU1では、充電終了処理を実行した後(ステップS207)、「PLG側電源保持要求」をオフし(ステップS208)、「PLG側電源保持要求」オフをPM−ECU2へ送信する(ステップS209)。
つづいて、PLG−ECU1では、メインCPU12が、異常検出部12aによってローカルバス51の通信異常が検出されたか否かを判定する(ステップS210)。このとき、ローカルバス51の通信異常が検出されていなければ(ステップS210,No)、メインCPU12は、「MRL保持集約結果」オフを受信したか否かを判定する(ステップS211)。この処理において「MRL保持集約結果」オフを受信していない場合(ステップS211,No)、メインCPU12は、処理をステップS210へ戻す。
一方、ステップS202においてローカルバス51の通信異常が検出されたと判定した場合(ステップS202,Yes)、PLG−ECU1のサブCPU11は、「IGP信号」をオフし(ステップS212)、「MRL_S」をオフする(ステップS213)。このように、サブCPU11は、「IGPオフ要求」オンを受信したか否かにかかわらず、「MRL_S」をオフする。
つづいて、PLG−ECU1では、メインCPU12が、充電終了処理を実行した後(ステップS214)、「PLG側電源保持要求」をオフする(ステップS215)。また、メインCPU12は、ステップS215の処理を終えたとき、ステップS211において「MRL保持集約結果」オフを受信したと判定した場合(ステップS211,Yes)、あるいは、ステップS210においてローカルバス51の通信異常が検出された場合(ステップS210,Yes)、処理をステップS216へ移行する。
そして、PLG−ECU1のメインCPU12は、「MRL_M」をオフした後(ステップS216)、ローカルバス51を停止して(ステップS217)、処理を終了する。このように、PLG−ECU1のメインCPU12は、ローカルバス51の通信異常を検出した場合には、「MRL保持集約結果」オフを受信したか否かにかかわらず、「MRL_M」をオフする。
上述してきたように、本実施例では、PLG−ECU1およびPM−ECU2が、ローカルバス51の異常を検出する異常検出部12a,22aを備える。そして、本実施例では、PLG−ECU1およびPM−ECU2が、異常検出部12a,22aによってローカルバス51の異常が検出された場合に、電源供給の停止処理を個別に行うこととした。したがって、電源をオフすることができない状態に陥ることを回避することができる。
なお、上述してきた実施例では、PLG−ECUおよびPM−ECUが協働して充電モード処理を行う場合の例について説明してきた。しかし、第1の制御装置および第2の制御装置は、PLG−ECUおよびPM−ECU以外の制御装置であってもよい。また、第1の制御装置および第2の制御装置間で実行される所定の処理は、充電モード処理以外の処理であってもよい。
また、本実施例は、有線での充電(充電ケーブルを介しての充電)を行う場合の例を示しているが、本願の開示する制御システムは、無線での充電(非接触充電)を行う充電システムにも適用可能である。非接触充電を行う場合、SW1の入力は、たとえば、充電可能な範囲に外部電源があることを示す信号の入力や、ユーザによる充電開始のスイッチ入力である。
以上、本願に係る制御システムの実施例のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。