JP2022158226A - Analysis device, analysis system, and method for controlling the same - Google Patents

Analysis device, analysis system, and method for controlling the same Download PDF

Info

Publication number
JP2022158226A
JP2022158226A JP2021062982A JP2021062982A JP2022158226A JP 2022158226 A JP2022158226 A JP 2022158226A JP 2021062982 A JP2021062982 A JP 2021062982A JP 2021062982 A JP2021062982 A JP 2021062982A JP 2022158226 A JP2022158226 A JP 2022158226A
Authority
JP
Japan
Prior art keywords
analysis
report
unit
cycle
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021062982A
Other languages
Japanese (ja)
Inventor
哲也 宮坂
Tetsuya Miyasaka
大樹 川上
Daiki Kawakami
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.)
Keyence Corp
Original Assignee
Keyence 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 Keyence Corp filed Critical Keyence Corp
Priority to JP2021062982A priority Critical patent/JP2022158226A/en
Priority to CN202210305465.2A priority patent/CN115202280A/en
Publication of JP2022158226A publication Critical patent/JP2022158226A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1103Special, intelligent I-O processor, also plc can only access via processor

Abstract

To provide an analyzer capable of easily identifying a cause of abnormality without requiring a complicated user operation by providing a report capable of easily identifying the cause of the abnormality according to an analysis result of operation record data.SOLUTION: An analysis device includes: an execution engine for repeatedly executing a user program; acquisition means for acquiring operation record data including a plurality of device values in time series collected by executing the user program; model generation means for generating a model including an analysis parameter for each device based on the learning of the acquired operation record data at a normal time; analysis means for analyzing an abnormal device which does not satisfy a normal condition according to the model for the acquired operation record data of an analysis object; and report generation means which generates an analysis report including an expression corresponding to the analysis parameter based on an analysis result of each device detected as the abnormal device.SELECTED DRAWING: Figure 17

Description

本発明は分析装置、分析システム、およびその制御方法に関する。 The present invention relates to an analyzer, an analysis system, and a control method thereof.

プログラマブル・ロジック・コントローラ(PLC)はファクトリーオートメーションにおいて製造機器や搬送装置、検査装置などの産業機械を制御するコントローラである(特許文献1、2)。PLCはプログラマーによって作成されるラダープログラムなどのユーザプログラムを実行することで様々な拡張ユニットや被制御機器などを制御する。 A programmable logic controller (PLC) is a controller that controls industrial machines such as manufacturing equipment, transport equipment, and inspection equipment in factory automation (Patent Documents 1 and 2). The PLC controls various expansion units and controlled devices by executing user programs such as ladder programs created by programmers.

特許第5661222号公報Japanese Patent No. 5661222 特開2018-097662号公報JP 2018-097662 A

ところで、PLCの動作やPLCによって制御される産業機械の動作を監視するために、PLCが保持しているデータを収集して活用することが望まれている。PLCは、基本ユニット(CPUユニット)とそれに接続される拡張ユニットとを有している。基本ユニットは、ラダープログラムなどのユーザプログラムを実行することで拡張ユニットを制御する。拡張ユニットは基本ユニットからの命令にしたがって産業機械を制御し、制御結果を基本ユニットに返す。 By the way, in order to monitor the operation of the PLC and the operation of the industrial machine controlled by the PLC, it is desired to collect and utilize the data held by the PLC. A PLC has a basic unit (CPU unit) and an expansion unit connected thereto. The basic unit controls the expansion units by executing user programs such as ladder programs. The expansion unit controls the industrial machine according to the instructions from the basic unit and returns control results to the basic unit.

また、これらの制御結果等のデータはトラブル解析や品質管理のために使用される。従って、これらのデータを蓄積して分析し、復旧のために早期に解析結果を得ることが要求されている。しかし、PLCに関連する全てのデバイスのデータを記録する場合は膨大なデータを記憶することになり、さらに異常デバイスを特定するためにはこれらの膨大なデータ(全デバイス)を解析する必要があるため時間を要する作業となる。また、膨大な分析結果から異常デバイスを特定したり、システムを復旧させるためには、経験や知識も必要となる。従って、十分な専門的な知識や経験を必要とすることなく、各デバイスに関連する膨大なデータの中から効率よく分析を行い、分析結果を表示する仕組みが望まれている。 Data such as these control results are used for trouble analysis and quality control. Therefore, it is required to accumulate and analyze these data and to obtain analysis results early for recovery. However, when recording data of all devices related to PLC, a huge amount of data will be stored, and in order to identify abnormal devices, it is necessary to analyze these huge amounts of data (all devices). This is a time-consuming task. In addition, experience and knowledge are required to identify abnormal devices from a huge amount of analysis results and restore the system. Therefore, there is a demand for a mechanism that efficiently analyzes a huge amount of data related to each device and displays the analysis results without requiring sufficient specialized knowledge and experience.

そこで、本発明は上記問題に鑑み、運転記録データの分析結果に従って、異常の要因を容易に識別可能なレポートを提供することを目的とする。また、他の目的として、煩雑なユーザ操作を必要とすることなく異常の要因を容易に識別可能なレポートを提供することを目的とする。 Therefore, in view of the above problem, it is an object of the present invention to provide a report that allows easy identification of the cause of an abnormality according to the analysis results of driving record data. Another object of the present invention is to provide a report capable of easily identifying the cause of an abnormality without requiring complicated user operations.

本発明は、たとえば、分析装置であって、ユーザプログラムを繰り返し実行する実行エンジンと、前記ユーザプログラムの実行によって収集される、時系列の複数のデバイス値を含む運転記録データを取得する取得手段と、取得された正常時の前記運転記録データの学習に基づきデバイス毎の分析パラメータを含むモデルを生成するモデル生成手段と、取得された分析対象の前記運転記録データについて、前記モデルに従って正常条件を満たさない非正常デバイスを分析する分析手段と、前記非正常デバイスとして検知した各デバイスの分析結果に基づき、前記分析パラメータに応じた表現を含む分析レポートを生成するレポート生成手段とを備えることを特徴とする。 The present invention is, for example, an analysis apparatus comprising an execution engine that repeatedly executes a user program, and acquisition means that acquires driving record data including a plurality of time-series device values collected by executing the user program. a model generating means for generating a model including analysis parameters for each device based on the learning of the acquired driving record data in a normal state; and the acquired driving record data to be analyzed satisfies a normal condition according to the model. and a report generating means for generating an analysis report including an expression according to the analysis parameters based on the analysis result of each device detected as the abnormal device. do.

本発明によれば、いつもと違う挙動をしたデバイスの情報とその要因がユーザに提供される。 According to the present invention, a user is provided with information on a device that has behaved differently than usual and the cause thereof.

PLCシステムを説明する図Diagram explaining the PLC system PC2aのハードウエアを説明する図A diagram explaining the hardware of the PC 2a PC2bのハードウエアを説明する図Diagram explaining the hardware of PC2b PLCのハードウエアを説明する図Diagram explaining PLC hardware PCのCPUにより実現される機能を説明する図A diagram for explaining functions realized by a CPU of a PC. PLCのCPUにより実現される機能を説明する図Diagram for explaining the functions realized by the CPU of the PLC 基本フローを示すフローチャートFlowchart showing basic flow 結果表示画面を説明する図Diagram explaining the result display screen 結果表示画面を説明する図Diagram explaining the result display screen リレーションマップを説明する図Diagram explaining relation map 分析コメントの詳細を説明する図A diagram explaining the details of an analysis comment モデルの生成フローを示すフローチャートFlowchart showing model generation flow サイクルパターンの判別制御を説明する図Diagram for explaining cycle pattern discrimination control 収集データの分類を示す図Diagram showing classification of collected data 分類の処理手順を示すフローチャートFlowchart showing classification process steps 分析ユニットの結果表示フローを示すフローチャートFlowchart showing the result display flow of the analysis unit PCの結果表示フローを示すフローチャートFlowchart showing result display flow of PC 自然言語による分析コメント生成フローを示すフローチャートFlowchart showing analysis comment generation flow using natural language 図形による分析コメント生成フローを示すフローチャートFlowchart showing analysis comment generation flow by graphic サイクルを定義する設定画面を示す図Figure showing the settings screen for defining a cycle サイクル未設定の場合の警告を説明する図Diagram explaining the warning when the cycle is not set モデルの信頼度を説明する図Diagram explaining model confidence PLCシステムの変形例を説明する図Diagram for explaining a modification of the PLC system サイクルの処理フローを説明する図Diagram explaining the processing flow of the cycle

以下、添付図面を参照して実施形態が詳しく説明される。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一または同様の構成には同一の参照番号が付され、重複した説明は省略される。複数の構成を区別するために参照符号の末尾に小文字のアルファベットが付与されることがある。複数の構成に共通する事項が説明される際には小文字のアルファベットが省略されることがある。 Embodiments are described in detail below with reference to the accompanying drawings. It should be noted that the following embodiments do not limit the invention according to the claims, and not all combinations of features described in the embodiments are essential to the invention. Two or more of the features described in the embodiments may be combined arbitrarily. Identical or similar configurations are given the same reference numerals, and duplicate descriptions are omitted. A lowercase letter may be added to the end of the reference number to distinguish between configurations. Lowercase letters may be omitted when items common to a plurality of configurations are described.

<システム構成>
はじめにプログラマブルロジックコントローラ(PLC、単にプログラマブルコントローラと呼ばれてもよい)を当業者にとってよりよく理解できるようにするために、一般的なPLCの構成とその動作について説明する。
<System configuration>
First, the configuration and operation of a typical PLC will be described so that those skilled in the art can better understand programmable logic controllers (PLCs, which may be simply called programmable controllers).

図1は本発明の実施の形態によるPLCシステムの一構成例を示す概念図である。図1が示すように、PLCシステムは、ラダープログラムなどのユーザプログラムを編集するPC2aと、分析結果等を表示するPC2bと、工場等に設置される各種の産業機械を統括的に制御するPLC1と、PLC1に接続されるカメラ等のフィールドデバイス10とを備えている。PCはパーソナルコンピュータの略称である。なお、以下で単にPC2と記載した場合は、PC2aおよびPC2bの構成や制御について説明しているものである。ユーザプログラムは、ラダー言語やSFC(シーケンシャルファンクションチャート)などのフローチャート形式のモーションプログラムなどのグラフィカルプログラミング言語を用いて作成されてもよいし、C言語などの高級プログラミング言語を用いて作成されてもよい。以下では、説明の便宜上、基本ユニット3で実行されるユーザプログラムはラダープログラムと仮定される。PLC1は、CPUが内蔵された基本ユニット3と、1つないし複数の拡張ユニット4を備えている。基本ユニット3に対して1つないし複数の拡張ユニット4が着脱可能となっている。 FIG. 1 is a conceptual diagram showing one configuration example of a PLC system according to an embodiment of the present invention. As shown in FIG. 1, the PLC system includes a PC 2a for editing user programs such as ladder programs, a PC 2b for displaying analysis results, etc., and a PLC 1 for comprehensively controlling various industrial machines installed in factories and the like. , and a field device 10 such as a camera connected to the PLC 1 . PC is an abbreviation for personal computer. In the following description, when PC2 is simply described, the configuration and control of PC2a and PC2b are described. The user program may be created using a graphical programming language such as a ladder language or a flowchart-type motion program such as SFC (Sequential Function Chart), or may be created using a high-level programming language such as C language. . In the following, for convenience of explanation, it is assumed that the user program executed by the basic unit 3 is a ladder program. The PLC 1 has a basic unit 3 with a built-in CPU and one or more expansion units 4 . One or a plurality of extension units 4 are detachable from the basic unit 3 .

基本ユニット3は、表示部5および操作部6を備えている。表示部5は、基本ユニット3に取り付けられている各拡張ユニット4の動作状況などを表示することができる。操作部6の操作内容に応じて表示部5は表示内容を切り替える。表示部5は、通常、PLC1内のデバイスの現在値(デバイス値)やPLC1内で生じたエラー情報などを表示する。ここでデバイスとは、基本ユニット3や拡張ユニット4に含まれる種々のデバイス(リレー、タイマー、カウンタなど)を含むものであり、デバイス値(デバイスデータ)を格納するために設けられたメモリ上の領域を指すものでもあり、デバイスメモリと呼ばれてもよい。なお、当該デバイスメモリは不揮発性メモリであり、書き換え可能な不揮発性ROMで構成されてもよく、揮発性RAM等をバッテリーバックアップ等により不揮発性を実現してもよい。ROMはリードオンリーメモリの略称である。RAMはランダムアクセスメモリの略称である。デバイス値とは、入力機器からの入力状態、出力機器への出力状態およびユーザプログラム上で設定される内部リレー(補助リレー)、タイマー、カウンタ、データメモリ等の状態を示す情報である。デバイス値の型にはビット型とワード型等がある。ビットデバイスは1ビットのデバイス値、たとえば、0/1、ON/OFF、H/L等を記憶する。ワードデバイスは1ワードのデバイス値を記憶する。以下で詳細に説明されるデータ活用プログラムの収集対象としては、デバイスとして変数が指定されてもよい。変数も情報を保持する保持手段であり、ユーザプログラムに従って実行エンジンによりアクセスされるものである。したがって、以下の説明においてデバイスは変数も指すものである。なお、デバイスを保持するメモリはデバイスメモリと呼ばれてもよい。また、収集されたデータを保持するメモリはデータメモリと呼ばれてもよい。PLC1は、デバイスの他、変数を取り扱うよう構成されてもよく、デバイスや変数のことをシンボルと呼び、シンボルが示す値をシンボル値と呼ぶ。 The basic unit 3 has a display section 5 and an operation section 6 . The display unit 5 can display the operation status of each expansion unit 4 attached to the basic unit 3 . The display section 5 switches the display content according to the operation content of the operation section 6 . The display unit 5 normally displays current values (device values) of devices in the PLC 1, error information occurring in the PLC 1, and the like. Here, the devices include various devices (relays, timers, counters, etc.) included in the basic unit 3 and expansion unit 4, and are stored in memory provided for storing device values (device data). It also refers to an area and may be called a device memory. Note that the device memory is a non-volatile memory, and may be composed of a rewritable non-volatile ROM, or a volatile RAM or the like may be made non-volatile by battery backup or the like. ROM is an abbreviation for read-only memory. RAM is an abbreviation for random access memory. A device value is information that indicates the state of an input from an input device, the state of an output to an output device, and the state of internal relays (auxiliary relays), timers, counters, data memories, etc. that are set on a user program. Device value types include bit type and word type. A bit device stores a 1-bit device value such as 0/1, ON/OFF, H/L, and the like. A word device stores a device value of one word. A variable may be specified as a device as a collection target of the data utilization program described in detail below. Variables are also holding means for holding information and are accessed by the execution engine according to the user program. Therefore, devices also refer to variables in the following description. Note that the memory that holds the device may be called a device memory. A memory that holds collected data may also be referred to as a data memory. The PLC 1 may be configured to handle variables as well as devices, the devices and variables are called symbols, and the values indicated by the symbols are called symbol values.

拡張ユニット4はPLC1の機能を拡張するために用意されている。拡張ユニット4には、その拡張ユニット4の機能に対応するフィールドデバイス(被制御装置)10が接続されることがあり、これにより、各フィールドデバイス10が拡張ユニット4を介して基本ユニット3に接続される。フィールドデバイス10は、センサやカメラなどの入力機器であってもよいし、アクチュエータなどの出力機器であってもよい。また、一つの拡張ユニット4に対して複数のフィールドデバイスが接続されてもよい。 An extension unit 4 is provided to extend the functions of the PLC1. A field device (controlled device) 10 corresponding to the function of the expansion unit 4 may be connected to the expansion unit 4 , whereby each field device 10 is connected to the basic unit 3 via the expansion unit 4 . be done. The field device 10 may be an input device such as a sensor or camera, or an output device such as an actuator. Also, a plurality of field devices may be connected to one expansion unit 4 .

たとえば、拡張ユニット4bはモータ(フィールドデバイス10)を駆動してワークの位置決めする位置決めユニットであってもよいし、カウンタユニットであってもよい。カウンタユニットは手動パルサなどのエンコーダ(フィールドデバイス10)からの信号をカウントする。 For example, the expansion unit 4b may be a positioning unit that drives a motor (field device 10) to position a workpiece, or may be a counter unit. The counter unit counts signals from an encoder (field device 10) such as a manual pulser.

分析ユニット4aは、基本ユニット3においてシンボル(デバイス、変数など)からシンボル値を収集し、シンボル値を分析して分析結果を含む分析レポートを作成する。分析ユニット4aは、分析レポートを外部のPC2bへ提供するWebサーバを有していてもよい。基本ユニット3はCPUユニットと呼ばれることもある。PLC1とPC2とを含むシステムはプログラマブルロジックコントローラシステムと呼ばれてもよい。本実施形態では、分析ユニット4aが各デバイスのデータを収集する例について説明するが、当該収集部については基本ユニット3に設けられてもよく、或いは、他の拡張ユニットに設けられてもよい。また、分析ユニット4aは、収集したデータを基本ユニット3からの指示や所定のタイミングに従って分析を行う分析装置として機能することも可能である。なお、本実施形態では、分析ユニット4aが分析装置として動作する例について説明するが、本発明を限定する意図はなく、基本ユニット3が分析装置として機能してもよく、PC2a、2bなどの外部装置が分析装置として機能してもよい。以下で説明されるフロー(フロープログラム)はデータ活用プログラムの一例に過ぎない。基本ユニット3はCPUユニットと呼ばれることもある。なお、PLC1とPC2とを含むシステムはプログラマブルロジックコントローラシステムと呼ばれてもよい。 The analysis unit 4a collects symbol values from symbols (devices, variables, etc.) in the basic unit 3, analyzes the symbol values and creates an analysis report containing the analysis results. The analysis unit 4a may have a web server that provides analysis reports to an external PC 2b. The basic unit 3 is sometimes called a CPU unit. A system including PLC1 and PC2 may be called a programmable logic controller system. In the present embodiment, an example in which the analysis unit 4a collects data of each device will be described, but the collection section may be provided in the basic unit 3 or may be provided in another expansion unit. The analysis unit 4a can also function as an analysis device that analyzes the collected data according to instructions from the basic unit 3 or predetermined timing. In this embodiment, an example in which the analysis unit 4a operates as an analysis device will be described. The device may function as an analytical device. The flow (flow program) described below is merely an example of a data utilization program. The basic unit 3 is sometimes called a CPU unit. A system including PLC1 and PC2 may be called a programmable logic controller system.

PC2aは主にプログラマーによって操作されるコンピュータである。一方、PC2bは主に現場担当者によって操作されるコンピュータである。PC2bは、ユーザにより画面設定されるプログラマブル表示器であってもよい。この場合、分析結果等を表示する画面はユーザにより画面設定されてもよく、あらかじめWebブラウザ機能が搭載され、Webブラウザ機能により分析結果等が表示されてもよい。PC2aはプログラム作成支援装置(設定装置)と呼ばれてもよい。PC2は、たとえば、携帯可能なノートタイプやタブレットタイプのパーソナルコンピュータ又はスマートフォンであって、表示部7および操作部8を備えている外部コンピュータである。外部コンピュータとは、PLC1の外部にあるコンピュータである。PLC1を制御するためのユーザプログラムの一例であるラダープログラムは、PC2aを用いて作成される。その作成されたラダープログラムは、PC2a内でニモニックコードに変換される。PC2は、USB(Universal Serial Bus)ケーブルなどの通信ケーブル9を介してPLC1の基本ユニット3に接続される。たとえば、PC2aは、ニモニックコードに変換されたラダープログラムを基本ユニット3に送る。基本ユニット3はラダープログラムをマシンコードに変換し、基本ユニット3に備えられたメモリ内に記憶する。なお、ここではニモニックコードが基本ユニット3に送信されているが、本発明はこれに限られない。たとえば、PC2aは、ニモニックコードを中間コードに変換し、中間コードを基本ユニット3に送信してもよい。 PC2a is a computer operated primarily by a programmer. On the other hand, the PC 2b is a computer mainly operated by the person in charge on site. The PC 2b may be a programmable display whose screen is set by the user. In this case, the screen for displaying the analysis results and the like may be set by the user, or a web browser function may be installed in advance and the analysis results and the like may be displayed by the web browser function. The PC 2a may be called a program creation support device (setting device). The PC 2 is, for example, a portable notebook-type or tablet-type personal computer or a smart phone, and is an external computer provided with a display unit 7 and an operation unit 8 . An external computer is a computer outside PLC1. A ladder program, which is an example of a user program for controlling the PLC 1, is created using the PC 2a. The created ladder program is converted into a mnemonic code within the PC 2a. The PC 2 is connected to the basic unit 3 of the PLC 1 via a communication cable 9 such as a USB (Universal Serial Bus) cable. For example, the PC 2a sends the basic unit 3 a ladder program converted into mnemonic codes. The basic unit 3 converts the ladder program into machine code and stores it in memory provided in the basic unit 3 . Although the mnemonic code is transmitted to the basic unit 3 here, the present invention is not limited to this. For example, the PC 2a may convert the mnemonic code into an intermediate code and send the intermediate code to the basic unit 3.

なお、図1には示していないが、PC2の操作部8には、PC2に接続されたマウスなどのポインティングデバイスが含まれていてもよい。また、PC2は、USBケーブル以外の他の通信ケーブル9を介して、PLC1の基本ユニット3に対して着脱可能に接続されるような構成であってもよい。また、PC2は、通信ケーブル9を介さず、PLC1の基本ユニット3に対して無線通信によって接続されてもよい。 Although not shown in FIG. 1, the operation unit 8 of the PC 2 may include a pointing device such as a mouse connected to the PC 2. FIG. Also, the PC 2 may be detachably connected to the basic unit 3 of the PLC 1 via a communication cable 9 other than the USB cable. Also, the PC 2 may be connected to the basic unit 3 of the PLC 1 by wireless communication without using the communication cable 9 .

<プログラム作成支援装置>
図2はPC2aの電気的構成について説明するためのブロック図である。図2が示すように、PC2aは、CPU11a、表示部7a、操作部8a、記憶装置12aおよび通信部13aを備えている。表示部7a、操作部8a、記憶装置12aおよび通信部13aは、それぞれCPU11aに対して電気的に接続されている。記憶装置12aはRAMやROM、HDD、SSDを含み、さらに着脱可能なメモリカードを含んでもよい。CPUは中央演算処理装置の略称である。HDDはハードディスクドライブの略称である。SSDはソリッドステートドライブの略称である。
<Program creation support device>
FIG. 2 is a block diagram for explaining the electrical configuration of the PC 2a. As shown in FIG. 2, the PC 2a includes a CPU 11a, a display section 7a, an operation section 8a, a storage device 12a, and a communication section 13a. The display unit 7a, the operation unit 8a, the storage device 12a, and the communication unit 13a are each electrically connected to the CPU 11a. The storage device 12a includes RAM, ROM, HDD, SSD, and may also include a removable memory card. CPU is an abbreviation for central processing unit. HDD is an abbreviation for hard disk drive. SSD is an abbreviation for solid state drive.

PC2aのユーザは記憶装置12aに記憶されているプロジェクト編集プログラム14aをCPU11aに実行させて、操作部8aを通じてプロジェクトデータ15を編集する。つまり、PC2aはエンジニアリングツールであり、プログラム作成支援装置として機能する。CPU11aがプロジェクト編集プログラム14aを実行することで、プロジェクト作成部16とプロジェクト転送部17が実現される。プロジェクト作成部16はユーザ入力にしたがってプロジェクトデータ15を作成する。プロジェクト転送部17はプロジェクトデータ15をPLC1に転送する。プロジェクトデータ15は、一つ以上のユーザプログラム(例:ラダープログラム、制御プログラム、モーションプログラム、データ活用プログラム)と、基本ユニット3や拡張ユニット4の構成情報、WebHMIの作画データ、基本ユニット3や拡張ユニット4に備えられた特定機能の設定情報などを含む。構成情報は、基本ユニット3に対する複数の拡張ユニット4の接続位置やデバイスの割り当て情報を含む。基本ユニット3に備えられた機能(例:データ収集機能、通信機能、位置決め機能)を示す情報、拡張ユニット4の機能(例:通信機能、位置決め機能、撮影機能)などを示す情報を含んでいてもよい。作画データは、WebHMIを実現するための表示部品群であり、フロントエンドの構造を記述するマークアップデータ、たとえばHTMLデータ、装飾を記述するスタイルデータ、たとえばCSSデータおよび動的な処理を記述するコード、たとえばJavaScript(登録商標)コードなどにより実現される。装飾を記述するスタイルデータは、たとえばファイル形式として提供されてもよく、構造を記述するマークアップデータ内で外部スタイルデータファイルを呼び出す記述により呼び出されてもよい。動的処理を記述するコードは、たとえばファイル形式で提供されてもよく、構造を記述するマークアップデータ内で外部コードファイルを呼び出す記述により呼び出されてもよい。外部スタイルデータファイルや外部コードファイルを呼び出して使用できる形式のフロントエンドは、再利用性やメンテナンス性が高く、たとえば汎用のフロントエンドコンポーネント等を利用することができる。以下で、作画データは、表示部品と表記される。データ活用プログラムは、PLC1において制御データ(デバイス値など)を収集したり、データ処理したり、WebHMIに渡すためのデータを作成したりするためのプログラムを含む。特定機能の設定情報は、基本ユニット3に備えられた機能(例:データ収集機能、通信機能、位置決め機能)に関する設定情報、たとえば、データ収集機能であれば、データ収集条件やデータ収集対象の設定情報を含み、拡張ユニット4の機能(例:通信機能、位置決め機能、データ活用機能、撮影機能)に関する設定情報等を含む。ここで、プロジェクトデータ15の編集には、プロジェクトデータ15の作成および変更(再編集)が含まれる。ユーザは、必要に応じて記憶装置12aに記憶されているプロジェクトデータ15を読み出し、そのプロジェクトデータ15を、プロジェクト編集プログラム14aを用いて変更することができる。通信部13aは、通信ケーブル9aを介して基本ユニット3と通信する。プロジェクト転送部17は通信部13aを介してプロジェクトデータを基本ユニット3に転送する。通信部13aは、通信ケーブル9bを介して分析ユニット4aと通信する。 The user of the PC 2a causes the CPU 11a to execute the project editing program 14a stored in the storage device 12a, and edits the project data 15 through the operation section 8a. That is, the PC 2a is an engineering tool and functions as a program creation support device. A project creation unit 16 and a project transfer unit 17 are implemented by the CPU 11a executing the project editing program 14a. A project creation unit 16 creates project data 15 according to user input. The project transfer unit 17 transfers the project data 15 to the PLC1. The project data 15 includes one or more user programs (eg, ladder program, control program, motion program, data utilization program), configuration information of the basic unit 3 and expansion unit 4, WebHMI drawing data, basic unit 3 and expansion It includes setting information for specific functions provided in the unit 4, and the like. The configuration information includes connection positions of the plurality of extension units 4 to the base unit 3 and device allocation information. It includes information indicating functions provided in the basic unit 3 (eg data collection function, communication function, positioning function), information indicating functions of the expansion unit 4 (eg communication function, positioning function, imaging function), etc. good too. Drawing data is a group of display parts for realizing WebHMI, and includes markup data describing front-end structure, such as HTML data, style data describing decoration, such as CSS data, and code describing dynamic processing. For example, it is implemented by a JavaScript (registered trademark) code or the like. The style data describing the decoration may be provided, for example, in the form of a file and may be invoked by a description calling an external style data file within the markup data describing the structure. The code describing the dynamic processing may be provided, for example, in the form of a file, and may be invoked by descriptions calling external code files within markup data describing the structure. A front-end that can be used by calling an external style data file or an external code file has high reusability and maintainability, and can use, for example, general-purpose front-end components. The drawing data is hereinafter referred to as a display component. The data utilization program includes programs for collecting control data (device values, etc.) in the PLC 1, processing the data, and creating data to be passed to the WebHMI. The setting information of the specific function is the setting information related to the functions provided in the basic unit 3 (eg data collection function, communication function, positioning function). It includes information such as setting information related to the functions of the expansion unit 4 (eg, communication function, positioning function, data utilization function, photographing function). Here, editing of the project data 15 includes creation and modification (re-editing) of the project data 15 . The user can read the project data 15 stored in the storage device 12a and change the project data 15 using the project editing program 14a, as required. The communication section 13a communicates with the basic unit 3 via the communication cable 9a. The project transfer section 17 transfers the project data to the basic unit 3 via the communication section 13a. The communication section 13a communicates with the analysis unit 4a via the communication cable 9b.

<ダッシュボードの表示に使用されるPC>
図3はPC2bの電気的構成について説明するためのブロック図である。図3が示すように、PC2bは、CPU11b、表示部7b、操作部8b、記憶装置12bおよび通信部13bを備えている。表示部7b、操作部8b、記憶装置12bおよび通信部13bは、それぞれCPU11bに対して電気的に接続されている。記憶装置12bはRAMやROM、HDD、SSDを含み、さらに着脱可能なメモリカードを含んでもよい。
<PC used to display the dashboard>
FIG. 3 is a block diagram for explaining the electrical configuration of the PC 2b. As shown in FIG. 3, the PC 2b includes a CPU 11b, a display section 7b, an operation section 8b, a storage device 12b, and a communication section 13b. The display unit 7b, the operation unit 8b, the storage device 12b, and the communication unit 13b are electrically connected to the CPU 11b. The storage device 12b includes RAM, ROM, HDD, SSD, and may also include a removable memory card.

CPU11bはWebブラウザプログラム14dを実行することでWebブラウザ18を実現する。Webブラウザ18は、通信部13bを介して、分析ユニット4aによって提供されるデータ活用アプリケーションの設定ページにアクセスしたり、ダッシュボードのページにアクセスしたりする。またCPU11bは、分析ユニット4aから送信された異常発生時の特定結果(判定結果)を示す画面情報に従って、当該特定結果を表示部7bに表示する。 The CPU 11b implements the web browser 18 by executing the web browser program 14d. The web browser 18 accesses the setting page of the data utilization application provided by the analysis unit 4a and the dashboard page via the communication unit 13b. Further, the CPU 11b displays the identification result (determination result) on the display section 7b according to the screen information indicating the identification result (determination result) at the occurrence of the abnormality transmitted from the analysis unit 4a.

<PLC>
図4はPLC1の電気的構成について説明するためのブロック図である。図4が示すように、基本ユニット3は、CPU31、表示部5、操作部6、メモリ32および通信部33を備えている。表示部5、操作部6、メモリ32、および通信部33は、それぞれCPU31に電気的に接続されている。メモリ32は、RAMやROM、メモリカードなどを含んでもよい。メモリ32はデバイス部34やプロジェクト記憶部35、リングバッファ36、運転記録記憶部37などの複数の記憶領域を有している。
<PLC>
FIG. 4 is a block diagram for explaining the electrical configuration of the PLC1. As shown in FIG. 4 , the basic unit 3 includes a CPU 31 , display section 5 , operation section 6 , memory 32 and communication section 33 . The display unit 5, the operation unit 6, the memory 32, and the communication unit 33 are electrically connected to the CPU 31, respectively. Memory 32 may include RAM, ROM, memory cards, and the like. The memory 32 has a plurality of storage areas such as a device section 34, a project storage section 35, a ring buffer 36, a driving record storage section 37, and the like.

ここで運転記録とはPLC1の運転状態をスキャンタイムレベルで記録したもので、たとえばPLC1の運転に関わる全てのシンボルのシンボル値と収集時刻とを、一スキャン毎に時系列に記録したものである。運転に関わる全てのシンボルとは、たとえばラダープログラム等のユーザプログラムに使用される全てのシンボルであってもよく、ユーザにより選択されるプログラム単位やユニット単位に含まれる全てのシンボルであってもよい。この場合、運転記録の対象となるシンボルをプログラム単位やユニット単位のように有意な単位で一括選択でき、さらに個別にシンボルを加除できるようにしてもよい。これにより、たとえば、トラブル発生時に、トラブル発生時刻の前後においてPLC1の運転に関わる全てのシンボルのシンボル値と収集時刻とを、一スキャン毎に時系列に記録した運転記録を生成し、運転記録に基づきトラブル発生時に何が起きたかを後からでも正確に把握することができる。運転記録には、その時の状況を再現するために多くの情報が含まれるが、情報が多いと運転記録のデータ容量が大きくなり取り回しが難しくなったり、運転記録の収集に負荷がかかったりするため、収集対象となるユーザによりプログラム単位やユニット単位で選択できるようになっている。 Here, the operation record is a record of the operation state of the PLC 1 at the scan time level. For example, the symbol values and collection times of all symbols related to the operation of the PLC 1 are recorded in time series for each scan. . All symbols related to operation may be all symbols used in user programs such as ladder programs, or may be all symbols included in program units or unit units selected by the user. . In this case, the symbols to be the target of the operation record can be collectively selected in significant units such as program units and unit units, and symbols can be individually added or subtracted. As a result, for example, when a trouble occurs, the symbol values of all the symbols related to the operation of the PLC 1 before and after the trouble occurrence time and the collection times are recorded in time series for each scan to generate an operation record, and the operation record is generated. Based on this, it is possible to accurately grasp what happened when a problem occurred even afterward. Driving records contain a lot of information in order to reproduce the situation at that time. , can be selected for each program or unit by the user to be collected.

また、運転記録には、シンボルに加え時系列のカメラ画像が撮像時刻ともに含まれてもよい。これにより、たとえば、トラブル発生時に、トラブル発生時刻の前後に遡って何が起きたかを後からでも正確に把握でき、設備の外観変化を示すカメラ画像も運転記録に含めることでユーザプログラムの時系列と連動してカメラ画像を記録することができる。HMI(ヒューマンマシンインタフェース)やPCなどの外部機器からの書き込み履歴やPLCからの書き込み履歴を変化点イベントとして運転記録に含めてもよい。これにより、たとえば、トラブル発生前後にどのような変化点イベントがあったかを時系列で確認できる。 In addition to the symbols, the driving records may include time-series camera images together with the times at which they were captured. As a result, when a problem occurs, for example, it is possible to accurately understand what happened before and after the time the problem occurred. Camera images can be recorded in conjunction with A writing history from an external device such as an HMI (Human Machine Interface) or a PC or a writing history from a PLC may be included in the driving record as change point events. As a result, for example, it is possible to check in chronological order what kind of change point events occurred before and after the trouble occurred.

デバイス部34はビットデバイスやワードデバイスなどを有し、各デバイスはデバイス値を記憶する。プロジェクト記憶部35は、PC2aから転送されたプロジェクトデータを記憶する。リングバッファ36は、定期的にデバイス部34からデバイス値を収集して記憶する。運転記録記憶部37は、所定のイベントが発生すると、発生時刻の周辺(発生時刻以前、発生時刻以後、または、発生時刻の前後)に収集されたデバイス値とその収集時刻とを含むイベント記録を記憶する。イベントとは、たとえば、デバイスごとに設定された警報条件または注意条件が満たされたことをいう。警報条件とは、たとえば、PLC1による製造ラインの制御動作を停止すべきような条件をいう。注意条件は、たとえば、PLC1による製造ラインの制御動作について管理者が注意すべきようなデバイス値の条件をいう。CPU31は、PC2aからの要求に応答してイベント記録をPC2aへ送信する。また、CPU31は、リアルタイムでデバイス値をPC2aに提供してもよい。メモリ32は基本ユニット3のCPU31により実行される制御プログラムも記憶する。図3が示すように基本ユニット3と拡張ユニット4とは拡張バスの一種であるユニット内部バス90を介して接続されている。なお、ユニット内部バス90に関する通信機能はCPU31に実装されるが、通信部33の一部として実装されてもよい。通信部33は、USB規格などに準拠したシリアル通信回路を有してもよい。CPU31は通信部33を介してプロジェクトデータをPC2aから受信する。 The device unit 34 has bit devices, word devices, etc., and each device stores a device value. The project storage unit 35 stores project data transferred from the PC 2a. The ring buffer 36 periodically collects and stores device values from the device unit 34 . When a predetermined event occurs, the driving record storage unit 37 stores an event record including the device values collected around the occurrence time (before the occurrence time, after the occurrence time, or before and after the occurrence time) and the collection time. Remember. An event means, for example, that an alarm condition or caution condition set for each device is met. An alarm condition is, for example, a condition under which the control operation of the manufacturing line by the PLC 1 should be stopped. The caution condition is, for example, a device value condition that the manager should pay attention to when controlling the manufacturing line by the PLC 1 . The CPU 31 transmits the event record to the PC 2a in response to the request from the PC 2a. Also, the CPU 31 may provide the device value to the PC 2a in real time. The memory 32 also stores control programs executed by the CPU 31 of the basic unit 3 . As shown in FIG. 3, the basic unit 3 and the expansion unit 4 are connected via a unit internal bus 90 which is a kind of expansion bus. Although the communication function related to the unit internal bus 90 is implemented in the CPU 31, it may be implemented as part of the communication section 33. FIG. The communication unit 33 may have a serial communication circuit conforming to the USB standard or the like. The CPU 31 receives the project data from the PC 2a via the communication section 33. FIG.

ここで、ユニット内部バス90について、補足説明する。このユニット内部バス90は、入出力リフレッシュに使用される通信バスである。入出力リフレッシュとは、基本ユニット3と拡張ユニット4との間でデバイス値を更新する処理である。入出力リフレッシュは、ラダープログラムが一回実行されるごとに(つまり、一スキャンごとに)、実行される。 Here, the unit internal bus 90 will be additionally explained. This unit internal bus 90 is a communication bus used for input/output refresh. Input/output refresh is processing for updating device values between the basic unit 3 and the expansion unit 4 . The input/output refresh is executed each time the ladder program is executed (that is, each scan).

拡張ユニット4はCPU41とメモリ42を備えている。拡張ユニット4bのCPU41bは、デバイスに格納された基本ユニット3からの指示(デバイス値)にしたがってフィールドデバイス10を制御する。なお、本実施形態において拡張ユニット4bは、カメラ制御ユニットとして機能する。また、CPU41bは、カメラ等のフィールドデバイス10の制御結果をバッファメモリとよばれるデバイスに格納する。デバイスに格納された制御結果は入出力リフレッシュによって基本ユニット3に転送される。また、デバイスに格納されている制御結果は、基本ユニット3からの読み出し命令にしたがって、入出力リフレッシュとは異なるタイミングであっても、基本ユニット3に転送されることがある。メモリ42はRAMやROMなどを含む。とりわけ、RAMにはバッファメモリとして使用される記憶領域が確保されている。メモリ42は、フィールドデバイス10によって取得されたデータ(例:静止画データや動画データ)を一時的に保持するバッファを有してもよい。 The expansion unit 4 has a CPU 41 and a memory 42 . The CPU 41b of the expansion unit 4b controls the field device 10 according to instructions (device values) from the basic unit 3 stored in the device. Note that the expansion unit 4b functions as a camera control unit in this embodiment. Further, the CPU 41b stores the control result of the field device 10 such as a camera in a device called a buffer memory. The control result stored in the device is transferred to the basic unit 3 by input/output refresh. Also, the control result stored in the device may be transferred to the basic unit 3 according to a read command from the basic unit 3 even at a timing different from the input/output refresh. The memory 42 includes RAM, ROM, and the like. Among other things, a storage area is reserved in the RAM to be used as a buffer memory. The memory 42 may have a buffer that temporarily holds data acquired by the field device 10 (eg, still image data or moving image data).

データ活用ユニット(分析ユニット)として機能する分析ユニット4aのCPU41aは、通信部43と通信ケーブル9bを介してPC2bと通信する。通信部43は、ネットワーク通信を実行する通信回路を含む。CPU41aは、基本ユニット3において収集されたデバイス値を分析することで、分析結果を含む分析レポートを作成する。たとえば、CPU41aは、データ活用アプリケーションとして運転記録分析アプリケーションを実行することにより、運転記録データに含まれるシンボル値を分析することで、非正常シンボルと当該シンボルが非正常となる時刻とを特定し、非正常シンボルと当該シンボルが非正常となる時刻とを対応づけた分析結果を含む分析レポートを作成する。運転記録データは、運転記録の保存イベント発生時刻周辺の状況を再現するための情報を含んでいるため、分析レポートと紐づけて管理されてもよい。また、運転記録データは、運転記録の保存イベント発生時刻周辺の状況を再現するため、多くのシンボルのシンボル値を含むことからデータサイズが大きくなる。このため、たとえば、CPU41aは、運転記録データの中から、分析レポートに必要なデータを読み出して、分析レポート用のデータとして運転記録データに追加保存してもよい。分析レポート用のデータは、もともと運転記録データに含まれていた分析レポートに必要なデータを、そのままコピーしたものを分析レポート用のデータとしてタグ付けして運転記録データに追加保存してもよく、分析レポート用にデータ加工して運転記録データに追加保存してもよい。 The CPU 41a of the analysis unit 4a functioning as a data utilization unit (analysis unit) communicates with the PC 2b via the communication section 43 and the communication cable 9b. Communication unit 43 includes a communication circuit that performs network communication. By analyzing the device values collected in the basic unit 3, the CPU 41a creates an analysis report including the analysis results. For example, the CPU 41a executes a driving record analysis application as a data utilization application to analyze the symbol values included in the driving record data, thereby identifying an abnormal symbol and the time when the symbol becomes abnormal, An analysis report is created that includes analysis results in which abnormal symbols are associated with times when the symbols become abnormal. Since the driving record data includes information for reproducing the situation around the time when the storage event occurred in the driving record, it may be managed in association with the analysis report. In addition, since the driving record data reproduces the situation around the time when the saving event occurred in the driving record, the data size is large because it includes the symbol values of many symbols. Therefore, for example, the CPU 41a may read data necessary for the analysis report from the driving record data, and additionally save the read data in the driving record data as data for the analysis report. As for the data for the analysis report, the data necessary for the analysis report that was originally included in the driving record data may be copied as it is, tagged as the data for the analysis report, and additionally saved in the driving record data. Data may be processed for an analysis report and additionally stored in the driving record data.

運転記録データにカメラ画像が含まれると、カメラ画像の再生により運転記録の保存イベント発生時刻周辺の状況をより詳細に把握することができる。分析レポートはカメラ画像を再生するUI(ユーザインターフェース)を含んでもよい。カメラ画像はデータサイズが大きいため、カメラ画像を再生するUIにおいてクリックやスクロール操作を受け付けた時などに必要なカメラ画像データだけを部分的にダウンロードしてもよい。たとえば、CPU41aは、分析レポートを作成する際、カメラ画像を分析レポートにおける表示順序に対応して加工したり、時刻とカメラ画像の保存位置の対応関係を示すインデックス情報を生成し、時刻に対応したカメラ画像を高速かつ部分的にダウンロードできるようにしてもよい。 When a camera image is included in the driving record data, it is possible to grasp in more detail the situation around the time when the saving event occurred in the driving record by reproducing the camera image. The analysis report may include a UI (user interface) that reproduces camera images. Since a camera image has a large data size, only necessary camera image data may be partially downloaded when a click or scroll operation is received on the UI for reproducing the camera image. For example, when creating an analysis report, the CPU 41a processes the camera images in accordance with the display order in the analysis report, generates index information indicating the correspondence between the time and the storage position of the camera image, The camera image may be downloaded partially at high speed.

狭義には、分析レポートは、分析結果そのものを意味するが、広義には、分析結果を表示するWebアプリケーションやそのユーザインタフェースを意味することがある。CPU41aは、たとえば、デバイス値が正常範囲内かどうかや、デバイス値が変化するタイミングが正常範囲内かどうかなどを判定する。デバイス値が変化するタイミングが正常範囲内かどうかは、たとえば、デバイス値が“1”(オン)である期間の長さが正常範囲かどうかであってもよい。また、ある工程またはサイクルにおけるデバイス値の変化回数が正常範囲内かどうかが判定されてもよい。あるデバイスから収集されたデバイス値が正常条件を満たしていない場合、そのデバイスは、いつもと違う振る舞いのデバイスであるため、非正常デバイスと呼ばれてもよい。CPU41aは、Web形式の分析レポートを作成し、通信部43および通信ケーブル9bを介して分析レポートをPC2bのWebブラウザに提供してもよい。CPU31がプロトコル変換機能を有している場合、CPU41aは、ユニット内部バス90、CPU31、通信部33および通信ケーブル9aを介して、分析レポートをPC2aに送信してもよい。分析レポートは、グラフ表示部品や数値表示部品などを有してもよい。これらの表示部品は、フロントエンドの構造を記述するマークアップデータ、装飾を記述するスタイルデータおよび動的な処理を記述するコード、たとえばHTMLデータ、CSSデータおよびJavaScript(登録商標)コードなどにより実現される。HTMLはハイパーテキストマークアップ言語の略称である。CSSはカスケーディングスタイルシートの略称である。 In a narrow sense, the analysis report means the analysis result itself, but in a broader sense, it may mean a web application displaying the analysis result and its user interface. The CPU 41a determines, for example, whether the device value is within the normal range and whether the timing at which the device value changes is within the normal range. Whether the timing at which the device value changes is within the normal range may be, for example, whether the length of the period during which the device value is "1" (on) is within the normal range. It may also be determined whether the number of device value changes in a step or cycle is within a normal range. If the device values collected from a device do not meet normal conditions, the device may be called an abnormal device because the device behaves differently than usual. The CPU 41a may create a web-format analysis report and provide the analysis report to the web browser of the PC 2b via the communication unit 43 and the communication cable 9b. If the CPU 31 has a protocol conversion function, the CPU 41a may transmit the analysis report to the PC 2a via the unit internal bus 90, CPU 31, communication section 33 and communication cable 9a. The analysis report may have a graph display component, a numerical display component, and the like. These display components are realized by markup data describing the structure of the front end, style data describing decoration, and code describing dynamic processing, such as HTML data, CSS data, and JavaScript (registered trademark) code. . HTML is an abbreviation for Hypertext Markup Language. CSS is an abbreviation for Cascading Style Sheets.

<PC2bの機能>
図5はPC2bのCPU11bによって実現される機能を説明する図である。PC2bのCPU11bは、Webブラウザプログラム14dを実行することによりWebブラウザ18を実行する。Webブラウザ18はWebアプリケーション61を実行して、通信処理部62、データ取得部63、描画部65、受付部66、および再生部67の機能を実現する。また、Webブラウザ18は、後述する分析ユニット4aのWebサーバ82と、HTTP(ハイパーテキストトランスポートプロトコル)にしたがって通信して表示部品を受信する。
<Functions of PC2b>
FIG. 5 is a diagram for explaining functions realized by the CPU 11b of the PC 2b. The CPU 11b of the PC 2b executes the web browser 18 by executing the web browser program 14d. The web browser 18 executes the web application 61 and implements functions of a communication processing unit 62 , a data acquisition unit 63 , a drawing unit 65 , a reception unit 66 and a reproduction unit 67 . The web browser 18 also communicates with a web server 82 of the analysis unit 4a, which will be described later, according to HTTP (hypertext transport protocol) to receive display components.

Webブラウザ18は、Webアプリケーション61を実行することで分析レポートを表示部7bに表示する。Webアプリケーション61は、たとば、HTMLデータ、CSSデータおよびjava(R)スクリプトなどにより構成される。Webアプリケーション61は、分析ユニット4aから提供されてもよい。通信処理部62は、Webサーバ82との通信を処理する。データ取得部63は、分析レポートに表示すべき運転記録データを分析ユニット4aから取得する。運転記録は、ダウンロードして記憶装置12bに記憶される。描画部65は分析レポートを表示部7bに表示する。連携部64は、分析レポートにおける再生時刻と、運転記録の再生時刻とが同期するように時刻管理を実行する。 The web browser 18 executes the web application 61 to display the analysis report on the display unit 7b. The web application 61 is composed of, for example, HTML data, CSS data, java(R) scripts, and the like. A web application 61 may be provided from the analysis unit 4a. The communication processing unit 62 processes communication with the web server 82 . The data acquisition unit 63 acquires driving record data to be displayed in the analysis report from the analysis unit 4a. The driving record is downloaded and stored in the storage device 12b. The drawing unit 65 displays the analysis report on the display unit 7b. The linking unit 64 performs time management so that the playback time in the analysis report and the playback time in the driving record are synchronized.

受付部66は、分析レポートの結果表示画面に対しての操作などを受け付ける。再生部67は、たとえば、受付部66又は連携部64から入力される再生要求に応じて、運転記録データをダウンロードさせて記憶装置12bに保存させる。再生要求には、たとえば、運転記録を特定可能な識別情報(例:固有の識別情報やPLC1における保存パス名)などが含まれていてもよい。再生部67は、記憶装置12に保存されている運転記録を再生して表示部7に表示する。再生部67は、PLC1からリアルタイムで取得される時系列のデバイス値を波形化して表示したり、運転記録に含まれる時系列のデバイス値を波形化して表示したりしてもよい。 The receiving unit 66 receives an operation or the like on the result display screen of the analysis report. For example, in response to a reproduction request input from the reception unit 66 or the cooperation unit 64, the reproduction unit 67 causes the driving record data to be downloaded and stored in the storage device 12b. The reproduction request may include, for example, identification information that can identify the driving record (eg, unique identification information or a storage path name in the PLC 1). The reproducing unit 67 reproduces the driving record stored in the storage device 12 and displays it on the display unit 7 . The reproducing unit 67 may waveform and display the time-series device values obtained from the PLC 1 in real time, or may waveform and display the time-series device values included in the driving record.

<PLC1の機能>
図6はPLC1においてCPU31とCPU41aとが制御プログラムを実行することで実現する機能を示している。CPU31においてコマンド処理部71は、PC2a、2bから受信されるコマンドを解釈し、解釈結果に対応した処理を実行する。たとえば、HTTPリクエストをカプセル化して作成された要求信号が受信されると、コマンド処理部71は、要求信号をCPU41aに転送する。要求信号に対する応答信号がCPU41aから受信されると、コマンド処理部71は、応答信号をPC2a、2bへ転送する。コマンド処理部71は分析ユニット4aにも設けられてよい。その場合、PC2aからコマンドについてはコマンド処理部71が処理し、PC2bからのコマンドは分析ユニット4aに設けられたコマンド処理部が処理する。収集部72は、基本ユニット3や拡張ユニット4bからシンボル値(デバイス値や変数に格納された値)を収集してリングバッファ36に格納する。収集部72の収集設定については基本ユニット3および分析ユニット4aの少なくとも一方から行うことができる。ロギング部73は、収集されたシンボル値などに基づき、何らかのエラーまたはトラブル(非正常イベント)がPLC1において生じているかどうかを判定する。たとえば、ロギング部73は、収集されたシンボル値が記録条件を満たしているかどうかを判定してもよい。収集されたシンボル値が記録条件を満たしている場合に、ロギング部73は、当該シンボル値を運転記録74内の稼働ログ76として保存する。ロギング部73は、運転記録を作成したときに実行されていたプロジェクトデータ75も運転記録74内に保存する。さらに、ロギング部73は、運転記録74を作成したことを分析部83に通知する。設定部78は、オペレータの入力に従って後述する学習モデルの生成や、分析、分析レポートの生成に利用する制御サイクルを設定する。制御サイクルは、サイクルの基準となるタイミングを指定することで設定され、制御サイクルの設定をサイクル設定と呼ぶ。たとえば、サイクル設定は、サイクルの開始タイミングを規定するシンボル名と、シンボル値の立上り/立下りのエッジ情報とを含む。また、サイクル設定は、サイクルの開始タイミングを規定するシンボル名と、シンボル値の立上り/立下りのエッジ情報とによるサイクルの開始タイミングの設定情報と、サイクルの終了タイミングを規定するシンボル名と、シンボル値の立上り/立下りのエッジ情報とによるサイクルの終了タイミングの設定情報を含んでいてもよい。設定部78による制御サイクルの設定はCSV等のファイル形式でPLC1に提供され、設定部78がCSV等のファイルを読み出して制御サイクルを設定してもよい。たとえば、設定部78によって設定された制御サイクルは、当該サイクルに同期するデバイスを分類して当該分類情報を属性情報としてモデルへ付加したり、分析対象とするデバイスを制御サイクルによって絞ったり、制御サイクルに同期して表示される分析レポートを生成したりするために用いられる。設定される制御サイクルは複数であってもよい。設定方法については後述する。また、制御サイクルは必ずしも設定する必要はなく、たとえば、正常時におけるシンボル値の取り得る値が予め決まっている場合、シンボル値がその予め決まっている取り得る値か否かを判定することで非正常シンボルとして判定することができる。
<Function of PLC1>
FIG. 6 shows functions realized by the CPU 31 and the CPU 41a executing the control program in the PLC 1. As shown in FIG. A command processing unit 71 in the CPU 31 interprets commands received from the PCs 2a and 2b, and executes processing corresponding to the interpretation result. For example, when a request signal created by encapsulating an HTTP request is received, the command processing unit 71 transfers the request signal to the CPU 41a. When a response signal to the request signal is received from the CPU 41a, the command processing section 71 transfers the response signal to the PCs 2a and 2b. The command processing section 71 may also be provided in the analysis unit 4a. In this case, commands from the PC 2a are processed by the command processing section 71, and commands from the PC 2b are processed by the command processing section provided in the analysis unit 4a. The collection unit 72 collects symbol values (device values and values stored in variables) from the basic unit 3 and the expansion unit 4b and stores them in the ring buffer 36 . Collection setting of the collection unit 72 can be performed from at least one of the basic unit 3 and the analysis unit 4a. The logging unit 73 determines whether any error or trouble (abnormal event) has occurred in the PLC 1 based on the collected symbol values and the like. For example, the logging unit 73 may determine whether the collected symbol values satisfy recording conditions. When the collected symbol values satisfy the recording conditions, the logging unit 73 saves the symbol values as an operation log 76 within the operation record 74 . The logging unit 73 also stores in the driving record 74 the project data 75 that was being executed when the driving record was created. Furthermore, the logging unit 73 notifies the analysis unit 83 that the driving record 74 has been created. The setting unit 78 sets a control cycle used for generation of a learning model (to be described later), analysis, and generation of an analysis report according to an operator's input. A control cycle is set by specifying a timing that serves as a reference for the cycle, and the setting of the control cycle is called cycle setting. For example, the cycle setting includes a symbol name that defines the start timing of the cycle and rising/falling edge information of the symbol value. The cycle setting includes a symbol name that defines the cycle start timing, cycle start timing setting information based on rising/falling edge information of the symbol value, a symbol name that defines the cycle end timing, and symbol It may contain setting information of cycle end timing based on rising/falling edge information of the value. The setting of the control cycle by the setting unit 78 may be provided to the PLC 1 in a file format such as CSV, and the setting unit 78 may read the file such as CSV to set the control cycle. For example, the control cycle set by the setting unit 78 classifies devices synchronized with the cycle and adds the classification information to the model as attribute information, narrows down the devices to be analyzed by the control cycle, and controls the control cycle. It is used to generate analysis reports that are displayed synchronously with A plurality of control cycles may be set. A setting method will be described later. Also, the control cycle does not necessarily have to be set. For example, if the possible values of the symbol values in the normal state are determined in advance, it is determined whether the symbol values are the predetermined possible values or not. It can be determined as a normal symbol.

CPU41aにおいてプロトコル変換部81は、PC2bからカプセル化されて転送されてきたHTTPリクエストをプロトコル変換して要求信号からとりだす。プロトコル変換部81は、HTTPリクエストに対してWebサーバ82から送信される応答情報をカプセル化してCPU41aに渡す。プロトコル変換部81は透過的なトンネル(例:TCPトンネル)を提供してもよい。Webサーバ82は、分析部83により作成された分析レポートをPC2bへ提供する。分析部83は、運転記録74内の稼働ログ76を後述するモデルを用いて分析し、分析結果77を作成して、ロギング部73に渡す。分析部83が分析結果77を作成すると、ロギング部73は、プロジェクトデータ75および稼働ログ76に加えて、分析結果77を含む運転記録74に追加する。運転記録74は、運転記録記憶部37に格納される。或いは、分析結果77は分析ユニット4aのメモリ42aに記憶されてもよい。通知発行部84は、分析結果77が発行されると、通知を発行する。この通知は、CPU11bに送信される。 In the CPU 41a, the protocol conversion unit 81 converts the protocol of the HTTP request transferred from the PC 2b in an encapsulated form and extracts it from the request signal. The protocol converter 81 encapsulates the response information transmitted from the web server 82 in response to the HTTP request and passes it to the CPU 41a. The protocol converter 81 may provide a transparent tunnel (eg TCP tunnel). The web server 82 provides the analysis report created by the analysis unit 83 to the PC 2b. The analysis unit 83 analyzes the operation log 76 in the operation record 74 using a model described later, creates analysis results 77 , and passes them to the logging unit 73 . When the analysis unit 83 creates the analysis result 77 , the logging unit 73 adds it to the operation record 74 including the analysis result 77 in addition to the project data 75 and the operation log 76 . The driving record 74 is stored in the driving record storage unit 37 . Alternatively, analysis results 77 may be stored in memory 42a of analysis unit 4a. The notification issuing unit 84 issues a notification when the analysis result 77 is issued. This notification is sent to the CPU 11b.

たとえば、Webブラウザ18がHTTPリクエストにより分析レポートを要求すると、Webサーバ82はHTTPリクエストをプロトコル変換部81に渡す。HTTPリクエストには、CPU41aで実行され、分析レポートを提供する分析ユニット4a(Webサーバ)のURL(ユニフォームリソースロケータ)が含まれている。プロトコル変換部81は、HTTPリクエストをカプセル化して、所定の通信プロトコルで送信可能な要求信号(コマンド)に変換する。この要求信号は、分析ユニット4aのCPU41aに渡される。CPU41aは、CPU11bに分析レポートを返信する。CPU11bは、分析レポートをWebブラウザ18に渡す。これによりWebブラウザ18は表示部7bに分析レポートを表示する。 For example, when the web browser 18 requests an analysis report using an HTTP request, the web server 82 passes the HTTP request to the protocol converter 81 . The HTTP request contains the URL (Uniform Resource Locator) of the analysis unit 4a (Web server) which is executed by the CPU 41a and which provides the analysis report. The protocol converter 81 encapsulates the HTTP request and converts it into a request signal (command) that can be transmitted using a predetermined communication protocol. This request signal is passed to the CPU 41a of the analysis unit 4a. The CPU 41a sends back an analysis report to the CPU 11b. The CPU 11b passes the analysis report to the web browser 18. FIG. As a result, the web browser 18 displays the analysis report on the display section 7b.

モデル生成部86は、後に分析部83が運転記録データと比較するためのマスタデータとなるモデルを作成する。レポート生成部85は、分析結果77をPC2bのWebブラウザ18で表示するための表示画面である分析レポートを生成する。分析レポートには、複数の分析結果が含まれるが、それらの分析結果は時間軸上で同期して表示される。分析レポートの詳細については図8Aを用いて後述する。モデル生成部86は、分類部87および決定部88を備える。 The model generation unit 86 creates a model that becomes master data for the analysis unit 83 to later compare with the driving record data. The report generator 85 generates an analysis report, which is a display screen for displaying the analysis result 77 on the web browser 18 of the PC 2b. An analysis report contains a plurality of analysis results, and these analysis results are displayed synchronously on the time axis. Details of the analysis report will be described later with reference to FIG. 8A. The model generator 86 includes a classifier 87 and a determiner 88 .

分類部87は、収集部72によって収集された各デバイスの時系列データから、各デバイスが何れの類型に属するかを分類する。分類の手法については、図13を用いて後述する。なお、分類部87は、任意のタイミングで分類処理を実行するものであるが、基本的にはシステムの運用が開始されたタイミングやユーザからの指示を受け付けたタイミングで分類処理を実行する。決定部88は、分類部87によって分類された時系列データに従って、いつもと異なる状態のデバイスを検知する際の分析パラメータを決定し、メモリ42aに格納する。決定部88は、分類部87によって分類処理が実行されると、分類パラメータの決定処理を行い、同一のデバイスについて既に分析パラメータが決定されている場合には当該分析パラメータを更新する。更新する際には、上書きにより更新してもよいし、平均値をとるなど2つの分析パラメータから新たな分析パラメータを決定するようにしてもよい。また、デバイスごとに更新時の処理を決定するようにしてもよい。このように、分類部87および決定部88は、収集した運転記録データを分析して正常時のデータがどのようなものであるかを学習する学習フェーズにおいて機能する処理部であり、非正常デバイスを推定する際の分析パラメータを決定する。一方、分析部83は、非正常デバイスを推定する推定フェーズで機能する処理部である。分析部83は、決定された分析パラメータを用いて、収集部72によって収集された各デバイスの時系列データから非正常デバイスを検知する。分析パラメータには、たとえばデバイス値のONの時間、OFFの時間、立ち上がりのタイミング、立ち下がりのタイミング、ONの回数、OFFの回数、および定常値の少なくとも1つが含まれる。 The classification unit 87 classifies to which type each device belongs from the time-series data of each device collected by the collection unit 72 . A classification method will be described later with reference to FIG. 13 . The classification unit 87 executes classification processing at arbitrary timing, but basically executes classification processing at the timing when system operation is started or when an instruction from the user is received. The determination unit 88 determines analysis parameters for detecting a device in an unusual state according to the time-series data classified by the classification unit 87, and stores them in the memory 42a. When the classification processing is executed by the classification section 87, the determination section 88 performs classification parameter determination processing, and updates the analysis parameters if the analysis parameters have already been determined for the same device. When updating, it may be updated by overwriting, or a new analysis parameter may be determined from two analysis parameters such as taking an average value. Also, the process at the time of updating may be determined for each device. In this way, the classification unit 87 and the determination unit 88 are processing units that function in the learning phase of analyzing the collected driving record data and learning what the data looks like in a normal state. determine the analytical parameters for estimating On the other hand, the analysis unit 83 is a processing unit that functions in the estimation phase for estimating abnormal devices. The analysis unit 83 uses the determined analysis parameters to detect abnormal devices from the time-series data of each device collected by the collection unit 72 . The analysis parameters include, for example, at least one of ON time, OFF time, rising timing, falling timing, ON count, OFF count, and steady state value of the device value.

<基本フロー>
図7は、本実施形態に係るモデル生成と、運転記録データの分析および結果出力の基本フローを示す。以下で説明する処理は、基本ユニット3のCPU31および分析ユニット(拡張ユニット)4aのCPU41aによって実行される処理として説明する。しかし、本発明を限定する意図はなく、それらの処理の一部が他のユニットで実行されてもよいし、それらの処理の全てが一つのユニットで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された外部装置(分析装置)によって実行されてもよい。
<Basic flow>
FIG. 7 shows the basic flow of model generation, analysis of driving record data, and result output according to this embodiment. The processing described below is performed by the CPU 31 of the basic unit 3 and the CPU 41a of the analysis unit (expansion unit) 4a. However, without intending to limit the invention, some of those processes may be performed in other units, all of those processes may be performed in one unit, or the programmable logic controller may be performed by an external device (analyzer) communicatively connected to the

S1で基本ユニット3のCPU31は、PC2aを介して入力された情報に従って、収集部72における収集設定や分析設定を設定する。たとえば、CPU31は、収集設定として、収集対象や収集期間、保存先、ファイル名などを設定することができる。分析設定としては、たとえば分析対象となるサイクルの開始および終了の設定が含まれる。ここでは基本ユニット3が収集設定および分析設定を行う例について説明したが、分析ユニット4aのCPU41aがPC2bを介して入力された情報に従って収集設定を行ってもよい。さらにS1では、基本ユニット3のCPU31が、分析設定として、PC2a、2bの表示部7a、7bに表示された設定画面を介して入力された情報に従って撮影条件等のカメラ設定や画像処理設定、監視項目設定などを設定することができる。なお、これらの分析設定についても分析ユニット4aのCPU41aによって実行することも可能である。その後、S2でCPU31は、S1で設定された収集設定に従って運転記録データを、モデル作成用データとして収集し、運転記録記憶部37へ格納する。より詳細には、収集設定に従って収集された全デバイス値が一旦リングバッファ36へ格納され、リングバッファ36から必要なデータが運転記録データとして運転記録記憶部37へ格納される。 In S1, the CPU 31 of the basic unit 3 sets collection settings and analysis settings in the collection unit 72 according to information input via the PC 2a. For example, the CPU 31 can set collection targets, collection periods, storage destinations, file names, and the like as collection settings. Analysis settings include, for example, settings for the start and end of a cycle to be analyzed. Here, an example in which the basic unit 3 performs collection settings and analysis settings has been described, but the CPU 41a of the analysis unit 4a may perform collection settings according to information input via the PC 2b. Further, in S1, the CPU 31 of the basic unit 3 performs camera settings such as shooting conditions, image processing settings, and monitoring data according to information input via the setting screens displayed on the display units 7a and 7b of the PCs 2a and 2b as analysis settings. Item settings can be set. These analysis settings can also be executed by the CPU 41a of the analysis unit 4a. After that, in S2, the CPU 31 collects driving record data as data for model creation according to the collection setting set in S1, and stores it in the driving record storage unit 37. FIG. More specifically, all device values collected according to the collection settings are temporarily stored in the ring buffer 36, and necessary data from the ring buffer 36 is stored in the driving record storage unit 37 as driving record data.

次に、S3で分析ユニット4aのCPU41aは、収集された運転記録データを利用してモデルを作成する。当該モデルには、各デバイスのパターンを、定数、ビットパターン、アナログ値などの特徴量に基づいて分類したデバイスごとの情報や、デバイス値が変化するタイミングを示す情報が含まれてもよい。つまり、当該モデルは、各デバイスの正常時の変化パターンが学習される。S3の詳細な処理については図11を用いて後述する。 Next, in S3, the CPU 41a of the analysis unit 4a creates a model using the collected driving record data. The model may include information for each device in which patterns of each device are classified based on feature amounts such as constants, bit patterns, and analog values, and information indicating the timing at which device values change. In other words, the model learns the pattern of change in the normal state of each device. Detailed processing of S3 will be described later using FIG.

その後、S4で基本ユニット3のCPU31は運転記録データの分析を行うトリガが発生したか否かを判断する。当該トリガは、基本的には運転中にいつもと違う異常が発生した場合をトリガとするものであり、その成立条件として、たとえばエラービットが設定された場合や、監視アプリケーション等のアプリケーションからの所定のイベントの発生、オペレータからの手動による指示の受け付け等が挙げられる。トリガが発生するとS5へ進む。 Thereafter, in S4, the CPU 31 of the basic unit 3 determines whether or not a trigger for analyzing the driving record data has occurred. The trigger is basically triggered when an unusual abnormality occurs during operation. , the receipt of manual instructions from the operator, and the like. When a trigger occurs, the process proceeds to S5.

S5で基本ユニット3のCPU31は、各デバイス値を収集して分析を行うための運転記録データを、運転記録記憶部37に保存する。通常、いつもと違う何らかの変化が発生した後にトリガが発生する。従って、ここでは、そのような変化の原因を特定するためにトリガ前後のデータが取得される。上述したように、運転中における全デバイスのデバイス値はリングバッファ36へ保持されている。従って、CPU31はトリガが発生したと判断すると、S1で設定された分析設定に従って、トリガ前後の必要なデバイス値をリングバッファ36から運転記録記憶部37へ格納する。また、S5で分析ユニット4aのCPU41aは、基本ユニット3から分析用の運転記録データを取得する。ここでは、運転記録データに加えて、更にカメラ画像データやイベントの発生履歴、エラー履歴の情報も合わせて取得してもよい。 In S<b>5 , the CPU 31 of the basic unit 3 saves the driving record data for collecting and analyzing each device value in the driving record storage section 37 . Usually the trigger occurs after some unusual change has occurred. Therefore, here, pre- and post-trigger data is acquired to identify the cause of such changes. As described above, the device values of all devices are held in the ring buffer 36 during operation. Accordingly, when the CPU 31 determines that a trigger has occurred, it stores necessary device values before and after the trigger from the ring buffer 36 into the driving record storage unit 37 according to the analysis setting set in S1. Further, in S5, the CPU 41a of the analysis unit 4a acquires driving record data for analysis from the basic unit 3. FIG. Here, in addition to the driving record data, camera image data, event occurrence history, and error history information may also be acquired.

その後、S6で分析ユニット4aのCPU41aは、基本ユニット3で収集された時系列データを取得して、S2で生成されたモデルと比較して分析処理を実行する。分析処理では、各デバイスについて、S3で生成されたマスタデータであるモデルデータと、分析対象の運転記録データとを比較して、対象デバイスがいつもと異なる状態であるかどうかを判断する。所定値以上の差分があればいつもとは異なる状態が検知されていると判断する。さらにCPU41aは判断後の分析結果を基本ユニット3の運転記録記憶部37における分析結果77の記憶領域に、各デバイスごとの分析結果を格納する。ここで分析結果77には、いつもと異なる状態が検知されたデバイスの分析結果とその記録データとが時間情報とともに格納されることが望ましい。これにより、オペレータ等からの分析レポートの生成要求を受け付けた場合にそれらの情報を用いて各デバイス値を同期させて表示可能な分析レポートを容易に作成することができる。なお、拡張ユニット4bから得られるカメラ映像も紐づけて格納してもよい。さらに、S7でCPU41aは、分析結果に基づいて、結果を示す表示データ(分析レポート)を生成し、通信部43を介して生成した表示データをPC2bや外部装置へ送信し、処理を終了する。たとえば、PC2bにおいて分析結果がオペレータに対して表示される。分析レポートを表示した結果表示画面の詳細については図8Aを用いて後述する。 After that, in S6, the CPU 41a of the analysis unit 4a acquires the time-series data collected in the basic unit 3, compares it with the model generated in S2, and executes analysis processing. In the analysis process, for each device, the model data, which is the master data generated in S3, and the driving record data to be analyzed are compared to determine whether the target device is in an unusual state. If there is a difference equal to or greater than a predetermined value, it is determined that an unusual state has been detected. Furthermore, the CPU 41a stores the analysis result after the determination in the storage area of the analysis result 77 in the driving record storage section 37 of the basic unit 3 for each device. Here, it is desirable that the analysis result 77 stores the analysis result of the device in which an unusual state was detected and its recorded data together with time information. As a result, when an analysis report generation request is received from an operator or the like, it is possible to easily generate an analysis report that can be displayed by synchronizing each device value using the information. Note that the camera image obtained from the expansion unit 4b may also be linked and stored. Further, in S7, the CPU 41a generates display data (analysis report) indicating the results based on the analysis results, transmits the generated display data to the PC 2b or an external device via the communication section 43, and ends the process. For example, analysis results are displayed to the operator on the PC 2b. Details of the result display screen displaying the analysis report will be described later with reference to FIG. 8A.

監視アプリケーションは、分析ユニット4aのCPU41aにより実行されるデータ活用アプリケーションの一つである。分析ユニット4aは、データ活用アプリケーションを実行する拡張ユニットであってもよい。データ活用アプリケーションは、制御データを収集したりデータ処理したりするデータ活用プログラム(例:フロー)と、データ活用プログラムの実行結果を表示するダッシュボードとを含む。データ活用アプリケーションとしては、監視対象であるデバイスや変数をリアルタイムに監視する監視アプリケーションと、PLC1の運転状態を再現するための運転記録を分析して分析レポートを生成する運転記録分析アプリケーションなどが存在してもよい。また、データ活用アプリケーションとしては、可動率(べきどうりつ)、良品率、または、サイクルタイムなどのKPI(Key Performance Indicator)を算出する算出アプリケーションなどが存在してもよい。監視アプリケーションは、PLC1のシンボルのシンボル値に基づく常時監視するためのアプリケーションで、たとえば監視アプリケーションの設定に応じて1又は複数のシンボルのシンボル値をスキャンタイムレベルで常時収集し、収集したシンボル値に基づく情報をリアルタイムに更新しながら常時表示するアプリケーションである。常時監視の対象となる1又は複数のシンボルは、予めユーザにより設定される。監視アプリケーションは、たとえばWebサーバ機能を有し、通信部43を介して汎用ブラウザから設定が可能である。汎用ブラウザから設定できることにより、プログラム作成支援装置等の専用ツールを介さずに、PC、スマホ、タブレットから設定または監視ができる。また、監視アプリケーションは、常時監視の対象となる1又は複数のシンボルについて正常時における複数のサイクルのシンボル値に基づき当該シンボルに対応する閾値を自動で設定する。たとえば、監視アプリケーションは、ユーザ指示を受け付けて、常時監視の対象となる複数のシンボルについて正常時における複数のサイクルのシンボル値のばらつきに基づき、シンボルの状態を監視するための閾値を一括で自動設定する。閾値は、いつもと違う状態、つまり、非正常状態を監視するように設定され、監視アプリケーションは、監視対象のシンボルのシンボル値が閾値を超えた場合はアラームを発報する。このようにして、たとえば、PLC1は、設備が止まる前に兆候を捉えることができる。PLC1は、監視アプリケーションによる兆候監視の結果、監視対象のシンボルのシンボル値が閾値を超えた場合のアラームを、運転記録の保存条件としてもよい。PLC1は、監視アプリケーションによるアラーム発生をイベントトリガとして、トリガ前後の運転記録データを保存する。PLC1は、運転記録データの保存が完了すると保存完了デバイスをONする。運転記録分析アプリケーションは、運転記録データの保存が完了したことをうけ、自動的に運転記録データを分析してもよい。たとえば、運転記録分析アプリケーションは、保存完了デバイスをONしたことに応じて運転記録データを分析してもよい。運転記録分析アプリケーションは、分析対象となったシンボルのシンボル値(例、全ビットデバイスのデバイス値)を分析して、アラートが出た要因候補のシンボルを抽出する。このようにして運転記録分析アプリケーションは、監視アプリケーションによるアラーム発生の要因をアラーム発生により保存した運転記録データを自動分析し、運転記録データの中からいつもと違うシンボルを抽出する。これにより、CPU41aは、監視アプリケーションの兆候監視機能により設備の状態を常時監視し、変化要因でアラートを発報する。さらに、CPU41aは、アラート要因を自動分析し、いつもと違うシンボルを抽出する。つまり、PLC1は、シンボル値を常時監視することで被制御対象設備の兆候監視をして、アラームにより被制御対象設備が止まる前に兆候を報知して、兆候の要因を自動分析する。 The monitoring application is one of data utilization applications executed by the CPU 41a of the analysis unit 4a. The analysis unit 4a may be an expansion unit that runs data utilization applications. Data-utilizing applications include data-utilizing programs (eg, flows) that collect control data and process data, and dashboards that display the execution results of the data-utilizing programs. Data utilization applications include a monitoring application that monitors monitored devices and variables in real time, and an operation record analysis application that analyzes operation records to reproduce the operating state of the PLC 1 and generates an analysis report. may Further, as the data utilization application, there may be a calculation application for calculating KPIs (Key Performance Indicators) such as availability rate, non-defective product rate, or cycle time. The monitoring application is an application for constant monitoring based on the symbol values of the symbols of the PLC 1. For example, according to the settings of the monitoring application, the symbol values of one or more symbols are constantly collected at the scan time level, and the collected symbol values are It is an application that constantly displays the information based on it while updating it in real time. One or more symbols to be constantly monitored are set in advance by the user. The monitoring application has a Web server function, for example, and can be set from a general-purpose browser via the communication unit 43 . By being able to set from a general-purpose browser, it is possible to set or monitor from a PC, smartphone, or tablet without going through a dedicated tool such as a program creation support device. In addition, the monitoring application automatically sets a threshold corresponding to one or more symbols to be constantly monitored, based on symbol values of a plurality of cycles in a normal state. For example, the monitoring application accepts user instructions and automatically sets threshold values for monitoring the states of symbols collectively based on variations in symbol values of multiple cycles in normal times for multiple symbols to be constantly monitored. do. A threshold is set to monitor for unusual or abnormal conditions, and the monitoring application issues an alarm if the symbol value of the monitored symbol exceeds the threshold. In this way, for example, the PLC 1 can catch the symptom before the installation stops. The PLC 1 may set an alarm when a symbol value of a symbol to be monitored exceeds a threshold as a result of symptom monitoring by a monitoring application, as a storage condition for driving records. The PLC 1 saves driving record data before and after the trigger, with the generation of an alarm by the monitoring application as an event trigger. The PLC 1 turns on the storage completion device when the storage of the driving record data is completed. The driving record analysis application may automatically analyze the driving record data upon completion of saving the driving record data. For example, the drive record analysis application may analyze drive record data in response to turning on the save completion device. The driving record analysis application analyzes the symbol values of the symbols to be analyzed (for example, the device values of all bit devices), and extracts the symbol of the cause candidate for the alert. In this way, the driving record analysis application automatically analyzes the saved driving record data for the cause of the alarm generated by the monitoring application, and extracts unusual symbols from the driving record data. As a result, the CPU 41a constantly monitors the state of the facility using the symptom monitoring function of the monitoring application, and issues an alert based on the change factor. Furthermore, the CPU 41a automatically analyzes alert factors and extracts unusual symbols. In other words, the PLC 1 constantly monitors symbol values to monitor symptoms of the equipment to be controlled, notifies the symptoms before the equipment to be controlled is stopped by an alarm, and automatically analyzes the factors of the symptoms.

<結果表示画面(分析レポート)>
図8Aは、本実施形態に係るWebブラウザ18がWebブラウザプログラム14dを実行することで表示部7bに表示される結果表示画面を示す。ここでは当該結果表示画面800がPC2bの表示部7bに表示される例について説明するが、本発明を限定する意図はなく他の装置の表示部に表示されてもよいし、PLCの拡張ユニットが有するモニタで表示可能であれば当該モニタに表示されてもよい。たとえば、他の装置としてプログラマブル表示器、タブレット、スマートフォンが含まれてもよい。或いは、以下で説明する結果表示画面の内容を含む分析レポートとして他の装置へ電子メール、SNS、FTP転送等で送信されてもよい。分析レポートに対して任意のコメントが付されてもよく、たとえば、分析レポートに対して手書き文字や入力文字コメントが付与されてもよい。この場合、任意のコメントが付与された結果表示画面の内容を含む分析レポートが他の装置へ送信されてもよい。これにより、メールの受信者はコメントなどの現場状況と分析レポートとを合わせて閲覧することができる。また、分析レポートが他の装置へ送信する際、分析レポートとともに当該分析レポートの分析対象である運転記録データが対応付けられて送信されてもよい。これにより、メールの受信者は運転記録と分析レポートとを合わせて閲覧することができる。さらに、PC2bがカメラ付きのタブレットやスマートフォン等であれば、装置の写真も一緒に添付できてもよい。
<Result display screen (analysis report)>
FIG. 8A shows a result display screen displayed on the display unit 7b when the web browser 18 according to this embodiment executes the web browser program 14d. Here, an example in which the result display screen 800 is displayed on the display unit 7b of the PC 2b will be described, but there is no intention to limit the present invention and it may be displayed on the display unit of another device. If it is possible to display on the monitor that it has, it may be displayed on that monitor. For example, other devices may include programmable displays, tablets, smart phones. Alternatively, an analysis report including the contents of the result display screen described below may be sent to another device by e-mail, SNS, FTP transfer, or the like. Arbitrary comments may be added to the analysis report, for example, handwritten or input character comments may be added to the analysis report. In this case, an analysis report including the content of the result display screen to which arbitrary comments have been added may be transmitted to another device. As a result, the recipient of the e-mail can view the site situation such as comments together with the analysis report. Further, when the analysis report is transmitted to another device, the analysis report may be transmitted in association with the driving record data that is the analysis target of the analysis report. As a result, the recipient of the mail can view both the driving record and the analysis report. Furthermore, if the PC 2b is a tablet, smartphone, or the like with a camera, a photograph of the device may also be attached.

結果表示画面800は、結果をフィルタリングして表示するためのフィルタ801~803と、フィルタ結果804と、検知マップ810と、検知リスト820と、画像表示領域830と、分析コメント840とを含んで構成される。なお、結果表示としては、810、820、830、840のうち少なくとも1つが表示されるものであってよい。フィルタ801は制御サイクルを選択して結果表示をフィルタリングすることができる。ここでの制御サイクルとは、デバイス値の周期的な変化を伴う開始タイミングから終了タイミングまでの期間を称する。フィルタ801を指定すると、選択された制御サイクルで動作するデバイスの分析結果に絞って結果が表示される。フィルタ802は属性情報を選択して結果表示をフィルタリングすることができる。属性情報とは、何れのユニットや通信機器に接続されているかの情報や、入力デバイスであるか否かの情報を示す。 The result display screen 800 includes filters 801 to 803 for filtering and displaying results, a filter result 804, a detection map 810, a detection list 820, an image display area 830, and an analysis comment 840. be done. At least one of 810, 820, 830, and 840 may be displayed as the result display. A filter 801 can select control cycles to filter the results display. The control cycle here refers to a period from the start timing to the end timing accompanied by periodic changes in device values. When the filter 801 is specified, the results are displayed focusing on the analysis results of devices operating in the selected control cycle. A filter 802 can select attribute information to filter the display of results. Attribute information indicates information about which unit or communication device it is connected to, and information about whether it is an input device.

