[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

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

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

Info

Publication number
JP6962229B2
JP6962229B2 JP2018024858A JP2018024858A JP6962229B2 JP 6962229 B2 JP6962229 B2 JP 6962229B2 JP 2018024858 A JP2018024858 A JP 2018024858A JP 2018024858 A JP2018024858 A JP 2018024858A JP 6962229 B2 JP6962229 B2 JP 6962229B2
Authority
JP
Japan
Prior art keywords
master information
elements
master
information
slave
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
JP2018024858A
Other languages
English (en)
Other versions
JP2019136854A (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 JP2018024858A priority Critical patent/JP6962229B2/ja
Priority to CN201811348727.3A priority patent/CN110154064B/zh
Priority to EP18206099.6A priority patent/EP3528069B1/en
Priority to US16/190,183 priority patent/US10747189B2/en
Publication of JP2019136854A publication Critical patent/JP2019136854A/ja
Application granted granted Critical
Publication of JP6962229B2 publication Critical patent/JP6962229B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J3/00Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • 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
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2231Master slave
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40182Master has different configuration than slave manipulator

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Description

この発明は中央制御装置に関し、より詳しくは、マスタ装置とスレーブ装置とを組み合わせて制御する制御システムのための中央制御装置に関する。また、この発明は、そのような制御システムのための制御方法およびプログラムに関する。
従来、例えば特許文献1(特開平6−71580号公報)に開示されているように、特定の制御軸数をもつマスターアーム(マスタ装置)と特定の制御軸数をもつスレーブアーム(スレーブ装置)とを協調して制御する双腕ロボットの同期制御方法が知られている。
また、特許文献2(特開2002−192486号公報)に開示されているように、特定の制御軸数をもつコンベヤ(マスタ装置)に載って移動するワークを、特定の制御軸数をもつロボット(スレーブ装置)に追従させるロボット制御方法が知られている。
特開平6−71580号公報 特開2002−192486号公報
しかしながら、いずれの従来例でも、特定の制御軸数をもつマスタ装置と特定の制御軸数をもつスレーブ装置との組み合わせに限定した制御方法になっている。このため、マスタ装置の種類に依存してスレーブ装置の種類、可能な動作などが制限される。つまり、制御の汎用性に乏しいという問題がある。
そこで、この発明の課題は、マスタ装置とスレーブ装置とを組み合わせて制御する制御システムのための中央制御装置であって、互いに制御軸数が異なる複数種類のマスタ装置と互いに制御軸数が異なる複数種類のスレーブ装置とを組み合わせて制御できるものを提供することにある。また、この発明の課題は、そのような制御システムのための制御方法およびプログラムを提供することにある。
上記課題を解決するため、この開示の中央制御装置は、
マスタ装置とスレーブ装置とを組み合わせて制御する制御システムのための中央制御装置であって、
上記制御システムは、
互いに制御軸数が異なる複数種類のマスタ装置のうち或る制御軸数のマスタ装置を、その制御軸数と同数の要素からなるマスタ情報を用いて制御するマスタ装置制御部と、
互いに制御軸数が異なる複数種類のスレーブ装置のうち或る制御軸数のスレーブ装置を、その制御軸数と同数の要素からなるスレーブ情報を用いて制御するスレーブ装置制御部と
互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から、一定数の要素からなる抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、予め定めて記憶している割付設定記憶部と
を備え、
上記中央制御装置は、
上記マスタ装置制御部から上記マスタ情報を逐次受信して、受信したマスタ情報の要素数に応じて上記割付設定記憶部に記憶された割り付けの仕方を選択し、この選択した割り付けの仕方に基づいて、上記抽象化マスタ情報を作成する抽象化マスタ情報作成部を備え、
上記抽象化マスタ情報を上記スレーブ情報の作成のために上記スレーブ装置制御部へ提供することを特徴とする。
本明細書で、マスタ装置またはスレーブ装置の「種類」とは、制御軸数が互いに異なるものだけでなく、制御軸の属性(並進と回転)が互いに異なるものを含んでいる。
また、予め定められた「割り付けの仕方」とは、或る要素数のマスタ情報に含まれたいずれの要素を、抽象化マスタ情報の一定数の要素(例えば、6要素)のうちのいずれに割り付けるか、を示す対応の仕方を意味する。この割り付けの仕方は、マスタ情報の要素数が例えば1、2、3、4、5または6のように異なれば、それに応じてそれぞれ異なって定められる。
また、「マスタ情報」の各要素、「スレーブ情報」の各要素は、それぞれ逐次値が更新され、それによって、それぞれマスタ装置の各軸、スレーブ装置の各軸が駆動される。
また、「中央制御装置」は、制御システムの一部をなしていてもよい。
上述の制御システムでは、マスタ装置制御部は、或る制御軸数(例えば1、2、3、4、5または6)のマスタ装置を、その制御軸数と同数の要素からなるマスタ情報を用いて制御する。ここで、この開示の中央制御装置では、割付設定記憶部は、互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から、一定数の要素からなる抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、予め定めて記憶している。抽象化マスタ情報作成部は、上記マスタ装置制御部から上記マスタ情報を逐次受信して、受信したマスタ情報の要素数に応じて上記割付設定記憶部に記憶された割り付けの仕方を選択し、この選択した割り付けの仕方に基づいて、上記抽象化マスタ情報を作成する。つまり、上記マスタ情報の要素(要素数は6以下の様々な自然数であり得る)から、共通に上記一定数の要素からなる抽象化マスタ情報を作成する。そして、上記抽象化マスタ情報を上記スレーブ情報の作成のために上記スレーブ装置制御部へ提供する。
上記スレーブ装置制御部は、上記抽象化マスタ情報作成部から上記抽象化マスタ情報を逐次受信して、受信した抽象化マスタ情報に含まれた上記一定数の要素から、上記(自らが制御すべきスレーブ装置のための)スレーブ情報の要素数に応じて予め定められた抽出の仕方に基づいて、上記スレーブ情報の要素数に応じた数の要素を抽出し、さらに、抽出した要素が示す値を用いて上記スレーブ情報を作成する。そして、上記スレーブ装置制御部は、作成したスレーブ情報を用いて上記スレーブ装置を制御する。すなわち、上記スレーブ装置制御部は、上記スレーブ装置を、その制御軸数と同数の要素からなるスレーブ情報を用いて制御する。
なお、予め定められた「抽出の仕方」とは、抽象化マスタ情報に含まれた上記一定数の要素から、いずれの要素を抽出するか、を示す仕方を意味する。抽出される要素の数は、作成すべきスレーブ情報の要素数に応じた数となる。
上述の動作によれば、マスタ情報の要素数(すなわち、マスタ装置の制御軸数)にかかわらず、上記一定数の要素からなる抽象化マスタ情報が逐次作成される。また、スレーブ情報の要素数(すなわち、スレーブ装置の制御軸数)にかかわらず、上記抽象化マスタ情報から上記スレーブ装置を制御するためのスレーブ情報が逐次作成される。したがって、互いに制御軸数が異なる複数種類のマスタ装置と互いに制御軸数が異なる複数種類のスレーブ装置とを組み合わせて制御することができる。
一実施形態の中央制御装置では、上記割付設定記憶部は、上記互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から上記抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、それぞれ要素同士の対応表として格納していることを特徴とする。
この一実施形態の中央制御装置では、上記抽象化マスタ情報作成部は、上記割付設定記憶部が格納している上記要素同士の対応表を参照することによって、上記マスタ情報の要素から、上記抽象化マスタ情報を迅速に作成できる。
一実施形態の中央制御装置では、上記割付設定記憶部の上記対応表は、上記抽象化マスタ情報の上記一定数の要素のうち、上記マスタ情報の要素が割り付けられる要素毎に、その要素に関する倍率を対応付けて格納していることを特徴とする。
この一実施形態の中央制御装置では、例えば上記抽象化マスタ情報作成部が上記抽象化マスタ情報を作成する際に、上記抽象化マスタ情報の上記一定数の要素のうち、上記マスタ情報の要素が割り付けられた要素毎に、その要素の値にそれぞれ上記対応する倍率を乗算する。これによって、それぞれその要素の値を適切な単位で表し、その要素の値に物理的な意味を持たせることができる。
一実施形態の中央制御装置では、
上記対応表における上記抽象化マスタ情報の上記一定数の要素は、並進の自由度を表す要素と、回転の自由度を表す要素とを含み、
上記マスタ情報の要素が並進の自由度を表すとき、その要素は上記抽象化マスタ情報のうち並進の自由度を表す要素に割り付けられる一方、上記マスタ情報の要素が回転の自由度を表すとき、その要素は上記抽象化マスタ情報のうち回転の自由度を表す要素に割り付けられることを特徴とする。
この一実施形態の中央制御装置では、上記マスタ情報の要素を上記抽象化マスタ情報の上記一定数の要素に割り付ける割り付けの仕方が、比較的簡単に定められる。
さらに別の局面では、この開示の制御方法は、
マスタ装置とスレーブ装置とを組み合わせて制御する制御システムのための制御方法であって、
上記制御システムは、
互いに制御軸数が異なる複数種類のマスタ装置のうち或る制御軸数のマスタ装置を、その制御軸数と同数の要素からなるマスタ情報を用いて制御するマスタ装置制御部と、
互いに制御軸数が異なる複数種類のスレーブ装置のうち或る制御軸数のスレーブ装置を、その制御軸数と同数の要素からなるスレーブ情報を用いて制御するスレーブ装置制御部と
互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から、一定数の要素からなる抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、予め定めて記憶している割付設定記憶部と
を備え、
上記制御方法は、
上記マスタ装置制御部から上記マスタ情報を逐次受信し、
受信したマスタ情報の要素数に応じて上記割付設定記憶部に記憶された割り付けの仕方を選択し、この選択した割り付けの仕方に基づいて、上記抽象化マスタ情報を作成し、
上記抽象化マスタ情報を上記スレーブ情報の作成のために上記スレーブ装置制御部へ提供することを特徴とする。

この開示の制御方法によれば、上記スレーブ装置制御部は、上記抽象化マスタ情報を逐次受信する。上記スレーブ装置制御部は、受信した抽象化マスタ情報に含まれた上記一定数の要素から、上記スレーブ情報の要素数に応じて予め定められた抽出の仕方に基づいて、上記スレーブ情報の要素数に応じた数の要素を抽出し、さらに、上記抽出した要素が示す値を用いて上記スレーブ情報を作成する。この結果、互いに制御軸数が異なる複数種類のマスタ装置と互いに制御軸数が異なる複数種類のスレーブ装置とを組み合わせて制御することができる。
さらに別の局面では、この開示のプログラムは、上記制御方法をコンピュータに実行させるためのプログラムである。
この開示のプログラムをコンピュータに実行させることによって、上記制御方法を実施することができる。
以上より明らかなように、この開示の中央制御装置、制御方法およびプログラムによれば、マスタ装置とスレーブ装置とを組み合わせて制御する制御システムにおいて、互いに制御軸数が異なる複数種類のマスタ装置と互いに制御軸数が異なる複数種類のスレーブ装置とを組み合わせて制御できる。
この発明の中央制御装置の一実施形態の中央制御部を備えたロボット制御システムの概略的なブロック構成を示す図である。 マスタ装置またはスレーブ装置として用いられる各種ロボットの外観を示す図である。図2(A)は1軸の装置としてのベルトコンベアを示し、図2(B)は2軸の装置としてのX−Yテーブルを示し、また、図2(C)は6軸ロボットを示している。 図3(A)は上記ロボット制御システムの割付設定記憶部の記憶内容を模式的に示す図である。図3(B)は上記ロボット制御システムの抽出設定記憶部の記憶内容を模式的に示す図である。 上記割付設定記憶部に記憶された或る割付設定対応表における、マスタ情報の要素から抽象化マスタ情報の6要素への割り付けの仕方を説明する図である。 上記割付設定記憶部に記憶された別の割付設定対応表における、マスタ情報の要素から抽象化マスタ情報の6要素への割り付けの仕方を説明する図である。 上記割付設定記憶部に記憶されたさらに別の割付設定対応表における、マスタ情報の要素から抽象化マスタ情報の6要素への割り付けの仕方を説明する図である。 上記ロボット制御システムの中央制御部において、マスタ情報の要素から抽象化マスタ情報を作成する一実施形態の制御方法のフローを示す図である。 図8(A)は割付設定対応表の形式を示す図である。図8(B)は、その割付設定対応表に基づいて作成される抽象化マスタ情報の形式を示す図である。 上記ロボット制御システムのスレーブ装置制御部において、抽象化マスタ情報からスレーブ情報を作成する一実施形態の制御方法のフローを示す図である。 上記のスレーブ装置制御部において、或る抽出設定リストに基づいて抽出される抽出情報の内容を模式的に示す図である。 上記スレーブ装置制御部において、別の抽出設定リストに基づいて抽出される抽出情報の内容を模式的に示す図である。 上記スレーブ装置制御部において、さらに別の抽出設定リストに基づいて抽出される抽出情報の内容を模式的に示す図である。 図13(A)は、上記抽出情報を用いて、更新されたスレーブ情報を算出するのに用いられるカムテーブルを例示する図である。図13(B)は、上記抽出情報を用いて、更新されたスレーブ情報を算出するのに用いられるカムプロファイル曲線を例示する図である。 図14(A)は、マスタ装置に対してスレーブ装置がとるべき一定の相対的な位置と向きを表す行列Rを示す図である。図14(B)は、上記抽象化マスタ情報から抽出された、一定周期で逐次更新される抽出情報を表す行列Mを示す図である。図14(C)は、行列Mと行列Rの積として算出される、スレーブ装置102−6のための指令値(位置と向き)を表す行列Sを示す図である。 上記ロボット制御システムのマスタ装置制御部と中央制御部がともに一つの筐体に収容され、スレーブ装置制御部が別の筐体に収容された態様を示す図である。 上記ロボット制御システムのマスタ装置制御部が一つの筐体に収容され、中央制御部とスレーブ装置制御部がともに別の筐体に収容された態様を示す図である。 上記ロボット制御システムのマスタ装置制御部、中央制御部、スレーブ装置制御部がそれぞれ互いに別の筐体に収容された態様を示す図である。
以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。
図1は、この発明の中央制御装置の一実施形態の中央制御部(符号30で示す。)を備えたロボット制御システム10のブロック構成を示している。このロボット制御システム10は、マスタ装置101とスレーブ装置102とを組み合わせて制御するために工夫されたシステムである。以下では、簡単のため、マスタ装置101とスレーブ装置102に関して、「制御軸」を単に「軸」と呼び、「制御軸数」を単に「軸数」と呼ぶ。
マスタ装置101としては、図2(A)に示すような1軸の装置としてのベルトコンベア、図2(B)に示すような2軸の装置としてのX−Yテーブル、図2(C)に示すような6軸ロボットなど、互いに軸数が異なる複数種類の装置のうち或る軸数m(例えばm=1、2、3、4、5または6)の装置が対象となる。同様に、スレーブ装置102としても、互いに軸数が異なる複数種類の装置のうち或る軸数n(例えばn=1、2、3、4、5または6)の装置が対象となる。
図1に示すように、このロボット制御システム10は、この例では、1つの筐体(1点鎖線で示す)10A内に搭載されたマスタ装置制御部20、中央制御装置としての中央制御部30、スレーブ装置制御部40、および、ユーザプログラム記憶部50を備えている。
ユーザプログラム記憶部50には、マスタ装置101を制御するためのプログラムとしてマスタ装置制御命令51が格納されている。また、ユーザプログラム記憶部50には、スレーブ装置102をマスタ装置101と同期させるためのプログラムとしてスレーブ装置同期命令52が格納されている。
マスタ装置制御部20は、マスタ装置制御命令51を制御指示MCCとして受けて、或る軸数mのマスタ装置101を、その軸数mと同数mの要素からなるマスタ情報Mmを用いて制御する。すなわち、マスタ装置制御部20は、マスタ装置101へマスタ情報Mmとしてm軸分の指令値CVmを送信し、マスタ装置101からm軸分の現在値CVm′を受信して、マスタ装置101を制御する。マスタ情報Mmの各要素は、それぞれ、この例では一定周期で逐次値が更新され、それによって、それぞれマスタ装置101の各軸が駆動される。
スレーブ装置制御部40は、概略、スレーブ装置同期命令52を制御指示SCCとして受けて、後述の抽象化マスタ情報AM6に基づいて、或る軸数nのスレーブ装置102を制御するためのスレーブ情報Snを作成する(具体的な作成の仕方については後述する。)。スレーブ情報Snは、制御すべきスレーブ装置102の軸数nと同数nの要素、すなわち、n軸分の指令値CVnを含む。スレーブ装置制御部40は、そのスレーブ情報Snを用いてスレーブ装置102を制御する。
中央制御部30は、抽象化マスタ情報作成部31をなす割付設定対応表選択部32、軸情報割付部33および倍率適用部34と、割付設定記憶部35とを備えている。
抽象化マスタ情報作成部31は、概略、マスタ装置制御部20からマスタ情報Mm(特に、現在値CVm′)を逐次受信して、受信したマスタ情報Mmの要素数mに応じて予め定められた割り付けの仕方に基づいて、一定数の要素、この例では6要素からなる抽象化マスタ情報AM6を作成する。つまり、マスタ情報Mmの要素(要素数mは6以下の様々な自然数であり得る)から、共通に6要素からなる抽象化マスタ情報AM6を作成する。図8(B)に例示するように、抽象化マスタ情報AM6は、並進の自由度を表す3要素であるX(X軸の位置)、Y(Y軸の位置)およびZ(Z軸の位置)と、回転の自由度を表す3要素であるYaw(ヨー角の値)、Pitch(ピッチ角の値)およびRoll(ロール角の値)とを含む。
割付設定記憶部35は、図3(A)に例示するように、互いに種類が異なるマスタ情報Mm毎に、マスタ情報Mmの要素から抽象化マスタ情報AM6の6要素への割り付けの仕方を、この例ではそれぞれ要素同士の割付設定対応表AST1,AST2,…,AST6(この例では、AST1,AST2,…,AST6を符号ASTで総称する。)として格納している。この例では、マスタ情報Mmの種類とは、要素数mが互いに異なるものだけでなく、その要素の属性(並進と回転)が互いに異なるものを含んでいる。各割付設定対応表ASTは、「抽象化マスタ情報内の要素」欄と、「マスタ装置内の軸番号」欄と、「倍率」欄とを含んでいる。「抽象化マスタ情報内の要素」欄は、抽象化マスタ情報AM6の6要素であるX,Y,Z,Yaw,Pitch,Rollを表している。「マスタ装置内の軸番号」欄は、それらの6要素にそれぞれ対応されるべきマスタ情報Mmの要素を軸番号で表している。「倍率」欄は、上記6要素のうち、マスタ情報Mmの要素が割り付けられる要素毎に、その要素に関する倍率を対応付けて格納している。これは、その要素の値を適切な単位で表し、その要素の値に物理的な意味を持たせるためである。なお、割付設定対応表ASTに、倍率に代えて、または、倍率に加えて、マスタ情報Mmの要素の値に対して加算または減算されるべきオフセット値(一定値)を格納しておいてもよい。
例えば、割付設定対応表AST1は、図4(A)に示すように、マスタ装置101が1軸(軸A0)の並進移動を行うベルトコンベア101−1である場合に、マスタ情報Mmの1要素から抽象化マスタ情報AM6の6要素への割り付けの仕方を定めている。すなわち、図4(A)中の軸A0を、この例では図4(B)中に示す抽象化マスタ情報AM6のX軸に対応させている。この理由は、「製造ラインの進行方向はX軸」のような統一ルールを決めることで、製造ライン全体の設計が簡素化されるからである。これにより、図4(C)に示すように、抽象化マスタ情報AM6の要素Xに、軸A0が割り付けられている。この例では、抽象化マスタ情報AM6の残りの要素Y,Z,Yaw,Pitch,Rollは、値0に固定されている。また、この例では、図4(D)に示すように、ベルトコンベア101−1の軸A0は100パルスで1mm移動する仕様、つまり、0.01mm/パルスになっている。これに応じて、抽象化マスタ情報AM6の要素Xに、倍率0.01が対応付けて格納されている。
また、割付設定対応表AST2は、図5(A)に示すように、マスタ装置101が2軸(軸A0と軸A1)の並進移動を行うX−Yテーブル101−2である場合に、マスタ情報Mmの2要素から抽象化マスタ情報AM6の6要素への割り付けの仕方を定めている。すなわち、図5(A)中の軸A0,A1を、この例ではそれぞれ図5(B)中に示す抽象化マスタ情報AM6のX軸,Y軸に対応させている。これにより、図5(C)に示すように、抽象化マスタ情報AM6の要素X,Yに、それぞれ軸A0,A1が割り付けられている。この例では、抽象化マスタ情報AM6の残りの要素Z,Yaw,Pitch,Rollは、値0に固定されている。また、この例では、図5(D)に示すように、X−Yテーブル101−2の軸A0は50パルスで1mm移動する仕様、つまり、0.02mm/パルスになっている。また、X−Yテーブル101−2の軸A1は100パルスで1mm移動する仕様、つまり、0.01mm/パルスになっている。これに応じて、抽象化マスタ情報AM6の要素X,Yに、それぞれ倍率0.02,0.01が対応付けて格納されている。
また、割付設定対応表AST6は、図6(A)に示すように、マスタ装置101が3軸(X,Y,Z)の並進と3軸(Yaw,Pitch,Roll)の回転を行う6軸ロボット101−6である場合に、マスタ情報Mmの6要素から抽象化マスタ情報AM6の6要素への割り付けの仕方を定めている。この例では、図6(B)に示すように、抽象化マスタ情報AM6の6要素X,Y,Z,Yaw,Pitch,Rollに、それぞれマスタ情報Mmの6軸X,Y,Z,Yaw,Pitch,Rollをそのまま対応させている。抽象化マスタ情報AM6の各要素に関して、倍率は1.0が格納されている。マスタ装置101が6軸X,Y,Z,Yaw,Pitch,Rollを有する場合、この割り付けの仕方が最も簡単になる。
上の各例から分かるように、マスタ情報Mmの要素X,Y,Zが並進の自由度を表すとき、その要素X,Y,Zは抽象化マスタ情報AM6のうち並進の自由度を表す3要素X,Y,Zのいずれかに割り付けられる一方、マスタ情報Mmの要素Yaw,Pitch,Rollが回転の自由度を表すとき、その要素Yaw,Pitch,Rollは抽象化マスタ情報AM6のうち回転の自由度を表す3要素Yaw,Pitch,Rollのいずれかに割り付けられる。これにより、割り付けの仕方が、比較的簡単に定められる。
図7は、中央制御部30において、マスタ情報Mmの要素から抽象化マスタ情報AM6を作成する一実施形態の制御方法のフローを示している。
まず、割付設定対応表選択部32によって、マスタ装置制御部20からマスタ情報Mm(特に、現在値CVm′)を取得して(図7のステップS101)、マスタ情報Mmの種類に応じた割付設定対応表ASTを選択する(図7のステップS102)。
この例では、マスタ装置101が2軸(軸A0と軸A1)の並進移動を行うX−Yテーブル101−2であるのに応じて、図8(A)に示すように、割付設定対応表AST2(図5(C)に示したもの)を選択するものとする。
次に、軸情報割付部33によって、図8(B)に示すような抽象化マスタ情報AM6の6行分のループを開始する(図7のステップS103)。そして、抽象化マスタ情報AM6の注目行について、図8(A)に示す割付設定対応表AST2の該当行(注目行と同じ番号の行)を参照して(図7のステップS104)、マスタ装置101の軸が割り付けられているか否かを判断する(図7のステップS105)。ここで、マスタ装置101の軸が割り付けられていれば(図7のステップS105でYES)、マスタ情報Mmから対応する要素の値を取得する(図7のステップS106)。さらに、倍率適用部34によって、その要素の値に、割付設定対応表AST2の該当行に設定されている倍率を乗算する(図7のステップS107)。続いて、その乗算後の値を、抽象化マスタ情報AM6の注目行にセットする(図7のステップS109)。
例えば、抽象化マスタ情報AM6の注目行が第1行であるとき、図8(A)に示す割付設定対応表の該当行(第1行)を参照すると、マスタ装置101の軸A0が割り付けられている。そこで、マスタ情報Mmから対応する要素の値(軸A0の現在値)を取得する。さらに、その要素の値に、割付設定対応表AST2の該当行(第1行)に設定されている倍率(この例では、0.02)を乗算する。これにより、その要素の値に物理的な意味を持たせることができる。続いて、抽象化マスタ情報AM6の注目行(第1行)に、その乗算後の値(この例では、図8(B)中に「○○○」で表されている。)をセットする。
また、抽象化マスタ情報AM6の注目行が第2行であるとき、図8(A)に示す割付設定対応表の該当行(第2行)を参照すると、マスタ装置101の軸A1が割り付けられている。そこで、マスタ情報Mmから対応する要素の値(軸A1の現在値)を取得する。さらに、その要素の値に、割付設定対応表AST2の該当行(第2行)に設定されている倍率(この例では、0.01)を乗算する。これにより、その要素の値に物理的な意味を持たせることができる。続いて、抽象化マスタ情報AM6の注目行(第2行)に、その乗算後の値(この例では、図8(B)中に「△△△」で表されている。)をセットする。
なお、予め割付設定対応表ASTに、倍率に代えて、または、倍率に加えて、オフセット値(一定値)を格納しておき、マスタ情報Mmの要素の値に対してそのオフセット値を加算または減算してもよい。
一方、図7のステップS105で、マスタ装置101の軸が割り付けられていなければ(図7のステップS105でNO)、軸情報割付部33によって、割付設定対応表AST2の該当行に設定されている固定値を取得する(図7のステップS108)。続いて、抽象化マスタ情報AM6の注目行に、その固定値をセットする(図7のステップS109)。
例えば、抽象化マスタ情報AM6の注目行が第3行であるとき、図8(A)に示す割付設定対応表の該当行(第3行)を参照すると、マスタ装置101の軸が割り付けられていない。そこで、割付設定対応表AST2の該当行(第3行)に設定されている固定値「0」を取得する。続いて、抽象化マスタ情報AM6の注目行(第3行)に、その固定値「0」をセットする。
このようにして、抽象化マスタ情報AM6の6行分のループを終了すると(図7のステップS110)、図8(B)に示すような抽象化マスタ情報AM6が作成される。
この例では、抽象化マスタ情報AM6の6要素X,Y,Z,Yaw,Pitch,Rollの値は、それぞれ、「○○○」、「△△△」、「0」、「0」、「0」、「0」になっている。
以下では、固定値「0」と区別するため、「○○○」、「△△△」のようなマスタ情報Mmに由来して取得された値(倍率が乗算された値、オフセット値が加算または減算された値などを含む。)を「取得値」と呼ぶ。なお、抽象化マスタ情報AM6の各行に、取得値がセットされているか否かを表すフラグを付しておいてもよい。
上の例では、マスタ装置101が2軸(軸A0と軸A1)の並進移動を行うX−Yテーブル101−2であるのに応じて、割付設定対応表AST2(図5(C)に示したもの)を選択するものとした。しかしながら、これに限られるものではない。マスタ装置101が1軸(軸A0)の並進移動を行うベルトコンベア101−1であるのに応じて、図4(C)に示した割付設定対応表AST1を選択してもよい。また、マスタ装置101が3軸(X,Y,Z)の並進と3軸(Yaw,Pitch,Roll)の回転を行う6軸ロボット101−6であるのに応じて、図6(B)に示した割付設定対応表AST6を選択してもよい。いずれの場合も、割付設定対応表ASTに基づいて、6要素からなる抽象化マスタ情報AM6を作成することができる。
このようにして、中央制御部30(抽象化マスタ情報作成部31)は、マスタ情報Mmの要素(要素数mは6以下の様々な自然数であり得る)から、共通に6要素からなる抽象化マスタ情報AM6を作成する。抽象化マスタ情報作成部31は、割付設定対応表ASTを参照することによって、マスタ情報Mmの要素から、抽象化マスタ情報AM6を迅速に作成できる。中央制御部30は、作成した抽象化マスタ情報AM6を、スレーブ情報Snの作成のために図1中に示すスレーブ装置制御部40へ提供する。
図1中に示すように、スレーブ装置制御部40は、情報抽出部41と、スレーブ情報作成部42をなす軌跡更新部43および指令値計算部44と、抽出設定記憶部45と、抽出設定リスト選択部46とを備えている。
情報抽出部41は、概略、抽象化マスタ情報作成部31から抽象化マスタ情報AM6を逐次受信して、受信した抽象化マスタ情報AM6に含まれた6要素から、後述の予め定められた抽出の仕方に基づいて、このスレーブ装置制御部40が制御すべきスレーブ装置102のためのスレーブ情報Snの要素数nに応じた数の要素を抽出する。
抽出設定記憶部45は、図3(B)に例示するように、互いに種類が異なるスレーブ情報Sn毎に、抽象化マスタ情報AM6の6要素からの、スレーブ情報Snの要素数nに応じた抽出の仕方を、それぞれ抽出設定リストEXL1,EXL2,…,EXL6(この例では、EXL1,EXL2,…,EXL6を符号EXLで総称する。)として格納している。この例では、スレーブ情報Snの種類とは、要素数nが互いに異なるものだけでなく、その要素の属性(並進と回転)が互いに異なるものを含んでいる。各抽出設定リストEXLは、「抽象化マスタ情報内の要素」欄と、「スレーブ装置で使用」欄と、「警告」欄とを含んでいる。「抽象化マスタ情報内の要素」欄は、抽象化マスタ情報AM6の6要素であるX,Y,Z,Yaw,Pitch,Rollを表している。「スレーブ装置で使用」欄は、それらの6要素がそれぞれ抽出すべき要素であるか否か、つまり、(このスレーブ装置制御部40が制御すべき)スレーブ装置102で使用すべきか否かを、「あり」または「なし」で表している。「警告」欄は、抽象化マスタ情報AM6の6要素のうち、上記「スレーブ装置で使用」欄が「あり」の要素について、何らかの異常によって、抽象化マスタ情報AM6のその要素(抽出すべき要素)にマスタ情報Mm由来の要素(取得値)が割り付けられていないとき、警告を発すべきか否かを、「あり」または「なし」で表している。「警告」欄の符号「−」は、警告を発すべきか否かが定められていないことを表している。
例えば、抽出設定リストEXL1は、図10に示すように、制御すべきスレーブ装置102が1軸のスレーブ装置102−1(例えば、1軸の電子カム若しくは電子ギア、または、図2(A)に示したようなベルトコンベア)である場合のものであり、抽象化マスタ情報AM6の6要素であるX,Y,Z,Yaw,Pitch,Rollに対応する「スレーブ装置で使用」欄の設定は、それぞれ「あり」、「なし」、「なし」、「なし」、「なし」、「なし」になっている。また、「警告」欄の設定は、それぞれ「なし」、「−」、「−」、「−」、「−」、「−」になっている。
また、抽出設定リストEXL2は、図11に示すように、制御すべきスレーブ装置102が2軸のスレーブ装置102−2(例えば、図2(B)に示したようなX−Yテーブル)である場合のものであり、抽象化マスタ情報AM6の6要素であるX,Y,Z,Yaw,Pitch,Rollに対応する「スレーブ装置で使用」欄の設定は、それぞれ「あり」、「あり」、「なし」、「なし」、「なし」、「なし」になっている。また、「警告」欄の設定は、それぞれ「なし」、「あり」、「−」、「−」、「−」、「−」になっている。
また、抽出設定リストEXL6は、図12に示すように、制御すべきスレーブ装置102が6軸のスレーブ装置102−6(例えば、図2(C)に示したような6軸ロボット)である場合のものであり、抽象化マスタ情報AM6の6要素であるX,Y,Z,Yaw,Pitch,Rollに対応する「スレーブ装置で使用」欄の設定は、それぞれ「あり」、「あり」、「あり」、「あり」、「あり」、「あり」になっている。また、「警告」欄の設定は、それぞれ「あり」、「あり」、「あり」、「なし」、「なし」、「なし」になっている。
図9は、スレーブ装置制御部40において、抽象化マスタ情報AM6からスレーブ情報Snを作成する一実施形態の制御方法のフローを示している。
まず、抽出設定リスト選択部46によって、抽出設定記憶部45が格納している抽出設定リストEXL1,EXL2,…,EXL6のうち、このスレーブ装置制御部40が制御すべきスレーブ装置102のためのスレーブ情報Snの種類に応じた抽出設定リストEXLを選択する(図9のステップS201)。
例えば、制御すべきスレーブ装置102が1軸のスレーブ装置102−1(例えば、1軸の電子カム若しくは電子ギア、または、図2(A)に示したようなベルトコンベア)である場合は、図10中に示した抽出設定リストEXL1が選択される。また、制御すべきスレーブ装置102が2軸のスレーブ装置102−2(例えば、図2(B)に示したようなX−Yテーブル)である場合は、図11中に示した抽出設定リストEXL2が選択される。また、制御すべきスレーブ装置102が6軸のスレーブ装置102−6(例えば、図2(C)に示したような6軸ロボット)である場合は、図12中に示した抽出設定リストEXL6が選択される。
次に、情報抽出部41によって、中央制御部30(抽象化マスタ情報作成部31)から抽象化マスタ情報AM6を受信して取得する(図9のステップS202)。
次に、情報抽出部41によって、図8(B)に示すような抽象化マスタ情報AM6の6行分のループを開始する(図9のステップS203)。そして、抽象化マスタ情報AM6における注目行について、抽出設定リストEXLの該当行(注目行と同じ番号の行)の「スレーブ装置で使用」欄を参照して、スレーブ装置102で使用すべき要素であるか否かを判断する(ステップS204)。ここで、スレーブ装置102で使用すべき要素であれば(ステップS204でYES)、さらに、抽象化マスタ情報AM6の注目行にマスタ情報Mm由来の取得値がセットされているか否かを判断する(ステップS205)。この判断は、例えば、抽象化マスタ情報AM6の注目行の値が取得値と固定値とのいずれであるかを識別することによって行う。なお、予め抽象化マスタ情報AM6の各行に取得値がセットされているか否かを表すフラグを付しておき、この判断の便宜を図ってもよい。ここで、抽象化マスタ情報AM6の注目行に取得値がセットされていれば(ステップS205でYES)、その注目行にセットされている取得値を必要情報として抽出する(ステップS206)。一方、抽象化マスタ情報AM6の注目行に取得値がセットされていなければ(ステップS205でNO)、抽出設定リストEXLの該当行の「警告」欄を参照して、警告を発すべきか否かを判断する(ステップS207)。ここで、警告を発すべきであれば(ステップS207でYES)、情報抽出部41は警告を発する(ステップS208)。警告を発する仕方としては、例えば、スレーブ装置102に設けられたLED(発光ダイオード)ランプを点滅させる、スレーブ装置102の処理を異常として停止させる、イベント履歴に残すなど、様々な仕方がある。これにより、中央制御部30、スレーブ装置制御部40および/またはロボット制御システム10の保守担当者等は、迅速に適切な対策をとることができる。なお、抽出設定リストEXLの該当行の「警告」欄を参照した結果、警告を発すべきでなければ(ステップS207でNO)、情報抽出部41は警告を発しない。その後、抽象化マスタ情報AM6における注目行を次の行に進める。このようにして、抽象化マスタ情報AM6の6行分のループを終了する(ステップS209)。
すると、正常に終了した場合、例えば、図10中に示した抽出設定リストEXL1を選択した例では、同図中に示すように、抽象化マスタ情報AM6の1つの要素Xに対応して、1つの要素からなる抽出情報En1が得られる。その要素の取得値は「X軸取得値」と表されている。また、図11中に示した抽出設定リストEXL2を選択した例では、同図中に示すように、抽象化マスタ情報AM6の2つの要素X,Yに対応して、2つの要素からなる抽出情報En2が得られる。それらの要素の取得値は、それぞれ「X軸取得値」、「Y軸取得値」と表されている。また、図12中に示した抽出設定リストEXL6を選択した例では、同図中に示すように、抽象化マスタ情報AM6の6つの要素X,Y,Z,Yaw,Pitch,Rollに対応して、6つの要素からなる抽出情報En6が得られる。それらの要素の取得値は、それぞれ「X軸取得値」、「Y軸取得値」、「Z軸取得値」、「Yaw軸取得値」、「Pitch軸取得値」、「Roll軸取得値」と表されている。
このように、それぞれスレーブ情報Snの要素数nに応じた数の要素からなる抽出情報En1、En2、またはEn6(これらを抽出情報Enと総称する。)が得られる。つまり、スレーブ装置制御部40は、抽出設定記憶部45が格納している抽出設定リストEXLを参照することによって、抽象化マスタ情報AM6の6要素から、スレーブ情報Snの要素数nに応じた数の要素を迅速に抽出できる。
この後、図9のステップS210で、スレーブ情報作成部42をなす軌跡更新部43によって、抽出情報En(抽出した要素が示す値)を用いて、スレーブ装置102のための軌跡TR(スレーブ情報Snの要素数nに応じた数の要素からなる)を更新して求める。さらに、図9のステップS211で、その軌跡TRに応じた指令値(スレーブ情報Snの要素数nに応じた数の要素からなる)を計算して出力する。このようにして、スレーブ情報作成部42は、この例ではマスタ情報Mmの更新に同期した一定周期で逐次、スレーブ情報Snを作成する。
例えば、1要素からなる抽出情報En1の「X軸取得値」である変位T(現在位置をxとする。)に応じて、1軸のスレーブ装置102−1である電子カムの更新された指令値(位置)yを算出するものとする。カムプロファイル1周分のマスタ移動量をTとすると、カムの位相p=xmodTという関係がある(xmodTは、xをTで割り算した余りを意味している。)。予め、カム曲線を表す関数y=f(p)が設定されているものとする。その場合、スレーブ装置102−1の更新された指令値(位置)yを、y=f(p)によって算出する。算出に際しては、例えば図13(A)に示すような、位相pと変位yとの対応関係を表すカムテーブルを用意し、指令値(位置)yを算出してもよい。このカムテーブルの行間に相当する指令値(位置)yは、線形補間で算出され得る。または、指令値(位置)yは、図13(B)に示すような、カムの1周分にわたって定義されたカムプロファイル曲線y=f(p)を用いて算出してもよい。
また、マスタ装置101が6軸ロボットである場合において、6要素からなる抽出情報En6に応じて、6軸のスレーブ装置102−6の更新された軌跡を指令値(位置と向き)として算出するものとする。ここで、抽出情報En6(抽象化マスタ情報AM6と同じ)の位置と向きを基準として、一定の相対的な位置と向きを保つようにスレーブ装置102−6を制御するものとする。この場合、図14(A)に示すように、予め、その一定の相対的な位置と向きを行列Rで表現して設定しておく。ここで、図14(B)に示すように、一定周期で逐次更新される抽出情報En6(抽象化マスタ情報AM6と同じ)を行列Mで表現する。すると、図14(C)に示すように、スレーブ装置102−6のための指令値(位置と向き)は、行列S=M・Rとして、つまり、行列Mと行列Rとの積として算出される。これにより、スレーブ装置102−6は、マスタ装置101に対して、3次元空間での回転を含む追従を行うことができる。
このようにして、スレーブ装置制御部40は、スレーブ情報Snの要素数nに応じた数の要素からなるスレーブ情報Snを作成し、作成したスレーブ情報Snを用いてスレーブ装置102を制御する。すなわち、スレーブ装置制御部40は、スレーブ装置102を、その軸数nと同数nの要素からなるスレーブ情報Snを用いて制御する。
上述の動作によれば、マスタ情報Mmの要素数m(すなわち、マスタ装置101の軸数m)にかかわらず、6要素からなる抽象化マスタ情報AM6が逐次作成される。また、スレーブ情報Snの要素数n(すなわち、スレーブ装置102の軸数n)にかかわらず、抽象化マスタ情報AM6からスレーブ装置102を制御するためのスレーブ情報Snが逐次作成される。したがって、互いに軸数mが異なる複数種類のマスタ装置101と互いに軸数nが異なる複数種類のスレーブ装置102とを組み合わせて制御することができる。
例えば、或る軸数mのマスタ装置101が別の軸数のマスタ装置に切り替えられた場合、および/または、或る軸数nのスレーブ装置102が別の軸数のスレーブ装置に切り替えられた場合に、このロボット制御システム10によれば、それらの切り替えられたマスタ装置および/またはスレーブ装置を組み合わせて直ちに制御することができる。
このロボット制御システム10は、実質的にコンピュータ装置(例えば、プログラマブルロジックコントローラ(programmable logic controller;PLC)など)によって構成され得る。例えば、マスタ装置制御部20、中央制御部30の抽象化マスタ情報作成部31、スレーブ装置制御部40の情報抽出部41、スレーブ情報作成部42および抽出設定リスト選択部46は、プログラムに従って動作するプロセッサによって構成される。また、割付設定記憶部35、抽出設定記憶部45およびユーザプログラム記憶部50は、不揮発性半導体メモリなどの記憶装置によって構成される。したがって、図7によって説明した中央制御部30における制御方法、図9によって説明したスレーブ装置制御部40における制御方法は、それぞれ、コンピュータに実行させるためのプログラムとして構成されるのが望ましい。さらに、図7によって説明した中央制御部30における制御方法と、図9によって説明したスレーブ装置制御部40における制御方法とは、連続した一つのプログラムとして構成されてもよい。また、それらのプログラムは、それぞれコンピュータ読み取り可能な非一時的(non-transitory)な記録媒体に記録されるのが望ましい。その場合、記録媒体に記録されたそれらのプログラムをコンピュータ装置に読み取らせ、実行させることによって、上述の制御方法を実施することができる。
上述の実施形態では、図1に示したように、ロボット制御システム10をなすマスタ装置制御部20、中央制御装置としての中央制御部30、スレーブ装置制御部40、および、ユーザプログラム記憶部50が1つの筐体(1点鎖線で示す)10Aに搭載されているものとした。しかしながら、これに限られるものではない。
例えば、図15に示すように、ロボット制御システム10をなすマスタ装置制御部20と中央制御部30がともに一つの筐体11Aに収容され、スレーブ装置制御部40が別の筐体11Bに収容されていてもよい。この例では、筐体11Aにユーザプログラム記憶部50Aが設けられ、マスタ装置制御命令51とスレーブ装置同期命令52を格納している。筐体11A,11B間のスレーブ装置同期命令52、抽象化マスタ情報AM6の送受信は、それぞれの筐体11A,11Bに搭載された図示しない通信部によって例えばEtherCAT(登録商標)(Ethernet for Control Automation Technology)を介して行われる。この図15の態様は、システムの規模を分散させるのに適する。特に、マスタ装置101の軸数mがスレーブ装置102の軸数nよりも小さい場合に適する。
また、図16に示すように、ロボット制御システム10をなすマスタ装置制御部20が一つの筐体12Aに収容され、中央制御部30とスレーブ装置制御部40がともに別の筐体12Bに収容されていてもよい。この例では、筐体12Bにユーザプログラム記憶部50Bが設けられ、マスタ装置制御命令51とスレーブ装置同期命令52を格納している。筐体12A,12B間のマスタ装置制御命令51、マスタ情報Mmの送受信は、それぞれの筐体12A,12Bに搭載された図示しない通信部によって行われる。この図16の態様は、システムの規模を分散させるのに適する。特に、マスタ装置101の軸数mがスレーブ装置102の軸数nよりも大きい場合に適する。
また、図17に示すように、ロボット制御システム10をなすマスタ装置制御部20、中央制御部30、スレーブ装置制御部40がそれぞれ互いに別の筐体13A,13C,13Bに収容されていてもよい。この例では、筐体13Cにユーザプログラム記憶部50Cが設けられ、マスタ装置制御命令51とスレーブ装置同期命令52を格納している。筐体13A,13C間のマスタ装置制御命令51、マスタ情報Mmの送受信、および、筐体13C,13B間のスレーブ装置同期命令52、抽象化マスタ情報AM6の送受信は、それぞれの筐体13A,13C,13Bに搭載された図示しない通信部によって行われる。この図17の態様は、さらにシステムの規模を分散させるのに適する。
なお、上の例では、抽象化マスタ情報AM6は代表的に6要素からなるものとしたが、これに限られるものではない。例えば4軸の水平多関節ロボットを主に制御する場合、抽象化マスタ情報が4要素(X,Y,Z,Yaw)からなっていてもよい。
また、この発明の制御システムは、いわゆるロボット(例えば図2(C)に示したような6軸ロボット)を制御対象として含む場合に限られず、マスタ装置101が例えば図2(A)に示したようなベルトコンベアであり、かつ、スレーブ装置102が例えば図2(B)に示したようなX−Yテーブルである場合にも、適用され得る。
以上の実施形態は例示であり、この発明の範囲から離れることなく様々な変形が可能である。上述した複数の実施の形態は、それぞれ単独で成立し得るものであるが、実施の形態同士の組みあわせも可能である。また、異なる実施の形態の中の種々の特徴も、それぞれ単独で成立し得るものであるが、異なる実施の形態の中の特徴同士の組みあわせも可能である。
10 ロボット制御システム
20 マスタ装置制御部
30 中央制御部
31 抽象化マスタ情報作成部
35 割付設定記憶部
40 スレーブ装置制御部
41 情報抽出部
42 スレーブ情報作成部
45 抽出設定記憶部
AST,AST1,AST2,…,AST6 割付設定対応表
EXL,EXL1,EXL2,…,EXL6 抽出設定リスト

Claims (6)

  1. マスタ装置とスレーブ装置とを組み合わせて制御する制御システムのための中央制御装置であって、
    上記制御システムは、
    互いに制御軸数が異なる複数種類のマスタ装置のうち或る制御軸数のマスタ装置を、その制御軸数と同数の要素からなるマスタ情報を用いて制御するマスタ装置制御部と、
    互いに制御軸数が異なる複数種類のスレーブ装置のうち或る制御軸数のスレーブ装置を、その制御軸数と同数の要素からなるスレーブ情報を用いて制御するスレーブ装置制御部と
    互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から、一定数の要素からなる抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、予め定めて記憶している割付設定記憶部と
    を備え、
    上記中央制御装置は、
    上記マスタ装置制御部から上記マスタ情報を逐次受信して、受信したマスタ情報の要素数に応じて上記割付設定記憶部に記憶された割り付けの仕方を選択し、この選択した割り付けの仕方に基づいて、上記抽象化マスタ情報を作成する抽象化マスタ情報作成部を備え、
    上記抽象化マスタ情報を上記スレーブ情報の作成のために上記スレーブ装置制御部へ提供することを特徴とする中央制御装置。
  2. 請求項1に記載の中央制御装置において、
    上記割付設定記憶部は、上記互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から上記抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、それぞれ要素同士の対応表として格納していることを特徴とする中央制御装置。
  3. 請求項2に記載の中央制御装置において、
    上記割付設定記憶部の上記対応表は、上記抽象化マスタ情報の上記一定数の要素のうち、上記マスタ情報の要素が割り付けられる要素毎に、その要素に関する倍率を対応付けて格納していることを特徴とする中央制御装置。
  4. 請求項2または3に記載の中央制御装置において、
    上記対応表における上記抽象化マスタ情報の上記一定数の要素は、並進の自由度を表す要素と、回転の自由度を表す要素とを含み、
    上記マスタ情報の要素が並進の自由度を表すとき、その要素は上記抽象化マスタ情報のうち並進の自由度を表す要素に割り付けられる一方、上記マスタ情報の要素が回転の自由度を表すとき、その要素は上記抽象化マスタ情報のうち回転の自由度を表す要素に割り付けられることを特徴とする中央制御装置。
  5. マスタ装置とスレーブ装置とを組み合わせて制御する制御システムのための制御方法であって、
    上記制御システムは、
    互いに制御軸数が異なる複数種類のマスタ装置のうち或る制御軸数のマスタ装置を、その制御軸数と同数の要素からなるマスタ情報を用いて制御するマスタ装置制御部と、
    互いに制御軸数が異なる複数種類のスレーブ装置のうち或る制御軸数のスレーブ装置を、その制御軸数と同数の要素からなるスレーブ情報を用いて制御するスレーブ装置制御部と
    互いに要素数が異なるマスタ情報毎に、上記マスタ情報の要素から、一定数の要素からなる抽象化マスタ情報の上記一定数の要素への割り付けの仕方を、予め定めて記憶している割付設定記憶部と
    を備え、
    上記制御方法は、
    上記マスタ装置制御部から上記マスタ情報を逐次受信し、
    受信したマスタ情報の要素数に応じて上記割付設定記憶部に記憶された割り付けの仕方を選択し、この選択した割り付けの仕方に基づいて、上記抽象化マスタ情報を作成し、
    上記抽象化マスタ情報を上記スレーブ情報の作成のために上記スレーブ装置制御部へ提供することを特徴とする制御方法。
  6. 請求項5に記載の制御方法をコンピュータに実行させるためのプログラム。
JP2018024858A 2018-02-15 2018-02-15 中央制御装置、制御方法およびプログラム Active JP6962229B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018024858A JP6962229B2 (ja) 2018-02-15 2018-02-15 中央制御装置、制御方法およびプログラム
CN201811348727.3A CN110154064B (zh) 2018-02-15 2018-11-13 中央控制装置、控制方法及存储介质
EP18206099.6A EP3528069B1 (en) 2018-02-15 2018-11-14 Central control device, control method and program
US16/190,183 US10747189B2 (en) 2018-02-15 2018-11-14 Central control device, control method and non-transitory computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018024858A JP6962229B2 (ja) 2018-02-15 2018-02-15 中央制御装置、制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2019136854A JP2019136854A (ja) 2019-08-22
JP6962229B2 true JP6962229B2 (ja) 2021-11-05

Family

ID=64331668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018024858A Active JP6962229B2 (ja) 2018-02-15 2018-02-15 中央制御装置、制御方法およびプログラム

Country Status (4)

Country Link
US (1) US10747189B2 (ja)
EP (1) EP3528069B1 (ja)
JP (1) JP6962229B2 (ja)
CN (1) CN110154064B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111498495B (zh) * 2020-05-06 2021-09-24 珠海格力智能装备有限公司 对象的放置方法、装置、存储介质和处理器

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5946754B2 (ja) * 1980-12-30 1984-11-14 中小企業事業団 マスタスレイブ型マニプレ−タの制御装置
JPS61146482A (ja) * 1984-12-20 1986-07-04 工業技術院長 異構造異自由度バイラテラル・マスタスレイブ・マニピユレ−タの制御装置
JPS6434687A (en) * 1987-07-29 1989-02-06 Kubota Ltd Master/slave manipulator
US5021969A (en) * 1988-03-17 1991-06-04 Kabushiki Kaisha Toshiba Manipulator operating apparatus
JP2672555B2 (ja) * 1988-03-17 1997-11-05 株式会社東芝 操作装置
US5555425A (en) * 1990-03-07 1996-09-10 Dell Usa, L.P. Multi-master bus arbitration system in which the address and data lines of the bus may be separately granted to individual masters
DE59009700D1 (de) * 1990-12-08 1995-10-26 Itt Ind Gmbh Deutsche Master-Slave-Datenübertragungsverfahren mit flexiblem Eindraht-Bus.
US5333299A (en) * 1991-12-31 1994-07-26 International Business Machines Corporation Synchronization techniques for multimedia data streams
DE59207345D1 (de) * 1992-08-19 1996-11-14 Festo Kg Elektro-pneumatische steuereinrichtung
JP3086082B2 (ja) 1992-08-25 2000-09-11 ファナック株式会社 ロボットの同期制御方法およびロボットの同期制御装置
FR2741292B1 (fr) * 1995-11-21 1998-01-16 Onera (Off Nat Aerospatiale) Appareil de telemanipulation du type "maitre-esclave" a six degres de liberte
JP2002192486A (ja) 2000-12-25 2002-07-10 Seiko Epson Corp ロボット制御方法及び該方法を適用したロボットコントローラ
GB2420634A (en) * 2004-11-24 2006-05-31 Perry Slingsby Systems Ltd Control system for articulated manipulator arm
CN103237633B (zh) * 2010-11-30 2015-07-22 奥林巴斯株式会社 主操作输入装置以及主-从机械手
JP5553910B2 (ja) * 2010-12-28 2014-07-23 株式会社日立製作所 モーションコントローラ
JP5669590B2 (ja) * 2011-01-20 2015-02-12 オリンパス株式会社 マスタスレーブマニピュレータ及び医療用マスタスレーブマニピュレータ
EP2688250B1 (en) * 2011-03-15 2018-03-28 Omron Corporation Network system, master device, and method for controlling network system
DE112013003209B4 (de) * 2012-06-29 2019-02-07 Mitsubishi Electric Corporation Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
WO2014005607A1 (en) * 2012-07-06 2014-01-09 Abb Technology Ag Robot-motion-input-device
JP6046467B2 (ja) * 2012-11-29 2016-12-14 株式会社ダイヘン ロボットシステム
CN105073349B (zh) * 2013-03-19 2017-05-10 松下知识产权经营株式会社 机器人系统的控制方法以及机器人系统
CN103425106B (zh) * 2013-08-08 2015-12-23 华南理工大学 一种基于Linux的EtherCAT主/从站控制系统及方法
JP6201126B2 (ja) * 2013-11-07 2017-09-27 株式会社人機一体 マスタスレーブシステム
DE102014006231A1 (de) * 2014-04-30 2015-11-05 Omron Corporation Verbinden mehrerer Slave-Einheiten mit einer Master-Steuereinheit in einem System mit verteilter Steuerung
JP6846111B2 (ja) * 2016-02-26 2021-03-24 オムロン株式会社 マスタ装置、スレーブ装置、情報処理装置、イベントログ収集システム、マスタ装置の制御方法、スレーブ装置の制御方法、および制御プログラム
CN106272484B (zh) * 2016-10-09 2018-12-25 福州大学 一种多异构工业机器人控制系统
JP6965785B2 (ja) * 2018-02-15 2021-11-10 オムロン株式会社 制御システム、スレーブ装置制御部、制御方法およびプログラム
JP6954193B2 (ja) * 2018-03-12 2021-10-27 オムロン株式会社 制御装置、制御方法、およびプログラム

Also Published As

Publication number Publication date
EP3528069A1 (en) 2019-08-21
CN110154064B (zh) 2022-04-05
US20190250576A1 (en) 2019-08-15
CN110154064A (zh) 2019-08-23
US10747189B2 (en) 2020-08-18
JP2019136854A (ja) 2019-08-22
EP3528069B1 (en) 2021-01-20

Similar Documents

Publication Publication Date Title
JP6965785B2 (ja) 制御システム、スレーブ装置制御部、制御方法およびプログラム
EP3477405B1 (en) Control device
CN109582397B (zh) 控制系统以及控制装置
JP6903275B2 (ja) 制御装置および制御方法
CN105035352B (zh) 定位装配件的测量系统
EP3076251B1 (en) Information processing apparatus, information processing program, and information processing method
CN111515947B (zh) 用于时基并行机器人操作的系统和方法
JP6465620B2 (ja) 制御システムおよび制御方法
CN102667648A (zh) 并行程控
JP2015122077A (ja) 制御装置、コントローラ・システム、出力制御方法、およびプログラム
JP6962229B2 (ja) 中央制御装置、制御方法およびプログラム
JP2019067045A (ja) 制御装置
JP2016110458A (ja) プログラマブル・ロジック・コントローラ、基本ユニット、制御方法およびプログラム
JP6375666B2 (ja) Plcおよびplc用のプログラミングツール
JP2019061467A (ja) サポート装置およびサポートプログラム
US10761523B2 (en) Method for controlling an automation system
JP6626313B2 (ja) プログラマブル・ロジック・コントローラ、拡張ユニット、制御方法、プログラム作成支援装置、プログラム作成支援方法およびプログラム
EP2378713B1 (en) Register configurator, register configuration method and field control system
US11409256B2 (en) Information processing device, information processing method and non-transitory computer-readable storage medium for synchronizing edited content of control programs
EP3992735B1 (en) Control device

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

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210303

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210927

R150 Certificate of patent or registration of utility model

Ref document number: 6962229

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150