(57)【要約】【課題】移動体のコンピュータプログラムを更新するためのプログラム更新データの取得経路が複数競合する場合に、効率的な取得経路を選択する。【解決手段】制御手段は、媒体プログラムバージョンが最新バージョンと一致する場合に着脱可能記憶媒体に記憶された更新データを基にコンピュータプログラムを更新する処理を起動し、媒体プログラムバージョンが最新バージョンと一致しない場合に外部通信手段を通じて接続先から取得される更新データを基にコンピュータプログラムを更新する処理を起動する。【選択図】図１
2010140180.tif 000002
【特許請求の範囲】
【請求項１】
移動体外部の接続先と通信する外部通信手段と、
着脱可能記憶媒体の駆動装置と、
コンピュータプログラムを格納するプログラム記憶手段と、
前記着脱可能記憶媒体に記憶された更新データを基に前記コンピュータプログラムを更新する場合の更新後バージョンを示す媒体プログラムバージョンの情報を、前記着脱可能記憶媒体から取得する手段と、
前記外部通信手段を通じて移動体外部の接続先から、前記コンピュータプログラムを更新する場合の最新バージョンの情報を取得する手段と、
前記媒体プログラムバージョンが最新バージョンと一致する場合に前記着脱可能記憶媒体に記憶された更新データを基に前記コンピュータプログラムを更新する処理を起動し、前記媒体プログラムバージョンが前記最新バージョンと一致しない場合に前記外部通信手段を通じて前記接続先から取得される更新データを基に前記コンピュータプログラムを更新する処理を起動する制御手段と、を備える移動体のコンピュータプログラム更新装置。
【請求項２】
前記コンピュータプログラムの現バージョンの情報を前記プログラムのバージョン情報を記憶する記憶手段から収集するバージョン情報収集部をさらに備え、
前記制御手段は、前記着脱可能記憶媒体に記憶された更新データを基に前記コンピュータプログラムを更新するときに、前記現バージョンに適合する更新データを前記着脱可能記憶媒体から検索する手段をさらに有する請求項１に記載の移動体のコンピュータプログラム更新装置。
【請求項３】
前記制御手段は、
前記コンピュータプログラムを更新する際に、前記現バージョンから前記最新バージョンに更新するときの更新データを前記通信手段を通じて移動体外部の接続先から取得するときの第１の通信料金と、前記媒体プログラムバージョンから前記最新バージョンに更新するときの更新データを前記通信手段を通じて移動体外部の接続先から取得するときの第２の通信料金とを比較する手段と、
第１の通信料金より第２の通信料金の方が所定額以上少ない場合に、第１段階として前記着脱可能記憶媒体に記憶された更新データを基に前記媒体プログラムバージョンへの更新処理を実行した後、第２段階として前記外部通信手段を通じて移動体外部の接続先から取得される更新データを基に前記コンピュータプログラムを更新する処理を起動する手段と、を有する請求項２に記載の移動体のコンピュータプログラム更新装置。
【請求項４】
移動体外部の接続先と通信する外部通信手段と、
着脱可能記憶媒体の駆動装置と、
コンピュータプログラムを格納するプログラム記憶手段と、
前記コンピュータプログラムを更新するときに更新後の目的バージョンの指定を受け付ける手段と、
前記コンピュータプログラムの現バージョンの情報を前記プログラムのバージョン情報を記憶する記憶手段から収集するバージョン情報収集部と、
前記コンピュータプログラムを前記現バージョンから前記目的バージョンに更新するための更新データが前記着脱可能記憶媒体に記憶されている場合に、前記着脱可能記憶媒体に記憶された更新データを基に前記コンピュータプログラムを更新する処理を起動し、前記現バージョンから前記目的バージョンに更新するための更新データが前記着脱可能記憶媒体に記憶されていない場合に、前記外部通信手段を通じて移動体外部の接続先から取得される更新データを基に前記コンピュータプログラムを更新する処理を起動する制御手段と、を備える移動体のコンピュータプログラム更新装置。
【請求項５】
移動体に搭載されたコンピュータが、
着脱可能記憶媒体に記憶された更新データを基に前記コンピュータプログラムを更新する場合の更新後のバージョンを示す媒体プログラムバージョンの情報を、前記着脱可能記憶媒体から取得するステップと、
外部通信手段を通じて前記移動体外部の接続先から、前記コンピュータプログラムを更新する場合の最新バージョンの情報を取得するステップと、
前記媒体プログラムバージョンが最新バージョンと一致する場合に前記着脱可能記憶媒体に記憶された更新データを基に前記コンピュータプログラムを更新するステップと、
前記媒体プログラムバージョンが前記最新バージョンと一致しない場合に前記外部通信手段を通じて前記接続先から取得される更新データを基に前記コンピュータプログラムを更新するステップと、を実行する移動体のコンピュータプログラムを更新する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体のコンピュータプログラムを更新する技術に関する。
【背景技術】
【０００２】
従来、パーソナルコンピュータのような情報処理装置で実行されるコンピュータプログラムの更新（バージョンアップともいう）のため、様々な方法が提案されている。ところが、自動車のような移動体では、コンピュータプログラムを更新ためのプログラム更新データの取得経路が複数存在し、ユーザにとってどのような取得経路からプログラム更新データを取得すべきかを明確に判断できない場合がある。
【０００３】
例えば、車両に搭載される車載器には、着脱可能な記憶媒体の読み取り装置が接続されるとともに、携帯電話を通じた通信、あるいは、ＤＣＭ（Data Communication Module）による通信等の外部との通信手段が提供される。このような場合に、ユーザは、どの経路からプログラム更新データを取得すべきか、とまどうことがあり、最新のコンピュータプログラム、あるいは、所望するバージョンのコンピュータプログラムを必ずしも効率的には入手できていない。
【特許文献１】特開２００３−３３０８４９号公報
【特許文献２】特開平８−３０５６２４号公報
【特許文献３】特開２００３−６７１９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、移動体のコンピュータプログラムを更新するためのプログラム更新データの取得経路が複数競合する場合に、効率的な取得経路を選択する技術を提供することにある。
【課題を解決するための手段】
【０００５】
本発明は前記課題を解決するために、以下の手段を採用した。すなわち、本発明の一態様は、移動体のコンピュータプログラムを更新する更新装置として例示できる。本更新装置は、移動体外部の接続先と通信する外部通信手段と、着脱可能記憶媒体の駆動装置と、コンピュータプログラムを格納するプログラム記憶手段とを有する。また、本更新装置は、着脱可能記憶媒体に記憶された更新データを基にコンピュータプログラムを更新する場合の更新後バージョンを示す媒体プログラムバージョンの情報を、着脱可能記憶媒体から取得する手段と、外部通信手段を通じて移動体外部の接続先から、コンピュータプログラムを更新する場合の最新バージョンの情報を取得する手段と、制御手段とを有する。そして、制御手段は、媒体プログラムバージョンが最新バージョンと一致する場合に着脱可能記憶媒体に記憶された更新データを基にコンピュータプログラムを更新する処理を起動し、媒体プログラムバージョンが最新バージョンと一致しない場合に外部通信手段を通じて接続先から取得される更新データを基にコンピュータプログラムを更新する処理を起動する。したがって、本更新装置によれば、着脱可能記憶媒体から最新バージョンに更新できる場合には、極力通信手段によって移動体外部の接続先との通信を抑制し、通信に要するコストの抑制を図ることができる。
【０００６】
また、上記制御手段は、外部通信手段による接続先から更新データを取得するときに、
外部通信手段として定額料金にて課金する第１通信手段と従量料金にて課金する第２通信手段とが利用可能な場合に、第１通信手段を通じて移動体外部の接続先から更新データを取得するようにしてもよい。本更新装置によれば、移動体外部の接続先と通信する場合には、定額料金を優先し、通信に要するコストの抑制を図ることができる。
【０００７】
また、制御手段は、外部通信手段による接続先から更新データを取得するときに、外部通信手段として複数の通信手段の利用が可能な場合に、更新データの取得に必要な通信費用が少ない通信手段を通じて更新データを取得するようにしてもよい。本更新装置によれば、移動体外部の接続先と通信する場合には、通信に要するコストの抑制を図ることができる。
【０００８】
また、本更新装置は、コンピュータプログラムの現バージョンの情報をプログラムのバージョン情報を記憶する記憶手段から収集するバージョン情報収集部をさらに備えてもよい。そして、制御手段は、着脱可能記憶媒体に記憶された更新データを基にコンピュータプログラムを更新するときに、現バージョンに適合する更新データを着脱可能記憶媒体から検索する手段をさらに有してもよい。本更新装置によれば、現バージョンに適合する更新データを取得できる。
【０００９】
また、制御手段は、コンピュータプログラムを更新する際に、現バージョンから最新バージョンに更新するときの更新データを通信手段を通じて移動体外部の接続先から取得するときの第１の通信料金と、媒体プログラムバージョンから最新バージョンに更新するときの更新データを通信手段を通じて移動体外部の接続先から取得するときの第２の通信料金とを比較する手段と、第１の通信料金より第２の通信料金の方が所定額以上少ない場合に、第１段階として着脱可能記憶媒体に記憶された更新データを基に媒体プログラムバージョンへの更新処理を実行した後、第２段階として外部通信手段を通じて移動体外部の接続先から取得される更新データを基にコンピュータプログラムを更新する処理を起動する手段と、を有してもよい。本更新装置によれば、移動体外部の接続先と通信する場合では、極力、着脱可能記憶媒体内の更新データを有効活用し、通信に要するコストの抑制を図ることができる。
【００１０】
また、本発明の他の態様は、移動体外部の接続先と通信する外部通信手段と、着脱可能記憶媒体の駆動装置と、コンピュータプログラムを格納するプログラム記憶手段と、コンピュータプログラムを更新するときに更新後の目的バージョンの指定を受け付ける手段と、コンピュータプログラムの現バージョンの情報をプログラムのバージョン情報を記憶する記憶手段から収集するバージョン情報収集部とを備えるようにしてもよい。そして、制御部が、コンピュータプログラムを現バージョンから目的バージョンに更新するための更新データが着脱可能記憶媒体に記憶されている場合に、着脱可能記憶媒体に記憶された更新データを基にコンピュータプログラムを更新する処理を起動し、現バージョンから目的バージョンに更新するための更新データが着脱可能記憶媒体に記憶されていない場合に、外部通信手段を通じて移動体外部の接続先から取得される更新データを基にコンピュータプログラムを更新する処理を起動すればよい。本更新装置によれば、ユーザから指定された目的バージョンとするため、極力着脱可能記憶媒体の更新データで更新できない場合に、外部通信手段を通じて移動体外部の接続先から更新データを取得し、極力、通信コストの抑制を図ることができる。
【発明の効果】
【００１１】
本発明によれば、移動体のコンピュータプログラムを更新するためのプログラム更新データの取得経路が複数競合する場合に、効率的な取得経路を選択することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明を実施するための最良の形態（以下、実施形態という）に係る情報システムについて説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成には限定されない。
＜システムの概要＞
図１に、本情報システムのハードウェアおよび機能の構成図を例示する。本情報システムは、車両、船舶、航空機等の移動体に搭載されるコンピュータシステムである。ここでは、移動体は、例えば、車両であり、情報システムは、車載器であることを想定して説明する。
【００１３】
図１のように、本情報システムは、マスタユニット１とスレーブユニット２を含む。マスタユニット１とスレーブユニット２は、車載ＬＡＮで接続されている。マスタユニット１は、ＣＰＵ、メモリ、入出力インターフェース等が筐体に格納されたものである。メモリには、揮発性のＤＲＡＭ（Dynamic Random Access Memory）と、不揮発性のＲＯＭ（Read Only Memory）とが含まれる。ＤＲＡＭには、主として、ＣＰＵが処理するデータが格納される。ＲＯＭ（本発明のプログラム記憶手段に相当）は、例えば、フラッシュメモリで構成され、情報の更新が可能となっている。ＲＯＭには、ＣＰＵが実行するコンピュータプログラム、システムの制御パラメータ等が格納される。ＣＰＵは、メモリ上に実行可能に展開されたコンピュータプログラムを実行し、マスタユニット１としての機能を提供する。
【００１４】
図１では、そのような機能の例として、バージョン情報収集部１１、プログラム更新部１２、通信部１３（本発明の外部通信手段に相当）、車載ＬＡＮ通信部１４、およびデータダウンロード選択部１５が示されている。このうち、通信部１３は、無線通信インターフェース１７を通じて、外部ネットワーク４にアクセスする。そして、無線通信部１３は、例えば、外部ネットワーク上のセンタサーバ３から、本情報システム内のコンピュータプログラムの最新バージョンに関する情報、および本情報システム内のコンピュータプログラムをバージョンアップするときに必要な更新データを取得する。
【００１５】
図１では、無線通信インターフェース１７は、携帯電話およびＤＣＭによって、外部ネットワークに接続可能となっている。ただし、無線通信インターフェース１７は、他の構成、例えば、無線ＬＡＮインターフェースであってもよい。また、外部ネットワークは、無線通信インターフェース１７からアクセスされる無線基地局装置あるいは路上機等と、インターネット等を構成するコアネットワーク（基幹通信ネットワーク）とを含む。
【００１６】
また、図１では、マスタユニット１に、着脱可能記憶媒体駆動装置１６が接続されている。より具体的には、着脱可能記憶媒体駆動装置１６は、図示しない入出力インターフェースを介してマスタユニット１のＣＰＵと接続されている。マスタユニット１のＣＰＵは、図示しない制御プログラムを実行し、着脱可能記憶媒体駆動装置１６との間で、データを入出力する。
【００１７】
着脱可能記憶媒体駆動装置１６は、例えば、ＣＤ（Compact Disc）、ＤＶＤ（Digital Versatile Disk）、ブルーレイディスク等の駆動装置である。また、着脱可能記憶媒体駆動装置１６としては、フラッシュメモリカードの入出力装置であってもよい。
【００１８】
また、車載ＬＡＮ通信部１４は、図示しない車載ＬＡＮインターフェースを通じて車載ＬＡＮにアクセスし、スレーブユニット２と通信する。
【００１９】
バージョン情報収集部１１は、マスタユニット１にインストールされたメモリ（本発明のバージョン情報を記憶する記憶手段に相当）上の各種コンピュータプログラムの現バージョン情報を収集する。さらに、バージョン情報収集部１１は、車載ＬＡＮを通じて接続
されたスレーブユニット２から、スレーブユニット２にインストールされている各種プログラムの現バージョン情報を収集する。現バージョン情報とは、マスタユニット１あるいはスレーブユニット２にインストールされている各種のコンピュータプログラムごとに、それらがどのバージョンであるかを示す情報である。
【００２０】
データダウンロード選択部１５は、通信部１３または着脱可能記憶媒体駆動装置１６から、コンピュータプログラムのバージョンアップに必要な更新データが格納されたファイル（以下、更新ファイルという）を取得する。プログラム更新部１２は、データダウンロード選択部１５が取得した更新ファイルを基に、マスタユニット１またはスレーブユニット２のコンピュータプログラムをバージョンアップする。ここで、バージョンアップとは、コンピュータプログラムの一部または全部を新たなものに置き換えることをいう。
【００２１】
本情報システムでは、バージョンアップに使用される更新データは、コンピュータプログラムのバージョン間の差分データを含む。したがって、ここでは、バージョンアップは、主として、バージョン前のコンピュータプログラムに差分データを追加し、あるいは差分データでプログラムを変更することによって新たなコンピュータプログラムを作成するこという。バージョンアップされたコンピュータプログラムは、メモリ（ＲＯＭ）に、実行可能な形式で展開される。本実施形態では、バージョンアップをプログラムの更新ともいう。
【００２２】
プログラム更新部１２は、無線通信インターフェース１７または着脱可能記憶媒体駆動装置１６を通じて取得された更新データにしたがって、マスタユニット１のコンピュータプログラムをバージョンアップする。
【００２３】
さらに、図１には示していないが、マスタユニット１には、入出力インターフェースを通じて、タッチパネル、押しボタン、リモートコントローラ等の操作部が接続されている。これらの操作部は、ユーザの操作を検知して、入出力インターフェースを通じてＣＰＵに報告する。また、マスタユニット１には、ビデオインターフェースを通じて、図示しないモニタが接続されている。モニタは、例えば、液晶ディスプレイ、エレクトロルミネッセンスパネル等である。モニタには、ＣＰＵからのグラフィックスオブジェクト（アイコン等）、あるいは、種々のメッセージ等が表示される。
【００２４】
スレーブユニット２は、直接外部ネットワーク４に接続されていないこと、および、着脱可能記憶媒体駆動装置１６が接続されていないことを除いて、マスタユニット１と同様の構成である。スレーブユニット２は、例えば、アンプ、デジタルテレビ等の制御装置である。１つのマスタユニット１に対して、１または複数のスレーブユニット２が接続される。
【００２５】
さらに、スレーブユニット２は、制御対象機器、あるいは、実現する機能の複雑さに応じて、さらに、階層的に構成される。図１の例では、スレーブユニット２は、親マイコン２０と子マイコン２６を含む。親マイコン２０と子マイコン２６は、共に、ＣＰＵ、メモリ、入出力インターフェース等を含む。親マイコン２０と子マイコン２６も、マスタユニット１と同様、ＣＰＵがメモリ上のコンピュータプログラムを実行することによって、それぞれの機能を実現する。
【００２６】
例えば、親マイコン２０は、車載ＬＡＮ通信部２１、プログラム更新部２２，バージョン情報収集部２３，通信部２４を含む。車載ＬＡＮ通信部２１、プログラム更新部２２の機能は、マスタユニット１の車載ＬＡＮ通信部１４、プログラム更新部１２の機能と同様である。バージョン情報収集部２３は、スレーブユニット２内で収集したコンピュータプログラムの現バージョン情報をマスタユニット１のバージョン情報収集部１１に報告する
。通信部２４は、親マイコン２０と子マイコン２６との通信機能を提供する。通信部２４は、例えば、スレーブユニット２内のバスにアクセスし、子マイコン側の通信部２７と通信する。
【００２７】
子マイコン２６は、通信部２７およびプログラム更新部２８を有する。通信部２７およびプログラム更新部２８の機能は、親マイコン２０の通信部２４およびプログラム更新部２２と同様である。
【００２８】
センタサーバ３は、各種データベースを有し、マスタユニット１，スレーブユニット２等に搭載されたコンピュータプログラム、およびそれらのコンピュータプログラムのバージョン情報を保持する。また、センタサーバ３は、それらのコンピュータプログラムのバージョンの管理情報（バージョンアップの系列、それぞれのバージョンに必要な更新データのファイル名等）を管理している。また、センタサーバ３は、それらのコンピュータプログラムのバージョン間での比較を実行する比較部を有する。このような構成により、センタサーバ３は、外部ネットワークを通じてアクセスするマスタユニット１に対して、バージョンの系列等の管理情報、および、バージョンアップに必要な更新データを提供する。また、センタサーバ３は、ユーザがインターネット上のパーソナルコンピュータからアクセスしたときに、同様に、バージョンアップに必要な更新データを提供する。
【００２９】
ユーザは、インターネット上のパーソナルコンピュータから更新データを取得した場合には、その更新ファイルを着脱可能記憶媒体に格納することで、着脱可能記憶媒体駆動装置１６を通じて、マスタユニット１に読み取らせることができる。なお、更新データは、着脱可能記憶媒体に格納された状態で情報システムの製造販売業者から配布される場合もある。
【実施例１】
【００３０】
図２から図６を参照して、本発明の実施例１に係る情報システムを説明する。本情報システムは、図１に示したものと同様の構成である。図２は、マスタユニット１のＣＰＵ（以下、単にマスタユニット１という）が取得する更新データ取得経路の判定テーブルを例示する図である。更新データ取得経路の判定テーブルは、マスタユニット１が、ユーザからコンピュータプログラムのバージョンアップを要求されたときに、着脱可能記憶媒体駆動装置１６、および無線通信インターフェース１７にアクセスして収集した情報を基に作成される。作成された更新データ取得経路の判定テーブルは、マスタユニット１のメモリに記憶される。
【００３１】
更新データ取得経路の判定テーブルは、図２の表の各行に相当するレコードを有する。それぞれのレコードは、着脱可能記憶媒体（図２の例では、更新ディスクとして例示）上の更新データの有無、ＤＣＭ接続有無、携帯電話接続有無、および取得経路のフィールド（要素ともいう）を含む。各フィールで○印は、「有り」を示す。また、「−」は、「無し」を示す。したがって、これらフィールドの「有」「無」を組み合わせると、更新データ取得経路の判定テーブルは、合計８個のレコードを含むことになる。また、それぞれの組み合わせに対して、取得経路のフィールドには、どの取得経路から更新データを取得すべきかが指定されている。
【００３２】
例えば、更新ディスク上に更新データが有り、ＤＣＭ接続可能であり、携帯電話による接続が可能である場合には、取得経路は更新ディスクに決定される。また、更新ディスクがない、あるいは、更新ディスク上に更新データがない場合で、ＤＣＭ接続可能であり、かつ、携帯電話による接続が可能である場合には、ＤＣＭが取得経路に決定される。ここで、携帯電話よりも、ＤＣＭを優先するのは、ＤＣＭの通信料金が固定定額料金であることを想定しているためである。あるいは、ＤＣＭの通信料金が携帯電話よりも低額である
ことを想定したためである。一方、携帯電話は、更新ディスクおよびＤＣＭから更新データを取得できない場合にだけ、取得経路として選択される。
【００３３】
図３は、マスタユニット１が着脱可能記憶媒体（更新ディスクともいう）から取得する更新データファイルのファイルヘッダ情報の例である。ここでは、ある特定のプログラムのバージョンの更新に使用される更新ファイルを例に説明する。ただし、ここでいうプログラムのバージョンをシステム（複数プログラムの集合）のバージョンとし、更新データをシステム全体の更新データとしても、本実施例の構成で処理できる。
【００３４】
この例では、更新ファイル１には、バージョン１からバージョン４にアップデートするためのデータが格納されており、その情報がファイルヘッダ情報から収集されている。同様に、更新ファイル２には、バージョン１からバージョン２にアップデートするためのデータが格納されており、更新ファイル３には、バージョン２からバージョン３にアップデートするためのデータが格納されており、更新ファイル４には、バージョン３からバージョン４にアップデートするためのデータが格納されている。
【００３５】
今、マスタユニット１の該当するプログラムのバージョンが２であるとすると、図３で特定される着脱可能記憶媒体の更新ファイルで使用できるのは、ファイル３だけである。なお、例えば、マスタユニット１のシステムのバージョン２であり、図３で特定される着脱可能記憶媒体には、システム全体の更新ファイルが格納されている場合も同様である。
【００３６】
図４は、マスタユニット１が実行するバージョンアップ処理の例である。この処理を実行するマスタユニット１のＣＰＵが本発明の制御手段に相当する。この処理では、マスタユニット１は、まず、現バージョン情報を取得する。現バージョンは、マスタユニット１のメモリ上の所定領域から取得できる。例えば、プログラムのバージョンアップのたびに、メモリ上の所定のアドレス（例えば、管理テーブル）に登録しておけばよい。
【００３７】
次に、マスタユニット１は、ＤＣＭまたは携帯電話によりセンタサーバ３にアクセス可能であるか否かを判定する（Ｓ２）。ＤＣＭまたは携帯電話によりセンタサーバ３にアクセス可能である場合、マスタユニット１は、ＤＣＭまたは携帯電話によりセンタサーバ３にアクセスし、現在の最新のバージョン情報を取得する（Ｓ３）。
【００３８】
次に、マスタユニット１は、着脱可能記憶媒体から更新ファイルのファイルヘッダ情報を読み取る（Ｓ４）。そして、マスタユニット１は、着脱可能記憶媒体からの読み取りが正常か否かを判定する（Ｓ５）。読み取りが正常に完了した場合、マスタユニット１は、着脱可能記憶媒体の更新ファイルのファイルヘッダから更新前後のバージョンの組み合わせ（図３参照）を取得する（Ｓ６）。
【００３９】
そして、マスタユニット１は、着脱可能記憶媒体で最新バージョンが取得可能であるか否かを判定する（Ｓ７）。具体的には、着脱可能記憶媒体に記憶された更新データによる更新後のバージョンが最新バージョンと一致するか否かを判定する。Ｓ６およびＳ７の処理を実行するマスタユニット１のＣＰＵが本発明の検索する手段に相当する。着脱可能記憶媒体で最新バージョンが取得可能でない場合、マスタユニット１は、ＤＣＭまたは携帯電話からのバージョンアップを実行する（Ｓ８）。Ｓ８の詳細は、別途図５にしたがって説明する。
【００４０】
一方、着脱可能記憶媒体で最新バージョンが取得可能である場合、マスタユニット１は、着脱可能記憶媒体からの最新バージョンへのバージョンアップを実行する。この場合には、マスタユニット１は、着脱可能記憶媒体から更新ファイルを読み出す。そして、その更新ファイルにしたがって、マスタユニット１内のバージョンアップを実行する。さらに
、マスタユニット１は、その更新ファイルを該当するスレーブユニット２に引き渡し、スレーブユニット２（プログラム更新部２２）に、バージョンアップを実行させる。
【００４１】
また、Ｓ２の判定で、ＤＣＭまたは携帯電話でのセンタサーバ３へのアクセスができない場合、着脱可能記憶媒体からのバージョンアップ処理を実行する（Ｓ９）。Ｓ８の詳細は、別途図６にしたがって説明する。
【００４２】
また、Ｓ５の判定で、着脱可能記憶媒体の読み取りが正常にできない場合、または、着脱可能記憶媒体で最新バージョンが取得可能でない場合、マスタユニット１は、ＤＣＭまたは携帯電話からのバージョンアップを実行する（Ｓ９）。この処理は、Ｓ８の場合と同様であり、別途図５にしたがって説明する。
【００４３】
図５に、ＤＣＭまたは携帯電話からのバージョンアップ処理（図４のＳ８またはＳ１０の詳細）を例示する。この処理では、マスタユニット１は、ＤＣＭでの通信が可能か否かを判定する（Ｓ８１）。ＤＣＭでの通信が可能である場合、マスタユニット１は、センタサーバ３の情報から、バージョンアップに必要な更新ファイルの転送データ量を取得し、通信料金を算出する（Ｓ８２）。転送データ量および通信料金は、例えば、モニタを通じてユーザに表示される。そして、ユーザが了解した旨（ＯＫ）を入力すると（Ｓ８３でＹＥＳの場合）、マスタユニット１は、ＤＣＭによるバージョンアップを実行する（Ｓ８４）。さらに、マスタユニット１は、その更新ファイルを該当するスレーブユニット２に引き渡し、スレーブユニット２（プログラム更新部２２）に、バージョンアップを実行させる。一方、ユーザが了解しない場合（例えば、キャンセルを指定した場合）には、マスタユニット１は処理を終了する。
【００４４】
一方、Ｓ８１の判定で、ＤＣＭでの通信ができない場合、マスタユニット１は、携帯電話での通信が可能か否かを判定する（Ｓ８５）。携帯電話での通信が可能である場合、マスタユニット１は、バージョンアップに必要な更新ファイルの転送データ量を取得し、通信料金を算出する（Ｓ８６）。転送データ量および通信料金は、例えば、モニタを通じてユーザに表示される。そして、ユーザが了解した旨を入力すると（Ｓ８７でＹＥＳの場合）、マスタユニット１は、携帯電話によるバージョンアップを実行する（Ｓ８８）。この処理はＳ８４と同様である。一方、ユーザが了解しない場合（例えば、キャンセルを指定した場合）には、マスタユニット１は処理を終了する。
【００４５】
図５の処理では、まず、ＤＣＭでの通信が可能であるか否かが判断され、可能でない場合に携帯電話の通信が可能であるか否かが判定される（Ｓ８１、Ｓ８５参照）。すなわち、図５の処理では、ＤＣＭの方が、携帯電話より通信コストが少ないことを前提として、ＤＣＭによる通信を携帯電話による通信よりも優先して利用する処理が実現されている。例えば、ＤＣＭの方が、単位データ量当たりの通信料金が低額であることを前提としている。また、ＤＣＭが、固定の定額料金で課金され、携帯電話が従量料金で課金されることを前提としている。しかし、このような処理に代えて、複数の通信手段について、更新データに要する料金（Ｓ８２およびＳ８６の算出結果）を比較し、通信コストの低額な通信手段を選択する処理としてもよい。
【００４６】
図６に、着脱可能記憶媒体からのバージョンアップ処理（図４のＳ９）の詳細を例示する。この処理では、マスタユニット１は、着脱可能記憶媒体上の更新ファイルからヘッダ情報を取得する（Ｓ９１）。
【００４７】
次に、マスタユニット１は、現バージョン情報と、更新ファイルのバージョンアップ対象の旧バージョン情報（バージョンアップ前のプログラムのバージョン情報）を比較する（Ｓ９２）。そして、現バージョン情報と、更新ファイルのバージョンアップ対象の旧バ
ージョン情報が一致する場合（Ｓ９３でＹＥＳの場合）、その更新ファイルをバージョンアップ対象の更新ファイルとして記録する（Ｓ９４）。
【００４８】
次に、マスタユニット１は、次の更新ファイルが着脱可能記憶媒体にあるか否かを判定する（Ｓ９５）。そして、次の更新ファイルがある場合、マスタユニット１は、制御をＳ９１に戻す。一方、次の更新ファイルがない場合、マスタユニット１は、更新ファイルの候補のうち、バージョンアップ後のバージョンが最新バージョンとなる更新ファイルを読み出し、バージョンアップを実行する（Ｓ９６）。
【００４９】
以上述べたように、本実施例によれば、本情報システムは、着脱可能記憶媒体、ＤＣＭ、携帯電話等の様々な取得経路のうち、最も効率よく経済的に、バージョンアップを実行できる取得経路を選択できる。
【００５０】
なお、上記処理では、いずれかの取得経路が決定されるとバージョンアップが実行される処理としたが、単に更新ファイルを取得するまでの処理としてもよい。そして、更新ファイルが取得された後のバージョンアップの時期は、ユーザ操作によって決定するようにしてもよい。
【００５１】
また、上記実施形態では、通信媒体としては、ＤＣＭ、携帯電話を例示した。しかし、本発明の実施は、このような通信媒体に限定される訳ではない。例えば、無線ＬＡＮ、ＰＨＳ（Personal Handyphone System）等を用いてもよい。すなわち、これらの通信媒体を使用した場合の転送データ量に対する通信料金の情報を取得しておき、最も効率よく経済的に、バージョンアップを実行できる通信媒体を優先するように取得経路の選択処理を実行すればよい。
【００５２】
また、上記処理では、最新バージョンまでバージョンアップする処理例を説明した。しかし、単に、最新バージョンまでバージョンアップする処理に代えて、ユーザが所望するバージョンアップ後のバージョンを入力できるようにしてもよい。そして、マスタユニット１およびスレーブユニット２が、ユーザ指定のバージョンまで、コンピュータプログラムをバージョンアップするようにしてもよい。なお、その場合の処理手順では、最新バージョンが、ユーザ所望のバージョンに変わること以外は、図４−６と同様である。なお、具体的な処理例は、実施例４で説明する。
【実施例２】
【００５３】
図７により、本発明の実施例２を説明する。実施例１では、着脱可能記憶媒体で、最新バージョンまでバージョンアップできない場合に、ＤＣＭまたは携帯電話等の通信インターフェース１７を通じてバージョンアップする手順を示した。本実施例では、そのような処理に代えて、一旦着脱可能記憶媒体で途中バージョン（本発明の媒体プログラムバージョンに相当）までバージョンした場合に、その後のＤＣＭまたは携帯電話等の通信インターフェース１７を通じたバージョンアップの転送データ量、あるいは、通信料金を削減できるか、否かを判定する。そして、一旦着脱可能記憶媒体で途中バージョンまでバージョンアップした場合に、費用を削減できる場合に、着脱可能記憶媒体で途中バージョンまでバージョンアップする。他の手順は、実施例１と同様である。そこで、実施例１と同様の構成および処理については、同様の符号を用いて説明を省略する。
【００５４】
図７は、実施例２のバージョンアップ処理の例である。この処理では、Ｓ７Ａ−Ｓ７Ｃの処理が追加されている点で、図４と相異する。すなわち、Ｓ７の判定で、着脱可能記憶媒体で最新バージョンの更新ファイルが取得できない場合、マスタユニット１は、着脱可能記憶媒体によるバージョンアップ後、最新バージョンまでの更新データ量を確認する（Ｓ７Ａ）。この処理は、以下のように実行できる。今、例えば、バージョンアップ前の現
バージョンをＶ０とする。
（１）現バージョンＶ０に対して、着脱可能記憶媒体でバージョンアップ可能なバージョンＶＮを着脱可能記憶媒体内の更新ファイルのファイルヘッダ情報から読み出す。
（２）また、例えば、ＤＣＭまたは携帯電話等でセンタサーバ３にアクセスし、現バージョンＶ０から最新バージョンまでバージョンアップする場合の転送データ量Ｑ１を読み出す。
（３）同様にセンタサーバ３にアクセスし、バージョンＶＮから最新バージョンまでバージョンアップする場合の転送データ量Ｑ２を読み出す。
【００５５】
そして、マスタユニット１は、現バージョンＶ０から最新バージョンまでバージョンアップする場合の転送データ量Ｑ１よりも、着脱可能記憶媒体でバージョンＶＮまでバージョンアップした後、そのバージョンＶＮから最新バージョンまでバージョンアップする場合の転送データ量Ｑ２の方が小さくなるか否かを判定する（Ｓ７Ｂ）。
【００５６】
そして、Ｑ２の方がＱ１よりも小さくなる場合、マスタユニット１は、まず、着脱可能記憶媒体からのバージョンアップを実行する（Ｓ７Ｃ）。次に、マスタユニット１は、ＤＣＭまたは携帯電話からのバージョンアップを実行する（Ｓ８）。
【００５７】
以上述べたように、本実施例の情報システムによれば、たとえ、着脱可能記憶媒体にて、最新バージョンまでバージョンアップでない場合でも、一旦着脱可能記憶媒体で途中バージョンまでバージョンアップした方が転送データ量が少なくなり、通信料金が低減される場合には、まず、着脱可能記憶媒体にて、途中バージョンまでバージョンアップし、コストを低減できる。なお、この場合の判断として、通信料金の削減額が基準値に満たない場合には、着脱可能記憶媒体を用いることなく、直ちにＤＣＭまたは携帯電話からのバージョンアップ（Ｓ８の処理）を実行するようにしてもよい。また、本実施例の処理は、最新バージョンではなく、ユーザ所望のバージョンまでバージョンアップする場合でも同様に適用できる。
【実施例３】
【００５８】
図８を参照して本発明の実施例３を説明する。上記実施例１、２では、着脱可能記憶媒体、ＤＣＭまたは携帯電話を組み合わせて、最も経済的、かつ、最新バージョン（またはユーザ所望バージョン）に、移動体の情報システムに含まれるコンピュータプログラムをバージョンアップする手順を示した。しかし、通信データ量が基準値に達しない（または、その通信料金が基準値に達しない）場合に、着脱可能記憶媒体を使用することなく、センタサーバ３から更新ファイルをダインロードして、バージョンアップを実行するようにしてもよい。
【００５９】
図８に、そのような処理例を示す。図８では、図４に対してＳ３Ａ、３Ｂの処理が変更、追加されている。すなわち、マスタユニット１は、センタサーバ３にアクセスして、取得可能な最新バージョンを所得するとともに、それらの更新ファイルの通信データ量も取得する（Ｓ３Ａ）。
【００６０】
そして、マスタユニット１は、通信データ量が基準値以上か否かを判定する（Ｓ３Ｂ）。通信データ量が基準値以上の場合、マスタユニット１は、Ｓ４に制御を進める。一方、通信データ量が基準値に満たない場合、マスタユニット１は、制御をＳ８に進める。
【００６１】
以上述べたように、本実施例の情報システムによれば、軽微なデータ量の場合には、通信媒体からの更新ファイル取得を優先することで、少ない手順で最新バージョンを取得できる。なお、上記Ｓ３Ｂの判定を通信データ量ではなく、通信料金にて判定してもよい。
【実施例４】
【００６２】
図９を参照して本発明の実施例３を説明する。上記実施例１の図６、実施例２の図７では、着脱可能記憶媒体、ＤＣＭまたは携帯電話を組み合わせて、最も経済的、かつ、最新バージョンに、移動体の情報システムに含まれるコンピュータプログラムをバージョンアップする手順を示した。しかし、バージョンアップするバージョン、すなわちユーザが所望する目的バージョンが、最新バージョンとは限らない。そこで、本実施例では、ユーザ所望の目的バージョンにバージョンアップする処理例を説明する。他の構成および作用は、実施例１から実施例３と同様である。すなわち、本実施例の処理は、実施例１から３の処理と自在に組み合わせて移動体のコンピュータプログラムのバージョンアップに適用できる。
【００６３】
図９に、そのような処理例を示す。図８では、図４に対して、Ｓ１Ｃ、Ｓ７Ｃ、Ｓ８Ｃ、およびＳ１１Ｃの処理が変更されている。また、Ｓ３のセンタサーバ３へのアクセスが削除されている。すなわち、マスタユニット１は、現バージョン取得後（Ｓ１の後）、ユーザが所望する目的バージョンの指定を受け付ける（Ｓ１Ｃ）。この処理を実行するマスタユニット１のＣＰＵが本発明の指定を受け付ける手段に相当する。
【００６４】
そして、図４と同様、Ｓ２、Ｓ４−Ｓ６の処理の後（上述のようにセンタサーバ３から最新バージョン情報を取得するＳ３の処理は実行しなくもてよい）、着脱可能記憶媒体で目的バージョンの更新ファイルを取得可能か否か、を判定する（Ｓ７Ｃ）。そして、着脱可能記憶媒体で目的バージョンが取得可能でない場合、マスタユニット１は、ＤＣＭまたは携帯電話からのバージョンアップを実行する（Ｓ８Ｃ）。Ｓ８Ｃの詳細は、バージョンアップ後のバージョンがユーザ指定の目的バージョンである点を除いて、図５の処理と同様である。
【００６５】
一方、着脱可能記憶媒体で最新バージョンが取得可能である場合、マスタユニット１は、着脱可能記憶媒体からの目的バージョンへのバージョンアップを実行する（Ｓ１１Ｃ）。
【００６６】
以上述べたように、本実施例の処理によれば、最新バージョンにバージョンアップするのではなく、ユーザ指定の目的バージョンに効率的にバージョンアップできる。
【図面の簡単な説明】
【００６７】
【図１】情報システムのハードウェアおよび機能の構成図の例である。
【図２】更新データ取得経路の判定テーブルを例示する図である。
【図３】更新データファイルのファイルヘッダ情報の例である。
【図４】バージョンアップ処理の例である。
【図５】ＤＣＭまたは携帯電話からのバージョンアップ処理の例である。
【図６】着脱可能記憶媒体からのバージョンアップ処理の例である。
【図７】実施例２のバージョンアップ処理の例である。
【図８】実施例３のバージョンアップ処理の例である。
【図９】実施例４のバージョンアップ処理の例である。
【符号の説明】
【００６８】
１  マスタユニット  
２  スレーブユニット
３  センタサーバ
４  外部ネットワーク
１１、２３  バージョン情報収集部
１２、２２、２８  プログラム更新部
１３  通信部
１４、２１  車載ＬＡＮ通信部
１５  データダウンロード制御部
１６  着脱可能記憶媒体駆動装置
１７  通信インターフェース
２０  親マイコン
２４、２７  通信部  
２６  子マイコン
【図１】
2010140180.tif 000003
【図２】
2010140180.tif 000004
【図３】
2010140180.tif 000005
【図４】
2010140180.tif 000006
【図５】
2010140180.tif 000007
【図６】
2010140180.tif 000008
【図７】
2010140180.tif 000009
【図８】
2010140180.tif 000010
【図９】
2010140180.tif 000011