JP2001282327A - Simulation system and simulator and management server and recording medium - Google Patents
Simulation system and simulator and management server and recording mediumInfo
- Publication number
- JP2001282327A JP2001282327A JP2000099815A JP2000099815A JP2001282327A JP 2001282327 A JP2001282327 A JP 2001282327A JP 2000099815 A JP2000099815 A JP 2000099815A JP 2000099815 A JP2000099815 A JP 2000099815A JP 2001282327 A JP2001282327 A JP 2001282327A
- Authority
- JP
- Japan
- Prior art keywords
- simulator
- time
- plc
- management server
- simulators
- 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
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 39
- 238000000034 method Methods 0.000 claims description 37
- 230000000694 effects Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 46
- 230000000875 corresponding effect Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 13
- 101710189206 Phospholipase C A Proteins 0.000 description 3
- 101710189137 Phospholipase C B Proteins 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 102100026205 1-phosphatidylinositol 4,5-bisphosphate phosphodiesterase gamma-1 Human genes 0.000 description 1
- 101100190617 Arabidopsis thaliana PLC2 gene Proteins 0.000 description 1
- 101100408456 Arabidopsis thaliana PLC8 gene Proteins 0.000 description 1
- 101100464304 Caenorhabditis elegans plk-3 gene Proteins 0.000 description 1
- 102100035353 Cyclin-dependent kinase 2-associated protein 1 Human genes 0.000 description 1
- 101000691599 Homo sapiens 1-phosphatidylinositol 4,5-bisphosphate phosphodiesterase gamma-1 Proteins 0.000 description 1
- 101000760620 Homo sapiens Cell adhesion molecule 1 Proteins 0.000 description 1
- 101000737813 Homo sapiens Cyclin-dependent kinase 2-associated protein 1 Proteins 0.000 description 1
- 101000710013 Homo sapiens Reversion-inducing cysteine-rich protein with Kazal motifs Proteins 0.000 description 1
- 101100093534 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RPS1B gene Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Programmable Controllers (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】この発明は、シミュレーショ
ンシステム及びシミュレータ並びに管理サーバ及び記録
媒体に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a simulation system, a simulator, a management server, and a recording medium.
【0002】[0002]
【従来の技術】例えば、シーケンス制御装置(PLC
等)の制御プログラムの動作チェック等を行うには、パ
ソコン上にインストールした仮想PLC(いわゆるPL
Cシミュレータ)を用い、制御プログラムを模擬的に実
行させるようになる。従来のPLCシミュレータは、も
っぱら制御プログラムが正しく動作するか等のチェック
をすることを目的とし、処理ステップを順に実行するよ
うにしている。2. Description of the Related Art For example, a sequence controller (PLC)
In order to check the operation of the control program, the virtual PLC (so-called PL) installed on the personal computer
C simulator), and the control program is simulated. The conventional PLC simulator is designed to execute processing steps in order, mainly for checking whether or not the control program operates correctly.
【0003】そして、この種のPLCシミュレータにお
ける制御プログラムの模擬的実行時の処理時間は、PL
Cシミュレーションを実装したパソコンの性能に起因
し、高性能なパソコンを使用するほど同一処理を実行す
るのに要する処理時間は短くなる。[0005] The processing time of a simulated execution of a control program in this type of PLC simulator is represented by PL
Due to the performance of the personal computer on which the C simulation is mounted, the processing time required to execute the same processing becomes shorter as the high-performance personal computer is used.
【0004】[0004]
【発明が解決しようとする課題】しかしながら、従来の
PLCシミュレータでは、以下に示す問題があった。す
なわち、実機のPLC(以下、「実PLC」と称する)
における演算処理の処理能力と、PLCシミュレータを
実行するパソコンの処理能力が異なると、PLCシミュ
レータ上での動作時間と、実PLCにおける動作時間が
異なる。However, the conventional PLC simulator has the following problems. That is, the actual PLC (hereinafter, referred to as “actual PLC”)
If the processing capability of the arithmetic processing in the above differs from the processing capability of the personal computer that executes the PLC simulator, the operation time on the PLC simulator and the operation time in the actual PLC differ.
【0005】また、複数の実PLCがネットワークを介
して接続され協調動作をすることを考えた場合、通常、
それら複数の実PLCは、各実PLCが別々の実行環境
で動作しており、また、個々のPLCの演算処理能力も
異なる。一方、それら複数の実PLCに対応した個々の
PLCシミュレータの場合、同一のパソコン上に各PL
Cシミュレータが実装され、各PLCシミュレータは同
じ実行環境で動作することがある。すると、同一時間だ
け各PLCシミュレータが処理を実行した場合、係る処
理を実行するのに実PLCが動作する時間はばらばらと
なり同期がとれない。従って、複数のPLCの協調動作
をシミュレーションすることはできなかった。[0005] When considering that a plurality of real PLCs are connected via a network and cooperate, usually,
Each of the plurality of real PLCs operates in a separate execution environment, and the individual PLCs also have different arithmetic processing capabilities. On the other hand, in the case of individual PLC simulators corresponding to the plurality of real PLCs,
A C simulator is implemented, and each PLC simulator may operate in the same execution environment. Then, when the respective PLC simulators execute the processing for the same time, the time during which the actual PLC operates to execute the processing varies, and synchronization is not achieved. Therefore, it was not possible to simulate the cooperative operation of a plurality of PLCs.
【0006】これは、従来のパソコン上でPLCをシミ
ュレーションする場合、単体での検証しか想定しておら
ず、公知のPLCシミュレータが、論理的な動作(ロジ
ック)のシミュレートしかしておらず、時間の概念がな
いことによる。[0006] This is because when a conventional PLC is simulated on a personal computer, only a single verification is assumed, and a known PLC simulator only simulates a logical operation (logic). Because there is no concept of
【0007】この発明は、コンピュータ上で複数のPL
Cの協調動作をシミュレーションできるシミュレーショ
ンシステム及びシミュレータ並びに管理サーバ及び記録
媒体を提供することを目的とする。According to the present invention, a plurality of PLs are stored on a computer.
It is an object of the present invention to provide a simulation system and a simulator capable of simulating the cooperative operation of C, a management server and a recording medium.
【0008】[0008]
【課題を解決するための手段】この発明によるシミュレ
ーションシステムは、複数のシミュレータと、そのシミ
ュレータの動作を管理する管理サーバとを備えたシミュ
レーションシステムであって、前記管理サーバは、前記
複数のシミュレータに対し、実環境における所定の動作
時間だけシミュレーション処理するための情報(時間,
時刻,ステップ等)を通知する機能を備える。また、前
記シミュレータは、前記管理サーバから与えられた情報
に基づいて、前記動作時間に相当する所定量の命令をシ
ミュレーションして停止する機能を備えるものである。A simulation system according to the present invention is a simulation system comprising a plurality of simulators and a management server for managing the operation of the simulator. On the other hand, information (time,
Time, step, etc.). Further, the simulator has a function of simulating and stopping a predetermined amount of commands corresponding to the operation time based on information provided from the management server.
【0009】この発明によれば、各シミュレータは、動
作時間、つまり、そのシミュレーションに対応する実機
が同一処理をした際に要する時間を考慮して動作するの
で、複数のシミュレータが、同一の動作時間だけ進むよ
うに処理を実行すると、シミュレータ同士の同期がとれ
る。つまり、コンピュータ上で複数のシミュレータを動
作させてシミュレーションする場合、シミュレータ上の
仮想時間を管理する管理サーバが、個々のシミュレータ
に対して動作時間を指示することで、各シミュレータを
同じ仮想時間で動作させることができ、協調動作をシミ
ュレーションすることができる。According to the present invention, each of the simulators operates in consideration of the operation time, that is, the time required when the actual device corresponding to the simulation performs the same processing. When the processing is executed so as to advance only by the number of times, the simulators can be synchronized. In other words, when simulating by operating multiple simulators on a computer, the management server that manages the virtual time on the simulator instructs each simulator to specify the operating time, so that each simulator operates at the same virtual time. Can be simulated.
【0010】また、前記複数のシミュレータのうちのあ
るシミュレータが停止条件で停止した際に、その旨の通
知を発行し、前記通知を直接または間接的に受信した関
連する所定の他のシミュレータが、前記通知を発行した
シミュレータと同一タイミングで停止するようにすると
よい。[0010] Further, when one of the plurality of simulators is stopped under a stop condition, a notice to that effect is issued. It is preferable to stop at the same timing as the simulator that issued the notification.
【0011】なお、同一タイミングで停止するシミュレ
ータは、全てでも良いし一部でも良い。一部の場合に
は、あるシミュレータが停止条件で停止した場合に停止
する他のシミュレータを関連付けた相関情報を持ち、そ
れに基づいて停止命令をすると良い。The simulators that stop at the same timing may be all or some. In some cases, it is preferable to have correlation information associated with another simulator that stops when a certain simulator stops under a stop condition, and issue a stop instruction based on the correlation information.
【0012】また、この発明に係るシミュレータは、複
数のシミュレータと、そのシミュレータの動作を管理す
る管理サーバとを備えたシミュレーションシステムのた
めのシミュレータであって、前記管理サーバからの情報
に基づいて、所定の動作時間に対応する所定量の命令を
シミュレーションして停止する機能を備えるものであ
る。Further, a simulator according to the present invention is a simulator for a simulation system comprising a plurality of simulators and a management server for managing the operation of the simulator, wherein a simulator is provided based on information from the management server. It has a function of simulating and stopping a predetermined amount of instructions corresponding to a predetermined operation time.
【0013】さらにまた、この発明に係る管理サーバ
は、複数のシミュレータと、そのシミュレータの動作を
管理する管理サーバとを備えたシミュレーションシステ
ムのための管理サーバであって、前記複数のシミュレー
タに対し、そのシミュレータが実環境における所定の動
作時間だけシミュレーション処理するための情報(動作
時間,仮想時刻,ステップ等)を通知する機能を備える
ものである。Furthermore, a management server according to the present invention is a management server for a simulation system including a plurality of simulators and a management server for managing the operation of the simulator. The simulator has a function of notifying information (operation time, virtual time, step, etc.) for performing a simulation process for a predetermined operation time in a real environment.
【0014】また、この発明に係る記録媒体では、実環
境における動作時間を考慮してシミュレーションのため
の命令を実行するシミュレーション処理と、前記シミュ
レーション処理を、所定の動作時間単位で実行させるた
めの命令を出力する管理処理をコンピュータに実行させ
るプログラムを記録媒体に格納した。 *用語の定義 「動作時間」は、シミュレータに対応する実機が、実際
に処理を実行した際にかかる時間を意味する。「動作時
間軸」は、実空間(実環境)上で実際に進行する時間軸
のことを意味する。Further, in the recording medium according to the present invention, a simulation process for executing a command for simulation in consideration of an operation time in a real environment, and a command for executing the simulation process in a predetermined operation time unit A program for causing a computer to execute a management process of outputting the information is stored in a recording medium. * Definition of terms "Operating time" means the time required for the actual machine corresponding to the simulator to actually execute processing. The “operation time axis” means a time axis that actually progresses in a real space (real environment).
【0015】この発明による各種装置等を構成する各手
段を専用のハードウエア回路によって実現することがで
きるし、プログラムされたコンピュータによって実現す
ることもできる。 *管理サーバとシミュレータとの関係 本発明では、各請求項において「管理サーバ」と「シミ
ュレータ」とを備えたシステムと記載しているが、これ
は機能面で分けたものであり、必ず管理サーバとシミュ
レータが別々に構成されている(別の独立したプログラ
ムとしい存在する)必要はない。つまり、シミュレータ
の中に管理サーバ機能を組み込んだものでも良い。この
場合には、見掛上はシミュレータが複数存在するととも
に、管理サーバ単独のものはなく、あるシミュレータか
ら他のシミュレータに対して命令を送るようなシミュレ
ーションシステムとなるが、そのうちの少なくとも1つ
のシミュレータが管理サーバとしての機能を発揮するこ
とになる。Each means constituting various devices according to the present invention can be realized by a dedicated hardware circuit, or can be realized by a programmed computer. * Relationship between Management Server and Simulator In the present invention, each claim describes a system having a “management server” and a “simulator”, but these are divided in terms of functions and must be managed by the management server. And the simulator do not need to be separately configured (existing as separate programs). That is, the simulator may have a management server function incorporated therein. In this case, apparently, there are a plurality of simulators, and there is no management server alone, and the simulation system sends commands from one simulator to another simulator. At least one of the simulators is used. Will function as a management server.
【0016】さらには、その様な管理サーバ機能付きの
シミュレータと通常の管理サーバ機能のないシミュレー
タが存在したとすると、本発明におけるシミュレーショ
ンシステムは、全てが管理サーバ機能付きのシミュレー
タから構成されていても良いし、複数の管理サーバ機能
付きシミュレータと、1または複数の通常のシミュレー
タから構成されていても良いし、1つの管理サーバ機能
付きシミュレータと1または複数の通常のシミュレータ
から構成されていてもよい。Further, assuming that a simulator with such a management server function and a simulator without a normal management server function exist, the simulation system according to the present invention is entirely composed of a simulator with a management server function. It may be composed of a plurality of simulators with a management server function and one or a plurality of ordinary simulators, or may be composed of one simulator with a management server function and one or a plurality of ordinary simulators. Good.
【0017】そして、管理サーバ機能付きシミュレータ
が複数存在する場合には、そのうちの1個が実際の管理
サーバとしての機能を発揮してもよいし、複数のシミュ
レータが協調(所定の順番等)して管理サーバとしての
機能を発揮するようにしても良い。さらに、どの管理サ
ーバ機能付きシミュレータが管理サーバ機能を発揮する
かは、マニュアルで指示しても良いし、各シミュレータ
同士が通信し自発的に決定するようにしても良い。この
様に、本発明は、各種のバリエーションを含む広い概念
である。When there are a plurality of simulators with a management server function, one of them may function as an actual management server, or a plurality of simulators cooperate (in a predetermined order or the like). In this case, the function as the management server may be exhibited. Further, which simulator with the management server function exerts the management server function may be manually instructed, or the simulators may communicate with each other and determine spontaneously. As described above, the present invention is a broad concept including various variations.
【0018】[0018]
【発明の実施の形態】まず、本発明の具体的な構成を説
明する前に、基本的な原理について説明する。「発明が
解決しようとする課題」の欄でも説明した通り、従来の
PLCシミュレータでは時間の概念が考慮されていな
い。そこでまず時間の概念を導入することになるが、こ
こで、必要となる時間の概念は、実PLCで実際に実行
できる実行ステップ数(プログラムステップ数)/実時
間をシミュレートすることを意味する。つまり、 仮想環境における実行ステップ数/仮想時間=実環境に
おける実行ステップ数/実時間 にするようにする。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Before describing a specific configuration of the present invention, a basic principle will be described. As described in the section of “Problems to be Solved by the Invention”, the concept of time is not considered in the conventional PLC simulator. Therefore, the concept of time is first introduced. Here, the concept of necessary time means simulating the number of execution steps (number of program steps) that can be actually executed by the real PLC / the real time. . That is, the number of execution steps in the virtual environment / virtual time = the number of execution steps in the real environment / real time.
【0019】ここで、「実行ステップ数/時間」を決め
る要因を考えると、以下のようになる。図1(a)に示
すように実環境にある2つの実PLC−A(処理能力が
高い),実PLC−B(処理能力が低い)があり、各P
LCでは動作時間における同一時間の間に図示するよう
なロジックa,bを実行するとする。この実PLC−A
に対するするシミュレータAと、実PLC−Bに対応す
るシミュレータBを同一パソコンにインストールして構
成された仮想環境下で、各ロジックa,bを実行したこ
とを想定する。このとき、処理能力は、実PLC−A>
パソコン>実PLC−Bとすると、同一処理ステップ数
からなるロジックaをシミュレータAで実施すると、実
機よりも処理時間が長くかかる。逆に、同一処理ステッ
プ数からなるロジックbをシミュレータBで実施する
と、実機よりも処理時間が短くて済む。従って、仮に同
一時間だけ各シミュレータを稼動させると、実PLCで
処理した際の時間が異なる。従って、 仮想環境における実行ステップ数/仮想時間=実環境に
おける実行ステップ数/実時間 とするためには、ロジックは変更できないので、同図
(b)に示すようにパソコンでシミュレータを動作させ
る際の処理能力を調整するようにした。つまり、その解
決手段の一例としては、各PLCシミュレータに割り当
てる処理時間に差を付ける方法により実現できる。換言
すると、ある仮想時刻において、仮想環境における実行
ステップ数が、実環境における実行ステップ数と同じに
なるような処理時間を与えればよい。Here, the factors that determine the "number of execution steps / time" are considered as follows. As shown in FIG. 1A, there are two real PLC-A (high processing capacity) and real PLC-B (low processing capacity) in the real environment.
It is assumed that the LC executes logics a and b as shown in the drawing during the same operation time. This real PLC-A
It is assumed that each of the logics a and b is executed in a virtual environment configured by installing the simulator A corresponding to the above and the simulator B corresponding to the real PLC-B on the same personal computer. At this time, the processing capacity is the actual PLC-A>
If the personal computer> actual PLC-B, when the logic A having the same number of processing steps is executed by the simulator A, the processing time is longer than that of the actual machine. Conversely, when the logic b having the same number of processing steps is executed by the simulator B, the processing time is shorter than that of the actual machine. Therefore, if each simulator is operated for the same time, the time when processing is performed by the actual PLC differs. Therefore, the logic cannot be changed in order to make the number of execution steps in the virtual environment / virtual time = the number of execution steps in the real environment / real time. Therefore, as shown in FIG. Adjusted processing capacity. That is, as an example of the solving means, it can be realized by a method of giving a difference in processing time allocated to each PLC simulator. In other words, at a certain virtual time, a processing time may be given such that the number of execution steps in the virtual environment is the same as the number of execution steps in the real environment.
【0020】具体的には、例えば、実環境における実時
刻tから△t経過した時の実PLC1,PLC2.…,
PLCnの実行ステップ数がS1,S2,…,Snであ
るならば、図2に示すように、仮想環境における仮想時
刻tから△t経過した時、PLCシミュレータPLC
1’,PLC2’,…,PLCn’の実行ステップ数も
S1,S2,…,Snになる。More specifically, for example, when the actual PLC1, PLC2. …,
If the number of execution steps of PLCn is S1, S2,..., Sn, as shown in FIG. 2, when Δt has elapsed from the virtual time t in the virtual environment, the PLC simulator PLC
, PLCn 'are also S1, S2, ..., Sn.
【0021】つまり、仮想環境において、時刻が微少時
間Δt経過する毎に、その時間に実行すべき実行ステッ
プ数をそれぞれ実行させればよいことになる。この微小
時間の大きさにより、各PLCシミュレータの同期の時
間精度が決定する。通常は、計算し易さから、上述の微
小時間を一定とする方が良い。That is, in the virtual environment, every time the time elapses the minute time Δt, the number of execution steps to be executed at that time may be executed. The time accuracy of synchronization of each PLC simulator is determined by the size of the minute time. Normally, it is better to keep the above-mentioned minute time constant for ease of calculation.
【0022】なお、仮想時刻における微小時間Δtと
は、実PLCが動作時間Δtだけ進む間に処理すべきロ
ジック(命令,処理ステップ)をシミュレータが実施す
るために必要なパソコン上での時間であり、パソコン
(シミュレータ)が実際にその仮想時刻における微小時
間Δt分だけ動作した場合の現実の時間はΔtと異なる
ことがある。そして、図1に示したように、複数の実P
LCの処理能力が異なり、1つのパソコンでシミュレー
ションを行う場合には、各シミュレータの実際の動作時
間は異なることになる。The minute time .DELTA.t at the virtual time is the time on the personal computer necessary for the simulator to execute logic (instructions, processing steps) to be processed while the real PLC advances by the operation time .DELTA.t. However, the actual time when the personal computer (simulator) actually operates for the minute time Δt at the virtual time may be different from Δt. Then, as shown in FIG.
When the simulation performance is different with one personal computer, the actual operation time of each simulator is different.
【0023】次に、本発明の好適な一実施の形態を説明
する。図3に示すように、複数の実PLCの機能を模擬
的に実現する複数のPLCシミュレータ10(PLC
(1),PLC(2),…,PLC(n))と、それら
複数のシミュレータ10と情報の送受を行い、動作の管
理をする仮想時間管理サーバ20と、その仮想時間管理
サーバ20に対し、所定の条件を設定する条件設定用M
MI(マンマシンインタフェース)25を有している。
そして、複数のPLCシミュレータ10と、仮想時間管
理サーバ20はアプリケーションとして同一のパソコン
にインストールされている。また条件設定用MMIは、
パソコンにおけるMMI(キーボード,マウス等の入力
装置やモニタ等の出力装置等)を利用することができ
る。Next, a preferred embodiment of the present invention will be described. As shown in FIG. 3, a plurality of PLC simulators 10 (PLCs) that simulate the functions of a plurality of real PLCs
(1), PLC (2),..., PLC (n)), a virtual time management server 20 that transmits and receives information to and from the plurality of simulators 10 and manages operations. , A condition setting M for setting a predetermined condition
An MI (man-machine interface) 25 is provided.
The plurality of PLC simulators 10 and the virtual time management server 20 are installed on the same personal computer as applications. The condition setting MMI is
An MMI (an input device such as a keyboard and a mouse and an output device such as a monitor) in a personal computer can be used.
【0024】さらに、本形態で用いるPLCシミュレー
タ10は、図4に示すように、「共通処理」,「演算処
理」,「I/Oリフレッシュ」,「周辺サービス」を順
にサイクリックに実行する実PLCの動作に対応して同
一の手順で模式的に実行する。Further, as shown in FIG. 4, the PLC simulator 10 used in the present embodiment cyclically executes “common processing”, “arithmetic processing”, “I / O refresh”, and “peripheral services” in this order. It is typically executed in the same procedure corresponding to the operation of the PLC.
【0025】ここで、「共通処理」は、I/Oバスチェ
ック,ユーザプログラムチェック,時間のリフレッシュ
などを行う処理である。「演算処理」は、ユーザプログ
ラムを命令実行することである。「I/Oリフレッシ
ュ」は、基本I/Oユニット,高機能I/Oユニットな
どのI/Oリフレッシュをすることである。外部I/O
に信号を出力するOUTリフレッシュと外部I/Oから
信号を入力するINリフレッシュがある。Here, the "common process" is a process for performing an I / O bus check, a user program check, time refresh, and the like. "Operation processing" is to execute a command of a user program. “I / O refresh” refers to performing I / O refresh of a basic I / O unit, a high-performance I / O unit, and the like. External I / O
OUT refresh, which outputs a signal, and IN refresh, which inputs a signal from an external I / O.
【0026】そして、これら通常の命令を順次実行する
機能に加え、実PLCでの動作時間を考慮し、実行する
機能を有している。すなわち、例えば図5に示すよう
に、実行命令と、その実行命令を対応する実PLCが実
施した場合にかかる時間(以下、「動作時間」と称する)
を関連付けたテーブルを持つ。そして、外部から動作時
間が与えられると、その時間分の命令を実行する機能を
持つ。Further, in addition to the function of sequentially executing these ordinary instructions, it has a function of executing in consideration of the operation time in the actual PLC. That is, as shown in FIG. 5, for example, an execution instruction and a time required when the execution instruction is executed by a corresponding real PLC (hereinafter, referred to as “operation time”).
Has a table associated with it. When an operation time is given from the outside, it has a function of executing an instruction for the time.
【0027】一例を示すと、例えばPLC(1)のシミ
ュレータが、図6に示すようなラダープログラムを実行
するようになっており、動作時間が3msecと指示さ
れた場合、1回目の処理(ブロック1)では、3mse
cかかる共通処理をし、2回目の処理(ブロック2)で
は、2つの入力命令と1つの出力命令を実行し、……4
回目の処理(ブロック4)では、1つの出力命令と2つ
の入力命令を実行し、……6回目の処理(ブロック6)
では、1つのA命令を実行する。このようにすることに
より、1回の処理が終了したならば、その処理がパソコ
ン1上でどのくらいかかったかに関係なく、実PLCで
の動作時間は3msec進んだことになる。As an example, the simulator of the PLC (1) executes a ladder program as shown in FIG. 6, and when the operation time is instructed to be 3 msec, the first processing (block In 1), 3mse
c. The common processing is performed, and in the second processing (block 2), two input instructions and one output instruction are executed, and... 4
In the third processing (block 4), one output instruction and two input instructions are executed.... Sixth processing (block 6)
Then, one A instruction is executed. In this way, if one process is completed, the operation time in the actual PLC is advanced by 3 msec regardless of how long the process takes on the personal computer 1.
【0028】従って、各シミュレータ10に対し、同一
の動作時間を指示すると、各回の処理が終わった段階で
は、各PLCシミュレータ10に対応する実PLCが実
際に係る処理を実行した場合の経過時間はその動作時間
となり、実時間上での動作タイミングが一致する。つま
り、同期がとれる。Therefore, if the same operation time is instructed to each simulator 10, at the stage when each processing is completed, the elapsed time when the actual PLC corresponding to each PLC simulator 10 actually executes the processing is: This is the operation time, and the operation timing in real time matches. That is, synchronization can be achieved.
【0029】また、処理時間や処理ステップ数の相違か
ら、図6に示すPLC(1)のシミュレータの1サイク
ルは9回の処理で終了するが、図7に示すPLC(2)
では11回の処理で1サイクルが完了する。つまり、1
0回目の処理を実行する際には、PLC(1)は、2サ
イクル目の共通処理を実行するが、PLC(2)は1サ
イクル目のI/Oリフレッシュをすることになる。この
ように、処理が進むにつれてサイクル数はずれてくる
が、これは実PLCを用いた実環境でも同様に起こるの
で問題が無い。Further, one cycle of the simulator of the PLC (1) shown in FIG. 6 is completed by nine processes due to differences in the processing time and the number of processing steps, but the PLC (2) shown in FIG.
Then, one cycle is completed by 11 times of processing. That is, 1
When performing the 0th process, the PLC (1) performs the common process in the second cycle, but the PLC (2) performs the I / O refresh in the first cycle. As described above, the number of cycles shifts as the processing proceeds, but this does not pose a problem since this also occurs in an actual environment using an actual PLC.
【0030】なお、動作時間の指示の与え方は、動作時
間を固定的に与えても良いし、各回で指示する動作時間
を変えても良い。何れの場合も、各シミュレータ10に
与える1回当たりの動作時間を同じにすれば、その回が
終了した時点での各シミュレータ10に対応する実PL
Cの実時間軸上での動作タイミングは一致する。The instruction of the operation time may be given in a fixed manner, or may be changed each time. In any case, if the operating time per operation given to each simulator 10 is the same, the actual PL corresponding to each simulator 10 at the time when the operation is completed is completed.
The operation timings of C on the real time axis coincide.
【0031】また、実際には、指示された動作時間にな
るように命令を実行した場合に、動作時間丁度で命令が
終了するのではなく、過不足が生じることが有る。その
場合には、過不足分を記憶し、次の処理で調整するとよ
い(この調整手法は後述する)。In practice, when an instruction is executed so as to reach the designated operation time, the instruction may not be completed just in the operation time, but may be excessive or insufficient. In that case, the excess or deficiency may be stored and adjusted in the next process (this adjustment method will be described later).
【0032】一方、仮想時間管理サーバ20は、各PL
Cシミュレータ10に対し、その回に処理する動作時間
等を順番に指示する。また、各シミュレータ10に対し
て一時停止命令や、停止解除命令を与えたり、各PLC
シミュレータ10からの一時停止発生通知や、停止解除
指示通知を受けたりする。On the other hand, the virtual time management server 20
It instructs the C simulator 10 in sequence the operating time and the like to be processed each time. In addition, a temporary stop command and a stop release command are given to each simulator 10,
It receives a temporary stop occurrence notification and a stop release instruction notification from the simulator 10.
【0033】さらに、条件設定MMI25は、PLCシ
ミュレータの動作時間や、シミュレータの停止の相関条
件等を仮想時間管理サーバ20に与える。ここで停止の
相関条件は、あるPLCが所定の停止条件にしたがって
停止した場合に、停止する必要のある他のPLCを関連
付けたものである。Further, the condition setting MMI 25 gives the operating time of the PLC simulator, the correlation condition for stopping the simulator, and the like to the virtual time management server 20. Here, the stop correlation condition associates another PLC that needs to be stopped when a certain PLC stops according to a predetermined stop condition.
【0034】また、その停止の相関条件にしたがい停止
する他のシミュレータへの通知であるが、仮想時間管理
サーバ20が、停止したPLCシミュレータを検知し
て、それに相関する停止させたいPLCシミュレータに
対して停止命令を通知する場合と、停止したPLCシミ
ュレータが、停止させたいPLCシミュレータに直接通
知する場合の何れもとり得る。In addition, the virtual time management server 20 detects the stopped PLC simulator and notifies the other simulator to be stopped that it is correlated to the stopped simulator according to the stop correlation condition. In this case, the stopped PLC simulator may directly notify the PLC simulator to be stopped.
【0035】次に、通常のプログラム実行処理の概要に
ついて説明する。図3に示すように、仮想時間管理サー
バ20は、各シミュレータ10に対し、順番に動作時間
とともに、実行命令を通知する。つまり、まずPLC
(1)のシミュレータ10に対し実行命令を通知する
()。これを受けたシミュレータ10は、動作時間分
の命令を実行後、動作終了通知を仮想時間管理サーバ2
0に返す(′)。この通知を受けた仮想時間管理サー
バ20は、次のシミュレータ(図では、PLC(2)用
のシミュレータ10)に、実行命令を通知する()。
このような処理を繰り返し行い、PLC(n)用のシミ
ュレータ10から終了通知を受けると(′)、その回
の処理は終了し、各プログラムはそれぞれ「a」まで処
理が進む。この「a」のタイミングは、実PLCでは、
同時に処理を開始した場合に同一時刻(開始から指示し
た動作時間分だけ経過した時点)である。Next, an outline of a normal program execution process will be described. As shown in FIG. 3, the virtual time management server 20 sequentially notifies each simulator 10 of an execution instruction along with an operation time. That is, first, PLC
An execution instruction is notified to the simulator (1) (). After receiving the command, the simulator 10 executes the command for the operation time and then sends an operation end notification to the virtual time management server 2.
Return to 0 ('). The virtual time management server 20 that has received the notification notifies the next simulator (the simulator 10 for the PLC (2) in the figure) of the execution instruction ().
When such a process is repeatedly performed and an end notification is received from the PLC (n) simulator 10 ('), the process is ended and each program proceeds to "a". The timing of this “a” is, in the actual PLC,
It is the same time when the processing is started at the same time (when the operation time instructed from the start has elapsed).
【0036】このようにして1回目の処理が終了する
と、2回目の処理に移行する。つまり、処理→′→
→′→……→→′の処理をする。これにより、
各プログラムは「b」まで進む。そして、同一アルファ
ベットは、実環境における実PLCが動作した場合の実
時間軸上での同一時刻(タイミング)での処理終了時点
を示すことになる。よって、各PLCシミュレーション
10の同期がとれ、協調動作する実PLCのシミュレー
ションが行えることになる。When the first processing is completed in this way, the processing shifts to the second processing. That is, processing → '→
→ '→ …… →→' This allows
Each program proceeds to “b”. The same alphabet indicates the processing end point at the same time (timing) on the real time axis when the real PLC operates in the real environment. Therefore, the respective PLC simulations 10 are synchronized, and a simulation of a real PLC that performs a cooperative operation can be performed.
【0037】ここで、各処理のステップ量(図中矢印の
長さ)が違うが、これは、各実PLCの処理能力や、実
行する命令を処理する時間が異なるためである。また、
1回のスキャンのステップ数や処理時間が異なるため、
1回のスキャンが終了するまでの動作時間も異なる。そ
して、図示の例では、PLC(1)では、a〜hの8回
分の動作時間で1つのスキャンが終了するが、PLC
(2)では、a〜gの7回分,PLC(n)ではa〜f
の6回分の動作時間で1つのスキャンが終了する。Here, the step size of each process (the length of the arrow in the figure) is different because the processing capacity of each real PLC and the time for processing an instruction to be executed are different. Also,
Because the number of steps and processing time for one scan are different,
The operation time until one scan ends is also different. In the illustrated example, in the PLC (1), one scan ends in eight operation times a to h.
In (2), seven times a to g, and in PLC (n), a to f
One scan is completed in six operation times.
【0038】次に、より具体的な処理機能の説明をす
る。図8,図9は、PLCシミュレータ10の機能を説
明するフローチャートである。また、図10,図11,
図12はPLCシミュレータ10が持つテーブルのデー
タ構造の一例を示している。また、図13,図14は、
仮想時間管理サーバ20の機能を説明するフローチャー
トであり、図15はその仮想時間管理サーバ20が持つ
テーブルのデータ構造の一例を示している。Next, more specific processing functions will be described. FIGS. 8 and 9 are flowcharts illustrating the functions of the PLC simulator 10. 10, 11,
FIG. 12 shows an example of a data structure of a table held by the PLC simulator 10. 13 and FIG.
FIG. 15 is a flowchart illustrating functions of the virtual time management server 20, and FIG. 15 illustrates an example of a data structure of a table included in the virtual time management server 20.
【0039】本実施の形態では、仮想時間管理サーバ2
0から各PLCシミュレータ10に対し、動作時間を指
定し、PLCシミュレータ10が指示された動作時間分
だけ動作するようにしている。このように動作時間を指
定して動作させることにより、各PLCシミュレータ1
0の時間を、相対的に進ませたり遅らせたりできるとい
うメリットを生じる。In this embodiment, the virtual time management server 2
From 0, an operation time is specified for each PLC simulator 10 so that the PLC simulator 10 operates for the specified operation time. By specifying the operation time in this way, each PLC simulator 1
There is an advantage that the time of 0 can be relatively advanced or delayed.
【0040】さらに本形態では、指示された動作時間と
同一時間処理できない場合、つまり、各命令を実行し、
最後の命令を実行すると動作時間を超えてしまい、最後
の命令を実行しないと動作時間に達しないような場合が
あるが、係る場合にその時間のずれを調整する機能を持
たせている。このようにすると、精度良く同期がとれる
ので、PLCシミュレータ間の同期が微妙な時には、よ
り正確に動作させることができる。Further, in this embodiment, when processing cannot be performed for the same time as the instructed operation time, that is, each instruction is executed,
When the last instruction is executed, the operation time may be exceeded, and the operation time may not be reached unless the last instruction is executed. In such a case, a function for adjusting the time lag is provided. By doing so, the synchronization can be achieved with high precision, so that when the synchronization between the PLC simulators is delicate, the operation can be performed more accurately.
【0041】まずPLCシミュレータ10は、図10に
示すように、実行単位ごとにその1実行単位の命令を実
PLCが実行した場合にかかる時間(命令実行時間)を
関連付けた実行単位のタイムテーブルを持つ。さらに、
実際のラダープログラムの実行順番の順に実行単位を格
納し、その実行単位の命令実行時間と残動作時間を関連
付けたを示した実行時間管理テーブルを持つ。この実行
時間管理テーブルは、1実行単位の欄には、動作するラ
ダープログラムの処理順にしたがって登録でき、命令実
行時間の欄には図10に示す実行単位のタイムテーブル
を参照し、1実行単位名に対応する命令実行時間を読み
出すとともに格納することにより登録できる。また、残
動作時間の欄は初期値は不定である。さらに、停止条件
等にともない、停止する(停止モードになる)機能も持
つ。First, as shown in FIG. 10, the PLC simulator 10 stores an execution unit time table in which the time (instruction execution time) required when an actual PLC executes an instruction of one execution unit for each execution unit is associated. Have. further,
It has an execution time management table that stores execution units in the order of execution of the actual ladder program and associates the instruction execution time and the remaining operation time of the execution unit. This execution time management table can be registered in the column of one execution unit in accordance with the processing order of the ladder program to be operated. In the column of instruction execution time, refer to the time table of the execution unit shown in FIG. Can be registered by reading and storing the instruction execution time corresponding to. In the column of the remaining operation time, the initial value is undefined. Further, it has a function of stopping (entering a stop mode) according to a stop condition or the like.
【0042】この前提にたち、PLCシミュレータ10
は、図8,図9に示すように、まず、仮想時間管理サー
バ20からの動作時間の指示を待つ(ST1)。そして
指示を受けたならば(例えば「3msec」)、自己の
状態、つまり「停止モードが解除されたか?(ST
2)」,「停止モード中か?(ST4)」の判断を行
い、何れかに該当した場合には、その状態を返値として
仮想時間管理サーバ20に通知し(ST3,ST5)、
次の指示を待つ。なお、これら停止モードの解除通知や
停止モード中であることの通知は、動作時間を受けたこ
とに起因する返値として返すのではなく、任意のタイミ
ングで自発的に通知するようにしてもよい。On this premise, the PLC simulator 10
First, as shown in FIG. 8 and FIG. 9, the process waits for an operation time instruction from the virtual time management server 20 (ST1). Then, if the instruction is received (for example, “3 msec”), the self-state, that is, “Is the stop mode released? (ST
2) "," is in stop mode? (ST4) ", and if any of them is true, the status is notified to the virtual time management server 20 as a return value (ST3, ST5),
Wait for the next instruction. The stop mode release notification and the notification of the stop mode are not returned as a return value due to receiving the operation time, but may be voluntarily notified at an arbitrary timing. .
【0043】また、何れの条件もNo、つまり、正常な
動作モード中の場合には、実行カウンタの値を0にリセ
ットし、現在の実行ポインタ(図10では矢印で指し示
す1回目の「命令語A」)を、「実行ポインタ2」として
コピーし、その位置を記憶する(ST6,ST7)。Also, if any condition is No, that is, in the normal operation mode, the value of the execution counter is reset to 0, and the current execution pointer (the first instruction word indicated by an arrow in FIG. 10) A)) is copied as "execution pointer 2" and its position is stored (ST6, ST7).
【0044】次いで、実行ポインタで指し示された実行
命令に対応する残動作時間の欄に、仮想時間管理サーバ
から受け取った「動作時間」を、その前の処理で残った
残動作時間に加算した値を登録する。仮に前回の処理の
残動作時間が0とすると、図11に示すように「3.0
0msec」を登録する(ST8)。Next, the "operation time" received from the virtual time management server is added to the remaining operation time remaining in the previous process in the column of the remaining operation time corresponding to the execution instruction pointed to by the execution pointer. Register the value. Assuming that the remaining operation time of the previous process is 0, as shown in FIG.
0 msec "is registered (ST8).
【0045】そして、実行時間管理テーブルの残動作時
間から命令実行時間を減算し(命令語Aの場合には
「3.00−0.01=2.99」)、実行ポインタを
次に進め、そのポインタで示された残動作時間の欄にそ
の算出値を設定する(ST9)。具体的には、「命令語
A」の次の欄である「命令語U」に対応する残動作時間
に2.99を登録する。また、実行数カウンタを1イン
クリメントする(ST10)。Then, the instruction execution time is subtracted from the remaining operation time in the execution time management table (in the case of the instruction word A, "3.00-0.01 = 2.99"), and the execution pointer is advanced to next. The calculated value is set in the column of the remaining operation time indicated by the pointer (ST9). Specifically, 2.99 is registered in the remaining operation time corresponding to “command U”, which is the next column of “command A”. Further, the execution number counter is incremented by one (ST10).
【0046】上記したステップ9,10の処理を、残動
作時間が負になるまで順次繰り返し実行する(ST1
1)。これにより、図11の例では、命令語Dまで処理
すると負になるので、そこで処理を終了し、ステップ1
2に進む。The above-described steps 9 and 10 are sequentially repeated until the remaining operation time becomes negative (ST1).
1). As a result, in the example of FIG. 11, processing up to the instruction word D results in a negative value.
Proceed to 2.
【0047】つまり、実行ポインタ2として記憶してい
た開始当初のポインタ位置を現在の実行ポインタにする
(ST12)。これにより、図11に示す例ではステッ
プ11でYesになった時の現在の実行ポインタは命令
語Dまで進んでいるが、このステップ12を実行するこ
とにより、元の命令語Aの位置に戻る。That is, the pointer position at the beginning of the start stored as the execution pointer 2 is set as the current execution pointer (ST12). As a result, in the example shown in FIG. 11, the current execution pointer at the time of “Yes” in step 11 has advanced to the instruction word D, but by executing this step 12, the position returns to the original instruction word A. .
【0048】そして、カウンタを0にセットし(ST1
3)、停止条件が成立したか否かを判断し(ST1
4)、成立していない場合には、1実行単位ごとに順番
にシミュレーションを実行し、その実行する都度、現在
の実行ポインタを次に進めるとともにカウンタを1イン
クリメントする(ST15〜ST17)。Then, the counter is set to 0 (ST1).
3) It is determined whether a stop condition is satisfied (ST1).
4) If not established, the simulation is executed sequentially for each execution unit, and each time the execution is executed, the current execution pointer is advanced to the next and the counter is incremented by 1 (ST15 to ST17).
【0049】上記したステップ14から17の処理を繰
り返し実行し、カウンタが実行数カウンタ以上になった
ならばそこで処理を終了し、ステップ19に飛び、終了
通知として返値(実行中)を仮想時間管理サーバに通知
し(ST19)、ステップ1に戻り次の動作時間の指示
を待つ。The above steps 14 to 17 are repeatedly executed, and when the counter becomes equal to or larger than the execution number counter, the processing is terminated. It notifies the management server (ST19) and returns to step 1 to wait for the next operation time instruction.
【0050】なお、ステップ13でカウンタを0にセッ
トしたことにより、ステップ1からステップ11までの
処理で残動作時間が負になる1つ前の処理、つまり、残
存時間が0に最も近い正の値となる処理まで、実際にス
テップ15の処理を行いシミュレーションを実行し、そ
の後、ステップ16により現在の実行ポインタを1つ進
めることにより、現在のポインタは残動作時間が負にな
る実行単位の位置(図11の例では命令語D)を指し示
すことになる。Since the counter is set to 0 in step 13, the processing immediately before the remaining operation time becomes negative in the processing from step 1 to step 11, that is, the positive processing whose remaining time is closest to 0 is performed. The simulation is performed by actually performing the processing of step 15 until the processing reaches the value, and then the current execution pointer is advanced by one in step 16 so that the current pointer becomes the position of the execution unit where the remaining operation time becomes negative. (Instruction D in the example of FIG. 11).
【0051】なおまた、停止条件が成立した場合には、
ステップ14の分岐判断でYesとなり、ステップ20
に飛び「停止モード」にするとともに、返値(停止)を
仮想時間管理サーバ20に通知し(ST21)、ステッ
プ1に戻り次の動作時間の指示を待つ。When the stop condition is satisfied,
The determination at step 14 becomes Yes, and
In step ST21, a return value (stop) is notified to the virtual time management server 20 (ST21), and the process returns to step 1 to wait for an instruction for the next operation time.
【0052】なお、図11に基づく一連の処理が終了し
た時点では(停止条件に一致しないとする)、命令語V
までシミュレーションを実行し、その時の残動作時間は
1.77msecとなり、現在の実行ポインタは次の
「命令語D」の位置にある。従って、次に、仮想時間管
理サーバからの動作時間の指示を受け、ステップ1から
の処理を実行した場合には、図12に示すように、ステ
ップ8の処理を実行することにより、残動作時間1.7
7msecに動作時間3.0msecを加算して得られ
た4.77msecが、命令語Dの残動作時間の欄に登
録される。At the time when a series of processing based on FIG. 11 is completed (it is determined that the stop condition is not met), the instruction word V
The remaining operation time at that time is 1.77 msec, and the current execution pointer is at the position of the next “instruction word D”. Therefore, next, when an operation time instruction is received from the virtual time management server and the processing from step 1 is executed, the processing of step 8 is executed as shown in FIG. 1.7
4.77 msec obtained by adding 3.0 msec to 7 msec is registered in the remaining operation time column of the instruction word D.
【0053】次に、仮想時間管理サーバ20の機能につ
いて説明する。仮想時間管理サーバ20の基本機能は、
複数のPLCシミュレータ10に対して、順番に動作時
間を通知し、実行モードを受信する。そして、全てのP
LCシミュレータへの指示が終了したら、再度、繰り返
し処理する。さらに、PLCシミュレータが停止条件で
停止した場合は、実行モード(停止)を受信するので、
それにしたがい、必要なPLCシミュレータに対して停
止命令を発行する。さらに、仮想PLC管理テーブル
(図15参照)により、各PLCシミュレータ10の実
行状態を管理する機能を持つ。Next, the function of the virtual time management server 20 will be described. The basic functions of the virtual time management server 20 are as follows:
The operation time is notified to the plurality of PLC simulators 10 in order, and the execution mode is received. And all P
When the instruction to the LC simulator is completed, the processing is repeated again. Further, when the PLC simulator is stopped under the stop condition, the execution mode (stop) is received.
Then, a stop instruction is issued to the necessary PLC simulator. Further, it has a function of managing the execution state of each PLC simulator 10 by using a virtual PLC management table (see FIG. 15).
【0054】この仮想PLC管理テーブル(図15
(a))は、自己が管理する全てのPLCシミュレータ
と、現状態と次状態の3つの情報を関連付けたテーブル
となっている。現状態は、全てのPLCシミュレータに
対して動作時間を通知する今回分におけるPLCシミュ
レータの状態を示し、次状態は今回分の通知を全てのP
LCシミュレータに対して通知した場合に、1番目のP
LCシミュレータに戻って通知をしなおす次の回におけ
るPLCシミュレータの状態を示す。This virtual PLC management table (FIG. 15)
(A)) is a table in which all the PLC simulators managed by itself are associated with three pieces of information of the current state and the next state. The current state indicates the state of the PLC simulator at this time when the operation time is notified to all the PLC simulators.
When notified to the LC simulator, the first P
This shows the state of the PLC simulator at the next time when the notification is returned to the LC simulator again.
【0055】つまり、あるPLCシミュレータ10から
停止条件に合致した旨の返値を受けた場合、図15
(b)に示す停止条件テーブルに基づいて相関条件のあ
る停止させたいPLCシミュレータを検索し、それを停
止させる必要がある。このとき、PLCシミュレータは
1つずつ順番に処理をしていくものの、実環境において
は、今回分の通知で動作する各PLCシミュレータは同
時に稼動するので、上記した停止に伴なう相関関係のあ
るPLCに対する停止命令の反映は、次の回の動作とな
る。そこで、停止したことを受けると、対応するPLC
シミュレータと、それと相関する他のPLCシミュレー
タの次状態を実行不可にする。これにより、次の回の処
理をする際に、次状態のデータを現状態のデータに上書
きすることにより、その次の回を実行する際に実際の実
行可能なPLCシミュレータがどれであるかを知ること
ができる。That is, when a return value indicating that the stop condition is met is received from a certain PLC simulator 10, FIG.
It is necessary to search for a PLC simulator to be stopped having a correlation condition based on the stop condition table shown in (b) and stop it. At this time, although the PLC simulators perform the processing one by one in order, in a real environment, since the PLC simulators that operate according to the notification of this time operate simultaneously, there is a correlation associated with the above-mentioned stop. The reflection of the stop command on the PLC is the next operation. Therefore, when receiving the stop, the corresponding PLC
The next state of the simulator and the other PLC simulator correlated therewith are disabled. By doing so, when the next round of processing is performed, the data of the next state is overwritten with the data of the current state, so that which PLC simulator can be actually executed when the next round is executed is determined. You can know.
【0056】そして、仮想時間管理サーバ20の具体的
な機能としては、図13,図14に示すように、まず、
自己が管理すべきPLCシミュレータの情報を取得し、
それら全てのPLCシミュレータを起動するとともに、
仮想PLC管理テーブルを初期化する(ST31〜ST
33)。仮想PLC管理テーブルは、各PLCシミュレ
ータの状態を管理するもので図15(a)に示すような
データ構造となっている。The specific functions of the virtual time management server 20 are as follows, as shown in FIGS.
Acquires information on the PLC simulator to be managed by itself,
While starting all those PLC simulators,
Initialize the virtual PLC management table (ST31 to ST31)
33). The virtual PLC management table manages the state of each PLC simulator and has a data structure as shown in FIG.
【0057】まず、管理する全てのPLCシミュレータ
に対して、その回の動作時間を指示したかを判断し(S
T34)、通知していない場合には、指示対象のPLC
シミュレータに対して動作時間を通知する(ST3
5)。また、全てのPLCシミュレータ10に通知をし
たならば、指示対象のPLCシミュレータを1番目に
し、仮想PLC管理テーブルの次状態のデータを現状態
にコピーする(ST36,ST37)。そして、その1
番目のPLCシミュレータに対して動作時間を通知する
(ST35)。First, it is determined whether or not the operation time has been instructed to all the PLC simulators to be managed (S
T34) If not notified, the PLC to be instructed
The operation time is notified to the simulator (ST3).
5). When all the PLC simulators 10 have been notified, the designated PLC simulator is set first, and the data of the next state of the virtual PLC management table is copied to the current state (ST36, ST37). And that one
The operation time is notified to the second PLC simulator (ST35).
【0058】このようにして所定のPLCシミュレータ
に対して動作時間を通知したならば、指示したPLCシ
ミュレータからの返値を待つ(ST39)。そして、そ
の返値の内容が「停止」のときには、停止条件テーブル
から、指定したPLCの停止条件と連動して停止するP
LCシミュレータを検出し、それらについて次状態を実
行不可にする(ST40,ST41)。また、返値が
「停止解除」の場合には、停止条件テーブルから、指定
したPLCの停止条件と連動して停止するPLCシミュ
レータを検出し、それらについて次状態を実行可にする
(ST42,ST43)。その後、指示するシミュレー
タを次に進めステップ34に戻る。以後、上記した各処
理を順に繰り返し実行することになる。When the operation time has been notified to the predetermined PLC simulator in this way, a return value from the designated PLC simulator is waited (ST39). When the content of the return value is “stop”, the stop condition table is used to stop the operation in accordance with the stop condition of the specified PLC.
LC simulators are detected, and the next state is disabled for them (ST40, ST41). If the return value is "stop release", a PLC simulator that stops in conjunction with the stop condition of the specified PLC is detected from the stop condition table, and the next state is enabled for them (ST42, ST43). ). Thereafter, the designated simulator is advanced next, and the process returns to step 34. Thereafter, the above-described processes are repeatedly executed in order.
【0059】次に別の実施の形態を説明する。上記した
実施の形態では、具体的な動作時間を与えるようにし
た。つまり、基本的に全てのPLCシミュレータに対し
て毎回動作時間を与えるようにし、それに対応して各P
LCシミュレータもその動作時間分だけ処理を実行する
ようにした。これに対し、本形態では、仮想時刻を通知
し、その仮想時刻になるまで指示されたPLCシミュレ
ータが処理を実行するようにした。ここで、「仮想時
刻」とは、ある時間原点からの累積時間を意味する。Next, another embodiment will be described. In the above-described embodiment, a specific operation time is given. In other words, basically, an operation time is given to every PLC simulator every time, and each P
The LC simulator also executes processing for the operation time. On the other hand, in the present embodiment, the virtual time is notified, and the designated PLC simulator executes the processing until the virtual time is reached. Here, the “virtual time” means an accumulated time from a certain time origin.
【0060】このようにすると、各PLCシミュレータ
は、仮想時刻を知っているので、自分で時間の調節をす
ることが可能となる。さらに、シミュレーション中に、
別のPLCシミュレータを追加しても、時間を合わせる
ことができる。さらにまた、仮に所定回数分だけあるP
LCシミュレータに対して仮想時刻の通知を行わない場
合でも、その後に仮想時刻の通知を受けることにより、
一度に他のPLCシミュレータと同一時刻まで進み、タ
イミングを合わせることができる。In this way, each PLC simulator knows the virtual time and can adjust the time by itself. In addition, during the simulation,
Even if another PLC simulator is added, the time can be adjusted. Furthermore, if a certain number of P
Even when the virtual time is not notified to the LC simulator, by receiving the notification of the virtual time thereafter,
It can advance to the same time as another PLC simulator at a time and adjust the timing.
【0061】まず、PLCシミュレータ10の機能は、
図16,図17に示すようになる。基本的には、動作時
間を直接通知する図8,図9と同様で、対応する処理ス
テップには同一ステップ番号を付し、その詳細な説明を
省略する。また、このPLCシミュレータ10も、図1
0,図11に示すような実行単位のタイムテーブルや実
行時間管理テーブルを持つ。さらに、仮想時間管理サー
バ20からは、進むべき「仮想時刻」が通知されるの
で、少なくとも最終仮想時刻、つまり前回受け取った仮
想時刻を記憶保持する記憶部も有している(図示省
略)。First, the functions of the PLC simulator 10 are as follows.
As shown in FIGS. Basically, this is the same as in FIGS. 8 and 9 in which the operation time is directly notified. Corresponding processing steps are denoted by the same step numbers, and detailed description thereof will be omitted. Also, this PLC simulator 10
0 and an execution unit time table and an execution time management table as shown in FIG. Further, since the virtual time management server 20 notifies the "virtual time" to be advanced, the virtual time management server 20 also has a storage unit for storing at least the last virtual time, that is, the virtual time received last time (not shown).
【0062】この前提にたち、まず、仮想時間管理サー
バ20から送られてくる「仮想時刻」の指示を待つ(S
T1′)。そして、その仮想時刻を受け取ったならば、
自己の現在のモードを確認し(ST2,ST4)、必要
に応じて返値を通知する(ST3,ST5)。そして、
実行カウンタを0にするとともに、現在の実行ポインタ
を実行ポインタ2にコピーして保存する(ST6,ST
7)。On this premise, first, an instruction of “virtual time” sent from the virtual time management server 20 is waited (S
T1 '). And if you receive that virtual time,
It confirms its own current mode (ST2, ST4) and notifies a return value if necessary (ST3, ST5). And
The execution counter is set to 0, and the current execution pointer is copied and stored in the execution pointer 2 (ST6, ST6).
7).
【0063】次に、受け取った仮想時刻と、1つ前に受
け取った仮想時刻との差を求める。これにより、その差
分を「動作時間」とする(ST22)。つまりこの差分
が、上記した実施の形態における「動作時間」と等価の
ものとなるので、以下の処理は動作時間を与えられた場
合の処理手順と同様にすることができる。Next, a difference between the received virtual time and the virtual time received immediately before is obtained. Thereby, the difference is set as the “operation time” (ST22). That is, since this difference is equivalent to the “operation time” in the above-described embodiment, the following processing can be the same as the processing procedure when the operation time is given.
【0064】また、仮想時間管理サーバ20の機能は、
上記したように各PLCシミュレータに対して仮想時刻
を通知することを除き、基本的に動作時間を指示する上
記した実施の形態と同様である。よって、図13,図1
4に示したフローチャートのうち、ステップ35の処理
を「PLCシミュレータに「仮想時刻」を通知する。」
とし、その他は各図に示すフローチャートをそのまま適
用できる。The function of the virtual time management server 20 is as follows.
Except for notifying the virtual time to each PLC simulator as described above, it is basically the same as the above-described embodiment in which the operation time is instructed. Therefore, FIG. 13 and FIG.
In the flowchart shown in FIG. 4, the processing of step 35 is described as “notifying the PLC simulator of“ virtual time ”. "
Otherwise, the flowcharts shown in the respective drawings can be applied as they are.
【0065】もちろん、必ずしも係るフローチャートを
実施するものに限ることは無く、例えば、所定のPLC
シミュレータに対してはあるタイミングで通知しないよ
うにする処理を付加しても良い。Of course, the present invention is not necessarily limited to the one that executes the flowchart.
A process may be added for notifying the simulator at a certain timing.
【0066】また、上記した各実施の形態は何れも実際
に各命令語をシミュレーション実行する前に、指定され
た動作時間/仮想時刻を超えないことを確認した上で処
理を実行するようにしたが、本発明はこれに限ることは
無く、いきなり各命令語を実行しても良い。Further, in each of the above-described embodiments, before actually executing the simulation of each instruction word, it is confirmed that the processing does not exceed the designated operation time / virtual time, and then the processing is executed. However, the present invention is not limited to this, and each command may be executed immediately.
【0067】その場合のPLCシミュレータの機能とし
ては例えば図18に示すようにすることができる。すな
わち、ステップ1からステップ5までの処理は上記した
各実施の形態と同様である。その後、積算値を初期化し
(ST51)、1命令語ずつ順にシミュレーションを実
行しながら、その命令語を実施したことによる命令実行
時間を積算する(ST52〜ST54)。The function of the PLC simulator in that case can be, for example, as shown in FIG. That is, the processing from step 1 to step 5 is the same as in each of the above embodiments. Thereafter, the integrated value is initialized (ST51), and while executing the simulation in order one instruction word at a time, the instruction execution time by executing the instruction word is integrated (ST52 to ST54).
【0068】そして、積算した実行時間の積算値が与え
られた動作時間を超えるまで、上記したステップ52か
ら54までの処理を繰り返し実行し、超えた場合には、
その回の処理を終了し(ST55)、ステップ1に戻り
次の指示を待つ。The above-described steps 52 to 54 are repeatedly executed until the integrated value of the integrated execution time exceeds the given operation time.
The process is terminated (ST55), and the process returns to step 1 to wait for the next instruction.
【0069】このようにすると、動作時間で誤差が積算
されていくものの、アルゴリズムが簡単で、処理時間が
早いというメリットがある。なお、その他の構成並びに
作用効果は上記した各実施の形態と同様であるので、そ
の詳細な説明を省略する。また、この図18に示すアル
ゴリズムは、仮想時刻を与えられた場合も同様に処理で
きるのはもちろんである。In this case, although the error is accumulated by the operation time, there is an advantage that the algorithm is simple and the processing time is short. Note that the other configurations, functions, and effects are the same as those of the above-described embodiments, and thus detailed description thereof will be omitted. Also, the algorithm shown in FIG. 18 can of course be similarly processed when a virtual time is given.
【0070】さらにまた、上記した各実施の形態では、
何れも停止条件や相関条件にしたがってPLCシミュレ
ータが停止する機能を付加したものについて説明した
が、本発明は必ずしも停止する機能を設ける必要はな
い。また、シミュレータもPLCシミュレータに限るこ
とは無く、他の装置についてのシミュレータであっても
良い。Further, in each of the above embodiments,
In each case, the function of stopping the PLC simulator according to the stop condition or the correlation condition is described. However, the present invention does not necessarily require the function of stopping the PLC simulator. Further, the simulator is not limited to the PLC simulator, and may be a simulator for another device.
【0071】一例を示すと図19に示すように、工作機
械(ロボット)11用のシミュレータ10′とPLCシ
ミュレータ10を、仮想時間管理サーバ20で管理する
ようなものがある。実PLCとロボット11とが協調動
作し、例えば、ロボットシミュレータ10′としてはロ
ボット11のアーム12が地点Xから地点Yまで移動す
る軌跡から、他のものと衝突しないか等をシミュレーシ
ョンし、PLCシミュレータ10はそれと同時に各種の
処理を実行するものとする。As an example, as shown in FIG. 19, there is one in which a simulator 10 ′ for a machine tool (robot) 11 and a PLC simulator 10 are managed by a virtual time management server 20. The real PLC and the robot 11 cooperate with each other. For example, the robot simulator 10 ′ simulates whether the arm 12 of the robot 11 collides with another object based on the trajectory of the robot 11 moving from the point X to the point Y. Reference numeral 10 executes various processes at the same time.
【0072】通常ロボットシミュレータ10´のように
アームの移動を解析するように、位置制御が含む場合、
その位置制御のために補完周期を持つ。つまり、補完周
期ごとに仮想的にアームを移動させ、その時のアームの
位置を認識し、衝突の有無を確認するのである。そこ
で、この補完周期Δt1を、シミュレータにおける微小
時間(動作時間)Δt1に設定すると、ロボットシミュ
レータ10′側の動作と同期がとれる。When the position control is included so as to analyze the movement of the arm as in the normal robot simulator 10 ',
It has a complementary cycle for its position control. That is, the arm is virtually moved in each complement cycle, the position of the arm at that time is recognized, and the presence or absence of a collision is confirmed. Therefore, when the supplementary period Δt1 is set to a short time (operation time) Δt1 in the simulator, the operation is synchronized with the operation of the robot simulator 10 ′.
【0073】なお、仮想時間管理サーバ20から各シミ
ュレータに指示する動作時間は、上記したように補完周
期を用いると、ロボットシミュレータ10′側はさほど
プログラムの修正をすることなく実現できるので好まし
い。もちろん、本発明では、指示する動作時間は、補完
時間に併せなくてもいし、仮想時刻による指摘でももち
ろん良い。It is to be noted that the operation time instructed from the virtual time management server 20 to each simulator is preferably achieved by using the supplementary cycle as described above, since the robot simulator 10 'can be realized without making any significant modification of the program. Of course, in the present invention, the operation time to be instructed need not be coincident with the complementing time, and may be indicated by virtual time.
【0074】なおまた、上記した実施の形態では、プロ
グラム・システムを予めパソコン1内にインストール
し、装置として完成しているものについて説明した。し
かし、本発明はこのように装置として完成しているもの
のみに限ることはなく、例えば、上記した各処理をコン
ピュータに実行させるためのプログラムとし、係るプロ
グラムは所定の記録媒体に記録して提供するようにして
もよい。Further, in the above-described embodiment, an example has been described in which the program system is installed in the personal computer 1 in advance to complete the apparatus. However, the present invention is not limited to the device completed as described above. For example, the present invention is a program for causing a computer to execute the above-described processes, and the program is provided by being recorded on a predetermined recording medium. You may make it.
【0075】すなわち、図20,図21に示すように、
記録媒体としては、フロッピー(登録商標)ディスク
(FD)30やCD−ROM31などがあり、係る記録
媒体30,31に格納されたプログラムは、FDドライ
ブ32やCD−ROMドライブ33を介してコンピュー
タ(パソコン)34に接続された(内蔵された)HDユ
ニット35にインストールされ、これにより、コンピュ
ータ34は、上記した実施の形態で説明した装置を構成
することになる。That is, as shown in FIGS. 20 and 21,
Examples of the recording medium include a floppy (registered trademark) disk (FD) 30 and a CD-ROM 31, and the programs stored in the recording media 30 and 31 are stored in a computer (FD) via an FD drive 32 or a CD-ROM drive 33. It is installed in the HD unit 35 connected (built-in) to the (personal computer) 34, whereby the computer 34 constitutes the device described in the above embodiment.
【0076】そして、具体的には、実施の形態における
シミュレータ10や、仮想時間管理サーバ20における
各処理を行うプログラム等が、HDユニット35にイン
ストールされ、例えば使用の都度HDユニット35から
内部メモリ36に転送され、そこにおいて各種処理部1
0,20を構築し、各処理を高速に行うことができる。
また、各種テーブルや、最終仮想時刻を記憶する記憶部
等はHDユニット35や内部メモリ36などにより実現
される。また、条件設定MMI25は、キーボード3
7,マウス38により実現される。また、MMIを介し
て入力されたデータなどは、ディスプレイ(表示装置)
39に表示することにより、確認することもできる。な
お、この記録媒体には、仮想時間管理サーバ20と複数
のシミュレータを格納しても良いし、仮想時間管理サー
バ20と1つのシミュレータを格納しても良い。また、
記憶容量その他の要因から、物理的に複数個の記録媒体
に分けて記録しても良い。More specifically, the simulator 10 according to the embodiment, the program for performing each processing in the virtual time management server 20, and the like are installed in the HD unit 35. To the various processing units 1
0 and 20 can be constructed and each process can be performed at high speed.
Various tables and a storage unit for storing the last virtual time are realized by the HD unit 35, the internal memory 36, and the like. Also, the condition setting MMI 25 is
7. This is realized by the mouse 38. Data input via the MMI is displayed on a display (display device).
By displaying it at 39, it can also be confirmed. The recording medium may store the virtual time management server 20 and a plurality of simulators, or may store the virtual time management server 20 and one simulator. Also,
For storage capacity and other factors, the data may be physically divided into a plurality of recording media for recording.
【0077】[0077]
【発明の効果】以上のように、この発明では、シミュレ
ータが実環境の動作時間を考慮して処理を実行すること
ができるので、複数のシミュレータが同一の動作時間だ
け進むように処理することにより、各シミュレータは、
実環境上での動作時間軸上での進む速度が一致し、同期
がとれる。As described above, according to the present invention, the simulator can execute the process in consideration of the operation time of the real environment. , Each simulator
The speeds of movement on the operation time axis in the real environment match, and synchronization is achieved.
【図1】本発明の基本原理を説明する図である。FIG. 1 is a diagram illustrating the basic principle of the present invention.
【図2】本発明の基本原理を説明する図である。FIG. 2 is a diagram illustrating the basic principle of the present invention.
【図3】本発明に係るシミュレーションシステムの好適
な一実施の形態を示す図である。FIG. 3 is a diagram showing a preferred embodiment of a simulation system according to the present invention.
【図4】PLCシミュレータの機能を説明する図であ
る。FIG. 4 is a diagram illustrating functions of a PLC simulator.
【図5】PLCシミュレータの機能を説明する図であ
る。FIG. 5 is a diagram illustrating functions of a PLC simulator.
【図6】PLCシミュレータの機能を説明する図であ
る。FIG. 6 is a diagram illustrating functions of a PLC simulator.
【図7】PLCシミュレータの機能を説明する図であ
る。FIG. 7 is a diagram illustrating functions of a PLC simulator.
【図8】PLCシミュレータの機能を説明するフローチ
ャートの一部である。FIG. 8 is a part of a flowchart illustrating functions of a PLC simulator.
【図9】PLCシミュレータの機能を説明するフローチ
ャートの一部である。FIG. 9 is a part of a flowchart illustrating functions of a PLC simulator.
【図10】実行単位のタイムテーブルの一例を示す図で
ある。FIG. 10 is a diagram illustrating an example of a time table of an execution unit.
【図11】実行時間管理テーブルの一例を示す図であ
る。FIG. 11 illustrates an example of an execution time management table.
【図12】実行時間管理テーブルの一例を示す図であ
る。FIG. 12 is a diagram illustrating an example of an execution time management table.
【図13】仮想時間管理サーバの機能を説明するフロー
チャートの一部である。FIG. 13 is a part of a flowchart describing the function of the virtual time management server.
【図14】仮想時間管理サーバの機能を説明するフロー
チャートの一部である。FIG. 14 is a part of a flowchart describing the function of the virtual time management server.
【図15】仮想PLC管理テーブル,停止条件テーブル
の一例を示す図である。FIG. 15 is a diagram illustrating an example of a virtual PLC management table and a stop condition table.
【図16】PLCシミュレータの他の機能を説明するフ
ローチャートの一部である。FIG. 16 is a part of a flowchart illustrating another function of the PLC simulator.
【図17】PLCシミュレータの他の機能を説明するフ
ローチャートの一部である。FIG. 17 is a part of a flowchart illustrating another function of the PLC simulator.
【図18】PLCシミュレータのさらに他の機能を説明
するフローチャートである。FIG. 18 is a flowchart illustrating still another function of the PLC simulator.
【図19】本発明に係るシミュレーションシステムの他
の適用例を示す図である。FIG. 19 is a diagram showing another application example of the simulation system according to the present invention.
【図20】本発明に係る記録媒体を実施するシステム構
成を示す図である。FIG. 20 is a diagram showing a system configuration for implementing a recording medium according to the present invention.
【図21】本発明に係る記録媒体を実施するシステム構
成を示す図である。FIG. 21 is a diagram showing a system configuration for implementing a recording medium according to the present invention.
10,10′ シミュレータ 20 仮想時間管理サーバ 25 条件入力MMI 10, 10 'simulator 20 virtual time management server 25 condition input MMI
───────────────────────────────────────────────────── フロントページの続き (72)発明者 長尾 嘉祐 京都府京都市右京区花園土堂町10番地 オ ムロン株式会社内 (72)発明者 益田 真之 京都府京都市右京区花園土堂町10番地 オ ムロン株式会社内 Fターム(参考) 5B049 AA01 BB07 CC23 CC31 DD01 DD05 EE42 EE56 FF09 GG07 5H220 BB12 CC05 HH01 HH04 JJ02 JJ12 JJ24 JJ26 JJ41 JJ59 KK08 LL01 LL06 5H223 AA15 CC03 CC08 DD03 EE19 FF05 FF08 9A001 BB02 BB03 HH32 JJ27 KK31 LL09 ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Kasuke Nagao 10 Hanazono Todocho, Ukyo-ku, Kyoto, Kyoto Omron Co., Ltd. OMRON Corporation F term (reference)
Claims (5)
タの動作を管理する管理サーバとを備えたシミュレーシ
ョンシステムであって、 前記管理サーバは、前記複数のシミュレータに対し、実
環境における所定の動作時間だけシミュレーション処理
するための情報を通知する機能を備え、 前記シミュレータは、前記管理サーバから与えられた情
報に基づいて、前記動作時間に相当する所定量の命令を
シミュレーションして停止する機能を備えたことを特徴
とするシミュレーションシステム。1. A simulation system comprising: a plurality of simulators; and a management server that manages the operation of the simulator, wherein the management server simulates the plurality of simulators for a predetermined operation time in a real environment. The simulator has a function of notifying information for processing, and the simulator has a function of simulating and stopping a predetermined amount of instructions corresponding to the operation time based on information given from the management server. Simulation system characterized by:
ミュレータが停止条件で停止した際に、その旨の通知を
発行し、 前記通知を直接または間接的に受信した関連する所定の
他のシミュレータが、前記通知を発行したシミュレータ
と同一タイミングで停止するようにしたことを特徴とす
る請求項1に記載のシミュレーションシステム。2. When a simulator of the plurality of simulators is stopped under a stop condition, a notice to that effect is issued, and the related predetermined other simulator which directly or indirectly receives the notice includes: The simulation system according to claim 1, wherein the simulation is stopped at the same timing as the simulator that issued the notification.
タの動作を管理する管理サーバとを備えたシミュレーシ
ョンシステムのためのシミュレータであって、 前記管理サーバからの情報に基づいて、所定の動作時間
に対応する所定量の命令をシミュレーションして停止す
る機能を備えたことを特徴とするシミュレータ。3. A simulator for a simulation system comprising a plurality of simulators and a management server for managing the operation of the simulator, wherein the simulator corresponds to a predetermined operation time based on information from the management server. A simulator having a function of simulating a predetermined amount of instructions and stopping the simulation.
タの動作を管理する管理サーバとを備えたシミュレーシ
ョンシステムのための管理サーバであって、 前記複数のシミュレータに対し、そのシミュレータが実
環境における所定の動作時間だけシミュレーション処理
するための情報を通知する機能を備えたことを特徴とす
る管理サーバ。4. A management server for a simulation system, comprising: a plurality of simulators; and a management server that manages the operation of the simulator, wherein the simulator performs a predetermined operation in a real environment for the plurality of simulators. A management server having a function of notifying information for performing a simulation process only for a time.
ュレーションのための命令を実行するシミュレーション
処理と、 前記シミュレーション処理を、所定の動作時間単位で実
行させるための命令を出力する管理処理をコンピュータ
に実行させるプログラムを格納したことを特徴とするコ
ンピュータが読み取り可能な記録媒体。5. A computer, comprising: a simulation process for executing an instruction for simulation in consideration of operation time in a real environment; and a management process for outputting an instruction for executing the simulation process in a predetermined operation time unit. A computer-readable recording medium storing a program to be executed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000099815A JP2001282327A (en) | 2000-03-31 | 2000-03-31 | Simulation system and simulator and management server and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000099815A JP2001282327A (en) | 2000-03-31 | 2000-03-31 | Simulation system and simulator and management server and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001282327A true JP2001282327A (en) | 2001-10-12 |
Family
ID=18614112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000099815A Pending JP2001282327A (en) | 2000-03-31 | 2000-03-31 | Simulation system and simulator and management server and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001282327A (en) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102475A (en) * | 2008-10-23 | 2010-05-06 | Mitsubishi Electric Corp | Special unit simulator manufacturing device and programmable controller simulator |
JP2010231531A (en) * | 2009-03-27 | 2010-10-14 | Nomura Research Institute Ltd | Virtual time synchronization system |
WO2013099438A1 (en) * | 2011-12-28 | 2013-07-04 | 日立オートモティブシステムズ株式会社 | Computer system for cooperative simulation, embedded-system authentication method and program |
WO2013179439A1 (en) * | 2012-05-31 | 2013-12-05 | 三菱電機株式会社 | Data processing device, data processing system, simulation method, and program |
CN103440812A (en) * | 2013-03-20 | 2013-12-11 | 浙江天煌科技实业有限公司 | Industrial-network teaching system |
JP2016224558A (en) * | 2015-05-27 | 2016-12-28 | 株式会社キーエンス | Program creation support device, control method, and program |
CN108319533A (en) * | 2017-01-16 | 2018-07-24 | 西门子股份公司 | System and simulator for the turn-off simulation of a device within a control unit |
EP3540539A1 (en) * | 2018-03-15 | 2019-09-18 | Siemens Aktiengesellschaft | Method for carrying out the computer-aided simulation of the operation of an automatic machine |
CN110335515A (en) * | 2019-06-06 | 2019-10-15 | 艾普工华科技(武汉)有限公司 | A kind of immersion cooperation interaction virtual emulation tutoring system |
US11106478B2 (en) | 2017-11-10 | 2021-08-31 | Mitsubishi Electric Corporation | Simulation device, simulation method, and computer readable medium |
WO2022224448A1 (en) * | 2021-04-23 | 2022-10-27 | ファナック株式会社 | Plc device and recording medium |
JP7374381B1 (en) * | 2022-10-18 | 2023-11-06 | 三菱電機株式会社 | Simulation program, simulation method and simulation device |
-
2000
- 2000-03-31 JP JP2000099815A patent/JP2001282327A/en active Pending
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102475A (en) * | 2008-10-23 | 2010-05-06 | Mitsubishi Electric Corp | Special unit simulator manufacturing device and programmable controller simulator |
JP2010231531A (en) * | 2009-03-27 | 2010-10-14 | Nomura Research Institute Ltd | Virtual time synchronization system |
WO2013099438A1 (en) * | 2011-12-28 | 2013-07-04 | 日立オートモティブシステムズ株式会社 | Computer system for cooperative simulation, embedded-system authentication method and program |
JP2013137658A (en) * | 2011-12-28 | 2013-07-11 | Hitachi Automotive Systems Ltd | Computer system for cooperative simulation, embedded-system authentication method and program |
WO2013179439A1 (en) * | 2012-05-31 | 2013-12-05 | 三菱電機株式会社 | Data processing device, data processing system, simulation method, and program |
CN103440812A (en) * | 2013-03-20 | 2013-12-11 | 浙江天煌科技实业有限公司 | Industrial-network teaching system |
JP2016224558A (en) * | 2015-05-27 | 2016-12-28 | 株式会社キーエンス | Program creation support device, control method, and program |
CN108319533B (en) * | 2017-01-16 | 2021-07-06 | 西门子股份公司 | System and simulator for the turn-off simulation of a device within a control unit |
CN108319533A (en) * | 2017-01-16 | 2018-07-24 | 西门子股份公司 | System and simulator for the turn-off simulation of a device within a control unit |
US11106478B2 (en) | 2017-11-10 | 2021-08-31 | Mitsubishi Electric Corporation | Simulation device, simulation method, and computer readable medium |
EP3540539A1 (en) * | 2018-03-15 | 2019-09-18 | Siemens Aktiengesellschaft | Method for carrying out the computer-aided simulation of the operation of an automatic machine |
US11934182B2 (en) * | 2018-03-15 | 2024-03-19 | Siemens Aktiengesellschaft | Method for computer-supported simulation of operation of a machine working in an automated manner |
CN110335515A (en) * | 2019-06-06 | 2019-10-15 | 艾普工华科技(武汉)有限公司 | A kind of immersion cooperation interaction virtual emulation tutoring system |
CN110335515B (en) * | 2019-06-06 | 2022-09-20 | 艾普工华科技(武汉)有限公司 | Immersive collaborative interactive virtual simulation teaching system |
WO2022224448A1 (en) * | 2021-04-23 | 2022-10-27 | ファナック株式会社 | Plc device and recording medium |
JP7538341B2 (en) | 2021-04-23 | 2024-08-21 | ファナック株式会社 | PLC device and recording medium |
JP7374381B1 (en) * | 2022-10-18 | 2023-11-06 | 三菱電機株式会社 | Simulation program, simulation method and simulation device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7246052B2 (en) | Bus master and bus slave simulation using function manager and thread manager | |
US6470481B2 (en) | State management in a co-verification system | |
US6571204B1 (en) | Bus modeling language generator | |
JP4564110B2 (en) | Computer-implemented method and signal processor simulator for simulating the operation of dual processor circuits | |
JP2001282327A (en) | Simulation system and simulator and management server and recording medium | |
WO1996027162A1 (en) | Method and apparatus to emulate vlsi circuits within a logic simulator | |
US20090006068A1 (en) | Software executing device and co-operation method | |
JP2003162428A (en) | System and method for simulation, and computer-readable recording medium storing program for making computer execute the simulation system | |
US7627462B2 (en) | Hardware simulation using a test scenario manager | |
JP2009140388A (en) | Method for generating performance evaluation model, method for evaluating system performance, and device for generating performance evaluation model | |
US20050071145A1 (en) | Simulation apparatus, simulation program, and recording medium | |
US20050209839A1 (en) | Data processing apparatus simulation | |
JP6020775B1 (en) | Simulation device | |
JP2000330970A (en) | Device and method for simulation | |
JP5492704B2 (en) | Hardware-software co-verification system, method, and program | |
JP2010102372A (en) | Data processor, verification system, data processor verification method | |
JPS6349851A (en) | Simulation system | |
JP2004021907A (en) | Simulation system for performance evaluation | |
JP2005165825A (en) | Trace information recorder | |
US20030231201A1 (en) | Method and device for supporting production of moving-picture CD-ROM software | |
JP2002082813A (en) | Program logic device | |
JP2973436B2 (en) | LSI circuit simulation method | |
JP3137094B2 (en) | Simulation method, simulation device, and recording medium therefor | |
JP3183852B2 (en) | Logic simulation method for bidirectional bus | |
JP2001282328A (en) | Simulation system and simulator and managing device and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090317 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090723 |