JPH07121222A - 定置ツールを用いたバリ取り動作プログラムの自動作成方法 - Google Patents
定置ツールを用いたバリ取り動作プログラムの自動作成方法Info
- Publication number
- JPH07121222A JPH07121222A JP28973993A JP28973993A JPH07121222A JP H07121222 A JPH07121222 A JP H07121222A JP 28973993 A JP28973993 A JP 28973993A JP 28973993 A JP28973993 A JP 28973993A JP H07121222 A JPH07121222 A JP H07121222A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- matrix
- point
- orientation
- determined
- 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.)
- Withdrawn
Links
Landscapes
- Grinding And Polishing Of Tertiary Curved Surfaces And Surfaces With Complex Shapes (AREA)
- Milling, Broaching, Filing, Reaming, And Others (AREA)
- Manipulator (AREA)
- Automatic Control Of Machine Tools (AREA)
- Numerical Control (AREA)
Abstract
(57)【要約】
【目的】 定置ツールを使用したバリ取り動作プログラ
ムの自動作成。 【構成】 オフラインシステム上で、ロボットに把持さ
れたワークWの稜線PsPe に沿って、ベクトルgの方
向に延びたバリGが形成されている。Oは、基準座標系
Σ0 の原点で、TCPはワークW上に設定されたツール
先端点、Kは定置ツールの加工面(法線ベクトルh)上
の加工点である。Σ0 から見たTCPの位置・姿勢を表
わすA行列、Σ0 から見た定置ツールの加工点Kにおけ
る位置・姿勢を表わすB行列、TCPから、ワークWの
バリ点における位置・姿勢を表わすT行列を用いて、A
=B*invTを計算し、ロボットの位置・姿勢を定め
る。ロボットの姿勢は、T行列の姿勢表現部分をPs P
e 間で一定に保つように定めるか、あるいは、Ps Pe
間でT行列の姿勢表現部分が滑らかに変化するように決
定する。経路が曲線の場合には、滑らかさ精度Ac に応
じて、Ps Pe 間を折れ線近似して、各短区間の分割点
毎にA行列を計算して、逐次ロボットの位置・姿勢を決
定し、それに基づいた動作プログラムを作成する。
ムの自動作成。 【構成】 オフラインシステム上で、ロボットに把持さ
れたワークWの稜線PsPe に沿って、ベクトルgの方
向に延びたバリGが形成されている。Oは、基準座標系
Σ0 の原点で、TCPはワークW上に設定されたツール
先端点、Kは定置ツールの加工面(法線ベクトルh)上
の加工点である。Σ0 から見たTCPの位置・姿勢を表
わすA行列、Σ0 から見た定置ツールの加工点Kにおけ
る位置・姿勢を表わすB行列、TCPから、ワークWの
バリ点における位置・姿勢を表わすT行列を用いて、A
=B*invTを計算し、ロボットの位置・姿勢を定め
る。ロボットの姿勢は、T行列の姿勢表現部分をPs P
e 間で一定に保つように定めるか、あるいは、Ps Pe
間でT行列の姿勢表現部分が滑らかに変化するように決
定する。経路が曲線の場合には、滑らかさ精度Ac に応
じて、Ps Pe 間を折れ線近似して、各短区間の分割点
毎にA行列を計算して、逐次ロボットの位置・姿勢を決
定し、それに基づいた動作プログラムを作成する。
Description
【0001】
【産業上の利用分野】本願発明は、定置ツールを用いた
バリ取り動作プログラムの自動作成方法に関し、更に詳
しく言えば、ロボットに支持されたワークと定置ツール
の位置・姿勢の関係を適正に制御することが出来るロボ
ットのバリ取り動作プログラムをオフラインプログラミ
ングシステム上で自動的に作成する方法に関する。
バリ取り動作プログラムの自動作成方法に関し、更に詳
しく言えば、ロボットに支持されたワークと定置ツール
の位置・姿勢の関係を適正に制御することが出来るロボ
ットのバリ取り動作プログラムをオフラインプログラミ
ングシステム上で自動的に作成する方法に関する。
【0002】
【従来の技術】一般に、ロボットを用いてバリ取り作業
を実行する為の動作プログラムを作成する場合には、ロ
ボットの動作経路を指定する為に多数の教示点をとって
ワークとツールの位置・姿勢の関係を定める必要があ
り、工数のかかる作業が要求されていた。特に、定置ツ
ールを使用する場合には、加工点とツールポイント(ロ
ボットに支持されたワーク上に設定されるツール座標系
の原点のこと。以下、TCPと言う。)の位置・姿勢関
係が一定していないので、ロボットの位置・姿勢を適正
に決定することが極めて困難であった。
を実行する為の動作プログラムを作成する場合には、ロ
ボットの動作経路を指定する為に多数の教示点をとって
ワークとツールの位置・姿勢の関係を定める必要があ
り、工数のかかる作業が要求されていた。特に、定置ツ
ールを使用する場合には、加工点とツールポイント(ロ
ボットに支持されたワーク上に設定されるツール座標系
の原点のこと。以下、TCPと言う。)の位置・姿勢関
係が一定していないので、ロボットの位置・姿勢を適正
に決定することが極めて困難であった。
【0003】
【発明が解決しようとする課題】本願発明の目的は、オ
フラインプログラミングシステムを利用して、少ない工
数でロボットに支持されたワークと定置ツールの位置・
姿勢の関係を適正に制御することが出来るロボットのバ
リ取り動作プログラムを自動的に作成する方法を提供す
ることにある。
フラインプログラミングシステムを利用して、少ない工
数でロボットに支持されたワークと定置ツールの位置・
姿勢の関係を適正に制御することが出来るロボットのバ
リ取り動作プログラムを自動的に作成する方法を提供す
ることにある。
【0004】
【問題点を解決するための手段】本願発明は、上記技術
課題をい解決する為に、ワークと定置ツールの姿勢関係
の制御内容に関連した2種類の動作形態に対応して、
「オフラインプロミングシステム上において、ロボット
の基準座標系から見たロボットの位置・姿勢を表わすA
行列と、ロボットの基準座標系Σ0 から見た定置ツール
の加工点における位置・姿勢を表わすB行列と、ロボッ
トのTCPから、ロボットが把持したワークWのバリ点
における位置・姿勢を表わしたT行列を定義し、バリ形
成稜線に対応して指定された区間において、前記加工点
Kと前記バリ形成稜線上の一点が一致しつつロボットが
移動するように前記T行列の位置表現部分を定めると共
に、前記T行列の姿勢表現部分が前記区間について指定
された所定状態に保たれるように決定し、前記各行列
A,B及びT間の関係を定める方程式を解くことによっ
て前記行列Aを決定し、該決定結果に基づいて前記オフ
ラインシステム上でロボットの動作プログラムを作成す
ることを特徴とする定置ツールを用いたバリ取り動作プ
ログラム自動作成方法。」、並びに、「オフラインプロ
ミングシステム上において、ロボットの基準座標系から
見たロボットの位置・姿勢を表わすA行列と、ロボット
の基準座標系Σ0 から見た定置ツールの加工点における
位置・姿勢を表わすB行列と、ロボットのTCPから、
ロボットが把持したワークWのバリ点における位置・姿
勢を表わしたT行列を定義し、バリ形成稜線に対応して
指定された区間において、前記加工点Kと前記バリ形成
稜線上の一点が一致しつつロボットが移動するように前
記T行列の位置表現部分を定めると共に、前記T行列の
姿勢表現部分が前記区間の始点と終点について指定され
た所定状態の間で滑らかに変化するように補間決定し、
該補間が行なわれた点毎に、前記各行列A,B及びT間
の関係を定める方程式を解くことによって前記A行列を
決定し、該決定結果に基づいて前記オフラインシステム
上でロボットの動作プログラムを作成することを特徴と
する定置ツールを用いたバリ取り動作プログラム自動作
成方法。」を提案したものである。
課題をい解決する為に、ワークと定置ツールの姿勢関係
の制御内容に関連した2種類の動作形態に対応して、
「オフラインプロミングシステム上において、ロボット
の基準座標系から見たロボットの位置・姿勢を表わすA
行列と、ロボットの基準座標系Σ0 から見た定置ツール
の加工点における位置・姿勢を表わすB行列と、ロボッ
トのTCPから、ロボットが把持したワークWのバリ点
における位置・姿勢を表わしたT行列を定義し、バリ形
成稜線に対応して指定された区間において、前記加工点
Kと前記バリ形成稜線上の一点が一致しつつロボットが
移動するように前記T行列の位置表現部分を定めると共
に、前記T行列の姿勢表現部分が前記区間について指定
された所定状態に保たれるように決定し、前記各行列
A,B及びT間の関係を定める方程式を解くことによっ
て前記行列Aを決定し、該決定結果に基づいて前記オフ
ラインシステム上でロボットの動作プログラムを作成す
ることを特徴とする定置ツールを用いたバリ取り動作プ
ログラム自動作成方法。」、並びに、「オフラインプロ
ミングシステム上において、ロボットの基準座標系から
見たロボットの位置・姿勢を表わすA行列と、ロボット
の基準座標系Σ0 から見た定置ツールの加工点における
位置・姿勢を表わすB行列と、ロボットのTCPから、
ロボットが把持したワークWのバリ点における位置・姿
勢を表わしたT行列を定義し、バリ形成稜線に対応して
指定された区間において、前記加工点Kと前記バリ形成
稜線上の一点が一致しつつロボットが移動するように前
記T行列の位置表現部分を定めると共に、前記T行列の
姿勢表現部分が前記区間の始点と終点について指定され
た所定状態の間で滑らかに変化するように補間決定し、
該補間が行なわれた点毎に、前記各行列A,B及びT間
の関係を定める方程式を解くことによって前記A行列を
決定し、該決定結果に基づいて前記オフラインシステム
上でロボットの動作プログラムを作成することを特徴と
する定置ツールを用いたバリ取り動作プログラム自動作
成方法。」を提案したものである。
【0005】
【作用】上記の技術課題解決手段の記載からも推考され
るように、本願発明では、ワークと定置ツールの姿勢関
係の制御内容に関連して、次の2種類の動作形態に対応
した動作プログラムを作成することを考える。 ・姿勢一定動作;指定された区間について、ワークの定
置ツールに対する姿勢が一定に保たれるようにロボット
を動作させる動作形態 ・姿勢滑らか接続動作;指定された区間について、ワー
クの定置ツールに対する姿勢が、区間の始点と終点で各
々指定された姿勢の間で滑らかに変化するようにロボッ
トを動作させる動作形態 以下、上記各動作形態に対応した動作プログラムを作成
する原理について説明する。
るように、本願発明では、ワークと定置ツールの姿勢関
係の制御内容に関連して、次の2種類の動作形態に対応
した動作プログラムを作成することを考える。 ・姿勢一定動作;指定された区間について、ワークの定
置ツールに対する姿勢が一定に保たれるようにロボット
を動作させる動作形態 ・姿勢滑らか接続動作;指定された区間について、ワー
クの定置ツールに対する姿勢が、区間の始点と終点で各
々指定された姿勢の間で滑らかに変化するようにロボッ
トを動作させる動作形態 以下、上記各動作形態に対応した動作プログラムを作成
する原理について説明する。
【0006】[1]姿勢一定動作プログラムの作成原理 図1は、定置ツールを使用したバリ取り作業用の動作プ
ログラムを作成するにあたって、ロボットの位置・姿勢
を決定する為に必要な諸関係を表わした模式図である。
図中Wはロボットに支持される加工対象ワークで、面F
1 ,F2 間の稜線Ps Pe (ここでは直線とする。)に
バリGが面F1 に垂直な方向(ベクトルgで表示。)に
延びる態様で形成されているものとする。Oは、作業空
間に固定された座標系として、ロボットに設定される基
準座標系Σ0 の原点であり、TCPはワークW上の定点
として設定されるツール先端点である。また、Kは図示
しない定置ツールの加工面上の加工点である。
ログラムを作成するにあたって、ロボットの位置・姿勢
を決定する為に必要な諸関係を表わした模式図である。
図中Wはロボットに支持される加工対象ワークで、面F
1 ,F2 間の稜線Ps Pe (ここでは直線とする。)に
バリGが面F1 に垂直な方向(ベクトルgで表示。)に
延びる態様で形成されているものとする。Oは、作業空
間に固定された座標系として、ロボットに設定される基
準座標系Σ0 の原点であり、TCPはワークW上の定点
として設定されるツール先端点である。また、Kは図示
しない定置ツールの加工面上の加工点である。
【0007】そして、各点間の位置・姿勢の関係を次の
各行列で表わすものとする。 A行列;ロボットの基準座標系Σ0 から見たロボットの
TCPの位置・姿勢 B行列;ロボットの基準座標系Σ0 から見た定置ツール
の加工点Kにおける位置・姿勢 T行列;ロボットのTCPから、ロボットが把持したワ
ークWのバリ点における位置・姿勢 ロボットの動作は、図示されているように、加工点Kが
常に稜線Ps Pe 上の一点(即ち、バリ点)と一致する
ように制御されるものとすれば、求めるべきA行列は次
式で表わされることになる。
各行列で表わすものとする。 A行列;ロボットの基準座標系Σ0 から見たロボットの
TCPの位置・姿勢 B行列;ロボットの基準座標系Σ0 から見た定置ツール
の加工点Kにおける位置・姿勢 T行列;ロボットのTCPから、ロボットが把持したワ
ークWのバリ点における位置・姿勢 ロボットの動作は、図示されているように、加工点Kが
常に稜線Ps Pe 上の一点(即ち、バリ点)と一致する
ように制御されるものとすれば、求めるべきA行列は次
式で表わされることになる。
【0008】 A=B*invT (*は積、invは逆行列を表わす。)・・・・(1) ここで、B行列は、作業空間内のロボットと定置ツール
の配置関係、加工点Kの位置及び加工面の法線方向(図
1中ベクトルhで表示)によって決まる定行列であり、
オフラインデータに基づいて決定することが出来る性質
のものである。一方、T行列は、一般に次の形を持った
同次変換行列で表わすことが出来る。
の配置関係、加工点Kの位置及び加工面の法線方向(図
1中ベクトルhで表示)によって決まる定行列であり、
オフラインデータに基づいて決定することが出来る性質
のものである。一方、T行列は、一般に次の形を持った
同次変換行列で表わすことが出来る。
【0009】
【数1】 (2)式中、(Nx ,Ny ,Nz )はノーマルベクト
ル、(Ox ,Oy ,Oz)はオリエントベクトル、(Ax
,Ay ,Az )はアプローチベクトルであり、(Lx
(t),Ly(t),Lz(t))は位置ベクトルである。姿勢一
定動作プログラムを作成する場合には、位置ベクトルの
みが時間の関数となり、上記(2)式最右辺の部分行列
Rを規定するノーマルベクトル、オリエントベクトル、
及びアプローチベクトルは、バリの延びた方向(ベクト
ルgの方向)が加工面からワーク側に立てた法線ベクト
ルhの方向と一致(向きは反対;g=−h)するように
決定される定ベクトルとなる。具体的には、アプローチ
ベクトル(Ax ,Ay ,Az )を定置ツールの加工面の
法線ベクトルhの反転ベクトル(−h)と一致させるよ
うに決めれば良い。
ル、(Ox ,Oy ,Oz)はオリエントベクトル、(Ax
,Ay ,Az )はアプローチベクトルであり、(Lx
(t),Ly(t),Lz(t))は位置ベクトルである。姿勢一
定動作プログラムを作成する場合には、位置ベクトルの
みが時間の関数となり、上記(2)式最右辺の部分行列
Rを規定するノーマルベクトル、オリエントベクトル、
及びアプローチベクトルは、バリの延びた方向(ベクト
ルgの方向)が加工面からワーク側に立てた法線ベクト
ルhの方向と一致(向きは反対;g=−h)するように
決定される定ベクトルとなる。具体的には、アプローチ
ベクトル(Ax ,Ay ,Az )を定置ツールの加工面の
法線ベクトルhの反転ベクトル(−h)と一致させるよ
うに決めれば良い。
【0010】また、加工対象区間として稜線の始点Ps
から終点Pe に至る直線を想定しているから、位置ベク
トル(Lx(t),Ly(t),Lz(t))は、始点Ps 及び終点
Peの2点について決定すれば充分である。具体的に
は、始点Ps 及び終点Pe の基準座標系Σ0 上における
位置データ(Xs ,Ys ,Zs ),(Xe ,Ye ,Z
e)を代入すれば、始点Ps 及び終点Pe における各位
置ベクトルが決まり、上記ノーマルベクトル、オリエン
トベクトル、アプローチベクトルと併せて、両点におけ
るB行列が決定される。
から終点Pe に至る直線を想定しているから、位置ベク
トル(Lx(t),Ly(t),Lz(t))は、始点Ps 及び終点
Peの2点について決定すれば充分である。具体的に
は、始点Ps 及び終点Pe の基準座標系Σ0 上における
位置データ(Xs ,Ys ,Zs ),(Xe ,Ye ,Z
e)を代入すれば、始点Ps 及び終点Pe における各位
置ベクトルが決まり、上記ノーマルベクトル、オリエン
トベクトル、アプローチベクトルと併せて、両点におけ
るB行列が決定される。
【0011】これを用いて式(1)に代入すれば、直線
区間の始点Ps 及び終点Pe におけるA行列を求めるこ
とが出来る。これらデータと移動速度Vd を指定するデ
ータ等を併せれば、始点をPs 、終点をPe とする姿勢
一定動作プログラムを作成することが出来る。
区間の始点Ps 及び終点Pe におけるA行列を求めるこ
とが出来る。これらデータと移動速度Vd を指定するデ
ータ等を併せれば、始点をPs 、終点をPe とする姿勢
一定動作プログラムを作成することが出来る。
【0012】以上の説明において、加工区間Ps 〜Pe
を直線と仮定したが、曲線の場合であっても、上記説明
した計算プロセスを繰り返すことによって姿勢一定動作
プログラムを作成することが出来る。即ち、図2に示し
たように、曲線区間の始点Ps 〜終点Pe の間を要求さ
れる(位置変化の)滑らかさ精度レベルAc に応じて分
割して、短いn個の直線区間P0 P1 ,P1 P2 ,・・
・・・,Pi-1 Pi ,・・・・Pn-1 Pn (但し、Ps
=P0 ,Pe =Pn とする。)を接続したもので折れ線
近似し、各短直線区間に関して上記述べた手法を適用す
れば、n+1組のA行列データに基づいて、曲線区間区
間Ps 〜Pe の姿勢一定動作プログラムを作成可能なこ
とは明らかである。なお、各点におけるA行列の位置ベ
クトル部分を定める為の始点/終点P0 ,P1 ,P2 ,
・・・・・Pn-1 Pn の位置データは、加工対象ワーク
の稜線を表わすオフラインデータから容易に求められる
ことは言うまでもない。また、区間分割の方式には種々
のものが知られており、いずれを利用するかは区間形状
等を考慮して適宜選択すれば良い(例;経路長等分割方
式、接線ベクトルの方向が一定量変化する毎に区間を分
割する方式等)。
を直線と仮定したが、曲線の場合であっても、上記説明
した計算プロセスを繰り返すことによって姿勢一定動作
プログラムを作成することが出来る。即ち、図2に示し
たように、曲線区間の始点Ps 〜終点Pe の間を要求さ
れる(位置変化の)滑らかさ精度レベルAc に応じて分
割して、短いn個の直線区間P0 P1 ,P1 P2 ,・・
・・・,Pi-1 Pi ,・・・・Pn-1 Pn (但し、Ps
=P0 ,Pe =Pn とする。)を接続したもので折れ線
近似し、各短直線区間に関して上記述べた手法を適用す
れば、n+1組のA行列データに基づいて、曲線区間区
間Ps 〜Pe の姿勢一定動作プログラムを作成可能なこ
とは明らかである。なお、各点におけるA行列の位置ベ
クトル部分を定める為の始点/終点P0 ,P1 ,P2 ,
・・・・・Pn-1 Pn の位置データは、加工対象ワーク
の稜線を表わすオフラインデータから容易に求められる
ことは言うまでもない。また、区間分割の方式には種々
のものが知られており、いずれを利用するかは区間形状
等を考慮して適宜選択すれば良い(例;経路長等分割方
式、接線ベクトルの方向が一定量変化する毎に区間を分
割する方式等)。
【0013】[2]姿勢一定動作プログラムの作成原理 姿勢滑らか接続動作は、指定された区間について、ワー
クの定置ツールに対する姿勢が、区間の始点と終点で各
々指定された姿勢の間で滑らかに変化するようにロボッ
トを動作させる動作形態である。先ず、上記姿勢一定動
作に関する説明で引用した図1で示したものと同様の状
況設定を行ない、更に、A,B,T各行列について次ぎ
の通り同等の定義を行なうものとする。 A行列;ロボットの基準座標系Σ0 から見たロボットの
TCPの位置・姿勢 B行列;ロボットの基準座標系Σ0 から見た定置ツール
の加工点Kにおける位置・姿勢 T行列;ロボットのTCPから、ロボットが把持したワ
ークWのバリ点における位置・姿勢 ロボットの動作は、図示されているように、加工点Kが
常に稜線Ps Pe 上の一点(即ち、バリ点)と一致する
ように制御されるものとすれば、求めるべきA行列は、
姿勢一定動作の場合と同等な次式で表わされることにな
る。
クの定置ツールに対する姿勢が、区間の始点と終点で各
々指定された姿勢の間で滑らかに変化するようにロボッ
トを動作させる動作形態である。先ず、上記姿勢一定動
作に関する説明で引用した図1で示したものと同様の状
況設定を行ない、更に、A,B,T各行列について次ぎ
の通り同等の定義を行なうものとする。 A行列;ロボットの基準座標系Σ0 から見たロボットの
TCPの位置・姿勢 B行列;ロボットの基準座標系Σ0 から見た定置ツール
の加工点Kにおける位置・姿勢 T行列;ロボットのTCPから、ロボットが把持したワ
ークWのバリ点における位置・姿勢 ロボットの動作は、図示されているように、加工点Kが
常に稜線Ps Pe 上の一点(即ち、バリ点)と一致する
ように制御されるものとすれば、求めるべきA行列は、
姿勢一定動作の場合と同等な次式で表わされることにな
る。
【0014】 A=B*invT ・・・・(3) ここで、B行列は、作業空間内のロボットと定置ツール
の配置関係、加工点Kの位置及び加工面の法線方向(図
1中ベクトルhで表示)によって決まる定行列であり、
オフラインデータに基づいて決定することが出来る性質
のものであることは、姿勢一定動作の場合と同様であ
る。
の配置関係、加工点Kの位置及び加工面の法線方向(図
1中ベクトルhで表示)によって決まる定行列であり、
オフラインデータに基づいて決定することが出来る性質
のものであることは、姿勢一定動作の場合と同様であ
る。
【0015】一方、T行列は、一般に次の形を持った同
次変換行列で表わすことが出来る。
次変換行列で表わすことが出来る。
【0016】
【数2】 (4)式中、(Nx(t),Ny(t),Nz(t))はノーマルベ
クトル、(Ox(t),Oy(t),Oz(t))はオリエントベク
トル、(Ax(t),Ay(t),Az(t))はアプローチベクト
ルであり、(Lx(t),Ly(t),Lz(t))は位置ベクトル
である。
クトル、(Ox(t),Oy(t),Oz(t))はオリエントベク
トル、(Ax(t),Ay(t),Az(t))はアプローチベクト
ルであり、(Lx(t),Ly(t),Lz(t))は位置ベクトル
である。
【0017】このT行列の表式が、姿勢一定動作プログ
ラム作成時の上記(2)式と基本的に異なっているの
は、位置ベクトルに加えて、ノーマルベクトル、オリエ
ントベクトル、及びアプローチベクトルも一定ではな
く、時間の関数となっている点である。
ラム作成時の上記(2)式と基本的に異なっているの
は、位置ベクトルに加えて、ノーマルベクトル、オリエ
ントベクトル、及びアプローチベクトルも一定ではな
く、時間の関数となっている点である。
【0018】従って、加工対象区間となる稜線が始点P
s から終点Pe に至る直線である場合であっても、要求
される(姿勢変化の)滑らかさの精度Ac'に応じて、直
線区間始点Ps 〜終点Pe の間を分割して、短いm個の
直線区間P0 P1 ,P1 P2,・・・・・,Pi-1 Pi
,・・・・Pn-1 Pm (但し、Ps =P0 ,Pe =Pm
とする。)を接続したものに置き換える。
s から終点Pe に至る直線である場合であっても、要求
される(姿勢変化の)滑らかさの精度Ac'に応じて、直
線区間始点Ps 〜終点Pe の間を分割して、短いm個の
直線区間P0 P1 ,P1 P2,・・・・・,Pi-1 Pi
,・・・・Pn-1 Pm (但し、Ps =P0 ,Pe =Pm
とする。)を接続したものに置き換える。
【0019】そして、全区間の始点Ps 及び終点Pe に
おける各姿勢(一般に、両者は異なる。)を指定し、全
区間Ps 〜Pe に至るロボット動作を通して、T行列の
姿勢表現部分R(t)が滑らかに変化していくように、
各分割区間の始点/終点P0,P1 ,P2 ,・・・・Pm
におけるT行列を決定する。各点P0 ,P1 ,P2,・
・・・Pm におけるT行列の位置ベクトル部分について
は、始点Ps 及び終点Pe の位置データ(Xs ,Ys ,
Zs ),(Xe ,Ye ,Ze )に基づく補間計算によっ
て簡単に決定することが出来る。
おける各姿勢(一般に、両者は異なる。)を指定し、全
区間Ps 〜Pe に至るロボット動作を通して、T行列の
姿勢表現部分R(t)が滑らかに変化していくように、
各分割区間の始点/終点P0,P1 ,P2 ,・・・・Pm
におけるT行列を決定する。各点P0 ,P1 ,P2,・
・・・Pm におけるT行列の位置ベクトル部分について
は、始点Ps 及び終点Pe の位置データ(Xs ,Ys ,
Zs ),(Xe ,Ye ,Ze )に基づく補間計算によっ
て簡単に決定することが出来る。
【0020】(4)式で表わされるT行列のノーマルベ
クトル、オリエントベクトル、及びアプローチベクトル
の部分(R(t)部分)については、始点Ps (=P0
)及び終点Pe (=Pm )で各々指定された上記3ベ
クトルのデータを用い、ポールの2角度法に従って、各
点P0 ,P1 ,P2 ,・・・・Pm における値を決定す
れば良い。
クトル、オリエントベクトル、及びアプローチベクトル
の部分(R(t)部分)については、始点Ps (=P0
)及び終点Pe (=Pm )で各々指定された上記3ベ
クトルのデータを用い、ポールの2角度法に従って、各
点P0 ,P1 ,P2 ,・・・・Pm における値を決定す
れば良い。
【0021】もし、区間Ps 〜Pe が曲線である場合に
は、位置変化に関して要求される精度レベルAc と姿勢
変化について要求される精度レベルAc'とを比較して、
より厳しい要求(細かな区間分割を要求)に応えられる
ようにu個の分割区間折れ線区間P0 P1 ,P1 P2 ,
・・・・・・Pu-1 Pu (但し、Ps =P0 ,Pe =P
u とする。)を接続したもので近似し、各短直線区間に
関して上記述べた手法を適用すれば、u+1組のA行列
データに基づいて、曲線区間区間Ps 〜Pe を通して姿
勢を滑らかに変化させる動作プログラムを作成可能なこ
とは明らかである。
は、位置変化に関して要求される精度レベルAc と姿勢
変化について要求される精度レベルAc'とを比較して、
より厳しい要求(細かな区間分割を要求)に応えられる
ようにu個の分割区間折れ線区間P0 P1 ,P1 P2 ,
・・・・・・Pu-1 Pu (但し、Ps =P0 ,Pe =P
u とする。)を接続したもので近似し、各短直線区間に
関して上記述べた手法を適用すれば、u+1組のA行列
データに基づいて、曲線区間区間Ps 〜Pe を通して姿
勢を滑らかに変化させる動作プログラムを作成可能なこ
とは明らかである。
【0022】以上が本願発明の原理の概要であり、オフ
ラインプロミング装置上で上記原理に従った方法を実施
する為のデータの準備及び処理の進め方の具体例につい
ては、下記の実施例で説明する。
ラインプロミング装置上で上記原理に従った方法を実施
する為のデータの準備及び処理の進め方の具体例につい
ては、下記の実施例で説明する。
【0023】
【実施例】図3は、本願発明の方法を実施する際に使用
可能なオフラインプログラミング装置の構成の概略を示
した要部ブロック図である。図中、1はマイクロプロセ
ッサ(以下、CPUという)、7は該自動プログラミン
グ装置の制御プログラムを格納したROM、2はフロッ
ピーディスクまたはハードディスク(以下、単にディス
クと言う。)11からロードされたシステムプログラム
や各種のデータ等を格納するRAM、3はキーボード、
4はCRT表示装置(以下、CRTという)、9はタブ
レット装置、8はディスクコントローラ、10は作成図
面を出力するためのX−Yプロッタ、5はプリンタであ
り、これらの各要素はバス6を介して接続されている。
可能なオフラインプログラミング装置の構成の概略を示
した要部ブロック図である。図中、1はマイクロプロセ
ッサ(以下、CPUという)、7は該自動プログラミン
グ装置の制御プログラムを格納したROM、2はフロッ
ピーディスクまたはハードディスク(以下、単にディス
クと言う。)11からロードされたシステムプログラム
や各種のデータ等を格納するRAM、3はキーボード、
4はCRT表示装置(以下、CRTという)、9はタブ
レット装置、8はディスクコントローラ、10は作成図
面を出力するためのX−Yプロッタ、5はプリンタであ
り、これらの各要素はバス6を介して接続されている。
【0024】タブレット装置9は、画面対応領域9aと
メニュー表9bとを有し、タブレットカーソル9cを画
面対応領域9a内で移動させてCRT4上のグラフィッ
クカーソルを移動して指示操作を行うことによりCRT
4の画面上で任意位置を指定したり、また、メニュー表
9b上でタブレットカーソル9cを移動させて指示操作
を行うことによりディスク11に準備されたシステムプ
ログラムから各種のメニュー項目を選択するようになっ
ている。以下、上記オフラインプログラミング装置を使
用して、作用の説明の欄で述べた諸量設定状況(基準座
標系Σ0 、ツールポイントTCP、区間始点/終点P
s,Pe 、A、B、T各行列等)をベースにして、本願
発明の方法を実施するプロセスについて説明する。ここ
では、区間Ps Pe 間が図2に示されたような曲線で与
えられた場合について、姿勢滑らか接続動作を行なわせ
るケースを想定する。
メニュー表9bとを有し、タブレットカーソル9cを画
面対応領域9a内で移動させてCRT4上のグラフィッ
クカーソルを移動して指示操作を行うことによりCRT
4の画面上で任意位置を指定したり、また、メニュー表
9b上でタブレットカーソル9cを移動させて指示操作
を行うことによりディスク11に準備されたシステムプ
ログラムから各種のメニュー項目を選択するようになっ
ている。以下、上記オフラインプログラミング装置を使
用して、作用の説明の欄で述べた諸量設定状況(基準座
標系Σ0 、ツールポイントTCP、区間始点/終点P
s,Pe 、A、B、T各行列等)をベースにして、本願
発明の方法を実施するプロセスについて説明する。ここ
では、区間Ps Pe 間が図2に示されたような曲線で与
えられた場合について、姿勢滑らか接続動作を行なわせ
るケースを想定する。
【0025】[1]準備 動作プログラム作成にあたって、ディスク11内にロボ
ット、ワーク及び定置ツールを指定する為のデータ、B
行列を構成するデータ、Ps 〜Pe の曲線を表現するデ
ータを準備する。また、上記作用の欄で述べた計算プロ
セスに従って、図4のフローチャート(内容後述。)に
記された処理を実行する為のシステムプログラムと関連
設定データを同時に準備しておくものとする。
ット、ワーク及び定置ツールを指定する為のデータ、B
行列を構成するデータ、Ps 〜Pe の曲線を表現するデ
ータを準備する。また、上記作用の欄で述べた計算プロ
セスに従って、図4のフローチャート(内容後述。)に
記された処理を実行する為のシステムプログラムと関連
設定データを同時に準備しておくものとする。
【0026】[2]条件指定作業 以上のデータ及びプログラムの準備を行なった上で、オ
ペレータは、ディスク11に保存された上記諸データ及
び関連プログラムを一旦RAM2に読み込ませ、CRT
4にプログラム作成条件設定画面を表示させ、データの
内容の確認を行ないつつ、ロボットの指定、定置ツール
の指定、バリ取り稜線(ここでは、曲線区間Ps 〜Pe
区間)の指定、加工精度の指定(ここでは、経路分割区
間数nを指定するものとする。)、Ps 及びPe におけ
る姿勢(T行列のR部分Rs とRe )、移動速度Vd 等
の指定を順次行う。
ペレータは、ディスク11に保存された上記諸データ及
び関連プログラムを一旦RAM2に読み込ませ、CRT
4にプログラム作成条件設定画面を表示させ、データの
内容の確認を行ないつつ、ロボットの指定、定置ツール
の指定、バリ取り稜線(ここでは、曲線区間Ps 〜Pe
区間)の指定、加工精度の指定(ここでは、経路分割区
間数nを指定するものとする。)、Ps 及びPe におけ
る姿勢(T行列のR部分Rs とRe )、移動速度Vd 等
の指定を順次行う。
【0027】[3]動作プログラムの作成 以上の作業が終了したら、オペレータはタブレット装置
9を操作し、メニュー表9bから「姿勢滑らか接続動作
プログラム生成処理」のシステムプログラムをダウンロ
ードしてCPU1を起動させ、図4のフローチャートに
示した処理を開始させる。図4は、ディスク11に保存
された「姿勢滑らか接続動作プログラム生成処理」のた
めのシステムプログラムの概略を示すフローチャートで
あり、以下、このフローチャートを参照して本実施例の
処理動作を説明する。
9を操作し、メニュー表9bから「姿勢滑らか接続動作
プログラム生成処理」のシステムプログラムをダウンロ
ードしてCPU1を起動させ、図4のフローチャートに
示した処理を開始させる。図4は、ディスク11に保存
された「姿勢滑らか接続動作プログラム生成処理」のた
めのシステムプログラムの概略を示すフローチャートで
あり、以下、このフローチャートを参照して本実施例の
処理動作を説明する。
【0028】CPU1は、まず、分割点指標iを0に初
期設定した上で(ステップS1)、指定された分割区間
数nと曲線Ps 〜Pe を表わすデータに基づいて、第i
番目の分割点Pi の位置を計算する(ステップS2)。
最初の分割点は始点Ps 自身(Xs ,Ys ,Zs )であ
る。分割点Pi の位置が定められたならば、始点Ps及
び終点Pe におきて指定された姿勢データ(Rs ,Re
)に基き、ポールの2角度法に従って、点Pi におけ
る姿勢(Ri )を求め、Pi の位置データと合わせて、
位置Pi におけるT行列を決定する(ステップS3)。
期設定した上で(ステップS1)、指定された分割区間
数nと曲線Ps 〜Pe を表わすデータに基づいて、第i
番目の分割点Pi の位置を計算する(ステップS2)。
最初の分割点は始点Ps 自身(Xs ,Ys ,Zs )であ
る。分割点Pi の位置が定められたならば、始点Ps及
び終点Pe におきて指定された姿勢データ(Rs ,Re
)に基き、ポールの2角度法に従って、点Pi におけ
る姿勢(Ri )を求め、Pi の位置データと合わせて、
位置Pi におけるT行列を決定する(ステップS3)。
【0029】次いで、作用の説明の欄で述べた(1)式
の計算を実行して、位置Pi におけるA行列を決定する
(ステップS4)。この段階で、Pi におけるロボット
の位置・姿勢を定める為の動作プログラムデータが用意
されたことになる。
の計算を実行して、位置Pi におけるA行列を決定する
(ステップS4)。この段階で、Pi におけるロボット
の位置・姿勢を定める為の動作プログラムデータが用意
されたことになる。
【0030】以下、分割点の残存のチェック(ステップ
S5)と、分割点指標iのカウントアップ(ステップS
6)を挟んで、ステップS2〜ステップS4の処理をn
+1回繰り返すことによって、全分割点P0 (=Ps
),P1 ,P2 ,・・・・Pn(=Pe )におけるA行
列が決定されるから、最後にCPU1は、これらのデー
タに動作速度Vd 等の必要な情報を加えて、区間Ps P
e 間の動作プログラムを作成する(ステップS7)。
S5)と、分割点指標iのカウントアップ(ステップS
6)を挟んで、ステップS2〜ステップS4の処理をn
+1回繰り返すことによって、全分割点P0 (=Ps
),P1 ,P2 ,・・・・Pn(=Pe )におけるA行
列が決定されるから、最後にCPU1は、これらのデー
タに動作速度Vd 等の必要な情報を加えて、区間Ps P
e 間の動作プログラムを作成する(ステップS7)。
【0031】以上、1つの区間Ps Pe に対する動作プ
ログラムの作成処理について説明したが、区間が複数に
亙る場合にも、各区間について上記処理を逐次的に実行
することによって同様に複数区間に亙ってロボット動作
を制御するプログラムを作成出来ることは言うまでもな
い。
ログラムの作成処理について説明したが、区間が複数に
亙る場合にも、各区間について上記処理を逐次的に実行
することによって同様に複数区間に亙ってロボット動作
を制御するプログラムを作成出来ることは言うまでもな
い。
【0032】また、区間が直線の場合や、姿勢一定動作
プログラムを作成する場合の処理についても、データの
準備、作業条件の指定の内容とCPU処理の内容(T行
列の定め方)を加えれば、同様に自動的な動作プログラ
ムの作成が可能なことは、作用の説明の欄の記載及び上
記実施例の説明に照らして明らかであろう。
プログラムを作成する場合の処理についても、データの
準備、作業条件の指定の内容とCPU処理の内容(T行
列の定め方)を加えれば、同様に自動的な動作プログラ
ムの作成が可能なことは、作用の説明の欄の記載及び上
記実施例の説明に照らして明らかであろう。
【0033】
【発明の効果】本願発明によれば、オフラインプログラ
ミングシステムを利用して、定置ツールによるバリ取り
作業を行なうロボットの位置・姿勢を適正に制御し得る
動作プログラムが自動的に作成されるから、上記作業の
為の動作プログラムの作成に要する作業負担を大幅に軽
減することが出来る。
ミングシステムを利用して、定置ツールによるバリ取り
作業を行なうロボットの位置・姿勢を適正に制御し得る
動作プログラムが自動的に作成されるから、上記作業の
為の動作プログラムの作成に要する作業負担を大幅に軽
減することが出来る。
【図1】定置ツールを使用したバリ取り作業用の動作プ
ログラムを作成するにあたって、ロボットの位置・姿勢
を決定する為に必要な諸関係を表わした模式図である。
ログラムを作成するにあたって、ロボットの位置・姿勢
を決定する為に必要な諸関係を表わした模式図である。
【図2】区間Ps Pe 間が曲線で与えられた場合につい
て、短いn個の直線区間を接続したもので折れ線近似す
ることを説明する図である。
て、短いn個の直線区間を接続したもので折れ線近似す
ることを説明する図である。
【図3】本願発明の方法を実施する際に使用可能なオフ
ラインプログラミング装置の構成の概略を示した要部ブ
ロック図である。
ラインプログラミング装置の構成の概略を示した要部ブ
ロック図である。
【図4】図3に示したオフラインプログラミング装置の
CPUによって実行される「姿勢滑らか接続動作プログ
ラム生成処理」のためのシステムプログラムの概略を示
すフローチャートである。
CPUによって実行される「姿勢滑らか接続動作プログ
ラム生成処理」のためのシステムプログラムの概略を示
すフローチャートである。
1 マイクロプロセッサ(CPU) 2 RAM 4 CRT表示装置 6 バス 7 ROM 8 ディスクコントローラ 9 タブレット装置 11 ディスク(フロッピーディスクまたはハードディ
スク) F1 ,F2 ワーク面 G バリ K 加工点 W ワーク g バリの方向を表わすベクトル h 定置ツールの加工面に立てた法線ベクトル Ps 始点 Pe 終点 P0 〜Pn 分割点 Σ0 基準座標系 A,B,T 位置・姿勢関係(行列)
スク) F1 ,F2 ワーク面 G バリ K 加工点 W ワーク g バリの方向を表わすベクトル h 定置ツールの加工面に立てた法線ベクトル Ps 始点 Pe 終点 P0 〜Pn 分割点 Σ0 基準座標系 A,B,T 位置・姿勢関係(行列)
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 B23Q 15/14 Z B24B 9/00 C 9325−3C B25J 9/22 Z G05B 19/42
Claims (2)
- 【請求項1】 オフラインプロミングシステム上におい
て、ロボットの基準座標系から見たロボットの位置・姿
勢を表わすA行列と、ロボットの基準座標系Σ0 から見
た定置ツールの加工点における位置・姿勢を表わすB行
列と、ロボットのTCPから、ロボットが把持したワー
クWのバリ点における位置・姿勢を表わしたT行列を定
義し、 バリ形成稜線に対応して指定された区間において、前記
加工点Kと前記バリ形成稜線上の一点が一致しつつロボ
ットが移動するように前記T行列の位置表現部分を定め
ると共に、前記T行列の姿勢表現部分が前記区間につい
て指定された所定状態に保たれるように決定し、 前記各行列A,B及びT間の関係を定める方程式を解く
ことによって前記行列Aを決定し、 該決定結果に基づいて前記オフラインシステム上でロボ
ットの動作プログラムを作成することを特徴とする定置
ツールを用いたバリ取り動作プログラム自動作成方法。 - 【請求項2】 オフラインプロミングシステム上におい
て、ロボットの基準座標系から見たロボットの位置・姿
勢を表わすA行列と、ロボットの基準座標系Σ0 から見
た定置ツールの加工点における位置・姿勢を表わすB行
列と、ロボットのTCPから、ロボットが把持したワー
クWのバリ点における位置・姿勢を表わしたT行列を定
義し、 バリ形成稜線に対応して指定された区間において、前記
加工点Kと前記バリ形成稜線上の一点が一致しつつロボ
ットが移動するように前記T行列の位置表現部分を定め
ると共に、前記T行列の姿勢表現部分が前記区間の始点
と終点について指定された所定状態の間で滑らかに変化
するように補間決定し、 該補間が行なわれた点毎に、前記各行列A,B及びT間
の関係を定める方程式を解くことによって前記A行列を
決定し、 該決定結果に基づいて前記オフラインシステム上でロボ
ットの動作プログラムを作成することを特徴とする定置
ツールを用いたバリ取り動作プログラム自動作成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28973993A JPH07121222A (ja) | 1993-10-27 | 1993-10-27 | 定置ツールを用いたバリ取り動作プログラムの自動作成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28973993A JPH07121222A (ja) | 1993-10-27 | 1993-10-27 | 定置ツールを用いたバリ取り動作プログラムの自動作成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07121222A true JPH07121222A (ja) | 1995-05-12 |
Family
ID=17747136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28973993A Withdrawn JPH07121222A (ja) | 1993-10-27 | 1993-10-27 | 定置ツールを用いたバリ取り動作プログラムの自動作成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07121222A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012135835A (ja) * | 2010-12-27 | 2012-07-19 | Denso Wave Inc | ロボットの制御装置及びロボットの姿勢補間方法 |
DE102016102862A1 (de) | 2015-02-19 | 2016-08-25 | Fanuc Corporation | Werkzeugmaschine |
DE102016121058A1 (de) | 2015-11-11 | 2017-05-11 | Fanuc Corporation | Werkzeugmaschine |
CN113909543A (zh) * | 2021-11-11 | 2022-01-11 | 哈尔滨工业大学 | 阵列结构加工件工艺毛刺的去除方法 |
-
1993
- 1993-10-27 JP JP28973993A patent/JPH07121222A/ja not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012135835A (ja) * | 2010-12-27 | 2012-07-19 | Denso Wave Inc | ロボットの制御装置及びロボットの姿勢補間方法 |
DE102016102862A1 (de) | 2015-02-19 | 2016-08-25 | Fanuc Corporation | Werkzeugmaschine |
DE102016121058A1 (de) | 2015-11-11 | 2017-05-11 | Fanuc Corporation | Werkzeugmaschine |
US10377010B2 (en) | 2015-11-11 | 2019-08-13 | Fanuc Corporation | Machine tool |
DE102016121058B4 (de) | 2015-11-11 | 2020-01-16 | Fanuc Corporation | Werkzeugmaschine |
CN113909543A (zh) * | 2021-11-11 | 2022-01-11 | 哈尔滨工业大学 | 阵列结构加工件工艺毛刺的去除方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4503659B2 (ja) | 座標変換工具位相制御用数値制御装置 | |
JP4847428B2 (ja) | 加工シミュレーション装置およびそのプログラム | |
JP5374616B1 (ja) | 工作機械の工具ベクトルを表示する工具軌跡表示装置 | |
JP2011043874A (ja) | 工作機械の工具ベクトル表示装置 | |
US7979254B2 (en) | Simulation apparatus and method for NC machining | |
JP3135738B2 (ja) | 数値制御装置 | |
JPH07121222A (ja) | 定置ツールを用いたバリ取り動作プログラムの自動作成方法 | |
CN107664980B (zh) | 数值控制装置以及刀具的移动控制方法 | |
JPH06202727A (ja) | 三次元レーザ加工機用シミュレーション装置 | |
JPH0736519A (ja) | ロボットのニアミスチェック方法 | |
JPH08286722A (ja) | Cadデータ利用オフラインティーチング方法及びそのシステム | |
JPH06119031A (ja) | 削り残し部加工のncデータ作成方法 | |
WO1993001535A1 (en) | Method for specifying position where fillet curved surface is located | |
JP4343072B2 (ja) | Nc加工シミュレーション装置 | |
JPH06110534A (ja) | 工作機械における位置制御方法 | |
JP4560191B2 (ja) | 数値制御装置 | |
JPH0628021A (ja) | 対話形数値制御装置 | |
JP2000112510A (ja) | ロボットの教示方法及びその装置 | |
JP6110250B2 (ja) | Ncプログラムにおける回転送り軸指令の変化度合いの算出及び表示方法並びに装置 | |
US11231699B2 (en) | Program analysis device | |
JPS59200306A (ja) | Nc機器の移動を図形処理する方法 | |
WO2021141019A1 (ja) | 移動経路描画装置 | |
JP2554757B2 (ja) | 三次元加工プログラム作成方法 | |
JP6423827B2 (ja) | 数値制御装置および工具の移動制御方法 | |
JP2000347715A (ja) | 数値制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010130 |