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

WO2015162757A1 - ロボット制御装置およびロボット制御方法 - Google Patents

ロボット制御装置およびロボット制御方法 Download PDF

Info

Publication number
WO2015162757A1
WO2015162757A1 PCT/JP2014/061572 JP2014061572W WO2015162757A1 WO 2015162757 A1 WO2015162757 A1 WO 2015162757A1 JP 2014061572 W JP2014061572 W JP 2014061572W WO 2015162757 A1 WO2015162757 A1 WO 2015162757A1
Authority
WO
WIPO (PCT)
Prior art keywords
axis
axes
control
robot
angle
Prior art date
Application number
PCT/JP2014/061572
Other languages
English (en)
French (fr)
Inventor
隆志 長野
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to US15/304,198 priority Critical patent/US10052757B2/en
Priority to DE112014006610.9T priority patent/DE112014006610B4/de
Priority to JP2016514641A priority patent/JP6165322B2/ja
Priority to PCT/JP2014/061572 priority patent/WO2015162757A1/ja
Publication of WO2015162757A1 publication Critical patent/WO2015162757A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1643Programme controls characterised by the control loop redundant control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40333Singularity, at least one movement not possible, kinematic redundancy

Definitions

  • the present invention relates to a robot control apparatus and a robot control method for controlling a robot.
  • the robot control device controls the robot so that the arm members do not deviate from the same straight line in the third control in which the operation of the robot becomes the largest even when the control is performed in the vicinity of the singular point. Therefore, the movement of the robot can be made compact.
  • the direction of the central axis of the J1 axis 102 and the direction of the central axis of the J2 axis 103 are orthogonal.
  • the central axis of the J2 axis 103 and the central axis of the J3 axis 104 are parallel.
  • the direction of the central axis of the J3 axis 104 and the direction of the central axis of the J4 axis 105 are orthogonal.
  • the direction of the central axis of the J4 axis 105 and the direction of the central axis of the J5 axis 106 are orthogonal.
  • the direction of the central axis of the J5 axis 106 and the direction of the central axis of the J6 axis 107 are orthogonal.
  • the robot controller 200 supplies a drive command to each servo amplifier.
  • the drive command is, for example, an angle command that indicates the target angle of the corresponding axis, an angular velocity command that indicates the target angular velocity of the corresponding axis, a position command that indicates the motor position, or a speed command that indicates the motor speed.
  • the servo amplifier of each servo system may be provided in the robot controller 200 instead of the robot 100, and each servo amplifier may supply a drive current to the servo motor via the transmission path 300.
  • the processing unit calculates the angle of each axis at the end point position based on the coordinates of the end point position and the orientation of the hand 120.
  • the angle of each axis at the end point position is expressed as (J1e, J2e, J3e, J4e, J5e, J6e).
  • Each element of the numerical sequence indicates the angle of the J1 axis 102, the angle of the J2 axis 103, the angle of the J3 axis 104, the angle of the J4 axis 105, the angle of the J5 axis 106, and the angle of the J6 axis 107 from the top.
  • the unit of angle is “degree”.
  • the processing unit linearly moves the position of the hand 120 from the start position (J1s, J2s, J3s, J4s, J5s, J6s) to the end position (J1e, J2e, J3e, J4e, J5e, J6e). Interpolate to move.
  • the interpolation interval is equal to, for example, an interval for supplying a drive command to the robot 100.
  • the processing unit generates a drive command for each position generated by interpolation, and sequentially supplies the generated drive command to the robot 100.
  • FIG. 5 is a diagram showing an example of the positional relationship between the start point position and the end point position.
  • This figure shows the state of the robot 100 when the robot 100 is viewed downward from above in the direction of the central axis of the J1 axis 102.
  • the arm member 111, the arm member 112, and the arm member 113 appear side by side on the same straight line when the robot 100 is viewed from above. Further, according to the example of this figure, the work 400 is held by the hand 120.
  • the angle difference of the J1 axis 102 between the start point position and the end point position is slightly deviated from 180 degrees (deg).
  • the hand 120 (and the workpiece 400) is linearly moved from the start point position to the end point position as indicated by the dotted arrow in FIG. According to this trajectory, the hand 120 passes near the singular point.
  • the position of the arm member 111, the arm member 112, and the arm member 113 is controlled with respect to the moving speed of the hand 120 because the position is controlled while controlling the direction of the hand 120. And the direction changes rapidly.
  • the processing unit When the compact operation mode is instructed (S1, Yes), the processing unit has two relay points (the first intermediate position and the first position) through which the hand 120 passes in order to make the operation of the robot 100 more compact than the process of S2. 2nd intermediate position) is generated.
  • the processing unit moves the hand 120 along a trajectory obtained by linear interpolation from the starting point position to the first intermediate position (S8).
  • the processing unit After moving the hand 120 to the first intermediate position, the processing unit determines the angles of the J2 axis 103, the J3 axis 104, the J5 axis 106, and the J6 axis 107 among the angles of the respective axes at the first intermediate position, respectively. By changing to the angles J2e, J3e, J5e, J6e at the position, the angle of each axis at the second intermediate position is calculated (S9). Then, the processing unit moves the hand 120 along a trajectory obtained by linear interpolation from the first intermediate position to the second intermediate position (S10).
  • the movement from the first intermediate position to the second intermediate position has a longer moving distance than the movement from the fulcrum position to the first intermediate position and the movement from the second intermediate position to the end point position.
  • the hand 120 moves from the first intermediate position to the second intermediate position, it is executed by driving the J2 axis 103, the J3 axis 104, and the J5 axis 106 without driving the J4 axis 105.
  • the arm member 111, the arm member 112, and the arm member 113 are viewed from the upper surface of the robot 100 from the first intermediate position to the second intermediate position. Since it is driven without deviating from the straight line connecting the positions, the operation of the robot 100 is more compact than the process of S2.
  • the arm member 111, the arm member 112, and the arm member 113 are driven without departing from the straight line connecting the first intermediate position and the second intermediate position when viewed from the upper surface of the robot 100.
  • the operation of the robot 100 can be made compact.
  • the processing unit may acquire the target position by calculation. For example, the processing unit may divide a route from the current position to a position (command position) commanded by a movement command of the robot program 207 into a plurality of sections, and calculate a target position for each of the divided sections.
  • the processing unit when the distance from the trajectory to the straight line passing through the central axis of the J1 axis 102 is greater than a preset threshold value, the processing unit operates in the normal mode, and the J1 When the distance to the straight line passing through the central axis of the shaft 102 is smaller than the threshold value, the mode may be automatically switched to the compact operation mode.
  • the processing unit divides the route into a plurality of sections, for example, the processing unit may perform mode determination for each of the divided sections.
  • the threshold value for determining the mode may be variably configured according to the moving speed commanded by the moving command. For example, when the moving speed is high, the threshold for mode determination becomes large.
  • 1 production system 100 robots, 101 mounting base, 102 J1 axis, 103 J2 axis, 104 J3 axis, 105 J4 axis, 106 J5 axis, 107 J6 axis, 110, 111, 112, 113 arm member, 120 hand, 200 robot Control device, 201 arithmetic device, 202 main memory, 203 non-volatile memory, 204 I / O interface, 205 bus, 206 firmware program, 207 robot program, 300 transmission path, 400 work.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

 ロボットの動作をできるだけコンパクトにするために、ロボット制御装置は、据え付け台側において構造体を回旋させる回旋軸であるJ1軸をJ1軸の目標位置における角度J1eまで駆動するとともに、構造体を屈曲したり伸展したりする屈伸軸である、J2軸、J3軸、およびJ5軸の中心軸が互いに平行になるように、構造体を回旋させるJ4軸を駆動し(S3~S8)、その後、J4軸を駆動することなくJ2軸、J3軸、およびJ5軸を夫々の軸の目標位置における角度J2e、J3e、J5eまで駆動し(S9、S10)、目標位置における角度に至っていないJ4軸を目標位置における角度J4eまで駆動する(S11)。

