[go: up one dir, main page]

JP2018144145A - 制御システム、設定装置、設定方法、および設定プログラム - Google Patents

制御システム、設定装置、設定方法、および設定プログラム Download PDF

Info

Publication number
JP2018144145A
JP2018144145A JP2017040667A JP2017040667A JP2018144145A JP 2018144145 A JP2018144145 A JP 2018144145A JP 2017040667 A JP2017040667 A JP 2017040667A JP 2017040667 A JP2017040667 A JP 2017040667A JP 2018144145 A JP2018144145 A JP 2018144145A
Authority
JP
Japan
Prior art keywords
dimensional motion
setting
robot
rotation axis
arm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017040667A
Other languages
English (en)
Other versions
JP6859757B2 (ja
Inventor
徹 小河原
Toru Ogawara
徹 小河原
ジョバノビッチ イゴール
Jovanovic Igor
ジョバノビッチ イゴール
エスクデロ ディエゴ
Escudero-Rodrigo Diego
エスクデロ ディエゴ
カルラス フェラン
Carlas Ferran
カルラス フェラン
ヴィト ラファエル
Vito Raffaele
ヴィト ラファエル
パヤレス サンドラ
Pallares Sandra
パヤレス サンドラ
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 JP2017040667A priority Critical patent/JP6859757B2/ja
Priority to EP17207742.2A priority patent/EP3369532A1/en
Priority to US15/844,633 priority patent/US10625417B2/en
Priority to CN201711379434.7A priority patent/CN108527359B/zh
Publication of JP2018144145A publication Critical patent/JP2018144145A/ja
Application granted granted Critical
Publication of JP6859757B2 publication Critical patent/JP6859757B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
    • 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
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • 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/39085Use of two dimensional maps and feedback of external and joint sensors
    • 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/40476Collision, planning for collision free path
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/14Arm movement, spatial
    • Y10S901/15Jointed arm
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/49Protective device

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Manipulator (AREA)

Abstract

【課題】スカラロボットの動作禁止領域を従来よりも簡略化して設定できる制御システムを提供する。【解決手段】制御システム1は、スカラロボットを備える。スカラロボットは、第1回転軸を中心として回転可能に構成されている第1アームと、第1回転軸と平行に配置され第1アームに設けられている第2回転軸を中心として、回転可能に構成されている第2アームと、第2回転軸と平行な方向に駆動可能に構成され、第2アームに設けられている主軸とを含む。制御システム1は、スカラロボット上の注目点について二次元の動作禁止領域AR2の設定を受け付けるユーザインターフェイスを提供する設定部を含む。動作禁止領域AR2は、主軸に直交する平面上の領域に相当する。制御システム1は、動作禁止領域AR2を主軸の方向に拡張することで三次元に拡張する拡張部を含む。【選択図】図6

Description

本開示は、スカラロボットに対する動作の設定を行うための技術に関する。
FA(Factory Automation)分野において、スカラ(SCARA:Selective Compliance Assembly Robot Arm)ロボットと呼ばれる水平多関節ロボットが普及している。スカラロボットとは、互いに連結している複数のアームが水平面上で動作する産業用ロボットの総称である。
このようなロボットに関し、特開2012−254525号公報(特許文献1)は、「応答性能や位置決め精度を維持しつつ、その可動範囲を広く確保することのできる」スカラロボットを開示している。
スカラロボットを安全に動作させることが望まれている。ロボットを安全に動作させるための技術に関し、特開平05−88743号公報(特許文献2)は、「動作可能か否か自動的に判別し、可動領域以外であればロボットを停止させて安全に作業ができる」産業用ロボットの制御装置を開示している。
特開2012−254525号公報 特開平05−88743号公報
スカラロボットは、PLCなどのコントローラによって制御される。安全性を確保するために、コントローラは、スカラロボットのアームが予め設定されている動作禁止領域に侵入したことに基づいて、スカラロボットの動作が異常であると判断する。当該判断処理は、逐次的に行われるため、動作禁止領域の形状が複雑である場合には、演算時間が想定よりも長くなってしまう。したがって、スカラロボットの動作禁止領域を従来よりも簡略化して設定するための技術が望まれている。
ある局面に従うと、ロボットの制御システムが提供される。上記ロボットは、第1回転軸と、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを含む。上記制御システムは、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを提供する設定部を含み、上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。上記制御システムは、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するための拡張部とを備える。
好ましくは、上記ユーザインターフェイスにおいて設定可能な上記二次元の動作禁止領域の形状は、扇形を含む。上記拡張部は、上記主軸に直交する任意の平面上における上記三次元の動作禁止領域の形状が上記扇形となるように、上記二次元の動作禁止領域を上記三次元の動作禁止領域に拡張する。
好ましくは、上記ユーザインターフェイスは、上記扇形の中心角の設定を受け付け可能に構成されている。
好ましくは、上記ユーザインターフェイスにおいて設定可能な上記二次元の動作禁止領域の形状は、多角形を含む。上記拡張部は、上記主軸に直交する任意の平面上における上記三次元の動作禁止領域の形状が上記多角形となるように、上記二次元の動作禁止領域を上記三次元の動作禁止領域に拡張する。
好ましくは、上記拡張部は、上記主軸の方向における予め定められた下限値と、上記主軸の方向における予め定められた上限値との少なくとも一方に基づいて、上記主軸の方向における上記三次元の動作禁止領域の範囲を決定する。
好ましくは、上記制御システムは、上記所定の注目点が上記三次元の動作禁止領域に含まれた場合に、上記ロボットの駆動を停止するための停止部を含む。
好ましくは、上記停止部は、上記所定の注目点が予め定められた動作可能領域に含まれていない場合に、上記ロボットの駆動を停止する。
他の局面に従うと、ロボットの動作の設定を行うための設定装置が提供される。上記ロボットは、第1回転軸と、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを備える。上記設定装置は、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを提供する設定部を備え、上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。上記コントローラは、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するための拡張部と、上記三次元の動作禁止領域を上記ロボットのコントローラに送信するための通信部とを備える。
他の局面に従うと、ロボットの動作を設定するための設定方法が提供される。上記ロボットは、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを備える。上記設定方法は、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを表示するステップを備える。上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。コントローラは、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するステップと、上記三次元の動作禁止領域を上記ロボットのコントローラに送信するステップとを備える。
他の局面に従うと、ロボットの動作を設定するための設定プログラムが提供される。上記ロボットは、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを備える。上記設定プログラムは、コンピュータに、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを表示するステップを実行させる。上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。上記設定プログラムは、上記コンピュータに、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するステップと、上記三次元の動作禁止領域を上記ロボットのコントローラに送信するステップとを実行させる。
ある局面において、スカラロボットの動作禁止領域を従来よりも簡略化して設定することができる。
本開示の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解される本発明に関する次の詳細な説明から明らかとなるであろう。
第1の実施の形態に従う制御システムの構成例を示す模式図である。 第1の実施の形態に従うスカラロボットの側面図である。 第1の実施の形態に従うスカラロボットの平面図である。 第1の実施の形態に従う制御システムを構成する装置間でのデータの流れを示すシーケンス図である。 第1の実施の形態に従うユーザインターフェイスを示す図である。 第1の実施の形態における動作禁止領域の拡張処理を概略的に示す概念図である。 第1の実施の形態に従うスカラロボット上の注目点を表わす図である。 第1の実施の形態に従う設定装置およびコントローラの機能構成の一例を示す図である。 第1の実施の形態に従うサーボドライバの機能構成の一例を示す図である。 第1の実施の形態に従う設定装置の主要なハードウェア構成を示すブロック図である。 第1の実施の形態に従うコントローラのハードウェア構成例を示すブロック図である。 第1の実施の形態に従う設定装置による設定工程を表わすフローチャートである。 実空間上における動作禁止領域の平面図を表わす。 図13のXIV−XIV線に沿った動作禁止領域の断面図を表わす。 第1の実施の形態に従うコントローラによって制御されるスカラロボットの作業工程を表わすフローチャートである。 第2の実施の形態に従うユーザインターフェイスを示す図である。 第2の実施の形態における動作禁止領域の拡張処理を概略的に示す概念図である。 第3の実施の形態に従うユーザインターフェイスを示す図である。 第3の実施の形態における動作禁止領域の拡張処理を概略的に示す概念図である。
以下、図面を参照しつつ、本発明に従う各実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。したがって、これらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
<第1の実施の形態>
[A.システム構成]
まず、本実施の形態に従う制御システム1の構成例について説明する。図1は、本実施の形態に従う制御システム1の構成例を示す模式図である。
図1を参照して、制御システム1は、設定装置100と、PLC(Programmable Logic Controller)などのコントローラ200と、複数のドライブ装置と、スカラロボット300とを含む。図1の例では、ドライブ装置の一例として、サーボモータ340A〜340Dを駆動するサーボドライバ400A〜400Dを例示する。以下では、サーボモータ340A〜340Dを総称してサーボモータ340ともいう。サーボドライバ400A〜400Dを総称してサーボドライバ400ともいう。ドライブ装置としては、サーボドライバ400に限定されることなく、被駆動装置であるモータに応じて、対応するドライブ装置が採用される。たとえば、誘導モータまたは同期モータを駆動する場合には、ドライブ装置として、インバータドライブなどが採用されてもよい。
設定装置100は、たとえば、PC(Personal Computer)、タブレット端末、または、スマートフォンなどの端末装置である。設定装置100およびコントローラ200は、フィールドネットワークNW1に接続されている。フィールドネットワークNW1には、たとえば、EtherNET(登録商標)が採用される。但し、フィールドネットワークNW1は、EtherNETに限定されず、任意の通信手段が採用され得る。たとえば、設定装置100およびコントローラ200は、信号線で直接接続されてもよい。
コントローラ200およびサーボドライバ400は、デイジーチェーンでフィールドネットワークNW2に接続されている。フィールドネットワークNW2には、たとえば、EtherCAT(登録商標)が採用される。但し、フィールドネットワークNW2は、EtherCATに限定されず、任意の通信手段が採用され得る。一例として、コントローラ200およびサーボドライバ400は、信号線で直接接続されてもよい。また、コントローラ200およびサーボドライバ400は、一体的に構成されてもよい。
サーボドライバ400は、スカラロボット300のサーボモータ340を駆動する。サーボモータ340の回転軸にはエンコーダ(図示しない)が配置されている。当該エンコーダは、サーボモータ340のフィードバック値として、サーボモータの位置、回転速度、累積回転数などをサーボドライバ400へ出力する。但し、サーボモータ340からのフィードバック値は、コントローラ200へ直接入力されてもよい。
なお、図1には、制御システム1が1つのコントローラ200で構成されている例が示されているが、制御システム1は、複数のコントローラ200で構成されてもよい。また、図1には、制御システム1が1つのスカラロボット300で構成されている例が示されているが、制御システム1は、複数のスカラロボット300で構成されてもよい。また、図1には、コントローラ200およびサーボドライバ400が直接的に接続されている例が示されているが、コントローラ200およびサーボドライバ400の間にロボットコントローラなどが設けられてもよい。
[B.スカラロボットの装置構成]
図2および図3を参照して、スカラロボット300について説明する。図2は、スカラロボット300の側面図である。図3は、スカラロボット300の平面図である。
スカラロボット300は、基台320と、第1回転軸322と、第1アーム324と、第2回転軸326と、第2アーム328と、第3回転軸330と、主軸331と、作業ツール332とを含む。
スカラロボット300は、基台320と、第1回転軸322と、第1アーム324と、第2回転軸326と、第2アーム328と、主軸331と、作業ツール332とを含む。
基台320および第1アーム324は、第1回転軸322によって連結されている。第1回転軸322はサーボモータ340A(図1参照)によって回転駆動される。その結果、第1アーム324は、第1回転軸322を中心に回転駆動される。
第1アーム324および第2アーム328は、第2回転軸326によって連結されている。より具体的には、第1アーム324の一端は、第1回転軸322を介して基台320に連結されており、第1アーム324の他端は、第2回転軸326を介して第2アーム328に連結されている。第2回転軸326は、サーボモータ340B(図1参照)によって回転駆動される。その結果、第2アーム328は、第2回転軸326を中心に回転駆動される。第1アーム324と第2アーム328とが連動して回転駆動されることで、第2アーム328は、動作領域AR1内で動作することができる。
説明の便宜のために、以下では、水平面上における所定方向をX方向ともいう。また、水平面上においてX方向に直交する方向をY方向ともいう。X方向およびY方向に直交する方向をZ方向ともいう。すなわち、Z方向は、鉛直方向に相当する。
主軸331は、サーボモータ340C(図1参照)によって、第2回転軸326と平行な方向(すなわち、Z方向)に駆動可能に構成される。また、主軸331は、第3回転軸として機能し、サーボモータ340D(図1参照)によって回転駆動される。すなわち、主軸331は、Z方向に平行に駆動可能に構成されるとともに、Z方向の軸を中心として回転可能に構成される。
主軸331の先端には、ワークWに対して予め定められた作業を行うための作業ツール332が設けられている。ワークWは、製品または半製品である。作業ツール332は、ワークWに作用を及ぼすエンドエフェクタとして機能する。作業ツール332は、主軸331に取り外し可能に構成される。すなわち、主軸331の先端には、作業ツール332を接続するためのインターフェイスが設けられる。
作業ツール332は、たとえば、ワークWのピックアップツールである。一例として、ピックアップツールは、吸引力を利用してワークWを吸着することでワークWをピックアップする。あるいは、ピックアップツールは、ワークWを把持することによりワークWをピックアップする。作業ツール332による作業の一例として、作業ツール332は、ネジなどのワークWを、コンベア上を搬送される製品に取り付ける作業を行う。あるいは、作業ツール332は、第1コンベア上を搬送されるワークWを、第2コンベア上を搬送される容器に順次移動する作業を行う。
[C.制御システム1の動作]
図4〜図7を参照して、制御システム1の動作の一例について説明する。図4は、制御システム1を構成する装置間でのデータの流れを示すシーケンス図である。
図4に示されるように、制御システム1は、スカラロボット300の設定工程と、ワークWに対して予め定められた作業を行うための作業工程とを含む。
設定工程において、ユーザは、スカラロボット300の動作禁止領域をコントローラ200に対して設定する。詳細については後述するが、設定装置100は、Z方向からスカラロボット300を表わした画像を表示し、ユーザは、当該画像に対して動作禁止領域を二次元で絵設定することができる。設定装置100は、設定された二次元の動作禁止領域をZ方向に拡張することで、二次元の動作禁止領域を三次元の動作禁止領域に拡張する。その後、設定装置100は、三次元の動作禁止領域をコントローラ200に設定する。このように、ユーザは、動作禁止領域を二次元で設定することができ、動作禁止領域の設定操作が簡略化される。
作業工程において、スカラロボット300は、ワークに対して予め定められた作業を行う。このとき、コントローラ200は、スカラロボット300上の所定の注目点が動作禁止領域に侵入したか否かを監視する。当該注目点が動作禁止領域に侵入した場合には、コントローラ200は、スカラロボット300の動作が異常であると判断する。
上述のように、三次元の動作禁止領域は、二次元の動作禁止領域をZ方向に拡張したものであるので、三次元の動作禁止領域は単純な形状となる。そのため、コントローラ200は、スカラロボット300上の注目点が三次元の動作禁止領域に含まれたか否かを即座に判断することができる。これにより、演算時間が大幅に短縮される。当該注目点が三次元の動作禁止領域に侵入した場合には、コントローラ200は、スカラロボット300の動作を停止する。
以下では、設定装置100による設定工程と、スカラロボット300による作業工程について詳細に説明する。
(C1.設定工程)
まず、図4〜図6を参照して、設定装置100による設定工程について説明する。
設定装置100には、スカラロボット300の動作設定を行うためのアプリケーションが予めインストールされている。ステップS10において、ユーザは、当該アプリケーションを起動したとする。
ステップS20において、設定装置100は、スカラロボット300の動作設定を行うためのユーザインターフェイスを表示する。図5を参照して、当該ユーザインターフェイスの一例について説明する。図5は、スカラロボット300の動作設定を行うためのユーザインターフェイス140を示す図である。
ユーザインターフェイス140は、スカラロボット300を概略的に表わす画像を表示する。当該画像は、Z方向から見た場合のスカラロボット300を表わす。より具体的には、ユーザインターフェイス140は、第1回転軸322を表わす画像322Aと、第1アーム324を表わす画像324Aと、第2回転軸326を表わす画像326Aと、第2アーム328を表わす画像328Aと、第3回転軸330を表わす画像330Aとを表示する。
また、ユーザインターフェイス140は、スカラロボット300の動作可能領域AR1を表示する。動作可能領域AR1とは、スカラロボット300上の所定の注目点が動作することを許される範囲を示す。典型的には、スカラロボット300の動作可能領域は、不変であるため、スカラロボット300の設計時や設置時などに予め設定される。コントローラ200は、当該注目点が動作可能領域AR1に収まっているか否かを1つの判断材料として、スカラロボット300が正常に動作しているか否かを判断する。
また、ユーザインターフェイス140は、スカラロボット300の動作禁止領域AR2の設定を受け付ける。すなわち、ユーザは、ユーザインターフェイス140上で動作禁止領域AR2を任意に設定することができる。設定可能な動作禁止領域AR2の数は、任意である。上述のように、第1アーム324および第2アーム328は、水平面(すなわち、XY平面)上で動作するため、Z方向から表わされたスカラロボット300がユーザインターフェイス140に表示されることで、ユーザは、動作禁止領域AR2を設定しやすくなる。
図5の例では、扇形の動作禁止領域AR2が設定される。扇形の動作禁止領域AR2のサイズおよび位置は、任意の方法で設定される。たとえば、動作禁止領域AR2の位置およびサイズは、XY平面上における扇形の中心線cの方向と、扇形の中心角θと、第1回転軸322の中心点から扇形の中心点までの距離dとで規定される。中心線cの方向は、入力領域142において入力される。中心角θは、入力領域143において入力される。距離dは、入力領域144において入力される。但し、動作禁止領域AR2は、他の方法で設定されてもよい。たとえば、動作禁止領域AR2は、動作禁止領域AR2に対するドラッグ操作により指定されてもよい。好ましくは、入力領域142〜144内の情報は、当該ドラッグ操作に連動して変わる。
ステップS24において、ユーザは、OKボタン146を押下したとする。これにより、設定装置100は、動作禁止領域AR2の位置およびサイズを記憶する。すなわち、設定装置100は、中心線cの方向と、扇形の中心角θと、距離dとを記憶する。なお、キャンセルボタン147が押下されると、設定装置100は、動作禁止領域AR2の位置およびサイズを記憶せずにユーザインターフェイス140を閉じる。
ステップS30において、設定装置100は、ユーザインターフェイス140に設定された二次元の動作禁止領域AR2を三次元に拡張する。図6は、動作禁止領域AR2の拡張処理を概略的に示す概念図である。
図6に示されるように、設定装置100は、二次元の動作禁止領域AR2をZ方向に拡張することで、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する。異なる言い方をすれば、設定装置100は、Z方向に直交する任意の平面上における動作禁止領域AR2’の形状が動作禁止領域AR2と等しくなるように、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する。図6の例では、Z方向に直交する任意の平面上において動作禁止領域AR2’の形状は、扇形の動作禁止領域AR2と等しくなる。
上述のように、二次元の動作禁止領域AR2は、中心線cの方向と、扇形の中心角θと、距離dとで規定されているので、設定装置100は、予め定められた変換式に従って、中心線cの方向と、扇形の中心角θと、距離dとを実空間を表わす座標系に変換するとともに、当該指標に高さhを付加する。これにより、ユーザインターフェイス140上の座標系で表わされている動作禁止領域AR2が、実空間上の座標系で表わされる動作禁止領域AR2’に変換される。
好ましくは、動作禁止領域AR2’の高さhは、Z方向における下限値および上限値に基づいて決定される。下限値および上限値は、予め設定されてもよいし、ユーザによって任意に設定されてもよい。下限値は、水平面上の所定の基準面(たとえば、地面)から動作禁止領域AR2’の底面までの距離に相当する。上限値は、当該基準面から動作禁止領域AR2’の上面までの距離に相当する。但し、下限値および上限値の両方が設定されている必要はなく、下限値および上限値のいずれか一方のみが設定されていればよい。
なお、典型的には、スカラロボット300の動作可能領域AR1’は、不変であるため、動作可能領域AR1の拡張処理は、実行されてもよいし、実行されなくともよい。動作可能領域AR1の拡張処理が実行される場合、設定装置100は、二次元の動作可能領域AR1をZ方向に拡張する。これにより、二次元の動作可能領域AR1が三次元の動作可能領域AR1’に拡張される。異なる言い方をすれば、設定装置100は、Z方向に直交する任意の平面上における動作可能領域AR1’の形状が動作可能領域AR1と等しくなるように、二次元の動作可能領域AR1を三次元の動作可能領域AR1’に拡張する。
再び図4を参照して、ステップS32において、設定装置100は、設定された動作禁止領域AR2’をコントローラ200に送信する。
コントローラ200は、設定装置100から受信した動作禁止領域AR2’を記憶する。これにより、動作禁止領域AR2’がコントローラ200に設定される。
(C2.作業工程)
引き続き図4を参照しつつ、図7を参照して、スカラロボット300による作業工程について説明する。
ステップS40において、コントローラ200は、スカラロボット300の作業開始操作を受け付けたとする。
ステップS42において、コントローラ200は、予め設定されている作業工程に従って、第1アーム324、第2アーム328、および主軸331の移動先を決定するとともに、スカラロボット300上の所定の注目点の移動先を決定する。図7は、スカラロボット300上の注目点P1,P2を表わす図である。注目点P1は、主軸331に対する作業ツール332の取り付け部分上の点である。すなわち、注目点P1は、地面側における主軸331の先端に上の点に相当する。注目点P2は、地面側における作業ツール332の先端部に相当する。コントローラ200は、予め設定されている作業工程に従って、注目点P1,P2の移動先を決定する。なお、注目点P1,P2は、スカラロボット300上の他の点であってもよく、たとえば、第1アーム324と第2アーム328との接続側とは異なる側の第2アーム328の端部(先端)上の点であってもよい。
ステップS44において、コントローラ200は、ステップS42で決定された移動先に基づいて、第1アーム324、第2アーム328、および主軸331のそれぞれについて現在位置から移動先までの軌道を算出するとともに、注目点P1,P2のそれぞれについて現在位置から移動先までの軌道を算出する。
ステップS46において、コントローラ200は、ステップS42で決定された注目点P1,P2の移動先に基づいて、スカラロボット300の動作が異常であるか否かを判断する。より具体的には、コントローラ200は、注目点P1,P2の移動先が動作可能領域AR1’に含まれており、かつ、注目点P1,P2の移動先が動作禁止領域AR2’に含まれていない場合には、スカラロボット300の動作が正常であると判断する。一方で、コントローラ200は、注目点P1,P2のいずれかの移動先が動作可能領域AR1’から外れている場合、または、注目点P1,P2のいずれかの移動先が動作禁止領域AR2’に含まれている場合には、スカラロボット300の動作が異常であると判断する。
また、コントローラ200は、ステップS44で決定された注目点P1,P2の軌道に基づいて、スカラロボット300の動作が異常であるか否かを判断する。より具体的には、コントローラ200は、注目点P1,P2の軌道が動作可能領域AR1’に全て含まれており、かつ、注目点P1,P2の軌道が動作禁止領域AR2’と重複していない場合には、スカラロボット300の動作が正常であると判断する。一方で、コントローラ200は、注目点P1,P2のいずれかの軌道が少なくとも一部で動作可能領域AR1’から外れている場合、または、注目点P1,P2のいずれかの軌道が動作禁止領域AR2’と少なくとも一部で重複している場合には、スカラロボット300の動作が異常であると判断する。
コントローラ200は、スカラロボット300の動作が異常であると判断した場合には、異常動作に対処するための予め定められた処理を実行する。一例として、コントローラ200は、スカラロボット300の停止処理を実行する。
ステップS50において、コントローラ200は、第1アーム324、第2アーム328、および主軸331のそれぞれを目標の移動先に駆動するための指令値を生成し、当該指令値をサーボドライバ400に送信する。サーボドライバ400は、当該指令値に従ってスカラロボット300を駆動する。
ステップS52において、サーボドライバ400は、第1アーム324、第2アーム328、および主軸331のそれぞれの実位置をコントローラ200に送信する。当該実位置は、たとえば、ロボット座標系で表わされる。
ステップS54において、コントローラ200は、スカラロボット300上の注目点P1,P2の実位置に基づいて、スカラロボット300の動作が異常であるか否かを判断する。より具体的には、コントローラ200は、注目点P1,P2の実位置が動作可能領域AR1’に含まれており、かつ、注目点P1,P2の実位置が動作禁止領域AR2’に含まれていない場合には、スカラロボット300の動作が正常であると判断する。一方で、コントローラ200は、注目点P1,P2のいずれかの実位置が動作可能領域AR1’から外れている場合、または、注目点P1,P2のいずれかの実位置が動作禁止領域AR2’に含まれている場合には、スカラロボット300の動作が異常であると判断する。この場合、コントローラ200は、異常動作に対処するための予め定められた処理を実行する。一例として、コントローラ200は、スカラロボット300の停止処理を実行する。
ステップS50,S52,S54の処理は、スカラロボット300の各構成が目標の移動先に到達するまで順次繰り返される。これにより、コントローラ200は、スカラロボット300の作業過程において、スカラロボット300の動作が異常であるか否かをリアルタイムに判断することができる。
なお、上述では、複数の注目点P1,P2が設定されている前提で説明を行ったが、注目点の数は、1つであってもよいし、3つ以上であってもよい。また、注目点は、厳密な意味での「点」である必要はなく、ある程度の面積または体積を有する領域として規定されてもよい。
[D.制御システム1の機能構成]
図8および図9を参照して、制御システム1を構成する各装置の機能について説明する。図8は、設定装置100およびコントローラ200の機能構成の一例を示す図である。図9は、サーボドライバ400の機能構成の一例を示す図である。
(D1.設定装置100の機能構成)
まず、図8を参照して、設定装置100の機能について説明する。
図8に示されるように、設定装置100は、主要なハードウェア構成として、制御装置101と、記憶装置103とを含む。制御装置101は、機能構成として、設定部152と、拡張部154と、通信部156とを含む。
設定部152は、アプリケーション103Aの起動操作を受け付けたことに基づいて、スカラロボット300の動作設定を実現するための設定プログラムを記憶装置103から読み込み、上述のユーザインターフェイス140を設定装置100の表示部105(図10参照)に表示する。ユーザインターフェイス140は、スカラロボット300上の所定の注目点について二次元の動作禁止領域の設定を受け付ける。設定部152は、ユーザインターフェイス140に対して設定された二次元の動作禁止領域を拡張部154に出力する。
拡張部154は、二次元の動作禁止領域をZ方向に拡張することで、二次元の動作禁止領域を三次元の動作禁止領域に拡張する。すなわち、XY平面上における三次元の動作禁止領域の形状は、二次元の動作禁止領域の形状と等しくなる。動作禁止領域の拡張方法については図6で説明した通りであるので、その説明については繰り返さない。
通信部156は、設定装置100のネットワークインターフェイス(I/F)104(図10参照)を介して、拡張部154から出力された三次元の動作禁止領域を指定された送信先のコントローラ200に送信する。
なお、設定部152、拡張部154、および通信部156は、必ずしも設定装置100に実装される必要はなく、その他の装置に実行されてもよい。一例として、設定装置100の機能構成の少なくとも一部は、コントローラ200に実装されてもよい。あるいは、設定装置100の機能構成の一部は、サーバなどの外部装置に実装されてもよい。この場合、サーバが本実施の形態に従う制御プログラムの処理の一部を実行する所謂クラウドサービスのような形態で設定装置100が構成される。
(D2.コントローラ200の機能構成)
引き続き、図8を参照して、コントローラ200の機能について説明する。
図8に示されるように、コントローラ200は、主要なハードウェア構成として、制御装置201と、記憶装置220とを含む。制御装置201は、機能構成として、通信部252と、入力部253と、動作制御部254と、停止部256とを含む。
通信部252は、後述のフィールドバスコントローラ208,209(図11参照)を制御する。通信部252は、フィールドバスコントローラ208を介して設定装置100から動作禁止領域AR2’を受信し、動作禁止領域AR2’を記憶装置220に格納する。動作禁止領域AR2’は、実空間上の座標系で表わされる。
入力部253は、設定装置100や上位のコントローラからスカラロボット300の移動先(目標位置)を取得する。目標位置は、たとえば、予め定められた作業工程に従って設定装置100や上位のコントローラによって決定される。目標位置は、動作制御部254および停止部256に出力される。
動作制御部254は、入力部253から受け付けた目標位置に従ってスカラロボット300の各アームの軌道を生成し、当該軌道に基づいて各アームの制御指令を生成する。生成された軌道は、停止部256に出力される。生成された制御指令は、サーボドライバ400に出力される。サーボドライバ400は、動作制御部254から受け付けた制御指令に基づいて、スカラロボット300を駆動する。
停止部256は、スカラロボット300上の注目点の位置を監視し、スカラロボット300が異常動作を行った場合に、スカラロボット300を駆動するためのサーボドライバ400を停止する。より具体的には、停止部256は、スカラロボット300上の所定の注目点が動作禁止領域AR2’に含まれた場合に、スカラロボット300の駆動を停止する。これにより、停止部256は、スカラロボット300が意図しない動作を行った場合に、スカラロボット300を停止することができる。なお、スカラロボット300の異常動作を行っているか否かは、スカラロボット300上の注目点の目標位置に基づいて判断されてもよいし、当該注目点の実位置に基づいて判断されてもよい。
好ましくは、停止部256は、動作禁止領域AR2’だけでなく、動作可能領域AR1’に基づいて、スカラロボット300が異常動作を行っているか否かを判断する。より具体的には、停止部256は、スカラロボット300上の所定の注目点が動作禁止領域AR2’に含まれた場合だけでなく、当該注目点が動作可能領域AR1’に含まれていない場合に、スカラロボット300の駆動を停止する。スカラロボット300の異常動作の判断基準として動作可能領域AR1’および動作禁止領域AR2’の両方が用いられることにより、安全性がさらに高められる。
なお、通信部252、入力部253、動作制御部254、および停止部256は、必ずしもコントローラ200に実装される必要はなく、その他の装置に実行されてもよい。一例として、コントローラ200の機能構成の少なくとも一部は、他の装置(たとえば、スカラロボット300)に実装されてもよい。あるいは、コントローラ200の機能構成の少なくとも一部は、サーバなどの外部装置に実装されてもよい。この場合、サーバが本実施の形態に従う制御プログラムの処理の一部を実行する所謂クラウドサービスのような形態でコントローラ200が構成される。
(D3.サーボドライバ400の機能構成)
次に、図9を参照して、本実施の形態に従うコントローラ200に接続されるサーボドライバ400の機能構成の一例について説明する。図9に示す各機能ブロックは、サーボドライバ400の制御装置(図示しない)によって実現される。
本実施の形態に従う制御システム1においては、コントローラ200からサーボドライバ400に対して指令値として目標位置が与えられる。サーボドライバ400は、制御対象であるスカラロボット300の各アームの実位置がコントローラ200からの目標位置と一致するように、サーボモータ340へ供給する駆動電流を制御する。
典型的には、サーボドライバ400においては、位置についてのメインループに加えて、速度についてのマイナーループを含む、制御ループが実装されている。より具体的には、サーボドライバ400は、機能構成として、差分演算部410,414と、位置制御部412と、速度制御部416と、加算部418と、トルクフィルタ420と、電流制御部422と、速度検知部424とを含む。
位置制御部412は、位置についての制御ループを構成する制御演算部であり、差分演算部410において算出される、目標位置と実位置(フィードバック値)との偏差に応じた制御量を出力する。位置制御部412としては、典型的には、P(比例)制御が用いられてもよい。つまり、位置制御部412は、目標位置と実位置との偏差に予め定められた比例係数を乗じた値を制御量として出力する。
速度制御部416は、速度についての制御ループを構成する制御演算部であり、差分演算部414において算出される、位置制御部412からの制御量と速度検知部424からの実速度との偏差に応じた制御量を出力する。速度制御部416としては、典型的には、PI(比例積分)制御が用いられてもよい。つまり、位置制御部412は、位置制御部412からの指令速度と実速度との偏差に対して、比例係数を乗じた値と積分要素によって積分された値との和を制御量として出力する。
トルクフィルタ420は、速度制御部416から出力される制御量(サーボモータ340で発生させるべきトルクの指令値)の単位時間あたりの変化の度合いが大きくなり過ぎないように、時間変化の度合いを緩和する。すなわち、トルクフィルタ420は、速度制御部416から出力される制御量を鈍らせる。トルクフィルタ420からの制御量は電流制御部422に出力される。
電流制御部422は、トルクフィルタ420からの制御量に対応させて、スカラロボット300のサーボモータ340でのスイッチングタイミングを決定する。つまり、電流制御部422は、トルクフィルタ420にて決定された指令トルクを実現できるように、サーボモータ340へ供給する電流の大きさ、タイミング、波形などを決定する。電流制御部422にて決定された制御量に従って、サーボモータ340が駆動される。サーボモータ340から供給される電流によって、サーボモータ340が回転駆動される。
スカラロボット300の各アームの変位を示すフィードバック値として、エンコーダ(図示しない)から実位置が出力される、速度検知部424は、エンコーダからの実位置を微分して実速度を算出する。
[E.制御システム1のハードウェア構成]
図10および図11を参照して、制御システム1を構成する設定装置100およびコントローラ200のハードウェア構成について説明する。
(E1.設定装置100のハードウェア構成)
まず、図10を参照して、設定装置100のハードウェア構成について説明する。図10は、設定装置100の主要なハードウェア構成を示すブロック図である。
設定装置100は、たとえば、汎用のコンピュータで実現される。設定装置100を実現するコンピュータは、制御装置101と、メモリ102と、HDD(Hard Disk Drive)などの記憶装置103と、ネットワークインターフェイス(I/F)104と、表示部105と、操作部106と、メモリカードリーダ・ライタ107とを含む。これらの各部は、内部バス108を介して、互いに通信可能に接続されている。
制御装置101は、記憶装置103などに格納されているプログラム(命令コード)をメモリ102へ展開した上で実行することで、上述の各種機能を実現する。メモリ102および記憶装置103は、それぞれ揮発的および不揮発的にデータを格納する。記憶装置103は、OS(Operating System)に加えて、アプリケーション103Aを保持している。アプリケーション103Aは、上述のユーザインターフェイス140(図5参照)を提供する基本プログラムである。
ネットワークインターフェイス104は、フィールドネットワークNW1(図1参照)を介して、設定装置100とコントローラ200との間でデータを遣り取りする。
表示部105は、アプリケーション103Aの起動指示を受け付けたことに基づいて、上述のユーザインターフェイス140などを表示する。表示部105は、LCD(Liquid Crystal Display)といったディスプレイなどからなる。
操作部106は、ユーザ操作を受け付け、その受け付けた操作を示す内部指令を制御装置101などへ出力する。操作部106は、典型的には、キーボード、マウス、タッチパネル、タブレット、音声認識装置などからなる。
メモリカードリーダ・ライタ107は、メモリカード107Aからデータを読み出し、およびメモリカード107Aへデータを書き込む。メモリカード107Aとしては、SD(Secure Digital)カードなどの公知の記録媒体を採用できる。
(E2.コントローラ200のハードウェア構成)
次に、図11を参照して、コントローラ200のハードウェア構成について説明する。図11は、コントローラ200のハードウェア構成例を示すブロック図である。
コントローラ200は、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などの制御装置201と、チップセット202と、主メモリ206と、記憶装置220と、ローカルネットワークコントローラ203と、USB(Universal Serial Bus)コントローラ204と、メモリカードインターフェイス205と、内部バスコントローラ210と、フィールドバスコントローラ208,209と、I/Oユニット211−1,211−2,…とを含む。
制御装置201は、記憶装置220に格納された各種プログラムを読み出して、主メモリ206に展開して実行することで、制御対象に応じた制御、および、本実施の形態に従う処理などを実現する。チップセット202は、制御装置201と各コンポーネントを制御することで、コントローラ200全体としての処理を実現する。
記憶装置220は、たとえば、二次記憶装置である。記憶装置220には、PLCエンジンを実現するためのシステムプログラムに加えて、PLCエンジンを利用して実行されるユーザプログラム221などが格納される。ユーザプログラム221は、論理的な演算を主とするシーケンスシーケンスプログラム222、位置制御や速度制御などの数値的な演算を主とするモーションプログラム223、スカラロボット300の設定プログラム224などを含む。
ローカルネットワークコントローラ203は、ローカルネットワークを介した他の装置(たとえば、サーバーなど)との間のデータの遣り取りを制御する。USBコントローラ204は、USB接続を介して他の装置(たとえば、PC(Personal Computer)など)との間のデータの遣り取りを制御する。
メモリカードインターフェイス205は、メモリカード216を着脱可能に構成されており、メモリカード216に対してデータを書込み、メモリカード216から各種データ(ユーザプログラムやトレースデータなど)を読出すことが可能になっている。
内部バスコントローラ210は、コントローラ200に搭載されるI/Oユニット211−1,211−2,…との間でデータを遣り取りするインターフェイスである。
フィールドバスコントローラ208は、フィールドネットワークNW1(図1参照)を介した他の装置(たとえば、設定装置100など)との間のデータの遣り取りを制御する。同様に、フィールドバスコントローラ209は、フィールドネットワークNW2(図1参照)を介した他の装置(たとえば、スカラロボット300やサーボドライバ400)との間のデータの遣り取りを制御する。
図11には、制御装置201がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(たとえば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、コントローラ200の主要部を、汎用的なアーキテクチャに従うハードウェア(たとえば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
[F.制御システム1の制御構造]
上述したように、制御システム1が実行する処理は、主に、設定工程と、作業工程とを含む。以下では、図12〜図15を参照して、設定装置100による設定工程のフローと、スカラロボット300による作業工程のフローとについて順に説明する。
(F1.設定工程のフロー)
まず、図12を参照して、設定装置100による設定工程のフローについて説明する。図12は、設定装置100による設定工程を表わすフローチャートである。図12の処理は、設定装置100の制御装置101(図8参照)がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、FPGA、回路素子またはその他のハードウェアによって実行されてもよい。
ステップS110において、制御装置101は、スカラロボット300の動作を設定するためのアプリケーションの起動操作を受け付けたか否かを判断する。当該起動操作は、たとえば、操作部106(図10参照)によって受け付けられる。制御装置101は、スカラロボット300の動作を設定するためのアプリケーションの起動操作を受け付けたと判断した場合(ステップS110においてYES)、制御をステップS112に切り替える。そうでない場合には(ステップS110においてNO)、制御装置101は、ステップS110の処理を再び実行する。
ステップS112において、制御装置101は、上述の設定部152(図8参照)として、設定装置100の表示部105(図10参照)にユーザインターフェイス140(図5参照)を表示する。ユーザインターフェイス140には、Z方向からスカラロボット300を表わした画像が表示され、ユーザは、当該画像に対してスカラロボット300の動作禁止領域AR2を設定することができる。一例として、ユーザは、XY平面上における扇形の中心線cの方向と、扇形の中心角θと、第1回転軸322の中心点からの距離dとを設定することで扇形の動作禁止領域AR2を設定することができる。
ステップS120において、制御装置101は、動作禁止領域AR2の設定を確定する操作を受け付けたか否かを判断する。一例として、ユーザは、ユーザインターフェイス140上のOKボタン146を押下することにより、動作禁止領域AR2の設定を確定することができる。制御装置101は、動作禁止領域AR2の設定を確定する操作を受け付けたと判断した場合(ステップS120においてYES)、制御をステップS122に切り替える。そうでない場合には(ステップS120においてNO)、制御装置101は、制御をステップS120の処理を再び実行する。
ステップS122において、制御装置101は、上述の拡張部154(図8参照)として、設定された二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する。このとき、制御装置101は、ユーザインターフェイス140上の座標系で示される動作禁止領域AR2を実空間上の座標系に変換する。
図13は、実空間上における動作禁止領域AR2’の平面図を表わす。図14は、図13のXIV−XIV線に沿った動作禁止領域AR2’の断面図を表わす。
図13および図14に示されるように、実空間での動作禁止領域AR2’は、第1回転軸322の中心点P5から扇形の中心点P6までの距離dと、扇形の中心角θと、扇形の中心線cの方向(角度)と、水平面上の所定の基準面(たとえば、地面)からの下限までの下限値Zminと、Z方向における高さhとで規定される。典型的には、距離d、中心角θ、中心線cの方向は、ユーザインターフェイス140において設定される。下限値Zminおよび高さhは、予め設定されていてもよいし、ユーザインターフェイス140上で設定可能に実装されてもよい。
ステップS124において、制御装置101は、上述の通信部156(図8参照)として、動作禁止領域AR2’を指定されたコントローラ200に送信する。このとき、動作可能領域AR1’が指定されたコントローラ200にさらに送信されてもよい。
(F2.作業工程のフロー)
次に、図15を参照して、コントローラ200によって制御されるスカラロボット300の作業工程のフローについて説明する。図15は、コントローラ200によって制御されるスカラロボット300の作業工程を表わすフローチャートである。図15の処理は、コントローラ200の制御装置201(図8参照)がプログラムを実行することにより実現される。他の局面において、処理の一部または全部が、FPGA、回路素子またはその他のハードウェアによって実行されてもよい。
ステップS150において、制御装置201は、スカラロボット300上の注目点P1(図13,図14参照)における実位置をサーボドライバ400から取得する。当該実位置は、実空間上の座標値で表わされる。典型的には、当該実位置は、座標値(x1、y1、z1)で表わされる。座標値x1は、x方向の座標に相当する。座標値y1は、y方向の座標に相当する。座標値z1は、z方向の座標に相当する。
ステップS152において、制御装置201は、注目点P1が動作禁止領域AR2’に含まれたか否かを判断する。より具体的には、制御装置201は、注目点P1の座標値x1,y1が距離dと中心線cの方向と中心角θとで規定される扇形領域に含まれ、かつ、下記式(1)を満たす場合に、注目点P1が動作禁止領域AR2’に含まれたと判断する。
Zmin<z1<Zmin+h・・・(1)
制御装置201は、注目点P1が動作禁止領域AR2’に含まれたと判断した場合(ステップS152においてYES)、制御をステップS162に切り替える。そうでない場合には(ステップS152においてNO)、制御装置201は、制御をステップS160に切り替える。
ステップS160において、制御装置201は、注目点P1が動作可能領域AR1’に含まれたか否かを判断する。より具体的には、制御装置201は、下記式(2)〜(5)のいずれかが満たされた場合に注目点P1が動作可能領域AR1’に含まれないと判断する。式(2),(3)に示される距離d1は、XY平面における中心点P5から注目点P1までの距離に相当する。
d1<Rmin・・・(2)
Rmax<d1・・・(3)
z1<Zmin・・・(4)
Zmin+h<z1・・・(5)
制御装置201は、注目点P1が動作可能領域AR1’から外れたと判断した場合(ステップS160においてYES)、制御をステップS162に切り替える。そうでない場合には(ステップS160においてNO)、制御装置201は、制御をステップS150に切り替える。
ステップS162として、制御装置201は、上述の停止部256(図8参照)として、異常動作に対処するための予め定められた処理を実行する。一例として、制御装置201は、スカラロボット300の停止処理を実行する。あるいは、制御装置201は、異常動作の報知処理を実行する。異常動作は、警告音や音声などの音によって報知されてもよいし、エラー画面などの表示によって報知されてもよい。
なお、上述では、スカラロボット300上の注目点P1の実位置に基づいて、スカラロボット300の動作異常を判断するフローについて説明を行ったが、当該動作異常は、注目点P1の移動先に基づいて判断されてもよい。あるいは、当該動作異常は、注目点P1の現在位置から移動先までの軌跡に基づいて判断されてもよい。
[G.第1の実施の形態のまとめ]
以上のようにして、本実施の形態に従う設定装置100は、スカラロボット300の動作禁止領域を設定するためのユーザインターフェイス140を提供する。ユーザインターフェイス140は、Z方向からスカラロボット300を表わした画像を表示し、ユーザは、当該画像に対して動作禁止領域AR2を二次元で設定することができる。設定装置100は、設定された二次元の動作禁止領域AR2をZ方向に拡張し、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する。その後、設定装置100は、三次元の動作禁止領域AR2’をコントローラ200に設定する。このように、ユーザは、動作禁止領域AR2を二次元で設定することができ、動作禁止領域の設定操作が簡略化される。
その後、スカラロボット300は、ワークに対して予め定められた作業を行う。このとき、コントローラ200は、スカラロボット300上の所定の注目点が動作禁止領域AR2’に侵入したか否かを監視する。当該注目点が動作禁止領域AR2’に侵入した場合には、コントローラ200は、スカラロボット300の動作が異常であると判断する。
上述のように、三次元の動作禁止領域AR2’は、二次元の動作禁止領域AR2をZ方向に拡張したものであるので、三次元の動作禁止領域AR2’は単純な形状となる。そのため、コントローラ200は、スカラロボット300上の注目点が三次元の動作禁止領域AR2’に含まれたか否かを即座に判断することができる。これにより、演算時間が大幅に短縮される。
<第2の実施の形態>
[A.概要]
第1の実施の形態に従うユーザインターフェイス140は、扇形の動作禁止領域AR2の設定を受け付けるように構成されていた。これに対して、第2の実施の形態に従うユーザインターフェイス140は、多角形の動作禁止領域AR2の設定を受け付けるように構成される。
第2の実施の形態に従う制御システム1のハードウェア構成などその他の点については第1の実施の形態に従う制御システム1と同じであるので、以下ではそれらの説明については繰り返さない。
[B.ユーザインターフェイス140]
図16を参照して、第2の実施の形態に従うユーザインターフェイス140について説明する。図16は、第2の実施の形態に従うユーザインターフェイス140を示す図である。
本実施の形態においては、ユーザは、ユーザインターフェイス140上で多角形の動作禁止領域AR2を設定することができる。図16の例では、長方形の動作禁止領域AR2が設定されているが、設定され得る動作禁止領域AR2の形状は、正方形であってもよいし、六角形であってもよい。あるいは、設定され得る動作禁止領域AR2の形状は、円や楕円であってもよい。動作禁止領域AR2のサイズおよび位置は、任意の方法で設定される。たとえば、動作禁止領域AR2の位置およびサイズは、動作禁止領域AR2に対するドラッグ操作により設定される。図16の例では、ユーザは、位置P8で操作部106を押下し、押下状態を維持したまま操作部106を位置P9まで移動させることで、動作禁止領域AR2を設定している。
ユーザがOKボタン146を押下したことに基づいて、設定装置100は、動作禁止領域AR2の位置およびサイズを記憶する。一例として、設定装置100は、位置P8の座標値と位置P9の座標値とを記憶する。あるいは、設定装置100は、位置P8の座標値および位置P9の座標値のいずれか一方と、動作禁止領域AR2の横幅および縦幅を記憶する。
キャンセルボタン147が押下されると、設定装置100は、二次元の動作禁止領域AR2の位置およびサイズを記憶せずにユーザインターフェイス140を閉じる。
[C.動作禁止領域の拡張処理]
図17を参照して、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する処理について説明する。図17は、第2の実施の形態における動作禁止領域AR2の拡張処理を概略的に示す概念図である。
図17に示されるように、設定装置100は、二次元の動作禁止領域AR2をZ方向に拡張することで、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する。異なる言い方をすれば、設定装置100は、Z方向に直交する任意の平面上における三次元の動作禁止領域AR2’の形状が二次元の動作禁止領域AR2と等しくなるように、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する。その結果、図17の例では、XY平面における動作禁止領域AR2’の形状は、多角形の動作禁止領域AR2と等しくなる。
上述のように、動作禁止領域AR2は、位置P8の座標値と、位置P9の座標値とで規定されているので、設定装置100は、予め定められた変換式に基づいて、位置P8の座標値と位置P9の座標値とを実空間を表わす座標系に変換するとともに、当該座標系に高さhを付加する。これにより、設定装置100は、ユーザインターフェイス140上の座標系で表わされている動作禁止領域AR2を、実空間上の座標系で表わされる動作禁止領域AR2’に変換することができる。
好ましくは、動作禁止領域AR2’の高さhは、Z方向における下限値および上限値に基づいて決定される。下限値および上限値は、予め設定されてもよいし、ユーザによって任意に設定されてもよい。下限値は、水平面上の所定の基準面(たとえば、地面)から動作禁止領域AR2’の底面までの距離に相当する。上限値は、当該基準面から動作禁止領域AR2’の上面までの距離に相当する。但し、下限値および上限値の両方が設定されている必要はなく、下限値および上限値のいずれか一方のみが設定されていればよい。
[D.第2の実施の形態のまとめ]
以上のようにして、本実施の形態に従うユーザインターフェイス140は、多角形の動作禁止領域の設定を受け付ける。ユーザは、ユーザインターフェイス140上で様々な形状の動作禁止領域を設定することができるので、動作禁止領域をより正確に設定することができる。
<第3の実施の形態>
[A.概要]
第1の実施の形態に従うユーザインターフェイス140は、扇形の動作禁止領域AR2の設定を受け付けるように構成されていた。これに対して、第3の実施の形態に従うユーザインターフェイス140は、動作可能領域AR1に対する境界の設定により二次元の動作禁止領域AR2の設定を受け付けるように構成される。
第3の実施の形態に従う制御システム1のハードウェア構成などその他の点については第1の実施の形態に従う制御システム1と同じであるので、以下ではそれらの説明については繰り返さない。
[B.ユーザインターフェイス140]
図18を参照して、第3の実施の形態に従うユーザインターフェイス140について説明する。図18は、第3の実施の形態に従うユーザインターフェイス140を示す図である。
本実施の形態においては、動作可能領域AR1に対して境界BAを設定することで動作禁止領域AR2が設定される。図18の例では、境界BAのY方向の正側が動作禁止領域AR2として設定されているが、境界BAのY方向の負側が動作禁止領域AR2として設定されてもよい。また、図18の例では、境界BAが直線で示されているが、境界BAは、曲線など他の線で表わされてもよい。
境界BAの位置は、任意の方法で設定される。たとえば、ユーザは、境界BAに対するドラッグ操作により境界BAを移動することができる。あるいは、ユーザは、Y方向における座標値を入力することにより境界BAを設定してもよい。
ユーザがOKボタン146を押下したことに基づいて、設定装置100は、動作禁止領域AR2を記憶する。キャンセルボタン147が押下されると、設定装置100は、二次元の動作禁止領域AR2を記憶せずにユーザインターフェイス140を閉じる。
[C.動作禁止領域の拡張処理]
図19を参照して、二次元の動作禁止領域AR2を三次元の動作禁止領域AR2’に拡張する処理について説明する。図19は、第3の実施の形態における動作禁止領域AR2の拡張処理を概略的に示す概念図である。
図19に示されるように、設定装置100は、境界BAをZ方向に拡張することで、境界BAを境界BA’に拡張する。境界BA’よりもY軸の負側が動作可能領域AR1’に設定され、境界BA’よりもY軸の正側が動作禁止領域AR2’として設定される。
好ましくは、動作禁止領域AR2’の高さhは、Z方向における下限値および上限値に基づいて決定される。下限値および上限値は、予め設定されてもよいし、ユーザによって任意に設定されてもよい。下限値は、水平面上の所定の基準面(たとえば、地面)から動作禁止領域AR2’の底面までの距離に相当する。上限値は、当該基準面から動作禁止領域AR2’の上面までの距離に相当する。但し、下限値および上限値の両方が設定されている必要はなく、下限値および上限値のいずれか一方のみが設定されていればよい。
[D.第3の実施の形態のまとめ]
以上のようにして、本実施の形態に従うユーザインターフェイス140は、境界BAの設定を受け付けることで動作禁止領域の設定を受け付ける。これにより、ユーザは、動作禁止領域の設定をより簡単な操作で行うことができる。
今回開示された実施の形態は全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
1 制御システム、100 設定装置、101,201 制御装置、102 メモリ、103,220 記憶装置、103A アプリケーション、104 ネットワークインターフェイス、105 表示部、106 操作部、107 メモリカードリーダ・ライタ、107A,216 メモリカード、108 内部バス、140 ユーザインターフェイス、142〜144 入力領域、146 OKボタン、147 キャンセルボタン、152 設定部、154 拡張部、156,252 通信部、200 コントローラ、202 チップセット、203 ローカルネットワークコントローラ、204 USBコントローラ、205 メモリカードインターフェイス、206 主メモリ、208,209 フィールドバスコントローラ、210 内部バスコントローラ、211 I/Oユニット、221 ユーザプログラム、222 シーケンスシーケンスプログラム、223 モーションプログラム、224 設定プログラム、254 動作制御部、256 停止部、300 スカラロボット、320 基台、322 第1回転軸、322A,324A,326A,328A,330A 画像、324 第1アーム、326 第2回転軸、328 第2アーム、330 第3回転軸、331 主軸、332 作業ツール、340,340A〜340D サーボモータ、400,400A〜400D サーボドライバ、410,414 差分演算部、412 位置制御部、416 速度制御部、418 加算部、420 トルクフィルタ、422 電流制御部、424 速度検知部。
他の局面に従うと、ロボットの動作の設定を行うための設定装置が提供される。上記ロボットは、第1回転軸と、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを備える。上記設定装置は、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを提供する設定部を備え、上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。上記設定装置は、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するための拡張部と、上記三次元の動作禁止領域を上記ロボットのコントローラに送信するための通信部とを備える。
他の局面に従うと、ロボットの動作を設定するための設定方法が提供される。上記ロボットは、第1回転軸と、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを備える。上記設定方法は、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを表示するステップを備える。上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。上記設定方法は、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するステップと、上記三次元の動作禁止領域を上記ロボットのコントローラに送信するステップとを備える。
他の局面に従うと、ロボットの動作を設定するための設定プログラムが提供される。上記ロボットは、第1回転軸と、上記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、上記第1回転軸と平行に配置されており、上記第1アームに設けられている第2回転軸と、上記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、上記第2回転軸と平行な方向に駆動可能に構成され、上記第2アームに設けられている主軸とを備える。上記設定プログラムは、コンピュータに、上記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを表示するステップを実行させる。上記二次元の動作禁止領域は、上記主軸に直交する平面上の領域に相当する。上記設定プログラムは、上記コンピュータに、さらに、上記二次元の動作禁止領域を上記主軸の方向に拡張することで、上記二次元の動作禁止領域を三次元の動作禁止領域に拡張するステップと、上記三次元の動作禁止領域を上記ロボットのコントローラに送信するステップとを実行させる。
第1アーム324および第2アーム328は、第2回転軸326によって連結されている。より具体的には、第1アーム324の一端は、第1回転軸322を介して基台320に連結されており、第1アーム324の他端は、第2回転軸326を介して第2アーム328に連結されている。第2回転軸326は、サーボモータ340B(図1参照)によって回転駆動される。その結果、第2アーム328は、第2回転軸326を中心に回転駆動される。第1アーム324と第2アーム328とが連動して回転駆動されることで、第2アーム328は、動作可能領域AR1内で動作することができる。
ユーザインターフェイス140は、スカラロボット300を概略的に表わす画像を表示する。当該画像は、Z方向から見た場合のスカラロボット300を表わす。より具体的には、ユーザインターフェイス140は、基台320を表わす画像320Aと、第1回転軸322を表わす画像322Aと、第1アーム324を表わす画像324Aと、第2回転軸326を表わす画像326Aと、第2アーム328を表わす画像328Aと、第3回転軸330を表わす画像330Aとを表示する。
ステップS42において、コントローラ200は、予め設定されている作業工程に従って、第1アーム324、第2アーム328、および主軸331の移動先を決定するとともに、スカラロボット300上の所定の注目点の移動先を決定する。図7は、スカラロボット300上の注目点P1,P2を表わす図である。注目点P1は、主軸331に対する作業ツール332の取り付け部分上の点である。すなわち、注目点P1は、地面側における主軸331の先端上の点に相当する。注目点P2は、地面側における作業ツール332の先端部に相当する。コントローラ200は、予め設定されている作業工程に従って、注目点P1,P2の移動先を決定する。なお、注目点P1,P2は、スカラロボット300上の他の点であってもよく、たとえば、第1アーム324と第2アーム328との接続側とは異なる側の第2アーム328の端部(先端)上の点であってもよい。
なお、設定部152、拡張部154、および通信部156は、必ずしも設定装置100に実装される必要はなく、その他の装置に実されてもよい。一例として、設定装置100の機能構成の少なくとも一部は、コントローラ200に実装されてもよい。あるいは、設定装置100の機能構成の一部は、サーバなどの外部装置に実装されてもよい。この場合、サーバが本実施の形態に従う制御プログラムの処理の一部を実行する所謂クラウドサービスのような形態で設定装置100が構成される。
なお、通信部252、入力部253、動作制御部254、および停止部256は、必ずしもコントローラ200に実装される必要はなく、その他の装置に実されてもよい。一例として、コントローラ200の機能構成の少なくとも一部は、他の装置(たとえば、スカラロボット300)に実装されてもよい。あるいは、コントローラ200の機能構成の少なくとも一部は、サーバなどの外部装置に実装されてもよい。この場合、サーバが本実施の形態に従う制御プログラムの処理の一部を実行する所謂クラウドサービスのような形態でコントローラ200が構成される。
典型的には、サーボドライバ400においては、位置についてのメインループに加えて、速度についてのマイナーループを含む、制御ループが実装されている。より具体的には、サーボドライバ400は、機能構成として、差分演算部410,414と、位置制御部412と、速度制御部416と、トルクフィルタ420と、電流制御部422と、速度検知部424とを含む。
速度制御部416は、速度についての制御ループを構成する制御演算部であり、差分演算部414において算出される、位置制御部412からの制御量と速度検知部424からの実速度との偏差に応じた制御量を出力する。速度制御部416としては、典型的には、PI(比例積分)制御が用いられてもよい。つまり、速度制御部416は、差分演算部414からの指令速度と実速度との偏差に対して、比例係数を乗じた値と積分要素によって積分された値との和を制御量として出力する。
記憶装置220は、たとえば、二次記憶装置である。記憶装置220には、PLCエンジンを実現するためのシステムプログラムに加えて、PLCエンジンを利用して実行されるユーザプログラム221などが格納される。ユーザプログラム221は、論理的な演算を主とするシーケンスプログラム222、位置制御や速度制御などの数値的な演算を主とするモーションプログラム223、スカラロボット300の設定プログラム224などを含む。
ステップS150において、制御装置201は、スカラロボット300上の注目点P1(図13,図14参照)における実位置をサーボドライバ400から取得する。当該実位置は、実空間上の座標値で表わされる。典型的には、当該実位置は、座標値(x1、y1、z1)で表わされる。座標値x1は、方向の座標に相当する。座標値y1は、方向の座標に相当する。座標値z1は、方向の座標に相当する。
1 制御システム、100 設定装置、101,201 制御装置、102 メモリ、103,220 記憶装置、103A アプリケーション、104 ネットワークインターフェイス、105 表示部、106 操作部、107 メモリカードリーダ・ライタ、107A,216 メモリカード、108 内部バス、140 ユーザインターフェイス、142〜144 入力領域、146 OKボタン、147 キャンセルボタン、152 設定部、154 拡張部、156,252 通信部、200 コントローラ、202 チップセット、203 ローカルネットワークコントローラ、204 USBコントローラ、205 メモリカードインターフェイス、206 主メモリ、208,209 フィールドバスコントローラ、210 内部バスコントローラ、211 I/Oユニット、221 ユーザプログラム、222 シーケンスシーケンスプログラム、223 モーションプログラム、224 設定プログラム、254 動作制御部、256 停止部、300 スカラロボット、320 基台、322 第1回転軸、322A,324A,326A,328A,330A 画像、324 第1アーム、326 第2回転軸、328 第2アーム、330 第3回転軸、331 主軸、332 作業ツール、340,340A〜340D サーボモータ、400,400A〜400D サーボドライバ、410,414 差分演算部、412 位置制御部、416 速度制御部、420 トルクフィルタ、422 電流制御部、424 速度検知部。

Claims (10)

  1. ロボットの制御システムであって、
    前記ロボットは、
    第1回転軸と、
    前記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、
    前記第1回転軸と平行に配置されており、前記第1アームに設けられている第2回転軸と、
    前記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、
    前記第2回転軸と平行な方向に駆動可能に構成され、前記第2アームに設けられている主軸とを含み、
    前記制御システムは、
    前記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを提供する設定部を含み、前記二次元の動作禁止領域は、前記主軸に直交する平面上の領域に相当し、さらに、
    前記二次元の動作禁止領域を前記主軸の方向に拡張することで、前記二次元の動作禁止領域を三次元の動作禁止領域に拡張するための拡張部とを備える、制御システム。
  2. 前記ユーザインターフェイスにおいて設定可能な前記二次元の動作禁止領域の形状は、扇形を含み、
    前記拡張部は、前記主軸に直交する任意の平面上における前記三次元の動作禁止領域の形状が前記扇形となるように、前記二次元の動作禁止領域を前記三次元の動作禁止領域に拡張する、請求項1に記載の制御システム。
  3. 前記ユーザインターフェイスは、前記扇形の中心角の設定を受け付け可能に構成されている、請求項2に記載の制御システム。
  4. 前記ユーザインターフェイスにおいて設定可能な前記二次元の動作禁止領域の形状は、多角形を含み、
    前記拡張部は、前記主軸に直交する任意の平面上における前記三次元の動作禁止領域の形状が前記多角形となるように、前記二次元の動作禁止領域を前記三次元の動作禁止領域に拡張する、請求項1〜3のいずれか1項に記載の制御システム。
  5. 前記拡張部は、前記主軸の方向における予め定められた下限値と、前記主軸の方向における予め定められた上限値との少なくとも一方に基づいて、前記主軸の方向における前記三次元の動作禁止領域の範囲を決定する、請求項1〜4のいずれか1項に記載の制御システム。
  6. 前記制御システムは、前記所定の注目点が前記三次元の動作禁止領域に含まれた場合に、前記ロボットの駆動を停止するための停止部を含む、請求項1〜5のいずれか1項に記載の制御システム。
  7. 前記停止部は、前記所定の注目点が予め定められた動作可能領域に含まれていない場合に、前記ロボットの駆動を停止する、請求項6に記載の制御システム。
  8. ロボットの動作の設定を行うための設定装置であって、
    前記ロボットは、
    第1回転軸と、
    前記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、
    前記第1回転軸と平行に配置されており、前記第1アームに設けられている第2回転軸と、
    前記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、
    前記第2回転軸と平行な方向に駆動可能に構成され、前記第2アームに設けられている主軸とを備え、
    前記設定装置は、
    前記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを提供する設定部を備え、前記二次元の動作禁止領域は、前記主軸に直交する平面上の領域に相当し、さらに、
    前記二次元の動作禁止領域を前記主軸の方向に拡張することで、前記二次元の動作禁止領域を三次元の動作禁止領域に拡張するための拡張部と、
    前記三次元の動作禁止領域を前記ロボットのコントローラに送信するための通信部とを備える、設定装置。
  9. ロボットの動作を設定するための設定方法であって、
    前記ロボットは、
    第1回転軸と、
    前記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、
    前記第1回転軸と平行に配置されており、前記第1アームに設けられている第2回転軸と、
    前記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、
    前記第2回転軸と平行な方向に駆動可能に構成され、前記第2アームに設けられている主軸とを備え、
    前記設定方法は、
    前記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを表示するステップを備え、前記二次元の動作禁止領域は、前記主軸に直交する平面上の領域に相当し、さらに、
    前記二次元の動作禁止領域を前記主軸の方向に拡張することで、前記二次元の動作禁止領域を三次元の動作禁止領域に拡張するステップと、
    前記三次元の動作禁止領域を前記ロボットのコントローラに送信するステップとを備える、設定方法。
  10. ロボットの動作を設定するための設定プログラムであって、
    前記ロボットは、
    第1回転軸と、
    前記第1回転軸を中心として当該第1回転軸と直交する平面上において回転可能に構成されている第1アームと、
    前記第1回転軸と平行に配置されており、前記第1アームに設けられている第2回転軸と、
    前記第2回転軸を中心として当該第2回転軸と直交する平面上において回転可能に構成されている第2アームと、
    前記第2回転軸と平行な方向に駆動可能に構成され、前記第2アームに設けられている主軸とを備え、
    前記設定プログラムは、コンピュータに、
    前記ロボット上の所定の注目点について二次元の動作禁止領域の設定を受け付けるためのユーザインターフェイスを表示するステップを実行させ、前記二次元の動作禁止領域は、前記主軸に直交する平面上の領域に相当し、
    前記設定プログラムは、前記コンピュータに、さらに、
    前記二次元の動作禁止領域を前記主軸の方向に拡張することで、前記二次元の動作禁止領域を三次元の動作禁止領域に拡張するステップと、
    前記三次元の動作禁止領域を前記ロボットのコントローラに送信するステップとを実行させる、設定プログラム。
JP2017040667A 2017-03-03 2017-03-03 制御システム、設定装置、設定方法、および設定プログラム Expired - Fee Related JP6859757B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017040667A JP6859757B2 (ja) 2017-03-03 2017-03-03 制御システム、設定装置、設定方法、および設定プログラム
EP17207742.2A EP3369532A1 (en) 2017-03-03 2017-12-15 Control system, setting device, setting method, and storage device
US15/844,633 US10625417B2 (en) 2017-03-03 2017-12-18 Control system, setting device, setting method, and storage device
CN201711379434.7A CN108527359B (zh) 2017-03-03 2017-12-19 控制系统、设定装置、设定方法以及存储装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017040667A JP6859757B2 (ja) 2017-03-03 2017-03-03 制御システム、設定装置、設定方法、および設定プログラム

Publications (2)

Publication Number Publication Date
JP2018144145A true JP2018144145A (ja) 2018-09-20
JP6859757B2 JP6859757B2 (ja) 2021-04-14

Family

ID=60781605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017040667A Expired - Fee Related JP6859757B2 (ja) 2017-03-03 2017-03-03 制御システム、設定装置、設定方法、および設定プログラム

Country Status (4)

Country Link
US (1) US10625417B2 (ja)
EP (1) EP3369532A1 (ja)
JP (1) JP6859757B2 (ja)
CN (1) CN108527359B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020163492A (ja) * 2019-03-28 2020-10-08 本田技研工業株式会社 動作領域制限方法、ロボット制御装置、及び報知体
CN112223254A (zh) * 2020-08-21 2021-01-15 南京航空航天大学 一种并联被动柔顺装置
WO2022185830A1 (ja) * 2021-03-03 2022-09-09 村田機械株式会社 モータシステム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019126465B4 (de) * 2018-10-01 2021-02-11 KBee AG Verfahren und Vorrichtung zur Trajektorienbestimmung für serielle Manipulatoren
CN110948483A (zh) * 2019-11-20 2020-04-03 广东水利电力职业技术学院(广东省水利电力技工学校) 一种EtherCAT总线三轴SCARA机械臂控制系统
CN112518714B (zh) * 2020-11-05 2022-03-08 浙江工业大学 一种上下料机械手安全区快速在线示教方法
JP7494719B2 (ja) * 2020-12-09 2024-06-04 オムロン株式会社 制御装置、制御方法、プログラム
JP2024140782A (ja) * 2023-03-28 2024-10-10 セイコーエプソン株式会社 設定装置、設定方法および設定プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6151204A (ja) * 1984-08-20 1986-03-13 Kobe Steel Ltd ロボツトの動作空間識別システム
JPS63109996A (ja) * 1986-05-15 1988-05-14 三菱電機株式会社 ロボット作業域監視装置
WO2016103307A1 (ja) * 2014-12-26 2016-06-30 川崎重工業株式会社 ロボットの動作プログラム生成方法及びロボットの動作プログラム生成装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0588743A (ja) 1991-09-30 1993-04-09 Mitsubishi Electric Corp 産業用ロボツトの制御装置
DE19625637A1 (de) * 1996-06-26 1998-01-02 Brink Carsten Dipl Ing Ten Kollisionsvermeidung und Trajektorienplanung beim Mehrroboterbetrieb mit Hilfe von Kollisionsbereichen
US20030131791A1 (en) * 2000-11-21 2003-07-17 Schultz Carl L. Multiple orifice applicator system and method of using same
JP4451381B2 (ja) * 2005-12-02 2010-04-14 ヤマザキマザック株式会社 Nc加工装置のnc加工プログラム作成方法及びnc加工プログラム作成装置
EP2075096A1 (de) * 2007-12-27 2009-07-01 Leica Geosystems AG Verfahren und System zum hochpräzisen Positionieren mindestens eines Objekts in eine Endlage im Raum
DE102010007458A1 (de) * 2010-02-10 2011-08-11 KUKA Laboratories GmbH, 86165 Verfahren für eine kollisionsfreie Bahnplanung eines Industrieroboters
JP2013066954A (ja) * 2011-09-21 2013-04-18 Seiko Epson Corp ロボット及びロボットの制御方法
JP5360283B2 (ja) 2012-10-03 2013-12-04 セイコーエプソン株式会社 水平多関節型ロボット
CN103413352A (zh) * 2013-07-29 2013-11-27 西北工业大学 基于rgbd多传感器融合的场景三维重建方法
US9444004B1 (en) * 2014-05-02 2016-09-13 Deployable Space Systems, Inc. System and method for producing modular photovoltaic panel assemblies for space solar arrays
JP2016190294A (ja) * 2015-03-31 2016-11-10 セイコーエプソン株式会社 ロボットシステム
JP6156854B1 (ja) * 2016-02-23 2017-07-05 アイダエンジニアリング株式会社 プレス機械のワーク搬送装置
US10596706B2 (en) * 2016-04-08 2020-03-24 Delta Electronics, Inc. Mechanism-parameter-calibration method for robotic arm system
JP6859756B2 (ja) * 2017-03-03 2021-04-14 オムロン株式会社 制御システム、コントローラ、制御方法、および制御プログラム
WO2018222762A2 (en) * 2017-05-30 2018-12-06 Sisu Devices Llc Robotic point capture and motion control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6151204A (ja) * 1984-08-20 1986-03-13 Kobe Steel Ltd ロボツトの動作空間識別システム
JPS63109996A (ja) * 1986-05-15 1988-05-14 三菱電機株式会社 ロボット作業域監視装置
WO2016103307A1 (ja) * 2014-12-26 2016-06-30 川崎重工業株式会社 ロボットの動作プログラム生成方法及びロボットの動作プログラム生成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020163492A (ja) * 2019-03-28 2020-10-08 本田技研工業株式会社 動作領域制限方法、ロボット制御装置、及び報知体
JP7012040B2 (ja) 2019-03-28 2022-01-27 本田技研工業株式会社 動作領域制限方法、及びロボット制御装置
CN112223254A (zh) * 2020-08-21 2021-01-15 南京航空航天大学 一种并联被动柔顺装置
WO2022185830A1 (ja) * 2021-03-03 2022-09-09 村田機械株式会社 モータシステム

Also Published As

Publication number Publication date
CN108527359A (zh) 2018-09-14
US20180250816A1 (en) 2018-09-06
US10625417B2 (en) 2020-04-21
EP3369532A1 (en) 2018-09-05
CN108527359B (zh) 2021-04-30
JP6859757B2 (ja) 2021-04-14

Similar Documents

Publication Publication Date Title
JP6859757B2 (ja) 制御システム、設定装置、設定方法、および設定プログラム
US10166673B2 (en) Portable apparatus for controlling robot and method thereof
JP6859756B2 (ja) 制御システム、コントローラ、制御方法、および制御プログラム
CN106891321B (zh) 作业装置
JP6915441B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
CN112748699B (zh) 模拟装置、数值控制装置以及模拟方法
US10315305B2 (en) Robot control apparatus which displays operation program including state of additional axis
CN109997086A (zh) 机器人的运动轴的测量
JP2005128686A (ja) 数値制御装置
US9962835B2 (en) Device for dynamic switching of robot control points
EP3385798B1 (en) Information processing device, information processing method, and information processing program
US20240256229A1 (en) Program creation device
CN110337781B (zh) 电动机的容量选定装置及容量选定方法
JP2017164833A (ja) マニピュレータ装置の制御装置、マニピュレータ装置の制御方法及びマニピュレータ装置の制御プログラム
CN117425862A (zh) 控制装置、干扰检查装置以及控制系统
JP7600743B2 (ja) 制御システム、制御方法および制御装置
JP7217525B2 (ja) スクライブ装置、及び、制御方法
JP4798552B2 (ja) ロボットの領域監視方法および制御装置
WO2022176249A1 (ja) 制御システム、制御方法および制御装置
CN120962615A (zh) 机器人的示教装置、机器人的示教方法及计算机程序产品
JP2005332347A (ja) 多軸動作ロボット

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180628

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210114

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210309

R150 Certificate of patent or registration of utility model

Ref document number: 6859757

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees