以下、本発明による携帯端末等の実施の形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。また、本実施の形態において説明する各情報の形式、内容などは、あくまで例示であり、各情報の持つ意味を示すことができれば、形式、内容などは問わない。
(実施の形態1)
本実施の形態において、携帯端末11と、ナビゲーション装置12とを備える情報システム1について説明する。携帯端末11は、ナビゲーション装置12との位置関係が予め決められた条件を満たすか否かを判断する。そして、満たす場合、携帯端末11は、ナビゲーション装置12に情報を送信するアプリケーションを実行する。当該「アプリケーション」とは、「アプリケーション・ソフトウェア」のことである。また、当該「アプリケーション」を、以下、適宜、「アプリ」とする。そして、携帯端末11は、当該アプリケーションを実行することにより、情報をナビゲーション装置12に送信する。また、ナビゲーション装置12は、携帯端末11から送信された情報を受信する。そして、ナビゲーション装置12は、受信した情報に応じて、所定の処理を行う。
図1は、本実施の形態における情報システム1の概念図である。図1において、携帯端末11と、ナビゲーション装置12とは、通信手段13を介して通信が可能である。図1において、携帯端末11は、例えば、スマートフォン、携帯電話、PDA、タブレットPC、ノートPCなどである。また、ナビゲーション装置12は、移動体に設置されている。移動体は、例えば、自動車、バイク、自転車などである。また、通信手段13は、通常、近距離(短距離)の無線通信手段である。通信手段13は、例えば、Wi−Fi(登録商標)、Bluetooth(登録商標)、NFC、ZigBee(登録商標)、赤外線などである。
また、図2は、本実施の形態における携帯端末11およびナビゲーション装置12のブロック図である。携帯端末11は、格納部111、実行判断部112、送信情報有無判断部113、アプリ実行部114、送信部115を備える。また、ナビゲーション装置12は、ナビ地図情報格納部121、ナビ受信部122、ナビ現在位置情報取得部123、ナビ処理部124、ナビ出力部125を備える。
格納部111には、1または2以上の送信アプリと、1または2種類以上の送信情報とが格納される。送信アプリとは、ナビゲーション装置12に情報を送信するアプリケーションである。また、送信情報とは、送信アプリがナビゲーション装置12に送信する情報である。また、送信情報は、ナビゲーション装置12が、ナビゲーションに利用する情報でもある。また、格納部111に格納されている送信情報は、格納部111に格納されている1または2以上の各送信アプリが送信する情報である。
送信アプリは、後述のアプリ実行部114により実行される。当該「実行」は、例えば、「起動」であってもよい。そして、送信アプリは、実行されることにより、送信情報をナビゲーション装置12に送信する。このとき、送信アプリは、例えば、1種類の送信情報を送信してもよいし、2種類以上の送信情報を送信してもよい。また、送信アプリは、例えば、送信情報をナビゲーション装置12に送信する機能のみを有するアプリである。また、送信アプリは、例えば、いわゆるナビゲーションアプリ、いわゆる地図アプリ、店舗などの地点を検索するアプリなどであってもよい。
また、送信情報は、例えば、地点情報、地図更新情報などである。地点情報とは、地点を示す情報である。また、地点情報は、例えば、地図上の地点に関する情報であるとも言える。また、地図更新情報とは、地図情報の更新に用いられる情報である。また、地図更新情報は、例えば、地図情報を更新するための情報であるとも言える。
地点情報は、例えば、地点の位置を示す情報を有する。また、地点情報は、例えば、地点を識別する情報、地点の種類を示す情報などを有していてもよい。地点を識別する情報は、例えば、地点の名称を示す情報、地点の住所を示す情報、地点の電話番号、地点のIDなどである。また、地点の種類は、問わない。地点の種類は、例えば、交差点、駐車場、休憩所、観光名所、駅、飲食店などの店舗、ユーザが所望する目的地、などである。
また、例えば、地点情報が目的地を示す場合、当該地点情報は、目的地を示す情報である目的地情報である。また、例えば、地点情報が駐車場を示す場合、当該地点情報は、駐車場を示す情報である駐車場情報である。また、例えば、地点情報が、移動体の燃料を補給する地点(例えば、ガソリンスタンドなど)を示す場合、当該地点情報は、燃料補給地点を示す情報である燃料補給地点情報である。
また、位置を示す情報を、以下、適宜、位置情報とする。位置情報が示す位置は、通常、経緯度である。また、当該位置は、例えば、地図上の座標であってもよい。また、当該位置は、例えば、高さ(高度)を含んでもよい。
また、地図更新情報は、例えば、地図情報のいわゆる差分である。ここで、地図情報とは、地図に関する情報である。また、地図情報により示される地図の種類や、地図情報のデータ形式などは、問わない。当該地図の種類は、例えば、地形図や、地勢図、地質図、土地利用図、住宅地図、路線図、道路地図、ガイドマップ、航空写真、衛星写真などである。また、当該データ形式は、例えば、ラスタデータや、ベクタデータ、KIWIフォーマットなどである。
また、地図情報は、例えば、1以上の地点情報を有する。また、地図情報は、例えば、1以上の道路情報を有する。道路情報とは、地図上の道路に関する情報である。当該地図上の道路は、通常、地図上の道路を構成する区間(以下、適宜、道路の区間とする)である。また、道路情報は、例えば、道路を識別する情報や、道路の種類を示す情報、道路の両端の位置を示す情報などを有する。道路を識別する情報は、通常、道路の名称を示す情報である。また、道路を識別する情報は、例えば、道路のIDであってもよい。また、道路情報は、例えば、道路のスコアや、道路の車線数、道路の進行方向などを示す情報などを有する。当該スコアは、通常、経路探索時に用いるコストである。
以上より、地点更新情報は、例えば、地点情報、道路情報などを有する情報である。当該地点情報は、例えば、新たに作られた地点、削除された地点などを示す情報である。また、当該道路情報は、例えば、新たに作られた道路、削除された道路などを示す情報である。また、当該地点情報、道路情報などには、例えば、新たに作られたこと、削除されたことを示す情報が対応付いていてもよい。当該情報は、いわゆるフラグである。
また、地図更新情報は、通常、地図情報の一部の更新に用いられる情報である。また、地図更新情報は、例えば、地図情報の全部の更新に用いられる情報であってもよい。
また、送信アプリには、通常、当該送信アプリが送信する1または2種類以上の送信情報が対応付いている。当該対応付けの方法や手法などは、問わない。当該「対応付いている」とは、例えば、送信アプリを識別する情報と、送信情報を識別する情報との対応表が、格納部111に格納されていることである。また、当該「対応付いている」とは、例えば、送信アプリが使用する記憶領域(例えば、フォルダなど)が予め決められており、当該記憶領域に、送信情報が格納されていることである。なお、例えば、送信アプリが送信する送信情報が格納部111に格納されていない場合、当該送信アプリには、送信情報は対応付いていない。
なお、格納部111に送信情報が蓄積される過程は、問わない。格納部111には、入力デバイス、通信回線、記録媒体などを介して、送信情報が蓄積される。また、当該送信情報の蓄積は、例えば、図示しない蓄積部が行う。
また、例えば、格納部111に格納されている送信情報が、2つの地点情報である場合、当該2つの地点情報には、例えば、到達する順序を示す情報(以下、適宜、順序情報とする)が対応付いていてもよい。順序情報は、例えば、どちらの地点に先に到達するかを示すフラグ、どちらの地点に後に到着するかを示すフラグ、到達する順序を示す数値などである。
また、上記、2つの地点情報に対応付いている順序情報は、通常、ユーザが入力した情報である。上記、2つの地点情報に対応付いている順序情報は、例えば、順序を有する2つの入力フィールドに入力された地点情報に対して、当該入力フィールドの順序に応じて対応付けられた情報であってもよい。例えば、地点情報を入力するための2つの各入力フィールド(以下、適宜、フィールドA、フィールドBとする)に対して地点情報が入力されたとする。また、当該2つの入力フィールドの順序が、フィールドA、フィールドBの順であるとする。このような場合、フィールドAに入力された地点情報には、例えば、先に到達することを示すフラグが対応付けられる。また、フィールドBに入力された情報には、例えば、後に到達することを示すフラグが対応付けられる。
実行判断部112は、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たすか否かを判断する。実行条件とは、送信アプリを実行することに関する条件である。また、実行条件は、例えば、携帯端末11とナビゲーション装置12との位置関係に関する条件である。また、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たすか否かの判断を、以下、適宜、実行判断とする。
実行条件は、通常、携帯端末11とナビゲーション装置12との通信が確立されたことである。通信が確立されたとは、例えば、携帯端末11とナビゲーション装置12の通信状態が、通信不可の状態から、通信可能な状態になったことである。また、実行条件は、例えば、ナビゲーション装置12が送信している情報を、携帯端末11が受信したことであってもよい。当該情報は、例えば、いわゆるビーコン信号である。つまり、実行条件は、例えば、携帯端末11とナビゲーション装置12との位置関係が、予め決められた条件を満たすほど近いこと、携帯端末11とナビゲーション装置12との位置関係が、通信可能である位置関係にあることなどである、と言える。
実行判断部112は、例えば、携帯端末11とナビゲーション装置12との通信状態を取得する。当該通信状態を取得するとは、具体的には、通信状態を示す情報を取得することである。そして、実行判断部112は、取得した通信状態が、通信不可の状態から、通信可能な状態になったか否かを判断する。当該判断は、通信が確立されたか否かの判断である。そして、通信状態が、通信不可の状態から、通信可能な状態になった場合、実行判断部112は、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たすと判断する。また、通信状態が、通信不可の状態である場合、実行判断部112は、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たさないと判断する。
また、実行判断部112は、例えば、図示しない受信部が、ナビゲーション装置12が送信している情報を受信したか否かを判断する。そして、受信した場合、実行判断部112は、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たすと判断する。また、受信していない場合、実行判断部112は、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たさないと判断する。
また、実行判断部112は、例えば、定期的(予め決められた期間が経過するたび)に、実行判断を行う。
また、実行判断部112は、例えば、実行条件を満たすか否かを判断した結果を示す情報を取得してもよい。当該情報は、通常、いわゆるフラグである。
なお、一の装置(ここでは、携帯端末11)において、他の装置(ここでは、ナビゲーション装置12)との通信が確立されたか否かを判断する方法や手順など、および、一の装置(ここでは、携帯端末11)において、他の装置(ここでは、ナビゲーション装置12)が送信している情報を受信したか否かを判断する方法や手順などは、公知であるので、詳細な説明を省略する。
送信情報有無判断部113は、送信アプリが送信する送信情報が、格納部111に格納されているか否かを判断する。当該判断を、以下、適宜、送信情報有無判断とする。例えば、送信情報有無判断部113は、後述のアプリ実行部114により実行される送信アプリに、送信情報が対応付いているか否かを判断する。そして、対応付いている場合、送信情報有無判断部113は、送信アプリが送信する送信情報が、格納部111に格納されていると判断する。また、対応付いていない場合、送信情報有無判断部113は、送信アプリが送信する送信情報が、格納部111に格納されていないと判断する。
また、送信情報有無判断部113は、例えば、実行判断部112が、携帯端末11とナビゲーション装置12との位置関係が、実行条件を満たすと判断した場合に、送信情報有無判断を行ってもよい。
また、送信情報有無判断部113は、例えば、送信アプリが送信する送信情報が、格納部111に格納されているか否かを判断した結果を示す情報を取得してもよい。当該情報は、通常、いわゆるフラグである。
アプリ実行部114は、実行判断部112が、位置関係が実行条件を満たすと判断した場合に、送信アプリを実行する。当該送信アプリは、格納部111に格納されている送信アプリである。また、当該送信アプリは、通常、予め決められている。また、当該送信アプリは、例えば、格納部111に格納されている1または2以上の送信アプリの中から、ユーザにより選択された一の送信アプリであってもよい。この場合、アプリ実行部114は、例えば、1または2以上の送信アプリの中から、一の送信アプリを選択するためのユーザ・インターフェースを出力する。当該ユーザ・インターフェースは、例えば、アプリ実行部114が予め保持している。そして、アプリ実行部114は、当該ユーザ・インターフェースを介して、ユーザから、アプリ選択指示を受け付ける。アプリ選択指示とは、送信アプリを選択する指示である。そして、アプリ実行部114は、当該アプリ選択指示により選択された送信アプリを実行する。
なお、受け付けとは、タッチパネルや、キーボードなどの入力デバイスから入力された情報の取得、光ディスクや磁気ディスク、半導体メモリなどの記録媒体に格納されている情報の読み出し、有線もしくは無線の通信回線を介して送信された情報の受信などを含む概念である。
また、アプリ実行部114は、例えば、実行判断部112が、位置関係が実行条件を満たすと判断し、かつ、送信情報有無判断部113が、送信情報が格納部111に格納されていると判断した場合に、送信アプリを実行してもよい。
また、アプリ実行部114により実行された送信アプリは、予め決められた送信情報を、ナビゲーション装置12に送信する。当該予め決められた送信情報とは、格納部111に格納されている送信情報であり、自身(送信アプリ)に対応付いている1または2種類以上の送信情報である。また、当該アプリ実行部114により実行された送信アプリによる送信情報の送信は、通常、後述の送信部115が行う。つまり、アプリ実行部114は、送信アプリのプログラムコード(命令)を解釈し、当該解釈の結果に応じた処理を行う。そして、アプリ実行部114は、例えば、プログラムコードが、送信情報を送信する命令である場合、当該命令に従い、実行中の送信プログラムに対応付いている送信情報をナビゲーション装置12に送信する旨を、後述の送信部115に指示する。当該指示を、以下、適宜、送信情報送信指示とする。
送信部115は、ナビゲーション装置12に、1または2種類以上の送信情報を送信する。具体的に、送信部115は、アプリ実行部114からの送信情報送信指示に従い、当該指示により特定される送信情報を送信する。
例えば、送信情報送信指示は、送信する送信情報を有する。この場合、送信部115は、当該送信情報を、ナビゲーション装置12に送信する。
また、例えば、送信情報送信指示は、送信する送信情報を識別する情報を有する。この場合、送信部115は、当該情報により識別される送信情報を、格納部111から取得する。そして、送信部115は、当該取得した送信情報を、ナビゲーション装置12に送信する。
また、送信部115は、例えば、ユーザからの指示に応じて、送信情報を送信してもよい。この場合、送信部115は、例えば、アプリ実行部114からの送信情報送信指示に従い送信情報を送信する前に、送信情報の送信を許可するか否かを選択するためのユーザ・インターフェースを出力する。当該ユーザ・インターフェースは、例えば、送信部115が予め保持している。そして、送信部115は、当該ユーザ・インターフェースを介して、ユーザから、送信許可指示または送信不許可指示を受け付ける。送信許可指示とは、送信情報の送信を許可する指示である。また、送信不許可指示とは、送信情報の送信を許可しない指示である。そして、送信部115は、例えば、送信許可指示を受け付けた場合に、送信情報を送信する。また、送信部115は、例えば、送信不許可指示を受け付けた場合に、送信指示を送信しない。
また、例えば、送信情報が2つの地点情報である場合、送信部115は、例えば、当該2つの地点情報に順序情報を対応付けて、ナビゲーション装置12に送信してもよい。この場合、送信部115は、例えば、当該2つの地点情報を送信する前に、順序情報を入力するためのユーザ・インターフェースを出力する。当該ユーザ・インターフェースは、例えば、送信部115が予め保持している。そして、送信部115は、当該ユーザ・インターフェースを介して、ユーザから、順序情報を受け付ける。そして、送信部115は、当該受け付けた順序情報を対応付けて、当該2つの地点情報を送信する。なお、当該2つの地点情報に順序情報が既に対応付いている場合、送信部115は、当該対応付いている順序情報と共に、当該2つの地点情報を送信する。
また、送信部115は、通常、無線または有線の通信手段で実現されるが、放送手段で実現されてもよい。
ナビ地図情報格納部121には、地図情報が格納される。
ナビ受信部122は、携帯端末11から、1または2種類以上の送信情報を受信する。ナビ受信部122は、通常、無線または有線の通信手段で実現されるが、放送を受信する手段で実現されてもよい。
ナビ現在位置情報取得部123は、現在位置情報を取得する。現在位置情報とは、現在位置を示す情報である。また、当該現在位置は、ナビゲーション装置12の現在位置である。また、当該現在位置は、例えば、ナビゲーション装置12が設置されている移動体の現在位置でもある。また、ナビ現在位置情報取得部123は、例えば、定期的(予め決められた期間が経過するたび)に現在位置情報を取得する。また、ナビ現在位置情報取得部123は、例えば、指示があるたびに現在位置情報を取得する。当該指示は、例えば、ユーザからの指示、後述のナビ処理部124からの指示などである。
また、ナビ現在位置情報取得部123は、通常、衛星航法システム(GPS受信機など)や、移動体通信用の基地局から位置情報を受信する装置などから、現在位置情報を取得する。この場合、ナビ現在位置情報取得部123は、これらの装置を有していてもよいし、これらの装置で実現され得てもよい。また、ナビ現在位置情報取得部123の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。
ナビ処理部124は、送信情報に応じた処理を行う。当該送信情報は、ナビ受信部122が受信した1または2種類以上の送信情報である。また、当該処理は、例えば、情報の取得、情報の更新などである。
例えば、ナビ受信部122が地点情報を受信した場合、ナビ処理部124は、例えば、現在位置から、当該地点情報が示す地点までの経路を示す経路情報を取得する。具体的に、ナビ処理部124は、地図情報と、現在位置情報と、当該地点情報とを用いて、現在位置情報が示す現在位置から、当該地点情報が示す地点までの経路を探索する。当該地図情報は、ナビ地図情報格納部121に格納されている地図情報である。また、当該現在位置情報は、ナビ現在位置情報取得部123が取得した現在位置情報である。そして、ナビ処理部124は、当該経路を示す情報である経路情報を取得する。経路情報は、例えば、経路が通過する位置を示す1以上の位置情報を有する。また、経路情報は、例えば、当該1以上の位置を結ぶ道路を示す道路情報を有する。
また、経路の探索には、通常、最短経路問題の解法(アルゴリズム)を用いる。「最短経路問題の解法」は、例えば、ダイクストラ法や、A*アルゴリズムなどである。これらの解法は、公知であるので、詳細な説明を省略する。また、経路情報を取得する方法や手順などは、公知であるので、詳細な説明を省略する。
また、例えば、ナビ受信部122が地点情報を受信した場合、ナビ処理部124は、例えば、当該地点情報が示す地点を含む地図を示す地図情報を取得する。当該取得する地図情報を、以下、適宜、出力地図情報とする。具体的に、ナビ処理部124は、地図情報と、当該地点情報とを用いて、当該地点情報が示す地点を略中心とし、当該地点を含む予め決められた領域の地図を示す出力地図情報を取得する。当該地図情報は、ナビ地図情報格納部121に格納されている地図情報である。つまり、出力地図情報は、例えば、ナビ地図情報格納部121に格納されている地図情報が示す地図の一部を示す地図情報であると言える。なお、一の地図情報(ここでは、ナビ地図情報格納部121に格納されている地図情報)から、当該地図情報が示す地図の一部を示す地図情報(ここでは、出力地図情報)を取得する方法や手順などは、公知であるので、詳細な説明を省略する。
また、例えば、ナビ受信部122が2つの地点情報を受信した場合、ナビ処理部124は、例えば、経路情報と出力地図情報とを取得する。この場合、ナビ処理部124は、地図情報と、現在位置情報と、2つの地点情報のうちの一方の地点情報とを用いて、当該現在位置情報が示す現在位置から、当該地点情報が示す地点までの経路を探索し、当該経路を示す経路情報を取得する。また、ナビ処理部124は、地図情報と、2つの地点情報のうちの他方の地点情報とを用いて、当該地点情報が示す地点を含む地図を示す出力地図情報を、ナビ地図情報格納部121から取得する。また、この場合、2つの地点情報は、例えば、目的地情報と駐車場情報であることが好適である。そして、ナビ処理部124は、例えば、当該目的地情報を用いて、上記経路情報を取得することが好適である。また、ナビ処理部124は、例えば、当該駐車場情報を用いて、上記出力地図情報を取得することが好適である。また、当該駐車場情報は、例えば、当該目的地情報が示す目的地付近の駐車場を示す情報であることが好適である。
また、例えば、ナビ受信部122が2つの地点情報を受信した場合、ナビ処理部124は、例えば、経路情報のみを取得する。この場合、ナビ処理部124は、地図情報と、現在位置情報と、2つの地点情報とを用いて、当該現在位置情報が示す現在位置から、当該2つの地点情報のうちの一方の地点情報が示す地点を経由する、当該2つの地点情報のうちの他方の地点情報が示す地点までの経路を探索し、当該経路を示す経路情報を取得する。また、この場合、2つの地点情報は、例えば、目的地情報と駐車場情報であることが好適である。そして、ナビ処理部124は、例えば、現在位置から、当該目的地情報が示す地点を経由する、当該駐車場情報が示す駐車場までの経路を示す経路情報を取得することが好適である。また、当該駐車場情報は、例えば、当該目的地情報が示す目的地付近の駐車場を示す情報であることが好適である。
また、上記、経路情報と出力地図情報とを取得する場合、ナビ処理部124は、例えば、2つの地点情報に対応付いている順序情報に基づき、経路情報と出力地図情報とを取得してもよい。つまり、この場合、ナビ処理部124は、例えば、当該順序情報により、先に訪れることが示される地点情報を用いて、当該地点情報が示す地点を目的地とする経路を示す経路情報を取得する。また、ナビ処理部124は、例えば、当該順序情報により、後に訪れることが示される地点情報が示す地点を含む地図を示す出力地図情報を取得する。
また、上記、経路情報のみを取得する場合、ナビ処理部124は、例えば、2つの地点情報に対応付いている順序情報に基づき、経路情報を取得してもよい。つまり、この場合、ナビ処理部124は、当該順序情報により、先に訪れることが示される地点情報が示す地点を経由地する、後に訪れることが示される地点情報が示す地点を目的地とする経路を示す経路情報を取得する。
また、上記、現在位置から、目的地情報が示す地点を経由する、駐車場情報が示す駐車場までの経路を示す経路情報の取得は、例えば、家族を目的地にて下車させてから、駐車場に向かうような場合に有用である。
また、例えば、ナビ受信部122が地図更新情報を受信した場合、ナビ処理部124は、当該地図更新情報を用いて、ナビ地図情報格納部121に格納されている地図情報を更新する。例えば、地図更新情報が、新たに作られた地点を示す地点情報を有する場合、ナビ処理部124は、ナビ地図情報格納部121に格納されている地図情報に、当該地点情報を追加する。また、例えば、地図更新情報が、削除された地点を示す地点情報を有する場合、ナビ処理部124は、ナビ地図情報格納部121に格納されている地図情報から、当該地点情報と同一の地点情報を削除する。また、例えば、地図更新情報が、新たに作られた道路を示す道路情報を有する場合、ナビ処理部124は、ナビ地図情報格納部121に格納されている地図情報に、当該道路情報を追加する。また、例えば、地図更新情報が、削除された道路を示す道路情報を有する場合、ナビ処理部124は、ナビ地図情報格納部121に格納されている地図情報から、当該道路情報と同一の道路情報を削除する。
なお、所定の情報(ここでは、地図情報)を、差分(ここでは、地図更新情報)を用いて更新する方法や手順などは、公知であるので、詳細な説明を省略する。
また、例えば、ナビ受信部122が地点情報と地図更新情報とを受信した場合、ナビ処理部124は、例えば、当該地点情報を用いて、経路情報、出力地図情報のいずれか一方または両方を取得し、かつ、当該地図更新情報を用いて、ナビ地図情報格納部121に格納されている地図情報を更新する。
ナビ出力部125は、ナビ処理部124が取得した情報を出力する。
例えば、ナビ処理部124が経路情報を取得した場合、ナビ出力部125は、当該経路情報を出力する。このとき、ナビ出力部125は、例えば、当該経路情報により示される経路が、地図上に表示されるように、地図情報と共に出力する。当該地図情報は、ナビ地図情報格納部121に格納されている地図情報である。
また、例えば、ナビ処理部124が出力地図情報を取得した場合、ナビ出力部125は、当該出力地図情報を出力する。このとき、ナビ出力部125は、例えば、当該出力地図情報の取得に用いた地点情報が示す地点が、当該出力地図情報が示す地図上に表示されるように、当該出力地図情報を出力する。例えば、ナビ出力部125は、当該地図上の、当該地点に対応する位置に、アイコンを出力する。
アイコンは、図柄、絵柄、記号、文字などを表現したものである。アイコンは、通常、いわゆる画像であるが、当該画像の形式は問わない。つまり、当該画像は、ラスタデータであってもよいし、ベクタデータであってもよいし、その他のデータであってもよい。また、アイコンは、アイコンの属性を示す1以上の属性情報を有していてもよい。当該属性は、例えば、色や、大きさ、形状などである。また、アイコンは、アイコンを識別するアイコン識別子を有していてもよい。
また、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。なお、送信や蓄積、処理結果の引渡しについては、出力対象が最終的にユーザに提示されるものとする。
また、ナビ出力部125は、ディスプレイやスピーカーなどの出力デバイスを含むと考えてもよいし、含まないと考えてもよい。ナビ出力部125は、出力デバイスのドライバソフトまたは、出力デバイスのドライバソフトと出力デバイスなどで実現され得る。
なお、格納部111、ナビ地図情報格納部121は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。また、格納部111などに所定の情報が記憶される過程は、問わない。例えば、当該所定の情報は、記録媒体や、通信回線、入力デバイスなどを介して格納部111などに記憶されてもよい。
また、実行判断部112、送信情報有無判断部113、アプリ実行部114、ナビ処理部124は、通常、MPUやメモリ等から実現され得る。また、実行判断部112などの処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。なお、実行判断部112などは、ハードウェア(専用回路)で実現されてもよい。
次に、情報システム1の全体動作について、フローチャートを用いて説明する。なお、所定の情報におけるi番目の情報は、「情報[i]」と記載するものとする。まず、携帯端末11の全体動作について、図3のフローチャートを用いて説明する。なお、図3のフローチャートにおいて、格納部111には、一の送信アプリが格納されているものとする。
(ステップS301)携帯端末11は、図示しない受付部が、電源ONの指示を受け付けたか否かを判断する。受け付けた場合は、ステップS302に進み、そうでない場合は、ステップS301に戻る。
(ステップS302)携帯端末11は、電源ONの処理を行う。
(ステップS303)図示しない蓄積部は、図示しない受付部が、地点情報を受け付けたか否かを判断する。このとき、図示しない受付部は、例えば、送信アプリまたはその他のアプリが有するユーザ・インターフェースを介して、地点情報を受け付ける。そして、受け付けた場合は、ステップS304に進み、そうでない場合は、ステップS305に進む。
(ステップS304)図示しない蓄積部は、ステップS303で受け付けた地点情報を、格納部111に格納されている送信アプリに対応付けて、格納部111に蓄積する。
(ステップS305)図示しない蓄積部は、図示しない受付部が、地図更新情報を受け付けたか否かを判断する。このとき、図示しない受付部は、例えば、地図更新情報を配信しているサーバ装置などから、地図更新情報を受け付ける。当該「受け付け」は、通常、受信である。そして、受け付けた場合は、ステップS306に進み、そうでない場合は、ステップS306に進む。
(ステップS306)図示しない蓄積部は、ステップS303で受け付けた地図更新情報を、格納部111に格納されている送信アプリに対応付けて、格納部111に蓄積する。
(ステップS307)実行判断部112は、実行判断を行う。この処理の詳細は、図4のフローチャートを用いて説明する。なお、当該実行判断の結果を示す情報は、実行フラグにセットされるものとする。
(ステップS308)アプリ実行部114は、実行フラグがtrueであるか否かを判断する。trueである場合は、ステップS309に進み、そうでない場合は、ステップS313に進む。
(ステップS309)送信情報有無判断部113は、格納部111に格納されている送信アプリに対応する送信情報が、格納部111に格納されているか否かを判断する。格納されている場合は、ステップS310に進み、そうでない場合は、ステップS313に進む。
(ステップS310)アプリ実行部114は、格納部111に格納されている送信アプリを実行する。また、アプリ実行部114は、当該送信アプリの実行に伴い、当該送信アプリに対応する送信情報をナビゲーション装置12に送信する旨を、送信部115に指示する。
(ステップS311)送信部115は、アプリ実行部114から送信情報送信指示を受け付けたか否かを判断する。受け付けた場合は、ステップS312に進み、そうでない場合は、ステップS313に進む。
(ステップS312)送信部115は、ステップS311で受け付けた送信情報送信指示により特定される送信情報を、ナビゲーション装置12に送信する。
(ステップS313)携帯端末11は、図示しない受付部が、電源OFFの指示を受け付けたか否かを判断する。受け付けた場合は、ステップS314に進み、そうでない場合は、ステップS303に戻る。
(ステップS314)携帯端末11は、電源OFFの処理を行う。そして、ステップS301に戻る。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
図4は、図3のフローチャートのステップS307の実行判断処理を示すフローチャートである。
(ステップS401)実行判断部112は、実行フラグにfalseをセットする。
(ステップS402)実行判断部112は、実行判断を行うタイミングであるか否かを判断する。当該タイミングは、通常、予め決められている。当該タイミングは、例えば、定期的、図示しない受信部が、ナビゲーション装置12が送信している情報を受信するたびなどである。そして、判断するタイミングである場合は、ステップS403に進み、そうでない場合は、上位処理にリターンする。
(ステップS403)実行判断部112は、携帯端末11とナビゲーション装置12との通信が確立されたか否かを判断する。確立された場合は、ステップS404に進み、そうでない場合は、上位処理にリターンする。
(ステップS404)実行判断部112は、実行フラグにtrueをセットする。そして、上位処理にリターンする。
次に、ナビゲーション装置12の全体動作について、図5のフローチャートを用いて説明する。
(ステップS501)ナビゲーション装置12は、図示しないナビ受付部が、電源ONの指示を受け付けたか否かを判断する。受け付けた場合は、ステップS502に進み、そうでない場合は、ステップS501に戻る。
(ステップS502)ナビゲーション装置12は、電源ONの処理を行う。
(ステップS503)ナビ処理部124は、ナビ受信部122が、携帯端末11から送信された送信情報を受信したか否かを判断する。受信した場合は、ステップS504に進み、そうでない場合は、ステップS509に進む。
(ステップS504)ナビ処理部124は、ステップS503で受信した送信情報が、地点情報であるか、地図更新情報であるかを判断する。地点情報である場合は、ステップS505に進み、地図更新情報である場合は、ステップS508に進む。
(ステップS505)ナビ処理部124は、ナビ現在位置情報取得部123に、現在位置情報を取得する旨を指示する。そして、ナビ現在位置情報取得部123は、当該指示に応じて、現在位置情報を取得する。
(ステップS506)ナビ処理部124は、ナビ地図情報格納部121に格納されている地図情報と、ステップS505で取得した現在位置情報と、ステップS503で受信した地点情報とを用いて、当該現在位置情報が示す現在位置から、当該地点情報が示す地点までの経路を探索し、当該経路を示す経路情報を取得する。
(ステップS507)ナビ出力部125は、ステップS506で取得した経路情報を出力する。
(ステップS508)ナビ処理部124は、ステップS503で受信した地図更新情報を用いて、ナビ地図情報格納部121に格納されている地図情報を更新する。
(ステップS509)ナビゲーション装置12は、図示しないナビ受付部が、電源OFFの指示を受け付けたか否かを判断する。受け付けた場合は、ステップS510に進み、そうでない場合は、ステップS503に戻る。
(ステップS510)ナビゲーション装置12は、電源OFFの処理を行う。そして、ステップS501に戻る。
なお、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
また、図4のフローチャートのステップS505、ステップS506において、ナビ処理部124は、ステップS503で受信した地点情報が示す地点を含む地図を示す出力地図情報を、ナビ地図情報格納部121から取得してもよい。この場合、ナビ出力部125は、ステップS507において、当該出力地図情報を出力する。
また、上記で説明した情報システム1の全体動作は、あくまで一例である。つまり、情報システム1の全体動作は、上記の説明に限定されるものではない。
(具体例)
次に、情報システム1の動作の具体例について説明する。なお、本具体例において、携帯端末11は、スマートフォン(以下、適宜、スマホとする)であるものとする。また、ナビゲーション装置12は、自動車に設置されているナビゲーションシステム(以下、適宜、カーナビとする)であるものとする。また、携帯端末11の格納部111には、送信アプリが格納されているものとする。当該送信アプリは、予め決められたフォルダに保存されている送信情報を、ナビゲーション装置12に送信するものとする。
(例1)
本例において、携帯端末11からナビゲーション装置12に、地点情報を送信する例について説明する。
まず、ユーザが、自宅でスマホを操作しているとする。そして、ユーザは、スマホにインストールされているアプリを使用して、行きたい飲食店を検索したとする。当該行きたい飲食店は、つまりは、目的地である。そして、ユーザは、行きたい飲食店を決定し、当該飲食店に関する情報を保存する操作を行ったとする。すると、図示しない蓄積部は、当該飲食店に関する地点情報を、格納部111に蓄積する。このとき、図示しない蓄積部は、当該地点情報が予め決められたフォルダに保存されるように、当該地点情報を蓄積する。当該フォルダは、送信アプリが使用するフォルダである。
次に、ユーザが、スマホを所持した状態で、自動車に乗り込んだとする。そして、ユーザは、自動車のエンジンをONにしたとする。すると、カーナビの電源がONになる。そして、ユーザが所持しているスマホとカーナビとの通信が確立される。
次に、実行判断部112は、スマホとカーナビとの位置関係が実行条件を満たすと判断する。
次に、送信情報有無判断部113は、格納部111に、送信アプリに対応する送信情報が格納されていると判断する。
次に、アプリ実行部114は、格納部111に格納されている送信アプリを実行する。そして、アプリ実行部114は、格納部111に格納されている地点情報をカーナビに送信する旨を、送信部115に指示する。
次に、送信部115は、格納部111に格納されている地点情報を、カーナビに送信する。
なお、上記、アプリ実行部114による送信部115への指示、および、送信部115による地点情報の送信は、例えば、実行されている送信アプリによる地点情報の送信、と表現してもよい。
次に、カーナビのナビ受信部122は、スマホから送信された地点情報を受信する。
次に、ナビ処理部124は、ナビ現在位置情報取得部123に、現在位置情報を取得する旨を指示する。そして、ナビ現在位置情報取得部123は、現在位置情報を取得する。
次に、ナビ処理部124は、ナビ地図情報格納部121に格納されている地図情報と、ナビ現在位置情報取得部123が取得した現在位置情報と、ナビ受信部122が受信した地点情報とを用いて、当該現在位置情報が示す現在位置から、当該地点情報が示す地点までの経路を探索する。そして、ナビ処理部124は、当該経路を示す経路情報を取得する。
次に、ナビ出力部125は、ナビ処理部124が取得した経路情報を、地図情報と共に出力する。当該出力の様子は、例えば、図6である。図6において、「S」のアイコンにより示される地点が、現在位置であり、「G」のアイコンにより示される地点が、ナビ受信部122が受信した地点情報が示す地点(目的地)である。
(例2)
本例において、携帯端末11からナビゲーション装置12に、地図更新情報を送信する例について説明する。
まず、ユーザが、自宅でスマホを操作しているとする。そして、ユーザは、スマホにインストールされているアプリを使用して、予め決められたサーバ装置から、地図更新情報を受信したとする。当該地図更新情報は、地点情報と、道路情報とを有する。すると、図示しない蓄積部は、当該地図更新情報を、格納部111に蓄積する。このとき、図示しない蓄積部は、当該地図更新情報が予め決められたフォルダに保存されるように、当該地図更新情報を蓄積する。当該フォルダは、送信アプリが使用するフォルダである。
なお、上記、地図更新情報が有する地点情報は、図7であるものとする。図7において、地点情報には、レコードを一意に特定するためのIDと、更新の対象となる地図情報に追加するか、または、更新の対象となる地図情報から削除するかを示す情報(項目名:追加・削除)が対応付いている。また、追加する地点情報は、地点ID、位置情報(項目名:位置)、地点の名称を示す情報(項目名:名称)、地点の住所を示す情報(項目名:住所)、地点の電話番号(項目名:電話番号)を有する。また、削除する地点情報は、地点IDを有する。
また、上記、地図更新情報が有する道路情報は、図8であるものとする。図8において、道路情報には、レコードを一意に特定するためのIDと、更新の対象となる地図情報に追加するか、または、更新の対象となる地図情報から削除するかを示す情報(項目名:追加・削除)が対応付いている。また、追加する道路情報は、道路ID、道路の端点を示す位置情報(項目名:端点1、端点2)、道路の名称を示す情報(項目名:名称)を有する。また、図8には記載されていないが、削除する道路情報は、通常、道路IDを有する。
次に、ユーザが、スマホを所持した状態で、自動車に乗り込んだとする。そして、ユーザは、自動車のエンジンをONにしたとする。すると、カーナビの電源がONになる。そして、ユーザが所持しているスマホとカーナビとの通信が確立される。
次に、実行判断部112は、スマホとカーナビとの位置関係が実行条件を満たすと判断する。
次に、送信情報有無判断部113は、格納部111に、送信アプリに対応する送信情報が格納されていると判断する。
次に、アプリ実行部114は、格納部111に格納されている送信アプリを実行する。そして、アプリ実行部114は、格納部111に格納されている地図更新情報をカーナビに送信する旨を、送信部115に指示する。
次に、送信部115は、格納部111に格納されている地図更新情報を、カーナビに送信する。
なお、上記、アプリ実行部114による送信部115への指示、および、送信部115による地図更新情報の送信は、例えば、実行されている送信アプリによる地図更新情報の送信、と表現してもよい。
次に、カーナビのナビ受信部122は、スマホから送信された地図更新情報を受信する。
次に、ナビ処理部124は、ナビ受信部122が受信した地図更新情報を用いて、ナビ地図情報格納部121に格納されている地図情報を更新する。例えば、ナビ処理部124は、図7において、「追加」が対応付いている地点情報を、当該地図情報に追加する。また、例えば、ナビ処理部124は、図7において、「削除」が対応付いている地点IDと同一の地点IDを有する地点情報を、当該地図情報から削除する。また、例えば、ナビ処理部124は、図8において、「追加」が対応付いている道路情報を、当該地図情報に追加する。
なお、例えば、更新前の地図情報が示す地図が、図9であるとすると、更新後の地図情報が示す地図は、例えば、図10である。図9と図10において、黒い点は、地点である。また、図10において、破線の道路は、更新により追加された道路情報が示す道路である。
以上、本実施の形態による情報システム1によれば、ナビゲーション装置12との位置関係が予め決められた条件を満たした場合に、ナビゲーション装置12に情報を送信するアプリケーションを自動的に動作させることができる。これにより、例えば、ユーザが、携帯端末11に予め保存しておいた情報を、ナビゲーション装置12に転送するような場合において、携帯端末11を操作することなく、自動的に、当該情報をナビゲーション装置12に転送することができる。また、この結果、ユーザは、余計な操作等をすることなく、通常の運転準備を行っている間に、携帯端末11に予め保存しておいた情報を、ナビゲーション装置12に転送することができる。
また、本実施の形態による情報システム1によれば、例えば、携帯端末11に予め保存しておいた2以上の地点情報を、ナビゲーション装置12との位置関係が予め決められた条件を満たした場合に、携帯端末11からナビゲーション装置12に自動的に送信することができる。この結果、例えば、当該2以上の地点情報が、目的地情報と駐車場情報の2つの地点情報である場合に、例えば、駐車場までの経路と、目的地を含む地図とを出力することができる。また、例えば、当該2以上の地点情報が、目的地情報と駐車場情報の2つの地点情報である場合に、例えば、目的地までの経路と、駐車場を含む地図とを出力することができる。また、例えば、当該2以上の地点情報が、目的地情報と駐車場情報の2つの地点情報である場合に、例えば、目的地情報が示す地点を経由する、当該駐車場情報が示す駐車場までの経路を出力することができる。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されてもよいことは言うまでもない。
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよいし、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよいし、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
また、上記各実施の形態における携帯端末を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、移動体に設置されたナビゲーション装置12に情報を送信するアプリケーションである1以上の送信アプリと、当該送信アプリが送信する情報である1以上の送信情報とが格納される格納部111にアクセス可能なコンピュータを、ナビゲーション装置12との位置関係が、前記送信アプリを実行することに関する条件である実行条件を満たすか否かを判断する実行判断部112、実行判断部112が、前記位置関係が前記実行条件を満たすと判断した場合に、前記送信アプリを実行するアプリ実行部114、前記送信アプリを実行しているアプリ実行部114からの指示により、当該指示により特定される前記送信情報を、ナビゲーション装置12に送信する送信部115として機能させるためのプログラムである。
また、上記各実施の形態におけるナビゲーション装置を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、地図情報が格納されるナビ地図情報格納部にアクセス可能なコンピュータを、送信情報を受信するナビ受信部、当該送信情報を用いて予め決められた処理を行うナビ処理部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。
また、上記プログラムは、サーバなどからダウンロードされることによって実行されてもよいし、所定の記録媒体(例えば、CD−ROMなどの光ディスクや磁気ディスク、半導体メモリなど)に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
また、上記プログラムを実行するコンピュータは、単数であってもよいし、複数であってもよい。つまり、集中処理を行ってもよいし、あるいは分散処理を行ってもよい。
また、図11は、前述のプログラムを実行して、前述の実施の形態の携帯端末等を実現するコンピュータシステム9の概観図である。前述の実施の形態は、コンピュータハードウェア、およびその上で実行されるコンピュータプログラムで実現され得る。
図11において、コンピュータシステム9は、CD−ROMドライブ9011を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図12は、コンピュータシステム9のブロック図である。図12において、コンピュータ901は、CD−ROMドライブ9011に加えて、MPU9012と、ブートアッププログラム等のプログラムを記憶するためのROM9013と、MPU9012に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM9014と、アプリケーションプログラム、システムプログラム、およびデータを記憶するためのハードディスク9015と、CD−ROMドライブ9011、MPU9012等を相互に接続するバス9016とを備える。ここでは図示しないが、コンピュータ901は、さらに、LANへの接続を提供するネットワークカードを備えていてもよい。
コンピュータシステム9に、前述の実施の形態の携帯端末等の機能を実行させるプログラムは、CD−ROM9101に記憶されて、CD−ROMドライブ9011に挿入され、さらにハードディスク9015に転送されてもよい。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク9015に記憶されてもよい。プログラムは実行の際にRAM9014にロードされる。プログラムは、CD−ROM9101またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、前述の実施の形態の携帯端末等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいればよい。コンピュータシステム9がどのように動作するかは周知であり、詳細な説明は省略する。
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。