JP2020135183A - 通信システム、通信方法、及びプログラム - Google Patents

通信システム、通信方法、及びプログラム Download PDF

Info

Publication number
JP2020135183A
JP2020135183A JP2019025387A JP2019025387A JP2020135183A JP 2020135183 A JP2020135183 A JP 2020135183A JP 2019025387 A JP2019025387 A JP 2019025387A JP 2019025387 A JP2019025387 A JP 2019025387A JP 2020135183 A JP2020135183 A JP 2020135183A
Authority
JP
Japan
Prior art keywords
controller
time information
unit
industrial
data
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.)
Granted
Application number
JP2019025387A
Other languages
English (en)
Other versions
JP6973427B2 (ja
Inventor
純香 橋本
Ayaka Hashimoto
純香 橋本
宏隆 新見
Hirotaka Niimi
宏隆 新見
俊信 吉良
Toshinobu KIRA
俊信 吉良
航 野▲崎▼
Wataru Nozaki
航 野▲崎▼
正臣 工藤
Masaomi Kudo
正臣 工藤
優 上遠野
Yu KATONO
優 上遠野
岡本 弘
Hiroshi Okamoto
弘 岡本
長田 武
Takeshi Osada
武 長田
隆章 正垣
Takaaki Masagaki
隆章 正垣
恵 安田
Megumi Yasuda
恵 安田
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 JP2019025387A priority Critical patent/JP6973427B2/ja
Priority to CN202010070504.6A priority patent/CN111586087B/zh
Priority to EP20157150.2A priority patent/EP3696626B1/en
Priority to US16/789,427 priority patent/US11640150B2/en
Publication of JP2020135183A publication Critical patent/JP2020135183A/ja
Application granted granted Critical
Publication of JP6973427B2 publication Critical patent/JP6973427B2/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
    • 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/0426Programming the control sequence
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • 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/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] or computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C3/00Registering or indicating the condition or the working of machines or other apparatus, other than vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • 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/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2231Master slave
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25046Real time clock to sample I-O states and store them in memory
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25126Synchronize communication based on internal clock of microprocessor
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25472Synchronise controllers, sensors, measurement with data bus
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35001Data input, data handling, programming, monitoring of nc
    • 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/37Measurements
    • G05B2219/37532Synchronized data acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Manufacturing & Machinery (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Control Of Electric Motors In General (AREA)
  • Programmable Controllers (AREA)
  • Numerical Control (AREA)

Abstract

【課題】第1の産業機器に、第2の産業機器の状態データが取得された時間を正確に把握させる。【解決手段】通信システム(1)は、第1の産業機器(20)と第2の産業機器(30)とが通信し、第1の産業機器(20)が更新する第1の時間情報と、第2の産業機器(30)が更新する第2の時間情報と、を同期させる同期部を有する。第2の産業機器(30)は、第2の産業機器(30)の状態データを取得する取得部(303)と、第1の産業機器(20)に対し、状態データが取得された場合の第2の時間情報と、状態データと、を送信する送信部(304)と、を有する。【選択図】図3

Description

本発明は、通信システム、通信方法、及びプログラムに関する。
特許文献1には、コントローラと、当該コントローラの指示に応じて動作するモータ制御装置と、を有するシステムにおいて、モータ制御装置が、コントローラに対し、状態データの一例であるトレースデータを送信するシステムが記載されている。
国際公開第2015−068210号公報
本発明が解決しようとする課題は、例えば、第1の産業機器に、第2の産業機器の状態データが取得された時間を正確に把握させることである。
本発明の一側面に係る通信システムは、第1の産業機器と第2の産業機器とが通信する通信システムであって、前記第1の産業機器が更新する第1の時間情報と、前記第2の産業機器が更新する第2の時間情報と、を同期させる同期部を有し、前記第2の産業機器は、前記第2の産業機器の状態データを取得する取得部と、前記第1の産業機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信する送信部と、を有する。
本発明の一側面に係る通信方法は、第1の産業機器と第2の産業機器との間の通信方法であって、前記第1の産業機器が更新する第1の時間情報と、前記第2の産業機器が更新する第2の時間情報と、を同期させ、前記第2の産業機器に状態データを取得させ、前記第1の産業機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信させる。
本発明の一側面に係るプログラムは、第1の産業機器が更新する第1の時間情報と、第2の産業機器が更新する第2の時間情報と、が同期される場合に、前記第2の産業機器を、前記第2の産業機器の状態データを取得する取得部、前記第1の産業機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信する送信部、として機能させる。
本発明の一側面によれば、前記第1の産業機器は、前記第2の産業機器に対し、前記状態データの読出要求をする読出要求部を有し、前記送信部は、前記第1の産業機器から前記読出要求を受信した場合に、前記第2の時間情報と前記状態データとを送信する。
本発明の一側面によれば、前記同期部は、同期通信を利用して、前記第1の時間情報と、前記第2の時間情報と、を同期させ、前記第1の産業機器は、非同期通信を利用して、前記第2の産業機器に対し、前記状態データの取得開始要求をする取得開始要求部を有し、前記取得部は、前記第1の産業機器から前記非同期通信を利用して前記取得開始要求を受信した場合に、前記状態データを取得する。
本発明の一側面によれば、前記第2の産業機器は、所定のトリガ条件が満たされたか否かを判定する判定部を有し、前記取得部は、前記トリガ条件が満たされた場合に、前記状態データを取得する。
本発明の一側面によれば、前記第2の産業機器は、所定期限までに前記トリガ条件が満たされなかった場合に、前記状態データの取得を制限する制限部を有する。
本発明の一側面によれば、前記同期部は、前記第1の産業機器により実現され、前記同期部は、前記第2の産業機器に対し、前記第1の時間情報を含む同期要求を送信し、前記第2の産業機器は、前記同期要求に含まれる前記第1の時間情報に基づいて、前記第2の時間情報を更新する更新部を有する。
本発明の一側面によれば、前記第1の産業機器は、前記第2の産業機器に対し、前記状態データの取得条件を設定する設定部を有し、前記取得部は、前記取得条件に基づいて、前記状態データを取得する。
本発明の一側面によれば、前記第1の産業機器は、前記第1の時間情報とは別の時間情報を更新し、前記第1の産業機器は、前記第2の産業機器から受信した前記第2の時間情報を前記別の時間情報に変換し、前記第2の産業機器から受信した前記状態データに関連付けて記憶部に記録する記録部を有する。
本発明の一側面によれば、前記第1の産業機器は、マスタ機器であり、前記第2の産業機器は、前記マスタ機器からの指令に基づいて動作するスレーブ機器であり、前記取得部は、前記スレーブ機器の前記状態データを取得し、前記送信部は、前記マスタ機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信する。
本発明の一側面によれば、前記通信システムは、前記指令が送信された場合の前記第1の時間情報と、前記第2の産業機器から受信した前記第2の時間情報と、に基づいて、前記指令と前記状態データとを比較して表示させる表示制御部を有する。
本発明の一側面によれば、前記取得部は、前記状態データとして、前記第2の産業機器の時系列的な状態変化が示されたトレースデータを取得し、前記送信部は、前記第1の産業機器に対し、前記トレースデータが取得された場合の前記第2の時間情報と、前記トレースデータと、を送信する。
上記発明によれば、例えば、第1の産業機器に、第2の産業機器の状態データが取得された時間を正確に把握させることができる。
実施形態に係る通信システムの全体構成の一例を示す図である。 グローバルタイマの同期が取られる様子を示す図である。 通信システムで実現される機能を示す機能ブロック図である。 タイマデータのデータ格納例を示す図である。 ロギングファイルのデータ格納例を示す図である。 データ収集装置に表示される解析画面の一例を示す図である。 通信システムで実行される処理を示すフロー図である。 変形例における通信システムの全体構成を示す図である。
[1.通信システムの全体構成]
本発明の発明者の見地によれば、第1の産業機器と第2の産業機器とが通信する通信システムにおいて、第2の産業機器の故障予知や故障診断などをするために、第1の産業機器に、第2の産業機器の状態データを取得させることがある。しかしながら、従来の技術では、第1の産業機器は、第2の産業機器から状態データを取得しても、それがどの時点の状態を示すのかを特定することができなかった。そこで本発明の発明者は、第1の産業機器に、第2の産業機器の状態データが取得された時間を正確に把握させるために鋭意研究開発を行った結果、新規かつ独創的な通信システム等に想到した。以降、本実施形態に係る通信システム等を詳細に説明する。
図1は、実施形態に係る通信システムの全体構成の一例を示す図である。図1に示すように、通信システム1は、データ収集装置10、コントローラ20、モータ制御装置30、モータ40、センサ50、及びエンコーダ60を含む。なお、ここでは、説明の簡略化のために、これらを1台ずつ示しているが、通信システム1は、これらを複数台含んでいてもよい。例えば、複数のデータ収集装置10が通信システム1に含まれていてもよいし、後述する変形例のように、1台のデータ収集装置10に対し、複数のコントローラ20が接続されていてもよい。
データ収集装置10は、状態データを収集するコンピュータである。状態データとは、機器の状態を示すデータであり、例えば、ある時点における状態を示すデータであってもよいし、時系列的な状態変化を示すトレースデータであってもよい。機器の状態とは、機器の動作を表す情報であり、例えば、センサ50又はエンコーダ60が検出した物理量であってもよいし、コントローラ20又はモータ制御装置30内部の状態(例えば、CPU使用率、メモリ使用率、又は通信負荷など)であってもよい。
本実施形態では、状態データの一例としてトレースデータを説明する。このため、本実施形態でトレースデータと記載した箇所は、状態データと読み替えることができる。例えば、トレースデータには、センサ50又はエンコーダ60により検出された物理量の時系列的な変化が示される。トレースデータは、動作のログ(履歴)を示すのでロギングデータと呼ばれることもある。例えば、トレースデータには、トルク信号、温度情報、フィードバック速度、位置偏差、速度偏差、又は電流偏差などが時系列的に示されている。
例えば、データ収集装置10は、サーバコンピュータ、パーソナルコンピュータ、携帯電話(スマートフォンを含む)、又は携帯端末(タブレット型端末を含む)である。データ収集装置10は、CPU11、記憶部12、通信部13、操作部14、及び表示部15を含む。
CPU11は、少なくとも1つのプロセッサを含む。記憶部12は、RAM、EEPROM、及びハードディスクを含み、各種プログラムやデータを記憶する。CPU11は、これらプログラムやデータに基づいて各種処理を実行する。通信部13は、ネットワークカードや各種通信コネクタ等の通信インタフェースを含み、他の装置との通信を行う。操作部14は、マウスやキーボード等の入力デバイスである。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、CPU11の指示により各種画面を表示する。
コントローラ20は、モータ制御装置30を制御する装置である。本実施形態では、コントローラ20が1台のモータ制御装置30を制御する場合を説明するが、コントローラ20は、複数台のモータ制御装置30を制御してもよい。更に、コントローラ20には、モータ制御装置30だけでなく、センサ類又は入出力機器などが接続されていてもよい。
本実施形態では、コントローラ20は、第1の産業機器の一例である。このため、本実施形態でコントローラ20と記載した箇所は、第1の産業機器と読み替えることができる。産業機器は、人間が行う作業の補助又は代行をする機器及びその周辺機器の総称である。例えば、コントローラ20以外にも、後述するモータ制御装置30も産業機器に相当する。他にも例えば、ロボットコントローラ、産業用ロボット、インバータ、コンバータ、工作機械、又はPLC等は、産業機器に相当する。
例えば、コントローラ20は、CPU21、記憶部22、及び通信部23を含む。CPU21、記憶部22、及び通信部23の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様である。なお、コントローラ20は、モータ制御などの特定用途向けの集積回路(ASIC)を有していてもよい。
モータ制御装置30は、モータ40を制御する装置である。モータ制御装置30は、サーボアンプ又はサーボパック(登録商標)と呼ばれることもある。本実施形態では、モータ制御装置30が1台のモータ40を制御する場合を説明するが、モータ制御装置30は、複数台のモータ40を制御してもよい。更に、モータ制御装置30には、モータ40、センサ50、及びエンコーダ60だけでなく、入出力機器などが接続されていてもよい。
モータ制御装置30は、第2の産業機器の一例である。このため、本実施形態でモータ制御装置30と記載した箇所は、第2の産業機器と読み替えることができる。産業機器の意味は先述した通りであり、第2の産業機器は、第1の産業機器と通信可能に接続される機器である。第1の産業機器は、第2の産業機器からトレースデータを受信する側の機器(トレースデータの送信先の機器)であり、第2の産業機器は、トレースデータを送信する側の機器(トレースデータの送信元の機器)である。第2の作業機器は、トレースデータを生成する機器、又は、動作の解析対象の機器ということもできる。
本実施形態では、第1の産業機器がマスタ機器であり、第2の産業機器は、スレーブ機器である場合を説明するが、後述する変形例のように、第1の産業機器と第2の産業機器は、マスタとスレーブの関係になくてもよい。別の言い方をすれば、第1の作業機器と第2の産業機器との間には、主従関係又は上下関係が存在しなくてもよい。
マスタ機器とは、スレーブ機器を制御する機器であり、スレーブ機器に対して指令を送信する機器である。別の言い方をすれば、マスタ機器は、スレーブ機器から動作状態を取得する機器である。スレーブ機器とは、マスタ機器からの指令に基づいて動作する機器であり、マスタ機器により制御される機器である。別の言い方をすれば、スレーブ機器は、マスタ機器に対して自身の動作状態を送信する機器である。本実施形態では、モータ制御装置30は、コントローラ20からの指令に基づいて動作するので、コントローラ20がマスタ機器に相当し、モータ制御装置30がスレーブ機器に相当する。
例えば、モータ制御装置30は、CPU31、記憶部32、及び通信部33を含む。CPU31、記憶部32、及び通信部33の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様である。なお、モータ制御装置30は、モータ制御などの特定用途向けの集積回路(ASIC)を有していてもよい。モータ制御装置30は、コントローラ20から受信した指令に基づいて、電力線で接続されたモータ40に対する電圧を制御する。モータ40は、回転式であってもよいしリニア式であってもよい。
センサ50は、物理量を検出可能なセンサであればよく、例えば、トルクセンサ、温度センサ、力センサ、又はモーションセンサなどである。エンコーダ60は、モータ40の位置又は速度を検出する機器であり、例えば、光学式又は磁気式のモータエンコーダである。エンコーダ60もセンサの一種である。モータ制御装置30は、センサ50により検出された物理量やエンコーダ60により検出されたフィードバック速度を、任意のタイミングでコントローラ20に送信する。
なお、データ収集装置10、コントローラ20、及びモータ制御装置30の各々に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されるようにしてもよい。また、データ収集装置10、コントローラ20、及びモータ制御装置30の各々のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)が含まれていてもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが読取部又は入出力部を介して供給されるようにしてもよい。
[2.通信システムの概要]
通信システム1では、コントローラ20とモータ制御装置30とが通信する。コントローラ20は、モータ制御装置30に対して指令を送信し、モータ制御装置30は、指令に基づいてモータ40を動作させる。コントローラ20とモータ制御装置30とは、いわゆるフィールドネットワークによって接続され、任意の通信プロトコルを利用して通信が行われる。本実施形態の通信システム1は、同期通信を利用可能であり、コントローラ20は、同期通信を利用して、モータ制御装置30に指令を送信する。
同期通信とは、送信側の機器がデータを送信するタイミングと、受信側の機器がデータを受信するタイミングと、を合わせる通信方式である。同期通信では、データ通信のリクエストが送信されてからレスポンスを受信するまでの間は、原則として他の処理は実行されない。このため、送信側の機器は、受信側の機器にデータを送信した後は、レスポンスを受信するのを待機する。受信側の機器は、送信側の機器からデータを受信すると、すぐに処理を実行し、送信側の機器にレスポンスとして処理結果を返す。送信側の機器は、処理結果を受信すると、次の処理に移行する。同期通信が行われない場合には、非同期通信を利用して通信が行われる。
非同期通信とは、送信側の機器がデータを送信するタイミングと、受信側の機器がデータを受信するタイミングと、を合わせずに通信を行う通信方式である。非同期通信では、データ通信のリクエストが送信されてからレスポンスを受信するまでの間に、他の処理を実行可能である。このため、非同期通信では、送信側の機器は、受信側の機器にデータを送信してからレスポンスを受信するまでの間に、他の処理を実行可能である。また、非同期通信では、受信側の機器は、送信側の機器からデータを受信しても、すぐに処理を実行するとは限らない。受信側の機器は、所定の条件が充足されるまで処理の実行を待機したり、同期通信の処理を優先して実行したりする。
本実施形態では、同期通信を利用して送信される指令を同期タスクと記載し、非同期通信を利用して送信される指令を非同期タスクと記載する。例えば、コントローラ20がモータ制御装置30に同期タスクを送信した場合、コントローラ20は、モータ制御装置30からのレスポンスを受信するまでは、他の処理を実行せずに待機する。モータ制御装置30は、コントローラ20から同期タスクを受信すると、すぐに同期タスクを実行し、コントローラ20に処理結果を送信する。
一方、コントローラ20がモータ制御装置30に非同期タスクを送信した場合、コントローラ20は、モータ制御装置30からのレスポンスを受信しなくても、他の処理を実行可能となる。例えば、コントローラ20は、非同期タスクのレスポンスを受信するまでの間に、別の非同期タスクを送信したり、同期タスクを送信したりすることができる。モータ制御装置30は、コントローラ20から非同期タスクを受信した場合、すぐに非同期タスクを実行するとは限らない。
例えば、非同期タスクを実行するための条件が設定されている場合、モータ制御装置30は、当該条件が充足されるまで、非同期タスクを実行しない。他にも例えば、タスクに優先順位が付けられている場合、モータ制御装置30は、非同期タスクよりも優先順位の高い他のタスクを優先して実行し、非同期タスクの実行を後回しにする。モータ制御装置30は、非同期タスクを実行すると、コントローラ20に処理結果を送信する。
もし仮に、コントローラ20が、同期タスクとして、トレースデータの取得開始をモータ制御装置30に指示したとすると、モータ制御装置30は、すぐにトレースデータの取得を開始し、コントローラ20にトレースデータを送信する。このため、トレースデータの取得開始が同期タスクとして処理されるのであれば、コントローラ20は、受信したトレースデータがどの時点のものなのかを特定することができる。
しかしながら、同期通信は、モータ40の動作に直結する重要なデータの送信で利用されることが多く、トレースデータのために同期通信を利用できないことがある。例えば、トレースデータは、主に故障予知や故障診断に利用され、動作指令等に比べると緊急性及び重要度が低いので、後でゆっくりと取得すればよい。このため、緊急性及び重要度がより高い他のデータのために、同期通信を利用させた方がよいと考えられる。また、トレースデータは、時系列的な情報であり比較的データサイズが大きいので、同期通信を利用してトレースデータを送信しようとすると、ネットワークを占有する時間が長くなってしまう。
そこで、本実施形態では、トレースデータの取得開始を、非同期タスクとして処理するようにしている。この点、非同期タスクは、すぐに実行されるとは限られず、いつ実行されるか分からないので、コントローラ20は、トレースデータを受信しても、それがいつの時点の状態を示すのかを特定することができない。
例えば、モータ制御装置30が、非同期タスクとしてトレースデータの取得開始の指示を受信した場合、当該非同期タスクを実行するための条件がすぐに充足されることもあれば、条件がなかなか充足されないこともある。また、モータ制御装置30は、トレースデータの取得が完了した後に、すぐにトレースデータを送信するとは限らないので、コントローラ20は、トレースデータを受信しても、それがいつの時点の状態を示すのかを特定することができない。
そこで、本実施形態では、コントローラ20とモータ制御装置30との間で時間情報の同期を取らせて、モータ制御装置30に、時間情報とともにトレースデータを送信させることによって、コントローラ20に、モータ制御装置30のトレースデータが取得された時間を正確に把握させるようにしている。
時間情報は、機器が管理する時間を示す数値であり、例えば、タイマ又はカウンタと呼ばれることもある。本実施形態では、コントローラ20とモータ制御装置30との間で時間情報の同期が取られるので、時間情報は、これらの機器の共通の時間を示すことになる。時間情報は、任意のビット数であってよいが、本実施形態では、メモリ消費量を抑えるために数十ビット程度(例えば、16ビット〜64ビット程度)とする。また、時間情報は、整数で示されてもよいし、小数点以下を含む数値で示されてもよい。
時間情報の同期とは、複数の機器間で時間情報を合わせることであり、ある機器の時間情報に他の機器の時間情報を合わせることである。別の言い方をすれば、時間情報の同期は、ある機器の時間情報に基づいて、他の機器の時間情報を上書き、修正、又は更新することである。時間情報の同期では、完全に値を一致させなくてもよく、僅かな誤差が許容されてもよい。
以降、コントローラ20とモータ制御装置30との間で同期が取られる時間情報を、グローバルタイマと記載する。このため、本実施形態でグローバルタイマと記載した箇所は、時間情報と読み替えることができる。
本実施形態では、コントローラ20のグローバルタイマは第1の時間情報の一例であり、モータ制御装置30のグローバルタイマは第2の時間情報の一例である。このため、本実施形態でコントローラ20のグローバルタイマを説明している箇所は、第1の時間情報と読み替えることができ、モータ制御装置30のグローバルタイマを説明している箇所は、第2の時間情報と読み替えることができる。
図2は、グローバルタイマの同期が取られる様子を示す図である。図2の横軸は、時間軸である。本実施形態では、コントローラ20とモータ制御装置30との間で、定周期通信が行われる場合を説明するが、特に周期的な通信が行われなくてもよい。コントローラ20は、記憶部22にグローバルタイマを記憶し、モータ制御装置30は、記憶部32にグローバルタイマを記憶する。
本実施形態では、伝送周期の開始直後に、グローバルタイマの同期を取る同期タスクが実行される場合を説明するが、伝送周期内の任意のタイミングで当該同期タスクが実行されるようにすればよい。例えば、伝送周期の終了間際に当該同期タスクが実行されてもよいし、伝送周期の開始直後又は終了間際以外のタイミングで当該同期タスクが実行されてもよい。また、当該同期タスクは、毎回実行されなくてもよく、例えば、2伝送周期ごと又は5伝送周期ごとに実行されてもよい。
図2の例では、「伝送周期1」において、コントローラ20は、記憶部22のグローバルタイマが示す「100.00」の数値を、モータ制御装置30に送信する。モータ制御装置30は、コントローラ20から当該数値を受信すると、同期タスクとして処理し、記憶部32のグローバルタイマの値を「100.00」に上書きし、レスポンスとして処理結果を送信する。これにより、コントローラ20のグローバルタイマと、モータ制御装置30のグローバルタイマと、を一致させることができる。なお、上記のレスポンスは、送信されなくてもよい。この点は、以降の説明も同様である。
その後、コントローラ20は、記憶部22のグローバルタイマをカウントアップし、モータ制御装置30は、記憶部22のグローバルタイマをカウントアップする。1回のカウントアップあたりのグローバルタイマの増加量は、任意であってよく、本実施形態では「0.01」とするが、「0.02」などの他の単位で増加してもよい。なお、グローバルタイマは、所定ルールのもとで更新すればよく、カウントアップされるのではなく、カウントダウンされてもよい。グローバルタイマの更新は、CPU11又は21により行われてもよいし、ASICにより行われてもよい。
グローバルタイマの更新周期(カウントアップ速度)は、クロック周波数などのハードウェアの性能やその時の動作環境に依存する。コントローラ20とモータ制御装置30は、互いに全く同じ性能や動作環境を有するわけではないため、コントローラ20のグローバルタイマとモータ制御装置30のグローバルタイマとの間には、次第にずれが生じる。このため、「伝送周期1」の冒頭でグローバルタイマの同期を取ったとしても、次の「伝送周期2」が訪れた時点では、例えば、コントローラ20のグローバルタイマが「101.25」を示し、モータ制御装置30のグローバルタイマが「101.19」を示すといったことが起こりうる。
「伝送周期2」が訪れると、「伝送周期1」と同様の同期タスクが実行され、モータ制御装置30のグローバルタイマが、コントローラ20のグローバルタイマの「101.25」に上書きされる。これにより、グローバルタイマがずれたとしても、コントローラ20とモータ制御装置30との間でグローバルタイマを再び同期させることができる。その後、コントローラ20とモータ制御装置30は、各自でグローバルタイマをカウントアップする。
「伝送周期3」が訪れた場合も同様に、コントローラ20は、自身の記憶部22に記憶されたグローバルタイマが示す「102.50」の数値を、モータ制御装置30に送信する。ただし、通信障害等によって同期タスクが正確に実行されず、コントローラ20とモータ制御装置30との間でグローバルタイマの同期を取ることができないことがある。この場合、図2に示すように、モータ制御装置30のグローバルタイマは、例えば、「102.17」となり、グローバルタイマがずれたままとなる。その後、次の「伝送周期4」が訪れるまでは、コントローラ20とモータ制御装置30との間でグローバルタイマを同期させることができず、グローバルタイマのずれが徐々に広がる。
「伝送周期4」が訪れた場合に、通信障害等が解消されて同期タスクが正確に実行されると、コントローラ20とモータ制御装置30との間でグローバルタイマを再び同期させることができる。このため、図2に示すように、「伝送周期3」では同期を取ることができなかったモータ制御装置30のグローバルタイマは、「伝送周期4」でコントローラ20と同じ「103.75」となる。このように、グローバルタイマの同期を取れなかったとしても、次の伝送周期ですぐに同期を取ることができるので、さほどずれが大きくならないようにすることができる。以降の伝送周期も同様にして、グローバルタイマの同期が取られる。
なお、本実施形態では、モータ制御装置30のグローバルタイマを、コントローラ20のグローバルタイマに合わせる場合を説明するが、これとは逆に、コントローラ20のグローバルタイマを、モータ制御装置30のグローバルタイマに合わせてもよい。この場合例えば、コントローラ20は、モータ制御装置30にグローバルタイマを送信させる同期タスクを送信する。コントローラ20は、モータ制御装置30からグローバルタイマを受信し、モータ制御装置30のグローバルタイマに合うように、記憶部22のグローバルタイマを上書きしてもよい。
以上のように、通信システム1は、コントローラ20とモータ制御装置30との間でグローバルタイマの同期が取らせている。本実施形態では、モータ制御装置30は、トレースデータの取得を開始する場合に、その時点のグローバルタイマを保持し、保持したグローバルタイマをトレースデータとともに送信する。これにより、トレースデータの取得開始が非同期タスクとして処理されたとしても、コントローラ20は、トレースデータとともに受信したグローバルタイマにより、どの時点のトレースデータなのかを容易に把握できるようになる。以降、通信システム1の詳細を説明する。
[3.通信システムで実現される機能]
図3は、通信システム1で実現される機能を示す機能ブロック図である。ここでは、データ収集装置10、コントローラ20、及びモータ制御装置30の各々において実現される機能について説明する。
[3−1.コントローラにおいて実現される機能]
図3に示すように、コントローラ20では、データ記憶部200、同期部201、設定部202、取得開始要求部203、読出要求部204、及び記録部205が実現される。データ記憶部200は、記憶部22を主として実現され、同期部201、設定部202、取得開始要求部203、読出要求部204、及び記録部205は、CPU21を主として実現される。
[データ記憶部]
データ記憶部200は、グローバルタイマの同期を取ったりトレースデータを取得したりするために必要なデータを記憶する。例えば、データ記憶部200は、グローバルタイマの現在値が格納されたタイマデータDと、過去に取得されたトレースデータが格納されたロギングファイルFと、を記憶する。
図4は、タイマデータDのデータ格納例を示す図である。本実施形態では、コントローラ20は、グローバルタイマとは別の時間情報を有しており、以降では、この時間情報をコントローラカウンタと記載する。図4に示すように、例えば、タイマデータDには、グローバルタイマの現在値、コントローラカウンタの現在値、及びグローバルタイマとコントローラカウンタの対応関係が格納される。
グローバルタイマの現在値は、コントローラ20がカウントアップ中のグローバルタイマの値である。グローバルタイマの現在値は、グローバルタイマのビット数の最大値までカウントアップされると初期値に戻る。グローバルタイマは、他の機器と同期を取るための時間情報であるのに対し、コントローラカウンタは、コントローラ20が管理する絶対時間であり、原則として外部からの補正が入らない時間情報である。
コントローラカウンタのビット数は、任意のビット数であってよく、グローバルタイマと同じであってもよいし異なってもよい。本実施形態では、コントローラカウンタのビット数は、グローバルタイマよりもビット数が多く、より長い時間を表現可能となっている。例えば、コントローラカウンタは、十分なビット数が確保されており、グローバルタイマが初期値に戻ったとしても、コントローラカウンタは初期値に戻らないようになっている。このため、トレースデータに付随するグローバルタイマをコントローラカウンタに変換することで、コントローラ20の中での絶対時間に変換することができる。グローバルタイマは、人間が目で見て分かる時間(年月日及び時刻)に変換するために利用されてもよい。
コントローラ20は、グローバルタイマだけではなく、グローバルタイマとは別の時間情報であるコントローラカウンタを更新する。本実施形態では、コントローラカウンタがカウントアップされる場合を説明するが、コントローラカウンタは、カウントダウンされることによって更新されてもよい。また、コントローラカウンタの更新周期と、グローバルタイマの更新周期と、は同じであってもよいし異なっていてもよい。また、1回のカウントアップ当たりのコントローラカウンタの増加量とグローバルタイマの増加量とは、同じであってもよいし異なっていてもよい。
グローバルタイマとコントローラカウンタの対応関係は、グローバルタイマをコントローラカウンタに変換するために用いられる。例えば、コントローラ20は、グローバルタイマ及びコントローラをカウントアップすると、その時点でのグローバルタイマ及びコントローラを互いに関連付けてタイマデータDに格納する。これにより、コントローラ20がトレースデータを受信した場合に、一緒に受信したグローバルタイマをコントローラカウンタに変換することができるようになる。即ち、コントローラ20の時間的な物差し(絶対時間)でトレースデータを表示させることができるようになる。なお、グローバルタイマが初期値に戻った場合には、グローバルタイマに関連付けられるコントローラカウンタが上書きされるようにしてよい。
図5は、ロギングファイルFのデータ格納例を示す図である。ロギングファイルFは、トレースデータが格納されたファイルであり、本実施形態では、トレースデータとは異なる名前で呼ぶことにするが、トレースデータとは特に区別しなくてもよい。図5に示すように、ロギングファイルFには、トレースデータに含まれる個々の数値が、当該数値が取得された時間と関連付けられて格納されている。本実施形態では、コントローラカウンタとグローバルタイマが用意されているので、トレースデータに含まれる個々の数値には、コントローラカウンタとグローバルタイマが関連付けられている。
なお、データ記憶部200が記憶するデータは、上記の例に限られない。例えば、データ記憶部200は、後述するトレースデータの取得条件を記憶してもよい。他にも例えば、データ記憶部200は、コントローラ20に接続された機器の構成を示す機器情報を記憶してもよいし、データ収集装置10及びモータ制御装置30のIPアドレスを記憶してもよい。また例えば、データ記憶部200は、モータ制御装置30に対する指令を時系列的に記憶してもよい。例えば、データ記憶部200は、モータ40の動作指令(例えば、位置指令速度)が送信された時点を示すコントローラカウンタ又はグローバルタイマと、当該動作指令の内容と、の関係を時系列的に記憶してもよい。これらの関係は、プログラム又はパラメータに定義されていてもよく、データ記憶部200は、当該プログラム又はパラメータを記憶してもよい。
[同期部]
同期部201は、コントローラ20が更新するグローバルタイマと、モータ制御装置30が更新するグローバルタイマと、を同期させる。本実施形態では、同期部201は、モータ制御装置30に、コントローラ20のグローバルタイマを送信し、モータ制御装置30のグローバルタイマを、コントローラ20のグローバルタイマに合わせる。これとは逆に、同期部201は、モータ制御装置30からグローバルタイマを受信し、コントローラ20のグローバルタイマを、モータ制御装置30のグローバルタイマに合わせてもよい。
本実施形態では、通信システム1が同期通信可能なので、同期部201は、同期通信を利用して、コントローラ20のグローバルタイマと、モータ制御装置30のグローバルタイマと、を同期させる。同期部201は、同期タスクを実行させることにより、これらグローバルタイマを同期させる。本実施形態では、同期タスクは、モータ制御装置30のグローバルタイマを、コントローラ20のグローバルタイマで上書きする指令であるが、同期タスクは、モータ制御装置30のグローバルタイマを送信させる指令であってもよい。この場合、同期部201は、モータ制御装置30から受信したグローバルタイマで、データ記憶部200のグローバルタイマを上書きする。
例えば、同期部201は、モータ制御装置30に対し、コントローラ20のグローバルタイマを含む同期要求を送信する。同期要求は、グローバルタイマを同期させるための要求である。同期要求は、所定形式のデータが送信されることによって行われるようにすればよく、同期要求であることを識別する識別子を含む。本実施形態では、同期要求が同期タスクとして処理されるので、モータ制御装置30は、同期要求を受信してすぐに、後述する更新部301により、データ記憶部300のグローバルタイマを、同期要求に含まれるコントローラ20のグローバルタイマで上書きする。
[設定部]
設定部202は、モータ制御装置30に対し、トレースデータの取得条件を設定する。取得条件は、トレースデータの取得時に参照される条件であり、例えば、トレースデータの取得を開始するトリガ条件、トレース対象となる軸、トレース対象の情報(信号)の種類、サンプリング周期、又はトレース期間などである。
トリガ条件は、任意の条件を設定可能であり、例えば、センサ50又はエンコーダ60により検出される物理量に関する条件であってもよいし、モータ制御装置30の内部状態に関する条件であってもよい。例えば、トリガ条件は、フィードバック速度が所定範囲になること、トルク信号の値が所定範囲になること、トルク信号が立ち上がること、トルク信号が収束すること、トルク波形が基準範囲から外れること、温度が所定範囲になること、又はCPU使用率が所定範囲になることなどである。
トレース対象となる軸は、物理量を計測すべきモータ40の識別情報である。トレース対象の情報の種類は、トレースデータに格納すべき情報の種類であり、例えば、トルク信号、温度情報、フィードバック速度、位置偏差、速度偏差、電流偏差、CPU使用率、メモリ使用率、又は通信負荷といった情報の種類である。サンプリング周期は、数値の計測間隔である。トレースデータには、サンプリング周期ごとに数値が格納される。トレース期間は、トレースデータの取得開始から取得完了までの期間である。
設定部202は、データ記憶部200に記憶された取得条件を読み出し、モータ制御装置30に送信することによって、取得条件を設定する。本実施形態では、設定部202は、非同期通信を利用して、非同期タスクとして取得条件を設定する場合を説明するが、設定部202は、同期通信を利用して、同期タスクとして取得条件を設定してもよい。設定部202は、後述する取得開始要求部203によりトレースデータの取得開始要求が送信される前に、取得条件の設定を行う。
[取得開始要求部]
取得開始要求部203は、モータ制御装置30に対し、トレースデータの取得開始要求をする。取得開始要求は、モータ制御装置30にトレースデータの取得を開始させるための要求である。取得開始要求は、所定形式のデータが送信されることによって行われるようにすればよく、取得開始要求であることを示す識別子を含む。本実施形態では、取得開始要求部203は、非同期通信を利用して、モータ制御装置30に対し、トレースデータの取得開始要求をする場合を説明するが、通信システム1が同期通信を利用しない場合には、取得開始要求部203は、特に非同期通信を利用せずに、トレースデータの取得開始要求をする。
なお、本実施形態では、トレースデータの取得条件の設定と、トレースデータの取得開始要求と、が別々に行われる場合を説明するが、これらは、一連の処理として行われてもよい。例えば、コントローラ20がモータ制御装置30にトレースデータの取得条件を設定した場合に、モータ制御装置30は、取得開始要求を待つことなく、トリガ条件が満たされたか否かを判定してもよい。この場合、トレースデータの取得開始要求が特に行われることなく、トリガ条件が満たされると、モータ制御装置30は、トレースデータの取得を開始する。
[読出要求部]
読出要求部204は、モータ制御装置30に対し、トレースデータの読出要求をする。読出要求は、トレースデータを読み出すための要求であり、トレースデータを送信させるための要求である。読出要求は、所定形式のデータが送信されることによって行われるようにすればよく、読出要求であることを示す識別子を含む。トレースデータがモータ制御装置30の特定のレジスタに格納される場合には、読出要求には、レジスタアドレスが含まれていてもよい。本実施形態では、読出要求部204は、非同期通信を利用して、モータ制御装置30に対し、トレースデータの読出要求をする場合を説明するが、通信システム1が同期通信を利用しない場合には、読出要求部204は、特に非同期通信を利用せずに、トレースデータの読出要求をする。
なお、本実施形態では、モータ制御装置30は、自発的にトレースデータを送信せず、コントローラ20からの読出要求に応じてトレースデータを送信する場合を説明するが、モータ制御装置30は、トレースデータの取得が完了した場合に、自発的にトレースデータを送信してもよい。この場合、コントローラ20は、特に読出要求をすることなく、モータ制御装置30からトレースデータを取得する。
[記録部]
記録部205は、モータ制御装置30から受信したトレースデータをデータ記憶部200に記録する。本実施形態では、コントローラカウンタが用意されているので、記録部205は、モータ制御装置30から受信したモータ制御装置30のグローバルタイマをコントローラカウンタに変換し、モータ制御装置30から受信したトレースデータに関連付けてデータ記憶部200に記録する。
例えば、コントローラ20がグローバルタイマとトレースデータを受信した場合、記録部205は、タイマデータDの対応関係を参照し、受信したグローバルタイマをコントローラカウンタに変換する。そして、記録部205は、変換したコントローラカウンタ、受信したグローバルタイマ、及び受信したトレースデータを関連付けてロギングファイルFに格納する。図5のデータ格納例であれば、コントローラ20は、「101」「95」「80」・・・といった数値が時系列的に格納されたトレースデータを、取得開始時点を示す「100.00」のグローバルタイマとともに受信する。記録部205は、タイマデータDの対応関係を参照し、グローバルタイマ「100.00」をコントローラカウンタ「50000」に変換し、取得開始時点の数値「101」とともにロギングファイルFに格納する。
本実施形態では、トレースデータのサンプリング周期が決められているので、記録部205は、取得開始時点以降の数値に対し、サンプリング周期に応じた値だけコントローラカウンタ及びグローバルタイマを増加させてロギングファイルFに格納する。例えば、サンプリング周期が、コントローラカウンタで表現すると「10」であり、グローバルタイマで表現すると「0.02」だったとすると、図5のデータ格納例に示すように、取得開始時点の次の時点に取得された数値「95」は、コントローラカウンタ「50010」及びグローバルタイマ「100.02」に関連付けられる。以降の数値についても同様に、サンプリング周期に対応する値だけ増加されたコントローラカウンタ及びグローバルタイマに関連付けられる。
[3−2.モータ制御装置において実現される機能]
図3に示すように、モータ制御装置30では、データ記憶部300、更新部301、判定部302、取得部303、送信部304、及び制限部305が実現される。データ記憶部300は、記憶部32を主として実現され、更新部301、判定部302、取得部303、送信部304、及び制限部305は、CPU31を主として実現される。
[データ記憶部]
データ記憶部300は、グローバルタイマの同期を取ったりトレースデータを取得したりするために必要なデータを記憶する。例えば、データ記憶部300は、グローバルタイマの現在値を記憶する。モータ制御装置30は、グローバルタイマをカウントアップすることによって、グローバルタイマの現在値を更新する。
なお、データ記憶部300が記憶するデータは、上記の例に限られない。例えば、データ記憶部300は、コントローラ20から受信したトレースデータの取得条件を記憶してもよい。また例えば、データ記憶部300は、トリガ条件が満たされた後に、トレースデータの取得開始時点のグローバルタイマに関連付けて、計測中の数値を時系列的に記憶する。また例えば、データ記憶部300は、コントローラ20のIPアドレスを記憶してもよい。
[更新部]
更新部301は、同期要求に含まれるコントローラ20のグローバルタイマに基づいて、モータ制御装置30のグローバルタイマを更新する。本実施形態では、更新部301は、データ記憶部300に記憶されたグローバルタイマを、コントローラ20のグローバルタイマで上書きする場合を説明するが、先述したように、必ずしもこれらを一致させる必要はなく、多少の誤差を許容してもよい。
[判定部]
判定部302は、所定のトリガ条件が満たされたか否かを判定する。判定部302は、センサ50若しくはエンコーダ60により検出された物理量又はモータ制御装置30の内部状態に基づいて、トリガ条件が満たされたか否かを判定する。例えば、判定部302は、エンコーダ60により検出されたフィードバック速度が所定範囲になったか否かを判定する。また例えば、センサ50により検出されたトルク信号の値が所定範囲になったか否か、トルク信号が立ち上がったか否か、トルク信号が収束したか否か、又はトルク波形が基準範囲から外れたか否かを判定する。また例えば、判定部302は、センサ50により検出された温度が所定範囲になったか否かを判定する。また例えば、判定部302は、モータ制御装置30のCPU使用率、メモリ使用率、又は通信負荷が所定範囲になったか否かを判定する。これらの判定結果が肯定又は否定された場合に、トリガ条件が満たされたと判定されるようにすればよい。
[取得部]
取得部303は、モータ制御装置30の状態データを取得する。本実施形態では、トレースデータが状態データに相当するので、取得部303は、状態データとして、モータ制御装置30の時系列的な状態変化が示されたトレースデータを取得する。例えば、取得部303は、センサ50若しくはエンコーダ60により検出された物理量又はモータ制御装置30の内部状態に基づいて、トレースデータを取得する。
本実施形態では、取得部303は、コントローラ20から非同期通信を利用して取得開始要求を受信した場合に、トレースデータを取得する。即ち、取得部303は、取得開始要求を受信したことに応じて、トレースデータの取得を開始する。別の言い方をすれば、取得部303は、取得開始要求を受信するまではトレースデータの取得を開始せず、取得開始要求を受信した場合に、トレースデータの取得を開始する。
本実施形態では、取得開始要求が受信されてもトリガ条件が満たされなければトレースデータの取得が開始されないので、取得部303は、トリガ条件が満たされた場合に、トレースデータを取得する。即ち、取得部303は、トリガ条件が満たされたと判定されたことに応じて、トレースデータの取得を開始する。取得部303は、トリガ条件が満たされたと判定されない場合にはトレースデータの取得を開始せず、トリガ条件が満たされたと判定された場合に、トレースデータの取得を開始する。
本実施形態では、取得部303は、取得条件に基づいて、トレースデータを取得する。例えば、取得条件にトレース対象となる軸が示されている場合、取得部303は、トレース対象となる軸の状態に基づいて、トレースデータを取得する。また例えば、取得条件にトレース対象の情報(信号)の種類が示されている場合、取得部303は、当該種類の情報に基づいて、トレースデータを取得する。また例えば、取得条件にサンプリング周期が示されている場合、取得部303は、当該サンプリング周期に基づいて、トレースデータを取得する。また例えば、取得条件にトレース期間が示されている場合、取得部303は、当該トレース期間に基づいて、トレースデータを取得する。
[送信部]
送信部304は、コントローラ20に対し、状態データが取得された場合のグローバルタイマと、トレースデータと、を送信する。本実施形態では、トレースデータが状態データに相当するので、送信部304は、コントローラ20に対し、トレースデータが取得された場合のモータ制御装置30のグローバルタイマと、トレースデータと、を送信する。グローバルタイマとトレースデータは、データとして一体化された状態で送信されてもよいし、データとしては別体の状態で送信されてもよい。
トレースデータが取得された場合のグローバルタイマとは、トレースデータの取得が開始されてから終了するまでの間の任意のグローバルタイマである。本実施形態では、送信部304は、トレースデータの取得を開始した時点におけるグローバルタイマを送信する場合を説明するが、トレースデータの取得を完了した時点のグローバルタイマを送信してもよい。また例えば、送信部304は、トレースデータの取得を開始した時点よりも後であり、かつ、トレースデータの取得を完了した時点よりも前の時点におけるグローバルタイマを送信してもよい。他にも例えば、送信部304は、ある一時点のグローバルタイマだけでなく、トレースデータに含まれる数値が計測された全時点のグローバルタイマを送信してもよい。
本実施形態では、モータ制御装置30は自発的にはトレースデータを送信しないので、送信部304は、コントローラ20から読出要求を受信した場合に、モータ制御装置30のグローバルタイマとトレースデータとを送信する。即ち、送信部304は、コントローラ20から読出要求を受信したことに応じて、モータ制御装置30のグローバルタイマとトレースデータとを送信する。送信部304は、コントローラ20から読出要求を受信しない場合には、グローバルタイマとトレースデータの送信を待機し、コントローラ20から読出要求を受信した場合に、グローバルタイマとトレースデータとを送信する。
[制限部]
制限部305は、所定期限までにトリガ条件が満たされなかった場合に、トレースデータの取得を制限する。所定期限は、予め定められた期限であればよく、例えば、グローバルタイマで表現可能な最大時間又はそれよりも短い時間である。トレースデータの取得を制限するとは、モータ制御装置30にトレースデータを取得させないこと、又は、モータ制御装置30にトレースデータを送信させないことである。
例えば、制限部305は、取得条件が設定されてから、又は、取得開始要求が受信されてから計時処理を開始し、所定期限が訪れたか否かを判定する。制限部305は、所定期限が訪れるまでの間にトリガ条件が満たされた場合には、トレースデータの取得を制限せず、所定期限が訪れてもトリガ条件が満たされなかった場合に、トレースデータの取得を制限する。
[3−3.データ収集装置において実現される機能]
図3に示すように、データ収集装置10では、データ記憶部100及び表示制御部101が実現される。データ記憶部100は、記憶部12を主として実現され、表示制御部101は、CPU11を主として実現される。
[データ記憶部]
データ記憶部100は、データ収集装置10がコントローラ20から受信したロギングファイルFを記憶する。他にも例えば、データ記憶部100は、コントローラ20に接続されたモータ制御装置30やセンサ類などの構成を示す機器情報を記憶してもよいし、コントローラ20のIPアドレスを記憶してもよい。また例えば、データ記憶部100は、トレースデータの取得条件を記憶してもよい。この場合、データ収集装置10からコントローラ20に対して取得条件が展開されるようにしてもよい。
また例えば、データ記憶部100は、コントローラ20のモータ制御装置30に対する指令を時系列的に記憶してもよい。例えば、データ記憶部100は、モータ40の動作指令(例えば、位置指令速度)が送信された時点を示すコントローラカウンタ又はグローバルタイマと、当該動作指令の内容と、の関係を時系列的に記憶してもよい。これらの関係は、プログラム又はパラメータに定義されていてもよく、データ記憶部100は、当該プログラム又はパラメータを記憶してもよい。
[表示制御部]
表示制御部101は、指令が送信された場合のコントローラ20のグローバルタイマと、モータ制御装置30から受信したモータ制御装置30のグローバルタイマと、に基づいて、指令とトレースデータとを比較して表示させる。例えば、表示制御部101は、コントローラ20がモータ制御装置30に送信した指令の時系列的な変化と、トレースデータが示す数値の時系列的な変化(指令に対する実測値の時系列的な変化)と、を比較可能に表示させる。
図6は、データ収集装置10に表示される画面の一例を示す図である。図6に示す例では、モータ40の位置指令速度の時系列的な変化と、トレースデータが示すフィードバック速度及びトルクの時系列的な変化と、が画面Gに表示される。表示制御部101は、データ記憶部100を参照して指令の時系列的な変化を取得し、ロギングファイルFを参照して実際の動作を示す数値の時系列的な変化を取得する。これらの情報は、共通のグローバルタイマが関連付けられているので、表示制御部101は、同じ時間軸で指令に対する実測値を比較可能に表示させる。例えば、表示制御部101は、図6のように上下に並べて表示させてもよいし、同じグラフ上に重ねて表示させてもよい。
[4.通信システムで実行される処理]
図7は、通信システム1で実行される処理を示すフロー図である。図7に示す処理は、CPU11,21,31がそれぞれ記憶部12,22,32に記憶されたプログラムに従って動作することによって実行される。以降説明する処理は、図3に示す機能ブロックにより実行される処理の一例である。なお、コントローラ20は、記憶部22のグローバルタイマ及びコントローラカウンタをカウントアップし、モータ制御装置30は、記憶部32のグローバルタイマをカウントアップしているものとする。また、図7では、コントローラ20からモータ制御装置30へのモータ40の動作指令については省略している。
図7に示すように、まず、コントローラ20は、同期タスクとして、モータ制御装置30にグローバルタイマの同期要求を送信する(S1)。S1においては、コントローラ20は、計時処理を実行し、伝送周期の開始時点が訪れたか否かを判定する。コントローラ20は、伝送周期の開始時点が訪れたと判定した場合に、記憶部22のグローバルタイマを含む同期要求を、同期タスクとして送信する。モータ制御装置30は、同期要求を同期タスクとして処理し、記憶部32のグローバルタイマを上書きする。
データ収集装置10は、コントローラ20に、ロギング開始要求を送信する(S2)。ロギング開始要求は、ロギングファイルFに格納するトレースデータの取得を開始させるための要求であり、ここでは、コントローラ20に取得条件を設定させるための要求である。ロギング開始要求は、所定形式のデータが送信されることによって行われるようにすればよく、ロギング開始要求であることを示す識別子を含む。ロギング開始要求は、任意のタイミングで送信され、例えば、コントローラ20でアラームが発生した場合に送信されてもよいし、ユーザが指定したタイミングで送信されてもよい。
コントローラ20は、ロギング開始要求を受信すると、非同期タスクとして、モータ制御装置30に取得条件を設定する(S3)。取得条件は、データ収集装置10からコントローラ20に予め展開されてもよいし、ロギング開始要求に含まれていてもよい。S3においては、コントローラ20は、記憶部22に記憶された取得条件をモータ制御装置30に送信する。モータ制御装置30は、取得条件を受信すると記憶部32に格納する。
その後、次の伝送周期が訪れると、コントローラ20は、同期タスクとして、モータ制御装置30にグローバルタイマの同期要求を送信する(S4)。S4の処理は、S1の処理と同様である。以降、伝送周期が訪れるたびに、同期要求が送信される。
コントローラ20は、非同期タスクとして、モータ制御装置30に取得開始要求を送信する(S5)。S5においては、例えば、コントローラ20は、S3において送信された非同期タスクである取得条件の設定が完了した旨のレスポンスをモータ制御装置30から受信した場合に取得開始要求を送信してもよいし、S3の取得条件の設定に関する非同期タスクを送信した後すぐに、取得開始要求を送信してもよい。
モータ制御装置30は、取得開始要求を受信すると、非同期タスクとして処理し、トリガ条件が満たされたか否かを判定する(S6)。S6においては、モータ制御装置30は、S3で設定された取得条件の一つであるトリガ条件が満たされたか否かを判定する。なお、所定の制限期間までにトリガ条件が満たされなかった場合には、以降のS7〜S11の処理は実行されない。
トリガ条件が満たされたと判定された場合(S6;Y)、モータ制御装置30は、トレースデータの取得を開始し、トレースデータを取得する(S7)。S7においては、モータ制御装置30は、グローバルタイマの現在値を記憶部32に保持し、S3で設定された取得条件とセンサ50又はエンコーダ60等の信号とに基づいて、トレースデータの取得を開始する。以降、モータ制御装置30は、トレース期間が終了するまでの間、サンプリング周期ごとに計測対象の数値の取得を繰り返す。
コントローラ20は、非同期タスクとして、モータ制御装置30にトレースデータの読出要求を送信する(S8)。S8においては、コントローラ20は、S5において送信された取得開始要求の非同期タスクが完了した旨のレスポンスをモータ制御装置30から受信した場合に読出要求を送信してもよいし、S5の取得開始要求の非同期タスクを送信してから一定時間が経過した後に、読出要求を送信してもよい。
モータ制御装置30は、読出要求を受信すると、非同期タスクとして処理し、取得開始時点のグローバルタイマとともにトレースデータをコントローラ20に送信する(S9)。S9においては、モータ制御装置30は、S7で保持したグローバルタイマと、S7で取得したトレースデータと、を送信する。
コントローラ20は、トレースデータを受信すると、ロギングファイルFを作成して記憶部22に保存する(S10)。S10においては、コントローラ20は、タイマデータDに基づいて、トレースデータの取得開始時点を示すグローバルタイマをコントローラカウンタに変換し、トレースデータの最初の数値と関連付ける。また、コントローラ20は、当該コントローラカウンタ及びグローバルタイマをサンプリング周期に応じた値だけ増加させつつ、トレースデータの2個目以降の数値と関連付ける。コントローラ20は、これらコントローラカウンタ、グローバルタイマ、及びトレースデータの数値をロギングファイルFに格納する。
コントローラ20は、データ収集装置10にロギングファイルFを送信し(S11)、本処理は終了する。例えば、データ収集装置10は、FTP等を利用してロギングファイルFを受信し、記憶部12に格納する。以降、データ収集装置10は、ユーザが操作部14から所定の操作をした場合に、ロギングファイルFに基づいて、画面Gを表示部15に表示される。
上記説明した通信システム1によれば、コントローラ20が更新するグローバルタイマと、モータ制御装置30が更新するグローバルタイマと、の同期が取れているため、コントローラ20は、トレースデータが取得された時間を正確に把握することができる。例えば、コントローラ20がトレースデータの取得要求を送信してから、実際にトレースデータが取得されるまでに時間がかかったり、トレースデータが取得されてからコントローラ20がそれを読み出しに行くまでに時間がかかったりしたとしても、コントローラ20のグローバルタイマとモータ制御装置30のグローバルタイマの同期が取れているので、コントローラ20は、いつの時点のトレースデータなのかを正確に把握することができる。
また、トレースデータは、モータ制御装置30により取得されてすぐにコントローラ20に送信されるのではなく、コントローラ20からの読出要求があって初めて送信されるため、トレースデータが取得されてから読出要求が受信されるまでに時間がかかることがある。この場合、コントローラ20は、トレースデータだけが送られてきてもいつの時点のものなのかを特定することが難しいが、通信システム1によれば、コントローラ20のグローバルタイマとモータ制御装置30のグローバルタイマの同期が取れているので、トレースデータが取得されてから読出要求が受信されるまでに時間がかかったとしても、コントローラ20は、いつの時点のトレースデータなのかを正確に把握することができる。
また、非同期通信を利用すると、コントローラ20がトレースデータの取得開始要求を送信しても、それがいつ実行されるのか分からないので、取得開始要求が送信されてからトレースデータが実際に取得されるまでに時間がかかることがある。この場合、コントローラ20は、トレースデータだけが送られてきてもいつの時点のものなのかを特定することが難しいが、通信システム1によれば、コントローラ20のグローバルタイマとモータ制御装置30のグローバルタイマの同期が取れているので、取得開始要求が送信されてからトレースデータが実際に取得されるまでに時間がかかったとしても、コントローラ20は、いつの時点のトレースデータなのかを正確に把握することができる。
また、モータ制御装置30の内部でトリガ条件が満たされた場合にトレースデータが取得されると、コントローラ20は、いつトリガ条件が満たされたかを把握することができないので、トレースデータだけが送られてきてもいつの時点のものなのかを特定することが難しいが、通信システム1によれば、コントローラ20のグローバルタイマとモータ制御装置30のグローバルタイマの同期が取れているので、トリガ条件が満たされた場合にトレースデータが取得されるようにしたとしても、コントローラ20は、いつの時点のトレースデータなのかを正確に把握することができる。
また、コントローラ20とモータ制御装置30の間の通信が切断された場合には、時間情報の同期を取ることができないので、互いの時間のずれが次第に大きくなる。この場合に、トリガ条件がなかなか満たされなかったとすると、時間的に大きくずれた状態のモータ制御装置30のグローバルタイマとともにトレースデータが送信されてしまう可能性があるが、通信システム1によれば、このような場合にはトレースデータの取得が制限されるので、時間的に大きくずれた状態のモータ制御装置30のグローバルタイマとともにトレースデータが送信されるといったことを防止できる。
また、コントローラ20のグローバルタイマに基づいてモータ制御装置30のグローバルタイマを更新することで、コントローラ20側の時間にモータ制御装置30を合わせることができ、コントローラ20は、トレースデータが取得された時間をより正確に把握することができる。
また、コントローラ20がトレースデータの取得条件を設定することで、所望の内容のトレースデータを取得することができる。
また、コントローラ20が、同期用のコントローラ20のグローバルタイマとは別の時間情報としてコントローラカウンタを有しており、モータ制御装置30のグローバルタイマをコントローラカウンタに変換してトレースデータと関連付けておくことで、他の機器に影響されない独自の時間情報を利用してトレースデータを管理することができ、トレースデータの管理が容易になる。
また、マスタ機器であるコントローラ20が更新するコントローラ20のグローバルタイマと、スレーブ機器であるモータ制御装置30が更新するモータ制御装置30のグローバルタイマと、の同期が取れているため、マスタ機器であるコントローラ20は、スレーブ機器であるモータ制御装置30においてトレースデータが取得された時間を正確に把握することができる。
また、コントローラ20のグローバルタイマとモータ制御装置30のグローバルタイマの同期が取れており、マスタ機器であるコントローラ20からの指令とトレースデータと、の時間的な関係も対応付けが取られているので、これらを比較して表示させることで、指令に対する実測値がどのような状態であるかを分かりやすく表示させることができる。このため、産業機器の動作の解析を効果的に支援することができる。
また、コントローラ20が更新するグローバルタイマと、モータ制御装置30が更新するグローバルタイマと、の同期が取れているため、コントローラ20は、状態データの一例であるトレースデータが取得された時間を正確に把握することができる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
例えば、実施形態では、コントローラ20と、1台のモータ制御装置30と、の間でグローバルタイマの同期が取られる場合を説明したが、コントローラ20は、複数台のモータ制御装置30とグローバルタイマの同期を取ってもよい。この場合、これら複数台のモータ制御装置30の各々は、コントローラ20からグローバルタイマの同期要求を受信すると、自身のグローバルタイマを、同期要求に含まれるコントローラ20のグローバルタイマで上書きすればよい。
また例えば、第1の産業機器はコントローラ20に限られず、第2の産業機器はモータ制御装置30に限られない。例えば、コントローラ20同士でグローバルタイマの同期が取られてもよく、あるコントローラ20が第1の産業機器に相当し、別のコントローラ20が第2の産業機器に相当してもよい。
図8は、変形例における通信システム1の全体構成を示す図である。図8に示すように、データ収集装置10には、複数のコントローラ20A,20Bが接続されており、これら複数のコントローラ20A,20Bの各々からロギングファイルFを収集可能としてもよい。更に、コントローラ20Aとコントローラ20Bとの間でグローバルタイマの同期が取られてもよい。この場合、コントローラ20Aが第1の産業機器に相当し、コントローラ20Bが第2の産業機器に相当してもよいし、これとは逆にコントローラ20Bが第1の産業機器に相当し、コントローラ20Aが第2の産業機器に相当してもよい。
例えば、コントローラ20Aは、コントローラ20Bに、グローバルタイマの同期要求を送信する。コントローラ20Bは、同期要求に基づいて、自身のグローバルタイマを、コントローラ20Aのグローバルタイマで上書きする。コントローラ20A,20Bの各々が自身に接続されたモータ制御装置30A〜30Cの各々からトレースデータを受信する処理については、実施形態で説明した処理と同様の処理が実行されるようにすればよい。
例えば、コントローラ20Bは、コントローラ20Aと同期をとったグローバルタイマに基づいて、自身に接続されたモータ制御装置30B,30Cと同期を取り、トレースデータの取得開始時点のグローバルタイマとトレースデータをモータ制御装置30B,30Cから取得する。コントローラ20Bは、取得したグローバルタイマとトレースデータをコントローラ20A又はデータ収集装置10に送信してもよい。この場合、コントローラ20Bは、独自にコントローラカウンタを用意し、グローバルタイマを自身のコントローラカウンタに変換してもよい。
なお、コントローラ20Aは、モータ制御装置30と同期を取る用のグローバルタイマと、コントローラ20Bと同期を取る用のグローバルタイマと、を別々に有していてもよい。同様に、コントローラ20Bは、モータ制御装置30と同期を取る用のグローバルタイマと、コントローラ20Aと同期を取る用のグローバルタイマと、を有していてもよい。コントローラ20Bがトレースデータをコントローラ20Aに送信する場合には、モータ制御装置30と同期を取る用のグローバルタイマを、コントローラ20Aと同期を取る用のグローバルタイマに変換したうえで送信すればよい。
また例えば、状態データとしてトレースデータが取得される場合を説明したが、状態データは、ある特定のレジスタに格納された一時点のデータであってもよい。この場合、コントローラ20は、モータ制御装置30の特定のレジスタを読み出す要求を送信する。また例えば、トレースデータのトリガ条件は特に設定されなくてもよい。また例えば、コントローラ20及びモータ制御装置30とは異なる第三者の機器により、グローバルタイマの同期が行われてもよい。また例えば、コントローラカウンタは、省略してもよい。また例えば、トレースデータは、表示させるのではなく、解析用のアプリケーションに入力させるために用いられてもよい。また例えば、コントローラ20がモータ制御装置30のグローバルタイマに合わせてもよく、同期部201は、モータ制御装置30で実現されてもよい。また例えば、データ収集装置10は、クラウドサーバ等であってもよい。
また、以上説明した実施形態は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成やデータ格納例そのものに限定するものではない。当業者はこれら開示された実施形態に種々の変形、例えば、物理的構成の形状や数、データ構造、処理の実行順を変更したりしてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
1 通信システム、D タイマデータ、F ロギングファイル、10 データ収集装置、11,21,31 CPU、12,22,32 記憶部、13,23,33 通信部、14 操作部、15 表示部、20,20A,20B コントローラ、30 モータ制御装置、40 モータ、50 センサ、60 エンコーダ、100 データ記憶部、101 表示制御部、200 データ記憶部、201 同期部、202 設定部、203 取得開始要求部、204 読出要求部、205 記録部、300 データ記憶部、301 更新部、302 判定部、303 取得部、304 送信部、305 制限部。

