JP2023125352A - Simulation system, method and simulation program - Google Patents
Simulation system, method and simulation program Download PDFInfo
- Publication number
- JP2023125352A JP2023125352A JP2022029389A JP2022029389A JP2023125352A JP 2023125352 A JP2023125352 A JP 2023125352A JP 2022029389 A JP2022029389 A JP 2022029389A JP 2022029389 A JP2022029389 A JP 2022029389A JP 2023125352 A JP2023125352 A JP 2023125352A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- communication
- program
- control
- simulation system
- 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 71
- 238000000034 method Methods 0.000 title claims abstract description 67
- 230000006854 communication Effects 0.000 claims abstract description 164
- 238000004891 communication Methods 0.000 claims abstract description 126
- 230000008569 process Effects 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 221
- 230000010365 information processing Effects 0.000 claims description 55
- 230000004044 response Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 23
- 230000015654 memory Effects 0.000 description 16
- 238000012546 transfer Methods 0.000 description 11
- 238000011161 development Methods 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000000737 periodic effect Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Abstract
Description
本開示は、FA(Factory Automation)の機器を制御するプログラムを開発する環境を提供するための技術に関する。 The present disclosure relates to a technology for providing an environment for developing a program for controlling FA (Factory Automation) equipment.
様々な生産現場において、生産工程を自動化するためのFAシステムが普及している。FAシステムは生産工程に備えられる制御対象の機器と、制御プログラムを実行するPLC(Programmable Logic Controller)などの制御装置を備える。 FA systems for automating production processes are becoming widespread at various production sites. The FA system includes equipment to be controlled in the production process and a control device such as a PLC (Programmable Logic Controller) that executes a control program.
制御プログラムの開発環境では、通常、設計者はシミュレータを利用することができる。このようなシミュレーションに関し、例えば特開2004-5431号公報(特許文献1)には、シミュレーション対象となる物理実体(工作機械、組立機械、コンベア、プロセス制御)をモデル化した複数の仮想リソースを適宜組合わせることでシミュレーションモデルを完成させる方法を記載する。 In a control program development environment, a designer can usually use a simulator. Regarding such simulations, for example, Japanese Patent Laid-Open No. 2004-5431 (Patent Document 1) describes how to appropriately create multiple virtual resources that model physical entities to be simulated (machine tools, assembly machines, conveyors, process control). This section describes how to complete a simulation model by combining them.
生産現場の多様性は高まる傾向にある。例えば、PLCでは対象の制御処理と、制御処理に関連する情報を、ネットワークを介して情報処理装置と通信する通信処理が実施される。したがって、制御プログラムの開発シーンでも、このような通信処理を実施できる環境の提供が要望されていた。しかし、特許文献1は、このような通信処理を可能にする仕組みは提案していない。
The diversity of production sites is increasing. For example, in a PLC, target control processing and communication processing for communicating information related to the control processing with an information processing device via a network are implemented. Therefore, even in the development of control programs, there has been a demand for an environment in which such communication processing can be performed. However,
本開示の目的は、コントローラの制御処理のシミュレーションに、シミュレーションされた制御処理に関連する情報について情報処理装置と通信可能な環境を提供することである。 An object of the present disclosure is to provide an environment for simulating control processing of a controller in which information related to the simulated control processing can be communicated with an information processing device.
本開示に係る、コントローラの処理をシミュレーションするシミュレーションシステムにおいて、コントローラは、制御対象が属する第1ネットワークを接続する第1コネクタと、情報処理装置が属する第2ネットワークを接続する第2コネクタと、制御処理を実施するためのユーザプログラムと、制御処理に関連する情報を情報処理装置と通信するための通信処理を実施するための通信プログラムを実行する実行部と、を有し、シミュレーションシステムは、制御処理をシミュレーションするシミュレータと、シミュレーションされる制御処理に関連する情報を、予め定められた設定に従って、情報処理装置と通信する通信処理を実施する通信部と、を備える。 In the simulation system for simulating processing of a controller according to the present disclosure, the controller includes a first connector that connects a first network to which a controlled object belongs, a second connector that connects a second network to which an information processing device belongs, and a second connector that connects a second network to which an information processing device belongs; The simulation system includes a user program for performing processing, and an execution unit that executes a communication program for performing communication processing for communicating information related to control processing with an information processing device. The information processing apparatus includes a simulator that simulates processing, and a communication unit that performs communication processing that communicates information related to the control processing to be simulated with the information processing device according to predetermined settings.
上述の開示によれば、シミュレーションシステムは、制御処理のシミュレーションに、当該シミュレーションされる制御処理に関連する情報を情報処理装置と通信する通信処理を実施する環境を提供できる。 According to the above disclosure, the simulation system can provide an environment for simulating a control process to perform a communication process for communicating information related to the simulated control process with an information processing device.
上述の開示において、上記の情報処理装置は、DB(データベース)を管理するDB装置を含む。 In the above disclosure, the above information processing device includes a DB device that manages a DB (database).
上述の開示によれば、シミュレーションシステムは、制御処理のシミュレーションに、当該シミュレーションされる制御処理に関連する情報をDB装置と通信する通信処理を実施する環境を提供する。 According to the above-mentioned disclosure, the simulation system provides an environment for simulating control processing to perform communication processing for communicating information related to the simulated control processing with a DB device.
上述の開示において、通信処理は、DBを操作するためのDB操作命令を、DB装置に発行する処理を含む。 In the above disclosure, the communication process includes a process of issuing a DB operation command to the DB device to operate the DB.
上述の開示によれば、シミュレーションされる制御処理に関連する情報をDB装置と通信する通信処理に、DB操作命令の発行を含めることができる。 According to the above disclosure, the communication process for communicating information related to the control process to be simulated with the DB device can include issuing a DB operation command.
上述の開示において、予め定められた設定の項目は、DB操作命令に従って、DB装置が操作する対象の指定を含む。 In the above disclosure, the predetermined setting items include designation of the target to be operated by the DB device according to the DB operation command.
上述の開示によれば、DB操作命令に従って、DB装置が操作する対象の指定を設定部によって設定することができる。 According to the above disclosure, the setting unit can specify the target to be operated by the DB device according to the DB operation command.
上述の開示において、上記のDB装置が操作する対象の指定は、DBにおいてアクセス処理されるデータの識別子を含み、制御処理に関連する情報は、アクセス処理されるデータを含む。 In the above disclosure, the specification of the target to be operated by the DB device includes an identifier of the data to be accessed in the DB, and the information related to control processing includes the data to be accessed.
上述の開示によれば、DBにおいてアクセス処理されるデータの識別子として、制御処理に関連する情報を、設定することができる。 According to the above disclosure, information related to control processing can be set as an identifier of data accessed in the DB.
上述の開示において、上記の予め定められた設定の項目は、通信処理に関するパラメータを含む。 In the above disclosure, the predetermined setting items include parameters related to communication processing.
上述の開示によれば、制御処理のシミュレーションに、制御処理に関連する情報を情報処理装置と通信する通信処理に関するパラメータを設定できる。 According to the above disclosure, parameters related to communication processing for communicating information related to control processing with an information processing device can be set in a simulation of control processing.
上述の開示において、上記の通信処理に関するパラメータは、情報処理装置との通信を確立するためのパラメータを含む。 In the above disclosure, the parameters related to the communication processing include parameters for establishing communication with the information processing device.
上述の開示によれば、通信処理を実施するために、情報処理装置との通信を確立するためのパラメータを設定できる。 According to the above disclosure, parameters for establishing communication with the information processing device can be set in order to implement communication processing.
上述の開示において、通信処理に関するパラメータは、通信処理時間のパラメータを含む。 In the above disclosure, the parameters related to communication processing include parameters of communication processing time.
上述の開示によれば、通信処理を実施するために用いる、情報処理装置との通信処理時間のパラメータを設定できる。 According to the above disclosure, it is possible to set parameters for communication processing time with an information processing device, which are used to perform communication processing.
上述の開示において、通信処理時間は、第2ネットワークの通信速度に基づいている。この開示によれば、通信処理時間を、情報処理装置が属する第2ネットワーク、すなわちコントローラが通信に用いるネットワークの通信速度に基づき設定できる。 In the above disclosure, the communication processing time is based on the communication speed of the second network. According to this disclosure, the communication processing time can be set based on the communication speed of the second network to which the information processing device belongs, that is, the network used for communication by the controller.
上述の開示においては、コントローラは、制御処理を実施するための制御タスクおよび、当該制御処理に関連する処理を実施するための関連処理タスクを含む複数のタスクを実行するマルチタスク実行部を備え、情報処理装置との通信は関連処理タスクにおいて実行され、マルチタスク実行部は、制御タスクを第1の周期で実行し、マルチタスク実行部は、関連処理タスクを第2の周期で実行し、通信処理時間は、第2の周期に基づいている。 In the above disclosure, the controller includes a multitask execution unit that executes a plurality of tasks including a control task for implementing control processing and a related processing task for implementing processing related to the control processing, Communication with the information processing device is performed in the related processing task, the multitask execution unit executes the control task in the first cycle, the multitask execution unit executes the related processing task in the second cycle, and the communication The processing time is based on the second cycle.
上述の開示によれば、コントローラは、制御処理と情報処理装置との通信を含む関連処理を、マルチタスク制御で実行する場合に、シミュレーションシステムでは、このようなタスクの実行周期に基づき、通信処理を実施するために用いる、情報処理装置との通信処理時間を設定できる。 According to the above disclosure, when the controller executes related processing including control processing and communication with an information processing device using multi-task control, in the simulation system, communication processing is performed based on the execution cycle of such tasks. You can set the communication processing time with the information processing device, which is used to implement the process.
この開示の他の局面によれば、コントローラの処理をシミュレーションする方法が提供される。コントローラは、制御対象が属する第1ネットワークを接続する第1コネクタと、情報処理装置が属する第2ネットワークを接続する第2コネクタと、制御処理を実施するためのユーザプログラムと、制御処理に関連する情報を情報処理装置と通信するための通信プログラムを実行する実行部と、を有し、方法は、制御処理をシミュレーションするステップと、シミュレーションされる制御処理に関連する情報を、予め定められた設定に従って、情報処理装置と通信する通信処理を実施するステップと、を備える。 According to other aspects of this disclosure, a method of simulating processing of a controller is provided. The controller includes a first connector that connects a first network to which the controlled object belongs, a second connector that connects a second network to which the information processing device belongs, a user program for implementing control processing, and a program related to the control processing. an execution unit that executes a communication program for communicating information with the information processing device; the method includes the steps of simulating control processing; and performing communication processing to communicate with the information processing device according to the method.
上述の開示において、方法が実施されると、制御処理のシミュレーションに、当該シミュレーションされる制御処理に関連する情報を情報処理装置と通信する通信処理を実施する環境を提供できる。 In the above-mentioned disclosure, when the method is implemented, it is possible to provide an environment for simulating a control process to perform a communication process for communicating information related to the simulated control process with an information processing device.
この開示のさらに他の局面によれば、コントローラの処理をシミュレーションする方法をコンピュータに実行させるためのシミュレーションプログラムが提供される。コントローラは、制御対象が属する第1ネットワークを接続する第1コネクタと、情報処理装置が属する第2ネットワークを接続する第2コネクタと、制御処理を実施するためのユーザプログラムと、制御処理に関連する情報を情報処理装置と通信するための通信処理を実施するための通信プログラムを実行する実行部と、を有し、方法は、制御処理をシミュレーションするステップと、シミュレーションされる制御処理に関連する情報を、予め定められた設定に従って、情報処理装置と通信する通信処理を実施するステップと、を備える。 According to still another aspect of this disclosure, a simulation program for causing a computer to execute a method of simulating processing of a controller is provided. The controller includes a first connector that connects a first network to which the controlled object belongs, a second connector that connects a second network to which the information processing device belongs, a user program for implementing control processing, and a program related to the control processing. an execution unit that executes a communication program for performing communication processing for communicating information with an information processing device; the method includes the steps of simulating control processing; and information related to the simulated control processing. and a step of performing communication processing to communicate with the information processing device according to predetermined settings.
上述の開示において、シミュレーションプログラムが実行されると、制御処理のシミュレーションに、当該シミュレーションされる制御処理に関連する情報を情報処理装置と通信する通信処理を実施する環境を提供できる。 In the above disclosure, when the simulation program is executed, it is possible to provide an environment for simulating a control process to perform a communication process for communicating information related to the simulated control process with an information processing apparatus.
本開示によれば、コントローラの制御処理のシミュレーションに、シミュレーションされた制御処理に関連する情報について情報処理装置と通信可能な環境を提供できる。 According to the present disclosure, it is possible to provide an environment in which information related to the simulated control processing can be communicated with the information processing device for simulation of the control processing of the controller.
以下、図面を参照しつつ、本発明に従う実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。 Embodiments according to the present invention will be described below with reference to the drawings. In the following description, the same parts and components are given the same reference numerals. Their names and functions are also the same. Therefore, detailed explanations thereof will not be repeated.
<A.適用例>
本発明の適用例について説明する。本実施の形態に係るシミュレーションシステム1は、生産ラインの機械・設備を駆動する駆動機器等のフィールド機器を制御するためのプログラムを含むユーザプログラムを開発する環境に適用され得る。本実施の形態においては、フィールド機器を制御するPLCをコントローラの典型例として説明する。但し、本発明に係るコントローラは、PLCに限られることなく、各種の制御装置へ適用可能である。
<A. Application example>
An application example of the present invention will be explained. The
図1は、本実施の形態に係るシミュレーションシステム1の構成を模式的に示す図である。図1では、シミュレーションシステム1の構成が、実機のPLC100の構成と関連付けて示される。図1を参照して、PLC100は、フィールド機器95が属する通信ネットワークの一例であるフィールドバス110を接続するフィールドバスコネクタ158と、DB(データベースの略)を管理するDB装置400が属する上位のネットワーク112を接続する上位通信コネクタ168を有する。DB装置400は、PLC100と制御処理に関連する情報を通信する情報処理装置の一例である。
FIG. 1 is a diagram schematically showing the configuration of a
本実施の形態では、フィールドバス110は、狭義の通信ネットワークの概念を含み得る。フィールドバス110は、データの到達時間が保証される、定周期通信を行なうバスまたはネットワークを採用することが好ましい。このような定周期通信を行なうバスまたはネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などが知られている。これに対し、上位のネットワーク112には、一般的なネットワークプロトコルであるイーサネット(登録商標)やEtherNet/IP(登録商標)が採用され得る。
In this embodiment,
また、PLC100は、フィールド機器95の制御処理を実施するためのユーザプログラム186(図中では、ユーザプログラムは“UPG”と略される)を実行する環境を提供する実行部189を有する。実行部189は、ユーザプログラム186を含むアプリケーションプログラムを実行するための、システムプログラム188を含むプラットフォームとして構成される。システムプログラム188は、OS(Operating System)、各種ライブラリ、およびDB通信プログラム192を含む各種通信プログラムを有する。DB通信プログラム192が実行されることにより、PLC100は、制御処理に関連する情報をDB装置400と通信する通信処理を実施する。
Further, the
制御処理では、フィールド機器95から受信される状態値を用いて、制御指令を算出する制御演算が実施され、算出された制御指令はフィールド機器95に送信される。フィールド機器95は制御指令に従って動作し、動作結果である当該フィールド機器95の状態値をPLC100に送信する。PLC100ではUPG189は周期的に実行される。これにより、当該周期に同期して算出される制御指令に基づきフィールド機器95は動作を継続する。また、PLC100は、DB通信プログラム192をUPG189の実行周期に同期した周期で実行する。このような周期制御により、PLC100は、制御処理に関連する情報を周期的にDB装置400と通信することができる。
In the control process, a control calculation for calculating a control command is performed using the state value received from the
DB装置400としては、データベースを提供する公知の構成を採用することができる。このようなデータベースとしては、リレーショナルデータ型やオブジェクトデータ型といった任意の構成を採用できる。DB装置400は、汎用的なコンピュータアーキテクチャに従って構成されるため、ここではその詳細な説明は繰り返さない。DB装置400は、PLC100から受信する情報に基づきDBについてアクセス処理を実施し、処理結果に基づく応答をPLC100に送信する。より具体的には、DB装置400は、PLC100からの接続要求やアクセス要求(リレーショナルデータ型では、データベース操作言語の1種であるSQL文で規定される命令コード)を受けて、当該要求に基づき必要なデータ処理を実行し、その処理結果などをPLC100へ応答する。
As the
DB通信プログラム192の通信処理では、制御処理において出力される接続要求やアクセス要求を、DB装置400で処理可能なフォーマット、例えばSQL文に変換し、変換後の接続要求やアクセス要求を含むDB操作命令をDB装置400に送信(発行)する。また、通信処理では、当該DB操作命令に基づく処理結果の応答をDB装置400から受信し、実行部189に渡す。
In the communication processing of the
シミュレーションシステム1は、汎用コンピュータを含んで構成されるサポート装置300上に構成される。シミュレーションシステム1は、主に制御処理をシミュレーションするシミュレーション部を構成するシミュレータ338と、PLC100の通信処理を実施する通信部を構成するDB接続システム351と、設定ツール339を含む。DB接続システム351は、DB通信プログラム192の少なくとも1つの命令コードを含んで構成される実行可能形式の通信モジュールを含む。DB接続システム351は、シミュレータ338とは独立したモジュールとして提供される。より具体的には、シミュレータ338とDB接続システム351とは互いに呼び出し、または呼び出されることなく、独立して動作可能に構成されている。
The
設定ツール339は、シミュレータ338によってシミュレーションされる制御処理に関連する情報についてDB装置400との通信処理をDB接続システム351に実施させるための設定をする設定部として構成される。すなわち、設定ツール339は、このように互いに独立したシミュレータ338とDB接続システム351との間の情報の遣り取り(授受)と、DB接続システム351がDB装置400と通信する処理を実現するための設定をする設定部として構成される。シミュレータ338とDB接続システム351との間で遣り取りされる情報は、シミュレータ338がシミュレーションする制御処理に関連する情報であって、例えば、上記に述べた制御指令や状態値を含むが、これらに限定されない。
The setting tool 339 is configured as a setting unit that performs settings for causing the
シミュレーションシステム1では、シミュレータ338が起動されると、DB接続システム351も起動される。シミュレータ338によって、ユーザプログラム186が実行されることにより制御処理がシミュレーションされる。より具体的には、例えば状態値が目標値となるようにシミュレーションが繰り返し実行されることで、状態値や制御指令が時系列に取得される。DB接続システム351は、設定ツール339の設定に従って通信処理を実施する。より具体的には、当該設定に従って、DB接続システム351は、シミュレータ338からの状態値または制御指令の制御処理に関連する情報を取得し、取得された情報を、DBの接続要求やアクセス要求のDB操作命令とともに、サポート装置300の通信IF(インターフェイスの略)318を介してネットワーク112上のDB装置400と通信処理する。DB装置400は、サポート装置300からのDB操作命令に基づくデータ処理を実行し、その処理結果の応答をサポート装置300(DB接続システム351)へ送信する。
In the
DB接続システム351は、通信処理においてDB装置400からの応答を受信し、設定ツール339の設定に従って、シミュレータ338に当該応答を出力する。シミュレータ338は、当該応答をシミュレーションに利用する、または、UI(ユーザインターフェイス)等で出力する。このようなUIが提供されることにより、ユーザ(プログラム開発者)に対し、応答を分析するための情報が提供される。ユーザは、応答の分析に基づき、ユーザプログラム186のデバッグ、例えばDBアクセス処理を構成する命令コードのデバッグが可能となる。
The
このように、シミュレーションシステム1を利用してデバッグ等がされて開発が完了したユーザプログラム186は、実行可能形式のプログラムに変換されて、サポート装置300から実機のPLC100に転送され、例えばHDD(Hard Disk Drive)等の不揮発性記憶部に格納される。PLC100は、起動されると、ユーザプログラム186を不揮発性記憶部から、RAM(Random Access Memory)を含む揮発性メモリの作業領域に読出し展開する。PLC100は、展開されたプログラムを解釈および実行することで制御処理を実施し、DB装置400と制御処理に関連する情報を通信する。
In this way, the
なお、図1において、シミュレーションシステム1が通信する情報処理装置はDB装置400に限定されない。例えば、DB装置400と同様の性能・動作を実現するネットワーク112上の他のデバイスを利用してもよい。また、この他のデバイスが属するネットワークは、ネットワーク112に限定されず、ネットワーク112と同様の性能を有するものであれば、他のネットワークであってもよい。
Note that in FIG. 1, the information processing device with which the
また、図1のサポート装置300の構成はPLC100に内蔵されてもよい。この場合、PLC100は、例えば、産業用PC(IPC:Industrial Personal Computer)で実現され得る。
Further, the configuration of the
以下、本実施の形態のより具体的な応用例について説明する。
<B.システム構成>
図2は、本実施の形態に係る制御システム10のシステム構成を示す模式図である。図2を参照して、制御システム10は、PLC100と、PLC100に接続可能なサポート装置300と、PLC100からのアクセスを受けるDB装置400とを含む。PLC100は、ユーザプログラム186を周期的またはイベント的に実行する。ユーザプログラム186は、データベースのアクセスに関する命令を含めることができ、PLC100は、この命令に従って、DB装置400にアクセスすることができる。PLC100およびDB装置400は、イーサネット(登録商標)などのネットワーク112を介して、データを互いに遣り取りできるように構成される。また、ネットワーク112に属する情報処理装置は、さらに、PLC100から収集する収集データ512を管理するデータサーバ500と、Webサーバ600とを含む。
A more specific application example of this embodiment will be described below.
<B. System configuration>
FIG. 2 is a schematic diagram showing the system configuration of the
サポート装置300は、PLC100に接続可能に構成される。サポート装置300はシミュレーションシステム1の環境を提供するとともに、PLC100との間で各種パラメータの設定、プログラミング、モニタ、デバッグなどの機能を提供する。サポート装置300は、接続ケーブル114を介してPLC100に接続され、PLC100とサポート装置300との間は、典型的には、USB(Universal Serial Bus)規格に従って通信可能に構成される。なお、サポート装置300は、接続ケーブル114が脱着自在に構成され得て、接続ケーブル114が接続されない、すなわちスタンドアロンで動作することもできる。
The
PLC100は、制御演算を実行するCPUユニット104と、1つ以上のIO(Input/Output)ユニット106とを含む。これらのユニットは、PLCシステムバス108を介して、データを互いに遣り取りできるように構成される。また、これらのユニットには、電源ユニット102によって適切な電圧の電源が供給される。
制御システム10において、PLC100は、IOユニット106を介して、および/または、フィールドバス110を介して、各種のフィールド機器95との間で制御指令および状態値を含むデータを遣り取りする。これらのフィールド機器95は、生産ラインに備えられるアクチュエータや、生産ラインから各種情報を取得するためのセンサなどを含む。図1には、このようなフィールド機器95の一例として、検出スイッチ11、リレー20およびモータ32を駆動するサーボモータドライバ30を含む。また、PLC100は、フィールドバス110を介してリモートIOターミナル200も接続されている。リモートIOターミナル200は、基本的には、IOユニット106と同様に、一般的な入出力処理に関する処理を行う。より具体的には、リモートIOターミナル200は、フィールドバス110でのデータ伝送に係る処理を行うための通信カプラ205と、1つ以上のIOユニット204とを含む。これらのユニットは、リモートIOターミナルバス208を介して、データを互いに遣り取りできるように構成される。
In the
<C.PLC100の構成>
次に、本実施の形態に係るPLC100の構成について説明する。図3は、本実施の形態に係るPLC100の主要部を示すハードウェア構成を示す模式図である。図4は、本実施の形態に係るPLC100のソフトウェア構成を示す模式図である。
<C. Configuration of PLC100>
Next, the configuration of
図3を参照して、PLC100のCPUユニット104のハードウェア構成について説明する。CPUユニット104は、プロセッサ120と、チップセット122と、システムクロック124と、主メモリ126と、不揮発性メモリ128と、USBコネクタ130と、PLCシステムバスコントローラ140と、フィールドバスコントローラ150と、上位通信コントローラ160と、メモリカードインターフェイス170とを含む。チップセット122と他のコンポーネントとの間は、各種のバスを介してそれぞれ結合されている。
The hardware configuration of the
プロセッサ120およびチップセット122は、典型的には、汎用的なコンピュータアーキテクチャに準じて構成される。すなわち、プロセッサ120は、チップセット122から内部クロックに従って順次供給される命令コードを解釈して実行する。チップセット122は、接続されている各種コンポーネントとの間で内部的なデータを遣り取りするとともに、プロセッサ120に必要な命令コードを生成する。システムクロック124は、予め定められた周期のシステムクロックを発生してプロセッサ120に提供する。チップセット122は、プロセッサ120での演算処理の実行の結果得られたデータなどをキャッシュする機能を有する。
Processor 120 and
CPUユニット104は、記憶部として、主メモリ126および不揮発性メモリ128を有する。主メモリ126は、揮発性の記憶領域であり、プロセッサ120で実行されるべき各種プログラムを保持するとともに、各種プログラムの実行時の作業用メモリとしても使用される。不揮発性メモリ128は、システムプログラム、ユーザプログラム186、データ定義情報、稼働ログの情報などを不揮発的に保持する。
The
USBコネクタ130は、サポート装置300とCPUユニット104とを接続するためのインターフェイスである。典型的には、サポート装置300から転送される実行可能なプログラムなどは、USBコネクタ130を介してCPUユニット104に取込まれる。
The
CPUユニット104は、通信回路として、PLCシステムバスコントローラ140、フィールドバスコントローラ150、および上位通信コントローラ160を有する。これらの通信回路は、データの送信および受信を行う。
The
PLCシステムバスコントローラ140は、PLCシステムバス108を介したデータの遣り取りを制御する。より具体的には、PLCシステムバスコントローラ140は、バッファメモリ142と、PLCシステムバス制御回路144と、DMA(Dynamic Memory Access)制御回路146とを含む。PLCシステムバスコントローラ140は、PLCシステムバスコネクタ148を介してPLCシステムバス108と接続される。
PLC
フィールドバスコントローラ150は、バッファメモリ152と、フィールドバス制御回路154と、DMA制御回路156とを含む。フィールドバスコントローラ150は、フィールドバスコネクタ158を介してフィールドバス110と接続される。上位通信コントローラ160は、バッファメモリ162と、上位通信制御回路164と、DMA制御回路166とを含む。上位通信コントローラ160は、上位通信コネクタ168を介してネットワーク112と接続される。
メモリカードインターフェイス170は、CPUユニット104に対して脱着可能なメモリカード172とプロセッサ120とを接続する。
A
次に、図4を参照して、本実施の形態に係るPLC100が提供する各種機能を実現するためのソフトウェア構成について説明する。これらのソフトウェアに含まれる命令コードは、適切なタイミングで読み出され、CPUユニット104のプロセッサ120によって実行される。
Next, with reference to FIG. 4, a software configuration for realizing various functions provided by
図4を参照して、CPUユニット104で実行されるソフトウェアとしては、OS180と、システムプログラム188と、ユーザプログラム186との3階層になっている。
Referring to FIG. 4, the software executed by
OS180は、プロセッサ120がシステムプログラム188およびユーザプログラム186を実行するための基本的な環境を提供する。システムプログラム188は、PLC100としての基本的な機能を提供するためのソフトウェア群である。具体的には、システムプログラム188は、シーケンス命令プログラム190と、DB通信プログラム192と、ファイル転送プログラム193と、入出力処理プログラム194と、Toolインターフェイス処理プログラム196と、スケジューラ198を有するマルチタスク実行プログラム199とを含む。OS180およびシステムプログラム188は、協働して実行部189を構成する。
これに対して、ユーザプログラム186は、制御対象に対する制御目的に応じて任意に作成されたプログラムである。すなわち、ユーザプログラム186は、制御システム10を用いて制御する対象のライン(プロセス)などに応じて、任意に設計される。
On the other hand, the
ユーザプログラム186は、シーケンス命令プログラム190と協働して、ユーザにおける制御目的を実現する。すなわち、ユーザプログラム186は、シーケンス命令プログラム190によって提供される命令、関数、機能モジュールなどを利用することで、プログラムされた動作を実現する。そのため、ユーザプログラム186およびシーケンス命令プログラム190により制御プログラムが構成され得る。
データ定義情報182は、ユーザプログラム186などが実行される際に、参照されるデータ(入力データ、出力データ、内部データ)をユニークな変数として扱うための定義を含む。稼働ログ184には、PLC100によって、収集されたフィールド機器95の制御(稼働)に伴ってロギングされるべき情報を示す。稼働ログ184は、通常のユーザプログラム186の実行に伴って出力される状態値または制御指令等を含むログ、DB装置400との通信に係る情報(要求や応答)のログ等を含む。なお、PLC100が収集するログは、プログラムの実行失敗やハードウェアの不具合の発生に伴って出力されるログや、ユーザプログラム186において任意に指定された位置および内容のログも含み得る。また、稼働ログ184には、稼働時のログの情報が時刻情報と関連付けて格納されるファイル形式を有する。
The
DB通信プログラム192は、ユーザプログラム186の実行に伴って、DB装置400へアクセスするために必要な処理を実現するための命令コード群を含む。DB通信プログラム192は、ユーザプログラム186において指定可能な命令に対応する実行コードを含む。
The
ファイル転送プログラム193は、例えば稼働ログ184を転送可能な形式のファイルに編集し、編集後のファイルを、ネットワーク112を介して転送するプログラムである。入出力処理プログラム194は、IOユニット106や各種のフィールド機器との間で、入力データの取得および出力データの送信を管理するためのプログラムである。Toolインターフェイス処理プログラム196は、サポート装置300との間でデータを遣り取りするためのインターフェイスを提供する。
The
スケジューラ198は、マルチタスク制御のもとで、予め定められた優先度やシステムタイマの値などに従って、制御プログラムやユーザプログラム186を実行するためのスレッドやプロシージャを生成する。
The
ユーザプログラム186は、上述したように、ユーザにおける制御目的(たとえば、対象のラインやプロセス)に応じて作成される。ユーザプログラム186は、典型的には、プロセッサ120で実行可能なオブジェクトプログラム形式になっている。ユーザプログラム186は、サポート装置300などにおいて、ラダー形式やファンクションブロック形式で記述されたソースプログラムがコンパイルされることで生成される。そして、生成されたオブジェクトプログラム形式のユーザプログラム186は、サポート装置300からCPUユニット104へ転送され、不揮発性メモリ128などに格納される。
As described above, the
<D.周期制御>
図5は、実施の形態に係るPLC100における周期制御の一例を示す模式図である。PLC100は、マルチタスク実行プログラム199を実行することにより、タスク単位でプロセッサ120などのリソースを割当てるマルチタスク実行部を構成する。マルチタスク実行部は、制御処理45を実施するための制御タスクおよび、当該制御処理45に関連する関連処理46を実施するための関連処理タスクを含む複数のタスクを実行する。関連処理46のタスクは、DB通信プログラム192に基づくタスクであるDB接続サービス47のタスクと、ファイル転送プログラム193に基づくアスクであるファイル転送サービス185とを含む。関連処理46のタスクは、更に別の種類のタスクが含まれてもよい。
<D. Periodic control>
FIG. 5 is a schematic diagram showing an example of periodic control in the
マルチタスク実行部は、スケジューラ198を利用して、予め定められた周期、例えば制御周期Tに同期して、タスクの優先度に従って、リソースを割当てるべきタスクを切替える。例えば、図5に示されるように、最も優先度の高い制御処理45のタスクは制御周期Tの第1の周期で実行されることが保証され、優先度の低い関連処理46のタスクは、例えば制御周期Tのリソース(プロセッサ120)の空き時間で実行される。限定されないが、関連処理46のタスクは、例えば制御周期Tの整数倍の周期で実行される。実施の形態では、DB接続サービス47のタスクは、例えば周期2T、すなわち2倍の制御周期T毎に実行され、ファイル転送サービス185のタスクは、例えば周期4T、すなわち4倍の制御周期T毎に実行される。このように、マルチタスク実行部によって、PLC100では、制御処理と、DB装置400との通信処理とが並行して実行される。
The multitask execution unit uses the
<E.サポート装置300の構成>
次に、本実施の形態に係るサポート装置300について説明する。図6は、本実施の形態に係るサポート装置300のハードウェア構成を示す模式図である。図7は、本実施の形態に係るサポート装置300のソフトウェア構成を示す模式図である。
<E. Configuration of
Next,
図6を参照して、サポート装置300は、OSを含む各種プログラムを実行するCPU302と、BIOSや各種データを格納するROM(Read Only Memory)304と、CPU302でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリのRAM309と、CPU302で実行されるプログラムなどを不揮発的に格納するHDD308とを含む。より具体的には、HDD308には、サポート装置300が提供する機能を実現するためのサポートプログラム335を含む各種プログラムとデータが格納されている。
Referring to FIG. 6, the
サポート装置300は、さらに、ユーザからサポート装置300に対する操作を受け付けるキーボード310およびマウス312と、情報をユーザに提示するためのモニタ314とを含む。さらに、サポート装置300は、DB装置400,データサーバ500およびWebサーバ600などのネットワーク112に属する情報処理装置と通信するための通信IF(インターフェイスの略)318、およびPLC100と通信するためのUSBコネクタ319を含む。
The
サポート装置300で実行されるサポートプログラム335などは、光学ディスク332またはメモリカード333に格納されて流通する。光学ディスク332に格納されたプログラムは、光学ディスク読取装置316によって読み取られ、また、メモリカード333に格納されたプログラムはメモリカードI/F334によって読み取られ、HDD308などへ格納される。あるいは、プログラムは、上位のホストコンピュータなどからネットワーク112を通じて、サポート装置300にダウンロードされるように構成されてもよい。サポート装置300では、これら構成要素は内部バス320を介して相互に通信する。
The
図7を参照して、サポート装置300は、HDD308において、OS330、サポートプログラム335、開発対象のユーザプログラム186、設定ツール339の設定を格納する設定ファイル345、シミュレーションによる取得される稼働ログが格納されるログファイル346、DB接続システム351に対応の実行可能な形式のDB接続システムモジュール350、およびファイル転送モジュール360を含む。DB接続システムモジュール350は、DB通信プログラム192の少なくとも1つの命令コードを含む、実行可能な形式のモジュールである。または、ファイル転送モジュール360は、ログファイル346の収集データを例えばCSV(Comma Separated Value)ファイルに編集し、ネットワーク112に介してデータサーバ500に転送する、実行可能な形式のモジュールである。
Referring to FIG. 7, the
サポートプログラム335は、開発プログラム336およびPLCインターフェイスプログラム340を含む。開発プログラム336は、開発対象のユーザプログラム186を含む各種のプログラムを設計するためのプログラミングツール(エディット、コンパイル、実行可能形式への変換(ビルド)など)、設計されたプログラムをテストするシミュレータ338、設定ツール339、設計されたプログラムをデバッグするツールなどを構成する各種プログラムを含む。PLCインターフェイスプログラム340は、サポート装置300とPLC100との間にデータの遣り取りを司る。
サポートプログラム335は、プログラム開発におけるユーザ操作をサポートするツール、およびPLC100との通信に係るユーザ操作をサポートするツールなどを提供する。このようなサポートツールはGUI(Graphical User Interface)またはUI(User Interface)を含む。本実施の形態では、OS330の元で開発プログラム336が実行されることにより、シミュレータ338が提供され、DB接続システムモジュール350が実行されることで、DB接続システム351が提供される。
The
<F.プログラム開発環境のモジュール構成>
図8は、本実施の形態に係るプログラム開発環境の構成を模式的に示す図である。図8に示されるように、サポート装置300におけるシミュレーションシステム1は、プログラミングツール337、シミュレータ338、設定ツール339、およびDB接続システム351を含む。
<F. Module configuration of program development environment>
FIG. 8 is a diagram schematically showing the configuration of a program development environment according to this embodiment. As shown in FIG. 8, the
(f1.プログラミングツール337の構成)
プログラミングツール337は、ユーザプログラム186の開発と、ユーザの操作を受け付けてシミュレータ338の実行を制御する。プログラミングツール337は、GUI部41と、プログラム管理部43と、シミュレータ338とデータを遣り取りする通信部44と、シミュレーションIF(インターフェイスの略)部42とを含む。
(f1. Configuration of programming tool 337)
The programming tool 337 controls the development of the
GUI部41は、サポート装置300に対するユーザ操作を受付け、受付けたユーザ操作に基づき、シミュレーションやデバック等に関する種々の情報(例えば、シミュレーションの開始、停止等)をユーザとやり取りする機能を有する。
The GUI unit 41 has a function of accepting user operations on the
プログラム管理部43は、プログラムの作成や編集をする機能を有する。プログラム管理部43は、GUI部41を介してユーザから与えられる指示に従った処理を行う。具体的には、プログラム管理部43は、通信部44を介してのHDD308からのプログラムの読み込み又はプログラムの書き込み等の機能を有する。通信部44は、シミュレータ338の通信部54との通信インターフェイスを有する。
The program management section 43 has a function of creating and editing programs. The program management section 43 performs processing according to instructions given by the user via the GUI section 41. Specifically, the program management unit 43 has functions such as reading a program from the
シミュレーションI/F部42は、シミュレータ338との間で、シミュレーションやデバック等に関する種々の情報(例えば、シミュレータ338の起動、停止)をやり取りする機能を有する。 The simulation I/F unit 42 has a function of exchanging various information regarding simulation, debugging, etc. (for example, starting and stopping the simulator 338) with the simulator 338.
(f2.シミュレータ338の構成)
シミュレータ338は、ユーザの操作に基づいて動作し、DB接続システム351と協働してシミュレーションを実施する。この協働のために、シミュレータ338は、DB接続システム351とデータを遣り取りする。この詳細は、後述する。
(f2. Configuration of simulator 338)
The simulator 338 operates based on user operations and performs simulations in cooperation with the
シミュレータ338は、プログラミングツール337からのシミュレータ起動または停止の指令を受けて、起動または停止する。シミュレータ338は、プログラム制御部51と、停止条件保持部52と、プログラム実行部53と、通信部54と、プログラム実行部53によるプログラム実行のための情報を格納する記憶部301を含む。
The simulator 338 starts or stops in response to a command to start or stop the simulator from the programming tool 337. The simulator 338 includes a program control section 51, a stop condition holding section 52, a program execution section 53, a communication section 54, and a
記憶部301は、プログラミングツール337によって作成されたユーザプログラム186と、シミュレーションのためのデータ306を格納する。データ306は、シミュレーションのための目標値、変数テーブル307およびログファイル346などを含む。記憶部301はHDD308およびRAM309の記憶領域を含んで構成され得る。変数テーブル307は、PLC100のデータ定義情報182により定義される各変数について、その識別子、例えば変数名と、当該変数に設定される値の組を含む。シミュレータ338によってユーザプログラム186が実行されると、当該実行によって取得された各変数の値(入力データの状態値、出力データの制御指令、中間値などの内部データ、およびDBアクセス処理の応答)が設定される。
The
プログラム実行部53は、所定の起動停止指令が与えられるのに応答して、記憶部301よりユーザプログラム186を読み出して実行するとともに、実行に伴いデータ306を読み書きする。記憶部301に保持されるユーザプログラム186とデータ306は、通信部54を介して、プログラミングツール337からモニタ可能とされている。さらに、データ306は、通信部54を介して、DB接続システム351からも読み込み又は書き込み可能とされている。
In response to being given a predetermined activation/stop command, the program execution unit 53 reads out and executes the
通信部54は、データの読み込みや書き込みをする機能を有する。また、通信部54は、DB接続システム351に対してデータを遣り取りするインターフェイスも提供している。通信部54を用いることにより、DB接続システム351は、シミュレータ338が実行中に読み書きするデータ306の変数の値を、読み書きすることができる。
The communication unit 54 has a function of reading and writing data. The communication unit 54 also provides an interface for exchanging data with the
プログラム制御部51は、プログラミングツール337から与えられる起動停止指令に応答して、プログラム実行部53によるユーザプログラム186の実行の起動、停止を制御する機能を有する。また、プログラム制御部51は、プログラミングツール337から与えられる停止条件設定に応答して、その停止条件設定に含まれる「停止条件」を停止条件保持部52に設定保持させる機能を有する。
The program control unit 51 has a function of controlling the start and stop of execution of the
プログラム制御部51は、停止条件保持部52に設定保持される「停止条件」が満たされるかを常時監視し、「停止条件」が満たされたことが判定されたならば、プログラム実行部53におけるユーザプログラム186の実行を直ちに停止させる機能を有する。したがって、停止条件保持部52に所望の「停止条件」を設定保持させることで、シミュレーションを任意のタイミングで停止させる。これによりシミュレーションしながら、ユーザプログラム186のデバッグが可能とされている。
The program control unit 51 constantly monitors whether the “stop condition” set and held in the stop condition holding unit 52 is satisfied, and if it is determined that the “stop condition” is satisfied, the program execution unit 53 It has a function to immediately stop the execution of the
(f3.設定ツール339の構成>
設定ツール339は、シミュレーションされる制御処理に関連する情報について、DB装置400と通信する処理(すなわち、PLC100がDB通信プログラム192を実行して実施する通信処理)を実施可能にするための設定をサポートする。設定ツール339は、このようなサポートのためにUIツール341を提供する。UIツール341を介して受付けたユーザ操作に基づく項目が設定ファイル345に設定されることにより設定ファイル345において設定が管理される。設定ファイル345には、シミュレータ338によってシミュレーションされる制御処理に関連する情報を、DB接続システム351に、DB装置400と通信させるための項目が設定される。設定ファイル345には、例えば、制御処理に関連する情報である変数テーブル307の値の変数名(例えば記憶部301のアドレス)、通信処理に関する時間のパラメータなどを含むが、設定項目は、これらに限定されない。
(f3. Configuration of setting tool 339>
The setting tool 339 configures settings to enable communication processing with the DB device 400 (that is, communication processing performed by the
(f4.DB接続システム351の構成>
DB接続システム351は、通信部352と、実行部353とを含んでいる。通信部352は、DB接続システム351がシミュレータ338と制御に関連する情報を遣り取りする機能と、DB接続システム351がDB装置400とネットワーク112を介して通信する機能とを担う。
(f4. Configuration of
The
実行部353は、DB接続システムモジュール350に対応する所定のプログラム354に従って動作する。プログラム354は、DB通信プログラム192の少なくとも1つの命令コードを含んで構成されて、実行されると、シミュレーションされる制御処理に関連する情報をDB装置400との間で通信する処理を実施可能なように構成される。プログラム354は、設定ファイル345の設定に従って、シミュレータ338の記憶部301の変数テーブル307の該当する変数への値の書き込み、または読み出しを行うコードと、読み出された値についてDBアクセス処理を実施するためのDB操作命令(SQL文)を生成するコードと、DB操作命令をDB装置400に発行(送信)するためのコードと、DB装置400から受信するDB操作命令の実行結果の応答を変数テーブル307に書き込むコード等の複数の命令コードを含む。DB操作命令は、DBの接続要求や変数テーブルから読出された値等をDBに書き込むアクセス要求の命令を含む。DB装置400は、このようなDB操作命令に従ってDBを処理(操作)し、処理結果の応答を要求元のサポート装置300に送信する。
The
DB接続システム351は、設定ファイル345から、DBアクセス処理の対象となる変数名を検索し、検索された変数名に基づき変数テーブル307からデータ(値)を検索する。検索されたデータは、DB操作命令とともにDB装置400に送信され、DB装置400は、DB操作命令に従って、データを処理し、処理結果を応答する。このように、DB接続システム351は設定ファイル345に従って動作することにより、シミュレーションされる制御処理において取得される制御処理に関連する情報について、DBアクセス処理およびDB装置400との通信処理を実施することができる。
The
<G.ユーザプログラム186の例>
上記のDBアクセス処理は、プログラミングツール337によって、ユーザプログラム186中にコードとして記述される。図9は、本実施の形態に係るDBアクセス処理に関するユーザプログラム186のコード例を簡略的に示す図である。
<G. Example of
The above DB access processing is written as code in the
図9では、ユーザプログラム186のセクション90~93には、制御処理に関連する情報をDBに書込む命令(INSERT、インサート)と、その周辺のDB操作命令が示される。これら命令は、セクション90,91,92,93の順に実行される。
In FIG. 9,
より具体的には、実行開始条件として、実行開始フラグ“DBconnectionTrigger”が定義されており、このフラグがオンになると、DB接続処理が実行される。このDB接続処理として、DB接続命令ブロック910と、DB接続用マップ選択ブロック911と、INSERT用/SELECT用DBマップ生成ブロック914とが記述されている。DB接続用マップ選択ブロック911は、DBに書き込むべき値(変数名“lightVar”)9Aが入力として設定されている。ブロック912は、値をDBに書き込み可能なデータ型に変換する命令を示す。ブロック912によって、値9Aの“lightVar”は、変換後のデータ型を有した値9Bの“lightVar.LightValue”に変換される。
More specifically, an execution start flag "DBconnectionTrigger" is defined as an execution start condition, and when this flag is turned on, the DB connection process is executed. As this DB connection processing, a DB
セクション93では、変換後の値をDBに書込み開始するフラグ9Cがオンになると、ブロック913が実行される。ブロック913は、通信処理の処理時間を変数9Fに出力(設定)する。より具体的には、フラグ9Cがオンになると、ブロック913は、入力9Dが示す現在時間、すなわち通信処理の開始時間から、書き込み命令を実行したDB装置400からの応答を受信するまでの時間、すなわちブロック914のフラグ9Eがオンに変化した時間までを計測し、計測時間を変数9Fに設定する。また、ブロック914は、入力変数“TimeOut”に基づき、処理時間のタイムアウトを検出するように構成されている。また、ブロック914は、DB装置400からの応答を変数“SendStatus”で取得する。
In
シミュレータ338のシミュレーションによって、変数“lightVar”の値が変数テーブル307に格納されて、ユーザプログラム186中の図9に示されたコードを実行する。このときと、シミュレータ338と並行して起動している、DB接続システム351は、設定ファイル345に設定された変数“lightVar”に基づき、変数テーブル307から変数“lightVar”の値を検索し、検索された値を、DB操作命令とともにDB装置400に送信する。このような、DB操作命令は、DB接続、マップ選択、変数“lightVar”の値をDBにインサート(書込)するなどの命令を含む。DB装置400は、当該DB操作命令に基づく処理を実施する。DB接続システム351は、DB装置400から受信する処理結果の応答を、変数テーブル307の対応する変数に設定する。シミュレータ338では、変数テーブル307の設定された応答に基づき、制御処理が継続して実施される。
Through the simulation of the simulator 338, the value of the variable "lightVar" is stored in the variable table 307, and the code shown in FIG. 9 in the
シミュレータ338では、タイマを利用することで、上記に述べた制御処理と通信処理を、PLC100のマルチタスクを模擬するように周期的に実施される。
The simulator 338 uses a timer to periodically perform the control processing and communication processing described above so as to simulate the multitasking of the
図9では、DB操作命令は、ライブラリにおいて部品化されたファンクションブロックを用いて、すなわちファンクションブロック内で定義された命令で記述されているが、記述はファンクションブロックを用いた方法に限定されず、ラダーロジックまたはラダー言語を用いた方法であってもよい。 In FIG. 9, the DB operation instructions are described using function blocks made into components in the library, that is, instructions defined within the function blocks, but the description is not limited to the method using function blocks. A method using ladder logic or a ladder language may also be used.
<H.設定ファイル345>
DB接続システム351は、シミュレータ338およびDB装置400との制御処理に関連する情報についてデータの遣り取りを実施する場合、設定ファイル345を参照する。図10は、本実施の形態に係る設定ファイル345の一例を示す図である。図11は、本実施の形態に係る設定ツール339を説明する図である。
<H. Settings file 345>
The
図10を参照して設定ファイル345は、DB操作命令に従って、DB装置400によって操作される対象を含む。例えば、操作される対象として、ユーザプログラム186で処理(読み出し、または、書き込み)されるデータの識別子71を含む。このようなDB操作の対象には、アクセスの対象となるDBのマップの指定が含まれてもよい。
Referring to FIG. 10,
また、設定ファイル345は、DB装置400との通信処理に関するパラメータを含む。例えば、通信処理に関するパラメータは、DB接続システム351がDB装置400と、通信セッションまたは通信コネクションなどの通信を確立するためのパラメータを含む。より具体的には、シミュレータ338が起動しているホスト(DB操作命令の送信元のサポート装置300)を指定するパラメータ70と送信先のDB装置400を指定するパラメータ73とを含む。
Further, the
また、通信処理に関するパラメータは処理時間(“Interval_ms:10”)を含む。設定ファイル345は、DB装置400からの応答が設定される変数名の指定74と、処理時間の設定される変数72を含む。また、設定ファイル345には、DB装置400に対して発行されるDB操作命令の種類が含まれてもよい。DB接続システム351は、設定ファイル345に設定されたDB操作命令の種類に対応のコードを生成し、DB装置400に発行する。
Further, the parameters related to communication processing include processing time (“Interval_ms: 10”). The
(h1.設定ツール339)
図10の設定ファイル345は、設定ツール339が提供するUIツール341を操作することによって、ユーザが項目を設定できる。図11を参照して、UIツール341は、モニタ314にユーザ操作を受け付ける画面を表示する。図11の画面は、例えば通信処理の処理時間を設定するユーザ操作を受け付ける、ユーザがスライド操作可能なスライダー741と、スライダー741の操作量に応じた時間を示すデータ75を含む。データ75は、例えば10秒を示す。データ75の値は、設定ファイル345の処理時間に設定される。
(h1. Setting tool 339)
The settings file 345 in FIG. 10 allows the user to set items by operating the UI tool 341 provided by the settings tool 339. Referring to FIG. 11, UI tool 341 displays a screen on
DB接続システム351は、DB装置400から応答を受信した場合に、応答を内部バッファに保持し、応答受信の時刻から設定ファイル345の処理時間(10秒)が経過したとき、保持していた応答を、シミュレータ338の変数テーブル307に設定する。このように、処理時間を設定可能であるから、実機の環境において要求される処理時間に変更することも可能となり、LC100が接続されるネットワーク112の性能(通信速度)を模擬することができる。また、ユーザ操作によらず、処理時間が設定されてもよい。より具体的には、設定ツール339は、実機のPLC100が接続するネットワーク112の通信速度を検出し、検出した通信速度に基づき、処理時間を設定してもよい。
When the
また、処理時間は、PLC100において実施される周期制御の時間に基づいて設定されてもよい。より具体的には、通信処理を含むDB接続サービス47は、図5に示されたように、関連処理46として、制御周期Tのプロセッサ120の空き時間で実行される。すなわち、制御処理45の処理負荷が高く制御周期Tにおいてプロセッサ120の空き時間が十分でない場合、関連処理46のタスクは、次の実行周期まで実行されない。この場合、図5に示すように、通信処理を含むDB接続サービス47の実施間隔は周期4Tとなる。このようなケースについてシミュレーションできるように、設定ツール339によって、処理時間を関連処理46のタスクの実行周期に基づき設定されるようにしてもよい。なお、処理時間は、通信速度と実行周期との組み合わせに基づき設定されてもよい。
Further, the processing time may be set based on the periodic control time performed in the
<I.クラウド環境>
シミュレーションシステム1はサポート装置300に限定されず、クラウドベースの環境に実装されてもよい。図12は、本実施の形態に係るシミュレーションシステム1がクラウド環境に実装される構成を示す図である。図12では、シミュレーションシステム1がWebサーバ600に実装される。ユーザは、サポート装置300が有するWebブラウザを利用して、Webサーバ600のシミュレーションシステム1と、プログラミングツール337、シミュレータ338および設定ツール339を操作するためのデータを遣り取りすることができる。なお、プログラミングツール337は、サポート装置300に実装されて、シミュレータ338、DB接続システム351および設定ツール339はWebサーバ600に実装される構成であってもよい。
<I. Cloud environment>
The
<J.フローチャート>
次に、シミュレータ338とDB接続システム351の処理手順について説明する。図13は、本実施の形態に係るシミュレーションのフローチャートである。図13に示す各ステップは、CPU302がシミュレータ338によってユーザプログラム186を実行し、また、CPU302がDB接続システム351を実現する接続システムモジュール350を実行することで実現される。
<J. Flowchart>
Next, the processing procedure of the simulator 338 and the
図13を参照して、CPU302は、シミュレータ338とDB接続システム351を起動する(ステップS10)。これにより、CPU302は、シミュレータ338として、ユーザプログラム186に含まれる命令を実行し、命令に従う処理(制御処理など)をシミュレーションする。シミュレーションされる制御処理において導出される制御処理に関連する情報(制御指令、状態値など)は、変数テーブル307に設定される。
Referring to FIG. 13,
ユーザプログラム186の実行におけるDBアクセス処理の命令(図9のファンクションブロック命令)が実行されるタイミングであることが検出される(ステップS12)。より具体的には、CPU302は、DB接続システム351として、設定ファイル345から処理の対象となる変数名(アドレス)を取得し、取得された変数名に基づき変数テーブル307を検索し、検索結果に基づき、当該変数名に値が設定されたことを検出する。このような変数テーブル307の検索によって、DBアクセス処理が実行されるタイミングであることが検出される(ステップS12)。
It is detected that the timing for executing the DB access processing command (function block command in FIG. 9) in the execution of the
CPU302は、実機のPLC100が行う通信処理に相当の処理を実施する。具体的には、CPU302は、DB接続システム351として、設定ファイル345の設定に従って、変数テーブル307から値(すなわち、制御処理に関連する情報)を検索(取得)し、取得された値についてDB装置400と通信処理を実施する、すなわちDBアクセス処理を実施するためにDB操作命令を生成しDB装置400に発行し、DB装置400からの応答をシミュレータ338に出力する、すなわち変数テーブル307に書き込む処理を実施する(ステップS14)。DB装置400から受信された応答は、設定ファイル345において設定された処理時間のパラメータに従った時間の経過後に、変数テーブル307の対応の変数に設定(書き込み)される。
The
<K.変形例>
本実施の形態では、PLC100が制御処理の関連処理のうち、ネットワーク112を介して通信処理を実施する情報処理装置はDB装置400であったが、このような情報処理装置はDB装置400に限定されない。例えば、PLC100が、ファイル転送プログラム193を実行することにより、ファイル転送サービス185において、データサーバ500の一例であるFTP(File Transfer Protocol)サーバと稼働ログ184をCSVファイル形式で通信する場合がある。このような場合、サポート装置300は、ファイル転送モジュール360を起動することにより、FTPサーバを接続して、ログファイル346を、FTPサーバと通信するシステムを利用できる。このようなFTP接続システムは、FTPサーバ内のファイルのリストを取得(FTPGetFileList)、ファイルのアップロード(FTPPutFile)、ファイルの削除(FTPRemoveFile)などの操作命令をFTPサーバに発行し、その応答を受信するように構成される。
<K. Modified example>
In this embodiment, the information processing device for which the
また、例えば、PLC100が、制御処理において、制御周期に関する時刻情報を取得するために、ネットワーク112上のNTP(Network Time Protocol)サーバと情報を通信する場合がある。このような場合、サポート装置300は、NTPサーバを接続するシステムを利用する。このような接続システムは、NTPサーバにステータスを取得(GetNTPStatus)するための操作命令を発行し、その応答を受信するように構成される。
Further, for example, in the control process, the
図13では、プロセッサ120がプログラムを実行することで、開発環境が実現される例を示したが、開発環境を実現するために必要な処理および機能の一部を、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)などの回路を用いて実装するようにしてもよい。 Although FIG. 13 shows an example in which a development environment is realized by the processor 120 executing a program, some of the processing and functions necessary to realize the development environment are implemented using an ASIC (Application Specific Integrated Circuit). Alternatively, it may be implemented using a circuit such as an FPGA (Field-Programmable Gate Array).
また、本実施の形態では、サポート装置300のシミュレーション環境は、シミュレータ338と設定ツール339とDB接続システム351とから構成されてもよく、その場合、プログラミングツール337は必須の構成とはならない。
Further, in this embodiment, the simulation environment of the
<L.プログラム>
本実施の形態において提供されるシミュレータ338、設定ツール339およびDB接続システム351などの開発環境を実現するためのプログラム・モジュールおよびデータは、通信IF318およびネットワーク112を介してHDD308にダウンロードされてもよい。または、記録媒体(例えば、メモリカード333または光学ディスク332)を介してHDD308にダウンロードされるとしてもよい。このような記録媒体は、コンピュータその他装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム・データ等の情報を、電気的、磁気的、光学的、機械的または化学的作用によって蓄積する媒体である。開発環境を実現するためのプログラムはプロセッサにより、またはプロセッサとASIC(Application Specific Integrated Circuit),FPGA(Field-Programmable Gate Array)などの回路との組合せにより実行され得る。
<L. Program>
Program modules and data for realizing a development environment such as the simulator 338, setting tool 339, and
(利点)
本実施の形態では、シミュレータ338に、シミュレーションされる制御処理に関連する情報をDB装置400と通信する処理を含むDBアクセス処理を実施可能な環境を提供できる。すなわち、ユーザプログラム186にDBアクセス処理の命令が含まれるとしても、シミュレーションシステム1にDB接続システム351を備えるように構成し、DB接続システム351を設定ファイル345の設定に従って動作させることで、当該環境を提供できる。また、ユーザプログラム186に特別コードを挿入することなく(プログラムを改造することなく)、このような環境を提供できるので、ユーザプログラム186の開発に係るコスト(時間、費用)を節約できる。
(advantage)
In this embodiment, it is possible to provide the simulator 338 with an environment in which DB access processing, including processing for communicating information related to the control processing to be simulated, with the
また、通信処理を含むDBアクセス処理の条件が変更された場合でも、例えばユーザプログラム186が変更された場合でも、設定ファイル345の設定を、変更後の条件に整合するように設定しなおすことで、同様のシミュレーション環境を利用(または再利用)できる。
Furthermore, even if the conditions for DB access processing including communication processing are changed, for example, even if the
<M.付記>
上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
コントローラ(100)の処理をシミュレーションするシミュレーションシステム(1)であって、
前記コントローラは、
制御対象(90)が属する第1ネットワーク(110)を接続する第1コネクタ(158)と、
情報処理装置(400、500、600)が属する第2ネットワーク(112)を接続する第2コネクタ(168)と、
制御処理を実施するためのユーザプログラム(186)と、前記制御処理に関連する情報を前記情報処理装置と通信する通信処理を実施するための通信プログラム(192)を実行する実行部と、を有し、
前記シミュレーションシステムは、
前記制御処理をシミュレーションするシミュレータ(338)と、
シミュレーションされる制御処理に関連する情報を、予め定められた設定(345)に従って、情報処理装置と通信する通信処理を実施する通信部(351)と、を備える、シミュレーションシステム。
[構成2]
前記情報処理装置は、DB(データベース)を管理するDB装置(400)を含む、構成1に記載のシミュレーションシステム。
[構成3]
前記通信処理は、前記DBを操作するためのDB操作命令を、前記DB装置に発行する処理を含む、構成2に記載のシミュレーションシステム。
[構成4]
前記予め定められた設定の項目は、
前記DB操作命令に従って、前記DB装置が操作する対象の指定を含む、構成3に記載のシミュレーションシステム。
[構成5]
前記DB装置が操作する対象の指定は、前記DBにおいてアクセス処理されるデータの識別子を含み、
前記制御処理に関連する情報は、前記アクセス処理されるデータを含む、構成4に記載のシミュレーションシステム。
[構成6]
前記予め定められた設定の項目は、
前記通信処理に関するパラメータを含む、構成1~5のいずれか1に記載のシミュレーションシステム。
[構成7]
前記通信処理に関するパラメータは、前記情報処理装置との通信を確立するためのパラメータを含む、構成6に記載のシミュレーションシステム。
[構成8]
前記通信処理に関するパラメータは、通信処理時間のパラメータを含む、構成6または7に記載のシミュレーションシステム。
[構成9]
前記通信処理時間は、前記第2ネットワークの通信速度に基づいている、構成8に記載のシミュレーションシステム。
[構成10]
前記コントローラは、前記制御処理を実施するための制御タスク(45)および、当該制御処理に関連する処理を実施するための関連処理タスク(47)を含む複数のタスクを実行するマルチタスク実行部(199)を備え、前記情報処理装置との通信は前記関連処理タスクにおいて実行され、
前記マルチタスク実行部は、前記制御タスクを第1の周期(T)で実行し、
前記マルチタスク実行部は、前記関連処理タスクを第2の周期(2T、4T)で実行し、
前記通信処理時間は、前記第2の周期に基づいている、構成8または9に記載のシミュレーションシステム。
[構成11]
コントローラ(100)の処理をシミュレーションする方法であって、
前記コントローラは、
制御対象(95)が属する第1ネットワーク(110)を接続する第1コネクタ(158)と、
情報処理装置(400、500、600)が属する第2ネットワーク(112)を接続する第2コネクタ(168)と、
制御処理を実施するためのユーザプログラム(186)と、前記制御処理に関連する情報を前記情報処理装置と通信する通信処理を実施するための通信プログラム(192)を実行する実行部と、を有し、
前記方法は、
前記制御処理をシミュレーションするステップと、
シミュレーションされる制御処理に関連する情報を、予め定められた設定(345)に従って、前記情報処理装置と通信する通信処理を実施するステップと、を備える、方法。
[構成12]
コントローラ(100)の処理をシミュレーションする方法をコンピュータ(302)に実行させるためのシミュレーションプログラムであって、
前記コントローラは、
制御対象(95)が属する第1ネットワーク(110)を接続する第1コネクタ(158)と、
情報処理装置(400、500、600)が属する第2ネットワーク(112)を接続する第2コネクタ(168)と、
制御処理を実施するためのユーザプログラム(186)と、前記制御処理に関連する情報を前記情報処理装置と通信する通信処理を実施するための通信プログラム(192)を実行する実行部と、を有し、
前記方法は、
前記制御処理をシミュレーションするステップと、
シミュレーションされる前記制御処理に関連する情報を、予め定められた設定(345)に従って、前記情報処理装置と通信する通信処理を実施するステップと、を備える、シミュレーションプログラム。
<M. Additional notes>
This embodiment as described above includes the following technical idea.
[Configuration 1]
A simulation system (1) that simulates processing of a controller (100),
The controller includes:
a first connector (158) connecting a first network (110) to which the controlled object (90) belongs;
a second connector (168) that connects a second network (112) to which the information processing device (400, 500, 600) belongs;
It has an execution unit that executes a user program (186) for implementing control processing and a communication program (192) for implementing communication processing for communicating information related to the control processing with the information processing device. death,
The simulation system includes:
a simulator (338) that simulates the control process;
A simulation system comprising: a communication unit (351) that performs communication processing to communicate information related to a control process to be simulated with an information processing device according to predetermined settings (345).
[Configuration 2]
The simulation system according to
[Configuration 3]
The simulation system according to
[Configuration 4]
The predetermined setting items are:
The simulation system according to
[Configuration 5]
The designation of the target to be operated by the DB device includes an identifier of data to be accessed in the DB,
The simulation system according to configuration 4, wherein the information related to the control processing includes the data to be accessed.
[Configuration 6]
The predetermined setting items are:
The simulation system according to any one of
[Configuration 7]
The simulation system according to configuration 6, wherein the parameters related to the communication processing include parameters for establishing communication with the information processing device.
[Configuration 8]
8. The simulation system according to configuration 6 or 7, wherein the communication processing-related parameters include a communication processing time parameter.
[Configuration 9]
9. The simulation system according to configuration 8, wherein the communication processing time is based on a communication speed of the second network.
[Configuration 10]
The controller includes a multi-task execution unit (45) that executes a plurality of tasks including a control task (45) for carrying out the control process and a related processing task (47) for carrying out processes related to the control process. 199), wherein communication with the information processing device is executed in the related processing task,
The multitask execution unit executes the control task in a first cycle (T),
The multitask execution unit executes the related processing task in a second cycle (2T, 4T),
The simulation system according to configuration 8 or 9, wherein the communication processing time is based on the second cycle.
[Configuration 11]
A method of simulating processing of a controller (100), the method comprising:
The controller includes:
a first connector (158) connecting a first network (110) to which the controlled object (95) belongs;
a second connector (168) that connects a second network (112) to which the information processing device (400, 500, 600) belongs;
It has an execution unit that executes a user program (186) for implementing control processing and a communication program (192) for implementing communication processing for communicating information related to the control processing with the information processing device. death,
The method includes:
simulating the control process;
A method comprising: implementing a communication process for communicating information related to a control process to be simulated with the information processing device according to predetermined settings (345).
[Configuration 12]
A simulation program for causing a computer (302) to execute a method of simulating processing of a controller (100),
The controller includes:
a first connector (158) connecting a first network (110) to which the controlled object (95) belongs;
a second connector (168) that connects a second network (112) to which the information processing device (400, 500, 600) belongs;
It has an execution unit that executes a user program (186) for implementing control processing and a communication program (192) for implementing communication processing for communicating information related to the control processing with the information processing device. death,
The method includes:
simulating the control process;
A simulation program comprising: implementing a communication process for communicating information related to the control process to be simulated with the information processing apparatus according to predetermined settings (345).
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。 The embodiments disclosed this time should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is indicated by the claims rather than the above description, and it is intended that all changes within the scope and meanings equivalent to the claims are included.
1 シミュレーションシステム、10 制御システム、11 検出スイッチ、20 リレー、30 サーボモータドライバ、32 モータ、43 プログラム管理部
44,54,352 通信部、45 制御処理、46 関連処理、47 DB接続サービス、51 プログラム制御部、52 停止条件保持部、53 プログラム実行部、90,91,92,93 セクション、95 フィールド機器、110 フィールドバス、112 ネットワーク、114 接続ケーブル、120 プロセッサ、122 チップセット、124 システムクロック、126 主メモリ、128 不揮発性メモリ、148 システムバスコネクタ、158 フィールドバスコネクタ、168 上位通信コネクタ、170 メモリカードインターフェイス、184 稼働ログ、185 ファイル転送サービス、186 ユーザプログラム、188 システムプログラム、192 通信プログラム、193 ファイル転送プログラム、198 スケジューラ、199 マルチタスク実行プログラム、300 サポート装置、307 変数テーブル、400 DB装置、335 サポートプログラム、336 開発プログラム、337 プログラミングツール、338 シミュレータ、339 設定ツール、345 設定ファイル、350 DB接続システムモジュール、351 DB接続システム、354 プログラム、360 ファイル転送モジュール、500 データサーバ、600 Webサーバ、741 スライダー、S10,S12,S14 ステップ、T 制御周期。
1 simulation system, 10 control system, 11 detection switch, 20 relay, 30 servo motor driver, 32 motor, 43
Claims (12)
前記コントローラは、
制御対象が属する第1ネットワークを接続する第1コネクタと、
情報処理装置が属する第2ネットワークを接続する第2コネクタと、
制御処理を実施するためのユーザプログラムと、前記制御処理に関連する情報を前記情報処理装置と通信する通信処理を実施するための通信プログラムを実行する実行部と、を有し、
前記シミュレーションシステムは、
前記制御処理をシミュレーションするシミュレータと、
シミュレーションされる前記制御処理に関連する情報を、予め定められた設定に従って、前記情報処理装置と通信する通信処理を実施する通信部と、を備える、シミュレーションシステム。 A simulation system that simulates processing of a controller,
The controller includes:
a first connector connecting a first network to which the controlled object belongs;
a second connector connecting a second network to which the information processing device belongs;
an execution unit that executes a user program for implementing control processing; and a communication program for implementing communication processing for communicating information related to the control processing with the information processing device;
The simulation system includes:
a simulator that simulates the control processing;
A simulation system comprising: a communication unit that performs communication processing to communicate information related to the control processing to be simulated with the information processing device according to predetermined settings.
前記DB操作命令に従って、前記DB装置が操作する対象の指定を含む、請求項3に記載のシミュレーションシステム。 The predetermined setting items are:
The simulation system according to claim 3, further comprising designating a target to be operated by the DB device according to the DB operation instruction.
前記制御処理に関連する情報は、前記アクセス処理されるデータを含む、請求項4に記載のシミュレーションシステム。 The designation of the target to be operated by the DB device includes an identifier of data to be accessed in the DB,
The simulation system according to claim 4, wherein the information related to the control processing includes the data to be accessed.
前記通信処理に関するパラメータを含む、請求項1~5のいずれか1項に記載のシミュレーションシステム。 The predetermined setting items are:
The simulation system according to any one of claims 1 to 5, comprising parameters related to the communication processing.
前記マルチタスク実行部は、前記制御タスクを第1の周期で実行し、
前記マルチタスク実行部は、前記関連処理タスクを第2の周期で実行し、
前記通信処理時間は、前記第2の周期に基づいている、請求項8または9に記載のシミュレーションシステム。 The controller includes a multitask execution unit that executes a plurality of tasks including a control task for implementing the control processing and a related processing task for implementing processing related to the control processing, communication with is performed in the related processing task,
The multitask execution unit executes the control task in a first cycle,
The multitask execution unit executes the related processing task in a second cycle,
The simulation system according to claim 8 or 9, wherein the communication processing time is based on the second period.
前記コントローラは、
制御対象が属する第1ネットワークを接続する第1コネクタと、
情報処理装置が属する第2ネットワークを接続する第2コネクタと、
制御処理を実施するためのユーザプログラムと、前記制御処理に関連する情報を前記情報処理装置と通信する通信処理を実施するための通信プログラムを実行する実行部と、を有し、
前記方法は、
前記制御処理をシミュレーションするステップと、
シミュレーションされる前記制御処理に関連する情報を、予め定められた設定に従って、前記情報処理装置と通信する通信処理を実施するステップと、を備える、方法。 A method for simulating processing of a controller, the method comprising:
The controller includes:
a first connector connecting a first network to which the controlled object belongs;
a second connector connecting a second network to which the information processing device belongs;
an execution unit that executes a user program for implementing control processing; and a communication program for implementing communication processing for communicating information related to the control processing with the information processing device;
The method includes:
simulating the control process;
A method comprising: implementing a communication process to communicate information related to the control process to be simulated with the information processing apparatus according to predetermined settings.
前記コントローラは、
制御対象が属する第1ネットワークを接続する第1コネクタと、
情報処理装置が属する第2ネットワークを接続する第2コネクタと、
制御処理を実施するためのユーザプログラムと、前記制御処理に関連する情報を前記情報処理装置と通信する通信処理を実施するための通信プログラムを実行する実行部と、を有し、
前記方法は、
前記制御処理をシミュレーションするステップと、
シミュレーションされる前記制御処理に関連する情報を、予め定められた設定に従って、前記情報処理装置と通信する通信処理を実施するステップと、を備える、シミュレーションプログラム。
A simulation program for causing a computer to execute a method of simulating processing of a controller,
The controller includes:
a first connector connecting a first network to which the controlled object belongs;
a second connector connecting a second network to which the information processing device belongs;
an execution unit that executes a user program for implementing control processing; and a communication program for implementing communication processing for communicating information related to the control processing with the information processing device;
The method includes:
simulating the control process;
A simulation program comprising: implementing a communication process for communicating information related to the control process to be simulated with the information processing apparatus according to predetermined settings.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022029389A JP2023125352A (en) | 2022-02-28 | 2022-02-28 | Simulation system, method and simulation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022029389A JP2023125352A (en) | 2022-02-28 | 2022-02-28 | Simulation system, method and simulation program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023125352A true JP2023125352A (en) | 2023-09-07 |
Family
ID=87887470
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022029389A Pending JP2023125352A (en) | 2022-02-28 | 2022-02-28 | Simulation system, method and simulation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023125352A (en) |
-
2022
- 2022-02-28 JP JP2022029389A patent/JP2023125352A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6965798B2 (en) | Control system and control method | |
JP6822153B2 (en) | Improved test manager for industrial automation controllers | |
WO2015136959A1 (en) | Control system, method, program and information processing device | |
CN107612962B (en) | Distributed simulation evaluation test management system | |
CA2617913A1 (en) | System and method for rapid prototyping and implementation of distributed scalable task control architecture | |
JP6881256B2 (en) | Controls, control methods, and programs | |
JP6442131B2 (en) | Control system and control device | |
JP6362821B2 (en) | Control device, control method and instruction set | |
WO2019167512A1 (en) | Display device, screen generation method, and screen generation program | |
JP6135247B2 (en) | Information processing apparatus and information processing program | |
CN112199273B (en) | Virtual machine pressure/performance testing method and system | |
JP7172864B2 (en) | Support equipment and support programs | |
JP2023125352A (en) | Simulation system, method and simulation program | |
JP5212508B2 (en) | Debug device | |
JP2010033192A (en) | Information processor, method of controlling the same, computer program, and storage medium | |
JP5492573B2 (en) | Device / PLC simulator device, method, and program having trace function | |
JP4877257B2 (en) | Programmable controller, programmable controller support apparatus, and programmable controller system | |
KR102282850B1 (en) | System for Evaluating Communication Performance Between Soft PLC and IO Device Using Robot Process Automation | |
WO2023166820A1 (en) | Information processing system | |
CN116126366B (en) | Chip input/output interface configuration method, device, medium and electronic equipment | |
EP4270121A1 (en) | Method and system for seamless transition of runtime system from controller device to digitalization platform | |
JP7234810B2 (en) | Support equipment and support programs | |
CN109918727B (en) | Dynamic management method for multiple simulation scenes | |
JP2024062823A (en) | Engineering Tools Equipment | |
JP2023547855A (en) | Systems and equipment for authoring and developing automation interfaces and processes without writing code |