JP2022007436A - エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム - Google Patents

エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム Download PDF

Info

Publication number
JP2022007436A
JP2022007436A JP2020110416A JP2020110416A JP2022007436A JP 2022007436 A JP2022007436 A JP 2022007436A JP 2020110416 A JP2020110416 A JP 2020110416A JP 2020110416 A JP2020110416 A JP 2020110416A JP 2022007436 A JP2022007436 A JP 2022007436A
Authority
JP
Japan
Prior art keywords
variable
unit
variables
control device
engineering
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
JP2020110416A
Other languages
English (en)
Other versions
JP7147807B2 (ja
Inventor
慎一朗 小畑
Shinichiro Obata
恵 安田
Megumi Yasuda
隆章 正垣
Takaaki Masagaki
優 上遠野
Yu KATONO
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP2020110416A priority Critical patent/JP7147807B2/ja
Priority to EP21180625.2A priority patent/EP3933519A1/en
Priority to US17/355,207 priority patent/US11709478B2/en
Priority to CN202110707914.1A priority patent/CN113848770B/zh
Publication of JP2022007436A publication Critical patent/JP2022007436A/ja
Application granted granted Critical
Publication of JP7147807B2 publication Critical patent/JP7147807B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/409Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by using manual data input [MDI] or by using control panel, e.g. controlling functions with the panel; characterised by control panel details or by setting parameters
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • 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/31449Monitor workflow, to optimize business, industrial processes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Programmable Controllers (AREA)

Abstract

Figure 2022007436000001
【課題】1以上の産業装置を制御する制御装置を制御可能な上位制御装置に記憶された複数の変数のうち、ユーザが所望する任意の変数の収集及び書き換えの少なくとも一方を行う。
【解決手段】エンジニアリング装置(10)は、1以上の産業装置(30)を制御する制御装置(20)を制御可能な上位制御装置の設定を行う。表示制御部(101)は、上位制御装置(20)に記憶された複数の変数の各々の名前を表示させる。変数受付部(104)は、複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付ける。設定部(109)は、指定された変数の収集及び書き換えの少なくとも一方の設定を行う。
【選択図】図7

Description

本開示は、エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラムに関する。
特許文献1には、制御装置により制御される産業装置のトレースデータを収集し、収集したトレースデータをクラウドサーバにアップロードし、解析者に対してトレースデータの解析を依頼するシステムが記載されている。
国際公開第2015/068210号
本開示の一態様が解決しようとする課題は、例えば、1以上の産業装置を制御する制御装置を制御可能な上位制御装置に記憶された複数の変数のうち、ユーザが所望する任意の変数の収集及び書き換えの少なくとも一方を行うことである。
本開示の一側面に係るエンジニアリング装置は、1以上の産業装置を制御する制御装置を制御可能な上位制御装置の設定を行うエンジニアリング装置であって、前記上位制御装置に記憶された複数の変数の各々の名前を表示させる表示制御部と、前記複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付ける変数受付部と、前記指定された変数の収集及び書き換えの少なくとも一方の設定を行う設定部と、を有する。
本開示の一側面に係る上位制御装置は、上記又は下記の何れかに記載の上位制御装置であって、上記又は下記の何れかに記載のエンジニアリング装置の設定部により設定された設定内容を記憶する記憶部と、前記設定内容に基づいて、前記指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する処理実行部と、を有する。
本開示の一側面に係るエンジニアリング方法は、1以上の産業装置を制御する制御装置を制御可能な上位制御装置の設定に関するエンジニアリング方法であって、前記上位制御装置に記憶された複数の変数の各々の名前を表示させ、前記複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付け、前記指定された変数の収集及び書き換えの少なくとも一方の設定を行う。
本開示の一側面に係る処理実行方法は、上記エンジニアリング方法により設定された設定内容に基づいて、前記指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する。
本開示の一側面に係るプログラムは、1以上の産業装置を制御する制御装置を制御可能な上位制御装置の設定を行うエンジニアリング装置を、前記上位制御装置に記憶された複数の変数の各々の名前を表示させる表示制御部、前記複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付ける変数受付部、前記指定された変数の収集及び書き換えの少なくとも一方の設定を行う設定部、として機能させる。
本開示の一側面に係るプログラムは、上記上位制御装置を、上記エンジニアリング装置の設定部により設定された設定内容に基づいて、前記指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する処理実行部、として機能させる。
本開示の一側面によれば、前記エンジニアリング装置は、前記指定された変数の収集及び書き換えの少なくとも一方に要する前記上位制御装置のコストを取得する第1コスト取得部を更に有し、前記表示制御部は、前記コストを表示させる。
本開示の一側面によれば、前記第1コスト取得部は、前記指定された変数が記憶されたメモリの種類と、前記指定された変数の形式と、の少なくとも一方に基づいて、前記コストを取得する。
本開示の一側面によれば、前記エンジニアリング装置は、前記指定された変数の収集及び書き換えの少なくとも一方のために使用可能な前記上位制御装置のコストを取得する第2コスト取得部を更に有し、前記表示制御部は、前記コストを表示させる。
本開示の一側面によれば、前記コストは、前記上位制御装置のCPU使用率と、前記上位制御装置のスキャン時間と、の少なくとも一方を含む。
本開示の一側面によれば、前記エンジニアリング装置は、前記コストに基づいて、所定の条件が満たされるか否かを判定する判定部を更に有し、前記表示制御部は、前記条件が満たされると判定された場合に、所定のアラートを表示させる。
本開示の一側面によれば、前記エンジニアリング装置は、前記制御装置を制御するために要する前記上位制御装置のコストを取得する第3コスト取得部を更に有し、前記表示制御部は、前記コストを表示させる。
本開示の一側面によれば、前記第3コスト取得部は、前記上位制御装置による前記制御装置の制御結果に基づいて、実測値である前記コストを取得する。
本開示の一側面によれば、前記エンジニアリング装置は、前記指定された変数の収集及び書き換えの少なくとも一方を行う周期の指定を受け付ける周期受付部を更に有し、前記設定部は、前記指定された周期で前記指定された変数の収集及び書き換えの少なくとも一方を行うように、前記設定を行う。
本開示の一側面によれば、前記複数の変数の各々は、複数の属性のうちの少なくとも1つに属し、前記エンジニアリング装置は、前記複数の属性のうちの少なくとも1つの指定を受け付ける属性受付部を更に有し、前記変数受付部は、前記指定された属性に属する複数の前記変数の指定を一括で受け付ける。
本開示の一側面によれば、前記表示制御部は、前記複数の変数のうち、前記指定された属性に属する複数の前記変数をフィルタリングして表示させ、前記変数受付部は、前記フィルタリングされた複数の変数の指定を一括で受け付ける。
本開示の一側面によれば、前記上位制御装置は、複数の前記制御装置の各々を制御し、前記表示制御部は、前記複数の制御装置の各々の名前と、当該制御装置に対応する複数の変数の各々の名前と、を表示させ、前記変数受付部は、前記複数の制御装置にそれぞれ対応する複数の変数の中から、収集及び書き換えの少なくとも一方が行われる変数の指定を受け付ける。
本開示の一側面によれば、前記制御装置は、複数の工程の各々を順番に実行し、前記表示制御部は、前記複数の工程の各々の名前と、当該工程に対応する複数の変数の各々の名前と、を表示させ、前記変数受付部は、前記複数の工程にそれぞれ対応する複数の変数の中から、収集及び書き換えの少なくとも一方が行われる変数の指定を受け付ける。
本開示の一側面によれば、前記上位制御装置は、前記複数の変数の各々を記憶するCPUと、前記複数の変数の各々を記憶するIoT部と、を有し、前記CPUと前記IoT部は、所定の周期で整合が取られており、前記変数受付部は、前記CPUから前記IoT部を介してデータ収集装置に収集させる変数、及び、前記IoT部から前記CPUに書き換える変数の少なくとも一方の指定を受け付け、前記設定部は、前記指定された変数を前記データ収集装置に収集させるための設定、及び、前記指定された変数を前記IoT部から前記CPUに書き換えるための設定の少なくとも一方を行う。
本開示によれば、例えば、1以上の産業装置を制御する制御装置を制御可能な上位制御装置に記憶された複数の変数のうち、ユーザが所望する任意の変数の収集及び書き換えの少なくとも一方を行うことができる。
生産システムの全体構成の一例を示す図である。 データ共有設定画面の一例を示す図である。 ユーザがチェックボックスをオンにした場合のデータ共有設定画面の一例を示す図である。 データ共有処理の予測時間と高速スキャンタイムの最大値の合計値が高速スキャンタイムの設定値を超えた場合のデータ共有設定画面の一例を示す図である。 データ共有に必要な時間が固定された場合のデータ共有設定画面の一例を示す図である。 ユーザが階層名を指定してフィルタリングが実行されたデータ共有設定画面の一例を示す図である。 生産システムで実現される機能を示す機能ブロック図である。 設定内容データのデータ格納例を示す図である。 生産システムで実行される処理の一例を示すフロー図である。 生産システムで実行される処理の一例を示すフロー図である。
[1.生産システムの全体構成]
1以上の産業装置を制御する制御装置を制御可能な上位制御装置に記憶された種々の変数を収集して解析することが検討されている。変数を収集して解析したり、解析結果に応じて変数を書き換えたりすれば、制御の精度を高めたり、障害の発生を未然に防止したりすることができる。この点、従来の技術では、上位制御装置に記憶された複数の変数のうちの任意の変数を、収集及び書き換えの少なくとも一方の対象とすることができなかった。そこで発明者達は、上位制御装置に記憶された複数の変数のうち、ユーザが所望する任意の変数の収集及び書き換えの少なくとも一方を行うために鋭意研究開発を行った結果、新規かつ独創的なエンジニアリング装置等に想到した。以降、本実施形態に係るエンジニアリング装置等を詳細に説明する。
図1は、生産システムの全体構成の一例を示す図である。図1に示すように、生産システム1は、エンジニアリング装置10、上位制御装置20、ロボットコントローラ30、ロボット40、及びデータ収集装置50を含む。図1では、各装置を1台ずつ示しているが、各装置は複数台存在してもよい。
生産システム1に含まれる各装置は、任意のネットワークに接続可能である。本実施形態では、各装置がEthernet(登録商標)等の一般的なネットワークで接続されている場合を説明するが、各装置は、産業装置用のネットワークにより接続されてもよい。例えば、上位制御装置20と、エンジニアリング装置10及びデータ収集装置50と、が一般的なネットワークで接続され、上位制御装置20とロボットコントローラ30とが産業装置用のネットワークで接続されるといったように、異なる種類のネットワークで接続されてもよい。
エンジニアリング装置10は、1以上のロボット40を制御するロボットコントローラ30を制御可能な上位制御装置20の設定を行うコンピュータである。例えば、エンジニアリング装置10は、パーソナルコンピュータ、携帯電話(スマートフォンを含む)、又は携帯端末(タブレット型端末を含む)である。なお、エンジニアリング装置10は、上位制御装置20以外の他の装置の設定を行ってもよい。
エンジニアリング装置10には、ユーザの設定作業を支援するためのエンジニアリングツールがインストールされている。例えば、エンジニアリングツールは、プログラムの作成、パラメータの設定、装置間の通信設定、レジスタの定義、又は変数の定義といった種々の目的で利用される。エンジニアリング装置10は、CPU11、記憶部12、通信部13、操作部14、及び表示部15を含む。
CPU11は、少なくとも1つのプロセッサを含む。CPU11は、circuitryの一種である。記憶部12は、RAMやハードディスクを含み、各種プログラムやデータを記憶する。CPU11は、これらプログラムやデータに基づいて各種処理を実行する。通信部13は、ネットワークカードや各種通信コネクタ等の通信インタフェースを含み、他の装置との通信を行う。操作部14は、マウスやキーボード等の入力デバイスである。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、CPU11の指示により各種画面を表示する。
上位制御装置20は、他の装置を制御可能なコンピュータである。上位制御装置20は、他の装置を制御する機能を有していればよく、必ずしも他の装置を制御しなければならないわけではない。例えば、上位制御装置20は、ロボットコントローラ30への制御を行わずに、ロボットコントローラ30からデータ収集のみを実行してもよい。生産システム1全体は、ラインよりも小さな単位であるセルと呼ばれることがあり、この場合には、上位制御装置20は、セルコントローラと呼ばれることもある。上位制御装置20は、PLC(Programmable Logic Controller)の一種に相当することもある。
本実施形態では、上位制御装置20は、ロボットコントローラ30を制御可能である。例えば、上位制御装置20は、複数のロボットコントローラ30を制御可能であってもよい。また例えば、上位制御装置20は、互いに異なる種類の複数の装置を制御可能であってもよい。上位制御装置20の制御対象となる装置の台数及び種類は、本実施形態の例に限られず、任意の台数及び任意の種類の装置が制御対象になってよい。
上位制御装置20は、CPU21、記憶部22、通信部23、及びIoT部24を含む。CPU21、記憶部22、及び通信部23の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様であってよい。IoT部24は、ネットワークを介して、他のコンピュータにデータを送信するためのユニットである。例えば、IoT部24は、CPU、記憶部、及び通信部を含む。IoT部24に含まれるCPU、記憶部、及び通信部の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様であってよい。
なお、CPU21、記憶部22、及び通信部23は、上位制御装置20の第1の筐体(以降、CPUユニット)に含まれており、IoT部24は、上位制御装置20の第2の筐体(以降、IoTユニット)に含まれていてもよい。この場合、エンジニアリング装置10は、CPUユニット及びIoTユニットの各々に接続可能である。ユーザは、エンジニアリング装置10をCPUユニットに接続してもよいし、エンジニアリング装置10をIoTユニットに接続してもよい。
ロボットコントローラ30は、ロボット40を制御するコンピュータである。ロボットコントローラ30は、制御装置の一例である。このため、本実施形態でロボットコントローラ30と記載した箇所は、制御装置と読み替えることができる。制御装置は、後述する産業装置を制御する装置であればよく、任意の種類の装置であってよい。例えば、制御装置は、PLC、モーションコントローラ、モータコントローラ、インバータ、コンバータ、工作機械、搬送装置、又は半導体製造装置であってもよい。制御装置は、任意の台数の産業装置を制御可能である。制御装置は、1台の産業装置だけを制御してもよいし、複数台の産業装置を制御してもよい。制御装置は、産業装置の上位装置に相当する。上位制御装置20は、制御装置を制御することがあるので、制御装置よりも更に上位の装置に相当する。
ロボット40は、ロボットコントローラ30により制御される産業用ロボットである。例えば、ロボット40は、ロボットアーム、ロボットハンド、モータ、及びセンサを含む。センサは、物理量を検出可能なセンサであればよく、例えば、モータエンコーダ、トルクセンサ、モーションセンサ、把持センサ、ビジョンセンサ、又は温度センサである。ロボット40は、産業装置の一例である。このため、本実施形態でロボット40と記載した箇所は、産業装置と読み替えることができる。産業装置は、人間が行う作業の補助又は代行をする機器及びその周辺機器の総称である。例えば、産業用ロボット、サーボアンプ、又はモータは、産業装置に相当する。広い意味では、上位制御装置20、ロボットコントローラ30、及びセンサも産業装置の一種である。
データ収集装置50は、生産システム1におけるデータを収集するコンピュータである。データ収集装置50は、パーソナルコンピュータ、サーバコンピュータ、携帯電話(スマートフォンを含む)、又は携帯端末(タブレット型端末を含む)である。データ収集装置50は、CPU51、記憶部52、通信部53、操作部54、及び表示部55を含む。CPU51、記憶部52、通信部53、操作部54、及び表示部55の物理的構成は、それぞれCPU11、記憶部12、通信部13、操作部14、及び表示部15と同様であってよい。
なお、エンジニアリング装置10、上位制御装置20、ロボットコントローラ30、ロボット40、及びデータ収集装置50の各々に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されてもよい。また、各装置のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)が含まれてもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが、読取部又は入出力部を介して供給されてもよい。
また例えば、上位制御装置20には、上位制御装置20が直接的に制御するロボット等の産業装置が接続されていてもよい。また例えば、上位制御装置20及びロボットコントローラ30の各々には、FPGA又はASICと呼ばれる回路が含まれてもよい。また例えば、上位制御装置20及びロボットコントローラ30の各々には、先述したセンサ又は入出力機器などが接続されていてもよい。
[2.生産システムの概要]
本実施形態の上位制御装置20は、複数の変数の各々に基づいて、ロボットコントローラ30を制御する。変数は、ロボットコントローラ30を制御するための制御プログラムにより参照される情報である。制御プログラムは、変数を書き換えることもある。例えば、変数は、途中の計算結果、アラームの有無、又は、センサにより検出された物理量(例えば、トルクセンサにより検出されたトルク値、又は、モータエンコーダにより検出されたモータの回転速度)を示す。
例えば、ロボットコントローラ30が複数の工程を所定の順序で実行する場合、制御プログラムには、各工程の実行順が記述されている。上位制御装置20は、制御プログラムに基づいて、ロボットコントローラ30に対して指示を送る。変数は、工程の実行条件になってもよい。例えば、ロボットコントローラ30は、工程を開始するための変数、工程を一時停止するための変数、又は、工程を終了するための変数を記憶する。変数は、入出力変数と呼ばれることもある。
工程とは、ロボットコントローラ30が行う作業又は動作である。工程は、1つの作業だけから構成されてもよいし、複数の作業の組み合わせから構成されてもよい。工程は、ロボットコントローラ30の用途に応じた任意の内容であってよく、例えば、ワークの認識、ワークの把持、扉の開閉、ワークのセット、又は工作機器を利用した加工などである。ロボットコントローラ30は、少なくとも1つの工程を行う。ロボットコントローラ30が行う工程の数は、任意の数であってよく、ロボットコントローラ30は、1つの工程だけを行ってもよいし、複数の工程を行ってもよい。ロボットコントローラ30は、上位制御装置20から受信した指示と、自身に記憶された装置プログラムと、に基づいて工程を行う。
装置プログラムは、ロボットコントローラ30の動作を定義したプログラムである。装置プログラムには、各工程における個々の手順が定義されている。装置プログラムは、ロボットコントローラ30に応じた任意の言語で作成可能であり、例えば、ラダー言語又はロボット言語等によって作成される。本実施形態では、工程ごとに装置プログラムが用意されている。このため、あるロボットコントローラ30がn個(nは自然数)の工程を行うとすると、当該ロボットコントローラ30は、少なくともn個の装置プログラムを記憶していることになる。
なお、変数の種類は、上記の例に限られない。例えば、上位制御装置20からロボットコントローラ30に対するコマンドを示す変数が存在してもよい。また例えば、ある変数が示すコマンドの実行開始を示す別の変数が存在してもよい。また例えば、ロボットコントローラ30が実行すべきジョブ名やその実行条件を示す変数が存在してもよい。また例えば、ロボットコントローラ30から上位制御装置20への応答を示す変数が存在してもよい。また例えば、ロボットコントローラ30の制御とは直接的に関係がない変数が存在してもよい。
ユーザは、エンジニアリング装置10を操作して、上記のような変数を記憶する上位制御装置20の設定を行う。本実施形態でユーザと記載した箇所は、上位制御装置20のユーザを意味する。上位制御装置20のユーザは、ロボットコントローラ30のユーザ及びデータ収集装置50のユーザと同じであってもよいが、本実施形態では、これらのユーザが異なる場合を説明する。
例えば、上位制御装置20に記憶された変数には、ユーザのノウハウに相当する変数も存在する。このため、変数の中には、データ収集装置50のユーザに公開しない変数も存在する。また例えば、データ収集装置50のユーザは、変数の詳細を把握していないことがある。このため、変数の中には、データ収集装置50の解析結果を反映させない方がよい変数も存在する。
そこで、上位制御装置20のユーザは、エンジニアリング装置10にインストールされたエンジニアリングツールを利用して、上位制御装置20とデータ収集装置50との間における変数のデータ共有設定を行う。例えば、ユーザがエンジニアリング装置10を操作してエンジニアリングツールが起動すると、各種設定を行うためのメニュー画面が表示部15に表示される。ユーザがメニュー画面からデータ共有設定を行うためのアイコンを選択すると、データ共有設定画面が表示部15に表示される。
図2は、データ共有設定画面の一例を示す図である。図2に示すように、データ共有設定画面Gには、上位制御装置20に記憶された変数のリストLが表示される。例えば、リストLには、ユニット名、入出力情報、階層名(図2では階層1~3)、変数名、及び共有設定の内容が表示される。ユニット名は、変数が記憶されるユニットの名称である。本実施形態では、上位制御装置20のCPU21内のメモリに変数が記憶されるので、図2では「CPU」のユニット名が表示される。他のユニットに変数が記憶される場合には、当該他のユニットの名前がユニット名に表示される。なお、本実施形態では、CPUユニットとIoTユニットとの間においてデータ共有が実現される場合を説明するが、IoTユニットと他のユニットとの間でデータ共有が実現されてもよい。例えば、ロボットコントローラのユニットとIoTユニットとの間でデータ共有が実現されてもよい。
入出力情報は、変数が入力属性と出力属性の何れかを有する場合に、その属性名を示す。入力属性は、上位制御装置20に対する入力に相当する変数を意味する。出力属性は、上位制御装置20からの出力に相当する変数を意味する。例えば、上位制御装置20が直接的に他の装置を制御する場合、他の装置に対する指示を示す変数には、出力属性が与えられる。他の装置からの応答を示す変数には、入力属性が与えられる。本実施形態では、説明の簡略化のために、入力属性と出力属性が用いられないものとする。このため、図2の例では、入出力情報には、何も表示されない。
階層名は、変数に付与された階層の名前である。階層は、変数を分類するための情報である。変数の分類が階層構造で定義されている。本実施形態では、2段階の階層を説明するが、階層は、3段階以上であってもよい。1段階目の階層は、上位の分類を示し、2段階目の階層は、下位の分類を示す。図2の例では、3段階目の階層名まで表示可能になっているが、本実施形態では、3段階目の階層は用いられないので、階層3には、何も表示されない。
変数名は、変数の名前である。変数名は、変数を識別可能な情報であればよく、例えば、人間が目で見て識別可能な文字列、IDのような記号列、又は変数に対応するレジスタ番号によって表現される。変数名は、ユーザが指定可能であってもよいし、予め定められたデフォルトの名前であってもよい。例えば、ユーザはエンジニアリングツールを利用して、変数定義を作成する。変数定義は、生産システム1で用いられる変数を定義したファイルである。例えば、変数定義には、変数名、変数に対応するレジスタ番号、変数が記憶されるユニットのユニット名、変数の入出力情報、変数の階層名、変数を参照等するプログラム、及び変数の補足説明を示すコメントなどが示されている。
図2のリストLに表示される各変数の共有設定は、データ共有をするか否かを示す情報である。データ共有は、変数の収集及び書き換えの少なくとも一方を意味する。本実施形態では、変数の収集及び書き換えの両方が可能な場合を説明するが、収集だけが可能な変数が存在してもよいし、書き換えだけが可能な変数が存在してもよい。
変数の収集とは、上位制御装置20に記憶された変数を、他の装置に取得させることである。本実施形態では、CPU21に記憶された変数をデータ収集装置50が収集することが、変数の収集に相当する。より具体的には、CPU21に記憶された変数は、IoT部24にコピーされたうえで、データ収集装置50に送信されるので、IoT部24にコピーされた変数をデータ収集装置50が収集することが、変数の収集に相当する。なお、IoT部24を省略する場合には、CPU21に記憶された変数がそのままデータ収集装置50に送信されてもよい。また、変数を収集する装置は、データ収集装置50以外の装置であってもよい。
変数の書き換えとは、外部からの指示により、上位制御装置20に記憶された変数を更新することである。書き換えは、上書きということもできる。ある変数の解析結果に応じて、その変数又は他の変数が書き換えられる場合、変数の書き換えは、フィードバックということもできる。変数の書き換えにより、その変数の値が変わることもあれば、値が偶然変わらないこともある。
本実施形態では、CPU21に記憶された変数がデータ収集装置50の指示により書き換えられることが、変数の書き換えに相当する。より具体的には、データ収集装置50により書き換えが指示された変数は、IoT部24に書き込まれたうえで、CPU21にコピーされるので、IoT部24に書き込まれた変数をCPU21にコピーすることが、変数の書き換えに相当する。なお、IoT部24を省略する場合には、データ収集装置50により書き換えが指示された変数が、そのままCPU21に書き込まれてもよい。また、変数の書き換えは、データ収集装置50以外の装置によって指示されてもよいし、IoT部24によって指示されてもよい。
図2に示すように、変数ごとに、収集対象とするか否かを指定するためのチェックボックスC1と、書き換え対象とするか否かを指定するためのチェックボックスC2と、が表示される。本実施形態では、チェックボックスにチェックを入れることを、オンにすると記載し、チェックボックスのチェックを外すことを、オフにすると記載する。
例えば、ユーザは、変数名と同じ行のチェックボックスC1をオンにすることによって、その変数名の変数を収集対象として指定できる。また例えば、ユーザは、変数名と同じ行のチェックボックスC2をオンにすることによって、その変数名の変数を書き換え対象として指定できる。図2の例は、どの変数のチェックボックスC1,C2にもチェックが入れられていない状態を示している。
なお、上位制御装置20は多数の変数を記憶するので、ユーザの操作負担を軽減するために、チェックボックスC1のオン/オフを一括で指定するためのチェックボックスC3と、チェックボックスC2のオン/オフを一括で指定するためのチェックボックスC4と、がリストL内に表示される。例えば、ユーザがチェックボックスC3をオンにすると、表示中の全ての変数のチェックボックスC3がオンになる。また例えば、ユーザがチェックボックスC4をオンにすると、表示中の全ての変数のチェックボックスC3がオンになる。
例えば、データ共有設定画面Gの表示領域A1には、変数の収集に要すると予測されるCPU21の使用率と、変数の書き換えに要すると予測されるCPU21の使用率と、が表示される。例えば、ユーザがボタンB1を選択すると、チェックボックスC1,C2がオンの変数に応じた予測値が計算されて表示領域A1に表示される。図2の例は、どの変数のチェックボックスC1,C2もオンになっていないので、使用率は0%になっている。
また例えば、データ共有設定画面Gの表示領域A2には、データ共有処理の予測時間、高速スキャンタイムの最大値、及び高速スキャンタイムの設定値が表示される。
データ共有処理の予測時間は、データ共有に要すると予測される時間である。本実施形態では、CPU21とIoT部24との間で変数がコピーされるので、コピーに要する時間がデータ共有処理の予測時間として表示領域A2に表示される。図2の例では、どの変数のチェックボックスC1,C2もオンになっていないので、データ共有処理の予測時間は0msになっている。なお、収集の予測時間と書き換えの予測時間の合計値が表示されるのではなく、収集の予測時間と書き換えの予測時間が別々に表示されてもよい。
高速スキャンタイムの最大値は、データ共有処理以外の他の処理に要する時間である。他の処理は、任意の処理であってよく、例えば、制御プログラムの実行、上位制御装置20が記憶部22に記憶されたデータを読み出す処理、又は上位制御装置20とロボットコントローラ30との間の通信処理である。高速スキャンタイムの最大値は、実測値であってもよいし、予測値であってもよい。本実施形態では、高速スキャンタイムの最大値が、制御プログラムの実際の実行結果に応じた実測値である場合を説明する。
なお、ユーザは、オフラインでも、エンジニアリングツールを利用して設定作業をすることもできる。オフラインとは、エンジニアリング装置10と上位制御装置20を接続しない状態である。オフラインの場合、制御プログラムの実測値は計測されないので、図2に示すように、高速スキャンタイムの最大値は0msになる。ユーザがエンジニアリング装置10と上位制御装置20を接続してオンラインの設定作業を開始すると、高速スキャンタイムの最大値の実測値が表示領域A2に表示される。
高速スキャンタイムの設定値は、変数のスキャン周期(更新周期又はコピー周期)である。本実施形態では、変数は定期的(周期的)にスキャンされる。本実施形態では、CPU21とIoT部24との間で変数がコピーされる。このため、スキャンは、同期又は整合ということもできる。即ち、CPU21に記憶された変数と、IoT部24に記憶された変数と、は定期的に同期又は整合が取られる。
例えば、チェックボックスC1にチェックが入れられた変数は、CPU21からIoT部24にコピーされる。また例えば、チェックボックスC2にチェックが入れられた変数は、IoT部24からCPU21にコピーされる。チェックボックスC1,C2の両方にチェックが入れられた変数は、データ収集装置50から書き換えの指示を受けない限りは、CPU21からIoT部24にコピーされ、書き換えの指示を受けた周期又はその次の周期で、IoT部24からCPU21にコピーされる。図2の例では、高速スキャンタイムの設定値が4msになっており、4msごとに、CPU21とIoT部24との間で変数のスキャンが行われる。
図3は、ユーザがチェックボックスC1,C2をオンにした場合のデータ共有設定画面Gの一例を示す図である。図3に示すように、ユーザが任意のチェックボックスC1,C2をオンにしてボタンB1を選択すると、エンジニアリング装置10は、チェックボックスC1,C2がオンの変数に基づいて、CPU21の使用率と、データ共有処理の予測時間と、を計算して表示領域A1,A2に表示させる。図3の例では、ユーザはオンラインで設定作業をしており、エンジニアリング装置10は、制御プログラムの実際の実行結果に応じた実測値を取得し、高速スキャンタイムの最大値として表示領域A2に表示させる。高速スキャンタイムの設定値には、ユーザが指定した任意の数値が表示される。
ユーザがチェックボックスC1,C2をオンにした変数が多くなると、収集対象及び書き換え対象の変数も多くなるので、CPU21の使用率と、データ共有処理の予測時間と、の各々が増加する。例えば、CPU21の使用率が100%に近づくと、上位制御装置20の動作に支障が出る可能性がある。また例えば、データ共有処理の予測時間と高速スキャンタイムの最大値の合計値(図3の例では、2.2034ms)が高速スキャンタイムの設定値(図3の例では、4ms)を超えると、上位制御装置20の動作に支障が出る可能性がある。
図4は、データ共有処理の予測時間と高速スキャンタイムの最大値の合計値が高速スキャンタイムの設定値を超えた場合のデータ共有設定画面Gの一例を示す図である。図4に示すように、ユーザがチェックボックスC3,C4の両方をオンにして、全ての変数を収集及び書き換えの対象とした場合、表示領域A1に表示されるCPU21の使用率が高くなり、表示領域A2に表示されるデータ共有処理の予測時間も長くなる。
図4の例では、データ共有処理の予測時間と高速スキャンタイムの最大値の合計値が高速スキャンタイムの設定値を超えているので、その旨のメッセージMが表示される。メッセージMが表示された場合、ユーザは、データ共有処理の予測時間と高速スキャンタイムの最大値の合計値が高速スキャンタイムの設定値を超えないように、チェックボックスのチェックを外す。なお、メッセージMは、CPU21の使用率が閾値を超えた場合に表示されてもよい。
ユーザは、メッセージMが表示されないように、所望の変数を収集対象及び書き換え対象に指定する。ユーザがボタンB2を選択すると、ユーザが指定した設定内容が上位制御装置20に反映され、データ共有設定画面Gが閉じられる。ユーザがボタンB3を選択すると、ユーザが指定した設定内容が反映されることなく、データ共有設定画面Gが閉じられる。ユーザがボタンB4を選択すると、ユーザが指定した設定内容が上位制御装置20に反映され、データ共有設定画面Gは表示されたままになる。
本実施形態では、ユーザがチェックボックスC5にチェックを入れると、データ共有処理に必要な時間が固定される。この時間を固定することで、ユーザは、データ共有処理に必要な時間の変動を気にせずに、設定作業をすることができる。
図5は、データ共有に必要な時間が固定された場合のデータ共有設定画面Gの一例を示す図である。図5に示すように、ユーザがチェックボックスC5をオンにすると、表示領域A1には、最大共有データサイズと、CPU21の使用率と、が表示される。最大共有データサイズは、変数の収集と書き換えの各々に許可された最大のデータサイズである。ユーザは、最大共有データサイズの数値を指定できる。図5の例では、データサイズとしてワード数が指定される場合を示しているが、データサイズは、バイト数等の他の数値が指定されてもよい。
ユーザは、最大共有データサイズとして、任意の数値を指定可能である。表示領域A1に表示されるCPU21の使用率は、ユーザが指定した最大共有データサイズに応じた数値となる。ユーザが指定した最大共有データサイズが大きくなるほど、CPU21の使用率の予測値も大きくなる。ユーザは、CPU21の使用率が閾値を超えないように、最大共有データサイズを指定する。
表示領域A2には、データ共有処理の予測時間に代えて、必要スキャンタイムが表示される。必要スキャンタイムは、ユーザが指定した最大共有データサイズに応じた値となる。ユーザが指定した最大共有データサイズが大きくなるほど、必要スキャンタイムも多くなる。表示領域A2に表示される高速スキャンタイムの最大値と設定値は、先述した通りである。ユーザは、必要スキャンタイムと高速スキャンタイムの最大値との合計値が高速スキャンタイムの設定値を超えないように、最大共有データサイズを指定する。
なお、図5のようにデータ共有に必要な時間が固定される場合には、最大共有データサイズ以上の変数をオンにできないように、チェックボックスC1~C4に制限がかけられてもよい。また、このような制限をかけるのではなく、CPU21の使用率が閾値を超えたり、必要スキャンタイムと高速スキャンタイムの最大値との合計値が高速スキャンタイムの設定値を超えたりした場合に、図4と同様のメッセージMが表示されてもよい。ユーザは、メッセージMが表示されないように、チェックボックスC1~C4に対する操作を行う。
本実施形態では、ユーザは、データ共有設定画面Gに表示させる変数の階層名を指定できる。ユーザが階層名を指定すると、その階層名の変数がフィルタリングされて表示される。ユーザが指定しなかった階層名の変数は、データ共有設定画面Gに表示されない。このため、ユーザは、階層名を指定してフィルタリングをした後に、チェックボックスC3,C4を選択すれば、その階層名の変数を一括してオン/オフすることができる。
図6は、ユーザが階層名を指定してフィルタリングが実行されたデータ共有設定画面Gの一例を示す図である。図6に示すように、例えば、ユーザがリストLの階層1を選択すると、階層1の階層名を示すウィンドウWが表示される。ユーザはウィンドウWに表示された任意の階層名のチェックボックスC6をオン/オフできる。ウィンドウWには、階層名を一括でオン/オフするためのチェックボックスが表示されてもよい。ユーザがボタンB5を選択すると、チェックボックスC6がオンの階層名の変数がフィルタリングされて、データ共有設定画面Gに表示される。
ユーザがボタンB6を選択すると、フィルタリングが解除され、全ての変数がデータ共有設定画面Gに表示される。また、ユーザがボタンB7を選択すると、ウィンドウWが表示される前の状態に戻る。なお、図6では、階層1が選択される場合を説明したが、階層2又は階層3が選択されてフィルタリングが行われてもよい。即ち、ユーザは、上位の階層でフィルタリングをしてもよいし、下位の階層でフィルタリングをしてもよい。
以上のように、ユーザは、エンジニアリングツールのデータ共有設定画面Gから設定作業を行うことで、上位制御装置20に記憶された複数の変数のうち、ユーザが所望する任意の変数の収集及び書き換えの少なくとも一方を行うことができるようになっている。以降、生産システム1の詳細を説明する。
[3.生産システムで実現される機能]
図7は、生産システム1で実現される機能を示す機能ブロック図である。本実施形態では、エンジニアリング装置10、上位制御装置20、ロボットコントローラ30、及びデータ収集装置50の各々で実現される機能について説明する。
[3-1.エンジニアリング装置で実現される機能]
図7に示すように、エンジニアリング装置10は、データ記憶部100、表示制御部101、周期受付部102、属性受付部103、変数受付部104、第1コスト取得部105、第2コスト取得部106、判定部107、第3コスト取得部108、及び設定部109を含む。
[データ記憶部]
データ記憶部100は、記憶部12を主として実現される。データ記憶部100は、上位制御装置20の設定を行うために必要なデータを記憶する。本実施形態では、このデータの一例として、エンジニアリングツールを利用して設定された設定内容を示す設定内容データDを説明する。
図8は、設定内容データDのデータ格納例を示す図である。図8に示すように、設定内容データDは、データ共有設定画面Gから指定された設定内容を示すデータである。例えば、設定内容データDには、高速スキャンタイムの設定値、最大共有データサイズ、変数名、ユニット名、入出力情報、階層、収集フラグ、及び書き換えフラグが格納される。
設定内容データDに格納される高速スキャンタイムの設定値は、ユーザが指定した数値である。ユーザが高速スキャンタイムの設定値を指定していない場合には、デフォルトの値(例えば、4ms)が格納される。設定内容データDに格納される最大共有データサイズは、チェックボックスC5がオンの状態で(図5のデータ共有設定画面Gの状態で)、ユーザが指定した数値である。ユーザが最大共有データサイズを指定していない場合には、デフォルトの値(例えば、0ワード)が格納される。
設定内容データDに格納される変数名は、上位制御装置20に記憶された全部又は一部の変数の変数名である。この変数は、収集及び書き換えの少なくとも一方の候補となる変数である。各変数の変数名などの詳細は、設定内容データDとは別の変数定義に定義されている。本実施形態では、変数定義の図示は省略するが、変数定義は、データ記憶部100に記憶されているものとする。例えば、変数定義は、ユーザがエンジニアリングツールを利用して定義した変数に関する各種情報が格納される。設定内容データDには、変数定義に格納された変数名、ユニット名、入出力情報、及び階層と同じ内容が格納される。
収集フラグは、収集対象の変数であるか否かを識別する情報である。チェックボックスC1がオンの変数は、収集対象であることを示す第1の値(例えば、「1」)になる。チェックボックスC1がオフの変数は、収集対象ではないことを示す第2の値(例えば、0)になる。
書き換えフラグは、書き換え対象の変数であるか否かを識別する情報である。チェックボックスC2がオンの変数は、書き換え対象であることを示す第1の値(例えば、「1」)になる。チェックボックスC2にチェックが入れられなかった変数は、書き換え対象ではないことを示す第2の値(例えば、0)になる。
なお、設定内容データDに格納される情報は、上記の例に限られない。例えば、チェックボックスC3~C6のオン/オフの状態を保持する場合には、これらの状態が設定内容データDに格納されてもよい。また、設定内容データDには、データ共有設定画面G以外の画面における設定内容が格納されていてもよい。
また、データ記憶部100に記憶されるデータは、上記の例に限られない。例えば、データ記憶部100は、エンジニアリングツールを記憶する。エンジニアリングツールには、データ共有設定画面G等の各種画面を表示させるためのプログラムと、データ共有設定画面GにおいてCPU21の使用率等の各種コストを計算するためのプログラムと、が含まれているものとする。また例えば、データ記憶部100は、ユーザがエンジニアリングツールを利用して作成したプログラムやパラメータを記憶してもよい。
[表示制御部]
表示制御部101は、エンジニアリングツールにおける各種画面を表示部15に表示させる。本実施形態では、この画面のうち、データ共有設定画面Gについて説明する。表示制御部101は、上位制御装置20に記憶された複数の変数の各々の名前を表示させる。例えば、表示制御部101は、設定内容データD又は変数定義に格納された各変数の変数名のリストLを、データ共有設定画面Gに表示させる。本実施形態では、表示制御部101が、各変数のユニット名、入出力情報、及び階層も表示させる場合を説明するが、表示制御部101は、少なくとも変数名を表示させればよい。
例えば、表示制御部101は、各変数の変数名とともに、当該変数を指定するためのチェックボックスC1,C2を表示させる。各変数を指定可能に表示させる方法は、チェックボックスに限られず、他の任意の方法を利用可能である。例えば、表示制御部101は、ラジオボタンやプルダウンメニュー等を利用して、各変数を指定可能に表示させてもよい。表示制御部101は、変数名の表示以外にもCPU21の使用率等の表示制御も行うが、他の表示制御については後述する。
[周期受付部]
周期受付部102は、指定された変数の収集及び書き換えの少なくとも一方を行う周期の指定を受け付ける。この周期は、スキャンが行われる時間間隔である。本実施形態では、周期受付部102は、高速スキャンタイムの設定値の指定を受け付ける。例えば、周期受付部102は、データ共有設定画面Gの表示領域A2に対し、任意の数値の指定を受け付けることによって、高速スキャンタイムの設定値の指定を受け付ける。高速スキャンタイムの設定値は、上限値及び下限値の少なくとも一方が設けられていてもよいし、特に制限なく任意の数値が指定できてもよい。
[属性受付部]
本実施形態では、複数の変数の各々は、複数の属性のうちの少なくとも1つに属しており、属性受付部103は、複数の属性のうちの少なくとも1つの指定を受け付ける。属性は、変数の分類を示す情報である。属性は、変数の性質又は特徴を示す情報ということもできる。本実施形態では、階層が属性に相当する場合を説明する。このため、本実施形態で階層について説明している箇所は、属性と読み替えることができる。階層によって属性が表現される場合には、下の階層になるほど、変数の具体的な分類が表現される。なお、属性は、階層関係を持たない情報であってもよい。
データ共有設定画面Gには、複数の階層の各々の階層名が表示され、ユーザは、任意の階層を指定可能である。例えば、図6に示すようなウィンドウWにおいて各階層の階層名が表示され、属性受付部103は、チェックボックスC6に対する操作を受け付けることによって、階層の指定を受け付ける。本実施形態では、チェックボックスC6をオンにすることは、階層の指定を受け付けることに相当する。なお、階層は、チェックボックスC6以外の任意の方法によって指定されてよく、例えば、ラジオボタンやプルダウンメニューによって指定されてもよい。
例えば、表示制御部101は、複数の変数のうち、指定された属性に属する複数の変数をフィルタリングして表示させる。表示制御部101は、指定されなかった属性に属する変数は、データ共有設定画面Gに表示させず、指定された属性に属する変数を、データ共有設定画面Gに表示させる。なお、特にフィルタリングが行われずに、指定された属性に属する変数が収集対象及び書き換え対象として一括で指定されるようにしてもよい。
[変数受付部]
変数受付部104は、複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付ける。本実施形態では、チェックボックスC1をオンにすることは、収集を行う変数の指定を受け付けることに相当する。チェックボックスC2をオンにすることは、書き換えを行う変数の指定を受け付けることに相当する。変数受付部104は、リストLに対するユーザの操作を受け付けることによって、少なくとも1つの変数の指定を受け付けることになる。
本実施形態では、上位制御装置20は、複数の変数の各々を記憶するCPU21と、複数の変数の各々を記憶するIoT部24と、を有し、CPU21とIoT部24は、所定の周期で整合が取られている。このため、変数受付部104は、CPU21からIoT部24を介してデータ収集装置50に収集させる変数、及び、IoT部24からCPU21に書き換える変数の少なくとも一方の指定を受け付けることになる。
例えば、変数受付部104は、指定された階層に属する複数の変数の指定を一括で受け付けてもよい。指定を一括で受け付けるとは、1回の操作で複数の変数を指定することである。本実施形態では、ユーザが指定した階層の変数がフィルタリングされて表示された後に、チェックボックスC3,C4を利用して、表示中の変数の一括指定が受け付けられるので、変数受付部104は、フィルタリングされた複数の変数の指定を一括で受け付けることになる。
なお、表示される変数のフィルタリングが行われなくても、変数受付部104は、ユーザが指定した階層に属する変数の一括指定を受け付けてもよい。この場合、表示中の全ての変数が一括して指定されるのではなく、表示中の変数のうち、ユーザが指定した階層に属する変数の一括指定が受け付けられるようにすればよい。
[第1コスト取得部]
第1コスト取得部105は、指定された変数の収集及び書き換えの少なくとも一方に要する上位制御装置20のコストを取得する。コストは、上位制御装置20の負荷に関する情報である。本実施形態では、コストは、上位制御装置20のCPU使用率と、上位制御装置20のスキャン時間と、の少なくとも一方を含む場合を説明するが、他の情報がコストに相当してもよい。例えば、通信負荷又はメモリ消費量がコストに相当してもよい。これらの点は、第2コスト取得部106及び第3コスト取得部108の各々が取得するコストについても同様である。
第1コスト取得部105が取得するコストは、データ共有処理に見込まれるコストである。即ち、第1コスト取得部105が取得するコストは、実際に発生するコストの予測値ということができる。変数とコストとの関係を示すデータは、予めデータ記憶部100に記憶されているものとする。この関係は、数式形式又はテーブル形式で定義されていてもよいし、プログラムコードの一部として記述されていてもよい。第1コスト取得部105は、収集対象及び書き換え対象の少なくとも一方に指定された変数と、上記関係と、に基づいて、コストを算出する。
例えば、収集対象及び書き換え対象の少なくとも一方に指定された変数が多いほど、コストが高くなる。また例えば、収集対象及び書き換え対象の少なくとも一方に指定された変数のサイズ(本実施形態では、ワード数)が大きいほど、コストが高くなる。また例えば、収集対象及び書き換え対象の少なくとも一方に指定された変数が格納されたレジスタの読み出し速度が遅いほど、コストが高くなる。変数とコストの関係は、これらの関係に限られず、任意の関係が定義されていてよい。
例えば、第1コスト取得部105は、指定された変数が記憶されたメモリの種類と、指定された変数の形式と、の少なくとも一方に基づいて、コストを取得してもよい。例えば、第1コスト取得部105は、指定された変数が記憶されたメモリが不揮発性メモリである場合には、揮発性メモリである場合よりもコストが高くなるように、コストを算出する。また例えば、第1コスト取得部105は、指定された変数が記憶されたメモリの読み出し速度が遅いほどコストが高くなるように、コストを計算する。
また例えば、第1コスト取得部105は、指定された変数の形式が相対的にサイズ(本実施形態では、ワード数)の大きい形式である場合に、コストが相対的に高くなるようにコストを算出する。相対的にサイズの大きい形式とは、例えば、ロング型、フロート型、又はダブル型などである。変数の形式は、プログラム言語で定められた形式が利用されるようにすればよい。形式に応じたサイズは、プログラム言語で定められているものとする。
表示制御部101は、第1コスト取得部105により取得されたコストを表示させる。本実施形態では、チェックボックスC5がオフの状態で表示領域A1に表示されるCPU21の使用率と、表示領域A2に表示されるデータ共有処理の予測時間と、がコストに相当する。他のコストが計算される場合には、当該他のコストが表示されるようにすればよい。表示制御部101は、指定された変数が変更されてコストが更新されると、コストの表示も更新する。
[第2コスト取得部]
第2コスト取得部106は、指定された変数の収集及び書き換えの少なくとも一方のために使用可能な上位制御装置20のコストを取得する。第2コスト取得部106が取得するコストは、データ共有処理のために確保又は許可されたコストの上限値である。例えば、第2コスト取得部106は、データ共有処理で使用可能なCPU使用率の上限値と、データ共有処理で使用可能な時間の上限値と、をコストとして取得する。
本実施形態では、ユーザが指定した最大共有データサイズに応じたCPU使用率とデータ共有時間に固定される。このため、第2コスト取得部106は、ユーザが指定した最大共有データサイズに基づいて、CPU21の使用率と必要スキャンタイムとを、コストとして取得する。最大共有データサイズと、CPU21の使用率及び必要スキャンタイムと、の関係を示すデータは、予めデータ記憶部100に記憶されているものとする。この関係は、数式形式又はテーブル形式で定義されていてもよいし、プログラムコードの一部として記述されていてもよい。第2コスト取得部106は、ユーザが指定した最大共有データサイズと、上記関係と、に基づいて、コストを算出する。例えば、ユーザが指定した最大共有データサイズが大きいほど、コストが高くなる。
表示制御部101は、第2コスト取得部106により取得されたコストを表示させる。本実施形態では、チェックボックスC5がオンの状態で表示領域A1に表示されるCPU21の使用率と、表示領域A2に表示される必要スキャンタイムと、がコストに相当する。他のコストが計算される場合には、当該他のコストが表示されるようにすればよい。表示制御部101は、最大共有データサイズが変更されてコストが更新されると、コストの表示も更新する。
なお、第2コスト取得部106によるコストの取得方法は、本実施形態の例に限られない。例えば、第2コスト取得部106は、高速スキャンタイム設定値から高速スキャンタイム最大値を引いた値を、コストとして取得してもよい。図5の例であれば、必要スキャンタイムとして2msまで利用可能なので、第2コスト取得部106は、2msをコストとして取得してもよい。
[判定部]
判定部107は、第1コスト取得部105が取得したコストに基づいて、所定の条件が満たされるか否かを判定する。所定の条件は、第1コスト取得部105が取得したコストが閾値以上になることである。例えば、CPU21の使用率が閾値以上になること、又は、データ共有処理の予測時間が閾値以上になることは、所定の条件が満たされることに相当する。閾値は、固定値であってもよいし、上位制御装置20の動作に応じて決定される可変値であってもよい。本実施形態では、CPU21の使用率が固定値(例えば、100%)であり、データ共有処理の予想時間が可変値(例えば、高速スキャンタイムの設定値から高速スキャンタイムの最大値を引いた値)である場合を説明する。
表示制御部101は、所定の条件が満たされると判定された場合に、所定のアラートを表示させる。本実施形態では、メッセージMがアラートに相当する。アラートは、視覚的に認識可能な画像であればよく、メッセージM以外の画像であってもよい。例えば、所定のアイコンがアラートに相当してもよいし、画面の一部又は全部を点滅させることがアラートに相当してもよい。表示制御部101は、所定の条件が満たされない場合には、アラートを表示させず、所定の条件が満たされたことに応じて、アラートを表示させる。
[第3コスト取得部]
第3コスト取得部108は、ロボットコントローラ30を制御するために要する上位制御装置20のコストを取得する。第3コスト取得部108が取得するコストは、ロボットコントローラ30の制御に見込まれるコスト、又は、ロボットコントローラ30の制御に実際に要したコストである。即ち、第3コスト取得部108が取得するコストは、実際に発生するコストの予測値であってもよいし、実際に発生したコストの実測値であってもよい。本実施形態では、第3コスト取得部108は、高速スキャンタイムの最大値をコストとして取得する。
本実施形態では、高速スキャンタイムの最大値は実測値なので、第3コスト取得部108は、上位制御装置20によるロボットコントローラ30の制御結果に基づいて、実測値であるコストを取得する。例えば、第3コスト取得部108は、上位制御装置20に高速スキャンタイムの最大値を計測させ、上位制御装置20から、計測された高速スキャンタイムの最大値をコストとして取得する。例えば、第3コスト取得部108は、上位制御装置20に対し、高速スキャンタイムの最大値の計測を要求する。上位制御装置20は、要求を受信すると、実際に制御プログラムを実行し、制御プログラムの実行に要した時間を計測する。この時間は、制御プログラムの最初のコードから最後のコードまでに要した時間であってもよいし、一部のコード部分の実行に要した時間であってもよい。
表示制御部101は、第3コスト取得部108により取得されたコストを表示させる。本実施形態では、表示領域A2に表示される高速スキャンタイムの最大値がコストに相当する。表示制御部101は、高速スキャンタイムの最大値の実測値が更新されてコストが更新されると、コストの表示も更新する。
なお、第3コスト取得部108によるコストの取得方法は、本実施形態の例に限られない。例えば、高速スキャンタイムの最大値は、上位制御装置20ではなく、エンジニアリング装置10側で計測されてもよい。例えば、第3コスト取得部108は、上位制御装置20から制御プログラムの処理結果を受信し、その受信結果に基づいて、高速スキャンタイムの最大値を計測してもよい。第3コスト取得部108は、ある処理の実行開始から、他の処理の実行終了までの時間を、高速スキャンタイムの最大値として計測してもよい。
また例えば、第3コスト取得部108は、予め用意されたシミュレータに基づいて、ロボットコントローラ30を制御するために要する上位制御装置20のコストを予測してもよい。シミュレータ自体は、公知のものを利用可能であり、第3コスト取得部108は、上位制御装置20の制御プログラムを仮想的に実行し、その実行結果に基づいて、コストを取得すればよい。
[設定部]
設定部109は、指定された変数の収集及び書き換えの少なくとも一方の設定を行う。本実施形態では、設定部109は、指定された変数をデータ収集装置50に収集させるための設定、及び、指定された変数をIoT部24からCPU21に書き換えるための設定の少なくとも一方を行うことになる。
ここでの設定とは、上位制御装置20に変数の収集をさせるための処理と、上位制御装置20に変数の書き換えをさせるための処理と、の少なくとも一方である。例えば、設定部109は、収集対象の変数の変数名と、書き換え対象の変数の変数名と、の少なくとも一方を、上位制御装置20に送信する。上位制御装置20は、当該送信された変数名を、第1データ記憶部200に記録し、この変数名が示す変数の収集及び書き換えの少なくとも一方を行う。
例えば、ボタンB2又はB4が選択された場合、設定部109は、各変数のチェックボックスC1のオン/オフの状態に基づいて、設定内容データDの各変数の収集フラグの値を設定し、各変数のチェックボックスC2のオン/オフの状態に基づいて、設定内容データDの各変数の書き換えフラグの値を設定する。設定部109は、設定内容データDのうち、少なくとも変数名、収集フラグ、及び書き換えフラグを上位制御装置20に送信する。上位制御装置20は、送信されたこれらの情報を、第1データ記憶部200に記録する。
また例えば、設定部109は、指定された周期で指定された変数の収集及び書き換えの少なくとも一方を行うように、設定を行う。設定部109は、ボタンB2又はB4が選択された場合、表示領域A2において指定された高速スキャンタイムの設定値を、設定内容データDに格納する。設定部109は、設定内容データDのうち、少なくとも高速スキャンタイムの設定値を上位制御装置20に送信する。上位制御装置20は、送信された高速スキャンタイムの設定値を第1データ記憶部200に記録する。
[3-2.上位制御装置で実現される機能]
図3に示すように、上位制御装置20は、第1データ記憶部200、第2データ記憶部201、動作制御部202、及び処理実行部203を含む。第1データ記憶部200は、CPU21及び記憶部22の少なくとも一方を主として実現される。第2データ記憶部201は、IoT部24を主として実現される。動作制御部202は、CPU21を主として実現される。処理実行部203は、CPU21及びIoT部24の少なくとも一方を主として実現される。
[第1データ記憶部]
第1データ記憶部200は、ロボットコントローラ30を制御するためのデータを記憶する。例えば、第1データ記憶部200は、複数の変数の各々を記憶する。本実施形態では、各変数が、第1データ記憶部200のうちのCPU21内のメモリに記憶されている場合を説明するが、各変数は、第1データ記憶部200のうちの記憶部22に記憶されていてもよい。各変数に対応するレジスタ番号は、予め定められている。例えば、ユーザがエンジニアリングツールを利用して各変数に対応するレジスタ番号を設定してもよいし、各変数に対してデフォルトのレジスタ番号が設定されていてもよい。
また例えば、第1データ記憶部200は、制御プログラムとパラメータを記憶する。また例えば、第1データ記憶部200は、ファームウェアなどの他のプログラムを記憶してもよいし、データ収集装置50にデータを送信するためのプログラムを記憶してもよい。後述する動作制御部202は、これらのプログラム及びパラメータに基づいて、ロボットコントローラ30を制御する。
また例えば、第1データ記憶部200は、エンジニアリング装置10の設定部109により設定された設定内容と、を記憶する。第1データ記憶部200は、収集対象に指定された変数の変数名、書き換え対象に指定された変数の変数名、及び高速スキャンタイムの設定値を記憶する。後述する処理実行部203は、これらの情報に基づいて、収集対象に指定された変数の収集と、書き換え対象に指定された変数の書き換えと、を行う。
[第2データ記憶部]
第2データ記憶部201は、複数の変数の各々を記憶する。第2データ記憶部201に記憶された変数と、第1データ記憶部200に記憶された変数と、は定期的にスキャンされており、互いに整合が取られる。第2データ記憶部201は、第1データ記憶部200に記憶された変数の全部又は一部が記憶される。これらの変数は、定期的にスキャンされているので、原則として同じ内容を示すが、スキャン前については、値が一致しない変数も存在する。変数のスキャンは、CPU21が主体となって実行されてもよいし、IoT部24が主体となって実行されてもよい。CPU21又はIoT部24は、スキャン周期ごとに、第1データ記憶部200に記憶された変数と、第2データ記憶部201に記憶された変数と、の整合を取ればよい。
[動作制御部]
動作制御部202は、複数の変数と制御プログラムとに基づいて、ロボットコントローラ30の動作を制御する。例えば、動作制御部202は、ロボットコントローラ30に対して指示を送り、ロボットコントローラ30は、当該指示に基づいて動作する。例えば、装置プログラムに関連付けられた変数の値に基づいてロボットコントローラ30が動作する場合、動作制御部202は、ロボットコントローラ30に対し、装置プログラムを開始させるための変数の値を変える旨の指示を送る。
例えば、動作制御部202は、第1データ記憶部200に記憶された変数の一部又は全部と、データ記憶部300に記憶された変数の一部又は全部と、を整合させる。これらの整合は、定期的に行われてもよいし、不定期的に行われてもよい。第1データ記憶部200と第2データ記憶部201との間における整合の周期と、第1データ記憶部200とデータ記憶部300との間における整合の周期と、は同じであってもよいし異なっていてもよい。例えば、上位制御装置20とロボットコントローラ30が一般的なネットワークで接続される場合、第1データ記憶部200とデータ記憶部300との間における整合の周期は、第1データ記憶部200と第2データ記憶部201との間における整合の周期よりも長くてもよい。
[処理実行部]
処理実行部203は、設定部109により設定された設定内容に基づいて、指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する。例えば、処理実行部203は、第1データ記憶部200に記憶された変数のうち、収集対象として指定された変数をデータ収集装置50に送信する。また例えば、処理実行部203は、第1データ記憶部200に記憶された変数のうち、書き換え対象として指定された変数を、データ収集装置50により指示された値に書き換える。また例えば、処理実行部203は、ユーザにより指定された高速スキャンタイムの設定値に基づいて、第1データ記憶部200に記憶された変数と、データ記憶部201に記憶された変数と、の整合を取る。
[3-3.ロボットコントローラで実現される機能]
図7に示すように、ロボットコントローラ30は、データ記憶部300及び動作制御部301を含む。データ記憶部300は、記憶部32を主として実現される。動作制御部301は、CPU31を主として実現される。
[データ記憶部]
データ記憶部300は、データ記憶部300は、ロボットコントローラ30が所定の動作をするために必要なデータを記憶する。例えば、データ記憶部300は、装置プログラムと、変数の現在値と、を記憶する。変数の現在値は、第1データ記憶部200に格納される値と同じである。なお、データ記憶部300は、変数定義に定義された変数以外の変数の値も記憶してもよい。各変数の値は、予め定められたレジスタに格納される。
[動作制御部]
動作制御部202は、データ記憶部300に記憶された装置プログラムと、上位制御装置20から受信した指示と、に基づいて、所定の工程を実行する。例えば、上位制御装置20は、ある装置プログラムを開始させる場合に、当該装置プログラムに関連付けられた変数を所定の値にする旨の指示をロボットコントローラ30に送信する。ロボットコントローラ30は、当該指示を受信すると変数を所定の値に変更する。動作制御部301は、変数が所定の値になったことを検知すると、当該変数に関連付けられた装置プログラムを実行する。
[3-4.データ収集装置で実現される機能]
図7に示すように、データ収集装置50は、データ記憶部500、収集部501、及び指令送信部502を含む。データ記憶部500は、記憶部52を主として実現され、収集部501及び指令送信部502は、CPU51を主として実現される。
[データ記憶部]
データ記憶部500は、変数を書き換えるために必要なデータを記憶する。例えば、データ記憶部500は、上位制御装置20から収集した変数が格納された収集データを記憶する。収集データは、収集対象として指定された変数の値が格納されたデータである。収集データには、ある一時点の変数の値が格納されてもよいし、変数の値の時系列的な変化が格納されてもよい。また、収集データには、1つの変数の値だけが格納されていてもよいし、複数の変数の値が格納されていてもよい。また例えば、データ記憶部500は、収集データの解析プログラムを記憶してもよい。
[収集部]
収集部501は、収集対象に指定された変数を収集する。収集部501は、上位制御装置20により送信された変数を受信し、収集データとしてデータ記憶部500に記録する。上位制御装置20は、自発的に変数を送信してもよいし、データ収集装置50の要求に応じて変数を送信してもよい。
[指令送信部]
指令送信部502は、収集したデータを解析し、変数を書き換えるための指令を送信する。動作の解析とは、収集データを解析することである。指令送信部502は、収集データが所定の条件を満たすか否かを判定することによって、解析を行う。所定の条件は、収集データに基づいて判定可能な条件であり、例えば、収集データが示す値が閾値以上であるか否か、又は、収集データに基づいて計算された値が閾値以上であるか否かである。例えば、動作に異常が発生しているか否かを判定することは、解析に相当する。また例えば、動作に異常は発生していないが、変数の値、パラメータ、又はファームウェアを変更する必要があるか否かを判定することは、解析に相当する。
指令送信部502は、上位制御装置20に対し、変数の書き換え指令を送信する。指令送信部502は、収集データの解析結果に基づいて、書き換え指令を送信するか否かを決定する。指令送信部502は、解析結果が所定の結果であった場合に、書き換え指令を送信する。書き換え指令の内容は、収集データに基づいて決まってもよいし、収集データに関係なく固定値であってもよい。また例えば、書き換え指令に含まれる変数名とその値は、解析結果によって決定されてもよい。上位制御装置20は、書き換え指令を受信すると、書き換え指令に含まれる変数名の変数を、書き換え指令に含まれる値に書き換える。
[4.生産システムで実行される処理]
図9及び図10は、生産システム1で実行される処理の一例を示すフロー図である。本実施形態では、生産システム1で実行される処理のうち、ユーザがエンジニアリングツールを利用してデータ共有設定を行うための処理について説明する。CPU11が記憶部12に記憶されたエンジニアリングツールを実行し、CPU21が記憶部22に記憶されたプログラムを実行することによって、図9及び図10に示す処理が実行される。図9及び図10に示す処理は、図7に示す機能ブロックにより実行される処理の一例である。
図9に示すように、エンジニアリング装置10は、エンジニアリングツールを起動して(S1)、図示しないメニュー画面からデータ共有設定が選択されると、記憶部12に記憶された設定内容データDに基づいて、CPU21の使用率と、データ共有処理の予測時間と、の各々を計算する(S2)。S2においては、現状の設定内容データDに応じた予測値が計算される。なお、ユーザが初めてデータ共有設定をする場合には、変数定義に基づいて、初期値の設定内容データDが生成されるものとする。この場合、図2のように、チェックボックスC1~C4が全てオフの状態のデータ共有設定画面Gが表示される。
エンジニアリング装置10と上位制御装置20との間で、高速スキャンタイムの最大値を取得する処理が実行される(S3)。S3においては、エンジニアリング装置10は、上位制御装置20に対し、高速スキャンタイムの最大値を問い合わせる。上位制御装置20は、ラダープログラムの実行結果に基づいて、高速スキャンタイムの最大値を計測し、その実測値を上位制御装置20に送信する。なお、ユーザがオフラインで作業する場合には、S3の処理は実行されず、高速スキャンタイムの最大値は0msが表示されるものとする。
エンジニアリング装置10は、S2で計算した予測値と、S3で取得した高速スキャンタイムの最大値と、に基づいて、データ共有設定画面Gを表示部15に表示させる(S4)。S4においては、エンジニアリング装置10は、設定内容データDに格納された変数名などの情報に基づいて、リストLを生成する。エンジニアリング装置10は、設定内容データDに格納された収集フラグと書き換えフラグに基づいて、各変数のチェックボックスC1,C2のオン/オフの状態を決定する。また、エンジニアリング装置10は、S2で計算したCPU21の使用率を表示領域A1に表示させる。また、エンジニアリング装置10は、S2で計算したデータ共有処理の予測時間、S3で取得した高速スキャンタイムの最大値、及び設定内容データDに格納された高速スキャンタイムの設定値を表示領域A2に表示させる。
エンジニアリング装置10は、操作部14の検出信号に基づいて、ユーザの操作を特定する(S5)。S5においては、変数の階層の指定、チェックボックスC1~C5に対する操作、又はボタンB1~B4に対する操作の何れかかが行われる場合を説明する。
ユーザが変数の階層を指定した場合(S5;階層)、エンジニアリング装置10は、ウィンドウWを表示部15に表示させ、ユーザによる階層名の指定を受け付ける(S6)。S6においては、エンジニアリング装置10は、チェックボックスC6に対する操作を受け付ける。エンジニアリング装置10は、ユーザが指定した階層名に基づいて、変数をフィルタリングしてデータ共有設定画面Gの表示を更新し(S7)、S5の処理に戻る。S7においては、エンジニアリング装置10は、ユーザが指定した階層名の階層に属する変数だけが表示されるようにフィルタリングを実行する。
S5において、チェックボックスC1~C4の何れかに対する操作が行われた場合(S5;C1~C4)、エンジニアリング装置10は、ユーザの操作に基づいて、チェックボックスC1~C4のオン/オフの状態を変更し(S8)、S5の処理に戻る。S8においては、エンジニアリング装置10は、特定の変数のチェックボックスC1,C2に対する操作が行われた場合には、その変数のチェックボックスC1,C2のオン/オフの状態を変更する。エンジニアリング装置10は、チェックボックスC3,C4に対する操作が行われた場合には、表示中の全ての変数のチェックボックスC1,C2のオン/オフの状態を変更する。
S5において、ボタンB1が選択された場合(S5;B1)、エンジニアリング装置10は、現状のチェックボックスC1,C2がオンの変数に基づいて、CPU21の使用率と、データ共有処理予測時間と、を計算してデータ共有設定画面Gの表示を更新し(S9)、S5の処理に戻る。S9においては、S2と同様の計算が実行される。
S5において、ボタンB2が選択された場合(S5;B2)、エンジニアリング装置10は、記憶部12に記憶された設定内容データDを更新して上位制御装置20の設定を行ってデータ共有設定画面Gを消去し(S10)、本処理は終了する。上位制御装置20は、S10で行われた設定内容を記憶部22に記録し(S11)、その設定内容に基づいて、変数の収集と書き換えを実行する(S12)。
S5において、ボタンB3が選択された場合(S5;B3)、エンジニアリング装置10は、上位制御装置20の設定を行わずにデータ共有設定画面Gを消去し(S13)、本処理は終了する。S5において、ボタンB4が選択された場合(S5;B4)、エンジニアリング装置10は、記憶部12に記憶された設定内容データDを更新して上位制御装置20の設定を行って(S14)、S5の処理に戻る。S14の処理が行われると、上位制御装置20は、S11及びS12の各々の処理を実行する。
S5において、チェックボックスC5に対する操作が行われた場合(S5;C5)、図10に移り、エンジニアリング装置10は、記憶部12に記憶された設定内容データDに基づいて、表示領域A1,A2の表示を更新する(S15)。S15においては、エンジニアリング装置10は、現状の設定内容データDに示された最大共有データサイズと、最大共有データサイズに応じたCPU21の使用率と、を表示領域A1に表示させる。また、エンジニアリング装置10は、最大共有データサイズに応じた必要スキャンタイム、S3で取得した高速スキャンタイムの最大値、及び設定内容データDに格納された高速スキャンタイムの設定値を表示領域A2に表示させる。データ共有設定画面Gは、図5の状態に戻る。
エンジニアリング装置10は、操作部14の検出信号に基づいて、ユーザの操作を特定する(S16)。ここでは、変数の階層の指定、チェックボックスC1~C5に対する操作、ボタンB1~B4に対する操作、又は表示領域A1に対する最大共有データサイズの指定の何れかが行われる場合を説明する。
ユーザが最大共有データサイズを指定した場合(S16;サイズ入力)、エンジニアリング装置10は、ユーザが指定した最大共有データサイズを表示領域A1に表示させ(S17)、S16の処理に戻る。CPU21の使用率と、必要スキャンタイムと、はボタンB1が選択された場合に計算されて表示領域A1,A2に表示させる。
S16において、チェックボックスC5に対する操作が行われた場合(S16;C5)、S4の処理に戻り、表示領域A1,A2の表示が更新される。この場合、データ共有設定画面Gは、図3の状態に戻る。他の操作が行われた場合のS18~S26の処理は、それぞれS6~S14と同様である。
以上説明した生産システム1によれば、複数の変数の中から、指定された変数の収集及び書き換えの少なくとも一方の設定を行うことで、ユーザが所望する任意の変数の収集及び書き換えの少なくとも一方を行うことができる。また、不要な変数の収集及び書き換えの少なくとも一方が行われないので、上位制御装置20の処理負荷を軽減することができる。また、収集及び書き換えの少なくとも一方をしても支障のない変数をユーザが指定することで、公開したくない変数が第三者に漏洩したり、書き換えたくない変数が第三者によって書き換えられたりすることを防止し、セキュリティを高めたり、上位制御装置20の誤動作を防止したりすることができる。また、不要な変数が収集されないので、メモリに記録されるデータ量を減らしたり、ネットワークにおける通信量を削減したりすることもできる。
生産システム1は、指定された変数の収集及び書き換えの少なくとも一方に要するコストを表示させることによって、上位制御装置20に発生するコストをユーザに認識させながら変数を指定させることができ、ユーザの利便性を高めることができる。また、上位制御装置20に過大なコストが発生するような変数の指定を防止し、上位制御装置20の処理負荷を軽減できる。その結果、変数の収集や書き換えのために、ロボットコントローラ30の制御に支障が出ることを防止できる。
生産システム1は、指定された変数が記憶されたメモリの種類と、指定された変数のデータ形式と、の少なくとも一方に基づいて、コストを取得することによって、コストの計算精度を高めることができる。
生産システム1は、指定された変数の収集及び書き換えの少なくとも一方のために使用可能なコストを表示させることによって、使用可能なコストをユーザに認識させながら変数を指定させることができ、ユーザの利便性を高めることができる。また、使用可能なコスト以上のコストが発生するような変数の指定を防止し、上位制御装置20の処理負荷を軽減できる。その結果、変数の収集や書き換えのために、ロボットコントローラ30の制御に支障が出ることを防止できる。
生産システム1は、上位制御装置20のCPU使用率と、上位制御装置20のスキャン時間と、の少なくとも一方をユーザに認識させながら変数を指定させることができ、ユーザの利便性を高めることができる。また、上位制御装置20のCPU使用率が高くなったり、スキャン時間が非常に長くなったりするような変数の収集や書き換えを防止し、上位制御装置20の処理負荷を軽減できる。その結果、変数の収集や書き換えのために、ロボットコントローラ30の制御に支障が出ることを防止できる。
生産システム1は、コストに基づいて所定の条件が満たされると判定された場合に、所定のアラートを表示させることによって、例えば、上位制御装置20の処理負荷が高くなり、ロボットコントローラ30の制御に支障が出る可能性があることをユーザに認識させやすくなる。
生産システム1は、ロボットコントローラ30を制御するために要する上位制御装置20のコストを表示させることによって、変数の収集及び書き換えの少なくとも一方とは別に、上位制御装置20に生じるコストをユーザに認識させながら変数を指定させることができ、ユーザの利便性を高めることができる。また、ロボットコントローラ30の制御に支障が出るような変数の収集や書き換えを防止できる。
生産システム1は、上位制御装置20によるロボットコントローラ30の制御結果に基づく実測値のコストを取得することによって、ユーザに提示されるコストの精度を高めることができる。
生産システム1は、指定された変数の収集及び書き換えの少なくとも一方を行う周期の指定を受け付けることで、ユーザが所望する任意の周期で、指定された変数の収集及び書き換えの少なくとも一方を行い、ユーザの利便性を向上させることができる。また、さほど高頻度で収集及び書き換えの少なくとも一方をしなくてもよい場合には、長めの周期を指定することにより、上位制御装置20の処理負荷を軽減できる。また、高頻度で収集及び書き換えの少なくとも一方をしたい場合には、短めの周期を指定することにより、変数の解析や書き換えを精度よく行うことができる。
生産システム1は、ユーザにより指定された属性に属する複数の変数の指定を一括で受け付けることにより、変数を指定する際のユーザの負担を軽減できる。
生産システム1は、ユーザにより指定された属性に属する複数の変数をフィルタリングして表示させ、フィルタリングされた複数の変数の指定を一括で受け付けることにより、変数を見やすく表示させたうえで、変数を指定する際のユーザの負担を軽減できる。
生産システム1は、上位制御装置20の中でCPU21とIoT部24を使い分けることによって、ロボットコントローラ30の制御と、変数の収集及び書き換えの少なくとも一方の設定と、の各々を役割分担し、処理負荷を分散することができる。
[5.変形例]
なお、本開示は、以上に説明した実施の形態に限定されるものではない。本開示の趣旨を逸脱しない範囲で、適宜変更可能である。
(1)例えば、上位制御装置20が複数のロボットコントローラ30の各々を制御する場合、表示制御部101は、複数のロボットコントローラ30の各々の名前と、当該制御装置に対応する複数の変数の各々の名前と、を表示させてもよい。この場合、上位制御装置20は、ロボットコントローラ30ごとに、当該ロボットコントローラ30を制御するための変数群を記憶する。表示制御部101は、ロボットコントローラ30の名前ごとに、当該ロボットコントローラ30に対応する変数群に含まれる各変数の変数名を表示させる。
例えば、本変形例の表示制御部101は、ロボットコントローラ30の名前を含む折り畳みメニューをデータ共有設定画面Gに表示させる。ユーザが任意の折り畳みメニューを選択すると、表示制御部101は、選択された折り畳みメニューを開き、対応するロボットコントローラ30に記憶された変数のリストLを表示させる。個々のリストLは、実施形態で説明した通りである。チェックボックスC3,C4による一括の指定は、開かれた折り畳みメニューに対応するロボットコントローラ30の変数について有効になる。
変数受付部104は、複数のロボットコントローラ30にそれぞれ対応する複数の変数の中から、収集及び書き換えの少なくとも一方が行われる変数の指定を受け付ける。例えば、変数受付部104は、開かれた折り畳みメニューに対応するロボットコントローラ30に記憶された変数群の中から任意の変数の指定を受け付ける。個々の変数の指定方法は、実施形態で説明した通りである。なお、折り畳みメニューを利用せずに、データ共有設定画面Gに複数のロボットコントローラ30の各々の変数が選択可能に表示されてもよい。
変形例(1)によれば、上位制御装置20が複数のロボットコントローラ30の各々を制御する場合に、複数のロボットコントローラ30の各々の名前と、当該ロボットコントローラ30に対応する複数の変数の各々の名前と、を表示させることによって、収集及び書き換えの少なくとも一方が行われる変数を指定しやすくなり、ユーザの利便性を高めることができる。
(2)また例えば、ロボットコントローラ30が複数の工程の各々を順番に実行する場合、表示制御部101は、複数の工程の各々の名前と、当該工程に対応する複数の変数の各々の名前と、を表示させてもよい。この場合、上位制御装置20は、工程ごとに、当該工程の実行を制御するための変数群を記憶する。表示制御部101は、工程の名前ごとに、当該工程に対応する変数群に含まれる各変数の変数名を表示させる。
例えば、本変形例の表示制御部101は、工程名を含む折り畳みメニューをデータ共有設定画面Gに表示させる。ユーザが任意の折り畳みメニューを選択すると、表示制御部101は、選択された折り畳みメニューを開き、対応する工程の変数のリストLを表示させる。個々のリストLは、実施形態で説明した通りである。チェックボックスC3,C4による一括の指定は、開かれた折り畳みメニューに対応する工程の変数について有効になる。
変数受付部104は、複数の工程にそれぞれ対応する複数の変数の中から、収集及び書き換えの少なくとも一方が行われる変数の指定を受け付ける。例えば、変数受付部104は、開かれた折り畳みメニューに対応する工程の変数群の中から任意の変数の指定を受け付ける。個々の変数の指定方法は、実施形態で説明した通りである。なお、折り畳みメニューを利用せずに、データ共有設定画面Gに複数の工程の各々の変数が選択可能に表示されてもよい。
変形例(2)によれば、ロボットコントローラ30が複数の工程の各々を順番に実行する場合に、複数の工程の各々の名前と、当該工程に対応する複数の変数の各々の名前と、を表示させることによって、収集及び書き換えの少なくとも一方が行われる変数を指定しやすくなり、ユーザの利便性を高めることができる。
(3)また例えば、上記変形例を組み合わせてもよい。
また例えば、上記説明した各機能は、生産システム1における任意の装置で実現されるようにすればよい。例えば、データ収集装置50で実現されるものとして説明した機能が上位制御装置20又はロボットコントローラ30によって実現されてもよい。また例えば、上位制御装置20で実現されるものとして説明した機能がデータ収集装置50又はロボットコントローラ30によって実現されてもよい。また例えば、各機能が複数のコンピュータによって分担されるのではなく、1つのコンピュータによって実現されてもよい。
また、以上説明した実施形態は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成やデータ格納例そのものに限定するものではない。当業者はこれら開示された実施形態に種々の変形、例えば、物理的構成の形状や数、データ構造、処理の実行順を変更したりしてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
1 生産システム、10 エンジニアリング装置、11,21,31,51 CPU、12,22,32,52 記憶部、13,23,33,43 通信部、14,54 操作部、15,55 表示部、20 上位制御装置、24 IoT部、30 ロボットコントローラ、40 ロボット、50 データ収集装置、A1,A2 表示領域、B1,B2,B3,B4,B5,B6,B7 ボタン、C1,C2,C3,C4,C5,C6 チェックボックス、D 設定内容データ、G データ共有設定画面、L リスト、M メッセージ、W ウィンドウ、100 データ記憶部、101 表示制御部、102 周期受付部、103 属性受付部、104 変数受付部、105 第1コスト取得部、106 第2コスト取得部、107 判定部、108 第3コスト取得部、109 設定部、200 第1データ記憶部、201 第2データ記憶部、202 動作制御部、203 処理実行部、300 データ記憶部、301 動作制御部、500 データ記憶部、501 収集部、502 指令送信部。

