(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-30
(45)【発行日】2024-05-10
(54)【発明の名称】制御装置及び制御方法
(51)【国際特許分類】
B25J 17/02 20060101AFI20240501BHJP
【FI】
B25J17/02 F
(21)【出願番号】P 2022553864
(86)(22)【出願日】2021-09-22
(86)【国際出願番号】 JP2021034770
(87)【国際公開番号】W WO2022071058
(87)【国際公開日】2022-04-07
【審査請求日】2023-04-05
(31)【優先権主張番号】P 2020163565
(32)【優先日】2020-09-29
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】江 航杰
【審査官】樋口 幸太郎
(56)【参考文献】
【文献】特開平08-141969(JP,A)
【文献】国際公開第2011/067260(WO,A1)
【文献】特開2010-094695(JP,A)
【文献】特開2019-126850(JP,A)
【文献】独国実用新案第202007010097(DE,U1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 17/02
(57)【特許請求の範囲】
【請求項1】
ロボットのアームの先端にワークを一方向に移動させる関節軸が取り付けられた前記ロボット及び前記関節軸を制御する制御装置であって、
前記ロボットの座標原点から見た前記関節軸の初期位置が設定された動作プログラムに基づいて、前記ロボットと前記関節軸とを合わせた移動範囲を算出する動作プログラム解析部と、
算出された前記移動範囲に基づいて、前記移動範囲の境界位置に前記関節軸を移動させる前記関節軸の移動量を指定値とし、
前記関節軸が前記境界位置に移動したときの前記ロボットの座標原点から見た前記関節軸の座標と、前記指定値とにより、前記関節軸が前記境界位置に移動したときの前記ロボットのアームの先端の移動量と、前記境界位置以外の少なくとも1つの教示点の前記関節軸の移動量及び前記ロボットのアームの先端の移動量と、を算出するロボット・ツール移動距離計算部と、
を備える制御装置。
【請求項2】
前記指定値は、前記関節軸が移動できる距離の最大値である請求項1に記載の制御装置。
【請求項3】
ユーザからの入力を受け付ける入力部をさらに備え、
前記指定値は、前記入力部を介して前記ユーザにより指定された値である請求項1に記載の制御装置。
【請求項4】
算出された前記境界位置以外の少なくとも1つの教示点の前記関節軸の移動量及び前記ロボットのアームの先端の移動量を前記動作プログラムに設定し、前記動作プログラムを実行する動作制御・駆動部をさらに備える請求項1から請求項3のいずれか1項に記載の制御装置。
【請求項5】
コンピュータにより実現される、ロボットのアームの先端にワークを一方向に移動させる関節軸が取り付けられた前記ロボット及び前記関節軸を制御する制御方法であって、
前記ロボットの座標原点から見た前記関節軸の初期位置が設定された動作プログラムに基づいて、前記ロボットと前記関節軸とを合わせた移動範囲を算出する動作プログラム解析ステップと、
算出された前記移動範囲に基づいて、前記移動範囲の境界位置に前記関節軸を移動させる前記関節軸の移動量を指定値とし、
前記関節軸が前記境界位置に移動したときの前記ロボットの座標原点から見た前記関節軸の座標と、前記指定値とにより、前記関節軸が前記境界位置に移動したときの前記ロボットのアームの先端の移動量と、前記境界位置以外の少なくとも1つの教示点の前記関節軸の移動量及び前記ロボットのアームの先端の移動量と、を算出するロボット・ツール移動距離計算ステップと、
を備える制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置及び制御方法に関する。
【背景技術】
【0002】
6軸ロボットのアームの先端にワークを1方向(例えば、Y軸方向)にワークを直線上に移動させるスライド関節軸(以下、「リニアツール」ともいう)を取り付けて7軸のロボットとし、ロボットとリニアツールとの両方を同じ方向に動作させることで、ワークを高速に搬送する技術が知られている。例えば、特許文献1参照。
7軸のロボットシステムを教示する際には、6軸ロボットとリニアツールとのそれぞれの移動距離を個別に指定することが一般的である。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
リニアツールを搭載する6軸ロボットの教示について、動作時の各教示点の位置・姿勢を教示する方法が一般的である。
図8は、6軸ロボットのアームの先端にリニアツールが取り付けられた7軸のロボットシステムの一例を示す図である。
図8に示すように、ロボット10は、例えば、6軸の垂直多関節ロボット等であり、アームの先端に、リニアツール20が取り付けられている。リニアツール20は、例えば、スライドアーム型の搬送用ツール(関節軸)であり、帯板状(長方形の平板状)のフレーム21と、フレーム21の上面に配置されたロボット側スライダ22と、フレーム21の下面に配置されたワーク側スライダ23とを有する。リニアツール20は、例えば、ワークを吸着する複数の吸着パッドを備えたツール(図示しない)がワーク側スライダ23に装着され、装着されたツール(図示しない)で吸着したワーク(図示しない)を、Y軸方向の1方向に直線上に移動させることができる。
図9は、ロボット10のアームの先端とリニアツール20との位置関係の一例を模式的に示す図である。なお、
図9では、ロボット10として、ロボット10のアームの先端(以下、「ロボット10の手先」ともいう)と、ロボット10の手先以外の部分と、を示している。また、
図9では、ロボット10の座標原点と、ロボット10の手先の位置と、ツール座標原点と、リニアツール20のワーク側スライダ23の位置とが、X軸方向の直線上にある場合を示す。
図10は、リニアツール20のワーク側スライダ23が+Y軸方向に振れる場合の位置関係の一例を模式的に示す図である。
図10に示すように、例えば、リニアツール20のワーク側スライダ23が+Y軸方向に振れる場合、ロボット10の手先は、+Y軸方向に手先移動量として距離D
r移動し、ワーク側スライダ23は、+Y軸方向にツール座標原点を基準にしたツール移動量として距離D
t移動している。そして、作業員は、ロボット10の動作プログラムを作成するにあたり、手先移動量D
rとツール移動量D
tとをそれぞれ検討し、ロボット10の座標原点から見たワーク側スライダ23の座標(以下、「ロボット+ツールの座標」ともいう)を示す全移動量D
all(=D
r+D
t)と、ツール移動量D
tとを入力する必要がある。
しかしながら、手先移動量D
rとツール移動量D
tとの検討には、教示の経験が必要なため、作業員の経験が不足している場合、さらに教示の工数が必要になり教示時間が長くなるという問題がある。
【0005】
そこで、作業員の経験に依存することなく、1つの教示点を教示するだけで動作プログラムを作成することが望まれている。
【課題を解決するための手段】
【0006】
本開示の制御装置の一態様は、ロボットのアームの先端にワークを一方向に移動させる関節軸が取り付けられた前記ロボット及び前記関節軸を制御する制御装置であって、前記ロボットの座標原点から見た前記関節軸の初期位置が設定された動作プログラムに基づいて、前記ロボットと前記関節軸とを合わせた移動範囲を算出する動作プログラム解析部と、算出された前記移動範囲に基づいて、前記移動範囲の境界位置に前記関節軸を移動させる前記関節軸の移動量を指定値とし、前記関節軸が前記境界位置に移動したときの前記ロボットのアームの先端の移動量と、前記境界位置以外の少なくとも1つの教示点の前記関節軸の移動量及び前記ロボットのアームの先端の移動量と、を算出するロボット・ツール移動距離計算部と、を備える。
【0007】
本開示の制御方法の一態様は、コンピュータにより実現される、ロボットのアームの先端にワークを一方向に移動させる関節軸が取り付けられた前記ロボット及び前記関節軸を制御する制御方法であって、前記ロボットの座標原点から見た前記関節軸の初期位置が設定された動作プログラムに基づいて、前記ロボットと前記関節軸とを合わせた移動範囲を算出する動作プログラム解析ステップと、算出された前記移動範囲に基づいて、前記移動範囲の境界位置に前記関節軸を移動させる前記関節軸の移動量を指定値とし、前記関節軸が前記境界位置に移動したときの前記ロボットのアームの先端の移動量と、前記境界位置以外の少なくとも1つの教示点の前記関節軸の移動量及び前記ロボットのアームの先端の移動量と、を算出するロボット・ツール移動距離計算ステップと、を備える。
【発明の効果】
【0008】
一態様によれば、作業員の経験に依存することなく、1つの教示点を教示するだけで動作プログラムを作成することができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係るロボットシステムの機能的構成例を示す機能ブロック図である。
【
図3】
図2の動作プログラムに設定されている教示点の一例を示す図である。
【
図4A】教示点P1、P6におけるロボットの手先の位置とリニアツールのワーク側スライダの位置との関係の一例を示す図である。
【
図4B】教示点P3におけるロボットの手先の位置とリニアツールのワーク側スライダの位置との関係の一例を示す図である。
【
図5】教示点とロボットの座標原点との関係の一例を示す図である。
【
図6】ロボット制御装置の制御処理について説明するフローチャートである。
【
図7】教示点と境界位置との関係の一例を示す図である。
【
図8】6軸ロボットのアームの先端にリニアツールが取り付けられた7軸のロボットシステムの一例を示す図である。
【
図9】ロボットのアームの先端とリニアツールとの位置関係の一例を模式的に示す図である。
【
図10】リニアツールのワーク側スライダが+Y軸方向に振れる場合の位置関係の一例を模式的に示す図である。
【発明を実施するための形態】
【0010】
以下、一実施形態について図面を用いて説明する。
<一実施形態>
図1は、一実施形態に係るロボットシステムの機能的構成例を示す機能ブロック図である。なお、
図8のロボット10及びリニアツール20の要素と同様の機能を有する要素については、同じ符号を付し、詳細な説明は省略する。
図1に示すように、ロボットシステム1は、ロボット10、リニアツール20、及びロボット制御装置30を有する。例えば、ロボットシステム1は、複数のプレス加工機(図示しない)が配置された工場に適用され、ロボット10は、ロボット制御装置30の制御指示に基づいて、リニアツール20を用いて図示しないプレス加工機間でワークの搬送を行う。
【0011】
ロボット10及びリニアツール20と、ロボット制御装置30と、は、図示しない接続インタフェースを介して互いに直接接続されてもよい。なお、ロボット10及びリニアツール20と、ロボット制御装置30と、は、LAN(Local Area Network)等のネットワークを介して相互に接続されていてもよい。この場合、ロボット10及びリニアツール20と、ロボット制御装置30とは、かかる接続によって相互に通信を行うための図示しない通信部を備えてもよい。
【0012】
<ロボット制御装置30>
ロボット制御装置30は、
図1に示すように、動作プログラムに基づいて、ロボット10及びリニアツール20に対して駆動指令を出力し、ロボット10及びリニアツール20の動作を制御する。なお、ロボット制御装置30は、ロボット10及びリニアツール20に対して動作を教示する教示操作盤(図示しない)が接続されてもよい。
図1に示すように、本実施形態に係るロボット制御装置30は、制御部31、入力部32、記憶部33、及び表示部34を有する。また、制御部31は、動作プログラム解析部311、ロボット・ツール移動距離計算部312、及び動作制御・駆動部313を有する。
【0013】
入力部32は、例えば、ロボット制御装置30に含まれる図示しないキーボードやボタン、後述する表示部34のタッチパネル等であり、ロボット制御装置30の作業員からの操作を受け付ける。
【0014】
記憶部33は、例えば、ROM(Read Only Memory)やHDD(Hard Disk Drive)等であり、後述する制御部31が実行するシステムプログラム及びアプリケーションプログラム等を格納する。また、記憶部33は、後述するロボット・ツール移動距離計算部312により算出された各教示点におけるロボット10の手先の手先移動量Dr、及びリニアツール20のワーク側スライダ23のツール移動量Dt等を格納してもよい。
【0015】
表示部34は、例えば、LCD(Liquid Crystal Display)等の表示装置であり、動作プログラムを作成する画面や、ワーク側スライダ23のツール移動量Dtを指定させる画面等を表示する。
【0016】
<制御部31>
制御部31は、CPU(Central Processing Unit)、ROM、RAM、CMOS(Complementary Metal-Oxide-Semiconductor)メモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
CPUはロボット制御装置30を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、システムプログラム及びアプリケーションプログラムに従ってロボット制御装置30全体を制御する。これにより、
図1に示すように、制御部31が、動作プログラム解析部311、ロボット・ツール移動距離計算部312、及び動作制御・駆動部313の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。また、CMOSメモリは図示しないバッテリでバックアップされ、ロボット制御装置30の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
【0017】
動作プログラム解析部311は、例えば、ロボット10の座標原点から見たワーク側スライダ23の座標(すなわち、ロボット+ツールの座標)が設定された動作プログラムを、図示しないコンピュータ等の外部装置から入力し、入力された動作プログラムに基づいて、ロボット10とリニアツール20とを合わせた移動範囲を算出する。
なお、動作プログラム解析部311は、入力部32を介した作業員の入力操作により作成された動作プログラムを取得してもよい。
図2は、動作プログラムの一例を示す図である。
図2の動作プログラムでは、上述したように、教示点P1に対応したイチ[1]のみに、ロボット+ツールの座標(例えば、ロボット10の座標原点から見たワーク側スライダ23の移動可能な最大距離、又は作業員により指定された指定値)が設定されているとする。
図3は、
図2の動作プログラムに設定されている教示点の一例を示す図である。すなわち、
図2に示す動作プログラムに基づいて、ロボット10及びリニアツール20は、例えば、ロボット+ツールの座標を示す教示点P1から教示点P2~P6の順に移動する。なお、
図2に示す動作プログラムでは、教示点P1、P2のイチ[1]、イチ[2]のみしか図示していないが、教示点P3~P6のイチ[3]~イチ[6]も含む。
図4Aは、教示点P1、P6におけるロボット10の手先の位置とリニアツール20のワーク側スライダ23の位置との関係の一例を示す図である。
図4Bは、教示点P3におけるロボット10の手先の位置とリニアツール20のワーク側スライダ23の位置との関係の一例を示す図である。なお、教示点P1、P3、P6におけるツール座標原点(ロボット10の手先位置)に対するワーク側スライダ23のツール移動量を距離D
t1、D
t3、D
t6とする。
なお、
図2の動作プログラムでは、教示点は6つとしたが、6つ以外の複数の教示点を有してもよい。
【0018】
具体的には、動作プログラム解析部311は、入力された動作プログラムを解析する。動作プログラム解析部311は、動作プログラムのイチ[1]に設定された教示点P1のロボット+ツールの座標に基づいて、
図3の教示点P1~P6で囲まれる範囲において、
図4Aに示すように、教示点P1をリニアツール20が-Y軸方向に最も移動する一方の境界位置とし、教示点P6をリニアツール20が+Y軸方向に最も移動する他方の境界位置とする移動範囲を算出する。
【0019】
ロボット・ツール移動距離計算部312は、算出された移動範囲に基づいて、移動範囲の境界位置にリニアツール20のワーク側スライダ23を移動させるツール移動量を指定値とし、ワーク側スライダ23が境界位置に移動したときのロボットの手先の移動量と、境界位置以外の教示点P2~P5それぞれのリニアツール20の移動量と、を算出する。
具体的には、ロボット・ツール移動距離計算部312は、例えば、ツール座標原点の位置を基準にした境界位置の教示点P1、P6におけるワーク側スライダ23の座標までの距離Dt1、Dt6をツール移動量とし、ツール移動量Dt1、Dt6それぞれを指定値Dc1、Dc2にする。また、ロボット・ツール移動距離計算部312は、教示点P1、P6におけるロボット+ツールの座標と、指定値Dc1、Dc2と、の差分により、境界位置の教示点P1、P6におけるロボット10の手先の移動量を算出するようにしてもよい。
なお、指定値Dc1、Dc2は、ツール座標原点を基準にしてワーク側スライダ23の最大の移動量でもよく、作業員により指定された移動用でもよい。例えば、指定値Dc1、Dc2がツール座標原点を基準にしたワーク側スライダ23の最大の移動量とする場合、リニアツール20の性能を最大限に活用することができる。
【0020】
次に、ロボット・ツール移動距離計算部312は、境界位置P1、P6以外の教示点Pn(n=2、3、4、5)におけるツール移動量D
tnを、数1式又は数2式を用いて算出する。
【数1】
【数2】
ここで、D
max1、D
max2は、ロボット10の座標原点から見た境界位置の教示点P1、P6のY軸座標、すなわちロボット+ツールのY軸移動量D
Y1、D
Y6をそれぞれ示し、-Y軸方向、及び+Y軸方向の最大移動量である。また、D
ynは、ロボット10の座標原点から見た教示点Pnのロボット+ツールの座標(以下、「Y軸移動量」ともいう)である。
具体的には、
図5に示すように、教示点Pnにおけるロボット+ツールのY軸移動量D
ynが「0」以下の場合、ロボット・ツール移動距離計算部312は、数1式を用いて、教示点P1のY軸移動量D
max1と教示点PnのY軸移動量D
ynとの比から教示点Pnにおけるツール移動量D
tnを算出する。例えば、ロボット10の座標原点から見た教示点P1のY軸移動量D
max1が1000mmで、ツール移動量D
t1(指定値D
c1)が800mmの場合、教示点P3のY軸移動量D
y3が500mmのときツール移動量D
t3は400mmとなる。
また、教示点Pnにおけるロボット+ツールのY軸移動量D
ynが「0」より大きい場合、ロボット・ツール移動距離計算部312は、数2式を用いて、教示点P6のY軸移動量D
max2と教示点PnのY軸移動量D
ynとの比から教示点Pnにおけるツール移動量D
tnを算出する。
そして、ロボット・ツール移動距離計算部312は、境界位置以外の教示点Pnにおけるロボット+ツールの座標と、ツール移動量D
tnと、の差分により、境界位置以外の教示点Pnにおけるロボット10の手先の移動量を算出するようにしてもよい。
【0021】
動作制御・駆動部313は、ロボット・ツール移動距離計算部312により算出された教示点P2~P6におけるロボット10の手先の移動量と、ツール移動量Dtnと、を動作プログラムのイチ[2]~イチ[6]に設定し、動作プログラムを実行することによりロボット10及びリニアツール20を駆動する。
【0022】
<ロボット制御装置30の制御処理>
次に、本実施形態に係るロボット制御装置30の制御処理に係る動作について説明する。
図6は、ロボット制御装置30の制御処理について説明するフローチャートである。ここで示すフローは、教示点P1におけるロボット10の座標原点から見たワーク側スライダ23の座標(ロボット+ツールの座標)が設定された動作プログラムが入力される度に実行される。
【0023】
ステップS1において、動作プログラム解析部311は、教示点P1のロボット+ツールの座標が設定された動作プログラムを、外部装置(図示しない)から入力する。
【0024】
ステップS2において、動作プログラム解析部311は、入力された動作プログラムを解析し、動作プログラムのイチ[1]に設定された教示点P1のロボット+ツールの座標に基づいて、教示点P1、P6を境界位置とする移動範囲を算出する。
【0025】
ステップS3において、ロボット・ツール移動距離計算部312は、教示点P1、P6におけるワーク側スライダ23のツール移動量Dt1、Dt6を指定値Dc1、Dc2にする。
【0026】
ステップS4において、ロボット・ツール移動距離計算部312は、教示点P1、P6におけるロボット+ツールの座標(Y軸移動量Dmax1、Dmax2)と、指定値Dc1、Dc2と、の差分により、境界位置の教示点P1、P6におけるロボット10の手先の移動量を算出する。
【0027】
ステップS5において、ロボット・ツール移動距離計算部312は、境界位置P1、P6以外の教示点Pnにおけるツール移動量Dtnを、数1式又は数2式を用いて算出する。
【0028】
ステップS6において、ロボット・ツール移動距離計算部312は、境界位置P1、P6以外の教示点Pnにおけるロボット+ツールの座標(Y軸移動量Dyn)と、ツール移動量Dtnと、の差分により、境界位置P1、P6以外の教示点Pnにおけるロボット10の手先の移動量を算出する。
【0029】
ステップS7において、動作制御・駆動部313は、算出された教示点P2~P6におけるロボット10の手先の移動量と、ツール移動量Dtnと、を動作プログラムのイチ[2]~イチ[6]に設定して動作プログラムを実行し、ロボット10及びリニアツール20を駆動する。
【0030】
以上のように、一実施形態に係るロボット制御装置30は、リニアツール20のワーク側スライダ23の移動範囲の最も端に位置する1つの教示点P1のロボット+ツールの座標が設定された動作プログラムを入力する。ロボット制御装置30は、教示点P1のロボット+ツールの座標に基づいて、残りの教示点P2~P6のロボット10の手先の移動量とツール移動量とを数1式又は数2式を用いて算出し、動作プログラムに設定する。これにより、ロボット制御装置30は、作業員の経験に依存することなく、1つの教示点を教示するだけで動作プログラムを作成することができる。そして、ロボット+ツールの教示に経験の少ない作業員でも簡単に教示することができ、作業員によるツール位置の教示の手間を省くことができる。
【0031】
以上、一実施形態について説明したが、ロボット制御装置30は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
【0032】
<変形例1>
上述の一実施形態では、リニアツール20の動作方向をY軸方向としたが、これに限定されず、XY平面内の任意の方向にリニアツール20を移動させるようにしてもよい。
【0033】
<変形例2>
また例えば、上述の実施形態では、ロボット・ツール移動距離計算部312は、境界位置P1、P6以外の教示点Pnにおけるツール移動量D
tnを、数1式又は数2式を用いて算出したが、これに限定されない。例えば、ロボット・ツール移動距離計算部312は、境界位置P1、P6以外の教示点Pnにおけるツール移動量D
tnを、数3式又は数4式を用いて算出してもよい。具体的には、
図7に示すように、教示点PnにおけるY軸移動量D
ynが(D
max1+D
max2)/2以下の場合、ロボット・ツール移動距離計算部312は、数3式を用いて教示点Pnにおけるツール移動量D
tnを算出する。また、教示点PnにおけるY軸移動量D
ynが(D
max1+D
max2)/2より大きい場合、ロボット・ツール移動距離計算部312は、数4式を用いて教示点Pnにおけるツール移動量D
tnを算出する。
【数3】
【数4】
【0034】
なお、一実施形態に係るロボット制御装置30に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
また、ロボット制御装置30に含まれる各構成部は、電子回路等を含むハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。
【0035】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
【0036】
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0037】
以上を換言すると、本開示の制御装置及び制御方法は、次のような構成を有する各種各様の実施形態を取ることができる。
【0038】
(1)本開示のロボット制御装置30は、ロボット10のアームの先端にワークを一方向に移動させるリニアツール20が取り付けられたロボット10及びリニアツール20を制御する制御装置であって、ロボット10の座標原点から見たリニアツール20の初期位置が設定された動作プログラムに基づいて、ロボット10とリニアツール20とを合わせた移動範囲を算出する動作プログラム解析部311と、算出された移動範囲に基づいて、移動範囲の境界位置にリニアツール20を移動させるリニアツール20の移動量を指定値とし、リニアツール20が境界位置に移動したときのロボット10のアームの先端の移動量と、境界位置以外の少なくとも1つの教示点Pnのリニアツール20の移動量及びロボット10のアームの先端の移動量と、を算出するロボット・ツール移動距離計算部312と、を備える。
このロボット制御装置30によれば、作業員の経験に依存することなく、1つの教示点を教示するだけで動作プログラムを作成することができる。
【0039】
(2) (1)に記載のロボット制御装置30において、指定値は、リニアツール20が移動できる距離の最大値であってもよい。
そうすることで、ロボット制御装置30は、リニアツール20の性能を最大限に活用することができる。
【0040】
(3) (1)に記載のロボット制御装置30において、ユーザからの入力を受け付ける入力部32をさらに備え、指定値は、入力部32を介してユーザにより指定された値であってもよい。
そうすることで、ロボット制御装置30は、任意の移動範囲でロボット10及びリニアツール20を移動させることができる。
【0041】
(4) (1)から(3)のいずれかに記載のロボット制御装置30において、算出された境界位置以外の少なくとも1つの教示点のリニアツール20の移動量及びロボット10のアームの先端の移動量を動作プログラムに設定し、動作プログラムを実行する動作制御・駆動部313をさらに備えてもよい。
そうすることで、ロボット制御装置30は、ロボット10及びリニアツール20を駆動させることができる。
【0042】
(5)本開示の制御方法は、コンピュータにより実現される、ロボット10のアームの先端にワークを一方向に移動させるリニアツール20が取り付けられたロボット10及びリニアツール20を制御する制御方法であって、ロボット10の座標原点から見たリニアツール20の初期位置が設定された動作プログラムに基づいて、ロボット10とリニアツール20とを合わせた移動範囲を算出する動作プログラム解析ステップと、算出された移動範囲に基づいて、移動範囲の境界位置にリニアツール20を移動させるリニアツール20の移動量を指定値とし、リニアツール20が境界位置に移動したときのロボット10のアームの先端の移動量と、境界位置以外の少なくとも1つの教示点のリニアツール20の移動量及びロボット10のアームの先端の移動量と、を算出するロボット・ツール移動距離計算ステップと、を備える。
この制御方法によれば、(1)と同様の効果を奏することができる。
【符号の説明】
【0043】
1 ロボットシステム
10 ロボット
20 リニアツール
21 フレーム
22 ロボット側スライダ
23 ワーク側スライダ
30 ロボット制御装置
31 制御部
311 動作プログラム解析部
312 ロボット・ツール移動距離計算部
313 動作制御・駆動部
32 入力部
33 記憶部
34 表示部