JP2016218934A - ロボット言語プログラムの修正装置,方法およびプログラム - Google Patents

ロボット言語プログラムの修正装置,方法およびプログラム Download PDF

Info

Publication number
JP2016218934A
JP2016218934A JP2015105977A JP2015105977A JP2016218934A JP 2016218934 A JP2016218934 A JP 2016218934A JP 2015105977 A JP2015105977 A JP 2015105977A JP 2015105977 A JP2015105977 A JP 2015105977A JP 2016218934 A JP2016218934 A JP 2016218934A
Authority
JP
Japan
Prior art keywords
robot
language program
route
data
motion trajectory
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.)
Pending
Application number
JP2015105977A
Other languages
English (en)
Inventor
成匡 黒木
Shigemasa Kuroki
成匡 黒木
弘治 杉本
Hiroharu Sugimoto
弘治 杉本
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.)
IAI Corp
Original Assignee
IAI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by IAI Corp filed Critical IAI Corp
Priority to JP2015105977A priority Critical patent/JP2016218934A/ja
Publication of JP2016218934A publication Critical patent/JP2016218934A/ja
Pending legal-status Critical Current

Links

Abstract

【目的】少なくとも2軸を同時に駆動して停止することなく連続的に移動するようにロボットを制御するロボット言語プログラムに従うロボットの動作軌跡を最も適したものにできるようにする。
【構成】希望する第1の移動経路に対応するロボット言語プログラムに従う第1の試行軌跡データを求めて第1の移動経路とともに表示する。第1の試行軌跡が第1の移動経路から許容限界以上外れていた場合には修正経路を入力してロボット言語プログラムを修正し,修正したロボット言語プログラムに従う第2の試行軌跡を求めて,希望する第1の移動経路とともに表示する。
【選択図】図18

Description

