JP2011250110A - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- JP2011250110A JP2011250110A JP2010120830A JP2010120830A JP2011250110A JP 2011250110 A JP2011250110 A JP 2011250110A JP 2010120830 A JP2010120830 A JP 2010120830A JP 2010120830 A JP2010120830 A JP 2010120830A JP 2011250110 A JP2011250110 A JP 2011250110A
- Authority
- JP
- Japan
- Prior art keywords
- control
- data
- command
- received data
- vehicle
- 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
Landscapes
- Bus Control (AREA)
- Communication Control (AREA)
Abstract
【課題】CPUが制御対象機器を制御するための処理を行う状況において、CPUの負担をより抑制することが可能な電子制御装置を提供する。
【解決手段】ECU間の通信に用いられる通信フレームには、受信データ(指令データ,制御値データ)にメッセージの種別を識別するための識別子(指令ID,制御ID)が付加されるように規定され、ECU内のメッセージボックスにはその識別子が受信データと共に格納される。そして、ECUにおいて、DMAコントローラが、メッセージボックス内の受信データを、その識別子に基づいて予め区分されたRAMの格納領域(受信キュー26,受信バッファ27)に転送するように構成した。これにより、RAMにおいてメッセージの種別毎に決められた格納領域に受信データが書き込まれることになり、CPUが制御量を演算する際に必要なメッセージの読み出しを比較的容易に行うことが可能となる。
【選択図】図3
【解決手段】ECU間の通信に用いられる通信フレームには、受信データ(指令データ,制御値データ)にメッセージの種別を識別するための識別子(指令ID,制御ID)が付加されるように規定され、ECU内のメッセージボックスにはその識別子が受信データと共に格納される。そして、ECUにおいて、DMAコントローラが、メッセージボックス内の受信データを、その識別子に基づいて予め区分されたRAMの格納領域(受信キュー26,受信バッファ27)に転送するように構成した。これにより、RAMにおいてメッセージの種別毎に決められた格納領域に受信データが書き込まれることになり、CPUが制御量を演算する際に必要なメッセージの読み出しを比較的容易に行うことが可能となる。
【選択図】図3
Description
本発明は、外部機器から通信バスを介して受信したデータに基づいて、予め設定された制御対象機器を制御する電子制御装置に関する。
従来より、複数の電子制御装置(ECU)からなる車載ネットワークシステムでは、各ECUが、他のECUとの間で通信を行うために通信バス(外部バス)に接続され、他のECUから車両における制御対象機器を制御するために必要な各種データを受信するように構成されている。
具体的には、ECUは、外部バスから通信フレームに載せて送られてくるデータを格納するためのメッセージボックスを有する通信コントローラと、CPU,ROM,RAM,I/O等を中心に構成されるマイクロコンピュータとを備え、これらがECU内における通信バス(内部バス)に接続されている。そして、メッセージボックスに格納されているデータ(受信データ)が内部バスを介してRAMに転送され、CPUによってRAMから受信データの内容(メッセージ)が読み出されるようにされている。
このうち、ECU内における受信データの転送については、通信コントローラからの割込等により、CPUが行ってもよいが、車載ネットワークシステムのように、CPUが制御対象機器を制御するための処理(制御処理)を行う状況においては、CPUの負担をなるべく軽減させるために、DMA(Direct Memory Access)転送を用いることが望ましい(例えば、特許文献1参照)。
しかし、従来のECUでは、DMA転送を用いる場合であっても、CPUの代わりにメッセージボックスの受信データを単にRAMに転送するだけであるため、CPUが制御処理に必要なメッセージを読み出す際に、RAMにおける全ての受信データの中から探索する必要があり、これによるCPUの負担が制御処理に影響を与える可能性があった。
本発明は、上記問題点を解決するために、CPUが制御対象機器を制御するための処理を行う状況において、CPUの負担をより抑制することが可能な電子制御装置を提供することを目的とする。
上記目的を達成するためになされた発明である請求項1に記載の電子制御装置は、予め設定された制御対象機器を制御する装置であって、外部機器と接続する外部バスから通信フレームに載せて送られてくるデータを受信データとし、その受信データが少なくとも格納されるメッセージボックスと、当該電子制御装置の内部バスを介して転送されてくる受信データの書込み及び読出しが可能な複数の格納領域を有する内部メモリとを備える。
また、この電子制御装置では、DMA転送手段が、メッセージボックスに格納された受信データを、内部バスを介して内部メモリに転送し、CPUが、内部メモリに書き込まれた受信データの内容であるメッセージに従って、制御対象機器を制御するために必要な制御量を演算するようにされている。
本発明の電子制御装置では、通信フレームには、受信データにメッセージの種別を識別するための識別子が付加されるように規定され、メッセージボックスには、その識別子が受信データと共に格納されるようにする。そして、DMA転送手段が、識別子に基づいて予め区分された格納領域(内部メモリ)に受信データを転送するように構成した。
このように構成された電子制御装置では、内部メモリにおいてメッセージの種別毎に決められた格納領域に受信データが書き込まれることになり、これにより、CPUが、制御量を演算する際に必要なメッセージを、内部メモリにおける全ての受信データの中から探索することなく、その種別に対応する格納領域から読み出せばよいことになる。
したがって、本発明の電子制御装置によれば、CPUが制御対象機器を制御するための処理を行う状況において、必要なメッセージの読み出しを従来の構成と比較して容易に行うことが可能となり、ひいてはCPUの負担をより抑制することができる。
また、具体的には、本発明の電子制御装置において、請求項2に記載のように、上記のメッセージの種別を、外部機器からの制御指令と、その制御指令に従ってCPUが制御量を演算するために必要な制御値とに識別し、内部メモリを、上記の格納領域として、制御指令を表す指令データを格納するための受信キューと、制御値を表す制御値データを格納するための受信バッファとに区分する。
そして、DMA転送手段が、上記の識別子に基づいて、受信データが指令データであると判定した場合には受信キューにその受信データを転送し、受信データが制御値データであると判定した場合には受信バッファにその受信データを転送するようにしてもよい。
このように構成された電子制御装置では、CPUが、制御量を演算する際に必要な制御指令を受信キューから読み出し、なお且つ、制御指令に従って必要な制御値を受信バッファから読み出せばよいことになる。このため、内部メモリにおいて指令データと制御値データとが混在して格納される従来の構成と比較して、必要なメッセージの読み出しを容易に行うことができ、これによりCPUの負担をより抑制することができる。
また、詳細には、本発明の電子制御装置では、請求項3に記載のように、制御値データが外部機器から繰り返し送られてくるデータであることを前提とすると、上記の識別子に制御値の種別を識別するための制御IDが含まれるように規定し、受信バッファについては、制御値データを格納するための複数の格納位置を制御ID毎に区分する。
そして、DMA転送手段によって、受信データが制御値データであると判定した場合には、その識別子に含まれている制御IDに基づき、受信バッファにおいてその制御IDに対応する格納位置に上書きされるようにその受信データを転送してもよい。
このように構成された電子制御装置では、受信バッファにおいて制御値の種別毎に決められた格納位置に制御値データが上書きされる(更新される)ことになり、これにより、CPUが、制御指令に従って必要な最新の制御値を、受信バッファにおける全ての制御値データの中から探索することなく、その種別に対応する格納位置から読み出せばよいことになる。
このため、その種別が同一である制御値データについて最新のデータと古いデータとが内部メモリに混在して格納されていた従来の構成と比較すると、CPUが、必要な制御値の読み出しを容易に行うことができ、なお且つ、常に最新の制御値を用いることができる。しかも、繰り返し送信されてくる制御値データが受信バッファに過度に蓄積されずに済むため、受信バッファの使用量を抑制することができる。
したがって、この構成によれば、CPUの負担や制御の無駄を極力排除すると共に、内部メモリの使用量を抑制することができ、しかも外部機器からのメッセージの送信タイミングに合わせて高速処理が可能なCPUや、バッファの容量に余裕のある内部メモリを用意する必要がないことから、装置全体の製造コストを抑制することができる。
また、請求項4に記載のように、本発明の電子制御装置では、上記の識別子に制御指令における緊急度の高低のいずれかを識別するための指令IDが含まれるように規定する。そして、DMA転送手段によって、受信データが指令データであると判定し、且つ、その識別子に含まれている指令IDに基づいて、その制御指令の緊急度が高いと判定した場合には、受信キューの先頭にその受信データを転送するように構成してもよい。
このように構成された電子制御装置によれば、CPUが受信キューの先頭から順に制御指令を読み出すだけで、緊急度が高い制御指令に従う処理を自ずと優先的に実行することになるため、例えばCPUが緊急度の高い制御指令を、内部メモリにおける全ての指令データの中から探索する必要があった従来の構成と比較して、CPUの負担をさらに抑制することができる。
具体例としては、請求項5に記載のように、本発明において、制御対象機器が車両に搭載されたエンジンであり、外部機器の一つが、車両の進行方向における障害物とその車両との相対距離および相対速度に基づいてその車両の走行支援に関する制御処理を行う走行支援ECUであることを前提とする。この構成では、指令IDは、走行支援ECUから当該車両を停止させることを制御指令とする指令データについて緊急度が高く設定されるとよい。
この場合、エンジンを制御する電子制御装置において、例えば車両が障害物と衝突する可能性が極めて高い場合などに、走行支援ECUから車両を強制的に停止させるための制御指令(強制停止)が出されると、受信キューに他の制御指令が格納されていても、直ちに強制停止に必要な処理をCPUに実行させることができる。
また、請求項6に記載のように、本発明において、制御対象機器が車両に搭載されており、外部機器の一つが、制御対象機器について異常の有無を診断するための処理を行う車両診断ECUであることを前提とする。この構成では、指令IDは、制御対象機器に関する入出力データを車両診断ECUに送信することを制御指令とする指令データについて緊急度が低く設定されるとよい。
この場合、車両に搭載された所定の制御対象機器を制御する電子制御装置において、車両診断ECUからの制御指令が単に制御対象機器の診断に必要なデータの送信要求であることから、CPUが、制御対象機器の制御に直接関係のない(つまり応答性を比較的重視しない)処理について、過度に優先させてしまうことを防止することができる。
ところで、内部メモリにおける受信バッファには、外部機器からの制御値データ以外にも繰り返し入力されるデータが格納されてもよい。具体的には、本発明の電子制御装置において、請求項7に記載のように、制御対象機器にて検出される検出値を上記の制御値とする検出値データを入力するための入力インターフェースを備えることを前提とする。また、検出値データに検出値の種別を識別するための検出IDが含まれる(あるいは付加される)ように規定し、受信バッファについては、検出値データを格納するための複数の格納位置を検出ID毎に区分する。
そして、DMA転送手段が、入力インターフェースから検出値データが入力された場合には、その検出IDに基づき、受信バッファにおいてその検出IDに対応する格納位置に上書きされるようにその検出データを転送するように構成してもよい。
このように構成された電子制御装置では、受信バッファにおいて検出値の種別毎に決められた格納位置に検出値データが上書きされる(更新される)ことになり、これにより、CPUが、制御指令に従って必要な最新の検出値を、受信バッファにおける全ての検出値データの中から探索することなく、その種別に対応する格納位置から読み出せばよいことになる。
このため、上述した制御値データの場合(請求項3)と同様の理由により、必要な検出値の読み出しを容易に行うことができることに加えて、常に最新の検出値を用いることができ、しかも繰り返し送信されてくる検出値データが受信バッファに過度に蓄積されずに済むため、受信バッファの使用量を抑制することができ、ひいては装置全体の製造コストを抑制することができる。
以下に、本発明の実施形態を図面と共に説明する。
[全体構成]
図1は、本発明が適用された電子制御装置(ECU)としてのエンジンECUの構成、及び車載ネットワークシステムの全体構成を示すブロック図である。
[全体構成]
図1は、本発明が適用された電子制御装置(ECU)としてのエンジンECUの構成、及び車載ネットワークシステムの全体構成を示すブロック図である。
図1に示すように、本実施形態の車載ネットワークシステム10は、車両に搭載された制御対象機器を制御する複数のECU(以下、「対象ECU群11」という)と、この対象ECUに対して制御指令を行う複数のECU(以下、「指令ECU群12」という)とを備え、各ECUが他のECUとの間で通信を行うために通信バス(外部バス)13に接続されている。
指令ECU群12は、周知のオートクルーズ機能や衝突予測機能などを実現するための処理を行う走行支援ECU4と、他のECU(制御対象機器を含む)について異常の有無を診断するための処理(車両診断処理)を行う車両診断ECU5とを備えて構成される。
このうち、走行支援ECU4は、図示を省略するが、車両の進行方向における障害物の相対位置情報を取得するための監視センサ部と、車両の現状の挙動(例えば自車速など)を表す挙動情報を取得するための挙動センサ部と、ユーザによる入力操作(例えばスイッチ操作など)を受け付けるユーザ入力部とが接続されて構成される。
なお、監視センサ部は、例えば車両の前後各部に設置されたレーダセンサ及び画像センサを備えて構成され、レーダセンサが、所定検出範囲内に位置する障害物を検出して、車両に対するその障害物の相対位置を表すターゲット情報を作成し、画像センサが、撮像画像に基づいてターゲット情報に含まれている障害物の種類を特定し、その特定された障害物の相対位置を表す情報(相対位置情報)を出力する。
そして、走行支援ECU4は、監視センサ部,挙動センサ部,ユーザ入力部から入力される各種情報(相対位置,挙動,入力操作)に基づいて、車両の走行支援に関する制御処理(走行制御処理)を実行し、その処理にて設定される制御指令および制御値のそれぞれを表すデータ(指令データ,制御値データ)を周期的に外部バス13に送出するように構成されている。
例えば、走行制御処理では、挙動センサ部にて取得した挙動情報に基づき、自車速が所定の作動速度範囲内(例えば、時速40〜110km)であると判定し、且つ、この速度範囲内の走行状態においてユーザ入力部を介してオートクルーズ機能を使用するための専用スイッチがオンされると、そのときの自車速を上限値として記憶すると共に、対象ECU群11に自動制御を実行させるための制御指令(オートクルーズON)を設定する。
そして、走行制御処理では、オートクルーズONを設定すると、監視センサ部から入力される相対位置情報に基づき、車両の走行経路上に先行車両が存在するか否かを判断し、肯定判断した場合には、先行車両との車間距離が所定距離となるように自車速および加速度の目標値(目標速度,目標加速度)を制御値として設定する。但し、目標速度は先に記憶した上限値以下の値に設定する。一方、否定判断した場合には、先の上限値を目標速度とし、その目標速度となるように目標加速度を制御値として随時設定する。
また、走行制御処理では、専用スイッチのオン・オフ(オートクルーズ機能)にかかわらず、監視センサ部から入力される相対位置情報の連続的な変化から、先行車両などの障害物と車両との相対距離および相対速度を算出し、この相対距離を相対速度で除算した衝突余裕時間(TTC)を求め、TTCが所定の閾値時間を下回ると、対象ECU群11に車両を停止させるための制御指令(強制停止)を設定する。そして、強制停止を設定すると、目標速度をゼロ、目標加速度を所定の上限減速値として制御値を設定する。なお、強制停止については、挙動センサ部にて取得した挙動情報に基づき、車両が停止されたことを検出するまでその設定が継続される。
なお、走行制御処理では、専用スイッチがオフされたり、後述するブレーキECU2からの受信データに基づき、運転者によるブレーキ操作がなされて減速したことを検出すると、対象ECU群11に自動制御を解除させるための制御指令(オートクルーズOFF)を設定する。また、後述するエンジンECU1からの受信データに基づき、運転者によるアクセル操作がなされて加速したことを検出すると、運転者によりアクセルが離されたことを検出するまでの期間、オートクルーズOFFを設定する。
一方、車両診断ECU5は、例えば車両のメータ装置によって記録される走行距離に基づいて定期的(あるいは車両の停止時)に、制御対象機器に関する入出力データの送信要求を制御指令とする指令データを外部バス13に送出し、対象ECU群11からの受信データに基づいて、車両診断処理を実行するように構成されている。
例えば、車両診断処理では、対象ECU群11から過去に受信した入出力データに基づく学習値を記憶しておき、今回の受信データの中に制御対象機器からの入力値(制御入力値)が同一である条件で学習値とかけ離れている制御対象機器への出力値(制御出力値)が存在する場合に、その入出力データの送信元であるECUまたはその制御対象機器に異常があると診断する。なお、この場合、例えば運転者に報知するためにメータ装置などに警告マーク等を表示する。
対象ECU群11は、エンジンのスロットル開度,燃料噴射量,点火時期等を制御するエンジンECU1や、自動変速機を制御するトランスミッションECU3、車両における前後左右の車輪に対するブレーキを制御するブレーキECU2を備えて構成される。
そして、各ECU1〜3は、走行支援ECU4からオートクルーズONを表す指令データを受信している間、その指令データに対応する制御値データ(目標速度,目標加速度)から特定される運転状態となるように、エンジン,自動変速機,ブレーキを自動制御するように構成されている。例えば、走行支援ECU4から強制停止を表す指令データを受信している場合には、自動変速機を最低速にシフトチェンジすると共に、エンジンを停止しつつ強制ブレーキを作動させる(車輪をロックさせる)ことで、車両と障害物との衝突被害を抑制(あるいは回避)することを可能とする。
なお、走行支援ECU4からオートクルーズOFFを表す指令データを受信している場合には、制御対象機器(エンジン,自動変速機,ブレーキ)に設けられている(あるいはECUに接続されている)各種センサ・スイッチ類からの入力値(制御入力値)に基づいて、エンジン,自動変速機,ブレーキを通常制御することで、運転者の操作内容に則した車両走行を可能とする。
また、各ECU1〜3は、複数の制御入力値(エンジン値,トランスミッション値,ブレーキ値)を制御値とする制御値データや、他のECUに対する制御指令を表す指令データを外部バス13に送出することで、各種の制御入力値を共有したり、他の制御対象機器を利用して車両を統括制御したりすることが可能に構成されている。
[通信フレームの構成]
次に、図2は、車載ネットワークシステムにおける各ECU間の通信に用いられるフレーム(通信フレーム)20の構成を示す説明図である。なお、本実施形態の車載ネットワークシステムでは、各ECU間の通信にCANプロトコルが使用されているものとする。
次に、図2は、車載ネットワークシステムにおける各ECU間の通信に用いられるフレーム(通信フレーム)20の構成を示す説明図である。なお、本実施形態の車載ネットワークシステムでは、各ECU間の通信にCANプロトコルが使用されているものとする。
図2に示すように、通信フレーム20は、当該通信フレーム20の開始を表すSOF(Start Of Frame)コード、及び、後続のデータ部の内容(以下、「メッセージ」という)の種別を識別するためのIDコード(識別子に相当する)を有するヘッダ部21と、送信元からのメッセージを表すデータ部22と、以下のフッタ部23とを備える。
フッタ部23は、ヘッダ部およびデータ部を正常に受信できたか否かを判定するためのCRC(Cyclic Redundancy Check)コード、ヘッダ部およびデータ部を正常に受信できた場合に返信するACK(Acknowledgement)コード、及び、当該通信フレームの終了を表すEOF(End Of Frame)等を有する。
ちなみに、データ部22は、上述の指令データまたは制御値データからなり、具体的には、制御指令(例えばオートクルーズON・OFF,強制停止,入出力データの送信要求など)または制御値(例えば目標速度,目標加速度,ブレーキ値,トランスミッション値など)をメッセージとして表している。
また、本実施形態のIDコードには、後続のデータ部が表すメッセージの種別を制御指令と制御値とに識別し、さらに制御指令における緊急度の高低のいずれかを識別するための指令ID、または制御値の種別を識別するための制御IDが含まれている。
そして、本実施形態の指令IDは、強制停止またはオートクルーズOFFを表す指令データについて緊急度が高く設定され、入出力データの送信要求またはオートクルーズONを表す指令データについて緊急度が低く設定されている。なお、オートクルーズ機能に関する指令データについて、OFFの方の緊急度が高く設定されている理由は、車両の自動走行から通常走行へ制御を移行する際の応答性Aを、通常走行から自動走行へ制御を移行する際の応答性Bに比べて重視しているためである。
また、応答性Aを応答性Bよりも重視する理由は、応答性Aについては、例えば運転者がアクセルペダルやブレーキペダルを踏み込んだときに、その操作内容に則した迅速な走行制御が必要とされるのに対し、応答性Bについては、例えば運転者によりアクセルペダルが離されたときに、所定の目標速度となるように徐々に走行制御を行えばよいからである。
[エンジンECUの構成]
次に、図1に戻り、エンジンECU1の構成について詳しく説明する。なお、ブレーキECU2,トランスミッションECU3についても制御対象機器が異なる点を除いて、同様の構成を有しているが、その詳細については省略する。
次に、図1に戻り、エンジンECU1の構成について詳しく説明する。なお、ブレーキECU2,トランスミッションECU3についても制御対象機器が異なる点を除いて、同様の構成を有しているが、その詳細については省略する。
図1に示すように、エンジンECU1は、CANプロトコルに従って他のECU2〜5との通信を制御する通信制御装置としてのCANコントローラ7と、CANコントローラ7が生成する通信フレームを、外部バス13を介して送受信するためのCANトランシーバ6とを備えている。
CANトランシーバ6は、予め規定された外部バス13の電気的条件を満たす信号を確実に送受信するように構成されている。
CANコントローラ7は、ECU間で送受信されるデータ等を格納するための複数の送信用の送信メッセージボックス8および受信用の受信メッセージボックス9を有し、送信メッセージボックス8の格納値に基づいてデータをフレーム化し、CANトランシーバ6を介して外部バス13に送信する送信制御や、CANトランシーバ6を介して通信フレーム20を受信してデータの抽出等を行う受信制御を行う。
CANコントローラ7は、ECU間で送受信されるデータ等を格納するための複数の送信用の送信メッセージボックス8および受信用の受信メッセージボックス9を有し、送信メッセージボックス8の格納値に基づいてデータをフレーム化し、CANトランシーバ6を介して外部バス13に送信する送信制御や、CANトランシーバ6を介して通信フレーム20を受信してデータの抽出等を行う受信制御を行う。
また、CANコントローラ7は、外部バス13上での通信フレーム20が衝突した際のバス権の調停制御(ビット単位非破壊アービトレーション)や、通信フレーム20の送受信に関連して生じるエラーの検出(例えばCRC)および通知(例えばACK)、送信制御および受信制御時にメッセージボックス8,9へのアクセス制御を行うように構成されている。
なお、複数のメッセージボックス8,9のそれぞれには、ボックス番号が付与されており、各メッセージボックス8,9は、通信フレーム20に載せて送信するデータや受信したデータを格納するためのメッセージレジスタや、各メッセージレジスタに格納されたデータに対応するIDコードを格納するためのIDコードレジスタ等が設けられている。
そして、CANコントローラ7は、他のECUからの受信データをメッセージレジスタに格納すると、そのメッセージレジスタおよび対応するIDコードレジスタを指定する割込を、内部バス14を介して後述するDMAコントローラ19に要求する。
エンジンECU1は、さらに、CPU15,ROM16,RAM17,I/O18等を中心に構成されるマイクロコンピュータ(マイコン)と、受信メッセージボックス9のメッセージレジスタに格納されたデータ(受信データ)やI/O18から周期的に入力されるデータを、当該ECU1内における通信バス(内部バス)14を介してRAM17に転送するDMAコントローラ19とを備えている。
I/O18は、マイコンに対して、エンジンの動作状態を検出する各種センサ・スイッチ類からの検出信号を入力するための入力回路24、及び、マイコンから出力された制御信号を、エンジンの各部に設けられた各種電気負荷(アクチュエータ等)に出力するための出力回路25が接続されている。
また、I/O18は、入力回路24を介して入力された検出信号に基づいて、エンジンに関する検出値を上述の制御値(制御入力値)として表す検出値データ、及びその検出値の種別を識別するための検出IDを生成し、これら検出値データと検出IDとを一時的に保持すると共に、DMAコントローラ19に割込を要求するように構成されている。
RAM17は、周知の読み出し及び書き込みが可能なメモリであり、内部バス14から転送されてくる各種データを格納するための複数の格納領域を有している。また、本実施形態のRAM17は、この格納領域として、前述の指令データを格納するための受信キュー26と、制御値データ、検出値データ、及び入出力データを格納するための受信バッファ27とに区分されている。なお、図3(a)は受信キュー26の構成を示す説明図であり、図3(b)は受信バッファ27の構成を示す説明図である。
図3(a)に示すように、受信キュー26は、原則的に格納順に配列され、その先頭から指令データが取り出される周知のFIFO方式のメモリであり、本実施形態では前述の指令データが指令IDと対応づけて書き込まれるように構成されている。なお、指令ID(IDコード)は、外部バス13上の優勢レベル(ドミナント)の理論値が0であり、劣勢レベル(リセッシブ)の理論値が1であることから、緊急度が高い指令データのメッセージほど若い番号が設定されており、ECU間の通信において調停負けしないようにされている。
また、図3(b)に示すように、受信バッファ27は、制御値データおよび検出値データを格納するための複数の格納位置(例えばアドレス)が、制御IDおよび検出ID毎に予め決められており、同じ制御IDまたは検出IDに対応するデータが内部バス14から転送されてくると、そのIDに対応する格納位置にデータが上書き保存されるように構成されている。また、入出力データ(制御入力値・出力値)については、所定領域に予め設定された数だけ最新のデータが上書きされて保存されるようになっている。
CPU15は、受信キュー26において配列された指令データの先頭から順に制御指令を読み出すと共に、その読み出した制御指令に従って、受信バッファ27から必要な制御値または検出値の種別に対応する制御値データまたは検出値データの内容を読み出し、これらデータを用いてエンジンを目標状態に制御するのに必要な各種電気負荷の制御量を演算するように構成されている。
具体的には、CPU15は、受信キュー26の先頭からオートクルーズONを読み出すと、受信バッファ27の所定の格納位置から、目標加速度および目標速度を読み出すと共に、ブレーキ値およびトランスミッション値を読み出し、これらの制御値から特定される運転状態となるようにエンジンを制御する。
また、CPU15は、受信キュー26の先頭からオートクルーズOFFを読み出すと、受信バッファ27の所定の格納位置から、センサ・スイッチ類の検出値を読み出し、これら検出値から特定される運転状態となるようにエンジンを制御する。さらに、受信キュー26の先頭から緊急停止を読み出すと、車両が停止するようにエンジンを制御する(本実施形態ではエンジンを直ちに停止させる)。
なお、CPU15は、受信キュー26の先頭から入出力データの送信要求を読み出すと、受信バッファ27の所定領域から、複数の制御入力値および制御出力値からなる入出力データを、CANコントローラ7内の送信メッセージボックス8に転送することで、外部バス13を介して車両診断ECU5に送信する。
[DMA転送処理]
次に、DMAコントローラ19が実行する制御処理(DMA転送処理)を、図4のフローチャートに沿って詳しく説明する。
次に、DMAコントローラ19が実行する制御処理(DMA転送処理)を、図4のフローチャートに沿って詳しく説明する。
DMA転送処理が開始されると、まず、S110では、内部バス14を介して割込が要求されたか否か(割込要求が入力されたか否か)を判断し、ここで肯定判断した場合にはS120に移行し、否定判断した場合には、割込要求が入力されるまで待機する。
S120では、S110における割込の要求元がCANコントローラ7であるか否かを判断し、ここで肯定判断した場合にはS130に移行し、否定判断した場合には、S110における割込の要求元がI/O18である(つまり、受信データが検出値データである)とみなして、S140に移行する。
S130では、S120におけるCANコントローラ7からの割込に基づいて、受信メッセージボックス9のIDコードレジスタからIDコードを読み出し、そのIDコードに基づき、メッセージレジスタに格納されている受信データの内容(メッセージ)の種別が制御指令であるか否か(つまり、受信データが指令データであるか否か)を判断し、ここで肯定判断した場合にはS150に移行する。一方、ここで否定判断した場合には、当該メッセージの種別が制御値である(つまり、受信データが制御値データである)とみなして、S140に移行する。
S140では、検出ID(S120から移行した場合)またはIDコードに含まれている制御ID(S130から移行した場合)に基づいて、そのID(検出IDまたは制御ID)に対応する受信バッファ27の格納位置に検出値データまたは制御値データを転送する。
S150では、IDコードに含まれている指令IDに基づいて、制御指令の緊急度が高いか否かを判断し、ここで肯定判断した場合にはS160に移行し、否定判断した場合にはS170に移行する。
S160では、受信キュー26の先頭に指令データ(緊急度が高い制御指令を表すデータ)を転送し、S170では、受信キュー26の最後尾に指令データ(緊急度が低い制御指令を表すデータ)を転送して、S110に移行する。
つまり、本処理では、検出値データおよび制御値データを受信バッファ27において予め決められた格納位置に転送すると共に、緊急度が高い制御指令を表す指令データについては、優先的にCPUに実行させるために受信キュー26の先頭に転送し、緊急度が低い制御指令を表す指令データについては、受信順にCPUに実行させるために受信キュー26の最後尾に転送するようにしている。
[本実施形態の効果]
以上説明したように、本実施形態のエンジンECU1では、CPU15が、制御指令を受信キュー26の先頭から読み出し、その制御指令に従って必要な制御値または検出値を、受信バッファ27においてその種別に対応する格納位置から読み出すことにより、エンジンを制御するのに必要な制御量を演算する。
以上説明したように、本実施形態のエンジンECU1では、CPU15が、制御指令を受信キュー26の先頭から読み出し、その制御指令に従って必要な制御値または検出値を、受信バッファ27においてその種別に対応する格納位置から読み出すことにより、エンジンを制御するのに必要な制御量を演算する。
したがって、本実施形態のエンジンECU1によれば、CPUが制御量を演算する際に必要なメッセージを、RAMにおける全ての受信データの中から探索する必要がなく、容易に取り出すことが可能となり、ひいてはCPUの負担をより抑制することができる。
また、エンジンECU1では、制御指令の緊急度が高いか低いかを2値で表すように指令IDを規定し、DMAコントローラ19が、その値に応じて指令データの転送先を受信キュー26の先頭にするか最後尾にするかを決定するため、受信キュー26に既に格納されている指令データに対する緊急度を確認する必要がない。これにより、DMAコントローラ19の負担を軽減することができる。
また、車載ネットワークシステム10では、指令IDが通信フレーム20のIDコードに含まれており、制御指令の緊急度が高いほど若い番号が設定されているため、CANプロトコルに従って行うECU間の通信において、緊急度の高い制御指令を載せた通信フレーム20が調停負けすることを防止できる。これにより、各ECU1〜5が、他のECUに、緊急度の高いメッセージ(例えば、強制停止)を迅速かつ確実に送信することができる。
[本実施形態と特許請求の範囲との対応関係]
なお、本実施形態において、エンジンが制御対象機器、ECU2〜5が外部機器、RAM17が内部メモリ、DMAコントローラ19がDMA転送手段、入力回路24およびI/O18が入力インターフェースに相当する。
なお、本実施形態において、エンジンが制御対象機器、ECU2〜5が外部機器、RAM17が内部メモリ、DMAコントローラ19がDMA転送手段、入力回路24およびI/O18が入力インターフェースに相当する。
[他の実施形態]
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
例えば、上記実施形態のエンジンECU1では、DMA転送処理をDMAコントローラ19が行うように構成されているが、これに限定されずに、同様の処理をCANコントローラ7が行うように構成されてもよい。この場合、DMAコントローラ19を備える必要がないことから構成を簡略化できる。
あるいは、DMAコントローラを備える代わりに、CPUを別個備え、そのCPUがDMA転送処理を行うように構成されてもよい。この場合、上記実施形態のエンジンECU1では、指令IDが、制御指令における緊急度の高低によって2値で表されていたが、緊急度に応じて多値で表されてもよい。そして、この構成において、当該CPUが、多値で表された指令IDに基づいて、受信キューに配列された指令データを緊急度の高い順に並べ替える処理を行うように構成してもよい。
また、上記実施形態のエンジンECU1は、CANコントローラ7が二種類のメッセージボックス8,9を有し、ECU間で各種データを送受信可能に構成されているが、必ずしもこれに限定されず、少なくともCANコントローラ7が受信メッセージボックス9を有していればよく、他のECUからのデータを受信できればよい。
また、上記実施形態のエンジンECU1では、RAM17の格納領域を受信キュー26と受信バッファ27とに区分して構成しているが、これに限定されるものではなく、例えば制御指令や制御値といった区別にかかわらず、メッセージの種別に応じてRAM17における全ての格納領域を予め決めておいてもよい。つまり、RAM17の格納領域が少なくとも識別子(IDコード)に基づいて区分されていればよい。
また、上記実施形態の通信フレーム20では、ヘッダ部21におけるIDコードを識別子として用いているが、これに限定されるものではなく、例えばデータ部22の先頭部分を識別子として用いてもよい。
また、上記実施形態の車載ネットワークシステム10では、強制停止やオートクルーズOFFを表す指令データについて緊急度が高く設定されているが、これに限定されるものではない。例えば、エアバッグを制御するエアバッグECUを備え、このECUに対してエアバッグを作動させるための制御指令を表す指令データについて緊急度が高く設定されてもよい。
また、上記実施形態では、エンジンECU1を本発明の電子制御装置の一例として説明したが、本発明は、例えば対象ECU群11における他のECU2,3に適用されてもよいし、上記のエアバッグECUに適用されてもよい。さらに言えば、本発明は、車載ネットワークシステム10を構成するECUに限らず、各種のECUに適用することが可能である。
1…エンジンECU、2…ブレーキECU、3…トランスミッションECU、4…走行支援ECU、5…車両診断ECU、6…CANトランシーバ、7…CANコントローラ、8…送信メッセージボックス、9…受信メッセージボックス、10…車載ネットワークシステム、11…対象ECU群、12…指令ECU群、13…外部バス、14…内部バス、15…CPU、17…RAM、18…I/O、19…DMAコントローラ、20…通信フレーム、24…入力回路、26…受信キュー、27…受信バッファ。
Claims (7)
- 予め設定された制御対象機器を制御する電子制御装置であって、
外部機器と接続する外部バスから通信フレームに載せて送られてくるデータを受信データとし、該受信データが少なくとも格納されるメッセージボックスと、
当該電子制御装置の内部バスを介して転送されてくる前記受信データの書込み及び読出しが可能な複数の格納領域を有する内部メモリと、
前記メッセージボックスに格納された受信データを、前記内部バスを介して前記内部メモリに転送するDMA転送手段と、
前記内部メモリに書き込まれた受信データの内容であるメッセージに従って、前記制御対象機器を制御するために必要な制御量を演算するCPUと、
を備え、
前記通信フレームには、前記受信データに該メッセージの種別を識別するための識別子が付加されており、
前記メッセージボックスには、該識別子が該受信データと共に格納され、
前記DMA転送手段は、前記識別子に基づいて予め区分された前記格納領域に前記受信データを転送することを特徴とする電子制御装置。 - 前記メッセージの種別は、前記外部機器からの制御指令と、該制御指令に従って前記制御量を演算するために必要な制御値とに識別され、
前記内部メモリは、前記格納領域として、前記制御指令を表す指令データを格納するための受信キューと、前記制御値を表す制御値データを格納するための受信バッファとに区分されており、
前記DMA転送手段は、前記識別子に基づいて、前記受信データが前記指令データであると判定した場合には前記受信キューに該受信データを転送し、前記受信データが前記制御値データであると判定した場合には前記受信バッファに該受信データを転送することを特徴とする請求項1に記載の電子制御装置。 - 前記制御値データは、前記外部機器から繰り返し送られてくるデータであり、
前記識別子には、前記制御値の種別を識別するための制御IDが含まれ、
前記受信バッファには、前記制御ID毎に前記制御値データを格納するための複数の格納位置が予め区分されており、
前記DMA転送手段は、前記受信データが前記制御値データであると判定した場合には、前記識別子に含まれている制御IDに基づき、前記受信バッファにおいて該制御IDに対応する格納位置に上書きされるように該受信データを転送することを特徴とする請求項2に記載の電子制御装置。 - 前記識別子には、前記制御指令における緊急度の高低を識別するための指令IDが含まれており、
前記DMA転送手段は、前記受信データが前記指令データであると判定し、且つ、該識別子に含まれている指令IDに基づいて、該制御指令の緊急度が高いと判定した場合には、前記受信キューの先頭に該受信データを転送することを特徴とする請求項2または請求項3に記載の電子制御装置。 - 前記制御対象機器は、車両に搭載されたエンジンであり、
前記外部機器の一つは、前記車両の進行方向における障害物と該車両との相対距離および相対速度に基づいて該車両の走行支援に関する制御処理を行う走行支援ECUであり、
前記指令IDは、前記走行支援ECUから前記車両を停止させることを前記制御指令とする前記指令データについて前記緊急度が高く設定されていることを特徴とする請求項4に記載の電子制御装置。 - 前記制御対象機器は、車両に搭載されており、
前記外部機器の一つは、前記制御対象機器について異常の有無を診断するための処理を行う車両診断ECUであり、
前記指令IDは、前記制御対象機器に関する入出力データを前記車両診断ECUに送信することを前記制御指令とする前記指令データについて前記緊急度が低く設定されていることを特徴とする請求項4または請求項5に記載の電子制御装置。 - 前記制御対象機器にて検出される検出値を前記制御値とする検出値データを入力するための入力インターフェースを備え、
前記検出値データは、前記入力インターフェースから繰り返し入力されるデータであり、且つ、該検出値の種別を識別するための検出IDを有し、
前記受信バッファには、前記検出ID毎に前記検出値データを格納するための複数の格納位置が予め区分されており、
前記DMA転送手段は、前記入力インターフェースから前記検出値データが入力された場合には、前記検出IDに基づき、前記受信バッファにおいて該検出IDに対応する格納位置に上書きされるように該検出値データを転送することを特徴とする請求項2ないし請求項6のいずれか1項に記載の電子制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010120830A JP2011250110A (ja) | 2010-05-26 | 2010-05-26 | 電子制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010120830A JP2011250110A (ja) | 2010-05-26 | 2010-05-26 | 電子制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011250110A true JP2011250110A (ja) | 2011-12-08 |
Family
ID=45414826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010120830A Pending JP2011250110A (ja) | 2010-05-26 | 2010-05-26 | 電子制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011250110A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111181732A (zh) * | 2014-05-08 | 2020-05-19 | 松下电器(美国)知识产权公司 | 车载网络系统、电子控制单元及不正常检测方法 |
JP2021082936A (ja) * | 2019-11-19 | 2021-05-27 | 株式会社デンソー | 通信システム |
JP2021120872A (ja) * | 2014-04-17 | 2021-08-19 | ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh | バスインタフェースユニット、及び、バスインタフェースユニットの駆動方法 |
-
2010
- 2010-05-26 JP JP2010120830A patent/JP2011250110A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021120872A (ja) * | 2014-04-17 | 2021-08-19 | ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh | バスインタフェースユニット、及び、バスインタフェースユニットの駆動方法 |
JP7217770B2 (ja) | 2014-04-17 | 2023-02-03 | ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング | バスインタフェースユニット、及び、バスインタフェースユニットの駆動方法 |
CN111181732A (zh) * | 2014-05-08 | 2020-05-19 | 松下电器(美国)知识产权公司 | 车载网络系统、电子控制单元及不正常检测方法 |
JP2021082936A (ja) * | 2019-11-19 | 2021-05-27 | 株式会社デンソー | 通信システム |
JP7383995B2 (ja) | 2019-11-19 | 2023-11-21 | 株式会社デンソー | 通信システム及び通信装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10730518B2 (en) | On-board recording system | |
US10614639B2 (en) | In-vehicle control device and in-vehicle recording system | |
US9052713B2 (en) | Method for operating a vehicle during coasting | |
JP6044709B2 (ja) | 車両制御装置及び車両制御方法 | |
JP2009205368A (ja) | 事故通報システム、及び、車載装置 | |
JP4671242B2 (ja) | 車両制御装置 | |
CN111008121A (zh) | 车辆软件检查 | |
CN113264063B (zh) | 车辆控制装置、车辆控制方法以及计算机可读取存储介质 | |
US8577579B2 (en) | Engine control request from adaptive control with braking controller | |
JP2004291673A (ja) | センサ装置 | |
US20230286520A1 (en) | Systems and methods for detecting misbehavior behavior at an autonomous driving system | |
JP2011250110A (ja) | 電子制御装置 | |
JP2013101426A (ja) | 車載通信装置 | |
US12090996B2 (en) | Device and method for controlling autonomous driving | |
US20220297671A1 (en) | Driver assistance device, driver assistance method, and non-transitory computer-readable storage medium storing program | |
JP2019209961A (ja) | 情報処理装置、監視方法、プログラム及びゲートウェイ装置 | |
JP6519829B1 (ja) | 電子制御装置、監視方法、プログラム及びゲートウェイ装置 | |
CN113386757A (zh) | 车辆及其控制装置 | |
JP2021165070A (ja) | 車両の走行制御装置及び走行制御方法 | |
JP7276122B2 (ja) | 運転制御システム | |
US20240109546A1 (en) | Information processing device, vehicle, information processing system, information processing method, and non-temporary storage medium | |
US20230294738A1 (en) | Apparatus and Method for Controlling Autonomous Driving Vehicle | |
CN118701105A (zh) | 车辆自动驾驶中的控制方法、装置、设备以及存储介质 | |
JP5035656B2 (ja) | ドライブレコーダシステム、電子制御ユニットおよびプログラム | |
JP2024036030A (ja) | 運転支援装置、運転支援方法及びプログラム |