JP6954193B2 - 制御装置、制御方法、およびプログラム - Google Patents

制御装置、制御方法、およびプログラム Download PDF

Info

Publication number
JP6954193B2
JP6954193B2 JP2018044549A JP2018044549A JP6954193B2 JP 6954193 B2 JP6954193 B2 JP 6954193B2 JP 2018044549 A JP2018044549 A JP 2018044549A JP 2018044549 A JP2018044549 A JP 2018044549A JP 6954193 B2 JP6954193 B2 JP 6954193B2
Authority
JP
Japan
Prior art keywords
axis
master device
slave device
command value
axes
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
JP2018044549A
Other languages
English (en)
Other versions
JP2019155522A (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.)
Omron Corp
Original Assignee
Omron 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 Omron Corp filed Critical Omron Corp
Priority to JP2018044549A priority Critical patent/JP6954193B2/ja
Priority to EP19151163.3A priority patent/EP3540537B1/en
Priority to CN201910026543.3A priority patent/CN110253563B/zh
Priority to US16/249,909 priority patent/US20190275667A1/en
Publication of JP2019155522A publication Critical patent/JP2019155522A/ja
Application granted granted Critical
Publication of JP6954193B2 publication Critical patent/JP6954193B2/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/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0084Programme-controlled manipulators comprising a plurality of manipulators
    • B25J9/009Programme-controlled manipulators comprising a plurality of manipulators being mechanically linked with one another at their distal ends
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • 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
    • 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
    • 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]
    • 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/41815Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • 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/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/423Teaching successive positions by walk-through, i.e. the tool head or end effector being grasped and guided directly, with or without servo-assistance, to follow a path
    • 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/34Director, elements to supervisory
    • G05B2219/34399Switch between synchronous and asynchronous mode of controllers
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39141Slave program has no taught positions, receives position from master, convert from master
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39142Moving time between positions in slave program coordinated online with master
    • 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/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50234Synchronize two spindles, axis, electronic transmission, line shafting

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Robotics (AREA)
  • Human Computer Interaction (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)

Description

この発明は制御装置に関し、より詳しくは、マスタ装置とスレーブ装置とを同期させて制御する制御装置に関する。また、この発明は、そのような制御を行う制御方法およびプログラムに関する。
従来、この種の制御装置としては、例えば特許文献1(特開平6−138920号公報)に開示されているように、マスタ装置(協調基準体)とスレーブ装置(制御対象体)とを協調動作させるために、スレーブ装置への位置指令値に対して、同期データを補正量(補正同期データ)として加算する方式のものが知られている。
特開平6−138920号公報
従来例とは異なり、本出願人は、一定周期(例えば、0.5msec〜1msec程度の周期)で、マスタ装置の各軸(本明細書を通して「制御軸」を意味する。)への指令値(または各軸の測定された現在値)に基づいてスレーブ装置の各軸への指令値を演算によって求めて、マスタ装置とスレーブ装置とを同期させて制御する方式を開発している。これにより、マスタ装置とスレーブ装置とを精度良く同期させることができる。
このように一定周期でマスタ装置とスレーブ装置とを同期させて制御する場合において、さらに、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なるとき、マスタ装置の各軸への指令値(または各軸の測定された現在値)からスレーブ装置の各軸への指令値を求める過程で、マスタ装置の位置とスレーブ装置の位置とを予め定められた対応関係に保つための同期演算に加えて、マスタ装置の座標系からスレーブ装置の座標系への座標変換を行う必要もある。
ここで、仮に同期演算を行った後に座標変換を行うものとすると、例えばマスタ装置の軸数がスレーブ装置の軸数よりも少ないときに、同期演算によって得られた結果値の自由度が比較的少ないことから、スレーブ装置の位置(軌跡)の自由度が少なくなるという問題が生ずる。一方、マスタ装置の軸数がスレーブ装置の軸数よりも多いときに、マスタ装置の軸数が比較的多いことから、同期演算のための計算量が増大するという問題が生ずる。
そこで、この発明の課題は、一定周期でマスタ装置とスレーブ装置とを同期させて制御する制御装置であって、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、スレーブ装置の位置の自由度を増大でき、または、同期演算のための計算量を削減できるものを提供することにある。また、この発明の課題は、そのような制御装置のための制御方法およびプログラムを提供することにある。
上記課題を解決するため、この開示の制御装置は、
マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、一定周期で上記マスタ装置と上記スレーブ装置とを同期させて制御する制御装置であって、
上記一定周期で、上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて、上記スレーブ装置の各軸への指令値を演算によって求める演算部を備え、
上記演算部は、
上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の座標系から上記スレーブ装置の座標系への、位置変化を表すベクトルの射影を求めることに相当する座標変換を行う座標変換部と、
上記座標変換が行われた後、この座標変換によって得られた座標変換結果値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う同期演算部と
を備えたことを特徴とする。
本明細書で、マスタ装置、スレーブ装置の「軸」とは、それぞれ制御軸を意味する。マスタ装置、スレーブ装置としては、例えばベルトコンベアのような1軸の装置、X−Yテーブルのような2軸の装置、4軸パラレルリンクロボットのような4軸の装置、5軸水平多関節ロボットのような5軸の装置、6軸多関節ロボットのような6軸の装置など、様々な軸数の装置が対象となり得る。ただし、この発明は、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に適用される。
「座標変換」とは、上記マスタ装置の座標系(例えば、XYZ座標系とする。)を基準とした位置から上記スレーブ装置の座標系(例えば、xyz座標系とする。)を基準とした位置への変換を指す。例えば、マスタ装置の位置変化が上記スレーブ装置のxyz座標系で斜めのベクトル(x,y,z成分がいずれもゼロでない)に相当する場合、「座標変換」とは、そのベクトルの射影(x,y,z成分)を求めることに相当する。
「同期演算」とは、上記一定周期で行われ、上記マスタ装置の位置と上記スレーブ装置の位置とを予め定められた対応関係に保つ演算を意味する。「予め定められた対応関係」とは、例えば、マスタ装置の位置に対して、スレーブ装置の位置がx軸、y軸に関して単純追従を行い、z軸に関して或るカム曲線に従って上下するような関係を指す。上記マスタ装置、上記スレーブ装置の「位置」とは、並進成分および/または回転成分を含む意味である。
この開示の制御装置では、演算部は、一定周期で、上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて、上記スレーブ装置の各軸への指令値を演算によって求める。この過程で、上記演算部の座標変換部は、上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の座標系から上記スレーブ装置の座標系への、位置変化を表すベクトルの射影を求めることに相当する座標変換を行う。この後(上記座標変換が行われた後)、上記演算部の同期演算部は、この座標変換によって得られた座標変換結果値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う。これによって、上記スレーブ装置の各軸への指令値が求められる。すると、例えばマスタ装置の軸数がスレーブ装置の軸数よりも少ないときに、上記マスタ装置の各軸への指令値(または各軸の測定された現在値)の自由度に対して上記座標変換結果値の自由度が上記スレーブ装置の軸数まで増え得ることから、上記スレーブ装置の位置(軌跡)の自由度が増大する。したがって、上記同期演算を行う際に、上記スレーブ装置の位置(軌跡)を比較的自由に設計可能となる。一方、マスタ装置の軸数がスレーブ装置の軸数よりも多いときに、上記スレーブ装置の軸数が比較的少ないことから、上記同期演算のための計算量が削減される。このように、この開示の制御装置によれば、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、スレーブ装置の位置の自由度を増大でき、または、同期演算のための計算量を削減できる。
別の局面では、この開示の制御方法は、
マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて上記スレーブ装置の各軸への指令値を演算によって求めて、上記マスタ装置と上記スレーブ装置とを同期させて制御する制御方法であって、
上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の座標系から上記スレーブ装置の座標系への、位置変化を表すベクトルの射影を求めることに相当する座標変換を行った後、
この座標変換によって得られた座標変換結果値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う
ことを特徴とする。
この開示の制御方法によれば、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、スレーブ装置の位置の自由度を増大でき、または、同期演算のための計算量を削減できる。
さらに別の局面では、この開示のプログラムは、上記制御方法をコンピュータに実行させるためのプログラムである。
この開示のプログラムをコンピュータに実行させることによって、上記制御方法を実施することができる。
以上より明らかなように、この開示の制御装置、制御方法およびプログラムによれば、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、スレーブ装置の位置の自由度を増大でき、または、同期演算のための計算量を削減できる。
この発明の一実施形態の制御装置を或る制御システムに適用したときのブロック構成を示す図である。 上記制御システムの外観を模式的に示す図である。 この発明の一実施形態の制御方法による動作例として、上記制御システムにおける上記制御装置の中央演算部による動作を説明する図である。 上記制御装置を別の制御システムに適用したときのブロック構成を示す図である。 上記制御システムの外観を模式的に示す図である。 この発明の一実施形態の制御方法による別の動作例として、上記制御システムにおける上記制御装置の中央演算部による動作を説明する図である。
以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。
(第1実施形態)
図1は、この発明の一実施形態の制御装置10を或る制御システム100に適用したときのブロック構成を示している。また、図2は、制御システム100の外観を模式的に示している。これらの図に示すように、この制御システム100は、大別して、1軸の装置としてのマスタ装置101と、6軸の装置としてのスレーブ装置102と、これらのマスタ装置101とスレーブ装置102とを一定周期t(例えば、t=0.5msec〜1msec程度の周期)で同期させて制御する制御装置10とを備えている。
図2に示すように、マスタ装置101は、この例ではベルトコンベアであり、制御装置10からの指令値CVmに応じてベルト101AをX軸方向に駆動するモータ111と、このモータ111と一体に構成され、モータ111の現在値(現在位置)CVm′を測定するエンコーダ112と、制御装置10からの指令値CVmおよびエンコーダ112からの現在値CVm′を表す信号に基づいてモータ111を駆動するサーボアンプ113とを含んでいる。ベルト101A上の作業対象物(以下「ワーク」と呼ぶ。)90は、矢印Aで示すように、X軸方向に移動される。
スレーブ装置102は、この例では、6軸多関節ロボット121と、制御装置10からの指令値CVnを表す信号に応じてロボット121を駆動するロボットアンプ122とを含んでいる。
この例では、マスタ装置101は、1軸(X軸)の自由度を有している。スレーブ装置102は、6軸x,y,z,yaw,pitch,rollの自由度を有している。すなわち、マスタ装置101の軸数m(この例では、m=1)がスレーブ装置102の軸数n(この例では、n=6)よりも少なく、m<nになっている。また、この例では、マスタ装置101のX軸は、スレーブ装置102のx,y,z軸のいずれとも一致していない。したがって、マスタ装置101の位置X(または、後述の同期演算結果値)の変化がスレーブ装置102のxyz座標系で斜めのベクトル(x,y,z成分がいずれもゼロでない)に相当する。
図1に示すように、制御装置10は、ユーザによって指定されたプログラムを実行するプログラム実行部50と、マスタ装置指令値演算部20と、中央演算部30と、スレーブ装置指令値演算部40とを備えている。この例では、マスタ装置指令値演算部20、中央演算部30、およびスレーブ装置指令値演算部40が、演算部を構成している。
マスタ装置指令値演算部20は、プログラム実行部50からの指示を受けて、或る軸数m(この例では、m=1)のマスタ装置101を制御するために、その軸数mと同数mの要素からなる、マスタ装置101への指令値(マスタ装置指令値)CVmを演算して作成する。このマスタ装置指令値CVmを表す信号は、マスタ装置101へ送信される。マスタ装置101のサーボアンプ113は、各軸(この例では、X軸)のマスタ装置指令値CVmを、エンコーダ112からの現在値CVm′を反映して一定周期tで更新して、モータ111を駆動する。現在値CVm′は、マスタ装置指令値演算部20へ送信される。これにより、制御装置10(特に、マスタ装置指令値演算部20)によって、マスタ装置101が制御される。
スレーブ装置指令値演算部40は、図示しない同期命令部からの指示を受けて、或る軸数n(この例では、n=6)のスレーブ装置102を制御するために、後述の同期演算結果値に基づいて、その軸数nと同数nの要素からなる、スレーブ装置102への指令値(スレーブ装置指令値)CVnを演算して作成する。このスレーブ装置指令値CVnを表す信号は、スレーブ装置102へ送信される。スレーブ装置102のロボットアンプ122は、各軸のスレーブ装置指令値CVnを、ロボット121からの各軸の現在値CVn′を反映して一定周期tで更新して、ロボット121を駆動する。現在値CVn′は、スレーブ装置指令値演算部40へ送信される。これにより、制御装置10(特に、スレーブ装置指令値演算部40)によって、スレーブ装置102が制御される。
中央演算部30は、座標変換部31と、同期演算部32とを含んでいる。次に、一実施形態の制御方法の動作例として、制御システム100における、この制御装置10(特に、中央演算部30)の動作について説明する。
座標変換部31は、一定周期tでマスタ装置101の各軸(この例では、X軸)への指令値CVm(または、各軸の測定された現在値CVm′でもよい。)に対して、マスタ装置101のXYZ座標系(この例では、X座標)からスレーブ装置102のxyz座標系への座標変換(これを符号S1で表す。)を行う。
例えば、図3(A)に示すように、マスタ装置101の位置(X軸位置)101Xが時間経過に伴ってリニアに増加しているものとする。なお、図3(A)および後述の図3(B),図3(C)では、時間軸(横軸)の表示スケールが周期tに比して非常に大きいため、周期t毎のグラフの階段状の変化は図示されていない(さらに、後述の図6(A)〜図6(C)でも同様。)。既述のように、この例では、マスタ装置101の位置Xの変化がスレーブ装置102のxyz座標系で斜めのベクトル(x,y,z成分がいずれもゼロでない)に相当する。座標変換部31は、図3(B)に示すように、そのベクトルの射影(x,y,z成分)を求める。具体的には、マスタ装置101の位置(X軸位置)101Xをpとすると、次式(Eq.1)により、射影成分Sx,Sy,Szを求める。
Sx=K×p+O
Sy=K×p+O
Sz=K×p+O …(Eq.1)
(ここで、K,K,Kは各軸の係数を表し、また、O,O,Oは各軸のオフセット値を表す。)
なお、式(Eq.1)から分かるように、マスタ装置101の位置Xの変化は、スレーブ装置102のxyz座標系でxy平面、yz平面、zx平面のいずれかに平行なベクトルに相当し、または、x軸、y軸、z軸のいずれかに平行なベクトルに相当してもよい。それらの場合には、係数K,K,Kのいずれか1つまたは2つがゼロになる。
この後、同期演算部32は、この座標変換S1によって得られた座標変換結果値(Sx,Sy,Sz)に対して、マスタ装置101の位置とスレーブ装置102の位置とを予め定められた対応関係に保つための同期演算(これを符号S2で表す。)を行う。
この例では、予め定められた対応関係は、マスタ装置101の位置(X軸位置)101Xの変化に伴って、スレーブ装置102の位置がx軸、y軸に関して単純追従を行い、z軸に関して或るカム曲線q=f(Sz)に従って上下するという関係であるものとする。このとき、同期演算S2による結果値は、例えば図3(C)中に直線102x,102y、曲線102zで示すように得られる。これらの直線102x,102y、曲線102zは、それぞれスレーブ装置102のx軸、y軸、z軸がとるべき位置を表している。
この後、スレーブ装置指令値演算部40は、同期演算部32から上記直線102x,102y、曲線102zを表す信号を受けて、スレーブ装置102の各軸への指令値CVnを更新する。
この例では、スレーブ装置102は、ロボットアンプ122を介してこの指令値CVnを表す信号を受けて、図2中に矢印Bで示すように、マスタ装置101の位置の変化(すなわち、矢印Aで示したワーク90の移動)に同期して、x軸、y軸に関して単純追従を行い、z軸に関してカム曲線q=f(Sz)に従って上下する。
このように動作する場合、この例のようにマスタ装置101の軸数m(この例では、m=1)がスレーブ装置102の軸数n(この例では、n=6)よりも少ないときに、マスタ装置101の各軸(この例では、X軸)への指令値CVm(または各軸の測定された現在値CVm′)の自由度に対して座標変換結果値(Sx,Sy,Sz)の自由度がスレーブ装置102の軸数nまで増え得ることから、スレーブ装置102の位置(軌跡)の自由度が増大する。したがって、同期演算S2を行う際に、スレーブ装置102の位置(軌跡)を比較的自由に設計可能となる。
(第2実施形態)
図4は、上述の制御装置10を別の制御システム200に適用したときのブロック構成を示している。また、図5は、制御システム200の外観を模式的に示している。これらの図に示すように、この制御システム200は、大別して、6軸の装置としてのマスタ装置201と、2軸の装置としてのスレーブ装置202と、上述の制御装置10とを備えている。この例では、制御装置10は、これらのマスタ装置201とスレーブ装置202とを一定周期t(例えば、t=0.5msec〜1msec程度の周期)で同期させて制御する。
図5に示すように、マスタ装置201は、この例では、6軸多関節ロボット211と、制御装置10からの指令値CVmを表す信号に応じてロボット211を駆動するロボットアンプ212とを含んでいる。ロボットアンプ212は、ロボット211の各軸(この例では、X,Y,Z,Yaw,Pitch,Roll)の測定された現在値CVm′を表す信号を、制御装置10のマスタ装置指令値演算部20へ送信する。この例では、ロボット211に把持されたワーク190は、矢印A1で示すような曲線に沿って移動される。
スレーブ装置202は、この例ではX−Yテーブル220であり、モータ・エンコーダ一体型の2つのリニアスライダ221,222と、制御装置10からの指令値CVnを表す信号に応じてそれぞれリニアスライダ221,222を駆動する2つのサーボアンプ223,224とを含んでいる。
制御装置10は、先の例と同様に構成されている。この例では、マスタ装置指令値演算部20は、プログラム実行部50からの指示を受けて、或る軸数m(この例では、m=6)のマスタ装置201を制御するために、その軸数mと同数mの要素からなる、マスタ装置201への指令値(マスタ装置指令値)CVmを演算して作成する。このマスタ装置指令値CVmを表す信号は、マスタ装置201へ送信される。マスタ装置201のロボットアンプ212は、各軸のマスタ装置指令値CVmを、ロボット211からの各軸の現在値CVm′を反映して一定周期tで更新して、ロボット211を駆動する。現在値CVm′は、マスタ装置指令値演算部20へ送信される。これにより、制御装置10(特に、マスタ装置指令値演算部20)によって、マスタ装置201が制御される。
スレーブ装置指令値演算部40は、図示しない同期命令部からの指示を受けて、或る軸数n(この例では、n=2)のスレーブ装置202を制御するために、後述の同期演算結果値に基づいて、その軸数nと同数nの要素からなる、スレーブ装置202への指令値(スレーブ装置指令値)CVnを演算して作成する。このスレーブ装置指令値CVnを表す信号は、スレーブ装置202へ送信される。スレーブ装置202のサーボアンプ223,224は、各軸(この例では、x,y軸)のスレーブ装置指令値CVnを、リニアスライダ221,222からの各軸の現在値CVn′を反映して一定周期tで更新して、リニアスライダ221,222を駆動する。現在値CVn′は、スレーブ装置指令値演算部40へ送信される。これにより、制御装置10(特に、スレーブ装置指令値演算部40)によって、スレーブ装置202が制御される。
この例では、マスタ装置201は、6軸X,Y,Z,Yaw,Pitch,Rollの自由度を有している。スレーブ装置202は、2軸(x,y軸)の自由度を有している。すなわち、マスタ装置201の軸数m(この例では、m=6)がスレーブ装置202の軸数n(この例では、n=2)よりも多く、m>nになっている。また、この例では、マスタ装置101の6軸X,Y,Z,Yaw,Pitch,Rollは、スレーブ装置202のx,y軸のいずれとも一致していない。
次に、一実施形態の制御方法の別の動作例として、制御システム200における、制御装置10(特に、中央演算部30)の動作について説明する。
座標変換部31は、一定周期tでマスタ装置201の各軸(この例では、X,Y,Z,Yaw,Pitch,Roll)への指令値CVm(または、各軸の測定された現在値CVm′でもよい。)に対して、マスタ装置201のXYZ座標系からスレーブ装置202のxyz座標系への座標変換(これを符号S1で表す。)を行う。
例えば、図6(A)に示すように、マスタ装置201のX軸位置201X、Y軸位置201Y、Z軸位置201Zが時間経過に伴って変化しているものとする。この例では、X軸位置201Xは、最初に増加し、途中から一定になっている。Y軸位置201Yは、最初は一定で、途中から減少している。Z軸位置201Zは、最初に減少し、途中から一定(略ゼロ)になっている。この例では、座標変換部31は、図6(B)に示すように、マスタ装置201のX軸位置201X、Y軸位置201YをそれぞれX、Yとして、次式(Eq.2)により、スレーブ装置202の座標系でのx,y成分(これをSx1,Sy1とする。)を求める。
Sx1=Kxx×X+Kxy×Y+O
Sy1=Kyx×X+Kyy×Y+O …(Eq.2)
(ここで、Kxx,Kxy,Kyx,Kyyは各軸の係数を表し、また、O,Oは各軸のオフセット値を表す。)
なお、この式(Eq.2)は、マスタ装置201のX軸位置201X、Y軸位置201Yに対して、Z軸周りの回転とX,Y軸方向への並行移動とを行う計算である。
この後、同期演算部32は、この座標変換S1によって得られた座標変換結果値(Sx1,Sy1)に対して、マスタ装置201の位置とスレーブ装置202の位置とを予め定められた対応関係に保つための同期演算(これを符号S2で表す。)を行う。
この例では、予め定められた対応関係は、マスタ装置201(ロボット211)によって運ばれるワーク190の真下に位置するように、スレーブ装置202(X−Yテーブル220)が加速して追い付き、追いついた後はワーク190と同期して移動するという関係であるものとする。このとき、同期演算S2による結果値は、例えば図6(C)中に太い実線で描かれた曲線202x,202yで示すように得られる。これらの曲線202x,202yは、それぞれスレーブ装置202のx軸、y軸がとるべき位置を表している。なお、図6(C)中の細い実線は、座標変換結果値(Sx1,Sy1)のうち、ワーク190の真下にスレーブ装置202(X−Yテーブル220)が追いつく前の部分を、比較のために表している。
この後、スレーブ装置指令値演算部40は、同期演算部32から上記曲線202x、202yを表す信号を受けて、スレーブ装置202の各軸への指令値CVnを更新する。
この例では、スレーブ装置202は、サーボアンプ223,224を介してこの指令値CVnを表す信号を受けて、図5中に矢印B1で示すように、マスタ装置201の位置の変化(すなわち、矢印A1で示したワーク190の移動)に同期して、スレーブ装置202(X−Yテーブル220)がx軸、y軸に関して加速して追い付き、追いついた後はワーク190と同期して移動する。
このように動作する場合、この例のようにマスタ装置201の軸数m(この例では、m=6)がスレーブ装置202の軸数n(この例では、n=2)よりも多いときに、スレーブ装置202の軸数nが比較的少ないことから、同期演算S2のための計算量が削減される。
以上より明らかなように、この制御装置10によれば、マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、スレーブ装置の位置の自由度を増大でき、または、同期演算のための計算量を削減できる。
上述の制御装置10は、実質的にコンピュータ装置(例えば、プログラマブルロジックコントローラ(programmable logic controller;PLC)など)によって構成され得る。したがって、中央演算部30の動作として説明した制御方法(座標変換S1を行った後、同期演算S2を行う処理)は、コンピュータに実行させるためのプログラムとして構成されるのが望ましい。また、それらのプログラムは、それぞれコンピュータ読み取り可能な非一時的(non-transitory)な記録媒体に記録されるのが望ましい。その場合、記録媒体に記録されたそれらのプログラムをコンピュータ装置に読み取らせ、実行させることによって、上述の制御方法を実施することができる。
上述の第1実施形態では、マスタ装置101は1軸のベルトコンベア、スレーブ装置102は6軸のロボットであるものとした。また、第2実施形態では、マスタ装置201は6軸のロボット、スレーブ装置202は2軸のX−Yテーブルであるものとした。しかしながら、これに限られるものではない。マスタ装置、スレーブ装置としては、例えばベルトコンベアのような1軸の装置、X−Yテーブルのような2軸の装置、4軸パラレルリンクロボットのような4軸の装置、5軸水平多関節ロボットのような5軸の装置、6軸多関節ロボットのような6軸の装置など、様々な軸数m,nの装置が対象となり得る。ただし、この発明は、マスタ装置の軸数mとスレーブ装置の軸数nとが互いに異なる場合に適用される。
以上の実施形態は例示であり、この発明の範囲から離れることなく様々な変形が可能である。上述した複数の実施の形態は、それぞれ単独で成立し得るものであるが、実施の形態同士の組みあわせも可能である。また、異なる実施の形態の中の種々の特徴も、それぞれ単独で成立し得るものであるが、異なる実施の形態の中の特徴同士の組みあわせも可能である。
10 制御装置
30 中央演算部
31 座標変換部
32 同期演算部
100,200 制御システム
101,201 マスタ装置
102,202 スレーブ装置

Claims (3)

  1. マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、一定周期で上記マスタ装置と上記スレーブ装置とを同期させて制御する制御装置であって、
    上記一定周期で、上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて、上記スレーブ装置の各軸への指令値を演算によって求める演算部を備え、
    上記演算部は、
    上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の座標系から上記スレーブ装置の座標系への、位置変化を表すベクトルの射影を求めることに相当する座標変換を行う座標変換部と、
    上記座標変換が行われた後、この座標変換によって得られた座標変換結果値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う同期演算部と
    を備えたことを特徴とする制御装置。
  2. マスタ装置の軸数とスレーブ装置の軸数とが互いに異なる場合に、一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に基づいて上記スレーブ装置の各軸への指令値を演算によって求めて、上記マスタ装置と上記スレーブ装置とを同期させて制御する制御方法であって、
    上記一定周期で上記マスタ装置の各軸への指令値または各軸の測定された現在値に対して、上記マスタ装置の座標系から上記スレーブ装置の座標系への、位置変化を表すベクトルの射影を求めることに相当する座標変換を行った後、
    この座標変換によって得られた座標変換結果値に対して、上記マスタ装置の位置と上記スレーブ装置の位置とを、曲線で表される関数を含む予め定められた対応関係に保つための同期演算を行う
    ことを特徴とする制御方法。
  3. 請求項2に記載の制御方法をコンピュータに実行させるためのプログラム。
