JP7147805B2 - 生産システム、データ送信方法、及びプログラム - Google Patents

生産システム、データ送信方法、及びプログラム Download PDF

Info

Publication number
JP7147805B2
JP7147805B2 JP2020056225A JP2020056225A JP7147805B2 JP 7147805 B2 JP7147805 B2 JP 7147805B2 JP 2020056225 A JP2020056225 A JP 2020056225A JP 2020056225 A JP2020056225 A JP 2020056225A JP 7147805 B2 JP7147805 B2 JP 7147805B2
Authority
JP
Japan
Prior art keywords
data
unit
area
cpu
asynchronous
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
JP2020056225A
Other languages
English (en)
Other versions
JP2021157413A (ja
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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2020056225A priority Critical patent/JP7147805B2/ja
Priority to EP21163318.5A priority patent/EP3885852A1/en
Priority to CN202110300614.1A priority patent/CN113448292A/zh
Priority to US17/210,453 priority patent/US11698632B2/en
Publication of JP2021157413A publication Critical patent/JP2021157413A/ja
Application granted granted Critical
Publication of JP7147805B2 publication Critical patent/JP7147805B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0264Control of logging system, e.g. decision on which data to store; time-stamping measurements
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41845Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41835Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by programme execution
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31094Data exchange between modules, cells, devices, processors

Description

本開示は、生産システム、データ送信方法、及びプログラムに関する。
特許文献1には、他の産業装置を制御する産業装置が、当該他の産業装置の動作に関する収集対象データを取得し、産業装置と通信可能に接続された上位装置に対し、収集対象データを送信するシステムが記載されている。
国際公開第2015/068210号公報
本開示の一態様が解決しようとする課題は、例えば、データ収集時の処理負荷を軽減することである。
本開示の一側面に係る生産システムは、他の産業装置を制御する産業装置と、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関するデータを取得する取得部と、を有し、前記産業装置は、定期的に同期が取られる同期領域と、前記同期領域とは異なる非同期領域と、のうち、前記非同期領域に前記データを書き込む書き込み部と、外部装置に対し、前記非同期領域に書き込まれた前記データを送信するデータ送信部と、を有する。
本開示の一側面に係るデータ送信方法は、他の産業装置を制御する産業装置産業装置及び前記他の産業装置の少なくとも一方の動作に関するデータを取得し、定期的に同期が取られる同期領域と、前記同期領域とは異なる非同期領域と、のうち、前記非同期領域に前記データを書き込み、外部装置に対し、前記非同期領域に書き込まれた前記データを送信する。
本開示の一側面に係るプログラムは、他の産業装置を制御する産業装置に、定期的に同期が取られる同期領域と、前記同期領域とは異なる非同期領域と、のうち、前記非同期領域に書き込まれた、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関するデータを、外部装置に対して送信させる。
本開示の一側面によれば、前記産業装置は、前記データの書き込みが完了したか否かを判定する第1判定部と、前記データの書き込みが完了したと判定された場合に、前記外部装置に対し、所定の通知を送信する通知送信部と、を有し、前記外部装置は、前記通知を受信した場合に、前記産業装置に対し、所定の要求を送信し、前記データ送信部は、前記要求を受信した場合に、前記外部装置に対し、前記データを送信する。
本開示の一側面によれば、前記産業装置は、前記他の産業装置を制御し、前記取得部と前記書き込み部とを有する第1制御回路と、前記非同期領域と前記データ送信部とを有する第2制御回路と、を有し、前記第1制御回路の前記書き込み部は、前記第2制御回路の前記非同期領域に、前記データを書き込む。
本開示の一側面によれば、前記非同期領域は、複数の小領域を有し、前記書き込み部は、前記複数の小領域の中から、使用可能な少なくとも1つの小領域を選択して前記データを書き込み、前記データ送信部は、前記外部装置に対し、前記少なくとも1つの小領域に書き込まれた前記データを送信する。
本開示の一側面によれば、前記生産システムは、前記非同期領域に書き込まれた前記データを、前記同期領域及び前記非同期領域とは異なるバッファ領域に書き込む第2書き込み部を有し、前記データ送信部は、前記外部装置に対し、前記バッファ領域に書き込まれた前記データを送信する。
本開示の一側面によれば、前記産業装置は、前記非同期領域から前記バッファ領域への前記データの書き込みが完了したか否かを判定する第2判定部と、前記非同期領域から前記バッファ領域への前記データの書き込みが完了したと判定された場合に、前記非同期領域に書き込まれた前記データを消去する第1消去部と、を有する。
本開示の一側面によれば、前記産業装置は、前記外部装置への前記データの送信が完了したか否かを判定する第3判定部と、前記外部装置への前記データの送信が完了したと判定された場合に、前記バッファ領域に書き込まれた前記データを消去する第2消去部と、を有する。
本開示の一側面によれば、前記取得部は、予め定義されたデータ構造の前記データを取得し、前記産業装置は、予め定義された前記データ構造に基づいて、前記データの全部又は一部を利用して前記他の産業装置を制御する。
本開示の一側面によれば、前記データは、前記他の産業装置の動作に関するデータであり、前記データ送信部は、前記他の産業装置に関する識別情報を前記データに付加し、前記外部装置に対し、前記識別情報が付加された前記データを送信する。
本開示の一側面によれば、前記産業装置は、前記データを複数に分割する分割部を有し、前記書き込み部は、分割された個々のデータを、前記非同期領域に書き込み、前記データ送信部は、前記外部装置に対し、前記非同期領域に書き込まれた個々のデータを送信する。
本開示によれば、例えば、データ収集時の処理負荷を軽減することができる。
生産システムの全体構成の一例を示す図である。 収集対象データを収集する処理の流れを示す図である。 生産システムで実現される機能を示す機能ブロック図である。 非同期領域に格納されるデータの一例を示す図である。 第1の実施形態の生産システムで実行される処理の一例を示すフロー図である。 第1の実施形態の生産システムで実行される処理の一例を示すフロー図である。 第2の実施形態の生産システムで実行される処理の一例を示すフロー図である。 第3の実施形態の生産システムで実行される処理の一例を示すフロー図である。 変形例(3)の機能ブロック図である。
[1.生産システムの全体構成]
外部装置と産業装置との間でポーリングを行うことによってデータ収集を行う場合には、定期的に同期領域を監視する必要があるので、産業装置及び外部装置の処理負荷が増大する可能性がある。そこで発明者達は、産業装置及び外部装置の各々の処理負荷を軽減するために鋭意研究開発を行った結果、新規かつ独創的な生産システム等に想到した。以降、第1の実施形態に係る生産システム等を詳細に説明する。
図1は、生産システムの全体構成の一例を示す図である。図1に示すように、生産システム1は、データ収集装置10、コントローラ20、及び被制御装置30を含む。本実施形態では、データ収集装置10とコントローラ20との各々は、Ethernet(登録商標)等の一般的なネットワークにより接続される。コントローラ20と被制御装置30との各々は、産業装置用のネットワークにより接続される。なお、各装置を接続するネットワークは、本実施形態の例に限られず、任意のネットワークで接続可能である。
データ収集装置10は、外部装置の一例である。このため、本実施形態でデータ収集装置10と記載した箇所は、外部装置と読み替えることができる。外部装置は、後述する産業装置とは異なる装置である。外部装置は、産業装置とネットワークを介して通信可能に接続される。例えば、外部装置は、産業装置の動作に関するデータを収集する。また例えば、外部装置は、産業装置の動作を解析し、産業装置に対し、解析結果をフィードバックする。
例えば、データ収集装置10は、パーソナルコンピュータ、サーバコンピュータ、携帯電話(スマートフォンを含む)、又は携帯端末(タブレット型端末を含む)である。なお、データ収集装置10は、産業装置の一種であってもよい。データ収集装置10は、CPU11、記憶部12、通信部13、操作部14、及び表示部15を含む。
CPU11は、少なくとも1つのプロセッサを含む。記憶部12は、RAMやハードディスクを含み、各種プログラムやデータを記憶する。CPU11は、これらプログラムやデータに基づいて各種処理を実行する。通信部13は、ネットワークカードや各種通信コネクタ等の通信インタフェースを含み、他の装置との通信を行う。操作部14は、マウスやキーボード等の入力デバイスである。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、CPU11の指示により各種画面を表示する。
コントローラ20は、産業装置の一例である。このため、本実施形態でコントローラ20と記載した箇所は、産業装置と読み替えることができる。産業装置は、人間が行う作業の補助又は代行をする機器及びその周辺機器の総称である。例えば、コントローラ20以外にも被制御装置30も産業装置に相当する。例えば、PLC(Programmable Logic Controller)、ロボットコントローラ、産業用ロボット、モータコントローラ、サーボアンプ、インバータ、コンバータ、工作機械、搬送装置、又は半導体製造装置は、産業装置に相当する。コントローラ20は、少なくとも1つの被制御装置30を制御する。生産システム1全体は、ラインよりも小さな単位であるセルと呼ばれることがあり、この場合には、コントローラ20は、セルコントローラと呼ばれることもある。
コントローラ20は、CPU21、IoT(Internet of Things)部22、第3記憶部23、及び第2通信部24を含む。CPU21、第3記憶部23、及び第2通信部24の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様であってよい。なお、CPU21は、揮発メモリ及び不揮発メモリの少なくとも一方を含んでもよい。例えば、CPU21は、キャッシュメモリと呼ばれるメモリを含んでもよい。CPU21は、後述する変数を記憶する。
CPU21は、第1制御回路の一例である。このため、本実施形態でCPU21と記載した箇所は、第1制御回路と読み替えることができる。第1制御回路は、後述する他の産業装置を制御する。第1制御回路は、汎用プロセッサに限られず、任意の回路であってよい。例えば、第1制御回路は、FPGA又はASICと呼ばれる回路であってもよい。第1制御回路は、circuitryの一種である。
IoT部22は、第2制御回路の一例である。このため、本実施形態でIoT部22と記載した箇所は、第2制御回路と読み替えることができる。このため、本実施形態でIoT部22と記載した箇所は、第2制御回路と読み替えることができる。第2制御回路は、外部装置にデータを送信する回路である。第2制御回路は、IoTに利用される回路に限られず、任意の回路であってよい。例えば、第2制御回路は、FPGA又はASICと呼ばれる回路であってもよい。また例えば、第2制御回路は、汎用プロセッサであってもよい。第2制御回路は、circuitryの一種である。
IoT部22は、ネットワークを介して、他のコンピュータにデータを送信する。例えば、IoT部22は、第1記憶部22A、第2記憶部22B、及び第1通信部22Cを含む。第1記憶部22Aと第2記憶部22Bは、それぞれ記憶部12と同様であってよい。第1通信部22Cは、通信部13と同様であってよい。例えば、第1通信部22Cは、主にデータ収集装置10との通信に用いられ、第2通信部24は、主に被制御装置30の制御に用いられる。なお、IoT部22は、CPU等の他の構成を含んでもよい。また、データ収集の機能をCPU21に持たせる場合には、IoT部22は省略してもよい。
被制御装置30は、他の産業装置の一例である。このため、本実施形態でコントローラ20と記載した箇所は、他の産業装置と読み替えることができる。産業装置という言葉の意味は、先述した通りである。他の産業装置は、先述した任意の種類の産業装置であってよい。本実施形態では、他の産業装置は、コントローラ20により制御される。他の産業装置は、コントローラ20とは異なる産業装置であればよい。
被制御装置30は、CPU31、記憶部32、及び通信部33を含む。CPU31、記憶部32、及び通信部33の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様であってよい。なお、被制御装置30は、他の物理的構成が含まれてもよく、例えば、FPGA又はASICと呼ばれる回路が含まれてもよい。また例えば、被制御装置30には、モータ等の制御対象の機器、モータ等の動作を検出するためのセンサ、加工対象となるワークの状態を撮影するカメラ、入出力機器、又は他の産業装置などが接続されていてもよい。コントローラ20の制御対象となる被制御装置30の台数は、任意の台数であってよく、例えば、1台だけであってもよいし、2台以上であってもよい。
なお、データ収集装置10、コントローラ20、及び被制御装置30の各々に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されてもよい。また、各装置のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)が含まれてもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが、読取部又は入出力部を介して供給されてもよい。
[2.生産システムの概要]
本実施形態では、コントローラ20は、複数の変数の各々に基づいて、被制御装置30を制御する。変数は、被制御装置30を制御するための制御プログラムにより参照される。制御プログラムは、変数を書き換えることもある。例えば、変数は、途中の計算結果、又は、センサにより検出された物理量(例えば、トルクセンサにより検出されたトルク値、又は、モータエンコーダにより検出されたモータの回転速度)を示す。変数は、被制御装置30の動作に関する値であってもよく、例えば、ロボットアームの位置若しくは移動速度、モータの速度、又は動作を待機する待機時間などの値であってもよい。
例えば、被制御装置30が複数の工程を所定の順序で実行する場合、制御プログラムには、各工程の実行順が記述されている。コントローラ20は、制御プログラムに基づいて、被制御装置30に対して指示を送る。変数は、工程の実行条件になってもよい。例えば、被制御装置30は、工程を開始するための変数、工程を一時停止するための変数、又は、工程を終了するための変数を記憶する。変数は、入出力変数と呼ばれることもある。なお、コントローラ20は、特に変数を利用せずに被制御装置30を制御してもよい。
工程とは、被制御装置30が行う作業又は動作である。工程は、1つの作業だけから構成されてもよいし、複数の作業の組み合わせから構成されてもよい。工程は、被制御装置30の用途に応じた任意の内容であってよく、例えば、ワークの認識、ワークの把持、扉の開閉、ワークのセット、又は工作機器を利用した加工などである。被制御装置30は、少なくとも1つの工程を行う。被制御装置30が行う工程の数は、任意の数であってよく、被制御装置30は、1つの工程だけを行ってもよいし、複数の工程を行ってもよい。被制御装置30は、コントローラ20から受信した指示と、自身に記憶された装置プログラムと、に基づいて工程を行う。
装置プログラムは、被制御装置30の動作を定義したプログラムである。装置プログラムには、各工程における個々の手順が定義されている。装置プログラムは、被制御装置30に応じた任意の言語で作成可能であり、例えば、ラダー言語又はロボット言語等を利用して作成される。本実施形態では、工程ごとに装置プログラムが用意されている。このため、ある被制御装置30がn個(nは自然数)の工程を行うとすると、当該被制御装置30は、少なくともn個の装置プログラムを記憶していることになる。
本実施形態では、制御プログラムにより、コントローラ20及び被制御装置30の少なくとも一方の動作に関するデータが収集される。以降、このデータを収集対象データと記載する。収集対象データは、コントローラ20及び被制御装置30の両方の動作に関するデータであってもよいし、これらの何れか一方の動作に関するデータであってもよい。本実施形態では、収集対象データが被制御装置30の動作に関するデータである場合を説明する。
例えば、収集対象データは、被制御装置30の動作を検出するためのセンサの検出信号に基づいて生成される。収集対象データは、センサにより検出された物理量を含む。収集対象データには、ある1時点だけの動作が示されてもよいし、複数の時点の各々の動作が時系列的に示されてもよい。収集対象データは、任意の内容であってよく、例えば、トルクセンサにより検出されたトルク値、モータエンコーダにより検出されたモータの速度・位置、モーションセンサやジャイロセンサにより検出されたロボットアームの位置・姿勢、又は温度センサにより検出された温度などである。収集対象データは、被制御装置30の内部情報であってもよく、例えば、CPU31の負荷、記憶部32の消費量、又は通信部33の通信量であってもよい。収集対象データは、CPU31が所定の計算を行う場合の計算結果を示してもよいし、その途中結果を示してもよい。
本実施形態では、制御プログラムに含まれる少なくとも1つのアプリケーションによって、少なくとも1つの収集対象データが収集される。制御プログラムには、複数のアプリケーションが含まれてもよく、収集対象となる収集対象データがアプリケーションごとに異なってもよい。このアプリケーション自体を制御プログラムと呼んでもよい。アプリケーションは、制御プログラムとは別体であってもよい。
アプリケーションは、任意の方法によって被制御装置30から収集対象データを収集可能であり、例えば、いわゆるメッセージ通信(非定周期通信又は非同期通信)が利用されてもよいし、FTP等のファイル転送プロトコルが利用されてもよい。複数の被制御装置30が存在する場合、一の被制御装置30と他の被制御装置30とで収集対象データを送信するための通信方法が異なってもよい。なお、本実施形態では、アプリケーションが制御プログラムと同じユーザにより作成されるものとして説明するが、アプリケーションは、制御プログラムとは異なるユーザにより作成されてもよい。
図2は、収集対象データを収集する処理の流れを示す図である。図2に示すように、制御プログラムには、複数のアプリケーションが含まれている。図2の例では、制御プログラムには、メッセージ受信アプリA、メッセージ受信アプリB、及びファイル読込アプリCの3つが含まれている。以降、これらを区別しないときは、単にアプリケーションと記載する。
例えば、メッセージ受信アプリAは、メッセージ通信を利用して、第1の収集対象データ(例えば、トルク値)を収集するためのアプリケーションである。メッセージ受信アプリBは、メッセージ通信を利用して、第2の収集対象データ(例えば、モータの速度)を収集するためのアプリケーションである。ファイル読込アプリCは、FTPを利用して、第3の収集対象データ(例えば、ロボットアームの姿勢)を収集するためのアプリケーションである。
本実施形態では、データ収集装置10は、収集対象データを選択し、コントローラ20と被制御装置30の各々にデータ収集の設定を行う。例えば、データ収集の設定として、収集対象データの種類と、収集対象データの収集条件と、が設定される。例えば、収集条件は、収集対象データの収集を開始するトリガ、サンプリング周期、データのスケール、又は収集対象データを収集する期間などである。コントローラ20と被制御装置30の各々は、データ収集の設定に基づいて、収集対象データを収集する。
例えば、CPU21は、制御プログラムを実行して、被制御装置30に対し、制御用の指令を送信する。制御用の指令は、被制御装置30の動作を制御するための指令であり、例えば、モータに対する出力、又は、ロボットアームの位置・速度などの情報が含まれる。本実施形態では、被制御装置30は、制御用の指令に基づいて動作しつつ、その動作中に、収集対象データを生成してコントローラ20に送信する。なお、収集対象データは、後述する第2の実施形態及び第3の実施形態のように、他の方法によって生成及び送信されてよい。
CPU21は、被制御装置30から収集対象データを受信すると、IoT部22に対し、受信した収集対象データを転送する。収集対象データは、CPU21内の記憶部又は第3記憶部23等に蓄積された後にIoT部22に転送されてもよいし、特にこれらの記憶部に蓄積されることなくIoT部22に転送されてもよい。IoT部22は、転送された収集対象データを第1記憶部22Aに記録する。
本実施形態では、第1記憶部22Aは、同期領域と、非同期領域と、に分かれている。同期領域は、CPU21とIoT部22との間で同期が取られる領域である。ここでの同期とは、定期的に(周期的に)データの整合を取ることである。同期は、CPU21に記憶された値と、IoT部22の同期領域に記憶された値と、の何れか一方を他方に合わせる(一方の値を他方にコピーする)ことである。
例えば、ある変数について、CPU21に記憶された値を、IoT部22の同期領域に記憶された値にすることは、同期を取ることに相当する。また例えば、ある変数について、IoT部22の同期領域に記憶された値を、CPU21に記憶された値にすることは、同期を取ることに相当する。同期は、CPU21が主体となって実行されてもよいし、IoT部22が主体となって実行されてもよい。CPU21又はIoT部22は、ある一定の周期ごとに同期を取る。
本実施形態では、同期領域に記憶された変数は、定期的にデータ収集装置10に送信される。例えば、データ収集装置10とIoT部22との間でポーリングが行われ、データ収集装置10は、定期的に同期領域に記憶された変数を収集する。データ収集装置10は、全ての変数を収集してもよいが、本実施形態では、一部の変数だけを収集するものとする。例えば、データ収集装置10のユーザと、コントローラ20のユーザと、が異なる場合には、データ収集装置10のユーザに対して公開が許可された変数の一部又は全部が、データ収集装置10により収集される。
非同期領域は、同期領域ではない領域である。非同期領域は、CPU21とIoT部22との間で同期が取られない領域である。ただし、非同期領域は、不定期的(非周期的)にデータの整合が取られることがある。例えば、CPU21は、被制御装置30から収集した収集対象データをIoT部22に転送し、第1記憶部22Aの非同期領域に書き込む。
本実施形態では、非同期領域は、複数のチャネルに分かれている。チャネルは、非同期領域内に設けられた記憶領域である。チャネルは、連番のアドレスから構成されてもよいし、連番ではない飛び地のアドレスであってもよい。非同期領域に設けられたチャネルの数は、任意であってよく、例えば、数個程度であってもよいし、十個以上であってもよい。アプリケーションごとに使用するチャネルが固定されていてもよいが、本実施形態では、各アプリケーションは、任意のチャネルを利用可能である。
例えば、非同期領域の全てのチャネルが空いている場合、各チャネルはアドレスの順番に使用される。図2の例であれば、最初にメッセージ受信アプリAが収集対象データを受信したとすると、CPU21は、1番目のチャネル1に、この収集対象データを書き込む。2番目にメッセージ受信アプリBが収集対象データを受信したとすると、CPU21は、2番目のチャネル2に、この収集対象データを書き込む。3番目にファイル読込アプリCが収集対象データを受信したとすると、CPU21は、3番目のチャネル3に、この収集対象データを書き込む。
IoT部22は、非同期領域の各チャネルに書き込まれた収集対象データを、第2記憶部22Bに書き込む。第2記憶部22Bについても複数のチャネルに分けられていてもよい。本実施形態では、第2記憶部22Bは、少なくとも1つのバッファ領域を含み、バッファ領域に収集対象データが書き込まれる。バッファ領域への収集対象データの書き込みが完了すると、IoT部22は、データ収集装置10に対し、収集対象データの書き込みが完了した旨を示す完了通知を送信する。データ収集装置10は、完了通知を受信すると、IoT部22に対し、書き込みが完了した収集対象データを要求する。IoT部22は、データ収集装置10からの要求に応じて、データ収集装置10に対し、収集対象データを送信する。
以上のように、生産システム1は、定期的に同期が取られる同期領域ではなく、非同期領域に収集対象データを書き込み、データ収集装置10に対して収集対象データを送信することにより、例えば、データ収集装置10とコントローラ20との間のポーリングをする必要がなくなり、データ収集時の処理負荷を軽減するようにしている。以降、この構成の詳細を説明する。
[3.生産システムで実現される機能]
図3は、生産システム1で実現される機能を示す機能ブロック図である。本実施形態では、データ収集装置10、コントローラ20、及び被制御装置30の各々で実現される機能について説明する。
[3-1.データ収集装置で実現される機能]
図3に示すように、データ収集装置10は、データ記憶部100と、収集部101と、を含む。
[データ記憶部]
データ記憶部100は、記憶部12を主として実現される。データ記憶部100は、データ収集に関するデータを記憶する。例えば、データ記憶部100は、コントローラ20の同期領域から収集した変数が格納された変数データを記憶する。変数データは、定期的に収集される。変数データには、ある一時点の変数の値が格納されてもよいし、変数の値の時系列的な変化が格納されてもよい。また、変数データには、1つの変数の値だけが格納されていてもよいし、複数の変数の値が格納されていてもよい。他にも例えば、変数データには、複数の変数の値に基づいて計算された値が格納されていてもよい。本実施形態では、変数データに含まれる変数は、第1記憶部22Aの同期領域に記録される。
また例えば、データ記憶部100は、コントローラ20の非同期領域から収集した収集対象データを記憶する。収集対象データは、不定期的に収集されたデータである。また例えば、データ記憶部100は、コントローラ20又は被制御装置30の動作を解析するためのアプリケーションを記憶する。例えば、このアプリケーションは、変数データ又は収集対象データを入力とし、解析結果を出力とする。アプリケーションには、変数データ又は収集対象データと解析結果との関係が定義されている。解析結果に応じて、コントローラ20に対するフィードバックが行われてもよい。
[収集部]
収集部101は、CPU11を主として実現される。収集部101は、コントローラ20から、収集対象データを収集する。ここでの収集とは、受信又は取得と同じ意味である。本実施形態では、収集部101は、後述する通知送信部207により送信された完了通知を受信した場合に、コントローラ20に対し、所定の要求を送信する。この要求は、収集対象データの送信要求であり、所定形式のデータが送信されることにより行われる。以降、この要求をデータ送信要求と記載する。データ送信要求には、送信対象の収集対象データを識別する情報が含まれてもよい。
収集部101は、コントローラ20から完了通知を受信したか否かを判定する。収集部101は、完了通知を受信したと判定した場合に、コントローラ20に対し、データ送信要求を送信する。収集部101は、完了通知を受信したことに応じて(完了通知を受信したことを条件として)、コントローラ20に対し、データ送信要求を送信する。後述するデータ送信部213により収集対象データが送信され、収集部101は、当該送信された収集対象データを収集する。
なお、コントローラ20が、データ収集装置10に対し、自発的に収集対象データを送信してもよい。この場合、収集部101は、コントローラ20が自発的に送信した収集対象データを受信する。他にも例えば、収集部101は、コントローラ20に対し、変数データの解析結果をフィードバックする際に、バッファ領域における収集対象データの有無を問い合わせてもよい。この場合、コントローラ20は、問い合わせに応じてバッファ領域を参照し、データ収集装置10に対し、収集対象データを送信してもよい。
[3-2.コントローラで実現される機能]
図3に示すように、コントローラ20では、第1データ記憶部200、第2データ記憶部201、第3データ記憶部202、動作制御部203、取得部204、第1書き込み部205、第1判定部206、通知送信部207、第2書き込み部208、第2判定部209、第1消去部210、第3判定部211、第2消去部212、及びデータ送信部213が実現される。
[第1データ記憶部]
第1データ記憶部200は、第1記憶部22Aを主として実現される。第1データ記憶部200は、データ収集装置10の収集対象となるデータを記憶する。本実施形態では、第1データ記憶部200は、同期領域と、非同期領域と、を有する。即ち、第1データ記憶部200は、同期領域と、非同期領域と、に分けられている。同期領域は、第1のアドレス帯の領域であり、非同期領域は、第2のアドレス帯の領域である。第1データ記憶部200には、複数の同期領域が存在してもよい。第1データ記憶部200には、複数の非同期領域が存在してもよい。同期領域と非同期領域の各々は、所定のアドレス帯域の記憶領域である。
例えば、第1データ記憶部200は、同期領域に、複数の変数の各々の現在値を記憶する。第1データ記憶部200に記憶される変数の現在値と、第3データ記憶部202に記憶される変数の現在値と、の整合が取られる。先述したように、これらの整合は定期的に行われる。同期領域には、同期の対象となるデータが記憶されるようにすればよく、変数以外のデータが記憶されてもよい。同期領域は、同期の対象となるデータが記憶されるようにすればよい。
図4は、非同期領域に格納されるデータの一例を示す図である。図4に示すように、第1データ記憶部200は、非同期領域に、少なくとも1つの収集対象データを記憶する。本実施形態では、非同期領域は、複数のチャネルに分けられており、例えば、個々のチャネルには、少なくとも1つの収集対象データが格納される。収集対象データのサイズが大きい場合には、収集対象データが分割されて複数のチャネルに格納されてもよい。収集対象データのサイズが小さい場合には、複数の収集対象データが1のチャネルに格納されてもよい。
チャネルは、非同期領域に設けられた一定のアドレス帯域の記憶領域である。チャネルは、非同期領域が有する小領域の一例である。このため、本実施形態でチャネルと記載した箇所は、小領域と読み替えることができる。小領域は、一定の記憶領域であればよく、チャネル以外の任意の呼び名で呼ばれてよい。小領域は、収集対象データを収集するためのアプリケーションと対応付けられていてもよいし、特にアプリケーションとは対応づけられていなくてもよい。即ち、小領域は、ある特定のアプリケーション専用の領域であってもよいし、複数のアプリケーションで共有される領域であってもよい。
[第2データ記憶部]
第2データ記憶部201は、第2記憶部22Bを主として実現される。第2データ記憶部201は、第1データ記憶部200から転送された収集対象データを記憶する。本実施形態では、第2データ記憶部201は、バッファ領域を有する。バッファ領域は、データ収集装置10に送信される収集対象データを一時的に格納する領域である。バッファ領域は、データ収集装置10によって参照される領域ということもできる。第2データ記憶部201には、複数のバッファ領域が存在してもよい。バッファ領域は、所定のアドレス帯域の記憶領域である。
なお、本実施形態では、第1データ記憶部200に同期領域と非同期領域が存在し、第2データ記憶部201にバッファ領域が存在する場合を説明するが、1つの記憶部内に(物理的に1つのハードウェアの中に)、同期領域、非同期領域、及びバッファ領域が存在してもよい。この場合、IoT部22は、複数の記憶部ではなく、1つの記憶部だけを有していてもよい。また例えば、同期領域と非同期領域は、互いに別々の記憶部内に存在してもよい。また例えば、同期領域とバッファ領域が1つの記憶部内に存在し、非同期領域が別の記憶部内に存在してもよい。また例えば、非同期領域とバッファ領域が1つの記憶部内に存在し、同期領域が別の記憶部内に存在してもよい。
第2データ記憶部201は、第1データ記憶部200に記憶された全ての収集対象データを記憶してもよいし、その一部だけを記憶してもよい。例えば、第2データ記憶部201が、第1データ記憶部200の非同期領域よりもメモリ容量が大きい場合には、第2データ記憶部201は、第1データ記憶部200の非同期領域に記憶された収集対象データの全てを記憶してもよい。また例えば、第2データ記憶部201が、第1データ記憶部200の非同期領域よりもメモリ容量が小さい場合には、第2データ記憶部201は、第1データ記憶部200の非同期領域に記憶された収集対象データの一部を記憶してもよい。
[第3データ記憶部]
第3データ記憶部202は、CPU21内の記憶部及び第3記憶部23の少なくとも一方を主として実現される。第3データ記憶部202は、被制御装置30の制御に必要なデータを記憶する。例えば、第3データ記憶部202は、複数の変数の各々の現在値を記憶する。第3データ記憶部202は、変数ごとに現在値を記憶する。各変数は、特定のレジスタに格納される。変数とレジスタの関係(どの変数をどのレジスタに格納するか)については、制御プログラムの作成者等によって予め指定されているものとする。レジスタに格納された変数は、他の機器によって適宜参照可能となる。
また例えば、第3データ記憶部202は、制御プログラム(収集対象データを収集するためのアプリケーションを含む)とパラメータを記憶する。また例えば、第3データ記憶部202は、ファームウェアなどの他のプログラムを記憶してもよいし、データ収集装置10に変数データを送信するためのプログラムを記憶してもよい。また例えば、第3データ記憶部202は、データ収集装置10のユーザに対して公開された変数の定義を示す変数定義を記憶してもよい。変数定義に示された変数の全部又は一部がデータ収集の対象となる。また例えば、第3データ記憶部202は、収集対象データの設定を記憶する。
なお、コントローラ20に記憶されるデータは、上記の例に限られない。例えば、コントローラ20は、各変数に対応するレジスタを定義したデータを記憶してもよい。また例えば、コントローラ20は、自身の制御対象となる被制御装置30を識別可能な情報を記憶してもよい。また例えば、コントローラ20は、データ収集装置10を識別可能な情報を記憶してもよい。これらのデータは、第1データ記憶部200~第3データ記憶部202の何れかに記憶されるようにすればよい。
[動作制御部]
動作制御部203は、CPU21を主として実現される。動作制御部203は、制御プログラムに基づいて、被制御装置30の動作を制御する。例えば、動作制御部203は、被制御装置30に対して指令を送り、被制御装置30は、当該指令に基づいて動作する。本実施形態では、制御用の指令に応じて収集対象データが収集されるので、この指令は、収集対象データを収集するための指令ということもできる。動作制御部203は、周期的に複数の変数の各々を更新して、被制御装置30を制御する。例えば、装置プログラムに関連付けられた変数の値に基づいて被制御装置30が動作する場合、動作制御部203は、被制御装置30に対し、装置プログラムを開始させるための変数の値を変える旨の指示を送る。被制御装置30は、当該指示に基づいて変数の値を変えて装置プログラムを実行する。なお、被制御装置30の動作制御のために特に変数を利用しない場合には、動作制御部203は、被制御装置30が実行すべき動作を示すコマンドを送信することによって、被制御装置30の動作を制御すればよい。
[取得部]
取得部204は、CPU21を主として実現される。取得部204は、コントローラ20及び被制御装置30の少なくとも一方の動作に関する収集対象データを取得する。本実施形態では、収集対象データは、後述する生成部302により生成されるので、取得部204は、生成部302により生成された収集対象データを取得する。例えば、取得部204は、収集対象データを収集するためのアプリケーションに基づいて、収集対象データを取得する。
[第1書き込み部]
第1書き込み部205は、CPU21を主として実現される。第1書き込み部205は、定期的に同期が取られる同期領域と、同期領域とは異なる非同期領域と、のうち、非同期領域に収集対象データを書き込む。ここでの書き込むとは、格納、記録、又は転送と同じ意味である。この点は、後述する第2書き込み部208による書き込みについても同様である。
第1書き込み部205は、取得部204により取得された収集対象データを非同期領域に書き込む。収集対象データは、第3データ記憶部202等の記憶領域に一時的に書き込まれた後に、非同期領域に書き込まれてもよいし、特にこのような一時的な書き込みがなされることなく、収集対象データが取得されてすぐに非同期領域に書き込まれてもよい。本実施形態では、コントローラ20が第1制御回路(CPU21)と第2制御回路(IoT部22)とを有するので、第1制御回路の第1書き込み部205は、第2制御回路の非同期領域に、収集対象データを書き込む。
本実施形態では、非同期領域は、複数のチャネルを有するので、第1書き込み部205は、複数のチャネルの中から、使用可能な少なくとも1つのチャネルを選択して収集対象データを書き込む。使用可能なチャネルとは、収集対象データを書き込み可能なチャネルである。例えば、収集対象データを記憶していないチャネル、収集対象データのサイズ以上の空き容量のあるチャネル、又は、データ収集装置10に送信済みの収集対象データを記憶するチャネルは、使用可能なチャネルである。
例えば、第1書き込み部205は、IoT部22に対し、使用可能なチャネルの有無を問い合わせる。問い合わせの際には、収集対象データの書き込みで使用する記憶容量(収集対象データのデータサイズ)を含めてもよい。IoT部22は、問い合わせを受信すると、第2記憶部22の非同期領域を参照し、使用可能なチャネルの有無を判定する。その際には、問い合わせに含まれる記憶容量以上の記憶容量を有するチャネルの有無が判定されてもよい。
IoT部22は、第1書き込み部205に対し、判定結果を送信する。使用可能なチャネルが存在する場合、判定結果には、使用可能な一部のチャネルが示されてよいし、その全てが示されてもよい。第1書き込み部205は、判定結果に示された何れかのチャネルを選択する。チャネルは、任意の方法によって選択可能であり、例えば、アドレスが最も若いチャネルが選択されてもよいし、チャネルがランダムに選択されてもよい。第1書き込み部205は、IoT部22に対し、選択されたチャネルへの収集対象データの書き込みを要求する。
[第1判定部]
第1判定部206は、IoT部22を主として実現される。第1判定部206は、収集対象データの書き込みが完了したか否かを判定する。第1判定部206は、任意の記憶部に対する収集対象データの書き込みが完了したか否かを判定可能である。本実施形態では、第1判定部206が、第2データ記憶部201のバッファ領域に対する収集対象データの書き込みが完了したか否かを判定する場合を説明するが、バッファ領域を特に設けない場合には、第1判定部206は、第1データ記憶部200の非同期領域に対する収集対象データの書き込みが完了したか否かを判定してもよい。第1判定部206は、収集対象データの最後のデータ部分までの書き込みが完了したか否かを判定する。
[通知送信部]
通知送信部207は、IoT部22を主として実現される。通知送信部207は、第1判定部206により収集対象データの書き込みが完了したと判定された場合に、データ収集装置10に対し、所定の完了通知を送信する。通知送信部207は、第1判定部206により収集対象データの書き込みが完了したと判定されたことに応じて(完了したと判定されたことを条件として)、データ収集装置10に対し、所定の完了通知を送信する。完了通知は、所定の形式のデータであればよく、例えば、収集対象データの種類、又は、収集対象データが格納されたバッファ領域内のアドレスなどの情報が含まれてもよい。
[第2書き込み部]
第2書き込み部208は、IoT部22を主として実現される。第2書き込み部208は、非同期領域に書き込まれた収集対象データを、同期領域及び非同期領域とは異なるバッファ領域に書き込む。第2書き込み部208は、非同期領域への収集対象データの書き込みが完了した場合に、バッファ領域への収集対象データの書き込みを開始してもよいし、非同期領域への収集対象データの書き込み中に、バッファ領域への収集対象データの書き込みを開始してもよい。
なお、第2書き込み部208は、バッファ領域を使用可能か否か判定してもよい。例えば、バッファ領域に収集対象データが書き込まれていないこと、収集対象データのサイズ以上の空き容量をバッファ領域が有すること、又は、送信済みの収集対象データだけがバッファ領域に格納されていることは、バッファ領域が使用可能であることに相当する。第2書き込み部208は、バッファ領域を使用可能と判定された場合に、非同期領域の収集対象データをバッファ領域に書き込む。第2書き込み部208は、バッファ領域を使用可能と判定されない場合には、バッファ領域を使用可能と判定されるまで、非同期領域からバッファ領域への収集対象データの書き込みを待機する。
[第2判定部]
第2判定部209は、IoT部22を主として実現される。第2判定部209は、非同期領域からバッファ領域への収集対象データの書き込みが完了したか否かを判定する。第2判定部209は、非同期領域に書き込まれた収集対象データの最後のデータ部分まで、バッファ領域への書き込みが完了したか否かを判定する。
[第1消去部]
第1消去部210は、IoT部22を主として実現される。第1消去部210は、非同期領域からバッファ領域へのデータの書き込みが完了したと判定された場合に、非同期領域に書き込まれた収集対象データを消去する。第1消去部210は、非同期領域からバッファ領域への収集対象データの書き込みが完了したと判定されたことに応じて(書き込みが完了したと判定されたことを条件として)、非同期領域に書き込まれた収集対象データを消去する。
[第3判定部]
第3判定部211は、CPU21を主として実現される。第3判定部211は、データ収集装置10への収集対象データの送信が完了したか否かを判定する。第3判定部211は、バッファ領域に書き込まれた収集対象データの最後のデータ部分まで、データ収集装置10への送信が完了したか否かを判定する。
[第2消去部]
第2消去部212は、CPU21を主として実現される。第2消去部212は、データ収集装置10への収集対象データの送信が完了したと判定された場合に、バッファ領域に書き込まれた収集対象データを消去する。第2消去部212は、データ収集装置10への収集対象データの送信が完了したと判定されたことに応じて(送信が完了したと判定されたことを条件として)、バッファ領域に書き込まれた収集対象データを消去する。
[データ送信部]
データ送信部213は、IoT部22を主として実現される。データ送信部213は、データ収集装置10に対し、非同期領域に書き込まれた収集対象データを送信する。本実施形態では、データ収集装置10は、完了通知を受信した場合に、コントローラ20に対し、所定の要求を送信し、データ送信部213は、要求を受信した場合に、外部装置に対し、データを送信する。データ送信部213は、要求を受信したことに応じて(要求を受信したことを条件として)、非同期領域に書き込まれた収集対象データを送信する。
本実施形態では、非同期領域のチャネルに収集対象データが書き込まれるので、データ送信部213は、データ収集装置10に対し、少なくとも1つのチャネルに書き込まれた収集対象データを送信する。なお、特にチャネルを設けない場合には、データ送信部213は、チャネルに関係なく、非同期領域の収集対象データを送信する。
また、本実施形態では、バッファ領域に収集対象データが書き込まれるので、データ送信部213は、データ収集装置10に対し、バッファ領域に書き込まれたデータを送信する。なお、特にバッファ領域を設けない場合には、データ送信部213は、非同期領域の収集対象データを直接的に送信する。
[3-3.被制御装置で実現される機能]
図3に示すように、被制御装置30では、データ記憶部300、工程実行部301、及び生成部302が実現される。
[データ記憶部]
データ記憶部300は、記憶部32を主として実現される。データ記憶部300は、被制御装置30が工程を実行するために必要なデータを記憶する。例えば、データ記憶部300は、装置プログラムと、変数の現在値と、を記憶する。データ記憶部300に記憶される変数の現在値は、第1データ記憶部200に記憶される変数の現在値と定期的に整合が取られる。各変数の値は、予め定められたレジスタに格納される。また例えば、データ記憶部300は、収集対象データの設定を記憶する。
[工程実行部]
工程実行部301は、CPU31を主として実現される。工程実行部301は、データ記憶部300に記憶された装置プログラムと、コントローラ20から受信した指示と、に基づいて、所定の工程を実行する。例えば、コントローラ20は、ある装置プログラムを開始させる場合に、当該装置プログラムに関連付けられた変数を所定の値にする旨の指示を被制御装置30に送信する。被制御装置30は、当該指示を受信すると変数を所定の値に変更する。工程実行部301は、変数が所定の値になったことを検知すると、当該変数に関連付けられた装置プログラムを実行する。
工程実行部301は、装置プログラムが示す工程が終了すると、当該装置プログラムに関連付けられた変数を所定の値に変更し、その旨をコントローラ20に対して送信する。その後に、別の装置プログラムを実行させる場合には、コントローラ20は、当該別の装置プログラムに関連付けられた変数を所定の値にする旨の指示を被制御装置30に送信し、工程実行部301は、別の装置プログラムを実行させることになる。なお、被制御装置30の中で複数の装置プログラムの実行順が定義されている場合には、コントローラ20に対して、装置プログラムの終了が送信されずに、工程実行部301は、当該複数の装置プログラムを次々と実行するようにしてもよい。
[生成部]
生成部302は、CPU31を主として実現される。生成部302は、収集対象データを生成する。例えば、生成部302は、データ記憶部300に記憶された変数、被制御装置30に接続されたセンサの検出信号、又は被制御装置30の内部情報に基づいて、収集対象データを生成する。本実施形態では、データ収集装置10により収集対象データの設定が行われるので、生成部302は、当該設定に基づいて、収集対象データを生成する。例えば、生成部302は、設定された収集条件が満たされるか否かを判定する。生成部302は、収集条件が満たされたと判定された場合に、指令に含まれる種類の収集対象データを生成する。
[4.生産システムで実行される処理]
図5及び図6は、第1の実施形態の生産システム1で実行される処理の一例を示すフロー図である。図5及び図6に示す処理は、図3に示す機能ブロックにより実行される処理の一例である。
図5に示すように、データ収集装置10は、収集対象データを選択し、コントローラ20及び被制御装置30の各々に対し、収集対象データの設定を行う(S1)。例えば、設定内容は、データ収集装置10のユーザにより指定される。データ収集装置10は、ユーザにより指定された設定内容を、コントローラ20及び被制御装置30の各々に送信する。コントローラ20及び被制御装置30の各々は、収集対象データの設定内容を受信して記憶する。被制御装置30は、コントローラ20を介して設定内容を受信してもよいし、データ収集装置10と直接的に通信可能に接続されてもよい。
コントローラ20のCPU21は、被制御装置30に対し、制御用の指令を送信する(S2)。S2においては、CPU21は、制御プログラムを実行し、被制御装置30の動作内容等を含む制御用の指令を生成して送信する。被制御装置30は、制御用の指令を受信すると(S3)、指令に基づいて動作して動作データを生成する(S4)。動作データは、収集対象データに含められる。例えば、動作データは、収集対象として指定された内容以外の情報を示してもよい。動作データは、制御用の指令に対する応答(毎周期送信される応答)を示してもよい。
S4においては、収集対象データも生成されてよい。例えば、被制御装置30は、記憶部32に記憶された変数に基づいて、収集条件が満たされるか否かを判定する。収集条件は、変数に関する条件でなくてもよく、例えば、被制御装置30に接続されたセンサにより検出された物理量、CPU31の計算結果、又はアラームの発生有無等によって判定されてもよい。被制御装置30は、収集条件が満たされた場合に、変数やセンサの検出信号等に基づいて、データ収集装置10により選択された収集対象データを生成する。
被制御装置30は、コントローラ20に対し、収集対象データを送信する(S5)。S5において送信される収集対象データには、動作データが含められる。収集対象データの送信方法が予め指定されている場合、被制御装置30は、その送信方法で、S4で生成した収集対象データを送信する。なお、複数の送信方法が存在せずに単一の送信方法だけが利用される場合には、送信方法は指定されなくてもよい。
コントローラ20は、収集対象データを受信すると(S6)、CPU21は、非同期領域の複数のチャネルの中から使用可能なチャネルを選択する(S7)。S7においては、CPU21は、IoT22に対し、使用可能なチャネルの有無を問い合わせる。IoT部22は、第1記憶部22Aの非同期領域を参照し、使用可能なチャネルの有無を判定する。IoT部22は、CPU21に対し、判定結果を送信する。CPU21は、判定結果を受信する。判定結果が使用可能なチャネルがあることを示していれば、CPU21は、その中の少なくとも1つのチャネルを使用可能なチャネルとして選択する。判定結果が使用可能なチャネルがないことを示していれば、CPU21は、収集対象データを第3記憶部23に一時的に書き込み、使用可能なチャネルが出るまで待機する。
CPU21は、S7で選択したチャネルに、収集対象データを書き込む(S8)。S8においては、CPU21は、IoT部22に対し、S4で選択したチャネルを指定して収集対象データの書き込みを要求する。IoT部22は、要求を受信すると、CPU21により指定されたチャネルに収集対象データを書き込む。
図6に移り、IoT部22は、選択されたチャネルに収集対象データが書き込まれると、第2記憶部22Bのバッファ領域に収集対象データを書き込む(S9)。IoT部22は、選択されたチャネルからバッファ領域への収集対象データの書き込みが完了した否かを判定する(S10)。収集対象データの書き込みが完了したと判定されない場合(S10;N)、S9の処理に戻り、収集対象データの書き込みが継続される。一方、収集対象データの書き込みが完了したと判定された場合(S10;Y)、IoT部22は、収集対象データの書き込みが完了したチャネルから収集対象データを消去し(S11)、データ収集装置10に対し、完了通知を送信する(S12)。S11の処理とS12の処理は、何れが先に実行されてもよい。
データ収集装置10は、完了通知を受信すると(S13)、コントローラ20に対し、データ送信要求を送信する(S14)。コントローラ20のIoT部22は、データ送信要求を受信すると(S15)、コントローラ20に対し、バッファ領域に書き込まれた収集対象データを送信する(S16)。データ収集装置10は、収集対象データを受信し、記憶部12に記録する(S17)。
IoT部22は、バッファ領域に書き込まれた収集対象データの送信が完了したか否かを判定する(S18)。収集対象データの送信が完了したと判定されない場合(S18;N)、S16の処理に戻り、収集対象データの送信が継続される。一方、収集対象データの送信が完了したと判定された場合(S18;Y)、IoT部22は、バッファ領域に書き込まれた送信済みの収集対象データを消去し(S19)、本処理は終了する。
以上説明した生産システム1によれば、定期的に同期が取られる同期領域と、同期領域とは異なる非同期領域と、を有する第1記憶部22Aのうち、非同期領域にデータを書き込んでデータ収集装置10に送信することにより、データ収集装置10とコントローラ20との間でポーリングをする必要がなくなり、データ収集装置10及びコントローラ20の各々の処理負荷を軽減できる。
また、生産システム1は、収集対象データの書き込みが完了した場合に、データ収集装置10に通知が送信され、コントローラ20が、外部装置からの要求を受信した場合に、非同期領域に書き込まれたデータを送信することにより、データ収集装置10とコントローラ20との間でポーリングをする必要がなくなり、データ収集装置10及びコントローラ20の各々の処理負荷を軽減できる。
また、生産システム1は、被制御装置30の制御用の第1制御回路であるCPU21と、データ収集装置10へのデータの送信用の第2制御回路であるIoT部22と、に分けることにより、処理負荷を分散する。これにより、被制御装置30の制御やデータ送信に支障が出ることを防止できる。その結果、制御の精度を向上させたり、収集対象データの送信を迅速かつ正確に行ったりすることができる。
また、生産システム1は、非同期領域が複数のチャネルに分けられており、少なくとも1つのチャネルに収集対象データを書き込み、当該少なくとも1つのチャネルに書き込まれた収集対象データをデータ収集装置10に対して送信することにより、ある収集対象データの送信が終わるまでは、他の収集対象データを送信できないといったことを防止できる。その結果、非同期領域を有効活用し、収集対象データの送信を効率化できる。
また、生産システム1は、非同期領域に書き込まれた収集対象データをバッファ領域に書き込み、データ収集装置10に対し、バッファ領域に書き込まれた収集対象データを送信することにより、例えば、バッファ領域に書き込まれた後に非同期領域を他の目的で利用することができ、非同期領域を有効活用できる。
また、生産システム1は、非同期領域からバッファ領域への収集対象データの書き込みが完了したと判定された場合に、非同期領域に書き込まれた収集対象データを消去することにより、メモリ消費量を削減し、非同期領域を有効活用できる。
また、生産システム1は、データ収集装置10へのデータの送信が完了したと判定された場合に、バッファ領域に書き込まれたデータを消去することにより、メモリ消費量を削減し、バッファ領域を有効活用できる。
[5.第2の実施形態]
第1の実施形態では、被制御装置30がコントローラ20から受信した指令に準じて動作しつつ、その動作中に生成された収集対象データを送信する場合を説明した。被制御装置30は、コントローラ20からの指令に関係なく、自身の設定に基づいて収集対象データを生成して送信してもよい。以降、生産システム1の第2の実施形態について説明する。第2の実施形態では、生産システム1の全体構成や機能ブロックは、第1の実施形態と同様である。第2の実施形態は、図5及び図6を参照して説明した処理の流れが第1の実施形態と異なる。
図7は、第2の実施形態の生産システム1で実行される処理の一例を示すフロー図である。第2の実施形態においても、コントローラ20から被制御装置30に対して制御用の指令が送信されるが、図7では、この指令については省略する。図7に示すように、S21の処理は、S1の処理と同様である。被制御装置30は、データ収集装置10からの設定に基づいて、収集対象データを生成し(S22)、コントローラ20に収集対象データを送信する(S23)。
S22においては、被制御装置30は、制御用の指令に関係なく(制御用の指令なしに)、収集条件が満たされたか否かを判定する。被制御装置30は、収集条件が満たされたと判定した場合に、収取対象データを生成する。被制御装置30は、制御用の指令に対する応答とは別に、収集対象データを送信する。なお、第2の実施形態でも、収集対象データに動作データが含まれてもよい。以降のS24~S26は、S6~S8と同様である。S26以降は、S9以降と同様の処理が実行される。
第2の実施形態によれば、コントローラ20からの制御用の指令なしに、被制御装置30に収集対象データを生成させることができる。
[6.第3の実施形態]
第2の実施形態では、被制御装置30が自発的に収集対象データを送信する場合を説明したが、被制御装置30が収集対象データを保管し、コントローラ20が被制御装置30に保管された収集対象データを取得するようにしてもよい。即ち、被制御装置30に保管された収集対象データが、コントローラ20のタイミングで読み出されてもよい。以降、生産システム1の第3の実施形態について説明する。
図8は、第3の実施形態の生産システム1で実行される処理の一例を示すフロー図である。第3の実施形態においても、コントローラ20から被制御装置30に対して制御用の指令が送信されるが、図8では、この指令については省略する。図8に示すように、S31及びS32の処理は、それぞれS21及びS22の処理と同様である。被制御装置30は、制御用の指令に関係なく(制御用の指令なしに)生成した収集対象データを記憶部32に保管し、コントローラ20は、当該保管された収集対象データを取得する(S33)。
S33においては、被制御装置30は、収集対象データを生成してすぐに送信するのではなく、コントローラ20からの取得要求を受信するまで、収集対象データを蓄積する。本実施形態では、収集対象データに動作データが含まれないものとするが、収集対象データの送信タイミングが、動作データの送信タイミングと偶然一致しているのであれば、収集対象データに動作データが含まれてもよい。コントローラ20は、収集対象データを収集するためのアプリケーションを実行し、任意のタイミングで収取対象データの取得要求を被制御装置30に送信する。被制御装置30は、取得要求を受信すると、保管された収集対象データをコントローラ20に送信する。以降のS34~S36は、S24~S26と同様である。S34以降は、S9以降と同様の処理が実行される。
第2の実施形態によれば、コントローラ20からの制御用の指令なしに、被制御装置30に収集対象データを生成させることができる。
[7.変形例]
なお、本開示は、以上に説明した実施の形態に限定されるものではない。本開示の趣旨を逸脱しない範囲で、適宜変更可能である。
(1)例えば、コントローラ20は、被制御装置30から取得した収集対象データをデータ収集装置10に送信しつつ、この収集対象データの全部又は一部を被制御装置30の制御に活用してもよい。なお、本変形例では、コントローラ20は、収集対象データのデータ構造を特定し、タイムスタンプ等の情報を収集対象データに付加したうえで、データ収集装置10に収集対象データを送信してもよい。
本変形例の取得部204は、予め定義されたデータ構造の収集対象データを取得する。データ構造とは、収集対象データのどこに何が格納されているかを示す情報である。例えば、収集対象データのフォーマット、種類、内容、又は拡張子は、データ構造の一例である。収集対象データのデータ構造は、第3データ記憶部202に記憶されているものとする。例えば、制御プログラム又は制御プログラム内のアプリケーションに、収集対象データのデータ構造の定義が記述されてもよい。取得部204は、第3データ記憶部202に記憶されたデータ構造を取得する。
動作制御部203は、予め定義されたデータ構造に基づいて、収集対象データの全部又は一部を利用して被制御装置30を制御する。動作制御部203は、取得部204により取得されたデータ構造に基づいて、取得部204により取得された収集対象データのデータ構造を特定する。動作制御部203は、特定されたデータ構造に基づいて、この収集対象データの全部又は一部を利用して、被制御装置30を制御する。被制御装置30から取得した収集対象データに基づいて被制御装置30が制御されるので、この制御はフィードバックということができる。
収集対象データと制御内容の関係は、フィードバック用のアプリケーションに記述されているものとする。フィードバック用のアプリケーションは、制御プログラムの一部であってもよいし、制御プログラムとは別体のプログラムであってもよい。例えば、動作制御部203は、フィードバック用のアプリケーションに、特定されたデータ構造と収集対象データの全部又は一部を入力し、フィードバックにおける制御内容を決定する。収集対象データのデータ構造ごとに(収集対象データの種類ごとに)アプリケーションを用意する場合には、動作制御部203は、特定されたデータ構造に対応するアプリケーションに収集対象データを入力し、フィードバックにおける制御内容を決定する。
例えば、動作制御部203は、予め定義されたデータ構造に基づいて、収集対象データがトルク値に関するデータであることを特定した場合、トルク値の異常を修正するためのアプリケーションに収集対象データの全部又は一部を入力する。アプリケーションは、入力された収集対象データの値に基づいて、被制御装置30に対するトルクに関する指令の補正量を決定する。また例えば、動作制御部203は、予め定義されたデータ構造に基づいて、収集対象データがモータの位置に関するデータであることを特定した場合、モータの位置の異常を修正するためのアプリケーションに収集対象データの全部又は一部を入力する。アプリケーションは、入力された収集対象データの値に基づいて、被制御装置30に対するモータの位置に関する指令の補正量を決定する。他のデータ構造についても同様に、特定されたデータ構造及び収集対象データに応じたフィードバックが行われるようにすればよい。
変形例(1)によれば、予め定義されたデータ構造に基づいて収集対象データを生成し、収集対象データの全部又は一部を利用して被制御装置30を制御することにより、データ収集装置10にデータを送信しつつ、被制御装置30の制御に活用できる。例えば、データ収集装置10で収集対象データの解析を行って解析結果をフィードバックする場合よりも、制御対象となる被制御装置30に近いコントローラ20側ですぐに制御に活用することにより、取得した収集対象データに応じたフィードバックを迅速に行うことができる。
(2)また例えば、コントローラ20が収集対象データのデータ構造を特定せず、被制御装置30側のアプリケーションで収集対象の収集対象データが決定されてもよい。この場合、コントローラ20のアプリケーションは、収集対象データのデータ構造を特定せずに、データ収集装置10に転送するので、どの被制御装置30の収集対象データであるかを識別する情報が収集対象データに付加されてもよい。収集対象データのデータ構造は、データ収集装置10により特定される。
データ送信部213は、被制御装置30に関する識別情報を収集対象データに付加し、データ収集装置10に対し、識別情報が付加された収集対象データを送信する。識別情報は、被制御装置30を一意に識別可能な情報であればよく、例えば、被制御装置30の名前、IPアドレス、又はIDなどの情報である。本変形例では、識別情報は、第3データ記憶部202に記憶されている場合を説明するが、他の記憶部に記憶されてもよい。例えば、制御用の指令には、指令の送信先となる被制御装置30の識別情報が含まれる。データ送信部213は、この識別情報を、この被制御装置30から取得された収集対象データに付加する。
変形例(2)によれば、被制御装置30に関する識別情報が付加された収集対象データを送信することにより、コントローラ20は、どの被制御装置30の動作に関する収集対象データを受信したかを識別できる。その結果、例えば、被制御装置30の動作の解析を正確に行うことができる。
(3)また例えば、収集対象データのサイズが大きい場合には、収集対象データが分割されて複数のチャネルに分けて書き込まれてもよい。図9は、変形例(3)の機能ブロック図である。図9に示すように、本変形例では、実施形態で説明した機能に加えて、コントローラ20で分割部214が実現される。分割部は、CPU21を主として実現される。分割部214は、収集対象データを複数に分割する。例えば、分割部214は、個々のデータのサイズがチャネルのサイズ以下となるように、収集対象データを複数に分割する。収集対象データが分割された個々のデータのサイズは、互いに均等であってもよいし異なってもよい。
第1書き込み部205は、分割された個々のデータを、非同期領域に書き込む。例えば、第1書き込み部205は、個々のデータを互いに異なるチャネルに分けて非同期領域に書き込む。どのデータをどのチャネルに書き込むかは、任意であってよく、例えば、収集対象データにおけるデータの順番とチャネルの順番とが一致するように、個々のデータがチャネルに格納される。
データ送信部213は、データ収集装置10に対し、非同期領域に書き込まれた個々のデータを送信する。データ送信部213は、分割された個々のデータを1つに結合したうえで送信してもよいし、分割された状態で送信してもよい。分割された状態で送信される場合には、データ収集装置10側でデータの結合が行われる。データ送信部213が、分割された状態の個々のデータを順次送信し、データ収集装置10側でデータの結合が行われる場合には、個々のデータに、同じ収集対象データであることを識別する情報が付加されているものとする。データ収集装置10は、この情報に基づいて、個々のデータを結合して収集対象データを取得する。
変形例(3)によれば、収集対象データを複数に分割し、分割された個々のデータを非同期領域に書き込み、非同期領域に書き込まれた個々のデータを送信することにより、収集対象データの送信を効率化できる。
(4)また例えば、上記変形例を組み合わせてもよい。
また例えば、実施形態では、収集対象データが被制御装置30の動作に関するデータである場合を説明したが、収集対象データは、コントローラ20の動作に関するデータであってもよい。この場合、コントローラ20のCPU21により生成部302が実現される。生成部302は、コントローラ20に接続されたセンサの検出信号やコントローラ20の内部情報に基づいて、コントローラ20の動作に関する収集対象データを生成する。収集対象データがデータ収集装置10に送信される処理の流れは、実施形態で説明した通りである。また例えば、第1の実施形態では、制御用の指令に応じて収集対象データが生成及び送信される場合を説明したが、制御用の指令とは別に、収集用の指令に応じて収集対象データが生成及び送信されてもよい。
また例えば、非同期領域からバッファ領域への収集対象データの書き込みが完了した場合に、非同期領域に書き込まれた収集対象データは特に消去されなくてもよい。この場合、新たな収集対象データが取得された場合に、非同期領域に記憶された送信済みの収集対象データが上書きされるようにすればよい。また例えば、データ収集装置10に対する収集対象データの送信が完了した場合に、バッファ領域に書き込まれた収集対象データは特に消去されなくてもよい。この場合、新たな収集対象データが取得された場合に、バッファ領域に記憶された送信済みの収集対象データが上書きされるようにすればよい。
また例えば、上記説明した各機能は、生産システム1における任意の装置で実現されるようにすればよい。例えば、データ収集装置10で実現されるものとして説明した機能がコントローラ20又は被制御装置30によって実現されてもよい。また例えば、コントローラ20で実現されるものとして説明した機能がデータ収集装置10又は被制御装置30によって実現されてもよい。また例えば、各機能が複数のコンピュータによって分担されるのではなく、1つのコンピュータによって実現されてもよい。
また、以上説明した実施形態は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成やデータ格納例そのものに限定するものではない。当業者はこれら開示された実施形態に種々の変形、例えば、物理的構成の形状や数、データ構造、処理の実行順を変更したりしてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
1 生産システム、10 データ収集装置、11,21,31 CPU、12,32 記憶部、13,33 通信部、20 コントローラ、22 IoT部、22A 第1記憶部、22B 第2記憶部、22C 第1通信部、23 第3記憶部、24 第2通信部、30 被制御装置、100 データ記憶部、101 収集部、200 第1データ記憶部、201 第2データ記憶部、202 第3データ記憶部、203 動作制御部、204 取得部、205 第1書き込み部、206 第1判定部、207 通知送信部、208 第2書き込み部、209 第2判定部、210 第1消去部、211 第3判定部、212 第2消去部、213 データ送信部、214 分割部、300 データ記憶部、301 工程実行部、302 生成部。

