(第1の実施形態)
本発明に係る車両データ取得システムを具体化した第1の実施形態について、図1〜図8に従って説明する。
まず、車両データ取得システムの構成の概要について説明する。
図1に示すように、車両データ取得システムには、移動体としての車両20に搭載される車載情報処理装置21が含まれる。車載情報処理装置21は、車両20の外部に設けられているデータ解析センタ10との間でプログラムデータやログデータなどの各種データを授受(情報交換)する。
データ解析センタ10は、車両20に搭載されている各種制御装置等の車載情報処理装置21から取得されたデータログ22からなるデータログ142等を含むログ情報13を解析し、その解析結果に基づく車両20の動作状態等の試験や調査を行なう。本実施形態では、データ解析センタ10は、車両20の動作状態の試験等の際、車両20に搭載された車載情報処理装置21によってオペレーティングシステム(OS)11が実行されることによって車両20において取り扱われる車両データを取得し、その取得された車両データに基づいて車両20の状態の解析を行う。
データ解析センタ10が行う各種動作試験等には、車両20の不具合や故障などによる不調や、同車両20に搭載された車載情報処理装置21に生じた不具合や故障などによる不調に係る試験や調査などが含まれる。データ解析センタ10が解析に用いるログ情報13に含まれるデータログ142(車両20のデータログ22)は、車載情報処理装置21にて実行されたOS11の動作に関連して取得された車両データが時系列的に記録されることによって生成されたデータログである。すなわち、車両20の車載情報処理装置21は、車両データからなるデータログ22を生成するデータログ機能を実現する。
そして、データ解析センタ10は、このように取得されたデータログ142に基づいて車両20の不調等の解析を行い、その解析結果に基づいて、より詳細な解析を行うために必要とされる車両データなどとして、次に取得すべき車両データを選択するようにする。また、データ解析センタ10は、解析結果に応じて、より詳細な解析を行うために必要とされる車両データとしてその特徴がより顕著となる車両データを選択できるようにするための学習を行うようにもしている。
次に、車両20の構成について説明する。
図2に示すように、車両20には、上述した車載情報処理装置21と、データ解析センタ10との無線通信を可能にする車載通信部23とが設けられている。
車載通信部23は、センタ通信部18との相互の無線通信が可能になっているとともに、センタ通信部18との間で送受信する各種データを、車載情報処理装置21との間で授受可能になっている。これにより車載通信部23は、データ解析センタ10から無線通信によって取得したデータ取得支援手段としてのデータ取得プログラム12などを車両20の車載情報処理装置21に転送することができる一方、車両20の車載情報処理装置21からデータ解析センタ10にデータログ22などを転送することができるようになっている。
車載情報処理装置21には、入力装置35と、表示装置36とが設けられている。
入力装置35は、ユーザが車載情報処理装置21に操作情報などの情報を入力するための装置であり、タッチパネルに表示されるボタンやフロントパネルに設けられたボタンなどを有し、ユーザの操作に応じた情報を車載情報処理装置21に入力させるようになっている。
表示装置36は、文字・画像情報を表示してユーザに提供する装置であり、例えば自車位置や地図情報などの情報が画像等で表示される。
また車載情報処理装置21は、車両20に搭載された各種情報機器装置としての一例であるナビゲーションシステムを構成している。車載情報処理装置21は、情報処理部としての演算装置(車両CPU)30、記憶装置31、不揮発性メモリ(ROM)32、揮発性メモリ(RAM)33などを有するマイクロコンピュータを中心に構成されており、記憶装置31やメモリ32,33に格納されている各種データ及びプログラムに基づき各種情報処理を実行する。本実施形態では、車両CPU30にてOS11やアプリケーションプログラム11Cが実行されることにより、ナビゲーションシステムとしての機能が実現される。OS11はコアカーネル11Aと拡張カーネル11Bとを含み構成されており、コアカーネル11Aは車載情報処理装置21の起動に関する処理を主に行い、拡張カーネル11Bはアプリケーションの実行を管理するスケジューラ機能に関する処理を主に行う。
記憶装置31は、公知の記憶装置であり、不揮発性の記憶装置であるHDD(Hard
Disk Drive)や不揮発性のメモリ(EEPROM等)などから構成されている。記憶装置31には、車両CPU30で実行される各種情報処理に用いる各種データ及びプログラムが格納されるとともに、OS11を利用することによって取得される1乃至複数の車両データからなるデータログ22も格納される。
ROM32は、不揮発性のメモリであって、車両CPU30にて実行処理される確定されたプログラム、例えばOS11やアプリケーションプログラム11Cなどが予め保持されている。なお、OS11やアプリケーションプログラム11Cは、必要なときに車両CPU30に読み込むことが可能であれば、その全部もしくは一部が記憶装置31などの他の記憶装置に記憶されていてもよい。
RAM33は、揮発性のメモリなどであって、車両CPU30で実行されるプログラムや、プログラムに用いられる変数(パラメータ)などが一時的に保持される。例えばRAM33には、車両CPU30にて実行処理されているOS11やアプリケーションプログラム11Cのプログラム及び内部変数や、車速など車両20の走行状態を示す変数などが一時的に保持される。また、データ解析センタ10から受信したデータ取得プログラム12を保持するようにもなっている。データ取得プログラム12は、OS11などから車両データのデータログを取得するためのプログラムである。
このようなことから、車載情報処理装置21は起動すると、ROM32等に予め保持されているOS11を車両CPU30に自動的に読み込み、実行させるとともに、これに続いてアプリケーションプログラム11Cを車両CPU30に読み込み、実行させる。これによって車載情報処理装置21では電源投入後に、ナビゲーションシステムとしてのプログラムであるアプリケーションプログラム11Cが自動的に開始される。
車載情報処理装置21は、車両CPU30にローダ/アンローダ30Aを実行させる。ローダ/アンローダ30Aは、所定の追加条件に基づき追加的に車両CPU30にプログラムを実行させたり、逆に車両CPU30に追加的に実行させたプログラムを所定の削除条件に基づき削除したりする。ローダ/アンローダ30Aは、予めROM32や記憶装置31に保持されており、車載情報処理装置21の電源投入後、車両CPU30による実行が自動的に開始される。すなわちローダ/アンローダ30Aは、車両CPU30にて、OS11やアプリケーションプログラム11Cとは別のプログラムとして、OS11やアプリケーションプログラム11Cの処理を妨げることのないように実行される。なおローダ/アンローダ30Aは、OS11やアプリケーションプログラム11Cに含まれていても
よい。またローダ/アンローダ30Aは、必要なタイミングで車両CPU30にて実行されるようになっていてもよい。
車載情報処理装置21は、車載通信部23がデータ解析センタ10からデータ取得プログラム12を取得したことを検出すると、ローダ/アンローダ30Aを実行させて取得したデータ取得プログラム12をRAM33に転送する。そして車載情報処理装置21は、車両20の走行条件やキー操作などから定まる所定の開始条件が成立したと判断すると、RAM33に転送済みのデータ取得プログラム12を、車両CPU30にて実行処理させる、つまりデータ取得プログラム12を起動させる。逆に車載情報処理装置21は、データ取得プログラム12に予め設定されている終了条件が成立したと判断すると、データ取得プログラム12を終了させる処理を実行するとともに、データ取得プログラム12が終了した後、当該データ取得プログラム12をRAM33等から削除する。
車両CPU30にて実行されるコアカーネル11Aや拡張カーネル11Bには、複数のプローブ部Pが設けられている。プローブ部Pは、OS11が実行されると、その処理の途中で実行処理される位置に配置されている。図3に示すように、コアカーネル11Aは、複数のプローブ部Pとして例えば複数のプローブ部P1〜P9を有している。コアカーネル11Aにおけるプローブ部P1〜P9の配置は任意であり、例えば各種処理の開始位置や終了位置に設けることができることはもとより、各種処理の途中、いわゆるプログラムの途中に設けることもできる。各プローブ部P1〜P9には、通常時には何もしない命令であるNOP命令などの無効命令が、所定のアドレスに所定のアドレス長だけ確保されている。例えばプローブ部P3として、プログラムの命令の途中に2つのアドレス、すなわちアドレスxxx15とxxx16が確保されている。このように、2つのアドレスとそこに設定される無効命令からなるプローブ部Pは、OS11のサイズや処理負荷の増大を極力抑えたものとなる。これによって、OS11は、プローブ部P(P1〜P9)が設けられた場合であれ、プローブ部Pの設置による実行時間の増加などが極力抑えられ、プローブ部Pが設けられていない場合と略同様の実行時間や、車両CPU30に対する負荷率に維持されるようになる。すなわち本実施形態のプローブ部P1〜P9は、OS11に設けられた場合であれ、当該OS11に対して新たな負荷を付加しないものとなっている。ところで、例えばアドレスxxx15の番号に用いている符号「xxx」は、具体的な値を省略した旨を示す符号であり、特定の数値に限定されるものではなく、任意の桁数の任意の数値に代えることができるものである。
なおプローブ部P1〜P9の配置位置としては、当該箇所において車両20の動作状態を解析することに適した車両データが取得できる箇所であることが望ましい。また車両データには、車両20の走行状態に係るデータである速度、加速度、振動、および位置等や、エンジン制御等に係るデータなどが含まれる。さらに車両データには、OS11の内部変数、車両CPU30の動作状態を示す変数、OS等の状態を示す変数、およびプログラム切換に係る変数が含まれる。また車両データには、プログラム処理に係るデータの出し入れを「後入れ先出し」によって行うデータ構造であるスタックの内容(スタックダンプ)や、プログラムが用いているメモリの内容(メモリダンプ)等も含まれる。
なお、拡張カーネル11Bにもプローブ部Pが設けられているが、それらプローブ部Pの構成はコアカーネル11Aに設けられているプローブ部P1〜P9と同様の構成であるため、その説明を割愛する。またアプリケーションプログラム11Cに、コアカーネル11Aと同様のプローブ部Pを設けてもよい。
また車両CPU30にて実行されるデータ取得プログラム12は、OS11に設けられている1乃至複数のプローブ部Pを介して、車載情報処理装置21にて実行されているOS11を利用して取得できる車両データ、例えば各種車両状態を示すデータや、プログラ
ムの内部変数のデータなどのデータログ22を生成するデータログ機能を有している。なお、データ取得プログラム12は、データ解析センタ10により作成、管理される。
図4に示すように、データ取得プログラム12には、データ取得指令としての取得スクリプト40と、データ出力関数群41と、データ取得プログラム12を管理する取得制御部42と、インタプリタ43とが設けられている。
取得スクリプト40は、車両データを取得するために機能を変更させるプローブ部Pの位置及びその変更内容が定義されたものであり、車両20の動作試験等の際に解析する対象などに応じてデータ解析センタ10にて作成される。取得スクリプト40には、機能変更の対象となるプローブ部P毎にそれぞれ変更させる機能が設定されたプローブ機能変更リストやプローブ部Pを変更することを許可する条件を定めた変更可能条件などが設定されている。プローブ機能変更リストには、車両データを取得するために機能が変更させられるプローブ部Pが、1つ又は複数設定されるとともに、その設定された1つ又は複数のプローブ部P毎に、それぞれ変更後の機能が設定されている。図5(a),(b)に示すように、例えば車両CPU30にて実行されているコアカーネル11Aに含まれる1つのプローブ部P3(アドレスxxx15〜xxx16)を、いわゆる取得命令の一つである基本ログ関数41aを実行する命令(ジャンプ命令)に変更させるように設定されている。すなわちプローブ機能変更リストに基づき、各プローブ部Pの設定がそれぞれ置き換えられる。
データ出力関数群41は、OS11等を利用することによって所定の車両データを取得し、取得した車両データを記憶装置31などにデータログ22として記憶させるため複数の関数である。各関数としては、例えば基本ログ関数41a、CPU状態出力関数41b、OS状態出力関数41c、タスクスイッチ関数41d、スタックダンプ関数41e、およびメモリダンプ関数41fなどがある。基本ログ関数41aは、OS11の内部変数のデータログを作成する関数である一方、CPU状態出力関数41bは、車両CPU30の動作状態を示すカウンタやクロックなどの変数のデータログを作成する関数である。またOS状態出力関数41cは、OS状態等を示すメモリ使用量や付加率などを示す変数のデータログを作成する関数である一方、タスクスイッチ関数41dは、車両CPU30で実行中の複数のプログラムに係る各プログラムの実行状態や各プログラムの優先度などを示す変数のデータログを作成する関数である。さらにスタックダンプ関数41eは、メモリスタックの内容であるスタックダンプのデータログを作成する関数である一方、メモリダンプ関数41fは、プログラムが実行されていたり、変数が保持されていたりするメモリの内容であるメモリダンプのデータログを作成する関数である。すなわち、これら関数により取得された車両データがデータログ22として記憶装置31に記憶されるとともに、当該データログ22の解析に必要とされる車両データを取得した日時や車両20の速度などの各種情報も併せて記憶装置31に記憶される。データログ22に併せ記憶される各種情報は、データログ22に関連付けられており、例えばデータログ22がデータ解析センタ10に送信される際、データログ22とともにデータ解析センタ10に送信されるようになっている。
取得制御部42は、データ取得プログラム12の実行を制御するものであって、インタプリタ43における、実行可能条件の判断や、取得スクリプト40の実行や終了などを管理したり、インターフェース等を通じてのデータの授受を管理したりする。例えば取得制御部42は、取得スクリプト40が実行可能条件を充足するか否かインタプリタ43に判断させる。そして取得制御部42は、実行可能条件が充足される場合、インタプリタ43に取得スクリプト40を実行させる。一方、取得制御部42は、実行可能条件が充足されない場合、インタプリタ43が取得スクリプト40を実行することがないように管理する。また例えば取得制御部42は、車両データの取得が終了した場合、取得した車両データ
からなるデータログ22を、車載通信部23を介してデータ解析センタ10に転送させる処理も行う。
インタプリタ43は、車両CPU30の処理機能を利用することによって、取得スクリプト40やデータ出力関数群41に含まれるソースコードを逐次解釈しながら実行処理する。インタプリタ43には、コマンド部44が設けられている。コマンド部44には、インタプリタ43が利用するものとして予め設定されている実行プログラム群が設けられており、本実施形態では、プローブ部Pに対する命令を置き換える置換コマンドや、プローブ部Pに対する命令を再置き換えする再置換コマンドなどが含まれている。
またインタプリタ43には、取得スクリプト40に基づきプローブ部Pに対する命令を置き換え又は再置き換えするプローブ機能変更処理部45や、前記データ出力関数群41に含まれる関数を実行するための関数実行処理部46などが設けられている。すなわち取得スクリプト40がインタプリタ43によって実行処理されると、プローブ機能変更処理部45によりプローブ部Pに対する命令の置き換えや、再置き換えが実行される。なお、本実施形態では、命令の置き換えとは、無効命令を車両データ収集のための命令に置き換えることであり、再置き換えとは、車両データ収集のための命令を無効命令に書き戻すことである。またデータ出力関数群41に含まれる各関数41a〜41fは、インタプリタ43によって処理されることによって所定の処理が行われるようになっている。なお本実施形態では、インタプリタ43がデータログ22を作成する際、インタプリタ43は記憶装置31にデータログ22を作成するようになっている。
なおプローブ機能変更処理部45は、命令が置き換えされた後のプローブ部Pを再置き換える場合、取得スクリプト40のプローブ機能変更リストを参照して、コアカーネル11Aのプローブ部Pのなかから再置き換えする必要のあるプローブ部Pを選択する。
次に、データ解析センタ10について説明する。
図1に示すように、データ解析センタ10には、車両20との無線通信を可能にするセンタ通信部18が設けられている。センタ通信部18は、車載通信部23との相互の無線通信が可能になっているとともに、車載通信部23との間で送受信する各種データを、データ解析センタ10の処理装置との間で授受可能になっている。これによりセンタ通信部18は、無線通信によってデータ取得プログラム12等をデータ解析センタ10から車両20の車載情報処理装置21に送信することができるとともに、車両20の車載情報処理装置21からのデータログ22を受信することができるようになっている。
また、データ解析センタ10には、OS11と、アプリケーションプログラム11Cとが保持されている。OS11は、車載情報処理装置21に搭載されているOS11と同一のプログラムであり、アプリケーションプログラム11Cも、車載情報処理装置21に搭載されているアプリケーションプログラム11Cと同一のプログラムである。すなわちOS11には、複数のプローブ部Pが設けられている。OS11のプローブ部Pは、OS11等に予め埋め込み配置されているため、データ解析センタ10では保持しているOS11から同OS11におけるプローブ部Pの配置位置(アドレス)や取得可能な車両データなどの情報を得ることができる。そしてデータ解析センタ10は、OS11に配置されたプローブ部Pの位置(アドレス)などを把握した上で、1乃至複数のプローブ部を介して同OS11の動作を利用することに基づいて車両データを取得するデータ取得プログラム12を作成することができるようになっている。
なおデータ解析センタ10は、必要とする都度、コアカーネル11Aや、拡張カーネル11Bや、アプリケーションプログラム11C等と同一のプログラムを生成するか、もしくは外部から取得することが可能になっていてもよい。
さらに、データ解析センタ10には、車載情報処理装置21に送信するデータ取得プログラム12と、データ取得プログラム12により取得された車両データなどからなる複数のログ情報13と、データ取得プログラム12により取得させる1乃至複数の車両データを特定する複数のスクリプト14とが保持されている。
各ログ情報13には、取得情報141と、該取得情報141に関連付けられているデータログ142とが含まれている。取得情報141は、データログ142の取得条件などに関する情報であり、データログ142に含まれる車両データが取得されたプローブ部Pやプログラムなどの情報や、車両データ(データログ22)の取得に用いたデータ取得指令としての取得スクリプト40の情報などが含まれている。また取得情報141には、車両20からデータログ22とともに受信する、車両データを取得した日時や車両20の速度などの各種情報も含まれている。データログ142は、車載情報処理装置21にて取得された車両データのデータログ22が、データ解析センタ10にて記憶されたものである。すなわちデータ解析センタ10には、データログ142として、車載情報処理装置21にて取得されたデータログ22が同データログ22の取得に関する車両情報である取得情報141に関連付けられて保持される。
各スクリプト14には、プローブ部Pの機能を、所定の車両データを取得することができるように変更させるための命令が設定されている。すなわち、各スクリプト14には、OS11に設けられているプローブ部Pのなかから機能を変更させるものとして、必要に応じて選択された、1乃至複数のプローブ部Pの位置及びその変更内容が、車両20の動作試験等の際に解析対象とする1乃至複数の車両データに応じて定義される。そしてこのスクリプト14に基づいて、必要とされる1乃至複数の車両データが車載情報処理装置21にて実行されるOS11から取得される。なおデータ解析センタ10には、スクリプト14として、基本的な解析対象とされる1乃至複数の車両データを取得するスクリプトや、標準的な調査や頻度の高い調査の対象となる1乃至複数の車両データをスクリプトなどが予め用意されている。
また、データ解析センタ10には、ログ情報13に含まれる車両データを解析するログデータ解析部15と、必要とする車両データの取得に適したスクリプトの選択の際に参照される適用スクリプトリスト16とが設けられている。さらに、データ解析センタ10には、選択されたスクリプト14を含むデータ取得プログラム12を生成するデータ取得指令生成手段としてのデータ取得プログラム生成部17が設けられている。なお、データ解析センタ10は、そこに設けられている記憶装置(図示略)に、OS11、アプリケーションプログラム11C、データ取得プログラム12、1乃至複数のログ情報13、1乃至複数のスクリプト14、及び適用スクリプトリスト16などを保持している。
ログデータ解析部15は、ログ情報13に基づいて車両20の状態やその車両20の車載情報処理装置21の状態を解析し、車両20の不調情報や予兆情報を得る。ログデータ解析部15は、取得情報141に記録されている日時や速度などの各種情報から、取得されたデータログ142が記録されたときの車両状態や状況などを判断することができる。また、取得情報141に記録されている車両データの取得対象プログラム、例えばコアカーネル11Aの情報や、その車両データの取得に利用したスクリプト14の情報に基づいて、取得されたデータログ142に記録されているログデータの示す内容などの属性について判定することができる。これら判定によって、ログデータ解析部15は、取得されたデータログ142に記録されているログデータが、当該車両状態や状況において適切なデータ(値)であったのか否かを判断する。このような判断は、例えば、ログデータを、データ解析センタ10に比較用に保持されている標準データや、コアカーネル11Aのプログラムから求められるデータなどと比較することに基づいて行われる。そしてログデータ
解析部15は、正常な動作と異なる値を示すことなどから、適切でないと判断したログデータについて、当該ログデータの属性及びその値などに基づいて不調箇所及び不調現象を解析し、その解析した結果を不調情報や予兆情報として保持するようにする。
適用スクリプトリスト16は、図6に示すように、車両データから検出された不調情報や予兆情報などに対応して、それら不調情報や予兆情報をより詳細に検出することに適したスクリプト14が選択できるように、スクリプト14が設定されたリストである。適用スクリプトリスト16は、不調の検出されたOS11等のプログラム(不調箇所)と、検出された現象である不調現象との組み合わせに基づいて、当該組み合わせをより詳細に解析するために必要とされる車両データの取得に適している1乃至複数のスクリプト14の選択が可能になっている。例えば、図6に示す適用スクリプトリスト16には、コアカーネル11Aにデッドロックが生じた場合、「スクリプト1」と「スクリプト2」の適用が適切であり、コアカーネル11Aにリセットが生じた場合、「スクリプト2」の適用が適切であることがそれぞれ設定されている。また同適用スクリプトリスト16には、コアカーネル11Aにローディングの不都合が生じた場合、「スクリプト3」の適用が適切であることが設定されている。さらに同適用スクリプトリスト16には、拡張カーネル11Bにデッドロックが生じた場合、「スクリプト4」と「スクリプト1」の適用が適切であり、拡張カーネル11Bにリセットが生じた場合、「スクリプト5」の適用が適切であることが設定されている。なお、複数のスクリプト14が組み合わされる場合、それらスクリプトを組み合わせる順序によっても取得できる車両データのタイミング等が変化するため、適用スクリプトリスト16には、複数のスクリプト14が適切な組み合わせの順に設定されている。
なお本実施形態では、図6に示すように、当初、適用スクリプトリスト16には、スクリプトの設定されていない不調箇所と不調現象との組み合わせがあるものの、これらに必要とされるスクリプトは必要に応じて自動的に適宜充足されるようになっている。また、既にスクリプトが設定されている組み合わせにあっても、そこに設定されている1乃至複数のスクリプト14については自動的に見直されるようになっている。
適用スクリプトリスト16に設定されているスクリプトの見直は、ログデータ解析部15により行われる。すなわち、ログデータ解析部15は、適用スクリプトリスト16に設定された1乃至複数のスクリプト14に基づいて取得した車両データ(データログ22)をログ情報13として保持する。また同様に、ログデータ解析部15は、適用スクリプトリスト16に設定されているスクリプト14の内容を所定のルールに基づいて変更し、該変更された1乃至複数のスクリプト14に基づいて取得した車両データ(データログ22)をログ情報13として保持する。このように取得された2つのログ情報13の各データログ142を比較して、どちらのデータログ142が不調現象や予兆現象等の特徴をより顕著に示しているか判定する。そして、その特徴をより顕著に示しているデータログ142を取得するために用いた1乃至複数のスクリプト14を、同現象を検出するために適切な1乃至複数のスクリプト14であると判断し、同判断された1乃至複数のスクリプト14を当該不調箇所と不調現象の検出に好適な組み合わせとして適用スクリプトリスト16に再設定する。このように1乃至複数のスクリプト14の変更前後に取得された各別の2つのデータログ142を比較することを繰り返すことにより、適用スクリプトリスト16は、設定されている1乃至複数のスクリプト14の組み合わせが最適化される、いわゆる設定内容が学習されるようになる。
なお、ログデータ解析部15が適用スクリプトリスト16に設定されているスクリプト14の内容を変更する所定のルールとして、特徴を顕著に示した車両データに関連している車両データを選択するようにするようにしている。これによれば、次に取得される車両データに、不調状態を示す値などが全く含まれなくなるなどのおそれを軽減させることが
できる。なお、同ルールとして、特徴を顕著に示した車両データとは無関係に、予め定められたリストに設定されている順に、スクリプト14を選択していくようにすることもできる。
ところで適用スクリプトリスト16において、図6に示す、ファイルシステム箇所に生じたデッドロック現象のようにスクリプトが設定されていない場合、まず、他のプログラム(箇所)に対して同じ現象に用いられる1乃至複数のスクリプト14や、標準的な検査や調査に用いる1乃至複数のスクリプト14に基づいてデータログ142を取得する。そしてデータログ142が取得された後、データログ142の取得に用いた1乃至複数のスクリプト14を所定のルールにより変更し、その変更した1乃至複数のスクリプト14に基づいて同様にデータログ142を取得する。このようにして取得された各別の2つのデータログ142を比較することにより不調現象や予兆現象が顕著となる1乃至複数のスクリプト14を判定し、適用スクリプトリスト16に設定することができる。
また、プログラム(箇所)が異なる場合、同様の車両データであれ、それを取得し得るプローブ部Pの配置位置(アドレス)が異なる。しかしながら、プログラム相互において同じ車両データを取得し得るプローブ部Pの対応関係を記録したリストなどに基づいて特定のプログラム用に作成された1乃至複数のスクリプト14を他のプログラム用に変換することもできる。例えば、コアカーネル11A用に作成されたスクリプト14を、コアカーネル11Aのプローブ部Pと拡張カーネル11Bのプローブ部Pとの対応リストを参照することにより、拡張カーネル11B用に変換することもできるようになる。同様にして、コアカーネル11A用に作成されたスクリプト14を、アプリケーションプログラム11C用のスクリプト14に変換することもできる。
ログデータ解析部15は、以上述べたことを繰り返すことによりスクリプト14を組み換えてその組み合わせを最適化させる、いわゆる学習する。なお、本実施形態では、適用スクリプトリスト16には、最大3つのスクリプト14を組み合わされたものが設定できるものとする。これにより、適用スクリプトリスト16に設定されている1乃至複数のスクリプト14を、当初、図6に示されたような、当初の設定内容から、図7に示されるように、スクリプト14の組み合わせが変更されるなどした、学習後の設定内容に設定、もしくは再設定する。例えば、学習後の適用スクリプトリスト16には、コアカーネルに適用するスクリプト14の組み合わせとして、デッドロックが発生したときには「スクリプト1(以下単に、1と記す)」、「スクリプト2(以下単に、2と記す)」及び「スクリプト3(以下単に、3と記す)」が設定される。また、学習後の適用スクリプトリスト16には、リセットが発生したときには「2」、「1」及び「3」が、ローディングの不調が発生したときには「2」、「1」及び「3」がそれぞれ設定される。さらに、コアカーネルについて適用するスクリプトとして、黒画が発生したときには「1」、「2」及び「3」が、音が出ないときには「1」、「2」及び「3」が、爆音が出るときには「2」、「1」及び「4」がそれぞれ設定される。また、拡張カーネルに適用するスクリプトとして、デッドロックが発生したときには「スクリプト4(以下単に、4と記す)」、「1」及び「2」が、リセットが発生したときには「スクリプト5(以下単に、5と記す)」、「4」及び「2」が、ローディングの不調が発生したときには「5」、「4」及び「2」がそれぞれ設定される。さらに、拡張カーネルについて適用するスクリプトとして、黒画が発生したときには「4」、「1」及び「2」が、音が出ないときには「4」、「1」及び「2」が、爆音が出るときには「4」、「5」及び「2」がそれぞれ設定される。さらに、ファイルシステムに適用するスクリプトとして、デッドロックが発生したときには「1」、「2」及び「4」が、リセットが発生したときには「1」、「2」及び「4」が、ローディングの不調が発生したときには「1」、「2」及び「4」がそれぞれ設定される。また、ファイルシステムについて適用するスクリプトとして、黒画が発生したときには「1」、「2」及び「4」が、音が出ないときには「1」、「2」及び「4」が、爆音が
出るときには「1」、「2」及び「4」がそれぞれ設定される。さらに、USBドライバに適用するスクリプトとして、デッドロックが発生したときには「2」、「1」及び「5」が、リセットが発生したときには「5」、「3」及び「2」が、ローディングの不調が発生したときには「2」、「5」及び「1」がそれぞれ設定される。また、USBドライバについて適用するスクリプトとして、黒画が発生したときには「2」、「1」及び「5」が、音が出ないときには「2」、「5」及び「3」が、爆音が出るときには「5」、「2」及び「1」がそれぞれ設定される。
データ取得プログラム生成部17は、ログデータ解析部15による解析結果に基づいて得られる不調箇所及び不調現象に対応する1乃至複数のスクリプト14の組み合わせを適用スクリプトリスト16から選択するとともに、当該選択した1乃至複数のスクリプト14に基づいて取得スクリプト40を含むデータ取得プログラム12を生成する。すなわち、データ取得プログラム生成部17は、車両20の不調状態や予兆情報の傾向に基づいて自動的に取得スクリプト40を生成する。
このようにして、データ解析センタ10は、保持している車載情報処理装置21と同一のOS11等に基づいて、車両20から解析等に必要とする車両データを取得するデータ取得プログラム12を作成するとともに、管理するようになっている。はじめは、データ取得プログラム12の取得スクリプト40は、予め定められた車両20の動作試験等に必要とする車両データを取得するように作成される。以降、必要に応じて、ログデータ解析部15の解析結果に基づいて、次の解析に必要とされる車両データを取得するように絞り込まれた取得スクリプト40がスクリプト14の組み換えに基づき作成される。そして、作成された取得スクリプト40に基づいて車両20に生じている不調等をより顕著に示し、詳細に解析することが可能な車両データからなるデータログ142を取得することができるようになる。
次に、車両20の車載情報処理装置21においてデータ取得プログラム12に行われるプローブ部Pの置き換え、及び再置き換えについて、図5に従って説明する。なお、以下では、コアカーネル11Aのプローブ部P3に対する命令の置き換え、及び再置き換えについて説明する。また、他のプローブ部P1,P2,P4〜P9に対する命令の置き換え、及び再置き換えは、プローブ部P3に対する命令の置き換え、及び再置き換えと同様であるため、説明の便宜上、それら他のプローブ部Pに対する説明は割愛する。
図5(a)に示すように、コアカーネル11Aのアドレスxxx15とアドレスxxx16には、予めプローブ部P3が埋め込まれている。同プローブ部P3には命令として何もしない命令(無効命令)が予め配置されている。そして、プローブ部P3に対する命令の置き換えがデータ取得プログラム12によって実行されると、図5(a)から図5(b)への矢印で示すように、プローブ部P3に予め配置されている命令がデータ取得プログラム12に含まれる所定の出力関数を実行する命令に置き換えられる。具体的には、プローブ部P3のアドレスxxx15とアドレスxxx16に配置されているNOP命令が取得命令に置き換えられる。これによってNOP命令が取得命令を実現するアドレスであるdestAにプログラムの実行箇所を移動させる、いわゆるジャンプ命令(JMP命令)に置き換えられ、例えばジャンプ先に指定されたデータ取得プログラム12の基本ログ関数41aを実行することができるようになる。
一方、図5(b)から図5(c)への矢印で示すように、データ取得プログラム12によってプローブ部P3に対する命令が再置き換えされる。命令の再置き換えは、データ取得プログラム12が必要とされる車両データを取得した後、もしくはデータ取得プログラム12が車載情報処理装置21から削除される、いわゆるアンロードされるときに実行され、プローブ部P3に置き換えられた命令は、何もしない命令(無効命令)に再置き換え
される。このような再置き換えによってコアカーネル11Aは、そのプローブ部P3の命令が初期状態に復元されることとなる。具体的には、プローブ部P3に対する命令の再置き換えが実行されると、置き換えによりアドレスxxx15とアドレスxxx16に配置されたJMP命令が無効命令としてのNOP命令に再置き換えされる。
また次に、適用スクリプトリスト16に設定されるスクリプト14の学習について、図8に従って説明する。
車両20の調査や試験等が開始されると、データ解析センタ10は、データ取得プログラム生成部17にて、所定の取得スクリプト40を有するとともに同取得スクリプト40の実行手段としてのデータ取得プログラム12を生成し、その生成したデータ取得プログラム12を車両20に送信する(図8のステップS10)。取得スクリプト40は、調査に応じて指定された不調箇所及び不調現象や、データログ142の解析により特定された不調箇所及び不調現象などに基づき適用スクリプトリスト16から取得された1乃至複数のスクリプト14に基づいて生成されている。
データ解析センタ10から送信されたデータ取得プログラム12を受信した車両20は、同データ取得プログラム12を車載情報処理装置21に保持するとともに、車両CPU30に実行可能にロードしてプローブ部Pの置き換えを行う(図8のステップS11)。すなわち、車載情報処理装置21は、実行可能にロードしたデータ取得プログラム12を、実行の開始条件の成立に応じて車両CPU30に実行開始させる。
車両CPU30によって実行開始するデータ取得プログラム12の取得制御部42は、取得スクリプト40をインタプリタ43に処理させて各プローブ部Pに対する命令の置き換え処理を行うとともに、該命令の置き換え処理の終了に伴って各プローブ部Pのデータログ取得機能を有効化する。データログ取得機能を有効化により、OS11の実行に伴い各プローブ部Pが実行処理されることで、当該実行処理されるプローブ部Pに設定された関数に基づき車両データが取得されるようになるとともに、取得された車両データが時間ごと(時系列的)に追加されてなるデータログ22が作成される(図8のステップS12)。そしてデータログ22の作成が開始された後、終了条件が成立すると、車載情報処理装置21は、各プローブ部Pによるデータログ取得機能をすべて無効化することによって、データログ22の生成処理を終了する。(データ取得支援工程)。
車載情報処理装置21は、生成が終了されたデータログ22をデータ解析センタ10に送信し、該送信されたデータログ22を受信したデータ解析センタ10は、該データログ22に基づくログ情報13を構成して保持する(図8のステップS13)。なお、データログ22のデータ解析センタ10への転送が終了すると、車載情報処理装置21は、プローブ部Pに対する命令の再置き換え処理を実行した後、データ取得プログラム12の実行を終了するとともに、ローダ/アンローダ30AによってRAM33に保持されているデータ取得プログラム12を削除する。これによって、OS11は、データ取得プログラム12が車両CPU30にロードされる以前の状態と同一の状態に復元されるとともに、車両CPU30における実行環境も、データ取得プログラム12がロードされる以前の状態と同一の状態に戻される。
ログ情報13が保持されると、データ解析センタ10は、ログ情報13を解析し、その解析結果に基づいて次の解析に必要とされる車両データを判断する。すなわち、取得情報141に記録されている日時や速度などの各種情報から取得されたデータログ142が記録されたときの車両状態や状況などを判断する。また、取得情報141に記録されている車両データの取得対象プログラム、例えばコアカーネル11Aの情報や、取得に利用した1乃至複数のスクリプト14の情報に基づいて、取得されたデータログ142に記録されているログデータの示す内容(属性)について判断する。そしてこれら判断された車両状
態や状況、ログデータの示す内容(属性)に基づいて、取得されたデータログ142に記録されているログデータが適切なデータ(値)であるか否かを判断する。さらに、適切でないと判断されたログデータについて、当該ログデータの属性及びその値などを解析して、該ログデータから不調箇所及び不調現象を特定する(図8のステップS14)。
不調箇所及び不調現象が特定されると、データ解析センタ10は、特定された不調箇所及び不調現象に対応する適用スクリプトリスト16の設定を更新する、いわゆる学習を行う(図8のステップS15)。ログデータ解析部15は、不調箇所及び不調現象を特定したデータログ142の取得に用いられた1乃至複数のスクリプト14(取得スクリプト40)と、当該特定された不調箇所及び不調現象に対応する適用スクリプトリスト16の設定に基づいて取得されたデータログ142とを比較する。そして、不調現象や予兆現象をより顕著に示しているデータログ142を判定し、不調現象や予兆現象を顕著に示すデータログ142の取得に用いられた1乃至複数のスクリプト14を、同現象の検出に適切なスクリプト14であると判断して適用スクリプトリスト16に設定する、すなわち更新する。このような更新により、適用スクリプトリスト16に設定されている1乃至複数のスクリプト14の組み合わせが学習され、最適化される。
なお、解析により特定された不調箇所及び不調現象に対する設定が適用スクリプトリスト16にない場合、基本的な1乃至複数のスクリプト14を設定することにより以降、上述の学習が可能となる。
適用スクリプトリスト16の更新が終了すると、データ解析センタ10は、ログ収集を続けるか否かを判断する(図8のステップS16)。ログ収集を続けるか否かは、ログデータ解析部15によるデータログ142の解析結果としての不調箇所及び不調現象の特定が好適になされたか否かにより判断される。また例えば、不調箇所を1つに絞ることができたり、標準から外れるデータが取得されたり、所定の回数絞込みをしたりした場合にはログ収集を中止してもよい。さらに例えば、学習結果として固定された適用スクリプトリスト16の設定(スクリプト14)を用いて取得したデータログ142の場合にはログ収集を中止してもよい。ログ収集を中止すると判断した場合(図8のステップS16でNO)、データ解析センタ10は、データ取得プログラム12に基づく車両20の車両データの取得を終了する。一方、ログ収集を続けると判断した場合(図8のステップS16でYES)、データ解析センタ10は、ステップS10のデータ取得プログラム生成処理に戻り、以降の処理ステップを繰り返すことにより、データ取得プログラム12に基づく車両20の車両データの取得を継続する。
続いて、本実施形態の車両データ取得システムの作用について説明する。
本実施形態の車両データ取得システムによれば、車両20に不調状態や予兆情報が生じた際、不調状態や予兆情報の傾向から有効であると推測される取得スクリプト40を生成し、この生成した取得スクリプト40に基づいてデータログ22を取得することができるようになる。また、このように取得されたデータログ22が解析に有効でなかった場合、改めて有効であろうと推測される、先と異なる取得スクリプト40を生成し、この生成した取得スクリプト40に基づいてデータログ22を取得するという処理を繰り返すことができるようになる。その結果、解析に有効なデータログ22を取得することができる可能性が高まるようになる。すなわち、当初、故障情報の診断等に必要とされる車両データを予測できないような場合であっても、その必要とされる車両データを高い柔軟性のもとに自動取得することのできるようになる。
さらに、不調状態や予兆情報の分類と、解析に有効なデータログ22の傾向を分析することにより、すなわち学習することにより、不調状態や予兆情報に応じて必要とされるデータログ22の取得効率や精度を高めることができるようにもなる。
以上説明したように、本実施形態に係る車両データ取得システムは、以下に列記する効果を有する。
(1)取得スクリプト40に関連付けられた車両データに基づいて当該車両データを解析等することにより、例えば、車両の不調状態や異常などの予兆情報を検出することができるようにした。例えば、検出された不調状態や予兆情報に基づくことにより、先の取得スクリプト40に代えて、当該不調状態や予兆情報をより詳細に解析することに必要とされる車両データを取得する取得スクリプト40を生成することができるようになる。
そしてこのように生成した取得スクリプト40に基づいて車両データが得られるようになれば車両状態の詳細な解析ができるようになり、当該不調状態や予兆情報により適切に対応することができるようにもなるようになる。逆に、車両状態の詳細な解析ができないような車両データが取得されたような場合、取得スクリプト40を元に戻すことのみで、先と同様の評価が可能な状態に戻すことができるとともに、再度生成する取得スクリプト40により車両データの取得、及び車両状態の詳細な解析を試すことができるようになる。このようにすることにより、詳細な解析が可能な車両データを取得できる取得スクリプト40を探し出す、いわゆる学習をすることができるようにもなる。
(2)取得された車両データに基づいて生成された取得スクリプト40によって車両データを取得するようにした。このように取得された車両データの解析結果により得られた車両の不調状態や予兆情報などに基づく取得スクリプト40によれば、より詳細に車両状態を解析することのできる車両データを取得することができるようになる。そして、より詳細な解析を可能とする車両データに基づく解析によれば、不調状態や予兆情報により適切に対応することができる。
(3)取得された車両データに関連する車両データを次に(再帰的に)取得することができるように取得スクリプト40を生成した。これにより、次に取得される車両データによれば、先に取得された車両データを絞り込んだかたちで、より詳しい車両の不調状態や予兆情報などを検出することができるようにもなる。
(4)車両データを取得するための複数のスクリプト14が予め設けられているため、必要とされる車両データを取得するための取得スクリプト40の生成が容易である。また、予め設けられている複数のスクリプト14から、所定のルールに基づいてスクリプト14を選択するようするため、それらスクリプト14のなかから不調状態や予兆情報に適したスクリプトを探し出すことも可能になる。
(5)3つのスクリプト14の組み合わせにより車両データが取得されるため、不調状態や予兆情報により適したスクリプト14の組み合わせを探し出すこと、すなわち学習を行うことが可能である。
(6)取得された車両データに関連する車両データを次に(再帰的に)取得することができるように組み換えられたスクリプトにより取得スクリプト40が生成される。このように、スクリプト14を用いた場合であれ、先に取得された車両データ(データログ142)を絞り込んだかたちで次の車両データ(データログ142)が取得され、より詳しい車両の不調状態や予兆情報などを検出することができるようにした。
(7)検出対象とする特徴がより顕著となる車両データが得られるようにスクリプト14の組み合わせを学習するため、学習後のスクリプト14の組み合わせに基づいて取得される車両データによれば、より詳しい車両の不調状態や予兆情報などを検出することができるようにもなる。
(8)取得スクリプト40はデータ取得プログラム12に含まれ、同データ取得プログラム12とともに車載情報処理装置21に読み込まれるようになるため、車両データの取得において、車載情報処理装置21に車両データを取得するためのプログラムを予め用意しておく必要がない。これにより、車載情報処理装置21の記憶容量などを不要に占有するようなことがなくなり、車両データを取得しないときには、車両データ取得システムが車載情報処理装置21に負荷を与えたりするおそれがない。
(9)車両データ(ログ情報13)を取得する記憶装置がデータ解析センタ10に設けられているため、車載情報処理装置21などのように能力の制約が多い装置に対し、通常、高い処理能力を有するデータ解析センタ10にて車両データの解析が行われるようになることから処理負荷の高い処理なども行えるようになる。これにより、車両データの解析自由度や精度が高められる。また、このように、高い自由度や解析精度の車両データの解析結果に基づいて、データ解析センタ10にて取得スクリプト40の生成が行われるようになるため、次に取得させる車両データをより車両20の不調状態や予兆情報などの検出に適したデータとすることができるようにもなる。
(10)データ解析センタ10にて生成される取得スクリプト40を無線通信にて適宜車両20に送信することができるので、車両データの取得、車両データの解析、解析結果に基づく取得スクリプト40の生成、及び生成した取得スクリプト40の車両20への送信を1つのサイクルとする車両データの取得を、短い間隔で繰り返すことができる。これにより、車両20の不調状態や予兆情報を、短時間で効率的に、かつ、高い精度で検出することができるようになる。これにより、このような車両データ取得システムを採用した車両20のメンテナンス性や信頼性などを高めることができるようになる。
(第2の実施形態)
本発明に係る車両データ取得システムを具体化した第2実施形態について、図9に従って説明する。なお、取得する車両データの変更を、上記第1の実施形態では、取得スクリプト40を含むデータ取得プログラム12全体の入れ換えにより実行していることに対し、本実施形態では取得スクリプト40のみの入れ換えで実行することが相違するものの、他の構成は同様であるため、同様の構成には同一符号を付して重複する説明を割愛する。
図9に示すように、車載情報処理装置21の車両CPU30には予めデータ取得プログラム12が設けられている。データ解析センタ10では取得スクリプト40が生成される。そして、データ解析センタ10で生成された取得スクリプト40が車両20に送信され、該送信された取得スクリプト40を受信した車両20は、当該受信した取得スクリプト40をデータ取得プログラム12に設定されている取得スクリプト40に入れ換える。これにより、データ取得プログラム12は、入れ換えられた取得スクリプト40に基づいてプローブ部Pの置き換えを実行することができるようになるとともに、車両データを取得してデータログ22を作成することができるようになる。また、車両データの取得後には、同入れ換えられた取得スクリプト40に基づいてプローブ部Pを再置き換えすることができるようになる。
これによっても、データ解析センタ10にて適用スクリプトリスト16を参照して作成された取得スクリプト40に基づいて、車両データのデータログ22を取得することができる。また、取得されたデータログ22に基づくログ情報13により、適用スクリプトリスト16の内容を更新することや、ログ情報13の解析に基づく新たな取得スクリプト40の作成、及び当該作成した取得スクリプト40に基づく次のデータログ22の取得ができるようになる。
このように本実施形態に係る車両データ取得システムは、第1実施形態の効果に記載の(1)〜(7),(9),(10)と同等もしくはそれに準じた効果を有し、更に以下の効果を奏する。
(11)データ取得プログラム12に必要の都度、取得スクリプト40を供給するようにするため取得スクリプト40の入れ換えが容易になり、データ取得プログラム12によるデータログ22の取得機能の柔軟性を向上させることができるようになる。
(12)また、データ解析センタ10から取得スクリプト40のみを送信するため通信データ量が削減されるようになるとともに、取得スクリプト40の入れ換えのみで済むため車載情報処理装置21にてデータ取得プログラム12全体をロードする時間が不要となり車両データの取得を開始するまでに要する時間を短くすることもできるようにもなる。
(その他の実施形態)
なお上記各実施形態は、以下の態様で実施することもできる。
・車載情報処理装置21にてデータ取得プログラム12が実行される実行可能条件として、イグニッションスイッチの状態や、車両状態(例えば、停車など)を条件としてもよい。これにより、車両状態などに応じて適切にデータ取得プログラムを実行させることができるようになる。
・上記各実施形態では、例えばプローブ部P3がアドレスxxx15とアドレスxxx16からなるように、1つのプローブ部Pが2つのアドレスからなる場合について例示した。しかしこれに限らず、1つのプローブ部が3つ以上のアドレスから構成されていてもよい。これによって、プローブ部に置き換えることのできる命令の種類が増えるとともに、プローブ部には命令とともに、データログに記録させたい値を引数として設定するようなこともできるようになる。これによって、プローブ部の置き換えの自由度が向上し、車両データ取得の柔軟性が向上するようにもなる。
・上記各実施形態では、プローブ部Pには、予め無効命令としてNOP命令が埋め込まれている場合について例示した。しかしこれに限らず、OSの実行時間やCPU負荷の増加が抑えられるのであれば、他の命令がプローブ部に初期設定されてもよい。これによって、プローブ部の設定の柔軟性が向上するようにもなる。
・上記各実施形態では、コアカーネル11Aに9個のプローブ部P1〜P9が設けられる場合について例示した。しかしこれに限らず、コアカーネルなどに設けられるプローブ部の数は8箇所以下でも、10箇所以上でもよい。これによって、プローブ部の配置自由度が向上し、より精度の高い動作解析が行えるようになる。
・上記各実施形態では、データ解析センタ10と車両20との間でのデータの授受が無線通信により行われる場合について例示した。しかしこれに限らず、データ解析センタと車両との間でのデータの授受をUSBメモリや、USBのハードディスクや、USBドライブなどの携帯型記憶装置を介して行うようにしてもよい。この場合、図10に示すように、車両20及びデータ解析センタ10をそれぞれ携帯型記憶装置19との間で情報交換可能にすることにより、携帯型記憶装置19を介して車両20及びデータ解析センタ10との間の情報交換ができるようになる。これにより、車両データ取得システムとしての構成の自由度が向上されるようになる。
・上述のように情報交換に携帯型記憶装置19を用いる場合、データログ22を車載情報処理装置21に接続させた携帯型記憶装置19に生成してもよい。これによって、データログ22の生成先の柔軟性が向上するようになることから、データログ22を記憶する
ための記憶容量の制約を回避することができるようなるなど、車両データ取得システムとしての構成の柔軟性が向上するようになる。
・上記第2の実施形態では、車載情報処理装置21に予めデータ取得プログラム12が設けられている場合について例示した。しかしこれに限らず、車載情報処理装置は、データ解析センタから取得スクリプトを含むデータ取得プログラムを受信した後、引き続き車両データの取得を行う場合、データ取得プログラムを消去せずに残すようにし、以降、取得スクリプトのみを入れ換えるようにしてもよい。これによって、データ取得プログラムの構成や、車両データの取得の自由度が向上するようになる。
・上記各実施形態では、データログ22が記憶装置31に作成される場合について例示したが、これに限らず、車両データを適宜データ解析センタに送信し、データログをデータ解析センタに作成させるようにしてもよい。この場合、例えば、インタプリタが車両データを車載通信部からデータ解析センタに送信するようにすればよい。これにより、車載情報処理装置に設けられる記憶装置の容量に制限されることなく、作成するデータログのサイズや取得する車両データの数や種類などの柔軟性が向上するようになる。
・上記各実施形態では、適用スクリプトリスト16には最大3つのスクリプト14が組み合わされたものを設定できる場合について例示した。しかしこれに限らず、適用スクリプトリストには、3つより多くのスクリプトを組み合わされたものが設定されてもよい。これにより、必要とする車両データの取得精度を向上させることができるようにもなる。
・上記各実施形態では、取得スクリプト40がスクリプト14の組み合わせにより構成される場合について例示した。しかしこれに限らず、取得スクリプトを必要とされる車両データに応じて各別に設定するようにしてもよい。この場合、例えば、プローブ部のリストから必要とされる車両データを取得できるプローブ部を選択するようにすることもできる。これにより、車両データ取得システムとしての設計自由度が向上するようになる。
・上記各実施形態では、適用スクリプトリスト16には複数のスクリプト14が適切な組み合わせの順に設定されている場合について例示した。しかしこれに限らず、スクリプトの順序が取得される車両データに影響を及ぼさない場合、適用スクリプトリストには順序に関係なくスクリプトを設定してもよい。これにより、スクリプトの組み合わせに対する取り扱いの自由度が向上するようにもなる。
・上記各実施形態では、データ取得プログラム12の実行により車両データを取得する場合について例示したが、これに限らず、データ取得プログラムと同等の機能を発揮することのできるように構成されたハードウェア、例えばロジック回路等を採用してデータログを取得するようにしてもよい。これによって、車両データ取得システムとしての設計の柔軟性が向上するようになる。
・上記各実施形態では、車載情報処理装置21は、ナビゲーションシステムである場合について例示した。しかしこれに限らず、車載情報処理装置は、車両において、車両制御や運転支援、情報提供などを行う各種制御装置であればよい。これによって、車両においてこのような車両データ取得システムの採用可能性が向上するようになる。
・上記各実施形態では、データ解析センタ10は施設であるような場合について例示したが、しかしこれに限らず、データ解析センタは、車両と通信可能なコンピュータであれば、カーメーカやカーディーラに設けられているパーソナルコンピュータのような小型コンピュータであってもよい。これにより、この車両データ取得システムとしての利用可能性の拡大が図られる。