JPWO2019244312A1 - データ処理装置、データ処理システム、データ処理方法及びプログラム - Google Patents

データ処理装置、データ処理システム、データ処理方法及びプログラム Download PDF

Info

Publication number
JPWO2019244312A1
JPWO2019244312A1 JP2019546422A JP2019546422A JPWO2019244312A1 JP WO2019244312 A1 JPWO2019244312 A1 JP WO2019244312A1 JP 2019546422 A JP2019546422 A JP 2019546422A JP 2019546422 A JP2019546422 A JP 2019546422A JP WO2019244312 A1 JPWO2019244312 A1 JP WO2019244312A1
Authority
JP
Japan
Prior art keywords
data
processing
data processing
processing device
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.)
Granted
Application number
JP2019546422A
Other languages
English (en)
Other versions
JP6644202B1 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6644202B1 publication Critical patent/JP6644202B1/ja
Publication of JPWO2019244312A1 publication Critical patent/JPWO2019244312A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

データ処理装置(10)は、他のデータ処理装置(20)に接続され、処理フローに含まれる第1の部分処理と第2の部分処理とを実行するためのフロー設定情報を他のデータ処理装置(20)と共有するための第1通信部(180)と、フロー設定情報に従って第1の部分処理を処理部(130)に実行させる実行制御部(140)と、第1の部分処理が実行された第1の処理結果の他のデータ処理装置(20)への送信と、第2の部分処理が他のデータ処理装置(20)によって実行された第2の処理結果の受信と、の少なくともいずれか一方を実行する第2通信部(190)と、を備える。

Description

本発明は、データ処理装置、データ処理システム、データ処理方法及びプログラムに関する。
工場に代表される施設では、生産システム、加工システム及び検査システムのように、種々の処理システムが形成される。このような処理システムでは、処理フローにおいて、データの収集、加工、診断を含む複数の部分処理がデータに対して順次施される。ここで、データに施す部分処理をユーザが任意に組み合わせることで柔軟な処理フローを実現したいという要望がある。
そこで、制御装置のベースソフトウェアとは異なる専用の作業ソフトウェアを当該制御装置に組み込む技術を利用することが考えられる(例えば、特許文献1を参照)。特許文献1の技術は、部分処理を組み合わせることを考慮したものではないが、制御装置によって実行される処理の一部を作業ソフトウェアに実行させるものとして分離している。特許文献1の技術によれば、作業ソフトウェアを差し替えることで、制御装置に実行させる処理フローを変更することができる。
特開2017−157189号公報
処理フローを実行する際に、離れた位置に設置された装置それぞれで処理したデータを統合する場合、及び、一の装置で部分処理を施したデータに対してさらに他の装置での実行が適している部分処理を施す場合には、複数の装置を連携させて処理フローを実現する必要がある。しかしながら、特許文献1の技術では、複数の装置を連携させることについては何ら考慮されていないため、複数の装置を連携させて処理フローを実行することができなかった。
本発明は、上記の事情に鑑みてなされたものであり、複数の装置を連携させて処理フローを実行することを目的とする。
上記目的を達成するため、本発明のデータ処理装置は、他のデータ処理装置に接続されるデータ処理装置であって、処理フローに含まれる第1の部分処理と第2の部分処理とを実行するためのフロー設定情報を他のデータ処理装置と共有するための第1通信手段と、フロー設定情報に従って第1の部分処理を処理手段に実行させる実行制御手段と、第1の部分処理が実行された第1の処理結果の他のデータ処理装置への送信と、第2の部分処理が他のデータ処理装置によって実行された第2の処理結果の受信と、の少なくともいずれか一方を実行する第2通信手段と、を備える。
本発明によれば、データ処理装置は、フロー設定情報を他のデータ処理装置と共有するための第1通信手段と、フロー設定情報に従って第1の部分処理を処理手段に実行させる実行制御手段と、を備える。このため、処理フローにおける部分処理を複数のデータ処理装置によって実行することができる。すなわち、複数の装置を連携させて処理フローを実行することができる。
本発明の実施の形態に係るデータ処理システムの構成を示すブロック図 実施の形態に係る処理フローの一例を示す図 実施の形態に係るデータ処理装置のハードウェア構成を示すブロック図 実施の形態に係るデータ処理装置の機能的な構成を示す図 実施の形態に係るフロー設定情報の一例を示す図 実施の形態に係る接続部の構成を示す図 実施の形態に係るフロー設定情報のデータ形式を変更した例を示す図 実施の形態に係る連携データ処理を示すフローチャート 実施の形態に係るフロー設定共有処理を示すフローチャート 実施の形態に係る蓄積データを送信する例を模式的に示す図 実施の形態に係る蓄積データを受信する例を模式的に示す図 実施の形態に係る蓄積データ共有処理を示すフローチャート 実施の形態に係る送信処理を示すフローチャート 実施の形態に係る実行制御処理を示すフローチャート 実施の形態に係るフローデータの一例を示す図 実施の形態に係る部分処理を示すフローチャート 実施の形態に係る受信処理を示すフローチャート 実施の形態の変形例に係るデータ処理装置の構成を示す図 実施の形態の変形例に係るデータ処理システムの構成を示す図 実施の形態の変形例に係る処理フローを示す図
以下、本発明の実施の形態に係るデータ処理装置10について、図面を参照しつつ詳細に説明する。
実施の形態1.
本実施の形態に係るデータ処理装置10は、工場に設置される産業用コンピュータである。データ処理装置10は、他のデータ処理装置20と連携して、一連の部分処理を含む処理フローを実行する。データ処理装置10,20によって実行される処理フローは、製品を生産する生産ラインを稼働させるための制御処理である。
データ処理装置10は、図1に示されるように、データ処理装置20とともにデータ処理システム100を構成する。データ処理システム100は、データ処理装置10,20に加えて、機器31,32を有する。
データ処理装置10,20及び機器31,32は、通信路30を介して互いに通信可能となるように接続される。通信路30は、工場内に設置された通信線によって実現される産業用の制御ネットワークである。ただし、通信路30は、LAN(Local Area Network)に代表される情報ネットワークであってもよい。また、通信路30は、専用線であってもよいし、インターネットに代表される広域ネットワークであってもよい。さらに、図1では、単一の伝送路を介してデータ処理装置10,20及び機器31,32が接続されているが、これには限定されない。例えば、データ処理装置10と機器31,32とが専用線を介して接続され、データ処理装置10とデータ処理装置20とが広域ネットワークを介して接続されてもよい。
データ処理装置20は、データ処理装置10と同等に構成される産業用コンピュータである。機器31は、生産ラインに設置されたセンサ装置であって、例えば、圧力、超音波、又は光に代表される物理量を計測するセンサを有している。機器31は、センサによる計測結果を示すデータを定期的に通信路30へ出力する。機器31が計測結果を出力する周期は、例えば、1ms、100ms又は1secである。機器32は、生産ラインに設置されるアクチュエータ又はロボットであって、処理フローの実行結果としての制御命令に従って動作する。
データ処理装置10,20の連携によって実行される処理フロー40が図2に例示されている。この処理フロー40は、機器31から収集したデータに対して施される一連の部分処理を含む。詳細には、処理フロー40は、データ処理装置10によって実行される第1の部分処理41と、データ処理装置20によって実行される第2の部分処理42と、を含む。ただし、これには限定されず、第1の部分処理41がデータ処理装置20によって実行され、第2の部分処理42がデータ処理装置10によって実行されてもよい。
また、第1の部分処理41は、部分処理411と部分処理412とを要素処理として含み、第2の部分処理42は、部分処理421と部分処理422とを要素処理として含む。部分処理411は、機器31からデータを収集する処理に相当し、部分処理412は、部分処理411の結果として出力されるデータを加工する処理に相当する。データの加工は、例えばノイズの低減又は端数処理である。部分処理421は、部分処理412の結果として出力されるデータについて診断する処理に相当する。データの診断は、例えば、機器32に対する制御指令の決定、及び、異常の有無の判定である。部分処理422は、部分処理421の結果として出力される診断結果を示すデータの外部への出力に相当する。診断結果の出力は、機器32への制御指令の送信を含む。図2に示される処理フロー40によれば、部分処理411,412,421,422を含む一連の処理が、機器31から計測結果が出力されるたびに実行される。そして、計測結果に含まれるノイズを低減した値に応じて機器32に対する制御内容が決定されて制御命令が送信される。
データ処理装置10は、そのハードウェア構成として、図3に示されるように、プロセッサ11と、主記憶部12と、補助記憶部13と、入力部14と、出力部15と、通信部16と、を有する。主記憶部12、補助記憶部13、入力部14、出力部15及び通信部16はいずれも、内部バス17を介してプロセッサ11に接続される。
プロセッサ11は、CPU(Central Processing Unit)を含む。プロセッサ11は、補助記憶部13に記憶されるプログラムP1を実行することにより、データ処理装置10の種々の機能を実現して、後述の処理を実行する。
主記憶部12は、RAM(Random Access Memory)を含む。主記憶部12には、補助記憶部13からプログラムP1がロードされる。そして、主記憶部12は、プロセッサ11の作業領域として用いられる。
補助記憶部13は、EEPROM(Electrically Erasable Programmable Read-Only Memory)及びHDD(Hard Disk Drive)に代表される不揮発性メモリを含む。補助記憶部13は、プログラムP1の他に、プロセッサ11の処理に用いられる種々のデータを記憶する。補助記憶部13は、プロセッサ11の指示に従って、プロセッサ11によって利用されるデータをプロセッサ11に供給し、プロセッサ11から供給されたデータを記憶する。なお、図3では、1つのプログラムP1が代表的に示されているが、補助記憶部13は、複数のプログラムを記憶してもよいし、主記憶部12には、複数のプログラムがロードされてもよい。
入力部14は、入力キー及びポインティングデバイスに代表される入力デバイスを含む。入力部14は、データ処理装置10のユーザによって入力された情報を取得して、取得した情報をプロセッサ11に通知する。
出力部15は、LCD(Liquid Crystal Display)及びスピーカに代表される出力デバイスを含む。出力部15は、プロセッサ11の指示に従って、種々の情報をユーザに提示する。
通信部16は、外部の装置と通信するためのネットワークインタフェース回路を含む。通信部16は、外部から信号を受信して、この信号により示されるデータをプロセッサ11へ出力する。また、通信部16は、プロセッサ11から出力されたデータを示す信号を外部の装置へ送信する。
図3に示されるハードウェア構成が協働することで、データ処理装置10は、種々の機能を発揮する。詳細には、データ処理装置10は、その機能として、図4に示されるように、ユーザが処理フローの設定を入力するためのUI(User Interface)部110と、処理フローの設定を受け付ける受付部120と、処理フローを構成する部分処理を実行する処理部130と、処理部130及び収集処理部160に部分処理を実行させる実行制御部140と、種々のデータを記憶する記憶部150と、データを収集する収集処理部160と、データ処理装置20に接続するための接続部170と、を有する。
受付部120、実行制御部140、記憶部150及び接続部170は、処理フローを実行するためのプラットフォーム50を形成する。このプラットフォーム50は、データ処理装置20においてもデータ処理装置10と同様に形成されるプラットフォームと連携して、処理フローを実行する。
UI部110は、主として入力部14及び出力部15によって実現されるタッチスクリーンに相当する。UI部110は、受付部120による制御に従って、処理フローの設定を入力するための画面をユーザに対して表示する。ユーザは、UI部110を操作して、処理フローを構成する部分処理の内容及び個数、部分処理の実行に必要なパラメータ、並びに、部分処理を実行するプラットフォームを任意に設定する。そして、UI部110は、ユーザの操作により入力された処理フローの設定を示す情報を受付部120へ送出する。なお、UI部110は、ディスプレイとキーボードとマウスに代表されるポインティングデバイスとによって実現されてもよい。
受付部120は、主としてプロセッサ11によって実現される。受付部120は、UI部110から処理フローの設定を受け付けて、この設定内容を示すフロー設定情報として実行制御部140に通知する。実行制御部140に通知されたフロー設定情報は、記憶部150の設定記憶部151に格納される。受付部120は、請求項の受付手段として機能する。
なお、処理フローの設定が受付部120によって受け付けられるとは限らない。ユーザが、データ処理装置10のUI部110ではなく、データ処理装置20を操作して処理フローの設定を入力することもある。ユーザは、データ処理装置10,20のうち任意の装置を操作して処理フローを設定すればよい。ユーザがデータ処理装置20に処理フローの設定を入力した場合には、データ処理装置10は、この処理フローの設定を示すフロー設定情報をデータ処理装置20から受信することで共有する。この共有の詳細については、後述する。
処理部130は、主としてプロセッサ11によって実現される。処理部130はそれぞれ、データ処理装置10に予め設定されたプログラムP1、又はユーザによって用意されたプラグインソフトウェアによって実現される。処理部130はそれぞれ、処理フローを構成する要素としての部分処理を実行する。詳細には、処理部130はそれぞれ、部分処理の対象として実行制御部140によって入力されるデータを取得して、取得したデータに部分処理を施した結果を実行制御部140に出力する。図2においては、データ処理装置10によって実行される第1の部分処理41のうち、部分処理412がいずれかの処理部130によって実行される。処理部130は、請求項の処理手段として機能する。
実行制御部140は、主としてプロセッサ11によって実現される。実行制御部140は、フロー設定情報に従った順序で処理部130及び収集処理部160に部分処理を実行させる。詳細には、実行制御部140は、処理部130、収集処理部160及び接続部170から部分処理の対象となるデータを取得して、取得したデータを、当該データに部分処理を施す処理部130若しくは収集処理部160、又は接続部170へ送出する。実行制御部140は、請求項の実行制御手段として機能する。
例えば、実行制御部140は、図2に示される部分処理411の結果として収集されたデータを収集処理部160から取得して、取得したデータを、部分処理412を実行する処理部130へ送出する。また、実行制御部140は、部分処理412の結果として出力されたデータを処理部130から取得して、取得したデータを、接続部170を介してデータ処理装置20へ送信する。
なお、図2に示される処理フロー40のうちの第2の部分処理42がデータ処理装置10によって実行される場合においては、実行制御部140は、部分処理412の結果を示すデータを、接続部170を介してデータ処理装置20から取得して、取得したデータを、部分処理421を実行する処理部130へ送出する。そして、実行制御部140は、部分処理421の結果として処理部130から出力されたデータを取得して、取得したデータを、部分処理422を実行する収集処理部160へ送出する。
記憶部150は、主として補助記憶部13によって実現される。記憶部150は、フロー設定情報を記憶する設定記憶部151と、後述の蓄積データを記憶するデータ記憶部152と、を有する。設定記憶部151及びデータ記憶部152は、1つの記憶装置に形成された異なる記憶領域であってもよいし、異なる記憶装置として実現されてもよい。設定記憶部151は、請求項の設定記憶手段として機能し、データ記憶部152は、請求項のデータ記憶手段として機能する。
図5には、設定記憶部151に記憶されるフロー設定情報1511が例示されている。このフロー設定情報1511は、図2に示される処理フローを実行するために必要な設定を示す情報である。フロー設定情報1511は、部分処理を識別するための部分処理IDと、この部分処理を実行するプラットフォームを識別するためのプラットフォームIDと、この部分処理の名称と、この部分処理の前処理に相当する部分処理と、この部分処理の後処理に相当する部分処理と、この部分処理に入力されるデータの型と、この部分処理から出力されるデータの型と、を関連付けるテーブルデータである。
図5中、部分処理IDは、図2の部分処理に付された符号と等しい識別子とされている。また、プラットフォームIDのうち、「50」は、図4に示されるデータ処理装置10のプラットフォーム50の符号と等しい識別子とされている。「51」というプラットフォームIDは、データ処理装置20のプラットフォームに対応する。なお、フロー設定情報1511は、プラットフォームIDに変えて、データ処理装置10,20を識別する識別子を含んでもよい。入力データ及び出力データに関して、「FLOAT16*2」は、浮動小数点型の16bitのデータが2つであることを意味する。同様に、「INT8*1」は、整数型の8bitのデータが1つであることを意味し、「BOOL*1」は、ブール型のデータが1つであることを意味する。
なお、フロー設定情報1511は、図5に例示される情報とは異なる情報を含んでもよい。例えば、フロー設定情報1511は、部分処理の内容を規定するパラメータを含んでもよい。このパラメータは、例えば、端数処理に用いられる閾値、データを収集する対象となる機器の識別子、データを収集する周期、及び、制御命令を送信する対象となる機器の識別子である。
図4に戻り、収集処理部160は、主としてプロセッサ11と通信部16との協働により実現される。図4に示される収集処理部160は、機器31,32それぞれに対応して2つ設けられているが、データ処理装置10が接続される伝送路ごとに設けられてもよい。収集処理部160は、接続された機器31から出力されるデータを収集して、収集したデータを実行制御部140へ送出する。収集処理部160は、処理部130と同様に、請求項の処理手段として機能する。
また、収集処理部160は、出力情報を出力する出力処理モジュール161を有する。出力情報は、処理フローの実行結果に関する情報である。例えば、出力処理モジュール161は、実行制御部140から送出された制御命令を、出力情報として制御対象の機器32に送信する。出力処理モジュール161による出力処理は、図2中の部分処理422に相当する。なお、出力情報は、制御命令に限定されず、異常の発生を報知するための通知であってもよいし、外部のサーバ装置に格納するための品質管理情報であってもよい。
接続部170は、主としてプロセッサ11と通信部16との協働により実現される。接続部170は、データ処理装置10がデータ処理装置20と連携して処理フローを実行するための通信をする。接続部170は、データ処理装置20との間で、オフライン処理に必要な通信をする第1通信部180と、オンライン処理を実行するための通信をする第2通信部190と、を有する。第1通信部180は、請求項の第1通信手段として機能し、第2通信部190は、請求項の第2通信手段として機能する。
ここで、オフライン処理は、処理フローの実行に必要であるが、実行の際にデータ処理装置10とデータ処理装置20との通信が必須ではない処理を意味する。オフライン処理は、フロー設定情報の参照を含む。フロー設定情報が処理フローの開始前に予めデータ処理装置10,20間で共有されていれば、フロー設定情報を参照する際には通信が必須とはならない。また、オフライン処理は、データ処理装置10,20の一方に蓄積された蓄積データを他方が読み出す部分処理を含む。この蓄積データがデータ処理装置10とデータ処理装置20との間で予め伝送されていれば、蓄積データを読み出す際には通信が必須とはならない。
また、オンライン処理は、データ処理装置10とデータ処理装置20とが接続されている条件下で実行される部分処理を意味する。詳細には、一の部分処理の結果をデータ処理装置10,20の一方から他方に伝送して次の部分処理の入力とすることがオンライン状態で繰り返し実行されるときの、当該次の部分処理がオンライン処理に相当する。
図6には、接続部170の第1通信部180及び第2通信部190の詳細な構成が示されている。図6に示されるように、第1通信部180は、フロー設定情報の形式を変換する設定情報変換部181と、蓄積データの形式を変換する蓄積データ変換部182と、データを伝送する伝送部183と、データの暗号化及び復号をする秘匿化部184と、を有する。
設定情報変換部181は、データ処理装置10,20間でフロー設定情報を共有するために通信路30上でフロー設定情報が伝送される際に、このフロー設定情報のデータ形式を送信先の装置に適した形式に変換する。詳細には、設定情報変換部181は、設定記憶部151に記憶されるフロー設定情報を読み出して、このフロー設定情報のデータ形式をデータ処理装置20に対応する形式に変換し、伝送部183へ送出する。フロー設定情報のデータ形式は、いわゆるファイルフォーマットであってもよいし、他の形式であってもよい。また、設定情報変換部181は、伝送部183によってデータ処理装置20から受信されたフロー設定情報の形式を、実行制御部140に対応する形式に変換して実行制御部140へ送出してもよい。
図7には、設定情報変換部181によって形式が変換されたフロー設定情報1512が例示されている。このフロー設定情報1512は、図5に示されたフロー設定情報1511のプラットフォームIDに代えて、部分処理を実行する装置を識別するための装置IDを含んでいる。図7における装置IDは、データ処理装置10,20の符号に等しい識別子とされている。また、フロー設定情報1512では、フロー設定情報1511に含まれる「後処理」が省略されている。
設定情報変換部181は、データ処理装置20に対応するデータ形式を、ユーザからの入力により取得してもよいし、データ処理装置20に要求することで取得してもよい。また、通信路30上では共通の規格に従ってフロー設定情報を伝送することとして、設定情報変換部181は、フロー設定情報の形式を、この共通の規格に従うデータ形式に変換してもよい。
図6に戻り、蓄積データ変換部182は、データ処理装置10,20が蓄積データを共有するためにこの蓄積データが通信路30上で伝送される際に、蓄積データの形式を送信先の装置に適した形式に変換する。詳細には、蓄積データ変換部182は、伝送部183によってデータ処理装置20から受信された蓄積データの形式を、実行制御部140に対応する形式に変換して実行制御部140へ送出する。蓄積データのデータ形式は、いわゆるファイルフォーマットであってもよいし、他の形式であってもよい。また、蓄積データ変換部182は、データ記憶部152に記憶される蓄積データを読み出して、この蓄積データの形式をデータ処理装置20に対応する形式に変換して伝送部183へ送出してもよい。
伝送部183は、設定記憶部151から読み出されたフロー設定情報を、設定情報変換部181を介して取得し、データ記憶部152から読み出された蓄積データを、蓄積データ変換部182を介して取得する。そして、伝送部183は、取得したフロー設定情報及び蓄積データを、秘匿化部194を介してデータ処理装置20へ送信する。また、伝送部183は、データ処理装置20から秘匿化部194を介して受信したフロー設定情報及び蓄積データを、蓄積データ変換部182を介して設定記憶部151及びデータ記憶部152に書き込む。
秘匿化部184は、通信路30における暗号化通信を実現する。詳細には、秘匿化部184は、伝送部183から送信されたデータを暗号化して通信路30へ送信し、通信路30から受信したデータを復号して伝送部183へ送出する。秘匿化部184による暗号化通信の方式は任意であって、公開鍵暗号方式であってもよいし秘密鍵暗号方式であってもよい。
第2通信部190は、データ処理装置20による部分処理の対象となるデータを送信するフローデータ送信部191と、データ処理装置10による部分処理の対象となるデータを受信するフローデータ受信部192と、フローデータ送信部191及びフローデータ受信部192によるデータの伝送を制御する伝送制御部193と、データの暗号化及び復号をする秘匿化部194と、を有する。
フローデータ送信部191は、フロー設定情報に従ってデータ処理装置10によって実行された第1の部分処理41の結果を示す送信データを実行制御部140から取得して、秘匿化部194を介してデータ処理装置20へ送信する。フローデータ送信部191は、伝送制御部193によって送信が制限されているときには、データの送信を保留して待機する。
ここで、フローデータは、処理フローに従った部分処理の入出力データを意味し、送信データは、データ処理装置10からデータ処理装置20へ送信されるフローデータを意味する。以下では、送信データを第1の処理結果と適宜表記する。また、データ処理装置10がデータ処理装置20から受信するフローデータを受信データという。この受信データは、データ処理装置20によって実行された第2の部分処理42の結果を示す。以下では、受信データを第2の処理結果と適宜表記する。
フローデータ受信部192は、フロー設定情報に従ってデータ処理装置10によって実行されるべき部分処理の対象となる第2の処理結果を、秘匿化部194を介してデータ処理装置20から受信して、実行制御部140へ送出する。フローデータ受信部192は、第2の処理結果を受信すると、受信したことを伝送制御部193に通知する。
伝送制御部193は、フローデータ受信部192によるデータの受信状況から通信路30が混雑していることが推定される場合に、フローデータ送信部191によるデータの送信を制限する。詳細には、フローデータ受信部192によるデータの受信周期が、フロー設定情報により示される周期と異なる場合、又は過去の一定時間における周期と異なる場合に、伝送制御部193は、通信路30が混雑していると推定する。
伝送制御部193は、フローデータ受信部192がデータを受信した際に、データ処理装置10にデータが到達したことをデータ処理装置20に通知してもよい。また、伝送制御部193は、フローデータ送信部191によって送信されたデータがデータ処理装置20に到達したことの通知をデータ処理装置20に対して要求してもよい。伝送制御部193は、いわゆる輻輳制御、或いはフロー制御を実行してもよい。
秘匿化部194は、通信路30における暗号化通信を実現する。詳細には、秘匿化部194は、フローデータ送信部191から送出されたデータを暗号化して通信路30へ送信し、通信路30から受信したデータを復号してフローデータ受信部192へ送出する。秘匿化部194による暗号化通信の方式は、任意である。
続いて、データ処理装置10によって実行される連携データ処理について、図8〜17を用いて説明する。連携データ処理は、データ処理装置10がデータ処理装置20と連携して処理フローを実行する処理であって、データ処理装置10がプログラムを実行することで開始する。
図8に示されるように、連携データ処理では、データ処理装置10は、フロー設定共有処理を実行する(ステップS1)。フロー設定共有処理は、データ処理装置10,20がフロー設定情報を共有する処理である。このフロー設定共有処理は、請求項の第1通信ステップに対応する。以下、フロー設定共有処理について、図9を用いて説明する。
フロー設定共有処理では、受付部120が、UI部110の操作があるか否かを判定する(ステップS101)。具体的には、受付部120が、処理フローの設定を開始するための操作がUI部110に入力されたか否かを判定する。この操作は、例えば、予め定められたコマンドの実行、又はUI部110の画面上に表示されているオブジェクトの選択である。
UI部110の操作があると判定された場合(ステップS101;Yes)、UI部110が、受付部120の指示に従って設定画面を表示する(ステップS102)。この設定画面は、処理フローの詳細な設定を入力するための画面である。
次に、受付部120は、処理フローの設定を受け付けたか否かを判定する(ステップS103)。具体的には、受付部120は、ステップS102で表示された設定画面への処理フローの入力が完了し、入力された処理フローの設定内容がUI部110から通知されたか否かを判定する。
処理フローの設定を受け付けていないと判定した場合(ステップS103;No)、受付部120は、ステップS103の判定を繰り返して、処理フローの設定を受け付けるまで待機する。一方、処理フローの設定を受け付けたと判定した場合(ステップS103;Yes)、受付部120は、処理フローの設定を示すフロー設定情報を実行制御部140へ送出し、実行制御部140は、設定記憶部151にフロー設定情報を格納する(ステップS104)。
次に、設定情報変換部181は、連携相手のデータ処理装置20でフロー設定情報を扱うデータ形式が、ステップS104で設定記憶部151に格納されたフロー設定情報のデータ形式と異なるか否かを判定する(ステップS105)。
データ形式が異ならないと判定された場合(ステップS105;No)、データ処理装置10による処理は、ステップS107へ移行する。一方、データ形式が異なると判定した場合(ステップS105;Yes)、設定情報変換部181は、設定記憶部151から読み出したフロー設定情報のデータ形式を、データ処理装置20に対応するデータ形式に変換する(ステップS106)。
次に、第1通信部180が、フロー設定情報を連携相手のデータ処理装置20へ送信する(ステップS107)。具体的には、伝送部183が、設定情報変換部181から出力されるフロー設定情報を取得して、取得したフロー設定情報を、秘匿化部184を介してデータ処理装置20へ送信する。これにより、データ処理装置20は、データ処理装置10が有するフロー設定情報と同等の情報を有することとなる。その後、データ処理装置10による処理は、フロー設定共有処理から図8の連携データ処理に戻る。
ステップS101にて、UI部110の操作がないと判定された場合(ステップS101;No)、第1通信部180は、フロー設定情報の送信を連携相手のデータ処理装置20に要求する(ステップS108)。具体的には、伝送部183が、フロー設定情報の送信を指示するデータを生成して、秘匿化部184を介してデータ処理装置20へ送信する。
次に、第1通信部180は、ステップS108の要求に対して、データ処理装置20からの応答があるか否かを判定する(ステップS109)。応答がないと判定された場合(ステップS109;No)、ステップS101以降の処理が繰り返される。一方、応答があると判定された場合(ステップS109;Yes)、第1通信部180が、フロー設定情報を受信する(ステップS110)。具体的には、伝送部183が、ステップS109にて存在すると判定された応答に含まれるフロー設定情報を、秘匿化部184を介して受信する。
次に、設定情報変換部181は、データ処理装置10でフロー設定情報を扱うデータ形式が、ステップS110で受信したフロー設定情報のデータ形式と異なるか否かを判定する(ステップS111)。
データ形式が異ならないと判定された場合(ステップS111;No)、データ処理装置10による処理は、ステップS113へ移行する。一方、データ形式が異なると判定した場合(ステップS111;Yes)、設定情報変換部181は、ステップS110で受信されたフロー設定情報のデータ形式を、実行制御部140に対応するデータ形式に変換する(ステップS112)。
次に、設定情報変換部181は、設定記憶部151にフロー設定情報を格納する(ステップS113)。これにより、データ処理装置10は、データ処理装置20に予め設定されたフロー設定情報を取得して共有することができる。その後、データ処理装置10による処理は、フロー設定共有処理から図8の連携データ処理に戻る。
図8に戻り、ステップS1のフロー設定共有処理に続いて、データ処理装置10は、蓄積データの送受信が処理フローに含まれるか否かを判定する(ステップS2)。具体的には、実行制御部140が、ステップS1にて共有されたフロー設定情報を参照して、データ処理装置10,20の一方に蓄積された蓄積データを他方が読み出す部分処理が処理フローに含まれているか否かを判定する。
図10には、データ処理装置10が蓄積した蓄積データをデータ処理装置20が読み出す部分処理について模式的に示されている。図10に示される場合には、データ処理装置10は、蓄積データをデータ処理装置20に送信する。図11には、データ処理装置20に蓄積された蓄積データをデータ処理装置10が読み出す部分処理について模式的に示されている。図11に示される場合には、データ処理装置10は、蓄積データをデータ処理装置20から受信する。
図8に戻り、蓄積データの送受信が処理フローに含まれると判定された場合(ステップS2;Yes)、データ処理装置10は、蓄積データ共有処理を実行する(ステップS3)。この蓄積データ共有処理は、データ処理装置10,20の一方から他方に蓄積データを伝送することで、蓄積データを共有する処理である。この蓄積データ共有処理について、図12を用いて説明する。
蓄積データ共有処理では、第1通信部180は、蓄積データの受信が処理フローに含まれるか否かを判定する(ステップS301)。具体的には、伝送部183が、設定記憶部151のフロー設定情報を参照して、蓄積データの受信が必要となる部分処理が処理フローに含まれるか否かを判定する。
蓄積データの受信が処理フローに含まれないと判定された場合(ステップS301;No)、データ処理装置10による処理は、ステップS306へ移行する。一方、蓄積データの受信が処理フローに含まれると判定された場合(ステップS301;Yes)、第1通信部180は、蓄積データをデータ処理装置20から受信する(ステップS302)。具体的には、伝送部183が、蓄積データの送信をデータ処理装置20に対して要求することにより、秘匿化部184を介して蓄積データを受信する。
次に、蓄積データ変換部182は、データ処理装置10で蓄積データを扱うデータ形式が、ステップS302で受信した蓄積データのデータ形式と異なるか否かを判定する(ステップS303)。
データ形式が異ならないと判定された場合(ステップS303;No)、データ処理装置10による処理は、ステップS305へ移行する。一方、データ形式が異なると判定した場合(ステップS303;Yes)、蓄積データ変換部182は、ステップS302で受信した蓄積データのデータ形式を、実行制御部140に対応するデータ形式に変換する(ステップS304)。
次に、蓄積データ変換部182は、データ記憶部152に蓄積データを格納する(ステップS305)。これにより、データ処理装置20に予め蓄積されていた蓄積データの共有が完了し、この蓄積データを読み出す部分処理を実行する準備が完了する。
次に、第1通信部180は、蓄積データの送信が処理フローに含まれるか否かを判定する(ステップS306)。具体的には、伝送部183が、設定記憶部151のフロー設定情報を参照して、蓄積データの送信が必要となる部分処理が処理フローに含まれるか否かを判定する。
蓄積データの送信が処理フローに含まれないと判定された場合(ステップS306;No)、データ処理装置10による処理は、蓄積データ共有処理から図8に示される連携データ処理に戻る。一方、蓄積データの送信が処理フローに含まれると判定された場合(ステップS306;Yes)、蓄積データ変換部182は、データ記憶部152から蓄積データを読み出す(ステップS307)。
次に、蓄積データ変換部182は、連携相手のデータ処理装置20で蓄積データを扱う形式が、ステップS307で読み出した蓄積データの形式と異なるか否かを判定する(ステップS308)。
データ形式が異ならないと判定された場合(ステップS308;No)、データ処理装置10による処理は、ステップS310へ移行する。一方、データ形式が異なると判定した場合(ステップS308;Yes)、蓄積データ変換部182は、ステップS307で読み出した蓄積データの形式を、データ処理装置20に対応するデータ形式に変換する(ステップS309)。
次に、第1通信部180が、蓄積データを連携相手のデータ処理装置20へ送信する(ステップS310)。具体的には、伝送部183が、蓄積データ変換部182から出力された蓄積データを取得して、取得した蓄積データを、秘匿化部184を介してデータ処理装置20へ送信する。これにより、データ処理装置20は、データ処理装置10が有する蓄積データと同等の情報を有することとなる。その後、データ処理装置10による処理は、蓄積データ共有処理から図8に示される連携データ処理に戻る。
図8に戻り、ステップS2にて蓄積データの送受信が処理フローに含まれないと判定された場合(ステップS2;No)、又は、蓄積データ共有処理(ステップS3)が完了した場合に、データ処理装置10は、処理フローの開始指示があるか否かを判定する(ステップS4)。具体的には、実行制御部140が、ステップS1にて共有されたフロー設定情報に従った処理フローを開始する旨の指示があるか否かを判定する。この開始指示は、ユーザによって入力される指示であってもよいし、データ処理装置20から送信された指示であってもよいし、予め定められたスケジュールに規定された時刻になったことで発生するトリガーであってもよい。
開始指示がないと判定した場合(ステップS4;No)、データ処理装置10は、ステップS4の判定を繰り返して、開始指示があるまで待機する。一方、開始指示があると判定した場合(ステップS4;Yes)、実行制御部140は、フローデータの送信が処理フローに含まれるか否かを判定する(ステップS5)。具体的には、実行制御部140は、設定記憶部151のフロー設定情報を参照して、データ処理装置10にて実行された部分処理の結果をデータ処理装置20にて実行される部分処理の入力とすることが処理フローに含まれているか否かを判定する。
フローデータの送信が処理フローに含まれると判定された場合(ステップS5:Yes)、実行制御部140は、フローデータ送信部191に送信処理を開始させる(ステップS6)。この送信処理は、連携データ処理とは並列に実行される。この送信処理は、請求項の第2通信ステップに対応する。以下、送信処理について、図13を用いて説明する。
送信処理では、フローデータ送信部191が、処理部130による部分処理の結果である第1の処理結果を実行制御部140から取得したか否かを判定する(ステップS601)。第1の処理結果を取得していないと判定した場合(ステップS601;No)、フローデータ送信部191は、ステップS601の判定を繰り返して、第1の処理結果を取得するまで待機する。一方、第1の処理結果を取得したと判定した場合(ステップS601;Yes)、フローデータ送信部191は、連携相手のデータ処理装置20でフローデータを扱うデータ形式が、ステップS601で取得した第1の処理結果のデータ形式と異なるか否かを判定する(ステップS602)。
データ形式が異ならないと判定された場合(ステップS602;No)、フローデータ送信部191による処理は、ステップS604へ移行する。一方、データ形式が異なると判定した場合(ステップS602;Yes)、フローデータ送信部191は、ステップS601で取得した第1の処理結果のデータ形式を、データ処理装置20に対応するデータ形式に変換する(ステップS603)。
次に、フローデータ送信部191は、伝送制御部193により第1の処理結果の送信が制限されているか否かを判定する(ステップS604)。送信が制限されていると判定した場合(ステップS604;Yes)、フローデータ送信部191は、ステップS604の判定を繰り返して、送信の制限が解除されるまで待機する。一方、送信が制限されていないと判定した場合(ステップS604;No)、フローデータ送信部191は、秘匿化部194に第1の処理結果を送出して、秘匿化部194は、第1の処理結果を暗号化する(ステップS605)。
次に、第2通信部190は、ステップS605にて暗号化された第1の処理結果を、連携相手のデータ処理装置20へ送信する(ステップS606)。その後、ステップS601以降の処理が繰り返される。これにより、実行制御部140から第2通信部190へ送出されたフローデータが、データ処理装置20へ順次送信される。
図8に戻り、ステップS5の判定が否定された場合(ステップS5;No)、又はステップS6の処理が完了した場合に、データ処理装置10は、実行制御処理を開始する(ステップS7)。実行制御処理は、実行制御部140が、フロー設定情報に従って処理部130、収集処理部160及び接続部170間でデータを伝送させる処理であって、連携データ処理とは並列に実行される。この実行制御処理は、請求項の実行ステップに対応する。以下、実行制御処理について、図14を用いて説明する。
実行制御処理では、実行制御部140が、収集処理部160及び処理部130を起動して部分処理を開始させる(ステップS701)。具体的には、実行制御部140が、設定記憶部151のフロー設定情報を参照して、処理フローに含まれる部分処理を実行する収集処理部160及び処理部130を実現するプログラムを特定し、特定したプログラムを起動する。これにより、収集処理部160及び処理部130が部分処理を実行可能な状態になる。
次に、実行制御部140は、フローデータの入力があるか否かを判定する(ステップS702)。具体的には、実行制御部140は、処理フローに従ったデータが、処理部130、収集処理部160及び接続部170のいずれかから実行制御部140に対して送出されたか否かを判定する。
図15には、フローデータ61が例示されている。フローデータ61は、フローデータに付されるデータラベルと、このフローデータに対応する対象データが収集された時刻を示すタイムスタンプと、データの値と、を関連付けるテーブルである。ここで、対象データは、処理フローが施される対象のデータを意味し、機器31から収集されるデータに相当する。データラベルは、図2中の矢印を識別するためのラベルに相当する。例えば、図2中の部分処理411から出力されて部分処理412に入力されるデータには、「#1」というデータラベルが付される。タイムスタンプは、フローデータを得るための部分処理が施された対象データの収集時刻を示す。例えば、図2において、10時42分56秒に部分処理411の実行により収集された対象データには、部分処理411,412,421が順に施され、これらの部分処理の出力であるフローデータにはいずれも「10:42:56」というタイムスタンプが付される。データの値は、部分処理の結果を示す。
図14に戻り、ステップS702にてフローデータの入力がないと判定した場合(ステップS702;No)、実行制御部140は、ステップS702の判定を繰り返して、フローデータが入力されるまで待機する。一方、フローデータの入力があると判定した場合(ステップS702;Yes)、実行制御部140は、ステップS702で入力されたと判断されたフローデータを、フロー設定情報に従って次の部分処理を実行する処理部130、収集処理部160、又は連携相手のデータ処理装置20に送出する(ステップS703)。例えば、図2に示される処理フローが実行される場合において、部分処理411を実行する収集処理部160からフローデータが入力されたときに、実行制御部140は、このフローデータを、部分処理412を実行する処理部130に送出する。また、この処理部130からフローデータが入力されたときに、実行制御部140は、このフローデータを第2通信部190に送出することにより、部分処理421を実行するデータ処理装置20へ送信する。
図14に戻り、ステップS703に続いて、実行制御部140は、ステップS702以降の処理を繰り返す。これにより、実行制御部140は、フロー設定情報に従って一連の部分処理を含む処理フローのうち、データ処理装置10によって実行されるべき第1の部分処理を処理部130及び収集処理部160に繰り返し実行させることができる。
続いて、ステップS701で開始される部分処理について、図16を用いて説明する。この部分処理は、処理部130及び収集処理部160によって実現され、実行制御処理とは並列に実行される。以下では、処理部130が部分処理を実行する例を中心に説明する。
部分処理では、処理部130は、入力データがあるか否かを判定する(ステップS711)。具体的には、処理部130は、実行制御部140から送出されたデータが入力されたか否かを判定する。ただし、部分処理が収集処理部160によって実行される場合においては、収集処理部160が、機器31から出力されたデータがあるか否かを判定する。
入力データがないと判定した場合(ステップS711;No)、処理部130は、ステップS711の判定を繰り返して、入力データがあるまで待機する。一方、入力データがあると判定した場合(ステップS711;Yes)、処理部130は、部分処理の内容を実行して、部分処理の結果を示す出力データを実行制御部140に出力する(ステップS712)。その後、処理部130は、ステップS711以降の処理を繰り返す。
図8に戻り、ステップS7に続いて、実行制御部140は、フローデータの受信が処理フローに含まれるか否かを判定する(ステップS8)。具体的には、実行制御部140は、設定記憶部151のフロー設定情報を参照して、データ処理装置20にて実行された第2の部分処理の結果を、データ処理装置10にて実行される第1の部分処理の入力とすることが処理フローに含まれているか否かを判定する。
フローデータの受信が処理フローに含まれると判定された場合(ステップS8;Yes)、実行制御部140は、フローデータ受信部192に受信処理を開始させる(ステップS9)。この受信処理は、連携データ処理とは並列に実行される。この受信処理は、請求項の第2通信ステップに対応する。以下、受信処理について、図17を用いて説明する。
受信処理では、第2通信部190が、データ処理装置10で実行されるべき第1の部分処理の対象となる第2の処理結果をデータ処理装置20から受信したか否かを判定する(ステップS901)。第2の処理結果を受信していないと判定した場合(ステップS901;No)、第2通信部190は、ステップS901の判定を繰り返して、第2の処理結果を受信するまで待機する。一方、第2の処理結果を受信したと判定された場合(ステップS901;Yes)、秘匿化部194は、第2の処理結果を復号する(ステップS902)。
次に、フローデータ受信部192は、データ処理装置10でフローデータを扱うデータ形式が、ステップS901で受信した第2の処理結果のデータ形式と異なるか否かを判定する(ステップS903)。
データ形式が異ならないと判定された場合(ステップS903;No)、フローデータ受信部192による処理は、ステップS905へ移行する。一方、データ形式が異なると判定した場合(ステップS903;Yes)、フローデータ受信部192は、ステップS901で受信した第2の処理結果のデータ形式を、実行制御部140に対応するデータ形式に変換する(ステップS904)。
次に、フローデータ受信部192は、第2の処理結果を受信したことを伝送制御部193に通知する(ステップS905)。これにより、伝送制御部193は、通信路30の混雑状態を推定することができる。
次に、フローデータ受信部192は、第2の処理結果を実行制御部140へ送出する(ステップS906)。その後、ステップS901以降の処理が繰り返される。これにより、データ処理装置20から第2通信部190へ伝送された第2の処理結果が、実行制御部140へ順次入力される。
図8に戻り、ステップS8にてフローデータの受信が処理フローに含まれないと判定された場合(ステップS8;No)、又はステップS9の処理が完了した場合に、データ処理装置10は、処理フローの終了指示があるか否かを判定する(ステップS10)。この終了指示は、ユーザによって入力される指示であってもよいし、データ処理装置20から送信された指示であってもよいし、予め定められたスケジュールに規定された時刻になったことで発生するトリガーであってもよい。
終了指示がないと判定した場合(ステップS10;No)、データ処理装置10は、ステップS10の判定を繰り返して、終了指示があるまで待機する。一方、終了指示があると判定した場合(ステップS10;Yes)、データ処理装置10は、連携データ処理を終了する。具体的には、データ処理装置10は、ステップS6で開始した送信処理、ステップS7で開始した実行制御処理、この実行制御処理で開始された部分処理、及びステップS9で開始された受信処理を、終了する。
以上、説明したように、データ処理装置は、処理フローを実行するためのフロー設定情報を他のデータ処理装置と共有するための通信をする第1通信手段と、フロー設定情報に従って部分処理を処理手段に実行させる実行制御手段と、を備える。このため、処理フローにおける部分処理を複数のデータ処理装置10,20によって実行することができる。すなわち、複数の装置を連携させて処理フローを実行することができる。
データ処理装置10によれば、実行制御部140が、フロー設定情報に従ってデータ処理装置10によって実行されるべき第1の部分処理を処理部130及び収集処理部160に実行させて、第2通信部が、第1の部分処理の対象となる第2の処理結果のデータ処理装置20からの受信及び実行制御部140への送出と、第1の処理結果の実行制御部140からの取得及びデータ処理装置20への送信と、を実行する。このため、データ処理装置10によって実行される第1の部分処理と、データ処理装置20によって実行される第2の部分処理とを、第2通信部190による通信を介して続けて実行することができる。これにより、データ処理装置10,20を連携させて処理フローを実行することができる。
したがって、処理フローの設計自由度が高くなる。例えば、データ処理装置10,20が異なる位置に設置される場合には、これらのデータ処理装置10,20を活用しつつ、これらの装置による部分処理をつなげた処理フローを設計することができる。また、データ処理装置10,20は、同等の構成を有するが、ハードウェア性能及び処理部130に対応するソフトウェアの構成が異なる場合がある。このため、データ処理装置10,20いずれか一方での実行が適した部分処理があると考えられる。このような部分処理がある場合にも、データ処理装置10,20の一方での実行が適した部分処理と、他方での実行が適した部分処理とを組み合わせた処理フローを設計することができる。
また、フロー設定情報は、処理対象の対象データに施される一連の部分処理を含む処理フローであって、データ処理装置10,20それぞれによって実行される部分処理を含む処理フローの設定を示す情報である。第1通信部180は、このフロー設定情報をデータ処理装置20と共有するための通信をした。これにより、データ処理装置10,20間でフロー設定情報が共有されて、処理フローを反復して円滑に実行することができる。
また、実行制御部140は、フロー設定情報に従ってデータ処理装置10によって実行されるべき第1の部分処理を処理部130及び収集処理部160に実行させた。これにより、実行制御部140は、部分処理の入出力データを中継し、処理部130及び収集処理部160のインタフェースとして機能する。このため、処理部130及び収集処理部160の設計が容易になる。ひいては、ユーザが任意の処理フローを設定することが容易になる。
また、受付部120が、処理フローの設定を受け付けて、設定記憶部151が、受付部120によって受け付けられた設定を示すフロー設定情報を記憶し、第1通信部180が、設定記憶部151に記憶されるフロー設定情報をデータ処理装置20へ送信した。これにより、データ処理装置10に入力された処理フローの設定をデータ処理装置20と共有することができる。
また、受付部120によって処理フローの設定が受け付けられない場合においては、第1通信部180が、フロー設定情報をデータ処理装置20から受信し、設定記憶部151が、第1通信部180によって受信されたフロー設定情報を記憶し、実行制御部140は、設定記憶部151に記憶されるフロー設定情報に従って第1の部分処理を処理部130及び収集処理部160に実行させた。これにより、ユーザがデータ処理装置20に処理フローの設定を入力した場合においても、データ処理装置10は、この処理フローの設定を示すフロー設定情報をデータ処理装置20と共有することができる。
また、処理部130及び収集処理部160によって実行される第1の部分処理は、機器31から出力される対象データを収集することを含み、第2通信部190は、処理部130及び収集処理部160による第1の部分処理の結果である第1の処理結果を実行制御部140から取得してデータ処理装置20へ送信した。これにより、データ処理装置10が収集した対象データに施す第1の部分処理とデータ処理装置20により実行される第2の部分処理とを接続し、続けて実行することができる。
また、第2通信部190は、第2の処理結果をデータ処理装置20から受信して実行制御部140へ送出した。実行制御部140は、第2の処理結果に対してフロー設定情報に従って第1の部分処理を処理部130及び収集処理部160に実行させた。そして、処理部130及び収集処理部160によって実行される第1の部分処理は、この第1の部分処理の結果を示す出力情報をデータ処理装置10の外部に出力することを含んでいた。このため、データ処理装置20による第2の部分処理の結果を示すデータに対してデータ処理装置10がさらに第1の部分処理を施した結果を出力することができる。
また、第1通信部180は、フロー設定情報のデータ形式をデータ処理装置20に対応するデータ形式に変換して、データ形式を変換したフロー設定情報をデータ処理装置20に送信した。これにより、データ処理装置10,20でフロー設定情報を扱うためのデータ形式が異なる場合であっても、フロー設定情報を共有することができる。
また、第2通信部190は、第2の処理結果を受信して、第2の処理結果のデータ形式を実行制御部140に対応するデータ形式に変換し、データ形式を変換した第2の処理結果を実行制御部140へ送出した。これにより、データ処理装置10,20でフローデータを扱うためのデータ形式が異なる場合であっても、フローデータを伝送して処理フローを実行することができる。
また、第1通信部180は、フロー設定情報をデータ処理装置20と共有するための暗号化通信を実現する秘匿化部184を有する。また、第2通信部190は、秘匿化部184と同等の秘匿化部194を有し、第2の処理結果のデータ処理装置20からの受信、復号及び実行制御部140への送出と、第1の処理結果の実行制御部140からの取得、暗号化及びデータ処理装置20への送信と、を実行した。これにより、通信路30上における通信内容の漏洩、盗聴及び改竄を防止することができる。
また、処理フローは、データ処理装置20に蓄積された蓄積データに対する第1の部分処理を含み、第1通信部180は、蓄積データを受信してデータ形式を実行制御部140に対応するデータ形式に変換し、データ形式を変換した蓄積データをデータ記憶部152に格納した。そして、実行制御部140は、データ記憶部152に記憶される蓄積データに対してフロー設定情報に従って第1の部分処理を処理部130及び収集処理部160に実行させた。これにより、データ処理装置20の蓄積データをデータ処理装置10による第1の部分処理の対象として、処理フローを実行することができる。
以上、本発明の実施の形態について説明したが、本発明は上記実施の形態によって限定されるものではない。
例えば、プラットフォーム50は、処理フローを実行するための動作環境として提供されていた。このため、図18に例示されるように、UI部110に代えて外部の端末80をプラットフォーム50に接続し、複数の処理部130のうち一部又は全部の処理部130を有する外部の処理装置131をプラットフォーム50に接続しても、処理フローを実行することができる。
さらに、プラットフォーム50は、処理フローの設定に応じて、データ処理装置10がデータ処理装置20と連携することなく単独で処理フローを実行するための動作環境として提供されてもよい。
また、上記実施の形態では、データ処理装置10,20のいずれにもユーザが処理フローの設定を入力する例について説明したが、これには限定されない。例えば、データ処理装置10,20のいずれか一方を、処理フローの設定を入力するための装置として定めてもよい。データ処理装置10に処理フローの設定が入力される場合には、データ処理装置10がデータ処理装置20からフロー設定情報を受信するための構成は省略されてもよい。また、データ処理装置20に処理フローの設定が入力される場合には、データ処理装置10がデータ処理装置20へフロー設定情報を送信するための構成は省略されてもよい。データ処理装置10は、フロー設定情報の送信及び受信の少なくとも一方を実行すればよい。
また、上記実施の形態では、データ処理装置10がフローデータの送信及び受信の双方を実行可能な例について説明したが、これには限定されない。データ処理装置10がフローデータを受信する専用の装置である場合には、フローデータを送信するための構成が省略されてもよい。また、データ処理装置10がフローデータを送信する専用の装置である場合には、フローデータを受信するための構成が省略されてもよい。ただし、データ処理装置10は、フローデータの送信及び受信の双方を実行してもよい。例えば、図2に示される処理フローのうち部分処理412のみをデータ処理装置10が実行してもよい。データ処理装置10は、フローデータの送信と受信との少なくとも一方を実行すればよい。
また、処理フローを構成する部分処理は、ユーザによって任意に組み合わされる。例えば、図2に示される処理フロー40を、第1の部分処理41が部分処理411,422を含み、第2の部分処理42が部分処理412,421を含むものに変更してもよい。また、部分処理の内容もユーザによって任意に設定される。例えば、データ処理装置10がデータの収集及び第1の加工を含む第1の部分処理41を実行し、続いてデータ処理装置20が第2の加工及び診断を含む第2の部分処理42を実行してもよい。ここで、第1の加工と第2の加工は、異なる処理であってもよいし、同一の処理であってもよい。すなわち、同等の部分処理が異なる装置で実行されてもよい。
また、データ処理装置10,20でデータを扱うデータ形式が同一である場合、又はこのデータ形式に互換性がある場合には、設定情報変換部181を省略してもよいし、蓄積データ変換部182を省略してもよい。
また、通信路30が専用線である場合には、秘匿化部184,194を省略してもよい。また、説明の理解を容易にするため、第1通信部180の秘匿化部184と第2通信部190の秘匿化部194とを別途の構成として説明したが、1つの秘匿化部が、第1通信部180及び第2通信部190による外部との通信を暗号化してもよい。
また、通信路30の通信速度がフローデータの送受信で発生するデータ量より大きい場合には、伝送制御部193を省略してもよい。
また、上記実施の形態では、2つのデータ処理装置10,20が連携して処理フローを実行する場合について説明したが、3つ以上の装置が連携して処理フローを実行してもよい。
また、データ処理装置10がフロー設定情報を共有するための通信相手と、フローデータを送受信するための通信相手とは、異なってもよい。例えば、図19に示されるように、データ処理装置10,20にフロー設定情報を配信するフロー設定共有サーバ21が通信路30に接続され、データ処理装置10は、フロー設定共有サーバ21と通信することで、データ処理装置20とフロー設定情報を共有してもよい。
また、上記実施の形態では、説明の理解を容易にするため、図2に示された簡潔な処理フローを例示したが、処理フローはこれに限定されない。図20には、処理フロー40の他の例が示されている。図20の処理フロー40は、データ処理装置10によって実行される第1の部分処理41と、データ処理装置20によって実行される第2の部分処理42と、他の装置によって実行される第3の部分処理43と、を含む。第1の部分処理41は、部分処理411,412,414を要素処理として含み、第2の部分処理42は、部分処理421,422を要素処理として含み、第3の部分処理43は、431,432,433を要素処理として含む。この処理フロー40は、部分処理411,431の出力が部分処理414の入力となる集約部分と、部分処理421の出力が部分処理422,433に入力される分岐部分とを含んでいる。
また、処理フローは、3つより多くのデータ処理装置によって実行される部分処理を含んでいてもよい。また、データ処理装置とプラットフォームとは、一対一に対応していなくてもよい。例えば、1つのデータ処理装置が複数のプラットフォームを有していてもよい。
また、上記実施の形態では、収集処理部160が出力処理モジュール161を有していたが、これには限定されない。収集処理部160とは異なる構成として、出力情報を出力するユニットを設けてもよい。
また、上記実施の形態では、処理フローの対象となる対象データは、機器31から出力されて受信されたデータであったが、これには限定されない。例えば、機器31から出力された対象データを記憶装置に格納しておいて、この記憶装置から対象データを定期的に読み出す部分処理を、処理フローの起点としてもよい。
また、設定記憶部151及びデータ記憶部152を省略してデータ処理装置10を構成し、実行制御部140は、外部のサーバ装置に記憶されたフロー設定情報及び蓄積データを読み出してもよい。
また、上記実施の形態では、実行制御部140が、フロー設定情報に従った順序で処理部130及び収集処理部160に部分処理を実行させることを説明した。この説明は、あるタイミングで機器から収集処理部160が取得したデータに関するものであって、繰り返し取得されたデータに関するものについてはこの限りでない。具体的には、異なるタイミングで取得されたデータについての処理部130による部分処理の実行順序は、必ずしも処理フローに規定された順序になるとは限らない。例えば、収集処理部160が時刻t1にデータD1を取得して時刻t2にデータD2を取得し、これらデータD1,D2に加工及び診断が施される場合において、データD1の加工、当該加工の結果についての診断、データD2の加工、当該加工の結果についての診断、という順で処理が実行されてもよいし、データD1の加工、データD2の加工、データD1の加工結果に対する診断、データD2の加工結果に対する診断、という順序で処理が実行されてもよい。
また、データ処理装置10の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
例えば、プロセッサ11によって実行されるプログラムP1を、コンピュータ読み取り可能な非一時的な記録媒体に格納して配布し、そのプログラムP1をコンピュータにインストールすることにより、上述の処理を実行する装置を構成することができる。このような記録媒体としては、例えばフレキシブルディスク、CD−ROM(Compact Disc Read−Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto−Optical Disc)が考えられる。
また、プログラムP1をインターネットに代表される通信ネットワーク上のサーバ装置が有するディスク装置に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロードするようにしてもよい。
また、通信ネットワークを介してプログラムP1を転送しながら起動実行することによっても、上述の処理を達成することができる。
さらに、プログラムP1の全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムを実行することによっても、上述の処理を達成することができる。
なお、上述の機能を、OS(Operating System)が分担して実現する場合又はOSとアプリケーションとの協働により実現する場合等には、OS以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロードしてもよい。
また、データ処理装置10の機能を実現する手段は、ソフトウェアに限られず、その一部又は全部を、回路を含む専用のハードウェアによって実現してもよい。
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施の形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
本発明は、部分処理を組み合わせた処理フローの実行に適している。
10 データ処理装置、 11 プロセッサ、 12 主記憶部、 13 補助記憶部、 14 入力部、 15 出力部、 16 通信部、 17 内部バス、 100 データ処理システム、 110 UI部、 120 受付部、 130 処理部、 131 処理装置、 140 実行制御部、 150 記憶部、 151 設定記憶部、 152 データ記憶部、 160 収集処理部、 161 出力処理モジュール、 170 接続部、 180 第1通信部、 181 設定情報変換部、 182 蓄積データ変換部、 183 伝送部、 184,194 秘匿化部、 190 第2通信部、 191 フローデータ送信部、 192 フローデータ受信部、 193 伝送制御部、 1511,1512 フロー設定情報、 20 データ処理装置、 21 フロー設定共有サーバ、 30 通信路、 31,32 機器、 40 処理フロー、 41 第1の部分処理、 42 第2の部分処理、 43 第3の部分処理、 411,412,414,421,422,431,433 部分処理、 50 プラットフォーム、 61 フローデータ、 80 端末、 P1 プログラム。
上記目的を達成するため、本発明のデータ処理装置は、他のデータ処理装置に接続されるデータ処理装置であって、第1の部分処理と第2の部分処理とを含む処理フローの設定を受け付ける受付手段と、受付手段によって受け付けられた設定を示すフロー設定情報を記憶する設定記憶手段と、設定記憶手段に記憶されるフロー設定情報を、他のデータ処理装置へ送信することで他のデータ処理装置と共有する第1通信手段と、フロー設定情報に従って第1の部分処理を処理手段に実行させる実行制御手段と、第1の部分処理が実行された第1の処理結果の他のデータ処理装置への送信と、第2の部分処理が他のデータ処理装置によって実行された第2の処理結果の受信と、の少なくともいずれか一方を実行する第2通信手段と、を備える。

Claims (14)

  1. 他のデータ処理装置に接続されるデータ処理装置であって、
    処理フローに含まれる第1の部分処理と第2の部分処理とを実行するためのフロー設定情報を前記他のデータ処理装置と共有するための第1通信手段と、
    前記フロー設定情報に従って前記第1の部分処理を処理手段に実行させる実行制御手段と、
    前記第1の部分処理が実行された第1の処理結果の前記他のデータ処理装置への送信と、前記第2の部分処理が前記他のデータ処理装置によって実行された第2の処理結果の受信と、の少なくともいずれか一方を実行する第2通信手段と、
    を備えるデータ処理装置。
  2. 前記処理フローの設定を受け付ける受付手段と、
    前記受付手段によって受け付けられた設定を示す前記フロー設定情報を記憶する設定記憶手段と、をさらに備え、
    前記第1通信手段は、前記設定記憶手段に記憶される前記フロー設定情報を前記他のデータ処理装置へ送信する、
    請求項1に記載のデータ処理装置。
  3. 前記フロー設定情報を記憶する設定記憶手段、をさらに備え、
    前記第1通信手段は、前記フロー設定情報を前記他のデータ処理装置から受信し、
    前記設定記憶手段は、前記第1通信手段によって受信された前記フロー設定情報を記憶し、
    前記実行制御手段は、前記設定記憶手段に記憶される前記フロー設定情報に従って前記第1の部分処理を前記処理手段に実行させる、
    請求項1に記載のデータ処理装置。
  4. 前記第2通信手段は、前記第1の処理結果を前記他のデータ処理装置に送信する、
    請求項1から3のいずれか一項に記載のデータ処理装置。
  5. 前記第1の部分処理は、機器から出力されるデータを収集することを含み、
    前記第2通信手段は、前記第1の処理結果を前記実行制御手段から取得して前記他のデータ処理装置へ送信する、
    請求項1から4のいずれか一項に記載のデータ処理装置。
  6. 前記第2通信手段は、前記第2の処理結果を前記他のデータ処理装置から受信して前記実行制御手段へ送出し、
    前記実行制御手段は、前記第2の処理結果に対して前記フロー設定情報に従って前記第1の部分処理を前記処理手段に実行させ、
    前記処理手段によって実行される前記第1の部分処理は、該第1の部分処理の結果を示す前記第1の処理結果をデータ処理装置の外部に出力することを含む、
    請求項1から5のいずれか一項に記載のデータ処理装置。
  7. 前記第1通信手段は、前記フロー設定情報の形式を前記他のデータ処理装置に対応する形式に変換して、形式を変換した前記フロー設定情報を前記他のデータ処理装置へ送信する、
    請求項1又は2に記載のデータ処理装置。
  8. 前記第2通信手段は、前記第2の処理結果を受信して、受信した前記第2の処理結果の形式を前記実行制御手段に対応する形式に変換し、形式を変換した前記第2の処理結果を前記実行制御手段へ送出する、
    請求項1から7のいずれか一項に記載のデータ処理装置。
  9. 前記第1通信手段は、前記フロー設定情報を前記他のデータ処理装置と共有するための暗号化通信をする、
    請求項1から8のいずれか一項に記載のデータ処理装置。
  10. 前記第2通信手段は、前記第2の処理結果の前記他のデータ処理装置からの受信、復号及び前記実行制御手段への送出と、前記第1の処理結果の前記実行制御手段から取得、暗号化及び前記他のデータ処理装置への送信と、の少なくとも一方を実行する、
    請求項1から9のいずれか一項に記載のデータ処理装置。
  11. 前記処理フローは、前記他のデータ処理装置に蓄積された蓄積データに対して実行される前記第1の部分処理を含み、
    前記第1通信手段は、前記蓄積データを受信して該蓄積データの形式を前記実行制御手段に対応する形式に変換し、形式を変換した前記蓄積データをデータ記憶手段に格納し、
    前記実行制御手段は、前記データ記憶手段に記憶される前記蓄積データに対して前記フロー設定情報に従って前記第1の部分処理を前記処理手段に実行させる、
    請求項1から10のいずれか一項に記載のデータ処理装置。
  12. 請求項1から11のいずれか一項に記載のデータ処理装置を複数備えるデータ処理システム。
  13. 他のデータ処理装置に接続されるデータ処理装置によって実行されるデータ処理方法であって、
    処理フローに含まれる第1の部分処理と第2の部分処理とを実行するためのフロー設定情報を前記他のデータ処理装置と共有するための通信をする第1通信ステップと、
    前記フロー設定情報に従って前記第1の部分処理を実行する実行ステップと、
    前記第1の部分処理が実行された第1の処理結果の前記他のデータ処理装置への送信と、前記第2の部分処理が前記他のデータ処理装置によって実行された第2の処理結果の受信と、の少なくともいずれか一方を実行する第2通信ステップと、
    を含むデータ処理方法。
  14. データ処理装置に接続されるコンピュータに、
    処理フローに含まれる第1の部分処理と第2の部分処理とを実行するためのフロー設定情報を前記データ処理装置と共有するための通信をして、
    前記フロー設定情報に従って前記第1の部分処理を実行し、
    前記第1の部分処理が実行された第1の処理結果の前記データ処理装置への送信と、前記第2の部分処理が前記データ処理装置によって実行された第2の処理結果の受信と、の少なくともいずれか一方を実行する、
    ことを実行させるためのプログラム。
JP2019546422A 2018-06-21 2018-06-21 データ処理装置、データ処理システム、データ処理方法及びプログラム Active JP6644202B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2018/023701 WO2019244312A1 (ja) 2018-06-21 2018-06-21 データ処理装置、データ処理システム、データ処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP6644202B1 JP6644202B1 (ja) 2020-02-12
JPWO2019244312A1 true JPWO2019244312A1 (ja) 2020-06-25

Family

ID=68983340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019546422A Active JP6644202B1 (ja) 2018-06-21 2018-06-21 データ処理装置、データ処理システム、データ処理方法及びプログラム

Country Status (6)

Country Link
US (1) US11157333B2 (ja)
JP (1) JP6644202B1 (ja)
CN (1) CN112313624A (ja)
DE (1) DE112018007559T5 (ja)
TW (1) TW202002592A (ja)
WO (1) WO2019244312A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3595267B1 (de) * 2018-07-11 2020-06-17 Siemens Aktiengesellschaft Verfahren, vorrichtungen und system zum datenaustausch zwischen einem verteilten datenbanksystem und geräten
JP6938065B1 (ja) 2020-04-24 2021-09-22 株式会社L&I 情報処理システムおよびプログラム
CN111899498A (zh) * 2020-08-26 2020-11-06 艾聚达信息技术(苏州)有限公司 信号传输装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004062574A (ja) 2002-07-30 2004-02-26 Sharp Corp アウトソーシング先工場の生産管理および監視システム
JP4479220B2 (ja) 2002-11-06 2010-06-09 三菱電機株式会社 生産設備用制御装置、生産設備制御システムおよび生産設備用制御装置による生産設備の制御方法
CN101500257A (zh) * 2008-01-31 2009-08-05 大唐移动通信设备有限公司 一种业务数据处理装置
US20100057826A1 (en) 2008-08-29 2010-03-04 Weihsiung William Chow Distributed Workflow Process Over a Network
US8542823B1 (en) * 2009-06-18 2013-09-24 Amazon Technologies, Inc. Partial file encryption
JP5842337B2 (ja) 2011-02-15 2016-01-13 株式会社リコー 情報処理システム、情報処理装置、情報処理方法、情報処理プログラム及び記録媒体
CN104866936A (zh) 2014-02-24 2015-08-26 上海宝钢国际经济贸易有限公司 跨地域跨系统的柔性业务协同管理方法
US20150261721A1 (en) * 2014-03-13 2015-09-17 Lantiq Deutschland Gmbh Flow control between processing devices
CN105373498B (zh) * 2015-10-09 2018-04-06 上海瀚之友信息技术服务有限公司 一种数据处理系统及方法
JP6140351B1 (ja) 2016-10-31 2017-05-31 ファナック株式会社 複数の機械と相互通信を行う機械システム
CN107203626B (zh) * 2017-05-27 2021-07-13 网宿科技股份有限公司 一种业务流程管理方法及系统
CA3017375C (en) * 2018-09-10 2024-02-13 Avigilon Coporation Secured multi-process architecture

Also Published As

Publication number Publication date
US11157333B2 (en) 2021-10-26
DE112018007559T5 (de) 2021-02-25
TW202002592A (zh) 2020-01-01
JP6644202B1 (ja) 2020-02-12
US20210255906A1 (en) 2021-08-19
CN112313624A (zh) 2021-02-02
WO2019244312A1 (ja) 2019-12-26

Similar Documents

Publication Publication Date Title
JP6870568B2 (ja) 通信システム、制御装置、設定装置、設定方法およびプログラム
JP6644202B1 (ja) データ処理装置、データ処理システム、データ処理方法及びプログラム
JP5069327B2 (ja) 無線lan中継装置、無線通信システム、無線lan中継装置の制御方法
WO2010080824A1 (en) System and method for remote monitoring and control of field device
JP6608572B1 (ja) データ処理装置、データ処理システム、データ処理方法及びプログラム
JP2024510658A (ja) マルチソースデータのデータ処理方法、装置、電子機器、及び記憶媒体
TWI525408B (zh) 可程式邏輯控制器
JP6309823B2 (ja) 認証システム、認証方法、プログラム
CN114510730B (zh) 位置隐私保护的多机器人分布式围捕方法、设备与介质
JP6878697B2 (ja) データ処理装置、データ処理方法およびプログラム
WO2019198221A1 (ja) データ処理装置、データ処理方法及びプログラム
JP6861895B1 (ja) データ処理装置、データ処理システム、データ処理方法およびプログラム
JP6512751B2 (ja) 画像処理装置、及び外部装置
JP2005032184A (ja) ソフトウェア提供方法及びシステム
CN111742298A (zh) 用于互连机器人的方法
JP2019160082A (ja) システムおよびシステムにおける方法
JP6451080B2 (ja) 情報管理システム、情報処理装置およびプログラム
JP6854491B2 (ja) ファイル転送システム、ファイル転送方法およびプログラム
US20230412369A1 (en) Communication system, information processing device, information processing method, and computer program product
JP6608059B2 (ja) ネットワークシステム、サーバ、情報処理方法、通信端末およびプログラム
KR101943796B1 (ko) 전력 계통 기기 제공 시스템 및 제공 방법
JP2010191600A (ja) 分散データ収集システム及び分散データ収集方法
JP2021019293A (ja) 通信システム、電子機器、通信管理方法、及びプログラム
JP2007011966A (ja) カード状端末、中継機器および位置情報提供装置
JP2009015488A (ja) 分散アプリケーションシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190826

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190826

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190826

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190917

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200107

R150 Certificate of patent or registration of utility model

Ref document number: 6644202

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250