(57)【要約】【課題】各通信装置の処理の内容を固定せずに他の通信装置による処理を代替して行なうことができ、且つ各通信装置の記憶手段の容量を節約し、データの送受信による通信負荷を低減させることができる通信装置、通信システム、通信方法、及びコンピュータプログラムを提供する。【解決手段】プラットフォーム１０２ａの機能により、制御部１０ａは他のＥＣＵと共通して一時記憶領域１１ａへのデータ群の記憶・更新、及び通信部１３ａによるデータの送受信を行う。ただし制御部１０ａは、プラットフォーム１０２ａの機能により他のＥＣＵへデータを送信する際、コンフィグレーション情報１２３ａを参照し、一時記憶領域１１ａに記憶されているデータ群に含まれる一又は複数のデータから他のデータを生成して送信する。【選択図】図２
2009298235.tif 000002
【特許請求の範囲】
【請求項１】
他の通信装置との通信手段を備える通信装置において、
複数の異なるアプリケーションプログラムを実行する手段と、
他の通信装置と共通のプラットフォームプログラムを実行する手段と、
データを記憶する記憶手段と、
前記プラットフォームプログラムの処理により、前記記憶手段と前記アプリケーションプログラムとのデータの授受、他の通信装置とのデータの送受信、及び前記通信手段により他の通信装置から受信したデータの前記記憶手段への記憶を、他の通信装置と共通に行なう手段と、
前記プラットフォームプログラムの処理により、前記記憶手段が記憶したデータの内の一又は複数を用いて他のデータを生成する生成手段と
を備え、
前記生成手段が生成したデータを前記通信手段により他の通信装置へ送信するようにしてあること
を特徴とする通信装置。
【請求項２】
前記記憶手段が記憶するデータから他のデータを生成するためのデータ間の関係式を含むデータ定義情報を記憶する手段と、
前記プラットフォームプログラムの処理により、前記データ定義情報を参照する手段と
を備えることを特徴とする請求項１に記載の通信装置。
【請求項３】
他の通信装置のデータ定義情報を記憶する手段を備え、
前記生成手段は、前記他の通信装置のデータ定義情報に基づき、データを生成するようにしてあること
を特徴とする請求項２に記載の通信装置。
【請求項４】
相互に通信可能に接続されており、他の通信装置との通信手段を備える複数の通信装置を含む通信システムにおいて、
各通信装置は、
複数の異なるアプリケーションプログラムを実行する手段と、
他の通信装置と共通のプラットフォームプログラムを実行する手段と、
データを記憶する記憶手段と、
前記プラットフォームプログラムの処理により、前記記憶手段と前記アプリケーションプログラムとのデータの授受、他の通信装置とのデータの送受信、及び前記通信手段により他の通信装置から受信したデータの前記記憶手段への記憶を、他の通信装置と共通に行なう手段と、
前記プラットフォームプログラムの処理により、前記記憶手段が記憶したデータの内の一又は複数を用いて他のデータを生成する生成手段と
を備え、
前記生成手段が生成したデータを前記通信手段により他の通信装置へ送信するようにしてあること
を特徴とする通信システム。
【請求項５】
他の通信装置との通信手段を備える通信装置がデータ通信を行なう方法において、
複数の異なるアプリケーションプログラムの内のいずれか一又は複数を実行し、
他の通信装置と共通のプラットフォームプログラムを実行し、
前記プラットフォームプログラムの処理により、前記アプリケーションプログラムへの記憶してあるデータの授受、他の通信装置とのデータの送受信、及び前記通信手段により他の通信装置から受信したデータの記憶を他の通信装置と共通に行ない、
他の通信装置が各アプリケーションプログラムの実行に用いるデータを他のデータを用いて生成するためのデータ間の関係式を含むデータ定義情報を記憶しておき、
前記プラットフォームプログラムの処理により、前記他の通信装置のデータ定義情報に基づき、記憶したデータの内の一又は複数を用いて他のデータを生成する
ことを特徴とする通信方法。
【請求項６】
複数の異なるアプリケーションプログラムの内のいずれか一又は複数を実行する手段と、他のコンピュータとの通信手段とを備えるコンピュータに、各アプリケーションプログラムの実行に用いるデータを記憶させ、前記通信手段によるデータの送受信を制御させるコンピュータプログラムにおいて、
コンピュータに、
他のコンピュータが各アプリケーションプログラムの実行に用いるデータを生成するためのデータ間の関係式を含むデータ定義情報に基づき、自身が記憶している一又は複数のデータを用いてデータを生成するステップ、及び、
生成したデータを前記他のコンピュータへ送信するステップ
を実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の通信装置間でデータを相互に送受信し、連携して処理を行なう通信システムに関する。特に、各通信装置の処理の内容を固定せず、いずれの通信装置でも他の通信装置による処理を代替して行なうことができ、且つ各通信装置の記憶手段の容量を節約し、通信装置間のデータの送受信による通信負荷を低減させることができる通信装置、通信システム、通信方法及びコンピュータプログラムに関する。
【背景技術】
【０００２】
近年では、種々の制御を行なう制御装置に通信機能を備えさせて複数接続し、各制御装置に夫々機能を割り振って相互にデータを交換し、連携して多様な処理を行なわせるシステムが各分野で利用されている。例えば、車両に配される車載ＬＡＮ（Local Area Network）の分野では、ＥＣＵ（電子制御装置；Electronic Control Unit）は通信機能を有し、各ＥＣＵに夫々特定の処理を行なわせて相互にデータを交換することにより、システムとして多様な機能を実現させている（例えば、特許文献１参照）。
【０００３】
複数の制御装置が相互に連携して多様な処理を行なわせる場合、各制御装置の機能を特化させるよりも、各制御装置が同様の機能を実現することが可能な構成とし、設定に応じて相互に代替して処理を行なうことができるようにすることもできる。具体的には、各制御装置に特定の機能を実現させるための各制御用アプリケーションプログラムから共通機能を分離し、共通機能をプラットフォームとなるプログラムで実現するように構成する。共通機能としては例えば、制御用アプリケーションプログラムの実行に用いられるデータの記憶、更新及び送受信、並びに相互の時間同期の処理等がある。
【０００４】
これにより、通信仕様の定義が変化した場合にはプラットフォームのプログラムを改変し、全制御装置に改変後のプラットフォームのプログラムを実行させればよい。この場合、各制御用アプリケーションプログラムの内容を変更する必要がなく、プログラムの再利用性が高くなる。また、制御装置毎に送受信するデータを定義することなく、データの定義を共通化しておくことにより、送受信されるデータ量を定義情報分削減することも可能である。
【０００５】
また、各制御装置の物理的配置などの制限、又は制御装置の故障等に応じて一の制御装置の機能を他の制御装置でも実現させることができる柔軟なシステム構成が求められる場合がある。この場合、上述のように各制御アプリケーションプログラムで実現される機能とプラットフォームの機能とが分離される構成により、一の制御装置が実行していた制御アプリケーションプログラムを他の制御装置に実行させるようにすることで機能を再配置することができる。また、一の制御装置が記憶して用いていたデータを共通のプラットフォームの機能により他の制御装置にも共通して記憶させる構成とすることにより、容易に再配置が可能となる。
【特許文献１】特開２００７−３２９５７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述のように、各制御装置が有するプラットフォームの機能により一の制御装置が記憶して用いていたデータを他の制御装置にも共通して記憶させる構成によって、制御装置は同一のデータを相互に送受信し記憶するので容易に機能の再配置が可能である。しかしながら、各制御装置が完全に同一のデータを記憶している必要は必ずしもない。にも拘らず、全データを送受信して夫々同一のデータを常時記憶している構成とした場合、記憶容量を無駄に消費し、更に通信負荷が増大する可能性がある。
【０００７】
本発明は斯かる事情に鑑みてなされたものであり、複数の通信機能を有する装置が夫々相互に機能を代替することが可能であり、且つ、各装置が共通して記憶するデータを完全に同期させない構成とすることにより各装置の記憶容量を節約し、各装置間のデータ通信負荷を低減させることができる通信装置、通信システム、通信方法及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
第１発明に係る通信装置は、他の通信装置との通信手段を備える通信装置において、複数の異なるアプリケーションプログラムを実行する手段と、他の通信装置と共通のプラットフォームプログラムを実行する手段と、データを記憶する記憶手段と、前記プラットフォームプログラムの処理により、前記記憶手段と前記アプリケーションプログラムとのデータの授受、他の通信装置とのデータの送受信、及び前記通信手段により他の通信装置から受信したデータの前記記憶手段への記憶を、他の通信装置と共通に行なう手段と、前記プラットフォームプログラムの処理により、前記記憶手段が記憶したデータの内の一又は複数を用いて他のデータを生成する生成手段とを備え、前記生成手段が生成したデータを前記通信手段により他の通信装置へ送信するようにしてあることを特徴とする。
【０００９】
第２発明に係る通信装置は、前記記憶手段が記憶するデータから他のデータを生成するためのデータ間の関係式を含むデータ定義情報を記憶する手段と、前記プラットフォームプログラムの処理により、前記データ定義情報を参照する手段とを備えることを特徴とする。
【００１０】
第３発明に係る通信装置は、他の通信装置のデータ定義情報を記憶する手段を備え、前記生成手段は、前記他の通信装置のデータ定義情報に基づき、データを生成するようにしてあることを特徴とする。
【００１１】
第４発明に係る通信システムは、相互に通信可能に接続されており、他の通信装置との通信手段を備える複数の通信装置を含む通信システムにおいて、各通信装置は、複数の異なるアプリケーションプログラムを実行する手段と、他の通信装置と共通のプラットフォームプログラムを実行する手段と、データを記憶する記憶手段と、前記プラットフォームプログラムの処理により、前記記憶手段と前記アプリケーションプログラムとのデータの授受、他の通信装置とのデータの送受信、及び前記通信手段により他の通信装置から受信したデータの前記記憶手段への記憶を、他の通信装置と共通に行なう手段と、前記プラットフォームプログラムの処理により、前記記憶手段が記憶したデータの内の一又は複数を用いて他のデータを生成する生成手段とを備え、前記生成手段が生成したデータを前記通信手段により他の通信装置へ送信するようにしてあることを特徴とする。
【００１２】
第５発明に係る通信方法は、他の通信装置との通信手段を備える通信装置がデータ通信を行なう方法において、複数の異なるアプリケーションプログラムの内のいずれか一又は複数を実行し、他の通信装置と共通のプラットフォームプログラムを実行し、前記プラットフォームプログラムの処理により、前記アプリケーションプログラムへの記憶してあるデータの授受、他の通信装置とのデータの送受信、及び前記通信手段により他の通信装置から受信したデータの記憶を他の通信装置と共通に行ない、他の通信装置が各アプリケーションプログラムの実行に用いるデータを他のデータを用いて生成するためのデータ間の関係式を含むデータ定義情報を記憶しておき、前記プラットフォームプログラムの処理により、前記他の通信装置のデータ定義情報に基づき、記憶したデータの内の一又は複数を用いて他のデータを生成することを特徴とする。
【００１３】
第６発明に係るコンピュータプログラムは、複数の異なるアプリケーションプログラムの内のいずれか一又は複数を実行する手段と、他のコンピュータとの通信手段とを備えるコンピュータに、各アプリケーションプログラムの実行に用いるデータを記憶させ、前記通信手段によるデータの送受信を制御させるコンピュータプログラムにおいて、コンピュータに、他のコンピュータが各アプリケーションプログラムの実行に用いるデータを生成するためのデータ間の関係式を含むデータ定義情報に基づき、自身が記憶している一又は複数のデータを用いてデータを生成するステップ、及び、生成したデータを前記他のコンピュータへ送信するステップを実行させることを特徴とする。
【００１４】
第１発明、及び第４発明にあっては、各通信装置は夫々が実行するアプリケーションプログラムと、他の通信装置と共通のプラットフォームプログラムを実行する。各通信装置はプラットフォームプログラムの処理により、他の通信装置と共通してアプリケーションプログラムが用いるデータの記憶、授受、及び送受信を実現する。ただし、通信装置はデータを送信するに際し、自身が記憶するデータの一又は複数のデータから生成したデータを送信する。他の通信装置は、生成されたデータを受信して記憶する。アプリケーションプログラムが生成後のデータを用いる場合には、全データの送受信をしない構成としてもデータ不足とはならず、他の通信装置は一の通信装置に代替して前記生成後のデータを用いてアプリケーションプログラムを実行することが可能である。各通信装置で全データを送受信し、同一のデータを全通信装置で記憶する構成よりも、一の通信装置で一又は複数のデータから生成されたデータを他の通信装置が記憶する構成により、通信装置が記憶するデータ量及び送受信されるデータ量が削減される。
【００１５】
第２発明にあっては、通信装置は記憶するデータを用いて他のデータを生成するためのデータ間の関係式を含むデータ定義に関する情報、所謂コンフィグレーション情報を記憶する。これにより、他の通信装置に代替して異なるアプリケーションプログラムを実行する場合、プラットフォームプログラムを改変することなしにコンフィグレーション情報を置き換えることにより、適切にデータの記憶及び各アプリケーションプログラムへのデータの授受が可能となる。
【００１６】
第３発明、第５発明及び第６発明にあっては、通信装置は他の通信装置が記憶するデータのコンフィグレーション情報を記憶し、該コンフィグレーション情報に基づき他の通信装置へ生成後のデータを送信する。これにより、他の通信装置夫々にコンフィグレーション情報を置き換えるのみで各通信装置は他の通信装置へ適切に生成後のデータを送信することが可能である。
【発明の効果】
【００１７】
本発明による場合、通信システムを構成する通信装置は、アプリケーションプログラムを実行すると共に他の通信装置と共通する動作を実現するプラットフォームプログラムを実行する。プラットフォームプログラムの処理により、各通信装置は相互に自身が実行しているアプリケーションプログラム以外のアプリケーションプログラムで用いるデータをも送受信して記憶する。したがって、いずれの通信装置でも他の通信装置が実行していた処理を代替して行なうことができる。また、他の通信装置へデータを送受信する場合、自身が記憶しているデータから他のデータを生成して送信する。したがって、通信装置間で全データの送受信を行なうよりも各通信装置の記憶手段の容量を節約することができ、且つデータの送受信による通信負荷を低減させることができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
【００１９】
なお、以下に示す実施の形態では、本発明に係る通信装置を車両に搭載される種々の制御を行なうＥＣＵ（Electronic Control Unit）に適用し、各ＥＣＵ間を通信線で接続して連携した処理を行なう制御システムを例に説明する。
【００２０】
図１は、本実施の形態における制御システムの構成を示すブロック図である。制御システムは、ＥＣＵ１ａ，１ｂ，…と、通信線２と、センサ３１，３２と、アクチュエータ４１，４２とを含む。ＥＣＵ１ａ，１ｂ，…はいずれも通信線２にバス型に接続されており相互に通信が可能である。また、ＥＣＵ１ａには、センサ３１，３２、及びアクチュエータ４１が接続されており、ＥＣＵ１ｂにはアクチュエータ４２が接続されている。ＥＣＵ１ｂにも他のセンサが接続されていてもよい。
【００２１】
ＥＣＵ１ａは各構成部の動作を制御するＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）等を用いた制御部１０ａと、高速にアクセス可能なメモリを用いた一時記憶領域１１ａと、不揮発性メモリを用いた記憶部１２ａと、通信線２を介した通信を実現する通信部１３ａと、センサ３１，３２から入力される信号を受け付ける入力部１４ａと、接続されているアクチュエータ４１へ制御信号を出力する出力部１５ａとを備える。ＥＣＵ１ｂの構成はＥＣＵ１ａと同様であるので、ＥＣＵ１ａと対応する符号を付して各構成部の詳細な説明を省略する。なお本実施の形態におけるＥＣＵ１ｂは、センサとは接続されておらず、アクチュエータ４２に接続されている。
【００２２】
ＥＣＵ１ａの制御部１０ａは、図示しない車両のバッテリー、オルタネータ等の電力供給装置から電力の供給を受けて各構成部の動作を制御するようにしてある。
【００２３】
一時記憶領域１１ａにはＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）等のメモリを利用する。一時記憶領域１１ａには、制御部１０ａによる処理の過程で発生する各種情報が記憶される。また、一時記憶領域１１ａには後述するようにセンサ３１，３２から入力された信号が表す測定値等のデータ、及び他のＥＣＵ１ｂ，…から送信されて受信したデータ等のデータ群が記憶される。
【００２４】
記憶部１２ａには、フラッシュメモリ、ＥＰＲＯＭ（Erasable Programmable Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read Only Memory）等のメモリを利用する。制御部１０ａが読み出して実行するためのアプリケーションプログラム１２１ａ、プラットフォームプログラム１２２ａ、及び後述するコンフィグレーション情報１２３ａが記憶されている。また、記憶部１２ａには、センサ３１，３２、アクチュエータ４１等の外部装置を認識し、外部装置との信号の入出力を制御するための入出力ドライバソフト（図示せず）、通信部１３ａとの信号の入出力を制御し、通信部１３ａを介した通信を実現するための通信ドライバソフト（図示せず）が記憶されている。
【００２５】
一時記憶領域１１ａ及び記憶部１２ａは、制御部１０ａと共にマイクロコンピュータの一部として構成されてもよい。
【００２６】
通信部１３ａはネットワークコントローラを有し、制御部１０ａによる通信線２を介した他のＥＣＵ１ｂ，…との通信を実現する。本実施の形態における通信部１３ａは具体的に、ＣＡＮ（Control Area Network）プロトコルに準じた通信を実現する。
【００２７】
入力部１４ａは、ＥＣＵ１ａに接続されるセンサ３１，３２とのインタフェースである。入力部１４ａはセンサ３１，３２から出力される測定値等を表わす信号を取り出して制御部１０ａへ出力する。入力部１４ａはＡ／Ｄ変換機能を有していてもよい。
【００２８】
出力部１５ａは、ＥＣＵ１ａに接続されるアクチュエータ４１とのインタフェースである。出力部１５ａは、制御部１０ａから出力されるアクチュエータ４１の制御信号をアクチュエータ４１へ出力する。出力部１５ａはＤ／Ａ変換機能を有していてもよい。
【００２９】
このように構成されるＥＣＵ１ａの制御部１０ａは、センサ３１，３２から出力される信号から取得できる測定値等のデータに基づき、アクチュエータ４１の動作を制御すべく動作する。例えばＥＣＵ１ａは車室内のイルミネーション制御を行なうＥＣＵであって、センサ３１，３２が夫々運転席のドア及び助手席のドアの開閉を検知する機能を有するドアセンサであり、制御部１０ａによりセンサ３１，３２のいずれか一方でもドアが開いたことを検知した場合に室内灯を点灯させる信号を出力するなどのイルミネーション制御を行なう。
【００３０】
ＥＣＵ１ｂの内部構成も同様であるが、本実施の形態における制御システムではＥＣＵ１ｂにはセンサが接続されていない。ＥＣＵ１ｂは、他のＥＣＵ１ａ，…が取得するデータを通信線２を介して受信し、受信したデータを用いてアクチュエータ４２の動作を制御するなど、他の制御を行なうようにしてある。
【００３１】
図２は、本実施の形態におけるＥＣＵ１ａの制御部１０ａが実現する機能を概念的に説明する説明図である。ＥＣＵ１ｂの制御部１０ｂによる機能も同様であり、詳細な説明を省略する。
【００３２】
ＥＣＵ１ａの制御部１０ａは、記憶部１２ａに記憶してあるアプリケーションプログラム１２１ａを読み出して実行することにより、各種制御アプリ１０１ａ，１０１ａ，…として機能する。ＥＣＵ１ａの制御部１０ａにより実現される制御アプリ１０１ａ，１０１ａ，…としての機能は、ＥＣＵ１ｂの制御部１０ｂにより実現される制御アプリとは異なるように構成してある。記憶部１２ａ及び記憶部１２ｂに記憶してあるアプリケーションプログラム１２１ａ，１２１ａ，…、１２１ｂ，１２１ｂが同一であっても、設定によりＥＣＵ１ａとＥＣＵ１ｂとで夫々異なる一又は複数のアプリケーションプログラム１２１ａ，…、１２１ｂ，…を実行する。
【００３３】
制御部１０ａは、記憶部１２ａの通信ドライバソフトに基づき通信部１３ａを制御し、通信ドライバ１０３ａとして機能する。制御部１０ａは、通信ドライバ１０３ａの機能により通信部１３ａでデータを受信した場合にこれを検知し、プラットフォーム１０２ａへ通知する。更に制御部１０ａは、記憶部１２ａの入出力ドライバソフトに基づき入力部１４ａ及び出力部１５ａを制御し、入出力ドライバ１０４ａの機能を実現する。例えば、制御部１０ａは入出力ドライバ１０４ａの機能により、センサ３１，３２から信号を検知すると共に、制御アプリ１０１ａからの命令に応じてアクチュエータ４１への制御信号の出力を行なう。
【００３４】
ＥＣＵ１ａの記憶部１２ａとＥＣＵ１ｂの記憶部１２ｂには夫々、プラットフォームプログラム１２２ａ，１２２ｂが記憶されている。プラットフォームプログラム１２２ａ，１２２ｂは、ＥＣＵ１ａ，１ｂが夫々実行する制御アプリ１０１ａ，１０１ａ，…、１０１ｂ，…からの命令に基づくデータの読み書き、データの送受信等の共通する処理を実現するプログラムである。例えば、制御部１０ａはプラットフォーム１０２ａの機能により、通信ドライバ１０３ａからの通知を受けてデータの受信を検知した場合、一時記憶領域１１ａのデータ群への書き込みを行なう。
【００３５】
制御部１０ａと制御部１０ｂが夫々読み出して実行するアプリケーションプログラム１２１ａ、１２１ｂの内容は異なり、制御アプリ１０１ａと制御アプリ１０１ｂとでは実現される機能が異なる。これに対し、プラットフォームプログラム１２２ａ，１２２ｂの内容は共通である。ＥＣＵ１ａの制御部１０ａは、プラットフォームプログラム１２２ａを記憶部１２ａから読み出して実行し、他のＥＣＵ１ｂ，…と共通する処理をプラットフォーム１０２ａの機能により実行する。制御部１０ａはプラットフォーム１０２ａの機能により、制御アプリ１０１ａ，１０１ａ，…からの命令に基づきデータの読み書き、入出力ドライバ１０４ａを介したセンサ３１，３２及びアクチュエータ４１の制御、通信ドライバ１０３ａを介したデータの送受信を他のＥＣＵ１ｂ，…と共通して行なうようにしてある。
【００３６】
ＥＣＵ１ａはプラットフォーム１０２ａの機能により、他のＥＣＵ１ｂ，…と共通してデータの記憶・更新、及び送受信を行なう。このとき、ＥＣＵ１ａとＥＣＵ１ｂとは、夫々センサ等から取得した測定値、制御部１０ａ，１０ｂにより算出した算出値、又は制御値等のデータを相互に送受信し、記憶しておく。データはＥＣＵ１ａ，ＥＣＵ１ｂが実行中のアプリケーションプログラム１２１ａ，１２１ｂにより用いられるか否かに関わらず、送受信される。このように各ＥＣＵ１ａ，ＥＣＵ１ｂで共通にデータを記憶しておくことにより、例えばＥＣＵ１ａの制御部１０ａが読み出して実行していたアプリケーションプログラム１２１ａと同一内容のアプリケーションプログラム１２１ｂを、他のＥＣＵ１ｂの制御部１０ｂが読み出して実行した場合、ＥＣＵ１ａはＥＣＵ１ｂが用いていたデータを一時記憶領域１１ｂのデータ群に記憶しているので、ＥＣＵ１ｂが実現していた機能を容易に代替して実現することが可能である。
【００３７】
なお、ＥＣＵ１ａとＥＣＵ１ｂとでは詳細なハードウェア構成が異なる場合でも、プラットフォーム１０２ａ，１０２ｂとしての機能により、差異を吸収するようにしてある。これにより、同一の内容のアプリケーションプログラム１２１ａ，１２１ｂを実行させるに際し、アプリケーションプログラム１２１ａ，１２１ｂの内容を各ＥＣＵに合わせて改変することなしに、汎用的に適用することが可能な点でプログラムの再利用性が高められている。
【００３８】
本実施の形態におけるＥＣＵ１ａの記憶部１２ａには、一時記憶領域１１ａに記憶するデータ群の構成を定義するコンフィグレーション情報１２３ａが記憶してある。また、ＥＣＵ１ａの記憶部１２ａに記憶してあるコンフィグレーション情報１２３ａには、他のＥＣＵ１ｂの一時記憶領域１１ｂに記憶するデータ群の構成を定義する情報も含まれる。
【００３９】
図３は、本実施の形態１におけるＥＣＵ１ａの記憶部１２ａに記憶されているコンフィグレーション情報１２３ａの内容例を示す説明図である。コンフィグレーション情報１２３ａは、ＥＣＵ１ａ自身の一時記憶領域１１ａに記憶されるデータ群の構成、及び他のＥＣＵ１ｂの一時記憶領域１１ｂに記憶されるデータ群の構成を表わす。
【００４０】
図３の説明図に示す内容例では、ＥＣＵ１ａのＥＣＵ  ＩＤである「ＥＣＵ１」に対応付けてＥＣＵ１ａで記憶されるデータの定義が記憶されている。具体的には、ＥＣＵ１ａではデータ「Ａ」及びデータ「Ｂ」が一時記憶領域１１ａに記憶されることが定義されている。同様に、ＥＣＵ１ｂのＥＣＵ  ＩＤである「ＥＣＵ２」に対応付けてＥＣＵ１ｂで記憶されるデータの定義が記憶されている。ＥＣＵ１ｂでは、データ「Ａ」とデータ「Ｂ」との論理和（ＯＲ）であるデータ「Ｃ」が一時記憶領域１１ｂに記憶されることが定義されている。したがって、上述にて各ＥＣＵ１ａ，１ｂ，…がデータを送受信することにより共通してデータを記憶するとしたが詳細には、図３の説明図に示すコンフィグレーション情報１２３ａのように、ＥＣＵ１ａとＥＣＵ１ｂとでは記憶されるデータ群の構成が異なる。
【００４１】
ＥＣＵ１ａの制御部１０ａは、プラットフォーム１０２ａの機能により、例えば自身が接続されているセンサ３１，３２からデータ「Ａ」及びデータ「Ｂ」を取得した場合、コンフィグレーション情報１２３ａを参照して一時記憶領域１１ａに記憶する。そして制御部１０ａは、他のＥＣＵ１ｂ，…にも共通して記憶させるためにデータを送信する。ただし本実施の形態におけるＥＣＵ１ａの制御部１０ａは、自身が取得したデータを他のＥＣＵ１ｂ，…へ送信するに際し、コンフィグレーション情報１２３ａを参照し、コンフィグレーション情報１２３ａに基づいてデータを送信する。
【００４２】
制御部１０ａはプラットフォーム１０２ａの機能により、以下に示す場合はいずれも、図３に示した記憶部１２ａのコンフィグレーション情報１２３ａを参照し、コンフィグレーション情報１２３ａの内容に基づいた処理を行なう。例えば制御部１０ａがプラットフォーム１０２ａの機能により一時記憶領域１１ａへのデータの書き込みを行なう場合、制御アプリ１０１ａ，１０１ａからの命令に基づき一時記憶領域１１ａからデータを読み出しを行なう場合、及び、通信ドライバ１０３ａの機能により他のＥＣＵ１ｂ，…へデータを送信する場合である。
【００４３】
ＥＣＵ１ａの制御部１０ａが、プラットフォーム１０２ａの機能によりデータを取得した場合にデータを他のＥＣＵ１ｂ，…へ送信する処理をフローチャートを参照して説明する。
【００４４】
図４は、本実施の形態におけるＥＣＵ１ａの制御部１０ａによるデータの送信の処理手順の一例を示すフローチャートである。制御部１０ａは、プラットフォーム１０２ａの機能により、センサ３１，３２から出力される信号からデータを取得したか否かを判断する（ステップＳ１）。詳細には、制御部１０ａは、プラットフォーム１０２ａの機能により、入出力ドライバ１０４ａを介して周期的にセンサ３１，３２から出力される信号からデータを取得するようにしてもよいし、制御アプリ１０１ａからの命令を受け付けてセンサ３１，３２からの信号からデータを取得するようにしてもよい。また、センサ３１，３２から出力される信号を、入力ドライバ１０４ａが検知してプラットフォーム１０２ａに通知することにより、制御部１０ａがセンサ３１，３２からデータを取得するようにしてもよい。
【００４５】
制御部１０ａは、データを取得していないと判断した場合（Ｓ１：ＮＯ）、処理をステップＳ１へ戻す。制御部１０ａは、データを取得したと判断した場合（Ｓ１：ＹＥＳ）、プラットフォーム１０２ａの機能により、記憶部１２ａに記憶されているコンフィグレーション情報１２３ａを参照する（ステップＳ２）。制御部１０ａはプラットフォーム１０２ａの機能により、ステップＳ１でセンサ３１，３２から取得したデータを、ステップＳ２で参照したコンフィグレーション情報１２３ａに基づいて一時記憶領域１１ａのデータ群に記憶する（ステップＳ３）。
【００４６】
そして制御部１０ａはプラットフォーム１０２ａの機能により、ステップＳ２で参照したコンフィグレーション１２３ａに基づき、ステップＳ１でセンサ３１，３２から取得したデータを用いた複合データが他のＥＣＵ１ｂ，…におけるデータ定義に含まれているか否かを判断する（ステップＳ４）。制御部１０ａは、複合データが他のＥＣＵ１ｂ，…におけるデータ定義に含まれていると判断した場合（Ｓ４：ＹＥＳ）、プラットフォーム１０２ａの機能により、コンフィグレーション情報１２３ａにおける定義に基づいて複合データを生成する（ステップＳ５）。そして制御部１０ａはプラットフォーム１０２ａの機能により、生成したデータを通信ドライバ１０３ａを介して他のＥＣＵ１ｂ，…へ送信し（ステップＳ６）、センサ３１，３２から取得したデータに対する処理を終了する。
【００４７】
制御部１０ａは、ステップＳ４において、取得したデータを用いた複合データが他のＥＣＵ１ｂ，…におけるデータ定義に含まれていないと判断した場合（Ｓ４：ＮＯ）、そのままデータを通信ドライバ１０３ａを介して他のＥＣＵ１ｂ，…へ送信する。なお、ステップＳ１で取得したデータが他のＥＣＵ１ｂ，…に対応するデータ定義のいずれにも含まれていない場合には送信自体を省略するようにしてもよい。この場合、ステップＳ４，Ｓ５，Ｓ６が省略される。
【００４８】
制御部１０ａがプラットフォーム１０２ａの機能により、図４のフローチャートに示した処理手順を実行することによって制御部１０ａが入出力ドライバ１０４ａを介してセンサ３１，３２から取得したデータは原則として他のＥＣＵ１ｂ，…へも送信される。なお、他のＥＣＵ１ｂ，…で当該データを使用するか否かによらず送信される。このように、本実施の形態では、各ＥＣＵ１ａ，１ｂ，…夫々のプラットフォーム１０２ａ，１０２ｂ，…の機能により通信線２に接続されている全ＥＣＵ１ａ，１ｂ，…全体で自動的に共有しておく。これにより、ＥＣＵ１ｂがアプリケーションプログラムの再配置によってＥＣＵ１ａが実行していたアプリケーションプログラムを実行することとなった場合に、既に一時記憶領域１ｂに前記アプリケーションプログラムが用いるデータが記憶されているので容易に機能を代替することが可能である。
【００４９】
図５は、本実施の形態におけるＥＣＵ１ａ，１ｂでデータが送受信される過程、及び記憶される過程を模式的に示す説明図である。図５の説明図ではＥＣＵ１ａ，１ｂのハードウェア構成、各ハードウェアにより実現される機能、及び記憶されるデータを概念的にブロックにて示している。
【００５０】
ＥＣＵ１ａの制御部１０ａは一の制御アプリ１０１ａの機能により、センサ３１，３２から取得できるデータ「Ａ」及びデータ「Ｂ」を用いてアクチュエータ４１を制御する処理を行なう。この場合、制御アプリ１０１ａとして機能する制御部１０ａは、アクチュエータ４１の制御の処理の際には、データ「Ａ」及びデータ「Ｂ」の論理和の要求をプラットフォーム１０２ａへ通知する。プラットフォーム１０２ａとして機能する制御部１０ａは、制御アプリ１０１ａからの要求を受け付けて一時記憶領域１１ａからデータ「Ａ」及びデータ「Ｂ」を読み出し、論理和をとって制御アプリ１０１ａへ受け渡す。制御部１０ａは制御アプリ１０１ａとして、データ「Ａ」及びデータ「Ｂ」の論理和を用いてアクチュエータ４１の制御に用いる。例えば、データ「Ａ」は運転席のドアの開閉を示し、データ「Ｂ」は助手席のドアの開閉を示し、制御部１０ａが制御アプリ１０１ａにより室内灯の点灯／消灯を制御する機能を実現する場合は、いずれかのドアが開いている場合に室内灯を点灯させるためにデータ「Ａ」とデータ「Ｂ」との論理和を用いる。
【００５１】
ＥＣＵ１ａの制御部１０ａが制御アプリ１０ａの機能によってデータ「Ａ」及びデータ「Ｂ」を用いる間、制御部１０ａはプラットフォーム１０２ａの機能により、取得したデータ「Ａ」及びデータ「Ｂ」を他のＥＣＵ１ｂへも送信する。ただし上述のように、制御部１０ａはプラットフォーム１０２ａの機能により、記憶部１２ａのコンフィグレーション情報１２３ａ（図３参照）を参照し、ＥＣＵ１ｂが記憶するデータ「Ｃ」はデータ「Ａ」及びデータ「Ｂ」を用いた複合データであることを認識する。そして制御部１０ａは、コンフィグレーション情報１２３ａに基づいて、データ「Ａ」及びデータ「Ｂ」の論理和であるデータ「Ｃ」を生成してからＥＣＵ１ｂへ送信する。
【００５２】
これにより、ＥＣＵ１ｂの一時記憶領域１１ｂには、制御部１０ｂのプラットフォーム１０２ｂの機能により受信したデータ「Ｃ」が記憶される。後にＥＣＵ１ａが実現していた機能をＥＣＵ１ｂが代わりに実現するようにアプリケーションの再配置が行なわれた場合でも、スムーズに機能を代替することが可能である。具体的には、ＥＣＵ１ａの制御部１０ａが実行していたアプリケーションプログラム１２１ａを、ＥＣＵ１ｂの制御部１０ｂが代わりに実行し、アクチュエータ４２を制御することによって同一の機能を実現する場合でも、容易に代替が可能である。ＥＣＵ１ｂがＥＣＵ１ａによりそれまで実行されていたものと同一のアプリケーションプログラム１２１ｂを実行して制御アプリ１０１ｂとして機能する場合、データ「Ａ」及びデータ「Ｂ」の論理和であるデータ「Ｃ」を用いることは変わらない。したがって、ＥＣＵ１ａとＥＣＵ１ｂとで記憶されているデータ群の構成が異なっていても問題とならない。
【００５３】
このようにＥＣＵ１ａ，１ｂ，…が構成されることにより、データ「Ａ」及びデータ「Ｂ」が夫々通信線２を介して送受信される場合に比して、データ量が削減されるので通信線２における通信負荷の低減が期待される。更に、一時記憶領域１１ｂには二つのデータから生成された一のデータを記憶するので、記憶容量を節約することができる。特に、車両に搭載されるＥＣＵ１ａ，１ｂでは小型化、軽量化が望まれる。この場合、記憶容量を節約することによって小型化、軽量化を実現することができるという優れた効果を奏する。
【００５４】
上述の例ではデータ「Ａ」及びデータ「Ｂ」の二つのデータから一つのデータ「Ｃ」を制御部１０ａが生成する例を挙げた。しかしながら、制御部１０ａが制御アプリ１０１ａの機能により多数のデータを用いた演算結果を制御に用いる場合など、夫々のデータを他のＥＣＵ１ｂへも送信するよりも演算結果のデータをプラットフォーム１０２ａの機能により算出しておき送信する場合に送受信されるデータ量が有効に削減される。
【００５５】
また、上述のようにＥＣＵ１ａ，１ｂの制御部１０ａ，１０ｂがプラットフォームプログラム１２２ａ，１２２ｂに基づき実行するプラットフォーム１０２ａ，１０２ｂの機能は共通する。夫々一時記憶領域１１ａ，１１ｂに記憶するデータ群の構成を変えたいときには、コンフィグレーション情報１２３ａ，１２３ｂを適宜変更すればよい。プラットフォームプログラム１２２ａ，１２２ｂの改変が必要ない。例えば、データ「Ｃ」の定義がデータ「Ａ」及びデータ「Ｂ」の論理和でなく、更に他のデータ「Ｄ」も含めた論理和へ変更される場合には、以下のようにコンフィグレーション情報１２３ａを書き換え、データ「Ｃ」を生成するＥＣＵ１ａの記憶部１２ａに記憶すればよい。データ「Ｃ」の定義におけるデータ「Ａ」及びデータ「Ｂ」の関係式｛（データＡ）ＯＲ（データＢ）｝を関係式｛（データＡ）ＯＲ（データＢ）ＯＲ（データＤ）｝に書き換える。これにより、制御部１０ａからＥＣＵ１ｂへ送信されるデータ「Ｃ」は新たに定義された内容のデータとなる。ＥＣＵ１ｂ側では、各プログラム、コンフィグレーション情報１２３ｂ、及びデータ群が改変されることなしに、処理を続行することが可能である。
【００５６】
また、取得されるデータの演算結果が用いられる場合は当初から、複合データが記憶されるように入出力ドライバ１０４ａを構成してもよい。しかしながらこの場合、複合データの内容を変更する場合に入出力ドライバソフトの改変が必要となる。これに対し、本発明では上述のようにコンフィグレーション情報１２３ａの書き換えのみで、プラットフォームプログラム１２２ａ，１２２ｂ及び入出力ドライバソフトの書き換えが不要となる点、システムの処理の変更が容易となる。
【００５７】
上述のようなハードウェア構成で全ＥＣＵ１ａ，１ｂ，…が全データを送受信する構成とすると、通信線２における通信負荷が増大する。しかしながら、制御部１０ａは図５の説明図に示したように、コンフィグレーション情報１２３ａに基づきデータを生成してから送信する。これにより、送受信されるデータ量が削減される。また、コンフィグレーション情報１２３ａのデータ定義に含まれていないデータを送信しないことにより、アプリケーションプログラムの再配置に関係ないデータまで送受信されて通信線２の通信負荷が増大することを回避できるという優れた効果を奏する。
【００５８】
上述に示した実施の形態では、本発明は車両に搭載されるＥＣＵに適用される例を示した。しかしながら本発明はこれに限らず、通信手段を備えて相互にデータを送受信して連携により制御を行なうコンピュータ装置に適用することができる。
【００５９】
なお、上述のように開示された本実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００６０】
【図１】本実施の形態における制御システムの構成を示すブロック図である。
【図２】本実施の形態におけるＥＣＵの制御部が実現する機能を概念的に説明する説明図である。
【図３】本実施の形態１におけるＥＣＵの記憶部に記憶されているコンフィグレーション情報の内容例を示す説明図である。
【図４】本実施の形態におけるＥＣＵの制御部によるデータの送信の処理手順の一例を示すフローチャートである。
【図５】本実施の形態におけるＥＣＵでデータが送受信される過程、及び記憶される過程を模式的に示す説明図である。
【符号の説明】
【００６１】
１ａ，１ｂ  ＥＣＵ
１０ａ，１０ｂ  制御部
１０１ａ，１０１ｂ  制御アプリ
１０２ａ，１０２ｂ  プラットフォーム
１１ａ，１１ｂ  一時記憶領域
１２ａ，１２ｂ  記憶部
１２１ａ，１２１ｂ  アプリケーションプログラム
１２２ａ，１２２ｂ  プラットフォームプログラム
【図１】
2009298235.tif 000003
【図２】
2009298235.tif 000004
【図３】
2009298235.tif 000005
【図４】
2009298235.tif 000006
【図５】
2009298235.tif 000007