この発明は,ロボット言語プログラムの修正装置,方法およびプログラムに関する。
ロボットには直交型ロボット,多関節ロボットなどさまざまなタイプのものがある。これらのロボットに所望の動作を行なわせるためのプログラムは,一般にロボット言語によって表現される。ロボット言語はロボットの製造メーカによって開発されてきたので,似ている点もあるが,厳密にはメーカごとに異なることが多い。コントローラは,ロボット言語で書かれたプログラム(一連の命令)を解釈して,ロボットを直接に動かすアクチュエータ(回転モータ,リニアモータ等)の駆動回路(装置)に制御指令(位置指令,速度指令)を与える。駆動回路はこの制御指令に従って,一般的にはフィードバック制御によりアクチュエータを駆動する。このようにして,ロボット言語で表現された命令に従ってロボットが所望の動きを行うことになる。
駆動回路と命令にしたがうロボット動作の一例について以下に簡単に述べる。X軸方向とY軸方向に動く2軸直交ロボットを例にとる。
図19に駆動回路の例が示されている。この駆動回路はX軸モータ110 を駆動するX軸駆動回路とY軸モータ120 を駆動するY軸駆動回路とを含む。これらのX軸駆動回路とY軸駆動回路は同じ構成であるから,一方のX軸駆動回路について説明する。
X軸モータ110の回転量(回転角度位置)はエンコーダ116によって検出される。エンコーダ116の出力信号に基づいて,位置検出器117,速度検出器118 により,X軸モータの位置(角度位置)および速度がそれぞれ検出される。コントローラ(図示略)からX軸上の位置指令(X位置指令)が出力され,減算器111 において位置指令による位置と位置検出器117が検出した位置との偏差が算出され,位置制御器112に与えられる。位置制御器112 は入力する位置の差信号に基づいて速度指令を生成する。この速度指令による速度と速度検出器118が検出した速度との偏差が減算器113において算出され,速度制御器114 に与えられる。速度制御器114 は入力する速度の差信号に基づいて,電流指令または電圧指令を生成し電流/電圧制御器115に与えるので,この制御器115によってX軸モータ110 の回転が制御(モータの種類によって電流制御または電圧制御)される。
Y軸駆動回路も同様に,減算器121,位置制御器122,減算器123,速度制御器124,電流/電圧制御器125,エンコーダ126,位置検出器127,速度検出器128によって構成される。
これらの駆動回路の一部はプログラムされたコンピュータによって実現されることもある。
この2軸直交ロボットを,図20に実線で示すように,まずX軸に沿って点(位置)P1からP2まで動かし,次にY軸に沿って位置P2からP3まで動かす(たとえばロボットの先端,またはロボットに把持された機器もしくは器具を移動させる)とする。この場合に,最も典型的な移動命令(これを第1の移動命令という。たとえば後述するMOVP命令など)にしたがうと,X軸モータ110とY軸モータ120は,図21に示すように速度制御される。図21は横軸を時間(t),縦軸を速度(v)にとってある。まず,点P1から点P2に向って移動するようにX軸モータ110 を加速し,次に定速運転し,点Pに近づいたら減速して,点Pに停止させる。速度(v)は台形状に変化する(Y軸モータ120は静止している)。その後,点P2からY軸モータ120 を加速し,一定速度に達したら定速運転に切換え,点P3に近づくと減速して点P3で停止させる。X軸モータ110は停止したままである。
上記のような動作は,点P2で瞬間的であるにせよ一旦停止するし,停止のために減速し,停止後加速するので,たとえば液体の供給,塗布,溶接,はんだ付け等の作業のためには必ずしも適切ではない。このような作業のためには,ロボットは点P2付近で多少減速,加速することはあっても,停止せずに連続的に移動を継続することが好ましい。
連続的に移動を継続する他の典型的な移動命令(これを第2の移動命令という。たとえば後述するPATH命令など)による制御は図22に示すように行なわれる。すなわち,ロボットが点P2に近づいたときに,X軸モータ110を減速させながら,Y軸モータ120を始動して加速するように速度制御を行うものである。この制御ではロボット(上述のようにロボットの先端またはロボットに把持された機器もしくは器具)は点P2付近で停止することはないが,X軸モータ110が停止する前にY軸モータ120が動くので,ロボットの移動軌跡は図20に破線で示すように点P2を通らずに円弧を描く。あらかじめ予定した経路の一部である点P2を通らずに近廻りをしてしまうので,上述した液体の供給,塗布作業等においては必ずしも適切でない場合がある。
点P2の付近で液体の供給量や塗布量を制御したり,移動速度を調整したりするという方策もあるが,あらかじめ予定した経路にできるだけ近づけて移動させるように制御すること,そのために,より適切なロボット言語プログラムを作成(または生成)できるようにすることが望まれる。
なお,簡単のために2軸直交ロボットの例で説明したが,多軸直交ロボット,多関節ロボット等においても同様の問題は起こりうる。また,コントローラによっては,一つの移動命令で,設定されたモードに応じて,図21のように制御したり,図22のように制御したりするものもある。
液体の供給,塗布等の作業を行うロボットを制御するためのロボット言語プログラムの作成を移動経路図等の描画作業と並行して行うようにした装置が特許文献1に記載されている。
特許第5187911号公報
しかしながら特許文献1には,一旦作成したロボット言語プログラムにしたがってロボットを試行動作させ,その試行動作の軌跡に応じて,ロボット言語プログラムを修正し,ロボットの移動経路を予定した経路にできるだけ近づけるようにすることまでは記載されていない。
この発明は,少なくとも2軸を同時に駆動して停止することなく連続的に移動するようにロボットを制御するロボット言語プログラムに従う試行動作の軌跡に応じて,移動経路を調整できるようにした,ロボット言語用プログラムの修正装置,方法およびプログラムを提供するものである。
この発明によるロボット言語プログラムの修正装置は,ロボットの第1の移動経路を表示装置の表示画面に表示する第1の経路表示制御手段,前記第1の移動経路に対応するロボット言語プログラムに基づくロボットの第1の試行動作軌跡を表わすデータを生成してこのデータに基づいて第1の試行動作軌跡を,上記第1の移動経路とともに,表示画面に表示する第1の試行動作軌跡表示制御手段,入力される修正経路(第2の移動経路)を受付けるとともに該修正経路を表示画面に表示する第2の経路表示制御手段,受付けた修正経路に基づいて前記ロボット言語プログラムを修正するプログラム修正手段,および修正されたロボット言語プログラムに基づくロボットの第2の試行動作軌跡を表わすデータを生成してこのデータに基づいて第2の試行動作軌跡を,少なくとも前記第1の移動経路とともに,表示画面に表示する第2の試行動作軌跡表示制御手段を備えるものである。
一実施態様では,前記第1の試行動作軌跡表示制御手段は,前記第1の移動経路に対応するロボット言語プログラムに基づくロボットの第1の試行動作軌跡を表わすデータを生成する第1の試行動作手段を含む。また,前記第2の試行動作軌跡表示制御手段は,修正されたロボット言語プログラムに基づくロボットの第2の試行動作軌跡を表わすデータを生成する第2の試行動作手段を含む。
これらの第1,第2の試行動作手段は,必ずしも実際にロボットを駆動するものでなくてもよい。たとえば,ロボット言語プログラムを解釈してロボットの駆動回路に与えるべき制御指令(たとえば位置指令)を発生する制御プログラムまたは制御装置であってもよい。この場合に,発生する位置指令の表わす位置データが試行動作軌跡を表わすデータとなる。この場合に,遅延手段を含む程度の簡単なモデル,またはロボット駆動回路のモデル等に制御指令を与え,その応答(ロボットの位置データ)を取得し,この位置データを試行動作軌跡を表わすデータとしてもよい。もちろん,実際にコントローラを動作させたり,コントローラによりロボット駆動回路を駆動して,その応答(フィードバックされる位置データ)を取得してこの位置データを試行動作軌跡を表わすデータとしてもよい。
好ましい一実施態様では,表示画面に表示される第1の移動経路に基づいて前記ロボット言語プログラムを作成するロボット言語プログラム作成手段を備える。この場合に,前記プログラム修正手段を前記ロボット言語プログラム作成手段に含ませておくとよい。前記ロボット言語プログラム作成手段そのものが前記プログラム修正手段であってもよい。
望ましくは,前記第1の移動経路および前記修正経路(第2の移動経路)を入力する入力手段を備える。入力された移動経路に基づいて前記ロボット言語プログラム作成手段がロボット言語プログラムを作成または修正するとよい。
この発明によると,第1の移動経路に対応するロボット言語プログラムに従う第1の試行動作軌跡を表示画面に表示して,第1の試行動作軌跡が,所望の第1の移動経路に適切に沿っているかどうかを判断することができる。そして必要ならば修正経路の入力を受付けて,修正経路に基づいて先のロボット言語プログラムを修正し,この修正されたロボット言語プログラムに従う第2の試行動作軌跡を,第1の移動経路とともに表示している。したがって,修正後の第2の試行動作軌跡が,所望の第1の移動経路に適切に沿っているかどうかを確認して,経路の修正の適否,修正ロボット言語プログラムの適否を判断することができる。経路の修正は何回行ってもよく,最終的に,希望する第1の移動経路に最も良く適合する試行動作軌跡を描くロボット言語プログラムを得ることができる。好ましくは,上記に加えて,修正された経路も表示するとよい。この発明はロボット言語プログラム修正方法およびプログラムも提供している。
ロボット言語プログラム自動作成(修正)装置(システム)の機能的構成を示すブロック図である。 ロボット言語プログラム自動作成(修正)装置(システム)における全体的な動作を示すフローチャートである。 ロボット言語プログラム自動作成(修正)ルーチンを示すフローチャートである。 移動経路を表わすデータを手動で入力するためのユーザインターフェイス画面の初期画面を示す。 作業原点編集ウィンドウを示す。 第1番目の直線を入力したときの画面を示す。 13の直線,1つの円弧,1つの円による移動経路を入力したときの画面を示す。 作図された移動経路を拡大して示すものである。 ロボット言語プログラム作成処理に進む画面を示す。 経路作図処理により作成した経路を表わすデータ(中間データ)の一例を示す。 図10に示す移動経路データに基づいて,その移動経路に沿ってロボットを動かすSELプログラムの一例を示す。 図11のSELプログラムに付随するポジションデータを示す。 アーチモーションを説明するための図である。 作図した経路と試行動作軌跡との表示画面を示す。 図14の一部の拡大図である。 修正後の作図データの中間データの例を示す。 修正後のSELプログラムのポジションデータを示す。 修正前の作図経路,修正後の作図経路および修正後の試行動作軌跡を示す。 X軸とY軸を駆動する一般的なロボット駆動回路の一例を示すブロック図である。 2軸直交ロボットの移動経路をXY座標上で示す図である。 図20に示す移動経路に沿ってX軸方向に移動し,点P2で一旦停止してから次にY軸方向に移動するときのX軸,Y軸の速度線図を示す。 図20に示す移動経路に沿って点P2で停止せずに連続的に移動するときのX軸,Y軸の速度線図を示す。
(1) システム構成
図1はロボット言語プログラム自動作成(修正を含む)装置(システム)の機能的構成を示すものである。図19に一例を示すようなロボットの駆動回路30やロボット言語プログラムを解釈して駆動回路30に指令(位置指令など)を出力するコントローラ20が破線で示されている。駆動回路30にはモータ,エンコーダ等を含ませてもよい。
ロボット言語プログラム自動作成(修正)装置10は,プログラムされたコンピュータシステムによって実現される。コンピュータシステムには,たとえば,いわゆるPC(パーソナルコンピュータ),ロボット用のティーチング装置等も含まれる。ロボット言語プログラム自動作成装置10は,機能的に分けると,コンピュータシステムの中枢である処理部11,入力部12,出力部13,表示部14および記憶部15から構成される。表示部14は,入力部12の入力機能および出力部13の出力機能の一部を兼ねるが,表示機能が特に重要なので,これらの各部12,13とは別に表示部14として明示されている。
入力部12は,キーボード,マウス等の通常の入力装置に加えて,USBメモリ,CD−ROM等に記憶されたデータを読込む媒体リーダ,有線,無線を問わず通信によりデータ(命令を含む)を受信する通信装置等を含む。出力部13は入力部12と一部を共通にする。すなわち,出力部13は各種データ等を記憶媒体に書込む媒体ライタ(媒体リーダと一部兼用可能),通信(送信)により出力する通信装置(入力部22の通信装置と兼用してもよい)を含む。さらに出力部13は,各種データや処理結果を印刷して出力するプリンタを備える。
表示部14は,入力部12のキーボード,マウス等と協働してロボットの移動経路や修正経路の入力と表示,メニュー画面,プルダウンリスト等の表示を通して各種設定,命令,データ等の入力,ロボットの試行動作の軌跡の表示等のユーザインターフェイスとしての各種入力,表示を行う。
記憶部15は,作成した,または入力されたロボット言語プログラム(以下,出願人の命名によるSELプログラムの用語を使用する),SELプログラムに付随しその一部をなすポジションデータ,ロボット言語プログラム作成(修正)プログラム等の各種プログラムや,ユーザによって入力された経路データ(修正経路データを含む),試行動作によって得られる試行動作軌跡データ等の各種データ等を記憶するとともに,作業エリアとしても用いられる。記憶部15は,半導体メモリ,ハードディスク等により実現される。
処理部11は,主に,ロボット言語プログラム作成(修正)プログラムにしたがって処理を行い,第1の移動経路,修正経路の入力の受付処理(入力処理)(手段),第1の経路の表示制御処理(手段),ロボット言語プログラムの作成(修正)処理(手段),第1,第2の試行動作処理(手段),第1,第2の試行動作軌跡表示制御処理(手段)等を行う(または上記各手段として機能する)。これらの処理の過程で,処理部11は入力部12または表示部14から各種データ,命令等を受取り,出力部13,表示部14に各種データを出力(表示)し,記憶部15からのデータやプログラムの読取り,書込みを行う。
ロボットの移動経路や試行動作軌跡は,ロボットの特定の箇所(たとえばロボットの動作部の先端部)やロボットに把持された,または取付けられた機器,器具,部材等の特定点(箇所)の移動経路,移動軌跡を指す。
(2) 経路作図とロボット言語プログラムの作成
図2はロボット言語プログラム自動作成装置10における全体的な動作を示すフローチャートである。まずユーザは表示部14の表示画面上で自分の希望する(または目標とする)移動経路(第1の移動経路)を入力する。すなわち,装置10はユーザが経路を入力するためのユーザインターフェイスを表示画面上に提供し,ユーザが入力する経路を表わすデータを取込む(経路作図)(S11)。続いて装置10は,入力された移動経路データに基づいてロボット言語プログラム(SELプログラム)を自動的に作成する(S12)。ロボット言語プログラム自動作成処理ルーチンが図3に示されている。
まず移動経路の入力からロボット言語プログラム作成までの処理(S11,S12,S21,S22)について説明する。
移動経路の入力には,手動入力モードと,DXFデータ取込みによる入力モードとがある。
最初に,移動経路を表わすデータを手動で入力する場合(手動入力モード)について図4から図7を参照して説明する。
図4において,表示部14の表示画面には,初期画面が表示される。この画面の半分以上の領域は所望の移動経路を作図するエリアであり,ます目(グリッド線)が薄く描かれ,かつ左側および上部に目盛が表わされている。横方向がX軸,縦方向がY軸であり,左下の隅が座標原点(0,0)(P10)である。この実施例では,目盛は 1.000(有効数字下3桁)刻みであり,ます目は10.000刻みである。現実のロボットの移動についての距離の単位は1mmでも(この実施例では目盛の 1.000が1mmに対応する),1cmでも,他の長さでもよい。
座標原点(0,0)(P10)の位置が入力部12のマウスで右クリックされると,作業メニューがポップアップされる。作業メニューには,DXF図形取り込み,始点/終点入れ替え,図形削除,図形編集,参考図形リストへ取り込みがある。
この作業メニュー中の「図形編集」がクリックされると,図5に示すような作業原点編集ウィンドウが表示画面に現われる。このウィンドウでは,作業原点P11の座標が,入力部12のキーボード,マウス等を用いて入力される。この例では,X座標が 5.000(mm),Y座標が6.000(mm),Z座標が100.000(mm)である。Z座標は上から下に向って正方向に設定される。Z軸の最も高い位置がZ座標の原点(Z=0)である。必要に応じて速度,加速度,減速度も入力される。速度は図21,図22に示す台形のグラフの上辺に当る等速運転時の速度である。加速度は台形のグラフの上り勾配,減速度は下り勾配に相当する。速度,加速度,減速度が入力されないときにはデフォルト値が用いられる。
図4または図6の画面に示されるように,移動経路の作図エリアの上には,描画図形(線)の要素の種類(タイプ)(またはアクションの種類)を示す4つのアイコンが配置されている。それらは点を示すアイコン(点の図形),直線(直線移動)を示すアイコン(斜めの直線の図形),円弧(円弧移動)を示すアイコン(半円の図形),円(円移動)を示すアイコン(円の図形)である。
ユーザによって1本目の直線描画のアイコンがクリックされ,さらに1本目の直線PA1の始点位置P12と終点位置P13が順次画面の作図エリア上でクリックされる。ここでは,始点位置P12(X,Y座標)として(10,80)が,終点位置P13として(15,130 )がクリックされたものとする。作図エリア上にはクリックされた始点と終点とを結ぶ直線PA1が表示される。先に入力された作業原点P11から始点P12までは破線の直線が描かれている。
さらに,始点P12のZ座標を入力するために,描画された直線PA1をクリックして選択し,右クリックする。これによりポップアップされる作業メニュー中の図形編集をクリックして図5のようなウィンドウを呼び出し,Zの座標を 150と入力する。Z座標は一旦入力された後は,Z座標を指定して入力しない限り,先に入力されたZ座標の値がそのまま用いられる。終点(15,130 )(P13)についてはZ座標が入力されないので,先のZ座標が用いられる。
図6の表示画面の左側に示すように,既入力の「0001:作業原点移動」について作業原点の座標値と,「0002:直線移動」について始点と終点の座標値が表示される。終点のZ座標は入力されないので,*印が表示されている。
直線描画のアイコンを1本目の直線PA1についてクリックして直線描画の命令を既に入力済であるから,2本目以降の直線については,その始点P13と終点P14の位置を画面上でクリックするだけで,2本目の直線PA2であることと,それらのX,Y座標を入力することができる。2本目の直線の始点位置(15,130 )(これは1本目の直線の終点位置と同じ)(P13)と終点位置(25,130 )(P14)が入力される。同様に3本目〜13本目の直線(PA3〜PA13)の始点と終点の位置座標(X,Y座標のみ)が入力される。
13本目の直線PA13の終点(P25)に続いて円弧の移動経路を作図するとする。この場合には,円弧描画のアイコンがクリックされ,その後,円弧の始点位置( 130,70)(P25),円弧の終点位置(130,100)(P26)および円弧の通過点位置( 143,83)(P27)が画面上でその位置をカーソル(ポインティング・デバイス)等で指定してクリックすることにより入力され,これらの入力により円弧CA1の図形が定まる。
円弧CA1の終点P26に続けて,円CA2の移動経路を作図するとする。円描画のアイコンをクリックした後,円の始点位置(130,100)(円弧の終点位置でもある)(P26)が画面上でクリックされ,続いて円の通過点2位置(141,130)(P29),円の通過点1位置(120,118)(P28)が画面上で指示されてクリックされることにより,円CA2の経路についてのデータが入力される。円弧の指定は,円の中心位置座標,半径および始点または終点位置の座標により入力することもできる。また,円の指定は,たとえば中心位置座標と半径で入力することもできる。ロボット言語プログラムの構造に合致した図形(移動経路)の入力(定義)を行なうことが望ましいが,ロボット言語プログラムの命令で直接的に用いる座標を入力しなくても,移動経路の形と移動経路を一義的に定める主要な通過点,特徴点等が入力されればよい。
このようにして,ジグザグに描かれた13の直線(PA1〜PA13),それに続く1つの円弧CA1,さらにそれに連続する1つの円CA2による移動経路が図7に示すように入力され,定義されたことになる。図7の画面の左側には,図6の状態以降に入力された線種(移動経路の種類,タイプ)とそれを定める座標値が表示される。「0003:直線移動」,から「0014:直線移動」,「0015:円弧移動」,「0016:円移動」までである。これらの移動経路を定める座標値はプルダウンリストにより表示可能である。
移動経路の作図は,このようにユーザが手動で行うことが可能であるが,CADデータ(DXFデータ)を用いて半自動で行うこともできる(DXFデータ取込みによる入力モード)。
DXFデータは既に作成されて記憶部15内に格納されているものとする。手動入力モードの場合と同じように,初期画面(図4)において,作図エリアの左下隅(0,0)の位置にある作業原点P10が右クリックされると,作業メニューがポップアップされるので,「図形編集」をクリックして,座標位置(5,6,100 )(P11)を入力する(図5と同じ)。
メニューバーの「ファイル(F) 」をクリックし,続いて順次表示されるメニュー中の「ファイルを開く(O) 」,「DXFファイル(D) 」をクリックすると,DXFファイルが開かれ,その内容(DXF図形)が移動経路作図エリアに表示される。このDXF図形は図7の移動経路作図エリアに表示されているのと同じようなものである。
DXFデータ取込みによる入力モードでは,表示部14の表示画面に表示されたDXF図形をその要素(直線,円弧,円など)ごとに確認または必要に応じて修正するものである。すなわち,DXF図形がユーザの意図に沿って描かれているか,誤りはないか,SEL言語プログラムの作成のために適切な表現(始点,終点,中間点など)となっているか等をチェックし,要すれば,修正する。
ユーザは,DXF図形中の1本目の直線PA1をクリックして選択する。そして,1本目の直線が適切であれば,右クリックでポップアップされる作業メニュー中の「DXF図形取込み」をクリックする。これにより,DXF図形中の1本目の直線PA1を表わす図形データ(直線移動であること,始点P12,終点PA13の座標)が確定する。
Z座標を入力するために,再び1本目の直線PA1をクリックして選択する。右クリックにより現われる作業メニュー中の「図形編集」をクリックし,Z位置座標として 150を入力する。前述したように,以降Z座標値を入力しない限り,同じZ座標値が使用される。
2本目の直線PA2をクリックして選択し,2本目の直線が適切であれば,右クリックのポップアップメニューの「DXF図形取込み」をクリックする。以降,すべての図形要素について同様に選択,「DXF図形取込み」のクリックを繰り返す。修正したい図形要素があれば,手動入力モードの場合と同様に適切な図形要素と座標を入力して(位置のポインティングのみならず数値で入力することもできる)入力した図形要素データで先のDXFデータの該当データを書き替えればよい。
以上で,経路作図の入力操作と対応するコンピュータ処理(図2,S11)が終了する。作図された経路は図8に拡大して分りやすく示されている(第1の経路表示制御手段)。
次に,ロボット言語(SEL)プログラムの作成処理に進む(図2,S12)。図9に示すように,ユーザは,表示部14の表示画面上のメニューバーの「プロジェクト(P) 」をクリックして現われるメニュー中の「SELプログラム生成(G) 」をクリックする。すると,処理部11は,自動的にSELプログラムとポジションデータを生成する。
図10は先に説明した経路作図処理で作成された経路を表わすデータ(中間データ)である。図11はこの経路データに沿ってロボットを移動させるように,該経路データに基づいて作成されたSELプログラム,図12はこのSELプログラムに付随する(SELプログラムの一部を示す)ポジションデータである。
SELプログラムの自動作成の説明に先だち,出願人が構築しかつ命名したSELプログラムのいくつかの命令およびポジションデータについてこの実施例の理解に必要な範囲で,図11および図12を参照して説明しておく。
SEL言語の構造にしたがうと,「命令(Instruction )」の1ステップは,「拡張条件部(AND・OR) 」,「入力条件部(入出力・フラグ)」,「命令・宣言部」および「出力部」から構成される。以下,「命令・宣言部」について説明する。
「命令・宣言部」は,命令・宣言(以下,単に「コマンド」という),操作1(以下,「オペランド1」という)および操作2(以下,「オペランド2」という)から構成される。
図11には,図10に示される中間データ(経路データ)にしたがって自動作成された(S12)SELプログラムデータの一例が示されている。最も左側の番号(NO.1〜NO.47)は命令(Instruction)の番号(いわばステップNO.)であり,各番号ごとに1ステップ命令が記述されている。コマンドはCmndと略記され,オペランド1,オペランド2はそれぞれOperand1,Operand2に表記されている。さらに,必要なものについてコメント(Comment )が記述されている。
NO.1のコマンド「BTOF 300」は,出力ポート・フラグ操作のうち,オペランド1の「300」で示された出力ポートのフラグをオフせよという命令である。この実施例は,ロボットの先端(Z軸の先端)にノズルを取付け,このノズルにより液体(接着剤,インキ等)を上述した経路に沿って塗布する作業を行うものである。出力ポート300 はノズルによる液体の吐出のオン,オフを制御するポートである。したがって,コマンド「BTOF 300」は塗布指令オフ(OFF)の意味である。
NO.2 のコマンド「GRP」はグループ軸設定命令で,コマンド「GRP」に続くオペランド1の「111 」(3ビット列)で表わされる軸パターンのポジションデータ(図12に示すもので,詳しくは後述する)だけを有効にすることを意味する。軸パターンは,この実施例では,左から第3軸,第2軸,第1軸(以下,単に「3軸」,「2軸」,「1軸」という)の順であり,上述したX,Y,Z軸で表現すると,Z,Y,X軸の順である。「GRP 111」は,Z,Y,X軸(3,2,1軸)を有効にせよという命令である。
NO.3のコマンド「ACHZ」はアーチモーションZ軸宣言で,アーチモーション(後述する)Z方向の軸NO.を指定するものである。「ACHZ 3」は3軸がアーチモーションのZ軸であることを宣言するものである。
NO.4,NO.5のコマンド「HOME」は,オペランド1の軸パターンで指定された軸について原点復帰を指令するものである。軸パターンのビット列は上述したように3,2,1軸の順であるから,NO.4の「HOME 100」は3軸(Z軸)についての原点復帰指令,NO.5の「HOME 011」は,2軸と1軸(Y,X軸)についての原点復帰指令である。
ここで原点復帰における「原点」は機械原点の意味であり,機械軸(モータ軸やねじ軸)の動作上の出発点となる位置である。概念的には,上述した座標原点P10(これは経路作図上の原点)や作業原点P11(これは塗布作業の原点,この実施例では塗布を開始する位置を示す)とは異なる(結果的に,または実際上,これらが同じ位置になってもよい)。
NO.7の「GRP 100」は3軸(Z軸)を有効にすべきことを示す。NO.9の「GRP 11」は,正確には「GRP 011」の意味で(3軸について0を省略している),2軸,1軸(Y,X軸)を有効にすべきことを示す。
NO.8の「MOVP」はPTPポジションデータ指定移動を示すコマンドである。PTPはPoint To Pointの略である。NO.10のコマンド「MOVL」はポジションデータ指定移動を示す。
コマンドMOVLとMOVPはいずれも現在位置から目標位置まで移動して目標位置で停止する動作を意味するが,移動の仕方が異なる。簡単の為に2次元XY座標系で考える。現在位置を(x1,y1),目標位置を(x2,y2)とする。現在位置と目標位置とのX軸上の差(x2−x1)とY軸上の差(y2−y1)とが異なるものとする。たとえば(x2−x1)の方が(y2−y1)よりも大きいものとする。X軸移動はX軸モータで,Y軸移動はY軸モータで駆動されるとする。
仮にX軸移動とY軸移動とが同じ速度で行なわれるとすると,Y軸の方が先に目標座標位置y2に到着し,その後にX軸上の目標位置x2に着く。必ずしも同じ速度でなくてもよいが,いずれにしても,現在位置(Point)から出発して目標位置(Point)まで(To)到着すればよく,X軸,Y軸が必ずしも同時に到着しなくてもよい移動をPTP移動という(別の用語を使うと,次に述べる「補間」なしの移動)。これがコマンドMOVPによる移動である。
X軸の移動による目標位置(x2)への到着とY軸の移動による目標位置(y2)への到着とが,必ず,同時になるように,X軸移動の速度(加減速度を含む)とY軸移動の速度(加減速度を含む)とを調整することを「補間」という。補間を伴って出発位置から目標位置まで移動することがMOVLコマンドによる移動である。
コマンドMOVP,MOVLのいずれにおいても目標位置はポジションデータで与えられる。ポジションデータは,図12に示すように,一群のX,Y,Z座標値,速度(Vel ),加速度(Acc)および減速度(Dcl)を含む。座標値は目標位置,始点,終点,その他の移動に関する位置を示す。速度は,たとえば図21,22に示す速度線図における一定速度の値,加速度は上り勾配,減速度は下り勾配を表わす。これら一群のデータには識別番号が付けられている。それは図12に示すNO.51,NO.52等で,これをポジションナンバー(ポジションNO.と略記する)という。
SELプログラムにおいて,ポジションデータは,コマンドのオペランド1,2のいずれか一方または両方に,それを特定するポジションNO. を用いて設定される。ポジションNO. は,ポジションデータに比べれば,データ量がはるかに少ないので,SELプログラム中にポジションNO. を記述することにより,SELプログラムが簡潔になる。特に,1つのSELプログラムにおいて,同じポジションデータを複数回使用する場合に,図12に示すポジションデータテーブルを作成しておきさえすれば,同じポジションデータを複数回記述することなく,ポジションNO. を複数回記述すれば良いから,データ量の削減の効果は大きい。
NO.7のコマンド「GRP」とNO.8のコマンド「MOVP」は対をなす。NO.7のコマンド「GRP 100」によってZ軸が有効とされ,有効とされたZ軸について,NO.8のコマンド「MOVP 51」によって,ポジションNO.51のポジションデータ(Z軸の座標値のみ)によって表わされるZ軸の座標値(図12を参照すると,Z座標0.000 )までPTP移動せよと指令される。
NO.9のコマンド「GRP」とNO.10のコマンド「MOVL」も対をなす。NO.9のコマンド「GRP 11」によってY軸とX軸が有効とされ,NO.10のコマンド「MOVL 56」によって,ポジションNO.56 のポジションデータによって表わされる位置(X=5.000,Y=6.000)に補間を伴う移動が行なわれ,その位置で停止する。続いて,NO.11の「GRP 100」によってZ軸が有効とされ,NO.12の「MOVP 56」によってZ=100.00の位置にZ軸のみ移動してその位置で停止する。最後にNO.13の「GRP 111」によって,Z,Y,X軸が有効とされる。ロボットは作業原点P11の位置にある。
NO.15のコマンド「ATRG」(アーチトリガ設定)およびNO.16のコマンド「ARCH」(アーチモーション)については,図13を参照して説明する。NO.3 の「ACHZ」によってZ軸方向のアーチが設定されている。図13は主にZ軸上の動きを表わすものである。
コマンド「ATRG」のオペランド1(ポジションNO.52 )によって始点アーチトリガの位置(Z軸上の位置)が,オペランド2(ポジションNO.53 )によって終点アーチトリガの位置(Z軸上の位置)が規定される。始点アーチトリガは,アーチモーションZ軸以外の方向(この実施例ではX軸,Y軸方向)への移動を開始する位置であり,終点アーチトリガはZ軸以外の方向の移動を完了してから通過する位置である。
コマンド「ARCH」のオペランド1(ポジションNO.57 )はアーチモーションの終点を規定し,オペランド2(ポジションNO.54 )はアーチモーションで通過すべきZ軸上の最上位点を示す。上記において,オペランド1,2はポジションNO. によって指定される位置である。
したがって,コマンド「ATRG 52 53」とコマンド「ARCH 57 54」によって,ロボットは,始点(この実施例では先に到達した作業原点P11)からZ軸方向に上昇を開始し,始点アーチトリガのZ位置に至ると,X,Y軸方向への移動を開始し,アーチモーション最上位点(Z軸上の位置)を通過し,X,Y軸方向への移動を完了してから,終点アーチトリガ近傍を通過して下降を続け,終点(ポジションNO.57 の座標位置)に到達して停止する。これは,直線移動PA1の始点P12の位置である。すなわち,ロボットは,作業原点P11から始点P12までアーチモーションで移動することになる。
続いて,コマンド「BTON」により,オペランド1によって指定される出力ポートNO.300のフラグがオンされ,ノズルより流体が吐出される。液体の吐出の開始とともに次のコマンド「PATH」によりパス移動を行う。一般にコマンド「PATH」は,そのオペランド1で開始ポジションを,オペランド2で終了ポジションを指定するもので,この場合には,開始ポジションから終了ポジションまで連続移動するように指令する。オペランド1とオペランド2に同じポジションNO.を記述すると,「PATH」はそのポジションNO.の位置を通過する連続移動を行うように指令するものとなる。
NO.18のコマンド「PATH 58 58」により,先のポジションNO.57(始点P12)の位置からポジションNO.58 の位置(P13の位置)に移動し(X,Y軸方向のみの移動)(経路PA1),ここで停止することなく,さらにNO.20 のコマンド「PATH 59 59」により,ポジションNO.58(点P13)の位置を通過して連続的にポジションNO.59の位置(点P14に対応)に向い(経路PA2),さらにNO.22のコマンド「PATH 60 60」によりポジションNO.59(P14)の位置を連続的に通過してポジションNO.60 の位置(点P15相当)に向って(経路PA3)この位置を通過していくことになる。このようにして連続するコマンドPATHにより,上述したジグザグの経路に沿って連続的に移動しながら液体の吐出,すなわち塗布が行なわれていく。この間にZ軸上の位置は変化しない。
そして,直線の経路PA13に沿う移動が終了すると,コマンド「ARC2」による円弧移動に連続的に(停止することなく)移る。コマンド「ARC2」ではオペランド1に通過ポジションのポジションNO.が,オペランド2に終了ポジションのポジションNO.が記述される。したがって,コマンド「ARC2 71,72」により,経路P13の終点P25から停止することなく円弧移動を開始し,ポジションNO.71 で指定される位置P27(X,Y座標のみ)を通り,ポジションNO.72で指定される位置P26に至る(円弧CA1)。
続いて,コマンド「CIR2」により円移動に連続的に移る。コマンド「CIR2」はオペランド1,2に通過ポジションのポジションNO. を記述するもので,この順序で通過し,起点に戻って停止する円運動を指令するものである。オペランド1,2のポジションNO. を入れ替えれば逆廻りとなる。コマンド「CIR2 73,74」により,円弧運動の終了位置P26を起点としてポジションNO.73,74 (P28,P29)で特定される位置(X,Y座標のみ)を通る円を描く移動を行い,起点P26に戻って停止する。この後,コマンドBTOFにより出力ポートNO.300のフラグがオフされ,液体の吐出が終る。すなわち,塗布作業が終了する。
経路作図処理(S11)により得られる中間データは図10に示すように,アクション(移動,図形または要素の種類)とその始点,終点,通過点などにより構成される。作成されるSELプログラムの命令は,図11,図12に示すように,コマンドとオペランドを含み,オペランドには主にポジションデータのポジションNO. が記述される。これらを対比して分るように,SELプログラムの作成処理は,移動経路を示すアクションにコマンドを対応させ,オペランドのポジションデータ(ポジションNO. )に移動経路の始点,終点,通過点などの位置データを対応させることにより処理部11により自動的に行なわれる。
移動経路を示すアクション(図形の種類)とSELプログラムのコマンドとを対応させたコマンドの表をあらかじめ作成して記憶部15に格納しておくとよい。上の説明から分るように,移動経路を示すアクションが直線移動の場合には,これに対応するSELプログラムのコマンドはMOVP,MOVL,PATH等である。MOVP,MOVLは移動後停止する動作を指示するコマンドであるが,PATHはオペランドで示された点を停止せずに通過していくことを示す。ロボットの単なる移動の場合にはコマンドMOVP,MOVL等がふさわしく,液体の塗布作業等にはコマンドPATHがふさわしい。作図において,ロボットの移動は破線で描画し,塗布作業移動は実線で描画しておけばこれらの区別は可能である。
SELプログラムのオペランドに記述する位置データ(ポジションデータ)は,コマンドに依拠する。たとえばMOVP,MOVLの場合には目標位置(移動の終点)であり,PATHの場合には通過点(移動の終点)であり,ARC2の場合には通過点と終点であり,CIR2の場合には2つの通過点である。経路作図処理では,SEL言語のオペランドが要求する点を指定しておくことが好ましい。もっとも,言語によって,たとえば円移動の場合,円の中心と半径を指定するものがあった場合には,経路作図処理で特定された3つ以上の点に基づいて円の中心と半径を演算によって求めればよい。
SEL言語に基づいて説明したが,多種多様なロボット言語が存在するので,そのロボット言語が要求する構造にあわせて,作図処理で得られた経路データをコマンドとオペランド(より一般的には,命令とデータ)に変換すればよい。場合によっては,一つの経路に2つ以上のコマンドが対応することもあるし,2つ以上の経路を1つのコマンドで表現することもできる。
いずれにしても,ロボット言語プログラムの自動作成処理(図2,S12)においては,経路作図処理で得られたアクションをロボット言語プログラムの命令(コマンド)に変換し(上述のように1対1とは限らない)(図3,S21),経路作図処理により得られた座標データをロボット言語プログラムのオペランド(データ)に変換(置換または演算)する(図3,S22)ことにより実現される。なお,図11に示すSELプログラムのNO.1〜NO.13のように,機械原点復帰動作,作業原点移動などの当然に必要なルーチンについては,あらかじめその部分のSELプログラムを作成しておくようにしてもよい。
(3) 試行動作と経路およびロボット言語プログラムの修正
SELプログラム(ロボット言語プログラム)の作成が終了すると,必要ならば,ロボットが作成したSELプログラムにしたがって,意図した通りに(作図した経路の通りに)動くかどうかの試行が行なわれる(図2,S13でYES ,S14)(第1の試行動作手段)。たとえば表示部14の表示画面を初期メニュー画面に戻し,試行を選択すればよい。
試行にはさまざまな実行形態がある。その一は,記憶部15に,作成したSELプログラムを解釈してロボットの駆動回路を制御する指令を発生する制御プログラム(コントローラ20が持つものと同じような制御プログラム)をあらかじめ格納しておき,処理部11にこの制御プログラムにしたがう動作を行なわせるものである。この場合に,制御プログラムが作成する位置指令をそのまま取込んで,試行結果データ(試行動作軌跡)とすることができるし,発生した位置指令値を若干の遅延させてフィードバックさせたり,速度指令まで発生させてフィードバックさせたりしてもよい。
第二は,あらかじめロボットのモデルを作成しておき(記憶部15に記憶しておき),このモデルに作成した位置指令を与え,モデルからフィードバックさせる位置データを試行結果データ(試行動作軌跡)とするものである(コンピュータシミュレーション)。
第三は,図1に破線で示すように,コントローラ20を実際に接続して,コントローラに,作成したSELプログラムを与え,そのSELプログラムの実行に伴って生じる試行結果データを得ることである。この場合に,コントローラ20に駆動回路30を接続し,駆動回路30からフィードバックされる位置データ(図19の位置検出器117,127から出力される位置データ)を試行結果データ(試行動作軌跡)とすることもできるし,駆動回路30を接続せずに,コントローラ20内において,模擬的に試行させてその結果を得るようにしてもよい(コントローラ20が発生する位置指令を(そのまま,または遅延させて)試行結果データとしてもよいし,コントローラ20内にモデルを設けておいて,このモデルが出力する位置データを試行結果データとしてもよい。
図14は図11,図12に示すSELプログラムにしたがって試行(第1の試行)した結果を示すものであり,表示部14の表示画面に表示されている。先に作図した経路が実線で示され,試行による動作軌跡が破線で示されている。図15には図14の一部が拡大して示されている(第1の試行動作軌跡表示制御手段)。
特に図15を参照して,直線移動経路PA1,PA2,PA3等はSELプログラムのコマンドPATHにより実現されており,各点P13,P14等で停止することなく連続的に通過するように(多少減速することはあっても)制御される。すなわち,図22を参照して説明したように,直線経路PA1から直線経路PA2に向うときには,直線PA1の終点P13に到達する前にX軸方向の移動速度が速くなり(直線PA1)に沿って動いているときには,X軸方向の移動速度は遅く,Y軸方向の移動が支配的である),Y軸方向の移動によって終点P13に達する前に弧を描いて次の通過点P14の方に向ってしまう。同じように,点P14に達する前にY軸方向(負方向)の速度が速くなり,点P14に達する前に直線PA3に沿う方向に向ってしまう。
このように,あらかじめ定めた理想とする塗布経路PA1,PA2,PA3よりもやや内側に寄った近廻りの経路Q1(破線で示す)を辿ってしまう。
上述のように,試行動作軌跡が作図経路から許容範囲を超えて外れているときには,SELプログラムを修正しなければならない(図2,S15でYES )。SELプログラムの修正のために,経路作図をやり直すことになる(S11)。
たとえば,図18に示すように,直線PA1の終点P13を少し先の位置P133 (Y座標値を大きくする)に修正し,直線PA3の始点も位置P133 に対応してそのY座標値を大きくして位置P144に定める。直線PA2はなくなり,新たに点P133を始点,点P144 を終点とする直線PA22の経路ができ上る。
経路の修正は,先に作成した経路図(図7,図8)において,点P13をP133 の位置へドラッグし,点P14をP144 の位置へドラッグすればよい(修正経路入力手段)。すると,図18に示す新たな直線PA22が表示部14に表示される(第2の経路表示制御手段)。もちろん,点P13とP133との間,点P144とP14との間も直線でつながれて表示される。ジグザグの経路中の他の部分も同じように修正される。このようにして修正された新たな作図データの中間データが図16に示されている。
この後,再びプロジェクト(P),SELプログラム生成(G)をクリックすることにより(図9参照),修正された作図データの中間データ(図16)に基づいてSELプログラムが自動的に作成される(図2,S12)(プログラム修正手段)。作成されたSELプログラムは図11に示すものと同じであるが,ポジションデータに修正した経路の座標データが反映されている。修正されたポジションデータの例が図17に示されている。
このようにして,修正されたSELプログラムにしたがって再び試行動作が行なわれ(図2,S13でYES ,S14)(第2の試行動作手段),その試行動作結果の軌跡(第2の試行動作軌跡)を示すデータが作成され,図18に破線Q2で示すように表示部14の表示画面に表示される(第2の試行動作軌跡表示手段)。この表示画面には,修正後の経路(PA1,PA22,PA3)に加えて,修正前の経路(第1の移動経路)PA2も表示されている(細い破線で示す)。ユーザは,修正後の試行軌跡Q2と修正前の理想的な経路PA2とを対比して,修正後の試行軌跡が最初予定した経路PA2に近似して満足のいくものかどうか確認することができる。必要であれば,再々度,経路を修正してSELプログラムの生成(修正)を繰返せばよい。満足できるSELプログラムが完成したときには,それを出力する(図2,S16)。記憶部15に記憶してもよいし,コントローラ20にインストールしてもよいし,記録媒体に記録してもよいし,通信で他の装置に送信してもよい。
10 ロボット言語プログラム自動作成(修正)装置(システム)
11 処理部
12 入力部
13 出力部
14 表示部
15 記憶部
20 コントローラ
30 駆動回路
P12,P13,P14,P25,P26,P27,P28,P29,‥ 点
PA1,PA2,PA3 直線
CA1 円弧
CA2 円
P133,P144 修正後の点
PA22 修正後の直線
Q1,Q2 試行動作軌跡

