JP6950772B2 - 生産システム、制御方法、及びプログラム - Google Patents

生産システム、制御方法、及びプログラム Download PDF

Info

Publication number
JP6950772B2
JP6950772B2 JP2020044722A JP2020044722A JP6950772B2 JP 6950772 B2 JP6950772 B2 JP 6950772B2 JP 2020044722 A JP2020044722 A JP 2020044722A JP 2020044722 A JP2020044722 A JP 2020044722A JP 6950772 B2 JP6950772 B2 JP 6950772B2
Authority
JP
Japan
Prior art keywords
storage unit
variable
control command
unit
variables
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020044722A
Other languages
English (en)
Other versions
JP2021144650A (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.)
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 JP2020044722A priority Critical patent/JP6950772B2/ja
Priority to EP21161789.9A priority patent/EP3879366B1/en
Priority to US17/199,404 priority patent/US11953882B2/en
Priority to CN202110278278.5A priority patent/CN113391603B/zh
Publication of JP2021144650A publication Critical patent/JP2021144650A/ja
Application granted granted Critical
Publication of JP6950772B2 publication Critical patent/JP6950772B2/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/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
    • 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/41845Total 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 system universality, reconfigurability, modularity
    • 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/182Numerical 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 the machine tool function, e.g. thread cutting, cam making, tool direction control
    • 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/10Plc systems
    • G05B2219/11Plc I-O input output
    • G05B2219/1171Detect only input variation, changing, transition state of variable
    • 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/49Nc machine tool, till multiple
    • G05B2219/49312Fixture free machining

Landscapes

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

Description

本開示は、生産システム、制御方法、及びプログラムに関する。
特許文献1には、複数の産業装置の各々の動作を検出し、クラウドサーバにトレースデータをアップロードするシステムが記載されている。このシステムでは、解析者によってトレースデータの解析が行われる。解析者の解析結果は、産業装置のユーザに通知される。産業装置のユーザは、解析結果をもとに産業装置のパラメータの調整等を行う。
国際公開第2015/068210号公報
本開示の一態様が解決しようとする課題は、例えば、産業装置に対する制御指令を迅速かつ正確に実行することである。
本開示の一側面に係る生産システムは、複数の変数の各々に基づいて、他の産業装置を制御する産業装置と、前記産業装置に対し、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令を入力する入力部と、を有し、前記産業装置は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える書き換え部を有する。
本開示の一側面に係る制御方法は、複数の変数の各々に基づいて、他の産業装置を制御する産業装置に対し、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令を入力し、前記産業装置は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える。
本開示の一側面に係るプログラムは、複数の変数の各々に基づいて、他の産業装置を制御する産業装置を、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換えさせる。
本開示の一側面によれば、前記産業装置は、周期的に前記複数の変数の各々を更新して、前記他の産業装置を制御し、前記生産システムは、前記産業装置及び前記他の産業装置の少なくとも一方の動作に基づいて、前記制御指令の入力条件が満たされたか否かを判定する判定部を更に有し、前記入力部は、前記入力条件が満たされたと判定された場合に、前記産業装置に対し、前記制御指令を入力する。
本開示の一側面によれば、前記産業装置は、前記複数の変数の各々に基づいて、前記他の産業装置を制御する第1制御回路と、前記制御指令を受け付ける第2制御回路と、を有し、前記第2制御回路は、前記書き換え部を有する。
本開示の一側面によれば、前記第1制御回路は、前記複数の変数の各々を記憶する第1記憶部を有し、前記第2制御回路は、前記複数の変数の各々を記憶し、定期的に前記第1記憶部との整合が取られる第2記憶部と、前記制御指令に応じた前記少なくとも1つの変数を記憶する第3記憶部と、を有し、前記書き換え部は、前記第3記憶部に記憶された前記少なくとも1つの変数を前記第2記憶部に書き込み、前記第2記憶部に書き込まれた前記少なくとも1つの変数を前記第1記憶部に書き込む。
本開示の一側面によれば、前記書き換え部は、前記制御指令に応じた前記少なくとも1つの変数の前記第3記憶部への書き込みが完了したか否かを判定し、前記第3記憶部への書き込みが完了したと判定された場合に、前記第3記憶部に書き込まれた前記少なくとも1つの変数の前記第2記憶部への書き込みを開始する。
本開示の一側面によれば、前記生産システムは、前記制御指令の入力が完了した場合に、前記産業装置に対し、所定の完了通知を送信する送信部を有し、前記書き換え部は、前記完了通知を受信した場合に、前記制御指令に応じた前記少なくとも1つの変数の前記第3記憶部への書き込みが完了したと判定する。
本開示の一側面によれば、前記生産システムは、前記第1記憶部と前記第2記憶部との間で整合が取られたか否かを判定する判定部を有し、前記書き換え部は、前記第1記憶部と前記第2記憶部との間の整合が取られたと判定された場合に、前記第3記憶部に書き込まれた変数を前記第2記憶部に書き込む。
本開示の一側面によれば、前記生産システムは、前記産業装置及び前記他の産業装置の少なくとも一方の動作を解析する解析部を有し、前記入力部は、前記解析部の解析結果に基づいて、前記制御指令を入力する。
本開示の一側面によれば、前記解析部は、複数のアプリケーションの各々に基づいて解析を行い、前記入力部は、各アプリケーションの実行結果に基づいて、当該アプリケーションに関連付けられた少なくとも1つの変数を含む制御指令を入力し、前記書き換え部は、各アプリケーションの前記制御指令に基づいて、当該アプリケーションに関連付けられた少なくとも1つの変数を書き換える。
本開示の一側面によれば、前記生産システムは、複数の前記アプリケーションの制御指令が同時に入力されることを制限する制限部を有する。
本開示の一側面によれば、前記生産システムは、前記産業装置とは異なる外部装置を含み、前記外部装置は、前記入力部を有し、前記書き換え部は、前記外部装置から入力された前記制御指令に基づいて、前記少なくとも1つの変数を書き換える。
上記発明によれば、例えば、産業装置に対する制御指令を迅速かつ正確に実行することができる。
生産システムの全体構成の一例を示す図である。 変数の値を書き換える処理の流れを示す図である。 生産システムで実現される機能を示す機能ブロック図である。 変数定義データのデータ格納例を示す図である。 変数値データのデータ格納例を示す図である。 生産システムで実行される処理の一例を示すフロー図である。 変形例(2)の機能ブロック図である。
[1.生産システムの全体構成]
産業装置の動作に関するデータを収集する技術では、解析者による解析が行われた後に、産業装置に対して解析結果が反映されていたので、解析結果が反映されるのに時間がかかっていた。また、解析者による解析には誤りが生じることもあり、解析が正確に行われないこともあった。そこで発明者達は、産業装置に対する制御指令を迅速かつ正確に実行するために鋭意研究開発を行った結果、新規かつ独創的な生産システム等に想到した。以降、本実施形態に係る生産システム等を詳細に説明する。
図1は、生産システムの全体構成の一例を示す図である。図1に示すように、生産システム1は、解析装置10、コントローラ20、及び被制御装置30を含む。本実施形態では、解析装置10とコントローラ20との各々は、Ethernet(登録商標)等の一般的なネットワークにより接続される。コントローラ20と被制御装置30との各々は、産業装置用のネットワークにより接続される。なお、各装置を接続するネットワークは、本実施形態の例に限られず、任意のネットワークで接続可能である。
解析装置10は、外部装置の一例である。このため、本実施形態で解析装置10と記載した箇所は、外部装置と読み替えることができる。外部装置は、後述する産業装置とは異なる装置である。外部装置は、産業装置とネットワークを介して通信可能に接続される。例えば、外部装置は、産業装置の動作に関するデータを収集する。また例えば、外部装置は、産業装置の動作を解析する。本実施形態では、外部装置は、産業装置に対し、解析結果に応じた制御指令を送信する。
例えば、解析装置10は、パーソナルコンピュータ、サーバコンピュータ、携帯電話(スマートフォンを含む)、又は携帯端末(タブレット型端末を含む)である。なお、解析装置10は、産業装置の一種であってもよい。解析装置10は、CPU11、記憶部12、通信部13、操作部14、及び表示部15を含む。
CPU11は、少なくとも1つのプロセッサを含む。記憶部12は、RAMやハードディスクを含み、各種プログラムやデータを記憶する。CPU11は、これらプログラムやデータに基づいて各種処理を実行する。通信部13は、ネットワークカードや各種通信コネクタ等の通信インタフェースを含み、他の装置との通信を行う。操作部14は、マウスやキーボード等の入力デバイスである。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、CPU11の指示により各種画面を表示する。
コントローラ20は、産業装置の一例である。このため、本実施形態でコントローラ20と記載した箇所は、産業装置と読み替えることができる。産業装置は、人間が行う作業の補助又は代行をする機器及びその周辺機器の総称である。例えば、コントローラ20以外にも被制御装置30も産業装置に相当する。例えば、PLC(Programmable Logic Controller)、ロボットコントローラ、産業用ロボット、モータコントローラ、サーボアンプ、インバータ、コンバータ、工作機械、搬送装置、又は半導体製造装置は、産業装置に相当する。コントローラ20は、少なくとも1つの被制御装置30を制御する。生産システム1全体は、ラインよりも小さな単位であるセルと呼ばれることがあり、この場合には、コントローラ20は、セルコントローラと呼ばれることもある。
コントローラ20は、CPU21、IoT(Internet of Things)部22、第4記憶部23、及び第2通信部24を含む。CPU21、第4記憶部23、及び第2通信部24の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様であってよい。本実施形態では、CPU21は、第1記憶部21Aを含む。第1記憶部21Aは、揮発メモリ及び不揮発メモリの少なくとも一方を含む。例えば、第1記憶部21Aは、キャッシュメモリと呼ばれるメモリを含んでもよい。第1記憶部21Aは、後述する変数を記憶する。
CPU21は、第1制御回路の一例である。このため、本実施形態でCPU21と記載した箇所は、第1制御回路と読み替えることができる。第1制御回路は、後述する複数の変数の各々に基づいて、後述する他の産業装置を制御する。第1制御回路は、汎用プロセッサに限られず、任意の回路であってよい。例えば、第1制御回路は、FPGA又はASICと呼ばれる回路であってもよい。第1制御回路は、circuitryの一種である。
IoT部22は、第2制御回路の一例である。このため、本実施形態でIoT部22と記載した箇所は、第2制御回路と読み替えることができる。このため、本実施形態でIoT部22と記載した箇所は、第2制御回路と読み替えることができる。第2制御回路は、制御指令を受け付ける回路である。第2制御回路は、IoTに利用される回路に限られず、任意の回路であってよい。例えば、第2制御回路は、FPGA又はASICと呼ばれる回路であってもよい。また例えば、第2制御回路は、汎用プロセッサであってもよい。第2制御回路は、circuitryの一種である。
IoT部22は、ネットワークを介して、他のコンピュータにデータを送信する。例えば、IoT部22は、第2記憶部22A、第3記憶部22B、及び第1通信部22Cを含む。第2記憶部22Aと第3記憶部22Bは、それぞれ記憶部12と同様であってよい。第1通信部22Cは、通信部13と同様であってよい。例えば、第1通信部22Cは、主に解析装置10との通信に用いられ、第2通信部24は、主に被制御装置30の制御に用いられる。なお、IoT部22は、CPU等の他の構成を含んでもよい。また、データ収集の機能をCPU21に持たせる場合には、IoT部22は省略してもよい。
被制御装置30は、他の産業装置の一例である。このため、本実施形態でコントローラ20と記載した箇所は、他の産業装置と読み替えることができる。産業装置という言葉の意味は、先述した通りである。他の産業装置は、先述した任意の種類の産業装置であってよい。本実施形態では、他の産業装置は、コントローラ20により制御される。他の産業装置は、コントローラ20とは異なる産業装置であればよい。
被制御装置30は、CPU31、記憶部32、及び通信部33を含む。CPU31、記憶部32、及び通信部33の物理的構成は、それぞれCPU11、記憶部12、及び通信部13と同様であってよい。なお、被制御装置30は、他の物理的構成が含まれてもよく、例えば、FPGA又はASICと呼ばれる回路が含まれてもよい。また例えば、被制御装置30には、モータ等の制御対象の機器、モータ等の動作を検出するためのセンサ、加工対象となるワークの状態を撮影するカメラ、入出力機器、又は他の産業装置などが接続されていてもよい。コントローラ20の制御対象となる被制御装置30の台数は、任意の台数であってよく、例えば、1台だけであってもよいし、2台以上であってもよい。
なお、解析装置10、コントローラ20、及び被制御装置30の各々に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されてもよい。また、各装置のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)が含まれてもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが、読取部又は入出力部を介して供給されてもよい。
[2.生産システムの概要]
本実施形態では、コントローラ20は、複数の変数の各々に基づいて、被制御装置30を制御する。変数は、被制御装置30を制御するための制御プログラムにより参照される。制御プログラムは、変数を書き換えることもある。例えば、変数は、途中の計算結果、又は、センサにより検出された物理量(例えば、トルクセンサにより検出されたトルク値、又は、モータエンコーダにより検出されたモータの回転速度)を示す。変数は、被制御装置30の動作に関する値であってもよく、例えば、ロボットアームの位置若しくは移動速度、モータの速度、又は動作を待機する待機時間などの値であってもよい。
例えば、被制御装置30が複数の工程を所定の順序で実行する場合、制御プログラムには、各工程の実行順が記述されている。コントローラ20は、制御プログラムに基づいて、被制御装置30に対して指示を送る。変数は、工程の実行条件になってもよい。例えば、被制御装置30は、工程を開始するための変数、工程を一時停止するための変数、又は、工程を終了するための変数を記憶する。変数は、入出力変数と呼ばれることもある。
工程とは、被制御装置30が行う作業又は動作である。工程は、1つの作業だけから構成されてもよいし、複数の作業の組み合わせから構成されてもよい。工程は、被制御装置30の用途に応じた任意の内容であってよく、例えば、ワークの認識、ワークの把持、扉の開閉、ワークのセット、又は工作機器を利用した加工などである。被制御装置30は、少なくとも1つの工程を行う。被制御装置30が行う工程の数は、任意の数であってよく、被制御装置30は、1つの工程だけを行ってもよいし、複数の工程を行ってもよい。被制御装置30は、コントローラ20から受信した指示と、自身に記憶された装置プログラムと、に基づいて工程を行う。
装置プログラムは、被制御装置30の動作を定義したプログラムである。装置プログラムには、各工程における個々の手順が定義されている。装置プログラムは、被制御装置30に応じた任意の言語で作成可能であり、例えば、ラダー言語又はロボット言語等によって作成される。本実施形態では、工程ごとに装置プログラムが用意されている。このため、ある被制御装置30がn個(nは自然数)の工程を行うとすると、当該被制御装置30は、少なくともn個の装置プログラムを記憶していることになる。
本実施形態では、解析装置10のユーザ、コントローラ20のユーザ、及び被制御装置30のユーザの各々が異なる場合を説明する。例えば、コントローラ20のユーザによって変数が定義されて制御プログラムが作成される場合、解析装置10のユーザは、変数や制御プログラムの内容を熟知していないことがある。このため、変数の中には、解析装置10からの制御指令によって書き換えない方がよい変数もある。
そこで、本実施形態の生産システム1は、複数の変数のうち、解析装置10からの制御指令で書き換え可能な変数が定義されている。以降、この定義を変数定義と記載する。変数定義に定義された変数は、解析装置10のユーザに公開された変数ということもできる。例えば、解析装置10のユーザは、変数定義に定義された変数を収集できる。解析装置10のユーザは、変数定義に定義された全ての変数を収集してもよいし、その一部だけを収集してもよい。変数定義により、解析装置10からの制御指令で書き換え可能な変数と、解析装置10からの制御指令では書き換えられない変数と、が区別される。例えば、変数定義は、コントローラ20のユーザにより作成される。
図2は、変数の値を書き換える処理の流れを示す図である。図2に示すように、解析装置10は、コントローラ20に対し、制御指令を送信する。制御指令は、解析装置10からコントローラ20に対する指令であり、任意の内容を含むことができる。例えば、制御指令は、変数定義に定義された変数のうちの少なくとも1つを書き換えるための指令である。制御指令は、定周期的な指令であってもよいし、特に定周期的ではない指令であってもよい。解析装置10によるフィードバックとしての指令は、制御指令の一例である。制御指令は、フィードバックとしての指令に限られない。制御指令のデータフォーマットは、予め定められており、そのデータ長は固定であってもよいし可変であってもよい。制御指令には、書き換え対象となる変数の名前とその値とが含まれる。例えば、解析装置10は、コントローラ20から取集した変数の値を解析し、その解析結果に応じた制御指令を送信する。制御指令は、IoT部22の第1通信部22Cに送信される。
第1通信部22Cは、制御指令の受信を開始すると、受信した変数の名前とその値を第3記憶部22Bに書き込む。なお、変数の名前は第3記憶部22Bに書き込まれず、変数の名前に応じたレジスタにその値が書き込まれてもよい。この点は、後述する第1記憶部21A及び第2記憶部22Aに変数の値が書き込まれる場合にも同様である。解析装置10は、制御指令を送信し終えると、コントローラ20に対し、所定の完了通知を送信する。第1通信部22Cは、完了通知を受信するまでの間、制御指令を受信し続けるので、受信した変数の名前とその値を第3記憶部22Bに書き込む。
第1通信部22Cが完了通知を受信すると、制御指令に含まれる全ての変数の第3記憶部22Bへの書き込みが完了する。IoT部22は、第3記憶部22Bへの変数の書き込みが完了すると、第3記憶部22Bに書き込まれた変数が第2記憶部22Aに書き込まれる。第3記憶部22Bは、制御指令に含まれる変数の値を一時的に保持するバッファとしての役割を果たす。
本実施形態では、第1記憶部21Aに記憶された変数と、第2記憶部22Aに記憶された変数と、は周期的(定期的)に整合が取られている。これらの変数には、制御指令に含まれる変数以外の変数も含まれる。例えば、第1記憶部21Aには、変数定義に定義されていない変数(解析装置10のユーザに公開しない変数)も記憶される。この変数は、被制御装置30の制御用の変数ということもできる。
第1記憶部21Aと第2記憶部22Aとの間における変数の整合が完了する前に(これらの変数の整合取られている最中に)、第3記憶部22Bに書き込まれた変数が第2記憶部22Aに書き込まれると、制御指令に含まれる変数の値が正確に反映されないことがある。
例えば、1周期内において、複数の変数の各々が所定の順番で整合が取られる。1周期における整合が完了する前に、その周期で既に整合された変数が第3記憶部22Bから第2記憶部22Aに書き込まれたとする。その周期では、この変数はもう整合されないので、第2記憶部22Aに値が書き込まれたとしても、この値は次の周期で第1記憶部21Aに反映される。一方、まだ整合が取られていない変数については、現在の周期で第1記憶部21Aには反映される。この場合、同時に反映すべき複数の変数が、互いに別々の周期で反映されるので、正確な反映がなされないことになる。
この点、1周期が終了する直前であれば、第1記憶部21Aと第2記憶部22Aとの間における変数の整合が完了している可能性が高い。このため、本実施形態では、1周期が終了する直前に、第3記憶部22Bから第2記憶部22Aに変数が書き込まれる。第2記憶部22Aに書き込まれた変数は、次の周期で第1記憶部22Aに書き込まれる。これにより、制御指令に含まれる変数を同時に反映することができる。CPU21は、第1記憶部22Aに書き込まれた変数に基づいて、被制御装置30を制御する。
以上のように、生産システム1は、解析装置10からコントローラ20に対する制御指令に応じて、変数定義に定義された変数の少なくとも1つを書き換えることにより、コントローラ20に対する制御指令を迅速かつ正確に実行するようにしている。以降、この構成の詳細を説明する。
[3.生産システムで実現される機能]
図3は、生産システム1で実現される機能を示す機能ブロック図である。本実施形態では、解析装置10、コントローラ20、及び被制御装置30の各々で実現される機能について説明する。
[3−1.解析装置で実現される機能]
図3に示すように、解析装置10は、データ記憶部100、解析部101、判定部102、入力部103、及び送信部104を含む。
[データ記憶部]
データ記憶部100は、記憶部12を主として実現される。データ記憶部100は、制御指令の送信に必要なデータを記憶する。例えば、データ記憶部100は、コントローラ20から収集した変数が格納された収集データを記憶する。収集データは、変数定義に定義された変数の値が格納されたデータである。収集データには、ある一時点の変数の値が格納されてもよいし、変数の値の時系列的な変化が格納されてもよい。また、収集データには、1つの変数の値だけが格納されていてもよいし、複数の変数の値が格納されていてもよい。他にも例えば、収集データには、複数の変数の値に基づいて計算された値が格納されていてもよい。
また例えば、データ記憶部100は、コントローラ20又は被制御装置30の動作を解析するためのアプリケーションを記憶する。例えば、このアプリケーションは、収集データを入力とし、解析結果を出力とする。アプリケーションには、収集データと解析結果との関係が定義されている。解析結果には、制御指令の内容が含まれる。例えば、解析結果には、制御指令により値を変更すべき変数の名前とその値が含まれる。アプリケーションは、値を変更すべき変数の種類とその値を決定するためのプログラムということもできる。
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。例えば、データ記憶部100は、変数定義に定義された変数のうち、収集データの収集対象となる変数を示すデータを記憶してもよい。収集対象となる変数は、解析装置10のユーザにより指定される。解析装置10は、コントローラ20から収集対象となる変数を収集し、収集データとしてデータ記憶部100に記録する。
[解析部]
解析部101は、CPU11を主として実現される。解析部101は、コントローラ20及び被制御装置30の少なくとも一方の動作を解析する。解析部101は、コントローラ20及び被制御装置30の両方の動作を解析してもよいし、コントローラ20又は被制御装置30の何れかの動作を解析してもよい。
動作の解析とは、収集データを解析することである。解析部101は、収集データが所定の条件を満たすか否かを判定することによって、解析を行う。所定の条件は、収集データに基づいて判定可能な条件であり、例えば、収集データが示す値が閾値以上であるか否か、又は、収集データに基づいて計算された値が閾値以上であるか否かである。例えば、動作に異常が発生しているか否かを判定することは、解析に相当する。また例えば、動作に異常は発生していないが、変数の値、パラメータ、又はファームウェアを変更する必要があるか否かを判定することは、解析に相当する。
本実施形態では、アプリケーションにより解析が行われるので、解析部101は、収集データに示された変数をアプリケーションに入力し、アプリケーションを利用して動作を解析する。例えば、解析部101は、アプリケーションを利用して、制御指令の内容を取得する。制御指令の内容は、制御指令によって書き換えるべき変数の名前とその値を含む。制御指令の内容は、他の内容を含んでもよく、例えば、コントローラ20又は被制御装置30に実行させるコマンド、変更すべきパラメータ及びその値、又は変更すべきファームウェアなどを含んでもよい。
[判定部]
判定部102は、CPU11を主として実現される。判定部102は、コントローラ20及び被制御装置30の少なくとも一方の動作に基づいて、制御指令の入力条件が満たされたか否かを判定する。判定部102は、コントローラ20及び被制御装置30の両方の動作に基づいて、入力条件が満たされたか否かを判定してもよいし、コントローラ20又は被制御装置30の何れかの動作に基づいて、入力条件が満たされたか否かを判定してもよい。
入力条件は、制御指令を入力するか否かを決定するための条件である。本実施形態では、入力条件が収集データに基づいて判定可能な条件である場合を説明するが、入力条件は、任意の条件であってよい。例えば、入力条件は、収集データに関係のない条件であってもよく、例えば、解析装置10に直接的に接続されたセンサの信号、カメラ(ビジョンセンサ)によって撮影された画像に示された被写体(例えば、ワーク)の状態、又は、現在日時などの条件であってもよい。
例えば、判定部102は、収集データに基づいて、入力条件が満たされたか否かを判定する。判定部102は、収集データに含まれる変数の値が所定の範囲になったか否かを判定する。変数の値が閾値以上になること、又は、変数の値が閾値未満になることは、所定の範囲になることに相当する。また例えば、判定部102は、収集データに含まれる変数の値が所定の範囲になった回数が所定回数以上になったか否かを判定する。また例えば、判定部102は、収集データに基づいて計算した値が閾値以上になったか否か、又は、当該値が閾値以上になった回数が所定回数以上になったか否かを判定してもよい。
[入力部]
入力部103は、CPU11を主として実現される。入力部103は、コントローラ20に対し、コントローラ20及び被制御装置30の少なくとも一方の動作に関する制御指令を入力する。制御指令は、コントローラ20及び被制御装置30の両方の動作に関する指令であってもよいし、コントローラ20又は被制御装置30の何れかの動作に関する指令であってもよい。なお、ここでの入力とは、送信と同じ意味である。
本実施形態では、コントローラ20及び被制御装置30の少なくとも一方の動作が、コントローラ20から収集された収集データによって特定可能なので、入力部103は、収集データに応じた制御指令を入力する。なお、収集データ以外の他のデータによって動作が特定可能なのであれば、入力部103は、他のデータに応じた制御指令を入力する。他のデータは、任意のデータであってよく、例えば、トルクセンサ又はモータエンコーダなどのセンサにより検出された物理量のデータ(瞬時値のデータ)であってもよいし、これらの物理量が時系列的に格納されたトレースデータであってもよい。
入力部103は、コントローラ20に対し、収集データに基づいて決定された内容の制御指令を送信する。本実施形態では、解析のアプリケーションによって制御指令の内容が決定されるので、入力部103は、コントローラ20に対し、解析部101により出力された内容を示す制御指令を送信する。例えば、収集データの内容に基づいて、制御指令により書き換えるべき変数の種類とその値が決定される。これらは、入力部103により決定されてもよいし、解析部101等により決定されてもよい。
本実施形態では、入力部103は、入力条件が満たされたと判定された場合に、コントローラ20に対し、制御指令を入力する。入力条件が満たされたと判定されない場合には、制御指令は入力されない。別の言い方をすれば、入力部103は、入力条件が満たされたと判定されたことに応じて、コントローラ20に対し、制御指令を入力する。入力部103は、入力条件が満たされるまで、制御指令の入力を待機する。
本実施形態では、入力部103は、解析部101の解析結果に基づいて、制御指令を入力する。例えば、入力部103は、解析部101の解析結果に基づいて、制御指令を送信するか否かを決定する。入力部103は、解析結果が所定の結果であった場合に、制御指令を送信する。この場合、制御指令の内容は、収集データに基づいて決まってもよいし、収集データに関係なく固定値であってもよい。また例えば、入力部103は、解析部101の解析結果に応じた内容の制御指令を入力する。この場合、制御指令に含まれる変数の名前とその値が、解析結果によって決定される。
[送信部]
送信部104は、CPU11を主として実現される。送信部104は、制御指令の入力が完了した場合に、コントローラ20に対し、所定の完了通知を送信する。制御指令の入力が完了していない場合には、完了通知は送信されない。送信部104は、制御指令の入力が完了したことに応じて、コントローラ20に対し、完了通知を送信する。
制御指令の入力が完了したとは、解析装置10が制御指令の送信を完了した時点、コントローラ20が制御指令の受信を完了した時点、制御指令に含まれる変数の値が第3記憶部22Bに書き込まれた時点、又は、これらの時点の後の時点である。
完了通知は、制御指令の入力が完了したことを示す通知である。完了通知は、所定形式のデータであればよく、完了通知であることを示す識別情報を含む。例えば、送信部104は、制御指令の最後のデータ部分まで入力されたか否かを判定する。送信部104は、最後のデータ部分まで入力されたと判定された場合に、完了通知を送信する。送信部104は、最後のデータ部分の入力が完了するまでは、完了通知の送信を待機する。
[3−2.コントローラで実現される機能]
図3に示すように、コントローラ20では、第1データ記憶部200、第2データ記憶部201、第3データ記憶部202、第4データ記憶部203、書き換え部204、判定部205、及び動作制御部206が実現される。
[第1データ記憶部]
第1データ記憶部200は、CPU21の第1記憶部21を主として実現される。第1データ記憶部200は、被制御装置30の制御に必要なデータを記憶する。例えば、第1データ記憶部200は、変数定義を示す変数定義データD1と、複数の変数の各々を示す変数値データD2と、を記憶する。
図4は、変数定義データのデータ格納例を示す図である。図4に示すように、変数定義データD1には、書き換え可能な変数を識別する情報を含む。例えば、変数定義データD1には、書き換え可能な変数の名前と、変数のコメントと、が格納されている。変数の名前は、変数を識別する情報の一例であり、名前以外にもIDのような情報によって変数が識別されてもよい。
コメントは、コントローラ20のユーザにより入力された任意の文字列であり、変数が示す内容や用途等の情報が示される。なお、変数定義データD1は、図4の例に限られず、変数定義データD1には、全ての変数の一覧と、書き換え可能であるか否かを示すフラグと、が格納されているようにしてもよい。この場合、コントローラ20のユーザによりフラグの値が指定される。
図5は、変数値データのデータ格納例を示す図である。図5に示すように、変数値データD2は、各変数の現在値を示すデータである。例えば、変数値データD2には、変数ごとに、現在値が示される。各変数は、特定のレジスタに格納される。変数とレジスタの関係(どの変数をどのレジスタに格納するか)については、制御プログラムの作成者等によって予め指定されているものとする。レジスタに格納された変数は、他の機器(例えば、コントローラ20)によって適宜参照可能となる。
[第2データ記憶部]
第2データ記憶部201は、第2記憶部22Aを主として実現される。第2データ記憶部201は、複数の変数の各々を記憶する。第2データ記憶部201は、変数値データD2と同様のデータを記憶する。第2データ記憶部201は、定期的に第1データ記憶部200との整合が取られる。
整合を取るとは、第1データ記憶部200に記憶された値と第2データ記憶部201に記憶された値との何れか一方を他方に合わせる(一方の値を他方にコピーする)ことである。例えば、ある変数名の変数について、第1データ記憶部200に記憶された値を、第2データ記憶部201に記憶された値にすることは、整合を取ることに相当する。書き換え対象の変数については、第1データ記憶部200に記憶された値が、第2データ記憶部201に記憶された値になる。
また例えば、ある変数名の変数について、第2データ記憶部201に記憶された値を、第1データ記憶部200に記憶された値にすることは、整合を取ることに相当する。解析装置10により収集される変数が第2データ記憶部201に記録される場合、第2データ記憶部201に記憶された値が、第1データ記憶部200に記憶された値になる。これにより、第1データ記憶部200に記憶された変数が、第2データ記憶部201を介して解析装置10に送信される。
定期的とは、周期的と同じ意味である。周期ごとに、第1データ記憶部200に記憶された変数と、第2データ記憶部201に記憶された変数と、の整合が取られる。これらの整合は、CPU21が主体となって実行されてもよいし、IoT部22が主体となって実行されてもよい。CPU21又はIoT部22は、周期ごとに、第1データ記憶部200に記憶された変数と、第2データ記憶部201に記憶された変数と、の整合を取る。
例えば、変数定義に定義された変数は、書き換えの対象となりうるので、第2データ記憶部201に記憶された変数が第1データ記憶部200にコピーされる。このため、第1データ記憶部200の変数値データD2は、第2データ記憶部201の最新の変数値データD2に置き換わる(上書きされる)。第2データ記憶部201に記憶された変数値データD2の一部の内容だけがコピーされてもよく、例えば、書き換えの対象となった変数の値だけがコピーされてもよい。
[第3データ記憶部]
第3データ記憶部202は、第3記憶部22Bを主として実現される。第3データ記憶部202は、制御指令に応じた少なくとも1つの変数を記憶する。第3データ記憶部202は、制御指令に含まれる変数の値を記憶する。制御指令に1つの変数の値だけが含まれている場合には、第3データ記憶部202は、1つの変数の値だけを記憶する。制御指令に複数の変数の値が含まれている場合には、第3データ記憶部202は、複数の変数の値だけを記憶する。
本実施形態では、コントローラ20は、第1通信部22Cを介して制御指令を受信するので、第3データ記憶部202には、第1通信部22Cを介して受信した制御指令に含まれる変数を記憶する。第3データ記憶部202に記憶された変数は、第2データ記憶部201に書き込まれるので、第3データ記憶部202は、制御指令に含まれる変数を一時的に記憶する。第3データ記憶部202に記憶された変数は、第2データ記憶部201に書き込まれた場合に消去されてもよいし、次の制御指令が入力されるまで保持されてもよい。
[第4データ記憶部]
第4データ記憶部203は、第4記憶部23を主として実現される。第4データ記憶部203は、被制御装置30の制御に必要なデータを記憶する。例えば、第4データ記憶部203は、制御プログラムとパラメータを記憶する。また例えば、第4データ記憶部203は、ファームウェアなどの他のプログラムを記憶してもよいし、解析装置10に収集データを送信するためのプログラムを記憶してもよい。
なお、コントローラ20に記憶されるデータは、上記の例に限られない。例えば、コントローラ20は、各変数に対応するレジスタを定義したレジスタ定義データを記憶してもよい。また例えば、コントローラ20は、自身の制御対象となる被制御装置30を識別可能な情報を記憶してもよい。また例えば、コントローラ20は、解析装置10を識別可能な情報を記憶してもよい。これらのデータは、第1データ記憶部200〜第4データ記憶部203の何れかに記憶されるようにすればよい。
[書き換え部]
書き換え部204は、IoT部22を主として実現される。即ち、IoT部22は、書き換え部204を有する。書き換え部204は、制御指令に基づいて、複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える。本実施形態では、外部装置である解析装置10により制御指令が入力されるので、書き換え部204は、解析装置10から入力された制御指令に基づいて、少なくとも1つの変数を書き換える。
書き換え部204は、制御指令に名前が含まれる変数の値を、制御指令に含まれる値に書き換える。変数定義に定義されていない変数については、書き換えの対象とはならない。書き換えとは、上書き、更新、又は転送と同じ意味である。メモリに記憶されていた値を、制御指令に含まれる値に変えることは、書き換えに相当する。
なお、書き換え部204は、制御指令に、変数定義に定義されていない変数(書き換え可能ではない変数)が含まれていた場合、当該変数の値を書き換えないように制限してもよい。この場合、書き換え部204は、変数定義データD1を参照し、制御指令に含まれる変数が書き換え可能な変数であるか否かを判定する。書き換え部204は、制御指令に含まれる変数が書き換え可能な変数であると判定した場合、当該変数の値を書き換える。書き換え部204は、制御指令に含まれる変数が書き換え可能な変数であると判定しない場合、当該変数の値を書き換えない。
本実施形態では、書き換え部204は、第3データ記憶部202に記憶された少なくとも1つの変数を第2データ記憶部201に書き込み、第2データ記憶部201に書き込まれた少なくとも1つの変数を第1データ記憶部200に書き込む。書き換え部204は、第3データ記憶部202に記憶された少なくとも1つの変数を、第2データ記憶部201を介して(経由して)、第1データ記憶部200に書き込む。
例えば、書き換え部204は、制御指令に応じた少なくとも1つの変数の第3データ記憶部202への書き込みが完了したか否かを判定する。書き換え部204は、制御指令に応じた少なくとも1つの変数の全てが第3データ記憶部202に書き込まれたか否かを判定する。例えば、書き換え部204は、完了通知を受信した場合に、制御指令に応じた少なくとも1つの変数の第3データ記憶部202への書き込みが完了したと判定する。
書き換え部204は、第3データ記憶部202への書き込みが完了したと判定された場合に、第3データ記憶部202に書き込まれた少なくとも1つの変数の第2データ記憶部201への書き込みを開始する。第3データ記憶部202への書き込みが完了したと判定されない場合には、書き込みは開始されない。書き換え部204は、第3データ記憶部202への書き込みが完了したと判定されたことに応じて、書き込みを開始する。即ち、書き換え部204は、第3データ記憶部202への書き込みが完了したと判定されるまで、書き込みを待機する。
書き換え部204は、第1データ記憶部200と第2データ記憶部201との間の整合が取られたと判定された場合に、第3データ記憶部202に書き込まれた変数を第2データ記憶部201に書き込む。整合が取られたと判定されない場合には、書き込みは開始されない。書き換え部204は、整合が取られたと判定されたことに応じて、書き込みを開始する。即ち、書き換え部204は、整合が取られたと判定されるまで、書き込みを待機する。
[判定部]
判定部205は、IoT部22を主として実現される。判定部205は、第1データ記憶部200と第2データ記憶部201との間で整合が取られたか否かを判定する。本実施形態では、第1データ記憶部200と第2データ記憶部201との間で周期的に整合が取られ、1周期が終了する直前には整合が完了するので、判定部205は、1周期が終了する直前の時点が訪れたか否かを判定する。この時点は、1周期の終了時点から所定時間前の時点(1周期の開始時点から所定時間後の時点)であればよい。
例えば、1周期をTマイクロ秒(Tは正数)とすると、1周期の終了時点のT/10マイクロ秒前の時点が訪れることであってもよい。ただし、この時点から1周期の終了時点までの期間の長さは、第3データ記憶部202に記憶された変数の値を第2データ記憶部201に書き込む処理を十分完了できる程度に定めておけばよい。判定部205は、この時点が訪れた場合に、第1データ記憶部200と第2データ記憶部201との間で整合が取られたと判定する。
なお、判定部205の判定方法は、上記の例に限られない。例えば、複数の変数の整合が順番に取られる場合には、判定部205は、最後の変数の整合まで完了したか否かを判定してもよい。また例えば、変数の整合の完了時にCPU21からIoT部22に対し、所定の通知が送信される場合には、判定部205は、この通知を受信したか否かを判定してもよい。
[動作制御部]
動作制御部206は、CPU21を主として実現される。動作制御部206は、周期的に複数の変数の各々を更新して、被制御装置30を制御する。動作制御部206は、制御プログラムに基づいて、被制御装置30の動作を制御する。例えば、動作制御部206は、被制御装置30に対して指示を送り、被制御装置30は、当該指示に基づいて動作する。本実施形態では、装置プログラムに関連付けられた変数の値に基づいて被制御装置30が動作するので、例えば、動作制御部206は、被制御装置30に対し、装置プログラムを開始させるための変数の値を変える旨の指示を送る。被制御装置30は、当該指示に基づいて変数の値を変えて装置プログラムを実行する。なお、被制御装置30の動作制御のために特に変数を利用しない場合には、動作制御部206は、被制御装置30が実行すべき動作を示すコマンドを送信することによって、被制御装置30の動作を制御すればよい。
[3−3.被制御装置で実現される機能]
図3に示すように、被制御装置30では、データ記憶部300及び工程実行部301が実現される。
[データ記憶部]
データ記憶部300は、記憶部32を主として実現される。データ記憶部300は、被制御装置30が所定の動作をするために必要なデータを記憶する。例えば、データ記憶部300は、装置プログラムと、変数の現在値と、を記憶する。変数の現在値は、変数値データD2に格納される値と同じである。なお、データ記憶部300は、変数定義に定義された変数以外の変数の値も記憶する。各変数の値は、予め定められたレジスタに格納される。
[工程実行部]
工程実行部301は、CPU31を主として実現される。工程実行部301は、データ記憶部300に記憶された装置プログラムと、コントローラ20から受信した指示と、に基づいて、所定の工程を実行する。例えば、コントローラ20は、ある装置プログラムを開始させる場合に、当該装置プログラムに関連付けられた変数を所定の値にする旨の指示を被制御装置30に送信する。被制御装置30は、当該指示を受信すると変数を所定の値に変更する。工程実行部301は、変数が所定の値になったことを検知すると、当該変数に関連付けられた装置プログラムを実行する。
工程実行部301は、装置プログラムが示す工程が終了すると、当該装置プログラムに関連付けられた変数を所定の値に変更し、その旨をコントローラ20に対して送信する。その後に、別の装置プログラムを実行させる場合には、コントローラ20は、当該別の装置プログラムに関連付けられた変数を所定の値にする旨の指示を被制御装置30に送信し、工程実行部301は、別の装置プログラムを実行させることになる。なお、被制御装置30の中で複数の装置プログラムの実行順が定義されている場合には、コントローラ20に対して、装置プログラムの終了が送信されずに、工程実行部301は、当該複数の装置プログラムを次々と実行するようにしてもよい。
[4.生産システムで実行される処理]
図6は、生産システム1で実行される処理の一例を示すフロー図である。図6に示す処理は、図3に示す機能ブロックにより実行される処理の一例である。なお、図6では、主に制御指令に関する処理について説明し、コントローラ20が被制御装置30を制御する処理については省略する。
図6に示すように、コントローラ20は、解析装置10に対し、収集データを送信する(S1)。S1においては、コントローラ20は、第1記憶部21Aに記憶された変数定義データD1に基づいて、収集対象の変数を特定する。コントローラ20は、第1記憶部21Aに記憶された変数値データD2を参照し、収集対象の変数の値を示す収集データを生成する。コントローラ20は、解析装置10に対し、当該生成した収集データを送信する。
解析装置10は、コントローラ20から収集データを受信する(S2)。S2においては、解析装置10は、受信した収集データを記憶部12に記録する。収集データは、解析用のアプリケーションによって参照される。解析用のアプリケーションは、解析装置10のユーザの操作によって起動してもよいし、常時起動されていてもよい。収集データは、任意のタイミングでアプリケーションによって参照されるようにすればよい。
解析装置10は、解析のアプリケーションに基づいて、コントローラ20又は被制御装置30の動作を解析する(S3)。S3においては、解析装置10は、アプリケーションに収集データを入力し、アプリケーションを実行する。アプリケーションは、解析結果を出力する。
解析装置10は、S3における解析結果に基づいて、制御指令の入力条件が満たされたか否かを判定する(S4)。S4においては、解析装置10は、変数の値が閾値以上であることを示す解析結果が得られたか否かを判定する。
入力条件が満たされたと判定されない場合(S4;N)、S3の処理に戻る。この場合、入力条件が満たされないので、制御指令は送信されない。一方、入力条件が満たされたと判定された場合(S4;Y)、解析装置10は、解析結果に基づいて、制御指令の内容を決定する(S5)。S5においては、解析装置10は、アプリケーションによって決定された変数の種類とその値を取得し、これらを制御指令の内容として決定する。
解析装置10は、コントローラ20に対し、制御指令を送信する(S6)。S6においては、解析装置10は、S5において決定した変数の名前とその値を含む制御指令を生成して送信する。解析装置10は、制御指令の送信が完了したか否かを判定する(S7)。S7においては、解析装置10は、制御指令における最後のデータ部分(最後のパケット)まで送信が完了したか否かを判定する。
制御指令の送信が完了したと判定されない場合(S7;N)、S6の処理に戻り、制御指令の送信が継続される。一方、制御指令の送信が完了したと判定された場合(S7;Y)、解析装置10は、コントローラ20に対し、所定の完了通知を送信する(S8)。
コントローラ20は、第1通信部22Cを介して、制御指令を受信し、制御指令に含まれる変数の名前とその値を第3記憶部22Bに記録する(S9)。S9においては、コントローラ20は、制御指令のパケットを受信するたびに、そのパケットに含まれる変数の名前とその値を第3記憶部22Bに記録する。
コントローラ20は、完了通知を受信したか否かを判定する(S10)。完了通知を受信したと判定されない場合(S10;N)、S9の処理に戻り、制御指令の受信が継続される。一方、完了通知を受信したと判定された場合(S10;Y)、コントローラ20は、第1記憶部21Aと第2記憶部22Aとの間で変数の整合が取られる周期の終了時点が近づいたか否かを判定する(S11)。例えば、コントローラ20は、タイマ値によって時間を管理し、タイマ値を参照して1周期内の終了時点の所定時間前の時点が訪れたか否かを判定する。
周期の終了時点が近づいたと判定されない場合(S11;N)、再びS11の処理が実行される。この場合、完了通知を受信したとしても、制御指令に含まれる変数は第2記憶部22Aに書き込まれない。一方、周期の終了時点が近づいたと判定された場合(S11;Y)、コントローラ20は、第3記憶部22Bに書き込まれた変数を、第2記憶部22Aに書き込む(S12)。コントローラ20は、S11における判定が肯定になるまで、S12の処理の実行を待機することになる。
コントローラ20は、次の周期が訪れた場合に、第2記憶部22Aに書き込まれた変数を第1記憶部21Aに書き込み(S13)、本処理は終了する。コントローラ20は、S13において書き込んだ変数に基づいて、被制御装置30を制御する。
以上説明した生産システム1によれば、コントローラ20及び被制御装置30の少なくとも一方の動作に関する制御指令に基づいて、書き換え可能な変数として定義された少なくとも1つの変数を書き換える。これにより、制御指令の内容を変数の値に迅速に反映し、コントローラ20に対する制御指令を迅速に実行できる。また、制御指令により書き換え可能な変数を予め定義しておくことで、意図しない変数の書き換えを防止し、コントローラ20に対する制御指令を正確に実行することができる。制御指令を迅速かつ正確に実行することにより、被制御装置30の動作精度を向上させることができる。
生産システム1では、入力条件が満たされた場合に制御指令が入力され、定期的に制御指令が入力されるわけではない(常に制御指令が入力されるわけではない)ため、コントローラ20の処理負荷を軽減できる。
生産システム1では、被制御装置30の制御用の第1制御回路であるCPU21と、外部との通信用の第2制御回路であるIoT部22と、が物理的に分けられていることにより、処理負荷を分散し、被制御装置30の制御や制御指令の実行に支障が出ることを防止できる。その結果、制御の精度を向上させたり、コントローラ20に対する制御指令をより迅速かつ正確に実行したりすることができる。
生産システム1では、第3記憶部22Bに記憶された少なくとも1つの変数が第2記憶部22Aに書き込まれ、第2記憶部22Aに書き込まれた少なくとも1つの変数を第1記憶部21Aに書き込まれることにより、制御指令に応じた少なくとも1つの変数を、コントローラ20に正確に反映できる。
生産システム1は、制御指令に含まれる少なくとも1つの変数の第3記憶部22Bへの書き込みが完了したと判定された場合に、第3記憶部22Bに書き込まれた少なくとも1つの変数の第2記憶部22Aへの書き込みを開始することにより、制御指令に含まれる少なくとも1つの変数の書き込みが完了していないにも関わらず第2記憶部22Aへの書き込みが開始されてしまうといったことを防止し、制御指令をより正確に実行することができる。
生産システム1では、コントローラ20が完了通知を受信した場合に、制御指令に応じた少なくとも1つの変数の第3記憶部22Bへの書き込みが完了したと判定することにより、書き込みの完了を正確に判定し、制御指令をより正確に実行することができる。また、コントローラ20は、完了通知を受信すれば書き込みの完了を特定できるので、書き込みが完了したか否かを常時判定する必要がなくなり、コントローラ20の処理負荷を軽減できる。
生産システム1は、第1記憶部21Aと第2記憶部22Aとの間の整合が取られたと判定された場合に、第3記憶部22Bに書き込まれた変数を第2記憶部22Aに書き込むことにより、制御指令をより正確に実行することができる。
生産システム1は、動作の解析結果に基づいて制御指令を入力することにより、解析結果に応じた制御指令を迅速かつ正確に実行することができる。
生産システム1は、外部装置である解析装置10からの制御指令を迅速かつ正確に実行することができる。解析装置10とコントローラ20とで役割分担をすることで、コントローラ20は、制御指令の送信要否等を判定する必要がなくなり、コントローラ20の処理負荷を軽減できる。
[5.変形例]
なお、本開示は、以上に説明した実施の形態に限定されるものではない。本開示の趣旨を逸脱しない範囲で、適宜変更可能である。
(1)例えば、解析装置10が複数のアプリケーションを記憶しており、解析部101が複数のアプリケーションの各々に基づいて解析を行う場合に、アプリケーションごとに、書き換え対象となる変数が定義されていてもよい。各アプリケーションでは、互いに異なる観点で解析が行われる。各アプリケーションによって参照される変数の種類は異なってもよい。例えば、トルクを解析するアプリケーションでは、トルクを示す変数が参照される。また例えば、モータの速度を解析するアプリケーションでは、回転数及び回転角を示す変数が参照される。他のアプリケーションについても同様であり、解析に必要な変数が参照される。
各アプリケーションには、変数が関連付けられている。各アプリケーションに関連付けられた変数は、制御指令によって書き換えられる変数である。アプリケーションと変数の関連付けは、データ記憶部100に記憶されているものとする。この関連付けは、任意のデータ形式であってよい。例えば、数式形式又はテーブル形式のデータによって関連付けが定義されていてもよいし、解析用のアプリケーション又は他のプログラムのコードとして関連付けが定義されていてもよい。
入力部103は、各アプリケーションの実行結果に基づいて、当該アプリケーションに関連付けられた少なくとも1つの変数を含む制御指令を入力する。本変形例では、アプリケーションごとに入力条件が定められており、入力部103は、入力条件を満たしたアプリケーションに関連付けられた変数を特定する。入力部103は、特定した変数の名前とその値を含む制御指令を生成し、コントローラ20に対して入力する。複数のアプリケーションの各々の入力条件が満たされた場合には、入力部103は、これら複数のアプリケーションの各々に対応する制御指令を入力してもよい。この場合、後述する変形例(2)のように、複数の制御指令が同時に入力されないように制限されてもよいし、特にこのような制限がなされずに複数の制御指令が同時に入力されてもよい。
書き換え部204は、各アプリケーションの制御指令に基づいて、当該アプリケーションに関連付けられた少なくとも1つの変数を書き換える。変数を書き換える処理自体は、実施形態で説明した通りである。書き換え部204は、受信した制御指令に名前が含まれる変数の値を書き換えればよい。
変形例(1)によれば、アプリケーションに応じた変数を書き換えることにより、アプリケーションに応じた制御指令を、より迅速かつ正確に実行することができる。その結果、被制御装置30の動作精度を、より効果的に向上させることができる。
(2)また例えば、変形例(1)において、複数のアプリケーションが同時に制御指令を送ろうとすると、変数が正確に反映されないことがある。例えば、あるアプリケーションXの制御指令に変数Aの値が含まれており、別のアプリケーションYの制御指令に同じ変数Aの値が含まれていることがある。この場合、これらの制御指令が同時にコントローラ20に送信されると、コントローラ20は、何れの値に書き換えてよいかを特定することができない。また、アプリケーションX,Yの何れか一方の値に書き換えられると、他方による書き換えが正確に行われないことがある。このため、複数のアプリケーションの制御指令が同時に入力されないようにしてもよい。
図7は、変形例(2)の機能ブロック図である。図7に示すように、変形例(2)では、解析装置10により制限部105が実現される。制限部105は、CPU11を主として実現される。制限部105は、複数のアプリケーションの制御指令が同時に入力されることを制限する。
制限とは、複数のアプリケーションの制御指令が同時にコントローラ20に入力されることを禁止することである。例えば、制限部105は、入力条件を満たしたアプリケーションが複数存在した場合に、入力部103に、制御指令を1つずつ入力させる。制御指令の順番は、ランダムに決まってもよいし、アプリケーションに優先順位を定めておき、その優先順位に基づいて決まってもよい。
制限部105は、制御指令を入力する順番を決定し、入力部103に、当該決定した順番で制御指令を入力させる。例えば、制限部105は、あるアプリケーションの制御指令の入力が完了した場合に、次のアプリケーションの制御指令の入力を開始する。なお、制限部105による制限方法は、上記の例に限られない。例えば、制限部105は、入力条件を満たしたアプリケーションが複数存在した場合に、入力部103に、何れか1つのアプリケーションの制御指令だけを入力させてもよい。この場合、優先順位が最も高いアプリケーションの制御指令だけが入力されてもよい。
変形例(2)によれば、複数のアプリケーションの制御指令が同時に入力されることを制限することにより、制御指令をより正確に実行することができる。
(3)また例えば、上記変形例を組み合わせてもよい。
また例えば、制御指令の入力条件が特に設定されておらず、制御指令が定期的又は常にコントローラ20に入力されてもよい。また例えば、コントローラ20は、CPU21とIoT部22で役割分担がなされていなくてもよい。CPU21がIoT部22の機能も実現してもよい。また例えば、コントローラ20は、第1記憶部21A、第2記憶部22A、第3記憶部22B、及び第4記憶部23に分かれていなくてもよく、1つの記憶部内で変数の書き換えが完結してもよい。この場合、メモリが物理的に分かれているわけではないので、1つのメモリに設定された複数のデータ領域の各々に対し、制御指令に含まれる変数が書き込まれる。データ領域間で変数の値の書き換えが行われる。
また例えば、第1記憶部21Aと第2記憶部22Aとの間で変数の整合が定期的に取られていなくてもよい。この場合、制御指令を受信した場合にだけ、第2記憶部22Aに書き込まれた変数が第1記憶部21Aに書き込まれてもよい。また例えば、制御指令は、収集データの解析結果ではなく、トレースデータなどの他のデータに基づいて入力されてもよい。また例えば、生産システム1における各装置のユーザが異なる場合を説明したが、ユーザは同じであってもよい。また例えば、第2記憶部22Aから第3記憶部22Bへの変数の書き込みは、1周期が終了する直前でなくてもよい。例えば、1周期〜数周期程度のずれが許容される変数であれば、第2記憶部22Aから第3記憶部22Bへの変数の書き込みは、任意のタイミングで行われてよい。
また例えば、上記説明した各機能は、生産システム1における任意の装置で実現されるようにすればよい。例えば、解析装置10で実現されるものとして説明した機能がコントローラ20又は被制御装置30によって実現されてもよい。また例えば、コントローラ20で実現されるものとして説明した機能が解析装置10又は被制御装置30によって実現されてもよい。また例えば、各機能が複数のコンピュータによって分担されるのではなく、1つのコンピュータによって実現されてもよい。
また、以上説明した実施形態は具体例として示したものであり、本明細書にて開示される発明をこれら具体例の構成やデータ格納例そのものに限定するものではない。当業者はこれら開示された実施形態に種々の変形、例えば、物理的構成の形状や数、データ構造、処理の実行順を変更したりしてもよい。本明細書にて開示される発明の技術的範囲は、そのようになされた変形をも含むものと理解すべきである。
1 生産システム、10 解析装置、11,21,31 CPU、12,32 記憶部、13,33 通信部、14 操作部、15 表示部、20 コントローラ、21A 第1記憶部、22A 第2記憶部、22B 第3記憶部、22C 第1通信部、23 第4記憶部、24 第2通信部、30 被制御装置、D1 変数定義データ、D2 変数値データ、100 データ記憶部、101 解析部、102 判定部、103 入力部、104 送信部、105 制限部、200 第1データ記憶部、201 第2データ記憶部、202 第3データ記憶部、203 第4データ記憶部、204 書き換え部、205 判定部、206 動作制御部、300 データ記憶部、301 工程実行部。

Claims (15)

  1. 周期的に複数の変数の各々を更新して、他の産業装置を制御する産業装置と、
    前記産業装置及び前記他の産業装置の少なくとも一方の動作に基づいて、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令の入力条件が満たされたか否かを判定する判定部と、
    前記入力条件が満たされたと判定された場合に、前記産業装置に対し、前記制御指令を入力する入力部と、
    を有し、
    前記産業装置は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える書き換え部を有する、
    生産システム。
  2. 複数の変数の各々に基づいて、他の産業装置を制御する産業装置と、
    前記産業装置に対し、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令を入力する入力部と、
    を有し、
    前記産業装置は、
    前記複数の変数の各々に基づいて、前記他の産業装置を制御する第1制御回路と、
    前記制御指令を受け付ける第2制御回路と、
    を有し、
    前記第1制御回路は、前記複数の変数の各々を記憶する第1記憶部を有し、
    前記第2制御回路は、
    前記複数の変数の各々を記憶し、定期的に前記第1記憶部との整合が取られる第2記憶部と、
    前記制御指令に応じた前記少なくとも1つの変数を記憶する第3記憶部と、
    前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える書き込み部であって、前記第3記憶部に記憶された前記少なくとも1つの変数を前記第2記憶部に書き込み、前記第2記憶部に書き込まれた前記少なくとも1つの変数を前記第1記憶部に書き込む書き換え部と、
    を有する生産システム。
  3. 前記書き換え部は、
    前記制御指令に応じた前記少なくとも1つの変数の前記第3記憶部への書き込みが完了したか否かを判定し、
    前記第3記憶部への書き込みが完了したと判定された場合に、前記第3記憶部に書き込まれた前記少なくとも1つの変数の前記第2記憶部への書き込みを開始する、
    請求項に記載の生産システム。
  4. 前記生産システムは、前記制御指令の入力が完了した場合に、前記産業装置に対し、所定の完了通知を送信する送信部を有し、
    前記書き換え部は、前記完了通知を受信した場合に、前記制御指令に応じた前記少なくとも1つの変数の前記第3記憶部への書き込みが完了したと判定する、
    請求項に記載の生産システム。
  5. 前記生産システムは、前記第1記憶部と前記第2記憶部との間で整合が取られたか否かを判定する判定部を有し、
    前記書き換え部は、前記第1記憶部と前記第2記憶部との間の整合が取られたと判定された場合に、前記第3記憶部に書き込まれた変数を前記第2記憶部に書き込む、
    請求項の何れかに記載の生産システム。
  6. 複数の変数の各々に基づいて、他の産業装置を制御する産業装置と、
    前記産業装置及び前記他の産業装置の少なくとも一方の動作を解析する解析部と、
    前記解析部の解析結果に基づいて、前記産業装置に対し、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令を入力する入力部と、
    を有し、
    前記産業装置は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える書き換え部を有する、
    生産システム。
  7. 前記解析部は、複数のアプリケーションの各々に基づいて解析を行い、
    前記入力部は、各アプリケーションの実行結果に基づいて、当該アプリケーションに関連付けられた少なくとも1つの変数を含む制御指令を入力し、
    前記書き換え部は、各アプリケーションの前記制御指令に基づいて、当該アプリケーションに関連付けられた少なくとも1つの変数を書き換える、
    請求項に記載の生産システム。
  8. 前記生産システムは、複数の前記アプリケーションの制御指令が同時に入力されることを制限する制限部を有する、
    請求項に記載の生産システム。
  9. 前記生産システムは、前記産業装置とは異なる外部装置を含み、
    前記外部装置は、前記入力部を有し、
    前記書き換え部は、前記外部装置から入力された前記制御指令に基づいて、前記少なくとも1つの変数を書き換える、
    請求項1〜の何れかに記載の生産システム。
  10. 周期的に複数の変数の各々を更新して、他の産業装置を制御する産業装置及び前記他の産業装置の少なくとも一方の動作に基づいて、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令の入力条件が満たされたか否かを判定し、
    前記入力条件が満たされたと判定された場合に、前記産業装置に対し、前記制御指令を入力し、
    前記産業装置は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える、
    制御方法。
  11. 複数の変数の各々に基づいて、他の産業装置を制御する産業装置に対し、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令を入力し、
    前記産業装置は、
    前記複数の変数の各々に基づいて、前記他の産業装置を制御する第1制御回路と、
    前記制御指令を受け付ける第2制御回路と、
    を有し、
    前記第1制御回路は、前記複数の変数の各々を記憶する第1記憶部を有し、
    前記第2制御回路は、
    前記複数の変数の各々を記憶し、定期的に前記第1記憶部との整合が取られる第2記憶部と、
    前記制御指令に応じた前記少なくとも1つの変数を記憶する第3記憶部と、
    を有し、
    前記第2制御回路は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える場合に、前記第3記憶部に記憶された前記少なくとも1つの変数を前記第2記憶部に書き込み、前記第2記憶部に書き込まれた前記少なくとも1つの変数を前記第1記憶部に書き込む、
    制御方法。
  12. 複数の変数の各々に基づいて、他の産業装置を制御する産業装置及び前記他の産業装置の少なくとも一方の動作を解析し、
    前記動作の解析結果に基づいて、前記産業装置に対し、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令を入力し、
    前記産業装置は、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換える、
    制御方法。
  13. 周期的に複数の変数の各々を更新して、他の産業装置を制御する産業装置を、
    前記産業装置及び前記他の産業装置の少なくとも一方の動作に基づいて、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令の入力条件が満たされたと判定された場合に入力された前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換えさせる、
    ためのプログラム。
  14. 複数の変数の各々に基づいて、他の産業装置を制御する制御する第1制御回路と、
    前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令の入力を受け付ける第2制御回路と、
    を有する産業装置であって、
    前記第1制御回路は、前記複数の変数の各々を記憶する第1記憶部を有し、
    前記第2制御回路は、
    前記複数の変数の各々を記憶し、定期的に前記第1記憶部との整合が取られる第2記憶部と、
    前記制御指令に応じた前記少なくとも1つの変数を記憶する第3記憶部と、
    を有する前記産業装置の前記第2制御回路に、
    前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換えさせる場合に、前記第3記憶部に記憶された前記少なくとも1つの変数を前記第2記憶部に書き込ませ、前記第2記憶部に書き込まれた前記少なくとも1つの変数を前記第1記憶部に書き込ませる、
    ためのプログラム。
  15. 複数の変数の各々に基づいて、他の産業装置を制御する産業装置を、
    前記産業装置及び前記他の産業装置の少なくとも一方の動作を解析する解析部の解析結果に基づいて、前記産業装置及び前記他の産業装置の少なくとも一方の動作に関する制御指令が入力された場合に、前記制御指令に基づいて、前記複数の変数のうち、書き換え可能な変数として定義された少なくとも1つの変数を書き換えさせる、
    ためのプログラム。
JP2020044722A 2020-03-13 2020-03-13 生産システム、制御方法、及びプログラム Active JP6950772B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020044722A JP6950772B2 (ja) 2020-03-13 2020-03-13 生産システム、制御方法、及びプログラム
EP21161789.9A EP3879366B1 (en) 2020-03-13 2021-03-10 Production system, control method, and program
US17/199,404 US11953882B2 (en) 2020-03-13 2021-03-11 Production system, control method, and information storage medium
CN202110278278.5A CN113391603B (zh) 2020-03-13 2021-03-12 生产系统、控制方法和程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020044722A JP6950772B2 (ja) 2020-03-13 2020-03-13 生産システム、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021144650A JP2021144650A (ja) 2021-09-24
JP6950772B2 true JP6950772B2 (ja) 2021-10-13

Family

ID=74870721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020044722A Active JP6950772B2 (ja) 2020-03-13 2020-03-13 生産システム、制御方法、及びプログラム

Country Status (4)

Country Link
US (1) US11953882B2 (ja)
EP (1) EP3879366B1 (ja)
JP (1) JP6950772B2 (ja)
CN (1) CN113391603B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022211446A1 (de) 2022-10-28 2024-05-08 Zf Friedrichshafen Ag Computerimplementiertes Verfahren und Computerprogrammprodukt zum Generieren von Trainingsdaten für die Inferenz einer Produktionssequenz mittels eines Graphen neuronalen Netzwerks, computerimplementiertes Verfahren und Computerprogrammprodukt zum Trainieren eines Graphen neuronalen Netzwerks auf Inferenz einer Produktionssequenz, computerimplementiertes Verfahren und Computerprogrammprodukt für eine Produktionssequenzerstellung zum Steuern und/oder Regeln eines Produktionssystems gemäß der erstellten Produktionssequenz

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5446648A (en) * 1992-02-28 1995-08-29 Abramovitch; Daniel Y. Determination of open loop responses from closed loop measurements
JP3650649B2 (ja) * 1995-06-16 2005-05-25 松下電器産業株式会社 最適化装置
JP4570891B2 (ja) * 2004-03-30 2010-10-27 ルネサスエレクトロニクス株式会社 記憶装置
JP5192476B2 (ja) * 2009-10-22 2013-05-08 株式会社日立製作所 作業支援システム、作業支援方法、および作業支援プログラム
JP4817084B2 (ja) * 2010-03-30 2011-11-16 株式会社安川電機 モータ駆動システム及びモータ制御装置
WO2012036905A1 (en) * 2010-09-16 2012-03-22 Apple Inc. Multi-ported memory controller with ports associated with traffic classes
US10459418B2 (en) * 2013-09-04 2019-10-29 Fisher-Rosemount Systems, Inc. Technology for assessing and presenting field device commissioning information associated with a process plant
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
EP3101497B1 (en) * 2014-03-14 2020-02-26 Omron Corporation Control system
CN205539996U (zh) * 2015-12-12 2016-08-31 重庆川仪自动化股份有限公司 控制器、i/o通信总线和通信模块冗余的控制系统
JP2017199077A (ja) 2016-04-25 2017-11-02 ファナック株式会社 複数台の産業機械を有する生産システムの動作を最適化するセルコントローラ
CN109313415B (zh) * 2016-07-05 2022-08-09 株式会社安川电机 产业机器控制装置的参数编辑装置、产业机器控制系统、产业机器控制系统的制造方法以及存储介质
JP6683137B2 (ja) 2017-01-11 2020-04-15 三菱電機株式会社 産業用コントローラシステム
KR20180110482A (ko) * 2017-03-29 2018-10-10 에스케이하이닉스 주식회사 메모리 테스트 시스템 및 방법
US10466674B2 (en) * 2017-04-24 2019-11-05 Mitsubishi Electric Corporation Programmable logic controller system, and engineering tool computer program product
CN108198582B (zh) * 2017-12-28 2021-11-12 湖南国科微电子股份有限公司 一种NAND Flash控制方法、装置及SSD
JP6954190B2 (ja) 2018-03-12 2021-10-27 オムロン株式会社 制御システム、コントローラ、および制御方法

Also Published As

Publication number Publication date
EP3879366B1 (en) 2023-10-11
CN113391603B (zh) 2024-06-18
US20210286340A1 (en) 2021-09-16
JP2021144650A (ja) 2021-09-24
EP3879366A2 (en) 2021-09-15
CN113391603A (zh) 2021-09-14
US11953882B2 (en) 2024-04-09
EP3879366A3 (en) 2021-11-17

Similar Documents

Publication Publication Date Title
US20140018939A1 (en) Control device and system program
JP2019109580A (ja) 産業用制御システムとその支援装置、制御支援方法およびプログラム
JP6950772B2 (ja) 生産システム、制御方法、及びプログラム
JP2024503168A (ja) パラレルロボットのマルチスレッドコントローラ
JP6849029B2 (ja) データ収集システム、データ収集方法、及びプログラム
JP6972052B2 (ja) 通信システム、通信方法、及びプログラム
EP3933592A1 (en) Production system, host control device, control device, communication method, and program
JP7147805B2 (ja) 生産システム、データ送信方法、及びプログラム
US11340590B2 (en) Data collection system, data collection method, and information storage medium
CN111586087B (zh) 通信系统、通信方法和程序
JPWO2020178913A1 (ja) 検査システム
US12085904B2 (en) Engineering device, engineering method, and information storage medium
JP7147807B2 (ja) エンジニアリング装置、上位制御装置、エンジニアリング方法、処理実行方法、及びプログラム
US20210286343A1 (en) Production system, data transmission method, and information storage medium
JP2021179702A (ja) データ処理装置、方法、コンピュータプログラム、及び、記録媒体
JP7412119B2 (ja) データ活用システム
JP2022009933A (ja) 通信システム、通信方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210714

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210906

R150 Certificate of patent or registration of utility model

Ref document number: 6950772

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150