フィルタ802においてたとえば「ユニット構成情報」を指定するとユニット構成がポップアップ画面等で表示され、表示されたユニットのいずれかを選択することができる。ユニットが選択されると、当該ユニットに接続されているデバイスに絞って結果が表示される。また、属性情報として「入力デバイス」が指定されると、入力デバイスの属性情報が付加されたデバイスに絞って結果が表示される。フィルタ802は、属性情報を活用するフィルタリングに限られない。たとえば、分析の結果、同じシンボルが重複して非正常シンボルとして検出されることがある。非正常の原因を探るうえで最先の発生時刻が重要となる可能性が高く、フィルタ802は、重複して検出された同じシンボルのうち最先の発生時刻以外をフィルタリングするようにしてもよい。また、フィルタ802は、同じシンボルで、分析時の検知アルゴリズムや後述する異常の種類が同一なもののうち、最先の発生時刻以外をフィルタリングするようにしてもよい。さらに、フィルタ802は、同じシンボルで、分析時の検知アルゴリズムや後述する異常の種類が同一であって、後述するサイクル設定が同一なもののうち、最先の発生時刻以外をフィルタリングするようにしてもよい。 For example, when "unit configuration information" is specified in the filter 802, the unit configuration is displayed on a pop-up screen or the like, and one of the displayed units can be selected. When a unit is selected, the results are focused on the devices connected to that unit. Also, when "input device" is specified as the attribute information, the results are displayed focusing on the devices to which the attribute information of the input device is added. Filter 802 is not limited to filtering that utilizes attribute information. For example, as a result of analysis, the same symbol may be duplicated and detected as an abnormal symbol. The earliest occurrence time is highly likely to be important in searching for the cause of the abnormality, and the filter 802 may filter out the duplicate detected same symbols other than the earliest occurrence time. . Further, the filter 802 may filter the symbols other than the earliest occurrence time among the symbols having the same detection algorithm at the time of analysis and the same types of anomalies to be described later. Furthermore, the filter 802 may be configured to filter out the same symbol, the same detection algorithm during analysis, the same type of abnormality described later, and the same cycle setting described later, other than the earliest occurrence time. good.

フィルタ803はイベントやエラーを選択して結果表示をフィルタリングすることができる。イベントやエラーの種別を指定するとそれに関わりのあるデバイスの分析結果に絞って結果が表示される。たとえば、イベントとして「運転記録保存トリガ」が選択された場合には、その前後の分析結果に絞って結果が表示される。結果表示画面800は、分析結果とともにイベントやエラーを発生時刻順に表示してもよい。この場合、フィルタ803はイベントやエラーをフィルタリングすることができる。これにより分析結果とイベントやエラーの混在表示と、分析結果の表示とを切り換えることができる。ここで、イベントは、たとえば、電源ON/OFF、デバイス値書換、メモリ挿抜などを含み、カテゴリー毎にフィルタリング対象を加除できるようにしてもよい。エラーは、たとえば通信エラー、PLC演算エラー、スキャンタイム超過エラーなどを含み、エラーの重度毎にフィルタリング対象を加除できるようにしてもよい。 A filter 803 can select events or errors to filter the results display. If you specify the type of event or error, the analysis results of the devices related to it will be displayed. For example, when a "driving record storage trigger" is selected as an event, the results are displayed focusing on the analysis results before and after that event. The result display screen 800 may display the analysis results as well as events and errors in order of time of occurrence. In this case, filter 803 can filter events and errors. As a result, it is possible to switch between a mixed display of analysis results and events and errors and a display of analysis results. Here, the events include, for example, power ON/OFF, rewriting of device values, memory insertion/removal, etc., and filtering targets may be added or subtracted for each category. Errors include, for example, communication errors, PLC calculation errors, scan time excess errors, etc., and filtering targets may be added or subtracted according to the severity of the error.

なお、フィルタ801~803のフィルタ条件は論理積として判断され、該当する分析結果が表示される。従って、フィルタ801~803は必ずしも選択される必要はなく、オペレータが所望するフィルタが選択された場合に分析結果がフィルタリングされてもよい。或いは、オペレータが指定する前にデフォルトでフィルタを選択して分析結果を表示するようにしてもよい。これらの分析結果として表示されるデバイスは、いつもと異なる状態が検知されたデバイスである。いつもと異なる状態とは、たとえば、デバイス値が正常範囲を逸脱したり、デバイス値が変化するタイミングまたは回数が正常範囲を外れたりすることである。製品の製造工場では、日々、同一の製品が大量生産される。つまり、同一の工程が何度も繰り返し実行される。そのため、いつもと異なる状態を検知して表示することは、ラダープログラムを改良したり、生産設備を見直したりするうえで、非常に役に立つ。いつもと同様の状態(正常状態)を定義する正常範囲(正常条件)は、ユーザにより定義されてもよいし、デバイス値の学習結果により定義されてもよい。 Note that the filter conditions of the filters 801 to 803 are determined as a logical product, and the corresponding analysis results are displayed. Therefore, the filters 801 to 803 do not necessarily have to be selected, and the analysis results may be filtered when the operator's desired filter is selected. Alternatively, the filter may be selected by default to display the analysis results before being specified by the operator. The devices displayed as these analysis results are devices in which unusual states have been detected. An unusual state is, for example, that the device value deviates from the normal range, or the timing or number of changes of the device value deviates from the normal range. In a product manufacturing factory, the same product is mass-produced every day. That is, the same process is repeatedly executed many times. Therefore, detecting and displaying abnormal states is very useful for improving ladder programs and reviewing production equipment. A normal range (normal condition) that defines the same state as usual (normal state) may be defined by the user or may be defined by learning results of device values.

検知マップ810は、PLC1において実行される複数の工程のそれぞれについて開始タイミングと終了タイミングとを含むサイクルを時間軸に沿って表示する。検知マップ810において、横方向に延びる矩形は、工程が実行中である期間(制御サイクル)を示している。また、矩形内の丸はサイクル内で発生したいつもと異なる状態が発生した異常発生箇所である異常点を示している。検知マップ810の横軸は時間を示し、左端はデータの収集開始時点、右端はデータの収集終了時点を表す。なお、上部の拡大/縮小ボタンを選択することにより、横軸方向の拡大・縮小を行うことができる。その場合の初期表示は、左端がデータ収集開始点、右端はデータの収集終了点であってもよい。或いは、後述するサイクル定義の時間幅で決めてもよい。たとえば、サイクル時間が、10秒、10秒、11秒、9秒、10秒、10秒、20秒である場合に、その中央値の10秒をとり、3サイクル分が一括で表示できるように、左端から右端を30秒としてもよい。ここでは、縦軸をデバイス単位としているが、後述するプログラムモジュール単位としてもよい。また、検知マップ810には、デバイス値に並べて、カメラ映像の特徴量の値を表示するようにしてもよい。デバイス値と並べて表示することにより、映像の周期的な変化を容易に認識することができる。 The detection map 810 displays along the time axis cycles including start timings and end timings for each of a plurality of processes executed in the PLC 1 . In the detection map 810, the horizontally extending rectangles indicate the period (control cycle) during which the process is being executed. Also, circles within the rectangles indicate abnormal points, which are abnormal locations where abnormal states occur within the cycle. The horizontal axis of the detection map 810 represents time, the left end represents the start time of data collection, and the right end represents the end time of data collection. By selecting the enlargement/reduction button on the top, enlargement/reduction in the horizontal axis direction can be performed. In that case, the initial display may be the data collection start point on the left end and the data collection end point on the right end. Alternatively, it may be determined by the time width of the cycle definition described later. For example, if the cycle time is 10 seconds, 10 seconds, 11 seconds, 9 seconds, 10 seconds, 10 seconds, and 20 seconds, take the median value of 10 seconds so that 3 cycles can be displayed at once. , 30 seconds from the left end to the right end. Here, the vertical axis is in units of devices, but may be in units of program modules, which will be described later. Further, the detection map 810 may display the values of the feature values of the camera video in parallel with the device values. By displaying them side by side with the device values, periodic changes in the video can be easily recognized.

図8Aに示すように、制御サイクルは矩形形状で表すことができ、左端が開始タイミングを示し、右端が終了タイミングを示す。これによりデバイス値を波形で示すよりも、その制御サイクルを一見して確認することができ、サイクルの動作中であるか否かを判断することができる。なお、本発明はこれに限定されず、開始タイミングと終了タイミングとが識別可能な形状であればどのような形状で表されてもよい。たとえば、矩形形状ではなく開始タイミングを示す縦線と終了タイミングを示す縦線とを表示し、その内部を背景色と異ならせることによりサイクルを表現してもよい。また、運転記録データの中に開始タイミングや終了タイミングの記録が無い場合には、それらを示す縦線等を検知マップ810に描画しなくてもよい。また、図8Aに示すように、定義された制御サイクル内の異常発生箇所を示す。図8Aの例では、異常が発生した箇所を異常点として表示している。一方で、異常には異常開始から終了までの区間がある。したがって、異常箇所を区間でプロットしてもよい。これにより、他のデバイスと異常発生区間が重なっている様子を表現することができ、オペレータにとってはデバイス間の関連性を認識することができ、エラーを特定する際に重要な情報となる。このように各デバイスの異常発生箇所については種々の方法で描画することが可能である。 As shown in FIG. 8A, the control cycle can be represented by a rectangular shape, with the left end indicating the start timing and the right end indicating the end timing. This makes it possible to confirm the control cycle at a glance rather than showing the device values as waveforms, and to determine whether or not the cycle is in operation. Note that the present invention is not limited to this, and may be represented by any shape as long as the start timing and the end timing can be identified. For example, instead of a rectangular shape, a vertical line indicating the start timing and a vertical line indicating the end timing may be displayed, and a cycle may be represented by using a different color for the inside of the vertical line from the background color. Also, if there is no record of the start timing and the end timing in the driving record data, it is not necessary to draw vertical lines or the like indicating them on the detection map 810 . In addition, as shown in FIG. 8A, the locations of abnormalities within the defined control cycle are shown. In the example of FIG. 8A, the locations where anomalies have occurred are displayed as anomalous points. On the other hand, an abnormality has a section from the start of the abnormality to the end of the abnormality. Therefore, the abnormal locations may be plotted in intervals. As a result, it is possible to express how other devices overlap with the abnormal occurrence section, and the operator can recognize the relationship between the devices, which is important information when identifying an error. In this way, it is possible to draw the location of an abnormality in each device by various methods.

検知マップ810において、工程を示す矩形は、左が古く右が新しいことを示す。時刻バー811は、選択中の時刻を示している。時刻バー812は、運転記録データの保存トリガが発生したタイミングを示している。上述したように、運転記録データは保存トリガが発生した前後のデータが記録されているため、時刻バー812の前後にデータが示されている。時刻バー811、812はそれぞれ異なる色で描画したり、実線と破線とで異なるように描画したりすることにより、識別力を向上させてもよい。また、時刻バー811を操作することにより、分析結果の表示を更新することができる。時刻バー811の操作に従って、検知リスト820、画像表示領域830、および分析コメント840の少なくとも1つの後述する時刻バーについても同様に連動して更新され、対応する分析結果が表示されてもよい。 In the detection map 810 , the process rectangles are old on the left and new on the right. A time bar 811 indicates the time being selected. A time bar 812 indicates the timing at which the drive record data storage trigger is generated. As described above, the data before and after the time bar 812 is shown because the data before and after the occurrence of the save trigger are recorded in the driving record data. The time bars 811 and 812 may be drawn in different colors, or may be drawn with different solid lines and dashed lines to improve distinguishability. Further, by operating the time bar 811, the analysis result display can be updated. According to the operation of the time bar 811, at least one time bar of the detection list 820, the image display area 830, and the analysis comment 840, which will be described later, may be similarly updated to display the corresponding analysis results.

画像表示領域830は、PLC1において取得されたカメラ画像(以下では、カメラ映像とも称する。)を表示する。図8Aでは、正常時のデータであるマスタデータのカメラ画像と、今回のカメラ画像とが対比可能に表示されている。カメラ画像も時系列データであるため、シークバー831は、カメラ画像の再生時刻を示し、再生時刻の経過にしたがって左から右に移動する。時刻バー832は、検知対象デバイスがいつもと異なる状態になったタイミングを示しており、上述した時刻バー811と連動している。時刻指定部833は、カメラ画像の再生時刻を進めたり、再生時刻を戻したり、再生の開始を指示したり、再生を停止したりすることを指示するためのコントロールオブジェクトである。834は制御サイクルを指定することができ、指定されたサイクルを基準サイクルとしてカメラ映像が再生される。たとえば、時刻指定部833の早送りのボタンが操作されると、現在の制御サイクルの次の制御サイクルまで映像がスキップするように制御される。また、サイクルの終了時にジャンプするものであってもよい。 The image display area 830 displays a camera image (hereinafter also referred to as camera video) acquired by the PLC 1 . In FIG. 8A, a camera image of master data, which is normal data, and a current camera image are displayed so as to be able to be compared. Since the camera image is also time-series data, the seek bar 831 indicates the playback time of the camera image and moves from left to right as the playback time elapses. A time bar 832 indicates the timing at which the detection target device becomes in an unusual state, and is linked with the time bar 811 described above. The time designation unit 833 is a control object for advancing the reproduction time of the camera image, returning the reproduction time, instructing the start of reproduction, and instructing the stop of reproduction. A control cycle 834 can be specified, and the camera image is reproduced with the specified cycle as the reference cycle. For example, when the fast-forward button of the time designation section 833 is operated, the video is controlled to skip to the control cycle next to the current control cycle. It may also jump at the end of the cycle.

カメラ映像は、運転記録データとして保持されてもよいが、時刻が関連付けられた、外部機器に保存されているデータであってもよい。たとえば、拡張ユニットの何れかに接続されたWebカメラに記録されているカメラ映像であってもよいし、画像検査機に記録されている検査画像であってもよい。外部機器に保存されているデータは、画像以外にも測定器の記録データであってもよく、数値であったり、測定波形が表示されるものであってもよい。なお、結果表示画面800において、検知マップ810の再生時刻、カメラ画像の再生時刻、および、検知リスト820の再生時刻は同期するように管理され表示されている。また、図8Aの点線領域に示すように、検知した異常箇所を映像中において強調表示してもよい。これにより、ユーザはさらに容易に正常時の映像と、今回の映像を対比することができる。 The camera image may be stored as driving record data, or may be data associated with time and stored in an external device. For example, it may be a camera video recorded in a web camera connected to any of the expansion units, or an inspection image recorded in an image inspection machine. The data stored in the external device may be data recorded by the measuring device as well as images, and may be numerical values or may display measured waveforms. In the result display screen 800, the playback time of the detection map 810, the playback time of the camera image, and the playback time of the detection list 820 are managed and displayed so as to be synchronized. Moreover, as shown in the dotted line area of FIG. 8A, the detected abnormal portion may be highlighted in the image. This allows the user to more easily compare the normal image and the current image.

検知リスト820は、いつもと異なる状態になったデバイスと、その状態が発生した時刻(デバイス値の収集時刻)とを示す。検知リスト820は、いつもと異なる状態となったデバイスを時刻順に示したリストである。CPU11bは、検知リスト820に表示されたデバイスに対するクリックを検知すると、クリックされたデバイスの識別情報と、再生時刻情報(デバイス値の収集時刻)とに基づいて、検知マップ810、検知リスト820、および画像表示領域830の表示を同期させることができる。時刻バー821は、選択中の時刻を示しており、時刻バー811、831と連動し、同一のタイミングを示している。時刻バー822は、運転記録データの保存トリガが発生したタイミングを示している。 The detection list 820 shows devices that have entered an unusual state and the time when the state occurred (device value collection time). The detection list 820 is a list showing devices in an unusual state in chronological order. When the CPU 11b detects a click on a device displayed in the detection list 820, the CPU 11b, based on the identification information of the clicked device and the reproduction time information (device value collection time), displays the detection map 810, the detection list 820, and the The display of the image display area 830 can be synchronized. A time bar 821 indicates the time being selected, and interlocks with the time bars 811 and 831 to indicate the same timing. A time bar 822 indicates the timing at which the drive record data save trigger occurred.

分析コメント840は、分析結果に含まれるコメントと、検知リスト820で選択されたデバイスについての、マスターデータと、今回のデバイス値の時系列データとを表示する。時刻バー841は、いつもと異なる状態が発生したタイミングを示し、時刻バー811、821、831と連動し、同一のタイミングを示している。表示されているコメントは、当該デバイスの異常の内容を示している。分析コメントは種々の形態をとりうるが、詳細については図10を用いて後述する。 The analysis comment 840 displays comments included in the analysis result, master data for the device selected in the detection list 820, and time-series data of the current device value. A time bar 841 indicates the timing at which an unusual state occurs, and interlocks with the time bars 811, 821, and 831 to indicate the same timing. The displayed comment indicates the contents of the abnormality of the device. The analysis comment can take various forms, and the details will be described later with reference to FIG. 10 .

CPU11bは、検知リスト820に表示されたデバイスに対するクリックを検知すると、クリックされたデバイスの識別情報と、いつもと異なる状態になったサイクル情報(サイクルの開始時刻と終了時刻、または、サイクルの開始時刻と次のサイクルの開始時刻)とに基づいて、検知マップ810、検知リスト820、および分析コメント840の表示を同期させることができる。図8Bは、検知リスト820の何れかの項目が選択された場合に、検知マップ810、検知リスト820、および分析コメント840を同期させた様子を示す。分析コメント840は、いつもと異なる状態になったサイクルに対応した時間範囲のデバイス値の時系列データを表示する。このとき、検知マップ810上には、分析コメント840に表示された時系列データの時間範囲854に対応する時間範囲852が図示される。検知マップ810に図示される時間範囲852は、複数の工程のうちいつもと異なる状態になった工程に対応して図示される。たとえば、検知リスト820に表示されたデバイスのうち、現在と異なるデバイスの項目853がクリックされると、クリックされたデバイスについて、いつもと異なる状態になったサイクルに対応した時間範囲のデバイス値の時系列データに切り替わる。その際、検知マップ810上では、分析コメント840に表示された時系列データの時間範囲854に対応する時間範囲852を含む範囲に表示が切り替わる。また、矢印855で示すように、検知マップ810上において、点線や色付きの実線の枠などによって時間範囲852が強調表示され、分析コメント840における切り出し区間との対応が確認できるように表示される。これにより、分析コメント840が検知マップ810上のどの区間を切り出した波形かをオペレータに容易に把握させることができる。また、854に示すように、分析コメント840においても波形の下部に、切り出した区間に対応するサイクルを示す矩形や異常点を表示することにより、サイクルの開始タイミングや、終了タイミングと波形や異常との関係をオペレータに容易に把握させることができる。また、検知マップ810は、851に示すように、検知リスト820で選択されたデバイスに対応する異常点を拡大表示してもよい。また、分析コメント840に表示された時系列データの時間範囲が、サイクルの開始時刻と次のサイクルの開始時刻の場合、分析コメント840には、時系列データの時間軸に対応して、サイクルの終了時刻を示す位置に図式表示がされてもよい。 When the CPU 11b detects a click on the device displayed in the detection list 820, the CPU 11b collects the identification information of the clicked device and the cycle information (cycle start time and end time, or cycle start time and next cycle start time), the display of detection map 810, detection list 820, and analysis comments 840 can be synchronized. FIG. 8B shows how detection map 810, detection list 820, and analysis comment 840 are synchronized when any item in detection list 820 is selected. Analysis comment 840 displays time series data of device values for the time range corresponding to the cycle in which the unusual state occurred. At this time, a time range 852 corresponding to the time range 854 of the time-series data displayed in the analysis comment 840 is illustrated on the detection map 810 . A time range 852 illustrated in the detection map 810 is illustrated corresponding to a process out of the plurality of processes that is in an unusual state. For example, if an item 853 of a device different from the current device among the devices displayed in the detection list 820 is clicked, the device value in the time range corresponding to the cycle in which the clicked device changed to an unusual state is displayed. Switch to series data. At that time, the display on the detection map 810 switches to a range including a time range 852 corresponding to the time range 854 of the time-series data displayed in the analysis comment 840 . Also, as indicated by an arrow 855 , a time range 852 is highlighted on the detection map 810 by a dotted line or a colored solid line frame, etc., and displayed so that the correspondence with the clipped section in the analysis comment 840 can be confirmed. This makes it possible for the operator to easily grasp which section of the waveform on the detection map 810 the analysis comment 840 is extracted from. Also, as indicated by 854, in the analysis comment 840 as well, by displaying a rectangle indicating the cycle corresponding to the cut-out section and anomalous points below the waveform, the cycle start timing, end timing, waveform, and anomaly can be displayed. The operator can easily comprehend the relationship between Further, the detection map 810 may display an enlarged abnormal point corresponding to the device selected in the detection list 820 as indicated by 851 . In addition, if the time range of the time-series data displayed in the analysis comment 840 is the start time of a cycle and the start time of the next cycle, the analysis comment 840 includes the time range of the cycle corresponding to the time axis of the time-series data. A graphical display may be provided at the location indicating the end time.

このように、結果表示画面800は検知マップ810、検知リスト820、画像表示領域830、および分析コメント840など複数の分析結果の表示を含んで構成される。しかし、これらの結果表示は一例であり他の結果表示が追加的に又は代替的に含まれてもよい。たとえば、図9に示すように、分析結果として、デバイス間の依存情報(リレーションマップ)を表示してもよい。基本ユニット3は、ラダープログラムを解析することで、デバイス・変数間の依存関係を把握することができる。たとえば、ある検知されたデバイスを選択されると、それに関係するデバイスも並べて表示するなど、依存関係のあるデバイスをオペレータへ提示することができる。これにより、オペレータに対して異常の把握や特定を支援することができる。 In this manner, the result display screen 800 includes displays of a plurality of analysis results such as the detection map 810, the detection list 820, the image display area 830, and the analysis comment 840. FIG. However, these result displays are examples and other result displays may additionally or alternatively be included. For example, as shown in FIG. 9, dependency information (relationship map) between devices may be displayed as an analysis result. By analyzing the ladder program, the basic unit 3 can grasp the dependencies between devices and variables. For example, when a detected device is selected, related devices can be displayed side by side, so that dependent devices can be presented to the operator. As a result, it is possible to assist the operator in grasping and identifying the abnormality.

<リレーションマップ>
図9はリレーションマップ900を示している。リレーションマップ900は、ラダープログラム等のユーザプログラムにおいて、特定のシンボルに関連するプログラムモジュールと、そのプログラムモジュールに関連する他のシンボルとの関係を示す図式表示であり、たとえば、特定のシンボルとして、ラダープログラムに使用されるいつもと異なる状態になったデバイス(非正常デバイス)を選択した場合は、当該非正常デバイスに対してラダープログラムにおいてプログラムモジュールを介して関連している他のデバイスを表示するUIとなる。このUIは結果表示画面800において不図示の表示ボタンを操作することにより遷移する画面であってもよいし、結果表示画面800上に追加で表示されてもよい。リレーションマップを表示することにより、ユーザは、非正常デバイスと他のデバイスとの依存関係を容易に理解できる。一般に、PLC1において利用されるデバイスの数は数百から数万であるため、ユーザは、いつもと異なる状態になったデバイスから、その原因となったデバイスを特定することは容易ではない。CPU11は、非正常デバイスについてラダープログラム内を検索し、非正常デバイスに関する記述を発見し、当該記述を分析することで、関連デバイスを特定する。この例では、ラダープログラム内の出力部において、非正常デバイス(例:R0004)が記述されており、関連デバイスとしてMR000、MR001、MR002が存在する。
<Relation Map>
FIG. 9 shows a relation map 900. FIG. The relation map 900 is a graphical representation showing the relationship between a program module related to a specific symbol and other symbols related to the program module in a user program such as a ladder program. UI that displays other devices related to the abnormal device through the program module in the ladder program when a device (abnormal device) used in the program that is in a different state than usual is selected becomes. This UI may be a screen that transitions by operating a display button (not shown) on the result display screen 800 , or may be additionally displayed on the result display screen 800 . By displaying the relation map, the user can easily understand the dependencies between the abnormal device and other devices. Generally, the number of devices used in the PLC 1 is several hundred to several tens of thousands, so it is not easy for the user to identify the device that caused the unusual state. The CPU 11 searches the ladder program for abnormal devices, finds descriptions of the abnormal devices, and analyzes the descriptions to identify related devices. In this example, an abnormal device (eg, R0004) is described in the output section of the ladder program, and MR000, MR001, and MR002 exist as related devices.

CPU11bは、ラダープログラムから特定した非正常デバイス、関連デバイスおよびプログラムモジュールをツリーのように表示する。ユーザプログラム(ラダー、C言語、フロー言語、スクリプトなど)は、可読性やメンテナンス性向上のために、いくつかに分けて記述することが多く、その単位をプログラムモジュールと称する。1つのプログラムモジュールの中では、各デバイスを読み書きするプログラムが記述され、1つのデバイスは複数のモジュールで読み書きされることもあるが、主に使用されるモジュールは1つであることが多い。図9の例では、出力部における演算のために入力されるデバイスが左側に表示され、プログラムモジュールが真ん中に表示され、その右側に非正常デバイスが表示されている。図9が示すように、リレーションマップ900上のプログラムモジュールが選択されると、CPU11bは、該当するプログラムモジュールをプログラム表示領域910に表示してもよい。なお、ここではPC2bのCPU11bが表示処理を制御する例で説明しているが、一例でありPC2aのCPU11aで行われてもよい。また、上述した検知マップ810についても、デバイス単位ではなくプログラムモジュール単位で表示するようにしてもよい。 The CPU 11b displays the abnormal devices, related devices and program modules identified from the ladder program like a tree. A user program (ladder, C language, flow language, script, etc.) is often divided into several parts and described in units called program modules in order to improve readability and maintainability. A program for reading and writing each device is written in one program module, and although one device may be read and written by a plurality of modules, one module is mainly used in many cases. In the example of FIG. 9, the devices that are input for the calculation in the output section are displayed on the left, the program modules are displayed in the middle, and the abnormal devices are displayed on the right. As shown in FIG. 9, when a program module on the relation map 900 is selected, the CPU 11b may display the corresponding program module in the program display area 910. FIG. Although the CPU 11b of the PC 2b controls the display processing here, it is an example and may be performed by the CPU 11a of the PC 2a. Further, the detection map 810 described above may also be displayed in units of program modules instead of in units of devices.

CPU11は、シンボルを特定するユーザ指定に応じて、ユーザプログラムからシンボルに関連するプログラムモジュールを特定し、特定したプログラムモジュールに関連する他のシンボルを特定して、リレーションマップ1500を生成する。CPU11は、分析結果に基づいてリレーションマップ1500内に含まれる非正常デバイスを強調表示する。分析結果は非正常デバイスがいつもと異なると判断した時刻も含んでおり、CPU11は、再現する時刻よりも前に発生した非正常デバイスのみをリレーションマップ1500上で強調表示するようにしてもよい。これにより非正常デバイスは、いつもと異なる状態が発生して以降、強調表示が保持されることになる。また、分析結果には、各シンボルのうち、分析対象外のシンボルであることを示す情報が含まれてもよい。この場合、CPU11は、分析結果に基づいてリレーションマップ1500上で分析対象外のシンボルと他のシンボルと色などを区別して表示する。これにより、分析により非正常でないと判断したのか、未分析のため非正常と判断されなかったのかを区別できる。分析対象外のシンボルとは、たとえば、制御サイクルやサイクル設定により定義されるサイクルに対し、シンボル値の変化パターンが規則性を持たないシンボルであったり、ユーザにより分析対象外として指定されたシンボルを含む。 The CPU 11 identifies a program module related to the symbol from the user program, identifies other symbols related to the identified program module, and generates the relation map 1500 according to the user's designation for identifying the symbol. The CPU 11 highlights abnormal devices included in the relation map 1500 based on the analysis result. The analysis result also includes the time at which the abnormal device was determined to be different from usual, and the CPU 11 may highlight only the abnormal device that occurred before the time to reproduce on the relation map 1500 . This allows the abnormal device to remain highlighted after the unusual state occurs. Further, the analysis result may include information indicating that each symbol is a non-analyzed symbol. In this case, the CPU 11 distinguishes between symbols not subject to analysis and other symbols on the relation map 1500 based on the analysis result. With this, it is possible to distinguish whether it is judged as abnormal by analysis or not judged as abnormal because it has not been analyzed. Symbols not subject to analysis are, for example, symbols whose symbol value change pattern does not have regularity with respect to the control cycle or cycle defined by the cycle setting, or symbols specified by the user as not subject to analysis. include.

<分析コメント>
図10に分析コメントの種々の形態を示す。図8Aに示した分析コメント840は、分析結果の情報、特に、異常内容に応じて種々の形態をとりうる。なお、分析コメントについては、分析ユニット4aが自動で生成するものであり、特にオペレータによる操作を必要としない。ここでは、分析コメント1000、1010、1020の3つについて例示するが、これらの形態も例示の一部となる。
<analysis comment>
FIG. 10 shows various forms of analytical comments. The analysis comment 840 shown in FIG. 8A can take various forms depending on the information of the analysis result, especially the content of the abnormality. Note that the analysis comment is automatically generated by the analysis unit 4a, and does not require operation by the operator. Three analytical comments 1000, 1010, and 1020 are illustrated here, but these forms are also part of the example.

分析コメント1000は、デバイスの変化数が学習時のマスタデータよりも多い異常内容を示す。1001には分析コメントが示され、所定のデバイスがマスターよりも多く変化している旨のコメントが自然言語で示される。1002はマスタデータの波形を示し、1003は分析対象である今回取得された運転記録データの波形を示す。1004は多く変化した異常箇所を示しており、たとえば網掛け等により強調表示されている。また、分析コメント1010は、デバイスのON時間の異常内容を示す。また、分析コメント1000には、モデル信頼度1030が示されている。モデル信頼度とは分析に使用した学習モデルの信頼度を示すものであり、詳細については図21を用いて後述する。1011には分析コメントが示され、所定のデバイスがマスターよりも所定時間早くOFFに変化している旨のコメントが自然言語で示される。また、図10に示すように、所定時間の部分が”297.86ms”と記載されており、1012はマスタデータの波形を示し、1013は分析対象である今回取得された運転記録データの波形を示す。また、1012、1013に示すように、それぞれの波形においてONからOFFへ変化したタイミングを示す箇所に、”変化点a1”、”変化点b1”という文字列が示される。これにより、オペレータは変化点を容易に把握することができるとともに、マスターの波形と今回の波形とを対比してその相違を容易に判断することができる。このように、本実施形態に係る分析コメントは、1001、1011に示すように、自然言語による異常内容の説明と、1002~1004、1012、1013に示すように、図形による異常内容の説明とが含まれる。なお、自然言語による異常内容の説明と、図形による異常内容の説明とは何れか一方のみであってもよい。分析レポートを表示する結果表示画面の描画領域のサイズに応じて変更してもよい。 The analysis comment 1000 indicates the content of anomalies in which the number of device changes is greater than in the master data during learning. An analysis comment is shown in 1001, and a comment to the effect that a given device has changed more than the master is shown in natural language. Reference numeral 1002 denotes the waveform of master data, and 1003 denotes the waveform of driving record data acquired this time, which is the object of analysis. Reference numeral 1004 indicates abnormal locations that have changed a lot, and are highlighted by, for example, shading. Also, the analysis comment 1010 indicates the abnormal content of the ON time of the device. In addition, model reliability 1030 is shown in analysis comment 1000 . The model reliability indicates the reliability of the learning model used for analysis, and the details will be described later with reference to FIG. 21 . An analytical comment 1011 indicates a comment in natural language to the effect that a predetermined device is turned off earlier than the master by a predetermined time. Also, as shown in FIG. 10, the predetermined time portion is described as "297.86 ms", 1012 indicates the waveform of the master data, and 1013 indicates the waveform of the driving record data acquired this time, which is the analysis target. show. Further, as indicated by 1012 and 1013, character strings "change point a1" and "change point b1" are shown at portions indicating the timing of the change from ON to OFF in each waveform. As a result, the operator can easily grasp the point of change, and can easily determine the difference between the master waveform and the current waveform by comparing them. As described above, the analytical comment according to the present embodiment includes a description of the content of the abnormality in a natural language as indicated by 1001 and 1011 and a description of the content of the abnormality by graphics as indicated by 1002 to 1004, 1012 and 1013. included. It should be noted that either one of the description of the content of the abnormality in a natural language and the description of the content of the abnormality in a graphic form may be used. You may change according to the size of the drawing area of the result display screen which displays an analysis report.

このように自然言語による異常内容の表現には、自然言語が人同士の会話と同様の方法であるため、ユーザは新しく覚えることが少なくなり、専門的な知識を必要とすることなく異常内容を容易に解析できるというメリットがある。また、数値や判定結果(OK/NG)だけでなく、どのように判定し、どこが異常だったかが文章としてわかりやすいというメリットがある。一方、図形による異常内容の表現には、視覚的に理解でき、どのような異常だったか、タイミングや異常度合いなどの詳細を知ることができる。また、理解が難しいブラックボックス的な判定手法の場合に、その判定結果を信頼できないというユーザの思考があるが、判定結果が図示されて理解しやすくなることで、判定手法の信頼性に対するユーザの評価も変えることができる。 In this way, since natural language is used in the same way as conversation between people, the user does not need to learn anything new, and the content of anomaly can be expressed without the need for specialized knowledge. It has the advantage of being easy to analyze. In addition, there is an advantage that not only numerical values and judgment results (OK/NG) but also how judgments are made and where abnormalities are found are easy to understand as sentences. On the other hand, the graphical representation of the content of anomalies can be visually understood, and details such as what kind of anomaly occurred, the timing, and the degree of the anomaly can be known. In addition, in the case of a hard-to-understand black-box judgment method, some users think that the judgment results cannot be trusted. You can also change your rating.

また、分析コメント1000、1010についてはビットデバイスについての分析コメントの例を示すが、本実施形態に係るPLC1はワードデバイスも含まれるものであり、ワードデバイスにおける分析コメントの例を1020に示す。ここでは図形による異常内容の説明としてアナログ値のプロットしたグラフを示す。横軸が時間に相当し、縦軸がデバイス値を示す。また1021が今回取得した所定デバイスの運転記録データを示し、1022が正常時のデータであるマスタデータを示す。マスタデータの代わりに数サイクルの平均値としてもよい。また、1023が下限閾値を示し、1024が上限閾値を示す。運転記録データがこれらの閾値を超えるとエラーとなる。また、1025の矩形はいつもと異なる状態が検知された箇所を示すものであり、今回取得した運転記録データがマスタデータから所定値ほど離れている箇所を示す。なお、このような矩形による強調表示は、下限閾値1023や上限閾値1024を超えている箇所についてのみ表示するようにしてもよい。 Analysis comments 1000 and 1010 show examples of analysis comments for bit devices, but the PLC 1 according to this embodiment also includes word devices, and 1020 shows an example of analysis comments for word devices. Here, a graph in which analog values are plotted is shown as a graphical explanation of the content of the abnormality. The horizontal axis corresponds to time, and the vertical axis indicates device values. Further, 1021 indicates the operation record data of the predetermined device acquired this time, and 1022 indicates master data which is normal data. An average value of several cycles may be used instead of the master data. Also, 1023 indicates the lower limit threshold, and 1024 indicates the upper limit threshold. An error occurs when the drive record data exceeds these thresholds. A rectangle 1025 indicates a location where an unusual state is detected, and indicates a location where the driving record data acquired this time is separated from the master data by a predetermined value. Note that such highlighting by a rectangle may be displayed only for locations exceeding the lower limit threshold 1023 or the upper limit threshold 1024 .

<モデル生成フロー>
図11は、上記S3におけるモデル生成フローの詳細を示す。ここでは、デバイスの属性情報としてデバイスのデバイス値を分類してモデルを生成する制御について説明する。なお、本発明はこれに限らず上述した他の属性情報に基づいてモデルを生成してもよい。以下で説明する処理は、分析ユニット(拡張ユニット)4aのCPU41aによって実行される処理として説明する。しかし、本発明を限定する意図はなく、それらの処理の一部が他のユニットで実行されてもよいし、それらの処理の全てが一つのユニットで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された外部装置(分析装置)によって実行されてもよい。
<Model generation flow>
FIG. 11 shows the details of the model generation flow in S3 above. Here, control for classifying device values of devices as device attribute information and generating a model will be described. Note that the present invention is not limited to this, and a model may be generated based on the other attribute information described above. The processing described below will be described as processing executed by the CPU 41a of the analysis unit (extension unit) 4a. However, without intending to limit the invention, some of those processes may be performed in other units, all of those processes may be performed in one unit, or the programmable logic controller may be performed by an external device (analyzer) communicatively connected to the

まずS31で分析ユニット4aのCPU41aは、基本ユニット3からモデル作成用の正常時の運転記録データを取得する。当該運転記録データは、上記S2で運転記録記憶部37に格納されたデータである。続いて、S32でCPU41aは、デバイス値以外の情報として、基本ユニット3からサイクル設定の情報を取得する。サイクル設定の情報は、たとえばPC2aを介してオペレータから設定されたサイクルパターンの情報を示す。たとえば、サイクルの開始タイミングとサイクルの終了タイミングとを示す。また、ここで取得する情報には、拡張ユニット4bに接続されたカメラ等のフィールドデバイス10で取得された情報、たとえばカメラ画像データなども含まれてもよい。これらのデータについては基本ユニット3を介して取得してもよいが、たとえば拡張ユニット4bなどから直接取得するようにしてもよい。また、本実施形態においてS32の処理は必須ではなく、サイクル設定の情報は取得できなくてもよい。 First, in S31, the CPU 41a of the analysis unit 4a acquires from the basic unit 3 normal operation record data for model creation. The driving record data is the data stored in the driving record storage unit 37 in S2. Subsequently, in S32, the CPU 41a acquires cycle setting information from the basic unit 3 as information other than the device value. The cycle setting information indicates cycle pattern information set by the operator via the PC 2a, for example. For example, it indicates the start timing of the cycle and the end timing of the cycle. The information acquired here may also include information acquired by the field device 10 such as a camera connected to the expansion unit 4b, such as camera image data. These data may be acquired via the basic unit 3, but may be acquired directly from the expansion unit 4b, for example. Further, in the present embodiment, the processing of S32 is not essential, and the cycle setting information may not be acquired.

次に、S33でCPU41aは、S32で取得したサイクル設定に基づき、各デバイスが何れのサイクルに属するかを判定し、さらに各デバイス値の変化パターンに応じて各デバイスが何れの類型に属するかを分類する。デバイスの分類については図13を用いて後述する。また、各デバイスのサイクルパターンには種々のパターンが存在するものであり、ここでは各デバイスがサイクル設定で指定された何れのパターンに属するデバイスであるかを判断する。サイクル設定が複数の制御サイクルに対応した設定を含む場合、各制御サイクルに属するデバイスを判定するようにしてもよい。このとき、複数の制御サイクルに属すると判断されるデバイスが存在してもよい。図12は、各デバイスのサイクルパターンを判別する制御について示す。図12において、矩形は工程が実行中である期間(サイクル)である開始タイミングから終了タイミングまでを示しており、1つの矩形が1サイクルを示す。サイクルパターンとはこの1サイクルが出現するパターンである。1201~1203はサイクル設定された工程を示す。1204~1206はそれぞれデバイスA~Cの収集データから抽出したサイクルパターンを示す。分析ユニット4aは各デバイスについて何れのサイクル設定のパターンに属するかを判断し、たとえばデバイスAがサイクル設定1に属し、デバイスBがサイクル設定2に属し、デバイスAが設定された何れのサイクル設定にも該当しないと判断する。具体的には、サイクル開始から終了までの、値と変化回数が一致しているかを判定している。なお、開始タイミングや終了タイミングについては多少ずれても問題ない。このように、分析ユニット4aは、各サイクル設定のパターンと各デバイスとがどのような対応関係かを判定する。分析ユニット4aは各サイクル設定のパターンについて何れのデバイスが属するかを判断するようにしてもよい。 Next, in S33, the CPU 41a determines which cycle each device belongs to based on the cycle setting obtained in S32, and further determines which type each device belongs to according to the change pattern of each device value. Classify. Device classification will be described later with reference to FIG. In addition, since there are various patterns in the cycle pattern of each device, it is determined to which pattern each device belongs in the cycle setting. If the cycle settings include settings corresponding to a plurality of control cycles, the device belonging to each control cycle may be determined. At this time, there may be devices determined to belong to multiple control cycles. FIG. 12 shows control for determining the cycle pattern of each device. In FIG. 12, rectangles indicate a period (cycle) during which the process is being executed, from the start timing to the end timing, and one rectangle indicates one cycle. A cycle pattern is a pattern in which this one cycle appears. 1201 to 1203 indicate the cycled steps. 1204 to 1206 indicate cycle patterns extracted from the collected data of devices A to C, respectively. The analysis unit 4a determines which cycle setting pattern each device belongs to, for example, device A belongs to cycle setting 1, device B belongs to cycle setting 2, and device A belongs to which cycle setting. also determined not to apply. Specifically, it is determined whether the value and the number of times of change match from the start to the end of the cycle. It should be noted that there is no problem even if the start timing and the end timing are slightly off. Thus, the analysis unit 4a determines what kind of correspondence relationship exists between each cycle setting pattern and each device. The analysis unit 4a may determine which device belongs to each cycle setting pattern.

分析ユニット4aは、各サイクル設定のパターンと各デバイスとがどのような対応関係か判定する際に、各サイクル設定のサイクル開始からサイクル終了までにおける各デバイス値のパターンに基づいて判定する。これにより、サイクルの終了から次の開始までデバイス値がどのような動作をしても、そのデバイスを当該サイクル設定のパターンに属すると判断することができる。また、分析ユニット4aは、各サイクル設定のパターンと各デバイスとがどのような対応関係か判定する際に、各サイクルの基準タイミングから次のサイクルの基準タイミングまで、たとえばサイクル開始から次のサイクル開始までのデバイスの値と変化回数が一致しているかで判定してもよい。 The analysis unit 4a determines the correspondence relationship between the pattern of each cycle setting and each device based on the pattern of each device value from the cycle start to the cycle end of each cycle setting. This makes it possible to determine that the device belongs to the cycle setting pattern regardless of how the device value behaves from the end of the cycle to the start of the next cycle. Further, when determining the correspondence relationship between each cycle setting pattern and each device, the analysis unit 4a determines from the reference timing of each cycle to the reference timing of the next cycle, for example, from the start of the cycle to the start of the next cycle. It may be judged whether the value of the device up to and the number of times of change match.

PLC1において実行される複数の工程のそれぞれについて開始タイミングと終了タイミングとを含むサイクル、つまり、工程が実行中である期間を制御サイクルはサイクル設定の対象とされているが、サイクル設定の対象はこれに限られない。図23は、開始タイミングから終了タイミングの期間以外にも変化するデバイスが存在する場合のサイクルの処理フローを示す。図23に示すように、作業工程を実行するために、作業工程を実行するための準備として作業開始条件を満足しているかを確認する確認フェーズ2301が存在してもよく、また、作業開始フェーズ2302、作業フェーズ2303、及び作業終了フェーズ2304の作業工程の実行後には次の工程の準備をする準備フェーズ2305、次の工程まで待機する待機フェーズ2306等が存在してもよい。このため、作業工程の実行中以外の期間においても変化するデバイスは存在し、異常要因を突き止めるための手がかりとなり得る。たとえば、確認フェーズにおいて作業開始条件の成立に関連する入力デバイス、準備フェーズにおいて次の準備の制御信号を示すデバイスなどは、開始タイミングから終了タイミングまでの期間以外の期間で動作するため、これらのデバイスの分析結果は、異常要因を突き止めるための手がかりとなり得る。要するに、サイクル設定の対象は、サイクルの基準タイミングから次の基準タイミングまでであってもよく、これにより隙間なく分析することができる。また、サイクル設定では、ユーザにより開始タイミングを規定するデバイスと、終了タイミングを規定するデバイスとが選択されたり、正常時の運転記録データなどを学習することで自動的に設定されたりする。しかし、分析対象の期間が開始タイミングから終了タイミングに限定されると、工程の開始を規定するデバイスや工程の終了を規定するデバイスを正確に把握していない場合、そのようなデバイスを見つけ出すことは困難なことがある。サイクル設定の対象をサイクルの基準タイミングから次の基準タイミングまでとすることで、工程の開始を規定するデバイスや工程の終了を規定するデバイスを厳密に指定しなかったとしても、工程に同期するデバイスを選択するだけで隙間なく分析することができる。 A cycle including a start timing and an end timing for each of a plurality of processes executed in the PLC 1, that is, a period during which the process is being executed is set as a control cycle. is not limited to FIG. 23 shows a processing flow of a cycle when there are devices that change during periods other than the period from the start timing to the end timing. As shown in FIG. 23, in order to execute the work process, there may be a confirmation phase 2301 for confirming whether the work start conditions are satisfied as preparation for executing the work process. 2302, the work phase 2303, and the work end phase 2304, there may be a preparation phase 2305 for preparing for the next process, a standby phase 2306 for waiting until the next process, and the like. Therefore, there are devices that change even during periods other than the execution of the work process, which can be a clue for identifying the cause of the abnormality. For example, the input device related to the establishment of the work start condition in the confirmation phase, the device indicating the control signal for the next preparation in the preparation phase, etc. operate in a period other than the period from the start timing to the end timing. The analysis results of this can be a clue to identify the cause of the anomaly. In short, the target of cycle setting may be from the reference timing of the cycle to the next reference timing. In the cycle setting, the user selects a device that defines the start timing and a device that defines the end timing, or the cycle is automatically set by learning operation record data during normal operation. However, if the period to be analyzed is limited to the start timing and the end timing, it is difficult to find the device that defines the start of the process and the device that defines the end of the process, unless you know exactly what the device is. It can be difficult. By setting the target of the cycle setting from the reference timing of the cycle to the next reference timing, even if the device that defines the start of the process and the device that defines the end of the process are not strictly specified, the device can be synchronized with the process. You can analyze without gaps just by selecting .

図11の説明に戻る。S33でCPU41aは、抽出したサイクルパターンおよび後述する変化パターンの類型を属性情報(分析パラメータ)として各デバイスに付加する。次に、S34でCPU41aは、付加された属性情報に基づいてS31で取得した運転記録データからモデルを生成し、処理を終了する。生成したモデルは、分析時に利用するマスタデータであり、少なくとも各デバイスのサイクルパターンの情報や変化パターンの類型情報などを示す分析パラメータが含まれる。分析パラメータには、たとえばデバイス値のONの時間、OFFの時間、立ち上がりのタイミング、立ち下がりのタイミング、ONの回数、OFFの回数、および定常値の少なくとも1つを示す閾値が含まれる。これらの分析パラメータを用いて、推定フェーズにおける分析が行われる。 Returning to the description of FIG. In S33, the CPU 41a adds the extracted cycle pattern and the type of change pattern described later to each device as attribute information (analysis parameter). Next, in S34, the CPU 41a generates a model from the driving record data acquired in S31 based on the added attribute information, and ends the process. The generated model is master data used for analysis, and includes at least analysis parameters indicating cycle pattern information and change pattern type information for each device. The analysis parameters include, for example, a threshold indicating at least one of ON time, OFF time, rise timing, fall timing, ON count, OFF count, and steady state value of the device value. Analysis in the estimation phase is performed using these analysis parameters.

<デバイスの類型>
図13は、収集される時系列データの類型の一例を示す。1301~1306は各類型のデバイス信号(時系列データ)を示す。デバイス信号には外部信号が含まれてもよい。なお、以下で説明する類型は一例であり、本発明を限定する意図はなくその他の類型にも本発明が適用されてもよい。また、本発明においては分類される類型は、分類効果を向上させるべく、これら複数の類型のうちの少なくとも2つの類型を含むことが望ましい。なお、モデル生成時における時系列データの分類は、オペレータが分類のための周期(制御サイクル)を決定するデバイスを選択することで、当該デバイスの繰り返し性に基づいて実行される。
<Device type>
FIG. 13 shows an example of types of collected time-series data. 1301 to 1306 indicate device signals (time series data) of each type. Device signals may include external signals. It should be noted that the type described below is an example, and the present invention is not intended to limit the present invention, and the present invention may be applied to other types. In addition, it is desirable that the types classified in the present invention include at least two types out of the plurality of types in order to improve the classification effect. Classification of time-series data at the time of model generation is performed based on the repetitiveness of the device by the operator selecting a device for determining the period (control cycle) for classification.

1301は、装置の動作サイクルに同期して動作するデバイスのデバイス信号を示す。1310は装置の動作サイクルを示す。1301の類型は、装置の動作サイクルごとに同様の変化パターン(定常的な変化パターン)が発生する。この類型では、たとえば、正常状態とみなせる期間において取得された時系列データから定常的な変化パターンを特定し、新たに取得された時系列データについて特定した定常的な変化パターンからの乖離に基づいて異常デバイス(いつもと異なる状態のデバイス)を特定するといった検知手法が割り当てられる。具体的には、正常状態とみなせる複数周期の時系列データの変化パターンについて、変化点に関する時間のばらつきを測定し、測定されたばらつきに応じてしきい値を設定する。その後に取得された時系列データの変化点が変化点に対応して設定されたしきい値の範囲を超えるか否かに基づいて異常デバイスを検知する検知アルゴリズムが割り当てられる。たとえば、装置の動作サイクルごとの複数の波形を重ね合わせ、デバイスがOFFからONに変化した点のばらつきに基づき、当該変化点の基準値としきい値とを設定し、これらのパラメータを用いて異常デバイスを特定することができる。また、1301の各周期において、1回目の信号の立ち上がりタイミングを示す相対時刻や各周期における位相を評価変数とし、当該評価変数のばらつきに基づいて評価変数に対応するパラメータを決定してもよい。たとえば、各周期における位相を評価変数とした場合は、位相の上限しきい値と下限しきい値をそれぞれパラメータとしてもよい。 1301 denotes a device signal of a device that operates in synchronization with the operation cycle of the device. 1310 indicates the operation cycle of the device. In the type of 1301, a similar change pattern (steady change pattern) occurs in each operation cycle of the device. In this type, for example, a stationary change pattern is identified from time series data acquired during a period that can be regarded as a normal state, and based on the divergence from the identified stationary change pattern for newly acquired time series data Detection techniques are assigned, such as identifying anomalous devices (devices that are in a different state than usual). Specifically, for a change pattern of time-series data of multiple cycles that can be regarded as a normal state, the variation in time with respect to the change point is measured, and a threshold value is set according to the measured variation. A detection algorithm is assigned to detect an abnormal device based on whether or not the change point of the time-series data acquired thereafter exceeds the range of a threshold set corresponding to the change point. For example, a plurality of waveforms for each operating cycle of the device are superimposed, and based on the variation in the point at which the device changes from OFF to ON, a reference value and a threshold value for the change point are set, and these parameters are used to determine whether an abnormality has occurred. Device can be identified. Also, in each cycle of 1301, the relative time indicating the timing of the first rise of the signal and the phase in each cycle may be used as evaluation variables, and parameters corresponding to the evaluation variables may be determined based on variations in the evaluation variables. For example, when the phase in each period is used as an evaluation variable, the upper threshold value and lower threshold value of the phase may be used as parameters.

分析ユニット4aは各サイクル設定のパターンについて何れのデバイスが属するかを判断する場合、判断基準により1つのデバイスが複数のサイクル設定に属すると判断されることがある。多くのデバイスを何れかのサイクル設定に属するように判断基準を設けると、分析対象のデバイスを増やすことができ要因解明につながりやすいが、デバイスに対して関連度の低いサイクル設定が含まれるおそれがある。そこで、1つのデバイスが複数のサイクル設定に属すると判断されるものについては、属するサイクル設定を絞ってもよい。絞るための指標として、評価変数が小さいほど関連度が高いとし、評価変数が低いほど関連度が低いとしてサイクル設定から外すようにしてもよい。また、サイクルの開始と終了の間でデバイス値が変化するデバイスは関連度が高いと判断し、サイクルの開始と終了の間以外の期間でデバイス値が変化するデバイスは関連度が低いと判断する。さらに、サイクルの開始と終了の間以外の期間でデバイス値が変化するデバイスは、デバイス値が変化する時点がサイクルの開始や終了から乖離するほど関連度が低いとしてもよい。このようにして、1つのデバイスが複数のサイクル設定に属すると判断されるものについては、属するサイクル設定を絞ってもよい。 When the analysis unit 4a determines which device belongs to each cycle setting pattern, it may be determined that one device belongs to more than one cycle setting according to the criteria. If you set the criteria so that many devices belong to one cycle setting, you can increase the number of devices to be analyzed and it will be easier to clarify the cause, but there is a risk that cycle settings with a low degree of relevance to the device may be included. be. Therefore, if one device is determined to belong to a plurality of cycle settings, the cycle settings to which it belongs may be narrowed down. As an index for narrowing down, the smaller the evaluation variable, the higher the degree of relevance, and the lower the evaluation variable, the lower the degree of relevance. Devices whose device values change between the start and end of the cycle are judged to be highly relevant, and devices whose device values change during periods other than the period between the start and end of the cycle are judged to be of low relevance. . Furthermore, a device whose device value changes during a period other than between the start and end of a cycle may be less relevant if the time point at which the device value changes deviates from the start or end of the cycle. In this way, if one device is determined to belong to multiple cycle settings, the cycle settings to which it belongs may be narrowed down.

一方、1302は、スキャン周期には同期せず、当該装置の動作サイクル以外の周期に同期して動作するデバイスのデバイス信号を示す。この類型についても、たとえば、正常状態とみなせる期間において取得された時系列データから定常的な変化パターンを特定し、新たに取得された時系列データについて特定した定常的な変化パターンからの乖離に基づいて異常デバイス(いつもと異なる状態のデバイス)を特定するといった検知手法が割り当てられる。具体的には、正常状態とみなせる複数周期の時系列データの変化パターンについて、変化点に関する時間のばらつきを測定し、測定されたばらつきに応じてしきい値を設定する。その後に取得された時系列データの変化点が変化点に対応して設定されたしきい値の範囲を超えるか否かに基づいて異常デバイスを検知する検知アルゴリズムが割り当てられる。また、1302の各周期において、2回目の信号の立ち上がりタイミングを示す相対時刻や各周期における位相を評価変数とし、当該評価変数のばらつきに基づいて評価変数に対応するパラメータを決定してもよい。たとえば、各周期における相対時刻を評価変数とした場合は、相対時刻の上限しきい値と下限しきい値をそれぞれパラメータとしてもよい。 On the other hand, 1302 indicates a device signal of a device that operates in synchronization with a period other than the operation cycle of the device, not in synchronization with the scan period. For this type, for example, a stationary change pattern is identified from the time-series data acquired during a period that can be regarded as a normal state, and the newly obtained time-series data is based on the deviation from the identified stationary change pattern. A detection technique is assigned to identify anomalous devices (devices that are in a different state than usual). Specifically, for a change pattern of time-series data of multiple periods that can be regarded as a normal state, the variation in time with respect to the change point is measured, and a threshold value is set according to the measured variation. A detection algorithm is assigned to detect an abnormal device based on whether or not a change point of time-series data acquired thereafter exceeds a threshold range set corresponding to the change point. Also, in each period of 1302, the relative time indicating the second rise timing of the signal and the phase in each period may be used as evaluation variables, and parameters corresponding to the evaluation variables may be determined based on variations in the evaluation variables. For example, when the relative time in each period is used as an evaluation variable, the upper threshold value and lower threshold value of the relative time may be used as parameters.

1303は、一定した値をとるデバイスのデバイス信号を示す。この類型では、たとえば、正常状態とみなせる期間において取得された時系列データから、正常時の値を特定し、新たに取得された時系列データについて、特定した正常時の値と異なるものを異常デバイス(いつもと異なる状態のデバイス)として特定するといった検知手法が割り当てられる。具体的には、正常状態とみなせる時系列データにおけるデバイスの値を検出基準値として設定し、その後に取得された時系列データの値が、正常時の値に対応して設定された検出基準値と異なるか否かに基づいて異常デバイスを検知する検知アルゴリズムが割り当てられる。つまり、値(一定値)が変化した場合に異常と判断することができる。1304は、不定期に動作するデバイスのデバイス信号を示す。この類型については、異常デバイスを特定する際に用いるデータからは除外される。1305は、アナログ値をとるデバイスのデバイス信号を示す。アナログ値をとるデバイスでは、後述するように、ビットデバイスのデバイス値ではないので、図14でS91のNo(図14のS97)へ進み、図14で示すように、データの変化方法に応じてそれぞれで推定フェーズにおけるアルゴリズムが異なる。アナログ値を取るデバイスの推定フェーズにおけるアルゴリズムとしては、動的時間伸縮法や自己回帰モデルなど種々の方法を利用することができる。1306は、単調増加、単調減少するデバイスのデバイス信号を示す。この類型では、微分値や積算値を用いて異常デバイスを特定する。また、単調増加または単調減少するタイミングを示す相対時刻や各周期における位相を評価変数として用いてもよい。なお、ここで説明した類型は一例であり、他の類型に分類されるデバイスも想定され、たとえば、(階段状のデバイス信号など)複数の状態をとりうるものなどがある。複数の状態をとるものについては、正常時の状態と異なる状態に変化した場合に異常と判断することもできる。 1303 indicates a device signal of a device that takes a constant value. In this type, for example, from the time-series data acquired during a period that can be regarded as a normal state, values during normal times are specified, and for newly acquired time-series data, those that differ from the specified values during normal times are identified as abnormal devices. A detection method is assigned, such as identifying it as (a device in an unusual state). Specifically, the value of the device in the time-series data that can be regarded as normal is set as the detection standard value, and the time-series data value acquired after that is set as the detection standard value corresponding to the value in the normal state. A detection algorithm is assigned to detect an anomalous device based on whether it differs from . In other words, when the value (constant value) changes, it can be determined that there is an abnormality. A device signal 1304 indicates a device that operates irregularly. This type is excluded from the data used to identify abnormal devices. 1305 indicates a device signal of a device that takes an analog value. In a device that takes an analog value, as will be described later, it is not a device value of a bit device, so proceed to No in S91 in FIG. Each has a different algorithm in the estimation phase. Various methods such as a dynamic time warping method and an autoregressive model can be used as an algorithm in the estimation phase for devices that take analog values. 1306 denotes a device signal of a device that monotonously increases and monotonically decreases. In this type, abnormal devices are identified using differential values and integrated values. Also, a relative time indicating the timing of monotonous increase or monotonous decrease or a phase in each period may be used as an evaluation variable. Note that the type described here is just an example, and devices classified into other types are also assumed, for example, there are devices that can take a plurality of states (stepped device signal, etc.). For those that take multiple states, it can be determined as abnormal when the state changes to a state different from the normal state.

ここで、デバイスの型について説明する。各デバイスは0、1のビット型のデバイスと、アナログ値をとる、ワード型のデバイスや浮動小数点数型のデバイスがある。なお、ワードデバイスには、さらに、1ワード符号なし整数(0~65535)、1ワード符号あり整数(-32768~32767)、2ワード符号なし整数(0~4294967295)、および2ワード符号あり整数(-214783648~214783647)がある。このような型を考慮すると、たとえば、スキャン周期あたりの変化率が所定値以上で、型がビット以外であればアナログ値をとるデバイスであると判断することができる。 Here, the type of device will be described. Each device includes a bit type device of 0 and 1, and a word type device and a floating point number type device that take analog values. The word device further includes 1 word unsigned integer (0 to 65535), 1 word signed integer (-32768 to 32767), 2 word unsigned integer (0 to 4294967295), and 2 word signed integer ( -214783648 to 214783647). Considering such a type, for example, if the rate of change per scan period is equal to or greater than a predetermined value and the type is other than bit, it can be determined that the device takes an analog value.

<分類処理フロー>
図14は、収集されたデータの変化パターンを分類する際の処理手順を示すフローチャートである。以下で説明する処理は、拡張ユニット4aのCPU41aによって実現される。しかし、本発明を限定する意図はなく、それらの処理の一部が基本ユニット3や他の拡張ユニット4bで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された外部装置(分析装置)によって実行されてもよい。
<Classification process flow>
FIG. 14 is a flow chart showing a processing procedure for classifying change patterns of collected data. The processing described below is implemented by the CPU 41a of the expansion unit 4a. However, there is no intention to limit the present invention, and some of those processes may be executed in the base unit 3 or other expansion units 4b, or an external device (analysis device) communicatively connected to the programmable logic controller. device).

S91でCPU41aは、分類対象の時系列データがビットデバイスのデバイス値であるか否かを判断する。ビットデバイスのデバイス値であればS92に進み、そうでなければ、S97に進む。 In S91, the CPU 41a determines whether or not the time-series data to be classified is the device value of the bit device. If it is a device value of a bit device, proceed to S92; otherwise, proceed to S97.

S92でCPU41aは、分類対象の時系列データの値に変化があるか否かを判断する。変化があればS94へ進み、変化がなく一定値をとるものであればS93に進む。S93でCPU41aは分類対象の時系列データを一定値をとるデバイス(1303)であると分類し、処理を終了する。ここで分類情報として、当該時系列データに紐づく情報、たとえば分類された類型を示すフラグ情報が当該時系列データまたは当該時系列データに対応するデバイスを示す識別情報に紐づけて格納される。このように、学習フェーズの分類時において分類した類型のフラグ情報とデバイスの識別情報とを紐づけて格納しておくことにより、推定フェーズにおいては、検証対象の時系列データが何れのデバイスからのデータであるかに従って、当該デバイスの識別情報に紐づく類型に応じて、異常デバイスの検知アルゴリズムである評価変数やパラメータを容易に選択することができる。つまり、推定フェーズにおいては、検証対象の時系列データが何れの類型に対応するかを特定する処理を省略することができる。なお、分類情報としては、分類された類型を示すフラグ情報を例として示したが、フラグ情報に代えて異常デバイス特定のアルゴリズムを示すアルゴリズム情報であってもよい。また、分類情報として格納される識別情報は、時系列データに対応するデバイスが変数である場合は、当該変数を示す識別情報となることはいうまでもない。 In S92, the CPU 41a determines whether or not there is a change in the value of the time-series data to be classified. If there is a change, the process proceeds to S94, and if there is no change and the value is constant, the process proceeds to S93. In S93, the CPU 41a classifies the time-series data to be classified as a device (1303) that takes a constant value, and ends the process. Here, as the classification information, information associated with the time-series data, for example, flag information indicating a classified type is stored in association with the time-series data or identification information indicating the device corresponding to the time-series data. In this way, by linking and storing the flag information of the type classified at the time of classification in the learning phase and the identification information of the device, in the estimation phase, the time-series data to be verified can be obtained from any device. It is possible to easily select the evaluation variables and parameters of the abnormal device detection algorithm according to the data type and the type associated with the identification information of the device. That is, in the estimation phase, it is possible to omit the process of specifying which type the time-series data to be verified corresponds to. As the classification information, flag information indicating the classified type is shown as an example, but algorithm information indicating an algorithm for identifying an abnormal device may be used instead of the flag information. In addition, if the device corresponding to the time-series data is a variable, it goes without saying that the identification information stored as the classification information is the identification information indicating the variable.

S94でCPU41aは、時系列データの値に変化がある場合に、当該変化が各周期において定常的な変化パターンであるかを判断する。定常的な変化パターンであると判断した場合にはS95に進み、定常的な変化パターンではないと判断した場合にはS96に進む。ここで、定常的な変化パターンとは、各周期において同様のパターンで変化するものを示す。S95でCPU41aは、所定の周期で動作するデバイスと分類し、処理を終了する。なお、所定の周期で動作するデバイスには、上述したように、装置の動作サイクルに同期して動作するデバイス(1301)と、装置の動作サイクル以外の周期に同期して動作するデバイス(1302)とがあり、CPU41aは、それぞれへの分類を行う。一方、S96でCPU41aは、不定期で動作するデバイス(1304)に分類し、処理を終了する。 In S94, when there is a change in the value of the time-series data, the CPU 41a determines whether the change is a constant change pattern in each cycle. If it is determined that the change pattern is steady, the process proceeds to S95, and if it is determined that the change pattern is not constant, the process proceeds to S96. Here, the constant change pattern means that the pattern changes in the same pattern in each cycle. In S95, the CPU 41a classifies the device as a device that operates at a predetermined cycle, and terminates the process. As described above, the devices that operate in a predetermined cycle include the device (1301) that operates in synchronization with the operation cycle of the apparatus and the device (1302) that operates in synchronization with a period other than the operation cycle of the apparatus. and the CPU 41a classifies them accordingly. On the other hand, in S96, the CPU 41a classifies the device as an irregularly operating device (1304), and terminates the process.

一方、S91でビットデバイスでないと判断されると、S97に進み、CPU41aは、分類対象の時系列データにおいて所定値以上の変化があるか否かを判断する。ここでは、変化している信号の極値が所定値以上であるか否かを判断する。変化がある場合はS98に進み、そうでない場合はS912に進む。 On the other hand, if it is determined in S91 that it is not a bit device, the process proceeds to S97, and the CPU 41a determines whether or not there is a change of a predetermined value or more in the time-series data to be classified. Here, it is determined whether or not the extreme value of the changing signal is equal to or greater than a predetermined value. If there is a change, proceed to S98; otherwise, proceed to S912.

S98でCPU41aは、所定の周期で変化しているか否かを判断し、所定の周期で変化していなければS99に進み、変化していればS910に進む。S910でCPU41aは、変化している値が単調増加又は単調減少しているか否かを判断する。単調増加又は単調減少していればS911に進み、そうでなければS99に進む。 In S98, the CPU 41a determines whether or not it changes at a predetermined cycle.If it does not change at a predetermined cycle, the process proceeds to S99. In S910, the CPU 41a determines whether the changing value is monotonously increasing or monotonously decreasing. If monotonically increasing or monotonically decreasing, the process proceeds to S911; otherwise, the process proceeds to S99.

S99でCPU41aは、アナログ値のデバイス(1305)に分類し、処理を終了する。アナログ値のデバイスにおいては種々の類型が存在し、分類対象のデバイスの種別に応じてそれぞれ個別の対応が行われる。一方、S911でCPU41aは、単調増加又は単調減少のデバイス(1306)であると分類し、処理を終了する。また、S912でCPU41aは、その他のデバイスであると分類し、処理を終了する。その他のデバイスであると判断した場合には当該分類対象の時系列データの特徴が抽出できないものであり、正常時の特徴のある動作を特定できないため、異常デバイスを特定する際には用いない。 In S99, the CPU 41a classifies the device as an analog value device (1305) and terminates the process. There are various types of analog value devices, and each type is handled individually according to the type of device to be classified. On the other hand, in S911, the CPU 41a classifies the device as a monotonically increasing or monotonically decreasing device (1306), and terminates the process. Also, in S912, the CPU 41a classifies the device as another device, and terminates the process. If the device is determined to be other devices, the characteristics of the time-series data to be classified cannot be extracted, and the behavior with characteristics during normal operation cannot be identified. Therefore, it is not used when identifying an abnormal device.

<結果表示フロー>
図15は、上記S7における分析ユニット4aによる結果表示フローの詳細を示す。以下で説明する処理は、分析ユニット(拡張ユニット)4aのCPU41aによって実行される処理として説明する。しかし、本発明を限定する意図はなく、それらの処理の一部が他のユニットで実行されてもよいし、それらの処理の全てが一つのユニットで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された外部装置(分析装置)によって実行されてもよい。
<Result display flow>
FIG. 15 shows details of the result display flow by the analysis unit 4a in S7. The processing described below will be described as processing executed by the CPU 41a of the analysis unit (extension unit) 4a. However, without intending to limit the invention, some of those processes may be performed in other units, all of those processes may be performed in one unit, or the programmable logic controller may be performed by an external device (analyzer) communicatively connected to the

まずS71で分析ユニット4aのCPU41aは、分析レポートの要求を受け付けたか否かを判断する。分析レポートの要求とはオペレータによってPC2a、PC2bを介して受信する要求や、定期的な分析レポート生成タイミング、エラー発生時の分析レポートの作成などが含まれる。PLC1としては、いつもと異なる状態のデバイスが検知された場合にはオペレータからの要求なしに分析レポートを作成してもよいし、オペレータからの要求があって初めて分析レポートを作成するようにしてもよい。これらの制御は設定で切り替えることができる。分析レポートの要求を受け付けていればS72に進む。 First, in S71, the CPU 41a of the analysis unit 4a determines whether or not a request for an analysis report has been received. The analysis report request includes requests received by the operator via the PC 2a and PC 2b, regular analysis report generation timing, and generation of an analysis report when an error occurs. The PLC 1 may create an analysis report without a request from the operator when a device in an unusual state is detected, or may create an analysis report only upon request from the operator. good. These controls can be switched in settings. If the request for the analysis report has been accepted, the process proceeds to S72.

S72でCPU41aは、基本ユニット3の運転記録記憶部37に格納された分析結果77を取得する。続いて、S73でCPU41aは、取得した分析結果に従って、PC2aやPC2bなどのWebクライアントのWebブラウザで表示可能な分析レポートを生成する。生成する分析レポートは図8Aを用いて上述した結果表示画面800を表示するための画面情報となる。ここでは、各分析結果を同期させて表示するための同期情報も付加される。具体的には、検知マップ810、検知リスト820、画像表示領域830、および分析コメント840に表示する画面情報に加えて、各分析結果の表示位置を示唆する情報が含まれる。表示位置を示唆する情報とは、上述したように、定義された制御サイクルのタイミング情報であってもよいし、単なる時刻情報であってもよい。即ち、同期可能な情報であればよい。また、CPU41aは分析コメント840を生成し、分析レポートに埋め込む。分析コメントの生成フローについては、図17および図18を用いて後述する。 In S<b>72 , the CPU 41 a acquires the analysis result 77 stored in the driving record storage section 37 of the basic unit 3 . Subsequently, in S73, the CPU 41a generates an analysis report that can be displayed on the web browser of the web client such as the PC 2a or the PC 2b, according to the acquired analysis results. The generated analysis report serves as screen information for displaying the result display screen 800 described above with reference to FIG. 8A. Synchronization information for synchronizing and displaying each analysis result is also added here. Specifically, in addition to the screen information displayed in the detection map 810, the detection list 820, the image display area 830, and the analysis comment 840, information indicating the display position of each analysis result is included. The information suggesting the display position may be the timing information of the defined control cycle, or simple time information, as described above. That is, any information may be used as long as it can be synchronized. Also, the CPU 41a generates an analysis comment 840 and embeds it in the analysis report. The analysis comment generation flow will be described later with reference to FIGS. 17 and 18. FIG.

次に、S74でCPU41aは、S73で生成した分析レポートを要求元のPC2へ送信する。ここで送信する情報は、HTMLデータ、CSSデータおよびJavaScript(登録商標)コードなどを含む情報であってもいし、単に分析レポートの生成が完了したことを示す通知であってもよい。通知を行う場合には改めてPC2側から表示要求を受け付けると、CPU41aは画面情報を送信する。その後、S75でCPU41aは、要求元から分析レポートの更新要求が受け付けたか否かを判断する。更新要求とは、たとえば表示部品の変更や、フィルタ801~803の選択による表示対象の変更、時刻バー811などを操作したことにより分析結果の時間的な表示位置の更新などである。なお、時刻バー811などを操作したことによる表示内容の更新については、PC2側に閉じた制御としてもよい。この場合、表示対象となっている表示部品の情報に加えて、当該表示部品上で表示しているデバイスの分析結果についての情報もPC2側へ提供する必要がある。更新要求を受け付けるとS76に進み、そうでない場合はS77に進む。 Next, in S74, the CPU 41a transmits the analysis report generated in S73 to the requesting PC2. The information transmitted here may be information including HTML data, CSS data, JavaScript (registered trademark) code, etc., or may simply be a notification indicating that the generation of the analysis report has been completed. When a display request is received again from the PC 2 side in the case of notification, the CPU 41a transmits the screen information. Thereafter, in S75, the CPU 41a determines whether or not a request for updating the analysis report has been received from the request source. The update request includes, for example, change of display parts, change of display target by selection of filters 801 to 803, update of temporal display position of analysis result by operating time bar 811 or the like. It should be noted that the updating of the display content by operating the time bar 811 or the like may be controlled by closing the PC 2 side. In this case, it is necessary to provide the PC 2 with information on the analysis result of the device displayed on the display component in addition to the information on the display component to be displayed. If the update request is accepted, the process proceeds to S76; otherwise, the process proceeds to S77.

S76でCPU41aは、更新要求の指示内容に従って分析レポートを更新し、処理をS74へ戻し更新した分析レポートを要求元へ送信する。一方、S77でCPU41aは、分析レポートの表示を終了する終了指示を受け付けたか否かを判断する。終了指示を受け付けていない場合は処理をS75に戻し、終了指示を受け付けたと判断した場合は処理を終了する。 In S76, the CPU 41a updates the analysis report according to the contents of the update request, returns the process to S74, and transmits the updated analysis report to the request source. On the other hand, in S77, the CPU 41a determines whether or not an end instruction to end the display of the analysis report has been received. If the end instruction has not been received, the process returns to S75, and if it is determined that the end instruction has been received, the process ends.

図16は、上記S7におけるPC2bにおける結果表示フローの詳細を示す。以下で説明する処理は、PC2bのCPU11bによって実行される処理として説明する。しかし、本発明を限定する意図はなく、それらの処理の一部がPLCのユニットで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された他の外部装置(PC2aなど)によって実行されてもよい。PLCのユニットで実行される場合には当該ユニットにはモニタが設けられる。また、ここで説明する処理は、分析ユニット4aによって生成された分析レポートをブラウザとして表示する処理である。 FIG. 16 shows details of the result display flow in the PC 2b in S7. The processing described below will be described as processing executed by the CPU 11b of the PC 2b. However, it is not intended to limit the invention, and some of those processes may be performed by the PLC unit, or by other external devices (such as PC2a) communicatively connected to the programmable logic controller. may be When implemented in a PLC unit, the unit is provided with a monitor. Also, the process described here is the process of displaying the analysis report generated by the analysis unit 4a as a browser.

S81でCPU11bは、操作部8bを介して分析レポートの表示要求を受け付けたか否かを判断する。受け付けた場合にはS82に進む。S82でCPU11bは、分析レポートを分析ユニット4aに対して要求する。その後、S83でCPU11bは、分析ユニット4aから要求に対応する応答(分析レポート)を受信したか否かを判断する。ここで受信する情報としては、分析レポートを表示させるためのURL(IPアドレス)であってもよいし、分析レポートそのものの情報であってもよい。ここではURLを受信したものとして以下の処理を説明する。 In S81, the CPU 11b determines whether or not an analysis report display request has been received via the operation unit 8b. If accepted, the process proceeds to S82. In S82, the CPU 11b requests an analysis report from the analysis unit 4a. Thereafter, in S83, the CPU 11b determines whether or not a response (analysis report) corresponding to the request has been received from the analysis unit 4a. The information received here may be a URL (IP address) for displaying the analysis report, or information of the analysis report itself. Here, the following processing will be described assuming that a URL has been received.

応答を受信するとS84でCPU11bは、Webブラウザ18に指定して分析レポートを表示させる。続いて、S85でCPU11bは、分析レポートの表示を更新する更新要求を受け付けたか否かを判断する。受け付けた場合はS86へ進み、そうでない場合はS87へ進む。S86で、更新要求を受け付けるとS86でCPU11bは、更新要求をWebサーバである分析ユニット4aへ送信し、処理をS83に戻す。一方、更新要求でない場合はS87でCPU11bは、分析レポートの表示を終了する終了指示を受け付けたか否かを判断する。終了指示を受け付けていないと判断した場合は処理をS85へ戻し、終了指示を受け付けたと判断した場合は処理を終了する。 Upon receiving the response, in S84, the CPU 11b designates the Web browser 18 to display the analysis report. Subsequently, in S85, the CPU 11b determines whether or not an update request for updating the display of the analysis report has been received. If accepted, proceed to S86; otherwise, proceed to S87. At S86, when the update request is received, the CPU 11b at S86 transmits the update request to the analysis unit 4a, which is the Web server, and returns the process to S83. On the other hand, if it is not an update request, in S87 the CPU 11b determines whether or not an end instruction to end the display of the analysis report has been received. If it is determined that the end instruction has not been received, the process returns to S85, and if it is determined that the end instruction has been received, the process ends.

<分析コメント生成フロー(自然言語表現)>
図17は自然言語による分析コメントの生成フローを示す。ここで説明する処理は、分析レポートを生成する上記S73の処理の一部(分析コメントの生成に関わる処理)である。以下で説明する処理は、分析ユニット(拡張ユニット)4aのCPU41aによって実行される処理として説明する。しかし、本発明を限定する意図はなく、それらの処理の一部が他のユニットで実行されてもよいし、それらの処理の全てが一つのユニットで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された外部装置(分析装置)によって実行されてもよい。
<Analysis comment generation flow (natural language expression)>
FIG. 17 shows the flow of generating analysis comments in natural language. The processing described here is part of the processing of S73 for generating the analysis report (processing related to generation of analysis comments). The processing described below will be described as processing executed by the CPU 41a of the analysis unit (extension unit) 4a. However, without intending to limit the invention, some of those processes may be performed in other units, all of those processes may be performed in one unit, or the programmable logic controller may be performed by an external device (analyzer) communicatively connected to the

まずS731で分析ユニット4aのCPU41aは、S72で取得された分析結果を取得する。取得される分析結果1700には、図17に示すように、各デバイスの異常の種類の情報がそれぞれ含まれ、さらに詳細な情報やデバイス名、デバイスコメント等が含まれる。ここで、デバイスコメントとは、オペレータがユーザプログラムの編集画面等で特定のデバイスに対して入力したコメントを示す。オペレータは全てのデバイスにコメントを付すのではなく、通常、使用するデバイスに対してコメントを付すものである。したがって、デバイスコメントはオペレータにとって有用な情報となる。異常の種類には、1701に示す無変化デバイスが変化したパターン、1702に示すON/OFFの変化回数が異常であるパターン、および1703に示すON/OFFの時間が異常であるパターンなどが含まれる。それぞれの異常について、詳細情報として、たとえば正常時および異常時の変化パターンや時間間隔、変化回数、閾値、詳細な情報などが含まれる。つまり、詳細情報とは、上述した分析パラメータに相当するものである。 First, in S731, the CPU 41a of the analysis unit 4a obtains the analysis result obtained in S72. As shown in FIG. 17, the acquired analysis result 1700 includes information on the type of abnormality of each device, and further includes detailed information, device names, device comments, and the like. Here, the device comment indicates a comment entered by the operator for a specific device on a user program editing screen or the like. The operator does not add comments to all devices, but usually comments to the devices that he uses. Therefore, the device comment becomes useful information for the operator. The types of abnormalities include a pattern 1701 in which an unchanged device has changed, a pattern 1702 in which the number of ON/OFF changes is abnormal, and a pattern 1703 in which the ON/OFF time is abnormal. . For each abnormality, detailed information includes, for example, change patterns and time intervals between normal and abnormal conditions, the number of changes, thresholds, detailed information, and the like. That is, the detailed information corresponds to the analysis parameters described above.

次に、S732でCPU41aは、デバイス毎の異常内容に従って、予め保持されているメッセージフォーマットをメモリ42aから選択して取得する。予め保持されているメッセージフォーマットを1720に示す。メッセージフォーマット1720には、異常の種類ごとに、自然言語による分析コメントを生成する際のフォーマットが定義されている。CPU41aは、デバイスの異常内容に応じて該当するメッセージフォーマットを選択する。1704には無変化デバイスが変化したパターンのメッセージフォーマット1705が定義されている。1706にはON/OFFの変化回数が異常であるパターンのメッセージフォーマット1707が定義されている。1708にはON/OFFの時間が異常であるパターンのメッセージフォーマット1709が定義されている。 Next, in S732, the CPU 41a selects and acquires a prestored message format from the memory 42a according to the error content for each device. Reference numeral 1720 shows the pre-stored message format. The message format 1720 defines a format for generating analysis comments in natural language for each type of anomaly. The CPU 41a selects the appropriate message format according to the content of the device abnormality. In 1704, a message format 1705 of a pattern in which an unchanged device has changed is defined. In 1706, a message format 1707 of a pattern in which the number of ON/OFF changes is abnormal is defined. 1708 defines a message format 1709 of a pattern in which the ON/OFF time is abnormal.

次に、S733でCPU41aは、選択したメッセージフォーマットに各デバイスの異常内容(分析結果)に応じた数値や自然言語を選択して埋め込む。より詳細には、メッセージフォーマット1705、1707、1709に示す”{}”に、各デバイスの異常内容(分析結果)に応じた値や自然言語が埋め込まれる。さらに、S734でCPU41aは、他の分析結果、たとえば検知マップ810、検知リスト820、および画像表示領域830に加えて、生成した分析コメントを加えた分析レポートを生成し、処理を終了する。 Next, in S733, the CPU 41a selects and embeds numerical values and natural language corresponding to the content of the abnormality (analysis result) of each device in the selected message format. More specifically, values and natural language are embedded in the "{ }" shown in the message formats 1705, 1707, and 1709 according to the error content (analysis result) of each device. Further, in S734, the CPU 41a generates an analysis report including the generated analysis comment in addition to other analysis results such as the detection map 810, the detection list 820, and the image display area 830, and ends the process.

<分析コメント生成フロー(図形表現)>
図18は図形による分析コメントの生成フローを示す。ここで説明する処理は、分析レポートを生成する上記S73の処理の一部(分析コメントの生成に関わる処理)である。以下で説明する処理は、分析ユニット(拡張ユニット)4aのCPU41aによって実行される処理として説明する。しかし、本発明を限定する意図はなく、それらの処理の一部が他のユニットで実行されてもよいし、それらの処理の全てが一つのユニットで実行されてもよいし、或いはプログラマブルロジックコントローラに通信可能に接続された外部装置(分析装置)によって実行されてもよい。
<Analysis comment generation flow (graphic expression)>
FIG. 18 shows the flow of generation of graphical analysis comments. The processing described here is part of the processing of S73 for generating the analysis report (processing related to generation of analysis comments). The processing described below will be described as processing executed by the CPU 41a of the analysis unit (extension unit) 4a. However, without intending to limit the invention, some of those processes may be performed in other units, all of those processes may be performed in one unit, or the programmable logic controller may be performed by an external device (analyzer) communicatively connected to the

まずS736で分析ユニット4aのCPU41aは、S72で取得された分析結果を取得する。取得される分析結果1800には、図18に示すように、各デバイスの異常の種類の情報がそれぞれ含まれ、さらに詳細な情報やデバイス名、デバイスコメント等が含まれる。異常の種類には、1801に示すON/OFFの変化回数が異常であるパターン、および1802に示すON/OFFの時間が異常であるパターンなどが含まれる。もちろん他の異常内容のパターンが含まれてもよい。それぞれの異常について、詳細情報として、たとえば正常時および異常時の変化パターンや時間間隔、変化回数、閾値、詳細な情報などが含まれる。つまり、詳細情報とは、上述した分析パラメータに相当するものである。 First, in S736, the CPU 41a of the analysis unit 4a obtains the analysis result obtained in S72. As shown in FIG. 18, the acquired analysis result 1800 includes information on the type of abnormality of each device, and further includes detailed information, device names, device comments, and the like. The type of abnormality includes a pattern 1801 in which the number of ON/OFF changes is abnormal, a pattern 1802 in which the ON/OFF time is abnormal, and the like. Of course, other abnormal content patterns may be included. For each abnormality, detailed information includes, for example, change patterns and time intervals between normal and abnormal conditions, the number of times of change, thresholds, detailed information, and the like. That is, the detailed information corresponds to the analysis parameters described above.

次に、S737でCPU41aは、デバイス毎の異常内容に従って、予め保持されている図形フォーマットをメモリ42aから選択して取得する。予め保持されている図形フォーマットを1820に示す。図形フォーマット1820には、異常の種類ごとに、図形による分析コメントを生成する際のフォーマットが定義されている。CPU41aは、デバイスの異常内容に応じて該当する図形フォーマットを選択する。1803にはON/OFFの変化回数が異常であるパターンの図形フォーマット1804~1808が定義されている。1809にはON/OFFの時間が異常であるパターンの図形フォーマット1810~1816が定義されている。 Next, in S737, the CPU 41a selects and acquires a graphic format held in advance from the memory 42a according to the content of the abnormality for each device. Reference numeral 1820 indicates a graphic format held in advance. The graphical format 1820 defines a format for generating graphical analysis comments for each type of abnormality. The CPU 41a selects a corresponding graphic format according to the content of the device abnormality. In 1803, graphic formats 1804 to 1808 of patterns with an abnormal number of ON/OFF changes are defined. In 1809, graphic formats 1810 to 1816 of patterns with abnormal ON/OFF times are defined.

次に、S738でCPU41aは、選択した図形フォーマットに各デバイスの異常内容(分析結果)に応じた図形(一部文言や数値を含む。)を選択して埋め込む。より詳細には、図形フォーマット1804~1808、1810~1816に示す”?”の領域に、各デバイスの異常内容(分析結果)に応じた図形が埋め込まれる。さらに、S739でCPU41aは、他の分析結果、たとえば検知マップ810、検知リスト820、および画像表示領域830に加えて、生成した分析コメントを加えた分析レポートを生成し、処理を終了する。 Next, in S738, the CPU 41a selects and embeds a graphic (partially including words and numerical values) corresponding to the content of abnormality (analysis result) of each device in the selected graphic format. More specifically, in the "?" areas shown in graphic formats 1804 to 1808 and 1810 to 1816, graphics corresponding to the content of the abnormality (analysis result) of each device are embedded. Further, in S739, the CPU 41a generates an analysis report including other analysis results, such as the detection map 810, the detection list 820, and the image display area 830, as well as the generated analysis comment, and ends the process.

なお、分析コメント840に示すように、自然言語による異常内容の表現と、図形による異常内容の表現とが同時に含まれてもよい。この場合、上記図17のフローチャートと上記図18のフローチャートを実行するか、或いは、2つのフローチャートを合体したフローチャートとを実行することにより実現される。 Note that, as shown in the analysis comment 840, the expression of the content of the abnormality in a natural language and the expression of the content of the abnormality in a graphic form may be included at the same time. In this case, it is realized by executing the flowchart of FIG. 17 and the flowchart of FIG. 18, or by executing a flowchart combining the two flowcharts.

<サイクル設定>
図19は、サイクルを定義する設定画面1900を示す。設定画面1900は、たとえばPC2aの表示部7aに表示中のUI100から所定の操作が行われた場合に表示部7aに表示される画面である。図19に示すように、UI100上に表示されているプログラムエディタに重畳して表示されてもよいし、UI100に表示されているプログラムエディタから遷移する画面として表示されてもよい。なお、設定画面1900はPC2b上のWebブラウザ18上で表示されてもよい。
<Cycle setting>
FIG. 19 shows a setup screen 1900 for defining a cycle. The setting screen 1900 is, for example, a screen displayed on the display unit 7a of the PC 2a when a predetermined operation is performed from the UI 100 being displayed on the display unit 7a. As shown in FIG. 19 , it may be displayed superimposed on the program editor displayed on the UI 100 , or may be displayed as a screen transitioned from the program editor displayed on the UI 100 . Note that the setting screen 1900 may be displayed on the web browser 18 on the PC 2b.

設定画面1900には、運転記録分析を行う際のアプリケーションやアプリケーション名を指定する設定領域1901、1902が含まれる。これらの設定領域1901、1902は分析対象を設定するためのものである。図19にはデフォルトの設定が示してあり、オペレータは特に設定しなくてもよい。さらに、設定画面1900には基本設定の領域が有り、ここで制御サイクルを指定することができる。1903は制御サイクルの指定方法を設定し、1904はサイクル名を設定し、1905は開始トリガを設定し、1906は終了トリガを設定することができる。また、デフォルトでは制御サイクルは指定されておらず、追加ボタン1907のみが表示されている。 A setting screen 1900 includes setting areas 1901 and 1902 for designating an application and an application name when driving record analysis is performed. These setting areas 1901 and 1902 are for setting analysis targets. Default settings are shown in FIG. 19, and the operator does not need to make any particular settings. Further, the setting screen 1900 has a basic setting area, where the control cycle can be specified. 1903 can set the designation method of the control cycle, 1904 can set the cycle name, 1905 can set the start trigger, and 1906 can set the end trigger. Also, by default, no control cycle is specified, and only the add button 1907 is displayed.

図19に示す例では、No.0,1,2の制御サイクルが既に指定されている状態を示す。本実施形態によれば、このように分析対象となる制御サイクルとして、1以上の制御サイクルを指定することができる。したがって、オペレータは広範囲に分析したい場合においては、複数の制御サイクルを指定することでより意図した分析レポートを確認することができる。指定方法1903は制御サイクルの起点となる開始タイミングおよび終点となる終了タイミングを指定する開始・終了指定と、開始タイミングのみを指定する開始指定を選択することができる。したがって、終了トリガ1906は開始・終了指定が選択された場合にのみ終了タイミングを指定することができる。ここでは、各サイクル定義毎に、所属するデバイスやデバイスのグループを設定していない。したがって、分析ユニット4a等が定義された制御サイクルに対応するデバイスを特定して分析を行うことになる。複数の制御サイクルを指定可能であるため、1つのデバイスが複数の制御サイクルに対応する可能性もある。この場合においては、分析対象として優先度をより高く設定するようにしてもよい。当該優先度が高ければ分析レポートにおいて優先的に表示するようにしてもよい。一方で、特定のデバイスを各サイクル定義に紐づける設定を行えるようにしてもよい。 In the example shown in FIG. This indicates that 0, 1, 2 control cycles have already been specified. According to this embodiment, one or more control cycles can be specified as control cycles to be analyzed in this way. Therefore, when the operator wants to analyze a wide range, he can confirm a more intended analysis report by designating a plurality of control cycles. The designation method 1903 can select the start/end designation that designates the start timing that is the starting point and the end timing that is the end point of the control cycle, or the start designation that designates only the start timing. Therefore, the end trigger 1906 can designate the end timing only when the start/end designation is selected. Here, the device to which each cycle definition belongs and the device group are not set. Therefore, the analysis unit 4a or the like identifies and analyzes the device corresponding to the defined control cycle. Since multiple control cycles can be specified, one device may correspond to multiple control cycles. In this case, a higher priority may be set as the analysis target. If the priority is high, it may be preferentially displayed in the analysis report. On the other hand, it may be possible to set a specific device to be linked to each cycle definition.

設定画面1900にはさらに、設定保存1911、設定読出1912、OKボタン1913、およびキャンセルボタン1914を含んで構成される。設定保存1911は設定画面1900内で設定された設定内容を保存するためのボタンである。設定読出1912は基本ユニット3のメモリ32のプロジェクト記憶部35に予め保持されている設定ファイルを読み出すためのボタンである。当該設定ファイルには、1以上の制御サイクルが予め指定されている。当該設定ファイルを読み出した後に、さらに制御サイクルを追加することも可能である。OKボタン1913は設定画面1900上に設定されている内容を有効にして設定処理を終了するためのボタンである。キャンセルボタン1914は設定画面1900上に設定されている内容を適用することなく設定処理を終了するためのボタンである。 The setting screen 1900 further includes a save setting 1911 , read setting 1912 , OK button 1913 , and cancel button 1914 . A setting save 1911 is a button for saving the setting content set in the setting screen 1900 . A setting read 1912 is a button for reading a setting file pre-stored in the project storage section 35 of the memory 32 of the basic unit 3 . One or more control cycles are specified in advance in the setting file. It is also possible to add more control cycles after reading the configuration file. An OK button 1913 is a button for validating the contents set on the setting screen 1900 and ending the setting process. A cancel button 1914 is a button for ending the setting process without applying the contents set on the setting screen 1900 .

<サイクル未設定>
図20はサイクル未設定の分析レポートの検知マップ810を示す。分析ユニット4aはサイクル未設定であっても分析は可能であるが、分析可能なデバイスは極端に少ない。つまり、サイクルパターンを有していないデバイスに限られる。サイクルパターンを有していないデバイスとは、たとえばデバイス値が固定値で変化しないデバイスである。たとえば、図20の2001に示すように、常時ONや常時OFFのデバイスはサイクルが未設定であっても分析を行うことができる。一方、所定のサイクルパターンを有するデバイスについてはサイクルが未設定であれば分析を行うことができない。このように、分析可能なデバイスが少ないため、サイクルが未設定の場合も分析自体は可能であるものの、分析結果の有効性は限定的である。したがって、図20に示すように、分析レポートにおいて、サイクルが未設定である旨と、サイクル設定を促すメッセージ2002を表示するようにしてもよい。「サイクル設定して分析する」が選択されるとサイクル設定のポップアップ画面が表示され、オペレータはサイクル設定を行うことができる。
<Cycle not set>
FIG. 20 shows a detection map 810 for an uncycled analysis report. The analysis unit 4a can perform analysis even if the cycle is not set, but there are extremely few devices capable of analysis. That is, it is limited to devices that do not have cycle patterns. A device that does not have a cycle pattern is, for example, a device whose device value is fixed and does not change. For example, as shown at 2001 in FIG. 20, an always-on or always-off device can be analyzed even if the cycle is not set. On the other hand, a device having a predetermined cycle pattern cannot be analyzed if the cycle is not set. As described above, since the number of devices capable of analysis is small, the analysis itself is possible even when the cycle is not set, but the effectiveness of the analysis results is limited. Therefore, as shown in FIG. 20, the analysis report may display a message 2002 indicating that the cycle has not been set and prompting the user to set the cycle. When "set cycle and analyze" is selected, a pop-up screen for cycle setting is displayed, and the operator can set the cycle.

<モデル信頼度>
図21はモデル信頼度を説明する図である。ここでは、図10の1030で示したモデル信頼度について詳細に説明する。生成したモデルは生成時に扱ったデータ量に応じてその信頼度が変化するものである。そこで、分析ユニット4aは、モデル生成時にそのモデルの信頼度を測定して、属性情報としてモデルに付加する。図21には、10サイクルの運転記録データを取得した場合に、モデル生成と分析を行う様子が示されている。たとえば、10サイクルの運転記録データを取得したとしても、シンプルなデバイスではモデル生成に十分なデータであるものの、非同期のデバイスなどでは不十分な可能性もある。従って、サイクル数だけでは生成したモデルの信頼度を推測することは難しい。そこでモデルの信頼度を測定して提示することができれば学習時には、良いモデルができたかどうかをオペレータが判断することができ、異常検知時には検知した内容が信頼できるものかをオペレータが判断することができる。
<Model Reliability>
FIG. 21 is a diagram for explaining model reliability. Here, the model reliability indicated by 1030 in FIG. 10 will be described in detail. The reliability of the generated model changes according to the amount of data handled at the time of generation. Therefore, the analysis unit 4a measures the reliability of the model at the time of model generation and adds it to the model as attribute information. FIG. 21 shows how models are generated and analyzed when driving record data for 10 cycles is acquired. For example, even if 10 cycles of driving record data are acquired, it may be sufficient data for model generation for a simple device, but insufficient for an asynchronous device. Therefore, it is difficult to estimate the reliability of the generated model only from the number of cycles. Therefore, if the reliability of the model can be measured and presented, the operator can judge whether a good model was created during learning, and the operator can judge whether the detected content is reliable during anomaly detection. can.

2101~2103は学習時に、正常データを1サイクルずつ学習、追加学習を繰り返し、次のサイクルのデータを分析した様子を示す。2101は7サイクルを利用してモデルを生成し、8サイクル目を分析した場合を示す。2102は8サイクルを利用してモデルを生成し、9サイクル目を分析した場合を示す。2103は9サイクルを利用してモデルを生成し、10サイクル目を分析した場合を示す。図21に示す例では、たとえば、それぞれ生成したモデルにおいて、異常の検知数は、2101で8つ、2102で3つ、2103で5つとなる。本来正常データであるため検知数は0になることが望ましい。しかし、正常データの量が不十分である場合には0にならない。これらの異常の検知数をそのまま信頼度としてオペレータに提示してもよいが、検知個数を信頼度に正規化して提示してもよい。たとえば、検知数が0であれば信頼度を最も高い”3”とし、検知数が1~10であれば信頼度を”2”として、検知数が11~20であれば信頼度を”1”とし、検知数が21以上であれば信頼度を”0”としてもよい。たとえば、図21に示すように、2101の検知数が最も多い測定値を利用して信頼度を取得してもよい。なお、学習が一旦終了したタイミングで学習の完了と生成したモデルの信頼度を提示し、更なる学習を行うかをオペレータに選択させてもよい。或いは、所定の信頼度に到達するまで学習を繰り返すようにしてもよい。 Reference numerals 2101 to 2103 show how normal data is learned one cycle at a time, additional learning is repeated, and the data of the next cycle is analyzed. 2101 shows a case where a model is generated using 7 cycles and the 8th cycle is analyzed. 2102 shows a case where a model is generated using 8 cycles and the 9th cycle is analyzed. 2103 shows a case where a model is generated using 9 cycles and the 10th cycle is analyzed. In the example shown in FIG. 21, for example, in each generated model, the number of abnormalities detected is 8 in 2101, 3 in 2102, and 5 in 2103. Since it is originally normal data, it is desirable that the number of detections is 0. However, it will not be 0 if the amount of normal data is insufficient. The number of detections of these abnormalities may be presented to the operator as the reliability as it is, or the number of detections may be normalized to the reliability and presented. For example, if the number of detections is 0, the highest reliability is set to "3", if the number of detections is 1 to 10, the reliability is set to "2", and if the number of detections is 11 to 20, the reliability is set to "1". ”, and if the number of detections is 21 or more, the reliability may be set to “0”. For example, as shown in FIG. 21, the reliability may be obtained using the measured value 2101 with the largest number of detections. Note that the completion of learning and the reliability of the generated model may be presented at the timing when the learning is once completed, and the operator may be allowed to select whether to perform further learning. Alternatively, learning may be repeated until a predetermined reliability is reached.

<変形例>
本発明は上記実施形態に限らず様々な変形が可能である。以下では種々の変形例について図面を参照して説明する。
<Modification>
The present invention is not limited to the above embodiment, and various modifications are possible. Various modifications will be described below with reference to the drawings.

<システム構成の変形例>
図22はPLCシステム構成の変形例を示す。上記実施形態では、PLCシステムとして、基本ユニット3、分析ユニット4a、およびカメラユニットなどの拡張ユニット4bで構成されるPLC1と、基本ユニット3に接続されるPC2aと、分析ユニット4aに接続される分析レポートを表示するPC2bとを含んで構成される例について説明した。しかし、これらの構成は一例であって、上述した運転記録データの収集、モデルの生成、分析、分析結果の表示については何れの装置やユニットで行われてもよいし、さらに他の外部装置や他の拡張ユニットによって実現されてもよい。ここではそのような構成の変形例について説明する。
<Modified example of system configuration>
FIG. 22 shows a modification of the PLC system configuration. In the above-described embodiment, the PLC system includes a PLC 1 composed of a basic unit 3, an analysis unit 4a, and an expansion unit 4b such as a camera unit, a PC 2a connected to the basic unit 3, and an analysis unit 4a connected to the analysis unit 4a. An example configured including a PC 2b for displaying a report has been described. However, these configurations are only examples, and the above-described collection of driving record data, generation of models, analysis, and display of analysis results may be performed by any device or unit. It may be implemented by other expansion units. A modification of such a configuration will be described here.

たとえば、図22に示すように、上記実施形態に係る分析ユニット4aの機能をPLC1の上位層に配置される分析装置(データ処理装置として機能する)2cで実現してもよい。モデルの学習フェーズの処理などは非常に処理負荷が高く、処理時間を要するものであるため、PLCユニットの処理能力に応じて外部で実現することも想定され得る。また、上位層の装置に分析機能を設けることにより、他のPLCからも情報を吸い上げることもでき、より信頼度の高いモデルを生成することも可能となる。分析装置2cは、PLC固有情報の解析、モデルの生成、分析、分析レポートの作成などの機能を有する。これらの機能については、分析ユニット4aと同様の処理であるため説明を省略する。 For example, as shown in FIG. 22, the function of the analysis unit 4a according to the above embodiment may be realized by an analysis device (functioning as a data processing device) 2c arranged in the upper layer of the PLC1. Since the processing of the learning phase of the model has a very high processing load and requires a long processing time, it can be assumed to be implemented externally according to the processing capability of the PLC unit. In addition, by providing an analysis function in the device of the upper layer, it is possible to obtain information from other PLCs, and it is possible to generate a more reliable model. The analysis device 2c has functions such as analysis of PLC-specific information, model generation, analysis, and analysis report creation. These functions are the same processing as those of the analysis unit 4a, so description thereof will be omitted.

また、上記実施形態では、基本ユニット3が全デバイスの運転記録データを収集していたが、他の拡張ユニット行ってもよい。たとえば、図22に示すように、拡張ユニットとしてレコーダユニット4cを設けてもよい。レコーダユニット4cはCPU41cと、メモリ42cと、通信部43cとを備える。メモリ42cには、上記実施形態で基本ユニット3に設けられていたリングバッファ44cと、運転記録記憶部45cとの記憶領域が設けられる。運転記録の収集については、上記実施形態の基本ユニット3と同様の処理であるため詳細な説明については省略する。 Also, in the above embodiment, the basic unit 3 collects the operation record data of all devices, but other expansion units may collect the operation record data. For example, as shown in FIG. 22, a recorder unit 4c may be provided as an expansion unit. The recorder unit 4c includes a CPU 41c, a memory 42c, and a communication section 43c. The memory 42c is provided with the storage areas of the ring buffer 44c provided in the basic unit 3 in the above embodiment and the driving record storage section 45c. Since the collection of driving records is the same processing as that of the basic unit 3 of the above-described embodiment, detailed description thereof will be omitted.

このように、本発明によれば、上記実施形態で説明した処理機能を実現する装置又はユニットは可能な範囲で変更することができるものであり、本発明はそれらの変形を包括するものである。上記変形例では、基本ユニット3とは別に運転記録データを収集するレコーダユニット4cを設ける例を説明したが、当該ユニットには収集機能および通信機能を設けて、保存先についてはネットワークを介して接続されたデータベースとしてもよい。これにより、より大容量のデータを保存することができ、トリガ発生時よりもかなり遡った解析を行うことができるとともに、他のPLCシステムのデータも利用することが可能となる。 As described above, according to the present invention, the devices or units that implement the processing functions described in the above embodiments can be changed within the possible range, and the present invention encompasses those modifications. . In the above modification, an example was described in which the recorder unit 4c for collecting driving record data was provided separately from the basic unit 3. However, this unit is provided with a collection function and a communication function, and the storage destination is connected via a network. It is good also as the database which carried out. As a result, a larger amount of data can be stored, and analysis can be performed much earlier than when the trigger was generated, and data from other PLC systems can also be used.

また、上記変形例では、処理機能を基本ユニット3とは別のユニットで実現したり、外部装置で実現する例について説明したが、基本ユニット3にそれらの処理機能を一体化する形態であってもよい。このような構成のメリットは、他のユニットや外部装置との通信処理を省略できるため通信による処理負荷を低減でき、PLC制御への影響を低減することができる点にある。なお、一体化する場合においての性能は基本ユニット3の性能に依存することになるため、基本ユニット3の高性能化が必要となる。 Further, in the above modified example, an example in which the processing functions are realized by a unit separate from the basic unit 3 or by an external device has been described, but there is a form in which these processing functions are integrated into the basic unit 3. good too. An advantage of such a configuration is that communication processing with other units and external devices can be omitted, so the processing load due to communication can be reduced, and the influence on PLC control can be reduced. Since the performance in the case of integration depends on the performance of the basic unit 3, it is necessary to improve the performance of the basic unit 3. FIG.

<まとめ>
[観点1]
本発明は、分析装置であって、ユーザプログラムを繰り返し実行する実行エンジンと、前記ユーザプログラムの実行によって収集される、時系列の複数のデバイス値を含む運転記録データを取得する取得手段と、取得された正常時の前記運転記録データの学習に基づきデバイス毎の分析パラメータを含むモデルを生成するモデル生成手段と、取得された分析対象の前記運転記録データについて、前記モデルに従って正常条件を満たさない非正常デバイスを分析する分析手段と、前記非正常デバイスとして検知した各デバイスの分析結果に基づき、前記分析パラメータに応じた表現を含む分析レポートを生成するレポート生成手段とを備える。本実施形態によれば、運転記録データの分析結果に従って、異常の要因を容易に識別可能なレポートを提供することができる。また、煩雑なユーザ操作を必要とすることなく異常の要因を容易に識別可能なレポートを提供することができる。
<Summary>
[Viewpoint 1]
The present invention is an analysis apparatus comprising: an execution engine that repeatedly executes a user program; an acquisition means that acquires drive record data including a plurality of time-series device values collected by executing the user program; model generation means for generating a model including analysis parameters for each device based on the learning of the normal driving record data; The apparatus includes analysis means for analyzing normal devices, and report generation means for generating an analysis report including expressions corresponding to the analysis parameters based on analysis results of each device detected as the abnormal device. According to this embodiment, it is possible to provide a report that allows easy identification of the cause of the abnormality, according to the analysis result of the driving record data. In addition, it is possible to provide a report that can easily identify the cause of the abnormality without requiring complicated user operations.

[観点2]
上記実施形態において、前記分析パラメータに応じた表現は、該分析パラメータに応じて分析結果を示す、自然言語での表現および図形での表現の少なくとも1つを含む。本実施形態によれば、自然言語による異常内容の表現により、自然言語が人同士の会話と同様の方法であるため、ユーザは新しく覚えることが少なくなり、専門的な知識を必要とすることなく異常内容を容易に解析できる。一方、図形による異常内容の表現により、視覚的に理解でき、どのような異常だったか、タイミングや異常度合いなどの詳細を知ることができる。
[Viewpoint 2]
In the above embodiment, the expression according to the analysis parameter includes at least one of a natural language expression and a graphical representation indicating the analysis result according to the analysis parameter. According to this embodiment, since the abnormal content is expressed in natural language, the natural language is the same method as a conversation between people, so the user does not have to learn anything new, and does not require specialized knowledge. Abnormal content can be easily analyzed. On the other hand, the graphical representation of the content of the anomaly makes it possible to visually understand it, and to know details such as what kind of anomaly occurred, the timing, and the degree of the anomaly.

