JP2023012395A - 仮想開発環境装置、方法および記録媒体 - Google Patents

仮想開発環境装置、方法および記録媒体 Download PDF

Info

Publication number
JP2023012395A
JP2023012395A JP2021116022A JP2021116022A JP2023012395A JP 2023012395 A JP2023012395 A JP 2023012395A JP 2021116022 A JP2021116022 A JP 2021116022A JP 2021116022 A JP2021116022 A JP 2021116022A JP 2023012395 A JP2023012395 A JP 2023012395A
Authority
JP
Japan
Prior art keywords
port
virtual
output
input
model
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.)
Pending
Application number
JP2021116022A
Other languages
English (en)
Inventor
庸 井上
Yo Inoue
光一 佐藤
Koichi Sato
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2021116022A priority Critical patent/JP2023012395A/ja
Priority to US17/835,556 priority patent/US11966718B2/en
Priority to CN202210774493.9A priority patent/CN115617009A/zh
Priority to EP22183361.9A priority patent/EP4134861A3/en
Publication of JP2023012395A publication Critical patent/JP2023012395A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/0208Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
    • G05B23/0216Human interface functionality, e.g. monitoring system providing help to the user in the selection of tests or in its configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24065Real time diagnostics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Programmable Controllers (AREA)

Abstract

【課題】CAEツールと仮想ECUシミュレーションツールとを接続するブリッジの配置を容易にすることである。【解決手段】仮想開発環境装置は、処理実行ユニットと、コントローラブロックとプラントブロックとを含むMILSモデルと、第一設定情報と、仮想ECUのシミュレーションの実行の際に利用される前記コントローラブロックに機能を実現するプログラムと、第二設定情報と、を記憶するメモリと、を備える。前記処理実行ユニットは、前記第一設定情報に基づいて前記MILSモデル内のコントローラブロックを特定し、前記特定したコントローラブロックの前記入力ポートおよび前記出力ポートに前記入力ポートおよび前記出力ポートと前記仮想ECUのI/Oポートとを接続するためのブリッジを配置し、前記第二設定情報に基づいて前記ブリッジと前記仮想ECUのI/Oポートを接続するよう構成される。【選択図】図4

Description

本開示は仮想開発環境装置に関する。本開示は、例えば、vHILS(Virtual Hardware In the Loop Simulation)と呼ばれる仮想環境を用いる仮想開発環境装置に適用可能である。
ECU(Electronic Control Unit)等の制御装置のソフトウェアの開発ではMBD(Model Based Development)が広まっている。制御システム開発においては、MATLAB(登録商標)/shimulink(登録商標)等のCAE(Computer Aided Engineering)ツールを用いて、制御装置と制御対象の機能がモデル化される。MBDは、それらのモデルを実行可能な仕様書として用いることで、製品ライフサイクル全般に渡った品質向上と開発効率向上を目指した開発手法である。また、MBDはV字開発プロセスと呼ばれる開発プロセスに沿って実行される。
V字開発プロセスの中には、コンピュータシミュレーションが重要な役割を担う工程として、MILS(Model In the Loop Simulation)およびHILS(Hardware In the Loop Simulation)などがある。MILSでは、制御装置の機能およびプラントと呼ばれる制御対象の機能をモデル化した上でこれらを結合したMILSモデルの検証が行われる。HILSは実装対象のECUを用いたシミュレーションである。HILSにおいては、ECUの実機にプラントのモデルを組み合わせて、ECUの検証が行われる。
HILSの性能検証においてECUの性能が未達であることが判明した場合、再度、ECUの設計を行う必要がある。ECUの再設計には、作業工数を要する。そこで、HILSに代えてvHILSが用いられている。vHILSは実装対象のECUのモデル(仮想ECU)を用いてHILSを仮想化したシミュレーションである。vHILS環境では、MILSから生成されたソフトウェアコードが使用され、仮想ECUシミュレーションツールを用いて検証が行われる。これにより、再設計に戻る作業工数が削減される。
特開2018-81400号公報には次のことが開示されている。開発対象であるECUの仮想デバイスモデル(仮想ECU)とECUのシステムテストプログラムとを用いて、ECUのシステム制御アプリケーションプログラムの開発およびその検証が行われる。
特開2018-81400号公報
MILSからvHILS環境を構築する作業は手作業であり、再設計の工数は依然として残っている。CAEツールと仮想ECUシミュレーションツールとの接続には、ブリッジが必要となる。ユーザは手動でこのブリッジをMILSモデルに配置する必要がある。また、配置したブリッジに仮想ECUのI/O(Input / Output)ポートの信号線を接続する設定をユーザが手動で行う必要がある。
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本開示のうち代表的なものの概要を簡単に説明すれば次の通りである。すなわち、仮想開発環境装置はvHILS環境構築ツールを備え、vHILSを行う上で必要となるブリッジの配置とブリッジの接続設定を自動で行う。
図1はvHILS環境を説明する図である。 図2はCAEツールと仮想ECUシミュレーションツールとを接続するブリッジを説明する図である。 図3は比較例における仮想開発環境装置の構成例を示す図である。 図4は第一実施例における仮想開発環境装置の構成例を示す図である。 図5は図4に示されるvHILS環境構築ツールの構成および処理を説明するための図である。 図6は第二実施例における仮想開発環境装置の構成例を示す図である。 図7は図6に示されるvHILS環境構築ツールの構成および処理を説明するための図である。 図8は第三実施例におけるMILSモデルの構成を示す図である。 図9は図8に示されるMILSモデルにおいて出力用I/Oポートが不足する場合のvHILSの構成例を示す図である。 図10は第三実施例におけるvHILS環境を説明する図である。 図11は第三実施例における仮想開発環境装置の構成例を示す図である。 図12は図11に示されるvHILS環境構築ツールの構成および処理を説明するための図である。 図13は図12に示されるI/Oポート設定部の処理を示すフローチャートである。 図14は図12に示されるI/Oポート設定部の処理を示すフローチャートである。 図15は図8に示されるMILSモデルにおいて入力用I/Oポートが不足する場合のvHILSの構成例を示す図である。 図16は図8に示されるMILSモデルに対応する第三実施例の変形例におけるvHILSの構成例を示す図である。 図17は第三実施例の変形例における仮想開発環境装置の構成例を示す図である。 図18は図17に示されるvHILS環境構築ツールの構成および処理を説明するための図である。 図19は図17に示されるI/Oポート設定部の処理を示すフローチャートである。 図20は図17に示されるI/Oポート設定部の処理を示すフローチャートである。
以下、実施形態、実施例および変形例について、図面を用いて説明する。ただし、以下の説明において、同一構成要素には同一符号を付し繰り返しの説明を省略することがある。
まず、MILS環境からvHILS環境を構築する作業について図1および図2を用いて説明する。
MILS環境では、制御装置の機能およびプラントと呼ばれる制御対象の機能をモデル化した上でこれらを結合したMILSモデルが作成される。そして、CAEツール(CAE_T)を用いて、MILSモデルをシミュレーションしてMILSモデルの検証が行われる。例えば、図1に示されるように、MILSモデルは制御を実装したコントローラブロック(CNTR)と制御対象のプラントブロック(PLNT)と遅延ブロック(DLY)との三つのブロックを有する。また、これら三つのブロックはループシミュレーション(Loop Simulation)を実現するため、それぞれの入出力は相互に信号線で環状に接続されている。
vHILS環境では、CAEツール(CAE_T)と仮想ECUシミュレーションツール(vECU_ST)とが接続され、CAEツール(CAE_T)と仮想ECUシミュレーションツール(vECU_ST)とが共同してシミュレーションを行う。そのため、MILSモデルと仮想ECUシミュレーションツール(vECU_ST)とを接続するためのブリッジ(BRDG)が作成される。そして、そのブリッジ(BRDG)をMILSモデルのコントローラブロック(CNTR)と置き換えてvHILSモデルが作成される。また、検証済みのMILSモデルのコントローラブロック(CNTR)から生成されたソフトウエアプログラム(コントローラブロックの機能を実現するプログラム)のソースコードがビルドされる。そして、ビルドされたロードモジュールが仮想ECUシミュレーションツール(vECU_ST)にダウンロードされ、仮想ECUのシミュレーションの際に利用される。
図2に示されるように、仮想ECUシミュレーションツール(vECU_ST)により検証が行われる仮想ECU(vECU)は、ダウンロードされたロードモジュールを格納するROM(Read Only Memory)、入力用I/Oポート(I1)および出力用I/Oポート(O1)等を有する。図1に示されるブリッジ(BRDG)は出力ブリッジおよび入力ブリッジにより構成される。図2に示されるように、出力ブリッジはコントローラブロックの入力ポート(in1)と仮想ECU(vECU)への入力に用いる入力用I/Oポート(I1)とを接続するものである。そして、入力ブリッジはコントローラブロック(CNTR)の出力ポート(out1)と仮想ECU(vECU)からの出力に用いる出力用I/Oポート(O1)とを接続するものである。
続いて、本実施形態を明確するため、比較例における仮想開発環境装置の構成について図3を用いて説明する。
比較例における仮想開発環境装置100は、CPU(中央処理装置)110、主記憶装置120、補助記憶装置130およびそれらを接続するバス(BUS)140を有する。主記憶装置120はCAEツール(CAE_T)121、ビルドツール(BUILD_T)122および仮想ECUシミュレーションツール(vECU_ST)123を格納する。補助記憶装置130はvHILSモデルおよびソースコード一式(c1)を格納する。
CAEツール121はMILSモデルまたはvHILSモデルを使用してシミュレーションを行うツールである。仮想ECUシミュレーションツール123は仮想ECU(vECU)をシミュレーションするツールである。
ユーザはソースコード一式(c1)を用意して補助記憶装置130に格納する。ソースコード一式(c1)は、MILSモデルから生成された、仮想ECU(vECU)において動作させるアプリケーションプログラムのソースコード(c11)および入力用および出力用I/Oポートの初期化設定を行うドライバのソースコード(c12,c13)を含む。ビルドツール122はソースコード一式(c1)からロードモジュール(c2)を生成する。また、ユーザはvHILSモデルを用意して補助記憶装置130に格納する。
比較例における仮想開発環境装置においては、ユーザは手動によりブリッジ(BRDG)をMILSモデルに配置する必要がある。さらに、ユーザは手動によりブリッジ(BRDG)に仮想ECU(vECU)のI/Oポートの信号線の接続を設定する必要がある。ユーザは、これらの作業を行って、vHILSモデルを作成し、補助記憶装置130に格納する。
続いて、実施形態について以下説明する。実施形態における仮想開発環境装置は、比較例に対して新たにvHILS環境構築ツールを有する。そして、ユーザは新たにコントローラブロック(CNTR)の第一設定情報としてのブロック名情報と第二設定情報としてのI/Oポート情報を用意する。vHILS環境構築ツールはブリッジ(BRDG)の配置とブリッジ(BRDG)の接続設定を自動で行う。
このように、実施形態は、コントローラブロック(CNTR)のブロック名情報とI/Oポート情報とに基づいてブリッジ(BRDG)を配置し、ブリッジ(BRDG)の設定を行うまでを形式的に一つにまとめ自動で行えるようにする。これにより、CAEツール(CAE_T)と仮想ECUシミュレーションツール(vECU_ST)を接続したvHILS環境が自動構築され得る。ユーザにとってはブリッジ(BRDG)の配置と設定に要する時間が削減され得る。また、MILSモデルの変更により使用する信号線の増減があった場合にも、ブリッジ(BRDG)の配置変更と再設定に要する時間が削減され得る。
以下、実施形態の具体例について第一実施例、第二実施例および第三実施例を用いて説明する。
第一実施例における仮想開発環境装置の構成について図4を用いて説明する。
仮想開発環境装置100は、CPU110、第一のメモリとしての主記憶装置120、第二のメモリとしての補助記憶装置130およびそれらを接続するバス140を有する。CPU110および主記憶装置120は処理実行ユニットを構成する。仮想開発環境装置100は、各種の入力装置、ディスプレイおよび通信インターフェイス等を含む構成であってもよい。各種の入力装置は、仮想開発環境装置100への操作入力を受け付ける装置である。各種の入力装置は、例えば、キーボード、ボタンおよびマウスである。ディスプレイは各種情報を表示する装置である。通信インターフェイスは各種データを外部の装置との間で通信する装置である。
仮想開発環境装置100は、例えば、ディスプレイを備える据置型のパーソナルコンピュータである。ただし、仮想開発環境装置100は、これに限られず、後述する機能を有する装置であればよい。仮想開発環境装置100は、例えば、ラップトップ型のパーソナルコンピュータ等であってもよい。
CPU110は補助記憶装置130にインストールされているOS(Operating System)およびアプリケーションプログラムを含む各種プログラムを読み出す。そして、CPU110は読み出したプログラムを主記憶装置120に展開しつつ実行する。
主記憶装置120は、典型的には、SDRAM(Synchronous Dynamic Random Access Memory)などの揮発性記憶媒体である。主記憶装置120は、CPU110によって実行されるOSを含む各種プログラムのコードの他、各種プログラムの実行に必要な各種ワークデータを保持する。補助記憶装置130は、ハードディスクまたはSSD(Solid State Drive)などの不揮発性記憶媒体である。補助記憶装置130はOSを含む各種プログラムの他、各種設計情報などを保持する。なお、主記憶装置120および補助記憶装置130をメモリと総称する場合がある。
CAEツール(CAE_T)121、ビルドツール(BUILD_T)122、仮想ECUシミュレーションツール(vECU_ST)123およびvHILS環境構築ツール(vHILS_ECT)124は主記憶装置120および補助記憶装置130に格納されるソフトウエアプログラムである。なお、図4においては、各ツールは実行時の格納状態が示されている。
CAEツール121はMILSモデルまたはvHILSモデルを使用してシミュレーションを行うツールである。ビルドツール122はビルドを構成するタスク(解析、コンパイル、リンク、テスト実行など)を個別に定義しそれを実行するツールである。ビルドツール122はソースコード(c1)からロードモジュール(c2)を生成する。仮想ECUシミュレーションツール123は仮想ECU(vECU)をシミュレーションするツールである。vHILS環境構築ツール124はvHILSの環境を構築するツールである。vHILS環境構築ツール124はMILSモデル解析部A1を有する。
vHILS環境構築ツール124による処理に先立って、ユーザはCAEツール121上で動作するMILSモデル(m1)を用意して補助記憶装置130に格納する。上述したように、MILSモデル(m1)は制御を実装したコントローラブロック(CNTR)および制御対象のプラントブロック(PLNT)等を有している。
また、ユーザは第一設定情報(a1)および第二設定情報(a2)を用意して補助記憶装置130に格納する。第一設定情報(a1)は、、MILSモデル(m1)に含まれるブロックのうちコントローラブロック(CNTR)に付けられた名称であり、コントローラブロック(CNTR)のブロック名情報である。第二設定情報(a2)は、仮想ECU(vECU)において使用可能なI/Oポートのリストが記載されたI/Oポート情報である。
さらに、ユーザはソースコード一式(c1)を用意して補助記憶装置130に格納する。ソースコード一式(c1)は、アプリコード(c11)、入力用I/Oポートのドライバ(c12)および出力用I/Oポートのドライバ(c13)を含む。アプリコード(c11)は仮想ECU(vECU)において動作させるアプリケーションプログラムのソースコードである。アプリコード(c11)はMILSモデルから生成される。入力用I/Oポートのドライバ(c12)は仮想ECU(vECU)のI/Oポートの初期化設定を行うものである。例えば、ドライバ(c12)は仮想ECU(vECU)のI/Oポートを入力用I/Oポートとして使用する設定を行う。出力用I/Oポートのドライバ(c13)は仮想ECU(vECU)のI/Oポートの初期化設定を行うものである。例えば、ドライバ(c13)は仮想ECU(vECU)のI/Oポートを出力用I/Oポートとして使用する設定を行う。ドライバ(c12)およびドライバ(c13)はユーザが作成する。ビルドツール122はソースコード一式(c1)からロードモジュール(c2)を生成する。
vHILS環境構築ツール124の構成および処理について図5を用いて説明する。
MILSモデル解析部A1は、モデル解析部A1-1、ブリッジ配置部A1-2、I/Oポート設定部A1-3およびブリッジ・ポート接続部A1-4を有している。
MILSモデル解析部A1の処理について図5を用いて説明する。
(モデル解析部A-1)
モデル解析部A1-1は、補助記憶装置130からMILSモデル(m1)および第一設定情報(a1)を読み込む。そして、モデル解析部A1-1は、第一設定情報(a1)からコントローラブロック(CNTR)のブロック名称を取得する。次に、モデル解析部A1-1は、MILSモデル(m1)を解析し、MILSモデル(m1)に含まれる全てのブロックの名称を取得する。モデル解析部A1-1は、取得した全てのブロックの名称からコントローラブロック(CNTR)のブロック名称と一致するものを検索し、コントローラブロック(CNTR)を特定する。モデル解析部A1-1は、コントローラブロック(CNTR)の入力ポートおよび出力ポートの位置を特定し、その位置を第一結果情報(b1)として主記憶装置120に出力する。第一結果情報(b1)はブリッジ(BRDG)の配置位置の情報である。
(ブリッジ配置部A1-2)
ブリッジ配置部A1-2は、補助記憶装置130からMILSモデル(m1)および第一結果情報(b1)を読み込む。そして、ブリッジ配置部A1-2は、第一結果情報(b1)からコントローラブロック(CNTR)の出力ポート情報を取得し、ブリッジ(BRDG)の配置位置であるコントローラブロック(CNTR)の出力ポートに出力ブリッジを配置する。ブリッジ配置部A1-2は、第一結果情報(b1)コントローラブロック(CNTR)の入力ポート情報を取得し、ブリッジ(BRDG)の配置位置であるコントローラブロック(CNTR)の入力ポートに入力ブリッジを配置する。ブリッジ配置部A1-2は、コントローラブロック(CNTR)内のブリッジ(BRDG)以外のブロックを削除する。これにより、ブリッジ(BRDG)を配置したMILSモデルが生成される。ブリッジ配置部A1-2は、ブリッジ(BRDG)が配置されたMILSモデルを第二モデル(m2)として主記憶装置120に出力する。
(I/Oポート設定部A1-3)
I/Oポート設定部A1-3は、主記憶装置120から第二モデル(m2)を読み込む。そして、I/Oポート設定部A1-3は補助記憶装置130から第二設定情報(a2)を読み込み、仮想ECU(vECU)の使用可能なI/Oポートの情報を取得する。I/Oポート設定部A1-3は、仮想ECU(vECU)の使用可能なI/Oポートにコントローラブロック(CNTR)の全ての入力ポートと出力ポートの1対1の対応付けを行う。すなわち、I/Oポート設定部A1-3は、仮想ECU(vECU)の入力用I/Oポートにコントローラブロック(CNTR)の入力ポートを対応付け、仮想ECU(vECU)の出力用I/Oポートにコントローラブロック(CNTR)の出力ポートを対応付ける。これにより、仮想ECU(vECU)のI/Oポートとコントローラブロック(CNTR)の入力ポートおよび出力ポートとの対応付け情報が生成される。I/Oポート設定部A1-3は、対応付け情報を第二結果情報(b2)として主記憶装置120に出力する。
(ブリッジ・ポート接続部A1-4)
ブリッジ・ポート接続部A1-4は、主記憶装置120から第二モデル(m2)および第二結果情報(b2)を読み込む。そして、ブリッジ・ポート接続部A1-4は、ブリッジ(BRDG)と仮想ECUシミュレーションツール123を接続する。具体的は、ブリッジ・ポート接続部A1-4は、第二結果情報(b2)から仮想ECU(vECU)の入力用I/Oポートおよび出力用I/Oポートとコントローラブロック(CNTR)の入力ポートおよび出力ポートとの対応付け情報を得る。ブリッジ・ポート接続部A1-4は、対応付け情報に基づいて、第二モデル(m2)のブリッジ(BRDG)において入力用I/Oポートに入力ポートを対応付け、出力用I/Oポートに出力ポートを対応付ける。すなわち、ブリッジ・ポート接続部A1-4は、仮想ECU(vECU)の入力用I/Oポート情報とコントローラブロック(CNTR)の入力ポート名を取得し、入力ブリッジの入力ポートと入力用I/Oポートと接続する。ブリッジ・ポート接続部A1-4は、仮想ECU(vECU)の出力用I/Oポート情報とコントローラブロック(CNTR)の出力ポート名を取得し、出力ブリッジの出力ポートと出力用I/Oポートを接続する。これにより、ブリッジ(BRDG)と仮想ECU(vECU)のI/Oポートとが対応付けされて接続されたモデルが生成される。ブリッジ・ポート接続部A1-4は、対応付けが完了したモデルをvHILSモデル(m3)として主記憶装置120に出力する。
第一実施例によれば、vHILSによる検証に必要となる、ブリッジ(BRDG)の配置とブリッジ(BRDG)の接続設定が自動で行われる。これにより、ユーザにとってはvHILSによる検証環境の構築時間(作業工数)が削減され得る。また、vHILS環境構築の自動化により、vHILS環境構築時のユーザによるミスが低減され得る。
次に、第二実施例について説明する。第二実施例では、第一実施例におけるvHILS環境構築ツールにI/Oポートドライバ生成部A2をさらに設けて仮想ECU(vECU)のI/Oポートのドライバを自動生成する。
第二実施例における仮想開発環境装置の構成について図6を用いて説明する。
第二実施例における仮想開発環境装置100の構成は第一実施例と同様である。ただし、主記憶装置120および補助記憶装置130に格納されるvHILS環境構築ツール124はMILSモデル解析部A1aおよびI/Oポートドライバ生成部A2を有する。
第二実施例におけるvHILS環境構築ツール124の構成および処理について図7を用いて説明する。
MILSモデル解析部A1aはモデル解析部A1-1、ブリッジ配置部A1-2、I/Oポート設定部A1-3aおよびブリッジ・ポート接続部A1-4を有している。第二実施例におけるモデル解析部A1-1、ブリッジ配置部A1-2およびブリッジ・ポート接続部A1-4は第一実施例と同様の構成である。そして、I/Oポートドライバ生成部A2はドライバ生成部A2-1を有している。
第二実施例におけるモデル解析部A1-1、ブリッジ配置部A1-2およびブリッジ・ポート接続部A1-4は第一実施例と同様の処理を行う。I/Oポート設定部A1-3aの処理について図7を用いて説明する。
(I/Oポート設定部A1-3a)
まず、第一実施例のI/Oポート設定部A1-3と同様に、I/Oポート設定部A1-3aは、主記憶装置120から第二モデル(m2)を読み込む。そして、I/Oポート設定部A1-3aは補助記憶装置130から第二設定情報(a2)を読み込む。そして、I/Oポート設定部A1-3aは、仮想ECU(vECU)のI/Oポートにコントローラブロック(CNTR)の入力ポートおよび出力ポートを対応付ける。そして、I/Oポート設定部A1-3aは、対応付けた結果を第二結果情報(b2)として主記憶装置120に出力する。
次に、I/Oポート設定部A1-3aは、対応付けたI/Oポートの情報を第三結果情報(b3)および第四結果情報(b4)として主記憶装置120に出力する。すなわち、I/Oポート設定部A1-3は、対応付けた入力用I/Oポートの名称を第三結果情報(b3)として出力する。そして、I/Oポート設定部A1-3は、対応付けた出力用I/Oポートの名称を第四結果情報(b4)として出力する。
(I/Oポートドライバ生成部A2)
I/Oポートドライバ生成部A2のドライバ生成部A2-1は、主記憶装置120から第三結果情報(b3)を読み込む。そして、ドライバ生成部A2-1は入力用I/Oポートの名称を取得する。そして、ドライバ生成部A2-1は、取得した入力用I/Oポートの名称に基づいて入力用にI/Oポートの初期化設定を行うドライバコードを生成する。そして、ドライバ生成部A2-1は当該ドライバコードを入力用I/Oポートのドライバ(c12)として補助記憶装置130に出力する。
ドライバ生成部A2-1は、主記憶装置120から第四結果情報(b4)を読み込む。そして、ドライバ生成部A2-1は出力用I/Oポートの名称を取得する。そして、ドライバ生成部A2-1は、取得した出力用I/Oポートの名称に基づいて出力用I/Oポートドライバの初期化設定を行うドライバコードを生成する。そして、ドライバ生成部A2-1は当該ドライバコードを出力用I/Oポートのドライバ(c13)として補助記憶装置130に出力する。
第二実施例によれば、仮想ECU(vECU)のI/Oポートのドライバを自動作成することにより、第一実施例のようにユーザはドライバを作成する必要がなくなる。これにより、ドライバの作成工数およびユーザによるドライバ作成時のミスが削減され得る。
第一実施例および第二実施例では、MILSモデルの入力ポートおよび出力ポートの数に対して仮想ECU(vECU)の使用可能なI/Oポートの数が足りている場合について説明した。第三実施例では仮想ECU(vECU)の使用可能なI/Oポートの数が不足する場合について説明する。
MILSモデルの入力ポートおよび出力ポートの数に対して仮想ECU(vECU)の使用可能なI/Oポートの数が不足する場合のvHILSの構成の方法について図8および図9を用いて説明する。
図8に示すように、コントローラブロック(CNTR)は四個のプラントブロック(PLNT1~PLNT4)を制御対象としている。コントローラブロック(CNTR)は四個の入力ポート(in1~in4)および四個の出力ポート(out1~out4)を有する。四個の出力ポート(out1~out4)はそれぞれ四個のプラントブロック(PLNT1~PLNT4)の入力ポート(i1~i4)に接続されている。例えば、仮想ECU(vECU)の出力用I/Oポート数が二個であるとき、出力用I/Oポートが不足する。
そこで、仮想ECU(vECU)のI/Oポート(IO)が不足する場合、図9に示すように、第一の仮想ECU(vECU1)に第二の仮想ECU(vECU2)およびLIN(Local Interconnect Network)バスを追加する。そして、追加した第二の仮想ECU(vECU2)のI/Oポート(IO)も併用することで、I/Oポートの不足を解消する。
ここで、第一の仮想ECU(vECU1)の四つの入力用I/Oポート(I1~I4)は、出力ブリッジを介してコントローラブロック(CNTR)の四つの入力ポート(in1~in4)と接続される。第一の仮想ECU(vECU1)の二つの出力用I/Oポート(O3,O4)は、入力ブリッジを介してコントローラブロック(CNTR)の二つの出力ポート(out3,out4)と接続される。第二の仮想ECU(vECU2)の二つの出力用I/Oポート(O1,O2)は、入力ブリッジを介してコントローラブロック(CNTR)の二つの出力ポート(out1,out2)と接続される。
なお、第一の仮想ECU(vECU1)において処理された二つの信号は第一の仮想ECU(vECU1)のLINの規格に従って通信制御を行うLINブロック、LINバスおよび第二の仮想ECU(vECU2)のLINブロックを介して第二の仮想ECU(vECU2)の出力用I/Oポート(O1,O2)に出力される。第一の仮想ECU(vECU1)において処理された他の二つの信号は第一の仮想ECU(vECU1)の出力用I/Oポート(O3,O4)に出力される。
第三実施例におけるvHILS環境について図10を用いて説明する。vHILS環境では、MILSモデルのコントローラブロック(CNTR)を第一の仮想ECU(vECU1)および第二の仮想ECU(vECU2)に置き換えてシミュレーションが行われる。そのため、コントローラブロック(CNTR)の入力ポート(in1~in4)と第一の仮想ECU(vECU1)の入力用I/Oポート(I1~I4)とを接続する出力ブリッジが作成される。そして、コントローラブロック(CNTR)の出力ポート(out1,out2)と第二の仮想ECU(vECU2)の出力用I/Oポート(O1,O2)とを接続すると共にコントローラブロック(CNTR)の出力ポート(out3,out4)と第一の仮想ECU(vECU1)の出力用I/Oポート(O3,O4)とを接続する入力ブリッジが作成される。
そして、これらの出力ブリッジと入力ブリッジを合わせたブリッジ(BRDG)をMILSモデルのコントローラブロック(CNTR)と置き換えてvHILSモデルが作成される。また、MILSモデルのコントローラブロック(CNTR)から生成されたソフトウエアプログラムのソースコードはビルドされて第一の仮想ECU(vECU1)のROMにダウンロードされる。CAEツール(CAE_T)内のvHILSモデルと第一の仮想ECUシミュレーションツール(vECU_ST1)内の第一の仮想ECU(vECU1)と第二の仮想ECUシミュレーションツール(vECU_ST2)内の第二の仮想ECU(vECU2)とが接続される。そして、CAEツール(CAE_T)と第一の仮想ECUシミュレーションツール(vECU_ST1)と第二の仮想ECUシミュレーションツール(vECU_ST2)とが共同してシミュレーションが行われる。
第三実施例における仮想開発環境装置の構成について図11を用いて説明する。第三実施例における仮想開発環境装置100の構成は第一実施例と同様である。ただし、主記憶装置120に格納されるvHILS環境構築ツール124はMILSモデル解析部A1bを有する。
第三実施例におけるMILSモデル解析部の構成および処理について図12を用いて説明する。
MILSモデル解析部A1bはモデル解析部A1-1、ブリッジ配置部A1-2、I/Oポート設定部A1-3bおよびブリッジ・ポート接続部A1-4を有している。第三実施例におけるモデル解析部A1-1、ブリッジ配置部A1-2およびブリッジ・ポート接続部A1-4は第一実施例と同様の構成である。第三実施例におけるモデル解析部A1-1、ブリッジ配置部A1-2およびブリッジ・ポート接続部A1-4は第一実施例と同様の処理である。
I/Oポート設定部A1-3bの処理について図13および図14を用いて説明する。
図13に示すように、I/Oポート設定部A1-3は、補助記憶装置130から第二設定情報(a2)を読み込む(ステップS31)。そして、I/Oポート設定部A1-3bは、主記憶装置120から第二モデル(m2)を読み込む(ステップS32)。そして、I/Oポート設定部A1-3は、仮想ECU(vECU)の入力用I/Oポート1つに対しコントローラブロック(CNTR)の入力ポートを1つ対応付け、この対応付けを全て入力ポートに対して行う(ステップS33)。
続いて、I/Oポート設定部A1-3は、仮想ECU(vECU)の出力用I/Oポートの数(Nvop)とコントローラブロック(CNTR)の出力ポートの数(Ncop)を比較する(ステップS3b1)。
仮想ECU(vECU)の出力用I/Oポートの数(Nvop)が出力ポートの数(Ncop)以上の場合、I/Oポート設定部A1-3は、仮想ECU(vECU)の全ての出力用I/Oポートにコントローラブロック(CNTR)の出力ポートを1つずつ対応付ける(ステップS34)。I/Oポート設定部A1-3bは、対応付けた結果を第二結果情報(b2)として出力する(ステップS35)。なお、第一実施例におけるI/Oポート設定部A1-3の処理はステップS31,S32,S33,S34,S35により行われる。
仮想ECU(vECU)の出力用I/Oポートの数(Nvop)が出力ポートの数(Ncop)より少ない場合、図14に示すように、I/Oポート設定部A1-3は、変数(mcu)に1を設定し、変数(uaop)に使用する出力用I/Oポートの数(Ncop)を設定する(ステップS3b2)。そして、I/Oポート設定部A1-3は、仮想ECU(vECU)の全ての出力用I/Oポートにコントローラブロック(CNTR)の出力ポートを1つずつ対応付ける(ステップS3b3)。そして、I/Oポート設定部A1-3は、対応付けた出力ポートを未対応出力ポートの対象から除外する。すなわち、I/Oポート設定部A1-3は、変数(uaop)から割り当てた仮想ECU(vECU)の出力用I/Oポートの数(Naop)を差し引く(ステップS3b4)。
続いて、I/Oポート設定部A1-3は、変数(uaop)と「0」とを比較して対応付けが行われていない出力ポートが残っているかどうかを判断する(ステップS3b5)。
I/Oポート設定部A1-3は、対応付けが行われていない出力ポートが残っている場合(uaop>0)、仮想ECU(vECU)を1つ追加し、変数(mcu)に「1」を加える(ステップS3b6)。そして、I/Oポート設定部A1-3は、追加した仮想ECU(vECU)の全ての出力用I/Oポートにコントローラブロック(CNTR)の出力ポートを1つずつ対応付ける(ステップS3b3)。この処理を全ての出力ポートが出力I/Oポートに対応付けられるまで行う。I/Oポート設定部A1-3は、対応付けが行われていない出力ポートがない場合(uaop=0)、図13に示すステップS35に移る。
MILSモデルの入力ポートの数に対して仮想ECU(vECU)の使用可能な入力用I/Oポートの数が不足する場合のvHILSの構成の方法について図8および図15を用いて説明する。
図8に示すように、コントローラブロック(CNTR)の入力ポートおよび出力ポートの数が4個ずつである場合において、仮想ECU(vECU)の入力用I/Oポート数が2個であるとき、入力用I/Oポートが不足する。
そこで、仮想ECU(vECU)の入力用I/Oポートが不足した場合、図15に示すように、第一の仮想ECU(vECU1)の他に第二の仮想ECU(vECU2)を追加する。そして、追加した第二の仮想ECU(vECU2)のI/Oポートも併用することで、I/Oポートの不足を解消する。
ここで、第一の仮想ECU(vECU1)の二つの入力用I/Oポート(I3,I4)は、出力ブリッジを介してコントローラブロック(CNTR)の二つの入力ポート(in3,in4)と接続される。第一の仮想ECU(vECU1)の四つの出力用I/Oポート(O1~O4)は、入力ブリッジを介してコントローラブロック(CNTR)の四つの出力ポート(out1~out4)と接続される。第二の仮想ECU(vECU2)の二つの入力用I/Oポート(I1,I2)は、出力ブリッジを介してコントローラブロック(CNTR)の二つの入力ポート(in1,in2)と接続される。
なお、第二の仮想ECU(vECU2)のI/Oポート(IO)に入力された二つの信号は第二の仮想ECU(vECU2)のLINブロック、LINバスおよび第一の仮想ECU(vECU1)のLINブロックを介して第一の仮想ECU(vECU1)で処理される。第一の仮想ECU(vECU1)のI/Oポート(IO)に入力された二つの信号は第一の仮想ECU(vECU1)において処理される。第一の仮想ECU(vECU1)において処理された四つの信号は第一の仮想ECU(vECU1)の出力用I/Oポート(O1~O4)に出力される。
I/Oポート設定部A1-3bは、入力用I/Oポートが不足した場合も出力用I/Oポートが不足した場合と同様の処理を行い、第三結果情報(b3)として出力する。
第三実施例によれば、仮想ECU(vECU)のI/Oポートの不足が発生する場合でも、自動でI/Oポートの不足を解消することができ、I/Oポートの不足の対応時の対応工数を削減できる。また、使用するECUの確定する前の検討において、必要になるI/Oポート数が明確になることにより、使用するECUのターゲットスペックを決めることができる。
[第三実施例の変形例]
第三実施例では、I/Oポートの数が不足する場合、複数の仮想ECU(vECU)のI/Oポートを併用する例を説明した。制御対象(プラント)が複数ある場合、特定の複数のプラントが一つのECUにより制御されることが好ましい場合がある。
例えば、複数の制御対象が同時に動作する必要がある場合、ECUが同時に信号を出力する必要がある。そのような組み合わせや、同等・類似の制御対象が複数ある場合、配線上で近い場所に配置される可能性が高い。また、複数の制御対象において、ある制御対象を駆動させた後に、他の制御対象を駆動する、というような、制御対象に依存関係がある(制御対象に優先度がある)場合、ECUがタイミング差を維持して信号を出力する必要がある。
本変形例では、これらの場合、一つのECUに優先的にこれらの複数の制御対象を割り当てる。
MILSモデルの出力ポートの数に対して仮想ECU(vECU)の使用可能な出力用I/Oポートの数が不足する場合の変形例におけるvHILSの構成の方法について図8および図16を用いて説明する。
図8に示すように、コントローラブロック(CNTR)の入力ポートおよび出力ポートの数が4個ずつである場合において、仮想ECU(vECU)の出力用I/Oポート数が2個であるとき、出力用I/Oポートが不足する。ここで、図8において一点破線により囲まれた第二のプラントブロック(PLNT2)および第四のプラントブロック(PLNT4)は優先度を有する制御対象である。
そこで、仮想ECU(vECU)のI/Oポートが不足した場合、図16に示すように、優先度を考慮して第一の仮想ECU(vECU1)に第二の仮想ECU(vECU2)およびLINバスを追加する。追加した第二の仮想ECU(vECU2)のI/Oポートも併用することで、I/Oポートの不足を解消することができる。
仮想ECU(vECU)のI/Oポートとコントローラブロック(CNTR)の入力ポートおよび出力ポートの対応付けの際に、例えば、ECUの近くにプラントが配置されるものを優先的に対応付ける。例えば、図16に示すように、第二のプラントブロック(PLNT2)と第四のプラントブロック(PLNT4)とは近くに配置されるので、第二のプラントブロック(PLNT2)と第四のプラントブロック(PLNT4)とは同一の第一の仮想ECU(vECU1)により制御するようにする。第一のプラントブロック(PLNT1)と第三のプラントブロック(PLNT3)には配置の制約はないので、第二の仮想ECU(vECU2)により制御するようにする。
ここで、第一の仮想ECU(vECU1)の四つの入力用I/Oポート(I1~I4)は、出力ブリッジを介してコントローラブロック(CNTR)の四つの入力ポート(in1~in4)と接続される。第一の仮想ECU(vECU1)の二つの出力用I/Oポート(O2,O4)は、入力ブリッジを介してコントローラブロック(CNTR)の二つの出力ポート(out2,out4)と接続される。第二の仮想ECU(vECU2)の二つの出力用I/Oポート(O1,O3)は、入力ブリッジを介してコントローラブロック(CNTR)の一つの出力ポート(out1,out3)と接続される。
なお、第一の仮想ECU(vECU1)において処理された二つの信号は第一の仮想ECU(vECU1)のLINブロック、LINバスおよび第二の仮想ECU(vECU2)のLINブロックを介して第二の仮想ECU(vECU2)の出力用I/Oポート(O1,O3)に出力される。第一の仮想ECU(vECU1)において処理された他の二つの信号は第一の仮想ECU(vECU1)の出力用I/Oポート(O2,O4)に出力される。
本変形例における仮想開発環境装置の構成および処理について図17を用いて説明する。本変形例における仮想開発環境装置100の構成は第三実施例と同様である。ただし、主記憶装置120に格納されるvHILS環境構築ツール124はMILSモデル解析部A1cを有する。また、MILSモデル(m1)、第一設定情報(a1)および第二設定情報(a2)に加えて第三設定情報(a3)が補助記憶装置130に格納される。第三設定情報(a3)は一つの仮想ECU(vECU)のI/Oポートに優先的に割り付けるプラントブロック(PLNT)、すなわち、コントローラブロック(CNTR)の出力ポートの情報であり、優先ポート情報ともいう。
本変形例におけるMILSモデル解析部の構成について図18を用いて説明する。MILSモデル解析部A1cはモデル解析部A1-1、ブリッジ配置部A1-2、I/Oポート設定部A1-3cおよびブリッジ・ポート接続部A1-4を有している。第三実施例の変形例におけるモデル解析部A1-1、ブリッジ配置部A1-2およびブリッジ・ポート接続部A1-4は第三実施例と同様の構成である。
本変形例におけるMILSモデル解析部A1cの処理について図18を用いて説明する。本変形例におけるモデル解析部A1-1、ブリッジ配置部A1-2およびブリッジ・ポート接続部A1-4は第一実施例と同様の処理である。
I/Oポート設定部A1-3cの処理について図19および図20を用いて説明する。
図19に示すように、本変形例のステップS31,S32,S33,S34,S35は第三実施例の処理と同様である。また、図20に示すように、本変形例のステップS3b2,S3b3,S3b4,S3b5,S3b6は第三実施例の処理と同様である。以下、第三実施例とは異なる処理について説明する。
図19に示すように、I/Oポート設定部A1-3は、後述するステップ3c3よりも前に第三設定情報(a3)を読み込む。
図20に示すように、ステップS3b2の後、I/Oポート設定部A1-3は、変数(mcu)と「1」とを比較する(ステップS3c2)。I/Oポート設定部A1-3は、最初の仮想ECU(vECU)のI/Oポートへの割り付けの場合、第三設定情報(a3)に基づいて仮想ECU(vECU)の全出力用I/Oポートに未対応出力ポートを割り付ける(ステップS3c3)。I/Oポート設定部A1-3は、二つ目以降の仮想ECU(vECU)のI/Oポートへの割り付けの場合、仮想ECU(vECU)の全出力用I/Oポートに未対応出力ポートを対応付ける(ステップS3c3)。
例えば、複数のプラントが近接している場合、これらを同じECUでコントロールすることで、ECU実装時の配線を短くできる。これにより、実行速度の向上等の性能を改善およびコストの低減を考慮した、I/Oポートの不足が解消できる。
上述の実施例において説明したような処理を実行させるプログラムは、コンピュータに付属するHDD等の磁気ディスク、CD等の光ディスク、MO等の光磁気ディスクおよびUSBメモリ等の半導体メモリなどの一時的でないコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
以上、本開示者らによってなされた開示を実施形態、実施例および変形例に基づき具体的に説明したが、本開示は上記実施形態、実施例および変形例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
100・・・仮想開発環境装置
110・・・CPU(中央処理装置)
120・・・主記憶装置(第一のメモリ)
130・・・補助記憶装置(第二のメモリ)

Claims (12)

  1. MILSモデルのシミュレーションと仮想ECUのシミュレーションとが共同してvHILSを行う仮想開発環境装置であって、
    中央処理装置と第一のメモリとを含む処理実行ユニットと、
    入力ポートおよび出力ポートを含むコントローラブロックと前記コントローラブロックの制御対象であるプラントブロックとを含む前記MILSモデルと、前記MILSモデル内のコントローラブロックを特定するための第一設定情報と、前記仮想ECUのシミュレーションの実行の際に利用される前記コントローラブロックの機能を実現するプログラムと、前記仮想ECUにおいて使用可能なI/Oポートのリストが記載された第二設定情報と、を記憶する第二のメモリと、を備え、
    前記処理実行ユニットは、
    前記第一設定情報に基づいて前記MILSモデル内のコントローラブロックを特定し、
    前記特定したコントローラブロックの前記入力ポートおよび前記出力ポートに、前記入力ポートおよび前記出力ポートと前記仮想ECUのI/Oポートとを接続するためのブリッジを配置し、
    前記第二設定情報に基づいて前記ブリッジと前記仮想ECUのI/Oポートを接続するよう構成される、
    仮想開発環境装置。
  2. 請求項1の仮想開発環境装置において、
    前記仮想ECUのI/Oポートは入力用I/Oポートと出力用I/Oポートを備え、
    前記処理実行ユニットは、
    前記特定されたコントローラブロックの前記入力ポートおよび前記出力ポートの位置を第一結果情報として生成し、
    前記第一結果情報に基づいて前記出力ポートおよび前記入力ポートに前記ブリッジを配置した第二モデルを生成し、
    前記第二設定情報および前記第二モデルに基づいて前記仮想ECUのI/Oポートに前記入力ポートまたは前記出力ポートを対応付けた第二結果情報を生成し、
    前記第一結果情報および第二結果情報に基づいて前記ブリッジにおける前記入力ポートおよび出力ポートと前記入力用I/Oポートおよび前記出力用I/Oポートとをそれぞれ接続したvHILSモデルを生成するよう構成される、
    仮想開発環境装置。
  3. 請求項2の仮想開発環境装置において、
    前記処理実行ユニットは、
    前記第一設定情報に基づいて前記コントローラブロックのブロック名を取得し、前記MILSモデル内の全てのブロックのブロック名を取得し、
    前記取得したブロック名に基づいて前記MILSモデル内のコントローラブロックを検索して特定するよう構成される、
    仮想開発環境装置。
  4. 請求項3の仮想開発環境装置において、
    前記処理実行ユニットは、
    前記第一結果情報から前記コントローラブロックの出力ポート情報を取得し、
    取得した出力ポート情報に基づいて前記コントローラブロックの前記出力ポートに入力ブリッジを配置し、
    前記第一結果情報から前記コントローラブロックの入力ポート情報を取得し、
    取得した入力ポート情報に基づいて前記コントローラブロックの前記入力ポートに出力ブリッジを配置し、
    前記コントローラブロック内の前記入力ブリッジおよび前記出力ブリッジ以外のブロックを削除して、前記第二モデルを生成するよう構成される、
    仮想開発環境装置。
  5. 請求項4の仮想開発環境装置において、
    前記処理実行ユニットは、前記第二設定情報および前記第二モデルに基づいて、前記仮想ECUの入力用I/Oポートに前記入力ポートを対応付けると共に、前記仮想ECUの出力用I/Oポートに前記出力ポートを対応付けて、前記第二結果情報を生成するよう構成される、
    仮想開発環境装置。
  6. 請求項5の仮想開発環境装置において、
    前記処理実行ユニットは、
    前記第二モデルおよび前記第二結果情報から入力用I/Oポート情報および入力ポート名を取得し、
    前記取得した入力用I/Oポート情報および入力ポート名に基づいて前記出力ブリッジにおける前記入力ポートと前記入力用I/Oポートとを接続し、
    前記第二モデルおよび前記第二結果情報から出力用I/Oポート情報および出力ポート名を取得し、
    前記取得した出力用I/Oポート情報および出力ポート名に基づいて前記入力ブリッジにおける前記出力ポートと前記出力用I/Oポートとを接続して、
    前記vHILSモデルを生成するよう構成される、
    仮想開発環境装置。
  7. 請求項5の仮想開発環境装置において、
    前記処理実行ユニットは、
    前記仮想ECUのI/Oポートと前記入力ポートまたは前記出力ポートとを対応付けた対応付け情報を取得し、
    前記対応付け情報に基づいてI/Oポートの初期化設定を行うドライバコードを生成するよう構成される、
    仮想開発環境装置。
  8. 請求項7の仮想開発環境装置において、
    前記対応付け情報は、前記入力ポートに対応付けた入力用I/Oポートの名称および前記出力ポートに対応付けた出力用I/Oポートの名称であり、
    前記処理実行ユニットは、
    前記入力用I/Oポートの名称に基づいて前記入力用I/Oポートの初期化設定を行う入力用ドライバコードを生成し、
    前記出力用I/Oポートの名称に基づいて前記出力用I/Oポートの初期化設定を行う出力用ドライバコードを生成するよう構成される、
    仮想開発環境装置。
  9. 請求項2の仮想開発環境装置において、
    前記処理実行ユニットは、
    前記第二設定情報および前記第二モデルに基づいて、前記仮想ECUの入力用I/Oポートに前記入力ポートを対応付け、
    前記仮想ECUの出力用I/Oポートの数が前記出力ポートの数よりも少ない場合、仮想ECUを追加し、
    前記第二設定情報および前記第二モデルに基づいて、前記仮想ECUの出力用I/Oポートおよび追加した前記仮想ECUの出力用I/Oポートに前記出力ポートを対応付け、
    前記第二結果情報を生成するよう構成される、
    仮想開発環境装置。
  10. 請求項9の仮想開発環境装置において、
    前記第二のメモリは、さらに、前記仮想ECUのI/Oポートに優先的に接続する出力ポートを特定する第三設定情報を記憶し、
    前記処理実行ユニットは、
    前記第二設定情報、前記第二モデルおよび第三設定情報に基づいて、前記仮想ECUの出力用I/Oポートおよび追加した前記仮想ECUの出力用I/Oポートに前記出力ポートを対応付けて、前記第二結果情報を生成するよう構成される、
    仮想開発環境装置。
  11. 中央処理装置とメモリとを備え、MILSモデルのシミュレーションと仮想ECUのシムレーションとが共同してvHILSを行う仮想開発環境装置において実行される方法であって、
    前記メモリは、入力ポートおよび出力ポートを含むコントローラブロックと前記コントローラブロックの制御対象であるプラントブロックとを含む前記MILSモデルと、前記MILSモデル内のコントローラブロックを特定するための第一設定情報と、前記仮想ECUのシミュレーションの実行の際に利用される前記コントローラブロックの機能を実現するプログラムと、前記仮想ECUにおいて使用可能なI/Oポートのリストが記載された第二設定情報と、を記憶し、
    前記第一設定情報に基づいて前記MILSモデル内のコントローラブロックを特定し、
    前記特定したコントローラブロックの前記入力ポートおよび前記出力ポートに、前記入力ポートおよび前記出力ポートと前記仮想ECUのI/Oポートとを接続するためのブリッジを配置し、
    前記第二設定情報に基づいて前記ブリッジと前記仮想ECUのI/Oポートを接続する方法。
  12. 中央処理装置とメモリとを備え、MILSモデルのシミュレーションと仮想ECUのシムレーションとが共同してvHILSを行う仮想開発環境装置において実行されるプログラムを非一時的に記録し、コンピュータ読み取り可能な記録媒体であって、
    前記メモリは、入力ポートおよび出力ポートを含むコントローラブロックと前記コントローラブロックの制御対象であるプラントブロックとを含む前記MILSモデルと、前記MILSモデル内のコントローラブロックを特定するための第一設定情報と、前記仮想ECUのシミュレーションの実行の際に利用される前記コントローラブロックの機能を実現するプログラムと、前記仮想ECUにおいて使用可能なI/Oポートのリストが記載された第二設定情報と、を記憶し、
    前記第一設定情報に基づいて前記MILSモデル内のコントローラブロックを特定する手順と、
    前記特定したコントローラブロックの前記入力ポートおよび前記出力ポートに、前記入力ポートおよび前記出力ポートと前記仮想ECUのI/Oポートとを接続するためのブリッジを配置する手順と、
    前記第二設定情報に基づいて前記ブリッジと前記仮想ECUのI/Oポートを接続する手順とを実行させるプログラムを記録する記録媒体。
JP2021116022A 2021-07-13 2021-07-13 仮想開発環境装置、方法および記録媒体 Pending JP2023012395A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021116022A JP2023012395A (ja) 2021-07-13 2021-07-13 仮想開発環境装置、方法および記録媒体
US17/835,556 US11966718B2 (en) 2021-07-13 2022-06-08 Virtual developmental environment apparatus, method, and recording medium
CN202210774493.9A CN115617009A (zh) 2021-07-13 2022-07-01 虚拟开发环境装置、方法和记录介质
EP22183361.9A EP4134861A3 (en) 2021-07-13 2022-07-06 Virtual developmental environment apparatus, method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021116022A JP2023012395A (ja) 2021-07-13 2021-07-13 仮想開発環境装置、方法および記録媒体

Publications (1)

Publication Number Publication Date
JP2023012395A true JP2023012395A (ja) 2023-01-25

Family

ID=82399329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021116022A Pending JP2023012395A (ja) 2021-07-13 2021-07-13 仮想開発環境装置、方法および記録媒体

Country Status (4)

Country Link
US (1) US11966718B2 (ja)
EP (1) EP4134861A3 (ja)
JP (1) JP2023012395A (ja)
CN (1) CN115617009A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102595323B1 (ko) * 2023-06-27 2023-10-31 주식회사 드림에이스 차량용 임베디드 시스템을 위한 가상 ecu 검증 시스템및 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023012395A (ja) * 2021-07-13 2023-01-25 ルネサスエレクトロニクス株式会社 仮想開発環境装置、方法および記録媒体

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9122460B2 (en) * 2008-08-28 2015-09-01 Red Hat, Inc. Application development using middleware platform
JP6692278B2 (ja) 2016-11-15 2020-05-13 ルネサスエレクトロニクス株式会社 演算装置及び仮想開発環境装置
JP2019086996A (ja) * 2017-11-07 2019-06-06 ルネサスエレクトロニクス株式会社 シミュレーション装置及びプログラム
EP3832517A1 (de) * 2019-12-02 2021-06-09 dspace digital signal processing and control engineering GmbH Computerimplementiertes verfahren zur einbindung mindestens eines signalwerts in einem virtuellen steuergerät
DE102019219067A1 (de) * 2019-12-06 2021-06-10 Volkswagen Aktiengesellschaft Verfahren zur automatischen Qualifizierung eines virtuellen Modells für eine Kraftfahrzeugkomponente
JP7336775B2 (ja) * 2021-03-19 2023-09-01 パナソニックIpマネジメント株式会社 検証システム、検証方法及びプログラム
CN112803563B (zh) * 2021-04-12 2021-07-06 成都市易冲半导体有限公司 用于低感量无线充电系统的低压启动电路及无线充电系统
JP2023012395A (ja) * 2021-07-13 2023-01-25 ルネサスエレクトロニクス株式会社 仮想開発環境装置、方法および記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102595323B1 (ko) * 2023-06-27 2023-10-31 주식회사 드림에이스 차량용 임베디드 시스템을 위한 가상 ecu 검증 시스템및 방법

Also Published As

Publication number Publication date
EP4134861A3 (en) 2023-03-22
CN115617009A (zh) 2023-01-17
US20230013854A1 (en) 2023-01-19
EP4134861A2 (en) 2023-02-15
US11966718B2 (en) 2024-04-23

Similar Documents

Publication Publication Date Title
JP5791792B2 (ja) 工作機械の工作プロセスをシミュレーションするシミュレーション方法およびシミュレーションシステム
US11314907B2 (en) Simulation including multiple simulators
EP4134861A2 (en) Virtual developmental environment apparatus, method, and recording medium
JP6378128B2 (ja) 性能検証装置、システム、方法、およびコンピュータに当該方法を実行させるためのプログラム
US10095194B2 (en) Method for configuring a test device set up for testing an electronic control unit
JPWO2016189689A1 (ja) プログラム生成装置、プログラム生成方法及びプログラム生成プログラム
US10133594B1 (en) Flexible physical function and virtual function mapping
US7469201B2 (en) Process and means for block-based modeling
US20190102149A1 (en) Method for providing an integrated process for control unit development and a simulation device for control unit development
US10055363B2 (en) Method for configuring an interface unit of a computer system
JP2020057385A (ja) ソースコード作成のためのモデルの変更方法
CN109117431A (zh) 用于将来自源应用的源数据合并至目标应用的目标数据的系统和方法
US20190196925A1 (en) Configuration system for configuring a test system suitable for testing an electronic control unit
US8707256B2 (en) System for writing a simulation program
US10386806B2 (en) Method for connecting models of technical systems in a testing device equipped for control unit development
JP2022136983A (ja) システム試験手順を使用する統合試験手順の自動生成
US10223077B2 (en) Determination of signals for readback from FPGA
JPH1091677A (ja) シミュレーション/エミュレーションの効率を増すための論理変換方法
JP3171182B2 (ja) 機能合成方法,機能合成装置およびその記録媒体
US20240184538A1 (en) Method for configuring model components of a system model
JP3246462B2 (ja) C言語回路モデルを用いた機能合成方法およびそのプログラムを記録した記録媒体
JP5906800B2 (ja) Lsiモデルの記述ファイル、シミュレーションシステム、デバッグ方法
CN111953511B (zh) 目标成像处理的半实物仿真系统的仿真网络组网方法及系统
Krenczyk et al. Practical example of the integration of planning and simulation systems using the RapidSim software
US20130338992A1 (en) Method for simulating a system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231221