(57)【要約】【課題】ＣＰＵが制御対象機器を制御するための処理を行う状況において、ＣＰＵの負担をより抑制することが可能な電子制御装置を提供する。【解決手段】ＥＣＵ間の通信に用いられる通信フレームには、受信データ（指令データ，制御値データ）にメッセージの種別を識別するための識別子（指令ＩＤ，制御ＩＤ）が付加されるように規定され、ＥＣＵ内のメッセージボックスにはその識別子が受信データと共に格納される。そして、ＥＣＵにおいて、ＤＭＡコントローラが、メッセージボックス内の受信データを、その識別子に基づいて予め区分されたＲＡＭの格納領域（受信キュー２６，受信バッファ２７）に転送するように構成した。これにより、ＲＡＭにおいてメッセージの種別毎に決められた格納領域に受信データが書き込まれることになり、ＣＰＵが制御量を演算する際に必要なメッセージの読み出しを比較的容易に行うことが可能となる。【選択図】図３
2011250110.tif 000002
【特許請求の範囲】
【請求項１】
予め設定された制御対象機器を制御する電子制御装置であって、
外部機器と接続する外部バスから通信フレームに載せて送られてくるデータを受信データとし、該受信データが少なくとも格納されるメッセージボックスと、
当該電子制御装置の内部バスを介して転送されてくる前記受信データの書込み及び読出しが可能な複数の格納領域を有する内部メモリと、
前記メッセージボックスに格納された受信データを、前記内部バスを介して前記内部メモリに転送するＤＭＡ転送手段と、
前記内部メモリに書き込まれた受信データの内容であるメッセージに従って、前記制御対象機器を制御するために必要な制御量を演算するＣＰＵと、
を備え、
前記通信フレームには、前記受信データに該メッセージの種別を識別するための識別子が付加されており、
前記メッセージボックスには、該識別子が該受信データと共に格納され、
前記ＤＭＡ転送手段は、前記識別子に基づいて予め区分された前記格納領域に前記受信データを転送することを特徴とする電子制御装置。
【請求項２】
前記メッセージの種別は、前記外部機器からの制御指令と、該制御指令に従って前記制御量を演算するために必要な制御値とに識別され、
前記内部メモリは、前記格納領域として、前記制御指令を表す指令データを格納するための受信キューと、前記制御値を表す制御値データを格納するための受信バッファとに区分されており、
前記ＤＭＡ転送手段は、前記識別子に基づいて、前記受信データが前記指令データであると判定した場合には前記受信キューに該受信データを転送し、前記受信データが前記制御値データであると判定した場合には前記受信バッファに該受信データを転送することを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記制御値データは、前記外部機器から繰り返し送られてくるデータであり、
前記識別子には、前記制御値の種別を識別するための制御ＩＤが含まれ、
前記受信バッファには、前記制御ＩＤ毎に前記制御値データを格納するための複数の格納位置が予め区分されており、
前記ＤＭＡ転送手段は、前記受信データが前記制御値データであると判定した場合には、前記識別子に含まれている制御ＩＤに基づき、前記受信バッファにおいて該制御ＩＤに対応する格納位置に上書きされるように該受信データを転送することを特徴とする請求項２に記載の電子制御装置。
【請求項４】
前記識別子には、前記制御指令における緊急度の高低を識別するための指令ＩＤが含まれており、
前記ＤＭＡ転送手段は、前記受信データが前記指令データであると判定し、且つ、該識別子に含まれている指令ＩＤに基づいて、該制御指令の緊急度が高いと判定した場合には、前記受信キューの先頭に該受信データを転送することを特徴とする請求項２または請求項３に記載の電子制御装置。
【請求項５】
前記制御対象機器は、車両に搭載されたエンジンであり、
前記外部機器の一つは、前記車両の進行方向における障害物と該車両との相対距離および相対速度に基づいて該車両の走行支援に関する制御処理を行う走行支援ＥＣＵであり、
前記指令ＩＤは、前記走行支援ＥＣＵから前記車両を停止させることを前記制御指令とする前記指令データについて前記緊急度が高く設定されていることを特徴とする請求項４に記載の電子制御装置。
【請求項６】
前記制御対象機器は、車両に搭載されており、
前記外部機器の一つは、前記制御対象機器について異常の有無を診断するための処理を行う車両診断ＥＣＵであり、
前記指令ＩＤは、前記制御対象機器に関する入出力データを前記車両診断ＥＣＵに送信することを前記制御指令とする前記指令データについて前記緊急度が低く設定されていることを特徴とする請求項４または請求項５に記載の電子制御装置。
【請求項７】
前記制御対象機器にて検出される検出値を前記制御値とする検出値データを入力するための入力インターフェースを備え、
前記検出値データは、前記入力インターフェースから繰り返し入力されるデータであり、且つ、該検出値の種別を識別するための検出ＩＤを有し、
前記受信バッファには、前記検出ＩＤ毎に前記検出値データを格納するための複数の格納位置が予め区分されており、
前記ＤＭＡ転送手段は、前記入力インターフェースから前記検出値データが入力された場合には、前記検出ＩＤに基づき、前記受信バッファにおいて該検出ＩＤに対応する格納位置に上書きされるように該検出値データを転送することを特徴とする請求項２ないし請求項６のいずれか１項に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部機器から通信バスを介して受信したデータに基づいて、予め設定された制御対象機器を制御する電子制御装置に関する。
【背景技術】
【０００２】
従来より、複数の電子制御装置（ＥＣＵ）からなる車載ネットワークシステムでは、各ＥＣＵが、他のＥＣＵとの間で通信を行うために通信バス（外部バス）に接続され、他のＥＣＵから車両における制御対象機器を制御するために必要な各種データを受信するように構成されている。
【０００３】
具体的には、ＥＣＵは、外部バスから通信フレームに載せて送られてくるデータを格納するためのメッセージボックスを有する通信コントローラと、ＣＰＵ，ＲＯＭ，ＲＡＭ，Ｉ／Ｏ等を中心に構成されるマイクロコンピュータとを備え、これらがＥＣＵ内における通信バス（内部バス）に接続されている。そして、メッセージボックスに格納されているデータ（受信データ）が内部バスを介してＲＡＭに転送され、ＣＰＵによってＲＡＭから受信データの内容（メッセージ）が読み出されるようにされている。
【０００４】
このうち、ＥＣＵ内における受信データの転送については、通信コントローラからの割込等により、ＣＰＵが行ってもよいが、車載ネットワークシステムのように、ＣＰＵが制御対象機器を制御するための処理（制御処理）を行う状況においては、ＣＰＵの負担をなるべく軽減させるために、ＤＭＡ（Direct Memory Access）転送を用いることが望ましい（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−５６９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、従来のＥＣＵでは、ＤＭＡ転送を用いる場合であっても、ＣＰＵの代わりにメッセージボックスの受信データを単にＲＡＭに転送するだけであるため、ＣＰＵが制御処理に必要なメッセージを読み出す際に、ＲＡＭにおける全ての受信データの中から探索する必要があり、これによるＣＰＵの負担が制御処理に影響を与える可能性があった。
【０００７】
本発明は、上記問題点を解決するために、ＣＰＵが制御対象機器を制御するための処理を行う状況において、ＣＰＵの負担をより抑制することが可能な電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するためになされた発明である請求項１に記載の電子制御装置は、予め設定された制御対象機器を制御する装置であって、外部機器と接続する外部バスから通信フレームに載せて送られてくるデータを受信データとし、その受信データが少なくとも格納されるメッセージボックスと、当該電子制御装置の内部バスを介して転送されてくる受信データの書込み及び読出しが可能な複数の格納領域を有する内部メモリとを備える。
【０００９】
また、この電子制御装置では、ＤＭＡ転送手段が、メッセージボックスに格納された受信データを、内部バスを介して内部メモリに転送し、ＣＰＵが、内部メモリに書き込まれた受信データの内容であるメッセージに従って、制御対象機器を制御するために必要な制御量を演算するようにされている。
【００１０】
本発明の電子制御装置では、通信フレームには、受信データにメッセージの種別を識別するための識別子が付加されるように規定され、メッセージボックスには、その識別子が受信データと共に格納されるようにする。そして、ＤＭＡ転送手段が、識別子に基づいて予め区分された格納領域（内部メモリ）に受信データを転送するように構成した。
【００１１】
このように構成された電子制御装置では、内部メモリにおいてメッセージの種別毎に決められた格納領域に受信データが書き込まれることになり、これにより、ＣＰＵが、制御量を演算する際に必要なメッセージを、内部メモリにおける全ての受信データの中から探索することなく、その種別に対応する格納領域から読み出せばよいことになる。
【００１２】
したがって、本発明の電子制御装置によれば、ＣＰＵが制御対象機器を制御するための処理を行う状況において、必要なメッセージの読み出しを従来の構成と比較して容易に行うことが可能となり、ひいてはＣＰＵの負担をより抑制することができる。
【００１３】
また、具体的には、本発明の電子制御装置において、請求項２に記載のように、上記のメッセージの種別を、外部機器からの制御指令と、その制御指令に従ってＣＰＵが制御量を演算するために必要な制御値とに識別し、内部メモリを、上記の格納領域として、制御指令を表す指令データを格納するための受信キューと、制御値を表す制御値データを格納するための受信バッファとに区分する。
【００１４】
そして、ＤＭＡ転送手段が、上記の識別子に基づいて、受信データが指令データであると判定した場合には受信キューにその受信データを転送し、受信データが制御値データであると判定した場合には受信バッファにその受信データを転送するようにしてもよい。
【００１５】
このように構成された電子制御装置では、ＣＰＵが、制御量を演算する際に必要な制御指令を受信キューから読み出し、なお且つ、制御指令に従って必要な制御値を受信バッファから読み出せばよいことになる。このため、内部メモリにおいて指令データと制御値データとが混在して格納される従来の構成と比較して、必要なメッセージの読み出しを容易に行うことができ、これによりＣＰＵの負担をより抑制することができる。
【００１６】
また、詳細には、本発明の電子制御装置では、請求項３に記載のように、制御値データが外部機器から繰り返し送られてくるデータであることを前提とすると、上記の識別子に制御値の種別を識別するための制御ＩＤが含まれるように規定し、受信バッファについては、制御値データを格納するための複数の格納位置を制御ＩＤ毎に区分する。
【００１７】
そして、ＤＭＡ転送手段によって、受信データが制御値データであると判定した場合には、その識別子に含まれている制御ＩＤに基づき、受信バッファにおいてその制御ＩＤに対応する格納位置に上書きされるようにその受信データを転送してもよい。
【００１８】
このように構成された電子制御装置では、受信バッファにおいて制御値の種別毎に決められた格納位置に制御値データが上書きされる（更新される）ことになり、これにより、ＣＰＵが、制御指令に従って必要な最新の制御値を、受信バッファにおける全ての制御値データの中から探索することなく、その種別に対応する格納位置から読み出せばよいことになる。
【００１９】
このため、その種別が同一である制御値データについて最新のデータと古いデータとが内部メモリに混在して格納されていた従来の構成と比較すると、ＣＰＵが、必要な制御値の読み出しを容易に行うことができ、なお且つ、常に最新の制御値を用いることができる。しかも、繰り返し送信されてくる制御値データが受信バッファに過度に蓄積されずに済むため、受信バッファの使用量を抑制することができる。
【００２０】
したがって、この構成によれば、ＣＰＵの負担や制御の無駄を極力排除すると共に、内部メモリの使用量を抑制することができ、しかも外部機器からのメッセージの送信タイミングに合わせて高速処理が可能なＣＰＵや、バッファの容量に余裕のある内部メモリを用意する必要がないことから、装置全体の製造コストを抑制することができる。
【００２１】
また、請求項４に記載のように、本発明の電子制御装置では、上記の識別子に制御指令における緊急度の高低のいずれかを識別するための指令ＩＤが含まれるように規定する。そして、ＤＭＡ転送手段によって、受信データが指令データであると判定し、且つ、その識別子に含まれている指令ＩＤに基づいて、その制御指令の緊急度が高いと判定した場合には、受信キューの先頭にその受信データを転送するように構成してもよい。
【００２２】
このように構成された電子制御装置によれば、ＣＰＵが受信キューの先頭から順に制御指令を読み出すだけで、緊急度が高い制御指令に従う処理を自ずと優先的に実行することになるため、例えばＣＰＵが緊急度の高い制御指令を、内部メモリにおける全ての指令データの中から探索する必要があった従来の構成と比較して、ＣＰＵの負担をさらに抑制することができる。
【００２３】
具体例としては、請求項５に記載のように、本発明において、制御対象機器が車両に搭載されたエンジンであり、外部機器の一つが、車両の進行方向における障害物とその車両との相対距離および相対速度に基づいてその車両の走行支援に関する制御処理を行う走行支援ＥＣＵであることを前提とする。この構成では、指令ＩＤは、走行支援ＥＣＵから当該車両を停止させることを制御指令とする指令データについて緊急度が高く設定されるとよい。
【００２４】
この場合、エンジンを制御する電子制御装置において、例えば車両が障害物と衝突する可能性が極めて高い場合などに、走行支援ＥＣＵから車両を強制的に停止させるための制御指令（強制停止）が出されると、受信キューに他の制御指令が格納されていても、直ちに強制停止に必要な処理をＣＰＵに実行させることができる。
【００２５】
また、請求項６に記載のように、本発明において、制御対象機器が車両に搭載されており、外部機器の一つが、制御対象機器について異常の有無を診断するための処理を行う車両診断ＥＣＵであることを前提とする。この構成では、指令ＩＤは、制御対象機器に関する入出力データを車両診断ＥＣＵに送信することを制御指令とする指令データについて緊急度が低く設定されるとよい。
【００２６】
この場合、車両に搭載された所定の制御対象機器を制御する電子制御装置において、車両診断ＥＣＵからの制御指令が単に制御対象機器の診断に必要なデータの送信要求であることから、ＣＰＵが、制御対象機器の制御に直接関係のない（つまり応答性を比較的重視しない）処理について、過度に優先させてしまうことを防止することができる。
【００２７】
ところで、内部メモリにおける受信バッファには、外部機器からの制御値データ以外にも繰り返し入力されるデータが格納されてもよい。具体的には、本発明の電子制御装置において、請求項７に記載のように、制御対象機器にて検出される検出値を上記の制御値とする検出値データを入力するための入力インターフェースを備えることを前提とする。また、検出値データに検出値の種別を識別するための検出ＩＤが含まれる（あるいは付加される）ように規定し、受信バッファについては、検出値データを格納するための複数の格納位置を検出ＩＤ毎に区分する。
【００２８】
そして、ＤＭＡ転送手段が、入力インターフェースから検出値データが入力された場合には、その検出ＩＤに基づき、受信バッファにおいてその検出ＩＤに対応する格納位置に上書きされるようにその検出データを転送するように構成してもよい。
【００２９】
このように構成された電子制御装置では、受信バッファにおいて検出値の種別毎に決められた格納位置に検出値データが上書きされる（更新される）ことになり、これにより、ＣＰＵが、制御指令に従って必要な最新の検出値を、受信バッファにおける全ての検出値データの中から探索することなく、その種別に対応する格納位置から読み出せばよいことになる。
【００３０】
このため、上述した制御値データの場合（請求項３）と同様の理由により、必要な検出値の読み出しを容易に行うことができることに加えて、常に最新の検出値を用いることができ、しかも繰り返し送信されてくる検出値データが受信バッファに過度に蓄積されずに済むため、受信バッファの使用量を抑制することができ、ひいては装置全体の製造コストを抑制することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明が適用された電子制御装置（ＥＣＵ）としてのエンジンＥＣＵの構成、及び車載ネットワークシステムの全体構成を示すブロック図である。
【図２】車載ネットワークシステムにおける各ＥＣＵ間の通信に用いられるフレーム（通信フレーム）の構成を示す説明図である。
【図３】受信キューおよび受信バッファの構成をそれぞれ示す説明図である。
【図４】ＤＭＡコントローラが実行する制御処理（ＤＭＡ転送処理）の詳細を示すフローチャートである。
【発明を実施するための形態】
【００３２】
以下に、本発明の実施形態を図面と共に説明する。
［全体構成］
図１は、本発明が適用された電子制御装置（ＥＣＵ）としてのエンジンＥＣＵの構成、及び車載ネットワークシステムの全体構成を示すブロック図である。
【００３３】
図１に示すように、本実施形態の車載ネットワークシステム１０は、車両に搭載された制御対象機器を制御する複数のＥＣＵ（以下、「対象ＥＣＵ群１１」という）と、この対象ＥＣＵに対して制御指令を行う複数のＥＣＵ（以下、「指令ＥＣＵ群１２」という）とを備え、各ＥＣＵが他のＥＣＵとの間で通信を行うために通信バス（外部バス）１３に接続されている。
【００３４】
指令ＥＣＵ群１２は、周知のオートクルーズ機能や衝突予測機能などを実現するための処理を行う走行支援ＥＣＵ４と、他のＥＣＵ（制御対象機器を含む）について異常の有無を診断するための処理（車両診断処理）を行う車両診断ＥＣＵ５とを備えて構成される。
【００３５】
このうち、走行支援ＥＣＵ４は、図示を省略するが、車両の進行方向における障害物の相対位置情報を取得するための監視センサ部と、車両の現状の挙動（例えば自車速など）を表す挙動情報を取得するための挙動センサ部と、ユーザによる入力操作（例えばスイッチ操作など）を受け付けるユーザ入力部とが接続されて構成される。
【００３６】
なお、監視センサ部は、例えば車両の前後各部に設置されたレーダセンサ及び画像センサを備えて構成され、レーダセンサが、所定検出範囲内に位置する障害物を検出して、車両に対するその障害物の相対位置を表すターゲット情報を作成し、画像センサが、撮像画像に基づいてターゲット情報に含まれている障害物の種類を特定し、その特定された障害物の相対位置を表す情報（相対位置情報）を出力する。
【００３７】
そして、走行支援ＥＣＵ４は、監視センサ部，挙動センサ部，ユーザ入力部から入力される各種情報（相対位置，挙動，入力操作）に基づいて、車両の走行支援に関する制御処理（走行制御処理）を実行し、その処理にて設定される制御指令および制御値のそれぞれを表すデータ（指令データ，制御値データ）を周期的に外部バス１３に送出するように構成されている。
【００３８】
例えば、走行制御処理では、挙動センサ部にて取得した挙動情報に基づき、自車速が所定の作動速度範囲内（例えば、時速４０〜１１０ｋｍ）であると判定し、且つ、この速度範囲内の走行状態においてユーザ入力部を介してオートクルーズ機能を使用するための専用スイッチがオンされると、そのときの自車速を上限値として記憶すると共に、対象ＥＣＵ群１１に自動制御を実行させるための制御指令（オートクルーズＯＮ）を設定する。
【００３９】
そして、走行制御処理では、オートクルーズＯＮを設定すると、監視センサ部から入力される相対位置情報に基づき、車両の走行経路上に先行車両が存在するか否かを判断し、肯定判断した場合には、先行車両との車間距離が所定距離となるように自車速および加速度の目標値（目標速度，目標加速度）を制御値として設定する。但し、目標速度は先に記憶した上限値以下の値に設定する。一方、否定判断した場合には、先の上限値を目標速度とし、その目標速度となるように目標加速度を制御値として随時設定する。
【００４０】
また、走行制御処理では、専用スイッチのオン・オフ（オートクルーズ機能）にかかわらず、監視センサ部から入力される相対位置情報の連続的な変化から、先行車両などの障害物と車両との相対距離および相対速度を算出し、この相対距離を相対速度で除算した衝突余裕時間（ＴＴＣ）を求め、ＴＴＣが所定の閾値時間を下回ると、対象ＥＣＵ群１１に車両を停止させるための制御指令（強制停止）を設定する。そして、強制停止を設定すると、目標速度をゼロ、目標加速度を所定の上限減速値として制御値を設定する。なお、強制停止については、挙動センサ部にて取得した挙動情報に基づき、車両が停止されたことを検出するまでその設定が継続される。
【００４１】
なお、走行制御処理では、専用スイッチがオフされたり、後述するブレーキＥＣＵ２からの受信データに基づき、運転者によるブレーキ操作がなされて減速したことを検出すると、対象ＥＣＵ群１１に自動制御を解除させるための制御指令（オートクルーズＯＦＦ）を設定する。また、後述するエンジンＥＣＵ１からの受信データに基づき、運転者によるアクセル操作がなされて加速したことを検出すると、運転者によりアクセルが離されたことを検出するまでの期間、オートクルーズＯＦＦを設定する。
【００４２】
一方、車両診断ＥＣＵ５は、例えば車両のメータ装置によって記録される走行距離に基づいて定期的（あるいは車両の停止時）に、制御対象機器に関する入出力データの送信要求を制御指令とする指令データを外部バス１３に送出し、対象ＥＣＵ群１１からの受信データに基づいて、車両診断処理を実行するように構成されている。
【００４３】
例えば、車両診断処理では、対象ＥＣＵ群１１から過去に受信した入出力データに基づく学習値を記憶しておき、今回の受信データの中に制御対象機器からの入力値（制御入力値）が同一である条件で学習値とかけ離れている制御対象機器への出力値（制御出力値）が存在する場合に、その入出力データの送信元であるＥＣＵまたはその制御対象機器に異常があると診断する。なお、この場合、例えば運転者に報知するためにメータ装置などに警告マーク等を表示する。
【００４４】
対象ＥＣＵ群１１は、エンジンのスロットル開度，燃料噴射量，点火時期等を制御するエンジンＥＣＵ１や、自動変速機を制御するトランスミッションＥＣＵ３、車両における前後左右の車輪に対するブレーキを制御するブレーキＥＣＵ２を備えて構成される。
【００４５】
そして、各ＥＣＵ１〜３は、走行支援ＥＣＵ４からオートクルーズＯＮを表す指令データを受信している間、その指令データに対応する制御値データ（目標速度，目標加速度）から特定される運転状態となるように、エンジン，自動変速機，ブレーキを自動制御するように構成されている。例えば、走行支援ＥＣＵ４から強制停止を表す指令データを受信している場合には、自動変速機を最低速にシフトチェンジすると共に、エンジンを停止しつつ強制ブレーキを作動させる（車輪をロックさせる）ことで、車両と障害物との衝突被害を抑制（あるいは回避）することを可能とする。
【００４６】
なお、走行支援ＥＣＵ４からオートクルーズＯＦＦを表す指令データを受信している場合には、制御対象機器（エンジン，自動変速機，ブレーキ）に設けられている（あるいはＥＣＵに接続されている）各種センサ・スイッチ類からの入力値（制御入力値）に基づいて、エンジン，自動変速機，ブレーキを通常制御することで、運転者の操作内容に則した車両走行を可能とする。
【００４７】
また、各ＥＣＵ１〜３は、複数の制御入力値（エンジン値，トランスミッション値，ブレーキ値）を制御値とする制御値データや、他のＥＣＵに対する制御指令を表す指令データを外部バス１３に送出することで、各種の制御入力値を共有したり、他の制御対象機器を利用して車両を統括制御したりすることが可能に構成されている。
【００４８】
［通信フレームの構成］
次に、図２は、車載ネットワークシステムにおける各ＥＣＵ間の通信に用いられるフレーム（通信フレーム）２０の構成を示す説明図である。なお、本実施形態の車載ネットワークシステムでは、各ＥＣＵ間の通信にＣＡＮプロトコルが使用されているものとする。
【００４９】
図２に示すように、通信フレーム２０は、当該通信フレーム２０の開始を表すＳＯＦ（Start Of Frame）コード、及び、後続のデータ部の内容（以下、「メッセージ」という）の種別を識別するためのＩＤコード（識別子に相当する）を有するヘッダ部２１と、送信元からのメッセージを表すデータ部２２と、以下のフッタ部２３とを備える。
【００５０】
フッタ部２３は、ヘッダ部およびデータ部を正常に受信できたか否かを判定するためのＣＲＣ（Cyclic Redundancy Check）コード、ヘッダ部およびデータ部を正常に受信できた場合に返信するＡＣＫ（Acknowledgement）コード、及び、当該通信フレームの終了を表すＥＯＦ（End Of Frame）等を有する。
【００５１】
ちなみに、データ部２２は、上述の指令データまたは制御値データからなり、具体的には、制御指令（例えばオートクルーズＯＮ・ＯＦＦ，強制停止，入出力データの送信要求など）または制御値（例えば目標速度，目標加速度，ブレーキ値，トランスミッション値など）をメッセージとして表している。
【００５２】
また、本実施形態のＩＤコードには、後続のデータ部が表すメッセージの種別を制御指令と制御値とに識別し、さらに制御指令における緊急度の高低のいずれかを識別するための指令ＩＤ、または制御値の種別を識別するための制御ＩＤが含まれている。
【００５３】
そして、本実施形態の指令ＩＤは、強制停止またはオートクルーズＯＦＦを表す指令データについて緊急度が高く設定され、入出力データの送信要求またはオートクルーズＯＮを表す指令データについて緊急度が低く設定されている。なお、オートクルーズ機能に関する指令データについて、ＯＦＦの方の緊急度が高く設定されている理由は、車両の自動走行から通常走行へ制御を移行する際の応答性Ａを、通常走行から自動走行へ制御を移行する際の応答性Ｂに比べて重視しているためである。
【００５４】
また、応答性Ａを応答性Ｂよりも重視する理由は、応答性Ａについては、例えば運転者がアクセルペダルやブレーキペダルを踏み込んだときに、その操作内容に則した迅速な走行制御が必要とされるのに対し、応答性Ｂについては、例えば運転者によりアクセルペダルが離されたときに、所定の目標速度となるように徐々に走行制御を行えばよいからである。
【００５５】
［エンジンＥＣＵの構成］
次に、図１に戻り、エンジンＥＣＵ１の構成について詳しく説明する。なお、ブレーキＥＣＵ２，トランスミッションＥＣＵ３についても制御対象機器が異なる点を除いて、同様の構成を有しているが、その詳細については省略する。
【００５６】
図１に示すように、エンジンＥＣＵ１は、ＣＡＮプロトコルに従って他のＥＣＵ２〜５との通信を制御する通信制御装置としてのＣＡＮコントローラ７と、ＣＡＮコントローラ７が生成する通信フレームを、外部バス１３を介して送受信するためのＣＡＮトランシーバ６とを備えている。
【００５７】
ＣＡＮトランシーバ６は、予め規定された外部バス１３の電気的条件を満たす信号を確実に送受信するように構成されている。
ＣＡＮコントローラ７は、ＥＣＵ間で送受信されるデータ等を格納するための複数の送信用の送信メッセージボックス８および受信用の受信メッセージボックス９を有し、送信メッセージボックス８の格納値に基づいてデータをフレーム化し、ＣＡＮトランシーバ６を介して外部バス１３に送信する送信制御や、ＣＡＮトランシーバ６を介して通信フレーム２０を受信してデータの抽出等を行う受信制御を行う。
【００５８】
また、ＣＡＮコントローラ７は、外部バス１３上での通信フレーム２０が衝突した際のバス権の調停制御（ビット単位非破壊アービトレーション）や、通信フレーム２０の送受信に関連して生じるエラーの検出（例えばＣＲＣ）および通知（例えばＡＣＫ）、送信制御および受信制御時にメッセージボックス８，９へのアクセス制御を行うように構成されている。
【００５９】
なお、複数のメッセージボックス８，９のそれぞれには、ボックス番号が付与されており、各メッセージボックス８，９は、通信フレーム２０に載せて送信するデータや受信したデータを格納するためのメッセージレジスタや、各メッセージレジスタに格納されたデータに対応するＩＤコードを格納するためのＩＤコードレジスタ等が設けられている。
【００６０】
そして、ＣＡＮコントローラ７は、他のＥＣＵからの受信データをメッセージレジスタに格納すると、そのメッセージレジスタおよび対応するＩＤコードレジスタを指定する割込を、内部バス１４を介して後述するＤＭＡコントローラ１９に要求する。
【００６１】
エンジンＥＣＵ１は、さらに、ＣＰＵ１５，ＲＯＭ１６，ＲＡＭ１７，Ｉ／Ｏ１８等を中心に構成されるマイクロコンピュータ（マイコン）と、受信メッセージボックス９のメッセージレジスタに格納されたデータ（受信データ）やＩ／Ｏ１８から周期的に入力されるデータを、当該ＥＣＵ１内における通信バス（内部バス）１４を介してＲＡＭ１７に転送するＤＭＡコントローラ１９とを備えている。
【００６２】
Ｉ／Ｏ１８は、マイコンに対して、エンジンの動作状態を検出する各種センサ・スイッチ類からの検出信号を入力するための入力回路２４、及び、マイコンから出力された制御信号を、エンジンの各部に設けられた各種電気負荷（アクチュエータ等）に出力するための出力回路２５が接続されている。
【００６３】
また、Ｉ／Ｏ１８は、入力回路２４を介して入力された検出信号に基づいて、エンジンに関する検出値を上述の制御値（制御入力値）として表す検出値データ、及びその検出値の種別を識別するための検出ＩＤを生成し、これら検出値データと検出ＩＤとを一時的に保持すると共に、ＤＭＡコントローラ１９に割込を要求するように構成されている。
【００６４】
ＲＡＭ１７は、周知の読み出し及び書き込みが可能なメモリであり、内部バス１４から転送されてくる各種データを格納するための複数の格納領域を有している。また、本実施形態のＲＡＭ１７は、この格納領域として、前述の指令データを格納するための受信キュー２６と、制御値データ、検出値データ、及び入出力データを格納するための受信バッファ２７とに区分されている。なお、図３（ａ）は受信キュー２６の構成を示す説明図であり、図３（ｂ）は受信バッファ２７の構成を示す説明図である。
【００６５】
図３（ａ）に示すように、受信キュー２６は、原則的に格納順に配列され、その先頭から指令データが取り出される周知のＦＩＦＯ方式のメモリであり、本実施形態では前述の指令データが指令ＩＤと対応づけて書き込まれるように構成されている。なお、指令ＩＤ（ＩＤコード）は、外部バス１３上の優勢レベル（ドミナント）の理論値が０であり、劣勢レベル（リセッシブ）の理論値が１であることから、緊急度が高い指令データのメッセージほど若い番号が設定されており、ＥＣＵ間の通信において調停負けしないようにされている。
【００６６】
また、図３（ｂ）に示すように、受信バッファ２７は、制御値データおよび検出値データを格納するための複数の格納位置（例えばアドレス）が、制御ＩＤおよび検出ＩＤ毎に予め決められており、同じ制御ＩＤまたは検出ＩＤに対応するデータが内部バス１４から転送されてくると、そのＩＤに対応する格納位置にデータが上書き保存されるように構成されている。また、入出力データ（制御入力値・出力値）については、所定領域に予め設定された数だけ最新のデータが上書きされて保存されるようになっている。
【００６７】
ＣＰＵ１５は、受信キュー２６において配列された指令データの先頭から順に制御指令を読み出すと共に、その読み出した制御指令に従って、受信バッファ２７から必要な制御値または検出値の種別に対応する制御値データまたは検出値データの内容を読み出し、これらデータを用いてエンジンを目標状態に制御するのに必要な各種電気負荷の制御量を演算するように構成されている。
【００６８】
具体的には、ＣＰＵ１５は、受信キュー２６の先頭からオートクルーズＯＮを読み出すと、受信バッファ２７の所定の格納位置から、目標加速度および目標速度を読み出すと共に、ブレーキ値およびトランスミッション値を読み出し、これらの制御値から特定される運転状態となるようにエンジンを制御する。
【００６９】
また、ＣＰＵ１５は、受信キュー２６の先頭からオートクルーズＯＦＦを読み出すと、受信バッファ２７の所定の格納位置から、センサ・スイッチ類の検出値を読み出し、これら検出値から特定される運転状態となるようにエンジンを制御する。さらに、受信キュー２６の先頭から緊急停止を読み出すと、車両が停止するようにエンジンを制御する（本実施形態ではエンジンを直ちに停止させる）。
【００７０】
なお、ＣＰＵ１５は、受信キュー２６の先頭から入出力データの送信要求を読み出すと、受信バッファ２７の所定領域から、複数の制御入力値および制御出力値からなる入出力データを、ＣＡＮコントローラ７内の送信メッセージボックス８に転送することで、外部バス１３を介して車両診断ＥＣＵ５に送信する。
【００７１】
［ＤＭＡ転送処理］
次に、ＤＭＡコントローラ１９が実行する制御処理（ＤＭＡ転送処理）を、図４のフローチャートに沿って詳しく説明する。
【００７２】
ＤＭＡ転送処理が開始されると、まず、Ｓ１１０では、内部バス１４を介して割込が要求されたか否か（割込要求が入力されたか否か）を判断し、ここで肯定判断した場合にはＳ１２０に移行し、否定判断した場合には、割込要求が入力されるまで待機する。
【００７３】
Ｓ１２０では、Ｓ１１０における割込の要求元がＣＡＮコントローラ７であるか否かを判断し、ここで肯定判断した場合にはＳ１３０に移行し、否定判断した場合には、Ｓ１１０における割込の要求元がＩ／Ｏ１８である（つまり、受信データが検出値データである）とみなして、Ｓ１４０に移行する。
【００７４】
Ｓ１３０では、Ｓ１２０におけるＣＡＮコントローラ７からの割込に基づいて、受信メッセージボックス９のＩＤコードレジスタからＩＤコードを読み出し、そのＩＤコードに基づき、メッセージレジスタに格納されている受信データの内容（メッセージ）の種別が制御指令であるか否か（つまり、受信データが指令データであるか否か）を判断し、ここで肯定判断した場合にはＳ１５０に移行する。一方、ここで否定判断した場合には、当該メッセージの種別が制御値である（つまり、受信データが制御値データである）とみなして、Ｓ１４０に移行する。
【００７５】
Ｓ１４０では、検出ＩＤ（Ｓ１２０から移行した場合）またはＩＤコードに含まれている制御ＩＤ（Ｓ１３０から移行した場合）に基づいて、そのＩＤ（検出ＩＤまたは制御ＩＤ）に対応する受信バッファ２７の格納位置に検出値データまたは制御値データを転送する。
【００７６】
Ｓ１５０では、ＩＤコードに含まれている指令ＩＤに基づいて、制御指令の緊急度が高いか否かを判断し、ここで肯定判断した場合にはＳ１６０に移行し、否定判断した場合にはＳ１７０に移行する。
【００７７】
Ｓ１６０では、受信キュー２６の先頭に指令データ（緊急度が高い制御指令を表すデータ）を転送し、Ｓ１７０では、受信キュー２６の最後尾に指令データ（緊急度が低い制御指令を表すデータ）を転送して、Ｓ１１０に移行する。
【００７８】
つまり、本処理では、検出値データおよび制御値データを受信バッファ２７において予め決められた格納位置に転送すると共に、緊急度が高い制御指令を表す指令データについては、優先的にＣＰＵに実行させるために受信キュー２６の先頭に転送し、緊急度が低い制御指令を表す指令データについては、受信順にＣＰＵに実行させるために受信キュー２６の最後尾に転送するようにしている。
【００７９】
［本実施形態の効果］
以上説明したように、本実施形態のエンジンＥＣＵ１では、ＣＰＵ１５が、制御指令を受信キュー２６の先頭から読み出し、その制御指令に従って必要な制御値または検出値を、受信バッファ２７においてその種別に対応する格納位置から読み出すことにより、エンジンを制御するのに必要な制御量を演算する。
【００８０】
したがって、本実施形態のエンジンＥＣＵ１によれば、ＣＰＵが制御量を演算する際に必要なメッセージを、ＲＡＭにおける全ての受信データの中から探索する必要がなく、容易に取り出すことが可能となり、ひいてはＣＰＵの負担をより抑制することができる。
【００８１】
また、エンジンＥＣＵ１では、制御指令の緊急度が高いか低いかを２値で表すように指令ＩＤを規定し、ＤＭＡコントローラ１９が、その値に応じて指令データの転送先を受信キュー２６の先頭にするか最後尾にするかを決定するため、受信キュー２６に既に格納されている指令データに対する緊急度を確認する必要がない。これにより、ＤＭＡコントローラ１９の負担を軽減することができる。
【００８２】
また、車載ネットワークシステム１０では、指令ＩＤが通信フレーム２０のＩＤコードに含まれており、制御指令の緊急度が高いほど若い番号が設定されているため、ＣＡＮプロトコルに従って行うＥＣＵ間の通信において、緊急度の高い制御指令を載せた通信フレーム２０が調停負けすることを防止できる。これにより、各ＥＣＵ１〜５が、他のＥＣＵに、緊急度の高いメッセージ（例えば、強制停止）を迅速かつ確実に送信することができる。
【００８３】
［本実施形態と特許請求の範囲との対応関係］
なお、本実施形態において、エンジンが制御対象機器、ＥＣＵ２〜５が外部機器、ＲＡＭ１７が内部メモリ、ＤＭＡコントローラ１９がＤＭＡ転送手段、入力回路２４およびＩ／Ｏ１８が入力インターフェースに相当する。
【００８４】
［他の実施形態］
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
【００８５】
例えば、上記実施形態のエンジンＥＣＵ１では、ＤＭＡ転送処理をＤＭＡコントローラ１９が行うように構成されているが、これに限定されずに、同様の処理をＣＡＮコントローラ７が行うように構成されてもよい。この場合、ＤＭＡコントローラ１９を備える必要がないことから構成を簡略化できる。
【００８６】
あるいは、ＤＭＡコントローラを備える代わりに、ＣＰＵを別個備え、そのＣＰＵがＤＭＡ転送処理を行うように構成されてもよい。この場合、上記実施形態のエンジンＥＣＵ１では、指令ＩＤが、制御指令における緊急度の高低によって２値で表されていたが、緊急度に応じて多値で表されてもよい。そして、この構成において、当該ＣＰＵが、多値で表された指令ＩＤに基づいて、受信キューに配列された指令データを緊急度の高い順に並べ替える処理を行うように構成してもよい。
【００８７】
また、上記実施形態のエンジンＥＣＵ１は、ＣＡＮコントローラ７が二種類のメッセージボックス８，９を有し、ＥＣＵ間で各種データを送受信可能に構成されているが、必ずしもこれに限定されず、少なくともＣＡＮコントローラ７が受信メッセージボックス９を有していればよく、他のＥＣＵからのデータを受信できればよい。
【００８８】
また、上記実施形態のエンジンＥＣＵ１では、ＲＡＭ１７の格納領域を受信キュー２６と受信バッファ２７とに区分して構成しているが、これに限定されるものではなく、例えば制御指令や制御値といった区別にかかわらず、メッセージの種別に応じてＲＡＭ１７における全ての格納領域を予め決めておいてもよい。つまり、ＲＡＭ１７の格納領域が少なくとも識別子（ＩＤコード）に基づいて区分されていればよい。
【００８９】
また、上記実施形態の通信フレーム２０では、ヘッダ部２１におけるＩＤコードを識別子として用いているが、これに限定されるものではなく、例えばデータ部２２の先頭部分を識別子として用いてもよい。
【００９０】
また、上記実施形態の車載ネットワークシステム１０では、強制停止やオートクルーズＯＦＦを表す指令データについて緊急度が高く設定されているが、これに限定されるものではない。例えば、エアバッグを制御するエアバッグＥＣＵを備え、このＥＣＵに対してエアバッグを作動させるための制御指令を表す指令データについて緊急度が高く設定されてもよい。
【００９１】
また、上記実施形態では、エンジンＥＣＵ１を本発明の電子制御装置の一例として説明したが、本発明は、例えば対象ＥＣＵ群１１における他のＥＣＵ２，３に適用されてもよいし、上記のエアバッグＥＣＵに適用されてもよい。さらに言えば、本発明は、車載ネットワークシステム１０を構成するＥＣＵに限らず、各種のＥＣＵに適用することが可能である。
【符号の説明】
【００９２】
１…エンジンＥＣＵ、２…ブレーキＥＣＵ、３…トランスミッションＥＣＵ、４…走行支援ＥＣＵ、５…車両診断ＥＣＵ、６…ＣＡＮトランシーバ、７…ＣＡＮコントローラ、８…送信メッセージボックス、９…受信メッセージボックス、１０…車載ネットワークシステム、１１…対象ＥＣＵ群、１２…指令ＥＣＵ群、１３…外部バス、１４…内部バス、１５…ＣＰＵ、１７…ＲＡＭ、１８…Ｉ／Ｏ、１９…ＤＭＡコントローラ、２０…通信フレーム、２４…入力回路、２６…受信キュー、２７…受信バッファ。
【図１】
2011250110.tif 000003
【図２】
2011250110.tif 000004
【図３】
2011250110.tif 000005
【図４】
2011250110.tif 000006