Description

ロボット制御装置およびロボット制御方法
 本発明は、ロボットを制御するロボット制御装置およびロボット制御方法に関する。
 従来、FA分野においてはアームを有するロボットが使用される。アームは、夫々サーボモータによって駆動される複数の軸が複数のアーム部材を用いて線形に接続されて構成される。アームの先端には、ワークを把持したりワークを加工する工具が接続されたりする手先機構(以降、単に手先という)が接続されている。
 ここで、ロボットの軌道が特異点に近ければ近いほど、ロボットを構成するいずれかの軸を急激に加減速せしめる必要がある場合がある(例えば特許文献1および特許文献2参照)。
特開2007-4548号公報 特開2006-227724号公報
 さらに、ロボットは、手先が移動する軌道が特異点に近い場合には、手先の位置および手先の向きを制御するためにアームの姿勢を多くの方向にめまぐるしく変化させることで、結果として動作が大きくなってしまうことがある。このため、ロボットの動きをできるだけコンパクトにすることが要望される。例えば移動関節角度を小さくすることで、ロボットの動きがコンパクトになる。
 本発明は、上記に鑑みてなされたものであって、ロボットの動きをできるだけコンパクトにすることができるロボット制御装置およびロボット制御方法を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明は、接続されている構造体を回旋させる2以上の第1軸と、接続されている構造体を屈曲したり伸展したりする2以上の第2軸と、を含む複数の軸であって、前記複数の軸のうちの据え付け台に最も近い側に備えられるJ1軸は前記第1軸である前記複数の軸を備えるロボットを制御する、ロボット制御装置であって、前記ロボットの制御点の目標位置を取得したのち、前記J1軸を前記J1軸の前記目標位置における互いに接続されている構造体の角度まで駆動する第1制御と、前記複数の軸のうちのすべての第2軸の中心軸が互いに平行になるように、前記複数の軸から前記J1軸を除く軸のうちの一部または全部の第1軸を駆動する第2制御と、前記第1制御および前記第2制御の実行後、前記第2制御によって駆動された第1軸を駆動することなく前記複数の軸のうちの全部の第2軸を夫々の軸の前記目標位置における角度まで駆動する第3制御と、前記第3制御の実行後、前記複数の軸のうち前記目標位置における互いに接続されている構造体の角度に到達していない軸を前記目標位置における互いに接続されている構造体の角度まで駆動する第4制御と、を実行する処理部を備えることを特徴とする。
 本発明にかかるロボット制御装置は、特異点の近傍で制御を行う場合であっても、最もロボットの動作が大きくなる第3制御において各アーム部材が同一直線上から外れないようにロボットを制御することができるので、ロボットの動きをコンパクトにすることができる。
図1は、実施の形態のロボット制御装置が適用される生産システムを示す図である。 図2は、ロボットの構成を示す図である。 図3は、ロボット制御装置の構成例を示す図である。 図4は、実施の形態のロボット制御装置の動作を説明するフローチャートである。 図5は、始点位置と終点位置との位置関係の例を示す図である。 図6は、コンパクト動作モードによる軌道を説明する図である。 図7は、コンパクト動作モードによる軌道を説明する図である。
 以下に、本発明にかかる実施の形態のロボット制御装置およびロボット制御方法を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
 図1は、実施の形態のロボット制御装置が適用される生産システムを示す図である。生産システム1は、ロボット100と実施の形態のロボット制御装置200とが伝送路300を介して接続されて構成される。
 ここでは一例として、ロボット100は、6軸垂直多関節ロボットであるものとする。図2は、ロボット100の構成を示す図である。ロボット100は、据え付け台101、J1軸102、J2軸103、J3軸104、J4軸105、J5軸106、J6軸107、アーム部材110、アーム部材111、アーム部材112、アーム部材113、および手先120を備える。J1軸102、J2軸103、J3軸104、J4軸105、J5軸106、およびJ6軸107を据え付け台101側から手先120側にかけてこの順番にアーム部材を介して接続されている。
 具体的には、J1軸102は、据え付け台101とアーム部材110とを接続する。J2軸103は、アーム部材110とアーム部材111とを接続する。J3軸104は、アーム部材111とアーム部材112とを接続する。J4軸105は、アーム部材112とアーム部材113とを接続する。J5軸106は、アーム部材113とJ6軸107とを接続する。J6軸107は、J5軸106と手先120とを接続する。J1軸、J4軸、およびJ6軸は回旋軸であり、J2軸、J3軸、およびJ5軸は屈伸軸である。ここで、回旋軸は、その軸に接続されている構造体(即ち据え付け台101、アーム部材、軸、または手先120)を回旋させる軸をいう。回旋させるとは、その軸に接続されている構造体をその軸によって捻ることである。屈伸軸は、その軸に接続されている構造体をその軸を支点として屈曲したり伸展したりする軸をいう。
 また、J1軸102の中心軸の向きとJ2軸103の中心軸の向きとは直交する。J2軸103の中心軸とJ3軸104の中心軸とは平行である。J3軸104の中心軸の向きとJ4軸105の中心軸の向きとは直交する。J4軸105の中心軸の向きとJ5軸106の中心軸の向きとは直交する。J5軸106の中心軸の向きとJ6軸107の中心軸の向きとは直交する。
 また、ロボット100は、J1軸102、J2軸103、J3軸104、J4軸105、J5軸106、およびJ6軸107の夫々について、サーボモータとサーボアンプとからなるサーボシステムを具備する(図示せず)。各サーボシステムは、駆動指令に基づき、対応する軸を駆動する。
 また、ロボット100は、先端に制御点を備える。制御点とは、ユーザプログラム(後述するロボットプログラム207)によって位置および向きが制御される点である。ここでは制御点は手先120であるものとして説明するが、制御点は手先120によって保持されるワークまたは工具であってもよい。
 ロボット制御装置200は、各サーボアンプに駆動指令を供給する。駆動指令は、例えば、対応する軸の目標角度を指示する角度指令、対応する軸の目標角速度を指示する角速度指令、モータ位置を指示する位置指令、または、モータ速度を指示する速度指令である。なお、各サーボシステムのうちのサーボアンプは、ロボット100ではなくロボット制御装置200に具備され、各サーボアンプはサーボモータに伝送路300を介して駆動電流を供給するようにしてもよい。
 図3は、ロボット制御装置200の構成例を示す図である。ロボット制御装置200は、演算装置201、メインメモリ202、不揮発性メモリ203、I/Oインタフェース204、およびバス205を備えている。バス205は、演算装置201、メインメモリ202、不揮発性メモリ203、およびI/Oインタフェース204を相互に接続する。
 演算装置201は、例えばCPU(Central Processing Unit)である。メインメモリ202は、不揮発性メモリ203よりも高速なアクセスが可能なメモリである。メインメモリ202は、例えばRAM(Random Access Memory)によって構成される。不揮発性メモリ203は、各種データの保存領域として用いられるメモリである。不揮発性メモリ203は、例えば、ROM(Read Only Memory)、フラッシュメモリ、光ディスク、磁気ディスク、着脱可能なメモリデバイス、またはこれらの組み合わせによって構成される。I/Oインタフェース204は、伝送路300に接続するためのインタフェース装置である。
 不揮発性メモリ203は、ファームウェアプログラム206およびロボットプログラム207を予め記憶する。ロボットプログラム207は、ロボット100の動作手順を記述したユーザプログラムである。ロボットプログラム207は、ユーザによって作成される。また、ファームウェアプログラム206は、ロボットプログラム207を実行するための環境を提供するシステムプログラムであり、例えばロボット100またはロボット制御装置200の製造者によって作成される。なお、ロボットプログラム207は、バッテリで保持される揮発性メモリに記憶されてもよい。
 演算装置201は、ファームウェアプログラム206を不揮発性メモリ203からメインメモリ202にロードする。そして、演算装置201は、メインメモリ202にロードされたファームウェアプログラム206に基づいて、ロボットプログラム207を実行する処理部として機能する。処理部としての演算装置201は、ロボットプログラム207を解釈し、ロボットプログラム207を解釈した結果に基づいて各サーボアンプに対する駆動指令を算出する。算出された駆動指令は、I/Oインタフェース204を介してロボット100に送信される。
 なお、処理部としての演算装置201は、各サーボシステムから送られてくるエンコーダ値に基づいて駆動指令を算出してもよい。エンコーダ値は、例えば、角度検出値、角速度検出値、モータ位置の検出値、またはモータ速度の検出値である。
 ここで、J1軸102の中心軸とJ6軸107の中心軸とが一直線上に並ぶような制御点は、特異点とされる。特異点とは、制御点の位置および向きから各軸の角度が一意に定まらないような、制御点の位置および向きをいう。例えばJ1軸102の中心軸とJ6軸107の中心軸とが一直線上に並ぶ場合、J1軸102およびJ6軸107の角度は、任意の値をとりうる。このような特異点の近傍を制御点としての手先120が通過する際には、各軸が急激に動かざるを得ない場合がある。具体的には、手先120の軌道がJ1軸102の中心軸を通る直線に近ければ近いほど、手先120がその軌道を通過する際のJ1軸102の駆動速度が速くなり、かつ、手先120の位置および向きを維持するために他の軸(J2軸103、J3軸104、J4軸105、J5軸106、およびJ6軸107のうちの一部または全部)の動作が急激に変化する。手先120が直線軌道上をゆっくり移動する場合であっても、J1軸が大きく動いたりすることによって、手先120の移動中に各アーム部材の位置および向きがめまぐるしく変化する場合がある。
 なお、以降、特に断りがない場合、位置とは、向きをも含むものとする。
 ロボットプログラム207に使用可能な記述として、コンパクト動作モードと通常モードとが定義されている。通常モードとは、始点位置から終点位置まで直線的に手先120を移動させるモードであり、コンパクト動作モードとは、通常モードに比べてロボット100の動作がコンパクトになるように始点位置から終点位置まで手先120を移動させるモードである。処理部は、ロボットプログラム207に記述されている移動指令が通常モードで手先120を移動させるモードであるかコンパクト動作モードで手先120を移動させるモードであるかによって、異なる軌道を演算する。
 図4は、実施の形態のロボット制御装置200の動作を説明するフローチャートである。
 処理部は、ロボットプログラム207から手先120の移動指令を解釈すると、その移動指令のモードとしてコンパクト動作モードが指令されているか否かを判定する(S1)。コンパクト動作モードが指令されていない場合(S1、No)、即ち通常モードが指令された場合、処理部は、始点位置から終点位置までを直線補間した軌道にそって手先120を移動させ(S2)、移動指令にかかる動作を終了する。
 ロボットプログラム207による移動指定は、手先120の目標位置の指定を少なくとも含む。処理部は、移動指令の実行開始前の位置を始点位置とし、移動指令によって指定される目標位置を終点位置とする。即ち、この例によれば、処理部は、ロボットプログラム207から目標位置を取得する。
 S2の処理においては、処理部は、終点位置の座標および手先120の向きに基づいて、終点位置における各軸の角度を演算する。終点位置における各軸の角度を、(J1e,J2e,J3e,J4e,J5e,J6e)と表記する。この数列の各要素は、先頭から、J1軸102の角度、J2軸103の角度、J3軸104の角度、J4軸105の角度、J5軸106の角度、J6軸107の角度を示している。また、角度の単位を「度(deg)」とする。(J1s,J2s,J3s,J4s,J5s,J6s)は、始点位置における各軸の角度である。各要素がいずれの軸の角度を示すかは、終点位置における各軸の角度と同様である。始点位置における各軸の角度は、直前に実行された移動指令の目標位置に基づいて既に演算されているものが使用される。また、エンコーダ値として角度検出値が取得可能である場合には、始点位置における各軸の角度としてエンコーダ値を使用することができる。また、エンコーダ値として角度検出値以外の値が取得可能である場合には、エンコーダ値から始点位置における各軸の角度を演算することが可能である。
 S2においては、処理部は、始点位置(J1s,J2s,J3s,J4s,J5s,J6s)から終点位置(J1e,J2e,J3e,J4e,J5e,J6e)までを、手先120の位置が直線的に移動するように補間する。補間の間隔は、例えばロボット100に駆動指令を供給する間隔に等しい。処理部は、補間により生成された位置毎に駆動指令を生成し、生成した駆動指令を順次ロボット100に供給する。
 図5は、始点位置と終点位置との位置関係の例を示す図である。この図は、ロボット100を上方からJ1軸102の中心軸の方向に下向きに見たときのロボット100の状態を示している。アーム部材111、アーム部材112、およびアーム部材113は、ロボット100を上方から見た場合、同一の直線上に並んで見える。また、この図の例によれば、手先120にはワーク400が把持されている。そして、始点位置と終点位置との間のJ1軸102の角度差が180度(deg)から若干ずれている。S2の処理によれば、図5の点線の矢印に示すように、始点位置から終点位置まで直線的に手先120(およびワーク400)が移動せしめられる。この軌道によれば、手先120は、特異点の近傍を通過する。手先120が特異点の近傍を通過する際には、手先120の向きを制御しながら位置を制御するため、手先120の移動速度に対してアーム部材111、アーム部材112、およびアーム部材113の位置および向きがめまぐるしく変化する。
 コンパクト動作モードが指令された場合(S1、Yes)、処理部は、S2の処理に比べてロボット100の動作をコンパクトにするために、手先120が通過する2つの中継点(第1中間位置および第2中間位置)を生成する。
 具体的には、処理部は、まず、始点位置におけるJ4軸105の角度J4sが-90度よりも小さいか否かを判定する(S3)。J4軸105の角度J4sが-90度よりも小さい場合(S3、Yes)、処理部は、位置(J1e,J2s,J3s,-180,J5s,J6s)を第1中間位置に設定する(S4)。始点位置におけるJ4軸105の角度J4sが-90度よりも大きい場合(S3、No)、処理部は、始点位置におけるJ4軸105の角度J4sが90度よりも大きいか否かをさらに判定する(S5)。J4軸105の角度J4sが90度よりも大きい場合(S5、Yes)、処理部は、位置(J1e,J2s,J3s,180,J5s,J6s)を第1中間位置に設定する(S6)。J4軸105の角度J4sが90度よりも小さい場合(S5、No)、処理部は、位置(J1e,J2s,J3s,0,J5s,J6s)を第1中間位置に設定する(S7)。
 S4、S6、またはS7の処理の後、処理部は、始点位置から第1中間位置までを直線補間した軌道に沿って手先120を移動させる(S8)。
 S8の処理は、J1軸102を目標位置におけるJ1軸102の角度J1eまで駆動する第1制御を含んでいる。また、S8の処理は、J4軸105を、角度J4sから0度、180度、または-180度まで駆動する第2制御を含んでいる。
 前述したように、J2軸103、J3軸104、およびJ5軸106は、すべて屈伸軸であり、J2軸103の中心軸とJ3軸104の中心軸とは平行である。J3軸104とJ5軸106とは間に回旋軸であるJ4軸105を介在するが、J4軸105を0度、180度、または-180度に駆動することによって、J2軸103の中心軸と、J3軸104の中心軸と、J5軸106の中心軸とが平行になる。
 なお、J2軸103の中心軸と、J3軸104の中心軸と、J5軸106の中心軸とを平行にすることができる限り、第1中間位置におけるJ4軸の角度を任意に設定できる。
 また、S8の処理は、第1制御と第2制御とを同時に行う処理であるが、S8の処理の代わりに、第1制御と第2制御とが別々に実行されてもよい。第1制御と第2制御とのうちのいずれを先に実行するかは任意である。
 手先120を第1中間位置に移動した後、処理部は、第1中間位置における各軸の角度のうち、J2軸103、J3軸104、J5軸106、およびJ6軸107の角度を、夫々終点位置における角度J2e、J3e、J5e、J6eに変更することによって、第2中間位置における各軸の角度を演算する(S9)。そして、処理部は、第1中間位置から第2中間位置までを直線補間した軌道にそって手先120を移動させる(S10)。
 S10の処理は、第2制御によって駆動された回旋軸であるJ4軸105を駆動することなくすべての屈伸軸(即ちJ2軸103、J3軸104、およびJ5軸106)を夫々の軸の目標位置における角度J2e、J3e、J5eまで駆動する第3制御に相当する。なお、ここではS10の処理においてJ6軸107が駆動されるものとして説明しているが、J6軸107は前後の処理において角度J6eまで駆動されることでS10の処理においては駆動されなくてもよい。第3制御によって、各屈伸軸の中心軸は互いに平行な関係を保ったまま各屈伸軸が駆動される。
 S10の処理に続いて、処理部は、J4軸105の角度が終点位置におけるJ4軸105の角度J4eに一致するまでJ4軸105を駆動し(S11)、移動指令にかかる動作を終了する。S11の処理は、まだ目標位置の角度まで駆動されていない軸であるJ4軸105を、目標位置の角度J4eまで駆動する第4制御に相当する。J6軸107は第4制御において駆動されてもよい。
 図6および図7は、コンパクト動作モードによる軌道を説明する図である。状態Aは、手先120が始点位置にある状態を示している。状態Bは手先120が第1中間位置にある状態を示している。状態Cは手先120が第2中間位置にある状態を示している。
 第1中間位置は、始点位置における各軸の角度のうち、J1軸102の角度が終点位置におけるJ1軸102の角度J1eに変更されるとともにJ4軸105の角度が0度または180度または-180度に変更されて生成される位置である。J1軸102の角度が終点位置におけるJ1軸102の角度J1eに変更された第1中間位置を経由することによって、図示するように、手先120を、J1軸102の中心軸を通る直線の近傍ではなくJ1軸102の中心軸を通る直線上のポイントを通過するように移動させることができる。
 また、第1中間位置から第2中間位置までの移動は、支点位置から第1中間位置までの移動および第2中間位置から終点位置までの移動に比べて、移動距離が大きい。その第1中間位置から第2中間位置までの手先120の移動の際には、J4軸105を駆動せず、かつ、J2軸103、J3軸104、およびJ5軸106を駆動することで実行される。したがって、第1中間位置から第2中間位置までの手先120の移動の際には、ロボット100の上面からみてアーム部材111、アーム部材112、およびアーム部材113は、第1中間位置から第2中間位置を結ぶ直線上から外れずに駆動されるので、S2の処理に比べ、ロボット100の動作がコンパクトである。
 このように、実施の形態によれば、処理部は、ロボット100の先端の制御点の目標位置を取得したのち、次の第1~第4制御を実行する。第1制御は、J1軸102をJ1軸102の目標位置における角度J1eまで駆動する制御である。第2制御は、6つの軸のうちのすべての屈伸軸であるJ2軸103、J3軸104、およびJ5軸106の中心軸が平行になるように、J4軸105を駆動する制御である。第3制御は、第2制御によって駆動された回旋軸であるJ4軸105を駆動することなくすべての屈伸軸であるJ2軸103、J3軸104、およびJ5軸106を夫々の軸の目標位置における角度J2e、J3e、J5eまで駆動する制御である。第4制御は、目標位置における角度に至っていない軸を目標位置における角度まで駆動する制御である。第4制御においては、J4軸105が駆動される。J6軸107は、第3制御で駆動されてもよいし、第4制御で駆動されてもよい。これにより、ロボット100の上面からみてアーム部材111、アーム部材112、およびアーム部材113は、第1中間位置から第2中間位置を結ぶ直線上から外れずに駆動されるので、始点位置から終点位置まで直線的にロボット100を駆動する場合に比べてロボット100の動作をコンパクトにすることができるようになる。
 なお、以上の説明においては、ロボット100は、据え付け台101側からJ1軸102、J2軸103、J3軸104、J4軸105、J5軸106、およびJ6軸107の6つの軸を有するものとして説明したが、ロボット100が備える軸の数はこれに限定されない。たとえば、ロボット100が回旋軸をさらに多く備える場合には、第2制御において、すべての屈伸軸の中心軸が平行になるように、J1軸102を除く軸のうちの一部または全部の回旋軸が駆動される。そして、第4制御の実行前に、J4軸105のほかの回旋軸が目標位置における角度に達していない場合には、その回旋軸は、第4制御において駆動される。また、6つの軸のうちのいずれを回旋軸とするかについては、上記した6軸垂直多関節ロボットの例に限定されない。
 また、処理部はロボットプログラム207から目標位置を取得するとして説明したが、処理部は目標位置を演算により取得してもよい。たとえば、処理部は、現在位置からロボットプログラム207の移動指令によって指令された位置(指令位置)までの経路を複数の区間に分割し、分割された区間ごとに目標位置を演算してもよい。
 また、たとえば、処理部は、軌道からJ1軸102の中心軸を通る直線までの距離があらかじめ設定されたしきい値よりも大きい場合には、処理部は、通常モードで動作し、軌道からJ1軸102の中心軸を通る直線までの距離が前記しきい値よりも小さい場合には、コンパクト動作モードにモードを自動的に切り替えて動作するように構成されてもよい。処理部が経路を複数の区間に分割する場合には、たとえば、処理部は、分割された区間ごとにモードの判定を行うようにしてよい。また、モードの判定のためのしきい値は、移動指令によって指令される移動速度に応じて可変に構成されてもよい。たとえば、移動速度が大きい場合には、モードの判定のためのしきい値は大きくなる。また、コンパクト動作モードが指定されている場合には、処理部は、J1軸102の中心軸を通る直線までの距離が最も近くなる区間においてのみコンパクト動作モードで動作し、それ以外の区間では通常モードで動作するようにしてもよい。また、処理部は、分割された区間においてコンパクト動作モードで動作した場合、第2中間位置まで制御した後、第2中間位置から移動指令によって指令された位置までの軌道を再計算するようにしてもよい。
 1 生産システム、100 ロボット、101 据え付け台、102 J1軸、103 J2軸、104 J3軸、105 J4軸、106 J5軸、107 J6軸、110,111,112,113 アーム部材、120 手先、200 ロボット制御装置、201 演算装置、202 メインメモリ、203 不揮発性メモリ、204 I/Oインタフェース、205 バス、206 ファームウェアプログラム、207 ロボットプログラム、300 伝送路、400 ワーク。

