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

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

Info

Publication number
JPWO2020234942A1
JPWO2020234942A1 JP2020519817A JP2020519817A JPWO2020234942A1 JP WO2020234942 A1 JPWO2020234942 A1 JP WO2020234942A1 JP 2020519817 A JP2020519817 A JP 2020519817A JP 2020519817 A JP2020519817 A JP 2020519817A JP WO2020234942 A1 JPWO2020234942 A1 JP WO2020234942A1
Authority
JP
Japan
Prior art keywords
data processing
data
unit
processing device
flow
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
JP2020519817A
Other languages
English (en)
Other versions
JP6861895B1 (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 JP6861895B1 publication Critical patent/JP6861895B1/ja
Publication of JPWO2020234942A1 publication Critical patent/JPWO2020234942A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • 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/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] 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
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31094Data exchange between modules, cells, devices, processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31213Synchronization of servers in network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

データ処理装置(10)は、他のデータ処理装置(20)に接続され、機器(31,32)からデータを収集するデータ収集部(150)と、入力データを処理するデータ処理部(120)と、他のデータ処理装置(20)から提供されたデータをデータ収集部(150)またはデータ処理部(120)に提供し、データ収集部(150)で収集またはデータ処理部(120)で処理されたデータを他のデータ処理装置(20)に提供する連携処理部(160)と、予め設定されたデータ処理フローの設定情報に基づき、データ収集部(150)によるデータ収集処理、データ処理部(120)によるデータの処理、および連携処理部(160)による他のデータ処理装置(20)とのデータの授受の処理の制御を行う実行制御部(130)と、を備える。

Description

本発明は、データ処理装置、データ処理システム、データ処理方法およびプログラムに関する。
ファクトリーオートメーションの分野において、クラウドサーバと、クラウドサーバよりも工場に近いエッジと呼ばれる領域に分散配置されたデータ処理装置によりデータを収集し解析している。エッジ領域では、製造現場の生産機械、センサ、駆動機器等のFA(Factory Automation)機器からデータを収集し、収集したデータについてデータ処理フローにて設定された順序で加工、診断等の一連のデータ処理を実行している。
一方、特許文献1には、複数のタスクをネットワークで接続された複数の演算器に割り当てて分散処理を行うリアルタイム分散処理システムが開示されている。
特開2002−259147号公報
特許文献1に示すように、分散処理自体は公知であるが、エッジ領域におけるデータ処理装置がデータ処理フローを分散処理することについては、従来存在しなかった。
また、特許文献1に記載された技術は、異なる演算器で同じタスクを実行し同じ結果を出すかどうかを確認することでタスクの信頼性を担保することを主眼に置いており、タスク間で連携して一連の処理を行うための連携機能を有していない。
このため、データ処理フローを分散処理することはできず、複数のデータ処理装置を連携させて一連のデータ処理を実行することはできなかった。
本発明は、上記の事情に鑑みてなされたものであり、複数のデータ処理装置を連携させて一連のデータ処理を実行することを目的とする。
上記目的を達成するため、本発明のデータ処理装置は、他のデータ処理装置に接続されるデータ処理装置であって、機器からデータを収集するデータ収集部と、入力されたデータを処理するデータ処理部と、他のデータ処理装置から提供されたデータをデータ収集部またはデータ処理部に提供し、データ収集部で収集またはデータ処理部で処理されたデータを他のデータ処理装置に提供する連携処理部と、予め設定されたデータ処理フローの設定情報に基づき、データ収集部によるデータ収集処理、データ処理部によるデータの処理、および連携処理部による他のデータ処理装置とのデータの授受の処理、の制御を行う実行制御部と、を備える。
本発明によれば、データ処理装置は、他のデータ処理装置から提供されたデータをデータ収集部またはデータ処理部に提供し、データ収集部で収集またはデータ処理部で処理されたデータを他のデータ処理装置に提供する連携処理部と、予め設定されたデータ処理フローの設定情報に基づき、データ収集部によるデータ収集処理、データ処理部によるデータの処理、および連携処理部による他のデータ処理装置とのデータの授受の処理、の制御を行う実行制御部と、を備える。このため、複数のデータ処理装置を連携させて一連のデータ処理を実行することができる。
本発明の実施の形態に係るデータ処理システムの構成を示すブロック図 実施の形態に係るデータ処理フローの一例を示す図 実施の形態に係るデータ処理装置のハードウェア構成を示すブロック図 実施の形態に係るデータ処理装置の機能的な構成を示す図 実施の形態に係るフロー設定情報の一例を示す図 実施の形態に係る連携処理部の構成を示す図 実施の形態に係る連携データ処理を示すフローチャート 実施の形態に係るデータ定義共有処理を示すフローチャート 実施の形態に係るフロー設定共有処理を示すフローチャート 実施の形態に係るデータ処理フロー実行処理を示すフローチャート 実施の形態に係る送信処理を示すフローチャート 実施の形態に係る実行制御処理を示すフローチャート 実施の形態に係るフローデータの一例を示す図 実施の形態に係る部分処理を示すフローチャート 実施の形態に係る受信処理を示すフローチャート 実施の形態の変形例に係るデータ処理フローを示す図
以下、本発明の実施の形態に係るデータ処理装置について、図面を参照しつつ詳細に説明する。
(実施の形態1)
本実施の形態に係るデータ処理装置10,20は、FA機器の領域とクラウドの間のエッジコンピューティング領域に位置し、工場の現場に設けられているエッジ装置である。データ処理装置10,20は、FA機器からデータを吸い上げ、加工・診断処理を施してFA機器に戻す。この処理を遠隔に位置するクラウドが実行すると、処理時間がかかるといった問題が生じる。したがって、リアルタイムデータ処理をデータ処理装置10,20が担当することによって、リアルタイムデータの処理遅延を防止するとともに、クラウドに送信されるデータ量を最適化する。
データ処理装置10および20は、同じ工場内に設置される産業用コンピュータである。また、データ処理装置10および20は、それぞれ別の工場に設置され、広域ネットワークで接続されてもよい。データ処理装置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とが広域ネットワークを介して接続されてもよい。
機器31は、生産ラインに設置されたセンサ装置であって、例えば、圧力、超音波、又は光に代表される物理量を計測するセンサを有している。機器31は、センサによる計測結果を示すデータを定期的に通信路30へ出力する。機器31が計測結果を出力する周期は、例えば、1ms、100ms又は1secである。機器32は、生産ラインに設置されるアクチュエータ又はロボットであって、制御命令に従って動作する。なお、上記は一例であって、機器31はセンサに限らず、アクチュエータ、ロボット等であってもよく、機器32は、アクチュエータ又はロボットに限らず、センサ等であってもよい。また、機器31,32は、センサ、アクチュエータ、ロボット等の被制御機器を制御するPLC(Programmable Logic Controller)であってもよい。
一連のリアルタイムデータ処理は、データの収集、加工、診断、フィードバック等を組み合わせて構成する。データの加工は、データの平滑化、先鋭化、FFT(Fast Fourier Transform)処理等を含む。データの診断は、閾値判定、パターンマッチング等を含む。フィードバックは、診断結果の通知であり、生産現場の機器の停止、減速、再開等の指令を書き込む処理を含む。この組み合わせをデータ処理フローと呼ぶ。データ処理システム100では、複数のデータ処理装置10および20が連携し、データ処理フロー内の各データ処理をデータ処理装置間で分散処理する。
データ処理装置10,20の連携によって実行されるデータ処理フロー40が図2に例示されている。このデータ処理フロー40は、機器31から収集したデータに対して施される一連の部分処理を含む。詳細には、データ処理フロー40は、データ処理装置10によって実行される部分処理41と、データ処理装置20によって実行される部分処理42と、を含む。ただし、これには限定されず、部分処理41がデータ処理装置20によって実行され、部分処理42がデータ処理装置10によって実行されてもよい。
また、部分処理41は、部分処理411と部分処理412とを要素処理として含み、部分処理42は、部分処理421と部分処理422とを要素処理として含む。部分処理411は、機器31からデータを収集する処理に相当し、部分処理412は、部分処理411の結果として出力されるデータを加工する処理に相当する。データの加工は、例えばノイズの低減又は端数処理である。部分処理421は、部分処理412の結果として出力されるデータについて診断する処理に相当する。データの診断は、例えば、機器32に対する制御指令の決定、および、異常の有無の判定である。部分処理422は、部分処理421の結果として出力される診断結果を示すデータの外部への出力に相当する。診断結果の出力は、機器32への制御指令の送信を含む。図2に示されるデータ処理フロー40によれば、部分処理411,412,421,422を含む一連の処理が、機器31から計測結果が出力されるたびに実行される。そして、計測結果に含まれるノイズを低減した値に応じて機器32に対する制御内容が決定されて制御命令が送信される。
処理の分散はランダムであってもよいが、各データ処理装置が得意とする処理を担当することがより適切である。理想的な配置を考慮すると、必ずしも前半の処理をデータ処理装置10、後半の処理をデータ処理装置20と、単純に分けるのではなく、より複雑な分散を行い、一連の処理を完遂するまでにデータ処理装置10,20間で頻繁にデータのやり取りが発生することもありえる。
データ処理装置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に示されるように、ユーザがデータ処理フローを設定するためのエンジニアリングツール110と、データ処理フローを構成する部分処理を実行するデータ処理部120と、データ処理部120およびデータ収集部150に部分処理を実行させる実行制御部130と、種々のデータを記憶する記憶部140と、データを収集するデータ収集部150と、データ処理装置20に接続して連携処理するための連携処理部160と、を有する。
エンジニアリングツール110、実行制御部130、記憶部140および連携処理部160は、データ処理フローを実行するためのプラットフォーム50を形成する。このプラットフォーム50は、データ処理装置20においてもデータ処理装置10と同様に形成されるプラットフォームと連携して、データ処理フローを実行する。
エンジニアリングツール110は、データ処理フローを実行するために必要な設定を示す情報であるデータ処理フローの設定情報を設定する。以下では、データ処理フローの設定情報をフロー設定情報と適宜表記する。エンジニアリングツール110は、ユーザがデータ処理フローの設定を入力するためのUI(User Interface)部111とデータ処理フローの設定を受け付ける受付部112からなる。UI部111は、主として入力部14および出力部15によって実現されるタッチスクリーンに相当する。UI部111は、受付部112による制御に従って、データ処理フローの設定を入力するための画面をユーザに対して表示する。ユーザは、UI部111を操作して、データ処理フローを構成する部分処理の内容および個数、部分処理の実行に必要なパラメータ、並びに、部分処理を実行するプラットフォームを任意に設定する。そして、UI部111は、ユーザの操作により入力されたデータ処理フローの設定を示す情報を受付部112へ送出する。なお、UI部111は、ディスプレイとキーボードとマウスに代表されるポインティングデバイスとによって実現されてもよい。
受付部112は、主としてプロセッサ11によって実現される。受付部112は、UI部111からデータ処理フローの設定を受け付けて、この設定内容を示すフロー設定情報として実行制御部130に通知する。実行制御部130に通知されたフロー設定情報は、記憶部140の設定記憶部141に格納される。
なお、データ処理フローの設定が受付部112によって受け付けられるとは限らない。ユーザが、データ処理装置10のUI部111ではなく、データ処理装置20を操作してデータ処理フローの設定を入力することもある。ユーザは、データ処理装置10,20のうち任意の装置を操作してデータ処理フローを設定すればよい。ユーザがデータ処理装置20にデータ処理フローの設定を入力した場合には、データ処理装置10は、このデータ処理フローの設定を示すフロー設定情報をデータ処理装置20から受信することで共有する。この共有の詳細については、後述する。
データ処理部120は、主としてプロセッサ11によって実現される。データ処理部120はそれぞれ、データ処理装置10に予め設定されたプログラムP1、又はユーザによって用意されたプラグインソフトウェアによって実現される。データ処理部120はそれぞれ、データ処理フローを構成する要素としての部分処理を実行する。詳細には、データ処理部120はそれぞれ、部分処理の対象として実行制御部130によって入力されるデータを取得して、取得したデータに部分処理を施した結果を実行制御部130に出力する。図2においては、データ処理装置10によって実行される部分処理41のうち、部分処理412がいずれかのデータ処理部120によって実行される。
実行制御部130は、主としてプロセッサ11によって実現される。実行制御部130は、フロー設定情報に従った順序でデータ処理部120およびデータ収集部150に部分処理を実行させる。詳細には、実行制御部130は、データ処理部120、データ収集部150および連携処理部160から部分処理の対象となるデータを取得して、取得したデータを、当該データに部分処理を施すデータ処理部120若しくはデータ収集部150、又は連携処理部160へ送出する。
例えば、実行制御部130は、図2に示される部分処理411の結果として収集されたデータをデータ収集部150から取得して、取得したデータを、部分処理412を実行するデータ処理部120へ送出する。また、実行制御部130は、部分処理412の結果として出力されたデータをデータ処理部120から取得して、取得したデータを、連携処理部160を介してデータ処理装置20へ送信する。
なお、図2に示されるデータ処理フロー40のうちの部分処理42がデータ処理装置10によって実行される場合においては、実行制御部130は、部分処理412の結果を示すデータを、連携処理部160を介してデータ処理装置20から取得して、取得したデータを、部分処理421を実行するデータ処理部120へ送出する。そして、実行制御部130は、部分処理421の結果としてデータ処理部120から出力されたデータを取得して、取得したデータを、部分処理422を実行するデータ収集部150へ送出する。
記憶部140は、主として補助記憶部13によって実現される。記憶部140は、フロー設定情報を記憶する設定記憶部141と、データ定義情報を記憶するデータ定義情報記憶部142と、を有する。設定記憶部141およびデータ定義情報記憶部142は、1つの記憶装置に形成された異なる記憶領域であってもよいし、異なる記憶装置として実現されてもよい。
図5には、設定記憶部141に記憶されるフロー設定情報1411が例示されている。このフロー設定情報1411は、図2に示されるデータ処理フローを実行するために必要な設定を示す情報である。フロー設定情報1411は、部分処理を識別するための部分処理ID(Identifier)と、この部分処理を実行するプラットフォームを識別するためのプラットフォームIDと、この部分処理の名称と、この部分処理の前処理に相当する部分処理と、この部分処理の後処理に相当する部分処理と、を関連付けるテーブルデータである。なお、図5において部分処理の名称として便宜的に「収集」「加工」「診断」と記載しているが、例えば、「加工」には、平均化、先鋭化等幾つもの種類が存在する。したがって、実際には、部分処理の名称としてこれらの種類まで細分化したIDが用いられる。前処理および後処理についても部分処理のIDが用いられる。
図5中、部分処理IDは、図2の部分処理に付された符号と等しい識別子とされている。また、プラットフォームIDのうち、「50」は、図4に示されるデータ処理装置10のプラットフォーム50の符号と等しい識別子とされている。「51」というプラットフォームIDは、データ処理装置20のプラットフォームに対応する。なお、フロー設定情報1411は、プラットフォームIDに代えて、データ処理装置10,20を識別する識別子を含んでもよい。
なお、フロー設定情報1411は、図5に例示される情報とは異なる情報を含んでもよい。例えば、フロー設定情報1411は、部分処理の内容を規定するパラメータを含んでもよい。このパラメータは、例えば、端数処理に用いられる閾値、データを収集する対象となる機器の識別子、データを収集する周期、および、制御命令を送信する対象となる機器の識別子である。
図4に戻り、データ収集部150は、主としてプロセッサ11と通信部16との協働により実現される。図4に示されるデータ収集部150は、機器31,32それぞれに対応して2つ設けられているが、データ処理装置10が接続される伝送路ごとに設けられてもよい。データ収集部150は、接続された機器31から出力されるデータを収集するデータ収集処理を実行して、収集したデータを実行制御部130へ送出する。
また、データ収集部150は、出力情報を出力する出力処理モジュール151を有する。出力情報は、データ処理フローの実行結果に関する情報である。例えば、出力処理モジュール151は、実行制御部130から送出された制御命令を、出力情報として制御対象の機器32に送信する。出力処理モジュール151による出力処理は、図2中の部分処理422に相当する。なお、出力情報は、制御命令に限定されず、異常の発生を報知するための通知であってもよいし、外部のサーバ装置に格納するための品質管理情報であってもよい。
連携処理部160は、主としてプロセッサ11と通信部16との協働により実現される。連携処理部160は、データ処理装置10がデータ処理装置20と連携してデータ処理フローを実行するための通信をする。
図6には、連携処理部160の詳細な構成が示されている。この連携処理部160は、一連のリアルタイムデータ処理の内容を示すデータ処理フロー内を流れるデータの定義(データ型、データ数等)を他のデータ処理装置20と共有するための通信を行うデータ定義通信部161と、データ処理フローの設定を他のデータ処理装置20と共有するための通信を行う処理フロー設定通信部162と、データ処理フロー内を流れるデータを他のデータ処理装置20との間で授受するフローデータ通信部163と、データ処理フロー内の個々のデータ処理の実行制御を行う情報をデータ処理装置間で授受する実行制御情報通信部164と、データ処理装置間において各データ処理装置上で発生しているエラー情報を共有するエラー情報通信部165と、を有する。
データ定義通信部161および処理フロー設定通信部162は、データ処理装置20との間で、オフライン処理に必要な通信をする。一方、フローデータ通信部163、実行制御情報通信部164およびエラー情報通信部165は、データ処理装置20との間で、オンライン処理を実行するための通信をする。
ここで、オフライン処理は、データ処理フローの実行に必要であるが、実行の際にデータ処理装置10とデータ処理装置20との通信が必須ではない処理を意味する。オフライン処理は、フロー設定情報の参照を含む。フロー設定情報がデータ処理フローの開始前に予めデータ処理装置10,20間で共有されていれば、フロー設定情報を参照する際には通信が必須とはならない。また、オフライン処理は、データ処理装置10,20のフロー設定情報のデータ定義情報を送信して予めデータ処理装置10,20間で共有する。このデータ定義情報がデータ処理装置10とデータ処理装置20との間で予め伝送されていれば、データ定義情報を参照する際には通信が必須とはならない。
また、オンライン処理は、データ処理装置10とデータ処理装置20とが接続されている条件下で実行される部分処理を意味する。詳細には、一の部分処理の結果をデータ処理装置10,20の一方から他方に伝送して次の部分処理の入力とすることがオンライン状態で繰り返し実行されるときの、当該次の部分処理がオンライン処理に相当する。
データ定義通信部161は、データ処理フローを構成する各処理間でどのようなデータ、例えば、データ型、データ数等、がやり取りされるかを表す情報を扱う。さらに、各データ処理装置が有する機能、例えば、データ処理フローが扱えるのか、どのようなデータ処理部を有するのか等、を表す情報を扱う。データ定義通信部161は、上記のデータ定義情報を他のデータ処理装置20のデータ定義通信部161に送信する。また、他のデータ処理装置20のデータ定義通信部161は、データ定義情報をデータ処理装置10のデータ定義通信部161に送信する。
このように、データ定義通信部161は、互いのデータ定義情報を共有して、扱える仕様を把握する。例えば、データ処理装置によって扱えるデータが異なる場合がある。また、データ処理装置によっては、データ処理フロー自体を扱えない場合もある。この場合、データ処理装置が扱える範囲でデータ処理フローの設定情報を共有する。
例えば、データ処理フローにおいて、実行する処理が複数に枝分かれする分岐、複数の処理の結果が1つの処理に入力される集約が存在する場合がある。この分岐・集約について認識できないデータ処理装置がある場合、データ処理フローのうち、分岐・集約の部分を読み飛ばすことを指示する。あるいは、認識できない処理フロー部分についてデータ処理フローの設定情報を送信しないことによって対応する。ただし、データ処理フローの設定情報の書き換えは行わない。データ処理フローの設定は、ユーザによって行われる。どのデータ処理装置にどのような処理機能を有するアプリケーションが存在するかについては、ユーザのみが知り得る。したがって、ユーザが、データ処理フローの設定情報の書き換えを決定する。
このように、データ定義情報を共有することによって、扱える仕様が異なるデータ処理装置間において柔軟な連携が可能となる。
処理フロー設定通信部162は、データ処理フローがどのような処理の組み合わせで、それらがどのように結合されているかを表す設定情報を扱う。データ定義通信部161がデータ定義情報を共有するのに対して、処理フロー設定通信部162は、データ処理フローの設定を共有するための通信部である。
データ処理フローは、データ処理装置10および20の間で共有される。したがって、互いに重複するデータ処理フローについて、それぞれのデータ処理装置が重複して設定する必要はなく、一方のデータ処理装置のみが設定すればよい。
フローデータ通信部163は、データ処理フロー内を流れるフローデータを扱う。データは、あるタイミングで収集されたデータの集まりを表すレコードを単位として扱われる。また、データは、意味のある単位でまとめられた複数のレコードを単位として扱われる場合もある。
データ処理フローにおいて分岐がある場合、フローデータはデータ処理フローと紐付けて一緒に送信される。例えば、データ処理フローに番号付けしておき、フローデータのヘッダ部分に番号、ボディ部分にデータを含める。
実行制御情報通信部164は、データ処理フローの各処理を実行する順番、プログラムの開始指示等のタイミングを決める情報、データ処理部120のパラメータ等の実行制御情報を扱う。実行制御情報通信部164は、データ処理フローと動作状態を関係付け、データ処理フローに応じたデータの流れについて交通整理を行う動的な情報を他のデータ処理装置と共有する。
例えば、データ処理装置によっては、データ処理部120の起動等の制御の仕方に違いがある。データ処理部120の起動をデータ処理部120側で行っているデータ処理装置もあれば、プラットフォーム50で行っているデータ処理装置も存在しえる。プラットフォーム50がデータ処理部120を制御している場合、実行制御情報通信部164からの情報にしたがって起動を制御する。
また、データ処理フロー自体を扱っていない他のデータ処理装置に対して、実行制御情報通信部164が、処理の順番、データ処理部120の起動のタイミング、どういったデータを扱うかといった制御情報を送信することによって他のデータ処理装置を遠隔制御する。フローデータは、フローデータ通信部163から送信され、他のデータ処理装置は、実行制御情報通信部164からの制御情報にしたがってデータ処理フローに沿った処理を実行する。
エラー情報通信部165は、データ処理装置10上で発生しているエラー情報を他のデータ処理装置20へ送信する。また、エラー情報通信部165は、他のデータ処理装置20上で発生しているエラー情報を受信する。これによって、データ処理装置10,20は互いのデータ処理装置上で発生しているエラー情報を共有する。エラー情報はデータ処理フローおよびデータ処理部120に関連付けて管理される。したがって、エラー発生箇所、原因の把握が容易となる。データ処理装置10および20が連携したデータ処理フローについて、どのデータ処理装置のどのデータ処理部にエラーが発生したかを特定することが可能となり、デバッグ、復旧が効率的に行える。エラー情報通信部165は、実際動作しているときのエラー情報を通信する。エラーが発生するとこれを受けて処理動作を変更することも可能である。
データ定義通信部161は、データ定義情報記憶部142から読み出されたデータ定義情報を取得し、処理フロー設定通信部162は、設定記憶部141から読み出されたフロー設定情報を取得する。そして、データ定義通信部161は、取得したデータ定義情報をデータ処理装置20へ送信し、処理フロー設定通信部162は、取得したフロー設定情報をデータ処理装置20へ送信する。また、データ定義通信部161は、データ処理装置20から受信したデータ定義情報をデータ定義情報記憶部142に書き込み、処理フロー設定通信部162は、受信したフロー設定情報を設定記憶部141に書き込む。
フローデータ通信部163は、データ処理装置20による部分処理の対象となるデータを送信するとともに、データ処理装置10による部分処理の対象となるデータを受信する。
フローデータ通信部163は、フロー設定情報に従ってデータ処理装置10によって実行された部分処理41の結果を示す送信データを実行制御部130から取得して、データ処理装置20へ送信する。送信が制限されているときには、データの送信を保留して待機する。
ここで、フローデータは、データ処理フローに従った部分処理の入出力データを意味し、送信データは、データ処理装置10からデータ処理装置20へ送信されるフローデータを意味する。以下では、送信データを第1の処理結果と適宜表記する。また、データ処理装置10がデータ処理装置20から受信するフローデータを受信データという。この受信データは、データ処理装置20によって実行された部分処理42の結果を示す。以下では、受信データを第2の処理結果と適宜表記する。
フローデータ通信部163は、フロー設定情報に従ってデータ処理装置10によって実行されるべき部分処理の対象となる第2の処理結果をデータ処理装置20から受信して、実行制御部130へ送出する。
続いて、データ処理装置10によって実行される連携データ処理について、図7〜15を用いて説明する。連携データ処理は、データ処理装置10がデータ処理装置20と連携して処理フローを実行する処理であって、データ処理装置10がプログラムを実行することで開始する。
図7に連携処理部160の動作を示す。連携開始通知に先立って、ユーザはエンジニアリングツール110を用いてデータ処理フローを設定する。連携処理部160は、ユーザ操作等によりデータ処理フローを開始する時、データ処理フローによって予め設定された連携先のデータ処理装置20に対して連携を開始する旨を通知する(ステップS101)。
次に、データ定義通信部161を介してデータ処理装置間でやり取りするデータの定義(データ型、データ数等)を共有する(ステップS102)。
データ定義の共有は、図8に示すように実行される。データ定義通信部161は、データ定義情報記憶部142からデータ定義情報を読み出す(ステップS201)。読み出されたデータ定義情報を連携先のデータ処理装置20に送信する(ステップS202)。データ定義通信部161は、データ処理フローを構成する各処理間でどのようなデータ(データ型、データ数等)がやり取りされるかを表す情報とともに、各データ処理装置が有する機能(データ処理フローが扱えるのか、どのようなデータ処理部を有するのか等)の情報を送信する。
次に、連携先のデータ処理装置20に対してデータ定義情報を要求する(ステップS203)。これに対して、連携先のデータ処理装置20から応答があれば(ステップS204;Yes)、連携先のデータ処理装置20のデータ定義通信部161からデータ定義情報を受信する(ステップS205)。連携先のデータ処理装置20から応答がなければ(ステップS204;No)、再度データ定義情報を要求する(ステップS203)。連携先のデータ処理装置20のデータ定義通信部161も同様に、データ処理フローを構成する各処理間でどのようなデータがやり取りされるかを表す情報とともに、各データ処理装置が有する機能の情報を送信する。データ定義通信部161は、どんなデータをやり取りしているのかを示す情報を送信し、基本的に全部のデータ定義を共有する。データ定義通信部161は、扱える仕様を全部共有しておく。
図7に戻って、続けて、処理フロー設定通信部162を介してフローの設定を共有する(ステップS103)。
処理フローの共有は、図9に示すように、実行される。
処理フロー設定通信部162は、設定記憶部141からフロー設定情報を読み出す(ステップS301)。次に処理フロー設定通信部162は、データ定義情報記憶部142から連携先のデータ処理装置20のデータ定義情報を読み出す(ステップS302)。処理フロー設定通信部162は、データ定義情報から連携先のデータ処理装置20がフロー設定情報を読み出すことができるのか、実行することができるのか判断する(ステップS303)。
例えば、データ処理を行うフローデータのデータ型、データ数が連携先のデータ処理装置20で処理できないデータ型、データ数であるか否かを判断する。例えば、フローデータが浮動小数点型の16bitのデータが2つであるのに対して、連携先が整数型の8bitのデータが1つだけを扱える場合、連携先のデータ処理装置20はデータ処理を実行することができない。
単にデータを集めて蓄積、配信するだけ、あるいはデータ処理部は有するもののデータ処理フローの仕組みを持たず、個別のデータ処理部に直接データを入力する必要があるデータ処理装置は、このステップで連携先に対して、自身が有する機能とそのインタフェースを通知し、データの送受信方法を決定する。
連携先のデータ処理装置20でデータ処理フローを実行できると判断した場合(ステップS303;Yes)、連携先のデータ処理装置20にフロー設定情報をそのまま送信する(ステップS304)。連携先のデータ処理装置20でデータ処理フローを実行できないと判断した場合(ステップS303;No)、連携先のデータ処理装置20が扱える範囲でデータ処理フローを共有する(ステップS305)。例えば、実行できないフロー設定情報の部分を送信しない、あるいはフロー設定情報を送信するものの、実行できないフロー設定情報を読み飛ばすことを指示する。
連携先のデータ処理装置20でフロー設定情報がある場合は、上記と同様にデータ定義情報に基づいて相手先にフロー設定情報を送信する。
以上のデータの共有が完了すると、図7に戻って、データ処理フローを実行する(ステップS104)。
図10に、データ処理フロー実行処理を示す。データ処理装置10は、データ処理フローの開始指示があるか否かを判定する(ステップS401)。具体的には、実行制御部130が、共有されたフロー設定情報に従ったデータ処理フローを開始する旨の指示があるか否かを判定する。この開始指示は、ユーザによって入力される指示であってもよいし、データ処理装置20から送信された指示であってもよいし、予め定められたスケジュールに規定された時刻になったことで発生するトリガーであってもよい。
開始指示がないと判定した場合(ステップS401;No)、データ処理装置10は、ステップS401の判定を繰り返して、開始指示があるまで待機する。一方、開始指示があると判定した場合(ステップS401;Yes)、実行制御部130は、フローデータの送信がデータ処理フローに含まれるか否かを判定する(ステップS402)。具体的には、実行制御部130は、設定記憶部141のフロー設定情報を参照して、データ処理装置10にて実行された部分処理の結果をデータ処理装置20にて実行される部分処理の入力とすることがデータ処理フローに含まれているか否かを判定する。
フローデータの送信がデータ処理フローに含まれると判定された場合(ステップS402;Yes)、実行制御部130は、フローデータ通信部163に送信処理を開始させる(ステップS403)。この送信処理は、連携データ処理とは並列に実行される。この送信処理について、図11を用いて説明する。
送信処理では、フローデータ通信部163が、データ処理部120による部分処理の結果である第1の処理結果を実行制御部130から取得したか否かを判定する(ステップS501)。第1の処理結果を取得していないと判定した場合(ステップS501;No)、フローデータ通信部163は、ステップS501の判定を繰り返して、第1の処理結果を取得するまで待機する。
フローデータ通信部163が第1の処理結果を取得したと判定した場合(ステップS501;Yes)、フローデータ通信部163は、第1の処理結果を、連携相手のデータ処理装置20へ送信する(ステップS502)。その後、ステップS501以降の処理が繰り返される。これにより、実行制御部130からフローデータ通信部163へ送出されたフローデータが、データ処理装置20へ順次送信される。
図10に戻り、ステップS402の判定が否定された場合(ステップS402;No)、又はステップS403の処理が完了した場合に、データ処理装置10は、実行制御処理を開始する(ステップS404)。実行制御処理は、実行制御部130が、フロー設定情報に従ってデータ処理部120、データ収集部150および連携処理部160間で伝送させる処理であって、連携データ処理とは並列に実行される。この実行制御処理について、図12を用いて説明する。
実行制御処理では、実行制御部130が、データ収集部150およびデータ処理部120を起動して部分処理を開始させる(ステップS601)。具体的には、実行制御部130が、設定記憶部141のフロー設定情報を参照して、データ処理フローに含まれる部分処理を実行するデータ収集部150およびデータ処理部120を実現するプログラムを特定し、特定したプログラムを起動する。これにより、データ収集部150およびデータ処理部120が部分処理を実行可能な状態になる。
次に、実行制御部130は、フローデータの入力があるか否かを判定する(ステップS602)。具体的には、実行制御部130は、データ処理フローに従ったデータが、データ処理部120、データ収集部150および連携処理部160のいずれかから実行制御部130に対して送出されたか否かを判定する。
図13には、フローデータ51が例示されている。フローデータ51は、フローデータに付されるデータラベルと、このフローデータに対応する対象データが収集された時刻を示すタイムスタンプと、データの値と、を関連付けるテーブルである。ここで、対象データは、データ処理フローが施される対象のデータを意味し、機器31から収集されるデータに相当する。データラベルは、図2中の矢印を識別するためのラベルに相当する。例えば、図2中の部分処理411から出力されて部分処理412に入力されるデータには、「#1」というデータラベルが付される。タイムスタンプは、フローデータを得るための部分処理が施された対象データの収集時刻を示す。例えば、図2において、10時42分56秒に部分処理411の実行により収集された対象データには、部分処理411,412,421が順に施され、これらの部分処理の出力であるフローデータにはいずれも「10:42:56」というタイムスタンプが付される。データの値は、部分処理の結果を示す。
図12に戻り、ステップS602にてフローデータの入力がないと判定した場合(ステップS602;No)、実行制御部130は、ステップS602の判定を繰り返して、フローデータが入力されるまで待機する。一方、フローデータの入力があると判定した場合(ステップS602;Yes)、実行制御部130は、ステップS602で入力されたと判断されたフローデータを、フロー設定情報に従って次の部分処理を実行するデータ処理部120、データ収集部150、又は連携相手のデータ処理装置20に送出する(ステップS603)。例えば、図2に示されるデータ処理フローが実行される場合において、部分処理411を実行するデータ収集部150からフローデータが入力されたときに、実行制御部130は、このフローデータを、部分処理412を実行するデータ処理部120に送出する。また、このデータ処理部120からフローデータが入力されたときに、実行制御部130は、このフローデータを連携処理部160のフローデータ通信部163に送出することにより、部分処理421を実行するデータ処理装置20へ送信する。
図12に戻り、ステップS603に続いて、実行制御部130は、ステップS602以降の処理を繰り返す。これにより、実行制御部130は、フロー設定情報に従って一連の部分処理を含むデータ処理フローのうち、データ処理装置10によって実行されるべき部分処理をデータ処理部120およびデータ収集部150に繰り返し実行させることができる。
続いて、ステップS601で開始される部分処理について、図14を用いて説明する。この部分処理は、データ処理部120およびデータ収集部150によって実現され、実行制御処理とは並列に実行される。以下では、データ処理部120が部分処理を実行する例を中心に説明する。
部分処理では、データ処理部120は、入力データがあるか否かを判定する(ステップS711)。具体的には、データ処理部120は、実行制御部130から送出されたデータが入力されたか否かを判定する。ただし、部分処理がデータ収集部150によって実行される場合においては、データ収集部150が、機器31から出力されたデータがあるか否かを判定する。
入力データがないと判定した場合(ステップS711;No)、データ処理部120は、ステップS711の判定を繰り返して、入力データがあるまで待機する。一方、入力データがあると判定した場合(ステップS711;Yes)、データ処理部120は、部分処理の内容を実行して、部分処理の結果を示す出力データを実行制御部130に出力する(ステップS712)。その後、データ処理部120は、ステップS711以降の処理を繰り返す。
図10に戻り、ステップS404に続いて、実行制御部130は、フローデータの受信がデータ処理フローに含まれるか否かを判定する(ステップS405)。具体的には、実行制御部130は、設定記憶部141のフロー設定情報を参照して、データ処理装置20にて実行された部分処理の結果を、データ処理装置10にて実行される部分処理の入力とすることがデータ処理フローに含まれているか否かを判定する。
フローデータの受信がデータ処理フローに含まれると判定された場合(ステップS405;Yes)、実行制御部130は、フローデータ通信部163に受信処理を開始させる(ステップS406)。この受信処理は、連携データ処理とは並列に実行される。この受信処理について、図15を用いて説明する。
受信処理では、連携処理部160のフローデータ通信部163が、データ処理装置10で実行されるべき部分処理の対象となる第2の処理結果をデータ処理装置20から受信したか否かを判定する(ステップS801)。第2の処理結果を受信していないと判定した場合(ステップS801;No)、フローデータ通信部163は、ステップS801の判定を繰り返して、第2の処理結果を受信するまで待機する。一方、第2の処理結果を受信したと判定された場合(ステップS801;Yes)、フローデータ通信部163は、第2の処理結果を実行制御部130へ送出する(ステップS802)。その後、ステップS801以降の処理が繰り返される。これにより、データ処理装置20からフローデータ通信部163へ伝送された第2の処理結果が、実行制御部130へ順次入力される。
図7に戻り、ステップS105において連携解除の操作がない場合(ステップS105;No)、引き続きデータ処理フローを実行する(ステップS104)。データ処理フローの停止等の連携解除の操作があった場合(ステップS105;Yes)、連携解除を他のデータ処理装置20に通知し、連携を解除して動作を停止する(ステップS106)。この操作とは、ユーザによる操作である。ユーザによる操作は、例えば、装置に設けられたトグルスイッチを操作した場合、エンジニアリングツール110から停止操作した場合である。なお、連携解除は、データ処理装置20から送信された指示であってもよいし、予め定められたスケジュールに規定された時刻になったことで発生するトリガーであってもよい。
以上、本発明の実施の形態について説明したが、本発明は上記実施の形態によって限定されるものではない。
上記実施の形態では、2つのデータ処理装置10,20が連携してデータ処理フローを実行する場合について説明したが、3つ以上の装置が連携してデータ処理フローを実行してもよい。
また、上記実施の形態では、説明の理解を容易にするため、図2に示された簡潔なデータ処理フローを例示したが、データ処理フローはこれに限定されない。図16に、データ処理フローの他の例を示す。
図16(A)において、データ処理装置Aのデータ処理フロー60には、最初にデータ処理装置Aがデータ収集を行う部分処理61が規定されている。データ収集実行後、データ処理装置Aは加工処理である部分処理62を実行する。部分処理62が実行された後、データ処理フロー60には、部分処理63においてデータ処理装置Bが処理を行うことのみが規定されている。そしてデータ処理装置Bの処理の結果をデータ処理装置Aに送信する部分処理64が規定されている。データ処理装置Aは、部分処理64においてデータ処理装置Bの処理結果をデータ収集部150を通じて機器にフィードバックする。
データ処理装置Bのデータ処理フロー70には、データ処理装置Aからデータが入力される部分処理71が規定されている。データ処理装置Aからデータが入力されると、データ処理装置Bは、診断処理を実行する。診断結果はデータ処理装置Aに出力される。
上記データ処理装置Aのデータ処理フロー60とデータ処理装置Bのデータ処理フロー70をお互いに送信し、データ処理フローが共有されると、データ処理装置Aのデータ処理フロー60において、データ処理装置Bの処理は、診断処理であることが分かる。このように、互いのデータ処理フローを共有することにより、互いに重複したデータ処理フローを規定する必要がない。
また、図16(B)において、データ処理装置Aのデータ処理フロー80には、最初にデータ処理装置Aがデータ収集を行う部分処理81が規定されている。データ収集実行後、データ処理装置Aは加工処理である部分処理82を実行する。加工処理が実行された後、分岐が行われ、データ処理装置Aに分析/診断処理である部分処理83を実行させるとともに、データ処理装置Bに分析処理を実行させる。データ処理装置Bで分析処理が実行された結果はデータ処理装置Aに送信される。データ処理装置Aは、部分処理84において分析/診断結果をデータ収集部を通じて機器にフィードバックする。
データ処理装置Bのデータ処理フロー90には、最初にデータ処理装置Bがデータ収集を行う部分処理91が規定されている。データ収集実行後、データ処理装置Bは加工処理である部分処理92を実行する。部分処理92が実行された後、データ処理装置Bの加工処理結果とデータ処理装置Aの加工処理結果がデータ処理装置Bに集約されて、データ処理装置Bは分析処理である部分処理93を行う。分析処理の結果は、部分処理94においてデータ処理装置Bからデータ収集部150を通じて機器にフィードバックされる。
また、データ処理フローは、3つより多くのデータ処理装置によって実行される部分処理を含んでいてもよい。また、データ処理装置とプラットフォームとは、一対一に対応していなくてもよい。例えば、1つのデータ処理装置が複数のプラットフォームを有していてもよい。
また、データ処理装置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,20 データ処理装置、11 プロセッサ、12 主記憶部、13 補助記憶部、14 入力部、15 出力部、16 通信部、17 内部バス、100 データ処理システム、110 エンジニアリングツール、111 UI部、112 受付部、120 データ処理部、130 実行制御部、140 記憶部、141 設定記憶部、142 データ定義情報記憶部、150 データ収集部、151 出力処理モジュール、160 連携処理部、161 データ定義通信部、162 処理フロー設定通信部、163 フローデータ通信部、164 実行制御情報通信部、165 エラー情報通信部、1411 フロー設定情報、30 通信路、31,32 機器、40,60,70,80,90 データ処理フロー、41 第1の部分処理、42 第2の部分処理、411,412,421,422,61,62,63,64,71,81,82,83,84,91,92,93,94 部分処理、50 プラットフォーム、51 フローデータ、P1 プログラム。
上記目的を達成するため、本発明のデータ処理装置は、他のデータ処理装置に接続されるデータ処理装置であって、機器からデータを収集するデータ収集部と、入力されたデータを処理するデータ処理部と、他のデータ処理装置から提供されたデータをデータ収集部またはデータ処理部に提供し、データ収集部で収集またはデータ処理部で処理されたデータを他のデータ処理装置に提供する連携処理部と、予め設定されたデータ処理フローを実行するために必要な設定を示す情報であるフロー設定情報に基づき、データ収集部によるデータ収集処理、データ処理部によるデータの処理、および連携処理部による他のデータ処理装置とのデータの授受の処理、の制御を行う実行制御部と、を備える。連携処理部は、他のデータ処理装置とデータ処理フローにしたがって流れるデータを定義するデータ定義情報を共有し、データ定義情報に基づいて他のデータ処理装置とフロー設定情報を共有する。
上記目的を達成するため、本発明のデータ処理装置は、他のデータ処理装置に接続されるデータ処理装置であって、機器からデータを収集するとともに機器にデータ処理フローの実行結果に関する情報を出力するデータ収集部と、入力されたデータを処理するデータ処理部と、他のデータ処理装置から提供されたデータをデータ収集部またはデータ処理部に提供し、データ収集部で収集またはデータ処理部で処理されたデータを他のデータ処理装置に提供する連携処理部と、予め設定されたデータ処理フローを実行するために必要な設定を示す情報であるフロー設定情報に基づき、データ収集部によるデータ収集および出力処理、データ処理部によるデータの処理、および連携処理部による他のデータ処理装置とのデータの授受の処理、の制御を行う実行制御部と、を備える。連携処理部は、他のデータ処理装置と扱えるデータおよびデータ処理を定義するデータ定義情報を共有し、データ定義情報に基づいて他のデータ処理装置が扱える範囲で他のデータ処理装置とフロー設定情報を共有する。
上記目的を達成するため、本発明のデータ処理装置は、他のデータ処理装置に接続されるデータ処理装置であって、機器からデータを収集するとともに機器にデータ処理フローの実行結果に関する情報を出力するデータ収集部と、入力されたデータを処理するデータ処理部と、他のデータ処理装置から提供されたデータをデータ収集部またはデータ処理部に提供し、データ収集部で収集またはデータ処理部で処理されたデータを他のデータ処理装置に提供する連携処理部と、予め設定されたデータ処理フローを実行するために必要な設定を示す情報であるフロー設定情報に基づき、データ収集部によるデータ収集および出力処理、データ処理部によるデータの処理、および連携処理部による他のデータ処理装置とのデータの授受の処理、の制御を行う実行制御部と、を備える。連携処理部は、他のデータ処理装置と扱えるデータおよびデータ処理を定義するデータ定義情報を共有し、データ定義情報に基づいて他のデータ処理装置が実行できないフロー設定情報の部分を他のデータ処理装置に送信しない、あるいは読み飛ばすことを指示することにより、他のデータ処理装置とフロー設定情報を共有する。

Claims (8)

  1. 他のデータ処理装置に接続されるデータ処理装置であって、
    機器からデータを収集するデータ収集部と、
    入力されたデータを処理するデータ処理部と、
    前記他のデータ処理装置から提供されたデータを前記データ収集部または前記データ処理部に提供し、前記データ収集部で収集または前記データ処理部で処理されたデータを前記他のデータ処理装置に提供する連携処理部と、
    予め設定されたデータ処理フローの設定情報に基づき、前記データ収集部によるデータ収集処理、前記データ処理部によるデータの処理、および前記連携処理部による前記他のデータ処理装置とのデータの授受の処理、の制御を行う実行制御部と、
    を備えるデータ処理装置。
  2. 前記連携処理部は、
    前記データ処理フローの設定情報を前記他のデータ処理装置に送信して前記他のデータ処理装置と共有する処理フロー設定通信部を備えることを特徴とする請求項1に記載のデータ処理装置。
  3. 前記連携処理部は、
    前記データ処理フローにしたがって流れるデータの定義情報を前記他のデータ処理装置に送信して前記他のデータ処理装置と共有するデータ定義通信部をさらに備えることを特徴とする請求項2に記載のデータ処理装置。
  4. 前記連携処理部は、
    前記他のデータ処理装置における前記データ処理部の実行制御情報を前記他のデータ処理装置に送信して前記他のデータ処理装置と共有する実行制御情報通信部を備えることを特徴とする請求項1から3のいずれか1項に記載のデータ処理装置。
  5. 前記連携処理部は、
    前記データ処理装置において発生するエラー情報を前記他のデータ処理装置に送信して前記他のデータ処理装置と共有するエラー情報通信部を備えることを特徴とする請求項1から4のいずれか1項に記載のデータ処理装置。
  6. 請求項1から5のいずれか1項に記載のデータ処理装置を複数備えるデータ処理システム。
  7. 他のデータ処理装置に接続されるデータ処理装置によって実行されるデータ処理方法であって、
    データ処理フローの設定情報に基づき連携先の前記他のデータ処理装置に連携開始を通知するステップと、
    前記他のデータ処理装置とデータの定義情報を共有するステップと、
    前記データの定義情報に基づいて前記他のデータ処理装置と前記データ処理フローの設定情報を共有するステップと、
    共有された前記データ処理フローの範囲で前記データ処理フローに基づいて前記他のデータ処理装置と連携したデータ処理を実行するステップと、
    を含むデータ処理方法。
  8. データ処理装置に接続されるコンピュータに、
    データ処理フローの設定情報に基づき連携先の前記データ処理装置に連携開始を通知するステップ、
    前記データ処理装置とデータの定義情報を共有するステップ、
    前記データの定義情報に基づいて前記データ処理装置と前記データ処理フローの設定情報を共有するステップ、
    共有された前記データ処理フローの範囲で前記データ処理フローに基づいて前記データ処理装置と連携したデータ処理を実行するステップ、
    を実行させるためのプログラム。
