JP6921344B1 - Control system - Google Patents

Control system Download PDF

Info

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
Application number
JP2020564497A
Other languages
Japanese (ja)
Other versions
JPWO2021250900A1 (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 JP6921344B1 publication Critical patent/JP6921344B1/en
Publication of JPWO2021250900A1 publication Critical patent/JPWO2021250900A1/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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • 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

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.

特開2000−259589号公報Japanese Unexamined Patent Publication No. 2000-259589

特許文献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.

実施の形態にかかる制御システムの構成例を示す図The figure which shows the configuration example of the control system which concerns on embodiment 制御システムの動作を示す第1の図The first figure which shows the operation of a control system 制御システムの動作を示す第2の図The second figure which shows the operation of the control system 制御システムの全体動作の一例を示すフローチャートFlow chart showing an example of the overall operation of the control system

以下に、本開示の実施の形態にかかる制御システムを図面に基づいて詳細に説明する。 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 device 4A is connected to the IPC2, and the device 4B is connected to the PLC3. The device 4A is, for example, a sensor installed at a production site. The device 4B is, for example, a robot installed at a production site. In the example shown in FIG. 1, the devices connected to the control system 1 are two devices 4A and 4B, but the number of devices connected to the control system 1 may be three or more, or even one device. good. Further, the number of PLC3s included in the control system 1 may be two or more. That is, the control system 1 may have a configuration in which two or more PLC3s are connected to one IPC2.

ここで、制御システム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 devices 4A and 4B installed at the production site and feeding back the processing result data to the devices 4A and 4B at the production site based on the data processing result of the collected data. Has a data processing platform. The edge computing area is a concept that means a computing area located at the edge of cloud computing, and is a system area that manages a manufacturing site in a factory. In the edge computing area, advanced data processing is performed on the data obtained at the production site. In addition, advanced data processing in the edge computing area means to perform data processing using an advanced data analysis method with respect to the data analysis method at the manufacturing site. For example, table calculation software is used at the manufacturing site. In contrast to performing data analysis using AI, in the edge computing area, it means performing data analysis for predictive maintenance using AI (Artificial Intelligence).

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 data processing units 21A and 21B that perform various data processing in the data processing flow, data collection units 22A and 22B that collect data at the production site from PLC3 and other devices 4A and 4B, and a data processing flow. A data processing execution control unit 23 that performs execution control such as distributing data between the data collection units 22A and 22B and the data processing units 21A and 21B according to the above is provided. The data processing execution control unit 23 has a data distribution unit 30 that distributes data between the data collection units 22A and 22B and the data processing units 21A and 21B. The data distribution unit 30 distributes the data required by each of the data collection units 22A and 22B and the data processing units 21A and 21B based on desired settings. In the present embodiment, the number of the data processing unit and the data collecting unit included in the IPC2 is two, but the configuration may include three or more, or one. Also, the number of data processing units and data collection units does not have to be the same. For example, the data collected by one data collecting unit may be processed by a plurality of data processing units, the data collected by the plurality of data processing units may be processed by one data processing unit, and the like.

IPC2は、PLC3とデータ処理の連携を行う連携部24と、PLC3で動作するラダープログラムの一部を実行するプログラム実行部25と、プログラム実行部25で実行するラダープログラムとPLC3が実行するラダープログラムとのシーケンス処理の同期を取る同期部26と、ユーザがIPC2およびPLC3の設定などを行うためのエンジニアリングツール27と、を更に備える。エンジニアリングツール27は、IPC2で実行するデータ処理フローおよびPLC3で実行するラダープログラムの管理を行い、データ処理フローおよびラダープログラムそれぞれの作成および編集を行うための機能をユーザに提供する。なお、本実施の形態ではIPC2がエンジニアリングツール27を備える構成としたが、エンジニアリングツール27がIPC2の外部に存在する構成としてもよい。 The IPC2 includes a cooperation unit 24 that links data processing with the PLC3, a program execution unit 25 that executes a part of the ladder program that operates on the PLC3, a ladder program that is executed by the program execution unit 25, and a ladder program that is executed by the PLC3. Further includes a synchronization unit 26 that synchronizes the sequence processing with the above, and an engineering tool 27 for the user to set the IPC2 and the PLC3. The engineering tool 27 manages the data processing flow executed by the IPC2 and the ladder program executed by the PLC3, and provides the user with a function for creating and editing each of the data processing flow and the ladder program. In the present embodiment, the IPC2 is provided with the engineering tool 27, but the engineering tool 27 may be provided outside the IPC2.

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 program execution unit 25 is provided with a virtual infrastructure which is a virtualized infrastructure, and the execution infrastructure for the ladder program is mounted on the virtual infrastructure so that the ladder program can be executed. The program execution unit 25 is configured so that a plurality of execution platforms can be prepared. For example, when the ladder program operates on the software PLC (S / W-PLC), the program execution unit 25 prepares an execution platform (OS: Operating System) for the S / W-PLC, and also prepares the ladder program. When the PLC3 operates on the ASIC (Application Specific Integrated Circuit) of the PLC, a module for converting the operation of the ASIC into software is prepared.

連携部24は、PLC3が実行するラダープログラムの一部をIPC2が実行可能な形式のプログラムに変換するプログラム変換部28と、IPC2およびPLC3の処理状況を監視しそれぞれがラダープログラムを分担して実行する比率を決定する分担比率決定部29と、を備える。 The cooperation unit 24 monitors the processing status of the IPC2 and the PLC3 and the program conversion unit 28 that converts a part of the ladder program executed by the PLC3 into a program in a format that can be executed by the IPC2, and each of them shares and executes the ladder program. A sharing ratio determining unit 29 for determining the ratio to be used is provided.

一方、PLC3は、ラダープログラムを実行するラダー実行部31と、IPC2と連携する連携部32と、IPC2で実行するラダープログラムのシーケンス処理タイミングをIPC2と同期を取る同期部33と、を備える。 On the other hand, the PLC 3 includes a ladder execution unit 31 that executes the ladder program, a cooperation unit 32 that cooperates with the IPC 2, and a synchronization unit 33 that synchronizes the sequence processing timing of the ladder program executed by the IPC 2 with the IPC 2.

PLC3の各構成要素は、PLC3に搭載されるCPU300がPLC3の各構成要素として動作するためのプログラムを実行することで実現される。 Each component of the PLC 3 is realized by executing a program for the CPU 300 mounted on the PLC 3 to operate as each component of the PLC 3.

ここで、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 program conversion unit 28 identifies the location of the ladder program executed by the IPC2 among the ladder programs executed by the PLC3, and converts the specified location into a program in a format that can be executed on the IPC2. For example, the program conversion unit 28 specifies a part of the ladder program (RA unit in the example shown in FIG. 2) as a program to be executed by IPC2 as shown in FIG. 2, and further specifies as shown in FIG. A part of the ladder program is executed by the program execution unit 25, and the data processing flow is executed by the data processing execution control unit 23 and the data processing units 21A and 21B. Further, the program conversion unit 28 creates a data processing flow to be executed by IPC2 by inserting the converted program (FA unit shown in FIG. 3) into the data processing flow. Note that FIG. 2 is a first diagram showing the operation of the control system. In the operation shown in FIG. 2, the PLC 3 executes up to the RA portion of the ladder program to control the device 4B, and the IPC 2 subsequently executes the collection process, the processing process, and the diagnostic process. Further, FIG. 3 is a second diagram showing the operation of the control system. In the operation shown in FIG. 3, after the processing by the PLC 3 is completed, the IPC 2 first executes the FA unit obtained by converting the RA unit shown in FIG. 2 of the ladder program to control the device 4B, and then controls the device 4B. Execute collection processing, processing processing, and diagnostic processing. When the operation shown in FIG. 2 is changed to the operation shown in FIG. 3, the IPC2 now executes a part of the processing previously executed by the PLC3 instead, and the processing load of the PLC3 is reduced.

プログラム変換部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 program conversion unit 28 inserts a command to end the process executed by PLC3 into the ladder program and a command to start the process by IPC2. As a result, the program conversion unit 28 separates the program portion executed by the PLC 3 and the program portion executed by the IPC 2. Next, the program conversion unit 28 inserts a command for starting execution of the program on the IPC2 into the program on the IPC2 side, that is, the converted program. For example, the program conversion unit 28 inserts a command indicating a position to start the program into the program on the IPC2 side when the notification that the execution of the program on the PLC3 side is completed is received. As a result, the IPC2 can execute a program corresponding to the ladder program as a series of processes in cooperation with the PLC3. The program corresponding to the ladder program is a program obtained by converting the ladder program into a format that can be executed by IPC2. Next, when the program conversion unit 28 uses the device value of the ladder program executed on the PLC3 side in the ladder program executed on the IPC2 side, the device value used in the ladder program on the PLC3 side for the program executed on the IPC2 side. To assign. As a result, the program conversion unit 28 generates a data processing flow to which a program corresponding to a ladder program that can be executed by IPC2 is added.

また、プログラム変換部28は、ラダープログラムをPLC3で実行するプログラム部分と、IPC2で実行するプログラム部分との分離を行う際、後述する分担比率決定部29が決定する分担比率を利用する。すなわち、プログラム変換部28は、分担比率決定部29が決定する分担比率に従いラダープログラムを2つに分離する。プログラム変換部28は、分担比率を利用してラダープログラムを分離するが、分離したことに伴いPLC3のCPU300である演算装置に過剰な余裕が出来ないよう、PLC3が分離後のラダープログラムを実行した場合の稼働率を確認し、PLC3のCPU資源を優先的に活用できるようラダープログラムを分離する。すなわち、プログラム変換部28は、PLC3のCPU資源を優先的に活用できるよう、IPC2で実行するラダープログラムの個所を決定する。 Further, the program conversion unit 28 uses the sharing ratio determined by the sharing ratio determining unit 29, which will be described later, when separating the program portion for executing the ladder program on the PLC3 and the program portion for executing the ladder program on the IPC2. That is, the program conversion unit 28 separates the ladder program into two according to the sharing ratio determined by the sharing ratio determining unit 29. The program conversion unit 28 separates the ladder program by using the sharing ratio, but the PLC3 executes the ladder program after the separation so that the arithmetic unit, which is the CPU 300 of the PLC3, does not have an excessive margin due to the separation. Check the operating rate of the case, and separate the ladder program so that the CPU resources of PLC3 can be used preferentially. That is, the program conversion unit 28 determines the location of the ladder program to be executed by the IPC 2 so that the CPU resources of the PLC 3 can be used preferentially.

また、プログラム変換部28は、IPC2で実行するラダープログラムの個所をPLC3の連携部32に通知する。この通知を受けたPLC3の連携部32は、IPC2でラダープログラムの実行準備が出来たことを知る。なお、IPC2で実行するラダープログラムは、PLC3で実行するラダープログラムと同様の機能を実現するIPC2で実行可能なプログラムである。但し、IPC2でラダープログラムの実行を妨げるものではない。 Further, the program conversion unit 28 notifies the cooperation unit 32 of the PLC3 of the location of the ladder program to be executed by the IPC2. Upon receiving this notification, the cooperation unit 32 of the PLC3 knows that the ladder program is ready to be executed by the IPC2. The ladder program executed by IPC2 is a program that can be executed by IPC2 that realizes the same function as the ladder program executed by PLC3. However, IPC2 does not prevent the execution of the ladder program.

分担比率決定部29は、PLC3におけるラダープログラム実行によるシーケンススキャンタイムを監視し、分担比率の調整が必要と判断した場合は分担比率を調整する。分担比率決定部29は、シーケンススキャンタイムが伸びている場合、PLC3に搭載するCPU300の処理能力内での処理が困難になっていることを意味する為、分担比率の調整が必要と判断する。分担比率決定部29は、シーケンススキャンタイムが伸びている場合、例えば、シーケンススキャンの伸び率、すなわち当初のシーケンススキャンタイムから伸びた時間に基づき、PLC3でのシーケンススキャンタイムを維持する為に、伸びた時間分の処理をIPC2に負担させる為の分担割合を、分担比率結果とする。ここで分担比率結果とは、PLC3とIPC2との間におけるラダープログラムの処理分散の割合を言い、例えば、シーケンススキャンの伸び率が30%の場合、増加した30%分の処理をIPC2でのラダープログラムの処理に移管する。 The sharing ratio determination unit 29 monitors the sequence scan time due to the execution of the ladder program in PLC3, and adjusts the sharing ratio when it is determined that the sharing ratio needs to be adjusted. When the sequence scan time is extended, the sharing ratio determining unit 29 determines that it is necessary to adjust the sharing ratio because it means that processing within the processing capacity of the CPU 300 mounted on the PLC 3 is difficult. When the sequence scan time is extended, the share ratio determination unit 29 is increased in order to maintain the sequence scan time in PLC3 based on, for example, the elongation rate of the sequence scan, that is, the time extended from the initial sequence scan time. The sharing ratio for causing the IPC2 to bear the processing for the time taken is used as the sharing ratio result. Here, the share ratio result refers to the ratio of the processing distribution of the ladder program between PLC3 and IPC2. For example, when the elongation rate of the sequence scan is 30%, the increased processing of 30% is the ladder in IPC2. Transfer to program processing.

なお、分担比率決定部29は、シーケンススキャンタイムの伸び率を監視するだけではなく、PLC3のCPU300の稼働率またはメモリの使用量(使用率)に基づいて分担比率結果を決定してもよい。分担比率決定部29は、CPU300の稼働率またはメモリの使用量に基づいて分担比率を算出する場合、PLC3のCPU300とIPC2のCPU200の稼働率の割合、または、PLC3のメモリとIPC2のメモリの使用率の割合に基づいて算出してもよい。なお、PLC3とIPC2のCPU性能が異なる場合、分担比率決定部29はその性能を考慮して分担比率を算出する。 The sharing ratio determination unit 29 may not only monitor the growth rate of the sequence scan time, but may also determine the sharing ratio result based on the operating rate of the CPU 300 of the PLC 3 or the memory usage (usage rate). When the sharing ratio determination unit 29 calculates the sharing ratio based on the operating rate of the CPU 300 or the amount of memory used, the ratio of the operating rate of the CPU 300 of the PLC 3 and the CPU 200 of the IPC 2 or the use of the memory of the PLC 3 and the memory of the IPC 2 It may be calculated based on the percentage of the rate. When the CPU performances of PLC3 and IPC2 are different, the sharing ratio determining unit 29 calculates the sharing ratio in consideration of the performance.

続いて、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 engineering tool 27 to create a ladder program and set the data processing flow (step S1). When the work by the user is completed, the engineering tool 27 writes the ladder program and the data processing flow to the data processing execution control unit 23. Next, the data processing execution control unit 23 transfers the ladder program to the cooperation unit 24, and the cooperation unit 24 writes the ladder program to the PLC 3 (step S2).

そして、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 synchronization unit 33 of PLC3 perform synchronization processing (step S5). The synchronization process of step S5 is performed when the IPC2 performs a part of the ladder program, that is, a part of the sequence control. In the synchronization process, the synchronization unit 26 of the IPC2 notifies the synchronization unit 33 of the PLC3 when the execution process by the program execution unit 25 of the program obtained by converting a part of the ladder program is completed. Upon receiving this notification, the synchronization unit 33 instructs the ladder execution unit 31 to execute the part in charge of the ladder program. Similarly, when the execution process by the ladder execution unit 31 of the ladder program is completed, the synchronization unit 33 of the PLC3 notifies the synchronization unit 26 of the IPC2 of this. Upon receiving this notification, the synchronization unit 26 instructs the program execution unit 25 to execute a program obtained by converting a part of the ladder program.

同期処理を実行後、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 ratio determination unit 29 of the IPC2 confirms the load status of the PLC3 (step S7), and determines whether the PLC3 is in the overload state (step S8). As described above, the sharing ratio determining unit 29 determines whether the PLC 3 is in the overloaded state based on, for example, the sequence scan time. That is, the sharing ratio determination unit 29 determines that the PLC 3 is in an overloaded state when the sequence scan time is extended.

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 cooperation unit 24 of the IPC2, the sharing ratio determination unit 29 determines the sharing ratio, and based on this sharing ratio, the program conversion unit 28 executes the ladder program on the PLC3 and the program portion on the IPC2. Separate into and. The ladder program is separated by the method described above. After the load adjustment is performed, the process returns to step S4, and IPC2 and PLC3 continue step S4 and the subsequent processing. In this case, in step S4, the sequence control is shared according to the result of the load adjustment. If the PLC3 is not in the overloaded state (step S8: No), the process returns to step S4, and the IPC2 and PLC3 continue the step S4 and the subsequent processing.

以上説明したように、本実施の形態にかかる制御システム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 IPC 2 for processing data obtained at the production site and a PLC 3 for controlling the device 4B at the production site, and the IPC 2 and the PLC 3 are the devices 4B. A means for linking control operations (coordination unit 24, cooperation unit 32) is provided. When the PLC3 is in an overloaded state, the IPC2 executes a part of the ladder program in place of the PLC3 and controls the sequence of the device 4B together with the PLC3. The control system 1 can distribute the processing load related to the control of the device 4B between the IPC2 and the PLC3.

以上の実施の形態に示した構成は、一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。 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.
JP2020564497A 2020-06-12 2020-06-12 Control system Active JP6921344B1 (en)

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)

* Cited by examiner, † Cited by third party
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

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