Claims (6)

  1.  接続されている構造体を回旋させる2以上の第1軸と、接続されている構造体を屈曲したり伸展したりする2以上の第2軸と、を含む複数の軸であって、前記複数の軸のうちの据え付け台に最も近い側に備えられるJ1軸は前記第1軸である前記複数の軸を備えるロボットを制御する、ロボット制御装置であって、
     前記ロボットの制御点の目標位置を取得したのち、
     前記J1軸を前記J1軸の前記目標位置における互いに接続されている構造体の角度まで駆動する第1制御と、
     前記複数の軸のうちのすべての第2軸の中心軸が互いに平行になるように、前記複数の軸から前記J1軸を除く軸のうちの一部または全部の第1軸を駆動する第2制御と、
     前記第1制御および前記第2制御の実行後、前記第2制御によって駆動された第1軸を駆動することなく前記複数の軸のうちの全部の第2軸を夫々の軸の前記目標位置における角度まで駆動する第3制御と、
     前記第3制御の実行後、前記複数の軸のうち前記目標位置における互いに接続されている構造体の角度に到達していない軸を前記目標位置における互いに接続されている構造体の角度まで駆動する第4制御と、
     を実行する処理部を備えることを特徴とするロボット制御装置。
  2.  前記複数の軸は、前記据え付け台に最も近い側から前記J1軸、J2軸、J3軸、J4軸、J5軸、およびJ6軸からなる6つの軸であり、
     前記J4軸および前記J6軸は前記第1軸であり、
     前記J2軸、前記J3軸、および前記J5軸は前記第2軸であり、
     前記第2制御は、前記J4軸を駆動する制御である、
     ことを特徴とする請求項1に記載のロボット制御装置。
  3.  ユーザプログラムを予め記憶する記憶部をさらに備え、
     前記処理部は、前記ユーザプログラムから前記目標位置を読み取る、
     ことを特徴とする請求項1または請求項2に記載のロボット制御装置。
  4.  接続されている構造体を回旋させる2以上の第1軸と、接続されている構造体を屈曲したり伸展したりする2以上の第2軸と、を含む複数の軸であって、前記複数の軸のうちの据え付け台に最も近い側に備えられるJ1軸は前記第1軸である前記複数の軸を備えるロボットをロボット制御装置が制御する、ロボット制御方法であって、
     前記ロボットの先端の制御点の目標位置を取得する取得ステップと、
     前記J1軸を前記J1軸の前記目標位置における互いに接続されている構造体の角度まで駆動する第1制御ステップと、
     前記複数の軸のうちのすべての第2軸の中心軸が互いに平行になるように、前記複数の軸から前記J1軸を除く軸のうちの一部または全部の第1軸を駆動する第2制御ステップと、
     前記第1制御ステップおよび前記第2制御ステップの実行後、前記第2制御ステップによって駆動された第1軸を駆動することなく前記複数の軸のうちの全部の第2軸を夫々の軸の前記目標位置における互いに接続されている構造体の角度まで駆動する第3制御ステップと、
     前記第3制御ステップの実行後、前記複数の軸のうち前記目標位置における互いに接続されている構造体の角度に到達していない軸を前記目標位置における互いに接続されている構造体の角度まで駆動する第4制御ステップと、
     を備えることを特徴とするロボット制御方法。
  5.  前記複数の軸は、前記据え付け台に最も近い側から前記J1軸、J2軸、J3軸、J4軸、J5軸、およびJ6軸からなる6つの軸であり、
     前記J4軸および前記J6軸は前記第1軸であり、
     前記J2軸、前記J3軸、および前記J5軸は前記第2軸であり、
     前記第2制御ステップは、前記J4軸を駆動するステップである、
     ことを特徴とする請求項4に記載のロボット制御方法。
  6.  前記第1制御ステップは、ユーザプログラムから前記目標位置を読み取るステップである、
     ことを特徴とする請求項4または請求項5に記載のロボット制御方法。