Claims (19)

  1. 1以上の産業装置を制御する制御装置を制御可能な上位制御装置の設定を行うエンジニアリング装置であって、
    前記上位制御装置に記憶された複数の変数の各々の名前を表示させる表示制御部と、
    前記複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付ける変数受付部と、
    前記指定された変数の収集及び書き換えの少なくとも一方の設定を行う設定部と、
    を有するエンジニアリング装置。
  2. 前記エンジニアリング装置は、前記指定された変数の収集及び書き換えの少なくとも一方に要する前記上位制御装置のコストを取得する第1コスト取得部を更に有し、
    前記表示制御部は、前記コストを表示させる、
    請求項1に記載のエンジニアリング装置。
  3. 前記第1コスト取得部は、前記指定された変数が記憶されたメモリの種類と、前記指定された変数の形式と、の少なくとも一方に基づいて、前記コストを取得する、
    請求項2に記載のエンジニアリング装置。
  4. 前記エンジニアリング装置は、前記指定された変数の収集及び書き換えの少なくとも一方のために使用可能な前記上位制御装置のコストを取得する第2コスト取得部を更に有し、
    前記表示制御部は、前記コストを表示させる、
    請求項1~3の何れかに記載のエンジニアリング装置。
  5. 前記コストは、前記上位制御装置のCPU使用率と、前記上位制御装置のスキャン時間と、の少なくとも一方を含む、
    請求項2~4の何れかに記載のエンジニアリング装置。
  6. 前記エンジニアリング装置は、前記コストに基づいて、所定の条件が満たされるか否かを判定する判定部を更に有し、
    前記表示制御部は、前記条件が満たされると判定された場合に、所定のアラートを表示させる、
    請求項2~5の何れかに記載のエンジニアリング装置。
  7. 前記エンジニアリング装置は、前記制御装置を制御するために要する前記上位制御装置のコストを取得する第3コスト取得部を更に有し、
    前記表示制御部は、前記コストを表示させる、
    請求項1~6の何れかに記載のエンジニアリング装置。
  8. 前記第3コスト取得部は、前記上位制御装置による前記制御装置の制御結果に基づいて、実測値である前記コストを取得する、
    請求項7に記載のエンジニアリング装置。
  9. 前記エンジニアリング装置は、前記指定された変数の収集及び書き換えの少なくとも一方を行う周期の指定を受け付ける周期受付部を更に有し、
    前記設定部は、前記指定された周期で前記指定された変数の収集及び書き換えの少なくとも一方を行うように、前記設定を行う、
    請求項1~8の何れかに記載のエンジニアリング装置。
  10. 前記複数の変数の各々は、複数の属性のうちの少なくとも1つに属し、
    前記エンジニアリング装置は、前記複数の属性のうちの少なくとも1つの指定を受け付ける属性受付部を更に有し、
    前記変数受付部は、前記指定された属性に属する複数の前記変数の指定を一括で受け付ける、
    請求項1~9の何れかに記載のエンジニアリング装置。
  11. 前記表示制御部は、前記複数の変数のうち、前記指定された属性に属する複数の前記変数をフィルタリングして表示させ、
    前記変数受付部は、前記フィルタリングされた複数の変数の指定を一括で受け付ける、
    請求項10に記載のエンジニアリング装置。
  12. 前記上位制御装置は、複数の前記制御装置の各々を制御し、
    前記表示制御部は、前記複数の制御装置の各々の名前と、当該制御装置に対応する複数の変数の各々の名前と、を表示させ、
    前記変数受付部は、前記複数の制御装置にそれぞれ対応する複数の変数の中から、収集及び書き換えの少なくとも一方が行われる変数の指定を受け付ける、
    請求項1~11の何れかに記載のエンジニアリング装置。
  13. 前記制御装置は、複数の工程の各々を順番に実行し、
    前記表示制御部は、前記複数の工程の各々の名前と、当該工程に対応する複数の変数の各々の名前と、を表示させ、
    前記変数受付部は、前記複数の工程にそれぞれ対応する複数の変数の中から、収集及び書き換えの少なくとも一方が行われる変数の指定を受け付ける、
    請求項1~12の何れかに記載のエンジニアリング装置。
  14. 前記上位制御装置は、前記複数の変数の各々を記憶するCPUと、前記複数の変数の各々を記憶するIoT部と、を有し、
    前記CPUと前記IoT部は、所定の周期で整合が取られており、
    前記変数受付部は、前記CPUから前記IoT部を介してデータ収集装置に収集させる変数、及び、前記IoT部から前記CPUに書き換える変数の少なくとも一方の指定を受け付け、
    前記設定部は、前記指定された変数を前記データ収集装置に収集させるための設定、及び、前記指定された変数を前記IoT部から前記CPUに書き換えるための設定の少なくとも一方を行う、
    請求項1~13の何れかに記載のエンジニアリング装置。
  15. 請求項1~14の何れかに記載の上位制御装置であって、
    請求項1~14の何れかに記載のエンジニアリング装置の設定部により設定された設定内容を記憶する記憶部と、
    前記設定内容に基づいて、前記指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する処理実行部と、
    を有する上位制御装置。
  16. 1以上の産業装置を制御する制御装置を制御可能な上位制御装置の設定に関するエンジニアリング方法であって、
    前記上位制御装置に記憶された複数の変数の各々の名前を表示させ、
    前記複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付け、
    前記指定された変数の収集及び書き換えの少なくとも一方の設定を行う、
    エンジニアリング方法。
  17. 請求項16に記載のエンジニアリング方法により設定された設定内容に基づいて、前記指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する、
    処理実行方法。
  18. 1以上の産業装置を制御する制御装置を制御可能な上位制御装置の設定を行うエンジニアリング装置を、
    前記上位制御装置に記憶された複数の変数の各々の名前を表示させる表示制御部、
    前記複数の変数の中から、収集及び書き換えの少なくとも一方を行う変数の指定を受け付ける変数受付部、
    前記指定された変数の収集及び書き換えの少なくとも一方の設定を行う設定部、
    として機能させるためのプログラム。
  19. 請求項18に記載の上位制御装置を、
    請求項18に記載のエンジニアリング装置の設定部により設定された設定内容に基づいて、前記指定された変数の収集及び書き換えの少なくとも一方に係る処理を実行する処理実行部、
    として機能させるためのプログラム。
JP2020110416A 2020-06-26 2020-06-26 エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム Active JP7147807B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020110416A JP7147807B2 (ja) 2020-06-26 2020-06-26 エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム
EP21180625.2A EP3933519A1 (en) 2020-06-26 2021-06-21 Production system, production method, and program
US17/355,207 US11709478B2 (en) 2020-06-26 2021-06-23 Production system, production method, and information storage medium
CN202110707914.1A CN113848770B (zh) 2020-06-26 2021-06-24 工程设备、上级控制设备、工程方法和信息存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020110416A JP7147807B2 (ja) 2020-06-26 2020-06-26 エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2022007436A true JP2022007436A (ja) 2022-01-13
JP7147807B2 JP7147807B2 (ja) 2022-10-05

Family

ID=76844995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020110416A Active JP7147807B2 (ja) 2020-06-26 2020-06-26 エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム

Country Status (4)

Country Link
US (1) US11709478B2 (ja)
EP (1) EP3933519A1 (ja)
JP (1) JP7147807B2 (ja)
CN (1) CN113848770B (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005141563A (ja) * 2003-11-07 2005-06-02 Digital Electronics Corp エディタ装置、コンピュータをエディタ装置として機能させるためのプログラム、および記録媒体
JP2009245456A (ja) * 2009-07-27 2009-10-22 Omron Corp プログラム開発支援装置および処理方法
CN202267862U (zh) * 2011-09-20 2012-06-06 朗德华信(北京)自控技术有限公司 基于云计算的空气处理设备管理控制系统
WO2012081115A1 (ja) * 2010-12-16 2012-06-21 三菱電機株式会社 シーケンサシステムおよびその制御方法
CN107493265A (zh) * 2017-07-24 2017-12-19 南京南瑞集团公司 一种面向工业控制系统的网络安全监控方法
DE102019105230A1 (de) * 2018-03-02 2019-09-05 Engel Austria Gmbh Verfahren und Vorrichtung zum Visualisieren oder Beurteilen eines Prozesszustandes
JP2019159632A (ja) * 2018-03-12 2019-09-19 オムロン株式会社 制御システム、開発支援装置、および開発支援プログラム
JP2020052898A (ja) * 2018-09-28 2020-04-02 オムロン株式会社 制御システム、サポート装置、サポートプログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3896849B2 (ja) * 2000-11-24 2007-03-22 三菱電機株式会社 プログラミング装置及びプログラミング方法
US20030174070A1 (en) * 2002-03-13 2003-09-18 Garrod J. Kelly Wireless supervisory control and data acquisition
US7634457B2 (en) * 2005-10-07 2009-12-15 Oracle International Corp. Function-based index tuning for queries with expressions
US8191005B2 (en) * 2007-09-27 2012-05-29 Rockwell Automation Technologies, Inc. Dynamically generating visualizations in industrial automation environment as a function of context and state information
US8473917B2 (en) * 2010-09-30 2013-06-25 Rockwell Automation Technologies, Inc. Enhanced operation diagnostics
JP6051546B2 (ja) * 2012-03-15 2016-12-27 オムロン株式会社 情報処理装置、シミュレーション方法、およびプログラム
US20140122374A1 (en) * 2012-10-25 2014-05-01 Nec Laboratories America, Inc. Cost exploration of data sharing in the cloud
EP3073632B1 (en) 2013-11-05 2020-09-30 Kabushiki Kaisha Yaskawa Denki Trace-data recording system, trace-data recording server, trace-data recording method, program, and information storage medium
US9923821B2 (en) * 2015-12-23 2018-03-20 Intel Corporation Managing communication congestion for internet of things devices
US10609118B2 (en) * 2017-03-14 2020-03-31 International Business Machines Corporation Adaptive communication control device
US10401815B2 (en) 2017-04-18 2019-09-03 Honeywell International Inc. System and method for synchronizing messages using a least common multiple in industrial process control and automation systems
US10901804B2 (en) * 2017-12-15 2021-01-26 Fujitsu Limited Apparatus and method to select services for executing a user program based on a code pattern included therein
JP7026702B2 (ja) * 2018-01-29 2022-02-28 三菱電機株式会社 制御システム、制御方法、及び、プログラム
US10680960B2 (en) * 2018-02-28 2020-06-09 Rapid7, Inc. Dynamic rate limiting for networked resources
US11341133B2 (en) * 2018-10-26 2022-05-24 International Business Machines Corporation Method and system for collaborative and dynamic query optimization in a DBMS network

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005141563A (ja) * 2003-11-07 2005-06-02 Digital Electronics Corp エディタ装置、コンピュータをエディタ装置として機能させるためのプログラム、および記録媒体
JP2009245456A (ja) * 2009-07-27 2009-10-22 Omron Corp プログラム開発支援装置および処理方法
WO2012081115A1 (ja) * 2010-12-16 2012-06-21 三菱電機株式会社 シーケンサシステムおよびその制御方法
CN202267862U (zh) * 2011-09-20 2012-06-06 朗德华信(北京)自控技术有限公司 基于云计算的空气处理设备管理控制系统
CN107493265A (zh) * 2017-07-24 2017-12-19 南京南瑞集团公司 一种面向工业控制系统的网络安全监控方法
DE102019105230A1 (de) * 2018-03-02 2019-09-05 Engel Austria Gmbh Verfahren und Vorrichtung zum Visualisieren oder Beurteilen eines Prozesszustandes
JP2019159632A (ja) * 2018-03-12 2019-09-19 オムロン株式会社 制御システム、開発支援装置、および開発支援プログラム
JP2020052898A (ja) * 2018-09-28 2020-04-02 オムロン株式会社 制御システム、サポート装置、サポートプログラム

Also Published As

Publication number Publication date
JP7147807B2 (ja) 2022-10-05
US11709478B2 (en) 2023-07-25
CN113848770A (zh) 2021-12-28
CN113848770B (zh) 2024-04-16
EP3933519A1 (en) 2022-01-05
US20210405617A1 (en) 2021-12-30

Similar Documents

Publication Publication Date Title
CN107077114B (zh) 在可编程逻辑控制器中使用软传感器
US9740186B2 (en) Monitoring control system and control device
JP2019109580A (ja) 産業用制御システムとその支援装置、制御支援方法およびプログラム
WO2002042853A1 (en) Method and apparatus for programming
JP5146656B2 (ja) Fa機器並びにファイルアクセスシステム
JP2012099063A (ja) 監視制御装置
CN108693830A (zh) 数据收集管理系统及其方法、计算机可读取记录介质
JP6889510B2 (ja) プログラミング装置、およびプログラム
JP6881479B2 (ja) 産業機器管理システム、産業機器管理方法、及びプログラム
JP6744557B2 (ja) 動作データ収集システム、動作データ収集方法、及びプログラム
US11314219B2 (en) Information device, terminal device and recording medium
JP2022007436A (ja) エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム
JP6849029B2 (ja) データ収集システム、データ収集方法、及びプログラム
CN109765850B (zh) 控制系统
CN113391603B (zh) 生产系统、控制方法和程序
JP6881480B2 (ja) 産業機器管理システム、産業機器管理方法、及びプログラム
CN113867271A (zh) 生产系统、上级控制装置、控制装置、通信方法以及存储介质
CN112445189A (zh) 数据收集系统、数据收集方法和程序
WO2020034197A1 (zh) 地址识别方法、装置、系统、存储介质、处理器、终端
US20210405597A1 (en) Engineering device, engineering method, and information storage medium
US10788819B2 (en) User interface, industrial automation system and method
JP6881557B1 (ja) 生産システム、生産方法、及びプログラム
KR20240010640A (ko) 스마트 팩토리를 위한 광학 시스템 관리 프로그램 및 광학 시스템 관리 방법
CN116324765A (zh) 操作辅助系统以及操作辅助方法
JP2001306139A (ja) プロセス監視装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220616

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220905

R150 Certificate of patent or registration of utility model

Ref document number: 7147807

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150