Claims (9)

  1. ロボットの第1の移動経路を表示装置の表示画面に表示する第1の経路表示制御手段,
    前記第1の移動経路に対応するロボット言語プログラムに基づくロボットの第1の試行動作軌跡を表わすデータを生成してこのデータに基づいて第1の試行動作軌跡を,上記第1の移動経路とともに,表示画面に表示する第1の試行動作軌跡表示制御手段,
    入力される修正経路を受付けるとともに該修正経路を表示画面に表示する第2の経路表示制御手段,
    受付けた修正経路に基づいて前記ロボット言語プログラムを修正するプログラム修正手段,および
    修正されたロボット言語プログラムに基づくロボットの第2の試行動作軌跡を表わすデータを生成してこのデータに基づいて第2の試行動作軌跡を,少なくとも前記第1の移動経路とともに,表示画面に表示する第2の試行動作軌跡表示制御手段,
    を備えるロボット言語プログラムの修正装置。
  2. 前記第2の試行動作軌跡表示制御手段は,さらに前記修正経路を表示する,請求項1に記載のロボット言語プログラムの修正装置。
  3. 表示画面に表示される第1の移動経路に基づいて前記ロボット言語プログラムを作成するロボット言語プログラム作成手段を備える,請求項1または2に記載のロボット言語プログラムの修正装置。
  4. 前記プログラム修正手段は前記ロボット言語プログラム作成手段に含まれる,請求項3に記載のロボット言語プログラムの修正装置。
  5. 前記第1の移動経路および前記修正経路を入力する入力手段を備える,請求項1から4のいずれか一項に記載のロボット言語プログラムの修正装置。
  6. 前記第1の試行動作軌跡表示制御手段は,前記第1の移動経路に対応するロボット言語プログラムに基づくロボットの第1の試行動作軌跡を表わすデータを生成する第1の試行動作手段を含む,請求項1に記載のロボット言語プログラムの修正装置。
  7. 前記第2の試行動作軌跡表示制御手段は,修正されたロボット言語プログラムに基づくロボットの第2の試行動作軌跡を表わすデータを生成する第2の試行動作手段を含む,請求項1に記載のロボット言語プログラムの修正装置。
  8. ロボットの第1の移動経路を表示装置の表示画面に表示し,
    前記第1の移動経路に対応するロボット言語プログラムに基づくロボットの第1の試行動作軌跡を表わすデータを生成してこのデータに基づいて第1の試行動作軌跡を,上記第1の移動経路とともに,表示画面に表示し,
    入力される修正経路を受付けるとともに該修正経路を表示画面に表示し,
    受付けた修正経路に基づいて前記ロボット言語プログラムを修正し,そして
    修正されたロボット言語プログラムに基づくロボットの第2の試行動作軌跡を表わすデータを生成してこのデータに基づいて第2の試行動作軌跡を,少なくとも前記第1の移動経路とともに,表示画面に表示する,
    ロボット言語プログラムの修正方法。
  9. ロボットの第1の移動経路を表示装置の表示画面に表示し,
    前記第1の移動経路に対応するロボット言語プログラムに基づくロボットの第1の試行動作軌跡を表わすデータを生成してこのデータに基づいて第1の試行動作軌跡を,上記第1の移動経路とともに,表示画面に表示し,
    入力される修正経路を受付けるとともに該修正経路を表示画面に表示し,
    受付けた修正経路に基づいて前記ロボット言語プログラムを修正し,そして
    修正されたロボット言語プログラムに基づくロボットの第2の試行動作軌跡を表わすデータを生成してこのデータに基づいて第2の試行動作軌跡を,少なくとも前記第1の移動経路とともに,表示画面に表示するようにコンピュータを制御する,
    ロボット言語プログラムの修正のためのプログラム。
