JP6921344B1 - Control system - Google Patents
Control system Download PDFInfo
- Publication number
- JP6921344B1 JP6921344B1 JP2020564497A JP2020564497A JP6921344B1 JP 6921344 B1 JP6921344 B1 JP 6921344B1 JP 2020564497 A JP2020564497 A JP 2020564497A JP 2020564497 A JP2020564497 A JP 2020564497A JP 6921344 B1 JP6921344 B1 JP 6921344B1
- Authority
- JP
- Japan
- Prior art keywords
- program
- control system
- ipc2
- control
- data 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
- 238000012545 processing Methods 0.000 claims abstract description 105
- 238000004519 manufacturing process Methods 0.000 claims abstract description 21
- 238000000034 method Methods 0.000 claims description 28
- 101100190618 Arabidopsis thaliana PLC3 gene Proteins 0.000 description 65
- 101100520231 Caenorhabditis elegans plc-3 gene Proteins 0.000 description 19
- 238000013480 data collection Methods 0.000 description 8
- 238000007405 data analysis Methods 0.000 description 4
- 238000003745 diagnosis Methods 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
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/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- 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
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
制御システム(1)は、生産現場で得られるデータを処理するIPC(2)と、生産現場の機器(4B)をラダープログラムに従ってシーケンス制御するPLC(3)と、を備え、IPC(2)およびPLC(3)は、それぞれ、動作を連携させるための連携部(24,32)を備え、IPC(2)は、PLC(3)が過負荷状態の場合、ラダープログラムの一部をPLC(3)の代わりに実行してPLC(3)とともに機器(4B)をシーケンス制御する。The control system (1) includes an IPC (2) for processing data obtained at the production site and a PLC (3) for sequence-controlling the equipment (4B) at the production site according to a ladder program. The PLC (3) is provided with a linking unit (24, 32) for linking the operations, respectively, and the IPC (2) partially performs a ladder program to the PLC (3) when the PLC (3) is in an overloaded state. ) Is executed to sequence control the device (4B) together with the PLC (3).
Description
本開示は、制御対象機器を制御する制御システムに関する。 The present disclosure relates to a control system that controls a controlled device.
従来、複数のプロセッサを用い、各プロセッサが機器の制御を並行して行うことにより制御処理の高速化、負荷の分散を実現する技術が知られている。特許文献1には、複数の制御用プロセッサを備え、各制御用プロセッサの処理負荷が均等になるよう各制御用プロセッサのプログラムの実行分担を決定する分散制御システムが記載されている。 Conventionally, there has been known a technique that realizes high-speed control processing and load distribution by using a plurality of processors and each processor controls a device in parallel. Patent Document 1 describes a distributed control system including a plurality of control processors and determining the division of program execution of each control processor so that the processing load of each control processor is equalized.
特許文献1に記載の分散制御システムは、それぞれが同じ機能を有する同一種類のプロセッサ間で処理負荷を分散させることはできるが、異なる種類のプロセッサ間で処理負荷を分散させることはできない。例えば、特許文献1に記載の分散制御システムは、制御用プロセッサに加えて、制御用プロセッサに対するプログラムのダウンロード、制御情報のモニタ等を行う上位コントローラを備えているが、制御用プロセッサと上位コントローラとの間で処理負荷を分散させることはできない。すなわち、特許文献1に記載の分散制御システムでは、複数の制御用プロセッサそれぞれの処理負荷が高く、上位コントローラの処理負荷が低い状態のときに、上位コントローラが制御用プロセッサの代わりにプログラムを実行して制御用プロセッサの処理負荷を下げる、といったことはできない。 The distributed control system described in Patent Document 1 can distribute the processing load among the same type of processors, each of which has the same function, but cannot distribute the processing load among different types of processors. For example, the distributed control system described in Patent Document 1 includes, in addition to the control processor, a host controller that downloads a program to the control processor, monitors control information, and the like. The processing load cannot be distributed among them. That is, in the distributed control system described in Patent Document 1, when the processing load of each of the plurality of control processors is high and the processing load of the host controller is low, the host controller executes the program instead of the control processor. It is not possible to reduce the processing load of the control processor.
本開示は、上記に鑑みてなされたものであって、異なる種類の装置間で処理負荷を分散させて機器の制御を行う制御システムを得ることを目的とする。 The present disclosure has been made in view of the above, and an object of the present invention is to obtain a control system that controls a device by distributing a processing load among different types of devices.
上述した課題を解決し、目的を達成するために、本開示にかかる制御システムは、生産現場で得られるデータを処理する電子計算機と、生産現場の機器をラダープログラムに従ってシーケンス制御する制御装置と、を備え、電子計算機および制御装置は、それぞれ、制御装置および自己が実行する一連のデータ処理の流れを示すデータ処理フローに従って動作を連携させるための連携部を備える。電子計算機は、制御装置が過負荷状態になるとラダープログラムの一部を自己が実行可能な形式のプログラムに変換し、変換後のプログラムを実行して行うデータ処理を示す情報をデータ処理フローに挿入してデータ処理フローを変更し、変更後のデータ処理フローに従って、機器のシーケンス制御を制御装置と分担して行う。 In order to solve the above-mentioned problems and achieve the object, the control system according to the present disclosure includes a computer that processes data obtained at the production site, a control device that sequence-controls the equipment at the production site according to a ladder program, and the like. Each of the computer and the control device includes a control device and a coordinating unit for coordinating operations according to a data processing flow indicating a series of data processing flows executed by the computer and the control device. When the control device becomes overloaded, the computer converts a part of the ladder program into a program in a format that can be executed by itself, and inserts information indicating data processing performed by executing the converted program into the data processing flow. Then, the data processing flow is changed, and the sequence control of the device is shared with the control device according to the changed data processing flow.
本開示にかかる制御システムは、異なる種類の装置間で処理負荷を分散させて機器の制御を行うことができる、という効果を奏する。 The control system according to the present disclosure has an effect that the processing load can be distributed among different types of devices to control the devices.
以下に、本開示の実施の形態にかかる制御システムを図面に基づいて詳細に説明する。 Hereinafter, the control system according to the embodiment of the present disclosure will be described in detail with reference to the drawings.
実施の形態.
図1は、実施の形態にかかる制御システムの構成例を示す図である。制御システム1は、産業用コンピュータであるIPC(Industrial Personal Computer)2と、プログラマブルロジックコントローラであるPLC(Programmable Logic Controller)3とを含んで構成される。IPC2には機器4Aが接続され、PLC3には機器4Bが接続される。機器4Aは、例えば、生産現場に設置されたセンサである。機器4Bは、例えば、生産現場に設置されたロボットである。なお、図1に示す例では制御システム1に接続される機器を機器4Aおよび4Bの2台としているが、制御システム1に接続される機器は3台以上であってもよいし、1台でもよい。また、制御システム1に含まれるPLC3は2台以上であってもよい。すなわち、制御システム1は、1台のIPC2に2台以上のPLC3が接続される構成であってもよい。Embodiment.
FIG. 1 is a diagram showing a configuration example of a control system according to an embodiment. The control system 1 includes an IPC (Industrial Personal Computer) 2 which is an industrial computer and a PLC (Programmable Logic Controller) 3 which is a programmable logic controller. The
ここで、制御システム1は、エッジコンピューティング領域又は製造現場領域に位置するシステムである。制御システム1は、生産現場に設置された機器4Aおよび4Bからデータを収集し、収集したデータのデータ処理結果に基づき生産現場の機器4Aおよび4Bに処理結果データをフィードバックする一連の処理を実現するデータ処理プラットフォームを有している。なお、エッジコンピューティング領域とは、クラウドコンピューティングに対して端に位置するコンピューティング領域を意味する概念であり、工場内の製造現場を管理するシステム領域である。エッジコンピューティング領域では、生産現場で得られるデータに対して高度なデータ処理が行われる。なお、エッジコンピューティング領域での高度なデータ処理とは、製造現場でのデータ解析手法に対して高度なデータ解析手法を用いたデータ処理を行う意味であり、例えば、製造現場で表計算ソフトを用いてデータ解析を行うことに対し、エッジコンピューティング領域ではAI(Artificial Intelligence)を活用した予知保全の為のデータ解析を行うことを言う。
Here, the control system 1 is a system located in the edge computing area or the manufacturing site area. The control system 1 realizes a series of processes for collecting data from the
IPC2はデータ処理を目的として設けられている。すなわち、エッジコンピューティング領域において、IPC2はエッジコンピューティングの機器として用いられている。IPC2は生産現場で得られるデータを処理する電子計算機である。一方、PLC3は生産現場の機器の制御を目的として設けられた制御装置であり、ラダープログラムに従って機器のシーケンス制御を行う。IPC2は、センサが取得するデータの他に、例えば、PLC3からもデータを収集し、また、データ処理結果である診断結果に応じた指令を生成してPLC3経由で制御対象機器へ送信する。生産現場のデータの利活用では、IPC2とPLC3との連携が重要となる。 IPC2 is provided for the purpose of data processing. That is, in the edge computing domain, IPC2 is used as an edge computing device. IPC2 is an electronic computer that processes data obtained at the production site. On the other hand, the PLC 3 is a control device provided for the purpose of controlling the equipment at the production site, and performs sequence control of the equipment according to a ladder program. In addition to the data acquired by the sensor, the IPC2 also collects data from, for example, the PLC3, generates a command according to the diagnosis result which is the data processing result, and transmits the command to the controlled device via the PLC3. Cooperation between IPC2 and PLC3 is important for the utilization of data at the production site.
制御システム1においては、IPC2とPLC3とが連携し、柔軟なデータ処理を実現する。すなわち、制御システム1においては、データの収集から、データの加工および診断、機器の制御まで一貫した設定、すなわちデータ処理フローの設定が行えるようにする。データ処理フローとは、複数の処理を組み合わせて一連のデータ処理を実現するための一連のデータ処理の流れを示す処理フローである。ここで、制御システム1において、データ処理フローの設定はIPC2において実施されるが、データ処理フローの実行は、IPC2とPLC3とが連携して分担して行う。なお、IPC2がデータの収集、加工および診断を行い、PLC3が機器の制御を行うだけでなく、PLC3のリソースが被制御機器の停止等によって多く余っている場合、IPC2がデータの収集および加工を行い、PLC3が機器の診断および制御を行う構成としてもよい。また、IPC2がデータの収集、加工および診断と制御の一部とを行い、PLC3が残りの制御を行う構成としてもよい。 In the control system 1, IPC2 and PLC3 cooperate to realize flexible data processing. That is, in the control system 1, it is possible to perform consistent settings from data collection to data processing and diagnosis, and device control, that is, data processing flow settings. The data processing flow is a processing flow showing a series of data processing flows for realizing a series of data processing by combining a plurality of processes. Here, in the control system 1, the data processing flow is set in the IPC2, but the data processing flow is executed in cooperation with the IPC2 and the PLC3. In addition, IPC2 collects, processes and diagnoses data, and PLC3 not only controls the equipment, but also IPC2 collects and processes data when there is a large surplus of PLC3 resources due to the stoppage of the controlled equipment. It may be configured so that the PLC3 performs diagnosis and control of the device. In addition, the IPC2 may perform data collection, processing, diagnosis, and a part of control, and the PLC3 may perform the remaining control.
また、制御システム1において、IPC2およびPLC3はラダープログラムを共有し、それぞれの負荷状況に応じて分散処理を実行して機器のシーケンス制御を実現する。ここで、ラダープログラムを共有するとは、PLC3がラダープログラムを有し、ラダープログラムの一部をIPC2に渡すことを言う。なお、ラダープログラムの一部をIPC2に渡すとは、IPC2がラダープログラムの一部をコピーすることを言う。これに限らず、IPC2がラダープログラムの一部を異なるプログラム言語で実現するようにしても良い。PLC3のラダープログラムの一部をIPC2に渡す際には、PLC3のラダープログラムの出力と、IPC2で受け取ったラダープログラムの入力のインターフェイス合わせを行うとともに、IPC2のラダープログラムの出力と、PLC3のラダープログラムの入力のインターフェイス合わせを行い、PLC3とIPC2とで協調してラダープログラムを実行し得るようになされている。 Further, in the control system 1, IPC2 and PLC3 share a ladder program and execute distributed processing according to their respective load conditions to realize sequence control of devices. Here, sharing the ladder program means that the PLC3 has the ladder program and a part of the ladder program is passed to the IPC2. Passing a part of the ladder program to the IPC2 means that the IPC2 copies a part of the ladder program. Not limited to this, IPC2 may implement a part of the ladder program in a different programming language. When passing a part of the ladder program of PLC3 to IPC2, the output of the ladder program of PLC3 and the input of the ladder program received by IPC2 are matched, and the output of the ladder program of IPC2 and the ladder program of PLC3 are matched. The input interface of the PLC is matched, and the ladder program can be executed in cooperation with the PLC3 and the IPC2.
IPC2は、データ処理フロー内にあって各種データ処理を行うデータ処理部21Aおよび21Bと、PLC3およびその他の機器4Aおよび4Bから生産現場のデータを収集するデータ収集部22Aおよび22Bと、データ処理フローに従ってデータ収集部22A,22Bとデータ処理部21A,21Bとの間にデータを配信するなどの実行制御を行うデータ処理実行制御部23と、を備える。データ処理実行制御部23は、データ収集部22A,22Bとデータ処理部21A,21Bとの間でデータを配信するデータ配信部30を有する。データ配信部30は、データ収集部22A,22Bおよびデータ処理部21A,21Bのそれぞれが必要とするデータを、所望の設定に基づいて配信する。なお、本実施の形態ではIPC2が備えるデータ処理部およびデータ収集部の数を2個としているが、3個以上備える構成であってもよいし、1個でもよい。また、データ処理部とデータ収集部の数が同一である必要はない。例えば、1つのデータ収集部が収集したデータを複数のデータ処理部でデータ処理する、複数のデータ処理部が収集したデータを1つのデータ処理部でデータ処理する、などとしてもよい。
The IPC2 includes
IPC2は、PLC3とデータ処理の連携を行う連携部24と、PLC3で動作するラダープログラムの一部を実行するプログラム実行部25と、プログラム実行部25で実行するラダープログラムとPLC3が実行するラダープログラムとのシーケンス処理の同期を取る同期部26と、ユーザがIPC2およびPLC3の設定などを行うためのエンジニアリングツール27と、を更に備える。エンジニアリングツール27は、IPC2で実行するデータ処理フローおよびPLC3で実行するラダープログラムの管理を行い、データ処理フローおよびラダープログラムそれぞれの作成および編集を行うための機能をユーザに提供する。なお、本実施の形態ではIPC2がエンジニアリングツール27を備える構成としたが、エンジニアリングツール27がIPC2の外部に存在する構成としてもよい。
The IPC2 includes a
IPC2の各構成要素は、IPC2に搭載されるCPU(Central Processing Unit)200がIPC2の各構成要素として動作するためのプログラムを実行することで実現される。 Each component of the IPC2 is realized by executing a program for the CPU (Central Processing Unit) 200 mounted on the IPC2 to operate as each component of the IPC2.
ここで、データ処理フローの実行基盤とラダープログラムの実行基盤とが異なっている場合、PLC3で動作するラダープログラムをIPC2で実行することが困難な場合がある。この為、プログラム実行部25は、仮想化された基盤である仮想基盤を備えており、仮想基盤上にラダープログラム用の実行基盤を搭載し、ラダープログラムを実行し得るようになされている。プログラム実行部25は、複数の実行基盤を準備可能に構成されている。プログラム実行部25は、例えば、ラダープログラムがソフトウェアPLC(S/W−PLC)上で動作する場合は、S/W−PLC用の実行基盤(OS:Operating System)を準備し、また、ラダープログラムがPLC3のASIC(Application Specific Integrated Circuit)上で動作する場合は、ASICの動作をソフトウェア化するモジュールを準備する。
Here, when the execution base of the data processing flow and the execution base of the ladder program are different, it may be difficult to execute the ladder program operating on the PLC3 on the IPC2. Therefore, the
連携部24は、PLC3が実行するラダープログラムの一部をIPC2が実行可能な形式のプログラムに変換するプログラム変換部28と、IPC2およびPLC3の処理状況を監視しそれぞれがラダープログラムを分担して実行する比率を決定する分担比率決定部29と、を備える。
The
一方、PLC3は、ラダープログラムを実行するラダー実行部31と、IPC2と連携する連携部32と、IPC2で実行するラダープログラムのシーケンス処理タイミングをIPC2と同期を取る同期部33と、を備える。
On the other hand, the PLC 3 includes a
PLC3の各構成要素は、PLC3に搭載されるCPU300がPLC3の各構成要素として動作するためのプログラムを実行することで実現される。
Each component of the PLC 3 is realized by executing a program for the
ここで、IPC2において、プログラム変換部28は、PLC3で実行するラダープログラムのうち、IPC2で実行するラダープログラムの個所を特定し、特定した個所をIPC2上で実行可能な形式のプログラムに変換する。プログラム変換部28は、例えば、図2に示すようにラダープログラムの一部(図2に示す例ではRA部)をIPC2で実行するプログラムとして特定し、更に、図3に示すように、特定したラダープログラムの一部をプログラム実行部25で実行し、データ処理フローをデータ処理実行制御部23およびデータ処理部21A,21Bで実行する。また、プログラム変換部28は、変換後のプログラム(図3に示すFA部)をデータ処理フローに挿入することにより、IPC2で実行するデータ処理フローを作成する。なお、図2は、制御システムの動作を示す第1の図である。図2に示す動作では、PLC3がラダープログラムのRA部までを実行して機器4Bを制御し、これに続いてIPC2が収集処理、加工処理および診断処理を実行する。また、図3は、制御システムの動作を示す第2の図である。図3に示す動作では、PLC3による処理が終了した後、IPC2は、まず、ラダープログラムの図2に示すRA部を変換して得られたFA部を実行して機器4Bを制御し、その後、収集処理、加工処理および診断処理を実行する。図2に示す動作から図3に示す動作に変更すると、それまでPLC3が実行していた処理の一部をIPC2が代わりに実行するようになり、PLC3の処理負荷が低減する。
Here, in the IPC2, the
プログラム変換部28は、ラダープログラムをIPC2が実行可能な形式に変換する場合、ラダープログラムにPLC3で実施する処理を終了するコマンドを挿入すると共に、IPC2で処理を開始するコマンドを挿入する。これによりプログラム変換部28は、PLC3で実行するプログラム部分と、IPC2で実行するプログラム部分との分離を行う。次に、プログラム変換部28は、IPC2でプログラムの実行を開始するコマンドをIPC2側のプログラムすなわち変換後のプログラムに挿入する。例えば、プログラム変換部28は、PLC3側のプログラムの実行が終了した通知を受けた場合にプログラムを開始する位置を示すコマンドをIPC2側のプログラムに挿入する。これにより、IPC2は、PLC3と連携して、一連の処理としてラダープログラムに相当するプログラムを実行することができる。ラダープログラムに相当するプログラムとは、ラダープログラムをIPC2が実行可能な形式に変換したプログラムである。次に、プログラム変換部28は、PLC3側で実行したラダープログラムのデバイス値を、IPC2側で実行するラダープログラムで利用する場合、IPC2側で実行するプログラムにPLC3側のラダープログラムで利用するデバイス値を割り当てる。これにより、プログラム変換部28は、IPC2で実行可能なラダープログラムに相当するプログラムを付加したデータ処理フローを生成する。
When converting the ladder program into a format that can be executed by IPC2, the
また、プログラム変換部28は、ラダープログラムをPLC3で実行するプログラム部分と、IPC2で実行するプログラム部分との分離を行う際、後述する分担比率決定部29が決定する分担比率を利用する。すなわち、プログラム変換部28は、分担比率決定部29が決定する分担比率に従いラダープログラムを2つに分離する。プログラム変換部28は、分担比率を利用してラダープログラムを分離するが、分離したことに伴いPLC3のCPU300である演算装置に過剰な余裕が出来ないよう、PLC3が分離後のラダープログラムを実行した場合の稼働率を確認し、PLC3のCPU資源を優先的に活用できるようラダープログラムを分離する。すなわち、プログラム変換部28は、PLC3のCPU資源を優先的に活用できるよう、IPC2で実行するラダープログラムの個所を決定する。
Further, the
また、プログラム変換部28は、IPC2で実行するラダープログラムの個所をPLC3の連携部32に通知する。この通知を受けたPLC3の連携部32は、IPC2でラダープログラムの実行準備が出来たことを知る。なお、IPC2で実行するラダープログラムは、PLC3で実行するラダープログラムと同様の機能を実現するIPC2で実行可能なプログラムである。但し、IPC2でラダープログラムの実行を妨げるものではない。
Further, the
分担比率決定部29は、PLC3におけるラダープログラム実行によるシーケンススキャンタイムを監視し、分担比率の調整が必要と判断した場合は分担比率を調整する。分担比率決定部29は、シーケンススキャンタイムが伸びている場合、PLC3に搭載するCPU300の処理能力内での処理が困難になっていることを意味する為、分担比率の調整が必要と判断する。分担比率決定部29は、シーケンススキャンタイムが伸びている場合、例えば、シーケンススキャンの伸び率、すなわち当初のシーケンススキャンタイムから伸びた時間に基づき、PLC3でのシーケンススキャンタイムを維持する為に、伸びた時間分の処理をIPC2に負担させる為の分担割合を、分担比率結果とする。ここで分担比率結果とは、PLC3とIPC2との間におけるラダープログラムの処理分散の割合を言い、例えば、シーケンススキャンの伸び率が30%の場合、増加した30%分の処理をIPC2でのラダープログラムの処理に移管する。
The sharing
なお、分担比率決定部29は、シーケンススキャンタイムの伸び率を監視するだけではなく、PLC3のCPU300の稼働率またはメモリの使用量(使用率)に基づいて分担比率結果を決定してもよい。分担比率決定部29は、CPU300の稼働率またはメモリの使用量に基づいて分担比率を算出する場合、PLC3のCPU300とIPC2のCPU200の稼働率の割合、または、PLC3のメモリとIPC2のメモリの使用率の割合に基づいて算出してもよい。なお、PLC3とIPC2のCPU性能が異なる場合、分担比率決定部29はその性能を考慮して分担比率を算出する。
The sharing
続いて、IPC2とPLC3の連携処理の流れについて、図4を用いて説明する。図4は、制御システムの全体動作の一例を示すフローチャートである。 Subsequently, the flow of the cooperative processing of IPC2 and PLC3 will be described with reference to FIG. FIG. 4 is a flowchart showing an example of the overall operation of the control system.
まず、ユーザがエンジニアリングツール27を用いて、ラダープログラムの作成およびデータ処理フローの設定を行う(ステップS1)。エンジニアリングツール27は、ユーザによる作業が終了すると、ラダープログラムおよびデータ処理フローをデータ処理実行制御部23に書き込む。次に、データ処理実行制御部23がラダープログラムを連携部24に転送し、連携部24がPLC3へラダープログラムを書き込む(ステップS2)。
First, the user uses the
そして、PLC3およびIPC2は、ユーザ操作等によってデータ処理開始の信号を受け取ると、それぞれ、ラダープログラムによって実現するシーケンス処理およびデータ処理フローを開始する(ステップS3)。ステップS3で処理を開始すると、PLC3およびIPC2は、それぞれ、シーケンス処理およびデータ処理フローを実行する(ステップS4)。これらのシーケンス処理およびデータ処理フローは、後述するステップS6で終了すると判断されるまで、ステップS5〜S9とともに繰り返し実行される。 Then, when the PLC3 and the IPC2 receive the data processing start signal by a user operation or the like, they start the sequence processing and the data processing flow realized by the ladder program, respectively (step S3). When the processing is started in step S3, the PLC3 and the IPC2 execute the sequence processing and the data processing flow, respectively (step S4). These sequence processing and data processing flows are repeatedly executed together with steps S5 to S9 until it is determined that the sequence processing and data processing flow are completed in step S6 described later.
なお、PLC3は、処理の開始時点では、すなわち、最初にステップS4を実行する時点では、ラダープログラムに記述された全ての処理を逐次実行するよう動作する。その後、IPC2が実行するラダープログラムの個所がIPC2から通知されてきた場合、PLC3は、ラダープログラムに記述された処理のうち、IPC2が実行する個所以外の処理を実行するよう動作する。 Note that the PLC 3 operates so as to sequentially execute all the processes described in the ladder program at the start of the process, that is, at the time when the step S4 is first executed. After that, when the location of the ladder program executed by the IPC2 is notified from the IPC2, the PLC3 operates so as to execute a process other than the location executed by the IPC2 among the processes described in the ladder program.
ステップS4に続いて、IPC2の同期部26およびPLC3の同期部33が同期処理を行う(ステップS5)。なお、このステップS5の同期処理は、IPC2がラダープログラムの一部、すなわち、シーケンス制御の一部を行う状態の場合に行われる。同期処理において、IPC2の同期部26は、ラダープログラムの一部を変換したプログラムのプログラム実行部25による実行処理が終了した場合、これをPLC3の同期部33に通知する。この通知を受けた同期部33は、ラダー実行部31に対し、ラダープログラムの担当個所を実行するよう指示する。同様に、PLC3の同期部33は、ラダープログラムのラダー実行部31による実行処理が終了した場合、これをIPC2の同期部26に通知する。この通知を受けた同期部26は、プログラム実行部25に対し、ラダープログラムの一部を変換したプログラムを実行するよう指示する。
Following step S4, the synchronization unit 26 of IPC2 and the
同期処理を実行後、IPC2およびPLC3は、動作を終了するか、すなわち、ユーザ操作等で動作の停止が指示されたかを確認し(ステップS6)、動作の停止が指示された場合(ステップS6:Yes)、動作を停止する。動作の停止が指示されない場合(ステップS6:No)、IPC2の分担比率決定部29がPLC3の負荷状況を確認し(ステップS7)、PLC3が過負荷状態であるかを判断する(ステップS8)。分担比率決定部29は、上述したように、例えばシーケンススキャンタイムに基づいて、PLC3が過負荷状態であるかを判断する。すなわち、分担比率決定部29は、シーケンススキャンタイムが伸びている場合にPLC3が過負荷状態であると判断する。
After executing the synchronization process, IPC2 and PLC3 confirm whether the operation is terminated, that is, whether the operation is instructed to be stopped by the user operation or the like (step S6), and when the operation stop is instructed (step S6: Yes), stop the operation. When the stop of the operation is not instructed (step S6: No), the share
PLC3が過負荷状態の場合(ステップS8:Yes)、IPC2とPLC3との間で負荷調整を行う(ステップS9)。すなわち、IPC2の連携部24において、分担比率決定部29が分担比率を決定し、この分担比率に基づいて、プログラム変換部28が、ラダープログラムをPLC3で実行するプログラム部分とIPC2で実行するプログラム部分とに分離する。ラダープログラムの分離は上述した方法で行う。負荷調整を行った後はステップS4に戻り、IPC2およびPLC3はステップS4およびこれに続く処理を継続する。この場合、ステップS4では、負荷調整の結果に従い、シーケンス制御を分担して行う。また、PLC3が過負荷状態ではない場合(ステップS8:No)、ステップS4に戻り、IPC2およびPLC3はステップS4およびこれに続く処理を継続する。
When the PLC3 is in the overloaded state (step S8: Yes), the load is adjusted between the IPC2 and the PLC3 (step S9). That is, in the
以上説明したように、本実施の形態にかかる制御システム1は、生産現場で得られるデータを処理するIPC2と、生産現場の機器4Bを制御するPLC3とを備え、IPC2およびPLC3は、機器4Bの制御動作を連携させる手段(連携部24,連携部32)を備える。IPC2は、PLC3が過負荷状態の場合、ラダープログラムの一部をPLC3に代わって実行し、PLC3とともに機器4Bをシーケンス制御する。制御システム1は、機器4Bの制御に関する処理負荷をIPC2とPLC3との間で分散させることができる。
As described above, the control system 1 according to the present embodiment includes an
以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。 The configuration shown in the above embodiment is an example, and can be combined with another known technique, or a part of the configuration may be omitted or changed without departing from the gist. It is possible.
1 制御システム、2 IPC、3 PLC、4A,4B 機器、21A,21B データ処理部、22A,22B データ収集部、23 データ処理実行制御部、24,32 連携部、25 プログラム実行部、26,33 同期部、27 エンジニアリングツール、28 プログラム変換部、29 分担比率決定部、30 データ配信部、31 ラダー実行部、200,300 CPU。 1 Control system, 2 IPC, 3 PLC, 4A, 4B equipment, 21A, 21B data processing unit, 22A, 22B data collection unit, 23 data processing execution control unit, 24, 32 cooperation unit, 25 program execution unit, 26, 33 Synchronization unit, 27 engineering tools, 28 program conversion unit, 29 sharing ratio determination unit, 30 data distribution unit, 31 ladder execution unit, 200, 300 CPU.
Claims (7)
生産現場の機器をラダープログラムに従ってシーケンス制御する制御装置と、
を備え、
前記電子計算機および前記制御装置は、それぞれ、前記制御装置および自己が実行する一連のデータ処理の流れを示すデータ処理フローに従って動作を連携させるための連携部を備え、
前記電子計算機は、前記制御装置が過負荷状態になると前記ラダープログラムの一部を自己が実行可能な形式のプログラムに変換し、変換後のプログラムを実行して行うデータ処理を示す情報を前記データ処理フローに挿入して前記データ処理フローを変更し、変更後の前記データ処理フローに従って、前記機器のシーケンス制御を前記制御装置と分担して行う、
ことを特徴とする制御システム。 A computer that processes data obtained at the production site,
A control device that sequence-controls equipment at the production site according to a ladder program,
With
The computer and the control device each include a linking unit for linking operations according to a data processing flow indicating a series of data processing flows executed by the control device and itself.
When the control device becomes overloaded, the computer converts a part of the ladder program into a program in a format that can be executed by itself, and executes the converted program to perform data processing. The data processing flow is changed by inserting it into the processing flow, and the sequence control of the device is shared with the control device according to the changed data processing flow.
A control system characterized by that.
前記ラダープログラムの一部を前記電子計算機が実行可能な形式のプログラムに変換するプログラム変換部、
を備えることを特徴とする請求項1に記載の制御システム。 The computer is
A program conversion unit that converts a part of the ladder program into a program in a format that can be executed by the computer.
The control system according to claim 1, wherein the control system comprises.
ことを特徴とする請求項1または2に記載の制御システム。 The computer and the control device each include a synchronization unit that synchronizes the timing of the control device to sequence control the device and the timing of the computer to sequence control the device.
The control system according to claim 1 or 2.
前記制御装置が過負荷状態の場合に前記制御装置および前記電子計算機のそれぞれが前記ラダープログラムを分担して実行する比率を決定する分担比率決定部、
を備えることを特徴とする請求項1から3のいずれか一つに記載の制御システム。 The computer is
A sharing ratio determination unit that determines the ratio at which the control device and the computer each share and execute the ladder program when the control device is in an overloaded state.
The control system according to any one of claims 1 to 3, wherein the control system comprises.
ことを特徴とする請求項4に記載の制御システム。 The sharing ratio determining unit determines the ratio based on the amount of change in time required for sequence control of the device by the control device.
The control system according to claim 4.
ことを特徴とする請求項4に記載の制御システム。 The sharing ratio determining unit determines the ratio based on the operating rate of the arithmetic unit included in the control device.
The control system according to claim 4.
ことを特徴とする請求項4に記載の制御システム。 The sharing ratio determining unit determines the ratio based on the usage rate of the memory included in the control device.
The control system according to claim 4.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/023266 WO2021250900A1 (en) | 2020-06-12 | 2020-06-12 | Control system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6921344B1 true JP6921344B1 (en) | 2021-08-18 |
JPWO2021250900A1 JPWO2021250900A1 (en) | 2021-12-16 |
Family
ID=77269526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020564497A Active JP6921344B1 (en) | 2020-06-12 | 2020-06-12 | Control system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6921344B1 (en) |
WO (1) | WO2021250900A1 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3780732B2 (en) * | 1999-03-10 | 2006-05-31 | 株式会社日立製作所 | Distributed control system |
JP6984565B2 (en) * | 2018-08-23 | 2021-12-22 | オムロン株式会社 | Information processing equipment and programs |
-
2020
- 2020-06-12 JP JP2020564497A patent/JP6921344B1/en active Active
- 2020-06-12 WO PCT/JP2020/023266 patent/WO2021250900A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2021250900A1 (en) | 2021-12-16 |
JPWO2021250900A1 (en) | 2021-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103019169B (en) | Servo driving system | |
US9141732B2 (en) | Simulation execution method, program, and system | |
JP6151669B2 (en) | Numerical control device capable of distributing CPU load according to machining program command contents | |
JP2018530443A (en) | Real-time control system, real-time control device, and system control method | |
CN106062648A (en) | Controller | |
TWI534569B (en) | Control device, development device, and development program | |
JP4063763B2 (en) | Method for controlling and / or adjusting industrial processes | |
JP6921344B1 (en) | Control system | |
Langguth et al. | Memory bandwidth contention: Communication vs computation tradeoffs in supercomputers with multicore architectures | |
CN110989403A (en) | Comprehensive energy regulation and control system and control method thereof and server | |
JP5009625B2 (en) | Method and apparatus for operating different devices operating in conjunction | |
JPWO2021131576A5 (en) | Control device, power conditioning system, distributed power supply system, power control system, control method and program | |
JP5149254B2 (en) | Generating executable settings | |
JP5876425B2 (en) | Virtual machine live migration scheduling method and virtual machine system | |
CN114115140B (en) | System and method for synchronizing data between multi-core main controller and main and auxiliary multi-core controllers | |
JP2020086481A (en) | Control system and control device | |
CN111052683B (en) | Network system | |
JP2923864B2 (en) | Distributed control system | |
WO2020147347A1 (en) | Control device, control system and control method | |
JPWO2020079730A1 (en) | Engineering tools, computer systems, systems and programs | |
CN115933494B (en) | Robot-oriented embedded isomorphic multi-core control system | |
EP2703918A1 (en) | Configuration of control applications on multi-host controllers | |
JP6626596B1 (en) | Interface device and program | |
Julsereewong et al. | Analysis of macrocycle schedules for an alternative of FF-based feedforward control | |
CN118295777A (en) | Message processing method, electronic device, storage medium and computer program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201116 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201116 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20201116 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20201217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210224 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210421 |
|
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: 20210629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210727 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6921344 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |