(57)【要約】  車載機器の制御を行うプログラムを階層化した場合に、下位階層のプログラムの変更に伴う上位階層のプログラムの変更量を低減し、開発期間及び開発コスト等の増大を抑制することができる機器制御プログラム及び機器制御装置を提供する。  アプリケーション層（上位階層）のプログラム１１０は、プラットホーム層（下位階層）から与えられた入力情報を受け付けて入力情報抽象化部１１３にて抽象化する。判定部１１４、優先条件判定部１１５及び情報処理部１１６は、抽象化された情報を基に判定及び情報処理等を行う。情報処理部１１６の処理結果は出力情報変換部１１７にてプラットホーム層に適した情報形式に変換されて出力される。アプリケーション層及びプラットホーム層で授受される情報の形式などが変更された場合には、アプリケーション層のプログラム１１０の入力情報抽象化部１１３及び出力情報変換部１１７を変更すればよい。
2009093732.tif 000002
【特許請求の範囲】
【請求項１】
機器の動作を制御する機器制御装置において、
前記機器との間で情報の授受を行う第１処理部、及び該第１処理部との間で情報の授受を行う第２処理部を備え、
前記第２処理部は、
前記第１処理部から受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成する抽象化部と、
生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行う制御情報処理部と
を有すること
を特徴とする機器制御装置。
【請求項２】
前記第２処理部は、
前記制御情報処理部の情報処理により生成された抽象化情報を前記第１処理部に適した情報形式に変換する変換部を更に有し、
該変換部が変換した情報を前記第１処理部へ与えるようにしてあること
を特徴とする請求項１に記載の機器制御装置。
【請求項３】
一又は複数の前記第１処理部から受け付けた複数の前記第２処理部が用いる情報を記憶すると共に、該情報に対する情報処理を行う共有処理部を備えること
を特徴とする請求項１又は請求項２に記載の機器制御装置。
【請求項４】
前記第２処理部は、
異なる機器間で共通する機能の情報に係る情報処理を行う基本処理部と、
対応する機器に固有の機能の情報に係る情報処理を行う固有処理部と
を有すること
を特徴とする請求項１乃至請求項３のいずれか１つに記載の機器制御装置。
【請求項５】
前記第２処理部が前記第１処理部との間で授受できる情報が制限してあること
を特徴とする請求項１乃至請求項４のいずれか１つに記載の機器制御装置。
【請求項６】
機器の動作を制御する機器制御装置において、
前記機器との間で情報の授受を行う他の装置から受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成する抽象化部と、
生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行う制御情報処理部と
を備えること
を特徴とする機器制御装置。
【請求項７】
前記制御情報処理部の情報処理により生成された抽象化情報を前記他の装置に適した情報形式に変換する変換部を更に備え、
該変換部が変換した情報を前記他の装置へ与えるようにしてあること
を特徴とする請求項６に記載の機器制御装置。
【請求項８】
コンピュータに、機器の動作を制御させる機器制御プログラムにおいて、
前記機器との間で情報の授受を行う第１プログラム、及び該第１プログラムとの間で情報の授受を行う第２プログラムを有し、
前記第２プログラムは、
コンピュータに、
前記第１プログラムから受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成させるステップと、
生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行わせるステップと
を含むこと
を特徴とする機器制御プログラム。
【請求項９】
前記第２プログラムは、
コンピュータに、
前記情報処理により生成された抽象化情報を前記第１プログラムに適した情報形式に変換させるステップと、
変換した情報を前記第１プログラムへ与えさせるステップと
を更に含むこと
を特徴とする請求項８に記載の機器制御プログラム。
【請求項１０】
一又は複数の前記第１プログラムを含む第１プログラム群、及び複数の前記第２プログラムを含む第２プログラム群を有し、
該第２プログラム群は、前記第１プログラム群の第１プログラムから受け付けた複数の前記第２プログラムが用いる情報を記憶すると共に、該情報に対する情報処理を行う共有プログラムを含むこと
を特徴とする請求項８又は請求項９に記載の機器制御プログラム。
【請求項１１】
前記第２プログラムは、
異なる機器間で共通する機能の情報に係る情報処理を行う基本プログラム部分と、
対応する機器に固有の機能の情報に係る情報処理を行う固有プログラム部分と
を含むこと
を特徴とする請求項８乃至請求項１０のいずれか１つに記載の機器制御プログラム。
【請求項１２】
前記第２プログラムが前記第１プログラムとの間で授受できる情報が制限してあること
を特徴とする請求項８乃至請求項１１のいずれか１つに記載の機器制御プログラム。
【請求項１３】
コンピュータに、機器の動作を制御させる機器制御プログラムにおいて、
コンピュータに、
前記機器との間で情報の授受を行う他のプログラムから受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成させるステップと、
生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行わせるステップと
を含むこと
を特徴とする機器制御プログラム。
【請求項１４】
コンピュータに、
前記情報処理により生成された抽象化情報を前記他のプログラムに適した情報形式に変換させるステップと、
変換した情報を前記他のプログラムへ与えさせるステップと
を更に含むこと
を特徴とする請求項１３に記載の機器制御プログラム。
【請求項１５】
一又は複数の機器との間で情報の送受信を行う通信部、該通信部が受信した情報を基に前記機器の制御に係る情報処理を行う情報処理部、及び前記情報処理に係る情報を記憶する記憶部を有する機器制御装置に、前記機器の動作を制御させる機器制御プログラムにおいて、
前記機器制御装置に、前記通信部により前記機器との間で情報の授受を行わせる第１プログラム、及び前記記憶部を介して前記第１プログラムとの間で情報の授受を行う第２プログラムを有し、
前記第２プログラムは、
前記機器制御装置に、
前記記憶部を介して前記第１プログラムから受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を前記情報処理部により生成させるステップと、
生成した前記抽象化情報を用いて前記情報処理部により前記機器の制御に係る情報処理を行わせるステップと
を含むこと
を特徴とする機器制御プログラム。
【請求項１６】
前記第２プログラムは、
前記機器制御装置に、
前記情報処理により生成された抽象化情報を前記情報処理部により前記第１プログラムに適した情報形式に変換させるステップと、
変換した情報を前記情報処理部により前記記憶部へ記憶させることによって、前記情報を前記記憶部を介して前記第１プログラムへ与えさせるステップと
を更に含むこと
を特徴とする請求項１５に記載の機器制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車輌に搭載された機器などの種々の機器の制御を行うことができ、開発及び変更等を容易に行うことができる機器制御装置及び機器制御プログラムに関する。
【背景技術】
【０００２】
近年、車輌の多数の機能が電子化され、車輌には多数の電子機器（以下、車載機器という）が搭載されている。また、車輌の機能は高度化する傾向にあり、車載機器は高度化すると共に、車載機器の搭載数は増大する傾向にある。このため、多数の車載機器を制御するための制御プログラム及び制御装置等は巨大化及び複雑化する虞があり、制御プログラム及び制御装置等の開発が困難化し、開発期間及び開発コスト等の増大を招来するという問題があった。【０００３】
特許文献１においては、エンジン制御プログラムにオブジェクト指向設計されたプログラムを適用することでハードウェアの変更に伴うソフトウェアの開発工数を低減することができる車輌用制御装置が提案されている。この車両用制御装置では、制御プログラムがアプリケーション・レイヤ（ＡＰレイヤ）及びプラットホーム・レイヤ（ＰＦレイヤ）に階層化されている。ＡＰレイヤは、ハードウェアに依存しないオブジェクト指向設計されたプログラムで記述されている。またＰＦレイヤは、ハードウェアに依存するオブジェクト指向設計されたプログラムで記述され、更に上位、中位及び下位の３つのレイヤに階層化されており、上位レイヤはセンサ・アクチュエータレイヤで構成され、中位レイヤはデバイス・ドライバレイヤで構成され、下位レイヤはバーチャルＭＰＵ（Micro Processing Unit）レイヤで構成されている。【０００４】
この特許文献１に記載の車輌用制御装置は、ＡＰレイヤとハードウェアとの間にＰＦレイヤを設けることによって、ＰＦレイヤにてハードウェアからの物理的な情報を論理的な情報に変換することができ、情報を抽象化することができるため、ハードウェアが変更された場合であってもＰＦレイヤを変更するのみでよく、ＡＰレイヤを変更する必要はない。よって、プログラムの開発を容易化することができ、開発期間及び開発コスト等の増大という上述の問題を改善することができる。【０００５】
【特許文献１】特開２０００−９７１０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の車輌用制御装置は、ＰＦレイヤの変更によって、ＰＦレイヤからＡＰレイヤへ入力される情報が変更された場合、即ちＰＦレイヤ及びＡＰレイヤの間の入出力条件が変更された場合などにおいては、ＡＰレイヤの変更を行う必要が生じる。ＰＦレイヤはハードウェアに係る情報を抽象化できるため、ハードウェアの変更が小さいものであればＰＦレイヤを変更するのみで対応することは可能である。しかし、車輌のハードウェア構成の変更が大きい場合（例えば車輌の設計変更に伴って新たなハードウェアが追加された場合、又は異なる車種の車輌にプログラムを流用する場合等）にはＰＦレイヤ及びＡＰレイヤの間の入出力条件が変更される虞があり、これによりＡＰレイヤの変更を行わなければならないため、プログラムの開発期間及び開発コスト等の増大を招来する。【０００７】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、機器の制御を行うためのプログラム（処理部）を階層化してハードウェア及び下位階層のプログラム（ＰＦレイヤ）の間の入出力を抽象化するのみでなく、下位階層のプログラム及び上位階層のプログラム（ＡＰレイヤ）の間の入出力を抽象化して、下位階層のプログラムの変更に伴う上位階層のプログラムの変更量を低減し、開発期間及び開発コスト等の増大を抑制することができる機器制御装置及び機器制御プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明に係る機器制御装置は、機器の動作を制御する機器制御装置において、前記機器との間で情報の授受を行う第１処理部、及び該第１処理部との間で情報の授受を行う第２処理部を備え、前記第２処理部は、前記第１処理部から受け付けた一又は複数の情報を基に、前記情報を抽象化して抽象化情報を生成する抽象化部と、生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行う制御情報処理部とを有することを特徴とする。【０００９】
また、本発明に係る機器制御装置は、前記第２処理部が、前記制御情報処理部の情報処理により生成された抽象化情報を前記第１処理部に適した情報形式に変換する変換部を更に有し、該変換部が変換した情報を前記第１処理部へ与えるようにしてあることを特徴とする。【００１０】
また、本発明に係る機器制御装置は、一又は複数の前記第１処理部から受け付けた複数の前記第２処理部が用いる情報を記憶すると共に、該情報に対する情報処理を行う共有処理部を備えることを特徴とする。【００１１】
また、本発明に係る機器制御装置は、前記第２処理部が、異なる機器間で共通する機能の情報に係る情報処理を行う基本処理部と、対応する機器に固有の機能の情報に係る情報処理を行う固有処理部とを有することを特徴とする。【００１２】
また、本発明に係る機器制御装置は、前記第２処理部が前記第１処理部との間で授受できる情報が制限してあることを特徴とする。【００１３】
また、本発明に係る機器制御装置は、機器の動作を制御する機器制御装置において、前記機器との間で情報の授受を行う他の装置から受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成する抽象化部と、生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行う制御情報処理部とを備えることを特徴とする。【００１４】
また、本発明に係る機器制御装置は、前記制御情報処理部の情報処理により生成された抽象化情報を前記他の装置に適した情報形式に変換する変換部を更に備え、該変換部が変換した情報を前記他の装置へ与えるようにしてあることを特徴とする。【００１５】
また、本発明に係る機器制御プログラムは、コンピュータに、機器の動作を制御させる機器制御プログラムにおいて、前記機器との間で情報の授受を行う第１プログラム、及び該第１プログラムとの間で情報の授受を行う第２プログラムを有し、前記第２プログラムは、コンピュータに、前記第１プログラムから受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成させるステップと、生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行わせるステップとを含むことを特徴とする。【００１６】
また、本発明に係る機器制御プログラムは、前記第２プログラムが、コンピュータに、前記情報処理により生成された抽象化情報を前記第１プログラムに適した情報形式に変換させるステップと、変換した情報を前記第１プログラムへ与えさせるステップとを更に含むことを特徴とする。【００１７】
また、本発明に係る機器制御プログラムは、一又は複数の前記第１プログラムを含む第１プログラム群、及び複数の前記第２プログラムを含む第２プログラム群を有し、該第２プログラム群は、前記第１プログラム群の第１プログラムから受け付けて複数の前記第２プログラムが用いる情報を記憶すると共に、該情報に対する情報処理を行う共有プログラムを含むことを特徴とする。【００１８】
また、本発明に係る機器制御プログラムは、前記第２プログラムが、異なる機器間で共通する機能の情報に係る情報処理を行う基本プログラム部分と、対応する機器に固有の機能の情報に係る情報処理を行う固有プログラム部分とを含むことを特徴とする。【００１９】
また、本発明に係る機器制御プログラムは、前記第２プログラムが前記第１プログラムとの間で授受できる情報が制限してあることを特徴とする。【００２０】
また、本発明に係る機器制御プログラムは、コンピュータに、機器の動作を制御させる機器制御プログラムにおいて、コンピュータに、前記機器との間で情報の授受を行う他のプログラムから受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を生成させるステップと、生成した前記抽象化情報を用いて前記機器の制御に係る情報処理を行わせるステップとを含むことを特徴とする。【００２１】
また、本発明に係る機器制御プログラムは、コンピュータに、前記情報処理により生成された抽象化情報を前記他のプログラムに適した情報形式に変換させるステップと、変換した情報を前記他のプログラムへ与えさせるステップとを更に含むことを特徴とする。【００２２】
また、本発明に係る機器制御プログラムは、一又は複数の機器との間で情報の送受信を行う通信部、該通信部が受信した情報を基に前記機器の制御に係る情報処理を行う情報処理部、及び前記情報処理に係る情報を記憶する記憶部を有する機器制御装置に、前記機器の動作を制御させる機器制御プログラムにおいて、前記機器制御装置に、前記通信部により前記機器との間で情報の授受を行わせる第１プログラム、及び前記記憶部を介して前記第１プログラムとの間で情報の授受を行う第２プログラムを有し、前記第２プログラムは、前記機器制御装置に、前記記憶部を介して前記第１プログラムから受け付けた一又は複数の情報を基に、前記情報を抽象化した抽象化情報を前記情報処理部により生成させるステップと、生成した前記抽象化情報を用いて前記情報処理部により前記機器の制御に係る情報処理を行わせるステップとを含むことを特徴とする。【００２３】
また、本発明に係る機器制御プログラムは、前記第２プログラムが、前記機器制御装置に、前記情報処理により生成された抽象化情報を前記情報処理部により前記第１プログラムに適した情報形式に変換させるステップと、変換した情報を前記情報処理部により前記記憶部へ記憶させることによって、前記情報を前記記憶部を介して前記第１プログラムへ与えさせるステップとを更に含むことを特徴とする。【００２４】
本発明においては、機器との間での情報の授受を第１処理部が行い、機器から与えられた情報を第１処理部が第２処理部へ与えると共に、第２処理部から与えられた情報に基づいて第１処理部が機器の制御を行う。これにより、機器、第１処理部及び第２処理部の３つの階層に階層化することができ、機器の軽微な変更については第１処理部の変更のみで対応することが可能となる。更に、第２処理部は、第１処理部から受け付けた一又は複数の情報を基に、抽象化部が情報を抽象化して抽象化情報を生成し、この抽象化情報を基に制御情報処理部が機器の制御に係る情報処理を行う。これにより、第１処理部から第２処理部へ与えられる情報の形式などが変更された場合であっても、第２処理部の抽象化部を変更するのみで対応することが可能となる。【００２５】
また、本発明においては、第２処理部は、制御情報処理部が抽象化情報を基に情報処理を行ってその結果として抽象化情報を生成するが、第２処理部から第１処理部へ情報処理の結果を与える場合には、情報処理結果の抽象化情報を第１処理部に適した情報形式に変換部が変換し（即ち、抽象化の逆の処理を行って）、変換後の情報を第１処理部へ与える。これにより、第２処理部から第１処理部へ与えられる情報の形式などが変更された場合であっても、第２処理部の抽象化情報を第１処理部に適した情報形式へ変換する部分を変更するのみで対応することが可能となる。【００２６】
また、本発明においては、一又は複数の第１処理部と、複数の第２処理部とを機器制御装置が備える。一又は複数の第１処理部は複数の第２処理部へそれぞれ情報を与えるが、第１処理部からの一の情報を複数の第２処理部が用いる場合がある。そこで、複数の第２処理部が共有する共有処理部を設け、共有処理部が共有する情報の記憶及び情報処理等を行う構成とする。これにより、複数の第２処理部が同じ情報を記憶する必要がなく、また、複数の第２処理部が同じ情報に対する同じ情報処理を行う必要がないため、第２処理部に係る記憶容量の低減及び処理速度の向上等を実現することができる。【００２７】
また、本発明においては、車輌に搭載された多数の機器など複数の機器を制御する場合に、各機器にそれぞれ対応して複数の第２処理部を設け、各第２処理部が各機器に係る情報処理を行う。例えば、車輌のワイパー、ライト及びドアロック等の車載機器を制御するためには、ワイパー制御用の第２処理部、ライト制御用の第２処理部及びドアロック制御用の第２処理部をそれぞれ設ける。また例えば、車輌にフロントワイパー及びリアワイパー等の複数のワイパーを搭載している場合には、フロントワイパー用の第２処理部及びリアワイパー用の第２処理部等をそれぞれ設けてもよい。
車輌の車種が異なる場合であっても例えばワイパーは搭載されているが、その機能などが異なる場合がある。そこで、第２処理部を基本処理部及び固有処理部を組み合わせて構成し、異なる車種のワイパーなどの異なる機器間で機能が共通する部分に係る情報処理を基本処理部が行い、機能が異なる部分に係る情報処理を固有処理部が行うものとする。また、例えばワイパーであってもフロントワイパー及びリアワイパーでは、共通する機能と異なる機能とをそれぞれ有している。そこで、ワイパーとして共通する機能に係る情報処理を基本処理部が行い、フロントワイパー及びリアワイパーで異なる機能に係る情報処理を固有処理部が行う構成とすることもできる。これらにより、機器の機能が異なる複数の車種に機器制御装置を用いる場合に、固有処理部のみを変更すればよい。また、フロントワイパーの基本処理部を流用してリアワイパーの第２処理部を容易に作成することができる。よって、第２処理部の開発期間及び開発コストの削減、並びに資源の有効な再利用を実現できる。【００２８】
また、本発明においては、第１処理部から第２処理部へ与える情報、及び第２処理部から第１処理部へ与える情報を制限する。これにより、第２処理部から第１処理部への不正な情報アクセスが発生することを防止でき、機器制御装置の信頼性、機器の動作の信頼性を高めることができる。【００２９】
本発明においては、機器との間での情報の授受を第１プログラムが行い、第１プログラムが機器から与えられた情報を所定の情報形式に変更することによって抽象化して第２プログラムへ与えると共に、第２プログラムから与えられた情報に基づいて第１プログラムが機器の制御を行う。これにより、機器、第１プログラム及び第２プログラムの３つの階層に階層化することができ、機器の軽微な変更については第１プログラムの変更のみで対応することが可能となる。更に、第２プログラムは、第１プログラムから受け付けた一又は複数の情報を基に、情報を抽象化して抽象化情報を生成し、この抽象化情報を基に機器の制御に係る情報処理を行う。これにより、第１プログラムから第２プログラムへ与えられる情報の形式などが変更された場合であっても、第２プログラムの抽象化情報を生成する部分を変更するのみで対応することが可能となる。【００３０】
また、本発明においては、第２プログラムは、抽象化情報を基に情報処理を行ってその結果として抽象化情報を生成するが、第２プログラムから第１プログラムへ情報処理の結果を与える場合には、情報処理結果の抽象化情報を第１プログラムに適した情報形式に変換し（即ち、抽象化の逆の処理を行って）、変換後の情報を第１プログラムへ与える。これにより、第２プログラムから第１プログラムへ与えられる情報の形式などが変更された場合であっても、第２プログラムの抽象化情報を第１プログラムに適した情報形式へ変換する部分を変更するのみで対応することが可能となる。【００３１】
また、本発明においては、一又は複数の第１プログラムにより第１プログラム群を構成し、複数の第２プログラムにより第２プログラム群を構成する。第１プログラム群の各第１プログラムは第２プログラム群の第２プログラムへそれぞれ情報を与えるが、第１プログラムからの一の情報を複数の第２プログラムが用いる場合がある。そこで、複数の第２プログラムが共有する共有プログラムを第２プログラム群に設け、共有プログラムが共有する情報の記憶及び情報処理等を行う構成とする。これにより、複数の第２プログラムが同じ情報を記憶する必要がなく、また、複数の第２プログラムが同じ情報に対する同じ情報処理を行う必要がないため、第２プログラム群に係る記憶容量の低減及び処理速度の向上等を実現することができる。【００３２】
また、本発明においては、車輌に搭載された多数の機器など複数の機器を制御する場合に、各機器にそれぞれ対応して複数の第２プログラムを設け、各第２プログラムが各機器に係る情報処理を行う。例えば、車輌のワイパー、ライト及びドアロック等の車載機器を制御するためには、ワイパー制御用の第２プログラム、ライト制御用の第２プログラム及びドアロック制御用の第２プログラムをそれぞれ設ける。また例えば、車輌にフロントワイパー及びリアワイパー等の複数のワイパーを搭載している場合には、フロントワイパー用の第２プログラム及びリアワイパー用の第２プログラム等をそれぞれ設けてもよい。
車輌の車種が異なる場合であっても例えばワイパーは搭載されているが、その機能などが異なる場合がある。そこで、第２プログラムを基本プログラム部分及び固有プログラム部分を組み合わせて構成し、異なる車種のワイパーなどの異なる機器間で機能が共通する部分に係る情報処理を基本プログラム部分が行い、機能が異なる部分に係る情報処理を固有プログラム部分が行うものとする。また、例えばワイパーであってもフロントワイパー及びリアワイパーでは、共通する機能と異なる機能とをそれぞれ有している。そこで、ワイパーとして共通する機能に係る情報処理を基本プログラム部分が行い、フロントワイパー及びリアワイパーで異なる機能に係る情報処理を固有プログラム部分が行う構成とすることもできる。これらにより、機器の機能が異なる複数の車種に機器制御プログラムを用いる場合に、固有プログラム部分のみを変更すればよい。また、フロントワイパーの基本プログラム部分を流用してリアワイパーの第２プログラムを容易に作成することができる。よって、第２プログラムの開発期間及び開発コストの削減、並びにプログラム資源の有効な再利用を実現できる。【００３３】
また、本発明においては、第１プログラムから第２プログラムへ与える情報、及び第２プログラムから第１プログラムへ与える情報を制限する。これにより、第２プログラムから第１プログラムへの不正な情報アクセスが発生することを防止でき、機器制御プログラムの信頼性、機器の動作の信頼性を高めることができる。
【発明の効果】
【００３４】
本発明による場合は、機器との間で情報の授受を行う第１処理部、及びこの第１処理部との間で情報の授受を行う第２処理部により機器制御装置を階層化すると共に、第２処理部が第１処理部から受け付けた情報を抽象化部にて抽象化して抽象化情報を生成し、抽象化情報を基に制御情報処理部にて情報処理を行う構成とすることにより、第１処理部及び第２処理部の間で授受される情報の形式などが変更された場合であっても、第２処理部の抽象化部のみを変更すればよいため、機器制御装置の開発期間及び開発コスト等の増大を抑制することができる。また、第２処理部の抽象化部以外、即ち主となる情報処理を行う制御情報処理部は第１処理部とは独立して開発することができるため、第２処理部の開発の容易化及び高速化を実現することができる。【００３５】
また、本発明による場合は、一又は複数の第１処理部から与えられ、複数の第２処理部が共有する情報の記憶及びこの情報に対する情報処理等を行う共有処理部を備える構成とすることにより、複数の第２処理部が同じ情報を記憶する必要がなく、複数の第２処理部が同じ情報処理を行う必要がないため、機器制御装置のメモリ資源を節約することができ、処理速度を向上することができる。【００３６】
また、本発明による場合は、機器に対応する第２処理部を、異なる機器間で共通する機能に係る基本処理部及び異なる機能に係る固有処理部で構成することにより、第２処理部の資源を有効に再利用することができるため、機器制御装置の開発期間の短縮及び開発コストの削減をより確実に実現することができる。【００３７】
本発明による場合は、機器との間で情報の授受を行う第１プログラム、及びこの第１プログラムとの間で情報の授受を行う第２プログラムにより機器制御プログラムを階層化すると共に、第２プログラムが第１プログラムから受け付けた情報を抽象化して抽象化情報を生成し、抽象化情報を基に情報処理を行う構成とすることにより、第１プログラム及び第２プログラムの間で授受される情報の形式などが変更された場合であっても、第２プログラムの抽象化情報を生成する部分のみを変更すればよいため、プログラムの開発期間及び開発コスト等の増大を抑制することができる。また、第２プログラムの抽象化情報を生成する部分以外、即ち主となる情報処理を行う部分は第１プログラムとは独立して開発することができるため、第２プログラムの開発の容易化及び高速化を実現することができる。【００３８】
また、本発明による場合は、一又は複数の第１プログラムにより第１プログラム群を構成し、複数の第２プログラム並びに複数の第２プログラムが共有する情報の記憶及びこの情報に対する情報処理等を行う共有プログラムにより第２プログラム群を構成することにより、複数の第２プログラムが同じ情報を記憶する必要がなく、複数の第２プログラムが同じ情報処理を行う必要がないため、機器制御プログラムを実行する装置のメモリ資源を節約することができ、処理速度を向上することができる。【００３９】
また、本発明による場合は、機器に対応する第２プログラムを、異なる機器間で共通する機能に係る基本プログラム部分及び異なる機能に係る固有プログラム部分で構成することにより、第２プログラムのプログラム資源を有効に再利用することができるため、機器制御プログラムの開発期間の短縮及び開発コストの削減をより確実に実現することができる。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施の形態に係る車載機器制御装置の構成を示すブロック図である。
【図２】本発明の実施の形態に係る車載機器制御プログラムの構造を説明するための模式図である。
【図３】アプリケーション層のプログラムの構成を説明するための模式図である。
【図４】アプリケーション層のプログラムが行う処理の手順を示すフローチャートである。
【図５】アプリケーション層のプログラムが行う処理の例を示す模式図である。
【図６】アプリケーション層のプログラムが行う処理の例を示す模式図である。
【図７】本発明の実施の形態２に係る車載機器制御プログラムの構成を説明するための模式図である。
【図８】アプリケーション層の各プログラムが記憶する情報の一例を示す模式図である。
【図９】本発明の実施の形態３に係る車載機器制御プログラムの構成を説明するための模式図である。
【図１０】本発明の実施の形態３の変形例に係る車載機器制御プログラムの構成を説明するための模式図である。
【図１１】本発明の実施の形態４に係る車載機器制御プログラムの構成を説明するための模式図である。
【符号の説明】
【００４１】
１  ＥＣＵ（機器制御装置）
５  車載機器（機器）
５ａ  ワイパー（機器）
５ｂ  ライト（機器）
５ｃ  ドアロック（機器）
１１  入出力Ｉ／Ｆ部（通信部）
１２  ＣＰＵ（情報処理部、第１処理部、第２処理部、抽象化部、制御情報処理部、共有処理部、基本処理部、固有処理部）
１３  ＲＡＭ（記憶部）
１４  ＲＯＭ
１００  車載機器制御プログラム
１０１  アプリケーション層（第２プログラム群）
１０５  プラットホーム層（第１プログラム群）
１１０  アプリケーション層のプログラム（第２プログラム、第２処理部）
１１０ａ  ワイパー制御プログラム（第２プログラム、第２処理部）
１１０ｂ  ライト制御プログラム（第２プログラム、第２処理部）
１１０ｃ  ドアロック制御プログラム（第２プログラム、第２処理部）
１１１  入力条件判定部
１１２  入力情報受付部
１１３  入力情報抽象化部（抽象化部）
１１４  判定部
１１５  優先条件判定部
１１６  情報処理部
１１７  出力情報変換部（変換部）
１５０ａ  ワイパー制御プログラム（第１プログラム、第１処理部）
１５０ｂ  ライト制御プログラム（第１プログラム、第１処理部）
１５０ｃ  ドアロック制御プログラム（第１プログラム、第１処理部）
２００  車載機器制御プログラム
２０１  アプリケーション層（第２プログラム群）
２１１  全体共有プログラム（共有プログラム、共有処理部）
２１２ａ  ワイパー系共有プログラム（共有プログラム、共有処理部）
２１２ｂ  ライト系共有プログラム（共有プログラム、共有処理部）
３００  車載機器制御プログラム
３０１  アプリケーション層（第２プログラム群）
３１０  ワイパー制御プログラム（第２プログラム、第２処理部）
３１１  ワイパー基本プログラム（基本プログラム部分、基本処理部）
３１２ａ  Ａ車用ワイパー追加プログラム（固有プログラム部分、固有処理部）
３１２ｂ  Ｂ車用ワイパー追加プログラム（固有プログラム部分、固有処理部）
３１３  オートワイパー機能追加プログラム（固有プログラム部分、固有処理部）
３１４  リアワイパー用追加プログラム（固有プログラム部分、固有処理部）
３５０  車載機器制御プログラム
４００  車載機器制御プログラム
４０７  情報テーブル
【発明を実施するための形態】
【００４２】
（実施の形態１）
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。なお、本実施の形態においては、車輌に搭載される種々の機器の制御を行う車載機器制御装置を例に説明を行う。図１は、本発明の実施の形態に係る車載機器制御装置の構成を示すブロック図である。図において１は、図示しない車輌に搭載された複数の車載機器５の制御を行うＥＣＵ（Electronic Control Unit）であり、本発明に係る機器制御装置に相当するものである。ＥＣＵ１は、複数の車載機器５に通信ケーブルなどを介して接続される入出力Ｉ／Ｆ（インタフェース）部１１を備えており、入出力Ｉ／Ｆ部１１が各車載機器５との間で情報の授受を行うようにしてある。
【００４３】
また、ＥＣＵ１は各種の演算処理及びＥＣＵ１内の各部の制御処理等を行うＣＰＵ（Central Processing Unit）１２を備えている。入出力Ｉ／Ｆ部１１は、各車載機器５からの情報をＣＰＵ１２へ与えると共に、ＣＰＵ１２からの情報を各車載機器５へ与える。ＣＰＵ１２は、ＲＯＭ（Read Only Memory）１４に予め記憶された車載機器制御プログラム１００を読み出して実行することにより演算処理及び制御処理等を行うことができ、処理過程にて発生した一時的なデータをＲＡＭ（Random Access Memory）１３に記憶しながら処理を進める。
【００４４】
ＥＣＵ１は、ＣＰＵ１２にて車載機器制御プログラム１００を実行することによって、各車載機器５から与えられた情報に係る情報処理を行い、処理結果を各車載機器５へ与えることにより各車載機器５の制御を行うことができる。また、ＥＣＵ１は、通信部１５を備えており、他のＥＣＵ３との間で通信部１５が情報の授受を行うことによって、他のＥＣＵ３に接続された他の車載機器からの情報を得ることができ、他の車載機器の制御を行うことができる。
【００４５】
図２は、本発明の実施の形態に係る車載機器制御プログラム１００の構造を説明するための模式図である。例えば車載機器制御プログラム１００が制御するハードウェアとして、車輌にはワイパー５ａ、ライト５ｂ及びドアロック５ｃ等の車載機器が搭載されている。車載機器制御プログラム１００は、プラットホーム層（第１プログラム群）１０５及びアプリケーション層（第２プログラム群）１０１の２つの階層で構成されており、各階層には複数のプログラムが含まれている。
【００４６】
プラットホーム層１０５は、例えばワイパー制御プログラム１５０ａ、ライト制御プログラム１５０ｂ及びドアロック制御プログラム１５０ｃ等の複数のプログラム（第１プログラム）を含んでいる。ＥＣＵ１のＣＰＵ１２は、プラットホーム層１０５の第１プログラムを実行することによって、第１処理部として動作する。プラットホーム層１０５のプログラムは（プラットホーム層１０５のプログラムを実行するＣＰＵ１２は）、車載機器５との間で情報の授受を行うことができ、アプリケーション層１０１との間で情報の授受を行うことができる。即ち、プラットホーム層１０５のプログラムは、対応する車載機器５から与えられた情報をアプリケーション層１０１に適した情報形式に変換して（又は抽象化して）アプリケーション層１０１へ与える処理、又は、アプリケーション層１０１から与えられた制御に係る情報に応じて、対応する車載機器５へ制御情報を与えてその動作を制御する処理を行う。
【００４７】
例えば、プラットホーム層１０５のワイパー制御プログラム１５０ａは、アプリケーション層１０１から与えられたワイパー５ａをオン／オフさせる制御情報又は高速動作／間欠動作させる制御情報等を基に、ワイパー５ａを動作させるモータ又はアクチュエータ等へ所定のタイミングで駆動信号を制御情報として与えることにより、ワイパー５ａを動作させることができる。また例えば、車載機器５として雨滴センサ（図示は省略する）が車輌に搭載されている場合、プラットホーム層１０５のプログラム（雨滴センサを制御するためのプログラム）は、雨滴センサの検知結果として与えられる電圧値等を所定形式の情報に変換してアプリケーション層１０１のプログラムへ与える。
【００４８】
アプリケーション層１０１は、例えばワイパー制御プログラム１１０ａ、ライト制御プログラム１１０ｂ及びドアロック制御プログラム１１０ｃ等の複数のプログラム（第２プログラム）を含んでいる。ＥＣＵ１のＣＰＵ１２は、アプリケーション層１０１の第２プログラムを実行することによって、第２処理部として動作する。アプリケーション層１０１のプログラムは（アプリケーション層１０１のプログラムを実行するＣＰＵ１２は）、プラットホーム層１０５との間で情報の授受を行うことができる。アプリケーション層１０１のプログラムは、プラットホーム層１０５から与えられた情報を基に車載機器５の制御に係る情報処理を行って、処理結果をプラットホーム層１０５へ与える処理を行う。
【００４９】
即ち、車載機器５からの情報はプラットホーム層１０５にて適切な情報形式に変換されてアプリケーション層１０１へ与えられ、与えられた情報を基にアプリケーション層１０１が車載機器５の制御に係る情報処理を行い、この処理結果に応じてプラットホーム層１０５が車載機器５を制御する構成である。
【００５０】
図３は、アプリケーション層１０１のプログラム１１０の構成を説明するための模式図であり、図２に示したアプリケーション層１０１のワイパー制御プログラム１１０ａ、ライト制御プログラム１１０ｂ及びドアロック制御プログラム１１０ｃ等の構成を示したものである。アプリケーション層１０１のプログラム１１０は、プラットホーム層１０５から与えられた複数の情報（入力情報）を基に、対応する車載機器５を制御するための条件判定を行う入力条件判定部１１１を含んでいる。更に、入力条件判定部１１１は、入力情報受付部１１２、入力情報抽象化部１１３及び判定部１１４を含んでいる。プラットホーム層１０５からの入力情報は、入力情報受付部１１２にて受け付けられる。入力情報受付部１１２は、必要に応じて受け付けた入力情報を記憶すると共に、受け付けた入力情報を入力情報抽象化部１１３へ与える。
【００５１】
入力情報抽象化部１１３は、与えられた複数の入力情報が所定の条件を満たすか否かを判定し、判定の結果に基づいて入力情報を抽象化する。例えば、車輌のイグニッションスイッチの状態に関する情報及びエンジンの状態に関する情報等の入力情報が所定条件を満たすか否かを判定し、判定結果に基づいて入力情報抽象化部１１３は車載機器５へ電力供給するための電源について、「電源がオンである」又は「電源がオフである」等のように情報を抽象化することができる。また例えば、車輌に雨滴を検知するセンサが搭載されているか否かに関する情報又は雨滴センサが正常に動作しているか否かに関する情報、及び雨滴センサの検知結果等の入力情報が所定条件を満たすか否かを判定し、入力情報抽象化部１１３は「雨が降っている」又は「雨が降っていない」等のように情報を抽象化することができる。入力情報抽象化部１１３は、抽象化した情報を複数の判定部１１４へ与える。なお、図３においては、抽象化された情報の授受を白抜きの太矢印で示し、抽象化されていない情報を黒細矢印で示してある。
【００５２】
判定部１１４は、入力条件判定部１１１に複数設けられており、抽象化された情報が所定の条件を満たすか否かをそれぞれ判定し、条件を満たすと判定した場合にその旨を優先条件判定部１１５へ通知する。各判定部１１４が判定する条件はそれぞれ異なる条件である。例えば、判定部１１４は、「電源がオンである」という情報、「大雨が降っている」という情報、及び「オートワイパー機能が動作可能である」という情報が満たされているか否かを判定して、「ワイパー高速動作」の条件が成立した旨を優先条件判定部１１５へ通知することができる。
【００５３】
優先条件判定部１１５は、複数の判定部１１４から条件が成立した旨を通知された場合に、最も優先度の高い条件がいずれであるかを判定し、判定結果として得られた最優先の条件を情報処理部１１６へ与えるようにしてある。例えば、優先条件判定部１１５は、「ワイパー高速動作」の条件と、「ワイパー間欠動作」の条件とが満たされている場合には、「ワイパー高速動作」の条件が優先度が高いと判定し、この条件を情報処理部１１６へ与えるようにしてある。なお、各条件の優先度は予め定められてテーブルなどとして優先条件判定部１１５が記憶しておく構成とすることができる。
【００５４】
情報処理部１１６は、優先条件判定部１１５から与えられた条件に従って、車載機器５を制御するための情報処理を行い、情報処理の結果として生成された制御情報を出力情報変換部１１７へ与える。例えば、「ワイパー高速動作」の条件が与えられた場合、情報処理部１１６は、ワイパー５ａを高速で動作させるために、「ワイパーを高速動作する」という制御情報を生成する処理を行い、生成した制御情報を出力情報変換部１１７へ与えることができる。
【００５５】
出力情報変換部１１７は、情報処理部１１６から与えられた制御情報をプラットホーム層１０５に適した情報形式に変換して、プラットホーム層１０５へ与える。即ち、出力情報変換部１１７は、入力情報抽象化部１１３にて抽象化された情報を元の形式に戻す処理を行う。例えば、制御情報として「ワイパーを高速動作する」が与えられた場合、出力情報変換部１１７は、この制御情報をワイパー５ａをオンさせる情報及びワイパー５ａの動作速度を定めた数値情報等に変換してプラットホーム層１０５へ与えることができる。
【００５６】
図４は、アプリケーション層１０１のプログラム１１０が行う処理の手順を示すフローチャートであり、車載機器制御装置としてＥＣＵ１のＣＰＵ１２が車載機器制御プログラム１００を読み出して実行する処理である。アプリケーション層１０１のプログラム１１０は、まず、プラットホーム層１０５からの入力情報を入力情報受付部１１２にて受け付ける（ステップＳ１）。次いで、アプリケーション層１０１のプログラム１１０は、受け付けた入力情報が所定の条件を満たすか否かを入力情報抽象化部１１３にて判定し（ステップＳ２）、判定結果に基づいて入力情報を抽象化する（ステップＳ３）。
【００５７】
入力情報を抽象化した後、アプリケーション層１０１のプログラム１１０は、抽象化された情報が所定の動作条件を満たすか否かを判定部１１４にて判定し（ステップＳ４）、更に、満たされた複数の条件から最も優先度の高い条件を優先条件判定部１１５にて判定する（ステップＳ５）。次いで、アプリケーション層１０１のプログラム１１０は、最も優先度の高い条件に従って車載機器５を制御するための情報処理を情報処理部１１６にて行い（ステップＳ６）、車載機器５を制御するための制御情報を生成する。その後、アプリケーション層１０１のプログラム１１０は、情報処理部１１６により出力情報として生成された制御情報をプラットホーム層１０５に適した形式に変換し（ステップＳ７）、変換した制御情報をプラットホーム層１０５へ与えて処理を終了する。
【００５８】
図５及び図６は、アプリケーション層１０１のプログラム１１０が行う処理の例を示す模式図である。なお本例は、降雨を検知してワイパー５ａを自動的に動作させるオートワイパー機能が車輌に搭載されている場合に、このオートワイパー機能に係る処理をアプリケーション層１０１のプログラム１１０が行う例である。プラットホーム層１０５では、雨滴センサの出力電圧などを雨滴量などの数値に変換する処理、駆動信号などを出力してワイパー５ａを動作させる処理、ワイパー５ａの動作の可否を設定するスイッチなどの操作状態を検知する処理、車輌のイグニッションスイッチの操作状態を検知する処理、及び車輌のエンジンの動作状態を検知する処理等が行われる。
【００５９】
また本例においては、プラットホーム層１０５は、”IG1”、”IG2”、”AUTO_WIPER”、”SW_AUTOWIP”、”RAIN_SENSOR”及び”S_RAIN”の６つの情報をアプリケーション層１０１へ与えるものとする。”IG1”は、イグニッションスイッチが操作状態を示す情報であり、”ON”又は”OFF”が設定される。”IG2”は、車輌のエンジンの動作状態を示す情報であり、”ON”又は”OFF”が設定される。”AUTO_WIPER”は、車輌にオートワイパー機能が搭載されているか否かを示す情報であり、”ON”又は”OFF”が設定される。”SW_AUTOWIP”は、オートワイパー機能のオン／オフを設定するスイッチの操作状態を示す情報であり、”ON”又は”OFF”が設定される。”RAIN_SENSOR”は、雨滴センサが正常動作しているか否かを示す情報であり、正常動作している場合に”ON”が設定され、故障など異常動作している場合に”OFF”が設定される。また、”S_RAIN”は、雨滴センサの検出値を示す情報であり、０〜２００の数値が設定される。
【００６０】
アプリケーション層１０１のプログラム１１０は、入力情報受付部１１２にて上記の６つの情報を受け付ける。ここでは一例として、”IG1=ON”、”IG2=ON”、”AUTO_WIPER=ON”、”SW_AUTOWIP=ON”、”RAIN_SENSOR=ON”及び”S_RAIN=100”として入力情報受付部１１２が情報を受け付けたものとする（図５参照）。入力情報抽象化部１１３は、”IG1=ON”又は”IG2=ON”が成立するか否か（第１条件）、”AUTO_WIPER=ON”且つ”SW_AUTOWIP=ON”が成立するか否か（第２条件）、及び”RAIN_SENSOR=ON”且つ”S_RAIN>80”が成立するか否か（第３条件）の３つの条件判定を行い、判定結果に基づいて６つの入力情報を抽象化して、３つの抽象化情報を生成する。入力情報抽象化部１１３は、上記の第１条件が成立する場合に抽象化情報として「電源オン」を生成し、第２条件が成立する場合に抽象化情報として「オートワイパー動作可能」を生成し、第３条件が成立する場合に抽象化情報として「雨滴量多い（大雨）」を生成する。
【００６１】
判定部１１４は、抽象化された上記の情報が所定の条件を満たすか否かをそれぞれ判定するようにしてある。本例の場合には、オートワイパー機能としてワイパー５ａを高速動作させる条件「オートワイパー高速動作」を判定する判定部１１４にて条件を満たすと判定され、この旨が優先条件判定部１１５へ通知される。また本例の場合には、オートワイパー機能としてワイパー５ａを間欠動作させる条件「オートワイパー間欠動作」を判定する判定部１１４にても条件を満たすと判定される可能性がある。
【００６２】
優先条件判定部１１５は、「オートワイパー高速動作」及び「オートワイパー間欠動作」の両条件を満たすと判定された場合には、「オートワイパー高速動作」の条件の優先度が高いと判定し、この条件を情報処理部１１６へ与える。情報処理部１１６は、オートワイパー機能に対応した車輌前側のワイパー５ａを高速動作させる制御情報「フロントワイパーを高速動作する」を生成して出力情報変換部１１７へ与える。出力情報変換部１１７は、与えられた制御情報「フロントワイパーを高速動作する」を、プラットホーム層１０５の情報形式に変換し、例えば”FRONTWIP=ON”及び”WIP_SPEED=HIGH”の情報に変換して、プラットホーム層１０５へ与える。なお、”FRONTWIP”は、フロントのワイパー５ａを動作させるか否かを示す情報であり、”ON”又は”OFF”に設定される。”WIP_SPEED”は、ワイパー５ａの動作速度を示す情報であり、”HIGH”、”LOW”又は数値等が設定される。
【００６３】
アプリケーション層１０１から”FRONTWIP=ON”及び”WIP_SPEED=HIGH”の情報が与えられたプラットホーム層１０５は、ワイパー制御プログラム１５０ａにてフロントのワイパー５ａを高速に動作させる駆動信号などを生成してワイパー５ａに与える。これによりＥＣＵ１は、降雨量を検知して自動的に適切な速度でワイパー５ａを動作させることができる。
【００６４】
その後、車輌の雨滴センサが故障し、入力情報受付部１１２が”IG1=ON”、”IG2=ON”、”AUTO_WIPER=ON”、”SW_AUTOWIP=ON”、”RAIN_SENSOR=OFF”及び”S_RAIN=0”を受け付けたものとする（図６参照）。入力情報抽象化部１１３は、上述の第１条件〜第３条件の判定を行って抽象化情報を生成する。この場合、入力情報抽象化部１１３は、第１条件及び第２条件が成立するため、図５の場合と同様に、抽象化情報として「電源オン」及び「オートワイパー動作可能」を生成する。しかし、”RAIN_SENSOR=OFF”であり第３条件が成立しないため、入力情報抽象化部１１３は、抽象化情報として「雨滴量判断不能」を生成する。
【００６５】
判定部１１４は抽象化された情報を基に判定をそれぞれ行う。この場合、「電源オン」、「オートワイパー動作可能」及び「雨滴量判断不能」を満たすため、「フロントワイパー継続動作」の条件を判定する判定部１１４にて条件を満たすと判定され、この旨が優先条件判定部１１５に通知される。優先条件判定部１１５は、「フロントワイパー継続動作」の条件の優先度が高いと判定し、この条件を情報処理部１１６へ与える。
【００６６】
「フロントワイパー継続動作」の条件が与えられた情報処理部１１６は、この条件が与えられる前のワイパー５ａの動作状態を調べ、この動作状態を継続して行うように制御情報を生成する。例えば、この条件が与えられる前にワイパー５ａが高速動作している場合、情報処理部１１６はワイパー５ａの高速動作を継続して行うように制御情報「フロントワイパーを高速動作する」を生成して出力情報変換部１１７へ与える。出力情報変換部１１７は、図５に示す場合と同様に、与えられた制御情報「フロントワイパーを高速動作する」を”FRONTWIP=ON”及び”WIP_SPEED=HIGH”の情報に変換して、プラットホーム層１０５へ与える。これにより、プラットホーム層１０５のワイパー制御プログラム１５０ａによりワイパー５ａの高速動作が継続して行われる。
【００６７】
以上の構成の車載機器制御装置（ＥＣＵ１）においては、車載機器５を制御するための車載機器制御プログラム１００をプラットホーム層１０５及びアプリケーション層１０１の階層構造とし、アプリケーション層１０１のプログラム１１０がプラットホーム層１０５から与えられた情報を入力情報抽象化部１１３にて抽象化した後で、判定部１１４及び優先条件判定部１１５による判定、並びに情報処理部１１６による情報処理等を行う構成とした。これにより、プラットホーム層１０５からアプリケーション層１０１へ与えられる情報が変更された場合には、入力情報受付部１１２及び入力情報抽象化部１１３のみを変更すればよく、情報処理部１１６などの変更を行う必要はない。例えば、プラットホーム層１０５から与えられる”IG2”の情報が削除された場合には、入力情報抽象化部１１３が抽象化情報として「電源オン」を生成する条件を"IG1=ON”のみに変更するなどすればよい。
【００６８】
また、抽象化情報により情報処理部１１６が情報処理を行い、この結果を出力情報変換部１１７がプラットホーム層１０５に適した情報形式に変換する構成とすることにより、アプリケーション層１０１からプラットホーム層１０５へ与える情報が変更された場合には、出力情報変換部１１７のみを変更すればよく、情報処理部１１６などの変更を行う必要はない。例えば、フロントのワイパー５ａを高速動作させるためにプラットホーム層１０５へ与える情報の形式が変更された場合に、出力情報変換部１１７が変換する情報を”FRONTWIP=ON”及び”WIP_SPEED=HIGH”の２つの情報から、”FRONTWIP_HIGH=ON”の１つの情報に変更するなどすればよい。
【００６９】
なお、本実施の形態においては、車載機器５としてワイパー５ａの制御について主に説明を行ったが、その他の車載機器５についても同様であるため詳細な説明は省略する。また、図５及び図６に示した入力情報、判定条件、抽象化情報及び制御情報等は一例であってこれに限るものではない。
【００７０】
（実施の形態２）
図７は、本発明の実施の形態２に係る車載機器制御プログラム２００の構成を説明するための模式図である。実施の形態２に係る車載機器制御プログラム２００はプラットホーム層１０５及びアプリケーション層２０１の２つの階層で構成されており、各階層には複数のプログラムが含まれている。
【００７１】
アプリケーション層２０１は、例えばフロントワイパー制御プログラム（図７においては単にフロントワイパーと記載してある。以下、同様である）２１０ａ、リアワイパー制御プログラム２１０ｂ、ヘッドライト制御プログラム２１０ｃ及びスモールライト制御プログラム２１０ｄ等の複数のプログラム（第２プログラム、第２処理部）を含んでいる。また、実施の形態２のアプリケーション層２０１は、例えばワイパー系及びライト系のようにプログラムをグループ化してあると共に、各グループ内のプログラムに共通する情報の記憶部及び処理等を行うワイパー系共有プログラム２１２ａ及びライト系共有プログラム２１２ｂ等と、アプリケーション層２０１のすべてのプログラムに共通する情報の記憶及び処理等を行う全体共有プログラム（共有処理部）２１１とを更に含んでいる。
【００７２】
全体共有プログラム２１１は、プラットホーム層１０５からの情報を受け付けて記憶すると共に、受け付けた情報を抽象化してアプリケーション層２０１のその他のプログラムへ抽象化情報を与える。ワイパー系共有プログラム２１２ａは、プラットホーム層１０５からの情報を受け付けて記憶すると共に、全体共有プログラム２１１からの抽象化情報を受け付ける。ワイパー系共有プログラム２１２ａは、全体共有プログラム２１１からの抽象化情報を必要に応じて利用し、プラットホーム層１０５からの情報を抽象化して、フロントワイパー制御プログラム２１０ａ及びリアワイパー制御プログラム２１０ｂ等のワイパー系にグループ化されたプログラムへ抽象化情報を与える。また、ライト系共有プログラム２１２ｂも同様の処理を行う。
【００７３】
フロントワイパー制御プログラム２１０ａは、プラットホーム層１０５からの情報を受け付けて記憶すると共に、全体共有プログラム２１１及びワイパー系共有プログラム２１２ａからの抽象化情報を受け付ける。フロントワイパー制御プログラム２１０ａは、全体共有プログラム２１１及びワイパー系共有プログラム２１２ａからの抽象化情報を必要に応じて利用し、プラットホーム層１０５からの情報を抽象化する。その後、フロントワイパー制御プログラム２１０ａは、抽象化した情報と、全体共有プログラム２１１及びワイパー系共有プログラム２１２ａから受け付けた抽象化情報とを基にフロントワイパーの制御に係る情報処理を行う。また、リアワイパー制御プログラム２１０ｂ、ヘッドライト制御プログラム２１０ｃ及びスモールライト制御プログラム２１０ｄ等も同様の処理を行う。
【００７４】
図８は、アプリケーション層２０１の各プログラムが記憶する情報の一例を示す模式図である。なお図８においては、図５及び図６と同様に、プラットホーム層１０５から”IG1”、”IG2”、”AUTO_WIPER”、”SW_AUTOWIP”、”RAIN_SENSOR”及び”S_RAIN”の６つの情報をアプリケーション層２０１へ与えるものとし、ワイパー系のプログラムが利用する情報に着目して各プログラムが記憶する情報及び抽象化する情報を示してある。
【００７５】
プラットホーム層１０５から与えられる”IG1”及び”IG2”の情報は車輌の電源状態に係る情報であり、ワイパー系のプログラムのみでなくその他のプログラムについても必要とする情報である。よって、全体共有プログラム２１１が”IG1”及び”IG2”の情報をプラットホーム層１０５から受け付けて記憶し、受け付けた情報を抽象化して「電源オン」又は「電源オフ」の抽象化情報をアプリケーション層２０１のその他のプログラムへ与える。なお、全体共有プログラム２１１は、図３に示した入力情報受付部１１２及び入力情報抽象化部１１３を有していればよいが、更に判定部１１４、優先条件判定部１１５、情報処理部１１６及び出力情報変換部１１７等を有して電源に係る車載機器５を制御するための情報処理を行う構成としてもよい。
【００７６】
プラットホーム層１０５から与えられる”RAIN_SENSOR”及び”S_RAIN”の情報は雨滴センサに係る情報であり、ワイパー系のプログラムがオートワイパーの機能を実現するために必要とする情報である。よって、ワイパー系共有プログラム２１２ａが”AUTO_WIPER”及び”SW_AUTOWIP”の情報を受け付けて記憶し、受け付けた情報を抽象化して「雨滴量多い」、「雨滴量少ない」又は「雨滴量判断不能」等の抽象化情報をフロントワイパー制御プログラム２１０ａ及びリアワイパー制御プログラム２１０ｂへ与える。なお、ワイパー系共有プログラム２１２ａは、全体共有プログラム２１１と同様に、入力情報受付部１１２及び入力情報抽象化部１１３を有していればよいが、更に判定部１１４、優先条件判定部１１５、情報処理部１１６及び出力情報変換部１１７等を有して雨滴センサを制御するための情報処理を行う構成としてもよい。
【００７７】
プラットホーム層１０５から与えられる”AUTO_WIPER”及び”SW_AUTOWIP”の情報はオートワイパー機能に係る情報である。オートワイパー機能はフロントワイパーにのみ設けられる場合とフロントワイパー及びリアワイパーの両方に設けられる場合とがあるため、オートワイパー機能に係る情報はフロントワイパー制御プログラム２１０ａ及びリアワイパー制御プログラム２１０ｂにそれぞれ別に与えられる（即ち、フロントワイパー用の”AUTO_WIPER”及び”SW_AUTOWIP”の情報と、リアワイパー用の”AUTO_WIPER”及び”SW_AUTOWIP”の情報とが、プラットホーム層１０５からそれぞれ異なる値を有する別の情報として与えられる）。フロントワイパー制御プログラム２１０ａ及びリアワイパー制御プログラム２１０ｂは、プラットホーム層１０５から”AUTO_WIPER”及び”SW_AUTOWIP”を受け付けて記憶し、受け付けた情報を抽象化すると共に、全体共有プログラム２１１及びワイパー系共有プログラム２１２ａにて抽象化された情報を受け付けて、これらの抽象化情報を基にフロントワイパー及びリアワイパーの制御に係る情報処理を行う。
【００７８】
以上の構成の実施の形態２に係る車載機器制御プログラム２００は、アプリケーション層２０１のプログラム全体で利用する情報を全体共有プログラム２１１にて記憶及び抽象化すると共に、ワイパー系及びライト系等のようにプログラムをグループ化して、グループ内のプログラムが利用する情報をワイパー系共有プログラム２１２ａ及びライト系共有プログラム２１２ｂ等にて記憶及び抽象化する構成とすることにより、アプリケーション層２０１の各プログラムが同じ情報についての記憶及び抽象化を行う必要がないため、機器制御装置のメモリ資源を節約することができ、また、処理速度を向上することができる。
【００７９】
なお、実施の形態２においては、アプリケーション層２０１が、全体共有プログラム２１１とワイパー系共有プログラム２１２ａ及びライト系共有プログラム２１２ｂとを含む構成としたが、これに限るものではなく、全体共有プログラム２１１を含まずにワイパー系共有プログラム２１２ａ及びライト系共有プログラム２１２ｂのみを含む構成としてもよく、ワイパー系共有プログラム２１２ａ及びライト系共有プログラム２１２ｂを含まずに全体共有プログラム２１１のみを含む構成としてもよく、これらの組み合わせについて限定しない。また、アプリケーション層２０１の全体に共通するのではなく、ワイパー系及びライト系等の限られたいくつかのグループに共通する情報の記憶及び処理を行う複数グループ共有プログラムを更に含む構成としてもよい。
【００８０】
また、全体共有プログラム２１１、ワイパー系共有プログラム２１２ａ及びライト系共有プログラム２１２ｂは、プラットホーム層１０５からの情報を記憶して抽象化する構成としたが、これに限るものではなく、プラットホーム層１０５からの情報の記憶のみを行い、情報の抽象化はフロントワイパー制御プログラム２１０ａ、リアワイパー制御プログラム２１０ｂ、ヘッドライト制御プログラム２１０ｃ及びスモールライト制御プログラム２１０ｄ等の各プログラムが行う構成としてもよい。
【００８１】
なお、実施の形態２に係る車載機器制御装置及び車載機器制御プログラムのその他の構成は、実施の形態１に係る車載機器制御装置及び車載機器制御プログラムの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【００８２】
（実施の形態３）
図９は、本発明の実施の形態３に係る車載機器制御プログラム３００の構成を説明するための模式図である。実施の形態３に係る車載機器制御プログラム３００のアプリケーション層３０１に含まれる各プログラムは、基本プログラム（基本処理部）及び追加プログラム（固有プログラム、固有処理部）を組み合せて構成されている。なお、図９においては、アプリケーション層３０１のプログラムのうちワイパー制御プログラム３１０について構成が図示してあり、ライト制御プログラム及びドアロック制御プログラム等のその他のプログラムについては図示を省略してある。
【００８３】
アプリケーション層３０１のワイパー制御プログラム３１０は、ワイパー基本プログラム３１１と、Ａ車用ワイパー追加プログラム３１２ａ、オートワイパー機能追加プログラム３１３及びリアワイパー用追加プログラム３１４とを組み合わせて構成してある。ワイパー基本プログラム３１１は、車輌のフロントワイパー及びリアワイパー等の種類の異なるワイパー、又はＡ車及びＢ車等の異なる車種に搭載されて仕様の異なるワイパー等の種々のワイパーについて、共通する基本的な機能に係る情報の記憶及び処理等を行うプログラムである。種々のワイパーに共通の機能とは、例えばユーザのスイッチ操作に基づいてワイパーの動作をオン／オフする機能、又はプラットホーム層１０５から与えられた”IG1”及び”IG2”の情報に基づいて電源オン／オフを判定する機能等である。ワイパー基本プログラム３１１は、実施の形態２の全体共有プログラム２１１と同様に、入力情報受付部１１２及び入力情報抽象化部１１３のみを有する構成であってもよく、更に判定部１１４、優先条件判定部１１５、情報処理部１１６及び出力情報変換部１１７等を有する構成であってもよい。
【００８４】
Ａ車用ワイパー追加プログラム３１２ａは、車種Ａの車輌に搭載されたワイパーに固有の機能に係る情報の記憶及び処理等を行うプログラムである。車輌に搭載されるワイパーは車種毎に、例えば動作速度の変更を多段階で行うことができるものとそうでないものとがあるなど、動作内容又は仕様等に若干の差異がある。そこで、ワイパー制御プログラム３１０を例えば車種Ａ及び車種Ｂにて流用する場合、車種Ａに固有の機能に係る処理を行うＡ車用ワイパー追加プログラム３１２ａと、車種Ｂに固有の機能に係る処理を行うＢ車用ワイパー追加プログラム３１２ｂとを作成し、搭載する車輌の車種に応じていずれか一方をワイパー制御プログラム３１０に組み込む構成とする。
【００８５】
オートワイパー機能追加プログラム３１３は、雨滴センサが検知する雨滴量に応じてワイパーを自動的に動作させるオートワイパー機能に固有の情報の記憶及び処理等を行うプログラムであり、オートワイパー機能を有するワイパーを搭載した車輌のワイパー制御プログラム３１０にのみ組み込まれる。また、リアワイパー用追加プログラム３１４は、車輌のリアワイパーの動作制御に固有の情報の記憶及び処理等を行うプログラムであり、リアワイパーを搭載した車輌のワイパー制御プログラム３１０にのみ組み込まれる。
【００８６】
なお、Ａ車用ワイパー追加プログラム３１２ａ、Ｂ車用ワイパー追加プログラム３１２ｂ、オートワイパー機能追加プログラム３１３及びリアワイパー用追加プログラム３１４等の詳細な構成は、図３に示したアプリケーション層のプログラム１１０と同様であってよい。
【００８７】
以上の構成の実施の形態３に係る車載機器制御プログラム３００は、アプリケーション層３０１のプログラムを機能毎に分類して別のプログラム（プログラム部分）とし、制御対象の車載機器５の機能に応じて複数のプログラムを組み合せる構成とすることにより、アプリケーション層３０１のプログラムの再利用性を高めることができ、プログラムの開発時間及び開発コスト等の削減を実現することができる。なお、図９に示したワイパー制御プログラム３１０の構成は一例であり、以下の変形例に示す構成のように、その他の構成を適用することもできる。
【００８８】
（変形例）
図１０は、本発明の実施の形態３の変形例に係る車載機器制御プログラム３５０の構成を説明するための模式図である。変形例に係る車載機器制御プログラム３５０のアプリケーション層３５１には車輌のワイパーを制御するプログラムとして、フロントワイパー制御プログラム３６０ａ及びリアワイパー制御プログラム３６０ｂが含まれている。フロントワイパー制御プログラム３６０ａは、ワイパー基本プログラム３１１とＡ車用ワイパー追加プログラム３１２ａ及びオートワイパー機能追加プログラム３１３とを組み合わせて構成してある。また、リアワイパー制御プログラム３６０ｂは、ワイパー基本プログラム３１１とリアワイパー用追加プログラム３１４とを組み合わせて構成してある。
【００８９】
なお、実施の形態３に係る車載機器制御装置及び車載機器制御プログラムのその他の構成は、実施の形態１に係る車載機器制御装置及び車載機器制御プログラムの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【００９０】
（実施の形態４）
図１１は、本発明の実施の形態４に係る車載機器制御プログラム４００の構成を説明するための模式図である。実施の形態４に係る車載機器制御プログラム４００は、プラットホーム層１０５及びアプリケーション層１０１の２つの階層で構成されるが、プラットホーム層１０５のプログラムとアプリケーション層１０１のプログラムとの間の情報の授受を情報テーブル４０７を介して行う構成である。なお、プラットホーム層１０５のプログラム及びアプリケーション層１０１のプログラムによる直接的な情報の授受は行うことができないようにしてある。
【００９１】
情報テーブル４０７は、予め定められた情報のみを記憶することができる記憶領域であり、ＥＣＵ１のＲＡＭ１３又はＣＰＵ１２のレジスタ等にて実現されるものである。プラットホーム層１０５のプログラムは、アプリケーション層１０１へ与える情報を情報テーブル４０７に記憶すると共に、アプリケーション層１０１からの情報を情報テーブル４０７から読み出して取得する。
【００９２】
同様に、アプリケーション層１０１のプログラムは、プラットホーム層１０５へ与える情報を情報テーブル４０７に記憶すると共に、プラットホーム層１０１からの情報を情報テーブル４０７から読み出して取得する。なお、アプリケーション層１０１のプログラム１１０においては、情報テーブル４０７からの情報の読出を入力情報受付部１１２が行い、情報テーブル４０７への情報の記憶を出力情報変換部１１７が行う構成とすることができる。
【００９３】
以上の構成の実施の形態４に係る車載機器制御プログラム４００においては、プラットホーム層１０５のプログラム及びアプリケーション層１０１のプログラムが情報テーブル４０７を介して情報の授受を行う構成とすることにより、プラットホーム層１０５からアプリケーション層１０１へ与える情報、及びアプリケーション層１０１からプラットホーム層１０５へ与える情報を制限することができるため、アプリケーション層１０１からプラットホーム層１０５への不正な情報アクセスを防止でき、プラットホーム層１０５からアプリケーション層１０１への不正な情報アクセスを防止できるため、車載機器制御プログラム４００の信頼性を高めることができる。
【００９４】
なお、実施の形態４に係る車載機器制御装置及び車載機器制御プログラムのその他の構成は、実施の形態１に係る車載機器制御装置及び車載機器制御プログラムの構成と同様であるため、同様の箇所には同じ符号を付して詳細な説明を省略する。
【図１】
2009093732.tif 000003
【図２】
2009093732.tif 000004
【図３】
2009093732.tif 000005
【図４】
2009093732.tif 000006
【図５】
2009093732.tif 000007
【図６】
2009093732.tif 000008
【図７】
2009093732.tif 000009
【図８】
2009093732.tif 000010
【図９】
2009093732.tif 000011
【図１０】
2009093732.tif 000012
【図１１】
2009093732.tif 000013
【国際調査報告】
2009093732.tif 000014
2009093732.tif 000015