JP2015105977A 2015-05-26 2015-05-26 ロボット言語プログラムの修正装置,方法およびプログラム Pending JP2016218934A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015105977A JP2016218934A (ja) 2015-05-26 2015-05-26 ロボット言語プログラムの修正装置,方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015105977A JP2016218934A (ja) 2015-05-26 2015-05-26 ロボット言語プログラムの修正装置,方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2016218934A true JP2016218934A (ja) 2016-12-22

Family

ID=57581240

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015105977A Pending JP2016218934A (ja) 2015-05-26 2015-05-26 ロボット言語プログラムの修正装置,方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2016218934A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022118760A1 (ja) * 2020-12-02 2022-06-09 ファナック株式会社 ロボットを用いた3dプリンタ及びロボットの制御装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63292304A (ja) * 1987-05-26 1988-11-29 Mitsubishi Electric Corp 数値制御装置における工具の移動軌跡表示方法
JPH09146621A (ja) * 1995-11-01 1997-06-06 Mitsubishi Electric Corp ロボットのシミュレーション装置
JPH09265311A (ja) * 1996-03-29 1997-10-07 Mitsubishi Electric Corp 位置決めプログラム装置
JP2000039909A (ja) * 1998-07-23 2000-02-08 Hitachi Ltd 数値制御情報作成装置
JP2010092161A (ja) * 2008-10-06 2010-04-22 Okuma Corp 数値制御装置における衝突防止装置
JP2010092142A (ja) * 2008-10-06 2010-04-22 Mori Seiki Co Ltd 自動プログラミング装置及びこれを備えたnc工作機械の制御装置
JP2011186939A (ja) * 2010-03-10 2011-09-22 Mitsubishi Electric Corp 数値制御装置および生産システム
JP2013046938A (ja) * 2011-08-29 2013-03-07 Amada Co Ltd プログラム生成装置及びその方法
JP2013069231A (ja) * 2011-09-26 2013-04-18 Fanuc Ltd 工具の軌跡表示機能を備えた数値制御装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63292304A (ja) * 1987-05-26 1988-11-29 Mitsubishi Electric Corp 数値制御装置における工具の移動軌跡表示方法
JPH09146621A (ja) * 1995-11-01 1997-06-06 Mitsubishi Electric Corp ロボットのシミュレーション装置
JPH09265311A (ja) * 1996-03-29 1997-10-07 Mitsubishi Electric Corp 位置決めプログラム装置
JP2000039909A (ja) * 1998-07-23 2000-02-08 Hitachi Ltd 数値制御情報作成装置
JP2010092161A (ja) * 2008-10-06 2010-04-22 Okuma Corp 数値制御装置における衝突防止装置
JP2010092142A (ja) * 2008-10-06 2010-04-22 Mori Seiki Co Ltd 自動プログラミング装置及びこれを備えたnc工作機械の制御装置
JP2011186939A (ja) * 2010-03-10 2011-09-22 Mitsubishi Electric Corp 数値制御装置および生産システム
JP2013046938A (ja) * 2011-08-29 2013-03-07 Amada Co Ltd プログラム生成装置及びその方法
JP2013069231A (ja) * 2011-09-26 2013-04-18 Fanuc Ltd 工具の軌跡表示機能を備えた数値制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022118760A1 (ja) * 2020-12-02 2022-06-09 ファナック株式会社 ロボットを用いた3dプリンタ及びロボットの制御装置

