JP7156982B2 - リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械 - Google Patents

リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械 Download PDF

Info

Publication number
JP7156982B2
JP7156982B2 JP2019043616A JP2019043616A JP7156982B2 JP 7156982 B2 JP7156982 B2 JP 7156982B2 JP 2019043616 A JP2019043616 A JP 2019043616A JP 2019043616 A JP2019043616 A JP 2019043616A JP 7156982 B2 JP7156982 B2 JP 7156982B2
Authority
JP
Japan
Prior art keywords
data
time
unit
real
input
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
JP2019043616A
Other languages
English (en)
Other versions
JP2020149100A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2019043616A priority Critical patent/JP7156982B2/ja
Priority to PCT/JP2020/000848 priority patent/WO2020183888A1/ja
Priority to CN202080012335.9A priority patent/CN113366394B/zh
Publication of JP2020149100A publication Critical patent/JP2020149100A/ja
Application granted granted Critical
Publication of JP7156982B2 publication Critical patent/JP7156982B2/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
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Feedback Control In General (AREA)

Description

本発明は実時間制御を実行するコントローラと深層学習による推論演算を用いた実時間制御によるリアルタイムコントローラおよびそれを用いた分散制御システム、産業機械に関する。
近年、画像認識の精度向上や産業装置の故障予知などを目的として、深層学習技術が用いられる。特に教師ありの深層学習では、入力データとそれに対応する任意の教師(正解)データをパラメータとして、学習演算を実行することで、数理的な設計をしなくとも任意の演算モデルを得ることができる。また、入力データや正解の誤差に応じて再学習演算をすることで、演算モデルを更新することができる。そこで、深層学習を用いることで、制御対象の運用環境の差や複雑な物理現象を考慮せずに制御演算モデル(学習結果)を作成し、これに基づき演算する(以下、推論演算)ことができ、システム設計工数の削減が期待されている。
一般的に、産業装置やロボットなどの産業機械における機械制御は、任意のセンサあるいはアクチュエータの情報に基づき制御演算を実行する。これは、深層学習技術を用いた機械制御でも同様であり、たとえば特開特許文献1は、学習部と、推論部と、センサを備えた機械学習システムであって、機械学習システムの学習に重要なデータのみを選択し、活用することで、機械学習システムが高精度の推論演算を行うことを特徴としている。
特開2010-55303号公報
産業装置やロボットの機械制御は、ミリ秒からマイクロ秒周期での高速な制御周期が求められる。一方で、学習演算時と推論演算時は、各演算に必要な計算性能や実装形態によって、データの入出力経路や入出力方法が異なる場合が多く、入力の際の遅延時間が大きくなる。したがって、特許文献1の構成を高速な機械制御に適用すると、学習演算時と、推論演算時のデータの入力遅延時間の誤差について配慮が無いため、これが高速制御に影響し、学習演算時と推論演算時の制御動作が同一にならない場合がある。
以上のことから本発明においては、学習演算時と推論演算時の制御動作が同一になるようなリアルタイムコントローラおよびそれを用いた分散制御システム、産業機械を提供することを目的とする。
以上のことから本発明においては「その一部において深層学習の学習演算を行うネットワークに接続され、外部で計測された計測データを取り込んで深層学習の推論演算を実行するリアルタイムコントローラであって、複数の計測データのうち基準データについて、深層学習の学習演算により求めた基準データの入力遅延時間を含む設定情報を記憶する設定保持部と、計測データを記憶し、基準データの入力時刻から入力遅延時間が経過した時刻を基準データの入力時刻とするとともに、基準データ以外のデータについて入力遅延時間が経過した時刻に直近のタイミングにおける基準データ以外のデータを選択する時間補正部と、基準データと選択した基準データ以外のデータを組のデータとして深層学習の推論演算を実行する演算部を備えることを特徴とするリアルタイムコントローラ。」としたものである。
また本発明においては「リアルタイムコントローラが、ネットワークを介して深層学習を実行する上流側計算機、及び前記計測データを取得する下流側計算機に接続されて構成された分散制御システム」としたものである。
また本発明においては「分散制御システムにより構成された産業機械」としたものである。
本発明によれば、深層学習を用いた機械制御において、学習演算時と推論演算時のデータの入出力遅延を同一条件に補正することで、学習演算時と推論演算時の制御動作を同一にすることができる。
本発明の実施例に係るリアルタイムコントローラの構成例を示す図。 リアルタイムコントローラが通信で用いるデータ構造を示す図。 リアルタイムコントローラが備える時間補正部16の詳細構成例を示す図。 試運転モードにおける遅延時間補正をするための設定手順を示すフローチャート。 時間補正部16が実行する遅延時間補正処理の手順を示すフローチャート。 入力データに対して、遅延時間補正処理を行わない場合のタイミングチャートを示す図。 入力データに対して、遅延時間補正処理を行う場合のタイミングチャートを示す図。 リアルタイムコントローラ1を適用した分散制御システム6の構成例を示す図。 リアルタイムコントローラが備える時間補正部に必要な設定情報を入力する設定端末画面を示す図。 本発明の実施例3に係るリアルタイムコントローラ1の運用応用例を示す図。
以下、本発明の実施例について図面を用いて詳細に説明する。
図1は本発明の実施例に係るリアルタイムコントローラの構成例を示す図である。
計算機で構成されたリアルタイムコントローラ1は、有線あるいは無線のネットワークを通じて、上流側及び下流側の計算機との間で通信を行っている。またネットワークの例えば上流側計算機は深層学習の学習演算を試運転時などの事前に実行し、リアルタイムコントローラ1は深層学習の結果を反映した推論演算を通常運転時に実行する。
図1のリアルタイムコントローラ1は、演算部18と、上下流側計算機との間の通信を制御する通信制御部12と、通信時間を補正する時間補正部16と、データの送受信を制御する上流及び下流のデータ制御部13、14を少なくとも備えている。
さらに詳細に述べると、通信制御部12は、上流方向の通信の伝送信号を受信あるいは送信する上流通信ポート10と、下流方向の通信の伝送信号を受信あるいは送信する下流通信ポート11とを備えて、送受信する通信の伝送信号データに変換、あるいは伝送信号の中継をおこなう。送受信するデータは、上流及び下流のデータ制御部13、14により制御される。
時間補正部16は、時間補正部の処理に必要な設定情報を設定保持部15から得、事前の設定に基づいて基準データを定め、その入力遅延時間を補正し、事前の設定と基準データの入力遅延時間に基づき、基準データ以外のデータを選択して基準データと基準データ以外のデータによるデータの組を作成する。
演算部18は、時間補正部16からのデータを用いた演算処理を実行するとともに、この際に演算計測部17において演算時間の開始と終了の経過時間を計測する。
なお、上流通信ポート10と下流通信ポート11は通信制御部12に接続され、通信制御部12は上流データ制御部13と下流データ制御部14に接続され、上流データ制御部13は設定保部15と時間補正部16に接続され、下流データ制御部14は時間補正部16と演算部18に接続され、設定保持部15は時間補正部16に接続され、時間補正部16は演算部18に接続され、演算部18は通信制御部12と上流データ制御部13と演算計測部17に接続されている。
ここで、リアルタイムコントローラ1は、通信でデータを送受信するために、図2のパケット2に示す構造を用いる。パケット2は、リアルタイムコントローラ1が通信をする際の宛先を示すアドレス部20と、演算に使用するパラメータや時間補正部16で使用する設定情報などを格納するデータ部21と、を備える。
図3は、リアルタイムコントローラ1が備える時間補正部16の詳細を示した構成図である。
時間補正部16は、上流データ制御部13あるいは下流データ制御部14で受信したパケットのデータ内容を解釈するデータ解釈部30と、時間の計測をする時間カウント部31と、受信したデータを蓄積するデータバッファ部32と、設定保持部15に格納された設定に基づき、基準のデータを選定する基準選択部161と、設定保持部15に格納された設定に基づき、基準データの入力遅延時間を補正する遅延補正部162と、設定保持部15に格納された設定と基準データの入力遅延時間に基づき、入力データを選定し、データの組を作るタイミング調整部163を備え、タイミング調整部163で時間調整したデータを演算部に引き渡す。
このようにデータ解釈部30は、上流データ制御部13と下流データ制御部14とデータバッファ部と接続され、時間カウント部31は、データバッファ部32と接続され、データバッファ部は、基準選択部161とタイミング調整部163と接続され、基準選択部161は、遅延補正部162と接続され、遅延補正部162は、タイミング調整部163と接続され、タイミング調整部163は演算部18と接続されている。
ここで、リアルタイムコントローラ1の基本動作を説明する。
まずリアルタイムコントローラ1は、上流通信ポート10を介して時間補正部16の処理に必要な設定を、上流データ制御部13で受信する。上流データ制御部13は受信した設定情報を設定保持部15へ転送し、設定保持部15は転送された設定情報を格納する。ここで、時間補正部16の処理に必要な設定とは、遅延補償の対象とする基準データを選択するための基準データ設定情報、基準データの入力遅延時間を補正するための遅延時間補正設定情報を含む情報である。
この際、上流データ制御部10と下流データ制御部11は、どちらも受信あるいは送信が可能である。そのため、リアルタイムコントローラ1は常時、上流方向、下流方向でパケット2の構造のデータを送受信し続ける。特に、受信したデータは、時間補正部16のデータバッファ部32で蓄積し、タイミング調整部163が演算部18の演算で使用するデータのみを選定する。また、リアルタイムコントローラ1は、受信したデータを基に定期的に演算部18で演算を実行する。その際、演算部18は演算結果を上流データ制御部13あるいは下流データ制御部14に転送する。上流データ制御部13あるいは下流データ制御部14は演算結果を転送されると、通信制御部12へ転送し通信の伝送信号へと変換する。
またリアルタイムコントローラ1は、遅延時間補正処理の設定をするための試運転モードと、制御演算を実行する通常モードを備える。試運転モードにおいては、例えば上流側計算機により深層学習の学習演算を実行し、この試運転結果として時間補正部16の処理に必要な各種設定情報がリアルタイムコントローラ1に入手されて設定処理が実施される。通常モードでは、リアルタイムコントローラ1において深層学習の学習演算の結果得られた学習モデルを用いた推論演算が実行され、この中で試運転モードにおいて求められ、予め定められた時間補正部16の処理に必要な各種設定情報を用いた遅延時間補整処理が実行される。
次にリアルタイムコントローラ1が備える時間補正部16で実行されるデータの遅延時間補正の処理について説明する。試運転モードにおける遅延時間補正をするための設定手順を、図4を用いて説明する。
図4ではまず、設定対象のデータの入力遅延や演算時間を見積もるために処理ステップS40にてリアルタイムコントローラ1を試運転モードにする。試運転モードの中では、上流側計算機により深層学習の学習演算を実行している。その次に、処理ステップS41にて試運転をした結果である動作情報を確認する。
動作情報の確認が完了すると、次に、処理ステップS42にて、遅延時間を補正する際の基準となる基準データを選択する。
図4の設定手順(処理ステップS43と処理ステップS44)では、基準データごとに2種類の遅延情報を入力する。1つ目が内部遅延情報であり、これは入力対象のデータ(基準データ)がデジタル値として取得できてから、リアルタイムコントローラ1に送信され、データが到着するまでの時間のことである。2つ目が外部遅延情報であり、これは、入力対象のデータがアナログ値からデジタル値に変換されるまでの時間である。
ここで、内部遅延情報と外部遅延情報についてさらに詳述すると、例えば上流側計算機がプラント全体の制御装置、下流側計算機がプラント各部の個別制御装置という位置づけを想定した場合に、下流側計算機でプロセス量を計測してアナログ値をデジタル値に変換するまでの時間が外部遅延情報であり、さらにデジタル値が生成されてからリアルタイムコントローラ1に認知されるまでの時間が下流における内部遅延時間ということになる。
これら2種類の情報(遅延補償の対象とする基準データを選択するための基準データ設定情報と、基準データの入力遅延時間を補正するための遅延時間補正設定情報)を処理ステップS43と処理ステップS44にて、各データについて入力が完了次第、設定を完了とする。最後に処理ステップS45にて、リアルタイムコントローラ1は通常モードの動作を開始する。
図5は時間補正部16が通常モードにおいて実行する遅延時間補正処理の手順を示したフローチャートである。なお、ここでは、すでに処理に必要なデータは設定保持部15に格納されていることを前提とする。図5には図示していないが、図5におけるリアルタイムコントローラ1の処理では、深層学習の学習演算の結果得られた学習モデルを用いた推論演算が実行されている。
時間補正部16は、処理ステップS50にて、データ解釈部30でデータを受信する。この際、データ解釈部30はデータ内容を確認後、データ受信時の時間を演算計測部17から読み出し、処理ステップS51に遷移する。次に処理ステップS51にて、データバッファ部32は、データ解釈部30で受信したデータとデータ受信時刻を合わせて蓄積し、処理ステップS52に遷移する。
処理ステップS52にて、基準選択部161は、データバッファ部32に蓄積されたデータを順次確認し、事前に設定した基準となるデータであるかを判定する。処理ステップS52の判定で、事前に設定した基準のデータではないと判断した場合、処理ステップS50に戻りデータの受信を続ける。
処理ステップS52の判定で、事前に設定した基準のデータであると判断した場合、基準選択部161は遅延補正部162に通知し、処理ステップS53へ遷移する。この際、基準データはパケット2に備える、アドレス部20を指定することによって判別可能である。
次に、処理ステップS53にて、遅延補正部162は、基準データが受信された時点から、時間計測を開始し、処理ステップS54へ遷移する。処理ステップS54にて、遅延補正部162で計測中の時間が、事前に設定した時間に到達したかを判定する。この際、処理ステップS54の判定で、遅延補正部162が計測した時間が、事前に設定した入力遅延時間に達していない場合、処理ステップS54にとどまる。
処理ステップS54の判定で、遅延補正部162が計測した時間が、事前に設定した入力遅延時間に達した場合、遅延補正部162はタイミング調整部163へ通知し、処理ステップS55へ遷移する。この際、事前に設定した入力遅延時間とは、前記内部遅延情報と前記外部遅延情報の合算した値である。
処理ステップS53から処理ステップS54までの時間計測は、事前に設定した基準データの入力遅延時間を補正するために実行する手順である。すなわち、基準データが到着した時点より、事前に設定した入力遅延時間分だけ、意図的に時間を調整することで、任意の入力遅延時間へ補正するものである。
処理ステップS55では、タイミング調整部163が処理ステップS54で計測した入力遅延時間と事前の設定に基づいて、データバッファ部32に蓄積しているデータの中から、基準データ以外のデータを選択する。
ここで、タイミング調整部163がデータを選定する仕組みについて説明する。前提として、基準データ以外のデータに関しても、任意の入力遅延時間を設定することが可能である。タイミング調整部163がデータバッファ部32からデータを選定するとき、まず処理ステップS54で計測した入力遅延時間の範囲外のデータは無視する。この際、前述したとおり、データバッファ部32は、受信したデータとデータ受信時刻を合わせて蓄積しているため、このデータに紐づくデータの受信時刻を参照することが可能である。そのあと、タイミング調整部163は、基準データ以外のデータに設定された入力遅延時間とデータ受信時刻を参照することで、基準データの入力遅延時間から相対的に計算し、特定の受信時刻のデータを選択する。
上記処理により、基準データ以外のデータの時系列的なデータ群のうち、基準データについて事前に設定した入力遅延時間で定まる時刻に直近の時刻で得られた基準データ以外のデータを選択することになる。
その後、処理ステップS56へ遷移し、タイミング調整部163は基準データと選択された基準データ以外のデータを合わせて入力データの組を作成し、処理ステップS57へ遷移する。
処理ステップS57にて、タイミング調整部163は、事前に設定したすべてのデータを選択したかを判断する。処理ステップS57の判定にて、事前に設定したすべてのデータを選択していないと判断した場合、処理ステップS56へ遷移し、タイミング調整部163が再度データを選択する。
また、処理ステップS57の判定にて、事前に設定したすべてのデータを選択したと判断した場合、処理ステップS58へ遷移する。最後に処理ステップS58にて、タイミング調整部163が演算部18に入力データの組を出力する。
図6は、リアルタイムコントローラ1が備える時間補正部16が、入力データに対して、遅延時間補正処理を行わない場合のタイミングチャートを示した図である。
ここで、図6に示す例はデータAとデータBを入力データとして、試運転モードで深層学習の学習演算を任意のコンピュータ(多くの場合に上流側計算機で実施)で実行する場合と、通常運転モードで学習結果としての推論演算をリアルタイムコントローラ1で実行する場合を対比して示している。なおここでは、試運転の時と通常運転の時で、異なる遅延時間の結果になってしまうことを説明しようとしている。
図6では、データAに関して、学習演算時(試運転時)と推論演算時(実運転時)では、上流側計算機で実施する学習演算時のオーバヘッド時間T60の方が、リアルタイムコントローラ1で実施する推論演算時のオーバヘッドT62よりも長いものとする。また、データBに関しては、学習演算時と推論演算時でオーバヘッドはほとんどかからないものとする。なおT61、T63は、学習演算時と推論演算時のデータAの入力時点、T64はデータBの入力時点を表している。
上記の前提で、データAは周期T67で、データBは周期T66でデータをサンプリングしている。この場合、データAが入力され次第、最新のサンプリングのデータBを選択し、入力データの組として演算に使用する。
具体的には、学習演算時について、データAは、下流側計算機でのデータ計測からオーバヘッドT60を経て時点T61でリアルタイムコントローラ1にデータ入力される。これに対し、データBはデータAの入力時点T61に最も近く、最新のサンプリングであるT65の時点のデータを選択し、入力データの組とする。
一方、推論演算時について、データAは下流側計算機でのデータ計測からオーバヘッドT62を経て時点T63でリアルタイムコントローラ1にデータ入力される。これに対し、データBはデータAの入力時点T63に最も近く最新のサンプリングであるT64の時点のデータを選択し、入力データの組とする。
すなわち、データAのオーバヘッドが学習演算時と推論演算時で異なることから、データBが選択されるタイミングが異なり、学習演算時と推論演算時での入力データの組のうち、データBの取得時刻が異なってしまう。
次に、図7により時間補正部16が、入力データに対して、遅延時間補正処理を行う場合のタイミングチャートを説明する。なお、ここで説明する場合でも、図6で説明した際と同様の前提とする。
図7では、データAを基準データ、データBを基準データ以外のデータとして取り扱う。基準データAは、学習演算時と推論演算時とでオーバヘッドが相違することから、オーバヘッドが短い推論演算時には、オーバヘッドが長い学習演算時に遅延時間を調整することで、学習演算時と推論演算時で、同じタイミングでの基準データ入力時刻を実現する。また基準データAの入力時刻に直近のタイミングで、基準データ以外のデータBを選択する。
まず、学習演算時、データAは図6の場合と同様に下流側計算機でのデータ計測からオーバヘッドT60を経て、時点T61で入力される。この際、データBは時点T61に最も近く最新のサンプリングである時点T611のデータを選択し、入力データの組とする。
他方、リアルタイムコントローラ1で推論演算時には、時間補正部6で入力データの遅延時間を補正するために、データAを基準データとして定め、さらにT610の遅延時間を設定する。ゆえに、推論演算時、データ到着時は下流側計算機でのデータ計測からオーバヘッドT68を経て、実際にはタイミングT69で入力されるが、時間T610だけ、入力遅延時間を加算する。そのあと、時点T612で入力されたものとし、その際、データBに対して、時点T612に最も近く最新のサンプリングである時点T611のデータを選択し、入力データの組とする。
こうした入力遅延補正を行うことで、学習演算時と推論演算時で、データAのオーバヘッドを同一に補正し、データBが選択されるタイミングも同一にすることで、学習演算時と推論演算時での入力データの組のうち、データBの取得タイミングが異なってしまう問題を解決可能である。
本実施例の態様に依れば、深層学習の学習演算と推論演算の実行時、データの入力経路や実行するための演算環境が異なっても、入力遅延時間などが同一条件での、入力データの組を作成することが可能である。
図8は、本発明の実施例2に係るリアルタイムコントローラ1を実運用するためのシステムの一例としての分散制御システム6の構成例を示した図である。
分散制御システム7は、分散制御システム7全体のシステム管理をする、システム管理装置70と、少なくとも1つのリアルタイムコントローラ1と、少なくとも1つの入出力中継装置71と、少なくとも1つのセンサ72、あるいは、少なくとも1つのアクチュエータ73、あるいは少なくとも1つのセンサ72と少なくとも1つのアクチュエータ73の両方と、設定端末装置74を備えて構成される。
ここではシステム管理装置70が上流側計算機、入出力中継装置71が下流側計算機とされる計算機システムを構成したものである。この場合にもまたネットワークの上流側計算機であるシステム管理装置70が試運転時に深層学習の学習演算を実行し、リアルタイムコントローラ1が実運転時に深層学習の推論演算を実行している。
このようにシステム管理装置70は、リアルタイムコントローラ1あるいは、入出力中継装置71と接続され、リアルタイムコントローラ1は、他のリアルタイムコントローラ1あるいは入出力中継装置71と接続され、入出力中継装置71は、センサ72あるいはアクチュエータ73と接続され、設定端末装置74は、システム管理装置70と接続される。
次に各装置の詳細を説明する。
システム管理装置70は、少なくとも1つの下流通信ポート11と、システム管理部701と、通信制御部702と、端末接続ポート703と、を備え、システム管理部701は、通信制御部702と端末接続ポート703と接続され、通信制御部702は、少なくとも1つの下流通信ポート11と接続される。
システム管理装置70の基本動作を説明する。システム管理装置70は、設定端末装置74にて入力される設定をシステム管理部701で管理し、通信制御部702へ転送することで、下流通信ポート11を介して、リアルタイムコントローラ1の時間補正部16に必要な設定情報を伝送する。ここで、システム管理装置70は、ネットワークに接続されるサーバーや、汎用コンピュータ、小型のコンピュータ基板などが想定される。リアルタイムコントローラ1は実施例1に記載したので、ここでは説明を割愛する。
入出力中継装置71は、少なくとも1つの上流通信ポート10と、少なくとも1つの下流通信ポート11と、通信制御部710と、入出力部711と、デバイス接続ポート712と、を備え、通信制御部710は少なくとも1つの上流通信ポート10と少なくとも1つの下流通信ポート11と接続され、入出力部711は通信制御部710とデバイス接続ポート712と接続され、デバイス接続ポート712は、センサ72あるいは、アクチュエータ73と接続される。
入出力中継装置71の基本動作を説明する。入出力中継装置71は、デバイス接続ポート712と接続されセンサあるいはアクチュエータに対して入出力部711を介して入出力する。この際、入力データは、入出力部711で得たデータを通信制御部710と上流通信ポート10あるいは下流通信ポート11を介して、リアルタイムコントローラ1あるいはシステム管理装置70へ送信するデータのことである。また、出力データとは、上流通信ポート10あるいは下流通信ポート11と通信制御部710を介して、リアルタイムコントローラ1あるいはシステム管理装置70から受信したデータのことであり、入出力部711を介して出力する。
次に分散制御システム6の基本動作について説明する。
本実施例では、複数のセンサ72の入力データに基づいて、アクチュエータ73の制御指令を求めるための演算をリアルタイムコントローラ1で実行することとする。
分散制御システム6の使用時、まず設定端末装置74において、リアルタイムコントローラ1が入力遅延補正を実行するための設定情報を入力する。
図9は、リアルタイムコントローラ1が備える時間補正部16に必要な設定情報を入力する設定端末画面を示した図である。この際、設定端末装置74は、図9に示すような構成である。設定端末装置74は、設定領域80と、システムログ領域81と、を備える。設定領域80は、入力遅延補正の処理を実行するために、基準データの指定、各データへの遅延時間設定を行う。また、システムログ領域81は、入力された設定情報は、システム管理部701を介して通信制御部702へ転送し、リアルタイムコントローラ1へ伝送する。
この際の設定手順は、実施例1に記載したとおり、はじめに試運転モードを実行した後、システムログ領域81にて、動作情報を確認する。その次に、設定領域にて、遅延時間補正対象の各データに対して、内部遅延情報と外部遅延情報を入力する。その後、設定端末装置74で入力された設定情報は、システム管理装置70を介してリアルタイムコントローラ1へ転送し、さらにリアルタイムコントローラ1は受信した設定情報を設定保持部15へ格納する。
ここで、センサ72A、72Bが接続された入出力中継装置71A、71Bは、継続的にセンサ72A、72Bのデータをサンプリングし、リアルタイムコントローラ1へ転送する。この際、図8に記載の通り、説明の便宜上、データAのセンサ72AとデータBのセンサ72Bとする。また、データAを入力遅延補正の基準データ、データBを基準データ以外のデータとする。リアルタイムコントローラ1は、基準データAを受信すると、実施例1で記載した方法で基準データAのセンサ72Aの入力遅延時間を補正する。そのあと、事前の設定と基準データAのセンサ72Aの入力遅延時間に基づいて、リアルタイムコントローラ1に備えるデータバッファ部30で蓄積した、複数の基準データ以外のデータBのセンサ72Bのデータのうち、1つのデータを選択する。
この際選択したセンサ72Bの基準データ以外のデータBと、基準データAのセンサ72のデータを入力データの組として、演算部18へ転送する。演算部18ではこの入力データに基づき、演算を行った後、演算結果をアクチュエータ73が接続された入出力中継装置71Cへ通信で転送する。アクチュエータ73が接続された入出力中継装置71Cは、受信した演算結果を入出力部711にてアクチュエータ73への制御信号へと変換し、フィードバックする。
本実施例の態様に依れば、産業装置やロボットなどの産業機械にリアルタイムコントローラ1を備える分散制御システム6を適用することで、制御演算に入力するセンサあるいはアクチュエータなどの各データの遅延時間とその組み合わせを厳密に指定することが可能である。
その他をリアルタイムコントローラ1適用した場合の効果は実施例1と同一であるため、説明は割愛する。
図10は、本発明の実施例3に係るリアルタイムコントローラ1の運用応用例である。
リアルタイムコントローラ1が備える演算部18は、演算実行部91と、演算パラメータ記憶部92と、演算管理部93を備える。
また演算実行部91は、時間補正部16と上流データ制御部10と下流データ制御部11と接続され、演算パラメータ記憶部92は演算実行部91と通信制御部12と接続され、演算管理部93は、演算実行部91と通信制御部12と接続される。
この際、演算実行部91は、任意の演算を実行する。また、演算パラメータ記憶部92は、演算実行部91で実行する演算に必要な係数やパラメータなどを格納し、通信を介してその内容を変更、更新をする。
図10に示すようにリアルタイムコントローラ1は他のリアルタイムコントローラ1と接続して運用する。この際、リアルタイムコントローラ1を単体で使用したとき、目的とした演算処理に対する演算性能が不足した場合、図10に示すように複数のリアルタイムコントローラ1を接続し、演算処理を分散して実装することで、演算性能の補強をする。具体的には、リアルタイムコントローラ1が備える演算管理部93は、他のリアルタイムコントローラ1の演算管理部93と通信を介して、演算処理の進捗状況や演算結果を共有する。すなわち、複数のリアルタイムコントローラ1で要求性能が高い1種類、あるいは複数種類の演算処理を連携して実行する。
また、クラウドサーバ90から、演算パラメータ記憶部92に対して、通信を介して任意のタイミングで演算処理に関する演算パラメータを転送する。さらに、リアルタイムコントローラ1は演算結果や動作状況を継続的にクラウドサーバ90へ送信し、クラウドサーバ90において演算パラメータの再考、更新をする。
実施例3に依れば、リアルタイムコントローラ1は、演算の目的に応じて演算内容の更新や演算性能の拡張が可能である。
1:リアルタイムコントローラ
10:上流通信ポート
11:下流通信ポート
12:通信制御部
13:上流データ制御部
14:下流データ制御部
15:設定保持部
16:時間補正部
161:基準選択部
162:遅延補正部
163:タイミング調整部
17:演算計測部
18:演算部
2:パケット
20:アドレス部
21:データ部
30:データ解釈部
31:時間カウント部
32:データバッファ部
70:システム管理装置
701:システム管理部
702:通信制御部
703:端末接続ポート
71:入出力中継装置
710:通信制御部
711:入出力部
712:デバイス接続ポート
72:センサ
73:アクチュエータ
74:設定端末装置
80:設定領域
81:システムログ領域
90:クラウドサーバ
91:演算実行部
92:演算パラメータ記憶部
93:演算管理部