PCT/JP2014/061572 2014-04-24 2014-04-24 ロボット制御装置およびロボット制御方法 WO2015162757A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US15/304,198 US10052757B2 (en) 2014-04-24 2014-04-24 Robot control device and robot control method
DE112014006610.9T DE112014006610B4 (de) 2014-04-24 2014-04-24 Robotersteuerungsvorrichtung und Robotersteuerungsverfahren
JP2016514641A JP6165322B2 (ja) 2014-04-24 2014-04-24 ロボット制御装置およびロボット制御方法
PCT/JP2014/061572 WO2015162757A1 (ja) 2014-04-24 2014-04-24 ロボット制御装置およびロボット制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/061572 WO2015162757A1 (ja) 2014-04-24 2014-04-24 ロボット制御装置およびロボット制御方法

Publications (1)

Publication Number Publication Date
WO2015162757A1 true WO2015162757A1 (ja) 2015-10-29

Family

ID=54331944

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/061572 WO2015162757A1 (ja) 2014-04-24 2014-04-24 ロボット制御装置およびロボット制御方法

Country Status (4)

Country Link
US (1) US10052757B2 (ja)
JP (1) JP6165322B2 (ja)
DE (1) DE112014006610B4 (ja)
WO (1) WO2015162757A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112621713A (zh) * 2020-11-30 2021-04-09 珠海格力电器股份有限公司 机器人示教器、控制器及其示教、控制方法、装置和介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6165322B2 (ja) * 2014-04-24 2017-07-19 三菱電機株式会社 ロボット制御装置およびロボット制御方法
JP6507094B2 (ja) * 2015-12-28 2019-04-24 株式会社東芝 マニピュレータ
US11360528B2 (en) 2019-12-27 2022-06-14 Intel Corporation Apparatus and methods for thermal management of electronic user devices based on user activity

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010269421A (ja) * 2009-05-22 2010-12-02 Kawasaki Heavy Ind Ltd ロボット制御装置及び方法
JP2011036956A (ja) * 2009-08-11 2011-02-24 Kawasaki Heavy Ind Ltd ロボットの精度調整方法およびロボット

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2576176B2 (ja) * 1988-02-06 1997-01-29 株式会社安川電機 ロボットの制御方法
JPH11245184A (ja) 1998-02-27 1999-09-14 Mitsubishi Electric Corp 多関節ロボットの制御装置および制御方法
JP2005329521A (ja) * 2004-05-21 2005-12-02 Denso Wave Inc 多関節型ロボット
JP4494247B2 (ja) 2005-02-15 2010-06-30 三菱電機株式会社 ロボットの制御装置および制御方法
JP4496483B2 (ja) 2005-06-24 2010-07-07 株式会社安川電機 ロボット制御方法および制御装置
JP5283541B2 (ja) 2009-03-05 2013-09-04 株式会社神戸製鋼所 ロボットの動作経路生成方法
JP5726052B2 (ja) * 2011-03-08 2015-05-27 株式会社神戸製鋼所 多関節型ロボットの制御装置,制御方法及び制御プログラム
JP6165322B2 (ja) * 2014-04-24 2017-07-19 三菱電機株式会社 ロボット制御装置およびロボット制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010269421A (ja) * 2009-05-22 2010-12-02 Kawasaki Heavy Ind Ltd ロボット制御装置及び方法
JP2011036956A (ja) * 2009-08-11 2011-02-24 Kawasaki Heavy Ind Ltd ロボットの精度調整方法およびロボット

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112621713A (zh) * 2020-11-30 2021-04-09 珠海格力电器股份有限公司 机器人示教器、控制器及其示教、控制方法、装置和介质

Also Published As

Publication number Publication date
DE112014006610T5 (de) 2017-01-19
JPWO2015162757A1 (ja) 2017-04-13
DE112014006610B4 (de) 2019-09-19
JP6165322B2 (ja) 2017-07-19
US20170028548A1 (en) 2017-02-02
US10052757B2 (en) 2018-08-21

Similar Documents

Publication Publication Date Title
JP5895628B2 (ja) ロボットの制御方法及びロボット制御装置、並びにロボット制御システム
JP6717768B2 (ja) 生産ラインにおける運用を考慮した学習制御を行うロボット及びその制御方法
EP2957375B1 (en) Seam welding system and method for producing a to-be-welded object
JP5458769B2 (ja) ロボットの制御装置
JP4902815B1 (ja) 数値制御装置
JP2010167515A (ja) 多軸ロボット及びその速度制御装置
JP6165322B2 (ja) ロボット制御装置およびロボット制御方法
JP6693939B2 (ja) ロボットシステム
JP6904759B2 (ja) ロボットの移動速度制御装置及び方法
US20190084156A1 (en) Robot system and method for controlling robot
WO2017175340A1 (ja) 最適化装置及びそれを備えた垂直型多関節ロボット
JP5056241B2 (ja) ロボットシステム制御装置
JP7007791B2 (ja) ロボットの運転方法、コンピュータプログラム、及びロボットシステム
JP2008221428A (ja) ロボット教示システム及びロボット教示方法
JP2012051043A (ja) ロボットシステムまたはロボット制御装置
CN111699079B (zh) 协调系统、操作设备和方法
JP2016040067A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP7165951B2 (ja) ロボットの制御方法
CN111405966B (zh) 用于控制机器人组的方法和控制装置
JP2013223895A (ja) ロボット制御方法及びロボット制御装置
US20230256598A1 (en) Robot controller
JP2013215839A (ja) 冗長自由度を持つロボットの制御方法及びロボット制御装置、並びにロボット制御システム
JP6429977B2 (ja) ロボット装置及びロボット制御方法
JP2017177273A (ja) レーザ加工システムおよびその制御方法
JP2010036293A (ja) 多関節ロボット

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14889823

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2016514641

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15304198

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112014006610

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14889823

Country of ref document: EP

Kind code of ref document: A1