JP2018044549A 2018-03-12 2018-03-12 制御装置、制御方法、およびプログラム Active JP6954193B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018044549A JP6954193B2 (ja) 2018-03-12 2018-03-12 制御装置、制御方法、およびプログラム
EP19151163.3A EP3540537B1 (en) 2018-03-12 2019-01-10 Control device, control method, and program
CN201910026543.3A CN110253563B (zh) 2018-03-12 2019-01-11 控制装置、控制方法以及存储介质
US16/249,909 US20190275667A1 (en) 2018-03-12 2019-01-17 Control device, control method, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018044549A JP6954193B2 (ja) 2018-03-12 2018-03-12 制御装置、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2019155522A JP2019155522A (ja) 2019-09-19
JP6954193B2 true JP6954193B2 (ja) 2021-10-27

Family

ID=65019327

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018044549A Active JP6954193B2 (ja) 2018-03-12 2018-03-12 制御装置、制御方法、およびプログラム

Country Status (4)

Country Link
US (1) US20190275667A1 (ja)
EP (1) EP3540537B1 (ja)
JP (1) JP6954193B2 (ja)
CN (1) CN110253563B (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6962229B2 (ja) * 2018-02-15 2021-11-05 オムロン株式会社 中央制御装置、制御方法およびプログラム
CN112828862B (zh) * 2020-12-30 2022-09-16 诺创智能医疗科技(杭州)有限公司 并联平台的主从映射方法、机械臂系统和存储介质
DE112021007443T5 (de) * 2021-06-08 2024-01-25 Fanuc Corporation Produktionssystem
CN117021118B (zh) * 2023-10-08 2023-12-15 中北大学 一种并联机器人数字孪生轨迹误差动态补偿方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06138920A (ja) 1992-10-27 1994-05-20 Yokogawa Electric Corp モーションコントローラ
JP2732034B2 (ja) * 1994-08-23 1998-03-25 株式会社不二越 ロボット制御装置
JP2002192486A (ja) * 2000-12-25 2002-07-10 Seiko Epson Corp ロボット制御方法及び該方法を適用したロボットコントローラ
JP2004130444A (ja) * 2002-10-10 2004-04-30 Fanuc Ltd 同期制御装置
JP2005262369A (ja) * 2004-03-18 2005-09-29 Yaskawa Electric Corp ロボットシステム
EP2144127B1 (de) * 2008-07-08 2014-04-30 Siemens Aktiengesellschaft Verfahren und Steuergerät zum Aufsynchronisieren eines Aufnehmers eines Handlingsgerätes
JP2012187651A (ja) * 2011-03-09 2012-10-04 Omron Corp 画像処理装置および画像処理システム、ならびにそれらに向けられたガイダンス装置
JP5561214B2 (ja) * 2011-03-15 2014-07-30 オムロン株式会社 画像処理装置および画像処理プログラム
DE102012203002A1 (de) * 2012-02-28 2013-08-29 Siemens Aktiengesellschaft Überwachung einer Bahngeschwindigkeit einer Materialbahn
CN105814502B (zh) * 2013-12-05 2018-06-08 三菱电机株式会社 轨迹测定装置、数控装置以及轨迹测定方法
JP2015170310A (ja) * 2014-03-10 2015-09-28 ファナック株式会社 準備動作を含む同期制御装置
JP6250887B2 (ja) * 2014-07-22 2017-12-20 ファナック株式会社 左手座標系対応の数値制御装置
JP6333782B2 (ja) * 2015-08-03 2018-05-30 ファナック株式会社 同期開始ブロックのショックを解消する機能を有する同期制御装置
JP6407826B2 (ja) * 2015-09-03 2018-10-17 ファナック株式会社 座標系設定方法、座標系設定装置、及び座標系設定装置を備えたロボットシステム
JP6392805B2 (ja) * 2016-04-12 2018-09-19 ファナック株式会社 複数モータ駆動用サーボ制御装置
JP2018024044A (ja) * 2016-08-09 2018-02-15 オムロン株式会社 情報処理システム、情報処理装置、ワークの位置特定方法、およびワークの位置特定プログラム

Also Published As

Publication number Publication date
EP3540537B1 (en) 2020-11-18
CN110253563A (zh) 2019-09-20
EP3540537A1 (en) 2019-09-18
CN110253563B (zh) 2022-07-05
US20190275667A1 (en) 2019-09-12
JP2019155522A (ja) 2019-09-19

Similar Documents

Publication Publication Date Title
JP6954193B2 (ja) 制御装置、制御方法、およびプログラム
US10543599B2 (en) Robot system equipped with video display apparatus that displays image of virtual object in superimposed fashion on real image of robot
US9104193B2 (en) Robot programming device
CN111844128A (zh) 轨道计划装置以及轨道计划方法
US20180264649A1 (en) Controller, control system, and control method
JP2013184245A (ja) ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
WO2015104736A1 (ja) 軌跡制御装置
US20150336267A1 (en) Learning path control
JP2006293826A (ja) ロボットプログラム補正装置
US10710242B2 (en) Controller, control system, and control method
JP5425342B1 (ja) 数値制御装置
JP2010137298A (ja) 複腕ロボットの作業プログラム作成方法
JP7411024B2 (ja) 複数のロボットによる動的レーザタッチセンシング及び動的ユーザ座標系
JP2009301232A (ja) 座標変換工具位相制御用数値制御装置
CN109773780B (zh) 机械臂的过渡路径的位姿同步方法及装置
JP6954192B2 (ja) 制御装置、制御方法、およびプログラム
JP2015051469A (ja) ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP2019168270A (ja) 外観検査システム、設定装置および検査方法
WO2018176188A1 (en) Method and apparatus for estimating system error of commissioning tool of industrial robot
JPS599708A (ja) ロボツトシステムの動作誤差補正方法
US10532460B2 (en) Robot teaching device that sets teaching point based on motion image of workpiece
JPH01106107A (ja) 手先視覚を持つロボットの制御方法とその装置
CN109661621B (zh) 加工仿真显示装置及加工仿真显示方法
JP2019042875A (ja) 多関節ロボットの制御方法および制御装置
US20230211505A1 (en) Robot control system, control program, and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210420

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210913

R150 Certificate of patent or registration of utility model

Ref document number: 6954193

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150