Claims (13)

  1. 第1の産業機器と第2の産業機器とが通信する通信システムであって、
    前記第1の産業機器が更新する第1の時間情報と、前記第2の産業機器が更新する第2の時間情報と、を同期させる同期部を有し、
    前記第2の産業機器は、
    前記第2の産業機器の状態データを取得する取得部と、
    前記第1の産業機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信する送信部と、
    を有する通信システム。
  2. 前記第1の産業機器は、前記第2の産業機器に対し、前記状態データの読出要求をする読出要求部を有し、
    前記送信部は、前記第1の産業機器から前記読出要求を受信した場合に、前記第2の時間情報と前記状態データとを送信する、
    請求項1に記載の通信システム。
  3. 前記同期部は、同期通信を利用して、前記第1の時間情報と、前記第2の時間情報と、を同期させ、
    前記第1の産業機器は、非同期通信を利用して、前記第2の産業機器に対し、前記状態データの取得開始要求をする取得開始要求部を有し、
    前記取得部は、前記第1の産業機器から前記非同期通信を利用して前記取得開始要求を受信した場合に、前記状態データを取得する、
    請求項1又は2に記載の通信システム。
  4. 前記第2の産業機器は、所定のトリガ条件が満たされたか否かを判定する判定部を有し、
    前記取得部は、前記トリガ条件が満たされた場合に、前記状態データを取得する、
    請求項1〜3の何れかに記載の通信システム。
  5. 前記第2の産業機器は、所定期限までに前記トリガ条件が満たされなかった場合に、前記状態データの取得を制限する制限部を有する、
    請求項4に記載の通信システム。
  6. 前記同期部は、前記第1の産業機器により実現され、
    前記同期部は、前記第2の産業機器に対し、前記第1の時間情報を含む同期要求を送信し、
    前記第2の産業機器は、前記同期要求に含まれる前記第1の時間情報に基づいて、前記第2の時間情報を更新する更新部を有する、
    請求項1〜5の何れかに記載の通信システム。
  7. 前記第1の産業機器は、前記第2の産業機器に対し、前記状態データの取得条件を設定する設定部を有し、
    前記取得部は、前記取得条件に基づいて、前記状態データを取得する、
    請求項1〜6の何れかに記載の通信システム。
  8. 前記第1の産業機器は、前記第1の時間情報とは別の時間情報を更新し、
    前記第1の産業機器は、前記第2の産業機器から受信した前記第2の時間情報を前記別の時間情報に変換し、前記第2の産業機器から受信した前記状態データに関連付けて記憶部に記録する記録部を有する、
    請求項1〜7の何れかに記載の通信システム。
  9. 前記第1の産業機器は、マスタ機器であり、
    前記第2の産業機器は、前記マスタ機器からの指令に基づいて動作するスレーブ機器であり、
    前記取得部は、前記スレーブ機器の前記状態データを取得し、
    前記送信部は、前記マスタ機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信する、
    請求項1〜8の何れかに記載の通信システム。
  10. 前記通信システムは、前記指令が送信された場合の前記第1の時間情報と、前記第2の産業機器から受信した前記第2の時間情報と、に基づいて、前記指令と前記状態データとを比較して表示させる表示制御部を有する、
    請求項9に記載の通信システム。
  11. 前記取得部は、前記状態データとして、前記第2の産業機器の時系列的な状態変化が示されたトレースデータを取得し、
    前記送信部は、前記第1の産業機器に対し、前記トレースデータが取得された場合の前記第2の時間情報と、前記トレースデータと、を送信する、
    請求項1〜10の何れかに記載の通信システム。
  12. 第1の産業機器と第2の産業機器との間の通信方法であって、
    前記第1の産業機器が更新する第1の時間情報と、前記第2の産業機器が更新する第2の時間情報と、を同期させ、
    前記第2の産業機器に状態データを取得させ、
    前記第1の産業機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信させる、
    通信方法。
  13. 第1の産業機器が更新する第1の時間情報と、第2の産業機器が更新する第2の時間情報と、が同期される場合に、前記第2の産業機器を、
    前記第2の産業機器の状態データを取得する取得部、
    前記第1の産業機器に対し、前記状態データが取得された場合の前記第2の時間情報と、前記状態データと、を送信する送信部、
    として機能させるためのプログラム。
