JP6703960B2 - 演算装置、ログ記録方法、ログ記録システム - Google Patents

演算装置、ログ記録方法、ログ記録システム Download PDF

Info

Publication number
JP6703960B2
JP6703960B2 JP2017088069A JP2017088069A JP6703960B2 JP 6703960 B2 JP6703960 B2 JP 6703960B2 JP 2017088069 A JP2017088069 A JP 2017088069A JP 2017088069 A JP2017088069 A JP 2017088069A JP 6703960 B2 JP6703960 B2 JP 6703960B2
Authority
JP
Japan
Prior art keywords
log
input
application
unit
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017088069A
Other languages
English (en)
Other versions
JP2018185709A (ja
Inventor
雄介 宇治土公
雄介 宇治土公
勇樹 堀田
勇樹 堀田
成沢 文雄
文雄 成沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2017088069A priority Critical patent/JP6703960B2/ja
Priority to PCT/JP2018/015183 priority patent/WO2018198770A1/ja
Priority to DE112018001810.5T priority patent/DE112018001810T5/de
Publication of JP2018185709A publication Critical patent/JP2018185709A/ja
Application granted granted Critical
Publication of JP6703960B2 publication Critical patent/JP6703960B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0264Control of logging system, e.g. decision on which data to store; time-stamping measurements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、演算装置、ログ記録方法、およびログ記録システムに関する。
自動運転を実現する制御アプリケーションはあらゆる状況下での動作保証が求められるため、膨大な実環境走行による動作検証が必要となる。実環境走行で発生したアプリケーションの不具合を効率的に解消するための不具合の再現方法として、以下の手法が知られている。すなわち走行時にアプリケーションに入力された周辺環境等に関するデータをログに記録しておき、不具合発生時にはログから当該データを再生してアプリケーションに入力することにより、不具合を再現する手法である。特許文献1には、仮想環境を模擬する模擬手段と、上記模擬手段により模擬された結果をリアルタイムで表示する1台以上の表示手段と、上記模擬の内容を記録保存するための条件を設定する記録保存条件設定手段と、上記条件に基づいて上記模擬の内容全てをチェックポイントファイルに保存するチェックポイントファイル手段と、上記チェックポイントファイルに保存を行った時刻から次の保存を行う時刻までの間の上記模擬の内容の変化の差分だけをイベントログファイルに保存するイベントログファイル手段と、保存された上記チェックポイントファイル及び上記イベントログファイルを用いて、任意の時刻における上記模擬の内容を再生して上記表示手段に表示するための再生手段と、システム全体の統合管理を行うための統合管理手段と、を備えたことを特徴とする分散シミュレーションシステムが開示されている。
特願平11−321461号公報
特許文献1に記載されている発明では、アプリケーションが実行されるタイミングとアプリケーションにデータが入力されるタイミングの前後関係を正確に記録できない。
本発明の第1の態様による演算装置は、アプリケーションを繰り返し実行する実行部と、前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録する記録部とを備える。
本発明の第2の態様によるログ記録方法は、アプリケーションを繰り返し実行することと、前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントすることと、前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録することとを含む。
本発明の第3の態様によるログ記録システムは、ネットワークにより接続されるアプリ実行装置およびログ保存装置を含むログ記録システムであって、前記アプリ実行装置は、アプリケーションを繰り返し実行する実行部と、前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、前記ログ保存装置と通信を行う実行装置通信部と、前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして前記実行装置通信部を介して前記ログ保存装置に記録する記録部とを備え、前記ログ保存装置は、前記アプリ実行装置から前記入力ログを受信する保存装置通信部と、前記入力ログおよび前記入力ログを保存装置通信部が受信した時刻を関連付けて格納する記憶部とを備える。
本発明によれば、アプリケーションが実行されるタイミングとアプリケーションにデータが入力されるタイミングの前後関係を正確に記録することができる。
車両制御システム1の構成を示すブロック図 図2(a)は出力値にタイムスタンプを含む場合のログデータ114Aのフォーマットを示す図、図2(b)は出力値にタイムスタンプを含まない場合のログデータ114Aのフォーマットを示す図 シーケンス履歴115の一例を示す図 センサ情報取得部101の動作を示すフローチャート アプリケーション実行管理部102の動作を示すフローチャート ログ生成部103の動作を示すフローチャート ログ再生部104の動作を示すフローチャート ログ記録再生装置20の動作を表すフローチャート ログ記録モードの動作例を示す図
―実施の形態―
以下、図1〜図9を参照して、演算装置である車両制御装置の実施の形態を説明する。
(用語の定義)
本実施の形態における「アプリケーション」とは、定期的に実行されるプログラムである。本実施の形態における「実行周期」とは、あるアプリケーションを実行する時間の間隔の目標値である。すなわち実際にあるアプリケーションが実行される時間の間隔は、実行周期と一致しないことがある。アプリケーションの実行のタイミングは、たとえば、アプリケーションの実行する毎に、その目標値となるまで時間経過を測っておき、その目標値に達したらアプリケーションを実行する等の方法により決まる。この場合は時間経過の計測の際のタイマーの誤差や、他の処理の負荷により遅延が入ることなどにより、目標値と実際のアプリケーションが実行される時間の間隔は一致しないことが想定される。
本実施の形態における「シーケンス」とは、基準となるアプリケーションが実際に実行される時刻によって区切られる長さを持った時間である。すなわち各シーケンスの開始時刻は、基準となるアプリケーションが実行された時刻である。本実施の形態における「シーケンス番号」とは、基準となるアプリケーションが実行されるごとにカウントアップされる数値である。
(システム構成)
図1は、本発明に係る演算装置である車両制御装置10を含む車両制御システム1の構成を示すブロック図である。車両制御システム1は、車両制御装置10、ログ記録再生装置20、外界センサ群30、車両センサ群40、およびアクチュエータ群50を備える。車両制御装置10、ログ記録再生装置20、外界センサ群30、車両センサ群40、およびアクチュエータ群50は、車載ネットワーク60により接続される。車両制御システム1は、たとえば、車両に搭載され、車両の周辺における走行道路や周辺車両等の障害物の状況を認知した上で車両の運転行動や車両制御を判断し、車両運動を制御することで自動運転を実現するシステムである。
外界センサ群30は、車両周辺の一定範囲の障害物、たとえば他車両、歩行者、物体などや、道路標識や白線などの特徴物を認識するセンサ群である。外界センサ群30は、たとえば、カメラ、レーダ、ライダ等により構成される。外界センサ群30は、検出した車両周辺の障害物や特徴物の情報、たとえば車両からの相対距離と相対角度などを、外界センサ群30や車両制御装置10が接続されている車載ネットワーク60に出力する。車両制御装置10は、この車載ネットワーク60を介して外界センサ群30からの出力結果を取得できるように構成されている。なお本実施の形態では、外界センサ群30で障害物や特徴物を検出する処理を実施する構成になっているが、外界センサ群30から出力される信号やデータを用いて車両制御装置10や他装置でこれらの検出処理を行ってもよい。
車両センサ群40は、車両の動きに関する情報、たとえば走行速度、操舵角、アクセルの操作量、ブレーキの操作量などを検出する装置群である。車両センサ群40は、たとえば、車載ネットワーク60上に検出したこれらの状態量を出力する。車載ネットワーク60に接続された車両制御装置10や他装置は、この車載ネットワーク60を通じて、車両センサ群40から出力された各種部品の状態量を取得する。
アクチュエータ群50は、車両の動きを決定する操舵、ブレーキ、アクセル等の制御要素を制御する装置群である。アクチュエータ群50は、運転者によるハンドル、ブレーキペダル、アクセルペダル等の操舵情報や、車両制御装置10から出力される目標制御値に基づいて車両の動きを制御する。
(車両制御装置の構成)
車両制御装置10は、たとえばECU(Electronic Control Unit)であり、処理部100と、記憶部110と、通信部120とを備える。なお車両制御装置10の形態に特に制限はない。たとえば、車両制御装置10は、外界センサ群30に統合されてもよい。本実施の形態における車両制御装置10およびログ記録再生装置20は、ログ記録モードとログ再生モードの2つの動作モードを備える。車両制御装置10およびログ記録再生装置20は、ログ記録モードでは車両に搭載されてログを記録する。車両制御装置10およびログ記録再生装置20は、ログ再生モードでは車両制御システム1上で動作させても良いが、車両制御システム1と物理的に離間した場所、たとえば室内の机上で動作させてもよい。
記憶部110には不図示のアプリケーションAが格納されており、このアプリケーションAが本実施の形態における基準となるアプリケーションである。すなわちアプリケーションAが実行されるとシーケンス番号がカウントアップされる。詳しくは後述する。なお以下では、アプリケーションAを「アプリA」とも呼ぶ。
処理部100は、CPU(Central Processing Unit:中央演算処理装置)、およびRAM(Random Access Memory)を備え、CPUが記憶部110に格納された不図示のプログラムをRAMに展開して実行することにより以下の機能を実現する。処理部100はその機能として、センサ情報取得部101、アプリケーション実行管理部102、ログ生成部103、およびログ再生部104を備える。処理部100は、車両制御装置10に外部から停止命令が入力されると、センサ情報取得部101、アプリケーション実行管理部102、ログ生成部103、およびログ再生部104に停止指令を出力する。
センサ情報取得部101はログ記録モードのみで動作する。センサ情報取得部101は、車両の周辺に関連する周辺環境情報と、車両の動きに関連する車両センサ情報とを取得して、これらを「出力値」としてアプリケーション入出力データ群111に格納する。
さらにセンサ情報取得部101は、この出力値および出力値をアプリケーション入出力データ群111に格納した時刻を関連付けてログデータバッファ114に格納する。センサ情報取得部101は、出力値を外界センサ群30および車両センサ群40から取得する。周辺環境情報とは、たとえば車両の周辺に存在する障害物の情報や、車両の周辺における道路の特徴を示す特徴物等の情報等である。なお車両の周辺に存在する障害物とは、たとえば車両の周囲を移動している他車両、自転車、歩行者等の移動体や、車両の周囲の道路上で静止している駐車車両、落下物、設置物等である。車両センサ情報とは、たとえば車両の位置、走行速度、操舵角、アクセルの操作量、ブレーキの操作量等である。センサ情報取得部101により取得された周辺環境情報と車両センサ情報は、アプリケーション入出力データ群111として記憶部110に格納される。
アプリケーション実行管理部102は、ログ記録モードおよびログ再生モードの両方で動作する。アプリケーション実行管理部102は、記憶部110に格納されているアプリケーション実行パラメータ群112からアプリケーションAの実行周期を読み取り、アプリケーションAをその実行周期ごとに実行させる。またアプリケーション実行管理部102は、アプリケーションAが実行されるごとにシーケンス番号を増加させ、シーケンス番号とそのシーケンスが開始された時刻を後述するシーケンス履歴115に記録する。
ログ生成部103は、ログ記録モードのみで動作し、ログデータバッファ114に格納される出力値、および時刻情報に基づきログデータ114Aを作成する。ログ生成部103は作成したログデータ114Aをログデータバッファ114に保存し、そのログデータ114Aを通信部120を介してログ記録再生装置20に送信する。ただしログ生成部103は、作成したログデータ114Aをログデータバッファ114に格納することなくそのままログ記録再生装置20に送信してもよい。
ログ再生部104は、ログ再生モードのみで動作し、通信部120を介してログ記録再生装置20から受信したログデータ114Aから出力値を抽出する。そしてログ生成部103は、ログデータ114Aの解析結果に基づきその出力値をアプリケーション入出力データ群111へ格納するべきタイミングを算出し、そのタイミングに出力値をアプリケーション入出力データ群111に格納する。
記憶部110は、たとえば、HDD(HARD Disk Drive)やフラッシュメモリである。ただしROM(Read Only Memory)を含んで構成されてもよい。記憶部110には、処理部100がその機能を実現するために実行するプログラム、周期的に実行されるアプリケーション、車両制御装置10が動作するために必要なデータ群などが格納される。具体的には、記憶部110には、アプリケーション入出力データ群111、アプリケーション実行パラメータ群112、ログ再生パラメータ群113、ログデータバッファ114、および不図示のアプリケーションAが格納される。
アプリケーション入出力データ群111には、アプリケーションAに入力される情報、およびアプリケーションAから出力される情報が格納される。具体的にはアプリケーション入出力データ群111には、車両の周辺に関連する周辺環境情報や、車両の動きに関連する車両センサ情報、およびアプリケーションAがそれらを処理した情報が格納される。ログ記録モードでは、センサ情報取得部101とアプリケーションAがアプリケーション入出力データ群111へデータを格納する。ログ再生モードでは、ログ生成部103がアプリケーション入出力データ群111へデータを格納する。
アプリケーション実行パラメータ群112には、車両制御装置10において実行されるアプリケーションAに関する設定情報、および車両制御装置10が次回起動時に実行すべき動作モードが格納される。アプリケーションAに関する設定情報とは、たとえば、アプリケーションAの実行周期や初回遅延時間などである。アプリケーション実行管理部102は、アプリケーション実行パラメータ群112を利用してアプリケーションの実行を管理する。アプリケーション実行パラメータ群112は、車載ネットワーク60に接続された不図示のターミナル装置から書き換え可能である。たとえばオペレーターが車両制御装置10の動作に不具合を発見すると、以下のように車両制御装置10の動作モードをログ記録モードからログ再生モードに変更する。すなわちオペレータは、ターミナル装置を用いてアプリケーション実行パラメータ群112に格納される動作モードをログ再生モードに書き換え、車両制御装置10の電源を再投入する。
アプリケーション実行パラメータ群112に含まれる初回遅延時間とは、アプリケーションの初回の実行タイミングを決定するパラメータである。ただしここでいう初回とは、車両制御装置10が起動するごとの初回である。たとえば初回遅延時間がゼロの場合は車両制御装置10が起動した直後にそのアプリケーションが実行される。すなわちあるアプリケーションの初回遅延時間がTd、個別周期がTiの場合は、そのアプリケーションは車両制御装置10が起動した時刻をゼロとすると、Td、Td+Ti、Td+2×Ti、Td+3×Tiの時刻に実行される。ただし本実施の形態では、初回遅延時間はゼロとする。
ログ再生パラメータ群113には、ログ再生モードにおいてログ生成部103の動作を決定するパラメータである格納遅延シーケンスが格納される。格納遅延シーケンスとは、ログ再生モードにおいて最初に通信部120が受信したログデータ114Aをアプリケーション入出力データ群111へ格納するタイミングを決定する際に使用するパラメータである。たとえば格納遅延シーケンスが「3」であり、ログ再生モードにおいてシーケンス番号が「5」の時に通信部120が最初のログデータ114Aを受信した場合は、以下のように処理が行われる。すなわち、受信時のシーケンス番号に格納遅延シーケンスを加えたシーケンス番号、すなわち5+3=8により、シーケンス番号が「8」の時に最初のログデータ114Aに含まれる出力値がアプリケーション入出力データ群111に入力される。なおログ再生パラメータ群113には格納遅延シーケンス以外のパラメータが格納されてもよい。
ログデータバッファ114は、ログ記録モードにおいてログデータ114Aおよびログデータ114Aを作成するための情報が格納される。ログデータ114Aを作成するための情報とは、出力値、およびその出力値がアプリケーション入出力データ群111に入力された時刻である。またログデータバッファ114は、ログ再生モードにおいて、通信部120がログ記録再生装置20から受信するログデータ114Aが一時的に保存される。
図2(a)は出力値にタイムスタンプを含む場合のログデータ114Aのフォーマットを示す図、図2(b)は出力値にタイムスタンプを含まない場合のログデータ114Aのフォーマットを示す図である。ログデータ114Aは、図2(a)に示すように、出力値、シーケンス番号、後述するオフセット値、およびタイムスタンプ補正情報の4つから構成される。ただし出力値がタイムスタンプを含まない場合は、図2(b)に示すようにタイムスタンプ補正情報を備えない。なお出力値にタイムスタンプを含む場合は、タイムスタンプ補正情報を用いて後述するようにタイムスタンプを補正するので、出力値からはタイムスタンプを削除してもよい。図1に戻って説明を続ける。
記憶部110に格納されるシーケンス履歴115は、それぞれのシーケンス番号が開始された時刻を示す情報である。シーケンス履歴115はアプリケーション実行管理部102によって作成される。なおシーケンス履歴115はログデータ114Aとともにログ記録再生装置20に送信されてもよい。
図3は、シーケンス履歴115の一例を示す図である。図3に示す例では、アプリケーションAの実行周期が10msの場合を示しており、おおよそ10msごとにシーケンス番号が更新されているが、厳密には一定ではない。図1に戻って説明を続ける。
記憶部110に格納される不図示のアプリケーションAは、アプリケーション実行管理部102により周期的に実行される。ただし図3に例示したシーケンス履歴115において示した通り、厳密には一定時間ごとではなくいくらかの時間のずれがある。アプリケーションAは、アプリケーション入出力データ群111に書き込まれた情報を即座に読み込む。すなわちアプリケーション入出力データ群111に出力値が書き込まれた時刻はアプリケーションAに出力値が入力された時刻とみなすことができる。またアプリケーションAは、アプリケーション入出力データ群111に書き込みを行う際にはログデータバッファ114に同じ情報を出力するとともにその出力時刻をログデータバッファ114に書き込む。
通信部120は各種通信プロトコルに基づいて車両に搭載された他の装置と通信する。通信部120は、たとえば、IEEE802.3またはCAN(Controller Area Network)等の通信規格に準拠したネットワークカードを含んで構成される。なお、通信部120と車両に搭載された他の装置との間の接続形態は、Ethernetのような有線接続に限定されることはなく、Bluetooth(登録商標)や無線LAN(Local Area Network)などの近距離無線接続であってもよい。通信部120は、ログ記録モードにおいて、ログ生成部103から出力されるログデータ114Aをログ記録再生装置20に送信する。通信部120は、ログ再生モードにおいて、ログ記録再生装置20から受信するログデータ114Aをログデータバッファ114に格納するとともに、ログ再生部104にログデータ114Aの受信を伝達する。
(ログ記録再生装置の構成)
ログ記録再生装置20は、CPU、ROM、およびRAMを備える、たとえばECUである。ログ記録再生装置20は、ログ記録モードとログ再生モードの2つの動作モードを有し、ログ記録モードではログ記録機能を発揮しログ再生モードではログ再生機能を発揮する。ログ記録再生装置20の動作モードは、不図示のDIPスイッチの設定により、または外部からの通信により変更可能である。ログ記録機能とは、車両制御装置10から車載ネットワーク60に出力されたログデータ114Aを記録する機能である。ログ再生機能とは、ログ記録機能により記録したログデータ114Aを再生して車載ネットワーク60に出力する機能である。ログ記録再生装置20は、ログ再生時のログデータ114Aの出力間隔を、ログデータ114Aの記録時と同等となるように制御する。ログ記録再生装置20は、通信部220、ログデータ群210、およびログ記録再生部200を備える。
通信部220は各種通信プロトコルに基づいて車両制御装置10とログデータ114Aのやり取りを行う。通信部220は、たとえば、IEEE802.3またはCAN(Controller Area Network)等の通信規格に対応する。なお通信部220と他の装置との間の接続形態は有線接続に限定されず、Bluetooth(登録商標)や無線LAN(Local Area Network)などの無線接続であってもよい。
ログデータ群210はたとえばHDDやフラッシュメモリである。ログデータ群210には、車両制御装置10から取得したログデータ114A、およびそのログデータ114Aの受信時刻が格納される。ログデータ群210は、ログ記録再生部200により書き込みおよび読み出しが行われる。
ログ記録再生部200は、ログ記録モードでは、車両制御装置10から受信したログデータ114Aを受信時刻を関連付けてログデータ群210へ格納する。ただし通信部220は、受信時刻に代えてログデータ114Aを受信した時間の間隔を記録してもよい。ログ記録再生部200は、ログ再生モードでは、ログデータ群210に格納されているログデータ114Aを、受信時と同一の時間間隔で車載ネットワーク60に出力する。
(車両制御装置の動作)
図4〜図7を参照して、車両制御装置10のセンサ情報取得部101、アプリケーション実行管理部102、ログ生成部103、およびログ再生部104の動作を説明する。なおいずれの動作も非同期に実行される。
図4は、センサ情報取得部101の動作を示すフローチャートである。以下に説明する各ステップの実行主体は車両制御装置10のCPUである。前述のとおり、センサ情報取得部101はログ記録モードのみで動作する。
ステップS301において、センサ情報取得部101は、センサデータを外界センサ群30と車両センサ群40から取得する。センサ情報取得部101がセンサデータを取得するタイミングには特に制限はない。外界センサ群30や車両センサ群40から車載ネットワークに出力されたセンサデータを受信したのを検知して、その度に取得してもよい。もしくは、センサ情報取得部101は外界センサ群30や車両センサ群40の動作とは関係なく、タイマーをセットして定期的にセンサデータを取得してもよい。
続くステップS302において、センサ情報取得部101は、センサデータをアプリケーション入出力データ群111へ格納する。続くステップS303において、センサ情報取得部101は、現在時刻およびステップS302において格納したセンサデータと同一のデータを組み合わせてログデータバッファ114へ格納する。続くステップS304において、車両制御装置10が停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図4に示す動作を終了し、停止指令を受けていないと判断する場合はステップS301に戻る。
図5は、アプリケーション実行管理部102の動作を示すフローチャートである。以下に説明する各ステップの実行主体は車両制御装置10のCPUである。アプリケーション実行管理部102は、動作モードによらず以下に説明するように同様の動作を行う。
アプリケーション実行管理部102は、車両制御装置10が起動するとステップS311とステップS321の処理を並行して開始する。ステップS311では、アプリケーション実行管理部102は、シーケンス数を示す変数であるNにゼロを代入する。続くステップS312では、アプリケーションAが実行されたか否かを判断する。アプリケーションAが実行されたと判断する場合はステップS313に進み、アプリケーションAが実行されていないと判断する場合はステップS312に留まる。
ステップS313ではアプリケーション実行管理部102は、変数Nをインクリメント、すなわち変数Nの値を1増加させる。続くステップS314ではアプリケーション実行管理部102は、シーケンス履歴115に現在の時刻、および変数Nの値、すなわち現在のシーケンス番号を記録する。続くステップS317ではアプリケーション実行管理部102は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図5に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS312に戻る。
ステップS321ではアプリケーション実行管理部102は、設定された初回遅延時間だけ待機し、続くステップS322ではアプリケーションAを実行する。続くステップS323ではアプリケーション実行管理部102は、アプリケーションAの実行周期だけ待機する。続くステップS324ではアプリケーション実行管理部102は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図5に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS322に戻る。
図6は、ログ生成部103の動作を示すフローチャートである。前述のとおり、ログ生成部103はログ記録モードにおいてのみ動作する。以下に説明する各ステップの実行主体は車両制御装置10のCPUである。ログ生成部103が動作を開始するタイミングに特に制限はない。たとえば、ログデータバッファ114にデータと格納時刻情報が格納されたことをログ生成部103が検知して、その度に動作を開始してもよいし定期的に動作を開始してもよい。
ステップS341において、ログ生成部103は、ログデータバッファ114に格納された出力値と時刻の組み合わせを読み込む。続くステップS342において、ログ生成部103は、シーケンス履歴115を読み込む。続くステップS343において、ログ生成部103は、ステップS341において読み込んだ時刻がいずれのシーケンス番号に該当するかを特定する。たとえばシーケンス履歴115が図3に示すものであった場合に、時刻が「25.67」の場合には、「20.03」と「29.99」の間なのでシーケンス番号は「3」と特定される。続くステップS344において、ログ生成部103は、オフセット値を算出する。オフセット値とは、シーケンスの開始時刻からの経過時間を示す値である。たとえば時刻が「25.67」の場合には、前述のとおりシーケンス番号が「3」と特定されるので、オフセット値は「25.67」からシーケンス番号「3」の開始時刻である「20.03」を減算した「5.64」と算出される。
続くステップS345ではログ生成部103は、タイムスタンプ補正情報を作成する。タイムスタンプ補正情報は、受信時刻と出力値に含まれるタイムスタンプの差として算出される。たとえば「25.00」というタイムスタンプを含む出力値が時刻「25.67」とともにログデータバッファ114に格納されている場合は、タイムスタンプ補正情報は「0.67」である。ただし出力値にタイムスタンプが含まれない場合は本ステップは実行しない。続くステップS346ではログ生成部103は、出力値、シーケンス番号、およびオフセット値、およびタイムスタンプ補正情報を組み合わせてログデータ114Aを作成する。そしてログ生成部103は、作成したログデータ114Aをログデータバッファ114に格納するとともに通信部120を介してログ記録再生装置20に送信する。またログ生成部103は、作成したログデータ114Aに対応する出力値と時刻情報の組み合わせをログデータバッファ114から削除する。
続くステップS347ではログ生成部103は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図6に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS341に戻る。
図7は、ログ再生部104の動作を表すフローチャートである。以下に説明するフローチャートの各ステップの実行主体はログ記録再生装置20のCPUである。
ステップS371において、ログ再生部104は、ログ再生パラメータ群113から格納遅延シーケンスを読み込む。続くステップS372において、ログ再生部104は、1つ目のログデータ114Aを通信部120が受信したか否かを判断する。ログ再生部104は受信したと判断する場合はステップS373に進み、受信していないと判断する場合はステップS372に留まる。ステップS373ではログ再生部104は、変数Jに受信した1つ目のログデータ114Aに含まれるシーケンス番号を代入する。なおこの変数Jは、後述するステップS383において参照される。続くステップS374ではログ再生部104は、変数Nに現在のシーケンス番号、換言すると通信部120が1つ目のログデータ114Aを受信した際の時刻におけるシーケンス番号を代入する。続くステップS375ではログ再生部104は、変数MにステップS374において代入した変数Nの値と、ステップS371において読み込んだ格納遅延シーケンスとの和を代入する。
続くステップS376ではログ再生部104は、現在のシーケンス番号がMであるか否かを判断する。現在のシーケンス番号がMであると判断する場合はステップS377に進み、現在のシーケンス番号がMではないと判断する場合はステップS376に留まる。ステップS377ではログ再生部104は、受信した1つ目のログデータ114Aの出力値をアプリケーション入出力データ群111に格納する。ただしこの際に、ログデータ114Aにタイムスタンプ補正情報が含まれる場合は、ログデータ114Aの出力値に含まれるタイムスタンプを補正した後にアプリケーション入出力データ群111に格納する。またログ再生部104が出力値をアプリケーション入出力データ群111に格納する詳細なタイミングは、そのログデータ114Aに含まれるオフセット値に従う。たとえばオフセット値が「2.5」の場合は、そのシーケンスが開始されてから2.5ms後にその出力値をアプリケーション入出力データ群111に格納する。
続くステップS381ではログ再生部104は、通信部120が次のログデータ114Aを受信したか否かを判断する。次のログデータ114Aを受信したと判断する場合はステップS382に進み、次のログデータ114Aをまだ受信していないと判断する場合はステップS381に留まる。ステップS382では、ステップS381において受信を確認したログデータ(以下、「処理対象のログデータ」)114Aに含まれるシーケンス番号を変数Kに代入する。続くステップS383では、変数LにM+(K−J)の値を代入する。この演算は、1つ目のログデータ114Aをアプリケーション入出力データ群111に格納するシーケンス番号に、1つ目のログデータ114Aのシーケンス番号と処理対象のログデータ114Aのシーケンス番号の差を加えるものである。
続くステップS384ではログ再生部104は、現在のシーケンス番号がLであるか否かを判断する。現在のシーケンス番号がLであると判断する場合はステップS385に進み、現在のシーケンス番号がLではないと判断する場合はステップS384に留まる。ステップS385では、処理対象のログデータ114Aに含まれる出力値をアプリケーション入出力データ群111に格納する。ただしこの際に、処理対象のログデータ114Aにタイムスタンプ補正情報が含まれる場合は、ログデータ114Aの出力値に含まれるタイムスタンプを補正した後にアプリケーション入出力データ群111に格納する。本ステップにおけるタイムスタンプの補正は以下のとおりである。
補正後のタイムスタンプの時刻をTsp、そのログデータ114Aの出力値をアプリケーション入出力データ群111に格納される時刻をTop、補正前のタイムスタンプの時刻をTsr、ログ記録モードにおいてそのログデータ114Aがアプリケーション入出力データ群111に格納された時刻をTorとすると、以下の式1が成り立つようにタイムスタンプを補正する。
Top−Tsp=Tor−Tsr・・・・(1)
ここで、式1の右辺の値はタイムスタンプ補正情報としてログデータ114Aに格納されている。そのため、Topが明らかになればTspを算出できる。ここでTopは、ステップS383において算出したシーケンス番号Lと、ログデータ114Aに含まれるオフセット値により算出できる。ただしここでは、各シーケンスの時間はアプリケーションAの実行周期そのものとして、換言するとアプリケーションAは実行周期どおりに実行されると仮定して計算する。したがって補正後のタイムスタンプTspは、算出したTopおよびタイムスタンプ補正情報から算出可能である。
またログ再生部104が出力値をアプリケーション入出力データ群111に格納する詳細なタイミングは、そのログデータ114Aに含まれるオフセット値に従う。詳細はステップS377において例示したとおりである。続くステップS386ではログ再生部104は、停止指令を受けたか否かを判断し、停止指令を受けたと判断する場合は図7に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS381に戻る。
(ログ記録再生装置の動作)
図8は、ログ記録再生装置20の動作を表すフローチャートである。以下に説明するフローチャートの各ステップの実行主体はログ記録再生装置20のCPUである。
ステップS351において、ログ記録再生部200は、動作モードが記録モードと生成モードのいずれに設定されているかを判断する。記録モードに設定されていると判断する場合はステップS352に進み、再生モードに設定されていると判断する場合はステップS356に進む。
ステップS352において、ログ記録再生部200は、車両制御装置10が接続されている車載ネットワーク60から通信部220がログデータ114Aを受信したか否かを判断する。通信部220がログデータ114Aを受信したと判断する場合はステップS353に進み、受信していないと判断する場合はステップS352に留まり次の受信を待つ。ステップS353において、ログ記録再生装置20は、通信部220が受信したログデータ114A、およびログデータ114Aの受信時刻を取得する。続くステップS354において、ログ記録再生部200は、ステップS353において取得したログデータ114Aおよび受信時刻をログデータ群210へ格納する。続くステップS355では、ログ記録再生装置20は、停止指令を受けたか否かを判断する。停止指令を受けたと判断する場合は図8に示すフローチャートの動作を終了し、停止指令を受けていないと判断する場合はステップS352に戻る。
ステップS355において、ログ記録再生部200は、ログデータ群210を読み込む。続くステップS356において、ログ記録再生部200は、ログデータ群210に含まれるログデータ114Aであってまだ送信していない最も古いログデータ114Aを出力する。ただしこの際に、直前に出力したログデータ114Aとの時間間隔が、ログデータ114Aの受信時の時間間隔と同一になるように送信タイミングを調整する。たとえば、記録時にログデータ114Aが8ms、5ms、15msの間隔で順に通信部220が受信した場合には、同様に8ms、5ms、15msの間隔でログデータ114Aを車載ネットワーク60に出力する。
続くステップS357では、ログ記録再生部200は、未送信のログデータ114Aがログデータ群210に含まれるか否かを判断する。未送信のログデータ114Aが存在すると判断する場合はステップS356に戻り、全てのログデータ114Aを送信したと判断する場合は図8に示すフローチャートの動作を終了する。
(動作例)
図9は、記録モードにおける車両制御装置10の動作例を示す図である。図9は図示左から右に向かって時間が経過しており、図中の目盛りは10msごとに記載している。図9に示す四角A1〜A4はアプリケーションAの実行タイミングを示しており、この四角の左端のタイミングに実行されたことを示している。すなわちこの四角の幅や四角の右端は特段の意味を持たない。図中の下向き矢印は出力値P1〜P4がアプリケーション入出力データ群111に入力されたタイミングを表している。図9に示す例において、アプリケーションAの実行周期は10msであるが、図9に示すように実際にはアプリケーションAが実行される間隔は10msとは必ずしも一致しない。
シーケンス番号は、アプリケーション実行管理部102によってアプリAが実行されるごとにカウントされる。図9では丸囲みの数字がシーケンス番号を示しており、シーケンスの区切りがアプリAの実行タイミングであることが示されている。すなわち出力値P1とP2はシーケンス番号1に属し、出力値P3とP4はシーケンス番号3に属することが示されている。仮に、アプリAの実際の実行タイミングを考慮せず、アプリAの実行周期である10msごとに一律にシーケンス番号を更新した場合には、10msよりも後に発生する出力値P2はシーケンス番号2に、20msよりも前に発生する出力値P3もシーケンス番号2に属する。すなわちその場合はシーケンス番号ではアプリAの実行タイミングと出力値が入力されるタイミングとの前後関係を正しく表すことができない。
ログ生成部103は、アプリケーション実行管理部102が生成したシーケンス履歴115を参照してそれぞれの出力値が属するシーケンス番号を特定する。そしてログ生成部103は、出力値P1〜P4のオフセット値を、それぞれが属するシーケンスの開始時刻から経過時間として図9に示すQ1〜Q4として算出する。
上述した実施の形態によれば、次の作用効果が得られる。
(1)車両制御装置10は、アプリケーションAを繰り返し実行するアプリケーション実行管理部102と、アプリケーションAが1回実行される間隔を1つのシーケンスとし、アプリケーションの実行に基づきシーケンス数をカウントするアプリケーション実行管理部102と、アプリケーションAへ入力される出力値、および出力値がアプリケーションAへ入力される時刻のシーケンス数の組み合わせを含む情報をログデータ114Aとして記録するログ生成部103とを備える。すなわち車両制御装置10は、アプリケーションAへデータ入力のタイミングをアプリケーションAの実行回数に基づくシーケンス数を使って記録する。そのためアプリケーションAが実行されるタイミングとアプリケーションAにデータが入力されるタイミングの前後関係を正確に記録することができる。
(2)車両制御装置10は、入力ログに含まれるシーケンス数が示すシーケンスの開始時刻から、出力値がアプリケーションAへ入力される時刻までを示す時間をオフセット値として算出するログ生成部103(図6のステップS344)を備える。ログ生成部103は、図2(b)に示すように出力値、シーケンス番号、およびオフセット値を組み合わせて記録する。そのためアプリケーションAにデータが入力されたタイミングを詳細に記録することができる。
(3)車両制御装置10は、出力値に含まれる時刻情報と出力値がアプリケーションAへ入力される時刻との差を時刻補正情報として算出するログ生成部103(図6のステップS345)を備える。ログ生成部103は、図2(a)に示すように出力値とタイムスタンプ補正情報を組み合わせて記録する。そのため出力値に含まれるタイムスタンプを補正するための情報をあわせて記録することができる。
(4)車両制御装置10は、ログデータ114Aを送信する通信部120を備える。ログ生成部103は、通信部120を介してログデータ114Aをログ記録再生装置20に記録する。そのため車両制御装置10の記憶領域が乏しい場合や車両制御装置10が不揮発性メモリを備えない場合であっても、車両制御装置10の動作ログを記録することができる。
(5)車両制御装置10は、複数の入力ログが記録されたログ格納部と、ログ格納部に格納された複数のログデータ114Aに含まれるそれぞれの出力値を、出力値に組み合わされたシーケンス数に基づきアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10は、アプリケーションAに出力値が入力されるタイミングとアプリケーションAの実行タイミングとの前後関係を再現することができる。
(6)車両制御装置10は、複数の入力ログが記録されたログデータバッファ114と、ログデータバッファ114に格納された複数のログデータ114Aに含まれるそれぞれの出力値を、出力値に組み合わされたシーケンス数およびオフセット値に基づきアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10はアプリケーションAに出力値が入力されたタイミングを詳細に再現することができる。これにより、たとえば不具合の再現性を向上することができる。
(7)車両制御装置10は、複数の入力ログが記録されたログデータバッファ114と、ログデータバッファ114に格納された複数のログデータ114Aに含まれるそれぞれの出力値に含まれる時刻情報をタイムスタンプ補正情報に基づき補正し、補正された出力値を出力値に組み合わされたシーケンス数に基づきアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10は、出力値に含まれるタイムスタンプを補正したうえで、アプリケーションAに出力値が入力されるタイミングとアプリケーションAの実行タイミングとの前後関係を再現することができる。
(8)車両制御装置10の通信部120はログデータ114Aを複数受信し、通信部120が受信したログデータ114Aが記録されるログデータバッファ114と、通信部120が最初に受信するログデータ114Aである初回ログを受信した時刻から初回ログに含まれる出力値をアプリケーションAに入力する時刻までの間隔を示す情報である格納遅延サイクルが格納されるログ再生パラメータ群113と、通信部120が初回ログを受信した際のシーケンス数、および格納遅延サイクルに基づき初回ログに含まれる出力値をアプリケーションに入力するシーケンスである初回ログ入力シーケンスを決定し、初回ログ入力シーケンスに初回ログに含まれる出力値をアプリケーションAに入力するログ再生部104を備える。そのため車両制御装置10は、規定された格納遅延サイクルだけ待機してからログの再生を開始するので、いわばバッファリングを行うことになり、車載ネットワーク60に問題が生じてもログの再生への悪影響を低減させることができる。
(9)車両制御装置10のログ再生部104は、通信部120が受信する2つ目以降の入力ログである後続ログに含まれる出力値を、初回ログに含まれるシーケンス数、後続ログに含まれるシーケンス数、および初回ログに含まれる出力値がアプリケーションAに入力されるシーケンスに基づき決定されるシーケンスにアプリケーションAに入力する。そのため格納遅延サイクルだけ待機したのちに、後続するログデータ114Aの出力値をログ記録モード時を再現するようにアプリケーション入出力データ群111に入力することができる。
―変形例―
上述した実施の形態は以下のように変形してもよい。
(1)車両制御装置10はアプリケーション入出力データ群111を備えず、車両制御装置10は出力値をアプリケーションAに直接入力してもよい。
(2)車両制御装置10は、ログ記録モードにおいてオフセット値を記録しなくてもよい。この場合は、ログ再生モードにおいてオフセット値を用いた出力値をアプリケーション入出力データ群111に入力するタイミングの詳細な決定は行わない。
(3)アプリケーションAはアプリケーション入出力データ群111に入力された情報を即座に読み込まず、必要に応じて読み込んでもよい。
(4)車両制御装置10は、アプリケーションA以外のアプリケーションも定期的に実行してもよい。この場合は、各アプリケーションの実行周期の公倍数で算出した繰り返し単位により、シーケンス数を数えることとすればよい。たとえば、実行周期がそれぞれ20msと50msの二つのアプリケーションを実行する場合は、その最小公倍数は100msであるので、100msごとを目標として実行されるアプリケーションの実行回数を基準として、シーケンス番号をカウントアップすればよい。
(5)車両制御装置10は、アプリケーションAが2回以上実行することを条件にカウントアップしてもよい。
車両制御装置10が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースと車両制御装置10が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、たとえば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。上述した複数の変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
1…車両制御システム
10…車両制御装置
20…ログ記録再生装置
60…車載ネットワーク
100…処理部
101…センサ情報取得部
102…アプリケーション実行管理部
103…ログ生成部
104…ログ再生部
110…記憶部
111…アプリケーション入出力データ群
112…アプリケーション実行パラメータ群
113…ログ再生パラメータ群
114…ログデータバッファ
115…シーケンス履歴
120…通信部
200…ログ記録再生部
210…ログデータ群

Claims (11)

  1. アプリケーションを繰り返し実行する実行部と、
    前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、
    前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録する記録部とを備える演算装置。
  2. 請求項1に記載の演算装置において、
    前記入力ログに含まれる前記シーケンス数が示すシーケンスの開始時刻から、前記入力データが前記アプリケーションへ入力される時刻までを示す時間をオフセット値として算出するオフセット算出部をさらに備え、
    前記記録部は、前記入力ログに前記オフセット値をさらに組み合わせて記録する演算装置。
  3. 請求項1に記載の演算装置において、
    前記入力データに含まれる時刻情報と前記入力データが前記アプリケーションへ入力される時刻との差を時刻補正情報として算出する補正算出部をさらに備え、
    前記記録部は、前記入力ログに前記時刻補正情報をさらに組み合わせて記録する演算装置。
  4. 請求項1に記載の演算装置において、
    前記入力ログを送信する通信部をさらに備え、
    前記記録部は、前記通信部を介して前記入力ログを他の装置に記録する演算装置。
  5. 請求項1に記載の演算装置において、
    複数の前記入力ログが記録されたログ格納部と、
    前記ログ格納部に格納された複数の前記入力ログに含まれるそれぞれの前記入力データを、前記入力データに組み合わされた前記シーケンス数に基づき前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
  6. 請求項2に記載の演算装置において、
    複数の前記入力ログが記録されたログ格納部と、
    前記ログ格納部に格納された複数の前記入力ログに含まれるそれぞれの前記入力データを、前記入力データに組み合わされた前記シーケンス数および前記オフセット値に基づき前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
  7. 請求項3に記載の演算装置において、
    複数の前記入力ログが記録されたログ格納部と、
    前記ログ格納部に格納された複数の前記入力ログに含まれるそれぞれの前記入力データに含まれる時刻情報を前記時刻補正情報に基づき補正し、補正された前記入力データを前記入力データに組み合わされた前記シーケンス数に基づき前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
  8. 請求項4に記載の演算装置において、
    前記通信部は前記入力ログを複数受信し、
    前記通信部が受信した前記入力ログが記録されるログ格納部と、
    前記通信部が最初に受信する前記入力ログである初回ログを受信した時刻から前記初回ログに含まれる前記入力データを前記アプリケーションに入力する時刻までの間隔を示す情報である格納遅延時間が格納されるパラメータ格納部と、
    前記通信部が前記初回ログを受信した際の前記シーケンス数、および前記格納遅延時間に基づき前記初回ログに含まれる前記入力データを前記アプリケーションに入力する前記シーケンスである初回ログ入力シーケンスを決定し、
    前記初回ログ入力シーケンスに前記初回ログに含まれる前記入力データを前記アプリケーションに入力するログ再生部とをさらに備える演算装置。
  9. 請求項8に記載の演算装置において、
    前記ログ再生部は、前記通信部が受信する2つ目以降の前記入力ログである後続ログに含まれる前記入力データを、前記初回ログに含まれる前記シーケンス数、前記後続ログに含まれる前記シーケンス数、および前記初回ログ入力シーケンスに基づき決定される前記シーケンスに前記アプリケーションに入力する演算装置。
  10. アプリケーションを繰り返し実行することと、
    前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントすることと、
    前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして記録することとを含むログ記録方法。
  11. ネットワークにより接続されるアプリ実行装置およびログ保存装置を含むログ記録システムであって、
    前記アプリ実行装置は、
    アプリケーションを繰り返し実行する実行部と、
    前記アプリケーションが所定回数実行される間隔を1つのシーケンスとし、前記アプリケーションの実行に基づきシーケンス数をカウントするカウント部と、
    前記ログ保存装置と通信を行う実行装置通信部と、
    前記アプリケーションへ入力される入力データ、および前記入力データが前記アプリケーションへ入力される時刻における前記シーケンス数の組み合わせを入力ログとして前記実行装置通信部を介して前記ログ保存装置に記録する記録部とを備え、
    前記ログ保存装置は、
    前記アプリ実行装置から前記入力ログを受信する保存装置通信部と、
    前記入力ログおよび前記入力ログを保存装置通信部が受信した時刻を関連付けて格納する記憶部とを備えるログ記録システム。
JP2017088069A 2017-04-27 2017-04-27 演算装置、ログ記録方法、ログ記録システム Active JP6703960B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017088069A JP6703960B2 (ja) 2017-04-27 2017-04-27 演算装置、ログ記録方法、ログ記録システム
PCT/JP2018/015183 WO2018198770A1 (ja) 2017-04-27 2018-04-11 演算装置、ログ記録方法、ログ記録システム
DE112018001810.5T DE112018001810T5 (de) 2017-04-27 2018-04-11 Recheneinheit, Logaufzeichnungsverfahren, Logaufzeichnungssystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017088069A JP6703960B2 (ja) 2017-04-27 2017-04-27 演算装置、ログ記録方法、ログ記録システム

Publications (2)

Publication Number Publication Date
JP2018185709A JP2018185709A (ja) 2018-11-22
JP6703960B2 true JP6703960B2 (ja) 2020-06-03

Family

ID=63918152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017088069A Active JP6703960B2 (ja) 2017-04-27 2017-04-27 演算装置、ログ記録方法、ログ記録システム

Country Status (3)

Country Link
JP (1) JP6703960B2 (ja)
DE (1) DE112018001810T5 (ja)
WO (1) WO2018198770A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023019077A (ja) * 2021-07-28 2023-02-09 日立Astemo株式会社 車載処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11321461A (ja) 1998-05-12 1999-11-24 Art Heaven Nine:Kk 自動車用ミラー駆動機構
JP2008226060A (ja) * 2007-03-15 2008-09-25 Hitachi Information Systems Ltd プログラム実機動作検証方法とシステムおよびプログラム
JP6476594B2 (ja) * 2014-05-26 2019-03-06 オムロン株式会社 シミュレーションシステム
JP6414025B2 (ja) 2015-11-13 2018-10-31 トヨタ自動車株式会社 ハイブリッド車両の駆動力制御装置

Also Published As

Publication number Publication date
DE112018001810T5 (de) 2019-12-12
WO2018198770A1 (ja) 2018-11-01
JP2018185709A (ja) 2018-11-22

Similar Documents

Publication Publication Date Title
US11513523B1 (en) Automated vehicle artificial intelligence training based on simulations
JP7428988B2 (ja) 自律自動車の制御ユニットを修正するための方法およびシステム
US10739775B2 (en) System and method for real world autonomous vehicle trajectory simulation
US20180211120A1 (en) Training An Automatic Traffic Light Detection Model Using Simulated Images
US11820373B2 (en) Autonomous vehicle simulation system
US11257309B2 (en) Systems and methods to test an autonomous vehicle
US11740620B2 (en) Operational testing of autonomous vehicles
US20190130056A1 (en) Deterministic Simulation Framework for Autonomous Vehicle Testing
JP2021131894A (ja) シミュレーション車両を制御するための方法、装置、電子機器及び記憶媒体
JP6703960B2 (ja) 演算装置、ログ記録方法、ログ記録システム
US20200150648A1 (en) Vehicle control apparatus
JP7207227B2 (ja) 運転行動評価装置、運転行動評価方法、及び運転行動評価プログラム
JP2022507939A (ja) 調整されたコンポーネントインターフェース制御フレームワーク
US20160085519A1 (en) Determination of signals for readback from fpga
KR20210059317A (ko) 차량 및 그 제어방법
JP7429809B2 (ja) 自律運転シミュレーションのためのシナリオを作成する装置と方法
KR102074902B1 (ko) 차량용 영상 기록시스템의 제어장치 및 방법
US11454966B2 (en) Programmatic application of router flags for vehicle limitations
CN118094904A (zh) 联合仿真方法、装置、电子设备和存储介质
CN117236194A (zh) 用于自动驾驶的仿真场景生成工具、仿真测试系统及设备
JP2023057798A5 (ja)
NL2017149B1 (en) Method and device for visualising a state change of the state machine in an electronic system
CN117827555A (zh) 硬件在环测试方法、装置、电子设备以及存储介质
CN115526024A (zh) 用于控制自主车辆的传感器数据生成
JP2024512563A (ja) 車両の制御装置用のソフトウェアを評価する方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200421

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200511

R150 Certificate of patent or registration of utility model

Ref document number: 6703960

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250