JP2020519817A 2019-05-17 2019-05-17 データ処理装置、データ処理システム、データ処理方法およびプログラム Active JP6861895B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/019784 WO2020234942A1 (ja) 2019-05-17 2019-05-17 データ処理装置、データ処理システム、データ処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP6861895B1 JP6861895B1 (ja) 2021-04-21
JPWO2020234942A1 true JPWO2020234942A1 (ja) 2021-06-10

Family

ID=73459232

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020519817A Active JP6861895B1 (ja) 2019-05-17 2019-05-17 データ処理装置、データ処理システム、データ処理方法およびプログラム

Country Status (4)

Country Link
US (1) US11474876B2 (ja)
JP (1) JP6861895B1 (ja)
CN (1) CN113826077B (ja)
WO (1) WO2020234942A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7022173B2 (ja) * 2020-06-09 2022-02-17 株式会社日立製作所 コンピューティングサービス管理装置、方法、およびプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259147A (ja) 2001-02-27 2002-09-13 Hitachi Ltd 情報処理装置及びリアルタイム分散処理システム
US8849862B2 (en) * 2004-05-21 2014-09-30 Rsvpro, Llc Architectural frameworks, functions and interfaces for relationship management (AFFIRM)
JP4888408B2 (ja) 2008-01-31 2012-02-29 株式会社アプストウェブ 工程データ連携装置
JP6014998B2 (ja) 2011-12-13 2016-10-26 株式会社リコー サーバ装置、連携処理フロー決定方法、連携処理フロー決定プログラム、画像処理システム
CN103093306A (zh) 2012-12-21 2013-05-08 大唐软件技术股份有限公司 一种业务数据协同处理方法和装置
KR101703466B1 (ko) * 2013-04-10 2017-02-06 미쓰비시덴키 가부시키가이샤 수치 제어 장치, 정보 제휴 시스템 및 정보 제휴 프로그램이 기록된 컴퓨터로 판독 가능한 매체
JP2017102777A (ja) * 2015-12-03 2017-06-08 富士通株式会社 負荷分散処理サーバ、負荷分散処理方法、及び、システム
JP6400248B1 (ja) * 2017-03-03 2018-10-03 三菱電機株式会社 データ処理装置、データ処理方法、設定管理装置およびデータ処理システム
US11706314B2 (en) * 2018-11-26 2023-07-18 Amazon Technologies, Inc. Configuration of workflows for coordinated device environments

Also Published As

Publication number Publication date
WO2020234942A1 (ja) 2020-11-26
US20220091595A1 (en) 2022-03-24
JP6861895B1 (ja) 2021-04-21
US11474876B2 (en) 2022-10-18
CN113826077B (zh) 2023-05-02
CN113826077A (zh) 2021-12-21

Similar Documents

Publication Publication Date Title
CN107003661B (zh) 对来自至少一台数控机器或工业机器人进程相关的数据进行数据采集和预处理的客户端装置
JP5072373B2 (ja) 遠隔監視・診断システム
JP5951200B2 (ja) 加工関連データ処理システム
EP2466404A1 (en) Method for controlling industrial robots in a work area
US12088668B2 (en) Centralized management of containerized applications deployed on distributed gateways
US12047249B2 (en) Centralized management of data flow maps for distributed edge node deployment
JP6861895B1 (ja) データ処理装置、データ処理システム、データ処理方法およびプログラム
TWI550372B (zh) 可程式控制器及可程式控制器之控制方法
WO2019244312A1 (ja) データ処理装置、データ処理システム、データ処理方法及びプログラム
JPWO2020136845A1 (ja) データ配送制御装置、方法、及びプログラム
JP6694327B2 (ja) 機器制御システム
US8301273B2 (en) Method for providing functions in an industrial automation system, control program and industrial automation system
JP6878697B2 (ja) データ処理装置、データ処理方法およびプログラム
JP6833116B1 (ja) データ処理装置、データ処理方法およびプログラム
JP6833109B1 (ja) データ収集装置、データ収集方法及びプログラム
WO2019244327A1 (ja) 管理装置、管理方法及びプログラム
JP2007329564A (ja) ファイル送信端末
JP6790309B1 (ja) データ処理装置、データ送信方法及びプログラム
WO2024121975A1 (ja) 表示装置、表示方法及びプログラム
KR20230006274A (ko) Rpa실행 모니터링 방법
WO2020166004A1 (ja) 制御システム、プログラマブルロジックコントローラ、方法、及びプログラム
KR20170051408A (ko) 작업 툴 네트워크 환경에서 통신을 용이하게 하기 위한 방법 및 시스템
JP2005044038A (ja) リモートメンテナンス方法およびそのシステム
KR20180094162A (ko) 다양한 산업용 로봇 및 액츄에이터 협업을 위한 로봇 협업 엔진
TWM535843U (zh) 生產即時資訊收集系統(ins)

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200406

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200406

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200406

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200804

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210330

R150 Certificate of patent or registration of utility model

Ref document number: 6861895

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250