JP6956347B2 - トレースデータ取得システム、トレースデータ取得方法、及びプログラム - Google Patents

トレースデータ取得システム、トレースデータ取得方法、及びプログラム Download PDF

Info

Publication number
JP6956347B2
JP6956347B2 JP2019015794A JP2019015794A JP6956347B2 JP 6956347 B2 JP6956347 B2 JP 6956347B2 JP 2019015794 A JP2019015794 A JP 2019015794A JP 2019015794 A JP2019015794 A JP 2019015794A JP 6956347 B2 JP6956347 B2 JP 6956347B2
Authority
JP
Japan
Prior art keywords
trace data
controller
industrial equipment
industrial
unit
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
JP2019015794A
Other languages
English (en)
Other versions
JP2020123230A (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 JP2019015794A priority Critical patent/JP6956347B2/ja
Priority to CN202010021845.4A priority patent/CN111506483A/zh
Priority to US16/752,730 priority patent/US11422915B2/en
Priority to EP20154673.6A priority patent/EP3690583B1/en
Publication of JP2020123230A publication Critical patent/JP2020123230A/ja
Application granted granted Critical
Publication of JP6956347B2 publication Critical patent/JP6956347B2/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • 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] or computer integrated manufacturing [CIM]
    • G05B19/4184Total 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] or computer integrated manufacturing [CIM] characterised by fault tolerance, reliability of production system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • G06F11/3075Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved in order to maintain consistency among the monitored data, e.g. ensuring that the monitored data belong to the same timeframe, to the same system or component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/325Display of status information by lamps or LED's
    • G06F11/326Display of status information by lamps or LED's for error or online/offline status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • 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/31402Keep log book, for activities of a station, equipment
    • 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/31462Add time stamp to alarm message

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Manufacturing & Machinery (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、トレースデータ取得システム、トレースデータ取得方法、及びプログラムに関する。
特許文献1には、産業機器にアラームが発生した場合に、クラウドサーバに当該産業機器のトレースデータをアップロードし、解析者に当該トレースデータを提供してアラームが発生した原因を解析させるシステムが記載されている。
国際公開第2015−068210号公報
本発明が解決しようとする課題は、例えば、産業機器の状態を解析するために有益なデータを取得することである。
本発明の一側面に係るトレースデータ取得システムは、対象物に対して順番に加工を行う複数の産業機器と、前記産業機器が特定の条件を満たしたか否かを判定する判定部と、前記産業機器が前記条件を満たしたと判定された場合に、他の産業機器にトレースデータの取得を要求する要求部と、を有する。
本発明の一側面に係るトレースデータ取得方法は、対象物に対して順番に加工を行う複数の産業機器の少なくとも1つが特定の条件を満たしたか否かを判定し、前記産業機器が前記条件を満たしたと判定された場合に、他の産業機器にトレースデータの取得を要求する。
本発明の一側面に係るプログラムは、対象物に対して順番に加工を行う複数の産業機器の少なくとも1つが特定の条件を満たした場合に、他の産業機器にトレースデータの取得を要求する要求部、としてコンピュータを機能させる。
本発明の一側面に係るトレースデータ取得システムは、前記条件を満たした産業機器のトレースデータと、前記他の産業機器が収集したトレースデータと、を取得する取得部を有する。
本発明の一側面に係るトレースデータ取得システムは、前記条件は、前記産業機器にアラームが発生することであり、前記要求部は、前記産業機器で前記アラームが発生したと判定された場合に、前記他の産業機器にトレースデータの取得を要求する。
本発明の一側面に係るトレースデータ取得システムは、前記条件を満たした産業機器のトレースデータと、前記他の産業機器が収集したトレースデータと、を取得し、前記発生したアラームに関するアラーム情報に関連付けて、前記取得したトレースデータを記憶部に記録する取得部を有する。
本発明の一側面に係るトレースデータ取得システムは、前記トレースデータ取得システムは、前記複数の産業機器を管理する上位装置を更に有し、前記複数の産業機器の各々は、前記上位装置に自身のトレースデータを送信する送信部を有する。
本発明の一側面に係るトレースデータ取得システムは、前記要求部は、前記上位装置により実現され、前記上位装置の前記要求部は、前記条件を満たした産業機器と、前記他の産業機器と、の各々に、トレースデータの取得を要求する。
本発明の一側面に係るトレースデータ取得システムは、前記判定部は、前記複数の産業機器の各々により実現され、前記複数の産業機器の各々の前記判定部は、自身が前記条件を満たしたか否かを判定する。
本発明の一側面に係るトレースデータ取得システムは、前記要求部は、前記複数の産業機器のうち、他の全ての産業機器にトレースデータの取得を要求する。
本発明の一側面に係るトレースデータ取得システムは、前記要求部は、前記複数の産業機器のうち、前記条件を満たした産業機器の前工程を担当する産業機器と、前記条件を満たした産業機器の後工程を担当する産業機器と、の少なくとも一方に、トレースデータの取得を要求する。
本発明の一側面に係るトレースデータ取得システムは、前記複数の産業機器の各々は、少なくとも1つの機器を制御し、前記要求部は、前記他の産業機器が制御する機器のトレースデータの取得を要求する。
本発明の一側面に係るトレースデータ取得システムは、前記複数の産業機器の各々は、予めトレース条件データを記憶する記憶部と、前記トレース条件データに基づいてトレースデータを生成する生成部と、を有する。
本発明の一側面に係るトレースデータ取得システムは、前記複数の産業機器の各々は、直近の期間における計測結果を記憶部に記録し、当該期間よりも前の計測結果は前記記憶部から消去し、前記要求部からの要求を受信した場合に、前記記憶部に記録された計測結果に基づいて、トレースデータを生成する生成部を有する。
本発明の一側面に係るトレースデータ取得システムは、前記トレースデータ取得システムは、前記対象物の識別情報に関連付けて、前記複数の産業機器の各々により行われた加工に関する加工情報を記録する記録部を有する。
本発明の一側面に係るトレースデータ取得システムは、前記トレースデータ取得システムは、前記産業機器が前記条件を満たした場合に加工された対象物の識別情報に関連付けられた加工情報を提供する提供部を有する。
本発明の一側面に係るトレースデータ取得システムは、前記トレースデータは、時刻情報を含む。
上記発明によれば、例えば、産業機器の状態を解析するために有益なデータを取得することである。
実施形態に係るトレースデータ取得システムの全体構成の一例を示す図である。 トレースデータ取得システムで実現される機能を示す機能ブロック図である。 トレース条件データベースのデータ格納例を示す図である。 アラーム履歴データベースのデータ格納例を示す図である。 トレースデータ取得システムで実行される処理を示すフロー図である。 変形例の機能ブロック図である。 加工情報データベースのデータ格納例を示す図である。
[1.トレースデータ取得システムの全体構成]
本発明の発明者の見地によれば、対象物に対して順番に加工を行う複数の産業機器を有するシステムでは、複数の産業機器の各々が他の産業機器に影響を与えていることがあり、ある産業機器が特定の条件を満たした場合に、他の産業機器が原因になっている可能性がある。この場合、当該条件を満たした産業機器のトレースデータだけを参照しても、原因を特定することができず、産業機器の状態を解析するために十分ではないことがある。そこで本発明の発明者は、産業機器の状態を解析するのに有益なデータを取得するために鋭意研究開発を行った結果、新規かつ独創的なトレースデータ取得システム等に想到した。以降、本実施形態に係るトレースデータ取得システム等を詳細に説明する。
図1は、実施形態に係るトレースデータ取得システムの全体構成の一例を示す図である。図1に示すように、トレースデータ取得システム1は、データ収集装置10、コントローラ20A〜20C、及びモータ制御装置30A1〜30A5,30B1〜30B6,30C1〜30C4を含む。以降、コントローラ20A〜20Cの各々を区別する必要のないときは、単にコントローラ20と記載し、モータ制御装置30A1〜30A5,30B1〜30B6,30C1〜30C4の各々を区別する必要のないときは、単にモータ制御装置30と記載する。
データ収集装置10は、トレースデータを収集するコンピュータである。トレースデータとは、機器の状態を時系列的に示すデータである。別の言い方をすれば、トレースデータは、センサの検出信号を時系列的に数値化したデータである。トレースデータは、動作のログ(履歴)を示すのでロギングデータと呼ばれることもある。例えば、トレースデータには、トルク信号、温度情報、モータのフィードバック速度、位置偏差、速度偏差、又は電流偏差などの内部情報が時系列的に示されている。
また、トレースデータには、時刻情報(タイムスタンプ)が含まれている。時刻情報は、トレースデータの収集時刻又は取得時刻に関する情報であり、例えば、生産しているワークの製品シリアルナンバー、各コントローラ20を識別するコントローラID、ある作業工程であること識別する工程ID、オペレータIDなどの情報と関連づけられている。「工程」は、1又は複数の産業機器毎にグルーピングされたものとして定義される。例えば、時刻情報は、トレースデータの取得開始時刻、イベントごとのタイムスタンプ、トレースデータの取得終了時刻、トレースデータの送信時刻、又はトレースデータの受信時刻などを示す。
本実施形態では、データ収集装置10は、上位装置の一例である。上位装置とは、複数のコントローラ20を管理する装置である。ここでの管理とは、トレースデータを収集する主体になることであり、各コントローラ20がトレースデータを送信する送信先になることを意味する。なお、上位装置は、データ収集装置10以外の装置であってもよく、例えば、コントローラ20又はモータ制御装置30の設定をするためのエンジニアリングツールがインストールされたコンピュータ、工場などの施設内のサーバコンピュータ、又はインターネット上のクラウドサーバなどが上位装置に相当してもよい。
例えば、データ収集装置10は、サーバコンピュータ、パーソナルコンピュータ、携帯電話(スマートフォンを含む)、又は携帯端末(タブレット型端末を含む)である。データ収集装置10は、CPU11、記憶部12、通信部13、操作部14、及び表示部15を含む。
CPU11は、少なくとも1つのプロセッサを含む。記憶部12は、RAM、EEPROM、及びハードディスクを含み、各種プログラムやデータを記憶する。CPU11は、これらプログラムやデータに基づいて各種処理を実行する。通信部13は、ネットワークカードや各種通信コネクタ等の通信インタフェースを含み、他の装置との通信を行う。操作部14は、マウスやキーボード等の入力デバイスである。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、CPU11の指示により各種画面を表示する。
コントローラ20は、少なくとも1台のモータ制御装置30を制御する装置である。本実施形態では、コントローラ20は、産業機器の一例である。ここでの産業機器とは、対象物に対して順番に加工を行うための機器である。対象物とは、加工の対象となる物であり、例えば、自動車やバイクなどの部品、電気製品、セラミックスや樹脂などの材料、又は食品などである。例えば、対象物は、ベルトコンベアなどの搬送装置に載せられて移動し、所定の順番で加工が行われる。なお、産業機器は、コントローラ20以外の装置であってもよく、例えば、モータ制御装置30がコントローラ20に相当してもよいし、ロボットコントローラ、工作機械、又はPLCなどが産業機器に相当してもよい。
例えば、コントローラ20は、CPU21、記憶部22、及び通信部23を含む。CPU21、記憶部22、及び通信部23の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様である。なお、通信部23は、モータ制御などの特定用途向けの集積回路を有していてもよい。また、図1では、コントローラ20A〜20Cの各々の構成を区別して、CPU21A,21B,21C、記憶部22A,22B,22C、及び通信部23A,23B,23Cといったように、数値の後にアルファベットを付した符号で記載しているが、これらを区別しないときは、末尾のアルファベットを省略する。
モータ制御装置30は、少なくとも1つのモータを制御する装置である。モータ制御装置30は、サーボアンプ又はサーボパック(登録商標)と呼ばれることもある。例えば、モータ制御装置30は、CPU、通信回路、DRAM、及びEEPROM等を含み、コントローラ20から受信した指令に基づいて、モータに対する電圧を制御する。モータは、回転式であってもよいしリニア式であってもよい。例えば、モータ制御装置30には、モータエンコーダ、トルクセンサ、及び温度センサといった種々のセンサ類が接続されている。モータ制御装置30は、各センサの検出信号を取得し、任意のタイミングでコントローラ20に送信する。
なお、本実施形態では、データ収集装置10及びコントローラ20を接続するネットワーク(上位側のネットワーク)と、コントローラ20及びモータ制御装置30を接続するネットワーク(下位側のネットワーク)と、は共に産業機器用に開発された通信プロトコルであるものとするが、これらのネットワークの通信プロトコルとしては、種々の通信プロトコルを適用可能である。
また、本実施形態では、トレースデータ取得システム1が3台のコントローラ20を含む場合を説明するが、トレースデータ取得システム1には、複数のコントローラ20が含まれていればよく、2台であってもよいし、4台以上であってもよい。また、1台のコントローラ20に接続されるモータ制御装置30の台数は、任意の台数であってよく、1台だけであってもよい。また、コントローラ20には、モータ制御装置30以外にも、温度センサなどのセンサや加工の様子を撮影するカメラなどが接続されていてもよい。
また、データ収集装置10、コントローラ20、及びモータ制御装置30の各々に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されるようにしてもよい。また、データ収集装置10、コントローラ20、及びモータ制御装置30の各々のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)が含まれていてもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが読取部又は入出力部を介して供給されるようにしてもよい。
[2.トレースデータ取得システムの概要]
トレースデータ取得システム1では、複数のコントローラ20の各々が、自身に接続されたモータ制御装置30に対して指令を送信し、モータ制御装置30が、指令に基づいてモータを動作させることによって、対象物に対して順番に加工が行われる。本実施形態では、コントローラ20A,20B,20Cの順番で、対象物への加工が行われるものとして説明する。
例えば、各コントローラ20は、モータ制御装置30からトルク信号や温度情報など受信し、アラームが発生したか否かを判定する。例えば、コントローラ20は、トルク信号のピーク値が閾値以上になったり、温度情報が閾値以上になったりした場合に、アラームが発生したと判定する。例えば、何れかのコントローラ20でアラームが発生すると、当該コントローラ20だけでなく、他のコントローラ20の動作も停止する。その後、作業員などによってアラームの発生原因が解消すると、各コントローラ20の動作が再開される。
アラームが発生する原因は多岐に渡るので、その原因を解析するために有効なトレースデータを取得することは非常に重要である。本実施形態のように、複数のコントローラ20が同じ対象物に対して順番に加工をする場合、互いの動作が密接に関連しているので、あるコントローラ20で発生したアラームの原因が、他のコントローラ20に存在することもある。このような場合、アラームが発生したコントローラ20のトレースデータだけを取得しても、アラームの原因を特定することはできない。
そこで、本実施形態では、何れかのコントローラ20でアラームが発生した場合に、コントローラ20全体に対してブロードキャストでトレースデータの取得が要求され、データ収集装置10に、全てのコントローラ20のトレースデータを取得させるようにしている。例えば、コントローラ20Bでアラームが発生したとすると、その原因がコントローラ20A又は20Cに存在する可能性があるので、データ収集装置10は、コントローラ20Bのトレースデータだけでなく、アラームが発生していないコントローラ20Aと20Cのトレースデータも取得するようにしている。これにより、コントローラ20の状態を解析するために有益なデータを取得することが可能となる。以降、トレースデータ取得システム1の詳細を説明する。
[3.トレースデータ取得システムで実現される機能]
図2は、トレースデータ取得システム1で実現される機能を示す機能ブロック図である。ここでは、データ収集装置10及びコントローラ20の各々において実現される機能について説明する。
[3−1.データ収集装置において実現される機能]
図2に示すように、データ収集装置10では、データ記憶部100、要求部101、及び取得部102が実現される。データ記憶部100は、記憶部12を主として実現され、要求部101と取得部102は、CPU11を主として実現される。
[データ記憶部]
データ記憶部100は、トレースデータDT2を収集するために必要なデータを記憶する。例えば、データ記憶部100は、トレース条件データベースDB1と、アラーム履歴データベースDB2と、を記憶する。
図3は、トレース条件データベースDB1のデータ格納例を示す図である。図3に示すように、トレース条件データベースDB1は、各コントローラ20のトレース条件データが格納されたデータベースであり、例えば、コントローラ20を一意に識別するコントローラIDと、トレース条件データと、が格納されている。なお、コントローラ20を識別する情報としては、コントローラの名前やIPアドレスといった他の情報が利用されてもよい。
トレース条件とは、トレースデータDT2を生成する際の計測条件であり、例えば、トレース対象となる軸、トレース対象となる信号の種類、サンプリング周期、又はトレースを行う時間帯などである。トレース条件データは、これらのトレース条件を示すデータであり、例えば、データ収集装置10を操作するユーザなどによって内容が設定される。例えば、トレース条件データベースDB1に格納されたトレース条件データは、電源投入時などのタイミングでコントローラ20に展開される。
なお、トレース条件データは、各コントローラ20に予め記憶されてもよいし、電源投入時以外の任意のタイミングで展開されてもよい。また、本実施形態では、コントローラ20ごとにトレース条件データが用意されている場合を説明するが、複数のコントローラ20で共通のトレース条件が設定されてもよい。例えば、全てのコントローラ20で共通のトレース条件が設定されてもよいし、一部のコントローラ20で共通のトレース条件が設定されてもよい。
図4は、アラーム履歴データベースDB2のデータ格納例を示す図である。図4に示すように、アラーム履歴データベースDB2は、アラーム発生時に収集されたトレースデータDT2が格納されたデータベースであり、例えば、アラームの発生日時、アラームコード、アラームが発生したコントローラ20のコントローラID、及びトレースデータDT2が格納される。
アラームの発生日時は、アラームが発生した時点又はその前後の時点であり、例えば、コントローラ20がアラームを検出した日時であってもよいし、データ収集装置10がアラーム発生通知を受信した日時であってもよい。アラームコードは、発生したアラームの種類を示し、トルク異常や温度異常といった複数のコードの中の何れかの値となる。アラームコードとアラームの内容の関係については、データ記憶部100に予め定義されているものとする。
本実施形態では、何れかのコントローラ20でアラームが発生した場合、同じネットワーク上に存在する全てのコントローラ20のトレースデータDT2が収集されるので、アラーム履歴データベースDB2には、各アラームの発生日時に収集された全てのコントローラ20のトレースデータDT2が格納される。アラーム履歴データベースDB2に格納された情報は、任意のタイミングでユーザに提供される。例えば、ある特定のアラームコードに関連付けられたトレースデータDT2が比較可能にユーザの端末に表示されてもよいし、ある特定の期間に発生したアラームに関連付けられたトレースデータDT2がユーザの端末に表示されてもよい。
なお、データ記憶部100が記憶するデータは、上記の例に限られない。例えば、データ記憶部100は、コントローラ20に接続されたモータ制御装置30やセンサ類などの構成を示す機器情報を記憶してもよいし、各コントローラ20の名前やIPアドレスを記憶してもよい。また例えば、データ記憶部100は、コントローラ20が担当する工程(対象物に加工を行う順番)を識別する情報を記憶してもよい。また例えば、データ記憶部100は、データ収集装置10とコントローラ20を接続する通信路におけるブロードキャストアドレスを記憶してもよい。
[要求部]
要求部101は、後述する判定部によりコントローラ20が特定の条件を満たしたと判定された場合に、他のコントローラ20にトレースデータDT2の取得を要求する。特定の条件は、予め定められた条件であればよく、コントローラ20が所定の状態になること、又は、コントローラ20が所定の動作をすることである。別の言い方をすれば、特定の条件は、トレースデータDT2を収集すべきか否かを示す条件である。
ここでの「トレースデータDT2の取得」とは、取得可能なデータをコントローラ20に確保させることである。本実施形態のように、コントローラ20がリングバッファを利用してデータを記録する場合には、別の記憶領域や外部メモリなどにデータをコピーする等してデータを確保することは、トレースデータDT2を取得することに相当する。コントローラ20がリングバッファを利用しない場合には、例えば、データを上書きや消去しないことがトレースデータDT2を取得することに相当する。例えば、コントローラ20が要求部101による要求後にトレースデータDT2を取得する場合には、コントローラ20のデータ記憶部200にトレースデータDT2を保存する処理は、トレースデータDT2を取得する処理に相当する。
要求部101による要求は、コントローラ20にトレースデータDT2を取得させるためのトリガとなる。要求は、所定形式の情報が送信されることによって、行われるようにすればよい。本実施形態では、コントローラ20は、要求を受信したからといって、すぐにトレースデータDT2を取得するとは限らない。例えば、コントローラ20は、要求を受信した後に、トレースデータDT2を取得するための条件が満たされた場合に、トレースデータDT2を取得する。この条件は、任意の条件であってよく、例えば、トルク信号が所定の波形を示すこと、モータのフィードバック速度が所定範囲になること等である。なお、データ収集装置10とコントローラ20との間で同期通信が可能であり、要求部101による要求が同期通信で送信される場合(即ち、要求が同期タスクとして処理される場合)には、コントローラ20は、要求を受信してすぐにトレースデータDT2を取得してもよい。
本実施形態では、アラームが発生することが特定の条件を満たすことに相当する場合を説明するが、特定の条件は、任意の条件を適用可能であり、例えば、コントローラ20内の特定のスイッチがオンになること、当該スイッチがオフになること、又はアラームの発生条件は満たさないが(即ち、加工物に対する加工が停止されるわけではないが)、センサの検出信号が所定の特徴を示すことなどである。なお、所定の特徴は、トレースデータDT2を収集する必要がある特徴としてユーザが指定した特徴であればよく、例えば、トルク信号の波形に乱れが生じること、整定時間が閾値以上になること、トルク信号のピーク値又は収束値が許容範囲を超えることなどである。
要求部101は、コントローラ20でアラームが発生したと判定された場合に、他のコントローラ20にトレースデータDT2の取得を要求する。他のコントローラ20とは、アラームが発生していないコントローラ20である。要求部101は、少なくとも1台の他のコントローラ20に対し、トレースデータDT2の取得を要求すればよい。
本実施形態では、要求部101は、あるコントローラ20でアラームが発生した場合に、同じネットワークに存在する全てのコントローラ20に対し、トレースデータDT2の取得を要求する場合を説明する。即ち、要求部101は、アラームが発生したコントローラ20と、他のコントローラ20と、の各々に、トレースデータDT2の取得を要求する。ただし、アラームが発生したコントローラ20が自発的にトレースデータDT2を送信する場合には、要求部101は、アラームが発生したコントローラ20については、トレースデータDT2の取得を要求する必要がないので、トレースデータDT2の取得を要求しなくてよい。また、後述する変形例のように、要求部101は、他のコントローラ20の全てではなく一部に対し、トレースデータDT2の取得を要求してもよい。
例えば、要求部101は、全てのコントローラ20に対し、トレースデータDT2の取得を要求することを示す識別子を含むパケットを送信することによって、トレースデータDT2の取得を要求する。要求部101は、ブロードキャストアドレス宛てに当該パケットを送信してもよいし、個々のコントローラ20のIPアドレス宛てに当該パケットを送信してもよい。
なお、本実施形態では、コントローラ20A〜20Cの3つが同じグループに属しており、共通の対象物に対して加工が行われるが、工場などの施設には、複数のグループが存在することもある。このグループは、ライン又はセルと呼ばれることもある。この場合、グループごとにネットワークを分けておき、グループごとにトレースデータDT2を収集できるようにしてもよい。要求部101は、あるグループでアラームが発生した場合に、他のグループに対してもトレースデータDT2の取得を要求してもよいが、グループが異なるとアラームとの関連性は薄いので、本実施形態では、他のグループについてはトレースデータDT2の取得を要求しないものとする。即ち、要求部101は、あるグループのコントローラ20でアラームが発生したと判定された場合に、当該グループの全てのコントローラ20にトレースデータDT2の取得を要求し、他のグループについてはトレースデータDT2の取得を要求しない。
また、要求部101は、アラームが発生時以外のときに、コントローラ20に対し、トレースデータDT2の取得を要求してもよい。例えば、データ収集装置10のユーザが所定の操作をした場合、又は、データ収集装置10が実行するアプリケーションで所定の条件が満たされた場合などに、要求部101は、コントローラ20に対し、トレースデータDT2の取得を要求してもよい。
[取得部]
取得部102は、特定の条件を満たしたコントローラ20のトレースデータDT2と、他のコントローラ20のトレースデータDT2と、を取得する。本実施形態では、アラームが発生することが特定の条件を満たすことに相当するので、取得部102は、アラームが発生したコントローラ20のトレースデータDT2と、他のコントローラ20のトレースデータDT2と、を取得する。また、本実施形態では、要求部101により全てのコントローラ20にトレースデータDT2の取得が要求されるので、取得部102は、要求部101の要求に応じて各コントローラ20が送信したトレースデータDT2を取得することになる。
なお、アラームが発生したコントローラ20が自発的にトレースデータDT2を送信する場合には、取得部102は、当該自発的に送信されたトレースデータDT2を取得する。また、ユーザの操作やデータ収集装置10が実行するアプリケーションの処理によってトレースデータDT2の取得が要求される場合には、取得部102は、当該要求に応じて送信されたトレースデータDT2を取得する。更に、コントローラ20内で所定のトリガ条件が満たされた場合にトレースデータDT2が送信される場合には、取得部102は、トリガ条件が満たされたことに応じて送信されたトレースデータDT2を取得する。
本実施形態では、取得部102は、発生したアラームに関するアラーム情報に関連付けて、取得したトレースデータDT2を記憶部に記録する。アラーム情報は、アラームに関連する任意の情報であってよく、例えば、アラームの発生日時、アラームコード、又はアラームが発生したコントローラ20のコントローラIDである。なお、アラーム情報には、アラーム発生時のコントローラ20又はモータ制御装置30のパラメータなどの設定情報が含まれていてもよい。
また、本実施形態では、アラームが発生したコントローラ20だけでなく、他のコントローラ20の全てに対してトレースデータDT2の取得が要求されるので、取得部102は、複数のコントローラ20の全てのトレースデータDT2を取得する。このため、アラーム履歴データには、1回のアラームに対し、全てのコントローラ20のトレースデータDT2が格納される。先述したように、ここでの全てのコントローラ20とは、アラームが発生したコントローラ20と同じネットワーク上にいる全てのコントローラ20という意味であり、他のネットワーク上のコントローラ20は含まれない。
本実施形態では、複数のコントローラ20の各々は、少なくとも1つのモータ制御装置30を制御するので、取得部102は、アラームが発生したコントローラ20が制御するモータ制御装置30のトレースデータDT2と、他のコントローラ20が制御するモータ制御装置30のトレースデータDT2と、を取得する。図1の構成例であれば、取得部102は、モータ制御装置30A1〜30A5,30B1〜30B6,30C1〜30C4の全てのトレースデータDT2を取得することになる。なお、トレース条件データに、トレース対象の軸として指定されていない場合には、トレースデータDT2の取得対象から除外される。
なお、取得部102がトレースデータDT2を取得するのは、任意のタイミングであってよく、例えば、ネットワークの通信量が比較的少なく通信の余力があるときであってもよいし、データ収集装置10及びコントローラ20の少なくとも一方の都合のよいタイミングであってもよい。都合のよいタイミングとは、例えば、処理負荷が比較的少ないタイミング、重要な同期タスクを処理していないタイミングなどである。他にも例えば、コントローラ21にトレースデータDT2を保存しておき、ユーザがトレースデータDT2を解析するための操作をした場合に、取得部102がトレースデータDT2を取得してもよいし、予め定められた収集時刻が訪れた場合に、取得部102がトレースデータDT2を取得してもよい。
[3−2.コントローラにおいて実現される機能]
図2に示すように、コントローラ20では、データ記憶部200、判定部201、生成部202、及び送信部203が実現される。なお、本実施形態では、全てのコントローラ20が同様の機能を有するので、図2では、簡略化のために、コントローラ20を1つだけ示している。データ記憶部200は、記憶部22を主として実現され、判定部201、生成部202、及び送信部203は、CPU21を主として実現される。
[データ記憶部]
データ記憶部200は、データ収集装置10にトレースデータDT2を送信するために必要なデータを記憶する。例えば、データ記憶部200は、トレース条件データDT1を記憶する。本実施形態では、コントローラ20の電源投入時にトレース条件データDT1が展開されるので、データ記憶部200は、当該展開されたトレース条件データDT1を記憶する。
また例えば、データ記憶部200は、トレース条件データDT1に基づいて生成されたトレースデータDT2を記憶する。トレースデータDT2は、データ記憶部200の任意の記憶領域に格納されてよく、本実施形態では、いわゆるリングバッファと呼ばれる記憶領域に格納される場合を説明する。例えば、リングバッファは、直近の期間における計測結果を記憶し、当該期間よりも前の計測結果は消去される。トレースデータDT2に計測結果が含まれる期間は、リングバッファのメモリサイズに応じて決定される。
なお、データ記憶部200が記憶するデータは、上記の例に限られない。例えば、データ記憶部200は、コントローラ20に接続されたモータ制御装置30やセンサ類などの構成を示す機器情報、モータ制御装置30の名前やIPアドレス、及びモータ制御装置30のパラメータなどを記憶してもよい。また例えば、データ記憶部200は、データ収集装置10のIPアドレスやデータ収集装置10とコントローラ20を接続する通信路におけるブロードキャストアドレスを記憶してもよい。
[判定部]
判定部201は、コントローラ20が特定の条件を満たしたか否かを判定する。本実施形態では、複数のコントローラ20の各々により判定部201が実現されるので、複数のコントローラ20の各々の判定部201は、自身が特定の条件を満たしたか否かを判定することになる。
判定部201は、コントローラ20が取得したセンサやスイッチの検出信号などに基づいて、特定の条件を満たしたか否かを判定する。例えば、判定部201は、モータ制御装置30に接続されたモータエンコーダ又はトルクセンサなどの検出信号に基づいて、特定の条件を満たしたか否かを判定する。また例えば、判定部201は、コントローラ20に接続された温度センサの検出信号に基づいて、特定の条件を満たしたか否かを判定する。また例えば、判定部201は、コントローラ20内部のスイッチのオン/オフの検出信号に基づいて、特定の条件を満たしたか否かを判定する。
本実施形態では、コントローラ20にアラームが発生することが特定の条件を満たすことに相当するので、判定部201は、コントローラ20がアラームの発生条件を満たしたか否かを判定する。例えば、アラームコードごとに、アラームの発生条件が定められており、判定部201は、コントローラ20が取得したセンサの検出信号が示す値が発生条件を満たすか否かを判定する。判定部201は、発生条件が満たされたアラームコードのアラームを発生させ、例えば、データ収集装置10に対し、アラームの発生日時と、発生したアラームのアラームコードと、を送信する。
[生成部]
生成部202は、トレース条件データDT1に基づいてトレースデータDT2を生成する。例えば、生成部202は、トレース条件データDT1に基づいて計測された計測結果を含むトレースデータDT2を生成する。本実施形態では、トレース条件データDT1に、トレース対象となる軸、トレース対象となる信号の種類、サンプリング周期、又はトレースを行う時間帯といった情報が示されているので、生成部202は、これらの情報に基づいてトレースデータDT2を生成する。なお、本実施形態のように、トレースデータDT2に時刻情報を含める場合には、生成部202は、リアルタイムクロック等により日時を取得し、トレースデータDT2に含めるようにすればよい。
本実施形態では、トレースデータDT2がリングバッファに格納されるので、生成部202は、直近の期間における計測結果をデータ記憶部200に記録し、当該期間よりも前の計測結果はデータ記憶部200から消去する。そして、生成部202は、要求部101からの要求を受信した場合に、データ記憶部200に記録された計測結果に基づいて、トレースデータDT2を生成する。即ち、生成部202は、要求部101から要求を受信した時点でのトレースデータDT2をキャプチャし、送信用のトレースデータDT2として取得する。
なお、アラームが発生したコントローラ20が自発的にトレースデータDT2を送信する場合には、生成部202は、アラームが発生した時点でのトレースデータDT2をキャプチャし、送信用のトレースデータDT2として取得すればよい。また、アラーム発生以外のタイミングでトレースデータDT2が送信される場合には、生成部202は、当該タイミングにおけるトレースデータDT2をキャプチャし、送信用のトレースデータDT2として取得すればよい。
[送信部]
送信部203は、データ収集装置10に自身のトレースデータDT2を送信する。本実施形態では、送信部203は、データ収集装置10の要求部101からトレースデータDT2の取得が要求された場合に、生成部202により生成されたトレースデータDT2を送信する。なお、アラームが発生したコントローラ20が自発的にトレースデータDT2を送信する場合には、送信部203は、アラームが発生した場合に、生成部202により生成されたトレースデータDT2を送信する。また、アラーム発生以外のタイミングでトレースデータDT2が送信される場合には、送信部203は、当該タイミングが訪れた場合に、生成部202により生成されたトレースデータDT2を送信する。
[4.トレースデータ取得システムで実行される処理]
図5は、トレースデータ取得システム1で実行される処理を示すフロー図である。図5に示す処理は、CPU11,21がそれぞれ記憶部12,22に記憶されたプログラムに従って動作することによって実行される。以降説明する処理は、図2に示す機能ブロックにより実行される処理の一例である。なお、本実施形態では、トレースデータDT2を生成して送信する処理自体は、全てのコントローラ20で共通するので、図5では、簡略化のために、コントローラ20を1つだけ示している。
図5に示すように、コントローラ20などの電源が投入されると、データ収集装置10においては、CPU11は、トレース条件データベースDB1に基づいて、複数のコントローラ20の各々に対し、トレース条件データDT1を展開する(S1)。S1においては、CPU11は、記憶部12に記憶されたコントローラ20のIPアドレスを参照し、データ収集装置10の配下に接続されているコントローラ20を特定する。そして、CPU11は、当該特定されたコントローラ20に対し、トレース条件データベースDB1に格納されたトレース条件データDT1を送信する。
各コントローラ20においては、トレース条件データDT1を受信すると、CPU21は、受信したトレース条件データDT1を記憶部22に記録する(S2)。S2の処理により、トレース対象となる軸や情報の種類などが設定されることになる。以降、コントローラ20はモータ制御装置30に対して指令を送信し、モータ制御装置30は当該指令に応じてモータを制御する。モータ制御装置30は、トルクセンサ、モータエンコーダ、及び温度センサなどの検出結果をコントローラ20に送信する。
CPU21は、モータ制御装置30からトルクセンサなどの検出結果を取得し、記憶部22のリングバッファに格納する(S3)。リングバッファには、直近の一定期間の検出結果が格納されるので、S3においては、CPU21は、モータ制御装置30から取得した検出結果をリングバッファに格納し、最も古い検出結果をリングバッファから消去する。
CPU21は、モータ制御装置30から取得したトルクセンサなどの検出結果に基づいて、アラームが発生したか否かを判定する(S4)。例えば、記憶部22には、アラームコードごとにアラームの発生条件が定義されており、S4においては、CPU21は、各アラームコードの発生条件が満たされたか否かを判定する。
アラームが発生したと判定されない場合(S4;N)、S3の処理に戻り、トルクセンサなどの検出結果がリングバッファに格納される。一方、アラームが発生したと判定された場合(S4;Y)、CPU21は、データ収集装置10に対し、アラーム発生通知を送信する(S5)。S5においては、CPU21は、自身のコントローラID、アラームの発生日時(即ち、現在日時)、及び発生したアラームのアラームコードを含むアラーム発生通知を送信する。
データ収集装置10においては、CPU11は、アラーム発生通知を受信すると、全てのコントローラ20に対し、ブロードキャストでトレースデータDT2の取得を要求する(S6)。S6においては、CPU11は、アラーム発生通知を送信したコントローラ20が接続されたネットワークのブロードキャストアドレスに対し、トレースデータDT2の取得を要求する旨の識別子を含むパケットを送信する。これにより、アラームが発生したことが全てのコントローラ20で共有され、各コントローラ20は、動作を停止する。
各コントローラ20においては、トレースデータDT2の取得の要求を受信すると、CPU21は、トレースデータDT2を生成し(S7)、データ収集装置10に、S7で生成したトレースデータDT2を送信する(S8)。S7においては、CPU21は、記憶部22のリングバッファの現在の状態をキャプチャし、トレースデータDT2として取得する。S8においては、CPU21は、トレースデータDT2の取得の要求に対する応答として、当該取得されたトレースデータDT2を送信する。
データ収集装置10においては、各コントローラ20からトレースデータDT2を受信すると、CPU21は、アラーム情報に関連付けて、受信したトレースデータDT2をアラーム履歴データベースDB2に格納し(S9)、本処理は終了する。S9においては、CPU21は、アラーム履歴データベースDB2に新たなレコード作成し、S6で受信したアラームの発生日時及びアラームコードと、S6で受信したアラーム発生通知を送信したコントローラのコントローラIDと、を格納する。また、CPU21は、当該レコードに、全てのコントローラ20から受信したトレースデータDT2を格納する。作業員などによりコントローラ20の動作が再開した場合には、再びS1又はS3の処理から実行される。
トレースデータ取得システム1によれば、複数のコントローラ20の各々の制御により、対象物に対して順番に加工が行われる場合に、アラーム発生などの特定の条件を満たしたコントローラ20だけでなく、他のコントローラ20(特定の条件を満たしていないコントローラ20)についてもトレースデータDT2の取得を要求することで、コントローラ20の状態を解析するために有益なデータを取得することができる。これにより、作業員などの解析者による解析作業を支援したり、AIなどに解析させたりすることができ、解析の精度を高めることができる。例えば、あるコントローラ20が特定の条件を満たした場合に、当該コントローラ20の状態が原因のこともあるし、他のコントローラ20の状態が原因のこともある。この点、他のコントローラ20についてもトレースデータDT2を取得することで、何れの場合であったとしても原因の解析をすることができる。また例えば、コントローラ20が特定の条件を満たしたときに自動的にトレースデータDT2を取得するようにした場合、他のコントローラ20については特定の条件を満たしておらず、自動的にトレースデータDT2を取得することはできないが、要求部101にトレースデータDT2の取得を要求させることで、他のコントローラ20についても確実にトレースデータDT2を取得することができる。また、データ収集装置10が常にトレースデータDT2を収集する場合には、メモリ使用量が増大してしまうが、特定の条件が満たされた場合のトレースデータDT2を取得することで、メモリ使用量を抑えることができる。
また、データ収集装置10に、アラームが発生したコントローラ20のトレースデータDT2と、他のコントローラ20のトレースデータDT2と、を取得させることにより、データ収集装置10でトレースデータDT2を一括して管理することができる。
また、アラームの発生が特定の条件として利用される場合に、アラームが発生したコントローラ20だけでなく、他のコントローラ20(アラームが発生していないコントローラ20)についてもトレースデータDT2を取得することで、コントローラ20の状態を解析するために有益なデータを取得することができる。これにより、作業員などの解析者による解析作業を支援したり、AIなどに解析させたりすることができ、アラーム発生の解析精度を高めることができる。例えば、あるコントローラ20にアラームが発生した場合に、当該コントローラ20の状態が原因のこともあるし、他のコントローラ20の状態が原因のこともある。この点、他のコントローラ20についてもトレースデータDT2を取得することで、何れの場合であったとしてもアラーム発生の原因を解析することができる。また例えば、コントローラ20にアラームが発生したときに自動的にトレースデータDT2を取得するようにした場合、他のコントローラ20についてはアラームが発生しておらず、自動的にトレースデータDT2を取得することはできないが、要求部101にトレースデータDT2の取得を要求させることで、他のコントローラ20についても確実にトレースデータDT2を取得することができる。また、データ収集装置10が常にトレースデータDT2を収集する場合には、メモリ使用量が増大してしまうが、アラームが発生した場合のトレースデータDT2を取得することで、メモリ使用量を抑えることができる。
また、アラーム情報に関連付けてトレースデータDT2を記録することで、アラーム発生の原因解析を効果的に支援することができる。例えば、アラームの種類ごとにトレースデータDT2を解析者に解析させることで、解析者は原因の分析作業をしやすくなる。また例えば、アラームの種類ごとに機械学習の教師データを作成することで、精度の高い学習器を作成することができ、AIによる解析の精度を向上させることができる。
また、アラームが発生したコントローラ20のトレースデータDT2と、他のコントローラ20のトレースデータDT2と、をデータ収集装置10に取得させることで、データ収集装置10でトレースデータDT2を一括して管理させ、データの管理を容易にすることができる。
また、トレースデータDT2の取得を要求する構成をデータ収集装置10に持たせることで、個々のコントローラ20がトレースデータDT2の取得を要求する処理を実行せずに済み、コントローラ20の処理負荷を軽減することができる。
また、データ収集装置10で各コントローラ20のアラーム発生を判定するのではなく、個々のコントローラ20にアラーム発生の判定処理を分散させることで、アラームが発生したことをより迅速に検知し、トレースデータDT2をより迅速に取得することができる。迅速にトレースデータDT2を取得することで、アラームの発生時点により近いトレースデータDT2を取得することができ、より有益なデータを取得することができる。また、データ収集装置10が存在する場合に、上記構成を個々のコントローラ20に分散させることで、データ収集装置10の処理負荷を軽減することもできる。
また、アラームが発生したコントローラ20だけでなく、他の全てのコントローラ20についてもトレースデータDT2を取得することで、トレースデータDT2を網羅的に取得し、コントローラ20の状態を解析するために有益なデータを取得することができる。例えば、あるコントローラ20が条件を満たした場合に、その原因がどのコントローラ20にあったとしても、トレースデータDT2を網羅的に取得することで、原因の解析をすることができる。
また、複数のコントローラ20の各々が少なくとも1つのモータ制御装置30を制御する場合に、個々のコントローラ20のトレースデータDT2だけでなく、個々のコントローラ20が制御するモータ制御装置30のトレースデータDT2も取得することで、コントローラ20の状態を解析するために有益なデータを取得することができる。例えば、あるコントローラ20でアラームが発生したときの原因が、制御対象の何れかのモータ制御装置30が原因のことがある。この点、制御対象のモータ制御装置30についてトレースデータDT2を取得することで、原因の解析をすることができる。
また、個々のコントローラ20にトレース条件データDT1を予め記憶させておき、トレース条件データDT1に基づいてトレースデータDT2を生成することで、個々のコントローラ20にあったトレースデータDT2を生成することができる。
また、個々のコントローラ20は、過去の全ての期間における計測結果を自身の記憶部22に記録しておくのではなく、リングバッファを利用して、直近の期間の計測結果を記録しておくことで、メモリ消費量を抑えることができる。
また、トレースデータDT2に時刻情報を含めておくことで、ユーザは、トレースデータDT2を参照するだけで、どの時点のトレースデータDT2なのかを特定することができ、ユーザによる解析を効果的に支援することができる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
図6は、変形例の機能ブロック図である。図6に示すように、以降説明する変形例では、データ収集装置10において記録部103と提供部104が実現される。これらは、CPU11を主として実現される。
(1)例えば、実施形態では、アラームが発生したコントローラ20と同じネットワークの全てのコントローラ20のトレースデータDT2が取得される場合を説明したが、アラームの発生原因となるのは、アラームが発生したコントローラ20と、その前後の工程を担当するコントローラ20と、が関係していることが多い。
例えば、5台のコントローラ20の各々の制御により、対象物に対して5つの工程の加工が順番に行われたとする。この場合に、3台目のコントローラ20(3番目の工程を担当するコントローラ20)でアラームが発生したとすると、その原因は、直近の2台目又は4台目のコントローラ(直近の2番目又は4番目の工程を担当するコントローラ20)が関係していることがあり、1台目又は5台目のコントローラ(1番目又は5番目の工程を担当するコントローラ20)が関係していることは少ない。このため、5台全てのトレースデータDT2を取得するのではなく、2台目〜4台目の3台のみトレースデータDT2を取得してもよい。
本変形例の要求部101は、複数のコントローラ20のうち、アラームが発生したコントローラ20の前工程を担当するコントローラ20と、条件を満たしたコントローラ20の後工程を担当するコントローラ20と、の少なくとも一方に、トレースデータDT2の取得を要求する。ここでは、要求部101は、前工程を担当するコントローラ20と、後工程を担当するコントローラ20と、の両方にトレースデータDT2の取得を要求する場合を説明するが、何れか一方のみにトレースデータDT2の取得を要求してもよい。
例えば、データ記憶部100に、各工程を担当するコントローラ20のコントローラIDが格納されており、要求部101は、アラーム発生通知に含まれるコントローラIDに基づいて、前後の工程を担当するコントローラ20を特定する。要求部101は、アラームが発生していないコントローラ20のうち、当該特定したコントローラ20にトレースデータDT2の取得を要求し、それ以外のコントローラ20にはトレースデータDT2の取得を要求しない。
取得部102は、アラームが発生したコントローラ20のトレースデータDT2と、前工程を担当するコントローラ20のトレースデータDT2及び後工程を担当するコントローラ20のトレースデータDT2の少なくとも一方と、を取得する。各コントローラ20が要求部101からの要求に応じてトレースデータDT2を送信する点については、実施形態で説明した通りである。本変形例では、前工程を担当するコントローラ20と、後工程を担当するコントローラ20と、の両方にトレースデータDT2の取得が要求されるので、取得部102は、これらの両方からトレースデータDT2を取得し、アラーム履歴データベースDB2に格納する。
変形例(1)によれば、あるコントローラ20でアラームが発生した場合に、その原因は、前工程及び後工程の少なくとも一方で発生していることが多いので、これら少なくとも一方のトレースデータDT2を取得することで、解析に有用なデータを取得することができる。また、実施形態で説明したように、全てのトレースデータDT2を網羅的に取得する場合に比べて、特に重要度の高いデータに絞って取得するので、トレースデータ取得システム1全体の処理負荷及び通信負荷を軽減し、メモリ消費量を抑制することもできる。
(2)また例えば、トレースデータ取得システム1では、ある対象物に対する加工が終了すると、次の対象物に対する加工が開始され、複数の対象物の各々に対して次々と加工が行われる。この場合、各対象物に関連付けて、どのような状態で加工が行われたかを示す加工情報を記録しておき、出荷後などにおいて追跡可能にすることでトレーサビリティを高めるようにしてもよい。
本変形例のデータ記憶部100は、加工情報データベースDB3を記憶する。図7は、加工情報データベースDB3のデータ格納例を示す図である。図7に示すように、加工情報データベースDB3には、対象物を一意に識別する対象物IDと加工情報とが格納される。なお、対象物IDは、対象物の識別情報の一例であり、当該識別情報としては、シリアル番号又は個体識別情報と呼ばれる情報であってもよい。
加工情報は、対象物が加工されたときの加工状況を示す。対象物は、複数の工程により加工が行われるので、加工情報は、個々の工程を示す情報ということもできる。例えば、加工情報には、対象物に対する加工の開始時点及び終了時点、又は、加工をしたコントローラ20及びモータ制御装置30の情報といった情報が格納される。他にも例えば、加工情報は、加工をしたコントローラ20及びモータ制御装置30の各々の部品やモータのシリアル番号などの情報が含まれていてもよいし、トルクセンサなどの検出信号の波形が示されていてもよい。他にも例えば、対象物が加工される様子をカメラで撮影する場合には、加工情報として、当該カメラで撮影された静止画又は動画が含まれていてもよい。
本変形例では、記録部103が実現される。記録部103は、対象物IDに関連付けて、複数のコントローラ20の各々により行われた加工に関する加工情報を記録する。例えば、各コントローラ20は、対象物に対する加工が完了するたびに、当該対象物の加工情報を生成してデータ収集装置10に送信する。データ収集装置10は、各コントローラ20から加工情報を受信すると、対象物IDに関連付けて加工情報データベースDB3に格納する。加工情報データベースDB3に格納された加工情報は、データ収集装置10の表示部15等に表示させることができる。例えば、ユーザが対象物IDを指定すると、当該対象物IDに関連付けられた加工情報が表示される。
変形例(2)によれば、対象物IDに関連付けて、個々のコントローラ20の加工情報を記録しておくことで、対象物が加工されたときの状態を特定することができる。例えば、対象物が出荷された後などであっても、対象物がどのような条件で加工されたかを特定することができる。
(3)また例えば、変形例(2)で記録された加工情報は、アラームが発生した原因を分析するための学習器の学習で使用されるなどの用途で使用されてもよいし、アラームが発生した原因を解析させるための情報として提供されてよい。
本変形例では、提供部104が実現される。提供部104は、コントローラ20でアラームが発生した場合に加工された対象物の対象物IDに関連付けられた加工情報を提供する。アラームが発生した場合に加工された対象物とは、アラームが発生したときに加工対象となっていた対象物である。加工情報が示す開始時点から終了時点までの間にアラームの発生時点が含まれる対象物は、アラームが発生した場合に加工された対象物である。
加工情報は、任意の相手に提供可能であり、例えば、データ収集装置10を使用するユーザに提供されてもよいし、加工情報へのアクセスが許可されたユーザに提供されてもよい。例えば、ユーザが対象物IDを指定すると、提供部104は、加工情報データベースDB3を参照し、当該指定された対象物IDに関連付けられた加工情報を取得し、当該ユーザに提供する。なお、提供とは、加工情報の閲覧又はアクセスを許可することであり、提供部104は、ユーザの端末に対し、加工情報を送信する。加工情報は、ユーザの端末で表示されたり、ユーザの端末のメモリに記録されたりする。
変形例(3)によれば、コントローラ20にアラームが発生した場合の加工情報を提供することで、コントローラ20の状態を解析するために有益な情報を提供することができる。
(4)また例えば、上記変形例を組み合わせてもよい。
また例えば、実施形態では、コントローラ20のリングバッファにセンサの検出結果が格納される場合を説明したが、特にリングバッファではなく、メモリサイズが可変の記憶領域に検出結果が格納されてもよい。また例えば、コントローラ20のトレースデータについて説明したが、トレースデータ取得システム1は、ロボットコントローラなどの任意のトレースデータを収集可能である。
また例えば、上位装置であるデータ収集装置10が特に存在しなくてもよい。この場合、コントローラ20が主体となって、トレースデータDT2の収集が行われるようにしてもよい。例えば、要求部101は、コントローラ20で実現されてもよい。この場合、アラームが発生したコントローラ20の要求部101は、ブロードキャストでトレースデータDT2の取得を要求する。他にも例えば、コントローラ20のデータ記憶部200に、他のコントローラ20のIPアドレスを記憶させておき、アラームが発生したコントローラ20の要求部101は、他のコントローラのIPアドレスに基づいて、トレースデータDT2の取得を要求する。
また例えば、取得部102は、コントローラ20で実現されてもよい。この場合、アラームが発生したコントローラ20の要求部101の要求に応じて他のコントローラ20が送信したトレースデータDT2を、アラームが発生したコントローラ20の取得部102が取得することになる。当該コントローラ20は、自身でトレースデータDT2を記憶しておいてもよいし、任意のタイミングでデータ収集装置10に送信してもよい。他にも例えば、取得部102は、データ収集装置10及びコントローラ20以外のコンピュータ(例えば、サーバコンピュータ)により実現され、トレースデータ取得システム1で要求部101と判定部201だけが実現されてもよい。また例えば、判定部201は、データ収集装置10で実現されてもよい。この場合、コントローラ20は、自身の動作状況をデータ収集装置10に送信し、データ収集装置10の判定部201は、各コントローラ20から受信した動作状況に基づいて、アラームが発生したか否かを判定すればよい。
また、以上説明した実施形態は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成やデータ格納例そのものに限定するものではない。当業者はこれら開示された実施形態に種々の変形、例えば、物理的構成の形状や数、データ構造、処理の実行順を変更したりしてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
1 トレースデータ取得システム、10 データ収集装置、11,21 CPU、12,22 記憶部、13,23 通信部、14 操作部、15 表示部、20 コントローラ、30 モータ制御装置、100 データ記憶部、101 要求部、102 取得部、103 記録部、104 提供部、200 データ記憶部、201 判定部、202 生成部、203 送信部、DB1 トレース条件データベース、DB2 アラーム履歴データベース、DB3 加工情報データベース、DT1 トレース条件データ、DT2 トレースデータ。

Claims (19)

  1. 対象物に対して順番に加工を行う複数の産業機器と、
    前記産業機器が特定の条件を満たしたか否かを判定する判定部と、
    前記産業機器が前記条件を満たしたと判定された場合に、前記条件を満たしていない他の産業機器が異なる種類だったとしても、当該他の産業機器にトレースデータの取得を要求する要求部と、
    を有し、
    前記他の産業機器は、前記産業機器が前記条件を満たす前から、前記トレースデータに係る計測を行って計測結果を記憶部に記録し、前記要求部による要求を受信した場合に、前記産業機器が前記条件を満たす前の計測結果を含む前記トレースデータを送信
    前記トレースデータは、過去に前記他の産業機器が前記条件を満たした場合の前記計測結果を含まない、
    トレースデータ取得システム。
  2. 前記要求部は、前記条件を満たしていない他の産業機器のうち、前記条件を満たしたと判定された産業機器の直近の工程を担当しない他の産業機器にはトレースデータの取得は要求せず、前記条件を満たしたと判定された産業機器の直近の工程を担当する他の産業機器にトレースデータの取得を要求する、
    請求項1に記載のトレースデータ取得システム。
  3. 前記トレースデータ取得システムにおける負荷に応じたタイミング、又は、前記トレースデータ取得システムにおいて同期タスクが処理されていないタイミングで、前記他の産業機器が収集したトレースデータを取得する取得部を有する、
    請求項1又は2に記載のトレースデータ取得システム。
  4. 前記条件を満たした産業機器のトレースデータと、前記他の産業機器が収集したトレースデータと、を取得する取得部を有する、
    請求項1〜3の何れかに記載のトレースデータ取得システム。
  5. 前記条件は、前記産業機器にアラームが発生することであり、
    前記要求部は、前記産業機器で前記アラームが発生したと判定された場合に、前記他の産業機器にトレースデータの取得を要求する、
    請求項1〜4の何れかに記載のトレースデータ取得システム。
  6. 前記条件を満たした産業機器のトレースデータと、前記他の産業機器が収集したトレースデータと、を取得し、前記発生したアラームに関するアラーム情報に関連付けて、前記取得したトレースデータを記憶部に記録する取得部を有する、
    請求項5に記載のトレースデータ取得システム。
  7. 前記トレースデータ取得システムは、前記複数の産業機器を管理する上位装置を更に有し、
    前記複数の産業機器の各々は、前記上位装置に自身のトレースデータを送信する送信部を有する、
    請求項1〜6の何れかに記載のトレースデータ取得システム。
  8. 前記要求部は、前記上位装置により実現され、
    前記上位装置の前記要求部は、前記条件を満たした産業機器と、前記他の産業機器と、の各々に、トレースデータの取得を要求する、
    請求項7に記載のトレースデータ取得システム。
  9. 前記判定部は、前記複数の産業機器の各々により実現され、
    前記複数の産業機器の各々の前記判定部は、自身が前記条件を満たしたか否かを判定する、
    請求項1〜8の何れかに記載のトレースデータ取得システム。
  10. 前記要求部は、前記複数の産業機器のうち、他の全ての産業機器にトレースデータの取得を要求する、
    請求項1〜9の何れかに記載のトレースデータ取得システム。
  11. 前記要求部は、前記複数の産業機器のうち、前記条件を満たした産業機器の前工程を担当する産業機器と、前記条件を満たした産業機器の後工程を担当する産業機器と、の少なくとも一方に、トレースデータの取得を要求する、
    請求項1〜10の何れかに記載のトレースデータ取得システム。
  12. 前記複数の産業機器の各々は、少なくとも1つの機器を制御し、
    前記要求部は、前記他の産業機器が制御する機器のトレースデータの取得を要求する、
    請求項1〜11の何れかに記載のトレースデータ取得システム。
  13. 前記複数の産業機器の各々は、
    予めトレース条件データを記憶する記憶部と、
    前記トレース条件データに基づいてトレースデータを生成する生成部と、
    を有する請求項1〜12の何れかに記載のトレースデータ取得システム。
  14. 前記複数の産業機器の各々は、直近の期間における計測結果を記憶部に記録し、当該期間よりも前の計測結果は前記記憶部から消去し、前記要求部からの要求を受信した場合に、前記記憶部に記録された計測結果に基づいて、トレースデータを生成する生成部を有する、
    請求項1〜13の何れかに記載のトレースデータ取得システム。
  15. 前記トレースデータ取得システムは、前記対象物の識別情報に関連付けて、前記複数の産業機器の各々により行われた加工に関する加工情報を記録する記録部を有する、
    請求項1〜14の何れかに記載のトレースデータ取得システム。
  16. 前記トレースデータ取得システムは、前記産業機器が前記条件を満たした場合に加工された対象物の識別情報に関連付けられた加工情報を提供する提供部を有する、
    請求項15に記載のトレースデータ取得システム。
  17. 前記トレースデータは、時刻情報を含む、
    請求項1〜16の何れかに記載のトレースデータ取得システム。
  18. 対象物に対して順番に加工を行う複数の産業機器の少なくとも1つが特定の条件を満たしたか否かを判定し、
    前記産業機器が前記条件を満たしたと判定された場合に、前記条件を満たしていない他の産業機器が異なる種類だったとしても、当該他の産業機器にトレースデータの取得を要求し、
    前記他の産業機器は、前記産業機器が前記条件を満たす前から、前記トレースデータに係る計測を行って計測結果を記憶部に記録し、前記トレースデータの取得の要求を受信した場合に、前記産業機器が前記条件を満たす前の計測結果を含む前記トレースデータを送信
    前記トレースデータは、過去に前記他の産業機器が前記条件を満たした場合の前記計測結果を含まない、
    トレースデータ取得方法。
  19. 対象物に対して順番に加工を行う複数の産業機器の少なくとも1つが特定の条件を満たした場合に、前記条件を満たしていない他の産業機器が当該少なくとも1つとは異なる種類だったとしても、当該他の産業機器に、
    トレースデータの取得の要求を受信させ、
    前記産業機器が前記条件を満たす前から、前記トレースデータに係る計測を行わせて計測結果を記憶部に記録させ、
    前記要求を受信した場合に、前記産業機器が前記条件を満たす前の計測結果を含む前記トレースデータを送信させる、
    ためのプログラムであって、
    前記トレースデータは、過去に前記他の産業機器が前記条件を満たした場合の前記計測結果を含まない、
    プログラム
JP2019015794A 2019-01-31 2019-01-31 トレースデータ取得システム、トレースデータ取得方法、及びプログラム Active JP6956347B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019015794A JP6956347B2 (ja) 2019-01-31 2019-01-31 トレースデータ取得システム、トレースデータ取得方法、及びプログラム
CN202010021845.4A CN111506483A (zh) 2019-01-31 2020-01-09 跟踪数据获取***、跟踪数据获取方法和程序
US16/752,730 US11422915B2 (en) 2019-01-31 2020-01-27 Trace data acquisition system, trace data acquisition method, and information storage medium
EP20154673.6A EP3690583B1 (en) 2019-01-31 2020-01-30 Trace data acquisition system, trace data acquisition method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019015794A JP6956347B2 (ja) 2019-01-31 2019-01-31 トレースデータ取得システム、トレースデータ取得方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2020123230A JP2020123230A (ja) 2020-08-13
JP6956347B2 true JP6956347B2 (ja) 2021-11-02

Family

ID=69411361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019015794A Active JP6956347B2 (ja) 2019-01-31 2019-01-31 トレースデータ取得システム、トレースデータ取得方法、及びプログラム

Country Status (4)

Country Link
US (1) US11422915B2 (ja)
EP (1) EP3690583B1 (ja)
JP (1) JP6956347B2 (ja)
CN (1) CN111506483A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6973427B2 (ja) * 2019-02-15 2021-11-24 株式会社安川電機 通信システム、通信方法、及びプログラム
JP2022069917A (ja) * 2020-10-26 2022-05-12 オムロン株式会社 上位管理装置、生産制御システム、上位管理方法および上位管理プログラム
JP7215509B2 (ja) * 2021-02-26 2023-01-31 株式会社安川電機 産業機器のデータ収集システム、産業機器のデータ収集方法、及びプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4234309B2 (ja) * 2000-07-25 2009-03-04 中外炉工業株式会社 燃焼状態の診断方法
US7284153B2 (en) * 2003-11-17 2007-10-16 International Business Machines Corporation Apparatus, method, and system for logging diagnostic information
JP2006031588A (ja) * 2004-07-21 2006-02-02 Denso Corp データ管理装置
JP2007034547A (ja) * 2005-07-26 2007-02-08 Yaskawa Electric Corp モーションシステムおよびそのトレースデータ設定方法
US8560672B2 (en) * 2006-05-25 2013-10-15 Qualcomm Incorporated Methods and apparatus for bandwidth efficient transmission of usage information from a pool of terminals in a data network
US20080114474A1 (en) 2006-11-10 2008-05-15 Rockwell Automation Technologies, Inc. Event triggered data capture via embedded historians
JP5423961B2 (ja) * 2009-09-28 2014-02-19 横河電機株式会社 波形記録装置
BR112014000727B1 (pt) * 2011-07-11 2021-01-12 Valmet Automation Oy método, sistema e memória legível por computador para monitoramento de um processo industrial
CN104272431B (zh) 2012-07-03 2017-03-08 东京毅力科创株式会社 制造设备的监视装置以及监视方法
EP3073632B1 (en) 2013-11-05 2020-09-30 Kabushiki Kaisha Yaskawa Denki Trace-data recording system, trace-data recording server, trace-data recording method, program, and information storage medium
JP6428005B2 (ja) * 2014-07-10 2018-11-28 富士通株式会社 情報処理装置,情報処理方法及び情報処理プログラム
JP6309919B2 (ja) * 2015-06-23 2018-04-11 ファナック株式会社 データ取得機能を有する数値制御装置
KR20180054364A (ko) * 2016-11-15 2018-05-24 삼성전자주식회사 트레이스 데이터를 생성하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법
JP6546209B2 (ja) * 2017-02-06 2019-07-17 ファナック株式会社 監視装置及び監視システム
DE102018003324A1 (de) 2017-04-27 2018-10-31 Yokogawa Electric Corporation Datensammelvorrichtung, Datensammelsystem, Datenserver, Datensammelverfahren und nicht-flüchtiges computerlesbares Speichermedium
US10078955B1 (en) 2017-06-15 2018-09-18 Simmonds Precision Products Event-based data collection for smart sensors on a master/slave bus

Also Published As

Publication number Publication date
EP3690583A1 (en) 2020-08-05
US11422915B2 (en) 2022-08-23
EP3690583B1 (en) 2022-08-31
JP2020123230A (ja) 2020-08-13
US20200250069A1 (en) 2020-08-06
CN111506483A (zh) 2020-08-07

Similar Documents

Publication Publication Date Title
JP6205757B2 (ja) 制御システム、制御装置、画像処理装置、および、制御方法
JP6956347B2 (ja) トレースデータ取得システム、トレースデータ取得方法、及びプログラム
US20180343385A1 (en) Image capturing apparatus, system, and method
JP2019109580A (ja) 産業用制御システムとその支援装置、制御支援方法およびプログラム
EP3376320A1 (en) Control device
US11448700B2 (en) Operation data collection system, operation data collection method, and information storage medium
EP3407598B1 (en) Image capturing apparatus, system, and method
US20220317650A1 (en) Analysis apparatus, control method thereof, and analysis system
US11640150B2 (en) Communication system, communication method, and information storage medium
JP2019159868A (ja) 制御システム、制御装置および表示装置
CN113330382B (zh) 控制装置、记录介质以及控制***
US10691106B2 (en) Numerical controller
US20220276630A1 (en) Data collection system for industrial machine, data collection method for industrial machine, and information storage medium
US11698632B2 (en) Production system, data transmission method, and information storage medium
CN109765840A (zh) 高档数控机床换刀预测***
EP4212973A1 (en) Method and system for quality inspection
US20230229137A1 (en) Analysis device, analysis method and non-transitory computer-readable storage medium
WO2022162957A1 (ja) 情報処理装置、制御システムおよびレポート出力方法
CN116894544A (zh) 数据收集装置、记录介质以及方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200818

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210209

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210805

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210805

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210816

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210817

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210913

R150 Certificate of patent or registration of utility model

Ref document number: 6956347

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150