JP2007128432A - 車両用マルチメディア装置 - Google Patents

車両用マルチメディア装置 Download PDF

Info

Publication number
JP2007128432A
JP2007128432A JP2005322366A JP2005322366A JP2007128432A JP 2007128432 A JP2007128432 A JP 2007128432A JP 2005322366 A JP2005322366 A JP 2005322366A JP 2005322366 A JP2005322366 A JP 2005322366A JP 2007128432 A JP2007128432 A JP 2007128432A
Authority
JP
Japan
Prior art keywords
component
function
state
application
platform
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005322366A
Other languages
English (en)
Other versions
JP4892933B2 (ja
Inventor
Kazunori Fujimori
一憲 藤森
Toshikazu Oiwa
敏和 大岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2005322366A priority Critical patent/JP4892933B2/ja
Publication of JP2007128432A publication Critical patent/JP2007128432A/ja
Application granted granted Critical
Publication of JP4892933B2 publication Critical patent/JP4892933B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】アプリケーションの各機能の変更や修正が容易な車両用マルチメディア装置を提供すること。
【解決手段】ナビゲーション機能、音声・動画再生機能等の複数のアプリケーションコンポーネント25、24と、複数のアプリケーションコンポーネント25,24にそれぞれ対応した機能を提供する機能実装部22と、複数のアプリケーションコンポーネントの動作状態をそれぞれ制御する制御手段23とを有し、複数のアプリケーションコンポーネント25,24がそれぞれ独立に変更可能であることを特徴とする車両用マルチメディア装置を提供する。
【選択図】図3

Description

本発明は、車両用マルチメディア装置に関し、特に、マルチメディアを構成する複数の機能の実装及び変更が容易な車両用マルチメディア装置に関する。
車両にカーナビゲーションや音楽、動画の再生装置等が一体に搭載されたマルチメディア装置が提供されている。マルチメディア装置が搭載する各機能はアプリケーションソフトウェアをOS上で実行することで提供される(例えば、特許文献1参照。)。
図1は従来のカーナビゲーション装置の機能構成図を示す。ハードウェアとしてのCPU及びこのCPUで実行されるOSを基本プラットフォームとし、Java仮想マシン(VM)ソフトウェア(Javaは登録商標です。)を組み込むことで、特定のCPUやOSに依存せずJavaで開発したプログラムを実行することができる。JavaVMは、Java標準APIを有し、アプリケーション側でこのAPIを呼び出すことで、各種のデータ処理を実行することができる。
JavaVM上で動作するナビゲーションプログラムはナビゲーションに必要な機能、すなわち経路探索機能、案内支援機能(推奨経路の交差点での案内やカーブ路進入の際の速度警告など)、地図データアクセス機能、画面・地図表示機能がそれぞれ一つのまとまりをなして互いに機能分離され、それぞれ独立に存在している。そして、各機能は、地図データを利用して種々のサービスをユーザに提供するアプリケーションプログラムとJava仮想マシンとの間に介在し、アプリケーションプログラムがナビゲーションの基本的な機能を利用する場合には、これらの機能を呼び出して利用する。アプリケーションと各機能との間のインターフェイスは共通化されており、したがってアプリケーションプログラム側では、例えば地図データのフォーマットについての知識がなくても、共通化されたインターフェースを用いることで、容易に地図データを利用することが可能となる。また、ナビゲーションの基本的な機能がこのように分離独立して存在するため、例えば経路探索機能の一部を改良する必要が生じた場合にも、他の機能に影響を与えることなく、経路探索機能のプログラムだけを修正すればよく、短時間に修正することが可能となる。
特開2001−235334号公報
しかしながら、図1のような構成では各機能モジュールがインターフェイスと機能実装部とを一体に有しているため、機能実装部のロジックは変更せずにアプリケーションとのインターフェイスのみを修正する場合でも機能モジュール全体を更新する必要が生じる。機能モジュールを更新するような場合、公衆回線を利用して更新モジュールを配信することが多いが、機能モジュール全体を配信すると通信コストが過大となってしまう。
また、ナビゲーションだけでなく音声等の機能を提供するアプリケーションが存在するマルチメディア装置の場合、複数のアプリケーションを制御する機能がないため、複数のアプリケーションを切り替えて実行することができない。
また、複数のアプリケーションは複雑に依存関係を有しており、アプリケーションの追加に対する統一的な仕様も定まっていないため、アプリケーションを追加することが困難である。また、複数のアプリケーションの依存関係によっては、他のアプリケーションの修正も必要となってしまう。
本発明は、上記問題に鑑み、アプリケーションの各機能の変更や修正が容易な車両用マルチメディア装置を提供することを目的とする。
上記問題に鑑み、本発明は、ナビゲーション機能、音声・動画再生機能等の複数のアプリケーションコンポーネントと、複数のアプリケーションコンポーネントにそれぞれ対応した機能を提供する機能実装部と、複数のアプリケーションコンポーネントの動作状態をそれぞれ制御する制御手段(例えば、コンポーネント管理FW23)と、を有し、複数のアプリケーションコンポーネントがそれぞれ独立に変更可能である、ことを特徴とする車両用マルチメディア装置を提供する。
本発明によれば、複数のアプリケーションコンポーネントがそれぞれ独立に変更可能であることで、アプリケーションの各機能の変更や修正が容易な車両用マルチメディア装置を提供することができる。なお、特許請求の範囲におけるアプリケーションコンポーネントには、インターフェイスコンポーネントを含めてもよい。
また、本発明の一形態において、機能実装部とアプリケーションコンポーネントが動作するプラットフォームを有し、機能実装部はプラットフォームに依存した言語で記述され、アプリケーションコンポーネントはプラットフォームと異なるプラットフォームでも動作可能な言語で記述されている、ことを特徴とする。
本発明によれば、プラットフォームに依存しない部分はJavaのようなハードウェアに依存しない言語で記述するので種々のプラットフォームで高い互換性を確保でき、プラットフォームに依存する部分はプラットフォームに最適な形態で実装できるので、処理内容や処理速度を向上できる。
また、本発明の一形態において、機能実装部の第1のプラットフォーム(例えば図10の機能部100)とアプリケーションコンポーネントの第2のプラットフォーム(例えば図10のコンポーネント部200)とがネットワークを介して接続されている、ことを特徴とする。
本発明によれば、機能実装部を別体のプラットフォームに設け、相互にネットワークに接続したので、機能実装部を搭載する自由度が向上する。
また、本発明の一形態において、アプリケーションコンポーネントが機能実装部から機能の提供をうける場合、制御手段はアプリケーションコンポーネントが指定したアプリケーションコンポーネントの動作状態を制御する、ことを特徴とする。
本発明によれば、何らかの機能を実行する場合、制御手段がアプリケーションコンポーネントの動作状態を制御するので、複数のアプリケーションを切り替えて実行することができる。
また、本発明の一形態において、複数のアプリケーションコンポーネントは、該アプリケーションコンポーネントを開始又は停止するための共通のインターフェイスを有し、制御手段は、共通のインターフェイスを介してアプリケーションコンポーネントを制御する、ことを特徴とする。
本発明によれば、制御手段が共通インターフェイスを介して各コンポーネントを制御するので、開発者は機能実装部の構成を知悉していなくても共通のインターフェイスを記述することでアプリケーションを作成できる。
また、本発明の一形態において、動作状態は、アプリケーションコンポーネントの登録状態、開始状態又は停止状態であり、制御手段は、動作状態の遷移を制御することを特徴とする。
本発明によれば、制御手段がアプリケーションコンポーネントの登録状態、開始状態又は停止状態等の動作状態の遷移を制御することができるので、必要なコンポーネントを適宜実行できる。
また、本発明の一形態において、制御手段は、アプリケーションコンポーネントの開始、停止、インストール、アンインストール又はアップデートの少なくとも1つ以上を制御して前記動作状態を遷移させる、ことを特徴とする。
本発明によれば、制御手段が、開始、停止、インストール又はアンインストール等を制御するので、コンポーネントのインストール又はアンインストールを動的に行うことができる。
アプリケーションの各機能の変更や修正が容易な車両用マルチメディア装置を提供することができる。
以下、本発明を実施するための最良の形態について図面に基づき説明する。図2は本実施の形態の車両用マルチメディア装置の構成図を示す。GPS11は、GPS衛星からの信号に基づいて車両の現在位置を検出し、制御装置10に供給する。センサ12は、車速センサやジャイロセンサなどで構成され、検出値を制御装置10に供給する。ディスクプレーヤ13は、DVDやCDのデータを読み出して、映像及び音楽等を出力装置17から出力する。テレビ/ラジオユニット14は、UHFやVHFのテレビ放送電波や地上波デジタル放送を受信して、映像及び音楽等を出力装置17から出力する。また、AM、FM放送や地上波デジタルラジオ放送を受信して、音楽等を出力装置17から出力する。なお、テレビ/ラジオユニット104は準天頂衛星からの電波を受信するものであってもよい。通信ユニットは携帯電話、PHS等の移動体通信又は無線LAN等により、基地局やアクセスポイントに接続してネットワークから取得した情報を制御装置10へ供給する。また、ビーコン等により情報センタに蓄積されている渋滞情報その他の交通情報を取得して制御装置10に供給する。
制御装置10は、車両用マルチメディア装置を制御するための制御装置であり、CPU、ROM、RAM及びNVRAMなどにより構成される。CPUは記憶装置16に格納されているOSやJava VM、プログラム等を実行してカーナビゲーションなどのマルチメディア機能を実現する。記憶装置16はハードディスクドライブや書き換え可能な光ディスク、フラッシュメモリ等により構成され、上記のOS等や地図データ、ファイル、プログラムなどを格納している。
出力装置17はスピーカや液晶ディスプレイなどで構成され、スピーカからナビゲーションシステムの音声案内や音楽等を出力し、ディスプレイに地図データやDVD,テレビの映像を出力したり、操作するための操作メニューを表示する。操作装置22は、キーボードやマウスで構成され、ユーザがナビゲーションの目的地や経由地を入力したり、テレビやラジオの選局、カーナビやテレビ等の切替を行うために操作される。マイクロフォンを備えて音声により操作可能であってもよい。
制御装置10は、記憶装置16にインストールされた所定のプログラムを実行することで車両用マルチメディア装置の各機能を提供する。図3は本実施の形態の車両マルチメディア装置のシステム構成図の一例を示す。図3に示すように、車両用マルチメディア装置のプログラムはハードウェア及びOSからなるプラットフォーム21上で実行される。
プラットフォーム21上では、まず、ミドルウェア機能実装部(以下、単に機能実装部という)22が実行される。機能実装部22は各車載装置に必要な複数の機能として、ナビゲーション、地図・画面表示、音声認識・合成、音楽・動画再生、通信、その他の機能を実装した複数のミドルウェアモジュールである。ミドルウェアモジュールはプラットフォーム21のOS等に依存するプログラムである。
複数のインターフェイスコンポーネント(以下、I/Fコンポーネントという)24は、機能実装部22が提供する機能を、プラットフォーム21に依存しない形式で規定された機能に変換して複数のアプリケーションコンポーネントから利用可能にする。
アプリケーションコンポーネント(以下、アプリコンポーネントという)25は、I/Fコンポーネント24により変換された機能実装部22が提供する機能を利用して、アプリケーションコンポーネントが互いに要求する機能やユーザの操作により要求された処理結果を取得する。
なお、図3ではアプリケーションコンポーネント25は一つに記載されているが、実際にはI/Fコンポーネント24の各機能に対応してアプリケーションコンポーネント25も複数のI/Fコンポーネントから構成されている。また、後述するようにアプリコンポーネント25又はI/Fコンポーネント24から、コンポーネント管理フレームワーク23を呼び出す場合、アプリコンポーネント25とI/Fコンポーネント24に明確な区別はない。
コンポーネント管理フレームワーク(以下、コンポーネント管理FWという)23は、車両用マルチメディア装置が機能実装部22により提供される機能を利用するための制御手段であり、コンポーネント管理FW23はアプリコンポーネント25に指定された後述のコンポーネントパッケージを呼び出してその動作状態を制御する。なお、コンポーネント管理FW23はプラットフォーム21に依存しないように構成される。
このように、プラットフォームに依存する部分と依存しない部分とを分割し、コンポーネント管理FW23がI/Fコンポーネント24やアプリコンポーネント25を管理及び制御することで、機能の追加・更新を容易に行うことができる。
システム構成についてより詳細に説明する。図4は図3のシステム構成からナビゲーションの機能を抽出したシステム構成図である。なお、図4において図3と同一構成部分には同一の符号を付しその説明は省略する。
図4では、ハードウェア及びOSからなるプラットフォーム21については図3と同様であるが、ナビゲーション機能において機能実装部22に相当するナビ機能実装部22aがOS上に記載されている。ナビ機能実装部22aはプラットフォーム21に依存している(してもよい)ので、例えば、C/C++などプラットフォーム21のネイティブコードでプログラムが記述されたものである。
一方、プラットフォーム21に依存しないコンポーネント管理FW23及びI/Fコンポーネント24は、例えばJava言語でプログラムが記述されることが好適である。したがって、コンポーネント管理FW23及びI/Fコンポーネント24は、Java仮想マシン(Java VM)上でプログラムを動作させる。Java言語で記述することで、コンポーネント管理FW23及びI/Fコンポーネント24はプラットフォーム21に依存せず、Java VMが作動する他のプラットフォームでも実行可能となる。なお、ナビゲーション機能における、I/Fコンポーネント24をナビゲーションI/F24aと称する。
ナビアプリコンポーネント25aは、「指定地点情報取得依頼」や「指定地点までの経路探索依頼」をナビゲーションI/F24aに送出する。また、これらの依頼に応答してナビ機能実装部22aが取得した地点情報や経路情報をナビゲーションI/F24aから受信する。
ナビ機能実装部22aとナビゲーションI/F24aはJNI(Java Native Interface)により接続されている。JNIは、Java言語で開発されたプログラム(図4ではナビゲーションI/F24a)から、他の言語で開発されたネイティブコードのプログラム(図4ではナビ機能実装部22a)を利用するためのAPI(Aprication Interface)である。この場合、JNIはJavaとC/C++により作成されている。ナビ機能実装部22aとナビゲーションI/F24aは、JNIを介して互いにデータを受け渡すことができる。
ナビ機能実装部22aは、ネイティブコードでプログラムされた地点情報提供機能32と経路探索機能33を有する。地点情報提供機能32は、例えばGPSにより得られた緯度経度を住所に変換する機能である。また、経路探索機能33は地図データに基づき2つの地点の経路を探索する機能である。
ナビゲーションI/F24aは、地点情報提供機能32に対応した地点情報I/F35及び経路探索機能33に対応した経路探索I/F34を有する。地点情報I/F35は、地点情報提供機能32により得られた地点情報をプラットフォーム21に依存しない形式に変換する。同様に、経路探索I/F34は経路探索機能33により得られた経路情報をプラットフォーム21に依存しない形式に変換する。
I/Fコンポーネント24と機能実装部22は、このように適当な機能単位で分割されている。また、図4では地点情報と経路探索についただけ記載されているがこれら以外でも同様である。
このような構成であれば、プラットフォーム21に依存する機能実装部22ではネイティブコードにより高速かつ高機能な機能を提供でき、また、アプリコンポーネント25やI/Fコンポーネント24はプラットフォーム21に依存しないので、これらの更新や修正を容易に行うことができる。
I/Fコンポーネント24の動作状態の遷移について説明する。コンポーネント管理FW23は、I/Fコンポーネント24の起動、停止、インストール、アンインストール、アップデート等する場合に、これらの動作状態やその遷移を制御する。
図5は、コンポーネント管理FW23が管理するI/Fコンポーネント24の動作状態の遷移図を示す。図5では、I/FコンポーネントFW23が、未登録状態、登録状態、開始状態、停止状態、異常状態、更新中状態、の動作状態を取りうることを示している。
未登録状態とは、複数のうち所定のI/Fコンポーネントが記憶装置16に格納された状態やダウンロードされたが未だインストールされていない状態をいう。このような状態は車両の初期状態や所望のI/Fコンポーネントをダウンロードした場合に生じる。
登録状態とは、車両用マルチメディア装置がインストールされた状態、すなわちアプリコンポーネント25の要求によりすぐに実行可能な状態をいう。登録状態と未登録状態は双方向に遷移可能である。
開始状態とは、当該I/Fコンポーネントが実行中の状態であることを示す。具体的には後述する共通インターフェイスのStart()が呼び出された状態である。例えば、I/Fコンポーネント24が機能実装部22へ処理を依頼し処理結果を待っているような場合である。
停止状態とは、例えば、機能実装部22の処理結果を受け取りアプリコンポーネント25へ返した状態、すなわち所望の処理が終了した状態をいう。具体的には後述する共通インターフェイスのStop()が呼び出された状態である。
停止状態と開始状態は双方向に遷移可能であり、また、例えば停止状態のI/Fコンポーネントはアンインストール指示により未登録状態に遷移する。
異常状態とは、開始状態のI/Fコンポーネントが正常な処理を実行できない場合に生じる状態をいう。例えば、機能実装部22から処理結果が送られてこない場合(タイムアウト)や動作状態の情報そのものが喪失されるような場合など例外処理が発生した状態である。
更新中状態とは当該I/Fコンポーネントの更新を行っている状態であり、例えば、新しい機能を通信ユニット15を使用してダウンロードしている状態である。更新中状態に、例えば通信エラー等が生じ正常に更新が完了しない場合は異常状態に遷移する。また、更新中状態と停止状態は双方向に遷移可能である。
コンポーネント管理FW23は、各I/Fコンポーネント24の動作状態を制御し、図5のように動作状態を管理する。例えば、未登録状態のI/Fコンポーネントにインストール指示を出せばインストールされ登録状態に遷移する。登録状態のI/Fコンポーネントにアンインストール指示を出せばアンインストールされ未登録状態に遷移する。登録状態のI/Fコンポーネントに開始指示を出せば開始状態に遷移する。開始状態のI/Fコンポーネントに停止指示を出せば停止状態に遷移する。停止状態のI/Fコンポーネントに開始指示を出せば開始状態に遷移する。停止状態のI/FコンポーネントにUPDATE指示を出せば更新中状態に遷移する。更新が正常に終了すれば停止状態に遷移する。また、開始状態または更新中状態に例外処理が発生すれば異常状態に遷移する。
続いて、アプリコンポーネント25a又はナビゲーションI/F24aの動作状態の制御について説明する。
アプリコンポーネント25aから何らかの処理が依頼された場合、まず、コンポーネント管理FW23が処理依頼を受け取る。そして、コンポーネント管理FW23は依頼の処理内容に基づいて、複数のI/Fコンポーネント24から指定されたI/Fコンポーネントを指定して、処理をスタートさせる。
図6はI/Fコンポーネント24の構成を示すコンポーネントパッケージの一例を示す。なお、上述したようにコンポーネントパッケージはアプリコンポーネント25にインターフェイスを提供するものであるので、アプリコンポーネント25と共通に使用でき、コンポーネントパッケージはアプリコンポーネント25の構成と表現してもよい。
コンポーネントパッケージは、コンポーネント情報ファイル41、プログラムコード43及びプログラムが必要とするその他のデータ42を有している。コンポーネント情報ファイルは、コンポーネント識別子、コンポーネントのバージョン、コンポーネントの作成者などコンポーネントのプロパティを示す情報である。コンポーネント識別子はI/Fコンポーネント24において重複しない識別番号である。
また、プログラムコードは必須の構成としてすべてのI/Fコンポーネント24に共通となる共通インターフェイス(以下、単に共通I/Fという)であるstart()とstop()とを有する。コンポーネント管理FW23は、この共通I/Fを呼び出すことでそれぞれのI/Fコンポーネントの動作状態を制御する。
共通I/F(start()又はstop())はコンポーネント管理FW23以外から呼び出すことはできない仕様であるため、各I/Fコンポーネントはコンポーネント管理FW23によりその動作状態が制御される。
なお、プログラムコード43の外部提供機能インターフェイスは、例えば、システムの管理者(製造者)が当該コンポーネントパッケージをコンポーネント管理FW23以外から呼び出し可能とするためのインターフェイスであり、任意の構成である。
また、内部処理ロジックは、当該コンポーネントパッケージに特有の機能を記述したプログラムコードであり、ナビゲーションI/F24aであれば指定地点情報取得依頼をナビ機能実装部22aへ渡すためのプログラムコードとなる。
その他のデータは、当該コンポーネントパッケージで必要なデータやユーザに表示する静止画等が格納される任意の構成である。
コンポーネント管理FW23は、図6のようなI/Fコンポーネント24の構成に基づきI/Fコンポーネント24の動作状態を制御する。
コンポーネント管理FW23について説明する。図7はコンポーネント管理FW23の構成の一例を示す。コンポーネント管理FW23は、呼び出し可能なインターフェイス44、コンポーネント管理テーブル45及び機能インターフェイス管理テーブル46を有する。
呼び出し可能なインターフェイス44は、アプリコンポーネント25又はI/Fコンポーネント24からコンポーネント管理FW23を呼び出すためのインターフェイスである。コンポーネント管理FW23は、呼び出されたインターフェイスに応じてI/Fコンポーネントの動作状態を制御する。
「開始(コンポーネント識別子)」のインターフェイスが呼び出されれば、コンポーネント管理FW23はコンポーネント識別子で指定されるコンポーネントパッケージのstart()インターフェイスを呼び出す。
同様に、「停止(コンポーネント識別子)」のインターフェイスが呼び出されれば、コンポーネント管理FW23はコンポーネント識別子で指定されるコンポーネントパッケージのstop()インターフェイスを呼び出す。
「インストール(コンポーネントパッケージ)」のインターフェイスが呼び出されれば、コンポーネント管理FW23は未登録状態にある指定されたコンポーネントパッケージを車両用マルチメディア装置にインストールする。
「アンインストール(コンポーネント識別子)」のインターフェイスが呼び出されれば、コンポーネント管理FW23は登録状態にある指定されたコンポーネントパッケージを車両用マルチメディア装置からアンインストールする。
「アプリケーション一覧取得()」のインターフェイスが呼び出されれば、コンポーネント管理FW23は登録されているコンポーネントパッケージの一覧を取得する。
「機能インターフェイス一覧取得()」のインターフェイスが呼び出されれば、コンポーネント管理FW23は経路探索I/F34等の登録されている機能I/Fの一覧を取得する。
「機能インターフェイス登録(機能インターフェイス)」のインターフェイスが呼び出されれば、コンポーネント管理FW23は指定された機能I/Fを所定のコンポーネントパッケージに登録する。
「機能インターフェイス登録(機能インターフェイス)」のインターフェイスが呼び出されれば、コンポーネント管理FW23は指定された機能I/Fを所定のコンポーネントパッケージに登録する。
「機能インターフェイス取得(インターフェイス名)」のインターフェイスであれば、指定された機能I/Fを例えば通信ユニット15を使用して取得する。これにより、当該コンポーネントパッケージの動作状態は更新中となる。
コンポーネント管理テーブル45は、コンポーネント識別子とその動作状態を対応づけて保持するテーブルであり、機能インターフェイス管理テーブル46は機能インターフェイスとその動作状態を対応づけて保持するテーブルである。なお、機能インターフェイスはI/Fコンポーネントに含まれる機能であるので、機能インターフェイス管理テーブル46の構造はコンポーネント管理テーブル45と同じである。以下では、コンポーネント管理テーブル45を使用して説明する。
図8はコンポーネント管理テーブル45の一例を示す。コンポーネント管理テーブル45では、コンポーネント識別子と対応づけて、バージョン、作成者及び状態が記録されている。バージョンと作成者については上述したコンポーネント情報ファイルと同じである。
図8の状態は各I/Fコンポーネント24の動作状態を示し、図5の状態遷移図における開始状態、停止状態、登録状態、異常状態、更新中状態の動作状態を取りうる。なお、未登録状態は、コンポーネント管理テーブル45に登録されてない状態であるので、コンポーネント管理テーブル45に未登録状態という動作状態はない。
以上の構成を用いて、コンポーネント管理FW23がI/Fコンポーネント24又はアプリコンポーネント25の動作状態を制御する処理について図9のフローチャート図に基づき説明する。
まず、アプリコンポーネント25又はI/Fコンポーネント24(以下、単にコンポーネントと称す)がコンポーネント管理FW23に機能の要求を出力する(S1)。例えば、ユーザの操作により又は所定のコンポーネントが他の機能を利用するため、利用したいコンポーネントを指定してコンポーネント管理フレームワーク23に出力する。
コンポーネント管理FW23への出力は図7に示した構成となる。例えば、他のコンポーネントを開始する依頼であれば、「開始(コンポーネント識別子)」のような依頼がコンポーネント管理FW23へ出力される。
コンポーネント管理FW23は出力の内容を解析し、コンポーネント管理テーブル45を参照して現在のコンポーネントパッケージの動作状態を検出する(S2)。コンポーネントからの要求が「開始」であった場合、コンポーネント管理FW23は指定されたコンポーネントパッケージが開始状態になりうる登録状態又は停止状態であることを確認する。登録状態又は停止状態でなければエラーをコンポーネントに返してもよいし、当該コンポーネントパッケージを登録状態又は停止状態に制御してもよい。
登録状態又は停止状態であった場合、コンポーネント管理FW23は指定されたコンポーネントパッケージのStart()インターフェイスを呼び出す。これにより、開始処理が実行される(S3)。開始処理されたコンポーネントパッケージはスレッドとして生成され、複数のスレッドが平行して実行される。複数のスレッド同士は、互いに通信をしたり、相手の処理を待ったり待たせたりしながら協調動作をする。具体的には、コンポーネントパッケージの内部処理ロジックが実行され、JNIを介して機能実装部22に機能の提供を依頼する。
ついで、コンポーネント管理FW23は、コンポーネント管理テーブル45における当該コンポーネントパッケージの状態を「開始」に更新し、処理が終了する(S4)。
以上のように本実施の形態の車両用マルチメディア装置は、機能実装部22とI/Fコンポーネント24及びアプリコンポーネント25とを独立にして、I/Fコンポーネント24の動作状態を制御するコンポーネント管理FW23を設けたことで、所定の機能(例えば、ナビゲーション)のインターフェイスのみを更新するような場合に、I/Fコンポーネント24のみ(又はアプリコンポーネント25を含めて)変更すればよいこととなる。したがって、公衆回線を通じてモジュールを更新するような場合に通信コストを低減できる。
I/Fコンポーネント24及びアプリコンポーネント25はすべてが共通のインターフェイス(Start()、Stop())を有し、コンポーネント管理FW23が共通インターフェイスを介して各コンポーネントを制御するので、複数のアプリケーションを切り替えて実行することができる。すなわち、必要なコンポーネントを適宜実行でき、かつ、コンポーネントのインストール又はアンインストールを動的に行うことができる。
プラットフォームに依存しない部分はJavaのようなハードウェアに依存しない言語で記述するので種々のプラットフォームで高い互換性を確保でき、プラットフォームに依存する部分はプラットフォームに最適な形態で実装できるので、処理内容や処理速度を向上できる。すなわち、処理速度の低下を最小限に抑え、異なるプラットフォームにおけるアプリケーションの再利用性を向上できる。
また、開発者は機能実装部22の構成を知悉していなくてもI/Fコンポーネント24及びアプリコンポーネント25の機能を知っていれば、共通のインターフェイスを記述することでアプリケーションを作成できる。
〔ネットワークを介して機能実装部が接続されている場合〕
本実施の形態のシステム構成は機能実装部22がネットワークを経由して機能を提供する場合も好適に適用できる。図10は、プラットフォーム依存部と非依存部がネットワークを介して接続されたシステム構成の一例を示す。なお、図10において図4と同一構成部分には同一の符号を付しその説明は省略する。
図10ではI/Fコンポーネント24と機能実装部22が別体のハードウェアに実装されている。I/Fコンポーネント24が実装されたコンポーネント部200と機能実装部22が実装された機能部100はハードウェア層がネットワーク150を介して接続されている。ネットワーク150は、車両に分散して存在するECUを接続する車両内LANや車外のサーバとの接続を可能とする無線LANやインターネットである。
図10ではコンポーネント部200のOS層に分散オブジェクト層210が、機能部100のOS層に分散オブジェクト層110がそれぞれ設けられている。分散オブジェクト層210及び110は、異なるハードウェア間のオブジェクト間でメッセージを交換するための層であり、例えば、CORBA(Common Object Request Broker Architecture)である。なお、分散オブジェクト層110及び210は、異なるハードウェア間の通信を可能とすればよくDCOM(Distributed Component Object Model)でもよく、また、XMLで相互に通信するメッセージを作成すればSOAP(Simple Object Access Protocol)を利用してもよい。図10のシステム構成では、分散オブジェクト層がハードウェア又はプログラム言語の違いを吸収するため、JNIは備えられていない。
図10のようなシステム構成であれば、上述した効果に加え、機能部100とI/Fコンポーネント部200とを離して車両に搭載できるので車両の空間を有効に利用できる。
従来のカーナビゲーション装置の機能構成図である。 車両用マルチメディア装置の構成図の一例である。 車両用マルチメディア装置のシステム構成図の一例である。 ナビゲーションの機能を抽出したシステム構成図である。 コンポーネント管理FWが管理するI/Fコンポーネントの動作状態の遷移図である。 I/Fコンポーネントの構成を示すコンポーネントパッケージの一例である。 コンポーネント管理FWの構成の一例である。 コンポーネント管理テーブルの一例である。 コンポーネント管理FWがI/Fコンポーネント又はアプリコンポーネントの動作状態を制御する処理のフローチャート図である。 プラットフォーム依存部と非依存部がネットワークを介して接続されたシステム構成の一例である。
符号の説明
15 通信ユニット
16 記憶装置
21 プラットフォーム
22 ミドルウェア機能実装部
23 コンポーネント管理フレームワーク
24 インターフェイスコンポーネント
25 アプリケーションコンポーネント
31 Java VM
100 機能部
110、210 分散オブジェクト層
150 ネットワーク
200 コンポーネント部

Claims (7)

  1. ナビゲーション機能、音声・動画再生機能等の複数のアプリケーションコンポーネントと、
    複数の前記アプリケーションコンポーネントにそれぞれ対応した機能を提供する機能実装部と、
    複数の前記アプリケーションコンポーネントの動作状態をそれぞれ制御する制御手段と、を有し、
    複数の前記アプリケーションコンポーネントがそれぞれ独立に変更可能である、
    ことを特徴とする車両用マルチメディア装置。
  2. 前記機能実装部と前記アプリケーションコンポーネントが動作するプラットフォームを有し、
    前記機能実装部は前記プラットフォームに依存した言語で記述され、前記アプリケーションコンポーネントは前記プラットフォームと異なるプラットフォームでも動作可能な言語で記述されている、
    ことを特徴とする請求項1記載の車両用マルチメディア装置。
  3. 前記機能実装部の第1のプラットフォームと前記アプリケーションコンポーネントの第2のプラットフォームとがネットワークを介して接続されている、
    ことを特徴とする請求項2記載の車両用マルチメディア装置。
  4. 前記アプリケーションコンポーネントが前記機能実装部から前記機能の提供をうける場合、前記制御手段は前記アプリケーションコンポーネントが指定したアプリケーションコンポーネントの動作状態を制御する、
    ことを特徴とする請求項1又は3記載の車両用マルチメディア装置。
  5. 複数の前記アプリケーションコンポーネントは、該アプリケーションコンポーネントを開始又は停止するための共通のインターフェイスを有し、
    前記制御手段は、前記共通のインターフェイスを介して前記アプリケーションコンポーネントを制御する、
    ことを特徴とする請求項4記載の車両用マルチメディア装置。
  6. 前記動作状態は、前記アプリケーションコンポーネントの登録状態、開始状態又は停止状態、であり、
    前記制御手段は、前記動作状態の遷移を制御する、
    ことを特徴とする請求項5記載の車両用マルチメディア装置。
  7. 前記制御手段は、前記アプリケーションコンポーネントの開始、停止、インストール、アンインストール又はアップデートの少なくとも1つ以上を制御して前記動作状態を遷移させる、
    ことを特徴とする請求項5記載の車両用マルチメディア装置。




JP2005322366A 2005-11-07 2005-11-07 車両用マルチメディア装置 Expired - Fee Related JP4892933B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005322366A JP4892933B2 (ja) 2005-11-07 2005-11-07 車両用マルチメディア装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005322366A JP4892933B2 (ja) 2005-11-07 2005-11-07 車両用マルチメディア装置

Publications (2)

Publication Number Publication Date
JP2007128432A true JP2007128432A (ja) 2007-05-24
JP4892933B2 JP4892933B2 (ja) 2012-03-07

Family

ID=38151011

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005322366A Expired - Fee Related JP4892933B2 (ja) 2005-11-07 2005-11-07 車両用マルチメディア装置

Country Status (1)

Country Link
JP (1) JP4892933B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258986A (ja) * 2008-04-16 2009-11-05 Fujitsu Ten Ltd コンテンツ再生装置、及び電子機器
WO2010013462A1 (ja) * 2008-07-30 2010-02-04 株式会社オートネットワーク技術研究所 制御装置、制御方法及びコンピュータプログラム
WO2010013459A1 (ja) * 2008-07-30 2010-02-04 株式会社オートネットワーク技術研究所 制御装置、制御方法及びコンピュータプログラム
JP2010033437A (ja) * 2008-07-30 2010-02-12 Autonetworks Technologies Ltd 制御装置、制御方法及びコンピュータプログラム
JP2010160786A (ja) * 2008-12-09 2010-07-22 Honeywell Internatl Inc 無人航空機用のモジュール式ソフトウェア・アーキテクチャ
JP2014516850A (ja) * 2011-03-17 2014-07-17 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド 車両操縦用アプリケーション・インタフェース
KR101509707B1 (ko) 2013-08-26 2015-04-07 현대자동차 주식회사 차량 제어 시스템 및 가상 ecu 개발 방법
WO2015133062A1 (ja) * 2014-03-04 2015-09-11 株式会社デンソー 車両用機器
JP2019032678A (ja) * 2017-08-08 2019-02-28 日立オートモティブシステムズ株式会社 車両制御装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002351563A (ja) * 2001-05-30 2002-12-06 Canon Inc 情報処理装置、情報処理方法およびプログラム
WO2005013136A1 (ja) * 2003-08-04 2005-02-10 Mitsubishi Denki Kabushiki Kaisha 映像情報装置及びモジュールユニット
JP2005117367A (ja) * 2003-10-08 2005-04-28 Sony Corp 情報提供システム及び情報提供方法、コンテンツ録画装置及びコンテンツ録画方法、並びにコンピュータ・プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002351563A (ja) * 2001-05-30 2002-12-06 Canon Inc 情報処理装置、情報処理方法およびプログラム
WO2005013136A1 (ja) * 2003-08-04 2005-02-10 Mitsubishi Denki Kabushiki Kaisha 映像情報装置及びモジュールユニット
JP2005117367A (ja) * 2003-10-08 2005-04-28 Sony Corp 情報提供システム及び情報提供方法、コンテンツ録画装置及びコンテンツ録画方法、並びにコンピュータ・プログラム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258986A (ja) * 2008-04-16 2009-11-05 Fujitsu Ten Ltd コンテンツ再生装置、及び電子機器
US8782672B2 (en) 2008-07-30 2014-07-15 Autonetworks Technologies, Ltd. Control apparatus, control method, and recording medium
US8752067B2 (en) 2008-07-30 2014-06-10 Autonetworks Technologies, Ltd. Control apparatus, control method and storage medium
JP2010033435A (ja) * 2008-07-30 2010-02-12 Autonetworks Technologies Ltd 制御装置、制御方法及びコンピュータプログラム
JP2010033437A (ja) * 2008-07-30 2010-02-12 Autonetworks Technologies Ltd 制御装置、制御方法及びコンピュータプログラム
JP2010033436A (ja) * 2008-07-30 2010-02-12 Autonetworks Technologies Ltd 制御装置、制御方法及びコンピュータプログラム
WO2010013462A1 (ja) * 2008-07-30 2010-02-04 株式会社オートネットワーク技術研究所 制御装置、制御方法及びコンピュータプログラム
US8612640B2 (en) 2008-07-30 2013-12-17 Autonetworks Technologies, Ltd. Control apparatus, control method and computer program
WO2010013459A1 (ja) * 2008-07-30 2010-02-04 株式会社オートネットワーク技術研究所 制御装置、制御方法及びコンピュータプログラム
JP2010160786A (ja) * 2008-12-09 2010-07-22 Honeywell Internatl Inc 無人航空機用のモジュール式ソフトウェア・アーキテクチャ
JP2014516850A (ja) * 2011-03-17 2014-07-17 トヨタ モーター エンジニアリング アンド マニュファクチャリング ノース アメリカ,インコーポレイティド 車両操縦用アプリケーション・インタフェース
KR101509707B1 (ko) 2013-08-26 2015-04-07 현대자동차 주식회사 차량 제어 시스템 및 가상 ecu 개발 방법
WO2015133062A1 (ja) * 2014-03-04 2015-09-11 株式会社デンソー 車両用機器
JP2015166222A (ja) * 2014-03-04 2015-09-24 株式会社デンソー 車両用機器
JP2019032678A (ja) * 2017-08-08 2019-02-28 日立オートモティブシステムズ株式会社 車両制御装置

Also Published As

Publication number Publication date
JP4892933B2 (ja) 2012-03-07

Similar Documents

Publication Publication Date Title
JP4892933B2 (ja) 車両用マルチメディア装置
US20080034379A1 (en) Method and System for Integrating and Controlling Components and Subsystems
US6442475B1 (en) Extendable on-vehicle information system
JP4839049B2 (ja) 情報処理装置および表示画面制御方法
JP4509253B2 (ja) JavaBeansTMを使用して付加デバイスを制御するネットワーク型のビークル
KR101782699B1 (ko) 자동차에서 멀티미디어 데이터를 제공하는 장치 및 방법
KR100454791B1 (ko) 네비게이션 장치 및 기록 매체
WO2014097587A1 (ja) 車両用表示制御装置
US20160156717A1 (en) Information Processing Apparatus and Execution Management Program
CN114070880A (zh) 车辆自定义模式实现方法、装置、电子设备及存储介质
JP2014038188A (ja) 車両用音声制御装置
US20050149951A1 (en) Accessing accessory of a device
JP2012208053A (ja) アプリ制御システム
JP2007317121A (ja) 車載多機能装置、メタデータ
JP2006350469A (ja) ナビゲーション装置
JP2007133601A (ja) ソフトウェアパッケージ、システム管理装置および車載用情報機器
WO2018110169A1 (ja) 出力処理装置および出力処理方法
JP2001235334A (ja) ナビゲーション装置
JP2004157881A (ja) 車両走行状態に基づく情報提供方法、及び情報提供装置
JP6966519B2 (ja) 複数のカメラパッケージで構成されたカメラアプリケーションを含むシステムおよびカメラ機能制御方法
JPH1153177A (ja) 車載型または携帯型情報提供装置およびそのソフトウェア構造
US20230418445A1 (en) Method for migrating display element across applications and electronic device
CN112764832A (zh) 一种应用程序安装、卸载方法及通信终端
CN114356352A (zh) 多用户下应用数据的管理方法和终端设备
EP2047362A2 (en) Method and system for integrating and controlling components and subsystems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110531

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110729

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110815

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111031

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111122

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111205

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150106

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees