WO2016042588A1 - 車載制御装置及びこの車載制御装置のシミュレーション装置 - Google Patents
車載制御装置及びこの車載制御装置のシミュレーション装置 Download PDFInfo
- Publication number
- WO2016042588A1 WO2016042588A1 PCT/JP2014/004774 JP2014004774W WO2016042588A1 WO 2016042588 A1 WO2016042588 A1 WO 2016042588A1 JP 2014004774 W JP2014004774 W JP 2014004774W WO 2016042588 A1 WO2016042588 A1 WO 2016042588A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- information
- application
- control
- input
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
Abstract
本発明は、デバイスから取得した情報と、制御情報とを記憶するデータベース部と、デバイスにアクセスするタイミング示すアクセスタイミングと、制御情報の送信タイミングとを記憶したパラメータテーブル部と、パラメータテーブル部に記憶されたアクセスタイミングに基づいていずれかのデバイスにアクセスし、アクセスしたデバイスから情報を取得してデータベース部に記憶する入力制御部と、アクセスタイミングに基づいて起動してデータベース部に記憶されたデバイスから取得した情報を取得し、取得した情報に基づいてデバイスを制御するための制御情報を生成してデータベース部に記憶する複数のアプリケーション部と、データベース部に記憶された制御情報をパラメータテーブル部に記憶された送信タイミングに基づいていずれかのデバイスに送信してデバイスを制御する出力制御部と、を備える。
Description
本発明は、車両に搭載されたデバイスを制御する車載制御装置及びこの車載制御装置の動作をシミュレーションするシミュレーション装置に関する。
従来、車両に搭載されるセンサやアクチュエータ等のデバイスを制御するためのECU(Electronic Control Unit)と呼ばれる車載制御装置は、単一のアプリケーションを備えていた(例えば特許文献1)。このアプリケーションは、アプリケーションに規定されたタイミングでデバイスにアクセスして情報を取得し、この情報に基づいてデバイスを制御するための情報(以下、制御情報とする)を生成する。また、アプリケーションは、制御情報の演算が終了すると、外部のデバイスに制御情報を送信する。すなわち、アプリケーションのアクセス、演算、及び制御情報送信のタイミングは、このアプリケーションのアクセスタイミングに依存する。
一方、近年では車載制御装置の計算能力が向上している。したがって、単一の車載制御装置内に複数のアプリケーションが集約されることが想定される。しかしながら、複数のアプリケーションが単一の車載制御装置内に集約されることを想定した場合、各アプリケーションは、別個独立したタイミングで外部のデバイスにアクセスし、このアクセスタイミングで演算を開始する。したがって、各アプリケーションがアクセスを繰り返すうちに、各アプリケーション同士でデバイスへのアクセスタイミングが重なることが想定される。このような場合、各アプリケーションの演算タイミングについても重なりが生じ、各アプリケーションが使用するCPUリソースの競合が発生するおそれがある。CPUリソースの競合が発生した場合、車載制御装置は演算を行うアプリケーションのうち一方のアプリケーションの処理を優先して実行する等の処理を行うことが想定され、これに伴い各アプリケーションの処理に遅延が発生する。したがって、各アプリケーションは、デバイスに対してアクセスするタイミングのずれや、デバイスを制御する制御情報を送信するタイミングのずれを生じるおそれがある。
デバイスにアクセスするタイミングがずれると、アクセスされたデバイスから情報を取得するタイミングにもずれが生じ、アプリケーションは、設計者が意図したタイミングでデバイスが保有する情報を得ることができない。例えば、デバイスが車速センサである場合、アプリケーションは、設計時に設定されたタイミングとは異なるタイミングでデバイスがセンシングしたセンサ値を取得することとなり、生成する制御情報の精度が低下する。また、制御情報の送信タイミングにずれが生じると、アプリケーションは、デバイスを意図したタイミングで制御することができない。例えば、デバイスがブレーキを電子制御するためのアクチュエータである場合、アクチュエータは、設計時に設定された間隔でブレーキに制動力をかけて減速制御するが、アプリケーションの演算遅延が発生した場合にアプリケーションから送信される制御情報の送信タイミングがずれると、ブレーキの減速タイミングがずれて、安定して減速できない等の問題が生じる。このような問題から、従来の車載制御装置は、アプリケーションを複数有する場合には、精度の高いデバイス制御を行うことができなかった。
本発明の車載制御装置は、上記のような課題を解決するためになされたもので、複数のアプリケーションを有し、演算遅延が生じた場合であっても、予め定められたタイミングでデバイスから情報を取得し、予め定められたタイミングでデバイスに制御情報を送信し、精度の高いデバイス制御を実現することを目的とする。
本発明の車載制御装置は、車両に搭載されたデバイスのうちいずれかのデバイスにアクセスし、アクセスした該デバイスから取得した情報に基づいて前記車両に搭載されたデバイスを制御するための制御情報を生成し、該制御情報を該デバイスに送信して該デバイスを制御する車載制御装置において、前記デバイスから取得した情報と、前記制御情報とを記憶するデータベース部と、前記デバイスにアクセスするタイミング示すアクセスタイミングと、前記制御情報を生成する処理が遅延した場合の時間に基づいて設定される前記制御情報の送信タイミングとを記憶したパラメータテーブル部と、前記パラメータテーブル部に記憶された前記アクセスタイミングに基づいていずれかの前記デバイスにアクセスし、アクセスした該デバイスから情報を取得して前記データベース部に記憶する入力制御部と、前記アクセスタイミングに基づいて起動して前記データベース部に記憶された前記デバイスから取得した情報を取得し、取得した該情報に基づいて前記デバイスを制御するための制御情報を生成して前記データベース部に記憶する複数のアプリケーション部と、前記データベース部に記憶された前記制御情報を前記パラメータテーブル部に記憶された前記送信タイミングに基づいていずれかの前記デバイスに送信して該デバイスを制御する出力制御部と、を備えることを特徴とする。
本発明の車載制御装置は、アクセスタイミングと、アプリケーション部の演算が遅延した場合の時間に基づいて設定される制御情報の送信タイミングとに基づいて、外部のデバイスにアクセスして情報を取得する入力制御部、及び外部のデバイスに制御情報を送信する出力制御部を備える。また、入力制御部が取得した情報と、アプリケーション部が生成した制御情報とをデータベースに記憶する。したがって、複数のアプリケーション部を備える車載制御装置において、予め定められたタイミングでデバイスから情報を入力し、予め定められたタイミングでデバイスに制御情報を送信することが可能となり、アプリケーション部の演算遅延が発生した場合においても、精度の高いデバイス制御を実現することができる。
実施の形態1.
以下、図1を用いて実施の形態1に係る車載制御装置100について説明する。図1は実施の形態1に係る車載制御装置100の構成図である。
以下、図1を用いて実施の形態1に係る車載制御装置100について説明する。図1は実施の形態1に係る車載制御装置100の構成図である。
車載制御装置100は後述するアプリケーション101、102の処理内容に応じてデイバス制御又はネットワーク通信を行う装置である。デバイス300、301は、車両に搭載された装置であって、例えば、センサ、ライト、及びパワーウィンドウ等である。ネットワーク200は、CAN(Controller Area Network)やEthernet(登録商標)に対応した通信ケーブルを介して他の車載制御装置100やデバイス300、301と接続する。以下の説明において、デバイスには、車載制御装置100と通信ネットワーク200を介して接続されるECU等の装置が含まれるものとする。また、図1においては、デバイス300、301の2つのみ記載したが、2つ以上のデバイスを備えていてもよい。さらに、図1において、車載制御装置100は、1つのネットワーク200と接続されている例を示しているが、複数のネットワーク200と接続されるように構成してもよい。
アプリケーション部101(以下、アプリ101とする)及びアプリケーション部102(以下、アプリ102とする)は、デバイス300、301又はネットワーク200を介して接続されたデバイスを制御するプログラムである。アプリ101及び102は、各デバイスから情報を取得し、取得した情報を元に演算し、これらのデバイスを制御するための制御情報を生成する。また、アプリ101及び102は、これらの制御情報を各デバイスに送信して各デバイスを制御する。例えば、アプリ101は、デバイス300、301を制御するアプリケーションのプログラムでスイッチ等のデバイスから入力された情報を用いてライト、パワーウィンドウ等のデバイスを制御するボディ系制御アプリケーションのプログラムである。また、アプリ102は、デバイス300、301を制御するプログラムで、ネットワーク200からセンサ情報や車両情報を取得し、エンジンのインジェクタやスロットルバルブを制御するための情報をネットワーク200へ送信するパワートレイン系制御アプリケーションのプログラムである。なお、本実施の形態においては、ボディ系制御アプリケーションであるアプリ101とパワートレイン系制御アプリケーションであるアプリ102を有する車載制御装置100を例に説明する。ただし、車載制御装置100が有するアプリケーションはボディ系制御アプリケーション及びパワートレイン系制御アプリケーションに限らず、あらゆる車載向けのアプリケーションを対象とする。
デバイス制御部111はデバイス301、302と情報の入出力を行う電子回路である。デバイス制御部111は、アプリ101及び102が演算に必要な情報を各デバイスから取得する。また、デバイス制御部111は、アプリ101及び102が演算して生成した制御情報を各デバイスのいずれかに送信する。
通信部110は、CANコントローラやEthernet(登録商標)コントローラといった通信制御を行う電子回路でネットワーク200を介して接続されたデバイスと情報の入出力を行う。通信部110は、アプリ101及び102が演算する際に必要な情報をネットワーク200から取得する。また、通信部110は、アプリ101及び102が演算して生成した制御情報をネットワーク200に送信する。
デバイス制御部111及び通信部110は、後述する入力制御部107又は出力制御部108からの要求により、各デバイスにアクセスする。アクセスされた各デバイスは、保有する情報をアクセスされたタイミングでデバイス制御部111又は通信部110に送信する。
パラメータテーブル部106は、車載制御装置100が各デバイスにアクセスするタイミング(アクセスタイミング)及び各デバイスに対して制御情報を送信するタイミング(送信タイミング)に関する情報を有するパラメータテーブル400を記憶する記憶素子である。例えば、フラッシュメモリがこれに該当する。すなわち、パラメータテーブル部106は、車載制御装置100が各デバイスから情報を取得する際に、後述する入力制御部107がデバイスにアクセスするアクセスタイミングと、各デバイスに対して後述する出力制御部108が各デバイスに制御情報を送信する送信タイミングとを記憶している。なお、この送信タイミングは、アプリ101、102の演算遅延が発生した場合の演算時間、すなわち、アプリ101、102が制御情報を生成するための処理が遅延した場合の時間に基づいて、余分に時間間隔をあけて設定される。
入出力データベース部103は、通信部110及びデバイス制御部111が各デバイスから取得した情報と、アプリ101及びアプリ102が演算して生成した制御情報とを記憶する記憶素子である。入出力データベース部103は、例えば、RAM(Random Access Memory)等の記憶素子がこれに該当する。
入力部104は、アプリ101又は102からの要求に従い、入出力データベース部103から情報を取得して、アプリ101又はアプリ102に入力するプログラムである。
出力部105は、アプリ101やアプリ102が生成した制御情報を入出力データベース部103に出力して記憶するプログラムである。
入力制御部107は、パラメータテーブル部106に記憶されたアクセスタイミングに従い、デバイス制御部111又は通信部110を介して各デバイスにアクセスし、入出力データベース部103にデバイスが保持する情報を入力するプログラムである。
出力制御部108はパラメータテーブル部106に記憶された送信タイミングに従い、入出力データベース部103から取得した制御情報をデバイス制御部111又は通信部110を介して各デバイスに送信するプログラムである。
スケジューラ部109は、パラメータテーブル部106のアクセスタイミング及び送信タイミングに従い、アプリ101、アプリ102、入力部104、出力部105、入力制御部107及び出力制御部108の起動タイミングを制御するプログラムである。
以下、図2を用いて実施の形態1に係るパラメータテーブル部106のパラメータテーブル400について詳細に説明する。図2は、実施の形態1に係るパラメータテーブル部106に記憶されるパラメータテーブル400の一例である。
パラメータテーブル400は、対象のアプリ101、102を特定するアプリIDの項、アプリ101、102が実施する処理の種類を特定する処理IDの項、デバイスにアクセスする周期を規定するトリガの項、アクセスの実行時間を特定するタイミングの項、アプリ101、102が取得する情報又は出力する情報の有効期限を規定する期限の項、アプリ101、102が処理に使用する情報の取得先(ネットワーク又はデバイス)の種類を特定するアクセス種別の項、アプリ101、102が処理に使用するネットワーク又はデバイスを特定するアクセス対象の項、対応づけられたアクセスタイミングに関する情報がアプリ101、102に入力されるタイミングであるかデバイスに送信されるタイミングであるかを特定する方向の項からなる。
アプリIDはそれぞれのアプリ101、102に対して固有の名称で、記号や数字でもよい。処理IDは1つのアプリケーションの中で固有の名称で、記号や数字でもよい。トリガの項には時間を契機とするのみならず、デバイス300、301からのアクセス、ネットワーク200からのデータ受信を契機としてよい。タイミングは、トリガに規定された周期の先頭から実際に入出力を行うタイミング(以下、オフセットとする)を規定するものである。タイミングの項は、トリガが時間を契機とするものであるときには周期の先頭からのオフセット時間としたが、トリガがデバイスやネットワーク200からのアクセスを契機とするときには、契機とするデバイスやネットワーク200を特定する名称や記号としてよい。期限の項は入出力データベース部103に記憶された情報の有効期限である。アクセス対象の項はデバイスやネットワーク200を特定する名称や記号や通信の識別子としてよい。
パラメータテーブル400は、例えばパラメータ401から404のように構成される。パラメータ401は、アプリ101が処理ID1で示される処理を行う際のアクセスタイミングについて示したものであって、アプリ101が処理ID1の処理を行うために、入力制御部107がデバイス制御部111を介して10ms周期かつオフセット0msで、アクセス対象がデバイスの1つを示すDIO(Digital Input Output)、及びアクセス対象がデバイス300であるデバイス300にアクセスして情報を取得し、この情報を入出力データベース部103に入力することを表す。また、パラメータ402は、アプリ101が処理ID2で示される処理を行う際にデバイス301に対して処理ID2で示される処理を行う際の送信タイミングについて示すものであって、出力制御部108が10ms周期かつオフセット3msでアクセス種別DIO、及びアクセス対象デバイス301に基づいて、入出力データベース103に記憶された制御情報をデバイス301に送信することを表す。パラメータ403は、アプリ102が処理ID1の処理を行うために、入力制御部107がネットワーク200の1つを示すCANから10ms周期かつオフセット3msで0x100のIDを持つ情報を受信し、入力データベース部103に入力することを表す。パラメータ404は、アプリ102が処理ID2の処理を行うために、出力制御部108がCANに対して10ms周期かつオフセット7msにおいて0x101のIDを持つ情報を送信する処理を表す。なお、アクセスタイミング及び送信タイミングには、トリガの項、及びタイミングの項に規定されたタイミングを含むものとする。
以下、図3を用いて実施の形態1に係る入出力データベース部103に記憶される入出力データベース500について詳細に説明する。図3は、実施の形態1に係る入出力データベース部103に記憶される入出力データベース500の一例である。
入出力データベース500は対象のアプリ101、102を特定するアプリIDの項、アプリ101、102が実施する処理の種類を特定する処理IDの項、アプリ101、102が処理を実行した時間を示す処理時間の項、処理により記憶された情報を示すデータの項からなる。アプリIDの項と処理IDの項はパラメータテーブル400と同様、処理を行ったアプリ101、102を特定するために設定される。処理時間の項は標準的な時刻の他にカウンタ値といった数値でもよい。データの項は数値の他に文字列などのデータ形式でもよい。
入出力データベース500は、例えば、入出力データ501から504から構成される。入出力データ501はアプリ101の処理ID1の処理により、2014年6月13日10時34分30秒000ミリ秒000マイクロ秒に情報0x01を記憶したことを示す。入出力データ502はアプリ101の処理ID2の処理により、2014年6月13日10時34分30秒001ミリ秒300マイクロ秒に情報0x00を記憶したことを示す。入出力データ503はアプリ102の処理ID1の処理により、2014年6月13日10時34分30秒003ミリ秒100マイクロ秒に情報0x12345678を記憶したことを示す。入出力データ504はアプリ102の処理ID2の処理により、2014年6月13日10時34分30秒006ミリ秒100マイクロ秒に情報0x87654321を記憶したことを示す。なお、入出力データベース500は入出力データ501から504においてそれぞれ1つずつ情報を記憶しているが、複数の情報を蓄積するようにしてもよい。
以下、実施の形態1に係る車載制御装置100の動作について説明する。なお、以下の説明においては、入出力データベース部103とアプリケーション101、102との情報の入出力に関する動作について説明する。図4は実施の形態1に係る車載制御装置100がアプリケーション101、102と入出力データベース部103との間で情報を入出力する動作のフローチャートである。なお、実施の形態1に係る車載制御装置100の動作において、入出力データベース部103とアプリケーション101、102との情報の入出力に関する動作と、各デバイスと入出力データベース部103との間でデータを入出力する動作は独立して実行される。すなわち、入力制御部107及び出力制御部108の動作は、アプリ101、102の演算遅延によって遅延するものではない。
S100において、スケジューラ部109がパラメータテーブル部106のパラメータテーブル400を参照し、アプリ101又はアプリ102のトリガ、タイミングに基づいて該当のアプリケーションを起動する。なお、スケジューラ109は、アプリ101又は102がトリガ、タイミングにより、アプリ101又はアプリ102を起動するタイミングでないと判断した場合には、起動すべきタイミングとなるまで休止する。具体的には、スケジューラ部109はパラメータテーブル部106が保持するパラメータテーブル400に記憶されたトリガとタイミングに基づいてアプリ101又はアプリ102を起動する。なお、スケジューラ部109は、車載制御装置100内の処理時間を考慮し、パラメータテーブル部106のパラメータテーブル400のトリガ、タイミングにより示される時間よりも、予め定められた時間だけ前に起動してもよい。また、スケジューラ部109は、パラメータテーブル部106に記憶された周期の先頭にアプリ101及びアプリ102を起動するように構成してもよい。この場合、アプリ101又は102の演算タイミングが重なるおそれがあるが、パラメータテーブル400のトリガとタイミングの項を参照して、より先に演算処理を行うべきアプリケーションの処理を先に実行し、処理を実行したアプリの処理終了後、他のアプリを起動(優先度制御)するように構成すればよい。さらに、パラメータテーブル部106は、パラメータテーブル400に記憶された入力制御部107のアクセスタイミング及び出力制御装置108の送信タイミングに対応したアプリ101及びアプリ102の起動タイミングを示すパラメータテーブルを別途記憶するように構成してもよい。この場合、スケジューラ部109は、アプリケーションごとに定められた起動タイミングでアプリ101又は102を起動する。いずれにせよ、スケジューラ部109は、パラメータテーブル400のトリガ、タイミングで示されるタイミングと同時又はこれより早いタイミングでアプリ101又は102を起動し、入出力データベース部103から情報を取得可能又は入出力データベース部103に出力可能な状態としておく必要がある。また、スケジューラ部109は、入力部104及び出力部105についても、パラメータテーブル部106のパラメータテーブル400に基づいて起動する。スケジューラ部109は、パラメータテーブル400の方向の項が入力であれば入力部104を起動し、出力であれば出力部105を起動する。
S101において、アプリ101又はアプリ102は処理を開始する。
S102において、アプリ101又は102は、スケジューラ部109により起動されたことに起因して、続いて入力処理(S103)の実行を開始する。アプリ101、102は、後述する図5のS202の動作において入力制御部107がデバイス300、301又はネットワーク200から取得して記憶した情報を入出力データベース103から取得する処理を行う。具体的には、まず、アプリ101、102は、入力部104にアクセスする。すなわち、アプリ101、102は、入力部104に自身のアプリIDと処理IDを渡して情報の取得要求を行う。
S103において、入力部104は、取得したアプリIDと処理IDに基づいて、入出力データベース500において該当するアプリIDと処理IDにおける処理時間と、パラメータテーブル400における該当するアプリIDと処理IDにおける期限との和が、現在時刻を超えていなければ、S104の処理を実施する。一方、入力部104は、入出力データベース500において該当するアプリIDと処理IDにおける処理時間とパラメータテーブル400における該当するアプリIDと処理IDにおける期限との和が現在時刻を超えていれば、入力制御部107によって処理時間が更新されるまで待機する。例えば、起動時にアプリ101が実行されて入力部104にアクセスする場合、図3に示す入出力データベース500の入出力データ501はアプリIDがアプリ101、処理IDが1であるため、アプリ101は入出力データ501にアクセスする。現在時刻が「2014年6月13日10:34:30.001000」である場合に、アプリ101は、入出力データ501の処理時間「2014年6月13日10:34:30.000000」と図2のパラメータ401の期限「3ms」の和「2014年6月13日10:34:30.003000」が現在時刻「2014年6月13日10:34:30.001000」を超えていないため、有効な情報であるとしてS104を実行する。
S104において、入力部104は、入出力データベース部103の入出力データベース400におけるアプリIDと処理IDに対応する情報をアプリ101又は102に返す。例えば、起動時にアプリ101からアクセスされ、アプリID101、処理ID1を取得した入力部104は、入出力データベース部103にアクセスし、情報0x01を取得して、アプリ101に情報を出力する。また、アプリ101、102は、入力部104から取得した情報に基づいて演算を開始し、デバイス300、301又はネットワーク200で接続されるデバイスを制御するための制御情報を生成する。
S105において、アプリ101又は102は、出力部105にアプリIDと処理IDと制御情報を渡して出力要求を行う。出力部105は、出力要求を受けて、入出力データベース103を参照して該当するアプリIDと処理IDの項に制御情報を記憶する。
S102~S105までの処理が完了したアプリ101又は102は、終了処理を実行し、休止する。なお、アプリ101、102は、S100からS105の処理を繰り返し実行する。
次に、各デバイスと入出力データベース部103との間における情報の入出力について説明する。図5は、実施の形態1に係る車載制御装置100が各デバイスと入出力データベース部103との間でデータを入出力する動作を説明するフローチャートである。
S200において、スケジューラ部109は、パラメータテーブル400のトリガ、タイミングの項を参照して、入力制御部107又は出力制御部108を起動する。いずれのアプリケーションについても処理のタイミングでない場合には、待機する。
S201において、スケジューラ部109は、パラメータテーブル400において、アクセスタイミングであると判定したアプリIDの項に対応する「方向」の項を参照し、入力処理又は出力処理を選択する。スケジューラ部109は、「方向」の項が入力である場合には入力制御部107を起動し、S202の処理を実行する。一方、スケジューラ部109は、「方向」の項が出力である場合には出力制御部108を起動し、S203の処理を実行する。例えば、スケジューラ部109がパラメータ401のアクセスタイミングで起動した場合、「方向」の項は「入力」であるため、スケジューラ部109は入力制御部107を起動する。
S202において、入力制御部107は、パラメータテーブル400に記憶されているアクセス種別、アクセス対象、方向の情報に基づいて、ネットワーク200又はデバイス300、301にアクセスして情報を取得し、取得した情報を入出力データベース500のデータの項に記憶する。入力制御部107が各デバイスにアクセスする際、入力制御部107は、デバイス制御部111又は通信部110を介してトリガ、タイミングの情報に基づいたアクセスタイミングでアクセスする。アクセスされたデバイス300、301又はネットワーク200を介して接続されるデバイスは、アクセスされたタイミングで自身の保持する情報をデバイス制御部111又は通信部110に送信する。
例えば、S202において、スケジューラ部109が図2に示すパラメータテーブル400のパラメータ401を参照した場合、入力制御部107は、このパラメータ401のトリガ及びタイミングに基づいてアクセス対象のデバイス300に対してデバイス制御部111を介してアクセスし、デバイス300から情報を取得する。また、入力制御部107は、入出力データベース500の入出力データ501のデータの項に取得した情報を記憶する。この時、入出力データベース500に記憶された情報が前述した図4のS104でアプリ101に入力される情報となる。
このように、車載制御装置100は、アプリ101及び102が行うアクセスを、入力制御部107がパラメータテーブル部106に記憶されたアクセスタイミングに基づいて各デバイスに対してアクセスする構成としたので、アプリ101、102の演算遅延が発生した場合においても、入力制御部107がアプリ101、102の演算遅延とは関係なく、予め定められたタイミングで各デバイスにアクセスすることが可能になり、このアクセスタイミングに応じたタイミングにおいて各デバイスが保有している情報を取得することができる。さらに、この構成によれば、アプリ101又はアプリ102以外のアプリを追加した場合においても、パラメータテーブル106に記憶されたパラメータテーブル400に新たに追加したアプリのアクセスタイミング及び送信タイミングを追加又は書き換えることにより、装置構成を変更することなく、各デバイスからのデータ入力のタイミングを制御することが可能である。
一方、S203において、起動された出力制御部108は入出力データベース部103の入出力データベース500の該当するアプリID、処理IDの項の情報を参照して、パラメータテーブル400にて設定されているアクセス種別、アクセス対象、方向に基づいて通信ケーブル200を介して接続されるデバイス又はデバイス300、301に入出力データベース部103に記憶された情報を出力する。この時、入出力データベース部103に記憶されていた情報は、前述した図4のS105でアプリ101又は102が出力部105を介して入出力データベース部103に記憶した情報である。
このように、車載制御装置100は、アプリ101及び102が出力した制御情報を入出力データベース部103に記憶し、パラメータテーブル部106に記憶された送信タイミングに基づいて制御情報を取り出して各デバイスに送信するので、アプリ101、102の演算遅延が発生した場合においても、出力制御部108がアプリケーションの演算遅延とは関係なく、予め定められたタイミングで各デバイスに制御情報を送信することが可能となる。
以上のように、実施の形態1に係る車載制御装置100は、アクセスタイミングと、アプリ101、102の演算が遅延した場合の時間に基づいて設定される制御情報の送信タイミングに基づいて、外部のデバイスにアクセスして情報を取得する入力制御部107、及び外部のデバイスに制御情報を送信する出力制御部108を備える。また、入力制御部107が取得した情報と、アプリ101、102が生成した制御情報とをデータベースに記憶する。したがって、複数のアプリケーション部を備える車載制御装置において、予め定められたタイミングでデバイスから情報を入力し、予め定められたタイミングでデバイスに制御情報を送信することが可能となり、アプリ101、102の演算遅延が発生した場合においても、精度の高いデバイス制御を実現することができる。
実施の形態2.
以下、図6を用いて実施の形態2に係る車載制御装置100について説明する。図6は実施の形態2に係る車載制御装置100の構成図である。以下の説明において、図1~図3において説明した構成と同じ構成については同じ番号を付して説明を省略する。
以下、図6を用いて実施の形態2に係る車載制御装置100について説明する。図6は実施の形態2に係る車載制御装置100の構成図である。以下の説明において、図1~図3において説明した構成と同じ構成については同じ番号を付して説明を省略する。
本実施の形態において、車載制御装置100は異常動作の検出条件と異常動作を検出した際の処理内容を記憶するエラー設定部112を備える。エラー設定部112は、異常動作の検出条件と異常動作時の処理の内容を保持する記憶素子である。
ここで、異常動作とは、車載制御装置100内で通常行われる動作を行うことができない異常が発生したことを示す。例えば、入力部104が入出力データベース部103からアプリ101、102が演算するために必要な情報を所定時間内(入力タイムアウト時間内)に取得できないタイムアウトエラー、出力部105が各デバイスを制御するための制御情報をパラメータテーブル400に示される送信タイミングまでに取得できないタイムオーバーエラー、アプリ101、102が入力部104又は出力部105にアクセスする際に出力したアプリIDや処理IDがパラメータテーブル部106のパラメータテーブル400又は入出力データテーブル500に存在しないアプリアクセスエラー、入力制御部107又は出力制御部108がネットワーク200、デバイス300、301にアクセスする際に使用するパラメータテーブル400のアクセス種別、アクセス対象などが実際に車載制御装置100と接続している機器と異なるリソースアクセスエラー等である。
また、異常動作の検出条件は、異常動作と判断するための条件である。例えば、タイムアウトエラーにおける入力タイムアウト時間等がこれにあたる。
異常動作時の処理は、異常動作を検出した際のアプリ101、102の処理を規定したものである。例えば、タイムオーバーエラーの発生時、出力部105が制御情報をパラメータテーブル400に示される送信タイミングまでに取得出来なかった場合に、エラー設定部112は、各デバイスに制御情報を送信しない又は遅れて送信するか等を設定することができる。また、タイムアウトエラー発生時には、入力部104が入力要求を受け付けない又は遅れて情報をアプリ101又は102に出力するか等が設定される。なお、エラー設定部112に設定される異常動作の検出条件、異常動作時の処理は、これらに限られず、車載制御装置100内で起こりうる異常動作に関する情報であればよい。
次に、実施の形態2に係る車載制御装置100の動作について説明する。実施の形態1に係る車載制御装置100の動作の説明と同様、まず入出力データベース103とアプリ101、102との情報の入出力に関する動作を図7を用いて説明する。図7は、実施の形態2に係る車載制御装置100がアプリケーション101、102と入出力データベース部103との間で情報を入出力する動作のフローチャートである。なお、以下の説明において、S100~S102、S103~S105の動作(S103a、S104aを除く)については、図4と同様の動作であるため説明を省略する。
S102aにおいて、アプリ101又はアプリ102が入力部104に入力要求した際に、入力部104は、エラー設定部112に記憶された異常動作の検出条件を参照し、異常動作の検出処理を行う。異常動作を検出した場合、入力部104は、エラー通知をアプリ101又は102に通知する。エラー通知を受けたアプリ101又は102は、エラー設定部112に記憶された異常動作検出条件に対応する異常動作時の処理を実行する。例えば、エラー通知を受けたアプリ101又は102は、処理をS101に戻す。すなわち、入力部104は入出力データベース部103に記憶された情報をアプリ101及び102に出力することなく、アプリ101及び102にS101の処理を実行させる。なお、この例においては、異常動作が検出された場合にS101に戻り、再度アプリの処理開始動作を繰り返すものとしたが、本実施の形態に係る車載制御装置100の動作はこの例に限らず、アプリ101又は102が通知された異常動作の内容に応じて、処理を停止したり、処理を修正するといった異常動作時の処理を行うように構成してもよい。この場合、エラー設定部112には、異常動作時の処理として予めアプリ101及び102の処理を停止すること又は処理を修正することを記憶しておく必要がある。例えば、S102aで検出される異常動作の例として、アクセスエラーがある。アクセスエラーの検出処理では、入力部104は、アプリ101又はアプリ102から取得したアプリID及び処理IDがパラメータテーブル400に存在するか判定する。存在していない場合は異常動作と判定し、存在している場合は正常と判定する。一方、入力部104がエラー設定部112に記憶された異常動作を検出しない場合はS103を実施する。
S103において、入力部104は、例えば、タイムアウトエラーを検出する。入力部104は、入出力データベース部103からアプリ101、102が演算するために必要な情報をエラー設定部112に記憶された入力タイムアウト時間内に取得できない場合、すなわち、入出力データベース500において該当するアプリIDと処理IDにおける処理時間と、パラメータテーブル400における該当するアプリIDと処理IDにおける期限との和が、現在時刻を超えている場合、タイムアウトエラーとしてアプリ101またはアプリ102にエラー通知を出力し、処理S103aを実行する。なお、タイムアウトエラーでない場合、S104を実行する。
S103aにおいて、アプリ101又は102は、エラー設定部112を参照し、異常動作時の処理が処理停止であれば、処理をS100に戻す。一方、アプリ101又は102は、異常動作時の処理が処理継続であれば、処理をS104に移す。
一方、S104aにおいて、アプリ101又はアプリ102が出力部105にアクセスする際、出力部105は、記憶された異常動作の検出条件を参照し、異常動作の検出処理を行う。異常動作を検出した場合、出力部105は、エラーをアプリ101又は102に通知する。エラーが通知されたアプリ101又は102は、エラー設定部112に記憶されたエラー検出条件に対応する異常動作時の処理を実行する。例えば、エラーが通知されたアプリ101又は102は、処理をS101に戻す。なお、エラー検出時の動作は、S100に戻ることに限られず、エラーが通知されたアプリ101又は102は、通知されたエラーの内容に応じて、処理継続(S105を実行)、処理を修正、処理停止(S100を実行)するといった異常動作時の処理を実行してもよい。アプリ101及び102は、エラーが通知されなかった場合又は、異常動作時の処理内容が処理継続であった場合、処理をS105に移す。例えば、アクセスエラーの検出処理では、出力部105は、アプリ101又はアプリ102から取得したアプリID及び処理IDがパラメータテーブル400に存在するか判定する。出力部105は、取得したアプリID及び処理IDが存在しない場合は異常動作とし、存在している場合は正常と判定する。また、例えば、タイムオーバーエラーの検出処理では、アプリ101又はアプリ102が出力部105にアクセスした時刻が、パラメータテーブル400においてアプリIDと処理IDに対応するタイミングを既に経過していたら、タイムオーバーエラーと判定する。そうでなければ、正常と判定する。
次に、図8を用いて実施の形態2に係る車載制御装置100における各デバイスと入出力データベース部103との間における情報の入出力について説明する。図8は、実施の形態2に係る車載制御装置100が各デバイスと入出力データベース103との間で情報を入出力する動作を説明するフローチャートである。なお、図8においてS200~S203(S201a、S201bを除く)の動作は、図5で説明した動作と同様のため、同じ符号を付して説明を省略する。
S201aにおいて、入力制御部107は、パラメータテーブル400に処理実施予定のアプリIDおよび処理IDの処理に対応するアクセス種別とアクセス対象が存在しないリソースアクセスエラーと判断した場合、デバイス300及び301にアクセスせず、S200に戻る。そうでなければ、S202を実施する。
一方、S201bにおいて、出力制御部108は、パラメータテーブル400に処理実施予定のアプリIDおよび処理IDの処理に対応するアクセス種別とアクセス対象が存在しないリソースアクセスエラーと判断した場合、デバイス300及び301にアクセスせず、S200に戻る。そうでなければ、S203を実施する。
以上のように、実施の形態2に係る車載制御装置100は、異常動作の検出条件と、この異常動作の検出条件に該当する異常動作の処理とを記憶するエラー設定部112を備えるので、車載制御装置100に異常動作が発生した場合にも、異常動作に対応する処理をアプリ101、102に行わせることができる。
実施の形態3.
以下、実施の形態3に係るシミュレーション装置600について説明する。図9は実施の形態3に係るシミュレーション装置600の構成図である。なお、図1~3及び図6で説明した構成と同じものについては同じ番号を付して説明を省略する。
以下、実施の形態3に係るシミュレーション装置600について説明する。図9は実施の形態3に係るシミュレーション装置600の構成図である。なお、図1~3及び図6で説明した構成と同じものについては同じ番号を付して説明を省略する。
シミュレーション装置600はアプリ101、アプリ102を車載制御装置100で動作させた場合における起動処理、入力処理、出力処理、終了処理といった動作を模擬的に確認する装置である。
パーサ部601はアプリ101、102のソースコードを読み取るプログラムである。パーサ部601は、ソースコードを読み取り、コンピュータで処理可能なデータ形式に変換する。なお、パーサ部601は、ソースコードを読み取るものとしたが、ソースコードに限らず、オブジェクトコードやスクリプトコードなどを読み取ることも可能である。
フロー解析部602は、パーサ部601で読み取ったアプリ101、102の情報を解析し、アプリ101、102が入力部104にアクセスする入力要求や出力部105にアクセスする出力要求等のタイミングに関する情報(以下、フロー情報とする)を抽出するプログラムである。すなわち、フロー解析部602は、車載制御装置100内でアプリ101、及び102が入出力データベース部103から情報を取得するタイミング及び入出力データベース部103に制御情報を出力するタイミングを取得する。
時間データ部603は、アプリ101、102がデバイスから取得した情報に基づいて制御情報を生成するための時間に関する情報を記憶する記憶素子である。
通信模擬部605はネットワーク200における通信パターンのモデルを設定するプログラムである。通信模擬部605は、車載制御装置100がネットワーク200にアクセスした際に取得すると想定されるデータを記憶している。また、デバイス模擬部606はセンサやアクチュエータといったデバイス300、301のセンサ値の入力パターンやアクチュエータの応答パターンのモデルを設定するプログラムである。デバイス模擬部606は、車載制御装置100がアクセスした際に取得すると予想されるデータを記憶している。以下、通信模擬部605及びデバイス模擬部606を総称してデータ模擬部610とする。また、通信模擬部605及びデバイス模擬部606が送信する情報を模擬情報と定義する。
パラメータテーブル部106は、図1及び図6で示したパラメータテーブル部106と同様、車載制御装置100のアクセスタイミング及び送信タイミングに関する情報を有するパラメータテーブル400を記憶する記憶素子である。
シミュレーション部604は、フロー解析部602からフロー情報と、データ模擬部610から模擬情報と、パラメータテーブル部106からデバイスへのアクセスタイミングと、時間データ部から制御情報を生成するための時間に関する情報を取得し、模擬的に車載制御装置100を動作させ、アプリ101、102の起動処理、入力処理、出力処理、終了処理といった処理が実行されるタイミングを演算するプログラムである。
結果出力部607はシミュレーション部604において演算したアプリ101やアプリ102の起動処理、入力処理、出力処理、終了処理のタイミングといった演算結果を記憶し、シミュレーション装置600の使用者に表示する装置である。
コンフィグ部608はシミュレーションを実行する期間等の設定を行うプログラムである。
以上のように、実施の形態3に係る車載制御装置のシミュレーション装置は、アクセスタイミングと、アプリ101又は102の演算が遅延した場合の時間に基づいて設定される制御情報の送信タイミングが記憶されたパラメータテーブル部106を備えるので、このパラメータテーブルに基づいて動作する車載制御装置100の動作確認を実機を用いることなく行うことができる。
101、102 アプリケーション部、103 入出力データベース部、106 パラメータテーブル部、107 入力制御部、108 出力制御部、109 スケジューラ部、110 通信部、111 デバイス制御部、200 ネットワーク、300、301 デバイス
Claims (3)
- 車両に搭載されたデバイスのうちいずれかのデバイスにアクセスし、アクセスした該デバイスから取得した情報に基づいて前記車両に搭載されたデバイスを制御するための制御情報を生成し、該制御情報を該デバイスに送信して該デバイスを制御する車載制御装置において、
前記デバイスから取得した情報と、前記制御情報とを記憶するデータベース部と、
前記デバイスにアクセスするタイミング示すアクセスタイミングと、前記制御情報を生成する処理が遅延した場合の時間に基づいて設定される前記制御情報の送信タイミングとを記憶したパラメータテーブル部と、
前記パラメータテーブル部に記憶された前記アクセスタイミングに基づいていずれかの前記デバイスにアクセスし、アクセスした該デバイスから情報を取得して前記データベース部に記憶する入力制御部と、
前記アクセスタイミングに基づいて起動して前記データベース部に記憶された前記デバイスから取得した情報を取得し、取得した該情報に基づいて前記デバイスを制御するための制御情報を生成して前記データベース部に記憶する複数のアプリケーション部と、
前記データベース部に記憶された前記制御情報を前記パラメータテーブル部に記憶された前記送信タイミングに基づいていずれかの前記デバイスに送信して該デバイスを制御する出力制御部と、
を備えることを特徴とする車載制御装置。 - 前記車載制御装置の異常動作の検出条件と、該検出条件に対応する異常動作時の処理に関する情報が記憶されたエラー設定部を備え、
前記アプリケーション部は、前記エラー設定部の前記検出条件に該当する異常動作を検出した場合には、前記エラー設定部に記憶された前記検出条件に対応する異常動作時の処理を実行することを特徴とする請求項1に記載の車載制御装置。 - 請求項1に記載の車載制御装置の動作をシミュレートするシミュレーション装置において、
前記パラメータ制御部と、
前記複数のアプリケーション部と、
前記複数のアプリケーション部を解析し、前記アプリケーション部が前記データベース部から情報を取得するタイミング、及び前記データベース部に情報を送信するタイミングに関するフロー情報を抽出するフロー解析部と、
前記アプリケーション部の前記制御情報を生成するための時間に関する情報を記憶する時間データ部と、
前記デバイスが保有する情報を模擬した模擬情報を送信するデータ模擬部と、
前記パラメータテーブル部から取得する前記アクセスタイミング及び前記送信タイミングに関する情報と、前記フロー解析部から取得するフロー情報と、前記時間データ部から取得する前記制御情報を生成するための時間に関する情報と、前記データ模擬部から取得する前記模擬情報とに基づいて、前記車載制御装置の動作を確認するシミュレーション部とを備えることを特徴とするシミュレーション装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/004774 WO2016042588A1 (ja) | 2014-09-17 | 2014-09-17 | 車載制御装置及びこの車載制御装置のシミュレーション装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/004774 WO2016042588A1 (ja) | 2014-09-17 | 2014-09-17 | 車載制御装置及びこの車載制御装置のシミュレーション装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016042588A1 true WO2016042588A1 (ja) | 2016-03-24 |
Family
ID=55532660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/004774 WO2016042588A1 (ja) | 2014-09-17 | 2014-09-17 | 車載制御装置及びこの車載制御装置のシミュレーション装置 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2016042588A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10628234B2 (en) | 2015-12-10 | 2020-04-21 | Mitsubishi Electric Corporation | Data processing apparatus, data processing method, and computer readable medium |
JP2021049990A (ja) * | 2020-12-25 | 2021-04-01 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
JP2021049989A (ja) * | 2020-12-25 | 2021-04-01 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007246040A (ja) * | 2006-03-17 | 2007-09-27 | Fujitsu Ten Ltd | 電子制御装置、模擬装置、試験装置および試験方法 |
JP2009037399A (ja) * | 2007-08-01 | 2009-02-19 | Denso Corp | コンフィギュレーションコード生成装置およびコンフィギュレーションコード生成装置用プログラム |
JP2013171547A (ja) * | 2012-02-23 | 2013-09-02 | Hitachi Automotive Systems Ltd | 車両用制御装置 |
JP2014031077A (ja) * | 2012-08-02 | 2014-02-20 | Toyota Motor Corp | 車両動作検証システム |
-
2014
- 2014-09-17 WO PCT/JP2014/004774 patent/WO2016042588A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007246040A (ja) * | 2006-03-17 | 2007-09-27 | Fujitsu Ten Ltd | 電子制御装置、模擬装置、試験装置および試験方法 |
JP2009037399A (ja) * | 2007-08-01 | 2009-02-19 | Denso Corp | コンフィギュレーションコード生成装置およびコンフィギュレーションコード生成装置用プログラム |
JP2013171547A (ja) * | 2012-02-23 | 2013-09-02 | Hitachi Automotive Systems Ltd | 車両用制御装置 |
JP2014031077A (ja) * | 2012-08-02 | 2014-02-20 | Toyota Motor Corp | 車両動作検証システム |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10628234B2 (en) | 2015-12-10 | 2020-04-21 | Mitsubishi Electric Corporation | Data processing apparatus, data processing method, and computer readable medium |
JP2021049990A (ja) * | 2020-12-25 | 2021-04-01 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
JP2021049989A (ja) * | 2020-12-25 | 2021-04-01 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
JP7107359B2 (ja) | 2020-12-25 | 2022-07-27 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
JP7107358B2 (ja) | 2020-12-25 | 2022-07-27 | トヨタ自動車株式会社 | 制御装置、マネージャ、システム、制御方法及び車両 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5337155B2 (ja) | 組み込み機器におけるapi評価システム | |
WO2016042588A1 (ja) | 車載制御装置及びこの車載制御装置のシミュレーション装置 | |
US10735520B2 (en) | Control device, control system, control method, and non-transitory computer-readable storage medium | |
US20170161116A1 (en) | Method for Realising and for Executing a Comprehensive Real-Time Computer Application | |
US10605570B2 (en) | Method and apparatus for launch control packet processing | |
Fu et al. | Development of RTOS-based wireless SHM system: Benefits in applications | |
US20210303488A1 (en) | Real-Time Automation Device having a Real-Time Data Bus | |
CN106878112B (zh) | 一种网关控制器、数据传输方法及装置 | |
US20200264578A1 (en) | Control device, control method for control device, information processing program, and recording medium | |
US20190165996A1 (en) | Method for operating a real -time-capable simulation network having multiple network nodes for computing a simulation model, also computer program product relating thereto, and computer-readable storage medium | |
JP2015507775A5 (ja) | ||
Feng et al. | P $^ 2$ IM: Scalable and Hardware-independent Firmware Testing via Automatic Peripheral Interface Modeling (extended version) | |
KR101645260B1 (ko) | 복수의 제어기간의 정밀한 시간 기록을 포함하는 데이터 동기화 시스템 및 방법 | |
JP6196505B2 (ja) | クラウド制御システム、及びその制御プログラムの実行方法 | |
KR101629578B1 (ko) | Rte 코드 생성 방법 및 이를 실행하는 장치 | |
JP2008242572A (ja) | 制御処理シミュレーション装置 | |
US11947329B2 (en) | Execution environment for running an event-oriented control program | |
US20220187779A1 (en) | Method and system for executing an event-oriented control program | |
US20170103033A1 (en) | Decoder for a model train and method of operating a decoder for a model train | |
EP3637262B1 (en) | Verification device for vehicle control device and vehicle control device | |
JP6257768B2 (ja) | ネットワークシステム及び制御装置 | |
KR101552119B1 (ko) | EtherCAT을 위한 노드간 최적 시간 위상 검색 시스템 | |
KR20220080871A (ko) | 차량의 이종 제어기간 통신 응답시간 추정 장치 및 방법 | |
CN106874030B (zh) | 机器人操作系统环境下的应用内指令解析优化方法和装置 | |
CN110908805A (zh) | 一种信息分发方法、机器人及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14902044 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14902044 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |