JP4413209B2 - Simulation device - Google Patents
Simulation device Download PDFInfo
- Publication number
- JP4413209B2 JP4413209B2 JP2006199546A JP2006199546A JP4413209B2 JP 4413209 B2 JP4413209 B2 JP 4413209B2 JP 2006199546 A JP2006199546 A JP 2006199546A JP 2006199546 A JP2006199546 A JP 2006199546A JP 4413209 B2 JP4413209 B2 JP 4413209B2
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- data
- simulator
- related data
- network
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Multi Processors (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、シミュレーションを、ネットワークを介して接続された複数のシミュレーション装置で分散して行なう分散型シミュレーションシステムにおけるシミュレーション装置に関し、例えば、評価対象である制御系と接続され、前記制御系により制御される被制御系を模擬する複数のシミュレータと、各シミュレータを管理して前記制御系を評価するホストコンピュータとをネットワーク接続して構成され、各シミュレータが所定の単位模擬演算処理を所定周期で繰り返すことにより前記被制御系全体を模擬する分散型シミュレーションシステムにおけるシミュレーション装置に関する。 The present invention relates to a simulation apparatus in a distributed simulation system in which simulation is performed in a distributed manner by a plurality of simulation apparatuses connected via a network. For example, the simulation apparatus is connected to a control system to be evaluated and controlled by the control system. A plurality of simulators that simulate the controlled system and a host computer that manages each simulator and evaluates the control system, and each simulator repeats a predetermined unit simulation operation process at a predetermined cycle The present invention relates to a simulation apparatus in a distributed simulation system that simulates the entire controlled system.
近年、様々な分野において、実際の装置やプラントにおけるメカニズムや電気的信号等の果たす役割を数式化したモデルをコンピュータに演算させる、つまり、仮想空間においてシミュレーションすることにより、現実の実証実験を行なうことなく製品特性の確認や起こり得る問題の抽出を可能とするシミュレーション装置が利用されている。前記シミュレーション装置を利用することで製品開発に要する期間やコストを削減し、製品開発に係る安全性を向上させることができる。 In recent years, in various fields, actual demonstration experiments are performed by causing a computer to calculate a mathematical model of the role played by mechanisms and electrical signals in actual devices and plants, that is, by simulating in a virtual space. There are also used simulation apparatuses that enable confirmation of product characteristics and extraction of possible problems. By using the simulation apparatus, the time and cost required for product development can be reduced, and the safety associated with product development can be improved.
複雑な装置やプラント等のシステムに対応して多数の複雑なモデルを処理する必要のある場合に単体のシミュレーション装置では演算速度を律するハードウェアによる限界や、ソフトウェアの開発負荷の増大による限界等があるため、モデルを複数に分割し、各モデルに対応した複数のシミュレーション装置を相互にネットワーク接続した分散型シミュレーションシステムが多く利用されている。 When it is necessary to process a large number of complex models corresponding to a system such as a complex device or a plant, a single simulation device has limitations due to hardware that regulates the calculation speed and limitations due to an increase in software development load. For this reason, a distributed simulation system is often used in which a model is divided into a plurality of parts and a plurality of simulation apparatuses corresponding to each model are connected to each other via a network.
このような分散型シミュレーションシステムは、各シミュレーション装置が所定の単位模擬演算処理を所定周期で繰り返すことによりシステム全体を模擬するものであるが、正確なシミュレーションを行なうためには、シミュレーション実行時におけるシミュレーション装置間の同期と、シミュレーション実行時におけるデータの整合性の確保が重要である。 In such a distributed simulation system, each simulation device simulates the entire system by repeating a predetermined unit simulation operation process at a predetermined cycle. To perform an accurate simulation, a simulation at the time of simulation execution is performed. It is important to ensure synchronization between devices and data consistency during simulation execution.
例えば、特許文献1には、複数台の計算機上に構築された互いに異なるシミュレーションモデルと、上記各シミュレーションモデルの実行状態を管理するシナリオマネージャ装置と、上記各シミュレーションモデルとシナリオマネージャ装置を接続し、上記各シミュレーションモデルとのインターフェース仕様を規定し、上記シミュレーションモデル間におけるデータ送受信及びシミュレーション進行制御を行なうシミュレーションプラットフォームを備えた分散シミュレーション装置が記載されている。 For example, Patent Literature 1 connects different simulation models built on a plurality of computers, a scenario manager device that manages the execution state of each simulation model, and each simulation model and scenario manager device, A distributed simulation apparatus including a simulation platform that defines interface specifications with the simulation models and performs data transmission and reception and simulation progress control between the simulation models is described.
特許文献1には、各シミュレーションモデル間の時刻同期を正確に行なうために、各シミュレーションモデルはシミュレーションへの参加通知、初期設定処理終了通知及びシミュレーション処理終了通知を上記シミュレーションプラットフォーム経由で上記シナリオマネージャ装置に送信する手段を有し、上記シナリオマネージャ装置は上記各シミュレーションモデルからのメッセージを元に上記各シミュレーションモデルの実行状態及びシミュレーションへの参加状況を管理するシミュレーション管理情報を保守・管理し、上記各シミュレーションに対して初期設定処理開始、シミュレーション実行開始、実行終了、再実行開始等を指示するメッセージを上記シミュレーションプラットフォームを介して送信する手段を有し、上記シナリオマネージャ装置は上記各シミュレーションモデルに対してシミュレーションの再実行時にシミュレーション時刻値の小数点以下を切り上げた値を送信し、上記各シミュレーションモデルが上記シミュレーション時刻値を受信して、上記補正時刻までシミュレーションを進行する機能を有することを特徴とする分散シミュレーション装置が提案されている。
In
特許文献2には、各シミュレーションモデル間の同期を取る方法として、計算機をネットワーク上に複数台接続し、上記各計算機上で動作するシミュレーションモデルを構築し、上記各シミュレーションモデルとのインターフェース仕様を規定し、上記インターフェースを通して上記各シミュレーションモデルと接続されたシミュレーションプラットフォームを有し、上記各シミュレーションモデルは自モデルの状態や他モデルとやりとりを行なうデータなどの自モデルが保持する属性を上記シミュレーションプラットフォームへ送信し、上記シミュレーションプラットフォームは上記モデルの属性を購読したいシミュレーションモデルに対して、上記モデルの属性を送信することによって上記シミュレーションモデル間のデータ通信を可能にする分散シミュレーション装置において、上記各シミュレーションモデルはシミュレーションの進行に際して独自に進行せずに、上記シミュレーションプラットフォームに対して進行要求を送信し、上記進行要求に対して上記シミュレーションプラットフォームから進行許可が降りた場合にのみシミュレーションを進行させることを特徴とする分散シミュレーション方法が提案されている。 In Patent Document 2, as a method of synchronizing each simulation model, a plurality of computers are connected on a network, a simulation model that operates on each computer is constructed, and interface specifications with each simulation model are defined. The simulation platform is connected to each simulation model through the interface, and each simulation model transmits to the simulation platform attributes held by the own model such as the state of the own model and data exchanged with other models. The simulation platform can communicate data between the simulation models by sending the model attributes to the simulation model that you want to subscribe to the model attributes. In the distributed simulation apparatus, when each simulation model does not proceed independently when the simulation proceeds, a progress request is transmitted to the simulation platform, and the progress permission is granted from the simulation platform in response to the progress request. There has been proposed a distributed simulation method characterized in that the simulation is advanced only in the case of.
特許文献3には、シミュレータ間のデータを同一に保つ技術として、複数のシミュレータがネットワークを介しデータを交換しながら統合してシミュレーションを行なう分散シミュレーションの制御装置において、上記シミュレータとのインターフェースを行なうインターフェース機能部と、上記各シミュレータに対応して分散配置され、上記インターフェース機能部を介して上記シミュレータとデータ交換を行いながら上記シミュレータ間のデータ送受信の制御およびシミュレーション進行制御を行なうシミュレーション制御機能部と、上記各シミュレーション制御機能部毎に分散配置され、上記シミュレータ間で交換されるデータ、および制御に必要なデータからなるシミュレーションデータを保有し、データ変更が生じた場合にはネットワークを介してデータ送受信を行い絶えずデータ内容を同一に保持することにより、全ての上記シミュレーション制御機能部がお互いに自由に上記シミュレーションデータを共有することが可能で、かつ上記各シミュレーション制御機能部からアクセス可能なシミュレーションデータ用分散共有メモリと、上記シミュレーション制御機能部が上記シミュレーションデータ用分散共有メモリの内容を変更したときに、変更した上記シミュレーション制御機能部が他の全てのシミュレーション制御機能部に対して変更があったことを知らせるメッセージを送信するメッセージ伝送機能部とを備えたことを特徴とする分散シミュレーション制御装置が提案されている。 In Patent Document 3, as a technique for maintaining the same data between simulators, an interface for interfacing with the simulator in a distributed simulation control apparatus in which a plurality of simulators integrate and perform simulation while exchanging data via a network. A function control unit and a simulation control function unit that is distributed corresponding to each of the simulators and performs data transmission / reception control and simulation progress control between the simulators while exchanging data with the simulator via the interface function unit; Each simulation control function unit is distributed and distributed, and holds simulation data consisting of data exchanged between the simulators and data necessary for control. By transmitting and receiving data through the workpiece and constantly maintaining the same data content, all the simulation control function units can freely share the simulation data with each other, and from each simulation control function unit When the distributed shared memory for simulation data accessible and the simulation control function unit changes the contents of the distributed shared memory for simulation data, the changed simulation control function unit applies to all other simulation control function units. There has been proposed a distributed simulation control apparatus comprising a message transmission function unit that transmits a message notifying that a change has occurred.
特許文献1においては前記各シミュレーションモデルがシミュレーションを開始する時点で同期を取り、特許文献2においては前記各シミュレーションモデルがシミュレーションの実行時間を進める時点でシミュレーション実行の同期をとるが、シミュレーション実行中においてはデータ整合の同期を取っておらず、前記各シミュレーションモデルが実行するシミュレーションの処理にずれが生ずると、前記各シミュレーションモデル間でのデータの整合性が取れず、未更新のデータによりシミュレーションが実行される虞があった。
In
特許文献3においてはシミュレーション実行前に各シミュレータ間のデータの整合性を取る処理を1度実行するが、各シミュレータが実行するシミュレーションは、実際にはデータ入力処理、演算処理、データ出力処理など複数の処理から構成されており、シミュレーション実行中のデータの整合性が常に確保されるというものではなかった。 In Patent Document 3, a process for obtaining data consistency between simulators is executed once before the simulation is executed. However, the simulation executed by each simulator is actually a plurality of data input processes, arithmetic processes, data output processes, and the like. Therefore, the consistency of data during simulation execution is not always ensured.
本発明は、各シミュレーション装置による単位模擬演算処理の実行開始時及び実行中に、各シミュレーション装置間のデータの整合性が確保できるシミュレーション装置を提供することを目的とする。 It is an object of the present invention to provide a simulation apparatus that can ensure data consistency between simulation apparatuses at the start and during execution of unit simulation operation processing by each simulation apparatus.
上述の目的を達成するため、本発明によるシミュレーション装置の特徴構成は、複数の外部装置との間でのデータの入出力を行なう模擬対象装置についてのシミュレーションを、ネットワークを介して接続された複数のシミュレーション装置で分散して行なう分散型シミュレーションシステムであり、複数の機能ブロックで構成される前記模擬対象装置のシミュレーションを、それぞれの機能ブロックのシミュレーションを行なうシミュレーション装置間をネットワークで接続し、それぞれのシミュレーション装置が、自身がシミュレーションする機能ブロックとの関連性が高い外部装置と前記ネットワークとは異なる通信線で接続される構成で、行なう分散型シミュレーションシステムにおけるシミュレーション装置であって、前記外部装置からデータの入力を行なう入力ステップと、前記入力ステップで入力されたデータを用いてモデル演算を行なうモデル演算ステップと、前記モデル演算ステップの演算で得られたデータを前記外部装置に出力する出力ステップとを含む、一連の処理を繰り返し行なうことによってシミュレーションを行なうシミュレーション実行手段と、前記一連の処理における前記モデル演算ステップと前記出力ステップの開始前に、分散型シミュレーションシステムを構成する他のシミュレーション装置と関連する関連データを、当該他のシミュレーション装置に送信することによってデータの共有化処理を行なうデータ共有手段とを備える点にある。 In order to achieve the above-described object, the characteristic configuration of the simulation apparatus according to the present invention is that a simulation of a simulation target apparatus that inputs and outputs data to and from a plurality of external apparatuses is performed via a plurality of networks. This is a distributed simulation system that is distributed by a simulation device. The simulation of the simulation target device composed of a plurality of functional blocks is connected by a network between the simulation devices that simulate the respective functional blocks. device, a configuration that is connected with a different communication line between the network and the relevant high external device with functional blocks itself simulation, a simulation device in a distributed simulation system for performing the external instrumentation An input step for inputting data from a model, a model calculation step for performing a model calculation using the data input in the input step, and an output step for outputting the data obtained by the calculation in the model calculation step to the external device Including a simulation execution means for performing simulation by repeatedly performing a series of processes, and another simulation apparatus constituting a distributed simulation system before the start of the model calculation step and the output step in the series of processes, And a data sharing means for performing data sharing processing by transmitting related related data to the other simulation apparatus.
上述の構成によれば、シミュレーション装置は、データ共有手段により他のシミュレーション装置と関連する関連データが送信された後にモデル演算ステップと出力ステップが実行されるようになり、各シミュレーション装置間で整合の取れた関連データに基づいて各種の演算処理が実行されるようになる。 According to the above-described configuration, the simulation apparatus is configured to execute the model calculation step and the output step after the related data related to the other simulation apparatus is transmitted by the data sharing unit. Various arithmetic processes are executed based on the obtained related data.
以上説明した通り、本発明によれば、各シミュレーション装置による単位模擬演算処理の実行開始時及び実行中に、各シミュレーション装置間のデータの整合性が確保できるシミュレーション装置を提供することができるようになった。 As described above, according to the present invention, it is possible to provide a simulation device that can ensure data consistency between simulation devices at the start and during execution of unit simulation operation processing by each simulation device. became.
以下に、車両の各部を模擬する複数のシミュレーション装置がネットワーク接続された分散型シミュレーションシステムを例に、本発明によるシミュレーション装置を説明する。 Hereinafter, a simulation apparatus according to the present invention will be described by taking as an example a distributed simulation system in which a plurality of simulation apparatuses simulating respective parts of a vehicle are connected to a network.
図2に示すように、評価対象である制御系2、3、4と夫々ローカル接続され、前記制御系2、3、4により制御される被制御系を模擬する複数のシミュレーション装置(以下、「シミュレータ」と記す。)20、30、40と、各シミュレータ20、30、40を管理して前記制御系を評価するホストコンピュータ(以下、「ホストPC」と記す。)5とがネットワーク(イーサネット(ゼロックス社の登録商標))6により接続され、各シミュレータ20、21、30、40が所定の単位模擬演算処理を所定周期で繰り返すことにより前記被制御系全体の動作、つまり車両の動作を模擬する分散型シミュレーションシステム1が構成されている。
As shown in FIG. 2, a plurality of simulation apparatuses (hereinafter referred to as “the control systems 2, 3, 4”) that are locally connected and controlled by the control systems 2, 3, 4 are simulated. 20), 30, 40, and a host computer (hereinafter referred to as “host PC”) 5 that manages each
前記シミュレータ21は、前記シミュレータ20をマスタシミュレータとするスレーブシミュレータであり、ローカルネットワーク8を介して前記マスタシミュレータ20と接続され、前記ホストPC5からのデータを前記ローカルネットワーク8を介して受信するように構成されている。
The
前記シミュレータ20、21、30、40は、エンジンやブレーキ等の車両の各機能ブロックを模擬するもので、具体的にはシミュレータ20、21はエンジンシステムを模擬し、シミュレータ30はブレーキシステムを模擬し、シミュレータ40はトランスミッションシステムを模擬するものである。本実施形態ではこれらを中心に説明するが、実際には、車両の他の機能ブロックを構成する複数のシミュレータが前記ネットワーク6に接続されている。
The
各シミュレータ20、21、30、40には、それらを電子制御するマイクロコンピュータを備えた制御系としての電子制御装置(以下、「ECU」と記す。)2、3、4がローカル接続され、各ECU2、3、4からの制御指令に基づいて所定の模擬演算を実行し、その結果を各ECU2、3、4に出力するように構成されている。尚、ECUとしては、CPUボードに実装された実機搭載可能な形態に限らず、ECUの開発段階等にECUをエミュレートするPCとその動作プログラムや周辺機器などから構成される擬似ECUが前記シミュレータに接続されることも可能である。
Each
前記ホストPC5は、前記シミュレータ20、21、30、40に移植する複数のモデルプログラム(エンジンやブレーキ等の車両の機能ブロックである被制御系を数式で模擬するプログラムで、以下「モデル」とも記す。)や、シミュレーション条件を設定する制御プログラムが格納され、GUI(グラフィカルユーザインターフェース)を介したオペレータからの設定条件に基づき、前記ネットワーク6を介して前記シミュレータ20、21、30、40にモデルプログラムを移植するとともに、所定のシミュレーション条件を入力してシミュレーションを実行制御する。
The host PC 5 is a plurality of model programs (a program that simulates a controlled system that is a functional block of a vehicle such as an engine and a brake with mathematical formulas) that is ported to the
前記ホストPC5は、後述するノード単位で各シミュレータ20、21、30、40を認識し、その表示部に前記設定条件やノード構成、さらには、各シミュレータ20、21、30、40から吸い上げた各部の計測データ、例えばエンジン回転数や油温等のデータがグラフィカルに表示されるように構成され、オペレータが表示画面を操作または確認しながら各ECU2、3、4の評価が行えるように構成されている。
The host PC 5 recognizes the
前記シミュレータ20、21、30、40は単独、または協働でモデル演算を実行する。即ち、動作が複雑または演算による負荷が多大となる等のモデルは、当該モデル用のハードウェア構成を備えた単独のシミュレータで演算するのではなく、それらの機能を分割したハードウェア構成を備えた複数のシミュレータで演算するように構成されている。
The
夫々のモデルを演算するハードウェアの単位を「ノード」といい、前記ノードが複数のシミュレータから構成される場合、前記ノードは1つのマスタシミュレータと単一または複数のスレーブシミュレータから構成される。本実施例において、前記シミュレータ20、21は協働してエンジンシステムを構成するモデルを演算し、前記シミュレータ20がマスタシミュレータ、前記シミュレータ21がスレーブシミュレータに設定され、マスタシミュレータが前記ネットワーク6に接続され、スレーブシミュレータはマスタシミュレータにローカル接続されている。即ち、EUC2はエンジン制御ECU、ECU3はブレーキ制御ECU、ECU4はトランスミッション制御ECUとなる。
A unit of hardware for calculating each model is called a “node”. When the node is composed of a plurality of simulators, the node is composed of one master simulator and a single or a plurality of slave simulators. In this embodiment, the
各シミュレータ20、21、30、40は、図3に示すように、前記ネットワーク6と接続するためのポートをオンボードで備え、自身を統括制御するオペレーティングシステムを実行するCPUボード90と、前記ホストPC5から移植されたモデルプログラムを実行するCPUを備えたモデル演算処理ユニット91と、前記モデル演算処理ユニット91から入力された論理レベルの演算結果に基づいて物理レベルの信号に変換するとともに前記ECU2、3、4からの物理レベルの制御信号を論理レベルの制御信号に変換して前記モデル演算処理ユニット91に出力する各種のドライバを備えた複数のI/Oボード920、921と、各シミュレータ20、30、40間で演算に必要なプロセスデータ等でなる関連データを相互に遣り取りする共有メモリ923を備えた共有メモリボード922等からなるI/Oユニット92と、前記ECU2、3、4と前記I/Oユニット92との間で信号レベルを整合させるレベル変換機能等を備えたI/Fボード930や、各ECU間のデータ伝送を行なうCANバスの信号を中継するCANボード931等を備えたI/Fユニット93とからなり、夫々がPCIバス94により前記CPUボード90と接続されとともに、前記モデル演算処理ユニット91と前記I/Oユニット92と前記I/Fユニット93が複数のローカル信号ライン95、96、97で接続されている。
As shown in FIG. 3, each
つまり、前記ECU2、3、4の入出力ポートと前記I/Fユニット93が実際の車両で使用されるごとき信号伝達用のハーネス98で接続され、前記I/Fユニット93により前記I/Oユニット92との間で信号レベルが整合される。
That is, the input / output ports of the ECUs 2, 3, 4 and the I / F unit 93 are connected by a
前記I/Oユニット92は、前記モデル演算処理ユニット91で演算されたエンジンオイルの温度、排ガス温度、排ガスの酸素濃度等のデジタル信号をアナログ信号に変換するとともに前記I/Fユニット93から出力された制御用のアナログ信号をデジタル信号に変換するA/D変換ボード920と、前記モデル演算処理ユニット91で演算された各種の論理レベルのデータをパルス信号に変換するとともに前記I/Fユニット93を介して入力されたパルス信号を論理レベルのデータに変換するパルス処理ボード921等を備えて構成される。例えば、前記パルス処理ボード921では、前記モデル演算処理ユニット91で演算されたエンジンの回転数をクランクパルス信号に変換し、前記I/Fユニット93を介して入力された前記ECU2、3、4からの各種の電磁バルブに対するデューティ制御信号をデジタルデータに変換する。
The I / O unit 92 converts digital signals such as engine oil temperature, exhaust gas temperature, and exhaust gas oxygen concentration calculated by the model arithmetic processing unit 91 into analog signals and is output from the I / F unit 93. A / D conversion board 920 that converts the analog signal for control into a digital signal, and data of various logic levels calculated by the model calculation processing unit 91 are converted into pulse signals and the I / F unit 93 is And a
各マスタシミュレータ20、30、40のI/Oユニット92に装着された共有メモリボード922は、図4に示すように、他のマスタシミュレータとの間で演算に必要な関連データを遣り取りする共有メモリ923と、前記共有メモリ923に記憶されたデータをシミュレータ間で転送制御する光ファイバ7を用いた数十Gbpsから数Gbpsの通信速度を実現するスターファブリックや高速LAN等と接続する通信インターフェース924と、スレーブシミュレータとの間で演算に必要な関連データを遣り取りするローカル共有メモリ925と、前記ローカル共有メモリ925に記憶された関連データを転送する前記ネットワーク8と接続して前記関連データを転送制御するローカル通信インターフェース926等を備え、何れかの共有メモリボード922には、それら通信インターフェース924、926を管理する通信制御手段927、928を備えている。
As shown in FIG. 4, a shared memory board 922 mounted on the I / O unit 92 of each
つまり、前記共有メモリボード922と、共有メモリ923またはローカル共有メモリ925とを管理するCPUボード90により各シミュレータ20、21、30、40間でデータを共有するデータ共有手段11が構成される。尚、データ共有化処理については後に詳述する。
That is, the data sharing means 11 for sharing data among the
各共有メモリ923は、図5に示すように、自装置のモデル演算処理ユニット91や自装置に接続されたECUに必要な関連データであって、他のシミュレータから入力される関連データを格納する受信データ領域923aと、他のシミュレータのモデル演算処理ユニット91や他のシミュレータに接続された前記ECUに必要な関連データであって、自装置で生成された関連データを記憶する送信データ領域923bに領域区画され、後述する所定のタイミングで前記通信インターフェース924を介して他のシミュレータの送信データ領域923bに格納された関連データが自装置の受信データ領域923aに配送され、自装置の送信データ領域923bに格納された関連データが他のシミュレータの受信データ領域923aに配送される。ここで、前記受信データ領域923aは送信元である他のシミュレータ毎に異なる領域に区分され、前記送信データ領域923bは送信先である他のシミュレータ毎に異なる領域に区分されている。
As shown in FIG. 5, each shared
例えば、自装置に接続されたECUのCANバスの制御信号やデータは自装置のCANボード931を介して送信データ領域923bに格納され、前記通信インターフェース924を介して他のシミュレータの受信データ領域923aに転送された後に当該他のシミュレータのCANボード931を介して当該他のシミュレータに接続されたECUのハーネス98に接続される。また、他のシミュレータに接続されたECUのCANバスの制御信号やデータは当該他のシミュレータのCANボード931を介して前記送信データ領域923bに格納され、通信インターフェース924を介して自装置の受信データ領域923aに転送された後に自装置のCANボード931を介して自装置に接続されたECUのハーネス98に接続される。つまり、前記CANボード931と共有メモリボード922と前記通信インターフェース924により、CANバスがエミュレートされる。
For example, control signals and data of the CAN bus of the ECU connected to the own apparatus are stored in the
各シミュレータ20、30、40のモデル演算処理ユニット91やI/Oユニット92間で共有されるべき関連データも同様にして、他のシミュレータに配送すべき関連データが送信データ領域923bに格納され、通信インターフェース924を介して他のシミュレータから配送されるべき関連データが受信データ領域923aに取り込まれるのである。
Similarly, related data to be shared between the model arithmetic processing unit 91 and the I / O unit 92 of each
尚、上述では各シミュレータ20、30、40が備える共有メモリ923間での関連データの遣り取りについて説明したが、シミュレータ20、21が備えるローカル共有メモリ925の関連データの遣り取りについても同様に関連データの遣り取りを行う。つまり、前記ローカル共有メモリ925は受信データ領域925aと、送信データ領域925bとに領域区画され、前記ローカル通信インターフェース926を介して関連データの遣り取りを行うのである。
In the above description, the exchange of related data between the shared
該分散型シミュレーションシステム1の行う車両の動作のシミュレーションは、図6に示すように、前記ホストPC5が、前記GUIを介してオペレータから操作されたシミュレーション条件、または、予めプログラムとして準備されたシミュレーション条件で各シミュレータ20、21、30、40を起動させるべく、前記ネットワーク6を介して各シミュレータ20、21、30、40のCPUボード90にシミュレーション条件及び起動指令を出力すると(SA1)、CPUボード90は当該シミュレーション条件をPCIバス94を介して各モデル演算処理ユニット91、I/Oユニット92に反映させ(SA2)、各シミュレータ20、21、30、40は、与えられたシミュレーション条件に従って後述の所定の単位模擬演算処理を所定周期で繰り返す(SA3、SA4)。
As shown in FIG. 6, the simulation of the operation of the vehicle performed by the distributed
例えば、前記GUIを介して入力された各ECU2、3、4がバッテリに接続されたというシミュレーション条件で前記ホストPC5から起動指令が出力されると、前記モデル演算処理ユニット91から前記I/Oユニット92にバッテリ電圧信号が出力され、当該バッテリ電圧信号が前記I/Fユニット93によりDC14Vの電圧に変換されて各ECU2、3、4にバッテリ電圧が供給される。各ECU2、3、4はバッテリ供給電圧に基づいて作動するリセット回路によりリセット信号が入力されて夫々の制御演算を開始する。
For example, when a start command is output from the
以後、各ECU2、3、4からの制御指令が、前記I/Oユニット92、前記I/Oユニット92を介して前記モデル演算処理ユニット91に伝達され、前記モデル演算処理ユニット91によりエンジン等の動作を模擬する模擬演算が実行されるのである。前記モデル演算処理ユニット91による模擬演算結果は、前記I/Oユニット92、前記I/Oユニット92を介して実際の車両の各種の状態信号に変換されて前記各ECU2、3、4に入力される。 Thereafter, control commands from the ECUs 2, 3, 4 are transmitted to the model arithmetic processing unit 91 via the I / O unit 92 and the I / O unit 92, and the model arithmetic processing unit 91 A simulation operation for simulating the operation is executed. The simulation calculation result by the model calculation processing unit 91 is converted into various state signals of the actual vehicle via the I / O unit 92 and the I / O unit 92 and input to the ECUs 2, 3, 4. The
この状態で、前記GUIを介して入力されたイグニッションスイッチ信号がオンされたというシミュレーション条件が前記ホストPC5から出力されると、例えば、前記エンジンEUC2はスタータモータを起動する制御信号を出力し、前記モデル演算処理ユニット91はスタータモータの模擬演算を実行し、エンジン模擬演算が起動されるのである。
In this state, when a simulation condition that the ignition switch signal input via the GUI is turned on is output from the
また、例えば、エンジンが高速回転中の車両の挙動を解析する場合には、前記ホストPC5からエンジンが高速回転中の車両の状態データがシミュレーション条件としての初期データとしてCPUボード90に入力され、CPUボード90から前記モデル演算処理ユニット91等に車両の状態データが反映されて各シミュレータが起動する。
Further, for example, when analyzing the behavior of a vehicle whose engine is rotating at high speed, the state data of the vehicle whose engine is rotating at high speed is input from the
さらに、例えば、エンジン系のあるセンサが故障したときの各ECU2、3、4の動作を評価する場合には、前記ホストPC5からエンジン起動中であるセンサが故障しているとのシミュレーション条件としてのイベント発生条件が各CPUボード90に入力され、前記各CPUボード90から前記モデル演算処理ユニット91等に車両の状態データが反映されて各シミュレータが起動する。
Further, for example, when evaluating the operation of each ECU 2, 3, 4 when a sensor in the engine system fails, the simulation condition that the sensor being started from the
前記モデル演算処理ユニット91へのECU等からの入力データや、前記モデル演算処理ユニット91による演算結果は、前記PCIバス94を介して前記CPUボード90に吸い上げられた後に前記ホストPC5にネットワーク6を介して出力され、前記ホストPC5の表示装置の画面に、例えばトレンドグラフやグラフィックデータ等の表示データに変換されて表示される。具体的には、エンジン回転数や燃費の推移を示すトレンドグラフとして表示され、運転席の表示装置を模擬した回転数表示計や速度表示計として表示される。
Input data from the ECU or the like to the model calculation processing unit 91 and calculation results by the model calculation processing unit 91 are taken up by the CPU board 90 via the
どのような条件でどのような模擬演算を実行するかというシミュレーション条件や、模擬演算結果を前記ホストPC5の表示装置に表示するために各シミュレータ20、21、30、40から吸い上げるべきデータの種類等は予め前記ホストPC5を介して設定されるものであり、これにより各ECU2、3、4の制御状態が評価できるように構成されている。
Simulation conditions for what simulation calculation to be executed under what conditions, the type of data to be taken up from each
以下に、各シミュレータ20、21、30、40で実行される模擬演算について詳述する。各シミュレータ20、21、30、40は、各CPUボード90による管理の下で、所定の周期、例えば1msec.周期で、機能の異なる複数の演算ステップの集合で構成される単位模擬演算処理を繰り返すように制御される。
Below, the simulation calculation performed by each
各シミュレータ20、21、30、40のCPUボード90には、図7に示すように、内部動作を統括する基準クロック発生手段が設けられ、前記モデル演算処理ユニット91や前記I/Oユニット92等の各ユニットは、前記基準クロック発生手段90aからの基準クロックに基づいて演算処理に必要なタイマー値等の管理を行なうように構成されている。つまり、各ユニットに設けられたCPUは内部クロックに基づくタイマーレジスタの値に基づいて予め設定された演算処理を実行するのであるが、演算に必要なタイマー処理は前記基準クロックに基づいて判断されるのである。
As shown in FIG. 7, the CPU board 90 of each
さらに、CPUボード90には、前記データ共有手段11と協働して該分散型シミュレーションシステム1に組み込まれた全てのシミュレータ20、21、30、40が同期して単位模擬演算処理を実行させるように同期制御手段90bが設けられている。
Further, the CPU board 90 causes all the
前記同期制御手段90bは、図7に示すように、前記ホストPC5から起動指令が送られると、前記基準クロックに基づいて自装置の単位模擬演算処理を起動し、前記単位模擬演算処理が分割された複数ステップのうち、何れかのステップの開始前または終了後に各シミュレータ間での演算タイミングの同期をとり、全シミュレータが同期して前記単位模擬演算処理を実行できるように制御する。尚、前記シミュレータ21は前記シミュレータ20と前記ネットワーク8を介して、前記起動指令を受信する。
As shown in FIG. 7, when the activation command is sent from the
前記単位模擬演算処理は、図1に示すように、初期に他のシミュレータに必要なデータ、つまり関連データを前記共有メモリ923の送信データ領域923bに格納するとともに、他のシミュレータから自装置に必要な関連データを前記共有メモリ923の受信データ領域923aに取り込む第一データ共有化処理(S1)、ECUからのデータをI/Oユニット92に取り込むデバイス入力処理(S2)、取り込まれたデータのうち、他のシミュレータのモデル演算に必要なデータ、つまり関連データを前記共有メモリ923の送信データ領域923bに格納するとともに、他のシミュレータにより取り込まれたデータのうち自装置のモデル演算に必要な関連データを前記共有メモリ923の受信データ領域923aに取り込む第二データ共有化処理(S3)、共有化処理の終了後に前記モデル演算ユニット91がI/Oユニット92及び受信データ領域923aから必要なデータを取り込んでモデル演算を実行するモデル演算処理(S4)、モデル演算の終了後に演算結果のうち他のシミュレータに必要なデータ、つまり関連データを前記共有メモリ923の送信データ領域923bに格納するとともに、他のシミュレータによる演算結果のうち自装置が必要とする関連データを前記共有メモリ923の受信データ領域923aに取り込む第三データ共有化処理(S5)、モデル演算結果をI/Oユニット92に出力するデバイス出力処理(S6)、モデル演算の結果やモデル演算の完了または未完了等の進捗状況を前記ホストPC5に出力するモデル演算後処理(S7)、デバイス出力処理後にI/Oユニット92からサンプリングして他のシミュレータに関連データとして出力すべきデータを前記共有メモリ923の送信データ領域923bに格納するとともに、他のシミュレータのI/Oユニット92からサンプリングされ自装置に必要な関連データを前記共有メモリ923の受信データ領域923aに取り込む第四データ共有化処理(S8)、予め設定された必要なデータをI/Oユニット92及び受信データ領域923aからサンプリングしてCPUボード90のメモリに記憶し前記ホストPC5に出力するサンプリング処理(S9)で構成され、各ステップの終了後に設定された演算周期に同期してステップS1に戻る(S10)。
As shown in FIG. 1, the unit simulation calculation process stores data necessary for another simulator in the initial stage, that is, related data in the
尚、上述したデータ共有化処理ではマスタシミュレータ間での共有処理について説明しているが、このときマスタシミュレータとスレーブシミュレータ間でもデータ共有化処理が行なわれている。 In the data sharing process described above, the sharing process between the master simulators has been described. At this time, the data sharing process is also performed between the master simulator and the slave simulator.
即ち、前記単位模擬演算処理は、少なくとも前記制御系からのデータ入力ステップと、前記被制御系を模擬するモデル演算ステップと、モデル演算結果の前記制御系へのデータ出力ステップと、予め設定された必要なデータをサンプリングしてCPUボード90のメモリに記憶し前記ホストPC5に出力するサンプリングステップを備えて構成され、前記データ共有手段は、前記データ入力ステップ、前記モデル演算ステップ、前記データ出力ステップ、前記サンプリングステップの各ステップの開始前に各シミュレータ間で関連データを整合させるように構成されている。
That is, the unit simulation calculation process is preset with at least a data input step from the control system, a model calculation step for simulating the controlled system, and a data output step for the model calculation result to the control system. It comprises a sampling step of sampling necessary data, storing it in the memory of the CPU board 90 and outputting it to the
従って、前記データ入力ステップ、前記モデル演算ステップ、前記データ出力ステップ、前記サンプリングステップの各ステップでは、各シミュレータ間で整合の取れた関連データに基づいて各種の演算処理が実行されるようになる。ここで、前記サンプリングステップは本発明の記憶ステップである。 Accordingly, in each step of the data input step, the model calculation step, the data output step, and the sampling step, various calculation processes are executed based on related data that is matched between the simulators. Here, the sampling step is a storage step of the present invention.
上述した第一から第四のデータ共有化処理について、図8、図9のフローチャート及び図5に基づいて詳述する。各シミュレータ20、30、40のCPUボード90には予めホストPC5により他のシミュレータと共有すべき関連データが定義されている。この定義データは、システムの初期設定時(SB1)、つまり、モデルプログラムが各ノードに移植されるとき、またはシミュレーション開始時にシミュレーション条件の一部として各CPUボード90に入力される(SB2)。
The first to fourth data sharing processes described above will be described in detail with reference to the flowcharts of FIGS. 8 and 9 and FIG. Related data to be shared with other simulators is defined in advance by the
各シミュレータのCPUボード90により、他のシミュレータに送信すべき関連データが自装置の共有メモリ923の送信データ領域923bに夫々格納され(SB3)、送信すべき全ての関連データが格納されると(SB4)、送信準備完了フラグ923cがセットされる(SB5)。送信準備完了フラグ923cがセットされた各通信インターフェース924は、各通信インターフェース924を管理する通信制御手段927に送信要求する(SB6)。前記通信制御手段927は、全ての通信インターフェース924から通信要求があるまで待機する(SB7)。
When the CPU board 90 of each simulator stores the related data to be transmitted to the other simulators in the
ここで、送信すべき関連データが無いとき、つまり、前回送信した関連データと値が変わらないときには、単に送信準備完了フラグ923cがセットされる。 Here, when there is no related data to be transmitted, that is, when the value does not change from the previously transmitted related data, the transmission preparation completion flag 923c is simply set.
前記通信制御手段927は、全ての通信インターフェース924から通信要求があると(SB7)、全てのシミュレータ20、30、40の送信準備完了フラグ923cがセットされたと確認し(SB8)、予め設定された順に関連データの送信処理を許容する(SB9)。具体的には、先ず、最初のシミュレータ20に設けられた通信インターフェース924は、共有メモリ923の送信データ領域923bに格納された関連データを送信先毎に順次吸い上げて、各送信先のシミュレータ30、40の通信インターフェース924に送信する。各送信先のシミュレータ30、40の通信インターフェース924は、夫々の共有メモリ923の受信データ領域923aに格納する。このような関連データの送信処理がシミュレータ30、40毎に繰り返される。
When there is a communication request from all the communication interfaces 924 (SB7), the
送信元の通信インターフェース924は、送信データ領域923bに格納された関連データの全ての配送処理が終了すると(SB10)、当該送信データ領域923bにセットされている送信準備完了フラグ923cをリセットして(SB11)、当該シミュレータのCPUボード90に関連データの送信処理が終了したことを通知する(SB12)。
When the transmission process of all the related data stored in the
さらに、送信先の通信インターフェース924は、受信データ領域923aに他のシミュレータからの関連データを格納すると(SB13)、送信元のシミュレータ毎に区画された受信データ領域923aに受信完了フラグ923d1、923d2をセットして(SB14)、送信先のシミュレータの前記同期制御手段90bを備えたCPUボード90に送信元毎に関連データの受信処理が終了したことを通知する(SB15)。送信先のシミュレータのCPUボード90(同期制御手段90b)は、受信データ領域923aの受信完了フラグ923d1、923d2がセットされたときに(SB16)、送信元のシミュレータから関連データの受信が終了したことを確認する(SB17)のである。
Furthermore, when the
各シミュレータ20、30、40のCPUボード90(同期制御手段90b)は、自装置の送信データ領域923bの送信準備完了フラグ923cがリセットされ(SB11)、且つ、受信データ領域923aの送信元毎の受信完了フラグ923d1、923d2の全てがセットされるまで待機し(SB16)、送信準備完了フラグ923cがリセットされ(SB11)、且つ、受信データ領域923aの送信元毎の受信完了フラグ923d1、923d2の全てがセットされていると確認すると(SB17)、データ共有化処理が終了したと判断して(SB18)、全ての受信完了フラグ923d1、923d2をリセットして(SB19)、次の処理を開始するように制御する(SB20)。
The CPU board 90 (synchronization control means 90b) of each
以上の動作により、前記シミュレータ20、30、40において、前記制御系からのデータ入力ステップ、前記被制御系を模擬するモデル演算ステップ、モデル演算結果の前記制御系へのデータ出力ステップ、モデル演算後処理ステップ、サンプリングステップの各ステップが同期して実行され、単位模擬演算処理が円滑に進められるのである。
By the above operation, in the
つまり、前記データ共有手段11は、送信準備完了フラグ923cに基づいて、関連データを送信する他のシミュレータと同期をとった後にデータの共有化処理を行なうものであり、データの共有化処理を行なう前に行なう必要がある処理、つまり、上述のデバイス入力処理、モデル演算処理、デバイス出力処理、モデル演算後処理、サンプリング処理の何れかの処理を完了させていることを示す受信完了フラグ923d1、923d2が共有メモリ923に設定されている場合に、前記他のシミュレータと関連データを整合するための同期が取れたと判断するものである。
That is, the data sharing means 11 performs data sharing processing after synchronizing with other simulators that transmit related data based on the transmission preparation completion flag 923c, and performs data sharing processing. Reception completion flags 923d1 and 923d2 indicating that any of the processes that need to be performed before, that is, the above-described device input process, model calculation process, device output process, post-model calculation process, or sampling process has been completed Is set in the shared
上述したデータ共有化処理は、各シミュレータ20、30、40のCPUボード90により、他のシミュレータに送信すべき関連データが自装置の共有メモリ923の送信データ領域923bに夫々格納され、送信準備完了フラグ923cがセットされるものであるが、関連データを自装置の共有メモリ923の送信データ領域923bに格納し、送信準備完了フラグ923cをセットするのはCPUボード90に制限されるものではなく、CPUボード90の監視下でモデル演算処理に基づくデータ共有化処理ではモデル演算処理ユニット91が、デバイス入出力処理に基づくデータ共有化処理ではI/Oユニット92が実行してもよい。
In the data sharing process described above, the CPU board 90 of each
上述したデータ共有化処理はマスタシミュレータ間でのデータ共有化処理であるが、図10に示すように、マスタシミュレータ間でのデータ共有化処理の前に(SD1)、マスタシミュレータとスレーブシミュレータ間で他のマスタシミュレータに送信すべき関連データの共有化処理が行なわれ(SD2)、前記データ共有化処理後に(SD3)、マスタシミュレーション間でのデータ共有化処理を行い(SD4)、マスタシミュレータ間でのデータ共有化処理の後に(SD5)、マスタシミュレータとスレーブシミュレータ間で他のマスタシミュレータから受信すべき関連データの共有化処理が行なわれる(SD6)。また、マスタシミュレータとスレーブシミュレータ間でのみ共有する必要のある関連データは、マスタシミュレータ間でのデータ共有化処理の前後の何れで行なわれるものであってもよい。 The data sharing process described above is a data sharing process between the master simulators, but as shown in FIG. 10, before the data sharing process between the master simulators (SD1), between the master simulator and the slave simulator. The related data to be transmitted to another master simulator is shared (SD2). After the data sharing process (SD3), the data sharing process is performed between master simulations (SD4). After the data sharing process (SD5), related data to be received from the other master simulator is shared between the master simulator and the slave simulator (SD6). The related data that needs to be shared only between the master simulator and the slave simulator may be performed either before or after the data sharing process between the master simulators.
このようにして全てのシミュレータ20、21、30、40が同期を取って単位模擬演算処理を実行することができるのであるが、前記基準クロック発生手段90aからの基準クロックはシミュレータ毎に微妙に異なり、各基準クロックに基づく演算結果が累積されると大きな誤差となって、シミュレータの演算精度に大きな影響を与える虞がある。
In this way, all the
そこで、前記ホストPC5に設けた同期クロック生成手段5aにより生成された同期クロックデータを前記ネットワーク6を介して各シミュレータ20、21、30、40に送信するように構成してあり、各シミュレータ20、21、30、40のCPUボード90に、前記同期クロックデータに基づいてシミュレーション演算の基準クロックに基づくタイマーレジスタの値を補正するクロック補正手段90cを備えている。
Therefore, the synchronous clock data generated by the synchronous clock generating means 5a provided in the
図11に示すように、前記同期クロックデータは夫々の前記基準クロックで動作する単位模擬演算処理の時間1msec.よりも短い時間間隔で入力されるため、前記シミュレータ20、21、30、40は前記クロック補正手段90cにより前記基準クロックの僅かなずれを補正することができる。
As shown in FIG. 11, the synchronous clock data has a unit simulation operation time of 1 msec. Therefore, the
前記共有メモリ923を介して配送処理される関連データは、車両の各機能ブロックを模擬する複数のシミュレータ間で互いに必要なタイミングデータやプロセスデータ等の様々な種類のデータで構成されているが、同じプロセスデータであってもシミュレータ毎に取り扱われるデータ精度が異なる場合もある。例えば、エンジンシミュレータ20、21ではエンジンEUC2による気筒判別や点火時期制御のためにプロセスデータの一例であるエンジン回転数を高精度に模擬演算処理する必要があるが、トランスミッションシミュレータ40ではエンジン回転数に基づいて回転する変速機構を模擬演算するものであり、それほどの精度が要求されるものではない。
The related data to be delivered via the shared
このような場合に、関連データの配送先が必要とする精度以上の高精度のデータを配送すると、データ容量が大きくなりトラフィックを増大させてデータの配送効率の低下を招くばかりか、共有メモリ923のメモリ容量が嵩むことになる。 In such a case, if high-precision data that is higher than the accuracy required by the delivery destination of the related data is delivered, the data capacity increases and traffic is increased to reduce the data delivery efficiency. This increases the memory capacity.
そこで、前記データ共有手段11は、関連データを他のシミュレータに送信する際に、自装置で演算された関連データの論理値を前記他のシミュレータでの論理値に変換したデータを送信するように構成している。 Therefore, when the related data is transmitted to the other simulator, the data sharing means 11 transmits the data obtained by converting the logical value of the related data calculated by the own device into the logical value of the other simulator. It is composed.
具体的には、図12に示すように、前記通信インターフェース924に、共有メモリ923に格納された関連データのうちで異なる精度で配送相手へ送信すべき各関連データに対して、各関連データが示す物理値を配送相手側で扱われる分解能で表すデータに変換するデータ精度変換処理手段924aを備え、精度変換処理後の関連データを送信するように構成している。
Specifically, as shown in FIG. 12, each related data is transmitted to the
前記データ精度変換処理手段924aは、予め配送先シミュレータ毎に関連データの精度を変換する変換テーブルを備え、関連データの配送時に前記変換テーブルに基づいて関連データを適正な精度に変換処理する。例えば、変換対象である関連データの物理値をそのデータの元の分解能に対する配送相手側の分解能の比が規定された変換テーブルに基づいて変換処理した物理値を論理値に戻すことにより変換処理される。また、関連データを前記変換テーブルに基づいて右シフトして、そのデータ長を短くする(例えば、2バイトを1バイトに変更する)といったデータ長変換処理であってもよい。
The data accuracy
尚、前記データ共有手段11は、関連データを他のシミュレーシータに送信する際に、自装置で演算された関連データの論理値と前記論理値を変換する変換関数、例えば、前記変換テーブルの分解能の比で示される変換関数を当該関連データとともに送信するものであってもよい。この場合には、配送先の通信インターフェース924に設けたデータ精度変換処理手段924aが、当該変換関数に基づいて関連データの精度を変換した後に自装置の共有メモリ923に格納することになる。
The data sharing unit 11 converts the logical value of the related data calculated by the own device and the logical value, for example, the resolution of the conversion table, when transmitting the related data to another simulation theta. The conversion function indicated by the ratio may be transmitted together with the related data. In this case, the data accuracy conversion processing means 924a provided in the
また、このとき関連データとともに配送する変換関数は、自装置で演算された関連データの論理値を物理値に変換する関数であってもよい。この場合には、配送先の通信インターフェース924に設けたデータ精度変換処理手段924aが、関連データを当該変換関数に基づいて物理値に変換した後に、自装置の精度に合うように論理値に変換して自装置の共有メモリ923に格納することになる。
In addition, the conversion function that is delivered together with the related data at this time may be a function that converts the logical value of the related data calculated by the own device into a physical value. In this case, the data accuracy
以下、別実施形態について説明する。上述の実施形態では、シミュレータ20がマスタシミュレータ、シミュレータ21がスレーブシミュレータとして協働して、被制御系であるエンジンのノードを構成したが、マスタシミュレータに接続されるスレーブシミュレータの数は特に制限されるものではない。
Hereinafter, another embodiment will be described. In the above-described embodiment, the
前記ホストPC5から移植されたモデルプログラムを実行するCPUを備えたモデル演算処理ユニット91も、単一のモデル演算処理ボードで構成されるものに限らず、複数のモデル演算処理ボードで構成されるものであってもよい。
The model arithmetic processing unit 91 including a CPU for executing the model program transplanted from the
単位模擬演算処理は、上述したものに制限されるものではなく、少なくとも分散処理を行なう複数のシミュレータ以外からデータの入力を行なう入力ステップ、モデル演算を行なうモデル演算ステップ、分散処理を行なう複数のシミュレータ以外にデータの出力を行なう出力ステップ、モデル演算を行って得られたモデルの演算データをメモリに記憶する記憶ステップを備えるものであればよく、データ共有化処理はこれらのステップの実行に先立って行なわれるように構成するものであればよい。 The unit simulation calculation process is not limited to the above-described one. At least an input step for inputting data from a plurality of simulators that perform distributed processing, a model calculation step for performing model calculation, and a plurality of simulators for performing distributed processing In addition to the output step for outputting data and the storage step for storing the calculation data of the model obtained by performing the model calculation in the memory, the data sharing process may be performed prior to the execution of these steps. Any configuration may be used as long as it is performed.
また、前記データ共有手段11は、入力ステップ、モデル演算ステップ、出力ステップ、記憶ステップの各ステップの実行に先立ってデータ共有化処理を実行するものを説明したが、全てのステップにおいてデータ共有化処理を実行するもののみならず、少なくとも2つのステップの開始前にデータ共有化処理を行なうものであればよい。 Further, although the data sharing means 11 has been described to execute the data sharing process prior to the execution of the input step, the model calculation step, the output step, and the storage step, the data sharing process is performed in all steps. As long as the data sharing process is performed before the start of at least two steps.
上述の実施形態では、複数の電子制御装置により分散制御される車両の各機能ブロックを模擬する分散型シミュレーションシステム1について説明したが、分散型シミュレーションシステム1は車両を対象とするものに限るものではなく、航空機、空調システム、或いは化学プラントシステム等、複雑な処理系を模擬する場合に適用できるものである。
In the above-described embodiment, the distributed
上述の実施形態では、各シミュレータ20、21、30、40に制御系としての電子制御装置2、3、4を接続するものを説明したが、シミュレータに必要な外部データを供給するものであれば、接続される外部機器は制御系機器に限るものではない。
In the above embodiment, the
上述の実施形態では、ホストPC5から送信された同期クロックデータに基づき、夫々が備えるクロック補正手段が前記シミュレータ20、21、30、40の基準クロックを補正する構成としたが、同期クロックデータはホストPC5から供給されるものに限らず、ホストPC5以外の同期クロック生成装置からネットワーク6を介して、或いは同期クロックデータ供給用のネットワークを備え、前記ネットワークに各シミュレータを接続して前記ネットワークを介して供給されるものであってもよく、ネットワークを介さずに直接供給されるように構成するものであってもよい。
In the above-described embodiment, the clock correction means provided for each corrects the reference clocks of the
上述した実施形態は、本発明を実現する一実施例を説明するものであり、各部の具体的な構成は、本発明の作用効果を奏する限りにおいて、構築するシステムに応じて適宜変更設計することが可能である。 The embodiment described above describes an example for realizing the present invention, and the specific configuration of each part should be appropriately changed and designed according to the system to be constructed as long as the effects of the present invention are achieved. Is possible.
11:データ共有手段
20:シミュレーション装置(マスタシミュレータ)
21:シミュレーション装置(スレーブシミュレータ)
30:シミュレーション装置(マスタシミュレータ)
40:シミュレーション装置(マスタシミュレータ)
90c:クロック補正手段
923:共有メモリ
11: Data sharing means 20: Simulation device (master simulator)
21: Simulation device (slave simulator)
30: Simulation device (master simulator)
40: Simulation device (master simulator)
90c: Clock correction means 923: Shared memory
Claims (8)
複数の機能ブロックで構成される前記模擬対象装置のシミュレーションを、それぞれの機能ブロックのシミュレーションを行なうシミュレーション装置間をネットワークで接続し、それぞれのシミュレーション装置が、自身がシミュレーションする機能ブロックとの関連性が高い外部装置と前記ネットワークとは異なる通信線で接続される構成で、行なう分散型シミュレーションシステムにおけるシミュレーション装置であって、
前記外部装置からデータの入力を行なう入力ステップと、前記入力ステップで入力されたデータを用いてモデル演算を行なうモデル演算ステップと、前記モデル演算ステップの演算で得られたデータを前記外部装置に出力する出力ステップとを含む、一連の処理を繰り返し行なうことによってシミュレーションを行なうシミュレーション実行手段と、
前記一連の処理における前記モデル演算ステップと前記出力ステップの開始前に、分散型シミュレーションシステムを構成する他のシミュレーション装置と関連する関連データを、当該他のシミュレーション装置に送信することによってデータの共有化処理を行なうデータ共有手段とを備えるシミュレーション装置。 A distributed simulation system in which a simulation of a simulation target device that inputs and outputs data with a plurality of external devices is distributed by a plurality of simulation devices connected via a network,
The simulation of the simulation target device composed of a plurality of functional blocks is connected by a network between the simulation devices that perform simulation of each functional block, and each simulation device is related to the functional block that it simulates. A simulation apparatus in a distributed simulation system to be performed in a configuration in which a high external apparatus and the network are connected by different communication lines ,
An input step for inputting data from the external device, a model calculation step for performing model calculation using the data input in the input step, and outputting data obtained by the calculation in the model calculation step to the external device A simulation execution means for performing a simulation by repeatedly performing a series of processes, including an output step of:
Prior to the start of the model calculation step and the output step in the series of processes, data related to other simulation devices constituting the distributed simulation system is transmitted to the other simulation devices to share the data. A simulation apparatus comprising data sharing means for performing processing.
前記データ共有手段が前記ネットワークとは異なるネットワークを介して前記関連データを送信するように構成され、
前記モデル演算ステップと前記出力ステップが、前記データ共有手段による共有化処理の完了と同期して実行される請求項1記載のシミュレーション装置。 The external device is configured by a control device that controls each functional block of the simulation target device, and each simulation device is connected to a host computer that manages each simulation device via the network,
The data sharing means is configured to transmit the related data via a network different from the network;
The simulation apparatus according to claim 1, wherein the model calculation step and the output step are executed in synchronization with completion of sharing processing by the data sharing means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006199546A JP4413209B2 (en) | 2006-07-21 | 2006-07-21 | Simulation device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006199546A JP4413209B2 (en) | 2006-07-21 | 2006-07-21 | Simulation device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008027225A JP2008027225A (en) | 2008-02-07 |
JP4413209B2 true JP4413209B2 (en) | 2010-02-10 |
Family
ID=39117792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006199546A Expired - Fee Related JP4413209B2 (en) | 2006-07-21 | 2006-07-21 | Simulation device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4413209B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5179249B2 (en) | 2008-05-09 | 2013-04-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Control device simulation method, system, and program |
JP5186290B2 (en) * | 2008-06-18 | 2013-04-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Simulation method, system and program |
JP5224957B2 (en) * | 2008-07-25 | 2013-07-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Simulation method, system and program |
JP5460010B2 (en) * | 2008-09-30 | 2014-04-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Simulation method, system and program |
JP5500820B2 (en) * | 2008-12-08 | 2014-05-21 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Simulation method, system and program |
KR102092921B1 (en) * | 2013-06-28 | 2020-03-24 | 삼성전자주식회사 | Simulation apparatus and Distributed simulation system |
JP6348098B2 (en) * | 2015-11-30 | 2018-06-27 | ファナック株式会社 | Wire EDM machine simulation device with core welding position determination function using machine learning |
JP7351230B2 (en) * | 2020-01-31 | 2023-09-27 | 富士通株式会社 | Synchronous control circuit and synchronous control method |
WO2023119524A1 (en) * | 2021-12-22 | 2023-06-29 | 三菱電機株式会社 | Simulation program, simulation method, and simulation device |
-
2006
- 2006-07-21 JP JP2006199546A patent/JP4413209B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008027225A (en) | 2008-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4413209B2 (en) | Simulation device | |
JP4987382B2 (en) | Distributed simulation system, simulator identification method, and distributed simulation system management apparatus | |
JP2008040983A5 (en) | ||
JP5059017B2 (en) | Simulation device | |
EP2738632B1 (en) | Input output cloning for industrial automation | |
US20080077382A1 (en) | Simulation System and Computer-Implemented Method for Simulation and Verifying a Control System | |
JP2008084121A (en) | Simulation system and simulation method | |
JP2008090489A (en) | Simulation system | |
US20210081585A1 (en) | Method for event-based simulation of a system | |
JP2013137658A (en) | Computer system for cooperative simulation, embedded-system authentication method and program | |
JP6318500B2 (en) | Simulation apparatus and simulation program | |
CN105765468B (en) | System constructing servicing unit | |
CN100498799C (en) | Simulation system and computer-implemented method for simulation and verifying a control system | |
JP5584678B2 (en) | Distributed simulation device | |
CN103430109A (en) | CPU of PLC, system program for PLC, and recording medium storing system program for PLC | |
JPWO2008038770A1 (en) | Simulation apparatus, simulation system, and simulation method | |
CN111191336B (en) | Aeroengine control prototype closed-loop simulation method and system and storage medium | |
JP4400209B2 (en) | In-vehicle electrical component test system and test method | |
JP2010244378A (en) | Distributed simulation system | |
JP2000330970A (en) | Device and method for simulation | |
JP2008269022A (en) | Simulation device, simulation method, and development support method | |
CN103246607B (en) | The emulation test method of aerial camera address bit pattern communication interface | |
Himmler | Openness requirements for next generation hardware-in-the-loop testing systems | |
Balashov et al. | A hardware-in-the-loop simulation environment for real-time systems development and architecture evaluation | |
US12039298B2 (en) | Method for configuring model components of a system model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081002 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081016 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090520 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090714 |
|
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: 20091117 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20091117 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121127 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4413209 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131127 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131127 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |