JP7450471B2 - Programmable logic controller and PLC system - Google Patents

Programmable logic controller and PLC system Download PDF

Info

Publication number
JP7450471B2
JP7450471B2 JP2020111877A JP2020111877A JP7450471B2 JP 7450471 B2 JP7450471 B2 JP 7450471B2 JP 2020111877 A JP2020111877 A JP 2020111877A JP 2020111877 A JP2020111877 A JP 2020111877A JP 7450471 B2 JP7450471 B2 JP 7450471B2
Authority
JP
Japan
Prior art keywords
data
dashboard
setting
unit
display
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020111877A
Other languages
Japanese (ja)
Other versions
JP2021060966A (en
Inventor
知伸 北川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Publication of JP2021060966A publication Critical patent/JP2021060966A/en
Application granted granted Critical
Publication of JP7450471B2 publication Critical patent/JP7450471B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Description

本発明はプログラマブルロジックコントローラおよびPLCシステムに関する。 The present invention relates to programmable logic controllers and PLC systems.

プログラマブル・ロジック・コントローラ(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). PLCs control various expansion units and controlled devices by executing user programs such as ladder programs created by programmers.

特許第5661222号公報Patent No. 5661222 特開2018-097662号公報Japanese Patent Application Publication No. 2018-097662

産業機械は消耗部品を有しているため、消耗部品が劣化すると、製品の歩留まりが低下する。したがって、消耗部品を適切に交換することが求められる。たとえば、PLCが保持している制御データや制御結果などを収集して表示できれば、産業機械の動作の監視を任されている現場担当者にとって、エラーの発見やエラーの未然防止に役立つであろう。 Industrial machinery has consumable parts, and when the consumable parts deteriorate, the yield of products decreases. Therefore, it is required to appropriately replace consumable parts. For example, if the control data and control results held by PLCs could be collected and displayed, it would be useful for on-site personnel tasked with monitoring the operation of industrial machinery to discover and prevent errors. .

ところで、制御プログラムを作成するプログラマーと、産業機械が設置された工場内で産業機械を運転および監視する担当者(現場担当者)とは、それぞれ異なる社内組織に属しているため、意思の疎通を図ることは簡単ではなかった。たとえば、現場担当者が、見たいと望む制御データを変更したり、データを表示するグラフなどを変更したりしたいと希望しても、現場担当者は制御プログラムを変更することができない。そのため、社内または社外のプログラマーに要望を伝えて、制御プログラムの改修を待たねばならない。ときには、改修予算の確保など、様々な作業が発生し、要望が発生してから改修が完成するまでに多くの日数が経過してしまう。したがって、現場担当者のようにプログラミングの知識が無くても、表示データを収集するための収集プログラムや表示データを表示するためのUI(ユーザインタフェース)であるダッシュボードを簡単に改修できたら便利であろう。これは、制御プログラムを作成するプログラマーにとっても便利かもしれない。 By the way, the programmer who creates the control program and the person in charge of operating and monitoring the industrial machinery in the factory where the industrial machinery is installed (site personnel) belong to different internal organizations, so it is difficult to communicate with them. It wasn't easy to figure it out. For example, even if a site person in charge wants to change the control data that he or she wants to see or change the graph that displays the data, the site person in charge cannot change the control program. Therefore, it is necessary to convey the request to an in-house or external programmer and wait for the control program to be modified. Sometimes, various tasks such as securing a renovation budget occur, and many days pass from the time a request is made until the renovation is completed. Therefore, it would be convenient if even site personnel without programming knowledge could easily modify the collection program for collecting display data and the dashboard, which is the UI (user interface) for displaying display data. Probably. This may also be useful to programmers writing control programs.

そこで、本発明は、PLCが保持している制御データを収集するデータ活用プログラムとそれを表示するダッシュボードとを作成する作業を容易化することを目的とする。 Therefore, an object of the present invention is to facilitate the work of creating a data utilization program that collects control data held by a PLC and a dashboard that displays it.

本発明は、たとえば、
制御プログラムを実行する第一実行手段と、
前記制御プログラムにしたがって前記第一実行手段がアクセスする記憶領域であるデバイスまたは変数である記憶手段と、
収集対象として指定された時系列データを前記記憶手段から収集する収集手段と、
前記記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段と、
前記データ活用プログラムの実行結果を表示するダッシュボードのソースコードまたは画像データを含むソースデータを生成する生成手段と、
前記ソースデータを外部コンピュータに出力する出力手段と、
を有するプログラマブルロジックコントローラであって、
収集対象の時系列データを前記データ活用プログラムにしたがって前記所定のデータ処理を実行することにより求められるデータである表示対象データをダッシュボードにより表示するために、当該ダッシュボードのテンプレートと、当該ダッシュボードに紐づけられている前記データ活用プログラムのテンプレートとのセットを含む設定データを編集する編集手段を有し、
前記生成手段は、前記設定データに基づき前記ダッシュボードのソースデータを生成し、
複数のダッシュボードのうち一つのダッシュボードの選択と、前記収集手段による収集対象の時系列データの指定とを受け付けるための設定画面を前記外部コンピュータに提供した際に、前記編集手段は、前記設定画面を通じて編集対象となる前記ダッシュボードの指定を受け付けることを特徴とするプログラマブルロジックコントローラを提供する。
The present invention includes, for example,
a first execution means for executing the control program;
storage means that is a device or variable that is a storage area accessed by the first execution means according to the control program;
a collection means for collecting time-series data specified as a collection target from the storage means;
a second execution unit that executes predetermined data processing on time series data collected from the storage unit at different timings according to a data utilization program;
a generation unit that generates source data including source code or image data of a dashboard that displays execution results of the data utilization program;
output means for outputting the source data to an external computer;
A programmable logic controller having:
In order to display data to be displayed, which is data obtained by performing the predetermined data processing on the time-series data to be collected according to the data utilization program, on a dashboard, a template for the dashboard, and the dashboard. and editing means for editing configuration data including a set with a template of the data utilization program linked to the data utilization program,
The generating means generates source data of the dashboard based on the setting data,
When the external computer is provided with a settings screen for accepting the selection of one dashboard from a plurality of dashboards and the designation of time-series data to be collected by the collection means, the editing means A programmable logic controller is provided, characterized in that the designation of the dashboard to be edited is accepted through a screen .

本発明によれば、PLCが保持している制御データを収集するでーたかつようプログラムとそれを表示するダッシュボードとを作成する作業が容易化される。 According to the present invention, the task of creating a program for collecting control data held by a PLC and a dashboard for displaying the program is facilitated.

PLCシステムを示す図Diagram showing PLC system PCを説明する図Diagram explaining a PC PCを説明する図Diagram explaining a PC PLCを説明する図Diagram explaining PLC データ活用ユニットを説明する図Diagram explaining data utilization unit アプリケーションの設定方法を示すフローチャートFlowchart showing how to configure the application アプリケーションの選択画面を説明する図Diagram explaining the application selection screen パラメータの設定画面を説明する図Diagram explaining the parameter setting screen ダッシュボードを説明する図Diagram explaining the dashboard データの収集と表示とを説明する図Diagram explaining data collection and display ダッシュボードの再設定を説明する図Diagram explaining dashboard reconfiguration PCにより実現される設定装置を説明する図Diagram explaining a setting device realized by a PC アプリケーションの設定方法を示すフローチャートFlowchart showing how to configure the application アプリケーションの設定画面を説明する図Diagram explaining the application settings screen 状態監視用のダッシュボード表示画面を説明する図Diagram explaining the dashboard display screen for status monitoring 設定用のダッシュボード表示画面を説明する図Diagram explaining the dashboard display screen for settings リアルタイム監視方法を示すフローチャートFlowchart showing real-time monitoring method データ活用ユニットにおける再設定方法を示すフローチャートFlowchart showing the resetting method in the data utilization unit 運転記録分析のダッシュボード表示画面を説明する図Diagram explaining the dashboard display screen for driving record analysis 運転記録分析方法を示すフローチャートFlowchart showing driving record analysis method 統合監視用のダッシュボード表示画面を説明する図Diagram explaining the dashboard display screen for integrated monitoring 統合監視方法を示すフローチャートFlowchart showing integrated monitoring method

以下、添付図面を参照して実施形態が詳しく説明される。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一または同様の構成には同一の参照番号が付され、重複した説明は省略される。同一または類似の要素を示す参照符号の末尾には小文字のアルファベットが付与されることがある。複数の要素に共通する事項が説明される場合、小文字のアルファベットが省略される。 Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the claimed invention, and not all combinations of features described in the embodiments are essential to the invention. Two or more features among the plurality of features described in the embodiments may be arbitrarily combined. In addition, the same or similar configurations are given the same reference numerals, and duplicate explanations will be omitted. Reference symbols indicating the same or similar elements may be suffixed with a lowercase letter. When explaining something common to multiple elements, lowercase letters are omitted.

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

図1は、本発明の実施の形態によるプログラマブル・ロジック・コントローラシステムの一構成例を示す概念図である。図1が示すように、このシステムは、ラダープログラムなどのユーザプログラムの編集を行うためのPC2aと、工場等に設置される各種制御装置を統括的に制御するためのPLC(プログラマブルロジックコントローラ)1とを備えている。PCはパーソナルコンピュータの略称である。ユーザプログラムは、ラダー言語やSFC(シーケンシャルファンクションチャート)などのフローチャート形式のモーションプログラムなどのグラフィカルプログラミング言語を用いて作成されてもよいし、C言語などの高級プログラミング言語を用いて作成されてもよい。以下では、説明の便宜上、ユーザプログラムはラダープログラムとする。PLC1は、CPUが内蔵された基本ユニット3と、1つないし複数の拡張ユニット4を備えている。基本ユニット3に対して1つないし複数の拡張ユニット4が着脱可能となっている。 FIG. 1 is a conceptual diagram showing a configuration example of a programmable logic controller system according to an embodiment of the present invention. As shown in Figure 1, this system includes a PC 2a for editing user programs such as ladder programs, and a PLC (programmable logic controller) 1 for comprehensively controlling various control devices installed in factories, etc. It is equipped with PC is an abbreviation for personal computer. The user program may be created using a graphical programming language such as a flowchart-style motion program such as a ladder language or 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, the user program is assumed to be a ladder program. The PLC 1 includes a basic unit 3 with a built-in CPU and one or more expansion units 4. One or more expansion units 4 can be attached to and detached from the basic unit 3.

基本ユニット3は、表示部5および操作部6を備えている。表示部5は、基本ユニット3に取り付けられている各拡張ユニット4の動作状況などを表示することができる。操作部6の操作内容に応じて表示部5は表示内容を切り替える。表示部5は、通常、PLC1内のデバイスの現在値(デバイス値)やPLC1内で生じたエラー情報などを表示する。デバイスとは、デバイス値(デバイスデータ)を格納するために設けられたメモリ上の領域を指す名称であり、デバイスメモリと呼ばれてもよい。デバイス値とは、入力機器からの入力状態、出力機器への出力状態およびユーザプログラム上で設定される内部リレー(補助リレー)、タイマー、カウンタ、データメモリ等の状態を示す情報である。デバイス値の型にはビット型とワード型がある。ビットデバイスは1ビットのデバイス値を記憶する。ワードデバイスは1ワードのデバイス値を記憶する。なお、以下で詳細に説明されるデータ活用プログラムの収集対象としては、デバイスだけでなく、変数が指定されてもよい。ただし、デバイスも変数も情報を記憶する記憶手段である。 The basic unit 3 includes a display section 5 and an operation section 6. The display section 5 can display the operating status of each expansion unit 4 attached to the basic unit 3. The display section 5 switches display contents according to the operation contents of the operation section 6. The display unit 5 normally displays current values (device values) of devices within the PLC 1, error information that has occurred within the PLC 1, and the like. A device is a name indicating an area on a memory provided for storing device values (device data), and may also be called a device memory. The device value is information indicating the input state from the input device, the output state to the output device, and the state of internal relays (auxiliary relays), timers, counters, data memories, etc. set on the user program. There are two types of device values: bit type and word type. A bit device stores a 1-bit device value. A word device stores one word of device value. Note that not only devices but also variables may be specified as collection targets of the data utilization program described in detail below. However, both devices and variables are storage means for storing information.

拡張ユニット4は、PLC1の機能を拡張するために用意されている。各拡張ユニット4には、その拡張ユニット4の機能に対応するフィールドデバイス(被制御装置)10が接続されることがあり、これにより、各フィールドデバイス10が拡張ユニット4を介して基本ユニット3に接続される。フィールドデバイス10は、センサやカメラなどの入力機器であってもよいし、アクチュエータなどの出力機器であってもよい。また、一つの拡張ユニット4に対して複数のフィールドデバイスが接続されてもよい。 The expansion unit 4 is prepared to expand the functions of the PLC 1. A field device (controlled device) 10 corresponding to the function of the expansion unit 4 may be connected to each expansion unit 4, so that each field device 10 is connected to the basic unit 3 via the expansion unit 4. Connected. The field device 10 may be an input device such as a sensor or a camera, or may be an output device such as an actuator. Further, 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 positions a workpiece by driving a motor (field device 10), or may be a counter unit. The counter unit counts signals from an encoder (field device 10) such as a manual pulser.

拡張ユニット4aは、フローを実行することで、基本ユニット3や拡張ユニット4bから収集対象データを収集し、収集対象データにデータ処理を施して表示対象データを作成し、ダッシュボードを表示部7またはPC2に表示するための表示データを作成するデータ収集ユニットである。基本ユニット3はCPUユニットと呼ばれることもある。なお、PLC1とPC2とを含むシステムはプログラマブルロジックコントローラシステムと呼ばれてもよい。 By executing the flow, the expansion unit 4a collects data to be collected from the basic unit 3 and expansion unit 4b, performs data processing on the data to be collected to create data to be displayed, and displays the dashboard on the display unit 7 or This is a data collection unit that creates display data to be displayed on the PC2. The basic unit 3 is sometimes called a CPU unit. Note that a system including PLC1 and PC2 may be called a programmable logic controller system.

PC2aは主にプログラマーによって操作されるコンピュータである。一方、PC2bは、現場担当者によって操作されるコンピュータである。PC2aはプログラム作成支援装置(設定装置または設定支援装置)と呼ばれてもよい。PC2は、たとえば、携帯可能なノートタイプやタブレットタイプのパーソナルコンピュータまたはスマートフォンであって、表示部7および操作部8を備えている外部コンピュータである。外部コンピュータとは、PLC1の外部にあるコンピュータである。PLC1を制御するためのユーザプログラムの一例であるラダープログラムは、PC2aを用いて作成される。その作成されたラダープログラムは、PC2a内でニモニックコードに変換される。PC2は、USB(Universal Serial Bus)ケーブルなどの通信ケーブル9を介してPLC1の基本ユニット3に接続される。たとえば、PC2aは、ニモニックコードに変換されたラダープログラムを基本ユニット3に送る。基本ユニット3はラダープログラムをマシンコードに変換し、基本ユニット3に備えられたメモリ内に記憶する。なお、ここではニモニックコードが基本ユニット3に送信されているが、本発明はこれに限られない。たとえば、PC2aは、ニモニックコードを中間コードに変換し、中間コードを基本ユニット3に送信してもよい。 The PC 2a is a computer mainly operated by a programmer. On the other hand, the PC 2b is a computer operated by a person in charge at the site. The PC 2a may be called a program creation support device (setting device or setting support device). The PC 2 is, for example, a portable notebook-type or tablet-type personal computer or a smartphone, and is an external computer that includes a display section 7 and an operation section 8 . The external computer is a computer located outside the PLC 1. 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 ladder program converted into a mnemonic code to the basic unit 3. The basic unit 3 converts the ladder program into machine code and stores it in the memory provided in the basic unit 3. Note that 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 transmit 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. Further, the PC 2 may be configured to be detachably connected to the basic unit 3 of the PLC 1 via a communication cable 9 other than the USB cable. Further, 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は中央演算処理装置の略称である。ROMはリードオンリーメモリの略称である。RAMはランダムアクセスメモリの略称である。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 section 7a, the operation section 8a, the storage device 12a, and the communication section 13a are each electrically connected to the CPU 11a. The storage device 12a includes a RAM, ROM, HDD, and SSD, and may also include a removable memory card. CPU is an abbreviation for central processing unit. ROM is an abbreviation for read-only memory. RAM is an abbreviation for random access memory. HDD is an abbreviation for hard disk drive. SSD is an abbreviation for solid state drive.

PC2aのユーザは記憶装置12aに記憶されているプロジェクト編集プログラム14aをCPU11aに実行させて、操作部8aを通じてプロジェクトデータ70を編集する。CPU11aがプロジェクト編集プログラム14aを実行することで、プロジェクト作成部50と転送部60が実現される。プロジェクト作成部50はユーザ入力にしたがってプロジェクトデータ70を作成する。転送部60はプロジェクトデータ70をPLC1に転送する。プロジェクトデータ70は、一つ以上のユーザープログラム(例:ラダープログラム)と、基本ユニット3や拡張ユニット4の構成情報などを含む。構成情報は、基本ユニット3に対する複数の拡張ユニット4の接続位置や、基本ユニット3に備えられた機能(例:通信機能や位置決め機能)を示す情報、拡張ユニット4の機能(例:撮影機能)などを示す情報である。ここで、プロジェクトデータ70の編集には、プロジェクトデータ70の作成および変更(再編集)が含まれる。ユーザは、必要に応じて記憶装置12aに記憶されているプロジェクトデータ70を読み出し、そのプロジェクトデータ70を、プロジェクト編集プログラム14aを用いて変更することができる。通信部13aは、通信ケーブル9aを介して基本ユニット3と通信する。転送部60は通信部13aを介してプロジェクトデータを基本ユニット3に転送する。通信部13aは、通信ケーブル9bを介して拡張ユニット4aと通信する。なお、プロジェクトデータは、後述されるダッシュボードとデータ活用プログラムとを含む設定データを含んでいてもよい。プロジェクト編集プログラム14aは、後述されるダッシュボードとデータ活用プログラムに関する設定データを作成または編集するプログラム(設定アプリケーション)を含んでいてもよい。 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 70 through the operation unit 8a. The project creation section 50 and the transfer section 60 are realized by the CPU 11a executing the project editing program 14a. The project creation unit 50 creates project data 70 according to user input. The transfer unit 60 transfers the project data 70 to the PLC 1. The project data 70 includes one or more user programs (eg, ladder program), configuration information of the basic unit 3 and expansion unit 4, and the like. The configuration information includes information indicating the connection positions of multiple expansion units 4 to the basic unit 3, functions provided in the basic unit 3 (e.g. communication function and positioning function), and functions of the expansion unit 4 (e.g. shooting function). This is information that shows things like. Here, editing the project data 70 includes creating and changing (re-editing) the project data 70. The user can read the project data 70 stored in the storage device 12a and change the project data 70 using the project editing program 14a, if necessary. The communication section 13a communicates with the basic unit 3 via the communication cable 9a. The transfer section 60 transfers the project data to the basic unit 3 via the communication section 13a. The communication unit 13a communicates with the expansion unit 4a via the communication cable 9b. Note that the project data may include setting data including a dashboard and a data utilization program, which will be described later. The project editing program 14a may include a program (setting application) for creating or editing setting data regarding a dashboard and data utilization program, which will be described later.

<アプリケーションの設定とダッシュボードの表示に使用されるPC>
図3はPC2bの電気的構成について説明するためのブロック図である。図3が示すように、PC2bは、CPU11b、表示部7b、操作部8b、記憶装置12bおよび通信部13bを備えている。表示部7b、操作部8b、記憶装置12bおよび通信部13bは、それぞれCPU11bに対して電気的に接続されている。記憶装置12bはRAMやROM、HDD、SSDを含み、さらに着脱可能なメモリカードを含んでもよい。
<PC used for application settings and dashboard display>
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 section 7b, the operation section 8b, the storage device 12b, and the communication section 13b are each electrically connected to the CPU 11b. The storage device 12b includes a RAM, ROM, HDD, and SSD, and may further include a removable memory card.

CPU11bはWebブラウザプログラム14dを実行することでWebブラウザ61を実現する。Webブラウザ61は、通信部13bを介して、拡張ユニット4aによって提供されるデータ活用アプリケーションの設定ページにアクセスしたり、ダッシュボードのページにアクセスしたりする。Webブラウザ61は、Webアプリケーション実行部15dを有していてもよい。Webアプリケーション実行部15dは、Webサーバから受信したプログラム(例:Htmlソースコード、カスケーディングスタイルシート(CSS)、Javaなどのスクリプト)を実行する。CPU41は、データ活用アプリケーションの設定ページにおいて提供されたWebアプリケーションである設定アプリケーションを、Webブラウザプログラム14dおよびWebアプリケーション実行部15d上で実行させてもよい。同様に、CPU41は、ダッシュボードの設定ページにおいて提供されたWebアプリケーションであるダッシュボードアプリケーションを、Webブラウザプログラム14dおよびWebアプリケーション実行部15d上で実行させてもよい。このように設定や表示に関して主体的に動作するアプリケーションは、PC2bにおいて実行されてもよいし、PLC1において実行されてもよい。 The CPU 11b realizes the web browser 61 by executing the web browser program 14d. The web browser 61 accesses the setting page of the data utilization application provided by the expansion unit 4a or the dashboard page via the communication unit 13b. The web browser 61 may include a web application execution unit 15d. The web application execution unit 15d executes a program (eg, an Html source code, a cascading style sheet (CSS), a Java script, etc.) received from the web server. The CPU 41 may cause the Web browser program 14d and the Web application execution unit 15d to execute a settings application, which is a Web application provided on the settings page of the data utilization application. Similarly, the CPU 41 may cause the web browser program 14d and the web application execution unit 15d to execute a dashboard application, which is a web application provided on the dashboard settings page. An application that independently operates regarding settings and display in this way may be executed on the PC 2b or may be executed on the PLC 1.

<PLC>
図4はPLC1の電気的構成について説明するためのブロック図である。図4が示すように、基本ユニット3は、CPU31、表示部5、操作部6、記憶装置32および通信部33を備えている。表示部5、操作部6、記憶装置32、および通信部33は、それぞれCPU31に電気的に接続されている。記憶装置32は、RAMやROM、メモリカードなどを含んでもよい。記憶装置32はデバイス部34やプロジェクト記憶部35などの複数の記憶領域を有している。デバイス部34はビットデバイスやワードデバイスなどを有し、各デバイスはデバイス値を記憶する。プロジェクト記憶部35は、PC2aから入力されたプロジェクトデータを記憶する。記憶装置32は基本ユニット3用の制御プログラムも記憶する。図4が示すように基本ユニット3と拡張ユニット4とは拡張バスの一種であるユニット内部バス90を介して接続されている。なお、ユニット内部バス90に関する通信機能(拡張バスIF)はCPU31に実装されるが、通信部33の一部として実装されてもよい。通信部33はネットワーク通信回路を有してもよい。CPU31は通信部33を介してプロジェクトデータをPC2aから受信する。
<PLC>
FIG. 4 is a block diagram for explaining the electrical configuration of the PLC 1. As shown in FIG. 4, the basic unit 3 includes a CPU 31, a display section 5, an operation section 6, a storage device 32, and a communication section 33. The display section 5, the operation section 6, the storage device 32, and the communication section 33 are each electrically connected to the CPU 31. The storage device 32 may include a RAM, ROM, memory card, etc. The storage device 32 has a plurality of storage areas such as a device section 34 and a project storage section 35. The device section 34 has bit devices, word devices, etc., and each device stores a device value. The project storage unit 35 stores project data input from the PC 2a. The storage device 32 also stores a control program for the basic unit 3. As shown in FIG. 4, the basic unit 3 and the expansion unit 4 are connected via a unit internal bus 90, which is a type of expansion bus. Note that although the communication function (expansion bus IF) regarding the unit internal bus 90 is implemented in the CPU 31, it may also be implemented as part of the communication section 33. The communication unit 33 may include a network communication circuit. The CPU 31 receives project data from the PC 2a via the communication unit 33.

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

拡張ユニット4はCPU41とメモリ42を備えている。拡張ユニット4bのCPU41bは、デバイスに格納された基本ユニット3からの指示(デバイス値)にしたがってフィールドデバイス10を制御する。また、CPU41bは、フィールドデバイス10の制御結果をバッファメモリとよばれるデバイスに格納する。デバイスに格納された制御結果は入出力リフレッシュによって基本ユニット3に転送される。また、デバイスに格納されている制御結果は、基本ユニット3からの読み出し命令にしたがって、入出力リフレッシュとは異なるタイミングであっても、基本ユニット3に転送される。メモリ42はRAMやROMなどを含む。とりわけ、RAMにはバッファメモリとして使用される記憶領域が確保されている。メモリ42は、フィールドデバイス10によって取得されたデータ(例:静止画データや動画データ)を一時的に保持するバッファを有してもよい。CPU41もユニット内部バス90に関する通信機能(拡張バスIF)を内蔵している。 The expansion unit 4 includes 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. Further, the CPU 41b stores the control results of the field device 10 in a device called a buffer memory. The control results stored in the device are transferred to the basic unit 3 by input/output refresh. Furthermore, the control results stored in the device are transferred to the basic unit 3 in accordance with a read command from the basic unit 3 even if the timing is different from the input/output refresh. The memory 42 includes RAM, ROM, and the like. In particular, 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 (eg, still image data or video data) acquired by the field device 10. The CPU 41 also has a built-in communication function (expansion bus IF) regarding the unit internal bus 90.

データ活用ユニットとして機能する拡張ユニット4aのCPU41aは、通信部43とケーブル9bを介してPC2bと通信する。ケーブル9bは、たとえば、有線LAN、無線LAN、または、近距離無線通信などのいずれであってもよい。PC2bは、上述されたように、携帯可能なノートタイプやタブレットタイプのパーソナルコンピュータまたはスマートフォンのいずれであってもよい。データ活用ユニットは、データ活用アプリケーションを実行する拡張ユニットである。データ活用アプリケーションは、制御データを収集したりデータ処理したりするデータ活用プログラム(例:フロー)と、データ活用プログラムの実行結果を表示するダッシュボードとを含む。ここでは、データ活用プログラムの一例としてフローが採用されているが、他の言語によるユーザプログラムであってもよい。フローはデータを収集する演算ブロック、データ処理を実行する演算ブロック、および、表示データを作成する演算ブロックなどを有してもよい。ダッシュボードは、グラフ表示部品や数値表示部品などを有する。これらの表示部品は、HTMLデータ、CSSデータおよびJavaScript(登録商標)コードなどにより実現されてもよい。なお、HTMLデータ、CSSデータおよびJavaScript(登録商標)コードの集合体はWebアプリケーションと呼ばれてもよい。本実施形態で、フローはフローテンプレートにより実現される。フローテンプレートは予めアプリケーションごとに用意されており、ユーザにより指定されたパラメータが設定される一つ以上の演算ブロックを有している。ダッシュボードもテンプレートにより実現される。ダッシュボードテンプレートは、ユーザにより指定されたパラメータが設定される一つ以上の表示部品を有している。パラメータは、たとえば、ダッシュボードの名称、デバイス名、数値、ユニット変数名など多種多様な情報である。ユニット変数とは、拡張ユニット4aがフローの実行結果を保持するための変数である。 The CPU 41a of the expansion unit 4a functioning as a data utilization unit communicates with the PC 2b via the communication section 43 and the cable 9b. The cable 9b may be, for example, a wired LAN, wireless LAN, short-range wireless communication, or the like. As described above, the PC 2b may be a portable notebook type or tablet type personal computer or a smartphone. The data utilization unit is an expansion unit that executes a data utilization application. The data utilization application includes a data utilization program (eg, flow) that collects control data and processes data, and a dashboard that displays the execution results of the data utilization program. Here, a flow is adopted as an example of a data utilization program, but a user program in another language may be used. A flow may include a calculation block that collects data, a calculation block that performs data processing, a calculation block that creates display data, and the like. The dashboard includes graph display parts, numerical display parts, and the like. These display components may be realized using HTML data, CSS data, JavaScript (registered trademark) code, and the like. Note that a collection of HTML data, CSS data, and JavaScript (registered trademark) code may be called a Web application. In this embodiment, flows are realized by flow templates. The flow template is prepared in advance for each application, and includes one or more calculation blocks in which parameters specified by the user are set. Dashboards are also realized using templates. The dashboard template has one or more display components in which parameters specified by the user are set. Parameters include a wide variety of information such as dashboard names, device names, numerical values, and unit variable names. A unit variable is a variable used by the expansion unit 4a to hold the execution result of a flow.

CPU41aはPC2bに対して、データ活用アプリケーションの設定UI(編集UI)を提供する。本実施形態では、設定UIはWebベースで実現される。CPU41aはPC2bのCPU11b(Webブラウザ61)から受信した指示にしたがってフローやダッシュボードの設定データを編集または作成してメモリ42aに格納する。設定データは、基本的に、PC2aにより作成されて拡張ユニット4aに転送されてくるが、CPU41aが新規に設定データを作成してもよい。いずれにしても、CPU41aは、メモリ42aに保持されている設定データを編集することができる。CPU41aは、設定データにしたがってフローを実行し、デバイス値を収集し、ダッシュボードに表示される表示データを作成する。CPU41aは、通信部43とケーブル9bを介してPC2bと通信し、ダッシュボードの表示データを送信する。これにより、PC2bはPLC1に関する各種データを含むダッシュボードを表示する。 The CPU 41a provides the PC 2b with a setting UI (edit UI) for the data utilization application. In this embodiment, the setting UI is realized on a web basis. The CPU 41a edits or creates setting data for flows and dashboards according to instructions received from the CPU 11b (Web browser 61) of the PC 2b, and stores the data in the memory 42a. Setting data is basically created by the PC 2a and transferred to the expansion unit 4a, but the CPU 41a may create new setting data. In any case, the CPU 41a can edit the setting data held in the memory 42a. The CPU 41a executes the flow according to the setting data, collects device values, and creates display data to be displayed on the dashboard. The CPU 41a communicates with the PC 2b via the communication unit 43 and the cable 9b, and transmits dashboard display data. As a result, the PC 2b displays a dashboard containing various data regarding the PLC 1.

●データ活用アプリケーションの設定機能
図5は拡張ユニット4aのCPU41aによって実現される機能を説明する図である。なお、設定部80はPC2aのCPU11aによって実現されてもよい。この場合、PC2aのCPU11aは、新規または再編集した設定データを拡張ユニット4aに転送する。拡張ユニット4aの設定部80は当該設定データを受信すると、メモリ42aに格納する。さらに、拡張ユニット4aの設定部80は当該設定データを再編集してもよい。この場合、複数のテンプレートのうち、必要なテンプレートのみがPC2aから拡張ユニット4aに転送されることになる。また、PC2aがすべてのテンプレートを保持しているため、拡張ユニット4aはすべてのテンプレートを保持している必要はない。
●Setting function of data utilization application FIG. 5 is a diagram illustrating the functions realized by the CPU 41a of the expansion unit 4a. Note that the setting unit 80 may be realized by the CPU 11a of the PC 2a. In this case, the CPU 11a of the PC 2a transfers new or reedited setting data to the expansion unit 4a. When the setting section 80 of the expansion unit 4a receives the setting data, it stores it in the memory 42a. Further, the setting section 80 of the expansion unit 4a may re-edit the setting data. In this case, only the necessary templates among the plurality of templates will be transferred from the PC 2a to the expansion unit 4a. Furthermore, since the PC 2a holds all the templates, the expansion unit 4a does not need to hold all the templates.

設定部80は、データ活用アプリケーションに関する設定データ73を作成または編集してメモリ42aに格納する。設定部80は、設定データ73にしたがって基本ユニット3に対してどのようなデバイス値を収集すべきかを設定してもよい。設定データ73は、ダッシュボードテンプレート71a、フローテンプレート72aおよびパラメータ設定74を含む。パラメータ設定74は、ダッシュボードテンプレート71aおよびフローテンプレート72aに代入された状態であってもよいし、ダッシュボードテンプレート71aおよびフローテンプレート72aから分離された状態であってもよい。 The setting unit 80 creates or edits setting data 73 regarding the data utilization application and stores it in the memory 42a. The setting unit 80 may set what device values should be collected for the basic unit 3 according to the setting data 73. Setting data 73 includes a dashboard template 71a, a flow template 72a, and parameter settings 74. The parameter settings 74 may be assigned to the dashboard template 71a and flow template 72a, or may be separated from the dashboard template 71a and flow template 72a.

設定部80のフロー・ダッシュボード作成部51は、CPU41aがフロー・ダッシュボード編集プログラム14bを実行することで実現される機能である。設定部80がPC2aに実装される場合、フロー・ダッシュボード作成部51はCPU11aにより実現される。この場合、フロー・ダッシュボード作成部51は、拡張ユニット4aに設定データを転送する転送部を含むことになる。また、CPU41aは設定データをPC2aから受信してメモリ42aに書き込む書き込み部として機能する。 The flow dashboard creation section 51 of the setting section 80 is a function realized by the CPU 41a executing the flow dashboard editing program 14b. When the setting unit 80 is installed in the PC 2a, the flow dashboard creation unit 51 is realized by the CPU 11a. In this case, the flow dashboard creation section 51 includes a transfer section that transfers the setting data to the expansion unit 4a. Further, the CPU 41a functions as a writing unit that receives setting data from the PC 2a and writes it into the memory 42a.

拡張ユニット4aのダッシュボード選択部52は、オプションである。拡張ユニット4aが設定データ73の新規作成機能を有しない場合、ダッシュボード選択部52は省略され、PC2aに実装される。複数のダッシュボードから一つのダッシュボードをユーザが選択することを支援する選択画面を、Webサーバ85を通じて、PC2bの表示部7bに表示し、ユーザによるダッシュボードの選択を受け付ける。ダッシュボードとしては、波形監視用のダッシュボードやロス解析のためのダッシュボード、FFT用のダッシュボードなどが存在してもよい。FFTは高速フーリエ変換の略称である。パラメータ指定部53は、ユーザにより選択されたダッシュボードに関連付けられているフローに関するパラメータやダッシュボードの表示設定に関するパラメータについてのユーザ指定を、Webサーバ85を通じて、受け付ける。このパラメータとしては、収集対象のデバイスや、解析対象のデバイス、解析対象期間、表示対象、表示部品の名称、単位、などである。作成部54は、ユーザにより選択されたダッシュボードを表示するためのテンプレートを、ダッシュボードテンプレート群71から抽出する。ダッシュボードテンプレート群71は、ダッシュボードを実現するための様々な表示部品(グラフモジュール)を有している。作成部54は、ユーザにより選択されたダッシュボードにデータを表示するために必要となるデータ処理を実行するフローのテンプレートを、フローテンプレート群72から抽出する。フローテンプレート群72は、データ処理を実行するための演算部品(プログラムモジュール)を有している。作成部54は、ダッシュボードのテンプレート71a、フローのテンプレート72a、これらのテンプレートに設定されるパラメータ設定74を含む設定データ73を作成し、メモリ42aに格納する。 The dashboard selection section 52 of the expansion unit 4a is an option. If the expansion unit 4a does not have the function of creating new setting data 73, the dashboard selection section 52 is omitted and installed in the PC 2a. A selection screen that assists the user in selecting one dashboard from a plurality of dashboards is displayed on the display section 7b of the PC 2b via the web server 85, and the user's selection of the dashboard is accepted. The dashboard may include a waveform monitoring dashboard, a loss analysis dashboard, an FFT dashboard, and the like. FFT is an abbreviation for fast Fourier transform. The parameter designation unit 53 receives user designations regarding parameters related to the flow associated with the dashboard selected by the user and parameters related to the display settings of the dashboard, through the Web server 85 . The parameters include the device to be collected, the device to be analyzed, the period to be analyzed, the display target, the name of the display component, the unit, etc. The creation unit 54 extracts a template for displaying the dashboard selected by the user from the dashboard template group 71. The dashboard template group 71 includes various display parts (graph modules) for realizing a dashboard. The creation unit 54 extracts from the flow template group 72 a flow template that executes data processing necessary to display data on the dashboard selected by the user. The flow template group 72 includes calculation components (program modules) for executing data processing. The creation unit 54 creates setting data 73 including a dashboard template 71a, a flow template 72a, and parameter settings 74 set in these templates, and stores it in the memory 42a.

なお、設定部80は、PC2bにおいて事実上実現されてもよい。この場合、Webサーバ85が設定部80を実現するためのプログラム(Webアプリケーション)をWebブラウザ61に送信する。Webブラウザ61のWebアプリケーション実行部15dが当該プログラムを実行することで、設定部80を実現する。 Note that the setting unit 80 may be practically implemented in the PC 2b. In this case, the web server 85 transmits a program (web application) for realizing the setting section 80 to the web browser 61. The setting unit 80 is implemented by the web application execution unit 15d of the web browser 61 executing the program.

PC2aが設定データ73を作成する場合は以下の通りである。CPU11aは、プロジェクト編集プログラム14aに含まれている設定プログラムを実行することで、設定部80を実現する。設定部80はプロジェクト作成部50の一部であってもよい。テンプレート群71、72は記憶装置12aに記憶されている。PC2aのダッシュボード選択部52は、複数のダッシュボードから一つのダッシュボードをユーザが選択することを支援する選択画面を表示部7aに表示し、ユーザによるダッシュボードの選択を受け付ける。パラメータ指定部53は、ユーザにより選択されたダッシュボードに関連付けられているフローに関するパラメータやダッシュボードの表示設定に関するパラメータについてのユーザ指定を、操作部8aを通じて、受け付ける。作成部54は、ユーザにより選択されたダッシュボードを表示するためのテンプレートを、記憶装置12aに記憶されているダッシュボードテンプレート群71から抽出する。作成部54は、ユーザにより選択されたダッシュボードにデータを表示するために必要となるデータ処理を実行するフローのテンプレートを、記憶装置12aに記憶されているフローテンプレート群72から抽出する。作成部54は、ダッシュボードのテンプレート71a、フローのテンプレート72a、これらのテンプレートに設定されるパラメータ設定74を含む設定データ73を作成し、拡張ユニット4aに転送する。 The case where the PC 2a creates the setting data 73 is as follows. The CPU 11a implements the setting section 80 by executing a setting program included in the project editing program 14a. The setting section 80 may be part of the project creation section 50. The template groups 71 and 72 are stored in the storage device 12a. The dashboard selection unit 52 of the PC 2a displays a selection screen on the display unit 7a to assist the user in selecting one dashboard from a plurality of dashboards, and accepts the selection of a dashboard by the user. The parameter designation unit 53 receives user designations regarding parameters related to the flow associated with the dashboard selected by the user and parameters related to the display settings of the dashboard, through the operation unit 8a. The creation unit 54 extracts a template for displaying the dashboard selected by the user from the dashboard template group 71 stored in the storage device 12a. The creation unit 54 extracts a flow template for executing data processing necessary for displaying data on the dashboard selected by the user from the flow template group 72 stored in the storage device 12a. The creation unit 54 creates setting data 73 including a dashboard template 71a, a flow template 72a, and parameter settings 74 set in these templates, and transfers it to the expansion unit 4a.

●フロー実行機能とダッシュボード提供機能
フロー実行部81は、CPU41aが、パラメータ設定74にしたがってフローテンプレート72a内のフローを実行することで実現される機能である。収集部82は、パラメータ設定74により指定されたデバイス値を基本ユニット3や拡張ユニット4bから収集し、収集されたデータ75を作成し、メモリ42aに格納する。なお、収集部82は、フロー実行部81の一部であってもよいが、図5が示すように、通常はフロー実行部81の外部に設けられている。つまり、収集部82は、フローとは別に実装される機能であってもよい。この場合、収集部82を実現する制御プログラムのメモリ42aに記憶されていてもよい。
●Flow execution function and dashboard provision function The flow execution unit 81 is a function realized by the CPU 41a executing the flow in the flow template 72a according to the parameter settings 74. The collection unit 82 collects device values specified by the parameter settings 74 from the basic unit 3 and expansion unit 4b, creates collected data 75, and stores it in the memory 42a. Note that the collection unit 82 may be a part of the flow execution unit 81, but as shown in FIG. 5, it is usually provided outside the flow execution unit 81. In other words, the collection unit 82 may be a function implemented separately from the flow. In this case, the control program that implements the collection unit 82 may be stored in the memory 42a.

データ処理部83は、パラメータ設定74により指定されたデータ処理を、収集されたデータ75に適用し、解析されたデータ76を作成し、メモリ42aに格納する。表示処理部84は、パラメータ設定74により指定されたダッシュボードテンプレート71aと表示対象データとに基づきダッシュボードのソースデータ77(例:HTMLデータや画像データ、CSS(カスケーディングスタイルシート)、JavaScript(登録商標)のコード)を作成する。Webサーバ85は、PC2bなどのWebブラウザ61に対して、ダッシュボードのソースデータ77を提供する。ソースデータ77はダッシュボードのソースコードと画像データとを含む。 The data processing unit 83 applies data processing specified by the parameter settings 74 to the collected data 75, creates analyzed data 76, and stores it in the memory 42a. The display processing unit 84 generates dashboard source data 77 (for example, HTML data, image data, CSS (cascading style sheets), JavaScript (registered Trademark) code). The web server 85 provides the dashboard source data 77 to the web browser 61 such as the PC 2b. Source data 77 includes dashboard source code and image data.

<フローチャート>
●ダッシュボードとフローの編集
図6は拡張ユニット4aのCPU41aが実行する設定処理を示すフローチャートである。CPU41aはフロー・ダッシュボード編集プログラム14bにしたがって以下の処理を実行する。フロー・ダッシュボード編集プログラム14bが、Webサーバ85上で実行されるWeb APIであってもよい。
<Flowchart>
●Dashboard and flow editing FIG. 6 is a flowchart showing the setting process executed by the CPU 41a of the expansion unit 4a. The CPU 41a executes the following processing according to the flow dashboard editing program 14b. The flow dashboard editing program 14b may be a Web API executed on the Web server 85.

S1でCPU41aはダッシュボード(アプリケーション)の選択画面をPC2bの表示部7bに表示する。たとえば、PC2bのWebブラウザ61は、選択画面を提供するWebページのURLにしたがって、拡張ユニット4aのWebサーバ85にアクセスする。Webサーバ85は、選択画面のWebページの表示データをWebブラウザ61に提供する。たとえば、Webサーバ85は、選択画面100を提供するWebページに対するアクセスを検知すると、図7に例示されているような選択画面100の表示データをPC2bのWebブラウザ61に送信する。Webブラウザ61は、表示データにしたがって表示部7bに選択画面100を表示する。図7においてWebブラウザのUI130には、URL入力部131と、選択画面100とが含まれている。URL入力部131には、選択画面100に割り当てられたURLが入力されている。フロー・ダッシュボード作成部51はバックエンドプログラムであり、選択画面100に対する操作(例:ボタンオブジェクトのクリック、数値またはテキスト入力)をWebサーバ85から通知される。フロー・ダッシュボード作成部51は、Webブラウザ61を通じて指定されたパラメータにしたがってダッシュボードとフローとを編集する。 In S1, the CPU 41a displays a dashboard (application) selection screen on the display section 7b of the PC 2b. For example, the web browser 61 of the PC 2b accesses the web server 85 of the expansion unit 4a according to the URL of the web page that provides the selection screen. The web server 85 provides the web browser 61 with display data of the web page of the selection screen. For example, when the Web server 85 detects an access to a Web page that provides the selection screen 100, it transmits display data of the selection screen 100 as illustrated in FIG. 7 to the Web browser 61 of the PC 2b. The Web browser 61 displays a selection screen 100 on the display section 7b according to the display data. In FIG. 7, the UI 130 of the web browser includes a URL input section 131 and a selection screen 100. The URL assigned to the selection screen 100 is input to the URL input section 131 . The flow dashboard creation unit 51 is a back-end program, and is notified of operations on the selection screen 100 (eg, clicking a button object, inputting numerical values or text) from the web server 85. The flow dashboard creation unit 51 edits the dashboard and flow according to parameters specified through the web browser 61.

図7において、ポインタ101はマウスなどのポインティングデバイスの操作に連動して移動する表示オブジェクトである。なお、入力装置がタッチパネルにより実現される場合は、ポインタ101が省略される。ロス解析の選択ボタン102aはロス解析アプリケーションを選択するためのボタンである。波形監視の選択ボタン102bは波形監視アプリケーションを選択するためのボタンである。FFTの選択ボタン102cはFFTアプリケーションを選択するためのボタンである。なお、複数の選択ボタンが押されることで、複数のアプリケーションが選択されてもよい。OKボタン103はダッシュボードの選択を確定するためのボタンである。キャンセルボタン104はダッシュボードの選択をキャンセルするためのボタンである。ユーザはポインタ101を操作することでいずれかのダッシュボードを選択し、OKボタン103を押し下げる。 In FIG. 7, a pointer 101 is a display object that moves in conjunction with the operation of a pointing device such as a mouse. Note that if the input device is implemented by a touch panel, the pointer 101 is omitted. The loss analysis selection button 102a is a button for selecting a loss analysis application. The waveform monitoring selection button 102b is a button for selecting a waveform monitoring application. The FFT selection button 102c is a button for selecting an FFT application. Note that multiple applications may be selected by pressing multiple selection buttons. The OK button 103 is a button for confirming the dashboard selection. A cancel button 104 is a button for canceling dashboard selection. The user selects one of the dashboards by operating the pointer 101 and presses the OK button 103.

S2でCPU41a(ダッシュボード選択部52)はダッシュボードの選択を受け付ける。Webブラウザ61は、HTTP通信により選択画面100においてクリックされたオブジェクトの情報をWebサーバ85に送信する。Webサーバ85はクリックされたオブジェクトの情報をダッシュボード選択部52に渡す。たとえば、ロス解析の選択ボタン102aとOKボタン103が押されたのであれば、ロス解析アプリケーションが選択されたことを示す情報がダッシュボード選択部52に渡される。これにより、ダッシュボード選択部52は、ポインタ101により選択画面100におけるどの選択ボタンが押し下げられたか(どのデータ活用アプリケーションが選択されたか)を認識する。つまり、ダッシュボード選択部52はダッシュボード(データ活用アプリケーション)の選択を受け付ける。 In S2, the CPU 41a (dashboard selection unit 52) accepts the selection of a dashboard. The web browser 61 transmits information about the object clicked on the selection screen 100 to the web server 85 via HTTP communication. The web server 85 passes information on the clicked object to the dashboard selection unit 52. For example, if the loss analysis selection button 102a and the OK button 103 are pressed, information indicating that the loss analysis application has been selected is passed to the dashboard selection unit 52. Thereby, the dashboard selection unit 52 recognizes which selection button on the selection screen 100 has been pressed down by the pointer 101 (which data utilization application has been selected). That is, the dashboard selection unit 52 accepts the selection of a dashboard (data utilization application).

S3でCPU41a(Webサーバ85)は選択されたダッシュボードに対応するパラメータの設定画面をPC2bの表示部7bに表示する。図8はロス解析についてのパラメータの設定画面110を例示している。選択画面100におけるOKボタン103は、設定画面110を提供するURLに対してリンクされていてもよい。これにより、Webサーバ85は、設定画面110の表示データをWebブラウザ61に送信する。Webブラウザ61は、表示データにしたがって設定画面110を表示部7bに表示する。図8において、名称ボックス111は、ロス解析のダッシュボードに表示される名称が入力されるテキストボックスである。解析対象設定部112は、解析対象となるデバイス名(例:R000,R001,R002 AND R003)、グラフにおける各デバイス名の表示色(例:棒グラフの棒の色)、解析対象の名称などの入力を受け付ける。稼働リレーであるR000やチョコ停リレーであるR001のように単一のデバイスが指定されてもよいし、故障リレーのように複数のデバイスの論理演算が指定されてもよい。稼働リレーとはPLC1が産業機械を制御しているときにONとなり、産業機械を制御していないときにOFFとなるビットデバイス(リレーデバイス)である。チョコ停リレーは、PLC1がチョコ停しているときにONとなり、チョコ停していないときにOFFとなるビットデバイスである。故障リレーはPLC1が故障しているときにONとなり、故障してないときにOFFとなるビットデバイスである。フローがこれらのリレーのON/OFFを監視することでPLC1が実際に稼働していた時間と停止していた時間とを求めてもよい。解析対象設定部112は、現在設定されているデバイス名(例:R000)を他のデバイス名(例:MR000)に再設定することを受け付けてもよい。操業期間設定部113は、製造ラインの操業期間の入力を受け付ける。画面選択部114は、ダッシュボードとして表示される表示画面の選択を受け付けるチェックボックスである。一つのダッシュボードが複数の表示画面(例:メイン画面と分析画面)から構成されることがある。たとえば、メイン画面では当日の稼働率が表示され、分析画面では過去12日間の稼働率化が対比可能に表示されてもよい。期間設定部115は、表示対象となるデータの収集期間(例:時間別、日別、週別、月別)の単位の設定を受け付けるリストボックスである。表示数設定部116はデータの表示数を受け付けるための数値ボックスである。収集期間が日別であり、表示数が12であれば、ダッシュボードは、12日間のデータを日ごと表示する。追加オブジェクト117が押されると、パラメータ指定部53は、解析対象デバイス(例:段取り調整を示すR004)を追加する。プレビューボタン118はダッシュボードのプレビューをWebブラウザ61(表示部7b)に表示することをCPU41aに指示するボタンである。プレビューボタン118は、プレビューを提供するURLにリンクされていてもよい。 In S3, the CPU 41a (Web server 85) displays a parameter setting screen corresponding to the selected dashboard on the display unit 7b of the PC 2b. FIG. 8 illustrates a parameter setting screen 110 for loss analysis. The OK button 103 on the selection screen 100 may be linked to a URL that provides the settings screen 110. Thereby, the web server 85 transmits the display data of the setting screen 110 to the web browser 61. Web browser 61 displays setting screen 110 on display section 7b according to the display data. In FIG. 8, a name box 111 is a text box into which a name to be displayed on the loss analysis dashboard is input. The analysis target setting section 112 inputs the device name to be analyzed (e.g. R000, R001, R002 AND R003), the display color of each device name in the graph (e.g. the color of the bar in a bar graph), the name of the analysis target, etc. accept. A single device may be specified, such as R000, which is an active relay, and R001, which is a partially stopped relay, or logical operations of a plurality of devices may be specified, such as a failure relay. The operating relay is a bit device (relay device) that is turned ON when the PLC 1 is controlling the industrial machine and turned OFF when the PLC 1 is not controlling the industrial machine. The short stop relay is a bit device that is turned on when the PLC 1 is at a short stop, and is turned off when the PLC 1 is not at a short stop. The failure relay is a bit device that is turned on when the PLC 1 is malfunctioning and turned off when it is not malfunctioning. The time when PLC1 was actually operating and the time when PLC1 was stopped may be calculated|required by monitoring the ON/OFF of these relays. The analysis target setting unit 112 may accept resetting the currently set device name (eg, R000) to another device name (eg, MR000). The operation period setting unit 113 receives input of the operation period of the production line. The screen selection section 114 is a checkbox that accepts selection of a display screen to be displayed as a dashboard. One dashboard may consist of multiple display screens (e.g. main screen and analysis screen). For example, the main screen may display the current day's occupancy rate, and the analysis screen may display the past 12 days' occupancy rate for comparison. The period setting section 115 is a list box that accepts settings for the collection period (eg, hourly, daily, weekly, monthly) of data to be displayed. The display number setting section 116 is a numerical box for accepting the display number of data. If the collection period is daily and the number of displays is 12, the dashboard will display 12 days of data on a daily basis. When the additional object 117 is pressed, the parameter specifying unit 53 adds a device to be analyzed (eg, R004 indicating setup adjustment). The preview button 118 is a button that instructs the CPU 41a to display a preview of the dashboard on the Web browser 61 (display unit 7b). Preview button 118 may be linked to a URL that provides a preview.

S4でCPU41a(パラメータ指定部53)は、設定画面110を通じて入力されたパラメータの指定(パラメータ設定74)を、Webブラウザ61およびWebサーバ85を通じて受け付ける。 In S4, the CPU 41a (parameter designation unit 53) receives the parameter designation (parameter setting 74) input through the setting screen 110 through the web browser 61 and the web server 85.

S5でCPU41a(作成部54)は、編集されたパラメータをパラメータ設定74に反映させることで、設定データ73を更新する。なお、新規に設定データ73が作成される場合、CPU41a(作成部54)は、選択されたダッシュボードのテンプレート71aをダッシュボードテンプレート群71から取得し、当該ダッシュボードに対応するフローのテンプレート72aをフローテンプレート群72から取得し、テンプレート71a、72aおよびユーザにより入力されたパラメータ設定74を含む設定データ73を作成する。たとえば、作成部54は、ロス解析のダッシュボードが選択されると、解析対象となるデバイスを収集するための収集フロー(例:設備状態更新ブロック)に対して、入力されたパラメータを設定する。たとえば、設備状態更新ブロックの動作期間として、操業期間設定部113により設定された開始時刻(例:09:00)と終了時刻(例:17:30)とが設定される。監視対象として解析対象設定部112により指定されたデバイス名(例:R000,R001,R002 AND R003)などが設定される。なお、設備状態更新ブロックの出力(ロス解析ブロックに渡される一時データ)として、デフォルト設定が採用されてもよい。デフォルト設定には、一時データの格納先として、ユニット変数が作成されたうえで、その作成された変数が指定されてもよい。さらに、作成部54は、データ処理を実行するデータ処理フロー(例:ロス解析ブロック)に対して、入力されたパラメータを設定する。ロス解析ブロックの入力としてデフォルト設定(例:machineStateTable)が採用されてもよい。また、ロス解析ブロックの出力として時間稼働率(例:wOperationTimeRatio)および性能稼働率(例:wPerformanceEfficiency)が採用されてもよい。このように、設備状態更新ブロックの出力とロス解析ブロックの入力とは同一の変数である。つまり、同一のパラメータを介して設備状態更新ブロックとロス解析ブロックとが関連付けられている(紐づけされている)。 In S5, the CPU 41a (creation unit 54) updates the setting data 73 by reflecting the edited parameters in the parameter settings 74. Note that when new setting data 73 is created, the CPU 41a (creation unit 54) obtains the template 71a of the selected dashboard from the dashboard template group 71, and creates the template 72a of the flow corresponding to the dashboard. Setting data 73 is created by acquiring from the flow template group 72 and including templates 71a and 72a and parameter settings 74 input by the user. For example, when a loss analysis dashboard is selected, the creation unit 54 sets the input parameters to a collection flow (eg, equipment status update block) for collecting devices to be analyzed. For example, the start time (eg, 09:00) and end time (eg, 17:30) set by the operating period setting unit 113 are set as the operating period of the equipment status update block. Device names (eg, R000, R001, R002 AND R003) specified by the analysis target setting unit 112 are set as monitoring targets. Note that default settings may be adopted as the output of the equipment status update block (temporary data passed to the loss analysis block). In the default settings, a unit variable may be created as a storage destination for temporary data, and then the created variable may be specified. Furthermore, the creation unit 54 sets the input parameters for a data processing flow (eg, loss analysis block) that executes data processing. Default settings (eg, machineStateTable) may be adopted as input to the loss analysis block. Furthermore, a time utilization rate (eg, wOperationTimeRatio) and a performance utilization rate (eg, wPerformanceEfficiency) may be employed as outputs of the loss analysis block. In this way, the output of the equipment status update block and the input of the loss analysis block are the same variables. That is, the equipment status update block and the loss analysis block are associated (linked) via the same parameter.

S6でCPU41a(作成部54)は設定データ73を拡張ユニット4aのメモリ42aのROM領域に保存する。 In S6, the CPU 41a (creation unit 54) stores the setting data 73 in the ROM area of the memory 42a of the expansion unit 4a.

●ダッシュボード
図9はWebブラウザ61により表示されるダッシュボード120の一例を示している。図9において凡例部121は、解析対象のデバイスに割り当てられた色を示している。グラフ部122は、ロス解析の結果を表示する一つ以上のグラフを含む。グラフの種類は各ダッシュボードごとに予め用意されている。解析結果表示部123は、ロス解析の演算結果を表示する。解析結果表示部123に表示される表示対象も各ダッシュボードごとに予め用意されている。現在状態表示部124はPLC1の現在状態を示す。
●Dashboard FIG. 9 shows an example of the dashboard 120 displayed by the Web browser 61. In FIG. 9, a legend section 121 indicates the color assigned to the device to be analyzed. The graph section 122 includes one or more graphs that display the results of loss analysis. Graph types are prepared in advance for each dashboard. The analysis result display section 123 displays the calculation results of the loss analysis. Display targets displayed on the analysis result display section 123 are also prepared in advance for each dashboard. The current state display section 124 shows the current state of the PLC 1.

プレビューボタン118によりダッシュボード120のプレビューが指示されると、CPU41a(Webサーバ85)は、プレビューが指示されたことを作成部54に通知する。作成部54は、メモリ42aに記憶されているプレビュー用のデフォルトデータをダッシュボード120の表示データに挿入する。Webサーバ85は、ダッシュボード120の表示データをWebブラウザ61に提供する。さらに、作成部54は、プレビュー用のダッシュボード120に対するポインタ101の操作に応じてダッシュボード120のカスタマイズを受け付けてもよい。たとえば、図9において数値表示部品としての「時間稼働率」がポインタ101によりクリックされたことをWebブラウザ61による通知されると、Webサーバ85は、この数値表示部品の設定画面をWebブラウザ61に表示する。つまり、数値表示部品としての「時間稼働率」が数値表示部品の設定画面を提供するWebページのURLにリンクされていてもよい。なお、数値表示部品に表示されるデータを格納しているデバイスがURLにリンクされていてもよい。この設定画面で、作成部54は、数値表示部品の接頭文字(例:時間稼働率)、接尾文字(例:%)、参照デバイス/ユニット変数(例:wOperationTimeRatio)などの編集を受け付けてもよい。つまり、設定画面で入力されたパラメータはWebサーバ85から作成部54に渡される。作成部54は、このパラメータにしたがってダッシュボード120のパラメータ設定74を変更または更新する。 When a preview of the dashboard 120 is instructed by the preview button 118, the CPU 41a (Web server 85) notifies the creation unit 54 that a preview has been instructed. The creation unit 54 inserts the preview default data stored in the memory 42a into the display data of the dashboard 120. Web server 85 provides display data of dashboard 120 to Web browser 61 . Furthermore, the creation unit 54 may accept customization of the dashboard 120 in response to an operation of the pointer 101 on the preview dashboard 120. For example, when the web browser 61 is notified that the pointer 101 has clicked on the "hourly operating rate" as a numerical display component in FIG. indicate. That is, the "hourly operating rate" as a numerical display component may be linked to the URL of a web page that provides a setting screen for the numerical display component. Note that a device storing data displayed on the numerical display component may be linked to the URL. On this setting screen, the creation unit 54 may accept editing of the prefix (e.g., hourly operating rate), suffix (e.g., %), reference device/unit variable (e.g., wOperationTimeRatio), etc. of the numerical display component. . That is, the parameters input on the setting screen are passed from the Web server 85 to the creation section 54. The creation unit 54 changes or updates the parameter settings 74 of the dashboard 120 according to this parameter.

●フローの実行とダッシュボードの提供
図10は拡張ユニット4aのCPU41aにより実行されるフローの実行とダッシュボードの提供とを示すフローチャートである。
●Execution of a flow and provision of a dashboard FIG. 10 is a flowchart showing the execution of a flow and the provision of a dashboard executed by the CPU 41a of the expansion unit 4a.

S11でCPU41a(収集部82)は設定データ73により指定されたフロー(例:設備状態更新ブロック)を実行することによって収集対象のデバイス値(例:R000,R001,R002,R003)を収集し、メモリ42に収集されたデータ75として格納する。ここで、収集されたデータ75は、異なる時刻に収集された時系列データであってもよい。なお、設定データ73には、収集部82を実現するデータ活用プログラムが含まれていてもよい。 In S11, the CPU 41a (collection unit 82) collects device values to be collected (e.g. R000, R001, R002, R003) by executing a flow (e.g. equipment status update block) specified by the setting data 73, The collected data 75 is stored in the memory 42 . Here, the collected data 75 may be time series data collected at different times. Note that the setting data 73 may include a data utilization program that implements the collection unit 82.

ところで、基本ユニット3はスキャン周期ごとにラダープログラムを一回実行する。その一方で、拡張ユニット4a、4bはそれぞれ自己の制御周期にしたがって各種の処理を実行する。一般に、スキャン周期と制御周期は一致しない。基本ユニット3のCPU31はCPU41aからどのデータ(デバイス値やファイル)を収集すべきかを設定されている。基本ユニット3のCPU31は収集設定にしたがってスキャン周期ごとに収集対象のデバイス値を記憶装置32に蓄積する。これにより、記憶装置32には、収集対象のデバイス値の時系列データが作成される。CPU31は、CPU41a(収集部82)から収集指示を受信すると、記憶装置32から未転送の時系列データを読み出して、CPU41a(収集部82)に転送する。CPU41a(収集部82)は、自己の制御周期にしたがって収集指示をCPU31に送信する。なお、CPU41aは、ユニット内部バス90が空いているときに、基本ユニット3から時系列データを収集してもよい。たとえば、ユニット内部バス90を介して入出力リフレッシュが実行されている期間では、時系列データの収集は禁止または抑制されてもよい。これにより、入出力リフレッシュの遅延が抑制され、スキャン周期の間延びが発生しにくくなる。 By the way, the basic unit 3 executes the ladder program once every scan period. On the other hand, the expansion units 4a and 4b each execute various processes according to their own control cycles. Generally, the scan period and the control period do not match. The CPU 31 of the basic unit 3 is set which data (device values and files) should be collected from the CPU 41a. The CPU 31 of the basic unit 3 accumulates device values to be collected in the storage device 32 every scan cycle according to the collection settings. As a result, time-series data of device values to be collected is created in the storage device 32. Upon receiving the collection instruction from the CPU 41a (collection unit 82), the CPU 31 reads untransferred time series data from the storage device 32 and transfers it to the CPU 41a (collection unit 82). The CPU 41a (collection unit 82) transmits a collection instruction to the CPU 31 according to its own control cycle. Note that the CPU 41a may collect time-series data from the basic unit 3 when the unit internal bus 90 is free. For example, during a period when input/output refresh is being performed via the unit internal bus 90, collection of time-series data may be prohibited or suppressed. As a result, delays in input/output refresh are suppressed, and scan period extensions are less likely to occur.

拡張ユニット4bのCPU41bはCPU41aからどのデータ(デバイス値やファイル)を収集すべきかを設定されている。CPU41bは収集設定にしたがって自己の制御周期ごとに収集対象のデバイス値をメモリ42bに蓄積する。これによりメモリ42bには、収集対象のデバイス値の時系列データが作成される。CPU41bは、CPU41a(収集部82)から収集指示を受信すると、メモリ42bから未転送の時系列データを読み出して、CPU41a(収集部82)に転送する。CPU41a(収集部82)は、自己の制御周期にしたがって収集指示をCPU41bに送信する。なお、CPU41aは、ユニット内部バス90が空いているときに、拡張ユニット4bから時系列データを収集してもよい。 The CPU 41b of the expansion unit 4b is set which data (device values and files) should be collected from the CPU 41a. The CPU 41b accumulates device values to be collected in the memory 42b every control period of the CPU 41b according to the collection settings. As a result, time-series data of device values to be collected is created in the memory 42b. When the CPU 41b receives the collection instruction from the CPU 41a (collection unit 82), the CPU 41b reads untransferred time series data from the memory 42b and transfers it to the CPU 41a (collection unit 82). The CPU 41a (collection unit 82) transmits a collection instruction to the CPU 41b according to its own control cycle. Note that the CPU 41a may collect time-series data from the expansion unit 4b when the unit internal bus 90 is free.

S12でCPU41a(データ処理部83)は設定データ73により指定されたフロー(例:ロス解析ブロック)にしたがって収集されたデータ75(デバイス値)にデータ処理(例:時間稼働率、性能稼働率、良品率、設備総合効率の演算)を施す。これにより、解析されたデータ76が作成され、メモリ42aに保存される。 In S12, the CPU 41a (data processing unit 83) performs data processing (e.g., time utilization rate, performance utilization rate, Calculation of non-defective product rate and overall equipment efficiency). As a result, analyzed data 76 is created and stored in the memory 42a.

S13でCPU41a(表示処理部84)はダッシュボード120を表示するためのソースデータ77(例:HTMLデータや画像データ、数値データなど)をフローによって作成する。なお、Webサーバ内のファイルとしてソースデータがファイル形式で保存されていてもよい。この場合、CPU41aは、フローに従って、ダッシュボード120の表示部品を制御するための制御データ(例:表の行の数、表示の有無など)、並びに、表示部品に表示される数値および文字列を作成する。表示処理部84は、収集されたデータ75および/または解析されたデータ76などの表示対象データを用いてソースデータ77を作成する。 In S13, the CPU 41a (display processing unit 84) creates source data 77 (eg, HTML data, image data, numerical data, etc.) for displaying the dashboard 120 according to a flow. Note that the source data may be saved in a file format as a file within the Web server. In this case, the CPU 41a generates control data for controlling the display parts of the dashboard 120 (e.g., number of rows in a table, presence or absence of display, etc.), as well as numerical values and character strings to be displayed on the display parts, according to the flow. create. The display processing unit 84 creates source data 77 using display target data such as collected data 75 and/or analyzed data 76.

S14でCPU41a(Webサーバ85)はソースデータ77をPC2bに提供する。PC2bのWebブラウザ61はソースデータ77にしたがってダッシュボード120を表示する。なお、CPU41aはソースデータ77をPLC1の表示器に表示してもよい。 In S14, the CPU 41a (Web server 85) provides the source data 77 to the PC 2b. The web browser 61 of the PC 2b displays the dashboard 120 according to the source data 77. Note that the CPU 41a may display the source data 77 on the display of the PLC 1.

S15でCPU41aはPC2bから表示終了が指示されたかどうかを判定する。表示終了が指示されていなければ、CPU41aはS11ないしS14を繰り返してもよい。表示終了が指示されれば、フローの実行とダッシュボードの提供とを終了する。 In S15, the CPU 41a determines whether an instruction to end the display has been received from the PC 2b. If the end of display is not instructed, the CPU 41a may repeat S11 to S14. When the display is instructed to end, execution of the flow and provision of the dashboard are ended.

●ダッシュボードの表示部品のカスタマイズ
図9に関して説明されたように作成部54はダッシュボード120の表示部品のカスタマイズ(編集)を受け付けてもよい。図9に示された円グラフがポインタ101によって右クリックされると、作成部54は、編集メニューを表示してもよい。CPU11は、編集メニューに含まれるグラフ削除(部品削除)がポインタ101によって選択されると、右クリックされた円グラフを削除してもよい。図11は、円グラフを削除されたダッシュボード120を示している。この場合、作成部54は、フローを構成する複数の演算ブロックのうち、円グラフを実現するための演算ブロックを削除または無効化するよう設定データ73を更新する。このように、作成部54は、表示部品の編集結果をフローに反映してもよい。逆に、作成部54は、フローを構成するフローブロックの編集結果を表示部品に反映してもよい。図5では作成部54が基本ユニット4aに設けられているが、PC2bに設けられてもよい。
●Customization of display components of the dashboard As explained with reference to FIG. 9, the creation unit 54 may accept customization (editing) of display components of the dashboard 120. When the pie chart shown in FIG. 9 is right-clicked with the pointer 101, the creation unit 54 may display an edit menu. When graph deletion (component deletion) included in the edit menu is selected by the pointer 101, the CPU 11 may delete the right-clicked pie chart. FIG. 11 shows dashboard 120 with the pie chart removed. In this case, the creation unit 54 updates the setting data 73 so as to delete or invalidate the calculation block for realizing the pie chart among the plurality of calculation blocks forming the flow. In this way, the creation unit 54 may reflect the editing results of the display components on the flow. Conversely, the creation unit 54 may reflect the editing results of the flow blocks constituting the flow on the display component. Although the creation section 54 is provided in the basic unit 4a in FIG. 5, it may be provided in the PC 2b.

このようなダッシュボード120のカスタマイズは、図11に示されたWebブラウザ61のUI130を通じて実行される。PC2bのCPU11bは、拡張ユニット4aのCPU41a(設定部80)とHTTP通信を実行することで、円グラフが右クリックされたことを通知し、Webサーバ85から編集メニューの表示データを受信し、Webブラウザが削除の指示をWebサーバ85に送信してもよい。この場合、作成部54は、Webサーバ85からWebブラウザ61にダウンロードされたプログラムによって実現されてもよい。作成部54は、フローを構成する複数の演算ブロックのうち円グラフに対応する演算ブロックを削除または無効化する。これは、Webサーバ85に対する変更指示として送信されてもよい。これにより設定データ73が更新される。 Such customization of the dashboard 120 is performed through the UI 130 of the web browser 61 shown in FIG. 11. The CPU 11b of the PC 2b performs HTTP communication with the CPU 41a (setting unit 80) of the expansion unit 4a to notify that the pie chart has been right-clicked, receives the display data of the edit menu from the Web server 85, and displays the The browser may send a deletion instruction to the web server 85. In this case, the creation unit 54 may be implemented by a program downloaded from the web server 85 to the web browser 61. The creation unit 54 deletes or invalidates the calculation block corresponding to the pie chart from among the plurality of calculation blocks configuring the flow. This may be sent as a change instruction to the web server 85. As a result, the setting data 73 is updated.

●設定データのインポート
設定データ73は他のPLC1にインポートされてもよい。工場では複数の製造ラインが並行して動作していることがある。この場合、複数の製造ラインにおいてそれぞれ同種のPLC1が産業機械を制御している。よって、PC2aは、第一のPLC1用に作成した設定データ73を、第二のPLC1にコピーまたはインポートしてもよい。この際に、CPU11は、設定データ73の再設定(再編集)を実行してから第二のPLC1に設定データ73を転送してもよい。上述されたように、再設定によって、稼働に関するデバイス名がR000からMR000に変更されてもよい。
●Import of setting data The setting data 73 may be imported to another PLC 1. In a factory, multiple production lines may operate in parallel. In this case, PLCs 1 of the same type control industrial machines in a plurality of manufacturing lines. Therefore, the PC 2a may copy or import the setting data 73 created for the first PLC 1 to the second PLC 1. At this time, the CPU 11 may transfer the setting data 73 to the second PLC 1 after resetting (re-editing) the setting data 73. As described above, the device name related to operation may be changed from R000 to MR000 by resetting.

また、第二のPLC1においてすでに特定のデータ活用アプリケーションが存在する場合に、同一のデータ活用アプリケーションを第一のPLC1からインポートすると、ユニット変数の重複などが発生し、二つのデータ活用アプリケーションが正常に動作しなくなる可能性がある。つまり、元から存在する設定データ73におけるユニット変数(例:wOperationTimeRatio)と、インポートのために複製されたユニット変数(例:wOperationTimeRatio)とが重複すると、第二のPLC1においてフローが正しく動作しないことがあるかもしれない。この場合、作成部54はユニット変数の重複が解消するように、ユニット変数を変更してもよい(例:wOperationTimeRatioをwOperationTimeRatio2に変更)。 In addition, if a specific data utilization application already exists in the second PLC 1 and the same data utilization application is imported from the first PLC 1, duplication of unit variables will occur, and the two data utilization applications will not work correctly. It may stop working. In other words, if a unit variable (e.g. wOperationTimeRatio) in the originally existing configuration data 73 and a unit variable (e.g. wOperationTimeRatio) copied for import overlap, the flow may not operate correctly in the second PLC 1. Might happen. In this case, the creation unit 54 may change the unit variables so that duplication of unit variables is resolved (for example, change wOperationTimeRatio to wOperationTimeRatio2).

●複数のダッシュボードの組み合わせ
上述されたように、複数のダッシュボードが選択されることがある。この場合、複数のダッシュボード、つまり、複数のフローが連携してもよい。たとえば、波形監視アプリケーションが産業機械の振動データを収集し、時間軸に沿って振動データの波形をダッシュボードに表示することがある。この場合、波形監視アプリケーションに関連したフローが振動データを収集し、メモリ42aに振動データを保持している。一方で、FFTアプリケーションのフローが、この振動データについてFFTによる周波数分析を実行してもよい。FFTアプリケーションのダッシュボードが振動データの周波数分析結果を表示する。なお、周波数分析結果はメモリ42aに保持される。さらに、ロス解析アプリケーションのフローが、前回の周波数解析結果と今回の周波数解析結果をメモリ42aから取得してこれらの差分を求め、この差分と所定のエラー閾値と比較することで、エラーの有無の解析結果を求め、ロス解析アプリケーションのダッシュボードに表示してもよい。このように、複数のダッシュボードと、複数のフローとが連携してもよい。なお、複数のダッシュボードは並べて表示されてもよいし、各ダッシュボードに設けられた切替ボタンの操作に応じて複数のダッシュボードが一つずつ切り替えなられながら表示されてもよい。
●Combination of multiple dashboards As described above, multiple dashboards may be selected. In this case, multiple dashboards, that is, multiple flows may cooperate. For example, a waveform monitoring application may collect vibration data from industrial machinery and display the vibration data waveform on a dashboard over time. In this case, a flow related to the waveform monitoring application collects vibration data and holds the vibration data in the memory 42a. On the other hand, the FFT application flow may perform frequency analysis using FFT on this vibration data. The FFT application dashboard displays the frequency analysis results of the vibration data. Note that the frequency analysis results are held in the memory 42a. Furthermore, the flow of the loss analysis application acquires the previous frequency analysis result and the current frequency analysis result from the memory 42a, calculates the difference between them, and compares this difference with a predetermined error threshold to determine whether there is an error. The analysis results may be obtained and displayed on the dashboard of the loss analysis application. In this way, multiple dashboards and multiple flows may cooperate. Note that the plurality of dashboards may be displayed side by side, or the plurality of dashboards may be displayed while being switched one by one according to the operation of a switching button provided on each dashboard.

●プロジェクトデータ70の変更に追随した設定データ73の変更
作成部54は、プロジェクトデータ70の変更に追随して設定データ73を変更してもよい。たとえば、稼働リレーとしてR000がすでに例示されているが、プロジェクトデータ70が変更されることで、この稼働リレーとして別のデバイス(例:MR000)が割り当てられることがある。そこで、作成部54は、設定データ73のタイムスタンプと、プロジェクトデータ70のタイムスタンプとを比較することで、設定データ73を保存した後に、プロジェクトデータ70が変更されたかどうかを判定する。プロジェクトデータ70が変更された場合、さらに、作成部54は、プロジェクトデータ70を解析することで、設定データ73に関連するデバイスの割り当てが変更されたかどうかを判定する。作成部54は、設定データ73に関連するデバイスの割り当てが変更されたことを検知すると、プロジェクトデータ70の変更を設定データ73に反映させる(例:R000→MR000)。これにより、ユーザは、設定データ73の再設定の作業負担を軽減されよう。
●Change of setting data 73 following change of project data 70 The creation unit 54 may change setting data 73 following change of project data 70. For example, although R000 has already been exemplified as the working relay, by changing the project data 70, another device (eg, MR000) may be assigned as the working relay. Therefore, the creation unit 54 compares the time stamp of the setting data 73 and the time stamp of the project data 70 to determine whether the project data 70 has been changed after the setting data 73 was saved. When the project data 70 is changed, the creation unit 54 further analyzes the project data 70 to determine whether the device assignment related to the setting data 73 has been changed. When the creation unit 54 detects that the assignment of devices related to the configuration data 73 has been changed, the creation unit 54 reflects the change in the project data 70 in the configuration data 73 (eg, R000→MR000). This will reduce the burden on the user of resetting the setting data 73.

図12はPC2のCPU11によって実現される機能を説明する図である。プロジェクト作成部50は、CPU11がプロジェクト編集プログラム14aを実行することで実現される機能である。プロジェクト作成部50は、制御プログラム作成部150、フロー・ダッシュボード作成部51および収集設定部57を備えている。プロジェクト作成部50は、操作部8を通じて入力されるユーザ指示にしたがってラダープログラム等のユーザプログラムを含むプロジェクトデータ70を作成する。 FIG. 12 is a diagram illustrating the functions realized by the CPU 11 of the PC 2. The project creation unit 50 is a function realized by the CPU 11 executing the project editing program 14a. The project creation section 50 includes a control program creation section 150, a flow/dashboard creation section 51, and a collection setting section 57. The project creation unit 50 creates project data 70 including user programs such as ladder programs in accordance with user instructions input through the operation unit 8.

制御プログラム作成部150は、操作部8を通じて入力されるユーザ指示にしたがって、CPU31で実行されるラダープログラム等の制御プログラム155を作成する。制御プログラム155はプロジェクトデータ70の一部として記憶装置12に格納される。 The control program creation unit 150 creates a control program 155 such as a ladder program to be executed by the CPU 31 in accordance with user instructions input through the operation unit 8 . Control program 155 is stored in storage device 12 as part of project data 70 .

フロー・ダッシュボード作成部51は、CPU11がフロー・ダッシュボード編集プログラム14bを実行することで実現される機能である。フロー・ダッシュボード作成部51は、アプリケーション選択部55および設定データ作成部56を備える。アプリケーション選択部55は、複数のアプリケーションから一つのアプリケーションをユーザが選択することを支援する選択画面を表示部7に表示し、ユーザによるアプリケーションの選択を受け付ける。アプリケーションとしては、監視対象であるデバイスや変数をリアルタイムに監視するリアルタイム監視アプリケーションと、PLC1の運転状態を再現するための運転記録を分析する運転記録分析アプリケーションなどが存在してもよい。 The flow dashboard creation unit 51 is a function realized by the CPU 11 executing the flow dashboard editing program 14b. The flow dashboard creation section 51 includes an application selection section 55 and a setting data creation section 56. The application selection unit 55 displays a selection screen on the display unit 7 to assist the user in selecting one application from a plurality of applications, and accepts the selection of the application by the user. Examples of the applications include a real-time monitoring application that monitors devices and variables to be monitored in real time, and a driving record analysis application that analyzes driving records to reproduce the operating state of the PLC 1.

リアルタイム監視アプリケーションとして、以下のものが存在してもよい。
(1)波形監視: あらかじめ設定された上限値から下限値までの範囲内で振幅が変化する波形(監視対象波形)が監視される
(2)タイミング監視: 監視対象のビットデバイスのONおよび/またはOFFのタイミングが監視される
(3)カメラ監視: 監視対象のカメラ画像の特徴量データがあらかじめ設定された検知条件を満たすかどうかが監視される
(4)サイクル監視: サイクル動作とは、複数の工程を一サイクルごとに繰り返し実行することをいう。サイクル監視では、サイクル動作を構成する複数の工程それぞれの開始タイミングを示すビットデバイスと終了タイミングを示すビットデバイスとが監視対象デバイスとして設定される。サイクル全体動作の開始から終了までの時間間隔と、一サイクル内の各工程の開始から終了までの時間間隔とが監視される。サイクル全体動作とは、一サイクルの全体を指す。
The following real-time monitoring applications may exist:
(1) Waveform monitoring: A waveform (monitored waveform) whose amplitude changes within the range from the upper limit value to the lower limit value set in advance is monitored (2) Timing monitoring: The bit device to be monitored is turned on and/or OFF timing is monitored (3) Camera monitoring: It is monitored whether the feature amount data of the camera image to be monitored satisfies preset detection conditions (4) Cycle monitoring: Cycle operation refers to multiple It refers to repeating a process in each cycle. In cycle monitoring, a bit device indicating the start timing and a bit device indicating the end timing of each of a plurality of processes constituting a cycle operation is set as a monitored device. The time interval from the start to the end of the entire cycle operation and the time interval from the start to the end of each step within one cycle are monitored. The entire cycle operation refers to the entire cycle.

設定データ作成部56は、ユーザにより選択されたアプリケーションに関連付けられているデータ活用プログラムに関するパラメータやダッシュボードの表示設定に関するパラメータを含むアプリケーション設定データ154をユーザ指示に従い作成する。このパラメータとしては、監視対象のデバイスまたは変数、監視項目名(例:工程の名称)、各監視対象に対する監視条件や、解析対象のファイル、解析対象のデバイス、解析対象期間、表示対象、表示部品の名称、単位、などである。設定データ作成部56は、ユーザにより選択されたダッシュボードを表示するためのテンプレートを、ダッシュボードテンプレート151から設定データ73のダッシュボードテンプレート151aとして抽出する。ダッシュボードテンプレート151は、ダッシュボードを実現するための様々な表示部品(グラフモジュール)を有している。設定データ作成部56は、ユーザにより選択されたダッシュボードにデータを表示するために必要となるデータ処理を実行するデータ活用プログラムのテンプレートを、活用プログラムテンプレート152から設定データ73の活用プログラムテンプレート152aとして抽出する。活用プログラムテンプレート152は、データ処理を実行するための演算部品(プログラムモジュール)を有している。設定データ作成部56は、ダッシュボードのテンプレート、データ活用プログラムのテンプレート、これらのテンプレートに設定されるアプリケーション設定データ154を含む設定データ73を作成し、記憶装置12に格納する。なお、設定データ作成部56は、収集対象のデバイスまたは変数、収集条件等を含む収集設定データ153を作成してもよい。 The setting data creation unit 56 creates application setting data 154 including parameters related to the data utilization program associated with the application selected by the user and parameters related to dashboard display settings in accordance with user instructions. These parameters include the device or variable to be monitored, the name of the monitored item (e.g. process name), the monitoring conditions for each monitoring target, the file to be analyzed, the device to be analyzed, the period to be analyzed, the display target, and the display component. name, unit, etc. The setting data creation unit 56 extracts a template for displaying the dashboard selected by the user from the dashboard template 151 as the dashboard template 151a of the setting data 73. The dashboard template 151 has various display components (graph modules) for realizing a dashboard. The configuration data creation unit 56 creates a template for a data utilization program that executes data processing necessary for displaying data on the dashboard selected by the user, from the utilization program template 152 as the utilization program template 152a of the configuration data 73. Extract. The utilization program template 152 has calculation components (program modules) for executing data processing. The configuration data creation unit 56 creates configuration data 73 including a dashboard template, a data utilization program template, and application configuration data 154 set in these templates, and stores it in the storage device 12 . Note that the setting data creation unit 56 may create collection setting data 153 that includes devices or variables to be collected, collection conditions, and the like.

収集設定部57は、ユーザ指示にしたがって、デバイスや変数の収集動作を定義する。さらに、収集設定部57は、収集対象のデバイスまたは変数、収集条件等を含む収集設定データ153を作成する。収集設定データ153は設定データ73に含まれてもよい。 The collection setting unit 57 defines collection operations for devices and variables according to user instructions. Furthermore, the collection setting unit 57 creates collection setting data 153 including devices or variables to be collected, collection conditions, and the like. Collection setting data 153 may be included in setting data 73.

転送部60は、プロジェクトデータ70を基本ユニット3に転送したり、設定データ73を拡張ユニット4aに転送したりする。Webブラウザ61は、CPU11がWebブラウザプログラム14dを実行することで実現される機能である。 The transfer unit 60 transfers the project data 70 to the basic unit 3 and the setting data 73 to the expansion unit 4a. The web browser 61 is a function realized by the CPU 11 executing the web browser program 14d.

図13はPC2aのCPU11が実行する設定処理を示すフローチャートである。CPU11はフロー・ダッシュボード編集プログラム14bにしたがって以下の処理を実行する。 FIG. 13 is a flowchart showing the setting process executed by the CPU 11 of the PC 2a. The CPU 11 executes the following processing according to the flow dashboard editing program 14b.

S21でCPU11(アプリケーション選択部55)はアプリケーションの選択画面を表示部7に表示する。アプリケーション選択部55は、リアルタイム監視アプリケーションや運転記録分析アプリケーションの選択画面を表示部7に表示する。なお、すでに設定データ73が存在する場合、以下の処理は、再設定処理に相当する。 In S21, the CPU 11 (application selection unit 55) displays an application selection screen on the display unit 7. The application selection unit 55 displays a selection screen for a real-time monitoring application or a driving record analysis application on the display unit 7. Note that if the setting data 73 already exists, the following process corresponds to a resetting process.

S22でCPU11(アプリケーション選択部55)はアプリケーションの選択を受け付ける。アプリケーション選択部55は、ポインタ等により選択画面におけるどの選択ボタンが押し下げられたかを認識する。複数のアプリケーションのそれぞれには選択ボタンが関連付けられている。つまり、アプリケーション選択部55は、押された選択ボタンに対応するアプリケーションを認識する。 In S22, the CPU 11 (application selection unit 55) accepts the selection of an application. The application selection unit 55 recognizes which selection button on the selection screen is pressed using a pointer or the like. A selection button is associated with each of the plurality of applications. That is, the application selection unit 55 recognizes the application corresponding to the pressed selection button.

S23でCPU11(設定データ作成部56)は選択されたアプリケーションに対応するアプリケーション設定データ154(設定項目)の設定画面を表示部7に表示する。図14はサイクル監視についてのアプリケーション設定データの設定画面である設定ウィザード161を例示している。図14において、監視チェックボックス162aは、監視対象としてユーザにより選択されたことを示すチェックを付与されるチェックボックスである。各入力欄162b~162fは、それぞれ項目名、開始条件、終了条件、注意値、警報値が入力される入力欄である。項目名とは工程に付与される名称である。開始条件とは、各工程の開始条件となる信号(リレーデバイスまたは変数)の変化(立下り/立ち上がり)である。終了条件とは、各工程の終了条件となる信号(リレーデバイスまたは変数)の変化(立下り/立ち上がり)である。注意値とは、注意状態として定義される上限値と下限値である。警報値とは、警報状態として定義される上限値と下限値である。上限値および下限値は閾値と呼ばれてもよい。サイクル内の各工程と設定入力行163とが対応しており、設定入力行163ごとに監視項目が設定される。開始条件および終了条件は、サイクル内における各工程の開始タイミングや終了タイミングを規定するデバイスや変数により設定されるものであり、各タイミングを規定するデバイスや変数およびタイミングを規定する条件が開始条件および終了条件として設定される。タイミングを規定する条件とは、たとえば、立ち上がりタイミングである。注意値および警告値は、それぞれ上限値および/または下限値により設定される。対応するチェックボックスにチェックが付与されると、設定された閾値が有効状態となる。OKボタン164は、ユーザが設定完了を指示するためのボタンである。キャンセルボタン165はユーザにより入力された設定変更をキャンセルすることを指示するボタンである。 In S23, the CPU 11 (setting data creation section 56) displays a setting screen of application setting data 154 (setting items) corresponding to the selected application on the display section 7. FIG. 14 illustrates a setting wizard 161 that is a setting screen for application setting data regarding cycle monitoring. In FIG. 14, the monitoring checkbox 162a is a checkbox that is checked to indicate that it has been selected by the user as a monitoring target. Each of the input fields 162b to 162f is an input field into which an item name, start condition, end condition, caution value, and alarm value are input, respectively. The item name is the name given to the process. The start condition is a change (fall/rise) in a signal (relay device or variable) that is a start condition for each process. The end condition is a change (fall/rise) in a signal (relay device or variable) that is the end condition for each process. The caution value is an upper limit value and a lower limit value defined as a caution state. The alarm value is an upper limit value and a lower limit value defined as an alarm state. The upper limit value and the lower limit value may be called threshold values. Each process in the cycle corresponds to a setting input line 163, and monitoring items are set for each setting input line 163. Start conditions and end conditions are set by devices and variables that define the start and end timings of each process in a cycle, and the devices and variables that define each timing and the conditions that define timing are set by the start conditions and variables. Set as a termination condition. The condition that defines the timing is, for example, the rise timing. The caution value and the warning value are set by an upper limit value and/or a lower limit value, respectively. When the corresponding checkbox is checked, the set threshold becomes valid. The OK button 164 is a button for the user to instruct to complete the settings. The cancel button 165 is a button for instructing to cancel the setting change input by the user.

S24でCPU11(設定データ作成部56)は、設定ウィザード161を通じて入力されたアプリケーション設定データ154の指定を受け付ける。たとえば、設定データ作成部56は、各設定項目の設定入力を受け付ける。 In S24, the CPU 11 (setting data creation unit 56) accepts the designation of the application setting data 154 input through the setting wizard 161. For example, the setting data creation unit 56 receives setting input for each setting item.

S25でCPU11(収集設定部57)は、データ収集の設定画面を表示部7に表示する。S26でCPU11(収集設定部57)は、データ収集の設定画面を通じて入力された収集対象のデバイスや変数および収集条件などの収集設定データ153の指定(設定入力)を受け付ける。なお、アプリケーション設定データ154により収集設定データ153が設定される場合は、S25およびS26は必ずしも必要ではない。 In S25, the CPU 11 (collection setting section 57) displays a data collection setting screen on the display section 7. In S26, the CPU 11 (collection setting unit 57) accepts the designation (setting input) of collection setting data 153 such as collection target devices, variables, and collection conditions input through the data collection setting screen. Note that if the collection setting data 153 is set by the application setting data 154, S25 and S26 are not necessarily necessary.

S27でCPU11(設定データ作成部56)は、選択されたダッシュボードのテンプレート151a、当該ダッシュボードに対応するデータ活用プログラムのテンプレート152a、ユーザにより入力されたアプリケーション設定データ154および収集設定データ153を含む設定データ73を作成する。 In S27, the CPU 11 (setting data creation unit 56) creates a template that includes the selected dashboard template 151a, the data utilization program template 152a corresponding to the dashboard, the application setting data 154 input by the user, and the collection setting data 153. Setting data 73 is created.

S28でCPU11(設定データ作成部56)は、設定データ73を記憶装置12に保存する。CPU11(設定データ作成部56)は、制御プログラム155を有するプロジェクトデータ70の一部としてダッシュボードテンプレート151a、活用プログラムテンプレート152a、収集設定データ153およびアプリケーション設定データ154を含む設定データ73を保存してもよい。CPU11(転送部60)はプロジェクトデータ70の一部として設定データ73を拡張ユニット4aに転送する。これにより拡張ユニット4aのメモリ42aのROM領域に設定データ73が書き込まれる。プロジェクトデータ70の一部であるアプリケーション設定データ154を用いて選択されたアプリケーションの設定をするため、PLC1からプロジェクトデータ70が読み出されることがある。この際に、制御プログラム155やデータ活用プログラムとともにアプリケーション設定データ154も読み出されてもよい。PC2aにおいて、PC2aに保存されたアプリケーション設定データ154とPLC1に保存されたアプリケーション設定データ154とを照合し、照合結果を表示するようにしてもよい。このため、たとえば、PLC1に書き込まれたアプリケーション設定データ154がPLC1において書き換えられた後、再びPLC1からPC2aへ読み出されると、PC2aにおいて、書き換え後のアプリケーション設定データ154が確認されてもよい。 In S28, the CPU 11 (setting data creation unit 56) stores the setting data 73 in the storage device 12. The CPU 11 (setting data creation unit 56) saves setting data 73 including a dashboard template 151a, a utilization program template 152a, collection setting data 153, and application setting data 154 as part of project data 70 having a control program 155. Good too. The CPU 11 (transfer unit 60) transfers the setting data 73 as part of the project data 70 to the expansion unit 4a. As a result, the setting data 73 is written to the ROM area of the memory 42a of the expansion unit 4a. The project data 70 may be read from the PLC 1 in order to set the selected application using the application setting data 154 that is part of the project data 70. At this time, the application setting data 154 may also be read out together with the control program 155 and the data utilization program. In the PC 2a, the application setting data 154 stored in the PC 2a and the application setting data 154 stored in the PLC 1 may be compared, and the comparison result may be displayed. Therefore, for example, when the application setting data 154 written in the PLC 1 is rewritten in the PLC 1 and then read out from the PLC 1 to the PC 2a again, the rewritten application setting data 154 may be confirmed in the PC 2a.

図15はリアルタイム監視アプリケーション用のダッシュボード171の一例を示している。図15において動作状態表示172は、リアルタイム監視の動作状態を示すものである。表示切替タブ173は、アプリケーションに対して複数のダッシュボードが設定されている場合に、アプリケーションに対応する他のダッシュボードに切り替えるためのタブボタン表示である。図15ではモニタボタンが押された状態が示されている。この状態で、トレンドタブが押されると、ダッシュボードは、トレンド表示のダッシュボードに切り替わる。履歴タブが押されると、ダッシュボードは、履歴表示のダッシュボードに切り替わる。各表示欄174a~174gには、監視項目ごとに、項目名、余裕度、測定値、注意値、警報値、判定結果および測定値に関連するグラフが表示される。項目名、注意値、警報値は、アプリケーション設定データ154に基づき表示される。測定値は、アプリケーション設定データ154の開始条件および終了条件に基づいて決定される開始タイミングから終了タイミングまでの時間幅を示している。余裕度は、監視項目の測定値がどの程度余裕があるかを示す。たとえば、余裕度は、警報値や注意値に対し測定値がどの程度余裕があるかを示してもよい。判定結果は、測定値と有効な警報値または注意値に基づき求められた判定結果である。判定結果は、正常、注意、警報等の監視対象の状態区分を示してもよい。なお、最新の測定値に基づく判定結果が正常であったとしても、過去において、判定結果が、一旦、注意や警告の状態になっている場合がある。この場合は、過去から現在までの所定の判定期間において、警戒度のより高い状態が維持されてもよい。判定表示欄174fのクリアボタンを押すことで、最新の判定結果に更新されるようにしてもよい。測定値に関連するグラフは、測定値を視覚化したものである。たとえば、開始タイミングから終了タイミングまでの時間幅を示す棒グラフが表示されてもよい。注意値、および警報値に対応する線が、注意値、および警報値に対応する位置に表示されてもよい。たとえば、グラフ表示欄174gの閾値線表示チェックボックスがチェックされると、有効な注意値および警報値に対応する閾値線が表示される。グラフ表示欄174gの設定ボタンが押されると、アプリケーションに対応する他のダッシュボードうち設定ダッシュボードが表示される。 FIG. 15 shows an example of a dashboard 171 for a real-time monitoring application. In FIG. 15, an operating state display 172 indicates the operating state of real-time monitoring. The display switching tab 173 is a tab button display for switching to another dashboard corresponding to the application when a plurality of dashboards are set for the application. FIG. 15 shows a state in which the monitor button is pressed. In this state, when the trend tab is pressed, the dashboard switches to a trend display dashboard. When the history tab is pressed, the dashboard switches to a history display dashboard. Each of the display columns 174a to 174g displays, for each monitoring item, an item name, a margin, a measured value, a caution value, an alarm value, a determination result, and a graph related to the measured value. The item name, caution value, and alarm value are displayed based on the application setting data 154. The measured value indicates the time width from the start timing to the end timing determined based on the start condition and end condition of the application setting data 154. The degree of margin indicates how much margin there is for the measured value of the monitoring item. For example, the degree of margin may indicate how much margin the measured value has relative to the alarm value or caution value. The determination result is a determination result obtained based on the measured value and the valid alarm value or caution value. The determination result may indicate a status classification of the monitoring target, such as normal, caution, and alarm. Note that even if the determination result based on the latest measured value is normal, the determination result may have once been in a caution or warning state in the past. In this case, a state with a higher degree of vigilance may be maintained during a predetermined determination period from the past to the present. The latest determination result may be updated by pressing a clear button in the determination display field 174f. The graph associated with the measured value is a visualization of the measured value. For example, a bar graph indicating the time range from the start timing to the end timing may be displayed. Lines corresponding to the caution value and the alarm value may be displayed at positions corresponding to the caution value and the alarm value. For example, when the threshold line display checkbox in the graph display field 174g is checked, threshold lines corresponding to valid caution values and alarm values are displayed. When the settings button in the graph display field 174g is pressed, the settings dashboard among the other dashboards corresponding to the application is displayed.

図16はリアルタイム監視アプリケーション用の設定ダッシュボード181の一例を示している。図15におけるグラフ表示欄174gの設定ボタンが押されると、設定ダッシュボード181が表示される。図16において動作状態表示182は、リアルタイム監視の動作状態を示すものである。監視状態切換スイッチ183は、リアルタイム監視を監視状態と非監視状態との間で切り換えるためのスイッチである。閾値一括設定ボタン184は、監視項目ごとに設けられた複数の閾値を一括で設定するための設定画面に移行するためのボタンである。各入力欄185a~185fには、監視項目ごとに、監視チェックボックス、項目名、開始条件、終了条件、注意値、警報値が表示される。図2におけるプロジェクトデータ15のアプリケーション設定データを設定するための設定ウィザードと対応する入力欄が設けられてもよい。追加ボタン186aが押されると、新規の監視項目を入力するための入力行が追加される。削除ボタン186bが押されると、予め上下ボタン186cで選択されていた入力行が削除される。設定反映ボタン187が押されると、更新された設定内容をアプリケーション設定データ(表示設定62)に反映される。続いて、更新されたアプリケーション設定データ(表示設定62)に基づくリアルタイム監視アプリケーション用のダッシュボード171が表示される。キャンセルボタン188が押されると、更新された設定内容がアプリケーション設定データ(表示設定62)に反映されることなく、アプリケーション設定データ(表示設定62)に基づくリアルタイム監視アプリケーション用のダッシュボード171が表示される。 FIG. 16 shows an example of a configuration dashboard 181 for a real-time monitoring application. When the settings button in the graph display field 174g in FIG. 15 is pressed, a settings dashboard 181 is displayed. In FIG. 16, an operating state display 182 indicates the operating state of real-time monitoring. The monitoring state changeover switch 183 is a switch for switching real-time monitoring between a monitoring state and a non-monitoring state. The collective threshold setting button 184 is a button for moving to a setting screen for collectively setting a plurality of threshold values provided for each monitoring item. In each input field 185a to 185f, a monitoring check box, item name, start condition, end condition, caution value, and alarm value are displayed for each monitoring item. An input field corresponding to a setting wizard for setting application setting data of the project data 15 in FIG. 2 may be provided. When the add button 186a is pressed, an input line for inputting a new monitoring item is added. When the delete button 186b is pressed, the input line previously selected with the up/down button 186c is deleted. When the settings reflection button 187 is pressed, the updated settings are reflected in the application settings data (display settings 62). Subsequently, a dashboard 171 for the real-time monitoring application is displayed based on the updated application setting data (display settings 62). When the cancel button 188 is pressed, the dashboard 171 for the real-time monitoring application based on the application setting data (display settings 62) is displayed without the updated settings being reflected in the application setting data (display settings 62). Ru.

図17は拡張ユニット4aのCPU41aにより実行されるリアルタイム監視処理のデータ活用プログラムの実行とダッシュボードの提供とを示すフローチャートである。 FIG. 17 is a flowchart showing the execution of the data utilization program of the real-time monitoring process executed by the CPU 41a of the expansion unit 4a and the provision of a dashboard.

S41でCPU41a(フロー実行部81の収集部82)は設定データ73のアプリケーション設定データ154に従い開始信号および終了信号に対応するデバイスまたは変数を監視する。アプリケーション設定データ154は、開始信号として利用されるデバイスまたは変数の名称と、デバイスまたは変数に格納される所定値とを保持している。当該デバイスまたは変数の値が所定値に変化したタイミングが開始タイミングである。図16に示されたように、デバイスまたは変数の変化が立ち上がりエッジまたは立下りエッジであることが開始条件として設定されてもよい。終了信号についても同様である。活用プログラムテンプレート152aに基づくデータ活用プログラムを実行することによってアプリケーション設定データ154により指定される収集対象のデバイス値が収集され、収集されたデータ75がメモリ42に格納される。ここで、収集されたデータ75は、異なる時刻に収集された時系列データであってもよい。データ活用プログラムとは別に、収集設定データ153に従い収集動作を実行する収集プログラムが備えられていてもよい。この場合、アプリケーション設定データ154に従い収集設定データ153が設定され、設定された収集設定データ153により指定される収集対象のデバイス値が収集され、収集されたデータ75がメモリ42に格納される。 In S41, the CPU 41a (collection unit 82 of the flow execution unit 81) monitors devices or variables corresponding to the start signal and the end signal according to the application setting data 154 of the setting data 73. The application setting data 154 holds the name of a device or variable used as a start signal and a predetermined value stored in the device or variable. The timing at which the value of the device or variable changes to a predetermined value is the start timing. As shown in FIG. 16, it may be set as a start condition that the change in a device or variable is a rising edge or a falling edge. The same applies to the end signal. By executing the data utilization program based on the utilization program template 152a, the device values to be collected specified by the application setting data 154 are collected, and the collected data 75 is stored in the memory 42. Here, the collected data 75 may be time series data collected at different times. Separately from the data utilization program, a collection program that executes collection operations according to the collection setting data 153 may be provided. In this case, the collection setting data 153 is set according to the application setting data 154, the device values to be collected specified by the set collection setting data 153 are collected, and the collected data 75 is stored in the memory 42.

S42でCPU41a(データ処理部83)は設定データ73により指定されたデータ活用プログラムにしたがって収集されたデータ75(デバイス値)に基づいて開始信号の条件を満たすタイミングから終了信号の条件を満たすタイミングまでの時間情報を決定する。CPU41a(データ処理部83)は、図14における開始条件162cや図16における開始条件185cに従い、監視対象として設定されたデバイスや変数が立ち上がりエッジ等の検知条件を満たすかを監視する。ここでは、検知条件を満たすタイミング、つまり開始信号の条件を満たすタイミングが監視される。CPU41a(データ処理部83)は、同様に、図14における終了条件162dや図16における終了条件185dに従い、監視対象として設定されたデバイスや変数が立ち上がりエッジ等の検知条件を満たすかを監視する。ここでは、検知条件を満たすタイミング、つまり終了信号の条件を満たすタイミングが監視される。CPU41a(データ処理部83)により決定される時間情報は、開始信号の条件を満たすタイミングから終了信号の条件を満たすタイミングまでの時間幅であってもよい。 In S42, the CPU 41a (data processing unit 83) performs processing from the timing when the start signal condition is satisfied to the end signal condition based on the data 75 (device value) collected according to the data utilization program specified by the setting data 73. Determine the time information of. The CPU 41a (data processing unit 83) monitors whether the device or variable set as a monitoring target satisfies a detection condition such as a rising edge, according to the start condition 162c in FIG. 14 or the start condition 185c in FIG. 16. Here, the timing that satisfies the detection condition, that is, the timing that satisfies the start signal condition, is monitored. Similarly, the CPU 41a (data processing unit 83) monitors whether the device or variable set as a monitoring target satisfies a detection condition such as a rising edge, according to the termination condition 162d in FIG. 14 or the termination condition 185d in FIG. 16. Here, the timing that satisfies the detection condition, that is, the timing that satisfies the end signal condition, is monitored. The time information determined by the CPU 41a (data processing unit 83) may be the time width from the timing that satisfies the conditions of the start signal to the timing that satisfies the conditions of the end signal.

S43でCPU41a(データ処理部83)はS42で決定された時間情報とアプリケーション設定データ154に従い設定された判定閾値に基づいて状態を判定する。判定閾値として注意値や警報値の上限値および下限値が設定されている場合がある。この場合、CPU41a(データ処理部83)は、測定値である決定された時間情報が上限値を上回るか否かを判定する。また、CPU41a(データ処理部83)は、決定された時間情報が下限値を下回るか否かを判定する。アプリケーション設定データ154は、各上限値や各下限値を判定閾値として使用するか否かを示すフラグを含んでいてもよい。この場合、CPU41a(データ処理部83)は、アプリケーション設定データ154に含まれるフラグに基づいて、測定値である決定した時間情報と各上限値や各下限値と比較することで、監視対象の状態を判定する。このフラグの値はチェックボックスなどのUIを通じてユーザにより設定されうる。監視対象の状態としては、正常、注意、警報が含まれてもよい。正常状態に対する測定値の乖離度に基づき注意状態と警報状態とが区別される。正常状態の測定値(正常値)と警報状態の測定値(警報値)との差は、正常状態の測定値と注意状態の測定値(注意値)との差よりも大きい。よって、警報値には、注意値よりも正常値から乖離した値が設定される。注意値と警報値とがそれぞれ上限値として設定される場合がある。この場合、CPU41a(データ処理部83)は、決定された時間情報が注意値以下であるときに監視対象の状態を「正常」と判定する。CPU41a(データ処理部83)は、決定された時間情報が注意値を超え、かつ、警報値以下であるときに監視対象の状態を「注意」と判定する。CPU41a(データ処理部83)は、決定された時間情報が警報値を超えるときに、監視対象の状態を「警報」と判定する。これにより、解析されたデータ76が作成され、メモリ42aに保存される。 In S43, the CPU 41a (data processing unit 83) determines the state based on the time information determined in S42 and the determination threshold set according to the application setting data 154. Upper and lower limit values of a caution value or an alarm value may be set as determination threshold values. In this case, the CPU 41a (data processing unit 83) determines whether the determined time information, which is the measured value, exceeds the upper limit value. Further, the CPU 41a (data processing unit 83) determines whether or not the determined time information is below a lower limit value. The application setting data 154 may include a flag indicating whether each upper limit value or each lower limit value is used as a determination threshold value. In this case, the CPU 41a (data processing unit 83) compares the determined time information, which is a measured value, with each upper limit value and each lower limit value based on the flag included in the application setting data 154, thereby determining the state of the monitored target. Determine. The value of this flag can be set by the user through a UI such as a checkbox. The status to be monitored may include normal, caution, and alarm. A caution state and an alarm state are distinguished based on the degree of deviation of the measured value from the normal state. The difference between the measured value in the normal state (normal value) and the measured value in the alarm state (alarm value) is larger than the difference between the measured value in the normal state and the measured value in the caution state (warning value). Therefore, the alarm value is set to a value that deviates from the normal value more than the caution value. A caution value and a warning value may each be set as an upper limit value. In this case, the CPU 41a (data processing unit 83) determines the state of the monitoring target to be "normal" when the determined time information is less than or equal to the caution value. The CPU 41a (data processing unit 83) determines the state of the monitoring target to be "caution" when the determined time information exceeds the caution value and is less than or equal to the alarm value. When the determined time information exceeds the alarm value, the CPU 41a (data processing unit 83) determines that the state of the monitoring target is "alarm". As a result, analyzed data 76 is created and stored in the memory 42a.

注意値と警報値とがそれぞれ下限値として設定される場合がある。この場合、CPU41a(データ処理部83)は、決定された時間情報が注意値以上であるときに、監視対象の状態を「正常」と判定する。CPU41a(データ処理部83)は、決定された時間情報が注意値未満となり、かつ、警報値以上であるときに監視対象の状態を「注意」と判定する。CPU41a(データ処理部83)は、決定された時間情報が警報値未満であるときに、監視対象の状態を「警報」と判定する。これにより、解析されたデータが作成され、メモリに保存される。 A caution value and an alarm value may each be set as a lower limit value. In this case, the CPU 41a (data processing unit 83) determines the state of the monitoring target to be "normal" when the determined time information is equal to or greater than the caution value. The CPU 41a (data processing unit 83) determines the state of the monitoring target to be "caution" when the determined time information is less than the warning value and greater than or equal to the warning value. When the determined time information is less than the alarm value, the CPU 41a (data processing unit 83) determines that the state of the monitoring target is "alarm". This creates analyzed data and stores it in memory.

注意値と警報値とがそれぞれ上限値および下限値により設定される場合がある。この場合、CPU41a(データ処理部83)は、決定された時間情報が下限注意値以上でありかつ、決定された時間情報が上限注意値以下であるときに、監視対象の状態を「正常」と判定する。CPU41a(データ処理部83)は、決定された時間情報が上限警報値未満となり、かつ、上限注意値以上であるときに監視対象の状態を「注意」と判定する。
同様に、CPU41a(データ処理部83)は、決定された時間情報が下限注意値未満となり、かつ、下限警報値以上であるときに監視対象の状態を「注意」と判定する。
CPU41a(データ処理部83)は、決定された時間情報が下限警報値未満であるか、または、決定された時間情報が上限警報値を超えているときに、監視対象の状態を「警報」と判定する。これにより、解析されたデータが作成され、メモリに保存される。
The caution value and the alarm value may be set by an upper limit value and a lower limit value, respectively. In this case, the CPU 41a (data processing unit 83) determines that the state of the monitored object is "normal" when the determined time information is equal to or greater than the lower limit caution value and the determined time information is equal to or less than the upper limit caution value. judge. The CPU 41a (data processing unit 83) determines the state of the monitoring target to be "caution" when the determined time information is less than the upper limit alarm value and greater than or equal to the upper limit caution value.
Similarly, the CPU 41a (data processing unit 83) determines the state of the monitoring target to be "caution" when the determined time information is less than the lower limit warning value and greater than or equal to the lower limit warning value.
The CPU 41a (data processing unit 83) sets the state of the monitored object to "alarm" when the determined time information is less than the lower limit alarm value or when the determined time information exceeds the upper limit alarm value. judge. This creates analyzed data and stores it in memory.

CPU41a(データ処理部83)は、警報値や注意値に対し測定値がどの程度余裕があるかを示す余裕度を算出してもよい。余裕度は、たとえば、十分余裕のある状態であるときに100とし、注意状態であるときに50、警報状態であるときに0となるように定義されてもよい。このように、注意値と測定値との距離(差分)に応じて段階的に値が変わるように余裕度が定義されてもよい。余裕度は、解析されたデータ76として、メモリ42aに保存される。CPU41a(データ処理部83)は、測定値が警報値を超えた場合に、測定値が警報値を超えたことを示す信号を生成してもよい。たとえば、CPU41a(データ処理部83)は、測定値が警報値を超えた場合に、測定値が警報値を超えたことを示すデバイスまたは変数の値を変化させる。測定値が警報値を超えたことを示すデバイスまたは変数がトリガとして割り当てられてもよい。たとえば、これはロギングの保存トリガに割り当てられてもよい。これにより、警報が発生したタイミングを基準としてPLC1の運転記録等が保存される。 The CPU 41a (data processing unit 83) may calculate a margin indicating how much margin the measured value has with respect to the alarm value or caution value. The degree of margin may be defined, for example, as 100 when the vehicle is in a state with sufficient margin, 50 when the vehicle is in the caution state, and 0 when the vehicle is in the warning state. In this way, the degree of margin may be defined such that the value changes in stages according to the distance (difference) between the caution value and the measured value. The margin is stored as analyzed data 76 in the memory 42a. When the measured value exceeds the alarm value, the CPU 41a (data processing unit 83) may generate a signal indicating that the measured value exceeds the alarm value. For example, when the measured value exceeds the alarm value, the CPU 41a (data processing unit 83) changes the value of a device or variable indicating that the measured value exceeds the alarm value. A device or variable indicating that a measured value exceeds an alarm value may be assigned as a trigger. For example, this may be assigned to a logging save trigger. As a result, the operation record of the PLC 1 and the like are saved based on the timing at which the alarm occurs.

S44でCPU41a(表示処理部84)はS42で決定した時間情報、判定閾値、S43で判定された監視対象の状態を含むダッシュボード171のソースデータを生成する。CPU41a(表示処理部84)は設定データ73のダッシュボードテンプレート151aに基づいて決定した時間情報、判定閾値、判定した監視対象の状態をダッシュボードテンプレート151aに割り当てられた変数に反映する。たとえば、CPU41a(表示処理部84)は、図15におけるグラフ表示欄174gに、開始信号の条件を満たすタイミングから終了信号の条件を満たすタイミングまでの時間幅を示す測定値が棒グラフの形式で表示されるように表示データを作成する。このとき、開始信号の条件を満たすタイミングから終了信号の条件を満たすタイミングまでの時間が帯状に表示されてもよい。これにより、時間幅だけでなく、サイクル動作の制御において各監視対象がサイクル内のどのタイミングで動作しているかを示すダッシュボードが表示される。たとえば、グラフ表示欄174gの右端から左端が監視対象の一サイクルに相当してもよい。帯(棒グラフの棒)の開始位置は、一サイクルにおける開始信号の条件が満たされたタイミングに相当する。帯の終了位置は、一サイクルにおける終了信号の条件が満たされたタイミングに相当する。よって、帯の長さは時間幅を示す。 In S44, the CPU 41a (display processing unit 84) generates source data for the dashboard 171 including the time information determined in S42, the determination threshold, and the state of the monitoring target determined in S43. The CPU 41a (display processing unit 84) reflects the time information, determination threshold, and determined state of the monitoring target determined based on the dashboard template 151a of the setting data 73 in variables assigned to the dashboard template 151a. For example, the CPU 41a (display processing unit 84) displays, in the graph display field 174g in FIG. 15, a measured value indicating the time width from the timing when the start signal condition is met to the end signal condition satisfaction in the form of a bar graph. Create display data so that At this time, the time from the timing that satisfies the conditions of the start signal to the timing that satisfies the conditions of the end signal may be displayed in a band shape. As a result, a dashboard is displayed that shows not only the time width but also at what timing within the cycle each monitoring target is operating in the cycle operation control. For example, the range from the right end to the left end of the graph display field 174g may correspond to one cycle to be monitored. The start position of the band (bar in the bar graph) corresponds to the timing at which the start signal condition in one cycle is satisfied. The end position of the band corresponds to the timing at which the conditions for the end signal in one cycle are satisfied. Therefore, the length of the band indicates the time width.

余裕度が測定値とともに表示されるようにしてもよい。CPU41a(表示処理部84)はダッシュボード171を表示するための表示データ(例:HTMLデータなど)をダッシュボードテンプレート151aに割り当てられた変数に基づいて作成する。CPU41a(表示処理部84)はダッシュボード171のベースとなる画面データと測定値や状態情報などの更新されるデータとを別に管理するようにしてもよい。この場合、CPU41a(表示処理部84)は、参照先のデバイスや変数が割り当てられた画面データと、参照先のデバイスや変数の値である表示対象データとを個別に管理する。CPU41aは、表示対象データを定期的に更新することで表示データを作成してもよい。表示処理部84は、収集されたデータ75および/または解析されたデータ76などの表示対象データを用いて表示データを作成する。 The degree of margin may be displayed together with the measured value. The CPU 41a (display processing unit 84) creates display data (eg, HTML data, etc.) for displaying the dashboard 171 based on variables assigned to the dashboard template 151a. The CPU 41a (display processing unit 84) may separately manage screen data that is the base of the dashboard 171 and updated data such as measured values and status information. In this case, the CPU 41a (display processing unit 84) separately manages screen data to which reference destination devices and variables are assigned, and display target data that are reference destination devices and variable values. The CPU 41a may create display data by periodically updating display target data. The display processing unit 84 creates display data using display target data such as collected data 75 and/or analyzed data 76.

S45でCPU41a(Webサーバ85)は表示データをPC2bに提供する。CPU41aは表示データをPLC1の表示器に表示してもよい。PLC1の表示器はPLC1に内蔵されていてもよいし、PLC1に対して有線たまは無線により接続されていてもよい。CPU41a(表示処理部84)が参照先のデバイスや変数が割り当てられた画面データと、参照先のデバイスや変数の値である表示対象データとを別々に管理する場合がある。この場合、CPU41a(Webサーバ85)は、ダッシュボード171の更新要求や更新スケジュールに応じて、表示データのうち画面データと、表示対象データとを選択的に提供する。ダッシュボード171の表示要求に応じてCPU41a(Webサーバ85)は画面データおよび表示対象データを含む表示データを提供する。ダッシュボード171の表示更新要求に応じてCPU41a(Webサーバ85)は更新された表示対象データを表示データとして選択的に提供する。 In S45, the CPU 41a (Web server 85) provides display data to the PC 2b. The CPU 41a may display the display data on the display of the PLC 1. The display device of the PLC 1 may be built into the PLC 1, or may be connected to the PLC 1 by wire or wirelessly. The CPU 41a (display processing unit 84) may separately manage screen data to which reference destination devices and variables are assigned, and display target data that are reference destination devices and variable values. In this case, the CPU 41a (Web server 85) selectively provides screen data and display target data among the display data in accordance with the update request and update schedule of the dashboard 171. In response to a display request for the dashboard 171, the CPU 41a (Web server 85) provides display data including screen data and display target data. In response to a display update request for the dashboard 171, the CPU 41a (Web server 85) selectively provides the updated display target data as display data.

図18はPC2aのCPU11が実行するリアルタイム監視のダッシュボードを介した設定処理を示すフローチャートを示している。 FIG. 18 shows a flowchart showing the setting process via the real-time monitoring dashboard executed by the CPU 11 of the PC 2a.

S51でCPU41a(表示処理部84)は設定用のダッシュボード181を表示する。たとえば、表示処理部84は、図16に示された設定用のダッシュボード181を表示するために表示データを作成し、CPU41a(Webサーバ85)は設定用のダッシュボード181を表示するための表示データをPC2bに提供する。 In S51, the CPU 41a (display processing unit 84) displays the dashboard 181 for settings. For example, the display processing unit 84 creates display data for displaying the settings dashboard 181 shown in FIG. Provide data to PC2b.

S52でCPU41a(設定部80)は監視対象の追加・削除・変更および/または判定閾値の設定のユーザ入力を受け付ける。CPU41a(設定部80)は追加ボタン186aが押されたことを検出すると、新規の監視対象を設定するための入力行を追加する。CPU41a(表示処理部84)は新規の監視対象を設定するための入力行が追加された設定用のダッシュボード181を表示するために表示データを作成する。CPU41a(Webサーバ85)は更新された設定用のダッシュボード181を表示するための表示データをPC2bに提供する。ここで設定部80はフロー実行部81に設けられ、データ活用プログラム実行の一部として設定を受け付けるようにしてもよい。CPU41a(設定部80)は削除ボタン186bが押されたことを検知すると選択された入力行を削除する。CPU41a(表示処理部84)は選択された入力行が削除された設定用のダッシュボード181を表示するために表示データを作成する。CPU41a(Webサーバ85)は更新された設定用のダッシュボード181を表示するための表示データをPC2bに提供する。この際、上下ボタン186cによる入力行への選択操作が表示されてもよい。CPU41a(設定部80)は各入力欄185a~185dへの変更入力を受け付けると、CPU41a(表示処理部84)は各入力欄185a~185dへの変更入力が反映された設定用のダッシュボード181を表示するために表示データを作成し、CPU41a(Webサーバ85)は更新された設定用のダッシュボード181を表示するための表示データをPC2bに提供する。CPU41a(設定部80)は判定閾値の各入力欄185e~185fへの変更入力を受け付けると、CPU41a(表示処理部84)は判定閾値の各入力欄185e~185fへの変更入力が反映された設定用のダッシュボード181を表示するために表示データを作成する。CPU41a(Webサーバ85)は更新された設定用のダッシュボード181を表示するための表示データをPC2bに提供する。 In S52, the CPU 41a (setting unit 80) accepts user input for adding, deleting, and changing monitoring targets and/or setting determination thresholds. When the CPU 41a (setting unit 80) detects that the add button 186a has been pressed, it adds an input line for setting a new monitoring target. The CPU 41a (display processing unit 84) creates display data in order to display the settings dashboard 181 to which input lines for setting new monitoring targets have been added. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the updated settings dashboard 181. Here, the setting section 80 may be provided in the flow execution section 81 and may accept settings as part of the execution of the data utilization program. When the CPU 41a (setting unit 80) detects that the delete button 186b has been pressed, it deletes the selected input line. The CPU 41a (display processing unit 84) creates display data to display the settings dashboard 181 from which the selected input row has been deleted. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the updated settings dashboard 181. At this time, a selection operation for the input line using the up and down buttons 186c may be displayed. When the CPU 41a (setting section 80) receives change inputs to each input field 185a to 185d, the CPU 41a (display processing section 84) displays a setting dashboard 181 in which the change input to each input field 185a to 185d is reflected. Display data is created for display, and the CPU 41a (Web server 85) provides the display data for displaying the updated setting dashboard 181 to the PC 2b. When the CPU 41a (setting section 80) accepts input changes to each of the input fields 185e to 185f for the determination threshold, the CPU 41a (display processing section 84) changes settings to reflect the input changes to the input fields 185e to 185f for the determination threshold. Display data is created to display the dashboard 181 for. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the updated settings dashboard 181.

S53でCPU41a(設定部80)はユーザ入力に従い、対応するアプリケーション設定データ154を更新する。CPU41a(設定部80)は設定反映ボタン187が押されたことを検出すると、更新された設定内容をアプリケーション設定データ154に反映する。一方、CPU41a(設定部80)はキャンセルボタン188が押されたことを検出すると、更新された設定内容をアプリケーション設定データ154に反映せず、更新された設定内容を破棄する。CPU41a(表示処理部84)は、更新された設定内容を反映することなく、アプリケーション設定データ154に基づくリアルタイム監視アプリケーション用のダッシュボード171を表示するために表示データを作成する。CPU41a(Webサーバ85)はリアルタイム監視アプリケーション用のダッシュボード171を表示するための表示データをPC2bに提供する。 In S53, the CPU 41a (setting section 80) updates the corresponding application setting data 154 according to the user input. When the CPU 41a (setting unit 80) detects that the setting reflection button 187 has been pressed, the CPU 41a (setting unit 80) reflects the updated setting contents in the application setting data 154. On the other hand, when the CPU 41a (setting unit 80) detects that the cancel button 188 has been pressed, the updated setting content is not reflected in the application setting data 154, and the updated setting content is discarded. The CPU 41a (display processing unit 84) creates display data in order to display the dashboard 171 for the real-time monitoring application based on the application setting data 154 without reflecting the updated settings. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the dashboard 171 for the real-time monitoring application.

S54でCPU41a(データ処理部83)はS53で更新されたアプリケーション設定データ154に従い、監視対象に関する決定した時間情報と設定された判定閾値とに基づいて監視対象の状態を判定する。CPU41a(データ処理部83)は更新されたアプリケーション設定データ154に従いS42と同様に決定された時間情報と、更新されたアプリケーション設定データ154に従い設定された判定閾値と、に基づいて監視対象の状態をS53と同様に判定する。 In S54, the CPU 41a (data processing unit 83) determines the state of the monitoring target based on the determined time information regarding the monitoring target and the set determination threshold according to the application setting data 154 updated in S53. The CPU 41a (data processing unit 83) determines the state of the monitoring target based on the time information determined in the same manner as S42 according to the updated application setting data 154 and the determination threshold set according to the updated application setting data 154. The determination is made in the same manner as in S53.

S55でCPU41a(表示処理部84)は更新されたアプリケーション設定データ154に従い決定された時間情報と更新されたアプリケーション設定データ154に従い設定された判定閾値と、S54で判定された監視対象の状態を図16に示された状態監視用のダッシュボードを表示するための表示データを作成する。CPU41a(Webサーバ85)は状態監視用のダッシュボード171を表示するための表示データをPC2bに提供する。 In S55, the CPU 41a (display processing unit 84) displays the time information determined according to the updated application setting data 154, the determination threshold set according to the updated application setting data 154, and the state of the monitoring target determined in S54. Display data for displaying the status monitoring dashboard shown in 16 is created. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the dashboard 171 for status monitoring.

図19は運転記録分析アプリケーション用のダッシュボード221の一例を示している。運転記録分析アプリケーション用のダッシュボード221は、カメラ画像再生ビュー222、発生状況時系列ビュー223、いつもと違うデバイスビュー224、および、いつもと違う波形ビュー225を有している。運転記録分析アプリケーションは、CPU41a(データ処理部83)により予め保存されたPLC1の運転記録を分析して、CPU41a(表示処理部84)によりいつもと違う動作のデバイスや変数を提示するものである。CPU41a(データ処理部83)は、正常時の運転記録を分析することにより監視対象毎に検出アルゴリズムや検出閾値を設定する。CPU41a(データ処理部83)は、分析対象の運転記録に対し、監視対象毎に設定された検出アルゴリズムおよび検出閾値を適用していつもと違う動作のデバイスや変数を決定する。運転記録分析アプリケーションは、たとえばいつもと違う動作のデバイスや変数を正常時との乖離度合いに応じてランク表示してもよい。たとえば、正常時の値に対して最も乖離している値を保持しているデバイスや変数が一番上に表示されたり、強調表示されたりしてもよい。 FIG. 19 shows an example of a dashboard 221 for a driving record analysis application. The dashboard 221 for the driving record analysis application has a camera image playback view 222, an occurrence time series view 223, an unusual device view 224, and an unusual waveform view 225. The driving record analysis application analyzes the driving record of the PLC 1 stored in advance by the CPU 41a (data processing unit 83), and presents devices and variables that operate differently than usual to the CPU 41a (display processing unit 84). The CPU 41a (data processing unit 83) sets a detection algorithm and a detection threshold for each monitoring target by analyzing driving records during normal times. The CPU 41a (data processing unit 83) applies a detection algorithm and a detection threshold value set for each monitoring target to the driving record to be analyzed, and determines devices and variables that operate abnormally. The driving record analysis application may, for example, rank devices and variables that operate differently than usual according to the degree of deviation from normal times. For example, the device or variable that holds the value that is most different from the normal value may be displayed at the top or highlighted.

PLC1の運転記録は、収集対象と保存条件とを定義する収集設定データ153に従い収集された収集対象のデバイスや変数を、保存条件に従いPLC1内の基本ユニット3や拡張ユニット4a、4bに保存したものである。たとえば、CPU31は、収集設定データ153に従い、収集対象のデバイスや変数を収集する。保存条件の成立が検出されると、CPU31は、保存条件が成立したタイミングを基準として収集されたデバイスや変数をPLC1の運転記録として記憶装置32に保存する。運転記録は保存条件の成立毎に保存される。たとえば、運転記録は、保存条件が成立したと時の時刻とともに、ファイルとして記憶装置32に保存されてもよい。PLC1の運転記録の収集対象は、制御プログラム155等のプログラム単位や基本ユニット3や拡張ユニット4a、4b等のユニット単位で一括して設定されてもよい。これにより、PLC1の運転に関わるデバイスや変数が一括して記録される。そのため、ユーザは予め個別の監視対象を特定することなく、PLC1の運転に関わるデバイスや変数を記録することができる。保存条件が成立したタイミングを基準としてPLC1の運転状態を再現したり、保存条件が成立したタイミングを基準としたPLC1の運転状態を分析したりすることが可能となる。保存条件は、制御プログラム155の保存命令、割り当てられたデバイスまたは変数による保存トリガ、予め定められた時間で発生する時間トリガ等から選択されてもよい。保存条件は、ユーザ入力に従って設定される。 The operation record of the PLC 1 is one in which devices and variables to be collected are collected according to the collection setting data 153 that defines the collection targets and storage conditions, and are stored in the basic unit 3 and expansion units 4a and 4b in the PLC 1 according to the storage conditions. It is. For example, the CPU 31 collects devices and variables to be collected according to the collection setting data 153. When the satisfaction of the storage condition is detected, the CPU 31 stores the devices and variables collected based on the timing at which the storage condition was satisfied in the storage device 32 as an operation record of the PLC 1. The driving record is saved every time the storage conditions are met. For example, the driving record may be stored as a file in the storage device 32 along with the time when the storage condition is met. The targets for collecting the driving records of the PLC 1 may be set at once for each program such as the control program 155 or for each unit such as the basic unit 3 and expansion units 4a and 4b. As a result, devices and variables related to the operation of the PLC 1 are recorded all at once. Therefore, the user can record devices and variables related to the operation of the PLC 1 without specifying individual monitoring targets in advance. It becomes possible to reproduce the operating state of the PLC 1 based on the timing at which the preservation condition was met, or to analyze the operating state of the PLC 1 based on the timing at which the preservation condition was met. The storage condition may be selected from a storage instruction of the control program 155, a storage trigger based on an assigned device or variable, a time trigger occurring at a predetermined time, and the like. Storage conditions are set according to user input.

図19においてカメラ画像再生ビュー222は、異常時画像再生表示部222aと、正常時画像再生表示部222bと、再生コントロールビュー222cとを有している。異常時画像再生表示部222aには、分析対象の運転記録に含まれるカメラ画像のうち、運転記録分析アプリケーションがいつもと違う動作のデバイスや変数が検出されたタイミングに取得されたカメラ画像が表示される。また、正常時画像再生表示部222bは、正常時に対応する運転記録に含まれるカメラ画像のうち、異常時画像再生表示部222aに表示されるカメラ画像と時刻同期されたカメラ画像が表示される。PLC1が周期性のある制御であるサイクル制御を実行することがある。この場合、サイクル制御に対応する運転記録に含まれる少なくとも一部のデバイスまたは変数の時系列データは、サイクル制御に従う周期性を有している。CPU41a(データ処理部83)は運転記録に含まれるデバイスや変数の時系列データからその周期性を分析してサイクル制御の周期を規定するデバイスや変数を決定する。CPU41a(設定部80)はユーザ入力に従いサイクル制御の周期を規定するデバイスや変数である基準デバイスを選択してもよい。異常時画像再生表示部222aに表示されるカメラ画像と、正常時画像再生表示部222bに表示されるカメラ画像とは、サイクル制御の周期性と、各カメラ画像に紐づいた時間情報とに基づき同期して再生される。たとえば、一定の周期ごとに、二つのカメラ画像の表示が更新されてもよい。この場合、二つのカメラ画像はあたかも動画のように表示されることになろう。 In FIG. 19, the camera image reproduction view 222 includes an abnormal image reproduction display section 222a, a normal image reproduction display section 222b, and a reproduction control view 222c. The abnormal image playback display section 222a displays a camera image that is acquired at the timing when the driving record analysis application detects a device or variable operating differently than usual, among the camera images included in the driving record to be analyzed. Ru. Further, the normal time image reproduction display section 222b displays a camera image that is time-synchronized with the camera image displayed on the abnormal time image reproduction display section 222a, among the camera images included in the driving record corresponding to the normal time. The PLC 1 may perform cycle control, which is periodic control. In this case, time-series data of at least some of the devices or variables included in the driving record corresponding to cycle control has periodicity according to cycle control. The CPU 41a (data processing unit 83) analyzes the periodicity of time-series data of devices and variables included in the driving record and determines devices and variables that define the period of cycle control. The CPU 41a (setting unit 80) may select a reference device that is a device or a variable that defines the period of cycle control according to user input. The camera image displayed on the abnormal image reproduction display section 222a and the camera image displayed on the normal image reproduction display section 222b are determined based on the periodicity of cycle control and the time information linked to each camera image. Played synchronously. For example, the display of two camera images may be updated at regular intervals. In this case, the two camera images would be displayed as if they were moving images.

再生コントロールビュー222cは、カメラ画像再生ビュー222に表示される二つのカメラ画像の表示を同期して操作する操作ボタンを有する。操作ボタンは、停止ボタン、進むボタンおよび戻るボタンなどを含む。「停止ボタン」が押されると、異常時画像再生表示部222aに表示されるカメラ画像と、正常時画像再生表示部222に表示されるカメラ画像とが同期して一時停止される。「進むボタン」や「戻るボタン」が押されると、異常時画像再生表示部222aに表示されるカメラ画像の表示時刻と、正常時画像再生表示部222bに表示されるカメラ画像の表示時刻とが同期して変更される。 The playback control view 222c includes operation buttons for synchronously operating the display of two camera images displayed on the camera image playback view 222. The operation buttons include a stop button, a forward button, a back button, and the like. When the "stop button" is pressed, the camera image displayed on the abnormal image reproduction display section 222a and the camera image displayed on the normal image reproduction display section 222 are synchronized and temporarily stopped. When the "forward button" or "back button" is pressed, the display time of the camera image displayed on the abnormal image reproduction display section 222a and the display time of the camera image displayed on the normal image reproduction display section 222b are changed. changed synchronously.

発生状況時系列ビュー223は、運転記録の分析結果を表示する画面である。分析結果は、たとえば、運転記録として保存された複数のデバイスに対して監視対象毎に設定された検出アルゴリズムおよび検出閾値を適用することで検出された、いつもと違う動作のデバイスや変数を含む。 The occurrence situation time series view 223 is a screen that displays the analysis results of driving records. The analysis results include, for example, devices and variables that operate abnormally, detected by applying detection algorithms and detection thresholds set for each monitoring target to multiple devices stored as driving records.

サイクル表示欄223aには、サイクル制御の各サイクルが時系列に表示される。各サイクルの区切りは基準デバイスにより規定されてもよい。CPU41a(データ処理部83)は運転記録に含まれる基準デバイスの状態や値の変化が条件(サイクル条件または区切り条件と呼ばれてもよい)を満たすことを検出する。区切り条件が満たされたタイミングが、各サイクルの区切りに相当する。CPU41aは、決定されたサイクルの区切りに対応して各サイクルの期間を決定し、各サイクルをサイクル表示欄223aに表示する。この例では、サイクル1、サイクル2、サイクル3といった3サイクルが表示されている。発生デバイス表示欄223bには、いつもと違うデバイスの発生数が各サイクルに対応して時系列に表示される。CPU41a(データ処理部83)は分析対象の運転記録に対し、監視対象毎に設定された検出アルゴリズムおよび検出閾値を適用して、検出閾値を超えるデバイスや変数の数(発生数)を時系列に集計する。この例では、サイクル1とサイクル3で、いつもと違うデバイスが発生していることが示されている。 In the cycle display column 223a, each cycle of cycle control is displayed in chronological order. The delimitation of each cycle may be defined by a reference device. The CPU 41a (data processing unit 83) detects that a change in the state or value of the reference device included in the driving record satisfies a condition (which may also be called a cycle condition or a delimiter condition). The timing at which the delimiter condition is satisfied corresponds to the delimiter of each cycle. The CPU 41a determines the period of each cycle in accordance with the determined cycle break, and displays each cycle in the cycle display column 223a. In this example, three cycles, cycle 1, cycle 2, and cycle 3, are displayed. In the generated device display field 223b, the number of generated devices that are different from usual is displayed in chronological order corresponding to each cycle. The CPU 41a (data processing unit 83) applies the detection algorithm and detection threshold set for each monitoring target to the driving record to be analyzed, and calculates the number of devices and variables exceeding the detection threshold (number of occurrences) in chronological order. Tally. In this example, it is shown that different devices than usual occur in cycles 1 and 3.

パターン別発生状況表示欄223cには、パターン別のいつもと違うデバイスの発生状況が表示される。CPU41a(データ処理部83)は分析対象の運転記録に対し、監視対象毎に設定された検出アルゴリズムおよび検出閾値を適用して、検出閾値を超えるデバイスや変数の発生期間を、いつもと違う状態のパターン別に集計する。この例で、パターン別発生状況表示欄223cは、上段、中段および下段を有している。上段では、いつもと違う状態のパターンとして、ON/OFFパターンが採用されている。つまり、上段には、いつものON/OFFパターンと異なるON/OFFパターンの発生状況が表示される。中段には、定数の値が正常時と違うものの発生状況が表示される。下段には、いつものON/OFFタイミングと異なるON/OFFタイミングの発生状況が表示される。カメラ特徴量表示欄223dには、いつものカメラの特徴量とは違うカメラの特徴量が発生した回数が表示される。ロギングの保存トリガが発生した際に保存される運転記録にはカメラの画像データが含まれてもよい。CPU41a(データ処理部83)は、カメラ画像に含まれる受光量や輝度に関する特徴量データを生成し、当該特徴量データを周期性に従って分析することで、いつもと違う特徴量が発生した回数を表示してもよい。 The occurrence status display column 223c by pattern displays the occurrence status of unusual devices by pattern. The CPU 41a (data processing unit 83) applies the detection algorithm and detection threshold set for each monitoring target to the driving record of the analysis target, and determines the period of occurrence of devices or variables exceeding the detection threshold in an unusual state. Aggregate by pattern. In this example, the pattern-by-pattern occurrence status display field 223c has an upper row, a middle row, and a lower row. In the upper row, an ON/OFF pattern is used as a pattern for a different state than usual. That is, in the upper row, the occurrence status of an ON/OFF pattern different from the usual ON/OFF pattern is displayed. In the middle row, the occurrence status of constant values that are different from normal times is displayed. In the lower row, the occurrence status of ON/OFF timing different from the usual ON/OFF timing is displayed. The camera feature amount display column 223d displays the number of times a camera feature amount different from the usual camera feature amount has occurred. The driving record saved when a logging save trigger occurs may include camera image data. The CPU 41a (data processing unit 83) generates feature data related to the amount of light received and brightness included in the camera image, analyzes the feature data according to periodicity, and displays the number of times unusual feature values occur. You may.

いつもと違うデバイスビュー224には、サイクル毎やスキャン毎のいつもと違うデバイスの発生状況についての詳細が表示される。各表示欄224a~224cには、それぞれいつもと違う状況が発生したデバイス名、いつもと違う状況が発生した際の概要、および、発生時刻が表示される。いつもと違うデバイスビュー224に表示される情報の対象期間は、ユーザ入力に従い選択されてもよい。たとえばCPU41a(設定部80)は発生状況時系列ビュー223においてユーザ入力を受け付けると、ユーザ入力に対応するサイクルを選択する。CPU41a(データ処理部83)は、分析対象の運転記録から選択されたサイクルを分析することで、当該サイクルにおいていつもと違う状況が発生したデバイスを抽出する。CPU41a(表示処理部84)は、抽出されたデバイスの一覧をいつもと違うデバイスビュー224に表示する。いつもと違うデバイスビュー224では、どのデバイスでいつどのような変化が起こったのかを一覧的に確認することができる。 The unusual device view 224 displays details about the occurrence of unusual devices on a cycle-by-cycle or scan-by-scan basis. Each of the display columns 224a to 224c displays the name of the device where the unusual situation occurred, a summary of when the unusual situation occurred, and the time of occurrence. The time period covered by the information displayed in the unusual device view 224 may be selected according to user input. For example, when the CPU 41a (setting unit 80) receives a user input in the occurrence situation time series view 223, it selects a cycle corresponding to the user input. The CPU 41a (data processing unit 83) analyzes a cycle selected from the driving record to be analyzed, and extracts a device in which an unusual situation has occurred in the cycle. The CPU 41a (display processing unit 84) displays the list of extracted devices in a different device view 224 than usual. In the device view 224, which is different from usual, it is possible to check at a glance what kind of change occurred on which device and when.

いつもと違う波形ビュー225には、いつもと違う状況のデバイスのうち特定のデバイスについて時系列データの波形が表示される。いつもと違う波形ビュー225に表示されるデバイスはユーザ入力に従い選択されてもよい。たとえばCPU41a(設定部80)はいつもと違うデバイスビュー224においてユーザ入力を受け付けると、ユーザ入力に対応するデバイスを選択する。CPU41a(データ処理部83)は分析対象の運転記録から選択されたデバイスを抽出する。CPU41a(表示処理部84)は、抽出されたデバイスについての時系列データの波形をいつもと違うデバイスビュー224に表示する。これにより、ユーザは、いつもと違うデバイスビュー224に表示されたデバイスが、いつどのように変化したのかを確認することができる。正常時に取得された運転記録に含まれる複数のデバイスのうち、所定のデバイスの時系列データもいつもと違うデバイスビュー224に同時に表示されてもよい。所定のデバイスとは、いつもと違う状況のデバイスに対応している。このように、あるデバイスについて、正常時の時系列データと、イレギュラー時(いつもと違う状況の発生時)の時系列データとが対比可能に表示されてもよい。 The unusual waveform view 225 displays the waveform of time-series data for a specific device among the devices in an unusual situation. The devices displayed in the unusual waveform view 225 may be selected according to user input. For example, when the CPU 41a (setting unit 80) receives a user input in an unusual device view 224, it selects a device corresponding to the user input. The CPU 41a (data processing unit 83) extracts the selected device from the driving record to be analyzed. The CPU 41a (display processing unit 84) displays the waveform of time series data regarding the extracted device in a different device view 224 than usual. This allows the user to check when and how the device displayed in the unusual device view 224 has changed. Time-series data of a predetermined device among a plurality of devices included in the driving record acquired during normal times may also be displayed simultaneously in a different device view 224 than usual. The predetermined device corresponds to a device in a different situation than usual. In this way, for a given device, time-series data during normal times and time-series data during irregular times (when an unusual situation occurs) may be displayed so as to be comparable.

図20はデータ活用ユニット4aのCPU41aが実行する運転記録分析のダッシュボードを介した設定処理を示すフローチャートを示している。 FIG. 20 shows a flowchart showing the setting process via the dashboard for driving record analysis executed by the CPU 41a of the data utilization unit 4a.

S61でCPU41a(設定部80)はユーザから学習指示を受け付ける。CPU41a(設定部80)はユーザ入力に従い学習開始の指示を受け付けると運転記録の保存を開始する。たとえば、CPU41a(設定部80)は運転記録の保存条件に割り当てられた変数の値を保存条件が成立する値に変更する。CPU41a(設定部80)は学習開始の指示に従い保存された運転記録を、学習のための正常時の運転記録として、自動的に選択する。CPU41a(設定部80)はユーザ入力に従い予め保存されていた正常時の運転記録データを選択してもよい。この場合、CPU41a(表示処理部84)はいつもと違うデバイスの検出アルゴリズムや検出閾値を設定するために、正常時の運転記録データを選択する画面の表示データを作成する。CPU41a(Webサーバ85)は選択画面を表示するための表示データをPC2bに提供する。CPU41a(設定部80)は、正常時の運転記録データのユーザ選択を受け付ける。 In S61, the CPU 41a (setting unit 80) receives a learning instruction from the user. When the CPU 41a (setting unit 80) receives an instruction to start learning according to user input, it starts saving the driving record. For example, the CPU 41a (setting unit 80) changes the value of the variable assigned to the storage condition of the driving record to a value that satisfies the storage condition. The CPU 41a (setting unit 80) automatically selects the driving record stored according to the learning start instruction as the normal driving record for learning. The CPU 41a (setting unit 80) may select pre-saved normal driving record data according to user input. In this case, the CPU 41a (display processing unit 84) creates display data for a screen for selecting normal driving record data in order to set a detection algorithm and detection threshold for an unusual device. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the selection screen. The CPU 41a (setting unit 80) accepts user selection of normal driving record data.

S62でCPU41a(フロー実行部81)は運転記録に記録されたサイクルに基づいて、正常時の運転記録データを学習し、デバイス毎に分析アルゴリズムを決定する。たとえば、CPU41a(フロー実行部81)は、S61で選択された正常時の運転記録データと運転記録に記録されたサイクルとに基づいてデバイス毎に分析アルゴリズムを決定する。CPU41a(フロー実行部81)は、正常時の運転記録データからサイクル動作のサイクルに関連するデバイス信号の定常的な変化パターンを特定してもよい。CPU41a(フロー実行部81)は、特定されたデバイス信号の変化パターンごとに、分析アルゴリズムを決定してもよい。 In S62, the CPU 41a (flow execution unit 81) learns normal driving record data based on the cycles recorded in the driving record, and determines an analysis algorithm for each device. For example, the CPU 41a (flow execution unit 81) determines an analysis algorithm for each device based on the normal driving record data selected in S61 and the cycles recorded in the driving record. The CPU 41a (flow execution unit 81) may identify a steady change pattern of a device signal related to a cycle of a cycle operation from normal driving record data. The CPU 41a (flow execution unit 81) may determine an analysis algorithm for each identified device signal change pattern.

S63でCPU41a(設定部80)は保存条件に従い保存された分析対象の運転記録データを選択する。分析対象の運転記録データを保存するための保存条件が成立して運転記録データが保存されるとCPU41a(設定部80)は保存された運転記録データを分析対象の運転記録データとして自動的に選択する。CPU41a(設定部80)はユーザ入力に従い分析対象の運転記録データを選択してもよい。この場合、CPU41a(表示処理部84)はいつもと違う状態を分析する対象である分析対象の運転記録データを選択する画面の表示データを作成する。CPU41a(Webサーバ85)は選択画面を表示するための表示データをPC2bに提供する。CPU41a(設定部80)は、分析対象の運転記録データのユーザ選択を受け付ける。 In S63, the CPU 41a (setting unit 80) selects the saved driving record data to be analyzed according to the saving conditions. When the storage conditions for saving the driving record data to be analyzed are satisfied and the driving record data is saved, the CPU 41a (setting unit 80) automatically selects the saved driving record data as the driving record data to be analyzed. do. The CPU 41a (setting unit 80) may select driving record data to be analyzed according to user input. In this case, the CPU 41a (display processing unit 84) creates display data for a screen for selecting driving record data to be analyzed, which is a target for analyzing unusual conditions. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the selection screen. The CPU 41a (setting unit 80) accepts user selection of driving record data to be analyzed.

S64でCPU41a(データ処理部83)は決定された分析アルゴリズムに従い、いつもと違う状態が発生したデバイスを検出して、発生時刻とともに記録する。たとえば、CPU41a(データ処理部83)は、S62で決定された分析アルゴリズムに従って、S63で選択された運転記録データを分析する。CPU41a(データ処理部83)は、運転記録データを分析することで、いつもと違う状態が発生したデバイスを検出し、いつもと違う状態が発生した時刻とともにメモリ42aに記録する。 In S64, the CPU 41a (data processing unit 83) detects a device in which an unusual state has occurred, and records it together with the time of occurrence, according to the determined analysis algorithm. For example, the CPU 41a (data processing unit 83) analyzes the driving record data selected in S63 according to the analysis algorithm determined in S62. By analyzing the driving record data, the CPU 41a (data processing unit 83) detects a device in which an unusual state has occurred, and records it in the memory 42a together with the time when the unusual state has occurred.

S65でCPU41a(データ処理部83)は発生時刻および/またはいつもと違う状態の発生パターンに基づき、発生状況を集計する。CPU41a(データ処理部83)は、いつもと違う状態が発生した時刻と、いつもと違う状態の発生パターンとのうちの少なくとも1つに基づいて、いつもと違う状態の発生状況を集計する。 In S65, the CPU 41a (data processing unit 83) totals the occurrence status based on the time of occurrence and/or the occurrence pattern of unusual conditions. The CPU 41a (data processing unit 83) totals the occurrence status of the unusual state based on at least one of the time when the unusual state occurs and the pattern of occurrence of the unusual state.

S66でCPU41a(表示処理部84)は集計結果およびいつもと違う状態が発生したデバイスに関する情報をダッシュボードに表示する。CPU41a(表示処理部84)は、集計結果およびいつもと違う状態が発生したデバイスに関する情報を運転記録分析ダッシュボード221に表示するための表示データを作成する。CPU41a(Webサーバ85)は更新された運転記録分析ダッシュボード221を表示するための表示データをPC2bに提供する。S67でCPU41aは運転記録分析の終了条件を満たすと判断すると運転記録分析を終了する。CPU41aは運転記録分析の終了条件を満たすまでS63~S66の処理を繰り返し実行する。 In S66, the CPU 41a (display processing unit 84) displays the tally results and information regarding the device in which the unusual condition has occurred on the dashboard. The CPU 41a (display processing unit 84) creates display data for displaying the total results and information regarding the device in which the unusual condition has occurred on the driving record analysis dashboard 221. The CPU 41a (Web server 85) provides display data for displaying the updated driving record analysis dashboard 221 to the PC 2b. In S67, when the CPU 41a determines that the conditions for ending the driving record analysis are satisfied, the CPU 41a ends the driving record analysis. The CPU 41a repeatedly executes the processes of S63 to S66 until the conditions for ending the driving record analysis are met.

図21は、データ活用アプリケーション用のダッシュボード241の一例を示している。データ活用アプリケーション用のダッシュボード241は、リアルタイム監視アプリケーション用表示部242、運転記録分析アプリケーション用表示部246を有している。データ活用アプリケーション用のダッシュボード241は、設定されているリアルタイム監視アプリケーションや運転記録分析アプリケーションを統合して監視するためのダッシュボードである。ダッシュボード241は、各アプリケーションの概要を表示するとともに、各アプリケーションに対応するダッシュボードへのポータルとして機能してもよい。各アプリケーションが設定されると、設定されたアプリケーションは、データ活用アプリケーション用のダッシュボード241への表示対象として自動的に追加される。 FIG. 21 shows an example of a dashboard 241 for a data utilization application. The dashboard 241 for the data utilization application has a display section 242 for the real-time monitoring application and a display section 246 for the driving record analysis application. The data utilization application dashboard 241 is a dashboard for integrated monitoring of set real-time monitoring applications and driving record analysis applications. Dashboard 241 displays an overview of each application and may function as a portal to the dashboard corresponding to each application. When each application is set, the set application is automatically added as a display target to the dashboard 241 for data utilization applications.

リアルタイム監視アプリケーション用表示部242は、監視状態画面243と個別状況画面244とを有する。監視状態画面243には、グラフ243a、および集計アイコン243bが表示される。グラフ243aは、監視アプリケーションのうち、正常状態、注意状態、異常状態(警報状態)のアプリケーションがどのような割合で存在しているかを示すものである。図21ではグラフ243aは円グラフであるが、割合を表示できるグラフであれば他の形式のグラフであってもよい。集計アイコン243bは、監視アプリケーションのうち、正常状態、注意状態、異常状態のアプリケーションの数を表す。 The real-time monitoring application display unit 242 has a monitoring status screen 243 and an individual status screen 244. The monitoring status screen 243 displays a graph 243a and a tally icon 243b. The graph 243a shows the ratio of applications in a normal state, a caution state, and an abnormal state (alarm state) among monitoring applications. In FIG. 21, the graph 243a is a pie chart, but it may be any other type of graph as long as it can display percentages. The tally icon 243b represents the number of applications in a normal state, a caution state, and an abnormal state among monitoring applications.

個別状況画面244には、アプリケーション名244a、状態244b、余裕度244c、余裕度トレンド244d、リンクボタン244e、設定ボタン245が表示される。アプリケーション名244aは、個別状況画面244に表示されるアプリケーションの名称を表す。状態244bは、アプリケーション名244aに対応する監視状態を表す。監視状態は、図21に示されるように、正常、注意、および異常(警報)の三種類であってもよい。この場合、三種類の状態がそれぞれで異なるハッチングを付与されてもよい。あるいは、正常の場合は緑、注意の場合は黄色、異常の場合は赤などのように、三種類の状態にそれぞれ異なる色が付与されてもよい。このような強調表示が採用されてもよい。 On the individual status screen 244, an application name 244a, a status 244b, a margin 244c, a margin trend 244d, a link button 244e, and a setting button 245 are displayed. The application name 244a represents the name of the application displayed on the individual status screen 244. The state 244b represents the monitoring state corresponding to the application name 244a. As shown in FIG. 21, the monitoring status may be of three types: normal, caution, and abnormal (alarm). In this case, the three types of states may be given different hatching. Alternatively, different colors may be assigned to the three types of states, such as green for normal, yellow for caution, and red for abnormal. Such highlighted display may be adopted.

余裕度244cは、アプリケーション名244aに対応する監視対象のデバイスや変数の余裕度をもとに算出されたアプリケーションごとの総合的な余裕度を示す。アプリケーションごとの余裕度は、たとえば、十分余裕のある状態を100とし、注意値のときに50、警報値のときに0となるように定義されていてもよい。たとえば、複数の監視対象それぞれの余裕度を平均することで、総合的な余裕度が算出されてもよい。余裕度244cは、十分余裕のある状態を示す値から離れるにしたがって、異なる表示形式で表示されてもよい。たとえば、50を上回る余裕度は黒で表示され、10より大きく50以下の余裕度は黄で表示され、10以下の余裕度は赤で表示されるといった、表示形式が採用されてもよい。 The margin 244c indicates the overall margin for each application, which is calculated based on the margins of the monitored device and variables corresponding to the application name 244a. The degree of margin for each application may be defined such that, for example, a state with sufficient margin is 100, a caution value is 50, and a warning value is 0. For example, the overall margin may be calculated by averaging the margins of each of a plurality of monitoring targets. The degree of margin 244c may be displayed in different display formats as it moves away from a value indicating a state with sufficient margin. For example, a display format may be adopted in which a margin greater than 50 is displayed in black, a margin greater than 10 and less than or equal to 50 is displayed in yellow, and a margin less than or equal to 10 is displayed in red.

余裕度トレンド244dは、アプリケーション名244aに対応する余裕度の経時変化を表す。この例では、余裕度トレンド244dの右端が現在の余裕度を表し、左側に進むにつれて、過去の余裕度を示している。ユーザは余裕度トレンド244dを確認することで、どのタイミングから余裕度が低下していたのかを確認することができる。リンクボタン244eは、アプリケーション名244aに対応する個別のリアルタイム監視アプリケーション用のダッシュボード171へのリンクである。CPU41aは、リンクボタン244eが押されると、個別のアプリケーションの詳細な監視状態をPC2bに表示する。設定ボタン245は、リアルタイム監視アプリケーション用表示部242の設定を行う画面を表示するためのボタンである。設定ボタン245が押されると、CPU41aは、グラフ243aの表示形式や、個別状況画面244に表示される列の表示/非表示の切替、余裕度244cを余裕度の大きさに従ってソートするか否かなどの設定をユーザ入力にしたがって行う。 The margin trend 244d represents a change over time in the margin corresponding to the application name 244a. In this example, the right end of the margin trend 244d represents the current margin, and moving toward the left indicates the past margin. By checking the margin trend 244d, the user can confirm the timing at which the margin started to decrease. Link button 244e is a link to dashboard 171 for the individual real-time monitoring application corresponding to application name 244a. When the link button 244e is pressed, the CPU 41a displays the detailed monitoring status of the individual application on the PC 2b. The settings button 245 is a button for displaying a screen for setting the real-time monitoring application display section 242. When the setting button 245 is pressed, the CPU 41a changes the display format of the graph 243a, shows/hides the columns displayed on the individual status screen 244, and determines whether or not to sort the margins 244c according to the size of the margins. and other settings according to user input.

運転記録分析アプリケーション用表示部246は、アプリケーション名246a、最終分析時刻246b、対象運転記録246c、異常検知数246d、異常検知数トレンド246e、リンクボタン246fを有する。アプリケーション名246aは、運転記録分析アプリケーション用表示部246に表示するアプリケーションの名称を表示する。最終分析時刻246bは、運転記録分析を最後に行った時刻を表示する。運転記録分析は、所定時間ごとに保存された運転記録の分析と、ロギングの保存トリガが発生したときに保存された運転記録の分析とを含んでもよい。ユーザは、最終分析時刻246bを確認することにより、どの時点の運転記録までが分析されているのかを確認することができる。対象運転記録246cは、最終分析時刻246bに表示されている時刻に実行された分析においてその分析の対象となったデータを表す。 The driving record analysis application display section 246 includes an application name 246a, a final analysis time 246b, a target driving record 246c, a number of abnormalities detected 246d, a trend of the number of abnormalities detected 246e, and a link button 246f. The application name 246a displays the name of the application displayed on the driving record analysis application display section 246. The final analysis time 246b displays the time when the driving record analysis was last performed. The driving record analysis may include an analysis of driving records saved at predetermined time intervals and an analysis of driving records saved when a logging save trigger occurs. By checking the final analysis time 246b, the user can check up to which point in time the driving record has been analyzed. The target driving record 246c represents the data that was the target of the analysis performed at the time displayed in the final analysis time 246b.

異常検知数246dは、最終分析時刻246bに表示されている時刻に実行された分析において異常が検知されたデバイスや変数の数を表す。異常検知数トレンド246eは、運転記録分析において検知された異常数の経時変化を表す。この例では、異常検知数トレンド246eの右端が現在の異常検知数を表す。異常検知数トレンド246eにおいて、右側から左側に向かって進むにつれて、より過去の異常検知数が示される。ユーザは異常検知数トレンド246eを確認することで、どのタイミングから異常検知数が増加していたのかを確認することができる。リンクボタン246fは、アプリケーション名246aに対応する運転記録分析アプリケーション用のダッシュボード221へのリンクである。リンクボタン246fが押されると、CPU41aは、最終分析時刻246bに対応する運転記録分析の詳細な結果をPC2bに表示してもよい。 The number of abnormalities detected 246d represents the number of devices and variables in which abnormalities were detected in the analysis performed at the time displayed in the final analysis time 246b. The detected abnormality number trend 246e represents a change over time in the number of abnormalities detected in driving record analysis. In this example, the right end of the abnormality detection number trend 246e represents the current number of abnormality detections. In the anomaly detection number trend 246e, the number of anomalies detected in the past is shown as it progresses from the right side to the left side. By checking the anomaly detection number trend 246e, the user can confirm the timing from which the number of anomalies has been increasing. The link button 246f is a link to the dashboard 221 for the driving record analysis application corresponding to the application name 246a. When the link button 246f is pressed, the CPU 41a may display the detailed results of the driving record analysis corresponding to the final analysis time 246b on the PC 2b.

図22はデータ活用アプリケーションダッシュボード241を生成する統合モニタ処理を示すフローチャートを示している。S71でCPU41a(データ処理部83)は、設定された監視アプリケーション毎に監視状態を決定する。たとえば、CPU41a(データ処理部83)は、設定された監視アプリケーションごとに、各アプリケーションを代表する監視状態を決定する。代表の監視状態は、監視対象のデバイスや変数ごとに定められた検出アルゴリズムに従って決定される、監視対象ごとの監視状態から決定される。たとえば、監視対象ごとの監視状態のうちで最も悪い監視状態がアプリケーションを代表する監視状態として決定されてもよい。 FIG. 22 shows a flowchart illustrating integrated monitoring processing for generating the data utilization application dashboard 241. In S71, the CPU 41a (data processing unit 83) determines the monitoring state for each set monitoring application. For example, the CPU 41a (data processing unit 83) determines, for each set monitoring application, a monitoring state representative of each application. The representative monitoring state is determined from the monitoring state of each monitoring target, which is determined according to a detection algorithm determined for each monitored device or variable. For example, the worst monitoring state among the monitoring states for each monitoring target may be determined as the monitoring state representative of the application.

S72でCPU41a(データ処理部83)は監視アプリケーションの監視状態を集計する。CPU41a(データ処理部83)は、それぞれの監視アプリケーションを代表する監視状態を状態別に集計する。状態別に集計するとは、正常状態の数、注意状態の数、異常状態の数を個別に集計することが含まれる。S73でCPU41a(データ処理部83)は、設定された監視アプリケーション毎に余裕度を示す値を収集する。たとえば、CPU41a(データ処理部83)は、余裕度を有する監視アプリケーションについて、各アプリケーションを代表する余裕度の値を収集する。監視対象ごとの監視状態のうちで最も低い余裕度がアプリケーションを代表する余裕度として決定される。S74でCPU41a(データ処理部83)は運転記録分析アプリケーションの異常発生状態に関する値を集計する。たとえば、CPU41a(データ処理部83)はいつもと違う状況のデバイスや変数の個数を収集する。 In S72, the CPU 41a (data processing unit 83) totals the monitoring status of the monitoring application. The CPU 41a (data processing unit 83) totalizes the monitoring states representing each monitoring application by state. Aggregating by state includes separately aggregating the number of normal states, the number of caution states, and the number of abnormal states. In S73, the CPU 41a (data processing unit 83) collects a value indicating the degree of margin for each set monitoring application. For example, the CPU 41a (data processing unit 83) collects values of margins representative of each monitoring application that has margins. The lowest margin among the monitoring states for each monitoring target is determined as the margin representing the application. In S74, the CPU 41a (data processing unit 83) totals values related to the abnormality occurrence state of the driving record analysis application. For example, the CPU 41a (data processing unit 83) collects the number of devices and variables in unusual situations.

S75で、CPU41a(表示処理部84)は、個別のアプリケーションごとの状態情報と、集計された状態情報を統合モニタダッシュボード(データ活用アプリケーションダッシュボード241)に表示する。たとえば、CPU41a(表示処理部84)は、データ活用アプリケーションダッシュボード241の表示データを作成する。CPU41a(Webサーバ85)は選択画面を表示するための表示データをPC2bに提供する。CPU41a(表示処理部84)が、参照先のデバイスや変数が割り当てられた画面データと、参照先のデバイスや変数の値である表示対象データとを別々に管理する場合がある。この場合、CPU41a(Webサーバ85)は、ダッシュボード241の更新要求や更新スケジュールに応じて、表示データのうち画面データと、表示対象データとを選択的に提供する。CPU41a(Webサーバ85)は、ダッシュボード241の表示要求に応じて画面データおよび表示対象データを含む表示データを提供する。CPU41a(Webサーバ85)は、ダッシュボード241の表示更新要求に応じて、更新された表示対象データを表示データとして選択的に提供する。 In S75, the CPU 41a (display processing unit 84) displays the status information for each individual application and the aggregated status information on the integrated monitor dashboard (data utilization application dashboard 241). For example, the CPU 41a (display processing unit 84) creates display data for the data utilization application dashboard 241. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the selection screen. The CPU 41a (display processing unit 84) may separately manage screen data to which reference destination devices and variables are assigned, and display target data that is the reference destination devices and variable values. In this case, the CPU 41a (Web server 85) selectively provides screen data and display target data among the display data in accordance with the update request and update schedule of the dashboard 241. The CPU 41a (Web server 85) provides display data including screen data and display target data in response to a display request for the dashboard 241. In response to a display update request for the dashboard 241, the CPU 41a (Web server 85) selectively provides the updated display target data as display data.

S76でCPU41a(設定部80)は、ユーザ入力に従い個別のアプリケーションに対応するダッシュボードに表示を切り替える。たとえば、CPU41a(設定部80)はダッシュボードを切り替えるユーザ入力を受け付ける。CPU41a(設定部80)は切替ボタンが押されたことを検出すると、リアルタイム監視アプリケーション用のダッシュボード171と運転記録分析アプリケーション用のダッシュボード221の選択画面を表示するための表示データを作成する。さらに、CPU41a(Webサーバ85)は選択画面を表示するための表示データをPC2bに提供する。CPU41a(設定部80)は、選択画面において、リアルタイム監視アプリケーション用のダッシュボード171と運転記録分析アプリケーション用のダッシュボード221のいずれを表示するかが選択されたことを検出してもよい。CPU41a(表示処理部84)は、選択されたダッシュボードを表示するための表示データを作成する。CPU41a(Webサーバ85)は選択されたダッシュボードを表示するための表示データをPC2bに提供する。 In S76, the CPU 41a (setting unit 80) switches the display to the dashboard corresponding to the individual application according to the user input. For example, the CPU 41a (setting unit 80) accepts user input for switching the dashboard. When the CPU 41a (setting unit 80) detects that the switching button has been pressed, it creates display data for displaying selection screens of the dashboard 171 for the real-time monitoring application and the dashboard 221 for the driving record analysis application. Furthermore, the CPU 41a (Web server 85) provides display data for displaying the selection screen to the PC 2b. The CPU 41a (setting unit 80) may detect that either the dashboard 171 for the real-time monitoring application or the dashboard 221 for the driving record analysis application has been selected to be displayed on the selection screen. The CPU 41a (display processing unit 84) creates display data for displaying the selected dashboard. The CPU 41a (Web server 85) provides the PC 2b with display data for displaying the selected dashboard.

データ活用プログラムとして、ユーザ入力に従い作成されるフロープログラムやアプリケーション設定データにより設定されるプログラムモジュールの例が説明されたが、本発明は、これに限られない。たとえば、データ活用プログラムは、C言語等のテキスト言語により作成されてもよく、また、C言語で記述されたライブラリとそのライブラリを実行するライブラリ実行ブロックにより構成されてもよい。 Although examples of the data utilization program include a flow program created according to user input and a program module set based on application setting data, the present invention is not limited thereto. For example, the data utilization program may be created in a text language such as the C language, or may be composed of a library written in the C language and a library execution block that executes the library.

<まとめ>
[観点1]
PLC1はプログラマブルロジックコントローラの一例である。CPU31はユーザプログラムの一種である制御プログラムを実行する第一実行手段として機能する。制御プログラムとは、たとえば、ラダープログラムなどであり、PLCの主目的である制御(例:位置決め装置の位置制御など)を実行するためのユーザプログラムである。記憶装置32およびデバイス部34は制御プログラムにしたがって第一実行手段がアクセスする記憶領域であるデバイスまたは変数を記憶する記憶手段(保持手段)として機能する。収集部82は収集対象として指定された時系列データを記憶手段から収集する収集手段として機能する。フロー実行部81は記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段として機能する。表示処理部84はデータ活用プログラムの実行結果を表示するダッシュボードのソースコードまたは画像データを含むソースデータを生成する生成手段として機能する。Webサーバ85はソースデータを外部コンピュータ(例:PC2b)に出力する出力手段として機能する。設定部80は、設定データを編集する編集手段として機能する。設定データは、たとえば、表示対象データをダッシュボードにより表示するために、当該ダッシュボードのテンプレートと、当該ダッシュボードに紐づけられているデータ活用プログラムのテンプレートとのセットを含む。表示対象データは、収集対象の時系列データをデータ活用プログラムにしたがって所定のデータ処理を実行することにより求められるデータである。つまり、本発明によれば、PLCが保持している制御データを収集するデータ活用プログラムとそれを表示するダッシュボードとを編集する編集手段をPLCが備えているため、これらの編集作業が容易化される。
<Summary>
[Viewpoint 1]
PLC1 is an example of a programmable logic controller. The CPU 31 functions as a first execution unit that executes a control program that is a type of user program. The control program is, for example, a ladder program or the like, and is a user program for executing control that is the main purpose of the PLC (eg, position control of a positioning device, etc.). The storage device 32 and the device section 34 function as storage means (holding means) for storing devices or variables that are storage areas accessed by the first execution means according to the control program. The collection unit 82 functions as a collection unit that collects time-series data designated as a collection target from a storage unit. The flow execution unit 81 functions as a second execution unit that executes predetermined data processing on time-series data collected from the storage unit at different timings according to a data utilization program. The display processing unit 84 functions as a generation unit that generates source data including source code or image data of a dashboard that displays the execution results of the data utilization program. The web server 85 functions as an output means for outputting source data to an external computer (eg, PC 2b). The setting unit 80 functions as an editing unit that edits setting data. The setting data includes, for example, a set of a template for the dashboard and a template for a data utilization program linked to the dashboard, in order to display the data to be displayed on the dashboard. The display target data is data obtained by performing predetermined data processing on the time series data to be collected according to a data utilization program. In other words, according to the present invention, since the PLC is equipped with editing means for editing the data utilization program that collects the control data held by the PLC and the dashboard that displays it, these editing operations are facilitated. be done.

メモリ42aは複数のダッシュボードの表示データのテンプレートと複数のデータ活用プログラムのテンプレートとを記憶する記憶手段として機能してもよい。複数のダッシュボードのテンプレートと複数のデータ活用プログラムのテンプレートとはプログラム作成支援装置(例:PC2a)に保持されていてもよい。この場合、記憶装置12aがこれらのテンプレートを記憶することになる。CPU41a、ダッシュボード選択部52、選択画面100などは複数のダッシュボードのうち一つのダッシュボードの選択を受け付ける第一受付手段として機能する。CPU41a、パラメータ指定部53、設定画面110などは、収集手段による収集対象のデータの指定を受け付ける第二受付手段として機能する。作成部54は、収集対象のデータをフローにしたがって所定のデータ処理を実行することにより求められるデータである表示対象データを選択されたダッシュボードにより表示するために、選択されたダッシュボードのテンプレートと、選択されたダッシュボードに紐づけられているデータ活用プログラム(例:フロー)のテンプレートとのセットを含む設定データを作成する作成手段として機能する。上述されたように、CPU11aが、設定部80を有していてもよい。つまり、CPU11aが、第一受付手段、第二受付手段、作成手段、および、設定データをPLCに転送する転送手段として機能してもよい。設定部80は、PC2bにより実現されてもよい。この場合、Webサーバ85が、設定部80を実現するためのプログラムをWebブラウザ61に送信し、Webブラウザ61(CPU11b)が当該プログラムを実行することで、設定部80として機能する。設定部80は、設定データの編集指示(編集された設定データの書き込み指示)をWebサーバ85に送信し、Webサーバ85が設定データ73を上書きする。このように予めダッシュボードのテンプレートとデータ活用プログラムのテンプレートが用意されているため、ユーザはこれらに必要なパラメータを設定するだけで、ダッシュボードおよびフローを完成させることができる。 The memory 42a may function as a storage means for storing display data templates of a plurality of dashboards and templates of a plurality of data utilization programs. A plurality of dashboard templates and a plurality of data utilization program templates may be held in a program creation support device (eg, PC 2a). In this case, the storage device 12a will store these templates. The CPU 41a, the dashboard selection section 52, the selection screen 100, and the like function as a first reception means that receives selection of one dashboard from among a plurality of dashboards. The CPU 41a, the parameter designation unit 53, the setting screen 110, and the like function as a second reception unit that receives designation of data to be collected by the collection unit. The creation unit 54 creates a template for the selected dashboard in order to display the display target data, which is data obtained by performing predetermined data processing on the data to be collected according to the flow, on the selected dashboard. , functions as a creation means for creating configuration data including a set of templates for data utilization programs (e.g. flows) linked to the selected dashboard. As described above, the CPU 11a may include the setting section 80. That is, the CPU 11a may function as a first reception means, a second reception means, a creation means, and a transfer means for transferring setting data to the PLC. The setting unit 80 may be realized by the PC 2b. In this case, the Web server 85 transmits a program for implementing the setting section 80 to the Web browser 61, and the Web browser 61 (CPU 11b) executes the program, thereby functioning as the setting section 80. The setting unit 80 transmits an instruction to edit the setting data (instruction to write the edited setting data) to the Web server 85, and the Web server 85 overwrites the setting data 73. Since the dashboard template and the data utilization program template are prepared in advance in this way, the user can complete the dashboard and flow simply by setting the necessary parameters for these.

なお、デバイスメモリは「制御プログラム(ユーザプログラム)」が扱うことが可能であって、「データ活用プログラム(ユーザプログラム)」がデータ収集の対象とすることが可能な記憶手段であると理解されてもよい。データメモリは「データ活用プログラム(ユーザプログラム)」が扱うことが可能であって、「ダッシュボード」の表示部品の値として表示することが可能なデータを記憶する記憶手段であると理解されてもよい。 It should be noted that device memory is understood to be a storage means that can be handled by a "control program (user program)" and can be used as a data collection target by a "data utilization program (user program)." Good too. Data memory can be understood as a storage means for storing data that can be handled by a "data utilization program (user program)" and can be displayed as values of display components on a "dashboard." good.

[観点2]
図1が示すように、プログラマブルロジックコントローラは、基本ユニット3と、当該基本ユニットに接続された拡張ユニット4とを有していてもよい。基本ユニット3は、第一実行手段と、記憶手段とを有してもよい。拡張ユニット4のうちデータ活用ユニットは、拡張ユニットのうちデータ活用ユニットは、収集手段と、第二実行手段と、生成手段と、出力手段とを有していてもよい。このようにデータ活用ユニットとして動作する拡張ユニット4aを基本ユニット3に接続することで、ユーザは容易にデータ活用を実現できるようになる。また、基本ユニット3のデータ処理に関する負荷が軽減される。
[Viewpoint 2]
As shown in FIG. 1, the programmable logic controller may include a basic unit 3 and an expansion unit 4 connected to the basic unit. The basic unit 3 may have first execution means and storage means. The data utilization unit of the expansion unit 4 may include a collection means, a second execution means, a generation means, and an output means. By connecting the expansion unit 4a, which operates as a data utilization unit, to the basic unit 3 in this manner, the user can easily realize data utilization. Further, the load related to data processing on the basic unit 3 is reduced.

[観点3]
メモリ42aは設定データ73を記憶するメモリの一例である。設定データ73は、PC2aによって作成されて転送されてきたデータであってもよいし、PLCにおいて新規に作成されたデータであってもよい。
Webサーバ85は、設定データ73についての再編集を受け付ける再編集画面の画面データを提供する提供手段として機能してもよい。作成部54は、メモリ42aに記憶されている設定データ73を、再編集画面を通じて再編集された設定データ73により更新する更新手段を有してもよい。これにより、ユーザはデータ活用アプリケーションを容易に再編集することができるようになる。
[Viewpoint 3]
The memory 42a is an example of a memory that stores the setting data 73. The setting data 73 may be data created and transferred by the PC 2a, or may be data newly created in the PLC.
The web server 85 may function as a providing unit that provides screen data of a re-editing screen that accepts re-editing of the setting data 73. The creation unit 54 may include an updating unit that updates the setting data 73 stored in the memory 42a with the setting data 73 that has been re-edited through the re-editing screen. This allows the user to easily re-edit the data utilization application.

[観点4]
画面データ(ソースデータ)は、Webブラウザで表示可能な表示データ(例:HTMLデータ、CSSデータ、JavaScript(登録商標)コード)であってもよい。出力手段および提供手段は、Webサーバ85であってもよい。これにより、PC2bのような一般的なコンピュータであっても設定画面やダッシュボードを表示できるようになろう。
[Viewpoint 4]
The screen data (source data) may be display data (eg, HTML data, CSS data, JavaScript (registered trademark) code) that can be displayed on a web browser. The output means and provision means may be the web server 85. This will make it possible to display the setting screen and dashboard even on a general computer such as PC2b.

[観点5]
ところで、Webサーバ85は、複数のダッシュボードのうち一つのダッシュボードの選択と、収集手段による収集対象のデータの指定とを受け付けるための設定画面を外部コンピュータに提供するように構成されていてもよい。図7が示すように、第一受付手段は設定画面を通じてダッシュボードの指定を受け付けてもよい。図8が示すように、第二受付手段は設定画面を通じて収集対象のデータの指定を受け付けてもよい。これにより、プログラミングの知識が少ないユーザであっても容易にダッシュボードの選択とパラメータの指定とを実行できるようになろう。
[Viewpoint 5]
By the way, the web server 85 may be configured to provide the external computer with a setting screen for receiving the selection of one dashboard from among a plurality of dashboards and the specification of data to be collected by the collection means. good. As shown in FIG. 7, the first receiving means may receive the designation of the dashboard through the setting screen. As shown in FIG. 8, the second reception means may accept the designation of data to be collected through the setting screen. This will enable even users with little programming knowledge to easily select dashboards and specify parameters.

[観点6]
編集手段(例:作成部54)は、設定画面を通じて編集対象となる収集対象の時系列データの指定を受け付けてもよい。
[Viewpoint 6]
The editing means (eg, the creation unit 54) may receive a designation of time-series data to be collected and to be edited through a setting screen.

プレビューボタン118に関して説明されたように、メモリ42aは、ダッシュボードの表示データのテンプレートに入力されるダミーデータを記憶していてもよい。CPU41aは、ダミーデータをダッシュボードの表示データのテンプレートに入力することで、ダッシュボードのプレビューをWebブラウザ61に表示してもよい。 As described with respect to the preview button 118, the memory 42a may store dummy data that is input into the dashboard display data template. The CPU 41a may display a preview of the dashboard on the web browser 61 by inputting dummy data into a template of dashboard display data.

[観点7]
複数のダッシュボードはそれぞれ異なるデータ処理アプリケーション(例:ロス解析、波形監視、FFT)に関連付けられていてもよい。フロー・ダッシュボード作成部51は、複数のデータ処理アプリケーションのうち一つのデータ処理アプリケーションの選択を、当該一つのデータ処理アプリケーションに対応するダッシュボードの選択として受け付けてもよい。上述されたようにデータ活用アプリケーションがダッシュボードとデータ活用プログラム(例:フロー)とから構成されている場合、アプリケーションの選択とダッシュボードの選択とは同義であろう。
[Viewpoint 7]
Multiple dashboards may each be associated with a different data processing application (eg, loss analysis, waveform monitoring, FFT). The flow dashboard creation unit 51 may accept a selection of one data processing application among a plurality of data processing applications as a selection of a dashboard corresponding to the one data processing application. As described above, when a data utilization application is composed of a dashboard and a data utilization program (eg, flow), the selection of an application and the selection of a dashboard are synonymous.

[観点8、9]
設定データは、プログラマブルロジックコントローラに接続されたプログラム作成支援装置(例:PC2a)から受信されたデータであってもよい。設定データは、プログラマブルロジックコントローラにおいて新規に作成されたデータであってもよい。後者の場合、PLCは、プログラム作成支援装置(例:PC2a)から設定データを受信することなく、新規に設定データを作成できるようになろう。
[Viewpoints 8, 9]
The setting data may be data received from a program creation support device (eg, PC 2a) connected to the programmable logic controller. The setting data may be data newly created in the programmable logic controller. In the latter case, the PLC will be able to create new configuration data without receiving configuration data from the program creation support device (eg, PC 2a).

フロー・ダッシュボード作成部51は、複数のデータ活用プログラム(例:フロー)のテンプレートのうち、ダッシュボードの選択と収集対象の時系列データの指定とに対応するデータ活用プログラムのテンプレートを選択し、当該選択されたデータ活用プログラムのテンプレートに基づき当該フローを完成させてもよい。 The flow/dashboard creation unit 51 selects a template of a data utilization program corresponding to the selection of a dashboard and the specification of time series data to be collected from among the templates of a plurality of data utilization programs (e.g., flows), The flow may be completed based on the template of the selected data utilization program.

[観点10]
フロー・ダッシュボード作成部51は、ダッシュボードを構成する表示部品の再編集を受け付け、ダッシュボードに対応するデータ活用プログラムを構成する複数の演算ブロックのうち当該再編集に応じた演算ブロックに表示部品の再編集の結果を反映させてもよい。たとえば、フロー・ダッシュボード作成部51は、ダッシュボードを構成する表示部品の再編集を受け付け、ダッシュボードに対応するデータ活用プログラム(例:フロー)を構成する複数の演算ブロックのうち当該再編集に応じて不要となった演算ブロックを設定データにおいて削除または無効化するように構成されていてもよい。これにより、ユーザは、簡単にダッシュボードをカスタマイズすることが可能となろう。
[Viewpoint 10]
The flow/dashboard creation unit 51 accepts re-editing of the display parts that make up the dashboard, and assigns the display parts to the arithmetic block corresponding to the re-editing among the plurality of calculation blocks that make up the data utilization program corresponding to the dashboard. The results of re-editing may be reflected. For example, the flow/dashboard creation unit 51 accepts re-editing of display components that make up a dashboard, and selects the re-edited part from among a plurality of calculation blocks that make up a data utilization program (e.g. flow) corresponding to the dashboard. The configuration may be such that calculation blocks that are no longer needed are deleted or invalidated from the configuration data accordingly. This will allow users to easily customize their dashboards.

フロー・ダッシュボード作成部51は、ダッシュボードに対応するデータ活用プログラムを構成する演算ブロックの再編集を受け付けてもよい。フロー・ダッシュボード作成部51は、ダッシュボードを構成する表示部品のうち、当該再編集された演算ブロックに対応する表示部品に、演算ブロックの再編集の結果を反映させてもよい。こにより、ユーザは簡単にデータ活用プログラムをカスタマイズすることが可能となる。 The flow dashboard creation unit 51 may accept re-editing of the calculation blocks that constitute the data utilization program corresponding to the dashboard. The flow dashboard creation unit 51 may reflect the results of the re-editing of the calculation block on the display parts that correspond to the re-edited calculation block among the display parts forming the dashboard. This allows the user to easily customize the data utilization program.

[観点11]
追加オブジェクト117に関して説明されたように、フロー・ダッシュボード作成部51は、収集手段による収集対象の時系列データの追加を受け付けるように構成されていてもよい。フロー・ダッシュボード作成部51は、第二受付手段により受け付けられた収集対象の時系列データの追加に応じて設定データにおけるダッシュボードの表示部品とデータ活用プログラム(例:フロー)の演算ブロックとに反映させるように構成されていてもよい。ユーザは収集対象の時系列データ(解析対象のデータ)の追加を指示するだけで、ダッシュボードとデータ活用プログラムとが編集されるようになる。
[Viewpoint 11]
As described regarding the additional object 117, the flow dashboard creation unit 51 may be configured to accept addition of time series data to be collected by the collection means. The flow dashboard creation unit 51 creates display parts of the dashboard and calculation blocks of the data utilization program (e.g. flow) in the setting data in accordance with the addition of the time series data to be collected accepted by the second reception means. It may be configured to reflect the information. The user can edit the dashboard and data utilization program by simply instructing the addition of time-series data to be collected (data to be analyzed).

[観点12]
作成部54は、第一のプログラマブルロジックコントローラのために作成された設定データを第二のプログラマブルロジックコントローラのためにインポートするインポート手段をさらに有していてもよい。インポート手段は、第一のプログラマブルロジックコントローラのために作成された設定データを複製し、当該複製された設定データの一部を編集することで、第二のプログラマブルロジックコントローラのための設定データを作成してもよい。これにより複数のPLC間で設定データを再利用することが可能となるため、ユーザの作業負担が軽減されよう。
[Viewpoint 12]
The creation unit 54 may further include import means for importing the setting data created for the first programmable logic controller for the second programmable logic controller. The importing means copies the setting data created for the first programmable logic controller and edits a part of the copied setting data to create setting data for the second programmable logic controller. You may. This makes it possible to reuse setting data among a plurality of PLCs, thereby reducing the user's workload.

[観点13]
ダッシュボードはロス解析、波形監視または周波数分析の結果を表示するダッシュボードであってもよい。もちろん、他のタイプのデータ活用アプリケーションが採用されてもよい。
[Viewpoint 13]
The dashboard may be a dashboard that displays the results of loss analysis, waveform monitoring, or frequency analysis. Of course, other types of data utilization applications may be employed.

[観点14]
フロー実行部81は、第一のダッシュボードのためのデータ活用プログラム(フロー)によって生成された演算結果を第二のダッシュボードのためのデータ活用プログラム(フロー)に渡し、第二のダッシュボードのための当該データ活用プログラムにしたがって当該演算結果について解析処理を実行してもよい。このように複数のデータ活用アプリケーションが連携して解析結果を提供してもよい。
[Viewpoint 14]
The flow execution unit 81 passes the calculation result generated by the data utilization program (flow) for the first dashboard to the data utilization program (flow) for the second dashboard, and Analysis processing may be performed on the calculation result according to the data utilization program for the calculation. In this way, multiple data utilization applications may cooperate to provide analysis results.

ところで、作成部54は、制御プログラムの再編集を監視する監視手段と、制御プログラムが再編集されると、制御プログラムの再編集箇所のデバイス名と設定データに含まれるデバイス名とが一致するかどうかを判定する判定手段と、制御プログラムの再編集箇所のデバイス名と設定データに含まれるデバイス名とが一致する場合、設定データに含まれるデバイス名を制御プログラムの再編集箇所のデバイス名に置換する置換手段とを有してもよい。また、作成部54は、制御プログラムが再編集されることで、制御プログラムにおいて使用されている記憶手段が第一記憶手段から第二記憶手段に変更されると、第一記憶手段の識別情報(例:再編集前のデバイス名)と設定データに含まれる記憶手段の識別情報とが一致するかどうかを判定する判定手段を有してもよい。作成部54は、第一記憶手段の識別情報と設定データに含まれる記憶手段の識別情報とが一致する場合、設定データに含まれる当該記憶手段の識別情報を第二記憶手段の識別情報(例:再編集後のデバイス名)に置換する置換手段を有してもよい。これにより、制御プログラムの再編集結果をデータ活用アプリケーションの設定データをマニュアルで反映させる手間が軽減されよう。 By the way, the creation unit 54 uses a monitoring means that monitors the re-editing of the control program to determine whether, when the control program is re-edited, the device name at the re-edited part of the control program matches the device name included in the setting data. If the device name of the re-edited part of the control program matches the device name included in the configuration data, the device name included in the configuration data is replaced with the device name of the re-edited part of the control program. It may also have a replacement means. Moreover, when the storage means used in the control program is changed from the first storage means to the second storage means by re-editing the control program, the creation unit 54 stores the identification information of the first storage means ( For example, the device may include a determination unit that determines whether or not the device name before re-editing matches the identification information of the storage unit included in the setting data. When the identification information of the first storage means and the identification information of the storage means included in the setting data match, the creation unit 54 converts the identification information of the storage means contained in the setting data into the identification information of the second storage means (e.g. : the device name after re-editing). This will reduce the effort required to manually reflect the setting data of the data utilization application in the result of re-editing the control program.

[観点15]
PLCシステムはプログラマブルロジックコントローラ1と、設定支援装置(例:PC2a)とを有していてもよい。プログラマブルロジックコントローラ1は、制御プログラムを実行する第一実行手段と、制御プログラムにしたがって第一実行手段がアクセスする記憶領域であるデバイスまたは変数である記憶手段と、収集対象として指定されたデータを記憶手段から収集する収集手段と、記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段と、データ活用プログラムの実行結果を表示するダッシュボードのソースコードおよび画像データを含むソースデータを生成する生成手段と、ソースデータを外部コンピュータに出力する出力手段とを有してもよい。設定支援装置は、複数のダッシュボードのテンプレートと複数のデータ活用プログラムのテンプレートとを保持する保持手段と、複数のダッシュボードのうち一つのダッシュボードの選択を受け付ける第一受付手段と、収集手段による収集対象の時系列データの指定を受け付ける第二受付手段と、収集対象の時系列データをデータ活用プログラムにしたがって所定のデータ処理を実行することにより求められるデータである表示対象データを選択されたダッシュボードにより表示するために、選択されたダッシュボードのテンプレートと、選択されたダッシュボードに紐づけられているデータ活用プログラムのテンプレートとのセットを含む設定データを作成する作成手段と、設定データをプログラマブルロジックコントローラに転送する転送手段とを有してもよい。プログラマブルロジックコントローラ1はさらに、設定データを編集する編集手段を有していてもよい。
[Viewpoint 15]
The PLC system may include a programmable logic controller 1 and a setting support device (eg, PC 2a). The programmable logic controller 1 includes a first execution means that executes a control program, a storage means that is a device or a variable that is a storage area that the first execution means accesses according to the control program, and stores data designated as a collection target. a second execution means that executes predetermined data processing according to a data utilization program on the time series data collected from the storage means at different timings, and displays execution results of the data utilization program. The information processing apparatus may include a generation means for generating source data including source code and image data of a dashboard to be displayed, and an output means for outputting the source data to an external computer. The setting support device includes a holding means for holding a plurality of dashboard templates and a plurality of data utilization program templates, a first reception means for accepting selection of one dashboard from among the plurality of dashboards, and a collection means. a second reception means that accepts the specification of time series data to be collected; and a dash for selecting display target data, which is data obtained by performing predetermined data processing on the time series data to be collected according to a data utilization program. A creation means for creating setting data including a set of a selected dashboard template and a data utilization program template linked to the selected dashboard for display by the board, and a programmable setting data It may also include a transfer means for transferring the data to the logic controller. The programmable logic controller 1 may further include editing means for editing the setting data.

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

Claims (15)

制御プログラムを実行する第一実行手段と、
前記制御プログラムにしたがって前記第一実行手段がアクセスする記憶領域であるデバイスまたは変数である記憶手段と、
収集対象として指定された時系列データを前記記憶手段から収集する収集手段と、
前記記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段と、
前記データ活用プログラムの実行結果を表示するダッシュボードのソースコードまたは画像データを含むソースデータを生成する生成手段と、
前記ソースデータを外部コンピュータに出力する出力手段と、
を有するプログラマブルロジックコントローラであって、
収集対象の時系列データを前記データ活用プログラムにしたがって前記所定のデータ処理を実行することにより求められるデータである表示対象データをダッシュボードにより表示するために、当該ダッシュボードのテンプレートと、当該ダッシュボードに紐づけられている前記データ活用プログラムのテンプレートとのセットを含む設定データを編集する編集手段を有し、
前記生成手段は、前記設定データに基づき前記ダッシュボードのソースデータを生成し、
複数のダッシュボードのうち一つのダッシュボードの選択と、前記収集手段による収集対象の時系列データの指定とを受け付けるための設定画面を前記外部コンピュータに提供した際に、前記編集手段は、前記設定画面を通じて編集対象となる前記ダッシュボードの指定を受け付けることを特徴とするプログラマブルロジックコントローラ。
a first execution means for executing the control program;
storage means that is a device or variable that is a storage area accessed by the first execution means according to the control program;
a collection means for collecting time-series data specified as a collection target from the storage means;
a second execution unit that executes predetermined data processing on time series data collected from the storage unit at different timings according to a data utilization program;
a generation unit that generates source data including source code or image data of a dashboard that displays execution results of the data utilization program;
output means for outputting the source data to an external computer;
A programmable logic controller having:
In order to display data to be displayed, which is data obtained by performing the predetermined data processing on the time-series data to be collected according to the data utilization program, on a dashboard, a template for the dashboard, and the dashboard. and editing means for editing configuration data including a set with a template of the data utilization program linked to the data utilization program,
The generating means generates source data of the dashboard based on the setting data,
When the external computer is provided with a settings screen for accepting the selection of one dashboard from a plurality of dashboards and the designation of time-series data to be collected by the collection means, the editing means A programmable logic controller characterized in that the designation of the dashboard to be edited is accepted through a screen .
前記プログラマブルロジックコントローラは、
基本ユニットと、
当該基本ユニットに接続された拡張ユニットと
を有し、
前記基本ユニットは、前記第一実行手段を有し、
前記拡張ユニットのうちデータ活用ユニットは、前記収集手段と、前記第二実行手段と、前記生成手段と、前記出力手段とを有していることを特徴とする請求項1に記載のプログラマブルロジックコントローラ。
The programmable logic controller includes:
basic unit and
and an expansion unit connected to the basic unit,
The basic unit has the first execution means,
The programmable logic controller according to claim 1, wherein the data utilization unit of the expansion unit includes the collection means, the second execution means, the generation means, and the output means. .
前記データ活用ユニットは、
前記設定データを記憶するメモリと、
前記設定データについての再編集を受け付ける再編集画面の画面データを提供する提供手段と、
前記編集手段に含まれる更新手段であって、前記メモリに記憶されている前記設定データを、前記再編集画面を通じて再編集された前記設定データにより更新する更新手段と
を有することを特徴とする請求項2に記載のプログラマブルロジックコントローラ。
The data utilization unit is
a memory that stores the setting data;
Providing means for providing screen data of a re-editing screen that accepts re-editing of the setting data;
A claim characterized in that the editing means includes updating means for updating the setting data stored in the memory with the setting data re-edited through the re-editing screen. The programmable logic controller according to item 2.
前記画面データは、Webブラウザで表示可能な表示データであり、
前記出力手段および前記提供手段は、Webサーバであることを特徴とする請求項3に記載のプログラマブルロジックコントローラ。
The screen data is display data that can be displayed on a web browser,
The programmable logic controller according to claim 3, wherein the output means and the provision means are web servers.
前記提供手段は、複数のダッシュボードのうち一つのダッシュボードの選択と、前記収集手段による収集対象の時系列データの指定とを受け付けるための設定画面を前記外部コンピュータに提供するように構成されており、
前記編集手段は、前記設定画面を通じて編集対象となる前記ダッシュボードの指定を受け付けることを特徴とする請求項3または4に記載のプログラマブルロジックコントローラ。
The providing means is configured to provide the external computer with a setting screen for accepting selection of one dashboard from among a plurality of dashboards and designation of time-series data to be collected by the collecting means. Ori,
5. The programmable logic controller according to claim 3, wherein the editing means receives a designation of the dashboard to be edited through the setting screen.
前記編集手段は、設定画面を通じて編集対象となる前記収集対象の時系列データの指定を受け付けることを特徴とする請求項3ないし5のいずれか一項に記載のプログラマブルロジックコントローラ。 6. The programmable logic controller according to claim 3, wherein the editing means receives a designation of the time-series data to be collected to be edited through a setting screen. 複数のダッシュボードはそれぞれ異なるデータ処理アプリケーションに関連付けられており、
前記編集手段は、複数のデータ処理アプリケーションのうち一つのデータ処理アプリケーションの選択を、当該一つのデータ処理アプリケーションに対応するダッシュボードの選択として受け付けることを特徴とする請求項1ないし6のいずれか一項に記載のプログラマブルロジックコントローラ。
Multiple dashboards, each associated with a different data processing application,
7. The computer according to claim 1, wherein the editing means accepts a selection of one data processing application among a plurality of data processing applications as a selection of a dashboard corresponding to the one data processing application. The programmable logic controller described in Section.
制御プログラムを実行する第一実行手段と、
前記制御プログラムにしたがって前記第一実行手段がアクセスする記憶領域であるデバイスまたは変数である記憶手段と、
収集対象として指定された時系列データを前記記憶手段から収集する収集手段と、
前記記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段と、
前記データ活用プログラムの実行結果を表示するダッシュボードのソースコードまたは画像データを含むソースデータを生成する生成手段と、
前記ソースデータを外部コンピュータに出力する出力手段と、
を有するプログラマブルロジックコントローラであって、
収集対象の時系列データを前記データ活用プログラムにしたがって前記所定のデータ処理を実行することにより求められるデータである表示対象データをダッシュボードにより表示するために、当該ダッシュボードのテンプレートと、当該ダッシュボードに紐づけられている前記データ活用プログラムのテンプレートとのセットを含む設定データを編集する編集手段を有し、
前記生成手段は、前記設定データに基づき前記ダッシュボードのソースデータを生成し、
前記設定データは、前記プログラマブルロジックコントローラに接続されたプログラム作成支援装置から受信されたデータであることを特徴とするプログラマブルロジックコントローラ。
a first execution means for executing the control program;
storage means that is a device or variable that is a storage area accessed by the first execution means according to the control program;
a collection means for collecting time-series data specified as a collection target from the storage means;
a second execution unit that executes predetermined data processing on time series data collected from the storage unit at different timings according to a data utilization program;
a generation unit that generates source data including source code or image data of a dashboard that displays execution results of the data utilization program;
output means for outputting the source data to an external computer;
A programmable logic controller having:
In order to display data to be displayed, which is data obtained by performing the predetermined data processing on the time-series data to be collected according to the data utilization program, on a dashboard, a template for the dashboard, and the dashboard. and editing means for editing configuration data including a set with a template of the data utilization program linked to the data utilization program,
The generating means generates source data of the dashboard based on the setting data,
A programmable logic controller, wherein the setting data is data received from a program creation support device connected to the programmable logic controller.
制御プログラムを実行する第一実行手段と、
前記制御プログラムにしたがって前記第一実行手段がアクセスする記憶領域であるデバイスまたは変数である記憶手段と、
収集対象として指定された時系列データを前記記憶手段から収集する収集手段と、
前記記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段と、
前記データ活用プログラムの実行結果を表示するダッシュボードのソースコードまたは画像データを含むソースデータを生成する生成手段と、
前記ソースデータを外部コンピュータに出力する出力手段と、
を有するプログラマブルロジックコントローラであって、
収集対象の時系列データを前記データ活用プログラムにしたがって前記所定のデータ処理を実行することにより求められるデータである表示対象データをダッシュボードにより表示するために、当該ダッシュボードのテンプレートと、当該ダッシュボードに紐づけられている前記データ活用プログラムのテンプレートとのセットを含む設定データを編集する編集手段を有し、
前記生成手段は、前記設定データに基づき前記ダッシュボードのソースデータを生成し、
前記設定データは、前記プログラマブルロジックコントローラにおいて新規に作成されたデータであることを特徴とするプログラマブルロジックコントローラ。
a first execution means for executing the control program;
storage means that is a device or variable that is a storage area accessed by the first execution means according to the control program;
a collection means for collecting time-series data specified as a collection target from the storage means;
a second execution unit that executes predetermined data processing on time series data collected from the storage unit at different timings according to a data utilization program;
a generation unit that generates source data including source code or image data of a dashboard that displays execution results of the data utilization program;
output means for outputting the source data to an external computer;
A programmable logic controller having:
In order to display data to be displayed, which is data obtained by performing the predetermined data processing on the time-series data to be collected according to the data utilization program, on a dashboard, a template for the dashboard, and the dashboard. and editing means for editing configuration data including a set with a template of the data utilization program linked to the data utilization program,
The generating means generates source data of the dashboard based on the setting data,
A programmable logic controller, wherein the setting data is data newly created in the programmable logic controller.
前記編集手段は、前記ダッシュボードを構成する表示部品の再編集を受け付け、前記ダッシュボードに対応するデータ活用プログラムを構成する複数の演算ブロックのうち当該再編集に応じて不要となった演算ブロックを前記設定データにおいて削除または無効化するように構成されていることを特徴とする請求項1ないし9のいずれか一項に記載のプログラマブルロジックコントローラ。 The editing means accepts re-editing of the display components constituting the dashboard, and edits the computation blocks that are no longer needed from among the plurality of computation blocks constituting the data utilization program corresponding to the dashboard according to the re-editing. The programmable logic controller according to any one of claims 1 to 9, wherein the programmable logic controller is configured to be deleted or invalidated in the setting data. 前記編集手段は、前記収集手段による収集対象の収集対象のデータの追加を受け付けるように構成されており、
前記編集手段は、前記編集により受け付けられた収集対象の収集対象のデータの追加に応じて前記設定データにおける前記ダッシュボードの表示部品と前記データ活用プログラムの演算ブロックとに反映させるように構成されていることを特徴とする請求項1ないし10のいずれか一項に記載のプログラマブルロジックコントローラ。
The editing means is configured to accept addition of data to be collected by the collecting means,
The editing means is configured to reflect the addition of the data to be collected that is accepted by the editing to the display components of the dashboard and the calculation block of the data utilization program in the setting data. The programmable logic controller according to any one of claims 1 to 10, characterized in that:
前記編集手段は、第一のプログラマブルロジックコントローラのために作成された設定データを第二のプログラマブルロジックコントローラのためにインポートするインポート手段をさらに有し、
前記インポート手段は、前記第一のプログラマブルロジックコントローラのために作成された設定データを複製し、当該複製された設定データの一部を編集することで、前記第二のプログラマブルロジックコントローラのための設定データを作成することを特徴とする請求項1ないし11のいずれか一項に記載のプログラマブルロジックコントローラ。
The editing means further includes import means for importing the setting data created for the first programmable logic controller into the second programmable logic controller,
The import means copies the setting data created for the first programmable logic controller, and edits a part of the copied setting data to update the settings for the second programmable logic controller. The programmable logic controller according to any one of claims 1 to 11, wherein the programmable logic controller creates data.
前記ダッシュボードはロス解析、波形監視または周波数分析の結果を表示するダッシュボードであることを特徴とする請求項1ないし12のいずれか一項に記載のプログラマブルロジックコントローラ。 13. The programmable logic controller according to claim 1, wherein the dashboard is a dashboard that displays results of loss analysis, waveform monitoring, or frequency analysis. 前記第二実行手段は、第一のダッシュボードのためのデータ活用プログラムによって生成された演算結果を第二のダッシュボードのためのデータ活用プログラムに渡し、前記第二のダッシュボードのための当該データ活用プログラムにしたがって当該演算結果について解析処理を実行することを特徴とする請求項1ないし13のいずれか一項に記載のプログラマブルロジックコントローラ。 The second execution means passes the calculation result generated by the data utilization program for the first dashboard to the data utilization program for the second dashboard, and passes the calculation result generated by the data utilization program for the first dashboard to the data utilization program for the second dashboard. The programmable logic controller according to any one of claims 1 to 13, wherein analysis processing is executed for the calculation result according to a utilization program. プログラマブルロジックコントローラと、設定支援装置とを有するPLCシステムであ
って、
前記プログラマブルロジックコントローラは、
制御プログラムを実行する第一実行手段と、
前記制御プログラムにしたがって前記第一実行手段がアクセスする記憶領域であるデバイスまたは変数である記憶手段と、
収集対象として指定された時系列データを前記記憶手段から収集する収集手段と、
前記記憶手段からそれぞれ異なるタイミングで収集された時系列データに対してデータ活用プログラムにしたがって所定のデータ処理を実行する第二実行手段と、
前記データ活用プログラムの実行結果を表示するダッシュボードのソースコードおよび画像データを含むソースデータを生成する生成手段と、
前記ソースデータを外部コンピュータに出力する出力手段と、
を有し、
前記設定支援装置は、
複数のダッシュボードのテンプレートと複数のデータ活用プログラムのテンプレートとを保持する保持手段と、
前記複数のダッシュボードのうち一つのダッシュボードの選択を受け付ける第一受付手段と、
前記収集手段による収集対象の時系列データの指定を受け付ける第二受付手段と、
前記収集対象の時系列データを前記データ活用プログラムにしたがって前記所定のデータ処理を実行することにより求められるデータである表示対象データを前記選択されたダッシュボードにより表示するために、前記選択されたダッシュボードのテンプレートと、前記選択されたダッシュボードに紐づけられている前記データ活用プログラムのテンプレートとのセットを含む設定データを作成する作成手段と、
前記設定データを前記プログラマブルロジックコントローラに転送する転送手段と、
を有し、
前記プログラマブルロジックコントローラはさらに、
前記設定データを編集する編集手段を有し、
前記生成手段は、前記設定データに基づき前記ダッシュボードのソースデータを生成し、
複数のダッシュボードのうち一つのダッシュボードの選択と、前記収集手段による収集対象の時系列データの指定とを受け付けるための設定画面を前記外部コンピュータに提供した際に、前記編集手段は、前記設定画面を通じて編集対象となる前記ダッシュボードの指定を受け付けることを特徴とするPLCシステム。
A PLC system having a programmable logic controller and a setting support device,
The programmable logic controller includes:
a first execution means for executing the control program;
storage means that is a device or variable that is a storage area accessed by the first execution means according to the control program;
a collection means for collecting time-series data specified as a collection target from the storage means;
a second execution unit that executes predetermined data processing on time series data collected from the storage unit at different timings according to a data utilization program;
generating means for generating source data including source code and image data of a dashboard that displays execution results of the data utilization program;
output means for outputting the source data to an external computer;
has
The setting support device includes:
a retention means for retaining a plurality of dashboard templates and a plurality of data utilization program templates;
a first reception means for accepting selection of one dashboard from the plurality of dashboards;
a second reception means that receives a designation of time series data to be collected by the collection means;
The selected dashboard is used to display display target data, which is data obtained by executing the predetermined data processing on the collected time series data according to the data utilization program, on the selected dashboard. creating means for creating configuration data including a set of a board template and a template of the data utilization program linked to the selected dashboard;
Transfer means for transferring the setting data to the programmable logic controller;
has
The programmable logic controller further includes:
comprising editing means for editing the setting data;
The generating means generates source data of the dashboard based on the setting data,
When the external computer is provided with a settings screen for accepting the selection of one dashboard from a plurality of dashboards and the designation of time-series data to be collected by the collection means, the editing means A PLC system, characterized in that the designation of the dashboard to be edited is accepted through a screen .
JP2020111877A 2019-10-03 2020-06-29 Programmable logic controller and PLC system Active JP7450471B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019183254 2019-10-03
JP2019183254 2019-10-03

Publications (2)

Publication Number Publication Date
JP2021060966A JP2021060966A (en) 2021-04-15
JP7450471B2 true JP7450471B2 (en) 2024-03-15

Family

ID=75380258

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020111877A Active JP7450471B2 (en) 2019-10-03 2020-06-29 Programmable logic controller and PLC system

Country Status (1)

Country Link
JP (1) JP7450471B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023006307A (en) * 2021-06-30 2023-01-18 オムロン株式会社 control system
DE112021007860T5 (en) 2021-08-23 2024-04-11 Fanuc Corporation INDUSTRIAL MACHINE AND METHOD FOR CONTROLLING AN INDUSTRIAL MACHINE
JP2023049535A (en) 2021-09-29 2023-04-10 オムロン株式会社 control system
JP7233619B1 (en) * 2022-04-15 2023-03-06 三菱電機株式会社 Monitoring system and monitoring method
JP7224570B1 (en) * 2022-07-13 2023-02-17 三菱電機株式会社 LOG DATA ANALYSIS SUPPORT SYSTEM, LOG DATA ANALYSIS SUPPORT METHOD, PROGRAM AND SUPPORT DEVICE

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002189508A (en) 2000-12-20 2002-07-05 Digital Electronics Corp Controller and recording medium with its program recorded
JP2015060527A (en) 2013-09-20 2015-03-30 東芝三菱電機産業システム株式会社 Steel plant data server device
JP2017010556A (en) 2015-06-22 2017-01-12 エルエス産電株式会社Lsis Co., Ltd. PLC system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002189508A (en) 2000-12-20 2002-07-05 Digital Electronics Corp Controller and recording medium with its program recorded
JP2015060527A (en) 2013-09-20 2015-03-30 東芝三菱電機産業システム株式会社 Steel plant data server device
JP2017010556A (en) 2015-06-22 2017-01-12 エルエス産電株式会社Lsis Co., Ltd. PLC system

Also Published As

Publication number Publication date
JP2021060966A (en) 2021-04-15

Similar Documents

Publication Publication Date Title
JP7450471B2 (en) Programmable logic controller and PLC system
US11409257B2 (en) Setting device that sets a programmable logic controller and PLC system that collects control data and a dashboard for displaying control data
JP4462449B2 (en) Control system setting device
JP2020013526A (en) Programmable logic controller and main unit
JP2020013527A (en) Programmable logic controller and program formation assistance device
JP6996888B2 (en) Programmable logic controller, data acquisition device and programming support device
JP2018097663A (en) Control system, control program, and control method
JP2005327263A (en) Control system setting device
CN113204203A (en) Programmable logic controller and analyzer
JP2022016659A (en) Externally setting device, logging setting method and program
JP7413742B2 (en) Prediction system, information processing device and information processing program
JP3770382B2 (en) Control display device, control system, control program, and computer-readable recording medium recording the same
JP7450470B2 (en) Setting device and PLC system
JP6996887B2 (en) Programmable logic controller system and data acquisition device
CN115202282A (en) Analysis device, analysis system, and control method thereof
JP7558735B2 (en) Programmable logic controller and analytical device
US20220317650A1 (en) Analysis apparatus, control method thereof, and analysis system
JP2020067751A (en) Programmable logic controller system, program creation assisting device, and computer program
JP2022158226A (en) Analysis device, analysis system, and method for controlling the same
JP2023110263A (en) Program and programmable logic controller
TW202006489A (en) Control system, control device and storage medium capable of easily verifying an operation history
JP6986125B2 (en) Programmable logic controller and main unit
JP6948450B2 (en) Programmable logic controller and main unit
JP7412119B2 (en) Data utilization system
JP7461811B2 (en) Programmable Logic Controller

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20210113

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230303

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240129

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240305

R150 Certificate of patent or registration of utility model

Ref document number: 7450471

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150