(57)【要約】【課題】車載デバイスを制御する電子制御ユニット及び車載デバイス制御用プログラム生成方法であって、接続される車載デバイスの種類及び数が異なる場合でも、改めて設計を行う必要のない電子制御ユニット及び車載デバイス制御用プログラムの生成方法を提供する。【解決手段】電子制御ユニット１は、接続された車載デバイス５を検知するデバイス検知部１１１と、接続された車載デバイス５用の制御プログラムモジュールを取得するプログラム取得部１１２と、取得された制御プログラムモジュールを主制御プログラムに組み込むプログラム生成部１１３と、取得された制御プログラムモジュールが組み込まれた主制御プログラムにしたがって接続された車載デバイス５に関する制御を行うデバイス制御部１１４とを有する。【選択図】図１
2007206827.tif 000002
【特許請求の範囲】
【請求項１】
接続された前記車載デバイスを検知するデバイス検知部と、
前記接続された車載デバイス用の制御プログラムモジュールを取得するプログラム取得部と、
前記取得された制御プログラムモジュールを主制御プログラムに組み込むプログラム生成部と、
前記取得された制御プログラムモジュールが組み込まれた前記主制御プログラムにしたがって前記接続された車載デバイスに関する制御を行うデバイス制御部と、
を有することを特徴とする電子制御ユニット。
【請求項２】
さらに、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する記憶部を有し、
前記デバイス検知部は、前記接続された車載デバイスから識別コードを取得し、
前記プログラム取得部は、前記識別コードに基づいて前記記憶部に記憶された複数の制御プログラムモジュールから前記接続された車載デバイス用の制御プログラムモジュールを取得する、請求項１に記載の電子制御ユニット。
【請求項３】
さらに、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する記憶部を有し、
前記デバイス検知部は、前記車載デバイスが前記制御ユニットの予め決まった位置に接続されているかに基づいて前記車載デバイスを検知し、
前記プログラム取得部は、前記デバイス検知部の検知情報に基づいて前記記憶部に記憶された複数の制御プログラムモジュールから前記接続された車載デバイス用の制御プログラムモジュールを取得する、請求項１に記載の電子制御ユニット。
【請求項４】
前記プログラム取得部は、前記接続された車載デバイスから、該車載デバイス用の制御プログラムモジュールを取得する、請求項１に記載の電子制御ユニット。
【請求項５】
さらに、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶するサーバとネットワークを介して通信を行う通信部を有し、
前記デバイス検知部は、前記接続された車載デバイスから識別コードを取得し、
前記プログラム取得部は、前記通信部を通じて、前記識別コードに基づいて前記サーバに記憶された複数の制御プログラムモジュールから前記接続された車載デバイス用の制御プログラムモジュールを取得する、請求項１に記載の電子制御ユニット。
【請求項６】
さらに、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶するサーバとネットワークを介して通信を行う通信部を有し、
前記デバイス検知部は、前記車載デバイスが前記制御ユニットの予め決まった位置に接続されているかに基づいて前記車載デバイスを検知し、
前記プログラム取得部は、前記通信部を通じて、前記デバイス検知部の検知情報に基づいて前記サーバに記憶された複数の制御プログラムモジュールから前記接続された車載デバイス用の制御プログラムモジュールを取得する、請求項１に記載の電子制御ユニット。
【請求項７】
接続された前記車載デバイスを検知するステップと、
前記接続された車載デバイス用の制御プログラムモジュールを取得するステップと、
前記取得された制御プログラムモジュールを主制御プログラムに組み込んで前記車載デバイス制御用プログラムを生成するステップと、
を有することを特徴とする車載デバイス制御用プログラム生成方法。
【請求項８】
さらに、前記接続された車載デバイスから識別コードを取得するステップを有し、
前記車載デバイス用の制御プログラムモジュールを取得するステップは、前記識別コードに基づいて、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する前記電子制御ユニットの記憶部又はサーバから前記接続された車載デバイス用の制御プログラムモジュールを取得する、請求項７に記載の車載デバイス制御用プログラム生成方法。
【請求項９】
さらに、前記車載デバイスが前記制御ユニットの予め決まった位置に接続されているかに基づいて前記車載デバイスを検知するステップを有し、
前記車載デバイス用の制御プログラムモジュールを取得するステップは、前記検知情報に基づいて、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する前記電子制御ユニットの記憶部又はサーバから前記接続された車載デバイス用の制御プログラムモジュールを取得する、請求項７に記載の車載デバイス制御用プログラム生成方法。
【請求項１０】
前記車載デバイス用の制御プログラムモジュールを取得するステップは、前記接続された車載デバイスから、該車載デバイス用の制御プログラムモジュールを取得する、請求項７に記載の車載デバイス制御用プログラム生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子制御ユニット及び車載デバイス制御用プログラム生成方法に関するものであり、より詳しくは、接続される車載デバイスに対応する制御プログラムモジュールを自動的に取得して実装する電子制御ユニット及びその電子制御ユニット上で動作する車載デバイス制御用プログラムの生成方法に関する。
【背景技術】
【０００２】
車両は、円滑で安全な走行を行うために、車両の状態を監視するための様々なセンサを備えている。例えば、そのようなセンサは、ラジエータの水温を計測する水温センサ、吸入空気の温度を計測する吸気温センサ、エンジンの吸排気弁の位置を検出するバルブタイミングセンサ、吸入される空気量を計測する吸入空気量センサなどを含む。これらのセンサからの信号は、例えばエンジン制御用の電子制御ユニット（以下、ＥＣＵという。）に送られる。そして、エンジン制御用ＥＣＵは、それらセンサ信号に基づいて、燃料の噴射時期、点火時期等を制御する。
【０００３】
ところで、車両の種類が異なると、車両に搭載される上記のセンサの種類、数も通常異なる。そのため、ＥＣＵの開発者は、新しい車種用のＥＣＵを開発する度に、上記のセンサを制御するプログラムモジュールを選択し、エンジン制御用ＥＣＵに組み込むプログラムを設計し直さなければならなかった。このことは、エンジン制御用ＥＣＵに限らず、他の様々な車載デバイスを制御するＥＣＵについても同様であり、そのため、ＥＣＵの開発には、非常に多大な労力と時間を要した。
【０００４】
一方、車両の製造時において、予め仕様に合わせて作製されたプログラムを有する第１ＥＣＵが、車両に組み込んだ第２ＥＣＵに対して、そのプログラムを転送して書き込むことにより、ＥＣＵを構築できるプログラム設定装置が開発されている（特許文献１参照）。特許文献１に記載されたプログラム設定装置は、複数のプログラムから必要なプログラムを選択する必要なく、またＥＣＵ構築後の検証作業も省略できるため、ＥＣＵの製造時の労力と時間を節約することができる。
【０００５】
しかし、特許文献１に記載されたプログラム設定装置においても、第１ＥＣＵに格納するプログラムそのものについては、予め仕様に基づいて設計することが必要であり、ＥＣＵ開発に要する労力及び時間を減少させるには至っていない。
【０００６】
そこで、様々な車種に対して共通に使用することが可能で、ＥＣＵ開発に要する労力及び時間を節約できるＥＣＵ、及びそのようなＥＣＵ上で動作する車載デバイス制御用プログラムの生成方法の開発が望まれている。
【０００７】
【特許文献１】特開２００３−２１６２２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上記の問題点に鑑み、本発明は、接続される車載デバイスの種類及び数が異なる場合でも、改めて設計を行う必要のない電子制御ユニット及びその電子制御ユニット上で動作する車載デバイス制御用プログラムの生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記に鑑み、本発明に係る電子制御ユニットは、接続された車載デバイスを検知するデバイス検知部と、接続された車載デバイス用の制御プログラムモジュールを取得するプログラム取得部と、取得された制御プログラムモジュールを主制御プログラムに組み込むプログラム生成部と、取得された制御プログラムモジュールが組み込まれた主制御プログラムにしたがって接続された車載デバイスに関する制御を行うデバイス制御部と、を有することを特徴とする。係る構成により、電子制御ユニットに接続される車載デバイスの種類及び数が異なる場合でも、改めて設計を行うことなく、同じ電子制御ユニットを使用することができる。なお、車載デバイスとは、車両に搭載され、電子制御ユニットによって制御される各種の装置であり、例えば、各種のセンサ、アクチュエータ、エンジン及びエンジン各部のユニット、トランスミッション、サスペンション等の車両の走行に関する各種機器、エアコンディショナー、カーナビゲーション等車内環境及び車内設備に関する各種機器を含む。また、車載デバイスに対する制御とは、車載デバイスに制御信号を出力することで直接又は間接的に制御することだけでなく、車載デバイスからの出力情報の読取りや処理を行うための読取り制御を含む。
【００１０】
また、本発明に係る電子制御ユニットは、さらに異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する記憶部を有し、デバイス検知部は、接続された車載デバイスから識別コードを取得し、プログラム取得部は、識別コードに基づいて記憶部に記憶された複数の制御プログラムモジュールから接続された車載デバイス用の制御プログラムモジュールを取得することが好ましい。
【００１１】
あるいは、本発明に係る電子制御ユニットは、さらに、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する記憶部を有し、デバイス検知部は、車載デバイスが制御ユニットの予め決まった位置に接続されているかに基づいて車載デバイスを検知し、プログラム取得部は、デバイス検知部の検知情報に基づいて記憶部に記憶された複数の制御プログラムモジュールから接続された車載デバイス用の制御プログラムモジュールを取得することが好ましい。
【００１２】
あるいは、本発明に係る電子制御ユニットにおいて、プログラム取得部は、接続された車載デバイスから、その車載デバイス用の制御プログラムモジュールを取得することが好ましい。係る構成により、主制御プログラムに組み込む車載デバイス用制御プログラムモジュールをデバイス自身に持たせているため、記憶部は使用予定のないプログラムを予め記憶しておく必要がない。そのため、記憶部の記憶容量を少なくできる。また、本発明に係る電子制御ユニットが開発された時点では使用することが想定されていないデバイス、あるいはその時点で開発されていないデバイスを使用することができる。
【００１３】
あるいは、本発明に係る電子制御ユニットは、さらに異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶するサーバとネットワークを介して通信を行う通信部を有し、デバイス検知部は、接続された車載デバイスから識別コードを取得し、プログラム取得部は、通信部を通じて、識別コードに基づいてサーバに記憶された複数の制御プログラムモジュールから接続された車載デバイス用の制御プログラムモジュールを取得することが好ましい。
【００１４】
あるいは、本発明に係る電子制御ユニットは、さらに、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶するサーバとネットワークを介して通信を行う通信部を有し、デバイス検知部は、車載デバイスが制御ユニットの予め決まった位置に接続されているかに基づいて車載デバイスを検知し、プログラム取得部は、通信部を通じて、デバイス検知部の検知情報に基づいてサーバに記憶された複数の制御プログラムモジュールから接続された車載デバイス用の制御プログラムモジュールを取得することが好ましい。
サーバから車載デバイス用の制御プログラムモジュールを取得することにより、記憶部は使用予定のないプログラムを予め記憶しておく必要がない。そのため、記憶部の記憶容量を少なくできる。また、本発明に係る電子制御ユニットが開発された時点では使用することが想定されていないデバイス、あるいはその時点で開発されていないデバイスを使用することができる。さらに、接続されたデバイス用の制御プログラムモジュールが更新されている場合でも、その最新のデバイス制御プログラムモジュールをサーバに格納しておくことにより、最新のデバイス制御プログラムモジュールを容易に利用できる。
【００１５】
また、本発明に係る車載デバイス制御用プログラムの生成方法は、接続された前記車載デバイスを検知するステップと、接続された車載デバイス用の制御プログラムモジュールを取得するステップと、取得された制御プログラムモジュールを主制御プログラムに組み込んで車載デバイス制御用プログラムを生成するステップと、を有することを特徴とする。
【００１６】
また、本発明に係る車載デバイス制御用プログラム生成方法は、さらに、接続された車載デバイスから識別コードを取得するステップを有し、車載デバイス用の制御プログラムモジュールを取得するステップは、識別コードに基づいて、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する電子制御ユニットの記憶部又はサーバから接続された車載デバイス用の制御プログラムモジュールを取得することが好ましい。
【００１７】
あるいは、本発明に係る車載デバイス制御用プログラム生成方法は、さらに、車載デバイスが制御ユニットの予め決まった位置に接続されているかに基づいて車載デバイスを検知するステップを有し、車載デバイス用の制御プログラムモジュールを取得するステップは、検知情報に基づいて、異なる複数の車載デバイスにそれぞれ対応する複数の制御プログラムモジュールを記憶する電子制御ユニットの記憶部又はサーバから接続された車載デバイス用の制御プログラムモジュールを取得することが好ましい。
【００１８】
あるいは、本発明に係る車載デバイス制御用プログラム生成方法において、車載デバイス用の制御プログラムモジュールを取得するステップは、接続された車載デバイスから、その車載デバイス用の制御プログラムモジュールを取得することが好ましい。
【発明の効果】
【００１９】
本発明によれば、接続される車載デバイスの種類及び数が異なる場合でも、改めて設計を行う必要のない電子制御ユニット及びその電子制御ユニット上で動作する車載デバイス制御用プログラムの生成方法を提供することが可能となった。
【００２０】
また本発明によれば、電子制御ユニットの開発時点では使用することが想定されていないデバイス、あるいは電子制御ユニットの開発時点で開発されていないデバイスを使用することができる電子制御ユニット及び車載デバイス制御用プログラムの生成方法を提供することが可能となった。
【００２１】
さらに本発明によれば、接続されたデバイス用の制御プログラムモジュールが更新されている場合でも、最新のデバイス制御プログラムモジュールを容易に利用できる電子制御ユニット及び車載デバイス制御用プログラムの生成方法を提供することが可能となった。
【発明を実施するための最良の形態】
【００２２】
以下、本発明に係る電子制御ユニットを、エンジン制御用ＥＣＵを例に図を参照して説明する。
本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵ１は、接続されたセンサを検知して、必要な制御プログラムモジュールをエンジン制御用ＥＣＵ１の記憶部から取得する。そして、エンジン制御用ＥＣＵ１は、その取得した制御プログラムモジュールを、主制御プログラムに組み込むことにより、接続されるセンサの種類、数に応じて適宜最適化される。そのため、エンジン制御用ＥＣＵ１は、接続されるセンサの種類、数が異なる場合でも、再設計する必要がなく、開発に要する労力及び時間を節約できる。
【００２３】
図１は、本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵ１の機能ブロック図を示す。
エンジン制御用ＥＣＵ１は、記憶部１０と、制御部１１と、インターフェース１２を有する。そして、エンジン制御用ＥＣＵ１には、少なくとも一つのセンサ５が接続される。接続されるセンサ５は、例えば、上記のようにラジエータの水温を計測する水温センサ、吸入空気の温度を計測する吸気温センサ、エンジンの吸排気弁の位置を検出するバルブタイミングセンサ、吸入される空気量を計測する吸入空気量センサ等を含む。さらにセンサ５は、上記の他、車速センサ、スロットルポジションセンサ、クランク角度センサ等を含んでもよい。
【００２４】
また、エンジン制御用ＥＣＵ１の記憶部１０は、車載デバイスであるセンサ５用の制御プログラムモジュールと、主制御プログラムを記憶する。一方、エンジン制御用ＥＣＵ１の制御部１１は、エンジン制御用ＥＣＵ１を車両に組み込む際に、接続されたセンサ５を検知して、そのセンサ５用の制御プログラムモジュールを主制御プログラムに組み込む。そして、制御部１１は、車両の走行時において、車載デバイスであるセンサ５を制御し、必要に応じてセンサ５から測定信号を取得する。即ち、センサ５に対する制御を行う。また制御部１１は、センサ５から取得した測定信号に基づいて、エンジン４の燃料の噴射時期、点火時期等を制御する。例えば、制御部１１は、吸入空気量センサから取得した吸入空気量に基づいて、燃料の基本噴射時間を求める。また制御部１１は、吸気温センサから取得した吸気温度や、水温センサから取得したラジエータの水温等に基づいて燃料の噴射時間を補正する。さらに、制御部１１は、車速センサから取得した車速、スロットルポジションセンサから取得したスロットルポジション等に基づいて燃料噴射時間を補正する。そして制御部１１は、算出した燃料噴射時間に基づいて、エンジン４のインジェクタの燃料噴射の制御を行う。なお、記憶部１０及び制御部１１は、回路基板（図示せず）上に取り付けられ、互いにデータの送受信を行うことができるように接続される。さらに、エンジン制御用ＥＣＵ１のインターフェース１２は、車載デバイスと接続するための複数のポートＰ１、Ｐ２、．．．、Ｐｎを備える。そして、インターフェース１２は、それらのポートを通じて、センサ５又はエンジン４に対して制御信号を送信したり、センサ５から測定信号を取得する。
【００２５】
以下、エンジン制御用ＥＣＵ１の各部について詳細に説明する。
記憶部１０は、例えばフラッシュメモリなどの不揮発性のメモリで構成される。記憶部１０は、エンジン制御用ＥＣＵ１に接続される可能性のあるセンサに対応するセンサ制御プログラムモジュールと、エンジン制御用ＥＣＵ１自体の動作を制御する主制御プログラムを記憶する。センサ制御プログラムモジュールは、１種類のセンサに対して１個準備される。またセンサ制御プログラムモジュールの名称は、センサの種類に対応付けるために、センサの種類に応じて一意に定められる識別コードを含む。さらに記憶部１０は、主制御プログラム及び／又は各センサ制御プログラムモジュールが使用する各種設定ファイルも記憶する。このような設定ファイルは、例えば、主制御プログラムに組み込まれるセンサ制御プログラムモジュールの名称、エンジン制御用ＥＣＵ１が起動している場合において、組み込まれたセンサ制御プログラムモジュールが展開されているメモリアドレス、センサ制御プログラムモジュールが使用するパラメータ値等を規定する。
【００２６】
これらのプログラム及び設定ファイルは、エンジン制御用ＥＣＵ１が起動すると、制御部１１に読み込まれる。そして制御部１１は、読み込まれたプログラム及び設定ファイルに基づいて、所定の動作を行う。
【００２７】
制御部１１は、組み込み型のプロセッサ、ＲＯＭ、ＲＡＭ及びプロセッサに所定の動作をさせる主制御プログラムなどで構成される。また制御部１１は、デバイス検知部１１１、プログラム取得部１１２、プログラム生成部１１３及びデバイス制御部１１４を有する。そして、制御部１１は、エンジン制御用ＥＣＵ１が車両に組み込まれる場合、接続されたセンサ５を検知して、必要なセンサ制御プログラムモジュールを自動的に取得して主制御プログラムに組み込む。
また制御部１１は、車両が走行する場合など、制御処理実行時においては、接続された各センサ５を制御し、必要に応じて各センサ５から測定信号を取得する。さらに制御部１１は、接続された各センサからの測定信号を受信し、その測定信号に基づいて、エンジン等の制御を行う。なお、接続されるセンサに対応するセンサ制御プログラムモジュールの組み込み処理と、通常の制御処理との切り替えは、例えば、エンジン制御用ＥＣＵ１が搭載される基板上に設けられたディップスイッチ（図示せず）を切り替えることにより行う。
【００２８】
デバイス検知部１１１は、センサ制御プログラムモジュールの組み込み処理において、エンジン制御用ＥＣＵ１に接続されるセンサ５を検知する。センサ５の検知を行うために、デバイス検知部１１１は、インターフェース１２のうち、センサが接続される可能性のあるポートＰ１、Ｐ２、．．．、Ｐｎに予め設定されたプロトコルに基づいて所定の信号を出力する。そしてデバイス検知部１１１は、ポートＰ１、Ｐ２、．．．、Ｐｎのうち、応答のあったポートＰｒ１、Ｐｒ２、．．．、Ｐｒｍ（ただし、ｍ≦ｎ）に何らかのセンサ５が接続されていると認識する。さらにデバイス検知部１１１は、応答のあったポートＰｒ１、Ｐｒ２、．．．、Ｐｒｍを通じて、接続されたセンサ５に識別コードを送信するよう要求する。そしてデバイス検知部１１１は、接続された各センサ５の識別コードとそのセンサ５が接続されたポート番号を関連付けて記憶部１０に記憶する。
【００２９】
なお、デバイス検知部１１１において、接続されているセンサ５を検知する方法は、上記の方法に限られない。例えば、デバイス検知部１１１は、ポート毎に接続可能なセンサ５が一意に定められている場合、各ポートの電圧に基づいて通電しているか否かを確認することにより、接続されているセンサ５の数及び種類を認識することができる。
【００３０】
プログラム取得部１１２は、センサ制御プログラムモジュールの組み込み処理において、主制御プログラムに組み込むセンサ制御プログラムモジュールを記憶部１０から取得する。具体的には、プログラム取得部１１２は、接続されているセンサ５の識別コードと一致する識別コードをファイル名称の中に含むセンサ制御プログラムモジュールを、主制御プログラムに組み込むセンサ制御プログラムモジュールとして取得する。
【００３１】
プログラム生成部１１３は、センサ制御プログラムモジュールの組み込み処理において、プログラム取得部１１２において取得されたセンサ制御プログラムモジュールを主制御プログラムに組み込む。センサ制御プログラムモジュールの主制御プログラムへの組み込みの一つの方法を以下に説明する。
プログラム生成部１１３は、主制御プログラムが記憶部１０から制御部１１に読み込まれる場合に、一緒に読み込まれるファイルを規定する設定ファイル（ブートファイル）ＢＦに、組み込まれるセンサ制御プログラムモジュールの名称を記載する。さらに、プログラム生成部１１３は、センサ５が接続されているポート番号と、そのポートに接続されているセンサ５の識別番号を関連付けて記載した設定ファイル（コンフィグファイル）ＣＦを作成する。そして、エンジン制御用ＥＣＵ１が制御処理を実行する場合、制御部１１は、上記の設定ファイルＢＦを参照して組み込まれるセンサ制御プログラムモジュールを読み込み、センサ５を制御する際にそのセンサ制御プログラムモジュールを使用できるようにする。そして、制御部１１は、そのセンサ制御プログラムモジュールにデータを渡す際に、上記の設定ファイルＣＦを参照してポート番号を取得することにより、接続されたセンサ５を制御することができる。
【００３２】
なお、センサ制御プログラムモジュールの組み込み方法は、上記の方法に限られない。例えば、プログラム生成部１１３は、起動時に読み込まれるプログラムを規定する設定ファイルＢＦを設ける代わりに、記憶部１０内に主制御プログラムに組み込むプログラムを配置する所定のメモリ領域を予め設定する。そして、プログラム生成部１１３は、プログラム取得部１１２で取得されたセンサ制御プログラムモジュールをその所定のメモリ領域にコピーする。そして、エンジン制御用ＥＣＵ１が制御処理を実行する場合、制御部１１は、その所定のメモリ領域内にあるセンサ制御プログラムモジュールにアクセスすることにより、接続されたセンサ５を制御することができる。
【００３３】
デバイス制御部１１４は、エンジン制御用ＥＣＵ１の制御処理において、センサ制御プログラムモジュールが組み込まれた主制御プログラムにしたがって、センサ５を制御し、必要に応じてセンサ５から測定信号を取得する。デバイス制御部１１４は、その測定信号にしたがって、燃料の噴射量、燃料の噴射時期等を算出する。そして、デバイス制御部１１４は、算出した燃料の噴射量、燃料の噴射時期等に基づいて、インターフェース１２を通じてエンジン４に制御信号を出力し、エアバルブの開閉動作、インジェクタの燃料噴射、点火プラグの通電等の制御を行う。ここで、デバイス制御部１１４は、接続されたセンサ５を制御するために、センサ制御プログラムモジュールが展開されたメモリのアドレスを保持する。そしてセンサ５を制御する際には、上記のように、デバイス制御部１１４は、センサ５が接続されているポート番号と、そのポートに接続されているセンサ５の識別番号を関連付けて記載した設定ファイルＣＦを参照して、センサ５が接続されているポート番号を取得する。そしてデバイス制御部１１４は、そのポート番号とともにセンサ制御プログラムモジュールが展開されているメモリ領域に、所定のフォーマットにしたがって所定のデータを渡すことにより、センサ５を制御することができる。
【００３４】
次に、本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵ１のデバイス制御プログラム組み込み処理についての動作フローを説明する。
【００３５】
図２に、エンジン制御用ＥＣＵ１のデバイス制御プログラム組み込み処理の動作フローチャートを示す。以下、図２にしたがって、エンジン制御用ＥＣＵ１の動作を詳細に説明する。なお、このフローチャートで示される動作の制御は、図１に示すエンジン制御用ＥＣＵ１に含まれる制御部１１により行われる。
【００３６】
まず、エンジン制御用ＥＣＵ１が、搭載される車両に組み込まれ、仕様にしたがって所定のセンサ５と接続される。そして、エンジン制御用ＥＣＵ１をデバイス制御プログラム組み込み処理用に設定する。また、処理の進行状況等を知らせるために、モニタ用表示デバイス（図示せず）が、エンジン制御用ＥＣＵ１のインタフェース１２を通じて接続される。その後、エンジン制御用ＥＣＵ１の電源が投入されることにより、デバイス制御プログラム組み込み処理が開始される。
【００３７】
デバイス制御プログラム組み込み処理が開始されると、まずエンジン制御用ＥＣＵ１のデバイス検知部１１１は、センサ５が接続される可能性のあるポートＰ１、Ｐ２、．．．、Ｐｎの全てに対して所定の信号を送信し、どのポートにセンサ５が接続されているかを検知する（ステップＳ１０１）。次に、エンジン制御用ＥＣＵ１のデバイス検知部１１１は、センサ５が接続されているポートＰｒ１、Ｐｒ２、．．．、Ｐｒｍに対して識別コード取得要求を行い、接続されている各センサ５から、それぞれ識別コードを取得する（ステップＳ１０２）。
【００３８】
接続されている各センサ５の識別コードを取得すると、エンジン制御用ＥＣＵ１のプログラム取得部１１２は、記憶部１０から、各識別コードに基づいて、その識別コードに対応するセンサ制御プログラムモジュールを検索する（ステップＳ１０３）。識別コードに対応するセンサ制御プログラムモジュールが有れば、エンジン制御用ＥＣＵ１のプログラム取得部１１２は、そのセンサ制御プログラムモジュールを取得する（ステップＳ１０４）。さらにエンジン制御用ＥＣＵ１は、各識別コードに対応するセンサ制御プログラムモジュールが発見される度に、インターフェース１２を通じてモニタ用表示デバイスに対してセンサ５の識別コード及び対応するセンサ制御プログラムモジュールが発見された旨の信号を送信する。そしてモニタ用表示デバイスは、識別コード及び対応するセンサ制御プログラムモジュールが発見された旨のメッセージを表示する。
【００３９】
一方、ステップＳ１０３において、エンジン制御用ＥＣＵ１のプログラム取得部１１２が、取得された識別コードの何れかについて対応するセンサ制御プログラムモジュールを記憶部１０内に見つけられない場合、エンジン制御用ＥＣＵ１は、インターフェース１２を通じて、モニタ用表示デバイスに対してセンサ制御プログラムモジュールを見つけられなかった旨の信号と、その識別コードを送信する。そして、モニタ用表示デバイスは、警告メッセージとともに上記の識別コードを表示する（ステップＳ１０７）。
【００４０】
エンジン制御用ＥＣＵ１のプログラム取得部１１２は、取得された全ての識別コードに対応するセンサ制御プログラムモジュールを取得したか否か判定する（ステップＳ１０５）。エンジン制御用ＥＣＵ１のプログラム取得部１１２は、取得された何れかの識別コードに対応するセンサ制御プログラムモジュールの取得を終了していないと判定した場合、制御をステップＳ１０３の前に戻す。
一方、エンジン制御用ＥＣＵ１のプログラム取得部１１２が、取得された全ての識別コードについて対応するセンサ制御プログラムモジュールを検出したと判定すると、エンジン制御用ＥＣＵ１のプログラム生成部１１３は、検出した全てのセンサ制御プログラムモジュールを主制御プログラムに組み込む（ステップＳ１０６）。また、エンジン制御用ＥＣＵ１のプログラム生成部１１３は、必要に応じて各種設定ファイルの書き換えを行う。
【００４１】
エンジン制御用ＥＣＵ１は、接続された全てのセンサ５について、対応するセンサ制御プログラムモジュールの組み込みが終了するか、上記のステップＳ１０７の後、処理を終了する。
【００４２】
以上、説明してきたように、本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵ１は、センサ５を接続して電源を投入するだけで、自動的に接続された各センサ５を制御できるように構成される。そのため、接続されるセンサ５の種類、数が異なる場合でも、ＥＣＵ開発者は、エンジン制御用ＥＣＵ１上で動作する制御プログラムを、仕様にあわせて設計し直す必要がない。
【００４３】
次に、本発明の電子制御ユニットに係る第２の実施形態である図３に示すエンジン制御用ＥＣＵ２について説明する。
本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２は、本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵ１と比較して、記憶部２０にセンサ制御プログラムモジュールが予め記憶されていない点で異なる。その代わり、各センサ５は、それぞれプログラム記憶部５１を有し、そのプログラム記憶部５１に、センサ制御プログラムモジュールを記憶している。そして、エンジン制御用ＥＣＵ２の制御部２１は、記憶部２０からセンサ制御プログラムモジュールを取得するプログラム取得部１１２の代わりに、センサ５からセンサ制御プログラムモジュールを取得するプログラム取得部２１２を有する。それ以外の点については、エンジン制御用ＥＣＵ２は、エンジン制御用ＥＣＵ１と同一である。
【００４４】
本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２は、組み込むセンサ制御プログラムモジュールをセンサ５自身に持たせているため、使用予定のないプログラムを記憶しておく必要がない。そのためエンジン制御用ＥＣＵ２は、エンジン制御用ＥＣＵ１と比較して、記憶部１０の記憶容量を少なくできるという利点を有する。また、エンジン制御用ＥＣＵ２は、エンジン制御用ＥＣＵ２を開発した時点では想定されていないセンサ、あるいはその時点で開発されていないセンサを使用することができるという利点を有する。
【００４５】
以下、図３を参照して、本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２について、エンジン制御用ＥＣＵ１と相違のある部分を主に説明する。なお、図３において、エンジン制御用ＥＣＵ１と同一の機能を有するものには同一の番号を付す。
【００４６】
図３は、本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２の機能ブロック図を示す。
【００４７】
エンジン制御用ＥＣＵ２は、エンジン制御用ＥＣＵ１と同様に、記憶部２０と、制御部２１と、インターフェース１２を有する。そして、記憶部２０は、予めエンジン制御用ＥＣＵ２の主制御プログラムを記憶する。また記憶部２０は、センサ５から取得したセンサ制御プログラムモジュールを記憶する。制御部２１は、センサ５と通信して測定信号を取得し、その測定信号に基づいて燃料の噴射時期、点火時期等を制御する。さらに、インターフェース１２は、外部との通信を行うための複数のポートＰ１、Ｐ２、．．．、Ｐｎを備える。以下、エンジン制御用ＥＣＵ２の各部について詳細に説明する。
【００４８】
記憶部２０は、エンジン制御用ＥＣＵ１の記憶部１０と同様に、例えばフラッシュメモリなどの不揮発性のメモリで構成される。記憶部２０は、エンジン制御用ＥＣＵ２自体の動作を制御する主制御プログラムを記憶する。また、後述するように、センサ５からセンサ制御プログラムモジュールが取得されると、そのセンサ制御プログラムモジュールを記憶する。
【００４９】
制御部２１は、エンジン制御用ＥＣＵ１の制御部１１と同様に、組み込み型のプロセッサ、ＲＯＭ、ＲＡＭ及びプロセッサに所定の動作をさせる主制御プログラムなどで構成される。また制御部２１は、デバイス検知部１１１、プログラム生成部１１３、デバイス制御部１１４を有する。さらに、制御部２１は、エンジン制御用ＥＣＵ１における制御部１１のプログラム取得部１１２の代わりに、プログラム取得部２１２を有する。そして制御部２１は、エンジン制御用ＥＣＵ２が車両に組み込まれる際には、接続されるセンサ５を検知し、必要なセンサ制御プログラムモジュールをセンサ５から取得して主制御プログラムに組み込む。その他の機能については、制御部１１と同様である。そこで以下では、プログラム取得部２１２についてのみ説明する。
【００５０】
プログラム取得部２１２は、センサ制御プログラムモジュールの組み込み処理において、主制御プログラムに組み込むセンサ制御プログラムモジュールを、センサ検知部１１１で接続されていることを検知した全てのセンサ５から取得する。具体的には、プログラム取得部２１２は、インターフェース１２を通じて、センサ５に対して予め定めた所定のプロトコルにしたがってプログラムモジュールの取得要求を行う。一方、センサ５は、上記要求を受信すると、プログラム記憶部５１からセンサ制御プログラムモジュールを読み出し、エンジン制御用ＥＣＵ２へ送信する。プログラム取得部２１２は、センサ制御プログラムモジュールを受信すると、そのプログラムモジュールを記憶部２０へ書き込む。
【００５１】
次に、本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２のデバイス制御プログラム組み込み処理についての動作フローを説明する。
【００５２】
図４に、エンジン制御用ＥＣＵ２のデバイス制御プログラム組み込み処理の動作フローチャートを示す。以下、図４にしたがって、エンジン制御用ＥＣＵ２のデバイス制御プログラム組み込み処理の動作を詳細に説明する。なお、このフローチャートで示される動作の制御は、図３に示すエンジン制御用ＥＣＵ２に含まれる制御部２１により行われる。
なお、デバイス制御プログラム組み込み処理を開始するまでの手順については、エンジン制御用ＥＣＵ１の処理と同様であるため説明を省略する。
【００５３】
デバイス制御プログラム組み込み処理が開始されると、まずエンジン制御用ＥＣＵ２のデバイス検知部１１１は、センサ５が接続される可能性のあるポートＰ１、Ｐ２、．．．、Ｐｎの全てに対して所定の信号を送信し、どのポートにセンサ５が接続されているかを検知する（ステップＳ２０１）。次に、エンジン制御用ＥＣＵ２のデバイス検知部１１１は、センサ５が接続されているポートＰｒ１、Ｐｒ２、．．．、Ｐｒｍに対して識別コード取得要求を行い、接続されている各センサ５から、それぞれ識別コードを取得する（ステップＳ２０２）。
【００５４】
接続されている各センサ５の識別コードを取得すると、エンジン制御用ＥＣＵ２のプログラム取得部２１２は、センサ５が接続されているポートＰｒ１、Ｐｒ２、．．．、Ｐｒｍに対してセンサ制御プログラムモジュールの取得要求を行い、各センサ５からセンサ制御プログラムモジュールを取得する（ステップＳ２０３）。そしてエンジン制御用ＥＣＵ２のプログラム取得部２１２は、各センサ５からセンサ制御プログラムモジュールを取得する度に、インターフェース１２を通じてモニタ用表示デバイスに対してセンサ５の識別コード及び対応するセンサ制御プログラムモジュールを取得した旨の信号を送信する。そしてモニタ用表示デバイスは、識別コード及び対応するセンサ制御プログラムモジュールを取得した旨のメッセージを表示する。
【００５５】
エンジン制御用ＥＣＵ２のプログラム取得部２１２は、センサ制御プログラムモジュールを受信すると、検知した全てのセンサ５に対応するセンサ制御プログラムモジュールを取得したか否か判定する（ステップＳ２０４）。
【００５６】
そして、エンジン制御用ＥＣＵ２のプログラム取得部２１２が、全てのセンサ制御プログラムモジュールを取得したと判定すると、エンジン制御用ＥＣＵ２のプログラム生成部１１３は、取得したセンサ制御プログラムモジュールを主制御プログラムに組み込む（ステップＳ２０５）。また、必要に応じて、各種設定ファイルの書き換えを行う。
【００５７】
一方、ステップＳ２０４において、エンジン制御用ＥＣＵ２のプログラム取得部２１２は、何れかのセンサ制御プログラムモジュールを取得していないと判断すると、ステップＳ２０３の前に制御を戻す。
【００５８】
エンジン制御用ＥＣＵ２は、接続された全てのセンサ５について、対応するセンサ制御プログラムモジュールの組み込みが終了すると、処理を終了する。
【００５９】
以上、説明してきたように、本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２も、センサ５を接続して電源を投入するだけで、自動的に各センサ５から測定信号を取得できるように構成される。また、センサ５自体が、自己の制御に使用するセンサ制御プログラムモジュールを有しているため、エンジン制御用ＥＣＵ２は、接続が予定されるセンサ５のセンサ制御プログラムモジュールを予め格納しておく必要がない。そのため、エンジン制御用ＥＣＵ２の記憶部２０の記憶容量を節約できる。また、エンジン制御用ＥＣＵ２は、エンジン制御用ＥＣＵ２よりも後に開発されたセンサ５も使用することができる。
【００６０】
次に、本発明の電子制御ユニットの第３の実施形態であるエンジン制御用ＥＣＵ３について説明する。
本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３は、本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２と比較して、センサ制御プログラムモジュールをセンサ５自身から取得する代わりに、センサ制御プログラムモジュールを通信ネットワーク７を介してサーバ６から取得する点で異なり、その余は同一である。そして、本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３は、エンジン制御用ＥＣＵ２と同様に、接続が予定されるセンサ５のセンサ制御プログラムモジュールを予め格納しておく必要がないため、エンジン制御用ＥＣＵ３の記憶部３０の記憶容量を節約できるという利点を有する。さらに、エンジン制御用ＥＣＵ３は、外部に用意されたサーバ６からセンサ制御プログラムモジュールを取得するため、センサ制御プログラムモジュールが更新された場合であっても、最新のセンサ制御プログラムモジュールを取得して使用することができるという利点を有する。
【００６１】
以下、図５を参照して、本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３について、エンジン制御用ＥＣＵ１及びエンジン制御用ＥＣＵ２と相違のある部分を中心に説明する。なお、図５において、エンジン制御用ＥＣＵ１及びエンジン制御用ＥＣＵ２と同一の機能を有するものには同一の番号を付す。
図５は、本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３の機能ブロック図を示す。
【００６２】
エンジン制御用ＥＣＵ３は、エンジン制御用ＥＣＵ１及びエンジン制御用ＥＣＵ２と同様に、記憶部３０と、制御部３１と、インターフェース１２を有する。さらにエンジン制御用ＥＣＵ３は、サーバ６と通信ネットワーク７を介して通信を行うための通信部３３を有する。そして、記憶部３０は、予めエンジン制御用ＥＣＵ３の主制御プログラムを記憶する。また記憶部３０は、エンジン制御用ＥＣＵ３が車両に組み込まれる際に、サーバ６から取得したセンサ制御プログラムモジュールを記憶する。
制御部３１は、エンジン制御用ＥＣＵ３が車両に組み込まれる際に、接続されるセンサ５を検知する。そして制御部３１は、検知されたセンサ５用のセンサ制御プログラムモジュールをサーバ６から取得し、主制御プログラムに組み込む。一方制御処理の実行時において、制御部３１は、センサ５を制御し、必要に応じてセンサ５から測定信号を取得する。さらに制御部３１は、その測定信号に基づいて燃料の噴射時期、点火時期等を制御する。また、インターフェース１２は、外部との通信を行うための複数のポートＰ１、Ｐ２、．．．、Ｐｎを備える。
一方、サーバ６は、エンジン制御用ＥＣＵ３に接続することが想定される各種のセンサ用のセンサ制御プログラムモジュールを格納する。そしてセンサ制御プログラムモジュールは、１種類のセンサに対して１個準備される。またサーバ６に格納されるセンサ制御プログラムモジュールの名称は、センサの種類に対応付けるために、センサの種類に応じて一意に定められる識別コードを含む。さらにサーバ６は、主制御プログラム及び／又は各センサ制御プログラムモジュールが使用する各種設定ファイルも記憶する。そして、これらセンサ制御プログラムモジュール及び各種設定ファイルは、適宜更新することができる。
以下、エンジン制御用ＥＣＵ３の各部について詳細に説明する。
【００６３】
記憶部３０は、エンジン制御用ＥＣＵ２の記憶部２０と同様に、例えばフラッシュメモリなどの不揮発性のメモリで構成される。記憶部３０は、エンジン制御用ＥＣＵ３自体の動作を制御する主制御プログラムを記憶する。また、後述するように、サーバ６からセンサ制御プログラムモジュールが取得されると、そのセンサ制御プログラムモジュールを記憶する。
【００６４】
制御部３１は、エンジン制御用ＥＣＵ１の制御部１１及びエンジン制御用ＥＣＵ２の制御部２１と同様に、組み込み型のプロセッサ、ＲＯＭ、ＲＡＭ及びプロセッサに所定の動作をさせる主制御プログラムなどで構成される。また制御部３１は、デバイス検知部１１１、プログラム生成部１１３、デバイス制御部１１４を有する。さらに、制御部３１は、エンジン制御用ＥＣＵ１における制御部１１のプログラム取得部１１２の代わりに、プログラム取得部３１２を有する。そして、制御部３１は、エンジン制御用ＥＣＵ３が車両に組み込まれる際には、接続されるセンサ５を検知する。その後、エンジン制御用ＥＣＵ３のプログラム取得部３１２は、通信部３３及び通信ネットワーク７を通じて、必要なセンサ制御プログラムモジュールをサーバ６から取得して主制御プログラムに組み込む。その他の機能については、制御部１１と同様である。そこで以下では、プログラム取得部３１２及び通信部３３についてのみ説明する。
【００６５】
通信部３３は、イーサネット（登録商標）などの通信プロトコルにしたがって、通信ネットワークを介して他のホストと通信を行うためのネットワークドライバ及び通信用デバイスを有する。そして、通信部３３は、所定の通信プロトコルにしたがってサーバ６との間で、データの送受信を行う。
【００６６】
プログラム取得部３１２は、センサ制御プログラムモジュールの組み込み処理において、センサ検知部１１１で接続されていることを検知したセンサ５に対応するセンサ制御プログラムモジュールを、通信部３３及び通信ネットワーク７を通じてサーバ６から取得する。センサ制御プログラムモジュールを取得するために、プログラム取得部３１２は、デバイス検知部１１１で取得したセンサ５の識別コードを通信部３３及び通信ネットワーク７を通じてサーバ６に送信する。サーバ６は、識別コードを受信すると、受信した識別コードをファイル名の一部に有するセンサ制御プログラムモジュールを検索する。そしてサーバ６は、受信した識別コードをファイル名の一部に有するセンサ制御プログラムモジュールを見つけると、エンジン制御用ＥＣＵ３へ送信する。またサーバ６は、そのセンサ制御プログラムモジュールに関連する設定ファイルもエンジン制御用ＥＣＵ３へ送信する。そしてプログラム取得部３１２は、エンジン制御用ＥＣＵ３がサーバ６からセンサ制御プログラムモジュール及び関連する設定ファイルを受信すると、それらを記憶部３０へ記憶する。
【００６７】
次に、本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３のデバイス制御プログラム組み込み処理についての動作フローを説明する。
【００６８】
図６に、エンジン制御用ＥＣＵ３のデバイス制御プログラム組み込み処理の動作フローチャートを示す。以下、図６にしたがって、エンジン制御用ＥＣＵ３のデバイス制御プログラム組み込み処理の動作を詳細に説明する。なお、このフローチャートで示される動作の制御は、図５に示すエンジン制御用ＥＣＵ３に含まれる制御部３１により行われる。
なお、デバイス制御プログラム組み込み処理を開始するまでの手順については、エンジン制御用ＥＣＵ１の処理と同様であるため説明を省略する。
【００６９】
デバイス制御プログラム組み込み処理が開始されると、まずエンジン制御用ＥＣＵ３のデバイス検知部１１１は、センサ５が接続される可能性のあるポートＰ１、Ｐ２、．．．、Ｐｎの全てに対して所定の信号を送信し、どのポートにセンサ５が接続されているかを検知する（ステップＳ３０１）。次に、エンジン制御用ＥＣＵ３のデバイス検知部１１１は、センサ５が接続されているポートＰｒ１、Ｐｒ２、．．．、Ｐｒｍに対して識別コード取得要求を行い、接続されている各センサ５から、それぞれ識別コードを取得する（ステップＳ３０２）。
【００７０】
接続されている各センサ５の識別コードを取得すると、エンジン制御用ＥＣＵ３のプログラム取得部３１２は、サーバ６に対して、通信部３３及び通信ネットワーク７を通じて検知した各センサ５の識別コードを送信し、センサ制御プログラムモジュールの取得要求を行う（ステップＳ３０３）。サーバ６は、受信した識別コードに基づいて、対応するセンサ制御プログラムモジュールを検索する（ステップＳ３０４）。
【００７１】
サーバ６は、対応するセンサ制御プログラムモジュールを検出すると、エンジン制御用ＥＣＵ３に対して、通信部３３及び通信ネットワーク７を通じてそのセンサ制御プログラムモジュール及び関連する設定ファイルを送信する。エンジン制御用ＥＣＵ３のプログラム取得部３１２は、センサ制御プログラムモジュール及び関連する設定ファイルを受信すると、そのセンサ制御プログラムモジュール及び関連する設定ファイルを記憶部３０に記憶する（ステップＳ３０５）。さらにエンジン制御用ＥＣＵ３は、サーバ６からセンサ制御プログラムモジュールを取得する度に、インターフェース１２を通じてモニタ用表示デバイスに対してセンサ５の識別コード及び対応するセンサ制御プログラムモジュールを取得した旨の信号を送信する。そしてモニタ用表示デバイスは、識別コード及び対応するセンサ制御プログラムモジュールを取得した旨のメッセージを表示する。
【００７２】
一方、ステップＳ３０４において、サーバ６は、受信した識別コードの何れかについて、対応するセンサ制御プログラムモジュールを見つけられない場合、エンジン制御用ＥＣＵ３に対して、対応するセンサ制御プログラムモジュールの検出に失敗した識別コード及び検出に失敗した旨の信号を返信する（ステップＳ３０８）。そしてエンジン制御用ＥＣＵ３は、検出に失敗した旨の信号を受信すると、インターフェース１２を通じて、モニタ用表示デバイスに対し、対応するセンサ制御プログラムモジュールを見つけられなかった旨の信号と、その識別コードを送信する。そして、モニタ用表示デバイスは、警告メッセージとともに上記の識別コードを表示する。
【００７３】
エンジン制御用ＥＣＵ３のプログラム取得部３１２は、ステップＳ３０５の後、サーバ６に送信した識別コードと、受信したセンサ制御プログラムモジュールの数を比較して、検知した全てのセンサ５に対応するセンサ制御プログラムモジュールを受信したか否か判定する（ステップＳ３０６）。エンジン制御用ＥＣＵ３のプログラム取得部３１２は、何れかの識別コードに対応するセンサ制御プログラムモジュールの受信が終了していないと判定すると、制御をステップＳ３０４の前に戻す。
【００７４】
一方、エンジン制御用ＥＣＵ３のプログラム取得部３１２は、全てのセンサ制御プログラムモジュールを受信したと判定すると、取得した全てのセンサ制御プログラムモジュールを主制御プログラムに組み込む（ステップＳ３０７）。また、必要に応じて、各種設定ファイルの書き換えを行う。
【００７５】
エンジン制御用ＥＣＵ３は、接続された全てのセンサ５について、対応するセンサ制御プログラムモジュールの組み込みが終了するか、上記のステップＳ３０８の後、処理を終了する。
【００７６】
以上、説明してきたように、本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３も、センサ５を接続して電源を投入するだけで、自動的に各センサ５から測定信号を取得できるように構成される。また、エンジン制御用ＥＣＵ３は、サーバ６から必要なセンサ制御プログラムモジュールを取得するため、エンジン制御用ＥＣＵ３は、接続が予定されるセンサ５のセンサ制御プログラムモジュールを予め備えておく必要がない。そのため、エンジン制御用ＥＣＵ３の記憶部３０の記憶容量を節約できる。また、エンジン制御用ＥＣＵ３は、センサ５のセンサ制御プログラムモジュールが更新されている場合でも、その最新のセンサ制御プログラムモジュールをサーバ６に格納しておくことにより、最新のセンサ制御プログラムモジュールを容易に利用できる。さらに、エンジン制御用ＥＣＵ３は、エンジン制御用ＥＣＵ３よりも後に開発されたセンサ５も使用することができる。
【００７７】
なお、本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵ３は、通信部３３を通信専用の回路基板上に設け、エンジン制御用ＥＣＵ３とはインターフェース１２を通じてデータの通信を行うようにしてもよい。このように構成することにより、エンジン制御用ＥＣＵ３自体から通信部３３を除けるため、エンジン制御用ＥＣＵ３の製造コストを下げることができる。この場合、デバイス制御プログラム組み込み処理を実行する場合のみ、エンジン制御用ＥＣＵ３は、通信部３３を備えた通信専用の回路基板を接続し、その処理が終了すると通信専用回路基板を取り外すことができる。そして、その通信専用回路基板は、別のエンジン制御用ＥＣＵ３に対するデバイス制御プログラム組み込み処理に利用することができる。
【００７８】
なお、本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵ２及び第３の実施形態であるエンジン制御用ＥＣＵ３についても、デバイス検知部１１１において、接続されているセンサ５を検知する方法は、上記の方法に限られない。第１の実施形態であるエンジン制御用ＥＣＵ１の場合と同様に、デバイス検知部１１１は、ポート毎に接続可能なセンサ５が一意に定められている場合、各ポートの電圧に基づいて通電しているか否かを確認することにより、接続されているセンサ５の数及び種類を認識することができる。この場合、デバイス制御プログラム組み込み処理の動作において、識別コードを取得するステップは必要とされない。
【００７９】
なお、上記の実施形態において、本発明に係る電子制御ユニットを、エンジン制御用ＥＣＵとして記述してきたが、本発明は、上記の実施形態に限られるものではない。本発明に係る電子制御ユニットは、例えば、トランスミッション制御用ＥＣＵ、サスペンション制御用ＥＣＵ、エアコン制御用ＥＣＵ、カーナビゲーション制御用ＥＣＵ等、各種のＥＣＵに適用できる。
また上記の実施形態において、本発明に係る電子制御ユニットは、エンジン制御用ＥＣＵに接続されるセンサを検知し、そのセンサ用の制御プログラムモジュールを取得して主制御プログラムに組み込むこととしたが、主制御プログラムに組み込むプログラムモジュールはこれに限られない。本発明に係る電子制御ユニットの主制御プログラムに組み込むプログラムモジュールは、本発明に係る電子制御ユニットが制御する車載デバイスであれば、アクチュエータ、エンジン及びエンジン各部のユニット、トランスミッション、サスペンション等の車両の走行に関する各種機器、エアコンディショナー、カーナビゲーション等車内環境及び車内設備に関する各種機器の制御プログラムモジュールであってもよい。
【００８０】
以上のように、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【図面の簡単な説明】
【００８１】
【図１】本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵの機能ブロック図である。
【図２】本発明の電子制御ユニットに係る第１の実施形態であるエンジン制御用ＥＣＵのデバイス制御プログラム組み込み処理の動作フローチャートである。
【図３】本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵの機能ブロック図である。
【図４】本発明の電子制御ユニットに係る第２の実施形態であるエンジン制御用ＥＣＵのデバイス制御プログラム組み込み処理の動作フローチャートである。
【図５】本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵの機能ブロック図である。
【図６】本発明の電子制御ユニットに係る第３の実施形態であるエンジン制御用ＥＣＵのデバイス制御プログラム組み込み処理の動作フローチャートである。
【符号の説明】
【００８２】
１、２、３    エンジン制御用ＥＣＵ（電子制御ユニット）
１０、２０、３０    記憶部
１１、２１、３１    制御部
１１１    デバイス検知部
１１２、２１２、３１２    プログラム取得部
１１３    プログラム生成部
１１４    デバイス制御部
１２    インターフェース
３３    通信部
４    エンジン
５    センサ（デバイス）
５１    プログラム記憶部
６    サーバ
７    通信ネットワーク
【図１】
2007206827.tif 000003
【図２】
2007206827.tif 000004
【図３】
2007206827.tif 000005
【図４】
2007206827.tif 000006
【図５】
2007206827.tif 000007
【図６】
2007206827.tif 000008