Claims (12)

  1. その一部において深層学習の学習演算を行うネットワークに接続され、外部で計測された計測データを取り込んで深層学習の推論演算を実行するリアルタイムコントローラであって、
    複数の前記計測データのうち基準データについて、前記深層学習の学習演算により求めた基準データの入力遅延時間を含む設定情報を記憶する設定保持部と、前記計測データを記憶し、前記基準データの入力時刻から前記入力遅延時間が経過した時刻を前記基準データの入力時刻とするとともに、前記基準データ以外のデータについて前記入力遅延時間が経過した時刻に直近のタイミングにおける前記基準データ以外のデータを選択する時間補正部と、前記基準データと選択した前記基準データ以外のデータを組のデータとして前記深層学習の推論演算を実行する演算部を備えることを特徴とするリアルタイムコントローラ。
  2. 請求項1に記載のリアルタイムコントローラであって、
    前記ネットワークの試運転時に深層学習の学習演算が実行され、その結果得られた学習モデルによる推論演算を実運転時の前記演算部において実行することを特徴とするリアルタイムコントローラ。
  3. 請求項1または請求項2に記載のリアルタイムコントローラであって、
    一つあるいは複数の上流通信ポートと、一つあるいは複数の下流通信ポートと、前記上流通信ポートに対しデータの送受信を行うための上流データ制御部と、前記下流通信ポートに対しデータの送受信を行うための下流データ制御部と、前記上流通信ポートと前記下流通信ポートと前記上流データ制御部と下流データ制御部と接続される通信制御部と、前記上流データ制御部と前記下流データ制御部と接続される前記時間補正部と、前記時間補正部と前記通信制御部と前記上流データ制御部と下流データ制御部と接続される前記演算部を備えるとともに、
    前記上流データ制御部あるいは前記下流データ制御部で取得したデータに対して、事前の設定に基づいて前記時間補正部で基準データを定め、前記事前の設定に基づき、前記時間補正部で前記基準データの入力遅延時間を補正し、前記事前の設定と前記基準データの前記入力遅延時間に基づき、前記時間補正部で前記基準データ以外の前記データを選択し、前記基準データと前記基準データ以外のデータの組を作成することを特徴とするリアルタイムコントローラ。
  4. 請求項3に記載のリアルタイムコントローラであって、
    前記設定保持部は、前記時間補正部の処理に要する設定情報を任意の手段で転送し、あるいは、前記リアルタイムコントローラが備える前記時間補正部が前記演算部の結果に基づいて処理することを特徴とするリアルタイムコントローラ。
  5. 請求項4に記載のリアルタイムコントローラであって、
    前記時間補正部の処理に要する前記設定情報は、前記演算部の演算に必要な複数の入力データをサンプリングする際の基準とするデータの指定情報と、前記演算部の演算に必要な複数の入力データの遅延補正情報であることを特徴とするリアルタイムコントローラ。
  6. 請求項3から請求項5のいずれか1項に記載のリアルタイムコントローラであって、
    前記時間補正部は、前記上流データ制御部と前記下流データ制御部と接続され、前記上流データ制御部あるいは前記下流データ制御部で取得したデータを解釈するデータ解釈部と前記データ解釈部と接続され、前記取得したデータを蓄積するデータバッファ部と、前記データバッファ部と接続され、時間を計測する時間カウント部と、前記データバッファ部と接続され、前記取得したデータから基準データを選定する基準選択部と、前記基準選択部と接続され、前記基準データを取得した際の入力遅延時間を補正する遅延補正部と、前記遅延補正部と接続され、前記データバッファ部から特定のデータを選定するタイミング調整部を備えることを特徴とするリアルタイムコントローラ。
  7. 請求項6に記載のリアルタイムコントローラであって、
    前記データ解釈部は受信したデータ内容を解釈し、前記データバッファ部は前記データを蓄積し、前記基準選択部は、事前の設定に基づき選定した基準データを受信したら前記遅延補正部に通知し、前記遅延補正部は、前記基準選択部からの通知に基づき入力遅延時間の時間計測を開始し、前記遅延補正部は、事前の設定に基づき特定の入力遅延時間となると前記タイミング調整部に通知し、前記タイミング調整部は、前記遅延補正部からの通知に基づき、前記データバッファ部から事前の設定に基づき前記データを選定し、データの組を作成することを特徴とするリアルタイムコントローラ。
  8. 請求項1から請求項7のいずれか1項に記載のリアルタイムコントローラが、ネットワークを介して前記深層学習を実行する上流側計算機、及び前記計測データを取得する下流側計算機に接続されて構成された分散制御システム。
  9. 請求項8に記載の分散制御システムであって、
    前記リアルタイムコントローラをネットワーク上に複数接続し、複数の前記リアルタイムコントローラが備える前記演算部で、1種類あるいは複数種類の演算を実行することを特徴とする分散制御システム。
  10. 請求項8または請求項9に記載の分散制御システムであって、
    前記上流側計算機はシステム管理をするシステム管理装置であって、前記下流側計算機は少なくともセ1つのンサ、あるいは少なくとも1つのアクチュエータ、あるいは少なくとも1つのセンサと少なくとも1つのアクチュエータの両方と接続され、前記接続されたセンサあるいはアクチュエータに入出力制御をする入出力中継装置であって、ネットワーク上にシステムログや設定情報を入力する設定端末装置を備えることを特徴とする分散制御システム。
  11. 請求項9に記載の分散制御システムであって、
    システム管理装置は、ネットワークに接続されたサーバーを介して、深層学習の学習演算結果を受信し、さらに前記リアルタイムコントローラへ送信し、前記リアルタイムコントローラは、学習結果と入出力中継装置から転送される情報に基づいて演算することを特徴とする分散制御システム。
  12. 請求項8から請求項10のいずれか1項に記載の分散制御システムにより構成された産業機械。
JP2019043616A 2019-03-11 2019-03-11 リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械 Active JP7156982B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019043616A JP7156982B2 (ja) 2019-03-11 2019-03-11 リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械
PCT/JP2020/000848 WO2020183888A1 (ja) 2019-03-11 2020-01-14 リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械
CN202080012335.9A CN113366394B (zh) 2019-03-11 2020-01-14 实时控制器及使用该实时控制器的分散控制系统、工业机械

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019043616A JP7156982B2 (ja) 2019-03-11 2019-03-11 リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械

Publications (2)

Publication Number Publication Date
JP2020149100A JP2020149100A (ja) 2020-09-17
JP7156982B2 true JP7156982B2 (ja) 2022-10-19

Family

ID=72427229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019043616A Active JP7156982B2 (ja) 2019-03-11 2019-03-11 リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械

Country Status (3)

Country Link
JP (1) JP7156982B2 (ja)
CN (1) CN113366394B (ja)
WO (1) WO2020183888A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018073136A (ja) 2016-10-28 2018-05-10 ファナック株式会社 機械学習装置及び加工時間予測装置
JP2019021186A (ja) 2017-07-20 2019-02-07 横河電機株式会社 データ処理装置、制御システム、データ処理方法及びプログラム
JP2019028824A (ja) 2017-08-01 2019-02-21 株式会社日立製作所 プラント制御装置およびその制御方法、圧延機制御装置およびその制御方法並びにプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61131122A (ja) * 1984-11-30 1986-06-18 Fujitsu Ltd 並列パイプライン処理装置
JPH09114503A (ja) * 1995-10-13 1997-05-02 Toshiba Corp 制御装置
US5852817A (en) * 1991-08-14 1998-12-22 Kabushiki Kaisha Toshiba Intelligent control apparatus
JPH10301617A (ja) * 1997-04-24 1998-11-13 Hitachi Ltd 制御モデル構築支援装置およびその方法
JP5035383B2 (ja) * 1999-05-28 2012-09-26 富士電機株式会社 分散制御システム
JP2010191633A (ja) * 2009-02-17 2010-09-02 Nec Corp 学習ベクトル量子化学習システム、並列学習方法及びそのプログラム
US9576244B2 (en) * 2013-09-03 2017-02-21 Roger Midmore Methods and systems of four-valued simulation
JP6544219B2 (ja) * 2015-11-30 2019-07-17 オムロン株式会社 制御装置
JP6718834B2 (ja) * 2017-02-28 2020-07-08 株式会社日立製作所 学習システムおよび学習方法
JP6464220B2 (ja) * 2017-03-21 2019-02-06 ファナック株式会社 機械学習装置及び熱変位補正装置
JP6564412B2 (ja) * 2017-03-21 2019-08-21 ファナック株式会社 機械学習装置及び熱変位補正装置
JP6399136B1 (ja) * 2017-03-31 2018-10-03 オムロン株式会社 制御装置、制御プログラム、および制御システム
JP6897360B2 (ja) * 2017-06-21 2021-06-30 オムロン株式会社 制御装置、制御プログラムおよび制御システム
US10885026B2 (en) * 2017-07-29 2021-01-05 Splunk Inc. Translating a natural language request to a domain-specific language request using templates

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018073136A (ja) 2016-10-28 2018-05-10 ファナック株式会社 機械学習装置及び加工時間予測装置
JP2019021186A (ja) 2017-07-20 2019-02-07 横河電機株式会社 データ処理装置、制御システム、データ処理方法及びプログラム
JP2019028824A (ja) 2017-08-01 2019-02-21 株式会社日立製作所 プラント制御装置およびその制御方法、圧延機制御装置およびその制御方法並びにプログラム

Also Published As

Publication number Publication date
CN113366394A (zh) 2021-09-07
WO2020183888A1 (ja) 2020-09-17
CN113366394B (zh) 2023-10-10
JP2020149100A (ja) 2020-09-17

Similar Documents

Publication Publication Date Title
AU2012216747B2 (en) Controller that estimates delayed manipulated variables
JP7086600B2 (ja) プロセス制御器、プロセス制御方法、プロセス制御デバイス、及び多重速度制御器
JP5697380B2 (ja) プロセス制御システムの制御ループタイミングを調整する方法及び装置
JP6356978B2 (ja) 無線又は間欠プロセス計測値を伴うプロセス制御システムにおける予測手段の使用
JP6356977B2 (ja) プロセス制御システムにおける改善されたカルマンフィルタ
JP6190115B2 (ja) 非周期的に更新されるコントローラにおける設定点変更の補正方法
CN106249703B (zh) 用于控制和/或分析工业的过程的系统和方法
JP2014014897A (ja) 制振制御ロボットシステム
KR20160125942A (ko) 프로그래머블 컨트롤러 시스템, 그 컨트롤러
US20210166158A1 (en) System and method for controlling multiple devices through federated reinforcement learning
JP2022501717A (ja) プラントを制御する制御システム及び方法、並びに記憶媒体
JP2023054190A (ja) 非周期的に更新されるコントローラにおける速度に基づく制御、プロセスを制御する方法、プロセスコントローラ
JP7156982B2 (ja) リアルタイムコントローラおよびそれを用いた分散制御システム、産業機械
JP4498250B2 (ja) 同期制御システム
Annaswamy et al. The arbitrated networked control systems approach to designing cyber-physical systems
CN109976144B (zh) 减少控制回路中的控制器更新
CN111108738B (zh) 数据处理设备、数据分析设备、数据处理系统和用于处理数据的方法
CN111587561B (zh) 分布式控制系统及其通信控制方法
CN110611599A (zh) 一种网络控制系统及其控制方法
KR102418059B1 (ko) 차량의 이종 제어기간 통신 응답시간 추정 장치 및 방법
JP6939665B2 (ja) ネットワークシステム
KR100819076B1 (ko) 다중 플랫폼 프로세서 상호간 정보 공유시스템 및 그 방법
JP6431492B2 (ja) 連携指示装置、連携指示プログラム及び連携指示方法
Nadjarbashi et al. Event-driven data transmission in variable-delay network
CN117130273A (zh) 一种面向视觉感知控制系统的图像自适应采样方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220729

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221006

R150 Certificate of patent or registration of utility model

Ref document number: 7156982

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150