以下、本発明に係るナビゲーションシステム、ナビゲーション装置及びサーバを具体化した一実施例に基づき図面を参照しつつ詳細に説明する。
先ず、本実施例に係るナビゲーションシステム1の概略構成について図1乃至図5を用いて説明する。図1は本実施例に係るナビゲーションシステム1を示したブロック図である。
図1に示すように本実施例に係るナビゲーションシステム1は、各プローブカー6に搭載されたナビゲーション装置2と、ナビゲーション装置2から送信されたプローブ情報を収集し、収集したプローブ情報等に基づいてポイントを該ナビゲーション装置2のユーザに対して付与するプローブセンタ3と、ネットワーク4とから基本的に構成されている。そして、ナビゲーション装置2とプローブセンタ3は、ネットワーク4を介して各種の情報の送受信が可能となるように構成されている。
尚、ナビゲーション装置2の構成に関しては後に図5を用いて詳細に説明する。
また、ネットワーク4としては、例えば、携帯電話回線網、電話回線網、公衆通信回線網、専用通信回線網、インターネット等の通信回線網等の通信系を使用することができる。また、このネットワーク4には、道路交通情報センタ(VICS(登録商標))5が接続され、ナビゲーション装置2とプローブセンタ3とは、ネットワーク4を介して、警察、日本道路公団等の交通管制システムの情報を収集して作成した道路の渋滞等に関する情報や交通規制情報等の交通情報を所定時間毎に受信することが可能に構成されている。
また、プローブセンタ3は、図1に示すようにサーバ10と、サーバ10に接続された地図情報記憶部としてのセンタ側地図情報データベース(センタ側地図情報DB)14と、利用者データベース(利用者DB)15と、ポイントデータベース(ポイントDB)16と、センタ側通信装置17と、プローブ情報DB18とを備える。
また、サーバ10は、サーバ10の全体の制御を行う演算装置及び制御装置としてのCPU11、並びにCPU11が各種の演算処理を行うに当たってワーキングメモリとして使用されるRAM12、後述の収集したプローブ情報等に基づいて該ナビゲーション装置2のユーザに対してポイントを付与するポイント付与処理(図6、図7参照)等を行うための各種の制御プログラムが記録されたROM13等の内部記憶装置や、時間を計測するタイマ19等を備えている。
また、プローブ情報DB18には、プローブカー6に搭載されたナビゲーション装置2から所定交差点通過毎や所定時間(例えば、約5分間である。)走行毎に送信されるプローブ情報等が格納されている。また、センタ側地図情報DB14には、経路案内及び地図表示に必要な各種情報から構成された地図情報が記憶されている。例えば、各新設道路を特定するための新設道路情報、地図を表示するための地図表示データ、各交差点に関する交差点データ、ノード点に関するノードデータ、道路(リンク)に関するリンクデータ、経路を探索するための探索データ、施設の一種である店舗等のPOI(Pointof Interest)に関する店舗データ、地点を検索するための検索データ等から構成された地図情報が記憶されている。
また、利用者DB15には、各ナビゲーション装置2に付与された識別情報である車両IDと、このナビゲーション装置2のユーザを識別するためのユーザID及びパスワードとに関連付けられた各目的地到着データテーブルF1〜F×××××毎に、到着した目的地と到着日時を記憶する利用者データファイル51(図2参照)が格納されている。
また、ポイントDB16には、ナビゲーション装置2のユーザが、設定した経路の目的地に到着した場合に、加算ポイントを付与する条件及び加算ポイント数を記憶する加算ポイント条件テーブル52(図3参照)が格納されている。また、ポイントDB16には、各ナビゲーション装置2のユーザに付与したポイント数を累計した総ポイント数を記憶する付与ポイントテーブル53(図4参照)が格納されている。
ここで、利用者DB15に格納される利用者データファイル51の一例に付いて図2に基づいて説明する。
図2に示すように、利用者データファイル51を構成する各目的地到着データテーブルF1〜F×××××は、「ユーザ名」と、「到着日時」と、設定した経路の目的地を記憶する「目的地」とから構成されている。
この「ユーザ名」には、ナビゲーション装置2に付与された識別情報である車両IDと、このナビゲーション装置2のユーザを識別するためのユーザID及びパスワードが記憶されている。例えば、目的地到着データテーブルF1の「ユーザ名」には、車両ID:10012、ユーザID:310012、パスワード:AB123が記憶されている。
また、「到着日時」には、「ユーザ名」によって識別されるビゲーション装置2のユーザが、設定した推奨経路の目的地に到着した日時が記憶されている。また、「目的地」には、設定した経路の目的地が、「到着日時」に記憶された日時に対応して記憶されている。これにより、サーバ10は、各ナビゲーション装置2のユーザ別に、設定された経路の目的地に到着した日時と、この到着した目的地とを各ユーザに対応する各目的地到着データテーブルF1〜F×××××に記憶することができる。
次に、ポイントDB16に格納される加算ポイント条件テーブル52の一例について図3に基づいて説明する。
図3に示すように、加算ポイント条件テーブル52は、加算ポイント数を付与する条件が記憶される「条件」と、「条件」を充足したときに基本ポイント数(例えば、「1」ポイントである。)に加算される加算ポイント数が記憶される「加算ポイント数」とから構成されている。
例えば、「条件」には、設定した経路の目的地に到着した回数を表す「目的地到着回数」として「100回目」、「1000回目」、「10000回目」が記憶され、それぞれに対応する「加算ポイント数」には、「10」、「50」、「100」の各ポイント数が記憶されている。また、「条件」には、同じ目的地に到着した回数を表す「同じ目的地への到着回数」として「10回目」、「100回目」、「1000回目」が記憶され、それぞれに対応する「加算ポイント数」には、「5」、「50」、「100」の各ポイント数が記憶されている。
また、「条件」には、設定した経路の出発地から目的地までの走行距離を表す「目的地までの走行距離」として「100km以上」、「500km以上」、「1000km以上」が記憶され、それぞれに対応する「加算ポイント数」には、「2」、「20」、「50」の各ポイント数が記憶されている。また、「条件」には、設定した経路の出発地から目的地までの走行時間を表す「目的地までの走行時間」として「2時間以上」、「5時間以上」、「8時間以上」が記憶され、それぞれに対応する「加算ポイント数」には、「2」、「10」、「20」の各ポイント数が記憶されている。
次に、ポイントDB16に格納される付与ポイントテーブル53の一例について図4に基づいて説明する。
図4に示すように、付与ポイントテーブル53は、「車両ID」と、「ユーザID」と、「パスワード」と、「更新日時」と、「ポイント数」とから構成されている。「車両ID」には、ナビゲーション装置2に付与された識別情報である車両IDが記憶されている。また、「ユーザID」には、「車両ID」に対応するナビゲーション装置2のユーザを識別するためのユーザIDが記憶されている。
また、「パスワード」には、「車両ID」に対応するナビゲーション装置2のユーザを識別するためのパスワードが記憶されている。また、「更新日時」には、「車両ID」に対応するナビゲーション装置2のユーザに付与した総ポイント数を更新した日時が記憶されている。また、「総ポイント数」には、「車両ID」に対応するナビゲーション装置2のユーザに付与したポイント数を累計した総ポイント数が記憶されている。
次に、本実施例に係るナビゲーションシステム1を構成するナビゲーション装置2の概略構成について図5を用いて説明する。図5は本実施例に係るナビゲーション装置2を示したブロック図である。
図5に示すように、本実施例に係るナビゲーション装置2は、自車の現在位置(以下、「自車位置」という。)を検出する現在地検出処理部21と、各種のデータが記録されたデータ記録部22と、入力された情報に基づいて、各種の演算処理を行うナビゲーション制御部23と、操作者からの操作を受け付ける操作部24と、操作者に対して地図等の情報を表示する液晶ディスプレイ(LCD)25と、経路案内に関する音声ガイダンスを出力するスピーカ26と、道路交通情報センタ5やプローブセンタ3等との間で携帯電話網等を介して通信を行う通信装置27と、フラッシュメモリを搭載した携帯型記憶媒体の一例としてのSDメモリカード23Aにデータを書き込み、また、該SDメモリカード23Aからデータを読み出すカードリードライト部(カードR/W部)23とから構成されている。また、ナビゲーション制御部23には自車両の走行速度を検出する車速センサ28が接続されている。
以下に、ナビゲーション装置2を構成する各構成要素について説明すると、現在地検出処理部21は、GPS31、方位センサ32、距離センサ33等からなり、自車位置、自車方位、走行距離等を検出することが可能となっている。
また、データ記録部22は、外部記憶装置及び記憶媒体としてのハードディスク(図示せず)と、ハードディスクに記憶されたナビ側地図情報データベース(ナビ側地図情報DB)37、走行履歴データベース(走行履歴DB)38、ポイントデータベース(ポイントDB)39とを備えている。
ここで、ナビ側地図情報DB37には、ナビゲーション装置2の走行案内や経路探索に使用されるナビ地図情報37Aが格納されている。ここで、ナビ地図情報37Aは、経路案内及び地図表示に必要な各種情報から構成されており、例えば、各新設道路を特定するための新設道路情報、地図を表示するための地図表示データ、各交差点に関する交差点データ、ノード点に関するノードデータ、道路(リンク)に関するリンクデータ、経路を探索するための探索データ、施設の一種である店舗等のPOI(Pointof Interest)に関する店舗データ、地点を検索するための検索データ等から構成されている。そして、ナビ側地図情報DB37の内容は、不図示の情報配信センタから通信装置27を介して配信された更新情報をダウンロードすることによって更新される。
また、走行履歴DB38には、単位距離区間(例えば、約50mの距離区間である。)の走行毎に、単位距離区間情報(例えば、単位距離区間の走行開始日時、単位距離区間の走行終了日時、単位距離区間の走行開始時における自車位置、単位距離区間の旅行時間、単位距離区間の走行開始時におけるリンクID、車線変更の有無等である。)が、順次記憶される。また、走行履歴DB37には、操作部24を介して設定した経路の出発地点及び出発地点を出発した日時、この設定した経路の目的地及び目的地に到着した日時、出発地点から目的地までの走行距離、走行時間等が、順次記憶される。
そして、後述のように、プローブカー6に搭載されたナビゲーション装置2は、所定交差点を通過毎や所定時間(例えば、約5分間である。)走行毎に、この走行履歴DB38に記憶された単位距離区間情報からプローブ情報を作成し、プローブセンタ3に通信装置27を介して送信する(図6参照)。
また、ポイントDB39には、後述のように、プローブセンタ3から更新された総ポイント数を受信する毎に、更新された総ポイント数を記憶する獲得ポイントデータテーブル61(図8参照)が格納されている。
ここで、獲得ポイントデータテーブル61の一例について図8に基づいて説明する。
図8に示すように、獲得ポイントデータテーブル61は、設定した目的地に到着した日時を表す「到着日時」と、設定した目的地を表す「目的地」と、この目的地に到着した際に、プローブセンタ3から受信した更新された総ポイント数を表す「総ポイント数」とから構成されている。従って、CPU41は、獲得ポイントデータテーブル61の「総ポイント数」のうち、最新の「到着日時」に対応する「総ポイント数」を読み出すことによって、現在、プローブセンタ3から付与されている総ポイント数を取得することができる。
また、図5に示すように、ナビゲーション装置2を構成するナビゲーション制御部23は、ナビゲーション装置2の全体の制御を行う演算装置及び制御装置としてのCPU41、並びにCPU41が各種の演算処理を行うに当たってワーキングメモリとして使用されるとともに、経路が探索されたときの経路データ等が記憶されるRAM42、制御用のプログラム等が記憶されたROM43、ROM43から読み出したプログラムを記憶するフラッシュメモリ44等の内部記憶装置や、時間を計測するタイマ45等を備えている。
また、ROM43には、後述のように、設定した経路の経路案内を行い、目的地に到着した場合に、到着日時、目的地の座標位置(例えば、緯度や経度である。)、目的地の施設名、出発地から目的地までの走行距離、走行時間等の目的地到着情報をプローブセンタ3へ送信し、また、受信した総ポイント数を記憶するポイント獲得処理(図6、図7参照)等を行うための制御プログラムが記憶されている。
また、本実施例においては、ROM43に各種のプログラムが記憶され、データ記録部22に各種のデータが記憶されるようになっているが、プログラム、データ等を同じ外部記憶装置、メモリーカード等からプログラム、データ等を読み出してフラッシュメモリ44に書き込むこともできる。更に、メモリーカード等を交換することによってプログラム、データ等を更新することができる。
更に、ナビゲーション制御部23には、操作部24、液晶ディスプレイ25、スピーカ26、通信装置27の各周辺装置(アクチュエータ)が電気的に接続されている。
操作部24は、走行開始時の現在地を修正し、案内開始地点としての出発地及び案内終了地点としての目的地を入力する際や施設に関する情報の検索を行う場合等に操作され、各種のキーや複数の操作スイッチから構成される。そして、ナビゲーション制御部23は、各スイッチの押下等により出力されるスイッチ信号に基づき、対応する各種の動作を実行すべく制御を行う。更に、液晶ディスプレイ25の前面には、タッチパネルが設けられ、画面に表示されたボタン上を押下することによって各種指示コマンドを入力することが可能に構成されている。
また、液晶ディスプレイ25には、ナビ地図情報37Aに基づく地図が表示されて各リンク上の交通情報が表示される経路案内画面の他、操作案内、操作メニュー、キーの案内、現在地から目的地までの誘導経路、誘導経路に沿った案内情報、交通情報、ニュース、天気予報、時刻、メール、テレビ番組等が表示される。
また、スピーカ26は、ナビゲーション制御部23からの指示に基づいて、推奨経路に沿った走行を案内する音声ガイダンス等を出力する。ここで、案内される音声ガイダンスとしては、例えば、「200m先、○○交差点を右方向です。」等がある。
そして、通信装置27は、プローブセンタ3と通信を行う携帯電話網等による通信手段であり、プローブセンタ3との間で種々の情報の送受信を行う。また、通信装置27は、プローブセンタ3に加えて、道路交通情報センタ5等から送信された渋滞情報、規制情報、駐車場情報、交通事故情報、サービスエリアの混雑状況等の各情報から成る交通情報を受信する。
次に、ナビゲーションシステム1において、ナビゲーション装置2のCPU41が、設定した経路の経路案内を行い、設定された目的地に到着した場合に、プローブセンタ3から受信した総ポイント数を記憶する「ポイント獲得処理」と、プローブセンタ3のCPU11が、設定した経路の目的地に到着したナビゲーション装置2のユーザに対してポイントを付与する「ポイント付与処理」とについて図6乃至図8に基づいて説明する。
尚、図6及び図7に、S11〜S26のフローチャートで示されるプログラムは、ナビゲーション装置2のROM42に記憶されており、操作部24を介して目的地を設定された場合に、CPU41により実行される。また、S111〜S119のフローチャートで示されるプログラムは、プローブセンタ3が備えているROM13に記憶されており、CPU11により所定時間毎(例えば、10ミリ秒毎〜100ミリ秒毎である。)に実行される。
図6に示すように、S11において、CPU41は、タッチパネル、操作スイッチ等の操作部24の入力操作等によって、目的地が設定された場合には、その目的地の座標位置等をRAM42に一時格納後、通信装置27を介して道路交通情報センタ5等から交通情報を取得し、現況交通情報としてRAM42に記憶する。そして、CPU41は、この現況交通情報やナビ地図情報37Aに基づいて、ダイクストラ法等によって、現在の自車位置から目的地までの経路を探索して、RAM42に記憶する。また、運転者が経路とは異なる道路へ進行するなどして自車位置が経路から外れた場合も、同様に現在の自車位置から目的地までの経路を探索する。つまり、CPU41は、目的地までの経路を設定する。
続いて、S12において、CPU41は、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録済みか否かを判定する判定処理を実行する。具体的には、フラッシュメモリ44に記憶されているユーザID登録フラグがONに設定されているか否かを判定する判定処理を実行する。尚、プローブカー6に搭載されたナビゲーション装置2のCPU41は、ユーザIDをプローブセンタ3に登録していない場合には、フラッシュメモリ44に記憶されているユーザID登録フラグをOFFに設定している。
そして、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録済みであると判定した場合、つまり、フラッシュメモリ44に記憶されているユーザID登録フラグがONに設定されている場合には(S12:YES)、CPU41は、後述のS16の処理に移行する。
一方、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録されていないと判定した場合、つまり、フラッシュメモリ44に記憶されているユーザID登録フラグがOFFに設定されている場合には(S12:NO)、CPU41は、S13の処理に移行する。S13において、CPU41は、液晶ディスプレイ25にユーザID及びパスワードの入力要求を表示する。
そして、S14において、CPU41は、操作部24を介して入力されたユーザID及びパスワードを液晶ディスプレイ25に表示すると共に、通信装置27を介して当該ユーザID及びパスワードの認証を要求する認証要求コマンドをプローブセンタ3へ送信する。尚、この認証要求コマンドには、当該ユーザID及びパスワードが含まれている。また、所定時間内(例えば、約5分以内である。)にユーザID及びパスワードが入力されない場合には、CPU41は当該処理を終了する。
他方、プローブセンタ3のCPU11は、S111において、センタ側通信装置17を介してユーザID及びパスワードの認証を要求する認証要求コマンドを受信したか否かを判定する判定処理を実行する。そして、ユーザID及びパスワードの認証を要求する認証要求コマンドを受信していないと判定した場合には(S111:NO)、CPU11は、後述のS113の処理に移行する。
一方、ユーザID及びパスワードの認証を要求する認証要求コマンドを受信したと判定した場合には(S111:YES)、CPU11は、S112の処理に移行する。S112において、CPU11は、受信したユーザID及びパスワードが、利用者DB15に格納する利用者データフィアイル51を構成する各目的地到着データファイルF1〜F×××××の何れかの「ユーザ名」に記憶されているどうか、つまり、登録されているかどうか検索する。
そして、受信したユーザID及びパスワードが、各目的地到着データファイルF1〜F×××××の何れかの「ユーザ名」に記憶されていた場合には、CPU11は、受信したユーザIDを認証する旨を表す「認証許可」の認証結果をユーザIDと共にRAM12に記憶する。また、CPU11は、この「認証許可」の認証結果を当該ナビゲーション装置2に対して送信後、後述のS113の処理に移行する。
また、受信したユーザID及びパスワードが、各目的地到着データファイルF1〜F×××××の全ての「ユーザ名」に記憶されていない場合には、CPU11は、受信したユーザIDを認証しない旨を表す「認証不可」の認証結果をユーザIDと共にRAM12に記憶する。また、CPU11は、この「認証不可」の認証結果を当該ナビゲーション装置2に対して送信後、後述のS113の処理に移行する。
また他方、ナビゲーション装置2のCPU41は、S15において、通信装置27を介してプローブセンタ3からユーザID及びパスワードの認証結果を受信するのを待ち、認証結果を受信した場合には、この認証結果をRAM42に記憶すると共に、液晶ディスプレイ25に表示して、ユーザに報知する。
そして、S16において、CPU41は、液晶ディスプレイ15に表示した地図上に、上記S11で設定した自車位置から目的地までの経路を太い青線等で表示すると共に、自車位置を車両位置マークで表示して、経路に沿って経路案内を行う。
また、S17において、CPU41は、現在地検出処理部11の検出結果やナビ地図情報37Aに基づいて、単位距離区間(例えば、約50mの距離区間である。)毎に、走行状態に関する情報を収集して走行履歴DB38に記憶する。例えば、CPU41は、当該単位距離区間の走行開始日時、当該単位距離区間の走行終了日時、当該単位距離区間の旅行時間、当該単位距離区間の走行開始時における自車位置、当該単位距離区間の走行開始時における自車が存在するリンクのリンクID等の情報をRAM42に一時記憶して収集し、これらの収集した走行状態に関する情報を、当該単位距離区間に対応する単位距離区間情報として、走行履歴DB38に時系列的に記憶する。
続いて、S18において、CPU41は、プローブ情報等をプローブセンタ3に送信した前回の送信時刻を表す送信時刻データをRAM42から読み出し、この前回の時刻から所定の一定時間(例えば、約5分である。)が経過したか否かを判定する判定処理を実行する。つまり、CPU41は、プローブ情報等をプローブセンタ3に送信する通信タイミングか否かを判定する判定処理を実行する。
そして、プローブ情報をプローブセンタ3に送信した前回の送信時刻から所定の一定時間が経過していない場合には(S18:NO)、CPU41は、後述のS20の処理に移行する。
一方、プローブ情報をプローブセンタ3に送信した前回の送信時刻から所定の一定時間が経過した場合には(S18:YES)、CPU41は、S19の処理に移行する。S19において、CPU41は、プローブ情報をプローブセンタ3に送信した前回の送信時刻から走行履歴DB38に記憶した単位距離区間情報を順次読み出し、当該ナビゲーション装置2を識別する車両ID及びユーザIDと共にプローブ情報としてプローブセンタ3に送信後、S20の処理に移行する。
他方、プローブセンタ3のCPU11は、S113において、上記S19でナビゲーション装置2から送信されたプローブ情報と車両ID及びユーザIDを受信したか否かを判定する判定処理を実行する。
そして、プローブ情報と車両ID及びユーザIDを受信していないと判定した場合には(S113:NO)、CPU11は、後述のS115の処理に移行する。
一方、プローブ情報と車両ID及びユーザIDを受信したと判定した場合には(S113:YES)、CPU11は、受信したプローブ情報と車両ID及びユーザIDをプローブ情報DB18に記憶後、S114の処理に移行する。S114において、CPU11は、プローブ情報DB18に格納されるプローブ情報と道路交通情報センタ5から受信した交通情報等に基づいて現況の道路の渋滞等に関する情報である現況交通情報を更新して、不図示の情報配信センタへ送信後、後述のS115の処理に移行する。
また他方、図6及び図7に示すように、ナビゲーション装置2のCPU41は、S20において、自車位置が上記S11で設定した目的地に到着したか否か、つまり、目的地に位置するか否かを判定する判定処理を実行する。そして、自車位置が目的地に到着していないと判定した場合には(S20:NO)、CPU41は、再度S16以降の処理を実行する。
一方、自車位置が目的地に到着したと判定した場合には(S20:YES)、CPU41は、この目的地に到着した日時と、目的地の施設の名称、座標位置(例えば、緯度と経度である。)、電話番号、出発地から目的地までの走行距離及び走行時間等をRAM42に記憶後、S21の処理に移行する。S21において、CPU41は、上記S15で受信した認証結果をRAM42から読み出し、ユーザID及びパスワードをプローブセンタ3が認証した旨を表す「認証許可」か否かを判定する判定処理を実行する。
そして、RAM42から読み出した認証結果が「認証許可」でない、つまり、「認証不可」の場合には(S21:NO)、CPU41は、ユーザID及びパスワードがプローブセンタ3に登録されていないと判定し、当該処理を終了する。
一方、RAM42から読み出した認証結果が「認証許可」の場合には(S21:YES)、CPU41は、S22の処理に移行する。
S22において、CPU41は、目的地に到着した日時と、目的地の施設の名称、座標位置、電話番号、出発地から目的地までの走行距離及び走行時間等をRAM42から読み出し、車両ID及びユーザIDと共に目的地到着情報としてプローブセンタ3に送信後、後述のS23の処理に移行する。
他方、プローブセンタ3のCPU11は、S115において、上記S22でナビゲーション装置2から送信された目的地到着情報と車両ID及びユーザIDを受信したか否かを判定する判定処理を実行する。
そして、目的地到着情報と車両ID及びユーザIDを受信していないと判定した場合には(S115:NO)、CPU11は、再度S111以降の処理を実行する。
一方、目的地到着情報と車両ID及びユーザIDを受信したと判定した場合には(S115:YES)、CPU11は、受信した目的地到着情報と車両ID及びユーザIDをRAM12に記憶後、S116の処理に移行する。S116において、CPU11は、受信した車両ID及びユーザIDを読み出し、当該車両ID及びユーザIDと対になったプローブ情報が、現在から所定時間以内(例えば、30分以内である。)のプローブ情報としてプローブ情報DB18に記憶されているか否か、つまり、当該ナビゲーション装置2からプローブ情報を受信したか否かを判定する判定処理を実行する。
そして、受信した車両ID及びユーザIDと対になったプローブ情報が、現在から所定時間以内のプローブ情報としてプローブ情報DB18に記憶されていないと判定した場合、つまり、当該ナビゲーション装置2からプローブ情報を受信していないと判定した場合には(S116:NO)、CPU11は、再度S111以降の処理を実行する。
一方、受信した車両ID及びユーザIDと対になったプローブ情報が、現在から所定時間以内のプローブ情報としてプローブ情報DB18に記憶されていると判定した場合、つまり、当該ナビゲーション装置2からプローブ情報を受信していたと判定した場合には(S116:YES)、CPU11は、S117の処理に移行する。S117において、CPU11は、上記S115で記憶した目的地到着情報とユーザIDとをRAM12から読み出す。
そして、CPU11は、利用者DB15に格納する利用者データフィアイル51を構成する各目的地到着データファイルF1〜F×××××のうち、「ユーザ名」に当該ユーザIDが記憶されている目的地到着データファイルを抽出する。そして、CPU11は、当該目的地到着情報から「目的地に到着した日時」のデータを読み出し、この抽出した目的地到着データファイルの「到着日時」に記憶する。また、CPU11は、当該目的地到着情報から「目的地の施設の名称、座標位置、電話番号等」のデータを読み出し、この抽出した目的地到着データファイルに記憶した「到着日時」に対応する「目的地」に記憶する。
例えば、上記S115で受信したユーザIDが「310012」で、目的地到着情報の「目的地に到着した日時」が「2010年10月2日 8時13分21秒」で、「目的地の施設の名称」が「ネズミーランド」の場合には、図2に示すように、CPU11は、「ユーザ名」に「ユーザID:310012」が記憶されている目的地到着データファイルF1を抽出する。そして、CPU11は、目的地到着データファイルF1の「到着日時」に「2010/10/02 08:13:21」を記憶し、この「到着日時」に対応する「目的地」に「ネズミーランド」を記憶して、再度、利用者DB15に格納する。
その後、S118において、CPU11は、上記S117で抽出した目的地到着データファイルを利用者DB15に格納される利用者データファイル51から読み出し、「目的地」に記憶されている目的地の名称の個数をカウントし、今回の「目的地到着回数」としてRAM12に記憶する。また、CPU11は、この抽出した目的地到着データファイルに、今回記憶した「目的地」(例えば、「ネズミーランド」である。)が記憶されている回数をカウントし、今回の「同じ目的地への到着回数」としてRAM12に記憶する。
そして、CPU11は、今回の「目的地到着回数」、「同じ目的地への到着回数」をRAM12から読み出すと共に、上記S115で記憶した目的地到着情報から「出発地から目的地までの走行距離及び走行時間」をRAM12から読み出す。そして、CPU11は、これらのうち、ポイントDB16に格納する加算ポイント条件テーブル52の「条件」に該当するものがあれば、該当する「条件」に対応する「加算ポイント数」を加算ポイント条件テーブル52から読み出す。
そして、CPU11は、ROM13から基本ポイント数(例えば、「1」ポイントである。)を読み出し、この基本ポイント数に「加算ポイント数」を加算して、今回の「付与ポイント数」としてRAM12に記憶する。従って、加算ポイント数が「0」の場合には、今回の「付与ポイント数」は、基本ポイント数である(例えば、「1」ポイントである。)。
続いて、CPU11は、上記S115で記憶したユーザIDをRAM12から読み出す。そして、CPU11は、このユーザIDをポイントDB16に格納する付与ポイントテーブル53の「ユーザID」として、この「ユーザID」に対応する「総ポイント数」を付与ポイントテーブル53から読み出す。
そして、CPU11は、この「総ポイント数」に今回の「付与ポイント数」を加算して、再度、この「ユーザID」に対応する付与ポイントテーブル53の「総ポイント数」に記憶して、当該「総ポイント数」を更新する。また、CPU11は、この「ユーザID」に対応する付与ポイントテーブル53の「更新日時」を初期化した後、現在の日時を再度記憶する、つまり、「総ポイント数」を更新した日時を記憶する。
その後、S119において、CPU11は、上記S115で記憶したユーザIDをRAM12から読み出し、このユーザIDをポイントDB16に格納する付与ポイントテーブル53の「ユーザID」として、この「ユーザID」に対応する「総ポイント数」を付与ポイントテーブル53から読み出す。そして、CPU11は、この「総ポイント数」を付与する更新された「総ポイント数」として当該ナビゲーション装置2に対して送信後、再度S111以降の処理を実行する。
また他方、ナビゲーション装置2のCPU11は、S23において、更新された「総ポイント数」を、目的地到着情報を送信後、所定時間内(例えば、約3分以内である。)に通信装置27を介して受信したか否かを判定する判定処理を実行する。そして、更新された「総ポイント数」を、目的地到着情報を送信後、所定時間内に受信していないと判定した場合には(S23:NO)、CPU41は、当該処理を終了する。
一方、更新された「総ポイント数」を、目的地到着情報を送信後、所定時間内に受信したと判定した場合には(S23:YES)、CPU41は、この更新された「総ポイント数」をRAM42に記憶後、S24の処理に移行する。S24において、この受信した更新された「総ポイント数」を液晶ディスプレイ25に表示すると共に、スピーカ26を介して音声案内する。
続いて、S25において、CPU41は、上記S12の処理を再度実行する。そして、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録されていないと判定した場合、つまり、フラッシュメモリ44に記憶されているユーザID登録フラグがOFFに設定されている場合には(S25:NO)、CPU41は、当該処理を終了する。
一方、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録済みであると判定した場合、つまり、フラッシュメモリ44に記憶されているユーザID登録フラグがONに設定されている場合には(S25:YES)、CPU41は、S26の処理に移行する。
S26において、CPU41は、上記S20で記憶した目的地に到着した日時と、目的地の施設の名称、座標位置、電話番号等をRAM42から読み出し、ポイントDB39に格納している獲得ポイントデータテーブル61の「到着日時」に、この「目的地に到着した日時」を記憶する。
また、CPU41は、獲得ポイントデータテーブル61の当該「目的地に到着した日時」に対応する「目的地」に、この「目的地の施設の名称、座標位置、電話番号等」を記憶する。更に、CPU41は、獲得ポイントデータテーブル61の当該「目的地に到着した日時」に対応する「総ポイント数」に、上記S23で受信した更新された「総ポイント数」を記憶した後、当該処理を終了する。
例えば、図8に示すように、獲得ポイントデータテーブル61には、「2010年10月23日 23時12分21秒」に、設定された経路の目的地として「名古屋駅」に到着した際に、更新された総ポイント数として「15304」ポイントをプローブセンタ3から受信した旨が記憶されている。
以上詳細に説明した通り、本実施例に係るナビゲーションシステム1では、ナビゲーション装置2のCPU41は、設定された目的地に到着した場合に、目的地到着情報をプローブセンタ3へ送信することによって、この目的地到着情報に基づいて更新された総ポイント数をプローブセンタ3から付与される。これにより、運転者は推奨経路の経路案内通りに走行しなくても、設定した目的地に到着すれば、ポイント数を獲得でき、総ポイント数を更新することができる。このため、運転者は推奨経路の案内通りに走行することを強いられることなく、設定した目的地まで快適に走行することができ、ナビゲーション装置2の利用の向上を図ることが可能となる。
また、プローブセンタ3のCPU11は、ナビゲーション装置2から受信した目的地到着情報に含まれる出発地から目的地までの走行距離又は走行時間に応じた加算ポイント数を基本ポイント数に加算して付与するため、運転者は設定した目的地まで、長距離走行又は長時間走行をした場合に、高いポイント数を獲得することができる。これにより、目的地までの走行距離が長距離である場合や、目的地までの走行時間が長時間かかる場合に、運転者によるナビゲーション装置2の利用の更なる向上を図ることが可能となる。
また、プローブセンタ3のCPU11は、経路案内中のナビゲーション装置2からプローブ情報を受信していた場合に、目的地到着情報に基づいた更新された総ポイント数を該プローブ情報に対応するナビゲーション装置2に送信する。これにより、運転者がポイントを獲得するために、ナビゲーション装置2の利用の更なる向上を図ることが可能となる。
また、プローブセンタ3のCPU11は、ナビゲーション装置2から受信したユーザIDが、利用者DB15に格納する利用者データフィアイル51を構成する各目的地到着データファイルF1〜F×××××の何れかの「ユーザ名」に記憶されている場合に、ポイントDB16に格納する付与ポイントテーブル53の当該ユーザIDに対応する「総ポイント数」を更新する。
これにより、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録されていない場合でも、運転者は当該ナビゲーション装置2にユーザIDを入力することによって、設定した目的地に到着すれば、ポイント数を獲得して総ポイント数を更新することができる。このため、運転者によるナビゲーション装置2の利用の更なる向上を図ることが可能となる。
尚、本発明は前記実施例に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。
[他の実施例]
例えば、図3に示す加算ポイント条件テーブル52をナビゲーション装置2のポイントDB39に記憶するようにしてもよい。そして、ナビゲーション装置2のCPU41は、図9に示す「ポイント付与処理」を実行するようにしてもよい。尚、図9に、S211〜S219のフローチャートで示されるプログラムは、ナビゲーション装置2のROM42に記憶されており、操作部24を介して目的地を設定された場合に、CPU41により実行される。
具体的には、図9に示すように、S211において、CPU41は、上記S11の処理を実行する。そして、S212〜S216において、CPU41は、上記S16〜S20の処理を実行する。
続いて、自車位置が目的地に到着したと判定した場合には(S216:YES)、CPU41は、この目的地に到着した日時と、目的地の施設の名称、座標位置(例えば、緯度と経度である。)、電話番号、出発地から目的地までの走行距離及び走行時間等を目的地到着情報としてRAM42に記憶後、S217の処理に移行する。
S217において、CPU41は、ポイントDB39に格納される獲得ポイントデータテーブル61の「目的地」に記憶されている目的地の名称の個数をカウントし、このカウント値に「1」加算した値を、今回の「目的地到着回数」としてRAM42に記憶する。また、CPU41は、獲得ポイントデータテーブル61の「目的地」に、上記S217で記憶した目的地の施設の名称が記憶されている回数をカウントし、このカウント値に「1」加算した値を、今回の「同じ目的地への到着回数」としてRAM42に記憶する。
そして、CPU41は、今回の「目的地到着回数」、「同じ目的地への到着回数」をRAM42から読み出すと共に、上記S217で記憶した目的地到着情報から「出発地から目的地までの走行距離及び走行時間」をRAM42から読み出す。そして、CPU41は、これらのうち、ポイントDB39に格納する加算ポイント条件テーブル52の「条件」に該当するものがあれば、該当する「条件」に対応する「加算ポイント数」を加算ポイント条件テーブル52から読み出す。
そして、CPU41は、ROM43から基本ポイント数(例えば、「1」ポイントである。)を読み出し、この基本ポイント数に「加算ポイント数」を加算して、今回の「付与ポイント数」としてRAM42に記憶する。従って、加算ポイント数が「0」の場合には、今回の「付与ポイント数」は、基本ポイント数である(例えば、「1」ポイントである。)。
続いて、CPU41は、ポイントDB39に格納する獲得ポイントデータテーブル61に記憶されている最新の「到着日時」に対応する「総ポイント数」を読み出し、この「総ポイント数」に今回の「付与ポイント数」を加算して、更新された「総ポイント数」としてRAM42に記憶する。
その後、S218において、CPU41は、上記S25の処理を実行する。そして、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録されていないと判定した場合、つまり、フラッシュメモリ44に記憶されているユーザID登録フラグがOFFに設定されている場合には(S218:NO)、CPU41は、当該処理を終了する。
一方、当該ナビゲーション装置2のユーザを識別するユーザIDがプローブセンタ3に登録済みであると判定した場合、つまり、フラッシュメモリ44に記憶されているユーザID登録フラグがONに設定されている場合には(S218:YES)、CPU41は、S219の処理に移行する。
S219において、CPU41は、上記S216で記憶した目的地に到着した日時と、目的地の施設の名称、座標位置、電話番号等をRAM42から読み出し、ポイントDB39に格納している獲得ポイントデータテーブル61の「到着日時」に、この「目的地に到着した日時」を記憶する。
また、CPU41は、獲得ポイントデータテーブル61の当該「目的地に到着した日時」に対応する「目的地」に、この「目的地の施設の名称、座標位置、電話番号等」を記憶する。更に、CPU41は、上記S217で記憶した更新された「総ポイント数」をRAM42から読み出して、獲得ポイントデータテーブル61の当該「目的地に到着した日時」に対応する「総ポイント数」に、記憶した後、当該処理を終了するようにしてもよい。
従って、ナビゲーション装置2のCPU41は、設定された目的地に到着した場合に、目的地に到着した日時と、目的地の施設の名称、座標位置(例えば、緯度と経度である。)、電話番号、出発地から目的地までの走行距離及び走行時間等を目的地到着情報としてRAM42に記憶する。そして、CPU41は、この目的地到着情報に基づいて更新された総ポイント数を算出して、獲得ポイントデータテーブル61の「総ポイント数」に記憶する。
これにより、運転者は推奨経路の経路案内通りに走行しなくても、設定した目的地に到着すれば、ポイント数を獲得でき、総ポイント数を更新することができる。このため、運転者は推奨経路の案内通りに走行することを強いられることなく、設定した目的地まで快適に走行することができ、ナビゲーション装置2の利用の向上を図ることが可能となる。
また、ナビゲーション装置2のCPU41は、出発地から目的地までの走行距離又は走行時間に応じた加算ポイント数を基本ポイント数に加算するため、運転者は設定した目的地まで、長距離走行又は長時間走行をした場合に、高いポイント数を獲得することができる。これにより、目的地までの走行距離が長距離である場合や、目的地までの走行時間が長時間かかる場合に、運転者によるナビゲーション装置2の利用の更なる向上を図ることが可能となる。
また、上述した本実施例を以下の(A)〜(D)のようにしてもよい。
(A)例えば、上記S118において、CPU11は、過去24時間以内に他車両が到着していない目的地に到着した到着回数が、10回目、100回目、1000回目等において、所定の加算ポイント数(例えば、10ポイント等である。)を基本ポイント数に加算するようにしてもよい。
(B)例えば、上記S118において、CPU11は、日本全県を走破した場合や、米国全州を走破した場合、又は、全EU加盟国を走破した場合等のように、特定の地域内の全ての行政区画を走行した場合において、所定の加算ポイント数(例えば、100ポイント等である。)を基本ポイント数に加算するようにしてもよい。
(C)例えば、上記S11の処理をプローブセンタ3が実行するようにしてもよい。具体的には、ナビゲーション装置2のCPU41は、出発地と目的地をプローブセンタ3へ送信し、プローブセンタ3のCPU11が、センタ側地図情報DB14に記憶している地図情報や現況交通情報に基づいて、ダイクストラ法等によって、出発地から目的地までの経路を探索するようにしてもよい。そして、CPU11は、この経路のデータをナビゲーション装置2へ送信するようにしてもよい。
(D)例えば、プローブセンタ3のCPU11は、上記S118の処理を実行後、S119の処理を実行することなく、再度S111以降の処理を実行するようにしてもよい。そして、CPU11は、ナビゲーション装置2のユーザからユーザID及びパスワードと共に、更新された「総ポイント数」の送信要求コマンドを受信した場合に、当該ユーザIDに対応する「車両ID」と「総ポイント数」をポイントDB16に格納する付与ポイントテーブル53から読み出す。そして、CPU11は、当該「総ポイント数」を車両IDによって識別されるナビゲーション装置2へ送信するようにしてもよい。