Similar Documents

Publication Publication Date Title
JP6314324B2 (ja) オフラインティーチング装置
CN108453702B (zh) 机器人仿真器、机器人系统以及仿真方法
JP6311421B2 (ja) ティーチングシステム、ロボットシステムおよびティーチング方法
EP2282873B1 (en) A method and a system for facilitating calibration of an off-line programmed robot cell
JP4137909B2 (ja) ロボットプログラム補正装置
JP4056542B2 (ja) ロボットのオフライン教示装置
US8872070B2 (en) Offline teaching method
JP5187911B2 (ja) 移動プログラムを作成するプログラムおよび装置
CN103085072A (zh) 基于三维建模软件实现工业机器人离线编程的方法
JP2020128009A (ja) ロボットを制御する方法
JP6006277B2 (ja) 産業用ロボットのプログラム修正装置及びプログラム修正方法
JP6598454B2 (ja) 教示データの作成方法、作成装置、及び作成プログラム
JP2014161922A (ja) ティーチングシステムおよびティーチング方法
CN110612181A (zh) 机器人引导通过编程期间控制工业机器人的方法和工业机器人
CN111791228B (zh) 编程辅助装置、机器人系统和编程辅助方法
JP4644490B2 (ja) ツール運動の直接制御のために複雑なn曲線を描写するためのシステムおよび方法
JP2011505029A (ja) 液圧作動ブームの調整方法、装置およびコンピュータプログラム
JP2009066738A (ja) ロボットの教示装置
JP2016218934A (ja) ロボット言語プログラムの修正装置,方法およびプログラム
KR20150086161A (ko) 로봇, 로봇의 제어 방법, 및 로봇의 제어 프로그램
JPH0322106A (ja) ロボット教示装置
JP2020055082A (ja) ロボット教示装置、ロボット教示方法、及び動作命令を記憶する方法
JPS61170807A (ja) 数値制御装置
JPH0699376A (ja) ロボット軌道を教示するための方法及びシステム
WO2023073755A1 (ja) ロボットの動作判定装置、動作判定方法および動作判定プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180123

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190806