Claims (11)

  1. 他の産業装置を制御する第1のCPUと、外部装置と通信可能であり第2のCPUを有するIoT部と、を有する産業装置であって
    前記第1のCPUは、
    前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する第1データを取得する取得部と、
    第1のCPUと前記IoT部との間で定期的に第2データの整合が取られる前記IoT部の同期領域と、前記同期領域とは異なり前記第1のCPUと前記IoT部との間で定期的な整合は取られない前記IoT部の非同期領域と、のうち、前記非同期領域に前記第1データを書き込む書き込み部と、
    を有し、
    前記IoT部の前記第2のCPUは、前記外部装置に対し、前記非同期領域に書き込まれた前記第1データを送信するデータ送信部を有する、
    生産システム。
  2. 前記生産システムは、
    前記第1データの書き込みが完了したか否かを判定する第1判定部と、
    前記第1データの書き込みが完了したと判定された場合に、前記外部装置に対し、所定の通知を送信する通知送信部と、
    を有し、
    前記外部装置は、前記通知を受信した場合に、前記産業装置に対し、所定の要求を送信し、
    前記データ送信部は、前記要求を受信した場合に、前記外部装置に対し、前記第1データを送信する、
    請求項1に記載の生産システム。
  3. 前記非同期領域は、複数の小領域を有し、
    前記書き込み部は、前記複数の小領域の中から、使用可能な少なくとも1つの小領域を選択して前記第1データを書き込み、
    前記データ送信部は、前記外部装置に対し、前記少なくとも1つの小領域に書き込まれた前記第1データを送信する、
    請求項1又は2に記載の生産システム。
  4. 前記生産システムは、前記非同期領域に書き込まれた前記第1データを、前記同期領域及び前記非同期領域とは異なるバッファ領域に書き込む第2書き込み部を有し、
    前記データ送信部は、前記外部装置に対し、前記バッファ領域に書き込まれた前記第1データを送信する、
    請求項1~の何れかに記載の生産システム。
  5. 前記産業装置は、
    前記非同期領域から前記バッファ領域への前記第1データの書き込みが完了したか否かを判定する第2判定部と、
    前記非同期領域から前記バッファ領域への前記第1データの書き込みが完了したと判定された場合に、前記非同期領域に書き込まれた前記第1データを消去する第1消去部と、
    を有する請求項に記載の生産システム。
  6. 前記産業装置は、
    前記外部装置への前記第1データの送信が完了したか否かを判定する第3判定部と、
    前記外部装置への前記第1データの送信が完了したと判定された場合に、前記バッファ領域に書き込まれた前記第1データを消去する第2消去部と、
    を有する請求項又はに記載の生産システム。
  7. 前記取得部は、予め定義されたデータ構造の前記第1データを取得し、
    前記産業装置は、予め定義された前記データ構造に基づいて、前記第1データの全部又は一部を利用して前記他の産業装置を制御する、
    請求項1~の何れかに記載の生産システム。
  8. 前記第1データは、前記他の産業装置の動作に関するデータであり、
    前記データ送信部は、前記他の産業装置に関する識別情報を前記第1データに付加し、前記外部装置に対し、前記識別情報が付加された前記第1データを送信する、
    請求項1~の何れかに記載の生産システム。
  9. 前記産業装置は、前記第1データを複数に分割する分割部を有し、
    前記書き込み部は、分割された個々の第1データを、前記非同期領域に書き込み、
    前記データ送信部は、前記外部装置に対し、前記非同期領域に書き込まれた個々の第1データを送信する、
    を有する請求項1~の何れかに記載の生産システム。
  10. 他の産業装置を制御する第1のCPUと、外部装置と通信可能であり第2のCPUを有するIoT部と、を有する産業装置及び前記他の産業装置の少なくとも一方の動作に関する第1データを前記第1のCPUが取得し、
    前記第1のCPUと前記IoT部との間で定期的に第2データの整合が取られる前記IoT部の同期領域と、前記同期領域とは異なり前記第1のCPUと前記IoT部との間で定期的な整合は取られない前記IoT部の非同期領域と、のうち、前記非同期領域に前記第1データを前記第1のCPUが書き込み、
    前記外部装置に対し、前記非同期領域に書き込まれた前記第1データを前記第2のCPUが送信する、
    データ送信方法。
  11. 他の産業装置を制御する第1のCPUと、外部装置と通信可能であり第2のCPUを有するIoT部と、を有する産業装置の前記第2のCPUに、
    前記第1のCPUと前記IoT部との間で定期的に第2データの整合が取られる前記IoT部の同期領域と、前記同期領域とは異なり前記第1のCPUと前記IoT部との間で定期的な整合は取られない前記IoT部の非同期領域と、のうち、前記非同期領域に書き込まれた、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する第1データを、外部装置に対して送信させる、
    ためのプログラム。
JP2020056225A 2020-03-26 2020-03-26 生産システム、データ送信方法、及びプログラム Active JP7147805B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020056225A JP7147805B2 (ja) 2020-03-26 2020-03-26 生産システム、データ送信方法、及びプログラム
EP21163318.5A EP3885852A1 (en) 2020-03-26 2021-03-18 Production system, data transmission method, and program
CN202110300614.1A CN113448292A (zh) 2020-03-26 2021-03-22 生产系统、数据发送方法和程序
US17/210,453 US11698632B2 (en) 2020-03-26 2021-03-23 Production system, data transmission method, and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020056225A JP7147805B2 (ja) 2020-03-26 2020-03-26 生産システム、データ送信方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021157413A JP2021157413A (ja) 2021-10-07
JP7147805B2 true JP7147805B2 (ja) 2022-10-05

Family

ID=75108139

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020056225A Active JP7147805B2 (ja) 2020-03-26 2020-03-26 生産システム、データ送信方法、及びプログラム

Country Status (4)

Country Link
US (1) US11698632B2 (ja)
EP (1) EP3885852A1 (ja)
JP (1) JP7147805B2 (ja)
CN (1) CN113448292A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016079771A1 (ja) 2014-11-19 2016-05-26 三菱電機株式会社 制御装置、制御方法、及びプログラム
JP2017079006A (ja) 2015-10-21 2017-04-27 株式会社キーエンス プログラマブル・ロジック・コントローラ、拡張ユニット、制御方法、プログラム作成支援装置、プログラム作成支援方法およびプログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04138373A (ja) * 1990-09-28 1992-05-12 Iwatsu Electric Co Ltd ロジック・アナライザ
US7206646B2 (en) * 1999-02-22 2007-04-17 Fisher-Rosemount Systems, Inc. Method and apparatus for performing a function in a plant using process performance monitoring with process equipment monitoring and control
AU2001283464A1 (en) * 2000-08-31 2002-03-13 Padcom, Inc. Method and apparatus for routing data over multiple wireless networks
JP2003248611A (ja) * 2002-02-26 2003-09-05 Hitachi Ltd 記憶管理統合システム、および、その記憶管理制御方法
US7496041B2 (en) * 2003-02-28 2009-02-24 Fisher-Rosemount Systems, Inc. High speed auto-tuning loop
JP4131514B2 (ja) * 2003-04-21 2008-08-13 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワークシステム、サーバ、データ処理方法及びプログラム
US8028097B2 (en) * 2004-10-04 2011-09-27 Sony Corporation System and method for synchronizing audio-visual devices on a power line communications (PLC) network
JP4773788B2 (ja) * 2005-09-29 2011-09-14 株式会社日立製作所 記憶システムにおけるリモートコピー制御
EP1946282A4 (en) * 2005-10-05 2011-12-28 Abl Ip Holding Llc METHOD AND SYSTEM FOR REMOTELY MONITORING AND CONTROLLING FIELD DEVICES USING A SAFE NETWORK SUPPORTED BY REVERBER
JP4571576B2 (ja) * 2005-11-24 2010-10-27 株式会社日立製作所 リモートコピー記憶装置システムおよびリモートコピー方法
US7376805B2 (en) * 2006-04-21 2008-05-20 Hewlett-Packard Development Company, L.P. Distributed storage array
US8489210B2 (en) * 2009-03-24 2013-07-16 Rockwell Automation Technologies, Inc. Electronic operator interface based controller and device automatic downloads
WO2012127528A1 (en) * 2011-03-23 2012-09-27 Hitachi, Ltd. Storage system and method of controlling the same
US9086968B2 (en) * 2013-09-11 2015-07-21 International Business Machines Corporation Checkpointing for delayed alert creation
JP6112220B2 (ja) 2013-11-05 2017-04-12 株式会社安川電機 トレースデータ記録システム、トレースデータ記録サーバ、トレースデータ記録方法、プログラム、及び情報記憶媒体
WO2016071954A1 (ja) * 2014-11-04 2016-05-12 株式会社日立製作所 半導体メモリデバイス、及び、半導体メモリデバイスを有するストレージ装置
CN105069024B (zh) * 2015-07-16 2018-08-03 清华大学 面向并行数据采集的分布式文件系统写访问方法
KR20180086603A (ko) * 2017-01-23 2018-08-01 삼성전자주식회사 전자 장치 및 그의 제어방법
US10503409B2 (en) * 2017-09-27 2019-12-10 Alibaba Group Holding Limited Low-latency lightweight distributed storage system
US11115927B2 (en) * 2017-10-02 2021-09-07 Fisher Controls International Llc Methods and apparatus to control communication data rates of low-energy devices
CN109696878B (zh) * 2019-01-03 2020-10-02 中电智能科技有限公司 基于多缓冲区的控制器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016079771A1 (ja) 2014-11-19 2016-05-26 三菱電機株式会社 制御装置、制御方法、及びプログラム
JP2017079006A (ja) 2015-10-21 2017-04-27 株式会社キーエンス プログラマブル・ロジック・コントローラ、拡張ユニット、制御方法、プログラム作成支援装置、プログラム作成支援方法およびプログラム

