JP7412119B2 - Data utilization system - Google Patents
Data utilization system Download PDFInfo
- Publication number
- JP7412119B2 JP7412119B2 JP2019183257A JP2019183257A JP7412119B2 JP 7412119 B2 JP7412119 B2 JP 7412119B2 JP 2019183257 A JP2019183257 A JP 2019183257A JP 2019183257 A JP2019183257 A JP 2019183257A JP 7412119 B2 JP7412119 B2 JP 7412119B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- collected
- lower unit
- collection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000000872 buffer Substances 0.000 claims description 143
- 238000012546 transfer Methods 0.000 claims description 96
- 238000004458 analytical method Methods 0.000 claims description 43
- 238000000034 method Methods 0.000 claims description 39
- 230000008569 process Effects 0.000 claims description 34
- 238000004519 manufacturing process Methods 0.000 claims description 10
- 238000011144 upstream manufacturing Methods 0.000 claims description 3
- 230000010354 integration Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 95
- 238000004891 communication Methods 0.000 description 39
- 230000006870 function Effects 0.000 description 37
- 230000015654 memory Effects 0.000 description 30
- 238000010586 diagram Methods 0.000 description 28
- 101100408464 Caenorhabditis elegans plc-1 gene Proteins 0.000 description 16
- 230000006835 compression Effects 0.000 description 13
- 238000007906 compression Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 8
- 238000013480 data collection Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 4
- 230000006837 decompression Effects 0.000 description 4
- 230000001343 mnemonic effect Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 2
- 102100026205 1-phosphatidylinositol 4,5-bisphosphate phosphodiesterase gamma-1 Human genes 0.000 description 1
- 101000691599 Homo sapiens 1-phosphatidylinositol 4,5-bisphosphate phosphodiesterase gamma-1 Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Programmable Controllers (AREA)
Description
本発明はデータ活用システムに関する。 The present invention relates to a data utilization system.
プログラマブル・ロジック・コントローラ(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 (
ところで、PLCの動作やPLCによって制御される産業機械の動作を監視するために、PLCが保持しているデータを収集して活用することが望まれている。PLCは、基本ユニット(CPUユニット)とそれに接続される拡張ユニットとを有している。基本ユニットは、ラダープログラムなどのユーザプログラムを実行することで拡張ユニットを制御する。拡張ユニットは基本ユニットからの命令にしたがって産業機械を制御し、制御結果を基本ユニットに返す。ここで、基本ユニットの処理負荷を削減するために、発明者らは、拡張ユニットの一つとしてデータ活用ユニットを基本ユニットに接続することを思いついた。これにより一つのPLC内で時系列データを漏れなく収集することが可能となろう。 Incidentally, in order to monitor the operation of the PLC and the operation of industrial machines controlled by the PLC, it is desired to collect and utilize data held by the PLC. A PLC has a basic unit (CPU unit) and an expansion unit connected to it. The basic unit controls the expansion unit by executing a user program such as a ladder program. The expansion unit controls the industrial machine according to instructions from the basic unit and returns control results to the basic unit. Here, in order to reduce the processing load on the basic unit, the inventors came up with the idea of connecting a data utilization unit to the basic unit as one of the expansion units. This will make it possible to collect all time-series data within one PLC.
ところで、一つの製造ラインにおいて複数のPLCがそれぞれ異なる産業機械を制御することがある。この場合、複数のPLCからデータを収集して活用できれば、製造ラインの全体を統括的に監視しやすくなるであろう。この際に、上位のデータ活用ユニットは、複数の下位のデータ活用ユニットからデータを収集することになる。上位のデータ活用ユニットは、複数の下位のデータ活用ユニットから漏れなく時系列データを収集することが望まれる。しかし、複数のPLCはそれぞれ非同期で動作しているため、漏れなく時系列データを収集することは簡単ではない。 By the way, a plurality of PLCs may control different industrial machines in one manufacturing line. In this case, if data can be collected and utilized from multiple PLCs, it will be easier to comprehensively monitor the entire production line. At this time, the higher-level data utilization unit collects data from a plurality of lower-level data utilization units. It is desirable that the higher-level data utilization unit collects time-series data from multiple lower-level data utilization units without exception. However, since multiple PLCs each operate asynchronously, it is not easy to collect time-series data without omission.
そこで、本発明は、上位のデータ活用ユニットが一つ以上の下位のデータ活用ユニットから漏れなく時系列データを収集できるようにすること、を目的とする。 Therefore, an object of the present invention is to enable a higher-level data utilization unit to collect time-series data from one or more lower-level data utilization units without exception.
本発明は、たとえば、
複数のデータ活用ユニットを有するデータ活用システムであって、
前記複数のデータ活用ユニットのうち上位ユニットは、
前記複数のデータ活用ユニットのうち下位ユニットに対して収集対象となるデータを指定する指定情報を設定する設定手段と、
前記下位ユニットに蓄積された前記収集対象となるデータを収集する収集手段と、
前記収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段と、
を有し、
前記下位ユニットは、さらに、
前記指定情報にしたがって、前記下位ユニットに接続された基本ユニットにおいて取得されたデータを前記基本ユニットから取得する取得手段と、
前記上位ユニットまたは前記下位ユニットに設けられ、前記取得手段により取得された前記データを前記下位ユニットから前記上位ユニットに受け渡すために当該データを蓄積するバッファと、
を有し、
前記上位ユニットの前記収集手段は、前記バッファから前記収集対象となるデータを読み出すように構成され、
前記下位ユニットにおいて実行されるユーザプログラムを含むプロジェクトデータを解析することで前記収集対象となるデータを特定し、前記特定されたデータの指定を含むように前記指定情報を作成するように構成されていることを特徴とするデータ活用システムを提供する。
The present invention includes, for example,
A data utilization system having multiple data utilization units,
The upper unit among the plurality of data utilization units is
a setting means for setting specification information for specifying data to be collected for a lower unit among the plurality of data utilization units;
a collection means for collecting the data to be collected accumulated in the lower unit;
a creation unit that creates display data that displays the data collected by the collection unit or analysis results obtained by performing a predetermined analysis process on the data;
has
The lower unit further includes:
acquisition means for acquiring data acquired in a basic unit connected to the lower unit from the basic unit according to the specified information;
a buffer that is provided in the upper unit or the lower unit and stores the data acquired by the acquisition means in order to transfer the data from the lower unit to the upper unit;
has
The collection means of the upper unit is configured to read the data to be collected from the buffer ,
The data to be collected is specified by analyzing project data including a user program executed in the lower unit, and the specification information is created to include a specification of the specified data. We provide a data utilization system that is characterized by:
本発明によれば上位のデータ活用ユニットが一つ以上の下位のデータ活用ユニットから漏れなく時系列データを収集することが可能となる。 According to the present invention, it becomes possible for a higher-level data utilization unit to collect time-series data from one or more lower-level data utilization units without exception.
以下、添付図面を参照して実施形態が詳しく説明される。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴のうち二つ以上の特徴が任意に組み合わされてもよい。また、同一または同様の構成には同一の参照番号が付され、重複した説明は省略される。同一または類似の要素を示す参照符号の末尾には小文字のアルファベットが付与されることがある。複数の要素に共通する事項が説明される場合、小文字のアルファベットが省略される。 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(プログラマブルロジックコントローラ)1a~1cとを備えている。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
データ活用において、PLC1は上位システムとして機能する上位モードと下位システムとして機能する下位モードとを有している。たとえば、図1において、PLC1aは上位システムであり、PLC1b、1cは下位システムである。PLC1aはPLC1b、1cに対して収集対象データを設定したり、PLC1b、1cにより収集されたデータを取得したりする。PLC1aは通信ケーブル9cを介してPLC1bと接続されている。PLC1aは通信ケーブル9dを介してPLC1cと接続されている。ただし、通信ケーブル9は有線ネットワークや無線ネットワークであってもよい。
In data utilization, the
基本ユニット3は、表示部5および操作部6を備えている。表示部5は、基本ユニット3に取り付けられている各拡張ユニット4の動作状況などを表示することができる。操作部6の操作内容に応じて表示部5は表示内容を切り替える。表示部5は、通常、PLC1内のデバイスの現在値(デバイス値)やPLC1内で生じたエラー情報などを表示する。デバイスとは、デバイス値(デバイスデータ)を格納するために設けられたメモリ上の領域を指す名称であり、デバイスメモリと呼ばれてもよい。デバイス値とは、入力機器からの入力状態、出力機器への出力状態およびユーザプログラム上で設定される内部リレー(補助リレー)、タイマー、カウンタ、データメモリ等の状態を示す情報である。デバイス値の型にはビット型とワード型がある。ビットデバイスは1ビットのデバイス値を記憶する。ワードデバイスは1ワードのデバイス値を記憶する。以下で詳細に説明されるデータ活用プログラムの収集対象としては、デバイスだけでなく、変数が指定されてもよい。ただし、デバイスも変数も情報を保持する保持手段である。したがって、以下の説明においてデバイスは変数も指すものである。なお、デバイスを保持するメモリはデバイスメモリと呼ばれてもよい。また、収集されたデータを保持するメモリはデータメモリと呼ばれてもよい。
The
拡張ユニット4は、PLC1の機能を拡張するために用意されている。各拡張ユニット4には、その拡張ユニット4の機能に対応するフィールドデバイス(被制御装置)10が接続されることがあり、これにより、各フィールドデバイス10が拡張ユニット4を介して基本ユニット3に接続される。フィールドデバイス10は、センサやカメラ、バーコードリーダなどの入力機器であってもよいし、アクチュエータなどの出力機器であってもよい。また、一つの拡張ユニット4に対して複数のフィールドデバイスが接続されてもよい。
The
たとえば、拡張ユニット4bはモータ(フィールドデバイス10)を駆動してワークの位置決めする位置決めユニットであってもよいし、カウンタユニットであってもよい。カウンタユニットは手動パルサなどのエンコーダ(フィールドデバイス10)からの信号をカウントする。
For example, the
拡張ユニット4aは、基本ユニット3や拡張ユニット4bから収集対象データを収集し、フローを実行することで収集対象データにデータ処理を施して表示対象データを作成し、ダッシュボードを表示部7またはPC2に表示するための表示データを作成するデータ収集ユニットである。基本ユニット3はCPUユニットと呼ばれることもある。なお、PLC1とPC2とを含むシステムはプログラマブルロジックコントローラシステムと呼ばれてもよい。
The
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
なお、図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
<プログラム作成支援装置>
図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
PC2aのユーザは記憶装置12aに記憶されているプロジェクト編集プログラム14aをCPU11aに実行させて、操作部8aを通じてプロジェクトデータ15を編集する。CPU11aがプロジェクト編集プログラム14aを実行することで、プロジェクト作成部16とプロジェクト転送部17が実現される。プロジェクト作成部16はユーザ入力にしたがってプロジェクトデータ15を作成する。プロジェクト転送部17はプロジェクトデータ15をPLC1に転送する。プロジェクトデータ15は、一つ以上のユーザープログラム(例:ラダープログラム)と、基本ユニット3や拡張ユニット4の構成情報などを含む。構成情報は、基本ユニット3に対する複数の拡張ユニット4の接続位置や、基本ユニット3に備えられた機能(例:通信機能や位置決め機能)を示す情報、拡張ユニット4の機能(例:撮影機能)などを示す情報である。ここで、プロジェクトデータ15の編集には、プロジェクトデータ15の作成および変更(再編集)が含まれる。ユーザは、必要に応じて記憶装置12aに記憶されているプロジェクトデータ15を読み出し、そのプロジェクトデータ15を、プロジェクト編集プログラム14aを用いて変更することができる。通信部13aは、通信ケーブル9aを介して基本ユニット3と通信する。プロジェクト転送部17は通信部13aを介してプロジェクトデータを基本ユニット3に転送する。通信部13aは、通信ケーブル9bを介して拡張ユニット4aと通信する。
The user of the
変数情報19は、プロジェクトデータ15の一部であり、ユーザプログラム内で使用されている変数とそれに割り付けられているデバイス、データの型、初期値、コメントなどを含む情報である。変数情報19は、データ活用の際に収集対象となるデバイスを設定する際に役に立つ。たとえば、変数情報19から変数のリストが作成され、変数のリストからユーザによっていずれかの変数が指定されると、指定された変数に割り付けられているデバイスが変数情報19または当該リストから特定され、収集対象デバイスに決定される。なお、PC2の代わりに、上位システムとして機能するPLC1aのデータ活用ユニットが下位システムの変数情報19を読み出し、収集対象デバイスを決定してもよい。PC2が三つのPLC1について設定装置(プログラム作成支援装置)として機能する場合、PC2が収集設定を作成してもよい。図2にはこの例が示されている。プロジェクトデータ15aはPLC1a用のプロジェクトデータであり、変数情報19aはPLC1a用の変数情報である。プロジェクトデータ15bはPLC1b用のプロジェクトデータであり、変数情報19bはPLC1b用の変数情報である。プロジェクトデータ15cはPLC1c用のプロジェクトデータであり、変数情報19cはPLC1c用の変数情報である。三つのPLC1についてそれぞれ異なる設定装置によって設定される場合、上位システムが統括的に収集設定を作成することになろう。これにより、収集設定の作成が効率化しよう。収集対象は、デバイスだけでなく、変数そのものであってもよい。
The
<ダッシュボードの表示に使用されるPC>
図3はPC2bの電気的構成について説明するためのブロック図である。図3が示すように、PC2bは、CPU11b、表示部7b、操作部8b、記憶装置12bおよび通信部13bを備えている。表示部7b、操作部8b、記憶装置12bおよび通信部13bは、それぞれCPU11bに対して電気的に接続されている。記憶装置12bはRAMやROM、HDD、SSDを含み、さらに着脱可能なメモリカードを含んでもよい。
<PC used to display the dashboard>
FIG. 3 is a block diagram for explaining the electrical configuration of the
CPU11bはWebブラウザプログラム14dを実行することでWebブラウザ18を実現する。Webブラウザ18は、通信部13bを介して、拡張ユニット4aによって提供されるデータ活用アプリケーションの設定ページにアクセスしたり、ダッシュボードのページにアクセスしたりする。
The
<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を介して接続されている。なお、図4では拡張バス90に関する通信回路がCPU31に実装されているが、通信部33の一部として実装されてもよい。通信部33はネットワーク通信回路を有してもよい。CPU31は通信部33を介してプロジェクトデータをPC2aから受信する。
<PLC>
FIG. 4 is a block diagram for explaining the electrical configuration of the
ここで、拡張バス90について、補足説明する。この拡張バス90は、入出力リフレッシュに使用される通信バスである。入出力リフレッシュとは、基本ユニット3と拡張ユニット4との間でデバイス値を更新する処理である。入出力リフレッシュは、ラダープログラムが一回実行されるごとに(つまり、一スキャンごとに)、実行される。なお、一つのスキャン周期は、入出力リフレッシュの実行期間と、ユーザプログラムの実行期間と、エンド処理の実行期間とを含む。
Here, a supplementary explanation will be given regarding the
拡張ユニット4はCPU41とメモリ42を備えている。拡張ユニット4bのCPU41bは、デバイスに格納された基本ユニット3からの指示(デバイス値)にしたがってフィールドデバイス10を制御する。また、CPU41bは、フィールドデバイス10の制御結果をバッファメモリとよばれるデバイスに格納する。デバイスに格納された制御結果は入出力リフレッシュによって基本ユニット3に転送される。また、デバイスに格納されている制御結果は、基本ユニット3からの読み出し命令にしたがって、入出力リフレッシュとは異なるタイミングであっても、基本ユニット3に転送される。メモリ42はRAMやROMなどを含む。とりわけ、RAMにはバッファメモリとして使用される記憶領域が確保されている。メモリ42は、フィールドデバイス10によって取得されたデータ(例:静止画データや動画データ)を一時的に保持するバッファを有してもよい。
The
データ活用ユニットとして機能する拡張ユニット4aのCPU41aは、通信部43とケーブル9bを介してPC2bと通信する。データ活用ユニットは、データ活用アプリケーションを実行する拡張ユニットである。データ活用アプリケーションは、制御データを収集したりデータ処理したりするフローと、フローの実行結果を表示するダッシュボードとを含む。なお、制御データを収集する機能は、データ活用アプリケーション以外のユーザプログラムによって実現されてもよい。フローはデータを収集する演算ブロック、データ処理を実行する演算ブロック、および、表示データを作成する演算ブロックなどを有してもよい。ダッシュボードは、グラフ表示部品や数値表示部品などを有する。これらの表示部品は、HTMLデータ、CSSデータおよびJavaScript(登録商標)コードなどにより実現されてもよい。なお、HTMLデータ、CSSデータおよびJavaScript(登録商標)コードの集合体はWebアプリケーションと呼ばれてもよい。本実施形態で、フローはフローテンプレートにより実現される。フローテンプレートは予めアプリケーションごとに用意されており、ユーザにより指定されたパラメータが設定される一つ以上の演算ブロックを有している。ダッシュボードもテンプレートにより実現される。ダッシュボードテンプレートは、ユーザにより指定されたパラメータが設定される一つ以上の表示部品を有している。パラメータは、たとえば、ダッシュボードの名称、デバイス名、数値、ユニット変数名など多種多様な情報である。ユニット変数とは、拡張ユニット4aがフローの実行結果を保持するための変数である。
The
●基本ユニットのCPUにより実現される機能
図5はデータ活用に関してCPU31により実現される機能を示している。実行エンジン51は、スキャン周期ごとにユーザプログラムを繰り返し実行する。実行エンジン51は、CPU31の外部に設けられたASICまたはFPGAなどにより実現されてもよい。ASICは特定用途集積回路の略称である。FPGAはフィールドプログラマブルゲートアレイの略称である。これらの専用回路は、CPUとプログラムとの組み合わせよりも、特定のデータ処理を高速に実行できることが多い。収集部52aは、スキャン周期のうちエンド処理の期間においてデバイス部34から収集対象のデバイス値を収集してデータレコードを作成して第一バッファ37aに格納する。なお、エンド処理の期間でデータを収集することは必須ではなく、実行エンジン51で実行されるユーザプログラムにデータを収集するための記述(トリガ命令などのプログラムコード)が含まれていてもよい。ただし、エンド処理によってデータを収集するケースでは、ユーザプログラムの変更が不要であるといったメリットがある。また、収集周期は、収集設定36aにより指定された周期であってもよい。第一バッファ37aを設けることで、実行エンジン51は、収集や転送処理によるスキャンタイムの伸びなどの影響を受けにくくなる。収集対象のデバイス値は、収集設定36aにより指定されている。収集設定36aは、PC2aまたは拡張ユニット4aによって基本ユニット3に格納されうる。転送部53aは、第一バッファ37aに格納された一つ以上のデータレコードを、拡張バス90を介して、拡張ユニット4aに転送する。なお、転送部53aは、拡張バス90における通信トラフィックが空いているときに、転送処理を実行する。したがって、実行エンジン51aが入出力リフレッシュを実行している期間や、ユーザプログラムに記述された読み出し命令にしたがって拡張ユニット4のバッファメモリからデータを読み出している期間を避けて、転送処理が実行される。なお、拡張バス90の通信トラフィックは監視部54aによって監視されている。なお、データレコードの転送時間を短縮するために、圧縮エンジン55aが複数のデータレコードを圧縮してもよい。なお、圧縮エンジン55aはCPU31により実現される必要は無く、ASICまたはFPGAなどにより実現されてもよい。このように、第一バッファ37aを採用することで、転送処理とユーザプログラムを非同期で実行することが可能となる。
●Functions realized by the CPU of the basic unit FIG. 5 shows the functions realized by the
●データ活用ユニットの機能
図6は拡張ユニット4aのCPU41aによって実現される機能を説明する図である。なお、上位システムの拡張ユニット4aは上位ユニットと呼ばれ、下位システムの拡張ユニット4aは下位ユニットと呼ばれてもよい。はじめに下位ユニットのCPU41aにより実現される機能が説明される。ただし、上位ユニットのCPU41aも自己が接続されているPLC1aにおいてデータを収集してもよい。
●Functions of Data Utilization Unit FIG. 6 is a diagram illustrating the functions realized by the
収集部52cは、CPU41aが収集設定39にしたがってデータを収集する機能である。収集部52cは、CPU41aがユーザプログラムなどの制御プログラムを実行することで実現されうる。収集部52cは、収集設定39により指定されたデバイス値を基本ユニット3が収集して拡張ユニット4aの第二バッファ37bに転送するよう基本ユニット3を設定する。なお、収集部52cは、収集設定39に含まれている基本ユニット3の収集設定36aを基本ユニット3の記憶装置32に書き込んでもよい。収集設定39はPC2または上位システムとして動作している他のデータ活用ユニットによってメモリ42aに書き込まれうる。収集部52cとデータ処理部73とは基本的に非同期で動作できることが望ましい。これを実現するためにバッファが設けられてもよい。
The
収集部52cは、収集設定39により指定されたデバイス値を拡張ユニット4bが収集して拡張ユニット4aの第三バッファ37cに転送するよう拡張ユニット4bを設定してもよい。第二バッファ37bおよび第三バッファ37cを設けることで、データ処理部73の処理負荷が変動しても、データを取りこぼさず収集できるようになる。収集部52cは、収集設定39に含まれている拡張ユニット4bの収集設定36b(図7)を拡張ユニット4bのメモリ42bに書き込んでもよい。なお、これらの設定機能は設定部71によって実現されてもよい。設定部71は、PC2aまたはPC2bから収集設定39、処理設定61、表示設定62を受信してメモリ42aに書き込む。処理設定61は、データ処理部73により収集データに対して実行されるデータ処理を定義する情報とフロー(プログラム)を含む。表示設定62は、Webサーバ70を通じてWebブラウザ18にデータ処理結果を提供するダッシュボードのテンプレート(HTMLデータ、CSS、JavaScript(登録商標)のコードなど)を含む。生成部74は、ダッシュボードの表示部品を定義する表示設定62にしたがって、ダッシュボードのテンプレートにデータ処理結果を代入することで、ダッシュボードの表示データを作成する。表示データは、たとえば、HTMLデータや画像データ、CSS(カスケーディングスタイルシート)、JavaScript(登録商標)のコードなどであってもよい。表示部品としては、たとえば、円グラフ部品、棒グラフ部品、折れ線グラフ部品、数値表示部品などが含まれる。Webサーバ70は、Webブラウザ18によりダッシュボードのWebページにアクセスがあると、ダッシュボードの表示データをWebブラウザ18に送信する。Webブラウザ18が表示データを受信してダッシュボードを表示する。
The
なお、複数のデータ活用アプリケーションが提供されることがある。この場合、データ活用アプリケーションごとに必要とするデータと読み出しタイミングが異なることがある。この場合、データ活用アプリケーションごとにサブバッファがメモリ42aに確保されてもよい。収集部52cは、第二バッファ37bに格納されたデータレコードを読み出し、第一データ活用アプリケーション用のデータを第一サブバッファ38aに格納する。収集部52cは、第二バッファ37bに格納されたデータレコードを読み出し、第二データ活用アプリケーション用のデータを第二サブバッファ38bに格納する。なお、収集部52cは、第三バッファ37cに格納されたデータレコードを読み出し、第一データ活用アプリケーション用のデータを第一サブバッファ38aに格納してもよい。収集部52cは、第三バッファ37cに格納されたデータレコードを読み出し、第二データ活用アプリケーション用のデータを第二サブバッファ38bに格納してもよい。データ処理部73は、第一データ活用アプリケーションにしたがってデータを第一サブバッファ38aから読み出してデータ処理を実行し、処理結果を生成する。データ処理部73は、第二データ活用アプリケーションにしたがってデータを第二サブバッファ38bから読み出してデータ処理を実行し、処理結果を生成する。解凍エンジン75は、基本ユニット3の圧縮エンジン55aおよび拡張ユニット4bの圧縮エンジン55bと対を成す機能である。解凍エンジン75は、基本ユニット3により圧縮されて転送されてきたデータを解凍して第二バッファ37bに格納する。解凍エンジン75は、拡張ユニット4bにより圧縮されて転送されてきたデータを解凍して第三バッファ37cに格納する。これにより拡張バス90の通信トラフィックの混雑が緩和されるようになろう。解凍エンジン75はASICまたはFPGAなどにより実現されてもよい。このように基本ユニット3および拡張ユニット4a、4bとの間のデータの伝送は拡張バス90を介して実行される。
Note that multiple data utilization applications may be provided. In this case, the required data and read timing may differ depending on the data utilization application. In this case, a sub-buffer may be secured in the
データ活用アプリケーションごとに必要となるデータが複数である場合がある。その場合、各スキャンで収集されたデータの塊をバッファに維持したままサブバッファに必要な複数のデータを格納することもある。さらに、サブバッファにデータを分配する場合にも、各レコードにタイムスタンプ等が付与されもよい。図25が示すように、第二バッファ37b(第三バッファ37cであってもよい)は、収集されたデータの塊を保持している。一つのレコードはスキャン番号と、タイマーの値(タイムスタンプ)と、収集されたデータを含む。この例で、収集されたデータは、リレーRL1~RL3、デバイスDev1、Dev2を含む。第一データ活用アプリケーション2501は、収集されたデータのうち、リレーRL1~RL3を必要とする。したがって、スキャン番号、タイマーの値、リレーRL1~RL3が第二バッファ37bから読み出されて、第一サブバッファ38aに格納される。第一データ活用アプリケーション2501は、第一サブバッファ38aからスキャン番号、タイマーの値、リレーRL1~RL3を読み出して表示画面(ソースデータ)を作成する。第二データ活用アプリケーション2502は、収集されたデータのうち、リレーRL3、デバイスDev1、Dev2を必要とする。したがって、スキャン番号、タイマーの値、リレーRL3、デバイスDev1、Dev2が第二バッファ37bから読み出されて、第二サブバッファ38bに格納される。第二データ活用アプリケーション2502は、第二サブバッファ38bからスキャン番号、タイマーの値、リレーRL3、デバイスDev1、Dev2を読み出して表示画面(ソースデータ)を作成する。このようにサブバッファを活用することで、元のデータを変更することなくバッファ内に維持することが可能となる。バッファ内に保持された元のデータは他の目的で利用可能となる。
There are cases where multiple pieces of data are required for each data utilization application. In that case, a plurality of pieces of necessary data may be stored in a sub-buffer while maintaining a chunk of data collected in each scan in a buffer. Furthermore, when distributing data to sub-buffers, a timestamp or the like may be added to each record. As shown in FIG. 25, the
受け渡しバッファ40は上位システムと下位システムとの間で収集されたデータを転送する際に利用される。受け渡しバッファ40は上位システムと下位システムとのうちの少なくとも一方に設けられていればよい。たとえば、下位システムとして機能するPLC1bのデータ活用ユニットは、PLC1b内で収集した時系列データを受け渡しバッファ40に格納する。上位システムとして機能するPLC1aのデータ活用ユニットは、下位システムの受け渡しバッファ40からPLC1bに関する時系列データを取得する。PLC1aと比較してPLC1bが高速で動作している場合、PLC1bにおいて非常に短い間だけONとなるビットデバイスのデバイス値を取得できない可能性がある。そこで、受け渡しバッファ40を設けることで、時系列データの取得漏れが生じにくくなる。また、このバッファ配置は、統計処理などのデータ処理を下位システムで実行し、処理結果を上位システムに転送するケースでも、有利であろう。下位システムは、処理結果を受け渡しバッファ40に格納する。上位システムは、定期的に受け渡しバッファ40を確認する。上位システムは、処理結果が受け渡しバッファ40に格納されていれば、処理結果を読み出す。この場合、受け渡しバッファ40としてはFIFOタイプが向いていよう。
The
受け渡しバッファ40がPLC1aのデータ活用ユニットに設けられてもよい。下位システムとして機能するPLC1bのデータ活用ユニットは、PLC1b内で収集した時系列データを、上位システムであるPLC1aのデータ活用ユニットの受け渡しバッファ40に格納する。
The
●データ活用に関連する拡張ユニット4bの機能
図7は拡張ユニット4bのCPU41bによって実現される機能を説明する図である。
●Functions of the
実行エンジン51bは拡張ユニット4bの基本機能(モーションユニットであればモーションフローの実行など)を実行する。収集部52bは、収集設定36により指定されたデータを、収集設定36により指定されたタイミングでデバイス部34bから収集して第四バッファ37dに格納する。転送部53bは、収集設定36により指定されたタイミング、または、拡張ユニット4aにより転送要求が受信されたタイミングで、第四バッファ37dに格納されているデータレコードを読み出して、拡張バス90を介して、拡張ユニット4aの第三バッファ37cに転送する。なお、監視部54により監視される拡張バス90の通信トラフィックが少ないタイミングに、転送部53bがデータレコードの転送を実行してもよい。圧縮エンジン55bは、収集設定36にしたがってデータレコードを圧縮する。つまり、転送部53bは、圧縮エンジン55bにより情報圧縮されたデータレコードを拡張ユニット4aに転送してもよい。圧縮エンジン55bは、CPU41bにより実現されてもよいが、高速処理の観点やCPU41bの処理負荷の軽減の観点から、ASICまたはFPGAにより実現されてもよい。
The
●データレコードの例
図8は収集部52aによって第一バッファ37aに書き込まれるデータレコード91を示している。複数のデータレコード91は時系列データの一例である。この例で、収集部52aは一スキャン周期ごとに、Dev0、Dev1、Dev10というデバイス名のデバイス値をデバイス部34aから収集し、収集カウントおよびタイマーから取得された時刻情報を付加して一つのデータレコードを作成し、第一バッファ37aに格納する。なお、収集対象は、拡張ユニット4bに割り当てられたバッファメモリまたはデバイスに格納されたデータであってもよい。この例で第一バッファ37aはFIFO(先入先出)タイプのバッファである。収集カウントは、一つのデータレコードを収集するたびに1ずつカウントアップされるカウンタのカウント値である。収集カウントはシーケンシャルに付与される番号であるため、データレコードの抜けや圧縮を検出することに役立つ。
●Example of data record FIG. 8 shows a
タイムスタンプなどの時刻情報は、たとえば、基本ユニット3で取得されたデータと、拡張ユニット4bで取得されたデータとを対比可能にダッシュボードに表示する際に役立つ。一般に、基本ユニット3における収集タイミングと拡張ユニット4bにおける収集タイミングとは一致しない。そのため、基本ユニット3の動作と拡張ユニット4bの動作とを比較するためには、基本ユニット3のデータと、拡張ユニット4bのデータとを紐付けるための情報が必要となる。一般に、基本ユニット3は拡張ユニット4a、4bはユニット間同期などによって時刻情報を同期できる。したがって、基本ユニット3と拡張ユニット4bはそれぞれデータレコードを収集したときの時刻情報をデータレコードに付与することで、データ処理部73は、異なるユニットで取得された複数のデータレコードを時間軸上で整列させることができる。
Time information such as a timestamp is useful, for example, when displaying data acquired by the
●転送のタイミング
図9はデータレコードの転送タイミングを説明する図である。図9が示すようにPLC1は、入出力のリフレッシュ、ユーザプログラムの実行およびエンド処理を繰り返し実行する。スキャン周期の伸びを低減するために、転送処理は、入出力のリフレッシュの期間を避けて実行される。同様に、スキャン周期の伸びを低減するために、転送処理は、UREADおよびUWRITの実行期間を避けて実行される。UREADは拡張ユニット4に割り当てられているバッファメモリからデータを読み出す命令であり、ユーザプログラム中に記述される。そのため、基本ユニット3は、ユーザプログラムの実行期間中に、UREADにしたがって拡張ユニット4にアクセスしてバッファメモリからデータを取得する。UWRITは、拡張ユニット4に割り当てられているバッファメモリにデータを書き込む命令であり、ユーザプログラム中に記述される。基本ユニット3は、ユーザプログラムの実行期間中に、UWRITにしたがって拡張ユニット4にアクセスしてバッファメモリにデータを書き込む。
●Transfer timing FIG. 9 is a diagram illustrating the transfer timing of data records. As shown in FIG. 9, the
図9が示すように、入出力のリフレッシュ、UREADおよびUWRITを除いた残りの転送可能期間において、転送処理は、拡張バス90で実行される。たとえば、収集設定36aによって5個のデータレコードずつ転送処理を実行することが設定されていたと仮定する。この場合、転送部53aは、第一バッファ37aに5個のデータレコードの蓄積が完了した後であって、最初の転送可能期間または拡張ユニット4aによって転送要求を受信したタイミングで、転送処理を実行する。
As shown in FIG. 9, transfer processing is performed on the
●収集設定の変更
データの収集は、たとえば、工場の稼働期間において常時実行されてもよい。この場合、午前中に使用されていた収集設定と午後に使用される収集設定とが異なることがある。この場合、複数のデータレコードのうちどのデータレコードが第一の収集設定に基づき取得され、どのデータレコードが第二の収集設定に基づき取得されたかを簡単に識別できれば便利であろう。
●Changing collection settings Data collection may be performed constantly, for example, during the operating period of the factory. In this case, the collection settings used in the morning may be different from the collection settings used in the afternoon. In this case, it would be convenient to be able to easily identify which of the plurality of data records were acquired based on the first collection configuration and which data records were acquired based on the second collection configuration.
図10は収集設定の途中変更に対応可能なデータレコード91のフォーマットを示している。この例では、複数の収集設定を区別するための識別情報がデータレコード91に追加されている。設定識別情報"1"は第一の収集設定に対応している。第一の収集設定において収集対象のデバイスはDev1とDev10である。設定識別情報"2"は第二の収集設定に対応している。第一に収集設定において収集対象のデバイスはDev1、Dev10、Dev11である。このようなフォーマットを採用することで、データ処理部73は、収集設定ごとにデータ処理対象を分けて、データ処理を実行することが可能となる。たとえば、設定識別情報"1"は、第一のデータ処理設定に対応し、設定識別情報"2"は、第二のデータ処理設定に対応していてもよい。データ処理部73は、設定識別情報に対応したデータ処理設定を処理設定61から取得し、取得したデータ処理設定にしたがってデータレコードにデータ処理を施してもよい。
FIG. 10 shows a format of a
なお、データレコード91は受け渡しバッファ40に格納される際にCPU41aによってシステムIDが付与されてもよい。システムIDは、PLC1a~1cを識別するための識別情報である。
Note that a system ID may be assigned to the
●情報圧縮
図11はデータレコードの情報圧縮を説明する図である。データレコード群91aは情報圧縮前のデータレコードを示している。ここでは収集対象として四つのリレーデバイスRL1,RL2,RL3,RL4が指定されている。また、収集カウントとしてスキャン番号が採用されている。カウンタは、タイマーなどにより取得される時刻情報(例:あるリレーがONになってからOFFになるまでの時間間隔を示す数値)であってもよい。データレコード群91aにおいてスキャン番号"1"のデータレコードと、スキャン番号"2"のデータレコードとの間ではリレーデバイスの変化点が存在しない。つまり、スキャン番号"2"のデータレコードは圧縮(廃棄または削除)可能である。しかし、スキャン番号"3"のデータレコードのリレーデバイスRL1とスキャン番号"1"のデータレコードのリレーデバイスRL1とが異なっている。このように、スキャン番号"3"は変化点を有しているため、スキャン番号"3"のデータレコードは圧縮されない。スキャン番号"3"のデータレコードと、スキャン番号"4"のデータレコードとの間ではリレーデバイスの変化点が存在しないため、スキャン番号"4"のデータレコードは圧縮可能である。同様に、スキャン番号"5"のデータレコードと、スキャン番号"6"のデータレコードとの間ではリレーデバイスの変化点が存在しないため、スキャン番号"6"のデータレコードは圧縮可能である。このような変化点に着目した情報圧縮を実行することで、圧縮されたデータレコード群91bが実現される。圧縮されたデータレコード群91bを構成する各データレコードは変化点を有している。
●Information compression FIG. 11 is a diagram illustrating information compression of data records. A data record group 91a shows data records before information compression. Here, four relay devices RL1, RL2, RL3, and RL4 are designated as collection targets. Additionally, scan numbers are used as collection counts. The counter may be time information obtained by a timer or the like (eg, a numerical value indicating a time interval from when a certain relay is turned on until it is turned off). In the data record group 91a, there is no change point in the relay device between the data record with scan number "1" and the data record with scan number "2". In other words, the data record with scan number "2" can be compressed (discarded or deleted). However, the relay device RL1 of the data record with scan number "3" and the relay device RL1 of the data record with scan number "1" are different. In this way, since scan number "3" has a change point, the data record of scan number "3" is not compressed. Since there is no relay device change point between the data record with scan number "3" and the data record with scan number "4", the data record with scan number "4" can be compressed. Similarly, since there is no relay device change point between the data record with scan number "5" and the data record with scan number "6", the data record with scan number "6" can be compressed. By performing information compression focusing on such change points, a compressed data record group 91b is realized. Each data record constituting the compressed data record group 91b has a change point.
●ダッシュボードの一例
図12はWebブラウザ18のUI130を示している。UI130には、URL入力部131と、ダッシュボードの表示領域105とが含まれている。URL入力部131には、ダッシュボードに割り当てられたURLが入力されている。表示領域105には、データ処理部73によって収集対象データから求められたデータ処理結果が示されている。この例では、リレーデバイスRL1、RL2の波形が含まれている。データレコードはスキャン周期ごとに収集されるため、たとえば、一日にわたりデータ収集を継続すると、多数のデータレコードが収集される。データ処理部73は、リレーデバイスRL1の立ち上がりを基準としてリレーデバイスRL1について取得された複数の波形を重ねて表示している。この例では、リレーデバイスRL1の立下りのタイミングにずれが生じている。たとえば、データ処理部73は、複数の波形の平均値を演算し、平均値に相当する波形を太い線で表示してもよい。立下りのずれについて合格範囲dX1が存在してもよい。データ処理部73は、各立下りのタイミングが合格範囲dX1に含まれていれば、合格と判定してもよい。データ処理部73は、リレーデバイスRL2についても同様の処理を実行してもよい。ただし、リレーデバイスRL2について立ち上がりのずれが合格範囲dX2に含まれていないため、データ処理部73は、不合格と判定してもよい。
●Example of Dashboard FIG. 12 shows the
このように不合格が発生すると、CPU41aは、所定のメールアドレスに対してエラー報告メールを送信してもよい。エラー報告メールには、ダッシュボードのURLを含むリンクが含まれていてもよい。エラー報告メールの受信者はこのリンクをクリックすることで、Webブラウザ18を起動してダッシュボードを表示して波形を確認することで、エラーの原因を解消してもよい。
When a failure occurs in this way, the
なお、拡張ユニット4bとしてモーションユニットがある。モーションユニットは、基本ユニット3によって指令値にしたがって、産業機械を動作させ、産業機械の動作結果を保持している。指令値は、たとえば、アーム型ロボットのアームの座標であってもよい。動作結果(現在値)は、センサなどによって取得された実際のアームの座標であってもよい。拡張ユニット4aは、指令値とそれに対応する現在値とを時系列データとして拡張ユニット4bから取得し、指令値と現在値とのずれをダッシュボードに表示してもよい。データ処理部73は、指令値と現在値との差分を求め、時間の経過とともに差分がどのように変化しているかを示すグラフをダッシュボードに表示してもよい。このような波形をユーザが確認することで、発生したエラーの原因が消耗品の寿命に起因したものなのか、外部から加えられた突発的なイベントにあるのかを判断しやすくなろう。たとえば、消耗品の寿命の末期が近づくと徐々に波形の応答が遅れることがある。一方で、突発的なイベントが原因でエラーが発生した場合、イベントの発生時刻でのみ波形の変化が発生する。よって、ユーザは波形を観察することでエラー原因を発見し、その対策を施すことが可能となろう。
Note that there is a motion unit as the
<フローチャート>
●拡張ユニット4a
図13は拡張ユニット4aのCPU41aにより実行される収集処理を示すフローチャートである。CPU41aは、特定のリレーデバイスがONになると、以下の処理を実行する。
<Flowchart>
●
FIG. 13 is a flowchart showing the collection process executed by the
S1でCPU41a(設定部71)は基本ユニット3と拡張ユニット4bを設定する。たとえば、CPU41aは基本ユニット3のための収集設定36aを基本ユニット3に転送する。基本ユニット3は、収集設定36aを記憶装置32に格納する。CPU41aは基本ユニット3のための収集設定36bを拡張ユニット4bに転送する。拡張ユニット4bは、収集設定36bをメモリ42bに格納する。
In S1, the
S2でCPU41a(データ処理部73または収集部52c)は第二バッファ37bまたは第三バッファ37c(第一サブバッファ38aまたは第二サブバッファ38b)に所定量の収集データが格納されているかどうかを判定する。所定量は処理設定61により定義されている。ここでは、処理設定61により指定されたバッファが確認されれば十分であり、常に、第二バッファ37bと第三バッファ37cとの両方が確認対象となるわけではない。CPU41は、バッファに所定量のデータが格納されるまで待機する。バッファに所定量のデータが格納されると、CPU41aはS3に進む。
In S2, the
S3でCPU41a(データ処理部73)はバッファから読み出した所定量のデータに対してデータ処理を実行して、データ処理結果を求める。データ処理の内容は処理設定61により定義されている。データ処理結果はメモリ42aに保持される。
In S3, the
S4でCPU41a(生成部74)はPC2bのWebブラウザ18からダッシュボードの表示要求(Webアクセス)があったかどうかを判定する。表示要求が無ければ、CPU41aはS2に進み、データの収集とデータ処理とを継続する。表示要求があれば、CPU41aはS5に進む。
In S4, the
S5でCPU41a(生成部74)は表示要求に対応するダッシュボードの表示データを作成する。たとえば、CPU41aは、メモリ42aに格納されているデータ処理結果をダッシュボードのテンプレートに代入して表示データを作成する。
In S5, the
S6でCPU41a(Webサーバ70)は表示データをPC2bのWebブラウザ18に送信する。これにより、PC2bのWebブラウザ18はダッシュボードを表示できるようになる。
In S6, the
●基本ユニット3
図14は基本ユニット3のCPU31により実行される収集処理を示すフローチャートである。CPU31は、特定のリレーデバイスがONになると、以下の処理を実行する。
●
FIG. 14 is a flowchart showing the collection process executed by the
S11でCPU31(収集部52a)は収集設定36aにより指定された収集タイミング(例:1スキャン周期ごと、トリガ信号が入力されるごと、所定周期ごと)が到来したかどうかを判定する。収集タイミングが到来すると、CPU31はS12に進む。
In S11, the CPU 31 (
S12でCPU31(収集部52a)は、収集設定36aにより指定された収集対象データをデバイス部34aから収集して第一バッファ37aに格納する。
In S12, the CPU 31 (
S13でCPU31(転送部53a)は、収集設定36aにより指定された転送条件が満たされたかどうかを判定する。転送条件は、たとえば、第一バッファ37aに蓄積されているデータレコードの数であってもよい。転送条件が満たされていなければ、CPU31は、S11に戻り、データの収集を継続する。転送条件が満たされていれば、CPU31はS14に進む。
In S13, the CPU 31 (
S14でCPU31(監視部54a)は、拡張バス90の通信トラフィックが少ないかどうかを判定する。通信トラフィックが多ければ、CPU31はS11に戻り、データの収集を継続する。通信トラフィックが少なければ、CPU31はS15に進む。
In S14, the CPU 31 (
S15でCPU31(転送部53a)は第一バッファ37aから所定量のデータレコードを読み出して第二バッファ37bに転送する。所定量も収集設定36aにより定義されている。
In S15, the CPU 31 (
●拡張ユニット4b
図15は拡張ユニット4bのCPU41bにより実行される収集処理を示すフローチャートである。CPU41bは、特定のリレーデバイスがONになると、以下の処理を実行する。
●
FIG. 15 is a flowchart showing the collection process executed by the
S21でCPU41b(収集部52b)は収集設定36bにより指定された収集タイミング(例:トリガ信号が入力されるごと、所定周期ごと)が到来したかどうかを判定する。収集タイミングが到来すると、CPU41bはS22に進む。
In S21, the
S22でCPU41b(収集部52b)は、収集設定36aにより指定された収集対象データをデバイス部34aから収集して第四バッファ37dに格納する。
In S22, the
S23でCPU41b(転送部53b)は、収集設定36bにより指定された転送条件が満たされたかどうかを判定する。転送条件は、たとえば、第四バッファ37dに蓄積されているデータレコードの数であってもよい。転送条件が満たされていなければ、CPU41bは、S21に戻り、データの収集を継続する。転送条件が満たされていれば、CPU41bはS24に進む。
In S23, the
S24でCPU41b(監視部54b)は、拡張バス90の通信トラフィックが少ないかどうかを判定する。通信トラフィックが多ければ、CPU41bはS21に戻り、データの収集を継続する。通信トラフィックが少なければ、CPU41bはS25に進む。
In S24, the
S25でCPU41b(転送部53b)は第四バッファ37dから所定量のデータレコードを読み出して第三バッファ37cに転送する。所定量も収集設定36bにより定義されている。
In S25, the
<上位システムによる下位システムからのデータ収集と活用>
すでに説明されたように、データ活用ユニットは上位モードと下位モードとを有していてもよい。ここでは、PLC1aが上位モードで動作する上位システムとして機能する。PLC1b、1cが下位モードで動作する下位システムとして機能する。PC2aまたはPLC1aの拡張ユニット4aは、PLC1b、1cのための収集設定39を作成する。
<Collection and utilization of data from lower-level systems by higher-level systems>
As already explained, the data utilization unit may have a higher mode and a lower mode. Here, the
●収集設定の作成
図16はPC2aのCPU11aまたはPLC1aの拡張ユニット4aのCPU41aによって実行される設定方法を示している。ここではCPU41aによって設定方法が実行されるが、CPU11aによって実行されてもよい。PC2bのWebブラウザを通じてユーザによる指示がCPU41aに入力される。CPU41aのWebサーバ70は、収集設定39を作成するために役立つWebページを提供するとともに、ユーザ入力を受け付ける。
●Creation of collection settings FIG. 16 shows a setting method executed by the
S31でCPU41a(設定部71)はPLC1a~1cの変数情報19a~19cを取得する。たとえば、CPU41aは、図17に示されるような設定UI1700をPC2bの表示部7aなどに表示する。設定UI1700は、システムID、ネットワークアドレスおよび変数情報のファイル名などを含む。システムIDは、PLC1a~1cを識別するための識別情報である。ネットワークアドレスは、PLC1b、1cの拡張ユニット4aに付与されているIPアドレスなどである。変数情報は、PLC1b、1cにおいて変数情報19b、19cを保持しているファイルのファイル名である。CPU41aは、設定UI1700を通じてシステムID、ネットワークアドレスおよび変数情報のファイル名を受け付けて、接続設定情報を作成し、メモリ42aに格納する。CPU41aは、接続設定情報に含まれているネットワークアドレスにしたがって下位システムであるPLC1bに接続し、変数情報19bを読み出す。CPU41aは、接続設定情報に含まれているネットワークアドレスにしたがって下位システムであるPLC1cに接続し、変数情報19cを読み出す。CPU11aが設定を実行する場合、CPU11aは記憶装置12aから変数情報19a~19cを読み出す。
In S31, the
図18は、変数情報19を作成するための変数編集UI1800である。PC2aのCPU11aはプロジェクトデータ15からグローバル変数とローカル変数を抽出し、抽出された変数のリストを含む変数情報19を作成する。変数情報19は、たとえば、変数名、変数のデータ型、変数に割り付けられたデバイス名(割り付けデバイス)、初期値などの情報を含む。ユーザは、操作部8aを操作することで変数情報19を編集する。変数情報19は、プロジェクトデータ15の一部を構成してもよいし、プロジェクトデータ15から独立していてもよい。いずれにしても、変数情報19は、PC2aからPLC1に転送される。これにより、上位システムのCPU41aは下位システムの変数情報19を下位システムから取得できるようになる。変数情報19には各PLCのシステムIDも含まれている。
FIG. 18 shows a
S32でCPU41a(設定部71、Webサーバ70)は、収集対象の設定UIをPC2bの表示部7aに表示する。CPU41a(Webサーバ70)は設定UIに相当するWebページをPC2bに送信する。一方、CPU11aが設定を実行する場合、CPU11aは表示部7aに設定UIを表示する。
In S32, the
S33でCPU41a(設定部71、Webサーバ70)は、収集対象の設定UIを通じて収集対象などの指定を受け付ける。CPU41a(Webサーバ70)はHTTP通信によりユーザ入力を受け付ける。一方、CPU11aが設定を実行する場合、CPU11aは操作部8aを通じてユーザ入力を受け付ける。
In S33, the
S34でCPU41a(設定部71)は、収集対象などの指定に基づき収集設定39を作成する。一方、CPU11aが設定を実行する場合、CPU11aはユーザ入力にしたがって収集設定39を作成する。
In S34, the
S35でCPU41a(設定部71)は収集設定39を下位システム(例:PLC1b、PLC1c)に転送する。一方、CPU11aが設定を実行する場合、CPU11aは収集設定39をPLC1a~1cに転送する。
In S35, the
図19は収集対象の設定UI1900を示している。設定UI1900は、設定対象のシステムを選択するためのプルダウンメニュー1901と、収集対象指定部1902とを有している。CPU41aは、変数情報19からシステムIDを取得して、プルダウンメニュー1901にシステムIDを列挙する。この例では、システムIDとして"PLC1b"が選択されているが、"PLC1c"または"PLC1a"が選択されてもよい。CPU41aは、プルダウンメニュー1901により指定されたシステムIDに関連付けられている変数情報19bをメモリ42aから読み出して、収集対象指定部1902に反映させる。収集対象指定部1902は、収集対象となる変数またはデバイスを選択するためのプルダウンメニュー1903を有している。CPU41aは、PLC1bに関連付けられている変数情報19bに含まれている変数名やデバイス名をプルダウンメニュー1903に列挙する。CPU41aは変数やデバイスのデータ型の指定を受け付けてもよい。格納先指定部1904は、収集対象データを格納するバッファの名称(例:PLC1bの受け渡しバッファ40またはPLC1aの受け渡しバッファ40)の指定を受け付ける。CPU41aはバッファのタイプ(例:FIFO、リングなど)の指定を受け付けてもよい。CPU41aは設定UI1900を通じて受け付けた指定情報を用いて収集設定39を作成する。
FIG. 19 shows a collection
●下位システムの収集動作
図20は下位システムにおける収集動作を示すフローチャートである。なお、すでに説明された処理と同一または類似した処理には同一の参照符号が付与されており、簡潔に説明される。なお、PLC1a内でのデータ収集に関しては、PLC1aは図13に示されたフローチャートにしたがってデータを収集する。
●Collection operation in the lower system FIG. 20 is a flowchart showing the collection operation in the lower system. Note that processes that are the same as or similar to those already described are given the same reference numerals and will be briefly described. Regarding data collection within the
S1で下位システムのCPU41a(設定部71)は、上位システムまたはPC2aによって作成された収集設定39にしがって下位システムの基本ユニット3と拡張ユニット4を設定する。
In S1, the
S2でCPU41a(データ処理部73または収集部52c)は第二バッファ37bまたは第三バッファ37c(第一サブバッファ38aまたは第二サブバッファ38b)に所定量の収集データが格納されているかどうかを判定する。所定量は処理設定61により定義されている。ここでは、処理設定61により指定されたバッファが確認されれば十分であり、常に、第二バッファ37bと第三バッファ37cとの両方が確認対象となるわけではない。CPU41は、バッファに所定量のデータが格納されるまで待機する。バッファに所定量のデータが格納されると、CPU41aはS3に進む。
In S2, the
S3でCPU41a(データ処理部73)はバッファから読み出した所定量のデータに対してデータ処理を実行して、データ処理結果を求める。データ処理の内容は処理設定61により定義されている。データ処理結果はメモリ42aに保持される。図20では、S3の次にS9が設けられている。
In S3, the
S9でCPU41a(データ処理部73または収集部52c)は収集設定39により指定されたデータ(例:PLC1において収集されたデータおよびデータ処理結果)を、収集設定39により指定された受け渡しバッファ40に格納する。受け渡しバッファ40は、下位システムのデータ活用ユニット(拡張ユニット4a)に設けられてもよいし、上位システムのデータ活用ユニット(拡張ユニット4a)に設けられてもよい。受け渡しバッファ40の位置は、収集設定39により指定されている。
In S9, the
●上位システムの収集動作
図21は下位システムにおける収集動作を示すフローチャートである。なお、すでに説明された処理と同一または類似した処理には同一の参照符号が付与されており、簡潔に説明される。
●Collection operation in the upper system FIG. 21 is a flowchart showing the collection operation in the lower system. Note that processes that are the same as or similar to those already described are given the same reference numerals and will be briefly described.
S41で上位システムのCPU41a(収集部52c)は、上位システムの収集設定39に含まれている読み出し条件が満たされたかどうかを判定する。読み出し条件は、定期的なタイミングであってもよいし、受け渡しバッファ40に所定量のデータが格納されたことであってもよい。読み出し条件が満たされると、CPU41aはS42に進む。
In S41, the
S42でCPU41a(データ処理部73または収集部52c)は受け渡しバッファ40からデータを読み出す。上位システムのCPU41aはPLC1a~1cから取得されたデータについてS3~S6を実行する。データの数は増えるものの、基本的な処理の流れは同じである。
In S42, the
CPU41aは、データ処理を実行する前に、PLC1a内で収集された時系列データと、PLC1b、1c内でそれぞれ収集された時系列データとを、タイムスタンプを用いて、統合してもよい。これにより、同一時刻に、異なる複数のPLC1a~1cで取得されたデータを対比しやすくなるであろう。
Before executing data processing, the
●変数情報の利用
収集された時系列データやその分析結果を表示するダッシュボードは複数の表示部品を有している。その一方で、PC2は変数情報19a~19cを有していてもよい。よって、PC2は変数情報19a~19cを利用して、ダッシュボードを構成する表示部品の設定を容易化してもよい。
●Use of variable information The dashboard that displays collected time-series data and its analysis results has multiple display parts. On the other hand, the
図22はダッシュボード120の一例を示している。図22において凡例部121は、解析対象のデータや分析結果に割り当てられた色を示している。グラフ部122は、ロス解析などのデータ処理結果を表示する一つ以上のグラフを含む。グラフの種類はダッシュボードごとに予め用意されていてもよい。解析結果表示部123は、ロス解析などのデータ処理結果を表示する。解析結果表示部123に表示される表示対象もダッシュボードごとに予め用意されていてもよい。現在状態表示部124は、PLC1の現在状態を示す。現在状態表示部124は、PLC1a、1b、1cのそれぞれについて個別に用意されていてもよい。PLC選択部125は、PLC1a、1b、1cのうちダッシュボードにデータ処理結果を表示される対象となるPLCを選択するためのプルダウンメニューである。この例では、PLC選択部125においてPLC1bが選択されているため、ダッシュボード120は、PLC1bについてのデータ処理結果を表示する。PLC選択部125においてPLC1cが選択されると、CPU41aは、PLC1cについてのデータ処理結果をダッシュボード120が表示するよう、表示データを切り替える。
FIG. 22 shows an example of the
CPU41aやPC2のCPU11aはダッシュボード120を設定してもよい。CPU11aはダッシュボード120を設定する際に、ダッシュボード120のプレビューを表示部7aに表示してもよい。ここで、CPU11aは、ポインタ101によりいずれかの表示部品が右クリックされたことを検知すると、表示部品の設定UIを表示してもよい。
The
図23は設定UI2300を示す図である。設定UI2300は、プレビューにおいて右クリックされた表示部品を設定するためのUIである。参照先指定部2301は、表示部品に表示される変数やデバイス値の指定を受け付ける。CPU11aは、参照先指定部2301に"PLC1b"が入力されると、変数情報19bを変数等の検索対象に設定する。操作部8aを通じて"PLC1b"に続いて"."と"E"が入力されると、CPU11aは、"E"ではじまる変数を変数情報19bから抽出し、抽出された変数の名称"ErrorNo"を参照先指定部2301に入力する。つまり、ユーザは、変数名のすべてを入力することなく、変数名を指定することが可能となる。このように、変数情報19を利用することで、ダッシュボードの設定が容易化されてもよい。
FIG. 23 is a diagram showing the
<まとめ>
[観点1]
図1が示すように、本実施形態によれば、複数のデータ活用ユニット(例:PLC1a~1cの拡張ユニット4a)を有するデータ活用システムが提供される。複数のデータ活用ユニットのうち上位ユニット(例:PLC1aの拡張ユニット4a)において、CPU41aや設定部71は、複数のデータ活用ユニットのうち下位ユニット(例:PLC1b、1cの拡張ユニット4a)に対して収集対象となるデータを指定する指定情報(例:収集設定39)を設定する設定手段として機能する。CPU41aや収集部52cは、下位ユニットに蓄積された収集対象となるデータ(例:デバイス値、変数、分析結果など)を収集する収集手段として機能する。複数の収集対象となるデータは、時系列データを形成してもよい。データ処理部73や生成部74は、収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段として機能する。下位ユニットは、プログラマブルロジックコントローラ(例:PLC1b、1c)を構成する拡張ユニットであってもよいが、他のユニットであってもよい。PLC1b、1cのCPU41aや収集部52cは指定情報にしたがって、下位ユニットに接続された基本ユニット3において取得されたデータを基本ユニット3から取得する取得手段として機能する。受け渡しバッファ40は、上位ユニットまたは下位ユニットに設けられ、取得手段により取得されたデータを下位ユニットから上位ユニットに受け渡すために当該データを蓄積するバッファの一例である。上位ユニットの収集手段(例:収集部52cまたはデータ処理部73)は、バッファから収集対象となるデータを読み出すように構成されている。このような受け渡しバッファ40を採用することで、時系列データを漏れなく収集することが可能となろう。また、上位ユニットと下位ユニットとが複雑なハンドシェイクを実行することなく、収集対象データを受け渡すことが可能となろう。
<Summary>
[Viewpoint 1]
As shown in FIG. 1, according to this embodiment, a data utilization system having a plurality of data utilization units (eg,
[観点2]
図24(A)が示すように、下位ユニットが受け渡しバッファ40を有してもよい。下位ユニットは、下位システム内で収集したデータや下位システム内で取得されたデータ処理結果を受け渡しバッファ40b、40cに書き込んで行く。上位ユニットは、下位ユニットの受け渡しバッファ40b、40cからデータを収集する。上位ユニットの作成手段(例:データ処理部73)は、受け渡しバッファ40a、40bから収集された収集対象となるデータに対して所定の分析処理を実行する分析手段として機能する。なお、表示データは、上位ユニットにおいて実行された所定の分析処理の分析結果を含んでもよい。下位ユニットが受け渡しバッファ40を有しているため、下位ユニットが上位ユニットよりも高速に動作していても、データの収集漏れが発生しにくくなる。
[Viewpoint 2]
As shown in FIG. 24(A), the lower unit may have a
図24(B)が示すように、上位ユニットが受け渡しバッファ40aを有してもよい。下位ユニットは、下位システム内で収集したデータや下位システム内で取得されたデータ処理結果を、上位ユニットの受け渡しバッファ40aに書き込んで行く。上位ユニットは、上位ユニットの受け渡しバッファ40aからデータを読み出して、データ処理を実行する。この場合にも、データの収集漏れが発生しにくくなる。受け渡しバッファ40aは、PLC1bとPLC1cについてそれぞれ個別に設けられてもよい。PLC1bとPLC1cについて共通に一つの受け渡しバッファ40aが設けられると、PLC1bからのデータの書き込みと、PLC1bからのデータの書き込みとを上位ユニットが調停する必要がある。一方で、PLC1bとPLC1cについてそれぞれ個別に受け渡しバッファ40aが設けられると、このような調停が不要となろう。また、上位ユニットは、PLC1b用の受け渡しバッファ40aとPLC1c用の受け渡しバッファ40aを、第二バッファ37bおよび第三バッファ37bと同列に扱うことが可能となる。
As shown in FIG. 24(B), the upper unit may have a
[観点3]
下位ユニットは、さらに、取得手段により取得されたデータに基づき収集対象となるデータを生成する生成手段(例:PLC1b、1cのCPU41a)を有してもよい。生成手段は、所定の分析処理を実行する分析手段(例:データ処理部73)を有してもよい。この場合、収集対象となるデータは所定の分析処理の分析結果を含むことが可能となる。また、表示データは、下位ユニットにおいて実行された所定の分析処理の分析結果を含むことが可能となる。このように下位ユニットにおいて分析処理を実行することで上位ユニットにおける演算負荷が軽減される。また、データの収集漏れが発生しにくくなると考えられる。
[Viewpoint 3]
The lower unit may further include a generation unit (eg,
[観点4]
設定手段(例:PLC1aの設定部71)は、下位ユニットにおいて実行されるユーザプログラムを含むプロジェクトデータ15を解析することで収集対象となるデータを特定し、特定されたデータの指定を含むように指定情報(例:収集設定39)を作成してもよい。これにより、指定情報を作成する際のユーザの負担が軽減されよう。
[Viewpoint 4]
The setting means (for example, the setting
[観点5]
設定手段(例:PLC1aの設定部71)は、プロジェクトデータ15を解析することで収集対象の候補となる変数を特定し、当該特定された変数のうちユーザにより指定された変数または当該変数を格納するデバイスを含むように指定情報を作成してもよい。これにより、指定情報を作成する際のユーザの負担が軽減されよう。また、デバイス値だけでなく、変数なども収集対象として指定可能となろう。
[Viewpoint 5]
The setting means (for example, the setting
[観点6]
取得手段(例:PLC1b、1cの収集部52c)は、収集対象となるデータに対して下位ユニットの識別情報(例:システムID)を付与して受け渡しバッファ40に格納してもよい。これにより上位ユニットは、複数の下位ユニットから収集した時系列データを区別しやすくなるであろう。
[Viewpoint 6]
The acquisition means (eg, the collecting
[観点7]
上位ユニットはプログラマブルロジックコントローラとは異なるコンピュータであってもよい。
上位ユニットは、下位ユニットを含むプログラマブルロジックコントローラ(例:PLC1b、1c)とは異なる別のプログラマブルロジックコントローラ(例:PLC1a)における拡張ユニットであってもよい。この場合、PLC1aを顧客に納入するメーカーと、PLC1bを顧客に納入するメーカーと、PLC1cを顧客に納入するメーカーとはそれぞれ異なってもよいし、同じであってもよい。
[Viewpoint 7]
The upper unit may be a computer different from the programmable logic controller.
The upper unit may be an expansion unit in another programmable logic controller (eg,
[観点8]
複数のPLC1a~1cがワーク(工場で製造される製品)の製造ラインを制御することがある。PLC1bは、ワークの製造ラインにおいて上流側に配置された第一産業機械(例:PLC1bのフィールドデバイス10)を制御する第一プログラマブルロジックコントローラとして機能する。また、PLC1bの拡張ユニット4は、PLC1bに搭載された第一下位ユニットとして機能する。PLC1cは、製造ラインにおいて下流側に配置された第二産業機械(例:PLC1cのフィールドデバイス10)を制御する第二プログラマブルロジックコントローラとして機能する。PLC1bc拡張ユニット4は、PLC1cに搭載された第二下位ユニットとして機能する。この場合、第一下位ユニットと第二下位ユニットとからそれぞれ収集される収集対象となるデータには、各ワークを識別するためのワーク識別情報が含まれていてもよい。ワークにはバーコードやQRコード(登録商標)などのワーク識別情報が貼付または刻印されることがある。フィールドデバイス10の一つはコードリーダであってもよい。この場合、受け渡しバッファ40に格納される時系列データにはコードリーダによって取得されたワーク識別情報が含まれることになる。上位ユニットの作成手段(例:PLC1aのCPU41a)は、第一下位ユニットから収集されたデータと第二下位ユニットから収集されたデータとについてそれぞれのワーク識別情報を参照することで、各ワークごとにデータを統合してもよい。これにより、複数のPLCにまたがって取得されたデータに基づくワークごとの分析データが簡単に得られるようになろう。
[Viewpoint 8]
A plurality of
[観点9]
第一下位ユニット(例:PLC1bの拡張ユニット4)と第二下位ユニット(例:PLC1cの拡張ユニット4)とからそれぞれ収集される収集対象となるデータには、各データの収集時刻を示すタイムスタンプが含まれてもよい。つまり、PLC1b、1cのCPU41aは時系列データにこのようなタイムスタンプを付与して受け渡しバッファ40に格納してもよい。作成手段(例:PLC1aのCPU41a)は、第一下位ユニットから収集されたデータと第二下位ユニットから収集されたデータとについてそれぞれのタイムスタンプを参照することで、タイムスタンプが近いデータを統合してもよい。これは、時刻の近い時系列データを比較するのに役立つであろう。
[Viewpoint 9]
The data to be collected from the first lower unit (example:
[観点10]
作成手段(例:PLC1aのCPU41a)は、第一下位ユニットから収集されたデータのタイムスタンプと第二下位ユニットから収集されたデータのタイムスタンプとのうち一方のデータのタイムスタンプを一定時間ずらした上で、当該タイムスタンプに基づきデータの統合を実行してもよい。
[Viewpoint 10]
The creation means (for example, the
[観点11]
図22や図23を用いて説明されたように、CPU11a、41aや参照先指定部2301は、表示データを表示するダッシュボードの表示部品に対して、収集されたデータを指定する指定手段として機能してもよい。図23に関して説明されたように、CPU11a、41aや参照先指定部2301は、ダッシュボードの表示部品に表示データを関連付ける際に、プロジェクトデータ15を解析することで取得された変数またはデバイスを表示データの候補として表示してもよい。これにより、表示部品に表示するデータの指定に関するユーザの負担が軽減されるであろう。
[Viewpoint 11]
As explained using FIG. 22 and FIG. 23, the
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。 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 (14)
前記複数のデータ活用ユニットのうち上位ユニットは、
前記複数のデータ活用ユニットのうち下位ユニットに対して収集対象となるデータを指定する指定情報を設定する設定手段と、
前記下位ユニットに蓄積された前記収集対象となるデータを収集する収集手段と、
前記収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段と、
を有し、
前記下位ユニットは、さらに、
前記指定情報にしたがって、前記下位ユニットに接続された基本ユニットにおいて取得されたデータを前記基本ユニットから取得する取得手段と、
前記上位ユニットまたは前記下位ユニットに設けられ、前記取得手段により取得された前記データを前記下位ユニットから前記上位ユニットに受け渡すために当該データを蓄積するバッファと、
を有し、
前記上位ユニットの前記収集手段は、前記バッファから前記収集対象となるデータを読み出すように構成され、
前記下位ユニットにおいて実行されるユーザプログラムを含むプロジェクトデータを解析することで前記収集対象となるデータを特定し、前記特定されたデータの指定を含むように前記指定情報を作成するように構成されていることを特徴とするデータ活用システム。 A data utilization system having multiple data utilization units,
The upper unit among the plurality of data utilization units is
a setting means for setting specification information for specifying data to be collected for a lower unit among the plurality of data utilization units;
a collection means for collecting the data to be collected accumulated in the lower unit;
a creation unit that creates display data that displays the data collected by the collection unit or analysis results obtained by performing a predetermined analysis process on the data;
has
The lower unit further includes:
acquisition means for acquiring data acquired in a basic unit connected to the lower unit from the basic unit according to the specified information;
a buffer that is provided in the upper unit or the lower unit and stores the data acquired by the acquisition means in order to transfer the data from the lower unit to the upper unit;
has
The collection means of the upper unit is configured to read the data to be collected from the buffer ,
The data to be collected is specified by analyzing project data including a user program executed in the lower unit, and the specification information is created to include a specification of the specified data. A data utilization system characterized by:
前記上位ユニットの前記作成手段は、前記バッファから収集された前記収集対象となるデータに対して前記所定の分析処理を実行する分析手段を有し、
前記表示データは、前記上位ユニットにおいて実行された前記所定の分析処理の分析結果を含むことを特徴とする請求項1に記載のデータ活用システム。 the lower unit has the buffer;
The creation means of the upper unit includes an analysis means for executing the predetermined analysis process on the data to be collected collected from the buffer,
2. The data utilization system according to claim 1, wherein the display data includes an analysis result of the predetermined analysis process executed in the higher-level unit.
前記取得手段により取得されたデータに基づき前記収集対象となるデータを生成する生成手段
を有し、
前記生成手段は、前記所定の分析処理を実行する分析手段を有し、
前記収集対象となるデータは前記所定の分析処理の分析結果を含み、
前記表示データは、前記下位ユニットにおいて実行された前記所定の分析処理の分析結果を含むことを特徴とする請求項1に記載のデータ活用システム。 The lower unit further includes:
a generation means for generating the data to be collected based on the data acquired by the acquisition means;
The generation means includes an analysis means for executing the predetermined analysis process,
The data to be collected includes the analysis results of the predetermined analysis process,
The data utilization system according to claim 1, wherein the display data includes an analysis result of the predetermined analysis process executed in the lower unit.
は異なる別のプログラマブルロジックコントローラにおける拡張ユニットであることを特徴とする請求項1ないし5のいずれか一項に記載のデータ活用システム。 6. The data utilization system according to claim 1, wherein the upper unit is an expansion unit in a programmable logic controller different from the programmable logic controller including the lower unit.
ワークの製造ラインにおいて上流側に配置された第一産業機械を制御する第一プログラマブルロジックコントローラに搭載された第一下位ユニットと、
前記製造ラインにおいて下流側に配置された第二産業機械を制御する第二プログラマブルロジックコントローラに搭載された第二下位ユニットと
を有し、
前記第一下位ユニットと前記第二下位ユニットとからそれぞれ収集される前記収集対象となるデータには、各ワークを識別するためのワーク識別情報が含まれており、
前記作成手段は、前記第一下位ユニットから収集されたデータと前記第二下位ユニットから収集されたデータとについてそれぞれの前記ワーク識別情報を参照することで、各ワークごとにデータを統合するように構成されていることを特徴とする請求項1ないし6のいずれか一項に記載のデータ活用システム。 As the lower unit,
a first lower unit installed in a first programmable logic controller that controls a first industrial machine located upstream in a workpiece production line;
and a second lower unit mounted on a second programmable logic controller that controls a second industrial machine located downstream in the production line,
The data to be collected respectively collected from the first lower unit and the second lower unit include work identification information for identifying each work,
The creation means integrates data for each work by referring to the work identification information for each of the data collected from the first lower unit and the data collected from the second lower unit. 7. The data utilization system according to claim 1, wherein the data utilization system is configured as follows.
前記第一下位ユニットと前記第二下位ユニットとからそれぞれ収集される前記収集対象となるデータには、各データの収集時刻を示すタイムスタンプが含まれており、
前記作成手段は、前記第一下位ユニットから収集されたデータと前記第二下位ユニットから収集されたデータとについてそれぞれの前記タイムスタンプを参照することで、前記タイムスタンプが近いデータを統合するように構成されていることを特徴とする請求項1ないし6のいずれか一項に記載のデータ活用システム。 The lower unit includes a first lower unit and a second lower unit,
The data to be collected respectively collected from the first lower unit and the second lower unit include a time stamp indicating the collection time of each data,
The creation means integrates data having similar time stamps by referring to the time stamps of the data collected from the first lower unit and the data collected from the second lower unit. 7. The data utilization system according to claim 1, wherein the data utilization system is configured as follows.
前記指定手段は、前記ダッシュボードの表示部品に前記表示データを関連付ける際に、前記プロジェクトデータを解析することで取得された変数またはデバイスを前記表示データの候補として表示することを特徴とする請求項1ないし9のいずれか一項に記載のデータ活用システム。 further comprising specifying means for specifying the collected data to a display component of a dashboard that displays the display data,
3. The designation means, when associating the display data with a display component of the dashboard, displays a variable or a device obtained by analyzing the project data as a candidate for the display data. 10. The data utilization system according to any one of 1 to 9 .
前記複数のデータ活用ユニットのうち上位ユニットは、 The upper unit among the plurality of data utilization units is
前記複数のデータ活用ユニットのうち下位ユニットに対して収集対象となるデータを指定する指定情報を設定する設定手段と、 a setting means for setting specification information for specifying data to be collected for a lower unit among the plurality of data utilization units;
前記下位ユニットに蓄積された前記収集対象となるデータを収集する収集手段と、 a collection means for collecting the data to be collected accumulated in the lower unit;
前記収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段と、 a creation unit that creates display data that displays the data collected by the collection unit or analysis results obtained by performing a predetermined analysis process on the data;
を有し、has
前記下位ユニットは、さらに、 The lower unit further includes:
前記指定情報にしたがって、前記下位ユニットに接続された基本ユニットにおいて取得されたデータを前記基本ユニットから取得する取得手段と、 acquisition means for acquiring data acquired in a basic unit connected to the lower unit from the basic unit according to the specified information;
前記上位ユニットまたは前記下位ユニットに設けられ、前記取得手段により取得された前記データを前記下位ユニットから前記上位ユニットに受け渡すために当該データを蓄積するバッファと、 a buffer that is provided in the upper unit or the lower unit and stores the data acquired by the acquisition means in order to transfer the data from the lower unit to the upper unit;
を有し、has
前記上位ユニットの前記収集手段は、前記バッファから前記収集対象となるデータを読み出すように構成され、 The collection means of the upper unit is configured to read the data to be collected from the buffer,
前記取得手段は、前記収集対象となるデータに対して前記下位ユニットの識別情報を付与して前記バッファに格納することを特徴とするデータ活用システム。 The data utilization system is characterized in that the acquisition means adds identification information of the lower unit to the data to be collected and stores the data in the buffer.
前記複数のデータ活用ユニットのうち上位ユニットは、 The upper unit among the plurality of data utilization units is
前記複数のデータ活用ユニットのうち下位ユニットに対して収集対象となるデータを指定する指定情報を設定する設定手段と、 a setting means for setting specification information for specifying data to be collected for a lower unit among the plurality of data utilization units;
前記下位ユニットに蓄積された前記収集対象となるデータを収集する収集手段と、 a collection means for collecting the data to be collected accumulated in the lower unit;
前記収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段と、 a creation unit that creates display data that displays the data collected by the collection unit or analysis results obtained by performing a predetermined analysis process on the data;
を有し、has
前記下位ユニットは、さらに、 The lower unit further includes:
前記指定情報にしたがって、前記下位ユニットに接続された基本ユニットにおいて取得されたデータを前記基本ユニットから取得する取得手段と、 acquisition means for acquiring data acquired in a basic unit connected to the lower unit from the basic unit according to the specified information;
前記上位ユニットまたは前記下位ユニットに設けられ、前記取得手段により取得された前記データを前記下位ユニットから前記上位ユニットに受け渡すために当該データを蓄積するバッファと、 a buffer that is provided in the upper unit or the lower unit and stores the data acquired by the acquisition means in order to transfer the data from the lower unit to the upper unit;
を有し、has
前記上位ユニットの前記収集手段は、前記バッファから前記収集対象となるデータを読み出すように構成され、 The collection means of the upper unit is configured to read the data to be collected from the buffer,
前記上位ユニットは、前記下位ユニットを含むプログラマブルロジックコントローラと The upper unit includes a programmable logic controller including the lower unit.
は異なる別のプログラマブルロジックコントローラにおける拡張ユニットであることを特徴とするデータ活用システム。A data utilization system characterized in that is an expansion unit in a different programmable logic controller.
前記複数のデータ活用ユニットのうち上位ユニットは、 The upper unit among the plurality of data utilization units is
前記複数のデータ活用ユニットのうち下位ユニットに対して収集対象となるデータを指定する指定情報を設定する設定手段と、 a setting means for setting specification information for specifying data to be collected for a lower unit among the plurality of data utilization units;
前記下位ユニットに蓄積された前記収集対象となるデータを収集する収集手段と、 a collection means for collecting the data to be collected accumulated in the lower unit;
前記収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段と、 a creation unit that creates display data that displays the data collected by the collection unit or analysis results obtained by performing a predetermined analysis process on the data;
を有し、has
前記下位ユニットは、さらに、 The lower unit further includes:
前記指定情報にしたがって、前記下位ユニットに接続された基本ユニットにおいて取得されたデータを前記基本ユニットから取得する取得手段と、 acquisition means for acquiring data acquired in a basic unit connected to the lower unit from the basic unit according to the specified information;
前記上位ユニットまたは前記下位ユニットに設けられ、前記取得手段により取得された前記データを前記下位ユニットから前記上位ユニットに受け渡すために当該データを蓄積するバッファと、 a buffer that is provided in the upper unit or the lower unit and stores the data acquired by the acquisition means in order to transfer the data from the lower unit to the upper unit;
を有し、has
前記上位ユニットの前記収集手段は、前記バッファから前記収集対象となるデータを読み出すように構成され、 The collection means of the upper unit is configured to read the data to be collected from the buffer,
前記下位ユニットとして、 As the lower unit,
ワークの製造ラインにおいて上流側に配置された第一産業機械を制御する第一プログラマブルロジックコントローラに搭載された第一下位ユニットと、 a first lower unit installed in a first programmable logic controller that controls a first industrial machine located upstream in a workpiece production line;
前記製造ラインにおいて下流側に配置された第二産業機械を制御する第二プログラマブルロジックコントローラに搭載された第二下位ユニットと a second lower unit mounted on a second programmable logic controller that controls a second industrial machine located downstream in the manufacturing line;
を有し、has
前記第一下位ユニットと前記第二下位ユニットとからそれぞれ収集される前記収集対象となるデータには、各ワークを識別するためのワーク識別情報が含まれており、 The data to be collected respectively collected from the first lower unit and the second lower unit include work identification information for identifying each work,
前記作成手段は、前記第一下位ユニットから収集されたデータと前記第二下位ユニットから収集されたデータとについてそれぞれの前記ワーク識別情報を参照することで、各ワークごとにデータを統合するように構成されていることを特徴とするデータ活用システム。 The creation means integrates data for each work by referring to the work identification information for each of the data collected from the first lower unit and the data collected from the second lower unit. A data utilization system characterized by being configured as follows.
前記複数のデータ活用ユニットのうち上位ユニットは、 The upper unit among the plurality of data utilization units is
前記複数のデータ活用ユニットのうち下位ユニットに対して収集対象となるデータを指定する指定情報を設定する設定手段と、 a setting means for setting specification information for specifying data to be collected for a lower unit among the plurality of data utilization units;
前記下位ユニットに蓄積された前記収集対象となるデータを収集する収集手段と、 a collection means for collecting the data to be collected accumulated in the lower unit;
前記収集手段により収集されたデータまたは当該データに対して所定の分析処理を実行することで取得された分析結果を表示する表示データを作成する作成手段と、 a creation unit that creates display data that displays the data collected by the collection unit or analysis results obtained by performing a predetermined analysis process on the data;
を有し、has
前記下位ユニットは、さらに、 The lower unit further includes:
前記指定情報にしたがって、前記下位ユニットに接続された基本ユニットにおいて取得されたデータを前記基本ユニットから取得する取得手段と、 acquisition means for acquiring data acquired in a basic unit connected to the lower unit from the basic unit according to the specified information;
前記上位ユニットまたは前記下位ユニットに設けられ、前記取得手段により取得された前記データを前記下位ユニットから前記上位ユニットに受け渡すために当該データを蓄積するバッファと、 a buffer that is provided in the upper unit or the lower unit and stores the data acquired by the acquisition means in order to transfer the data from the lower unit to the upper unit;
を有し、has
前記上位ユニットの前記収集手段は、前記バッファから前記収集対象となるデータを読み出すように構成され、 The collection means of the upper unit is configured to read the data to be collected from the buffer,
前記下位ユニットとして、第一下位ユニットと第二下位ユニットとを有し、 The lower unit includes a first lower unit and a second lower unit,
前記第一下位ユニットと前記第二下位ユニットとからそれぞれ収集される前記収集対象となるデータには、各データの収集時刻を示すタイムスタンプが含まれており、 The data to be collected respectively collected from the first lower unit and the second lower unit include a time stamp indicating the collection time of each data,
前記作成手段は、前記第一下位ユニットから収集されたデータと前記第二下位ユニットから収集されたデータとについてそれぞれの前記タイムスタンプを参照することで、前記タイムスタンプが近いデータを統合するように構成されていることを特徴とするデータ活用システム。 The creation means integrates data having similar time stamps by referring to the time stamps of the data collected from the first lower unit and the data collected from the second lower unit. A data utilization system characterized by being configured as follows.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019183257A JP7412119B2 (en) | 2019-10-03 | 2019-10-03 | Data utilization system |
JP2023218376A JP2024023868A (en) | 2019-10-03 | 2023-12-25 | Data utilization system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019183257A JP7412119B2 (en) | 2019-10-03 | 2019-10-03 | Data utilization system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023218376A Division JP2024023868A (en) | 2019-10-03 | 2023-12-25 | Data utilization system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021060683A JP2021060683A (en) | 2021-04-15 |
JP7412119B2 true JP7412119B2 (en) | 2024-01-12 |
Family
ID=75380143
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019183257A Active JP7412119B2 (en) | 2019-10-03 | 2019-10-03 | Data utilization system |
JP2023218376A Pending JP2024023868A (en) | 2019-10-03 | 2023-12-25 | Data utilization system |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023218376A Pending JP2024023868A (en) | 2019-10-03 | 2023-12-25 | Data utilization system |
Country Status (1)
Country | Link |
---|---|
JP (2) | JP7412119B2 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004178479A (en) | 2002-11-29 | 2004-06-24 | Yokogawa Electric Corp | Data collector |
JP2008269489A (en) | 2007-04-24 | 2008-11-06 | Mitsubishi Electric Corp | Data acquisition system and data acquisition device |
JP2012168679A (en) | 2011-02-14 | 2012-09-06 | Toshiba Mitsubishi-Electric Industrial System Corp | Communication processing system |
JP2019062288A (en) | 2017-09-25 | 2019-04-18 | オムロン株式会社 | Control system and control unit |
-
2019
- 2019-10-03 JP JP2019183257A patent/JP7412119B2/en active Active
-
2023
- 2023-12-25 JP JP2023218376A patent/JP2024023868A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004178479A (en) | 2002-11-29 | 2004-06-24 | Yokogawa Electric Corp | Data collector |
JP2008269489A (en) | 2007-04-24 | 2008-11-06 | Mitsubishi Electric Corp | Data acquisition system and data acquisition device |
JP2012168679A (en) | 2011-02-14 | 2012-09-06 | Toshiba Mitsubishi-Electric Industrial System Corp | Communication processing system |
JP2019062288A (en) | 2017-09-25 | 2019-04-18 | オムロン株式会社 | Control system and control unit |
Also Published As
Publication number | Publication date |
---|---|
JP2021060683A (en) | 2021-04-15 |
JP2024023868A (en) | 2024-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2538290A2 (en) | Capturing data during operation of an industrial controller for the debugging of control programs | |
TWI672570B (en) | Data processing apparatus, data processing method, setting management apparatus and data processing system | |
JP7450471B2 (en) | Programmable logic controller and PLC system | |
US20190018385A1 (en) | Programmable logic controller, data collector, and programming support apparatus | |
JP2018097663A (en) | Control system, control program, and control method | |
US11644808B2 (en) | Programable logic controller | |
JP2018173883A (en) | Control device, control program, control system, and control method | |
JP2018133037A (en) | Control device | |
JP6744557B2 (en) | Operation data collection system, operation data collection method, and program | |
JP7412119B2 (en) | Data utilization system | |
JP7102801B2 (en) | Control system, control device and display device | |
JP7461811B2 (en) | Programmable Logic Controller | |
WO2019176337A1 (en) | Factory automation (fa) system, controller, and control method | |
US11340590B2 (en) | Data collection system, data collection method, and information storage medium | |
JP6969454B2 (en) | Control device, control method, and control program | |
JP6996887B2 (en) | Programmable logic controller system and data acquisition device | |
WO2023228357A1 (en) | Programmable logic controller, control system, data collection method, and program | |
JP7406333B2 (en) | Data utilization equipment | |
JP7450470B2 (en) | Setting device and PLC system | |
JP6933256B2 (en) | Data playback equipment for industrial plants | |
WO2019012606A1 (en) | Computer update test assistance device | |
JP2024073818A (en) | Control system and information processing method | |
JP2023151933A (en) | Data collection device, control system, method, and program | |
JP2022158225A (en) | Analysis device, control method thereof, and analysis system |
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: 20220912 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230731 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230807 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230926 |
|
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: 20231204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7412119 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |