(57)【特許請求の範囲】
【請求項１】
通信媒体と、
前記通信媒体に接続し、それぞれが１以上のビーンを有する１以上のデバイスと、
前記媒体に接続するビークル中央制御部であって、制御エレメントと、メモリとを含んで構成され、前記メモリに１以上のビーンを有するとともに、前記通信媒体に接続した前記１以上のデバイスを、前記１以上のデバイスのそれぞれと関連付けられた１以上のビーンと、前記メモリが有する１以上の対応するビーンとのうち一方を用いて制御するビークル中央制御部と、
を含んで構成され、
前記１以上のビーンのそれぞれが、移植及び再使用が可能な、自己包含型のＪａｖａ（登録商標）ソフトウェアコンポーネントであり、
前記１以上のデバイスのうち少なくとも第１のデバイスが、前記１以上のデバイスのうち他のデバイスにより前記第１のデバイスを制御する際に使用可能な、少なくとも１つのビーンを有し、
前記ビークル中央制御部が、前記通信媒体上の使用デバイスに対するアクセスを提供するように再構成可能なグラフィカルインタフェース表示装置を有するビークル。
【請求項２】
前記制御エレメントが、少なくとも前記第１のデバイスに対して少なくとも１つのビーンを要求するように構成された請求項１記載のビークル。
【請求項３】
少なくとも前記第１のデバイスが、キャビン照明インタフェース装置、アンプ／スピーカ、ＣＤプレイヤ、ＡＭ／ＦＭラジオ及びテーププレイヤ、ＧＰＳ、暖房／空調装置、レーダ、エアバッグ起動及び現状表示装置、ビデオカメラ、緊急救助装置、アラーム、盗難警告システム、走行積算距離計、ジャイロスコープ、ルート案内装置、アクセス制御装置、位置中継器、ビデオゲーム、インターネット接続装置、デジタルマルチメディア放送受信器、電話受信器、デジタルビデオ復号器及び記録器、デジタルオーディオ放送受信器、音声確認システム、直接接続されるか又は赤外線リンクされる携帯送受話器、デジタル方式セル音声モジュール、ならびに他のバスへのゲートウェイのうちの１つである請求項１又は２記載のビークル。
【請求項４】
前記グラフィカルインタフェース表示装置が、タッチスクリーンディスプレイであり、
前記ビーンは、ビークルのユーザが前記タッチスクリーンディスプレイとインタラクトするためのグラフィカルユーザインタフェースを提供する請求項１〜３のうちいずれか１つに記載のビークル。
【請求項５】
前記ビーンが、前記グラフィカルユーザインタフェースを提供するビーンを有する請求項４記載のビークル。
【請求項６】
前記ビーンが、前記デバイスを制御するための制御ビーンを有する請求項１〜５のうちいずれか１つに記載のビークル。
【請求項７】
前記制御エレメントが、パーソナルＪａｖａＴＭを実行するプロセサである請求項１〜６のうちいずれか１つに記載のビークル。
【請求項８】
自動車のコンピュータシステムの一部を構成するデバイスをインストールする方法であって、
前記コンピュータシステムに追加される新たなデバイスを、前記コンピュータシステムの中央制御部が検出するステップであって、前記中央制御部は、前記コンピュータシステムの通信媒体に接続するとともに、制御エレメント及びメモリを有し、ここに、前記新たなデバイスは、少なくとも１つのビーンを有するとともに、前記通信媒体に接続し、前記通信媒体は、複数のデバイスを前記コンピュータシステムに接続するステップと、
前記新たなデバイスからの１以上のビーンを前記中央制御部の制御エレメントで受信し、前記新たなデバイスの前記１以上のビーンが、前記新たなデバイスの制御に用いられるステップと、
を含んで構成され、
前記１以上のビーンのそれぞれが、移植及び再使用が可能な、自己包含型のＪａｖａソフトウェアコンポーネントであり、
前記中央制御部が、前記通信媒体上の使用デバイスに対するアクセスを提供するように再構成可能なタッチスクリーンディスプレイを有する方法。
【請求項９】
前記制御エレメントが、前記コンピュータシステム上の前記新たなデバイスを検出し、またこれに応答して、前記１以上のビーンを要求する請求項８記載の方法。
【請求項１０】
前記新たなデバイスが、前記コンピュータシステムに接続されると、前記１以上のビーンを前記制御エレメントに自動的に送信する請求項８記載の方法。
【請求項１１】
前記１以上のビーンが、制御ビーン及びＧＵＩビーンのうち少なくとも一方から構成される請求項８〜１０のうちいずれか１つに記載の方法。
【請求項１２】
前記１以上のビーンが、前記デバイスの製造業者により提供された１以上の各標準デバイスインタフェースを有する請求項８〜１１のうちいずれか１つに記載の方法。
【請求項１３】
前記デバイスから受信した前記１以上のビーンと、前記デバイスに関して前記中央制御部で以前に格納した１以上のビーンとのうちから選択して、前記デバイスを制御するためのインタフェースを選択するステップを更に含んで構成され、
前記選択したインタフェースは、前記デバイスを制御するための優先インタフェースである請求項８〜１２のうちいずれか１つに記載の方法。
【請求項１４】
前記デバイスが、キャビン照明インタフェース装置、アンプ／スピーカ、ＣＤプレイヤ、ＡＭ／ＦＭラジオ及びテーププレイヤ、ＧＰＳ、暖房／空調装置、レーダ、エアバッグ起動及び現状表示装置、ビデオカメラ、緊急救助装置、アラーム、盗難警告システム、走行積算距離計、ジャイロスコープ、ルート案内装置、アクセス制御装置、位置中継器、ビデオゲーム、インターネット接続装置、デジタルマルチメディア放送受信器、電話受信器、デジタルビデオ復号器及び記録器、デジタルオーディオ放送受信器、音声確認システム、直接接続されるか又は赤外線リンクされる携帯送受話器、デジタル方式セル音声モジュール、ならびに他のバスへのゲートウェイのうちの１以上である請求項８〜１３のうちいずれか１つに記載の方法。
【請求項１５】
前記コンピュータシステムからデバイスを、前記中央制御部によりアンインストールするステップを更に含んで構成される請求項８〜１４のうちいずれか１つに記載の方法であって、
前記デバイスをアンインストールするステップが、
前記デバイスがアンインストールされたことを検出するステップであって、前記アンインストールの検出が、以前にインストールされたデバイスが前記通信媒体にもはや接続されていないことを判断することによるステップと、
前記デバイスの制御に使用された前記１以上のビーンを、もはや必要ではないものとして識別するステップと、
前記識別した１以上のビーンを前記コンピュータシステムから除去するステップと、
を含んで構成される方法。
【請求項１６】
前記ビーンの除去が、前記ビーンを前記中央制御部のメモリから消去し、制御システムに関するデータ構造をアップデートして前記ビーンに関するエントリを消去することによる請求項１５記載の方法。
【請求項１７】
再構成可能なグラフィカルインタフェース表示装置を有する自動車のコンピュータシステムに付加される１以上のデバイスを制御するためのコンピュータ実行可能な一連の命令の保存に適した、コンピュータ読取可能な媒体であって、
前記コンピュータシステムに付加されたデバイスを、前記コンピュータシステムの中央制御部により検出するための命令であって、前記デバイスは、少なくとも１つのビーンを有するとともに、前記コンピュータシステムの通信媒体に接続し、ここに、前記通信媒体は、複数のデバイスを前記コンピュータシステムに接続する命令と、
前記中央制御部により、前記コンピュータシステムに付加された前記デバイスからの１以上のビーンを要求及び受信するための命令と、を含んで構成され、
前記１以上のビーンのそれぞれが、移植及び再使用が可能な、自己包含型のＪａｖａソフトウェアコンポーネントであり、
前記１以上のビーンは、前記コンピュータシステムのグラフィカルインタフェース表示装置を再構成して、前記コンピュータシステムが、前記グラフィカルインタフェース表示装置を介して前記通信媒体上の使用デバイスに対する制御及びアクセスを提供することを可能とする媒体。
【請求項１８】
前記中央制御部により、前記デバイスから受信した前記１以上のビーンと、前記デバイスに関して前記中央制御部に以前に格納した１以上のビーンとのうちから前記デバイスを制御するためのインタフェースを選択するための命令を更に含んで構成され、
前記選択したインタフェースは、前記デバイスを制御するための優先インタフェースである請求項１７記載の媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ユーザデバイスのコンピュータ制御に関し、詳細には、ビークルネットワークに付加されたデバイスの中央制御を提供するためのJavaBeansTMの使用に関する。
【０００２】
【従来の技術】
コンピュータ制御されるデバイスは益々普及しており、このようなデバイスが自動車等の従来の機械分野に広がっていくことが期待される。ネットワークビークルは、１９９７年１１月にコムデックス（Comdex）トレードショーにおいて展示された。そのビークルは、幾つかの付加デバイスを制御するために使用される中央コンピュータを備えるものであった。
【０００３】
【発明が解決しようとする課題】
幾多の製造業者が、ビークルでの使用に適合するバスアーキテクチャを開発し、また展開してきている。
【０００４】
コンピュータシステムは、プラグアンドプレイオペレーションを可能にすることが知られている。新規なデバイスがコンピュータバスに付加されると、その存在が検出され、バス上にあることがＣＰＵに認識されるデバイスのリストに自動的に付加される。
【０００５】
当該技術分野において、オブジェクト指向プログラミング言語やオブジェクト指向開発環境が知られている。JavaBeansTMやJava Development KitTM (ＪＤＫ) は、Sun Microsystemsから発表された周知な製品である。JavaBeansTMは、動的なJavaコンポーネントを生成し、また使用するためのアーキテクチャ及びプラットフォームのニュートラルアプリケーションプログラミングインタフェースである。アプリケーションデベロッパは、全く軽便なJavaBeansTMからカスタムアプリケーションを組み立てるために、Java Development KitTM等の多様な開発ツールを使用することができる。
【０００６】
【課題を解決するための手段】
本発明は、ビークルのコンピュータシステムにおいてデバイスインタフェースを提供するための、JavaBeans（登録商標）TMを使用した方法、装置、システム及びコンピュータ読取可能な媒体に関する。このようなシステムでは、ビークル中央制御部（Vehicle control center：ＶＣＣ）は、プロセサ及びメモリを備えており、ビークル内でオペレートするデバイスへのアクセスを提供する。このようなデバイスの製造業者は、デバイスに格納されるJavaBeanTMインタフェースを提供する。ビークルにデバイスがインストールされると、プロセサ又はビークル中央制御部の他の制御エレメントがその導入を検出し、デバイスに格納されたJavaBeanTMインタフェースを要求するか、又はそうでなければ受け取る。ここで、ビークル中央制御部は、そのインタフェースを受け取ると使用することができ、又はそれを既にメモリに格納されている異なるインタフェースと置き換えることができる。
【０００７】
本発明の上記の及び他の特徴、形態、ならびに利点は、添付の図面を参照して、以下の詳細な説明により更に明らかとなる。
【０００８】
【発明の実施の形態】
以下の詳細な説明は、コンピュータ又はコンピュータのネットワークにおいて実行されるプログラム手順に関して示される。これらの手順に関する説明又は表現は、当該技術分野に精通する他の者に対し、これらの手順の内容を最も効果的に伝えるために、当該技術分野に精通する者により使用される手段である。
【０００９】
手順は、ここにおいて、また一般的に、所望の結果を導く自己調和的な（Self-consistent）連続ステップであると考えられる。これらのステップは、物理量の物理的操作を要するものである。通常、必ずしもそうではないが、これらの量は、格納され、転送され、組み合わされ、比較され、またそうでなければ操作されることができる電気信号又は磁気信号の形態をなす。これらの信号をビット、値、要素、記号、文字、用語又は数等として見故すことは、共通使用の理由により、原則として時には便利である。しかしながら、これらの全て、及び類似の用語は、適宜な物理量と関連しており、かつこれらの量に対して適用される単なる便宜上のラベルに過ぎないことに留意するべきである。
【００１０】
また、実行された操作は、しばしば付加又は比較等の用語で参照され、これは、一般的にオペレータにより実行される精神的操作と対応付けられる。本発明の一部を形成する、ここで説明されるあらゆる操作において、たいていの場合は、人間であるオペレータのこのような能力は不要であり、即ち望まれるものではなく、操作は、機械による操作である。本発明の操作を実行するために有効な機械は、汎用デジタルコンピュータ又は類似の装置を含む。
【００１１】
本発明はまた、これらの操作を実行するための装置に関する。この装置は、必要な目的のために特別に構成されるか、又はコンピュータ内部に格納されるコンピュータプログラムにより選択的に起動され若しくは再構築されるような汎用コンピュータを含んで構成されてもよい。ここで示される手順は、本来的に特定のコンピュータ又は他の装置と関連するものではない。様々な汎用機械がここでの教示に基づいて書かれるプログラムとともに使用されてよく、又は必要な方法ステップを達成するためにより特殊化された装置を構成することがより便利であることが判明しうる。これらの様々な機械に対して要求される構造は、以下の説明により明らかとなる。
【００１２】
図１は、本発明に係るネットワークビークルにおける構成要素の配置例を示す自動車の概略図である。ビークル１００は、バス１２０に対してマスタとして作用するビークル中央制御部１１０を備える。複数の付加ビークルデバイス１３０もバスに接続されて、ビークル中央制御部により制御される。
【００１３】
図２は、本発明に係るビークルネットワークの一例のブロック図である。図１に関連して示されるように、ビークル中央制御部１１０は、バス１２０を制御する。ネットワークビークルにおいて共通して見受けられる付加デバイスの例として、複数のデバイス２００，２１０，２２０，２３０，２４０及び２５０が示されている。デバイス２００は、キャビン照明インタフェース装置を示し、このインタフェース装置２００によりビークル中央制御部が使用されて、ビークルのキャビン内の照明が制御されうる。娯楽としては、ＣＤプレイヤ２２０と、ＡＭ／ＦＭラジオ及びテーププレイヤ２３０とが示されている。これらの各デバイスは、アンプ／スピーカユニット２１０の補助を享受する。アンプ／スピーカユニット２１０は、乗客用キャビン内の乗客にＣＤプレイヤや、ＡＭ／ＦＭラジオ及びテーププレイヤ２３０からの音響出力を増幅して提供する。ビークルの運転者や他の同乗者にナビゲーション情報を提供するために、グローバル位置決定衛星システム受信器（ＧＰＳ）２４０が使用されうる。乗客用キャビン内の適切な環境状態を設定するために、暖房／空調ユニット２５０がビークル中央制御部を使用して制御されうる。ネットワークビークルでは、他の付加デバイスが使用されうる。これらは、レーダ、エアバッグ起動及び現状表示装置、ビデオカメラ、緊急救助装置、アラーム、盗難警告システム、走行積算距離計、ジャイロスコープ、ルート案内装置、アクセス制御装置、位置中継器、ビデオゲーム、インターネット接続装置、デジタルマルチメディア放送受信器、電話受信器、デジタルビデオ復号器及び記録器、デジタルオーディオ放送受信器、音声確認システム、直接接続されるか又は赤外線リンクされる携帯送受話器、デジタル方式セル音声モジュール、ならびに他のバスへのゲートウェイを含む。これらは、バスに接続されて、本発明の原理を使用して制御されうる多くの異なる種類の付加デバイスの単なる例示である。
【００１４】
図３は、図２に示される本発明に係るビークル中央制御部１１０の一例のブロック図である。ＣＰＵ３００及びメモリ３１０は、バス１２０に接続される。タッチスクリーンディスプレイ３３０は、ディスプレイインタフェース３２０を介してバスに接続される。コンピュータバス１２０は、付加デバイスへのインタフェース３４０を介して、１以上のビークルネットワークに任意に接続されうる。また、これらの付加デバイスは、コンピュータバスに直接接続されてもよい。他の構成も可能であるが、この構成は、ビークル中央制御部についての基本的な機能性（functionality）を提供する。
【００１５】
図４は、図３に示される本発明に係るビークル中央制御部のソフトウェアアーキテクチャの一例を示す図である。パーソナルJava（Personal Java）４００は、オペレーティングシステム４３０の上位で動作し、通常のJavaマナーにおいて仮想マシーンを提供する。複数のJavaBeansTM４１０は、格納され、また本発明による制御機能を実施するために任意に起動されうる。１以上のアプリケーションも、仮想マシーン上で実行されうる。
【００１６】
図５は、ビークルネットワークに付加されるデバイスの第１の例のブロック図である。ネットワークバス１２０に付加される付加ビークルデバイス１３０等のデバイスは、一般的にデバイスコントローラ５００により実行される。デバイスコントローラは、有限状態のマシーンとして、又はバス状態に応答する簡易な論理として提供されうる。ここに示される最も簡易な実装形態では、ＲＯＭ５１０等のメモリデバイスが、このデバイスについての情報を格納し、また一実施形態においては、ビークル中央制御部にバス１２０を介してアップロードするための複数のJavaBeansTM５２０を含む。
【００１７】
図６（Ａ）及び（Ｂ）は、本発明に係るビークルネットワークに付加される他のデバイスの例、及び前記他のデバイスのための対応ソフトウェアアーキテクチャをそれぞれ示す。より洗練された付加デバイス６００は、バス１２０に接続されるそれ自体のＣＰＵ又はコントローラ、及びメモリ６２０を備える。この特定の実装形態においては、組み込みJava（Embedded Java）６３０がＣＰＵ６１０を使用して実行されうる。自動車用アプリケーションのための標準アプリケーションプログラミングインタフェース（ＡＰＩ）が形成されて、自動車用デバイスに対するプログラミングインタフェースを標準化しうる。ＡＰＩに適合する１以上のJavaTMオブジェクト（以下、標準デバイスインタフェース６４０という。）は、付加デバイスのメモリ空間にJavaBeansTMとして格納される。
【００１８】
組み込みJavaプラットフォームは、一般的にディスプレイ及び限定されたユーザ入出力能力を有しない組み込みデバイスについてカスタマイズされたJavaプラットフォームの実装形態である。パーソナルJavaは、ディスプレイ及びよりよいユーザ入出力装置を有するデバイスについてのJavaのより広域に及ぶサブセットである。図５のデバイスは、付加デバイスにおいてJavaのバージョンを全く必要としない。
【００１９】
図７は、情報がＲＯＭ（図５）又はメモリ（図６）に格納されうる本発明による好ましい方法を示す。一般的には、デバイスＩＤ７００が格納される。このデバイスＩＤは、製造業者７１０の識別子、モデル番号７２０、デバイスのシリアル番号７３０等の情報及び他の情報を含むものであってよい。一実施形態では、標準デバイスインタフェース１又は標準デバイスインタフェースＮ等の１以上の標準デバイスインタフェース７４０が格納されうる。好ましい実施形態では、前記各標準デバイスインタフェースは、デバイスを制御するビークル中央制御部において達成されるべき機能性を実行するための制御ビーン（Bean）を含み、その制御ビーンの制御機能性が実行されうるグラフィカルユーザインタフェースを提供するＧＵＩビーンと同様に、制御ビーンが前記デバイスに対応付けられる。
【００２０】
制御ビーン７５０及びＧＵＩビーン７６０、又は標準デバイスインタフェース７４０と対応付けられる他のビーンを格納する代わりに、メモリデバイス又はＲＯＭが、適切な製造業者のインタフェースがダウンロードされうるＵＲＬ（Uniform resource locator）等のネットワークアドレスを格納してもよい。このことは、製造業者がユーザインタフェースを動的な基礎上で更新し、デバイスがインストールされたときに、最新のバージョンの製造業者デバイスインタフェースを確実にダウンロードするのを可能にする。このことはまた、製造業者のインタフェース情報を格納するために要求されるＲＯＭ空間を削減し、付加端末デバイスのコストを削減する。
【００２１】
標準デバイスインタフェース又はカスタムインタフェースがビークル中央制御部にインストールされうる方法は、多数存在することに留意するべきである。これらは、ビークルにインストールされるときは、ビークル中央制御部に予めインストールされうる。また、これらは、以下に更に説明されるように、付加デバイスから要求され、またダウンロードされうる。これらは、ディスケット、ＣＤＲＯＭ、ＥＰＲＯＭ又は他のメモリ媒体からビークル中央制御部にロードされうる。これらは、付加デバイスからダウンロードされるか、又はマニュアルで入力されるＵＲＬアドレスからネットワークリンクを介して受け取られ、ビークル中央制御部への赤外線ポート等の入出力リンクを介して入力されうる。
【００２２】
図８は、JavaBeansTMを開発し、また格納するための本発明による好ましいプロセスを示す。デベロッパは、例えばJava Development KitTMを使用して、ビーンに導入されるソフトウェアを開発する。ビーンの状態及びビーンと対応付けられるコードは、Java Development KitTMが提供される標準コールを使用して直列化され、また格納される。この目的のために他のものにより開発されたソフトウェアを使用しても同様になされうることは勿論である。ここで、直列化されたビーンは、本明細書において開示される使用のために、メモリに格納される（８２０）。
【００２３】
図９は、ネットワークビークルにおいて使用される本発明によるグラフィカルユーザインタフェース（ＧＵＩ）の一例の概略図である。好ましい実施形態では、ビークル中央制御部は、タッチスクリーンディスプレイ３３０を使用する。タッチスクリーンディスプレイは、再構成可能なダッシュボードを形成する複数の異なる方法で構成される。この図に示されるＧＵＩを実装した例では、多数のインタフェースが、底列に組み合わされたボタンをタッチすることにより選択可能である。底列のボタンのうちの１つの起動によって、底列上方のスペースに表示される特定のインタフェースが選択される。図９に示される例では、音響システムのためのインタフェースが、ボタン９１０をタッチすることにより起動されている。ボタン９１０が起動された事実は、ボタン周囲における強調された輪郭により表示される。他のボタンが選択されると、これらのボタンは同様に強調され、音響システムボタン９１０周囲の輪郭が通常のアウトラインに復帰する。タッチスクリーン３３０に示される各ボタンは、個々のJavaBeanとして提供されうる。JavaBeansTMは、階層様式において他のJavaBeansTMを含みうる。従って、タッチスクリーン３３０のグラフィカルインタフェース表示領域全体は、１つのグラフィカルユーザインタフェースJavaBeanに含まれるJavaBeansTMを使用して提供されうる。
【００２４】
グラフィカルインタフェース表示領域の左側マージンに沿って、適切な音響機能を選択するための複数のボタンが存在する。この例では、ボタン９２０周囲の強調された輪郭により表示されるように、ＦＭフロントエンドソースが選択されている。他の選択としては、ＣＤプレイヤソース、テーププレイヤソース及びＡＭラジオフロントエンドを含む。音量制御、高音部及び低音部の調整、チャンネル選択、ならびに走査機能も提供される。表示エレメント９４０は、選択された特定のソースを示し、ウィンドウ９３０は、このモードにおいて選択されたステーションの周波数を示す。このグラフィカルユーザインタフェースを提供するために使用されるビーンの多くが、ＣＤ、テープ及びＡＭラジオ選択のための他のインタフェースを提供する際に再利用されうることに留意するのは、特に有益である。このように、JavaBeansTMのユーザは、グラフィカルユーザインタフェースを構成する強力な方法を提供される。音量及び同調等の各制御機能は、グラフィカルインタフェース表示領域を提供する際に使用されるグラフィカルユーザインタフェースビーンと対応付けられた制御ビーンの一部であるのが一般的な、根本的な機能性を呼出すことにも留意すべきである。
【００２５】
図１０（Ａ）〜（Ｄ）は、ビークル中央制御部が付加デバイスから標準デバイスインタフェースを得ることができる本発明によるステージを示す。（Ａ）は、２つのデバイスＡ及びＢがバス１２０に付加された状態を示す。JavaBean１０００ＡがデバイスＡへのインタフェースを表し、またJavaBean１０００ＢがデバイスＢへのインタフェースを表す。（Ｂ）では、新規なデバイスがバス１２０に追加されて示されている。これは、前記のように、製造業者により提供されるような、新規なデバイスのための標準デバイスインタフェースをその内部に含む。しかしながら、標準デバイスインタフェース１０００Ｃは、ビークル中央制御部１１０にロードされていない。ここに開示されるように、ビークル中央制御部は、標準デバイスインタフェースのダウンロードを要求する新たに接続されたデバイスＣに、バス１２０を介して要求を送信する。この要求に応答して、標準デバイスインタフェース１０００Ｃが、付加デバイスからビークル中央制御部１１０にアップロードされて格納される。（Ｄ）は、バスを介してデバイスＣを制御する際の使用のために制御ビーン１０００Ｃがビークル中央制御部に格納される最終状態を示す。
【００２６】
図１１及び１２は、図１０（Ａ）〜（Ｄ）に関連して表されるプロセスを実施するために使用される本発明によるプロセスのフローチャートである。図１１では、ビークル中央制御部が新規なデバイスを検出する（１１００）。これは、通常のプラグアンドプレイ検出と関連して使用されるいかなる方法によっても達成されうる。これは、一般的にブートアップ（boot-up）すると起こる。ここで、ビークル中央制御部は、新規なデバイスに要求を送信して標準デバイスインタフェースをダウンロードする（１１１０）。そして、新規なデバイスは、１以上の標準デバイスインタフェースをビークル中央制御部に送信する（１１２０）。ビークル中央制御部は、図１３に関連して更に説明されるように、この１以上の標準デバイスインタフェースを受け取り、格納する（１１３０）。この本発明に係る特定の形態は、バス構成の最新の適応が望まれない場合に好ましい。
【００２７】
図１２は、バスの最新の再構成が望まれる場合に好ましいプロセスを示す。即ち、再ブートを伴わないデバイスのバスへの追加である。これを、ホットプラグアンドプレイと称する。オペレーションの間にデバイスがバスに接続されると（１１４０）、そのデバイスは、バスにアクセスしてデバイスＩＤを送信する（１１５０）。ここで、付加デバイスは、ビークル中央制御部からの要求を待ち、この要求が受け取られると、ビークルデバイスは、１以上の標準デバイスインタフェースをビークル中央制御部に送信する（１１６０）。
【００２８】
ビークル中央制御部は、デバイスＩＤにより識別される特定のデバイスのための標準の又はカスタムインタフェースを既に含んでいる。この場合は、付加デバイスからのインタフェースのダウンロードを要求する必要はない。しかしながら、ビークル中央制御部が識別されたデバイスを実行するためのインタフェースを含まない場合は、ダウンロードが要求され、付加デバイスからビークル中央制御部にダウンロードされうる。
【００２９】
図１３は、ネットワーク又はバスを介して受け取られる１以上の標準デバイスインタフェースを取り扱うための本発明による好ましいプロセスのフローチャートである。ビークル中央制御部は、好ましくは１以上のJavaBeansTMとして１以上の標準デバイスインタフェースを受け取ると（１２００）、デバイスにとって好ましいインタフェースが既に格納されているかを点検する（１２１０）。格納されていれば（１２１０−Ｙ）、その好ましいインタフェースが使用され、アップロードされたインタフェースは任意に放棄される（１２２０）。デバイスにとって好ましいインタフェースが既に格納されていないときは（１２１０−Ｎ）、ビークル中央制御部は、複数のインタフェースが受け取られているかを判定する（１２３０）。１つのインタフェースのみが受け取られているときは（１２３０−Ｎ）、このインタフェースが使用されて付加デバイスを制御する（１２４０）。複数のインタフェースが受け取られているときは（１２３０−Ｙ）、図１４に示されるインタフェース選択機構を起動して（１２５０）、選択されたインタフェースを使用する（１２６０）。
【００３０】
このプロセスは、特定のデバイスのためにカスタマイズされたインタフェースが、標準デバイスインタフェースに優先して使用されるのを可能とする。例えば、ある特定のＣＤプレイヤは、標準インタフェースパッケージとなりうるが、それが、例えばゼネラルモーターズのCadillacTM等のビークルに搭載される場合に、そのビークル製造業者が、全ての付加デバイスに一貫して備えたい外観や触感についての一定の基準を持つかもしれない。この場合は、そのビークルの製造業者は、付加デバイスの製造業者により提供されたＧＵＩビーンに優先して使用されるＧＵＩビーンをビークル中央制御部にインストールする。これらのＧＵＩビーンは、デバイスの能力にアクセスするためにデバイスにより提供された制御ビーンを使用可能である。また、製造業者は、ビークルのユーザにより、そのユーザの好みに応じて選択的に適用されうる複数の標準デバイスインタフェースを予めインストールすることを望む場合もある。
【００３１】
図１４は、複数のインタフェースから１つのインタフェースを選択するために使用されるプロセスのフローチャートである。これを達成するために、デバイスに格納された各インタフェースのリストが表示され（１３００）、またリストに挙げられたインタフェースのうちの１つを選択するように、ユーザに指示メッセージが出される。好ましい実施形態では、格納された各インタフェースは、図１７に関連して以下に更に説明されるように、拡張データ構造にリストされる。ここで、ユーザは、使用のための所望のデバイスインタフェースを選択し（１３１０）、プロセスがリターンされる（１３２０）。
【００３２】
図１５は、ネットワークからデバイスを除去するためのプロセスのフローチャートである。デバイスがそのバス接続部から除去されると（１４００）、ビークル中央制御部は、以前にインストールされたデバイスがもはや接続されていないことを検出する（１４１０）。デバイスが除去されたことを検出する幾つかの一般的に知られた方法があるが、これは、図１８と関連して説明されるプロセスを使用してなされるのが好ましい。デバイスが除去されていることが検出されると、以前にデバイスから受け取られたデバイスインタフェースがメモリから除去され（１４２０）、またデータ構造が更新されてデバイスエントリを除去する（１４３０）。
【００３３】
図１６は、JavaBeansTMに関連して使用されるシンプルデータ構造の概略図である。この例では、データ構造１５００は、キー−値のペアからなるシンプルテキストリストである。これは、オブジェクトネーム（キー）を記述するフィールド１５１０と、そのオブジェクトネームと対応付けられた値を含むフィールド１５２０とを含んでいる。この例において、値は、コラム１５１０に命名されたオブジェクトについてのリファレンス又はハンドルでありうる。ここに説明されるように、このデータ構造は、オブジェクトのバスからの除去を検出し、又は付加デバイスからバスを介して受け取られたオブジェクトを付加するために使用されうる。本発明によるデータ構造の使用は、標準デバイスインタフェースが付加デバイスからアップロードされてビークル中央制御部に格納されたときに、データ構造にネームを追加するだけでなく、デバイスがバスにまだ付加されているかを認識する際に走査するためのデータ構造の使用を含む。
【００３４】
図１７は、本発明の実施における使用に好ましい拡張データ構造の概略図である。この拡張データ構造は、キー−値ペアからなるシンプルリストを超えたものである。この実装形態では、デバイス形式が識別されうるフィールド１６１０と、制御ビーンリファレンスが含まれうるフィールド１６２０と、ＧＵＩビーンリファレンスがリストされうるフィールド１６３０と、制御及び／又はＧＵＩを目的とする複数のビーンが提供されている場合に使用される好ましいインタフェースを表示するフィールド１６４０とが設けられる。このデータ構造がテーブル形態で表示される一方で、同一の情報が、階層式のツリー等の他の方法で格納されうる。インタフェースは、Javaソースファイルに形成される特定のオブジェクト形式である。これは、メソッドコールの組についてのラベルを形成するが、メソッドコールを実行する具体例又はコードは分離している。具体化コードは、JavaBeanの形態であるのが好ましい。従って、１６２０に示されるような１以上のインタフェースが特定のデバイス形式と組み合わされ（１６１０）、またこれらのインタフェースがコラム１６３０にリストされる１以上のJavaBeansTMにより具体化されうる。
【００３５】
例えば、Javaインタフェースは、次の態様となる。
【数１】
0004509253.tif 000002
インタフェースからのスタートファンクションは、次のように提供される。
【００３６】
【数２】
0004509253.tif 000003
この例のＣＤプレイヤを提供するためのビジュアルコンポーネントは、次のように提供される。
【００３７】
【数３】
0004509253.tif 000004
インタフェースは、実行コードを含まないが、インタフェースとともに使用されるコール又はコマンドを形成することに留意するべきである。実際のJavaBeanTMオブジェクトは、インタフェースを提供する。従って、たいていのＡＰＩは、付加デバイスの製造業者により定義付けられた実コードにより実現され、付加デバイスからアップロードされる制御ビーン及びＧＵＩビーンの一部として提供されるインタフェース定義から構成される。
【００３８】
図１８は、ネットワークからデバイスを自動的に除去するための本発明によるプロセスのフローチャートである。通常のプラグアンドプレイが使用される場合は、スタートアップすると、その後は随意に、（ホットプラグアンドプレイが使用される場合は、）定期的に（１７００）、データ構造においてデバイスを表示する各オブジェクトについて（１７１０）、デバイスがまだ付加されているか点検が行われる（１７４０）。付加されていれば、次のオブジェクトが考慮される（１７３０）。付加されていなければ（１７４０−Ｎ）、オブジェクトがデータ構造から削除される（１７５０）。
【００３９】
図１９は、インタフェース又はインタフェースのコンポーネントをエディットするためのプロセスのフローチャートである。インタフェース機能が選択されると（１８００）、選択が行われうるデバイス形式のリストが提示される。選択が行われると（１８１０）、選択されたデバイス形式に対応付けられたJavaBeansTMのリストが表示される（１８２０）。これらは、図１７に示される強調されたデータ構造から得られうる。ここで、デバイスインタフェースを具体化するために望まれる特定のビーンが選択され（１８３０）、強調されたデータ構造は、ユーザ選択を反映するために修正される（１８４０）。
【００４０】
このように、JavaBeansTMを使用してプラグアンドプレイ及びホットプラグアンドプレイの機能性を提供し、またビークル中央制御部がバスに付加されるデバイスの形式を予め通知されていない場合でもプラグアンドプレイオペレーションを可能にする技術を開示した。
【００４１】
本発明は、詳細に説明され、また図示されたが、本発明は、図示及び例のみにより説明されたものであって、これに限定されるものではなく、本発明の趣旨及び範囲は、添付の請求項及びその均等物によってのみ限定されることが明らかに理解される。
【図面の簡単な説明】
【図１】本発明に係るネットワークビークルにおける構成要素の配置例を示す自動車の概略図
【図２】本発明に係るビークルネットワークの一例のブロック図
【図３】図２に示される本発明に係るビークル中央制御部の一例のブロック図
【図４】図３に示される本発明に係るビークル中央制御部のソフトウェアアーキテクチャの一例を示す図
【図５】本発明に係るビークルネットワークに付加されるデバイスの第１の例のブロック図
【図６】本発明に係るビークルネットワークに付加される他のデバイスの例及びその対応ソフトウェアアーキテクチャを示す図
【図７】情報が付加デバイスにおいてＲＯＭ（図５）又はメモリ（図７）に格納されうる本発明による好ましい方法を示す図
【図８】JavaBeansTMを開発し、また格納するための本発明による好ましいプロセスを示す図
【図９】ネットワークビークルにおいて使用される本発明によるグラフィカルユーザインタフェース（ＧＵＩ）の一例の概略図
【図１０】ビークル中央制御部が付加デバイスから標準デバイスインタフェースを得ることができる本発明によるステージを示す図
【図１１】図１０に関連して表されるプロセスを実施するために使用される本発明による第１のプロセスのフローチャート
【図１２】図１０に関連して表されるプロセスを実施するために使用される本発明による第２のプロセスのフローチャート
【図１３】ネットワーク又はバスを介して受け取られる１以上の標準デバイスインタフェースを取り扱うための本発明による好ましいプロセスのフローチャート
【図１４】複数のインタフェースから１つのインタフェースを選択するために使用される本発明によるプロセスのフローチャート
【図１５】本発明の一実施形態によるネットワークからデバイスを除去するためのプロセスのフローチャート
【図１６】オブジェクトについての情報を格納するための、JavaBeansTMに関連して使用されるシングルデータ構造の概略図
【図１７】本発明の実施における使用に好ましい拡張データ構造の概略図
【図１８】ネットワークからデバイスを自動的に除去するための本発明によるプロセスのフローチャート
【図１９】インタフェース又はインタフェースのコンポーネントを変更するためのプロセスのフローチャート
【符号の説明】
１００ ビークル
１１０ ビークル中央制御部
１２０ バス
１３０ 付加ビークルデバイス
３３０ タッチスクリーンディスプレイ
３４０ インタフェース
【図１】
0004509253.tif 000005
【図２】
0004509253.tif 000006
【図３】
0004509253.tif 000007
【図４】
0004509253.tif 000008
【図５】
0004509253.tif 000009
【図６】
0004509253.tif 000010
【図７】
0004509253.tif 000011
【図８】
0004509253.tif 000012
【図９】
0004509253.tif 000013
【図１０】
0004509253.tif 000014
【図１１】
0004509253.tif 000015
【図１２】
0004509253.tif 000016
【図１３】
0004509253.tif 000017
【図１４】
0004509253.tif 000018
【図１５】
0004509253.tif 000019
【図１６】
0004509253.tif 000020
【図１７】
0004509253.tif 000021
【図１８】
0004509253.tif 000022
【図１９】
0004509253.tif 000023