JP7297178B1 - シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法 - Google Patents

シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法 Download PDF

Info

Publication number
JP7297178B1
JP7297178B1 JP2023500424A JP2023500424A JP7297178B1 JP 7297178 B1 JP7297178 B1 JP 7297178B1 JP 2023500424 A JP2023500424 A JP 2023500424A JP 2023500424 A JP2023500424 A JP 2023500424A JP 7297178 B1 JP7297178 B1 JP 7297178B1
Authority
JP
Japan
Prior art keywords
virtual plc
processing device
virtual
configuration information
information processing
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
JP2023500424A
Other languages
English (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 Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP7297178B1 publication Critical patent/JP7297178B1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

シミュレーションプログラムは、コンピュータを、ユーザの操作に基づいて生成された構成情報であって、PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する構成情報取得部(101)、構成情報に基づいて、仮想PLCシステムを構築する構築部(102)、構成情報が示す仮想PLCシステムに含まれる仮想PLCに、コンピュータのIPアドレスと、コンピュータにおいて未使用のポートのポート番号と、を割り当てる割当部(103)、エンジニアリングツール(300)から、構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付ける指定要求受付部(107)、指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、エンジニアリングツール(300)に応答する接続情報応答部(108)として機能させる。

Description

本開示は、シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法に関する。
FA(Factory Automation)システムにおいて、PLC(Programmable Logic Controller)システムを構築する際、PLCが実行するPLCプログラムの動作を確認するために、シミュレーションが実行される。シミュレーションでは、実機のPLCの動作を模擬する仮想PLCがコンピュータ上に構築され、エンジニアリングツールから仮想PLCにPLCプログラムの書き込み、仮想PLCにPLCプログラムを実行させる。
上記の仮想PLCは、1つのIPアドレスが割り当てられた1台のコンピュータ上に複数構築されることがある。その場合、エンジニアリングツールから、1つのIPアドレスを用いて複数の仮想PLCのそれぞれに接続するために、種々の技術が提案されている。例えば、特許文献1には、1つのIPアドレスについて複数のポート番号を使用し、仮想PLCにポート番号が重複しないように割り当てる技術が開示されている。
特開2003-067036号
しかしながら、上記のような技術では、シミュレーションを行うユーザが、仮想PLCとIPアドレス及びポート番号との対応の情報を管理する必要がある。そして、エンジニアリングツールから特定の仮想PLCに接続する場合は、ユーザが、仮想PLCに対応付けられたIPアドレス及びポート番号を指定する必要がある。このような、シミュレーションにおける手続の負担を軽減し、仮想PLCへ容易に接続できるようにすることが求められる。
本開示は、上記事情に鑑みてなされたものであり、仮想PLCへ容易に接続することが可能なシミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法を提供することを目的とする。
上記目的を達成するために、本開示に係るシミュレーションプログラムは、
コンピュータを、
PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する構成情報取得手段、
前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段、
前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記コンピュータのIPアドレスと、前記コンピュータにおいて未使用のポートのポート番号と、を割り当てる割当手段、
前記コンピュータと異なるコンピュータにおいて実現されるエンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求であって、IPアドレス及びポート番号を含まない指定要求を受け付ける指定要求受付手段、
前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段、として機能させる。
本開示によれば、仮想PLCへ容易に接続することが可能なシミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法を提供することができる。
実施形態1に係るシミュレーションシステムを示す図 実施形態1に係る情報処理装置のハードウェア構成を示すブロック図 実施形態1に係るシミュレーション装置の機能構成を示す図 実施形態1に係る構成情報を示す図 実施形態1に係る接続情報テーブルを示す図 実施形態1に係る構築処理を示すフローチャート 実施形態1に係る制御処理を示すフローチャート 実施形態2に係るシミュレーションシステムを示す図 実施形態2に係るシミュレーション装置の機能構成を示す図 実施形態2に係る構成情報を示す図 実施形態2に係る接続情報テーブルを示す図 実施形態3に係るシミュレーションシステムを示す図 実施形態3に係るシミュレーション装置の機能構成を示す図 実施形態3に係る接続情報テーブルを示す図
(実施形態1)
実施形態1に係るシミュレーションシステムは、1以上の仮想PLCを含む仮想PLCシステムにおいてPLCプログラムのシミュレーションを行うシステムである。
図1に、本実施形態のシミュレーションシステム1を示す。シミュレーションシステム1は、シミュレーション装置100と、シミュレーション管理クライアント装置200と、を含む。シミュレーション装置100は、図示しないネットワークケーブル又は無線により、シミュレーション管理クライアント装置200及びエンジニアリングツール300と通信可能に接続する。
シミュレーション装置100は、仮想PLCシステムを構築し、PLCシステムの動作を模擬する。シミュレーション装置100は、シミュレーション管理部1001を有し、シミュレーション管理部1001は、シミュレーション管理クライアント装置200と情報のやり取りを行い、仮想PLCシステムを構築する。また、シミュレーション管理部1001は、仮想PLCに関する情報を管理する。
また、シミュレーション装置100は、エンジニアリングツール300から、仮想PLCシステムに含まれる仮想PLCに対する操作を受け付ける。例えば、シミュレーション装置100は、エンジニアリングツール300から、仮想PLCにおいて実行するPLCプログラムを書き込む操作を受け付ける。そして、シミュレーション装置100は、書き込まれたPLCプログラムを仮想PLCにおいて実行する。
シミュレーション管理クライアント装置200は、ユーザからの操作を受け付け、シミュレーション装置100に仮想PLCシステムを構築させる。シミュレーション管理クライアント装置200には、例えば、仮想PLCシステムの構成を設定するための専用のソフトウェアがインストールされており、ユーザは、専用のソフトウェアを用いて、仮想PLCシステムの構成を設定する。或いは、ユーザは、シミュレーション管理クライアント装置200のwebブラウザを用いて、仮想PLCシステムの構成を設定する。
エンジニアリングツール300は、ユーザからの操作に基づいて、仮想PLCシステムにおいて実行するPLCプログラムを作成する。そして、エンジニアリングツール300は、ユーザからの操作に基づいて、シミュレーション装置100において構築された仮想PLCシステムの仮想PLCに接続し、接続した仮想PLCにPLCプログラムを書き込む。
本実施形態では、図1に示すように、シミュレーション装置100は、情報処理装置500-1により実現され、シミュレーション管理クライアント装置200及びエンジニアリングツール300は、情報処理装置500-2により実現されるものとする。
図1の情報処理装置500-1,500-2及び後述する情報処理装置500-3は、それぞれ、図2の情報処理装置500のハードウェア構成を有する。
情報処理装置500は、種々の処理を実行するプロセッサ11と、プロセッサ11の作業領域として用いられる主記憶部12と、プロセッサ11の処理に用いられる種々のデータを記憶する補助記憶部13と、外部の装置と通信するための通信部14と、入力された情報を取得する入力部15と、種々の情報を提示する出力部16と、を有する。主記憶部12、補助記憶部13、通信部14、入力部15及び出力部16はいずれも、バス17を介してプロセッサ11に接続される。
プロセッサ11は、CPU(Central Processing Unit)を含む。プロセッサ11は、補助記憶部13に記憶されるプログラムを実行することにより、情報処理装置500の種々の機能を実現する。
主記憶部12は、RAM(Random Access Memory)を含む。主記憶部12には、補助記憶部13からプログラムがロードされる。そして、主記憶部12は、プロセッサ11の作業領域として用いられる。
補助記憶部13は、EEPROM(Electrically Erasable Programmable Read-Only Memory)に代表される不揮発性メモリを含む。補助記憶部13は、プログラムの他に、プロセッサ11の処理に用いられる種々のデータを記憶する。補助記憶部13は、プロセッサ11の指示に従って、プロセッサ11によって利用されるデータをプロセッサ11に供給し、プロセッサ11から供給されたデータを記憶する。
通信部14は、外部の装置と通信するためのネットワークインタフェース回路を含む。通信部14は、外部の装置から信号を受信して、この信号により示されるデータをプロセッサ11へ出力する。また、通信部14は、プロセッサ11から出力されたデータを示す信号を外部の装置へ送信する。
入力部15は、入力キー、ポインティングデバイス等の入力デバイスを含む。入力部15は、情報処理装置500のユーザによって入力された情報を取得して、取得した情報をプロセッサ11に通知する。
出力部16は、LCD(Liquid Crystal Display)、スピーカ等の出力デバイスを含む。出力部16は、入力部15を構成するポインティングデバイスと一体的に形成されたタッチスクリーンを構成してもよい。出力部16は、プロセッサ11の指示に従って、種々の情報をユーザに提示する。
図3に、本実施形態のシミュレーション装置100及びシミュレーション管理クライアント装置200の機能構成を示す。
シミュレーション装置100は、機能的には、シミュレーション管理クライアント装置200から構成情報を取得する構成情報取得部101と、構成情報に基づいて仮想PLCシステムを構築する構築部102と、仮想PLCシステムに含まれる仮想PLCにIPアドレス及びポート番号を割り当てる割当部103と、仮想PLCに割り当てられたIPアドレス及びポート番号を含む接続情報を記憶する記憶部104と、エンジニアリングツール300から構成情報の取得要求を受け付ける取得要求受付部105と、エンジニアリングツール300に構成情報を応答する構成情報応答部106と、エンジニアリングツール300から仮想PLCを指定する指定要求を受け付ける指定要求受付部107と、エンジニアリングツール300に指定要求に係る仮想PLCの接続情報を応答する接続情報応答部108と、構築された仮想PLCシステムに動作を模擬させる模擬部109と、を備える。構成情報取得部101、構築部102、割当部103、記憶部104、取得要求受付部105、構成情報応答部106、指定要求受付部107及び接続情報応答部108は、シミュレーション管理部1001が有する機能である。
シミュレーション管理クライアント装置200は、構成情報を生成する構成情報生成部201を備える。
構成情報取得部101は、PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する。構成情報取得部101は、プロセッサ11及び通信部14により実現される。なお、構成情報取得部101は、構成情報取得手段の一例である。
構成情報とは、仮想PLCシステムの構成を示す情報であり、例えば、仮想PLCシステムに含まれるユニットの構成、ネットワーク構成等を示す情報である。
例えば、ユーザが、シミュレーション管理クライアント装置200において、図4に示す構成情報610を作成したとする。構成情報610は、第1仮想PLC401と、第2仮想PLC402と、が含まれる仮想PLCシステム410の構成を示す情報である。シミュレーション管理クライアント装置200が、シミュレーション装置100に構成情報610を送ると、構成情報取得部101は、構成情報610を取得する。
構築部102は、構成情報に基づいて、仮想PLCシステムを構築する。構築部102は、プロセッサ11により実現される。なお、構築部102は、構築手段の一例である。
例えば、構築部102は、構成情報610に基づき、図1に示すように、シミュレーション装置100において、第1仮想PLC401と、第2仮想PLC402とが含まれる仮想PLCシステム410を構築する。
割当部103は、構成情報が示す仮想PLCシステムに含まれる仮想PLCに、仮想PLCシステムを構築するシミュレーション装置100が実現される情報処理装置500-1のIPアドレスと、情報処理装置500-1において未使用のポートのポート番号と、を割り当てる。割当部103は、プロセッサ11により実現される。なお、割当部103は、割当手段の一例である。
例えば、情報処理装置500-1のIPアドレスが“192.168.1.3”であり、情報処理装置500-1において未使用のポートのポート番号が“50001”~“50100”であるとする。この場合、割当部103は、第1仮想PLC401に、IPアドレス“192.168.1.3”及びポート番号“50001”を割り当て、第2仮想PLC402に、IPアドレス“192.168.1.3”及びポート番号“50002”を割り当てる。なお、仮想PLCシステムに含まれる仮想PLCにポート番号を割り当てる手法は、未使用のポートのポート番号であって、重複しないポート番号を割り当てる手法であれば、どのような手法でもよい。
割当部103は、仮想PLCにIPアドレス及びポート番号を割り当てると、仮想PLCを識別するための仮想PLCの識別情報と、接続情報とを対応付けて、記憶部104に格納する。
接続情報とは、エンジニアリングツール300から仮想PLCに接続するために用いられる情報であり、本実施形態においては、IPアドレス及びポート番号を含む情報である。
記憶部104には、仮想PLCの識別情報と接続情報とが格納される。記憶部104は、補助記憶部13により実現される。
図5に、記憶部104に格納される仮想PLCの識別情報及び接続情報の例を示す。図5の接続情報テーブルには、仮想PLCを識別するための仮想PLCの識別情報と、仮想PLCに割り当てられたIPアドレス及びポート番号を含む接続情報とが対応付けて登録される。以下、第1仮想PLC401及び第2仮想PLC402の識別情報を、“401”及び“402”とする。図5の接続情報テーブルの1行目のレコードは、仮想PLCの識別情報“401”が示す第1仮想PLC401に、IPアドレス“192.168.1.3”及びポート番号“50001”が割り当てられていることを示す。
取得要求受付部105は、エンジニアリングツール300から構成情報の取得要求を受け付ける。取得要求受付部105は、プロセッサ11及び通信部14により実現される。なお、取得要求受付部105は、取得要求受付手段の一例である。
例えば、エンジニアリングツール300を使用するユーザが、エンジニアリングツール300を用いて、シミュレーション装置100において構築された仮想PLCシステムの構成情報を取得するための操作を行うと、エンジニアリングツール300は、構成情報の取得要求をシミュレーション装置100に送信し、取得要求受付部105は、エンジニアリングツール300から構成情報の取得要求を受け付ける。
構成情報応答部106は、取得要求に係る構成情報を、エンジニアリングツール300に応答する。構成情報応答部106は、プロセッサ11及び通信部14により実現される。なお、構成情報応答部106は、構成情報応答手段の一例である。
例えば、構成情報応答部106は、仮想PLCシステム410の構成情報610を、エンジニアリングツール300に応答する。構成情報610を取得したエンジニアリングツール300は、情報処理装置500-2の画面に、図4の構成情報610を表示する。
指定要求受付部107は、エンジニアリングツール300から、構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付ける。指定要求受付部107は、プロセッサ11及び通信部14により実現される。なお、指定要求受付部107は、指定要求受付手段の一例である。
例えば、ユーザが、情報処理装置500-2の画面に表示された構成情報610において、第1仮想PLC401を指定する操作を行うと、エンジニアリングツール300は、第1仮想PLC401を指定する指定要求をシミュレーション装置100に送信し、指定要求受付部107は、エンジニアリングツール300から第1仮想PLC401を指定する指定要求を受け付ける。
接続情報応答部108は、指定要求に係る仮想PLCに割り当てられたIPアドレスと、ポート番号とが含まれる接続情報を、エンジニアリングツール300に応答する。接続情報応答部108は、プロセッサ11及び通信部14により実現される。なお、接続情報応答部108は、接続情報応答手段の一例である。
例えば、接続情報応答部108は、記憶部104に格納された図5の接続情報テーブルを参照して、第1仮想PLC401に割り当てられたIPアドレス“192.168.1.3”及びポート番号“50001”を含む接続情報を、エンジニアリングツール300に応答する。
模擬部109は、実機のPLCの動作を、構築された仮想PLCシステムの仮想PLCに模擬させる。例えば、模擬部109は、仮想PLCシステムの仮想PLCに、割り当てられたIPアドレス及びポート番号で、エンジニアリングツール300からの接続を待機させるよう模擬する。また、模擬部109は、エンジニアリングツール300から、仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続要求を受け付け、接続要求に係るIPアドレスとポート番号とが割り当てられた仮想PLCが、エンジニアリングツール300に接続するよう模擬する。模擬部109は、プロセッサ11及び通信部14により実現される。なお、模擬部109は、模擬手段の一例である。
例えば、模擬部109は、第1仮想PLC401を、IPアドレス“192.168.1.3”及びポート番号“50001で、第2仮想PLC402を、IPアドレス“192.168.1.3”及びポート番号“50002”で、エンジニアリングツール300からの接続を待機させる。そして、模擬部109は、エンジニアリングツール300から、例えば、IPアドレス“192.168.1.3”及びポート番号“50001”が含まれる接続要求を受け付けると、IPアドレス“192.168.1.3”及びポート番号“50001”が割り当てられた第1仮想PLC401がエンジニアリングツール300に接続するように模擬する。
仮想PLCシステムに含まれる仮想PLCと、エンジニアリングツール300とが接続すると、その後の仮想PLCとエンジニアリングツール300とのやり取りは、シミュレーション管理部1001を介さずに行われる。
図3の構成情報生成部201は、ユーザの操作に基づいて、仮想PLCシステムの構成を示す構成情報を生成する。構成情報生成部201は、プロセッサ11及び入力部15により実現される。なお、構成情報生成部201は、構成情報生成手段の一例である。
例えば、構成情報生成部201は、仮想PLCシステムの構成情報を作成するためのグラフィカルユーザインタフェースを提供し、ユーザの操作に基づいて図4の構成情報610を生成する。そして、構成情報生成部201は、生成された構成情報610をシミュレーション装置100に送信する。
次に、本実施形態に係るシミュレーション装置100が実行する構築処理について、図6のフローチャートを用いて説明する。図6の構築処理は、例えば、構成情報取得部101が構成情報を取得すると、実行される処理である。
構築部102は、構成情報取得部101により取得された構成情報に基づいて、仮想PLCシステムを構築する(ステップS101)。
例えば、構成情報取得部101が図4の構成情報610が取得したとすると、構築部102は、構成情報610に基づいて、シミュレーション装置100において、第1仮想PLC401と、第2仮想PLC402とが含まれる仮想PLCシステム410を構築する。
割当部103は、構成情報が示す仮想PLCシステムに含まれる仮想PLCに、シミュレーション装置100が実現される情報処理装置500-1のIPアドレスと、情報処理装置500-1において未使用のポートのポート番号と、を割り当てる(ステップS102)。
例えば、割当部103は、仮想PLCシステム410に含まれる第1仮想PLC401に、IPアドレス“192.168.1.3”及びポート番号“50001”を割り当て、第2仮想PLC402に、IPアドレス“192.168.1.3”及びポート番号“50002”を割り当てる。
模擬部109は、構築部102により構築された仮想PLCシステムに含まれる仮想PLCを、割当部103により割り当てられたIPアドレス及びポート番号で、エンジニアリングツール300からの接続を待機させる(ステップS103)。
例えば、模擬部109は、第1仮想PLC401を、IPアドレス“192.168.1.3”及びポート番号“50001で、第2仮想PLC402を、IPアドレス“192.168.1.3”及びポート番号“50002”で、エンジニアリングツール300からの接続を待機させるよう模擬する。
次に、本実施形態に係るシミュレーション装置100が実行する制御処理について、図7のフローチャートを用いて説明する。図7の制御処理は、例えば、構築部102により構成情報に基づいて仮想PLCシステムが構築されると、実行される処理である。
取得要求受付部105は、エンジニアリングツール300から構成情報の取得要求を受け付けたか否かを判断する(ステップS201)。取得要求受付部105が、エンジニアリングツール300から構成情報の取得要求を受け付けたと判断すると(ステップS201;YES)、構成情報応答部106は、取得要求に係る構成情報を、エンジニアリングツール300に応答する(ステップS202)。一方、取得要求受付部105が、エンジニアリングツール300から構成情報の取得要求を受け付けていないと判断すると(ステップS201;NO)、ステップS203に進む。
例えば、取得要求受付部105が、エンジニアリングツール300から構成情報の取得要求を受け付けたと判断すると、構成情報応答部106は、仮想PLCシステム410の構成情報610を、エンジニアリングツール300に応答する。一方、取得要求受付部105が、エンジニアリングツール300から構成情報の取得要求を受け付けていないと判断すると、ステップS203に進む。
指定要求受付部107は、エンジニアリングツール300から、構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付けたか否かを判断する(ステップS203)。指定要求受付部107は、仮想PLCを指定する指定要求を受け付けたと判断すると(ステップS203;YES)、接続情報応答部108は、指定要求に係る仮想PLCに割り当てられたIPアドレスと、ポート番号とが含まれる接続情報を、エンジニアリングツール300に応答する(ステップS204)。一方、指定要求受付部107は、仮想PLCを指定する指定要求を受け付けていないと判断すると(ステップS203;NO)、ステップS205に進む。
例えば、取得要求受付部105は、エンジニアリングツール300から、第1仮想PLC401を指定する指定要求を受けたと判断すると、接続情報応答部108は、記憶部104に格納された図5の接続情報テーブルを参照して、第1仮想PLC401に割り当てられたIPアドレス“192.168.1.3”及びポート番号“50001”を含む接続情報を、エンジニアリングツール300に応答する。一方、取得要求受付部105は、エンジニアリングツール300から、仮想PLCを指定する指定要求を受けていないと判断すると、ステップS205に進む。
模擬部109は、エンジニアリングツール300から、仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続要求を受け付けたか否かを判断する(ステップS205)。模擬部109は、仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続要求を受け付けたと判断すると(ステップS205;YES)、接続要求に係るIPアドレスとポート番号とが割り当てられた仮想PLCを、エンジニアリングツール300に接続させるように模擬する(ステップS206)。一方、模擬部109は、仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続要求を受け付けていないと判断すると(ステップS205;NO)、ステップS201に戻る。
例えば、模擬部109は、エンジニアリングツール300から、IPアドレス“192.168.1.3”及びポート番号“50001”が含まれる接続要求を受け付けたと判断すると、第1仮想PLC401をエンジニアリングツール300に接続させるように模擬する。一方、模擬部109は、エンジニアリングツール300から、仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続要求を受け付けていないと判断すると、ステップS201に戻る。
本実施形態によれば、シミュレーション装置が、仮想PLCシステムに含まれる仮想PLCに、IPアドレス及び未使用のポートのポート番号を割り当てる。そして、シミュレーション装置が、エンジニアリングツールから、特定の仮想PLCへの接続要求を受け付けると、接続要求に係る仮想PLCのIPアドレス及びポート番号をエンジニアリングツールに応答し、エンジニアリングツールは応答されたIPアドレス及びポート番号を用いて特定の仮想PLCに接続することができる。これにより、ユーザは、仮想PLCと、IPアドレス及びポート番号との対応の情報を管理したり、接続したい仮想PLCのIPアドレス及びポート番号を指定したりする必要がなく、仮想PLCへ容易に接続することができる。よって、シミュレーションにおける手続の負担を軽減することができる。
また、本実施形態によれば、1つのIPアドレスが割り当てられている情報処理装置、或いは、仮想PLCの数よりも少ない数のIPアドレスが割り当てられている情報処理装置において、複数の仮想PLCのそれぞれにエンジニアリングツールから接続させることができる。これにより、情報処理装置に割り当てられているIPアドレスの数が、シミュレーションを実行したいPLCシステムに含まれるPLCの数よりも少なくても、PLCシステムのシミュレーションを行うことができる。
(実施形態2)
実施形態2に係るシミュレーションシステムは、複数の情報処理装置により、シミュレーション装置を実現し、仮想PLCシステムに含まれる仮想PLCを複数の情報処理装置上に構築することにより、分散シミュレーションを行う。
図8に、本実施形態のシミュレーションシステム1を示す。シミュレーションシステム1は、複数のシミュレーション装置100-1,100-2と、シミュレーション管理クライアント装置200と、を含む。シミュレーション装置100-1,100-2は、互いに、図示しないネットワークケーブル又は無線により通信可能に接続する。また、シミュレーション装置100-1,100-2のそれぞれは、図示しないネットワークケーブル又は無線により、シミュレーション管理クライアント装置200及びエンジニアリングツール300と通信可能に接続する。シミュレーション装置100-1,100-2は、それぞれ、情報処理装置500-1,500-3により実現され、シミュレーション管理クライアント装置200及びエンジニアリングツール300は、情報処理装置500-2により実現されるものとする。
図9に、本実施形態のシミュレーション装置100-1,100-2及びシミュレーション管理クライアント装置200の機能構成を示す。
シミュレーション装置100-1,100-2は、機能的には、実施形態1の各部に加え、管理モード又は従属モードをシミュレーション装置に設定する設定部110を備える。設定部110は、シミュレーション管理部1001-1,1001-2が有する機能である。以下、シミュレーション装置100-1,100-2の各部について、実施形態1の各部と異なる機能について説明する。
設定部110は、シミュレーション装置からの指示に従って異なるシミュレーション装置に仮想PLCを構築させる管理モード、又は、異なるシミュレーション装置からの指示に従って仮想PLCを構築する従属モードに、シミュレーション装置を設定する。設定部110は、プロセッサ11及び通信部14により実現される。なお、設定部110は、設定手段の一例である。
例えば、シミュレーション管理クライアント装置200が、ユーザから、情報処理装置500-1のシミュレーション装置100-1を管理モード、情報処理装置500-3のシミュレーション装置100-2を従属モードに設定する操作を受け付けたとする。シミュレーション管理クライアント装置200は、情報処理装置500-1のシミュレーション装置100-1に、管理モードに設定する設定要求を送り、シミュレーション装置100-1の設定部110は、シミュレーション装置100-1を管理モードに設定する。また、シミュレーション管理クライアント装置200は、情報処理装置500-3のシミュレーション装置100-2に、従属モードに設定する設定要求を送り、シミュレーション装置100-2の設定部110は、シミュレーション装置100-2を従属モードに設定する。
管理モードに設定されたシミュレーション装置100-1は、設定部110に加え、構成情報取得部101、構築部102、割当部103、記憶部104、取得要求受付部105、構成情報応答部106、指定要求受付部107、接続情報応答部108及び模擬部109の機能を実行する。また、従属モードに設定されたシミュレーション装置100-2は、設定部110に加え、構築部102、割当部103及び模擬部109の機能を実行する。
シミュレーション装置100-1の構成情報取得部101は、構成情報を取得する。
例えば、構成情報取得部101は、シミュレーション管理クライアント装置200から、図10の構成情報620を取得する。構成情報620は、第1仮想PLC401と、第2仮想PLC402と、第3仮想PLC403と、第4仮想PLC404とが含まれる仮想PLCシステム420の構成を示す情報である。構成情報620には、仮想PLCシステム420のうちどの仮想PLCを、管理モード及び従属モードのシミュレーション装置のいずれで実行させるかを示した情報621,622が含まれる。
シミュレーション装置100-1の構築部102は、構成情報取得部101により取得された構成情報が示す仮想PLCシステムに含まれる仮想PLCの少なくともいずれかを、従属モードに設定されたシミュレーション装置100-2に構築させる。
例えば、シミュレーション装置100-1の構築部102は、構成情報620に基づいて、第1仮想PLC401及び第2仮想PLC402を管理モードのシミュレーション装置100-1に構築する。また、シミュレーション装置100-1の構築部102は、構成情報620に基づいて、第3仮想PLC403及び第4仮想PLC404を従属モードのシミュレーション装置100-2に構築させる指示を送る。
シミュレーション装置100-1の割当部103は、管理モードに設定されたシミュレーション装置100-1において構築される仮想PLCに、管理モードに設定されたシミュレーション装置100-1のIPアドレスと、管理モードに設定されたシミュレーション装置100-1において未使用のポートのポート番号と、を割り当る。
例えば、シミュレーション装置100-1の割当部103は、第1仮想PLC401に、IPアドレス“192.168.1.3”及びポート番号“50001”を割り当て、第2仮想PLC402に、IPアドレス“192.168.1.3”及びポート番号“50002”を割り当てる。
シミュレーション装置100-2の構築部102は、管理モードに設定されたシミュレーション装置100-1からの指示に従い、仮想PLCシステムの仮想PLCの少なくともいずれかを構築する。
例えば、シミュレーション装置100-2の構築部102は、第3仮想PLC403及び第4仮想PLC404を従属モードのシミュレーション装置100-2に構築する。
シミュレーション装置100-2の割当部103は、従属モードに設定されたシミュレーション装置100-2において構築される仮想PLCに、従属モードに設定されたシミュレーション装置100-2のIPアドレスと、従属モードに設定されたシミュレーション装置100-2において未使用のポートのポート番号と、を割り当てる。
例えば、情報処理装置500-3のIPアドレスが“192.168.1.4”であり、情報処理装置500-3において未使用のポートのポート番号が“50001”~“50100”であるとする。シミュレーション装置100-2の割当部103は、第3仮想PLC403に、IPアドレス“192.168.1.4”及びポート番号“50001”を割り当て、第4仮想PLC404に、IPアドレス“192.168.1.4”及びポート番号“50002”を割り当てる。
シミュレーション装置100-1の割当部103は、従属モードに設定されたシミュレーション装置100-2において構築される仮想PLCに割り当てられたIPアドレス及びポート番号の情報を取得する。
例えば、シミュレーション装置100-1の割当部103は、第3仮想PLC403に割り当てられたIPアドレス“192.168.1.4”及びポート番号“50001”、及び、第4仮想PLC404に割り当てられたIPアドレス“192.168.1.4”及びポート番号“50002”の情報を取得する。そして、シミュレーション装置100-1の割当部103は、シミュレーション装置100-1の記憶部104に、第3仮想PLC403及び第4仮想PLC404の仮想PLCの識別情報と接続情報とを格納する。
図11に、シミュレーション装置100-1の記憶部104に格納される仮想PLCの識別情報及び接続情報の例を示す。以下、第3仮想PLC403及び第4仮想PLC404の仮想PLCの識別情報を、“403”及び“404”とする。図11の接続情報テーブルには、第1仮想PLC401、第2仮想PLC402、第3仮想PLC403及び第4仮想PLC404の仮想PLCの識別情報と、接続情報とが対応付けて登録される。
そして、シミュレーション装置100-1の模擬部109は、第1仮想PLC401を、IPアドレス“192.168.1.3”及びポート番号“50001で、第2仮想PLC402を、IPアドレス“192.168.1.3”及びポート番号“50002”で、エンジニアリングツール300からの接続を待機させる。また、シミュレーション装置100-2の模擬部109は、第3仮想PLC403を、IPアドレス“192.168.1.4”及びポート番号“50001で、第4仮想PLC404を、IPアドレス“192.168.1.4”及びポート番号“50002”で、エンジニアリングツール300からの接続を待機させる。
シミュレーション装置100-1の取得要求受付部105は、エンジニアリングツール300から構成情報の取得要求を受け付け、シミュレーション装置100-1の構成情報応答部106は、取得要求に係る構成情報を、エンジニアリングツール300に応答する。
例えば、シミュレーション装置100-1の取得要求受付部105が、エンジニアリングツール300から構成情報の取得要求を受け付けると、シミュレーション装置100-1の構成情報応答部106が、仮想PLCシステム420の構成情報620を、エンジニアリングツール300に応答する。構成情報620を取得したエンジニアリングツール300は、情報処理装置500-2の画面に、図10の構成情報620を表示する。
シミュレーション装置100-1の指定要求受付部107は、エンジニアリングツール300から、構成情報が示す仮想PLCシステムに含まれる仮想PLCのうち、シミュレーション装置100-2において構築される仮想PLCを指定する指定要求を受け付ける。
例えば、ユーザが、情報処理装置500-2の画面に表示された構成情報620において、第3仮想PLC403を指定する操作を行うと、エンジニアリングツール300は、第3仮想PLC403を指定する指定要求をシミュレーション装置100-1に送信し、シミュレーション装置100-1の指定要求受付部107は、エンジニアリングツール300から第3仮想PLC403を指定する指定要求を受け付ける。
シミュレーション装置100-1の接続情報応答部108は、指定要求に係る、シミュレーション装置100-2において構築される仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、エンジニアリングツール300に応答する。
例えば、シミュレーション装置100-1の接続情報応答部108は、記憶部104に格納された図11の接続情報テーブルを参照して、第3仮想PLC403に割り当てられたIPアドレス“192.168.1.4”及びポート番号“50001”を含む接続情報を、エンジニアリングツール300に応答する。
そして、シミュレーション装置100-2の模擬部109は、エンジニアリングツール300から、例えば、IPアドレス“192.168.1.4”及びポート番号“50001”が含まれる接続要求を受け付けると、IPアドレス“192.168.1.4”及びポート番号“50001”が割り当てられた第3仮想PLC403をエンジニアリングツール300に接続させるように模擬する。
次に、本実施形態に係るシミュレーション装置100-1,100-2が実行する構築処理及び制御処理について説明する。
管理モードのシミュレーション装置100-1は、図6の構築処理と同様の処理を行う。一方、従属モードのシミュレーション装置100-2は、図6のステップS102及びステップS103と同様の処理を行うが、ステップS101とは異なる処理を行う。シミュレーション装置100-2の構築部102は、管理モードのシミュレーション装置100-1からの指示に従い、仮想PLCシステムを構築する。その後、シミュレーション装置100-2は、ステップS102及びステップS103の処理を行う。
また、管理モードのシミュレーション装置100-1は、図7の制御処理と同様の処理を行う。一方、従属モードのシミュレーション装置100-2は、図7のステップS205,S206のみの処理を行う。
本実施形態によれば、複数のシミュレーション装置において構築された仮想PLCシステムについて、ユーザは、仮想PLCと、IPアドレス及びポート番号との対応の情報を管理したり、接続したい仮想PLCのIPアドレス及びポート番号を指定したりする必要がなく、仮想PLCへ容易に接続することができる。よって、シミュレーションにおける手続の負担を軽減することができる。
(実施形態3)
実施形態3に係るシミュレーションシステムは、仮想PLCに、IPアドレス及びポート番号の代わりに、処理要求の宛先を識別するための宛先識別情報を割り当てる。
図12に、本実施形態のシミュレーションシステム1を示す。本実施形態のシミュレーションシステム1は、実施形態1と同様の構成を有するが、エンジニアリングツール300が、シミュレーション管理部1001を介して、仮想PLCシステム410内の仮想PLCと接続する。また、エンジニアリングツール300は、シミュレーション装置100が実現される情報処理装置500-1のIPアドレス及び予め定められた1つのポート番号を用いて、シミュレーション装置100に接続する。例えば、エンジニアリングツール300は、IPアドレス“192.168.1.3”及びポート番号“50003”を用いて、シミュレーション装置100に接続する。
図13に、本実施形態のシミュレーション装置100及びシミュレーション管理クライアント装置200の機能構成を示す。
シミュレーション装置100は、機能的には、実施形態1の各部に加え、エンジニアリングツール300から仮想PLCに対する処理要求を受け付ける処理要求受付部111を備える。処理要求受付部111は、シミュレーション管理部1001が有する機能である。以下、実施形態1と異なる機能について説明する。なお、本実施形態の構成情報取得部101は、図4の構成情報610を取得したとする。
割当部103は、構成情報が示す仮想PLCシステムに含まれる仮想PLCに、仮想PLCに対する処理を要求する処理要求の宛先を識別するための宛先識別情報を割り当てる。
処理要求とは、エンジニアリングツール300からシミュレーション装置100に送信されるものであり、仮想PLCにおいて実行する処理の内容が指定された要求である。宛先識別情報とは、処理要求の宛先を識別するための情報であり、宛先は、仮想PLCシステムに含まれる仮想PLCのいずれかである。
例えば、割当部103は、第1仮想PLC401に、宛先識別情報“aaa”を割り当て、第2仮想PLC402に、宛先識別情報“bbb”を割り当てる。
割当部103は、仮想PLCに宛先識別情報を割り当てると、宛先識別情報を接続情報として、記憶部104に格納する。
図14に、記憶部104に格納される仮想PLCの識別情報及び接続情報の例を示す。図14の接続情報テーブルには、仮想PLCを識別するための仮想PLCの識別情報と、仮想PLCに割り当てられた宛先識別情報である接続情報とが対応付けて登録される。図14の接続情報テーブルの1行目のレコードは、仮想PLCの識別情報“401”が示す第1仮想PLC401に、宛先識別情報“aaa”が割り当てられていることを示す。
接続情報応答部108は、指定要求に係る仮想PLCに割り当てられた宛先識別情報である接続情報を、エンジニアリングツール300に応答する。
例えば、情報処理装置500-2の画面に表示された構成情報610において、第1仮想PLC401を指定する操作を行うと、エンジニアリングツール300は、第1仮想PLC401を指定する指定要求をシミュレーション装置100に送信し、指定要求受付部107は、エンジニアリングツール300から第1仮想PLC401を指定する指定要求を受け付ける。そして、接続情報応答部108は、記憶部104に格納された図14の接続情報テーブルを参照して、第1仮想PLC401に割り当てられた宛先識別情報“aaa”を含む接続情報を、エンジニアリングツール300に応答する。
エンジニアリングツール300は、仮想PLCへ処理を求める処理要求を送信する場合、処理要求に、処理を求める仮想PLCに割り当てられた宛先識別情報を含める。
処理要求受付部111は、エンジニアリングツール300から、接続情報応答部108により応答された接続要求に係る宛先識別情報が含まれる処理要求を受け付け、処理要求に係る宛先識別情報が割り当てられた仮想PLCに、処理要求を送る。処理要求受付部111は、プロセッサ11及び通信部14により実現される。なお、処理要求受付部111は、処理要求受付手段の一例である。
例えば、処理要求受付部111は、エンジニアリングツール300から、宛先識別情報“aaa”が含まれた処理要求Aを受け付けると、図14の接続情報テーブルを参照して、宛先識別情報“aaa”に対応付けられた第1仮想PLC401を処理要求Aの宛先と特定し、第1仮想PLC401に処理要求Aを送る。
そして、模擬部109は、処理要求に係る宛先識別情報が割り当てられた仮想PLCが、処理要求が示す処理を実行するよう模擬する。
例えば、模擬部109は、処理要求Aが示す処理を、第1仮想PLC401が実行するように模擬する。なお、処理要求受付部111から模擬部109に処理要求を送る手法は、任意の手法が採用される。
次に、本実施形態に係るシミュレーション装置100が実行する構築処理及び制御処理について説明する。
シミュレーション装置100は、図6のステップS101及びステップS103と同様の処理を行うが、ステップS102とは異なる処理を行う。シミュレーション装置100の割当部103は、ステップS101の処理の後に、構成情報が示す仮想PLCシステムに含まれる仮想PLCに、宛先識別情報を割り当てる。その後、シミュレーション装置100は、ステップS103の処理を行う。
また、シミュレーション装置100は、図7のステップS205,ステップS206のみ、異なる処理を行う。シミュレーション装置100の処理要求受付部111は、エンジニアリングツール300から、宛先識別情報が含まれる接続要求を受け付けたか否かを判断する。そして、処理要求受付部111は、宛先識別情報が含まれる処理要求を受け付けたと判断すると、処理要求に係る宛先識別情報が割り当てられた仮想PLCに、処理要求を送る。
シミュレーション装置を実現する情報処理装置では、種々のサービスが動作する際、それらのサービスが情報処理装置のポートを使用する。そのため、サービスの動作状況によっては、仮想PLCシステムの仮想PLCに割り当てるポートが確保できない場合がある。しかしながら、本実施形態によれば、仮想PLCに宛先を識別するための宛先識別情報を割り当て、エンジニアリングツールは、宛先識別情報を用いて、特定の仮想PLCに接続することができる。本実施形態では、ポート番号は1つしか使用しないため、情報処理装置における未使用のポートが、仮想PLCの数よりも少なく、仮想PLCの数だけ確保できなくても、仮想PLCシステムのシミュレーションを実行することができる。
(変形例)
以上、本開示の実施形態を説明したが、本開示を実施するにあたっては、種々の形態による変形及び応用が可能である。
上記実施形態において、シミュレーション管理クライアント装置200は、シミュレーション装置100と異なる情報処理装置において実現されるとしたが、これに限らない。シミュレーション装置100と、シミュレーション管理クライアント装置200とは、同じ情報処理装置により実現されてもよい。
また、上記実施形態において、シミュレーション管理クライアント装置200は、エンジニアリングツール300と同じ情報処理装置において実現されるとしたが、これに限らない。シミュレーション管理クライアント装置200と、エンジニアリングツール300とは、異なる情報処理装置により実現されてもよい。
また、上記実施形態2において、シミュレーション装置は、2つの情報処理装置により実現されているが、これに限らず、3つ以上の情報処理装置により実現されてもよい。その場合、複数の情報処理装置のうち1つが管理モードに設定され、他の情報処理装置は、従属モードに設定される。
また、上記実施形態に係るシミュレーション装置100の動作を規定する動作プログラムを既存のパーソナルコンピュータ又は情報端末装置に適用することで、当該パーソナルコンピュータ又は情報端末装置を実施形態に係るシミュレーション装置100として機能させることも可能である。
また、このようなプログラムの配布方法は任意であり、例えば、CD-ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、メモリカード等のコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットのような通信ネットワークを介して配布してもよい。
本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。つまり、本開示の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
本開示によれば、仮想PLCへ容易に接続することが可能なシミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法を提供することができる。
1 シミュレーションシステム、11 プロセッサ、12 主記憶部、13 補助記憶部、14 通信部、15 入力部、16 出力部、17 バス、100,100-1,100-2 シミュレーション装置、101 構成情報取得部、102 構築部、103 割当部、104 記憶部、105 取得要求受付部、106 構成情報応答部、107 指定要求受付部、108 接続情報応答部、109 模擬部、110 設定部、111 処理要求受付部、200 シミュレーション管理クライアント装置、201 構成情報生成部、300 エンジニアリングツール、401 第1仮想PLC、402 第2仮想PLC、403 第3仮想PLC、404 第4仮想PLC、410,420 仮想PLCシステム、500,500-1,500-2,500-3 情報処理装置、610,620 構成情報、621,622 情報、1001,1001-1,1001-2 シミュレーション管理部。

Claims (10)

  1. コンピュータを、
    PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する構成情報取得手段、
    前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段、
    前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記コンピュータのIPアドレスと、前記コンピュータにおいて未使用のポートのポート番号と、を割り当てる割当手段、
    前記コンピュータと異なるコンピュータにおいて実現されるエンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求であって、IPアドレス及びポート番号を含まない指定要求を受け付ける指定要求受付手段、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段、として機能させる、
    シミュレーションプログラム。
  2. コンピュータを、
    PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する構成情報取得手段、
    前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段、
    前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記コンピュータのIPアドレスと、前記コンピュータにおいて未使用のポートのポート番号と、を割り当てる割当手段、
    エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付ける指定要求受付手段、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段、
    前記コンピュータからの指示に従って前記コンピュータと異なるコンピュータに前記仮想PLCを構築させる管理モード、又は、前記異なるコンピュータからの指示に従って前記仮想PLCを構築する従属モードに、前記コンピュータを設定する設定手段、として機能させ、
    前記コンピュータが前記管理モードに設定されると、
    前記構成情報取得手段は、前記構成情報を取得し、
    前記構築手段は、前記構成情報取得手段により取得された構成情報が示す仮想PLCシステムに含まれる仮想PLCの少なくともいずれかを、前記従属モードに設定された前記異なるコンピュータに構築させ、
    前記割当手段は、
    前記管理モードに設定された前記コンピュータにおいて構築される仮想PLCに、前記管理モードに設定された前記コンピュータのIPアドレスと、前記管理モードに設定された前記コンピュータにおいて未使用のポートのポート番号と、を割り当て、
    前記従属モードに設定された前記異なるコンピュータにおいて構築される仮想PLCに割り当てられたIPアドレス及びポート番号の情報を取得し、
    前記指定要求受付手段は、前記エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCのうち、前記異なるコンピュータにおいて構築される仮想PLCを指定する指定要求を受け付け、
    前記接続情報応答手段は、前記指定要求に係る、前記異なるコンピュータにおいて構築される仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答し、
    前記コンピュータが前記従属モードに設定されると、
    前記構築手段は、前記管理モードに設定された前記異なるコンピュータからの指示に従い、前記仮想PLCシステムの仮想PLCの少なくともいずれかを構築し、
    前記割当手段は、前記従属モードに設定された前記コンピュータにおいて構築される仮想PLCに、前記従属モードに設定された前記コンピュータのIPアドレスと、前記従属モードに設定された前記コンピュータにおいて未使用のポートのポート番号と、を割り当てる、
    シミュレーションプログラム。
  3. 前記コンピュータを、
    前記エンジニアリングツールから、前記仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続要求を受け付け、前記接続要求に係るIPアドレスとポート番号とが割り当てられた仮想PLCが、前記エンジニアリングツールに接続するよう模擬する模擬手段、として機能させる、
    請求項1又は2に記載のシミュレーションプログラム。
  4. 前記コンピュータを、
    前記エンジニアリングツールから前記構成情報の取得要求を受け付ける取得要求受付手段、
    前記取得要求に係る構成情報を、前記エンジニアリングツールに応答する構成情報応答手段、として機能させ、
    前記エンジニアリングツールは、前記構成情報応答手段により応答された構成情報が示す仮想PLCシステムに含まれる仮想PLCの選択を受け付け、受け付けられた選択に係る仮想PLCを指定する指定要求を送る、
    請求項1又はに記載のシミュレーションプログラム。
  5. PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する構成情報取得手段と、
    前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段と、
    前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記仮想PLCシステムを構築するシミュレーション装置が実現される情報処理装置のIPアドレスと、前記情報処理装置において未使用のポートのポート番号と、を割り当てる割当手段と、
    前記情報処理装置と異なる情報処理装置において実現されるエンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求であって、IPアドレス及びポート番号を含まない指定要求を受け付ける指定要求受付手段と、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段と、を備える、
    シミュレーション装置。
  6. PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得する構成情報取得手段と、
    前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段と、
    前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記仮想PLCシステムを構築するシミュレーション装置が実現される情報処理装置のIPアドレスと、前記情報処理装置において未使用のポートのポート番号と、を割り当てる割当手段と、
    エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付ける指定要求受付手段と、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段と、
    前記情報処理装置からの指示に従って前記情報処理装置と異なる情報処理装置に前記仮想PLCを構築させる管理モード、又は、前記異なる情報処理装置からの指示に従って前記仮想PLCを構築する従属モードに、前記情報処理装置を設定する設定手段と、を備え、
    前記情報処理装置が前記管理モードに設定されると、
    前記構成情報取得手段は、前記構成情報を取得し、
    前記構築手段は、前記構成情報取得手段により取得された構成情報が示す仮想PLCシステムに含まれる仮想PLCの少なくともいずれかを、前記従属モードに設定された前記異なる情報処理装置に構築させ、
    前記割当手段は、
    前記管理モードに設定された前記情報処理装置において構築される仮想PLCに、前記管理モードに設定された前記情報処理装置のIPアドレスと、前記管理モードに設定された前記情報処理装置において未使用のポートのポート番号と、を割り当て、
    前記従属モードに設定された前記異なる情報処理装置において構築される仮想PLCに割り当てられたIPアドレス及びポート番号の情報を取得し、
    前記指定要求受付手段は、前記エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCのうち、前記異なる情報処理装置において構築される仮想PLCを指定する指定要求を受け付け、
    前記接続情報応答手段は、前記指定要求に係る、前記異なる情報処理装置において構築される仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答し、
    前記情報処理装置が前記従属モードに設定されると、
    前記構築手段は、前記管理モードに設定された前記異なる情報処理装置からの指示に従い、前記仮想PLCシステムの仮想PLCの少なくともいずれかを構築し、
    前記割当手段は、前記従属モードに設定された前記情報処理装置において構築される仮想PLCに、前記従属モードに設定された前記情報処理装置のIPアドレスと、前記従属モードに設定された前記情報処理装置において未使用のポートのポート番号と、を割り当てる、
    シミュレーション装置。
  7. ユーザの操作に基づいて、PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を生成する構成情報生成手段と、
    前記構成情報を取得する構成情報取得手段と、
    前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段と、
    前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記仮想PLCシステムを構築するシミュレーション装置が実現される情報処理装置のIPアドレスと、前記情報処理装置において未使用のポートのポート番号と、を割り当てる割当手段と、
    前記情報処理装置と異なる情報処理装置において実現されるエンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求であって、IPアドレス及びポート番号を含まない指定要求を受け付ける指定要求受付手段と、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段と、を備える、
    シミュレーションシステム。
  8. ユーザの操作に基づいて、PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を生成する構成情報生成手段と、
    前記構成情報を取得する構成情報取得手段と、
    前記構成情報に基づいて、前記仮想PLCシステムを構築する構築手段と、
    前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記仮想PLCシステムを構築するシミュレーション装置が実現される情報処理装置のIPアドレスと、前記情報処理装置において未使用のポートのポート番号と、を割り当てる割当手段と、
    エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付ける指定要求受付手段と、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する接続情報応答手段と、
    前記情報処理装置からの指示に従って前記情報処理装置と異なる情報処理装置に前記仮想PLCを構築させる管理モード、又は、前記異なる情報処理装置からの指示に従って前記仮想PLCを構築する従属モードに、前記情報処理装置を設定する設定手段と、を備え、
    前記情報処理装置が前記管理モードに設定されると、
    前記構成情報取得手段は、前記構成情報を取得し、
    前記構築手段は、前記構成情報取得手段により取得された構成情報が示す仮想PLCシステムに含まれる仮想PLCの少なくともいずれかを、前記従属モードに設定された前記異なる情報処理装置に構築させ、
    前記割当手段は、
    前記管理モードに設定された前記情報処理装置において構築される仮想PLCに、前記管理モードに設定された前記情報処理装置のIPアドレスと、前記管理モードに設定された前記情報処理装置において未使用のポートのポート番号と、を割り当て、
    前記従属モードに設定された前記異なる情報処理装置において構築される仮想PLCに割り当てられたIPアドレス及びポート番号の情報を取得し、
    前記指定要求受付手段は、前記エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCのうち、前記異なる情報処理装置において構築される仮想PLCを指定する指定要求を受け付け、
    前記接続情報応答手段は、前記指定要求に係る、前記異なる情報処理装置において構築される仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答し、
    前記情報処理装置が前記従属モードに設定されると、
    前記構築手段は、前記管理モードに設定された前記異なる情報処理装置からの指示に従い、前記仮想PLCシステムの仮想PLCの少なくともいずれかを構築し、
    前記割当手段は、前記従属モードに設定された前記情報処理装置において構築される仮想PLCに、前記従属モードに設定された前記情報処理装置のIPアドレスと、前記従属モードに設定された前記情報処理装置において未使用のポートのポート番号と、を割り当てる、
    シミュレーションシステム
  9. 構成情報取得手段が、PLCシステムの動作を模擬する仮想PLCシステムの構成を示す構成情報を取得し、
    構築手段が、前記構成情報に基づいて、前記仮想PLCシステムを構築し、
    割当手段が、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCに、前記仮想PLCシステムを構築するシミュレーション装置が実現される情報処理装置のIPアドレスと、前記情報処理装置において未使用のポートのポート番号と、を割り当て、
    指定要求受付手段が、前記情報処理装置と異なる情報処理装置において実現されるエンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求であって、IPアドレス及びポート番号を含まない指定要求を受け付け、
    接続情報応答手段が、前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答する、
    シミュレーション方法。
  10. 設定手段が、PLCシステムの動作を模擬する仮想PLCシステムを構築するシミュレーション装置が実現される情報処理装置からの指示に従って前記情報処理装置と異なる情報処理装置に前記仮想PLCシステムに含まれる仮想PLCを構築させる管理モード、又は、前記異なる情報処理装置からの指示に従って前記仮想PLCを構築する従属モードに、前記情報処理装置を設定し、
    前記情報処理装置が前記管理モードに設定されると、
    構成情報取得手段が、前記仮想PLCシステムの構成を示す構成情報を取得し、
    構築手段が、前記構成情報に基づいて、前記仮想PLCシステムを構築し、前記構成情報に基づいて構築する仮想PLCシステムに含まれる仮想PLCの少なくともいずれかを、前記従属モードに設定された前記異なる情報処理装置に構築させ、
    割当手段が、
    前記管理モードに設定された前記情報処理装置において構築される仮想PLCに、前記管理モードに設定された前記情報処理装置のIPアドレスと、前記管理モードに設定された前記情報処理装置において未使用のポートのポート番号と、を割り当て、
    前記従属モードに設定された前記異なる情報処理装置において構築される仮想PLCに割り当てられたIPアドレス及びポート番号の情報を取得し、
    指定要求受付手段が、エンジニアリングツールから、前記構成情報が示す仮想PLCシステムに含まれる仮想PLCを指定する指定要求を受け付け、
    接続情報応答手段が、
    前記指定要求に係る仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答し、
    前記指定要求が、前記異なる情報処理装置において構築される仮想PLCを指定する指定要求の場合、当該指定要求に係る、前記異なる情報処理装置において構築される仮想PLCに割り当てられたIPアドレス及びポート番号が含まれる接続情報を、前記エンジニアリングツールに応答し、
    前記情報処理装置が前記従属モードに設定されると、
    前記構築手段は、前記管理モードに設定された前記異なる情報処理装置からの指示に従い、前記仮想PLCシステムの仮想PLCの少なくともいずれかを構築し、
    前記割当手段は、前記従属モードに設定された前記情報処理装置において構築される仮想PLCに、前記従属モードに設定された前記情報処理装置のIPアドレスと、前記従属モードに設定された前記情報処理装置において未使用のポートのポート番号と、を割り当てる、
    シミュレーション方法。
JP2023500424A 2022-08-01 2022-08-01 シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法 Active JP7297178B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/029446 WO2024028932A1 (ja) 2022-08-01 2022-08-01 シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法

Publications (1)

Publication Number Publication Date
JP7297178B1 true JP7297178B1 (ja) 2023-06-23

Family

ID=86850211

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023500424A Active JP7297178B1 (ja) 2022-08-01 2022-08-01 シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法

Country Status (2)

Country Link
JP (1) JP7297178B1 (ja)
WO (1) WO2024028932A1 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005063425A (ja) * 2003-07-25 2005-03-10 Omron Corp シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品およびテスト入力ラダープログラム生成方法ならびにラダープログラムの検証方法
JP2008293488A (ja) * 2007-04-27 2008-12-04 Omron Corp Plcのシミュレーション装置
WO2019049195A1 (ja) * 2017-09-05 2019-03-14 三菱電機株式会社 シミュレーション装置およびシミュレーション方法
JP2019114263A (ja) * 2017-12-22 2019-07-11 キーランド テクノロジー カンパニー リミテッド ソフトウェア定義plcの監視及び再構成方法及び装置
WO2019220605A1 (ja) * 2018-05-17 2019-11-21 三菱電機株式会社 シミュレーション装置およびシミュレーションプログラム
WO2020166026A1 (ja) * 2019-02-14 2020-08-20 三菱電機株式会社 管理装置、管理システム、管理方法及びプログラム
WO2021033356A1 (ja) * 2019-08-19 2021-02-25 オムロン株式会社 制御システムおよび制御方法
JP2021060857A (ja) * 2019-10-08 2021-04-15 横河電機株式会社 通信処理装置、通信処理方法、およびプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067036A (ja) * 2001-08-27 2003-03-07 Toshiba Corp コントローラシミュレーション装置および制御システムシミュレーション装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005063425A (ja) * 2003-07-25 2005-03-10 Omron Corp シミュレーション支援ツールおよびラダープログラムの検証システムならびにプログラム製品およびテスト入力ラダープログラム生成方法ならびにラダープログラムの検証方法
JP2008293488A (ja) * 2007-04-27 2008-12-04 Omron Corp Plcのシミュレーション装置
WO2019049195A1 (ja) * 2017-09-05 2019-03-14 三菱電機株式会社 シミュレーション装置およびシミュレーション方法
JP2019114263A (ja) * 2017-12-22 2019-07-11 キーランド テクノロジー カンパニー リミテッド ソフトウェア定義plcの監視及び再構成方法及び装置
WO2019220605A1 (ja) * 2018-05-17 2019-11-21 三菱電機株式会社 シミュレーション装置およびシミュレーションプログラム
WO2020166026A1 (ja) * 2019-02-14 2020-08-20 三菱電機株式会社 管理装置、管理システム、管理方法及びプログラム
WO2021033356A1 (ja) * 2019-08-19 2021-02-25 オムロン株式会社 制御システムおよび制御方法
JP2021060857A (ja) * 2019-10-08 2021-04-15 横河電機株式会社 通信処理装置、通信処理方法、およびプログラム

Also Published As

Publication number Publication date
WO2024028932A1 (ja) 2024-02-08

Similar Documents

Publication Publication Date Title
JP6014274B2 (ja) 複数のバーチャルマシーンをマッピングする方法及びシステム並びにクライアント装置
WO2015114745A1 (ja) 計算機及び計算機のi/o制御方法
JPWO2009104400A1 (ja) 情報処理装置、情報処理システム、設定プログラム送信方法及びサーバ設定プログラム
US9336032B2 (en) Zoning data to a virtual machine
TW201403505A (zh) 可提供互動式排隊之系統及方法及其相關電子裝置
JP7297178B1 (ja) シミュレーションプログラム、シミュレーション装置、シミュレーションシステム及びシミュレーション方法
CN108351638A (zh) 可编程显示器、信息处理装置、画面数据创建辅助程序及画面显示系统
KR20110060643A (ko) 가상화 시스템 상에서 영상장치를 할당 및 해제하기 위한 장치 및 방법
CN112153135B (zh) 一种网络扫描方法、装置、设备及存储介质
JP2016173741A (ja) 情報処理装置、情報処理方法、及び、プログラム
CN115220869A (zh) 资源配置方法、装置、设备、介质
JP5987947B2 (ja) 機器管理システム、機器、機器管理方法およびプログラム
CN109729182A (zh) 虚拟网络功能的网络地址分配方法、系统和 vnfm
WO2020255309A1 (ja) 命令変換装置、方法、及びプログラム
JP7178912B2 (ja) ネットワークドライブ割当方法及び中央装置
CN116383127B (zh) 节点间通信方法、装置、电子设备及存储介质
JP6562419B2 (ja) 情報処理装置、及び情報処理システム
JP2016139273A (ja) 連携システム、連携プログラムおよび連携方法
CN111034205A (zh) 内容调度装置及方法
TWI615720B (zh) 資源分配系統、設備分配控制器以及設備識別方法
JP5779882B2 (ja) 機器管理システム、機器、機器管理方法およびプログラム
CN115361238B (zh) 一种网络通信方法、终端及存储介质
JP7320659B1 (ja) 情報処理システム及び情報処理方法
KR101001035B1 (ko) 터미널 환경의 서버 기반 컴퓨팅 시스템에서 다수의 사용자가 동일 ip접속으로 동일 응용 프로그램 실행시 충돌 오류를 방지하기 위한 가상 ip의 동적 할당 방법 및이를 위한 터미널 서버 장치
WO2017037814A1 (ja) 表示制御装置及び表示制御方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230105

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230105

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230407

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230613

R150 Certificate of patent or registration of utility model

Ref document number: 7297178

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150