(57)【特許請求の範囲】
【請求項１】
外部との情報通信を通じて導入される汎用アプリケーションを動作させるためのプラットフォームを備え、前記プラットフォームに非依存の専用アプリケーションと、前記プラットフォーム上の前記汎用アプリケーションとが独立して動作する構成を備える車両用ナビゲーション装置であって、
所定の出力手段において行うユーザインタフェース（以下、ＵＩ）出力を、前記専用アプリケーションによるＵＩ出力と、前記プラットフォーム上で動作している前記汎用アプリケーションによるＵＩ出力とで選択的に切替える制御手段と、
前記プラットフォーム上で動作するソフトウェアであって、当該車両用ナビゲーション装置に導入されている前記汎用アプリケーションに関する属性情報を取得し、前記プラットフォーム上で動作中の前記汎用アプリケーションの属性情報を前記制御手段に対して通知する管理手段とを備え、
前記制御手段は、特定の条件下のときに、前記プラットフォーム上で動作中であって前記出力手段でＵＩ出力をしている前記汎用アプリケーションが、当該特定の条件下におけるＵＩ出力を認められたものであるか否かを、前記管理手段から通知された属性情報に基づいて判定し、その判定の結果、その汎用アプリケーションが当該特定の条件下におけるＵＩ出力を認められていない場合、前記出力手段において行うＵＩ出力を前記専用アプリケーションによるＵＩ出力、又は前記プラットフォーム上で動作中の前記汎用アプリケーションのうち当該特定の条件下におけるＵＩ出力を認められた別の汎用アプリケーションによるＵＩ出力に切替えること
を特徴とする車両用ナビゲーション装置。
【請求項２】
請求項１に記載の車両用ナビゲーション装置において、
前記管理手段は、当該車両用ナビゲーション装置に導入された前記汎用アプリケーションに関する前記属性情報を取得し、その取得した属性情報を当該車両用ナビゲーション装置が備える所定の記憶手段に記録し、前記記憶手段に記録した属性情報の中から、前記プラットフォーム上で動作中の前記汎用アプリケーションの属性情報を前記制御手段に対して通知すること
を特徴とする車両用ナビゲーション装置。
【請求項３】
請求項２に記載の車両用ナビゲーション装置において、
前記管理手段は、当該車両用ナビゲーション装置が外部との通信を通じて前記汎用アプリケーションを取得したときに、当該汎用アプリケーションに関する前記属性情報を取得して前記記憶手段に記録すること
を特徴とする車両用ナビゲーション装置。
【請求項４】
請求項１ないし請求項３の何れか１項に記載の車両用ナビゲーション装置において、
前記制御手段は、特定の条件下で前記出力手段において行うＵＩ出力を前記専用アプリケーションによるＵＩ出力に切替える際、前記プラットフォーム上で動作中の前記汎用アプリケーションの停止を指示する旨の停止通知を前記管理手段に対して通知し、
前記管理手段は、前記制御手段から受けた前記停止通知に応じて、前記プラットフォーム上で動作中の前記汎用アプリケーションを一時停止又は終了させること
を特徴とする車両用ナビゲーション装置。
【請求項５】
請求項４に記載の車両用ナビゲーション装置において、
前記管理手段は、前記制御手段から前記停止通知を受けた場合、前記プラットフォーム上で動作中の前記汎用アプリケーションに対応する前記属性情報に基づき、当該汎用アプリケーションが当該特定の条件下において一時停止できるものと判断した場合、その汎用アプリケーションの動作を一時停止させる一方、当該汎用アプリケーションが当該特定の条件下において一時停止できないものと判断した場合、その汎用アプリケーションの動作を強制終了させること
を特徴とする車両用ナビゲーション装置。
【請求項６】
請求項１ないし請求項５の何れか１項に記載の車両用ナビゲーション装置において、
前記制御手段は、車両が走行を始めた条件下のときに、前記プラットフォーム上で動作中であって前記出力手段でＵＩ出力をしている前記汎用アプリケーションが、車両走行中におけるＵＩ出力を認められたものであるか否かを前記属性情報に基づいて判定し、その判定の結果、その汎用アプリケーションが車両走行中におけるＵＩ出力を認められていない場合、前記出力手段において行うＵＩ出力を前記専用アプリケーションによるＵＩ出力、又は前記プラットフォーム上で動作中の前記汎用アプリケーションのうち車両走行中におけるＵＩ出力を認められた別の汎用アプリケーションによるＵＩ出力に切替えること
を特徴とする車両用ナビゲーション装置。
【請求項７】
請求項１ないし請求項６の何れか１項に記載の車両用ナビゲーション装置において、
前記制御手段は、前記専用アプリケーションからＵＩ出力の割込み要求を受付け、前記割込み要求を受けたときに、前記出力手段において行うＵＩ出力を前記専用アプリケーションによるＵＩ出力に切替えると共に、前記プラットフォーム上で動作中の前記汎用アプリケーションの停止を指示する旨の停止通知を前記管理手段に対して通知し、
前記管理手段は、前記制御手段から受けた前記停止通知に応じて、前記プラットフォーム上で動作中の前記汎用アプリケーションを一時停止又は終了させること
を特徴とする車両用ナビゲーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部から取込んだＨＭＩ（Human machine interface）アプリケーションを所定のプラットフォーム上で動作させる車両用ナビゲーション装置に関する。
【背景技術】
【０００２】
従来、専用の無線機（例えば、ＤＣＭ：Data Communication Module）や携帯電話端末を用いて外部から特定のＨＭＩアプリケーションを取込み、そのＨＭＩアプリケーションによる表示や音声等のユーザインタフェース（ＵＩ）出力を行うことにより情報提供をする車両用ナビゲーション装置が開発されている（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“Ｇ−ＢＯＯＫ．ｃｏｍ”、［online］、トヨタメディアサービス株式会社、［平成２３年７月２５日検索］、インターネット＜ＵＲＬ：http://g-book.com/pc/default.asp＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の車両用ナビゲーション装置においては、ＨＭＩアプリケーションを外部から取込んで動作させるために、その車両用ナビゲーション装置における動作要件に合ったアプリケーションを個別に開発する必要があった。例えば、スマートフォン等の携帯情報端末向けに、オープンプラットフォームに対応したＨＭＩアプリケーションが開発されているが、それらのＨＭＩアプリケーションは、そのままでは車両用ナビゲーション装置に取込み、動作させることはできなかった。
【０００５】
また、車両用ナビゲーション装置では、本来実装されている経路案内やカーオーディオ・ビジュアル、クリアランスソナーによる障害物回避案内といった車両用の既存アプリケーションが動作している。そのため、仮に、車両用ナビゲーション装置専用に開発されたアプリケーション以外のＨＭＩアプリケーションを取込めたとしても、次のような問題が生じる可能性がある。
【０００６】
例えば、従来の車両用の既存アプリケーションによるＵＩ出力画面が表示されるべきところで、外部から取得のＨＭＩアプリケーションによるＵＩ出力画像が表示されていたがために、本来の既存アプリケーションのＵＩ出力画面が表示されない可能性がある。
【０００７】
このような事態を回避するために、その既存アプリケーションが行う表示や音声等のＵＩ出力と、外部から取込まれたＨＭＩアプリケーションが行うＵＩ出力とが競合しないように調整しなければならない。その点において、従来の車両用ナビゲーション装置においては、外部から取込まれるＨＭＩアプリケーションに、取込み先の車両用ナビゲーション装置での動作要件を考慮した個別の仕組みを設ける必要があった。よって、車両用ナビゲーション装置の要件に合ったＨＭＩアプリケーションを個別に開発するのには多大な開発資源を必要とし、また、それが情報鮮度や汎用性の高いＨＭＩアプリケーションの普及を妨げる要因にもなる。
【０００８】
本発明は、上記問題を解決するためになされたものであり、車両用ナビゲーション装置専用に開発されたアプリケーション以外の、外部から取込んだＨＭＩアプリケーションであっても車両用ナビゲーション装置上でＵＩ出力ができ、かつ所定条件に応じて必要なＵＩ出力に切替可能なナビゲーション装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するためになされた本発明は、外部との情報通信を通じて導入される汎用アプリケーションを動作させるためのプラットフォームを備えており、プラットフォームに非依存の専用アプリケーションと、プラットフォーム上の汎用アプリケーションとが独立して動作する構成を備える車両用ナビゲーション装置であって、制御手段と管理手段とを備えることを特徴とする。
【００１０】
制御手段は、所定の出力手段において行うＵＩ出力を、専用アプリケーションによるＵＩ出力と、プラットフォーム上で動作している汎用アプリケーションによるＵＩ出力とで選択的に切替える機能を有する。管理手段は、プラットフォーム上で動作するソフトウェアであって、当該車両用ナビゲーション装置に導入されている汎用アプリケーションに関する属性情報を取得し、プラットフォーム上で動作中の汎用アプリケーションの属性情報を制御手段に対して通知する機能を有する。
【００１１】
そして、制御手段は、特定の条件下のときに、プラットフォーム上で動作中であって出力手段でＵＩ出力をしている汎用アプリケーションが、当該特定の条件下におけるＵＩ出力を認められたものであるか否かを、管理手段から通知された属性情報に基づいて判定し、その判定の結果、その汎用アプリケーションが当該特定の条件下におけるＵＩ出力を認められていない場合、出力手段において行うＵＩ出力を専用アプリケーションによるＵＩ出力、又はプラットフォーム上で動作中の汎用アプリケーションのうち当該特定の条件下におけるＵＩ出力を認められた別の汎用アプリケーションによるＵＩ出力に切替える機能を有する。
【００１２】
本発明によれば、汎用アプリケーションを動作させるためのプラットフォームを備えることで、車両用ナビゲーション装置で外部から導入される汎用アプリケーションによるＵＩ出力を行うことができる。なお、ここでいうＵＩ出力とは、表示、音声、触力覚的作用といった様々な手法でユーザである車両の乗員に対して何らかの情報を提示することを意味する。
【００１３】
特に、様々なコンピュータシステムで広く使われているソフトウェアを利用することを想定したいわゆるオープンプラットフォームを用いることで、車両用ナビゲーション装置専用のソフトウェア開発メーカが開発した独自規格の専用アプリケーション以外に、オープンプラットフォームの標準規格に準拠した多種多様な汎用アプリケーションを利用できる。そして、このような汎用性の高いアプリケーションを利用することで、インターネットを中心とするクラウドコンピューティングとの連携や、スマートフォン等の高機能携帯端末との連携等、広い分野での情報の相互利用が可能となる。
【００１４】
そして、制御手段は、プラットフォーム上で動作する管理手段から通知された汎用アプリケーションの属性情報に基づいて、車両用ナビゲーション装置の専用アプリケーションによるＵＩ出力と、プラットフォーム上で動作する汎用アプリケーションによるＵＩ出力とで選択的に切替えることができる。このような構成によれば、制御手段は今プラットフォーム上でどの汎用アプリケーションが動作しているかとか、その動作の状況等を意識する必要はなく、専ら管理手段から通知された属性情報に基づき、所定条件に応じて必要なＵＩ出力に切替を行うことができる。
【００１５】
また、管理手段は、プラットフォーム上で動作する汎用アプリケーションと制御手段との仲立ちをする機能を担うものである。この管理手段をプラットフォーム上で動作するソフトウェアとしたことで、共通のプラットフォーム上で動作する汎用アプリケーションとの間でデータの相互利用が可能であり、汎用アプリケーションに関する属性情報の取得や動作状況の把握が容易となる。
【００１６】
一方、プラットフォーム上で動作する汎用アプリケーションからみれば、プラットフォームの標準規格に準拠したものであれば、上述の管理手段及び制御手段の働きにより、取込み先の車両用ナビゲーション装置側での動作要件を考慮した個別の仕組みを設ける必要がない。
【００１７】
つぎに、請求項２に記載の車両用ナビゲーション装置においては、管理手段が、当該車両用ナビゲーション装置に導入された汎用アプリケーションに関する属性情報を取得し、その取得した属性情報を当該車両用ナビゲーション装置が備える所定の記憶手段に記録する。そして、記憶手段に記録した属性情報の中から、プラットフォーム上で動作中の汎用アプリケーションの属性情報を制御手段に対して通知することを特徴とする。このように構成することで、管理手段は、車両用ナビゲーション装置に導入されている汎用アプリケーションに関する属性情報を制御手段が必要とするときにいつでも取得できる。
【００１８】
さらに、請求項３に記載のように、当該車両用ナビゲーション装置が外部との通信を通じて汎用アプリケーションを取得したときに、管理手段が当該汎用アプリケーションに関する属性情報を取得して記憶手段に記録するように構成するとよい。このように構成することで、汎用アプリケーションの導入後すぐに、その汎用アプリケーションに関する属性情報を利用可能にすることができる。また、属性情報の取得方法としては、取得された汎用アプリケーションに元から組込まれている属性情報のデータを取得するようにしてもよいし、外部との情報通信によって汎用アプリケーションの取得する際に、その配布元から一緒に提供される属性情報を取得するようにしてもよい。
【００１９】
つぎに、請求項４に記載の車両用ナビゲーション装置は以下の特徴を有する。すなわち、制御手段は、特定の条件下で出力手段において行うＵＩ出力を専用アプリケーションによるＵＩ出力に切替える際、プラットフォーム上で動作中の汎用アプリケーションの停止を指示する旨の停止通知を管理手段に対して通知する。これに対し、管理手段は、制御手段から受けた停止通知に応じて、プラットフォーム上で動作中の汎用アプリケーションを一時停止又は終了させる。
【００２０】
このように構成することで、例えば、専用アプリケーションによるＵＩ出力を最優先で表示すべき条件下のときに、制御手段からの要求に応じて管理手段がプラットフォーム上で動作中の汎用アプリケーションを停止又は終了させることができる。その際、制御手段は、動作中の汎用アプリケーションに対して直接要求するのではなく、管理手段に対して汎用アプリケーション停止又は終了を指示するため、プラットフォーム上でどの汎用アプリケーションが動作しているかを制御手段が把握する必要はない。
【００２１】
さらに、制御手段からの要求に応じて管理手段がプラットフォーム上で動作中の汎用アプリケーションを停止又は終了させる場合、請求項５に記載のようにすることが考えられる。すなわち、管理手段は、制御手段から停止通知を受けた場合、プラットフォーム上で動作中の汎用アプリケーションに対応する属性情報に基づき、当該汎用アプリケーションが当該特定の条件下において一時停止できるものと判断した場合、その汎用アプリケーションの動作を一時停止させる。一方、当該汎用アプリケーションが当該特定の条件下において一時停止できないものと判断した場合、その汎用アプリケーションの動作を強制終了させる。
【００２２】
この様にする場合、属性情報は車両用ナビゲーション装置で動作する際の一種のプライオリティを規定するものとして扱われる。例えば、汎用アプリケーションの製造元（サプライヤ）において特定の認定を受けたものには、その旨が属性情報として取得されるようにする。そして、制御手段から停止通知を受けた場合、認定を受けた汎用アプリケーションに対しては一時停止の措置をとり、認定を受けていない汎用アプリケーションに対しては強制終了の措置をとるといった具合に、汎用アプリケーションのプライオリティに応じた制御を行うことができる。
【００２３】
ところで、ＵＩ出力をさせるアプリケーションを切替える特定の条件として、車両が走行している最中は、例えば、運転支援に関する情報を提供する専用アプリケーションのような、車両を走行させる運転者にとって有用な情報を提供するアプリケーションのＵＩ出力を優先し、車両の走行にあまり有用でないＵＩ出力については他のＵＩ出力に切替えることが考えられる。これは、車両用ナビゲーション装置においては、運転支援等の車両の走行に関する情報を提供することが本来優先されるべきものであり、娯楽性の高い汎用アプリケーションはあくまで副次的なものであるためである。
【００２４】
そこで、請求項６に記載のように構成するとよい。すなわち、制御手段は、車両が走行を始めた条件下のときに、プラットフォーム上で動作中であって出力手段でＵＩ出力をしている汎用アプリケーションが、車両走行中におけるＵＩ出力を認められたものであるか否かを属性情報に基づいて判定する。そして、その判定の結果、その汎用アプリケーションが車両走行中におけるＵＩ出力を認められていない場合、出力手段において行うＵＩ出力を専用アプリケーションによるＵＩ出力、又はプラットフォーム上で動作中の汎用アプリケーションのうち車両走行中におけるＵＩ出力を認められた別の汎用アプリケーションによるＵＩ出力に切替える。
【００２５】
この様にする場合、属性情報は車両用ナビゲーション装置で動作する際の走行時におけるＵＩ出力の可否を規定するものとして扱われる。例えば、汎用アプリケーションの製造元において特定の認証を受けたものには、その旨が属性情報として取得されるようにする。そして、車両が走行を開始した場合、認証を受けていない汎用アプリケーションに対しては、専用アプリケーション又は認証を受けた別の汎用アプリケーションによるＵＩ出力に切替えるといった具合に、走行時のＵＩ出力の可否に応じた制御を行うことができる。
【００２６】
あるいは、ＵＩ出力をさせるアプリケーションを切替える特定の条件として、交差点直前の案内や注意、警報等の提示等、車両用ナビゲーション装置の専用アプリケーションによる偶発的かつ最優先のイベントが発生した場合、他のＵＩ出力に割込みをして最優先のイベントに関するＵＩ出力を行うように制御することが考えられる。
【００２７】
そこで、請求項６に記載のように構成するとよい。すなわち、制御手段は、専用アプリケーションからＵＩ出力の割込み要求を受付け、割込み要求を受けたときに、出力手段において行うＵＩ出力を専用アプリケーションによるＵＩ出力に切替えると共に、プラットフォーム上で動作中の汎用アプリケーションの停止を指示する旨の停止通知を管理手段に対して通知する。これに対し、管理手段は、制御手段から受けた停止通知に応じて、プラットフォーム上で動作中の汎用アプリケーションを一時停止又は終了させる。
【００２８】
この様にすることで、汎用アプリケーションが導入された車両用ナビゲーション装置においても、専用アプリケーションにおいて発生した偶発的かつ最優先のイベントによるＵＩ出力を確実に遂行できるので、ナビゲーション装置としての本来の機能を発揮できる。
【図面の簡単な説明】
【００２９】
【図１】（ａ）は、車両用ナビゲーション装置の概略構成を示すブロック図であり、（ｂ）は、車両用ナビゲーション装置のソフトウェアシステムの構成を示すブロック図である。
【図２】ＵＩ出力制御処理の手順を示すフローチャートである。
【図３】属性情報取得処理の手順を示すフローチャートである。
【図４】走行強制イベントにおける表示切替の手順を示すシーケンス図である。
【図５】割込みイベントにおける表示切替の手順を示すシーケンス図である。
【発明を実施するための形態】
【００３０】
以下、本発明の一実施形態を図面に基づいて説明する。なお、本発明は下記の実施形態に何ら限定されるものではなく様々な態様にて実施することが可能である。
［車両用ナビゲーション装置１の構成の説明］
本実施形態の車両用ナビゲーション装置１は、車両に搭載されるナビゲーションシステムであり、図１（ａ）に示すように、車両の現在地を検出するための位置検出部２１と、ユーザからの各種指示を入力するための操作部２２と、外部との無線通信を行う通信装置からなる通信部２３と、地図データやプログラム等を記憶する大容量記憶媒体からデータを入力するデータ入力部２４と、各種車載機器から出力される車両情報を入力するための車両情報入力部２５と、各種アプリケーションからの出力による情報の表示を行うための表示部２６と、各種アプリケーションからの出力による情報の音声出力を行うための音声出力部２７と、制御部２９とを備える。
【００３１】
位置検出部２１は、ＧＰＳ（Global Positioning System）用の人工衛星からの送信信号を受信し、車両の位置座標や高度を検出するＧＰＳ受信機や、車両に加えられる回転運動の角速度に応じた検出信号を出力するジャイロスコープ、車両の走行距離を出力する距離センサからの出力信号に基づいて、自車両の現在地、方位、速度等を算出する。
【００３２】
操作部２２は、表示部２６の表示面上に一体に設置されるタッチパネルや表示部２６の周囲に設けられるメカニカルなキースイッチ等で構成されている。通信部２３は、無線通信によりインターネットを中心に構成されるクラウドコンピューティングや、スマートフォン等の携帯通信端末との間でデータ通信を行うことで、様々なオープンコンテンツや汎用アプリケーションを取得する。
【００３３】
データ入力部２４は、例えばハードディスク等に記録された地図データや、システムプログラム、アプリケーションプログラム、コンテンツデータ等の各種データを制御部２９に入力するための装置である。車両情報入力部２５は、車両を制御する各部のＥＣＵ（Electronic Control Unit）から車両の動作状況に関する情報を取得する。
【００３４】
表示部２６は、液晶ディスプレイ等の表示面を有するカラー表示装置であり、制御部２９で実行される専用アプリケーションや汎用アプリケーション等によるＵＩ出力である画像を表示するための出力装置である。音声出力部２７は、制御部２９で実行される専用アプリケーションや汎用アプリケーション等によるＵＩ出力である音声出力を行うための出力装置である。
【００３５】
制御部２９は、ＣＰＵ，ＲＯＭ，ＲＡＭ，Ｉ／Ｏ及びこれらの構成を接続するバスライン等からなる周知の情報処理装置（例えば、マイクロコンピュータ）を中心に構成されており、上述した各部構成を制御する。この制御部２９は、ＲＯＭやデータ入力部２４等から読込んだプログラムやデータに基づいて種々のアプリケーション処理を実行する。
【００３６】
この制御部２９によって実現されるソフトウェアシステムについて、図１（ｂ）を参照しながら説明する。制御部２９では、専用アプリケーション、オープンプラットフォーム３２、汎用アプリケーション、バーチャルＩＶＩシステム３４、及びＨＭＩコントローラ３５からなるソフトウェアシステムが構成されている。
【００３７】
専用アプリケーションは、車両用ナビゲーション装置の組込みシステム専用のアプリケーションであり、ここではナビゲーションアプリ３１ａ、オーディオアプリ３１ｂ、クリアランスソナーアプリ３１ｃ等が例示される。これらの専用アプリケーションによる表示や音声出力等のＵＩ出力は、何れも表示部２６及び音声出力部２７を利用して行われる。また、各専用アプリケーションにおけるユーザの操作は、何れも操作部２２を通じて行われるようになっている。
【００３８】
ナビゲーションアプリ３１ａは、車両向けの経路案内を行うアプリケーションであり、地図表示や経路探索、経路案内等が実行される。地図表示は、位置検出部２１からの検出信号に基づいて車両の現在地を算出し、データ入力部２４を介して読込んだ現在地付近の地図や車両の現在地を示すマーク等をＵＩ出力として表示部２６に表示する機能である。また、経路探索は、データ入力部２４を介して読込んだ地図データと、操作部２２を通じてユーザから指定された目的地とに基づいて、現在地から目的地までの最適な経路を自動的に算出する機能である。経路案内は、前述の経路探索によって求めた経路に沿った走行案内を行う機能である。この経路案内では、経路探索の結果と、地図データとして格納されている道路の接続情報や交差点の位置情報等から、走行案内（右左折の指示等のいわゆるナビゲーション）を行うポイントや走行案内の内容を決定する。そして、その決定に基づき、現在地の地図や推奨経路、交差点付近では交差点周辺の拡大図等を描画し、ＵＩ出力として表示部２６に表示する。また、走行案内には、ＵＩ出力として音声出力部２７によるガイド音声の出力も併用する。
【００３９】
オーディオアプリ３１ｂは、例えば、テレビチューナや、ＣＤドライブ、ＤＶＤドライブ、デジタルオーディオプレーヤ、ラジオチューナ等の各種映像・音声ソースに基づいて各種映像や音声の出力を行うアプリケーションである。オーディオ関係の機能としては、選択可能な複数の映像・音声ソースのうち、ユーザによって指定された映像・音声ソースからの映像・音声信号に基づく映像や音声を、ＵＩ出力として表示部２６及び音声出力部２７により出力する。
【００４０】
クリアランスソナーアプリ３１ｃは、車体に供えられたソナーにより検知した障害物の接近を音や表示で運転者に報知するアプリケーションである。このクリアランスソナーアプリ３１ｃでは、車体の前側や後側に供えられたソナーにより自車両に接触するおそれのある障害物を検知した場合、その障害物の方向や自車両との距離をＵＩ出力として表示部２６に表示したり、障害物との接近を知らせるための警告音や音声をＵＩ出力として音声出力部２７により出力する。
【００４１】
オープンプラットフォーム３２は、コンピュータシステムのハードウェアを抽象化したインタフェースをアプリケーションに提供するオペレーティングシステム（ＯＳ）である。オープンプラットフォーム３２は、標準化された規格に準拠したＯＳであり、その標準規格に則って作られた様々な汎用アプリケーションをオープンプラットフォーム３２上で動作させることができる。つまり、オープンプラットフォーム３２の標準規格に準拠したアプリケーションであれば、車両用ナビゲーション装置本体のベンダーとは直接の関係がないサードパーティにより開発された車両専用以外のアプリケーションであっても、これらの汎用アプリケーションによるＵＩ出力を車両用ナビゲーション装置１で実現できる。  
【００４２】
汎用アプリケーションは、オープンプラットフォーム３２上で動作するプラットフォーム依存型のアプリケーションであり、ここではオープンＰＦアプリ３３ａ（アプリＡ）、オープンＰＦアプリ３３ｂ（アプリＢ）、メニューアプリ３３ｃ等が例示される。これらの汎用アプリケーションによる表示や音声出力等のＵＩ出力は、表示部２６及び音声出力部２７を利用して行われる。また、各専用アプリケーションにおけるユーザの操作は、何れも操作部２２を通じて行われるようになっている。
【００４３】
汎用アプリケーションは、例えば、ユーザの任意によりインターネットを中心とするクラウドコンピューティングを構成するサーバ群からデータ通信を介して導入された外部のアプリケーション等が想定される。このような汎用アプリケーションにより、クラウドコンピューティングや、スマートフォン等の高機能携帯端末との連携により、広い分野での情報やユーザインタフェースの相互利用が可能となる。これらの各汎用アプリケーションは、車両の走行に関するものに限らず多様性に富む情報をＵＩ出力として表示部２６及び音声出力部２７により出力する。
【００４４】
バーチャルＩＶＩ（In-Vehicle Infotainment）システム３４は、オープンプラットフォーム３２上で動作する他の汎用アプリケーションの管理及び制御を行うアプリケーションであり、このバーチャルＩＶＩシステム３４自体がオープンプラットフォーム３２上で動作するアプリケーションとして構成されている。
【００４５】
このバーチャルＩＶＩシステム３４は、車両用ナビゲーション装置１に導入された各汎用アプリケーションに関する属性情報を取得し、所定の記憶装置等に保存しておく。汎用アプリケーションに関する属性情報とは、特定の条件下での当該汎用アプリケーションによるＵＩ出力の可否や、当該汎用アプリケーションの動作の一時停止の可否を特定する情報である。バーチャルＩＶＩシステム３４が汎用アプリケーションの属性情報を取得する際には、例えば、アプリケーションのサプライヤから所定の認定を受けたものであるかを確認し、その確認結果に基づいて、特定の条件下におけるＵＩ出力の可否や、動作の一時停止の可否を特定して属性情報として取得する。
【００４６】
そして、オープンプラットフォーム３２上で動作中の汎用アプリケーションを確認し、予め保存しておいた属性情報の中から当該動作中の汎用アプリケーションに関する属性情報を読出し、それをＨＭＩコントローラ３５に通知する。また、バーチャルＩＶＩシステム３４は、ＨＭＩコントローラ３５からの停止イベントが通知されることで、オープンプラットフォーム３２上で動作中の汎用アプリケーションの属性情報に応じて、それらの汎用アプリケーションの動作を一時停止したり強制終了するといった制御を行う。
【００４７】
ＨＭＩコントローラ３５は、互いに独立して動作する、オープンプラットフォーム３２に非依存の専用アプリケーションと、オープンプラットフォーム３２に依存の汎用アプリケーションとによるＵＩ出力の切替制御を行うソフトウェアである。このＨＭＩコントローラ３５は、表示部２６や音声出力部２７の出力装置を共用してＵＩ出力を行う各アプリケーションの間で、特定の条件に則って画像表示や音声出力を行うアプリケーションを選択的に切替えることで、アプリケーション間におけるユーザインタフェースの出力調停を行う。
【００４８】
具体的には、ＨＭＩコントローラ３５は、ある特定条件が発生した場合、その時点において表示部２６や音声出力部２７に表示や音声のＵＩ出力を行っている専用アプリケーションや汎用アプリケーションが、その特定条件下におけるＵＩ出力に適合したアプリケーションであるか否かを判断する。その特定条件としては、例えば、車両が走行を開始したことや、専用アプリケーションから優先度の高い所定のＵＩ出力イベントの要求があること等の条件が例示される。
【００４９】
その際、オープンプラットフォーム３２上で動作中の汎用アプリケーションについては、バーチャルＩＶＩシステム３４から通知された属性情報に基づいて、その汎用アプリケーションによるＵＩ出力の適否を判断する。つまり、ＨＭＩコントローラ３５は、バーチャルＩＶＩシステム３４と間で属性情報をやり取りすることで、オープンプラットフォーム３２上でどの汎用アプリケーションが動作しているかを個別に意識する必要がないように構成されている。
【００５０】
そして、特定条件下におけるＵＩ出力の適否を判断した結果に応じて、表示部２６や音声出力部２７に対してＵＩ出力をするアプリケーションを切替える。また、条件によっては、オープンプラットフォーム３２上で動作中の汎用アプリケーションを一時的に停止する必要がある場合、停止イベントをバーチャルＩＶＩシステム３４に対して通知する。このときも、ＨＭＩコントローラ３５は、バーチャルＩＶＩシステム３４と間で停止イベントの通知をやり取りするだけで、オープンプラットフォーム３２上でどの汎用アプリケーションが動作しているかを個別に意識する必要がないように構成されている。
【００５１】
このように、バーチャルＩＶＩシステム３４とＨＭＩコントローラ３５との連携により実現する機能により、オープンプラットフォーム３２や汎用アプリケーション自体に車両用ナビゲーション装置独自の仕組みを組込まず、それらが標準の仕組みを保ったままで、各汎用アプリケーションに車両用ナビゲーション装置で機能する上での要件を満たす動作をさせることができる。
【００５２】
［ＨＭＩコントローラが実行する処理の説明］
つぎに、ＨＭＩコントローラ３５が実行するＵＩ出力制御処理の手順について、図２のフローチャートを参照しながら説明する。この処理は、車両用ナビゲーション装置１において専用アプリケーションや汎用アプリケーションが動作しているときに、これらのアプリケーションと並行して実行される。
【００５３】
ＨＭＩコントローラ３５は、まず、現在状況がＵＩ出力をさせるアプリケーションの切替えを行うべき特定条件に該当しているか否かを判定する（Ｓ１００）。具体的には、車両が走行を開始したか、あるいは、現在動作中の専用アプリケーションから優先度の高い所定のＵＩ出力イベントの要求があるか等の特定条件について判定する。現在状況が特定条件に該当する場合（Ｓ１００：ＹＥＳ）、Ｓ１０２の処理に進む。一方、現在状況が特定条件に該当しない場合（Ｓ１００：ＮＯ）、Ｓ１０４の処理に進み、現在のアプリケーションによるＵＩ出力を維持する。
【００５４】
現在状況が特定条件に該当する場合に進むＳ１０２では、現時点で表示部２６や音声出力部２７等の出力装置に対して映像や音声等のＵＩ出力を行っているアプリケーションが、Ｓ１００で該当した特定条件下においてＵＩ出力を行うことが認められた特定アプリケーションに該当するか否かを判定する。
【００５５】
具体的には、オープンプラットフォーム３２上で動作する汎用アプリケーションがＵＩ出力を行っている場合、バーチャルＩＶＩシステム３４から通知される当該汎用アプリケーションの属性情報を参照する。そして、属性情報の内容に基づき、当該汎用アプリケーションが現在の特定条件におけるＵＩ出力に適合した特定アプリケーションであるか否かを判定する。あるいは、専用アプリケーションがＵＩ出力を行っている場合、その専用アプリケーションの設定情報等に基づき、現在の特定条件におけるＵＩ出力に適合した特定アプリケーションであるか否かを判定する。あるいは、専用アプリケーションについては無条件に特定アプリケーションとして扱うような構成であってもよい。
【００５６】
ＵＩ出力を行っているアプリケーションが現在の特定条件に適合する特定アプリケーションに該当する場合（Ｓ１０２：ＹＥＳ）、Ｓ１０４の処理に進み、現在のアプリケーションによるＵＩ出力を維持する。一方、ＵＩ出力を行っているアプリケーションが現在の特定条件に適合しない場合（Ｓ１０２：ＮＯ）、Ｓ１０６の処理に進む。Ｓ１０６では、その特定条件に適合する他の特定アプリケーションを選定し、現在のアプリケーションによるＵＩ出力から、選定した特定アプリケーションによるＵＩ出力に切替える。ここでは、切替先として、現在動作中の専用アプリケーション、あるいは、現在動作中の汎用アプリケーションのうち、当該特定条件に適合する汎用アプリケーションを選定する。そして、次のＳ１０８では、Ｓ１０４又はＳ１０６で設定したアプリケーションによる映像や音声等のＵＩ出力を行う。
【００５７】
［バーチャルＩＶＩシステムが実行する処理の説明］
つぎに、バーチャルＩＶＩシステム３４が実行する属性情報取得処理の手順について、図３のフローチャートを参照しながら説明する。この処理は、車両用ナビゲーション装置１においてクラウドコンピューティングを構成するサーバ群から汎用アプリケーションをダウンロードしたときに実行される。
【００５８】
バーチャルＩＶＩシステム３４は、まず、配信元からダウンロードした汎用アプリケーションに関する属性情報を取得する（Ｓ２００）。ここでは、取得した汎用アプリケーションに対する認証処理をして、その汎用アプリケーションが特定の条件下におけるＵＩ出力や動作の一時停止といった所定の動作が可能であることをサプライヤから認定されたものであるか否かを確認する。このような認証処理は、例えば、インターネット等を通じて汎用アプリケーションの配信元やサプライヤから提供される認定情報にアクセスしたり、ダウンロードしたアプリケーションのデータに含まれる認定情報に基づいて行うようにすることが考えられる。そして、認証処理における確認結果に基づいて、特定の条件下におけるＵＩ出力の可否や、動作の一時停止の可否を特定して属性情報として取得する。
【００５９】
つぎに、Ｓ２００で取得した属性情報を、関連する汎用アプリケーションに対応付けて所定のメモリに記録する（Ｓ２０２）。記録先としては、例えば、車両用ナビゲーション装置１に接続されて用いられるハードディスクドライブや不揮発性半導体メモリ等が例示される。あるいは、属性情報を記憶させるための記憶手段をクラウドコンピューティングを構成する外部のサーバに設け、この外部のサーバの記憶手段にバーチャルＩＶＩシステム３４が取得した属性情報を記録するような構成であってもよい。属性処理の記録後、本処理を終了する。
【００６０】
［走行強制イベントにおける表示切替シーケンスの説明］
つぎに、上述のＵＩ出力制御処理の具体例として、走行強制イベントにおける表示切替シーケンスについて、図４を参照しながら説明する。走行強制イベントでは、車両が走行を開始したときに、走行強制対象の汎用アプリケーションによるコンテンツの表示を、専用アプリケーションによるコンテンツの表示に切替える。その後、車両が走行を停止したときに、元の汎用アプリケーションによるコンテンツの表示を再開する。
【００６１】
図４に示す事例では、ナビゲーションアプリ３１ａ（専用アプリケーション）と、オープンプラットフォーム３２上で動作するオープンＰＦアプリＡ（汎用アプリケーション）とが並行して動作しており、車両が走行を開始する前の時点でオープンＰＦアプリＡによるＵＩ出力であるコンテンツ画像が表示部２６に表示されている状況を想定している。
【００６２】
図４に示すとおり、まず、バーチャルＩＶＩシステム３４が、オープンプラットフォーム３２上で現在動作中の汎用アプリケーションを確認する。そして、動作を確認した汎用オープンＰＦアプリＡに対応する属性情報をメモリから読出し、ＨＭＩコントローラ３５に通知する。この属性情報には、走行中におけるＵＩ出力が認められているか否かを特定する情報が含まれている。属性情報において走行中のＵＩ出力が認められていない場合、その汎用アプリケーションは走行強制対象に該当する。
【００６３】
ＨＭＩコントローラ３５は、車両情報入力部２５を通じて入力された情報に基づいて車両が走行を開始したことを検知すると、バーチャルＩＶＩシステム３４から通知された属性情報を参照し、オープンプラットフォーム３２上で現在動作中の汎用アプリケーションが走行強制対象であるか否かを判断する。ここで、現在動作中の汎用アプリケーションが走行強制対象であると判断した場合には、以降の処理を実行し、走行強制対象でないと判断した場合には、以降の処理は実行しない。
【００６４】
ＨＭＩコントローラ３５は、オープンプラットフォーム３２上で現在動作中の汎用アプリケーションが走行強制対象であることを確認すると、専用アプリケーションであるナビゲーションアプリ３１ａに対してコンテンツ画像の描画指示を出す。
【００６５】
ナビゲーションアプリ３１ａは、ＨＭＩコントローラ３５から描画指示を受けると、表示部２６に表示するためのコンテンツ画像として、自車両の現在地周辺の地図画像を所定の画像バッファに描画する。そして、地図画像の描画が完了すると、その旨をＨＭＩコントローラ３５に通知する。ＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａから描画完了の通知を受けると、表示部２６で表示中の画像をオープンＰＦアプリＡによるコンテンツ画像から、ナビゲーションアプリ３１ａにより描画された地図画像に更新する。以上の手順により、車両が走行を開始するに伴って、表示部２６の画面がナビゲーションアプリ３１ａによる地図画像に自動的に遷移する。
【００６６】
その後、車両の走行が終了して停止状態になると、ＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａに対して描画終了指示を出す。ナビゲーションアプリ３１ａは、ＨＭＩコントローラ３５から描画終了指示を受けると、地図画像の描画を終了して画像を消去する。そして、地図画像の消去が完了すると、その旨をＨＭＩコントローラ３５に通知する。
【００６７】
ＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａから消去完了の通知を受けると、表示部２６で表示中の画像をナビゲーションアプリ３１ａにより描画された地図画像から、オープンＰＦアプリＡによるコンテンツ画像に更新する。以上の手順により、車両が走行を終了するに伴って、表示部２６の画面がオープンＰＦアプリＡによるコンテンツ画像に自動的に遷移する。
【００６８】
なお、上述の走行強制イベントでは、表示部２６における表示の切替えを行う事例について説明したが、アプリケーションによるＵＩ出力が音声出力（音声出力部２７）を行うものである場合でも同様に、走行開始・終了に伴い音声出力を行うアプリケーションの切替えを行う。また、走行強制イベントにおいて、走行開始後におけるＵＩ出力の切替え先をナビゲーションアプリ３１ａ以外の動作中の専用アプリケーション、又は走行強制対象ではない他の汎用アプリケーションとしてもよい。
【００６９】
［割込みイベントにおける表示切替シーケンスの説明］
つぎに、上述のＵＩ出力制御処理の具体例として、割込みイベントにおける表示切替シーケンスについて、図５を参照しながら説明する。割込みイベントでは、専用アプリケーションにおいて優先度の高い表示を行う割込み処理が発生したときに、動作中の他の汎用アプリケーションを一時的に停止又は強制終了して、その専用アプリケーションによるコンテンツの表示に切替える。その後、割込み処理が終了してから汎用アプリケーションの一時停止を解除して、その汎用アプリケーションによるコンテンツの表示を再開する。
【００７０】
図５に示す事例では、ナビゲーションアプリ３１ａ（専用アプリケーション）と、オープンプラットフォーム３２上で動作するオープンＰＦアプリＡ（汎用アプリケーション、認定）及びオープンＰＦアプリＢ（汎用アプリケーション、非認定）とが並行して動作しており、割込みイベントが発生する前の時点でオープンプラットフォーム３２上で動作するオープンＰＦアプリＡ，ＢによるＵＩ出力であるコンテンツ画像が表示部２６に表示されている状況を想定している。
【００７１】
図５に示すとおり、バーチャルＩＶＩシステム３４が、オープンプラットフォーム３２上で現在動作中の汎用アプリケーションを確認し、動作中であることを確認したオープンＰＦアプリＡ，Ｂの属性情報を参照する。これらの属性情報には、割込み処理のときに動作の一時停止が認められている（認定）か、認められていない（非認定）かを特定する情報が含まれている。バーチャルＩＶＩシステム３４は、動作中のオープンＰＦアプリＡ，Ｂについて認定か非認定かを把握する。なお、ここで説明する事例においては、オープンＰＦアプリＡが、動作の一時停止が認められた認定アプリケーションであり、オープンＰＦアプリＢが、動作の一時停止が認められていない非認定アプリケーションであると想定する。
【００７２】
一方、あるタイミングにおいて、ナビゲーションアプリ３１ａが、優先度の高い割込み処理として経路案内対象の交差点の拡大図を表示するための要求をＨＭＩコントローラ３５に通知する。これに対してＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａに対してコンテンツ画像の描画指示を出す。
【００７３】
ナビゲーションアプリ３１ａは、ＨＭＩコントローラ３５から描画指示を受けると、表示部２６に表示するためのコンテンツ画像として、経路案内対象の交差点の拡大図を所定の画像バッファに描画する。そして、交差点の拡大図の描画が完了すると、その旨をＨＭＩコントローラ３５に通知する。ＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａから描画完了の通知を受けると、バーチャルＩＶＩシステム３４に対して割込み処理による停止イベントの発生を通知する。そして、表示部２６で表示中の画像をオープンＰＦアプリＡ，Ｂによるコンテンツ画像からナビゲーションアプリ３１ａにより描画された交差点拡大図に更新する。以上の手順により、割込みイベントの発生に伴って、表示部２６の画面がナビゲーションアプリ３１ａによる交差点拡大図に自動的に遷移する。
【００７４】
一方、バーチャルＩＶＩシステム３４は、ＨＭＩコントローラ３５から割込み処理による停止イベントが通知されると、認定アプリケーションであるオープンＰＦアプリＡに対してプロセスの一時停止を指示する。ここでは、動作中の全ての認定アプリケーションに対して一時停止を指示する。オープンＰＦアプリＡは、バーチャルＩＶＩシステム３４から一時停止の指示を受けると、アプリケーションのプロセスを一時停止する。また、バーチャルＩＶＩシステム３４は、非認定アプリケーションであるオープンＰＦアプリＢに対して強制終了を行う。ここでは、動作中の全ての非認定アプリケーションに対して強制終了を行う。オープンＰＦアプリＢは、バーチャルＩＶＩシステム３４から強制終了されると、アプリケーションのプロセスを終了する。
【００７５】
その後、ナビゲーションアプリ３１ａにおいて交差点の拡大表示案内が終了すると、ナビゲーションアプリ３１ａは交差点拡大図の消去要求をＨＭＩコントローラ３５に通知する。ＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａから交差点拡大図の消去要求を受けると、ナビゲーションアプリ３１ａに対して描画終了指示を出す。ナビゲーションアプリ３１ａは、ＨＭＩコントローラ３５から描画終了指示を受けると、交差点拡大図の描画を終了して画像を消去する。そして、交差点拡大図の消去が完了すると、その旨をＨＭＩコントローラ３５に通知する。
【００７６】
ＨＭＩコントローラ３５は、ナビゲーションアプリ３１ａから消去完了の通知を受けると、バーチャルＩＶＩシステム３４に対して割込み処理の終了による再開イベントの発生を通知する。これに対し、バーチャルＩＶＩシステム３４は、ＨＭＩコントローラ３５から再開イベントが通知されると、一時停止中のオープンＰＦアプリＡ（認定アプリケーション）に対してプロセスの再開を指示する。ここでは、一時停止中の全ての認定アプリケーションに対して再開を指示する。オープンＰＦアプリＡは、バーチャルＩＶＩシステム３４から再開の指示を受けると、一時停止中のアプリケーションのプロセスを再開する。
【００７７】
そして、ＨＭＩコントローラ３５は、表示部２６で表示中の画像をナビゲーションアプリ３１ａにより描画された交差点拡大図から、一時停止が解除されたオープンＰＦアプリＡによるコンテンツ画像に更新する。以上の手順により、割込みイベントの終了に伴って、表示部２６の画面がオープンＰＦアプリＡによるコンテンツ画像に自動的に遷移する。
【００７８】
なお、上述の割込みイベントでは、表示部２６における表示の切替えを行う事例について説明したが、アプリケーションによるＵＩ出力が音声出力（音声出力部２７）を行うものである場合でも同様に、割込み処理の発生に伴い音声出力を行うアプリケーションの切替えや、切替えられた汎用アプリケーションの一時停止・強制終了を行う。また、割込みイベントにおいて、ＨＭＩコントローラ３５に対して割込み処理を要求する専用アプリケーションは、ナビゲーションアプリ３１ａ以外の専用アプリケーションであってもよい。例えば、クリアランスソナーアプリ３１ｃにおいて、障害物への接近に対する警報を行う場合等にＨＭＩコントローラ３５に対して割込み処理を要求し、ＨＭＩコントローラ３５がクリアランスソナーアプリ３１ｃのＵＩ出力に切替える。
【００７９】
［効果］
実施形態の車両用ナビゲーション装置によれば、以下のような効果を奏する。
汎用アプリケーションを動作させるためのオープンプラットフォーム３２を備えることで、クラウドコンピューティング等から導入される汎用アプリケーションによるＵＩ出力（表示、音声、触力覚的作用による情報提示）を行うことができる。特に、オープンプラットフォーム３２を用いることで、車両用ナビゲーション装置１における独自規格の専用アプリケーション以外に、オープンプラットフォームの標準規格に準拠した多種多様な汎用アプリケーションを利用できる。
【００８０】
ＨＭＩコントローラ３５は、今プラットフォーム上でどの汎用アプリケーションが動作しているかとか、その動作の状況等を自ら意識する必要はなく、専らバーチャルＩＶＩシステム３４から通知された属性情報に基づき、走行強制イベントや割込みイベント等の特定条件に応じて、必要なＵＩ出力に切替えることができる。また、バーチャルＩＶＩシステム３４をオープンプラットフォーム３２上で動作するソフトウェアとしたことで、共通のプラットフォーム上で動作する汎用アプリケーションとの間でデータの相互利用が可能であり、汎用アプリケーションに関する属性情報の取得や動作状況の把握が容易となる。
【００８１】
このように、バーチャルＩＶＩシステム３４とＨＭＩコントローラ３５との連携により実現する機能により、オープンプラットフォーム３２や汎用アプリケーション自体に車両用ナビゲーション装置１独自の仕組みを組込まず、それらが標準の仕組みを保ったままで、各汎用アプリケーションに車両用ナビゲーション装置１で機能する上での要件を満たす動作をさせることができる。
【００８２】
［特許請求の範囲に記載の構成との対応］
実施形態の車両用ナビゲーション装置の構成と、特許請求の範囲に記載の構成との対応は次のとおりである。実施形態のＨＭＩコントローラ３５が特許請求の範囲における制御手段に相当する。また、バーチャルＩＶＩシステム３４が管理手段に相当する。また、表示部２６及び音声出力部２７が出力手段に相当する。
【符号の説明】
【００８３】
１…車両用ナビゲーション装置、２１…位置検出部、２２…操作部、２３…通信部、２４…データ入力部、２５…車両情報入力部、２６…表示部、２７…音声出力部、２９…制御部、３１ａ〜３１ｃ…専用アプリケーション、３２…オープンプラットフォーム、３３ａ〜３３ｃ…汎用アプリケーション、３４…バーチャルＩＶＩシステム、３５…ＨＭＩコントローラ。
【図１】
0005482766.tif 000002
【図２】
0005482766.tif 000003
【図３】
0005482766.tif 000004
【図４】
0005482766.tif 000005
【図５】
0005482766.tif 000006