(57)【要約】【課題】時刻同期処理が完了する以前のログ記録についても、正しいタイムスタンプ値を付与することが出来るタイムスタンプ付きログ記録を行う制御装置を提供する。【解決手段】本発明は、通信部と、タイマと、ログ情報を保存するための記録部と、前記通信部を用いて基準時刻を保有した基準時刻保持装置と時刻同期処理を行い、時刻同期されたタイムスタンプを前記ログ情報に付与して記録する制御部を備えたタイムスタンプ付きログ記録を行う制御装置において、前記制御部は、装置が起動後の初めての時刻同期処理の完了以前に記録するログの記録情報には、前記タイマのタイマ値を元に時刻同期されていないタイムスタンプを仮付与し、時刻同期処理が完了後の何れかの時点で、時刻同期処理で得られた情報を用いて、前記仮付与したタイムスタンプを時刻同期されたタイムスタンプに修正し記録することを特徴とする。【選択図】  図１
2019205016.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載される機器と通信する為の通信部と、
前記車両に搭載されるタイマと、
前記車両に搭載されるログ情報を保存するための記録部と、
前記通信部を用いて基準時刻を保有した基準時刻保持装置と時刻同期処理を行い、時刻同期されたタイムスタンプを前記ログ情報に付与して記録する制御部を備えたタイムスタンプ付きログ記録を行う制御装置において、
前記制御部は、装置が起動後の初めての時刻同期処理の完了以前に記録するログの記録情報には、前記タイマのタイマ値を元に時刻同期されていないタイムスタンプを仮付与し、
時刻同期処理が完了後の何れかの時点で、時刻同期処理で得られた情報を用いて、前記仮付与したタイムスタンプを時刻同期されたタイムスタンプに修正し記録することを特徴とするタイムスタンプ付きログ記録を行う制御装置。
【請求項２】
請求項１に記載のタイムスタンプ付きログ記録を行う制御装置において、
前記制御部は、前記基準時刻保持装置から時刻同期処理にて受信した基準時刻を元に時刻同期処理を行うものであって、
前記基準時刻保持装置から基準時刻を受信する際の転送遅延時間と、
前記基準時刻保持装置と前記タイマとの時間の進み方の差の、
いずれか一方あるいは双方の情報をもとに、タイムスタンプの修正を行うことを特徴とするタイムスタンプ付きログ記録を行う制御装置。
【請求項３】
請求項１又は請求項２のいずれかに記載のタイムスタンプ付きログ記録を行う制御装置において、
前記制御部は、外部に接続したログ取得装置からのログ呼び出し時に、前記タイムスタンプの修正を行うことを特徴とするタイムスタンプ付きログ記録を行う制御装置。
【請求項４】
請求項１乃至請求項３のいずれか1項に記載のタイムスタンプ付きログ記録を行う制御装置において、
前記制御部は、外部に接続したログの取得装置へログの記録情報とタイムスタンプ情報とを送信するものであって、
前記タイムスタンプ情報にタイムスタンプが修正されたものか否かを示すタイムスタンプ種別情報を付加して送信することを特徴するタイムスタンプ付きログ記録を行う制御装置。
【請求項５】
車両に搭載される機器と通信する為の通信部と、
前記車両に搭載されるタイマと、
前記車両に搭載されるログ情報を保存するための記録部と、
前記通信部を用いて基準時刻を保有した基準時刻保持装置と時刻同期処理を行い、時刻同期されたタイムスタンプを前記ログ情報に付与して記録する制御部を備えたタイムスタンプ付きログ記録を行う制御装置において、
前記制御部は、装置が起動後の初めての時刻同期処理の完了以前に記録するログの記録情報には、前記タイマのタイマ値を元に時刻同期されていないタイムスタンプを仮付与し、
さらに仮付与したタイムスタンプの修正に必要となる情報を時刻同期履歴情報として記録し、
外部に接続されたログ取得装置へログ記録情報とともに前記時刻同期履歴情報を送信することを特徴とするタイムスタンプ付きログ記録を行う制御装置。
【請求項６】
請求項５に記載のタイムスタンプ付きログ記録を行う制御装置に接続し、
前記制御装置内に記録されたログ記録情報を取得するログ取得装置であって、
ログ記録情報とともに時刻同期履歴情報を前記制御装置より取得し、
前記制御装置から取得した前記時刻同期履歴情報を用いて、ログ記録情報に仮付与されたタイムスタンプの修正を行うことを特徴とするログ取得装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両内の複数の装置で時刻を同期する機能を有したシステムに係り、タイムスタンプ付きのログ記録を行う制御装置およびログ取得装置に関する。
【背景技術】
【０００２】
従来、図１０に示すように車両内の複数の制御装置（ナビ９０１、走行支援装置９０２、エンジン９０３、ブレーキ９０４）の間を通信インタフェース経由で接続し、それらの制御装置に搭載したタイマの時刻を同期させ、ログを取得する際に同期したタイマの時刻を用いてタイムスタンプを付与することが知られている。
【０００３】
上記のように取得したタイムスタンプ付きのログを外部のログ取得装置１１４を用いてログを取得し、そのログを用いて複数の制御装置が連携したシステム全体での動作の分析を行っている。上記のタイムスタンプを付与したログの取得を行うシステムとしては、例えば特許文献１に記載されたデータ処理システムが提案されている。
【０００４】
また、図１１に示すように複数の車両１００１及び車両１００２において、時刻を含む車両の情報をそれぞれの車両において記録し、例えば事故が起きた際に記録した自車両の
記録情報１００３および相手車両の記録情報１００４を用いて事故の解析を行うことが知られている。上記のシステムとしては、例えば特許文献２に記載された運転情報処理装置が提案されている。
【０００５】
これらのシステムにおいて、複数の機器または複数の車両にて取得したログにて動作の解析を行う場合には、各々のログに付与されたタイムスタンプに基づいて、ログに記録された事象を発生順にたどることで動作分析を行う。ただし、複数の装置あるいは複数の車両において記録したログのタイムスタンプの付き合わせを行う為に、それぞれの装置に備えたタイマの時刻がそろっている必要があり、その為に事前に装置間のタイマの時刻を揃える処理すなわち時刻同期処理を実施する。
【０００６】
例えば複数の車両にまたがるようなシステムの場合には、基準となる時刻を外部から、例えばＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）電波あるいは標準周波数報時電波などを受信した上で、その受信した時刻に基づいて時刻同期処理を行う。つまり上記のような時刻同期処理を行った上で、ログを取得しタイムスタンプの付与を行っている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１５-３５１５８号公報
【特許文献２】特許第３８６１８１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記したシステムにおいては、タイムスタンプを付与したログを記録する為に、予め外部から基準となる時刻の受信処理や、装置間の通信にて時刻情報を配信することで時刻同期の処理を行う必要がある。また、ＧＰＳや標準周波数報時電波などの受信により時刻を受信する場合には分単位の時間を要する場合もあり、時刻を取得して装置間で時刻同期処理を完了するまでに相当の時間を要する。これらの処理が完了するまでの間は、ログの記録が開始できないあるいはログを記録した場合であっても正しいタイムスタンプを付与することが出来ないという課題がある。ひいてはそれらのログを用いた動作解析にも支障が生ずる。
【０００９】
本発明の目的は、時刻同期が完了する前に記録したログにおいても正しいタイムスタンプを付与することを実現した、タイムスタンプ付きログ記録を行う制御装置およびログ取得装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するために本発明は、車両に搭載される機器と通信する為の通信部と、前記車両に搭載されるタイマと、前記車両に搭載されるログ情報を保存するための記録部と、前記通信部を用いて基準時刻を保有した基準時刻保持装置と時刻同期処理を行い、時刻同期されたタイムスタンプを前記ログ情報に付与して記録する制御部を備えたタイムスタンプ付きログ記録を行う制御装置において、前記制御部は、装置が起動後の初めての時刻同期処理の完了以前に記録するログの記録情報には、前記タイマのタイマ値を元に時刻同期されていないタイムスタンプを仮付与し、時刻同期処理が完了後の何れかの時点で、時刻同期処理で得られた情報を用いて、前記仮付与したタイムスタンプを時刻同期されたタイムスタンプに修正し記録することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、時刻同期処理が完了する以前であっても、ログに正しいタイムスタンプを付与して記録を行う制御装置、あるいは正しいタイムスタンプが付与されたログの取得装置を提供することが出来る。それによって、それらの制御装置で取得されたログを用いた解析が容易になる。
【図面の簡単な説明】
【００１２】
【図１】実施例１の制御装置の構成図
【図２】実施例１のタイムスタンプ算出処理の説明図
【図３】実施例１のレート偏差算出処理の説明図
【図４】実施例１の動作の説明図
【図５】実施例１のログ記録内容の説明図
【図６】実施例１のタイムスタンプ修正処理の説明図
【図７】実施例１のログ取得装置にて取得するログ内容の説明図
【図８】実施例２の伝送遅延時間算出処理の説明図
【図９】実施例２のタイムスタンプ修正処理の説明図
【図１０】車両内のシステムの構成図
【図１１】ログ記録を利用する状況の説明図
【発明を実施するための形態】
【００１３】
以下本発明の実施例を、図面を用いて説明する。
【実施例１】
【００１４】
図１〜図７は実施例１の説明図である。図１は制御装置の構成図である。図２はタイムスタンプ算出処理の説明図、図３はレート偏差算出処理の説明図である。図４は動作の説明図、図５はログ記録内容の説明図である。図６はタイムスタンプ修正処理の説明図、図７はログ取得装置にて取得するログ内容の説明図である。
【００１５】
実施例１は、時刻同期処理よりも以前に付与されたタイムスタンプを、時刻同期処理で取得したパラメータを用いて修正を行う場合の例である。
【００１６】
まず図１を用いて実施例１の制御装置の構成を説明する。この図１にて示す各種の制御装置は、図１０に示したように車両内に設置された制御装置の代表的な構成図を示すものである。制御装置の構成は、車両１０１と、車両内に設置された第一制御装置１０２と、時刻信号を受信する為のアンテナ１０３と、受信した信号から時刻情報を取得する時刻取得部１０４と、第一制御装置の時刻同期処理の制御を行う制御部１０５と、通信インタフェース１０６と、前記通信インタフェース１０６が接続された通信バス１０７と、第二制御装置１０８と、通信インタフェース１０９と、第二制御装置の時刻同期処理およびログ取得処理を制御する制御部１１０と、自装置にて備えるローカルタイマ１１１と、ログ記録部１１２と、第二制御装置と同等の構成から成る第三制御装置１１３と、車両の外部から接続して第二制御装置１０８あるいは第三制御装置１１３に記録されたログを取得する為のログ取得装置１１４と、通信インタフェース１１５と、ログ取得装置の制御部１１６と、取得したログを格納するログ蓄積部１１７から構成されている。
【００１７】
図１に示した構成では、第一制御装置１０２が時刻同期の基準となるマスターとなり、第二制御装置１０８及び第三制御装置１１３は自身の時刻をマスターの時刻に合わせるスレーブの役割を持っている。第一制御装置１０２の時刻取得部１０４としては例えば、ＧＰＳの受信器や標準周波数報時電波の受信器であって、受信した時点での標準時刻を取得する。更に時刻取得部１０４はその内部にタイマを備え、取得した標準時刻を内部のタイマに設定し、一旦設定後は内部タイマが自律的に時を刻む。制御部１０５からの時刻の取得要求があった場合には、内部タイマを元に時刻情報を出力する。またＧＰＳ等からの標準時刻の受信は定期的に行い、その都度内部タイマの値を更新する。さらに第一制御装置１０２は時刻取得部１０４の時刻を、制御部１０５の制御により、通信インタフェース１０６を介して取得した時刻情報を配信することで時刻同期の処理を行う。
【００１８】
一方第二制御装置１０８のローカルタイマ１１１は、例えば装置が起動した時点から計時を開始し自律的に時を刻むものであって、制御部１１０からの要求に応じてその時点のタイマ値を出力する。第一制御装置１０２から送信された時刻情報は、通信インタフェース１０９を介して受信され、制御部１１０ではその受信した時刻情報とローカルタイマ１１１を用いてタイムスタンプを生成し、ログ記録部１１２にログの記録を行う。
【００１９】
なお、制御装置が起動後のローカルタイマ１１１は、起動時から計時を開始するものであっても、例えば別途保存された以前のタイマ値を読み込みその値から続けて計時するようなものであってもどちらでも構わない。また、通信バス１０７としては、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＥｔｈｅｒｎｅｔ、あるいはＦｌｅｘＲａｙなどの車両内の機器の通信バスである。
【００２０】
次に図２〜図４を用いて、第二制御装置１０８における時刻同期されたタイムスタンプの生成手順について説明する。なお、一般的な時刻同期の処理手順としてはＩＥＥＥ  Ｓｔｄ  ８０２．１ＡＳ規格やＩＥＥ  Ｓｔｄ  １５８８規格などがあり、以下の説明はこれらの処理手順と類似の処理手順となっている。
【００２１】
まず、第一制御装置１０２の制御部１０５は、時刻同期の開始を示すＳｙｃｎメッセージ２０１を送信し、さらにそのメッセージを送信した時点の時刻Ｔ１を時刻取得部１０４から取得する。また第二制御装置１０８では前記のＳｙｎｃメッセージ２０１を受信した時点のローカルタイマ１１１のタイマ値Ｔ２を記録する。次に第一制御装置１０２は先ほどＳｙｎｃメッセージを送信した時点の時刻Ｔ１の値を、Ｆｏｌｌｏｗｕｐメッセージ２０２に格納して送信する。第二制御装置１０８では受信したＦｏｌｌｏｗｕｐメッセージに格納されたＴ１の値を取得し記録する。配信された時刻Ｔ１の値や、受信したタイマの時刻Ｔ２の値は、図４に示すように、時刻同期処理の履歴として記録する。上記のＳｙｎｃメッセージおよびＦｏｌｌｏｗｕｐメッセージの送信は繰返し行い、その都度最新の時刻がマスター側からスレーブ側に配信される。
【００２２】
一旦ＳｙｎｃメッセージおよびＦｏｌｌｏｗｕｐメッセージの受信が行われた以降に、第二制御装置１０８にてログの記録が発生しタイムスタンプの付与が必要となった際に、その制御部１１０はその時点のタイムスタンプ値を以下のように算出する。
【００２３】
まずログの記録が発生した時点でのローカルタイマ１１１からタイマ値Ｔ３を取得する。さらに図４に示す時刻同期履歴から直近に受信があった履歴情報を用いて、このタイマ値Ｔ３とＴ２の差分（Ｔ３−Ｔ２）を算出する。これにより、先にＳｙｎｃメッセージを受信した時点からの経過時間が求められる。ただしこの経過時間はローカルタイマ１１１で計測された時間である為、ローカルタイマ１１１の時間の進み方が、本来の時間の進み方よりも早いあるいは遅い場合がある。その為、タイマの時間の進み方を補正する為の係数、すなわちレート偏差Ｒ（詳細は後述）を乗じる。この補正後の経過時間を配信された時刻Ｔ１に加算することで、タイムスタンプの値を求める。すなわち、以下の式によりログの記録が発生した時点のタイムスタンプの値を算出する。なお上述のように計算に用いる配信時刻Ｔ１、及び受信時のタイマ値Ｔ２はログ記録が発生する以前の最も直近の配信時刻を用いる。
タイムスタンプ時刻ＴＬ＝配信時刻Ｔ１＋（経過時間（Ｔ３−Ｔ２）×レート偏差Ｒ）  …式１
【００２４】
上記の式１においてレート偏差Ｒは、タイマの時間の進み方を補正する為の係数であるがその求め方について以下に説明する。ローカルタイマ１１１はその時計の進み方が、ママスター側の進み方と必ずしも一致しない。そこで、そのローカルタイマの進み方に対するマスター側の進み方の比率を表したものがレート偏差Ｒである。
【００２５】
図３はレート偏差Ｒを算出する手順の説明図であり、同図を用いてその手順について述べる。既に図２において説明した時刻の配信と同様にして、第一制御装置はＳｙｎｃメッセージ３０１を送信し、さらにそのメッセージを送信した時点の時刻Ｔ１ａを後続するＦｏｌｌｏｗｕｐメッセージ３０２に格納して送信する。一方第二制御装置では、Ｓｙｎｃメッセージを受信した時点でのローカルタイマ１１１のタイマ値Ｔ２ａと、後続するＦｏｌｌｏｗｕｐ３０２に格納されたＴ１ａの値を、図４に示す時刻同期履歴の例えば履歴情報４０１として記録する。同図に示す例では初めに受けたＴ１ａの値が００時１０分０.０００秒であり、Ｔ２ａの値が６０秒だった場合の例を示している。
【００２６】
ＳｙｎｃメッセージおよびＦｏｌｌｏｗｕｐメッセージは繰返し行われ、上記と同様にＳｙｎｃメッセージ３０３、Ｆｏｌｌｏｗｕｐメッセージ３０４が送信され、受信した第二制御装置側で１回目と同様に送信時刻Ｔ１ｂと受信時刻Ｔ２ｂを履歴情報４０２として記録する。
２回目以降にＳｙｎｃメッセージ、Ｆｏｌｌｏｗｕｐメッセージが受信された場合に、第二制御装置側では、前回の配信時刻と今回の配信時刻の差すなわち経過時間（Ｔ１ｂ−Ｔ１ａ）を計算する。さらに、前回の受信時刻と今回の差すなわちローカルタイマの経過時間（Ｔ２ｂ−Ｔ２ａ）を計算し、以下の計算式にてレート偏差Ｒを求める。
レート偏差Ｒ＝経過時間（Ｔ１ｂ−Ｔ１ａ）÷経過時間（Ｔ２ｂ−Ｔ２ａ）  …式２
【００２７】
例えば図４に示す例では、履歴情報４０２の記録時に、履歴情報４０１を用い配信時刻の経過時間を計算する。同図に示す例では、配信時刻の経過時間は（１０分２０．０００秒−１０分０．０００秒）より経過時間は２０．００００秒となる。またローカルタイマの経過時間は（７９．９８０秒−６０．０００秒）より１９．９８０秒となる。さらにこれらの比であるレート偏差は（２０．００００秒÷１９．９８０秒）より1．００１すなわち１００．１％となる。つまり第二制御装置のローカルタイマが１秒進む間に、基準となる時刻は１．００１秒進んでいることを示している。したがってこのレート偏差をローカルタイマの経過時間に積算することで、基準となる時刻の経過時間に換算することができる。上記のレート偏差は時刻同期のメッセージを受信する都度に計算を行い、タイムスタンプ値を求める際には常に最新の値を用いるものである。
【００２８】
次に図５を用いて第二制御装置におけるログへのタイムスタンプの付与の動作について説明する。
【００２９】
同図はログの記録内容の一例を示すもので５０１ａないし５０５ａはタイムスタンプの修正前の記録内容を示し、５０１ｂないし５０５ｂはタイムスタンプ修正後の記録内容を示している。また記録する内容としてはタイムスタンプの値、タイムスタンプの種別、タイムスタンプの修正の要否、ログの記録情報から成っている。
【００３０】
同図において５０１ａは一回目の時刻同期のメッセージを受信する以前に発生したログである。この場合タイムスタンプの値として、ローカルタイマ１１１のタイマ値を暫定で記録し、タイマスタンプの種別としてローカル時刻であることを同時に記録する。またこのタイムスタンプ値は時刻同期処理完了後に修正が必要となる為、修正要否情報として修正が必要である旨を記録する。
【００３１】
次に５０２ａは時刻同期のＳｙｎｃメッセージを受信した際のログである。タイムスタンプ値としてはＦｏｌｌｏｗｕｐメッセ時にて受信した時刻値を記録し、タイムスタンプ値としては時刻同期済みの時刻であることを記録する。またタイムスタンプの修正は不要であるため、修正要否情報として不要である旨を記録する。
【００３２】
５０３ａは一回目の時刻同期メッセージ受信後のログである。この時点ではレート偏差がまだ一度も計算されていないため、ログ記録５０１ａの場合と同様にタイムスタンプ値としてローカルタイマの値を記録する。その他の項目についてもログ記憶５０１ａと同様に記録する。
【００３３】
５０４ａは２回目の時刻同期のＳｙｎｃメッセージを受信した際のログであり、ログ記録５０２aと同様に記録を行う。
【００３４】
５０５ａは時刻同期完了しレート偏差の計算も終了後のログ記録であり、２回目の時刻同期メッセージで受信した配信時刻と、その際に計算されたレート偏差を元に図２に示した手順にてタイムスタンプ値を計算して記録する。タイムスタンプ値としては時刻同期済みの時刻であることを記録する。またタイムスタンプの修正は不要であるため、修正要否情報として不要である旨を記録する。
【００３５】
続いて、タイムスタンプの修正動作について説明する。ログ記録５０１ａ、５０３ａは上記したように時刻同期が完了する以前のログである為、一時的にローカルタイマの値をタイムスタンプとして記録してある為その修正を行う。
【００３６】
まず図６を用いて、時刻同期のメッセージを受信する以前のログ記録のタイムスタンプの時刻算出手順について説明する。既に図２にて説明したのと同様にして、第一制御装置１０２から一回目のＳｙｎｃメッセージ６０１、及びＦｏｌｌｏｗｕｐメッセージ６０２が送信され、受信した第二制御装置１０８では、送信時刻Ｔ１ｃと受信時のローカルタイマ１１１の値Ｔ２ｃを図４に示す時刻同期履歴として記録する。
【００３７】
上記の時刻同期メッセージが配信される以前に発生したログのタイムスタンプ値は以下のように算出する。まずログに記録されたローカルタイマ値Ｔ４ｃと、その後に発生した時刻同期メッセージ受信時のローカルタイマ値を図４の時刻同期履歴を用いて、このタイマ値の差分（Ｔ２ｃ−Ｔ４ｃ）すなわち時刻同期メッセージの受信時点からの遡行時間算出する。さらにこの遡行時間にレート偏差を積算し基準となる時刻の時間の遡行量に換算する。この時用いるレート偏差の値は２回目の時刻同期メッセージの受信時に算出した値を用いる。そしてこの補正後の遡行時間を、配信された時刻から減算することでタイムスタンプの値を求めることが出来る。すなわち、以下の式により時刻同期メッセージを受信する以前のタイムスタンプの値を算出する。
時刻同期完了以前のタイムスタンプ時刻ＴＬｃ＝配信時刻Ｔ１ｃ−（遡行時間（Ｔ２ｃ−Ｔ４ｃ）×レート偏差Ｒ）  …式３
【００３８】
例えば図５に示したログを例に説明を行う。この例では第二制御装置１０８の制御部１１０は、２回目の時刻同期メッセージを受信しレート偏差の計算が完了し、タイムスタンプの修正に必要なパラメータが用意できた後に、ログ記録の内で修正要とされているログ記録５０１ａ、およびログ記録５０３ａを抽出し修正を行う。
【００３９】
ログ記録５０１ａはそのタイムスタンプ値（３０．０００秒）と、図４の時刻同期履歴に記録された履歴情報４０１より一回目の時刻同期メッセージを受信した際のローカルタイマ値（６０．０００秒）より遡行時間（６０．０００秒−３０．０００秒）として３０．０００秒を算出する。更にその遡行時間に２回目の時刻同期の履歴情報４０２よりその際のレート偏差１００．１％を積算（３０．０００×１．００１）し３０．０３０秒を得る。最後に履歴情報４０１より第一回目の配信時刻（００時１０分０．０００秒）から上記の積算値（３０．０３０秒）を減算して、タイムスタンプ値として００時９分２９．９７０秒を得る。この得られたタイムスタンプ値を新たな値として、修正されたログ情報５０１ｂを記録する。
【００４０】
また、ログ記録５０３ａは既に一回目の時刻同期メッセージの受信後であり、レート偏差が未計算の時のログであるため、レート偏差の値のみを２回目の時刻同期メッセージの受信時に計算した値を用いて、タイムススタンプの補正を行う。つまりタイムスタンプ値（７０．０００秒）と図４の時刻同期履歴に記録された履歴情報４０１より一回目の時刻同期メッセージを受信した際のローカルタイマ値（６０．０００秒）から経過時間（７０．０００秒−６０．０００秒）として１０．０００秒を算出する。更にその経過時間に２回目の時刻同期の履歴情報４０２よりその際のレート偏差１００．１％を積算（１０．０００×１．００１）し１０．０１０秒を得る。最後に履歴情報４０１より第一回目の配信時刻（００時１０分０．０００秒）から上記の積算値（１０．０１０秒）を加算して、タイムスタンプ値として００時１０分１０．０１０秒を得る。この得られたタイムスタンプ値を新たな値として、修正されたログ情報５０３ｂを記録する。これらの修正済みのログ記録にはタイムスタンプ種別として修正後の時刻を示す情報を付加し、また修正要否情報としては修正済みを示す情報を付加する。
【００４１】
なおログ記録５０３ａの修正は上記の説明では一回目の時刻同期メッセージの受信時の配信時刻からの経過時間を加算する手順にて説明を行ったが、２回目の時刻同期メッセージの配信時刻からの遡行時間を減算する手順で行っても、同一の値が算出可能である。
【００４２】
上記したように第二制御装置１０８のログ記録部１１２に記録されたログ記録は、車両の外部から接続したログ取得装置１１４によりその内容を読み出される。また第三制御装置１１３に記録されたログ記録も同様に読みだされ、ログ取得装置１１４のログ蓄積部１１７に蓄積される。これら蓄積されたログを用いて、各制御装置間のタイムスタンプ情報を付き合わせて解析することで、装置間の連携動作の解析が可能となる。
【００４３】
図７にログ取得装置１１４のログ蓄積部１１７に格納した、第二制御装置１０８のログ内容を示す。各制御装置から取得しログ蓄積部１１７に格納する内容としては、装置種別１１０１、タイムスタンプ１１０２、タイムスタンプ種別１１０３、ログの記録情報１１０４等から成る。第三制御装置１１３のログ内容についても上記と同様の内容で蓄積される。タイムスタンプ種別１１０３は、ログに付与されたタイムスタンプが修正された時刻情報であるか否かを示す情報である。既に述べたようにタイムスタンプの修正は、そのログが記録された時点よりも以降の時刻同期情報を用いて行っているため、本来のタイムスタンプの算出に比較して、わずかながらも時刻値の精度が劣る可能性がある。そこで、このタイムスタンプ種別１１０３にて修正後の時刻であることを示すことによって、修正されたタイムスタンプとそうで無いものでその時刻精度の違いを表すことができる。それによって、これらのログのタイムスタンプを元に複数の装置間の連携動作の解析を行う場合に、事象の発生順序の正確さの違いを念頭に置いた上で、解析者がログの分析を行うことが可能となる。
【００４４】
なお上記したタイムスタンプの修正は、例えば図５を用いた説明の場合には、２回目の時刻同期メッセージを受信しレート偏差の計算が完了した際に実施するように説明をおこなった。ただし、この修正は必ずしもその時点で実施する必要は無く、修正に必要な情報が得られた後であれば何時行ってもかまわない。
【００４５】
例えば、このタイムスタンプの修正処理を、ログ取得装置１１４からのログ読出しの際に行っても良い。その場合には制御装置が通常動作中にタイムスタンプの修正の為に処理負荷が上昇することを避けることができるため、装置の電力消費を抑える効果や処理の安定性を損なわないという効果が期待できる。あるいは、ログ情報だけでなく図４に示した時刻同期履歴の情報をログ取得装置１１４側で読出し、タイムスタンプの修正処理をログ取得装置側で行ってもかまわない。この場合であっても上記と同様に制御装置側の処理負荷を低減する効果が得られる。
【００４６】
上記した実施例ではレート偏差の値を、時刻同期メッセージを第二制御装置にて受信するごとにその経過時間をもとに計算するように説明を行ったが、必ずしも毎回実施する必要は無く、複数回の受信ごとにその際の複数回の受信に要した経過時間を元に計算を行ってもかまわない。またレート偏差の値を第二制御装置にて算出する場合を例に説明を行ったが、このレート偏差の値を事前に測定し固定の値として保持しておき、その値を用いてもかまわない。その場合には２回目の時刻同期メッセージの受信を待つことなく、タイムスタンプの付与が可能となるため、例えば図５のログ記録５０３ａのタイムスタンプ値は、ローカルタイマ値を記録することなく、その記録当初から正しいタイムスタンプの記録が可能である。
【００４７】
さらに、ローカルタイマ１１１の計時精度が十分に高いものであってその影響が無視できるレベルの場合には、レート偏差は必ずしも考慮する必要は無い。その場合には上記した各算出の手順においてレート偏差Ｒの値を１００％（１．０００…）として計算するのと同等の処理となる。
【００４８】
また、上記した例では時刻同期以前のログに付与する仮のタイムスタンプとして、ローカルタイマ１１１のタイマ値として説明を行ったが、この値は必ずしもローカルタイマの値そのものである必要はなく、タイマ値に何らかの変換処理を行った値であっても良く、時刻同期完了後に正しいタイムスタンプに修正が可能となるようなものであればかまわない。
【００４９】
以上説明したように本実施例では、１回目の時刻同期メッセージを受信する以前のログであっても、一旦ローカルタイマのタイマ値を記録し時刻同期メッセージの受信後にその情報を用いてタイムスタンプの修正が可能となり、時刻同期以前のログの活用性が向上する。
【実施例２】
【００５０】
次に実施例２を図８、図９を用いて説明する。なお、同一の機能を有する部分に関しては説明を省略する。実施例２は図１に示した制御装置におけるタイムスタンプの付与に際して、時刻同期メッセージの配信に要する伝送遅延時間を加えて補正を行う場合の例である。実施例２は伝送遅延の補正を行う以外の点については実施例１に示したものと同様の動作を行うものである。また車両内の通信バス１０７として遅延時間の測定を行うものの例として、例えばＥｔｈｅｒｎｅｔ等がある。
【００５１】
まず図８を用いて伝送遅延時間の測定手順について説明する。第二制御装置１０８は遅延時間を測定する為の要求であるＤｅｌａｙＲｅｑメッセージ７０１を送信し、更にその送信時のローカルタイマ１１１のタイマ値Ｔ５を記録する。そのメッセージを受信した第一制御装置１０２ではＤｅｌａｙＲｅｑメッセージ７０１を受信した時刻Ｔ６を格納した応答メッセージＤｅｌａｙＲｅｓ７０２を返信する。さらに、その返信時刻Ｔ７を格納したＤｅｌａｙＲｅｓ＿Ｆｏｌｌｏｗｕｐメッセージ７０３を送信する。第二制御装置１０８ではＤｅｌａｙＲｅｓメッセージ７０２を受信した際のローカルタイマのタイマ値Ｔ８を記録する。さらに後続するＤｅｌａｙＲｅｓ＿Ｆｏｌｌｏｗｕｐメッセージ７０３を受信し、格納された時刻Ｔ７を取得する。
【００５２】
第二制御装置１０８では、これらの時刻Ｔ５ないし時刻Ｔ８の値を用いて以下のように伝送遅延時間を算出する。まず、第二制御装置１０８側でＤｅｌａｙＲｅｑメッセージを送信してから、ＤｅｌａｙＲｅｓメッセージを受信するまでの経過時間、すなわちタイマ値Ｔ８とＴ５の差分（Ｔ８−Ｔ５）を計算する。ただしこの経過時間はローカルタイマ１１１で計測された時間である為、その進み方を補正する為にレート偏差Ｒを乗じて、基準となる時刻の経過時間に換算する。なお、レート偏差Ｒの値は、図３を用いて既に説明したのと同様の手順にて、ＳｙｎｃメッセージおよびＦｏｌｌｏｗｕｐメッセージを複数回受信し、その間の第一制御装置１０２側での経過時間と第二制御装置１０８側での経過時間の比より算出している。また第一制御装置１０２でのＤｅｌａｙＲｅｑメッセージを受信してからＤｅｌａｙＲｅｓメッセージを送信するまでの経過時間として、時刻Ｔ７とＴ６の差分（Ｔ７−Ｔ６）を計算する。これら第二制御装置１０８側での経過時間と、第一制御装置１０２側での経過時間の差が、ＤｅｌａｙＲｅｑメッセージとＲｅｌａｙＲｅｓメッセージの往復に要した遅延時間となる。最後に往復の遅延時間を２で割ることで伝送延時間を求める。すなわち以下の式により、通信バス１０７を介したメッセージの伝達時の伝送遅延時間ＴＤを算出する。
伝送遅延時間ＴＤ＝（（レート偏差Ｒ×（Ｔ８−Ｔ５））―（Ｔ７−Ｔ６））÷２  …式４
【００５３】
次に、時刻同期メッセージが配信される以前に発生したログのタイムスタンプ値の修正方法について図９を用いて説明する。修正方法としては、配信された時刻に伝送遅延時間を加算することで、伝送遅延の補正を行った配信時刻を得るものである。具体的には、既に述べた例と同様に第一制御装置１０２はＳｙｎｃメッセージ８０１を送信し、更に継続して前記メッセージの送信時刻Ｔ１ｄを後続するＦｏｌｌｏｗｕｐメッセージ８０２に格納して送信する。第二制御装置１０８ではそのＳｙｎｃメッセージを８０１受信した際のローカルタイマ１１１の値Ｔ２ｄを記録するとともに、Ｆｏｌｌｏｗｕｐメッセージ８０２に格納された時刻Ｔ１ｄを取得する。ただし、この時刻Ｔ１ｄの配信時に伝送遅延時間ＴＤの時間を要しているため、その分の時間を加算する。すなわち伝送遅延時間を加算した時刻（Ｔ１ｄ＋ＴＤ）を配信された時刻とみなして、タイムスタンプ時刻の算出を行う。Ｓｙｎｃメッセージ８０１以前に発生したログに記録されたローカルタイマ値Ｔ４ｄと、その後に発生した時刻同期メッセージ受信時のローカルタイマ値の差分（Ｔ２ｄ−Ｔ４ｄ）すなわち時刻同期メッセージの受信時点からの遡行時間算出する。さらにこの遡行時間にレート偏差を積算し基準となる時刻の時間の遡行量に換算する。そしてこの補正後の遡行時間を、上記の補正された配信時刻（Ｔ１ｄ＋ＴＤ）から減算することでタイムスタンプの値を求めることが出来る。すなわち、以下の式により時刻同期メッセージを受信する以前のタイムスタンプの値ＴＬｄを算出する。
時刻同期完了以前のタイムスタンプ時刻ＴＬｄ＝配信時刻Ｔ１＋伝送遅延ＴＤ−（遡行時間（Ｔ２ｄ−Ｔ４ｄ）×レート偏差Ｒ）  …式５
【００５４】
上記のタイムスタンプの修正処理は、遅延時間ＴＤの算出、レート偏差Ｒの算出およびマスター側からの時刻の配信が行われ、修正に必要な情報がそろった時点あるいはそれ以降のどこかの時点で行う。
【００５５】
また、修正が不要なタイムスタンプについては、同様に式１に示したタイムスタンプ時刻の計算に用いる配信時刻Ｔ１を、伝送遅延を加算した値（Ｔ１＋ＴＤ）に置き換えることで算出が可能である。
【００５６】
上記した実施例では、伝送遅延時間をＤｅｌａｙＲｅｑ、ＲｅｌａｙＲｅｓ、ＤｅｌａｙＲｅｓ＿Ｆｏｌｌｏｗｕｐ各メッセージを用いて算出を行ったが、予め別の手段でこの伝送遅延時間を測定したうえで記録しておき、その事前の記録値を用いてもかまわない。
【００５７】
また、レート偏差の算出はＳｙｎｃメッセージおよびＦｏｌｌｏｗｕｐメッセージを複数回受信し、その間の第一制御装置側での経過時間と第二制御装置側での経過時間の比を算出を行うように説明したが、これに用いる通信メッセージはＤｅｌａｙＲｅｓメッセージおよびＤｅｌａｙＲｅｓ＿Ｆｏｌｌｏｕｐメッセージで代用することも可能である。
【００５８】
また実施例１と同様に、タイムスタンプの修正処理は必要な情報が揃った後であれば、必ずしもその時点で行う必要は無く、外部からのログの読出し時に実施しても、またログを読みだした先のログ取得装置で行っても良く、それによって制御装置の負荷を低減することができる。さらにログ取得装置が読み出すログの内容として、タイムスタンプ値が修正されたものか否かを示す情報を付加することで、ログ解析者に対してタイムスタンプの正確さに関しての情報を提供することが出来る点も同様である。
【００５９】
以上説明したように本実施例では、時刻同期処理が行われる以前のログであっても正しいタイムスタンプを付与することができ、さらに伝送遅延時間を加味することでより精度の高いタイムスタンプの付加が可能となりログの活用性が向上する。
【００６０】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【００６１】
１０１：車両
１０２：第一制御装置
１０３：アンテナ
１０４：時刻取得部
１０５：制御部
１０６：通信インタフェース
１０７：通信バス
１０８：第二制御装置
１０９：通信インタフェース
１１０：制御部
１１１：ローカルタイマ
１１２：ログ記録部
１１３：第三制御装置
１１４：ログ取得装置
１１５：通信インタフェース
１１６：制御部
１１７：ログ蓄積部
【図１】
2019205016.tif 000003
【図２】
2019205016.tif 000004
【図３】
2019205016.tif 000005
【図４】
2019205016.tif 000006
【図５】
2019205016.tif 000007
【図６】
2019205016.tif 000008
【図７】
2019205016.tif 000009
【図８】
2019205016.tif 000010
【図９】
2019205016.tif 000011
【図１０】
2019205016.tif 000012
【図１１】
2019205016.tif 000013