[観点3]
上記実施形態において、前記自然言語での表現および前記図形での表現のそれぞれは、異常内容に応じたフォーマットが予め定義され、前記レポート生成手段は、デバイス毎の異常内容に応じて前記フォーマットを選択して前記分析パラメータに応じた表現を生成する。本実施形態によれば、分析コメントにおける自然言語による表現や、図形による表現を、予め保持しているデータベースを用いて自動で作成できるため、オペレータによる煩雑な操作を必要とすることなく実現することができる。
[Viewpoint 3]
In the above-described embodiment, each of the expression in natural language and the expression in graphic has a predefined format corresponding to the content of the abnormality, and the report generation means selects the format in accordance with the content of the abnormality for each device. to generate an expression according to the analysis parameters. According to this embodiment, expressions in natural language and graphical expressions in analysis comments can be automatically created using a pre-stored database, so that complex operations by the operator are not required. can be done.

[観点4]
上記実施形態において、前記レポート生成手段は、前記異常内容に応じたフォーマットに、前記分析結果に基づく自然言語又は図形を選択して埋め込むことにより前記自然言語の表現を生成する。本実施液体によれば、異常内容に応じたフォーマットに自然言語や図形を埋め込むなどの簡易な処理によって上記実施形態と同様の効果を得ることができる。
[Viewpoint 4]
In the above embodiment, the report generation means generates the natural language expression by selecting and embedding the natural language or graphics based on the analysis result in a format corresponding to the content of the abnormality. According to the liquid of this embodiment, it is possible to obtain the same effects as those of the above embodiments by simple processing such as embedding a natural language or graphics in a format corresponding to the content of the abnormality.

[観点5]
上記実施形態において、前記図形での表現には、正常時のデバイスの波形と、非正常デバイスとして検知された波形とが対比可能に含まれる。本実施形態によれば、正常時の動作と分析対象の動作とを対比して確認することができ、いつもと違う動作をより容易に把握することができる。
[Viewpoint 5]
In the above-described embodiment, the graphical representation includes waveforms of a normal device and waveforms detected as an abnormal device so that they can be compared. According to the present embodiment, it is possible to compare and confirm normal behavior and behavior to be analyzed, and to more easily grasp unusual behavior.

[観点6]
上記実施形態において、前記非正常デバイスとして検知された波形には、異常箇所が強調表示される。本実施形態によれば、検知された波形の何れの位置で異常が発生しているかを容易に確認することができる。
[Viewpoint 6]
In the above embodiment, the abnormal portion is highlighted in the waveform detected as the abnormal device. According to this embodiment, it is possible to easily confirm at which position in the detected waveform an abnormality occurs.

[観点7]
上記実施形態において、前記モデル生成手段は、各デバイスの前記時系列の複数のデバイス値から、各デバイスを変化パターンを示す複数の類型の何れかにそれぞれ分類し、分類された類型に従って前記分析手段で非正常デバイスを検知する際に用いる前記分析パラメータを決定する。本実施形態によれば、デバイスの変化パターンの類型ごとに適切な分析を行うことができ、より正確な分析結果を得ることができる。
[Viewpoint 7]
In the above embodiment, the model generation means classifies each device into one of a plurality of types indicating change patterns from the plurality of time-series device values of each device, and the analysis means according to the classified types. determine the analysis parameters to be used in detecting abnormal devices. According to this embodiment, appropriate analysis can be performed for each type of device change pattern, and more accurate analysis results can be obtained.

[観点8]
上記実施形態において、前記分析パラメータには、デバイス値のONの時間、OFFの時間、立ち上がりのタイミング、立ち下がりのタイミング、ONの回数、OFFの回数、および定常値の少なくとも1つが含まれる。本実施形態によれば、種々の変化パターンに対応して分析することが可能であり、より正確な分析結果を得ることができる。
[Viewpoint 8]
In the above embodiment, the analysis parameter includes at least one of device value ON time, OFF time, rise timing, fall timing, ON count, OFF count, and steady state value. According to this embodiment, it is possible to perform analysis corresponding to various change patterns, and more accurate analysis results can be obtained.

[観点9]
上記実施形態において、前記レポート生成手段から出力された前記分析レポートの内容を示す結果表示画面の画面情報を外部装置へ送信する送信手段をさらに備え、前記外部装置では、前記結果表示画面が操作可能に表示部に表示される。本実施形態によれば、分析レポートを外部装置へ送信することができ、たとえばより高性能のPC等で分析レポートを解析することができ、より詳細な分析やよりリッチな操作体系を有する結果表示画面の表示を可能とする。
[Viewpoint 9]
In the above embodiment, the method further comprises transmission means for transmitting screen information of a result display screen showing the content of the analysis report output from the report generation means to an external device, wherein the result display screen can be operated on the external device. is displayed on the display. According to this embodiment, the analysis report can be transmitted to an external device, for example, the analysis report can be analyzed by a higher-performance PC or the like, and the results can be displayed with more detailed analysis and a richer operation system. Enable screen display.

[観点10]
上記実施形態において、前記結果表示画面には、さらに、前記分析レポートの表示項目を絞るための条件を指定可能なフィルタ設定領域が含まれる。本実施形態によれば、不要な表示項目を結果表示画面から除外することができ、より容易に異常の解析を行うことができる。
[Viewpoint 10]
In the above embodiment, the result display screen further includes a filter setting area in which conditions for narrowing down the display items of the analysis report can be specified. According to this embodiment, unnecessary display items can be excluded from the result display screen, and abnormality can be analyzed more easily.

[観点11]
上記実施形態において、前記フィルタ設定領域では、デバイスの制御サイクルの指定、属性情報の指定、および、イベント、エラーの指定の少なくとも1つによってフィルタが指定可能である。本実施形態によれば、オペレータが表示項目を絞る際に種々の選択肢を提供することができる。
[Viewpoint 11]
In the above embodiment, in the filter setting area, a filter can be specified by at least one of device control cycle specification, attribute information specification, and event/error specification. According to this embodiment, various options can be provided when the operator narrows down the display items.

[観点12]
上記実施形態において、前記ユーザプログラムの編集画面を表示する表示手段をさらに備え、前記編集画面では、該編集画面の時間軸に同期した前記分析レポートが表示可能である。本実施形態によれば、ユーザプログラムと連携して分析レポートを表示することができ、ユーザプログラムも加味した分析を行うことができる。
[Viewpoint 12]
In the above embodiment, display means for displaying an edit screen of the user program is further provided, and the analysis report synchronized with the time axis of the edit screen can be displayed on the edit screen. According to this embodiment, an analysis report can be displayed in cooperation with a user program, and analysis can be performed in consideration of the user program.

[観点13]
上記実施形態において、前記分析レポートの生成要求を受け付ける受付手段と、前記レポート生成手段によって前記生成要求に応じて前記分析レポートが生成されると、要求元に分析レポートの生成が完了した旨を通知する通知手段とをさらに備える。本実施形態によれば、分析レポートの生成が完了した旨をオペレータに通知することができ、よりユーザフレンドリな操作体系を実現することができる。
[Viewpoint 13]
In the above embodiment, when the analysis report is generated by the reception means for receiving the analysis report generation request and the report generation means in response to the generation request, the requester is notified that the analysis report generation has been completed. and notification means for performing. According to this embodiment, the operator can be notified that the generation of the analysis report has been completed, and a more user-friendly operation system can be realized.

[観点14]
上記実施形態において、1以上の制御サイクルの定義を設定する設定手段をさらに備え、前記モデル生成手段は、設定された前記1以上の制御サイクルの定義に基づいて、取得された前記運転記録データの学習を行い、前記レポート生成手段は、前記非正常デバイスとして検知した各デバイスの分析結果を、設定された前記1以上の制御サイクルの定義に従って各デバイスの分析結果を時間軸上に同期させて表示する分析レポートを生成する。本実施形態によれば、制御サイクルに従って、学習フェーズ及び推定フェーズの処理を行うことができ、処理を簡略することができるとともに、正確な分析や同期を行うことができる。
[Viewpoint 14]
In the above embodiment, further comprising setting means for setting definitions of one or more control cycles, the model generating means, based on the set definitions of the one or more control cycles, of the acquired driving record data. After learning, the report generating means synchronizes and displays the analysis results of each device detected as the abnormal device on the time axis according to the one or more set control cycle definitions. Generate analysis reports that According to this embodiment, the processing of the learning phase and the estimation phase can be performed according to the control cycle, the processing can be simplified, and accurate analysis and synchronization can be performed.

[観点15]
上記実施形態において、前記分析手段は、前記設定手段によって制御サイクルが定義されていない場合において、制御サイクルのサイクルパターンを有していないデバイスを分析対象として、前記運転記録データを分析する。本実施形態によれば、オペレータに対してサイクルパターンの設定操作を要求することなく分析レポートを容易に出力することができる。従って、オペレータはサイクルパターンを設定することなく、お試しで分析レポートを生成することもでき、生成された分析レポートを解析してより詳細に分析すべくサイクルパターンを設定するなどの解析手法も行うことができる。
[Viewpoint 15]
In the above-described embodiment, the analyzing means analyzes the driving record data for a device that does not have a cycle pattern of a control cycle when the control cycle is not defined by the setting means. According to this embodiment, it is possible to easily output an analysis report without requiring the operator to perform a cycle pattern setting operation. Therefore, the operator can generate a trial analysis report without setting the cycle pattern, and also perform analysis methods such as analyzing the generated analysis report and setting the cycle pattern for more detailed analysis. be able to.

[観点16]
上記実施形態において、前記レポート生成手段は、制御サイクルのサイクルパターンを有していないデバイスの分析結果を分析レポートとして生成し、
前記分析レポートには、制御サイクルが設定されていない旨と、前記設定手段によって制御サイクルの設定を促すメッセージが含まれる。本実施形態によれば、オペレータがサイクル設定を忘れている場合などに、サイクル設定を促すことができ、よりユーザフレンドリな操作体系を提供することができる。
[Viewpoint 16]
In the above embodiment, the report generation means generates an analysis report of the analysis result of a device that does not have a control cycle cycle pattern,
The analysis report includes a message to the effect that the control cycle has not been set and a message prompting the setting means to set the control cycle. According to this embodiment, when the operator forgets to set the cycle, it is possible to prompt the operator to set the cycle, thereby providing a more user-friendly operation system.

[観点17]
本発明は、データ処理装置とプログラマブルロジックコントローラとが通信可能な分析システムであって、ユーザプログラムを繰り返し実行する実行エンジンと、前記ユーザプログラムの実行によって収集される、時系列の複数のデバイス値を含む運転記録データを取得する取得手段と、取得された正常時の前記運転記録データの学習に基づきデバイス毎のモデルを生成するモデル生成手段と、取得された分析対象の前記運転記録データについて、前記モデルに従って正常条件を満たさない非正常デバイスを分析する分析手段と、前記非正常デバイスとして検知した各デバイスの分析結果を、時間軸上で同期させて表示する分析レポートを生成するレポート生成手段とを備える。本実施形態によれば、運転記録データの分析結果に従って、異常の要因を容易に識別可能なレポートを提供することができる。また、煩雑なユーザ操作を必要とすることなく異常の要因を容易に識別可能なレポートを提供することができる。
[Viewpoint 17]
The present invention is an analysis system in which a data processing device and a programmable logic controller can communicate, and includes an execution engine that repeatedly executes a user program, and a plurality of time-series device values collected by executing the user program. Acquisition means for acquiring driving record data including the analysis means for analyzing abnormal devices that do not satisfy normal conditions according to a model; and report generation means for generating an analysis report that displays the analysis results of each device detected as abnormal devices in synchronization on the time axis. Prepare. According to this embodiment, it is possible to provide a report that allows easy identification of the cause of the abnormality, according to the analysis result of the driving record data. In addition, it is possible to provide a report that can easily identify the cause of the abnormality without requiring complicated user operations.

[観点18]
上記実施形において、前記取得手段、前記モデル生成手段、分析手段、および前記レポート生成手段の少なくとも1つは前記データ処理装置に設けられる。本実施形態によれば、PLCの開発コストや、データ処理装置の性能等に応じて、本発明を実現するための構成をフレキシブルに適切なコンポーネントへ組み込むことが可能となり、システム設計の自由度を向上することができる。
[Viewpoint 18]
In the above embodiment, at least one of the acquisition means, the model generation means, the analysis means, and the report generation means is provided in the data processing device. According to this embodiment, the configuration for realizing the present invention can be flexibly incorporated into an appropriate component according to the development cost of the PLC, the performance of the data processing device, etc., and the degree of freedom in system design is increased. can be improved.

[観点19]
上記実施形態において、前記プログラマブルロジックコントローラは、
前記実行エンジンを備えるCPUユニットと、前記取得手段を実現する前記プログラマブルロジックコントローラに設けられるレコーダユニットとを備え、前記データ処理装置は、前記モデル生成手段、分析手段、および前記レポート生成手段を備える。本実施形態によれば、PLCの開発コストや、データ処理装置の性能等に応じて、本発明を実現するための構成をフレキシブルに適切なコンポーネントへ組み込むことが可能となり、システム設計の自由度を向上することができる。
[Viewpoint 19]
In the above embodiment, the programmable logic controller
A CPU unit comprising the execution engine, and a recorder unit provided in the programmable logic controller that implements the acquisition means, wherein the data processing device comprises the model generation means, the analysis means, and the report generation means. According to this embodiment, the configuration for realizing the present invention can be flexibly incorporated into an appropriate component according to the development cost of the PLC, the performance of the data processing device, etc., and the degree of freedom in system design is increased. can be improved.

発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。 The invention is not limited to the above embodiments, and various modifications and changes are possible within the scope of the invention.

Claims (20)

分析装置であって、
ユーザプログラムを繰り返し実行する実行エンジンと、
前記ユーザプログラムの実行によって収集される、時系列の複数のデバイス値を含む運転記録データを取得する取得手段と、
取得された正常時の前記運転記録データの学習に基づきデバイス毎の分析パラメータを含むモデルを生成するモデル生成手段と、
取得された分析対象の前記運転記録データについて、前記モデルに従って正常条件を満たさない非正常デバイスを分析する分析手段と、
前記非正常デバイスとして検知した各デバイスの分析結果に基づき、前記分析パラメータに応じた表現を含む分析レポートを生成するレポート生成手段と
を備えることを特徴とする分析装置。
an analytical device,
an execution engine that repeatedly executes a user program;
Acquisition means for acquiring drive record data including a plurality of time-series device values collected by executing the user program;
model generation means for generating a model including analysis parameters for each device based on learning of the acquired driving record data during normal operation;
analysis means for analyzing the acquired drive record data to be analyzed for abnormal devices that do not satisfy normal conditions according to the model;
and report generating means for generating an analysis report including an expression corresponding to the analysis parameter based on the analysis result of each device detected as the abnormal device.
前記分析パラメータに応じた表現は、該分析パラメータに応じて分析結果を示す、自然言語での表現および図形での表現の少なくとも1つを含むことを特徴とする請求項1に記載の分析装置。 2. The analysis apparatus according to claim 1, wherein the expression corresponding to the analysis parameter includes at least one of a natural language expression and a graphic expression indicating the analysis result according to the analysis parameter. 前記自然言語での表現および前記図形での表現のそれぞれは、異常内容に応じたフォーマットが予め定義され、
前記レポート生成手段は、デバイス毎の異常内容に応じて前記フォーマットを選択して前記分析パラメータに応じた表現を生成することを特徴とする請求項2に記載の分析装置。
Each of the expression in the natural language and the expression in the graphic has a predefined format corresponding to the content of the abnormality,
3. The analysis apparatus according to claim 2, wherein said report generation means selects said format according to the content of abnormality for each device and generates an expression according to said analysis parameter.
前記レポート生成手段は、前記異常内容に応じたフォーマットに、前記分析結果に基づく自然言語又は図形を選択して埋め込むことにより前記自然言語の表現を生成することを特徴とする請求項3に記載の分析装置。 4. The report generation means according to claim 3, wherein said report generating means generates said natural language expression by selecting and embedding a natural language or graphic based on said analysis result in a format corresponding to said abnormality content. Analysis equipment. 前記図形での表現には、正常時のデバイスの波形と、非正常デバイスとして検知された波形とが対比可能に含まれることを特徴とする請求項2乃至4の何れか1項に記載の分析装置。 5. The analysis according to any one of claims 2 to 4, characterized in that the graphical representation includes waveforms of the device during normal operation and waveforms detected as abnormal devices in a comparable manner. Device. 前記非正常デバイスとして検知された波形には、異常箇所が強調表示されることを特徴とする請求項5に記載の分析装置。 6. The analyzer according to claim 5, wherein an abnormal portion is highlighted in the waveform detected as the abnormal device. 前記モデル生成手段は、
各デバイスの前記時系列の複数のデバイス値から、各デバイスを変化パターンを示す複数の類型の何れかにそれぞれ分類し、
分類された類型に従って前記分析手段で非正常デバイスを検知する際に用いる前記分析パラメータを決定することを特徴とする請求項1乃至6の何れか1項に記載の分析装置。
The model generation means is
classifying each device into one of a plurality of types indicating change patterns from the plurality of time-series device values of each device;
7. The analyzer according to any one of claims 1 to 6, wherein the analysis parameters used when the abnormal device is detected by the analysis means are determined according to the classified type.
前記分析パラメータには、デバイス値のONの時間、OFFの時間、立ち上がりのタイミング、立ち下がりのタイミング、ONの回数、OFFの回数、および定常値の少なくとも1つが含まれることを特徴とする請求項7に記載の分析装置。 3. The analysis parameters include at least one of ON time, OFF time, rise timing, fall timing, ON count, OFF count, and steady state value of the device value. 8. The analyzer according to 7. 前記レポート生成手段から出力された前記分析レポートの内容を示す結果表示画面の画面情報を外部装置へ送信する送信手段をさらに備え、
前記外部装置では、前記結果表示画面が操作可能に表示部に表示されることを特徴とする請求項1乃至8の何れか1項に記載の分析装置。
further comprising transmission means for transmitting screen information of a result display screen showing the content of the analysis report output from the report generation means to an external device;
9. The analyzer according to any one of claims 1 to 8, wherein the result display screen is operably displayed on a display unit of the external device.
前記結果表示画面には、さらに、前記分析レポートの表示項目を絞るための条件を指定可能なフィルタ設定領域が含まれることを特徴とする請求項9に記載の分析装置。 10. The analyzer according to claim 9, wherein the result display screen further includes a filter setting area in which conditions for narrowing down the display items of the analysis report can be specified. 前記フィルタ設定領域では、デバイスの制御サイクルの指定、属性情報の指定、および、イベント、エラーの指定の少なくとも1つによってフィルタが指定可能であることを特徴とする請求項10に記載の分析装置。 11. The analyzer according to claim 10, wherein in said filter setting area, a filter can be specified by at least one of device control cycle specification, attribute information specification, and event/error specification. 前記ユーザプログラムの編集画面を表示する表示手段をさらに備え、
前記編集画面では、該編集画面の時間軸に同期した前記分析レポートが表示可能であることを特徴とする請求項10又は11に記載の分析装置。
further comprising display means for displaying an edit screen of the user program,
12. The analyzer according to claim 10, wherein the analysis report can be displayed on the edit screen in synchronization with the time axis of the edit screen.
前記分析レポートの生成要求を受け付ける受付手段と、
前記レポート生成手段によって前記生成要求に応じて前記分析レポートが生成されると、要求元に分析レポートの生成が完了した旨を通知する通知手段と
をさらに備えることを特徴とする請求項12に記載の分析装置。
receiving means for receiving a request for generating the analysis report;
13. The apparatus according to claim 12, further comprising notifying means for notifying a source of the request that the analysis report has been generated when the analysis report is generated by the report generating means in response to the generation request. analyzer.
1以上の制御サイクルの定義を設定する設定手段をさらに備え、
前記モデル生成手段は、設定された前記1以上の制御サイクルの定義に基づいて、取得された前記運転記録データの学習を行い、
前記レポート生成手段は、前記非正常デバイスとして検知した各デバイスの分析結果を、設定された前記1以上の制御サイクルの定義に従って各デバイスの分析結果を時間軸上に同期させて表示する分析レポートを生成することを特徴とする請求項1乃至13の何れか1項に記載の分析装置。
Further comprising setting means for setting one or more control cycle definitions,
The model generation means learns the acquired driving record data based on the set definition of the one or more control cycles,
The report generating means generates an analysis report displaying the analysis results of each device detected as the abnormal device in synchronization with the time axis according to the one or more set control cycle definitions. 14. The analysis device according to any one of claims 1 to 13, wherein the analysis device generates a
前記分析手段は、前記設定手段によって制御サイクルが定義されていない場合において、制御サイクルのサイクルパターンを有していないデバイスを分析対象として、前記運転記録データを分析することを特徴とする請求項14に記載の分析装置。 14. When the control cycle is not defined by the setting means, the analysis means analyzes the operation record data for a device that does not have a cycle pattern of the control cycle as an analysis target. The analyzer described in . 前記レポート生成手段は、制御サイクルのサイクルパターンを有していないデバイスの分析結果を分析レポートとして生成し、
前記分析レポートには、制御サイクルが設定されていない旨と、前記設定手段によって制御サイクルの設定を促すメッセージが含まれることを特徴とする請求項15に記載の分析装置。
The report generation means generates an analysis report of an analysis result of a device that does not have a control cycle cycle pattern,
16. The analyzer according to claim 15, wherein said analysis report includes a message to the effect that no control cycle has been set and a message prompting said setting means to set a control cycle.
データ処理装置とプログラマブルロジックコントローラとが通信可能な分析システムであって、
ユーザプログラムを繰り返し実行する実行エンジンと、
前記ユーザプログラムの実行によって収集される、時系列の複数のデバイス値を含む運転記録データを取得する取得手段と、
取得された正常時の前記運転記録データの学習に基づきデバイス毎のモデルを生成するモデル生成手段と、
取得された分析対象の前記運転記録データについて、前記モデルに従って正常条件を満たさない非正常デバイスを分析する分析手段と、
前記非正常デバイスとして検知した各デバイスの分析結果を、時間軸上で同期させて表示する分析レポートを生成するレポート生成手段と
を備えることを特徴とする分析システム。
An analysis system in which a data processing device and a programmable logic controller can communicate,
an execution engine that repeatedly executes a user program;
Acquisition means for acquiring drive record data including a plurality of time-series device values collected by executing the user program;
a model generating means for generating a model for each device based on learning of the acquired driving record data in a normal state;
analysis means for analyzing the acquired drive record data to be analyzed for abnormal devices that do not satisfy normal conditions according to the model;
and report generation means for generating an analysis report displaying the analysis results of each device detected as the abnormal device in synchronization on the time axis.
前記取得手段、前記モデル生成手段、分析手段、および前記レポート生成手段の少なくとも1つは前記データ処理装置に設けられることを特徴とする請求項17に記載の分析システム。 18. The analysis system according to claim 17, wherein at least one of said acquisition means, said model generation means, analysis means, and said report generation means is provided in said data processing device. 前記プログラマブルロジックコントローラは、
前記実行エンジンを備えるCPUユニットと、
前記取得手段を実現する前記プログラマブルロジックコントローラに設けられるレコーダユニットと
を備え、
前記データ処理装置は、
前記モデル生成手段、分析手段、および前記レポート生成手段を備えることを特徴とする請求項17に記載の分析システム。
The programmable logic controller is
a CPU unit comprising the execution engine;
A recorder unit provided in the programmable logic controller that realizes the acquisition means,
The data processing device is
18. The analysis system according to claim 17, comprising said model generation means, analysis means, and said report generation means.
データ処理装置とプログラマブルロジックコントローラとが通信可能なシステムの制御方法であって、
ユーザプログラムを繰り返し実行する工程と、
前記ユーザプログラムの実行によって収集される、時系列の複数のデバイス値を含む運転記録データを取得する取得工程と、
取得された正常時の前記運転記録データの学習に基づきデバイス毎のモデルを生成するモデル生成工程と、
取得された分析対象の前記運転記録データについて、前記モデルに従って正常条件を満たさない非正常デバイスを分析する分析工程と、
前記非正常デバイスとして検知した各デバイスの分析結果を、時間軸上で同期させて表示する分析レポートを生成するレポート生成工程と
を含むことを特徴とするシステムの制御方法。
A control method for a system in which a data processing device and a programmable logic controller can communicate,
repeatedly executing a user program;
an acquisition step of acquiring driving record data including a plurality of time-series device values collected by executing the user program;
a model generation step of generating a model for each device based on learning of the acquired normal driving record data;
an analysis step of analyzing the acquired drive record data to be analyzed for abnormal devices that do not satisfy normal conditions according to the model;
and a report generating step of generating an analysis report displaying the analysis results of each device detected as the abnormal device in synchronization on the time axis.
JP2021062982A 2021-04-01 2021-04-01 Analysis device, analysis system, and method for controlling the same Pending JP2022158226A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021062982A JP2022158226A (en) 2021-04-01 2021-04-01 Analysis device, analysis system, and method for controlling the same
CN202210305465.2A CN115202280A (en) 2021-04-01 2022-03-25 Analysis device, analysis system, and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021062982A JP2022158226A (en) 2021-04-01 2021-04-01 Analysis device, analysis system, and method for controlling the same

Publications (1)

Publication Number Publication Date
JP2022158226A true JP2022158226A (en) 2022-10-17

Family

ID=83574718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021062982A Pending JP2022158226A (en) 2021-04-01 2021-04-01 Analysis device, analysis system, and method for controlling the same

Country Status (2)

Country Link
JP (1) JP2022158226A (en)
CN (1) CN115202280A (en)

Also Published As

Publication number Publication date
CN115202280A (en) 2022-10-18

Similar Documents

Publication Publication Date Title
US11009862B2 (en) System and method for monitoring manufacturing
CN107436594B (en) Automated historian configuration method using controller-based meta-attributes
US20170351226A1 (en) Industrial machine diagnosis and maintenance using a cloud platform
US11409257B2 (en) Setting device that sets a programmable logic controller and PLC system that collects control data and a dashboard for displaying control data
JP7450471B2 (en) Programmable logic controller and PLC system
JP2020013526A (en) Programmable logic controller and main unit
US10019346B2 (en) Generating software test script from video
JP4381436B2 (en) Scenario generation device and scenario generation program
JP2020013527A (en) Programmable logic controller and program formation assistance device
KR102543064B1 (en) System for providing manufacturing environment monitoring service based on robotic process automation
JP2020021214A (en) Data management device, data management method, and data management program
JP2022158228A (en) Monitoring device and programmable logic controller system
KR101566358B1 (en) System and method of alarming uncommon state of automatic process
CN113919813A (en) Production line dynamic value flow analysis method and system based on production line dynamic value flow graph
JP2022158226A (en) Analysis device, analysis system, and method for controlling the same
JP2022158227A (en) Analysis device, analysis system, and method for controlling the same
JP2022158225A (en) Analysis device, control method thereof, and analysis system
JP2019159868A (en) Control system, controller and display device
EP3786750B1 (en) Data collection system, data collection method, and program
JP7450470B2 (en) Setting device and PLC system
JP6996887B2 (en) Programmable logic controller system and data acquisition device
JP2023110263A (en) Program and programmable logic controller
JP2022158229A (en) Programmable logic controller system
US11709478B2 (en) Production system, production method, and information storage medium
JP2022158230A (en) programmable logic controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240311