Also Published As

Publication number Publication date
JP2021157413A (ja) 2021-10-07
US20210302951A1 (en) 2021-09-30
EP3885852A1 (en) 2021-09-29
US11698632B2 (en) 2023-07-11
CN113448292A (zh) 2021-09-28

Similar Documents

Publication Publication Date Title
US9778630B2 (en) Control device and system program for maintaining global variable and reference data consistency during parallel processing of multiple tasks
JP6956347B2 (ja) トレースデータ取得システム、トレースデータ取得方法、及びプログラム
JP7147805B2 (ja) 生産システム、データ送信方法、及びプログラム
CN111586087B (zh) 通信系统、通信方法和程序
EP3869745A1 (en) Production system, communication method, and program
US20210405606A1 (en) Production system, host control device, control device, communication method, and program
JP6849029B2 (ja) データ収集システム、データ収集方法、及びプログラム
JP7229957B2 (ja) 生産システム、通信方法、及びプログラム
JP7014133B2 (ja) 情報収集システム、情報収集方法、自走式ロボット、情報処理装置およびプログラム
US11953882B2 (en) Production system, control method, and information storage medium
CN107085410B (zh) 数值控制装置
CN113839994B (zh) 基于运动控制器的数据下载方法、装置和系统
JP7132461B1 (ja) 制御装置
US20210286343A1 (en) Production system, data transmission method, and information storage medium
US20210405597A1 (en) Engineering device, engineering method, and information storage medium
JP7215509B2 (ja) 産業機器のデータ収集システム、産業機器のデータ収集方法、及びプログラム
WO2022196562A1 (ja) 制御装置
KR20190043940A (ko) 전자 장치 및 그의 서비스 제공 방법
US10904208B2 (en) Controller for changing a conversion destination of a virtual area

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210629

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220404

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: 20220823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220905

R150 Certificate of patent or registration of utility model

Ref document number: 7147805

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150