JP2019025387A 2019-02-15 2019-02-15 通信システム、通信方法、及びプログラム Active JP6973427B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019025387A JP6973427B2 (ja) 2019-02-15 2019-02-15 通信システム、通信方法、及びプログラム
CN202010070504.6A CN111586087B (zh) 2019-02-15 2020-01-21 通信系统、通信方法和程序
EP20157150.2A EP3696626B1 (en) 2019-02-15 2020-02-13 Communication system, communication method, and program
US16/789,427 US11640150B2 (en) 2019-02-15 2020-02-13 Communication system, communication method, and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019025387A JP6973427B2 (ja) 2019-02-15 2019-02-15 通信システム、通信方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2020135183A true JP2020135183A (ja) 2020-08-31
JP6973427B2 JP6973427B2 (ja) 2021-11-24

Family

ID=69582046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019025387A Active JP6973427B2 (ja) 2019-02-15 2019-02-15 通信システム、通信方法、及びプログラム

Country Status (4)

Country Link
US (1) US11640150B2 (ja)
EP (1) EP3696626B1 (ja)
JP (1) JP6973427B2 (ja)
CN (1) CN111586087B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113119117B (zh) * 2021-03-22 2022-05-17 深圳市优必选科技股份有限公司 一种机器人的控制方法、控制器、机器人及控制系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002095068A (ja) * 2000-09-18 2002-03-29 Toshiba Corp 監視制御システム
JP2010198600A (ja) * 2009-02-02 2010-09-09 Omron Corp 産業用コントローラ
WO2015136971A1 (ja) * 2014-03-14 2015-09-17 オムロン株式会社 制御システム
JP2017079009A (ja) * 2015-10-21 2017-04-27 株式会社キーエンス プログラマブル・ロジック・コントローラのモニタ装置
JP2018151918A (ja) * 2017-03-14 2018-09-27 オムロン株式会社 制御装置、データ構造、情報処理方法

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08212112A (ja) * 1994-12-06 1996-08-20 Mitsubishi Electric Corp データの処理方法
US6742003B2 (en) * 2001-04-30 2004-05-25 Microsoft Corporation Apparatus and accompanying methods for visualizing clusters of data and hierarchical cluster classifications
JP2000156031A (ja) * 1998-11-17 2000-06-06 Sony Corp 情報処理システム、情報処理装置、及び情報処理方法
AU2001292689B2 (en) * 2000-09-15 2006-10-26 Schneider Electric Software, Llc An industrial process control data access server supporting multiple client data exchange protocols
JP3748204B2 (ja) * 2000-11-27 2006-02-22 三菱電機株式会社 周期制御同期システム
US7426559B2 (en) * 2002-05-09 2008-09-16 International Business Machines Corporation Method for sequential coordination of external database application events with asynchronous internal database events
JP4434698B2 (ja) * 2003-11-13 2010-03-17 株式会社東芝 X線ct装置
US8423602B2 (en) * 2004-10-13 2013-04-16 International Business Machines Corporation Web service broadcast engine
US20130254660A1 (en) * 2008-03-13 2013-09-26 Robb Fujioka Tablet computer
JP4725622B2 (ja) * 2008-09-22 2011-07-13 日本電気株式会社 ログ管理装置、システム、方法、及びプログラム
US8364701B2 (en) * 2008-12-18 2013-01-29 Bulletin.Net System and method for using symbol command language within a communications network via SMS or internet communications protocols
WO2010097875A1 (ja) * 2009-02-24 2010-09-02 パナソニック株式会社 データ処理装置、方法
JP2011087259A (ja) * 2009-10-19 2011-04-28 Sony Corp 通信集中制御システムおよび通信集中制御方法
US8543344B2 (en) * 2010-12-21 2013-09-24 Infineon Technologies Austria Ag Power meter arrangement
US8572290B1 (en) * 2011-05-02 2013-10-29 Board Of Supervisors Of Louisiana State University And Agricultural And Mechanical College System and architecture for robust management of resources in a wide-area network
EP2533022A1 (de) 2011-06-10 2012-12-12 Hexagon Technology Center GmbH Hochpräzise synchronisierte Messwerterfassung
JP2015035158A (ja) * 2013-08-09 2015-02-19 ルネサスエレクトロニクス株式会社 データ処理システム
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
US10254743B2 (en) * 2013-12-16 2019-04-09 Mitsubishi Electric Corporation Numerical control apparatus and logging method
US9843405B2 (en) * 2014-12-11 2017-12-12 Khalifa University of Science, Technology, and Research Method and devices for clock synchronization over links with asymmetric transmission rates
JP2016123009A (ja) * 2014-12-25 2016-07-07 ルネサスエレクトロニクス株式会社 半導体装置、電子デバイス・モジュール、及びネットワークシステム
US9845164B2 (en) * 2015-03-25 2017-12-19 Yokogawa Electric Corporation System and method of monitoring an industrial plant
JP6846111B2 (ja) * 2016-02-26 2021-03-24 オムロン株式会社 マスタ装置、スレーブ装置、情報処理装置、イベントログ収集システム、マスタ装置の制御方法、スレーブ装置の制御方法、および制御プログラム
JP6380432B2 (ja) * 2016-03-14 2018-08-29 オムロン株式会社 モータ制御システム、モータ制御装置、プログラムおよび記録媒体
JP2017201521A (ja) * 2016-04-28 2017-11-09 オムロン株式会社 出力制御ユニット、出力制御システム、出力制御ユニットの制御方法
WO2017191832A1 (ja) * 2016-05-06 2017-11-09 株式会社Nttドコモ ユーザ端末及び無線通信方法
KR101981910B1 (ko) * 2016-06-08 2019-05-23 미쓰비시덴키 가부시키가이샤 프로그래머블 표시기
US11449232B1 (en) * 2016-07-22 2022-09-20 Pure Storage, Inc. Optimal scheduling of flash operations
CN109863682B (zh) * 2016-11-01 2023-07-14 松下知识产权经营株式会社 伺服系统以及伺服系统的控制方法
US20210279723A1 (en) * 2017-01-25 2021-09-09 State Farm Mutual Automobile Insurance Company Systems and methods for industry reporting via blockchain
JP6399136B1 (ja) * 2017-03-31 2018-10-03 オムロン株式会社 制御装置、制御プログラム、および制御システム
JP6542833B2 (ja) * 2017-04-28 2019-07-10 ファナック株式会社 制御装置及び機械学習装置
WO2019003320A1 (ja) * 2017-06-27 2019-01-03 三菱電機株式会社 通信システム、マスタ装置及びスレーブ装置
WO2019064730A1 (ja) * 2017-09-26 2019-04-04 ソニー株式会社 情報処理装置、情報処理方法、および、プログラム
JP2019091973A (ja) * 2017-11-10 2019-06-13 パナソニックIpマネジメント株式会社 撮像装置
US10459705B2 (en) * 2017-12-28 2019-10-29 Intel Corporation Latency measurement technology
US10698440B2 (en) * 2018-01-10 2020-06-30 International Business Machines Corporation Reducing latency of memory read operations returning data on a read data path across multiple clock boundaries, to a host implementing a high speed serial interface
JP6984482B2 (ja) * 2018-02-22 2021-12-22 オムロン株式会社 通信システム、通信装置および通信方法
US10638366B2 (en) * 2018-06-18 2020-04-28 Verizon Patent And Licensing Inc. Flow level pacing by controlling socket send buffer size
JP2020004206A (ja) * 2018-06-29 2020-01-09 日本電産サンキョー株式会社 情報処理装置及び情報処理方法
US11144031B2 (en) * 2018-07-08 2021-10-12 Insight Robotics Limited System and method for reliable controller
CN112424717B (zh) * 2018-08-30 2024-04-16 株式会社安川电机 工业设备的数据采集系统以及马达控制装置
US20200096959A1 (en) * 2018-09-20 2020-03-26 Schweitzer Engineering Laboratories, Inc. Power system simulation based on snapshot data
WO2020128455A2 (en) * 2018-12-17 2020-06-25 Switalski, Gillian Method and system for determining driving information
US11269768B2 (en) * 2018-12-21 2022-03-08 Home Box Office, Inc. Garbage collection of preloaded time-based graph data
JP6956347B2 (ja) * 2019-01-31 2021-11-02 株式会社安川電機 トレースデータ取得システム、トレースデータ取得方法、及びプログラム
DE102020115333A1 (de) * 2019-06-17 2020-12-17 Silicon Works Co., Ltd. Drahtloses Batterie-Verwaltungssystem, Knoten für drahtlose Kommunikation und Verfahren zur Datenübertragung
KR20210103836A (ko) * 2020-02-14 2021-08-24 에스케이하이닉스 주식회사 데이터 처리 장치 및 그 동작 방법
JP7363839B2 (ja) * 2021-03-09 2023-10-18 横河電機株式会社 制御装置、制御方法、および、制御プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002095068A (ja) * 2000-09-18 2002-03-29 Toshiba Corp 監視制御システム
JP2010198600A (ja) * 2009-02-02 2010-09-09 Omron Corp 産業用コントローラ
WO2015136971A1 (ja) * 2014-03-14 2015-09-17 オムロン株式会社 制御システム
JP2017079009A (ja) * 2015-10-21 2017-04-27 株式会社キーエンス プログラマブル・ロジック・コントローラのモニタ装置
JP2018151918A (ja) * 2017-03-14 2018-09-27 オムロン株式会社 制御装置、データ構造、情報処理方法

Also Published As

Publication number Publication date
US20200264577A1 (en) 2020-08-20
JP6973427B2 (ja) 2021-11-24
CN111586087A (zh) 2020-08-25
EP3696626A1 (en) 2020-08-19
US11640150B2 (en) 2023-05-02
CN111586087B (zh) 2023-06-20
EP3696626B1 (en) 2024-06-12

Similar Documents

Publication Publication Date Title
CN108572613B (zh) 控制装置、信息处理方法
US10908579B2 (en) Controller, control program, and control system
EP3373087B1 (en) Control device and program
US9778630B2 (en) Control device and system program for maintaining global variable and reference data consistency during parallel processing of multiple tasks
CN109143989B (zh) 控制系统、控制装置、结合方法以及记录介质
JP2018133037A (ja) 制御装置
JP6972052B2 (ja) 通信システム、通信方法、及びプログラム
JP6956347B2 (ja) トレースデータ取得システム、トレースデータ取得方法、及びプログラム
JP6973427B2 (ja) 通信システム、通信方法、及びプログラム
US20210181709A1 (en) Data collection system and motor controller
JP7102801B2 (ja) 制御システム、制御装置および表示装置
JP7230989B2 (ja) 通信システム、通信方法、及びプログラム
JP2020135213A (ja) 制御装置、制御プログラム、および制御システム
JP7338651B2 (ja) 情報処理システム、情報処理プログラム及び情報処理方法
JP6653088B1 (ja) 産業機器のデータ収集システム及びモータ制御装置
JP2021157413A (ja) 生産システム、データ送信方法、及びプログラム
JP2021144651A (ja) 生産システム、データ送信方法、及びプログラム
JPWO2020044909A1 (ja) 産業機器の制御装置及び産業機器のデータ収集システム
KR101731045B1 (ko) 이더캣 기반 모션 제어 시스템의 프레임 전송 시점을 정밀하게 보정하기 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210511

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211018

R150 Certificate of patent or registration of utility model

Ref document number: 6973427

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150