JP6939665B2 - ネットワークシステム - Google Patents
ネットワークシステム Download PDFInfo
- Publication number
- JP6939665B2 JP6939665B2 JP2018047601A JP2018047601A JP6939665B2 JP 6939665 B2 JP6939665 B2 JP 6939665B2 JP 2018047601 A JP2018047601 A JP 2018047601A JP 2018047601 A JP2018047601 A JP 2018047601A JP 6939665 B2 JP6939665 B2 JP 6939665B2
- Authority
- JP
- Japan
- Prior art keywords
- plc
- master device
- cycle
- network
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/4015—Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/052—Linking several PLC's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/054—Input/output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/4026—Bus for use in automation systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Programmable Controllers (AREA)
- Small-Scale Networks (AREA)
Description
ただし、その場合には、新たな設備投資が必要となり、分割後の各ネットワークシステムの通信の周期とこれらネットワークシステムを制御する複数のPLCの制御の周期を相互に同期させるための設計作業が必要になる。
請求項2に記載の発明は、前記第2のマスタ装置は、第2のスレーブ装置からデータを受信して第2の処理を実行する処理と、当該第2のスレーブ装置に対してデータを送信する処理とが実行されない空き時間を利用して、前記第1のマスタ装置からのデータの受信と、前記第1の処理の残りに対応する処理と、当該第1の処理の残りに対応する前記結果の当該第1のマスタ装置への送信とを実行する、請求項1に記載のネットワークシステムである。
請求項3に記載の発明は、前記周期は、基準とする周期に対して定数倍の長さを有する、請求項1又は2に記載のネットワークシステムである。
請求項4に記載の発明は、前記第2のマスタ装置が前記第1の処理の残りとして実行する処理には、周期の長さが異なる複数の処理が含まれる、請求項1又は2に記載のネットワークシステムである。
請求項5に記載の発明は、前記第2のマスタ装置を複数用いる場合、同じ周期の長さを有する複数の処理のそれぞれが、異なる第2のマスタ装置に割り当てられる、請求項1又は2に記載のネットワークシステムである。
請求項6に記載の発明は、前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、周期の長さが異なる処理を実行する、請求項1又は2に記載のネットワークシステムである。
請求項7に記載の発明は、前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、異なるタスクに対応する処理を実行する、請求項1又は2に記載のネットワークシステムである。
請求項8に記載の発明は、前記第2のマスタ装置は、前記第2の処理の実行と、前記第1の処理の残りに対応する処理の実行とを、前記周期内に実行する、請求項2に記載のネットワークシステムである。
請求項9に記載の発明は、前記第1のマスタ装置は、前記第1の処理の残りに対応する結果を前記第2のマスタ装置から受信するまで、前記第1の処理のうち当該結果を利用する処理を中断する、請求項1又は2に記載のネットワークシステムである。
請求項10に記載の発明は、前記第1の処理が対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する請求項1に記載のネットワークシステムである。
請求項11に記載の発明は、前記第1の処理が対応する周期内に収まり、かつ、前記第2の処理についても対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する請求項2に記載のネットワークシステムである。
請求項2記載の発明によれば、既設の第2のマスタ装置の処理能力を有効に活用できる。
請求項3記載の発明によれば、基準とする周期の定数倍の長さを有する周期内に処理すべき第1の処理が増加しても対応する周期内に処理を終わらせることができる。
請求項4記載の発明によれば、1台の第2のマスタ装置で複数の周期に対応する複数の処理を分担できる。
請求項5記載の発明によれば、複数台の第2のマスタ装置に1つの周期に対応する複数の処理を分散できる。
請求項6記載の発明によれば、複数台の第2のマスタ装置に複数の周期に対応する複数の処理を分散できる。
請求項7記載の発明によれば、複数台の第2のマスタ装置で異なるタスクの実行を分担できる。
請求項8記載の発明によれば、第2のマスタ装置の既存の処理スケジュールの部分はそのままに第1のマスタ装置における第1の処理の一部を第2のマスタ装置で分担できる。
請求項9記載の発明によれば、処理の一部を第2のマスタ装置に分担させる場合でも1つの周期内で処理動作を収めることができる。
請求項10記載の発明によれば、ネットワークの分割や新たな設計作業を不要にできる。
請求項11記載の発明によれば、ネットワークの分割や新たな設計作業を不要にできる。
<増設前のネットワークシステムの構成例>
図1は、増設前のネットワークシステム1A(以下「ネットワークシステム1A」という)の構成例を示す図である。
ネットワークシステム1Aは、ノード間の通信に、リアルタイムでの応答性や高い耐久性が要求されるプロセスオートメーションの分野、ファクトリーオートメーションの分野、モーションコントロールの分野等での使用を想定する。
産業用ネットワークは、前述したプロセスオートメーション、ファクトリーオートメーション、モーションコントロール等に用いられるネットワークの総称である。
ここでは、2つの産業用ネットワークのうちの一方を第1の産業用ネットワーク10Aと呼び、他方を第2の産業用ネットワーク10Bと呼ぶ。
第1の産業用ネットワーク10Aには、分岐スレーブ12Aが2つ設けられており、個々の分岐スレーブ12Aには複数のデバイス11Aが直列に接続されている。各ラインに対応する複数のデバイス11Aは、通信ケーブル11Cを通じて互いに接続されている。第1の産業用ネットワーク10Aを複数のラインに分割することで、デバイス11Aに故障が生じた場合でも、故障の影響が及ぶ範囲を限定することができる。
換言すると、PLC20Aは、デバイス11Aの制御やデバイス11Aで発生される情報の収集に用いられる。
PLC20Aは、デバイス11Aに対するマスタ装置として動作する。なお、デバイス11AはPLC20Aに対するスレーブ装置として動作する。
図1に示すように、第1の産業用ネットワーク10Aのマスタ装置は1つである。
ただし、図1における第2の産業用ネットワーク10Bは、単一のライン上に複数のデバイス11Bを直列に接続して構成される。
デバイス11Bも、例えばモータ、アクチュエータ、信号やデータを入力又は出力する入出力機器、各種のセンサ、センサ通信ユニット、インバータ、サーボ等である。ここでのデバイス11Bは、デイジーチェーン接続されている。
PLC20Bは、デバイス11Bに対するマスタ装置として動作する。なお、デバイス11BはPLC20Bに対するスレーブ装置として動作する。
図1に示すように、第2の産業用ネットワーク10Bのマスタ装置は1つである。
また、PLC20Aは、第1のマスタ装置の一例であり、PLC20Bは、第2のマスタ装置の一例である。
また、デバイス11Aは、第1のスレーブ装置の一例であり、デバイス11Bは、第2のスレーブ装置の一例である。
なお、第1の産業用ネットワーク10Aと第2の産業用ネットワーク10Bの物理的なネットワーク構成や論理的なネットワーク構成(トポロジー)は任意であり、図1の構成に限らない。
第1の産業用ネットワーク10Aと第2の産業用ネットワーク10Bを構成するデバイス11A及び11Bの種類や個数も任意である。
EtherCATを用いた接続により、PLC20Aによる制御の周期と第1の産業用ネットワーク10A上における通信の周期との同期が確保される。また、PLC20Bによる制御の周期と第2の産業用ネットワーク10B上における通信の周期との同期が保証される。
一方、スレーブ装置として動作するデバイス11Aは、受信したフレームに含まれる自機を宛先とするデータの読み出しと、前フレームの通過後に発生したデータの書き込みを実行する。すなわち、各デバイス11Aは、フレームが自機を通過する瞬間にそれぞれのデータを交換する。この動作はオンザフライと呼ばれる。
規格上、第1の産業用ネットワーク10Aには、最大で65535台のデバイス11Aを接続することができる。
第2の産業用ネットワーク10Bを構成するPLC20B及びデバイス11Bについても同様である。
以下では、代表して、PLC20Aについて説明する。
PLC20Aは、演算プロセッサ(CPU:Central Processing Unit)21、システムプログラムメモリ22、ユーザプログラムメモリ23、パラメータメモリ24、ワークメモリ25、入出力メモリ(I/Oメモリ)26、通信インタフェース(通信I/F)27、入出力インタフェース(入出力I/F)28等により構成されている。
システムプログラムメモリ22は、システムプログラムを記憶するメモリである。
ユーザプログラムメモリ23は、ユーザが作成したユーザプログラム(ここではPLC20Aの実行プログラム)を記憶するメモリである。
パラメータメモリ24は、PLC20Aにおける各種の演算や処理で使用する各種のパラメータを記憶するメモリである。
ワークメモリ25は、各種の演算や処理で使用するデータを一時的に記憶するメモリである。
入出力メモリ(I/Oメモリ)26は、プログラムの実行を通じて入出力される情報の代用として参照や書き換えに用いられるメモリである。入出力メモリ26には、プログラムブロック毎のパラメータも格納される。
本実施の形態の場合、PLC20Aと第1の産業用ネットワーク10Aとの通信には、約200Mの通信帯域を有するEtherCATを使用する。
PLC20Aと管理用のコンピュータとの通信には、例えば産業用のオープンネットワークであるEtherNet/IP(登録商標)を使用する。管理用のコンピュータとの通信は、非同期でよく、通信速度も高速である必要はない。
入出力インタフェース28は、入力装置や出力装置との接続に使用される通信ポートで構成される。
以下では、制御シーケンスの代表例としてPLC20Aの動作を説明する。
PLC20Aで実行される処理(以下「タスク」という)は、処理の実行に割り当てられる周期(サイクル)の違いにより区別される。本実施の形態では、周期が最短のタスクを基準タスクという。他のタスクは、定周期タスクという。定周期タスクの周期は、基準タスクの周期(基準周期)の定数倍(2倍、3倍…)で与えられる。
本実施の形態では、タスク間に優先度が設定されており、優先度が高いほど短い周期が割り当てられる。従って、基準タスクは最も優先度が高いタスクである。図3には、基準タスクの他に、実行優先度が5番目、16番目、17番目の定周期タスクと、システムサービスとを表している。
各タスクは、実行条件の成立により開始される。定周期タスクの一部は、他のタスクの開始や完了をトリガとする。図3に示すように、各タスクは、各デバイス11Aとの間でデータを送受信する期間(IO)と、各デバイス11Aから受信したデータをユーザプログラムの実行を通じて処理する期間(UPG)と、モーション制御の実行期間(MC)とで構成される。このうち、モーション制御の実行期間(MC)では、ユーザプログラムに含まれるモーション制御命令からの指示が実行される。なお、IOは、後述するI/Oリフレッシュ期間の略である。
図4に示すように、1つのタスクは、先頭側から順番に、I/Oリフレッシュ期間31と制御処理期間32の2つで構成される。
I/Oリフレッシュ期間31は、先頭側から順番に、通信インタフェース27(図2参照)によるデータの送信に備える出力データ処理31Aと、通信インタフェース27から第1の産業用ネットワーク10Aへのデータの送信と第1の産業用ネットワーク10Aからのデータの受信とを実行するリフレッシュ実行31Bと、各タスクの実行に関する条件式との一致の判定や通信インタフェース27から受信したデータの取り込み等を実行する入力データ処理31Cとで構成される。
制御処理期間32は、先頭側から順番に、1つ目のシステム共通処理32Aと、ユーザプログラム(UPG)実行32Bと、モーション制御(MC)32Cと、2つ目のシステム共通処理32Dとで構成される。
システム共通処理では、自己診断(例えば故障の検知など)が実行される。
図5は、増設後のネットワークシステム1B(以下「ネットワークシステム1B」という)の構成例を説明する図である。
図5には、図1と対応する部分に対応する符号を付している。
ネットワークシステム1Bがネットワークシステム1A(図1参照)と異なる点は、ネットワークシステム1Bでは、第1の産業用ネットワーク10Aのライン数がネットワークシステム1A(図1参照)のライン数よりも増えている点である。図5では、増設されたライン部分を太枠の破線で示している。
また、新たなプログラムの追加やプログラムの更新に伴ってプログラムの格納に必要なデータサイズが増加する場合には、PLC20Aに、これらのプログラムの記憶に必要なメモリ資源が必要になる。
メモリ資源の不足とは、デバイス11Aの制御に使用するプログラムを記憶するための容量が不足することをいう。
演算能力の不足とは、対応する周期(サイクル)内にタスク(IOリフレッシュ、共通処理、プログラム実行処理、周辺サービス処理など)が終わらないことをいう。
本実施の形態では、第1の産業用ネットワーク10Aを制御するPLC20Aを主PLCと呼び、第2の産業用ネットワーク10Bを制御するPLC20Bを補助PLCと呼ぶ。
条件の1つ目は、PLC20Bの演算能力に余力があることである。PLC20Bは、第2の産業用ネットワーク10Bを制御する必要があり、この制御に支障が及ぶようでは、補助PLCとして動作させることはできない。
条件の2つ目は、演算能力の余力が、代行する処理(PLC20Aの演算能力を超える部分)に要求される演算能力よりも大きいことである。なお、PLC20Bだけでは演算能力が不足する場合には、更なる補助PLCの設定を検討する。
ここでの高速/同期ネットワーク30には、例えばIEEE802.1のTSN(Time Sensitive Networking)タスクグループによって規格化が進められているTSN規格を使用する。TSN規格は、例えば1Gビット/秒以上の帯域幅での通信と、数十ナノ秒以内でのノード間(すなわち、PLC間)の同期とを実現できる。
すなわち、高速/同期ネットワーク30は、主PLC(PLC20A)における制御の周期と補助PLC(PLC20B)の制御の周期と通信の周期とを互いに同期させる。
もっとも、一部分の処理は、プログラムの全体である必要はない。例えば一部分の処理は、分割可能な演算処理の単位であれば、画像解析アルゴリズムの演算処理の一部でもよい。
主PLCの制御シーケンスでは、補助PLCが代行する処理で必要になるデータを補助PLCに送信する期間(入力データ送信50)と、補助PLCが代行した処理の結果を補助PLCから受信する期間(処理結果受信51)とが、同じタスク内に配置される。
換言すると、主PLCは、ある周期(第N周期)に受信したデータに対する処理の結果(補助PLCでの処理の結果を含む)を次の周期(第N+1周期)の送信に反映することができる。
ただし、主PLCにおけるIOリフレッシュ期間(IO処理)31や補助PLCにおけるIOリフレッシュ期間(不図示)の処理に影響しないことが前提となる。影響が及ぶと、デバイス11A及び11Bとのデータの送受信が正しく行われなくなる。
従って、補助PLCが代行した処理の結果をそのまま次の周期(第N+1周期)の送信に用いることができる場合には、期間52を配置する必要はない。このため、図6では、期間52を破線で示している。
これらの処理は、補助PLCが優先的に実行すべきデバイス11B(図5参照)の制御に用いられていない期間を利用して実行される。従って、各期間は連続しているとは限らない。例えば入力データ受信60とユーザプログラム実行(UPG処理61)とは時間的に離れていてもよい。また、モーション制御実行(MC処理62)と処理結果送信63とは時間的に離れていてもよい。
なお、分担する処理によっては、ユーザプログラム実行(UPG処理61)及びモーション制御実行(MC処理62)のうち一方だけが実行されてもよい。
続いて、増設後の第1の産業用ネットワーク10A(図5参照)の運用を開始する前に実行する事前準備について説明する。
図7は、既設のPLC20Aを主PLCとし、既設の他のPLC20Bを補助PLCとして利用するための事前準備の際に使用するシステム構成の一例を示す図である。
図7に示すように、PLC20AとPLC20Bは、コンピュータ40に接続されている。
コンピュータ40では、後述する負荷シミュレーションを通じて各PLCで使用する制御シーケンスを決定する処理が実行される。
また、コンピュータ40では、決定された制御シーケンスをPLC20A及び20Bにダウンロードする処理も実行される。
事前準備に必要な情報は、設定用のコンピュータ41やクラウド上のデータベース42を通じてコンピュータ40に取り込まれる。
ここで、事前準備に必要な情報は、例えばPLC20A及び20Bのハードウェア上の性能、PLC20A及び20Bで実行させる制御処理の内容、第1の産業用ネットワーク10Aと第2の産業用ネットワーク10Bの構成、個々の制御が満たすべき条件などである。
コンピュータ40は、負荷シミュレータ(プログラム)に取り込んだ情報を与えて負荷シミュレーションを実行し、PLC20AとPLC20Bのそれぞれに対して設定の情報(制御シーケンスやプログラム等)43及び44をダウンロードする。情報43は主PLC用であり、情報44は補助PLC用である。
まず、ユーザは、コンピュータ40(図7参照)を操作して負荷シミュレータを実行させ、主PLCの処理の一部を補助PLCで代行させるための設定を決定する(ステップ1)。この動作の詳細については後述する。
設定が決定すると、ユーザは、ネットワークシステム1B(図5参照)を停止させる(ステップ2)。具体的には、主PLCとして動作させるPLC20A(図5参照)が制御する第1の産業用ネットワーク10A(図5参照)と、補助PLCとして動作させるPLC20B(図5参照)が制御する第2の産業用ネットワーク10B(図5参照)が停止される。
次に、ユーザは、コンピュータ40を操作して、決定した設定を主PLCとして動作するPLC20Aと補助PLCとして動作するPLC20Bにそれぞれダウンロードする(ステップ4)。
ダウンロードが終了すると、ユーザは、ネットワークシステム1Bの試運転を実行する(ステップ5)。試運転に成功すると、ユーザは、ネットワークシステム1Bを本運転に切り替える(ステップ6)。
まず、負荷シミュレータは、補助PLCとして使用するPLCの指定を受け付ける(ステップ11)。
次に、負荷シミュレータは、主PLCの制御処理の一部を補助PLCに割り当てる(ステップ12)。割り当ての対象には、例えばユーザプログラム、モーション制御演算処理、安全制御処理、画像解析処理などがある。割り当てられる処理は無作為に決定される。ここでの割り当ては、分割可能な単位であればよく、処理の一部でよい。なお、同期設定は、増設前と同じである。
続いて、負荷シミュレータは、主PLCにおける制御タスクの処理時間を計算する(ステップ14)。
処理時間が計算されると、負荷シミュレータは、処理時間がタスク周期内に収まるか否かを判定する(ステップ15)。
ステップ15で否定結果が得られた場合、負荷シミュレータは、ステップ12に戻り、補助PLCに割り当てる制御処理の一部を変更する。この変更は、ステップ15で肯定結果が得られるまで繰り返される。
ここで、補助PLCの処理結果を主PLCが演算に使用する場合(図6の処理52がある場合)には、補助PLCの制御周期の設定が主PLCの制御周期に収まるかについても確認される。なお、同期設定は、増設前と同じである。
続いて、負荷シミュレータは、補助PLCにおける制御タスクの処理時間を計算する(ステップ17)。
処理時間が計算されると、負荷シミュレータは、処理時間がタスク周期内に収まるか否かを判定する(ステップ18)。
ステップ18で否定結果が得られた場合、負荷シミュレータは、別の補助PLCを追加し(ステップ19)、その後、ステップ16に戻る。この際、1つ目の補助PLCがタスク周期を満たす範囲で引き受け可能な制御処理が決定され、残りを追加する補助PLCに割り当てる。なお、主PLCの制御処理を分担できる補助PLCを探してもよい。
図10は、増設後のネットワークシステム1B(図5参照)を構成する主PLC(PLC20A)の制御シーケンスと補助PLC(PLC20B)の制御シーケンスの関係の一例を説明する図である。
図10の場合、主PLCでは、2種類のタスク(基準タスクと定周期タスク)が実行され、補助PLCでは、1種類のタスク(基準タスク)が実行されている。なお、図示しているタスクは、主PLCと補助PLCで実行されるタスクの一部である。
また、図10の場合、主PLCで実行される定周期タスク(非基準タスク)の処理の一部を、補助PLCに割り当てている。
また、補助PLCのタスク内のうちIOリフレッシュ期間(IO処理)の直後に配置されるユーザプログラム処理(UPG処理)とモーション制御処理(MC処理)は第2の処理の一例である。
この例の場合、補助PLCは、データを受信した基準周期で、マスタ装置としてのタスク処理を完了した後に、代行する処理60〜63(図6参照)を実行している。また、主PLCは、同じタスク周期内に、処理の結果を受信している。
このため、主PLCは、ラインを増設する前の制御シーケンスを基本的に維持したまま、第1の産業用ネットワーク10A(図5参照)の制御に支障は生じない。
また、補助PLCも、代行する処理を含め、基準タスクを基準周期内に完了できる。このため、補助PLCによる第2の産業用ネットワーク10B(図5参照)の制御に支障は生じない。
また、図10では、主PLCにおける定周期タスクの実行が完了した後に、補助PLCから処理結果の通知を受信している場合があるが、これは、定周期タスクの処理時間が変動するために生じている。因みに、定周期タスクの処理時間の変動は、基準タスクよりも優先順位が低いことで発生する。
このような変動があっても、補助PLCからの処理結果の受信や処理結果を利用したユーザプログラム(UPG)やモーション制御(MC)の実行が、1つのタスク周期内に完了するように、コンピュータ40(図7参照)は、制御シーケンスを決定する。想定される処理時間の変動分は、コンピュータ40が計算してもよいし、ユーザが予めコンピュータ40に指示してもよい。
また、本実施の形態の場合、第1の産業用ネットワーク10Aを複数に分割せずに済むので、敷設されたネットワークを変更する作業、分割後のネットワークでマスタとして動作する複数のPLC装置間で制御を同期させるための設計作業が不要になる。
なお、本実施の形態でも、事前に、主PLCのどの処理を補助PLCに代行させるかを決定する処理が必要になる。しかし、この処理自体は、図9を用いて説明したように、コンピュータ40が実行する。
なお、補助PLCで代行される処理の結果を主PLCのユーザプログラム(UPG)やモーション制御(MC)で利用する必要がある場合には、補助PLCからのデータを受信した後(受信期間51(図6参照)の後)に、補助PLCで代行する処理をユーザプログラム(UPG)やモーション制御(MC)を実行する期間52(図6参照)を設ければよい。
<ネットワークシステムの構成>
図11は、増設後のネットワークシステム1C(以下「ネットワークシステム1C」という)の他の構成例を説明する図である。
図11には、図5との対応部分に対応する符号を付して示している。
図11も、第1の産業用ネットワーク10Aにラインが増設されている。従って、第1の産業用ネットワーク10Aのマスタ装置として動作するPLC20Aが主PLCとして使用される。
この実施の形態の特徴は、補助PLCとして既設のPLCを用いない点である。このため、図11では、補助PLCとして用いられるPLC20Cにネットワークが接続されていない。
すなわち、実施の形態2では、補助PLC専用のPLC20Cを新たに追加する場合について説明する。
図12は、増設後のネットワークシステム1C(図11参照)を構成する主PLC(PLC20A)の制御シーケンスと補助PLC(PLC20C)の制御シーケンスとの関係の一例を説明する図である。
図12の場合、主PLCでは、2種類のタスク(基準タスクと定周期タスク)が実行されているが、補助PLCにはタスクは実行されていない。
図12の場合も、定周期タスクに対応するタスク周期は、基準周期の2倍である。なお、図12では、主PLCで実行されるタスクの一部のみを表している。
図12の場合、主PLCで実行される基準タスクの処理の一部と、定周期タスク(非基準タスク)の処理の一部の両方を、1台の補助PLCに割り当てている。
図12の場合、基準タスクの一部の処理の結果の通知は、基準タスクの実行に支障が生じないように実行されていればよく、定周期タスクの一部の処理の結果の通知は、定周期タスクの実行に支障が生じないように実行されていればよい。
この動作例の場合、専用の補助PLCを1台で用意すればよいので、追加の配線や制御シーケンスの決定が容易である。
すなわち、図13に示す制御シーケンスは、補助PLCを2台用意する点で前述の動作例と異なっている。
図13の場合も、主PLCでは、2種類のタスク(基準タスクと定周期タスク)が実行されているが、補助PLCであるPLC20C1とPLC20C2ではタスクが実行されていない。
図13の場合も、定周期タスクに対応するタスク周期は、基準周期の2倍である。なお、図13では、主PLCで実行されるタスクの一部のみを表している。
この場合、補助PLCとして動作するPLC20C1とPLC20C2のそれぞれに要求される性能は1台の補助PLCを用いる場合よりも低く済む。このため、既存の設備の有効活用が可能になる。
以上、本発明の実施の形態について説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。前述した実施の形態に、種々の変更又は改良を加えたものも、本発明の技術的範囲に含まれることは、特許請求の範囲の記載から明らかである。
前述の実施の形態の説明では、1つのタスクの一部の処理を1つの補助PLCに分担させているが、1つのタスクの一部の処理を複数の補助PLCに分担させてもよい。
前述の実施の形態の説明では、タスク周期が異なる2つのタスク(すなわち基準タスクと定周期タスク)における処理の一部をそれぞれ異なる補助PLCに分担させているが、タスク周期が同じ複数のタスクにおける処理の一部をそれぞれ異なる補助PLCに割り当ててもよい。
Claims (11)
- 周期毎に、第1のスレーブ装置からデータを受信する処理と、受信したデータを対象とする第1の処理のうちの一部を事前の割り当てに従い実行する処理と、当該第1の処理の残りに対応するデータを事前の割り当てに従い外部に送信するとともに当該第1の処理の残りに対応する結果を受信する処理と、当該第1のスレーブ装置に対して当該第1の処理に対応する結果を送信する処理と、を実行する第1のマスタ装置と、
前記第1のマスタ装置から受信したデータに対する前記第1の処理の残りに対応する前記結果を、前記周期内の前記第1の処理に割り当てられた期間が終了する前に、当該第1のマスタ装置に送信する第2のマスタ装置と、
前記第1のマスタ装置が制御する産業用ネットワークであって、前記第1のスレーブ装置と前記第1のマスタ装置の間でデータを伝送する第1のネットワークと、
前記第1のマスタ装置と前記第2のマスタ装置の間でデータを伝送する第2のネットワークと、
前記第2のマスタ装置が制御する産業用ネットワークであって、第2のスレーブ装置と前記第2のマスタ装置の間でデータを伝送する第3のネットワークと、を有し、
前記第1のネットワークの前記第1のマスタ装置による制御の基準周期と、前記第3のネットワークの前記第2のマスタ装置による制御の基準周期とを互いに同期させる、
ネットワークシステム。 - 前記第2のマスタ装置は、前記第2のスレーブ装置からデータを受信して第2の処理を実行する処理と、当該第2のスレーブ装置に対してデータを送信する処理とが実行されない空き時間を利用して、前記第1のマスタ装置からのデータの受信と、前記第1の処理の残りに対応する処理と、当該第1の処理の残りに対応する前記結果の当該第1のマスタ装置への送信とを実行する、請求項1に記載のネットワークシステム。
- 前記周期は、前記基準周期に対して定数倍の長さを有する、請求項1又は2に記載のネットワークシステム。
- 前記第2のマスタ装置が前記第1の処理の残りとして実行する処理には、周期の長さが異なる複数の処理が含まれる、請求項1又は2に記載のネットワークシステム。
- 前記第2のマスタ装置を複数用いる場合、同じ周期の長さを有する複数の処理のそれぞれが、異なる第2のマスタ装置に割り当てられる、請求項1又は2に記載のネットワーク
システム。 - 前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、周期の長さが異なる処理を実行する、請求項1又は2に記載のネットワークシステム。
- 前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、異なるタスクに対応する処理を実行する、請求項1又は2に記載のネットワークシステム。
- 前記第2のマスタ装置は、前記第2の処理の実行と、前記第1の処理の残りに対応する処理の実行とを、前記周期内に実行する、請求項2に記載のネットワークシステム。
- 前記第1のマスタ装置は、前記第1の処理の残りに対応する結果を前記第2のマスタ装置から受信するまで、前記第1の処理のうち当該結果を利用する処理を中断する、請求項1又は2に記載のネットワークシステム。
- 前記第1の処理が対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する
請求項1に記載のネットワークシステム。 - 前記第1の処理が対応する周期内に収まり、かつ、前記第2の処理についても対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する
請求項2に記載のネットワークシステム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018047601A JP6939665B2 (ja) | 2018-03-15 | 2018-03-15 | ネットワークシステム |
CN201980004229.3A CN111052683B (zh) | 2018-03-15 | 2019-03-08 | 网络系统 |
US16/644,973 US11374788B2 (en) | 2018-03-15 | 2019-03-08 | Network system having master device carrying out part of a process and slave device carrying out remainder of the process |
EP19766839.5A EP3767893B1 (en) | 2018-03-15 | 2019-03-08 | Network system |
PCT/JP2019/009240 WO2019176755A1 (ja) | 2018-03-15 | 2019-03-08 | ネットワークシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018047601A JP6939665B2 (ja) | 2018-03-15 | 2018-03-15 | ネットワークシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019161523A JP2019161523A (ja) | 2019-09-19 |
JP6939665B2 true JP6939665B2 (ja) | 2021-09-22 |
Family
ID=67908229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018047601A Active JP6939665B2 (ja) | 2018-03-15 | 2018-03-15 | ネットワークシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US11374788B2 (ja) |
EP (1) | EP3767893B1 (ja) |
JP (1) | JP6939665B2 (ja) |
CN (1) | CN111052683B (ja) |
WO (1) | WO2019176755A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7589598B2 (ja) | 2021-03-10 | 2024-11-26 | オムロン株式会社 | 制御システム、サポート方法およびプログラム |
JP2024040913A (ja) * | 2022-09-13 | 2024-03-26 | キヤノン株式会社 | システム、その制御方法およびプログラム |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4186383B2 (ja) | 2000-05-12 | 2008-11-26 | オムロン株式会社 | プログラマブルコントローラシステム |
JP4410661B2 (ja) * | 2004-11-09 | 2010-02-03 | 株式会社日立製作所 | 分散制御システム |
JP2007164765A (ja) * | 2005-11-15 | 2007-06-28 | Matsushita Electric Ind Co Ltd | Iicバス通信システム、スレーブ装置およびiicバス通信制御方法 |
KR20070080307A (ko) * | 2006-02-07 | 2007-08-10 | 삼성전자주식회사 | Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법 |
NZ601502A (en) | 2007-08-07 | 2012-11-30 | Ticketmaster Llc | Allowing the resale of an item if a purchase request meets predefined criteria |
KR101257153B1 (ko) * | 2008-02-06 | 2013-04-22 | 지멘스 악티엔게젤샤프트 | 자동화 기법으로 데이터를 직렬 송신하는 그룹 마스터 통신 시스템 및 방법 |
CN101741885A (zh) | 2008-11-19 | 2010-06-16 | 珠海市西山居软件有限公司 | 分布式系统及分布式系统处理任务流的方法 |
JP5423685B2 (ja) | 2008-12-22 | 2014-02-19 | トヨタ自動車株式会社 | 車両用電子制御システム、車両用電子制御ユニット、車両用制御同期方法 |
CN102244913B (zh) * | 2010-05-12 | 2014-11-05 | 华为技术有限公司 | 无线网络的多跳路由协作方法及实现装置 |
JP5218585B2 (ja) * | 2011-03-15 | 2013-06-26 | オムロン株式会社 | 制御装置およびシステムプログラム |
JP5682392B2 (ja) * | 2011-03-22 | 2015-03-11 | 富士通株式会社 | 情報処理装置、制御装置および異常ユニット判定方法 |
JP5467610B2 (ja) * | 2011-07-26 | 2014-04-09 | パナソニック株式会社 | 通信装置、通信システム、通信方法、及び通信プログラム |
CN102387136A (zh) | 2011-10-10 | 2012-03-21 | 深圳中兴网信科技有限公司 | 一种分布式PPT转换成swf的系统及方法 |
DE102012010851A1 (de) * | 2012-05-31 | 2013-12-05 | Robert Bosch Gmbh | Feldbusnetzwerk aufweisend zwei Hauptteilnehmer und wenigstens einen Nebenteilnehmer |
CN103577424B (zh) | 2012-07-24 | 2017-11-07 | 中兴通讯股份有限公司 | 分布式数据库视图的实现方法及系统 |
US9588984B2 (en) * | 2012-12-06 | 2017-03-07 | Empire Technology Development Llc | Peer-to-peer data management for a distributed file system |
DE102013002647B3 (de) * | 2013-02-15 | 2014-05-22 | Audi Ag | Kraftwagen mit einem Fahrzeugkommunikationsbus und Verfahren zum Erzeugen von Busnachrichten |
KR101946455B1 (ko) * | 2013-03-14 | 2019-02-11 | 삼성전자주식회사 | 시스템 온-칩 및 이의 동작 방법 |
CN103428217B (zh) | 2013-08-19 | 2016-05-25 | 中国航空动力机械研究所 | 分布式并行计算的作业分配方法及分配系统 |
JP6233021B2 (ja) * | 2013-12-27 | 2017-11-22 | 株式会社Ihi | 通信分配装置 |
JP6246606B2 (ja) * | 2014-01-31 | 2017-12-13 | 株式会社Screenホールディングス | 基板処理装置 |
US10277417B2 (en) * | 2014-03-04 | 2019-04-30 | Omron Corporation | Control system, control apparatus and control method with input-only communication frame |
KR101622516B1 (ko) * | 2015-04-20 | 2016-05-18 | 엘에스산전 주식회사 | 데이터 송수신 시스템 |
JP2017168994A (ja) | 2016-03-15 | 2017-09-21 | 本田技研工業株式会社 | 通信装置及び通信システム |
CN107025139A (zh) | 2017-03-21 | 2017-08-08 | 北京天云融创软件技术有限公司 | 一种基于云计算的高性能计算调度框架 |
-
2018
- 2018-03-15 JP JP2018047601A patent/JP6939665B2/ja active Active
-
2019
- 2019-03-08 CN CN201980004229.3A patent/CN111052683B/zh active Active
- 2019-03-08 US US16/644,973 patent/US11374788B2/en active Active
- 2019-03-08 EP EP19766839.5A patent/EP3767893B1/en active Active
- 2019-03-08 WO PCT/JP2019/009240 patent/WO2019176755A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US11374788B2 (en) | 2022-06-28 |
JP2019161523A (ja) | 2019-09-19 |
CN111052683B (zh) | 2021-12-07 |
WO2019176755A1 (ja) | 2019-09-19 |
US20210377072A1 (en) | 2021-12-02 |
EP3767893A1 (en) | 2021-01-20 |
EP3767893B1 (en) | 2024-12-18 |
EP3767893A4 (en) | 2021-11-24 |
CN111052683A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3116166B1 (en) | Control system, control device, and control method | |
JP7359199B2 (ja) | 制御システムにおいて実施される方法 | |
US10356006B2 (en) | Control system, development support apparatus, controller, and control method | |
JP2022093387A (ja) | 制御システム、装置および制御方法 | |
JP6939665B2 (ja) | ネットワークシステム | |
EP3471353B1 (en) | Method and apparatus for communication in a motor drive application | |
WO2020054477A1 (ja) | 制御システムおよび制御装置 | |
JP5763961B2 (ja) | 通信装置、通信システム、通信装置の制御方法およびプログラム | |
WO2019082627A1 (ja) | 制御装置、制御装置の制御方法、情報処理プログラム、および記録媒体 | |
EP3764175B1 (en) | Control device and control system | |
JP2015115864A (ja) | データ転送システム及びデータ転送システムの制御方法 | |
JP7034399B1 (ja) | 入力ユニット、制御システム、通信方法及びプログラム | |
Puiu et al. | The synchronous control of nodes and the message time delays estimation for a CAN network | |
CN115145188A (zh) | 具有优化传输时间的高可用性的基于云的自动化方案 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180420 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20180905 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200304 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201208 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210125 |
|
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: 20210803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210816 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6939665 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |