JP2018037021A - 制御装置および制御システム - Google Patents

制御装置および制御システム Download PDF

Info

Publication number
JP2018037021A
JP2018037021A JP2016172042A JP2016172042A JP2018037021A JP 2018037021 A JP2018037021 A JP 2018037021A JP 2016172042 A JP2016172042 A JP 2016172042A JP 2016172042 A JP2016172042 A JP 2016172042A JP 2018037021 A JP2018037021 A JP 2018037021A
Authority
JP
Japan
Prior art keywords
parameter set
command value
arithmetic circuit
control device
calculated
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.)
Pending
Application number
JP2016172042A
Other languages
English (en)
Inventor
哲司 若年
Tetsuji Wakatoshi
哲司 若年
太田 政則
Masanori Ota
政則 太田
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2016172042A priority Critical patent/JP2018037021A/ja
Priority to EP17185881.4A priority patent/EP3291037B1/en
Priority to CN201710695042.5A priority patent/CN107809189A/zh
Priority to US15/678,459 priority patent/US20180065244A1/en
Publication of JP2018037021A publication Critical patent/JP2018037021A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/12Programme-controlled manipulators characterised by positioning means for manipulator elements electric
    • B25J9/126Rotary actuators
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • 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/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4148Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by using several processors for different functions, distributed (real-time) systems
    • 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], computer integrated manufacturing [CIM]
    • G05B19/41865Total 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], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • 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/16Plc to applications
    • 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/31001CIM, total factory 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/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33081Parallel computing, pipeline
    • 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/33Director till display
    • G05B2219/33104Tasks, functions are distributed over different cpu
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43009Acceleration deceleration for each block of data, segment
    • 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/43Speed, acceleration, deceleration control ADC
    • G05B2219/43167Distributed motion control

Abstract

【課題】制御精度を高めるために制御周期を可能な限り短くしたいという要望がある。【解決手段】制御装置は、モータを駆動するモータドライバに対して指令値を出力するためのインターフェイスと、モータドライバが駆動するモータの挙動を指定するための1または複数の指令を格納する記憶部と、第1演算回路および第2演算回路を含む処理部とを含む。第1演算回路は、記憶部に格納されている1または複数の指令を逐次解釈して指令値の算出に関する関数を定義するパラメータセットを逐次算出する第1処理を実行する。第2演算回路は、第1処理の実行とは独立して、逐次算出されるパラメータセットに基づいて指令値を予め定められた制御周期ごとに算出する第2処理を実行する。【選択図】図6

Description

本技術は、制御装置および制御システムに関する。
FA(Factory Automation)分野においては、設備や機械を動かすために多くのモータが利用されている。典型的には、PLC(プログラマブルコントローラ)などの制御装置を用いて、各種センサでの検出信号と連動させて、各モータの回転速度などを制御する。
例えば、特開2011−035664号公報(特許文献1)は、単一のコントローラがサーボドライバやインバータなどとネットワーク接続されて制御を行う構成を開示する。
特開2011−035664号公報
例えば、各種産業用ロボットを制御するためには、各要素を駆動するモータに対して精緻な指令を与える必要がある。典型的には、モータによって駆動されるアームなどが予め指定された軌道に沿って移動するように、所定の制御周期(数100μsec〜数10msec)ごとに指令を更新する必要がある。この指令の制御周期が短いほど制御精度が高まるので、制御周期を可能な限り短くしたいという要望がある。
本発明のある実施の形態に係る制御装置は、モータを駆動するモータドライバに対して指令値を出力するためのインターフェイスと、モータドライバが駆動するモータの挙動を指定するための1または複数の指令を格納する記憶部と、第1演算回路および第2演算回路を含む処理部とを含む。第1演算回路は、記憶部に格納されている1または複数の指令を逐次解釈して指令値の算出に関する関数を定義するパラメータセットを逐次算出する第1処理を実行する。第2演算回路は、第1処理の実行とは独立して、逐次算出されるパラメータセットに基づいて指令値を予め定められた制御周期ごとに算出する第2処理を実行する。
好ましくは、制御装置は、第1演算回路および第2演算回路からアクセス可能な共有メモリをさらに含む。第1演算回路は、逐次算出されるパラメータセットを共有メモリに書込む。第2演算回路は、共有メモリからパラメータセットを逐次読出す。
好ましくは、第1演算回路は、パラメータセットを算出すると、当該算出されたパラメータセットに関連付けて、有効であることを示す状態情報を共有メモリに書込む。第2演算回路は、パラメータセットに基づく指令値の算出が完了すると、当該パラメータセットに関連付けられる状態情報を無効であることを示す値に変更する。
好ましくは、第1演算回路は、関連付けられた状態情報が無効であることを示すパラメータセットを削除した上で、新たに算出されたパラメータセットを共有メモリに書込む。
好ましくは、パラメータセットは、指令値を算出すべき回数を示すパラメータを含む。第2演算回路は、第1処理により算出されたパラメータセットに基づく指令値の算出が指定された回数だけ実行されると、第1処理により次に算出されたパラメータセットに基づく指令値の算出を開始する。
本発明の別の実施の形態に係る制御システムは、モータを駆動するモータドライバと、モータドライバに対して指令値を出力する制御装置とを含む。制御装置は、モータドライバが駆動するモータの挙動を指定するための1または複数の指令を格納する記憶部と、第1演算回路および第2演算回路を含む処理部とを含む。第1演算回路は、記憶部に格納されている1または複数の指令を逐次解釈して指令値の算出に関する関数を定義するパラメータセットを逐次算出する第1処理を実行する。第2演算回路は、第1処理の実行とは独立して、逐次算出されるパラメータセットに基づいて指令値を予め定められた制御周期ごとに算出する第2処理を実行する。
本発明の実施の形態によれば、モータへ与える指令の制御周期を短くできる。
本実施の形態に係る制御システムの構成例を示す模式図である。 本実施の形態に係る制御装置の構成例を示す模式図である。 本実施の形態に係る制御装置で実行されるモーションプログラムの一例を説明するための図である。 図3(A)に示される目標軌道を実現するための、指令値の時間変化の一例を示すタイムチャートである。 モーションプログラムによるモーション制御のインタプリタ方式での実行に関する関連技術を説明するための図である。 本実施の形態に係る制御装置による、モーションプログラムによるモーション制御のインタプリタ方式での実行方法を説明するための図である。 本実施の形態に係るインタプリタ処理により算出されるパラメータセットの一例を示す図である。 本実施の形態に係る制御装置における指令値演算処理の処理内容を説明するための模式図である。 本実施の形態に係る制御装置におけるインタプリタ処理と指令値演算処理との連係方法を説明するための模式図である。 本実施の形態に係る制御装置で実行される処理手順を示すフローチャートである。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<A.制御システムの構成例>
まず、本実施の形態に係る制御システムの構成例について説明する。図1は、本実施の形態に係る制御システム1の構成例を示す模式図である。図1を参照して、制御システム1は、モータ250−1,250−2,…と、モータ250−1,250−2,…を駆動するモータドライバ200−1,200−2,…とを含む。モータドライバ200−1,200−2,…は、フィールドネットワーク2を介して制御装置100と接続されており、制御装置100からの指令に従って、モータ250−1,250−2,…を駆動する。すなわち、制御装置100は、モータドライバ200−1,200−2,…に対して指令値を出力する。以下、モータ250−1,250−2,…およびモータドライバ200−1,200−2,…をそれぞれ「モータ250」および「モータドライバ200」とも総称する。
モータ250は、制御装置100が制御対象とする設備や機械に組込まれて、設備や機械を動かす駆動源となる。モータ250の種類などは特に限定されることなく、一般的な駆動源の意味での「モータ」を包含する。例えば、モータ250として、ACモータ、DCモータ、ステッピングモータ、リニアモータなどの公知のモータが採用される。
モータドライバ200は、駆動するモータ250の種類に応じた構成のものが採用される。例えば、インバータ、サーボドライバ、サーボアンプなどを用いることができる。
制御装置100としては、PLC(プログラマブルコントローラ)を想定するが、これに限らず任意のコンピュータを用いることができる。例えば、ロボットコントローラやモーションコントローラなどの名称で称されるコンピュータを用いてもよい。
<B.制御装置の構成例>
次に、本実施の形態に係る制御システム1の主要部である制御装置100の構成例について説明する。図2は、本実施の形態に係る制御装置100の構成例を示す模式図である。
図2を参照して、制御装置100は、典型的には、汎用的なアーキテクチャに従って構成されたコンピュータであり、プロセッサがプログラムを実行することで、必要な処理および機能を実現する。より具体的には、制御装置100は、プロセッサ110と、メインメモリ120と、二次記憶装置130と、フィールドネットワークインターフェイス122と、ネットワークインターフェイス124と、USB(Universal Serial Bus)インターフェイス126と、メモリリーダライタ128とを含む。これらのコンポーネントは、バス118を介して接続されている。
プロセッサ110は、少なくとも第1演算回路および第2演算回路を含む処理部に相当し、プログラムを並列的に実行可能に構成される。一例として、プロセッサ110は、マルチコアプロセッサから構成される。より具体的には、プロセッサ110は、第1コア111と、第2コア112と、共有キャッシュ116とを含む。第1コア111および第2コア112は、それぞれ第1キャッシュ113および第2キャッシュ114を内蔵している。
図2には、2つのコアを含むプロセッサを例示するが、より多くのコアを含むプロセッサを採用してもよいし、あるいは、単一のコアからなるプロセッサを複数用いる構成(すなわち、マルチプロセッサ)を採用してもよい。本実施の形態に係る制御装置100においては、プログラムを並列的に実行可能な構成であれば、コアの数およびプロセッサの数は任意に設計できる。また、プロセッサ110としては、CPU(Central Processing Unit)の他、GPU(Graphics Processing Unit)などの並列処理に特化したものを採用してもよい。
メインメモリ120は、プロセッサ110によって実行されるプログラムの全部または一部のコードやワークデータなどを一時的に保持する記憶装置である。メインメモリ120は、例えば、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などで構成される。
二次記憶装置130は、プロセッサ110で実行されるプログラム、処理対象のデータ、設定パラメータなどを不揮発的に保持する記憶装置である。二次記憶装置130は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)などで構成される。典型的には、二次記憶装置130は、制御装置100の基本的な機能を提供するためのシステムプログラム132と、制御装置100の制御対象に応じて任意の設計されるユーザプログラム134とを格納する。ユーザプログラム134としては、典型的には、シーケンスロジックを実現するためのシーケンスプログラム136と、ロボットの軌道などを制御するためのモーションプログラム138とを含む。ユーザプログラム134については、任意の言語で記述することができる。つまり、二次記憶装置130は、モータドライバ200が駆動するモータ250の挙動を指定するための1または複数の指令(モーションプログラム138)を格納する記憶部に相当する。
フィールドネットワークインターフェイス122は、制御装置100とモータドライバ200とを接続するフィールドネットワーク2上でのデータの遣り取りを責務とするコントローラである。フィールドネットワークインターフェイス122は、モータドライバ200に対して出力値を出力するためのインターフェイスに相当する。フィールドネットワーク2としては、データの到達時間が保証される、定周期通信を行うネットワークが採用されることが好ましい。このような定周期通信を行うネットワークとしては、EtherCAT(登録商標)、EtherNet/IP(登録商標)、DeviceNet(登録商標)、CompoNet(登録商標)などが知られている。
ネットワークインターフェイス124は、上位のサーバ装置やHMI(Human Machine Interface)装置などとの間でのデータの遣り取りを責務とするコントローラである。上位のサーバ装置やHMI装置などとの間でのデータの遣り取りには、イーサネット(登録商標)などのパケットネットワークが用いられる。
USBインターフェイス126は、サポート装置などとの間でのデータの遣り取りを責務とするコントローラである。USBインターフェイス126は、USBなどのシリアル通信によりデータを遣り取りする。
メモリリーダライタ128は、SDカードなどの持ち運び可能な記憶媒体との間で、データの読取り/書込みを行うインターフェイスデバイスである。記憶媒体を介して、制御装置100で実行されるユーザプログラム134がインストールされてもよいし、制御装置100で収集されるデータを記憶媒体に書込むようにしてもよい。
<C.モーションプログラムによるモーション制御>
次に、本実施の形態に係る制御装置100で実行されるユーザプログラム134(モーションプログラム138)によるモーション制御について説明する。本明細書において、「モーション制御」は、モータによって駆動される部位が予め指定された挙動をとるように、モータ250を駆動するモータドライバ200に対して逐次指令を与える制御を包含するものである。
モータドライバ200に対して出力される指令値(物理量または物理量に相当する操作量)は、目標とする挙動に応じて適宜選択されるが、例えば、位置指令値、速度指令値、加速度指令値、加加速度指令値などが想定される。以下では、典型例として、モータの速度指令値が指令値として用いられる場合について説明する。
図3は、本実施の形態に係る制御装置100で実行されるモーションプログラム138の一例を説明するための図である。図3(A)には、目標軌道の一例が示されている。図3(A)には、2つのモータ250がそれぞれX軸およびY軸を駆動する構成における軌道を示すものであり、一例として、地点P000から出発して、地点P001および地点P002を経由した後に地点P003へ到着する軌道が目標とされている。
モーションプログラム138においては、地点P000から地点P001までの軌道N001、地点P001から地点P002までの軌道N002、および、地点P002から地点P003までの軌道N003の合計3つの軌道が各々独立したモーション指令として指定される。
図3(B)には、図3(A)に示される目標軌道を実現するためのモーションプログラム138の一例が示されている。図3(B)を参照して、モーションプログラム138の各行は、図3(A)に示す3つの軌道N001,N002,N003の各々に対応する。すなわち、モーションプログラム138において、1行分が1つのモーション指令を意味する。
一例として、図3(B)に示すモーションプログラム138においては、N001,N002,N003などのラベルに対応付けて、「補間種別」、「目標終点」、「目標速度」が指定される。「補間種別」として、図3(B)に示す例では、「直線補間」を示す「G01」が指定されている。「目標終点」として、X座標およびY座標の組(例えば、「X100Y100」)が指定されている。「目標速度」として、図3(B)に示す例では、「F50」などが指定されている。
なお、図3(B)に示すモーションプログラム138による指定に加えて、加速度、加速度パターン、速度上下限などの設定値がシステムコンフィギュレーションとして予め指定されているとする。
図4は、図3(A)に示される目標軌道を実現するための、指令値の時間変化の一例を示すタイムチャートである。図4に示すように、目標軌道がX−Y平面で定義されるので、X軸およびY軸に関連付けられた2つのモータに対してそれぞれ指令値を与える必要がある。また、静止状態から目標速度までは指定された加速度で加速する必要がある。したがって、図4のタイムチャートに示すように、1つのモーション指令であっても、モータドライバに対して出力される指令値は逐次更新される必要がある。この指令値の更新周期が「制御周期」に相当する。なお、図4に示すタイムチャートが示す面積が位置指令値に相当する。
各制御周期での指令値を算出するためには、図3(B)に示すモーションプログラム138に指定される各モーション指令を解釈して、各制御周期での指令値を算出するための関数または演算式を決定しておく必要がある。
モーションプログラム138に指定される各モーション指令に対する構文解析およびコンパイルなどの作業を事前に行って、各制御周期での指令値を算出するための関数を決定しておく方式も想定されるが、本実施の形態に係る制御装置100では、モーションプログラム138に指定される各モーション指令を逐次解釈して、各制御周期での指令値を算出するための関数を決定した上で、各制御周期での指令値を逐次算出する方式を採用する。このような方式を、以下では「インタプリタ方式」とも称す。すなわち、本実施の形態に係る制御装置100は、モーションプログラムによるモーション制御をインタプリタ方式で実行する。
<D.関連技術>
次に、上述したモーションプログラムによるモーション制御のインタプリタ方式での実行に関する関連技術について説明する。
図5は、モーションプログラムによるモーション制御のインタプリタ方式での実行に関する関連技術を説明するための図である。図5を参照して、モーション制御のインタプリタ方式での実行には、モーションプログラム138に指定される各モーション指令を逐次解釈する処理(以下、「インタプリタ処理」とも称す。)P1Aと、指令値を算出する処理(以下、「指令値演算処理」とも称す。)P2Aとが必要である。
モーション指令を逐次解釈するインタプリタ処理P1Aは、ユーザプログラム(モーションプログラム)を実行解釈する処理に相当する。指令値を算出する指令値演算処理P2Aは、アクチュエータを制御する指令値を更新する処理に相当する。
関連技術においては、このような2つの処理を共通のプロセッサ110Aで実行する。2つの処理を共通のプロセッサ110Aで実行するために、各処理には時分割方式によりプロセッサ時間が割り当てられる。すなわち、インタプリタ処理P1と指令値演算処理P2とが交互に実行されることになる。指令値を予め定められた制御周期ごとに安定して更新するために、一般的には、指令値演算処理P2Aについては定周期の割込処理で実行され、バックグラウンドの時間でインタプリタ処理P1Aが実行される。このような関連技術に係るモーション制御のインタプリタ方式での実行によれば、以下のような課題がある。
指令値を算出する指令値演算処理P2Aの処理時間は、モーション指令の内容や実行タイミングなどによって変動するため、インタプリタ処理P1Aに割り当てられるプロセッサ時間がばらつくため、このばらつきを予め推定してモーション制御を設計することは用意ではなかった。
上述のようなプロセッサ時間のばらつきを考慮して安定したモーション制御を実現するために、指令値演算処理P2Aの実行周期、すなわち制御周期を設定する際には、インタプリタ処理P1Aの実行時間に加えて、ある程度の余裕時間を考慮する必要があり、プロセッサのパフォーマンスを100%活用できない。
指令値演算処理P2Aを割込処理で実行するため、インタプリタ処理P1Aおよび指令値演算処理P2Aについての優先度の設定を十分に検討する必要があるとともに、それぞれの処理の演算結果を受け渡しするために、メモリアクセスについての複雑な排他制御を実装する必要がある。このような点を考慮する必要があるため、設計および品質確保に多大な検討時間および検証時間を要する。
本実施の形態に係る制御装置100は、上述のような課題を解決することを一つの目的とする。
<E.並列処理>
次に、本実施の形態に係る制御装置100における、モーションプログラムによるモーション制御のインタプリタ方式での実行方法について説明する。
図6は、本実施の形態に係る制御装置100による、モーションプログラムによるモーション制御のインタプリタ方式での実行方法を説明するための図である。本実施の形態においては、モーションプログラム138に指定される各モーション指令を逐次解釈する処理(インタプリタ処理)P1と、指令値を算出する処理(指令値演算処理)P2とをそれぞれ異なる演算回路(本実施の形態では、プロセッサ110の第1コア111および第2コア112)で互いに独立して実行させる。この際、2つの処理を互いに独立して実行させるために、インタプリタ処理P1による演算結果をパラメータセット150として出力することで、指令値演算処理P2への引き渡しを容易化する。すなわち、インタプリタ処理P1においては、モーションプログラム138をインタプリタ方式で解釈して関数のパラメータセット150に分解する。この分解されたパラメータセット150を用いることで、2つの処理の間で共有されるメインメモリ120へのバッファリングを実現する。なお、パラメータセット150の出力処理、および、パラメータセット150を用いた指令値の算出処理については、後述する。
以下の説明においては、第1コア111および第2コア112からアクセス可能な共有メモリとしてメインメモリ120を用いて、パラメータセット150をバッファリングする構成について例示するが、共有メモリとして、プロセッサ110の共有キャッシュ116を用いてもよい。
このように、本実施の形態においては、インタプリタ処理P1を指令値の算出に関する関数を定義するパラメータセット150を出力してメインメモリ120に書込む処理に単純化するとともに、指令値演算処理P2をメインメモリ120からパラメータセット150を読出して関数に従って指令値を更新する処理に単純化する。つまり、インタプリタ処理P1は、主としてメインメモリ120に対するデータの書込みのみを行い、指令値演算処理P2は、主としてメインメモリ120からデータの読出しのみを行うように、メインメモリ120へのアクセス競合の可能性をほぼゼロにした上で、インタプリタ処理P1および指令値演算処理P2を、メインメモリ120を共有するそれぞれ異なるコアに割り当てる。このような互いに独立した処理を採用することで、互いの処理が干渉し得ることにより生じる課題を解消できる。
すなわち、第1コア111(第1演算回路)は、二次記憶装置130に格納されている1または複数の指令(モーションプログラム138)を逐次解釈して指令値の算出に関する関数を定義するパラメータセット150を逐次算出するインタプリタ処理P1を実行し、第2コア112(第2演算回路)は、インタプリタ処理P1の実行とは独立して、逐次算出されるパラメータセット150に基づいて指令値を予め定められた制御周期ごとに算出する指令値演算処理P2を実行する。
このとき、第1コア111(第1演算回路)は、逐次算出されるパラメータセットを共有メモリとして機能するメインメモリ120に書込み、第2コア112(第2演算回路)は、共有メモリとして機能するメインメモリ120からパラメータセット150を逐次読出す。
上述のような構成を採用することで、各コアによるメモリアクセスの競合がほぼ発生しないので、メモリアクセスについての複雑な排他制御を実装する必要がない。また、各コアに割り当てられる処理に対して、担当するコアのプロセッサ時間をすべて使用することができるので、プロセッサのパフォーマンスを100%活用できる。
予め定められた制御周期ごとに指令値を更新する指令値演算処理P2について、各制御周期における空き時間をモニタリングすることで、その空き時間に応じて制御周期の短縮を図ることができ、その結果、モーション制御の制御精度を容易に最適化できる。
各処理の実行がコアごとに独立しているため、各コアで実行されるプログラムの設計を単純化できるので、設計や品質確保に必要な工数が低減できる。
<F.インタプリタ処理および指令値算出処理>
上述のインタプリタ処理により算出されるパラメータセット150およびパラメータセット150を用いた指令値演算処理について説明する。
図7は、本実施の形態に係るインタプリタ処理により算出されるパラメータセット150の一例を示す図である。パラメータセット150は、指令値の時間的変化を示す関数を定義する1または複数のパラメータを含むものであり、一例として、図7(A)に示すような複数のパラメータから構成される。図7(A)に示すパラメータセット150は、図7(B)に示すような指令値の時間変化(一例として、速度パターン)を示す関数を定義する。
インタプリタ処理では、モーションプログラム138を構文解析した後、指定された目標位置および/または現在位置から移動量を算出し、指定された速度および/または加速度から加速時間、減速時間、等速時間を算出する。このような処理によって得られたパラメータセット150の一例が、図7(A)に示される。
より具体的には、パラメータセット150は、コントロールフラグ151と、加速時間152と、加速関数種別153と、減速時間154と、減速関数種別155と、等速時間156と、各軸移動量157と、各軸速度158と、補間移動量159とを含む。このようなパラメータセット150がモーションプログラム138に含まれるモーション指令ごとに算出される。
加速時間152は、図7(B)に示す速度パターンの加速区間の長さを示し、制御周期を基準とした回数で定義される。加速関数種別153は、図7(B)に示す速度パターンの加速区間についての時間的変化の種別を示し、1次曲線や多次曲線などを指定できる。同様に、減速時間154は、図7(B)に示す速度パターンの減速区間の長さを示し、減速関数種別155は、図7(B)に示す速度パターンの減速区間についての時間的変化の種別を示す。等速時間156は、図7(B)に示す速度パターンの等速区間の長さを示す。
加速時間152、減速時間154および等速時間156の合計が速度パターン全体の時間長さを示し、制御周期を基準とした回数で定義される。つまり、パラメータセット150は、指令値を算出すべき回数を示すパラメータとして、加速時間152、減速時間154および等速時間156を含む。そして、パラメータセット150に基づく指令値の算出が指定された回数だけ実行されると、当該パラメータセット150に基づく指令値の算出処理は終了し、次に算出されたパラメータセット150に基づく指令値の算出が開始される。
各軸移動量157は、軸ごとの移動量を示し、各軸速度158は、軸ごとの速度を示す。補間移動量159は、複数軸の移動量を合成した値を示す。
このような複数のパラメータを用いることで、各モーション指令により定義される速度パターンなどを示す関数を構成することができる。
図8は、本実施の形態に係る制御装置100における指令値演算処理の処理内容を説明するための模式図である。図8を参照して、指令値演算処理P2においては、インタプリタ処理P1により算出されたパラメータセット150が入力されることで、指令値を出力する関数を構成する関数モジュール160が用いられる。関数モジュール160に対してパラメータセット150が入力されるとともに、各制御周期における指令値(t)が逐次算出される。指令値を逐次算出するにあたって、前回の制御周期での指令値(t−1)が用いられる。そして、対象のパラメータセット150により定義される指令値の逐次出力が完了すると、当該パラメータセット150のコントロールフラグ151の値を「有効」から「無効」に変更する。そして、次のパラメータセット150が読出される。
図7(A)のパラメータセット150に含まれるコントロールフラグ151は、インタプリタ処理によるパラメータセットの算出、および、指令値演算処理の実行完了などを管理するためのフラグである。インタプリタ処理によりパラメータセット150が新たにメインメモリ120へ書込まれると、コントロールフラグ151の値は「有効」に設定される。そして、メインメモリ120に書込まれたパラメータセット150に対する指令値演算処理の実行が完了すると、コントロールフラグ151の値は「無効」にセットされる。インタプリタ処理において、コントロールフラグ151の値が「無効」にセットされているパラメータセット150については、処理済で不要であると判断できるので、そのパラメータセット150はメインメモリ120から削除されて、必要に応じて新たなパラメータセット150が算出される。
図9は、本実施の形態に係る制御装置100におけるインタプリタ処理と指令値演算処理との連係方法を説明するための模式図である。図9(A)を参照して、インタプリタ処理P1によって、モーションプログラム138に含まれる2つのモーション指令からパラメータセット150−1およびパラメータセット150−2が逐次算出されたとする。算出直後において、パラメータセット150のコントロールフラグ151の値は「有効」に設定される。つまり、第1コア111(第1演算回路)は、パラメータセット150を算出すると、コントロールフラグ151の値を「有効」を示す値に設定することで、算出されたパラメータセット150に関連付けて、有効であることを示す状態情報をメインメモリ120に書込む。
指令値演算処理P2において、先に算出されたパラメータセット150−1に基づく指令値の逐次更新が実行される。指定されたn個分の指令値(指令値1(1),指令値1(2),…,指令値1(n))の算出が完了すると、パラメータセット150−1のコントロールフラグ151の値は「有効」から「無効」に変更される。つまり、第2コア112(第2演算回路)は、パラメータセット150に基づく指令値の算出が完了すると、コントロールフラグ151の値を「無効」を示す値に変更することで、パラメータセット150に関連付けられる状態情報を無効であることを示す値に変更する。
すると、図9(B)に示すように、コントロールフラグ151の値が「無効」に変更されたパラメータセット150−1は、インタプリタ処理P1によってメインメモリ120から削除される。そして、図9(C)に示すように、インタプリタ処理P1によって、モーションプログラム138に含まれる新たな指令からパラメータセット150−3が新規作成されて、メインメモリ120へ書込まれる。
一方、指令値演算処理P2においては、パラメータセット150−1の次に位置するパラメータセット150−2に基づく指令値の逐次更新が実行される。
このように、第1コア111(第1演算回路)は、関連付けられた状態情報が無効であることを示すパラメータセット150(つまり、コントロールフラグの値が「無効」に設定されているもの)を削除した上で、新たに算出されたパラメータセット150をメインメモリ120に書込む。インタプリタ処理P1および指令値演算処理P2での処理は、モーションプログラム138に含まれるすべてのモーション指令についての処理が完了するまで繰返される。
なお、説明の便宜上、図9(B)に示すパラメータセット150−1の削除と、図9(C)に示すパラメータセット150−3の新規作成とをそれぞれ別々の処理として説明したが、これらを一度に行ってもよい。すなわち、新規作成したパラメータセット150−3で古いパラメータセット150−1を上書きするようにしてもよい。
<G.処理手順>
次に、本実施の形態に係る制御装置100の第1コア111および第2コア112にてそれぞれ実行される処理手順について説明する。
図10は、本実施の形態に係る制御装置100で実行される処理手順を示すフローチャートである。図10に示す各ステップは、第1コア111および第2コア112の各々がプログラムを実行することで実現される。第1コア111では、インタプリタ処理P1が実行される。第2コア112では、指令値演算処理P2が実行される。
図10を参照して、第1コア111は、モーションプログラム138の実行が指示されると(ステップS100)、モーションプログラム138に含まれるモーション指令を解釈して、パラメータセット150を算出し(ステップS102)、コントロールフラグ151の値を「有効」に設定した(ステップS104)上で、メインメモリ120に書込む(ステップS106)。
続いて、第1コア111は、モーションプログラム138に含まれるすべてのモーション指令の解釈が終了したか否かを判断する(ステップS108)。モーションプログラム138に含まれるモーション指令のうち解釈が終了していないものがある場合(ステップS108においてNOの場合)、第1コア111は、メインメモリ120に新たなパラメータセット150を出力する領域が存在しているか否かを判断する(ステップS110)。メインメモリ120に新たなパラメータセット150を出力する領域が存在している場合(ステップS110においてYESの場合)には、第1コア111は、モーションプログラム138に含まれる未処理のモーション指令を対象に設定し(ステップS112)、パラメータセット150の算出および出力を行う。つまり、ステップS102以下の処理が繰返される。
モーションプログラム138に含まれるすべてのモーション指令の解釈が終了している場合(ステップS108においてYESの場合)、または、メインメモリ120に新たなパラメータセット150を出力する領域が存在していない場合(ステップS110においてNOの場合)には、第1コア111は、コントロールフラグ151の値が「無効」に設定されているパラメータセット150が存在するか否かを判断する(ステップS114)。
コントロールフラグ151の値が「無効」に設定されているパラメータセット150が存在すれば(ステップS114においてYESの場合)、第1コア111は、当該コントロールフラグ151の値が「無効」に設定されているパラメータセット150を削除する(ステップS116)。
ステップS116の実行後、または、コントロールフラグ151の値が「無効」に設定されているパラメータセット150が存在しない場合(ステップS114においてNOの場合)、第1コア111は、パラメータセット150がメインメモリ120に存在しているか否かを判断する(ステップS118)。パラメータセット150がメインメモリ120に存在していれば(ステップS118においてYESの場合)、ステップS108以下の処理が繰返される。
パラメータセット150がメインメモリ120に存在していなければ(ステップS118においてNOの場合)、処理は終了する。
一方、第2コア112は、モーションプログラム138の実行が指示されると(ステップS200)、メインメモリ120から最も先に算出されたパラメータセット150を読出し(ステップS202)、当該読出したパラメータセット150に基づいて構成される関数に従って指令値を算出する(ステップS204)。第2コア112は、読出したパラメータセット150に指定された回数だけ指令値が算出されたか否かを判断する(ステップS206)。対象のパラメータセット150に指定された回数だけ指令値が算出されていなければ(ステップS206においてNOの場合)、ステップS204以下の処理が繰返される。
対象のパラメータセット150に指定された回数だけ指令値が算出されていれば(ステップS206においてYESの場合)、第2コア112は、対象のパラメータセット150に含まれるコントロールフラグ151の値を「無効」に変更し(ステップS208)、コントロールフラグ151の値が「有効」に設定されているパラメータセット150がメインメモリ120に存在しているか否かを判断する(ステップS210)。
コントロールフラグ151の値が「有効」に設定されているパラメータセット150がメインメモリ120に存在していれば(ステップS210においてYESの場合)、第2コア112は、コントロールフラグ151の値が「有効」に設定されているパラメータセット150のうち、最も先に算出されたパラメータセット150をメインメモリ120から読出し(ステップS212)、ステップS204以下の処理を繰返す。
コントロールフラグ151の値が「有効」に設定されているパラメータセット150がメインメモリ120に存在していなければ(ステップS210においてNOの場合)、処理は終了する。
<H.利点>
本実施の形態によれば、複数のモーション指令を含むモーションプログラムをインタプリタ方式で解釈してモーション制御を実行する構成が提供される。具体的には、モーションプログラム138に指定される各モーション指令を逐次解釈する処理(インタプリタ処理)と、指令値を算出する処理(指令値演算処理)とをそれぞれ異なる演算回路で互いに独立して実行させる。この際、2つの処理を互いに独立して実行させるために、インタプリタ処理による演算結果をパラメータセットとして出力することで、指令値演算処理への引き渡しを容易化する。このように、インタプリタ方式で解釈してモーション制御を実行する際に必要な処理を互いに独立して実行可能な2つの処理に分解した上で、各処理を互いに異なる演算回路で実行することで、モーションプログラムの演算量に影響を受けることなく、指定された制御周期での指令値の更新を実現できる。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 制御システム、2 フィールドネットワーク、100 制御装置、110,110A プロセッサ、111 第1コア、112 第2コア、113 第1キャッシュ、114 第2キャッシュ、116 共有キャッシュ、118 バス、120 メインメモリ、122 フィールドネットワークインターフェイス、124 ネットワークインターフェイス、126 USBインターフェイス、128 メモリリーダライタ、130 二次記憶装置、132 システムプログラム、134 ユーザプログラム、136 シーケンスプログラム、138 モーションプログラム、150 パラメータセット、151 コントロールフラグ、152 加速時間、153 加速関数種別、154 減速時間、155 減速関数種別、156 等速時間、157 軸移動量、158 軸速度、159 補間移動量、160 関数モジュール、200 モータドライバ、250 モータ、P1A,P1 インタプリタ処理、P2,P2A 指令値演算処理。

Claims (6)

  1. モータを駆動するモータドライバに対して指令値を出力するためのインターフェイスと、
    前記モータドライバが駆動するモータの挙動を指定するための1または複数の指令を格納する記憶部と、
    第1演算回路および第2演算回路を含む処理部とを備え、
    前記第1演算回路は、前記記憶部に格納されている前記1または複数の指令を逐次解釈して前記指令値の算出に関する関数を定義するパラメータセットを逐次算出する第1処理を実行し、
    前記第2演算回路は、前記第1処理の実行とは独立して、前記逐次算出されるパラメータセットに基づいて前記指令値を予め定められた制御周期ごとに算出する第2処理を実行する、制御装置。
  2. 前記第1演算回路および前記第2演算回路からアクセス可能な共有メモリをさらに備え、
    前記第1演算回路は、前記逐次算出されるパラメータセットを前記共有メモリに書込み、
    前記第2演算回路は、前記共有メモリからパラメータセットを逐次読出す、請求項1に記載の制御装置。
  3. 前記第1演算回路は、前記パラメータセットを算出すると、当該算出されたパラメータセットに関連付けて、有効であることを示す状態情報を前記共有メモリに書込み、
    前記第2演算回路は、前記パラメータセットに基づく前記指令値の算出が完了すると、当該パラメータセットに関連付けられる状態情報を無効であることを示す値に変更する、請求項2に記載の制御装置。
  4. 前記第1演算回路は、関連付けられた状態情報が無効であることを示すパラメータセットを削除した上で、新たに算出されたパラメータセットを前記共有メモリに書込む、請求項3に記載の制御装置。
  5. 前記パラメータセットは、前記指令値を算出すべき回数を示すパラメータを含み、
    前記第2演算回路は、前記第1処理により算出されたパラメータセットに基づく前記指令値の算出が指定された回数だけ実行されると、前記第1処理により次に算出されたパラメータセットに基づく前記指令値の算出を開始する、請求項1〜4のいずれか1項に記載の制御装置。
  6. モータを駆動するモータドライバと、
    前記モータドライバに対して指令値を出力する制御装置とを備え、
    前記制御装置は、
    前記モータドライバが駆動するモータの挙動を指定するための1または複数の指令を格納する記憶部と、
    第1演算回路および第2演算回路を含む処理部とを備え、
    前記第1演算回路は、前記記憶部に格納されている前記1または複数の指令を逐次解釈して前記指令値の算出に関する関数を定義するパラメータセットを逐次算出する第1処理を実行し、
    前記第2演算回路は、前記第1処理の実行とは独立して、前記逐次算出されるパラメータセットに基づいて前記指令値を予め定められた制御周期ごとに算出する第2処理を実行する、制御システム。
JP2016172042A 2016-09-02 2016-09-02 制御装置および制御システム Pending JP2018037021A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016172042A JP2018037021A (ja) 2016-09-02 2016-09-02 制御装置および制御システム
EP17185881.4A EP3291037B1 (en) 2016-09-02 2017-08-11 Control device and control system
CN201710695042.5A CN107809189A (zh) 2016-09-02 2017-08-15 控制装置以及控制系统
US15/678,459 US20180065244A1 (en) 2016-09-02 2017-08-16 Control device and control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016172042A JP2018037021A (ja) 2016-09-02 2016-09-02 制御装置および制御システム

Publications (1)

Publication Number Publication Date
JP2018037021A true JP2018037021A (ja) 2018-03-08

Family

ID=59772355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016172042A Pending JP2018037021A (ja) 2016-09-02 2016-09-02 制御装置および制御システム

Country Status (4)

Country Link
US (1) US20180065244A1 (ja)
EP (1) EP3291037B1 (ja)
JP (1) JP2018037021A (ja)
CN (1) CN107809189A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019208029A1 (ja) * 2018-04-23 2019-10-31 オムロン株式会社 制御装置、システムおよび制御方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6859675B2 (ja) * 2016-11-21 2021-04-14 セイコーエプソン株式会社 ロボット、及びロボットシステム
JP6851837B2 (ja) * 2017-01-20 2021-03-31 キヤノン株式会社 制御装置、ロボットシステム、制御方法、プログラム、記録媒体及び物品の製造方法
CN109240191B (zh) * 2018-04-25 2020-04-03 实时侠智能控制技术有限公司 集成运动控制和电机控制的控制器和控制系统
CN108762197B (zh) * 2018-06-14 2019-12-31 杭州电子科技大学 基于plc的运动控制方法和运动控制器
CN111687830A (zh) * 2019-03-15 2020-09-22 广州市韦德电气机械有限公司 一种机器人驱控一体机多轴总线链接方法及其驱动系统
JP2020203349A (ja) * 2019-06-18 2020-12-24 株式会社ダイヘン ロボット制御装置、及びロボット制御システム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63196905A (ja) * 1987-02-12 1988-08-15 Yaskawa Electric Mfg Co Ltd 産業用ロボツトの補間演算方法
JPH04364550A (ja) * 1991-06-11 1992-12-16 Oki Electric Ind Co Ltd メモリ管理方法
JPH06190749A (ja) * 1992-12-25 1994-07-12 Fujitsu Ltd 多関節ロボットアームの制御装置
JPH07210233A (ja) * 1994-01-27 1995-08-11 Matsushita Electric Ind Co Ltd ロボットの軌道の補間方法と補間装置
JPH09244725A (ja) * 1996-03-05 1997-09-19 Sony Corp 軌道補間装置及びその方法並びに制御装置
US20040122557A1 (en) * 2002-12-19 2004-06-24 National Instruments Corporation Parallel trajectory generation, interpolation, and control in a motion control application
JP2007310861A (ja) * 2006-04-18 2007-11-29 Hitachi Ltd ストレージシステム及びその制御方法
JP2012096338A (ja) * 2010-11-05 2012-05-24 Canon Inc ロボット制御装置
WO2012114435A1 (ja) * 2011-02-21 2012-08-30 三菱電機株式会社 電動機制御システムおよび通信方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006187826A (ja) * 2005-01-05 2006-07-20 Kawasaki Heavy Ind Ltd ロボットコントローラ
JP5348489B2 (ja) 2009-07-31 2013-11-20 オムロン株式会社 コントローラ

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63196905A (ja) * 1987-02-12 1988-08-15 Yaskawa Electric Mfg Co Ltd 産業用ロボツトの補間演算方法
JPH04364550A (ja) * 1991-06-11 1992-12-16 Oki Electric Ind Co Ltd メモリ管理方法
JPH06190749A (ja) * 1992-12-25 1994-07-12 Fujitsu Ltd 多関節ロボットアームの制御装置
JPH07210233A (ja) * 1994-01-27 1995-08-11 Matsushita Electric Ind Co Ltd ロボットの軌道の補間方法と補間装置
JPH09244725A (ja) * 1996-03-05 1997-09-19 Sony Corp 軌道補間装置及びその方法並びに制御装置
US20040122557A1 (en) * 2002-12-19 2004-06-24 National Instruments Corporation Parallel trajectory generation, interpolation, and control in a motion control application
JP2007310861A (ja) * 2006-04-18 2007-11-29 Hitachi Ltd ストレージシステム及びその制御方法
JP2012096338A (ja) * 2010-11-05 2012-05-24 Canon Inc ロボット制御装置
WO2012114435A1 (ja) * 2011-02-21 2012-08-30 三菱電機株式会社 電動機制御システムおよび通信方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019208029A1 (ja) * 2018-04-23 2019-10-31 オムロン株式会社 制御装置、システムおよび制御方法
JP2019191831A (ja) * 2018-04-23 2019-10-31 オムロン株式会社 制御装置、システムおよび制御方法

Also Published As

Publication number Publication date
US20180065244A1 (en) 2018-03-08
EP3291037A3 (en) 2018-03-21
EP3291037A2 (en) 2018-03-07
CN107809189A (zh) 2018-03-16
EP3291037B1 (en) 2020-07-08

Similar Documents

Publication Publication Date Title
JP2018037021A (ja) 制御装置および制御システム
CN109507980B (zh) 控制装置及控制方法
CN109388107B (zh) 控制装置
CN109491307B (zh) 控制装置及控制方法
JP2019159697A (ja) 制御システムおよび制御方法
JP6926539B2 (ja) 制御装置およびプログラム
JP6724847B2 (ja) 制御装置、制御プログラム、制御システム、および制御方法
JP2018159981A (ja) 制御システム、制御装置、制御プログラム、および制御方法
US20190095246A1 (en) Support device and non-transitory storage medium
JP2018133037A (ja) 制御装置
JP6900863B2 (ja) 制御装置、制御方法および制御プログラム
US20220397880A1 (en) Control device
US10509393B2 (en) Control device and control method
JP6988773B2 (ja) 制御システムおよび制御装置
JP2021163030A (ja) 制御装置、プログラムおよび制御方法
JP7375632B2 (ja) 制御システムおよびサポート装置
JP7419956B2 (ja) 情報処理装置、情報処理方法およびプログラム
WO2014110749A1 (en) Robot control system and method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200601

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201124

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210803