JP7137994B2 - SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM - Google Patents

SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM Download PDF

Info

Publication number
JP7137994B2
JP7137994B2 JP2018156604A JP2018156604A JP7137994B2 JP 7137994 B2 JP7137994 B2 JP 7137994B2 JP 2018156604 A JP2018156604 A JP 2018156604A JP 2018156604 A JP2018156604 A JP 2018156604A JP 7137994 B2 JP7137994 B2 JP 7137994B2
Authority
JP
Japan
Prior art keywords
devices
abnormality
timetable
simulation
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018156604A
Other languages
Japanese (ja)
Other versions
JP2020030690A (en
Inventor
文弥 塚越
博史 大▲崎▼
遼嗣 岡田
信明 立岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP2018156604A priority Critical patent/JP7137994B2/en
Publication of JP2020030690A publication Critical patent/JP2020030690A/en
Application granted granted Critical
Publication of JP7137994B2 publication Critical patent/JP7137994B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Debugging And Monitoring (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

本発明は、シミュレーション方法、シミュレーションシステム、およびプログラムに関する。 The present invention relates to simulation methods, simulation systems, and programs.

ロボット、飛行機などを制御する制御システムは種々の機器で構成されており、各機器はそれぞれに実装されるソフトウェアに基づいて動作する。新規の制御システムを構築する際に、MATLAB(登録商標)などを用いて、制御システムを複数の機能ブロックにモデル化し、制御システムの動作をシミュレーションする技術が知られている(例えば、特許文献1)。 A control system that controls robots, airplanes, etc. is composed of various devices, and each device operates based on the software installed in each device. When constructing a new control system, there is a known technology that uses MATLAB (registered trademark) or the like to model the control system into a plurality of functional blocks and simulate the operation of the control system (for example, Patent Document 1 ).

特許第5651251号公報Japanese Patent No. 5651251

制御システムを構成する各機器は、異なる事業者が個々に制作することが多く、制御システム全体として動作させたときに、不具合が散見される。そのため、メーカ間の調整、機器のソフトウェアの再実装など膨大な時間と手間を要することがあった。しかしながら、特許文献1は、論理プロセスの並列実行の速度を向上する技術を提供するのみであり、制御システム全体とし動作したときに、各機器に発生する異常を予測することができないという問題がある。 Each device that constitutes a control system is often produced individually by different companies, and when the control system as a whole is operated, defects are found here and there. As a result, it took a lot of time and effort to coordinate among manufacturers and re-implement device software. However, Patent Document 1 only provides a technique for improving the speed of parallel execution of logical processes, and has the problem that it is not possible to predict abnormalities that occur in each device when the control system as a whole operates. .

そこで、本発明は、制御システムを構成する各機器に発生する異常を予測することのできるシミュレーション方法、シミュレーションシステム、およびプログラムを提供することを課題とする。 Accordingly, it is an object of the present invention to provide a simulation method, a simulation system, and a program capable of predicting abnormalities occurring in each device that constitutes a control system.

本発明のシミュレーション方法は、複数の機器と、複数の前記機器を接続する通信ネットワークとを含むシステムの動作をシミュレーションする方法であって、前記複数の機器の動作および複数の前記機器間の前記通信ネットワーク上における動作をそれぞれ規定した論理プロセスを設定するステップと、前記複数の機器に応じてタイムテーブルを設定するステップと、前記複数の機器に規定された前記論理プロセスを前記タイムテーブルに従って並列実行させるステップと、を含む。 A simulation method of the present invention is a method for simulating the operation of a system including a plurality of devices and a communication network connecting the plurality of devices, wherein the operations of the plurality of devices and the communication between the plurality of devices are performed. setting logical processes that respectively define operations on a network; setting a timetable according to the plurality of devices; and causing the plurality of devices to execute the defined logical processes in parallel according to the timetable. and a step.

この方法によれば、複数の機器の動作および複数の機器間のネットワーク動作をシミュレーションで模擬することができる。したがって、実際にシステムを構築し、システム全体として動作させることなく、システムの動作を確認することができる。 According to this method, the operation of a plurality of devices and the network operation between the plurality of devices can be simulated. Therefore, the operation of the system can be confirmed without actually constructing the system and operating the system as a whole.

また、前記論理プロセスの実行結果に基づいて、前記複数の機器の異常および前記複数の機器の間の通信異常を検出するステップをさらに含むことが好ましい。 Also, it is preferable to further include the step of detecting an abnormality in the plurality of devices and an abnormality in communication between the plurality of devices based on execution results of the logical process.

この方法によれば、複数の機器の動作および複数の機器間のネットワーク動作で発生する異常をシミュレーションで模擬することができる。したがって、実際にシステムを構築し、システム全体として動作させることなく、システムで発生する異常を予測することができる。 According to this method, it is possible to simulate an abnormality that occurs in the operation of a plurality of devices and in the network operation between the plurality of devices. Therefore, an abnormality occurring in the system can be predicted without actually constructing the system and operating the system as a whole.

また、前記通信異常を検出するステップでは、前記複数の機器の仕様情報に基づいて、前記通信異常を検出することが好ましい。 Preferably, in the step of detecting the communication abnormality, the communication abnormality is detected based on specification information of the plurality of devices.

この方法によれば、複数の機器の動作および複数の機器間のネットワーク動作で発生する異常を仕様情報との差異に基づいて検出することができる。したがって、システムで発生する異常をより精度よく予測することができる。 According to this method, it is possible to detect anomalies that occur in the operations of a plurality of devices and network operations between the plurality of devices based on the difference from the specification information. Therefore, anomalies occurring in the system can be predicted with higher accuracy.

また、前記システムは、稼働系と、待機系とを含む冗長システムで構成されており、前記通信異常が検出された場合に、前記稼働系から前記待機系に切り替えるステップをさらに含むことが好ましい。 The system preferably comprises a redundant system including an active system and a standby system, and further includes a step of switching from the active system to the standby system when the communication abnormality is detected.

この方法によれば、冗長系を備えるシステムにおける複数の機器の動作および複数の機器間のネットワーク動作をシミュレーションで模擬することができる。したがって、実際にシステムを構築し、システム全体として動作させることなく、システムの動作をより精度よく確認することができる。 According to this method, it is possible to simulate the operation of a plurality of devices and the network operation between the plurality of devices in a system having a redundant system. Therefore, the operation of the system can be confirmed with higher accuracy without actually constructing the system and operating the system as a whole.

また、前記通信異常を検出するステップでは、前記通信異常が連続して検出された場合において前記稼働系から前記待機系に切り替わらない場合に異常であることを検出し、前記通信異常が連続して検出されない場合において前記稼働系から前記待機系に切り替わった場合に異常であることを検出することが好ましい。 Further, in the step of detecting the communication abnormality, when the communication abnormality is continuously detected and the operation system is not switched to the standby system, the abnormality is detected, and the communication abnormality is detected continuously. It is preferable to detect that there is an abnormality when the active system is switched to the standby system when the system is not detected.

この方法によれば、冗長系を備えたシステムで発生する複数の機器の動作および複数の機器間のネットワーク動作で発生する異常をシミュレーションで模擬することができる。したがって、実際にシステムを構築し、システム全体として動作させることなく、冗長系を備えたシステムで発生する異常を予測することができる。 According to this method, it is possible to simulate an abnormality that occurs in the operation of a plurality of devices that occurs in a system with a redundant system and in the network operation between the plurality of devices. Therefore, it is possible to predict an abnormality occurring in a system having a redundant system without actually constructing the system and operating the system as a whole.

本発明のシミュレーションシステムは、複数の機器と、複数の前記機器を接続する通信ネットワークとを含むシステムを模擬したシステムモデルを生成し、前記複数の機器の動作および複数の前記機器間の前記通信ネットワーク上における動作をそれぞれ規定した論理プロセスを設定する論理プロセス設定部と、前記複数の機器に応じてタイムテーブルを設定するタイムテーブル設定部と、前記複数の機器に設定された前記論理プロセスを前記タイムテーブルに従って並列実行させる論理プロセス実行部と、を備える。 A simulation system of the present invention generates a system model simulating a system including a plurality of devices and a communication network connecting the plurality of devices, and generates a system model that simulates the operation of the plurality of devices and the communication network between the plurality of devices. a logical process setting unit that sets logical processes that respectively define operations in the above; a timetable setting unit that sets a timetable according to the plurality of devices; and a logical process execution unit for parallel execution according to the table.

この構成によれば、複数の機器の動作および複数の機器間のネットワーク動作で発生する異常をシミュレーションで模擬することができる。したがって、実際にシステムを構築し、システム全体として動作させることなく、システムで発生する異常を予測することができる。 According to this configuration, it is possible to simulate an abnormality that occurs in the operation of a plurality of devices and in the network operation between the plurality of devices. Therefore, an abnormality occurring in the system can be predicted without actually constructing the system and operating the system as a whole.

本発明のプログラムは、コンピュータに、複数の機器と、複数の前記機器を接続する通信ネットワークとを含むシステムの動作をシミュレーションさせるためのプログラムであって、前記コンピュータに、前記複数の機器の動作および複数の前記機器間の前記通信ネットワーク上における動作をそれぞれ規定した論理プロセスを設定するステップと、前記複数の機器に応じてタイムテーブルを設定するステップと、前記複数の機器に規定された前記論理プロセスを前記タイムテーブルに従って並列実行させるステップと、を実行させる。 A program of the present invention is a program for causing a computer to simulate the operation of a system including a plurality of devices and a communication network connecting the plurality of devices, wherein the computer controls the operations of the plurality of devices and a step of setting logical processes respectively defining operations on the communication network between the plurality of devices; a step of setting a timetable according to the plurality of devices; and the logical processes defined for the plurality of devices. are executed in parallel according to the timetable.

このプログラムによれば、複数の機器の動作および複数の機器間のネットワーク動作で発生する異常をシミュレーションで模擬することができる。したがって、実際にシステムを構築し、システム全体として動作させることなく、システムで発生する異常を予測することができる。 According to this program, it is possible to simulate an abnormality that occurs in the operation of a plurality of devices and in the network operation between the plurality of devices. Therefore, an abnormality occurring in the system can be predicted without actually constructing the system and operating the system as a whole.

図1は、本発明の実施形態において制御システムモデルを構築する実際の制御システムの構成の一例を示す概略図である。FIG. 1 is a schematic diagram showing an example of the configuration of an actual control system for constructing a control system model in an embodiment of the present invention. 図2は、本発明の実施形態に係る制御システムをモデル化した制御システムモデルの一例を示すブロック図である。FIG. 2 is a block diagram showing an example of a control system model modeling the control system according to the embodiment of the present invention. 図3は、本発明の実施形態に係る制御システムモデルの機器モデルの構成の一例を示すブロック図である。FIG. 3 is a block diagram showing an example configuration of a device model of the control system model according to the embodiment of the present invention. 図4は、本発明の実施形態に係る制御システムモデルに設定されたタイムチャートの一例である。FIG. 4 is an example of a time chart set in the control system model according to the embodiment of the present invention. 図5は、本発明の実施形態に係るシミュレーションシステムの構成を示すブロック図である。FIG. 5 is a block diagram showing the configuration of the simulation system according to the embodiment of the invention. 図6は、本発明の実施形態に係るシミュレーション装置の動作の流れの一例を示すフローチャートである。FIG. 6 is a flow chart showing an example of the operation flow of the simulation device according to the embodiment of the present invention. 図7は、本発明の実施形態に係る冗長系の制御システムモデルの一例を示すブロック図である。FIG. 7 is a block diagram showing an example of a redundant control system model according to the embodiment of the present invention. 図8は、本発明の実施形態に係る冗長系の制御システムモデルの動作の流れの一例を示すシーケンス図である。FIG. 8 is a sequence diagram showing an example of the operation flow of the redundant control system model according to the embodiment of the present invention. 図9は、本発明の実施形態に係る冗長系の制御システムモデルの動作の流れの一例を示すシーケンス図である。FIG. 9 is a sequence diagram showing an example of the operation flow of the redundant control system model according to the embodiment of the present invention. 図10は、本発明の実施形態に係る冗長系の制御システムモデルの動作の流れの一例を示すシーケンス図である。FIG. 10 is a sequence diagram showing an example of the operation flow of the redundant control system model according to the embodiment of the present invention. 図11は、本発明の実施形態に係る冗長系の制御システムモデルの異常があった場合の動作の流れの一例を示すシーケンス図である。FIG. 11 is a sequence diagram showing an example of the flow of operations when there is an abnormality in the redundant control system model according to the embodiment of the present invention. 図12は、本発明の実施形態に係る冗長系の制御システムモデルの異常があった場合の動作の流れの一例を示すシーケンス図である。FIG. 12 is a sequence diagram showing an example of the flow of operations when there is an abnormality in the redundant control system model according to the embodiment of the present invention.

以下に添付図面を参照して、本発明に係る実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではなく、また、実施形態が複数ある場合には、各実施形態を組み合わせて構成するものも含む。 Embodiments according to the present invention will be described in detail below with reference to the accompanying drawings. It should be noted that the present invention is not limited by this embodiment, and when there are a plurality of embodiments, a combination of each embodiment is also included.

図1を用いて、本発明の実施形態でモデル化するシステムの構成について説明する。図1は、モデル化する制御システムの構成の一例を示す概略図である。 The configuration of the system modeled in the embodiment of the present invention will be described with reference to FIG. FIG. 1 is a schematic diagram showing an example of the configuration of a control system to be modeled.

図1に示すように、制御システム1は、第1の機器2-1と、第2の機器2-2と、・・・、第Nの機器2-N(Nは3以上の整数)とを含む。第1の機器2-1から第Nの機器2-Nは、それぞれ、通信ネットワーク3を介して、互いに通信可能に接続されている。制御システム1は、例えば、飛行機やロケットなどを制御する制御システムである。 As shown in FIG. 1, the control system 1 includes a first device 2-1, a second device 2-2, . including. The first device 2-1 to the Nth device 2-N are connected to each other via the communication network 3 so as to be able to communicate with each other. A control system 1 is, for example, a control system that controls an airplane, a rocket, or the like.

第1の機器2-1から第Nの機器2-Nは、それぞれ、アプリケーションと、ミドルウェアと、OS(Operating System)と、ハードウェアとから構成されている。ここで、OSは、例えば、TOPPERS(Toyohashi Open Platform for Embedded Real-Time Systems)などの組み込み用のOSである。第1の機器2-1から第Nの機器2-Nにおいて、ミドルウェアと、OSと、ハードウェアとは共通であり、アプリケーションのみが異なっている。第1の機器2-1から第Nの機器2-Nは、飛行機やロケットなどを制御するために、それぞれ、アプリケーションに従った物理量を測定している。第1の機器2-1から第Nの機器2-Nが測定する物理量に特に制限はないが、例えば、機体の角度や加速度である。本実施形態では、アプリケーションは、例えば、C言語で記述されているものとする。第1の機器2-1から第Nの機器2-Nは、それぞれが独立して動作する機器である。具体的には、第1の機器2-1から第Nの機器2-Nは同期をとるために、第1の機器2-1から第Nの機器2-Nのうちの一台が、例えば、32ミリ秒間隔で他の機器に同期信号を出力する。各機器は、同期信号を基準として、アプリケーションに応じた動作を実行する。 Each of the first device 2-1 to the Nth device 2-N comprises an application, middleware, an OS (Operating System), and hardware. Here, the OS is, for example, an embedded OS such as TOPPERS (Toyohashi Open Platform for Embedded Real-Time Systems). The first device 2-1 to the Nth device 2-N share middleware, OS, and hardware, and differ only in applications. The first device 2-1 to the Nth device 2-N measure physical quantities according to applications, respectively, in order to control airplanes, rockets, and the like. Physical quantities measured by the first device 2-1 to the Nth device 2-N are not particularly limited, but are, for example, the angle and acceleration of the airframe. In this embodiment, the application is assumed to be written in C language, for example. The first device 2-1 to the Nth device 2-N are devices that operate independently. Specifically, in order to synchronize the first device 2-1 to the Nth device 2-N, one of the first device 2-1 to the Nth device 2-N is, for example, , outputs synchronization signals to other devices at intervals of 32 milliseconds. Each device performs an operation according to the application on the basis of the synchronization signal.

通信ネットワーク3は、第1の機器2-1から第Nの機器2-Nのそれぞれを互いに通信可能に接続するネットワークである。通信ネットワーク3に特に制限はないが、MIL-STD-1553Bや、Ethernet(登録商標)などの通信規格が用いられる。 The communication network 3 is a network that connects each of the first device 2-1 to the Nth device 2-N so as to be able to communicate with each other. Although the communication network 3 is not particularly limited, communication standards such as MIL-STD-1553B and Ethernet (registered trademark) are used.

次に、図2を用いて、実際のシステムを模擬して生成したシステムモデルについて説明する。図2は、図1に示す制御システム1を模擬した制御システムモデルを示すブロック図である。本実施形態では、制御システム1を模擬したシステムモデルをソフトウェアで構築し、シミュレーションによって制御システム1の動作を模擬する。 Next, a system model generated by simulating an actual system will be described with reference to FIG. FIG. 2 is a block diagram showing a control system model simulating the control system 1 shown in FIG. In this embodiment, a system model that simulates the control system 1 is constructed by software, and the operation of the control system 1 is simulated by simulation.

図2に示すように、制御システムモデル10は、第1の機器モデル11-1と、第2の機器モデル11-2と、・・・、第Nの機器モデル11-Nと、仮想通信ネットワーク12とを含む。制御システムモデル10は、モデルエディタ上において、複数のブロックと、各ブロック間の信号の送受信を表す結線によって構成される。 As shown in FIG. 2, the control system model 10 includes a first equipment model 11-1, a second equipment model 11-2, . 12. The control system model 10 is configured on the model editor by a plurality of blocks and connections representing transmission and reception of signals between the blocks.

本実施形態において、制御システムモデル10は、例えば、MATLAB上で動作するSimulink(登録商標)によって生成される。具体的には、本実施形態では、Simulink機能によって機器に相当する制御ブロックを配置することで制御システムモデル10を生成し、閉ループシミュレーションを実行する。 In this embodiment, the control system model 10 is generated by, for example, Simulink (registered trademark) operating on MATLAB. Specifically, in the present embodiment, a control system model 10 is generated by arranging control blocks corresponding to devices using the Simulink function, and a closed loop simulation is executed.

図3を用いて、各機器モデルの構成について説明する。図3は、第1の機器モデル11-1の構成を示すブロック図である。第2の機器モデル11-2から第Nの機器モデル11-Nの構成については、第1の機器モデル11-1と同様なので説明は省略する。 The configuration of each device model will be described with reference to FIG. FIG. 3 is a block diagram showing the configuration of the first equipment model 11-1. The configuration of the second device model 11-2 to the N-th device model 11-N is the same as that of the first device model 11-1, so the explanation is omitted.

図3に示すように、第1の機器モデル11-1は、模擬アプリケーション13と、模擬ミドルウェア14と、模擬OS15とを有している。 As shown in FIG. 3, the first device model 11-1 has a simulated application 13, a simulated middleware 14, and a simulated OS 15. FIG.

模擬アプリケーション13は、図1に図示の第1の機器2-1に搭載されているアプリケーションの仕様書や、冗長性に関する仕様書などに基づいて生成された、第1の機器2-1のアプリケーションを模擬したモデルである。この場合、模擬アプリケーション13は、第1の機器2-1が持つアプリケーションと同じ言語で記述されていることが好ましい。具体的には、第1の機器2-1のアプリケーションがC言語で記述されている場合には、模擬アプリケーション13は、C言語で記述されていることが好ましい。 The simulated application 13 is an application of the first device 2-1 generated based on the specification of the application installed in the first device 2-1 shown in FIG. 1 and the specification regarding redundancy. This model simulates In this case, the simulated application 13 is preferably written in the same language as the application of the first device 2-1. Specifically, when the application of the first device 2-1 is written in C language, the simulated application 13 is preferably written in C language.

模擬ミドルウェア14は、図1に図示の第1の機器2-1のミドルウェアの仕様書に基づいて生成された、第1の機器2-1のミドルウェアを模擬したモデルである。 The simulated middleware 14 is a model that simulates the middleware of the first device 2-1, which is generated based on the specifications of the middleware of the first device 2-1 shown in FIG.

模擬OS15は、図1に図示の第1の機器2-1のOSの仕様書に基づいて生成された、第1の機器2-1のOSを模擬したモデルである。模擬OS15は、例えば、ソースコードで構成されており、あらかじめ定められた所定の時間にのみ模擬アプリケーション13が動作するように構成されている。このため、制御システムモデル10を構成する第1の機器モデル11-1から第Nの機器モデル11-Nは、あらかじめ定められたタイムテーブルに従って対応する機器の動作を模擬する。タイムテーブルは、第1の機器モデル11-1から第Nの機器モデル11-Nの設計に応じて変更することができる。 The simulated OS 15 is a model simulating the OS of the first device 2-1, which is generated based on the specifications of the OS of the first device 2-1 shown in FIG. The simulated OS 15 is composed of source code, for example, and is configured so that the simulated application 13 operates only at predetermined times. Therefore, the first equipment model 11-1 to the N-th equipment model 11-N constituting the control system model 10 simulate the operation of the corresponding equipment according to a predetermined timetable. The timetable can be changed according to the design of the first equipment model 11-1 to the Nth equipment model 11-N.

再び図2を参照する。仮想通信ネットワーク12は、図1に図示の第1の機器2-1の通信ネットワーク3の仕様書に基づいて生成された、第1の機器2-1の通信ネットワーク3を模擬したモデルである。ここで、仮想通信ネットワーク12は、通信ネットワーク3を完全に模擬したモデルである必要はなく、簡易的に模擬したモデルであってもよい。すなわち、仮想通信ネットワーク12は、例えば、1553B通信や、Ethernetなどを仮想的に実現している。仮想通信ネットワーク12には、第1の機器モデル11-1から第Nの機器モデル11-Nが接続されている。これにより、第1の機器モデル11-1から第Nの機器モデル11-Nは、それぞれ、仮想通信ネットワーク12を介してデータを送受信できるようになっている。この際、仮想通信ネットワーク12は、負荷の違いによる処理時間のバラツキや、動作の違いによる実行時間のバラツキを模擬することができる。 Refer to FIG. 2 again. The virtual communication network 12 is a model simulating the communication network 3 of the first device 2-1, which is generated based on the specifications of the communication network 3 of the first device 2-1 shown in FIG. Here, the virtual communication network 12 does not have to be a model that completely simulates the communication network 3, and may be a model that simply simulates it. That is, the virtual communication network 12 virtually realizes, for example, 1553B communication and Ethernet. A first device model 11-1 to an N-th device model 11-N are connected to the virtual communication network 12. FIG. As a result, each of the first device model 11-1 to the Nth device model 11-N can transmit and receive data via the virtual communication network 12. FIG. At this time, the virtual communication network 12 can simulate variations in processing time due to differences in load and variations in execution time due to differences in operations.

本実施形態では、第1の機器モデル11-1から第Nの機器モデル11-Nは、それぞれ、第1の機器2-1から第Nの機器2-Nの仕様書に基づいて生成されている。仮想通信ネットワーク12は、通信ネットワーク3の仕様書に基づいて生成されている。そのため、本実施形態は、各機器と、モデル化された各機器のインターフェースは一致しているので、各機器の仕様書に従って、所望の動作を模擬して実行できるようなタイムテーブルを生成することができる。また、本実施形態では、各機器に接続されている通信ネットワーク3だけでなく、各機器に接続された電源もモデル化されており、電源の動作も模擬して動作させることができる。したがって、本実施形態は、例えば、後述するシミュレーションシステムにおいて、ネットワーク上における制御システム1のタイムテーブルに従った挙動をシミュレーションすることができる。 In this embodiment, the first device model 11-1 to Nth device model 11-N are generated based on the specifications of the first device 2-1 to Nth device 2-N, respectively. there is The virtual communication network 12 is generated based on the specifications of the communication network 3 . Therefore, in this embodiment, each device and the modeled interface of each device match, so that a timetable that can simulate and execute a desired operation according to the specifications of each device can be generated. can be done. Moreover, in this embodiment, not only the communication network 3 connected to each device but also the power supply connected to each device is modeled, and the operation of the power supply can be simulated and operated. Therefore, in this embodiment, for example, in a simulation system to be described later, the behavior of the control system 1 on the network according to the timetable can be simulated.

図4を用いて、タイムテーブルの一例について説明する。図4は、タイムテーブルの一例を示す図である。 An example of the timetable will be described with reference to FIG. FIG. 4 is a diagram showing an example of a timetable.

図4では、第1の機器モデル11-1と、第2の機器モデル11-2と、第3の機器モデル11-3と、第4の機器モデル11-4との4台の機器モデルを動作させるためのタイムテーブルを示している。タイムテーブル中の「1」から「24」までの数字は、それぞれの機器モデルが対応する機器の動作を模擬する順番を示している。図4に図示のタイムテーブルは、T1からT16の16個の時間間隔を有しており、第1の機器モデル11-1から第4の機器モデル11-4は、分割された区間内で動作するように構成されている。区間T1からT16は、同一の時間間隔を有しており、例えば、200マイクロ秒から300マイクロ秒である。このように、同期信号を出力する間隔である32ミリ秒を短い時間に分割したうえで、第1の機器モデル11-1から第4の機器モデル11-4を周期的に動作させる。これにより、分割した区間において、複数の機器が同時に動作しているようなシミュレーションを実行することができる。図4に示すタイムテーブルは、例示であり、本発明を限定するものではない。各機器モデルに対応する機器の動作を模擬させる順番や、時間間隔は設計に応じて任意に変更可能である。 In FIG. 4, four device models of a first device model 11-1, a second device model 11-2, a third device model 11-3, and a fourth device model 11-4 are shown. Shows a timetable for operation. The numbers "1" to "24" in the timetable indicate the order in which the respective device models simulate the corresponding device operations. The timetable shown in FIG. 4 has 16 time intervals from T1 to T16, and the first equipment model 11-1 to the fourth equipment model 11-4 operate within the divided intervals. is configured to The intervals T1 to T16 have the same time interval, for example 200 microseconds to 300 microseconds. In this way, after dividing the 32 milliseconds, which is the interval for outputting the synchronization signal, into short times, the first equipment model 11-1 to the fourth equipment model 11-4 are operated periodically. As a result, it is possible to perform a simulation in which a plurality of devices are operating simultaneously in the divided section. The timetable shown in FIG. 4 is an example and does not limit the present invention. The order of simulating the operation of the device corresponding to each device model and the time interval can be arbitrarily changed according to the design.

図4のタイムテーブルを具体的に説明すると、区間T1では、第1の機器モデル11-1、第2の機器モデル11-2、第3の機器モデル11-3、第4の機器モデル11-4の順に、それぞれに対応する機器の動作を模擬することを意味している。区間T1では、例えば、第1の機器モデル11-1が同期信号を出力し、第2の機器モデル11-2から第4の機器モデル11-4と同期する動作を模擬している。 Specifically explaining the timetable of FIG. 4 means that the operation of the corresponding equipment is simulated in order. In the section T1, for example, the first equipment model 11-1 outputs a synchronization signal to simulate the operation of synchronizing with the second equipment model 11-2 to the fourth equipment model 11-4.

区間T2と、区間T3とでは、第1の機器モデル11-1のみが対応する機器の動作を模擬する。ここでは、例えば、第1の機器2-1が、特定の物理量をセンサによって検出する動作を模擬している。 In the section T2 and the section T3, only the first device model 11-1 simulates the operation of the corresponding device. Here, for example, the first device 2-1 simulates the operation of detecting a specific physical quantity with a sensor.

区間T4と、区間T5とでは、第1の機器モデル11-1と、第2の機器モデル11-2とが、対応する機器の動作を模擬する。ここでは、例えば、第1の機器2-1が検出した検出結果を、第2の機器2-2へ送信する動作を模擬している。 In the section T4 and the section T5, the first device model 11-1 and the second device model 11-2 simulate the operation of the corresponding devices. Here, for example, the operation of transmitting the detection result detected by the first device 2-1 to the second device 2-2 is simulated.

区間T6と、区間T7とでは、第1の機器モデル11-1と、第3の機器モデル11-3とが対応する機器の動作を模擬する。ここでは、例えば、第1の機器2-1が検出した検出結果を、第3の機器へ送信する動作を模擬している。 In the section T6 and the section T7, the operation of the corresponding equipment is simulated by the first equipment model 11-1 and the third equipment model 11-3. Here, for example, the operation of transmitting the detection result detected by the first device 2-1 to the third device is simulated.

区間T8では、第1の機器モデル11-1と、第4の機器モデル11-4とが対応する機器の動作を模擬する。ここでは、例えば、第1の機器2-1が検出した検出結果を第4の機器へ送信する動作を模擬している。 In the section T8, the first equipment model 11-1 and the fourth equipment model 11-4 simulate the operation of corresponding equipment. Here, for example, the operation of transmitting the detection result detected by the first device 2-1 to the fourth device is simulated.

区間T9から区間T11では、第1の機器モデル11-1から第4の機器モデル11-4は、それぞれ、対応する機器の動作を模擬しない。 From section T9 to section T11, the first device model 11-1 to the fourth device model 11-4 do not simulate the operation of the corresponding device, respectively.

区間T12と、区間T13とでは、第1の機器モデル11-1と、第2の機器モデル11-2とが対応する機器の動作を模擬する。ここでは、例えば、第2の機器2-2が、第1の機器2-1から受信した検出結果に対するフィードバックを第1の機器2-1へ送信する動作を模擬している。 In the section T12 and the section T13, the operation of the corresponding devices of the first device model 11-1 and the second device model 11-2 is simulated. Here, for example, the second device 2-2 simulates the operation of transmitting feedback to the first device 2-1 on the detection result received from the first device 2-1.

区間T14と、区間T15とでは、第1の機器モデル11-1と、第3の機器モデル11-3とが対応する機器の動作を模擬する。ここでは、例えば、第3の機器が、第1の機器2-1から受信した検出結果に対するフィードバックを第1の機器2-1に送信する動作を模擬している。 In the section T14 and the section T15, the operation of the corresponding devices of the first device model 11-1 and the third device model 11-3 is simulated. Here, for example, the third device simulates the operation of sending feedback to the first device 2-1 on the detection result received from the first device 2-1.

区間T16では、それぞれ、対応する機器の動作を模擬しない。 In section T16, the operation of each corresponding device is not simulated.

上述のとおり、本実施形態では、タイムテーブルに従って、通常であればそれぞれが独立して動作する各機器を、1つの区間で2以上の機器が同時に動作しているようなシミュレーションを実行することができる。本実施形態では、タイムテーブルに従ってシミュレーションさせた結果、タイムテーブルと異なる結果が出力された場合に異常であると判定する。 As described above, in this embodiment, each device that normally operates independently can be simulated in such a manner that two or more devices operate simultaneously in one section according to the timetable. can. In this embodiment, as a result of simulating according to the timetable, it is determined that there is an abnormality when a result different from the timetable is output.

次に、図5を用いて、本発明の実施形態に係るシミュレーションシステムの構成について説明する。図5は、本発明の実施形態に係るシミュレーションシステムの構成を示すブロック図である。 Next, the configuration of the simulation system according to the embodiment of the present invention will be described using FIG. FIG. 5 is a block diagram showing the configuration of the simulation system according to the embodiment of the invention.

図3に示すように、シミュレーションシステム100は、操作部110と、表示部120と、シミュレーション装置130とを備える。 As shown in FIG. 3, the simulation system 100 includes an operation unit 110, a display unit 120, and a simulation device .

操作部110は、例えば、タッチパネルや、キーボードで構成された入力装置である。ユーザは、操作部110を操作することによって、シミュレーション装置130に対して各種の機能を発揮させることができる。ユーザは、例えば、操作部110を操作して、制御システム1を構成する各機器のスペックなどを含む製品情報をソースコードで入力する。ユーザがソースコードで入力した製品情報は、仕様情報153として、後述するシミュレーション装置130の記憶部150に格納される。また、ユーザは、操作部110を操作して、仕様情報153のソースコードを書き換えることで、各機器の仕様をアップデートすることができる。 The operation unit 110 is, for example, an input device configured by a touch panel or a keyboard. The user can cause the simulation device 130 to perform various functions by operating the operation unit 110 . The user, for example, operates the operation unit 110 to input product information including specifications of each device constituting the control system 1 in source code. The product information input by the user in source code is stored as the specification information 153 in the storage unit 150 of the simulation device 130, which will be described later. Further, the user can update the specifications of each device by operating the operation unit 110 and rewriting the source code of the specification information 153 .

表示部120は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)または有機EL(Organic Electro-Luminescence)ディスプレイなどを含むディスプレイである。表示部120は、例えば、シミュレーション結果などをユーザに対して提供する。 The display unit 120 is a display including, for example, a liquid crystal display (LCD) or an organic EL (organic electro-luminescence) display. The display unit 120 provides the user with, for example, simulation results.

シミュレーション装置130は、制御システム1のシミュレーションを実行する装置であり、制御部140と、記憶部150とを備えている。 The simulation device 130 is a device that executes a simulation of the control system 1 and includes a control section 140 and a storage section 150 .

制御部140は、シミュレーションシステム100を制御する。具体的には、制御部140は、記憶部150に記憶されているプログラムを展開して実行することによってシミュレーションシステム100を制御する。制御部140は、例えば、記憶部150が記憶しているシミュレーションプログラム151を展開して実行することによって制御システムモデル10を生成することができる。制御部140は、例えば、CPU(Central Processing Unit)を含む電子的な回路などで実現することができる。 The control unit 140 controls the simulation system 100 . Specifically, the control unit 140 controls the simulation system 100 by developing and executing a program stored in the storage unit 150 . The control unit 140 can generate the control system model 10 by developing and executing the simulation program 151 stored in the storage unit 150, for example. The control unit 140 can be realized by, for example, an electronic circuit including a CPU (Central Processing Unit).

記憶部150は、制御部140がシミュレーション装置130を制御するためのプログラムを記憶している。記憶部150は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、または、ハードディスク、ソリッドステートドライブ、光ディスクなどの記憶装置である。記憶部150は、例えば、シミュレーションプログラム151と、シミュレーション結果情報152と、仕様情報153とを記憶している。 Storage unit 150 stores a program for control unit 140 to control simulation device 130 . The storage unit 150 is, for example, a semiconductor memory device such as RAM (Random Access Memory), ROM (Read Only Memory), or flash memory, or a storage device such as a hard disk, solid state drive, or optical disk. The storage unit 150 stores a simulation program 151, simulation result information 152, and specification information 153, for example.

次に、制御部140について具体的に説明する。制御部140は、論理プロセス設定部141と、タイムテーブル設定部142と、論理プロセス実行部143と、異常検出部144とを有する。 Next, the controller 140 will be specifically described. The control unit 140 has a logical process setting unit 141 , a timetable setting unit 142 , a logical process execution unit 143 and an abnormality detection unit 144 .

論理プロセス設定部141は、複数の機器の動作および複数の機器間のネットワーク動作をそれぞれ規定した論理プロセスを設定する。具体的には、論理プロセス設定部141は、記憶部150が記憶するシミュレーションプログラム151を展開して実行することによって制御システムモデル10を生成する。そして、論理プロセス設定部141は、制御システムモデル10を構成する第1の機器モデル11-1から第Nの機器モデル11-Nと、仮想通信ネットワーク12とに対してユーザが所望する動作を実行させるための論理プロセスを設定する。ここで、「論理プロセス」とは、制御システム1の動作を模擬した動作を実行させるためのプログラムのことを意味する。また、論理プロセスを設定するとは、制御システムモデル10にユーザが所望する動作を実行させるための、プログラムを設定することを意味する。 The logical process setting unit 141 sets logical processes that respectively define operations of a plurality of devices and network operations among the plurality of devices. Specifically, the logical process setting unit 141 develops and executes the simulation program 151 stored in the storage unit 150 to generate the control system model 10 . Then, the logical process setting unit 141 executes the operation desired by the user with respect to the first equipment model 11-1 to the N-th equipment model 11-N constituting the control system model 10 and the virtual communication network 12. set up a logical process to Here, the “logical process” means a program for executing an operation simulating the operation of the control system 1 . Setting a logical process means setting a program for causing the control system model 10 to perform an operation desired by the user.

タイムテーブル設定部142は、制御システムモデル10を構成する第1の機器モデル11-1から第Nの機器モデル11-Nと、仮想通信ネットワーク12とに応じたタイムテーブルを設定する。具体的には、タイムテーブル設定部142は、記憶部150が記憶する各機器の製品情報を示す仕様情報153に基づいて、各機器に応じたタイムテーブルを設定する。タイムテーブル設定部142は、仕様情報153に基づいているので、最適な動作をするようにタイムテーブルを設定することができる。最適な動作とは、例えば、各機器を動作させるために必要な時間を最小にすることのできる動作である。 The timetable setting unit 142 sets a timetable corresponding to the first to N-th device models 11 - 1 to 11 -N constituting the control system model 10 and the virtual communication network 12 . Specifically, the timetable setting unit 142 sets a timetable according to each device based on the specification information 153 indicating the product information of each device stored in the storage unit 150 . Since the timetable setting unit 142 is based on the specification information 153, the timetable can be set so as to perform the optimum operation. Optimal operation is, for example, operation that minimizes the time required to operate each device.

論理プロセス実行部143は、制御システムモデル10において、論理プロセス設定部141によって規定された論理プロセスを、タイムテーブル設定部142によって設定されたタイムテーブルに従って実行する。すなわち、論理プロセス実行部143は、制御システム1の動作を模擬したシミュレーションを実行する。論理プロセス実行部143は、シミュレーション結果を表示部120に出力する。これにより、シミュレーション結果がユーザに提供される。論理プロセス実行部143は、シミュレーション結果を記憶部150にシミュレーション結果情報152として記憶する。 The logical process executing section 143 executes the logical process specified by the logical process setting section 141 in the control system model 10 according to the timetable set by the timetable setting section 142 . That is, the logic process execution unit 143 executes a simulation that imitates the operation of the control system 1 . The logic process execution unit 143 outputs simulation results to the display unit 120 . This provides the user with simulation results. The logic process execution unit 143 stores the simulation result in the storage unit 150 as simulation result information 152 .

異常検出部144は、論理プロセス実行部143が実行したシミュレーション結果と、予め設定した動作の実行結果の期待値とを比較する。これにより、異常検出部144は、シミュレーション結果と、期待値との差異を検出する。 The abnormality detection unit 144 compares the result of the simulation executed by the logical process execution unit 143 with the expected value of the execution result of the preset operation. Thereby, the abnormality detection unit 144 detects the difference between the simulation result and the expected value.

具体的には、異常検出部144は、タイムテーブルと、仕様情報153とに基づいて、設定された論理プロセスの所望のシミュレーション結果を算出する。異常検出部144は、シミュレーション結果情報152と、所望のシミュレーション結果を比較することによって、所望のシミュレーション結果との差異を検出する。具体的には、異常検出部144によるシミュレーション結果情報152と、所望のシミュレーション結果とが一致する場合、ユーザは、制御システム1は正常に動作すると判定することができる。一方、シミュレーション結果情報152と、所望のシミュレーション結果とが一致しない場合、ユーザは、予め設定した期待値が間違っているか、実行したプログラムが間違っているか、制御システム1の構成が間違っているかのいずれかであることを判定することができる。 Specifically, the abnormality detection unit 144 calculates a desired simulation result of the set logical process based on the timetable and the specification information 153 . The abnormality detection unit 144 detects a difference from the desired simulation result by comparing the simulation result information 152 and the desired simulation result. Specifically, when the simulation result information 152 by the abnormality detection unit 144 and the desired simulation result match, the user can determine that the control system 1 operates normally. On the other hand, if the simulation result information 152 and the desired simulation result do not match, the user will either determine whether the preset expected value is wrong, the executed program is wrong, or the configuration of the control system 1 is wrong. It can be determined that

図6を用いて、シミュレーション装置130の制御部140の動作の流れについて説明する。図6は、制御部140の動作の流れを示すフローチャートである。 The operation flow of the control unit 140 of the simulation device 130 will be described with reference to FIG. FIG. 6 is a flow chart showing the operation flow of the control unit 140. As shown in FIG.

まず、制御部140は、複数の機器の動作および複数の機器間のネットワーク動作をそれぞれ規定した論理プロセスを設定する(ステップS11)。そして、制御部140は、ステップS12に進む。 First, the control unit 140 sets logical processes that respectively define operations of a plurality of devices and network operations between the plurality of devices (step S11). And the control part 140 progresses to step S12.

制御部140は、論理プロセスに対して複数の機器に応じたタイムテーブルを設定する(ステップS12)。そして、制御部140は、ステップS13に進む。 The control unit 140 sets a timetable corresponding to a plurality of devices for the logical process (step S12). And the control part 140 progresses to step S13.

制御部140は、設定された論理プロセスを、複数の機器に応じて設定されたタイムテーブルに従って、並列実行する(ステップS13)。そして、制御部140は、ステップS14に進む。 The control unit 140 executes the set logical processes in parallel according to a timetable set according to a plurality of devices (step S13). And the control part 140 progresses to step S14.

制御部140は、ステップS13で実行したシミュレーション結果と、あらかじめ定められている所望の結果とを比較する(ステップS14)。そして、制御部140は、ステップS15に進む。 The control unit 140 compares the result of the simulation executed in step S13 with a predetermined desired result (step S14). And the control part 140 progresses to step S15.

シミュレーション結果と、所望の結果とが一致する場合(ステップS15の「Yes」)、制御部140は、ステップS16に進み、制御システム1は正常に動作すると判定する(ステップS16)。そして、制御部140は、図6の動作を終了する。 If the simulation result and the desired result match ("Yes" in step S15), the control unit 140 proceeds to step S16 and determines that the control system 1 operates normally (step S16). Then, control unit 140 terminates the operation of FIG.

一方、シミュレーション結果と、所望の結果とが一致しない場合(ステップS15の「No」)、制御部140は、ステップS17に進み、制御システム1には異常があると判定する(ステップS17)。そして、制御部140は、図6の動作を終了する。 On the other hand, if the simulation result and the desired result do not match ("No" in step S15), the control unit 140 proceeds to step S17 and determines that the control system 1 has an abnormality (step S17). Then, control unit 140 terminates the operation of FIG.

図7を用いて、本実施形態において、制御システムに異常が発生した場合の動作を実行させるシステムの一例について説明する。図7は、冗長系を備えた制御システムの一例を示す図である。 With reference to FIG. 7, an example of a system that executes an operation when an abnormality occurs in the control system in this embodiment will be described. FIG. 7 is a diagram showing an example of a control system with a redundant system.

図7に示すように、制御システム1Aは、アクチュエータ20と、稼働系システム30と、待機系システム40とを備える。 As shown in FIG. 7, the control system 1A includes an actuator 20, an active system 30, and a standby system 40. As shown in FIG.

稼働系システム30は、第1のコントローラ31と、第1のセンサ32とを備える。第1のコントローラ31は、例えば、CPUを含む電子的な回路で実現することができる。第1のセンサ32は、特定の物理量を測定する。制御システム1Aでは、第1のコントローラ31が第1のセンサ32を制御して、特定の物理量を測定させる。そして、第1のコントローラ31は、第1のセンサ32に測定させた物理量に応じて、アクチュエータ20を制御する。 The active system 30 includes a first controller 31 and a first sensor 32 . The first controller 31 can be realized, for example, by an electronic circuit including a CPU. A first sensor 32 measures a specific physical quantity. In the control system 1A, the first controller 31 controls the first sensor 32 to measure a specific physical quantity. The first controller 31 controls the actuator 20 according to the physical quantity measured by the first sensor 32 .

待機系システム40は、第2のコントローラ41と、第2のセンサ42とを備える。待機系システム40は、稼働系システム30の冗長系のシステムである。第2のコントローラ41と、第2のセンサ42とは、それぞれ、第1のコントローラ31と、第1のセンサ32と同様の動作を実行する。 The standby system 40 has a second controller 41 and a second sensor 42 . The standby system 40 is a redundant system of the active system 30 . The second controller 41 and the second sensor 42 perform operations similar to those of the first controller 31 and the first sensor 32, respectively.

図8と、図9と、図10とを用いて、制御システム1Aにおける、所望の動作の流れについて説明する。図8は、通信異常が発生しない場合の制御システム1Aの動作の一例を示すシーケンス図である。図9は、通信異常が一回発生した場合の制御システム1Aの動作の一例を示すシーケンス図である。図10は、通信異常が連続して発生した場合の制御システム1Aの動作の一例を示すシーケンス図である。図8と、図9と、図10との動作の流れは、シミュレーションシステム100で実行される論理プロセスの所望の流れであるものとする。 A desired operation flow in the control system 1A will be described with reference to FIGS. 8, 9, and 10. FIG. FIG. 8 is a sequence diagram showing an example of the operation of the control system 1A when no communication abnormality occurs. FIG. 9 is a sequence diagram showing an example of the operation of the control system 1A when a communication error occurs once. FIG. 10 is a sequence diagram showing an example of the operation of the control system 1A when communication abnormalities occur consecutively. It is assumed that the operational flow of FIGS. 8, 9, and 10 is the desired flow of the logical process executed by simulation system 100. FIG.

図8を参照して、通信異常が発生しない場合の制御システム1Aの所望の動作の流れを説明する。 A desired operation flow of the control system 1A when no communication abnormality occurs will be described with reference to FIG.

第1のコントローラ31は、第1のセンサ32に対して問い合わせを送信することで、センサデータを要求する(ステップS101)。第1のセンサ32は、問い合わせに従って、物理量を測定したセンサデータを第1のコントローラ31に送信する(ステップS102)。第1のコントローラ31は、受けたセンサデータに応じた動作をアクチュエータ20に実行させるために、コマンドAをアクチュエータ20に送信する(ステップS103)。 The first controller 31 requests sensor data by transmitting an inquiry to the first sensor 32 (step S101). The first sensor 32 transmits the sensor data obtained by measuring the physical quantity to the first controller 31 according to the inquiry (step S102). The first controller 31 transmits a command A to the actuator 20 to cause the actuator 20 to perform an operation according to the received sensor data (step S103).

ステップS101からステップS103と並行して、第2のコントローラ41は、第2のセンサ42に対して問い合わせを送信することで、センサデータを要求する(ステップS104)。第2のセンサ42は、問い合わせに従って、物理量を測定したセンサデータを第2のコントローラ41に送信する(ステップS105)。ここで、第2のセンサ42が送信するセンサデータは、ステップS102で第1のセンサ32が第1のコントローラ31に送信したセンサデータと同一である。第2のコントローラ41は、受けたセンサデータに応じた動作をアクチュエータ20に実行させるために、コマンドBをアクチュエータ20に送信する(ステップS106)。 In parallel with steps S101 to S103, the second controller 41 requests sensor data by sending an inquiry to the second sensor 42 (step S104). The second sensor 42 transmits the sensor data obtained by measuring the physical quantity to the second controller 41 according to the inquiry (step S105). Here, the sensor data transmitted by the second sensor 42 is the same as the sensor data transmitted by the first sensor 32 to the first controller 31 in step S102. The second controller 41 transmits a command B to the actuator 20 to cause the actuator 20 to perform an operation according to the received sensor data (step S106).

アクチュエータ20は、通常、稼働系である第1のコントローラ31から受けたコマンドAを採用する(ステップS107)。アクチュエータ20は、コマンドAに従った動作を実行する。 The actuator 20 normally adopts the command A received from the first controller 31, which is the operating system (step S107). Actuator 20 performs an operation according to command A. FIG.

以降、ステップS108からステップS114に示すように、ステップS101からステップS107の動作を繰り返す。 Thereafter, as shown in steps S108 to S114, the operations of steps S101 to S107 are repeated.

図9を参照して、通信異常が一回発生した場合の制御システム1Aの所望の動作の流れを説明する。 With reference to FIG. 9, the desired operation flow of the control system 1A when a communication error occurs once will be described.

ステップS201からステップS207は、ステップS101からステップS107と同様なので、説明は省略する。 Since steps S201 to S207 are the same as steps S101 to S107, the description thereof is omitted.

第1のコントローラ31は、第1のセンサ32に対して問い合わせを送信する(ステップS208)。第1のコントローラ31は、通信の異常などが発生しセンサデータを第1のセンサ32から受けることができなかった場合、ステップS203で送信したコマンドAをアクチュエータ20に送信する(ステップS209)。 The first controller 31 sends an inquiry to the first sensor 32 (step S208). When the first controller 31 cannot receive the sensor data from the first sensor 32 due to a communication error or the like, it transmits the command A transmitted in step S203 to the actuator 20 (step S209).

ステップS210からステップS212は、ステップS204からステップS206の動作の繰り返しなので、説明は省略する。 Steps S210 to S212 repeat the operation of steps S204 to S206, and thus description thereof is omitted.

アクチュエータ20は、通信異常が一回目の場合は、稼働系である第1のコントローラ31から受けたコマンドAを採用する(ステップS213)。この場合、アクチュエータ20は、ステップS207で実行した動作と同様の動作を実行する。 If the communication error is the first time, the actuator 20 adopts the command A received from the first controller 31, which is the operating system (step S213). In this case, the actuator 20 performs the same operation as that performed in step S207.

以降、ステップS214からステップS220に示すように、ステップS101からステップS107の動作を繰り返す。 Thereafter, as shown in steps S214 to S220, the operations of steps S101 to S107 are repeated.

図10を参照して、通信異常が連続して発生した場合の制御システム1Aの所望の動作の流れを説明する。 A desired operation flow of the control system 1A when communication abnormalities occur consecutively will be described with reference to FIG.

ステップS301からステップS313は、ステップS201からステップS213と同様なので、説明は省略する。 Since steps S301 to S313 are the same as steps S201 to S213, the description thereof is omitted.

第1のコントローラ31は、第1のセンサ32に対して問い合わせを送信する(ステップS314)。第1のコントローラ31は、通信の異常などにより連続してセンサデータを受けることができなかった場合、異常があったことを示すコマンドAをアクチュエータ20に送信する(ステップS315)。 The first controller 31 sends an inquiry to the first sensor 32 (step S314). When the first controller 31 cannot continuously receive sensor data due to a communication error or the like, it transmits a command A indicating that there is an error to the actuator 20 (step S315).

ステップS316からステップS318は、ステップS304からステップS306の動作の繰り返しなので、説明は省略する。 Steps S316 to S318 repeat the operation of steps S304 to S306, and thus description thereof is omitted.

アクチュエータ20は、異常があったことを示すコマンドAを受けた場合には、コマンドBを採用する(ステップS319)。この場合、アクチュエータ20は、コマンドBに従った動作を実行する。 When the actuator 20 receives the command A indicating that there is an abnormality, it adopts the command B (step S319). In this case, the actuator 20 performs the operation according to the command B.

以降、ステップS320からステップS323に示すように、ステップS316からステップS319の動作を繰り返す。 Thereafter, as shown in steps S320 to S323, the operations of steps S316 to S319 are repeated.

図11と、図12とを参照して、シミュレーションシステム100が機器の異常又は通信異常を検出する方法について説明する。図11は、通信異常が発生しない場合の制御システム1Aの動作の異常の一例を示すシーケンス図である。図12は、通信異常が一回発生した場合の制御システム1Aの動作の異常の一例を示すシーケンス図である。 A method for the simulation system 100 to detect a device abnormality or a communication abnormality will be described with reference to FIGS. 11 and 12. FIG. FIG. 11 is a sequence diagram showing an example of abnormal operation of the control system 1A when no communication abnormality occurs. FIG. 12 is a sequence diagram showing an example of abnormal operation of the control system 1A when a communication abnormality occurs once.

図11を参照して、通信異常が発生していない場合の制御システム1Aにおいて、シミュレーションシステム100が異常を検出する方法の一例について説明する。 An example of a method for the simulation system 100 to detect an abnormality in the control system 1A when no communication abnormality has occurred will be described with reference to FIG. 11 .

ステップS401からステップS414は、ステップS101からステップS114と同様なので、説明は省略する。また、ステップS415からステップS420は、ステップS101からステップS106の繰り返しなので説明は省略する。 Since steps S401 to S414 are the same as steps S101 to S114, the description thereof is omitted. Further, since steps S415 to S420 repeat steps S101 to S106, description thereof will be omitted.

アクチュエータ20は、コマンドBを採用する(ステップS421)。この場合、アクチュエータ20は、コマンドBに従った動作を実行する。しかしながら、通信異常が発生していない場合には、図8に示すように、アクチュエータ20は、コマンドAを採用することが所望されている。シミュレーションシステム100の制御部140は、図8に図示の通信異常が発生していない場合の所望の動作の流れと、図11に図示の実際のシミュレーション結果とを比較することによって、制御システム1Aで発生する異常を予測することができる。これにより、シミュレーションシステム100の制御部140は、図11の動作の流れが異常であると判定する。 The actuator 20 adopts the command B (step S421). In this case, the actuator 20 performs the operation according to the command B. However, when no communication error has occurred, the actuator 20 is desired to adopt command A, as shown in FIG. The control unit 140 of the simulation system 100 compares the desired flow of operation when no communication error occurs as shown in FIG. 8 with the actual simulation result shown in FIG. Abnormalities that occur can be predicted. Accordingly, the control unit 140 of the simulation system 100 determines that the flow of operations in FIG. 11 is abnormal.

図12を参照して、通信異常が一回発生した場合の制御システム1Aにおいて、シミュレーションシステム100が異常を検出する方法の一例について説明する。 With reference to FIG. 12, an example of a method of detecting an abnormality by the simulation system 100 in the control system 1A when communication abnormality occurs once will be described.

ステップS501からステップS508は、ステップS201からステップS208と同様なので、説明は省略する。 Since steps S501 to S508 are the same as steps S201 to S208, the description thereof is omitted.

第1のコントローラ31は、異常があったことを示すコマンドAを送信する(ステップS509)。ステップS510からステップS512は、ステップS210からステップS212と同様なので説明は省略する。 The 1st controller 31 transmits the command A which shows that there was abnormality (step S509). Since steps S510 to S512 are the same as steps S210 to S212, the description thereof is omitted.

アクチュエータ20は、異常があったことを示すコマンドAを受けているのでコマンドBを採用する(ステップS513)。この場合、アクチュエータ20は、コマンドBに従った動作を実行する。ステップS514からステップS519は、ステップS201からステップS206の繰り返しなので説明は省略する。この場合、アクチュエータ20は、コマンドAを受けているにも関わらず、コマンドBを採用する(ステップS520)。 Since the actuator 20 has received the command A indicating that there is an abnormality, it adopts the command B (step S513). In this case, the actuator 20 performs the operation according to the command B. Since steps S514 to S519 are repetitions of steps S201 to S206, description thereof will be omitted. In this case, the actuator 20 adopts the command B despite having received the command A (step S520).

しかしながら、通信異常の発生が一回目である場合には、図9に示すように、ステップS503のコマンドAを送信し、アクチュエータ20は、ステップS503のコマンドAを採用することが所望されている。シミュレーションシステム100は、図9に図示の通信異常が一回発生した場合の所望の動作の流れと、図12に図示の実際のシミュレーション結果とを比較することによって、制御システム1Aで発生する異常を予測することができる。これにより、シミュレーションシステム100の制御部140は、図12の動作の流れが異常であると判定する。 However, when the communication error occurs for the first time, as shown in FIG. 9, it is desired that command A of step S503 is transmitted and the actuator 20 adopts command A of step S503. The simulation system 100 compares the desired flow of operation in the case where the communication abnormality shown in FIG. 9 occurs once and the actual simulation result shown in FIG. can be predicted. Accordingly, the control unit 140 of the simulation system 100 determines that the flow of operations in FIG. 12 is abnormal.

上述のとおり、本実施形態は、複数の機器が通信ネットワークを介して接続されている制御システムにおいて、実際に制御システムを構築することなく、制御システムの動作を確認することができる。これにより、本実施形態は、制御システムに発生する異常を予測することができる。 As described above, in the control system in which a plurality of devices are connected via a communication network, the operation of the control system can be checked without actually constructing the control system. Thereby, this embodiment can predict an abnormality that occurs in the control system.

本実施形態では、機器間の通信異常を予測する場合について説明したが、これは例示であり、本発明を限定するものではない。本実施形態は、誤った信号を出力するなどの機器に発生する異常も検出することができる。 In this embodiment, the case of predicting a communication abnormality between devices has been described, but this is an example and does not limit the present invention. This embodiment can also detect anomalies that occur in devices, such as outputting erroneous signals.

1,1A 制御システム
2-1 第1の機器
2-2 第2の機器
2-N 第Nの機器
3 通信ネットワーク
10 制御システムモデル
11-1 第1の機器モデル
11-2 第2の機器モデル
11-N 第Nの機器モデル
12 仮想通信ネットワーク
13 模擬アプリケーション
14 模擬ミドルウェア
15 模擬OS
20 アクチュエータ
30 稼働系システム
31 第1のコントローラ
32 第1のセンサ
40 待機系システム
41 第2のコントローラ
42 第2のセンサ
100 シミュレーションシステム
110 操作部
120 表示部
130 シミュレーション装置
140 制御部
141 論理プロセス設定部
142 タイムテーブル設定部
143 論理プロセス実行部
144 異常検出部
150 記憶部
151 シミュレーションプログラム
152 シミュレーション結果情報
153 仕様情報
1, 1A control system 2-1 first device 2-2 second device 2-N Nth device 3 communication network 10 control system model 11-1 first device model 11-2 second device model 11 -Nth device model 12 virtual communication network 13 simulated application 14 simulated middleware 15 simulated OS
20 actuator 30 operating system 31 first controller 32 first sensor 40 standby system 41 second controller 42 second sensor 100 simulation system 110 operation unit 120 display unit 130 simulation device 140 control unit 141 logical process setting unit 142 timetable setting unit 143 logical process execution unit 144 abnormality detection unit 150 storage unit 151 simulation program 152 simulation result information 153 specification information

Claims (5)

複数の機器と、複数の前記機器を接続する通信ネットワークとを含むシステムの動作をシミュレーションする方法であって、
前記複数の機器の動作および複数の前記機器間の前記通信ネットワーク上における動作をそれぞれ規定した論理プロセスを設定するステップと、
前記複数の機器に応じてタイムテーブルを設定するステップと、
前記複数の機器に規定された前記論理プロセスを前記タイムテーブルに従って並列実行させるステップと、
前記タイムテーブルと、前記複数の機器の仕様情報とに基づいて、前記論理プロセスの所望のシミュレーション結果を算出するステップと、
前記論理プロセスの実行結果と、前記シミュレーション結果との差異に基づいて、前記複数の機器の異常および前記複数の機器の間の通信異常を検出するステップと、
を含む、
シミュレーション方法。
A method of simulating the operation of a system comprising a plurality of devices and a communication network connecting the plurality of devices, comprising:
setting up logical processes respectively defining operations of the plurality of devices and operations on the communication network between the plurality of devices;
setting a timetable according to the plurality of devices;
causing the plurality of devices to execute the defined logical processes in parallel according to the timetable;
calculating a desired simulation result of the logic process based on the timetable and the specification information of the plurality of devices;
detecting an abnormality in the plurality of devices and an abnormality in communication between the plurality of devices based on the difference between the execution result of the logic process and the simulation result;
including,
simulation method.
前記システムは、稼働系と、待機系とを含む冗長システムで構成されており、
前記通信異常が検出された場合に、前記稼働系から前記待機系に切り替えるステップをさらに含む、
請求項に記載のシミュレーション方法。
The system is composed of a redundant system including an active system and a standby system,
further comprising switching from the active system to the standby system when the communication abnormality is detected;
The simulation method according to claim 1 .
前記通信異常を検出するステップでは、前記通信異常が連続して検出された場合において前記稼働系から前記待機系に切り替わらない場合に異常であることを検出し、前記通信異常が連続して検出されない場合において前記稼働系から前記待機系に切り替わった場合に異常であることを検出する、
請求項に記載のシミュレーション方法。
In the step of detecting the communication abnormality, when the communication abnormality is continuously detected and the operation system is not switched to the standby system, the abnormality is detected, and the communication abnormality is not continuously detected. Detecting an abnormality when switching from the active system to the standby system in the case of
The simulation method according to claim 2 .
複数の機器と、複数の前記機器を接続する通信ネットワークとを含むシステムを模擬したシステムモデルを生成し、前記複数の機器の動作および複数の前記機器間の前記通信ネットワーク上における動作をそれぞれ規定した論理プロセスを設定する論理プロセス設定部と、
前記複数の機器に応じてタイムテーブルを設定するタイムテーブル設定部と、
前記複数の機器に設定された前記論理プロセスを前記タイムテーブルに従って並列実行させる論理プロセス実行部と、
前記タイムテーブルと、前記複数の機器の仕様情報とに基づいて、前記論理プロセスの所望のシミュレーション結果を算出し、前記論理プロセスの実行結果と、前記シミュレーション結果との差異に基づいて、前記複数の機器の異常および前記複数の機器の間の通信異常を検出する異常検出部と、を備える、
シミュレーションシステム。
A system model simulating a system including a plurality of devices and a communication network connecting the plurality of devices is generated, and operations of the plurality of devices and operations on the communication network between the plurality of devices are defined respectively. a logical process setting unit for setting a logical process;
a timetable setting unit that sets a timetable according to the plurality of devices;
a logical process execution unit for executing the logical processes set in the plurality of devices in parallel according to the timetable;
A desired simulation result of the logical process is calculated based on the timetable and the specification information of the plurality of devices, and the plurality of devices is calculated based on the difference between the execution result of the logical process and the simulation result. an anomaly detection unit that detects an anomaly of the device and an anomaly in communication between the plurality of devices ;
simulation system.
コンピュータに、複数の機器と、複数の前記機器を接続する通信ネットワークとを含むシステムの動作をシミュレーションさせるためのプログラムであって、
前記コンピュータに、
前記複数の機器の動作および複数の前記機器間の前記通信ネットワーク上における動作をそれぞれ規定した論理プロセスを設定するステップと、
前記複数の機器に応じてタイムテーブルを設定するステップと、
前記複数の機器に規定された前記論理プロセスを前記タイムテーブルに従って並列実行させるステップと、
前記タイムテーブルと、前記複数の機器の仕様情報とに基づいて、前記論理プロセスの所望のシミュレーション結果を算出するステップと、
前記論理プロセスの実行結果と、前記シミュレーション結果との差異に基づいて、前記複数の機器の異常および前記複数の機器の間の通信異常を検出するステップと、を実行させる、
プログラム。
A program for causing a computer to simulate the operation of a system including a plurality of devices and a communication network connecting the plurality of devices,
to the computer;
setting up logical processes respectively defining operations of the plurality of devices and operations on the communication network between the plurality of devices;
setting a timetable according to the plurality of devices;
causing the plurality of devices to execute the defined logical processes in parallel according to the timetable;
calculating a desired simulation result of the logic process based on the timetable and the specification information of the plurality of devices;
detecting an abnormality in the plurality of devices and an abnormality in communication between the plurality of devices based on the difference between the execution result of the logic process and the simulation result ;
program.
JP2018156604A 2018-08-23 2018-08-23 SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM Active JP7137994B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018156604A JP7137994B2 (en) 2018-08-23 2018-08-23 SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018156604A JP7137994B2 (en) 2018-08-23 2018-08-23 SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM

Publications (2)

Publication Number Publication Date
JP2020030690A JP2020030690A (en) 2020-02-27
JP7137994B2 true JP7137994B2 (en) 2022-09-15

Family

ID=69622914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018156604A Active JP7137994B2 (en) 2018-08-23 2018-08-23 SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM

Country Status (1)

Country Link
JP (1) JP7137994B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024105747A1 (en) * 2022-11-14 2024-05-23 日本電信電話株式会社 Inspection device, inspection method, and inspection program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013084654A1 (en) 2011-12-05 2013-06-13 インターナショナル・ビジネス・マシーンズ・コーポレーション Simulation execution method, program and system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04195306A (en) * 1990-11-28 1992-07-15 Hitachi Ltd Simulation device for production facility

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013084654A1 (en) 2011-12-05 2013-06-13 インターナショナル・ビジネス・マシーンズ・コーポレーション Simulation execution method, program and system

Also Published As

Publication number Publication date
JP2020030690A (en) 2020-02-27

Similar Documents

Publication Publication Date Title
Ledin Hardware-in-the-loop simulation
US9846585B2 (en) System and method for emulation of an automation control system
US11175895B2 (en) Code generation and simulation for graphical programming
KR101132358B1 (en) Multiple plc simulation system
JP2009265668A (en) Training simulator for engineering project
JP2008084121A (en) Simulation system and simulation method
US20130204602A1 (en) Simulation apparatus and method for verifying hybrid system
JP2015060600A (en) Testing device for real-time testing of virtual control unit
US3702011A (en) Apparatus and method for simulating logic faults
CN103150451A (en) Simulation system and data communication method of simulation system
KR20140098602A (en) System and method for performing distributed simulation
JP7137994B2 (en) SIMULATION METHOD, SIMULATION SYSTEM AND PROGRAM
EP3196717B1 (en) Emulated industrial control
CN106940533B (en) Cloud super real-time simulation platform and hardware-in-loop based real-time decision method
JP2008299068A (en) Operation training system and operation training method
US10042335B2 (en) Embedded emulation modules in industrial control devices
JP2002163020A (en) Method and device for detecting abnormality in programmable controller
CN102292704A (en) Configurator with Embedded Firmware for Offline Instrument User Settings Implementation
EP3206101B1 (en) Test device for monitoring control device
JP2019179284A (en) Simulation system and simulation program
JP2016024798A (en) Redundant controller system and standby system controller
JP2000330970A (en) Device and method for simulation
KR20230052018A (en) Integrated simulation apparatus
KR20090021999A (en) Plant controlling device simulation system
CN113126881B (en) System configuration method, device, equipment, readable storage medium and distributed storage system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210603

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220324

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220602

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: 20220809

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220905

R150 Certificate of patent or registration of utility model

Ref document number: 7137994

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150