JP2016092547A - 制御システム - Google Patents
制御システム Download PDFInfo
- Publication number
- JP2016092547A JP2016092547A JP2014223463A JP2014223463A JP2016092547A JP 2016092547 A JP2016092547 A JP 2016092547A JP 2014223463 A JP2014223463 A JP 2014223463A JP 2014223463 A JP2014223463 A JP 2014223463A JP 2016092547 A JP2016092547 A JP 2016092547A
- Authority
- JP
- Japan
- Prior art keywords
- period
- message
- control device
- ecu
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/60—Other road transportation technologies with climate change mitigation effect
- Y02T10/62—Hybrid vehicles
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
- Y02T90/10—Technologies relating to charging of electric vehicles
- Y02T90/16—Information or communication technologies improving the operation of electric vehicles
Landscapes
- Small-Scale Networks (AREA)
- Hybrid Electric Vehicles (AREA)
- Electric Propulsion And Braking For Vehicles (AREA)
Abstract
【課題】制御装置間の通信が一時的に途絶えた原因を判定することのできる制御システムを提供する。
【解決手段】この制御システム10は、互いに通信を行う統括ECU100及びインバータECU200を備えている。
統括ECU100は、
インバータECU200による定期メッセージの送信が途絶えた期間である途絶期間が生じた場合において、途絶期間が生じた原因が、インバータECU200のリセットによるものか、それとも一時的な通信経路の異常によるものか、を判定する判定部140を有する。
判定部140は、途絶期間の長さに基づいて、途絶期間が生じた原因の判定を行う。
【選択図】図1
【解決手段】この制御システム10は、互いに通信を行う統括ECU100及びインバータECU200を備えている。
統括ECU100は、
インバータECU200による定期メッセージの送信が途絶えた期間である途絶期間が生じた場合において、途絶期間が生じた原因が、インバータECU200のリセットによるものか、それとも一時的な通信経路の異常によるものか、を判定する判定部140を有する。
判定部140は、途絶期間の長さに基づいて、途絶期間が生じた原因の判定を行う。
【選択図】図1
Description
本発明は、互いに通信を行う複数の制御装置を備えた制御システムに関する。
例えばハイブリッド自動車のように複雑な制御を必要とする機器には、単一の制御装置(ECU)が備えられることは稀であり、複数の制御装置が備えられるのが一般的である。これら制御装置は、CANプロトコル等によって双方向の通信を行い、互いに連携しながら機器の制御を行うように構成される。つまり、複数の制御装置を備えた制御システムによって機器の制御が行われる(例えば下記特許文献1を参照)。
このような制御システムでは、一つの制御装置が何らかの原因でリセットされ、これにより制御装置間の通信が一時的に途絶えてしまう場合がある。制御システムの全体を統括する制御装置(以下、「上位制御装置」とも称する)が、他の制御装置(以下、「下位制御装置」とも称する)からの通信が途絶えたことを検知すると、上位制御装置はエラー処理等の必要な措置を行う。
例えば、ハイブリッド自動車に上記のような制御システムが搭載された場合には、全体の統括制御を行う上位制御装置と、回転モーターの駆動制御を行う下位制御装置との間で通信が行われる。このような構成において、下位制御装置が何らかの原因でリセットされると、下位制御装置に記憶されていた回転モーターの原点に関する情報(磁極位置)が失われてしまう。このため、下位制御装置からの通信が途絶えたことが検知された場合には、上位制御装置は車両を停止させ、回転モーターを停止させた状態で原点学習を再度実行させるような制御を実行することになる。
ところで、制御装置間における通信の一時的な途絶は、上記のような制御装置のリセットによって生じるほか、制御装置間の通信経路における一時的な異常(通信線の瞬間的な断線等)によっても生じる。例えば、上記のようなハイブリッド自動車において、通信経路における一時的な異常により下位制御装置からの通信が途絶えた場合には、リセットが生じた場合と異なり、下位制御装置において原点に関する情報は失われていない。従って、回転モーターの停止及び原点学習の再実行は不要である。
このように、制御装置間における通信の一時的な途絶が、一つの制御装置のリセットによるものなのか、それとも一時的な通信経路の異常によるものなのかによって、他の制御装置が行うべき処理は異なるものとなる。
しかしながら、上記特許文献1は、通信が途絶えたことを検出するための方法や装置構成のみを示すものであって、通信が途絶えた原因を判定することについては何ら言及がなされていない。通信が一時的に途絶えた原因を判定し、当該原因に応じて適切な処理を行うことについては、従来、具体的な検討はなされていなかった。このため、下位制御装置からの通信が途絶えた場合には、上位制御装置は、通信が途絶えた原因に拘らず、常に同様の処理(例えば、回転モーターの停止及び原点学習の再実行)を行う必要があった。
本発明はこのような課題に鑑みてなされたものであり、その目的は、制御装置間の通信が一時的に途絶えた原因を判定することのできる制御システムを提供することにある。
上記課題を解決するために、本発明に係る制御システムは、互いに通信を行う第1制御装置(200)及び第2制御装置(100)を備えた制御システムであって、第1制御装置は、第2制御装置に向けて定期メッセージを繰り返し送信するものであって、リセットが行われた場合には、定期メッセージを準備するための準備期間(To)が終了した後に、第2制御装置への定期メッセージの送信を開始するように構成されている。また、第2制御装置は、第1制御装置による定期メッセージの送信が途絶えた期間である途絶期間が生じた場合において、途絶期間が生じた原因が、第1制御装置のリセットによるものか、それとも一時的な通信経路の異常によるものか、を判定する判定部(140)を有している。当該判定部は、途絶期間の長さに基づいて、途絶期間が生じた原因の判定を行う。
本発明に係る制御システムでは、第1制御装置のリセットが行われると、第1制御装置は、先ず通信機能を立ち上げた後、定期メッセージを準備するための準備期間を経てから、第2制御装置への定期メッセージの送信を開始する。通信機能の立ち上げに要する期間の長さ、及び上記準備期間の長さはそれぞれほぼ一定である。
このため、第1制御装置のリセットが行われた場合においては、途絶期間の長さはほぼ一定となる可能性が高い。一方、一時的な通信経路の異常が生じた場合においては、途絶期間の長さは不定(ランダム)となる。このように、途絶期間の長さは、途絶期間が生じた原因に応じて異なったものとなる。本発明はこの点に着目してなされたものであって、本発明に係る制御システムは、途絶期間の長さに基づいて、途絶期間が生じた原因の判定を行うように構成されている。途絶期間が生じた原因の判定が可能となり、途絶期間に続いて第2制御装置によって実行される処理を適切なものとすることが可能となる。
ところで、一時的な通信経路の異常によって生じた途絶期間の長さが不定であることに鑑みれば、当該途絶期間の長さが、第1制御装置のリセットが生じた場合における途絶期間の長さに一致してしまうことも生じ得る。このような場合には、上記のような本発明によっては途絶期間が生じた原因を判定することができない。
そこで、第2制御装置が、上記と同様の判定部と、途絶期間において第1制御装置に向けて通信確認メッセージを送信する送信部(131)と、通信確認メッセージに対する応答として第1制御装置から送信される応答メッセージを受信する受信部(132)と、を有しており、判定部が、応答メッセージが受信されたか否かに基づいて、途絶期間が生じた原因の判定を行うような態様としてもよい。
既に述べたように、第1制御装置のリセットが行われると、第1制御装置は、先ず通信機能を立ち上げた後、定期メッセージを準備するための準備期間を経てから、第2制御装置への定期メッセージの送信を開始する。このような準備期間においては、第1制御装置からの定期メッセージの送信は未だ開始されないのであるが、第1制御装置と第2制御装置との通信自体は可能な状態となっている。つまり、第1制御装置でリセットが生じた場合における途絶期間には、第1制御装置と第2制御装置との間で通信可能な期間(準備期間)が含まれている。
一方、一時的な通信経路の異常によって途絶期間が生じた場合には、当該途絶期間には上記のような通信可能な期間は含まれていない。そこで、本発明では、途絶期間に通信可能な準備期間が含まれているか否かに基づいて、途絶期間が生じた原因の判定を行うように構成されている。具体的には、途絶期間において第2制御装置から第1制御装置に通信確認メッセージを送信し、これに対して第2制御装置から送信される応答メッセージが受信されたかどうかに基づいて、途絶期間が生じた原因の判定を行うように構成されている。応答メッセージが受信された場合には、途絶期間が生じた原因は第1制御装置のリセットであると判定され、応答メッセージが受信されなかった場合には、途絶期間が生じた原因は一時的な通信経路の異常であると判定される。
このような態様であれば、一時的な通信経路の異常によって生じた途絶期間の長さが、第1制御装置のリセットが生じた場合における途絶期間の長さと一致してしまった場合においても、途絶期間が生じた原因を正確に判定することが可能となる。
以上のように、本発明は、途絶期間の長さ及び途絶期間における第1制御装置の状態が、途絶期間が生じた原因によって異なることに着目してなされたものである。本発明に係る制御システムでは、途絶期間の長さ等に基づいて、途絶期間が生じた原因を正確に判定することができる。
本発明によれば、制御装置間の通信が一時的に途絶えた原因を判定することのできる制御システムが提供される。
以下、添付図面を参照しながら本発明の実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
図1に示されるように、本発明の第1実施形態に係る制御システム10は、モーター410及びエンジン420を備えたハイブリッド自動車(全体は不図示)を制御するためのシステムとして構成されている。尚、本発明の実施態様としてはこのようなものに限られない。本発明に係る制御システムの制御対象は、ハイブリッド自動車以外の装置であってもよい。
制御システム10は、統括ECU100と、インバータECU200と、エンジンECU300とを備えている。また、制御対象であるハイブリッド自動車は、モーター410と、エンジン420と、トランスミッション430とを備えている。当該ハイブリッド自動車は、モーター410による駆動力と、エンジンによる駆動力との両方又は一方がトランスミッション430を介して駆動輪(不図示)に伝達され、車両の走行力に変換される構成となっている。
統括ECU100は、CPU、ROM、RAM、及び入出力インターフェースを備えたコンピュータシステムである。後に詳しく説明するように、統括ECU100は、他のECU(インバータECU200、エンジンECU300)と通信を行いながら、制御システム10の全体を統括制御するものである。統括ECU100と他のECUとの間の通信は、CAN通信バスCBを介して行われる。
統括ECU100は、機能的な制御ブロックとして、統括部110と、時間計測部120と、通信制御部130と、判定部140と備えている。統括部110は、統括ECU100において行われる各種の処理を統括する部分である。時間計測部120は、所謂タイマーであって、インバータECU200からの通信が途絶えた期間などを計測するために用いられる部分である。
通信制御部130は通信のインターフェースとなる部分である。通信制御部130は、通信線101を介してCAN通信バスCBに接続されている。通信制御部130は、送信部131と、受信部132とを備えている。送信部131は、他のECUに向けた信号をCAN通信バスCBへと送信する部分である。受信部132は、他のECUから送信された信号をCAN通信バスCBから受信する部分である。
判定部140は、インバータECU200からの通信が一時的に途絶えた場合において、その原因を判定するための部分である。判定部140が行う具体的な処理の内容については後に説明する。
インバータECU200は、モーター410の動作を制御するためのコンピュータシステムである。インバータECU200は、モーター410に3相の交流電力を供給するインバーター(不図示)の動作を制御し、これによりモーター410の動作(駆動力)を制御する。インバータECU200は、機能的な制御ブロックとして、モーター制御部210と、モーター情報管理部220と、通信制御部230とを備えている。
モーター制御部210は、モーター410の駆動力に関する指令値をインバータに送信する部分である。インバータは、かかる指令値に対応した電流がモーター410に供給されるよう、スイッチングによる電力変換を行う。モーター制御部210からの上記指令値の送信は、通信線202を介して行われる。
モーター情報管理部220は、モーター410に供給されている電流の測定値や、モーター410の温度等、モーター410に関する各種情報を管理する部分である。これら情報には、モーター410の原点に対する現在の位相(モーター410が有する回転軸の回転角度)も含まれている。上記位相は、モーター410の回転軸が停止している状態において実行される原点学習(磁極検知動作)によって検出され、以降は回転軸の回転に同期するように更新される。モーター410には、電流センサ、温度センサ、エンコーダ等の各種センサが備えられている。それぞれのセンサの測定値は、通信線203を介してモーター情報管理部220に伝達される。
通信制御部230は、統括ECU100の通信制御部130と同様に、通信のインターフェースとなる部分である。通信制御部230は、通信線201を介してCAN通信バスCBに接続されている。通信制御部230は、送信部231と、受信部232とを備えている。送信部231は、統括ECU100に向けた信号をCAN通信バスCBへと送信する部分である。受信部232は、統括ECU100から送信された信号をCAN通信バスCBから受信する部分である。
エンジンECU300は、エンジン420の動作を制御するためのコンピュータシステムである。エンジンECU300は、エンジン420が備えるスロットルバルブの開度等を調整することにより、エンジン420の回転数やトルクを制御する。エンジンECU300とエンジン420とは通信線302を介して接続されている。スロットルバルブの開度等に関する指令値は、通信線302を介してエンジンECU300からエンジン420へと送信される。またエンジン420に備えられた各種センサ(開度センサ等)の測定値は、通信線302を介してエンジンECU300へとフィードバックされる。
エンジンECU300によるエンジン420の制御は、統括ECU100から送信される制御信号に基づいて行われる。エンジンECU300は、通信線301を介してCAN通信バスCBに接続されている。統括ECU100とエンジンECU300との間における通信は、通信線301及びCAN通信バスCBを介して行われる。
統括ECU100とインバータECU200との間で行われる通信について、図2を参照しながら説明する。図2は、インバータECU200と統括ECU100との間における通信状態の時間変化を模式的に示すものである。インバータECU200は、モーター情報管理部220において把握されているモーター410の温度等の情報を、定期的に送信部231から統括ECU100へと送信している。制御システム10が正常に動作しているときにおいて、インバータECU200から統括ECU100へと定期的に送信される情報のことを、以下では「定期メッセージ」と称する。定期メッセージには、モーター410に関する情報の他、ハイブリッド自動車の制御に必要な他の情報が含まれていてもよい。
定期メッセージには、例えばモーター410の温度のように重要度が比較的低い情報と、例えばモーター410に供給される電流値のように重要度が比較的高い情報とが含まれている。重要度が比較的低い情報が送信される周期は長く(例えば100msec)、重要度が比較的高い情報が送信される周期は短い(例えば10msec)。
図2(A)には、時刻t10においてインバータECU200のリセットが生じ、それと同時に定期メッセージの送信が途絶えた後、時刻t30において定期メッセージの送信が再開された様子が示されている。このようなリセットは、何らかの原因でインバータECU200の再起動が必要となり、外部からインバータECU200にリセット信号が送信されること等により生じうる。
インバータECU200のリセットが生じると、インバータECU200は一時的にその制御機能が停止するので、時刻t10以降は一時的に定期メッセージが送信されなくなる。時刻t10でリセットが生じてから、インバータECU200の再起動が完了する時刻t20までの期間Trにおいては、インバータECU200と統括ECU100との間における通信は不可能となっている。このような期間Trの長さは、リセットの原因やタイミング等によって変化することはなく、常にほぼ一定である。
時刻t20においてインバータECU200の再起動が完了しても、定期メッセージの送信は直ちには開始されない。時刻t20以降、インバータECU200では、各種センサの状態の確認、及び各種センサから得られた測定値の検証が行われる。インバータECU200は、定期メッセージとして統括ECU100に送信される全ての情報の準備が完了してから(時刻t30)、定期メッセージの送信を再開するように構成されている。
このような情報の準備に要する期間Toにおいては、未だ定期メッセージの送信は行われないのであるが、インバータECU200と統括ECU100との間で通信を行うことは可能な状態となっている。期間Toの長さは、リセットの原因やタイミング等によって変化することはなく、常にほぼ一定である。
図2(B)には、時刻t10から時刻t40までの期間Tuにおいて、通信経路の一時的な異常が生じたときの様子が示されている。このような通信経路の一時的な異常は、コネクタ部分の瞬間的な断線等よって生じうる。通信経路の一時的な異常が生じている期間Tuにおいては、インバータECU200と統括ECU100との間における通信は不可能となっている。通信経路の異常が解消すると(時刻t40)、インバータECU200からの定期メッセージの送信は直ちに再開される。
図2(A)のようにインバータECU200でリセットが生じた場合には、インバータECU200からの定期メッセージが一時的に途絶える期間(以下、「途絶期間」とも称する)の長さは、常にほぼ一定である(期間Tr+期間To)。これに対し、図2(B)のように通信経路の一時的な異常が生じた場合には、途絶期間の長さは、例えばコネクタ部分の断線が解消するまでの時間であるから、一定とはならない(期間Tu)。
そこで、第1実施形態に係る制御システム10では、途絶期間が生じた原因がインバータECU200のリセットによるものなのか、それとも通信経路の一時的な以上によるものなのかを、途絶期間の長さに基づいて判定する。当該判定を行うために統括ECU100等において行われる処理について、図3を参照しながら説明する。
図3は、統括ECU100において実行される処理の流れを示すフローチャートである。図3に示される一連の処理は、統括ECU100の統括部110によって一定の周期毎に繰り返し実行されている。
最初のステップS101では、バスオフ状態かどうか、すなわち、CAN通信バスCBを通じた通信が不可能な状態かどうかが判定される。例えば、CAN通信バスCBに異物が混入し、通信線の間が短絡している場合には、通信制御部130にはバスオフ状態であることを示すフラグが設定される。また、通信制御部130自体において何らかの故障が生じており、これによりバスオフ状態と判定される場合もある。このような場合には、図3に示される処理を終了する。その後、CAN通信バスCBの異常に対処するためのエラー処理等が別途なされる。
ステップS101において、バスオフ状態でないと判定された場合には、ステップS102に移行する。ステップS102では、インバータECU200からの定期メッセージを受信部132で受信するための処理が行われる。
ステップS102に続くステップS103では、ステップS102における処理の結果、インバータECU200からの定期メッセージが受信されたかどうかが判定される。定期メッセージが受信されなかった場合には、ステップS104に移行する。
ステップS104では、未受信時間がインクリメントされる。未受信時間とは、インバータECU200からの定期メッセージが統括ECU100に届かなかった期間(つまり途絶期間)の長さを記憶するための変数である。図2の時刻t10よりも前のように、定期メッセージが受信されているときには、未受信時間の値は0に設定されている(後述のステップS110参照)。定期メッセージが受信されなくなると、ステップS104の処理が行われる毎に未受信時間の値が更新される。つまり、時間計測部120によって計測された途絶期間の長さが、現時点における未受信時間の値として記憶される。
ステップS104に続くステップS105では、未受信時間の値が閾値Tdよりも大きくなったかどうかが判定される。閾値Tdは、統括ECU100とインバータECU200との間の通信に異常が生じたことを判定するための閾値である。未受信時間の値が閾値Tdよりも大きくなっていれば、ステップS106に移行する。ステップS106では、途絶期間が生じた原因が、通信経路の一時的な異常(以下、単に「通信異常」とも表記する)であると仮設定される。具体的には、通信異常が生じたことを記憶しておくためのレジスタに1が記憶される。その後、図3に示される処理を終了する。
ステップS105において、未受信時間の値が閾値Tdよりも大きくなっていなければ、途絶期間が生じた原因の判定を行うことなく、図3に示される処理を終了する。
本実施形態では、定期メッセージに含まれる各種情報のうち、インバータECU200から送信される周期が最も長いもの、の周期が、閾値Tdとして設定されている。従って、ステップS105において、未受信時間の値が閾値Tdよりも大きくなっているということは、全ての情報が、それぞれ所定の周期では統括ECU100に届かなかった、ということである。このため、インバータECU200からの定期メッセージの送信が途絶えているという判定が正確に行われる。
ステップS103において定期メッセージが受信された場合、すなわち、一時的に途絶えていたインバータECU200からの定期メッセージの送信が再開された場合には、ステップS107に移行する。
ステップS107では、未受信時間の値が、図2に示される期間Trに期間Toを加えた期間の長さと略等しいかどうかが判定される。具体的には、未受信時間の値が、「期間Tr+期間To−許容誤差時間α」の長さよりも大きく、且つ「期間Tr+期間To+許容誤差時間α」の長さよりも小さいかどうかが判定される。かかる判定は、判定部140において行われる。許容誤差時間αは、期間Tr及び期間Toのそれぞれの変動幅(生じうる誤差)を考慮して設定される定数である。
ステップS107において、未受信時間の値が「期間Tr+期間To」の長さに略等しいと判定された場合には、ステップS108に移行する。ステップS108に移行したということは、途絶期間の長さが「期間Tr+期間To」の長さに略等しいということであるから、途絶期間が生じた原因は図2(B)のような通信経路の一時的な異常なのではなく、図2(A)のようなインバータECU200のリセットである可能性が高い。
そこで、ステップS108では、途絶期間が生じた原因が、インバータECU200のリセットであると設定される。具体的には、インバータECU200においてリセットが生じたことを記憶しておくためのレジスタに1が記憶される。
ステップS108に続くステップS109では、ステップS106において仮設定されていた情報が取り消される。つまり、通信異常が生じたことを記憶しておくためのレジスタに0が記憶される。
ステップS109に続くステップS110では、未受信時間の値に0が設定される。当該ステップを経るので、インバータECU200から定期メッセージが送信されている間は、未受信時間の値は常に0に設定されている。
ステップS107において、未受信時間の値が「期間Tr+期間To」の長さに等しくないと判定された場合には、ステップS108及びステップS109を経ることなくステップS110に移行する。
途絶期間が終了し、インバータECU200からの定期メッセージが再開されたときに、統括ECU100において実行される処理について説明する。図4は、統括ECU100において実行される処理の流れを示すフローチャートである。図4に示される一連の処理は、統括ECU100の統括部110によって一定の周期毎に繰り返し実行されている。また、図4に示される一連の処理は、既に説明した図3に示される一連の処理と並行して実行されている。
最初のステップS121では、インバータECU200においてリセットが生じたかどうかが判定される。具体的には、インバータECU200においてリセットが生じたことを記憶しておくためのレジスタ(図3のステップS108において書き換えられるレジスタ)に1が記憶されているかどうかが判定される。インバータECU200においてリセットが生じたと判定された場合には、ステップS122に移行する。
ステップS122に移行したということは、インバータECU200では直前においてリセットが生じたということである。従って、インバータECU200ではモーター410の原点に関する情報が失われており、モーター410の回転軸の回転角度と、位相との関係にずれが生じていると推測される。つまり、モーター410には三相の交流電圧が供給されているのであるが、モーター410では所望の駆動力が生じていないと推測される。このため、統括ECU100は、エンジンECU300に停止信号を送信する。
図5は、エンジンECU300において実行される処理の流れを示すフローチャートである。図5に示される一連の処理は、エンジンECU300によって一定の周期毎に繰り返し実行されている。
最初のステップS131では、統括ECU100からの停止信号が受信されたかどうかが判定される。停止信号が受信された場合には、ステップS132に移行する。ステップS132では、エンジン420を停止させ、ハイブリッド自動車の走行を停止させるような制御がなされる。その結果、モーター410の回転軸の回転も停止した状態となる。ステップS131において、停止信号が受信されなかった場合には、図5に示される処理を終了する。
図4に戻って説明を続ける。ステップS122において、エンジンECU300に停止信号が送信されると、上記のようにハイブリッド自動車の走行は停止し、モーター410の回転軸の回転も停止した状態となる。
この状態で、統括ECU100は、モーター410の原点学習を再度実行させるように、インバータECU200を制御する。これにより、モーター410の回転軸の回転角度と、位相との関係が再び一致した(且つ同期した)状態となり、モーター410により所望の駆動力が生じる状態となる。その後は、ハイブリッド自動車の走行が再開される。
ステップS121において、インバータECU200でリセットが生じなかったと判定された場合には、ステップS123に移行する。ステップS123では、統括ECU100とインバータECU200との間において、通信経路の一時的な異常が生じたかどうかが判定される。具体的には、通信異常が生じたことを記憶しておくためのレジスタ(図3のステップS106において書き換えられるレジスタ)に1が記憶されているかどうかが判定される。通信異常が生じたと判定された場合には、ステップS124に移行する。通信異常が生じたと判定されなかった場合には、図4に示される処理を終了する。
ステップS124に移行したということは、統括ECU100とインバータECU200との間の通信経路に何らかの異常が生じており、両者の通信が不安定になっているということである。換言すれば、インバータECU200から統括ECU100に伝達された定期メッセージに含まれる各種情報は、真の情報ではない可能性があるということである。
このため、ステップS124では、インバータECU200から受信されるそれぞれの値に対してフェール値が設定される。つまり、定期メッセージに含まれる全ての情報がフェール値に置き換えられた状態となり、統括ECU100が行う制御には、インバータECU200から送信された情報が用いられなくなる。以降は、例えばハイブリッド自動車の一部の機能を制限し、退避走行に必要な機能のみを実行し得る状態とする等の対応がとられる。
以上に説明したように、本実施形態に係る制御システム10の統括ECU100は、インバータECU200による定期メッセージの送信が途絶えた期間である途絶期間が生じた場合において、当該途絶期間が生じた原因が、インバータECU200でリセットが生じたことによるものか、それとも一時的な通信経路の異常によるものか、を判定する判定部140を有している。判定部140は、途絶期間の長さに基づいて、途絶期間が生じた原因の判定を行うように構成されている。
途絶期間が生じた原因が判定部140によって判定されると、統括ECU100は、その判定結果に基づいて適切な処理を行う。具体的には、途絶期間が生じた原因がインバータECU200で生じたリセットであると判定された場合には、統括ECU100は、モーター410を停止させるための処理を行い、車両を停止させた状たで原点学習の再実行が行われるような制御を行う。一方、途絶期間が生じた原因が通信経路の一時的な異常であると判定された場合には、統括ECU100は、インバータECU200から送信された定期メッセージに含まれる情報をフェール値として処理するような制御を行う。
以上のように、制御システム10では、途絶期間が生じた原因の判定を正確に行うことができる。また、途絶期間に続いて統括ECU100によって実行される処理を、上記原因に応じて適切なものとすることが可能となっている。
ところで、一時的な通信経路の異常によって生じた途絶期間の長さが不定であることに鑑みれば、当該途絶期間の長さが、インバータECU200のリセットが生じた場合における途絶期間の長さに一致してしまうことも生じ得る。つまり、図2(B)に示される期間Tuの長さが、図2(A)に示される期間Tr+期間Toの長さに偶然一致してしまうことも生じうる。このような場合には、図3に基づいて説明した処理によっては、途絶期間が生じた原因を正確に判定することができない。
また、リセット自体が一瞬で終わるのではなく、無視できない一定の期間連続して生じる場合もある。このような場合、途絶期間は期間Tr+期間Toの長さよりも長くなってしまうので、やはり上記の方法では途絶期間が生じた原因を正確に判定することができない。
このような問題を解決し得る態様として、本発明の第2実施形態について説明する。第2実施形態は、統括ECU100及びインバータECU200によってなされる処理の内容のみにおいて第1実施形態と異なっており、その他(ハードウェア構成等)については第1実施形態と同様である。
第2実施形態において行われる制御の概要について、図6を参照しながら説明する。図6は、図2(A)と同様の図であって、時刻t10においてインバータECU200のリセットが生じ、それと同時に定期メッセージの送信が途絶えた後、時刻t30において定期メッセージの送信が再開された様子が示されている。図6においても、インバータECU200の再起動が完了した時刻(つまり、期間Trと期間Toとの境界である時刻)が、時刻t20と表記されている。
本実施形態では、リセットによって生じた途絶期間には、通信可能な期間Toが含まれているのに対し、通信異常によって生じた途絶期間には、通信可能な期間が含まれていないことを利用して、途絶期間が生じた原因を判定することとしている。
具体的には、途絶期間において統括ECU100からインバータECU200に通信確認メッセージが送信される。図6では、通信確認メッセージが送信されるタイミングを、矢印AR1、AR2、AR3により示している。また、それぞれの時刻を、時刻t11、t12、t21としている。
繰り返し送信される通信確認メッセージが、通信不可能な期間TrにおいてインバータECU200に到達しても、インバータECU200はこれに対して何ら応答することができない。一方、通信確認メッセージが、通信可能な期間ToにおいてインバータECU200に到達すると、インバータECU200はこれに対する応答のメッセージ(以下、「応答メッセージ」と称する)を統括ECU100に向けて送信するように構成されている。図6では、応答メッセージが送信されるタイミングを、矢印AR4により示している。また、応答メッセージが送信される時刻を、時刻t22としている。時刻t22は、期間Toにおいて通信確認メッセージが最初に送信された時刻t21の直後となる時刻である。
このように、途絶期間においてインバータECU200から応答メッセージが返信された場合には、途絶期間には通信可能な期間Toが含まれるということであるから、判定部140では、途絶期間が生じた原因がインバータECU200のリセットによるものであると判定することができる。
一方、インバータECU200から応答メッセージが返信されないまま途絶期間が終了した場合には、途絶期間には通信可能な期間Toが含まれないということであるから、判定部140では、途絶期間が生じた原因が通信経路の一時的な異常によるものであると判定することができる。
以上のような判定を行うために、統括ECU100等において行われる具体的な処理について、図7乃至図11を参照しながら説明する。このうち、図7乃至図10は統括ECU100において行われる処理の内容を示しており、図11はインバータECU200において行われる処理の内容を示している。
まず、図11を参照しながら、インバータECU200において行われる処理の内容について説明する。本実施形態に係るインバータECU200は、統括ECU100に向けて定期メッセージを送信する点、及び、リセットが生じた場合には期間Tr及び期間Toが経過した後に定期メッセージの送信が再開される点において、第1実施形態に係るインバータECU200と同じである。
一方、本実施形態に係るインバータECU200は、定期メッセージの送信が行われていない状態の期間Toにおいて、図11に示される一連の処理を繰り返し実行するように構成されている。
最初のステップS151では、統括ECU100からの通信確認メッセージを受信部232で受信するための処理が行われた後、通信確認メッセージが受信されたかどうかが判定される。通信確認メッセージが受信された場合には、ステップS152に移行する。通信確認メッセージが受信されなかった場合には、図11に示される処理を終了する。
ステップS152では、送信部231から統括ECU100に向けて応答メッセージの送信がなされる。その後、図11に示される処理を終了する。
以上のように、インバータECU200では、定期メッセージの送信が開始されるまでの期間Toにおいて、統括ECU100からの通信確認メッセージが受信部232で受信されると、これに応答して送信部231から応答メッセージを送信するように構成されている。
続いて、図7乃至図10を参照しながら、統括ECU100において行われる処理の内容について説明する。図7に示される一連の処理は、統括ECU100の統括部110によって一定の周期毎に繰り返し実行されている。図8に示されるフローチャートは、図7のうちステップS200において実行される具体的な処理を示している。図9に示されるフローチャートは、図7のうちステップS300において実行される具体的な処理を示している。図10に示されるフローチャートは、図7のうちステップS400において実行される具体的な処理を示している。
図7に示される一連の処理のうち、最初のステップS141では、バスオフ状態かどうか、すなわち、CAN通信バスCBを通じた通信が不可能な状態かどうかが判定される。ここで行われる処理は、図3のステップS101で行われる処理と同一である。バスオフ状態と判定された場合には、図7に示される処理を終了する。その後、CAN通信バスCBの異常に対処するためのエラー処理等が別途なされる。
ステップS141において、バスオフ状態でないと判定された場合には、ステップS142に移行する。ステップS142では、インバータECU200からの定期メッセージを受信部132で受信するための処理が行われる。その後、ステップS200に移行する。
図8に示されるように、ステップS200における最初のステップS201では、インバータECU200からの定期メッセージが受信されたかどうかが判定される。定期メッセージが受信されなかった場合には、ステップS202に移行する。ステップS202では、図3のステップS104と同様に、未受信時間がインクリメントされる。
尚、定期メッセージが受信されているときには、未受信時間の値は0に設定されている(後述のステップS205参照)。定期メッセージが受信されなくなると、ステップS202の処理が行われる毎に未受信時間の値が更新される。つまり、時間計測部120によって計測された途絶期間の長さが、現時点における未受信時間の値として記憶される。
ステップS202に続くステップS203では、未受信時間の値が閾値Tdよりも大きくなったかどうかが判定される。未受信時間の値が閾値Tdよりも大きくなっていれば、ステップS204に移行する。ステップS204では、途絶期間が生じた原因が、通信経路の一時的な異常(通信異常)であると仮設定される。具体的には、通信異常が生じたことを記憶しておくためのレジスタに1が記憶される。その後、ステップS300(図7参照)に移行する。
ステップS203において、未受信時間の値が閾値Tdよりも大きくなっていなければ、途絶期間が生じた原因の判定を行うことなく、図8に示される処理を終了し、ステップS300(図7参照)に移行する。尚、本実施形態においても、定期メッセージに含まれる各種情報のうち、インバータECU200から送信される周期が最も長いもの、の周期が、閾値Tdとして設定されている。
ステップS201において定期メッセージが受信された場合、すなわち、一時的に途絶えていたインバータECU200からの定期メッセージの送信が再開された場合には、ステップS205に移行する。ステップS205では、未受信時間の値に0が設定される。当該ステップを経るので、インバータECU200から定期メッセージが送信されている間は、未受信時間の値は常に0に設定されている。ステップS205の処理が終了すると、ステップS300(図7参照)に移行する。
図9に示されるように、ステップS300における最初のステップS301では、未受信時間の値が閾値Tdよりも大きくなっており、且つ、インバータECU200からの応答メッセージが未受信であるかどうかが判定される。未受信時間の値が閾値Tdよりも小さい場合には、図9に示される処理を終了し、ステップS400(図7参照)に移行する。また、途絶期間が生じた以降において、インバータECU200からの応答メッセージが一度でも受信されている場合(受信履歴が統括ECU100のメモリに記憶されていた場合)にも、図9に示される処理を終了し、ステップS400に移行する。
未受信時間の値が閾値Tdよりも大きくなっており、且つ、インバータECU200からの応答メッセージが未受信であると判定された場合には、ステップS302に移行する。ステップS302では、送信部131からインバータECU200に向けて、通信確認メッセージが送信される。その後、ステップS400(図7参照)に移行する。このように、応答メッセージが受信されるまでの間、通信確認メッセージが繰り返し送信される。
図10に示されるように、ステップS400における最初のステップS401では、未受信時間の値が閾値Tdよりも大きくなったかどうかが判定される。未受信時間の値が閾値Tdよりも大きくなっていれば、ステップS402に移行する。未受信時間の値が閾値Tdよりも大きくなっていなければ、図7に示される処理を終了する。
ステップS402では、インバータECU200からの応答メッセージが受信されたかどうかが判定される。途絶期間が生じた以降において、インバータECU200からの応答メッセージが一度でも受信されている場合(受信履歴が統括ECU100のメモリに記憶されていた場合)には、ステップS403に移行する。
ステップS403に移行したということは、途絶期間においてインバータECU200からの応答メッセージが届いた、すなわち、インバータECU200が通信可能な状態となっているということである。従って、途絶期間が生じた原因は図2(B)のような通信経路の一時的な異常なのではなく、図2(A)のようなインバータECU200のリセットによるものである可能性が高い。
そこで、ステップS403では、途絶期間が生じた原因が、インバータECU200のリセットであると設定される。具体的には、インバータECU200においてリセットが生じたことを記憶しておくためのレジスタに1が記憶される。
ステップS403に続くステップS404では、ステップS204において仮設定されていた情報が取り消される。つまり、通信異常が生じたことを記憶しておくためのレジスタに0が記憶される。その後、図7に示される処理を終了する。
ステップS402において、インバータECU200からの応答メッセージが一度も受信されていない場合には、図7に示される処理を終了する。以降は、インバータECU200からの応答メッセージ又は定期メッセージのいずれかが受信されるまで、図7に示される処理が繰り返し実行される。
以上のように、本実施形態に係る制御システム10では、途絶期間が生じた時刻(図6の時刻t10)からの経過時間が閾値Tdとなった時刻(図6の時刻t11)以降、統括ECU100からインバータECU200に向けて通信確認メッセージが繰り返し送信される。途絶期間において、インバータECU200が通信可能な状態となると(図6の時刻t20)、それ以降に送信された通信確認メッセージに対し、インバータECU200から応答メッセージが送信される(図6の時刻t22、ステップS152)。
この場合、途絶期間には、インバータECU200が通信可能な期間Toが含まれているということであるから、判定部140は、途絶期間が生じた原因がインバータECU200のリセットであると判定する(ステップS403)。
一方、インバータECU200からの応答メッセージが一度も受信されないまま、定期メッセージの送信が開始されなかった場合には、途絶期間には、インバータECU200が通信可能な期間Toが含まれていないということである。従って、判定部140は、途絶期間が生じた原因が通信経路の一時的な異常であると判定する(ステップS204)。
このように、本実施形態では、途絶期間が生じた原因を途絶期間の長さに基づいて判定するのではなく、通信可能な期間Toの有無に基づいて判定するように構成されている。このため、通信経路の一時的な異常によって生じた途絶期間(期間Tu)の長さが、リセットが生じた場合における途絶期間(期間Tr+期間To)の長さに偶然一致してしまった場合であっても、途絶期間が生じた原因を正確に判定することができる。
また、リセット自体が一瞬で終わるのではなく、無視できない一定の期間連続してリセットが生じた場合であっても、本時嫉視形態によれば、途絶期間が生じた原因を正確に判定することができる。
ところで、通信経路の一時的な異常によって途絶期間が生じた場合において、当該異常が解消し定期メッセージの送信が再開されたタイミングによっては、上記のような判定が正確には行われずに、誤判定が生じてしまう場合がある。
例えば、途絶期間においてステップS301(図9)の処理が行われた直後に、定期メッセージの送信が再開された場合には、途絶期間が終了した直後であるにも拘らずステップS302の処理が実行されて、通信確認メッセージがインバータECU200に送信されてしまう。これに対し、インバータECU200からは応答メッセージが送信されるので(図11のステップS152)、統括ECU100の判定部140では、途絶期間が生じた原因がリセットであると誤判定してしまうことになる(図10のステップS403,404)。
このような問題を解決し得る態様として、本発明の第3実施形態について説明する。第3実施形態も、統括ECU100及びインバータECU200によってなされる処理の内容のみにおいて第1実施形態と異なっており、その他(ハードウェア構成等)については第1実施形態と同様である。
第3実施形態において行われる制御の概要について、図12を参照しながら説明する。図12(A)は、図2(A)や図6に示されたものと同様の図であって、時刻t10においてインバータECU200のリセットが生じ、それと同時に定期メッセージの送信が途絶えた後、時刻t30において定期メッセージの送信が再開された様子が示されている。図12(A)においても、インバータECU200の再起動が完了した時刻(つまり、期間Trと期間Toとの境界である時刻)が、時刻t20と表記されている。
第2実施形態では、インバータECU200から応答メッセージが送信されたか否かのみに基づいて、途絶期間が生じた原因が判定された。これに対し、第3実施形態では、応答メッセージが送信されてから定期メッセージの送信が再開されるまでの期間(以下、「応答時間」とも称する)の長さに基づいて、途絶期間が生じた原因が判定される。
第3実施形態でも、途絶期間において統括ECU100からインバータECU200に通信確認メッセージが繰り返し送信される。通信確認メッセージが送信されるタイミングは、第2実施形態と同様(図6の矢印AR1、AR2、AR3)である。ただし、図12(A)では、矢印AR1、AR2の図示を省略しており、矢印AR3のみを図示している。
通信確認メッセージが、通信可能な期間ToにおいてインバータECU200に到達すると、インバータECU200は、これに対する応答メッセージを統括ECU100に向けて送信する。
図6と同様に図12(A)でも、応答メッセージが送信されるタイミングを、矢印AR4により示している。また、応答メッセージが送信される時刻を、時刻t22としている。時刻t22は、期間Toにおいて通信確認メッセージが最初に送信された時刻t21の直後となる時刻である。
図12(B)は、統括ECU100によって計測される応答時間(途絶期間が終了するまでは仮の値である)の時間変化を示すグラフである。応答時間は、応答メッセージが送信された時刻t22以降において時間の経過とともに増加する。定期メッセージの送信が再開された時刻t30における応答時間が、最終的に確定した応答時間ということになる。
図12(A)に示されるように、応答メッセージは、インバータECU200が通信可能となった時刻t20の直後(時刻t22)において送信される。従って、上記のような応答時間の長さは、期間Toの長さに略一致するはずである。
このため、本実施形態では、計測された応答時間の長さが期間Toの長さに近い場合には、判定部140は、途絶期間が生じた原因がインバータECU200のリセットによるものであると判定する。一方、計測された応答時間の長さが期間Toの長さから乖離している場合には、判定部140は、(応答メッセージが送信されていたとしても)途絶期間が生じた原因が通信異常であると判定する。尚、応答メッセージが送信されないまま定期メッセージの送信が再開された場合には、第2実施形態と同様に、途絶期間が生じた原因が通信異常であると判定する。
以上のような判定を行うために、統括ECU100等において行われる具体的な処理について、図13を参照しながら説明する。尚、本実施形態の統括ECU100等において行われる処理は、図7のステップS400で行われる処理(途絶期間が生じた原因を判定するための処理)についてのみ第2実施形態と異なっており、その他の処理については第2実施形態と同じである。図13に示されるフローチャートは、図7のうちステップS400において実行される具体的な処理を示している。つまり、第3実施形態に係る制御システム10において実行される処理は、図7乃至図11に示される処理のうち、図10を図13に置き換えたもの、ということができる。
図13において、最初のステップS411では、未受信時間の値が閾値Tdよりも大きくなったかどうかが判定される。未受信時間の値が閾値Tdよりも大きくなっていれば、ステップS412に移行する。ステップS412では、インバータECU200からの応答メッセージが受信されたかどうかが判定される。途絶期間が生じた以降において、インバータECU200からの応答メッセージが一度でも受信されている場合(受信履歴が統括ECU100のメモリに記憶されていた場合)には、ステップS413に移行する。
ステップS413では、統括ECU100の記憶装置に記憶されている応答時間がインクリメントされる。尚、定期メッセージが受信されているときには、応答時間の値は0に設定されている(後述のステップS417参照)。定期メッセージが受信されなくなり、且つ応答メッセージが受信された後には、ステップS413の処理が行われる毎に応答時間の値が更新される。つまり、時間計測部120によって計測された応答時間の長さが、現時点における応答時間の値として記憶される。
ステップS412において、インバータECU200からの応答メッセージが一度も受信されていない場合には、図7に示される処理を終了する。
ステップS411において、未受信時間の値が閾値Td以下である場合には、ステップS414に移行する。ステップS414に移行するのは、定期メッセージの送信が再開されて未受信時間の値が0に設定された場合(ステップS205)か、ステップS202でインクリメントされる未受信時間の値が閾値Tdに到達していない場合(つまり途絶期間の開始直後)のいずれかである。まず、前者の場合について説明する。
ステップS414では、確定した応答時間の値が、図2や図12に示される期間Toの長さと略等しいかどうかが判定される。具体的には、応答時間の値が、「期間To−許容誤差時間β」よりも大きく、且つ「期間To+許容誤差時間β」よりも小さいかどうかが判定される。かかる判定は、判定部140において行われる。許容誤差時間βは、期間Toの変動幅(生じうる誤差)を考慮して設定される定数である。
ステップS414において、応答時間の値が期間Toに略等しいと判定された場合には、ステップS415に移行する。ステップS415に移行したということは、インバータECU200が通信可能となってから定期メッセージの送信が再開されるまでの期間が、期間Toに略等しいことが確認されたということである。このため、途絶期間が生じた原因は図2(B)のような通信経路の一時的な異常なのではなく、図2(A)のようなインバータECU200のリセットによるものである可能性が高い。
そこで、ステップS415では、途絶期間が生じた原因が、インバータECU200のリセットであると設定される。具体的には、インバータECU200においてリセットが生じたことを記憶しておくためのレジスタに1が記憶される。
ステップS415に続くステップS416では、ステップS204において仮設定されていた情報が取り消される。つまり、通信異常が生じたことを記憶しておくためのレジスタに0が記憶される。
ステップS416に続くステップS417では、応答時間の値に0が設定される。ステップS417に続くステップS418では、統括ECU100のメモリに記憶されていた応答メッセージの受信履歴が消去される。その後、図7に示される処理を終了する。
ステップS414において、応答時間の値が期間Toの長さに等しくないと判定された場合には、ステップS415及びステップS416を経ることなくステップS417に移行する。
ステップS202でインクリメントされる未受信時間の値が閾値Tdに到達していないことにより、ステップS411からステップS414に移行した場合について説明する。この場合、応答時間をインクリメントするステップS413を一度も通過していないので、ステップS414の判定は常に「否」となり、ステップS413、S414を経ることなくステップS417に移行する。ステップS417では、(当初より0であった)応答時間の値にあらためて0が設定される。また、続くステップS418では、(当初より存在しなかった)応答メッセージの受信履歴が消去される。
このように、途絶期間の開始直後においてもステップS411からステップS414に移行するのであるが、この場合には特段の処理が行われることなく、図13及び図7に示される処理が終了することになる。
以上のように、本実施形態に係る制御システム10では、途絶期間においてインバータECU200から応答メッセージが送信されたか否かのみに基づいて判定が行われるのではなく、応答メッセージが送信されてから定期メッセージの送信が再開されるまでの応答時間の長さに基づいて、途絶期間が生じた原因の判定が行われる。
具体的には、計測された応答時間の長さが期間Toに略等しいかどうかの判定が行われる(ステップS414)。応答時間の長さが期間Toに略等しい場合、すなわち、応答期間の長さが「期間To−許容誤差時間β」から「期間To+許容誤差時間β」までの範囲内である場合にのみ、途絶期間が生じた原因がインバータECU200のリセットであるとの判定が判定部140により行われる。
このため、通信経路の一時的な異常が解消したタイミングにおいて、インバータECU200から応答メッセージが送信されてしまったような場合でも、途絶期間が生じた原因を正確に判定することができる。
ところで、インバータECU200のリセットが生じて途絶期間が開始された後、当該途絶期間が終了する前に再度リセットが生じる場合が考えられる。図14は、図12と同様の図であって、時刻t10において途絶期間が生じた後、定期メッセージの送信が再開されるよりも前の時刻t25において、再度リセットが生じた場合の様子が示されている。図14における時刻t10から時刻t25までの期間は、図12における時刻t10から時刻t30までの期間よりも短い。
この場合、最初に応答メッセージが送信された時刻t22から、(2回目のリセット後に)定期メッセージの送信が再開される時刻t40までの期間は、期間Toよりも長くなる。このため、図14(B)に示されるように、途絶期間がリセットによって生じたにも拘らず、計測される応答時間の長さは期間Toに略等しくはならない。つまり、第3実施形態における判定方法では、途絶期間が生じた原因を誤判定してしまう可能性がある。
このような問題を解決し得る態様として、本発明の第4実施形態について説明する。第4実施形態も、統括ECU100及びインバータECU200によってなされる処理の内容のみにおいて第1実施形態と異なっており、その他(ハードウェア構成等)については第1実施形態と同様である。
第4実施形態において行われる制御の概要について、図15を参照しながら説明する。図15(A)は、図12(A)に示されたものと同様の図であって、時刻t10においてインバータECU200のリセットが生じ、その後において定期メッセージの送信が再開された様子が示されている。ただし、リセットは1回だけ実行されるのではなく、時刻t25において再度実行されるものとする。
図15(A)においては、1回目のリセット後においてインバータECU200の再起動が完了した時刻が時刻t20と表記されている。また、2回目のリセット後においてインバータECU200の再起動が完了した時刻が時刻t40と表記されている。
第3実施形態では、インバータECU200からの応答メッセージが受信された後は、統括ECU100から通信確認メッセージは送信されなかった(ステップS310参照)。これに対し、第4実施形態では、応答メッセージが受信された時刻t22以降においても、繰り返し統括ECU100から通信確認メッセージの送信がなされる(図15の矢印AR5、AR6、AR8、AR10)。
ここで、2回目のリセットがなされた後の時刻t31に、2回目の通信確認メッセージ(矢印AR5)の送信がなされたとすると、当該通信確認メッセージに対する応答メッセージの送信はなされない。当該通信確認メッセージが送信された時刻t31、及び、これに対して応答メッセージの送信がなされるはずの時刻t32は、いずれも、インバータECU200の再起動が完了していない期間Trに含まれるからである。
その後、インバータECU200の再起動した時刻t40以降においては、通信確認メッセージが送信される毎に(矢印AR6、AR8、AR10)、それぞれに対する応答メッセージの送信が繰り返されることとなる(矢印AR7、AR9、AR11)。
本実施形態では、最初に応答メッセージが送信されてから定期メッセージの送信が再開されるまでの期間(応答時間)の長さに基づくのではなく、応答メッセージが連続して送信された期間の長さ(以下、「連続応答時間」とも称する)に基づいて、途絶期間が生じた原因の判定が行われる。
図15(B)は、図12Bと同様のグラフであるが、縦軸が応答時間ではなく連続応答時間となっている。連続応答時間は、応答メッセージが送信された時刻t22以降において時間の経過とともに増加する。ただし、時刻t32において、通信確認メッセージに対する応答メッセージの送信が行われなかったことが確認されると、その時点で連続応答時間は0に設定される。その後、応答メッセージが再度送信され始めた時刻t42(矢印AR7)以降において、連続応答時間は再び時間の経過とともに増加する。途絶期間が終了し、定期メッセージの送信が再開された時刻t50における連続応答時間が、最終的に確定した連続応答時間ということになる。
上記のように計測された連続応答時間は、最後になされたリセット後における期間Toの長さに略等しくなる。このため、本実施形態では、計測された連続応答時間の長さが期間Toの長さに近い場合には、判定部140は、途絶期間が生じた原因がインバータECU200のリセットによるものであると判定する。一方、計測された連続応答時間の長さが期間Toの長さから乖離している場合には、判定部140は、途絶期間が生じた原因が通信異常であると判定する。尚、応答メッセージが送信されないまま定期メッセージの送信が再開された場合には、第2実施形態及び第3実施形態と同様に、途絶期間が生じた原因が通信異常であると判定する。
以上のような判定を行うために、統括ECU100等において行われる具体的な処理について、図16及び図17を参照しながら説明する。尚、本実施形態の統括ECU100等において行われる処理は、図7のステップS300で行われる処理(通信確認メッセージを送信するための処理)、及び、図7のステップS400で行われる処理(途絶期間が生じた原因を判定するための処理)についてのみ第2実施形態と異なっており、その他の処理については第2実施形態と同じである。図16に示されるフローチャートは、図7のうちステップS300において実行される具体的な処理を示している。また、図17に示されるフローチャートは、図7のうちステップS400において実行される具体的な処理を示している。つまり、第4実施形態に係る制御システム10において実行される処理は、図7乃至図11に示される処理のうち、図9を図16に置き換えて、図10を図17に置き換えたもの、ということができる。
図16において、最初のステップS311では、未受信時間の値が閾値Tdよりも大きくなったかどうかが判定される。未受信時間の値が閾値Td以下であれば、図16に示される処理を終了し、ステップS400(図7参照)に移行する。未受信時間の値が閾値Tdよりも大きくなっていれば、ステップS312に移行する。
ステップS312では、送信部131からインバータECU200に向けて、通信確認メッセージが送信される。その後、ステップS400(図7参照)に移行する。
このように、本実施形態では、未受信時間の値が閾値Tdよりも大きくなると、応答メッセージが受信されたか否かに拘らず、通信確認メッセージが繰り返し送信されることとなる。
図17において、最初のステップS421では、未受信時間の値が閾値Tdよりも大きくなったかどうかが再度判定される。未受信時間の値が閾値Tdよりも大きくなっていれば、ステップS422に移行する。
ステップS422では、インバータECU200からの応答メッセージが受信されたかどうかが判定される。統括ECU100からの通信確認メッセージに対し、応答メッセージが受信された場合には、ステップS423に移行する。
ステップS423では、統括ECU100の記憶装置に記憶されている連続応答時間がインクリメントされる。尚、定期メッセージが受信されているときには、連続応答時間の値は0に設定されている(後述のステップS428参照)。定期メッセージが受信されなくなり、且つ応答メッセージが受信された後には、ステップS423の処理が行われる毎に連続応答時間の値が更新される。つまり、時間計測部120によって計測された連続応答時間の長さが、現時点における連続応答時間の値として記憶される。
統括ECU100から通信確認メッセージが送信されたにも拘らず、これに対するインバータECU200からの応答メッセージが受信されなかった場合(図14の時刻t32に相当する)には、ステップS422からステップS424に移行する。ステップS424では、連続応答時間の値が0に設定される。
尚、ステップS422が実行されるタイミングが、インバータECU200から応答メッセージが送信されるはずのタイミングよりも早い場合には、ステップS422の判定処理は行われずに、図17に示される処理は一旦終了するように構成されている。つまり、ステップS422の処理が実行されるのは、インバータECU200から応答メッセージが送信されたはずのタイミング以降であるにも拘らず、当該応答メッセージが受信部132において受信されなかった場合のみ、ということになる。
以上のように、本実施形態では、応答メッセージが最後に連続して受信された期間の長さが、連続応答時間として統括ECU100の記憶装置に記憶される。
ステップS411において、未受信時間の値が閾値Td以下である場合には、ステップS425に移行する。ステップS425に移行するのは、定期メッセージの送信が再開されて未受信時間の値が0に設定された場合(ステップS205)か、ステップS202でインクリメントされる未受信時間の値が閾値Tdに到達していない場合(つまり途絶期間の開始直後)のいずれかである。まず、前者の場合について説明する。
ステップS425では、確定した連続応答時間の値が、図2や図15に示される期間Toの長さと略等しいかどうかが判定される。具体的には、連続応答時間の値が、「期間To−許容誤差時間γ」よりも大きく、且つ「期間To+許容誤差時間γ」よりも小さいかどうかが判定される。かかる判定は、判定部140において行われる。許容誤差時間γは、期間Toの変動幅(生じうる誤差)を考慮して設定される定数である。
ステップS425において、応答時間の値が期間Toに略等しいと判定された場合には、ステップS426に移行する。ステップS426に移行したということは、インバータECU200が(最後のリセットがなされた後に)通信可能となってから定期メッセージの送信が再開されるまでの期間が、期間Toに略等しいことが確認されたということである。このため、途絶期間が生じた原因は図2(B)のような通信経路の一時的な異常なのではなく、図2(A)のようなインバータECU200のリセットによるものである可能性が高い。
そこで、ステップS426では、途絶期間が生じた原因が、インバータECU200のリセットであると設定される。具体的には、インバータECU200においてリセットが生じたことを記憶しておくためのレジスタに1が記憶される。
ステップS426に続くステップS427では、ステップS204において仮設定されていた情報が取り消される。つまり、通信異常が生じたことを記憶しておくためのレジスタに0が記憶される。
ステップS427に続くステップS428では、連続応答時間の値に0が設定される。その後、図7に示される処理を終了する。
ステップS425において、連続応答時間の値が期間Toの長さに等しくないと判定された場合には、ステップS426及びステップS427を経ることなくステップS428に移行する。
ステップS202でインクリメントされる未受信時間の値が閾値Tdに到達していないことにより、ステップS421からステップS425に移行した場合について説明する。この場合、連続応答時間をインクリメントするステップS423を一度も通過していないので、ステップS425の判定は常に「否」となり、ステップS426、S427を経ることなくステップS428に移行する。ステップS428では、(当初より0であった)連続応答時間の値にあらためて0が設定される。
このように、途絶期間の開始直後においてもステップS421からステップS425に移行するのであるが、この場合には特段の処理が行われることなく、図17及び図7に示される処理が終了することになる。
以上のように、本実施形態に係る制御システム10では、図12(B)や図14(B)に示される応答時間の長さに基づくのではなく、図15(B)に示される連続応答時間の長さに基づいて、途絶期間が生じた原因の判定が行われる。
具体的には、計測された連続応答時間の長さが期間Toに略等しい場合、すなわち、連続応答期間の長さが「期間To−許容誤差時間γ」から「期間To+許容誤差時間γ」までの範囲内である場合にのみ、途絶期間が生じた原因がインバータECU200のリセットであるとの判定が判定部140により行われる。
このため、途絶期間において複数回のリセットが生じたような場合においても、途絶期間が生じた原因を正確に判定することが可能となる。
ところで、図16に示されるように、統括ECU100から最初に通信確認メッセージが送信されるのは、未受信時間が閾値Tdよりも大きくなった後である。既に述べたように、閾値Tdは、定期メッセージに含まれる各種情報のうち、インバータECU200から送信される周期が最も長いもの、の周期に等しくなるように設定されている。
このため、極端に送信周期の長い情報が定期メッセージに含まれていた場合には、閾値Tdが、図2に示される「期間Tr+期間To」よりも大きくなってしまうことが考えられる。この場合、リセットに伴って途絶期間が開始されても、その後の定期メッセージの送信が再開されるまでの間、通信確認メッセージは一度も送信されないことになってしまう。このため、第4実施形態として示したような方法では、途絶期間が生じた原因を正確に判定することができない。
このような問題を解決し得る態様として、本発明の第5実施形態について説明する。第5実施形態は、統括ECU100及びインバータECU200によってなされる処理の内容のみにおいて第1実施形態と異なっており、その他(ハードウェア構成等)については第1実施形態と同様である。
本実施形態の統括ECU100等において行われる具体的な処理について、図18及び図19を参照しながら説明する。尚、本実施形態の統括ECU100等において行われる処理は、第4実施形態における図16の処理を図18に置き換えて、図17の処理を図19に置き換えたものに相当する。その他の処理は、第4実施形態と同じである。
また、図18に示される一連の処理は、図16のステップS311を新たなステップS321に置き換えたものに相当する。更に、図19に示される一連の処理は、図17のステップS421を新たなステップS431に置き換えたものに相当する。このため、以下においては、第4実施形態と異なる部分についてのみ説明し、第4実施形態と共通する部分については説明を省略する。
図18において、最初のステップS321では、未受信時間の値が閾値Tcよりも大きくなったかどうかが判定される。閾値Tcは、インバータECU200の再起動に要する期間Trの長さよりも、僅かに大きな値として設定された定数である。未受信時間の値が閾値Tc以下であれば、図18に示される処理を終了し、ステップS400(図7参照)に移行する。未受信時間の値が閾値Tcよりも大きくなっていれば、ステップS312に移行する。
図19において、最初のステップS431では、未受信時間の値が閾値Tcよりも大きくなったかどうかが再度判定される。未受信時間の値が閾値Tcよりも大きくなっていれば、ステップS422に移行する。その後、既に説明したように、応答メッセージが受信されたかどうかの判定が行われる。
このように、本実施形態では、未受信時間の値が閾値Tcよりも大きくなると、応答メッセージが受信されたか否かに拘らず、通信確認メッセージが繰り返し送信されることとなる。このため、極端に送信周期の長い情報が定期メッセージに含まれていた場合であっても、途絶期間の間に確実に通信確認メッセージが送信される。
尚、上記のような閾値Tcは、少なくとも図2に示される「期間Tr+期間To」の長さ(リセットが行われてから、定期メッセージの送信が最短で開始されるまでの期間の長さ)よりも小さな値として設定されていればよい。ただし、閾値Tcが期間Trの長さよりも小さな値として設定された場合には、インバータECU200が通信不可能であるにも拘らず無駄な通信が行われることになってしまう。このため、本実施形態のように、期間Trの長さよりも僅かに大きな値として閾値Tcが設定されることが望ましい。このように設定されていれば、インバータECU200において記定期メッセージの準備が開始された直後(すなわち、期間Trが終了した直後)に、送信部131から最初の通信確認メッセージが送信されることとなる。
以上においては、上位ECUである統括ECU100と、下位ECUであるインバータECU200との間においてなされる通信について説明した。本発明の適用範囲は、このように下位のECUが単一である場合に限定されるものではなく、下位ECUが複数存在する場合にも適用することができる。この場合、それぞれの下位ECUと上位ECUとの間において、以上に説明したような通信が行われる。途絶期間が生じた場合には、その原因が下位ECUのリセットなのか、それとも通信経路の一時的な異常なのかが、それぞれの下位ECUについて判定されることとなる。
以上、具体例を参照しつつ本発明の実施の形態について説明した。しかし、本発明はこれらの具体例に限定されるものではない。すなわち、これら具体例に、当業者が適宜設計変更を加えたものも、本発明の特徴を備えている限り、本発明の範囲に包含される。例えば、前述した各具体例が備える各要素およびその配置、材料、条件、形状、サイズなどは、例示したものに限定されるわけではなく適宜変更することができる。また、前述した各実施の形態が備える各要素は、技術的に可能な限りにおいて組み合わせることができ、これらを組み合わせたものも本発明の特徴を含む限り本発明の範囲に包含される。
10:制御システム
100:統括ECU
130:通信制御部
131:送信部
132:受信部
140:判定部
200:インバータECU
CB:CAN通信バス
100:統括ECU
130:通信制御部
131:送信部
132:受信部
140:判定部
200:インバータECU
CB:CAN通信バス
Claims (10)
- 互いに通信を行う第1制御装置(200)及び第2制御装置(100)を備えた制御システムであって、
前記第1制御装置は、
前記第2制御装置に向けて定期メッセージを繰り返し送信するものであって、
リセットが行われた場合には、前記定期メッセージを準備するための準備期間(To)が終了した後に、前記第2制御装置への前記定期メッセージの送信を開始するように構成されており、
前記第2制御装置は、
前記第1制御装置による前記定期メッセージの送信が途絶えた期間である途絶期間が生じた場合において、前記途絶期間が生じた原因が、前記第1制御装置の前記リセットによるものか、それとも一時的な通信経路の異常によるものか、を判定する判定部(140)を有し、
前記判定部は、
前記途絶期間の長さに基づいて、前記途絶期間が生じた原因の判定を行うことを特徴とする制御システム。 - 互いに通信を行う第1制御装置及び第2制御装置を備えた制御システムであって、
前記第1制御装置は、
前記第2制御装置に向けて定期メッセージを繰り返し送信するものであって、
リセットが行われた場合には、前記第2制御へ送信する定期メッセージを準備するための準備期間が終了した後に、前記第2制御装置への前記定期メッセージの送信を開始するように構成されており、
前記第2制御装置は、
前記第1制御装置による前記定期メッセージの送信が途絶えた期間である途絶期間が生じた場合において、前記途絶期間が生じた原因が、前記第1制御装置の前記リセットによるものか、それとも一時的な通信経路の異常によるものか、を判定する判定部と、
前記途絶期間において、前記第1制御装置に向けて通信確認メッセージを送信する送信部(131)と、
前記通信確認メッセージに対する応答として、前記第1制御装置から送信される応答メッセージを受信する受信部(132)と、を有し、
前記判定部は、前記応答メッセージが受信されたか否かに基づいて、前記途絶期間が生じた原因の判定を行うことを特徴とする制御システム。 - 前記送信部は、
前記応答メッセージが受信されるまでの間、前記通信確認メッセージを繰り返し送信するように構成されていることを特徴とする、請求項2に記載の制御システム。 - 前記第2制御装置は、
前記応答メッセージが受信されてから、前記第2制御装置による前記定期メッセージの送信が開始されるまでの期間の長さが所定範囲内である場合にのみ、前記途絶期間が生じた原因が前記リセットによるものであると判定することを特徴とする、請求項2に記載の制御システム。 - 前記送信部は、前記応答メッセージが受信された後においても、前記通信確認メッセージを繰り返し第2制御装置に送信するように構成されており、
前記判定部は、それぞれの前記通信確認メッセージに対する前記応答メッセージが連続して受信された期間の長さが所定範囲内である場合にのみ、前記途絶期間が生じた原因が前記リセットによるものであると判定することを特徴とする、請求項2に記載の制御システム。 - 第1制御装置からの前記定期メッセージの送信が途絶えた後、前記送信部から最初の前記通信確認メッセージが送信されるまでの期間である待機期間(Tc)は、
前記第2制御装置においてリセットが行われてから、前記定期メッセージの送信が最短で開始されるまでの期間よりも短いことを特徴とする、請求項5に記載の制御システム。 - 前記待機期間は、
前記第1制御装置においてリセットが行われてから、前記定期メッセージの準備が開始されるまでの期間(Tr)よりも長いことを特徴とする、請求項6に記載の制御システム。 - 前記第1制御装置において前記定期メッセージの準備が開始された直後に、前記送信部から最初の前記通信確認メッセージが送信されるよう、前記待機期間の長さが設定されていることを特徴とする、請求項7に記載の制御システム。
- 前記第1制御装置を複数備えたことを特徴とする、請求項1乃至8のいずれか1項に記載の制御システム。
- 前記第1制御装置はハイブリッド自動車に搭載された回転モーター(410)の制御を行うものであり、
前記第2制御装置は前記ハイブリッド自動車の統括制御を行うものであって、
前記第2制御装置は、
前記途絶期間が生じた原因が、前記第1制御装置の前記リセットによるものであると判定された場合には、前記回転モーターを停止させるための処理を行い、
前記途絶期間が生じた原因が、一時的な通信経路の異常によるものであると判定された場合には、前記第1制御装置から送信された前記定期メッセージに含まれる情報をフェール値として処理するように構成されていることを特徴とする、請求項1乃至8のいずれか1項に記載の制御システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014223463A JP2016092547A (ja) | 2014-10-31 | 2014-10-31 | 制御システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014223463A JP2016092547A (ja) | 2014-10-31 | 2014-10-31 | 制御システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016092547A true JP2016092547A (ja) | 2016-05-23 |
Family
ID=56019028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014223463A Pending JP2016092547A (ja) | 2014-10-31 | 2014-10-31 | 制御システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016092547A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018116801A1 (ja) * | 2016-12-21 | 2018-06-28 | 日立オートモティブシステムズ株式会社 | 電子制御装置、制御システム、リセット判定方法 |
JPWO2019159598A1 (ja) * | 2018-02-15 | 2020-12-03 | 日立オートモティブシステムズ株式会社 | 電池制御装置 |
US11567849B2 (en) | 2020-09-09 | 2023-01-31 | Toyota Jidosha Kabushiki Kaisha | Processing device, communication system, and non-transitory storage medium |
-
2014
- 2014-10-31 JP JP2014223463A patent/JP2016092547A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018116801A1 (ja) * | 2016-12-21 | 2018-06-28 | 日立オートモティブシステムズ株式会社 | 電子制御装置、制御システム、リセット判定方法 |
US11643095B2 (en) | 2016-12-21 | 2023-05-09 | Hitachi Astemo, Ltd. | Electronic control device, control system, and reset determination method |
JPWO2019159598A1 (ja) * | 2018-02-15 | 2020-12-03 | 日立オートモティブシステムズ株式会社 | 電池制御装置 |
US11567849B2 (en) | 2020-09-09 | 2023-01-31 | Toyota Jidosha Kabushiki Kaisha | Processing device, communication system, and non-transitory storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017014133A1 (ja) | 中継装置、電子制御装置、及び、車載システム | |
JP2016092547A (ja) | 制御システム | |
CN107390511A (zh) | 用于运行冗余的自动化系统的方法 | |
US8713353B2 (en) | Communication system including a switching section for switching a network route, controlling method and storage medium | |
JP6418217B2 (ja) | 通信システムで実行される情報集約方法 | |
MX2021011509A (es) | Transferencia de informacion de eventos de monitoreo durante un procedimiento de movilidad. | |
US20170163521A1 (en) | Zigbee network system and the backup method thereof | |
JP5707355B2 (ja) | ホットスタンバイ方式によるクライアントサーバシステム | |
JP2020076792A5 (ja) | ||
CN109143839A (zh) | 一种高容错的传感器冗余控制方法 | |
TW201516657A (zh) | 解譯接收自冗餘匯流排的信號之技術 | |
US20160105326A1 (en) | Aircraft communications network with distributed responsibility for compatibility confirmation | |
US20160087814A1 (en) | Wireless-communication quality-information processing device and communication system | |
US20160275029A1 (en) | Data Bus Coupler and Method of Operation | |
JP6066748B2 (ja) | システム管理装置およびシステム | |
US20190059065A1 (en) | Communication apparatus, communication system and communication method | |
TWI732233B (zh) | 控制系統和控制方法 | |
US9973428B2 (en) | Method for checking IP address collision of ethernet communication module of PLC | |
JP2015130613A (ja) | 通信システム | |
US11307552B2 (en) | Method for modifying a configuration and industrial plant system | |
JP7220997B2 (ja) | 施設監視システム、および、施設監視システムにおける通信方法 | |
WO2019242989A1 (en) | Updating of parameters in a profisafe environment at runtime | |
JP7203558B2 (ja) | 通信システム、制御方法及び通信モジュール | |
JP7154161B2 (ja) | 車両制御装置 | |
JP2018148308A (ja) | 通信システム |